@clr/angular 17.6.0 → 17.7.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/button/button-group/button.d.ts +6 -3
- package/clarity.api.md +351 -175
- package/data/datagrid/datagrid-virtual-scroll.directive.d.ts +1 -1
- package/data/datagrid/render/main-renderer.d.ts +4 -3
- package/data/datagrid/wrapped-cell.d.ts +1 -3
- package/data/datagrid/wrapped-column.d.ts +1 -3
- package/data/datagrid/wrapped-row.d.ts +1 -3
- package/esm2020/accordion/accordion-content.mjs +2 -2
- package/esm2020/accordion/accordion-description.mjs +2 -2
- package/esm2020/accordion/accordion-panel.mjs +2 -2
- package/esm2020/accordion/accordion-title.mjs +2 -2
- package/esm2020/accordion/accordion.mjs +2 -2
- package/esm2020/accordion/accordion.module.mjs +2 -2
- package/esm2020/accordion/chocolate/accordion-oompa-loompa.mjs +2 -2
- package/esm2020/accordion/chocolate/accordion-willy-wonka.mjs +2 -2
- package/esm2020/accordion/enums/accordion-status.enum.mjs +2 -2
- package/esm2020/accordion/enums/accordion-strategy.enum.mjs +2 -2
- package/esm2020/accordion/index.mjs +2 -2
- package/esm2020/accordion/models/accordion.model.mjs +2 -2
- package/esm2020/accordion/providers/accordion.service.mjs +2 -2
- package/esm2020/accordion/stepper/chocolate/stepper-oompa-loompa.mjs +2 -2
- package/esm2020/accordion/stepper/chocolate/stepper-willy-wonka.mjs +2 -2
- package/esm2020/accordion/stepper/index.mjs +2 -2
- package/esm2020/accordion/stepper/models/stepper.model.mjs +2 -2
- package/esm2020/accordion/stepper/providers/stepper.service.mjs +2 -2
- package/esm2020/accordion/stepper/step-button.mjs +2 -2
- package/esm2020/accordion/stepper/stepper-panel.mjs +2 -2
- package/esm2020/accordion/stepper/stepper.mjs +2 -2
- package/esm2020/accordion/stepper/stepper.module.mjs +2 -2
- package/esm2020/accordion/utils/animation.mjs +2 -2
- package/esm2020/button/button-group/button-group.mjs +4 -4
- package/esm2020/button/button-group/button-group.module.mjs +2 -2
- package/esm2020/button/button-group/button.mjs +17 -10
- package/esm2020/button/button-group/index.mjs +2 -2
- package/esm2020/button/button-loading/index.mjs +2 -2
- package/esm2020/button/button-loading/loading-button.mjs +2 -2
- package/esm2020/button/button-loading/loading-button.module.mjs +2 -2
- package/esm2020/button/button.module.mjs +2 -2
- package/esm2020/button/index.mjs +2 -2
- package/esm2020/button/providers/button-group-focus-handler.service.mjs +2 -2
- package/esm2020/button/providers/button-group-focus.enum.mjs +2 -2
- package/esm2020/button/providers/button-in-group.service.mjs +2 -2
- package/esm2020/clr-angular.module.mjs +2 -2
- package/esm2020/data/data.module.mjs +2 -2
- package/esm2020/data/datagrid/built-in/comparators/datagrid-property-comparator.mjs +2 -2
- package/esm2020/data/datagrid/built-in/filters/datagrid-numeric-filter-impl.mjs +2 -2
- package/esm2020/data/datagrid/built-in/filters/datagrid-numeric-filter.mjs +2 -2
- package/esm2020/data/datagrid/built-in/filters/datagrid-property-numeric-filter.mjs +2 -2
- package/esm2020/data/datagrid/built-in/filters/datagrid-property-string-filter.mjs +2 -2
- package/esm2020/data/datagrid/built-in/filters/datagrid-string-filter-impl.mjs +2 -2
- package/esm2020/data/datagrid/built-in/filters/datagrid-string-filter.mjs +2 -2
- package/esm2020/data/datagrid/built-in/nested-property.mjs +2 -2
- package/esm2020/data/datagrid/chocolate/actionable-oompa-loompa.mjs +2 -2
- package/esm2020/data/datagrid/chocolate/datagrid-willy-wonka.mjs +2 -2
- package/esm2020/data/datagrid/chocolate/expandable-oompa-loompa.mjs +2 -2
- package/esm2020/data/datagrid/datagrid-action-bar.mjs +2 -2
- package/esm2020/data/datagrid/datagrid-action-overflow.mjs +2 -2
- package/esm2020/data/datagrid/datagrid-cell.mjs +2 -2
- package/esm2020/data/datagrid/datagrid-column-separator.mjs +2 -2
- package/esm2020/data/datagrid/datagrid-column-toggle-button.mjs +2 -2
- package/esm2020/data/datagrid/datagrid-column-toggle-trackby.mjs +2 -2
- package/esm2020/data/datagrid/datagrid-column-toggle.mjs +5 -4
- package/esm2020/data/datagrid/datagrid-column.mjs +2 -2
- package/esm2020/data/datagrid/datagrid-detail-body.mjs +2 -2
- package/esm2020/data/datagrid/datagrid-detail-header.mjs +2 -2
- package/esm2020/data/datagrid/datagrid-detail-registerer.mjs +2 -2
- package/esm2020/data/datagrid/datagrid-detail.mjs +2 -2
- package/esm2020/data/datagrid/datagrid-filter.mjs +2 -2
- package/esm2020/data/datagrid/datagrid-footer.mjs +2 -2
- package/esm2020/data/datagrid/datagrid-hideable-column.mjs +2 -2
- package/esm2020/data/datagrid/datagrid-if-detail.mjs +2 -2
- package/esm2020/data/datagrid/datagrid-if-expanded.service.mjs +2 -2
- package/esm2020/data/datagrid/datagrid-items.mjs +2 -2
- package/esm2020/data/datagrid/datagrid-page-size.mjs +2 -2
- package/esm2020/data/datagrid/datagrid-pagination.mjs +2 -2
- package/esm2020/data/datagrid/datagrid-placeholder.mjs +2 -2
- package/esm2020/data/datagrid/datagrid-row-detail.mjs +4 -6
- package/esm2020/data/datagrid/datagrid-row.mjs +2 -2
- package/esm2020/data/datagrid/datagrid-selection-cell.directive.mjs +2 -2
- package/esm2020/data/datagrid/datagrid-virtual-scroll.directive.mjs +4 -4
- package/esm2020/data/datagrid/datagrid.mjs +5 -6
- package/esm2020/data/datagrid/datagrid.module.mjs +2 -2
- package/esm2020/data/datagrid/enums/column-changes.enum.mjs +2 -2
- package/esm2020/data/datagrid/enums/display-mode.enum.mjs +2 -2
- package/esm2020/data/datagrid/enums/render-step.enum.mjs +2 -2
- package/esm2020/data/datagrid/enums/selection-type.mjs +2 -2
- package/esm2020/data/datagrid/enums/sort-order.enum.mjs +2 -2
- package/esm2020/data/datagrid/index.mjs +2 -2
- package/esm2020/data/datagrid/interfaces/column-state.interface.mjs +2 -2
- package/esm2020/data/datagrid/interfaces/comparator.interface.mjs +2 -2
- package/esm2020/data/datagrid/interfaces/filter.interface.mjs +2 -2
- package/esm2020/data/datagrid/interfaces/numeric-filter.interface.mjs +2 -2
- package/esm2020/data/datagrid/interfaces/state.interface.mjs +2 -2
- package/esm2020/data/datagrid/interfaces/string-filter.interface.mjs +2 -2
- package/esm2020/data/datagrid/providers/column-resizer.service.mjs +2 -2
- package/esm2020/data/datagrid/providers/column-state.provider.mjs +2 -2
- package/esm2020/data/datagrid/providers/columns.service.mjs +2 -2
- package/esm2020/data/datagrid/providers/custom-filter.mjs +2 -2
- package/esm2020/data/datagrid/providers/detail.service.mjs +2 -2
- package/esm2020/data/datagrid/providers/display-mode.service.mjs +2 -2
- package/esm2020/data/datagrid/providers/filters.mjs +2 -2
- package/esm2020/data/datagrid/providers/global-expandable-rows.mjs +2 -2
- package/esm2020/data/datagrid/providers/items.mjs +2 -2
- package/esm2020/data/datagrid/providers/page.mjs +2 -2
- package/esm2020/data/datagrid/providers/row-action-service.mjs +2 -2
- package/esm2020/data/datagrid/providers/selection.mjs +2 -2
- package/esm2020/data/datagrid/providers/sort.mjs +2 -2
- package/esm2020/data/datagrid/providers/state-debouncer.provider.mjs +2 -2
- package/esm2020/data/datagrid/providers/state.provider.mjs +2 -2
- package/esm2020/data/datagrid/providers/table-size.service.mjs +2 -2
- package/esm2020/data/datagrid/render/cell-renderer.mjs +2 -2
- package/esm2020/data/datagrid/render/constants.mjs +2 -2
- package/esm2020/data/datagrid/render/header-renderer.mjs +2 -2
- package/esm2020/data/datagrid/render/main-renderer.mjs +22 -18
- package/esm2020/data/datagrid/render/noop-dom-adapter.mjs +2 -2
- package/esm2020/data/datagrid/render/render-organizer.mjs +2 -2
- package/esm2020/data/datagrid/render/row-renderer.mjs +2 -2
- package/esm2020/data/datagrid/utils/datagrid-filter-registrar.mjs +2 -2
- package/esm2020/data/datagrid/utils/key-navigation-grid.controller.mjs +32 -23
- package/esm2020/data/datagrid/wrapped-cell.mjs +2 -5
- package/esm2020/data/datagrid/wrapped-column.mjs +2 -5
- package/esm2020/data/datagrid/wrapped-row.mjs +2 -5
- package/esm2020/data/index.mjs +2 -2
- package/esm2020/data/stack-view/index.mjs +2 -2
- package/esm2020/data/stack-view/stack-block.mjs +2 -2
- package/esm2020/data/stack-view/stack-content-input.mjs +2 -2
- package/esm2020/data/stack-view/stack-header.mjs +2 -2
- package/esm2020/data/stack-view/stack-view-custom-tags.mjs +2 -2
- package/esm2020/data/stack-view/stack-view.mjs +2 -2
- package/esm2020/data/stack-view/stack-view.module.mjs +2 -2
- package/esm2020/data/tree-view/index.mjs +2 -2
- package/esm2020/data/tree-view/models/async-array.mjs +2 -2
- package/esm2020/data/tree-view/models/declarative-tree-node.model.mjs +2 -2
- package/esm2020/data/tree-view/models/recursive-tree-node.model.mjs +2 -2
- package/esm2020/data/tree-view/models/selected-state.enum.mjs +2 -2
- package/esm2020/data/tree-view/models/tree-node.model.mjs +2 -2
- package/esm2020/data/tree-view/recursive-children.mjs +2 -2
- package/esm2020/data/tree-view/recursive-for-of.mjs +2 -2
- package/esm2020/data/tree-view/tree-features.service.mjs +2 -2
- package/esm2020/data/tree-view/tree-focus-manager.service.mjs +2 -2
- package/esm2020/data/tree-view/tree-node-link.mjs +2 -2
- package/esm2020/data/tree-view/tree-node.mjs +4 -4
- package/esm2020/data/tree-view/tree-view.module.mjs +2 -2
- package/esm2020/data/tree-view/tree.mjs +2 -2
- package/esm2020/emphasis/alert/alert-item.mjs +2 -2
- package/esm2020/emphasis/alert/alert-text.mjs +2 -2
- package/esm2020/emphasis/alert/alert.mjs +4 -4
- package/esm2020/emphasis/alert/alert.module.mjs +2 -2
- package/esm2020/emphasis/alert/alerts-pager.mjs +4 -4
- package/esm2020/emphasis/alert/alerts.mjs +4 -4
- package/esm2020/emphasis/alert/index.mjs +2 -2
- package/esm2020/emphasis/alert/providers/icon-and-types.service.mjs +2 -2
- package/esm2020/emphasis/alert/providers/multi-alert.service.mjs +2 -2
- package/esm2020/emphasis/alert/utils/alert-info-object.mjs +2 -2
- package/esm2020/emphasis/alert/utils/alert-types.mjs +2 -2
- package/esm2020/emphasis/emphasis.module.mjs +2 -2
- package/esm2020/emphasis/index.mjs +2 -2
- package/esm2020/forms/checkbox/checkbox-container.mjs +2 -2
- package/esm2020/forms/checkbox/checkbox-wrapper.mjs +2 -6
- package/esm2020/forms/checkbox/checkbox.mjs +2 -2
- package/esm2020/forms/checkbox/checkbox.module.mjs +2 -2
- package/esm2020/forms/checkbox/index.mjs +2 -2
- package/esm2020/forms/combobox/combobox-container.mjs +2 -2
- package/esm2020/forms/combobox/combobox.mjs +4 -4
- package/esm2020/forms/combobox/combobox.module.mjs +2 -2
- package/esm2020/forms/combobox/index.mjs +2 -2
- package/esm2020/forms/combobox/model/combobox.model.mjs +2 -2
- package/esm2020/forms/combobox/model/multi-select-combobox.model.mjs +2 -2
- package/esm2020/forms/combobox/model/pseudo-focus.model.mjs +2 -2
- package/esm2020/forms/combobox/model/single-select-combobox.model.mjs +2 -2
- package/esm2020/forms/combobox/option-items.directive.mjs +2 -2
- package/esm2020/forms/combobox/option-selected.directive.mjs +2 -2
- package/esm2020/forms/combobox/option.mjs +2 -2
- package/esm2020/forms/combobox/options.mjs +2 -2
- package/esm2020/forms/combobox/providers/combobox-container.service.mjs +2 -2
- package/esm2020/forms/combobox/providers/combobox-focus-handler.service.mjs +2 -2
- package/esm2020/forms/combobox/providers/option-selection.service.mjs +2 -2
- package/esm2020/forms/common/abstract-container.mjs +5 -4
- package/esm2020/forms/common/abstract-control.mjs +2 -2
- package/esm2020/forms/common/common.module.mjs +2 -2
- package/esm2020/forms/common/control-container.mjs +2 -2
- package/esm2020/forms/common/control.mjs +2 -2
- package/esm2020/forms/common/error.mjs +2 -2
- package/esm2020/forms/common/form.mjs +2 -2
- package/esm2020/forms/common/helper.mjs +2 -2
- package/esm2020/forms/common/if-control-state/abstract-if-state.mjs +4 -2
- package/esm2020/forms/common/if-control-state/if-control-state.service.mjs +24 -6
- package/esm2020/forms/common/if-control-state/if-error.mjs +10 -6
- package/esm2020/forms/common/if-control-state/if-success.mjs +2 -2
- package/esm2020/forms/common/index.mjs +2 -2
- package/esm2020/forms/common/label.mjs +2 -2
- package/esm2020/forms/common/layout.mjs +2 -2
- package/esm2020/forms/common/providers/container-id.service.mjs +2 -2
- package/esm2020/forms/common/providers/control-class.service.mjs +2 -2
- package/esm2020/forms/common/providers/control-id.service.mjs +2 -2
- package/esm2020/forms/common/providers/focus.service.mjs +2 -2
- package/esm2020/forms/common/providers/layout.service.mjs +2 -2
- package/esm2020/forms/common/providers/mark-control.service.mjs +2 -2
- package/esm2020/forms/common/providers/ng-control.service.mjs +17 -2
- package/esm2020/forms/common/success.mjs +2 -2
- package/esm2020/forms/common/wrapped-control.mjs +43 -19
- package/esm2020/forms/datalist/datalist-container.mjs +2 -2
- package/esm2020/forms/datalist/datalist-input.mjs +2 -2
- package/esm2020/forms/datalist/datalist.mjs +2 -2
- package/esm2020/forms/datalist/datalist.module.mjs +2 -2
- package/esm2020/forms/datalist/index.mjs +2 -2
- package/esm2020/forms/datalist/providers/datalist-id.service.mjs +2 -2
- package/esm2020/forms/datepicker/calendar.mjs +50 -8
- package/esm2020/forms/datepicker/date-container.mjs +97 -11
- package/esm2020/forms/datepicker/date-end-input.mjs +60 -0
- package/esm2020/forms/datepicker/date-input.mjs +74 -80
- package/esm2020/forms/datepicker/date-input.validator.mjs +65 -6
- package/esm2020/forms/datepicker/date-single-input.mjs +63 -0
- package/esm2020/forms/datepicker/date-start-input.mjs +61 -0
- package/esm2020/forms/datepicker/datepicker-action-buttons.mjs +12 -3
- package/esm2020/forms/datepicker/datepicker-view-manager.mjs +28 -12
- package/esm2020/forms/datepicker/datepicker.module.mjs +24 -6
- package/esm2020/forms/datepicker/day.mjs +49 -4
- package/esm2020/forms/datepicker/daypicker.mjs +2 -2
- package/esm2020/forms/datepicker/index.mjs +5 -2
- package/esm2020/forms/datepicker/interfaces/date-range.interface.mjs +2 -2
- package/esm2020/forms/datepicker/interfaces/day-of-week.interface.mjs +2 -2
- package/esm2020/forms/datepicker/model/calendar-view.model.mjs +17 -3
- package/esm2020/forms/datepicker/model/calendar.model.mjs +14 -2
- package/esm2020/forms/datepicker/model/day-view.model.mjs +5 -3
- package/esm2020/forms/datepicker/model/day.model.mjs +18 -2
- package/esm2020/forms/datepicker/model/year-range.model.mjs +2 -2
- package/esm2020/forms/datepicker/monthpicker.mjs +237 -40
- package/esm2020/forms/datepicker/providers/date-form-control.service.mjs +2 -2
- package/esm2020/forms/datepicker/providers/date-io.service.mjs +21 -2
- package/esm2020/forms/datepicker/providers/date-navigation.service.mjs +70 -8
- package/esm2020/forms/datepicker/providers/datepicker-enabled.service.mjs +2 -2
- package/esm2020/forms/datepicker/providers/datepicker-focus.service.mjs +2 -2
- package/esm2020/forms/datepicker/providers/locale-helper.service.mjs +2 -2
- package/esm2020/forms/datepicker/providers/view-manager.service.mjs +2 -2
- package/esm2020/forms/datepicker/utils/constants.mjs +2 -2
- package/esm2020/forms/datepicker/utils/date-utils.mjs +2 -2
- package/esm2020/forms/datepicker/yearpicker.mjs +132 -58
- package/esm2020/forms/file-input/file-input-container.mjs +2 -2
- package/esm2020/forms/file-input/file-input-validator-errors.mjs +2 -2
- package/esm2020/forms/file-input/file-input-validator.mjs +2 -2
- package/esm2020/forms/file-input/file-input-value-accessor.mjs +2 -2
- package/esm2020/forms/file-input/file-input.helpers.mjs +2 -2
- package/esm2020/forms/file-input/file-input.mjs +2 -2
- package/esm2020/forms/file-input/file-input.module.mjs +2 -2
- package/esm2020/forms/file-input/file-list.mjs +4 -2
- package/esm2020/forms/file-input/file-messages-template.mjs +2 -2
- package/esm2020/forms/file-input/file-messages.mjs +2 -2
- package/esm2020/forms/file-input/index.mjs +2 -2
- package/esm2020/forms/forms.module.mjs +2 -2
- package/esm2020/forms/index.mjs +2 -2
- package/esm2020/forms/input/index.mjs +2 -2
- package/esm2020/forms/input/input-container.mjs +2 -2
- package/esm2020/forms/input/input.mjs +2 -2
- package/esm2020/forms/input/input.module.mjs +2 -2
- package/esm2020/forms/number-input/index.mjs +2 -2
- package/esm2020/forms/number-input/number-input-container.mjs +2 -2
- package/esm2020/forms/number-input/number-input.mjs +2 -2
- package/esm2020/forms/number-input/number-input.module.mjs +2 -2
- package/esm2020/forms/password/index.mjs +2 -2
- package/esm2020/forms/password/password-container.mjs +2 -2
- package/esm2020/forms/password/password.mjs +2 -2
- package/esm2020/forms/password/password.module.mjs +2 -2
- package/esm2020/forms/radio/index.mjs +2 -2
- package/esm2020/forms/radio/radio-container.mjs +2 -2
- package/esm2020/forms/radio/radio-wrapper.mjs +2 -8
- package/esm2020/forms/radio/radio.mjs +2 -2
- package/esm2020/forms/radio/radio.module.mjs +2 -2
- package/esm2020/forms/range/index.mjs +2 -2
- package/esm2020/forms/range/range-container.mjs +2 -2
- package/esm2020/forms/range/range.mjs +2 -2
- package/esm2020/forms/range/range.module.mjs +2 -2
- package/esm2020/forms/select/index.mjs +2 -2
- package/esm2020/forms/select/select-container.mjs +2 -2
- package/esm2020/forms/select/select.mjs +2 -2
- package/esm2020/forms/select/select.module.mjs +2 -2
- package/esm2020/forms/textarea/index.mjs +2 -2
- package/esm2020/forms/textarea/textarea-container.mjs +2 -2
- package/esm2020/forms/textarea/textarea.mjs +2 -2
- package/esm2020/forms/textarea/textarea.module.mjs +2 -2
- package/esm2020/icon/icon.mjs +2 -2
- package/esm2020/icon/icon.module.mjs +2 -2
- package/esm2020/icon/index.mjs +2 -2
- package/esm2020/index.mjs +2 -2
- package/esm2020/layout/breadcrumbs/breadcrumb-item.mjs +2 -2
- package/esm2020/layout/breadcrumbs/breadcrumbs.constants.mjs +2 -2
- package/esm2020/layout/breadcrumbs/breadcrumbs.mjs +4 -4
- package/esm2020/layout/breadcrumbs/breadcrumbs.module.mjs +2 -2
- package/esm2020/layout/breadcrumbs/index.mjs +2 -2
- package/esm2020/layout/breadcrumbs/model/breadcrumbs.model.mjs +2 -2
- package/esm2020/layout/index.mjs +2 -2
- package/esm2020/layout/layout.module.mjs +2 -2
- package/esm2020/layout/main-container/index.mjs +2 -2
- package/esm2020/layout/main-container/main-container.mjs +2 -2
- package/esm2020/layout/main-container/main-container.module.mjs +2 -2
- package/esm2020/layout/nav/aria-current-link.mjs +2 -2
- package/esm2020/layout/nav/chocolate/index.mjs +2 -2
- package/esm2020/layout/nav/chocolate/main-container-willy-wonka.mjs +2 -2
- package/esm2020/layout/nav/chocolate/nav-detection-oompa-loompa.mjs +2 -2
- package/esm2020/layout/nav/header.mjs +2 -2
- package/esm2020/layout/nav/index.mjs +2 -2
- package/esm2020/layout/nav/nav-level.mjs +2 -2
- package/esm2020/layout/nav/navigation.module.mjs +2 -2
- package/esm2020/layout/nav/providers/responsive-navigation.service.mjs +2 -2
- package/esm2020/layout/nav/responsive-nav-codes.mjs +2 -2
- package/esm2020/layout/nav/responsive-nav-control-message.mjs +2 -2
- package/esm2020/layout/tabs/chocolate/active-oompa-loompa.mjs +2 -2
- package/esm2020/layout/tabs/chocolate/tabs-willy-wonka.mjs +2 -2
- package/esm2020/layout/tabs/enums/tabs-layout.enum.mjs +2 -2
- package/esm2020/layout/tabs/index.mjs +2 -2
- package/esm2020/layout/tabs/providers/tabs.service.mjs +2 -2
- package/esm2020/layout/tabs/tab-action.directive.mjs +2 -2
- package/esm2020/layout/tabs/tab-content.mjs +2 -2
- package/esm2020/layout/tabs/tab-link.directive.mjs +2 -2
- package/esm2020/layout/tabs/tab-overflow-content.mjs +2 -2
- package/esm2020/layout/tabs/tab.mjs +2 -2
- package/esm2020/layout/tabs/tabs-actions.mjs +2 -2
- package/esm2020/layout/tabs/tabs-id.provider.mjs +2 -2
- package/esm2020/layout/tabs/tabs.mjs +2 -2
- package/esm2020/layout/tabs/tabs.module.mjs +2 -2
- package/esm2020/layout/vertical-nav/index.mjs +2 -2
- package/esm2020/layout/vertical-nav/providers/vertical-nav-group-registration.service.mjs +2 -2
- package/esm2020/layout/vertical-nav/providers/vertical-nav-group.service.mjs +2 -2
- package/esm2020/layout/vertical-nav/providers/vertical-nav-icon.service.mjs +2 -2
- package/esm2020/layout/vertical-nav/providers/vertical-nav.service.mjs +2 -2
- package/esm2020/layout/vertical-nav/vertical-nav-group-children.mjs +2 -2
- package/esm2020/layout/vertical-nav/vertical-nav-group.mjs +4 -4
- package/esm2020/layout/vertical-nav/vertical-nav-icon.mjs +2 -2
- package/esm2020/layout/vertical-nav/vertical-nav-link.mjs +2 -2
- package/esm2020/layout/vertical-nav/vertical-nav.mjs +10 -5
- package/esm2020/layout/vertical-nav/vertical-nav.module.mjs +2 -2
- package/esm2020/modal/index.mjs +3 -2
- package/esm2020/modal/modal-body.mjs +2 -2
- package/esm2020/modal/modal-configuration.service.mjs +2 -2
- package/esm2020/modal/modal-host.directive.mjs +20 -0
- package/esm2020/modal/modal-stack.service.mjs +2 -2
- package/esm2020/modal/modal.mjs +12 -6
- package/esm2020/modal/modal.module.mjs +5 -4
- package/esm2020/modal/side-panel.mjs +90 -14
- package/esm2020/modal/side-panel.module.mjs +5 -5
- package/esm2020/popover/common/abstract-popover.mjs +14 -16
- package/esm2020/popover/common/popover-host-anchor.token.mjs +2 -2
- package/esm2020/popover/common/popover-options.interface.mjs +2 -2
- package/esm2020/popover/common/popover.mjs +2 -2
- package/esm2020/popover/dropdown/dropdown-item.mjs +2 -2
- package/esm2020/popover/dropdown/dropdown-menu.mjs +2 -2
- package/esm2020/popover/dropdown/dropdown-trigger.mjs +2 -2
- package/esm2020/popover/dropdown/dropdown.mjs +2 -2
- package/esm2020/popover/dropdown/dropdown.module.mjs +2 -2
- package/esm2020/popover/dropdown/index.mjs +2 -2
- package/esm2020/popover/dropdown/menu-positions.mjs +2 -2
- package/esm2020/popover/dropdown/providers/dropdown-focus-handler.service.mjs +2 -2
- package/esm2020/popover/dropdown/providers/dropdown.service.mjs +2 -2
- package/esm2020/popover/index.mjs +2 -2
- package/esm2020/popover/popover.module.mjs +2 -2
- package/esm2020/popover/signpost/index.mjs +2 -2
- package/esm2020/popover/signpost/providers/signpost-focus-manager.service.mjs +2 -2
- package/esm2020/popover/signpost/providers/signpost-id.service.mjs +2 -2
- package/esm2020/popover/signpost/signpost-content.mjs +2 -2
- package/esm2020/popover/signpost/signpost-positions.mjs +2 -2
- package/esm2020/popover/signpost/signpost-title.mjs +2 -2
- package/esm2020/popover/signpost/signpost-trigger.mjs +2 -2
- package/esm2020/popover/signpost/signpost.mjs +2 -2
- package/esm2020/popover/signpost/signpost.module.mjs +2 -2
- package/esm2020/popover/tooltip/index.mjs +2 -2
- package/esm2020/popover/tooltip/providers/tooltip-id.service.mjs +2 -2
- package/esm2020/popover/tooltip/providers/tooltip-mouse.service.mjs +2 -2
- package/esm2020/popover/tooltip/tooltip-content.mjs +2 -2
- package/esm2020/popover/tooltip/tooltip-trigger.mjs +2 -2
- package/esm2020/popover/tooltip/tooltip.mjs +2 -2
- package/esm2020/popover/tooltip/tooltip.module.mjs +2 -2
- package/esm2020/progress/progress-bars/index.mjs +2 -2
- package/esm2020/progress/progress-bars/progress-bar.mjs +2 -2
- package/esm2020/progress/progress-bars/progress-bar.module.mjs +2 -2
- package/esm2020/progress/spinner/index.mjs +2 -2
- package/esm2020/progress/spinner/spinner.mjs +2 -2
- package/esm2020/progress/spinner/spinner.module.mjs +2 -2
- package/esm2020/timeline/enums/timeline-layout.enum.mjs +2 -2
- package/esm2020/timeline/enums/timeline-step-state.enum.mjs +2 -2
- package/esm2020/timeline/index.mjs +2 -2
- package/esm2020/timeline/interface/icon-attribute.interface.mjs +2 -2
- package/esm2020/timeline/providers/timeline-icon-attribute.service.mjs +2 -2
- package/esm2020/timeline/timeline-step-description.mjs +2 -2
- package/esm2020/timeline/timeline-step-header.mjs +2 -2
- package/esm2020/timeline/timeline-step-title.mjs +2 -2
- package/esm2020/timeline/timeline-step.mjs +2 -2
- package/esm2020/timeline/timeline.mjs +2 -2
- package/esm2020/timeline/timeline.module.mjs +2 -2
- package/esm2020/utils/animations/collapse/collapse.mjs +2 -2
- package/esm2020/utils/animations/collapse/index.mjs +2 -2
- package/esm2020/utils/animations/constants.mjs +2 -2
- package/esm2020/utils/animations/expandable-animation/expandable-animation.mjs +2 -2
- package/esm2020/utils/animations/expandable-animation/expandable-animation.module.mjs +2 -2
- package/esm2020/utils/animations/expandable-animation/index.mjs +2 -2
- package/esm2020/utils/animations/fade/fade.mjs +2 -2
- package/esm2020/utils/animations/fade/index.mjs +2 -2
- package/esm2020/utils/animations/fade-slide/fade-slide.mjs +2 -2
- package/esm2020/utils/animations/fade-slide/index.mjs +2 -2
- package/esm2020/utils/animations/index.mjs +2 -2
- package/esm2020/utils/animations/slide/index.mjs +2 -2
- package/esm2020/utils/animations/slide/slide.mjs +2 -2
- package/esm2020/utils/assert/assert.helpers.mjs +2 -2
- package/esm2020/utils/breakpoints/breakpoints.mjs +2 -2
- package/esm2020/utils/cdk/cdk-drag.module.mjs +1 -1
- package/esm2020/utils/cdk/cdk-trap-focus.module.mjs +2 -2
- package/esm2020/utils/chocolate/oompa-loompa.mjs +2 -2
- package/esm2020/utils/chocolate/willy-wonka.mjs +2 -2
- package/esm2020/utils/component/is-boolean-attribute-set.mjs +2 -2
- package/esm2020/utils/conditional/conditional.module.mjs +2 -2
- package/esm2020/utils/conditional/if-active.directive.mjs +2 -2
- package/esm2020/utils/conditional/if-active.service.mjs +2 -2
- package/esm2020/utils/conditional/if-expanded.directive.mjs +2 -2
- package/esm2020/utils/conditional/if-expanded.service.mjs +2 -2
- package/esm2020/utils/conditional/if-open.directive.mjs +2 -2
- package/esm2020/utils/conditional/index.mjs +2 -2
- package/esm2020/utils/destroy/destroy.service.mjs +2 -2
- package/esm2020/utils/destroy/index.mjs +2 -2
- package/esm2020/utils/dom-adapter/dom-adapter.mjs +2 -2
- package/esm2020/utils/enums/keys.enum.mjs +4 -2
- package/esm2020/utils/focus/arrow-key-direction.enum.mjs +2 -2
- package/esm2020/utils/focus/focus-on-view-init/focus-on-view-init.mjs +2 -2
- package/esm2020/utils/focus/focus-on-view-init/focus-on-view-init.module.mjs +2 -2
- package/esm2020/utils/focus/focus-on-view-init/focus-on-view-init.provider.mjs +2 -2
- package/esm2020/utils/focus/focus-on-view-init/index.mjs +2 -2
- package/esm2020/utils/focus/focus-trap/index.mjs +2 -2
- package/esm2020/utils/focus/focus-trap/standalone-cdk-trap-focus.directive.mjs +2 -2
- package/esm2020/utils/focus/focus.service.mjs +2 -2
- package/esm2020/utils/focus/focusable-item/basic-focusable-item.service.mjs +2 -2
- package/esm2020/utils/focus/focusable-item/custom-focusable-item-provider.mjs +2 -2
- package/esm2020/utils/focus/focusable-item/focusable-item.mjs +2 -2
- package/esm2020/utils/focus/focusable-item/linkers.mjs +2 -2
- package/esm2020/utils/focus/key-focus/enums/focus-direction.enum.mjs +2 -2
- package/esm2020/utils/focus/key-focus/index.mjs +2 -2
- package/esm2020/utils/focus/key-focus/interfaces.mjs +2 -2
- package/esm2020/utils/focus/key-focus/key-focus-item.mjs +2 -2
- package/esm2020/utils/focus/key-focus/key-focus.mjs +2 -2
- package/esm2020/utils/focus/key-focus/key-focus.module.mjs +2 -2
- package/esm2020/utils/focus/key-focus/roving-tabindex.mjs +2 -2
- package/esm2020/utils/focus/key-focus/util.mjs +2 -2
- package/esm2020/utils/focus/wrap-observable.mjs +2 -2
- package/esm2020/utils/forms/validation.mjs +2 -2
- package/esm2020/utils/host-wrapping/empty-anchor.mjs +2 -2
- package/esm2020/utils/host-wrapping/host-wrapper.mjs +2 -4
- package/esm2020/utils/host-wrapping/host-wrapping.module.mjs +2 -2
- package/esm2020/utils/i18n/common-strings.default.mjs +3 -2
- package/esm2020/utils/i18n/common-strings.interface.mjs +2 -2
- package/esm2020/utils/i18n/common-strings.service.mjs +2 -2
- package/esm2020/utils/i18n/index.mjs +2 -2
- package/esm2020/utils/id-generator/id-generator.service.mjs +2 -2
- package/esm2020/utils/index.mjs +2 -2
- package/esm2020/utils/loading/index.mjs +2 -2
- package/esm2020/utils/loading/loading-listener.mjs +2 -2
- package/esm2020/utils/loading/loading.mjs +2 -2
- package/esm2020/utils/loading/loading.module.mjs +2 -2
- package/esm2020/utils/outside-click/index.mjs +2 -2
- package/esm2020/utils/outside-click/outside-click.mjs +2 -2
- package/esm2020/utils/outside-click/outside-click.module.mjs +2 -2
- package/esm2020/utils/popover/enums/alignment.enum.mjs +2 -2
- package/esm2020/utils/popover/enums/axis.enum.mjs +2 -2
- package/esm2020/utils/popover/enums/positions.enum.mjs +2 -2
- package/esm2020/utils/popover/enums/side.enum.mjs +2 -2
- package/esm2020/utils/popover/enums/viewport-violation.enum.mjs +2 -2
- package/esm2020/utils/popover/index.mjs +2 -2
- package/esm2020/utils/popover/interfaces/popover-content-offset.interface.mjs +2 -2
- package/esm2020/utils/popover/interfaces/popover-position.interface.mjs +2 -2
- package/esm2020/utils/popover/interfaces/visibility-coords.interface.mjs +2 -2
- package/esm2020/utils/popover/popover-anchor.mjs +2 -2
- package/esm2020/utils/popover/popover-close-button.mjs +2 -2
- package/esm2020/utils/popover/popover-content.mjs +2 -2
- package/esm2020/utils/popover/popover-host.directive.mjs +2 -2
- package/esm2020/utils/popover/popover-open-close-button.mjs +2 -2
- package/esm2020/utils/popover/popover.module.mjs +2 -2
- package/esm2020/utils/popover/position-operators.mjs +2 -2
- package/esm2020/utils/popover/providers/popover-events.service.mjs +2 -2
- package/esm2020/utils/popover/providers/popover-position.service.mjs +2 -2
- package/esm2020/utils/popover/providers/popover-toggle.service.mjs +2 -2
- package/esm2020/utils/popover/stop-escape-propagation.directive.mjs +2 -2
- package/esm2020/utils/scrolling/scrolling-service.mjs +2 -2
- package/esm2020/utils/template-ref/index.mjs +2 -2
- package/esm2020/utils/template-ref/template-ref-container.mjs +2 -2
- package/esm2020/utils/template-ref/template-ref.module.mjs +2 -2
- package/esm2020/wizard/heading-level.mjs +2 -2
- package/esm2020/wizard/index.mjs +2 -2
- package/esm2020/wizard/providers/button-hub.service.mjs +2 -2
- package/esm2020/wizard/providers/header-actions.service.mjs +2 -2
- package/esm2020/wizard/providers/page-collection.service.mjs +2 -2
- package/esm2020/wizard/providers/wizard-navigation.service.mjs +2 -2
- package/esm2020/wizard/wizard-button.mjs +2 -2
- package/esm2020/wizard/wizard-header-action.mjs +2 -2
- package/esm2020/wizard/wizard-page-buttons.mjs +2 -2
- package/esm2020/wizard/wizard-page-header-actions.mjs +2 -2
- package/esm2020/wizard/wizard-page-navtitle.mjs +2 -2
- package/esm2020/wizard/wizard-page-title.mjs +2 -2
- package/esm2020/wizard/wizard-page.mjs +2 -2
- package/esm2020/wizard/wizard-stepnav-item.mjs +6 -2
- package/esm2020/wizard/wizard-stepnav.mjs +2 -2
- package/esm2020/wizard/wizard-title.mjs +2 -2
- package/esm2020/wizard/wizard.mjs +11 -5
- package/esm2020/wizard/wizard.module.mjs +2 -2
- package/fesm2015/clr-angular.mjs +14427 -13398
- package/fesm2015/clr-angular.mjs.map +1 -1
- package/fesm2020/clr-angular.mjs +14447 -13450
- package/fesm2020/clr-angular.mjs.map +1 -1
- package/forms/checkbox/checkbox-wrapper.d.ts +1 -3
- package/forms/common/abstract-container.d.ts +2 -3
- package/forms/common/if-control-state/abstract-if-state.d.ts +1 -0
- package/forms/common/providers/ng-control.service.d.ts +6 -0
- package/forms/common/wrapped-control.d.ts +7 -4
- package/forms/datepicker/calendar.d.ts +4 -0
- package/forms/datepicker/date-container.d.ts +15 -3
- package/forms/datepicker/date-end-input.d.ts +15 -0
- package/forms/datepicker/date-input.d.ts +18 -12
- package/forms/datepicker/date-input.validator.d.ts +18 -1
- package/forms/datepicker/date-single-input.d.ts +15 -0
- package/forms/datepicker/date-start-input.d.ts +15 -0
- package/forms/datepicker/datepicker-view-manager.d.ts +6 -1
- package/forms/datepicker/datepicker.module.d.ts +18 -15
- package/forms/datepicker/day.d.ts +11 -0
- package/forms/datepicker/index.d.ts +3 -0
- package/forms/datepicker/interfaces/date-range.interface.d.ts +8 -0
- package/forms/datepicker/model/calendar-view.model.d.ts +7 -2
- package/forms/datepicker/model/calendar.model.d.ts +8 -0
- package/forms/datepicker/model/day-view.model.d.ts +3 -1
- package/forms/datepicker/model/day.model.d.ts +8 -0
- package/forms/datepicker/monthpicker.d.ts +43 -2
- package/forms/datepicker/providers/date-io.service.d.ts +5 -1
- package/forms/datepicker/providers/date-navigation.service.d.ts +27 -1
- package/forms/datepicker/yearpicker.d.ts +14 -0
- package/forms/radio/radio-wrapper.d.ts +1 -3
- package/layout/vertical-nav/vertical-nav.d.ts +3 -1
- package/modal/index.d.ts +1 -0
- package/modal/modal-host.directive.d.ts +5 -0
- package/modal/modal.d.ts +4 -2
- package/modal/modal.module.d.ts +5 -4
- package/modal/side-panel.d.ts +25 -6
- package/modal/side-panel.module.d.ts +1 -1
- package/package.json +2 -2
- package/popover/common/abstract-popover.d.ts +0 -1
- package/utils/enums/keys.enum.d.ts +3 -1
- package/utils/host-wrapping/host-wrapper.d.ts +1 -2
- package/utils/i18n/common-strings.interface.d.ts +4 -0
- package/wizard/wizard.d.ts +2 -1
- package/esm2020/utils/host-wrapping/dynamic-wrapper.mjs +0 -8
- package/utils/host-wrapping/dynamic-wrapper.d.ts +0 -3
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* Copyright (c) 2016-
|
|
2
|
+
* Copyright (c) 2016-2025 Broadcom. All Rights Reserved.
|
|
3
3
|
* The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
|
|
4
4
|
* This software is released under MIT license.
|
|
5
5
|
* The full license information can be found in LICENSE in the root directory of this project.
|
|
6
6
|
*/
|
|
7
|
-
import { Component, Input, Optional, ViewChild } from '@angular/core';
|
|
7
|
+
import { Component, ContentChild, Input, Optional, ViewChild, } from '@angular/core';
|
|
8
8
|
import { startWith } from 'rxjs/operators';
|
|
9
9
|
import { ClrPopoverPositions } from '../../utils/popover/enums/positions.enum';
|
|
10
10
|
import { ClrPopoverHostDirective } from '../../utils/popover/popover-host.directive';
|
|
@@ -14,6 +14,9 @@ import { ControlClassService } from '../common/providers/control-class.service';
|
|
|
14
14
|
import { ControlIdService } from '../common/providers/control-id.service';
|
|
15
15
|
import { FocusService } from '../common/providers/focus.service';
|
|
16
16
|
import { NgControlService } from '../common/providers/ng-control.service';
|
|
17
|
+
import { ClrEndDateInput } from './date-end-input';
|
|
18
|
+
import { ClrDateInput } from './date-single-input';
|
|
19
|
+
import { ClrStartDateInput } from './date-start-input';
|
|
17
20
|
import { DateFormControlService } from './providers/date-form-control.service';
|
|
18
21
|
import { DateIOService } from './providers/date-io.service';
|
|
19
22
|
import { DateNavigationService } from './providers/date-navigation.service';
|
|
@@ -43,9 +46,10 @@ import * as i19 from "../../icon/icon";
|
|
|
43
46
|
import * as i20 from "../common/label";
|
|
44
47
|
import * as i21 from "./datepicker-view-manager";
|
|
45
48
|
export class ClrDateContainer extends ClrAbstractContainer {
|
|
46
|
-
constructor(renderer, toggleService, dateNavigationService, datepickerEnabledService, dateFormControlService, dateIOService, commonStrings, focusService, viewManagerService, controlClassService, layoutService, ngControlService, ifControlStateService) {
|
|
49
|
+
constructor(renderer, elem, toggleService, dateNavigationService, datepickerEnabledService, dateFormControlService, dateIOService, commonStrings, focusService, viewManagerService, controlClassService, layoutService, ngControlService, ifControlStateService) {
|
|
47
50
|
super(ifControlStateService, layoutService, controlClassService, ngControlService);
|
|
48
51
|
this.renderer = renderer;
|
|
52
|
+
this.elem = elem;
|
|
49
53
|
this.toggleService = toggleService;
|
|
50
54
|
this.dateNavigationService = dateNavigationService;
|
|
51
55
|
this.datepickerEnabledService = datepickerEnabledService;
|
|
@@ -64,15 +68,51 @@ export class ClrDateContainer extends ClrAbstractContainer {
|
|
|
64
68
|
this.subscriptions.push(toggleService.openChange.subscribe(() => {
|
|
65
69
|
dateFormControlService.markAsTouched();
|
|
66
70
|
}));
|
|
71
|
+
if (dateNavigationService) {
|
|
72
|
+
const tagName = elem.nativeElement.tagName.toLowerCase();
|
|
73
|
+
dateNavigationService.hasActionButtons = dateNavigationService.isRangePicker =
|
|
74
|
+
tagName === 'clr-date-range-container';
|
|
75
|
+
}
|
|
67
76
|
}
|
|
77
|
+
/**
|
|
78
|
+
* For date range picker actions buttons are shown by default
|
|
79
|
+
*/
|
|
68
80
|
set showActionButtons(flag) {
|
|
69
|
-
this.dateNavigationService.
|
|
81
|
+
if (this.dateNavigationService.isRangePicker && !flag) {
|
|
82
|
+
console.error('Error! The date range picker requires action buttons, [showActionButtons] cannot be turned off.');
|
|
83
|
+
}
|
|
84
|
+
else {
|
|
85
|
+
this.dateNavigationService.hasActionButtons = flag;
|
|
86
|
+
}
|
|
70
87
|
}
|
|
71
88
|
set clrPosition(position) {
|
|
72
89
|
if (position && ClrPopoverPositions[position]) {
|
|
73
90
|
this.viewManagerService.position = ClrPopoverPositions[position];
|
|
74
91
|
}
|
|
75
92
|
}
|
|
93
|
+
set rangeOptions(rangeOptions) {
|
|
94
|
+
this.dateIOService.setRangeOptions(rangeOptions);
|
|
95
|
+
}
|
|
96
|
+
set min(dateString) {
|
|
97
|
+
if (this.dateNavigationService.isRangePicker) {
|
|
98
|
+
this.dateIOService.setMinDate(dateString);
|
|
99
|
+
this.clrStartDateInput?.triggerControlInputValidation();
|
|
100
|
+
this.clrEndDateInput?.triggerControlInputValidation();
|
|
101
|
+
}
|
|
102
|
+
else {
|
|
103
|
+
console.error('Error! The date container [min] input only works for date range pickers. Use the native `min` attribute/property for single-date inputs.');
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
set max(dateString) {
|
|
107
|
+
if (this.dateNavigationService.isRangePicker) {
|
|
108
|
+
this.dateIOService.setMaxDate(dateString);
|
|
109
|
+
this.clrStartDateInput?.triggerControlInputValidation();
|
|
110
|
+
this.clrEndDateInput?.triggerControlInputValidation();
|
|
111
|
+
}
|
|
112
|
+
else {
|
|
113
|
+
console.error('Error! The date container [max] input only works for date range pickers. Use the native `max` attribute/property for single-date inputs.');
|
|
114
|
+
}
|
|
115
|
+
}
|
|
76
116
|
set actionButton(button) {
|
|
77
117
|
this.toggleButton = button;
|
|
78
118
|
}
|
|
@@ -95,7 +135,11 @@ export class ClrDateContainer extends ClrAbstractContainer {
|
|
|
95
135
|
/* clrForm wrapper or without clrForm */
|
|
96
136
|
return ((this.control && this.control.disabled) || (this.dateFormControlService && this.dateFormControlService.disabled));
|
|
97
137
|
}
|
|
138
|
+
get isRangePicker() {
|
|
139
|
+
return this.dateNavigationService.isRangePicker;
|
|
140
|
+
}
|
|
98
141
|
ngAfterViewInit() {
|
|
142
|
+
this.dateRangeStructuralChecks();
|
|
99
143
|
this.subscriptions.push(this.toggleService.openChange.subscribe(open => {
|
|
100
144
|
if (open) {
|
|
101
145
|
this.initializeCalendar();
|
|
@@ -141,9 +185,22 @@ export class ClrDateContainer extends ClrAbstractContainer {
|
|
|
141
185
|
initializeCalendar() {
|
|
142
186
|
this.dateNavigationService.initializeCalendar();
|
|
143
187
|
}
|
|
188
|
+
dateRangeStructuralChecks() {
|
|
189
|
+
if (this.dateNavigationService.isRangePicker) {
|
|
190
|
+
if (this.clrDateInput) {
|
|
191
|
+
console.error('Error! clr-date-range-container must contain clrStartDate and clrEndDate inputs');
|
|
192
|
+
}
|
|
193
|
+
if (!this.clrStartDateInput) {
|
|
194
|
+
console.error('Error! clr-date-range-container must contain clrStartDate input');
|
|
195
|
+
}
|
|
196
|
+
if (!this.clrEndDateInput) {
|
|
197
|
+
console.error('Error! clr-date-range-container must contain clrEndDate input');
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
}
|
|
144
201
|
}
|
|
145
|
-
ClrDateContainer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ClrDateContainer, deps: [{ token: i0.Renderer2 }, { token: i1.ClrPopoverToggleService }, { token: i2.DateNavigationService }, { token: i3.DatepickerEnabledService }, { token: i4.DateFormControlService }, { token: i5.DateIOService }, { token: i6.ClrCommonStringsService }, { token: i7.FocusService }, { token: i8.ViewManagerService }, { token: i9.ControlClassService }, { token: i10.LayoutService, optional: true }, { token: i11.NgControlService }, { token: i12.IfControlStateService }], target: i0.ɵɵFactoryTarget.Component });
|
|
146
|
-
ClrDateContainer.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: ClrDateContainer, selector: "clr-date-container", inputs: { showActionButtons: "showActionButtons", clrPosition: "clrPosition" }, host: { properties: { "class.clr-date-container": "true", "class.clr-form-control-disabled": "isInputDateDisabled", "class.clr-form-control": "true", "class.clr-row": "addGrid()" } }, providers: [
|
|
202
|
+
ClrDateContainer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ClrDateContainer, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i1.ClrPopoverToggleService }, { token: i2.DateNavigationService }, { token: i3.DatepickerEnabledService }, { token: i4.DateFormControlService }, { token: i5.DateIOService }, { token: i6.ClrCommonStringsService }, { token: i7.FocusService }, { token: i8.ViewManagerService }, { token: i9.ControlClassService }, { token: i10.LayoutService, optional: true }, { token: i11.NgControlService }, { token: i12.IfControlStateService }], target: i0.ɵɵFactoryTarget.Component });
|
|
203
|
+
ClrDateContainer.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: ClrDateContainer, selector: "clr-date-container, clr-date-range-container", inputs: { showActionButtons: "showActionButtons", clrPosition: "clrPosition", rangeOptions: "rangeOptions", min: "min", max: "max" }, host: { properties: { "class.clr-date-container": "true", "class.clr-form-control-disabled": "isInputDateDisabled", "class.clr-form-control": "true", "class.clr-row": "addGrid()" } }, providers: [
|
|
147
204
|
ControlIdService,
|
|
148
205
|
LocaleHelperService,
|
|
149
206
|
ControlClassService,
|
|
@@ -155,12 +212,19 @@ ClrDateContainer.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", versi
|
|
|
155
212
|
DateFormControlService,
|
|
156
213
|
ViewManagerService,
|
|
157
214
|
IfControlStateService,
|
|
158
|
-
], viewQueries: [{ propertyName: "actionButton", first: true, predicate: ["actionButton"], descendants: true }], usesInheritance: true, hostDirectives: [{ directive: i13.ClrPopoverHostDirective }], ngImport: i0, template: `
|
|
215
|
+
], queries: [{ propertyName: "clrDateInput", first: true, predicate: ClrDateInput, descendants: true }, { propertyName: "clrStartDateInput", first: true, predicate: ClrStartDateInput, descendants: true }, { propertyName: "clrEndDateInput", first: true, predicate: ClrEndDateInput, descendants: true }], viewQueries: [{ propertyName: "actionButton", first: true, predicate: ["actionButton"], descendants: true }], usesInheritance: true, hostDirectives: [{ directive: i13.ClrPopoverHostDirective }], ngImport: i0, template: `
|
|
159
216
|
<ng-content select="label"></ng-content>
|
|
160
217
|
<label *ngIf="!label && addGrid()"></label>
|
|
161
218
|
<div class="clr-control-container" [ngClass]="controlClass()">
|
|
162
219
|
<div class="clr-input-wrapper" clrPopoverAnchor>
|
|
163
220
|
<div class="clr-input-group" [class.clr-focus]="focus">
|
|
221
|
+
<!-- render range inputs only if using clr-date-range-container -->
|
|
222
|
+
<ng-container *ngIf="isRangePicker">
|
|
223
|
+
<ng-content select="[clrStartDate]"></ng-content>
|
|
224
|
+
<span class="date-range-separator">-</span>
|
|
225
|
+
<ng-content select="[clrEndDate]"></ng-content>
|
|
226
|
+
</ng-container>
|
|
227
|
+
<!-- no *ngIf for the singe-date input because it breaks the "auto-wrapped" date picker -->
|
|
164
228
|
<ng-content select="[clrDate]"></ng-content>
|
|
165
229
|
<button
|
|
166
230
|
#actionButton
|
|
@@ -200,13 +264,20 @@ ClrDateContainer.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", versi
|
|
|
200
264
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ClrDateContainer, decorators: [{
|
|
201
265
|
type: Component,
|
|
202
266
|
args: [{
|
|
203
|
-
selector: 'clr-date-container',
|
|
267
|
+
selector: 'clr-date-container, clr-date-range-container',
|
|
204
268
|
template: `
|
|
205
269
|
<ng-content select="label"></ng-content>
|
|
206
270
|
<label *ngIf="!label && addGrid()"></label>
|
|
207
271
|
<div class="clr-control-container" [ngClass]="controlClass()">
|
|
208
272
|
<div class="clr-input-wrapper" clrPopoverAnchor>
|
|
209
273
|
<div class="clr-input-group" [class.clr-focus]="focus">
|
|
274
|
+
<!-- render range inputs only if using clr-date-range-container -->
|
|
275
|
+
<ng-container *ngIf="isRangePicker">
|
|
276
|
+
<ng-content select="[clrStartDate]"></ng-content>
|
|
277
|
+
<span class="date-range-separator">-</span>
|
|
278
|
+
<ng-content select="[clrEndDate]"></ng-content>
|
|
279
|
+
</ng-container>
|
|
280
|
+
<!-- no *ngIf for the singe-date input because it breaks the "auto-wrapped" date picker -->
|
|
210
281
|
<ng-content select="[clrDate]"></ng-content>
|
|
211
282
|
<button
|
|
212
283
|
#actionButton
|
|
@@ -264,16 +335,31 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImpor
|
|
|
264
335
|
'[class.clr-row]': 'addGrid()',
|
|
265
336
|
},
|
|
266
337
|
}]
|
|
267
|
-
}], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i1.ClrPopoverToggleService }, { type: i2.DateNavigationService }, { type: i3.DatepickerEnabledService }, { type: i4.DateFormControlService }, { type: i5.DateIOService }, { type: i6.ClrCommonStringsService }, { type: i7.FocusService }, { type: i8.ViewManagerService }, { type: i9.ControlClassService }, { type: i10.LayoutService, decorators: [{
|
|
338
|
+
}], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i1.ClrPopoverToggleService }, { type: i2.DateNavigationService }, { type: i3.DatepickerEnabledService }, { type: i4.DateFormControlService }, { type: i5.DateIOService }, { type: i6.ClrCommonStringsService }, { type: i7.FocusService }, { type: i8.ViewManagerService }, { type: i9.ControlClassService }, { type: i10.LayoutService, decorators: [{
|
|
268
339
|
type: Optional
|
|
269
|
-
}] }, { type: i11.NgControlService }, { type: i12.IfControlStateService }]; }, propDecorators: {
|
|
340
|
+
}] }, { type: i11.NgControlService }, { type: i12.IfControlStateService }]; }, propDecorators: { clrDateInput: [{
|
|
341
|
+
type: ContentChild,
|
|
342
|
+
args: [ClrDateInput]
|
|
343
|
+
}], clrStartDateInput: [{
|
|
344
|
+
type: ContentChild,
|
|
345
|
+
args: [ClrStartDateInput]
|
|
346
|
+
}], clrEndDateInput: [{
|
|
347
|
+
type: ContentChild,
|
|
348
|
+
args: [ClrEndDateInput]
|
|
349
|
+
}], showActionButtons: [{
|
|
270
350
|
type: Input,
|
|
271
351
|
args: ['showActionButtons']
|
|
272
352
|
}], clrPosition: [{
|
|
273
353
|
type: Input,
|
|
274
354
|
args: ['clrPosition']
|
|
355
|
+
}], rangeOptions: [{
|
|
356
|
+
type: Input
|
|
357
|
+
}], min: [{
|
|
358
|
+
type: Input
|
|
359
|
+
}], max: [{
|
|
360
|
+
type: Input
|
|
275
361
|
}], actionButton: [{
|
|
276
362
|
type: ViewChild,
|
|
277
363
|
args: ['actionButton']
|
|
278
364
|
}] } });
|
|
279
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1jb250YWluZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyL3NyYy9mb3Jtcy9kYXRlcGlja2VyL2RhdGUtY29udGFpbmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7OztHQUtHO0FBRUgsT0FBTyxFQUFpQixTQUFTLEVBQWMsS0FBSyxFQUFFLFFBQVEsRUFBYSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUcsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRzNDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBRS9FLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBRXJGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQzVGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUVqRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUUxRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUMvRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDNUQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDNUUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDbEYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDeEUsT0FBTyxFQUFFLGtCQUFrQixFQUFF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Q0FBbUMsRUFBRSxxQkFBcUI7d0JBQzFELDBCQUEwQixFQUFFLE1BQU07d0JBQ2xDLGlCQUFpQixFQUFFLFdBQVc7cUJBQy9CO2lCQUNGOzswQkFpQkksUUFBUTtpSEFvQlAsaUJBQWlCO3NCQURwQixLQUFLO3VCQUFDLG1CQUFtQjtnQkFNdEIsV0FBVztzQkFEZCxLQUFLO3VCQUFDLGFBQWE7Z0JBUWhCLFlBQVk7c0JBRGYsU0FBUzt1QkFBQyxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAxNi0yMDI0IEJyb2FkY29tLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICogVGhlIHRlcm0gXCJCcm9hZGNvbVwiIHJlZmVycyB0byBCcm9hZGNvbSBJbmMuIGFuZC9vciBpdHMgc3Vic2lkaWFyaWVzLlxuICogVGhpcyBzb2Z0d2FyZSBpcyByZWxlYXNlZCB1bmRlciBNSVQgbGljZW5zZS5cbiAqIFRoZSBmdWxsIGxpY2Vuc2UgaW5mb3JtYXRpb24gY2FuIGJlIGZvdW5kIGluIExJQ0VOU0UgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgcHJvamVjdC5cbiAqL1xuXG5pbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIElucHV0LCBPcHRpb25hbCwgUmVuZGVyZXIyLCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHN0YXJ0V2l0aCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgQ2xyQ29tbW9uU3RyaW5nc1NlcnZpY2UgfSBmcm9tICcuLi8uLi91dGlscy9pMThuL2NvbW1vbi1zdHJpbmdzLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ2xyUG9wb3ZlclBvc2l0aW9ucyB9IGZyb20gJy4uLy4uL3V0aWxzL3BvcG92ZXIvZW51bXMvcG9zaXRpb25zLmVudW0nO1xuaW1wb3J0IHsgQ2xyUG9wb3ZlclBvc2l0aW9uIH0gZnJvbSAnLi4vLi4vdXRpbHMvcG9wb3Zlci9pbnRlcmZhY2VzL3BvcG92ZXItcG9zaXRpb24uaW50ZXJmYWNlJztcbmltcG9ydCB7IENsclBvcG92ZXJIb3N0RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vdXRpbHMvcG9wb3Zlci9wb3BvdmVyLWhvc3QuZGlyZWN0aXZlJztcbmltcG9ydCB7IENsclBvcG92ZXJUb2dnbGVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vdXRpbHMvcG9wb3Zlci9wcm92aWRlcnMvcG9wb3Zlci10b2dnbGUuc2VydmljZSc7XG5pbXBvcnQgeyBDbHJBYnN0cmFjdENvbnRhaW5lciB9IGZyb20gJy4uL2NvbW1vbi9hYnN0cmFjdC1jb250YWluZXInO1xuaW1wb3J0IHsgSWZDb250cm9sU3RhdGVTZXJ2aWNlIH0gZnJvbSAnLi4vY29tbW9uL2lmLWNvbnRyb2wtc3RhdGUvaWYtY29udHJvbC1zdGF0ZS5zZXJ2aWNlJztcbmltcG9ydCB7IENvbnRyb2xDbGFzc1NlcnZpY2UgfSBmcm9tICcuLi9jb21tb24vcHJvdmlkZXJzL2NvbnRyb2wtY2xhc3Muc2VydmljZSc7XG5pbXBvcnQgeyBDb250cm9sSWRTZXJ2aWNlIH0gZnJvbSAnLi4vY29tbW9uL3Byb3ZpZGVycy9jb250cm9sLWlkLnNlcnZpY2UnO1xuaW1wb3J0IHsgRm9jdXNTZXJ2aWNlIH0gZnJvbSAnLi4vY29tbW9uL3Byb3ZpZGVycy9mb2N1cy5zZXJ2aWNlJztcbmltcG9ydCB7IExheW91dFNlcnZpY2UgfSBmcm9tICcuLi9jb21tb24vcHJvdmlkZXJzL2xheW91dC5zZXJ2aWNlJztcbmltcG9ydCB7IE5nQ29udHJvbFNlcnZpY2UgfSBmcm9tICcuLi9jb21tb24vcHJvdmlkZXJzL25nLWNvbnRyb2wuc2VydmljZSc7XG5pbXBvcnQgeyBEYXlNb2RlbCB9IGZyb20gJy4vbW9kZWwvZGF5Lm1vZGVsJztcbmltcG9ydCB7IERhdGVGb3JtQ29udHJvbFNlcnZpY2UgfSBmcm9tICcuL3Byb3ZpZGVycy9kYXRlLWZvcm0tY29udHJvbC5zZXJ2aWNlJztcbmltcG9ydCB7IERhdGVJT1NlcnZpY2UgfSBmcm9tICcuL3Byb3ZpZGVycy9kYXRlLWlvLnNlcnZpY2UnO1xuaW1wb3J0IHsgRGF0ZU5hdmlnYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi9wcm92aWRlcnMvZGF0ZS1uYXZpZ2F0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgRGF0ZXBpY2tlckVuYWJsZWRTZXJ2aWNlIH0gZnJvbSAnLi9wcm92aWRlcnMvZGF0ZXBpY2tlci1lbmFibGVkLnNlcnZpY2UnO1xuaW1wb3J0IHsgTG9jYWxlSGVscGVyU2VydmljZSB9IGZyb20gJy4vcHJvdmlkZXJzL2xvY2FsZS1oZWxwZXIuc2VydmljZSc7XG5pbXBvcnQgeyBWaWV3TWFuYWdlclNlcnZpY2UgfSBmcm9tICcuL3Byb3ZpZGVycy92aWV3LW1hbmFnZXIuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Nsci1kYXRlLWNvbnRhaW5lcicsXG4gIHRlbXBsYXRlOiBgXG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwibGFiZWxcIj48L25nLWNvbnRlbnQ+XG4gICAgPGxhYmVsICpuZ0lmPVwiIWxhYmVsICYmIGFkZEdyaWQoKVwiPjwvbGFiZWw+XG4gICAgPGRpdiBjbGFzcz1cImNsci1jb250cm9sLWNvbnRhaW5lclwiIFtuZ0NsYXNzXT1cImNvbnRyb2xDbGFzcygpXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiY2xyLWlucHV0LXdyYXBwZXJcIiBjbHJQb3BvdmVyQW5jaG9yPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2xyLWlucHV0LWdyb3VwXCIgW2NsYXNzLmNsci1mb2N1c109XCJmb2N1c1wiPlxuICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltjbHJEYXRlXVwiPjwvbmctY29udGVudD5cbiAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAjYWN0aW9uQnV0dG9uXG4gICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgIGNsclBvcG92ZXJPcGVuQ2xvc2VCdXR0b25cbiAgICAgICAgICAgIGNsYXNzPVwiY2xyLWlucHV0LWdyb3VwLWljb24tYWN0aW9uXCJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJpc0lucHV0RGF0ZURpc2FibGVkXCJcbiAgICAgICAgICAgICpuZ0lmPVwiaXNFbmFibGVkXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8Y2RzLWljb24gc3RhdHVzPVwiaW5mb1wiIHNoYXBlPVwiY2FsZW5kYXJcIj48L2Nkcy1pY29uPlxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgIDxjbHItZGF0ZXBpY2tlci12aWV3LW1hbmFnZXJcbiAgICAgICAgICAgICpjbHJQb3BvdmVyQ29udGVudD1cIm9wZW47IGF0OiBwb3BvdmVyUG9zaXRpb247IG91dHNpZGVDbGlja1RvQ2xvc2U6IHRydWU7IHNjcm9sbFRvQ2xvc2U6IHRydWVcIlxuICAgICAgICAgICAgY2RrVHJhcEZvY3VzXG4gICAgICAgICAgPjwvY2xyLWRhdGVwaWNrZXItdmlldy1tYW5hZ2VyPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGNkcy1pY29uXG4gICAgICAgICAgKm5nSWY9XCJzaG93SW52YWxpZFwiXG4gICAgICAgICAgY2xhc3M9XCJjbHItdmFsaWRhdGUtaWNvblwiXG4gICAgICAgICAgc2hhcGU9XCJleGNsYW1hdGlvbi1jaXJjbGVcIlxuICAgICAgICAgIHN0YXR1cz1cImRhbmdlclwiXG4gICAgICAgICAgYXJpYS1oaWRkZW49XCJ0cnVlXCJcbiAgICAgICAgPjwvY2RzLWljb24+XG4gICAgICAgIDxjZHMtaWNvblxuICAgICAgICAgICpuZ0lmPVwic2hvd1ZhbGlkXCJcbiAgICAgICAgICBjbGFzcz1cImNsci12YWxpZGF0ZS1pY29uXCJcbiAgICAgICAgICBzaGFwZT1cImNoZWNrLWNpcmNsZVwiXG4gICAgICAgICAgc3RhdHVzPVwic3VjY2Vzc1wiXG4gICAgICAgICAgYXJpYS1oaWRkZW49XCJ0cnVlXCJcbiAgICAgICAgPjwvY2RzLWljb24+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImNsci1jb250cm9sLWhlbHBlclwiICpuZ0lmPVwic2hvd0hlbHBlclwiPjwvbmctY29udGVudD5cbiAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImNsci1jb250cm9sLWVycm9yXCIgKm5nSWY9XCJzaG93SW52YWxpZFwiPjwvbmctY29udGVudD5cbiAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImNsci1jb250cm9sLXN1Y2Nlc3NcIiAqbmdJZj1cInNob3dWYWxpZFwiPjwvbmctY29udGVudD5cbiAgICA8L2Rpdj5cbiAgYCxcbiAgcHJvdmlkZXJzOiBbXG4gICAgQ29udHJvbElkU2VydmljZSxcbiAgICBMb2NhbGVIZWxwZXJTZXJ2aWNlLFxuICAgIENvbnRyb2xDbGFzc1NlcnZpY2UsXG4gICAgRm9jdXNTZXJ2aWNlLFxuICAgIE5nQ29udHJvbFNlcnZpY2UsXG4gICAgRGF0ZUlPU2VydmljZSxcbiAgICBEYXRlTmF2aWdhdGlvblNlcnZpY2UsXG4gICAgRGF0ZXBpY2tlckVuYWJsZWRTZXJ2aWNlLFxuICAgIERhdGVGb3JtQ29udHJvbFNlcnZpY2UsXG4gICAgVmlld01hbmFnZXJTZXJ2aWNlLFxuICAgIElmQ29udHJvbFN0YXRlU2VydmljZSxcbiAgXSxcbiAgaG9zdERpcmVjdGl2ZXM6IFtDbHJQb3BvdmVySG9zdERpcmVjdGl2ZV0sXG4gIGhvc3Q6IHtcbiAgICAnW2NsYXNzLmNsci1kYXRlLWNvbnRhaW5lcl0nOiAndHJ1ZScsXG4gICAgJ1tjbGFzcy5jbHItZm9ybS1jb250cm9sLWRpc2FibGVkXSc6ICdpc0lucHV0RGF0ZURpc2FibGVkJyxcbiAgICAnW2NsYXNzLmNsci1mb3JtLWNvbnRyb2xdJzogJ3RydWUnLFxuICAgICdbY2xhc3MuY2xyLXJvd10nOiAnYWRkR3JpZCgpJyxcbiAgfSxcbn0pXG5leHBvcnQgY2xhc3MgQ2xyRGF0ZUNvbnRhaW5lciBleHRlbmRzIENsckFic3RyYWN0Q29udGFpbmVyIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gIGZvY3VzID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSB0b2dnbGVCdXR0b246IEVsZW1lbnRSZWY8SFRNTEJ1dHRvbkVsZW1lbnQ+O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIHByaXZhdGUgdG9nZ2xlU2VydmljZTogQ2xyUG9wb3ZlclRvZ2dsZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBkYXRlTmF2aWdhdGlvblNlcnZpY2U6IERhdGVOYXZpZ2F0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIGRhdGVwaWNrZXJFbmFibGVkU2VydmljZTogRGF0ZXBpY2tlckVuYWJsZWRTZXJ2aWNlLFxuICAgIHByaXZhdGUgZGF0ZUZvcm1Db250cm9sU2VydmljZTogRGF0ZUZvcm1Db250cm9sU2VydmljZSxcbiAgICBwcml2YXRlIGRhdGVJT1NlcnZpY2U6IERhdGVJT1NlcnZpY2UsXG4gICAgcHVibGljIGNvbW1vblN0cmluZ3M6IENsckNvbW1vblN0cmluZ3NTZXJ2aWNlLFxuICAgIGZvY3VzU2VydmljZTogRm9jdXNTZXJ2aWNlLFxuICAgIHByaXZhdGUgdmlld01hbmFnZXJTZXJ2aWNlOiBWaWV3TWFuYWdlclNlcnZpY2UsXG4gICAgcHJvdGVjdGVkIG92ZXJyaWRlIGNvbnRyb2xDbGFzc1NlcnZpY2U6IENvbnRyb2xDbGFzc1NlcnZpY2UsXG4gICAgQE9wdGlvbmFsKCkgcHJvdGVjdGVkIG92ZXJyaWRlIGxheW91dFNlcnZpY2U6IExheW91dFNlcnZpY2UsXG4gICAgcHJvdGVjdGVkIG92ZXJyaWRlIG5nQ29udHJvbFNlcnZpY2U6IE5nQ29udHJvbFNlcnZpY2UsXG4gICAgcHJvdGVjdGVkIG92ZXJyaWRlIGlmQ29udHJvbFN0YXRlU2VydmljZTogSWZDb250cm9sU3RhdGVTZXJ2aWNlXG4gICkge1xuICAgIHN1cGVyKGlmQ29udHJvbFN0YXRlU2VydmljZSwgbGF5b3V0U2VydmljZSwgY29udHJvbENsYXNzU2VydmljZSwgbmdDb250cm9sU2VydmljZSk7XG5cbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcbiAgICAgIGZvY3VzU2VydmljZS5mb2N1c0NoYW5nZS5zdWJzY3JpYmUoc3RhdGUgPT4ge1xuICAgICAgICB0aGlzLmZvY3VzID0gc3RhdGU7XG4gICAgICB9KVxuICAgICk7XG5cbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcbiAgICAgIHRvZ2dsZVNlcnZpY2Uub3BlbkNoYW5nZS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICBkYXRlRm9ybUNvbnRyb2xTZXJ2aWNlLm1hcmtBc1RvdWNoZWQoKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIEBJbnB1dCgnc2hvd0FjdGlvbkJ1dHRvbnMnKVxuICBzZXQgc2hvd0FjdGlvbkJ1dHRvbnMoZmxhZzogYm9vbGVhbikge1xuICAgIHRoaXMuZGF0ZU5hdmlnYXRpb25TZXJ2aWNlLmhhc0FjdGlvbkJ1dHRvbnMgPSBmbGFnO1xuICB9XG5cbiAgQElucHV0KCdjbHJQb3NpdGlvbicpXG4gIHNldCBjbHJQb3NpdGlvbihwb3NpdGlvbjogc3RyaW5nKSB7XG4gICAgaWYgKHBvc2l0aW9uICYmIChDbHJQb3BvdmVyUG9zaXRpb25zIGFzIFJlY29yZDxzdHJpbmcsIGFueT4pW3Bvc2l0aW9uXSkge1xuICAgICAgdGhpcy52aWV3TWFuYWdlclNlcnZpY2UucG9zaXRpb24gPSAoQ2xyUG9wb3ZlclBvc2l0aW9ucyBhcyBSZWNvcmQ8c3RyaW5nLCBhbnk+KVtwb3NpdGlvbl07XG4gICAgfVxuICB9XG5cbiAgQFZpZXdDaGlsZCgnYWN0aW9uQnV0dG9uJylcbiAgc2V0IGFjdGlvbkJ1dHRvbihidXR0b246IEVsZW1lbnRSZWY8SFRNTEJ1dHRvbkVsZW1lbnQ+KSB7XG4gICAgdGhpcy50b2dnbGVCdXR0b24gPSBidXR0b247XG4gIH1cblxuICBnZXQgcG9wb3ZlclBvc2l0aW9uKCk6IENsclBvcG92ZXJQb3NpdGlvbiB7XG4gICAgcmV0dXJuIHRoaXMudmlld01hbmFnZXJTZXJ2aWNlLnBvc2l0aW9uO1xuICB9XG5cbiAgZ2V0IG9wZW4oKSB7XG4gICAgcmV0dXJuIHRoaXMudG9nZ2xlU2VydmljZS5vcGVuO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgaWYgdGhlIERhdGVwaWNrZXIgaXMgZW5hYmxlZCBvciBub3QuIElmIGRpc2FibGVkLCBoaWRlcyB0aGUgZGF0ZXBpY2tlciB0cmlnZ2VyLlxuICAgKi9cbiAgZ2V0IGlzRW5hYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5kYXRlcGlja2VyRW5hYmxlZFNlcnZpY2UuaXNFbmFibGVkO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybiBpZiBEYXRlcGlja2VyIGlzIGRpYWJsZWQgb3Igbm90IGFzIEZvcm0gQ29udHJvbFxuICAgKi9cbiAgZ2V0IGlzSW5wdXREYXRlRGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgLyogY2xyRm9ybSB3cmFwcGVyIG9yIHdpdGhvdXQgY2xyRm9ybSAqL1xuICAgIHJldHVybiAoXG4gICAgICAodGhpcy5jb250cm9sICYmIHRoaXMuY29udHJvbC5kaXNhYmxlZCkgfHwgKHRoaXMuZGF0ZUZvcm1Db250cm9sU2VydmljZSAmJiB0aGlzLmRhdGVGb3JtQ29udHJvbFNlcnZpY2UuZGlzYWJsZWQpXG4gICAgKTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcbiAgICAgIHRoaXMudG9nZ2xlU2VydmljZS5vcGVuQ2hhbmdlLnN1YnNjcmliZShvcGVuID0+IHtcbiAgICAgICAgaWYgKG9wZW4pIHtcbiAgICAgICAgICB0aGlzLmluaXRpYWxpemVDYWxlbmRhcigpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMudG9nZ2xlQnV0dG9uLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICAgICAgICB0aGlzLmRhdGVOYXZpZ2F0aW9uU2VydmljZS5yZXNldFNlbGVjdGVkRGF5KCk7XG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKTtcblxuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKHRoaXMubGlzdGVuRm9yRGF0ZUNoYW5nZXMoKSk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJuIHRoZSBsYWJlbCBmb3IgdGhlIHRvZ2dsZSBidXR0b24uXG4gICAqIElmIHRoZXJlJ3MgYSBzZWxlY3RlZCBkYXRlLCB0aGUgZGF0ZSBpcyBpbmNsdWRlZCBpbiB0aGUgbGFiZWwuXG4gICAqL1xuICBwcml2YXRlIGdldFRvZ2dsZUJ1dHRvbkxhYmVsKGRheTogRGF5TW9kZWwpOiBzdHJpbmcge1xuICAgIGlmIChkYXkpIHtcbiAgICAgIGNvbnN0IGZvcm1hdHRlZERhdGUgPSB0aGlzLmRhdGVJT1NlcnZpY2UudG9Mb2NhbGVEaXNwbGF5Rm9ybWF0U3RyaW5nKGRheS50b0RhdGUoKSk7XG5cbiAgICAgIHJldHVybiB0aGlzLmNvbW1vblN0cmluZ3MucGFyc2UodGhpcy5jb21tb25TdHJpbmdzLmtleXMuZGF0ZXBpY2tlclRvZ2dsZUNoYW5nZURhdGVMYWJlbCwge1xuICAgICAgICBTRUxFQ1RFRF9EQVRFOiBmb3JtYXR0ZWREYXRlLFxuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmNvbW1vblN0cmluZ3Mua2V5cy5kYXRlcGlja2VyVG9nZ2xlQ2hvb3NlRGF0ZUxhYmVsO1xuICB9XG5cbiAgcHJpdmF0ZSBsaXN0ZW5Gb3JEYXRlQ2hhbmdlcygpIHtcbiAgICAvLyBiZWNhdXNlIGRhdGUtaW5wdXQudHMgaW5pdGlhbGl6ZXMgdGhlIGlucHV0IGluIG5nQWZ0ZXJWaWV3SW5pdCxcbiAgICAvLyB1c2luZyBhIGRhdGFib3VuZCBhdHRyaWJ1dGUgdG8gY2hhbmdlIHRoZSBidXR0b24gbGFiZWxzIHJlc3VsdHMgaW4gRXhwcmVzc2lvbkNoYW5nZWRBZnRlckl0SGFzQmVlbkNoZWNrZWRFcnJvci5cbiAgICAvLyBzbyBpbnN0ZWFkLCB1cGRhdGUgdGhlIGF0dHJpYnV0ZSBkaXJlY3RseSBvbiB0aGUgZWxlbWVudFxuICAgIHJldHVybiB0aGlzLmRhdGVOYXZpZ2F0aW9uU2VydmljZS5zZWxlY3RlZERheUNoYW5nZVxuICAgICAgLnBpcGUoc3RhcnRXaXRoKHRoaXMuZGF0ZU5hdmlnYXRpb25TZXJ2aWNlLnNlbGVjdGVkRGF5KSlcbiAgICAgIC5zdWJzY3JpYmUoZGF5ID0+IHtcbiAgICAgICAgaWYgKHRoaXMuaXNFbmFibGVkKSB7XG4gICAgICAgICAgY29uc3QgbGFiZWwgPSB0aGlzLmdldFRvZ2dsZUJ1dHRvbkxhYmVsKGRheSk7XG4gICAgICAgICAgY29uc3QgdG9nZ2xlRWwgPSB0aGlzLnRvZ2dsZUJ1dHRvbi5uYXRpdmVFbGVtZW50O1xuICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKHRvZ2dsZUVsLCAnYXJpYS1sYWJlbCcsIGxhYmVsKTtcbiAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZSh0b2dnbGVFbCwgJ3RpdGxlJywgbGFiZWwpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQcm9jZXNzZXMgdGhlIHVzZXIgaW5wdXQgYW5kIEluaXRpYWxpemVzIHRoZSBDYWxlbmRhciBldmVyeXRpbWUgdGhlIGRhdGVwaWNrZXIgcG9wb3ZlciBpcyBvcGVuLlxuICAgKi9cbiAgcHJpdmF0ZSBpbml0aWFsaXplQ2FsZW5kYXIoKTogdm9pZCB7XG4gICAgdGhpcy5kYXRlTmF2aWdhdGlvblNlcnZpY2UuaW5pdGlhbGl6ZUNhbGVuZGFyKCk7XG4gIH1cbn1cbiJdfQ==
|
|
365
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1jb250YWluZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyL3NyYy9mb3Jtcy9kYXRlcGlja2VyL2RhdGUtY29udGFpbmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7OztHQUtHO0FBRUgsT0FBTyxFQUVMLFNBQVMsRUFDVCxZQUFZLEVBRVosS0FBSyxFQUNMLFFBQVEsRUFFUixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRzNDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBRS9FLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBRXJGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQzVGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUVqRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbkQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRXZELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM1RCxPQUFPLEVBQUUscUJBQXFC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QixpQkFBaUI7c0JBRHBCLEtBQUs7dUJBQUMsbUJBQW1CO2dCQVV0QixXQUFXO3NCQURkLEtBQUs7dUJBQUMsYUFBYTtnQkFRaEIsWUFBWTtzQkFEZixLQUFLO2dCQU1GLEdBQUc7c0JBRE4sS0FBSztnQkFjRixHQUFHO3NCQUROLEtBQUs7Z0JBY0YsWUFBWTtzQkFEZixTQUFTO3VCQUFDLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDE2LTIwMjUgQnJvYWRjb20uIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKiBUaGUgdGVybSBcIkJyb2FkY29tXCIgcmVmZXJzIHRvIEJyb2FkY29tIEluYy4gYW5kL29yIGl0cyBzdWJzaWRpYXJpZXMuXG4gKiBUaGlzIHNvZnR3YXJlIGlzIHJlbGVhc2VkIHVuZGVyIE1JVCBsaWNlbnNlLlxuICogVGhlIGZ1bGwgbGljZW5zZSBpbmZvcm1hdGlvbiBjYW4gYmUgZm91bmQgaW4gTElDRU5TRSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBwcm9qZWN0LlxuICovXG5cbmltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENvbXBvbmVudCxcbiAgQ29udGVudENoaWxkLFxuICBFbGVtZW50UmVmLFxuICBJbnB1dCxcbiAgT3B0aW9uYWwsXG4gIFJlbmRlcmVyMixcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHN0YXJ0V2l0aCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgQ2xyQ29tbW9uU3RyaW5nc1NlcnZpY2UgfSBmcm9tICcuLi8uLi91dGlscy9pMThuL2NvbW1vbi1zdHJpbmdzLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ2xyUG9wb3ZlclBvc2l0aW9ucyB9IGZyb20gJy4uLy4uL3V0aWxzL3BvcG92ZXIvZW51bXMvcG9zaXRpb25zLmVudW0nO1xuaW1wb3J0IHsgQ2xyUG9wb3ZlclBvc2l0aW9uIH0gZnJvbSAnLi4vLi4vdXRpbHMvcG9wb3Zlci9pbnRlcmZhY2VzL3BvcG92ZXItcG9zaXRpb24uaW50ZXJmYWNlJztcbmltcG9ydCB7IENsclBvcG92ZXJIb3N0RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vdXRpbHMvcG9wb3Zlci9wb3BvdmVyLWhvc3QuZGlyZWN0aXZlJztcbmltcG9ydCB7IENsclBvcG92ZXJUb2dnbGVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vdXRpbHMvcG9wb3Zlci9wcm92aWRlcnMvcG9wb3Zlci10b2dnbGUuc2VydmljZSc7XG5pbXBvcnQgeyBDbHJBYnN0cmFjdENvbnRhaW5lciB9IGZyb20gJy4uL2NvbW1vbi9hYnN0cmFjdC1jb250YWluZXInO1xuaW1wb3J0IHsgSWZDb250cm9sU3RhdGVTZXJ2aWNlIH0gZnJvbSAnLi4vY29tbW9uL2lmLWNvbnRyb2wtc3RhdGUvaWYtY29udHJvbC1zdGF0ZS5zZXJ2aWNlJztcbmltcG9ydCB7IENvbnRyb2xDbGFzc1NlcnZpY2UgfSBmcm9tICcuLi9jb21tb24vcHJvdmlkZXJzL2NvbnRyb2wtY2xhc3Muc2VydmljZSc7XG5pbXBvcnQgeyBDb250cm9sSWRTZXJ2aWNlIH0gZnJvbSAnLi4vY29tbW9uL3Byb3ZpZGVycy9jb250cm9sLWlkLnNlcnZpY2UnO1xuaW1wb3J0IHsgRm9jdXNTZXJ2aWNlIH0gZnJvbSAnLi4vY29tbW9uL3Byb3ZpZGVycy9mb2N1cy5zZXJ2aWNlJztcbmltcG9ydCB7IExheW91dFNlcnZpY2UgfSBmcm9tICcuLi9jb21tb24vcHJvdmlkZXJzL2xheW91dC5zZXJ2aWNlJztcbmltcG9ydCB7IE5nQ29udHJvbFNlcnZpY2UgfSBmcm9tICcuLi9jb21tb24vcHJvdmlkZXJzL25nLWNvbnRyb2wuc2VydmljZSc7XG5pbXBvcnQgeyBDbHJFbmREYXRlSW5wdXQgfSBmcm9tICcuL2RhdGUtZW5kLWlucHV0JztcbmltcG9ydCB7IENsckRhdGVJbnB1dCB9IGZyb20gJy4vZGF0ZS1zaW5nbGUtaW5wdXQnO1xuaW1wb3J0IHsgQ2xyU3RhcnREYXRlSW5wdXQgfSBmcm9tICcuL2RhdGUtc3RhcnQtaW5wdXQnO1xuaW1wb3J0IHsgRGF5TW9kZWwgfSBmcm9tICcuL21vZGVsL2RheS5tb2RlbCc7XG5pbXBvcnQgeyBEYXRlRm9ybUNvbnRyb2xTZXJ2aWNlIH0gZnJvbSAnLi9wcm92aWRlcnMvZGF0ZS1mb3JtLWNvbnRyb2wuc2VydmljZSc7XG5pbXBvcnQgeyBEYXRlSU9TZXJ2aWNlIH0gZnJvbSAnLi9wcm92aWRlcnMvZGF0ZS1pby5zZXJ2aWNlJztcbmltcG9ydCB7IERhdGVOYXZpZ2F0aW9uU2VydmljZSB9IGZyb20gJy4vcHJvdmlkZXJzL2RhdGUtbmF2aWdhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IERhdGVwaWNrZXJFbmFibGVkU2VydmljZSB9IGZyb20gJy4vcHJvdmlkZXJzL2RhdGVwaWNrZXItZW5hYmxlZC5zZXJ2aWNlJztcbmltcG9ydCB7IExvY2FsZUhlbHBlclNlcnZpY2UgfSBmcm9tICcuL3Byb3ZpZGVycy9sb2NhbGUtaGVscGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgVmlld01hbmFnZXJTZXJ2aWNlIH0gZnJvbSAnLi9wcm92aWRlcnMvdmlldy1tYW5hZ2VyLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjbHItZGF0ZS1jb250YWluZXIsIGNsci1kYXRlLXJhbmdlLWNvbnRhaW5lcicsXG4gIHRlbXBsYXRlOiBgXG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwibGFiZWxcIj48L25nLWNvbnRlbnQ+XG4gICAgPGxhYmVsICpuZ0lmPVwiIWxhYmVsICYmIGFkZEdyaWQoKVwiPjwvbGFiZWw+XG4gICAgPGRpdiBjbGFzcz1cImNsci1jb250cm9sLWNvbnRhaW5lclwiIFtuZ0NsYXNzXT1cImNvbnRyb2xDbGFzcygpXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiY2xyLWlucHV0LXdyYXBwZXJcIiBjbHJQb3BvdmVyQW5jaG9yPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2xyLWlucHV0LWdyb3VwXCIgW2NsYXNzLmNsci1mb2N1c109XCJmb2N1c1wiPlxuICAgICAgICAgIDwhLS0gcmVuZGVyIHJhbmdlIGlucHV0cyBvbmx5IGlmIHVzaW5nIGNsci1kYXRlLXJhbmdlLWNvbnRhaW5lciAtLT5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNSYW5nZVBpY2tlclwiPlxuICAgICAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2NsclN0YXJ0RGF0ZV1cIj48L25nLWNvbnRlbnQ+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImRhdGUtcmFuZ2Utc2VwYXJhdG9yXCI+LTwvc3Bhbj5cbiAgICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltjbHJFbmREYXRlXVwiPjwvbmctY29udGVudD5cbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICA8IS0tIG5vICpuZ0lmIGZvciB0aGUgc2luZ2UtZGF0ZSBpbnB1dCBiZWNhdXNlIGl0IGJyZWFrcyB0aGUgXCJhdXRvLXdyYXBwZWRcIiBkYXRlIHBpY2tlciAtLT5cbiAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbY2xyRGF0ZV1cIj48L25nLWNvbnRlbnQ+XG4gICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgI2FjdGlvbkJ1dHRvblxuICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICBjbHJQb3BvdmVyT3BlbkNsb3NlQnV0dG9uXG4gICAgICAgICAgICBjbGFzcz1cImNsci1pbnB1dC1ncm91cC1pY29uLWFjdGlvblwiXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiaXNJbnB1dERhdGVEaXNhYmxlZFwiXG4gICAgICAgICAgICAqbmdJZj1cImlzRW5hYmxlZFwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGNkcy1pY29uIHN0YXR1cz1cImluZm9cIiBzaGFwZT1cImNhbGVuZGFyXCI+PC9jZHMtaWNvbj5cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICA8Y2xyLWRhdGVwaWNrZXItdmlldy1tYW5hZ2VyXG4gICAgICAgICAgICAqY2xyUG9wb3ZlckNvbnRlbnQ9XCJvcGVuOyBhdDogcG9wb3ZlclBvc2l0aW9uOyBvdXRzaWRlQ2xpY2tUb0Nsb3NlOiB0cnVlOyBzY3JvbGxUb0Nsb3NlOiB0cnVlXCJcbiAgICAgICAgICAgIGNka1RyYXBGb2N1c1xuICAgICAgICAgID48L2Nsci1kYXRlcGlja2VyLXZpZXctbWFuYWdlcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxjZHMtaWNvblxuICAgICAgICAgICpuZ0lmPVwic2hvd0ludmFsaWRcIlxuICAgICAgICAgIGNsYXNzPVwiY2xyLXZhbGlkYXRlLWljb25cIlxuICAgICAgICAgIHNoYXBlPVwiZXhjbGFtYXRpb24tY2lyY2xlXCJcbiAgICAgICAgICBzdGF0dXM9XCJkYW5nZXJcIlxuICAgICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgICAgID48L2Nkcy1pY29uPlxuICAgICAgICA8Y2RzLWljb25cbiAgICAgICAgICAqbmdJZj1cInNob3dWYWxpZFwiXG4gICAgICAgICAgY2xhc3M9XCJjbHItdmFsaWRhdGUtaWNvblwiXG4gICAgICAgICAgc2hhcGU9XCJjaGVjay1jaXJjbGVcIlxuICAgICAgICAgIHN0YXR1cz1cInN1Y2Nlc3NcIlxuICAgICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgICAgID48L2Nkcy1pY29uPlxuICAgICAgPC9kaXY+XG4gICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJjbHItY29udHJvbC1oZWxwZXJcIiAqbmdJZj1cInNob3dIZWxwZXJcIj48L25nLWNvbnRlbnQ+XG4gICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJjbHItY29udHJvbC1lcnJvclwiICpuZ0lmPVwic2hvd0ludmFsaWRcIj48L25nLWNvbnRlbnQ+XG4gICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJjbHItY29udHJvbC1zdWNjZXNzXCIgKm5nSWY9XCJzaG93VmFsaWRcIj48L25nLWNvbnRlbnQ+XG4gICAgPC9kaXY+XG4gIGAsXG4gIHByb3ZpZGVyczogW1xuICAgIENvbnRyb2xJZFNlcnZpY2UsXG4gICAgTG9jYWxlSGVscGVyU2VydmljZSxcbiAgICBDb250cm9sQ2xhc3NTZXJ2aWNlLFxuICAgIEZvY3VzU2VydmljZSxcbiAgICBOZ0NvbnRyb2xTZXJ2aWNlLFxuICAgIERhdGVJT1NlcnZpY2UsXG4gICAgRGF0ZU5hdmlnYXRpb25TZXJ2aWNlLFxuICAgIERhdGVwaWNrZXJFbmFibGVkU2VydmljZSxcbiAgICBEYXRlRm9ybUNvbnRyb2xTZXJ2aWNlLFxuICAgIFZpZXdNYW5hZ2VyU2VydmljZSxcbiAgICBJZkNvbnRyb2xTdGF0ZVNlcnZpY2UsXG4gIF0sXG4gIGhvc3REaXJlY3RpdmVzOiBbQ2xyUG9wb3Zlckhvc3REaXJlY3RpdmVdLFxuICBob3N0OiB7XG4gICAgJ1tjbGFzcy5jbHItZGF0ZS1jb250YWluZXJdJzogJ3RydWUnLFxuICAgICdbY2xhc3MuY2xyLWZvcm0tY29udHJvbC1kaXNhYmxlZF0nOiAnaXNJbnB1dERhdGVEaXNhYmxlZCcsXG4gICAgJ1tjbGFzcy5jbHItZm9ybS1jb250cm9sXSc6ICd0cnVlJyxcbiAgICAnW2NsYXNzLmNsci1yb3ddJzogJ2FkZEdyaWQoKScsXG4gIH0sXG59KVxuZXhwb3J0IGNsYXNzIENsckRhdGVDb250YWluZXIgZXh0ZW5kcyBDbHJBYnN0cmFjdENvbnRhaW5lciBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuICBmb2N1cyA9IGZhbHNlO1xuXG4gIEBDb250ZW50Q2hpbGQoQ2xyRGF0ZUlucHV0KSBwcml2YXRlIHJlYWRvbmx5IGNsckRhdGVJbnB1dDogQ2xyRGF0ZUlucHV0O1xuICBAQ29udGVudENoaWxkKENsclN0YXJ0RGF0ZUlucHV0KSBwcml2YXRlIHJlYWRvbmx5IGNsclN0YXJ0RGF0ZUlucHV0OiBDbHJTdGFydERhdGVJbnB1dDtcbiAgQENvbnRlbnRDaGlsZChDbHJFbmREYXRlSW5wdXQpIHByaXZhdGUgcmVhZG9ubHkgY2xyRW5kRGF0ZUlucHV0OiBDbHJFbmREYXRlSW5wdXQ7XG5cbiAgcHJpdmF0ZSB0b2dnbGVCdXR0b246IEVsZW1lbnRSZWY8SFRNTEJ1dHRvbkVsZW1lbnQ+O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIHByb3RlY3RlZCBlbGVtOiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgdG9nZ2xlU2VydmljZTogQ2xyUG9wb3ZlclRvZ2dsZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBkYXRlTmF2aWdhdGlvblNlcnZpY2U6IERhdGVOYXZpZ2F0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIGRhdGVwaWNrZXJFbmFibGVkU2VydmljZTogRGF0ZXBpY2tlckVuYWJsZWRTZXJ2aWNlLFxuICAgIHByaXZhdGUgZGF0ZUZvcm1Db250cm9sU2VydmljZTogRGF0ZUZvcm1Db250cm9sU2VydmljZSxcbiAgICBwcml2YXRlIGRhdGVJT1NlcnZpY2U6IERhdGVJT1NlcnZpY2UsXG4gICAgcHVibGljIGNvbW1vblN0cmluZ3M6IENsckNvbW1vblN0cmluZ3NTZXJ2aWNlLFxuICAgIGZvY3VzU2VydmljZTogRm9jdXNTZXJ2aWNlLFxuICAgIHByaXZhdGUgdmlld01hbmFnZXJTZXJ2aWNlOiBWaWV3TWFuYWdlclNlcnZpY2UsXG4gICAgcHJvdGVjdGVkIG92ZXJyaWRlIGNvbnRyb2xDbGFzc1NlcnZpY2U6IENvbnRyb2xDbGFzc1NlcnZpY2UsXG4gICAgQE9wdGlvbmFsKCkgcHJvdGVjdGVkIG92ZXJyaWRlIGxheW91dFNlcnZpY2U6IExheW91dFNlcnZpY2UsXG4gICAgcHJvdGVjdGVkIG92ZXJyaWRlIG5nQ29udHJvbFNlcnZpY2U6IE5nQ29udHJvbFNlcnZpY2UsXG4gICAgcHJvdGVjdGVkIG92ZXJyaWRlIGlmQ29udHJvbFN0YXRlU2VydmljZTogSWZDb250cm9sU3RhdGVTZXJ2aWNlXG4gICkge1xuICAgIHN1cGVyKGlmQ29udHJvbFN0YXRlU2VydmljZSwgbGF5b3V0U2VydmljZSwgY29udHJvbENsYXNzU2VydmljZSwgbmdDb250cm9sU2VydmljZSk7XG5cbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcbiAgICAgIGZvY3VzU2VydmljZS5mb2N1c0NoYW5nZS5zdWJzY3JpYmUoc3RhdGUgPT4ge1xuICAgICAgICB0aGlzLmZvY3VzID0gc3RhdGU7XG4gICAgICB9KVxuICAgICk7XG5cbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcbiAgICAgIHRvZ2dsZVNlcnZpY2Uub3BlbkNoYW5nZS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICBkYXRlRm9ybUNvbnRyb2xTZXJ2aWNlLm1hcmtBc1RvdWNoZWQoKTtcbiAgICAgIH0pXG4gICAgKTtcblxuICAgIGlmIChkYXRlTmF2aWdhdGlvblNlcnZpY2UpIHtcbiAgICAgIGNvbnN0IHRhZ05hbWUgPSBlbGVtLm5hdGl2ZUVsZW1lbnQudGFnTmFtZS50b0xvd2VyQ2FzZSgpO1xuICAgICAgZGF0ZU5hdmlnYXRpb25TZXJ2aWNlLmhhc0FjdGlvbkJ1dHRvbnMgPSBkYXRlTmF2aWdhdGlvblNlcnZpY2UuaXNSYW5nZVBpY2tlciA9XG4gICAgICAgIHRhZ05hbWUgPT09ICdjbHItZGF0ZS1yYW5nZS1jb250YWluZXInO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBGb3IgZGF0ZSByYW5nZSBwaWNrZXIgYWN0aW9ucyBidXR0b25zIGFyZSBzaG93biBieSBkZWZhdWx0XG4gICAqL1xuICBASW5wdXQoJ3Nob3dBY3Rpb25CdXR0b25zJylcbiAgc2V0IHNob3dBY3Rpb25CdXR0b25zKGZsYWc6IGJvb2xlYW4pIHtcbiAgICBpZiAodGhpcy5kYXRlTmF2aWdhdGlvblNlcnZpY2UuaXNSYW5nZVBpY2tlciAmJiAhZmxhZykge1xuICAgICAgY29uc29sZS5lcnJvcignRXJyb3IhIFRoZSBkYXRlIHJhbmdlIHBpY2tlciByZXF1aXJlcyBhY3Rpb24gYnV0dG9ucywgW3Nob3dBY3Rpb25CdXR0b25zXSBjYW5ub3QgYmUgdHVybmVkIG9mZi4nKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5kYXRlTmF2aWdhdGlvblNlcnZpY2UuaGFzQWN0aW9uQnV0dG9ucyA9IGZsYWc7XG4gICAgfVxuICB9XG5cbiAgQElucHV0KCdjbHJQb3NpdGlvbicpXG4gIHNldCBjbHJQb3NpdGlvbihwb3NpdGlvbjogc3RyaW5nKSB7XG4gICAgaWYgKHBvc2l0aW9uICYmIChDbHJQb3BvdmVyUG9zaXRpb25zIGFzIFJlY29yZDxzdHJpbmcsIGFueT4pW3Bvc2l0aW9uXSkge1xuICAgICAgdGhpcy52aWV3TWFuYWdlclNlcnZpY2UucG9zaXRpb24gPSAoQ2xyUG9wb3ZlclBvc2l0aW9ucyBhcyBSZWNvcmQ8c3RyaW5nLCBhbnk+KVtwb3NpdGlvbl07XG4gICAgfVxuICB9XG5cbiAgQElucHV0KClcbiAgc2V0IHJhbmdlT3B0aW9ucyhyYW5nZU9wdGlvbnMpIHtcbiAgICB0aGlzLmRhdGVJT1NlcnZpY2Uuc2V0UmFuZ2VPcHRpb25zKHJhbmdlT3B0aW9ucyk7XG4gIH1cblxuICBASW5wdXQoKVxuICBzZXQgbWluKGRhdGVTdHJpbmc6IHN0cmluZykge1xuICAgIGlmICh0aGlzLmRhdGVOYXZpZ2F0aW9uU2VydmljZS5pc1JhbmdlUGlja2VyKSB7XG4gICAgICB0aGlzLmRhdGVJT1NlcnZpY2Uuc2V0TWluRGF0ZShkYXRlU3RyaW5nKTtcbiAgICAgIHRoaXMuY2xyU3RhcnREYXRlSW5wdXQ/LnRyaWdnZXJDb250cm9sSW5wdXRWYWxpZGF0aW9uKCk7XG4gICAgICB0aGlzLmNsckVuZERhdGVJbnB1dD8udHJpZ2dlckNvbnRyb2xJbnB1dFZhbGlkYXRpb24oKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc29sZS5lcnJvcihcbiAgICAgICAgJ0Vycm9yISBUaGUgZGF0ZSBjb250YWluZXIgW21pbl0gaW5wdXQgb25seSB3b3JrcyBmb3IgZGF0ZSByYW5nZSBwaWNrZXJzLiBVc2UgdGhlIG5hdGl2ZSBgbWluYCBhdHRyaWJ1dGUvcHJvcGVydHkgZm9yIHNpbmdsZS1kYXRlIGlucHV0cy4nXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHNldCBtYXgoZGF0ZVN0cmluZzogc3RyaW5nKSB7XG4gICAgaWYgKHRoaXMuZGF0ZU5hdmlnYXRpb25TZXJ2aWNlLmlzUmFuZ2VQaWNrZXIpIHtcbiAgICAgIHRoaXMuZGF0ZUlPU2VydmljZS5zZXRNYXhEYXRlKGRhdGVTdHJpbmcpO1xuICAgICAgdGhpcy5jbHJTdGFydERhdGVJbnB1dD8udHJpZ2dlckNvbnRyb2xJbnB1dFZhbGlkYXRpb24oKTtcbiAgICAgIHRoaXMuY2xyRW5kRGF0ZUlucHV0Py50cmlnZ2VyQ29udHJvbElucHV0VmFsaWRhdGlvbigpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zb2xlLmVycm9yKFxuICAgICAgICAnRXJyb3IhIFRoZSBkYXRlIGNvbnRhaW5lciBbbWF4XSBpbnB1dCBvbmx5IHdvcmtzIGZvciBkYXRlIHJhbmdlIHBpY2tlcnMuIFVzZSB0aGUgbmF0aXZlIGBtYXhgIGF0dHJpYnV0ZS9wcm9wZXJ0eSBmb3Igc2luZ2xlLWRhdGUgaW5wdXRzLidcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgQFZpZXdDaGlsZCgnYWN0aW9uQnV0dG9uJylcbiAgc2V0IGFjdGlvbkJ1dHRvbihidXR0b246IEVsZW1lbnRSZWY8SFRNTEJ1dHRvbkVsZW1lbnQ+KSB7XG4gICAgdGhpcy50b2dnbGVCdXR0b24gPSBidXR0b247XG4gIH1cblxuICBnZXQgcG9wb3ZlclBvc2l0aW9uKCk6IENsclBvcG92ZXJQb3NpdGlvbiB7XG4gICAgcmV0dXJuIHRoaXMudmlld01hbmFnZXJTZXJ2aWNlLnBvc2l0aW9uO1xuICB9XG5cbiAgZ2V0IG9wZW4oKSB7XG4gICAgcmV0dXJuIHRoaXMudG9nZ2xlU2VydmljZS5vcGVuO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgaWYgdGhlIERhdGVwaWNrZXIgaXMgZW5hYmxlZCBvciBub3QuIElmIGRpc2FibGVkLCBoaWRlcyB0aGUgZGF0ZXBpY2tlciB0cmlnZ2VyLlxuICAgKi9cbiAgZ2V0IGlzRW5hYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5kYXRlcGlja2VyRW5hYmxlZFNlcnZpY2UuaXNFbmFibGVkO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybiBpZiBEYXRlcGlja2VyIGlzIGRpYWJsZWQgb3Igbm90IGFzIEZvcm0gQ29udHJvbFxuICAgKi9cbiAgZ2V0IGlzSW5wdXREYXRlRGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgLyogY2xyRm9ybSB3cmFwcGVyIG9yIHdpdGhvdXQgY2xyRm9ybSAqL1xuICAgIHJldHVybiAoXG4gICAgICAodGhpcy5jb250cm9sICYmIHRoaXMuY29udHJvbC5kaXNhYmxlZCkgfHwgKHRoaXMuZGF0ZUZvcm1Db250cm9sU2VydmljZSAmJiB0aGlzLmRhdGVGb3JtQ29udHJvbFNlcnZpY2UuZGlzYWJsZWQpXG4gICAgKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXQgaXNSYW5nZVBpY2tlcigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5kYXRlTmF2aWdhdGlvblNlcnZpY2UuaXNSYW5nZVBpY2tlcjtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmRhdGVSYW5nZVN0cnVjdHVyYWxDaGVja3MoKTtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcbiAgICAgIHRoaXMudG9nZ2xlU2VydmljZS5vcGVuQ2hhbmdlLnN1YnNjcmliZShvcGVuID0+IHtcbiAgICAgICAgaWYgKG9wZW4pIHtcbiAgICAgICAgICB0aGlzLmluaXRpYWxpemVDYWxlbmRhcigpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMudG9nZ2xlQnV0dG9uLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICAgICAgICB0aGlzLmRhdGVOYXZpZ2F0aW9uU2VydmljZS5yZXNldFNlbGVjdGVkRGF5KCk7XG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKTtcblxuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKHRoaXMubGlzdGVuRm9yRGF0ZUNoYW5nZXMoKSk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJuIHRoZSBsYWJlbCBmb3IgdGhlIHRvZ2dsZSBidXR0b24uXG4gICAqIElmIHRoZXJlJ3MgYSBzZWxlY3RlZCBkYXRlLCB0aGUgZGF0ZSBpcyBpbmNsdWRlZCBpbiB0aGUgbGFiZWwuXG4gICAqL1xuICBwcml2YXRlIGdldFRvZ2dsZUJ1dHRvbkxhYmVsKGRheTogRGF5TW9kZWwpOiBzdHJpbmcge1xuICAgIGlmIChkYXkpIHtcbiAgICAgIGNvbnN0IGZvcm1hdHRlZERhdGUgPSB0aGlzLmRhdGVJT1NlcnZpY2UudG9Mb2NhbGVEaXNwbGF5Rm9ybWF0U3RyaW5nKGRheS50b0RhdGUoKSk7XG5cbiAgICAgIHJldHVybiB0aGlzLmNvbW1vblN0cmluZ3MucGFyc2UodGhpcy5jb21tb25TdHJpbmdzLmtleXMuZGF0ZXBpY2tlclRvZ2dsZUNoYW5nZURhdGVMYWJlbCwge1xuICAgICAgICBTRUxFQ1RFRF9EQVRFOiBmb3JtYXR0ZWREYXRlLFxuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmNvbW1vblN0cmluZ3Mua2V5cy5kYXRlcGlja2VyVG9nZ2xlQ2hvb3NlRGF0ZUxhYmVsO1xuICB9XG5cbiAgcHJpdmF0ZSBsaXN0ZW5Gb3JEYXRlQ2hhbmdlcygpIHtcbiAgICAvLyBiZWNhdXNlIGRhdGUtaW5wdXQudHMgaW5pdGlhbGl6ZXMgdGhlIGlucHV0IGluIG5nQWZ0ZXJWaWV3SW5pdCxcbiAgICAvLyB1c2luZyBhIGRhdGFib3VuZCBhdHRyaWJ1dGUgdG8gY2hhbmdlIHRoZSBidXR0b24gbGFiZWxzIHJlc3VsdHMgaW4gRXhwcmVzc2lvbkNoYW5nZWRBZnRlckl0SGFzQmVlbkNoZWNrZWRFcnJvci5cbiAgICAvLyBzbyBpbnN0ZWFkLCB1cGRhdGUgdGhlIGF0dHJpYnV0ZSBkaXJlY3RseSBvbiB0aGUgZWxlbWVudFxuICAgIHJldHVybiB0aGlzLmRhdGVOYXZpZ2F0aW9uU2VydmljZS5zZWxlY3RlZERheUNoYW5nZVxuICAgICAgLnBpcGUoc3RhcnRXaXRoKHRoaXMuZGF0ZU5hdmlnYXRpb25TZXJ2aWNlLnNlbGVjdGVkRGF5KSlcbiAgICAgIC5zdWJzY3JpYmUoZGF5ID0+IHtcbiAgICAgICAgaWYgKHRoaXMuaXNFbmFibGVkKSB7XG4gICAgICAgICAgY29uc3QgbGFiZWwgPSB0aGlzLmdldFRvZ2dsZUJ1dHRvbkxhYmVsKGRheSk7XG4gICAgICAgICAgY29uc3QgdG9nZ2xlRWwgPSB0aGlzLnRvZ2dsZUJ1dHRvbi5uYXRpdmVFbGVtZW50O1xuICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKHRvZ2dsZUVsLCAnYXJpYS1sYWJlbCcsIGxhYmVsKTtcbiAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZSh0b2dnbGVFbCwgJ3RpdGxlJywgbGFiZWwpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQcm9jZXNzZXMgdGhlIHVzZXIgaW5wdXQgYW5kIEluaXRpYWxpemVzIHRoZSBDYWxlbmRhciBldmVyeXRpbWUgdGhlIGRhdGVwaWNrZXIgcG9wb3ZlciBpcyBvcGVuLlxuICAgKi9cbiAgcHJpdmF0ZSBpbml0aWFsaXplQ2FsZW5kYXIoKTogdm9pZCB7XG4gICAgdGhpcy5kYXRlTmF2aWdhdGlvblNlcnZpY2UuaW5pdGlhbGl6ZUNhbGVuZGFyKCk7XG4gIH1cblxuICBwcml2YXRlIGRhdGVSYW5nZVN0cnVjdHVyYWxDaGVja3MoKSB7XG4gICAgaWYgKHRoaXMuZGF0ZU5hdmlnYXRpb25TZXJ2aWNlLmlzUmFuZ2VQaWNrZXIpIHtcbiAgICAgIGlmICh0aGlzLmNsckRhdGVJbnB1dCkge1xuICAgICAgICBjb25zb2xlLmVycm9yKCdFcnJvciEgY2xyLWRhdGUtcmFuZ2UtY29udGFpbmVyIG11c3QgY29udGFpbiBjbHJTdGFydERhdGUgYW5kIGNsckVuZERhdGUgaW5wdXRzJyk7XG4gICAgICB9XG4gICAgICBpZiAoIXRoaXMuY2xyU3RhcnREYXRlSW5wdXQpIHtcbiAgICAgICAgY29uc29sZS5lcnJvcignRXJyb3IhIGNsci1kYXRlLXJhbmdlLWNvbnRhaW5lciBtdXN0IGNvbnRhaW4gY2xyU3RhcnREYXRlIGlucHV0Jyk7XG4gICAgICB9XG4gICAgICBpZiAoIXRoaXMuY2xyRW5kRGF0ZUlucHV0KSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yISBjbHItZGF0ZS1yYW5nZS1jb250YWluZXIgbXVzdCBjb250YWluIGNsckVuZERhdGUgaW5wdXQnKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,60 @@
|
|
|
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 { Directive, EventEmitter, HostBinding, Input, Output } from '@angular/core';
|
|
8
|
+
import { ClrDateInputBase } from './date-input';
|
|
9
|
+
import { DatepickerFocusService } from './providers/datepicker-focus.service';
|
|
10
|
+
import * as i0 from "@angular/core";
|
|
11
|
+
export class ClrEndDateInput extends ClrDateInputBase {
|
|
12
|
+
constructor() {
|
|
13
|
+
super(...arguments);
|
|
14
|
+
this.dateChange = new EventEmitter(false);
|
|
15
|
+
this.inputWidth = 13;
|
|
16
|
+
}
|
|
17
|
+
set date(date) {
|
|
18
|
+
this.setDate(date);
|
|
19
|
+
}
|
|
20
|
+
get inputSize() {
|
|
21
|
+
return this.inputWidth;
|
|
22
|
+
}
|
|
23
|
+
get userSelectedDayChange() {
|
|
24
|
+
return this.dateNavigationService.selectedEndDayChange;
|
|
25
|
+
}
|
|
26
|
+
triggerControlInputValidation() {
|
|
27
|
+
if (this.datepickerHasFormControl()) {
|
|
28
|
+
this.control.control?.updateValueAndValidity({ emitEvent: false });
|
|
29
|
+
this.control.control?.setErrors(this.control.control.errors);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
updateDayModel(dayModel) {
|
|
33
|
+
this.dateNavigationService.persistedEndDate = this.dateNavigationService.selectedEndDay = dayModel;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
ClrEndDateInput.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ClrEndDateInput, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
37
|
+
ClrEndDateInput.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.2", type: ClrEndDateInput, selector: "[clrEndDate]", inputs: { inputWidth: "inputWidth", date: ["clrEndDate", "date"] }, outputs: { dateChange: "clrEndDateChange" }, host: { properties: { "class.clr-input": "true", "attr.size": "this.inputSize" } }, providers: [DatepickerFocusService], usesInheritance: true, ngImport: i0 });
|
|
38
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ClrEndDateInput, decorators: [{
|
|
39
|
+
type: Directive,
|
|
40
|
+
args: [{
|
|
41
|
+
selector: '[clrEndDate]',
|
|
42
|
+
host: {
|
|
43
|
+
'[class.clr-input]': 'true',
|
|
44
|
+
},
|
|
45
|
+
providers: [DatepickerFocusService],
|
|
46
|
+
}]
|
|
47
|
+
}], propDecorators: { dateChange: [{
|
|
48
|
+
type: Output,
|
|
49
|
+
args: ['clrEndDateChange']
|
|
50
|
+
}], inputWidth: [{
|
|
51
|
+
type: Input,
|
|
52
|
+
args: ['inputWidth']
|
|
53
|
+
}], date: [{
|
|
54
|
+
type: Input,
|
|
55
|
+
args: ['clrEndDate']
|
|
56
|
+
}], inputSize: [{
|
|
57
|
+
type: HostBinding,
|
|
58
|
+
args: ['attr.size']
|
|
59
|
+
}] } });
|
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1lbmQtaW5wdXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyL3NyYy9mb3Jtcy9kYXRlcGlja2VyL2RhdGUtZW5kLWlucHV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7OztHQUtHO0FBRUgsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFcEYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRWhELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDOztBQVM5RSxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxnQkFBZ0I7SUFQckQ7O1FBUXVDLGVBQVUsR0FBRyxJQUFJLFlBQVksQ0FBTyxLQUFLLENBQUMsQ0FBQztRQUUzRCxlQUFVLEdBQUcsRUFBRSxDQUFDO0tBMEJ0QztJQXhCQyxJQUNJLElBQUksQ0FBQyxJQUFtQjtRQUMxQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxJQUNJLFNBQVM7UUFDWCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDekIsQ0FBQztJQUVELElBQXVCLHFCQUFxQjtRQUMxQyxPQUFPLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxvQkFBb0IsQ0FBQztJQUN6RCxDQUFDO0lBRUQsNkJBQTZCO1FBQzNCLElBQUksSUFBSSxDQUFDLHdCQUF3QixFQUFFLEVBQUU7WUFDbkMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsc0JBQXNCLENBQUMsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztZQUNuRSxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDOUQ7SUFDSCxDQUFDO0lBRWtCLGNBQWMsQ0FBQyxRQUFrQjtRQUNsRCxJQUFJLENBQUMscUJBQXFCLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDLGNBQWMsR0FBRyxRQUFRLENBQUM7SUFDckcsQ0FBQzs7NEdBNUJVLGVBQWU7Z0dBQWYsZUFBZSw0T0FGZixDQUFDLHNCQUFzQixDQUFDOzJGQUV4QixlQUFlO2tCQVAzQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxjQUFjO29CQUN4QixJQUFJLEVBQUU7d0JBQ0osbUJBQW1CLEVBQUUsTUFBTTtxQkFDNUI7b0JBQ0QsU0FBUyxFQUFFLENBQUMsc0JBQXNCLENBQUM7aUJBQ3BDOzhCQUVzQyxVQUFVO3NCQUE5QyxNQUFNO3VCQUFDLGtCQUFrQjtnQkFFTCxVQUFVO3NCQUE5QixLQUFLO3VCQUFDLFlBQVk7Z0JBR2YsSUFBSTtzQkFEUCxLQUFLO3VCQUFDLFlBQVk7Z0JBTWYsU0FBUztzQkFEWixXQUFXO3VCQUFDLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDE2LTIwMjUgQnJvYWRjb20uIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKiBUaGUgdGVybSBcIkJyb2FkY29tXCIgcmVmZXJzIHRvIEJyb2FkY29tIEluYy4gYW5kL29yIGl0cyBzdWJzaWRpYXJpZXMuXG4gKiBUaGlzIHNvZnR3YXJlIGlzIHJlbGVhc2VkIHVuZGVyIE1JVCBsaWNlbnNlLlxuICogVGhlIGZ1bGwgbGljZW5zZSBpbmZvcm1hdGlvbiBjYW4gYmUgZm91bmQgaW4gTElDRU5TRSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBwcm9qZWN0LlxuICovXG5cbmltcG9ydCB7IERpcmVjdGl2ZSwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBDbHJEYXRlSW5wdXRCYXNlIH0gZnJvbSAnLi9kYXRlLWlucHV0JztcbmltcG9ydCB7IERheU1vZGVsIH0gZnJvbSAnLi9tb2RlbC9kYXkubW9kZWwnO1xuaW1wb3J0IHsgRGF0ZXBpY2tlckZvY3VzU2VydmljZSB9IGZyb20gJy4vcHJvdmlkZXJzL2RhdGVwaWNrZXItZm9jdXMuc2VydmljZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tjbHJFbmREYXRlXScsXG4gIGhvc3Q6IHtcbiAgICAnW2NsYXNzLmNsci1pbnB1dF0nOiAndHJ1ZScsXG4gIH0sXG4gIHByb3ZpZGVyczogW0RhdGVwaWNrZXJGb2N1c1NlcnZpY2VdLFxufSlcbmV4cG9ydCBjbGFzcyBDbHJFbmREYXRlSW5wdXQgZXh0ZW5kcyBDbHJEYXRlSW5wdXRCYXNlIHtcbiAgQE91dHB1dCgnY2xyRW5kRGF0ZUNoYW5nZScpIG92ZXJyaWRlIGRhdGVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPERhdGU+KGZhbHNlKTtcblxuICBASW5wdXQoJ2lucHV0V2lkdGgnKSBpbnB1dFdpZHRoID0gMTM7XG5cbiAgQElucHV0KCdjbHJFbmREYXRlJylcbiAgc2V0IGRhdGUoZGF0ZTogRGF0ZSB8IHN0cmluZykge1xuICAgIHRoaXMuc2V0RGF0ZShkYXRlKTtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnYXR0ci5zaXplJylcbiAgZ2V0IGlucHV0U2l6ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5pbnB1dFdpZHRoO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGdldCB1c2VyU2VsZWN0ZWREYXlDaGFuZ2UoKSB7XG4gICAgcmV0dXJuIHRoaXMuZGF0ZU5hdmlnYXRpb25TZXJ2aWNlLnNlbGVjdGVkRW5kRGF5Q2hhbmdlO1xuICB9XG5cbiAgdHJpZ2dlckNvbnRyb2xJbnB1dFZhbGlkYXRpb24oKSB7XG4gICAgaWYgKHRoaXMuZGF0ZXBpY2tlckhhc0Zvcm1Db250cm9sKCkpIHtcbiAgICAgIHRoaXMuY29udHJvbC5jb250cm9sPy51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcbiAgICAgIHRoaXMuY29udHJvbC5jb250cm9sPy5zZXRFcnJvcnModGhpcy5jb250cm9sLmNvbnRyb2wuZXJyb3JzKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgdXBkYXRlRGF5TW9kZWwoZGF5TW9kZWw6IERheU1vZGVsKSB7XG4gICAgdGhpcy5kYXRlTmF2aWdhdGlvblNlcnZpY2UucGVyc2lzdGVkRW5kRGF0ZSA9IHRoaXMuZGF0ZU5hdmlnYXRpb25TZXJ2aWNlLnNlbGVjdGVkRW5kRGF5ID0gZGF5TW9kZWw7XG4gIH1cbn1cbiJdfQ==
|