@clr/angular 17.12.2 → 18.0.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -5
- package/fesm2022/clr-angular-accordion.mjs +355 -0
- package/fesm2022/clr-angular-accordion.mjs.map +1 -0
- package/fesm2022/clr-angular-button.mjs +713 -0
- package/fesm2022/clr-angular-button.mjs.map +1 -0
- package/fesm2022/clr-angular-collapsible-panel.mjs +201 -0
- package/fesm2022/clr-angular-collapsible-panel.mjs.map +1 -0
- package/fesm2022/clr-angular-data-datagrid.mjs +7601 -0
- package/fesm2022/clr-angular-data-datagrid.mjs.map +1 -0
- package/fesm2022/clr-angular-data-stack-view.mjs +442 -0
- package/fesm2022/clr-angular-data-stack-view.mjs.map +1 -0
- package/fesm2022/clr-angular-data-tree-view.mjs +1106 -0
- package/fesm2022/clr-angular-data-tree-view.mjs.map +1 -0
- package/fesm2022/clr-angular-data.mjs +9145 -0
- package/fesm2022/clr-angular-data.mjs.map +1 -0
- package/fesm2022/clr-angular-emphasis-alert.mjs +624 -0
- package/fesm2022/clr-angular-emphasis-alert.mjs.map +1 -0
- package/fesm2022/clr-angular-emphasis-badge.mjs +69 -0
- package/fesm2022/clr-angular-emphasis-badge.mjs.map +1 -0
- package/fesm2022/clr-angular-emphasis-common.mjs +25 -0
- package/fesm2022/clr-angular-emphasis-common.mjs.map +1 -0
- package/fesm2022/clr-angular-emphasis-label.mjs +105 -0
- package/fesm2022/clr-angular-emphasis-label.mjs.map +1 -0
- package/fesm2022/clr-angular-emphasis.mjs +807 -0
- package/fesm2022/clr-angular-emphasis.mjs.map +1 -0
- package/fesm2022/clr-angular-forms-checkbox.mjs +301 -0
- package/fesm2022/clr-angular-forms-checkbox.mjs.map +1 -0
- package/fesm2022/clr-angular-forms-combobox.mjs +1445 -0
- package/fesm2022/clr-angular-forms-combobox.mjs.map +1 -0
- package/fesm2022/clr-angular-forms-common.mjs +1235 -0
- package/fesm2022/clr-angular-forms-common.mjs.map +1 -0
- package/fesm2022/clr-angular-forms-datalist.mjs +275 -0
- package/fesm2022/clr-angular-forms-datalist.mjs.map +1 -0
- package/fesm2022/clr-angular-forms-datepicker.mjs +3230 -0
- package/fesm2022/clr-angular-forms-datepicker.mjs.map +1 -0
- package/fesm2022/clr-angular-forms-file-input.mjs +810 -0
- package/fesm2022/clr-angular-forms-file-input.mjs.map +1 -0
- package/fesm2022/clr-angular-forms-input.mjs +167 -0
- package/fesm2022/clr-angular-forms-input.mjs.map +1 -0
- package/fesm2022/clr-angular-forms-number-input.mjs +249 -0
- package/fesm2022/clr-angular-forms-number-input.mjs.map +1 -0
- package/fesm2022/clr-angular-forms-password.mjs +245 -0
- package/fesm2022/clr-angular-forms-password.mjs.map +1 -0
- package/fesm2022/clr-angular-forms-radio.mjs +262 -0
- package/fesm2022/clr-angular-forms-radio.mjs.map +1 -0
- package/fesm2022/clr-angular-forms-range.mjs +199 -0
- package/fesm2022/clr-angular-forms-range.mjs.map +1 -0
- package/fesm2022/clr-angular-forms-select.mjs +166 -0
- package/fesm2022/clr-angular-forms-select.mjs.map +1 -0
- package/fesm2022/clr-angular-forms-textarea.mjs +149 -0
- package/fesm2022/clr-angular-forms-textarea.mjs.map +1 -0
- package/fesm2022/clr-angular-forms.mjs +8592 -0
- package/fesm2022/clr-angular-forms.mjs.map +1 -0
- package/fesm2022/clr-angular-icon.mjs +7387 -0
- package/fesm2022/clr-angular-icon.mjs.map +1 -0
- package/fesm2022/clr-angular-layout-breadcrumbs.mjs +120 -0
- package/fesm2022/clr-angular-layout-breadcrumbs.mjs.map +1 -0
- package/fesm2022/clr-angular-layout-main-container.mjs +100 -0
- package/fesm2022/clr-angular-layout-main-container.mjs.map +1 -0
- package/fesm2022/clr-angular-layout-nav.mjs +580 -0
- package/fesm2022/clr-angular-layout-nav.mjs.map +1 -0
- package/fesm2022/clr-angular-layout-tabs.mjs +807 -0
- package/fesm2022/clr-angular-layout-tabs.mjs.map +1 -0
- package/fesm2022/clr-angular-layout-vertical-nav.mjs +507 -0
- package/fesm2022/clr-angular-layout-vertical-nav.mjs.map +1 -0
- package/fesm2022/clr-angular-layout.mjs +2086 -0
- package/fesm2022/clr-angular-layout.mjs.map +1 -0
- package/fesm2022/clr-angular-modal.mjs +618 -0
- package/fesm2022/clr-angular-modal.mjs.map +1 -0
- package/fesm2022/clr-angular-popover-common.mjs +1027 -0
- package/fesm2022/clr-angular-popover-common.mjs.map +1 -0
- package/fesm2022/clr-angular-popover-dropdown.mjs +489 -0
- package/fesm2022/clr-angular-popover-dropdown.mjs.map +1 -0
- package/fesm2022/clr-angular-popover-signpost.mjs +478 -0
- package/fesm2022/clr-angular-popover-signpost.mjs.map +1 -0
- package/fesm2022/clr-angular-popover-tooltip.mjs +293 -0
- package/fesm2022/clr-angular-popover-tooltip.mjs.map +1 -0
- package/fesm2022/clr-angular-popover.mjs +2271 -0
- package/fesm2022/clr-angular-popover.mjs.map +1 -0
- package/fesm2022/clr-angular-progress-progress-bars.mjs +217 -0
- package/fesm2022/clr-angular-progress-progress-bars.mjs.map +1 -0
- package/fesm2022/clr-angular-progress-spinner.mjs +132 -0
- package/fesm2022/clr-angular-progress-spinner.mjs.map +1 -0
- package/fesm2022/clr-angular-stepper.mjs +688 -0
- package/fesm2022/clr-angular-stepper.mjs.map +1 -0
- package/fesm2022/clr-angular-timeline.mjs +316 -0
- package/fesm2022/clr-angular-timeline.mjs.map +1 -0
- package/fesm2022/clr-angular-utils-conditional.mjs +351 -0
- package/fesm2022/clr-angular-utils-conditional.mjs.map +1 -0
- package/fesm2022/clr-angular-utils-loading.mjs +107 -0
- package/fesm2022/clr-angular-utils-loading.mjs.map +1 -0
- package/fesm2022/clr-angular-utils.mjs +2544 -0
- package/fesm2022/clr-angular-utils.mjs.map +1 -0
- package/fesm2022/clr-angular-wizard.mjs +2863 -0
- package/fesm2022/clr-angular-wizard.mjs.map +1 -0
- package/fesm2022/clr-angular.mjs +38771 -0
- package/fesm2022/clr-angular.mjs.map +1 -0
- package/package.json +197 -18
- package/popover/common/README.md +110 -0
- package/types/clr-angular-accordion.d.ts +100 -0
- package/types/clr-angular-button.d.ts +169 -0
- package/types/clr-angular-collapsible-panel.d.ts +73 -0
- package/types/clr-angular-data-datagrid.d.ts +1850 -0
- package/types/clr-angular-data-stack-view.d.ts +87 -0
- package/types/clr-angular-data-tree-view.d.ts +220 -0
- package/types/clr-angular-data.d.ts +2147 -0
- package/types/clr-angular-emphasis-alert.d.ts +175 -0
- package/types/clr-angular-emphasis-badge.d.ts +25 -0
- package/types/clr-angular-emphasis-common.d.ts +6 -0
- package/types/clr-angular-emphasis-label.d.ts +29 -0
- package/types/clr-angular-emphasis.d.ts +231 -0
- package/types/clr-angular-forms-checkbox.d.ts +69 -0
- package/types/clr-angular-forms-combobox.d.ts +300 -0
- package/types/clr-angular-forms-common.d.ts +336 -0
- package/types/clr-angular-forms-datalist.d.ts +59 -0
- package/types/clr-angular-forms-datepicker.d.ts +951 -0
- package/types/clr-angular-forms-file-input.d.ts +190 -0
- package/types/clr-angular-forms-input.d.ts +29 -0
- package/types/clr-angular-forms-number-input.d.ts +43 -0
- package/types/clr-angular-forms-password.d.ts +52 -0
- package/types/clr-angular-forms-radio.d.ts +50 -0
- package/types/clr-angular-forms-range.d.ts +37 -0
- package/types/clr-angular-forms-select.d.ts +36 -0
- package/types/clr-angular-forms-textarea.d.ts +29 -0
- package/types/clr-angular-forms.d.ts +2072 -0
- package/types/clr-angular-icon.d.ts +1498 -0
- package/types/clr-angular-layout-breadcrumbs.d.ts +45 -0
- package/types/clr-angular-layout-main-container.d.ts +28 -0
- package/types/clr-angular-layout-nav.d.ts +138 -0
- package/types/clr-angular-layout-tabs.d.ts +158 -0
- package/types/clr-angular-layout-vertical-nav.d.ts +128 -0
- package/types/clr-angular-layout.d.ts +476 -0
- package/types/clr-angular-modal.d.ts +160 -0
- package/types/clr-angular-popover-common.d.ts +230 -0
- package/types/clr-angular-popover-dropdown.d.ts +122 -0
- package/types/clr-angular-popover-signpost.d.ts +149 -0
- package/types/clr-angular-popover-tooltip.d.ts +83 -0
- package/types/clr-angular-popover.d.ts +568 -0
- package/{progress/progress-bars/progress-bar.d.ts → types/clr-angular-progress-progress-bars.d.ts} +15 -3
- package/{progress/spinner/spinner.d.ts → types/clr-angular-progress-spinner.d.ts} +15 -3
- package/types/clr-angular-stepper.d.ts +179 -0
- package/types/clr-angular-timeline.d.ts +86 -0
- package/types/clr-angular-utils-conditional.d.ts +132 -0
- package/types/clr-angular-utils-loading.d.ts +38 -0
- package/types/clr-angular-utils.d.ts +1075 -0
- package/types/clr-angular-wizard.d.ts +1451 -0
- package/types/clr-angular.d.ts +10257 -0
- package/accordion/accordion-content.d.ts +0 -5
- package/accordion/accordion-description.d.ts +0 -5
- package/accordion/accordion-panel.d.ts +0 -45
- package/accordion/accordion-title.d.ts +0 -5
- package/accordion/accordion.d.ts +0 -20
- package/accordion/accordion.module.d.ts +0 -16
- package/accordion/chocolate/accordion-oompa-loompa.d.ts +0 -12
- package/accordion/chocolate/accordion-willy-wonka.d.ts +0 -6
- package/accordion/enums/accordion-status.enum.d.ts +0 -5
- package/accordion/enums/accordion-strategy.enum.d.ts +0 -4
- package/accordion/index.d.ts +0 -10
- package/accordion/models/accordion.model.d.ts +0 -27
- package/accordion/providers/accordion.service.d.ts +0 -17
- package/accordion/stepper/chocolate/stepper-oompa-loompa.d.ts +0 -12
- package/accordion/stepper/chocolate/stepper-willy-wonka.d.ts +0 -6
- package/accordion/stepper/index.d.ts +0 -4
- package/accordion/stepper/models/stepper.model.d.ts +0 -29
- package/accordion/stepper/providers/stepper.service.d.ts +0 -23
- package/accordion/stepper/step-button.d.ts +0 -21
- package/accordion/stepper/stepper-panel.d.ts +0 -28
- package/accordion/stepper/stepper.d.ts +0 -26
- package/accordion/stepper/stepper.module.d.ts +0 -14
- package/accordion/utils/animation.d.ts +0 -2
- package/button/button-group/button-group.d.ts +0 -60
- package/button/button-group/button-group.module.d.ts +0 -13
- package/button/button-group/button.d.ts +0 -40
- package/button/button-group/index.d.ts +0 -3
- package/button/button-loading/index.d.ts +0 -2
- package/button/button-loading/loading-button.d.ts +0 -17
- package/button/button-loading/loading-button.module.d.ts +0 -10
- package/button/button.module.d.ts +0 -9
- package/button/index.d.ts +0 -3
- package/button/providers/button-group-focus-handler.service.d.ts +0 -32
- package/button/providers/button-group-focus.enum.d.ts +0 -4
- package/button/providers/button-in-group.service.d.ts +0 -10
- package/clr-angular.module.d.ts +0 -25
- package/data/data.module.d.ts +0 -9
- package/data/datagrid/built-in/comparators/datagrid-property-comparator.d.ts +0 -7
- package/data/datagrid/built-in/filters/datagrid-numeric-filter-impl.d.ts +0 -37
- package/data/datagrid/built-in/filters/datagrid-numeric-filter.d.ts +0 -58
- package/data/datagrid/built-in/filters/datagrid-property-numeric-filter.d.ts +0 -8
- package/data/datagrid/built-in/filters/datagrid-property-string-filter.d.ts +0 -8
- package/data/datagrid/built-in/filters/datagrid-string-filter-impl.d.ts +0 -39
- package/data/datagrid/built-in/filters/datagrid-string-filter.d.ts +0 -60
- package/data/datagrid/built-in/nested-property.d.ts +0 -10
- package/data/datagrid/chocolate/actionable-oompa-loompa.d.ts +0 -12
- package/data/datagrid/chocolate/datagrid-willy-wonka.d.ts +0 -6
- package/data/datagrid/chocolate/expandable-oompa-loompa.d.ts +0 -12
- package/data/datagrid/datagrid-action-bar.d.ts +0 -5
- package/data/datagrid/datagrid-action-overflow.d.ts +0 -28
- package/data/datagrid/datagrid-cell.d.ts +0 -21
- package/data/datagrid/datagrid-column-separator.d.ts +0 -36
- package/data/datagrid/datagrid-column-toggle-button.d.ts +0 -16
- package/data/datagrid/datagrid-column-toggle-trackby.d.ts +0 -6
- package/data/datagrid/datagrid-column-toggle.d.ts +0 -30
- package/data/datagrid/datagrid-column.d.ts +0 -92
- package/data/datagrid/datagrid-detail-body.d.ts +0 -5
- package/data/datagrid/datagrid-detail-header.d.ts +0 -14
- package/data/datagrid/datagrid-detail-registerer.d.ts +0 -9
- package/data/datagrid/datagrid-detail.d.ts +0 -17
- package/data/datagrid/datagrid-filter.d.ts +0 -40
- package/data/datagrid/datagrid-footer.d.ts +0 -17
- package/data/datagrid/datagrid-hideable-column.d.ts +0 -41
- package/data/datagrid/datagrid-if-detail.d.ts +0 -28
- package/data/datagrid/datagrid-if-expanded.service.d.ts +0 -18
- package/data/datagrid/datagrid-items.d.ts +0 -28
- package/data/datagrid/datagrid-page-size.d.ts +0 -13
- package/data/datagrid/datagrid-pagination.d.ts +0 -73
- package/data/datagrid/datagrid-placeholder.d.ts +0 -12
- package/data/datagrid/datagrid-row-detail.d.ts +0 -34
- package/data/datagrid/datagrid-row.d.ts +0 -109
- package/data/datagrid/datagrid-selection-cell.directive.d.ts +0 -9
- package/data/datagrid/datagrid-single-selection.directive.d.ts +0 -21
- package/data/datagrid/datagrid-virtual-scroll.directive.d.ts +0 -80
- package/data/datagrid/datagrid.d.ts +0 -149
- package/data/datagrid/datagrid.module.d.ts +0 -60
- package/data/datagrid/enums/column-changes.enum.d.ts +0 -6
- package/data/datagrid/enums/display-mode.enum.d.ts +0 -4
- package/data/datagrid/enums/render-step.enum.d.ts +0 -7
- package/data/datagrid/enums/selection-type.d.ts +0 -5
- package/data/datagrid/enums/sort-order.enum.d.ts +0 -12
- package/data/datagrid/index.d.ts +0 -50
- package/data/datagrid/interfaces/column-state.interface.d.ts +0 -14
- package/data/datagrid/interfaces/comparator.interface.d.ts +0 -3
- package/data/datagrid/interfaces/filter.interface.d.ts +0 -8
- package/data/datagrid/interfaces/key-nav-grid-strategy.interface.d.ts +0 -11
- package/data/datagrid/interfaces/numeric-filter.interface.d.ts +0 -3
- package/data/datagrid/interfaces/state.interface.d.ts +0 -14
- package/data/datagrid/interfaces/string-filter.interface.d.ts +0 -3
- package/data/datagrid/interfaces/virtual-scroll-data-range.interface.d.ts +0 -5
- package/data/datagrid/providers/column-resizer.service.d.ts +0 -22
- package/data/datagrid/providers/column-state.provider.d.ts +0 -9
- package/data/datagrid/providers/columns.service.d.ts +0 -18
- package/data/datagrid/providers/custom-filter.d.ts +0 -2
- package/data/datagrid/providers/detail.service.d.ts +0 -28
- package/data/datagrid/providers/display-mode.service.d.ts +0 -14
- package/data/datagrid/providers/filters.d.ts +0 -44
- package/data/datagrid/providers/global-expandable-rows.d.ts +0 -16
- package/data/datagrid/providers/items.d.ts +0 -84
- package/data/datagrid/providers/page.d.ts +0 -62
- package/data/datagrid/providers/row-action-service.d.ts +0 -12
- package/data/datagrid/providers/selection.d.ts +0 -105
- package/data/datagrid/providers/sort.d.ts +0 -44
- package/data/datagrid/providers/state-debouncer.provider.d.ts +0 -14
- package/data/datagrid/providers/state.provider.d.ts +0 -24
- package/data/datagrid/providers/table-size.service.d.ts +0 -17
- package/data/datagrid/render/cell-renderer.d.ts +0 -18
- package/data/datagrid/render/constants.d.ts +0 -4
- package/data/datagrid/render/header-renderer.d.ts +0 -34
- package/data/datagrid/render/main-renderer.d.ts +0 -71
- package/data/datagrid/render/noop-dom-adapter.d.ts +0 -13
- package/data/datagrid/render/render-organizer.d.ts +0 -12
- package/data/datagrid/render/row-detail-renderer.d.ts +0 -11
- package/data/datagrid/render/row-renderer.d.ts +0 -17
- package/data/datagrid/utils/datagrid-filter-registrar.d.ts +0 -18
- package/data/datagrid/utils/key-navigation-grid.controller.d.ts +0 -32
- package/data/datagrid/utils/key-navigation-strategies/default.d.ts +0 -15
- package/data/datagrid/utils/key-navigation-strategies/expanded-columns-row.d.ts +0 -12
- package/data/datagrid/utils/key-navigation-strategies/expanded-row.d.ts +0 -12
- package/data/datagrid/utils/key-navigation-utils.d.ts +0 -24
- package/data/datagrid/wrapped-cell.d.ts +0 -10
- package/data/datagrid/wrapped-column.d.ts +0 -10
- package/data/datagrid/wrapped-row.d.ts +0 -10
- package/data/index.d.ts +0 -4
- package/data/stack-view/index.d.ts +0 -6
- package/data/stack-view/stack-block.d.ts +0 -37
- package/data/stack-view/stack-content-input.d.ts +0 -6
- package/data/stack-view/stack-header.d.ts +0 -8
- package/data/stack-view/stack-view-custom-tags.d.ts +0 -15
- package/data/stack-view/stack-view.d.ts +0 -5
- package/data/stack-view/stack-view.module.d.ts +0 -18
- package/data/tree-view/index.d.ts +0 -6
- package/data/tree-view/models/async-array.d.ts +0 -3
- package/data/tree-view/models/declarative-tree-node.model.d.ts +0 -9
- package/data/tree-view/models/recursive-tree-node.model.d.ts +0 -18
- package/data/tree-view/models/selected-state.enum.d.ts +0 -5
- package/data/tree-view/models/tree-node.model.d.ts +0 -23
- package/data/tree-view/recursive-children.d.ts +0 -22
- package/data/tree-view/recursive-for-of.d.ts +0 -22
- package/data/tree-view/tree-features.service.d.ts +0 -22
- package/data/tree-view/tree-focus-manager.service.d.ts +0 -32
- package/data/tree-view/tree-node-link.d.ts +0 -10
- package/data/tree-view/tree-node.d.ts +0 -59
- package/data/tree-view/tree-view.module.d.ts +0 -17
- package/data/tree-view/tree.d.ts +0 -22
- package/emphasis/alert/alert-item.d.ts +0 -8
- package/emphasis/alert/alert-text.d.ts +0 -9
- package/emphasis/alert/alert.d.ts +0 -40
- package/emphasis/alert/alert.module.d.ts +0 -18
- package/emphasis/alert/alerts-pager.d.ts +0 -31
- package/emphasis/alert/alerts.d.ts +0 -32
- package/emphasis/alert/index.d.ts +0 -6
- package/emphasis/alert/providers/icon-and-types.service.d.ts +0 -18
- package/emphasis/alert/providers/multi-alert.service.d.ts +0 -28
- package/emphasis/alert/utils/alert-info-object.d.ts +0 -5
- package/emphasis/alert/utils/alert-types.d.ts +0 -1
- package/emphasis/emphasis.module.d.ts +0 -7
- package/emphasis/index.d.ts +0 -2
- package/esm2020/accordion/accordion-content.mjs +0 -21
- package/esm2020/accordion/accordion-description.mjs +0 -22
- package/esm2020/accordion/accordion-panel.mjs +0 -141
- package/esm2020/accordion/accordion-title.mjs +0 -22
- package/esm2020/accordion/accordion.mjs +0 -62
- package/esm2020/accordion/accordion.module.mjs +0 -56
- package/esm2020/accordion/chocolate/accordion-oompa-loompa.mjs +0 -34
- package/esm2020/accordion/chocolate/accordion-willy-wonka.mjs +0 -20
- package/esm2020/accordion/enums/accordion-status.enum.mjs +0 -13
- package/esm2020/accordion/enums/accordion-strategy.enum.mjs +0 -12
- package/esm2020/accordion/index.mjs +0 -17
- package/esm2020/accordion/models/accordion.model.mjs +0 -61
- package/esm2020/accordion/providers/accordion.service.mjs +0 -48
- package/esm2020/accordion/stepper/chocolate/stepper-oompa-loompa.mjs +0 -34
- package/esm2020/accordion/stepper/chocolate/stepper-willy-wonka.mjs +0 -20
- package/esm2020/accordion/stepper/index.mjs +0 -11
- package/esm2020/accordion/stepper/models/stepper.model.mjs +0 -146
- package/esm2020/accordion/stepper/providers/stepper.service.mjs +0 -75
- package/esm2020/accordion/stepper/step-button.mjs +0 -62
- package/esm2020/accordion/stepper/stepper-panel.mjs +0 -96
- package/esm2020/accordion/stepper/stepper.mjs +0 -105
- package/esm2020/accordion/stepper/stepper.module.mjs +0 -31
- package/esm2020/accordion/utils/animation.mjs +0 -31
- package/esm2020/button/button-group/button-group.mjs +0 -164
- package/esm2020/button/button-group/button-group.module.mjs +0 -28
- package/esm2020/button/button-group/button.mjs +0 -175
- package/esm2020/button/button-group/index.mjs +0 -10
- package/esm2020/button/button-loading/index.mjs +0 -9
- package/esm2020/button/button-loading/loading-button.mjs +0 -164
- package/esm2020/button/button-loading/loading-button.module.mjs +0 -25
- package/esm2020/button/button.module.mjs +0 -26
- package/esm2020/button/index.mjs +0 -10
- package/esm2020/button/providers/button-group-focus-handler.service.mjs +0 -97
- package/esm2020/button/providers/button-group-focus.enum.mjs +0 -12
- package/esm2020/button/providers/button-in-group.service.mjs +0 -26
- package/esm2020/clr-angular.mjs +0 -5
- package/esm2020/clr-angular.module.mjs +0 -93
- package/esm2020/data/data.module.mjs +0 -23
- package/esm2020/data/datagrid/built-in/comparators/datagrid-property-comparator.mjs +0 -46
- package/esm2020/data/datagrid/built-in/filters/datagrid-numeric-filter-impl.mjs +0 -93
- package/esm2020/data/datagrid/built-in/filters/datagrid-numeric-filter.mjs +0 -259
- package/esm2020/data/datagrid/built-in/filters/datagrid-property-numeric-filter.mjs +0 -28
- package/esm2020/data/datagrid/built-in/filters/datagrid-property-string-filter.mjs +0 -27
- package/esm2020/data/datagrid/built-in/filters/datagrid-string-filter-impl.mjs +0 -82
- package/esm2020/data/datagrid/built-in/filters/datagrid-string-filter.mjs +0 -185
- package/esm2020/data/datagrid/built-in/nested-property.mjs +0 -38
- package/esm2020/data/datagrid/chocolate/actionable-oompa-loompa.mjs +0 -34
- package/esm2020/data/datagrid/chocolate/datagrid-willy-wonka.mjs +0 -20
- package/esm2020/data/datagrid/chocolate/expandable-oompa-loompa.mjs +0 -34
- package/esm2020/data/datagrid/datagrid-action-bar.mjs +0 -21
- package/esm2020/data/datagrid/datagrid-action-overflow.mjs +0 -166
- package/esm2020/data/datagrid/datagrid-cell.mjs +0 -40
- package/esm2020/data/datagrid/datagrid-column-separator.mjs +0 -171
- package/esm2020/data/datagrid/datagrid-column-toggle-button.mjs +0 -65
- package/esm2020/data/datagrid/datagrid-column-toggle-trackby.mjs +0 -8
- package/esm2020/data/datagrid/datagrid-column-toggle.mjs +0 -204
- package/esm2020/data/datagrid/datagrid-column.mjs +0 -420
- package/esm2020/data/datagrid/datagrid-detail-body.mjs +0 -31
- package/esm2020/data/datagrid/datagrid-detail-header.mjs +0 -67
- package/esm2020/data/datagrid/datagrid-detail-registerer.mjs +0 -37
- package/esm2020/data/datagrid/datagrid-detail.mjs +0 -98
- package/esm2020/data/datagrid/datagrid-filter.mjs +0 -186
- package/esm2020/data/datagrid/datagrid-footer.mjs +0 -78
- package/esm2020/data/datagrid/datagrid-hideable-column.mjs +0 -106
- package/esm2020/data/datagrid/datagrid-if-detail.mjs +0 -96
- package/esm2020/data/datagrid/datagrid-if-expanded.service.mjs +0 -55
- package/esm2020/data/datagrid/datagrid-items.mjs +0 -72
- package/esm2020/data/datagrid/datagrid-page-size.mjs +0 -63
- package/esm2020/data/datagrid/datagrid-pagination.mjs +0 -388
- package/esm2020/data/datagrid/datagrid-placeholder.mjs +0 -42
- package/esm2020/data/datagrid/datagrid-row-detail.mjs +0 -116
- package/esm2020/data/datagrid/datagrid-row.mjs +0 -372
- package/esm2020/data/datagrid/datagrid-selection-cell.directive.mjs +0 -37
- package/esm2020/data/datagrid/datagrid-single-selection.directive.mjs +0 -74
- package/esm2020/data/datagrid/datagrid-virtual-scroll.directive.mjs +0 -340
- package/esm2020/data/datagrid/datagrid.mjs +0 -556
- package/esm2020/data/datagrid/datagrid.module.mjs +0 -238
- package/esm2020/data/datagrid/enums/column-changes.enum.mjs +0 -16
- package/esm2020/data/datagrid/enums/display-mode.enum.mjs +0 -12
- package/esm2020/data/datagrid/enums/render-step.enum.mjs +0 -15
- package/esm2020/data/datagrid/enums/selection-type.mjs +0 -13
- package/esm2020/data/datagrid/enums/sort-order.enum.mjs +0 -20
- package/esm2020/data/datagrid/index.mjs +0 -56
- package/esm2020/data/datagrid/interfaces/column-state.interface.mjs +0 -8
- package/esm2020/data/datagrid/interfaces/comparator.interface.mjs +0 -8
- package/esm2020/data/datagrid/interfaces/filter.interface.mjs +0 -8
- package/esm2020/data/datagrid/interfaces/key-nav-grid-strategy.interface.mjs +0 -8
- package/esm2020/data/datagrid/interfaces/numeric-filter.interface.mjs +0 -8
- package/esm2020/data/datagrid/interfaces/state.interface.mjs +0 -8
- package/esm2020/data/datagrid/interfaces/string-filter.interface.mjs +0 -8
- package/esm2020/data/datagrid/interfaces/virtual-scroll-data-range.interface.mjs +0 -8
- package/esm2020/data/datagrid/providers/column-resizer.service.mjs +0 -58
- package/esm2020/data/datagrid/providers/column-state.provider.mjs +0 -19
- package/esm2020/data/datagrid/providers/columns.service.mjs +0 -63
- package/esm2020/data/datagrid/providers/custom-filter.mjs +0 -9
- package/esm2020/data/datagrid/providers/detail.service.mjs +0 -76
- package/esm2020/data/datagrid/providers/display-mode.service.mjs +0 -36
- package/esm2020/data/datagrid/providers/filters.mjs +0 -112
- package/esm2020/data/datagrid/providers/global-expandable-rows.mjs +0 -34
- package/esm2020/data/datagrid/providers/items.mjs +0 -177
- package/esm2020/data/datagrid/providers/page.mjs +0 -156
- package/esm2020/data/datagrid/providers/row-action-service.mjs +0 -31
- package/esm2020/data/datagrid/providers/selection.mjs +0 -365
- package/esm2020/data/datagrid/providers/sort.mjs +0 -86
- package/esm2020/data/datagrid/providers/state-debouncer.provider.mjs +0 -43
- package/esm2020/data/datagrid/providers/state.provider.mjs +0 -75
- package/esm2020/data/datagrid/providers/table-size.service.mjs +0 -45
- package/esm2020/data/datagrid/render/cell-renderer.mjs +0 -59
- package/esm2020/data/datagrid/render/constants.mjs +0 -13
- package/esm2020/data/datagrid/render/header-renderer.mjs +0 -117
- package/esm2020/data/datagrid/render/main-renderer.mjs +0 -285
- package/esm2020/data/datagrid/render/noop-dom-adapter.mjs +0 -48
- package/esm2020/data/datagrid/render/render-organizer.mjs +0 -39
- package/esm2020/data/datagrid/render/row-detail-renderer.mjs +0 -31
- package/esm2020/data/datagrid/render/row-renderer.mjs +0 -62
- package/esm2020/data/datagrid/utils/datagrid-filter-registrar.mjs +0 -43
- package/esm2020/data/datagrid/utils/key-navigation-grid.controller.mjs +0 -155
- package/esm2020/data/datagrid/utils/key-navigation-strategies/default.mjs +0 -132
- package/esm2020/data/datagrid/utils/key-navigation-strategies/expanded-columns-row.mjs +0 -129
- package/esm2020/data/datagrid/utils/key-navigation-strategies/expanded-row.mjs +0 -165
- package/esm2020/data/datagrid/utils/key-navigation-utils.mjs +0 -121
- package/esm2020/data/datagrid/wrapped-cell.mjs +0 -37
- package/esm2020/data/datagrid/wrapped-column.mjs +0 -38
- package/esm2020/data/datagrid/wrapped-row.mjs +0 -38
- package/esm2020/data/index.mjs +0 -11
- package/esm2020/data/stack-view/index.mjs +0 -13
- package/esm2020/data/stack-view/stack-block.mjs +0 -236
- package/esm2020/data/stack-view/stack-content-input.mjs +0 -27
- package/esm2020/data/stack-view/stack-header.mjs +0 -37
- package/esm2020/data/stack-view/stack-view-custom-tags.mjs +0 -57
- package/esm2020/data/stack-view/stack-view.mjs +0 -23
- package/esm2020/data/stack-view/stack-view.module.mjs +0 -53
- package/esm2020/data/tree-view/index.mjs +0 -13
- package/esm2020/data/tree-view/models/async-array.mjs +0 -11
- package/esm2020/data/tree-view/models/declarative-tree-node.model.mjs +0 -37
- package/esm2020/data/tree-view/models/recursive-tree-node.model.mjs +0 -77
- package/esm2020/data/tree-view/models/selected-state.enum.mjs +0 -17
- package/esm2020/data/tree-view/models/tree-node.model.mjs +0 -116
- package/esm2020/data/tree-view/recursive-children.mjs +0 -88
- package/esm2020/data/tree-view/recursive-for-of.mjs +0 -57
- package/esm2020/data/tree-view/tree-features.service.mjs +0 -38
- package/esm2020/data/tree-view/tree-focus-manager.service.mjs +0 -190
- package/esm2020/data/tree-view/tree-node-link.mjs +0 -30
- package/esm2020/data/tree-view/tree-node.mjs +0 -348
- package/esm2020/data/tree-view/tree-view.module.mjs +0 -35
- package/esm2020/data/tree-view/tree.mjs +0 -102
- package/esm2020/emphasis/alert/alert-item.mjs +0 -52
- package/esm2020/emphasis/alert/alert-text.mjs +0 -23
- package/esm2020/emphasis/alert/alert.mjs +0 -142
- package/esm2020/emphasis/alert/alert.module.mjs +0 -36
- package/esm2020/emphasis/alert/alerts-pager.mjs +0 -87
- package/esm2020/emphasis/alert/alerts.mjs +0 -102
- package/esm2020/emphasis/alert/index.mjs +0 -13
- package/esm2020/emphasis/alert/providers/icon-and-types.service.mjs +0 -90
- package/esm2020/emphasis/alert/providers/multi-alert.service.mjs +0 -97
- package/esm2020/emphasis/alert/utils/alert-info-object.mjs +0 -8
- package/esm2020/emphasis/alert/utils/alert-types.mjs +0 -9
- package/esm2020/emphasis/emphasis.module.mjs +0 -21
- package/esm2020/emphasis/index.mjs +0 -9
- package/esm2020/forms/checkbox/checkbox-container.mjs +0 -136
- package/esm2020/forms/checkbox/checkbox-wrapper.mjs +0 -70
- package/esm2020/forms/checkbox/checkbox.mjs +0 -53
- package/esm2020/forms/checkbox/checkbox.module.mjs +0 -33
- package/esm2020/forms/checkbox/index.mjs +0 -11
- package/esm2020/forms/combobox/combobox-container.mjs +0 -106
- package/esm2020/forms/combobox/combobox.mjs +0 -360
- package/esm2020/forms/combobox/combobox.module.mjs +0 -97
- package/esm2020/forms/combobox/index.mjs +0 -15
- package/esm2020/forms/combobox/model/combobox.model.mjs +0 -9
- package/esm2020/forms/combobox/model/multi-select-combobox.model.mjs +0 -82
- package/esm2020/forms/combobox/model/pseudo-focus.model.mjs +0 -24
- package/esm2020/forms/combobox/model/single-select-combobox.model.mjs +0 -39
- package/esm2020/forms/combobox/option-group.mjs +0 -42
- package/esm2020/forms/combobox/option-items.directive.mjs +0 -110
- package/esm2020/forms/combobox/option-selected.directive.mjs +0 -25
- package/esm2020/forms/combobox/option.mjs +0 -103
- package/esm2020/forms/combobox/options.mjs +0 -156
- package/esm2020/forms/combobox/providers/combobox-container.service.mjs +0 -19
- package/esm2020/forms/combobox/providers/combobox-focus-handler.service.mjs +0 -222
- package/esm2020/forms/combobox/providers/option-selection.service.mjs +0 -85
- package/esm2020/forms/common/abstract-container.mjs +0 -135
- package/esm2020/forms/common/abstract-control.mjs +0 -51
- package/esm2020/forms/common/common.module.mjs +0 -78
- package/esm2020/forms/common/control-container.mjs +0 -84
- package/esm2020/forms/common/control.mjs +0 -31
- package/esm2020/forms/common/error.mjs +0 -38
- package/esm2020/forms/common/form.mjs +0 -54
- package/esm2020/forms/common/helper.mjs +0 -37
- package/esm2020/forms/common/if-control-state/abstract-if-state.mjs +0 -46
- package/esm2020/forms/common/if-control-state/if-control-state.service.mjs +0 -57
- package/esm2020/forms/common/if-control-state/if-error.mjs +0 -75
- package/esm2020/forms/common/if-control-state/if-success.mjs +0 -48
- package/esm2020/forms/common/index.mjs +0 -21
- package/esm2020/forms/common/label.mjs +0 -102
- package/esm2020/forms/common/layout.mjs +0 -32
- package/esm2020/forms/common/providers/container-id.service.mjs +0 -39
- package/esm2020/forms/common/providers/control-class.service.mjs +0 -53
- package/esm2020/forms/common/providers/control-id.service.mjs +0 -32
- package/esm2020/forms/common/providers/focus.service.mjs +0 -26
- package/esm2020/forms/common/providers/layout.service.mjs +0 -58
- package/esm2020/forms/common/providers/mark-control.service.mjs +0 -26
- package/esm2020/forms/common/providers/ng-control.service.mjs +0 -53
- package/esm2020/forms/common/success.mjs +0 -38
- package/esm2020/forms/common/wrapped-control.mjs +0 -191
- package/esm2020/forms/datalist/datalist-container.mjs +0 -121
- package/esm2020/forms/datalist/datalist-input.mjs +0 -63
- package/esm2020/forms/datalist/datalist.mjs +0 -49
- package/esm2020/forms/datalist/datalist.module.mjs +0 -32
- package/esm2020/forms/datalist/index.mjs +0 -11
- package/esm2020/forms/datalist/providers/datalist-id.service.mjs +0 -32
- package/esm2020/forms/datepicker/calendar.mjs +0 -175
- package/esm2020/forms/datepicker/date-container.mjs +0 -365
- package/esm2020/forms/datepicker/date-end-input.mjs +0 -60
- package/esm2020/forms/datepicker/date-input.mjs +0 -294
- package/esm2020/forms/datepicker/date-input.validator.mjs +0 -100
- package/esm2020/forms/datepicker/date-single-input.mjs +0 -63
- package/esm2020/forms/datepicker/date-start-input.mjs +0 -61
- package/esm2020/forms/datepicker/datepicker-action-buttons.mjs +0 -59
- package/esm2020/forms/datepicker/datepicker-view-manager.mjs +0 -74
- package/esm2020/forms/datepicker/datepicker.module.mjs +0 -111
- package/esm2020/forms/datepicker/day.mjs +0 -145
- package/esm2020/forms/datepicker/daypicker.mjs +0 -81
- package/esm2020/forms/datepicker/index.mjs +0 -21
- package/esm2020/forms/datepicker/interfaces/date-range.interface.mjs +0 -8
- package/esm2020/forms/datepicker/interfaces/day-of-week.interface.mjs +0 -8
- package/esm2020/forms/datepicker/model/calendar-view.model.mjs +0 -182
- package/esm2020/forms/datepicker/model/calendar.model.mjs +0 -79
- package/esm2020/forms/datepicker/model/day-view.model.mjs +0 -25
- package/esm2020/forms/datepicker/model/day.model.mjs +0 -72
- package/esm2020/forms/datepicker/model/year-range.model.mjs +0 -61
- package/esm2020/forms/datepicker/monthpicker.mjs +0 -325
- package/esm2020/forms/datepicker/providers/date-form-control.service.mjs +0 -37
- package/esm2020/forms/datepicker/providers/date-io.service.mjs +0 -195
- package/esm2020/forms/datepicker/providers/date-navigation.service.mjs +0 -195
- package/esm2020/forms/datepicker/providers/datepicker-enabled.service.mjs +0 -47
- package/esm2020/forms/datepicker/providers/datepicker-focus.service.mjs +0 -48
- package/esm2020/forms/datepicker/providers/locale-helper.service.mjs +0 -102
- package/esm2020/forms/datepicker/providers/view-manager.service.mjs +0 -42
- package/esm2020/forms/datepicker/utils/constants.mjs +0 -38
- package/esm2020/forms/datepicker/utils/date-utils.mjs +0 -50
- package/esm2020/forms/datepicker/yearpicker.mjs +0 -304
- package/esm2020/forms/file-input/file-input-container.mjs +0 -245
- package/esm2020/forms/file-input/file-input-validator-errors.mjs +0 -8
- package/esm2020/forms/file-input/file-input-validator.mjs +0 -101
- package/esm2020/forms/file-input/file-input-value-accessor.mjs +0 -53
- package/esm2020/forms/file-input/file-input.helpers.mjs +0 -22
- package/esm2020/forms/file-input/file-input.mjs +0 -77
- package/esm2020/forms/file-input/file-input.module.mjs +0 -74
- package/esm2020/forms/file-input/file-list.mjs +0 -160
- package/esm2020/forms/file-input/file-messages-template.mjs +0 -26
- package/esm2020/forms/file-input/file-messages.mjs +0 -61
- package/esm2020/forms/file-input/index.mjs +0 -16
- package/esm2020/forms/forms.module.mjs +0 -73
- package/esm2020/forms/index.mjs +0 -21
- package/esm2020/forms/input/index.mjs +0 -10
- package/esm2020/forms/input/input-container.mjs +0 -92
- package/esm2020/forms/input/input.mjs +0 -40
- package/esm2020/forms/input/input.module.mjs +0 -33
- package/esm2020/forms/number-input/index.mjs +0 -10
- package/esm2020/forms/number-input/number-input-container.mjs +0 -148
- package/esm2020/forms/number-input/number-input.mjs +0 -79
- package/esm2020/forms/number-input/number-input.module.mjs +0 -32
- package/esm2020/forms/password/index.mjs +0 -10
- package/esm2020/forms/password/password-container.mjs +0 -180
- package/esm2020/forms/password/password.mjs +0 -64
- package/esm2020/forms/password/password.module.mjs +0 -32
- package/esm2020/forms/radio/index.mjs +0 -11
- package/esm2020/forms/radio/radio-container.mjs +0 -150
- package/esm2020/forms/radio/radio-wrapper.mjs +0 -44
- package/esm2020/forms/radio/radio.mjs +0 -29
- package/esm2020/forms/radio/radio.module.mjs +0 -33
- package/esm2020/forms/range/index.mjs +0 -10
- package/esm2020/forms/range/range-container.mjs +0 -137
- package/esm2020/forms/range/range.mjs +0 -30
- package/esm2020/forms/range/range.module.mjs +0 -32
- package/esm2020/forms/select/index.mjs +0 -10
- package/esm2020/forms/select/select-container.mjs +0 -114
- package/esm2020/forms/select/select.mjs +0 -31
- package/esm2020/forms/select/select.module.mjs +0 -32
- package/esm2020/forms/textarea/index.mjs +0 -10
- package/esm2020/forms/textarea/textarea-container.mjs +0 -84
- package/esm2020/forms/textarea/textarea.mjs +0 -31
- package/esm2020/forms/textarea/textarea.module.mjs +0 -32
- package/esm2020/icon/icon.mjs +0 -29
- package/esm2020/icon/icon.module.mjs +0 -25
- package/esm2020/icon/index.mjs +0 -9
- package/esm2020/index.mjs +0 -23
- package/esm2020/layout/breadcrumbs/breadcrumb-item.mjs +0 -24
- package/esm2020/layout/breadcrumbs/breadcrumbs.constants.mjs +0 -8
- package/esm2020/layout/breadcrumbs/breadcrumbs.mjs +0 -46
- package/esm2020/layout/breadcrumbs/breadcrumbs.module.mjs +0 -28
- package/esm2020/layout/breadcrumbs/index.mjs +0 -11
- package/esm2020/layout/breadcrumbs/model/breadcrumbs.model.mjs +0 -8
- package/esm2020/layout/index.mjs +0 -13
- package/esm2020/layout/layout.module.mjs +0 -25
- package/esm2020/layout/main-container/index.mjs +0 -9
- package/esm2020/layout/main-container/main-container.mjs +0 -62
- package/esm2020/layout/main-container/main-container.module.mjs +0 -26
- package/esm2020/layout/nav/aria-current-link.mjs +0 -32
- package/esm2020/layout/nav/chocolate/index.mjs +0 -9
- package/esm2020/layout/nav/chocolate/main-container-willy-wonka.mjs +0 -20
- package/esm2020/layout/nav/chocolate/nav-detection-oompa-loompa.mjs +0 -36
- package/esm2020/layout/nav/header.mjs +0 -154
- package/esm2020/layout/nav/index.mjs +0 -12
- package/esm2020/layout/nav/nav-level.mjs +0 -197
- package/esm2020/layout/nav/navigation.module.mjs +0 -45
- package/esm2020/layout/nav/providers/responsive-navigation.service.mjs +0 -61
- package/esm2020/layout/nav/responsive-nav-codes.mjs +0 -21
- package/esm2020/layout/nav/responsive-nav-control-message.mjs +0 -19
- package/esm2020/layout/tabs/chocolate/active-oompa-loompa.mjs +0 -39
- package/esm2020/layout/tabs/chocolate/tabs-willy-wonka.mjs +0 -20
- package/esm2020/layout/tabs/enums/tabs-layout.enum.mjs +0 -12
- package/esm2020/layout/tabs/index.mjs +0 -17
- package/esm2020/layout/tabs/providers/tabs.service.mjs +0 -46
- package/esm2020/layout/tabs/tab-action.directive.mjs +0 -22
- package/esm2020/layout/tabs/tab-content.mjs +0 -87
- package/esm2020/layout/tabs/tab-link.directive.mjs +0 -105
- package/esm2020/layout/tabs/tab-overflow-content.mjs +0 -23
- package/esm2020/layout/tabs/tab.mjs +0 -47
- package/esm2020/layout/tabs/tabs-actions.mjs +0 -39
- package/esm2020/layout/tabs/tabs-id.provider.mjs +0 -17
- package/esm2020/layout/tabs/tabs.mjs +0 -327
- package/esm2020/layout/tabs/tabs.module.mjs +0 -67
- package/esm2020/layout/vertical-nav/index.mjs +0 -13
- package/esm2020/layout/vertical-nav/providers/vertical-nav-group-registration.service.mjs +0 -25
- package/esm2020/layout/vertical-nav/providers/vertical-nav-group.service.mjs +0 -26
- package/esm2020/layout/vertical-nav/providers/vertical-nav-icon.service.mjs +0 -28
- package/esm2020/layout/vertical-nav/providers/vertical-nav.service.mjs +0 -55
- package/esm2020/layout/vertical-nav/vertical-nav-group-children.mjs +0 -20
- package/esm2020/layout/vertical-nav/vertical-nav-group.mjs +0 -162
- package/esm2020/layout/vertical-nav/vertical-nav-icon.mjs +0 -28
- package/esm2020/layout/vertical-nav/vertical-nav-link.mjs +0 -57
- package/esm2020/layout/vertical-nav/vertical-nav.mjs +0 -85
- package/esm2020/layout/vertical-nav/vertical-nav.module.mjs +0 -50
- package/esm2020/modal/index.mjs +0 -14
- package/esm2020/modal/modal-body.mjs +0 -65
- package/esm2020/modal/modal-configuration.service.mjs +0 -21
- package/esm2020/modal/modal-host.component.mjs +0 -29
- package/esm2020/modal/modal-stack.service.mjs +0 -53
- package/esm2020/modal/modal.mjs +0 -185
- package/esm2020/modal/modal.module.mjs +0 -33
- package/esm2020/modal/side-panel.mjs +0 -227
- package/esm2020/modal/side-panel.module.mjs +0 -28
- package/esm2020/popover/common/abstract-popover.mjs +0 -138
- package/esm2020/popover/common/popover-host-anchor.token.mjs +0 -9
- package/esm2020/popover/common/popover-options.interface.mjs +0 -8
- package/esm2020/popover/common/popover.mjs +0 -267
- package/esm2020/popover/dropdown/dropdown-item.mjs +0 -105
- package/esm2020/popover/dropdown/dropdown-menu.mjs +0 -115
- package/esm2020/popover/dropdown/dropdown-trigger.mjs +0 -51
- package/esm2020/popover/dropdown/dropdown.mjs +0 -53
- package/esm2020/popover/dropdown/dropdown.module.mjs +0 -30
- package/esm2020/popover/dropdown/index.mjs +0 -13
- package/esm2020/popover/dropdown/menu-positions.mjs +0 -17
- package/esm2020/popover/dropdown/providers/dropdown-focus-handler.service.mjs +0 -186
- package/esm2020/popover/dropdown/providers/dropdown.service.mjs +0 -34
- package/esm2020/popover/index.mjs +0 -11
- package/esm2020/popover/popover.module.mjs +0 -23
- package/esm2020/popover/signpost/index.mjs +0 -12
- package/esm2020/popover/signpost/providers/signpost-focus-manager.service.mjs +0 -24
- package/esm2020/popover/signpost/providers/signpost-id.service.mjs +0 -26
- package/esm2020/popover/signpost/signpost-content.mjs +0 -179
- package/esm2020/popover/signpost/signpost-positions.mjs +0 -23
- package/esm2020/popover/signpost/signpost-title.mjs +0 -21
- package/esm2020/popover/signpost/signpost-trigger.mjs +0 -90
- package/esm2020/popover/signpost/signpost.mjs +0 -94
- package/esm2020/popover/signpost/signpost.module.mjs +0 -46
- package/esm2020/popover/tooltip/index.mjs +0 -11
- package/esm2020/popover/tooltip/providers/tooltip-id.service.mjs +0 -26
- package/esm2020/popover/tooltip/providers/tooltip-mouse.service.mjs +0 -44
- package/esm2020/popover/tooltip/tooltip-content.mjs +0 -135
- package/esm2020/popover/tooltip/tooltip-trigger.mjs +0 -62
- package/esm2020/popover/tooltip/tooltip.mjs +0 -29
- package/esm2020/popover/tooltip/tooltip.module.mjs +0 -29
- package/esm2020/progress/progress-bars/index.mjs +0 -9
- package/esm2020/progress/progress-bars/progress-bar.mjs +0 -177
- package/esm2020/progress/progress-bars/progress-bar.module.mjs +0 -25
- package/esm2020/progress/spinner/index.mjs +0 -9
- package/esm2020/progress/spinner/spinner.mjs +0 -95
- package/esm2020/progress/spinner/spinner.module.mjs +0 -25
- package/esm2020/timeline/enums/timeline-layout.enum.mjs +0 -12
- package/esm2020/timeline/enums/timeline-step-state.enum.mjs +0 -15
- package/esm2020/timeline/index.mjs +0 -15
- package/esm2020/timeline/interface/icon-attribute.interface.mjs +0 -8
- package/esm2020/timeline/providers/timeline-icon-attribute.service.mjs +0 -55
- package/esm2020/timeline/timeline-step-description.mjs +0 -21
- package/esm2020/timeline/timeline-step-header.mjs +0 -21
- package/esm2020/timeline/timeline-step-title.mjs +0 -31
- package/esm2020/timeline/timeline-step.mjs +0 -97
- package/esm2020/timeline/timeline.mjs +0 -36
- package/esm2020/timeline/timeline.module.mjs +0 -49
- package/esm2020/utils/animations/collapse/collapse.mjs +0 -17
- package/esm2020/utils/animations/collapse/index.mjs +0 -8
- package/esm2020/utils/animations/constants.mjs +0 -14
- package/esm2020/utils/animations/expandable-animation/base-expandable-animation.mjs +0 -46
- package/esm2020/utils/animations/expandable-animation/expandable-animation.directive.mjs +0 -56
- package/esm2020/utils/animations/expandable-animation/expandable-animation.mjs +0 -49
- package/esm2020/utils/animations/expandable-animation/expandable-animation.module.mjs +0 -26
- package/esm2020/utils/animations/expandable-animation/index.mjs +0 -12
- package/esm2020/utils/animations/fade/fade.mjs +0 -15
- package/esm2020/utils/animations/fade/index.mjs +0 -8
- package/esm2020/utils/animations/fade-slide/fade-slide.mjs +0 -31
- package/esm2020/utils/animations/fade-slide/index.mjs +0 -8
- package/esm2020/utils/animations/index.mjs +0 -12
- package/esm2020/utils/animations/slide/index.mjs +0 -8
- package/esm2020/utils/animations/slide/slide.mjs +0 -31
- package/esm2020/utils/assert/assert.helpers.mjs +0 -10
- package/esm2020/utils/breakpoints/breakpoints.mjs +0 -24
- package/esm2020/utils/cdk/cdk-drag.module.mjs +0 -58
- package/esm2020/utils/cdk/cdk-trap-focus.module.mjs +0 -53
- package/esm2020/utils/chocolate/oompa-loompa.mjs +0 -33
- package/esm2020/utils/chocolate/willy-wonka.mjs +0 -37
- package/esm2020/utils/component/is-boolean-attribute-set.mjs +0 -19
- package/esm2020/utils/conditional/conditional.module.mjs +0 -27
- package/esm2020/utils/conditional/if-active.directive.mjs +0 -98
- package/esm2020/utils/conditional/if-active.service.mjs +0 -71
- package/esm2020/utils/conditional/if-expanded.directive.mjs +0 -96
- package/esm2020/utils/conditional/if-expanded.service.mjs +0 -60
- package/esm2020/utils/conditional/if-open.directive.mjs +0 -81
- package/esm2020/utils/conditional/index.mjs +0 -11
- package/esm2020/utils/destroy/destroy.service.mjs +0 -45
- package/esm2020/utils/destroy/index.mjs +0 -8
- package/esm2020/utils/dom-adapter/dom-adapter.mjs +0 -62
- package/esm2020/utils/enums/keys.enum.mjs +0 -33
- package/esm2020/utils/focus/arrow-key-direction.enum.mjs +0 -14
- package/esm2020/utils/focus/focus-on-view-init/focus-on-view-init.mjs +0 -90
- package/esm2020/utils/focus/focus-on-view-init/focus-on-view-init.module.mjs +0 -27
- package/esm2020/utils/focus/focus-on-view-init/focus-on-view-init.provider.mjs +0 -15
- package/esm2020/utils/focus/focus-on-view-init/index.mjs +0 -10
- package/esm2020/utils/focus/focus-trap/index.mjs +0 -8
- package/esm2020/utils/focus/focus-trap/standalone-cdk-trap-focus.directive.mjs +0 -35
- package/esm2020/utils/focus/focus.service.mjs +0 -95
- package/esm2020/utils/focus/focusable-item/basic-focusable-item.service.mjs +0 -55
- package/esm2020/utils/focus/focusable-item/custom-focusable-item-provider.mjs +0 -17
- package/esm2020/utils/focus/focusable-item/focusable-item.mjs +0 -9
- package/esm2020/utils/focus/focusable-item/linkers.mjs +0 -35
- package/esm2020/utils/focus/key-focus/enums/focus-direction.enum.mjs +0 -13
- package/esm2020/utils/focus/key-focus/index.mjs +0 -9
- package/esm2020/utils/focus/key-focus/interfaces.mjs +0 -8
- package/esm2020/utils/focus/key-focus/key-focus-item.mjs +0 -35
- package/esm2020/utils/focus/key-focus/key-focus.mjs +0 -199
- package/esm2020/utils/focus/key-focus/key-focus.module.mjs +0 -27
- package/esm2020/utils/focus/key-focus/roving-tabindex.mjs +0 -103
- package/esm2020/utils/focus/key-focus/util.mjs +0 -45
- package/esm2020/utils/focus/wrap-observable.mjs +0 -20
- package/esm2020/utils/forms/validation.mjs +0 -21
- package/esm2020/utils/host-wrapping/empty-anchor.mjs +0 -19
- package/esm2020/utils/host-wrapping/host-wrapper.mjs +0 -42
- package/esm2020/utils/host-wrapping/host-wrapping.module.mjs +0 -25
- package/esm2020/utils/i18n/common-strings.default.mjs +0 -137
- package/esm2020/utils/i18n/common-strings.interface.mjs +0 -8
- package/esm2020/utils/i18n/common-strings.service.mjs +0 -48
- package/esm2020/utils/i18n/index.mjs +0 -10
- package/esm2020/utils/id-generator/id-generator.service.mjs +0 -11
- package/esm2020/utils/index.mjs +0 -15
- package/esm2020/utils/loading/index.mjs +0 -10
- package/esm2020/utils/loading/loading-listener.mjs +0 -13
- package/esm2020/utils/loading/loading.mjs +0 -58
- package/esm2020/utils/loading/loading.module.mjs +0 -25
- package/esm2020/utils/outside-click/index.mjs +0 -10
- package/esm2020/utils/outside-click/outside-click.mjs +0 -49
- package/esm2020/utils/outside-click/outside-click.module.mjs +0 -25
- package/esm2020/utils/popover/enums/alignment.enum.mjs +0 -13
- package/esm2020/utils/popover/enums/axis.enum.mjs +0 -12
- package/esm2020/utils/popover/enums/positions.enum.mjs +0 -60
- package/esm2020/utils/popover/enums/side.enum.mjs +0 -12
- package/esm2020/utils/popover/enums/viewport-violation.enum.mjs +0 -14
- package/esm2020/utils/popover/index.mjs +0 -21
- package/esm2020/utils/popover/interfaces/popover-content-offset.interface.mjs +0 -8
- package/esm2020/utils/popover/interfaces/popover-position.interface.mjs +0 -8
- package/esm2020/utils/popover/interfaces/visibility-coords.interface.mjs +0 -8
- package/esm2020/utils/popover/popover-anchor.mjs +0 -26
- package/esm2020/utils/popover/popover-close-button.mjs +0 -52
- package/esm2020/utils/popover/popover-content.mjs +0 -161
- package/esm2020/utils/popover/popover-host.directive.mjs +0 -37
- package/esm2020/utils/popover/popover-open-close-button.mjs +0 -43
- package/esm2020/utils/popover/popover.module.mjs +0 -26
- package/esm2020/utils/popover/position-operators.mjs +0 -180
- package/esm2020/utils/popover/providers/popover-events.service.mjs +0 -142
- package/esm2020/utils/popover/providers/popover-position.service.mjs +0 -230
- package/esm2020/utils/popover/providers/popover-toggle.service.mjs +0 -75
- package/esm2020/utils/popover/stop-escape-propagation.directive.mjs +0 -43
- package/esm2020/utils/scrolling/scrolling-service.mjs +0 -31
- package/esm2020/utils/template-ref/index.mjs +0 -10
- package/esm2020/utils/template-ref/template-ref-container.mjs +0 -30
- package/esm2020/utils/template-ref/template-ref.module.mjs +0 -25
- package/esm2020/wizard/heading-level.mjs +0 -8
- package/esm2020/wizard/index.mjs +0 -20
- package/esm2020/wizard/providers/button-hub.service.mjs +0 -64
- package/esm2020/wizard/providers/header-actions.service.mjs +0 -36
- package/esm2020/wizard/providers/page-collection.service.mjs +0 -360
- package/esm2020/wizard/providers/wizard-navigation.service.mjs +0 -575
- package/esm2020/wizard/wizard-button.mjs +0 -188
- package/esm2020/wizard/wizard-header-action.mjs +0 -77
- package/esm2020/wizard/wizard-page-buttons.mjs +0 -22
- package/esm2020/wizard/wizard-page-header-actions.mjs +0 -22
- package/esm2020/wizard/wizard-page-navtitle.mjs +0 -22
- package/esm2020/wizard/wizard-page-title.mjs +0 -25
- package/esm2020/wizard/wizard-page.mjs +0 -652
- package/esm2020/wizard/wizard-stepnav-item.mjs +0 -204
- package/esm2020/wizard/wizard-stepnav.mjs +0 -55
- package/esm2020/wizard/wizard-title.mjs +0 -22
- package/esm2020/wizard/wizard.mjs +0 -525
- package/esm2020/wizard/wizard.module.mjs +0 -73
- package/fesm2015/clr-angular.mjs +0 -31527
- package/fesm2015/clr-angular.mjs.map +0 -1
- package/fesm2020/clr-angular.mjs +0 -31343
- package/fesm2020/clr-angular.mjs.map +0 -1
- package/forms/checkbox/checkbox-container.d.ts +0 -25
- package/forms/checkbox/checkbox-wrapper.d.ts +0 -22
- package/forms/checkbox/checkbox.d.ts +0 -20
- package/forms/checkbox/checkbox.module.d.ts +0 -14
- package/forms/checkbox/index.d.ts +0 -4
- package/forms/combobox/combobox-container.d.ts +0 -18
- package/forms/combobox/combobox.d.ts +0 -87
- package/forms/combobox/combobox.module.d.ts +0 -22
- package/forms/combobox/index.d.ts +0 -8
- package/forms/combobox/model/combobox.model.d.ts +0 -9
- package/forms/combobox/model/multi-select-combobox.model.d.ts +0 -12
- package/forms/combobox/model/pseudo-focus.model.d.ts +0 -7
- package/forms/combobox/model/single-select-combobox.model.d.ts +0 -10
- package/forms/combobox/option-group.d.ts +0 -9
- package/forms/combobox/option-items.directive.d.ts +0 -28
- package/forms/combobox/option-selected.directive.d.ts +0 -13
- package/forms/combobox/option.d.ts +0 -25
- package/forms/combobox/options.d.ts +0 -36
- package/forms/combobox/providers/combobox-container.service.d.ts +0 -7
- package/forms/combobox/providers/combobox-focus-handler.service.d.ts +0 -48
- package/forms/combobox/providers/option-selection.service.d.ts +0 -24
- package/forms/common/abstract-container.d.ts +0 -47
- package/forms/common/abstract-control.d.ts +0 -18
- package/forms/common/common.module.d.ts +0 -19
- package/forms/common/control-container.d.ts +0 -6
- package/forms/common/control.d.ts +0 -11
- package/forms/common/error.d.ts +0 -12
- package/forms/common/form.d.ts +0 -16
- package/forms/common/helper.d.ts +0 -12
- package/forms/common/if-control-state/abstract-if-state.d.ts +0 -18
- package/forms/common/if-control-state/if-control-state.service.d.ts +0 -17
- package/forms/common/if-control-state/if-error.d.ts +0 -19
- package/forms/common/if-control-state/if-success.d.ts +0 -16
- package/forms/common/index.d.ts +0 -14
- package/forms/common/label.d.ts +0 -32
- package/forms/common/layout.d.ts +0 -11
- package/forms/common/providers/container-id.service.d.ts +0 -18
- package/forms/common/providers/control-class.service.d.ts +0 -13
- package/forms/common/providers/control-id.service.d.ts +0 -11
- package/forms/common/providers/focus.service.d.ts +0 -9
- package/forms/common/providers/layout.service.d.ts +0 -23
- package/forms/common/providers/mark-control.service.d.ts +0 -9
- package/forms/common/providers/ng-control.service.d.ts +0 -27
- package/forms/common/success.d.ts +0 -12
- package/forms/common/wrapped-control.d.ts +0 -46
- package/forms/datalist/datalist-container.d.ts +0 -14
- package/forms/datalist/datalist-input.d.ts +0 -18
- package/forms/datalist/datalist.d.ts +0 -14
- package/forms/datalist/datalist.module.d.ts +0 -13
- package/forms/datalist/index.d.ts +0 -4
- package/forms/datalist/providers/datalist-id.service.d.ts +0 -11
- package/forms/datepicker/calendar.d.ts +0 -65
- package/forms/datepicker/date-container.d.ts +0 -72
- package/forms/datepicker/date-end-input.d.ts +0 -15
- package/forms/datepicker/date-input.d.ts +0 -67
- package/forms/datepicker/date-input.validator.d.ts +0 -27
- package/forms/datepicker/date-single-input.d.ts +0 -15
- package/forms/datepicker/date-start-input.d.ts +0 -15
- package/forms/datepicker/datepicker-action-buttons.d.ts +0 -16
- package/forms/datepicker/datepicker-view-manager.d.ts +0 -30
- package/forms/datepicker/datepicker.module.d.ts +0 -29
- package/forms/datepicker/day.d.ts +0 -40
- package/forms/datepicker/daypicker.d.ts +0 -44
- package/forms/datepicker/index.d.ts +0 -14
- package/forms/datepicker/interfaces/date-range.interface.d.ts +0 -13
- package/forms/datepicker/interfaces/day-of-week.interface.d.ts +0 -4
- package/forms/datepicker/model/calendar-view.model.d.ts +0 -74
- package/forms/datepicker/model/calendar.model.d.ts +0 -35
- package/forms/datepicker/model/day-view.model.d.ts +0 -16
- package/forms/datepicker/model/day.model.d.ts +0 -30
- package/forms/datepicker/model/year-range.model.d.ts +0 -34
- package/forms/datepicker/monthpicker.d.ts +0 -87
- package/forms/datepicker/providers/date-form-control.service.d.ts +0 -14
- package/forms/datepicker/providers/date-io.service.d.ts +0 -39
- package/forms/datepicker/providers/date-navigation.service.d.ts +0 -94
- package/forms/datepicker/providers/datepicker-enabled.service.d.ts +0 -15
- package/forms/datepicker/providers/datepicker-focus.service.d.ts +0 -16
- package/forms/datepicker/providers/locale-helper.service.d.ts +0 -46
- package/forms/datepicker/providers/view-manager.service.d.ts +0 -17
- package/forms/datepicker/utils/constants.d.ts +0 -24
- package/forms/datepicker/utils/date-utils.d.ts +0 -16
- package/forms/datepicker/yearpicker.d.ts +0 -78
- package/forms/file-input/file-input-container.d.ts +0 -27
- package/forms/file-input/file-input-validator-errors.d.ts +0 -52
- package/forms/file-input/file-input-validator.d.ts +0 -14
- package/forms/file-input/file-input-value-accessor.d.ts +0 -15
- package/forms/file-input/file-input.d.ts +0 -23
- package/forms/file-input/file-input.helpers.d.ts +0 -3
- package/forms/file-input/file-input.module.d.ts +0 -17
- package/forms/file-input/file-list.d.ts +0 -18
- package/forms/file-input/file-messages-template.d.ts +0 -19
- package/forms/file-input/file-messages.d.ts +0 -17
- package/forms/file-input/index.d.ts +0 -9
- package/forms/forms.module.d.ts +0 -20
- package/forms/index.d.ts +0 -14
- package/forms/input/index.d.ts +0 -3
- package/forms/input/input-container.d.ts +0 -6
- package/forms/input/input.d.ts +0 -11
- package/forms/input/input.module.d.ts +0 -13
- package/forms/number-input/index.d.ts +0 -3
- package/forms/number-input/number-input-container.d.ts +0 -17
- package/forms/number-input/number-input.d.ts +0 -22
- package/forms/number-input/number-input.module.d.ts +0 -13
- package/forms/password/index.d.ts +0 -3
- package/forms/password/password-container.d.ts +0 -32
- package/forms/password/password.d.ts +0 -16
- package/forms/password/password.module.d.ts +0 -13
- package/forms/radio/index.d.ts +0 -4
- package/forms/radio/radio-container.d.ts +0 -28
- package/forms/radio/radio-wrapper.d.ts +0 -9
- package/forms/radio/radio.d.ts +0 -10
- package/forms/radio/radio.module.d.ts +0 -14
- package/forms/range/index.d.ts +0 -3
- package/forms/range/range-container.d.ts +0 -22
- package/forms/range/range.d.ts +0 -10
- package/forms/range/range.module.d.ts +0 -13
- package/forms/select/index.d.ts +0 -3
- package/forms/select/select-container.d.ts +0 -20
- package/forms/select/select.d.ts +0 -11
- package/forms/select/select.module.d.ts +0 -13
- package/forms/textarea/index.d.ts +0 -3
- package/forms/textarea/textarea-container.d.ts +0 -6
- package/forms/textarea/textarea.d.ts +0 -11
- package/forms/textarea/textarea.module.d.ts +0 -13
- package/icon/icon.d.ts +0 -9
- package/icon/icon.module.d.ts +0 -10
- package/icon/index.d.ts +0 -2
- package/index.d.ts +0 -16
- package/layout/breadcrumbs/breadcrumb-item.d.ts +0 -5
- package/layout/breadcrumbs/breadcrumbs.constants.d.ts +0 -1
- package/layout/breadcrumbs/breadcrumbs.d.ts +0 -17
- package/layout/breadcrumbs/breadcrumbs.module.d.ts +0 -12
- package/layout/breadcrumbs/index.d.ts +0 -4
- package/layout/breadcrumbs/model/breadcrumbs.model.d.ts +0 -9
- package/layout/index.d.ts +0 -6
- package/layout/layout.module.d.ts +0 -11
- package/layout/main-container/index.d.ts +0 -2
- package/layout/main-container/main-container.d.ts +0 -17
- package/layout/main-container/main-container.module.d.ts +0 -11
- package/layout/nav/aria-current-link.d.ts +0 -13
- package/layout/nav/chocolate/index.d.ts +0 -2
- package/layout/nav/chocolate/main-container-willy-wonka.d.ts +0 -6
- package/layout/nav/chocolate/nav-detection-oompa-loompa.d.ts +0 -12
- package/layout/nav/header.d.ts +0 -31
- package/layout/nav/index.d.ts +0 -5
- package/layout/nav/nav-level.d.ts +0 -35
- package/layout/nav/navigation.module.d.ts +0 -16
- package/layout/nav/providers/responsive-navigation.service.d.ts +0 -18
- package/layout/nav/responsive-nav-codes.d.ts +0 -14
- package/layout/nav/responsive-nav-control-message.d.ts +0 -7
- package/layout/tabs/chocolate/active-oompa-loompa.d.ts +0 -13
- package/layout/tabs/chocolate/tabs-willy-wonka.d.ts +0 -6
- package/layout/tabs/enums/tabs-layout.enum.d.ts +0 -4
- package/layout/tabs/index.d.ts +0 -11
- package/layout/tabs/providers/tabs.service.d.ts +0 -16
- package/layout/tabs/tab-action.directive.d.ts +0 -5
- package/layout/tabs/tab-content.d.ts +0 -18
- package/layout/tabs/tab-link.directive.d.ts +0 -25
- package/layout/tabs/tab-overflow-content.d.ts +0 -5
- package/layout/tabs/tab.d.ts +0 -17
- package/layout/tabs/tabs-actions.d.ts +0 -7
- package/layout/tabs/tabs-id.provider.d.ts +0 -7
- package/layout/tabs/tabs.d.ts +0 -50
- package/layout/tabs/tabs.module.d.ts +0 -23
- package/layout/vertical-nav/index.d.ts +0 -6
- package/layout/vertical-nav/providers/vertical-nav-group-registration.service.d.ts +0 -8
- package/layout/vertical-nav/providers/vertical-nav-group.service.d.ts +0 -9
- package/layout/vertical-nav/providers/vertical-nav-icon.service.d.ts +0 -9
- package/layout/vertical-nav/providers/vertical-nav.service.d.ts +0 -17
- package/layout/vertical-nav/vertical-nav-group-children.d.ts +0 -5
- package/layout/vertical-nav/vertical-nav-group.d.ts +0 -32
- package/layout/vertical-nav/vertical-nav-icon.d.ts +0 -10
- package/layout/vertical-nav/vertical-nav-link.d.ts +0 -10
- package/layout/vertical-nav/vertical-nav.d.ts +0 -28
- package/layout/vertical-nav/vertical-nav.module.d.ts +0 -18
- package/modal/index.d.ts +0 -7
- package/modal/modal-body.d.ts +0 -22
- package/modal/modal-configuration.service.d.ts +0 -7
- package/modal/modal-host.component.d.ts +0 -5
- package/modal/modal-stack.service.d.ts +0 -15
- package/modal/modal.d.ts +0 -43
- package/modal/modal.module.d.ts +0 -15
- package/modal/side-panel.d.ts +0 -53
- package/modal/side-panel.module.d.ts +0 -13
- package/popover/common/abstract-popover.d.ts +0 -35
- package/popover/common/popover-host-anchor.token.d.ts +0 -2
- package/popover/common/popover-options.interface.d.ts +0 -7
- package/popover/common/popover.d.ts +0 -30
- package/popover/dropdown/dropdown-item.d.ts +0 -27
- package/popover/dropdown/dropdown-menu.d.ts +0 -15
- package/popover/dropdown/dropdown-trigger.d.ts +0 -16
- package/popover/dropdown/dropdown.d.ts +0 -17
- package/popover/dropdown/dropdown.module.d.ts +0 -15
- package/popover/dropdown/index.d.ts +0 -6
- package/popover/dropdown/menu-positions.d.ts +0 -1
- package/popover/dropdown/providers/dropdown-focus-handler.service.d.ts +0 -49
- package/popover/dropdown/providers/dropdown.service.d.ts +0 -16
- package/popover/index.d.ts +0 -4
- package/popover/popover.module.d.ts +0 -9
- package/popover/signpost/index.d.ts +0 -5
- package/popover/signpost/providers/signpost-focus-manager.service.d.ts +0 -8
- package/popover/signpost/providers/signpost-id.service.d.ts +0 -9
- package/popover/signpost/signpost-content.d.ts +0 -57
- package/popover/signpost/signpost-positions.d.ts +0 -10
- package/popover/signpost/signpost-title.d.ts +0 -5
- package/popover/signpost/signpost-trigger.d.ts +0 -29
- package/popover/signpost/signpost.d.ts +0 -27
- package/popover/signpost/signpost.module.d.ts +0 -17
- package/popover/tooltip/index.d.ts +0 -4
- package/popover/tooltip/providers/tooltip-id.service.d.ts +0 -9
- package/popover/tooltip/providers/tooltip-mouse.service.d.ts +0 -15
- package/popover/tooltip/tooltip-content.d.ts +0 -25
- package/popover/tooltip/tooltip-trigger.d.ts +0 -18
- package/popover/tooltip/tooltip.d.ts +0 -6
- package/popover/tooltip/tooltip.module.d.ts +0 -14
- package/progress/progress-bars/index.d.ts +0 -2
- package/progress/progress-bars/progress-bar.module.d.ts +0 -10
- package/progress/spinner/index.d.ts +0 -2
- package/progress/spinner/spinner.module.d.ts +0 -10
- package/src/utils/popover/README.md +0 -139
- package/timeline/enums/timeline-layout.enum.d.ts +0 -4
- package/timeline/enums/timeline-step-state.enum.d.ts +0 -7
- package/timeline/index.d.ts +0 -8
- package/timeline/interface/icon-attribute.interface.d.ts +0 -6
- package/timeline/providers/timeline-icon-attribute.service.d.ts +0 -12
- package/timeline/timeline-step-description.d.ts +0 -5
- package/timeline/timeline-step-header.d.ts +0 -5
- package/timeline/timeline-step-title.d.ts +0 -15
- package/timeline/timeline-step.d.ts +0 -19
- package/timeline/timeline.d.ts +0 -8
- package/timeline/timeline.module.d.ts +0 -15
- package/utils/animations/collapse/collapse.d.ts +0 -2
- package/utils/animations/collapse/index.d.ts +0 -1
- package/utils/animations/constants.d.ts +0 -2
- package/utils/animations/expandable-animation/base-expandable-animation.d.ts +0 -16
- package/utils/animations/expandable-animation/expandable-animation.d.ts +0 -16
- package/utils/animations/expandable-animation/expandable-animation.directive.d.ts +0 -16
- package/utils/animations/expandable-animation/expandable-animation.module.d.ts +0 -9
- package/utils/animations/expandable-animation/index.d.ts +0 -4
- package/utils/animations/fade/fade.d.ts +0 -2
- package/utils/animations/fade/index.d.ts +0 -1
- package/utils/animations/fade-slide/fade-slide.d.ts +0 -2
- package/utils/animations/fade-slide/index.d.ts +0 -1
- package/utils/animations/index.d.ts +0 -5
- package/utils/animations/slide/index.d.ts +0 -1
- package/utils/animations/slide/slide.d.ts +0 -2
- package/utils/assert/assert.helpers.d.ts +0 -1
- package/utils/breakpoints/breakpoints.d.ts +0 -15
- package/utils/cdk/cdk-drag.module.d.ts +0 -25
- package/utils/cdk/cdk-trap-focus.module.d.ts +0 -24
- package/utils/chocolate/oompa-loompa.d.ts +0 -13
- package/utils/chocolate/willy-wonka.d.ts +0 -11
- package/utils/component/is-boolean-attribute-set.d.ts +0 -1
- package/utils/conditional/conditional.module.d.ts +0 -12
- package/utils/conditional/if-active.directive.d.ts +0 -38
- package/utils/conditional/if-active.service.d.ts +0 -45
- package/utils/conditional/if-expanded.directive.d.ts +0 -24
- package/utils/conditional/if-expanded.service.d.ts +0 -20
- package/utils/conditional/if-open.directive.d.ts +0 -36
- package/utils/conditional/index.d.ts +0 -4
- package/utils/destroy/destroy.service.d.ts +0 -32
- package/utils/destroy/index.d.ts +0 -1
- package/utils/dom-adapter/dom-adapter.d.ts +0 -12
- package/utils/enums/keys.enum.d.ts +0 -24
- package/utils/focus/arrow-key-direction.enum.d.ts +0 -6
- package/utils/focus/focus-on-view-init/focus-on-view-init.d.ts +0 -19
- package/utils/focus/focus-on-view-init/focus-on-view-init.module.d.ts +0 -10
- package/utils/focus/focus-on-view-init/focus-on-view-init.provider.d.ts +0 -6
- package/utils/focus/focus-on-view-init/index.d.ts +0 -3
- package/utils/focus/focus-trap/index.d.ts +0 -1
- package/utils/focus/focus-trap/standalone-cdk-trap-focus.directive.d.ts +0 -13
- package/utils/focus/focus.service.d.ts +0 -26
- package/utils/focus/focusable-item/basic-focusable-item.service.d.ts +0 -20
- package/utils/focus/focusable-item/custom-focusable-item-provider.d.ts +0 -6
- package/utils/focus/focusable-item/focusable-item.d.ts +0 -12
- package/utils/focus/focusable-item/linkers.d.ts +0 -13
- package/utils/focus/key-focus/enums/focus-direction.enum.d.ts +0 -5
- package/utils/focus/key-focus/index.d.ts +0 -2
- package/utils/focus/key-focus/interfaces.d.ts +0 -5
- package/utils/focus/key-focus/key-focus-item.d.ts +0 -11
- package/utils/focus/key-focus/key-focus.d.ts +0 -44
- package/utils/focus/key-focus/key-focus.module.d.ts +0 -10
- package/utils/focus/key-focus/roving-tabindex.d.ts +0 -19
- package/utils/focus/key-focus/util.d.ts +0 -3
- package/utils/focus/wrap-observable.d.ts +0 -2
- package/utils/forms/validation.d.ts +0 -2
- package/utils/host-wrapping/empty-anchor.d.ts +0 -5
- package/utils/host-wrapping/host-wrapper.d.ts +0 -11
- package/utils/host-wrapping/host-wrapping.module.d.ts +0 -10
- package/utils/i18n/common-strings.default.d.ts +0 -2
- package/utils/i18n/common-strings.interface.d.ts +0 -309
- package/utils/i18n/common-strings.service.d.ts +0 -21
- package/utils/i18n/index.d.ts +0 -3
- package/utils/id-generator/id-generator.service.d.ts +0 -1
- package/utils/index.d.ts +0 -8
- package/utils/loading/index.d.ts +0 -3
- package/utils/loading/loading-listener.d.ts +0 -8
- package/utils/loading/loading.d.ts +0 -20
- package/utils/loading/loading.module.d.ts +0 -10
- package/utils/outside-click/index.d.ts +0 -3
- package/utils/outside-click/outside-click.d.ts +0 -11
- package/utils/outside-click/outside-click.module.d.ts +0 -8
- package/utils/popover/enums/alignment.enum.d.ts +0 -5
- package/utils/popover/enums/axis.enum.d.ts +0 -4
- package/utils/popover/enums/positions.enum.d.ts +0 -23
- package/utils/popover/enums/side.enum.d.ts +0 -4
- package/utils/popover/enums/viewport-violation.enum.d.ts +0 -6
- package/utils/popover/index.d.ts +0 -14
- package/utils/popover/interfaces/popover-content-offset.interface.d.ts +0 -4
- package/utils/popover/interfaces/popover-position.interface.d.ts +0 -16
- package/utils/popover/interfaces/visibility-coords.interface.d.ts +0 -6
- package/utils/popover/popover-anchor.d.ts +0 -8
- package/utils/popover/popover-close-button.d.ts +0 -17
- package/utils/popover/popover-content.d.ts +0 -42
- package/utils/popover/popover-host.directive.d.ts +0 -6
- package/utils/popover/popover-open-close-button.d.ts +0 -13
- package/utils/popover/popover.module.d.ts +0 -10
- package/utils/popover/position-operators.d.ts +0 -10
- package/utils/popover/providers/popover-events.service.d.ts +0 -34
- package/utils/popover/providers/popover-position.service.d.ts +0 -24
- package/utils/popover/providers/popover-toggle.service.d.ts +0 -28
- package/utils/popover/stop-escape-propagation.directive.d.ts +0 -14
- package/utils/scrolling/scrolling-service.d.ts +0 -9
- package/utils/template-ref/index.d.ts +0 -3
- package/utils/template-ref/template-ref-container.d.ts +0 -7
- package/utils/template-ref/template-ref.module.d.ts +0 -8
- package/wizard/heading-level.d.ts +0 -1
- package/wizard/index.d.ts +0 -13
- package/wizard/providers/button-hub.service.d.ts +0 -20
- package/wizard/providers/header-actions.service.d.ts +0 -15
- package/wizard/providers/page-collection.service.d.ts +0 -196
- package/wizard/providers/wizard-navigation.service.d.ts +0 -366
- package/wizard/wizard-button.d.ts +0 -28
- package/wizard/wizard-header-action.d.ts +0 -12
- package/wizard/wizard-page-buttons.d.ts +0 -8
- package/wizard/wizard-page-header-actions.d.ts +0 -8
- package/wizard/wizard-page-navtitle.d.ts +0 -8
- package/wizard/wizard-page-title.d.ts +0 -10
- package/wizard/wizard-page.d.ts +0 -494
- package/wizard/wizard-stepnav-item.d.ts +0 -42
- package/wizard/wizard-stepnav.d.ts +0 -9
- package/wizard/wizard-title.d.ts +0 -7
- package/wizard/wizard.d.ts +0 -256
- package/wizard/wizard.module.d.ts +0 -22
|
@@ -1,348 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Copyright (c) 2016-2025 Broadcom. All Rights Reserved.
|
|
3
|
-
* The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
|
|
4
|
-
* This software is released under MIT license.
|
|
5
|
-
* The full license information can be found in LICENSE in the root directory of this project.
|
|
6
|
-
*/
|
|
7
|
-
import { animate, state, style, transition, trigger } from '@angular/animations';
|
|
8
|
-
import { isPlatformBrowser } from '@angular/common';
|
|
9
|
-
import { Component, ContentChildren, ElementRef, EventEmitter, Inject, Input, Optional, Output, PLATFORM_ID, SkipSelf, ViewChild, } from '@angular/core';
|
|
10
|
-
import { Subject } from 'rxjs';
|
|
11
|
-
import { debounceTime, filter } from 'rxjs/operators';
|
|
12
|
-
import { IfExpandService } from '../../utils/conditional/if-expanded.service';
|
|
13
|
-
import { Keys } from '../../utils/enums/keys.enum';
|
|
14
|
-
import { isKeyEitherLetterOrNumber, normalizeKey, preventArrowKeyScroll } from '../../utils/focus/key-focus/util';
|
|
15
|
-
import { uniqueIdFactory } from '../../utils/id-generator/id-generator.service';
|
|
16
|
-
import { LoadingListener } from '../../utils/loading/loading-listener';
|
|
17
|
-
import { DeclarativeTreeNodeModel } from './models/declarative-tree-node.model';
|
|
18
|
-
import { ClrSelectedState } from './models/selected-state.enum';
|
|
19
|
-
import { TREE_FEATURES_PROVIDER } from './tree-features.service';
|
|
20
|
-
import { ClrTreeNodeLink } from './tree-node-link';
|
|
21
|
-
import * as i0 from "@angular/core";
|
|
22
|
-
import * as i1 from "./tree-features.service";
|
|
23
|
-
import * as i2 from "../../utils/conditional/if-expanded.service";
|
|
24
|
-
import * as i3 from "../../utils/i18n/common-strings.service";
|
|
25
|
-
import * as i4 from "./tree-focus-manager.service";
|
|
26
|
-
import * as i5 from "@angular/common";
|
|
27
|
-
import * as i6 from "../../icon/icon";
|
|
28
|
-
import * as i7 from "./recursive-children";
|
|
29
|
-
const LVIEW_CONTEXT_INDEX = 8;
|
|
30
|
-
// If the user types multiple keys without allowing 200ms to pass between them,
|
|
31
|
-
// then those keys are sent together in one request.
|
|
32
|
-
const TREE_TYPE_AHEAD_TIMEOUT = 200;
|
|
33
|
-
export class ClrTreeNode {
|
|
34
|
-
constructor(platformId, parent, featuresService, expandService, commonStrings, focusManager, elementRef, injector) {
|
|
35
|
-
this.platformId = platformId;
|
|
36
|
-
this.featuresService = featuresService;
|
|
37
|
-
this.expandService = expandService;
|
|
38
|
-
this.commonStrings = commonStrings;
|
|
39
|
-
this.focusManager = focusManager;
|
|
40
|
-
this.elementRef = elementRef;
|
|
41
|
-
this.selectedChange = new EventEmitter(false);
|
|
42
|
-
this.expandedChange = new EventEmitter();
|
|
43
|
-
this.STATES = ClrSelectedState;
|
|
44
|
-
this.isModelLoading = false;
|
|
45
|
-
this.nodeId = uniqueIdFactory();
|
|
46
|
-
this.contentContainerTabindex = -1;
|
|
47
|
-
this.skipEmitChange = false;
|
|
48
|
-
this.typeAheadKeyBuffer = '';
|
|
49
|
-
this.typeAheadKeyEvent = new Subject();
|
|
50
|
-
this.subscriptions = [];
|
|
51
|
-
if (featuresService.recursion) {
|
|
52
|
-
// I'm completely stuck, we have to hack into private properties until either
|
|
53
|
-
// https://github.com/angular/angular/issues/14935 or https://github.com/angular/angular/issues/15998
|
|
54
|
-
// are fixed
|
|
55
|
-
// This is for non-ivy implementations
|
|
56
|
-
if (injector.view) {
|
|
57
|
-
this._model = injector.view.context.clrModel;
|
|
58
|
-
}
|
|
59
|
-
else {
|
|
60
|
-
// Ivy puts this on a specific index of a _lView property
|
|
61
|
-
this._model = injector._lView[LVIEW_CONTEXT_INDEX].clrModel;
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
else {
|
|
65
|
-
// Force cast for now, not sure how to tie the correct type here to featuresService.recursion
|
|
66
|
-
this._model = new DeclarativeTreeNodeModel(parent ? parent._model : null);
|
|
67
|
-
}
|
|
68
|
-
this._model.nodeId = this.nodeId;
|
|
69
|
-
}
|
|
70
|
-
get disabled() {
|
|
71
|
-
return this._model.disabled;
|
|
72
|
-
}
|
|
73
|
-
set disabled(value) {
|
|
74
|
-
this._model.disabled = value;
|
|
75
|
-
}
|
|
76
|
-
get selected() {
|
|
77
|
-
return this._model.selected.value;
|
|
78
|
-
}
|
|
79
|
-
set selected(value) {
|
|
80
|
-
this.featuresService.selectable = true;
|
|
81
|
-
// Gracefully handle falsy states like null or undefined because it's just easier than answering questions.
|
|
82
|
-
// This shouldn't happen with strict typing on the app's side, but it's not up to us.
|
|
83
|
-
if (value === null || typeof value === 'undefined') {
|
|
84
|
-
value = ClrSelectedState.UNSELECTED;
|
|
85
|
-
}
|
|
86
|
-
// We match booleans to the corresponding ClrSelectedState
|
|
87
|
-
if (typeof value === 'boolean') {
|
|
88
|
-
value = value ? ClrSelectedState.SELECTED : ClrSelectedState.UNSELECTED;
|
|
89
|
-
}
|
|
90
|
-
// We propagate only if the tree is in smart mode, and skip emitting the output when we set the input
|
|
91
|
-
// See https://github.com/vmware/clarity/issues/3073
|
|
92
|
-
this.skipEmitChange = true;
|
|
93
|
-
this._model.setSelected(value, this.featuresService.eager, this.featuresService.eager);
|
|
94
|
-
this.skipEmitChange = false;
|
|
95
|
-
}
|
|
96
|
-
// I'm caving on this, for tree nodes I think we can tolerate having a two-way binding on the component
|
|
97
|
-
// rather than enforce the clrIfExpanded structural directive for dynamic cases. Mostly because for the smart
|
|
98
|
-
// case, you can't use a structural directive, it would need to go on an ng-container.
|
|
99
|
-
get expanded() {
|
|
100
|
-
return this.expandService.expanded;
|
|
101
|
-
}
|
|
102
|
-
set expanded(value) {
|
|
103
|
-
this.expandService.expanded = value;
|
|
104
|
-
}
|
|
105
|
-
set clrForTypeAhead(value) {
|
|
106
|
-
this._model.textContent = trimAndLowerCase(value || this.elementRef.nativeElement.textContent);
|
|
107
|
-
}
|
|
108
|
-
get ariaSelected() {
|
|
109
|
-
if (this.isSelectable()) {
|
|
110
|
-
return this._model.selected.value === ClrSelectedState.SELECTED;
|
|
111
|
-
}
|
|
112
|
-
else if (this.treeNodeLink?.active) {
|
|
113
|
-
return true;
|
|
114
|
-
}
|
|
115
|
-
else {
|
|
116
|
-
return null;
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
get treeNodeLink() {
|
|
120
|
-
return this.treeNodeLinkList && this.treeNodeLinkList.first;
|
|
121
|
-
}
|
|
122
|
-
get isParent() {
|
|
123
|
-
return this._model.children && this._model.children.length > 0;
|
|
124
|
-
}
|
|
125
|
-
ngOnInit() {
|
|
126
|
-
this._model.expanded = this.expanded;
|
|
127
|
-
this._model.disabled = this.disabled;
|
|
128
|
-
this.subscriptions.push(this._model.selected.pipe(filter(() => !this.skipEmitChange)).subscribe(value => {
|
|
129
|
-
this.selectedChange.emit(value);
|
|
130
|
-
}));
|
|
131
|
-
this.subscriptions.push(this.expandService.expandChange.subscribe(value => {
|
|
132
|
-
this.expandedChange.emit(value);
|
|
133
|
-
this._model.expanded = value;
|
|
134
|
-
}));
|
|
135
|
-
this.subscriptions.push(this.focusManager.focusRequest.subscribe(nodeId => {
|
|
136
|
-
if (this.nodeId === nodeId) {
|
|
137
|
-
this.focusTreeNode();
|
|
138
|
-
}
|
|
139
|
-
}), this.focusManager.focusChange.subscribe(nodeId => {
|
|
140
|
-
this.checkTabIndex(nodeId);
|
|
141
|
-
}));
|
|
142
|
-
this.subscriptions.push(this._model.loading$.pipe(debounceTime(0)).subscribe(isLoading => (this.isModelLoading = isLoading)));
|
|
143
|
-
}
|
|
144
|
-
ngAfterContentInit() {
|
|
145
|
-
this.subscriptions.push(this.typeAheadKeyEvent.pipe(debounceTime(TREE_TYPE_AHEAD_TIMEOUT)).subscribe((bufferedKeys) => {
|
|
146
|
-
this.focusManager.focusNodeStartsWith(bufferedKeys, this._model);
|
|
147
|
-
// reset once bufferedKeys are used
|
|
148
|
-
this.typeAheadKeyBuffer = '';
|
|
149
|
-
}));
|
|
150
|
-
}
|
|
151
|
-
ngAfterViewInit() {
|
|
152
|
-
if (!this._model.textContent) {
|
|
153
|
-
this._model.textContent = trimAndLowerCase(this.elementRef.nativeElement.textContent);
|
|
154
|
-
}
|
|
155
|
-
}
|
|
156
|
-
ngOnDestroy() {
|
|
157
|
-
this._model.destroy();
|
|
158
|
-
this.subscriptions.forEach(sub => sub.unsubscribe());
|
|
159
|
-
}
|
|
160
|
-
isExpandable() {
|
|
161
|
-
if (typeof this.expandable !== 'undefined') {
|
|
162
|
-
return this.expandable;
|
|
163
|
-
}
|
|
164
|
-
return !!this.expandService.expandable || this.isParent;
|
|
165
|
-
}
|
|
166
|
-
isSelectable() {
|
|
167
|
-
return this.featuresService.selectable;
|
|
168
|
-
}
|
|
169
|
-
focusTreeNode() {
|
|
170
|
-
const containerEl = this.contentContainer.nativeElement;
|
|
171
|
-
if (isPlatformBrowser(this.platformId) && document.activeElement !== containerEl) {
|
|
172
|
-
this.setTabIndex(0);
|
|
173
|
-
containerEl.focus();
|
|
174
|
-
containerEl.scrollIntoView({ block: 'nearest', inline: 'nearest' });
|
|
175
|
-
}
|
|
176
|
-
}
|
|
177
|
-
broadcastFocusOnContainer() {
|
|
178
|
-
this.focusManager.broadcastFocusedNode(this.nodeId);
|
|
179
|
-
}
|
|
180
|
-
onKeyDown(event) {
|
|
181
|
-
// Two reasons to prevent default behavior:
|
|
182
|
-
// 1. to prevent scrolling on arrow keys
|
|
183
|
-
// 2. Assistive Technology focus differs from Keyboard focus behavior.
|
|
184
|
-
// By default, pressing arrow key makes AT focus go into the nested content of the item.
|
|
185
|
-
preventArrowKeyScroll(event);
|
|
186
|
-
// https://www.w3.org/TR/wai-aria-practices-1.1/#keyboard-interaction-22
|
|
187
|
-
switch (normalizeKey(event.key)) {
|
|
188
|
-
case Keys.ArrowUp:
|
|
189
|
-
this.focusManager.focusNodeAbove(this._model);
|
|
190
|
-
break;
|
|
191
|
-
case Keys.ArrowDown:
|
|
192
|
-
this.focusManager.focusNodeBelow(this._model);
|
|
193
|
-
break;
|
|
194
|
-
case Keys.ArrowRight:
|
|
195
|
-
this.expandOrFocusFirstChild();
|
|
196
|
-
break;
|
|
197
|
-
case Keys.ArrowLeft:
|
|
198
|
-
this.collapseOrFocusParent();
|
|
199
|
-
break;
|
|
200
|
-
case Keys.Home:
|
|
201
|
-
event.preventDefault();
|
|
202
|
-
this.focusManager.focusFirstVisibleNode();
|
|
203
|
-
break;
|
|
204
|
-
case Keys.End:
|
|
205
|
-
event.preventDefault();
|
|
206
|
-
this.focusManager.focusLastVisibleNode();
|
|
207
|
-
break;
|
|
208
|
-
case Keys.Enter:
|
|
209
|
-
this.toggleExpandOrTriggerDefault();
|
|
210
|
-
break;
|
|
211
|
-
case Keys.Space:
|
|
212
|
-
case Keys.Spacebar:
|
|
213
|
-
// to prevent scrolling on space key in this specific case
|
|
214
|
-
event.preventDefault();
|
|
215
|
-
this.toggleExpandOrTriggerDefault();
|
|
216
|
-
break;
|
|
217
|
-
default:
|
|
218
|
-
if (this._model.textContent && isKeyEitherLetterOrNumber(event)) {
|
|
219
|
-
this.typeAheadKeyBuffer += event.key;
|
|
220
|
-
this.typeAheadKeyEvent.next(this.typeAheadKeyBuffer);
|
|
221
|
-
return;
|
|
222
|
-
}
|
|
223
|
-
break;
|
|
224
|
-
}
|
|
225
|
-
// if non-letter keys are pressed, do reset.
|
|
226
|
-
this.typeAheadKeyBuffer = '';
|
|
227
|
-
}
|
|
228
|
-
setTabIndex(value) {
|
|
229
|
-
this.contentContainerTabindex = value;
|
|
230
|
-
this.contentContainer.nativeElement.setAttribute('tabindex', value.toString());
|
|
231
|
-
}
|
|
232
|
-
checkTabIndex(nodeId) {
|
|
233
|
-
if (isPlatformBrowser(this.platformId) && this.nodeId !== nodeId && this.contentContainerTabindex !== -1) {
|
|
234
|
-
this.setTabIndex(-1);
|
|
235
|
-
}
|
|
236
|
-
}
|
|
237
|
-
toggleExpandOrTriggerDefault() {
|
|
238
|
-
if (this.disabled) {
|
|
239
|
-
return;
|
|
240
|
-
}
|
|
241
|
-
if (this.isExpandable() && !this.isSelectable()) {
|
|
242
|
-
this.expandService.expanded = !this.expanded;
|
|
243
|
-
}
|
|
244
|
-
else {
|
|
245
|
-
this.triggerDefaultAction();
|
|
246
|
-
}
|
|
247
|
-
}
|
|
248
|
-
expandOrFocusFirstChild() {
|
|
249
|
-
if (this.disabled) {
|
|
250
|
-
return;
|
|
251
|
-
}
|
|
252
|
-
if (this.expanded) {
|
|
253
|
-
// if the node is already expanded and has children, focus its very first child
|
|
254
|
-
if (this.isParent) {
|
|
255
|
-
this.focusManager.focusNodeBelow(this._model);
|
|
256
|
-
}
|
|
257
|
-
}
|
|
258
|
-
else {
|
|
259
|
-
// we must check if the node is expandable, in order to set .expanded to true from false
|
|
260
|
-
// because we shouldn't set .expanded to true if it's not expandable node
|
|
261
|
-
if (this.isExpandable()) {
|
|
262
|
-
this.expandService.expanded = true;
|
|
263
|
-
}
|
|
264
|
-
}
|
|
265
|
-
}
|
|
266
|
-
collapseOrFocusParent() {
|
|
267
|
-
if (this.disabled) {
|
|
268
|
-
return;
|
|
269
|
-
}
|
|
270
|
-
if (this.expanded) {
|
|
271
|
-
this.expandService.expanded = false;
|
|
272
|
-
}
|
|
273
|
-
else {
|
|
274
|
-
this.focusManager.focusParent(this._model);
|
|
275
|
-
}
|
|
276
|
-
}
|
|
277
|
-
triggerDefaultAction() {
|
|
278
|
-
if (this.treeNodeLink) {
|
|
279
|
-
this.treeNodeLink.activate();
|
|
280
|
-
}
|
|
281
|
-
else {
|
|
282
|
-
if (this.isSelectable()) {
|
|
283
|
-
this._model.toggleSelection(this.featuresService.eager);
|
|
284
|
-
}
|
|
285
|
-
}
|
|
286
|
-
}
|
|
287
|
-
}
|
|
288
|
-
ClrTreeNode.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ClrTreeNode, deps: [{ token: PLATFORM_ID }, { token: ClrTreeNode, optional: true, skipSelf: true }, { token: i1.TreeFeaturesService }, { token: i2.IfExpandService }, { token: i3.ClrCommonStringsService }, { token: i4.TreeFocusManagerService }, { token: i0.ElementRef }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
289
|
-
ClrTreeNode.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: ClrTreeNode, selector: "clr-tree-node", inputs: { expandable: ["clrExpandable", "expandable"], disabled: ["clrDisabled", "disabled"], selected: ["clrSelected", "selected"], expanded: ["clrExpanded", "expanded"], clrForTypeAhead: "clrForTypeAhead" }, outputs: { selectedChange: "clrSelectedChange", expandedChange: "clrExpandedChange" }, host: { properties: { "class.clr-tree-node": "true", "class.disabled": "this._model.disabled" } }, providers: [TREE_FEATURES_PROVIDER, IfExpandService, { provide: LoadingListener, useExisting: IfExpandService }], queries: [{ propertyName: "treeNodeLinkList", predicate: ClrTreeNodeLink }], viewQueries: [{ propertyName: "contentContainer", first: true, predicate: ["contentContainer"], descendants: true, read: ElementRef, static: true }], ngImport: i0, template: "<!--\n ~ Copyright (c) 2016-2025 Broadcom. All Rights Reserved.\n ~ The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n ~ This software is released under MIT license.\n ~ The full license information can be found in LICENSE in the root directory of this project.\n -->\n\n<div\n #contentContainer\n role=\"treeitem\"\n class=\"clr-tree-node-content-container\"\n tabindex=\"-1\"\n [class.clr-form-control-disabled]=\"disabled\"\n [attr.aria-disabled]=\"disabled\"\n [attr.aria-expanded]=\"isExpandable() ? expanded : null\"\n [attr.aria-selected]=\"ariaSelected\"\n (keydown)=\"onKeyDown($event)\"\n (focus)=\"broadcastFocusOnContainer()\"\n>\n <button\n *ngIf=\"isExpandable() && !isModelLoading && !expandService.loading\"\n aria-hidden=\"true\"\n type=\"button\"\n tabindex=\"-1\"\n class=\"clr-treenode-caret\"\n (click)=\"expandService.toggle();\"\n (focus)=\"focusTreeNode()\"\n [disabled]=\"disabled\"\n >\n <cds-icon\n class=\"clr-treenode-caret-icon\"\n shape=\"angle\"\n [attr.direction]=\"expandService.expanded ? 'down' : 'right'\"\n ></cds-icon>\n </button>\n <div class=\"clr-treenode-spinner-container\" *ngIf=\"expandService.loading || isModelLoading\">\n <span class=\"clr-treenode-spinner spinner\"></span>\n </div>\n <div class=\"clr-checkbox-wrapper clr-treenode-checkbox\" *ngIf=\"featuresService.selectable\">\n <input\n aria-hidden=\"true\"\n type=\"checkbox\"\n [id]=\"nodeId + '-check'\"\n class=\"clr-checkbox\"\n [disabled]=\"disabled\"\n [checked]=\"_model.selected.value === STATES.SELECTED\"\n [indeterminate]=\"_model.selected.value === STATES.INDETERMINATE\"\n (change)=\"_model.toggleSelection(featuresService.eager)\"\n (focus)=\"focusTreeNode()\"\n tabindex=\"-1\"\n />\n <label [for]=\"nodeId + '-check'\" class=\"clr-control-label\">\n <ng-container [ngTemplateOutlet]=\"treenodeContent\"></ng-container>\n </label>\n </div>\n <div class=\"clr-treenode-content\" (mouseup)=\"focusTreeNode()\" *ngIf=\"!featuresService.selectable\">\n <ng-container [ngTemplateOutlet]=\"treenodeContent\"></ng-container>\n </div>\n\n <ng-template #treenodeContent>\n <ng-content></ng-content>\n <div class=\"clr-sr-only\" *ngIf=\"featuresService.selectable || ariaSelected\">\n <span> {{ariaSelected ? commonStrings.keys.selectedTreeNode : commonStrings.keys.unselectedTreeNode}}</span>\n </div>\n </ng-template>\n</div>\n<div\n class=\"clr-treenode-children\"\n [@toggleChildrenAnim]=\"expandService.expanded ? 'expanded' : 'collapsed'\"\n [attr.role]=\"isExpandable() && !featuresService.recursion ? 'group' : null\"\n>\n <ng-content select=\"clr-tree-node\"></ng-content>\n <ng-content select=\"[clrIfExpanded]\"></ng-content>\n <clr-recursive-children [parent]=\"_model\"></clr-recursive-children>\n</div>\n", dependencies: [{ kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i6.CdsIconCustomTag, selector: "cds-icon" }, { kind: "component", type: i7.RecursiveChildren, selector: "clr-recursive-children", inputs: ["parent", "children"] }], animations: [
|
|
290
|
-
trigger('toggleChildrenAnim', [
|
|
291
|
-
transition('collapsed => expanded', [style({ height: 0 }), animate(200, style({ height: '*' }))]),
|
|
292
|
-
transition('expanded => collapsed', [style({ height: '*' }), animate(200, style({ height: 0 }))]),
|
|
293
|
-
state('expanded', style({ height: '*', 'overflow-y': 'visible' })),
|
|
294
|
-
state('collapsed', style({ height: 0 })),
|
|
295
|
-
]),
|
|
296
|
-
] });
|
|
297
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ClrTreeNode, decorators: [{
|
|
298
|
-
type: Component,
|
|
299
|
-
args: [{ selector: 'clr-tree-node', providers: [TREE_FEATURES_PROVIDER, IfExpandService, { provide: LoadingListener, useExisting: IfExpandService }], animations: [
|
|
300
|
-
trigger('toggleChildrenAnim', [
|
|
301
|
-
transition('collapsed => expanded', [style({ height: 0 }), animate(200, style({ height: '*' }))]),
|
|
302
|
-
transition('expanded => collapsed', [style({ height: '*' }), animate(200, style({ height: 0 }))]),
|
|
303
|
-
state('expanded', style({ height: '*', 'overflow-y': 'visible' })),
|
|
304
|
-
state('collapsed', style({ height: 0 })),
|
|
305
|
-
]),
|
|
306
|
-
], host: {
|
|
307
|
-
'[class.clr-tree-node]': 'true',
|
|
308
|
-
'[class.disabled]': 'this._model.disabled',
|
|
309
|
-
}, template: "<!--\n ~ Copyright (c) 2016-2025 Broadcom. All Rights Reserved.\n ~ The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n ~ This software is released under MIT license.\n ~ The full license information can be found in LICENSE in the root directory of this project.\n -->\n\n<div\n #contentContainer\n role=\"treeitem\"\n class=\"clr-tree-node-content-container\"\n tabindex=\"-1\"\n [class.clr-form-control-disabled]=\"disabled\"\n [attr.aria-disabled]=\"disabled\"\n [attr.aria-expanded]=\"isExpandable() ? expanded : null\"\n [attr.aria-selected]=\"ariaSelected\"\n (keydown)=\"onKeyDown($event)\"\n (focus)=\"broadcastFocusOnContainer()\"\n>\n <button\n *ngIf=\"isExpandable() && !isModelLoading && !expandService.loading\"\n aria-hidden=\"true\"\n type=\"button\"\n tabindex=\"-1\"\n class=\"clr-treenode-caret\"\n (click)=\"expandService.toggle();\"\n (focus)=\"focusTreeNode()\"\n [disabled]=\"disabled\"\n >\n <cds-icon\n class=\"clr-treenode-caret-icon\"\n shape=\"angle\"\n [attr.direction]=\"expandService.expanded ? 'down' : 'right'\"\n ></cds-icon>\n </button>\n <div class=\"clr-treenode-spinner-container\" *ngIf=\"expandService.loading || isModelLoading\">\n <span class=\"clr-treenode-spinner spinner\"></span>\n </div>\n <div class=\"clr-checkbox-wrapper clr-treenode-checkbox\" *ngIf=\"featuresService.selectable\">\n <input\n aria-hidden=\"true\"\n type=\"checkbox\"\n [id]=\"nodeId + '-check'\"\n class=\"clr-checkbox\"\n [disabled]=\"disabled\"\n [checked]=\"_model.selected.value === STATES.SELECTED\"\n [indeterminate]=\"_model.selected.value === STATES.INDETERMINATE\"\n (change)=\"_model.toggleSelection(featuresService.eager)\"\n (focus)=\"focusTreeNode()\"\n tabindex=\"-1\"\n />\n <label [for]=\"nodeId + '-check'\" class=\"clr-control-label\">\n <ng-container [ngTemplateOutlet]=\"treenodeContent\"></ng-container>\n </label>\n </div>\n <div class=\"clr-treenode-content\" (mouseup)=\"focusTreeNode()\" *ngIf=\"!featuresService.selectable\">\n <ng-container [ngTemplateOutlet]=\"treenodeContent\"></ng-container>\n </div>\n\n <ng-template #treenodeContent>\n <ng-content></ng-content>\n <div class=\"clr-sr-only\" *ngIf=\"featuresService.selectable || ariaSelected\">\n <span> {{ariaSelected ? commonStrings.keys.selectedTreeNode : commonStrings.keys.unselectedTreeNode}}</span>\n </div>\n </ng-template>\n</div>\n<div\n class=\"clr-treenode-children\"\n [@toggleChildrenAnim]=\"expandService.expanded ? 'expanded' : 'collapsed'\"\n [attr.role]=\"isExpandable() && !featuresService.recursion ? 'group' : null\"\n>\n <ng-content select=\"clr-tree-node\"></ng-content>\n <ng-content select=\"[clrIfExpanded]\"></ng-content>\n <clr-recursive-children [parent]=\"_model\"></clr-recursive-children>\n</div>\n" }]
|
|
310
|
-
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
311
|
-
type: Inject,
|
|
312
|
-
args: [PLATFORM_ID]
|
|
313
|
-
}] }, { type: ClrTreeNode, decorators: [{
|
|
314
|
-
type: Optional
|
|
315
|
-
}, {
|
|
316
|
-
type: SkipSelf
|
|
317
|
-
}] }, { type: i1.TreeFeaturesService }, { type: i2.IfExpandService }, { type: i3.ClrCommonStringsService }, { type: i4.TreeFocusManagerService }, { type: i0.ElementRef }, { type: i0.Injector }]; }, propDecorators: { expandable: [{
|
|
318
|
-
type: Input,
|
|
319
|
-
args: ['clrExpandable']
|
|
320
|
-
}], selectedChange: [{
|
|
321
|
-
type: Output,
|
|
322
|
-
args: ['clrSelectedChange']
|
|
323
|
-
}], expandedChange: [{
|
|
324
|
-
type: Output,
|
|
325
|
-
args: ['clrExpandedChange']
|
|
326
|
-
}], contentContainer: [{
|
|
327
|
-
type: ViewChild,
|
|
328
|
-
args: ['contentContainer', { read: ElementRef, static: true }]
|
|
329
|
-
}], treeNodeLinkList: [{
|
|
330
|
-
type: ContentChildren,
|
|
331
|
-
args: [ClrTreeNodeLink, { descendants: false }]
|
|
332
|
-
}], disabled: [{
|
|
333
|
-
type: Input,
|
|
334
|
-
args: ['clrDisabled']
|
|
335
|
-
}], selected: [{
|
|
336
|
-
type: Input,
|
|
337
|
-
args: ['clrSelected']
|
|
338
|
-
}], expanded: [{
|
|
339
|
-
type: Input,
|
|
340
|
-
args: ['clrExpanded']
|
|
341
|
-
}], clrForTypeAhead: [{
|
|
342
|
-
type: Input,
|
|
343
|
-
args: ['clrForTypeAhead']
|
|
344
|
-
}] } });
|
|
345
|
-
function trimAndLowerCase(value) {
|
|
346
|
-
return value.toLocaleLowerCase().trim();
|
|
347
|
-
}
|
|
348
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS1ub2RlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci9zcmMvZGF0YS90cmVlLXZpZXcvdHJlZS1ub2RlLnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci9zcmMvZGF0YS90cmVlLXZpZXcvdHJlZS1ub2RlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7O0dBS0c7QUFFSCxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2pGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3BELE9BQU8sRUFHTCxTQUFTLEVBQ1QsZUFBZSxFQUNmLFVBQVUsRUFDVixZQUFZLEVBQ1osTUFBTSxFQUVOLEtBQUssRUFHTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLFdBQVcsRUFFWCxRQUFRLEVBQ1IsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxPQUFPLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQzdDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFdEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNuRCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsWUFBWSxFQUFFLHFCQUFxQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFFbEgsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUN2RSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUNoRixPQUFPLEVBQUUsZ0JB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R0FBRyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDOzRCQUNsRSxLQUFLLENBQUMsV0FBVyxFQUFFLEtBQUssQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO3lCQUN6QyxDQUFDO3FCQUNILFFBQ0s7d0JBQ0osdUJBQXVCLEVBQUUsTUFBTTt3QkFDL0Isa0JBQWtCLEVBQUUsc0JBQXNCO3FCQUMzQzs7MEJBNEJFLE1BQU07MkJBQUMsV0FBVzs7MEJBQ2xCLFFBQVE7OzBCQUNSLFFBQVE7d09BekJhLFVBQVU7c0JBQWpDLEtBQUs7dUJBQUMsZUFBZTtnQkFFTyxjQUFjO3NCQUExQyxNQUFNO3VCQUFDLG1CQUFtQjtnQkFDRSxjQUFjO3NCQUExQyxNQUFNO3VCQUFDLG1CQUFtQjtnQkFhZ0QsZ0JBQWdCO3NCQUExRixTQUFTO3VCQUFDLGtCQUFrQixFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUlDLGdCQUFnQjtzQkFBakYsZUFBZTt1QkFBQyxlQUFlLEVBQUUsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFO2dCQWlDcEQsUUFBUTtzQkFEWCxLQUFLO3VCQUFDLGFBQWE7Z0JBU2hCLFFBQVE7c0JBRFgsS0FBSzt1QkFBQyxhQUFhO2dCQTBCaEIsUUFBUTtzQkFEWCxLQUFLO3VCQUFDLGFBQWE7Z0JBU2hCLGVBQWU7c0JBRGxCLEtBQUs7dUJBQUMsaUJBQWlCOztBQXNOMUIsU0FBUyxnQkFBZ0IsQ0FBQyxLQUFhO0lBQ3JDLE9BQU8sS0FBSyxDQUFDLGlCQUFpQixFQUFFLENBQUMsSUFBSSxFQUFFLENBQUM7QUFDMUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTYtMjAyNSBCcm9hZGNvbS4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqIFRoZSB0ZXJtIFwiQnJvYWRjb21cIiByZWZlcnMgdG8gQnJvYWRjb20gSW5jLiBhbmQvb3IgaXRzIHN1YnNpZGlhcmllcy5cbiAqIFRoaXMgc29mdHdhcmUgaXMgcmVsZWFzZWQgdW5kZXIgTUlUIGxpY2Vuc2UuXG4gKiBUaGUgZnVsbCBsaWNlbnNlIGluZm9ybWF0aW9uIGNhbiBiZSBmb3VuZCBpbiBMSUNFTlNFIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHByb2plY3QuXG4gKi9cblxuaW1wb3J0IHsgYW5pbWF0ZSwgc3RhdGUsIHN0eWxlLCB0cmFuc2l0aW9uLCB0cmlnZ2VyIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyBpc1BsYXRmb3JtQnJvd3NlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBBZnRlckNvbnRlbnRJbml0LFxuICBBZnRlclZpZXdJbml0LFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbmplY3QsXG4gIEluamVjdG9yLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIE9wdGlvbmFsLFxuICBPdXRwdXQsXG4gIFBMQVRGT1JNX0lELFxuICBRdWVyeUxpc3QsXG4gIFNraXBTZWxmLFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIGZpbHRlciB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgSWZFeHBhbmRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vdXRpbHMvY29uZGl0aW9uYWwvaWYtZXhwYW5kZWQuc2VydmljZSc7XG5pbXBvcnQgeyBLZXlzIH0gZnJvbSAnLi4vLi4vdXRpbHMvZW51bXMva2V5cy5lbnVtJztcbmltcG9ydCB7IGlzS2V5RWl0aGVyTGV0dGVyT3JOdW1iZXIsIG5vcm1hbGl6ZUtleSwgcHJldmVudEFycm93S2V5U2Nyb2xsIH0gZnJvbSAnLi4vLi4vdXRpbHMvZm9jdXMva2V5LWZvY3VzL3V0aWwnO1xuaW1wb3J0IHsgQ2xyQ29tbW9uU3RyaW5nc1NlcnZpY2UgfSBmcm9tICcuLi8uLi91dGlscy9pMThuL2NvbW1vbi1zdHJpbmdzLnNlcnZpY2UnO1xuaW1wb3J0IHsgdW5pcXVlSWRGYWN0b3J5IH0gZnJvbSAnLi4vLi4vdXRpbHMvaWQtZ2VuZXJhdG9yL2lkLWdlbmVyYXRvci5zZXJ2aWNlJztcbmltcG9ydCB7IExvYWRpbmdMaXN0ZW5lciB9IGZyb20gJy4uLy4uL3V0aWxzL2xvYWRpbmcvbG9hZGluZy1saXN0ZW5lcic7XG5pbXBvcnQgeyBEZWNsYXJhdGl2ZVRyZWVOb2RlTW9kZWwgfSBmcm9tICcuL21vZGVscy9kZWNsYXJhdGl2ZS10cmVlLW5vZGUubW9kZWwnO1xuaW1wb3J0IHsgQ2xyU2VsZWN0ZWRTdGF0ZSB9IGZyb20gJy4vbW9kZWxzL3NlbGVjdGVkLXN0YXRlLmVudW0nO1xuaW1wb3J0IHsgVHJlZU5vZGVNb2RlbCB9IGZyb20gJy4vbW9kZWxzL3RyZWUtbm9kZS5tb2RlbCc7XG5pbXBvcnQgeyBUUkVFX0ZFQVRVUkVTX1BST1ZJREVSLCBUcmVlRmVhdHVyZXNTZXJ2aWNlIH0gZnJvbSAnLi90cmVlLWZlYXR1cmVzLnNlcnZpY2UnO1xuaW1wb3J0IHsgVHJlZUZvY3VzTWFuYWdlclNlcnZpY2UgfSBmcm9tICcuL3RyZWUtZm9jdXMtbWFuYWdlci5zZXJ2aWNlJztcbmltcG9ydCB7IENsclRyZWVOb2RlTGluayB9IGZyb20gJy4vdHJlZS1ub2RlLWxpbmsnO1xuXG5jb25zdCBMVklFV19DT05URVhUX0lOREVYID0gODtcblxuLy8gSWYgdGhlIHVzZXIgdHlwZXMgbXVsdGlwbGUga2V5cyB3aXRob3V0IGFsbG93aW5nIDIwMG1zIHRvIHBhc3MgYmV0d2VlbiB0aGVtLFxuLy8gdGhlbiB0aG9zZSBrZXlzIGFyZSBzZW50IHRvZ2V0aGVyIGluIG9uZSByZXF1ZXN0LlxuY29uc3QgVFJFRV9UWVBFX0FIRUFEX1RJTUVPVVQgPSAyMDA7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Nsci10cmVlLW5vZGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vdHJlZS1ub2RlLmh0bWwnLFxuICBwcm92aWRlcnM6IFtUUkVFX0ZFQVRVUkVTX1BST1ZJREVSLCBJZkV4cGFuZFNlcnZpY2UsIHsgcHJvdmlkZTogTG9hZGluZ0xpc3RlbmVyLCB1c2VFeGlzdGluZzogSWZFeHBhbmRTZXJ2aWNlIH1dLFxuICBhbmltYXRpb25zOiBbXG4gICAgdHJpZ2dlcigndG9nZ2xlQ2hpbGRyZW5BbmltJywgW1xuICAgICAgdHJhbnNpdGlvbignY29sbGFwc2VkID0+IGV4cGFuZGVkJywgW3N0eWxlKHsgaGVpZ2h0OiAwIH0pLCBhbmltYXRlKDIwMCwgc3R5bGUoeyBoZWlnaHQ6ICcqJyB9KSldKSxcbiAgICAgIHRyYW5zaXRpb24oJ2V4cGFuZGVkID0+IGNvbGxhcHNlZCcsIFtzdHlsZSh7IGhlaWdodDogJyonIH0pLCBhbmltYXRlKDIwMCwgc3R5bGUoeyBoZWlnaHQ6IDAgfSkpXSksXG4gICAgICBzdGF0ZSgnZXhwYW5kZWQnLCBzdHlsZSh7IGhlaWdodDogJyonLCAnb3ZlcmZsb3cteSc6ICd2aXNpYmxlJyB9KSksXG4gICAgICBzdGF0ZSgnY29sbGFwc2VkJywgc3R5bGUoeyBoZWlnaHQ6IDAgfSkpLFxuICAgIF0pLFxuICBdLFxuICBob3N0OiB7XG4gICAgJ1tjbGFzcy5jbHItdHJlZS1ub2RlXSc6ICd0cnVlJyxcbiAgICAnW2NsYXNzLmRpc2FibGVkXSc6ICd0aGlzLl9tb2RlbC5kaXNhYmxlZCcsXG4gIH0sXG59KVxuZXhwb3J0IGNsYXNzIENsclRyZWVOb2RlPFQ+IGltcGxlbWVudHMgT25Jbml0LCBBZnRlckNvbnRlbnRJbml0LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICAvLyBBbGxvd3MgdGhlIGNvbnN1bWVyIHRvIG92ZXJyaWRlIG91ciBsb2dpYyBkZWNpZGluZyBpZiBhIG5vZGUgaXMgZXhwYW5kYWJsZS5cbiAgLy8gVXNlZnVsIGZvciByZWN1cnNpdmUgdHJlZXMgdGhhdCBkb24ndCB3YW50IHRvIHByZS1sb2FkIG9uZSBsZXZlbCBhaGVhZCBqdXN0IHRvIGtub3cgd2hpY2ggbm9kZXMgYXJlIGV4cGFuZGFibGUuXG4gIEBJbnB1dCgnY2xyRXhwYW5kYWJsZScpIGV4cGFuZGFibGU6IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG5cbiAgQE91dHB1dCgnY2xyU2VsZWN0ZWRDaGFuZ2UnKSBzZWxlY3RlZENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Q2xyU2VsZWN0ZWRTdGF0ZT4oZmFsc2UpO1xuICBAT3V0cHV0KCdjbHJFeHBhbmRlZENoYW5nZScpIGV4cGFuZGVkQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gIFNUQVRFUyA9IENsclNlbGVjdGVkU3RhdGU7XG4gIGlzTW9kZWxMb2FkaW5nID0gZmFsc2U7XG4gIG5vZGVJZCA9IHVuaXF1ZUlkRmFjdG9yeSgpO1xuICBjb250ZW50Q29udGFpbmVyVGFiaW5kZXggPSAtMTtcbiAgX21vZGVsOiBUcmVlTm9kZU1vZGVsPFQ+O1xuXG4gIHByaXZhdGUgc2tpcEVtaXRDaGFuZ2UgPSBmYWxzZTtcbiAgcHJpdmF0ZSB0eXBlQWhlYWRLZXlCdWZmZXIgPSAnJztcbiAgcHJpdmF0ZSB0eXBlQWhlYWRLZXlFdmVudCA9IG5ldyBTdWJqZWN0PHN0cmluZz4oKTtcbiAgcHJpdmF0ZSBzdWJzY3JpcHRpb25zOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xuXG4gIEBWaWV3Q2hpbGQoJ2NvbnRlbnRDb250YWluZXInLCB7IHJlYWQ6IEVsZW1lbnRSZWYsIHN0YXRpYzogdHJ1ZSB9KSBwcml2YXRlIGNvbnRlbnRDb250YWluZXI6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gIC8vIEBDb250ZW50Q2hpbGQgd291bGQgaGF2ZSBiZWVuIG1vcmUgc3VjY2luY3RcbiAgLy8gYnV0IGl0IGRvZXNuJ3Qgb2ZmZXIgYSB3YXkgdG8gcXVlcnkgb25seSBhbiBpbW1lZGlhdGUgY2hpbGRcbiAgQENvbnRlbnRDaGlsZHJlbihDbHJUcmVlTm9kZUxpbmssIHsgZGVzY2VuZGFudHM6IGZhbHNlIH0pIHByaXZhdGUgdHJlZU5vZGVMaW5rTGlzdDogUXVlcnlMaXN0PENsclRyZWVOb2RlTGluaz47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQEluamVjdChQTEFURk9STV9JRCkgcHJpdmF0ZSBwbGF0Zm9ybUlkOiBhbnksXG4gICAgQE9wdGlvbmFsKClcbiAgICBAU2tpcFNlbGYoKVxuICAgIHBhcmVudDogQ2xyVHJlZU5vZGU8VD4sXG4gICAgcHVibGljIGZlYXR1cmVzU2VydmljZTogVHJlZUZlYXR1cmVzU2VydmljZTxUPixcbiAgICBwdWJsaWMgZXhwYW5kU2VydmljZTogSWZFeHBhbmRTZXJ2aWNlLFxuICAgIHB1YmxpYyBjb21tb25TdHJpbmdzOiBDbHJDb21tb25TdHJpbmdzU2VydmljZSxcbiAgICBwcml2YXRlIGZvY3VzTWFuYWdlcjogVHJlZUZvY3VzTWFuYWdlclNlcnZpY2U8VD4sXG4gICAgcHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICBpbmplY3RvcjogSW5qZWN0b3JcbiAgKSB7XG4gICAgaWYgKGZlYXR1cmVzU2VydmljZS5yZWN1cnNpb24pIHtcbiAgICAgIC8vIEknbSBjb21wbGV0ZWx5IHN0dWNrLCB3ZSBoYXZlIHRvIGhhY2sgaW50byBwcml2YXRlIHByb3BlcnRpZXMgdW50aWwgZWl0aGVyXG4gICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL2lzc3Vlcy8xNDkzNSBvciBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL2lzc3Vlcy8xNTk5OFxuICAgICAgLy8gYXJlIGZpeGVkXG4gICAgICAvLyBUaGlzIGlzIGZvciBub24taXZ5IGltcGxlbWVudGF0aW9uc1xuICAgICAgaWYgKChpbmplY3RvciBhcyBhbnkpLnZpZXcpIHtcbiAgICAgICAgdGhpcy5fbW9kZWwgPSAoaW5qZWN0b3IgYXMgYW55KS52aWV3LmNvbnRleHQuY2xyTW9kZWw7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBJdnkgcHV0cyB0aGlzIG9uIGEgc3BlY2lmaWMgaW5kZXggb2YgYSBfbFZpZXcgcHJvcGVydHlcbiAgICAgICAgdGhpcy5fbW9kZWwgPSAoaW5qZWN0b3IgYXMgYW55KS5fbFZpZXdbTFZJRVdfQ09OVEVYVF9JTkRFWF0uY2xyTW9kZWw7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIEZvcmNlIGNhc3QgZm9yIG5vdywgbm90IHN1cmUgaG93IHRvIHRpZSB0aGUgY29ycmVjdCB0eXBlIGhlcmUgdG8gZmVhdHVyZXNTZXJ2aWNlLnJlY3Vyc2lvblxuICAgICAgdGhpcy5fbW9kZWwgPSBuZXcgRGVjbGFyYXRpdmVUcmVlTm9kZU1vZGVsKHBhcmVudCA/IChwYXJlbnQuX21vZGVsIGFzIERlY2xhcmF0aXZlVHJlZU5vZGVNb2RlbDxUPikgOiBudWxsKTtcbiAgICB9XG4gICAgdGhpcy5fbW9kZWwubm9kZUlkID0gdGhpcy5ub2RlSWQ7XG4gIH1cblxuICBASW5wdXQoJ2NsckRpc2FibGVkJylcbiAgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9tb2RlbC5kaXNhYmxlZDtcbiAgfVxuICBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9tb2RlbC5kaXNhYmxlZCA9IHZhbHVlO1xuICB9XG5cbiAgQElucHV0KCdjbHJTZWxlY3RlZCcpXG4gIGdldCBzZWxlY3RlZCgpOiBDbHJTZWxlY3RlZFN0YXRlIHwgYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX21vZGVsLnNlbGVjdGVkLnZhbHVlO1xuICB9XG4gIHNldCBzZWxlY3RlZCh2YWx1ZTogQ2xyU2VsZWN0ZWRTdGF0ZSB8IGJvb2xlYW4pIHtcbiAgICB0aGlzLmZlYXR1cmVzU2VydmljZS5zZWxlY3RhYmxlID0gdHJ1ZTtcbiAgICAvLyBHcmFjZWZ1bGx5IGhhbmRsZSBmYWxzeSBzdGF0ZXMgbGlrZSBudWxsIG9yIHVuZGVmaW5lZCBiZWNhdXNlIGl0J3MganVzdCBlYXNpZXIgdGhhbiBhbnN3ZXJpbmcgcXVlc3Rpb25zLlxuICAgIC8vIFRoaXMgc2hvdWxkbid0IGhhcHBlbiB3aXRoIHN0cmljdCB0eXBpbmcgb24gdGhlIGFwcCdzIHNpZGUsIGJ1dCBpdCdzIG5vdCB1cCB0byB1cy5cbiAgICBpZiAodmFsdWUgPT09IG51bGwgfHwgdHlwZW9mIHZhbHVlID09PSAndW5kZWZpbmVkJykge1xuICAgICAgdmFsdWUgPSBDbHJTZWxlY3RlZFN0YXRlLlVOU0VMRUNURUQ7XG4gICAgfVxuICAgIC8vIFdlIG1hdGNoIGJvb2xlYW5zIHRvIHRoZSBjb3JyZXNwb25kaW5nIENsclNlbGVjdGVkU3RhdGVcbiAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnYm9vbGVhbicpIHtcbiAgICAgIHZhbHVlID0gdmFsdWUgPyBDbHJTZWxlY3RlZFN0YXRlLlNFTEVDVEVEIDogQ2xyU2VsZWN0ZWRTdGF0ZS5VTlNFTEVDVEVEO1xuICAgIH1cbiAgICAvLyBXZSBwcm9wYWdhdGUgb25seSBpZiB0aGUgdHJlZSBpcyBpbiBzbWFydCBtb2RlLCBhbmQgc2tpcCBlbWl0dGluZyB0aGUgb3V0cHV0IHdoZW4gd2Ugc2V0IHRoZSBpbnB1dFxuICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdm13YXJlL2NsYXJpdHkvaXNzdWVzLzMwNzNcbiAgICB0aGlzLnNraXBFbWl0Q2hhbmdlID0gdHJ1ZTtcbiAgICB0aGlzLl9tb2RlbC5zZXRTZWxlY3RlZCh2YWx1ZSwgdGhpcy5mZWF0dXJlc1NlcnZpY2UuZWFnZXIsIHRoaXMuZmVhdHVyZXNTZXJ2aWNlLmVhZ2VyKTtcbiAgICB0aGlzLnNraXBFbWl0Q2hhbmdlID0gZmFsc2U7XG4gIH1cblxuICAvLyBJJ20gY2F2aW5nIG9uIHRoaXMsIGZvciB0cmVlIG5vZGVzIEkgdGhpbmsgd2UgY2FuIHRvbGVyYXRlIGhhdmluZyBhIHR3by13YXkgYmluZGluZyBvbiB0aGUgY29tcG9uZW50XG4gIC8vIHJhdGhlciB0aGFuIGVuZm9yY2UgdGhlIGNscklmRXhwYW5kZWQgc3RydWN0dXJhbCBkaXJlY3RpdmUgZm9yIGR5bmFtaWMgY2FzZXMuIE1vc3RseSBiZWNhdXNlIGZvciB0aGUgc21hcnRcbiAgLy8gY2FzZSwgeW91IGNhbid0IHVzZSBhIHN0cnVjdHVyYWwgZGlyZWN0aXZlLCBpdCB3b3VsZCBuZWVkIHRvIGdvIG9uIGFuIG5nLWNvbnRhaW5lci5cbiAgQElucHV0KCdjbHJFeHBhbmRlZCcpXG4gIGdldCBleHBhbmRlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5leHBhbmRTZXJ2aWNlLmV4cGFuZGVkO1xuICB9XG4gIHNldCBleHBhbmRlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuZXhwYW5kU2VydmljZS5leHBhbmRlZCA9IHZhbHVlO1xuICB9XG5cbiAgQElucHV0KCdjbHJGb3JUeXBlQWhlYWQnKVxuICBzZXQgY2xyRm9yVHlwZUFoZWFkKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9tb2RlbC50ZXh0Q29udGVudCA9IHRyaW1BbmRMb3dlckNhc2UodmFsdWUgfHwgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQudGV4dENvbnRlbnQpO1xuICB9XG5cbiAgZ2V0IGFyaWFTZWxlY3RlZCgpOiBib29sZWFuIHtcbiAgICBpZiAodGhpcy5pc1NlbGVjdGFibGUoKSkge1xuICAgICAgcmV0dXJuIHRoaXMuX21vZGVsLnNlbGVjdGVkLnZhbHVlID09PSBDbHJTZWxlY3RlZFN0YXRlLlNFTEVDVEVEO1xuICAgIH0gZWxzZSBpZiAodGhpcy50cmVlTm9kZUxpbms/LmFjdGl2ZSkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgfVxuXG4gIGdldCB0cmVlTm9kZUxpbmsoKSB7XG4gICAgcmV0dXJuIHRoaXMudHJlZU5vZGVMaW5rTGlzdCAmJiB0aGlzLnRyZWVOb2RlTGlua0xpc3QuZmlyc3Q7XG4gIH1cblxuICBwcml2YXRlIGdldCBpc1BhcmVudCgpIHtcbiAgICByZXR1cm4gdGhpcy5fbW9kZWwuY2hpbGRyZW4gJiYgdGhpcy5fbW9kZWwuY2hpbGRyZW4ubGVuZ3RoID4gMDtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuX21vZGVsLmV4cGFuZGVkID0gdGhpcy5leHBhbmRlZDtcbiAgICB0aGlzLl9tb2RlbC5kaXNhYmxlZCA9IHRoaXMuZGlzYWJsZWQ7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2goXG4gICAgICB0aGlzLl9tb2RlbC5zZWxlY3RlZC5waXBlKGZpbHRlcigoKSA9PiAhdGhpcy5za2lwRW1pdENoYW5nZSkpLnN1YnNjcmliZSh2YWx1ZSA9PiB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRDaGFuZ2UuZW1pdCh2YWx1ZSk7XG4gICAgICB9KVxuICAgICk7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2goXG4gICAgICB0aGlzLmV4cGFuZFNlcnZpY2UuZXhwYW5kQ2hhbmdlLnN1YnNjcmliZSh2YWx1ZSA9PiB7XG4gICAgICAgIHRoaXMuZXhwYW5kZWRDaGFuZ2UuZW1pdCh2YWx1ZSk7XG4gICAgICAgIHRoaXMuX21vZGVsLmV4cGFuZGVkID0gdmFsdWU7XG4gICAgICB9KVxuICAgICk7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2goXG4gICAgICB0aGlzLmZvY3VzTWFuYWdlci5mb2N1c1JlcXVlc3Quc3Vic2NyaWJlKG5vZGVJZCA9PiB7XG4gICAgICAgIGlmICh0aGlzLm5vZGVJZCA9PT0gbm9kZUlkKSB7XG4gICAgICAgICAgdGhpcy5mb2N1c1RyZWVOb2RlKCk7XG4gICAgICAgIH1cbiAgICAgIH0pLFxuICAgICAgdGhpcy5mb2N1c01hbmFnZXIuZm9jdXNDaGFuZ2Uuc3Vic2NyaWJlKG5vZGVJZCA9PiB7XG4gICAgICAgIHRoaXMuY2hlY2tUYWJJbmRleChub2RlSWQpO1xuICAgICAgfSlcbiAgICApO1xuXG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2goXG4gICAgICB0aGlzLl9tb2RlbC5sb2FkaW5nJC5waXBlKGRlYm91bmNlVGltZSgwKSkuc3Vic2NyaWJlKGlzTG9hZGluZyA9PiAodGhpcy5pc01vZGVsTG9hZGluZyA9IGlzTG9hZGluZykpXG4gICAgKTtcbiAgfVxuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcbiAgICAgIHRoaXMudHlwZUFoZWFkS2V5RXZlbnQucGlwZShkZWJvdW5jZVRpbWUoVFJFRV9UWVBFX0FIRUFEX1RJTUVPVVQpKS5zdWJzY3JpYmUoKGJ1ZmZlcmVkS2V5czogc3RyaW5nKSA9PiB7XG4gICAgICAgIHRoaXMuZm9jdXNNYW5hZ2VyLmZvY3VzTm9kZVN0YXJ0c1dpdGgoYnVmZmVyZWRLZXlzLCB0aGlzLl9tb2RlbCk7XG4gICAgICAgIC8vIHJlc2V0IG9uY2UgYnVmZmVyZWRLZXlzIGFyZSB1c2VkXG4gICAgICAgIHRoaXMudHlwZUFoZWFkS2V5QnVmZmVyID0gJyc7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgaWYgKCF0aGlzLl9tb2RlbC50ZXh0Q29udGVudCkge1xuICAgICAgdGhpcy5fbW9kZWwudGV4dENvbnRlbnQgPSB0cmltQW5kTG93ZXJDYXNlKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnRleHRDb250ZW50KTtcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLl9tb2RlbC5kZXN0cm95KCk7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLmZvckVhY2goc3ViID0+IHN1Yi51bnN1YnNjcmliZSgpKTtcbiAgfVxuXG4gIGlzRXhwYW5kYWJsZSgpIHtcbiAgICBpZiAodHlwZW9mIHRoaXMuZXhwYW5kYWJsZSAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIHJldHVybiB0aGlzLmV4cGFuZGFibGU7XG4gICAgfVxuICAgIHJldHVybiAhIXRoaXMuZXhwYW5kU2VydmljZS5leHBhbmRhYmxlIHx8IHRoaXMuaXNQYXJlbnQ7XG4gIH1cblxuICBpc1NlbGVjdGFibGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuZmVhdHVyZXNTZXJ2aWNlLnNlbGVjdGFibGU7XG4gIH1cblxuICBmb2N1c1RyZWVOb2RlKCk6IHZvaWQge1xuICAgIGNvbnN0IGNvbnRhaW5lckVsID0gdGhpcy5jb250ZW50Q29udGFpbmVyLm5hdGl2ZUVsZW1lbnQ7XG4gICAgaWYgKGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkgJiYgZG9jdW1lbnQuYWN0aXZlRWxlbWVudCAhPT0gY29udGFpbmVyRWwpIHtcbiAgICAgIHRoaXMuc2V0VGFiSW5kZXgoMCk7XG4gICAgICBjb250YWluZXJFbC5mb2N1cygpO1xuICAgICAgY29udGFpbmVyRWwuc2Nyb2xsSW50b1ZpZXcoeyBibG9jazogJ25lYXJlc3QnLCBpbmxpbmU6ICduZWFyZXN0JyB9KTtcbiAgICB9XG4gIH1cblxuICBicm9hZGNhc3RGb2N1c09uQ29udGFpbmVyKCkge1xuICAgIHRoaXMuZm9jdXNNYW5hZ2VyLmJyb2FkY2FzdEZvY3VzZWROb2RlKHRoaXMubm9kZUlkKTtcbiAgfVxuXG4gIG9uS2V5RG93bihldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgIC8vIFR3byByZWFzb25zIHRvIHByZXZlbnQgZGVmYXVsdCBiZWhhdmlvcjpcbiAgICAvLyAxLiB0byBwcmV2ZW50IHNjcm9sbGluZyBvbiBhcnJvdyBrZXlzXG4gICAgLy8gMi4gQXNzaXN0aXZlIFRlY2hub2xvZ3kgZm9jdXMgZGlmZmVycyBmcm9tIEtleWJvYXJkIGZvY3VzIGJlaGF2aW9yLlxuICAgIC8vICAgIEJ5IGRlZmF1bHQsIHByZXNzaW5nIGFycm93IGtleSBtYWtlcyBBVCBmb2N1cyBnbyBpbnRvIHRoZSBuZXN0ZWQgY29udGVudCBvZiB0aGUgaXRlbS5cbiAgICBwcmV2ZW50QXJyb3dLZXlTY3JvbGwoZXZlbnQpO1xuXG4gICAgLy8gaHR0cHM6Ly93d3cudzMub3JnL1RSL3dhaS1hcmlhLXByYWN0aWNlcy0xLjEvI2tleWJvYXJkLWludGVyYWN0aW9uLTIyXG4gICAgc3dpdGNoIChub3JtYWxpemVLZXkoZXZlbnQua2V5KSkge1xuICAgICAgY2FzZSBLZXlzLkFycm93VXA6XG4gICAgICAgIHRoaXMuZm9jdXNNYW5hZ2VyLmZvY3VzTm9kZUFib3ZlKHRoaXMuX21vZGVsKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIEtleXMuQXJyb3dEb3duOlxuICAgICAgICB0aGlzLmZvY3VzTWFuYWdlci5mb2N1c05vZGVCZWxvdyh0aGlzLl9tb2RlbCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBLZXlzLkFycm93UmlnaHQ6XG4gICAgICAgIHRoaXMuZXhwYW5kT3JGb2N1c0ZpcnN0Q2hpbGQoKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIEtleXMuQXJyb3dMZWZ0OlxuICAgICAgICB0aGlzLmNvbGxhcHNlT3JGb2N1c1BhcmVudCgpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgS2V5cy5Ib21lOlxuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICB0aGlzLmZvY3VzTWFuYWdlci5mb2N1c0ZpcnN0VmlzaWJsZU5vZGUoKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIEtleXMuRW5kOlxuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICB0aGlzLmZvY3VzTWFuYWdlci5mb2N1c0xhc3RWaXNpYmxlTm9kZSgpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgS2V5cy5FbnRlcjpcbiAgICAgICAgdGhpcy50b2dnbGVFeHBhbmRPclRyaWdnZXJEZWZhdWx0KCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBLZXlzLlNwYWNlOlxuICAgICAgY2FzZSBLZXlzLlNwYWNlYmFyOlxuICAgICAgICAvLyB0byBwcmV2ZW50IHNjcm9sbGluZyBvbiBzcGFjZSBrZXkgaW4gdGhpcyBzcGVjaWZpYyBjYXNlXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIHRoaXMudG9nZ2xlRXhwYW5kT3JUcmlnZ2VyRGVmYXVsdCgpO1xuICAgICAgICBicmVhaztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIGlmICh0aGlzLl9tb2RlbC50ZXh0Q29udGVudCAmJiBpc0tleUVpdGhlckxldHRlck9yTnVtYmVyKGV2ZW50KSkge1xuICAgICAgICAgIHRoaXMudHlwZUFoZWFkS2V5QnVmZmVyICs9IGV2ZW50LmtleTtcbiAgICAgICAgICB0aGlzLnR5cGVBaGVhZEtleUV2ZW50Lm5leHQodGhpcy50eXBlQWhlYWRLZXlCdWZmZXIpO1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBicmVhaztcbiAgICB9XG5cbiAgICAvLyBpZiBub24tbGV0dGVyIGtleXMgYXJlIHByZXNzZWQsIGRvIHJlc2V0LlxuICAgIHRoaXMudHlwZUFoZWFkS2V5QnVmZmVyID0gJyc7XG4gIH1cblxuICBwcml2YXRlIHNldFRhYkluZGV4KHZhbHVlOiBudW1iZXIpIHtcbiAgICB0aGlzLmNvbnRlbnRDb250YWluZXJUYWJpbmRleCA9IHZhbHVlO1xuICAgIHRoaXMuY29udGVudENvbnRhaW5lci5uYXRpdmVFbGVtZW50LnNldEF0dHJpYnV0ZSgndGFiaW5kZXgnLCB2YWx1ZS50b1N0cmluZygpKTtcbiAgfVxuXG4gIHByaXZhdGUgY2hlY2tUYWJJbmRleChub2RlSWQ6IHN0cmluZyk6IHZvaWQge1xuICAgIGlmIChpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSWQpICYmIHRoaXMubm9kZUlkICE9PSBub2RlSWQgJiYgdGhpcy5jb250ZW50Q29udGFpbmVyVGFiaW5kZXggIT09IC0xKSB7XG4gICAgICB0aGlzLnNldFRhYkluZGV4KC0xKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHRvZ2dsZUV4cGFuZE9yVHJpZ2dlckRlZmF1bHQoKSB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5pc0V4cGFuZGFibGUoKSAmJiAhdGhpcy5pc1NlbGVjdGFibGUoKSkge1xuICAgICAgdGhpcy5leHBhbmRTZXJ2aWNlLmV4cGFuZGVkID0gIXRoaXMuZXhwYW5kZWQ7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudHJpZ2dlckRlZmF1bHRBY3Rpb24oKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGV4cGFuZE9yRm9jdXNGaXJzdENoaWxkKCkge1xuICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZXhwYW5kZWQpIHtcbiAgICAgIC8vIGlmIHRoZSBub2RlIGlzIGFscmVhZHkgZXhwYW5kZWQgYW5kIGhhcyBjaGlsZHJlbiwgZm9jdXMgaXRzIHZlcnkgZmlyc3QgY2hpbGRcbiAgICAgIGlmICh0aGlzLmlzUGFyZW50KSB7XG4gICAgICAgIHRoaXMuZm9jdXNNYW5hZ2VyLmZvY3VzTm9kZUJlbG93KHRoaXMuX21vZGVsKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgLy8gd2UgbXVzdCBjaGVjayBpZiB0aGUgbm9kZSBpcyBleHBhbmRhYmxlLCBpbiBvcmRlciB0byBzZXQgLmV4cGFuZGVkIHRvIHRydWUgZnJvbSBmYWxzZVxuICAgICAgLy8gYmVjYXVzZSB3ZSBzaG91bGRuJ3Qgc2V0IC5leHBhbmRlZCB0byB0cnVlIGlmIGl0J3Mgbm90IGV4cGFuZGFibGUgbm9kZVxuICAgICAgaWYgKHRoaXMuaXNFeHBhbmRhYmxlKCkpIHtcbiAgICAgICAgdGhpcy5leHBhbmRTZXJ2aWNlLmV4cGFuZGVkID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGNvbGxhcHNlT3JGb2N1c1BhcmVudCgpIHtcbiAgICBpZiAodGhpcy5kaXNhYmxlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmV4cGFuZGVkKSB7XG4gICAgICB0aGlzLmV4cGFuZFNlcnZpY2UuZXhwYW5kZWQgPSBmYWxzZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5mb2N1c01hbmFnZXIuZm9jdXNQYXJlbnQodGhpcy5fbW9kZWwpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgdHJpZ2dlckRlZmF1bHRBY3Rpb24oKSB7XG4gICAgaWYgKHRoaXMudHJlZU5vZGVMaW5rKSB7XG4gICAgICB0aGlzLnRyZWVOb2RlTGluay5hY3RpdmF0ZSgpO1xuICAgIH0gZWxzZSB7XG4gICAgICBpZiAodGhpcy5pc1NlbGVjdGFibGUoKSkge1xuICAgICAgICB0aGlzLl9tb2RlbC50b2dnbGVTZWxlY3Rpb24odGhpcy5mZWF0dXJlc1NlcnZpY2UuZWFnZXIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5mdW5jdGlvbiB0cmltQW5kTG93ZXJDYXNlKHZhbHVlOiBzdHJpbmcpIHtcbiAgcmV0dXJuIHZhbHVlLnRvTG9jYWxlTG93ZXJDYXNlKCkudHJpbSgpO1xufVxuIiwiPCEtLVxuICB+IENvcHlyaWdodCAoYykgMjAxNi0yMDI1IEJyb2FkY29tLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICB+IFRoZSB0ZXJtIFwiQnJvYWRjb21cIiByZWZlcnMgdG8gQnJvYWRjb20gSW5jLiBhbmQvb3IgaXRzIHN1YnNpZGlhcmllcy5cbiAgfiBUaGlzIHNvZnR3YXJlIGlzIHJlbGVhc2VkIHVuZGVyIE1JVCBsaWNlbnNlLlxuICB+IFRoZSBmdWxsIGxpY2Vuc2UgaW5mb3JtYXRpb24gY2FuIGJlIGZvdW5kIGluIExJQ0VOU0UgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgcHJvamVjdC5cbiAgLS0+XG5cbjxkaXZcbiAgI2NvbnRlbnRDb250YWluZXJcbiAgcm9sZT1cInRyZWVpdGVtXCJcbiAgY2xhc3M9XCJjbHItdHJlZS1ub2RlLWNvbnRlbnQtY29udGFpbmVyXCJcbiAgdGFiaW5kZXg9XCItMVwiXG4gIFtjbGFzcy5jbHItZm9ybS1jb250cm9sLWRpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgW2F0dHIuYXJpYS1kaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gIFthdHRyLmFyaWEtZXhwYW5kZWRdPVwiaXNFeHBhbmRhYmxlKCkgPyBleHBhbmRlZCA6IG51bGxcIlxuICBbYXR0ci5hcmlhLXNlbGVjdGVkXT1cImFyaWFTZWxlY3RlZFwiXG4gIChrZXlkb3duKT1cIm9uS2V5RG93bigkZXZlbnQpXCJcbiAgKGZvY3VzKT1cImJyb2FkY2FzdEZvY3VzT25Db250YWluZXIoKVwiXG4+XG4gIDxidXR0b25cbiAgICAqbmdJZj1cImlzRXhwYW5kYWJsZSgpICYmICFpc01vZGVsTG9hZGluZyAmJiAhZXhwYW5kU2VydmljZS5sb2FkaW5nXCJcbiAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxuICAgIHR5cGU9XCJidXR0b25cIlxuICAgIHRhYmluZGV4PVwiLTFcIlxuICAgIGNsYXNzPVwiY2xyLXRyZWVub2RlLWNhcmV0XCJcbiAgICAoY2xpY2spPVwiZXhwYW5kU2VydmljZS50b2dnbGUoKTtcIlxuICAgIChmb2N1cyk9XCJmb2N1c1RyZWVOb2RlKClcIlxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gID5cbiAgICA8Y2RzLWljb25cbiAgICAgIGNsYXNzPVwiY2xyLXRyZWVub2RlLWNhcmV0LWljb25cIlxuICAgICAgc2hhcGU9XCJhbmdsZVwiXG4gICAgICBbYXR0ci5kaXJlY3Rpb25dPVwiZXhwYW5kU2VydmljZS5leHBhbmRlZCA/ICdkb3duJyA6ICdyaWdodCdcIlxuICAgID48L2Nkcy1pY29uPlxuICA8L2J1dHRvbj5cbiAgPGRpdiBjbGFzcz1cImNsci10cmVlbm9kZS1zcGlubmVyLWNvbnRhaW5lclwiICpuZ0lmPVwiZXhwYW5kU2VydmljZS5sb2FkaW5nIHx8IGlzTW9kZWxMb2FkaW5nXCI+XG4gICAgPHNwYW4gY2xhc3M9XCJjbHItdHJlZW5vZGUtc3Bpbm5lciBzcGlubmVyXCI+PC9zcGFuPlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImNsci1jaGVja2JveC13cmFwcGVyIGNsci10cmVlbm9kZS1jaGVja2JveFwiICpuZ0lmPVwiZmVhdHVyZXNTZXJ2aWNlLnNlbGVjdGFibGVcIj5cbiAgICA8aW5wdXRcbiAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgICB0eXBlPVwiY2hlY2tib3hcIlxuICAgICAgW2lkXT1cIm5vZGVJZCArICctY2hlY2snXCJcbiAgICAgIGNsYXNzPVwiY2xyLWNoZWNrYm94XCJcbiAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICBbY2hlY2tlZF09XCJfbW9kZWwuc2VsZWN0ZWQudmFsdWUgPT09IFNUQVRFUy5TRUxFQ1RFRFwiXG4gICAgICBbaW5kZXRlcm1pbmF0ZV09XCJfbW9kZWwuc2VsZWN0ZWQudmFsdWUgPT09IFNUQVRFUy5JTkRFVEVSTUlOQVRFXCJcbiAgICAgIChjaGFuZ2UpPVwiX21vZGVsLnRvZ2dsZVNlbGVjdGlvbihmZWF0dXJlc1NlcnZpY2UuZWFnZXIpXCJcbiAgICAgIChmb2N1cyk9XCJmb2N1c1RyZWVOb2RlKClcIlxuICAgICAgdGFiaW5kZXg9XCItMVwiXG4gICAgLz5cbiAgICA8bGFiZWwgW2Zvcl09XCJub2RlSWQgKyAnLWNoZWNrJ1wiIGNsYXNzPVwiY2xyLWNvbnRyb2wtbGFiZWxcIj5cbiAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwidHJlZW5vZGVDb250ZW50XCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9sYWJlbD5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJjbHItdHJlZW5vZGUtY29udGVudFwiIChtb3VzZXVwKT1cImZvY3VzVHJlZU5vZGUoKVwiICpuZ0lmPVwiIWZlYXR1cmVzU2VydmljZS5zZWxlY3RhYmxlXCI+XG4gICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJ0cmVlbm9kZUNvbnRlbnRcIj48L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG5cbiAgPG5nLXRlbXBsYXRlICN0cmVlbm9kZUNvbnRlbnQ+XG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgIDxkaXYgY2xhc3M9XCJjbHItc3Itb25seVwiICpuZ0lmPVwiZmVhdHVyZXNTZXJ2aWNlLnNlbGVjdGFibGUgfHwgYXJpYVNlbGVjdGVkXCI+XG4gICAgICA8c3Bhbj4ge3thcmlhU2VsZWN0ZWQgPyBjb21tb25TdHJpbmdzLmtleXMuc2VsZWN0ZWRUcmVlTm9kZSA6IGNvbW1vblN0cmluZ3Mua2V5cy51bnNlbGVjdGVkVHJlZU5vZGV9fTwvc3Bhbj5cbiAgICA8L2Rpdj5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvZGl2PlxuPGRpdlxuICBjbGFzcz1cImNsci10cmVlbm9kZS1jaGlsZHJlblwiXG4gIFtAdG9nZ2xlQ2hpbGRyZW5BbmltXT1cImV4cGFuZFNlcnZpY2UuZXhwYW5kZWQgPyAnZXhwYW5kZWQnIDogJ2NvbGxhcHNlZCdcIlxuICBbYXR0ci5yb2xlXT1cImlzRXhwYW5kYWJsZSgpICYmICFmZWF0dXJlc1NlcnZpY2UucmVjdXJzaW9uID8gJ2dyb3VwJyA6IG51bGxcIlxuPlxuICA8bmctY29udGVudCBzZWxlY3Q9XCJjbHItdHJlZS1ub2RlXCI+PC9uZy1jb250ZW50PlxuICA8bmctY29udGVudCBzZWxlY3Q9XCJbY2xySWZFeHBhbmRlZF1cIj48L25nLWNvbnRlbnQ+XG4gIDxjbHItcmVjdXJzaXZlLWNoaWxkcmVuIFtwYXJlbnRdPVwiX21vZGVsXCI+PC9jbHItcmVjdXJzaXZlLWNoaWxkcmVuPlxuPC9kaXY+XG4iXX0=
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Copyright (c) 2016-2025 Broadcom. All Rights Reserved.
|
|
3
|
-
* The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
|
|
4
|
-
* This software is released under MIT license.
|
|
5
|
-
* The full license information can be found in LICENSE in the root directory of this project.
|
|
6
|
-
*/
|
|
7
|
-
import { CommonModule } from '@angular/common';
|
|
8
|
-
import { NgModule } from '@angular/core';
|
|
9
|
-
import { angleIcon, ClarityIcons } from '@cds/core/icon';
|
|
10
|
-
import { ClrIconModule } from '../../icon/icon.module';
|
|
11
|
-
import { ClrLoadingModule } from '../../utils/loading/loading.module';
|
|
12
|
-
import { RecursiveChildren } from './recursive-children';
|
|
13
|
-
import { ClrRecursiveForOf } from './recursive-for-of';
|
|
14
|
-
import { ClrTree } from './tree';
|
|
15
|
-
import { ClrTreeNode } from './tree-node';
|
|
16
|
-
import { ClrTreeNodeLink } from './tree-node-link';
|
|
17
|
-
import * as i0 from "@angular/core";
|
|
18
|
-
export const CLR_TREE_VIEW_DIRECTIVES = [ClrTree, ClrTreeNode, ClrRecursiveForOf, ClrTreeNodeLink];
|
|
19
|
-
export class ClrTreeViewModule {
|
|
20
|
-
constructor() {
|
|
21
|
-
ClarityIcons.addIcons(angleIcon);
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
ClrTreeViewModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ClrTreeViewModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
25
|
-
ClrTreeViewModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.2", ngImport: i0, type: ClrTreeViewModule, declarations: [ClrTree, ClrTreeNode, ClrRecursiveForOf, ClrTreeNodeLink, RecursiveChildren], imports: [CommonModule, ClrIconModule, ClrLoadingModule], exports: [ClrTree, ClrTreeNode, ClrRecursiveForOf, ClrTreeNodeLink] });
|
|
26
|
-
ClrTreeViewModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ClrTreeViewModule, imports: [CommonModule, ClrIconModule, ClrLoadingModule] });
|
|
27
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ClrTreeViewModule, decorators: [{
|
|
28
|
-
type: NgModule,
|
|
29
|
-
args: [{
|
|
30
|
-
imports: [CommonModule, ClrIconModule, ClrLoadingModule],
|
|
31
|
-
declarations: [CLR_TREE_VIEW_DIRECTIVES, RecursiveChildren],
|
|
32
|
-
exports: [CLR_TREE_VIEW_DIRECTIVES],
|
|
33
|
-
}]
|
|
34
|
-
}], ctorParameters: function () { return []; } });
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS12aWV3Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXIvc3JjL2RhdGEvdHJlZS12aWV3L3RyZWUtdmlldy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7O0dBS0c7QUFFSCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBUSxNQUFNLGVBQWUsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXpELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN0RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQ2pDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDMUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtCQUFrQixDQUFDOztBQUVuRCxNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBZ0IsQ0FBQyxPQUFPLEVBQUUsV0FBVyxFQUFFLGlCQUFpQixFQUFFLGVBQWUsQ0FBQyxDQUFDO0FBT2hILE1BQU0sT0FBTyxpQkFBaUI7SUFDNUI7UUFDRSxZQUFZLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ25DLENBQUM7OzhHQUhVLGlCQUFpQjsrR0FBakIsaUJBQWlCLGlCQVB3QixPQUFPLEVBQUUsV0FBVyxFQUFFLGlCQUFpQixFQUFFLGVBQWUsRUFJbkUsaUJBQWlCLGFBRGhELFlBQVksRUFBRSxhQUFhLEVBQUUsZ0JBQWdCLGFBSEgsT0FBTyxFQUFFLFdBQVcsRUFBRSxpQkFBaUIsRUFBRSxlQUFlOytHQU9qRyxpQkFBaUIsWUFKbEIsWUFBWSxFQUFFLGFBQWEsRUFBRSxnQkFBZ0I7MkZBSTVDLGlCQUFpQjtrQkFMN0IsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsYUFBYSxFQUFFLGdCQUFnQixDQUFDO29CQUN4RCxZQUFZLEVBQUUsQ0FBQyx3QkFBd0IsRUFBRSxpQkFBaUIsQ0FBQztvQkFDM0QsT0FBTyxFQUFFLENBQUMsd0JBQXdCLENBQUM7aUJBQ3BDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAxNi0yMDI1IEJyb2FkY29tLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICogVGhlIHRlcm0gXCJCcm9hZGNvbVwiIHJlZmVycyB0byBCcm9hZGNvbSBJbmMuIGFuZC9vciBpdHMgc3Vic2lkaWFyaWVzLlxuICogVGhpcyBzb2Z0d2FyZSBpcyByZWxlYXNlZCB1bmRlciBNSVQgbGljZW5zZS5cbiAqIFRoZSBmdWxsIGxpY2Vuc2UgaW5mb3JtYXRpb24gY2FuIGJlIGZvdW5kIGluIExJQ0VOU0UgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgcHJvamVjdC5cbiAqL1xuXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUsIFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGFuZ2xlSWNvbiwgQ2xhcml0eUljb25zIH0gZnJvbSAnQGNkcy9jb3JlL2ljb24nO1xuXG5pbXBvcnQgeyBDbHJJY29uTW9kdWxlIH0gZnJvbSAnLi4vLi4vaWNvbi9pY29uLm1vZHVsZSc7XG5pbXBvcnQgeyBDbHJMb2FkaW5nTW9kdWxlIH0gZnJvbSAnLi4vLi4vdXRpbHMvbG9hZGluZy9sb2FkaW5nLm1vZHVsZSc7XG5pbXBvcnQgeyBSZWN1cnNpdmVDaGlsZHJlbiB9IGZyb20gJy4vcmVjdXJzaXZlLWNoaWxkcmVuJztcbmltcG9ydCB7IENsclJlY3Vyc2l2ZUZvck9mIH0gZnJvbSAnLi9yZWN1cnNpdmUtZm9yLW9mJztcbmltcG9ydCB7IENsclRyZWUgfSBmcm9tICcuL3RyZWUnO1xuaW1wb3J0IHsgQ2xyVHJlZU5vZGUgfSBmcm9tICcuL3RyZWUtbm9kZSc7XG5pbXBvcnQgeyBDbHJUcmVlTm9kZUxpbmsgfSBmcm9tICcuL3RyZWUtbm9kZS1saW5rJztcblxuZXhwb3J0IGNvbnN0IENMUl9UUkVFX1ZJRVdfRElSRUNUSVZFUzogVHlwZTxhbnk+W10gPSBbQ2xyVHJlZSwgQ2xyVHJlZU5vZGUsIENsclJlY3Vyc2l2ZUZvck9mLCBDbHJUcmVlTm9kZUxpbmtdO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBDbHJJY29uTW9kdWxlLCBDbHJMb2FkaW5nTW9kdWxlXSxcbiAgZGVjbGFyYXRpb25zOiBbQ0xSX1RSRUVfVklFV19ESVJFQ1RJVkVTLCBSZWN1cnNpdmVDaGlsZHJlbl0sXG4gIGV4cG9ydHM6IFtDTFJfVFJFRV9WSUVXX0RJUkVDVElWRVNdLFxufSlcbmV4cG9ydCBjbGFzcyBDbHJUcmVlVmlld01vZHVsZSB7XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIENsYXJpdHlJY29ucy5hZGRJY29ucyhhbmdsZUljb24pO1xuICB9XG59XG4iXX0=
|
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Copyright (c) 2016-2025 Broadcom. All Rights Reserved.
|
|
3
|
-
* The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
|
|
4
|
-
* This software is released under MIT license.
|
|
5
|
-
* The full license information can be found in LICENSE in the root directory of this project.
|
|
6
|
-
*/
|
|
7
|
-
import { Component, ContentChildren, Input, } from '@angular/core';
|
|
8
|
-
import { fromEvent } from 'rxjs';
|
|
9
|
-
import { TREE_FEATURES_PROVIDER } from './tree-features.service';
|
|
10
|
-
import { TreeFocusManagerService } from './tree-focus-manager.service';
|
|
11
|
-
import { ClrTreeNode } from './tree-node';
|
|
12
|
-
import * as i0 from "@angular/core";
|
|
13
|
-
import * as i1 from "./tree-features.service";
|
|
14
|
-
import * as i2 from "./tree-focus-manager.service";
|
|
15
|
-
import * as i3 from "@angular/common";
|
|
16
|
-
import * as i4 from "./recursive-children";
|
|
17
|
-
export class ClrTree {
|
|
18
|
-
constructor(featuresService, focusManagerService, renderer, el, ngZone) {
|
|
19
|
-
this.featuresService = featuresService;
|
|
20
|
-
this.focusManagerService = focusManagerService;
|
|
21
|
-
this.renderer = renderer;
|
|
22
|
-
this.el = el;
|
|
23
|
-
this.subscriptions = [];
|
|
24
|
-
this._isMultiSelectable = false;
|
|
25
|
-
const subscription = ngZone.runOutsideAngular(() => fromEvent(el.nativeElement, 'focusin').subscribe((event) => {
|
|
26
|
-
if (event.target === el.nativeElement) {
|
|
27
|
-
// After discussing with the team, I've made it so that when the tree receives focus, the first visible node will be focused.
|
|
28
|
-
// This will prevent from the page scrolling abruptly to the first selected node if it exist in a deeply nested tree.
|
|
29
|
-
focusManagerService.focusFirstVisibleNode();
|
|
30
|
-
// when the first child gets focus,
|
|
31
|
-
// tree should no longer have tabindex of 0.
|
|
32
|
-
renderer.removeAttribute(el.nativeElement, 'tabindex');
|
|
33
|
-
}
|
|
34
|
-
}));
|
|
35
|
-
this.subscriptions.push(subscription);
|
|
36
|
-
}
|
|
37
|
-
set lazy(value) {
|
|
38
|
-
this.featuresService.eager = !value;
|
|
39
|
-
}
|
|
40
|
-
get isMultiSelectable() {
|
|
41
|
-
return this._isMultiSelectable;
|
|
42
|
-
}
|
|
43
|
-
ngAfterContentInit() {
|
|
44
|
-
this.setRootNodes();
|
|
45
|
-
this.subscriptions.push(this.rootNodes.changes.subscribe(() => {
|
|
46
|
-
this.setMultiSelectable();
|
|
47
|
-
this.setRootNodes();
|
|
48
|
-
}));
|
|
49
|
-
}
|
|
50
|
-
ngOnDestroy() {
|
|
51
|
-
this.subscriptions.forEach(sub => sub.unsubscribe());
|
|
52
|
-
}
|
|
53
|
-
setMultiSelectable() {
|
|
54
|
-
if (this.featuresService.selectable && this.rootNodes.length > 0) {
|
|
55
|
-
this._isMultiSelectable = true;
|
|
56
|
-
this.renderer.setAttribute(this.el.nativeElement, 'aria-multiselectable', 'true');
|
|
57
|
-
}
|
|
58
|
-
else {
|
|
59
|
-
this._isMultiSelectable = false;
|
|
60
|
-
this.renderer.removeAttribute(this.el.nativeElement, 'aria-multiselectable');
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
setRootNodes() {
|
|
64
|
-
// if node has no parent, it's a root node
|
|
65
|
-
// for recursive tree, this.rootNodes registers also nested children
|
|
66
|
-
// so we have to use filter to extract the ones that are truly root nodes
|
|
67
|
-
this.focusManagerService.rootNodeModels = this.rootNodes.map(node => node._model).filter(node => !node.parent);
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
ClrTree.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ClrTree, deps: [{ token: i1.TreeFeaturesService }, { token: i2.TreeFocusManagerService }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
71
|
-
ClrTree.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: ClrTree, selector: "clr-tree", inputs: { lazy: ["clrLazy", "lazy"] }, host: { attributes: { "tabindex": "0" }, properties: { "attr.role": "\"tree\"" } }, providers: [TREE_FEATURES_PROVIDER, TreeFocusManagerService], queries: [{ propertyName: "rootNodes", predicate: ClrTreeNode }], ngImport: i0, template: `
|
|
72
|
-
<ng-content></ng-content>
|
|
73
|
-
<clr-recursive-children
|
|
74
|
-
*ngIf="featuresService.recursion"
|
|
75
|
-
[children]="featuresService.recursion.root"
|
|
76
|
-
></clr-recursive-children>
|
|
77
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.RecursiveChildren, selector: "clr-recursive-children", inputs: ["parent", "children"] }] });
|
|
78
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ClrTree, decorators: [{
|
|
79
|
-
type: Component,
|
|
80
|
-
args: [{
|
|
81
|
-
selector: 'clr-tree',
|
|
82
|
-
template: `
|
|
83
|
-
<ng-content></ng-content>
|
|
84
|
-
<clr-recursive-children
|
|
85
|
-
*ngIf="featuresService.recursion"
|
|
86
|
-
[children]="featuresService.recursion.root"
|
|
87
|
-
></clr-recursive-children>
|
|
88
|
-
`,
|
|
89
|
-
providers: [TREE_FEATURES_PROVIDER, TreeFocusManagerService],
|
|
90
|
-
host: {
|
|
91
|
-
tabindex: '0',
|
|
92
|
-
'[attr.role]': '"tree"',
|
|
93
|
-
},
|
|
94
|
-
}]
|
|
95
|
-
}], ctorParameters: function () { return [{ type: i1.TreeFeaturesService }, { type: i2.TreeFocusManagerService }, { type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { rootNodes: [{
|
|
96
|
-
type: ContentChildren,
|
|
97
|
-
args: [ClrTreeNode]
|
|
98
|
-
}], lazy: [{
|
|
99
|
-
type: Input,
|
|
100
|
-
args: ['clrLazy']
|
|
101
|
-
}] } });
|
|
102
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXIvc3JjL2RhdGEvdHJlZS12aWV3L3RyZWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7O0dBS0c7QUFFSCxPQUFPLEVBRUwsU0FBUyxFQUNULGVBQWUsRUFFZixLQUFLLEdBS04sTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFNBQVMsRUFBZ0IsTUFBTSxNQUFNLENBQUM7QUFFL0MsT0FBTyxFQUFFLHNCQUFzQixFQUF1QixNQUFNLHlCQUF5QixDQUFDO0FBQ3RGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxhQUFhLENBQUM7Ozs7OztBQWlCMUMsTUFBTSxPQUFPLE9BQU87SUFNbEIsWUFDUyxlQUF1QyxFQUN0QyxtQkFBK0MsRUFDL0MsUUFBbUIsRUFDbkIsRUFBMkIsRUFDbkMsTUFBYztRQUpQLG9CQUFlLEdBQWYsZUFBZSxDQUF3QjtRQUN0Qyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQTRCO1FBQy9DLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsT0FBRSxHQUFGLEVBQUUsQ0FBeUI7UUFQN0Isa0JBQWEsR0FBbUIsRUFBRSxDQUFDO1FBQ25DLHVCQUFrQixHQUFHLEtBQUssQ0FBQztRQVNqQyxNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsR0FBRyxFQUFFLENBQ2pELFNBQVMsQ0FBQyxFQUFFLENBQUMsYUFBYSxFQUFFLFNBQVMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQWlCLEVBQUUsRUFBRTtZQUNyRSxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssRUFBRSxDQUFDLGFBQWEsRUFBRTtnQkFDckMsNkhBQTZIO2dCQUM3SCxxSEFBcUg7Z0JBQ3JILG1CQUFtQixDQUFDLHFCQUFxQixFQUFFLENBQUM7Z0JBQzVDLG1DQUFtQztnQkFDbkMsNENBQTRDO2dCQUM1QyxRQUFRLENBQUMsZUFBZSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsVUFBVSxDQUFDLENBQUM7YUFDeEQ7UUFDSCxDQUFDLENBQUMsQ0FDSCxDQUFDO1FBRUYsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUVELElBQ0ksSUFBSSxDQUFDLEtBQWM7UUFDckIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxLQUFLLENBQUM7SUFDdEMsQ0FBQztJQUVELElBQUksaUJBQWlCO1FBQ25CLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDO0lBQ2pDLENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUNyQixJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ3BDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1lBRTFCLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUN0QixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFTyxrQkFBa0I7UUFDeEIsSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDaEUsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQztZQUMvQixJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLENBQUMsQ0FBQztTQUNuRjthQUFNO1lBQ0wsSUFBSSxDQUFDLGtCQUFrQixHQUFHLEtBQUssQ0FBQztZQUNoQyxJQUFJLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxzQkFBc0IsQ0FBQyxDQUFDO1NBQzlFO0lBQ0gsQ0FBQztJQUVPLFlBQVk7UUFDbEIsMENBQTBDO1FBQzFDLG9FQUFvRTtRQUNwRSx5RUFBeUU7UUFDekUsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNqSCxDQUFDOztvR0FwRVUsT0FBTzt3RkFBUCxPQUFPLDhKQU5QLENBQUMsc0JBQXNCLEVBQUUsdUJBQXVCLENBQUMsb0RBTzNDLFdBQVcsNkJBZGxCOzs7Ozs7R0FNVDsyRkFPVSxPQUFPO2tCQWZuQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxVQUFVO29CQUNwQixRQUFRLEVBQUU7Ozs7OztHQU1UO29CQUNELFNBQVMsRUFBRSxDQUFDLHNCQUFzQixFQUFFLHVCQUF1QixDQUFDO29CQUM1RCxJQUFJLEVBQUU7d0JBQ0osUUFBUSxFQUFFLEdBQUc7d0JBQ2IsYUFBYSxFQUFFLFFBQVE7cUJBQ3hCO2lCQUNGO3NOQUV1QyxTQUFTO3NCQUE5QyxlQUFlO3VCQUFDLFdBQVc7Z0JBNkJ4QixJQUFJO3NCQURQLEtBQUs7dUJBQUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTYtMjAyNSBCcm9hZGNvbS4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqIFRoZSB0ZXJtIFwiQnJvYWRjb21cIiByZWZlcnMgdG8gQnJvYWRjb20gSW5jLiBhbmQvb3IgaXRzIHN1YnNpZGlhcmllcy5cbiAqIFRoaXMgc29mdHdhcmUgaXMgcmVsZWFzZWQgdW5kZXIgTUlUIGxpY2Vuc2UuXG4gKiBUaGUgZnVsbCBsaWNlbnNlIGluZm9ybWF0aW9uIGNhbiBiZSBmb3VuZCBpbiBMSUNFTlNFIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHByb2plY3QuXG4gKi9cblxuaW1wb3J0IHtcbiAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIEVsZW1lbnRSZWYsXG4gIElucHV0LFxuICBOZ1pvbmUsXG4gIE9uRGVzdHJveSxcbiAgUXVlcnlMaXN0LFxuICBSZW5kZXJlcjIsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZnJvbUV2ZW50LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgVFJFRV9GRUFUVVJFU19QUk9WSURFUiwgVHJlZUZlYXR1cmVzU2VydmljZSB9IGZyb20gJy4vdHJlZS1mZWF0dXJlcy5zZXJ2aWNlJztcbmltcG9ydCB7IFRyZWVGb2N1c01hbmFnZXJTZXJ2aWNlIH0gZnJvbSAnLi90cmVlLWZvY3VzLW1hbmFnZXIuc2VydmljZSc7XG5pbXBvcnQgeyBDbHJUcmVlTm9kZSB9IGZyb20gJy4vdHJlZS1ub2RlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY2xyLXRyZWUnLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICA8Y2xyLXJlY3Vyc2l2ZS1jaGlsZHJlblxuICAgICAgKm5nSWY9XCJmZWF0dXJlc1NlcnZpY2UucmVjdXJzaW9uXCJcbiAgICAgIFtjaGlsZHJlbl09XCJmZWF0dXJlc1NlcnZpY2UucmVjdXJzaW9uLnJvb3RcIlxuICAgID48L2Nsci1yZWN1cnNpdmUtY2hpbGRyZW4+XG4gIGAsXG4gIHByb3ZpZGVyczogW1RSRUVfRkVBVFVSRVNfUFJPVklERVIsIFRyZWVGb2N1c01hbmFnZXJTZXJ2aWNlXSxcbiAgaG9zdDoge1xuICAgIHRhYmluZGV4OiAnMCcsXG4gICAgJ1thdHRyLnJvbGVdJzogJ1widHJlZVwiJyxcbiAgfSxcbn0pXG5leHBvcnQgY2xhc3MgQ2xyVHJlZTxUPiBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQsIE9uRGVzdHJveSB7XG4gIEBDb250ZW50Q2hpbGRyZW4oQ2xyVHJlZU5vZGUpIHByaXZhdGUgcm9vdE5vZGVzOiBRdWVyeUxpc3Q8Q2xyVHJlZU5vZGU8VD4+O1xuXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uczogU3Vic2NyaXB0aW9uW10gPSBbXTtcbiAgcHJpdmF0ZSBfaXNNdWx0aVNlbGVjdGFibGUgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgZmVhdHVyZXNTZXJ2aWNlOiBUcmVlRmVhdHVyZXNTZXJ2aWNlPFQ+LFxuICAgIHByaXZhdGUgZm9jdXNNYW5hZ2VyU2VydmljZTogVHJlZUZvY3VzTWFuYWdlclNlcnZpY2U8VD4sXG4gICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIHByaXZhdGUgZWw6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgIG5nWm9uZTogTmdab25lXG4gICkge1xuICAgIGNvbnN0IHN1YnNjcmlwdGlvbiA9IG5nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PlxuICAgICAgZnJvbUV2ZW50KGVsLm5hdGl2ZUVsZW1lbnQsICdmb2N1c2luJykuc3Vic2NyaWJlKChldmVudDogRm9jdXNFdmVudCkgPT4ge1xuICAgICAgICBpZiAoZXZlbnQudGFyZ2V0ID09PSBlbC5uYXRpdmVFbGVtZW50KSB7XG4gICAgICAgICAgLy8gQWZ0ZXIgZGlzY3Vzc2luZyB3aXRoIHRoZSB0ZWFtLCBJJ3ZlIG1hZGUgaXQgc28gdGhhdCB3aGVuIHRoZSB0cmVlIHJlY2VpdmVzIGZvY3VzLCB0aGUgZmlyc3QgdmlzaWJsZSBub2RlIHdpbGwgYmUgZm9jdXNlZC5cbiAgICAgICAgICAvLyBUaGlzIHdpbGwgcHJldmVudCBmcm9tIHRoZSBwYWdlIHNjcm9sbGluZyBhYnJ1cHRseSB0byB0aGUgZmlyc3Qgc2VsZWN0ZWQgbm9kZSBpZiBpdCBleGlzdCBpbiBhIGRlZXBseSBuZXN0ZWQgdHJlZS5cbiAgICAgICAgICBmb2N1c01hbmFnZXJTZXJ2aWNlLmZvY3VzRmlyc3RWaXNpYmxlTm9kZSgpO1xuICAgICAgICAgIC8vIHdoZW4gdGhlIGZpcnN0IGNoaWxkIGdldHMgZm9jdXMsXG4gICAgICAgICAgLy8gdHJlZSBzaG91bGQgbm8gbG9uZ2VyIGhhdmUgdGFiaW5kZXggb2YgMC5cbiAgICAgICAgICByZW5kZXJlci5yZW1vdmVBdHRyaWJ1dGUoZWwubmF0aXZlRWxlbWVudCwgJ3RhYmluZGV4Jyk7XG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKTtcblxuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKHN1YnNjcmlwdGlvbik7XG4gIH1cblxuICBASW5wdXQoJ2NsckxhenknKVxuICBzZXQgbGF6eSh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuZmVhdHVyZXNTZXJ2aWNlLmVhZ2VyID0gIXZhbHVlO1xuICB9XG5cbiAgZ2V0IGlzTXVsdGlTZWxlY3RhYmxlKCkge1xuICAgIHJldHVybiB0aGlzLl9pc011bHRpU2VsZWN0YWJsZTtcbiAgfVxuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcbiAgICB0aGlzLnNldFJvb3ROb2RlcygpO1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKFxuICAgICAgdGhpcy5yb290Tm9kZXMuY2hhbmdlcy5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLnNldE11bHRpU2VsZWN0YWJsZSgpO1xuXG4gICAgICAgIHRoaXMuc2V0Um9vdE5vZGVzKCk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMuZm9yRWFjaChzdWIgPT4gc3ViLnVuc3Vic2NyaWJlKCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRNdWx0aVNlbGVjdGFibGUoKSB7XG4gICAgaWYgKHRoaXMuZmVhdHVyZXNTZXJ2aWNlLnNlbGVjdGFibGUgJiYgdGhpcy5yb290Tm9kZXMubGVuZ3RoID4gMCkge1xuICAgICAgdGhpcy5faXNNdWx0aVNlbGVjdGFibGUgPSB0cnVlO1xuICAgICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUodGhpcy5lbC5uYXRpdmVFbGVtZW50LCAnYXJpYS1tdWx0aXNlbGVjdGFibGUnLCAndHJ1ZScpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9pc011bHRpU2VsZWN0YWJsZSA9IGZhbHNlO1xuICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVBdHRyaWJ1dGUodGhpcy5lbC5uYXRpdmVFbGVtZW50LCAnYXJpYS1tdWx0aXNlbGVjdGFibGUnKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNldFJvb3ROb2RlcygpOiB2b2lkIHtcbiAgICAvLyBpZiBub2RlIGhhcyBubyBwYXJlbnQsIGl0J3MgYSByb290IG5vZGVcbiAgICAvLyBmb3IgcmVjdXJzaXZlIHRyZWUsIHRoaXMucm9vdE5vZGVzIHJlZ2lzdGVycyBhbHNvIG5lc3RlZCBjaGlsZHJlblxuICAgIC8vIHNvIHdlIGhhdmUgdG8gdXNlIGZpbHRlciB0byBleHRyYWN0IHRoZSBvbmVzIHRoYXQgYXJlIHRydWx5IHJvb3Qgbm9kZXNcbiAgICB0aGlzLmZvY3VzTWFuYWdlclNlcnZpY2Uucm9vdE5vZGVNb2RlbHMgPSB0aGlzLnJvb3ROb2Rlcy5tYXAobm9kZSA9PiBub2RlLl9tb2RlbCkuZmlsdGVyKG5vZGUgPT4gIW5vZGUucGFyZW50KTtcbiAgfVxufVxuIl19
|