@clr/angular 12.0.8 → 13.0.0-next.0
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-content.d.ts +3 -0
- package/accordion/accordion-description.d.ts +3 -0
- package/accordion/accordion-panel.d.ts +3 -0
- package/accordion/accordion-title.d.ts +3 -0
- package/accordion/accordion.d.ts +3 -0
- package/accordion/accordion.module.d.ts +13 -0
- package/accordion/chocolate/accordion-oompa-loompa.d.ts +3 -0
- package/accordion/chocolate/accordion-willy-wonka.d.ts +3 -0
- package/accordion/providers/accordion.service.d.ts +3 -0
- package/accordion/stepper/chocolate/stepper-oompa-loompa.d.ts +3 -0
- package/accordion/stepper/chocolate/stepper-willy-wonka.d.ts +3 -0
- package/accordion/stepper/providers/stepper.service.d.ts +3 -0
- package/accordion/stepper/step-button.d.ts +3 -0
- package/accordion/stepper/stepper-panel.d.ts +3 -0
- package/accordion/stepper/stepper.d.ts +3 -0
- package/accordion/stepper/stepper.module.d.ts +12 -0
- package/button/button-group/button-group.d.ts +3 -0
- package/button/button-group/button-group.module.d.ts +9 -0
- package/button/button-group/button.d.ts +3 -0
- package/button/button-loading/loading-button.d.ts +3 -0
- package/button/button-loading/loading-button.module.d.ts +6 -0
- package/button/button.module.d.ts +6 -0
- package/button/providers/button-in-group.service.d.ts +3 -0
- package/clr-angular.d.ts +1 -105
- package/clr-angular.module.d.ts +23 -0
- package/data/data.module.d.ts +7 -0
- package/data/datagrid/built-in/filters/datagrid-numeric-filter.d.ts +3 -0
- package/data/datagrid/built-in/filters/datagrid-string-filter.d.ts +3 -0
- package/data/datagrid/chocolate/actionable-oompa-loompa.d.ts +3 -0
- package/data/datagrid/chocolate/datagrid-willy-wonka.d.ts +3 -0
- package/data/datagrid/chocolate/expandable-oompa-loompa.d.ts +3 -0
- package/data/datagrid/datagrid-action-bar.d.ts +3 -0
- package/data/datagrid/datagrid-action-overflow.d.ts +3 -0
- package/data/datagrid/datagrid-cell.d.ts +3 -0
- package/data/datagrid/datagrid-column-separator.d.ts +3 -0
- package/data/datagrid/datagrid-column-toggle-button.d.ts +3 -0
- package/data/datagrid/datagrid-column-toggle-title.d.ts +3 -0
- package/data/datagrid/datagrid-column-toggle.d.ts +3 -0
- package/data/datagrid/datagrid-column.d.ts +3 -0
- package/data/datagrid/datagrid-detail-body.d.ts +3 -0
- package/data/datagrid/datagrid-detail-header.d.ts +3 -0
- package/data/datagrid/datagrid-detail-registerer.d.ts +3 -0
- package/data/datagrid/datagrid-detail.d.ts +3 -0
- package/data/datagrid/datagrid-filter.d.ts +3 -0
- package/data/datagrid/datagrid-footer.d.ts +3 -0
- package/data/datagrid/datagrid-hideable-column.d.ts +3 -0
- package/data/datagrid/datagrid-if-detail.d.ts +3 -0
- package/data/datagrid/datagrid-if-expanded.service.d.ts +3 -0
- package/data/datagrid/datagrid-items-trackby.d.ts +3 -0
- package/data/datagrid/datagrid-items.d.ts +3 -0
- package/data/datagrid/datagrid-page-size.d.ts +3 -0
- package/data/datagrid/datagrid-pagination.d.ts +3 -0
- package/data/datagrid/datagrid-placeholder.d.ts +3 -0
- package/data/datagrid/datagrid-row-detail.d.ts +3 -0
- package/data/datagrid/datagrid-row.d.ts +3 -0
- package/data/datagrid/datagrid.d.ts +3 -0
- package/data/datagrid/datagrid.module.d.ts +53 -0
- package/data/datagrid/providers/column-resizer.service.d.ts +3 -0
- package/data/datagrid/providers/columns.service.d.ts +3 -0
- package/data/datagrid/providers/detail.service.d.ts +3 -0
- package/data/datagrid/providers/display-mode.service.d.ts +3 -0
- package/data/datagrid/providers/filters.d.ts +3 -0
- package/data/datagrid/providers/global-expandable-rows.d.ts +3 -0
- package/data/datagrid/providers/items.d.ts +3 -0
- package/data/datagrid/providers/page.d.ts +3 -0
- package/data/datagrid/providers/row-action-service.d.ts +3 -0
- package/data/datagrid/providers/selection.d.ts +3 -0
- package/data/datagrid/providers/sort.d.ts +3 -0
- package/data/datagrid/providers/state-debouncer.provider.d.ts +3 -0
- package/data/datagrid/providers/state.provider.d.ts +3 -0
- package/data/datagrid/providers/table-size.service.d.ts +3 -0
- package/data/datagrid/render/cell-renderer.d.ts +3 -0
- package/data/datagrid/render/header-renderer.d.ts +3 -0
- package/data/datagrid/render/main-renderer.d.ts +3 -0
- package/data/datagrid/render/noop-dom-adapter.d.ts +4 -1
- package/data/datagrid/render/render-organizer.d.ts +3 -0
- package/data/datagrid/render/row-renderer.d.ts +3 -0
- package/data/datagrid/utils/datagrid-filter-registrar.d.ts +3 -0
- package/data/datagrid/wrapped-cell.d.ts +3 -0
- package/data/datagrid/wrapped-column.d.ts +3 -0
- package/data/datagrid/wrapped-row.d.ts +3 -0
- package/data/stack-view/stack-block.d.ts +3 -0
- package/data/stack-view/stack-content-input.d.ts +3 -0
- package/data/stack-view/stack-header.d.ts +3 -0
- package/data/stack-view/stack-input.d.ts +3 -6
- package/data/stack-view/stack-select.d.ts +3 -5
- package/data/stack-view/stack-view-custom-tags.d.ts +3 -0
- package/data/stack-view/stack-view.d.ts +3 -0
- package/data/stack-view/stack-view.module.d.ts +15 -0
- package/data/tree-view/recursive-children.d.ts +3 -0
- package/data/tree-view/recursive-for-of.d.ts +3 -0
- package/data/tree-view/tree-features.service.d.ts +3 -0
- package/data/tree-view/tree-focus-manager.service.d.ts +3 -0
- package/data/tree-view/tree-node-link.d.ts +3 -0
- package/data/tree-view/tree-node.d.ts +3 -0
- package/data/tree-view/tree-view.module.d.ts +12 -0
- package/data/tree-view/tree.d.ts +3 -0
- package/emphasis/alert/alert-item.d.ts +3 -0
- package/emphasis/alert/alert-text.d.ts +3 -0
- package/emphasis/alert/alert.d.ts +3 -0
- package/emphasis/alert/alert.module.d.ts +12 -0
- package/emphasis/alert/alerts-pager.d.ts +3 -0
- package/emphasis/alert/alerts.d.ts +3 -0
- package/emphasis/alert/providers/icon-and-types.service.d.ts +3 -0
- package/emphasis/alert/providers/multi-alert.service.d.ts +3 -0
- package/emphasis/emphasis.module.d.ts +5 -0
- package/esm2020/accordion/accordion-content.mjs +20 -0
- package/esm2020/accordion/accordion-description.mjs +21 -0
- package/esm2020/accordion/accordion-panel.mjs +108 -0
- package/esm2020/accordion/accordion-title.mjs +21 -0
- package/esm2020/accordion/accordion.mjs +61 -0
- package/esm2020/accordion/accordion.module.mjs +55 -0
- package/esm2020/accordion/chocolate/accordion-oompa-loompa.mjs +31 -0
- package/esm2020/accordion/chocolate/accordion-willy-wonka.mjs +17 -0
- package/{esm2015/accordion/enums/accordion-status.enum.js → esm2020/accordion/enums/accordion-status.enum.mjs} +0 -0
- package/{esm2015/accordion/enums/accordion-strategy.enum.js → esm2020/accordion/enums/accordion-strategy.enum.mjs} +0 -0
- package/{esm2015/accordion/index.js → esm2020/accordion/index.mjs} +0 -0
- package/{esm2015/accordion/models/accordion.model.js → esm2020/accordion/models/accordion.model.mjs} +0 -0
- package/esm2020/accordion/providers/accordion.service.mjs +47 -0
- package/esm2020/accordion/stepper/chocolate/stepper-oompa-loompa.mjs +31 -0
- package/esm2020/accordion/stepper/chocolate/stepper-willy-wonka.mjs +17 -0
- package/{esm2015/accordion/stepper/index.js → esm2020/accordion/stepper/index.mjs} +0 -0
- package/{esm2015/accordion/stepper/models/stepper.model.js → esm2020/accordion/stepper/models/stepper.model.mjs} +0 -0
- package/esm2020/accordion/stepper/providers/stepper.service.mjs +55 -0
- package/esm2020/accordion/stepper/step-button.mjs +51 -0
- package/esm2020/accordion/stepper/stepper-panel.mjs +89 -0
- package/esm2020/accordion/stepper/stepper.mjs +93 -0
- package/esm2020/accordion/stepper/stepper.module.mjs +30 -0
- package/{esm2015/accordion/utils/animation.js → esm2020/accordion/utils/animation.mjs} +0 -0
- package/esm2020/button/button-group/button-group.mjs +140 -0
- package/esm2020/button/button-group/button-group.module.mjs +27 -0
- package/{esm2015/button/button-group/button.js → esm2020/button/button-group/button.mjs} +57 -24
- package/{esm2015/button/button-group/index.js → esm2020/button/button-group/index.mjs} +0 -0
- package/{esm2015/button/button-loading/index.js → esm2020/button/button-loading/index.mjs} +0 -0
- package/esm2020/button/button-loading/loading-button.mjs +150 -0
- package/esm2020/button/button-loading/loading-button.module.mjs +24 -0
- package/esm2020/button/button.module.mjs +25 -0
- package/{esm2015/button/index.js → esm2020/button/index.mjs} +0 -0
- package/esm2020/button/providers/button-in-group.service.mjs +25 -0
- package/esm2020/clr-angular.mjs +5 -0
- package/esm2020/clr-angular.module.mjs +96 -0
- package/esm2020/data/data.module.mjs +20 -0
- package/{esm2015/data/datagrid/built-in/comparators/datagrid-property-comparator.js → esm2020/data/datagrid/built-in/comparators/datagrid-property-comparator.mjs} +0 -0
- package/{esm2015/data/datagrid/built-in/filters/datagrid-numeric-filter-impl.js → esm2020/data/datagrid/built-in/filters/datagrid-numeric-filter-impl.mjs} +0 -0
- package/esm2020/data/datagrid/built-in/filters/datagrid-numeric-filter.mjs +200 -0
- package/{esm2015/data/datagrid/built-in/filters/datagrid-property-numeric-filter.js → esm2020/data/datagrid/built-in/filters/datagrid-property-numeric-filter.mjs} +0 -0
- package/{esm2015/data/datagrid/built-in/filters/datagrid-property-string-filter.js → esm2020/data/datagrid/built-in/filters/datagrid-property-string-filter.mjs} +0 -0
- package/{esm2015/data/datagrid/built-in/filters/datagrid-string-filter-impl.js → esm2020/data/datagrid/built-in/filters/datagrid-string-filter-impl.mjs} +0 -0
- package/esm2020/data/datagrid/built-in/filters/datagrid-string-filter.mjs +131 -0
- package/{esm2015/data/datagrid/built-in/nested-property.js → esm2020/data/datagrid/built-in/nested-property.mjs} +0 -0
- package/esm2020/data/datagrid/chocolate/actionable-oompa-loompa.mjs +31 -0
- package/esm2020/data/datagrid/chocolate/datagrid-willy-wonka.mjs +17 -0
- package/esm2020/data/datagrid/chocolate/expandable-oompa-loompa.mjs +31 -0
- package/esm2020/data/datagrid/datagrid-action-bar.mjs +20 -0
- package/esm2020/data/datagrid/datagrid-action-overflow.mjs +161 -0
- package/esm2020/data/datagrid/datagrid-cell.mjs +39 -0
- package/esm2020/data/datagrid/datagrid-column-separator.mjs +172 -0
- package/esm2020/data/datagrid/datagrid-column-toggle-button.mjs +63 -0
- package/esm2020/data/datagrid/datagrid-column-toggle-title.mjs +20 -0
- package/esm2020/data/datagrid/datagrid-column-toggle.mjs +229 -0
- package/esm2020/data/datagrid/datagrid-column.mjs +430 -0
- package/esm2020/data/datagrid/datagrid-detail-body.mjs +30 -0
- package/esm2020/data/datagrid/datagrid-detail-header.mjs +61 -0
- package/esm2020/data/datagrid/datagrid-detail-registerer.mjs +34 -0
- package/esm2020/data/datagrid/datagrid-detail.mjs +70 -0
- package/esm2020/data/datagrid/datagrid-filter.mjs +182 -0
- package/esm2020/data/datagrid/datagrid-footer.mjs +79 -0
- package/esm2020/data/datagrid/datagrid-hideable-column.mjs +104 -0
- package/esm2020/data/datagrid/datagrid-if-detail.mjs +63 -0
- package/esm2020/data/datagrid/datagrid-if-expanded.service.mjs +54 -0
- package/esm2020/data/datagrid/datagrid-items-trackby.mjs +32 -0
- package/esm2020/data/datagrid/datagrid-items.mjs +63 -0
- package/esm2020/data/datagrid/datagrid-page-size.mjs +47 -0
- package/esm2020/data/datagrid/datagrid-pagination.mjs +362 -0
- package/esm2020/data/datagrid/datagrid-placeholder.mjs +41 -0
- package/esm2020/data/datagrid/datagrid-row-detail.mjs +90 -0
- package/esm2020/data/datagrid/datagrid-row.mjs +241 -0
- package/esm2020/data/datagrid/datagrid.mjs +349 -0
- package/esm2020/data/datagrid/datagrid.module.mjs +237 -0
- package/esm2020/data/datagrid/enums/column-changes.enum.mjs +14 -0
- package/{esm2015/data/datagrid/enums/display-mode.enum.js → esm2020/data/datagrid/enums/display-mode.enum.mjs} +0 -0
- package/{esm2015/data/datagrid/enums/render-step.enum.js → esm2020/data/datagrid/enums/render-step.enum.mjs} +0 -0
- package/{esm2015/data/datagrid/enums/selection-type.js → esm2020/data/datagrid/enums/selection-type.mjs} +0 -0
- package/{esm2015/data/datagrid/enums/sort-order.enum.js → esm2020/data/datagrid/enums/sort-order.enum.mjs} +0 -0
- package/{esm2015/data/datagrid/index.js → esm2020/data/datagrid/index.mjs} +0 -0
- package/{esm2015/data/datagrid/interfaces/column-state.interface.js → esm2020/data/datagrid/interfaces/column-state.interface.mjs} +0 -0
- package/{esm2015/data/datagrid/interfaces/comparator.interface.js → esm2020/data/datagrid/interfaces/comparator.interface.mjs} +0 -0
- package/{esm2015/data/datagrid/interfaces/filter.interface.js → esm2020/data/datagrid/interfaces/filter.interface.mjs} +0 -0
- package/{esm2015/data/datagrid/interfaces/numeric-filter.interface.js → esm2020/data/datagrid/interfaces/numeric-filter.interface.mjs} +0 -0
- package/{esm2015/data/datagrid/interfaces/state.interface.js → esm2020/data/datagrid/interfaces/state.interface.mjs} +0 -0
- package/{esm2015/data/datagrid/interfaces/string-filter.interface.js → esm2020/data/datagrid/interfaces/string-filter.interface.mjs} +0 -0
- package/esm2020/data/datagrid/providers/column-resizer.service.mjs +57 -0
- package/{esm2015/data/datagrid/providers/column-state.provider.js → esm2020/data/datagrid/providers/column-state.provider.mjs} +0 -0
- package/esm2020/data/datagrid/providers/columns.service.mjs +53 -0
- package/{esm2015/data/datagrid/providers/custom-filter.js → esm2020/data/datagrid/providers/custom-filter.mjs} +0 -0
- package/esm2020/data/datagrid/providers/detail.service.mjs +61 -0
- package/esm2020/data/datagrid/providers/display-mode.service.mjs +35 -0
- package/esm2020/data/datagrid/providers/filters.mjs +111 -0
- package/esm2020/data/datagrid/providers/global-expandable-rows.mjs +33 -0
- package/esm2020/data/datagrid/providers/items.mjs +173 -0
- package/esm2020/data/datagrid/providers/page.mjs +155 -0
- package/esm2020/data/datagrid/providers/row-action-service.mjs +30 -0
- package/esm2020/data/datagrid/providers/selection.mjs +374 -0
- package/esm2020/data/datagrid/providers/sort.mjs +85 -0
- package/esm2020/data/datagrid/providers/state-debouncer.provider.mjs +42 -0
- package/esm2020/data/datagrid/providers/state.provider.mjs +74 -0
- package/esm2020/data/datagrid/providers/table-size.service.mjs +44 -0
- package/esm2020/data/datagrid/render/cell-renderer.mjs +81 -0
- package/{esm2015/data/datagrid/render/constants.js → esm2020/data/datagrid/render/constants.mjs} +0 -0
- package/esm2020/data/datagrid/render/header-renderer.mjs +132 -0
- package/esm2020/data/datagrid/render/main-renderer.mjs +198 -0
- package/esm2020/data/datagrid/render/noop-dom-adapter.mjs +54 -0
- package/esm2020/data/datagrid/render/render-organizer.mjs +38 -0
- package/esm2020/data/datagrid/render/row-renderer.mjs +58 -0
- package/esm2020/data/datagrid/utils/datagrid-filter-registrar.mjs +42 -0
- package/esm2020/data/datagrid/wrapped-cell.mjs +39 -0
- package/esm2020/data/datagrid/wrapped-column.mjs +40 -0
- package/esm2020/data/datagrid/wrapped-row.mjs +40 -0
- package/{esm2015/data/index.js → esm2020/data/index.mjs} +0 -0
- package/{esm2015/data/stack-view/index.js → esm2020/data/stack-view/index.mjs} +0 -0
- package/esm2020/data/stack-view/stack-block.mjs +214 -0
- package/esm2020/data/stack-view/stack-content-input.mjs +29 -0
- package/{esm2015/data/stack-view/stack-control.js → esm2020/data/stack-view/stack-control.mjs} +0 -0
- package/esm2020/data/stack-view/stack-header.mjs +68 -0
- package/{esm2015/data/stack-view/stack-input.js → esm2020/data/stack-view/stack-input.mjs} +20 -14
- package/esm2020/data/stack-view/stack-select.mjs +48 -0
- package/esm2020/data/stack-view/stack-view-custom-tags.mjs +16 -0
- package/esm2020/data/stack-view/stack-view.mjs +57 -0
- package/esm2020/data/stack-view/stack-view.module.mjs +69 -0
- package/{esm2015/data/tree-view/index.js → esm2020/data/tree-view/index.mjs} +0 -0
- package/{esm2015/data/tree-view/models/async-array.js → esm2020/data/tree-view/models/async-array.mjs} +0 -0
- package/{esm2015/data/tree-view/models/declarative-tree-node.model.js → esm2020/data/tree-view/models/declarative-tree-node.model.mjs} +0 -0
- package/{esm2015/data/tree-view/models/recursive-tree-node.model.js → esm2020/data/tree-view/models/recursive-tree-node.model.mjs} +0 -0
- package/{esm2015/data/tree-view/models/selected-state.enum.js → esm2020/data/tree-view/models/selected-state.enum.mjs} +0 -0
- package/{esm2015/data/tree-view/models/tree-node.model.js → esm2020/data/tree-view/models/tree-node.model.mjs} +0 -0
- package/esm2020/data/tree-view/recursive-children.mjs +81 -0
- package/esm2020/data/tree-view/recursive-for-of.mjs +54 -0
- package/esm2020/data/tree-view/tree-features.service.mjs +37 -0
- package/esm2020/data/tree-view/tree-focus-manager.service.mjs +121 -0
- package/esm2020/data/tree-view/tree-node-link.mjs +26 -0
- package/esm2020/data/tree-view/tree-node.mjs +279 -0
- package/esm2020/data/tree-view/tree-view.module.mjs +34 -0
- package/esm2020/data/tree-view/tree.mjs +91 -0
- package/esm2020/emphasis/alert/alert-item.mjs +43 -0
- package/esm2020/emphasis/alert/alert-text.mjs +22 -0
- package/esm2020/emphasis/alert/alert.mjs +107 -0
- package/esm2020/emphasis/alert/alert.module.mjs +34 -0
- package/esm2020/emphasis/alert/alerts-pager.mjs +72 -0
- package/esm2020/emphasis/alert/alerts.mjs +100 -0
- package/{esm2015/emphasis/alert/index.js → esm2020/emphasis/alert/index.mjs} +0 -0
- package/esm2020/emphasis/alert/providers/icon-and-types.service.mjs +74 -0
- package/esm2020/emphasis/alert/providers/multi-alert.service.mjs +79 -0
- package/{esm2015/emphasis/alert/utils/alert-info-object.js → esm2020/emphasis/alert/utils/alert-info-object.mjs} +0 -0
- package/{esm2015/emphasis/alert/utils/alert-types.js → esm2020/emphasis/alert/utils/alert-types.mjs} +0 -0
- package/esm2020/emphasis/emphasis.module.mjs +18 -0
- package/{esm2015/emphasis/index.js → esm2020/emphasis/index.mjs} +0 -0
- package/esm2020/forms/checkbox/checkbox-container.mjs +127 -0
- package/esm2020/forms/checkbox/checkbox-wrapper.mjs +68 -0
- package/esm2020/forms/checkbox/checkbox.mjs +43 -0
- package/esm2020/forms/checkbox/checkbox.module.mjs +33 -0
- package/{esm2015/forms/checkbox/index.js → esm2020/forms/checkbox/index.mjs} +0 -0
- package/esm2020/forms/combobox/combobox-container.mjs +109 -0
- package/esm2020/forms/combobox/combobox.mjs +363 -0
- package/esm2020/forms/combobox/combobox.module.mjs +81 -0
- package/{esm2015/forms/combobox/index.js → esm2020/forms/combobox/index.mjs} +0 -0
- package/{esm2015/forms/combobox/model/combobox.model.js → esm2020/forms/combobox/model/combobox.model.mjs} +0 -0
- package/{esm2015/forms/combobox/model/multi-select-combobox.model.js → esm2020/forms/combobox/model/multi-select-combobox.model.mjs} +0 -0
- package/{esm2015/forms/combobox/model/pseudo-focus.model.js → esm2020/forms/combobox/model/pseudo-focus.model.mjs} +0 -0
- package/{esm2015/forms/combobox/model/single-select-combobox.model.js → esm2020/forms/combobox/model/single-select-combobox.model.mjs} +0 -0
- package/esm2020/forms/combobox/option-items.directive.mjs +97 -0
- package/esm2020/forms/combobox/option-selected.directive.mjs +22 -0
- package/esm2020/forms/combobox/option.mjs +102 -0
- package/esm2020/forms/combobox/options.mjs +152 -0
- package/esm2020/forms/combobox/providers/combobox-container.service.mjs +18 -0
- package/esm2020/forms/combobox/providers/combobox-focus-handler.service.mjs +215 -0
- package/esm2020/forms/combobox/providers/option-selection.service.mjs +81 -0
- package/esm2020/forms/common/abstract-container.mjs +119 -0
- package/esm2020/forms/common/abstract-control.mjs +50 -0
- package/esm2020/forms/common/common.module.mjs +78 -0
- package/esm2020/forms/common/control-container.mjs +83 -0
- package/esm2020/forms/common/control.mjs +27 -0
- package/esm2020/forms/common/error.mjs +36 -0
- package/esm2020/forms/common/form.mjs +53 -0
- package/esm2020/forms/common/helper.mjs +36 -0
- package/esm2020/forms/common/if-control-state/abstract-if-state.mjs +44 -0
- package/esm2020/forms/common/if-control-state/if-control-state.service.mjs +56 -0
- package/esm2020/forms/common/if-control-state/if-error.mjs +68 -0
- package/esm2020/forms/common/if-control-state/if-success.mjs +45 -0
- package/{esm2015/forms/common/index.js → esm2020/forms/common/index.mjs} +0 -0
- package/esm2020/forms/common/label.mjs +67 -0
- package/esm2020/forms/common/layout.mjs +31 -0
- package/esm2020/forms/common/providers/container-id.service.mjs +33 -0
- package/esm2020/forms/common/providers/control-class.service.mjs +52 -0
- package/esm2020/forms/common/providers/control-id.service.mjs +31 -0
- package/esm2020/forms/common/providers/focus.service.mjs +25 -0
- package/esm2020/forms/common/providers/layout.service.mjs +57 -0
- package/esm2020/forms/common/providers/mark-control.service.mjs +25 -0
- package/esm2020/forms/common/providers/ng-control.service.mjs +33 -0
- package/esm2020/forms/common/success.mjs +36 -0
- package/esm2020/forms/common/wrapped-control.mjs +156 -0
- package/esm2020/forms/datalist/datalist-container.mjs +122 -0
- package/esm2020/forms/datalist/datalist-input.mjs +62 -0
- package/esm2020/forms/datalist/datalist.mjs +48 -0
- package/esm2020/forms/datalist/datalist.module.mjs +31 -0
- package/{esm2015/forms/datalist/index.js → esm2020/forms/datalist/index.mjs} +0 -0
- package/esm2020/forms/datalist/providers/datalist-id.service.mjs +31 -0
- package/esm2020/forms/datepicker/calendar.mjs +118 -0
- package/esm2020/forms/datepicker/date-container.mjs +249 -0
- package/esm2020/forms/datepicker/date-input.mjs +290 -0
- package/esm2020/forms/datepicker/datepicker-view-manager.mjs +46 -0
- package/esm2020/forms/datepicker/datepicker.module.mjs +87 -0
- package/esm2020/forms/datepicker/day.mjs +86 -0
- package/esm2020/forms/datepicker/daypicker.mjs +80 -0
- package/{esm2015/forms/datepicker/index.js → esm2020/forms/datepicker/index.mjs} +0 -0
- package/{esm2015/forms/datepicker/interfaces/date-range.interface.js → esm2020/forms/datepicker/interfaces/date-range.interface.mjs} +0 -0
- package/{esm2015/forms/datepicker/interfaces/day-of-week.interface.js → esm2020/forms/datepicker/interfaces/day-of-week.interface.mjs} +0 -0
- package/{esm2015/forms/datepicker/model/calendar-view.model.js → esm2020/forms/datepicker/model/calendar-view.model.mjs} +0 -0
- package/{esm2015/forms/datepicker/model/calendar.model.js → esm2020/forms/datepicker/model/calendar.model.mjs} +0 -0
- package/{esm2015/forms/datepicker/model/day-view.model.js → esm2020/forms/datepicker/model/day-view.model.mjs} +0 -0
- package/{esm2015/forms/datepicker/model/day.model.js → esm2020/forms/datepicker/model/day.model.mjs} +0 -0
- package/{esm2015/forms/datepicker/model/year-range.model.js → esm2020/forms/datepicker/model/year-range.model.mjs} +0 -0
- package/esm2020/forms/datepicker/monthpicker.mjs +125 -0
- package/esm2020/forms/datepicker/providers/date-form-control.service.mjs +36 -0
- package/esm2020/forms/datepicker/providers/date-io.service.mjs +176 -0
- package/esm2020/forms/datepicker/providers/date-navigation.service.mjs +130 -0
- package/esm2020/forms/datepicker/providers/datepicker-enabled.service.mjs +46 -0
- package/esm2020/forms/datepicker/providers/datepicker-focus.service.mjs +47 -0
- package/esm2020/forms/datepicker/providers/locale-helper.service.mjs +101 -0
- package/esm2020/forms/datepicker/providers/view-manager.service.mjs +41 -0
- package/{esm2015/forms/datepicker/utils/constants.js → esm2020/forms/datepicker/utils/constants.mjs} +0 -0
- package/{esm2015/forms/datepicker/utils/date-utils.js → esm2020/forms/datepicker/utils/date-utils.mjs} +0 -0
- package/esm2020/forms/datepicker/yearpicker.mjs +231 -0
- package/esm2020/forms/forms.module.mjs +64 -0
- package/{esm2015/forms/index.js → esm2020/forms/index.mjs} +0 -0
- package/{esm2015/forms/input/index.js → esm2020/forms/input/index.mjs} +0 -0
- package/{esm2015/forms/input/input-container.js → esm2020/forms/input/input-container.mjs} +44 -13
- package/esm2020/forms/input/input.mjs +27 -0
- package/esm2020/forms/input/input.module.mjs +33 -0
- package/{esm2015/forms/password/index.js → esm2020/forms/password/index.mjs} +0 -0
- package/esm2020/forms/password/password-container.mjs +175 -0
- package/esm2020/forms/password/password.mjs +61 -0
- package/esm2020/forms/password/password.module.mjs +32 -0
- package/{esm2015/forms/radio/index.js → esm2020/forms/radio/index.mjs} +0 -0
- package/esm2020/forms/radio/radio-container.mjs +127 -0
- package/esm2020/forms/radio/radio-wrapper.mjs +49 -0
- package/esm2020/forms/radio/radio.mjs +26 -0
- package/esm2020/forms/radio/radio.module.mjs +33 -0
- package/{esm2015/forms/range/index.js → esm2020/forms/range/index.mjs} +0 -0
- package/esm2020/forms/range/range-container.mjs +124 -0
- package/esm2020/forms/range/range.mjs +26 -0
- package/esm2020/forms/range/range.module.mjs +32 -0
- package/{esm2015/forms/select/index.js → esm2020/forms/select/index.mjs} +0 -0
- package/esm2020/forms/select/select-container.mjs +113 -0
- package/esm2020/forms/select/select.mjs +27 -0
- package/esm2020/forms/select/select.module.mjs +32 -0
- package/{esm2015/forms/textarea/index.js → esm2020/forms/textarea/index.mjs} +0 -0
- package/esm2020/forms/textarea/textarea-container.mjs +83 -0
- package/esm2020/forms/textarea/textarea.mjs +27 -0
- package/esm2020/forms/textarea/textarea.module.mjs +32 -0
- package/esm2020/icon/icon.mjs +24 -0
- package/esm2020/icon/icon.module.mjs +20 -0
- package/{esm2015/icon/index.js → esm2020/icon/index.mjs} +0 -0
- package/{esm2015/index.js → esm2020/index.mjs} +0 -0
- package/{esm2015/layout/index.js → esm2020/layout/index.mjs} +0 -0
- package/esm2020/layout/layout.module.mjs +21 -0
- package/{esm2015/layout/main-container/index.js → esm2020/layout/main-container/index.mjs} +0 -0
- package/esm2020/layout/main-container/main-container.mjs +58 -0
- package/esm2020/layout/main-container/main-container.module.mjs +25 -0
- package/{esm2015/layout/nav/chocolate/index.js → esm2020/layout/nav/chocolate/index.mjs} +0 -0
- package/esm2020/layout/nav/chocolate/main-container-willy-wonka.mjs +17 -0
- package/esm2020/layout/nav/chocolate/nav-detection-oompa-loompa.mjs +33 -0
- package/esm2020/layout/nav/header.mjs +120 -0
- package/{esm2015/layout/nav/index.js → esm2020/layout/nav/index.mjs} +0 -0
- package/esm2020/layout/nav/nav-level.mjs +81 -0
- package/esm2020/layout/nav/navigation.module.mjs +40 -0
- package/{esm2015/layout/nav/providers/responsive-navigation.service.js → esm2020/layout/nav/providers/responsive-navigation.service.mjs} +7 -6
- package/{esm2015/layout/nav/responsive-nav-codes.js → esm2020/layout/nav/responsive-nav-codes.mjs} +0 -0
- package/{esm2015/layout/nav/responsive-nav-control-message.js → esm2020/layout/nav/responsive-nav-control-message.mjs} +0 -0
- package/esm2020/layout/tabs/chocolate/active-oompa-loompa.mjs +36 -0
- package/esm2020/layout/tabs/chocolate/tabs-willy-wonka.mjs +17 -0
- package/{esm2015/layout/tabs/enums/tabs-layout.enum.js → esm2020/layout/tabs/enums/tabs-layout.enum.mjs} +0 -0
- package/{esm2015/layout/tabs/index.js → esm2020/layout/tabs/index.mjs} +0 -0
- package/esm2020/layout/tabs/providers/tabs.service.mjs +45 -0
- package/esm2020/layout/tabs/tab-content.mjs +96 -0
- package/esm2020/layout/tabs/tab-link.directive.mjs +115 -0
- package/esm2020/layout/tabs/tab-overflow-content.mjs +22 -0
- package/esm2020/layout/tabs/tab.mjs +47 -0
- package/{esm2015/layout/tabs/tabs-id.provider.js → esm2020/layout/tabs/tabs-id.provider.mjs} +0 -0
- package/esm2020/layout/tabs/tabs.mjs +312 -0
- package/esm2020/layout/tabs/tabs.module.mjs +58 -0
- package/{esm2015/layout/vertical-nav/index.js → esm2020/layout/vertical-nav/index.mjs} +0 -0
- package/esm2020/layout/vertical-nav/providers/vertical-nav-group-registration.service.mjs +24 -0
- package/esm2020/layout/vertical-nav/providers/vertical-nav-group.service.mjs +25 -0
- package/esm2020/layout/vertical-nav/providers/vertical-nav-icon.service.mjs +27 -0
- package/esm2020/layout/vertical-nav/providers/vertical-nav.service.mjs +54 -0
- package/esm2020/layout/vertical-nav/vertical-nav-group-children.mjs +19 -0
- package/esm2020/layout/vertical-nav/vertical-nav-group.mjs +162 -0
- package/esm2020/layout/vertical-nav/vertical-nav-icon.mjs +24 -0
- package/esm2020/layout/vertical-nav/vertical-nav-link.mjs +44 -0
- package/esm2020/layout/vertical-nav/vertical-nav.mjs +79 -0
- package/esm2020/layout/vertical-nav/vertical-nav.module.mjs +49 -0
- package/{esm2015/modal/index.js → esm2020/modal/index.mjs} +0 -0
- package/esm2020/modal/modal-body.mjs +42 -0
- package/esm2020/modal/modal.mjs +145 -0
- package/esm2020/modal/modal.module.mjs +32 -0
- package/esm2020/popover/common/abstract-popover.mjs +134 -0
- package/{esm2015/popover/common/popover-host-anchor.token.js → esm2020/popover/common/popover-host-anchor.token.mjs} +0 -0
- package/{esm2015/popover/common/popover-options.interface.js → esm2020/popover/common/popover-options.interface.mjs} +0 -0
- package/{esm2015/popover/common/popover.js → esm2020/popover/common/popover.mjs} +0 -0
- package/esm2020/popover/dropdown/dropdown-item.mjs +88 -0
- package/esm2020/popover/dropdown/dropdown-menu.mjs +114 -0
- package/esm2020/popover/dropdown/dropdown-trigger.mjs +48 -0
- package/esm2020/popover/dropdown/dropdown.mjs +62 -0
- package/esm2020/popover/dropdown/dropdown.module.mjs +29 -0
- package/{esm2015/popover/dropdown/index.js → esm2020/popover/dropdown/index.mjs} +0 -0
- package/{esm2015/popover/dropdown/menu-positions.js → esm2020/popover/dropdown/menu-positions.mjs} +0 -0
- package/esm2020/popover/dropdown/providers/dropdown-focus-handler.service.mjs +186 -0
- package/esm2020/popover/dropdown/providers/dropdown.service.mjs +33 -0
- package/{esm2015/popover/index.js → esm2020/popover/index.mjs} +0 -0
- package/esm2020/popover/popover.module.mjs +20 -0
- package/{esm2015/popover/signpost/index.js → esm2020/popover/signpost/index.mjs} +0 -0
- package/esm2020/popover/signpost/providers/signpost-focus-manager.service.mjs +23 -0
- package/esm2020/popover/signpost/providers/signpost-id.service.mjs +26 -0
- package/esm2020/popover/signpost/signpost-content.mjs +177 -0
- package/{esm2015/popover/signpost/signpost-positions.js → esm2020/popover/signpost/signpost-positions.mjs} +0 -0
- package/esm2020/popover/signpost/signpost-trigger.mjs +96 -0
- package/esm2020/popover/signpost/signpost.mjs +89 -0
- package/esm2020/popover/signpost/signpost.module.mjs +33 -0
- package/{esm2015/popover/tooltip/index.js → esm2020/popover/tooltip/index.mjs} +0 -0
- package/esm2020/popover/tooltip/providers/tooltip-id.service.mjs +25 -0
- package/esm2020/popover/tooltip/tooltip-content.mjs +132 -0
- package/esm2020/popover/tooltip/tooltip-trigger.mjs +54 -0
- package/esm2020/popover/tooltip/tooltip.mjs +41 -0
- package/esm2020/popover/tooltip/tooltip.module.mjs +28 -0
- package/{esm2015/progress/progress-bars/index.js → esm2020/progress/progress-bars/index.mjs} +0 -0
- package/{esm2015/progress/progress-bars/progress-bar.js → esm2020/progress/progress-bars/progress-bar.mjs} +75 -30
- package/esm2020/progress/progress-bars/progress-bar.module.mjs +24 -0
- package/{esm2015/progress/spinner/index.js → esm2020/progress/spinner/index.mjs} +0 -0
- package/esm2020/progress/spinner/spinner.mjs +83 -0
- package/esm2020/progress/spinner/spinner.module.mjs +24 -0
- package/{esm2015/public-api.js → esm2020/public-api.mjs} +0 -0
- package/{esm2015/timeline/enums/timeline-layout.enum.js → esm2020/timeline/enums/timeline-layout.enum.mjs} +0 -0
- package/{esm2015/timeline/enums/timeline-step-state.enum.js → esm2020/timeline/enums/timeline-step-state.enum.mjs} +0 -0
- package/{esm2015/timeline/index.js → esm2020/timeline/index.mjs} +0 -0
- package/{esm2015/timeline/interface/icon-attribute.interface.js → esm2020/timeline/interface/icon-attribute.interface.mjs} +0 -0
- package/esm2020/timeline/providers/timeline-icon-attribute.service.mjs +54 -0
- package/esm2020/timeline/timeline-step-description.mjs +20 -0
- package/esm2020/timeline/timeline-step-header.mjs +20 -0
- package/esm2020/timeline/timeline-step-title.mjs +30 -0
- package/esm2020/timeline/timeline-step.mjs +101 -0
- package/esm2020/timeline/timeline.mjs +35 -0
- package/esm2020/timeline/timeline.module.mjs +48 -0
- package/esm2020/utils/a11y/aria-live.service.mjs +163 -0
- package/{esm2015/utils/a11y/index.js → esm2020/utils/a11y/index.mjs} +0 -0
- package/{esm2015/utils/animations/collapse/collapse.js → esm2020/utils/animations/collapse/collapse.mjs} +0 -0
- package/{esm2015/utils/animations/collapse/index.js → esm2020/utils/animations/collapse/index.mjs} +0 -0
- package/{esm2015/utils/animations/constants.js → esm2020/utils/animations/constants.mjs} +0 -0
- package/esm2020/utils/animations/expandable-animation/expandable-animation.mjs +70 -0
- package/esm2020/utils/animations/expandable-animation/expandable-animation.module.mjs +24 -0
- package/{esm2015/utils/animations/expandable-animation/index.js → esm2020/utils/animations/expandable-animation/index.mjs} +0 -0
- package/{esm2015/utils/animations/fade/fade.js → esm2020/utils/animations/fade/fade.mjs} +0 -0
- package/{esm2015/utils/animations/fade/index.js → esm2020/utils/animations/fade/index.mjs} +0 -0
- package/{esm2015/utils/animations/fade-slide/fade-slide.js → esm2020/utils/animations/fade-slide/fade-slide.mjs} +0 -0
- package/{esm2015/utils/animations/fade-slide/index.js → esm2020/utils/animations/fade-slide/index.mjs} +0 -0
- package/{esm2015/utils/animations/index.js → esm2020/utils/animations/index.mjs} +0 -0
- package/{esm2015/utils/animations/slide/index.js → esm2020/utils/animations/slide/index.mjs} +0 -0
- package/{esm2015/utils/animations/slide/slide.js → esm2020/utils/animations/slide/slide.mjs} +0 -0
- package/esm2020/utils/aria/aria.service.mjs +16 -0
- package/{esm2015/utils/breakpoints/breakpoints.js → esm2020/utils/breakpoints/breakpoints.mjs} +0 -0
- package/esm2020/utils/chocolate/oompa-loompa.mjs +32 -0
- package/esm2020/utils/chocolate/willy-wonka.mjs +36 -0
- package/{esm2015/utils/component/is-boolean-attribute-set.js → esm2020/utils/component/is-boolean-attribute-set.mjs} +0 -0
- package/esm2020/utils/conditional/conditional.module.mjs +22 -0
- package/esm2020/utils/conditional/if-active.directive.mjs +104 -0
- package/esm2020/utils/conditional/if-active.service.mjs +77 -0
- package/esm2020/utils/conditional/if-expanded.directive.mjs +92 -0
- package/esm2020/utils/conditional/if-expanded.service.mjs +58 -0
- package/esm2020/utils/conditional/if-open.directive.mjs +87 -0
- package/{esm2015/utils/conditional/index.js → esm2020/utils/conditional/index.mjs} +0 -0
- package/esm2020/utils/dom-adapter/dom-adapter.mjs +52 -0
- package/esm2020/utils/drag-and-drop/drag-and-drop.module.mjs +43 -0
- package/{esm2015/utils/drag-and-drop/drag-event.js → esm2020/utils/drag-and-drop/drag-event.mjs} +0 -0
- package/esm2020/utils/drag-and-drop/drag-handle.mjs +32 -0
- package/esm2020/utils/drag-and-drop/draggable/draggable.mjs +135 -0
- package/esm2020/utils/drag-and-drop/draggable-ghost.mjs +124 -0
- package/esm2020/utils/drag-and-drop/droppable/droppable.mjs +222 -0
- package/esm2020/utils/drag-and-drop/if-dragged.mjs +45 -0
- package/{esm2015/utils/drag-and-drop/index.js → esm2020/utils/drag-and-drop/index.mjs} +0 -0
- package/{esm2015/utils/drag-and-drop/interfaces/drag-event.interface.js → esm2020/utils/drag-and-drop/interfaces/drag-event.interface.mjs} +0 -0
- package/{esm2015/utils/drag-and-drop/interfaces/drop-tolerance.interface.js → esm2020/utils/drag-and-drop/interfaces/drop-tolerance.interface.mjs} +0 -0
- package/{esm2015/utils/drag-and-drop/providers/drag-and-drop-event-bus.service.js → esm2020/utils/drag-and-drop/providers/drag-and-drop-event-bus.service.mjs} +7 -5
- package/esm2020/utils/drag-and-drop/providers/drag-event-listener.service.mjs +179 -0
- package/esm2020/utils/drag-and-drop/providers/drag-handle-registrar.service.mjs +60 -0
- package/esm2020/utils/drag-and-drop/providers/draggable-snapshot.service.mjs +38 -0
- package/esm2020/utils/drag-and-drop/providers/global-drag-mode.service.mjs +26 -0
- package/{esm2015/utils/enums/key-codes.enum.js → esm2020/utils/enums/key-codes.enum.mjs} +0 -0
- package/{esm2015/utils/focus/arrow-key-direction.enum.js → esm2020/utils/focus/arrow-key-direction.enum.mjs} +0 -0
- package/esm2020/utils/focus/focus-on-view-init/focus-on-view-init.mjs +84 -0
- package/esm2020/utils/focus/focus-on-view-init/focus-on-view-init.module.mjs +26 -0
- package/{esm2015/utils/focus/focus-on-view-init/focus-on-view-init.provider.js → esm2020/utils/focus/focus-on-view-init/focus-on-view-init.provider.mjs} +0 -0
- package/{esm2015/utils/focus/focus-on-view-init/index.js → esm2020/utils/focus/focus-on-view-init/index.mjs} +0 -0
- package/esm2020/utils/focus/focus.service.mjs +94 -0
- package/esm2020/utils/focus/focusable-item/basic-focusable-item.service.mjs +58 -0
- package/{esm2015/utils/focus/focusable-item/custom-focusable-item-provider.js → esm2020/utils/focus/focusable-item/custom-focusable-item-provider.mjs} +0 -0
- package/{esm2015/utils/focus/focusable-item/focusable-item.js → esm2020/utils/focus/focusable-item/focusable-item.mjs} +0 -0
- package/{esm2015/utils/focus/focusable-item/linkers.js → esm2020/utils/focus/focusable-item/linkers.mjs} +0 -0
- package/{esm2015/utils/focus/key-focus/enums/focus-direction.enum.js → esm2020/utils/focus/key-focus/enums/focus-direction.enum.mjs} +0 -0
- package/{esm2015/utils/focus/key-focus/interfaces.js → esm2020/utils/focus/key-focus/interfaces.mjs} +0 -0
- package/esm2020/utils/focus/key-focus/key-focus-item.mjs +34 -0
- package/esm2020/utils/focus/key-focus/key-focus.mjs +194 -0
- package/esm2020/utils/focus/key-focus/key-focus.module.mjs +26 -0
- package/esm2020/utils/focus/key-focus/roving-tabindex.mjs +102 -0
- package/{esm2015/utils/focus/key-focus/util.js → esm2020/utils/focus/key-focus/util.mjs} +0 -0
- package/{esm2015/utils/focus/wrap-observable.js → esm2020/utils/focus/wrap-observable.mjs} +0 -0
- package/{esm2015/utils/focus-trap/focus-trap-config.interface.js → esm2020/utils/focus-trap/focus-trap-config.interface.mjs} +0 -0
- package/esm2020/utils/focus-trap/focus-trap-tracker.service.mjs +32 -0
- package/esm2020/utils/focus-trap/focus-trap.directive.mjs +156 -0
- package/esm2020/utils/focus-trap/focus-trap.module.mjs +24 -0
- package/{esm2015/utils/focus-trap/index.js → esm2020/utils/focus-trap/index.mjs} +0 -0
- package/{esm2015/utils/forms/validation.js → esm2020/utils/forms/validation.mjs} +0 -0
- package/{esm2015/utils/host-wrapping/dynamic-wrapper.js → esm2020/utils/host-wrapping/dynamic-wrapper.mjs} +0 -0
- package/esm2020/utils/host-wrapping/empty-anchor.mjs +18 -0
- package/{esm2015/utils/host-wrapping/host-wrapper.js → esm2020/utils/host-wrapping/host-wrapper.mjs} +0 -0
- package/esm2020/utils/host-wrapping/host-wrapping.module.mjs +21 -0
- package/{esm2015/utils/i18n/common-strings.default.js → esm2020/utils/i18n/common-strings.default.mjs} +2 -2
- package/{esm2015/utils/i18n/common-strings.interface.js → esm2020/utils/i18n/common-strings.interface.mjs} +0 -0
- package/esm2020/utils/i18n/common-strings.service.mjs +47 -0
- package/{esm2015/utils/i18n/index.js → esm2020/utils/i18n/index.mjs} +0 -0
- package/{esm2015/utils/id-generator/id-generator.service.js → esm2020/utils/id-generator/id-generator.service.mjs} +0 -0
- package/{esm2015/utils/index.js → esm2020/utils/index.mjs} +0 -0
- package/{esm2015/utils/key-codes/key-codes.js → esm2020/utils/key-codes/key-codes.mjs} +0 -0
- package/{esm2015/utils/loading/index.js → esm2020/utils/loading/index.mjs} +0 -0
- package/{esm2015/utils/loading/loading-listener.js → esm2020/utils/loading/loading-listener.mjs} +0 -0
- package/esm2020/utils/loading/loading.mjs +55 -0
- package/esm2020/utils/loading/loading.module.mjs +20 -0
- package/{esm2015/utils/outside-click/index.js → esm2020/utils/outside-click/index.mjs} +0 -0
- package/esm2020/utils/outside-click/outside-click.mjs +46 -0
- package/esm2020/utils/outside-click/outside-click.module.mjs +20 -0
- package/{esm2015/utils/popover/enums/alignment.enum.js → esm2020/utils/popover/enums/alignment.enum.mjs} +0 -0
- package/{esm2015/utils/popover/enums/axis.enum.js → esm2020/utils/popover/enums/axis.enum.mjs} +0 -0
- package/{esm2015/utils/popover/enums/positions.enum.js → esm2020/utils/popover/enums/positions.enum.mjs} +0 -0
- package/{esm2015/utils/popover/enums/side.enum.js → esm2020/utils/popover/enums/side.enum.mjs} +0 -0
- package/{esm2015/utils/popover/enums/viewport-violation.enum.js → esm2020/utils/popover/enums/viewport-violation.enum.mjs} +0 -0
- package/{esm2015/utils/popover/index.js → esm2020/utils/popover/index.mjs} +0 -0
- package/{esm2015/utils/popover/interfaces/popover-content-offset.interface.js → esm2020/utils/popover/interfaces/popover-content-offset.interface.mjs} +0 -0
- package/{esm2015/utils/popover/interfaces/popover-position.interface.js → esm2020/utils/popover/interfaces/popover-position.interface.mjs} +0 -0
- package/{esm2015/utils/popover/interfaces/visibility-coords.interface.js → esm2020/utils/popover/interfaces/visibility-coords.interface.mjs} +0 -0
- package/esm2020/utils/popover/popover-anchor.mjs +26 -0
- package/esm2020/utils/popover/popover-close-button.mjs +52 -0
- package/esm2020/utils/popover/popover-content.mjs +150 -0
- package/esm2020/utils/popover/popover-open-close-button.mjs +43 -0
- package/esm2020/utils/popover/popover.module.mjs +26 -0
- package/esm2020/utils/popover/position-operators.mjs +180 -0
- package/esm2020/utils/popover/providers/popover-events.service.mjs +160 -0
- package/esm2020/utils/popover/providers/popover-position.service.mjs +215 -0
- package/esm2020/utils/popover/providers/popover-toggle.service.mjs +70 -0
- package/esm2020/utils/scrolling/scrolling-service.mjs +30 -0
- package/{esm2015/utils/template-ref/index.js → esm2020/utils/template-ref/index.mjs} +0 -0
- package/esm2020/utils/template-ref/template-ref-container.mjs +29 -0
- package/esm2020/utils/template-ref/template-ref.module.mjs +25 -0
- package/{esm2015/wizard/index.js → esm2020/wizard/index.mjs} +0 -0
- package/esm2020/wizard/providers/button-hub.service.mjs +63 -0
- package/esm2020/wizard/providers/header-actions.service.mjs +37 -0
- package/esm2020/wizard/providers/page-collection.service.mjs +361 -0
- package/esm2020/wizard/providers/wizard-navigation.service.mjs +574 -0
- package/esm2020/wizard/wizard-button.mjs +187 -0
- package/esm2020/wizard/wizard-custom-tags.mjs +16 -0
- package/esm2020/wizard/wizard-header-action.mjs +76 -0
- package/esm2020/wizard/wizard-page-buttons.mjs +19 -0
- package/esm2020/wizard/wizard-page-header-actions.mjs +19 -0
- package/esm2020/wizard/wizard-page-navtitle.mjs +19 -0
- package/esm2020/wizard/wizard-page-title.mjs +19 -0
- package/{esm2015/wizard/wizard-page.js → esm2020/wizard/wizard-page.mjs} +90 -47
- package/esm2020/wizard/wizard-stepnav-item.mjs +122 -0
- package/esm2020/wizard/wizard-stepnav.mjs +48 -0
- package/esm2020/wizard/wizard.mjs +475 -0
- package/esm2020/wizard/wizard.module.mjs +72 -0
- package/fesm2015/clr-angular.mjs +26606 -0
- package/fesm2015/clr-angular.mjs.map +1 -0
- package/{fesm2015/clr-angular.js → fesm2020/clr-angular.mjs} +8969 -6517
- package/fesm2020/clr-angular.mjs.map +1 -0
- package/forms/checkbox/checkbox-container.d.ts +3 -0
- package/forms/checkbox/checkbox-wrapper.d.ts +3 -0
- package/forms/checkbox/checkbox.d.ts +3 -0
- package/forms/checkbox/checkbox.module.d.ts +11 -5
- package/forms/combobox/combobox-container.d.ts +3 -0
- package/forms/combobox/combobox.d.ts +3 -5
- package/forms/combobox/combobox.module.d.ts +18 -5
- package/forms/combobox/option-items.directive.d.ts +3 -0
- package/forms/combobox/option-selected.directive.d.ts +3 -0
- package/forms/combobox/option.d.ts +3 -0
- package/forms/combobox/options.d.ts +3 -0
- package/forms/combobox/providers/combobox-container.service.d.ts +3 -0
- package/forms/combobox/providers/combobox-focus-handler.service.d.ts +4 -1
- package/forms/combobox/providers/option-selection.service.d.ts +3 -0
- package/forms/common/abstract-container.d.ts +3 -0
- package/forms/common/abstract-control.d.ts +3 -5
- package/forms/common/common.module.d.ts +16 -5
- package/forms/common/control-container.d.ts +3 -5
- package/forms/common/control.d.ts +3 -0
- package/forms/common/error.d.ts +3 -5
- package/forms/common/form.d.ts +3 -0
- package/forms/common/helper.d.ts +3 -5
- package/forms/common/if-control-state/abstract-if-state.d.ts +3 -0
- package/forms/common/if-control-state/if-control-state.service.d.ts +3 -0
- package/forms/common/if-control-state/if-error.d.ts +3 -0
- package/forms/common/if-control-state/if-success.d.ts +3 -0
- package/forms/common/label.d.ts +3 -0
- package/forms/common/layout.d.ts +3 -0
- package/forms/common/providers/container-id.service.d.ts +3 -0
- package/forms/common/providers/control-class.service.d.ts +3 -0
- package/forms/common/providers/control-id.service.d.ts +3 -0
- package/forms/common/providers/focus.service.d.ts +3 -0
- package/forms/common/providers/layout.service.d.ts +3 -0
- package/forms/common/providers/mark-control.service.d.ts +3 -0
- package/forms/common/providers/ng-control.service.d.ts +3 -0
- package/forms/common/success.d.ts +3 -5
- package/forms/common/wrapped-control.d.ts +3 -0
- package/forms/datalist/datalist-container.d.ts +3 -5
- package/forms/datalist/datalist-input.d.ts +3 -0
- package/forms/datalist/datalist.d.ts +3 -0
- package/forms/datalist/datalist.module.d.ts +10 -0
- package/forms/datalist/providers/datalist-id.service.d.ts +3 -0
- package/forms/datepicker/calendar.d.ts +3 -0
- package/forms/datepicker/date-container.d.ts +3 -0
- package/forms/datepicker/date-input.d.ts +3 -0
- package/forms/datepicker/datepicker-view-manager.d.ts +3 -0
- package/forms/datepicker/datepicker.module.d.ts +19 -0
- package/forms/datepicker/day.d.ts +3 -0
- package/forms/datepicker/daypicker.d.ts +3 -0
- package/forms/datepicker/monthpicker.d.ts +3 -0
- package/forms/datepicker/providers/date-form-control.service.d.ts +3 -0
- package/forms/datepicker/providers/date-io.service.d.ts +3 -0
- package/forms/datepicker/providers/date-navigation.service.d.ts +3 -0
- package/forms/datepicker/providers/datepicker-enabled.service.d.ts +3 -0
- package/forms/datepicker/providers/datepicker-focus.service.d.ts +3 -0
- package/forms/datepicker/providers/locale-helper.service.d.ts +3 -0
- package/forms/datepicker/providers/view-manager.service.d.ts +3 -0
- package/forms/datepicker/yearpicker.d.ts +3 -0
- package/forms/forms.module.d.ts +16 -0
- package/forms/input/input-container.d.ts +3 -5
- package/forms/input/input.d.ts +3 -0
- package/forms/input/input.module.d.ts +10 -5
- package/forms/password/password-container.d.ts +3 -0
- package/forms/password/password.d.ts +3 -0
- package/forms/password/password.module.d.ts +10 -5
- package/forms/radio/radio-container.d.ts +3 -0
- package/forms/radio/radio-wrapper.d.ts +3 -0
- package/forms/radio/radio.d.ts +3 -0
- package/forms/radio/radio.module.d.ts +11 -5
- package/forms/range/range-container.d.ts +3 -0
- package/forms/range/range.d.ts +3 -0
- package/forms/range/range.module.d.ts +10 -5
- package/forms/select/select-container.d.ts +3 -5
- package/forms/select/select.d.ts +3 -0
- package/forms/select/select.module.d.ts +10 -5
- package/forms/textarea/textarea-container.d.ts +3 -5
- package/forms/textarea/textarea.d.ts +3 -0
- package/forms/textarea/textarea.module.d.ts +10 -5
- package/icon/icon.d.ts +5 -0
- package/icon/icon.module.d.ts +6 -0
- package/layout/layout.module.d.ts +8 -0
- package/layout/main-container/main-container.d.ts +3 -0
- package/layout/main-container/main-container.module.d.ts +7 -0
- package/layout/nav/chocolate/main-container-willy-wonka.d.ts +3 -0
- package/layout/nav/chocolate/nav-detection-oompa-loompa.d.ts +3 -0
- package/layout/nav/header.d.ts +3 -0
- package/layout/nav/nav-level.d.ts +3 -0
- package/layout/nav/navigation.module.d.ts +11 -0
- package/layout/nav/providers/responsive-navigation.service.d.ts +3 -0
- package/layout/tabs/chocolate/active-oompa-loompa.d.ts +3 -0
- package/layout/tabs/chocolate/tabs-willy-wonka.d.ts +3 -0
- package/layout/tabs/providers/tabs.service.d.ts +3 -0
- package/layout/tabs/tab-content.d.ts +3 -0
- package/layout/tabs/tab-link.directive.d.ts +3 -0
- package/layout/tabs/tab-overflow-content.d.ts +3 -0
- package/layout/tabs/tab.d.ts +3 -0
- package/layout/tabs/tabs.d.ts +3 -0
- package/layout/tabs/tabs.module.d.ts +16 -0
- package/layout/vertical-nav/providers/vertical-nav-group-registration.service.d.ts +3 -0
- package/layout/vertical-nav/providers/vertical-nav-group.service.d.ts +3 -0
- package/layout/vertical-nav/providers/vertical-nav-icon.service.d.ts +3 -0
- package/layout/vertical-nav/providers/vertical-nav.service.d.ts +3 -0
- package/layout/vertical-nav/vertical-nav-group-children.d.ts +3 -0
- package/layout/vertical-nav/vertical-nav-group.d.ts +3 -0
- package/layout/vertical-nav/vertical-nav-icon.d.ts +3 -0
- package/layout/vertical-nav/vertical-nav-link.d.ts +3 -0
- package/layout/vertical-nav/vertical-nav.d.ts +3 -0
- package/layout/vertical-nav/vertical-nav.module.d.ts +13 -0
- package/modal/modal-body.d.ts +3 -0
- package/modal/modal.d.ts +3 -0
- package/modal/modal.module.d.ts +10 -0
- package/package.json +24 -12
- package/popover/common/abstract-popover.d.ts +3 -0
- package/popover/dropdown/dropdown-item.d.ts +3 -0
- package/popover/dropdown/dropdown-menu.d.ts +3 -0
- package/popover/dropdown/dropdown-trigger.d.ts +3 -0
- package/popover/dropdown/dropdown.d.ts +3 -0
- package/popover/dropdown/dropdown.module.d.ts +11 -0
- package/popover/dropdown/providers/dropdown-focus-handler.service.d.ts +3 -0
- package/popover/dropdown/providers/dropdown.service.d.ts +3 -0
- package/popover/popover.module.d.ts +7 -0
- package/popover/signpost/providers/signpost-focus-manager.service.d.ts +3 -0
- package/popover/signpost/providers/signpost-id.service.d.ts +3 -0
- package/popover/signpost/signpost-content.d.ts +3 -0
- package/popover/signpost/signpost-trigger.d.ts +3 -0
- package/popover/signpost/signpost.d.ts +3 -0
- package/popover/signpost/signpost.module.d.ts +11 -0
- package/popover/tooltip/providers/tooltip-id.service.d.ts +3 -0
- package/popover/tooltip/tooltip-content.d.ts +3 -0
- package/popover/tooltip/tooltip-trigger.d.ts +3 -0
- package/popover/tooltip/tooltip.d.ts +3 -0
- package/popover/tooltip/tooltip.module.d.ts +10 -0
- package/progress/progress-bars/progress-bar.d.ts +3 -0
- package/progress/progress-bars/progress-bar.module.d.ts +6 -0
- package/progress/spinner/spinner.d.ts +3 -0
- package/progress/spinner/spinner.module.d.ts +6 -0
- package/schematics/add/index.js +9 -9
- package/schematics/add/index.js.map +1 -1
- package/schematics/add/index.spec.js +13 -13
- package/schematics/add/index.spec.js.map +1 -1
- package/schematics/add/schema.json +1 -1
- package/schematics/migration-collection.json +5 -0
- package/schematics/update/update-13.0.0.js +37 -0
- package/schematics/update/update-13.0.0.js.map +1 -0
- package/schematics/update/update-13.0.0.spec.js +71 -0
- package/schematics/update/update-13.0.0.spec.js.map +1 -0
- package/schematics/update/update-3.0.0.js +1 -1
- package/schematics/update/update-3.0.0.js.map +1 -1
- package/schematics/update/update-5.0.0.js +1 -1
- package/schematics/update/update-5.0.0.js.map +1 -1
- package/schematics/update/update-5.0.0.spec.js +4 -4
- package/schematics/update/update-5.0.0.spec.js.map +1 -1
- package/schematics/utility/add-module-import-to-module.js +2 -2
- package/schematics/utility/add-module-import-to-module.js.map +1 -1
- package/schematics/utility/find-app-module.js +2 -2
- package/schematics/utility/find-app-module.js.map +1 -1
- package/schematics/utility/update-json-file.js +1 -1
- package/schematics/utility/update-json-file.js.map +1 -1
- package/src/utils/popover/README.md +139 -0
- package/timeline/providers/timeline-icon-attribute.service.d.ts +3 -0
- package/timeline/timeline-step-description.d.ts +3 -0
- package/timeline/timeline-step-header.d.ts +3 -0
- package/timeline/timeline-step-title.d.ts +3 -0
- package/timeline/timeline-step.d.ts +3 -0
- package/timeline/timeline.d.ts +3 -0
- package/timeline/timeline.module.d.ts +12 -0
- package/utils/a11y/aria-live.service.d.ts +3 -0
- package/utils/animations/expandable-animation/expandable-animation.d.ts +3 -0
- package/utils/animations/expandable-animation/expandable-animation.module.d.ts +6 -0
- package/utils/aria/aria.service.d.ts +3 -0
- package/utils/chocolate/oompa-loompa.d.ts +3 -0
- package/utils/chocolate/willy-wonka.d.ts +3 -0
- package/utils/conditional/conditional.module.d.ts +8 -0
- package/utils/conditional/if-active.directive.d.ts +3 -0
- package/utils/conditional/if-active.service.d.ts +3 -0
- package/utils/conditional/if-expanded.directive.d.ts +3 -0
- package/utils/conditional/if-expanded.service.d.ts +3 -0
- package/utils/conditional/if-open.directive.d.ts +3 -0
- package/utils/dom-adapter/dom-adapter.d.ts +4 -1
- package/utils/drag-and-drop/drag-and-drop.module.d.ts +10 -0
- package/utils/drag-and-drop/drag-handle.d.ts +3 -0
- package/utils/drag-and-drop/draggable/draggable.d.ts +3 -0
- package/utils/drag-and-drop/draggable-ghost.d.ts +3 -0
- package/utils/drag-and-drop/droppable/droppable.d.ts +3 -0
- package/utils/drag-and-drop/if-dragged.d.ts +3 -0
- package/utils/drag-and-drop/providers/drag-and-drop-event-bus.service.d.ts +3 -0
- package/utils/drag-and-drop/providers/drag-event-listener.service.d.ts +3 -0
- package/utils/drag-and-drop/providers/drag-handle-registrar.service.d.ts +3 -0
- package/utils/drag-and-drop/providers/draggable-snapshot.service.d.ts +3 -0
- package/utils/drag-and-drop/providers/global-drag-mode.service.d.ts +3 -0
- package/utils/focus/focus-on-view-init/focus-on-view-init.d.ts +3 -0
- package/utils/focus/focus-on-view-init/focus-on-view-init.module.d.ts +6 -0
- package/utils/focus/focus.service.d.ts +3 -0
- package/utils/focus/focusable-item/basic-focusable-item.service.d.ts +3 -0
- package/utils/focus/key-focus/key-focus-item.d.ts +3 -0
- package/utils/focus/key-focus/key-focus.d.ts +3 -0
- package/utils/focus/key-focus/key-focus.module.d.ts +8 -0
- package/utils/focus/key-focus/roving-tabindex.d.ts +3 -0
- package/utils/focus-trap/focus-trap-tracker.service.d.ts +3 -0
- package/utils/focus-trap/focus-trap.directive.d.ts +3 -0
- package/utils/focus-trap/focus-trap.module.d.ts +6 -0
- package/utils/host-wrapping/empty-anchor.d.ts +3 -5
- package/utils/host-wrapping/host-wrapping.module.d.ts +5 -5
- package/utils/i18n/common-strings.service.d.ts +3 -0
- package/utils/loading/loading.d.ts +3 -0
- package/utils/loading/loading.module.d.ts +6 -0
- package/utils/outside-click/outside-click.d.ts +3 -0
- package/utils/outside-click/outside-click.module.d.ts +6 -0
- package/utils/popover/popover-anchor.d.ts +3 -0
- package/utils/popover/popover-close-button.d.ts +3 -0
- package/utils/popover/popover-content.d.ts +3 -0
- package/utils/popover/popover-open-close-button.d.ts +3 -0
- package/utils/popover/popover.module.d.ts +8 -0
- package/utils/popover/providers/popover-events.service.d.ts +3 -0
- package/utils/popover/providers/popover-position.service.d.ts +3 -0
- package/utils/popover/providers/popover-toggle.service.d.ts +3 -0
- package/utils/scrolling/scrolling-service.d.ts +3 -0
- package/utils/template-ref/template-ref-container.d.ts +3 -0
- package/utils/template-ref/template-ref.module.d.ts +6 -0
- package/wizard/providers/button-hub.service.d.ts +3 -0
- package/wizard/providers/header-actions.service.d.ts +3 -0
- package/wizard/providers/page-collection.service.d.ts +3 -0
- package/wizard/providers/wizard-navigation.service.d.ts +3 -0
- package/wizard/wizard-button.d.ts +3 -0
- package/wizard/wizard-custom-tags.d.ts +3 -0
- package/wizard/wizard-header-action.d.ts +3 -0
- package/wizard/wizard-page-buttons.d.ts +3 -0
- package/wizard/wizard-page-header-actions.d.ts +3 -0
- package/wizard/wizard-page-navtitle.d.ts +3 -0
- package/wizard/wizard-page-title.d.ts +3 -0
- package/wizard/wizard-page.d.ts +3 -0
- package/wizard/wizard-stepnav-item.d.ts +3 -0
- package/wizard/wizard-stepnav.d.ts +3 -0
- package/wizard/wizard.d.ts +3 -0
- package/wizard/wizard.module.d.ts +18 -0
- package/bundles/clr-angular.umd.js +0 -26095
- package/bundles/clr-angular.umd.js.map +0 -1
- package/clr-angular.metadata.json +0 -1
- package/esm2015/accordion/accordion-content.js +0 -16
- package/esm2015/accordion/accordion-description.js +0 -17
- package/esm2015/accordion/accordion-panel.js +0 -105
- package/esm2015/accordion/accordion-title.js +0 -17
- package/esm2015/accordion/accordion.js +0 -57
- package/esm2015/accordion/accordion.module.js +0 -39
- package/esm2015/accordion/chocolate/accordion-oompa-loompa.js +0 -30
- package/esm2015/accordion/chocolate/accordion-willy-wonka.js +0 -13
- package/esm2015/accordion/providers/accordion.service.js +0 -44
- package/esm2015/accordion/stepper/chocolate/stepper-oompa-loompa.js +0 -30
- package/esm2015/accordion/stepper/chocolate/stepper-willy-wonka.js +0 -13
- package/esm2015/accordion/stepper/providers/stepper.service.js +0 -52
- package/esm2015/accordion/stepper/step-button.js +0 -47
- package/esm2015/accordion/stepper/stepper-panel.js +0 -88
- package/esm2015/accordion/stepper/stepper.js +0 -87
- package/esm2015/accordion/stepper/stepper.module.js +0 -25
- package/esm2015/button/button-group/button-group.js +0 -129
- package/esm2015/button/button-group/button-group.module.js +0 -22
- package/esm2015/button/button-loading/loading-button.js +0 -109
- package/esm2015/button/button-loading/loading-button.module.js +0 -19
- package/esm2015/button/button.module.js +0 -21
- package/esm2015/button/providers/button-in-group.service.js +0 -22
- package/esm2015/clr-angular.js +0 -108
- package/esm2015/clr-angular.module.js +0 -55
- package/esm2015/data/data.module.js +0 -15
- package/esm2015/data/datagrid/built-in/filters/datagrid-numeric-filter.js +0 -169
- package/esm2015/data/datagrid/built-in/filters/datagrid-string-filter.js +0 -111
- package/esm2015/data/datagrid/chocolate/actionable-oompa-loompa.js +0 -30
- package/esm2015/data/datagrid/chocolate/datagrid-willy-wonka.js +0 -13
- package/esm2015/data/datagrid/chocolate/expandable-oompa-loompa.js +0 -30
- package/esm2015/data/datagrid/datagrid-action-bar.js +0 -16
- package/esm2015/data/datagrid/datagrid-action-overflow.js +0 -123
- package/esm2015/data/datagrid/datagrid-cell.js +0 -38
- package/esm2015/data/datagrid/datagrid-column-separator.js +0 -151
- package/esm2015/data/datagrid/datagrid-column-toggle-button.js +0 -53
- package/esm2015/data/datagrid/datagrid-column-toggle-title.js +0 -16
- package/esm2015/data/datagrid/datagrid-column-toggle.js +0 -149
- package/esm2015/data/datagrid/datagrid-column.js +0 -374
- package/esm2015/data/datagrid/datagrid-detail-body.js +0 -22
- package/esm2015/data/datagrid/datagrid-detail-header.js +0 -45
- package/esm2015/data/datagrid/datagrid-detail-registerer.js +0 -31
- package/esm2015/data/datagrid/datagrid-detail.js +0 -52
- package/esm2015/data/datagrid/datagrid-filter.js +0 -131
- package/esm2015/data/datagrid/datagrid-footer.js +0 -58
- package/esm2015/data/datagrid/datagrid-hideable-column.js +0 -97
- package/esm2015/data/datagrid/datagrid-if-detail.js +0 -62
- package/esm2015/data/datagrid/datagrid-if-expanded.service.js +0 -52
- package/esm2015/data/datagrid/datagrid-items-trackby.js +0 -29
- package/esm2015/data/datagrid/datagrid-items.js +0 -63
- package/esm2015/data/datagrid/datagrid-page-size.js +0 -37
- package/esm2015/data/datagrid/datagrid-pagination.js +0 -258
- package/esm2015/data/datagrid/datagrid-placeholder.js +0 -34
- package/esm2015/data/datagrid/datagrid-row-detail.js +0 -81
- package/esm2015/data/datagrid/datagrid-row.js +0 -218
- package/esm2015/data/datagrid/datagrid.js +0 -295
- package/esm2015/data/datagrid/datagrid.module.js +0 -127
- package/esm2015/data/datagrid/enums/column-changes.enum.js +0 -16
- package/esm2015/data/datagrid/providers/column-resizer.service.js +0 -59
- package/esm2015/data/datagrid/providers/columns.service.js +0 -50
- package/esm2015/data/datagrid/providers/detail.service.js +0 -58
- package/esm2015/data/datagrid/providers/display-mode.service.js +0 -35
- package/esm2015/data/datagrid/providers/filters.js +0 -112
- package/esm2015/data/datagrid/providers/global-expandable-rows.js +0 -33
- package/esm2015/data/datagrid/providers/items.js +0 -175
- package/esm2015/data/datagrid/providers/page.js +0 -155
- package/esm2015/data/datagrid/providers/row-action-service.js +0 -27
- package/esm2015/data/datagrid/providers/selection.js +0 -376
- package/esm2015/data/datagrid/providers/sort.js +0 -85
- package/esm2015/data/datagrid/providers/state-debouncer.provider.js +0 -39
- package/esm2015/data/datagrid/providers/state.provider.js +0 -77
- package/esm2015/data/datagrid/providers/table-size.service.js +0 -41
- package/esm2015/data/datagrid/render/cell-renderer.js +0 -82
- package/esm2015/data/datagrid/render/header-renderer.js +0 -133
- package/esm2015/data/datagrid/render/main-renderer.js +0 -199
- package/esm2015/data/datagrid/render/noop-dom-adapter.js +0 -51
- package/esm2015/data/datagrid/render/render-organizer.js +0 -35
- package/esm2015/data/datagrid/render/row-renderer.js +0 -57
- package/esm2015/data/datagrid/utils/datagrid-filter-registrar.js +0 -41
- package/esm2015/data/datagrid/wrapped-cell.js +0 -31
- package/esm2015/data/datagrid/wrapped-column.js +0 -32
- package/esm2015/data/datagrid/wrapped-row.js +0 -32
- package/esm2015/data/stack-view/stack-block.js +0 -146
- package/esm2015/data/stack-view/stack-content-input.js +0 -25
- package/esm2015/data/stack-view/stack-header.js +0 -45
- package/esm2015/data/stack-view/stack-select.js +0 -38
- package/esm2015/data/stack-view/stack-view-custom-tags.js +0 -12
- package/esm2015/data/stack-view/stack-view.js +0 -50
- package/esm2015/data/stack-view/stack-view.module.js +0 -47
- package/esm2015/data/tree-view/recursive-children.js +0 -70
- package/esm2015/data/tree-view/recursive-for-of.js +0 -53
- package/esm2015/data/tree-view/tree-features.service.js +0 -34
- package/esm2015/data/tree-view/tree-focus-manager.service.js +0 -118
- package/esm2015/data/tree-view/tree-node-link.js +0 -25
- package/esm2015/data/tree-view/tree-node.js +0 -252
- package/esm2015/data/tree-view/tree-view.module.js +0 -30
- package/esm2015/data/tree-view/tree.js +0 -78
- package/esm2015/emphasis/alert/alert-item.js +0 -32
- package/esm2015/emphasis/alert/alert-text.js +0 -18
- package/esm2015/emphasis/alert/alert.js +0 -96
- package/esm2015/emphasis/alert/alert.module.js +0 -30
- package/esm2015/emphasis/alert/alerts-pager.js +0 -69
- package/esm2015/emphasis/alert/alerts.js +0 -94
- package/esm2015/emphasis/alert/providers/icon-and-types.service.js +0 -74
- package/esm2015/emphasis/alert/providers/multi-alert.service.js +0 -76
- package/esm2015/emphasis/emphasis.module.js +0 -13
- package/esm2015/forms/checkbox/checkbox-container.js +0 -95
- package/esm2015/forms/checkbox/checkbox-wrapper.js +0 -57
- package/esm2015/forms/checkbox/checkbox.js +0 -40
- package/esm2015/forms/checkbox/checkbox.module.js +0 -29
- package/esm2015/forms/combobox/combobox-container.js +0 -79
- package/esm2015/forms/combobox/combobox.js +0 -329
- package/esm2015/forms/combobox/combobox.module.js +0 -53
- package/esm2015/forms/combobox/option-items.directive.js +0 -96
- package/esm2015/forms/combobox/option-selected.directive.js +0 -21
- package/esm2015/forms/combobox/option.js +0 -91
- package/esm2015/forms/combobox/options.js +0 -125
- package/esm2015/forms/combobox/providers/combobox-container.service.js +0 -15
- package/esm2015/forms/combobox/providers/combobox-focus-handler.service.js +0 -213
- package/esm2015/forms/combobox/providers/option-selection.service.js +0 -78
- package/esm2015/forms/common/abstract-container.js +0 -113
- package/esm2015/forms/common/abstract-control.js +0 -47
- package/esm2015/forms/common/common.module.js +0 -56
- package/esm2015/forms/common/control-container.js +0 -51
- package/esm2015/forms/common/control.js +0 -26
- package/esm2015/forms/common/error.js +0 -32
- package/esm2015/forms/common/form.js +0 -47
- package/esm2015/forms/common/helper.js +0 -32
- package/esm2015/forms/common/if-control-state/abstract-if-state.js +0 -41
- package/esm2015/forms/common/if-control-state/if-control-state.service.js +0 -56
- package/esm2015/forms/common/if-control-state/if-error.js +0 -65
- package/esm2015/forms/common/if-control-state/if-success.js +0 -42
- package/esm2015/forms/common/label.js +0 -61
- package/esm2015/forms/common/layout.js +0 -30
- package/esm2015/forms/common/providers/container-id.service.js +0 -30
- package/esm2015/forms/common/providers/control-class.service.js +0 -50
- package/esm2015/forms/common/providers/control-id.service.js +0 -28
- package/esm2015/forms/common/providers/focus.service.js +0 -22
- package/esm2015/forms/common/providers/layout.service.js +0 -54
- package/esm2015/forms/common/providers/mark-control.service.js +0 -22
- package/esm2015/forms/common/providers/ng-control.service.js +0 -30
- package/esm2015/forms/common/success.js +0 -32
- package/esm2015/forms/common/wrapped-control.js +0 -158
- package/esm2015/forms/datalist/datalist-container.js +0 -79
- package/esm2015/forms/datalist/datalist-input.js +0 -59
- package/esm2015/forms/datalist/datalist.js +0 -46
- package/esm2015/forms/datalist/datalist.module.js +0 -27
- package/esm2015/forms/datalist/providers/datalist-id.service.js +0 -28
- package/esm2015/forms/datepicker/calendar.js +0 -119
- package/esm2015/forms/datepicker/date-container.js +0 -179
- package/esm2015/forms/datepicker/date-input.js +0 -256
- package/esm2015/forms/datepicker/datepicker-view-manager.js +0 -46
- package/esm2015/forms/datepicker/datepicker.module.js +0 -55
- package/esm2015/forms/datepicker/day.js +0 -72
- package/esm2015/forms/datepicker/daypicker.js +0 -84
- package/esm2015/forms/datepicker/monthpicker.js +0 -116
- package/esm2015/forms/datepicker/providers/date-form-control.service.js +0 -33
- package/esm2015/forms/datepicker/providers/date-io.service.js +0 -176
- package/esm2015/forms/datepicker/providers/date-navigation.service.js +0 -127
- package/esm2015/forms/datepicker/providers/datepicker-enabled.service.js +0 -43
- package/esm2015/forms/datepicker/providers/datepicker-focus.service.js +0 -45
- package/esm2015/forms/datepicker/providers/locale-helper.service.js +0 -98
- package/esm2015/forms/datepicker/providers/view-manager.service.js +0 -38
- package/esm2015/forms/datepicker/yearpicker.js +0 -193
- package/esm2015/forms/forms.module.js +0 -39
- package/esm2015/forms/input/input.js +0 -26
- package/esm2015/forms/input/input.module.js +0 -29
- package/esm2015/forms/password/password-container.js +0 -120
- package/esm2015/forms/password/password.js +0 -53
- package/esm2015/forms/password/password.module.js +0 -28
- package/esm2015/forms/radio/radio-container.js +0 -95
- package/esm2015/forms/radio/radio-wrapper.js +0 -39
- package/esm2015/forms/radio/radio.js +0 -25
- package/esm2015/forms/radio/radio.module.js +0 -29
- package/esm2015/forms/range/range-container.js +0 -93
- package/esm2015/forms/range/range.js +0 -25
- package/esm2015/forms/range/range.module.js +0 -28
- package/esm2015/forms/select/select-container.js +0 -82
- package/esm2015/forms/select/select.js +0 -26
- package/esm2015/forms/select/select.module.js +0 -28
- package/esm2015/forms/textarea/textarea-container.js +0 -51
- package/esm2015/forms/textarea/textarea.js +0 -26
- package/esm2015/forms/textarea/textarea.module.js +0 -28
- package/esm2015/icon/icon.js +0 -17
- package/esm2015/icon/icon.module.js +0 -15
- package/esm2015/layout/layout.module.js +0 -16
- package/esm2015/layout/main-container/main-container.js +0 -58
- package/esm2015/layout/main-container/main-container.module.js +0 -20
- package/esm2015/layout/nav/chocolate/main-container-willy-wonka.js +0 -13
- package/esm2015/layout/nav/chocolate/nav-detection-oompa-loompa.js +0 -32
- package/esm2015/layout/nav/header.js +0 -94
- package/esm2015/layout/nav/nav-level.js +0 -79
- package/esm2015/layout/nav/navigation.module.js +0 -29
- package/esm2015/layout/tabs/chocolate/active-oompa-loompa.js +0 -32
- package/esm2015/layout/tabs/chocolate/tabs-willy-wonka.js +0 -13
- package/esm2015/layout/tabs/providers/tabs.service.js +0 -42
- package/esm2015/layout/tabs/tab-content.js +0 -77
- package/esm2015/layout/tabs/tab-link.directive.js +0 -93
- package/esm2015/layout/tabs/tab-overflow-content.js +0 -18
- package/esm2015/layout/tabs/tab.js +0 -42
- package/esm2015/layout/tabs/tabs.js +0 -235
- package/esm2015/layout/tabs/tabs.module.js +0 -42
- package/esm2015/layout/vertical-nav/providers/vertical-nav-group-registration.service.js +0 -21
- package/esm2015/layout/vertical-nav/providers/vertical-nav-group.service.js +0 -22
- package/esm2015/layout/vertical-nav/providers/vertical-nav-icon.service.js +0 -24
- package/esm2015/layout/vertical-nav/providers/vertical-nav.service.js +0 -51
- package/esm2015/layout/vertical-nav/vertical-nav-group-children.js +0 -15
- package/esm2015/layout/vertical-nav/vertical-nav-group.js +0 -158
- package/esm2015/layout/vertical-nav/vertical-nav-icon.js +0 -23
- package/esm2015/layout/vertical-nav/vertical-nav-link.js +0 -36
- package/esm2015/layout/vertical-nav/vertical-nav.js +0 -77
- package/esm2015/layout/vertical-nav/vertical-nav.module.js +0 -37
- package/esm2015/modal/modal-body.js +0 -43
- package/esm2015/modal/modal.js +0 -111
- package/esm2015/modal/modal.module.js +0 -28
- package/esm2015/popover/common/abstract-popover.js +0 -133
- package/esm2015/popover/dropdown/dropdown-item.js +0 -87
- package/esm2015/popover/dropdown/dropdown-menu.js +0 -105
- package/esm2015/popover/dropdown/dropdown-trigger.js +0 -50
- package/esm2015/popover/dropdown/dropdown.js +0 -52
- package/esm2015/popover/dropdown/dropdown.module.js +0 -24
- package/esm2015/popover/dropdown/providers/dropdown-focus-handler.service.js +0 -181
- package/esm2015/popover/dropdown/providers/dropdown.service.js +0 -30
- package/esm2015/popover/popover.module.js +0 -15
- package/esm2015/popover/signpost/providers/signpost-focus-manager.service.js +0 -20
- package/esm2015/popover/signpost/providers/signpost-id.service.js +0 -23
- package/esm2015/popover/signpost/signpost-content.js +0 -150
- package/esm2015/popover/signpost/signpost-trigger.js +0 -95
- package/esm2015/popover/signpost/signpost.js +0 -72
- package/esm2015/popover/signpost/signpost.module.js +0 -29
- package/esm2015/popover/tooltip/providers/tooltip-id.service.js +0 -22
- package/esm2015/popover/tooltip/tooltip-content.js +0 -123
- package/esm2015/popover/tooltip/tooltip-trigger.js +0 -46
- package/esm2015/popover/tooltip/tooltip.js +0 -30
- package/esm2015/popover/tooltip/tooltip.module.js +0 -23
- package/esm2015/progress/progress-bars/progress-bar.module.js +0 -19
- package/esm2015/progress/spinner/spinner.js +0 -63
- package/esm2015/progress/spinner/spinner.module.js +0 -19
- package/esm2015/timeline/providers/timeline-icon-attribute.service.js +0 -54
- package/esm2015/timeline/timeline-step-description.js +0 -16
- package/esm2015/timeline/timeline-step-header.js +0 -16
- package/esm2015/timeline/timeline-step-title.js +0 -26
- package/esm2015/timeline/timeline-step.js +0 -73
- package/esm2015/timeline/timeline.js +0 -29
- package/esm2015/timeline/timeline.module.js +0 -36
- package/esm2015/utils/a11y/aria-live.service.js +0 -161
- package/esm2015/utils/animations/expandable-animation/expandable-animation.js +0 -57
- package/esm2015/utils/animations/expandable-animation/expandable-animation.module.js +0 -18
- package/esm2015/utils/aria/aria.service.js +0 -13
- package/esm2015/utils/chocolate/oompa-loompa.js +0 -33
- package/esm2015/utils/chocolate/willy-wonka.js +0 -33
- package/esm2015/utils/conditional/conditional.module.js +0 -17
- package/esm2015/utils/conditional/if-active.directive.js +0 -100
- package/esm2015/utils/conditional/if-active.service.js +0 -74
- package/esm2015/utils/conditional/if-expanded.directive.js +0 -91
- package/esm2015/utils/conditional/if-expanded.service.js +0 -55
- package/esm2015/utils/conditional/if-open.directive.js +0 -86
- package/esm2015/utils/dom-adapter/dom-adapter.js +0 -49
- package/esm2015/utils/drag-and-drop/drag-and-drop.module.js +0 -30
- package/esm2015/utils/drag-and-drop/drag-handle.js +0 -30
- package/esm2015/utils/drag-and-drop/draggable/draggable.js +0 -119
- package/esm2015/utils/drag-and-drop/draggable-ghost.js +0 -116
- package/esm2015/utils/drag-and-drop/droppable/droppable.js +0 -209
- package/esm2015/utils/drag-and-drop/if-dragged.js +0 -40
- package/esm2015/utils/drag-and-drop/providers/drag-event-listener.service.js +0 -181
- package/esm2015/utils/drag-and-drop/providers/drag-handle-registrar.service.js +0 -61
- package/esm2015/utils/drag-and-drop/providers/draggable-snapshot.service.js +0 -38
- package/esm2015/utils/drag-and-drop/providers/global-drag-mode.service.js +0 -26
- package/esm2015/utils/focus/focus-on-view-init/focus-on-view-init.js +0 -76
- package/esm2015/utils/focus/focus-on-view-init/focus-on-view-init.module.js +0 -21
- package/esm2015/utils/focus/focus.service.js +0 -94
- package/esm2015/utils/focus/focusable-item/basic-focusable-item.service.js +0 -55
- package/esm2015/utils/focus/key-focus/key-focus-item.js +0 -31
- package/esm2015/utils/focus/key-focus/key-focus.js +0 -181
- package/esm2015/utils/focus/key-focus/key-focus.module.js +0 -21
- package/esm2015/utils/focus/key-focus/roving-tabindex.js +0 -100
- package/esm2015/utils/focus-trap/focus-trap-tracker.service.js +0 -30
- package/esm2015/utils/focus-trap/focus-trap.directive.js +0 -154
- package/esm2015/utils/focus-trap/focus-trap.module.js +0 -19
- package/esm2015/utils/host-wrapping/empty-anchor.js +0 -14
- package/esm2015/utils/host-wrapping/host-wrapping.module.js +0 -16
- package/esm2015/utils/i18n/common-strings.service.js +0 -45
- package/esm2015/utils/loading/loading.js +0 -52
- package/esm2015/utils/loading/loading.module.js +0 -15
- package/esm2015/utils/outside-click/outside-click.js +0 -45
- package/esm2015/utils/outside-click/outside-click.module.js +0 -14
- package/esm2015/utils/popover/popover-anchor.js +0 -26
- package/esm2015/utils/popover/popover-close-button.js +0 -51
- package/esm2015/utils/popover/popover-content.js +0 -146
- package/esm2015/utils/popover/popover-open-close-button.js +0 -40
- package/esm2015/utils/popover/popover.module.js +0 -21
- package/esm2015/utils/popover/position-operators.js +0 -171
- package/esm2015/utils/popover/providers/popover-events.service.js +0 -159
- package/esm2015/utils/popover/providers/popover-position.service.js +0 -213
- package/esm2015/utils/popover/providers/popover-toggle.service.js +0 -67
- package/esm2015/utils/scrolling/scrolling-service.js +0 -27
- package/esm2015/utils/template-ref/template-ref-container.js +0 -21
- package/esm2015/utils/template-ref/template-ref.module.js +0 -19
- package/esm2015/wizard/providers/button-hub.service.js +0 -60
- package/esm2015/wizard/providers/header-actions.service.js +0 -37
- package/esm2015/wizard/providers/page-collection.service.js +0 -358
- package/esm2015/wizard/providers/wizard-navigation.service.js +0 -575
- package/esm2015/wizard/wizard-button.js +0 -163
- package/esm2015/wizard/wizard-custom-tags.js +0 -12
- package/esm2015/wizard/wizard-header-action.js +0 -55
- package/esm2015/wizard/wizard-page-buttons.js +0 -18
- package/esm2015/wizard/wizard-page-header-actions.js +0 -18
- package/esm2015/wizard/wizard-page-navtitle.js +0 -18
- package/esm2015/wizard/wizard-page-title.js +0 -18
- package/esm2015/wizard/wizard-stepnav-item.js +0 -100
- package/esm2015/wizard/wizard-stepnav.js +0 -34
- package/esm2015/wizard/wizard.js +0 -438
- package/esm2015/wizard/wizard.module.js +0 -48
- package/fesm2015/clr-angular.js.map +0 -1
|
@@ -1,358 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Copyright (c) 2016-2021 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
|
-
import { Injectable } from '@angular/core';
|
|
7
|
-
import { Subject } from 'rxjs';
|
|
8
|
-
/**
|
|
9
|
-
* PageCollectionService manages the collection of pages assigned to the wizard and offers
|
|
10
|
-
* a number of functions useful across the wizards providers and subcomponents -- all related
|
|
11
|
-
* to essentially lookups on the collection of pages.
|
|
12
|
-
*
|
|
13
|
-
* The easiest way to access PageCollectionService is via the wizard. The
|
|
14
|
-
* following example would allow you to access your instance of the wizard from your host
|
|
15
|
-
* component and thereby access the page collection via YourHostComponent.wizard.pageCollection.
|
|
16
|
-
*
|
|
17
|
-
* @example
|
|
18
|
-
* <clr-wizard #wizard ...>
|
|
19
|
-
*
|
|
20
|
-
* @example
|
|
21
|
-
* export class YourHostComponent {
|
|
22
|
-
* @ViewChild("wizard") wizard: Wizard;
|
|
23
|
-
* ...
|
|
24
|
-
* }
|
|
25
|
-
*
|
|
26
|
-
* The heart of the page collection is the query list of pages, which it is assigned as a
|
|
27
|
-
* reference to the Wizard.pages QueryList when the wizard is created.
|
|
28
|
-
*
|
|
29
|
-
*/
|
|
30
|
-
export class PageCollectionService {
|
|
31
|
-
constructor() {
|
|
32
|
-
// used by the navService to navigate back to first possible step after
|
|
33
|
-
// pages are reset
|
|
34
|
-
/**
|
|
35
|
-
*
|
|
36
|
-
* @memberof PageCollectionService
|
|
37
|
-
*/
|
|
38
|
-
this._pagesReset = new Subject();
|
|
39
|
-
}
|
|
40
|
-
/**
|
|
41
|
-
* Converts the PageCollectionService.pages QueryList to an array and returns it.
|
|
42
|
-
*
|
|
43
|
-
* Useful for many instances when you would prefer a QueryList to act like an array.
|
|
44
|
-
*
|
|
45
|
-
* @memberof PageCollectionService
|
|
46
|
-
*/
|
|
47
|
-
get pagesAsArray() {
|
|
48
|
-
return this.pages ? this.pages.toArray() : [];
|
|
49
|
-
}
|
|
50
|
-
/**
|
|
51
|
-
* Returns the length of the pages query list.
|
|
52
|
-
*
|
|
53
|
-
* @memberof PageCollectionService
|
|
54
|
-
*/
|
|
55
|
-
get pagesCount() {
|
|
56
|
-
return this.pages ? this.pages.length : 0;
|
|
57
|
-
}
|
|
58
|
-
/**
|
|
59
|
-
* Returns the next-to-last page in the query list of pages. Operates as a getter
|
|
60
|
-
* so that it isn't working with stale data.
|
|
61
|
-
*
|
|
62
|
-
* @memberof PageCollectionService
|
|
63
|
-
*/
|
|
64
|
-
get penultimatePage() {
|
|
65
|
-
const pageCount = this.pagesCount;
|
|
66
|
-
if (pageCount < 2) {
|
|
67
|
-
return null;
|
|
68
|
-
}
|
|
69
|
-
return this.pagesAsArray[pageCount - 2];
|
|
70
|
-
}
|
|
71
|
-
/**
|
|
72
|
-
* Returns the last page in the query list of pages. Operates as a getter
|
|
73
|
-
* so that it isn't working with stale data.
|
|
74
|
-
*
|
|
75
|
-
* @memberof PageCollectionService
|
|
76
|
-
*/
|
|
77
|
-
get lastPage() {
|
|
78
|
-
const pageCount = this.pagesCount;
|
|
79
|
-
if (pageCount < 1) {
|
|
80
|
-
return null;
|
|
81
|
-
}
|
|
82
|
-
return this.pagesAsArray[pageCount - 1];
|
|
83
|
-
}
|
|
84
|
-
/**
|
|
85
|
-
* Returns the first page in the query list of pages. Operates as a getter
|
|
86
|
-
* so that it isn't working with stale data.
|
|
87
|
-
*
|
|
88
|
-
* @memberof PageCollectionService
|
|
89
|
-
*/
|
|
90
|
-
get firstPage() {
|
|
91
|
-
if (!this.pagesCount) {
|
|
92
|
-
return null;
|
|
93
|
-
}
|
|
94
|
-
return this.pagesAsArray[0];
|
|
95
|
-
}
|
|
96
|
-
/**
|
|
97
|
-
* Used mostly internally, but accepts a string ID and returns a ClrWizardPage
|
|
98
|
-
* object that matches the ID passed. Note that IDs here should include the prefix
|
|
99
|
-
* "clr-wizard-page-".
|
|
100
|
-
*
|
|
101
|
-
* Returns the next-to-last page in the query list of pages. Operates as a getter
|
|
102
|
-
* so that it isn't working with stale data.
|
|
103
|
-
*
|
|
104
|
-
* @memberof PageCollectionService
|
|
105
|
-
*/
|
|
106
|
-
getPageById(id) {
|
|
107
|
-
const foundPages = this.pages.filter((page) => id === page.id);
|
|
108
|
-
return this.checkResults(foundPages, id);
|
|
109
|
-
}
|
|
110
|
-
/**
|
|
111
|
-
* Accepts s number as a parameter and treats that number as the index of the page
|
|
112
|
-
* you're looking for in the collection of pages. Returns a wizard page object.
|
|
113
|
-
*
|
|
114
|
-
* @memberof PageCollectionService
|
|
115
|
-
*/
|
|
116
|
-
getPageByIndex(index) {
|
|
117
|
-
const pageCount = this.pagesCount;
|
|
118
|
-
const pagesLastIndex = pageCount > 1 ? pageCount - 1 : 0;
|
|
119
|
-
if (index < 0) {
|
|
120
|
-
throw new Error('Cannot retrieve page with index of ' + index);
|
|
121
|
-
}
|
|
122
|
-
if (index > pagesLastIndex) {
|
|
123
|
-
throw new Error('Page index is greater than length of pages array.');
|
|
124
|
-
}
|
|
125
|
-
return this.pagesAsArray[index];
|
|
126
|
-
}
|
|
127
|
-
/**
|
|
128
|
-
* Takes a wizard page object as a parameter and returns its index in the
|
|
129
|
-
* collection of pages.
|
|
130
|
-
*
|
|
131
|
-
* @memberof PageCollectionService
|
|
132
|
-
*/
|
|
133
|
-
getPageIndex(page) {
|
|
134
|
-
const index = this.pagesAsArray.indexOf(page);
|
|
135
|
-
if (index < 0) {
|
|
136
|
-
throw new Error('Requested page cannot be found in collection of pages.');
|
|
137
|
-
}
|
|
138
|
-
return index;
|
|
139
|
-
}
|
|
140
|
-
/**
|
|
141
|
-
* Consolidates guard logic that prevents a couple of unfortunate edge cases with
|
|
142
|
-
* look ups on the collection of pages.
|
|
143
|
-
*
|
|
144
|
-
* @memberof PageCollectionService
|
|
145
|
-
*/
|
|
146
|
-
checkResults(results, requestedPageId) {
|
|
147
|
-
const foundPagesCount = results.length || 0;
|
|
148
|
-
if (foundPagesCount > 1) {
|
|
149
|
-
throw new Error('More than one page has the requested id ' + requestedPageId + '.');
|
|
150
|
-
}
|
|
151
|
-
else if (foundPagesCount < 1) {
|
|
152
|
-
throw new Error('No page can be found with the id ' + requestedPageId + '.');
|
|
153
|
-
}
|
|
154
|
-
else {
|
|
155
|
-
return results[0];
|
|
156
|
-
}
|
|
157
|
-
}
|
|
158
|
-
/**
|
|
159
|
-
* Accepts two numeric indexes and returns an array of wizard page objects that include
|
|
160
|
-
* all wizard pages in the page collection from the first index to the second.
|
|
161
|
-
*
|
|
162
|
-
* @memberof PageCollectionService
|
|
163
|
-
*/
|
|
164
|
-
pageRange(start, end) {
|
|
165
|
-
let pages = [];
|
|
166
|
-
if (start < 0 || end < 0) {
|
|
167
|
-
return [];
|
|
168
|
-
}
|
|
169
|
-
if (start === null || typeof start === 'undefined' || isNaN(start)) {
|
|
170
|
-
return [];
|
|
171
|
-
}
|
|
172
|
-
if (end === null || typeof end === 'undefined' || isNaN(end)) {
|
|
173
|
-
return [];
|
|
174
|
-
}
|
|
175
|
-
if (end > this.pagesCount) {
|
|
176
|
-
end = this.pagesCount;
|
|
177
|
-
}
|
|
178
|
-
pages = this.pagesAsArray;
|
|
179
|
-
if (end - start === 0) {
|
|
180
|
-
// just return the one page they want
|
|
181
|
-
return [this.getPageByIndex(start)];
|
|
182
|
-
}
|
|
183
|
-
// slice end does not include item referenced by end index, which is weird for users
|
|
184
|
-
// incrementing end index here to correct that so users and other methods
|
|
185
|
-
// don't have to think about it
|
|
186
|
-
end = end + 1;
|
|
187
|
-
// slice does not return the last one in the range but it does include the first one
|
|
188
|
-
// does not modify original array
|
|
189
|
-
return pages.slice(start, end);
|
|
190
|
-
}
|
|
191
|
-
/**
|
|
192
|
-
* Accepts two wizard page objects and returns those page objects with all other page
|
|
193
|
-
* objects between them in the page collection. It doesn't care which page is ahead of the
|
|
194
|
-
* other in the parameters. It will be smart enough to figure that out on its own.
|
|
195
|
-
*
|
|
196
|
-
* @memberof PageCollectionService
|
|
197
|
-
*/
|
|
198
|
-
getPageRangeFromPages(page, otherPage) {
|
|
199
|
-
const pageIndex = this.getPageIndex(page);
|
|
200
|
-
const otherPageIndex = this.getPageIndex(otherPage);
|
|
201
|
-
let startIndex;
|
|
202
|
-
let endIndex;
|
|
203
|
-
if (pageIndex <= otherPageIndex) {
|
|
204
|
-
startIndex = pageIndex;
|
|
205
|
-
endIndex = otherPageIndex;
|
|
206
|
-
}
|
|
207
|
-
else {
|
|
208
|
-
startIndex = otherPageIndex;
|
|
209
|
-
endIndex = pageIndex;
|
|
210
|
-
}
|
|
211
|
-
return this.pageRange(startIndex, endIndex);
|
|
212
|
-
}
|
|
213
|
-
/**
|
|
214
|
-
* Takes a wizard page object as a parameter and returns the wizard page object of
|
|
215
|
-
* the page immediately before it in the page collection. Returns null if there is
|
|
216
|
-
* no page before the page it is passed.
|
|
217
|
-
*
|
|
218
|
-
* @memberof PageCollectionService
|
|
219
|
-
*/
|
|
220
|
-
getPreviousPage(page) {
|
|
221
|
-
const myPageIndex = this.getPageIndex(page);
|
|
222
|
-
const previousPageIndex = myPageIndex - 1;
|
|
223
|
-
if (previousPageIndex < 0) {
|
|
224
|
-
return null;
|
|
225
|
-
}
|
|
226
|
-
return this.getPageByIndex(previousPageIndex);
|
|
227
|
-
}
|
|
228
|
-
/**
|
|
229
|
-
* Accepts a wizard page object as a parameter and returns a Boolean that says if
|
|
230
|
-
* the page you sent it is complete.
|
|
231
|
-
*
|
|
232
|
-
* @memberof PageCollectionService
|
|
233
|
-
*/
|
|
234
|
-
previousPageIsCompleted(page) {
|
|
235
|
-
if (!page) {
|
|
236
|
-
return false;
|
|
237
|
-
}
|
|
238
|
-
const previousPage = this.getPreviousPage(page);
|
|
239
|
-
if (null === previousPage) {
|
|
240
|
-
// page is the first page. no previous page.
|
|
241
|
-
return true;
|
|
242
|
-
}
|
|
243
|
-
return previousPage.completed;
|
|
244
|
-
}
|
|
245
|
-
/**
|
|
246
|
-
* Takes a wizard page object as a parameter and returns the wizard page object of
|
|
247
|
-
* the page immediately after it in the page collection. Returns null if there is
|
|
248
|
-
* no page after the page it is passed.
|
|
249
|
-
*
|
|
250
|
-
* @memberof PageCollectionService
|
|
251
|
-
*/
|
|
252
|
-
getNextPage(page) {
|
|
253
|
-
const myPageIndex = this.getPageIndex(page);
|
|
254
|
-
const nextPageIndex = myPageIndex + 1;
|
|
255
|
-
if (nextPageIndex >= this.pagesAsArray.length) {
|
|
256
|
-
return null;
|
|
257
|
-
}
|
|
258
|
-
return this.getPageByIndex(nextPageIndex);
|
|
259
|
-
}
|
|
260
|
-
/**
|
|
261
|
-
* Takes a wizard page object as a parameter and generates a step item id from the
|
|
262
|
-
* page ID. Returns the generated step item ID as a string.
|
|
263
|
-
*
|
|
264
|
-
* @memberof PageCollectionService
|
|
265
|
-
*/
|
|
266
|
-
getStepItemIdForPage(page) {
|
|
267
|
-
const pageId = page.id;
|
|
268
|
-
const pageIdParts = pageId.split('-').reverse();
|
|
269
|
-
pageIdParts[1] = 'step';
|
|
270
|
-
return pageIdParts.reverse().join('-');
|
|
271
|
-
}
|
|
272
|
-
/**
|
|
273
|
-
* Generally only used internally to mark that a specific page has been "committed".
|
|
274
|
-
* This involves marking the page complete and firing the ClrWizardPage.onCommit
|
|
275
|
-
* (clrWizardPageOnCommit) output. Takes the wizard page object that you intend to
|
|
276
|
-
* mark completed as a parameter.
|
|
277
|
-
*
|
|
278
|
-
* @memberof PageCollectionService
|
|
279
|
-
*/
|
|
280
|
-
commitPage(page) {
|
|
281
|
-
const pageHasOverrides = page.stopNext || page.preventDefault;
|
|
282
|
-
page.completed = true;
|
|
283
|
-
if (!pageHasOverrides) {
|
|
284
|
-
// prevent loop of event emission; alternate flows work off
|
|
285
|
-
// of event emitters this is how they break that cycle.
|
|
286
|
-
page.onCommit.emit(page.id);
|
|
287
|
-
}
|
|
288
|
-
}
|
|
289
|
-
/**
|
|
290
|
-
* An observable that the navigation service listens to in order to know when
|
|
291
|
-
* the page collection completed states have been reset to false so that way it
|
|
292
|
-
* can also reset the navigation to make the first page in the page collection
|
|
293
|
-
* current/active.
|
|
294
|
-
*
|
|
295
|
-
* @memberof PageCollectionService
|
|
296
|
-
*/
|
|
297
|
-
get pagesReset() {
|
|
298
|
-
return this._pagesReset.asObservable();
|
|
299
|
-
}
|
|
300
|
-
/**
|
|
301
|
-
* Sets all completed states of the pages in the page collection to false and
|
|
302
|
-
* notifies the navigation service to likewise reset the navigation.
|
|
303
|
-
*
|
|
304
|
-
* @memberof PageCollectionService
|
|
305
|
-
*/
|
|
306
|
-
reset() {
|
|
307
|
-
this.pagesAsArray.forEach((page) => {
|
|
308
|
-
page.completed = false;
|
|
309
|
-
});
|
|
310
|
-
this._pagesReset.next(true);
|
|
311
|
-
}
|
|
312
|
-
/**
|
|
313
|
-
* Rolls through all the pages in the page collection to make sure there are no
|
|
314
|
-
* incomplete pages sandwiched between completed pages in the workflow. Identifies
|
|
315
|
-
* the first incomplete page index and sets all pages behind it to a completed
|
|
316
|
-
* state of false.
|
|
317
|
-
*
|
|
318
|
-
* @memberof PageCollectionService
|
|
319
|
-
*/
|
|
320
|
-
updateCompletedStates() {
|
|
321
|
-
const firstIncompleteIndex = this.findFirstIncompletePageIndex();
|
|
322
|
-
if (firstIncompleteIndex === this.pagesAsArray.length - 1) {
|
|
323
|
-
// all complete no need to do anything
|
|
324
|
-
return;
|
|
325
|
-
}
|
|
326
|
-
this.pagesAsArray.forEach((page, index) => {
|
|
327
|
-
if (index > firstIncompleteIndex) {
|
|
328
|
-
page.completed = false;
|
|
329
|
-
}
|
|
330
|
-
});
|
|
331
|
-
}
|
|
332
|
-
/**
|
|
333
|
-
* Retrieves the index of the first incomplete page in the page collection.
|
|
334
|
-
*
|
|
335
|
-
* @memberof PageCollectionService
|
|
336
|
-
*/
|
|
337
|
-
findFirstIncompletePageIndex() {
|
|
338
|
-
let returnIndex = null;
|
|
339
|
-
this.pagesAsArray.forEach((page, index) => {
|
|
340
|
-
if (null === returnIndex && false === page.completed) {
|
|
341
|
-
returnIndex = index;
|
|
342
|
-
}
|
|
343
|
-
});
|
|
344
|
-
// fallthrough, all completed, return last page
|
|
345
|
-
if (null === returnIndex) {
|
|
346
|
-
returnIndex = this.pagesCount - 1;
|
|
347
|
-
}
|
|
348
|
-
return returnIndex;
|
|
349
|
-
}
|
|
350
|
-
findFirstIncompletePage() {
|
|
351
|
-
const myIncompleteIndex = this.findFirstIncompletePageIndex();
|
|
352
|
-
return this.pagesAsArray[myIncompleteIndex];
|
|
353
|
-
}
|
|
354
|
-
}
|
|
355
|
-
PageCollectionService.decorators = [
|
|
356
|
-
{ type: Injectable }
|
|
357
|
-
];
|
|
358
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS1jb2xsZWN0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyL3NyYy93aXphcmQvcHJvdmlkZXJzL3BhZ2UtY29sbGVjdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7O0dBSUc7QUFFSCxPQUFPLEVBQUUsVUFBVSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBRXRELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFJL0I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXFCRztBQUVILE1BQU0sT0FBTyxxQkFBcUI7SUFEbEM7UUEyU0UsdUVBQXVFO1FBQ3ZFLGtCQUFrQjtRQUVsQjs7O1dBR0c7UUFDSyxnQkFBVyxHQUFHLElBQUksT0FBTyxFQUFXLENBQUM7SUEyRS9DLENBQUM7SUFsWEM7Ozs7OztPQU1HO0lBQ0gsSUFBVyxZQUFZO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ2hELENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsSUFBVyxVQUFVO1FBQ25CLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxJQUFXLGVBQWU7UUFDeEIsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQztRQUVsQyxJQUFJLFNBQVMsR0FBRyxDQUFDLEVBQUU7WUFDakIsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUVELE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVEOzs7OztPQUtHO0lB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QUU7WUFDL0QsSUFBSSxLQUFLLEdBQUcsb0JBQW9CLEVBQUU7Z0JBQ2hDLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO2FBQ3hCO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLDRCQUE0QjtRQUNqQyxJQUFJLFdBQVcsR0FBVyxJQUFJLENBQUM7UUFDL0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFtQixFQUFFLEtBQWEsRUFBRSxFQUFFO1lBQy9ELElBQUksSUFBSSxLQUFLLFdBQVcsSUFBSSxLQUFLLEtBQUssSUFBSSxDQUFDLFNBQVMsRUFBRTtnQkFDcEQsV0FBVyxHQUFHLEtBQUssQ0FBQzthQUNyQjtRQUNILENBQUMsQ0FBQyxDQUFDO1FBRUgsK0NBQStDO1FBQy9DLElBQUksSUFBSSxLQUFLLFdBQVcsRUFBRTtZQUN4QixXQUFXLEdBQUcsSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLENBQUM7U0FDbkM7UUFFRCxPQUFPLFdBQVcsQ0FBQztJQUNyQixDQUFDO0lBRU0sdUJBQXVCO1FBQzVCLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDLDRCQUE0QixFQUFFLENBQUM7UUFDOUQsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDOUMsQ0FBQzs7O1lBNVhGLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDE2LTIwMjEgVk13YXJlLCBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKiBUaGlzIHNvZnR3YXJlIGlzIHJlbGVhc2VkIHVuZGVyIE1JVCBsaWNlbnNlLlxuICogVGhlIGZ1bGwgbGljZW5zZSBpbmZvcm1hdGlvbiBjYW4gYmUgZm91bmQgaW4gTElDRU5TRSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBwcm9qZWN0LlxuICovXG5cbmltcG9ydCB7IEluamVjdGFibGUsIFF1ZXJ5TGlzdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBDbHJXaXphcmRQYWdlIH0gZnJvbSAnLi4vd2l6YXJkLXBhZ2UnO1xuXG4vKipcbiAqIFBhZ2VDb2xsZWN0aW9uU2VydmljZSBtYW5hZ2VzIHRoZSBjb2xsZWN0aW9uIG9mIHBhZ2VzIGFzc2lnbmVkIHRvIHRoZSB3aXphcmQgYW5kIG9mZmVyc1xuICogYSBudW1iZXIgb2YgZnVuY3Rpb25zIHVzZWZ1bCBhY3Jvc3MgdGhlIHdpemFyZHMgcHJvdmlkZXJzIGFuZCBzdWJjb21wb25lbnRzIC0tIGFsbCByZWxhdGVkXG4gKiB0byBlc3NlbnRpYWxseSBsb29rdXBzIG9uIHRoZSBjb2xsZWN0aW9uIG9mIHBhZ2VzLlxuICpcbiAqIFRoZSBlYXNpZXN0IHdheSB0byBhY2Nlc3MgUGFnZUNvbGxlY3Rpb25TZXJ2aWNlIGlzIHZpYSB0aGUgd2l6YXJkLiBUaGVcbiAqIGZvbGxvd2luZyBleGFtcGxlIHdvdWxkIGFsbG93IHlvdSB0byBhY2Nlc3MgeW91ciBpbnN0YW5jZSBvZiB0aGUgd2l6YXJkIGZyb20geW91ciBob3N0XG4gKiBjb21wb25lbnQgYW5kIHRoZXJlYnkgYWNjZXNzIHRoZSBwYWdlIGNvbGxlY3Rpb24gdmlhIFlvdXJIb3N0Q29tcG9uZW50LndpemFyZC5wYWdlQ29sbGVjdGlvbi5cbiAqXG4gKiBAZXhhbXBsZVxuICogPGNsci13aXphcmQgI3dpemFyZCAuLi4+XG4gKlxuICogQGV4YW1wbGVcbiAqIGV4cG9ydCBjbGFzcyBZb3VySG9zdENvbXBvbmVudCB7XG4gKiAgIEBWaWV3Q2hpbGQoXCJ3aXphcmRcIikgd2l6YXJkOiBXaXphcmQ7XG4gKiAgIC4uLlxuICogfVxuICpcbiAqIFRoZSBoZWFydCBvZiB0aGUgcGFnZSBjb2xsZWN0aW9uIGlzIHRoZSBxdWVyeSBsaXN0IG9mIHBhZ2VzLCB3aGljaCBpdCBpcyBhc3NpZ25lZCBhcyBhXG4gKiByZWZlcmVuY2UgdG8gdGhlIFdpemFyZC5wYWdlcyBRdWVyeUxpc3Qgd2hlbiB0aGUgd2l6YXJkIGlzIGNyZWF0ZWQuXG4gKlxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgUGFnZUNvbGxlY3Rpb25TZXJ2aWNlIHtcbiAgLyoqXG4gICAqIEEgcmVmZXJlbmNlIHRvIHRoZSBXaXphcmQucGFnZXMgUXVlcnlMaXN0LlxuICAgKlxuICAgKiBQb3B1bGF0ZWQgd2hlbiB0aGUgd2l6YXJkIGlzIGNyZWF0ZWQuXG4gICAqXG4gICAqIEBtZW1iZXJvZiBQYWdlQ29sbGVjdGlvblNlcnZpY2VcbiAgICovXG4gIHB1YmxpYyBwYWdlczogUXVlcnlMaXN0PENscldpemFyZFBhZ2U+O1xuXG4gIC8qKlxuICAgKiBDb252ZXJ0cyB0aGUgUGFnZUNvbGxlY3Rpb25TZXJ2aWNlLnBhZ2VzIFF1ZXJ5TGlzdCB0byBhbiBhcnJheSBhbmQgcmV0dXJucyBpdC5cbiAgICpcbiAgICogVXNlZnVsIGZvciBtYW55IGluc3RhbmNlcyB3aGVuIHlvdSB3b3VsZCBwcmVmZXIgYSBRdWVyeUxpc3QgdG8gYWN0IGxpa2UgYW4gYXJyYXkuXG4gICAqXG4gICAqIEBtZW1iZXJvZiBQYWdlQ29sbGVjdGlvblNlcnZpY2VcbiAgICovXG4gIHB1YmxpYyBnZXQgcGFnZXNBc0FycmF5KCk6IENscldpemFyZFBhZ2VbXSB7XG4gICAgcmV0dXJuIHRoaXMucGFnZXMgPyB0aGlzLnBhZ2VzLnRvQXJyYXkoKSA6IFtdO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGxlbmd0aCBvZiB0aGUgcGFnZXMgcXVlcnkgbGlzdC5cbiAgICpcbiAgICogQG1lbWJlcm9mIFBhZ2VDb2xsZWN0aW9uU2VydmljZVxuICAgKi9cbiAgcHVibGljIGdldCBwYWdlc0NvdW50KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMucGFnZXMgPyB0aGlzLnBhZ2VzLmxlbmd0aCA6IDA7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgbmV4dC10by1sYXN0IHBhZ2UgaW4gdGhlIHF1ZXJ5IGxpc3Qgb2YgcGFnZXMuIE9wZXJhdGVzIGFzIGEgZ2V0dGVyXG4gICAqIHNvIHRoYXQgaXQgaXNuJ3Qgd29ya2luZyB3aXRoIHN0YWxlIGRhdGEuXG4gICAqXG4gICAqIEBtZW1iZXJvZiBQYWdlQ29sbGVjdGlvblNlcnZpY2VcbiAgICovXG4gIHB1YmxpYyBnZXQgcGVudWx0aW1hdGVQYWdlKCk6IENscldpemFyZFBhZ2Uge1xuICAgIGNvbnN0IHBhZ2VDb3VudCA9IHRoaXMucGFnZXNDb3VudDtcblxuICAgIGlmIChwYWdlQ291bnQgPCAyKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5wYWdlc0FzQXJyYXlbcGFnZUNvdW50IC0gMl07XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgbGFzdCBwYWdlIGluIHRoZSBxdWVyeSBsaXN0IG9mIHBhZ2VzLiBPcGVyYXRlcyBhcyBhIGdldHRlclxuICAgKiBzbyB0aGF0IGl0IGlzbid0IHdvcmtpbmcgd2l0aCBzdGFsZSBkYXRhLlxuICAgKlxuICAgKiBAbWVtYmVyb2YgUGFnZUNvbGxlY3Rpb25TZXJ2aWNlXG4gICAqL1xuICBwdWJsaWMgZ2V0IGxhc3RQYWdlKCk6IENscldpemFyZFBhZ2Uge1xuICAgIGNvbnN0IHBhZ2VDb3VudCA9IHRoaXMucGFnZXNDb3VudDtcblxuICAgIGlmIChwYWdlQ291bnQgPCAxKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5wYWdlc0FzQXJyYXlbcGFnZUNvdW50IC0gMV07XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgZmlyc3QgcGFnZSBpbiB0aGUgcXVlcnkgbGlzdCBvZiBwYWdlcy4gT3BlcmF0ZXMgYXMgYSBnZXR0ZXJcbiAgICogc28gdGhhdCBpdCBpc24ndCB3b3JraW5nIHdpdGggc3RhbGUgZGF0YS5cbiAgICpcbiAgICogQG1lbWJlcm9mIFBhZ2VDb2xsZWN0aW9uU2VydmljZVxuICAgKi9cbiAgcHVibGljIGdldCBmaXJzdFBhZ2UoKTogQ2xyV2l6YXJkUGFnZSB7XG4gICAgaWYgKCF0aGlzLnBhZ2VzQ291bnQpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLnBhZ2VzQXNBcnJheVswXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVc2VkIG1vc3RseSBpbnRlcm5hbGx5LCBidXQgYWNjZXB0cyBhIHN0cmluZyBJRCBhbmQgcmV0dXJucyBhIENscldpemFyZFBhZ2VcbiAgICogb2JqZWN0IHRoYXQgbWF0Y2hlcyB0aGUgSUQgcGFzc2VkLiBOb3RlIHRoYXQgSURzIGhlcmUgc2hvdWxkIGluY2x1ZGUgdGhlIHByZWZpeFxuICAgKiBcImNsci13aXphcmQtcGFnZS1cIi5cbiAgICpcbiAgICogUmV0dXJucyB0aGUgbmV4dC10by1sYXN0IHBhZ2UgaW4gdGhlIHF1ZXJ5IGxpc3Qgb2YgcGFnZXMuIE9wZXJhdGVzIGFzIGEgZ2V0dGVyXG4gICAqIHNvIHRoYXQgaXQgaXNuJ3Qgd29ya2luZyB3aXRoIHN0YWxlIGRhdGEuXG4gICAqXG4gICAqIEBtZW1iZXJvZiBQYWdlQ29sbGVjdGlvblNlcnZpY2VcbiAgICovXG4gIHB1YmxpYyBnZXRQYWdlQnlJZChpZDogc3RyaW5nKTogQ2xyV2l6YXJkUGFnZSB7XG4gICAgY29uc3QgZm91bmRQYWdlczogQ2xyV2l6YXJkUGFnZVtdID0gdGhpcy5wYWdlcy5maWx0ZXIoKHBhZ2U6IENscldpemFyZFBhZ2UpID0+IGlkID09PSBwYWdlLmlkKTtcbiAgICByZXR1cm4gdGhpcy5jaGVja1Jlc3VsdHMoZm91bmRQYWdlcywgaWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFjY2VwdHMgcyBudW1iZXIgYXMgYSBwYXJhbWV0ZXIgYW5kIHRyZWF0cyB0aGF0IG51bWJlciBhcyB0aGUgaW5kZXggb2YgdGhlIHBhZ2VcbiAgICogeW91J3JlIGxvb2tpbmcgZm9yIGluIHRoZSBjb2xsZWN0aW9uIG9mIHBhZ2VzLiBSZXR1cm5zIGEgIHdpemFyZCBwYWdlIG9iamVjdC5cbiAgICpcbiAgICogQG1lbWJlcm9mIFBhZ2VDb2xsZWN0aW9uU2VydmljZVxuICAgKi9cbiAgcHVibGljIGdldFBhZ2VCeUluZGV4KGluZGV4OiBudW1iZXIpOiBDbHJXaXphcmRQYWdlIHtcbiAgICBjb25zdCBwYWdlQ291bnQgPSB0aGlzLnBhZ2VzQ291bnQ7XG4gICAgY29uc3QgcGFnZXNMYXN0SW5kZXg6IG51bWJlciA9IHBhZ2VDb3VudCA+IDEgPyBwYWdlQ291bnQgLSAxIDogMDtcblxuICAgIGlmIChpbmRleCA8IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignQ2Fubm90IHJldHJpZXZlIHBhZ2Ugd2l0aCBpbmRleCBvZiAnICsgaW5kZXgpO1xuICAgIH1cblxuICAgIGlmIChpbmRleCA+IHBhZ2VzTGFzdEluZGV4KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1BhZ2UgaW5kZXggaXMgZ3JlYXRlciB0aGFuIGxlbmd0aCBvZiBwYWdlcyBhcnJheS4nKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5wYWdlc0FzQXJyYXlbaW5kZXhdO1xuICB9XG5cbiAgLyoqXG4gICAqIFRha2VzIGEgd2l6YXJkIHBhZ2Ugb2JqZWN0IGFzIGEgcGFyYW1ldGVyIGFuZCByZXR1cm5zIGl0cyBpbmRleCBpbiB0aGVcbiAgICogY29sbGVjdGlvbiBvZiBwYWdlcy5cbiAgICpcbiAgICogQG1lbWJlcm9mIFBhZ2VDb2xsZWN0aW9uU2VydmljZVxuICAgKi9cbiAgcHVibGljIGdldFBhZ2VJbmRleChwYWdlOiBDbHJXaXphcmRQYWdlKTogbnVtYmVyIHtcbiAgICBjb25zdCBpbmRleCA9IHRoaXMucGFnZXNBc0FycmF5LmluZGV4T2YocGFnZSk7XG5cbiAgICBpZiAoaW5kZXggPCAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1JlcXVlc3RlZCBwYWdlIGNhbm5vdCBiZSBmb3VuZCBpbiBjb2xsZWN0aW9uIG9mIHBhZ2VzLicpO1xuICAgIH1cblxuICAgIHJldHVybiBpbmRleDtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb25zb2xpZGF0ZXMgZ3VhcmQgbG9naWMgdGhhdCBwcmV2ZW50cyBhIGNvdXBsZSBvZiB1bmZvcnR1bmF0ZSBlZGdlIGNhc2VzIHdpdGhcbiAgICogbG9vayB1cHMgb24gdGhlIGNvbGxlY3Rpb24gb2YgcGFnZXMuXG4gICAqXG4gICAqIEBtZW1iZXJvZiBQYWdlQ29sbGVjdGlvblNlcnZpY2VcbiAgICovXG4gIHByaXZhdGUgY2hlY2tSZXN1bHRzKHJlc3VsdHM6IENscldpemFyZFBhZ2VbXSwgcmVxdWVzdGVkUGFnZUlkOiBzdHJpbmcpIHtcbiAgICBjb25zdCBmb3VuZFBhZ2VzQ291bnQ6IG51bWJlciA9IHJlc3VsdHMubGVuZ3RoIHx8IDA7XG5cbiAgICBpZiAoZm91bmRQYWdlc0NvdW50ID4gMSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdNb3JlIHRoYW4gb25lIHBhZ2UgaGFzIHRoZSByZXF1ZXN0ZWQgaWQgJyArIHJlcXVlc3RlZFBhZ2VJZCArICcuJyk7XG4gICAgfSBlbHNlIGlmIChmb3VuZFBhZ2VzQ291bnQgPCAxKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIHBhZ2UgY2FuIGJlIGZvdW5kIHdpdGggdGhlIGlkICcgKyByZXF1ZXN0ZWRQYWdlSWQgKyAnLicpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gcmVzdWx0c1swXTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQWNjZXB0cyB0d28gbnVtZXJpYyBpbmRleGVzIGFuZCByZXR1cm5zIGFuIGFycmF5IG9mIHdpemFyZCBwYWdlIG9iamVjdHMgdGhhdCBpbmNsdWRlXG4gICAqIGFsbCB3aXphcmQgcGFnZXMgaW4gdGhlIHBhZ2UgY29sbGVjdGlvbiBmcm9tIHRoZSBmaXJzdCBpbmRleCB0byB0aGUgc2Vjb25kLlxuICAgKlxuICAgKiBAbWVtYmVyb2YgUGFnZUNvbGxlY3Rpb25TZXJ2aWNlXG4gICAqL1xuICBwdWJsaWMgcGFnZVJhbmdlKHN0YXJ0OiBudW1iZXIsIGVuZDogbnVtYmVyKTogQ2xyV2l6YXJkUGFnZVtdIHtcbiAgICBsZXQgcGFnZXM6IENscldpemFyZFBhZ2VbXSA9IFtdO1xuXG4gICAgaWYgKHN0YXJ0IDwgMCB8fCBlbmQgPCAwKSB7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuXG4gICAgaWYgKHN0YXJ0ID09PSBudWxsIHx8IHR5cGVvZiBzdGFydCA9PT0gJ3VuZGVmaW5lZCcgfHwgaXNOYU4oc3RhcnQpKSB7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuXG4gICAgaWYgKGVuZCA9PT0gbnVsbCB8fCB0eXBlb2YgZW5kID09PSAndW5kZWZpbmVkJyB8fCBpc05hTihlbmQpKSB7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuXG4gICAgaWYgKGVuZCA+IHRoaXMucGFnZXNDb3VudCkge1xuICAgICAgZW5kID0gdGhpcy5wYWdlc0NvdW50O1xuICAgIH1cblxuICAgIHBhZ2VzID0gdGhpcy5wYWdlc0FzQXJyYXk7XG5cbiAgICBpZiAoZW5kIC0gc3RhcnQgPT09IDApIHtcbiAgICAgIC8vIGp1c3QgcmV0dXJuIHRoZSBvbmUgcGFnZSB0aGV5IHdhbnRcbiAgICAgIHJldHVybiBbdGhpcy5nZXRQYWdlQnlJbmRleChzdGFydCldO1xuICAgIH1cblxuICAgIC8vIHNsaWNlIGVuZCBkb2VzIG5vdCBpbmNsdWRlIGl0ZW0gcmVmZXJlbmNlZCBieSBlbmQgaW5kZXgsIHdoaWNoIGlzIHdlaXJkIGZvciB1c2Vyc1xuICAgIC8vIGluY3JlbWVudGluZyBlbmQgaW5kZXggaGVyZSB0byBjb3JyZWN0IHRoYXQgc28gdXNlcnMgYW5kIG90aGVyIG1ldGhvZHNcbiAgICAvLyBkb24ndCBoYXZlIHRvIHRoaW5rIGFib3V0IGl0XG4gICAgZW5kID0gZW5kICsgMTtcblxuICAgIC8vIHNsaWNlIGRvZXMgbm90IHJldHVybiB0aGUgbGFzdCBvbmUgaW4gdGhlIHJhbmdlIGJ1dCBpdCBkb2VzIGluY2x1ZGUgdGhlIGZpcnN0IG9uZVxuICAgIC8vIGRvZXMgbm90IG1vZGlmeSBvcmlnaW5hbCBhcnJheVxuICAgIHJldHVybiBwYWdlcy5zbGljZShzdGFydCwgZW5kKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBY2NlcHRzIHR3byB3aXphcmQgcGFnZSBvYmplY3RzIGFuZCByZXR1cm5zIHRob3NlIHBhZ2Ugb2JqZWN0cyB3aXRoIGFsbCBvdGhlciBwYWdlXG4gICAqIG9iamVjdHMgYmV0d2VlbiB0aGVtIGluIHRoZSBwYWdlIGNvbGxlY3Rpb24uIEl0IGRvZXNuJ3QgY2FyZSB3aGljaCBwYWdlIGlzIGFoZWFkIG9mIHRoZVxuICAgKiBvdGhlciBpbiB0aGUgcGFyYW1ldGVycy4gSXQgd2lsbCBiZSBzbWFydCBlbm91Z2ggdG8gZmlndXJlIHRoYXQgb3V0ICBvbiBpdHMgb3duLlxuICAgKlxuICAgKiBAbWVtYmVyb2YgUGFnZUNvbGxlY3Rpb25TZXJ2aWNlXG4gICAqL1xuICBwdWJsaWMgZ2V0UGFnZVJhbmdlRnJvbVBhZ2VzKHBhZ2U6IENscldpemFyZFBhZ2UsIG90aGVyUGFnZTogQ2xyV2l6YXJkUGFnZSk6IENscldpemFyZFBhZ2VbXSB7XG4gICAgY29uc3QgcGFnZUluZGV4ID0gdGhpcy5nZXRQYWdlSW5kZXgocGFnZSk7XG4gICAgY29uc3Qgb3RoZXJQYWdlSW5kZXggPSB0aGlzLmdldFBhZ2VJbmRleChvdGhlclBhZ2UpO1xuICAgIGxldCBzdGFydEluZGV4OiBudW1iZXI7XG4gICAgbGV0IGVuZEluZGV4OiBudW1iZXI7XG5cbiAgICBpZiAocGFnZUluZGV4IDw9IG90aGVyUGFnZUluZGV4KSB7XG4gICAgICBzdGFydEluZGV4ID0gcGFnZUluZGV4O1xuICAgICAgZW5kSW5kZXggPSBvdGhlclBhZ2VJbmRleDtcbiAgICB9IGVsc2Uge1xuICAgICAgc3RhcnRJbmRleCA9IG90aGVyUGFnZUluZGV4O1xuICAgICAgZW5kSW5kZXggPSBwYWdlSW5kZXg7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLnBhZ2VSYW5nZShzdGFydEluZGV4LCBlbmRJbmRleCk7XG4gIH1cblxuICAvKipcbiAgICogVGFrZXMgYSB3aXphcmQgcGFnZSBvYmplY3QgYXMgYSBwYXJhbWV0ZXIgYW5kIHJldHVybnMgdGhlIHdpemFyZCBwYWdlIG9iamVjdCBvZlxuICAgKiB0aGUgcGFnZSBpbW1lZGlhdGVseSBiZWZvcmUgaXQgaW4gdGhlIHBhZ2UgY29sbGVjdGlvbi4gUmV0dXJucyBudWxsIGlmIHRoZXJlIGlzXG4gICAqIG5vIHBhZ2UgYmVmb3JlIHRoZSBwYWdlIGl0IGlzIHBhc3NlZC5cbiAgICpcbiAgICogQG1lbWJlcm9mIFBhZ2VDb2xsZWN0aW9uU2VydmljZVxuICAgKi9cbiAgcHVibGljIGdldFByZXZpb3VzUGFnZShwYWdlOiBDbHJXaXphcmRQYWdlKSB7XG4gICAgY29uc3QgbXlQYWdlSW5kZXggPSB0aGlzLmdldFBhZ2VJbmRleChwYWdlKTtcbiAgICBjb25zdCBwcmV2aW91c1BhZ2VJbmRleCA9IG15UGFnZUluZGV4IC0gMTtcbiAgICBpZiAocHJldmlvdXNQYWdlSW5kZXggPCAwKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuZ2V0UGFnZUJ5SW5kZXgocHJldmlvdXNQYWdlSW5kZXgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFjY2VwdHMgYSB3aXphcmQgcGFnZSBvYmplY3QgYXMgYSBwYXJhbWV0ZXIgYW5kIHJldHVybnMgYSBCb29sZWFuIHRoYXQgc2F5cyBpZlxuICAgKiB0aGUgcGFnZSB5b3Ugc2VudCBpdCBpcyBjb21wbGV0ZS5cbiAgICpcbiAgICogQG1lbWJlcm9mIFBhZ2VDb2xsZWN0aW9uU2VydmljZVxuICAgKi9cbiAgcHVibGljIHByZXZpb3VzUGFnZUlzQ29tcGxldGVkKHBhZ2U6IENscldpemFyZFBhZ2UpIHtcbiAgICBpZiAoIXBhZ2UpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBjb25zdCBwcmV2aW91c1BhZ2UgPSB0aGlzLmdldFByZXZpb3VzUGFnZShwYWdlKTtcblxuICAgIGlmIChudWxsID09PSBwcmV2aW91c1BhZ2UpIHtcbiAgICAgIC8vIHBhZ2UgaXMgdGhlIGZpcnN0IHBhZ2UuIG5vIHByZXZpb3VzIHBhZ2UuXG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICByZXR1cm4gcHJldmlvdXNQYWdlLmNvbXBsZXRlZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBUYWtlcyBhIHdpemFyZCBwYWdlIG9iamVjdCBhcyBhIHBhcmFtZXRlciBhbmQgcmV0dXJucyB0aGUgd2l6YXJkIHBhZ2Ugb2JqZWN0IG9mXG4gICAqIHRoZSBwYWdlIGltbWVkaWF0ZWx5IGFmdGVyIGl0IGluIHRoZSBwYWdlIGNvbGxlY3Rpb24uIFJldHVybnMgbnVsbCBpZiB0aGVyZSBpc1xuICAgKiBubyBwYWdlIGFmdGVyIHRoZSBwYWdlIGl0IGlzIHBhc3NlZC5cbiAgICpcbiAgICogQG1lbWJlcm9mIFBhZ2VDb2xsZWN0aW9uU2VydmljZVxuICAgKi9cbiAgcHVibGljIGdldE5leHRQYWdlKHBhZ2U6IENscldpemFyZFBhZ2UpIHtcbiAgICBjb25zdCBteVBhZ2VJbmRleCA9IHRoaXMuZ2V0UGFnZUluZGV4KHBhZ2UpO1xuICAgIGNvbnN0IG5leHRQYWdlSW5kZXggPSBteVBhZ2VJbmRleCArIDE7XG5cbiAgICBpZiAobmV4dFBhZ2VJbmRleCA+PSB0aGlzLnBhZ2VzQXNBcnJheS5sZW5ndGgpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5nZXRQYWdlQnlJbmRleChuZXh0UGFnZUluZGV4KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUYWtlcyBhIHdpemFyZCBwYWdlIG9iamVjdCBhcyBhIHBhcmFtZXRlciBhbmQgZ2VuZXJhdGVzIGEgc3RlcCBpdGVtIGlkIGZyb20gdGhlXG4gICAqIHBhZ2UgSUQuIFJldHVybnMgdGhlIGdlbmVyYXRlZCBzdGVwIGl0ZW0gSUQgYXMgYSBzdHJpbmcuXG4gICAqXG4gICAqIEBtZW1iZXJvZiBQYWdlQ29sbGVjdGlvblNlcnZpY2VcbiAgICovXG4gIHB1YmxpYyBnZXRTdGVwSXRlbUlkRm9yUGFnZShwYWdlOiBDbHJXaXphcmRQYWdlKSB7XG4gICAgY29uc3QgcGFnZUlkID0gcGFnZS5pZDtcbiAgICBjb25zdCBwYWdlSWRQYXJ0cyA9IHBhZ2VJZC5zcGxpdCgnLScpLnJldmVyc2UoKTtcblxuICAgIHBhZ2VJZFBhcnRzWzFdID0gJ3N0ZXAnO1xuICAgIHJldHVybiBwYWdlSWRQYXJ0cy5yZXZlcnNlKCkuam9pbignLScpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdlbmVyYWxseSBvbmx5IHVzZWQgaW50ZXJuYWxseSB0byBtYXJrIHRoYXQgYSBzcGVjaWZpYyBwYWdlIGhhcyBiZWVuIFwiY29tbWl0dGVkXCIuXG4gICAqIFRoaXMgaW52b2x2ZXMgbWFya2luZyB0aGUgcGFnZSBjb21wbGV0ZSBhbmQgZmlyaW5nIHRoZSBDbHJXaXphcmRQYWdlLm9uQ29tbWl0XG4gICAqIChjbHJXaXphcmRQYWdlT25Db21taXQpIG91dHB1dC4gVGFrZXMgdGhlIHdpemFyZCBwYWdlIG9iamVjdCB0aGF0IHlvdSBpbnRlbmQgdG9cbiAgICogbWFyayBjb21wbGV0ZWQgYXMgYSBwYXJhbWV0ZXIuXG4gICAqXG4gICAqIEBtZW1iZXJvZiBQYWdlQ29sbGVjdGlvblNlcnZpY2VcbiAgICovXG4gIHB1YmxpYyBjb21taXRQYWdlKHBhZ2U6IENscldpemFyZFBhZ2UpIHtcbiAgICBjb25zdCBwYWdlSGFzT3ZlcnJpZGVzID0gcGFnZS5zdG9wTmV4dCB8fCBwYWdlLnByZXZlbnREZWZhdWx0O1xuICAgIHBhZ2UuY29tcGxldGVkID0gdHJ1ZTtcblxuICAgIGlmICghcGFnZUhhc092ZXJyaWRlcykge1xuICAgICAgLy8gcHJldmVudCBsb29wIG9mIGV2ZW50IGVtaXNzaW9uOyBhbHRlcm5hdGUgZmxvd3Mgd29yayBvZmZcbiAgICAgIC8vIG9mIGV2ZW50IGVtaXR0ZXJzIHRoaXMgaXMgaG93IHRoZXkgYnJlYWsgdGhhdCBjeWNsZS5cbiAgICAgIHBhZ2Uub25Db21taXQuZW1pdChwYWdlLmlkKTtcbiAgICB9XG4gIH1cblxuICAvLyB1c2VkIGJ5IHRoZSBuYXZTZXJ2aWNlIHRvIG5hdmlnYXRlIGJhY2sgdG8gZmlyc3QgcG9zc2libGUgc3RlcCBhZnRlclxuICAvLyBwYWdlcyBhcmUgcmVzZXRcblxuICAvKipcbiAgICpcbiAgICogQG1lbWJlcm9mIFBhZ2VDb2xsZWN0aW9uU2VydmljZVxuICAgKi9cbiAgcHJpdmF0ZSBfcGFnZXNSZXNldCA9IG5ldyBTdWJqZWN0PGJvb2xlYW4+KCk7XG5cbiAgLyoqXG4gICAqIEFuIG9ic2VydmFibGUgdGhhdCB0aGUgbmF2aWdhdGlvbiBzZXJ2aWNlIGxpc3RlbnMgdG8gaW4gb3JkZXIgdG8ga25vdyB3aGVuXG4gICAqIHRoZSBwYWdlIGNvbGxlY3Rpb24gY29tcGxldGVkIHN0YXRlcyBoYXZlIGJlZW4gcmVzZXQgdG8gZmFsc2Ugc28gdGhhdCB3YXkgaXRcbiAgICogY2FuIGFsc28gcmVzZXQgdGhlIG5hdmlnYXRpb24gdG8gbWFrZSB0aGUgZmlyc3QgcGFnZSBpbiB0aGUgcGFnZSBjb2xsZWN0aW9uXG4gICAqIGN1cnJlbnQvYWN0aXZlLlxuICAgKlxuICAgKiBAbWVtYmVyb2YgUGFnZUNvbGxlY3Rpb25TZXJ2aWNlXG4gICAqL1xuICBwdWJsaWMgZ2V0IHBhZ2VzUmVzZXQoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMuX3BhZ2VzUmVzZXQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyBhbGwgY29tcGxldGVkIHN0YXRlcyBvZiB0aGUgcGFnZXMgaW4gdGhlIHBhZ2UgY29sbGVjdGlvbiB0byBmYWxzZSBhbmRcbiAgICogbm90aWZpZXMgdGhlIG5hdmlnYXRpb24gc2VydmljZSB0byBsaWtld2lzZSByZXNldCB0aGUgbmF2aWdhdGlvbi5cbiAgICpcbiAgICogQG1lbWJlcm9mIFBhZ2VDb2xsZWN0aW9uU2VydmljZVxuICAgKi9cbiAgcHVibGljIHJlc2V0KCkge1xuICAgIHRoaXMucGFnZXNBc0FycmF5LmZvckVhY2goKHBhZ2U6IENscldpemFyZFBhZ2UpID0+IHtcbiAgICAgIHBhZ2UuY29tcGxldGVkID0gZmFsc2U7XG4gICAgfSk7XG4gICAgdGhpcy5fcGFnZXNSZXNldC5uZXh0KHRydWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJvbGxzIHRocm91Z2ggYWxsIHRoZSBwYWdlcyBpbiB0aGUgcGFnZSBjb2xsZWN0aW9uIHRvIG1ha2Ugc3VyZSB0aGVyZSBhcmUgbm9cbiAgICogaW5jb21wbGV0ZSBwYWdlcyBzYW5kd2ljaGVkIGJldHdlZW4gY29tcGxldGVkIHBhZ2VzIGluIHRoZSB3b3JrZmxvdy4gSWRlbnRpZmllc1xuICAgKiB0aGUgZmlyc3QgaW5jb21wbGV0ZSBwYWdlIGluZGV4IGFuZCBzZXRzIGFsbCBwYWdlcyBiZWhpbmQgaXQgdG8gYSBjb21wbGV0ZWRcbiAgICogc3RhdGUgb2YgZmFsc2UuXG4gICAqXG4gICAqIEBtZW1iZXJvZiBQYWdlQ29sbGVjdGlvblNlcnZpY2VcbiAgICovXG4gIHB1YmxpYyB1cGRhdGVDb21wbGV0ZWRTdGF0ZXMoKTogdm9pZCB7XG4gICAgY29uc3QgZmlyc3RJbmNvbXBsZXRlSW5kZXggPSB0aGlzLmZpbmRGaXJzdEluY29tcGxldGVQYWdlSW5kZXgoKTtcblxuICAgIGlmIChmaXJzdEluY29tcGxldGVJbmRleCA9PT0gdGhpcy5wYWdlc0FzQXJyYXkubGVuZ3RoIC0gMSkge1xuICAgICAgLy8gYWxsIGNvbXBsZXRlIG5vIG5lZWQgdG8gZG8gYW55dGhpbmdcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLnBhZ2VzQXNBcnJheS5mb3JFYWNoKChwYWdlOiBDbHJXaXphcmRQYWdlLCBpbmRleDogbnVtYmVyKSA9PiB7XG4gICAgICBpZiAoaW5kZXggPiBmaXJzdEluY29tcGxldGVJbmRleCkge1xuICAgICAgICBwYWdlLmNvbXBsZXRlZCA9IGZhbHNlO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHJpZXZlcyB0aGUgaW5kZXggb2YgdGhlIGZpcnN0IGluY29tcGxldGUgcGFnZSBpbiB0aGUgcGFnZSBjb2xsZWN0aW9uLlxuICAgKlxuICAgKiBAbWVtYmVyb2YgUGFnZUNvbGxlY3Rpb25TZXJ2aWNlXG4gICAqL1xuICBwdWJsaWMgZmluZEZpcnN0SW5jb21wbGV0ZVBhZ2VJbmRleCgpOiBudW1iZXIge1xuICAgIGxldCByZXR1cm5JbmRleDogbnVtYmVyID0gbnVsbDtcbiAgICB0aGlzLnBhZ2VzQXNBcnJheS5mb3JFYWNoKChwYWdlOiBDbHJXaXphcmRQYWdlLCBpbmRleDogbnVtYmVyKSA9PiB7XG4gICAgICBpZiAobnVsbCA9PT0gcmV0dXJuSW5kZXggJiYgZmFsc2UgPT09IHBhZ2UuY29tcGxldGVkKSB7XG4gICAgICAgIHJldHVybkluZGV4ID0gaW5kZXg7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICAvLyBmYWxsdGhyb3VnaCwgYWxsIGNvbXBsZXRlZCwgcmV0dXJuIGxhc3QgcGFnZVxuICAgIGlmIChudWxsID09PSByZXR1cm5JbmRleCkge1xuICAgICAgcmV0dXJuSW5kZXggPSB0aGlzLnBhZ2VzQ291bnQgLSAxO1xuICAgIH1cblxuICAgIHJldHVybiByZXR1cm5JbmRleDtcbiAgfVxuXG4gIHB1YmxpYyBmaW5kRmlyc3RJbmNvbXBsZXRlUGFnZSgpOiBDbHJXaXphcmRQYWdlIHtcbiAgICBjb25zdCBteUluY29tcGxldGVJbmRleCA9IHRoaXMuZmluZEZpcnN0SW5jb21wbGV0ZVBhZ2VJbmRleCgpO1xuICAgIHJldHVybiB0aGlzLnBhZ2VzQXNBcnJheVtteUluY29tcGxldGVJbmRleF07XG4gIH1cbn1cbiJdfQ==
|