@po-ui/ng-components 16.0.0 → 16.2.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 +11 -11
- 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 +3 -3
- 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 +6 -6
- 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 +5 -5
- 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 +263 -223
- package/fesm2022/po-ui-ng-components.mjs.map +1 -1
- package/lib/components/po-field/po-checkbox-group/po-checkbox-group.component.d.ts +4 -3
- 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.2.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
|
@@ -487,4 +487,4 @@ export class PoDatepickerBaseComponent {
|
|
|
487
487
|
type: Input,
|
|
488
488
|
args: ['p-locale']
|
|
489
489
|
}] }); })();
|
|
490
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tZGF0ZXBpY2tlci1iYXNlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1maWVsZC9wby1kYXRlcGlja2VyL3BvLWRhdGVwaWNrZXItYmFzZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUcvRSxPQUFPLEVBQ0wsb0JBQW9CLEVBQ3BCLHdCQUF3QixFQUN4QixnQkFBZ0IsRUFDaEIsZ0JBQWdCLEVBQ2hCLFVBQVUsRUFDVixRQUFRLEVBQ1Isc0JBQXNCLEVBQ3RCLGlCQUFpQixFQUNqQixpQkFBaUIsRUFDbEIsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUU3RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFFckYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7OztBQUU5RSxNQUFNLHlCQUF5QixHQUFXLFlBQVksQ0FBQztBQUV2RDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F5Q0c7QUFFSCxNQUFNLE9BQWdCLHlCQUF5QjtJQXFTdkI7SUFwU3RCOzs7Ozs7Ozs7O09BVUc7SUFDNEQsU0FBUyxHQUFZLEtBQUssQ0FBQztJQUUxRixvQ0FBb0M7SUFDckIsSUFBSSxDQUFTO0lBRTVCOzs7Ozs7Ozs7Ozs7T0FZRztJQUNrQixRQUFRLENBQVU7SUFFdkM7Ozs7T0FJRztJQUN1QixZQUFZLEdBQVksRUFBRSxDQUFDO0lBRXJEOzs7Ozs7T0FNRztJ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TUFBTTtrQkFBNUIsS0FBSzttQkFBQyxVQUFVO1lBK0JVLFNBQVM7a0JBQW5DLEtBQUs7bUJBQUMsY0FBYztZQXNCRSxNQUFNO2tCQUE1QixLQUFLO21CQUFDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgQ29udHJvbFZhbHVlQWNjZXNzb3IsIFZhbGlkYXRvciB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbmltcG9ydCB7XHJcbiAgY29udmVydERhdGVUb0lTT0RhdGUsXHJcbiAgY29udmVydERhdGVUb0lTT0V4dGVuZGVkLFxyXG4gIGNvbnZlcnRJc29Ub0RhdGUsXHJcbiAgY29udmVydFRvQm9vbGVhbixcclxuICBmb3JtYXRZZWFyLFxyXG4gIGlzVHlwZW9mLFxyXG4gIHJlcGxhY2VGb3JtYXRTZXBhcmF0b3IsXHJcbiAgc2V0WWVhckZyb20wVG8xMDAsXHJcbiAgdmFsaWRhdGVEYXRlUmFuZ2VcclxufSBmcm9tICcuLi8uLi8uLi91dGlscy91dGlsJztcclxuaW1wb3J0IHsgUG9NYXNrIH0gZnJvbSAnLi4vcG8taW5wdXQvcG8tbWFzayc7XHJcbmltcG9ydCB7IGRhdGVGYWlsZWQsIHJlcXVpcmVkRmFpbGVkIH0gZnJvbSAnLi8uLi92YWxpZGF0b3JzJztcclxuXHJcbmltcG9ydCB7IHBvTG9jYWxlRGVmYXVsdCB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3BvLWxhbmd1YWdlL3BvLWxhbmd1YWdlLmNvbnN0YW50JztcclxuaW1wb3J0IHsgUG9MYW5ndWFnZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9wby1sYW5ndWFnZS9wby1sYW5ndWFnZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgUG9EYXRlcGlja2VySXNvRm9ybWF0IH0gZnJvbSAnLi9lbnVtcy9wby1kYXRlcGlja2VyLWlzby1mb3JtYXQuZW51bSc7XHJcblxyXG5jb25zdCBwb0RhdGVwaWNrZXJGb3JtYXREZWZhdWx0OiBzdHJpbmcgPSAnZGQvbW0veXl5eSc7XHJcblxyXG4vKipcclxuICogQGRlc2NyaXB0aW9uXHJcbiAqXHJcbiAqIE8gYHBvLWRhdGVwaWNrZXJgIMOpIHVtIGNvbXBvbmVudGUgZXNwZWPDrWZpY28gcGFyYSBtYW5pcHVsYcOnw6NvIGRlIGRhdGFzIHBlcm1pdGluZG8gYSBkaWdpdGHDp8OjbyBlIC8gb3Ugc2VsZcOnw6NvLlxyXG4gKlxyXG4gKiBPIGZvcm1hdG8gZGUgZXhpYmnDp8OjbyBkYSBkYXRhLCBvdSBzZWphLCBvIGZvcm1hdG8gcXVlIMOpIGFwcmVzZW50YWRvIGFvIHVzdcOhcmlvIMOpIG8gZGQvbW0veXl5eSxcclxuICogbWFzIHBvZGVtIHNlciBkZWZpbmlkb3Mgb3V0cm9zIHBhZHLDtWVzICh2ZWphIG1haXMgbmEgcHJvcHJpZWRhZGUgYHAtZm9ybWF0YCkuXHJcbiAqXHJcbiAqIE8gaWRpb21hIHBhZHLDo28gZG8gY2FsZW5kw6FyaW8gc2Vyw6EgZXhpYmlkbyBkZSBhY29yZG8gY29tIG8gbmF2ZWdhZG9yLCBjYXNvIHRlbmhhIG5lY2Vzc2lkYWRlIGRlIGFsdGVyYXJcclxuICogdXNlIGEgcHJvcHJpZWRhZGUgYHAtbG9jYWxlYC5cclxuICpcclxuICogTyBkYXRlcGlja2VyIGFjZWl0YSB0csOqcyBmb3JtYXRvcyBkZSBkYXRhOiBvIEU4NjAxRFp3ICh5eXl5LW1tLWRkVGhoOm1tOnNzK3wtaGg6bW0pLCBvIEU4NjAxREF3ICh5eXl5LW1tLWRkKSBlIG9cclxuICogRGF0ZSBwYWRyw6NvIGRvIEphdmFzY3JpcHQuXHJcbiAqXHJcbiAqID4gUG9yIHBhZHLDo28sIG8gZm9ybWF0byBkZSBzYcOtZGEgZG8gKm1vZGVsKiBzZSBhanVzdGFyw6EgY29uZm9ybWUgbyBmb3JtYXRvIGRlIGVudHJhZGEuIFNlIHBvciBhY2FzbyBwcmVjaXNhciBjb250cm9sYXIgbyB2YWxvciBkZSBzYcOtZGEsXHJcbiAqIGEgcHJvcHJpZWRhZGUgYHAtaXNvLWZvcm1hdGAgcHJvdsOqIGVzc2UgY29udHJvbGUgaW5kZXBlbmRlbnRlbWVudGUgZG8gZm9ybWF0byBkZSBlbnRyYWRhLiBWZWphIGFiYWl4byBvcyBmb3JtYXRvcyBkaXNwb27DrXZlaXM6XHJcbiAqXHJcbiAqIC0gRm9ybWF0byBkZSBlbnRyYWRhIGUgc2HDrWRhIChFODYwMURadykgLSBgJzIwMTctMTEtMjhUMDA6MDA6MDAtMDI6MDAnYDtcclxuICpcclxuICogLSBGb3JtYXRvIGRlIGVudHJhZGEgZSBzYcOtZGEgKEU4NjAxREF3KSAtIGAnMjAxNy0xMS0yOCdgO1xyXG4gKlxyXG4gKiAtIEZvcm1hdG8gZGUgZW50cmFkYSAoRGF0ZSkgLSBgbmV3IERhdGUoMjAxNywgMTAsIDI4KWAgZSBzYcOtZGEgKEU4NjAxREF3KSAtIGAnMjAxNy0xMS0yOCdgO1xyXG4gKlxyXG4gKiAqKkltcG9ydGFudGU6KipcclxuICpcclxuICogLSBQYXJhIHV0aWxpemFyIGRhdGFzIGNvbSBhbm8gaW5mZXJpb3IgYSAxMDAsIHZlcmlmaWNhciBvIGNvbXBvcnRhbWVudG8gZG8gW2BuZXcgRGF0ZWBdKGh0dHBzOi8vd3d3Lnczc2Nob29scy5jb20vanMvanNfZGF0ZXMuYXNwKVxyXG4gKiBlIHV0aWxpemFyIG8gbcOpdG9kbyBbYHNldEZ1bGxZZWFyYF0oaHR0cHM6Ly93d3cudzNzY2hvb2xzLmNvbS9qc3JlZi9qc3JlZl9zZXRmdWxseWVhci5hc3ApLlxyXG4gKiAtIENhc28gYSBkYXRhIGVzdGVqYSBpbnbDoWxpZGEsIG8gYG1vZGVsYCByZWNlYmVyw6EgKionRGF0YSBpbnbDoWxpZGEnKiouXHJcbiAqIC0gQ2FzbyBvIGBpbnB1dGAgZXN0ZWphIHBhc3NhbmRvIHVtIGBbKG5nTW9kZWwpXWAsIG1hcyBuw6NvIHRlbmhhIHVtIGBuYW1lYCwgZW50w6NvIGlyw6Egb2NvcnJlciB1bSBlcnJvXHJcbiAqIGRvIHByw7NwcmlvIEFuZ3VsYXIgKGBbbmdNb2RlbE9wdGlvbnNdPVwie3N0YW5kYWxvbmU6IHRydWV9XCJgKS5cclxuICpcclxuICogRXhlbXBsbzpcclxuICpcclxuICogYGBgXHJcbiAqIDxwby1kYXRlcGlja2VyXHJcbiAqICAgWyhuZ01vZGVsKV09XCJwZXNzb2Eubm9tZVwiXHJcbiAqICAgW25nTW9kZWxPcHRpb25zXT1cIntzdGFuZGFsb25lOiB0cnVlfVwiXHJcbiAqIDwvcG8tZGF0ZXBpY2tlcj5cclxuICogYGBgXHJcbiAqXHJcbiAqID4gTsOjbyBlc3F1ZcOnYSBkZSBpbXBvcnRhciBvIGBGb3Jtc01vZHVsZWAgZW0gc2V1IG3Ds2R1bG8sIHRhbCBjb21vIHBhcmEgdXRpbGl6YXIgbyBgaW5wdXQgZGVmYXVsdGAuXHJcbiAqL1xyXG5ARGlyZWN0aXZlKClcclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFBvRGF0ZXBpY2tlckJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgT25Jbml0LCBWYWxpZGF0b3Ige1xyXG4gIC8qKlxyXG4gICAqIEBvcHRpb25hbFxyXG4gICAqXHJcbiAgICogQGRlc2NyaXB0aW9uXHJcbiAgICpcclxuICAgKiBBcGxpY2EgZm9jbyBubyBlbGVtZW50byBhbyBzZXIgaW5pY2lhZG8uXHJcbiAgICpcclxuICAgKiA+IENhc28gbWFpcyBkZSB1bSBlbGVtZW50byBzZWphIGNvbmZpZ3VyYWRvIGNvbSBlc3NhIHByb3ByaWVkYWRlLCBhcGVuYXMgbyDDumx0aW1vIGVsZW1lbnRvIGRlY2xhcmFkbyBjb20gZWxhIHRlcsOhIG8gZm9jby5cclxuICAgKlxyXG4gICAqIEBkZWZhdWx0IGBmYWxzZWBcclxuICAgKi9cclxuICBASW5wdXQoeyBhbGlhczogJ3AtYXV0by1mb2N1cycsIHRyYW5zZm9ybTogY29udmVydFRvQm9vbGVhbiB9KSBhdXRvRm9jdXM6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgLyogTm9tZSBkbyBjb21wb25lbnRlIGRhdGVwaWNrZXIuICovXHJcbiAgQElucHV0KCduYW1lJykgbmFtZTogc3RyaW5nO1xyXG5cclxuICAvKipcclxuICAgKiBAb3B0aW9uYWxcclxuICAgKlxyXG4gICAqIEBkZXNjcmlwdGlvblxyXG4gICAqXHJcbiAgICogRGVmaW5lIHNlIGEgaW5kaWNhw6fDo28gZGUgY2FtcG8gb3BjaW9uYWwgc2Vyw6EgZXhpYmlkYS5cclxuICAgKlxyXG4gICAqID4gTsOjbyBzZXLDoSBleGliaWRhIGEgaW5kaWNhw6fDo28gc2U6XHJcbiAgICogLSBPIGNhbXBvIGNvbnRlciBgcC1yZXF1aXJlZGA7XHJcbiAgICogLSBOw6NvIHBvc3N1aXIgYHAtaGVscGAgZS9vdSBgcC1sYWJlbGAuXHJcbiAgICpcclxuICAgKiBAZGVmYXVsdCBgZmFsc2VgXHJcbiAgICovXHJcbiAgQElucHV0KCdwLW9wdGlvbmFsJykgb3B0aW9uYWw6IGJvb2xlYW47XHJcblxyXG4gIC8qKlxyXG4gICAqIE1lbnNhZ2VtIGFwcmVzZW50YWRhIHF1YW5kbyBhIGRhdGEgZm9yIGludsOhbGlkYSBvdSBmb3JhIGRvIHBlcsOtb2RvLlxyXG4gICAqXHJcbiAgICogPiBFc3RhIG1lbnNhZ2VtIG7Do28gw6kgYXByZXNlbnRhZGEgcXVhbmRvIG8gY2FtcG8gZXN0aXZlciB2YXppbywgbWVzbW8gcXVlIGVsZSBzZWphIG9icmlnYXTDs3Jpby5cclxuICAgKi9cclxuICBASW5wdXQoJ3AtZXJyb3ItcGF0dGVybicpIGVycm9yUGF0dGVybj86IHN0cmluZyA9ICcnO1xyXG5cclxuICAvKipcclxuICAgKiBAb3B0aW9uYWxcclxuICAgKlxyXG4gICAqIEBkZXNjcmlwdGlvblxyXG4gICAqXHJcbiAgICogRXZlbnRvIGRpc3BhcmFkbyBhbyBzYWlyIGRvIGNhbXBvLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoJ3AtYmx1cicpIG9uYmx1cjogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuXHJcbiAgLyoqXHJcbiAgICogQG9wdGlvbmFsXHJcbiAgICpcclxuICAgKiBAZGVzY3JpcHRpb25cclxuICAgKlxyXG4gICAqIEV2ZW50byBkaXNwYXJhZG8gYW8gYWx0ZXJhciB2YWxvciBkbyBjYW1wby5cclxuICAgKi9cclxuICBAT3V0cHV0KCdwLWNoYW5nZScpIG9uY2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cclxuICBvZmZzZXQ6IG51bWJlcjtcclxuICBwcm90ZWN0ZWQgZmlyc3RTdGFydCA9IHRydWU7XHJcbiAgcHJvdGVjdGVkIGhvdXI6IHN0cmluZyA9ICdUMDA6MDA6MDAtMDA6MDAnO1xyXG4gIHByb3RlY3RlZCBpc0V4dGVuZGVkSVNPOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHJvdGVjdGVkIG9iak1hc2s6IGFueTtcclxuICBwcm90ZWN0ZWQgb25DaGFuZ2VNb2RlbDogYW55ID0gbnVsbDtcclxuICBwcm90ZWN0ZWQgdmFsaWRhdG9yQ2hhbmdlOiBhbnk7XHJcbiAgcHJvdGVjdGVkIG9uVG91Y2hlZE1vZGVsOiBhbnkgPSBudWxsO1xyXG4gIHByb3RlY3RlZCBzaG9ydExhbmd1YWdlOiBzdHJpbmc7XHJcblxyXG4gIHByaXZhdGUgX2Zvcm1hdD86IHN0cmluZyA9IHBvRGF0ZXBpY2tlckZvcm1hdERlZmF1bHQ7XHJcbiAgcHJpdmF0ZSBfaXNvRm9ybWF0OiBQb0RhdGVwaWNrZXJJc29Gb3JtYXQ7XHJcbiAgcHJpdmF0ZSBfbWF4RGF0ZTogRGF0ZTtcclxuICBwcml2YXRlIF9taW5EYXRlOiBEYXRlO1xyXG4gIHByaXZhdGUgX25vQXV0b2NvbXBsZXRlPzogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHByaXZhdGUgX3BsYWNlaG9sZGVyPzogc3RyaW5nID0gJyc7XHJcbiAgcHJpdmF0ZSBwcmV2aW91c1ZhbHVlOiBhbnk7XHJcbiAgcHJpdmF0ZSBfZGF0ZTogRGF0ZTtcclxuXHJcbiAgLyoqXHJcbiAgICogQG9wdGlvbmFsXHJcbiAgICpcclxuICAgKiBAZGVzY3JpcHRpb25cclxuICAgKlxyXG4gICAqIERlZmluZSBhIHByb3ByaWVkYWRlIG5hdGl2YSBgYXV0b2NvbXBsZXRlYCBkbyBjYW1wbyBjb21vIGBvZmZgLlxyXG4gICAqXHJcbiAgICogQGRlZmF1bHQgYGZhbHNlYFxyXG4gICAqL1xyXG4gIEBJbnB1dCgncC1uby1hdXRvY29tcGxldGUnKSBzZXQgbm9BdXRvY29tcGxldGUodmFsdWU6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMuX25vQXV0b2NvbXBsZXRlID0gY29udmVydFRvQm9vbGVhbih2YWx1ZSk7XHJcbiAgfVxyXG5cclxuICBnZXQgbm9BdXRvY29tcGxldGUoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5fbm9BdXRvY29tcGxldGU7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBAb3B0aW9uYWxcclxuICAgKlxyXG4gICAqIEBkZXNjcmlwdGlvblxyXG4gICAqXHJcbiAgICogTWVuc2FnZW0gcXVlIGFwYXJlY2Vyw6EgZW5xdWFudG8gbyBjYW1wbyBuw6NvIGVzdGl2ZXIgcHJlZW5jaGlkby5cclxuICAgKi9cclxuICBASW5wdXQoJ3AtcGxhY2Vob2xkZXInKSBzZXQgcGxhY2Vob2xkZXIocGxhY2Vob2xkZXI6IHN0cmluZykge1xyXG4gICAgdGhpcy5fcGxhY2Vob2xkZXIgPSBpc1R5cGVvZihwbGFjZWhvbGRlciwgJ3N0cmluZycpID8gcGxhY2Vob2xkZXIgOiAnJztcclxuICB9XHJcblxyXG4gIGdldCBwbGFjZWhvbGRlcigpIHtcclxuICAgIHJldHVybiB0aGlzLl9wbGFjZWhvbGRlcjtcclxuICB9XHJcblxyXG4gIC8qKiBEZXNhYmlsaXRhIG8gY2FtcG8uICovXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9tZW1iZXItb3JkZXJpbmdcclxuICBkaXNhYmxlZD86IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoJ3AtZGlzYWJsZWQnKSBzZXQgc2V0RGlzYWJsZWQoZGlzYWJsZWQ6IHN0cmluZykge1xyXG4gICAgdGhpcy5kaXNhYmxlZCA9IGRpc2FibGVkID09PSAnJyA/IHRydWUgOiBjb252ZXJ0VG9Cb29sZWFuKGRpc2FibGVkKTtcclxuXHJcbiAgICB0aGlzLnZhbGlkYXRlTW9kZWwoY29udmVydERhdGVUb0lTT0V4dGVuZGVkKHRoaXMuZGF0ZSwgdGhpcy5ob3VyKSk7XHJcbiAgfVxyXG5cclxuICAvKiogVG9ybmEgbyBlbGVtZW50byBzb21lbnRlIGxlaXR1cmEuICovXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9tZW1iZXItb3JkZXJpbmdcclxuICByZWFkb25seT86IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoJ3AtcmVhZG9ubHknKSBzZXQgc2V0UmVhZG9ubHkocmVhZG9ubHk6IHN0cmluZykge1xyXG4gICAgdGhpcy5yZWFkb25seSA9IHJlYWRvbmx5ID09PSAnJyA/IHRydWUgOiBjb252ZXJ0VG9Cb29sZWFuKHJlYWRvbmx5KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEBvcHRpb25hbFxyXG4gICAqXHJcbiAgICogQGRlc2NyaXB0aW9uXHJcbiAgICpcclxuICAgKiBEZWZpbmUgcXVlIG8gY2FtcG8gc2Vyw6Egb2JyaWdhdMOzcmlvLlxyXG4gICAqXHJcbiAgICogQGRlZmF1bHQgYGZhbHNlYFxyXG4gICAqL1xyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbWVtYmVyLW9yZGVyaW5nXHJcbiAgcmVxdWlyZWQ/OiBib29sZWFuID0gZmFsc2U7XHJcbiAgQElucHV0KCdwLXJlcXVpcmVkJykgc2V0IHNldFJlcXVpcmVkKHJlcXVpcmVkOiBzdHJpbmcpIHtcclxuICAgIHRoaXMucmVxdWlyZWQgPSByZXF1aXJlZCA9PT0gJycgPyB0cnVlIDogY29udmVydFRvQm9vbGVhbihyZXF1aXJlZCk7XHJcblxyXG4gICAgdGhpcy52YWxpZGF0ZU1vZGVsKGNvbnZlcnREYXRlVG9JU09FeHRlbmRlZCh0aGlzLmRhdGUsIHRoaXMuaG91cikpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRGVmaW5lIHNlIGEgaW5kaWNhw6fDo28gZGUgY2FtcG8gb2JyaWdhdMOzcmlvIHNlcsOhIGV4aWJpZGEuXHJcbiAgICpcclxuICAgKiA+IE7Do28gc2Vyw6EgZXhpYmlkYSBhIGluZGljYcOnw6NvIHNlOlxyXG4gICAqIC0gTsOjbyBwb3NzdWlyIGBwLWhlbHBgIGUvb3UgYHAtbGFiZWxgLlxyXG4gICAqL1xyXG4gIEBJbnB1dCgncC1zaG93LXJlcXVpcmVkJykgc2hvd1JlcXVpcmVkOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIC8qKiBIYWJpbGl0YSBhw6fDo28gcGFyYSBsaW1wYXIgbyBjYW1wby4gKi9cclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L21lbWJlci1vcmRlcmluZ1xyXG4gIGNsZWFuPzogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgncC1jbGVhbicpIHNldCBzZXRDbGVhbihjbGVhbjogc3RyaW5nKSB7XHJcbiAgICB0aGlzLmNsZWFuID0gY2xlYW4gPT09ICcnID8gdHJ1ZSA6IGNvbnZlcnRUb0Jvb2xlYW4oY2xlYW4pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQG9wdGlvbmFsXHJcbiAgICpcclxuICAgKiBAZGVzY3JpcHRpb25cclxuICAgKlxyXG4gICAqIERlZmluZSB1bWEgZGF0YSBtw61uaW1hIHBhcmEgbyBgcG8tZGF0ZXBpY2tlcmAuXHJcbiAgICovXHJcbiAgQElucHV0KCdwLW1pbi1kYXRlJykgc2V0IG1pbkRhdGUodmFsdWU6IHN0cmluZyB8IERhdGUpIHtcclxuICAgIGlmICh2YWx1ZSBpbnN0YW5jZW9mIERhdGUpIHtcclxuICAgICAgY29uc3QgeWVhciA9IHZhbHVlLmdldEZ1bGxZZWFyKCk7XHJcblxyXG4gICAgICBjb25zdCBkYXRlID0gbmV3IERhdGUoeWVhciwgdmFsdWUuZ2V0TW9udGgoKSwgdmFsdWUuZ2V0RGF0ZSgpLCAwLCAwLCAwKTtcclxuICAgICAgc2V0WWVhckZyb20wVG8xMDAoZGF0ZSwgeWVhcik7XHJcblxyXG4gICAgICB0aGlzLl9taW5EYXRlID0gZGF0ZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuX21pbkRhdGUgPSBjb252ZXJ0SXNvVG9EYXRlKHZhbHVlLCB0cnVlLCBmYWxzZSk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy52YWxpZGF0ZU1vZGVsKGNvbnZlcnREYXRlVG9JU09FeHRlbmRlZCh0aGlzLmRhdGUsIHRoaXMuaG91cikpO1xyXG4gIH1cclxuXHJcbiAgZ2V0IG1pbkRhdGUoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5fbWluRGF0ZTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEBvcHRpb25hbFxyXG4gICAqXHJcbiAgICogQGRlc2NyaXB0aW9uXHJcbiAgICpcclxuICAgKiBEZWZpbmUgdW1hIGRhdGEgbcOheGltYSBwYXJhIG8gYHBvLWRhdGVwaWNrZXJgLlxyXG4gICAqL1xyXG4gIEBJbnB1dCgncC1tYXgtZGF0ZScpIHNldCBtYXhEYXRlKHZhbHVlOiBzdHJpbmcgfCBEYXRlKSB7XHJcbiAgICBpZiAodmFsdWUgaW5zdGFuY2VvZiBEYXRlKSB7XHJcbiAgICAgIGNvbnN0IHllYXIgPSB2YWx1ZS5nZXRGdWxsWWVhcigpO1xyXG5cclxuICAgICAgY29uc3QgZGF0ZSA9IG5ldyBEYXRlKHllYXIsIHZhbHVlLmdldE1vbnRoKCksIHZhbHVlLmdldERhdGUoKSwgMjMsIDU5LCA1OSk7XHJcbiAgICAgIHNldFllYXJGcm9tMFRvMTAwKGRhdGUsIHllYXIpO1xyXG5cclxuICAgICAgdGhpcy5fbWF4RGF0ZSA9IGRhdGU7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLl9tYXhEYXRlID0gY29udmVydElzb1RvRGF0ZSh2YWx1ZSwgZmFsc2UsIHRydWUpO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMudmFsaWRhdGVNb2RlbChjb252ZXJ0RGF0ZVRvSVNPRXh0ZW5kZWQodGhpcy5kYXRlLCB0aGlzLmhvdXIpKTtcclxuICB9XHJcblxyXG4gIGdldCBtYXhEYXRlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuX21heERhdGU7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBAb3B0aW9uYWxcclxuICAgKlxyXG4gICAqIEBkZXNjcmlwdGlvblxyXG4gICAqXHJcbiAgICogRm9ybWF0byBkZSBleGliacOnw6NvIGRhIGRhdGEuXHJcbiAgICpcclxuICAgKiBWYWxvcmVzIHbDoWxpZG9zOlxyXG4gICAqICAtIGBkZC9tbS95eXl5YFxyXG4gICAqICAtIGBtbS9kZC95eXl5YFxyXG4gICAqICAtIGB5eXl5L21tL2RkYFxyXG4gICAqXHJcbiAgICogQGRlZmF1bHQgYGRkL21tL3l5eXlgXHJcbiAgICovXHJcbiAgQElucHV0KCdwLWZvcm1hdCcpIHNldCBmb3JtYXQodmFsdWU6IHN0cmluZykge1xyXG4gICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgIHZhbHVlID0gdmFsdWUudG9Mb3dlckNhc2UoKTtcclxuICAgICAgaWYgKHZhbHVlLm1hdGNoKC9kZC8pICYmIHZhbHVlLm1hdGNoKC9tbS8pICYmIHZhbHVlLm1hdGNoKC95eXl5LykpIHtcclxuICAgICAgICB0aGlzLl9mb3JtYXQgPSB2YWx1ZTtcclxuICAgICAgICB0aGlzLm9iak1hc2sgPSB0aGlzLmJ1aWxkTWFzayhcclxuICAgICAgICAgIHJlcGxhY2VGb3JtYXRTZXBhcmF0b3IodGhpcy5mb3JtYXQsIHRoaXMubGFuZ3VhZ2VTZXJ2aWNlLmdldERhdGVTZXBhcmF0b3IodGhpcy5sb2NhbGUpKVxyXG4gICAgICAgICk7XHJcbiAgICAgICAgdGhpcy5yZWZyZXNoVmFsdWUodGhpcy5kYXRlKTtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHRoaXMuX2Zvcm1hdCA9IHBvRGF0ZXBpY2tlckZvcm1hdERlZmF1bHQ7XHJcbiAgICB0aGlzLm9iak1hc2sgPSB0aGlzLmJ1aWxkTWFzayhcclxuICAgICAgcmVwbGFjZUZvcm1hdFNlcGFyYXRvcih0aGlzLmZvcm1hdCwgdGhpcy5sYW5ndWFnZVNlcnZpY2UuZ2V0RGF0ZVNlcGFyYXRvcih0aGlzLmxvY2FsZSkpXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGZvcm1hdCgpIHtcclxuICAgIHJldHVybiB0aGlzLl9mb3JtYXQ7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBAb3B0aW9uYWxcclxuICAgKlxyXG4gICAqIEBkZXNjcmlwdGlvblxyXG4gICAqXHJcbiAgICogUGFkcsOjbyBkZSBmb3JtYXRhw6fDo28gcGFyYSBzYcOtZGEgZG8gKm1vZGVsKiwgaW5kZXBlbmRlbnRlbWVudGUgZG8gZm9ybWF0byBkZSBlbnRyYWRhLlxyXG4gICAqXHJcbiAgICogPiBWZWphIG9zIHZhbG9yZXMgdsOhbGlkb3Mgbm8gKmVudW0qIGBQb0RhdGVwaWNrZXJJc29Gb3JtYXRgLlxyXG4gICAqL1xyXG4gIEBJbnB1dCgncC1pc28tZm9ybWF0Jykgc2V0IGlzb0Zvcm1hdCh2YWx1ZTogUG9EYXRlcGlja2VySXNvRm9ybWF0KSB7XHJcbiAgICBpZiAoT2JqZWN0LnZhbHVlcyhQb0RhdGVwaWNrZXJJc29Gb3JtYXQpLmluY2x1ZGVzKHZhbHVlKSkge1xyXG4gICAgICB0aGlzLl9pc29Gb3JtYXQgPSB2YWx1ZTtcclxuICAgICAgdGhpcy5pc0V4dGVuZGVkSVNPID0gdmFsdWUgPT09IFBvRGF0ZXBpY2tlcklzb0Zvcm1hdC5FeHRlbmRlZDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldCBpc29Gb3JtYXQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5faXNvRm9ybWF0O1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQG9wdGlvbmFsXHJcbiAgICpcclxuICAgKiBAZGVzY3JpcHRpb25cclxuICAgKlxyXG4gICAqIElkaW9tYSBkbyBEYXRlcGlja2VyLlxyXG4gICAqXHJcbiAgICogPiBPIGxvY2FsZSBwYWRyw6NvIHNlcmEgcmVjdXBlcmFkbyBjb20gYmFzZSBubyBbYFBvSTE4blNlcnZpY2VgXSgvZG9jdW1lbnRhdGlvbi9wby1pMThuKSBvdSAqYnJvd3NlciouXHJcbiAgICovXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9tZW1iZXItb3JkZXJpbmdcclxuICBfbG9jYWxlPzogc3RyaW5nO1xyXG4gIEBJbnB1dCgncC1sb2NhbGUnKSBzZXQgbG9jYWxlKHZhbHVlOiBzdHJpbmcpIHtcclxuICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICB0aGlzLl9sb2NhbGUgPSB2YWx1ZS5sZW5ndGggPj0gMiA/IHZhbHVlIDogcG9Mb2NhbGVEZWZhdWx0O1xyXG4gICAgICB0aGlzLm9iak1hc2sgPSB0aGlzLmJ1aWxkTWFzayhcclxuICAgICAgICByZXBsYWNlRm9ybWF0U2VwYXJhdG9yKHRoaXMuZm9ybWF0LCB0aGlzLmxhbmd1YWdlU2VydmljZS5nZXREYXRlU2VwYXJhdG9yKHRoaXMubG9jYWxlKSlcclxuICAgICAgKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuX2xvY2FsZSA9IHRoaXMuc2hvcnRMYW5ndWFnZTtcclxuICAgICAgdGhpcy5vYmpNYXNrID0gdGhpcy5idWlsZE1hc2soXHJcbiAgICAgICAgcmVwbGFjZUZvcm1hdFNlcGFyYXRvcih0aGlzLmZvcm1hdCwgdGhpcy5sYW5ndWFnZVNlcnZpY2UuZ2V0RGF0ZVNlcGFyYXRvcih0aGlzLmxvY2FsZSkpXHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgICB0aGlzLnJlZnJlc2hWYWx1ZSh0aGlzLmRhdGUpO1xyXG4gIH1cclxuICBnZXQgbG9jYWxlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuX2xvY2FsZSB8fCB0aGlzLnNob3J0TGFuZ3VhZ2U7XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgbGFuZ3VhZ2VTZXJ2aWNlOiBQb0xhbmd1YWdlU2VydmljZSkge31cclxuXHJcbiAgc2V0IGRhdGUodmFsdWU6IGFueSkge1xyXG4gICAgdGhpcy5fZGF0ZSA9IHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycgPyBjb252ZXJ0SXNvVG9EYXRlKHZhbHVlLCBmYWxzZSwgZmFsc2UpIDogdmFsdWU7XHJcbiAgfVxyXG5cclxuICBnZXQgZGF0ZSgpIHtcclxuICAgIHJldHVybiB0aGlzLl9kYXRlO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLm9mZnNldCA9IG5ldyBEYXRlKCkuZ2V0VGltZXpvbmVPZmZzZXQoKTtcclxuICAgIHRoaXMuZm9ybWF0VGltZXpvbmVBbmRIb3VyKHRoaXMub2Zmc2V0KTtcclxuICAgIC8vIENsYXNzZSBkZSBtw6FzY2FyYVxyXG4gICAgdGhpcy5vYmpNYXNrID0gdGhpcy5idWlsZE1hc2soXHJcbiAgICAgIHJlcGxhY2VGb3JtYXRTZXBhcmF0b3IodGhpcy5mb3JtYXQsIHRoaXMubGFuZ3VhZ2VTZXJ2aWNlLmdldERhdGVTZXBhcmF0b3IodGhpcy5sb2NhbGUpKVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIC8vIENvbnZlcnRlIHVtIG9iamV0byBzdHJpbmcgZW0gRGF0ZVxyXG4gIGdldERhdGVGcm9tU3RyaW5nKGRhdGVTdHJpbmc6IHN0cmluZykge1xyXG4gICAgY29uc3QgZGF5ID0gcGFyc2VJbnQoZGF0ZVN0cmluZy5zdWJzdHJpbmcodGhpcy5mb3JtYXQuaW5kZXhPZignZCcpLCB0aGlzLmZvcm1hdC5pbmRleE9mKCdkJykgKyAyKSwgMTApO1xyXG4gICAgY29uc3QgbW9udGggPSBwYXJzZUludChkYXRlU3RyaW5nLnN1YnN0cmluZyh0aGlzLmZvcm1hdC5pbmRleE9mKCdtJyksIHRoaXMuZm9ybWF0LmluZGV4T2YoJ20nKSArIDIpLCAxMCkgLSAxO1xyXG4gICAgY29uc3QgeWVhciA9IHBhcnNlSW50KGRhdGVTdHJpbmcuc3Vic3RyaW5nKHRoaXMuZm9ybWF0LmluZGV4T2YoJ3knKSwgdGhpcy5mb3JtYXQuaW5kZXhPZigneScpICsgNCksIDEwKTtcclxuXHJcbiAgICBjb25zdCBkYXRlID0gbmV3IERhdGUoeWVhciwgbW9udGgsIGRheSk7XHJcblxyXG4gICAgc2V0WWVhckZyb20wVG8xMDAoZGF0ZSwgeWVhcik7XHJcblxyXG4gICAgcmV0dXJuIGRhdGUuZ2V0RnVsbFllYXIoKSA9PT0geWVhciAmJiBkYXRlLmdldE1vbnRoKCkgPT09IG1vbnRoICYmIGRhdGUuZ2V0RGF0ZSgpID09PSBkYXkgPyBkYXRlIDogbnVsbDtcclxuICB9XHJcblxyXG4gIC8vIEZvcm1hdGEgYSBkYXRhLlxyXG4gIGZvcm1hdFRvRGF0ZSh2YWx1ZTogRGF0ZSkge1xyXG4gICAgbGV0IGRhdGVGb3JtYXR0ZWQgPSB0aGlzLmZvcm1hdDtcclxuXHJcbiAgICBkYXRlRm9ybWF0dGVkID0gZGF0ZUZvcm1hdHRlZC5yZXBsYWNlKCdkZCcsICgnMCcgKyB2YWx1ZS5nZXREYXRlKCkpLnNsaWNlKC0yKSk7XHJcbiAgICBkYXRlRm9ybWF0dGVkID0gZGF0ZUZvcm1hdHRlZC5yZXBsYWNlKCdtbScsICgnMCcgKyAodmFsdWUuZ2V0TW9udGgoKSArIDEpKS5zbGljZSgtMikpO1xyXG4gICAgZGF0ZUZvcm1hdHRlZCA9IGRhdGVGb3JtYXR0ZWQucmVwbGFjZSgneXl5eScsIGZvcm1hdFllYXIodmFsdWUuZ2V0RnVsbFllYXIoKSkpO1xyXG5cclxuICAgIHJldHVybiBkYXRlRm9ybWF0dGVkO1xyXG4gIH1cclxuXHJcbiAgLy8gTcOpdG9kbyByZXNwb25zw6F2ZWwgcG9yIGNvbnRyb2xhciBvIG1vZGVsby5cclxuICBjb250cm9sTW9kZWwoZGF0ZTogRGF0ZSkge1xyXG4gICAgdGhpcy5kYXRlID0gZGF0ZTtcclxuICAgIGlmIChkYXRlICYmIHRoaXMuaXNFeHRlbmRlZElTTykge1xyXG4gICAgICB0aGlzLmNhbGxPbkNoYW5nZShjb252ZXJ0RGF0ZVRvSVNPRXh0ZW5kZWQodGhpcy5kYXRlLCB0aGlzLmhvdXIpKTtcclxuICAgIH0gZWxzZSBpZiAoZGF0ZSAmJiAhdGhpcy5pc0V4dGVuZGVkSVNPKSB7XHJcbiAgICAgIHRoaXMuY2FsbE9uQ2hhbmdlKGNvbnZlcnREYXRlVG9JU09EYXRlKHRoaXMuZGF0ZSkpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgZGF0ZSA9PT0gdW5kZWZpbmVkID8gdGhpcy5jYWxsT25DaGFuZ2UoJycpIDogdGhpcy5jYWxsT25DaGFuZ2UoJ0RhdGEgaW52w6FsaWRhJyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBFeGVjdXRhIGEgZnVuw6fDo28gb25DaGFuZ2VcclxuICBjYWxsT25DaGFuZ2UodmFsdWU6IGFueSwgcmV0cnk6IGJvb2xlYW4gPSB0cnVlKSB7XHJcbiAgICBpZiAodGhpcy5vbkNoYW5nZU1vZGVsICYmIHZhbHVlICE9PSB0aGlzLnByZXZpb3VzVmFsdWUpIHtcclxuICAgICAgdGhpcy5vbkNoYW5nZU1vZGVsKHZhbHVlKTtcclxuICAgICAgdGhpcy5wcmV2aW91c1ZhbHVlID0gdmFsdWU7XHJcbiAgICB9IGVsc2UgaWYgKHJldHJ5KSB7XHJcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5jYWxsT25DaGFuZ2UodmFsdWUsIGZhbHNlKSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBGdW7Dp8OjbyBpbXBsZW1lbnRhZGEgZG8gQ29udHJvbFZhbHVlQWNjZXNzb3JcclxuICAvLyBVc2FkYSBwYXJhIGludGVyY2VwdGFyIG9zIGVzdGFkb3MgZGUgaGFiaWxpdGFkbyB2aWEgZm9ybXMgYXBpXHJcbiAgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcclxuICB9XHJcblxyXG4gIC8vIEZ1bsOnw6NvIGltcGxlbWVudGFkYSBkbyBDb250cm9sVmFsdWVBY2Nlc3NvclxyXG4gIC8vIFVzYWRhIHBhcmEgaW50ZXJjZXB0YXIgYXMgbXVkYW7Dp2FzIGUgbsOjbyBhdHVhbGl6YXIgYXV0b21hdGljYW1lbnRlIG8gTW9kZWxcclxuICByZWdpc3Rlck9uQ2hhbmdlKGZ1bmM6IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5vbkNoYW5nZU1vZGVsID0gZnVuYztcclxuICB9XHJcblxyXG4gIC8vIEZ1bsOnw6NvIGltcGxlbWVudGFkYSBkbyBDb250cm9sVmFsdWVBY2Nlc3NvclxyXG4gIC8vIFVzYWRhIHBhcmEgaW50ZXJjZXB0YXIgYXMgbXVkYW7Dp2FzIGUgbsOjbyBhdHVhbGl6YXIgYXV0b21hdGljYW1lbnRlIG8gTW9kZWxcclxuICByZWdpc3Rlck9uVG91Y2hlZChmdW5jOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMub25Ub3VjaGVkTW9kZWwgPSBmdW5jO1xyXG4gIH1cclxuXHJcbiAgcmVnaXN0ZXJPblZhbGlkYXRvckNoYW5nZShmbjogKCkgPT4gdm9pZCkge1xyXG4gICAgdGhpcy52YWxpZGF0b3JDaGFuZ2UgPSBmbjtcclxuICB9XHJcblxyXG4gIHZhbGlkYXRlKGM6IEFic3RyYWN0Q29udHJvbCk6IHsgW2tleTogc3RyaW5nXTogYW55IH0ge1xyXG4gICAgLy8gVmVyaWZpY2Egc2UgasOhIHBvc3N1aSBhbGd1bSBlcnJvciBwYXR0ZXJuIHBhZHLDo28uXHJcbiAgICB0aGlzLmVycm9yUGF0dGVybiA9XHJcbiAgICAgIHRoaXMuZXJyb3JQYXR0ZXJuICE9PSAnRGF0YSBpbnbDoWxpZGEnICYmIHRoaXMuZXJyb3JQYXR0ZXJuICE9PSAnRGF0YSBmb3JhIGRvIHBlcsOtb2RvJyA/IHRoaXMuZXJyb3JQYXR0ZXJuIDogJyc7XHJcblxyXG4gICAgaWYgKGRhdGVGYWlsZWQoYy52YWx1ZSkpIHtcclxuICAgICAgdGhpcy5lcnJvclBhdHRlcm4gPSB0aGlzLmVycm9yUGF0dGVybiB8fCAnRGF0YSBpbnbDoWxpZGEnO1xyXG5cclxuICAgICAgcmV0dXJuIHtcclxuICAgICAgICBkYXRlOiB7XHJcbiAgICAgICAgICB2YWxpZDogZmFsc2VcclxuICAgICAgICB9XHJcbiAgICAgIH07XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHJlcXVpcmVkRmFpbGVkKHRoaXMucmVxdWlyZWQsIHRoaXMuZGlzYWJsZWQsIGMudmFsdWUpKSB7XHJcbiAgICAgIHJldHVybiB7XHJcbiAgICAgICAgcmVxdWlyZWQ6IHtcclxuICAgICAgICAgIHZhbGlkOiBmYWxzZVxyXG4gICAgICAgIH1cclxuICAgICAgfTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5kYXRlICYmICF2YWxpZGF0ZURhdGVSYW5nZSh0aGlzLmRhdGUsIHRoaXMuX21pbkRhdGUsIHRoaXMuX21heERhdGUpKSB7XHJcbiAgICAgIHRoaXMuZXJyb3JQYXR0ZXJuID0gdGhpcy5lcnJvclBhdHRlcm4gfHwgJ0RhdGEgZm9yYSBkbyBwZXLDrW9kbyc7XHJcblxyXG4gICAgICByZXR1cm4ge1xyXG4gICAgICAgIGRhdGU6IHtcclxuICAgICAgICAgIHZhbGlkOiBmYWxzZVxyXG4gICAgICAgIH1cclxuICAgICAgfTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCB2YWxpZGF0ZU1vZGVsKG1vZGVsOiBhbnkpIHtcclxuICAgIGlmICh0aGlzLnZhbGlkYXRvckNoYW5nZSkge1xyXG4gICAgICB0aGlzLnZhbGlkYXRvckNoYW5nZShtb2RlbCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBSZXRvcm5hIHVtIG9iamV0byBkbyB0aXBvIFBvTWFzayBjb20gYSBtYXNjYXJhIGNvbmZpZ3VyYWRhLlxyXG4gIHByb3RlY3RlZCBidWlsZE1hc2soZm9ybWF0OiBzdHJpbmcgPSB0aGlzLmZvcm1hdCkge1xyXG4gICAgbGV0IG1hc2sgPSBmb3JtYXQudG9VcHBlckNhc2UoKTtcclxuXHJcbiAgICBtYXNrID0gbWFzay5yZXBsYWNlKC9ERC9nLCAnOTknKTtcclxuICAgIG1hc2sgPSBtYXNrLnJlcGxhY2UoL01NL2csICc5OScpO1xyXG4gICAgbWFzayA9IG1hc2sucmVwbGFjZSgvWVlZWS9nLCAnOTk5OScpO1xyXG5cclxuICAgIHJldHVybiBuZXcgUG9NYXNrKG1hc2ssIHRydWUpO1xyXG4gIH1cclxuXHJcbiAgZm9ybWF0VGltZXpvbmVBbmRIb3VyKG9mZnNldDogbnVtYmVyKSB7XHJcbiAgICBjb25zdCBvZmZzZXRBYnNvbHV0ZSA9IE1hdGguYWJzKG9mZnNldCk7XHJcbiAgICBjb25zdCB0aW1lem9uZSA9XHJcbiAgICAgIChvZmZzZXQgPCAwID8gJysnIDogJy0nKSArXHJcbiAgICAgICgnMDAnICsgTWF0aC5mbG9vcihvZmZzZXRBYnNvbHV0ZSAvIDYwKSkuc2xpY2UoLTIpICtcclxuICAgICAgJzonICtcclxuICAgICAgKCcwMCcgKyAob2Zmc2V0QWJzb2x1dGUgJSA2MCkpLnNsaWNlKC0yKTtcclxuICAgIHRoaXMuaG91ciA9ICdUMDA6MDA6MDAnICsgdGltZXpvbmU7XHJcbiAgfVxyXG5cclxuICBhYnN0cmFjdCB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpOiB2b2lkO1xyXG5cclxuICBhYnN0cmFjdCByZWZyZXNoVmFsdWUodmFsdWU6IERhdGUpOiB2b2lkO1xyXG59XHJcbiJdfQ==
|
|
490
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tZGF0ZXBpY2tlci1iYXNlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1maWVsZC9wby1kYXRlcGlja2VyL3BvLWRhdGVwaWNrZXItYmFzZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUcvRSxPQUFPLEVBQ0wsb0JBQW9CLEVBQ3BCLHdCQUF3QixFQUN4QixnQkFBZ0IsRUFDaEIsZ0JBQWdCLEVBQ2hCLFVBQVUsRUFDVixRQUFRLEVBQ1Isc0JBQXNCLEVBQ3RCLGlCQUFpQixFQUNqQixpQkFBaUIsRUFDbEIsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUU3RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFFckYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7OztBQUU5RSxNQUFNLHlCQUF5QixHQUFXLFlBQVksQ0FBQztBQUV2RDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F5Q0c7QUFFSCxNQUFNLE9BQWdCLHlCQUF5QjtJQXFTdkI7SUFwU3RCOzs7Ozs7Ozs7O09BVUc7SUFDNEQsU0FBUyxHQUFZLEtBQUssQ0FBQztJQUUxRixvQ0FBb0M7SUFDckIsSUFBSSxDQUFTO0lBRTVCOzs7Ozs7Ozs7Ozs7T0FZRztJQUNrQixRQUFRLENBQVU7SUFFdkM7Ozs7T0FJRztJQUN1QixZQUFZLEdBQVksRUFBRSxDQUFDO0lBRXJEOzs7Ozs7T0FNRztJ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TUFBTTtrQkFBNUIsS0FBSzttQkFBQyxVQUFVO1lBK0JVLFNBQVM7a0JBQW5DLEtBQUs7bUJBQUMsY0FBYztZQXNCRSxNQUFNO2tCQUE1QixLQUFLO21CQUFDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBWYWxpZGF0b3IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7XG4gIGNvbnZlcnREYXRlVG9JU09EYXRlLFxuICBjb252ZXJ0RGF0ZVRvSVNPRXh0ZW5kZWQsXG4gIGNvbnZlcnRJc29Ub0RhdGUsXG4gIGNvbnZlcnRUb0Jvb2xlYW4sXG4gIGZvcm1hdFllYXIsXG4gIGlzVHlwZW9mLFxuICByZXBsYWNlRm9ybWF0U2VwYXJhdG9yLFxuICBzZXRZZWFyRnJvbTBUbzEwMCxcbiAgdmFsaWRhdGVEYXRlUmFuZ2Vcbn0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvdXRpbCc7XG5pbXBvcnQgeyBQb01hc2sgfSBmcm9tICcuLi9wby1pbnB1dC9wby1tYXNrJztcbmltcG9ydCB7IGRhdGVGYWlsZWQsIHJlcXVpcmVkRmFpbGVkIH0gZnJvbSAnLi8uLi92YWxpZGF0b3JzJztcblxuaW1wb3J0IHsgcG9Mb2NhbGVEZWZhdWx0IH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvcG8tbGFuZ3VhZ2UvcG8tbGFuZ3VhZ2UuY29uc3RhbnQnO1xuaW1wb3J0IHsgUG9MYW5ndWFnZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9wby1sYW5ndWFnZS9wby1sYW5ndWFnZS5zZXJ2aWNlJztcbmltcG9ydCB7IFBvRGF0ZXBpY2tlcklzb0Zvcm1hdCB9IGZyb20gJy4vZW51bXMvcG8tZGF0ZXBpY2tlci1pc28tZm9ybWF0LmVudW0nO1xuXG5jb25zdCBwb0RhdGVwaWNrZXJGb3JtYXREZWZhdWx0OiBzdHJpbmcgPSAnZGQvbW0veXl5eSc7XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uXG4gKlxuICogTyBgcG8tZGF0ZXBpY2tlcmAgw6kgdW0gY29tcG9uZW50ZSBlc3BlY8OtZmljbyBwYXJhIG1hbmlwdWxhw6fDo28gZGUgZGF0YXMgcGVybWl0aW5kbyBhIGRpZ2l0YcOnw6NvIGUgLyBvdSBzZWxlw6fDo28uXG4gKlxuICogTyBmb3JtYXRvIGRlIGV4aWJpw6fDo28gZGEgZGF0YSwgb3Ugc2VqYSwgbyBmb3JtYXRvIHF1ZSDDqSBhcHJlc2VudGFkbyBhbyB1c3XDoXJpbyDDqSBvIGRkL21tL3l5eXksXG4gKiBtYXMgcG9kZW0gc2VyIGRlZmluaWRvcyBvdXRyb3MgcGFkcsO1ZXMgKHZlamEgbWFpcyBuYSBwcm9wcmllZGFkZSBgcC1mb3JtYXRgKS5cbiAqXG4gKiBPIGlkaW9tYSBwYWRyw6NvIGRvIGNhbGVuZMOhcmlvIHNlcsOhIGV4aWJpZG8gZGUgYWNvcmRvIGNvbSBvIG5hdmVnYWRvciwgY2FzbyB0ZW5oYSBuZWNlc3NpZGFkZSBkZSBhbHRlcmFyXG4gKiB1c2UgYSBwcm9wcmllZGFkZSBgcC1sb2NhbGVgLlxuICpcbiAqIE8gZGF0ZXBpY2tlciBhY2VpdGEgdHLDqnMgZm9ybWF0b3MgZGUgZGF0YTogbyBFODYwMURadyAoeXl5eS1tbS1kZFRoaDptbTpzcyt8LWhoOm1tKSwgbyBFODYwMURBdyAoeXl5eS1tbS1kZCkgZSBvXG4gKiBEYXRlIHBhZHLDo28gZG8gSmF2YXNjcmlwdC5cbiAqXG4gKiA+IFBvciBwYWRyw6NvLCBvIGZvcm1hdG8gZGUgc2HDrWRhIGRvICptb2RlbCogc2UgYWp1c3RhcsOhIGNvbmZvcm1lIG8gZm9ybWF0byBkZSBlbnRyYWRhLiBTZSBwb3IgYWNhc28gcHJlY2lzYXIgY29udHJvbGFyIG8gdmFsb3IgZGUgc2HDrWRhLFxuICogYSBwcm9wcmllZGFkZSBgcC1pc28tZm9ybWF0YCBwcm92w6ogZXNzZSBjb250cm9sZSBpbmRlcGVuZGVudGVtZW50ZSBkbyBmb3JtYXRvIGRlIGVudHJhZGEuIFZlamEgYWJhaXhvIG9zIGZvcm1hdG9zIGRpc3BvbsOtdmVpczpcbiAqXG4gKiAtIEZvcm1hdG8gZGUgZW50cmFkYSBlIHNhw61kYSAoRTg2MDFEWncpIC0gYCcyMDE3LTExLTI4VDAwOjAwOjAwLTAyOjAwJ2A7XG4gKlxuICogLSBGb3JtYXRvIGRlIGVudHJhZGEgZSBzYcOtZGEgKEU4NjAxREF3KSAtIGAnMjAxNy0xMS0yOCdgO1xuICpcbiAqIC0gRm9ybWF0byBkZSBlbnRyYWRhIChEYXRlKSAtIGBuZXcgRGF0ZSgyMDE3LCAxMCwgMjgpYCBlIHNhw61kYSAoRTg2MDFEQXcpIC0gYCcyMDE3LTExLTI4J2A7XG4gKlxuICogKipJbXBvcnRhbnRlOioqXG4gKlxuICogLSBQYXJhIHV0aWxpemFyIGRhdGFzIGNvbSBhbm8gaW5mZXJpb3IgYSAxMDAsIHZlcmlmaWNhciBvIGNvbXBvcnRhbWVudG8gZG8gW2BuZXcgRGF0ZWBdKGh0dHBzOi8vd3d3Lnczc2Nob29scy5jb20vanMvanNfZGF0ZXMuYXNwKVxuICogZSB1dGlsaXphciBvIG3DqXRvZG8gW2BzZXRGdWxsWWVhcmBdKGh0dHBzOi8vd3d3Lnczc2Nob29scy5jb20vanNyZWYvanNyZWZfc2V0ZnVsbHllYXIuYXNwKS5cbiAqIC0gQ2FzbyBhIGRhdGEgZXN0ZWphIGludsOhbGlkYSwgbyBgbW9kZWxgIHJlY2ViZXLDoSAqKidEYXRhIGludsOhbGlkYScqKi5cbiAqIC0gQ2FzbyBvIGBpbnB1dGAgZXN0ZWphIHBhc3NhbmRvIHVtIGBbKG5nTW9kZWwpXWAsIG1hcyBuw6NvIHRlbmhhIHVtIGBuYW1lYCwgZW50w6NvIGlyw6Egb2NvcnJlciB1bSBlcnJvXG4gKiBkbyBwcsOzcHJpbyBBbmd1bGFyIChgW25nTW9kZWxPcHRpb25zXT1cIntzdGFuZGFsb25lOiB0cnVlfVwiYCkuXG4gKlxuICogRXhlbXBsbzpcbiAqXG4gKiBgYGBcbiAqIDxwby1kYXRlcGlja2VyXG4gKiAgIFsobmdNb2RlbCldPVwicGVzc29hLm5vbWVcIlxuICogICBbbmdNb2RlbE9wdGlvbnNdPVwie3N0YW5kYWxvbmU6IHRydWV9XCJcbiAqIDwvcG8tZGF0ZXBpY2tlcj5cbiAqIGBgYFxuICpcbiAqID4gTsOjbyBlc3F1ZcOnYSBkZSBpbXBvcnRhciBvIGBGb3Jtc01vZHVsZWAgZW0gc2V1IG3Ds2R1bG8sIHRhbCBjb21vIHBhcmEgdXRpbGl6YXIgbyBgaW5wdXQgZGVmYXVsdGAuXG4gKi9cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFBvRGF0ZXBpY2tlckJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgT25Jbml0LCBWYWxpZGF0b3Ige1xuICAvKipcbiAgICogQG9wdGlvbmFsXG4gICAqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKlxuICAgKiBBcGxpY2EgZm9jbyBubyBlbGVtZW50byBhbyBzZXIgaW5pY2lhZG8uXG4gICAqXG4gICAqID4gQ2FzbyBtYWlzIGRlIHVtIGVsZW1lbnRvIHNlamEgY29uZmlndXJhZG8gY29tIGVzc2EgcHJvcHJpZWRhZGUsIGFwZW5hcyBvIMO6bHRpbW8gZWxlbWVudG8gZGVjbGFyYWRvIGNvbSBlbGEgdGVyw6EgbyBmb2NvLlxuICAgKlxuICAgKiBAZGVmYXVsdCBgZmFsc2VgXG4gICAqL1xuICBASW5wdXQoeyBhbGlhczogJ3AtYXV0by1mb2N1cycsIHRyYW5zZm9ybTogY29udmVydFRvQm9vbGVhbiB9KSBhdXRvRm9jdXM6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKiBOb21lIGRvIGNvbXBvbmVudGUgZGF0ZXBpY2tlci4gKi9cbiAgQElucHV0KCduYW1lJykgbmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAb3B0aW9uYWxcbiAgICpcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqXG4gICAqIERlZmluZSBzZSBhIGluZGljYcOnw6NvIGRlIGNhbXBvIG9wY2lvbmFsIHNlcsOhIGV4aWJpZGEuXG4gICAqXG4gICAqID4gTsOjbyBzZXLDoSBleGliaWRhIGEgaW5kaWNhw6fDo28gc2U6XG4gICAqIC0gTyBjYW1wbyBjb250ZXIgYHAtcmVxdWlyZWRgO1xuICAgKiAtIE7Do28gcG9zc3VpciBgcC1oZWxwYCBlL291IGBwLWxhYmVsYC5cbiAgICpcbiAgICogQGRlZmF1bHQgYGZhbHNlYFxuICAgKi9cbiAgQElucHV0KCdwLW9wdGlvbmFsJykgb3B0aW9uYWw6IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIE1lbnNhZ2VtIGFwcmVzZW50YWRhIHF1YW5kbyBhIGRhdGEgZm9yIGludsOhbGlkYSBvdSBmb3JhIGRvIHBlcsOtb2RvLlxuICAgKlxuICAgKiA+IEVzdGEgbWVuc2FnZW0gbsOjbyDDqSBhcHJlc2VudGFkYSBxdWFuZG8gbyBjYW1wbyBlc3RpdmVyIHZhemlvLCBtZXNtbyBxdWUgZWxlIHNlamEgb2JyaWdhdMOzcmlvLlxuICAgKi9cbiAgQElucHV0KCdwLWVycm9yLXBhdHRlcm4nKSBlcnJvclBhdHRlcm4/OiBzdHJpbmcgPSAnJztcblxuICAvKipcbiAgICogQG9wdGlvbmFsXG4gICAqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKlxuICAgKiBFdmVudG8gZGlzcGFyYWRvIGFvIHNhaXIgZG8gY2FtcG8uXG4gICAqL1xuICBAT3V0cHV0KCdwLWJsdXInKSBvbmJsdXI6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgLyoqXG4gICAqIEBvcHRpb25hbFxuICAgKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICpcbiAgICogRXZlbnRvIGRpc3BhcmFkbyBhbyBhbHRlcmFyIHZhbG9yIGRvIGNhbXBvLlxuICAgKi9cbiAgQE91dHB1dCgncC1jaGFuZ2UnKSBvbmNoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICBvZmZzZXQ6IG51bWJlcjtcbiAgcHJvdGVjdGVkIGZpcnN0U3RhcnQgPSB0cnVlO1xuICBwcm90ZWN0ZWQgaG91cjogc3RyaW5nID0gJ1QwMDowMDowMC0wMDowMCc7XG4gIHByb3RlY3RlZCBpc0V4dGVuZGVkSVNPOiBib29sZWFuID0gZmFsc2U7XG4gIHByb3RlY3RlZCBvYmpNYXNrOiBhbnk7XG4gIHByb3RlY3RlZCBvbkNoYW5nZU1vZGVsOiBhbnkgPSBudWxsO1xuICBwcm90ZWN0ZWQgdmFsaWRhdG9yQ2hhbmdlOiBhbnk7XG4gIHByb3RlY3RlZCBvblRvdWNoZWRNb2RlbDogYW55ID0gbnVsbDtcbiAgcHJvdGVjdGVkIHNob3J0TGFuZ3VhZ2U6IHN0cmluZztcblxuICBwcml2YXRlIF9mb3JtYXQ/OiBzdHJpbmcgPSBwb0RhdGVwaWNrZXJGb3JtYXREZWZhdWx0O1xuICBwcml2YXRlIF9pc29Gb3JtYXQ6IFBvRGF0ZXBpY2tlcklzb0Zvcm1hdDtcbiAgcHJpdmF0ZSBfbWF4RGF0ZTogRGF0ZTtcbiAgcHJpdmF0ZSBfbWluRGF0ZTogRGF0ZTtcbiAgcHJpdmF0ZSBfbm9BdXRvY29tcGxldGU/OiBib29sZWFuID0gZmFsc2U7XG4gIHByaXZhdGUgX3BsYWNlaG9sZGVyPzogc3RyaW5nID0gJyc7XG4gIHByaXZhdGUgcHJldmlvdXNWYWx1ZTogYW55O1xuICBwcml2YXRlIF9kYXRlOiBEYXRlO1xuXG4gIC8qKlxuICAgKiBAb3B0aW9uYWxcbiAgICpcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqXG4gICAqIERlZmluZSBhIHByb3ByaWVkYWRlIG5hdGl2YSBgYXV0b2NvbXBsZXRlYCBkbyBjYW1wbyBjb21vIGBvZmZgLlxuICAgKlxuICAgKiBAZGVmYXVsdCBgZmFsc2VgXG4gICAqL1xuICBASW5wdXQoJ3Atbm8tYXV0b2NvbXBsZXRlJykgc2V0IG5vQXV0b2NvbXBsZXRlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fbm9BdXRvY29tcGxldGUgPSBjb252ZXJ0VG9Cb29sZWFuKHZhbHVlKTtcbiAgfVxuXG4gIGdldCBub0F1dG9jb21wbGV0ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5fbm9BdXRvY29tcGxldGU7XG4gIH1cblxuICAvKipcbiAgICogQG9wdGlvbmFsXG4gICAqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKlxuICAgKiBNZW5zYWdlbSBxdWUgYXBhcmVjZXLDoSBlbnF1YW50byBvIGNhbXBvIG7Do28gZXN0aXZlciBwcmVlbmNoaWRvLlxuICAgKi9cbiAgQElucHV0KCdwLXBsYWNlaG9sZGVyJykgc2V0IHBsYWNlaG9sZGVyKHBsYWNlaG9sZGVyOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9wbGFjZWhvbGRlciA9IGlzVHlwZW9mKHBsYWNlaG9sZGVyLCAnc3RyaW5nJykgPyBwbGFjZWhvbGRlciA6ICcnO1xuICB9XG5cbiAgZ2V0IHBsYWNlaG9sZGVyKCkge1xuICAgIHJldHVybiB0aGlzLl9wbGFjZWhvbGRlcjtcbiAgfVxuXG4gIC8qKiBEZXNhYmlsaXRhIG8gY2FtcG8uICovXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbWVtYmVyLW9yZGVyaW5nXG4gIGRpc2FibGVkPzogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoJ3AtZGlzYWJsZWQnKSBzZXQgc2V0RGlzYWJsZWQoZGlzYWJsZWQ6IHN0cmluZykge1xuICAgIHRoaXMuZGlzYWJsZWQgPSBkaXNhYmxlZCA9PT0gJycgPyB0cnVlIDogY29udmVydFRvQm9vbGVhbihkaXNhYmxlZCk7XG5cbiAgICB0aGlzLnZhbGlkYXRlTW9kZWwoY29udmVydERhdGVUb0lTT0V4dGVuZGVkKHRoaXMuZGF0ZSwgdGhpcy5ob3VyKSk7XG4gIH1cblxuICAvKiogVG9ybmEgbyBlbGVtZW50byBzb21lbnRlIGxlaXR1cmEuICovXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbWVtYmVyLW9yZGVyaW5nXG4gIHJlYWRvbmx5PzogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoJ3AtcmVhZG9ubHknKSBzZXQgc2V0UmVhZG9ubHkocmVhZG9ubHk6IHN0cmluZykge1xuICAgIHRoaXMucmVhZG9ubHkgPSByZWFkb25seSA9PT0gJycgPyB0cnVlIDogY29udmVydFRvQm9vbGVhbihyZWFkb25seSk7XG4gIH1cblxuICAvKipcbiAgICogQG9wdGlvbmFsXG4gICAqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKlxuICAgKiBEZWZpbmUgcXVlIG8gY2FtcG8gc2Vyw6Egb2JyaWdhdMOzcmlvLlxuICAgKlxuICAgKiBAZGVmYXVsdCBgZmFsc2VgXG4gICAqL1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L21lbWJlci1vcmRlcmluZ1xuICByZXF1aXJlZD86IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCdwLXJlcXVpcmVkJykgc2V0IHNldFJlcXVpcmVkKHJlcXVpcmVkOiBzdHJpbmcpIHtcbiAgICB0aGlzLnJlcXVpcmVkID0gcmVxdWlyZWQgPT09ICcnID8gdHJ1ZSA6IGNvbnZlcnRUb0Jvb2xlYW4ocmVxdWlyZWQpO1xuXG4gICAgdGhpcy52YWxpZGF0ZU1vZGVsKGNvbnZlcnREYXRlVG9JU09FeHRlbmRlZCh0aGlzLmRhdGUsIHRoaXMuaG91cikpO1xuICB9XG5cbiAgLyoqXG4gICAqIERlZmluZSBzZSBhIGluZGljYcOnw6NvIGRlIGNhbXBvIG9icmlnYXTDs3JpbyBzZXLDoSBleGliaWRhLlxuICAgKlxuICAgKiA+IE7Do28gc2Vyw6EgZXhpYmlkYSBhIGluZGljYcOnw6NvIHNlOlxuICAgKiAtIE7Do28gcG9zc3VpciBgcC1oZWxwYCBlL291IGBwLWxhYmVsYC5cbiAgICovXG4gIEBJbnB1dCgncC1zaG93LXJlcXVpcmVkJykgc2hvd1JlcXVpcmVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqIEhhYmlsaXRhIGHDp8OjbyBwYXJhIGxpbXBhciBvIGNhbXBvLiAqL1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L21lbWJlci1vcmRlcmluZ1xuICBjbGVhbj86IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCdwLWNsZWFuJykgc2V0IHNldENsZWFuKGNsZWFuOiBzdHJpbmcpIHtcbiAgICB0aGlzLmNsZWFuID0gY2xlYW4gPT09ICcnID8gdHJ1ZSA6IGNvbnZlcnRUb0Jvb2xlYW4oY2xlYW4pO1xuICB9XG5cbiAgLyoqXG4gICAqIEBvcHRpb25hbFxuICAgKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICpcbiAgICogRGVmaW5lIHVtYSBkYXRhIG3DrW5pbWEgcGFyYSBvIGBwby1kYXRlcGlja2VyYC5cbiAgICovXG4gIEBJbnB1dCgncC1taW4tZGF0ZScpIHNldCBtaW5EYXRlKHZhbHVlOiBzdHJpbmcgfCBEYXRlKSB7XG4gICAgaWYgKHZhbHVlIGluc3RhbmNlb2YgRGF0ZSkge1xuICAgICAgY29uc3QgeWVhciA9IHZhbHVlLmdldEZ1bGxZZWFyKCk7XG5cbiAgICAgIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZSh5ZWFyLCB2YWx1ZS5nZXRNb250aCgpLCB2YWx1ZS5nZXREYXRlKCksIDAsIDAsIDApO1xuICAgICAgc2V0WWVhckZyb20wVG8xMDAoZGF0ZSwgeWVhcik7XG5cbiAgICAgIHRoaXMuX21pbkRhdGUgPSBkYXRlO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9taW5EYXRlID0gY29udmVydElzb1RvRGF0ZSh2YWx1ZSwgdHJ1ZSwgZmFsc2UpO1xuICAgIH1cblxuICAgIHRoaXMudmFsaWRhdGVNb2RlbChjb252ZXJ0RGF0ZVRvSVNPRXh0ZW5kZWQodGhpcy5kYXRlLCB0aGlzLmhvdXIpKTtcbiAgfVxuXG4gIGdldCBtaW5EYXRlKCkge1xuICAgIHJldHVybiB0aGlzLl9taW5EYXRlO1xuICB9XG5cbiAgLyoqXG4gICAqIEBvcHRpb25hbFxuICAgKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICpcbiAgICogRGVmaW5lIHVtYSBkYXRhIG3DoXhpbWEgcGFyYSBvIGBwby1kYXRlcGlja2VyYC5cbiAgICovXG4gIEBJbnB1dCgncC1tYXgtZGF0ZScpIHNldCBtYXhEYXRlKHZhbHVlOiBzdHJpbmcgfCBEYXRlKSB7XG4gICAgaWYgKHZhbHVlIGluc3RhbmNlb2YgRGF0ZSkge1xuICAgICAgY29uc3QgeWVhciA9IHZhbHVlLmdldEZ1bGxZZWFyKCk7XG5cbiAgICAgIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZSh5ZWFyLCB2YWx1ZS5nZXRNb250aCgpLCB2YWx1ZS5nZXREYXRlKCksIDIzLCA1OSwgNTkpO1xuICAgICAgc2V0WWVhckZyb20wVG8xMDAoZGF0ZSwgeWVhcik7XG5cbiAgICAgIHRoaXMuX21heERhdGUgPSBkYXRlO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9tYXhEYXRlID0gY29udmVydElzb1RvRGF0ZSh2YWx1ZSwgZmFsc2UsIHRydWUpO1xuICAgIH1cblxuICAgIHRoaXMudmFsaWRhdGVNb2RlbChjb252ZXJ0RGF0ZVRvSVNPRXh0ZW5kZWQodGhpcy5kYXRlLCB0aGlzLmhvdXIpKTtcbiAgfVxuXG4gIGdldCBtYXhEYXRlKCkge1xuICAgIHJldHVybiB0aGlzLl9tYXhEYXRlO1xuICB9XG5cbiAgLyoqXG4gICAqIEBvcHRpb25hbFxuICAgKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICpcbiAgICogRm9ybWF0byBkZSBleGliacOnw6NvIGRhIGRhdGEuXG4gICAqXG4gICAqIFZhbG9yZXMgdsOhbGlkb3M6XG4gICAqICAtIGBkZC9tbS95eXl5YFxuICAgKiAgLSBgbW0vZGQveXl5eWBcbiAgICogIC0gYHl5eXkvbW0vZGRgXG4gICAqXG4gICAqIEBkZWZhdWx0IGBkZC9tbS95eXl5YFxuICAgKi9cbiAgQElucHV0KCdwLWZvcm1hdCcpIHNldCBmb3JtYXQodmFsdWU6IHN0cmluZykge1xuICAgIGlmICh2YWx1ZSkge1xuICAgICAgdmFsdWUgPSB2YWx1ZS50b0xvd2VyQ2FzZSgpO1xuICAgICAgaWYgKHZhbHVlLm1hdGNoKC9kZC8pICYmIHZhbHVlLm1hdGNoKC9tbS8pICYmIHZhbHVlLm1hdGNoKC95eXl5LykpIHtcbiAgICAgICAgdGhpcy5fZm9ybWF0ID0gdmFsdWU7XG4gICAgICAgIHRoaXMub2JqTWFzayA9IHRoaXMuYnVpbGRNYXNrKFxuICAgICAgICAgIHJlcGxhY2VGb3JtYXRTZXBhcmF0b3IodGhpcy5mb3JtYXQsIHRoaXMubGFuZ3VhZ2VTZXJ2aWNlLmdldERhdGVTZXBhcmF0b3IodGhpcy5sb2NhbGUpKVxuICAgICAgICApO1xuICAgICAgICB0aGlzLnJlZnJlc2hWYWx1ZSh0aGlzLmRhdGUpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMuX2Zvcm1hdCA9IHBvRGF0ZXBpY2tlckZvcm1hdERlZmF1bHQ7XG4gICAgdGhpcy5vYmpNYXNrID0gdGhpcy5idWlsZE1hc2soXG4gICAgICByZXBsYWNlRm9ybWF0U2VwYXJhdG9yKHRoaXMuZm9ybWF0LCB0aGlzLmxhbmd1YWdlU2VydmljZS5nZXREYXRlU2VwYXJhdG9yKHRoaXMubG9jYWxlKSlcbiAgICApO1xuICB9XG5cbiAgZ2V0IGZvcm1hdCgpIHtcbiAgICByZXR1cm4gdGhpcy5fZm9ybWF0O1xuICB9XG5cbiAgLyoqXG4gICAqIEBvcHRpb25hbFxuICAgKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICpcbiAgICogUGFkcsOjbyBkZSBmb3JtYXRhw6fDo28gcGFyYSBzYcOtZGEgZG8gKm1vZGVsKiwgaW5kZXBlbmRlbnRlbWVudGUgZG8gZm9ybWF0byBkZSBlbnRyYWRhLlxuICAgKlxuICAgKiA+IFZlamEgb3MgdmFsb3JlcyB2w6FsaWRvcyBubyAqZW51bSogYFBvRGF0ZXBpY2tlcklzb0Zvcm1hdGAuXG4gICAqL1xuICBASW5wdXQoJ3AtaXNvLWZvcm1hdCcpIHNldCBpc29Gb3JtYXQodmFsdWU6IFBvRGF0ZXBpY2tlcklzb0Zvcm1hdCkge1xuICAgIGlmIChPYmplY3QudmFsdWVzKFBvRGF0ZXBpY2tlcklzb0Zvcm1hdCkuaW5jbHVkZXModmFsdWUpKSB7XG4gICAgICB0aGlzLl9pc29Gb3JtYXQgPSB2YWx1ZTtcbiAgICAgIHRoaXMuaXNFeHRlbmRlZElTTyA9IHZhbHVlID09PSBQb0RhdGVwaWNrZXJJc29Gb3JtYXQuRXh0ZW5kZWQ7XG4gICAgfVxuICB9XG5cbiAgZ2V0IGlzb0Zvcm1hdCgpIHtcbiAgICByZXR1cm4gdGhpcy5faXNvRm9ybWF0O1xuICB9XG5cbiAgLyoqXG4gICAqIEBvcHRpb25hbFxuICAgKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICpcbiAgICogSWRpb21hIGRvIERhdGVwaWNrZXIuXG4gICAqXG4gICAqID4gTyBsb2NhbGUgcGFkcsOjbyBzZXJhIHJlY3VwZXJhZG8gY29tIGJhc2Ugbm8gW2BQb0kxOG5TZXJ2aWNlYF0oL2RvY3VtZW50YXRpb24vcG8taTE4bikgb3UgKmJyb3dzZXIqLlxuICAgKi9cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9tZW1iZXItb3JkZXJpbmdcbiAgX2xvY2FsZT86IHN0cmluZztcbiAgQElucHV0KCdwLWxvY2FsZScpIHNldCBsb2NhbGUodmFsdWU6IHN0cmluZykge1xuICAgIGlmICh2YWx1ZSkge1xuICAgICAgdGhpcy5fbG9jYWxlID0gdmFsdWUubGVuZ3RoID49IDIgPyB2YWx1ZSA6IHBvTG9jYWxlRGVmYXVsdDtcbiAgICAgIHRoaXMub2JqTWFzayA9IHRoaXMuYnVpbGRNYXNrKFxuICAgICAgICByZXBsYWNlRm9ybWF0U2VwYXJhdG9yKHRoaXMuZm9ybWF0LCB0aGlzLmxhbmd1YWdlU2VydmljZS5nZXREYXRlU2VwYXJhdG9yKHRoaXMubG9jYWxlKSlcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX2xvY2FsZSA9IHRoaXMuc2hvcnRMYW5ndWFnZTtcbiAgICAgIHRoaXMub2JqTWFzayA9IHRoaXMuYnVpbGRNYXNrKFxuICAgICAgICByZXBsYWNlRm9ybWF0U2VwYXJhdG9yKHRoaXMuZm9ybWF0LCB0aGlzLmxhbmd1YWdlU2VydmljZS5nZXREYXRlU2VwYXJhdG9yKHRoaXMubG9jYWxlKSlcbiAgICAgICk7XG4gICAgfVxuICAgIHRoaXMucmVmcmVzaFZhbHVlKHRoaXMuZGF0ZSk7XG4gIH1cbiAgZ2V0IGxvY2FsZSgpIHtcbiAgICByZXR1cm4gdGhpcy5fbG9jYWxlIHx8IHRoaXMuc2hvcnRMYW5ndWFnZTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBsYW5ndWFnZVNlcnZpY2U6IFBvTGFuZ3VhZ2VTZXJ2aWNlKSB7fVxuXG4gIHNldCBkYXRlKHZhbHVlOiBhbnkpIHtcbiAgICB0aGlzLl9kYXRlID0gdHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJyA/IGNvbnZlcnRJc29Ub0RhdGUodmFsdWUsIGZhbHNlLCBmYWxzZSkgOiB2YWx1ZTtcbiAgfVxuXG4gIGdldCBkYXRlKCkge1xuICAgIHJldHVybiB0aGlzLl9kYXRlO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5vZmZzZXQgPSBuZXcgRGF0ZSgpLmdldFRpbWV6b25lT2Zmc2V0KCk7XG4gICAgdGhpcy5mb3JtYXRUaW1lem9uZUFuZEhvdXIodGhpcy5vZmZzZXQpO1xuICAgIC8vIENsYXNzZSBkZSBtw6FzY2FyYVxuICAgIHRoaXMub2JqTWFzayA9IHRoaXMuYnVpbGRNYXNrKFxuICAgICAgcmVwbGFjZUZvcm1hdFNlcGFyYXRvcih0aGlzLmZvcm1hdCwgdGhpcy5sYW5ndWFnZVNlcnZpY2UuZ2V0RGF0ZVNlcGFyYXRvcih0aGlzLmxvY2FsZSkpXG4gICAgKTtcbiAgfVxuXG4gIC8vIENvbnZlcnRlIHVtIG9iamV0byBzdHJpbmcgZW0gRGF0ZVxuICBnZXREYXRlRnJvbVN0cmluZyhkYXRlU3RyaW5nOiBzdHJpbmcpIHtcbiAgICBjb25zdCBkYXkgPSBwYXJzZUludChkYXRlU3RyaW5nLnN1YnN0cmluZyh0aGlzLmZvcm1hdC5pbmRleE9mKCdkJyksIHRoaXMuZm9ybWF0LmluZGV4T2YoJ2QnKSArIDIpLCAxMCk7XG4gICAgY29uc3QgbW9udGggPSBwYXJzZUludChkYXRlU3RyaW5nLnN1YnN0cmluZyh0aGlzLmZvcm1hdC5pbmRleE9mKCdtJyksIHRoaXMuZm9ybWF0LmluZGV4T2YoJ20nKSArIDIpLCAxMCkgLSAxO1xuICAgIGNvbnN0IHllYXIgPSBwYXJzZUludChkYXRlU3RyaW5nLnN1YnN0cmluZyh0aGlzLmZvcm1hdC5pbmRleE9mKCd5JyksIHRoaXMuZm9ybWF0LmluZGV4T2YoJ3knKSArIDQpLCAxMCk7XG5cbiAgICBjb25zdCBkYXRlID0gbmV3IERhdGUoeWVhciwgbW9udGgsIGRheSk7XG5cbiAgICBzZXRZZWFyRnJvbTBUbzEwMChkYXRlLCB5ZWFyKTtcblxuICAgIHJldHVybiBkYXRlLmdldEZ1bGxZZWFyKCkgPT09IHllYXIgJiYgZGF0ZS5nZXRNb250aCgpID09PSBtb250aCAmJiBkYXRlLmdldERhdGUoKSA9PT0gZGF5ID8gZGF0ZSA6IG51bGw7XG4gIH1cblxuICAvLyBGb3JtYXRhIGEgZGF0YS5cbiAgZm9ybWF0VG9EYXRlKHZhbHVlOiBEYXRlKSB7XG4gICAgbGV0IGRhdGVGb3JtYXR0ZWQgPSB0aGlzLmZvcm1hdDtcblxuICAgIGRhdGVGb3JtYXR0ZWQgPSBkYXRlRm9ybWF0dGVkLnJlcGxhY2UoJ2RkJywgKCcwJyArIHZhbHVlLmdldERhdGUoKSkuc2xpY2UoLTIpKTtcbiAgICBkYXRlRm9ybWF0dGVkID0gZGF0ZUZvcm1hdHRlZC5yZXBsYWNlKCdtbScsICgnMCcgKyAodmFsdWUuZ2V0TW9udGgoKSArIDEpKS5zbGljZSgtMikpO1xuICAgIGRhdGVGb3JtYXR0ZWQgPSBkYXRlRm9ybWF0dGVkLnJlcGxhY2UoJ3l5eXknLCBmb3JtYXRZZWFyKHZhbHVlLmdldEZ1bGxZZWFyKCkpKTtcblxuICAgIHJldHVybiBkYXRlRm9ybWF0dGVkO1xuICB9XG5cbiAgLy8gTcOpdG9kbyByZXNwb25zw6F2ZWwgcG9yIGNvbnRyb2xhciBvIG1vZGVsby5cbiAgY29udHJvbE1vZGVsKGRhdGU6IERhdGUpIHtcbiAgICB0aGlzLmRhdGUgPSBkYXRlO1xuICAgIGlmIChkYXRlICYmIHRoaXMuaXNFeHRlbmRlZElTTykge1xuICAgICAgdGhpcy5jYWxsT25DaGFuZ2UoY29udmVydERhdGVUb0lTT0V4dGVuZGVkKHRoaXMuZGF0ZSwgdGhpcy5ob3VyKSk7XG4gICAgfSBlbHNlIGlmIChkYXRlICYmICF0aGlzLmlzRXh0ZW5kZWRJU08pIHtcbiAgICAgIHRoaXMuY2FsbE9uQ2hhbmdlKGNvbnZlcnREYXRlVG9JU09EYXRlKHRoaXMuZGF0ZSkpO1xuICAgIH0gZWxzZSB7XG4gICAgICBkYXRlID09PSB1bmRlZmluZWQgPyB0aGlzLmNhbGxPbkNoYW5nZSgnJykgOiB0aGlzLmNhbGxPbkNoYW5nZSgnRGF0YSBpbnbDoWxpZGEnKTtcbiAgICB9XG4gIH1cblxuICAvLyBFeGVjdXRhIGEgZnVuw6fDo28gb25DaGFuZ2VcbiAgY2FsbE9uQ2hhbmdlKHZhbHVlOiBhbnksIHJldHJ5OiBib29sZWFuID0gdHJ1ZSkge1xuICAgIGlmICh0aGlzLm9uQ2hhbmdlTW9kZWwgJiYgdmFsdWUgIT09IHRoaXMucHJldmlvdXNWYWx1ZSkge1xuICAgICAgdGhpcy5vbkNoYW5nZU1vZGVsKHZhbHVlKTtcbiAgICAgIHRoaXMucHJldmlvdXNWYWx1ZSA9IHZhbHVlO1xuICAgIH0gZWxzZSBpZiAocmV0cnkpIHtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5jYWxsT25DaGFuZ2UodmFsdWUsIGZhbHNlKSk7XG4gICAgfVxuICB9XG5cbiAgLy8gRnVuw6fDo28gaW1wbGVtZW50YWRhIGRvIENvbnRyb2xWYWx1ZUFjY2Vzc29yXG4gIC8vIFVzYWRhIHBhcmEgaW50ZXJjZXB0YXIgb3MgZXN0YWRvcyBkZSBoYWJpbGl0YWRvIHZpYSBmb3JtcyBhcGlcbiAgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKSB7XG4gICAgdGhpcy5kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XG4gIH1cblxuICAvLyBGdW7Dp8OjbyBpbXBsZW1lbnRhZGEgZG8gQ29udHJvbFZhbHVlQWNjZXNzb3JcbiAgLy8gVXNhZGEgcGFyYSBpbnRlcmNlcHRhciBhcyBtdWRhbsOnYXMgZSBuw6NvIGF0dWFsaXphciBhdXRvbWF0aWNhbWVudGUgbyBNb2RlbFxuICByZWdpc3Rlck9uQ2hhbmdlKGZ1bmM6IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2VNb2RlbCA9IGZ1bmM7XG4gIH1cblxuICAvLyBGdW7Dp8OjbyBpbXBsZW1lbnRhZGEgZG8gQ29udHJvbFZhbHVlQWNjZXNzb3JcbiAgLy8gVXNhZGEgcGFyYSBpbnRlcmNlcHRhciBhcyBtdWRhbsOnYXMgZSBuw6NvIGF0dWFsaXphciBhdXRvbWF0aWNhbWVudGUgbyBNb2RlbFxuICByZWdpc3Rlck9uVG91Y2hlZChmdW5jOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZE1vZGVsID0gZnVuYztcbiAgfVxuXG4gIHJlZ2lzdGVyT25WYWxpZGF0b3JDaGFuZ2UoZm46ICgpID0+IHZvaWQpIHtcbiAgICB0aGlzLnZhbGlkYXRvckNoYW5nZSA9IGZuO1xuICB9XG5cbiAgdmFsaWRhdGUoYzogQWJzdHJhY3RDb250cm9sKTogeyBba2V5OiBzdHJpbmddOiBhbnkgfSB7XG4gICAgLy8gVmVyaWZpY2Egc2UgasOhIHBvc3N1aSBhbGd1bSBlcnJvciBwYXR0ZXJuIHBhZHLDo28uXG4gICAgdGhpcy5lcnJvclBhdHRlcm4gPVxuICAgICAgdGhpcy5lcnJvclBhdHRlcm4gIT09ICdEYXRhIGludsOhbGlkYScgJiYgdGhpcy5lcnJvclBhdHRlcm4gIT09ICdEYXRhIGZvcmEgZG8gcGVyw61vZG8nID8gdGhpcy5lcnJvclBhdHRlcm4gOiAnJztcblxuICAgIGlmIChkYXRlRmFpbGVkKGMudmFsdWUpKSB7XG4gICAgICB0aGlzLmVycm9yUGF0dGVybiA9IHRoaXMuZXJyb3JQYXR0ZXJuIHx8ICdEYXRhIGludsOhbGlkYSc7XG5cbiAgICAgIHJldHVybiB7XG4gICAgICAgIGRhdGU6IHtcbiAgICAgICAgICB2YWxpZDogZmFsc2VcbiAgICAgICAgfVxuICAgICAgfTtcbiAgICB9XG5cbiAgICBpZiAocmVxdWlyZWRGYWlsZWQodGhpcy5yZXF1aXJlZCwgdGhpcy5kaXNhYmxlZCwgYy52YWx1ZSkpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHJlcXVpcmVkOiB7XG4gICAgICAgICAgdmFsaWQ6IGZhbHNlXG4gICAgICAgIH1cbiAgICAgIH07XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZGF0ZSAmJiAhdmFsaWRhdGVEYXRlUmFuZ2UodGhpcy5kYXRlLCB0aGlzLl9taW5EYXRlLCB0aGlzLl9tYXhEYXRlKSkge1xuICAgICAgdGhpcy5lcnJvclBhdHRlcm4gPSB0aGlzLmVycm9yUGF0dGVybiB8fCAnRGF0YSBmb3JhIGRvIHBlcsOtb2RvJztcblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgZGF0ZToge1xuICAgICAgICAgIHZhbGlkOiBmYWxzZVxuICAgICAgICB9XG4gICAgICB9O1xuICAgIH1cblxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgcHJvdGVjdGVkIHZhbGlkYXRlTW9kZWwobW9kZWw6IGFueSkge1xuICAgIGlmICh0aGlzLnZhbGlkYXRvckNoYW5nZSkge1xuICAgICAgdGhpcy52YWxpZGF0b3JDaGFuZ2UobW9kZWwpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFJldG9ybmEgdW0gb2JqZXRvIGRvIHRpcG8gUG9NYXNrIGNvbSBhIG1hc2NhcmEgY29uZmlndXJhZGEuXG4gIHByb3RlY3RlZCBidWlsZE1hc2soZm9ybWF0OiBzdHJpbmcgPSB0aGlzLmZvcm1hdCkge1xuICAgIGxldCBtYXNrID0gZm9ybWF0LnRvVXBwZXJDYXNlKCk7XG5cbiAgICBtYXNrID0gbWFzay5yZXBsYWNlKC9ERC9nLCAnOTknKTtcbiAgICBtYXNrID0gbWFzay5yZXBsYWNlKC9NTS9nLCAnOTknKTtcbiAgICBtYXNrID0gbWFzay5yZXBsYWNlKC9ZWVlZL2csICc5OTk5Jyk7XG5cbiAgICByZXR1cm4gbmV3IFBvTWFzayhtYXNrLCB0cnVlKTtcbiAgfVxuXG4gIGZvcm1hdFRpbWV6b25lQW5kSG91cihvZmZzZXQ6IG51bWJlcikge1xuICAgIGNvbnN0IG9mZnNldEFic29sdXRlID0gTWF0aC5hYnMob2Zmc2V0KTtcbiAgICBjb25zdCB0aW1lem9uZSA9XG4gICAgICAob2Zmc2V0IDwgMCA/ICcrJyA6ICctJykgK1xuICAgICAgKCcwMCcgKyBNYXRoLmZsb29yKG9mZnNldEFic29sdXRlIC8gNjApKS5zbGljZSgtMikgK1xuICAgICAgJzonICtcbiAgICAgICgnMDAnICsgKG9mZnNldEFic29sdXRlICUgNjApKS5zbGljZSgtMik7XG4gICAgdGhpcy5ob3VyID0gJ1QwMDowMDowMCcgKyB0aW1lem9uZTtcbiAgfVxuXG4gIGFic3RyYWN0IHdyaXRlVmFsdWUodmFsdWU6IGFueSk6IHZvaWQ7XG5cbiAgYWJzdHJhY3QgcmVmcmVzaFZhbHVlKHZhbHVlOiBEYXRlKTogdm9pZDtcbn1cbiJdfQ==
|
|
@@ -442,7 +442,7 @@ export class PoDatepickerComponent extends PoDatepickerBaseComponent {
|
|
|
442
442
|
multi: true
|
|
443
443
|
},
|
|
444
444
|
PoControlPositionService
|
|
445
|
-
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<po-field-container\
|
|
445
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, 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 class=\"po-field-container-content po-field-container-content-datepicker\">\n <div class=\"po-field-container-input\">\n <input\n #inp\n class=\"po-input po-datepicker\"\n [class.po-input-icon-right]=\"clean && inp.value\"\n type=\"text\"\n [attr.name]=\"name\"\n [autocomplete]=\"autocomplete\"\n [disabled]=\"disabled\"\n [id]=\"id\"\n [placeholder]=\"disabled ? '' : placeholder\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n (blur)=\"eventOnBlur($event)\"\n (click)=\"eventOnClick($event)\"\n />\n <div class=\"po-field-icon-container-right\">\n <po-clean\n class=\"po-icon-input\"\n *ngIf=\"clean && !disabled && !readonly\"\n [p-element-ref]=\"inputEl\"\n (p-change-event)=\"clear()\"\n >\n </po-clean>\n </div>\n </div>\n <po-button\n #iconDatepicker\n class=\"po-datepicker-button\"\n p-icon=\"po-icon-calendar\"\n p-kind=\"tertiary\"\n [p-disabled]=\"disabled || readonly\"\n (keydown)=\"onKeyPress($event)\"\n (p-click)=\"togglePicker()\"\n >\n </po-button>\n </div>\n\n <div #dialogPicker [class.po-datepicker-popup-calendar]=\"!verifyMobile()\">\n <div *ngIf=\"verifyMobile()\" class=\"po-datepicker-calendar-overlay\"></div>\n <po-calendar\n [class.po-datepicker-calendar-mobile]=\"verifyMobile()\"\n #calendar\n [(ngModel)]=\"date\"\n [p-max-date]=\"maxDate\"\n [p-min-date]=\"minDate\"\n [p-locale]=\"locale\"\n (p-change)=\"dateSelected()\"\n >\n </po-calendar>\n </div>\n\n <po-field-container-bottom\n [p-help]=\"help\"\n [p-disabled]=\"disabled\"\n [p-error-pattern]=\"getErrorPattern()\"\n ></po-field-container-bottom>\n</po-field-container>\n" }]
|
|
446
446
|
}], function () { return [{ type: i1.PoLanguageService }, { type: i2.PoControlPositionService }, { type: i0.Renderer2 }, { type: i0.ElementRef }]; }, { calendar: [{
|
|
447
447
|
type: ViewChild,
|
|
448
448
|
args: ['calendar', { static: true }]
|
|
@@ -468,4 +468,4 @@ export class PoDatepickerComponent extends PoDatepickerBaseComponent {
|
|
|
468
468
|
type: HostListener,
|
|
469
469
|
args: ['keydown', ['$event']]
|
|
470
470
|
}] }); })();
|
|
471
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tZGF0ZXBpY2tlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2NvbXBvbmVudHMvcG8tZmllbGQvcG8tZGF0ZXBpY2tlci9wby1kYXRlcGlja2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1maWVsZC9wby1kYXRlcGlja2VyL3BvLWRhdGVwaWNrZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsVUFBVSxFQUNWLFVBQVUsRUFDVixZQUFZLEVBQ1osS0FBSyxFQUdMLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsYUFBYSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbEUsT0FBTyxFQUNMLFVBQVUsRUFDVixjQUFjLEVBQ2QsY0FBYyxFQUNkLFFBQVEsRUFDUixpQkFBaUIsRUFDakIsSUFBSSxFQUNKLHNCQUFzQixFQUN2QixNQUFNLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHFFQUFxRSxDQUFDO0FBRy9HLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRTNFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7OztJQ0Z4RCxvQ0FLQztJQURDLDJMQUFrQixlQUFBLGNBQU8sQ0FBQSxJQUFDO0lBRTVCLGlCQUFXOzs7SUFIVCw4Q0FBeUI7OztJQW1CL0IsMEJBQXlFOztBRGpCN0UsTUFBTSx1QkFBdUIsR0FBRyxDQUFDLENBQUM7QUFDbEMsTUFBTSx5QkFBeUIsR0FBRyxhQUFhLENBQUM7QUFFaEQ7Ozs7Ozs7Ozs7Ozs7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QWE7d0JBQ3RCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLHNCQUFzQixDQUFDO3dCQUNwRCxLQUFLLEVBQUUsSUFBSTtxQkFDWjtvQkFDRCx3QkFBd0I7aUJBQ3pCLG1CQUNnQix1QkFBdUIsQ0FBQyxNQUFNOzRKQUdOLFFBQVE7a0JBQWhELFNBQVM7bUJBQUMsVUFBVSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtZQUN3QixZQUFZO2tCQUExRSxTQUFTO21CQUFDLGNBQWMsRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtZQUNoQyxjQUFjO2tCQUExQyxTQUFTO21CQUFDLGdCQUFnQjtZQUMyQixPQUFPO2tCQUE1RCxTQUFTO21CQUFDLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtZQUdsQyxLQUFLO2tCQUF0QixLQUFLO21CQUFDLFNBQVM7WUFHQyxJQUFJO2tCQUFwQixLQUFLO21CQUFDLFFBQVE7WUE4Q2YsT0FBTztrQkFETixZQUFZO21CQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQztZQXNCakMsU0FBUztrQkFEUixZQUFZO21CQUFDLFNBQVMsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQWZ0ZXJWaWV3SW5pdCxcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBDb21wb25lbnQsXHJcbiAgRWxlbWVudFJlZixcclxuICBmb3J3YXJkUmVmLFxyXG4gIEhvc3RMaXN0ZW5lcixcclxuICBJbnB1dCxcclxuICBPbkRlc3Ryb3ksXHJcbiAgUmVuZGVyZXIyLFxyXG4gIFZpZXdDaGlsZFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOR19WQUxJREFUT1JTLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbmltcG9ydCB7XHJcbiAgZm9ybWF0WWVhcixcclxuICBpc0tleUNvZGVFbnRlcixcclxuICBpc0tleUNvZGVTcGFjZSxcclxuICBpc01vYmlsZSxcclxuICBzZXRZZWFyRnJvbTBUbzEwMCxcclxuICB1dWlkLFxyXG4gIHJlcGxhY2VGb3JtYXRTZXBhcmF0b3JcclxufSBmcm9tICcuLi8uLi8uLi91dGlscy91dGlsJztcclxuaW1wb3J0IHsgUG9Db250cm9sUG9zaXRpb25TZXJ2aWNlIH0gZnJvbSAnLi8uLi8uLi8uLi9zZXJ2aWNlcy9wby1jb250cm9sLXBvc2l0aW9uL3BvLWNvbnRyb2wtcG9zaXRpb24uc2VydmljZSc7XHJcblxyXG5pbXBvcnQgeyBQb0NhbGVuZGFyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vcG8tY2FsZW5kYXIvcG8tY2FsZW5kYXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUG9EYXRlcGlja2VyQmFzZUNvbXBvbmVudCB9IGZyb20gJy4vcG8tZGF0ZXBpY2tlci1iYXNlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFBvTGFuZ3VhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvcG8tbGFuZ3VhZ2UvcG8tbGFuZ3VhZ2Uuc2VydmljZSc7XHJcbmltcG9ydCB7IFBvRGF0ZXBpY2tlckxpdGVyYWxzIH0gZnJvbSAnLi9wby1kYXRlcGlja2VyLmxpdGVyYWxzJztcclxuaW1wb3J0IHsgUG9CdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi8uLi9wby1idXR0b24vcG8tYnV0dG9uLmNvbXBvbmVudCc7XHJcblxyXG5jb25zdCBwb0NhbGVuZGFyQ29udGVudE9mZnNldCA9IDg7XHJcbmNvbnN0IHBvQ2FsZW5kYXJQb3NpdGlvbkRlZmF1bHQgPSAnYm90dG9tLWxlZnQnO1xyXG5cclxuLyoqXHJcbiAqIEBkb2NzRXh0ZW5kcyBQb0RhdGVwaWNrZXJCYXNlQ29tcG9uZW50XHJcbiAqXHJcbiAqIEBleGFtcGxlXHJcbiAqXHJcbiAqIDxleGFtcGxlIG5hbWU9XCJwby1kYXRlcGlja2VyLWJhc2ljXCIgdGl0bGU9XCJQTyBEYXRlcGlja2VyIEJhc2ljXCI+XHJcbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWRhdGVwaWNrZXItYmFzaWMvc2FtcGxlLXBvLWRhdGVwaWNrZXItYmFzaWMuY29tcG9uZW50Lmh0bWxcIj4gPC9maWxlPlxyXG4gKiAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1kYXRlcGlja2VyLWJhc2ljL3NhbXBsZS1wby1kYXRlcGlja2VyLWJhc2ljLmNvbXBvbmVudC50c1wiPiA8L2ZpbGU+XHJcbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWRhdGVwaWNrZXItYmFzaWMvc2FtcGxlLXBvLWRhdGVwaWNrZXItYmFzaWMuY29tcG9uZW50LnBvLnRzXCI+IDwvZmlsZT5cclxuICogIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tZGF0ZXBpY2tlci1iYXNpYy9zYW1wbGUtcG8tZGF0ZXBpY2tlci1iYXNpYy5jb21wb25lbnQuZTJlLXNwZWMudHNcIj4gPC9maWxlPlxyXG4gKiA8L2V4YW1wbGU+XHJcbiAqXHJcbiAqIDxleGFtcGxlIG5hbWU9XCJwby1kYXRlcGlja2VyLWxhYnNcIiB0aXRsZT1cIlBPIERhdGVwaWNrZXIgTGFic1wiPlxyXG4gKiAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1kYXRlcGlja2VyLWxhYnMvc2FtcGxlLXBvLWRhdGVwaWNrZXItbGFicy5jb21wb25lbnQuaHRtbFwiPiA8L2ZpbGU+XHJcbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWRhdGVwaWNrZXItbGFicy9zYW1wbGUtcG8tZGF0ZXBpY2tlci1sYWJzLmNvbXBvbmVudC50c1wiPiA8L2ZpbGU+XHJcbiAqIDwvZXhhbXBsZT5cclxuICpcclxuICogPGV4YW1wbGUgbmFtZT1cInBvLWRhdGVwaWNrZXItYWlyZmFyZVwiIHRpdGxlPVwiUE8gRGF0ZXBpY2tlciAtIEFpcmZhcmVcIj5cclxuICogIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tZGF0ZXBpY2tlci1haXJmYXJlL3NhbXBsZS1wby1kYXRlcGlja2VyLWFpcmZhcmUuY29tcG9uZW50Lmh0bWxcIj4gPC9maWxlPlxyXG4gKiAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1kYXRlcGlja2VyLWFpcmZhcmUvc2FtcGxlLXBvLWRhdGVwaWNrZXItYWlyZmFyZS5jb21wb25lbnQudHNcIj4gPC9maWxlPlxyXG4gKiA8L2V4YW1wbGU+XHJcbiAqXHJcbiAqIDxleGFtcGxlIG5hbWU9XCJwby1kYXRlcGlja2VyLWFpcmZhcmUtcmVhY3RpdmUtZm9ybVwiIHRpdGxlPVwiUE8gRGF0ZXBpY2tlciAtIEFpcmZhcmUgUmVhY3RpdmUgRm9ybVwiPlxyXG4gKiAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1kYXRlcGlja2VyLWFpcmZhcmUtcmVhY3RpdmUtZm9ybS9zYW1wbGUtcG8tZGF0ZXBpY2tlci1haXJmYXJlLXJlYWN0aXZlLWZvcm0uY29tcG9uZW50Lmh0bWxcIj4gPC9maWxlPlxyXG4gKiAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1kYXRlcGlja2VyLWFpcmZhcmUtcmVhY3RpdmUtZm9ybS9zYW1wbGUtcG8tZGF0ZXBpY2tlci1haXJmYXJlLXJlYWN0aXZlLWZvcm0uY29tcG9uZW50LnRzXCI+IDwvZmlsZT5cclxuICogPC9leGFtcGxlPlxyXG4gKi9cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdwby1kYXRlcGlja2VyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vcG8tZGF0ZXBpY2tlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBQb0RhdGVwaWNrZXJDb21wb25lbnQpLFxyXG4gICAgICBtdWx0aTogdHJ1ZVxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgcHJvdmlkZTogTkdfVkFMSURBVE9SUyxcclxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gUG9EYXRlcGlja2VyQ29tcG9uZW50KSxcclxuICAgICAgbXVsdGk6IHRydWVcclxuICAgIH0sXHJcbiAgICBQb0NvbnRyb2xQb3NpdGlvblNlcnZpY2VcclxuICBdLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQb0RhdGVwaWNrZXJDb21wb25lbnQgZXh0ZW5kcyBQb0RhdGVwaWNrZXJCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcclxuICBAVmlld0NoaWxkKCdjYWxlbmRhcicsIHsgc3RhdGljOiB0cnVlIH0pIGNhbGVuZGFyOiBQb0NhbGVuZGFyQ29tcG9uZW50O1xyXG4gIEBWaWV3Q2hpbGQoJ2RpYWxvZ1BpY2tlcicsIHsgcmVhZDogRWxlbWVudFJlZiwgc3RhdGljOiB0cnVlIH0pIGRpYWxvZ1BpY2tlcjogRWxlbWVudFJlZjtcclxuICBAVmlld0NoaWxkKCdpY29uRGF0ZXBpY2tlcicpIGljb25EYXRlcGlja2VyOiBQb0J1dHRvbkNvbXBvbmVudDtcclxuICBAVmlld0NoaWxkKCdpbnAnLCB7IHJlYWQ6IEVsZW1lbnRSZWYsIHN0YXRpYzogdHJ1ZSB9KSBpbnB1dEVsOiBFbGVtZW50UmVmO1xyXG5cclxuICAvKiogUsOzdHVsbyBkbyBjYW1wby4gKi9cclxuICBASW5wdXQoJ3AtbGFiZWwnKSBsYWJlbD86IHN0cmluZztcclxuXHJcbiAgLyoqIFRleHRvIGRlIGFwb2lvIGRvIGNhbXBvLiAqL1xyXG4gIEBJbnB1dCgncC1oZWxwJykgaGVscD86IHN0cmluZztcclxuXHJcbiAgZWw6IEVsZW1lbnRSZWY7XHJcbiAgZGVjbGFyZSBob3VyOiBzdHJpbmc7XHJcbiAgaWQgPSBgcG8tZGF0ZXBpY2tlclske3V1aWQoKX1dYDtcclxuICB2aXNpYmxlOiBib29sZWFuID0gZmFsc2U7XHJcbiAgbGl0ZXJhbHM6IGFueTtcclxuXHJcbiAgZXZlbnRMaXN0ZW5lckZ1bmN0aW9uOiAoKSA9PiB2b2lkO1xyXG4gIGV2ZW50UmVzaXplTGlzdGVuZXI6ICgpID0+IHZvaWQ7XHJcblxyXG4gIHByaXZhdGUgY2xpY2tMaXN0ZW5lcjtcclxuICBwcml2YXRlIHJlYWRvbmx5IGRhdGVSZWdleCA9IG5ldyBSZWdFeHAoXHJcbiAgICAnXig/OlswLTldKVxcXFxkezF9KD86WzAtOV0pXFxcXGR7MX0tJyArICcoPzowWzEtOV18MVswLTJdKS0nICsgJyg/OjBbMS05XXxbMTJdXFxcXGR8M1swMV0pJCdcclxuICApO1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgaXNvUmVnZXggPSBuZXcgUmVnRXhwKFxyXG4gICAgJ14oPzpbMC05XSlcXFxcZHsxfSg/OlswLTldKVxcXFxkezF9LScgK1xyXG4gICAgICAnKD86MFsxLTldfDFbMC0yXSktJyArXHJcbiAgICAgICcoPzowWzEtOV18WzEyXVxcXFxkfDNbMDFdKScgK1xyXG4gICAgICAnVCg/OlswMV1cXFxcZHwyWzAtM10pOlswLTVdXFxcXGQ6WzAtNV1cXFxcZCg/Olp8LTBbMS05XXwtMVxcXFxkfC0yWzAtM118JyArXHJcbiAgICAgICctMDA6Pyg/OjBbMS05XXxbMC01XVxcXFxkKXxcXFxcK1swMV1cXFxcZHxcXFxcKzJbMC0zXSknICtcclxuICAgICAgJyg/Onw6P1swLTVdXFxcXGQpJCdcclxuICApO1xyXG4gIHByaXZhdGUgdGltZW91dENoYW5nZTogYW55O1xyXG4gIHByaXZhdGUgdmFsdWVCZWZvcmVDaGFuZ2U6IHN0cmluZztcclxuXHJcbiAgZ2V0IGF1dG9jb21wbGV0ZSgpIHtcclxuICAgIHJldHVybiB0aGlzLm5vQXV0b2NvbXBsZXRlID8gJ29mZicgOiAnb24nO1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcm90ZWN0ZWQgbGFuZ3VhZ2VTZXJ2aWNlOiBQb0xhbmd1YWdlU2VydmljZSxcclxuICAgIHByaXZhdGUgY29udHJvbFBvc2l0aW9uOiBQb0NvbnRyb2xQb3NpdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsXHJcbiAgICBlbDogRWxlbWVudFJlZlxyXG4gICkge1xyXG4gICAgc3VwZXIobGFuZ3VhZ2VTZXJ2aWNlKTtcclxuICAgIHRoaXMuc2hvcnRMYW5ndWFnZSA9IHRoaXMubGFuZ3VhZ2VTZXJ2aWNlLmdldFNob3J0TGFuZ3VhZ2UoKTtcclxuICAgIHRoaXMuZWwgPSBlbDtcclxuICAgIGNvbnN0IGxhbmd1YWdlID0gbGFuZ3VhZ2VTZXJ2aWNlLmdldFNob3J0TGFuZ3VhZ2UoKTtcclxuICAgIHRoaXMubGl0ZXJhbHMgPSB7XHJcbiAgICAgIC4uLlBvRGF0ZXBpY2tlckxpdGVyYWxzW2xhbmd1YWdlXVxyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ2tleXVwJywgWyckZXZlbnQnXSlcclxuICBvbktleXVwKCRldmVudDogYW55KSB7XHJcbiAgICBpZiAodGhpcy5yZWFkb25seSkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5vYmpNYXNrLmtleXVwKCRldmVudCk7XHJcbiAgICAvLyBDb250cm9sYSBhIGF0dWFsaXphw6fDo28gZG8gbW9kZWwsIHZlcmlmaWNhbmRvIHNlIGEgZGF0YSDDqSB2YWxpZGFcclxuICAgIGlmICh0aGlzLm9iak1hc2sudmFsdWVUb01vZGVsIHx8IHRoaXMub2JqTWFzay52YWx1ZVRvTW9kZWwgPT09ICcnKSB7XHJcbiAgICAgIGlmICh0aGlzLm9iak1hc2sudmFsdWVUb01vZGVsLmxlbmd0aCA+PSAxMCkge1xyXG4gICAgICAgIHRoaXMuY29udHJvbE1vZGVsKHRoaXMuZ2V0RGF0ZUZyb21TdHJpbmcodGhpcy5pbnB1dEVsLm5hdGl2ZUVsZW1lbnQudmFsdWUpKTtcclxuICAgICAgICB0aGlzLmRhdGUgPSB0aGlzLmdldERhdGVGcm9tU3RyaW5nKHRoaXMuaW5wdXRFbC5uYXRpdmVFbGVtZW50LnZhbHVlKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLmRhdGUgPSB1bmRlZmluZWQ7XHJcbiAgICAgICAgdGhpcy5jb250cm9sTW9kZWwodGhpcy5kYXRlKTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5kYXRlID0gdW5kZWZpbmVkO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bicsIFsnJGV2ZW50J10pXHJcbiAgb25LZXlkb3duKCRldmVudD86IGFueSkge1xyXG4gICAgaWYgKHRoaXMucmVhZG9ubHkpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMub2JqTWFzay5rZXlkb3duKCRldmVudCk7XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICB0aGlzLnNldERpYWxvZ1BpY2tlclN0eWxlRGlzcGxheSgnbm9uZScpO1xyXG4gICAgaWYgKHRoaXMuYXV0b0ZvY3VzKSB7XHJcbiAgICAgIHRoaXMuZm9jdXMoKTtcclxuICAgIH1cclxuICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKHRoaXMuaWNvbkRhdGVwaWNrZXIuYnV0dG9uRWxlbWVudC5uYXRpdmVFbGVtZW50LCAnYXJpYS1sYWJlbCcsIHRoaXMubGl0ZXJhbHMub3Blbik7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIHRoaXMucmVtb3ZlTGlzdGVuZXJzKCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBGdW7Dp8OjbyBxdWUgYXRyaWJ1aSBmb2NvIGFvIGNvbXBvbmVudGUuXHJcbiAgICpcclxuICAgKiBQYXJhIHV0aWxpesOhLWxhIMOpIG5lY2Vzc8OhcmlvIHRlciBhIGluc3TDom5jaWEgZG8gY29tcG9uZW50ZSBubyBET00sIHBvZGVuZG8gc2VyIHV0aWxpemFkbyBvIFZpZXdDaGlsZCBkYSBzZWd1aW50ZSBmb3JtYTpcclxuICAgKlxyXG4gICAqIGBgYFxyXG4gICAqIGltcG9ydCB7IFBvRGF0ZXBpY2tlckNvbXBvbmVudCB9IGZyb20gJ0Bwby11aS9uZy1jb21wb25lbnRzJztcclxuICAgKlxyXG4gICAqIC4uLlxyXG4gICAqXHJcbiAgICogQFZpZXdDaGlsZChQb0RhdGVwaWNrZXJDb21wb25lbnQsIHsgc3RhdGljOiB0cnVlIH0pIGRhdGVwaWNrZXI6IFBvRGF0ZXBpY2tlckNvbXBvbmVudDtcclxuICAgKlxyXG4gICAqIGZvY3VzRGF0ZXBpY2tlcigpIHtcclxuICAgKiAgIHRoaXMuZGF0ZXBpY2tlci5mb2N1cygpO1xyXG4gICAqIH1cclxuICAgKiBgYGBcclxuICAgKi9cclxuICBmb2N1cygpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5kaXNhYmxlZCkge1xyXG4gICAgICB0aGlzLmlucHV0RWwubmF0aXZlRWxlbWVudC5mb2N1cygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgdG9nZ2xlUGlja2VyKCkge1xyXG4gICAgaWYgKHRoaXMuZGlzYWJsZWQgfHwgdGhpcy5yZWFkb25seSkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKCF0aGlzLnZpc2libGUpIHtcclxuICAgICAgdGhpcy5zZXRDYWxlbmRhclBvc2l0aW9uKCk7XHJcbiAgICAgIHRoaXMuaW5pdGlhbGl6ZUxpc3RlbmVycygpO1xyXG4gICAgICB0aGlzLnZpc2libGUgPSB0cnVlO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5pbnB1dEVsLm5hdGl2ZUVsZW1lbnQuZGlzYWJsZWQgPSBmYWxzZTtcclxuICAgICAgdGhpcy5jbG9zZUNhbGVuZGFyKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBkYXRlU2VsZWN0ZWQoKSB7XHJcbiAgICB0aGlzLm9uVG91Y2hlZE1vZGVsPy4oKTtcclxuICAgIGlmICghdGhpcy52ZXJpZnlNb2JpbGUoKSkge1xyXG4gICAgICB0aGlzLmlucHV0RWwubmF0aXZlRWxlbWVudC5mb2N1cygpO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuaW5wdXRFbC5uYXRpdmVFbGVtZW50LnZhbHVlID0gdGhpcy5mb3JtYXRUb0RhdGUodGhpcy5kYXRlKTtcclxuICAgIHRoaXMuY29udHJvbE1vZGVsKHRoaXMuZGF0ZSk7XHJcbiAgICB0aGlzLmNvbnRyb2xDaGFuZ2VFbWl0dGVyKCk7XHJcbiAgICB0aGlzLmNsb3NlQ2FsZW5kYXIoKTtcclxuICB9XHJcblxyXG4gIC8vIEVzY29uZGUgUGlja2VyIHF1YW5kbyBmb3IgY2xpY2FkbyBmb3JhXHJcbiAgd2FzQ2xpY2tlZE9uUGlja2VyKGV2ZW50OiBhbnkpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5kaWFsb2dQaWNrZXIgfHwgIXRoaXMuaWNvbkRhdGVwaWNrZXIpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgaWYgKFxyXG4gICAgICAoIXRoaXMuZGlhbG9nUGlja2VyLm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoZXZlbnQudGFyZ2V0KSB8fCB0aGlzLmhhc092ZXJsYXlDbGFzcyhldmVudC50YXJnZXQpKSAmJlxyXG4gICAgICAhdGhpcy5pY29uRGF0ZXBpY2tlci5idXR0b25FbGVtZW50Lm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoZXZlbnQudGFyZ2V0KSAmJlxyXG4gICAgICAhdGhpcy5oYXNBdHRyQ2FsZW5kYXIoZXZlbnQudGFyZ2V0KVxyXG4gICAgKSB7XHJcbiAgICAgIHRoaXMuY2xvc2VDYWxlbmRhcigpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaGFzSW52YWxpZENsYXNzKCkge1xyXG4gICAgcmV0dXJuIChcclxuICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5jb250YWlucygnbmctaW52YWxpZCcpICYmXHJcbiAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoJ25nLWRpcnR5JykgJiZcclxuICAgICAgdGhpcy5pbnB1dEVsLm5hdGl2ZUVsZW1lbnQudmFsdWUgIT09ICcnXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgZ2V0RXJyb3JQYXR0ZXJuKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuZXJyb3JQYXR0ZXJuICE9PSAnJyAmJiB0aGlzLmhhc0ludmFsaWRDbGFzcygpID8gdGhpcy5lcnJvclBhdHRlcm4gOiAnJztcclxuICB9XHJcblxyXG4gIGNsZWFyKCkge1xyXG4gICAgdGhpcy52YWx1ZUJlZm9yZUNoYW5nZSA9IHRoaXMuZm9ybWF0VG9EYXRlKHRoaXMuZGF0ZSk7XHJcbiAgICB0aGlzLmRhdGUgPSB1bmRlZmluZWQ7XHJcbiAgICB0aGlzLmNvbnRyb2xNb2RlbCh0aGlzLmRhdGUpO1xyXG5cclxuICAgIHRoaXMuY29udHJvbENoYW5nZUVtaXR0ZXIoKTtcclxuICB9XHJcblxyXG4gIGV2ZW50T25CbHVyKCRldmVudDogYW55KSB7XHJcbiAgICB0aGlzLm9uVG91Y2hlZE1vZGVsPy4oKTtcclxuICAgIGNvbnN0IGRhdGUgPSB0aGlzLmlucHV0RWwubmF0aXZlRWxlbWVudC52YWx1ZTtcclxuICAgIGNvbnN0IG5ld0RhdGUgPSBkYXRlID8gdGhpcy5nZXREYXRlRnJvbVN0cmluZyhkYXRlKSA6IHVuZGVmaW5lZDtcclxuICAgIHRoaXMub2JqTWFzay5ibHVyKCRldmVudCk7XHJcbiAgICB0aGlzLm9uYmx1ci5lbWl0KCk7XHJcblxyXG4gICAgaWYgKHRoaXMub2JqTWFzay52YWx1ZVRvTW9kZWwpIHtcclxuICAgICAgaWYgKHRoaXMub2JqTWFzay52YWx1ZVRvTW9kZWwubGVuZ3RoID49IDEwKSB7XHJcbiAgICAgICAgdGhpcy5jb250cm9sTW9kZWwobmV3RGF0ZSk7XHJcbiAgICAgICAgdGhpcy5kYXRlID0gbmV3RGF0ZTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLmRhdGUgPSBudWxsO1xyXG4gICAgICAgIHRoaXMuY29udHJvbE1vZGVsKHRoaXMuZGF0ZSk7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuZGF0ZSA9IHVuZGVmaW5lZDtcclxuICAgICAgdGhpcy5jYWxsT25DaGFuZ2UodGhpcy5kYXRlKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmNvbnRyb2xDaGFuZ2VFbWl0dGVyKCk7XHJcbiAgfVxyXG5cclxuICBldmVudE9uQ2xpY2soJGV2ZW50KSB7XHJcbiAgICBpZiAodGhpcy52ZXJpZnlNb2JpbGUoKSkge1xyXG4gICAgICAkZXZlbnQudGFyZ2V0LmJsdXIoKTtcclxuXHJcbiAgICAgIC8vIGFicmUgbyBjYWxlbmRhciBxdWFuZG8gY2xpY2FyIG5vIGlucHV0IHNvbWVudGUgbm8gbW9iaWxlXHJcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy50b2dnbGVQaWNrZXIoKSwgMCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICAvLyBBdHVhbGl6YSBhIHBvc2nDp8OjbyBkbyBjdXJzb3IgYW8gY2xpY2FyXHJcbiAgICAgIHRoaXMub2JqTWFzay5jbGljaygkZXZlbnQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb25LZXlQcmVzcyhldmVudDogYW55KSB7XHJcbiAgICBpZiAoaXNLZXlDb2RlRW50ZXIoZXZlbnQpIHx8IGlzS2V5Q29kZVNwYWNlKGV2ZW50KSkge1xyXG4gICAgICB0aGlzLnRvZ2dsZVBpY2tlcigpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZm9ybWF0VG9EYXRlKHZhbHVlOiBEYXRlKSB7XHJcbiAgICBpZiAoIXZhbHVlKSB7XHJcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IGRhdGVGb3JtYXR0ZWQgPSByZXBsYWNlRm9ybWF0U2VwYXJhdG9yKHRoaXMuZm9ybWF0LCB0aGlzLmxhbmd1YWdlU2VydmljZS5nZXREYXRlU2VwYXJhdG9yKHRoaXMubG9jYWxlKSk7XHJcblxyXG4gICAgZGF0ZUZvcm1hdHRlZCA9IGRhdGVGb3JtYXR0ZWQucmVwbGFjZSgnZGQnLCAoJzAnICsgdmFsdWUuZ2V0RGF0ZSgpKS5zbGljZSgtMikpO1xyXG4gICAgZGF0ZUZvcm1hdHRlZCA9IGRhdGVGb3JtYXR0ZWQucmVwbGFjZSgnbW0nLCAoJzAnICsgKHZhbHVlLmdldE1vbnRoKCkgKyAxKSkuc2xpY2UoLTIpKTtcclxuICAgIGRhdGVGb3JtYXR0ZWQgPSBkYXRlRm9ybWF0dGVkLnJlcGxhY2UoJ3l5eXknLCBmb3JtYXRZZWFyKHZhbHVlLmdldEZ1bGxZZWFyKCkpKTtcclxuXHJcbiAgICByZXR1cm4gZGF0ZUZvcm1hdHRlZDtcclxuICB9XHJcblxyXG4gIHJlZnJlc2hWYWx1ZSh2YWx1ZTogRGF0ZSkge1xyXG4gICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgIHRoaXMuaW5wdXRFbC5uYXRpdmVFbGVtZW50LnZhbHVlID0gdGhpcy5mb3JtYXRUb0RhdGUodmFsdWUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gRnVuw6fDo28gaW1wbGVtZW50YWRhIGRvIENvbnRyb2xWYWx1ZUFjY2Vzc29yXHJcbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KSB7XHJcbiAgICBpZiAodGhpcy5pbnB1dEVsICYmIHZhbHVlKSB7XHJcbiAgICAgIGlmICh2YWx1ZSBpbnN0YW5jZW9mIERhdGUpIHtcclxuICAgICAgICBjb25zdCBkYXRlU3RyaW5nID0gdmFsdWUudG9TdHJpbmcoKTtcclxuICAgICAgICB0aGlzLmhvdXIgPVxyXG4gICAgICAgICAgJ1QnICsgZGF0ZVN0cmluZy5zdWJzdHJpbmcoMTYsIDI0KSArIGRhdGVTdHJpbmcuc3Vic3RyaW5nKDI4LCAzMSkgKyAnOicgKyBkYXRlU3RyaW5nLnN1YnN0cmluZygzMSwgMzMpO1xyXG4gICAgICAgIHRoaXMuZGF0ZSA9IHZhbHVlO1xyXG4gICAgICAgIHRoaXMuaW5wdXRFbC5uYXRpdmVFbGVtZW50LnZhbHVlID0gdGhpcy5mb3JtYXRUb0RhdGUodmFsdWUpO1xyXG4gICAgICB9IGVsc2UgaWYgKHRoaXMuaXNWYWxpZERhdGVJc28odmFsdWUpIHx8IHRoaXMuaXNWYWxpZEV4dGVuZGVkSXNvKHZhbHVlKSkge1xyXG4gICAgICAgIGlmICh0aGlzLmlzVmFsaWRFeHRlbmRlZElzbyh2YWx1ZSkpIHtcclxuICAgICAgICAgIHRoaXMuaG91ciA9IHZhbHVlLnN1YnN0cmluZygxMCwgMjUpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHRoaXMuaXNvRm9ybWF0ID09PSB1bmRlZmluZWQpIHtcclxuICAgICAgICAgIHRoaXMuaXNFeHRlbmRlZElTTyA9IHRoaXMuaXNWYWxpZEV4dGVuZGVkSXNvKHZhbHVlKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGNvbnN0IGRheSA9IHBhcnNlSW50KHZhbHVlLnN1YnN0cmluZyg4LCAxMCksIDEwKTtcclxuICAgICAgICBjb25zdCBtb250aCA9IHBhcnNlSW50KHZhbHVlLnN1YnN0cmluZyg1LCA3KSwgMTApIC0gMTtcclxuICAgICAgICBjb25zdCB5ZWFyID0gcGFyc2VJbnQodmFsdWUuc3Vic3RyaW5nKDAsIDQpLCAxMCk7XHJcblxyXG4gICAgICAgIGNvbnN0IGRhdGVUZW1wID0gbmV3IERhdGUoeWVhciwgbW9udGgsIGRheSk7XHJcblxyXG4gICAgICAgIHNldFllYXJGcm9tMFRvMTAwKGRhdGVUZW1wLCB5ZWFyKTtcclxuXHJcbiAgICAgICAgdGhpcy5kYXRlID0gZGF0ZVRlbXA7XHJcbiAgICAgICAgdGhpcy5pbnB1dEVsLm5hdGl2ZUVsZW1lbnQudmFsdWUgPSB0aGlzLmZvcm1hdFRvRGF0ZShkYXRlVGVtcCk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5pbnB1dEVsLm5hdGl2ZUVsZW1lbnQudmFsdWUgPSAnJztcclxuICAgICAgICB0aGlzLmRhdGUgPSB1bmRlZmluZWQ7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5jb250cm9sTW9kZWwodGhpcy5kYXRlKTtcclxuICAgIH0gZWxzZSBpZiAodGhpcy5pbnB1dEVsKSB7XHJcbiAgICAgIHRoaXMuaW5wdXRFbC5uYXRpdmVFbGVtZW50LnZhbHVlID0gJyc7XHJcbiAgICAgIHRoaXMuZGF0ZSA9IHVuZGVmaW5lZDtcclxuICAgICAgdGhpcy5jYWxsT25DaGFuZ2UodGhpcy5kYXRlLCBmYWxzZSk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy52YWx1ZUJlZm9yZUNoYW5nZSA9IHRoaXMuZm9ybWF0VG9EYXRlKHRoaXMuZGF0ZSk7XHJcbiAgfVxyXG5cclxuICBpc1ZhbGlkRGF0ZUlzbyh2YWx1ZTogc3RyaW5nKSB7XHJcbiAgICByZXR1cm4gdGhpcy5kYXRlUmVnZXgudGVzdCh2YWx1ZSk7XHJcbiAgfVxyXG5cclxuICBpc1ZhbGlkRXh0ZW5kZWRJc28odmFsdWUpIHtcclxuICAgIHJldHVybiB0aGlzLmlzb1JlZ2V4LnRlc3QodmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgaGFzT3ZlcmxheUNsYXNzKGVsZW1lbnQ6IGFueSkge1xyXG4gICAgcmV0dXJuIGVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKCdwby1kYXRlcGlja2VyLWNhbGVuZGFyLW92ZXJsYXknKTtcclxuICB9XHJcblxyXG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXHJcbiAgdmVyaWZ5TW9iaWxlKCkge1xyXG4gICAgcmV0dXJuIGlzTW9iaWxlKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNsb3NlQ2FsZW5kYXIoKSB7XHJcbiAgICB0aGlzLnZpc2libGUgPSBmYWxzZTtcclxuICAgIHRoaXMucmVtb3ZlTGlzdGVuZXJzKCk7XHJcbiAgICB0aGlzLnNldERpYWxvZ1BpY2tlclN0eWxlRGlzcGxheSgnbm9uZScpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjb250cm9sQ2hhbmdlRW1pdHRlcigpIHtcclxuICAgIGNvbnN0IGRhdGVNb2RlbEZvcm1hdHRlZCA9IHRoaXMuZm9ybWF0VG9EYXRlKHRoaXMuZGF0ZSk7XHJcblxyXG4gICAgaWYgKGRhdGVNb2RlbEZvcm1hdHRlZCAhPT0gdGhpcy52YWx1ZUJlZm9yZUNoYW5nZSkge1xyXG4gICAgICB0aGlzLnZhbHVlQmVmb3JlQ2hhbmdlID0gZGF0ZU1vZGVsRm9ybWF0dGVkO1xyXG5cclxuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMudGltZW91dENoYW5nZSk7XHJcbiAgICAgIHRoaXMudGltZW91dENoYW5nZSA9IHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMub25jaGFuZ2UuZW1pdChkYXRlTW9kZWxGb3JtYXR0ZWQpO1xyXG4gICAgICB9LCAyMDApO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBoYXNBdHRyQ2FsZW5kYXIoZWxlbWVudDogYW55KSB7XHJcbiAgICBjb25zdCBhdHRyQ2FsZW5kYXIgPSAnYXR0ci1jYWxlbmRhcic7XHJcblxyXG4gICAgcmV0dXJuIChcclxuICAgICAgKGVsZW1lbnQgJiYgZWxlbWVudC5oYXNBdHRyaWJ1dGUoYXR0ckNhbGVuZGFyKSkgfHxcclxuICAgICAgKGVsZW1lbnQucGFyZW50RWxlbWVudCAmJiBlbGVtZW50LnBhcmVudEVsZW1lbnQuaGFzQXR0cmlidXRlKGF0dHJDYWxlbmRhcikpXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpbml0aWFsaXplTGlzdGVuZXJzKCkge1xyXG4gICAgdGhpcy5jbGlja0xpc3RlbmVyID0gdGhpcy5yZW5kZXJlci5saXN0ZW4oJ2RvY3VtZW50JywgJ2NsaWNrJywgKGV2ZW50OiBNb3VzZUV2ZW50KSA9PiB7XHJcbiAgICAgIHRoaXMud2FzQ2xpY2tlZE9uUGlja2VyKGV2ZW50KTtcclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMuZXZlbnRSZXNpemVMaXN0ZW5lciA9IHRoaXMucmVuZGVyZXIubGlzdGVuKCd3aW5kb3cnLCAncmVzaXplJywgKCkgPT4ge1xyXG4gICAgICB0aGlzLmNsb3NlQ2FsZW5kYXIoKTtcclxuICAgIH0pO1xyXG5cclxuICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdzY3JvbGwnLCB0aGlzLm9uU2Nyb2xsLCB0cnVlKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgb25TY3JvbGwgPSAoKTogdm9pZCA9PiB7XHJcbiAgICB0aGlzLmNvbnRyb2xQb3NpdGlvbi5hZGp1c3RQb3NpdGlvbihwb0NhbGVuZGFyUG9zaXRpb25EZWZhdWx0KTtcclxuICB9O1xyXG5cclxuICBwcml2YXRlIHJlbW92ZUxpc3RlbmVycygpIHtcclxuICAgIGlmICh0aGlzLmNsaWNrTGlzdGVuZXIpIHtcclxuICAgICAgdGhpcy5jbGlja0xpc3RlbmVyKCk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMuZXZlbnRSZXNpemVMaXN0ZW5lcikge1xyXG4gICAgICB0aGlzLmV2ZW50UmVzaXplTGlzdGVuZXIoKTtcclxuICAgIH1cclxuXHJcbiAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgdGhpcy5vblNjcm9sbCwgdHJ1ZSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldERpYWxvZ1BpY2tlclN0eWxlRGlzcGxheSh2YWx1ZSkge1xyXG4gICAgdGhpcy5kaWFsb2dQaWNrZXIubmF0aXZlRWxlbWVudC5zdHlsZS5kaXNwbGF5ID0gdmFsdWU7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldENhbGVuZGFyUG9zaXRpb24oKSB7XHJcbiAgICB0aGlzLnNldERpYWxvZ1BpY2tlclN0eWxlRGlzcGxheSgnYmxvY2snKTtcclxuXHJcbiAgICB0aGlzLmNvbnRyb2xQb3NpdGlvbi5zZXRFbGVtZW50cyhcclxuICAgICAgdGhpcy5kaWFsb2dQaWNrZXIubmF0aXZlRWxlbWVudCxcclxuICAgICAgcG9DYWxlbmRhckNvbnRlbnRPZmZzZXQsXHJcbiAgICAgIHRoaXMuaW5wdXRFbCxcclxuICAgICAgWyd0b3AtbGVmdCcsICd0b3AtcmlnaHQnLCAnYm90dG9tLWxlZnQnLCAnYm90dG9tLXJpZ2h0J10sXHJcbiAgICAgIGZhbHNlLFxyXG4gICAgICB0cnVlXHJcbiAgICApO1xyXG5cclxuICAgIHRoaXMuY29udHJvbFBvc2l0aW9uLmFkanVzdFBvc2l0aW9uKHBvQ2FsZW5kYXJQb3NpdGlvbkRlZmF1bHQpO1xyXG4gIH1cclxufVxyXG4iLCI8cG8tZmllbGQtY29udGFpbmVyXHJcbiAgW3AtZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxyXG4gIFtwLWlkXT1cImlkXCJcclxuICBbcC1sYWJlbF09XCJsYWJlbFwiXHJcbiAgW3Atb3B0aW9uYWxdPVwib3B0aW9uYWxcIlxyXG4gIFtwLXJlcXVpcmVkXT1cInJlcXVpcmVkXCJcclxuICBbcC1zaG93LXJlcXVpcmVkXT1cInNob3dSZXF1aXJlZFwiXHJcbj5cclxuICA8ZGl2IGNsYXNzPVwicG8tZmllbGQtY29udGFpbmVyLWNvbnRlbnQgcG8tZmllbGQtY29udGFpbmVyLWNvbnRlbnQtZGF0ZXBpY2tlclwiPlxyXG4gICAgPGRpdiBjbGFzcz1cInBvLWZpZWxkLWNvbnRhaW5lci1pbnB1dFwiPlxyXG4gICAgICA8aW5wdXRcclxuICAgICAgICAjaW5wXHJcbiAgICAgICAgY2xhc3M9XCJwby1pbnB1dCBwby1kYXRlcGlja2VyXCJcclxuICAgICAgICBbY2xhc3MucG8taW5wdXQtaWNvbi1yaWdodF09XCJjbGVhbiAmJiBpbnAudmFsdWVcIlxyXG4gICAgICAgIHR5cGU9XCJ0ZXh0XCJcclxuICAgICAgICBbYXR0ci5uYW1lXT1cIm5hbWVcIlxyXG4gICAgICAgIFthdXRvY29tcGxldGVdPVwiYXV0b2NvbXBsZXRlXCJcclxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxyXG4gICAgICAgIFtpZF09XCJpZFwiXHJcbiAgICAgICAgW3BsYWNlaG9sZGVyXT1cImRpc2FibGVkID8gJycgOiBwbGFjZWhvbGRlclwiXHJcbiAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcclxuICAgICAgICBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxyXG4gICAgICAgIChibHVyKT1cImV2ZW50T25CbHVyKCRldmVudClcIlxyXG4gICAgICAgIChjbGljayk9XCJldmVudE9uQ2xpY2soJGV2ZW50KVwiXHJcbiAgICAgIC8+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJwby1maWVsZC1pY29uLWNvbnRhaW5lci1yaWdodFwiPlxyXG4gICAgICAgIDxwby1jbGVhblxyXG4gICAgICAgICAgY2xhc3M9XCJwby1pY29uLWlucHV0XCJcclxuICAgICAgICAgICpuZ0lmPVwiY2xlYW4gJiYgIWRpc2FibGVkICYmICFyZWFkb25seVwiXHJcbiAgICAgICAgICBbcC1lbGVtZW50LXJlZl09XCJpbnB1dEVsXCJcclxuICAgICAgICAgIChwLWNoYW5nZS1ldmVudCk9XCJjbGVhcigpXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgPC9wby1jbGVhbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxwby1idXR0b25cclxuICAgICAgI2ljb25EYXRlcGlja2VyXHJcbiAgICAgIGNsYXNzPVwicG8tZGF0ZXBpY2tlci1idXR0b25cIlxyXG4gICAgICBwLWljb249XCJwby1pY29uLWNhbGVuZGFyXCJcclxuICAgICAgcC1raW5kPVwidGVydGlhcnlcIlxyXG4gICAgICBbcC1kaXNhYmxlZF09XCJkaXNhYmxlZCB8fCByZWFkb25seVwiXHJcbiAgICAgIChrZXlkb3duKT1cIm9uS2V5UHJlc3MoJGV2ZW50KVwiXHJcbiAgICAgIChwLWNsaWNrKT1cInRvZ2dsZVBpY2tlcigpXCJcclxuICAgID5cclxuICAgIDwvcG8tYnV0dG9uPlxyXG4gIDwvZGl2PlxyXG5cclxuICA8ZGl2ICNkaWFsb2dQaWNrZXIgW2NsYXNzLnBvLWRhdGVwaWNrZXItcG9wdXAtY2FsZW5kYXJdPVwiIXZlcmlmeU1vYmlsZSgpXCI+XHJcbiAgICA8ZGl2ICpuZ0lmPVwidmVyaWZ5TW9iaWxlKClcIiBjbGFzcz1cInBvLWRhdGVwaWNrZXItY2FsZW5kYXItb3ZlcmxheVwiPjwvZGl2PlxyXG4gICAgPHBvLWNhbGVuZGFyXHJcbiAgICAgIFtjbGFzcy5wby1kYXRlcGlja2VyLWNhbGVuZGFyLW1vYmlsZV09XCJ2ZXJpZnlNb2JpbGUoKVwiXHJcbiAgICAgICNjYWxlbmRhclxyXG4gICAgICBbKG5nTW9kZWwpXT1cImRhdGVcIlxyXG4gICAgICBbcC1tYXgtZGF0ZV09XCJtYXhEYXRlXCJcclxuICAgICAgW3AtbWluLWRhdGVdPVwibWluRGF0ZVwiXHJcbiAgICAgIFtwLWxvY2FsZV09XCJsb2NhbGVcIlxyXG4gICAgICAocC1jaGFuZ2UpPVwiZGF0ZVNlbGVjdGVkKClcIlxyXG4gICAgPlxyXG4gICAgPC9wby1jYWxlbmRhcj5cclxuICA8L2Rpdj5cclxuXHJcbiAgPHBvLWZpZWxkLWNvbnRhaW5lci1ib3R0b21cclxuICAgIFtwLWhlbHBdPVwiaGVscFwiXHJcbiAgICBbcC1kaXNhYmxlZF09XCJkaXNhYmxlZFwiXHJcbiAgICBbcC1lcnJvci1wYXR0ZXJuXT1cImdldEVycm9yUGF0dGVybigpXCJcclxuICA+PC9wby1maWVsZC1jb250YWluZXItYm90dG9tPlxyXG48L3BvLWZpZWxkLWNvbnRhaW5lcj5cclxuIl19
|
|
471
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tZGF0ZXBpY2tlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2NvbXBvbmVudHMvcG8tZmllbGQvcG8tZGF0ZXBpY2tlci9wby1kYXRlcGlja2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1maWVsZC9wby1kYXRlcGlja2VyL3BvLWRhdGVwaWNrZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsVUFBVSxFQUNWLFVBQVUsRUFDVixZQUFZLEVBQ1osS0FBSyxFQUdMLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsYUFBYSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbEUsT0FBTyxFQUNMLFVBQVUsRUFDVixjQUFjLEVBQ2QsY0FBYyxFQUNkLFFBQVEsRUFDUixpQkFBaUIsRUFDakIsSUFBSSxFQUNKLHNCQUFzQixFQUN2QixNQUFNLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHFFQUFxRSxDQUFDO0FBRy9HLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRTNFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7OztJQ0Z4RCxvQ0FLQztJQURDLDJMQUFrQixlQUFBLGNBQU8sQ0FBQSxJQUFDO0lBRTVCLGlCQUFXOzs7SUFIVCw4Q0FBeUI7OztJQW1CL0IsMEJBQXlFOztBRGpCN0UsTUFBTSx1QkFBdUIsR0FBRyxDQUFDLENBQUM7QUFDbEMsTUFBTSx5QkFBeUIsR0FBRyxhQUFhLENBQUM7QUFFaEQ7Ozs7Ozs7Ozs7Ozs7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QWE7d0JBQ3RCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLHNCQUFzQixDQUFDO3dCQUNwRCxLQUFLLEVBQUUsSUFBSTtxQkFDWjtvQkFDRCx3QkFBd0I7aUJBQ3pCLG1CQUNnQix1QkFBdUIsQ0FBQyxNQUFNOzRKQUdOLFFBQVE7a0JBQWhELFNBQVM7bUJBQUMsVUFBVSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtZQUN3QixZQUFZO2tCQUExRSxTQUFTO21CQUFDLGNBQWMsRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtZQUNoQyxjQUFjO2tCQUExQyxTQUFTO21CQUFDLGdCQUFnQjtZQUMyQixPQUFPO2tCQUE1RCxTQUFTO21CQUFDLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtZQUdsQyxLQUFLO2tCQUF0QixLQUFLO21CQUFDLFNBQVM7WUFHQyxJQUFJO2tCQUFwQixLQUFLO21CQUFDLFFBQVE7WUE4Q2YsT0FBTztrQkFETixZQUFZO21CQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQztZQXNCakMsU0FBUztrQkFEUixZQUFZO21CQUFDLFNBQVMsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIGZvcndhcmRSZWYsXG4gIEhvc3RMaXN0ZW5lcixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgUmVuZGVyZXIyLFxuICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOR19WQUxJREFUT1JTLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHtcbiAgZm9ybWF0WWVhcixcbiAgaXNLZXlDb2RlRW50ZXIsXG4gIGlzS2V5Q29kZVNwYWNlLFxuICBpc01vYmlsZSxcbiAgc2V0WWVhckZyb20wVG8xMDAsXG4gIHV1aWQsXG4gIHJlcGxhY2VGb3JtYXRTZXBhcmF0b3Jcbn0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvdXRpbCc7XG5pbXBvcnQgeyBQb0NvbnRyb2xQb3NpdGlvblNlcnZpY2UgfSBmcm9tICcuLy4uLy4uLy4uL3NlcnZpY2VzL3BvLWNvbnRyb2wtcG9zaXRpb24vcG8tY29udHJvbC1wb3NpdGlvbi5zZXJ2aWNlJztcblxuaW1wb3J0IHsgUG9DYWxlbmRhckNvbXBvbmVudCB9IGZyb20gJy4uLy4uL3BvLWNhbGVuZGFyL3BvLWNhbGVuZGFyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQb0RhdGVwaWNrZXJCYXNlQ29tcG9uZW50IH0gZnJvbSAnLi9wby1kYXRlcGlja2VyLWJhc2UuY29tcG9uZW50JztcbmltcG9ydCB7IFBvTGFuZ3VhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvcG8tbGFuZ3VhZ2UvcG8tbGFuZ3VhZ2Uuc2VydmljZSc7XG5pbXBvcnQgeyBQb0RhdGVwaWNrZXJMaXRlcmFscyB9IGZyb20gJy4vcG8tZGF0ZXBpY2tlci5saXRlcmFscyc7XG5pbXBvcnQgeyBQb0J1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uL3BvLWJ1dHRvbi9wby1idXR0b24uY29tcG9uZW50JztcblxuY29uc3QgcG9DYWxlbmRhckNvbnRlbnRPZmZzZXQgPSA4O1xuY29uc3QgcG9DYWxlbmRhclBvc2l0aW9uRGVmYXVsdCA9ICdib3R0b20tbGVmdCc7XG5cbi8qKlxuICogQGRvY3NFeHRlbmRzIFBvRGF0ZXBpY2tlckJhc2VDb21wb25lbnRcbiAqXG4gKiBAZXhhbXBsZVxuICpcbiAqIDxleGFtcGxlIG5hbWU9XCJwby1kYXRlcGlja2VyLWJhc2ljXCIgdGl0bGU9XCJQTyBEYXRlcGlja2VyIEJhc2ljXCI+XG4gKiAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1kYXRlcGlja2VyLWJhc2ljL3NhbXBsZS1wby1kYXRlcGlja2VyLWJhc2ljLmNvbXBvbmVudC5odG1sXCI+IDwvZmlsZT5cbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWRhdGVwaWNrZXItYmFzaWMvc2FtcGxlLXBvLWRhdGVwaWNrZXItYmFzaWMuY29tcG9uZW50LnRzXCI+IDwvZmlsZT5cbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWRhdGVwaWNrZXItYmFzaWMvc2FtcGxlLXBvLWRhdGVwaWNrZXItYmFzaWMuY29tcG9uZW50LnBvLnRzXCI+IDwvZmlsZT5cbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWRhdGVwaWNrZXItYmFzaWMvc2FtcGxlLXBvLWRhdGVwaWNrZXItYmFzaWMuY29tcG9uZW50LmUyZS1zcGVjLnRzXCI+IDwvZmlsZT5cbiAqIDwvZXhhbXBsZT5cbiAqXG4gKiA8ZXhhbXBsZSBuYW1lPVwicG8tZGF0ZXBpY2tlci1sYWJzXCIgdGl0bGU9XCJQTyBEYXRlcGlja2VyIExhYnNcIj5cbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWRhdGVwaWNrZXItbGFicy9zYW1wbGUtcG8tZGF0ZXBpY2tlci1sYWJzLmNvbXBvbmVudC5odG1sXCI+IDwvZmlsZT5cbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWRhdGVwaWNrZXItbGFicy9zYW1wbGUtcG8tZGF0ZXBpY2tlci1sYWJzLmNvbXBvbmVudC50c1wiPiA8L2ZpbGU+XG4gKiA8L2V4YW1wbGU+XG4gKlxuICogPGV4YW1wbGUgbmFtZT1cInBvLWRhdGVwaWNrZXItYWlyZmFyZVwiIHRpdGxlPVwiUE8gRGF0ZXBpY2tlciAtIEFpcmZhcmVcIj5cbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWRhdGVwaWNrZXItYWlyZmFyZS9zYW1wbGUtcG8tZGF0ZXBpY2tlci1haXJmYXJlLmNvbXBvbmVudC5odG1sXCI+IDwvZmlsZT5cbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWRhdGVwaWNrZXItYWlyZmFyZS9zYW1wbGUtcG8tZGF0ZXBpY2tlci1haXJmYXJlLmNvbXBvbmVudC50c1wiPiA8L2ZpbGU+XG4gKiA8L2V4YW1wbGU+XG4gKlxuICogPGV4YW1wbGUgbmFtZT1cInBvLWRhdGVwaWNrZXItYWlyZmFyZS1yZWFjdGl2ZS1mb3JtXCIgdGl0bGU9XCJQTyBEYXRlcGlja2VyIC0gQWlyZmFyZSBSZWFjdGl2ZSBGb3JtXCI+XG4gKiAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1kYXRlcGlja2VyLWFpcmZhcmUtcmVhY3RpdmUtZm9ybS9zYW1wbGUtcG8tZGF0ZXBpY2tlci1haXJmYXJlLXJlYWN0aXZlLWZvcm0uY29tcG9uZW50Lmh0bWxcIj4gPC9maWxlPlxuICogIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tZGF0ZXBpY2tlci1haXJmYXJlLXJlYWN0aXZlLWZvcm0vc2FtcGxlLXBvLWRhdGVwaWNrZXItYWlyZmFyZS1yZWFjdGl2ZS1mb3JtLmNvbXBvbmVudC50c1wiPiA8L2ZpbGU+XG4gKiA8L2V4YW1wbGU+XG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3BvLWRhdGVwaWNrZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vcG8tZGF0ZXBpY2tlci5jb21wb25lbnQuaHRtbCcsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gUG9EYXRlcGlja2VyQ29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gUG9EYXRlcGlja2VyQ29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlXG4gICAgfSxcbiAgICBQb0NvbnRyb2xQb3NpdGlvblNlcnZpY2VcbiAgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgUG9EYXRlcGlja2VyQ29tcG9uZW50IGV4dGVuZHMgUG9EYXRlcGlja2VyQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG4gIEBWaWV3Q2hpbGQoJ2NhbGVuZGFyJywgeyBzdGF0aWM6IHRydWUgfSkgY2FsZW5kYXI6IFBvQ2FsZW5kYXJDb21wb25lbnQ7XG4gIEBWaWV3Q2hpbGQoJ2RpYWxvZ1BpY2tlcicsIHsgcmVhZDogRWxlbWVudFJlZiwgc3RhdGljOiB0cnVlIH0pIGRpYWxvZ1BpY2tlcjogRWxlbWVudFJlZjtcbiAgQFZpZXdDaGlsZCgnaWNvbkRhdGVwaWNrZXInKSBpY29uRGF0ZXBpY2tlcjogUG9CdXR0b25Db21wb25lbnQ7XG4gIEBWaWV3Q2hpbGQoJ2lucCcsIHsgcmVhZDogRWxlbWVudFJlZiwgc3RhdGljOiB0cnVlIH0pIGlucHV0RWw6IEVsZW1lbnRSZWY7XG5cbiAgLyoqIFLDs3R1bG8gZG8gY2FtcG8uICovXG4gIEBJbnB1dCgncC1sYWJlbCcpIGxhYmVsPzogc3RyaW5nO1xuXG4gIC8qKiBUZXh0byBkZSBhcG9pbyBkbyBjYW1wby4gKi9cbiAgQElucHV0KCdwLWhlbHAnKSBoZWxwPzogc3RyaW5nO1xuXG4gIGVsOiBFbGVtZW50UmVmO1xuICBkZWNsYXJlIGhvdXI6IHN0cmluZztcbiAgaWQgPSBgcG8tZGF0ZXBpY2tlclske3V1aWQoKX1dYDtcbiAgdmlzaWJsZTogYm9vbGVhbiA9IGZhbHNlO1xuICBsaXRlcmFsczogYW55O1xuXG4gIGV2ZW50TGlzdGVuZXJGdW5jdGlvbjogKCkgPT4gdm9pZDtcbiAgZXZlbnRSZXNpemVMaXN0ZW5lcjogKCkgPT4gdm9pZDtcblxuICBwcml2YXRlIGNsaWNrTGlzdGVuZXI7XG4gIHByaXZhdGUgcmVhZG9ubHkgZGF0ZVJlZ2V4ID0gbmV3IFJlZ0V4cChcbiAgICAnXig/OlswLTldKVxcXFxkezF9KD86WzAtOV0pXFxcXGR7MX0tJyArICcoPzowWzEtOV18MVswLTJdKS0nICsgJyg/OjBbMS05XXxbMTJdXFxcXGR8M1swMV0pJCdcbiAgKTtcbiAgcHJpdmF0ZSByZWFkb25seSBpc29SZWdleCA9IG5ldyBSZWdFeHAoXG4gICAgJ14oPzpbMC05XSlcXFxcZHsxfSg/OlswLTldKVxcXFxkezF9LScgK1xuICAgICAgJyg/OjBbMS05XXwxWzAtMl0pLScgK1xuICAgICAgJyg/OjBbMS05XXxbMTJdXFxcXGR8M1swMV0pJyArXG4gICAgICAnVCg/OlswMV1cXFxcZHwyWzAtM10pOlswLTVdXFxcXGQ6WzAtNV1cXFxcZCg/Olp8LTBbMS05XXwtMVxcXFxkfC0yWzAtM118JyArXG4gICAgICAnLTAwOj8oPzowWzEtOV18WzAtNV1cXFxcZCl8XFxcXCtbMDFdXFxcXGR8XFxcXCsyWzAtM10pJyArXG4gICAgICAnKD86fDo/WzAtNV1cXFxcZCkkJ1xuICApO1xuICBwcml2YXRlIHRpbWVvdXRDaGFuZ2U6IGFueTtcbiAgcHJpdmF0ZSB2YWx1ZUJlZm9yZUNoYW5nZTogc3RyaW5nO1xuXG4gIGdldCBhdXRvY29tcGxldGUoKSB7XG4gICAgcmV0dXJuIHRoaXMubm9BdXRvY29tcGxldGUgPyAnb2ZmJyA6ICdvbic7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgbGFuZ3VhZ2VTZXJ2aWNlOiBQb0xhbmd1YWdlU2VydmljZSxcbiAgICBwcml2YXRlIGNvbnRyb2xQb3NpdGlvbjogUG9Db250cm9sUG9zaXRpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICBlbDogRWxlbWVudFJlZlxuICApIHtcbiAgICBzdXBlcihsYW5ndWFnZVNlcnZpY2UpO1xuICAgIHRoaXMuc2hvcnRMYW5ndWFnZSA9IHRoaXMubGFuZ3VhZ2VTZXJ2aWNlLmdldFNob3J0TGFuZ3VhZ2UoKTtcbiAgICB0aGlzLmVsID0gZWw7XG4gICAgY29uc3QgbGFuZ3VhZ2UgPSBsYW5ndWFnZVNlcnZpY2UuZ2V0U2hvcnRMYW5ndWFnZSgpO1xuICAgIHRoaXMubGl0ZXJhbHMgPSB7XG4gICAgICAuLi5Qb0RhdGVwaWNrZXJMaXRlcmFsc1tsYW5ndWFnZV1cbiAgICB9O1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcigna2V5dXAnLCBbJyRldmVudCddKVxuICBvbktleXVwKCRldmVudDogYW55KSB7XG4gICAgaWYgKHRoaXMucmVhZG9ubHkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLm9iak1hc2sua2V5dXAoJGV2ZW50KTtcbiAgICAvLyBDb250cm9sYSBhIGF0dWFsaXphw6fDo28gZG8gbW9kZWwsIHZlcmlmaWNhbmRvIHNlIGEgZGF0YSDDqSB2YWxpZGFcbiAgICBpZiAodGhpcy5vYmpNYXNrLnZhbHVlVG9Nb2RlbCB8fCB0aGlzLm9iak1hc2sudmFsdWVUb01vZGVsID09PSAnJykge1xuICAgICAgaWYgKHRoaXMub2JqTWFzay52YWx1ZVRvTW9kZWwubGVuZ3RoID49IDEwKSB7XG4gICAgICAgIHRoaXMuY29udHJvbE1vZGVsKHRoaXMuZ2V0RGF0ZUZyb21TdHJpbmcodGhpcy5pbnB1dEVsLm5hdGl2ZUVsZW1lbnQudmFsdWUpKTtcbiAgICAgICAgdGhpcy5kYXRlID0gdGhpcy5nZXREYXRlRnJvbVN0cmluZyh0aGlzLmlucHV0RWwubmF0aXZlRWxlbWVudC52YWx1ZSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmRhdGUgPSB1bmRlZmluZWQ7XG4gICAgICAgIHRoaXMuY29udHJvbE1vZGVsKHRoaXMuZGF0ZSk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZGF0ZSA9IHVuZGVmaW5lZDtcbiAgICB9XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdrZXlkb3duJywgWyckZXZlbnQnXSlcbiAgb25LZXlkb3duKCRldmVudD86IGFueSkge1xuICAgIGlmICh0aGlzLnJlYWRvbmx5KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5vYmpNYXNrLmtleWRvd24oJGV2ZW50KTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLnNldERpYWxvZ1BpY2tlclN0eWxlRGlzcGxheSgnbm9uZScpO1xuICAgIGlmICh0aGlzLmF1dG9Gb2N1cykge1xuICAgICAgdGhpcy5mb2N1cygpO1xuICAgIH1cbiAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZSh0aGlzLmljb25EYXRlcGlja2VyLmJ1dHRvbkVsZW1lbnQubmF0aXZlRWxlbWVudCwgJ2FyaWEtbGFiZWwnLCB0aGlzLmxpdGVyYWxzLm9wZW4pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5yZW1vdmVMaXN0ZW5lcnMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGdW7Dp8OjbyBxdWUgYXRyaWJ1aSBmb2NvIGFvIGNvbXBvbmVudGUuXG4gICAqXG4gICAqIFBhcmEgdXRpbGl6w6EtbGEgw6kgbmVjZXNzw6FyaW8gdGVyIGEgaW5zdMOibmNpYSBkbyBjb21wb25lbnRlIG5vIERPTSwgcG9kZW5kbyBzZXIgdXRpbGl6YWRvIG8gVmlld0NoaWxkIGRhIHNlZ3VpbnRlIGZvcm1hOlxuICAgKlxuICAgKiBgYGBcbiAgICogaW1wb3J0IHsgUG9EYXRlcGlja2VyQ29tcG9uZW50IH0gZnJvbSAnQHBvLXVpL25nLWNvbXBvbmVudHMnO1xuICAgKlxuICAgKiAuLi5cbiAgICpcbiAgICogQFZpZXdDaGlsZChQb0RhdGVwaWNrZXJDb21wb25lbnQsIHsgc3RhdGljOiB0cnVlIH0pIGRhdGVwaWNrZXI6IFBvRGF0ZXBpY2tlckNvbXBvbmVudDtcbiAgICpcbiAgICogZm9jdXNEYXRlcGlja2VyKCkge1xuICAgKiAgIHRoaXMuZGF0ZXBpY2tlci5mb2N1cygpO1xuICAgKiB9XG4gICAqIGBgYFxuICAgKi9cbiAgZm9jdXMoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XG4gICAgICB0aGlzLmlucHV0RWwubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgIH1cbiAgfVxuXG4gIHRvZ2dsZVBpY2tlcigpIHtcbiAgICBpZiAodGhpcy5kaXNhYmxlZCB8fCB0aGlzLnJlYWRvbmx5KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLnZpc2libGUpIHtcbiAgICAgIHRoaXMuc2V0Q2FsZW5kYXJQb3NpdGlvbigpO1xuICAgICAgdGhpcy5pbml0aWFsaXplTGlzdGVuZXJzKCk7XG4gICAgICB0aGlzLnZpc2libGUgPSB0cnVlO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmlucHV0RWwubmF0aXZlRWxlbWVudC5kaXNhYmxlZCA9IGZhbHNlO1xuICAgICAgdGhpcy5jbG9zZUNhbGVuZGFyKCk7XG4gICAgfVxuICB9XG5cbiAgZGF0ZVNlbGVjdGVkKCkge1xuICAgIHRoaXMub25Ub3VjaGVkTW9kZWw/LigpO1xuICAgIGlmICghdGhpcy52ZXJpZnlNb2JpbGUoKSkge1xuICAgICAgdGhpcy5pbnB1dEVsLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICB9XG5cbiAgICB0aGlzLmlucHV0RWwubmF0aXZlRWxlbWVudC52YWx1ZSA9IHRoaXMuZm9ybWF0VG9EYXRlKHRoaXMuZGF0ZSk7XG4gICAgdGhpcy5jb250cm9sTW9kZWwodGhpcy5kYXRlKTtcbiAgICB0aGlzLmNvbnRyb2xDaGFuZ2VFbWl0dGVyKCk7XG4gICAgdGhpcy5jbG9zZUNhbGVuZGFyKCk7XG4gIH1cblxuICAvLyBFc2NvbmRlIFBpY2tlciBxdWFuZG8gZm9yIGNsaWNhZG8gZm9yYVxuICB3YXNDbGlja2VkT25QaWNrZXIoZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgIGlmICghdGhpcy5kaWFsb2dQaWNrZXIgfHwgIXRoaXMuaWNvbkRhdGVwaWNrZXIpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKFxuICAgICAgKCF0aGlzLmRpYWxvZ1BpY2tlci5uYXRpdmVFbGVtZW50LmNvbnRhaW5zKGV2ZW50LnRhcmdldCkgfHwgdGhpcy5oYXNPdmVybGF5Q2xhc3MoZXZlbnQudGFyZ2V0KSkgJiZcbiAgICAgICF0aGlzLmljb25EYXRlcGlja2VyLmJ1dHRvbkVsZW1lbnQubmF0aXZlRWxlbWVudC5jb250YWlucyhldmVudC50YXJnZXQpICYmXG4gICAgICAhdGhpcy5oYXNBdHRyQ2FsZW5kYXIoZXZlbnQudGFyZ2V0KVxuICAgICkge1xuICAgICAgdGhpcy5jbG9zZUNhbGVuZGFyKCk7XG4gICAgfVxuICB9XG5cbiAgaGFzSW52YWxpZENsYXNzKCkge1xuICAgIHJldHVybiAoXG4gICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKCduZy1pbnZhbGlkJykgJiZcbiAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoJ25nLWRpcnR5JykgJiZcbiAgICAgIHRoaXMuaW5wdXRFbC5uYXRpdmVFbGVtZW50LnZhbHVlICE9PSAnJ1xuICAgICk7XG4gIH1cblxuICBnZXRFcnJvclBhdHRlcm4oKSB7XG4gICAgcmV0dXJuIHRoaXMuZXJyb3JQYXR0ZXJuICE9PSAnJyAmJiB0aGlzLmhhc0ludmFsaWRDbGFzcygpID8gdGhpcy5lcnJvclBhdHRlcm4gOiAnJztcbiAgfVxuXG4gIGNsZWFyKCkge1xuICAgIHRoaXMudmFsdWVCZWZvcmVDaGFuZ2UgPSB0aGlzLmZvcm1hdFRvRGF0ZSh0aGlzLmRhdGUpO1xuICAgIHRoaXMuZGF0ZSA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLmNvbnRyb2xNb2RlbCh0aGlzLmRhdGUpO1xuXG4gICAgdGhpcy5jb250cm9sQ2hhbmdlRW1pdHRlcigpO1xuICB9XG5cbiAgZXZlbnRPbkJsdXIoJGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLm9uVG91Y2hlZE1vZGVsPy4oKTtcbiAgICBjb25zdCBkYXRlID0gdGhpcy5pbnB1dEVsLm5hdGl2ZUVsZW1lbnQudmFsdWU7XG4gICAgY29uc3QgbmV3RGF0ZSA9IGRhdGUgPyB0aGlzLmdldERhdGVGcm9tU3RyaW5nKGRhdGUpIDogdW5kZWZpbmVkO1xuICAgIHRoaXMub2JqTWFzay5ibHVyKCRldmVudCk7XG4gICAgdGhpcy5vbmJsdXIuZW1pdCgpO1xuXG4gICAgaWYgKHRoaXMub2JqTWFzay52YWx1ZVRvTW9kZWwpIHtcbiAgICAgIGlmICh0aGlzLm9iak1hc2sudmFsdWVUb01vZGVsLmxlbmd0aCA+PSAxMCkge1xuICAgICAgICB0aGlzLmNvbnRyb2xNb2RlbChuZXdEYXRlKTtcbiAgICAgICAgdGhpcy5kYXRlID0gbmV3RGF0ZTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuZGF0ZSA9IG51bGw7XG4gICAgICAgIHRoaXMuY29udHJvbE1vZGVsKHRoaXMuZGF0ZSk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZGF0ZSA9IHVuZGVmaW5lZDtcbiAgICAgIHRoaXMuY2FsbE9uQ2hhbmdlKHRoaXMuZGF0ZSk7XG4gICAgfVxuXG4gICAgdGhpcy5jb250cm9sQ2hhbmdlRW1pdHRlcigpO1xuICB9XG5cbiAgZXZlbnRPbkNsaWNrKCRldmVudCkge1xuICAgIGlmICh0aGlzLnZlcmlmeU1vYmlsZSgpKSB7XG4gICAgICAkZXZlbnQudGFyZ2V0LmJsdXIoKTtcblxuICAgICAgLy8gYWJyZSBvIGNhbGVuZGFyIHF1YW5kbyBjbGljYXIgbm8gaW5wdXQgc29tZW50ZSBubyBtb2JpbGVcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy50b2dnbGVQaWNrZXIoKSwgMCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIEF0dWFsaXphIGEgcG9zacOnw6NvIGRvIGN1cnNvciBhbyBjbGljYXJcbiAgICAgIHRoaXMub2JqTWFzay5jbGljaygkZXZlbnQpO1xuICAgIH1cbiAgfVxuXG4gIG9uS2V5UHJlc3MoZXZlbnQ6IGFueSkge1xuICAgIGlmIChpc0tleUNvZGVFbnRlcihldmVudCkgfHwgaXNLZXlDb2RlU3BhY2UoZXZlbnQpKSB7XG4gICAgICB0aGlzLnRvZ2dsZVBpY2tlcigpO1xuICAgIH1cbiAgfVxuXG4gIGZvcm1hdFRvRGF0ZSh2YWx1ZTogRGF0ZSkge1xuICAgIGlmICghdmFsdWUpIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgbGV0IGRhdGVGb3JtYXR0ZWQgPSByZXBsYWNlRm9ybWF0U2VwYXJhdG9yKHRoaXMuZm9ybWF0LCB0aGlzLmxhbmd1YWdlU2VydmljZS5nZXREYXRlU2VwYXJhdG9yKHRoaXMubG9jYWxlKSk7XG5cbiAgICBkYXRlRm9ybWF0dGVkID0gZGF0ZUZvcm1hdHRlZC5yZXBsYWNlKCdkZCcsICgnMCcgKyB2YWx1ZS5nZXREYXRlKCkpLnNsaWNlKC0yKSk7XG4gICAgZGF0ZUZvcm1hdHRlZCA9IGRhdGVGb3JtYXR0ZWQucmVwbGFjZSgnbW0nLCAoJzAnICsgKHZhbHVlLmdldE1vbnRoKCkgKyAxKSkuc2xpY2UoLTIpKTtcbiAgICBkYXRlRm9ybWF0dGVkID0gZGF0ZUZvcm1hdHRlZC5yZXBsYWNlKCd5eXl5JywgZm9ybWF0WWVhcih2YWx1ZS5nZXRGdWxsWWVhcigpKSk7XG5cbiAgICByZXR1cm4gZGF0ZUZvcm1hdHRlZDtcbiAgfVxuXG4gIHJlZnJlc2hWYWx1ZSh2YWx1ZTogRGF0ZSkge1xuICAgIGlmICh2YWx1ZSkge1xuICAgICAgdGhpcy5pbnB1dEVsLm5hdGl2ZUVsZW1lbnQudmFsdWUgPSB0aGlzLmZvcm1hdFRvRGF0ZSh2YWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gRnVuw6fDo28gaW1wbGVtZW50YWRhIGRvIENvbnRyb2xWYWx1ZUFjY2Vzc29yXG4gIHdyaXRlVmFsdWUodmFsdWU6IGFueSkge1xuICAgIGlmICh0aGlzLmlucHV0RWwgJiYgdmFsdWUpIHtcbiAgICAgIGlmICh2YWx1ZSBpbnN0YW5jZW9mIERhdGUpIHtcbiAgICAgICAgY29uc3QgZGF0ZVN0cmluZyA9IHZhbHVlLnRvU3RyaW5nKCk7XG4gICAgICAgIHRoaXMuaG91ciA9XG4gICAgICAgICAgJ1QnICsgZGF0ZVN0cmluZy5zdWJzdHJpbmcoMTYsIDI0KSArIGRhdGVTdHJpbmcuc3Vic3RyaW5nKDI4LCAzMSkgKyAnOicgKyBkYXRlU3RyaW5nLnN1YnN0cmluZygzMSwgMzMpO1xuICAgICAgICB0aGlzLmRhdGUgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy5pbnB1dEVsLm5hdGl2ZUVsZW1lbnQudmFsdWUgPSB0aGlzLmZvcm1hdFRvRGF0ZSh2YWx1ZSk7XG4gICAgICB9IGVsc2UgaWYgKHRoaXMuaXNWYWxpZERhdGVJc28odmFsdWUpIHx8IHRoaXMuaXNWYWxpZEV4dGVuZGVkSXNvKHZhbHVlKSkge1xuICAgICAgICBpZiAodGhpcy5pc1ZhbGlkRXh0ZW5kZWRJc28odmFsdWUpKSB7XG4gICAgICAgICAgdGhpcy5ob3VyID0gdmFsdWUuc3Vic3RyaW5nKDEwLCAyNSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5pc29Gb3JtYXQgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIHRoaXMuaXNFeHRlbmRlZElTTyA9IHRoaXMuaXNWYWxpZEV4dGVuZGVkSXNvKHZhbHVlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGRheSA9IHBhcnNlSW50KHZhbHVlLnN1YnN0cmluZyg4LCAxMCksIDEwKTtcbiAgICAgICAgY29uc3QgbW9udGggPSBwYXJzZUludCh2YWx1ZS5zdWJzdHJpbmcoNSwgNyksIDEwKSAtIDE7XG4gICAgICAgIGNvbnN0IHllYXIgPSBwYXJzZUludCh2YWx1ZS5zdWJzdHJpbmcoMCwgNCksIDEwKTtcblxuICAgICAgICBjb25zdCBkYXRlVGVtcCA9IG5ldyBEYXRlKHllYXIsIG1vbnRoLCBkYXkpO1xuXG4gICAgICAgIHNldFllYXJGcm9tMFRvMTAwKGRhdGVUZW1wLCB5ZWFyKTtcblxuICAgICAgICB0aGlzLmRhdGUgPSBkYXRlVGVtcDtcbiAgICAgICAgdGhpcy5pbnB1dEVsLm5hdGl2ZUVsZW1lbnQudmFsdWUgPSB0aGlzLmZvcm1hdFRvRGF0ZShkYXRlVGVtcCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmlucHV0RWwubmF0aXZlRWxlbWVudC52YWx1ZSA9ICcnO1xuICAgICAgICB0aGlzLmRhdGUgPSB1bmRlZmluZWQ7XG4gICAgICB9XG4gICAgICB0aGlzLmNvbnRyb2xNb2RlbCh0aGlzLmRhdGUpO1xuICAgIH0gZWxzZSBpZiAodGhpcy5pbnB1dEVsKSB7XG4gICAgICB0aGlzLmlucHV0RWwubmF0aXZlRWxlbWVudC52YWx1ZSA9ICcnO1xuICAgICAgdGhpcy5kYXRlID0gdW5kZWZpbmVkO1xuICAgICAgdGhpcy5jYWxsT25DaGFuZ2UodGhpcy5kYXRlLCBmYWxzZSk7XG4gICAgfVxuXG4gICAgdGhpcy52YWx1ZUJlZm9yZUNoYW5nZSA9IHRoaXMuZm9ybWF0VG9EYXRlKHRoaXMuZGF0ZSk7XG4gIH1cblxuICBpc1ZhbGlkRGF0ZUlzbyh2YWx1ZTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMuZGF0ZVJlZ2V4LnRlc3QodmFsdWUpO1xuICB9XG5cbiAgaXNWYWxpZEV4dGVuZGVkSXNvKHZhbHVlKSB7XG4gICAgcmV0dXJuIHRoaXMuaXNvUmVnZXgudGVzdCh2YWx1ZSk7XG4gIH1cblxuICBoYXNPdmVybGF5Q2xhc3MoZWxlbWVudDogYW55KSB7XG4gICAgcmV0dXJuIGVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKCdwby1kYXRlcGlja2VyLWNhbGVuZGFyLW92ZXJsYXknKTtcbiAgfVxuXG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gIHZlcmlmeU1vYmlsZSgpIHtcbiAgICByZXR1cm4gaXNNb2JpbGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgY2xvc2VDYWxlbmRhcigpIHtcbiAgICB0aGlzLnZpc2libGUgPSBmYWxzZTtcbiAgICB0aGlzLnJlbW92ZUxpc3RlbmVycygpO1xuICAgIHRoaXMuc2V0RGlhbG9nUGlja2VyU3R5bGVEaXNwbGF5KCdub25lJyk7XG4gIH1cblxuICBwcml2YXRlIGNvbnRyb2xDaGFuZ2VFbWl0dGVyKCkge1xuICAgIGNvbnN0IGRhdGVNb2RlbEZvcm1hdHRlZCA9IHRoaXMuZm9ybWF0VG9EYXRlKHRoaXMuZGF0ZSk7XG5cbiAgICBpZiAoZGF0ZU1vZGVsRm9ybWF0dGVkICE9PSB0aGlzLnZhbHVlQmVmb3JlQ2hhbmdlKSB7XG4gICAgICB0aGlzLnZhbHVlQmVmb3JlQ2hhbmdlID0gZGF0ZU1vZGVsRm9ybWF0dGVkO1xuXG4gICAgICBjbGVhclRpbWVvdXQodGhpcy50aW1lb3V0Q2hhbmdlKTtcbiAgICAgIHRoaXMudGltZW91dENoYW5nZSA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLm9uY2hhbmdlLmVtaXQoZGF0ZU1vZGVsRm9ybWF0dGVkKTtcbiAgICAgIH0sIDIwMCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBoYXNBdHRyQ2FsZW5kYXIoZWxlbWVudDogYW55KSB7XG4gICAgY29uc3QgYXR0ckNhbGVuZGFyID0gJ2F0dHItY2FsZW5kYXInO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIChlbGVtZW50ICYmIGVsZW1lbnQuaGFzQXR0cmlidXRlKGF0dHJDYWxlbmRhcikpIHx8XG4gICAgICAoZWxlbWVudC5wYXJlbnRFbGVtZW50ICYmIGVsZW1lbnQucGFyZW50RWxlbWVudC5oYXNBdHRyaWJ1dGUoYXR0ckNhbGVuZGFyKSlcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0aWFsaXplTGlzdGVuZXJzKCkge1xuICAgIHRoaXMuY2xpY2tMaXN0ZW5lciA9IHRoaXMucmVuZGVyZXIubGlzdGVuKCdkb2N1bWVudCcsICdjbGljaycsIChldmVudDogTW91c2VFdmVudCkgPT4ge1xuICAgICAgdGhpcy53YXNDbGlja2VkT25QaWNrZXIoZXZlbnQpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5ldmVudFJlc2l6ZUxpc3RlbmVyID0gdGhpcy5yZW5kZXJlci5saXN0ZW4oJ3dpbmRvdycsICdyZXNpemUnLCAoKSA9PiB7XG4gICAgICB0aGlzLmNsb3NlQ2FsZW5kYXIoKTtcbiAgICB9KTtcblxuICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdzY3JvbGwnLCB0aGlzLm9uU2Nyb2xsLCB0cnVlKTtcbiAgfVxuXG4gIHByaXZhdGUgb25TY3JvbGwgPSAoKTogdm9pZCA9PiB7XG4gICAgdGhpcy5jb250cm9sUG9zaXRpb24uYWRqdXN0UG9zaXRpb24ocG9DYWxlbmRhclBvc2l0aW9uRGVmYXVsdCk7XG4gIH07XG5cbiAgcHJpdmF0ZSByZW1vdmVMaXN0ZW5lcnMoKSB7XG4gICAgaWYgKHRoaXMuY2xpY2tMaXN0ZW5lcikge1xuICAgICAgdGhpcy5jbGlja0xpc3RlbmVyKCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZXZlbnRSZXNpemVMaXN0ZW5lcikge1xuICAgICAgdGhpcy5ldmVudFJlc2l6ZUxpc3RlbmVyKCk7XG4gICAgfVxuXG4gICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIHRoaXMub25TY3JvbGwsIHRydWUpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXREaWFsb2dQaWNrZXJTdHlsZURpc3BsYXkodmFsdWUpIHtcbiAgICB0aGlzLmRpYWxvZ1BpY2tlci5uYXRpdmVFbGVtZW50LnN0eWxlLmRpc3BsYXkgPSB2YWx1ZTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0Q2FsZW5kYXJQb3NpdGlvbigpIHtcbiAgICB0aGlzLnNldERpYWxvZ1BpY2tlclN0eWxlRGlzcGxheSgnYmxvY2snKTtcblxuICAgIHRoaXMuY29udHJvbFBvc2l0aW9uLnNldEVsZW1lbnRzKFxuICAgICAgdGhpcy5kaWFsb2dQaWNrZXIubmF0aXZlRWxlbWVudCxcbiAgICAgIHBvQ2FsZW5kYXJDb250ZW50T2Zmc2V0LFxuICAgICAgdGhpcy5pbnB1dEVsLFxuICAgICAgWyd0b3AtbGVmdCcsICd0b3AtcmlnaHQnLCAnYm90dG9tLWxlZnQnLCAnYm90dG9tLXJpZ2h0J10sXG4gICAgICBmYWxzZSxcbiAgICAgIHRydWVcbiAgICApO1xuXG4gICAgdGhpcy5jb250cm9sUG9zaXRpb24uYWRqdXN0UG9zaXRpb24ocG9DYWxlbmRhclBvc2l0aW9uRGVmYXVsdCk7XG4gIH1cbn1cbiIsIjxwby1maWVsZC1jb250YWluZXJcbiAgW3AtZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICBbcC1pZF09XCJpZFwiXG4gIFtwLWxhYmVsXT1cImxhYmVsXCJcbiAgW3Atb3B0aW9uYWxdPVwib3B0aW9uYWxcIlxuICBbcC1yZXF1aXJlZF09XCJyZXF1aXJlZFwiXG4gIFtwLXNob3ctcmVxdWlyZWRdPVwic2hvd1JlcXVpcmVkXCJcbj5cbiAgPGRpdiBjbGFzcz1cInBvLWZpZWxkLWNvbnRhaW5lci1jb250ZW50IHBvLWZpZWxkLWNvbnRhaW5lci1jb250ZW50LWRhdGVwaWNrZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwicG8tZmllbGQtY29udGFpbmVyLWlucHV0XCI+XG4gICAgICA8aW5wdXRcbiAgICAgICAgI2lucFxuICAgICAgICBjbGFzcz1cInBvLWlucHV0IHBvLWRhdGVwaWNrZXJcIlxuICAgICAgICBbY2xhc3MucG8taW5wdXQtaWNvbi1yaWdodF09XCJjbGVhbiAmJiBpbnAudmFsdWVcIlxuICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgIFthdHRyLm5hbWVdPVwibmFtZVwiXG4gICAgICAgIFthdXRvY29tcGxldGVdPVwiYXV0b2NvbXBsZXRlXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgW2lkXT1cImlkXCJcbiAgICAgICAgW3BsYWNlaG9sZGVyXT1cImRpc2FibGVkID8gJycgOiBwbGFjZWhvbGRlclwiXG4gICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXG4gICAgICAgIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiXG4gICAgICAgIChibHVyKT1cImV2ZW50T25CbHVyKCRldmVudClcIlxuICAgICAgICAoY2xpY2spPVwiZXZlbnRPbkNsaWNrKCRldmVudClcIlxuICAgICAgLz5cbiAgICAgIDxkaXYgY2xhc3M9XCJwby1maWVsZC1pY29uLWNvbnRhaW5lci1yaWdodFwiPlxuICAgICAgICA8cG8tY2xlYW5cbiAgICAgICAgICBjbGFzcz1cInBvLWljb24taW5wdXRcIlxuICAgICAgICAgICpuZ0lmPVwiY2xlYW4gJiYgIWRpc2FibGVkICYmICFyZWFkb25seVwiXG4gICAgICAgICAgW3AtZWxlbWVudC1yZWZdPVwiaW5wdXRFbFwiXG4gICAgICAgICAgKHAtY2hhbmdlLWV2ZW50KT1cImNsZWFyKClcIlxuICAgICAgICA+XG4gICAgICAgIDwvcG8tY2xlYW4+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8cG8tYnV0dG9uXG4gICAgICAjaWNvbkRhdGVwaWNrZXJcbiAgICAgIGNsYXNzPVwicG8tZGF0ZXBpY2tlci1idXR0b25cIlxuICAgICAgcC1pY29uPVwicG8taWNvbi1jYWxlbmRhclwiXG4gICAgICBwLWtpbmQ9XCJ0ZXJ0aWFyeVwiXG4gICAgICBbcC1kaXNhYmxlZF09XCJkaXNhYmxlZCB8fCByZWFkb25seVwiXG4gICAgICAoa2V5ZG93bik9XCJvbktleVByZXNzKCRldmVudClcIlxuICAgICAgKHAtY2xpY2spPVwidG9nZ2xlUGlja2VyKClcIlxuICAgID5cbiAgICA8L3BvLWJ1dHRvbj5cbiAgPC9kaXY+XG5cbiAgPGRpdiAjZGlhbG9nUGlja2VyIFtjbGFzcy5wby1kYXRlcGlja2VyLXBvcHVwLWNhbGVuZGFyXT1cIiF2ZXJpZnlNb2JpbGUoKVwiPlxuICAgIDxkaXYgKm5nSWY9XCJ2ZXJpZnlNb2JpbGUoKVwiIGNsYXNzPVwicG8tZGF0ZXBpY2tlci1jYWxlbmRhci1vdmVybGF5XCI+PC9kaXY+XG4gICAgPHBvLWNhbGVuZGFyXG4gICAgICBbY2xhc3MucG8tZGF0ZXBpY2tlci1jYWxlbmRhci1tb2JpbGVdPVwidmVyaWZ5TW9iaWxlKClcIlxuICAgICAgI2NhbGVuZGFyXG4gICAgICBbKG5nTW9kZWwpXT1cImRhdGVcIlxuICAgICAgW3AtbWF4LWRhdGVdPVwibWF4RGF0ZVwiXG4gICAgICBbcC1taW4tZGF0ZV09XCJtaW5EYXRlXCJcbiAgICAgIFtwLWxvY2FsZV09XCJsb2NhbGVcIlxuICAgICAgKHAtY2hhbmdlKT1cImRhdGVTZWxlY3RlZCgpXCJcbiAgICA+XG4gICAgPC9wby1jYWxlbmRhcj5cbiAgPC9kaXY+XG5cbiAgPHBvLWZpZWxkLWNvbnRhaW5lci1ib3R0b21cbiAgICBbcC1oZWxwXT1cImhlbHBcIlxuICAgIFtwLWRpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICBbcC1lcnJvci1wYXR0ZXJuXT1cImdldEVycm9yUGF0dGVybigpXCJcbiAgPjwvcG8tZmllbGQtY29udGFpbmVyLWJvdHRvbT5cbjwvcG8tZmllbGQtY29udGFpbmVyPlxuIl19
|
|
@@ -12,4 +12,4 @@ export const PoDatepickerLiterals = {
|
|
|
12
12
|
open: 'открытый календарь'
|
|
13
13
|
}
|
|
14
14
|
};
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tZGF0ZXBpY2tlci5saXRlcmFscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1maWVsZC9wby1kYXRlcGlja2VyL3BvLWRhdGVwaWNrZXIubGl0ZXJhbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUc7SUFDbEMsRUFBRSxFQUFFO1FBQ0YsSUFBSSxFQUFFLGVBQWU7S0FDdEI7SUFDRCxFQUFFLEVBQUU7UUFDRixJQUFJLEVBQUUsb0JBQW9CO0tBQzNCO0lBQ0QsRUFBRSxFQUFFO1FBQ0YsSUFBSSxFQUFFLGtCQUFrQjtLQUN6QjtJQUNELEVBQUUsRUFBRTtRQUNGLElBQUksRUFBRSxvQkFBb0I7S0FDM0I7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IFBvRGF0ZXBpY2tlckxpdGVyYWxzID0ge1xuICBlbjoge1xuICAgIG9wZW46ICdPcGVuIGNhbGVuZGFyJ1xuICB9LFxuICBlczoge1xuICAgIG9wZW46ICdDYWxlbmRhcmlvIGFiaWVydG8nXG4gIH0sXG4gIHB0OiB7XG4gICAgb3BlbjogJ0FicmlyIGNhbGVuZMOhcmlvJ1xuICB9LFxuICBydToge1xuICAgIG9wZW46ICfQvtGC0LrRgNGL0YLRi9C5INC60LDQu9C10L3QtNCw0YDRjCdcbiAgfVxufTtcbiJdfQ==
|
|
@@ -26,4 +26,4 @@ export class PoDatepickerModule {
|
|
|
26
26
|
}]
|
|
27
27
|
}], null, null); })();
|
|
28
28
|
(function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(PoDatepickerModule, { declarations: [PoDatepickerComponent], imports: [CommonModule, FormsModule, PoFieldContainerModule, PoCleanModule, PoCalendarModule, PoButtonModule], exports: [PoDatepickerComponent] }); })();
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tZGF0ZXBpY2tlci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2NvbXBvbmVudHMvcG8tZmllbGQvcG8tZGF0ZXBpY2tlci9wby1kYXRlcGlja2VyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFekMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDeEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0saURBQWlELENBQUM7QUFDekYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzVELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUVqRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7QUFFbEU7Ozs7R0FJRztBQU1ILE1BQU0sT0FBTyxrQkFBa0I7NEVBQWxCLGtCQUFrQjs0REFBbEIsa0JBQWtCO2dFQUpuQixZQUFZLEVBQUUsV0FBVyxFQUFFLHNCQUFzQixFQUFFLGFBQWEsRUFBRSxnQkFBZ0IsRUFBRSxjQUFjOzt1RkFJakcsa0JBQWtCO2NBTDlCLFFBQVE7ZUFBQztnQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsV0FBVyxFQUFFLHNCQUFzQixFQUFFLGFBQWEsRUFBRSxnQkFBZ0IsRUFBRSxjQUFjLENBQUM7Z0JBQzdHLE9BQU8sRUFBRSxDQUFDLHFCQUFxQixDQUFDO2dCQUNoQyxZQUFZLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQzthQUN0Qzs7d0ZBQ1ksa0JBQWtCLG1CQUZkLHFCQUFxQixhQUYxQixZQUFZLEVBQUUsV0FBVyxFQUFFLHNCQUFzQixFQUFFLGFBQWEsRUFBRSxnQkFBZ0IsRUFBRSxjQUFjLGFBQ2xHLHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFBvQ2FsZW5kYXJNb2R1bGUgfSBmcm9tICcuLi8uLi9wby1jYWxlbmRhci9wby1jYWxlbmRhci5tb2R1bGUnO1xuaW1wb3J0IHsgUG9GaWVsZENvbnRhaW5lck1vZHVsZSB9IGZyb20gJy4uL3BvLWZpZWxkLWNvbnRhaW5lci9wby1maWVsZC1jb250YWluZXIubW9kdWxlJztcbmltcG9ydCB7IFBvQ2xlYW5Nb2R1bGUgfSBmcm9tICcuLi9wby1jbGVhbi9wby1jbGVhbi5tb2R1bGUnO1xuaW1wb3J0IHsgUG9CdXR0b25Nb2R1bGUgfSBmcm9tICcuLi8uLi9wby1idXR0b24nO1xuXG5pbXBvcnQgeyBQb0RhdGVwaWNrZXJDb21wb25lbnQgfSBmcm9tICcuL3BvLWRhdGVwaWNrZXIuY29tcG9uZW50JztcblxuLyoqXG4gKiBAZGVzY3JpcHRpb25cbiAqXG4gKiBNw7NkdWxvIGRvIGNvbXBvbmVudGUgYHBvLWRhdGVwaWNrZXJgLlxuICovXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBGb3Jtc01vZHVsZSwgUG9GaWVsZENvbnRhaW5lck1vZHVsZSwgUG9DbGVhbk1vZHVsZSwgUG9DYWxlbmRhck1vZHVsZSwgUG9CdXR0b25Nb2R1bGVdLFxuICBleHBvcnRzOiBbUG9EYXRlcGlja2VyQ29tcG9uZW50XSxcbiAgZGVjbGFyYXRpb25zOiBbUG9EYXRlcGlja2VyQ29tcG9uZW50XVxufSlcbmV4cG9ydCBjbGFzcyBQb0RhdGVwaWNrZXJNb2R1bGUge31cbiJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tZGF0ZXBpY2tlci1yYW5nZS1saXRlcmFscy5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2NvbXBvbmVudHMvcG8tZmllbGQvcG8tZGF0ZXBpY2tlci1yYW5nZS9pbnRlcmZhY2VzL3BvLWRhdGVwaWNrZXItcmFuZ2UtbGl0ZXJhbHMuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEB1c2VkQnkgUG9EYXRlcGlja2VyUmFuZ2VDb21wb25lbnRcbiAqXG4gKiBAZGVzY3JpcHRpb25cbiAqXG4gKiBJbnRlcmZhY2UgcGFyYSBkZWZpbmnDp8OjbyBkYXMgbGl0ZXJhaXMgdXNhZGFzIG5vIGBwby1kYXRlcGlja2VyLXJhbmdlYC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQb0RhdGVwaWNrZXJSYW5nZUxpdGVyYWxzIHtcbiAgLyoqIERhdGEgZW0gZm9ybWF0byBpbnbDoWxpZG8uICovXG4gIGludmFsaWRGb3JtYXQ/OiBzdHJpbmc7XG5cbiAgLyoqIERhdGEgaW5pY2lhbCBtYWlvciBxdWUgZGF0YSBmaW5hbC4gKi9cbiAgc3RhcnREYXRlR3JlYXRlclRoYW5FbmREYXRlPzogc3RyaW5nO1xuXG4gIC8qKiBEYXRhIGludsOhbGlkYS4gKi9cbiAgaW52YWxpZERhdGU/OiBzdHJpbmc7XG5cbiAgLyoqIERhdGEgZm9yYSBkbyBwZXLDrW9kby4gKi9cbiAgZGF0ZU91dE9mUGVyaW9kPzogc3RyaW5nO1xufVxuIl19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tZGF0ZXBpY2tlci1yYW5nZS5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2NvbXBvbmVudHMvcG8tZmllbGQvcG8tZGF0ZXBpY2tlci1yYW5nZS9pbnRlcmZhY2VzL3BvLWRhdGVwaWNrZXItcmFuZ2UuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEB1c2VkQnkgUG9EYXRlcGlja2VyUmFuZ2VDb21wb25lbnRcbiAqXG4gKiBAZGVzY3JpcHRpb25cbiAqXG4gKiBJbnRlcmZhY2UgcGFyYSBkZWZpbmnDp8OjbyBkbyBvYmpldG8gY29tIGEgZGF0YSBpbmljaWFsIGUgZmluYWwgdXNhZGFzIG5vIGBwby1kYXRlcGlja2VyLXJhbmdlYC5cbiAqXG4gKiA+IE9zIGZvcm1hdG9zIGRlIGRhdGEgcGVybWl0aWRvcyBzZWd1ZW0gb3MgcGFkcsO1ZXMgZGVmaW5pZG9zIG5hXG4gKiBbZGVzY3Jpw6fDo28gZG8gY29tcG9uZW50ZV0oL2RvY3VtZW50YXRpb24vcG8tZGF0ZXBpY2tlci1yYW5nZSNhY2NlcHRlZC1mb3JtYXRzKS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQb0RhdGVwaWNrZXJSYW5nZSB7XG4gIC8qKiBEYXRhIGluaWNpYWwgKi9cbiAgc3RhcnQ6IHN0cmluZyB8IERhdGU7XG5cbiAgLyoqIERhdGEgZmluYWwgKi9cbiAgZW5kOiBzdHJpbmcgfCBEYXRlO1xufVxuIl19
|