@po-ui/ng-components 16.0.0 → 16.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +37 -37
- package/esm2022/lib/components/components.module.mjs +1 -1
- package/esm2022/lib/components/index.mjs +1 -1
- package/esm2022/lib/components/po-accordion/index.mjs +1 -1
- package/esm2022/lib/components/po-accordion/po-accordion-base.component.mjs +1 -1
- package/esm2022/lib/components/po-accordion/po-accordion-item/po-accordion-item.component.mjs +2 -2
- package/esm2022/lib/components/po-accordion/po-accordion-item-body/po-accordion-item-body.component.mjs +2 -2
- package/esm2022/lib/components/po-accordion/po-accordion-item-header/po-accordion-item-header.component.mjs +2 -2
- package/esm2022/lib/components/po-accordion/po-accordion.component.mjs +2 -2
- package/esm2022/lib/components/po-accordion/po-accordion.module.mjs +1 -1
- package/esm2022/lib/components/po-accordion/services/po-accordion.service.mjs +1 -1
- package/esm2022/lib/components/po-avatar/index.mjs +1 -1
- package/esm2022/lib/components/po-avatar/po-avatar-base.component.mjs +1 -1
- package/esm2022/lib/components/po-avatar/po-avatar.component.mjs +2 -2
- package/esm2022/lib/components/po-avatar/po-avatar.module.mjs +1 -1
- package/esm2022/lib/components/po-badge/po-badge-base.component.mjs +1 -1
- package/esm2022/lib/components/po-badge/po-badge.component.mjs +2 -2
- package/esm2022/lib/components/po-badge/po-badge.module.mjs +1 -1
- package/esm2022/lib/components/po-breadcrumb/index.mjs +1 -1
- package/esm2022/lib/components/po-breadcrumb/po-breadcrumb-base.component.mjs +1 -1
- package/esm2022/lib/components/po-breadcrumb/po-breadcrumb-dropdown/po-breadcrumb-dropdown.component.mjs +2 -2
- package/esm2022/lib/components/po-breadcrumb/po-breadcrumb-favorite/po-breadcrumb-favorite.component.mjs +2 -2
- package/esm2022/lib/components/po-breadcrumb/po-breadcrumb-favorite/po-breadcrumb-favorite.service.mjs +1 -1
- package/esm2022/lib/components/po-breadcrumb/po-breadcrumb-item/po-breadcrumb-item.component.mjs +2 -2
- package/esm2022/lib/components/po-breadcrumb/po-breadcrumb-item.interface.mjs +1 -1
- package/esm2022/lib/components/po-breadcrumb/po-breadcrumb.component.mjs +2 -2
- package/esm2022/lib/components/po-breadcrumb/po-breadcrumb.interface.mjs +1 -1
- package/esm2022/lib/components/po-breadcrumb/po-breadcrumb.module.mjs +1 -1
- package/esm2022/lib/components/po-button/index.mjs +1 -1
- package/esm2022/lib/components/po-button/po-button-base.component.mjs +1 -1
- package/esm2022/lib/components/po-button/po-button-kind.enum.mjs +1 -1
- package/esm2022/lib/components/po-button/po-button-size.enum.mjs +1 -1
- package/esm2022/lib/components/po-button/po-button.component.mjs +2 -2
- package/esm2022/lib/components/po-button/po-button.module.mjs +1 -1
- package/esm2022/lib/components/po-button-group/index.mjs +1 -1
- package/esm2022/lib/components/po-button-group/po-button-group-base.component.mjs +1 -1
- package/esm2022/lib/components/po-button-group/po-button-group-item.interface.mjs +1 -1
- package/esm2022/lib/components/po-button-group/po-button-group-toggle.enum.mjs +1 -1
- package/esm2022/lib/components/po-button-group/po-button-group.component.mjs +2 -2
- package/esm2022/lib/components/po-button-group/po-button-group.module.mjs +1 -1
- package/esm2022/lib/components/po-calendar/index.mjs +1 -1
- package/esm2022/lib/components/po-calendar/po-calendar-base.component.mjs +1 -1
- package/esm2022/lib/components/po-calendar/po-calendar-header/po-calendar-header.component.mjs +2 -2
- package/esm2022/lib/components/po-calendar/po-calendar-mode.enum.mjs +1 -1
- package/esm2022/lib/components/po-calendar/po-calendar-wrapper/po-calendar-wrapper.component.mjs +2 -2
- package/esm2022/lib/components/po-calendar/po-calendar.component.mjs +2 -2
- package/esm2022/lib/components/po-calendar/po-calendar.module.mjs +1 -1
- package/esm2022/lib/components/po-calendar/services/po-calendar.lang.service.mjs +1 -1
- package/esm2022/lib/components/po-calendar/services/po-calendar.service.mjs +1 -1
- package/esm2022/lib/components/po-chart/directives/po-resize-observer.directive.mjs +1 -1
- package/esm2022/lib/components/po-chart/enums/po-chart-type.enum.mjs +1 -1
- package/esm2022/lib/components/po-chart/helpers/po-chart-default-values.constant.mjs +1 -1
- package/esm2022/lib/components/po-chart/index.mjs +1 -1
- package/esm2022/lib/components/po-chart/interfaces/po-chart-axis-options.interface.mjs +1 -1
- package/esm2022/lib/components/po-chart/interfaces/po-chart-bar-coordinates.interface.mjs +1 -1
- package/esm2022/lib/components/po-chart/interfaces/po-chart-container-size.interface.mjs +1 -1
- package/esm2022/lib/components/po-chart/interfaces/po-chart-label-coordinates.interface.mjs +1 -1
- package/esm2022/lib/components/po-chart/interfaces/po-chart-min-max-values.interface.mjs +1 -1
- package/esm2022/lib/components/po-chart/interfaces/po-chart-options.interface.mjs +1 -1
- package/esm2022/lib/components/po-chart/interfaces/po-chart-path-coordinates.interface.mjs +1 -1
- package/esm2022/lib/components/po-chart/interfaces/po-chart-points-coordinates.interface.mjs +1 -1
- package/esm2022/lib/components/po-chart/interfaces/po-chart-serie.interface.mjs +1 -1
- package/esm2022/lib/components/po-chart/po-chart-base.component.mjs +1 -1
- package/esm2022/lib/components/po-chart/po-chart-container/po-chart-axis/po-chart-axis-label/po-chart-axis-label.component.mjs +2 -2
- package/esm2022/lib/components/po-chart/po-chart-container/po-chart-axis/po-chart-axis-path/po-chart-axis-path.component.mjs +2 -2
- package/esm2022/lib/components/po-chart/po-chart-container/po-chart-axis/po-chart-axis.component.mjs +2 -2
- package/esm2022/lib/components/po-chart/po-chart-container/po-chart-bar/po-chart-bar-base.component.mjs +1 -1
- package/esm2022/lib/components/po-chart/po-chart-container/po-chart-bar/po-chart-bar-path/po-chart-bar-path.component.mjs +2 -2
- package/esm2022/lib/components/po-chart/po-chart-container/po-chart-bar/po-chart-bar.component.mjs +2 -2
- package/esm2022/lib/components/po-chart/po-chart-container/po-chart-bar/po-chart-column/po-chart-column.component.mjs +2 -2
- package/esm2022/lib/components/po-chart/po-chart-container/po-chart-circular/po-chart-circular-label/po-chart-circular-label.component.mjs +2 -2
- package/esm2022/lib/components/po-chart/po-chart-container/po-chart-circular/po-chart-circular-path/po-chart-circular-path.component.mjs +2 -2
- package/esm2022/lib/components/po-chart/po-chart-container/po-chart-circular/po-chart-circular-path/po-chart-tooltip.directive.mjs +1 -1
- package/esm2022/lib/components/po-chart/po-chart-container/po-chart-circular/po-chart-circular.component.mjs +1 -1
- package/esm2022/lib/components/po-chart/po-chart-container/po-chart-circular/po-chart-donut/po-chart-donut.component.mjs +2 -2
- package/esm2022/lib/components/po-chart/po-chart-container/po-chart-circular/po-chart-pie/po-chart-pie.component.mjs +2 -2
- package/esm2022/lib/components/po-chart/po-chart-container/po-chart-container.component.mjs +2 -2
- package/esm2022/lib/components/po-chart/po-chart-container/po-chart-line/po-chart-area/po-chart-area.component.mjs +2 -2
- package/esm2022/lib/components/po-chart/po-chart-container/po-chart-line/po-chart-line-base.component.mjs +1 -1
- package/esm2022/lib/components/po-chart/po-chart-container/po-chart-line/po-chart-line.component.mjs +2 -2
- package/esm2022/lib/components/po-chart/po-chart-container/po-chart-line/po-chart-path/po-chart-path.component.mjs +2 -2
- package/esm2022/lib/components/po-chart/po-chart-container/po-chart-line/po-chart-series-point/po-chart-series-point.component.mjs +2 -2
- package/esm2022/lib/components/po-chart/po-chart-legend/po-chart-legend.component.mjs +2 -2
- package/esm2022/lib/components/po-chart/po-chart-types/po-chart-dynamic-type.component.mjs +1 -1
- package/esm2022/lib/components/po-chart/po-chart.component.mjs +2 -2
- package/esm2022/lib/components/po-chart/po-chart.module.mjs +1 -1
- package/esm2022/lib/components/po-chart/services/po-chart-maths.service.mjs +1 -1
- package/esm2022/lib/components/po-chart/services/po-chart-svg-container.service.mjs +1 -1
- package/esm2022/lib/components/po-container/index.mjs +1 -1
- package/esm2022/lib/components/po-container/po-container-base.component.mjs +1 -1
- package/esm2022/lib/components/po-container/po-container.component.mjs +2 -2
- package/esm2022/lib/components/po-container/po-container.module.mjs +1 -1
- package/esm2022/lib/components/po-disclaimer/index.mjs +1 -1
- package/esm2022/lib/components/po-disclaimer/po-disclaimer-base.component.mjs +1 -1
- package/esm2022/lib/components/po-disclaimer/po-disclaimer.component.mjs +2 -2
- package/esm2022/lib/components/po-disclaimer/po-disclaimer.interface.mjs +1 -1
- package/esm2022/lib/components/po-disclaimer/po-disclaimer.literals.mjs +1 -1
- package/esm2022/lib/components/po-disclaimer/po-disclaimer.module.mjs +1 -1
- package/esm2022/lib/components/po-disclaimer-group/index.mjs +1 -1
- package/esm2022/lib/components/po-disclaimer-group/po-disclaimer-group-base.component.mjs +1 -1
- package/esm2022/lib/components/po-disclaimer-group/po-disclaimer-group-remove-action.interface.mjs +1 -1
- package/esm2022/lib/components/po-disclaimer-group/po-disclaimer-group.component.mjs +2 -2
- package/esm2022/lib/components/po-disclaimer-group/po-disclaimer-group.interface.mjs +1 -1
- package/esm2022/lib/components/po-disclaimer-group/po-disclaimer-group.module.mjs +1 -1
- package/esm2022/lib/components/po-disclaimer-group/po-disclaimer-remove/po-disclaimer-remove.component.mjs +2 -2
- package/esm2022/lib/components/po-divider/index.mjs +1 -1
- package/esm2022/lib/components/po-divider/po-divider-base.component.mjs +1 -1
- package/esm2022/lib/components/po-divider/po-divider-size.enum.mjs +1 -1
- package/esm2022/lib/components/po-divider/po-divider.component.mjs +2 -2
- package/esm2022/lib/components/po-divider/po-divider.module.mjs +1 -1
- package/esm2022/lib/components/po-dropdown/index.mjs +1 -1
- package/esm2022/lib/components/po-dropdown/po-dropdown-action.interface.mjs +1 -1
- package/esm2022/lib/components/po-dropdown/po-dropdown-base.component.mjs +1 -1
- package/esm2022/lib/components/po-dropdown/po-dropdown.component.mjs +2 -2
- package/esm2022/lib/components/po-dropdown/po-dropdown.module.mjs +1 -1
- package/esm2022/lib/components/po-dynamic/index.mjs +1 -1
- package/esm2022/lib/components/po-dynamic/po-dynamic-field-force-component.enum.mjs +1 -1
- package/esm2022/lib/components/po-dynamic/po-dynamic-field-type.enum.mjs +1 -1
- package/esm2022/lib/components/po-dynamic/po-dynamic-field.interface.mjs +1 -1
- package/esm2022/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-base.component.mjs +1 -1
- package/esm2022/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-field.interface.mjs +1 -1
- package/esm2022/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-fields/po-dynamic-form-field-internal.interface.mjs +1 -1
- package/esm2022/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-fields/po-dynamic-form-fields-base.component.mjs +1 -1
- package/esm2022/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-fields/po-dynamic-form-fields.component.mjs +2 -2
- package/esm2022/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-load/po-dynamic-form-load.interface.mjs +1 -1
- package/esm2022/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-load/po-dynamic-form-load.service.mjs +1 -1
- package/esm2022/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-operation/po-dynamic-form-operation.mjs +1 -1
- package/esm2022/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-response.interface.mjs +1 -1
- package/esm2022/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-validation/po-dynamic-form-field-changed.interface.mjs +1 -1
- package/esm2022/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-validation/po-dynamic-form-field-validation.interface.mjs +1 -1
- package/esm2022/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-validation/po-dynamic-form-validation.interface.mjs +1 -1
- package/esm2022/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-validation/po-dynamic-form-validation.service.mjs +1 -1
- package/esm2022/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form.component.mjs +2 -2
- package/esm2022/lib/components/po-dynamic/po-dynamic-view/po-dynamic-view-base.component.mjs +1 -1
- package/esm2022/lib/components/po-dynamic/po-dynamic-view/po-dynamic-view-field.interface.mjs +1 -1
- package/esm2022/lib/components/po-dynamic/po-dynamic-view/po-dynamic-view.component.mjs +2 -2
- package/esm2022/lib/components/po-dynamic/po-dynamic-view/po-dynamic-view.service.mjs +1 -1
- package/esm2022/lib/components/po-dynamic/po-dynamic.module.mjs +1 -1
- package/esm2022/lib/components/po-dynamic/po-dynamic.util.mjs +1 -1
- package/esm2022/lib/components/po-field/index.mjs +1 -1
- package/esm2022/lib/components/po-field/po-checkbox/po-checkbox-base.component.mjs +1 -1
- package/esm2022/lib/components/po-field/po-checkbox/po-checkbox-size.enum.mjs +1 -1
- package/esm2022/lib/components/po-field/po-checkbox/po-checkbox.component.mjs +2 -2
- package/esm2022/lib/components/po-field/po-checkbox/po-checkbox.module.mjs +1 -1
- package/esm2022/lib/components/po-field/po-checkbox-group/interfaces/po-checkbox-group-option-view.interface.mjs +1 -1
- package/esm2022/lib/components/po-field/po-checkbox-group/interfaces/po-checkbox-group-option.interface.mjs +1 -1
- package/esm2022/lib/components/po-field/po-checkbox-group/po-checkbox-group-base.component.mjs +1 -1
- package/esm2022/lib/components/po-field/po-checkbox-group/po-checkbox-group.component.mjs +2 -2
- package/esm2022/lib/components/po-field/po-checkbox-group/po-checkbox-group.module.mjs +1 -1
- package/esm2022/lib/components/po-field/po-clean/index.mjs +1 -1
- package/esm2022/lib/components/po-field/po-clean/po-clean-base.component.mjs +1 -1
- package/esm2022/lib/components/po-field/po-clean/po-clean.component.mjs +2 -2
- package/esm2022/lib/components/po-field/po-clean/po-clean.module.mjs +1 -1
- package/esm2022/lib/components/po-field/po-combo/interfaces/po-combo-filter.interface.mjs +1 -1
- package/esm2022/lib/components/po-field/po-combo/interfaces/po-combo-group.interface.mjs +1 -1
- package/esm2022/lib/components/po-field/po-combo/interfaces/po-combo-literals-default.interface.mjs +1 -1
- package/esm2022/lib/components/po-field/po-combo/interfaces/po-combo-literals.interface.mjs +1 -1
- package/esm2022/lib/components/po-field/po-combo/interfaces/po-combo-option-group.interface.mjs +1 -1
- package/esm2022/lib/components/po-field/po-combo/interfaces/po-combo-option.interface.mjs +1 -1
- package/esm2022/lib/components/po-field/po-combo/interfaces/po-response.interface.mjs +1 -1
- package/esm2022/lib/components/po-field/po-combo/po-combo-base.component.mjs +1 -1
- package/esm2022/lib/components/po-field/po-combo/po-combo-filter-mode.enum.mjs +1 -1
- package/esm2022/lib/components/po-field/po-combo/po-combo-filter.service.mjs +2 -2
- package/esm2022/lib/components/po-field/po-combo/po-combo-option-template/po-combo-option-template.directive.mjs +1 -1
- package/esm2022/lib/components/po-field/po-combo/po-combo.component.mjs +49 -40
- package/esm2022/lib/components/po-field/po-datepicker/enums/po-datepicker-iso-format.enum.mjs +1 -1
- package/esm2022/lib/components/po-field/po-datepicker/po-datepicker-base.component.mjs +1 -1
- package/esm2022/lib/components/po-field/po-datepicker/po-datepicker.component.mjs +2 -2
- package/esm2022/lib/components/po-field/po-datepicker/po-datepicker.literals.mjs +1 -1
- package/esm2022/lib/components/po-field/po-datepicker/po-datepicker.module.mjs +1 -1
- package/esm2022/lib/components/po-field/po-datepicker-range/interfaces/po-datepicker-range-literals.interface.mjs +1 -1
- package/esm2022/lib/components/po-field/po-datepicker-range/interfaces/po-datepicker-range.interface.mjs +1 -1
- package/esm2022/lib/components/po-field/po-datepicker-range/po-datepicker-range-base.component.mjs +1 -1
- package/esm2022/lib/components/po-field/po-datepicker-range/po-datepicker-range.component.mjs +2 -2
- package/esm2022/lib/components/po-field/po-datepicker-range/po-datepicker-range.literals.mjs +1 -1
- package/esm2022/lib/components/po-field/po-decimal/po-decimal.component.mjs +2 -2
- package/esm2022/lib/components/po-field/po-email/po-email.component.mjs +2 -2
- package/esm2022/lib/components/po-field/po-field-container/index.mjs +1 -1
- package/esm2022/lib/components/po-field/po-field-container/po-field-container-bottom/po-field-container-bottom.component.mjs +2 -2
- package/esm2022/lib/components/po-field/po-field-container/po-field-container-literals.mjs +1 -1
- package/esm2022/lib/components/po-field/po-field-container/po-field-container.component.mjs +2 -2
- package/esm2022/lib/components/po-field/po-field-container/po-field-container.module.mjs +1 -1
- package/esm2022/lib/components/po-field/po-field-validate.model.mjs +1 -1
- package/esm2022/lib/components/po-field/po-field.model.mjs +1 -1
- package/esm2022/lib/components/po-field/po-field.module.mjs +6 -2
- package/esm2022/lib/components/po-field/po-input/po-input-base.component.mjs +1 -1
- package/esm2022/lib/components/po-field/po-input/po-input.component.mjs +2 -2
- package/esm2022/lib/components/po-field/po-input/po-mask.mjs +1 -1
- package/esm2022/lib/components/po-field/po-input-generic/po-input-generic.mjs +1 -1
- package/esm2022/lib/components/po-field/po-login/po-login.component.mjs +2 -2
- package/esm2022/lib/components/po-field/po-lookup/interfaces/po-lookup-advanced-filter.interface.mjs +1 -1
- package/esm2022/lib/components/po-field/po-lookup/interfaces/po-lookup-column.interface.mjs +1 -1
- package/esm2022/lib/components/po-field/po-lookup/interfaces/po-lookup-filter.interface.mjs +1 -1
- package/esm2022/lib/components/po-field/po-lookup/interfaces/po-lookup-filtered-items-params.interface.mjs +1 -1
- package/esm2022/lib/components/po-field/po-lookup/interfaces/po-lookup-literals.interface.mjs +1 -1
- package/esm2022/lib/components/po-field/po-lookup/interfaces/po-lookup-response-api.interface.mjs +1 -1
- package/esm2022/lib/components/po-field/po-lookup/po-lookup-base.component.mjs +1 -1
- package/esm2022/lib/components/po-field/po-lookup/po-lookup-modal/po-lookup-modal-base.component.mjs +1 -1
- package/esm2022/lib/components/po-field/po-lookup/po-lookup-modal/po-lookup-modal.component.mjs +2 -2
- package/esm2022/lib/components/po-field/po-lookup/po-lookup.component.mjs +2 -2
- package/esm2022/lib/components/po-field/po-lookup/services/po-lookup-filter.service.mjs +1 -1
- package/esm2022/lib/components/po-field/po-lookup/services/po-lookup-modal.service.mjs +1 -1
- package/esm2022/lib/components/po-field/po-multiselect/po-multiselect-base.component.mjs +1 -1
- package/esm2022/lib/components/po-field/po-multiselect/po-multiselect-dropdown/po-multiselect-dropdown.component.mjs +2 -2
- package/esm2022/lib/components/po-field/po-multiselect/po-multiselect-filter-mode.enum.mjs +1 -1
- package/esm2022/lib/components/po-field/po-multiselect/po-multiselect-filter.interface.mjs +1 -1
- package/esm2022/lib/components/po-field/po-multiselect/po-multiselect-filter.service.mjs +1 -1
- package/esm2022/lib/components/po-field/po-multiselect/po-multiselect-literals.interface.mjs +1 -1
- package/esm2022/lib/components/po-field/po-multiselect/po-multiselect-option-template/po-multiselect-option-template.directive.mjs +1 -1
- package/esm2022/lib/components/po-field/po-multiselect/po-multiselect-option.interface.mjs +1 -1
- package/esm2022/lib/components/po-field/po-multiselect/po-multiselect-search/po-multiselect-search.component.mjs +2 -2
- package/esm2022/lib/components/po-field/po-multiselect/po-multiselect.component.mjs +2 -2
- package/esm2022/lib/components/po-field/po-number/po-number-base.component.mjs +1 -1
- package/esm2022/lib/components/po-field/po-number/po-number.component.mjs +2 -2
- package/esm2022/lib/components/po-field/po-password/po-password.component.mjs +2 -2
- package/esm2022/lib/components/po-field/po-radio/po-radio-size.enum.mjs +1 -1
- package/esm2022/lib/components/po-field/po-radio/po-radio.component.mjs +2 -2
- package/esm2022/lib/components/po-field/po-radio/po-radio.module.mjs +1 -1
- package/esm2022/lib/components/po-field/po-radio-group/po-radio-group-base.component.mjs +1 -1
- package/esm2022/lib/components/po-field/po-radio-group/po-radio-group-option.interface.mjs +1 -1
- package/esm2022/lib/components/po-field/po-radio-group/po-radio-group.component.mjs +2 -2
- package/esm2022/lib/components/po-field/po-radio-group/po-radio-group.module.mjs +1 -1
- package/esm2022/lib/components/po-field/po-rich-text/interfaces/po-rich-text-toolbar-button-group-item.interface.mjs +1 -1
- package/esm2022/lib/components/po-field/po-rich-text/po-rich-text-base.component.mjs +1 -1
- package/esm2022/lib/components/po-field/po-rich-text/po-rich-text-body/po-rich-text-body.component.mjs +2 -2
- package/esm2022/lib/components/po-field/po-rich-text/po-rich-text-image-modal/po-rich-text-image-modal.component.mjs +2 -2
- package/esm2022/lib/components/po-field/po-rich-text/po-rich-text-link-modal/po-rich-text-link-modal.component.mjs +2 -2
- package/esm2022/lib/components/po-field/po-rich-text/po-rich-text-literals.mjs +1 -1
- package/esm2022/lib/components/po-field/po-rich-text/po-rich-text-toolbar/po-rich-text-toolbar.component.mjs +2 -2
- package/esm2022/lib/components/po-field/po-rich-text/po-rich-text.component.mjs +2 -2
- package/esm2022/lib/components/po-field/po-rich-text/po-rich-text.service.mjs +1 -1
- package/esm2022/lib/components/po-field/po-select/po-select-option-group.interface.mjs +1 -1
- package/esm2022/lib/components/po-field/po-select/po-select-option.interface.mjs +1 -1
- package/esm2022/lib/components/po-field/po-select/po-select.component.mjs +2 -2
- package/esm2022/lib/components/po-field/po-switch/index.mjs +1 -1
- package/esm2022/lib/components/po-field/po-switch/po-switch-label-position.enum.mjs +1 -1
- package/esm2022/lib/components/po-field/po-switch/po-switch.component.mjs +2 -2
- package/esm2022/lib/components/po-field/po-switch/po-switch.module.mjs +1 -1
- package/esm2022/lib/components/po-field/po-textarea/po-textarea-base.component.mjs +1 -1
- package/esm2022/lib/components/po-field/po-textarea/po-textarea.component.mjs +2 -2
- package/esm2022/lib/components/po-field/po-upload/interfaces/po-upload-file-restriction.interface.mjs +1 -1
- package/esm2022/lib/components/po-field/po-upload/interfaces/po-upload-literals.interface.mjs +1 -1
- package/esm2022/lib/components/po-field/po-upload/po-upload-base.component.mjs +1 -1
- package/esm2022/lib/components/po-field/po-upload/po-upload-base.service.mjs +1 -1
- package/esm2022/lib/components/po-field/po-upload/po-upload-drag-drop/po-upload-drag-drop-area/po-upload-drag-drop-area.component.mjs +2 -2
- package/esm2022/lib/components/po-field/po-upload/po-upload-drag-drop/po-upload-drag-drop-area-overlay/po-upload-drag-drop-area-overlay.component.mjs +2 -2
- package/esm2022/lib/components/po-field/po-upload/po-upload-drag-drop/po-upload-drag-drop.component.mjs +2 -2
- package/esm2022/lib/components/po-field/po-upload/po-upload-drag-drop/po-upload-drag-drop.directive.mjs +1 -1
- package/esm2022/lib/components/po-field/po-upload/po-upload-file-restrictions/po-upload-file-restrictions.component.mjs +2 -2
- package/esm2022/lib/components/po-field/po-upload/po-upload-file.mjs +1 -1
- package/esm2022/lib/components/po-field/po-upload/po-upload-status.enum.mjs +1 -1
- package/esm2022/lib/components/po-field/po-upload/po-upload.component.mjs +2 -2
- package/esm2022/lib/components/po-field/po-upload/po-upload.service.mjs +1 -1
- package/esm2022/lib/components/po-field/po-url/po-url.component.mjs +2 -2
- package/esm2022/lib/components/po-field/validators.mjs +1 -1
- package/esm2022/lib/components/po-gauge/index.mjs +1 -1
- package/esm2022/lib/components/po-gauge/interfaces/po-gauge-coordinates.interface.mjs +1 -1
- package/esm2022/lib/components/po-gauge/interfaces/po-gauge-ranges.interface.mjs +1 -1
- package/esm2022/lib/components/po-gauge/interfaces/po-gauge-svg-container.interface.mjs +1 -1
- package/esm2022/lib/components/po-gauge/po-gauge-base.component.mjs +1 -1
- package/esm2022/lib/components/po-gauge/po-gauge-default-values.constant.mjs +1 -1
- package/esm2022/lib/components/po-gauge/po-gauge-description/po-gauge-description.component.mjs +2 -2
- package/esm2022/lib/components/po-gauge/po-gauge-legend/po-gauge-legend.component.mjs +2 -2
- package/esm2022/lib/components/po-gauge/po-gauge-svg/po-gauge-path/po-gauge-path.component.mjs +2 -2
- package/esm2022/lib/components/po-gauge/po-gauge-svg/po-gauge-pointer/po-gauge-pointer.component.mjs +2 -2
- package/esm2022/lib/components/po-gauge/po-gauge-svg/po-gauge-svg.component.mjs +2 -2
- package/esm2022/lib/components/po-gauge/po-gauge-title/po-gauge-title.component.mjs +2 -2
- package/esm2022/lib/components/po-gauge/po-gauge.component.mjs +2 -2
- package/esm2022/lib/components/po-gauge/po-gauge.module.mjs +1 -1
- package/esm2022/lib/components/po-grid/index.mjs +1 -1
- package/esm2022/lib/components/po-grid/po-grid-cell/po-grid-cell.component.mjs +2 -2
- package/esm2022/lib/components/po-grid/po-grid-cell-action/po-grid-cell-action.component.mjs +2 -2
- package/esm2022/lib/components/po-grid/po-grid-head/po-grid-head.component.mjs +2 -2
- package/esm2022/lib/components/po-grid/po-grid-row-actions.interface.mjs +1 -1
- package/esm2022/lib/components/po-grid/po-grid.component.mjs +2 -2
- package/esm2022/lib/components/po-grid/po-grid.module.mjs +1 -1
- package/esm2022/lib/components/po-icon/index.mjs +1 -1
- package/esm2022/lib/components/po-icon/po-icon.component.mjs +2 -2
- package/esm2022/lib/components/po-icon/po-icon.module.mjs +1 -1
- package/esm2022/lib/components/po-image/index.mjs +1 -1
- package/esm2022/lib/components/po-image/po-image-base.component.mjs +1 -1
- package/esm2022/lib/components/po-image/po-image.component.mjs +2 -2
- package/esm2022/lib/components/po-image/po-image.module.mjs +1 -1
- package/esm2022/lib/components/po-info/index.mjs +1 -1
- package/esm2022/lib/components/po-info/po-info-base.component.mjs +1 -1
- package/esm2022/lib/components/po-info/po-info-orietation.enum.mjs +1 -1
- package/esm2022/lib/components/po-info/po-info.component.mjs +2 -2
- package/esm2022/lib/components/po-info/po-info.module.mjs +1 -1
- package/esm2022/lib/components/po-label/index.mjs +1 -1
- package/esm2022/lib/components/po-label/po-label.component.mjs +2 -2
- package/esm2022/lib/components/po-label/po-label.module.mjs +1 -1
- package/esm2022/lib/components/po-link/index.mjs +1 -1
- package/esm2022/lib/components/po-link/po-link-base.component.mjs +1 -1
- package/esm2022/lib/components/po-link/po-link.component.mjs +2 -2
- package/esm2022/lib/components/po-link/po-link.module.mjs +1 -1
- package/esm2022/lib/components/po-list-view/index.mjs +1 -1
- package/esm2022/lib/components/po-list-view/interfaces/po-list-view-action.interface.mjs +1 -1
- package/esm2022/lib/components/po-list-view/interfaces/po-list-view-literals.interface.mjs +1 -1
- package/esm2022/lib/components/po-list-view/po-list-view-base.component.mjs +1 -1
- package/esm2022/lib/components/po-list-view/po-list-view-content-template/po-list-view-content-template.directive.mjs +1 -1
- package/esm2022/lib/components/po-list-view/po-list-view-detail-template/po-list-view-detail-template.directive.mjs +1 -1
- package/esm2022/lib/components/po-list-view/po-list-view.component.mjs +2 -2
- package/esm2022/lib/components/po-list-view/po-list-view.module.mjs +1 -1
- package/esm2022/lib/components/po-listbox/enums/po-item-list-filter-mode.enum.mjs +1 -1
- package/esm2022/lib/components/po-listbox/enums/po-item-list-type.enum.mjs +1 -1
- package/esm2022/lib/components/po-listbox/index.mjs +1 -1
- package/esm2022/lib/components/po-listbox/interfaces/po-listbox-literals.interface.mjs +1 -1
- package/esm2022/lib/components/po-listbox/po-item-list/interfaces/po-item-list-action.interface.mjs +1 -1
- package/esm2022/lib/components/po-listbox/po-item-list/interfaces/po-item-list-option-group.interface.mjs +1 -1
- package/esm2022/lib/components/po-listbox/po-item-list/interfaces/po-item-list-option.interface.mjs +1 -1
- package/esm2022/lib/components/po-listbox/po-item-list/po-item-list-base.component.mjs +1 -1
- package/esm2022/lib/components/po-listbox/po-item-list/po-item-list.component.mjs +2 -2
- package/esm2022/lib/components/po-listbox/po-listbox-base.component.mjs +1 -1
- package/esm2022/lib/components/po-listbox/po-listbox.component.mjs +2 -2
- package/esm2022/lib/components/po-listbox/po-listbox.module.mjs +1 -1
- package/esm2022/lib/components/po-listbox/po-search-list/po-search-list.component.mjs +2 -2
- package/esm2022/lib/components/po-loading/index.mjs +1 -1
- package/esm2022/lib/components/po-loading/interfaces/po-loading-literals.interface.mjs +1 -1
- package/esm2022/lib/components/po-loading/po-loading-base.component.mjs +1 -1
- package/esm2022/lib/components/po-loading/po-loading-icon/po-loading-icon.component.mjs +2 -2
- package/esm2022/lib/components/po-loading/po-loading-overlay/interfaces/po-loading-overlay-literals.interface.mjs +1 -1
- package/esm2022/lib/components/po-loading/po-loading-overlay/po-loading-overlay-base.component.mjs +1 -1
- package/esm2022/lib/components/po-loading/po-loading-overlay/po-loading-overlay.component.mjs +2 -2
- package/esm2022/lib/components/po-loading/po-loading.component.mjs +2 -2
- package/esm2022/lib/components/po-loading/po-loading.module.mjs +1 -1
- package/esm2022/lib/components/po-logo/index.mjs +1 -1
- package/esm2022/lib/components/po-logo/po-logo.component.mjs +2 -2
- package/esm2022/lib/components/po-logo/po-logo.module.mjs +1 -1
- package/esm2022/lib/components/po-menu/index.mjs +1 -1
- package/esm2022/lib/components/po-menu/po-menu-base.component.mjs +1 -1
- package/esm2022/lib/components/po-menu/po-menu-filter/po-menu-filter-literals.interface.mjs +1 -1
- package/esm2022/lib/components/po-menu/po-menu-filter/po-menu-filter.component.mjs +2 -2
- package/esm2022/lib/components/po-menu/po-menu-filter/po-menu-filter.interface.mjs +1 -1
- package/esm2022/lib/components/po-menu/po-menu-header-template/po-menu-header-template.directive.mjs +1 -1
- package/esm2022/lib/components/po-menu/po-menu-item/po-menu-item-badge.interface.mjs +1 -1
- package/esm2022/lib/components/po-menu/po-menu-item/po-menu-item-filtered.interface.mjs +1 -1
- package/esm2022/lib/components/po-menu/po-menu-item/po-menu-item.component.mjs +2 -2
- package/esm2022/lib/components/po-menu/po-menu-item.interface.mjs +1 -1
- package/esm2022/lib/components/po-menu/po-menu.component.mjs +2 -2
- package/esm2022/lib/components/po-menu/po-menu.module.mjs +1 -1
- package/esm2022/lib/components/po-menu/services/po-menu-global.service.mjs +1 -1
- package/esm2022/lib/components/po-menu/services/po-menu-items.service.mjs +1 -1
- package/esm2022/lib/components/po-menu/services/po-menu.service.mjs +1 -1
- package/esm2022/lib/components/po-menu-panel/index.mjs +1 -1
- package/esm2022/lib/components/po-menu-panel/po-menu-panel-base.component.mjs +1 -1
- package/esm2022/lib/components/po-menu-panel/po-menu-panel-item/po-menu-panel-item-internal.interface.mjs +1 -1
- package/esm2022/lib/components/po-menu-panel/po-menu-panel-item/po-menu-panel-item.component.mjs +2 -2
- package/esm2022/lib/components/po-menu-panel/po-menu-panel-item/po-menu-panel-item.interface.mjs +1 -1
- package/esm2022/lib/components/po-menu-panel/po-menu-panel.component.mjs +2 -2
- package/esm2022/lib/components/po-menu-panel/po-menu-panel.module.mjs +1 -1
- package/esm2022/lib/components/po-menu-panel/services/po-menu-panel-items.service.mjs +1 -1
- package/esm2022/lib/components/po-modal/index.mjs +1 -1
- package/esm2022/lib/components/po-modal/po-modal-action.interface.mjs +1 -1
- package/esm2022/lib/components/po-modal/po-modal-base.component.mjs +1 -1
- package/esm2022/lib/components/po-modal/po-modal-footer/po-modal-footer.component.mjs +2 -2
- package/esm2022/lib/components/po-modal/po-modal.component.mjs +2 -2
- package/esm2022/lib/components/po-modal/po-modal.literals.mjs +1 -1
- package/esm2022/lib/components/po-modal/po-modal.module.mjs +1 -1
- package/esm2022/lib/components/po-navbar/index.mjs +1 -1
- package/esm2022/lib/components/po-navbar/interfaces/po-navbar-icon-action.interface.mjs +1 -1
- package/esm2022/lib/components/po-navbar/interfaces/po-navbar-item.interface.mjs +1 -1
- package/esm2022/lib/components/po-navbar/interfaces/po-navbar-literals.interface.mjs +1 -1
- package/esm2022/lib/components/po-navbar/po-navbar-actions/po-navbar-action/po-navbar-action.component.mjs +2 -2
- package/esm2022/lib/components/po-navbar/po-navbar-actions/po-navbar-action-popup/po-navbar-action-popup.component.mjs +2 -2
- package/esm2022/lib/components/po-navbar/po-navbar-actions/po-navbar-actions.component.mjs +2 -2
- package/esm2022/lib/components/po-navbar/po-navbar-actions/po-navbar-actions.module.mjs +1 -1
- package/esm2022/lib/components/po-navbar/po-navbar-base.component.mjs +1 -1
- package/esm2022/lib/components/po-navbar/po-navbar-item-navigation/po-navbar-item-navigation-icon/po-navbar-item-navigation-icon.component.mjs +2 -2
- package/esm2022/lib/components/po-navbar/po-navbar-item-navigation/po-navbar-item-navigation.component.mjs +2 -2
- package/esm2022/lib/components/po-navbar/po-navbar-item-navigation/po-navbar-item-navigation.module.mjs +1 -1
- package/esm2022/lib/components/po-navbar/po-navbar-items/po-navbar-item/po-navbar-item.component.mjs +2 -2
- package/esm2022/lib/components/po-navbar/po-navbar-items/po-navbar-items.component.mjs +2 -2
- package/esm2022/lib/components/po-navbar/po-navbar-items/po-navbar-items.module.mjs +1 -1
- package/esm2022/lib/components/po-navbar/po-navbar-logo/po-navbar-logo.component.mjs +2 -2
- package/esm2022/lib/components/po-navbar/po-navbar.component.mjs +2 -2
- package/esm2022/lib/components/po-navbar/po-navbar.module.mjs +1 -1
- package/esm2022/lib/components/po-page/index.mjs +1 -1
- package/esm2022/lib/components/po-page/po-page-action.interface.mjs +1 -1
- package/esm2022/lib/components/po-page/po-page-base.component.mjs +1 -1
- package/esm2022/lib/components/po-page/po-page-content/po-page-content-base.component.mjs +1 -1
- package/esm2022/lib/components/po-page/po-page-content/po-page-content.component.mjs +2 -2
- package/esm2022/lib/components/po-page/po-page-default/po-page-default-base.component.mjs +1 -1
- package/esm2022/lib/components/po-page/po-page-default/po-page-default-literals.interface.mjs +1 -1
- package/esm2022/lib/components/po-page/po-page-default/po-page-default.component.mjs +2 -2
- package/esm2022/lib/components/po-page/po-page-default/po-page-default.interface.mjs +1 -1
- package/esm2022/lib/components/po-page/po-page-detail/po-page-detail-base.component.mjs +1 -1
- package/esm2022/lib/components/po-page/po-page-detail/po-page-detail-literals.interface.mjs +1 -1
- package/esm2022/lib/components/po-page/po-page-detail/po-page-detail.component.mjs +2 -2
- package/esm2022/lib/components/po-page/po-page-edit/po-page-edit-base.component.mjs +1 -1
- package/esm2022/lib/components/po-page/po-page-edit/po-page-edit-literals.interface.mjs +1 -1
- package/esm2022/lib/components/po-page/po-page-edit/po-page-edit.component.mjs +2 -2
- package/esm2022/lib/components/po-page/po-page-filter.interface.mjs +1 -1
- package/esm2022/lib/components/po-page/po-page-header/po-page-header-base.component.mjs +1 -1
- package/esm2022/lib/components/po-page/po-page-header/po-page-header.component.mjs +2 -2
- package/esm2022/lib/components/po-page/po-page-list/po-page-list-base.component.mjs +1 -1
- package/esm2022/lib/components/po-page/po-page-list/po-page-list-literals.interface.mjs +1 -1
- package/esm2022/lib/components/po-page/po-page-list/po-page-list.component.mjs +2 -2
- package/esm2022/lib/components/po-page/po-page-slide/index.mjs +1 -1
- package/esm2022/lib/components/po-page/po-page-slide/po-page-slide-base.component.mjs +1 -1
- package/esm2022/lib/components/po-page/po-page-slide/po-page-slide.component.mjs +2 -2
- package/esm2022/lib/components/po-page/po-page-slide/po-page-slide.module.mjs +1 -1
- package/esm2022/lib/components/po-page/po-page.component.mjs +2 -2
- package/esm2022/lib/components/po-page/po-page.interface.mjs +1 -1
- package/esm2022/lib/components/po-page/po-page.module.mjs +1 -1
- package/esm2022/lib/components/po-popover/index.mjs +1 -1
- package/esm2022/lib/components/po-popover/po-popover-base.component.mjs +1 -1
- package/esm2022/lib/components/po-popover/po-popover.component.mjs +2 -2
- package/esm2022/lib/components/po-popover/po-popover.module.mjs +1 -1
- package/esm2022/lib/components/po-popup/index.mjs +1 -1
- package/esm2022/lib/components/po-popup/po-popup-action.interface.mjs +1 -1
- package/esm2022/lib/components/po-popup/po-popup-base.component.mjs +1 -1
- package/esm2022/lib/components/po-popup/po-popup.component.mjs +2 -2
- package/esm2022/lib/components/po-popup/po-popup.module.mjs +1 -1
- package/esm2022/lib/components/po-progress/enums/po-progress-status.enum.mjs +1 -1
- package/esm2022/lib/components/po-progress/index.mjs +1 -1
- package/esm2022/lib/components/po-progress/po-progress-bar/po-progress-bar.component.mjs +2 -2
- package/esm2022/lib/components/po-progress/po-progress-base.component.mjs +1 -1
- package/esm2022/lib/components/po-progress/po-progress.component.mjs +2 -2
- package/esm2022/lib/components/po-progress/po-progress.module.mjs +1 -1
- package/esm2022/lib/components/po-search/index.mjs +1 -1
- package/esm2022/lib/components/po-search/literals/po-search-literals.mjs +1 -1
- package/esm2022/lib/components/po-search/po-search-base.component.mjs +1 -1
- package/esm2022/lib/components/po-search/po-search-filter-mode.enum.mjs +1 -1
- package/esm2022/lib/components/po-search/po-search.component.mjs +2 -2
- package/esm2022/lib/components/po-search/po-search.module.mjs +1 -1
- package/esm2022/lib/components/po-slide/directives/po-slide-content-template.directive.mjs +1 -1
- package/esm2022/lib/components/po-slide/index.mjs +1 -1
- package/esm2022/lib/components/po-slide/interfaces/po-slide-item.interface.mjs +1 -1
- package/esm2022/lib/components/po-slide/po-slide-base.component.mjs +1 -1
- package/esm2022/lib/components/po-slide/po-slide-circles/po-slide-circles.component.mjs +2 -2
- package/esm2022/lib/components/po-slide/po-slide-control/po-slide-control.component.mjs +2 -2
- package/esm2022/lib/components/po-slide/po-slide-item/po-slide-item.component.mjs +2 -2
- package/esm2022/lib/components/po-slide/po-slide.component.mjs +2 -2
- package/esm2022/lib/components/po-slide/po-slide.module.mjs +1 -1
- package/esm2022/lib/components/po-stepper/enums/po-stepper-orientation.enum.mjs +1 -1
- package/esm2022/lib/components/po-stepper/enums/po-stepper-status.enum.mjs +1 -1
- package/esm2022/lib/components/po-stepper/index.mjs +1 -1
- package/esm2022/lib/components/po-stepper/po-step/po-step.component.mjs +2 -2
- package/esm2022/lib/components/po-stepper/po-stepper-base.component.mjs +1 -1
- package/esm2022/lib/components/po-stepper/po-stepper-circle/po-stepper-circle.component.mjs +2 -2
- package/esm2022/lib/components/po-stepper/po-stepper-item.interface.mjs +1 -1
- package/esm2022/lib/components/po-stepper/po-stepper-label/po-stepper-label.component.mjs +2 -2
- package/esm2022/lib/components/po-stepper/po-stepper-step/po-stepper-step.component.mjs +2 -2
- package/esm2022/lib/components/po-stepper/po-stepper.component.mjs +2 -2
- package/esm2022/lib/components/po-stepper/po-stepper.module.mjs +1 -1
- package/esm2022/lib/components/po-table/enums/po-table-column-sort-type.enum.mjs +1 -1
- package/esm2022/lib/components/po-table/enums/po-table-row-template-arrow-direction.enum.mjs +1 -1
- package/esm2022/lib/components/po-table/enums/po-table-spacing.enum.mjs +1 -1
- package/esm2022/lib/components/po-table/index.mjs +1 -1
- package/esm2022/lib/components/po-table/interfaces/po-table-action.interface.mjs +1 -1
- package/esm2022/lib/components/po-table/interfaces/po-table-boolean.interface.mjs +1 -1
- package/esm2022/lib/components/po-table/interfaces/po-table-column-sort.interface.mjs +1 -1
- package/esm2022/lib/components/po-table/interfaces/po-table-column.interface.mjs +1 -1
- package/esm2022/lib/components/po-table/interfaces/po-table-filter.interface.mjs +1 -1
- package/esm2022/lib/components/po-table/interfaces/po-table-filtered-items-params.interface.mjs +1 -1
- package/esm2022/lib/components/po-table/interfaces/po-table-literals.interface.mjs +1 -1
- package/esm2022/lib/components/po-table/interfaces/po-table-response-api.interface.mjs +1 -1
- package/esm2022/lib/components/po-table/po-table-base.component.mjs +3 -3
- package/esm2022/lib/components/po-table/po-table-cell-template/po-table-cell-template.directive.mjs +1 -1
- package/esm2022/lib/components/po-table/po-table-column-frozen/po-table-column-frozen.directive.mjs +1 -1
- package/esm2022/lib/components/po-table/po-table-column-icon/po-table-column-icon.component.mjs +2 -2
- package/esm2022/lib/components/po-table/po-table-column-icon/po-table-column-icon.interface.mjs +1 -1
- package/esm2022/lib/components/po-table/po-table-column-label/po-table-column-label.component.mjs +2 -2
- package/esm2022/lib/components/po-table/po-table-column-label/po-table-column-label.interface.mjs +1 -1
- package/esm2022/lib/components/po-table/po-table-column-link/po-table-column-link.component.mjs +2 -2
- package/esm2022/lib/components/po-table/po-table-column-manager/po-table-column-manager.component.mjs +2 -2
- package/esm2022/lib/components/po-table/po-table-column-template/po-table-column-template.directive.mjs +1 -1
- package/esm2022/lib/components/po-table/po-table-detail/po-table-detail-column.interface.mjs +1 -1
- package/esm2022/lib/components/po-table/po-table-detail/po-table-detail.component.mjs +2 -2
- package/esm2022/lib/components/po-table/po-table-detail/po-table-detail.interface.mjs +1 -1
- package/esm2022/lib/components/po-table/po-table-icon/po-table-icon.component.mjs +2 -2
- package/esm2022/lib/components/po-table/po-table-list-manager/po-table-list-manager.component.mjs +2 -2
- package/esm2022/lib/components/po-table/po-table-row-template/po-table-row-template.directive.mjs +1 -1
- package/esm2022/lib/components/po-table/po-table-show-subtitle/po-table-show-subtitle.component.mjs +2 -2
- package/esm2022/lib/components/po-table/po-table-subtitle-circle/po-table-subtitle-circle.component.mjs +2 -2
- package/esm2022/lib/components/po-table/po-table-subtitle-footer/po-table-subtitle-column.interface.mjs +1 -1
- package/esm2022/lib/components/po-table/po-table-subtitle-footer/po-table-subtitle-footer.component.mjs +2 -2
- package/esm2022/lib/components/po-table/po-table.component.mjs +2 -2
- package/esm2022/lib/components/po-table/po-table.module.mjs +1 -1
- package/esm2022/lib/components/po-table/services/po-table.service.mjs +1 -1
- package/esm2022/lib/components/po-tabs/index.mjs +1 -1
- package/esm2022/lib/components/po-tabs/po-tab/po-tab-base.component.mjs +1 -1
- package/esm2022/lib/components/po-tabs/po-tab/po-tab.component.mjs +2 -2
- package/esm2022/lib/components/po-tabs/po-tab/po-tab.interface.mjs +1 -1
- package/esm2022/lib/components/po-tabs/po-tab-button/po-tab-button.component.mjs +2 -2
- package/esm2022/lib/components/po-tabs/po-tab-dropdown/po-tab-dropdown.component.mjs +2 -2
- package/esm2022/lib/components/po-tabs/po-tabs-base.component.mjs +1 -1
- package/esm2022/lib/components/po-tabs/po-tabs.component.mjs +2 -2
- package/esm2022/lib/components/po-tabs/po-tabs.module.mjs +1 -1
- package/esm2022/lib/components/po-tag/enums/po-tag-icon.enum.mjs +1 -1
- package/esm2022/lib/components/po-tag/enums/po-tag-orientation.enum.mjs +1 -1
- package/esm2022/lib/components/po-tag/enums/po-tag-type.enum.mjs +1 -1
- package/esm2022/lib/components/po-tag/index.mjs +1 -1
- package/esm2022/lib/components/po-tag/interfaces/po-tag-item.interface.mjs +1 -1
- package/esm2022/lib/components/po-tag/po-tag-base.component.mjs +1 -1
- package/esm2022/lib/components/po-tag/po-tag.component.mjs +2 -2
- package/esm2022/lib/components/po-tag/po-tag.literals.mjs +1 -1
- package/esm2022/lib/components/po-tag/po-tag.module.mjs +1 -1
- package/esm2022/lib/components/po-toolbar/index.mjs +1 -1
- package/esm2022/lib/components/po-toolbar/po-toolbar-action.interface.mjs +1 -1
- package/esm2022/lib/components/po-toolbar/po-toolbar-actions/po-toolbar-actions.component.mjs +2 -2
- package/esm2022/lib/components/po-toolbar/po-toolbar-base.component.mjs +1 -1
- package/esm2022/lib/components/po-toolbar/po-toolbar-notification/po-toolbar-notification.component.mjs +2 -2
- package/esm2022/lib/components/po-toolbar/po-toolbar-profile/po-toolbar-profile.component.mjs +2 -2
- package/esm2022/lib/components/po-toolbar/po-toolbar-profile/po-toolbar-profile.interface.mjs +1 -1
- package/esm2022/lib/components/po-toolbar/po-toolbar.component.mjs +2 -2
- package/esm2022/lib/components/po-toolbar/po-toolbar.module.mjs +1 -1
- package/esm2022/lib/components/po-tree-view/index.mjs +1 -1
- package/esm2022/lib/components/po-tree-view/po-tree-view-base.component.mjs +27 -5
- package/esm2022/lib/components/po-tree-view/po-tree-view-item/po-tree-view-item.component.mjs +2 -2
- package/esm2022/lib/components/po-tree-view/po-tree-view-item/po-tree-view-item.interface.mjs +1 -1
- package/esm2022/lib/components/po-tree-view/po-tree-view-item-header/po-tree-view-item-header.component.mjs +2 -2
- package/esm2022/lib/components/po-tree-view/po-tree-view.component.mjs +8 -3
- package/esm2022/lib/components/po-tree-view/po-tree-view.module.mjs +1 -1
- package/esm2022/lib/components/po-tree-view/services/po-tree-view.service.mjs +1 -1
- package/esm2022/lib/components/po-widget/index.mjs +1 -1
- package/esm2022/lib/components/po-widget/po-widget-base.component.mjs +1 -1
- package/esm2022/lib/components/po-widget/po-widget.component.mjs +2 -2
- package/esm2022/lib/components/po-widget/po-widget.module.mjs +1 -1
- package/esm2022/lib/decorators/index.mjs +1 -1
- package/esm2022/lib/decorators/input-boolean/input-boolean.decorator.mjs +1 -1
- package/esm2022/lib/decorators/input-required/input-required.decorator.mjs +1 -1
- package/esm2022/lib/decorators/property-decorator.interface.mjs +1 -1
- package/esm2022/lib/decorators/utils-decorators.mjs +1 -1
- package/esm2022/lib/directives/directives.module.mjs +1 -1
- package/esm2022/lib/directives/index.mjs +1 -1
- package/esm2022/lib/directives/po-tooltip/index.mjs +1 -1
- package/esm2022/lib/directives/po-tooltip/po-tooltip-base.directive.mjs +1 -1
- package/esm2022/lib/directives/po-tooltip/po-tooltip-control-position.service.mjs +1 -1
- package/esm2022/lib/directives/po-tooltip/po-tooltip.directive.mjs +1 -1
- package/esm2022/lib/directives/po-tooltip/po-tooltip.module.mjs +1 -1
- package/esm2022/lib/enums/po-color-palette.enum.mjs +1 -1
- package/esm2022/lib/enums/po-key-code.enum.mjs +1 -1
- package/esm2022/lib/guards/guards.module.mjs +1 -1
- package/esm2022/lib/guards/index.mjs +1 -1
- package/esm2022/lib/index.mjs +1 -1
- package/esm2022/lib/interceptors/index.mjs +1 -1
- package/esm2022/lib/interceptors/interceptors.module.mjs +1 -1
- package/esm2022/lib/interceptors/po-http-interceptor/index.mjs +1 -1
- package/esm2022/lib/interceptors/po-http-interceptor/po-http-interceptor-base.service.mjs +1 -1
- package/esm2022/lib/interceptors/po-http-interceptor/po-http-interceptor-detail/po-http-interceptor-detail-literals.interface.mjs +1 -1
- package/esm2022/lib/interceptors/po-http-interceptor/po-http-interceptor-detail/po-http-interceptor-detail.component.mjs +2 -2
- package/esm2022/lib/interceptors/po-http-interceptor/po-http-interceptor-detail/po-http-interceptor-detail.interface.mjs +1 -1
- package/esm2022/lib/interceptors/po-http-interceptor/po-http-interceptor-literals.mjs +1 -1
- package/esm2022/lib/interceptors/po-http-interceptor/po-http-interceptor.module.mjs +1 -1
- package/esm2022/lib/interceptors/po-http-interceptor/po-http-interceptor.service.mjs +1 -1
- package/esm2022/lib/interceptors/po-http-request/index.mjs +1 -1
- package/esm2022/lib/interceptors/po-http-request/po-http-request-control-service.mjs +1 -1
- package/esm2022/lib/interceptors/po-http-request/po-http-request-interceptor.service.mjs +1 -1
- package/esm2022/lib/interceptors/po-http-request/po-http-request.module.mjs +1 -1
- package/esm2022/lib/interfaces/index.mjs +1 -1
- package/esm2022/lib/interfaces/po-http/po-response-api.interface.mjs +1 -1
- package/esm2022/lib/pipes/index.mjs +1 -1
- package/esm2022/lib/pipes/pipes.module.mjs +1 -1
- package/esm2022/lib/pipes/po-time/index.mjs +1 -1
- package/esm2022/lib/pipes/po-time/po-time.module.mjs +1 -1
- package/esm2022/lib/pipes/po-time/po-time.pipe.mjs +1 -1
- package/esm2022/lib/po.module.mjs +1 -1
- package/esm2022/lib/services/index.mjs +1 -1
- package/esm2022/lib/services/po-active-overlay/index.mjs +1 -1
- package/esm2022/lib/services/po-active-overlay/po-active-overlay.module.mjs +1 -1
- package/esm2022/lib/services/po-active-overlay/po-active-overlay.service.mjs +1 -1
- package/esm2022/lib/services/po-color/po-color.service.mjs +1 -1
- package/esm2022/lib/services/po-color/po-colors.constant.mjs +1 -1
- package/esm2022/lib/services/po-color-palette/index.mjs +1 -1
- package/esm2022/lib/services/po-color-palette/po-color-palette.module.mjs +1 -1
- package/esm2022/lib/services/po-color-palette/po-color-palette.service.mjs +1 -1
- package/esm2022/lib/services/po-component-injector/index.mjs +1 -1
- package/esm2022/lib/services/po-component-injector/po-component-injector.module.mjs +1 -1
- package/esm2022/lib/services/po-component-injector/po-component-injector.service.mjs +1 -1
- package/esm2022/lib/services/po-control-position/index.mjs +1 -1
- package/esm2022/lib/services/po-control-position/po-control-position.constants.mjs +1 -1
- package/esm2022/lib/services/po-control-position/po-control-position.module.mjs +1 -1
- package/esm2022/lib/services/po-control-position/po-control-position.service.mjs +1 -1
- package/esm2022/lib/services/po-date/index.mjs +1 -1
- package/esm2022/lib/services/po-date/po-date.module.mjs +1 -1
- package/esm2022/lib/services/po-date/po-date.service.mjs +1 -1
- package/esm2022/lib/services/po-dialog/index.mjs +1 -1
- package/esm2022/lib/services/po-dialog/interfaces/po-dialog-alert-literals.interface.mjs +1 -1
- package/esm2022/lib/services/po-dialog/interfaces/po-dialog-confirm-literals.interface.mjs +1 -1
- package/esm2022/lib/services/po-dialog/interfaces/po-dialog.interface.mjs +1 -1
- package/esm2022/lib/services/po-dialog/po-dialog-base.service.mjs +1 -1
- package/esm2022/lib/services/po-dialog/po-dialog.component.mjs +2 -2
- package/esm2022/lib/services/po-dialog/po-dialog.enum.mjs +1 -1
- package/esm2022/lib/services/po-dialog/po-dialog.module.mjs +1 -1
- package/esm2022/lib/services/po-dialog/po-dialog.service.mjs +1 -1
- package/esm2022/lib/services/po-i18n/index.mjs +1 -1
- package/esm2022/lib/services/po-i18n/interfaces/po-i18n-config-default.interface.mjs +1 -1
- package/esm2022/lib/services/po-i18n/interfaces/po-i18n-config.interface.mjs +1 -1
- package/esm2022/lib/services/po-i18n/interfaces/po-i18n-literals.interface.mjs +1 -1
- package/esm2022/lib/services/po-i18n/po-i18n-base.pipe.mjs +1 -1
- package/esm2022/lib/services/po-i18n/po-i18n-base.service.mjs +1 -1
- package/esm2022/lib/services/po-i18n/po-i18n-config-injection-token.mjs +1 -1
- package/esm2022/lib/services/po-i18n/po-i18n.module.mjs +1 -1
- package/esm2022/lib/services/po-i18n/po-i18n.pipe.mjs +1 -1
- package/esm2022/lib/services/po-i18n/po-i18n.service.mjs +1 -1
- package/esm2022/lib/services/po-language/index.mjs +1 -1
- package/esm2022/lib/services/po-language/po-language.constant.mjs +1 -1
- package/esm2022/lib/services/po-language/po-language.interface.mjs +1 -1
- package/esm2022/lib/services/po-language/po-language.module.mjs +1 -1
- package/esm2022/lib/services/po-language/po-language.service.mjs +1 -1
- package/esm2022/lib/services/po-notification/index.mjs +1 -1
- package/esm2022/lib/services/po-notification/po-notification-base.service.mjs +1 -1
- package/esm2022/lib/services/po-notification/po-notification.interface.mjs +1 -1
- package/esm2022/lib/services/po-notification/po-notification.module.mjs +1 -1
- package/esm2022/lib/services/po-notification/po-notification.service.mjs +1 -1
- package/esm2022/lib/services/po-notification/po-toaster/po-toaster-base.component.mjs +1 -1
- package/esm2022/lib/services/po-notification/po-toaster/po-toaster-orientation.enum.mjs +1 -1
- package/esm2022/lib/services/po-notification/po-toaster/po-toaster-type.enum.mjs +1 -1
- package/esm2022/lib/services/po-notification/po-toaster/po-toaster.component.mjs +2 -2
- package/esm2022/lib/services/po-notification/po-toaster/po-toaster.interface.mjs +1 -1
- package/esm2022/lib/services/po-notification/po-toaster/po-toaster.literals.mjs +1 -1
- package/esm2022/lib/services/services.module.mjs +1 -1
- package/esm2022/lib/utils/util.mjs +1 -1
- package/esm2022/public-api.mjs +1 -1
- package/fesm2022/po-ui-ng-components.mjs +246 -206
- package/fesm2022/po-ui-ng-components.mjs.map +1 -1
- package/lib/components/po-field/po-field.module.d.ts +25 -24
- package/lib/components/po-field/po-lookup/po-lookup-base.component.d.ts +30 -5
- package/lib/components/po-tree-view/po-tree-view-base.component.d.ts +16 -1
- package/lib/components/po-tree-view/po-tree-view.component.d.ts +3 -2
- package/package.json +4 -4
- package/po-ui-ng-components-16.1.0.tgz +0 -0
- package/schematics/README.md +74 -74
- package/schematics/collection.json +40 -40
- package/schematics/migrations.json +45 -45
- package/schematics/ng-add/index.js +1 -1
- package/schematics/ng-add/schema.json +23 -23
- package/schematics/ng-generate/po-page-default/files/__path__/__name@dasherize__/__name@dasherize__-routing.module.ts.template +14 -14
- package/schematics/ng-generate/po-page-default/files/__path__/__name@dasherize__/__name@dasherize__.component.html.template +3 -3
- package/schematics/ng-generate/po-page-default/files/__path__/__name@dasherize__/__name@dasherize__.component.spec.ts.template +32 -32
- package/schematics/ng-generate/po-page-default/files/__path__/__name@dasherize__/__name@dasherize__.component.ts.template +18 -18
- package/schematics/ng-generate/po-page-default/files/__path__/__name@dasherize__/__name@dasherize__.module.ts.template +19 -19
- package/schematics/ng-generate/po-page-default/schema.json +67 -67
- package/schematics/ng-generate/po-page-detail/files/__path__/__name@dasherize__/__name@dasherize__-routing.module.ts.template +14 -14
- package/schematics/ng-generate/po-page-detail/files/__path__/__name@dasherize__/__name@dasherize__.component.html.template +8 -8
- package/schematics/ng-generate/po-page-detail/files/__path__/__name@dasherize__/__name@dasherize__.component.spec.ts.template +32 -32
- package/schematics/ng-generate/po-page-detail/files/__path__/__name@dasherize__/__name@dasherize__.component.ts.template +26 -26
- package/schematics/ng-generate/po-page-detail/files/__path__/__name@dasherize__/__name@dasherize__.module.ts.template +19 -19
- package/schematics/ng-generate/po-page-detail/schema.json +67 -67
- package/schematics/ng-generate/po-page-edit/files/__path__/__name@dasherize__/__name@dasherize__-routing.module.ts.template +14 -14
- package/schematics/ng-generate/po-page-edit/files/__path__/__name@dasherize__/__name@dasherize__.component.html.template +8 -8
- package/schematics/ng-generate/po-page-edit/files/__path__/__name@dasherize__/__name@dasherize__.component.spec.ts.template +32 -32
- package/schematics/ng-generate/po-page-edit/files/__path__/__name@dasherize__/__name@dasherize__.component.ts.template +26 -26
- package/schematics/ng-generate/po-page-edit/files/__path__/__name@dasherize__/__name@dasherize__.module.ts.template +19 -19
- package/schematics/ng-generate/po-page-edit/schema.json +67 -67
- package/schematics/ng-generate/po-page-list/files/__path__/__name@dasherize__/__name@dasherize__-routing.module.ts.template +14 -14
- package/schematics/ng-generate/po-page-list/files/__path__/__name@dasherize__/__name@dasherize__.component.html.template +28 -28
- package/schematics/ng-generate/po-page-list/files/__path__/__name@dasherize__/__name@dasherize__.component.spec.ts.template +35 -35
- package/schematics/ng-generate/po-page-list/files/__path__/__name@dasherize__/__name@dasherize__.component.ts.template +33 -33
- package/schematics/ng-generate/po-page-list/files/__path__/__name@dasherize__/__name@dasherize__.module.ts.template +19 -19
- package/schematics/ng-generate/po-page-list/schema.json +78 -78
- package/schematics/ng-generate/sidemenu/files/app.component.html.template +9 -9
- package/schematics/ng-generate/sidemenu/files/app.component.spec.ts.template +30 -30
- package/schematics/ng-generate/sidemenu/files/app.component.ts.template +20 -20
- package/schematics/ng-generate/sidemenu/schema.json +32 -32
- package/schematics/ng-update/v14/index.js +1 -1
- package/schematics/ng-update/v15/index.js +1 -1
- package/schematics/ng-update/v16/index.js +1 -1
- package/schematics/ng-update/v2/index.js +1 -1
- package/schematics/ng-update/v3/index.js +1 -1
- package/schematics/ng-update/v4/index.js +1 -1
- package/schematics/ng-update/v5/index.js +1 -1
- package/schematics/ng-update/v6/index.js +1 -1
- package/po-ui-ng-components-16.0.0.tgz +0 -0
|
@@ -13,34 +13,46 @@ import * as i1 from "./po-combo-filter.service";
|
|
|
13
13
|
import * as i2 from "../../../services/po-control-position/po-control-position.service";
|
|
14
14
|
import * as i3 from "../../../services/po-language/po-language.service";
|
|
15
15
|
import * as i4 from "@angular/common";
|
|
16
|
-
import * as i5 from "
|
|
17
|
-
import * as i6 from "../po-
|
|
18
|
-
import * as i7 from "../po-field-container/po-field-container.component";
|
|
19
|
-
import * as i8 from "
|
|
20
|
-
import * as i9 from "../../po-
|
|
16
|
+
import * as i5 from "@angular/cdk/overlay";
|
|
17
|
+
import * as i6 from "../po-clean/po-clean.component";
|
|
18
|
+
import * as i7 from "../po-field-container/po-field-container-bottom/po-field-container-bottom.component";
|
|
19
|
+
import * as i8 from "../po-field-container/po-field-container.component";
|
|
20
|
+
import * as i9 from "../../po-icon/po-icon.component";
|
|
21
|
+
import * as i10 from "../../po-listbox/po-listbox.component";
|
|
21
22
|
const _c0 = ["containerElement"];
|
|
22
23
|
const _c1 = ["contentElement"];
|
|
23
24
|
const _c2 = ["iconArrow"];
|
|
24
25
|
const _c3 = ["inp"];
|
|
25
26
|
const _c4 = ["poListbox"];
|
|
26
|
-
function
|
|
27
|
-
i0.ɵɵelementStart(0, "div",
|
|
28
|
-
i0.ɵɵelement(1, "po-icon",
|
|
27
|
+
function PoComboComponent_div_3_Template(rf, ctx) { if (rf & 1) {
|
|
28
|
+
i0.ɵɵelementStart(0, "div", 12);
|
|
29
|
+
i0.ɵɵelement(1, "po-icon", 13);
|
|
29
30
|
i0.ɵɵelementEnd();
|
|
30
31
|
} if (rf & 2) {
|
|
31
|
-
const
|
|
32
|
+
const ctx_r1 = i0.ɵɵnextContext();
|
|
32
33
|
i0.ɵɵadvance(1);
|
|
33
|
-
i0.ɵɵclassProp("po-field-icon-disabled",
|
|
34
|
-
i0.ɵɵproperty("p-icon",
|
|
34
|
+
i0.ɵɵclassProp("po-field-icon-disabled", ctx_r1.disabled);
|
|
35
|
+
i0.ɵɵproperty("p-icon", ctx_r1.icon);
|
|
35
36
|
} }
|
|
36
|
-
function
|
|
37
|
-
const
|
|
38
|
-
i0.ɵɵelementStart(0, "po-clean",
|
|
39
|
-
i0.ɵɵlistener("p-change-event", function
|
|
37
|
+
function PoComboComponent_po_clean_7_Template(rf, ctx) { if (rf & 1) {
|
|
38
|
+
const _r7 = i0.ɵɵgetCurrentView();
|
|
39
|
+
i0.ɵɵelementStart(0, "po-clean", 14);
|
|
40
|
+
i0.ɵɵlistener("p-change-event", function PoComboComponent_po_clean_7_Template_po_clean_p_change_event_0_listener($event) { i0.ɵɵrestoreView(_r7); const ctx_r6 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r6.clear($event)); });
|
|
40
41
|
i0.ɵɵelementEnd();
|
|
41
42
|
} if (rf & 2) {
|
|
42
|
-
const
|
|
43
|
-
i0.ɵɵproperty("p-element-ref",
|
|
43
|
+
const ctx_r3 = i0.ɵɵnextContext();
|
|
44
|
+
i0.ɵɵproperty("p-element-ref", ctx_r3.inputEl);
|
|
45
|
+
} }
|
|
46
|
+
function PoComboComponent_ng_template_10_Template(rf, ctx) { if (rf & 1) {
|
|
47
|
+
const _r12 = i0.ɵɵgetCurrentView();
|
|
48
|
+
i0.ɵɵelementStart(0, "div", 15, 16)(2, "po-listbox", 17, 18);
|
|
49
|
+
i0.ɵɵlistener("p-selectcombo-item", function PoComboComponent_ng_template_10_Template_po_listbox_p_selectcombo_item_2_listener($event) { i0.ɵɵrestoreView(_r12); const ctx_r11 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r11.onOptionClick($event, $event.event)); })("p-update-infinite-scroll", function PoComboComponent_ng_template_10_Template_po_listbox_p_update_infinite_scroll_2_listener() { i0.ɵɵrestoreView(_r12); const ctx_r13 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r13.showMoreInfiniteScroll()); })("p-close", function PoComboComponent_ng_template_10_Template_po_listbox_p_close_2_listener() { i0.ɵɵrestoreView(_r12); const ctx_r14 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r14.onCloseCombo()); });
|
|
50
|
+
i0.ɵɵelementEnd()();
|
|
51
|
+
} if (rf & 2) {
|
|
52
|
+
const ctx_r5 = i0.ɵɵnextContext();
|
|
53
|
+
i0.ɵɵproperty("hidden", !ctx_r5.comboOpen && !ctx_r5.isServerSearching);
|
|
54
|
+
i0.ɵɵadvance(2);
|
|
55
|
+
i0.ɵɵproperty("p-items", ctx_r5.visibleOptions)("p-field-value", ctx_r5.dynamicValue)("p-field-label", ctx_r5.dynamicLabel)("p-template", ctx_r5.comboOptionTemplate)("p-search-value", ctx_r5.getInputValue())("p-infinite-loading", ctx_r5.infiniteLoading)("p-infinite-scroll", ctx_r5.infiniteScroll)("p-filtering", ctx_r5.isFiltering)("p-cache", ctx_r5.cache)("p-filter-mode", ctx_r5.filterMode)("p-visible", ctx_r5.comboOpen)("p-is-searching", ctx_r5.isServerSearching)("p-should-mark-letter", ctx_r5.shouldMarkLetters)("p-compare-cache", ctx_r5.compareObjects(ctx_r5.cacheOptions, ctx_r5.visibleOptions))("p-combo-service", ctx_r5.service)("p-infinite-scroll-distance", ctx_r5.infiniteScrollDistance);
|
|
44
56
|
} }
|
|
45
57
|
const poComboContainerOffset = 8;
|
|
46
58
|
const poComboContainerPositionDefault = 'bottom';
|
|
@@ -533,30 +545,29 @@ export class PoComboComponent extends PoComboBaseComponent {
|
|
|
533
545
|
useExisting: forwardRef(() => PoComboComponent),
|
|
534
546
|
multi: true
|
|
535
547
|
}
|
|
536
|
-
]), i0.ɵɵInheritDefinitionFeature, i0.ɵɵNgOnChangesFeature], decls:
|
|
537
|
-
i0.ɵɵelementStart(0, "po-field-container", 0)(1, "div", 1);
|
|
538
|
-
i0.ɵɵtemplate(
|
|
539
|
-
i0.ɵɵelementStart(
|
|
540
|
-
i0.ɵɵlistener("click", function
|
|
548
|
+
]), i0.ɵɵInheritDefinitionFeature, i0.ɵɵNgOnChangesFeature], decls: 12, vars: 27, consts: [[3, "p-disabled", "p-id", "p-label", "p-optional", "p-required", "p-show-required"], ["cdkOverlayOrigin", "", 1, "po-field-container-content"], ["trigger", "cdkOverlayOrigin"], ["class", "po-field-icon-container-left", 4, "ngIf"], ["autocomplete", "off", "type", "text", 1, "po-input", "po-combo-input", 3, "ngClass", "disabled", "id", "placeholder", "required", "click", "keyup", "blur", "keyup.enter", "keydown"], ["inp", ""], [1, "po-field-icon-container-right"], ["class", "po-icon-input", 3, "p-element-ref", "p-change-event", 4, "ngIf"], [3, "click"], ["iconArrow", ""], ["cdkConnectedOverlay", "", 3, "cdkConnectedOverlayOrigin", "cdkConnectedOverlayOpen"], [3, "p-help", "p-disabled"], [1, "po-field-icon-container-left"], [1, "po-field-icon", "po-icon-input", 3, "p-icon"], [1, "po-icon-input", 3, "p-element-ref", "p-change-event"], [1, "po-combo-container", 3, "hidden"], ["containerElement", ""], ["p-type", "option", 3, "p-items", "p-field-value", "p-field-label", "p-template", "p-search-value", "p-infinite-loading", "p-infinite-scroll", "p-filtering", "p-cache", "p-filter-mode", "p-visible", "p-is-searching", "p-should-mark-letter", "p-compare-cache", "p-combo-service", "p-infinite-scroll-distance", "p-selectcombo-item", "p-update-infinite-scroll", "p-close"], ["poListbox", "", "contentElement", ""]], template: function PoComboComponent_Template(rf, ctx) { if (rf & 1) {
|
|
549
|
+
i0.ɵɵelementStart(0, "po-field-container", 0)(1, "div", 1, 2);
|
|
550
|
+
i0.ɵɵtemplate(3, PoComboComponent_div_3_Template, 2, 3, "div", 3);
|
|
551
|
+
i0.ɵɵelementStart(4, "input", 4, 5);
|
|
552
|
+
i0.ɵɵlistener("click", function PoComboComponent_Template_input_click_4_listener() { return ctx.toggleComboVisibility(); })("keyup", function PoComboComponent_Template_input_keyup_4_listener($event) { return ctx.onKeyUp($event); })("blur", function PoComboComponent_Template_input_blur_4_listener() { return ctx.onBlur(); })("keyup.enter", function PoComboComponent_Template_input_keyup_enter_4_listener($event) { return ctx.searchOnEnter($event.target.value); })("keydown", function PoComboComponent_Template_input_keydown_4_listener($event) { return ctx.onKeyDown($event); });
|
|
541
553
|
i0.ɵɵelementEnd();
|
|
542
|
-
i0.ɵɵelementStart(
|
|
543
|
-
i0.ɵɵtemplate(
|
|
544
|
-
i0.ɵɵelementStart(
|
|
545
|
-
i0.ɵɵlistener("click", function
|
|
554
|
+
i0.ɵɵelementStart(6, "div", 6);
|
|
555
|
+
i0.ɵɵtemplate(7, PoComboComponent_po_clean_7_Template, 1, 1, "po-clean", 7);
|
|
556
|
+
i0.ɵɵelementStart(8, "span", 8, 9);
|
|
557
|
+
i0.ɵɵlistener("click", function PoComboComponent_Template_span_click_8_listener() { return ctx.toggleComboVisibility(); });
|
|
546
558
|
i0.ɵɵelementEnd()()();
|
|
547
|
-
i0.ɵɵ
|
|
548
|
-
i0.ɵɵ
|
|
549
|
-
i0.ɵɵelementEnd()();
|
|
550
|
-
i0.ɵɵelement(14, "po-field-container-bottom", 13);
|
|
559
|
+
i0.ɵɵtemplate(10, PoComboComponent_ng_template_10_Template, 5, 17, "ng-template", 10);
|
|
560
|
+
i0.ɵɵelement(11, "po-field-container-bottom", 11);
|
|
551
561
|
i0.ɵɵelementEnd();
|
|
552
562
|
} if (rf & 2) {
|
|
553
|
-
const
|
|
563
|
+
const _r0 = i0.ɵɵreference(2);
|
|
564
|
+
const _r2 = i0.ɵɵreference(5);
|
|
554
565
|
i0.ɵɵproperty("p-disabled", ctx.disabled)("p-id", ctx.id)("p-label", ctx.label)("p-optional", ctx.optional)("p-required", ctx.required)("p-show-required", ctx.showRequired);
|
|
555
|
-
i0.ɵɵadvance(
|
|
566
|
+
i0.ɵɵadvance(3);
|
|
556
567
|
i0.ɵɵproperty("ngIf", ctx.icon);
|
|
557
568
|
i0.ɵɵadvance(1);
|
|
558
569
|
i0.ɵɵclassProp("po-input-icon-left", ctx.icon);
|
|
559
|
-
i0.ɵɵproperty("ngClass", ctx.clean &&
|
|
570
|
+
i0.ɵɵproperty("ngClass", ctx.clean && _r2.value ? "po-input-double-icon-right" : "po-input-icon-right")("disabled", ctx.disabled)("id", ctx.id)("placeholder", ctx.disabled ? "" : ctx.placeholder)("required", ctx.required);
|
|
560
571
|
i0.ɵɵattribute("name", ctx.name);
|
|
561
572
|
i0.ɵɵadvance(3);
|
|
562
573
|
i0.ɵɵproperty("ngIf", ctx.clean && !ctx.disabled);
|
|
@@ -564,12 +575,10 @@ export class PoComboComponent extends PoComboBaseComponent {
|
|
|
564
575
|
i0.ɵɵclassMapInterpolate1("po-icon po-field-icon ", ctx.comboIcon, " po-icon-input");
|
|
565
576
|
i0.ɵɵclassProp("po-field-icon-disabled", ctx.disabled)("po-field-icon", !ctx.disabled);
|
|
566
577
|
i0.ɵɵadvance(2);
|
|
567
|
-
i0.ɵɵproperty("
|
|
568
|
-
i0.ɵɵadvance(
|
|
569
|
-
i0.ɵɵproperty("p-items", ctx.visibleOptions)("p-field-value", ctx.dynamicValue)("p-field-label", ctx.dynamicLabel)("p-template", ctx.comboOptionTemplate)("p-search-value", ctx.getInputValue())("p-infinite-loading", ctx.infiniteLoading)("p-infinite-scroll", ctx.infiniteScroll)("p-filtering", ctx.isFiltering)("p-cache", ctx.cache)("p-filter-mode", ctx.filterMode)("p-visible", ctx.comboOpen)("p-is-searching", ctx.isServerSearching)("p-should-mark-letter", ctx.shouldMarkLetters)("p-compare-cache", ctx.compareObjects(ctx.cacheOptions, ctx.visibleOptions))("p-combo-service", ctx.service)("p-infinite-scroll-distance", ctx.infiniteScrollDistance);
|
|
570
|
-
i0.ɵɵadvance(3);
|
|
578
|
+
i0.ɵɵproperty("cdkConnectedOverlayOrigin", _r0)("cdkConnectedOverlayOpen", true);
|
|
579
|
+
i0.ɵɵadvance(1);
|
|
571
580
|
i0.ɵɵproperty("p-help", ctx.help)("p-disabled", ctx.disabled);
|
|
572
|
-
} }, dependencies: [i4.NgClass, i4.NgIf, i5.
|
|
581
|
+
} }, dependencies: [i4.NgClass, i4.NgIf, i5.CdkConnectedOverlay, i5.CdkOverlayOrigin, i6.PoCleanComponent, i7.PoFieldContainerBottomComponent, i8.PoFieldContainerComponent, i9.PoIconComponent, i10.PoListBoxComponent], encapsulation: 2, changeDetection: 0 });
|
|
573
582
|
}
|
|
574
583
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PoComboComponent, [{
|
|
575
584
|
type: Component,
|
|
@@ -586,7 +595,7 @@ export class PoComboComponent extends PoComboBaseComponent {
|
|
|
586
595
|
useExisting: forwardRef(() => PoComboComponent),
|
|
587
596
|
multi: true
|
|
588
597
|
}
|
|
589
|
-
], template: "<po-field-container\
|
|
598
|
+
], template: "<po-field-container\n [p-disabled]=\"disabled\"\n [p-id]=\"id\"\n [p-label]=\"label\"\n [p-optional]=\"optional\"\n [p-required]=\"required\"\n [p-show-required]=\"showRequired\"\n>\n <div cdkOverlayOrigin #trigger=\"cdkOverlayOrigin\" class=\"po-field-container-content\">\n <div *ngIf=\"icon\" class=\"po-field-icon-container-left\">\n <po-icon class=\"po-field-icon po-icon-input\" [class.po-field-icon-disabled]=\"disabled\" [p-icon]=\"icon\"></po-icon>\n </div>\n\n <input\n #inp\n class=\"po-input po-combo-input\"\n [ngClass]=\"clean && inp.value ? 'po-input-double-icon-right' : 'po-input-icon-right'\"\n [class.po-input-icon-left]=\"icon\"\n autocomplete=\"off\"\n type=\"text\"\n [attr.name]=\"name\"\n [disabled]=\"disabled\"\n [id]=\"id\"\n [placeholder]=\"disabled ? '' : placeholder\"\n [required]=\"required\"\n (click)=\"toggleComboVisibility()\"\n (keyup)=\"onKeyUp($event)\"\n (blur)=\"onBlur()\"\n (keyup.enter)=\"searchOnEnter($event.target.value)\"\n (keydown)=\"onKeyDown($event)\"\n />\n\n <div class=\"po-field-icon-container-right\">\n <po-clean\n class=\"po-icon-input\"\n *ngIf=\"clean && !disabled\"\n (p-change-event)=\"clear($event)\"\n [p-element-ref]=\"inputEl\"\n >\n </po-clean>\n <span\n #iconArrow\n class=\"po-icon po-field-icon {{ comboIcon }} po-icon-input\"\n [class.po-field-icon-disabled]=\"disabled\"\n [class.po-field-icon]=\"!disabled\"\n (click)=\"toggleComboVisibility()\"\n >\n </span>\n </div>\n </div>\n\n <ng-template cdkConnectedOverlay [cdkConnectedOverlayOrigin]=\"trigger\" [cdkConnectedOverlayOpen]=\"true\">\n <div #containerElement class=\"po-combo-container\" [hidden]=\"!comboOpen && !isServerSearching\">\n <po-listbox\n #poListbox\n #contentElement\n p-type=\"option\"\n [p-items]=\"visibleOptions\"\n [p-field-value]=\"dynamicValue\"\n [p-field-label]=\"dynamicLabel\"\n [p-template]=\"comboOptionTemplate\"\n [p-search-value]=\"getInputValue()\"\n [p-infinite-loading]=\"infiniteLoading\"\n [p-infinite-scroll]=\"infiniteScroll\"\n [p-filtering]=\"isFiltering\"\n [p-cache]=\"cache\"\n (p-selectcombo-item)=\"onOptionClick($event, $event.event)\"\n [p-filter-mode]=\"filterMode\"\n [p-visible]=\"comboOpen\"\n [p-is-searching]=\"isServerSearching\"\n [p-should-mark-letter]=\"shouldMarkLetters\"\n [p-compare-cache]=\"compareObjects(cacheOptions, visibleOptions)\"\n [p-combo-service]=\"service\"\n [p-infinite-scroll-distance]=\"infiniteScrollDistance\"\n (p-update-infinite-scroll)=\"showMoreInfiniteScroll()\"\n (p-close)=\"onCloseCombo()\"\n ></po-listbox>\n </div>\n </ng-template>\n <po-field-container-bottom [p-help]=\"help\" [p-disabled]=\"disabled\"></po-field-container-bottom>\n</po-field-container>\n" }]
|
|
590
599
|
}], function () { return [{ type: i0.ElementRef }, { type: i0.IterableDiffers }, { type: i1.PoComboFilterService }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }, { type: i2.PoControlPositionService }, { type: i3.PoLanguageService }]; }, { comboOptionTemplate: [{
|
|
591
600
|
type: ContentChild,
|
|
592
601
|
args: [PoComboOptionTemplateDirective, { static: true }]
|
|
@@ -606,4 +615,4 @@ export class PoComboComponent extends PoComboBaseComponent {
|
|
|
606
615
|
type: ViewChild,
|
|
607
616
|
args: ['poListbox']
|
|
608
617
|
}] }); })();
|
|
609
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tY29tYm8uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3JjL2xpYi9jb21wb25lbnRzL3BvLWZpZWxkL3BvLWNvbWJvL3BvLWNvbWJvLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1maWVsZC9wby1jb21iby9wby1jb21iby5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsdUJBQXVCLEVBRXZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osVUFBVSxFQUNWLFVBQVUsRUFNVixTQUFTLEVBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWxFLE9BQU8sRUFBRSxTQUFTLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQy9DLE9BQU8sRUFBRSxZQUFZLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV0RixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxtRUFBbUUsQ0FBQztBQUM3RyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFHbEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFHakUsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sK0RBQStELENBQUM7QUFDL0csT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7OztJQ3BCdkMsK0JBQXVEO0lBQ3JELDhCQUFpSDtJQUNuSCxpQkFBTTs7O0lBRHlDLGVBQXlDO0lBQXpD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Z0NBQUEsMERBQUE7WUFxQkgsZUFBZTtZQUFmLGlDQUFlLDRCQUFBOzs7dUZENEIvQixnQkFBZ0I7Y0FuQjVCLFNBQVM7MkJBQ0UsVUFBVSxtQkFFSCx1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDO29CQUNULG9CQUFvQjtvQkFDcEIsd0JBQXdCO29CQUN4Qjt3QkFDRSxPQUFPLEVBQUUsaUJBQWlCO3dCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxpQkFBaUIsQ0FBQzt3QkFDL0MsS0FBSyxFQUFFLElBQUk7cUJBQ1o7b0JBQ0Q7d0JBQ0UsT0FBTyxFQUFFLGFBQWE7d0JBQ3RCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLGlCQUFpQixDQUFDO3dCQUMvQyxLQUFLLEVBQUUsSUFBSTtxQkFDWjtpQkFDRjs2UEFHK0QsbUJBQW1CO2tCQUFsRixZQUFZO21CQUFDLDhCQUE4QixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtZQUVULGdCQUFnQjtrQkFBcEUsU0FBUzttQkFBQyxrQkFBa0IsRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUU7WUFDQSxjQUFjO2tCQUFoRSxTQUFTO21CQUFDLGdCQUFnQixFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRTtZQUNXLFdBQVc7a0JBQXRFLFNBQVM7bUJBQUMsV0FBVyxFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO1lBQ0osT0FBTztrQkFBNUQsU0FBUzttQkFBQyxLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7WUFDNUIsU0FBUztrQkFBaEMsU0FBUzttQkFBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBBZnRlclZpZXdJbml0LFxyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIENvbXBvbmVudCxcclxuICBDb250ZW50Q2hpbGQsXHJcbiAgRWxlbWVudFJlZixcclxuICBmb3J3YXJkUmVmLFxyXG4gIEl0ZXJhYmxlRGlmZmVycyxcclxuICBPbkNoYW5nZXMsXHJcbiAgT25EZXN0cm95LFxyXG4gIFJlbmRlcmVyMixcclxuICBTaW1wbGVDaGFuZ2VzLFxyXG4gIFZpZXdDaGlsZFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOR19WQUxJREFUT1JTLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbmltcG9ydCB7IGZyb21FdmVudCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZGlzdGluY3RVbnRpbENoYW5nZWQsIGZpbHRlciwgbWFwLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcblxyXG5pbXBvcnQgeyBQb0NvbnRyb2xQb3NpdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9wby1jb250cm9sLXBvc2l0aW9uL3BvLWNvbnRyb2wtcG9zaXRpb24uc2VydmljZSc7XHJcbmltcG9ydCB7IFBvS2V5Q29kZUVudW0gfSBmcm9tICcuLy4uLy4uLy4uL2VudW1zL3BvLWtleS1jb2RlLmVudW0nO1xyXG5pbXBvcnQgeyBQb0xhbmd1YWdlU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3BvLWxhbmd1YWdlL3BvLWxhbmd1YWdlLnNlcnZpY2UnO1xyXG5cclxuaW1wb3J0IHsgUG9Db21ib0Jhc2VDb21wb25lbnQgfSBmcm9tICcuL3BvLWNvbWJvLWJhc2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUG9Db21ib0ZpbHRlclNlcnZpY2UgfSBmcm9tICcuL3BvLWNvbWJvLWZpbHRlci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgUG9Db21ib0dyb3VwIH0gZnJvbSAnLi9pbnRlcmZhY2VzL3BvLWNvbWJvLWdyb3VwLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IFBvQ29tYm9PcHRpb24gfSBmcm9tICcuL2ludGVyZmFjZXMvcG8tY29tYm8tb3B0aW9uLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IFBvQ29tYm9PcHRpb25UZW1wbGF0ZURpcmVjdGl2ZSB9IGZyb20gJy4vcG8tY29tYm8tb3B0aW9uLXRlbXBsYXRlL3BvLWNvbWJvLW9wdGlvbi10ZW1wbGF0ZS5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyB1dWlkIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvdXRpbCc7XHJcbmltcG9ydCB7IFBvTGlzdEJveENvbXBvbmVudCB9IGZyb20gJy4vLi4vLi4vcG8tbGlzdGJveC9wby1saXN0Ym94LmNvbXBvbmVudCc7XHJcblxyXG5jb25zdCBwb0NvbWJvQ29udGFpbmVyT2Zmc2V0ID0gODtcclxuY29uc3QgcG9Db21ib0NvbnRhaW5lclBvc2l0aW9uRGVmYXVsdCA9ICdib3R0b20nO1xyXG5cclxuLyoqXHJcbiAqIEBkb2NzRXh0ZW5kcyBQb0NvbWJvQmFzZUNvbXBvbmVudFxyXG4gKlxyXG4gKiBAZGVzY3JpcHRpb25cclxuICogVXRpbGl6YW5kbyBwby1jb21ibyBjb20gc2VydmnDp28sIMOpIHBvc3NpdmVsIGRpZ2l0YXIgdW0gdmFsb3Igbm8gY2FtcG8gZGUgZW50cmFkYSBlIHByZXNzaW9uYXIgYSB0ZWNsYSAndGFiJyBwYXJhIHF1ZSBvIGNvbXBvbmVudGVcclxuICogZmHDp2EgdW1hIHJlcXVpc2nDp8OjbyDDoCBVUkwgaW5mb3JtYWRhIHBhc3NhbmRvIG8gdmFsb3IgZGlnaXRhZG8gbm8gY2FtcG8uIFNlIGVuY29udHJhZG8gbyB2YWxvciwgZW50w6NvIG8gbWVzbW8gc2Vyw6Egc2VsZWNpb25hZG8sIGNhc29cclxuICogbsOjbyBzZWphIGVuY29udHJhZG8sIGVudMOjbyBhIGxpc3RhIGRlIGl0ZW5zIHZvbHRhcsOhIHBhcmEgbyBlc3RhZG8gaW5pY2lhbC5cclxuICpcclxuICogQGV4YW1wbGVcclxuICpcclxuICogPGV4YW1wbGUgbmFtZT1cInBvLWNvbWJvLWJhc2ljXCIgdGl0bGU9XCJQTyBDb21ibyBCYXNpY1wiPlxyXG4gKiAgIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tY29tYm8tYmFzaWMvc2FtcGxlLXBvLWNvbWJvLWJhc2ljLmNvbXBvbmVudC5odG1sXCI+IDwvZmlsZT5cclxuICogICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWNvbWJvLWJhc2ljL3NhbXBsZS1wby1jb21iby1iYXNpYy5jb21wb25lbnQudHNcIj4gPC9maWxlPlxyXG4gKiA8L2V4YW1wbGU+XHJcbiAqXHJcbiAqIDxleGFtcGxlIG5hbWU9XCJwby1jb21iby1sYWJzXCIgdGl0bGU9XCJQTyBDb21ibyBMYWJzXCI+XHJcbiAqICAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1jb21iby1sYWJzL3NhbXBsZS1wby1jb21iby1sYWJzLmNvbXBvbmVudC5odG1sXCI+IDwvZmlsZT5cclxuICogICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWNvbWJvLWxhYnMvc2FtcGxlLXBvLWNvbWJvLWxhYnMuY29tcG9uZW50LnRzXCI+IDwvZmlsZT5cclxuICogPC9leGFtcGxlPlxyXG4gKlxyXG4gKiA8ZXhhbXBsZSBuYW1lPVwicG8tY29tYm8tc2NoZWR1bGluZ1wiIHRpdGxlPVwiUE8gQ29tYm8gLSBTY2hlZHVsaW5nXCI+XHJcbiAqICAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1jb21iby1zY2hlZHVsaW5nL3NhbXBsZS1wby1jb21iby1zY2hlZHVsaW5nLmNvbXBvbmVudC5odG1sXCI+IDwvZmlsZT5cclxuICogICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWNvbWJvLXNjaGVkdWxpbmcvc2FtcGxlLXBvLWNvbWJvLXNjaGVkdWxpbmcuY29tcG9uZW50LnRzXCI+IDwvZmlsZT5cclxuICogICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWNvbWJvLXNjaGVkdWxpbmcvc2FtcGxlLXBvLWNvbWJvLXNjaGVkdWxpbmcuc2VydmljZS50c1wiPiA8L2ZpbGU+XHJcbiAqIDwvZXhhbXBsZT5cclxuICpcclxuICogPGV4YW1wbGUgbmFtZT1cInBvLWNvbWJvLXRyYW5zZmVyXCIgdGl0bGU9XCJQTyBDb21ibyAtIEJhbmtpbmcgVHJhbnNmZXJcIj5cclxuICogICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWNvbWJvLXRyYW5zZmVyL3NhbXBsZS1wby1jb21iby10cmFuc2Zlci5jb21wb25lbnQuaHRtbFwiPiA8L2ZpbGU+XHJcbiAqICAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1jb21iby10cmFuc2Zlci9zYW1wbGUtcG8tY29tYm8tdHJhbnNmZXIuY29tcG9uZW50LnRzXCI+IDwvZmlsZT5cclxuICogPC9leGFtcGxlPlxyXG4gKlxyXG4gKiA8ZXhhbXBsZSBuYW1lPVwicG8tY29tYm8taGVyb2VzXCIgdGl0bGU9XCJQTyBDb21ibyAtIEhlcm9lc1wiPlxyXG4gKiAgIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tY29tYm8taGVyb2VzL3NhbXBsZS1wby1jb21iby1oZXJvZXMuY29tcG9uZW50Lmh0bWxcIj4gPC9maWxlPlxyXG4gKiAgIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tY29tYm8taGVyb2VzL3NhbXBsZS1wby1jb21iby1oZXJvZXMuY29tcG9uZW50LnRzXCI+IDwvZmlsZT5cclxuICogPC9leGFtcGxlPlxyXG4gKlxyXG4gKiA8ZXhhbXBsZSBuYW1lPVwicG8tY29tYm8taGVyb2VzLXJlYWN0aXZlLWZvcm1cIiB0aXRsZT1cIlBPIENvbWJvIC0gSGVyb2VzIFJlYWN0aXZlIEZvcm1cIj5cclxuICogICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWNvbWJvLWhlcm9lcy1yZWFjdGl2ZS1mb3JtL3NhbXBsZS1wby1jb21iby1oZXJvZXMtcmVhY3RpdmUtZm9ybS5jb21wb25lbnQuaHRtbFwiPiA8L2ZpbGU+XHJcbiAqICAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1jb21iby1oZXJvZXMtcmVhY3RpdmUtZm9ybS9zYW1wbGUtcG8tY29tYm8taGVyb2VzLXJlYWN0aXZlLWZvcm0uY29tcG9uZW50LnRzXCI+IDwvZmlsZT5cclxuICogPC9leGFtcGxlPlxyXG4gKlxyXG4gKiA8ZXhhbXBsZSBuYW1lPVwicG8tY29tYm8taW5maW5pdHktc2Nyb2xsXCIgdGl0bGU9XCJQTyBDb21ibyAtIEluaWZpdHkgU2Nyb2xsXCI+XHJcbiAqICAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1jb21iby1pbmZpbml0eS1zY3JvbGwvc2FtcGxlLXBvLWNvbWJvLWluZmluaXR5LXNjcm9sbC5jb21wb25lbnQuaHRtbFwiPiA8L2ZpbGU+XHJcbiAqICAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1jb21iby1pbmZpbml0eS1zY3JvbGwvc2FtcGxlLXBvLWNvbWJvLWluZmluaXR5LXNjcm9sbC5jb21wb25lbnQudHNcIj4gPC9maWxlPlxyXG4gKiA8L2V4YW1wbGU+XHJcbiAqXHJcbiAqIDxleGFtcGxlIG5hbWU9XCJwby1jb21iby1ob3RlbHNcIiB0aXRsZT1cIlBPIENvbWJvIC0gQm9va2luZyBIb3RlbFwiPlxyXG4gKiAgIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tY29tYm8taG90ZWxzL3NhbXBsZS1wby1jb21iby1ob3RlbHMuY29tcG9uZW50Lmh0bWxcIj4gPC9maWxlPlxyXG4gKiAgIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tY29tYm8taG90ZWxzL3NhbXBsZS1wby1jb21iby1ob3RlbHMuY29tcG9uZW50LnRzXCI+IDwvZmlsZT5cclxuICogPC9leGFtcGxlPlxyXG4gKi9cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdwby1jb21ibycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3BvLWNvbWJvLmNvbXBvbmVudC5odG1sJyxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIFBvQ29tYm9GaWx0ZXJTZXJ2aWNlLFxyXG4gICAgUG9Db250cm9sUG9zaXRpb25TZXJ2aWNlLFxyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gUG9Db21ib0NvbXBvbmVudCksXHJcbiAgICAgIG11bHRpOiB0cnVlXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxyXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBQb0NvbWJvQ29tcG9uZW50KSxcclxuICAgICAgbXVsdGk6IHRydWVcclxuICAgIH1cclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQb0NvbWJvQ29tcG9uZW50IGV4dGVuZHMgUG9Db21ib0Jhc2VDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XHJcbiAgQENvbnRlbnRDaGlsZChQb0NvbWJvT3B0aW9uVGVtcGxhdGVEaXJlY3RpdmUsIHsgc3RhdGljOiB0cnVlIH0pIGNvbWJvT3B0aW9uVGVtcGxhdGU6IFBvQ29tYm9PcHRpb25UZW1wbGF0ZURpcmVjdGl2ZTtcclxuXHJcbiAgQFZpZXdDaGlsZCgnY29udGFpbmVyRWxlbWVudCcsIHsgcmVhZDogRWxlbWVudFJlZiB9KSBjb250YWluZXJFbGVtZW50OiBFbGVtZW50UmVmO1xyXG4gIEBWaWV3Q2hpbGQoJ2NvbnRlbnRFbGVtZW50JywgeyByZWFkOiBFbGVtZW50UmVmIH0pIGNvbnRlbnRFbGVtZW50OiBFbGVtZW50UmVmO1xyXG4gIEBWaWV3Q2hpbGQoJ2ljb25BcnJvdycsIHsgcmVhZDogRWxlbWVudFJlZiwgc3RhdGljOiB0cnVlIH0pIGljb25FbGVtZW50OiBFbGVtZW50UmVmO1xyXG4gIEBWaWV3Q2hpbGQoJ2lucCcsIHsgcmVhZDogRWxlbWVudFJlZiwgc3RhdGljOiB0cnVlIH0pIGlucHV0RWw6IEVsZW1lbnRSZWY7XHJcbiAgQFZpZXdDaGlsZCgncG9MaXN0Ym94JykgcG9MaXN0Ym94OiBQb0xpc3RCb3hDb21wb25lbnQ7XHJcblxyXG4gIGNvbWJvSWNvbjogc3RyaW5nID0gJ3BvLWljb24tYXJyb3ctZG93bic7XHJcbiAgY29tYm9PcGVuOiBib29sZWFuID0gZmFsc2U7XHJcbiAgZGlmZmVyOiBhbnk7XHJcbiAgaWQgPSBgcG8tY29tYm9bJHt1dWlkKCl9XWA7XHJcbiAgaXNQcm9jZXNzaW5nVmFsdWVCeVRhYjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHNjcm9sbFRvcCA9IDA7XHJcbiAgc2hvdWxkTWFya0xldHRlcnM6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIGluZmluaXRlTG9hZGluZzogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBwcml2YXRlIF9pc1NlcnZlclNlYXJjaGluZzogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBwcml2YXRlIGNsaWNrb3V0TGlzdGVuZXI6ICgpID0+IHZvaWQ7XHJcbiAgcHJpdmF0ZSBldmVudFJlc2l6ZUxpc3RlbmVyOiAoKSA9PiB2b2lkO1xyXG5cclxuICBwcml2YXRlIGZpbHRlclN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xyXG4gIHByaXZhdGUgZ2V0U3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XHJcblxyXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uU2Nyb2xsRXZlbnQ6IFN1YnNjcmlwdGlvbjtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgZWxlbWVudDogRWxlbWVudFJlZixcclxuICAgIHB1YmxpYyBkaWZmZXJzOiBJdGVyYWJsZURpZmZlcnMsXHJcbiAgICBwdWJsaWMgZGVmYXVsdFNlcnZpY2U6IFBvQ29tYm9GaWx0ZXJTZXJ2aWNlLFxyXG4gICAgcHVibGljIHJlbmRlcmVyOiBSZW5kZXJlcjIsXHJcbiAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIHByaXZhdGUgY29udHJvbFBvc2l0aW9uOiBQb0NvbnRyb2xQb3NpdGlvblNlcnZpY2UsXHJcbiAgICBsYW5ndWFnZVNlcnZpY2U6IFBvTGFuZ3VhZ2VTZXJ2aWNlXHJcbiAgKSB7XHJcbiAgICBzdXBlcihsYW5ndWFnZVNlcnZpY2UpO1xyXG5cclxuICAgIHRoaXMuZGlmZmVyID0gZGlmZmVycy5maW5kKFtdKS5jcmVhdGUobnVsbCk7XHJcbiAgfVxyXG5cclxuICBzZXQgaXNTZXJ2ZXJTZWFyY2hpbmcodmFsdWU6IGJvb2xlYW4pIHtcclxuICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICB0aGlzLl9pc1NlcnZlclNlYXJjaGluZyA9IHZhbHVlO1xyXG5cclxuICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XHJcblxyXG4gICAgICB0aGlzLnNldENvbnRhaW5lclBvc2l0aW9uKCk7XHJcbiAgICAgIHRoaXMuaW5pdGlhbGl6ZUxpc3RlbmVycygpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5faXNTZXJ2ZXJTZWFyY2hpbmcgPSB2YWx1ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldCBpc1NlcnZlclNlYXJjaGluZygpIHtcclxuICAgIHJldHVybiB0aGlzLl9pc1NlcnZlclNlYXJjaGluZztcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIGlmICh0aGlzLmF1dG9Gb2N1cykge1xyXG4gICAgICB0aGlzLmZvY3VzKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XHJcbiAgICBpZiAoY2hhbmdlcy5kZWJvdW5jZVRpbWUpIHtcclxuICAgICAgdGhpcy51bnN1YnNjcmliZUtleXVwT2JzZXJ2YWJsZSgpO1xyXG4gICAgICB0aGlzLmluaXRJbnB1dE9ic2VydmFibGUoKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoY2hhbmdlcy5maWx0ZXJTZXJ2aWNlKSB7XHJcbiAgICAgIHRoaXMuY29uZmlnQWZ0ZXJTZXRGaWx0ZXJTZXJ2aWNlKHRoaXMuZmlsdGVyU2VydmljZSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIHRoaXMucmVtb3ZlTGlzdGVuZXJzKCk7XHJcblxyXG4gICAgaWYgKHRoaXMuZmlsdGVyU3Vic2NyaXB0aW9uKSB7XHJcbiAgICAgIHRoaXMuZmlsdGVyU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMuZ2V0U3Vic2NyaXB0aW9uKSB7XHJcbiAgICAgIHRoaXMuZ2V0U3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMuaW5maW5pdGVTY3JvbGwpIHtcclxuICAgICAgdGhpcy5zdWJzY3JpcHRpb25TY3JvbGxFdmVudD8udW5zdWJzY3JpYmUoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEZ1bsOnw6NvIHF1ZSBhdHJpYnVpIGZvY28gYW8gY29tcG9uZW50ZS5cclxuICAgKlxyXG4gICAqIFBhcmEgdXRpbGl6w6EtbGEgw6kgbmVjZXNzw6FyaW8gdGVyIGEgaW5zdMOibmNpYSBkbyBjb21wb25lbnRlIG5vIERPTSwgcG9kZW5kbyBzZXIgdXRpbGl6YWRvIG8gVmlld0NoaWxkIGRhIHNlZ3VpbnRlIGZvcm1hOlxyXG4gICAqXHJcbiAgICogYGBgXHJcbiAgICogaW1wb3J0IHsgUG9Db21ib0NvbXBvbmVudCB9IGZyb20gJ0Bwby11aS9uZy1jb21wb25lbnRzJztcclxuICAgKlxyXG4gICAqIC4uLlxyXG4gICAqXHJcbiAgICogQFZpZXdDaGlsZChQb0NvbWJvQ29tcG9uZW50LCB7IHN0YXRpYzogdHJ1ZSB9KSBjb21ibzogUG9Db21ib0NvbXBvbmVudDtcclxuICAgKlxyXG4gICAqIGZvY3VzQ29tYm8oKSB7XHJcbiAgICogICB0aGlzLmNvbWJvLmZvY3VzKCk7XHJcbiAgICogfVxyXG4gICAqIGBgYFxyXG4gICAqL1xyXG4gIGZvY3VzKCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XHJcbiAgICAgIHRoaXMuaW5wdXRFbC5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbkJsdXIoKSB7XHJcbiAgICB0aGlzLm9uTW9kZWxUb3VjaGVkPy4oKTtcclxuICB9XHJcblxyXG4gIG9uS2V5RG93bihldmVudD86IGFueSkge1xyXG4gICAgY29uc3Qga2V5ID0gZXZlbnQua2V5Q29kZTtcclxuICAgIGNvbnN0IGlucHV0VmFsdWUgPSBldmVudC50YXJnZXQudmFsdWU7XHJcblxyXG4gICAgLy8gYnVzY2EgdW0gcmVnaXN0cm8gcXVhbmRvIGFjaW9uYXIgbyB0YWJcclxuICAgIGlmICh0aGlzLnNlcnZpY2UgJiYga2V5ID09PSBQb0tleUNvZGVFbnVtLnRhYiAmJiBpbnB1dFZhbHVlICYmICF0aGlzLmRpc2FibGVkVGFiRmlsdGVyKSB7XHJcbiAgICAgIHRoaXMuY29udHJvbENvbWJvVmlzaWJpbGl0eShmYWxzZSk7XHJcbiAgICAgIHJldHVybiB0aGlzLmdldE9iamVjdEJ5VmFsdWUoaW5wdXRWYWx1ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGtleSA9PT0gUG9LZXlDb2RlRW51bS5hcnJvd0Rvd24pIHtcclxuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgICAgaWYgKCF0aGlzLnNlcnZpY2UpIHtcclxuICAgICAgICB0aGlzLnBvTGlzdGJveD8uc2V0Rm9jdXMoKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdGhpcy5jb250cm9sQ29tYm9WaXNpYmlsaXR5KHRydWUpO1xyXG4gICAgICB0aGlzLmlzRmlsdGVyaW5nID0gdGhpcy5jaGFuZ2VPbkVudGVyID8gdGhpcy5pc0ZpbHRlcmluZyA6IGZhbHNlO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgLy8gVGVjbGEgXCJlbnRlclwiXHJcbiAgICBpZiAoa2V5ID09PSBQb0tleUNvZGVFbnVtLmVudGVyICYmIHRoaXMuc2VsZWN0ZWRWaWV3ICYmIHRoaXMuY29tYm9PcGVuKSB7XHJcbiAgICAgIGNvbnN0IGlzVXBkYXRlTW9kZWwgPSB0aGlzLnNlbGVjdGVkVmlldy52YWx1ZSAhPT0gdGhpcy5zZWxlY3RlZFZhbHVlIHx8IGlucHV0VmFsdWUgIT09IHRoaXMuc2VsZWN0ZWRWaWV3LmxhYmVsO1xyXG5cclxuICAgICAgdGhpcy5jb250cm9sQ29tYm9WaXNpYmlsaXR5KGZhbHNlKTtcclxuXHJcbiAgICAgIHRoaXMudXBkYXRlU2VsZWN0ZWRWYWx1ZSh0aGlzLnNlbGVjdGVkVmlldywgaXNVcGRhdGVNb2RlbCk7XHJcbiAgICAgIHRoaXMuaXNGaWx0ZXJpbmcgPSBmYWxzZTtcclxuXHJcbiAgICAgIGlmICghdGhpcy5zZXJ2aWNlKSB7XHJcbiAgICAgICAgdGhpcy51cGRhdGVDb21ib0xpc3QoWy4uLnRoaXMuY2FjaGVTdGF0aWNPcHRpb25zXSk7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChrZXkgPT09IFBvS2V5Q29kZUVudW0uZW50ZXIpIHtcclxuICAgICAgdGhpcy5jb250cm9sQ29tYm9WaXNpYmlsaXR5KHRydWUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb25LZXlVcChldmVudD86IGFueSkge1xyXG4gICAgY29uc3Qga2V5ID0gZXZlbnQua2V5Q29kZSB8fCBldmVudC53aGljaDtcclxuICAgIGNvbnN0IGlucHV0VmFsdWUgPSBldmVudC50YXJnZXQudmFsdWU7XHJcblxyXG4gICAgY29uc3QgaXNWYWxpZEtleSA9IGtleSAhPT0gUG9LZXlDb2RlRW51bS5hcnJvd1VwICYmIGtleSAhPT0gUG9LZXlDb2RlRW51bS5hcnJvd0Rvd24gJiYga2V5ICE9PSBQb0tleUNvZGVFbnVtLmVudGVyO1xyXG5cclxuICAgIGlmIChpc1ZhbGlkS2V5KSB7XHJcbiAgICAgIGlmIChpbnB1dFZhbHVlKSB7XHJcbiAgICAgICAgaWYgKCF0aGlzLnNlcnZpY2UgJiYgdGhpcy5wcmV2aW91c1NlYXJjaFZhbHVlICE9PSBpbnB1dFZhbHVlKSB7XHJcbiAgICAgICAgICB0aGlzLnNob3VsZE1hcmtMZXR0ZXJzID0gdHJ1ZTtcclxuICAgICAgICAgIHRoaXMuaXNGaWx0ZXJpbmcgPSB0cnVlO1xyXG4gICAgICAgICAgdGhpcy5zZWFyY2hGb3JMYWJlbChpbnB1dFZhbHVlLCB0aGlzLmNvbWJvT3B0aW9uc0xpc3QsIHRoaXMuZmlsdGVyTW9kZSk7XHJcbiAgICAgICAgICB0aGlzLmlucHV0Q2hhbmdlLmVtaXQoaW5wdXRWYWx1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIC8vIHF1YW5kbyBhcGFnYXIgcmFwaWRvIG8gY2FtcG8gZSBjb250ZXIgc2VydmnDp28sIHZhbG9yLCBuw6NvIGRpc3BhcmF2YSBvIGtleXVwIG9ic2VydmFibGVcclxuICAgICAgICAvLyBuZWNlc3NhcmlvIGVzdGUgdHJhdGFtZW50byBwYXJhIHJldG9ybmFyIGEgbGlzdGEgJ2RlZmF1bHQnLlxyXG4gICAgICAgIGNvbnN0IHVzZURlZmF1bHRPcHRpb25zU2VydmljZSA9XHJcbiAgICAgICAgICB0aGlzLnNlcnZpY2UgJiYgdGhpcy5zZWxlY3RlZFZhbHVlICYmIHRoaXMuc2VsZWN0ZWRPcHRpb24ubGFiZWwgPT09IHRoaXMucHJldmlvdXNTZWFyY2hWYWx1ZTtcclxuXHJcbiAgICAgICAgdGhpcy51cGRhdGVTZWxlY3RlZFZhbHVlKG51bGwpO1xyXG5cclxuICAgICAgICBpZiAoIXRoaXMuc2VydmljZSkge1xyXG4gICAgICAgICAgdGhpcy51cGRhdGVDb21ib0xpc3QoKTtcclxuICAgICAgICB9IGVsc2UgaWYgKHVzZURlZmF1bHRPcHRpb25zU2VydmljZSkge1xyXG4gICAgICAgICAgdGhpcy51cGRhdGVDb21ib0xpc3QoWy4uLnRoaXMuY2FjaGVPcHRpb25zXSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLmlzRmlsdGVyaW5nID0gZmFsc2U7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC8vIGNhc28gbyB2YWxvciBwZXNxdWlzYWRvIGZvciBkaWZlcmVudGUgZG8gYW50ZXJpb3IgZGV2ZSBhYnJpciBvIGNvbWJvXHJcbiAgICAgIGlmICh0aGlzLnByZXZpb3VzU2VhcmNoVmFsdWUgIT09IGlucHV0VmFsdWUpIHtcclxuICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcclxuXHJcbiAgICAgICAgdGhpcy5jb250cm9sQ29tYm9WaXNpYmlsaXR5KHRydWUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5wcmV2aW91c1NlYXJjaFZhbHVlID0gaW5wdXRWYWx1ZTtcclxuICB9XHJcblxyXG4gIGluaXRJbnB1dE9ic2VydmFibGUoKSB7XHJcbiAgICBpZiAodGhpcy5zZXJ2aWNlKSB7XHJcbiAgICAgIGNvbnN0IGtleXVwT2JzZXJ2YWJsZSA9IGZyb21FdmVudCh0aGlzLmlucHV0RWwubmF0aXZlRWxlbWVudCwgJ2tleXVwJykucGlwZShcclxuICAgICAgICBmaWx0ZXIoKGU6IGFueSkgPT4gdGhpcy5pc1ZhbGlkQ2hhcmFjdGVyVG9TZWFyY2goZS5rZXlDb2RlKSksXHJcbiAgICAgICAgbWFwKChlOiBhbnkpID0+IGUuY3VycmVudFRhcmdldC52YWx1ZSksXHJcbiAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcclxuICAgICAgICB0YXAoKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5zaG91bGRNYXJrTGV0dGVycyA9IGZhbHNlO1xyXG4gICAgICAgIH0pLFxyXG4gICAgICAgIGRlYm91bmNlVGltZSh0aGlzLmRlYm91bmNlVGltZSlcclxuICAgICAgKTtcclxuXHJcbiAgICAgIHRoaXMua2V5dXBTdWJzY3JpYmUgPSBrZXl1cE9ic2VydmFibGUuc3Vic2NyaWJlKHZhbHVlID0+IHtcclxuICAgICAgICBpZiAodmFsdWUubGVuZ3RoID49IHRoaXMuZmlsdGVyTWlubGVuZ3RoIHx8ICF2YWx1ZSkge1xyXG4gICAgICAgICAgdGhpcy5jb250cm9sQXBwbHlGaWx0ZXIodmFsdWUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjb250cm9sQXBwbHlGaWx0ZXIodmFsdWUpIHtcclxuICAgIGlmIChcclxuICAgICAgKCF0aGlzLmlzUHJvY2Vzc2luZ1ZhbHVlQnlUYWIgJiYgKCF0aGlzLnNlbGVjdGVkT3B0aW9uIHx8IHZhbHVlICE9PSB0aGlzLnNlbGVjdGVkT3B0aW9uW3RoaXMuZHluYW1pY0xhYmVsXSkpIHx8XHJcbiAgICAgICF0aGlzLmNhY2hlXHJcbiAgICApIHtcclxuICAgICAgdGhpcy5kZWZhdWx0U2VydmljZS5oYXNOZXh0ID0gdHJ1ZTtcclxuICAgICAgdGhpcy5wYWdlID0gdGhpcy5zZXRQYWdlKCk7XHJcbiAgICAgIHRoaXMub3B0aW9ucyA9IFtdO1xyXG4gICAgICB0aGlzLmFwcGx5RmlsdGVyKHZhbHVlLCB0cnVlKTtcclxuICAgIH1cclxuICAgIHRoaXMuaXNQcm9jZXNzaW5nVmFsdWVCeVRhYiA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgYXBwbHlGaWx0ZXIodmFsdWU6IHN0cmluZywgcmVzZXQ6IGJvb2xlYW4gPSBmYWxzZSkge1xyXG4gICAgaWYgKHRoaXMuZGVmYXVsdFNlcnZpY2UuaGFzTmV4dCkge1xyXG4gICAgICB0aGlzLmNvbnRyb2xDb21ib1Zpc2liaWxpdHkoZmFsc2UsIHJlc2V0KTtcclxuICAgICAgdGhpcy5pc1NlcnZlclNlYXJjaGluZyA9IHRydWU7XHJcblxyXG4gICAgICBjb25zdCBwYXJhbSA9IHRoaXMuaW5maW5pdGVTY3JvbGxcclxuICAgICAgICA/IHsgcHJvcGVydHk6IHRoaXMuZmllbGRMYWJlbCwgdmFsdWUsIHBhZ2U6IHRoaXMucGFnZSwgcGFnZVNpemU6IHRoaXMucGFnZVNpemUgfVxyXG4gICAgICAgIDogeyBwcm9wZXJ0eTogdGhpcy5maWVsZExhYmVsLCB2YWx1ZSB9O1xyXG5cclxuICAgICAgdGhpcy5maWx0ZXJTdWJzY3JpcHRpb24gPSB0aGlzLnNlcnZpY2UuZ2V0RmlsdGVyZWREYXRhKHBhcmFtLCB0aGlzLmZpbHRlclBhcmFtcykuc3Vic2NyaWJlKFxyXG4gICAgICAgIGl0ZW1zID0+IHRoaXMuc2V0T3B0aW9uc0J5QXBwbHlGaWx0ZXIodmFsdWUsIGl0ZW1zLCByZXNldCksXHJcbiAgICAgICAgZXJyb3IgPT4gdGhpcy5vbkVycm9yRmlsdGVyZWREYXRhKClcclxuICAgICAgKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNldE9wdGlvbnNCeUFwcGx5RmlsdGVyKHZhbHVlLCBpdGVtcywgcmVzZXQ6IGJvb2xlYW4gPSBmYWxzZSkge1xyXG4gICAgdGhpcy5zaG91bGRNYXJrTGV0dGVycyA9IHRydWU7XHJcbiAgICB0aGlzLmlzU2VydmVyU2VhcmNoaW5nID0gZmFsc2U7XHJcbiAgICB0aGlzLmluZmluaXRlTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgdGhpcy5vcHRpb25zID0gdGhpcy5wcmVwYXJlT3B0aW9ucyhpdGVtcyk7XHJcblxyXG4gICAgdGhpcy5zZWFyY2hGb3JMYWJlbCh2YWx1ZSwgaXRlbXMsIHRoaXMuZmlsdGVyTW9kZSk7XHJcblxyXG4gICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XHJcblxyXG4gICAgdGhpcy5jb250cm9sQ29tYm9WaXNpYmlsaXR5KHRydWUsIHJlc2V0KTtcclxuXHJcbiAgICBpZiAodGhpcy5pc0ZpcnN0RmlsdGVyKSB7XHJcbiAgICAgIHRoaXMuaXNGaXJzdEZpbHRlciA9ICF0aGlzLmlzRmlyc3RGaWx0ZXI7XHJcblxyXG4gICAgICB0aGlzLmNhY2hlT3B0aW9ucyA9IHRoaXMuY29tYm9PcHRpb25zTGlzdDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldE9iamVjdEJ5VmFsdWUodmFsdWUpIHtcclxuICAgIGlmICh0aGlzLnNlbGVjdGVkVmFsdWUgIT09IHZhbHVlICYmIHRoaXMuc2VsZWN0ZWRPcHRpb24/Llt0aGlzLmR5bmFtaWNMYWJlbF0gIT09IHZhbHVlKSB7XHJcbiAgICAgIHRoaXMuaXNQcm9jZXNzaW5nVmFsdWVCeVRhYiA9IHRydWU7XHJcblxyXG4gICAgICB0aGlzLmdldFN1YnNjcmlwdGlvbiA9IHRoaXMuc2VydmljZS5nZXRPYmplY3RCeVZhbHVlKHZhbHVlLCB0aGlzLmZpbHRlclBhcmFtcykuc3Vic2NyaWJlKFxyXG4gICAgICAgIGl0ZW0gPT4gdGhpcy51cGRhdGVPcHRpb25CeUZpbHRlcmVkVmFsdWUoaXRlbSksXHJcbiAgICAgICAgZXJyb3IgPT4gdGhpcy5vbkVycm9yR2V0T2JqZWN0QnlWYWx1ZSgpXHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICB1cGRhdGVPcHRpb25CeUZpbHRlcmVkVmFsdWUoaXRlbSkge1xyXG4gICAgaWYgKGl0ZW0pIHtcclxuICAgICAgdGhpcy5vcHRpb25zID0gW2l0ZW1dO1xyXG4gICAgICB0aGlzLm9uT3B0aW9uQ2xpY2soaXRlbSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnVwZGF0ZVNlbGVjdGVkVmFsdWUobnVsbCk7XHJcbiAgICB9XHJcblxyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIHRoaXMuaXNQcm9jZXNzaW5nVmFsdWVCeVRhYiA9IGZhbHNlO1xyXG4gICAgfSwgdGhpcy5kZWJvdW5jZVRpbWUpO1xyXG4gIH1cclxuXHJcbiAgdG9nZ2xlQ29tYm9WaXNpYmlsaXR5KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLnNlcnZpY2UgJiYgIXRoaXMuZGlzYWJsZWRJbml0RmlsdGVyKSB7XHJcbiAgICAgIHRoaXMuYXBwbHlGaWx0ZXJJbkZpcnN0Q2xpY2soKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmNvbnRyb2xDb21ib1Zpc2liaWxpdHkoIXRoaXMuY29tYm9PcGVuKTtcclxuICB9XHJcblxyXG4gIGFwcGx5RmlsdGVySW5GaXJzdENsaWNrKCkge1xyXG4gICAgaWYgKHRoaXMuaXNGaXJzdEZpbHRlciAmJiAhdGhpcy5zZWxlY3RlZFZhbHVlKSB7XHJcbiAgICAgIHRoaXMub3B0aW9ucyA9IFtdO1xyXG4gICAgICBjb25zdCBzY3JvbGxpbmdDb250cm9sID0gdGhpcy5zZXRTY3JvbGxpbmdDb250cm9sKCk7XHJcbiAgICAgIHRoaXMuYXBwbHlGaWx0ZXIoJycsIHNjcm9sbGluZ0NvbnRyb2wpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY29udHJvbENvbWJvVmlzaWJpbGl0eSh0b09wZW46IGJvb2xlYW4sIHJlc2V0OiBib29sZWFuID0gZmFsc2UpIHtcclxuICAgIHRvT3BlbiA/IHRoaXMub3BlbihyZXNldCkgOiB0aGlzLmNsb3NlKHJlc2V0KTtcclxuICB9XHJcblxyXG4gIG9uQ2xvc2VDb21ibygpIHtcclxuICAgIHRoaXMuY29udHJvbENvbWJvVmlzaWJpbGl0eShmYWxzZSk7XHJcbiAgICB0aGlzLmlucHV0RWwubmF0aXZlRWxlbWVudC5mb2N1cygpO1xyXG4gIH1cclxuXHJcbiAgb25PcHRpb25DbGljayhvcHRpb246IFBvQ29tYm9PcHRpb24gfCBQb0NvbWJvR3JvdXAsIGV2ZW50PzogYW55KSB7XHJcbiAgICBjb25zdCBpbnB1dFZhbHVlID0gdGhpcy5nZXRJbnB1dFZhbHVlKCk7XHJcbiAgICBjb25zdCBpc1VwZGF0ZU1vZGVsID1cclxuICAgICAgb3B0aW9uW3RoaXMuZHluYW1pY1ZhbHVlXSAhPT0gdGhpcy5zZWxlY3RlZFZhbHVlIHx8XHJcbiAgICAgICEhKHRoaXMuc2VsZWN0ZWRWaWV3ICYmIGlucHV0VmFsdWUgIT09IHRoaXMuc2VsZWN0ZWRWaWV3W3RoaXMuZHluYW1pY0xhYmVsXSk7XHJcblxyXG4gICAgaWYgKGV2ZW50KSB7XHJcbiAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMudXBkYXRlU2VsZWN0ZWRWYWx1ZShvcHRpb24sIGlzVXBkYXRlTW9kZWwpO1xyXG4gICAgdGhpcy5jb250cm9sQ29tYm9WaXNpYmlsaXR5KGZhbHNlKTtcclxuICAgIGlmICghdGhpcy5zZXJ2aWNlKSB7XHJcbiAgICAgIHRoaXMudXBkYXRlQ29tYm9MaXN0KFsuLi50aGlzLmNhY2hlU3RhdGljT3B0aW9uc10pO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMucHJldmlvdXNTZWFyY2hWYWx1ZSA9IHRoaXMuc2VsZWN0ZWRWaWV3W3RoaXMuZHluYW1pY0xhYmVsXTtcclxuICB9XHJcblxyXG4gIGNhbGN1bGF0ZVNjcm9sbFRvcChzZWxlY3RlZEl0ZW0sIGluZGV4KSB7XHJcbiAgICBpZiAoIXNlbGVjdGVkSXRlbS5sZW5ndGggfHwgaW5kZXggPD0gMSkge1xyXG4gICAgICByZXR1cm4gMDtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiBzZWxlY3RlZEl0ZW1bMF0ub2Zmc2V0VG9wO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0SW5wdXRWYWx1ZSgpIHtcclxuICAgIHJldHVybiB0aGlzLmlucHV0RWwubmF0aXZlRWxlbWVudC52YWx1ZTtcclxuICB9XHJcblxyXG4gIHNldElucHV0VmFsdWUodmFsdWU6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgdGhpcy5pbnB1dEVsLm5hdGl2ZUVsZW1lbnQudmFsdWUgPSB2YWx1ZTtcclxuICB9XHJcblxyXG4gIHdhc0NsaWNrZWRPblRvZ2dsZShldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xyXG4gICAgaWYgKFxyXG4gICAgICB0aGlzLmNvbWJvT3BlbiAmJlxyXG4gICAgICAhdGhpcy5pbnB1dEVsLm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoZXZlbnQudGFyZ2V0KSAmJlxyXG4gICAgICAhdGhpcy5pY29uRWxlbWVudC5uYXRpdmVFbGVtZW50LmNvbnRhaW5zKGV2ZW50LnRhcmdldCkgJiZcclxuICAgICAgKCF0aGlzLmNvbnRlbnRFbGVtZW50IHx8ICF0aGlzLmNvbnRlbnRFbGVtZW50Lm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoZXZlbnQudGFyZ2V0KSlcclxuICAgICkge1xyXG4gICAgICAvLyBFc2NvbmRlIENvbnRlbnQgZG8gQ29tYm8gcXVhbmRvIGZvciBjbGljYWRvIGZvcmFcclxuICAgICAgdGhpcy5jb250cm9sQ29tYm9WaXNpYmlsaXR5KGZhbHNlKTtcclxuXHJcbiAgICAgIHRoaXMudmVyaWZ5VmFsaWRPcHRpb24oKTtcclxuXHJcbiAgICAgIC8vIGNhc28gZm9yIGNoYW5nZU9uRW50ZXIgZGV2ZSBsaW1wYXIgbyBzZWxlY3RlZFZpZXcgcGFyYSByZWluaWNpYS1sb1xyXG4gICAgICB0aGlzLnNlbGVjdGVkVmlldyA9IHRoaXMuY2hhbmdlT25FbnRlciAmJiAhdGhpcy5zZWxlY3RlZFZhbHVlID8gdW5kZWZpbmVkIDogdGhpcy5zZWxlY3RlZFZpZXc7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpZiAodGhpcy5zZXJ2aWNlICYmICF0aGlzLmdldElucHV0VmFsdWUoKSAmJiAhdGhpcy5pc0ZpcnN0RmlsdGVyKSB7XHJcbiAgICAgICAgY29uc3Qgc2Nyb2xsaW5nQ29udHJvbCA9IHRoaXMuc2V0U2Nyb2xsaW5nQ29udHJvbCgpO1xyXG4gICAgICAgIHRoaXMuYXBwbHlGaWx0ZXIoJycsIHNjcm9sbGluZ0NvbnRyb2wpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBpc1ZhbGlkQ2hhcmFjdGVyVG9TZWFyY2goa2V5Q29kZSkge1xyXG4gICAgcmV0dXJuIChcclxuICAgICAga2V5Q29kZSAhPT0gOSAmJiAvLyB0YWJcclxuICAgICAga2V5Q29kZSAhPT0gMTMgJiYgLy8gZW50ZXRcclxuICAgICAga2V5Q29kZSAhPT0gMTYgJiYgLy8gc2hpZnRcclxuICAgICAga2V5Q29kZSAhPT0gMTcgJiYgLy8gY3RybFxyXG4gICAgICBrZXlDb2RlICE9PSAxOCAmJiAvLyBhbHRcclxuICAgICAga2V5Q29kZSAhPT0gMjAgJiYgLy8gY2Fwc2xvY2tcclxuICAgICAga2V5Q29kZSAhPT0gMjcgJiYgLy8gZXNjXHJcbiAgICAgIGtleUNvZGUgIT09IDM3ICYmIC8vIHNldGFcclxuICAgICAga2V5Q29kZSAhPT0gMzggJiYgLy8gc2V0YVxyXG4gICAgICBrZXlDb2RlICE9PSAzOSAmJiAvLyBzZXRhXHJcbiAgICAgIGtleUNvZGUgIT09IDQwICYmIC8vIHNldGFcclxuICAgICAga2V5Q29kZSAhPT0gOTNcclxuICAgICk7IC8vIHdpbmRvd3MgbWVudVxyXG4gIH1cclxuXHJcbiAgc2VhcmNoT25FbnRlcih2YWx1ZTogc3RyaW5nKSB7XHJcbiAgICBpZiAodGhpcy5zZXJ2aWNlICYmICF0aGlzLnNlbGVjdGVkVmlldyAmJiB2YWx1ZS5sZW5ndGggPj0gdGhpcy5maWx0ZXJNaW5sZW5ndGgpIHtcclxuICAgICAgdGhpcy5jb250cm9sQXBwbHlGaWx0ZXIodmFsdWUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc2hvd01vcmVJbmZpbml0ZVNjcm9sbCgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmRlZmF1bHRTZXJ2aWNlLmhhc05leHQpIHtcclxuICAgICAgdGhpcy5pbmZpbml0ZUxvYWRpbmcgPSB0cnVlO1xyXG4gICAgfVxyXG4gICAgdGhpcy5wYWdlKys7XHJcbiAgICB0aGlzLmFwcGx5RmlsdGVyKCcnLCB0cnVlKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYWRqdXN0Q29udGFpbmVyUG9zaXRpb24oKSB7XHJcbiAgICB0aGlzLmNvbnRyb2xQb3NpdGlvbi5hZGp1c3RQb3NpdGlvbihwb0NvbWJvQ29udGFpbmVyUG9zaXRpb25EZWZhdWx0KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY2xvc2UocmVzZXQ6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMuY29tYm9PcGVuID0gZmFsc2U7XHJcblxyXG4gICAgaWYgKCFyZXNldCkge1xyXG4gICAgICBpZiAoIXRoaXMuZ2V0SW5wdXRWYWx1ZSgpKSB7XHJcbiAgICAgICAgdGhpcy5wYWdlID0gdGhpcy5zZXRQYWdlKCk7XHJcbiAgICAgICAgdGhpcy5kZWZhdWx0U2VydmljZS5oYXNOZXh0ID0gdHJ1ZTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5pbmZpbml0ZVNjcm9sbCkge1xyXG4gICAgICAgIHRoaXMub3B0aW9ucyA9IHRoaXMuc2V0T3B0aW9ucygpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XHJcblxyXG4gICAgdGhpcy5jb21ib0ljb24gPSAncG8taWNvbi1hcnJvdy1kb3duJztcclxuXHJcbiAgICB0aGlzLnJlbW92ZUxpc3RlbmVycygpO1xyXG5cclxuICAgIHRoaXMuaXNGaWx0ZXJpbmcgPSBmYWxzZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaW5pdGlhbGl6ZUxpc3RlbmVycygpIHtcclxuICAgIHRoaXMucmVtb3ZlTGlzdGVuZXJzKCk7XHJcblxyXG4gICAgdGhpcy5jbGlja291dExpc3RlbmVyID0gdGhpcy5yZW5kZXJlci5saXN0ZW4oJ2RvY3VtZW50JywgJ2NsaWNrJywgKGV2ZW50OiBNb3VzZUV2ZW50KSA9PiB7XHJcbiAgICAgIHRoaXMud2FzQ2xpY2tlZE9uVG9nZ2xlKGV2ZW50KTtcclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMuZXZlbnRSZXNpemVMaXN0ZW5lciA9IHRoaXMucmVuZGVyZXIubGlzdGVuKCd3aW5kb3cnLCAncmVzaXplJywgKCkgPT4ge1xyXG4gICAgICAvLyB0aW1lb3V0IG5lY2Vzc2FyaW8gcG9pcyBhIGFuaW1hw6fDo28gZG8gcG8tbWVudSBpbXBhY3RhIG5vIGFqdXN0ZSBkYSBwb3Npw6fDo28gZG8gY29udGFpbmVyLlxyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuYWRqdXN0Q29udGFpbmVyUG9zaXRpb24oKSwgMjUwKTtcclxuICAgIH0pO1xyXG5cclxuICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdzY3JvbGwnLCB0aGlzLm9uU2Nyb2xsLCB0cnVlKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgb25FcnJvckdldE9iamVjdEJ5VmFsdWUoKSB7XHJcbiAgICB0aGlzLnVwZGF0ZU9wdGlvbkJ5RmlsdGVyZWRWYWx1ZShudWxsKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgb25TY3JvbGwgPSAoKTogdm9pZCA9PiB7XHJcbiAgICB0aGlzLmFkanVzdENvbnRhaW5lclBvc2l0aW9uKCk7XHJcbiAgfTtcclxuXHJcbiAgcHJpdmF0ZSBvbkVycm9yRmlsdGVyZWREYXRhKCkge1xyXG4gICAgdGhpcy5pc1NlcnZlclNlYXJjaGluZyA9IGZhbHNlO1xyXG5cclxuICAgIHRoaXMudXBkYXRlQ29tYm9MaXN0KFtdKTtcclxuXHJcbiAgICB0aGlzLmNvbnRyb2xDb21ib1Zpc2liaWxpdHkodHJ1ZSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIG9wZW4ocmVzZXQ6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMuY29tYm9PcGVuID0gdHJ1ZTtcclxuICAgIGlmICghcmVzZXQgJiYgdGhpcy5pbmZpbml0ZVNjcm9sbCkge1xyXG4gICAgICBpZiAoIXRoaXMuZ2V0SW5wdXRWYWx1ZSgpKSB7XHJcbiAgICAgICAgdGhpcy5wYWdlID0gMTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLm9wdGlvbnMgPSB0aGlzLnNldE9wdGlvbnMoKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmNoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcclxuXHJcbiAgICB0aGlzLmNvbWJvSWNvbiA9ICdwby1pY29uLWFycm93LXVwJztcclxuXHJcbiAgICB0aGlzLmluaXRpYWxpemVMaXN0ZW5lcnMoKTtcclxuXHJcbiAgICB0aGlzLmlucHV0RWwubmF0aXZlRWxlbWVudC5mb2N1cygpO1xyXG4gICAgdGhpcy5zZXRDb250YWluZXJQb3NpdGlvbigpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSByZW1vdmVMaXN0ZW5lcnMoKSB7XHJcbiAgICBpZiAodGhpcy5jbGlja291dExpc3RlbmVyKSB7XHJcbiAgICAgIHRoaXMuY2xpY2tvdXRMaXN0ZW5lcigpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLmV2ZW50UmVzaXplTGlzdGVuZXIpIHtcclxuICAgICAgdGhpcy5ldmVudFJlc2l6ZUxpc3RlbmVyKCk7XHJcbiAgICB9XHJcblxyXG4gICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIHRoaXMub25TY3JvbGwsIHRydWUpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXRDb250YWluZXJQb3NpdGlvbigpIHtcclxuICAgIHRoaXMuY29udHJvbFBvc2l0aW9uLnNldEVsZW1lbnRzKFxyXG4gICAgICB0aGlzLmNvbnRhaW5lckVsZW1lbnQubmF0aXZlRWxlbWVudCxcclxuICAgICAgcG9Db21ib0NvbnRhaW5lck9mZnNldCxcclxuICAgICAgdGhpcy5pbnB1dEVsLFxyXG4gICAgICBbJ3RvcCcsICdib3R0b20nXSxcclxuICAgICAgdHJ1ZVxyXG4gICAgKTtcclxuXHJcbiAgICB0aGlzLmFkanVzdENvbnRhaW5lclBvc2l0aW9uKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldE9wdGlvbnMoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5nZXRJbnB1dFZhbHVlKCkgPyB0aGlzLm9wdGlvbnMgOiBbXTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgcHJlcGFyZU9wdGlvbnMoaXRlbXMpIHtcclxuICAgIHJldHVybiB0aGlzLmluZmluaXRlU2Nyb2xsID8gWy4uLnRoaXMub3B0aW9ucywgLi4uaXRlbXNdIDogaXRlbXM7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldFBhZ2UoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5pbmZpbml0ZVNjcm9sbCA/IDEgOiB1bmRlZmluZWQ7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldFNjcm9sbGluZ0NvbnRyb2woKSB7XHJcbiAgICByZXR1cm4gdGhpcy5pbmZpbml0ZVNjcm9sbCA/IHRydWUgOiBmYWxzZTtcclxuICB9XHJcbn1cclxuIiwiPHBvLWZpZWxkLWNvbnRhaW5lclxyXG4gIFtwLWRpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICBbcC1pZF09XCJpZFwiXHJcbiAgW3AtbGFiZWxdPVwibGFiZWxcIlxyXG4gIFtwLW9wdGlvbmFsXT1cIm9wdGlvbmFsXCJcclxuICBbcC1yZXF1aXJlZF09XCJyZXF1aXJlZFwiXHJcbiAgW3Atc2hvdy1yZXF1aXJlZF09XCJzaG93UmVxdWlyZWRcIlxyXG4+XHJcbiAgPGRpdiBjbGFzcz1cInBvLWZpZWxkLWNvbnRhaW5lci1jb250ZW50XCI+XHJcbiAgICA8ZGl2ICpuZ0lmPVwiaWNvblwiIGNsYXNzPVwicG8tZmllbGQtaWNvbi1jb250YWluZXItbGVmdFwiPlxyXG4gICAgICA8cG8taWNvbiBjbGFzcz1cInBvLWZpZWxkLWljb24gcG8taWNvbi1pbnB1dFwiIFtjbGFzcy5wby1maWVsZC1pY29uLWRpc2FibGVkXT1cImRpc2FibGVkXCIgW3AtaWNvbl09XCJpY29uXCI+PC9wby1pY29uPlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGlucHV0XHJcbiAgICAgICNpbnBcclxuICAgICAgY2xhc3M9XCJwby1pbnB1dCBwby1jb21iby1pbnB1dFwiXHJcbiAgICAgIFtuZ0NsYXNzXT1cImNsZWFuICYmIGlucC52YWx1ZSA/ICdwby1pbnB1dC1kb3VibGUtaWNvbi1yaWdodCcgOiAncG8taW5wdXQtaWNvbi1yaWdodCdcIlxyXG4gICAgICBbY2xhc3MucG8taW5wdXQtaWNvbi1sZWZ0XT1cImljb25cIlxyXG4gICAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxyXG4gICAgICB0eXBlPVwidGV4dFwiXHJcbiAgICAgIFthdHRyLm5hbWVdPVwibmFtZVwiXHJcbiAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXHJcbiAgICAgIFtpZF09XCJpZFwiXHJcbiAgICAgIFtwbGFjZWhvbGRlcl09XCJkaXNhYmxlZCA/ICcnIDogcGxhY2Vob2xkZXJcIlxyXG4gICAgICBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxyXG4gICAgICAoY2xpY2spPVwidG9nZ2xlQ29tYm9WaXNpYmlsaXR5KClcIlxyXG4gICAgICAoa2V5dXApPVwib25LZXlVcCgkZXZlbnQpXCJcclxuICAgICAgKGJsdXIpPVwib25CbHVyKClcIlxyXG4gICAgICAoa2V5dXAuZW50ZXIpPVwic2VhcmNoT25FbnRlcigkZXZlbnQudGFyZ2V0LnZhbHVlKVwiXHJcbiAgICAgIChrZXlkb3duKT1cIm9uS2V5RG93bigkZXZlbnQpXCJcclxuICAgIC8+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cInBvLWZpZWxkLWljb24tY29udGFpbmVyLXJpZ2h0XCI+XHJcbiAgICAgIDxwby1jbGVhblxyXG4gICAgICAgIGNsYXNzPVwicG8taWNvbi1pbnB1dFwiXHJcbiAgICAgICAgKm5nSWY9XCJjbGVhbiAmJiAhZGlzYWJsZWRcIlxyXG4gICAgICAgIChwLWNoYW5nZS1ldmVudCk9XCJjbGVhcigkZXZlbnQpXCJcclxuICAgICAgICBbcC1lbGVtZW50LXJlZl09XCJpbnB1dEVsXCJcclxuICAgICAgPlxyXG4gICAgICA8L3BvLWNsZWFuPlxyXG4gICAgICA8c3BhblxyXG4gICAgICAgICNpY29uQXJyb3dcclxuICAgICAgICBjbGFzcz1cInBvLWljb24gcG8tZmllbGQtaWNvbiB7eyBjb21ib0ljb24gfX0gcG8taWNvbi1pbnB1dFwiXHJcbiAgICAgICAgW2NsYXNzLnBvLWZpZWxkLWljb24tZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxyXG4gICAgICAgIFtjbGFzcy5wby1maWVsZC1pY29uXT1cIiFkaXNhYmxlZFwiXHJcbiAgICAgICAgKGNsaWNrKT1cInRvZ2dsZUNvbWJvVmlzaWJpbGl0eSgpXCJcclxuICAgICAgPlxyXG4gICAgICA8L3NwYW4+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuXHJcbiAgPGRpdiAjY29udGFpbmVyRWxlbWVudCBjbGFzcz1cInBvLWNvbWJvLWNvbnRhaW5lclwiIFtoaWRkZW5dPVwiIWNvbWJvT3BlbiAmJiAhaXNTZXJ2ZXJTZWFyY2hpbmdcIj5cclxuICAgIDxwby1saXN0Ym94XHJcbiAgICAgICNwb0xpc3Rib3hcclxuICAgICAgI2NvbnRlbnRFbGVtZW50XHJcbiAgICAgIHAtdHlwZT1cIm9wdGlvblwiXHJcbiAgICAgIFtwLWl0ZW1zXT1cInZpc2libGVPcHRpb25zXCJcclxuICAgICAgW3AtZmllbGQtdmFsdWVdPVwiZHluYW1pY1ZhbHVlXCJcclxuICAgICAgW3AtZmllbGQtbGFiZWxdPVwiZHluYW1pY0xhYmVsXCJcclxuICAgICAgW3AtdGVtcGxhdGVdPVwiY29tYm9PcHRpb25UZW1wbGF0ZVwiXHJcbiAgICAgIFtwLXNlYXJjaC12YWx1ZV09XCJnZXRJbnB1dFZhbHVlKClcIlxyXG4gICAgICBbcC1pbmZpbml0ZS1sb2FkaW5nXT1cImluZmluaXRlTG9hZGluZ1wiXHJcbiAgICAgIFtwLWluZmluaXRlLXNjcm9sbF09XCJpbmZpbml0ZVNjcm9sbFwiXHJcbiAgICAgIFtwLWZpbHRlcmluZ109XCJpc0ZpbHRlcmluZ1wiXHJcbiAgICAgIFtwLWNhY2hlXT1cImNhY2hlXCJcclxuICAgICAgKHAtc2VsZWN0Y29tYm8taXRlbSk9XCJvbk9wdGlvbkNsaWNrKCRldmVudCwgJGV2ZW50LmV2ZW50KVwiXHJcbiAgICAgIFtwLWZpbHRlci1tb2RlXT1cImZpbHRlck1vZGVcIlxyXG4gICAgICBbcC12aXNpYmxlXT1cImNvbWJvT3BlblwiXHJcbiAgICAgIFtwLWlzLXNlYXJjaGluZ109XCJpc1NlcnZlclNlYXJjaGluZ1wiXHJcbiAgICAgIFtwLXNob3VsZC1tYXJrLWxldHRlcl09XCJzaG91bGRNYXJrTGV0dGVyc1wiXHJcbiAgICAgIFtwLWNvbXBhcmUtY2FjaGVdPVwiY29tcGFyZU9iamVjdHMoY2FjaGVPcHRpb25zLCB2aXNpYmxlT3B0aW9ucylcIlxyXG4gICAgICBbcC1jb21iby1zZXJ2aWNlXT1cInNlcnZpY2VcIlxyXG4gICAgICBbcC1pbmZpbml0ZS1zY3JvbGwtZGlzdGFuY2VdPVwiaW5maW5pdGVTY3JvbGxEaXN0YW5jZVwiXHJcbiAgICAgIChwLXVwZGF0ZS1pbmZpbml0ZS1zY3JvbGwpPVwic2hvd01vcmVJbmZpbml0ZVNjcm9sbCgpXCJcclxuICAgICAgKHAtY2xvc2UpPVwib25DbG9zZUNvbWJvKClcIlxyXG4gICAgPjwvcG8tbGlzdGJveD5cclxuICA8L2Rpdj5cclxuICA8cG8tZmllbGQtY29udGFpbmVyLWJvdHRvbSBbcC1oZWxwXT1cImhlbHBcIiBbcC1kaXNhYmxlZF09XCJkaXNhYmxlZFwiPjwvcG8tZmllbGQtY29udGFpbmVyLWJvdHRvbT5cclxuPC9wby1maWVsZC1jb250YWluZXI+XHJcbiJdfQ==
|
|
618
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tY29tYm8uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3JjL2xpYi9jb21wb25lbnRzL3BvLWZpZWxkL3BvLWNvbWJvL3BvLWNvbWJvLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1maWVsZC9wby1jb21iby9wby1jb21iby5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsdUJBQXVCLEVBRXZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osVUFBVSxFQUNWLFVBQVUsRUFNVixTQUFTLEVBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWxFLE9BQU8sRUFBRSxTQUFTLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQy9DLE9BQU8sRUFBRSxZQUFZLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV0RixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxtRUFBbUUsQ0FBQztBQUM3RyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFHbEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFHakUsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sK0RBQStELENBQUM7QUFDL0csT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7SUNwQnZDLCtCQUF1RDtJQUNyRCw4QkFBaUg7SUFDbkgsaUJBQU07OztJQUR5QyxlQUF5QztJQUF6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QixpREFBd0I7WUFPekIsZUFBMkQ7WUFBM0Qsb0ZBQTJEO1lBQzNELHNEQUF5QyxnQ0FBQTtZQVFkLGVBQXFDO1lBQXJDLCtDQUFxQyxpQ0FBQTtZQTRCM0MsZUFBZTtZQUFmLGlDQUFlLDRCQUFBOzs7dUZEMEIvQixnQkFBZ0I7Y0FuQjVCLFNBQVM7MkJBQ0UsVUFBVSxtQkFFSCx1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDO29CQUNULG9CQUFvQjtvQkFDcEIsd0JBQXdCO29CQUN4Qjt3QkFDRSxPQUFPLEVBQUUsaUJBQWlCO3dCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxpQkFBaUIsQ0FBQzt3QkFDL0MsS0FBSyxFQUFFLElBQUk7cUJBQ1o7b0JBQ0Q7d0JBQ0UsT0FBTyxFQUFFLGFBQWE7d0JBQ3RCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLGlCQUFpQixDQUFDO3dCQUMvQyxLQUFLLEVBQUUsSUFBSTtxQkFDWjtpQkFDRjs2UEFHK0QsbUJBQW1CO2tCQUFsRixZQUFZO21CQUFDLDhCQUE4QixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtZQUVULGdCQUFnQjtrQkFBcEUsU0FBUzttQkFBQyxrQkFBa0IsRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUU7WUFDQSxjQUFjO2tCQUFoRSxTQUFTO21CQUFDLGdCQUFnQixFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRTtZQUNXLFdBQVc7a0JBQXRFLFNBQVM7bUJBQUMsV0FBVyxFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO1lBQ0osT0FBTztrQkFBNUQsU0FBUzttQkFBQyxLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7WUFDNUIsU0FBUztrQkFBaEMsU0FBUzttQkFBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZCxcbiAgRWxlbWVudFJlZixcbiAgZm9yd2FyZFJlZixcbiAgSXRlcmFibGVEaWZmZXJzLFxuICBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveSxcbiAgUmVuZGVyZXIyLFxuICBTaW1wbGVDaGFuZ2VzLFxuICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOR19WQUxJREFUT1JTLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgZnJvbUV2ZW50LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZGlzdGluY3RVbnRpbENoYW5nZWQsIGZpbHRlciwgbWFwLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IFBvQ29udHJvbFBvc2l0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3BvLWNvbnRyb2wtcG9zaXRpb24vcG8tY29udHJvbC1wb3NpdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IFBvS2V5Q29kZUVudW0gfSBmcm9tICcuLy4uLy4uLy4uL2VudW1zL3BvLWtleS1jb2RlLmVudW0nO1xuaW1wb3J0IHsgUG9MYW5ndWFnZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9wby1sYW5ndWFnZS9wby1sYW5ndWFnZS5zZXJ2aWNlJztcblxuaW1wb3J0IHsgUG9Db21ib0Jhc2VDb21wb25lbnQgfSBmcm9tICcuL3BvLWNvbWJvLWJhc2UuY29tcG9uZW50JztcbmltcG9ydCB7IFBvQ29tYm9GaWx0ZXJTZXJ2aWNlIH0gZnJvbSAnLi9wby1jb21iby1maWx0ZXIuc2VydmljZSc7XG5pbXBvcnQgeyBQb0NvbWJvR3JvdXAgfSBmcm9tICcuL2ludGVyZmFjZXMvcG8tY29tYm8tZ3JvdXAuaW50ZXJmYWNlJztcbmltcG9ydCB7IFBvQ29tYm9PcHRpb24gfSBmcm9tICcuL2ludGVyZmFjZXMvcG8tY29tYm8tb3B0aW9uLmludGVyZmFjZSc7XG5pbXBvcnQgeyBQb0NvbWJvT3B0aW9uVGVtcGxhdGVEaXJlY3RpdmUgfSBmcm9tICcuL3BvLWNvbWJvLW9wdGlvbi10ZW1wbGF0ZS9wby1jb21iby1vcHRpb24tdGVtcGxhdGUuZGlyZWN0aXZlJztcbmltcG9ydCB7IHV1aWQgfSBmcm9tICcuLi8uLi8uLi91dGlscy91dGlsJztcbmltcG9ydCB7IFBvTGlzdEJveENvbXBvbmVudCB9IGZyb20gJy4vLi4vLi4vcG8tbGlzdGJveC9wby1saXN0Ym94LmNvbXBvbmVudCc7XG5cbmNvbnN0IHBvQ29tYm9Db250YWluZXJPZmZzZXQgPSA4O1xuY29uc3QgcG9Db21ib0NvbnRhaW5lclBvc2l0aW9uRGVmYXVsdCA9ICdib3R0b20nO1xuXG4vKipcbiAqIEBkb2NzRXh0ZW5kcyBQb0NvbWJvQmFzZUNvbXBvbmVudFxuICpcbiAqIEBkZXNjcmlwdGlvblxuICogVXRpbGl6YW5kbyBwby1jb21ibyBjb20gc2VydmnDp28sIMOpIHBvc3NpdmVsIGRpZ2l0YXIgdW0gdmFsb3Igbm8gY2FtcG8gZGUgZW50cmFkYSBlIHByZXNzaW9uYXIgYSB0ZWNsYSAndGFiJyBwYXJhIHF1ZSBvIGNvbXBvbmVudGVcbiAqIGZhw6dhIHVtYSByZXF1aXNpw6fDo28gw6AgVVJMIGluZm9ybWFkYSBwYXNzYW5kbyBvIHZhbG9yIGRpZ2l0YWRvIG5vIGNhbXBvLiBTZSBlbmNvbnRyYWRvIG8gdmFsb3IsIGVudMOjbyBvIG1lc21vIHNlcsOhIHNlbGVjaW9uYWRvLCBjYXNvXG4gKiBuw6NvIHNlamEgZW5jb250cmFkbywgZW50w6NvIGEgbGlzdGEgZGUgaXRlbnMgdm9sdGFyw6EgcGFyYSBvIGVzdGFkbyBpbmljaWFsLlxuICpcbiAqIEBleGFtcGxlXG4gKlxuICogPGV4YW1wbGUgbmFtZT1cInBvLWNvbWJvLWJhc2ljXCIgdGl0bGU9XCJQTyBDb21ibyBCYXNpY1wiPlxuICogICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWNvbWJvLWJhc2ljL3NhbXBsZS1wby1jb21iby1iYXNpYy5jb21wb25lbnQuaHRtbFwiPiA8L2ZpbGU+XG4gKiAgIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tY29tYm8tYmFzaWMvc2FtcGxlLXBvLWNvbWJvLWJhc2ljLmNvbXBvbmVudC50c1wiPiA8L2ZpbGU+XG4gKiA8L2V4YW1wbGU+XG4gKlxuICogPGV4YW1wbGUgbmFtZT1cInBvLWNvbWJvLWxhYnNcIiB0aXRsZT1cIlBPIENvbWJvIExhYnNcIj5cbiAqICAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1jb21iby1sYWJzL3NhbXBsZS1wby1jb21iby1sYWJzLmNvbXBvbmVudC5odG1sXCI+IDwvZmlsZT5cbiAqICAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1jb21iby1sYWJzL3NhbXBsZS1wby1jb21iby1sYWJzLmNvbXBvbmVudC50c1wiPiA8L2ZpbGU+XG4gKiA8L2V4YW1wbGU+XG4gKlxuICogPGV4YW1wbGUgbmFtZT1cInBvLWNvbWJvLXNjaGVkdWxpbmdcIiB0aXRsZT1cIlBPIENvbWJvIC0gU2NoZWR1bGluZ1wiPlxuICogICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWNvbWJvLXNjaGVkdWxpbmcvc2FtcGxlLXBvLWNvbWJvLXNjaGVkdWxpbmcuY29tcG9uZW50Lmh0bWxcIj4gPC9maWxlPlxuICogICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWNvbWJvLXNjaGVkdWxpbmcvc2FtcGxlLXBvLWNvbWJvLXNjaGVkdWxpbmcuY29tcG9uZW50LnRzXCI+IDwvZmlsZT5cbiAqICAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1jb21iby1zY2hlZHVsaW5nL3NhbXBsZS1wby1jb21iby1zY2hlZHVsaW5nLnNlcnZpY2UudHNcIj4gPC9maWxlPlxuICogPC9leGFtcGxlPlxuICpcbiAqIDxleGFtcGxlIG5hbWU9XCJwby1jb21iby10cmFuc2ZlclwiIHRpdGxlPVwiUE8gQ29tYm8gLSBCYW5raW5nIFRyYW5zZmVyXCI+XG4gKiAgIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tY29tYm8tdHJhbnNmZXIvc2FtcGxlLXBvLWNvbWJvLXRyYW5zZmVyLmNvbXBvbmVudC5odG1sXCI+IDwvZmlsZT5cbiAqICAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1jb21iby10cmFuc2Zlci9zYW1wbGUtcG8tY29tYm8tdHJhbnNmZXIuY29tcG9uZW50LnRzXCI+IDwvZmlsZT5cbiAqIDwvZXhhbXBsZT5cbiAqXG4gKiA8ZXhhbXBsZSBuYW1lPVwicG8tY29tYm8taGVyb2VzXCIgdGl0bGU9XCJQTyBDb21ibyAtIEhlcm9lc1wiPlxuICogICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWNvbWJvLWhlcm9lcy9zYW1wbGUtcG8tY29tYm8taGVyb2VzLmNvbXBvbmVudC5odG1sXCI+IDwvZmlsZT5cbiAqICAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1jb21iby1oZXJvZXMvc2FtcGxlLXBvLWNvbWJvLWhlcm9lcy5jb21wb25lbnQudHNcIj4gPC9maWxlPlxuICogPC9leGFtcGxlPlxuICpcbiAqIDxleGFtcGxlIG5hbWU9XCJwby1jb21iby1oZXJvZXMtcmVhY3RpdmUtZm9ybVwiIHRpdGxlPVwiUE8gQ29tYm8gLSBIZXJvZXMgUmVhY3RpdmUgRm9ybVwiPlxuICogICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWNvbWJvLWhlcm9lcy1yZWFjdGl2ZS1mb3JtL3NhbXBsZS1wby1jb21iby1oZXJvZXMtcmVhY3RpdmUtZm9ybS5jb21wb25lbnQuaHRtbFwiPiA8L2ZpbGU+XG4gKiAgIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tY29tYm8taGVyb2VzLXJlYWN0aXZlLWZvcm0vc2FtcGxlLXBvLWNvbWJvLWhlcm9lcy1yZWFjdGl2ZS1mb3JtLmNvbXBvbmVudC50c1wiPiA8L2ZpbGU+XG4gKiA8L2V4YW1wbGU+XG4gKlxuICogPGV4YW1wbGUgbmFtZT1cInBvLWNvbWJvLWluZmluaXR5LXNjcm9sbFwiIHRpdGxlPVwiUE8gQ29tYm8gLSBJbmlmaXR5IFNjcm9sbFwiPlxuICogICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWNvbWJvLWluZmluaXR5LXNjcm9sbC9zYW1wbGUtcG8tY29tYm8taW5maW5pdHktc2Nyb2xsLmNvbXBvbmVudC5odG1sXCI+IDwvZmlsZT5cbiAqICAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1jb21iby1pbmZpbml0eS1zY3JvbGwvc2FtcGxlLXBvLWNvbWJvLWluZmluaXR5LXNjcm9sbC5jb21wb25lbnQudHNcIj4gPC9maWxlPlxuICogPC9leGFtcGxlPlxuICpcbiAqIDxleGFtcGxlIG5hbWU9XCJwby1jb21iby1ob3RlbHNcIiB0aXRsZT1cIlBPIENvbWJvIC0gQm9va2luZyBIb3RlbFwiPlxuICogICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWNvbWJvLWhvdGVscy9zYW1wbGUtcG8tY29tYm8taG90ZWxzLmNvbXBvbmVudC5odG1sXCI+IDwvZmlsZT5cbiAqICAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1jb21iby1ob3RlbHMvc2FtcGxlLXBvLWNvbWJvLWhvdGVscy5jb21wb25lbnQudHNcIj4gPC9maWxlPlxuICogPC9leGFtcGxlPlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdwby1jb21ibycsXG4gIHRlbXBsYXRlVXJsOiAnLi9wby1jb21iby5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBwcm92aWRlcnM6IFtcbiAgICBQb0NvbWJvRmlsdGVyU2VydmljZSxcbiAgICBQb0NvbnRyb2xQb3NpdGlvblNlcnZpY2UsXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBQb0NvbWJvQ29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gUG9Db21ib0NvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZVxuICAgIH1cbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBQb0NvbWJvQ29tcG9uZW50IGV4dGVuZHMgUG9Db21ib0Jhc2VDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XG4gIEBDb250ZW50Q2hpbGQoUG9Db21ib09wdGlvblRlbXBsYXRlRGlyZWN0aXZlLCB7IHN0YXRpYzogdHJ1ZSB9KSBjb21ib09wdGlvblRlbXBsYXRlOiBQb0NvbWJvT3B0aW9uVGVtcGxhdGVEaXJlY3RpdmU7XG5cbiAgQFZpZXdDaGlsZCgnY29udGFpbmVyRWxlbWVudCcsIHsgcmVhZDogRWxlbWVudFJlZiB9KSBjb250YWluZXJFbGVtZW50OiBFbGVtZW50UmVmO1xuICBAVmlld0NoaWxkKCdjb250ZW50RWxlbWVudCcsIHsgcmVhZDogRWxlbWVudFJlZiB9KSBjb250ZW50RWxlbWVudDogRWxlbWVudFJlZjtcbiAgQFZpZXdDaGlsZCgnaWNvbkFycm93JywgeyByZWFkOiBFbGVtZW50UmVmLCBzdGF0aWM6IHRydWUgfSkgaWNvbkVsZW1lbnQ6IEVsZW1lbnRSZWY7XG4gIEBWaWV3Q2hpbGQoJ2lucCcsIHsgcmVhZDogRWxlbWVudFJlZiwgc3RhdGljOiB0cnVlIH0pIGlucHV0RWw6IEVsZW1lbnRSZWY7XG4gIEBWaWV3Q2hpbGQoJ3BvTGlzdGJveCcpIHBvTGlzdGJveDogUG9MaXN0Qm94Q29tcG9uZW50O1xuXG4gIGNvbWJvSWNvbjogc3RyaW5nID0gJ3BvLWljb24tYXJyb3ctZG93bic7XG4gIGNvbWJvT3BlbjogYm9vbGVhbiA9IGZhbHNlO1xuICBkaWZmZXI6IGFueTtcbiAgaWQgPSBgcG8tY29tYm9bJHt1dWlkKCl9XWA7XG4gIGlzUHJvY2Vzc2luZ1ZhbHVlQnlUYWI6IGJvb2xlYW4gPSBmYWxzZTtcbiAgc2Nyb2xsVG9wID0gMDtcbiAgc2hvdWxkTWFya0xldHRlcnM6IGJvb2xlYW4gPSB0cnVlO1xuICBpbmZpbml0ZUxvYWRpbmc6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBwcml2YXRlIF9pc1NlcnZlclNlYXJjaGluZzogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHByaXZhdGUgY2xpY2tvdXRMaXN0ZW5lcjogKCkgPT4gdm9pZDtcbiAgcHJpdmF0ZSBldmVudFJlc2l6ZUxpc3RlbmVyOiAoKSA9PiB2b2lkO1xuXG4gIHByaXZhdGUgZmlsdGVyU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gIHByaXZhdGUgZ2V0U3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG5cbiAgcHJpdmF0ZSBzdWJzY3JpcHRpb25TY3JvbGxFdmVudDogU3Vic2NyaXB0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBlbGVtZW50OiBFbGVtZW50UmVmLFxuICAgIHB1YmxpYyBkaWZmZXJzOiBJdGVyYWJsZURpZmZlcnMsXG4gICAgcHVibGljIGRlZmF1bHRTZXJ2aWNlOiBQb0NvbWJvRmlsdGVyU2VydmljZSxcbiAgICBwdWJsaWMgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcml2YXRlIGNvbnRyb2xQb3NpdGlvbjogUG9Db250cm9sUG9zaXRpb25TZXJ2aWNlLFxuICAgIGxhbmd1YWdlU2VydmljZTogUG9MYW5ndWFnZVNlcnZpY2VcbiAgKSB7XG4gICAgc3VwZXIobGFuZ3VhZ2VTZXJ2aWNlKTtcblxuICAgIHRoaXMuZGlmZmVyID0gZGlmZmVycy5maW5kKFtdKS5jcmVhdGUobnVsbCk7XG4gIH1cblxuICBzZXQgaXNTZXJ2ZXJTZWFyY2hpbmcodmFsdWU6IGJvb2xlYW4pIHtcbiAgICBpZiAodmFsdWUpIHtcbiAgICAgIHRoaXMuX2lzU2VydmVyU2VhcmNoaW5nID0gdmFsdWU7XG5cbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xuXG4gICAgICB0aGlzLnNldENvbnRhaW5lclBvc2l0aW9uKCk7XG4gICAgICB0aGlzLmluaXRpYWxpemVMaXN0ZW5lcnMoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5faXNTZXJ2ZXJTZWFyY2hpbmcgPSB2YWx1ZTtcbiAgICB9XG4gIH1cblxuICBnZXQgaXNTZXJ2ZXJTZWFyY2hpbmcoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2lzU2VydmVyU2VhcmNoaW5nO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIGlmICh0aGlzLmF1dG9Gb2N1cykge1xuICAgICAgdGhpcy5mb2N1cygpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAoY2hhbmdlcy5kZWJvdW5jZVRpbWUpIHtcbiAgICAgIHRoaXMudW5zdWJzY3JpYmVLZXl1cE9ic2VydmFibGUoKTtcbiAgICAgIHRoaXMuaW5pdElucHV0T2JzZXJ2YWJsZSgpO1xuICAgIH1cblxuICAgIGlmIChjaGFuZ2VzLmZpbHRlclNlcnZpY2UpIHtcbiAgICAgIHRoaXMuY29uZmlnQWZ0ZXJTZXRGaWx0ZXJTZXJ2aWNlKHRoaXMuZmlsdGVyU2VydmljZSk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5yZW1vdmVMaXN0ZW5lcnMoKTtcblxuICAgIGlmICh0aGlzLmZpbHRlclN1YnNjcmlwdGlvbikge1xuICAgICAgdGhpcy5maWx0ZXJTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5nZXRTdWJzY3JpcHRpb24pIHtcbiAgICAgIHRoaXMuZ2V0U3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuaW5maW5pdGVTY3JvbGwpIHtcbiAgICAgIHRoaXMuc3Vic2NyaXB0aW9uU2Nyb2xsRXZlbnQ/LnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEZ1bsOnw6NvIHF1ZSBhdHJpYnVpIGZvY28gYW8gY29tcG9uZW50ZS5cbiAgICpcbiAgICogUGFyYSB1dGlsaXrDoS1sYSDDqSBuZWNlc3PDoXJpbyB0ZXIgYSBpbnN0w6JuY2lhIGRvIGNvbXBvbmVudGUgbm8gRE9NLCBwb2RlbmRvIHNlciB1dGlsaXphZG8gbyBWaWV3Q2hpbGQgZGEgc2VndWludGUgZm9ybWE6XG4gICAqXG4gICAqIGBgYFxuICAgKiBpbXBvcnQgeyBQb0NvbWJvQ29tcG9uZW50IH0gZnJvbSAnQHBvLXVpL25nLWNvbXBvbmVudHMnO1xuICAgKlxuICAgKiAuLi5cbiAgICpcbiAgICogQFZpZXdDaGlsZChQb0NvbWJvQ29tcG9uZW50LCB7IHN0YXRpYzogdHJ1ZSB9KSBjb21ibzogUG9Db21ib0NvbXBvbmVudDtcbiAgICpcbiAgICogZm9jdXNDb21ibygpIHtcbiAgICogICB0aGlzLmNvbWJvLmZvY3VzKCk7XG4gICAqIH1cbiAgICogYGBgXG4gICAqL1xuICBmb2N1cygpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHRoaXMuaW5wdXRFbC5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgfVxuICB9XG5cbiAgb25CbHVyKCkge1xuICAgIHRoaXMub25Nb2RlbFRvdWNoZWQ/LigpO1xuICB9XG5cbiAgb25LZXlEb3duKGV2ZW50PzogYW55KSB7XG4gICAgY29uc3Qga2V5ID0gZXZlbnQua2V5Q29kZTtcbiAgICBjb25zdCBpbnB1dFZhbHVlID0gZXZlbnQudGFyZ2V0LnZhbHVlO1xuXG4gICAgLy8gYnVzY2EgdW0gcmVnaXN0cm8gcXVhbmRvIGFjaW9uYXIgbyB0YWJcbiAgICBpZiAodGhpcy5zZXJ2aWNlICYmIGtleSA9PT0gUG9LZXlDb2RlRW51bS50YWIgJiYgaW5wdXRWYWx1ZSAmJiAhdGhpcy5kaXNhYmxlZFRhYkZpbHRlcikge1xuICAgICAgdGhpcy5jb250cm9sQ29tYm9WaXNpYmlsaXR5KGZhbHNlKTtcbiAgICAgIHJldHVybiB0aGlzLmdldE9iamVjdEJ5VmFsdWUoaW5wdXRWYWx1ZSk7XG4gICAgfVxuXG4gICAgaWYgKGtleSA9PT0gUG9LZXlDb2RlRW51bS5hcnJvd0Rvd24pIHtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICBpZiAoIXRoaXMuc2VydmljZSkge1xuICAgICAgICB0aGlzLnBvTGlzdGJveD8uc2V0Rm9jdXMoKTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5jb250cm9sQ29tYm9WaXNpYmlsaXR5KHRydWUpO1xuICAgICAgdGhpcy5pc0ZpbHRlcmluZyA9IHRoaXMuY2hhbmdlT25FbnRlciA/IHRoaXMuaXNGaWx0ZXJpbmcgOiBmYWxzZTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBUZWNsYSBcImVudGVyXCJcbiAgICBpZiAoa2V5ID09PSBQb0tleUNvZGVFbnVtLmVudGVyICYmIHRoaXMuc2VsZWN0ZWRWaWV3ICYmIHRoaXMuY29tYm9PcGVuKSB7XG4gICAgICBjb25zdCBpc1VwZGF0ZU1vZGVsID0gdGhpcy5zZWxlY3RlZFZpZXcudmFsdWUgIT09IHRoaXMuc2VsZWN0ZWRWYWx1ZSB8fCBpbnB1dFZhbHVlICE9PSB0aGlzLnNlbGVjdGVkVmlldy5sYWJlbDtcblxuICAgICAgdGhpcy5jb250cm9sQ29tYm9WaXNpYmlsaXR5KGZhbHNlKTtcblxuICAgICAgdGhpcy51cGRhdGVTZWxlY3RlZFZhbHVlKHRoaXMuc2VsZWN0ZWRWaWV3LCBpc1VwZGF0ZU1vZGVsKTtcbiAgICAgIHRoaXMuaXNGaWx0ZXJpbmcgPSBmYWxzZTtcblxuICAgICAgaWYgKCF0aGlzLnNlcnZpY2UpIHtcbiAgICAgICAgdGhpcy51cGRhdGVDb21ib0xpc3QoWy4uLnRoaXMuY2FjaGVTdGF0aWNPcHRpb25zXSk7XG4gICAgICB9XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKGtleSA9PT0gUG9LZXlDb2RlRW51bS5lbnRlcikge1xuICAgICAgdGhpcy5jb250cm9sQ29tYm9WaXNpYmlsaXR5KHRydWUpO1xuICAgIH1cbiAgfVxuXG4gIG9uS2V5VXAoZXZlbnQ/OiBhbnkpIHtcbiAgICBjb25zdCBrZXkgPSBldmVudC5rZXlDb2RlIHx8IGV2ZW50LndoaWNoO1xuICAgIGNvbnN0IGlucHV0VmFsdWUgPSBldmVudC50YXJnZXQudmFsdWU7XG5cbiAgICBjb25zdCBpc1ZhbGlkS2V5ID0ga2V5ICE9PSBQb0tleUNvZGVFbnVtLmFycm93VXAgJiYga2V5ICE9PSBQb0tleUNvZGVFbnVtLmFycm93RG93biAmJiBrZXkgIT09IFBvS2V5Q29kZUVudW0uZW50ZXI7XG5cbiAgICBpZiAoaXNWYWxpZEtleSkge1xuICAgICAgaWYgKGlucHV0VmFsdWUpIHtcbiAgICAgICAgaWYgKCF0aGlzLnNlcnZpY2UgJiYgdGhpcy5wcmV2aW91c1NlYXJjaFZhbHVlICE9PSBpbnB1dFZhbHVlKSB7XG4gICAgICAgICAgdGhpcy5zaG91bGRNYXJrTGV0dGVycyA9IHRydWU7XG4gICAgICAgICAgdGhpcy5pc0ZpbHRlcmluZyA9IHRydWU7XG4gICAgICAgICAgdGhpcy5zZWFyY2hGb3JMYWJlbChpbnB1dFZhbHVlLCB0aGlzLmNvbWJvT3B0aW9uc0xpc3QsIHRoaXMuZmlsdGVyTW9kZSk7XG4gICAgICAgICAgdGhpcy5pbnB1dENoYW5nZS5lbWl0KGlucHV0VmFsdWUpO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBxdWFuZG8gYXBhZ2FyIHJhcGlkbyBvIGNhbXBvIGUgY29udGVyIHNlcnZpw6dvLCB2YWxvciwgbsOjbyBkaXNwYXJhdmEgbyBrZXl1cCBvYnNlcnZhYmxlXG4gICAgICAgIC8vIG5lY2Vzc2FyaW8gZXN0ZSB0cmF0YW1lbnRvIHBhcmEgcmV0b3JuYXIgYSBsaXN0YSAnZGVmYXVsdCcuXG4gICAgICAgIGNvbnN0IHVzZURlZmF1bHRPcHRpb25zU2VydmljZSA9XG4gICAgICAgICAgdGhpcy5zZXJ2aWNlICYmIHRoaXMuc2VsZWN0ZWRWYWx1ZSAmJiB0aGlzLnNlbGVjdGVkT3B0aW9uLmxhYmVsID09PSB0aGlzLnByZXZpb3VzU2VhcmNoVmFsdWU7XG5cbiAgICAgICAgdGhpcy51cGRhdGVTZWxlY3RlZFZhbHVlKG51bGwpO1xuXG4gICAgICAgIGlmICghdGhpcy5zZXJ2aWNlKSB7XG4gICAgICAgICAgdGhpcy51cGRhdGVDb21ib0xpc3QoKTtcbiAgICAgICAgfSBlbHNlIGlmICh1c2VEZWZhdWx0T3B0aW9uc1NlcnZpY2UpIHtcbiAgICAgICAgICB0aGlzLnVwZGF0ZUNvbWJvTGlzdChbLi4udGhpcy5jYWNoZU9wdGlvbnNdKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuaXNGaWx0ZXJpbmcgPSBmYWxzZTtcbiAgICAgIH1cblxuICAgICAgLy8gY2FzbyBvIHZhbG9yIHBlc3F1aXNhZG8gZm9yIGRpZmVyZW50ZSBkbyBhbnRlcmlvciBkZXZlIGFicmlyIG8gY29tYm9cbiAgICAgIGlmICh0aGlzLnByZXZpb3VzU2VhcmNoVmFsdWUgIT09IGlucHV0VmFsdWUpIHtcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XG5cbiAgICAgICAgdGhpcy5jb250cm9sQ29tYm9WaXNpYmlsaXR5KHRydWUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMucHJldmlvdXNTZWFyY2hWYWx1ZSA9IGlucHV0VmFsdWU7XG4gIH1cblxuICBpbml0SW5wdXRPYnNlcnZhYmxlKCkge1xuICAgIGlmICh0aGlzLnNlcnZpY2UpIHtcbiAgICAgIGNvbnN0IGtleXVwT2JzZXJ2YWJsZSA9IGZyb21FdmVudCh0aGlzLmlucHV0RWwubmF0aXZlRWxlbWVudCwgJ2tleXVwJykucGlwZShcbiAgICAgICAgZmlsdGVyKChlOiBhbnkpID0+IHRoaXMuaXNWYWxpZENoYXJhY3RlclRvU2VhcmNoKGUua2V5Q29kZSkpLFxuICAgICAgICBtYXAoKGU6IGFueSkgPT4gZS5jdXJyZW50VGFyZ2V0LnZhbHVlKSxcbiAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgICAgdGFwKCgpID0+IHtcbiAgICAgICAgICB0aGlzLnNob3VsZE1hcmtMZXR0ZXJzID0gZmFsc2U7XG4gICAgICAgIH0pLFxuICAgICAgICBkZWJvdW5jZVRpbWUodGhpcy5kZWJvdW5jZVRpbWUpXG4gICAgICApO1xuXG4gICAgICB0aGlzLmtleXVwU3Vic2NyaWJlID0ga2V5dXBPYnNlcnZhYmxlLnN1YnNjcmliZSh2YWx1ZSA9PiB7XG4gICAgICAgIGlmICh2YWx1ZS5sZW5ndGggPj0gdGhpcy5maWx0ZXJNaW5sZW5ndGggfHwgIXZhbHVlKSB7XG4gICAgICAgICAgdGhpcy5jb250cm9sQXBwbHlGaWx0ZXIodmFsdWUpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBjb250cm9sQXBwbHlGaWx0ZXIodmFsdWUpIHtcbiAgICBpZiAoXG4gICAgICAoIXRoaXMuaXNQcm9jZXNzaW5nVmFsdWVCeVRhYiAmJiAoIXRoaXMuc2VsZWN0ZWRPcHRpb24gfHwgdmFsdWUgIT09IHRoaXMuc2VsZWN0ZWRPcHRpb25bdGhpcy5keW5hbWljTGFiZWxdKSkgfHxcbiAgICAgICF0aGlzLmNhY2hlXG4gICAgKSB7XG4gICAgICB0aGlzLmRlZmF1bHRTZXJ2aWNlLmhhc05leHQgPSB0cnVlO1xuICAgICAgdGhpcy5wYWdlID0gdGhpcy5zZXRQYWdlKCk7XG4gICAgICB0aGlzLm9wdGlvbnMgPSBbXTtcbiAgICAgIHRoaXMuYXBwbHlGaWx0ZXIodmFsdWUsIHRydWUpO1xuICAgIH1cbiAgICB0aGlzLmlzUHJvY2Vzc2luZ1ZhbHVlQnlUYWIgPSBmYWxzZTtcbiAgfVxuXG4gIGFwcGx5RmlsdGVyKHZhbHVlOiBzdHJpbmcsIHJlc2V0OiBib29sZWFuID0gZmFsc2UpIHtcbiAgICBpZiAodGhpcy5kZWZhdWx0U2VydmljZS5oYXNOZXh0KSB7XG4gICAgICB0aGlzLmNvbnRyb2xDb21ib1Zpc2liaWxpdHkoZmFsc2UsIHJlc2V0KTtcbiAgICAgIHRoaXMuaXNTZXJ2ZXJTZWFyY2hpbmcgPSB0cnVlO1xuXG4gICAgICBjb25zdCBwYXJhbSA9IHRoaXMuaW5maW5pdGVTY3JvbGxcbiAgICAgICAgPyB7IHByb3BlcnR5OiB0aGlzLmZpZWxkTGFiZWwsIHZhbHVlLCBwYWdlOiB0aGlzLnBhZ2UsIHBhZ2VTaXplOiB0aGlzLnBhZ2VTaXplIH1cbiAgICAgICAgOiB7IHByb3BlcnR5OiB0aGlzLmZpZWxkTGFiZWwsIHZhbHVlIH07XG5cbiAgICAgIHRoaXMuZmlsdGVyU3Vic2NyaXB0aW9uID0gdGhpcy5zZXJ2aWNlLmdldEZpbHRlcmVkRGF0YShwYXJhbSwgdGhpcy5maWx0ZXJQYXJhbXMpLnN1YnNjcmliZShcbiAgICAgICAgaXRlbXMgPT4gdGhpcy5zZXRPcHRpb25zQnlBcHBseUZpbHRlcih2YWx1ZSwgaXRlbXMsIHJlc2V0KSxcbiAgICAgICAgZXJyb3IgPT4gdGhpcy5vbkVycm9yRmlsdGVyZWREYXRhKClcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgc2V0T3B0aW9uc0J5QXBwbHlGaWx0ZXIodmFsdWUsIGl0ZW1zLCByZXNldDogYm9vbGVhbiA9IGZhbHNlKSB7XG4gICAgdGhpcy5zaG91bGRNYXJrTGV0dGVycyA9IHRydWU7XG4gICAgdGhpcy5pc1NlcnZlclNlYXJjaGluZyA9IGZhbHNlO1xuICAgIHRoaXMuaW5maW5pdGVMb2FkaW5nID0gZmFsc2U7XG4gICAgdGhpcy5vcHRpb25zID0gdGhpcy5wcmVwYXJlT3B0aW9ucyhpdGVtcyk7XG5cbiAgICB0aGlzLnNlYXJjaEZvckxhYmVsKHZhbHVlLCBpdGVtcywgdGhpcy5maWx0ZXJNb2RlKTtcblxuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xuXG4gICAgdGhpcy5jb250cm9sQ29tYm9WaXNpYmlsaXR5KHRydWUsIHJlc2V0KTtcblxuICAgIGlmICh0aGlzLmlzRmlyc3RGaWx0ZXIpIHtcbiAgICAgIHRoaXMuaXNGaXJzdEZpbHRlciA9ICF0aGlzLmlzRmlyc3RGaWx0ZXI7XG5cbiAgICAgIHRoaXMuY2FjaGVPcHRpb25zID0gdGhpcy5jb21ib09wdGlvbnNMaXN0O1xuICAgIH1cbiAgfVxuXG4gIGdldE9iamVjdEJ5VmFsdWUodmFsdWUpIHtcbiAgICBpZiAodGhpcy5zZWxlY3RlZFZhbHVlICE9PSB2YWx1ZSAmJiB0aGlzLnNlbGVjdGVkT3B0aW9uPy5bdGhpcy5keW5hbWljTGFiZWxdICE9PSB2YWx1ZSkge1xuICAgICAgdGhpcy5pc1Byb2Nlc3NpbmdWYWx1ZUJ5VGFiID0gdHJ1ZTtcblxuICAgICAgdGhpcy5nZXRTdWJzY3JpcHRpb24gPSB0aGlzLnNlcnZpY2UuZ2V0T2JqZWN0QnlWYWx1ZSh2YWx1ZSwgdGhpcy5maWx0ZXJQYXJhbXMpLnN1YnNjcmliZShcbiAgICAgICAgaXRlbSA9PiB0aGlzLnVwZGF0ZU9wdGlvbkJ5RmlsdGVyZWRWYWx1ZShpdGVtKSxcbiAgICAgICAgZXJyb3IgPT4gdGhpcy5vbkVycm9yR2V0T2JqZWN0QnlWYWx1ZSgpXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIHVwZGF0ZU9wdGlvbkJ5RmlsdGVyZWRWYWx1ZShpdGVtKSB7XG4gICAgaWYgKGl0ZW0pIHtcbiAgICAgIHRoaXMub3B0aW9ucyA9IFtpdGVtXTtcbiAgICAgIHRoaXMub25PcHRpb25DbGljayhpdGVtKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy51cGRhdGVTZWxlY3RlZFZhbHVlKG51bGwpO1xuICAgIH1cblxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5pc1Byb2Nlc3NpbmdWYWx1ZUJ5VGFiID0gZmFsc2U7XG4gICAgfSwgdGhpcy5kZWJvdW5jZVRpbWUpO1xuICB9XG5cbiAgdG9nZ2xlQ29tYm9WaXNpYmlsaXR5KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuc2VydmljZSAmJiAhdGhpcy5kaXNhYmxlZEluaXRGaWx0ZXIpIHtcbiAgICAgIHRoaXMuYXBwbHlGaWx0ZXJJbkZpcnN0Q2xpY2soKTtcbiAgICB9XG5cbiAgICB0aGlzLmNvbnRyb2xDb21ib1Zpc2liaWxpdHkoIXRoaXMuY29tYm9PcGVuKTtcbiAgfVxuXG4gIGFwcGx5RmlsdGVySW5GaXJzdENsaWNrKCkge1xuICAgIGlmICh0aGlzLmlzRmlyc3RGaWx0ZXIgJiYgIXRoaXMuc2VsZWN0ZWRWYWx1ZSkge1xuICAgICAgdGhpcy5vcHRpb25zID0gW107XG4gICAgICBjb25zdCBzY3JvbGxpbmdDb250cm9sID0gdGhpcy5zZXRTY3JvbGxpbmdDb250cm9sKCk7XG4gICAgICB0aGlzLmFwcGx5RmlsdGVyKCcnLCBzY3JvbGxpbmdDb250cm9sKTtcbiAgICB9XG4gIH1cblxuICBjb250cm9sQ29tYm9WaXNpYmlsaXR5KHRvT3BlbjogYm9vbGVhbiwgcmVzZXQ6IGJvb2xlYW4gPSBmYWxzZSkge1xuICAgIHRvT3BlbiA/IHRoaXMub3BlbihyZXNldCkgOiB0aGlzLmNsb3NlKHJlc2V0KTtcbiAgfVxuXG4gIG9uQ2xvc2VDb21ibygpIHtcbiAgICB0aGlzLmNvbnRyb2xDb21ib1Zpc2liaWxpdHkoZmFsc2UpO1xuICAgIHRoaXMuaW5wdXRFbC5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gIH1cblxuICBvbk9wdGlvbkNsaWNrKG9wdGlvbjogUG9Db21ib09wdGlvbiB8IFBvQ29tYm9Hcm91cCwgZXZlbnQ/OiBhbnkpIHtcbiAgICBjb25zdCBpbnB1dFZhbHVlID0gdGhpcy5nZXRJbnB1dFZhbHVlKCk7XG4gICAgY29uc3QgaXNVcGRhdGVNb2RlbCA9XG4gICAgICBvcHRpb25bdGhpcy5keW5hbWljVmFsdWVdICE9PSB0aGlzLnNlbGVjdGVkVmFsdWUgfHxcbiAgICAgICEhKHRoaXMuc2VsZWN0ZWRWaWV3ICYmIGlucHV0VmFsdWUgIT09IHRoaXMuc2VsZWN0ZWRWaWV3W3RoaXMuZHluYW1pY0xhYmVsXSk7XG5cbiAgICBpZiAoZXZlbnQpIHtcbiAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIH1cblxuICAgIHRoaXMudXBkYXRlU2VsZWN0ZWRWYWx1ZShvcHRpb24sIGlzVXBkYXRlTW9kZWwpO1xuICAgIHRoaXMuY29udHJvbENvbWJvVmlzaWJpbGl0eShmYWxzZSk7XG4gICAgaWYgKCF0aGlzLnNlcnZpY2UpIHtcbiAgICAgIHRoaXMudXBkYXRlQ29tYm9MaXN0KFsuLi50aGlzLmNhY2hlU3RhdGljT3B0aW9uc10pO1xuICAgIH1cblxuICAgIHRoaXMucHJldmlvdXNTZWFyY2hWYWx1ZSA9IHRoaXMuc2VsZWN0ZWRWaWV3W3RoaXMuZHluYW1pY0xhYmVsXTtcbiAgfVxuXG4gIGNhbGN1bGF0ZVNjcm9sbFRvcChzZWxlY3RlZEl0ZW0sIGluZGV4KSB7XG4gICAgaWYgKCFzZWxlY3RlZEl0ZW0ubGVuZ3RoIHx8IGluZGV4IDw9IDEpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gc2VsZWN0ZWRJdGVtWzBdLm9mZnNldFRvcDtcbiAgICB9XG4gIH1cblxuICBnZXRJbnB1dFZhbHVlKCkge1xuICAgIHJldHVybiB0aGlzLmlucHV0RWwubmF0aXZlRWxlbWVudC52YWx1ZTtcbiAgfVxuXG4gIHNldElucHV0VmFsdWUodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuaW5wdXRFbC5uYXRpdmVFbGVtZW50LnZhbHVlID0gdmFsdWU7XG4gIH1cblxuICB3YXNDbGlja2VkT25Ub2dnbGUoZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoXG4gICAgICB0aGlzLmNvbWJvT3BlbiAmJlxuICAgICAgIXRoaXMuaW5wdXRFbC5uYXRpdmVFbGVtZW50LmNvbnRhaW5zKGV2ZW50LnRhcmdldCkgJiZcbiAgICAgICF0aGlzLmljb25FbGVtZW50Lm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoZXZlbnQudGFyZ2V0KSAmJlxuICAgICAgKCF0aGlzLmNvbnRlbnRFbGVtZW50IHx8ICF0aGlzLmNvbnRlbnRFbGVtZW50Lm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoZXZlbnQudGFyZ2V0KSlcbiAgICApIHtcbiAgICAgIC8vIEVzY29uZGUgQ29udGVudCBkbyBDb21ibyBxdWFuZG8gZm9yIGNsaWNhZG8gZm9yYVxuICAgICAgdGhpcy5jb250cm9sQ29tYm9WaXNpYmlsaXR5KGZhbHNlKTtcblxuICAgICAgdGhpcy52ZXJpZnlWYWxpZE9wdGlvbigpO1xuXG4gICAgICAvLyBjYXNvIGZvciBjaGFuZ2VPbkVudGVyIGRldmUgbGltcGFyIG8gc2VsZWN0ZWRWaWV3IHBhcmEgcmVpbmljaWEtbG9cbiAgICAgIHRoaXMuc2VsZWN0ZWRWaWV3ID0gdGhpcy5jaGFuZ2VPbkVudGVyICYmICF0aGlzLnNlbGVjdGVkVmFsdWUgPyB1bmRlZmluZWQgOiB0aGlzLnNlbGVjdGVkVmlldztcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKHRoaXMuc2VydmljZSAmJiAhdGhpcy5nZXRJbnB1dFZhbHVlKCkgJiYgIXRoaXMuaXNGaXJzdEZpbHRlcikge1xuICAgICAgICBjb25zdCBzY3JvbGxpbmdDb250cm9sID0gdGhpcy5zZXRTY3JvbGxpbmdDb250cm9sKCk7XG4gICAgICAgIHRoaXMuYXBwbHlGaWx0ZXIoJycsIHNjcm9sbGluZ0NvbnRyb2wpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGlzVmFsaWRDaGFyYWN0ZXJUb1NlYXJjaChrZXlDb2RlKSB7XG4gICAgcmV0dXJuIChcbiAgICAgIGtleUNvZGUgIT09IDkgJiYgLy8gdGFiXG4gICAgICBrZXlDb2RlICE9PSAxMyAmJiAvLyBlbnRldFxuICAgICAga2V5Q29kZSAhPT0gMTYgJiYgLy8gc2hpZnRcbiAgICAgIGtleUNvZGUgIT09IDE3ICYmIC8vIGN0cmxcbiAgICAgIGtleUNvZGUgIT09IDE4ICYmIC8vIGFsdFxuICAgICAga2V5Q29kZSAhPT0gMjAgJiYgLy8gY2Fwc2xvY2tcbiAgICAgIGtleUNvZGUgIT09IDI3ICYmIC8vIGVzY1xuICAgICAga2V5Q29kZSAhPT0gMzcgJiYgLy8gc2V0YVxuICAgICAga2V5Q29kZSAhPT0gMzggJiYgLy8gc2V0YVxuICAgICAga2V5Q29kZSAhPT0gMzkgJiYgLy8gc2V0YVxuICAgICAga2V5Q29kZSAhPT0gNDAgJiYgLy8gc2V0YVxuICAgICAga2V5Q29kZSAhPT0gOTNcbiAgICApOyAvLyB3aW5kb3dzIG1lbnVcbiAgfVxuXG4gIHNlYXJjaE9uRW50ZXIodmFsdWU6IHN0cmluZykge1xuICAgIGlmICh0aGlzLnNlcnZpY2UgJiYgIXRoaXMuc2VsZWN0ZWRWaWV3ICYmIHZhbHVlLmxlbmd0aCA+PSB0aGlzLmZpbHRlck1pbmxlbmd0aCkge1xuICAgICAgdGhpcy5jb250cm9sQXBwbHlGaWx0ZXIodmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIHNob3dNb3JlSW5maW5pdGVTY3JvbGwoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZGVmYXVsdFNlcnZpY2UuaGFzTmV4dCkge1xuICAgICAgdGhpcy5pbmZpbml0ZUxvYWRpbmcgPSB0cnVlO1xuICAgIH1cbiAgICB0aGlzLnBhZ2UrKztcbiAgICB0aGlzLmFwcGx5RmlsdGVyKCcnLCB0cnVlKTtcbiAgfVxuXG4gIHByaXZhdGUgYWRqdXN0Q29udGFpbmVyUG9zaXRpb24oKSB7XG4gICAgdGhpcy5jb250cm9sUG9zaXRpb24uYWRqdXN0UG9zaXRpb24ocG9Db21ib0NvbnRhaW5lclBvc2l0aW9uRGVmYXVsdCk7XG4gIH1cblxuICBwcml2YXRlIGNsb3NlKHJlc2V0OiBib29sZWFuKSB7XG4gICAgdGhpcy5jb21ib09wZW4gPSBmYWxzZTtcblxuICAgIGlmICghcmVzZXQpIHtcbiAgICAgIGlmICghdGhpcy5nZXRJbnB1dFZhbHVlKCkpIHtcbiAgICAgICAgdGhpcy5wYWdlID0gdGhpcy5zZXRQYWdlKCk7XG4gICAgICAgIHRoaXMuZGVmYXVsdFNlcnZpY2UuaGFzTmV4dCA9IHRydWU7XG4gICAgICB9XG4gICAgICBpZiAodGhpcy5pbmZpbml0ZVNjcm9sbCkge1xuICAgICAgICB0aGlzLm9wdGlvbnMgPSB0aGlzLnNldE9wdGlvbnMoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLmNoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcblxuICAgIHRoaXMuY29tYm9JY29uID0gJ3BvLWljb24tYXJyb3ctZG93bic7XG5cbiAgICB0aGlzLnJlbW92ZUxpc3RlbmVycygpO1xuXG4gICAgdGhpcy5pc0ZpbHRlcmluZyA9IGZhbHNlO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0aWFsaXplTGlzdGVuZXJzKCkge1xuICAgIHRoaXMucmVtb3ZlTGlzdGVuZXJzKCk7XG5cbiAgICB0aGlzLmNsaWNrb3V0TGlzdGVuZXIgPSB0aGlzLnJlbmRlcmVyLmxpc3RlbignZG9jdW1lbnQnLCAnY2xpY2snLCAoZXZlbnQ6IE1vdXNlRXZlbnQpID0+IHtcbiAgICAgIHRoaXMud2FzQ2xpY2tlZE9uVG9nZ2xlKGV2ZW50KTtcbiAgICB9KTtcblxuICAgIHRoaXMuZXZlbnRSZXNpemVMaXN0ZW5lciA9IHRoaXMucmVuZGVyZXIubGlzdGVuKCd3aW5kb3cnLCAncmVzaXplJywgKCkgPT4ge1xuICAgICAgLy8gdGltZW91dCBuZWNlc3NhcmlvIHBvaXMgYSBhbmltYcOnw6NvIGRvIHBvLW1lbnUgaW1wYWN0YSBubyBhanVzdGUgZGEgcG9zacOnw6NvIGRvIGNvbnRhaW5lci5cbiAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5hZGp1c3RDb250YWluZXJQb3NpdGlvbigpLCAyNTApO1xuICAgIH0pO1xuXG4gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIHRoaXMub25TY3JvbGwsIHRydWUpO1xuICB9XG5cbiAgcHJpdmF0ZSBvbkVycm9yR2V0T2JqZWN0QnlWYWx1ZSgpIHtcbiAgICB0aGlzLnVwZGF0ZU9wdGlvbkJ5RmlsdGVyZWRWYWx1ZShudWxsKTtcbiAgfVxuXG4gIHByaXZhdGUgb25TY3JvbGwgPSAoKTogdm9pZCA9PiB7XG4gICAgdGhpcy5hZGp1c3RDb250YWluZXJQb3NpdGlvbigpO1xuICB9O1xuXG4gIHByaXZhdGUgb25FcnJvckZpbHRlcmVkRGF0YSgpIHtcbiAgICB0aGlzLmlzU2VydmVyU2VhcmNoaW5nID0gZmFsc2U7XG5cbiAgICB0aGlzLnVwZGF0ZUNvbWJvTGlzdChbXSk7XG5cbiAgICB0aGlzLmNvbnRyb2xDb21ib1Zpc2liaWxpdHkodHJ1ZSk7XG4gIH1cblxuICBwcml2YXRlIG9wZW4ocmVzZXQ6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmNvbWJvT3BlbiA9IHRydWU7XG4gICAgaWYgKCFyZXNldCAmJiB0aGlzLmluZmluaXRlU2Nyb2xsKSB7XG4gICAgICBpZiAoIXRoaXMuZ2V0SW5wdXRWYWx1ZSgpKSB7XG4gICAgICAgIHRoaXMucGFnZSA9IDE7XG4gICAgICB9XG4gICAgICB0aGlzLm9wdGlvbnMgPSB0aGlzLnNldE9wdGlvbnMoKTtcbiAgICB9XG5cbiAgICB0aGlzLmNoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcblxuICAgIHRoaXMuY29tYm9JY29uID0gJ3BvLWljb24tYXJyb3ctdXAnO1xuXG4gICAgdGhpcy5pbml0aWFsaXplTGlzdGVuZXJzKCk7XG5cbiAgICB0aGlzLmlucHV0RWwubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgIHRoaXMuc2V0Q29udGFpbmVyUG9zaXRpb24oKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVtb3ZlTGlzdGVuZXJzKCkge1xuICAgIGlmICh0aGlzLmNsaWNrb3V0TGlzdGVuZXIpIHtcbiAgICAgIHRoaXMuY2xpY2tvdXRMaXN0ZW5lcigpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmV2ZW50UmVzaXplTGlzdGVuZXIpIHtcbiAgICAgIHRoaXMuZXZlbnRSZXNpemVMaXN0ZW5lcigpO1xuICAgIH1cblxuICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCdzY3JvbGwnLCB0aGlzLm9uU2Nyb2xsLCB0cnVlKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0Q29udGFpbmVyUG9zaXRpb24oKSB7XG4gICAgdGhpcy5jb250cm9sUG9zaXRpb24uc2V0RWxlbWVudHMoXG4gICAgICB0aGlzLmNvbnRhaW5lckVsZW1lbnQubmF0aXZlRWxlbWVudCxcbiAgICAgIHBvQ29tYm9Db250YWluZXJPZmZzZXQsXG4gICAgICB0aGlzLmlucHV0RWwsXG4gICAgICBbJ3RvcCcsICdib3R0b20nXSxcbiAgICAgIHRydWVcbiAgICApO1xuXG4gICAgdGhpcy5hZGp1c3RDb250YWluZXJQb3NpdGlvbigpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRPcHRpb25zKCkge1xuICAgIHJldHVybiB0aGlzLmdldElucHV0VmFsdWUoKSA/IHRoaXMub3B0aW9ucyA6IFtdO1xuICB9XG5cbiAgcHJpdmF0ZSBwcmVwYXJlT3B0aW9ucyhpdGVtcykge1xuICAgIHJldHVybiB0aGlzLmluZmluaXRlU2Nyb2xsID8gWy4uLnRoaXMub3B0aW9ucywgLi4uaXRlbXNdIDogaXRlbXM7XG4gIH1cblxuICBwcml2YXRlIHNldFBhZ2UoKSB7XG4gICAgcmV0dXJuIHRoaXMuaW5maW5pdGVTY3JvbGwgPyAxIDogdW5kZWZpbmVkO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRTY3JvbGxpbmdDb250cm9sKCkge1xuICAgIHJldHVybiB0aGlzLmluZmluaXRlU2Nyb2xsID8gdHJ1ZSA6IGZhbHNlO1xuICB9XG59XG4iLCI8cG8tZmllbGQtY29udGFpbmVyXG4gIFtwLWRpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgW3AtaWRdPVwiaWRcIlxuICBbcC1sYWJlbF09XCJsYWJlbFwiXG4gIFtwLW9wdGlvbmFsXT1cIm9wdGlvbmFsXCJcbiAgW3AtcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxuICBbcC1zaG93LXJlcXVpcmVkXT1cInNob3dSZXF1aXJlZFwiXG4+XG4gIDxkaXYgY2RrT3ZlcmxheU9yaWdpbiAjdHJpZ2dlcj1cImNka092ZXJsYXlPcmlnaW5cIiBjbGFzcz1cInBvLWZpZWxkLWNvbnRhaW5lci1jb250ZW50XCI+XG4gICAgPGRpdiAqbmdJZj1cImljb25cIiBjbGFzcz1cInBvLWZpZWxkLWljb24tY29udGFpbmVyLWxlZnRcIj5cbiAgICAgIDxwby1pY29uIGNsYXNzPVwicG8tZmllbGQtaWNvbiBwby1pY29uLWlucHV0XCIgW2NsYXNzLnBvLWZpZWxkLWljb24tZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiBbcC1pY29uXT1cImljb25cIj48L3BvLWljb24+XG4gICAgPC9kaXY+XG5cbiAgICA8aW5wdXRcbiAgICAgICNpbnBcbiAgICAgIGNsYXNzPVwicG8taW5wdXQgcG8tY29tYm8taW5wdXRcIlxuICAgICAgW25nQ2xhc3NdPVwiY2xlYW4gJiYgaW5wLnZhbHVlID8gJ3BvLWlucHV0LWRvdWJsZS1pY29uLXJpZ2h0JyA6ICdwby1pbnB1dC1pY29uLXJpZ2h0J1wiXG4gICAgICBbY2xhc3MucG8taW5wdXQtaWNvbi1sZWZ0XT1cImljb25cIlxuICAgICAgYXV0b2NvbXBsZXRlPVwib2ZmXCJcbiAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgIFthdHRyLm5hbWVdPVwibmFtZVwiXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgW2lkXT1cImlkXCJcbiAgICAgIFtwbGFjZWhvbGRlcl09XCJkaXNhYmxlZCA/ICcnIDogcGxhY2Vob2xkZXJcIlxuICAgICAgW3JlcXVpcmVkXT1cInJlcXVpcmVkXCJcbiAgICAgIChjbGljayk9XCJ0b2dnbGVDb21ib1Zpc2liaWxpdHkoKVwiXG4gICAgICAoa2V5dXApPVwib25LZXlVcCgkZXZlbnQpXCJcbiAgICAgIChibHVyKT1cIm9uQmx1cigpXCJcbiAgICAgIChrZXl1cC5lbnRlcik9XCJzZWFyY2hPbkVudGVyKCRldmVudC50YXJnZXQudmFsdWUpXCJcbiAgICAgIChrZXlkb3duKT1cIm9uS2V5RG93bigkZXZlbnQpXCJcbiAgICAvPlxuXG4gICAgPGRpdiBjbGFzcz1cInBvLWZpZWxkLWljb24tY29udGFpbmVyLXJpZ2h0XCI+XG4gICAgICA8cG8tY2xlYW5cbiAgICAgICAgY2xhc3M9XCJwby1pY29uLWlucHV0XCJcbiAgICAgICAgKm5nSWY9XCJjbGVhbiAmJiAhZGlzYWJsZWRcIlxuICAgICAgICAocC1jaGFuZ2UtZXZlbnQpPVwiY2xlYXIoJGV2ZW50KVwiXG4gICAgICAgIFtwLWVsZW1lbnQtcmVmXT1cImlucHV0RWxcIlxuICAgICAgPlxuICAgICAgPC9wby1jbGVhbj5cbiAgICAgIDxzcGFuXG4gICAgICAgICNpY29uQXJyb3dcbiAgICAgICAgY2xhc3M9XCJwby1pY29uIHBvLWZpZWxkLWljb24ge3sgY29tYm9JY29uIH19IHBvLWljb24taW5wdXRcIlxuICAgICAgICBbY2xhc3MucG8tZmllbGQtaWNvbi1kaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgIFtjbGFzcy5wby1maWVsZC1pY29uXT1cIiFkaXNhYmxlZFwiXG4gICAgICAgIChjbGljayk9XCJ0b2dnbGVDb21ib1Zpc2liaWxpdHkoKVwiXG4gICAgICA+XG4gICAgICA8L3NwYW4+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuXG4gIDxuZy10ZW1wbGF0ZSBjZGtDb25uZWN0ZWRPdmVybGF5IFtjZGtDb25uZWN0ZWRPdmVybGF5T3JpZ2luXT1cInRyaWdnZXJcIiBbY2RrQ29ubmVjdGVkT3ZlcmxheU9wZW5dPVwidHJ1ZVwiPlxuICAgIDxkaXYgI2NvbnRhaW5lckVsZW1lbnQgY2xhc3M9XCJwby1jb21iby1jb250YWluZXJcIiBbaGlkZGVuXT1cIiFjb21ib09wZW4gJiYgIWlzU2VydmVyU2VhcmNoaW5nXCI+XG4gICAgICA8cG8tbGlzdGJveFxuICAgICAgICAjcG9MaXN0Ym94XG4gICAgICAgICNjb250ZW50RWxlbWVudFxuICAgICAgICBwLXR5cGU9XCJvcHRpb25cIlxuICAgICAgICBbcC1pdGVtc109XCJ2aXNpYmxlT3B0aW9uc1wiXG4gICAgICAgIFtwLWZpZWxkLXZhbHVlXT1cImR5bmFtaWNWYWx1ZVwiXG4gICAgICAgIFtwLWZpZWxkLWxhYmVsXT1cImR5bmFtaWNMYWJlbFwiXG4gICAgICAgIFtwLXRlbXBsYXRlXT1cImNvbWJvT3B0aW9uVGVtcGxhdGVcIlxuICAgICAgICBbcC1zZWFyY2gtdmFsdWVdPVwiZ2V0SW5wdXRWYWx1ZSgpXCJcbiAgICAgICAgW3AtaW5maW5pdGUtbG9hZGluZ109XCJpbmZpbml0ZUxvYWRpbmdcIlxuICAgICAgICBbcC1pbmZpbml0ZS1zY3JvbGxdPVwiaW5maW5pdGVTY3JvbGxcIlxuICAgICAgICBbcC1maWx0ZXJpbmddPVwiaXNGaWx0ZXJpbmdcIlxuICAgICAgICBbcC1jYWNoZV09XCJjYWNoZVwiXG4gICAgICAgIChwLXNlbGVjdGNvbWJvLWl0ZW0pPVwib25PcHRpb25DbGljaygkZXZlbnQsICRldmVudC5ldmVudClcIlxuICAgICAgICBbcC1maWx0ZXItbW9kZV09XCJmaWx0ZXJNb2RlXCJcbiAgICAgICAgW3AtdmlzaWJsZV09XCJjb21ib09wZW5cIlxuICAgICAgICBbcC1pcy1zZWFyY2hpbmddPVwiaXNTZXJ2ZXJTZWFyY2hpbmdcIlxuICAgICAgICBbcC1zaG91bGQtbWFyay1sZXR0ZXJdPVwic2hvdWxkTWFya0xldHRlcnNcIlxuICAgICAgICBbcC1jb21wYXJlLWNhY2hlXT1cImNvbXBhcmVPYmplY3RzKGNhY2hlT3B0aW9ucywgdmlzaWJsZU9wdGlvbnMpXCJcbiAgICAgICAgW3AtY29tYm8tc2VydmljZV09XCJzZXJ2aWNlXCJcbiAgICAgICAgW3AtaW5maW5pdGUtc2Nyb2xsLWRpc3RhbmNlXT1cImluZmluaXRlU2Nyb2xsRGlzdGFuY2VcIlxuICAgICAgICAocC11cGRhdGUtaW5maW5pdGUtc2Nyb2xsKT1cInNob3dNb3JlSW5maW5pdGVTY3JvbGwoKVwiXG4gICAgICAgIChwLWNsb3NlKT1cIm9uQ2xvc2VDb21ibygpXCJcbiAgICAgID48L3BvLWxpc3Rib3g+XG4gICAgPC9kaXY+XG4gIDwvbmctdGVtcGxhdGU+XG4gIDxwby1maWVsZC1jb250YWluZXItYm90dG9tIFtwLWhlbHBdPVwiaGVscFwiIFtwLWRpc2FibGVkXT1cImRpc2FibGVkXCI+PC9wby1maWVsZC1jb250YWluZXItYm90dG9tPlxuPC9wby1maWVsZC1jb250YWluZXI+XG4iXX0=
|
package/esm2022/lib/components/po-field/po-datepicker/enums/po-datepicker-iso-format.enum.mjs
CHANGED
|
@@ -14,4 +14,4 @@ export var PoDatepickerIsoFormat;
|
|
|
14
14
|
/** Padrão **E8601DZw** (*yyyy-mm-ddThh:mm:ss+|-hh:mm*). */
|
|
15
15
|
PoDatepickerIsoFormat["Extended"] = "extended";
|
|
16
16
|
})(PoDatepickerIsoFormat || (PoDatepickerIsoFormat = {}));
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tZGF0ZXBpY2tlci1pc28tZm9ybWF0LmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2NvbXBvbmVudHMvcG8tZmllbGQvcG8tZGF0ZXBpY2tlci9lbnVtcy9wby1kYXRlcGlja2VyLWlzby1mb3JtYXQuZW51bS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sQ0FBTixJQUFZLHFCQU1YO0FBTkQsV0FBWSxxQkFBcUI7SUFDL0IsMENBQTBDO0lBQzFDLHdDQUFlLENBQUE7SUFFZiwyREFBMkQ7SUFDM0QsOENBQXFCLENBQUE7QUFDdkIsQ0FBQyxFQU5XLHFCQUFxQixLQUFyQixxQkFBcUIsUUFNaEMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEB1c2VkQnkgUG9EYXRlcGlja2VyQ29tcG9uZW50XG4gKlxuICogQGRlc2NyaXB0aW9uXG4gKlxuICogKkVudW0qIHF1ZSBkZWZpbmUgbyBwYWRyw6NvIGRlIGZvcm1hdGHDp8OjbyBkYXMgZGF0YXMuXG4gKlxuICogPiBDYXNvIHVtIGZvcm1hdG8gcGFkcsOjbyBzZWphIGRlZmluaWRvLCBvIG1lc21vIG7Do28gc2Vyw6EgbWFpcyBhbHRlcmFkbyBkZSBhY29yZG8gY29tIG8gZm9ybWF0byBkZSBlbnRyYWRhLlxuICovXG5leHBvcnQgZW51bSBQb0RhdGVwaWNrZXJJc29Gb3JtYXQge1xuICAvKiogUGFkcsOjbyAqKkU4NjAxREF3KiogKCp5eXl5LW1tLWRkKikuICovXG4gIEJhc2ljID0gJ2Jhc2ljJyxcblxuICAvKiogUGFkcsOjbyAqKkU4NjAxRFp3KiogKCp5eXl5LW1tLWRkVGhoOm1tOnNzK3wtaGg6bW0qKS4gKi9cbiAgRXh0ZW5kZWQgPSAnZXh0ZW5kZWQnXG59XG4iXX0=
|