igniteui-angular 16.0.0-beta.2 → 16.0.0-beta.3
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/esm2022/lib/accordion/accordion.component.mjs +4 -4
- package/esm2022/lib/accordion/accordion.module.mjs +5 -5
- package/esm2022/lib/action-strip/action-strip.component.mjs +7 -7
- package/esm2022/lib/action-strip/action-strip.module.mjs +5 -5
- package/esm2022/lib/action-strip/grid-actions/grid-action-button.component.mjs +4 -4
- package/esm2022/lib/action-strip/grid-actions/grid-actions-base.directive.mjs +4 -4
- package/esm2022/lib/action-strip/grid-actions/grid-editing-actions.component.mjs +4 -4
- package/esm2022/lib/action-strip/grid-actions/grid-pinning-actions.component.mjs +4 -4
- package/esm2022/lib/avatar/avatar.component.mjs +4 -4
- package/esm2022/lib/avatar/avatar.module.mjs +5 -5
- package/esm2022/lib/badge/badge.component.mjs +4 -4
- package/esm2022/lib/badge/badge.module.mjs +5 -5
- package/esm2022/lib/banner/banner.component.mjs +4 -4
- package/esm2022/lib/banner/banner.directives.mjs +4 -4
- package/esm2022/lib/banner/banner.module.mjs +5 -5
- package/esm2022/lib/buttonGroup/buttonGroup.component.mjs +4 -4
- package/esm2022/lib/buttonGroup/buttongroup.module.mjs +5 -5
- package/esm2022/lib/calendar/calendar-base.mjs +4 -4
- package/esm2022/lib/calendar/calendar.component.mjs +4 -4
- package/esm2022/lib/calendar/calendar.directives.mjs +16 -16
- package/esm2022/lib/calendar/calendar.module.mjs +5 -5
- package/esm2022/lib/calendar/days-view/day-item.component.mjs +4 -4
- package/esm2022/lib/calendar/days-view/days-view.component.mjs +4 -4
- package/esm2022/lib/calendar/days-view/daysview-navigation.service.mjs +4 -4
- package/esm2022/lib/calendar/month-picker/month-picker-base.mjs +4 -4
- package/esm2022/lib/calendar/month-picker/month-picker.component.mjs +4 -4
- package/esm2022/lib/calendar/months-view/months-view.component.mjs +4 -4
- package/esm2022/lib/calendar/months-view.pipe.mjs +7 -7
- package/esm2022/lib/calendar/years-view/years-view.component.mjs +7 -7
- package/esm2022/lib/card/card.component.mjs +28 -28
- package/esm2022/lib/card/card.module.mjs +5 -5
- package/esm2022/lib/carousel/carousel.component.mjs +7 -7
- package/esm2022/lib/carousel/carousel.directives.mjs +10 -10
- package/esm2022/lib/carousel/carousel.module.mjs +5 -5
- package/esm2022/lib/carousel/slide.component.mjs +4 -4
- package/esm2022/lib/checkbox/checkbox.component.mjs +4 -4
- package/esm2022/lib/checkbox/checkbox.module.mjs +5 -5
- package/esm2022/lib/chips/chip.component.mjs +4 -4
- package/esm2022/lib/chips/chips-area.component.mjs +4 -4
- package/esm2022/lib/chips/chips.module.mjs +5 -5
- package/esm2022/lib/combo/combo-add-item.component.mjs +4 -4
- package/esm2022/lib/combo/combo-dropdown.component.mjs +4 -4
- package/esm2022/lib/combo/combo-item.component.mjs +4 -4
- package/esm2022/lib/combo/combo.api.mjs +4 -4
- package/esm2022/lib/combo/combo.common.mjs +4 -4
- package/esm2022/lib/combo/combo.component.mjs +4 -4
- package/esm2022/lib/combo/combo.directives.mjs +25 -25
- package/esm2022/lib/combo/combo.module.mjs +5 -5
- package/esm2022/lib/combo/combo.pipes.mjs +7 -7
- package/esm2022/lib/core/density.mjs +4 -4
- package/esm2022/lib/core/navigation/directives.mjs +7 -7
- package/esm2022/lib/core/navigation/nav.service.mjs +4 -4
- package/esm2022/lib/core/selection.mjs +4 -4
- package/esm2022/lib/core/touch.mjs +4 -4
- package/esm2022/lib/core/utils.mjs +4 -4
- package/esm2022/lib/date-common/calendar-container/calendar-container.component.mjs +4 -4
- package/esm2022/lib/date-common/picker-base.directive.mjs +4 -4
- package/esm2022/lib/date-common/picker-icons.common.mjs +10 -10
- package/esm2022/lib/date-picker/date-picker.component.mjs +4 -4
- package/esm2022/lib/date-picker/date-picker.module.mjs +5 -5
- package/esm2022/lib/date-range-picker/date-range-picker-inputs.common.mjs +16 -16
- package/esm2022/lib/date-range-picker/date-range-picker.component.mjs +4 -4
- package/esm2022/lib/date-range-picker/date-range-picker.module.mjs +5 -5
- package/esm2022/lib/dialog/dialog.component.mjs +4 -4
- package/esm2022/lib/dialog/dialog.directives.mjs +7 -7
- package/esm2022/lib/dialog/dialog.module.mjs +5 -5
- package/esm2022/lib/directives/autocomplete/autocomplete.directive.mjs +4 -4
- package/esm2022/lib/directives/autocomplete/autocomplete.module.mjs +5 -5
- package/esm2022/lib/directives/button/button.directive.mjs +4 -4
- package/esm2022/lib/directives/button/button.module.mjs +5 -5
- package/esm2022/lib/directives/date-time-editor/date-time-editor.directive.mjs +4 -4
- package/esm2022/lib/directives/date-time-editor/date-time-editor.module.mjs +5 -5
- package/esm2022/lib/directives/divider/divider.directive.mjs +4 -4
- package/esm2022/lib/directives/divider/divider.module.mjs +5 -5
- package/esm2022/lib/directives/drag-drop/drag-drop.directive.mjs +13 -13
- package/esm2022/lib/directives/drag-drop/drag-drop.module.mjs +5 -5
- package/esm2022/lib/directives/filter/filter.directive.mjs +7 -7
- package/esm2022/lib/directives/filter/filter.module.mjs +5 -5
- package/esm2022/lib/directives/focus/focus.directive.mjs +4 -4
- package/esm2022/lib/directives/focus/focus.module.mjs +5 -5
- package/esm2022/lib/directives/focus-trap/focus-trap.directive.mjs +4 -4
- package/esm2022/lib/directives/focus-trap/focus-trap.module.mjs +5 -5
- package/esm2022/lib/directives/for-of/base.helper.component.mjs +4 -4
- package/esm2022/lib/directives/for-of/display.container.mjs +4 -4
- package/esm2022/lib/directives/for-of/for_of.directive.mjs +7 -7
- package/esm2022/lib/directives/for-of/for_of.module.mjs +5 -5
- package/esm2022/lib/directives/for-of/for_of.sync.service.mjs +7 -7
- package/esm2022/lib/directives/for-of/horizontal.virtual.helper.component.mjs +4 -4
- package/esm2022/lib/directives/for-of/virtual.helper.component.mjs +4 -4
- package/esm2022/lib/directives/form-control/form-control.directive.mjs +4 -4
- package/esm2022/lib/directives/form-control/form-control.module.mjs +5 -5
- package/esm2022/lib/directives/hint/hint.directive.mjs +4 -4
- package/esm2022/lib/directives/input/input.directive.mjs +4 -4
- package/esm2022/lib/directives/label/label.directive.mjs +4 -4
- package/esm2022/lib/directives/layout/layout.directive.mjs +7 -7
- package/esm2022/lib/directives/layout/layout.module.mjs +5 -5
- package/esm2022/lib/directives/mask/mask-parsing.service.mjs +4 -4
- package/esm2022/lib/directives/mask/mask.directive.mjs +4 -4
- package/esm2022/lib/directives/mask/mask.module.mjs +5 -5
- package/esm2022/lib/directives/notification/notifications.directive.mjs +4 -4
- package/esm2022/lib/directives/prefix/prefix.directive.mjs +4 -4
- package/esm2022/lib/directives/radio/radio-group.directive.mjs +4 -4
- package/esm2022/lib/directives/radio/radio-group.module.mjs +5 -5
- package/esm2022/lib/directives/ripple/ripple.directive.mjs +4 -4
- package/esm2022/lib/directives/ripple/ripple.module.mjs +5 -5
- package/esm2022/lib/directives/scroll-inertia/scroll_inertia.directive.mjs +4 -4
- package/esm2022/lib/directives/scroll-inertia/scroll_inertia.module.mjs +5 -5
- package/esm2022/lib/directives/suffix/suffix.directive.mjs +4 -4
- package/esm2022/lib/directives/template-outlet/template_outlet.directive.mjs +4 -4
- package/esm2022/lib/directives/text-highlight/text-highlight.directive.mjs +4 -4
- package/esm2022/lib/directives/text-highlight/text-highlight.module.mjs +5 -5
- package/esm2022/lib/directives/text-selection/text-selection.directive.mjs +4 -4
- package/esm2022/lib/directives/text-selection/text-selection.module.mjs +5 -5
- package/esm2022/lib/directives/toggle/toggle.directive.mjs +10 -10
- package/esm2022/lib/directives/toggle/toggle.module.mjs +5 -5
- package/esm2022/lib/directives/tooltip/tooltip-target.directive.mjs +4 -4
- package/esm2022/lib/directives/tooltip/tooltip.component.mjs +4 -4
- package/esm2022/lib/directives/tooltip/tooltip.directive.mjs +4 -4
- package/esm2022/lib/directives/tooltip/tooltip.module.mjs +5 -5
- package/esm2022/lib/drop-down/drop-down-group.component.mjs +4 -4
- package/esm2022/lib/drop-down/drop-down-item.base.mjs +4 -4
- package/esm2022/lib/drop-down/drop-down-item.component.mjs +4 -4
- package/esm2022/lib/drop-down/drop-down-navigation.directive.mjs +4 -4
- package/esm2022/lib/drop-down/drop-down.base.mjs +4 -4
- package/esm2022/lib/drop-down/drop-down.component.mjs +4 -4
- package/esm2022/lib/drop-down/drop-down.module.mjs +5 -5
- package/esm2022/lib/expansion-panel/expansion-panel-body.component.mjs +4 -4
- package/esm2022/lib/expansion-panel/expansion-panel-header.component.mjs +4 -4
- package/esm2022/lib/expansion-panel/expansion-panel.common.mjs +4 -4
- package/esm2022/lib/expansion-panel/expansion-panel.component.mjs +4 -4
- package/esm2022/lib/expansion-panel/expansion-panel.directives.mjs +10 -10
- package/esm2022/lib/expansion-panel/expansion-panel.module.mjs +5 -5
- package/esm2022/lib/expansion-panel/toggle-animation-component.mjs +4 -4
- package/esm2022/lib/grids/api.service.mjs +4 -4
- package/esm2022/lib/grids/cell.component.mjs +4 -4
- package/esm2022/lib/grids/column-actions/column-actions-base.directive.mjs +4 -4
- package/esm2022/lib/grids/column-actions/column-actions.component.mjs +13 -13
- package/esm2022/lib/grids/column-actions/column-hiding.directive.mjs +4 -4
- package/esm2022/lib/grids/column-actions/column-pinning.directive.mjs +4 -4
- package/esm2022/lib/grids/column-actions/public_api.mjs +13 -0
- package/esm2022/lib/grids/columns/column-group.component.mjs +4 -4
- package/esm2022/lib/grids/columns/column-layout.component.mjs +4 -4
- package/esm2022/lib/grids/columns/column.component.mjs +4 -4
- package/esm2022/lib/grids/columns/templates.directive.mjs +25 -25
- package/esm2022/lib/grids/columns/validators.directive.mjs +22 -22
- package/esm2022/lib/grids/common/crud.service.mjs +4 -4
- package/esm2022/lib/grids/common/pipes.mjs +55 -55
- package/esm2022/lib/grids/filtering/advanced-filtering/advanced-filtering-dialog.component.mjs +4 -4
- package/esm2022/lib/grids/filtering/base/grid-filtering-cell.component.mjs +4 -4
- package/esm2022/lib/grids/filtering/base/grid-filtering-row.component.mjs +4 -4
- package/esm2022/lib/grids/filtering/excel-style/base-filtering.component.mjs +4 -4
- package/esm2022/lib/grids/filtering/excel-style/excel-style-clear-filters.component.mjs +4 -4
- package/esm2022/lib/grids/filtering/excel-style/excel-style-conditional-filter.component.mjs +4 -4
- package/esm2022/lib/grids/filtering/excel-style/excel-style-custom-dialog.component.mjs +4 -4
- package/esm2022/lib/grids/filtering/excel-style/excel-style-date-expression.component.mjs +4 -4
- package/esm2022/lib/grids/filtering/excel-style/excel-style-default-expression.component.mjs +4 -4
- package/esm2022/lib/grids/filtering/excel-style/excel-style-filtering.component.mjs +10 -10
- package/esm2022/lib/grids/filtering/excel-style/excel-style-header.component.mjs +4 -4
- package/esm2022/lib/grids/filtering/excel-style/excel-style-hiding.component.mjs +4 -4
- package/esm2022/lib/grids/filtering/excel-style/excel-style-moving.component.mjs +4 -4
- package/esm2022/lib/grids/filtering/excel-style/excel-style-pinning.component.mjs +4 -4
- package/esm2022/lib/grids/filtering/excel-style/excel-style-search.component.mjs +7 -7
- package/esm2022/lib/grids/filtering/excel-style/excel-style-selecting.component.mjs +4 -4
- package/esm2022/lib/grids/filtering/excel-style/excel-style-sorting.component.mjs +4 -4
- package/esm2022/lib/grids/filtering/grid-filtering.service.mjs +4 -4
- package/esm2022/lib/grids/grid/expandable-cell.component.mjs +4 -4
- package/esm2022/lib/grids/grid/grid-api.service.mjs +4 -4
- package/esm2022/lib/grids/grid/grid-row.component.mjs +4 -4
- package/esm2022/lib/grids/grid/grid-validation.service.mjs +4 -4
- package/esm2022/lib/grids/grid/grid.component.mjs +4 -4
- package/esm2022/lib/grids/grid/grid.details.pipe.mjs +4 -4
- package/esm2022/lib/grids/grid/grid.directives.mjs +34 -34
- package/esm2022/lib/grids/grid/grid.module.mjs +27 -24
- package/esm2022/lib/grids/grid/grid.pipes.mjs +13 -13
- package/esm2022/lib/grids/grid/grid.summary.pipe.mjs +4 -4
- package/esm2022/lib/grids/grid/groupby-row.component.mjs +4 -4
- package/esm2022/lib/grids/grid-base.directive.mjs +4 -4
- package/esm2022/lib/grids/grid-footer/grid-footer.component.mjs +4 -4
- package/esm2022/lib/grids/grid-mrl-navigation.service.mjs +4 -4
- package/esm2022/lib/grids/grid-navigation.service.mjs +4 -4
- package/esm2022/lib/grids/grid.common.mjs +4 -4
- package/esm2022/lib/grids/grid.rowEdit.directive.mjs +16 -16
- package/esm2022/lib/grids/grouping/grid-group-by-area.component.mjs +4 -4
- package/esm2022/lib/grids/grouping/group-by-area.directive.mjs +7 -7
- package/esm2022/lib/grids/grouping/tree-grid-group-by-area.component.mjs +4 -4
- package/esm2022/lib/grids/headers/grid-header-group.component.mjs +4 -4
- package/esm2022/lib/grids/headers/grid-header-row.component.mjs +4 -4
- package/esm2022/lib/grids/headers/grid-header.component.mjs +4 -4
- package/esm2022/lib/grids/headers/pipes.mjs +10 -10
- package/esm2022/lib/grids/hierarchical-grid/hierarchical-cell.component.mjs +4 -4
- package/esm2022/lib/grids/hierarchical-grid/hierarchical-grid-api.service.mjs +4 -4
- package/esm2022/lib/grids/hierarchical-grid/hierarchical-grid-base.directive.mjs +4 -4
- package/esm2022/lib/grids/hierarchical-grid/hierarchical-grid-navigation.service.mjs +4 -4
- package/esm2022/lib/grids/hierarchical-grid/hierarchical-grid.component.mjs +7 -7
- package/esm2022/lib/grids/hierarchical-grid/hierarchical-grid.module.mjs +27 -24
- package/esm2022/lib/grids/hierarchical-grid/hierarchical-grid.pipes.mjs +7 -7
- package/esm2022/lib/grids/hierarchical-grid/hierarchical-row.component.mjs +4 -4
- package/esm2022/lib/grids/hierarchical-grid/row-island-api.service.mjs +4 -4
- package/esm2022/lib/grids/hierarchical-grid/row-island.component.mjs +4 -4
- package/esm2022/lib/grids/moving/moving.drag.directive.mjs +4 -4
- package/esm2022/lib/grids/moving/moving.drop.directive.mjs +4 -4
- package/esm2022/lib/grids/moving/moving.service.mjs +4 -4
- package/esm2022/lib/grids/pivot-grid/pivot-data-selector.component.mjs +4 -4
- package/esm2022/lib/grids/pivot-grid/pivot-filtering.service.mjs +4 -4
- package/esm2022/lib/grids/pivot-grid/pivot-grid-navigation.service.mjs +4 -4
- package/esm2022/lib/grids/pivot-grid/pivot-grid.component.mjs +4 -4
- package/esm2022/lib/grids/pivot-grid/pivot-grid.directives.mjs +4 -4
- package/esm2022/lib/grids/pivot-grid/pivot-grid.module.mjs +27 -24
- package/esm2022/lib/grids/pivot-grid/pivot-grid.pipes.mjs +31 -31
- package/esm2022/lib/grids/pivot-grid/pivot-header-row.component.mjs +4 -4
- package/esm2022/lib/grids/pivot-grid/pivot-row-dimension-content.component.mjs +4 -4
- package/esm2022/lib/grids/pivot-grid/pivot-row-dimension-header-group.component.mjs +4 -4
- package/esm2022/lib/grids/pivot-grid/pivot-row-dimension-header.component.mjs +4 -4
- package/esm2022/lib/grids/pivot-grid/pivot-row.component.mjs +4 -4
- package/esm2022/lib/grids/public_api.mjs +5 -2
- package/esm2022/lib/grids/resizing/pivot-grid/pivot-resize-handle.directive.mjs +4 -4
- package/esm2022/lib/grids/resizing/pivot-grid/pivot-resizer.component.mjs +4 -4
- package/esm2022/lib/grids/resizing/pivot-grid/pivot-resizing.service.mjs +4 -4
- package/esm2022/lib/grids/resizing/resize-handle.directive.mjs +4 -4
- package/esm2022/lib/grids/resizing/resizer.component.mjs +4 -4
- package/esm2022/lib/grids/resizing/resizer.directive.mjs +4 -4
- package/esm2022/lib/grids/resizing/resizing.service.mjs +4 -4
- package/esm2022/lib/grids/row-drag.directive.mjs +10 -10
- package/esm2022/lib/grids/row.directive.mjs +4 -4
- package/esm2022/lib/grids/selection/drag-select.directive.mjs +4 -4
- package/esm2022/lib/grids/selection/row-selectors.mjs +10 -10
- package/esm2022/lib/grids/selection/selection.service.mjs +4 -4
- package/esm2022/lib/grids/state.directive.mjs +4 -4
- package/esm2022/lib/grids/summaries/grid-root-summary.pipe.mjs +4 -4
- package/esm2022/lib/grids/summaries/grid-summary.service.mjs +4 -4
- package/esm2022/lib/grids/summaries/summary-cell.component.mjs +4 -4
- package/esm2022/lib/grids/summaries/summary-row.component.mjs +4 -4
- package/esm2022/lib/grids/toolbar/common.mjs +16 -16
- package/esm2022/lib/grids/toolbar/grid-toolbar-advanced-filtering.component.mjs +4 -4
- package/esm2022/lib/grids/toolbar/grid-toolbar-exporter.component.mjs +4 -4
- package/esm2022/lib/grids/toolbar/grid-toolbar-hiding.component.mjs +4 -4
- package/esm2022/lib/grids/toolbar/grid-toolbar-pinning.component.mjs +4 -4
- package/esm2022/lib/grids/toolbar/grid-toolbar.base.mjs +7 -7
- package/esm2022/lib/grids/toolbar/grid-toolbar.component.mjs +4 -4
- package/esm2022/lib/grids/tree-grid/public_api.mjs +4 -1
- package/esm2022/lib/grids/tree-grid/tree-cell.component.mjs +4 -4
- package/esm2022/lib/grids/tree-grid/tree-grid-api.service.mjs +4 -4
- package/esm2022/lib/grids/tree-grid/tree-grid-row.component.mjs +4 -4
- package/esm2022/lib/grids/tree-grid/tree-grid-selection.service.mjs +4 -4
- package/esm2022/lib/grids/tree-grid/tree-grid.component.mjs +4 -4
- package/esm2022/lib/grids/tree-grid/tree-grid.directives.mjs +4 -4
- package/esm2022/lib/grids/tree-grid/tree-grid.filtering.pipe.mjs +4 -4
- package/esm2022/lib/grids/tree-grid/tree-grid.grouping.pipe.mjs +4 -4
- package/esm2022/lib/grids/tree-grid/tree-grid.module.mjs +43 -39
- package/esm2022/lib/grids/tree-grid/tree-grid.pipes.mjs +22 -22
- package/esm2022/lib/grids/tree-grid/tree-grid.summary.pipe.mjs +4 -4
- package/esm2022/lib/icon/icon.component.mjs +4 -4
- package/esm2022/lib/icon/icon.module.mjs +5 -5
- package/esm2022/lib/icon/icon.service.mjs +4 -4
- package/esm2022/lib/input-group/input-group.component.mjs +4 -4
- package/esm2022/lib/input-group/input-group.module.mjs +5 -5
- package/esm2022/lib/list/list-item.component.mjs +4 -4
- package/esm2022/lib/list/list.common.mjs +16 -16
- package/esm2022/lib/list/list.component.mjs +19 -19
- package/esm2022/lib/list/list.module.mjs +5 -5
- package/esm2022/lib/navbar/navbar.component.mjs +10 -10
- package/esm2022/lib/navbar/navbar.module.mjs +5 -5
- package/esm2022/lib/navigation-drawer/navigation-drawer.component.mjs +4 -4
- package/esm2022/lib/navigation-drawer/navigation-drawer.directives.mjs +10 -10
- package/esm2022/lib/navigation-drawer/navigation-drawer.module.mjs +5 -5
- package/esm2022/lib/paginator/paginator-interfaces.mjs +4 -4
- package/esm2022/lib/paginator/paginator.component.mjs +13 -13
- package/esm2022/lib/paginator/paginator.module.mjs +5 -5
- package/esm2022/lib/progressbar/progressbar.common.mjs +7 -7
- package/esm2022/lib/progressbar/progressbar.component.mjs +10 -10
- package/esm2022/lib/progressbar/progressbar.module.mjs +5 -5
- package/esm2022/lib/query-builder/query-builder-header.component.mjs +4 -4
- package/esm2022/lib/query-builder/query-builder.component.mjs +7 -7
- package/esm2022/lib/query-builder/query-builder.module.mjs +5 -5
- package/esm2022/lib/radio/radio.component.mjs +4 -4
- package/esm2022/lib/select/select-group.component.mjs +4 -4
- package/esm2022/lib/select/select-item.component.mjs +4 -4
- package/esm2022/lib/select/select-navigation.directive.mjs +4 -4
- package/esm2022/lib/select/select.component.mjs +13 -13
- package/esm2022/lib/select/select.module.mjs +5 -5
- package/esm2022/lib/services/animation/angular-animation-service.mjs +4 -4
- package/esm2022/lib/services/csv/csv-exporter.mjs +4 -4
- package/esm2022/lib/services/direction/directionality.mjs +4 -4
- package/esm2022/lib/services/excel/excel-exporter.mjs +4 -4
- package/esm2022/lib/services/overlay/overlay.mjs +4 -4
- package/esm2022/lib/services/transaction/transaction-factory.service.mjs +7 -7
- package/esm2022/lib/simple-combo/simple-combo.component.mjs +4 -4
- package/esm2022/lib/simple-combo/simple-combo.module.mjs +5 -5
- package/esm2022/lib/slider/label/thumb-label.component.mjs +4 -4
- package/esm2022/lib/slider/slider.common.mjs +10 -10
- package/esm2022/lib/slider/slider.component.mjs +4 -4
- package/esm2022/lib/slider/slider.module.mjs +5 -5
- package/esm2022/lib/slider/thumb/thumb-slider.component.mjs +4 -4
- package/esm2022/lib/slider/ticks/tick.pipe.mjs +4 -4
- package/esm2022/lib/slider/ticks/ticks.component.mjs +4 -4
- package/esm2022/lib/snackbar/snackbar.component.mjs +4 -4
- package/esm2022/lib/snackbar/snackbar.module.mjs +5 -5
- package/esm2022/lib/splitter/splitter-pane/splitter-pane.component.mjs +4 -4
- package/esm2022/lib/splitter/splitter.component.mjs +7 -7
- package/esm2022/lib/splitter/splitter.module.mjs +5 -5
- package/esm2022/lib/stepper/step/step.component.mjs +4 -4
- package/esm2022/lib/stepper/stepper.component.mjs +4 -4
- package/esm2022/lib/stepper/stepper.directive.mjs +22 -22
- package/esm2022/lib/stepper/stepper.module.mjs +5 -5
- package/esm2022/lib/stepper/stepper.service.mjs +4 -4
- package/esm2022/lib/switch/switch.component.mjs +4 -4
- package/esm2022/lib/switch/switch.module.mjs +5 -5
- package/esm2022/lib/tabs/bottom-nav/bottom-nav-content.component.mjs +4 -4
- package/esm2022/lib/tabs/bottom-nav/bottom-nav-header.component.mjs +4 -4
- package/esm2022/lib/tabs/bottom-nav/bottom-nav-item.component.mjs +4 -4
- package/esm2022/lib/tabs/bottom-nav/bottom-nav.component.mjs +4 -4
- package/esm2022/lib/tabs/bottom-nav/bottom-nav.directives.mjs +7 -7
- package/esm2022/lib/tabs/bottom-nav/bottom-nav.module.mjs +5 -5
- package/esm2022/lib/tabs/tab-content.directive.mjs +4 -4
- package/esm2022/lib/tabs/tab-header.directive.mjs +4 -4
- package/esm2022/lib/tabs/tab-item.directive.mjs +4 -4
- package/esm2022/lib/tabs/tabs/tab-content.component.mjs +4 -4
- package/esm2022/lib/tabs/tabs/tab-header.component.mjs +4 -4
- package/esm2022/lib/tabs/tabs/tab-item.component.mjs +4 -4
- package/esm2022/lib/tabs/tabs/tabs.component.mjs +4 -4
- package/esm2022/lib/tabs/tabs/tabs.directives.mjs +7 -7
- package/esm2022/lib/tabs/tabs/tabs.module.mjs +5 -5
- package/esm2022/lib/tabs/tabs.directive.mjs +4 -4
- package/esm2022/lib/time-picker/time-picker.component.mjs +4 -4
- package/esm2022/lib/time-picker/time-picker.directives.mjs +7 -7
- package/esm2022/lib/time-picker/time-picker.module.mjs +5 -5
- package/esm2022/lib/time-picker/time-picker.pipes.mjs +7 -7
- package/esm2022/lib/toast/toast.component.mjs +4 -4
- package/esm2022/lib/toast/toast.module.mjs +5 -5
- package/esm2022/lib/tree/tree-navigation.service.mjs +4 -4
- package/esm2022/lib/tree/tree-node/tree-node.component.mjs +7 -7
- package/esm2022/lib/tree/tree-selection.service.mjs +4 -4
- package/esm2022/lib/tree/tree.component.mjs +10 -10
- package/esm2022/lib/tree/tree.module.mjs +5 -5
- package/esm2022/lib/tree/tree.service.mjs +4 -4
- package/fesm2022/igniteui-angular.mjs +2330 -2321
- package/fesm2022/igniteui-angular.mjs.map +1 -1
- package/lib/grids/column-actions/public_api.d.ts +7 -0
- package/lib/grids/grid/grid.module.d.ts +23 -20
- package/lib/grids/grid/public_api.d.ts +1 -1
- package/lib/grids/hierarchical-grid/hierarchical-grid.module.d.ts +23 -20
- package/lib/grids/hierarchical-grid/public_api.d.ts +1 -1
- package/lib/grids/pivot-grid/pivot-grid.module.d.ts +23 -20
- package/lib/grids/pivot-grid/public_api.d.ts +1 -1
- package/lib/grids/public_api.d.ts +2 -1
- package/lib/grids/tree-grid/public_api.d.ts +3 -1
- package/lib/grids/tree-grid/tree-grid.module.d.ts +39 -35
- package/package.json +6 -6
|
@@ -315,10 +315,10 @@ export class IgxMonthsViewComponent {
|
|
|
315
315
|
initMonthFormatter() {
|
|
316
316
|
this._formatterMonth = new Intl.DateTimeFormat(this._locale, { month: this.monthFormat });
|
|
317
317
|
}
|
|
318
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0
|
|
319
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0
|
|
318
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: IgxMonthsViewComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
319
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: IgxMonthsViewComponent, isStandalone: true, selector: "igx-months-view", inputs: { id: "id", date: "date", monthFormat: "monthFormat", locale: "locale", formatView: "formatView" }, outputs: { selected: "selected" }, host: { listeners: { "keydown.arrowup": "onKeydownArrowUp($event)", "keydown.arrowdown": "onKeydownArrowDown($event)", "keydown.arrowright": "onKeydownArrowRight($event)", "keydown.arrowleft": "onKeydownArrowLeft($event)", "keydown.home": "onKeydownHome($event)", "keydown.end": "onKeydownEnd($event)", "keydown.enter": "onKeydownEnter($event)", "focusout": "resetActiveMonth()" }, properties: { "attr.id": "this.id", "class.igx-calendar": "this.styleClass" } }, providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: IgxMonthsViewComponent, multi: true }], viewQueries: [{ propertyName: "monthsRef", predicate: IgxCalendarMonthDirective, descendants: true, read: IgxCalendarMonthDirective }], ngImport: i0, template: "<div class=\"igx-calendar__body\">\n <div class=\"igx-calendar__body-row igx-calendar__body-row--wrap\">\n <span\n class=\"igx-calendar__month\"\n role=\"button\"\n [attr.aria-label]=\"month | date: 'LLLL'\"\n [igxCalendarMonth]=\"month\"\n [date]=\"date\"\n [attr.tabindex]=\"activeMonth === month.getMonth() ? 0 : -1\"\n (monthSelection)=\"selectMonth($event)\" [index]=\"i\"\n *ngFor=\"let month of months; index as i; trackBy: monthTracker\">\n {{ formattedMonth(month) | titlecase }}\n </span>\n </div>\n</div>\n\n", dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: IgxCalendarMonthDirective, selector: "[igxCalendarMonth]", inputs: ["igxCalendarMonth", "date", "index"], outputs: ["monthSelection"] }, { kind: "pipe", type: TitleCasePipe, name: "titlecase" }, { kind: "pipe", type: DatePipe, name: "date" }] }); }
|
|
320
320
|
}
|
|
321
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0
|
|
321
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: IgxMonthsViewComponent, decorators: [{
|
|
322
322
|
type: Component,
|
|
323
323
|
args: [{ providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: IgxMonthsViewComponent, multi: true }], selector: 'igx-months-view', standalone: true, imports: [NgFor, IgxCalendarMonthDirective, TitleCasePipe, DatePipe], template: "<div class=\"igx-calendar__body\">\n <div class=\"igx-calendar__body-row igx-calendar__body-row--wrap\">\n <span\n class=\"igx-calendar__month\"\n role=\"button\"\n [attr.aria-label]=\"month | date: 'LLLL'\"\n [igxCalendarMonth]=\"month\"\n [date]=\"date\"\n [attr.tabindex]=\"activeMonth === month.getMonth() ? 0 : -1\"\n (monthSelection)=\"selectMonth($event)\" [index]=\"i\"\n *ngFor=\"let month of months; index as i; trackBy: monthTracker\">\n {{ formattedMonth(month) | titlecase }}\n </span>\n </div>\n</div>\n\n" }]
|
|
324
324
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { id: [{
|
|
@@ -367,4 +367,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-rc.4", ng
|
|
|
367
367
|
type: HostListener,
|
|
368
368
|
args: ['focusout']
|
|
369
369
|
}] } });
|
|
370
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9udGhzLXZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaWduaXRldWktYW5ndWxhci9zcmMvbGliL2NhbGVuZGFyL21vbnRocy12aWV3L21vbnRocy12aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2lnbml0ZXVpLWFuZ3VsYXIvc3JjL2xpYi9jYWxlbmRhci9tb250aHMtdmlldy9tb250aHMtdmlldy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsU0FBUyxFQUNULE1BQU0sRUFDTixZQUFZLEVBQ1osS0FBSyxFQUNMLFdBQVcsRUFDWCxZQUFZLEVBQ1osWUFBWSxFQUdmLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDdkMsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ25FLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDNUIsT0FBTyxFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7O0FBRWpFLElBQUksT0FBTyxHQUFHLENBQUMsQ0FBQztBQVNoQixNQUFNLE9BQU8sc0JBQXNCO0lBaUIvQjs7Ozs7Ozs7Ozs7T0FXRztJQUNILElBQ1csSUFBSSxDQUFDLEtBQVc7UUFDdkIsSUFBSSxDQUFDLENBQUMsS0FBSyxZQUFZLElBQUksQ0FBQyxFQUFFO1lBQzFCLE9BQU87U0FDVjtRQUNELElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUM1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QUMsb0JBQW9CLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBc0J2QyxrQkFBa0I7c0JBRHhCLFlBQVk7dUJBQUMsbUJBQW1CLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBc0J0QyxhQUFhO3NCQURuQixZQUFZO3VCQUFDLGNBQWMsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFjakMsWUFBWTtzQkFEbEIsWUFBWTt1QkFBQyxhQUFhLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBZWhDLGNBQWM7c0JBRHBCLFlBQVk7dUJBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQVVsQyxnQkFBZ0I7c0JBRHRCLFlBQVk7dUJBQUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ29tcG9uZW50LFxuICAgIE91dHB1dCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSW5wdXQsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSG9zdExpc3RlbmVyLFxuICAgIFZpZXdDaGlsZHJlbixcbiAgICBRdWVyeUxpc3QsXG4gICAgRWxlbWVudFJlZlxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENhbGVuZGFyIH0gZnJvbSAnLi4vY2FsZW5kYXInO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgSWd4Q2FsZW5kYXJNb250aERpcmVjdGl2ZSB9IGZyb20gJy4uL2NhbGVuZGFyLmRpcmVjdGl2ZXMnO1xuaW1wb3J0IHsgbm9vcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgTmdGb3IsIFRpdGxlQ2FzZVBpcGUsIERhdGVQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxubGV0IE5FWFRfSUQgPSAwO1xuXG5AQ29tcG9uZW50KHtcbiAgICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLCB1c2VFeGlzdGluZzogSWd4TW9udGhzVmlld0NvbXBvbmVudCwgbXVsdGk6IHRydWUgfV0sXG4gICAgc2VsZWN0b3I6ICdpZ3gtbW9udGhzLXZpZXcnLFxuICAgIHRlbXBsYXRlVXJsOiAnbW9udGhzLXZpZXcuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW05nRm9yLCBJZ3hDYWxlbmRhck1vbnRoRGlyZWN0aXZlLCBUaXRsZUNhc2VQaXBlLCBEYXRlUGlwZV1cbn0pXG5leHBvcnQgY2xhc3MgSWd4TW9udGhzVmlld0NvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcbiAgICAvKipcbiAgICAgKiBTZXRzL2dldHMgdGhlIGBpZGAgb2YgdGhlIG1vbnRocyB2aWV3LlxuICAgICAqIElmIG5vdCBzZXQsIHRoZSBgaWRgIHdpbGwgaGF2ZSB2YWx1ZSBgXCJpZ3gtbW9udGhzLXZpZXctMFwiYC5cbiAgICAgKiBgYGBodG1sXG4gICAgICogPGlneC1tb250aHMtdmlldyBpZD1cIm15LW1vbnRocy12aWV3XCI+PC9pZ3gtbW9udGhzLXZpZXc+XG4gICAgICogYGBgXG4gICAgICogYGBgdHlwZXNjcmlwdFxuICAgICAqIGxldCBtb250aHNWaWV3SWQgPSAgdGhpcy5tb250aHNWaWV3LmlkO1xuICAgICAqIGBgYFxuICAgICAqXG4gICAgICogQG1lbWJlcm9mIElneE1vbnRoc1ZpZXdDb21wb25lbnRcbiAgICAgKi9cbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuaWQnKVxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGlkID0gYGlneC1tb250aHMtdmlldy0ke05FWFRfSUQrK31gO1xuXG4gICAgLyoqXG4gICAgICogR2V0cy9zZXRzIHRoZSBzZWxlY3RlZCBkYXRlIG9mIHRoZSBtb250aHMgdmlldy5cbiAgICAgKiBCeSBkZWZhdWx0IGl0IGlzIHRoZSBjdXJyZW50IGRhdGUuXG4gICAgICogYGBgaHRtbFxuICAgICAqIDxpZ3gtbW9udGhzLXZpZXcgW2RhdGVdPVwibXlEYXRlXCI+PC9pZ3gtbW9udGhzLXZpZXc+XG4gICAgICogYGBgXG4gICAgICogYGBgdHlwZXNjcmlwdFxuICAgICAqIGxldCBkYXRlID0gIHRoaXMubW9udGhzVmlldy5kYXRlO1xuICAgICAqIGBgYFxuICAgICAqXG4gICAgICogQG1lbWJlcm9mIElneE1vbnRoc1ZpZXdDb21wb25lbnRcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBzZXQgZGF0ZSh2YWx1ZTogRGF0ZSkge1xuICAgICAgICBpZiAoISh2YWx1ZSBpbnN0YW5jZW9mIERhdGUpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5fZGF0ZSA9IHZhbHVlO1xuICAgICAgICB0aGlzLmFjdGl2ZU1vbnRoID0gdGhpcy5kYXRlLmdldE1vbnRoKCk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBkYXRlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGF0ZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXRzIHRoZSBtb250aCBmb3JtYXQgb3B0aW9uIG9mIHRoZSBtb250aHMgdmlldy5cbiAgICAgKiBgYGB0eXBlc2NyaXB0XG4gICAgICogbGV0IG1vbnRoRm9ybWF0ID0gdGhpcy5tb250aHNWaWV3Lm1vbnRoRm9ybWF0LlxuICAgICAqIGBgYFxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGdldCBtb250aEZvcm1hdCgpOiBhbnkge1xuICAgICAgICByZXR1cm4gdGhpcy5fbW9udGhGb3JtYXQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2V0cyB0aGUgbW9udGggZm9ybWF0IG9wdGlvbiBvZiB0aGUgbW9udGhzIHZpZXcuXG4gICAgICogYGBgaHRtbFxuICAgICAqIDxpZ3gtbW9udGhzLXZpZXc+IFttb250aEZvcm1hdF0gPSBcInNob3J0J1wiPC9pZ3gtbW9udGhzLXZpZXc+XG4gICAgICogYGBgXG4gICAgICpcbiAgICAgKiBAbWVtYmVyb2YgSWd4TW9udGhzVmlld0NvbXBvbmVudFxuICAgICAqL1xuICAgIHB1YmxpYyBzZXQgbW9udGhGb3JtYXQodmFsdWU6IGFueSkge1xuICAgICAgICB0aGlzLl9tb250aEZvcm1hdCA9IHZhbHVlO1xuICAgICAgICB0aGlzLmluaXRNb250aEZvcm1hdHRlcigpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldHMgdGhlIGBsb2NhbGVgIG9mIHRoZSBtb250aHMgdmlldy5cbiAgICAgKiBEZWZhdWx0IHZhbHVlIGlzIGBcImVuXCJgLlxuICAgICAqIGBgYHR5cGVzY3JpcHRcbiAgICAgKiBsZXQgbG9jYWxlID0gIHRoaXMubW9udGhzVmlldy5sb2NhbGU7XG4gICAgICogYGBgXG4gICAgICpcbiAgICAgKiBAbWVtYmVyb2YgSWd4TW9udGhzVmlld0NvbXBvbmVudFxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGdldCBsb2NhbGUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2xvY2FsZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZXRzIHRoZSBgbG9jYWxlYCBvZiB0aGUgbW9udGhzIHZpZXcuXG4gICAgICogRXhwZWN0cyBhIHZhbGlkIEJDUCA0NyBsYW5ndWFnZSB0YWcuXG4gICAgICogRGVmYXVsdCB2YWx1ZSBpcyBgXCJlblwiYC5cbiAgICAgKiBgYGBodG1sXG4gICAgICogPGlneC1tb250aHMtdmlldyBbbG9jYWxlXT1cImRlXCI+PC9pZ3gtbW9udGhzLXZpZXc+XG4gICAgICogYGBgXG4gICAgICpcbiAgICAgKiBAbWVtYmVyb2YgSWd4TW9udGhzVmlld0NvbXBvbmVudFxuICAgICAqL1xuICAgIHB1YmxpYyBzZXQgbG9jYWxlKHZhbHVlOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5fbG9jYWxlID0gdmFsdWU7XG4gICAgICAgIHRoaXMuaW5pdE1vbnRoRm9ybWF0dGVyKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0cy9zZXRzIHdoZXRoZXIgdGhlIHZpZXcgc2hvdWxkIGJlIHJlbmRlcmVkXG4gICAgICogYWNjb3JkaW5nIHRvIHRoZSBsb2NhbGUgYW5kIG1vbnRoRm9ybWF0LCBpZiBhbnkuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgZm9ybWF0VmlldyA9IHRydWU7XG5cbiAgICAvKipcbiAgICAgKiBFbWl0cyBhbiBldmVudCB3aGVuIGEgc2VsZWN0aW9uIGlzIG1hZGUgaW4gdGhlIG1vbnRocyB2aWV3LlxuICAgICAqIFByb3ZpZGVzIHJlZmVyZW5jZSB0aGUgYGRhdGVgIHByb3BlcnR5IGluIHRoZSBgSWd4TW9udGhzVmlld0NvbXBvbmVudGAuXG4gICAgICogYGBgaHRtbFxuICAgICAqIDxpZ3gtbW9udGhzLXZpZXcgKHNlbGVjdGVkKT1cIm9uU2VsZWN0aW9uKCRldmVudClcIj48L2lneC1tb250aHMtdmlldz5cbiAgICAgKiBgYGBcbiAgICAgKlxuICAgICAqIEBtZW1iZXJvZiBJZ3hNb250aHNWaWV3Q29tcG9uZW50XG4gICAgICovXG4gICAgQE91dHB1dCgpXG4gICAgcHVibGljIHNlbGVjdGVkID0gbmV3IEV2ZW50RW1pdHRlcjxEYXRlPigpO1xuXG4gICAgLyoqXG4gICAgICogVGhlIGRlZmF1bHQgY3NzIGNsYXNzIGFwcGxpZWQgdG8gdGhlIGNvbXBvbmVudC5cbiAgICAgKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmlneC1jYWxlbmRhcicpXG4gICAgcHVibGljIHN0eWxlQ2xhc3MgPSB0cnVlO1xuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqL1xuICAgIEBWaWV3Q2hpbGRyZW4oSWd4Q2FsZW5kYXJNb250aERpcmVjdGl2ZSwgeyByZWFkOiBJZ3hDYWxlbmRhck1vbnRoRGlyZWN0aXZlIH0pXG4gICAgcHVibGljIG1vbnRoc1JlZjogUXVlcnlMaXN0PElneENhbGVuZGFyTW9udGhEaXJlY3RpdmU+O1xuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBhbiBhcnJheSBvZiBkYXRlIG9iamVjdHMgd2hpY2ggYXJlIHRoZW4gdXNlZCB0b1xuICAgICAqIHByb3Blcmx5IHJlbmRlciB0aGUgbW9udGggbmFtZXMuXG4gICAgICpcbiAgICAgKiBVc2VkIGluIHRoZSB0ZW1wbGF0ZSBvZiB0aGUgY29tcG9uZW50XG4gICAgICpcbiAgICAgKiBAaGlkZGVuXG4gICAgICovXG4gICAgcHVibGljIGdldCBtb250aHMoKTogRGF0ZVtdIHtcbiAgICAgICAgbGV0IHN0YXJ0ID0gbmV3IERhdGUodGhpcy5kYXRlLmdldEZ1bGxZZWFyKCksIDAsIDEpO1xuICAgICAgICBjb25zdCByZXN1bHQgPSBbXTtcblxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IDEyOyBpKyspIHtcbiAgICAgICAgICAgIHJlc3VsdC5wdXNoKHN0YXJ0KTtcbiAgICAgICAgICAgIHN0YXJ0ID0gdGhpcy5fY2FsZW5kYXJNb2RlbC50aW1lZGVsdGEoc3RhcnQsICdtb250aCcsIDEpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogQGludGVybmFsXG4gICAgICovXG4gICAgcHVibGljIGFjdGl2ZU1vbnRoO1xuXG4gICAgcHJpdmF0ZSBfZGF0ZSA9IG5ldyBEYXRlKCk7XG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqL1xuICAgIHByaXZhdGUgX2Zvcm1hdHRlck1vbnRoOiBhbnk7XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICovXG4gICAgcHJpdmF0ZSBfbG9jYWxlID0gJ2VuJztcblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBwcml2YXRlIF9tb250aEZvcm1hdCA9ICdzaG9ydCc7XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICovXG4gICAgcHJpdmF0ZSBfY2FsZW5kYXJNb2RlbDogQ2FsZW5kYXI7XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICovXG4gICAgcHJpdmF0ZSBfb25Ub3VjaGVkQ2FsbGJhY2s6ICgpID0+IHZvaWQgPSBub29wO1xuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBwcml2YXRlIF9vbkNoYW5nZUNhbGxiYWNrOiAoXzogRGF0ZSkgPT4gdm9pZCA9IG5vb3A7XG5cbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgZWw6IEVsZW1lbnRSZWYpIHtcbiAgICAgICAgdGhpcy5pbml0TW9udGhGb3JtYXR0ZXIoKTtcbiAgICAgICAgdGhpcy5fY2FsZW5kYXJNb2RlbCA9IG5ldyBDYWxlbmRhcigpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBASG9zdExpc3RlbmVyKCdrZXlkb3duLmFycm93dXAnLCBbJyRldmVudCddKVxuICAgIHB1YmxpYyBvbktleWRvd25BcnJvd1VwKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgICAgIGNvbnN0IG5vZGUgPSB0aGlzLm1vbnRoc1JlZi5maW5kKChkYXRlKSA9PiBkYXRlLm5hdGl2ZUVsZW1lbnQgPT09IGV2ZW50LnRhcmdldCk7XG4gICAgICAgIGlmICghbm9kZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgbW9udGhzID0gdGhpcy5tb250aHNSZWYudG9BcnJheSgpO1xuICAgICAgICBjb25zdCBub2RlUmVjdCA9IG5vZGUubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcblxuICAgICAgICBmb3IgKGxldCBpbmRleCA9IG1vbnRocy5pbmRleE9mKG5vZGUpIC0gMTsgaW5kZXggPj0gMDsgaW5kZXgtLSkge1xuICAgICAgICAgICAgY29uc3QgbmV4dE5vZGVSZWN0ID0gbW9udGhzW2luZGV4XS5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgICAgICAgY29uc3QgdG9sZXJhbmNlID0gNjtcbiAgICAgICAgICAgIGlmIChub2RlUmVjdC50b3AgIT09IG5leHROb2RlUmVjdC50b3AgJiYgKG5leHROb2RlUmVjdC5sZWZ0IC0gbm9kZVJlY3QubGVmdCkgPCB0b2xlcmFuY2UpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBtb250aCA9IG1vbnRoc1tpbmRleF07XG4gICAgICAgICAgICAgICAgbW9udGgubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgICAgICAgICAgICAgIHRoaXMuYWN0aXZlTW9udGggPSBtb250aC52YWx1ZS5nZXRNb250aCgpO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqL1xuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24uYXJyb3dkb3duJywgWyckZXZlbnQnXSlcbiAgICBwdWJsaWMgb25LZXlkb3duQXJyb3dEb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgICAgIGNvbnN0IG5vZGUgPSB0aGlzLm1vbnRoc1JlZi5maW5kKChkYXRlKSA9PiBkYXRlLm5hdGl2ZUVsZW1lbnQgPT09IGV2ZW50LnRhcmdldCk7XG4gICAgICAgIGlmICghbm9kZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgbW9udGhzID0gdGhpcy5tb250aHNSZWYudG9BcnJheSgpO1xuICAgICAgICBjb25zdCBub2RlUmVjdCA9IG5vZGUubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcblxuICAgICAgICBmb3IgKGxldCBpbmRleCA9IG1vbnRocy5pbmRleE9mKG5vZGUpICsgMTsgaW5kZXggPCBtb250aHMubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICAgICAgICBjb25zdCBuZXh0Tm9kZVJlY3QgPSBtb250aHNbaW5kZXhdLm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICAgICAgICBjb25zdCB0b2xlcmFuY2UgPSA2O1xuICAgICAgICAgICAgaWYgKG5leHROb2RlUmVjdC50b3AgIT09IG5vZGVSZWN0LnRvcCAmJiAobm9kZVJlY3QubGVmdCAtIG5leHROb2RlUmVjdC5sZWZ0KSA8IHRvbGVyYW5jZSApIHtcbiAgICAgICAgICAgICAgICBjb25zdCBtb250aCA9IG1vbnRoc1tpbmRleF07XG4gICAgICAgICAgICAgICAgbW9udGgubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgICAgICAgICAgICAgIHRoaXMuYWN0aXZlTW9udGggPSBtb250aC52YWx1ZS5nZXRNb250aCgpO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqL1xuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24uYXJyb3dyaWdodCcsIFsnJGV2ZW50J10pXG4gICAgcHVibGljIG9uS2V5ZG93bkFycm93UmlnaHQoZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG5cbiAgICAgICAgY29uc3Qgbm9kZSA9IHRoaXMubW9udGhzUmVmLmZpbmQoKGRhdGUpID0+IGRhdGUubmF0aXZlRWxlbWVudCA9PT0gZXZlbnQudGFyZ2V0KTtcbiAgICAgICAgaWYgKCFub2RlKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBtb250aHMgPSB0aGlzLm1vbnRoc1JlZi50b0FycmF5KCk7XG4gICAgICAgIGlmIChtb250aHMuaW5kZXhPZihub2RlKSArIDEgPCBtb250aHMubGVuZ3RoKSB7XG4gICAgICAgICAgICBjb25zdCBtb250aCA9IG1vbnRoc1ttb250aHMuaW5kZXhPZihub2RlKSArIDFdO1xuICAgICAgICAgICAgdGhpcy5hY3RpdmVNb250aCA9IG1vbnRoLnZhbHVlLmdldE1vbnRoKCk7XG4gICAgICAgICAgICBtb250aC5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICovXG4gICAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bi5hcnJvd2xlZnQnLCBbJyRldmVudCddKVxuICAgIHB1YmxpYyBvbktleWRvd25BcnJvd0xlZnQoZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG5cbiAgICAgICAgY29uc3Qgbm9kZSA9IHRoaXMubW9udGhzUmVmLmZpbmQoKGRhdGUpID0+IGRhdGUubmF0aXZlRWxlbWVudCA9PT0gZXZlbnQudGFyZ2V0KTtcbiAgICAgICAgaWYgKCFub2RlKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBtb250aHMgPSB0aGlzLm1vbnRoc1JlZi50b0FycmF5KCk7XG4gICAgICAgIGlmIChtb250aHMuaW5kZXhPZihub2RlKSAtIDEgPj0gMCkge1xuICAgICAgICAgICAgY29uc3QgbW9udGggPSBtb250aHNbbW9udGhzLmluZGV4T2Yobm9kZSkgLSAxXTtcbiAgICAgICAgICAgIHRoaXMuYWN0aXZlTW9udGggPSBtb250aC52YWx1ZS5nZXRNb250aCgpO1xuICAgICAgICAgICAgbW9udGgubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqL1xuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24uaG9tZScsIFsnJGV2ZW50J10pXG4gICAgcHVibGljIG9uS2V5ZG93bkhvbWUoZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG5cbiAgICAgICAgY29uc3QgbW9udGggPSB0aGlzLm1vbnRoc1JlZi50b0FycmF5KClbMF07XG4gICAgICAgIHRoaXMuYWN0aXZlTW9udGggPSBtb250aC52YWx1ZS5nZXRNb250aCgpO1xuICAgICAgICBtb250aC5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqL1xuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24uZW5kJywgWyckZXZlbnQnXSlcbiAgICBwdWJsaWMgb25LZXlkb3duRW5kKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgICAgIGNvbnN0IG1vbnRocyA9IHRoaXMubW9udGhzUmVmLnRvQXJyYXkoKTtcbiAgICAgICAgY29uc3QgbW9udGggPSBtb250aHNbbW9udGhzLmxlbmd0aCAtIDFdO1xuICAgICAgICB0aGlzLmFjdGl2ZU1vbnRoID0gbW9udGgudmFsdWUuZ2V0TW9udGgoKTtcbiAgICAgICAgbW9udGgubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBASG9zdExpc3RlbmVyKCdrZXlkb3duLmVudGVyJywgWyckZXZlbnQnXSlcbiAgICBwdWJsaWMgb25LZXlkb3duRW50ZXIoZXZlbnQpIHtcbiAgICAgICAgY29uc3QgdmFsdWUgPSB0aGlzLm1vbnRoc1JlZi5maW5kKChkYXRlKSA9PiBkYXRlLm5hdGl2ZUVsZW1lbnQgPT09IGV2ZW50LnRhcmdldCkudmFsdWU7XG4gICAgICAgIHRoaXMuZGF0ZSA9IG5ldyBEYXRlKHZhbHVlLmdldEZ1bGxZZWFyKCksIHZhbHVlLmdldE1vbnRoKCksIHRoaXMuZGF0ZS5nZXREYXRlKCkpO1xuICAgICAgICB0aGlzLmFjdGl2ZU1vbnRoID0gdGhpcy5kYXRlLmdldE1vbnRoKCk7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWQuZW1pdCh0aGlzLmRhdGUpO1xuICAgICAgICB0aGlzLl9vbkNoYW5nZUNhbGxiYWNrKHRoaXMuZGF0ZSk7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignZm9jdXNvdXQnKVxuICAgIHB1YmxpYyByZXNldEFjdGl2ZU1vbnRoKCkge1xuICAgICAgICB0aGlzLmFjdGl2ZU1vbnRoID0gdGhpcy5kYXRlLmdldE1vbnRoKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyB0aGUgbG9jYWxlIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb250aCBpbiB0aGUgbW9udGhzIHZpZXcuXG4gICAgICpcbiAgICAgKiBAaGlkZGVuXG4gICAgICovXG4gICAgcHVibGljIGZvcm1hdHRlZE1vbnRoKHZhbHVlOiBEYXRlKTogc3RyaW5nIHtcbiAgICAgICAgaWYgKHRoaXMuZm9ybWF0Vmlldykge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuX2Zvcm1hdHRlck1vbnRoLmZvcm1hdCh2YWx1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGAke3ZhbHVlLmdldE1vbnRoKCl9YDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICovXG4gICAgcHVibGljIHNlbGVjdE1vbnRoKGV2ZW50KSB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWQuZW1pdChldmVudCk7XG5cbiAgICAgICAgdGhpcy5kYXRlID0gZXZlbnQ7XG4gICAgICAgIHRoaXMuYWN0aXZlTW9udGggPSB0aGlzLmRhdGUuZ2V0TW9udGgoKTtcbiAgICAgICAgdGhpcy5fb25DaGFuZ2VDYWxsYmFjayh0aGlzLmRhdGUpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBwdWJsaWMgcmVnaXN0ZXJPbkNoYW5nZShmbjogKHY6IERhdGUpID0+IHZvaWQpIHtcbiAgICAgICAgdGhpcy5fb25DaGFuZ2VDYWxsYmFjayA9IGZuO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBwdWJsaWMgcmVnaXN0ZXJPblRvdWNoZWQoZm46ICgpID0+IHZvaWQpIHtcbiAgICAgICAgdGhpcy5fb25Ub3VjaGVkQ2FsbGJhY2sgPSBmbjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICovXG4gICAgcHVibGljIHdyaXRlVmFsdWUodmFsdWU6IERhdGUpIHtcbiAgICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLmRhdGUgPSB2YWx1ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBwdWJsaWMgbW9udGhUcmFja2VyKGluZGV4LCBpdGVtKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGAke2l0ZW0uZ2V0TW9udGgoKX19YDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICovXG4gICAgcHJpdmF0ZSBpbml0TW9udGhGb3JtYXR0ZXIoKSB7XG4gICAgICAgIHRoaXMuX2Zvcm1hdHRlck1vbnRoID0gbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQodGhpcy5fbG9jYWxlLCB7IG1vbnRoOiB0aGlzLm1vbnRoRm9ybWF0IH0pO1xuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJpZ3gtY2FsZW5kYXJfX2JvZHlcIj5cbiAgICA8ZGl2IGNsYXNzPVwiaWd4LWNhbGVuZGFyX19ib2R5LXJvdyBpZ3gtY2FsZW5kYXJfX2JvZHktcm93LS13cmFwXCI+XG4gICAgICAgIDxzcGFuXG4gICAgICAgICAgICBjbGFzcz1cImlneC1jYWxlbmRhcl9fbW9udGhcIlxuICAgICAgICAgICAgcm9sZT1cImJ1dHRvblwiXG4gICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIm1vbnRoIHwgZGF0ZTogJ0xMTEwnXCJcbiAgICAgICAgICAgIFtpZ3hDYWxlbmRhck1vbnRoXT1cIm1vbnRoXCJcbiAgICAgICAgICAgIFtkYXRlXT1cImRhdGVcIlxuICAgICAgICAgICAgW2F0dHIudGFiaW5kZXhdPVwiYWN0aXZlTW9udGggPT09IG1vbnRoLmdldE1vbnRoKCkgPyAwIDogLTFcIlxuICAgICAgICAgICAgKG1vbnRoU2VsZWN0aW9uKT1cInNlbGVjdE1vbnRoKCRldmVudClcIiBbaW5kZXhdPVwiaVwiXG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgbW9udGggb2YgbW9udGhzOyBpbmRleCBhcyBpOyB0cmFja0J5OiBtb250aFRyYWNrZXJcIj5cbiAgICAgICAgICAgIHt7IGZvcm1hdHRlZE1vbnRoKG1vbnRoKSB8IHRpdGxlY2FzZSB9fVxuICAgICAgICA8L3NwYW4+XG4gICAgPC9kaXY+XG48L2Rpdj5cblxuIl19
|
|
370
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9udGhzLXZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaWduaXRldWktYW5ndWxhci9zcmMvbGliL2NhbGVuZGFyL21vbnRocy12aWV3L21vbnRocy12aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2lnbml0ZXVpLWFuZ3VsYXIvc3JjL2xpYi9jYWxlbmRhci9tb250aHMtdmlldy9tb250aHMtdmlldy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsU0FBUyxFQUNULE1BQU0sRUFDTixZQUFZLEVBQ1osS0FBSyxFQUNMLFdBQVcsRUFDWCxZQUFZLEVBQ1osWUFBWSxFQUdmLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDdkMsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ25FLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDNUIsT0FBTyxFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7O0FBRWpFLElBQUksT0FBTyxHQUFHLENBQUMsQ0FBQztBQVNoQixNQUFNLE9BQU8sc0JBQXNCO0lBaUIvQjs7Ozs7Ozs7Ozs7T0FXRztJQUNILElBQ1csSUFBSSxDQUFDLEtBQVc7UUFDdkIsSUFBSSxDQUFDLENBQUMsS0FBSyxZQUFZLElBQUksQ0FBQyxFQUFFO1lBQzFCLE9BQU87U0FDVjtRQUNELElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUM1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QUMsb0JBQW9CLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBc0J2QyxrQkFBa0I7c0JBRHhCLFlBQVk7dUJBQUMsbUJBQW1CLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBc0J0QyxhQUFhO3NCQURuQixZQUFZO3VCQUFDLGNBQWMsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFjakMsWUFBWTtzQkFEbEIsWUFBWTt1QkFBQyxhQUFhLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBZWhDLGNBQWM7c0JBRHBCLFlBQVk7dUJBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQVVsQyxnQkFBZ0I7c0JBRHRCLFlBQVk7dUJBQUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ29tcG9uZW50LFxuICAgIE91dHB1dCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSW5wdXQsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSG9zdExpc3RlbmVyLFxuICAgIFZpZXdDaGlsZHJlbixcbiAgICBRdWVyeUxpc3QsXG4gICAgRWxlbWVudFJlZlxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENhbGVuZGFyIH0gZnJvbSAnLi4vY2FsZW5kYXInO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgSWd4Q2FsZW5kYXJNb250aERpcmVjdGl2ZSB9IGZyb20gJy4uL2NhbGVuZGFyLmRpcmVjdGl2ZXMnO1xuaW1wb3J0IHsgbm9vcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgTmdGb3IsIFRpdGxlQ2FzZVBpcGUsIERhdGVQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxubGV0IE5FWFRfSUQgPSAwO1xuXG5AQ29tcG9uZW50KHtcbiAgICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLCB1c2VFeGlzdGluZzogSWd4TW9udGhzVmlld0NvbXBvbmVudCwgbXVsdGk6IHRydWUgfV0sXG4gICAgc2VsZWN0b3I6ICdpZ3gtbW9udGhzLXZpZXcnLFxuICAgIHRlbXBsYXRlVXJsOiAnbW9udGhzLXZpZXcuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW05nRm9yLCBJZ3hDYWxlbmRhck1vbnRoRGlyZWN0aXZlLCBUaXRsZUNhc2VQaXBlLCBEYXRlUGlwZV1cbn0pXG5leHBvcnQgY2xhc3MgSWd4TW9udGhzVmlld0NvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcbiAgICAvKipcbiAgICAgKiBTZXRzL2dldHMgdGhlIGBpZGAgb2YgdGhlIG1vbnRocyB2aWV3LlxuICAgICAqIElmIG5vdCBzZXQsIHRoZSBgaWRgIHdpbGwgaGF2ZSB2YWx1ZSBgXCJpZ3gtbW9udGhzLXZpZXctMFwiYC5cbiAgICAgKiBgYGBodG1sXG4gICAgICogPGlneC1tb250aHMtdmlldyBpZD1cIm15LW1vbnRocy12aWV3XCI+PC9pZ3gtbW9udGhzLXZpZXc+XG4gICAgICogYGBgXG4gICAgICogYGBgdHlwZXNjcmlwdFxuICAgICAqIGxldCBtb250aHNWaWV3SWQgPSAgdGhpcy5tb250aHNWaWV3LmlkO1xuICAgICAqIGBgYFxuICAgICAqXG4gICAgICogQG1lbWJlcm9mIElneE1vbnRoc1ZpZXdDb21wb25lbnRcbiAgICAgKi9cbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuaWQnKVxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGlkID0gYGlneC1tb250aHMtdmlldy0ke05FWFRfSUQrK31gO1xuXG4gICAgLyoqXG4gICAgICogR2V0cy9zZXRzIHRoZSBzZWxlY3RlZCBkYXRlIG9mIHRoZSBtb250aHMgdmlldy5cbiAgICAgKiBCeSBkZWZhdWx0IGl0IGlzIHRoZSBjdXJyZW50IGRhdGUuXG4gICAgICogYGBgaHRtbFxuICAgICAqIDxpZ3gtbW9udGhzLXZpZXcgW2RhdGVdPVwibXlEYXRlXCI+PC9pZ3gtbW9udGhzLXZpZXc+XG4gICAgICogYGBgXG4gICAgICogYGBgdHlwZXNjcmlwdFxuICAgICAqIGxldCBkYXRlID0gIHRoaXMubW9udGhzVmlldy5kYXRlO1xuICAgICAqIGBgYFxuICAgICAqXG4gICAgICogQG1lbWJlcm9mIElneE1vbnRoc1ZpZXdDb21wb25lbnRcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBzZXQgZGF0ZSh2YWx1ZTogRGF0ZSkge1xuICAgICAgICBpZiAoISh2YWx1ZSBpbnN0YW5jZW9mIERhdGUpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5fZGF0ZSA9IHZhbHVlO1xuICAgICAgICB0aGlzLmFjdGl2ZU1vbnRoID0gdGhpcy5kYXRlLmdldE1vbnRoKCk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBkYXRlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGF0ZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXRzIHRoZSBtb250aCBmb3JtYXQgb3B0aW9uIG9mIHRoZSBtb250aHMgdmlldy5cbiAgICAgKiBgYGB0eXBlc2NyaXB0XG4gICAgICogbGV0IG1vbnRoRm9ybWF0ID0gdGhpcy5tb250aHNWaWV3Lm1vbnRoRm9ybWF0LlxuICAgICAqIGBgYFxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGdldCBtb250aEZvcm1hdCgpOiBhbnkge1xuICAgICAgICByZXR1cm4gdGhpcy5fbW9udGhGb3JtYXQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2V0cyB0aGUgbW9udGggZm9ybWF0IG9wdGlvbiBvZiB0aGUgbW9udGhzIHZpZXcuXG4gICAgICogYGBgaHRtbFxuICAgICAqIDxpZ3gtbW9udGhzLXZpZXc+IFttb250aEZvcm1hdF0gPSBcInNob3J0J1wiPC9pZ3gtbW9udGhzLXZpZXc+XG4gICAgICogYGBgXG4gICAgICpcbiAgICAgKiBAbWVtYmVyb2YgSWd4TW9udGhzVmlld0NvbXBvbmVudFxuICAgICAqL1xuICAgIHB1YmxpYyBzZXQgbW9udGhGb3JtYXQodmFsdWU6IGFueSkge1xuICAgICAgICB0aGlzLl9tb250aEZvcm1hdCA9IHZhbHVlO1xuICAgICAgICB0aGlzLmluaXRNb250aEZvcm1hdHRlcigpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldHMgdGhlIGBsb2NhbGVgIG9mIHRoZSBtb250aHMgdmlldy5cbiAgICAgKiBEZWZhdWx0IHZhbHVlIGlzIGBcImVuXCJgLlxuICAgICAqIGBgYHR5cGVzY3JpcHRcbiAgICAgKiBsZXQgbG9jYWxlID0gIHRoaXMubW9udGhzVmlldy5sb2NhbGU7XG4gICAgICogYGBgXG4gICAgICpcbiAgICAgKiBAbWVtYmVyb2YgSWd4TW9udGhzVmlld0NvbXBvbmVudFxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGdldCBsb2NhbGUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2xvY2FsZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZXRzIHRoZSBgbG9jYWxlYCBvZiB0aGUgbW9udGhzIHZpZXcuXG4gICAgICogRXhwZWN0cyBhIHZhbGlkIEJDUCA0NyBsYW5ndWFnZSB0YWcuXG4gICAgICogRGVmYXVsdCB2YWx1ZSBpcyBgXCJlblwiYC5cbiAgICAgKiBgYGBodG1sXG4gICAgICogPGlneC1tb250aHMtdmlldyBbbG9jYWxlXT1cImRlXCI+PC9pZ3gtbW9udGhzLXZpZXc+XG4gICAgICogYGBgXG4gICAgICpcbiAgICAgKiBAbWVtYmVyb2YgSWd4TW9udGhzVmlld0NvbXBvbmVudFxuICAgICAqL1xuICAgIHB1YmxpYyBzZXQgbG9jYWxlKHZhbHVlOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5fbG9jYWxlID0gdmFsdWU7XG4gICAgICAgIHRoaXMuaW5pdE1vbnRoRm9ybWF0dGVyKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0cy9zZXRzIHdoZXRoZXIgdGhlIHZpZXcgc2hvdWxkIGJlIHJlbmRlcmVkXG4gICAgICogYWNjb3JkaW5nIHRvIHRoZSBsb2NhbGUgYW5kIG1vbnRoRm9ybWF0LCBpZiBhbnkuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgZm9ybWF0VmlldyA9IHRydWU7XG5cbiAgICAvKipcbiAgICAgKiBFbWl0cyBhbiBldmVudCB3aGVuIGEgc2VsZWN0aW9uIGlzIG1hZGUgaW4gdGhlIG1vbnRocyB2aWV3LlxuICAgICAqIFByb3ZpZGVzIHJlZmVyZW5jZSB0aGUgYGRhdGVgIHByb3BlcnR5IGluIHRoZSBgSWd4TW9udGhzVmlld0NvbXBvbmVudGAuXG4gICAgICogYGBgaHRtbFxuICAgICAqIDxpZ3gtbW9udGhzLXZpZXcgKHNlbGVjdGVkKT1cIm9uU2VsZWN0aW9uKCRldmVudClcIj48L2lneC1tb250aHMtdmlldz5cbiAgICAgKiBgYGBcbiAgICAgKlxuICAgICAqIEBtZW1iZXJvZiBJZ3hNb250aHNWaWV3Q29tcG9uZW50XG4gICAgICovXG4gICAgQE91dHB1dCgpXG4gICAgcHVibGljIHNlbGVjdGVkID0gbmV3IEV2ZW50RW1pdHRlcjxEYXRlPigpO1xuXG4gICAgLyoqXG4gICAgICogVGhlIGRlZmF1bHQgY3NzIGNsYXNzIGFwcGxpZWQgdG8gdGhlIGNvbXBvbmVudC5cbiAgICAgKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmlneC1jYWxlbmRhcicpXG4gICAgcHVibGljIHN0eWxlQ2xhc3MgPSB0cnVlO1xuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqL1xuICAgIEBWaWV3Q2hpbGRyZW4oSWd4Q2FsZW5kYXJNb250aERpcmVjdGl2ZSwgeyByZWFkOiBJZ3hDYWxlbmRhck1vbnRoRGlyZWN0aXZlIH0pXG4gICAgcHVibGljIG1vbnRoc1JlZjogUXVlcnlMaXN0PElneENhbGVuZGFyTW9udGhEaXJlY3RpdmU+O1xuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBhbiBhcnJheSBvZiBkYXRlIG9iamVjdHMgd2hpY2ggYXJlIHRoZW4gdXNlZCB0b1xuICAgICAqIHByb3Blcmx5IHJlbmRlciB0aGUgbW9udGggbmFtZXMuXG4gICAgICpcbiAgICAgKiBVc2VkIGluIHRoZSB0ZW1wbGF0ZSBvZiB0aGUgY29tcG9uZW50XG4gICAgICpcbiAgICAgKiBAaGlkZGVuXG4gICAgICovXG4gICAgcHVibGljIGdldCBtb250aHMoKTogRGF0ZVtdIHtcbiAgICAgICAgbGV0IHN0YXJ0ID0gbmV3IERhdGUodGhpcy5kYXRlLmdldEZ1bGxZZWFyKCksIDAsIDEpO1xuICAgICAgICBjb25zdCByZXN1bHQgPSBbXTtcblxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IDEyOyBpKyspIHtcbiAgICAgICAgICAgIHJlc3VsdC5wdXNoKHN0YXJ0KTtcbiAgICAgICAgICAgIHN0YXJ0ID0gdGhpcy5fY2FsZW5kYXJNb2RlbC50aW1lZGVsdGEoc3RhcnQsICdtb250aCcsIDEpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogQGludGVybmFsXG4gICAgICovXG4gICAgcHVibGljIGFjdGl2ZU1vbnRoO1xuXG4gICAgcHJpdmF0ZSBfZGF0ZSA9IG5ldyBEYXRlKCk7XG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqL1xuICAgIHByaXZhdGUgX2Zvcm1hdHRlck1vbnRoOiBhbnk7XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICovXG4gICAgcHJpdmF0ZSBfbG9jYWxlID0gJ2VuJztcblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBwcml2YXRlIF9tb250aEZvcm1hdCA9ICdzaG9ydCc7XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICovXG4gICAgcHJpdmF0ZSBfY2FsZW5kYXJNb2RlbDogQ2FsZW5kYXI7XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICovXG4gICAgcHJpdmF0ZSBfb25Ub3VjaGVkQ2FsbGJhY2s6ICgpID0+IHZvaWQgPSBub29wO1xuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBwcml2YXRlIF9vbkNoYW5nZUNhbGxiYWNrOiAoXzogRGF0ZSkgPT4gdm9pZCA9IG5vb3A7XG5cbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgZWw6IEVsZW1lbnRSZWYpIHtcbiAgICAgICAgdGhpcy5pbml0TW9udGhGb3JtYXR0ZXIoKTtcbiAgICAgICAgdGhpcy5fY2FsZW5kYXJNb2RlbCA9IG5ldyBDYWxlbmRhcigpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBASG9zdExpc3RlbmVyKCdrZXlkb3duLmFycm93dXAnLCBbJyRldmVudCddKVxuICAgIHB1YmxpYyBvbktleWRvd25BcnJvd1VwKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgICAgIGNvbnN0IG5vZGUgPSB0aGlzLm1vbnRoc1JlZi5maW5kKChkYXRlKSA9PiBkYXRlLm5hdGl2ZUVsZW1lbnQgPT09IGV2ZW50LnRhcmdldCk7XG4gICAgICAgIGlmICghbm9kZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgbW9udGhzID0gdGhpcy5tb250aHNSZWYudG9BcnJheSgpO1xuICAgICAgICBjb25zdCBub2RlUmVjdCA9IG5vZGUubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcblxuICAgICAgICBmb3IgKGxldCBpbmRleCA9IG1vbnRocy5pbmRleE9mKG5vZGUpIC0gMTsgaW5kZXggPj0gMDsgaW5kZXgtLSkge1xuICAgICAgICAgICAgY29uc3QgbmV4dE5vZGVSZWN0ID0gbW9udGhzW2luZGV4XS5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgICAgICAgY29uc3QgdG9sZXJhbmNlID0gNjtcbiAgICAgICAgICAgIGlmIChub2RlUmVjdC50b3AgIT09IG5leHROb2RlUmVjdC50b3AgJiYgKG5leHROb2RlUmVjdC5sZWZ0IC0gbm9kZVJlY3QubGVmdCkgPCB0b2xlcmFuY2UpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBtb250aCA9IG1vbnRoc1tpbmRleF07XG4gICAgICAgICAgICAgICAgbW9udGgubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgICAgICAgICAgICAgIHRoaXMuYWN0aXZlTW9udGggPSBtb250aC52YWx1ZS5nZXRNb250aCgpO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqL1xuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24uYXJyb3dkb3duJywgWyckZXZlbnQnXSlcbiAgICBwdWJsaWMgb25LZXlkb3duQXJyb3dEb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgICAgIGNvbnN0IG5vZGUgPSB0aGlzLm1vbnRoc1JlZi5maW5kKChkYXRlKSA9PiBkYXRlLm5hdGl2ZUVsZW1lbnQgPT09IGV2ZW50LnRhcmdldCk7XG4gICAgICAgIGlmICghbm9kZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgbW9udGhzID0gdGhpcy5tb250aHNSZWYudG9BcnJheSgpO1xuICAgICAgICBjb25zdCBub2RlUmVjdCA9IG5vZGUubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcblxuICAgICAgICBmb3IgKGxldCBpbmRleCA9IG1vbnRocy5pbmRleE9mKG5vZGUpICsgMTsgaW5kZXggPCBtb250aHMubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICAgICAgICBjb25zdCBuZXh0Tm9kZVJlY3QgPSBtb250aHNbaW5kZXhdLm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICAgICAgICBjb25zdCB0b2xlcmFuY2UgPSA2O1xuICAgICAgICAgICAgaWYgKG5leHROb2RlUmVjdC50b3AgIT09IG5vZGVSZWN0LnRvcCAmJiAobm9kZVJlY3QubGVmdCAtIG5leHROb2RlUmVjdC5sZWZ0KSA8IHRvbGVyYW5jZSApIHtcbiAgICAgICAgICAgICAgICBjb25zdCBtb250aCA9IG1vbnRoc1tpbmRleF07XG4gICAgICAgICAgICAgICAgbW9udGgubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgICAgICAgICAgICAgIHRoaXMuYWN0aXZlTW9udGggPSBtb250aC52YWx1ZS5nZXRNb250aCgpO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqL1xuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24uYXJyb3dyaWdodCcsIFsnJGV2ZW50J10pXG4gICAgcHVibGljIG9uS2V5ZG93bkFycm93UmlnaHQoZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG5cbiAgICAgICAgY29uc3Qgbm9kZSA9IHRoaXMubW9udGhzUmVmLmZpbmQoKGRhdGUpID0+IGRhdGUubmF0aXZlRWxlbWVudCA9PT0gZXZlbnQudGFyZ2V0KTtcbiAgICAgICAgaWYgKCFub2RlKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBtb250aHMgPSB0aGlzLm1vbnRoc1JlZi50b0FycmF5KCk7XG4gICAgICAgIGlmIChtb250aHMuaW5kZXhPZihub2RlKSArIDEgPCBtb250aHMubGVuZ3RoKSB7XG4gICAgICAgICAgICBjb25zdCBtb250aCA9IG1vbnRoc1ttb250aHMuaW5kZXhPZihub2RlKSArIDFdO1xuICAgICAgICAgICAgdGhpcy5hY3RpdmVNb250aCA9IG1vbnRoLnZhbHVlLmdldE1vbnRoKCk7XG4gICAgICAgICAgICBtb250aC5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICovXG4gICAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bi5hcnJvd2xlZnQnLCBbJyRldmVudCddKVxuICAgIHB1YmxpYyBvbktleWRvd25BcnJvd0xlZnQoZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG5cbiAgICAgICAgY29uc3Qgbm9kZSA9IHRoaXMubW9udGhzUmVmLmZpbmQoKGRhdGUpID0+IGRhdGUubmF0aXZlRWxlbWVudCA9PT0gZXZlbnQudGFyZ2V0KTtcbiAgICAgICAgaWYgKCFub2RlKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBtb250aHMgPSB0aGlzLm1vbnRoc1JlZi50b0FycmF5KCk7XG4gICAgICAgIGlmIChtb250aHMuaW5kZXhPZihub2RlKSAtIDEgPj0gMCkge1xuICAgICAgICAgICAgY29uc3QgbW9udGggPSBtb250aHNbbW9udGhzLmluZGV4T2Yobm9kZSkgLSAxXTtcbiAgICAgICAgICAgIHRoaXMuYWN0aXZlTW9udGggPSBtb250aC52YWx1ZS5nZXRNb250aCgpO1xuICAgICAgICAgICAgbW9udGgubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqL1xuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24uaG9tZScsIFsnJGV2ZW50J10pXG4gICAgcHVibGljIG9uS2V5ZG93bkhvbWUoZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG5cbiAgICAgICAgY29uc3QgbW9udGggPSB0aGlzLm1vbnRoc1JlZi50b0FycmF5KClbMF07XG4gICAgICAgIHRoaXMuYWN0aXZlTW9udGggPSBtb250aC52YWx1ZS5nZXRNb250aCgpO1xuICAgICAgICBtb250aC5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqL1xuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24uZW5kJywgWyckZXZlbnQnXSlcbiAgICBwdWJsaWMgb25LZXlkb3duRW5kKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgICAgIGNvbnN0IG1vbnRocyA9IHRoaXMubW9udGhzUmVmLnRvQXJyYXkoKTtcbiAgICAgICAgY29uc3QgbW9udGggPSBtb250aHNbbW9udGhzLmxlbmd0aCAtIDFdO1xuICAgICAgICB0aGlzLmFjdGl2ZU1vbnRoID0gbW9udGgudmFsdWUuZ2V0TW9udGgoKTtcbiAgICAgICAgbW9udGgubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBASG9zdExpc3RlbmVyKCdrZXlkb3duLmVudGVyJywgWyckZXZlbnQnXSlcbiAgICBwdWJsaWMgb25LZXlkb3duRW50ZXIoZXZlbnQpIHtcbiAgICAgICAgY29uc3QgdmFsdWUgPSB0aGlzLm1vbnRoc1JlZi5maW5kKChkYXRlKSA9PiBkYXRlLm5hdGl2ZUVsZW1lbnQgPT09IGV2ZW50LnRhcmdldCkudmFsdWU7XG4gICAgICAgIHRoaXMuZGF0ZSA9IG5ldyBEYXRlKHZhbHVlLmdldEZ1bGxZZWFyKCksIHZhbHVlLmdldE1vbnRoKCksIHRoaXMuZGF0ZS5nZXREYXRlKCkpO1xuICAgICAgICB0aGlzLmFjdGl2ZU1vbnRoID0gdGhpcy5kYXRlLmdldE1vbnRoKCk7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWQuZW1pdCh0aGlzLmRhdGUpO1xuICAgICAgICB0aGlzLl9vbkNoYW5nZUNhbGxiYWNrKHRoaXMuZGF0ZSk7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignZm9jdXNvdXQnKVxuICAgIHB1YmxpYyByZXNldEFjdGl2ZU1vbnRoKCkge1xuICAgICAgICB0aGlzLmFjdGl2ZU1vbnRoID0gdGhpcy5kYXRlLmdldE1vbnRoKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyB0aGUgbG9jYWxlIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb250aCBpbiB0aGUgbW9udGhzIHZpZXcuXG4gICAgICpcbiAgICAgKiBAaGlkZGVuXG4gICAgICovXG4gICAgcHVibGljIGZvcm1hdHRlZE1vbnRoKHZhbHVlOiBEYXRlKTogc3RyaW5nIHtcbiAgICAgICAgaWYgKHRoaXMuZm9ybWF0Vmlldykge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuX2Zvcm1hdHRlck1vbnRoLmZvcm1hdCh2YWx1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGAke3ZhbHVlLmdldE1vbnRoKCl9YDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICovXG4gICAgcHVibGljIHNlbGVjdE1vbnRoKGV2ZW50KSB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWQuZW1pdChldmVudCk7XG5cbiAgICAgICAgdGhpcy5kYXRlID0gZXZlbnQ7XG4gICAgICAgIHRoaXMuYWN0aXZlTW9udGggPSB0aGlzLmRhdGUuZ2V0TW9udGgoKTtcbiAgICAgICAgdGhpcy5fb25DaGFuZ2VDYWxsYmFjayh0aGlzLmRhdGUpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBwdWJsaWMgcmVnaXN0ZXJPbkNoYW5nZShmbjogKHY6IERhdGUpID0+IHZvaWQpIHtcbiAgICAgICAgdGhpcy5fb25DaGFuZ2VDYWxsYmFjayA9IGZuO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBwdWJsaWMgcmVnaXN0ZXJPblRvdWNoZWQoZm46ICgpID0+IHZvaWQpIHtcbiAgICAgICAgdGhpcy5fb25Ub3VjaGVkQ2FsbGJhY2sgPSBmbjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICovXG4gICAgcHVibGljIHdyaXRlVmFsdWUodmFsdWU6IERhdGUpIHtcbiAgICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLmRhdGUgPSB2YWx1ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBwdWJsaWMgbW9udGhUcmFja2VyKGluZGV4LCBpdGVtKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGAke2l0ZW0uZ2V0TW9udGgoKX19YDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICovXG4gICAgcHJpdmF0ZSBpbml0TW9udGhGb3JtYXR0ZXIoKSB7XG4gICAgICAgIHRoaXMuX2Zvcm1hdHRlck1vbnRoID0gbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQodGhpcy5fbG9jYWxlLCB7IG1vbnRoOiB0aGlzLm1vbnRoRm9ybWF0IH0pO1xuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJpZ3gtY2FsZW5kYXJfX2JvZHlcIj5cbiAgICA8ZGl2IGNsYXNzPVwiaWd4LWNhbGVuZGFyX19ib2R5LXJvdyBpZ3gtY2FsZW5kYXJfX2JvZHktcm93LS13cmFwXCI+XG4gICAgICAgIDxzcGFuXG4gICAgICAgICAgICBjbGFzcz1cImlneC1jYWxlbmRhcl9fbW9udGhcIlxuICAgICAgICAgICAgcm9sZT1cImJ1dHRvblwiXG4gICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIm1vbnRoIHwgZGF0ZTogJ0xMTEwnXCJcbiAgICAgICAgICAgIFtpZ3hDYWxlbmRhck1vbnRoXT1cIm1vbnRoXCJcbiAgICAgICAgICAgIFtkYXRlXT1cImRhdGVcIlxuICAgICAgICAgICAgW2F0dHIudGFiaW5kZXhdPVwiYWN0aXZlTW9udGggPT09IG1vbnRoLmdldE1vbnRoKCkgPyAwIDogLTFcIlxuICAgICAgICAgICAgKG1vbnRoU2VsZWN0aW9uKT1cInNlbGVjdE1vbnRoKCRldmVudClcIiBbaW5kZXhdPVwiaVwiXG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgbW9udGggb2YgbW9udGhzOyBpbmRleCBhcyBpOyB0cmFja0J5OiBtb250aFRyYWNrZXJcIj5cbiAgICAgICAgICAgIHt7IGZvcm1hdHRlZE1vbnRoKG1vbnRoKSB8IHRpdGxlY2FzZSB9fVxuICAgICAgICA8L3NwYW4+XG4gICAgPC9kaXY+XG48L2Rpdj5cblxuIl19
|
|
@@ -8,10 +8,10 @@ export class IgxMonthViewSlotsCalendar {
|
|
|
8
8
|
transform(monthViews) {
|
|
9
9
|
return new Array(monthViews);
|
|
10
10
|
}
|
|
11
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0
|
|
12
|
-
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.0.0
|
|
11
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: IgxMonthViewSlotsCalendar, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
12
|
+
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.0.0", ngImport: i0, type: IgxMonthViewSlotsCalendar, isStandalone: true, name: "IgxMonthViewSlots" }); }
|
|
13
13
|
}
|
|
14
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: IgxMonthViewSlotsCalendar, decorators: [{
|
|
15
15
|
type: Pipe,
|
|
16
16
|
args: [{
|
|
17
17
|
name: 'IgxMonthViewSlots',
|
|
@@ -29,14 +29,14 @@ export class IgxGetViewDateCalendar {
|
|
|
29
29
|
const date = this.calendar.timedelta(viewDate, 'month', index);
|
|
30
30
|
return wholeDate ? date : date.getMonth();
|
|
31
31
|
}
|
|
32
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0
|
|
33
|
-
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.0.0
|
|
32
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: IgxGetViewDateCalendar, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
33
|
+
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.0.0", ngImport: i0, type: IgxGetViewDateCalendar, isStandalone: true, name: "IgxGetViewDate" }); }
|
|
34
34
|
}
|
|
35
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0
|
|
35
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: IgxGetViewDateCalendar, decorators: [{
|
|
36
36
|
type: Pipe,
|
|
37
37
|
args: [{
|
|
38
38
|
name: 'IgxGetViewDate',
|
|
39
39
|
standalone: true
|
|
40
40
|
}]
|
|
41
41
|
}], ctorParameters: function () { return []; } });
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9udGhzLXZpZXcucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2lnbml0ZXVpLWFuZ3VsYXIvc3JjL2xpYi9jYWxlbmRhci9tb250aHMtdmlldy5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQ3BELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxZQUFZLENBQUM7O0FBRXRDOztHQUVHO0FBS0gsTUFBTSxPQUFPLHlCQUF5QjtJQUMzQixTQUFTLENBQUMsVUFBa0I7UUFDL0IsT0FBTyxJQUFJLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNqQyxDQUFDOzhHQUhRLHlCQUF5Qjs0R0FBekIseUJBQXlCOzsyRkFBekIseUJBQXlCO2tCQUpyQyxJQUFJO21CQUFDO29CQUNGLElBQUksRUFBRSxtQkFBbUI7b0JBQ3pCLFVBQVUsRUFBRSxJQUFJO2lCQUNuQjs7QUFPRDs7R0FFRztBQUtILE1BQU0sT0FBTyxzQkFBc0I7SUFFL0I7UUFDSSxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksUUFBUSxFQUFFLENBQUM7SUFDbkMsQ0FBQztJQUlNLFNBQVMsQ0FBQyxLQUFhLEVBQUUsUUFBYyxFQUFFLFNBQVMsR0FBRyxJQUFJO1FBQzVELE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDL0QsT0FBTyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzlDLENBQUM7OEdBWFEsc0JBQXNCOzRHQUF0QixzQkFBc0I7OzJGQUF0QixzQkFBc0I7a0JBSmxDLElBQUk7bUJBQUM7b0JBQ0YsSUFBSSxFQUFFLGdCQUFnQjtvQkFDdEIsVUFBVSxFQUFFLElBQUk7aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ2FsZW5kYXIgfSBmcm9tICcuL2NhbGVuZGFyJztcblxuLyoqXG4gKiBAaGlkZGVuXG4gKi9cbkBQaXBlKHtcbiAgICBuYW1lOiAnSWd4TW9udGhWaWV3U2xvdHMnLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSWd4TW9udGhWaWV3U2xvdHNDYWxlbmRhciBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAgIHB1YmxpYyB0cmFuc2Zvcm0obW9udGhWaWV3czogbnVtYmVyKSB7XG4gICAgICAgIHJldHVybiBuZXcgQXJyYXkobW9udGhWaWV3cyk7XG4gICAgfVxufVxuXG4vKipcbiAqIEBoaWRkZW5cbiAqL1xuQFBpcGUoe1xuICAgIG5hbWU6ICdJZ3hHZXRWaWV3RGF0ZScsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBJZ3hHZXRWaWV3RGF0ZUNhbGVuZGFyIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICAgcHJpdmF0ZSBjYWxlbmRhcjogQ2FsZW5kYXI7XG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHRoaXMuY2FsZW5kYXIgPSBuZXcgQ2FsZW5kYXIoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdHJhbnNmb3JtKGluZGV4OiBudW1iZXIsIHZpZXdEYXRlOiBEYXRlKTogRGF0ZTtcbiAgICBwdWJsaWMgdHJhbnNmb3JtKGluZGV4OiBudW1iZXIsIHZpZXdEYXRlOiBEYXRlLCB3aG9sZURhdGU6IGZhbHNlKTogbnVtYmVyO1xuICAgIHB1YmxpYyB0cmFuc2Zvcm0oaW5kZXg6IG51bWJlciwgdmlld0RhdGU6IERhdGUsIHdob2xlRGF0ZSA9IHRydWUpIHtcbiAgICAgICAgY29uc3QgZGF0ZSA9IHRoaXMuY2FsZW5kYXIudGltZWRlbHRhKHZpZXdEYXRlLCAnbW9udGgnLCBpbmRleCk7XG4gICAgICAgIHJldHVybiB3aG9sZURhdGUgPyBkYXRlIDogZGF0ZS5nZXRNb250aCgpO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -13,10 +13,10 @@ export class CalendarHammerConfig extends HammerGestureConfig {
|
|
|
13
13
|
pan: { direction: Hammer.DIRECTION_VERTICAL, threshold: 1 }
|
|
14
14
|
};
|
|
15
15
|
}
|
|
16
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0
|
|
17
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0
|
|
16
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: CalendarHammerConfig, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
17
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: CalendarHammerConfig }); }
|
|
18
18
|
}
|
|
19
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: CalendarHammerConfig, decorators: [{
|
|
20
20
|
type: Injectable
|
|
21
21
|
}] });
|
|
22
22
|
export class IgxYearsViewComponent {
|
|
@@ -249,8 +249,8 @@ export class IgxYearsViewComponent {
|
|
|
249
249
|
}
|
|
250
250
|
this.date = this._calendarModel.timedelta(this.date, 'year', delta);
|
|
251
251
|
}
|
|
252
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0
|
|
253
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0
|
|
252
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: IgxYearsViewComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
253
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: IgxYearsViewComponent, isStandalone: true, selector: "igx-years-view", inputs: { formatView: "formatView", date: "date", yearFormat: "yearFormat", locale: "locale" }, outputs: { selected: "selected" }, host: { listeners: { "keydown.arrowdown": "onKeydownArrowDown($event)", "keydown.arrowup": "onKeydownArrowUp($event)", "keydown.enter": "onKeydownEnter()" }, properties: { "class.igx-calendar": "this.styleClass" } }, providers: [
|
|
254
254
|
{
|
|
255
255
|
provide: NG_VALUE_ACCESSOR,
|
|
256
256
|
useExisting: IgxYearsViewComponent,
|
|
@@ -262,7 +262,7 @@ export class IgxYearsViewComponent {
|
|
|
262
262
|
}
|
|
263
263
|
], viewQueries: [{ propertyName: "calendarDir", predicate: IgxCalendarYearDirective, descendants: true, read: IgxCalendarYearDirective }], ngImport: i0, template: "<div class=\"igx-calendar__body\">\n <div class=\"igx-calendar__body-column\" (wheel)=\"scroll($event)\" (pan)=\"pan($event)\">\n <span class=\"igx-calendar__year\"\n [igxCalendarYear]=\"year\"\n [date]=\"date\"\n (yearSelection)=\"selectYear($event)\"\n *ngFor=\"let year of decade; trackBy: yearTracker\">\n\n {{ formattedYear(year) }}\n </span>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: IgxCalendarYearDirective, selector: "[igxCalendarYear]", inputs: ["igxCalendarYear", "date"], outputs: ["yearSelection"] }] }); }
|
|
264
264
|
}
|
|
265
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0
|
|
265
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: IgxYearsViewComponent, decorators: [{
|
|
266
266
|
type: Component,
|
|
267
267
|
args: [{ providers: [
|
|
268
268
|
{
|
|
@@ -301,4 +301,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-rc.4", ng
|
|
|
301
301
|
type: HostListener,
|
|
302
302
|
args: ['keydown.enter']
|
|
303
303
|
}] } });
|
|
304
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWVhcnMtdmlldy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pZ25pdGV1aS1hbmd1bGFyL3NyYy9saWIvY2FsZW5kYXIveWVhcnMtdmlldy95ZWFycy12aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2lnbml0ZXVpLWFuZ3VsYXIvc3JjL2xpYi9jYWxlbmRhci95ZWFycy12aWV3L3llYXJzLXZpZXcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFDVCxNQUFNLEVBQ04sWUFBWSxFQUNaLEtBQUssRUFDTCxXQUFXLEVBQ1gsWUFBWSxFQUVaLFVBQVUsRUFDVixZQUFZLEVBRWYsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDOUMsT0FBTyxFQUFFLGlCQUFpQixFQUF3QixNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3ZGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDNUIsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQUd4QyxNQUFNLE9BQU8sb0JBQXFCLFNBQVEsbUJBQW1CO0lBRDdEOztRQUVvQixjQUFTLEdBQUc7WUFDeEIsR0FBRyxFQUFFLEVBQUUsU0FBUyxFQUFFLE1BQU0sQ0FBQyxrQkFBa0IsRUFBRSxTQUFTLEVBQUUsQ0FBQyxFQUFFO1NBQzlELENBQUM7S0FDTDttSEFKWSxvQkFBb0I7dUhBQXBCLG9CQUFvQjs7Z0dBQXBCLG9CQUFvQjtrQkFEaEMsVUFBVTs7QUF3QlgsTUFBTSxPQUFPLHFCQUFxQjtJQXFFOUI7Ozs7Ozs7Ozs7O09BV0c7SUFDSCxJQUNXLElBQUk7UUFDWCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDdEIsQ0FBQztJQUVELElBQVcsSUFBSSxDQUFDLEtBQVc7UUFDdkIsSUFBSSxDQUFDLENBQUMsS0FBSyxZQUFZLElBQUksQ0FBQyxFQUFFO1lBQzFCLE9BQU87U0FDVjtRQUNELElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQ3ZCLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILElBQ1csVUFBVTtRQUNqQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDNUIsQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDSCxJQUFXLFVBQVUsQ0FBQyxLQUFVO1FBQzVCLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNILElBQ1csTUFBTTtRQUNiLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN4QixDQUFDO0lBRUQ7Ozs7Ozs7OztPQVNHO0lBQ0gsSUFBVyxNQUFNLENBQUMsS0FBYTtRQUMzQixJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztRQUNyQixJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNILElBQVcsTUFBTTtRQUNiLE1BQU0sTUFBTSxHQUFXLEVBQUUsQ0FBQztRQUMxQixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUMxQyxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUV4QyxLQUFLLE1BQU0sSUFBSSxJQUFJLEtBQUssQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLEVBQUU7WUFDbEMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQztTQUMxRTtRQUVELE9BQU8sTUFBTSxDQUFDO0lBQ2xCLENBQUM7SUFFRCxZQUFtQixFQUFjO1FBQWQsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQTlKakM7Ozs7Ozs7O1dBUUc7UUFFSSxhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUUzQzs7OztXQUlHO1FBRUksZUFBVSxHQUFHLElBQUksQ0FBQztRQWN6Qjs7V0FFRztRQUNLLFlBQU8sR0FBRyxJQUFJLENBQUM7UUFFdkI7O1dBRUc7UUFDSyxnQkFBVyxHQUFHLFNBQVMsQ0FBQztRQU1oQzs7V0FFRztRQUNLLFVBQUssR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1FBRTNCOztXQUVHO1FBQ0ssdUJBQWtCLEdBQWUsSUFBSSxDQUFDO1FBRTlDOztXQUVHO1FBQ0ssc0JBQWlCLEdBQXNCLElBQUksQ0FBQztRQW9HaEQsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDekIsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLFFBQVEsRUFBRSxDQUFDO0lBQ3pDLENBQUM7SUFFRDs7T0FFRztJQUVJLGtCQUFrQixDQUFDLEtBQW9CO1FBQzFDLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN2QixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7UUFFeEIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzFCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUMvRixDQUFDO0lBRUQ7O09BRUc7SUFFSSxnQkFBZ0IsQ0FBQyxLQUFvQjtRQUN4QyxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBRXhCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzNCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxzQkFBc0IsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNuRyxDQUFDO0lBRUQ7O09BRUc7SUFFSSxjQUFjO1FBQ2pCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM5QixJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksYUFBYSxDQUFDLEtBQVc7UUFDNUIsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ2pCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDNUM7UUFDRCxPQUFPLEdBQUcsS0FBSyxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksVUFBVSxDQUFDLEtBQUs7UUFDbkIsSUFBSSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUM7UUFFbEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzlCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLEtBQUs7UUFDZixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBRXhCLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3hDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxHQUFHLENBQUMsS0FBSztRQUNaLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3hDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxnQkFBZ0IsQ0FBQyxFQUFxQjtRQUN6QyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFFRDs7T0FFRztJQUNJLGlCQUFpQixDQUFDLEVBQWM7UUFDbkMsSUFBSSxDQUFDLGtCQUFrQixHQUFHLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxXQUFXLENBQUMsS0FBSyxFQUFFLElBQUk7UUFDMUIsT0FBTyxHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsR0FBRyxDQUFDO0lBQ3BDLENBQUM7SUFFRDs7T0FFRztJQUNJLFVBQVUsQ0FBQyxLQUFXO1FBQ3pCLElBQUksS0FBSyxFQUFFO1lBQ1AsSUFBSSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUM7U0FDckI7SUFDTCxDQUFDO0lBRUQ7O09BRUc7SUFDSyxpQkFBaUI7UUFDckIsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztJQUMzRixDQUFDO0lBRUQ7O09BRUc7SUFDSyxpQkFBaUIsQ0FBQyxLQUFhO1FBQ25DLE1BQU0sV0FBVyxHQUFHLElBQUksSUFBSSxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7UUFFN0MsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsR0FBRyxXQUFXLElBQUksRUFBRSxDQUFDO1lBQzFELENBQUMsS0FBSyxHQUFHLENBQUMsSUFBSSxXQUFXLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRTtZQUM1RCxPQUFPO1NBQ1Y7UUFDRCxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3hFLENBQUM7bUhBclNRLHFCQUFxQjt1R0FBckIscUJBQXFCLHlaQWhCbkI7WUFDUDtnQkFDSSxPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixXQUFXLEVBQUUscUJBQXFCO2dCQUNsQyxLQUFLLEVBQUUsSUFBSTthQUNkO1lBQ0Q7Z0JBQ0ksT0FBTyxFQUFFLHFCQUFxQjtnQkFDOUIsUUFBUSxFQUFFLG9CQUFvQjthQUNqQztTQUNKLDBEQXNDYSx3QkFBd0IsMkJBQVUsd0JBQXdCLDZCQzNFNUUsMmJBWUEsNENENkJjLEtBQUssbUhBQUUsd0JBQXdCOztnR0FFaEMscUJBQXFCO2tCQWpCakMsU0FBUztnQ0FDSzt3QkFDUDs0QkFDSSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLHVCQUF1Qjs0QkFDbEMsS0FBSyxFQUFFLElBQUk7eUJBQ2Q7d0JBQ0Q7NEJBQ0ksT0FBTyxFQUFFLHFCQUFxQjs0QkFDOUIsUUFBUSxFQUFFLG9CQUFvQjt5QkFDakM7cUJBQ0osWUFDUyxnQkFBZ0IsY0FFZCxJQUFJLFdBQ1AsQ0FBQyxLQUFLLEVBQUUsd0JBQXdCLENBQUM7aUdBUW5DLFVBQVU7c0JBRGhCLEtBQUs7Z0JBYUMsUUFBUTtzQkFEZCxNQUFNO2dCQVNBLFVBQVU7c0JBRGhCLFdBQVc7dUJBQUMsb0JBQW9CO2dCQVExQixXQUFXO3NCQURqQixZQUFZO3VCQUFDLHdCQUF3QixFQUFFLEVBQUUsSUFBSSxFQUFFLHdCQUF3QixFQUFFO2dCQWtEL0QsSUFBSTtzQkFEZCxLQUFLO2dCQW1CSyxVQUFVO3NCQURwQixLQUFLO2dCQTRCSyxNQUFNO3NCQURoQixLQUFLO2dCQWlEQyxrQkFBa0I7c0JBRHhCLFlBQVk7dUJBQUMsbUJBQW1CLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBYXRDLGdCQUFnQjtzQkFEdEIsWUFBWTt1QkFBQyxpQkFBaUIsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFhcEMsY0FBYztzQkFEcEIsWUFBWTt1QkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDb21wb25lbnQsXG4gICAgT3V0cHV0LFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBJbnB1dCxcbiAgICBIb3N0QmluZGluZyxcbiAgICBIb3N0TGlzdGVuZXIsXG4gICAgRWxlbWVudFJlZixcbiAgICBJbmplY3RhYmxlLFxuICAgIFZpZXdDaGlsZHJlbixcbiAgICBRdWVyeUxpc3Rcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyByYW5nZSwgQ2FsZW5kYXIgfSBmcm9tICcuLi9jYWxlbmRhcic7XG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiwgQ29udHJvbFZhbHVlQWNjZXNzb3IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBIYW1tZXJHZXN0dXJlQ29uZmlnLCBIQU1NRVJfR0VTVFVSRV9DT05GSUcgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7IElneENhbGVuZGFyWWVhckRpcmVjdGl2ZSB9IGZyb20gJy4uL2NhbGVuZGFyLmRpcmVjdGl2ZXMnO1xuaW1wb3J0IHsgbm9vcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgTmdGb3IgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQ2FsZW5kYXJIYW1tZXJDb25maWcgZXh0ZW5kcyBIYW1tZXJHZXN0dXJlQ29uZmlnIHtcbiAgICBwdWJsaWMgb3ZlcnJpZGUgb3ZlcnJpZGVzID0ge1xuICAgICAgICBwYW46IHsgZGlyZWN0aW9uOiBIYW1tZXIuRElSRUNUSU9OX1ZFUlRJQ0FMLCB0aHJlc2hvbGQ6IDEgfVxuICAgIH07XG59XG5cbkBDb21wb25lbnQoe1xuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBJZ3hZZWFyc1ZpZXdDb21wb25lbnQsXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZVxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBIQU1NRVJfR0VTVFVSRV9DT05GSUcsXG4gICAgICAgICAgICB1c2VDbGFzczogQ2FsZW5kYXJIYW1tZXJDb25maWdcbiAgICAgICAgfVxuICAgIF0sXG4gICAgc2VsZWN0b3I6ICdpZ3gteWVhcnMtdmlldycsXG4gICAgdGVtcGxhdGVVcmw6ICd5ZWFycy12aWV3LmNvbXBvbmVudC5odG1sJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtOZ0ZvciwgSWd4Q2FsZW5kYXJZZWFyRGlyZWN0aXZlXVxufSlcbmV4cG9ydCBjbGFzcyBJZ3hZZWFyc1ZpZXdDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gICAgLyoqXG4gICAgICogR2V0cy9zZXRzIHdoZXRoZXIgdGhlIHZpZXcgc2hvdWxkIGJlIHJlbmRlcmVkXG4gICAgICogYWNjb3JkaW5nIHRvIHRoZSBsb2NhbGUgYW5kIHllYXJGb3JtYXQsIGlmIGFueS5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBmb3JtYXRWaWV3OiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICogRW1pdHMgYW4gZXZlbnQgd2hlbiBhIHNlbGVjdGlvbiBpcyBtYWRlIGluIHRoZSB5ZWFycyB2aWV3LlxuICAgICAqIFByb3ZpZGVzIHJlZmVyZW5jZSB0aGUgYGRhdGVgIHByb3BlcnR5IGluIHRoZSBgSWd4WWVhcnNWaWV3Q29tcG9uZW50YC5cbiAgICAgKiBgYGBodG1sXG4gICAgICogPGlneC15ZWFycy12aWV3IChzZWxlY3RlZCk9XCJvblNlbGVjdGlvbigkZXZlbnQpXCI+PC9pZ3gteWVhcnMtdmlldz5cbiAgICAgKiBgYGBcbiAgICAgKlxuICAgICAqIEBtZW1iZXJvZiBJZ3hZZWFyc1ZpZXdDb21wb25lbnRcbiAgICAgKi9cbiAgICBAT3V0cHV0KClcbiAgICBwdWJsaWMgc2VsZWN0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPERhdGU+KCk7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgZGVmYXVsdCBjc3MgY2xhc3MgYXBwbGllZCB0byB0aGUgY29tcG9uZW50LlxuICAgICAqXG4gICAgICogQGhpZGRlblxuICAgICAqL1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MuaWd4LWNhbGVuZGFyJylcbiAgICBwdWJsaWMgc3R5bGVDbGFzcyA9IHRydWU7XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogQGludGVybmFsXG4gICAgICovXG4gICAgQFZpZXdDaGlsZHJlbihJZ3hDYWxlbmRhclllYXJEaXJlY3RpdmUsIHsgcmVhZDogSWd4Q2FsZW5kYXJZZWFyRGlyZWN0aXZlIH0pXG4gICAgcHVibGljIGNhbGVuZGFyRGlyOiBRdWVyeUxpc3Q8SWd4Q2FsZW5kYXJZZWFyRGlyZWN0aXZlPjtcblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBwcml2YXRlIF9mb3JtYXR0ZXJZZWFyOiBhbnk7XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICovXG4gICAgcHJpdmF0ZSBfbG9jYWxlID0gJ2VuJztcblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBwcml2YXRlIF95ZWFyRm9ybWF0ID0gJ251bWVyaWMnO1xuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqL1xuICAgIHByaXZhdGUgX2NhbGVuZGFyTW9kZWw6IENhbGVuZGFyO1xuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBwcml2YXRlIF9kYXRlID0gbmV3IERhdGUoKTtcblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBwcml2YXRlIF9vblRvdWNoZWRDYWxsYmFjazogKCkgPT4gdm9pZCA9IG5vb3A7XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICovXG4gICAgcHJpdmF0ZSBfb25DaGFuZ2VDYWxsYmFjazogKF86IERhdGUpID0+IHZvaWQgPSBub29wO1xuXG4gICAgLyoqXG4gICAgICogR2V0cy9zZXRzIHRoZSBzZWxlY3RlZCBkYXRlIG9mIHRoZSB5ZWFycyB2aWV3LlxuICAgICAqIEJ5IGRlZmF1bHQgaXQgaXMgdGhlIGN1cnJlbnQgZGF0ZS5cbiAgICAgKiBgYGBodG1sXG4gICAgICogPGlneC15ZWFycy12aWV3IFtkYXRlXT1cIm15RGF0ZVwiPjwvaWd4LXllYXJzLXZpZXc+XG4gICAgICogYGBgXG4gICAgICogYGBgdHlwZXNjcmlwdFxuICAgICAqIGxldCBkYXRlID0gIHRoaXMueWVhcnNWaWV3LmRhdGU7XG4gICAgICogYGBgXG4gICAgICpcbiAgICAgKiBAbWVtYmVyb2YgSWd4WWVhcnNWaWV3Q29tcG9uZW50XG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgZ2V0IGRhdGUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9kYXRlO1xuICAgIH1cblxuICAgIHB1YmxpYyBzZXQgZGF0ZSh2YWx1ZTogRGF0ZSkge1xuICAgICAgICBpZiAoISh2YWx1ZSBpbnN0YW5jZW9mIERhdGUpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5fZGF0ZSA9IHZhbHVlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldHMgdGhlIHllYXIgZm9ybWF0IG9wdGlvbiBvZiB0aGUgeWVhcnMgdmlldy5cbiAgICAgKiBgYGB0eXBlc2NyaXB0XG4gICAgICogbGV0IHllYXJGb3JtYXQgPSB0aGlzLnllYXJzVmlldy55ZWFyRm9ybWF0LlxuICAgICAqIGBgYFxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGdldCB5ZWFyRm9ybWF0KCk6IGFueSB7XG4gICAgICAgIHJldHVybiB0aGlzLl95ZWFyRm9ybWF0O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNldHMgdGhlIHllYXIgZm9ybWF0IG9wdGlvbiBvZiB0aGUgeWVhcnMgdmlldy5cbiAgICAgKiBgYGBodG1sXG4gICAgICogPGlneC15ZWFycy12aWV3IFt5ZWFyRm9ybWF0XT1cIm51bWVyaWNcIj48L2lneC15ZWFycy12aWV3PlxuICAgICAqIGBgYFxuICAgICAqXG4gICAgICogQG1lbWJlcm9mIElneFllYXJzVmlld0NvbXBvbmVudFxuICAgICAqL1xuICAgIHB1YmxpYyBzZXQgeWVhckZvcm1hdCh2YWx1ZTogYW55KSB7XG4gICAgICAgIHRoaXMuX3llYXJGb3JtYXQgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy5pbml0WWVhckZvcm1hdHRlcigpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldHMgdGhlIGBsb2NhbGVgIG9mIHRoZSB5ZWFycyB2aWV3LlxuICAgICAqIERlZmF1bHQgdmFsdWUgaXMgYFwiZW5cImAuXG4gICAgICogYGBgdHlwZXNjcmlwdFxuICAgICAqIGxldCBsb2NhbGUgPSAgdGhpcy55ZWFyc1ZpZXcubG9jYWxlO1xuICAgICAqIGBgYFxuICAgICAqXG4gICAgICogQG1lbWJlcm9mIElneFllYXJzVmlld0NvbXBvbmVudFxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGdldCBsb2NhbGUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2xvY2FsZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZXRzIHRoZSBgbG9jYWxlYCBvZiB0aGUgeWVhcnMgdmlldy5cbiAgICAgKiBFeHBlY3RzIGEgdmFsaWQgQkNQIDQ3IGxhbmd1YWdlIHRhZy5cbiAgICAgKiBEZWZhdWx0IHZhbHVlIGlzIGBcImVuXCJgLlxuICAgICAqIGBgYGh0bWxcbiAgICAgKiA8aWd4LXllYXJzLXZpZXcgW2xvY2FsZV09XCJkZVwiPjwvaWd4LXllYXJzLXZpZXc+XG4gICAgICogYGBgXG4gICAgICpcbiAgICAgKiBAbWVtYmVyb2YgSWd4WWVhcnNWaWV3Q29tcG9uZW50XG4gICAgICovXG4gICAgcHVibGljIHNldCBsb2NhbGUodmFsdWU6IHN0cmluZykge1xuICAgICAgICB0aGlzLl9sb2NhbGUgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy5pbml0WWVhckZvcm1hdHRlcigpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgYW4gYXJyYXkgb2YgZGF0ZSBvYmplY3RzIHdoaWNoIGFyZSB0aGVuIHVzZWQgdG8gcHJvcGVybHlcbiAgICAgKiByZW5kZXIgdGhlIHllYXJzLlxuICAgICAqXG4gICAgICogVXNlZCBpbiB0aGUgdGVtcGxhdGUgb2YgdGhlIGNvbXBvbmVudC5cbiAgICAgKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0IGRlY2FkZSgpIHtcbiAgICAgICAgY29uc3QgcmVzdWx0OiBEYXRlW10gPSBbXTtcbiAgICAgICAgY29uc3Qgc3RhcnQgPSB0aGlzLmRhdGUuZ2V0RnVsbFllYXIoKSAtIDM7XG4gICAgICAgIGNvbnN0IGVuZCA9IHRoaXMuZGF0ZS5nZXRGdWxsWWVhcigpICsgNDtcblxuICAgICAgICBmb3IgKGNvbnN0IHllYXIgb2YgcmFuZ2Uoc3RhcnQsIGVuZCkpIHtcbiAgICAgICAgICAgIHJlc3VsdC5wdXNoKG5ldyBEYXRlKHllYXIsIHRoaXMuZGF0ZS5nZXRNb250aCgpLCB0aGlzLmRhdGUuZ2V0RGF0ZSgpKSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKHB1YmxpYyBlbDogRWxlbWVudFJlZikge1xuICAgICAgICB0aGlzLmluaXRZZWFyRm9ybWF0dGVyKCk7XG4gICAgICAgIHRoaXMuX2NhbGVuZGFyTW9kZWwgPSBuZXcgQ2FsZW5kYXIoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICovXG4gICAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bi5hcnJvd2Rvd24nLCBbJyRldmVudCddKVxuICAgIHB1YmxpYyBvbktleWRvd25BcnJvd0Rvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG5cbiAgICAgICAgdGhpcy5nZW5lcmF0ZVllYXJSYW5nZSgxKTtcbiAgICAgICAgdGhpcy5jYWxlbmRhckRpci5maW5kKGRhdGUgPT4gZGF0ZS5pc0N1cnJlbnRZZWFyKS5uYXRpdmVFbGVtZW50Lm5leHRFbGVtZW50U2libGluZy5mb2N1cygpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBASG9zdExpc3RlbmVyKCdrZXlkb3duLmFycm93dXAnLCBbJyRldmVudCddKVxuICAgIHB1YmxpYyBvbktleWRvd25BcnJvd1VwKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgICAgIHRoaXMuZ2VuZXJhdGVZZWFyUmFuZ2UoLTEpO1xuICAgICAgICB0aGlzLmNhbGVuZGFyRGlyLmZpbmQoZGF0ZSA9PiBkYXRlLmlzQ3VycmVudFllYXIpLm5hdGl2ZUVsZW1lbnQucHJldmlvdXNFbGVtZW50U2libGluZy5mb2N1cygpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBASG9zdExpc3RlbmVyKCdrZXlkb3duLmVudGVyJylcbiAgICBwdWJsaWMgb25LZXlkb3duRW50ZXIoKSB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWQuZW1pdCh0aGlzLmRhdGUpO1xuICAgICAgICB0aGlzLl9vbkNoYW5nZUNhbGxiYWNrKHRoaXMuZGF0ZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyB0aGUgbG9jYWxlIHJlcHJlc2VudGF0aW9uIG9mIHRoZSB5ZWFyIGluIHRoZSB5ZWFycyB2aWV3LlxuICAgICAqXG4gICAgICogQGhpZGRlblxuICAgICAqL1xuICAgIHB1YmxpYyBmb3JtYXR0ZWRZZWFyKHZhbHVlOiBEYXRlKTogc3RyaW5nIHtcbiAgICAgICAgaWYgKHRoaXMuZm9ybWF0Vmlldykge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuX2Zvcm1hdHRlclllYXIuZm9ybWF0KHZhbHVlKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gYCR7dmFsdWUuZ2V0RnVsbFllYXIoKX1gO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBwdWJsaWMgc2VsZWN0WWVhcihldmVudCkge1xuICAgICAgICB0aGlzLmRhdGUgPSBldmVudDtcblxuICAgICAgICB0aGlzLnNlbGVjdGVkLmVtaXQodGhpcy5kYXRlKTtcbiAgICAgICAgdGhpcy5fb25DaGFuZ2VDYWxsYmFjayh0aGlzLmRhdGUpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBwdWJsaWMgc2Nyb2xsKGV2ZW50KSB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgICAgIGNvbnN0IGRlbHRhID0gZXZlbnQuZGVsdGFZIDwgMCA/IC0xIDogMTtcbiAgICAgICAgdGhpcy5nZW5lcmF0ZVllYXJSYW5nZShkZWx0YSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqL1xuICAgIHB1YmxpYyBwYW4oZXZlbnQpIHtcbiAgICAgICAgY29uc3QgZGVsdGEgPSBldmVudC5kZWx0YVkgPCAwID8gMSA6IC0xO1xuICAgICAgICB0aGlzLmdlbmVyYXRlWWVhclJhbmdlKGRlbHRhKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICovXG4gICAgcHVibGljIHJlZ2lzdGVyT25DaGFuZ2UoZm46ICh2OiBEYXRlKSA9PiB2b2lkKSB7XG4gICAgICAgIHRoaXMuX29uQ2hhbmdlQ2FsbGJhY2sgPSBmbjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICovXG4gICAgcHVibGljIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiAoKSA9PiB2b2lkKSB7XG4gICAgICAgIHRoaXMuX29uVG91Y2hlZENhbGxiYWNrID0gZm47XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqL1xuICAgIHB1YmxpYyB5ZWFyVHJhY2tlcihpbmRleCwgaXRlbSk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBgJHtpdGVtLmdldEZ1bGxZZWFyKCl9fWA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqL1xuICAgIHB1YmxpYyB3cml0ZVZhbHVlKHZhbHVlOiBEYXRlKSB7XG4gICAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5kYXRlID0gdmFsdWU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICovXG4gICAgcHJpdmF0ZSBpbml0WWVhckZvcm1hdHRlcigpIHtcbiAgICAgICAgdGhpcy5fZm9ybWF0dGVyWWVhciA9IG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KHRoaXMuX2xvY2FsZSwgeyB5ZWFyOiB0aGlzLnllYXJGb3JtYXQgfSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqL1xuICAgIHByaXZhdGUgZ2VuZXJhdGVZZWFyUmFuZ2UoZGVsdGE6IG51bWJlcikge1xuICAgICAgICBjb25zdCBjdXJyZW50WWVhciA9IG5ldyBEYXRlKCkuZ2V0RnVsbFllYXIoKTtcblxuICAgICAgICBpZiAoKGRlbHRhID4gMCAmJiB0aGlzLmRhdGUuZ2V0RnVsbFllYXIoKSAtIGN1cnJlbnRZZWFyID49IDk1KSB8fFxuICAgICAgICAgICAgKGRlbHRhIDwgMCAmJiBjdXJyZW50WWVhciAtIHRoaXMuZGF0ZS5nZXRGdWxsWWVhcigpID49IDk1KSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuZGF0ZSA9IHRoaXMuX2NhbGVuZGFyTW9kZWwudGltZWRlbHRhKHRoaXMuZGF0ZSwgJ3llYXInLCBkZWx0YSk7XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImlneC1jYWxlbmRhcl9fYm9keVwiPlxuICAgIDxkaXYgY2xhc3M9XCJpZ3gtY2FsZW5kYXJfX2JvZHktY29sdW1uXCIgKHdoZWVsKT1cInNjcm9sbCgkZXZlbnQpXCIgKHBhbik9XCJwYW4oJGV2ZW50KVwiPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImlneC1jYWxlbmRhcl9feWVhclwiXG4gICAgICAgICAgICBbaWd4Q2FsZW5kYXJZZWFyXT1cInllYXJcIlxuICAgICAgICAgICAgW2RhdGVdPVwiZGF0ZVwiXG4gICAgICAgICAgICAoeWVhclNlbGVjdGlvbik9XCJzZWxlY3RZZWFyKCRldmVudClcIlxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IHllYXIgb2YgZGVjYWRlOyB0cmFja0J5OiB5ZWFyVHJhY2tlclwiPlxuXG4gICAgICAgICAgICB7eyBmb3JtYXR0ZWRZZWFyKHllYXIpIH19XG4gICAgICAgIDwvc3Bhbj5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
304
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWVhcnMtdmlldy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pZ25pdGV1aS1hbmd1bGFyL3NyYy9saWIvY2FsZW5kYXIveWVhcnMtdmlldy95ZWFycy12aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2lnbml0ZXVpLWFuZ3VsYXIvc3JjL2xpYi9jYWxlbmRhci95ZWFycy12aWV3L3llYXJzLXZpZXcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFDVCxNQUFNLEVBQ04sWUFBWSxFQUNaLEtBQUssRUFDTCxXQUFXLEVBQ1gsWUFBWSxFQUVaLFVBQVUsRUFDVixZQUFZLEVBRWYsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDOUMsT0FBTyxFQUFFLGlCQUFpQixFQUF3QixNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3ZGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDNUIsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQUd4QyxNQUFNLE9BQU8sb0JBQXFCLFNBQVEsbUJBQW1CO0lBRDdEOztRQUVvQixjQUFTLEdBQUc7WUFDeEIsR0FBRyxFQUFFLEVBQUUsU0FBUyxFQUFFLE1BQU0sQ0FBQyxrQkFBa0IsRUFBRSxTQUFTLEVBQUUsQ0FBQyxFQUFFO1NBQzlELENBQUM7S0FDTDs4R0FKWSxvQkFBb0I7a0hBQXBCLG9CQUFvQjs7MkZBQXBCLG9CQUFvQjtrQkFEaEMsVUFBVTs7QUF3QlgsTUFBTSxPQUFPLHFCQUFxQjtJQXFFOUI7Ozs7Ozs7Ozs7O09BV0c7SUFDSCxJQUNXLElBQUk7UUFDWCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDdEIsQ0FBQztJQUVELElBQVcsSUFBSSxDQUFDLEtBQVc7UUFDdkIsSUFBSSxDQUFDLENBQUMsS0FBSyxZQUFZLElBQUksQ0FBQyxFQUFFO1lBQzFCLE9BQU87U0FDVjtRQUNELElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQ3ZCLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILElBQ1csVUFBVTtRQUNqQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDNUIsQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDSCxJQUFXLFVBQVUsQ0FBQyxLQUFVO1FBQzVCLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNILElBQ1csTUFBTTtRQUNiLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN4QixDQUFDO0lBRUQ7Ozs7Ozs7OztPQVNHO0lBQ0gsSUFBVyxNQUFNLENBQUMsS0FBYTtRQUMzQixJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztRQUNyQixJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNILElBQVcsTUFBTTtRQUNiLE1BQU0sTUFBTSxHQUFXLEVBQUUsQ0FBQztRQUMxQixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUMxQyxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUV4QyxLQUFLLE1BQU0sSUFBSSxJQUFJLEtBQUssQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLEVBQUU7WUFDbEMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQztTQUMxRTtRQUVELE9BQU8sTUFBTSxDQUFDO0lBQ2xCLENBQUM7SUFFRCxZQUFtQixFQUFjO1FBQWQsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQTlKakM7Ozs7Ozs7O1dBUUc7UUFFSSxhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUUzQzs7OztXQUlHO1FBRUksZUFBVSxHQUFHLElBQUksQ0FBQztRQWN6Qjs7V0FFRztRQUNLLFlBQU8sR0FBRyxJQUFJLENBQUM7UUFFdkI7O1dBRUc7UUFDSyxnQkFBVyxHQUFHLFNBQVMsQ0FBQztRQU1oQzs7V0FFRztRQUNLLFVBQUssR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1FBRTNCOztXQUVHO1FBQ0ssdUJBQWtCLEdBQWUsSUFBSSxDQUFDO1FBRTlDOztXQUVHO1FBQ0ssc0JBQWlCLEdBQXNCLElBQUksQ0FBQztRQW9HaEQsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDekIsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLFFBQVEsRUFBRSxDQUFDO0lBQ3pDLENBQUM7SUFFRDs7T0FFRztJQUVJLGtCQUFrQixDQUFDLEtBQW9CO1FBQzFDLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN2QixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7UUFFeEIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzFCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUMvRixDQUFDO0lBRUQ7O09BRUc7SUFFSSxnQkFBZ0IsQ0FBQyxLQUFvQjtRQUN4QyxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBRXhCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzNCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxzQkFBc0IsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNuRyxDQUFDO0lBRUQ7O09BRUc7SUFFSSxjQUFjO1FBQ2pCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM5QixJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksYUFBYSxDQUFDLEtBQVc7UUFDNUIsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ2pCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDNUM7UUFDRCxPQUFPLEdBQUcsS0FBSyxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksVUFBVSxDQUFDLEtBQUs7UUFDbkIsSUFBSSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUM7UUFFbEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzlCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLEtBQUs7UUFDZixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBRXhCLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3hDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxHQUFHLENBQUMsS0FBSztRQUNaLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3hDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxnQkFBZ0IsQ0FBQyxFQUFxQjtRQUN6QyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFFRDs7T0FFRztJQUNJLGlCQUFpQixDQUFDLEVBQWM7UUFDbkMsSUFBSSxDQUFDLGtCQUFrQixHQUFHLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxXQUFXLENBQUMsS0FBSyxFQUFFLElBQUk7UUFDMUIsT0FBTyxHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsR0FBRyxDQUFDO0lBQ3BDLENBQUM7SUFFRDs7T0FFRztJQUNJLFVBQVUsQ0FBQyxLQUFXO1FBQ3pCLElBQUksS0FBSyxFQUFFO1lBQ1AsSUFBSSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUM7U0FDckI7SUFDTCxDQUFDO0lBRUQ7O09BRUc7SUFDSyxpQkFBaUI7UUFDckIsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztJQUMzRixDQUFDO0lBRUQ7O09BRUc7SUFDSyxpQkFBaUIsQ0FBQyxLQUFhO1FBQ25DLE1BQU0sV0FBVyxHQUFHLElBQUksSUFBSSxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7UUFFN0MsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsR0FBRyxXQUFXLElBQUksRUFBRSxDQUFDO1lBQzFELENBQUMsS0FBSyxHQUFHLENBQUMsSUFBSSxXQUFXLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRTtZQUM1RCxPQUFPO1NBQ1Y7UUFDRCxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3hFLENBQUM7OEdBclNRLHFCQUFxQjtrR0FBckIscUJBQXFCLHlaQWhCbkI7WUFDUDtnQkFDSSxPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixXQUFXLEVBQUUscUJBQXFCO2dCQUNsQyxLQUFLLEVBQUUsSUFBSTthQUNkO1lBQ0Q7Z0JBQ0ksT0FBTyxFQUFFLHFCQUFxQjtnQkFDOUIsUUFBUSxFQUFFLG9CQUFvQjthQUNqQztTQUNKLDBEQXNDYSx3QkFBd0IsMkJBQVUsd0JBQXdCLDZCQzNFNUUsMmJBWUEsNENENkJjLEtBQUssbUhBQUUsd0JBQXdCOzsyRkFFaEMscUJBQXFCO2tCQWpCakMsU0FBUztnQ0FDSzt3QkFDUDs0QkFDSSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLHVCQUF1Qjs0QkFDbEMsS0FBSyxFQUFFLElBQUk7eUJBQ2Q7d0JBQ0Q7NEJBQ0ksT0FBTyxFQUFFLHFCQUFxQjs0QkFDOUIsUUFBUSxFQUFFLG9CQUFvQjt5QkFDakM7cUJBQ0osWUFDUyxnQkFBZ0IsY0FFZCxJQUFJLFdBQ1AsQ0FBQyxLQUFLLEVBQUUsd0JBQXdCLENBQUM7aUdBUW5DLFVBQVU7c0JBRGhCLEtBQUs7Z0JBYUMsUUFBUTtzQkFEZCxNQUFNO2dCQVNBLFVBQVU7c0JBRGhCLFdBQVc7dUJBQUMsb0JBQW9CO2dCQVExQixXQUFXO3NCQURqQixZQUFZO3VCQUFDLHdCQUF3QixFQUFFLEVBQUUsSUFBSSxFQUFFLHdCQUF3QixFQUFFO2dCQWtEL0QsSUFBSTtzQkFEZCxLQUFLO2dCQW1CSyxVQUFVO3NCQURwQixLQUFLO2dCQTRCSyxNQUFNO3NCQURoQixLQUFLO2dCQWlEQyxrQkFBa0I7c0JBRHhCLFlBQVk7dUJBQUMsbUJBQW1CLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBYXRDLGdCQUFnQjtzQkFEdEIsWUFBWTt1QkFBQyxpQkFBaUIsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFhcEMsY0FBYztzQkFEcEIsWUFBWTt1QkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDb21wb25lbnQsXG4gICAgT3V0cHV0LFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBJbnB1dCxcbiAgICBIb3N0QmluZGluZyxcbiAgICBIb3N0TGlzdGVuZXIsXG4gICAgRWxlbWVudFJlZixcbiAgICBJbmplY3RhYmxlLFxuICAgIFZpZXdDaGlsZHJlbixcbiAgICBRdWVyeUxpc3Rcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyByYW5nZSwgQ2FsZW5kYXIgfSBmcm9tICcuLi9jYWxlbmRhcic7XG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiwgQ29udHJvbFZhbHVlQWNjZXNzb3IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBIYW1tZXJHZXN0dXJlQ29uZmlnLCBIQU1NRVJfR0VTVFVSRV9DT05GSUcgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7IElneENhbGVuZGFyWWVhckRpcmVjdGl2ZSB9IGZyb20gJy4uL2NhbGVuZGFyLmRpcmVjdGl2ZXMnO1xuaW1wb3J0IHsgbm9vcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgTmdGb3IgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQ2FsZW5kYXJIYW1tZXJDb25maWcgZXh0ZW5kcyBIYW1tZXJHZXN0dXJlQ29uZmlnIHtcbiAgICBwdWJsaWMgb3ZlcnJpZGUgb3ZlcnJpZGVzID0ge1xuICAgICAgICBwYW46IHsgZGlyZWN0aW9uOiBIYW1tZXIuRElSRUNUSU9OX1ZFUlRJQ0FMLCB0aHJlc2hvbGQ6IDEgfVxuICAgIH07XG59XG5cbkBDb21wb25lbnQoe1xuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBJZ3hZZWFyc1ZpZXdDb21wb25lbnQsXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZVxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBIQU1NRVJfR0VTVFVSRV9DT05GSUcsXG4gICAgICAgICAgICB1c2VDbGFzczogQ2FsZW5kYXJIYW1tZXJDb25maWdcbiAgICAgICAgfVxuICAgIF0sXG4gICAgc2VsZWN0b3I6ICdpZ3gteWVhcnMtdmlldycsXG4gICAgdGVtcGxhdGVVcmw6ICd5ZWFycy12aWV3LmNvbXBvbmVudC5odG1sJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtOZ0ZvciwgSWd4Q2FsZW5kYXJZZWFyRGlyZWN0aXZlXVxufSlcbmV4cG9ydCBjbGFzcyBJZ3hZZWFyc1ZpZXdDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gICAgLyoqXG4gICAgICogR2V0cy9zZXRzIHdoZXRoZXIgdGhlIHZpZXcgc2hvdWxkIGJlIHJlbmRlcmVkXG4gICAgICogYWNjb3JkaW5nIHRvIHRoZSBsb2NhbGUgYW5kIHllYXJGb3JtYXQsIGlmIGFueS5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBmb3JtYXRWaWV3OiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICogRW1pdHMgYW4gZXZlbnQgd2hlbiBhIHNlbGVjdGlvbiBpcyBtYWRlIGluIHRoZSB5ZWFycyB2aWV3LlxuICAgICAqIFByb3ZpZGVzIHJlZmVyZW5jZSB0aGUgYGRhdGVgIHByb3BlcnR5IGluIHRoZSBgSWd4WWVhcnNWaWV3Q29tcG9uZW50YC5cbiAgICAgKiBgYGBodG1sXG4gICAgICogPGlneC15ZWFycy12aWV3IChzZWxlY3RlZCk9XCJvblNlbGVjdGlvbigkZXZlbnQpXCI+PC9pZ3gteWVhcnMtdmlldz5cbiAgICAgKiBgYGBcbiAgICAgKlxuICAgICAqIEBtZW1iZXJvZiBJZ3hZZWFyc1ZpZXdDb21wb25lbnRcbiAgICAgKi9cbiAgICBAT3V0cHV0KClcbiAgICBwdWJsaWMgc2VsZWN0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPERhdGU+KCk7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgZGVmYXVsdCBjc3MgY2xhc3MgYXBwbGllZCB0byB0aGUgY29tcG9uZW50LlxuICAgICAqXG4gICAgICogQGhpZGRlblxuICAgICAqL1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MuaWd4LWNhbGVuZGFyJylcbiAgICBwdWJsaWMgc3R5bGVDbGFzcyA9IHRydWU7XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogQGludGVybmFsXG4gICAgICovXG4gICAgQFZpZXdDaGlsZHJlbihJZ3hDYWxlbmRhclllYXJEaXJlY3RpdmUsIHsgcmVhZDogSWd4Q2FsZW5kYXJZZWFyRGlyZWN0aXZlIH0pXG4gICAgcHVibGljIGNhbGVuZGFyRGlyOiBRdWVyeUxpc3Q8SWd4Q2FsZW5kYXJZZWFyRGlyZWN0aXZlPjtcblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBwcml2YXRlIF9mb3JtYXR0ZXJZZWFyOiBhbnk7XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICovXG4gICAgcHJpdmF0ZSBfbG9jYWxlID0gJ2VuJztcblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBwcml2YXRlIF95ZWFyRm9ybWF0ID0gJ251bWVyaWMnO1xuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqL1xuICAgIHByaXZhdGUgX2NhbGVuZGFyTW9kZWw6IENhbGVuZGFyO1xuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBwcml2YXRlIF9kYXRlID0gbmV3IERhdGUoKTtcblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBwcml2YXRlIF9vblRvdWNoZWRDYWxsYmFjazogKCkgPT4gdm9pZCA9IG5vb3A7XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICovXG4gICAgcHJpdmF0ZSBfb25DaGFuZ2VDYWxsYmFjazogKF86IERhdGUpID0+IHZvaWQgPSBub29wO1xuXG4gICAgLyoqXG4gICAgICogR2V0cy9zZXRzIHRoZSBzZWxlY3RlZCBkYXRlIG9mIHRoZSB5ZWFycyB2aWV3LlxuICAgICAqIEJ5IGRlZmF1bHQgaXQgaXMgdGhlIGN1cnJlbnQgZGF0ZS5cbiAgICAgKiBgYGBodG1sXG4gICAgICogPGlneC15ZWFycy12aWV3IFtkYXRlXT1cIm15RGF0ZVwiPjwvaWd4LXllYXJzLXZpZXc+XG4gICAgICogYGBgXG4gICAgICogYGBgdHlwZXNjcmlwdFxuICAgICAqIGxldCBkYXRlID0gIHRoaXMueWVhcnNWaWV3LmRhdGU7XG4gICAgICogYGBgXG4gICAgICpcbiAgICAgKiBAbWVtYmVyb2YgSWd4WWVhcnNWaWV3Q29tcG9uZW50XG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgZ2V0IGRhdGUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9kYXRlO1xuICAgIH1cblxuICAgIHB1YmxpYyBzZXQgZGF0ZSh2YWx1ZTogRGF0ZSkge1xuICAgICAgICBpZiAoISh2YWx1ZSBpbnN0YW5jZW9mIERhdGUpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5fZGF0ZSA9IHZhbHVlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldHMgdGhlIHllYXIgZm9ybWF0IG9wdGlvbiBvZiB0aGUgeWVhcnMgdmlldy5cbiAgICAgKiBgYGB0eXBlc2NyaXB0XG4gICAgICogbGV0IHllYXJGb3JtYXQgPSB0aGlzLnllYXJzVmlldy55ZWFyRm9ybWF0LlxuICAgICAqIGBgYFxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGdldCB5ZWFyRm9ybWF0KCk6IGFueSB7XG4gICAgICAgIHJldHVybiB0aGlzLl95ZWFyRm9ybWF0O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNldHMgdGhlIHllYXIgZm9ybWF0IG9wdGlvbiBvZiB0aGUgeWVhcnMgdmlldy5cbiAgICAgKiBgYGBodG1sXG4gICAgICogPGlneC15ZWFycy12aWV3IFt5ZWFyRm9ybWF0XT1cIm51bWVyaWNcIj48L2lneC15ZWFycy12aWV3PlxuICAgICAqIGBgYFxuICAgICAqXG4gICAgICogQG1lbWJlcm9mIElneFllYXJzVmlld0NvbXBvbmVudFxuICAgICAqL1xuICAgIHB1YmxpYyBzZXQgeWVhckZvcm1hdCh2YWx1ZTogYW55KSB7XG4gICAgICAgIHRoaXMuX3llYXJGb3JtYXQgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy5pbml0WWVhckZvcm1hdHRlcigpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldHMgdGhlIGBsb2NhbGVgIG9mIHRoZSB5ZWFycyB2aWV3LlxuICAgICAqIERlZmF1bHQgdmFsdWUgaXMgYFwiZW5cImAuXG4gICAgICogYGBgdHlwZXNjcmlwdFxuICAgICAqIGxldCBsb2NhbGUgPSAgdGhpcy55ZWFyc1ZpZXcubG9jYWxlO1xuICAgICAqIGBgYFxuICAgICAqXG4gICAgICogQG1lbWJlcm9mIElneFllYXJzVmlld0NvbXBvbmVudFxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGdldCBsb2NhbGUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2xvY2FsZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZXRzIHRoZSBgbG9jYWxlYCBvZiB0aGUgeWVhcnMgdmlldy5cbiAgICAgKiBFeHBlY3RzIGEgdmFsaWQgQkNQIDQ3IGxhbmd1YWdlIHRhZy5cbiAgICAgKiBEZWZhdWx0IHZhbHVlIGlzIGBcImVuXCJgLlxuICAgICAqIGBgYGh0bWxcbiAgICAgKiA8aWd4LXllYXJzLXZpZXcgW2xvY2FsZV09XCJkZVwiPjwvaWd4LXllYXJzLXZpZXc+XG4gICAgICogYGBgXG4gICAgICpcbiAgICAgKiBAbWVtYmVyb2YgSWd4WWVhcnNWaWV3Q29tcG9uZW50XG4gICAgICovXG4gICAgcHVibGljIHNldCBsb2NhbGUodmFsdWU6IHN0cmluZykge1xuICAgICAgICB0aGlzLl9sb2NhbGUgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy5pbml0WWVhckZvcm1hdHRlcigpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgYW4gYXJyYXkgb2YgZGF0ZSBvYmplY3RzIHdoaWNoIGFyZSB0aGVuIHVzZWQgdG8gcHJvcGVybHlcbiAgICAgKiByZW5kZXIgdGhlIHllYXJzLlxuICAgICAqXG4gICAgICogVXNlZCBpbiB0aGUgdGVtcGxhdGUgb2YgdGhlIGNvbXBvbmVudC5cbiAgICAgKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0IGRlY2FkZSgpIHtcbiAgICAgICAgY29uc3QgcmVzdWx0OiBEYXRlW10gPSBbXTtcbiAgICAgICAgY29uc3Qgc3RhcnQgPSB0aGlzLmRhdGUuZ2V0RnVsbFllYXIoKSAtIDM7XG4gICAgICAgIGNvbnN0IGVuZCA9IHRoaXMuZGF0ZS5nZXRGdWxsWWVhcigpICsgNDtcblxuICAgICAgICBmb3IgKGNvbnN0IHllYXIgb2YgcmFuZ2Uoc3RhcnQsIGVuZCkpIHtcbiAgICAgICAgICAgIHJlc3VsdC5wdXNoKG5ldyBEYXRlKHllYXIsIHRoaXMuZGF0ZS5nZXRNb250aCgpLCB0aGlzLmRhdGUuZ2V0RGF0ZSgpKSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKHB1YmxpYyBlbDogRWxlbWVudFJlZikge1xuICAgICAgICB0aGlzLmluaXRZZWFyRm9ybWF0dGVyKCk7XG4gICAgICAgIHRoaXMuX2NhbGVuZGFyTW9kZWwgPSBuZXcgQ2FsZW5kYXIoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICovXG4gICAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bi5hcnJvd2Rvd24nLCBbJyRldmVudCddKVxuICAgIHB1YmxpYyBvbktleWRvd25BcnJvd0Rvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG5cbiAgICAgICAgdGhpcy5nZW5lcmF0ZVllYXJSYW5nZSgxKTtcbiAgICAgICAgdGhpcy5jYWxlbmRhckRpci5maW5kKGRhdGUgPT4gZGF0ZS5pc0N1cnJlbnRZZWFyKS5uYXRpdmVFbGVtZW50Lm5leHRFbGVtZW50U2libGluZy5mb2N1cygpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBASG9zdExpc3RlbmVyKCdrZXlkb3duLmFycm93dXAnLCBbJyRldmVudCddKVxuICAgIHB1YmxpYyBvbktleWRvd25BcnJvd1VwKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgICAgIHRoaXMuZ2VuZXJhdGVZZWFyUmFuZ2UoLTEpO1xuICAgICAgICB0aGlzLmNhbGVuZGFyRGlyLmZpbmQoZGF0ZSA9PiBkYXRlLmlzQ3VycmVudFllYXIpLm5hdGl2ZUVsZW1lbnQucHJldmlvdXNFbGVtZW50U2libGluZy5mb2N1cygpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBASG9zdExpc3RlbmVyKCdrZXlkb3duLmVudGVyJylcbiAgICBwdWJsaWMgb25LZXlkb3duRW50ZXIoKSB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWQuZW1pdCh0aGlzLmRhdGUpO1xuICAgICAgICB0aGlzLl9vbkNoYW5nZUNhbGxiYWNrKHRoaXMuZGF0ZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyB0aGUgbG9jYWxlIHJlcHJlc2VudGF0aW9uIG9mIHRoZSB5ZWFyIGluIHRoZSB5ZWFycyB2aWV3LlxuICAgICAqXG4gICAgICogQGhpZGRlblxuICAgICAqL1xuICAgIHB1YmxpYyBmb3JtYXR0ZWRZZWFyKHZhbHVlOiBEYXRlKTogc3RyaW5nIHtcbiAgICAgICAgaWYgKHRoaXMuZm9ybWF0Vmlldykge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuX2Zvcm1hdHRlclllYXIuZm9ybWF0KHZhbHVlKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gYCR7dmFsdWUuZ2V0RnVsbFllYXIoKX1gO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBwdWJsaWMgc2VsZWN0WWVhcihldmVudCkge1xuICAgICAgICB0aGlzLmRhdGUgPSBldmVudDtcblxuICAgICAgICB0aGlzLnNlbGVjdGVkLmVtaXQodGhpcy5kYXRlKTtcbiAgICAgICAgdGhpcy5fb25DaGFuZ2VDYWxsYmFjayh0aGlzLmRhdGUpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBwdWJsaWMgc2Nyb2xsKGV2ZW50KSB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgICAgIGNvbnN0IGRlbHRhID0gZXZlbnQuZGVsdGFZIDwgMCA/IC0xIDogMTtcbiAgICAgICAgdGhpcy5nZW5lcmF0ZVllYXJSYW5nZShkZWx0YSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqL1xuICAgIHB1YmxpYyBwYW4oZXZlbnQpIHtcbiAgICAgICAgY29uc3QgZGVsdGEgPSBldmVudC5kZWx0YVkgPCAwID8gMSA6IC0xO1xuICAgICAgICB0aGlzLmdlbmVyYXRlWWVhclJhbmdlKGRlbHRhKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICovXG4gICAgcHVibGljIHJlZ2lzdGVyT25DaGFuZ2UoZm46ICh2OiBEYXRlKSA9PiB2b2lkKSB7XG4gICAgICAgIHRoaXMuX29uQ2hhbmdlQ2FsbGJhY2sgPSBmbjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICovXG4gICAgcHVibGljIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiAoKSA9PiB2b2lkKSB7XG4gICAgICAgIHRoaXMuX29uVG91Y2hlZENhbGxiYWNrID0gZm47XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqL1xuICAgIHB1YmxpYyB5ZWFyVHJhY2tlcihpbmRleCwgaXRlbSk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBgJHtpdGVtLmdldEZ1bGxZZWFyKCl9fWA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqL1xuICAgIHB1YmxpYyB3cml0ZVZhbHVlKHZhbHVlOiBEYXRlKSB7XG4gICAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5kYXRlID0gdmFsdWU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICovXG4gICAgcHJpdmF0ZSBpbml0WWVhckZvcm1hdHRlcigpIHtcbiAgICAgICAgdGhpcy5fZm9ybWF0dGVyWWVhciA9IG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KHRoaXMuX2xvY2FsZSwgeyB5ZWFyOiB0aGlzLnllYXJGb3JtYXQgfSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqL1xuICAgIHByaXZhdGUgZ2VuZXJhdGVZZWFyUmFuZ2UoZGVsdGE6IG51bWJlcikge1xuICAgICAgICBjb25zdCBjdXJyZW50WWVhciA9IG5ldyBEYXRlKCkuZ2V0RnVsbFllYXIoKTtcblxuICAgICAgICBpZiAoKGRlbHRhID4gMCAmJiB0aGlzLmRhdGUuZ2V0RnVsbFllYXIoKSAtIGN1cnJlbnRZZWFyID49IDk1KSB8fFxuICAgICAgICAgICAgKGRlbHRhIDwgMCAmJiBjdXJyZW50WWVhciAtIHRoaXMuZGF0ZS5nZXRGdWxsWWVhcigpID49IDk1KSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuZGF0ZSA9IHRoaXMuX2NhbGVuZGFyTW9kZWwudGltZWRlbHRhKHRoaXMuZGF0ZSwgJ3llYXInLCBkZWx0YSk7XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImlneC1jYWxlbmRhcl9fYm9keVwiPlxuICAgIDxkaXYgY2xhc3M9XCJpZ3gtY2FsZW5kYXJfX2JvZHktY29sdW1uXCIgKHdoZWVsKT1cInNjcm9sbCgkZXZlbnQpXCIgKHBhbik9XCJwYW4oJGV2ZW50KVwiPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImlneC1jYWxlbmRhcl9feWVhclwiXG4gICAgICAgICAgICBbaWd4Q2FsZW5kYXJZZWFyXT1cInllYXJcIlxuICAgICAgICAgICAgW2RhdGVdPVwiZGF0ZVwiXG4gICAgICAgICAgICAoeWVhclNlbGVjdGlvbik9XCJzZWxlY3RZZWFyKCRldmVudClcIlxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IHllYXIgb2YgZGVjYWRlOyB0cmFja0J5OiB5ZWFyVHJhY2tlclwiPlxuXG4gICAgICAgICAgICB7eyBmb3JtYXR0ZWRZZWFyKHllYXIpIH19XG4gICAgICAgIDwvc3Bhbj5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -35,10 +35,10 @@ export class IgxCardMediaDirective {
|
|
|
35
35
|
*/
|
|
36
36
|
this.role = 'img';
|
|
37
37
|
}
|
|
38
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0
|
|
39
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0
|
|
38
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: IgxCardMediaDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
39
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0", type: IgxCardMediaDirective, isStandalone: true, selector: "igx-card-media", inputs: { width: "width", height: "height", role: "role" }, host: { properties: { "class.igx-card__media": "this.cssClass", "style.width": "this.width", "style.min-width": "this.width", "style.height": "this.height", "attr.role": "this.role" } }, ngImport: i0 }); }
|
|
40
40
|
}
|
|
41
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0
|
|
41
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: IgxCardMediaDirective, decorators: [{
|
|
42
42
|
type: Directive,
|
|
43
43
|
args: [{
|
|
44
44
|
// eslint-disable-next-line @angular-eslint/directive-selector
|
|
@@ -85,10 +85,10 @@ export class IgxCardHeaderComponent {
|
|
|
85
85
|
*/
|
|
86
86
|
this.vertical = false;
|
|
87
87
|
}
|
|
88
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0
|
|
89
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0
|
|
88
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: IgxCardHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
89
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: IgxCardHeaderComponent, isStandalone: true, selector: "igx-card-header", inputs: { vertical: "vertical" }, host: { properties: { "class.igx-card-header": "this.cssClass", "class.igx-card-header--vertical": "this.vertical" } }, ngImport: i0, template: "<div class=\"igx-card-header__thumbnail\">\n <ng-content select=\"igx-avatar, igx-card-media, [igxCardThumbnail]\"></ng-content>\n</div>\n\n<div class=\"igx-card-header__titles\">\n <ng-content select=\"\n [igxCardHeaderTitle],\n [igxCardHeaderSubtitle],\n .igx-card-header__title,\n .igx-card-header__subtitle\">\n </ng-content>\n</div>\n\n<ng-content></ng-content>\n" }); }
|
|
90
90
|
}
|
|
91
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0
|
|
91
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: IgxCardHeaderComponent, decorators: [{
|
|
92
92
|
type: Component,
|
|
93
93
|
args: [{ selector: 'igx-card-header', standalone: true, template: "<div class=\"igx-card-header__thumbnail\">\n <ng-content select=\"igx-avatar, igx-card-media, [igxCardThumbnail]\"></ng-content>\n</div>\n\n<div class=\"igx-card-header__titles\">\n <ng-content select=\"\n [igxCardHeaderTitle],\n [igxCardHeaderSubtitle],\n .igx-card-header__title,\n .igx-card-header__subtitle\">\n </ng-content>\n</div>\n\n<ng-content></ng-content>\n" }]
|
|
94
94
|
}], propDecorators: { cssClass: [{
|
|
@@ -105,10 +105,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-rc.4", ng
|
|
|
105
105
|
* Use it to wrap anything you want to be used as a thumbnail.
|
|
106
106
|
*/
|
|
107
107
|
export class IgxCardThumbnailDirective {
|
|
108
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0
|
|
109
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0
|
|
108
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: IgxCardThumbnailDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
109
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0", type: IgxCardThumbnailDirective, isStandalone: true, selector: "[igxCardThumbnail]", ngImport: i0 }); }
|
|
110
110
|
}
|
|
111
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0
|
|
111
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: IgxCardThumbnailDirective, decorators: [{
|
|
112
112
|
type: Directive,
|
|
113
113
|
args: [{
|
|
114
114
|
selector: '[igxCardThumbnail]',
|
|
@@ -124,10 +124,10 @@ export class IgxCardHeaderTitleDirective {
|
|
|
124
124
|
/** @hidden @internal */
|
|
125
125
|
this.cssClass = 'igx-card__header__title';
|
|
126
126
|
}
|
|
127
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0
|
|
128
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0
|
|
127
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: IgxCardHeaderTitleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
128
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0", type: IgxCardHeaderTitleDirective, isStandalone: true, selector: "[igxCardHeaderTitle]", host: { properties: { "class.igx-card-header__title": "this.cssClass" } }, ngImport: i0 }); }
|
|
129
129
|
}
|
|
130
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0
|
|
130
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: IgxCardHeaderTitleDirective, decorators: [{
|
|
131
131
|
type: Directive,
|
|
132
132
|
args: [{
|
|
133
133
|
selector: '[igxCardHeaderTitle]',
|
|
@@ -146,10 +146,10 @@ export class IgxCardHeaderSubtitleDirective {
|
|
|
146
146
|
/** @hidden @internal */
|
|
147
147
|
this.cssClass = 'igx-card-header__subtitle';
|
|
148
148
|
}
|
|
149
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0
|
|
150
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0
|
|
149
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: IgxCardHeaderSubtitleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
150
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0", type: IgxCardHeaderSubtitleDirective, isStandalone: true, selector: "[igxCardHeaderSubtitle]", host: { properties: { "class.igx-card-header__subtitle": "this.cssClass" } }, ngImport: i0 }); }
|
|
151
151
|
}
|
|
152
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0
|
|
152
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: IgxCardHeaderSubtitleDirective, decorators: [{
|
|
153
153
|
type: Directive,
|
|
154
154
|
args: [{
|
|
155
155
|
selector: '[igxCardHeaderSubtitle]',
|
|
@@ -167,10 +167,10 @@ export class IgxCardContentDirective {
|
|
|
167
167
|
/** @hidden @internal */
|
|
168
168
|
this.cssClass = 'igx-card-content';
|
|
169
169
|
}
|
|
170
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0
|
|
171
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0
|
|
170
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: IgxCardContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
171
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0", type: IgxCardContentDirective, isStandalone: true, selector: "igx-card-content", host: { properties: { "class.igx-card-content": "this.cssClass" } }, ngImport: i0 }); }
|
|
172
172
|
}
|
|
173
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0
|
|
173
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: IgxCardContentDirective, decorators: [{
|
|
174
174
|
type: Directive,
|
|
175
175
|
args: [{
|
|
176
176
|
// eslint-disable-next-line @angular-eslint/directive-selector
|
|
@@ -197,10 +197,10 @@ export class IgxCardFooterDirective {
|
|
|
197
197
|
*/
|
|
198
198
|
this.role = 'footer';
|
|
199
199
|
}
|
|
200
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0
|
|
201
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0
|
|
200
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: IgxCardFooterDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
201
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0", type: IgxCardFooterDirective, isStandalone: true, selector: "igx-card-footer", inputs: { role: "role" }, host: { properties: { "attr.role": "this.role" } }, ngImport: i0 }); }
|
|
202
202
|
}
|
|
203
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0
|
|
203
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: IgxCardFooterDirective, decorators: [{
|
|
204
204
|
type: Directive,
|
|
205
205
|
args: [{
|
|
206
206
|
// eslint-disable-next-line @angular-eslint/directive-selector
|
|
@@ -300,10 +300,10 @@ export class IgxCardComponent {
|
|
|
300
300
|
get isOutlinedCard() {
|
|
301
301
|
return this.type === IgxCardType.OUTLINED;
|
|
302
302
|
}
|
|
303
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0
|
|
304
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0
|
|
303
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: IgxCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
304
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: IgxCardComponent, isStandalone: true, selector: "igx-card", inputs: { id: "id", role: "role", type: "type", horizontal: "horizontal" }, host: { properties: { "attr.id": "this.id", "attr.role": "this.role", "class.igx-card": "this.type", "class.igx-card--outlined": "this.isOutlinedCard", "class.igx-card--horizontal": "this.horizontal" } }, ngImport: i0, template: "<ng-content></ng-content>\n" }); }
|
|
305
305
|
}
|
|
306
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0
|
|
306
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: IgxCardComponent, decorators: [{
|
|
307
307
|
type: Component,
|
|
308
308
|
args: [{ selector: 'igx-card', standalone: true, template: "<ng-content></ng-content>\n" }]
|
|
309
309
|
}], propDecorators: { id: [{
|
|
@@ -397,10 +397,10 @@ export class IgxCardActionsComponent {
|
|
|
397
397
|
this.vertical = true;
|
|
398
398
|
}
|
|
399
399
|
}
|
|
400
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0
|
|
401
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0
|
|
400
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: IgxCardActionsComponent, deps: [{ token: IgxCardComponent, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
401
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: IgxCardActionsComponent, isStandalone: true, selector: "igx-card-actions", inputs: { layout: "layout", vertical: "vertical", reverse: "reverse" }, host: { properties: { "class.igx-card-actions": "this.layout", "class.igx-card-actions--vertical": "this.vertical", "class.igx-card-actions--justify": "this.isJustifyLayout", "class.igx-card-actions--reverse": "this.reverse" } }, usesOnChanges: true, ngImport: i0, template: "<div #buttons class=\"igx-card-actions__start\">\n <ng-content select=\"[igxStart], [igxButton]:not([igxButton='icon']):not([igxEnd])\"></ng-content>\n</div>\n\n<ng-content></ng-content>\n\n<div class=\"igx-card-actions__end\">\n <ng-content select=\"[igxEnd], [igxButton='icon']:not([igxStart]), igx-icon:not([igxStart])\"></ng-content>\n</div>\n" }); }
|
|
402
402
|
}
|
|
403
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0
|
|
403
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: IgxCardActionsComponent, decorators: [{
|
|
404
404
|
type: Component,
|
|
405
405
|
args: [{ selector: 'igx-card-actions', standalone: true, template: "<div #buttons class=\"igx-card-actions__start\">\n <ng-content select=\"[igxStart], [igxButton]:not([igxButton='icon']):not([igxEnd])\"></ng-content>\n</div>\n\n<ng-content></ng-content>\n\n<div class=\"igx-card-actions__end\">\n <ng-content select=\"[igxEnd], [igxButton='icon']:not([igxStart]), igx-icon:not([igxStart])\"></ng-content>\n</div>\n" }]
|
|
406
406
|
}], ctorParameters: function () { return [{ type: IgxCardComponent, decorators: [{
|
|
@@ -427,4 +427,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-rc.4", ng
|
|
|
427
427
|
}, {
|
|
428
428
|
type: Input
|
|
429
429
|
}] } });
|
|
430
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pZ25pdGV1aS1hbmd1bGFyL3NyYy9saWIvY2FyZC9jYXJkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2lnbml0ZXVpLWFuZ3VsYXIvc3JjL2xpYi9jYXJkL2NhcmQtaGVhZGVyLmNvbXBvbmVudC5odG1sIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaWduaXRldWktYW5ndWxhci9zcmMvbGliL2NhcmQvY2FyZC5jb21wb25lbnQuaHRtbCIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2lnbml0ZXVpLWFuZ3VsYXIvc3JjL2xpYi9jYXJkL2NhcmQtYWN0aW9ucy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsU0FBUyxFQUNULFNBQVMsRUFDVCxXQUFXLEVBQ1gsUUFBUSxFQUNSLE1BQU0sRUFDTixLQUFLLEVBSVIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFFdkMsSUFBSSxPQUFPLEdBQUcsQ0FBQyxDQUFDO0FBRWhCOzs7R0FHRztBQU1ILE1BQU0sT0FBTyxxQkFBcUI7SUFMbEM7UUFNSSx3QkFBd0I7UUFFakIsYUFBUSxHQUFHLGlCQUFpQixDQUFDO1FBRXBDOzs7Ozs7OztXQVFHO1FBSUksVUFBSyxHQUFHLE1BQU0sQ0FBQztRQUV0Qjs7Ozs7Ozs7V0FRRztRQUdJLFdBQU0sR0FBRyxNQUFNLENBQUM7UUFFdkI7O1dBRUc7UUFHSSxTQUFJLEdBQUcsS0FBSyxDQUFDO0tBQ3ZCO21IQXRDWSxxQkFBcUI7dUdBQXJCLHFCQUFxQjs7Z0dBQXJCLHFCQUFxQjtrQkFMakMsU0FBUzttQkFBQztvQkFDUCw4REFBOEQ7b0JBQzlELFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFVBQVUsRUFBRSxJQUFJ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Ozs7Ozs7V0FVRztRQUdJLFdBQU0sR0FBa0Msb0JBQW9CLENBQUMsS0FBSyxDQUFDO1FBRTFFOzs7V0FHRztRQUdJLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFXeEI7Ozs7Ozs7OztXQVNHO1FBR0ksWUFBTyxHQUFHLEtBQUssQ0FBQztRQUVmLGtCQUFhLEdBQUcsS0FBSyxDQUFDO0lBRXFELENBQUM7SUFFcEY7OztPQUdHO0lBQ0ksV0FBVyxDQUFDLE9BQXNCO1FBQ3JDLEtBQUssTUFBTSxJQUFJLElBQUksT0FBTyxFQUFFO1lBQ3hCLElBQUksSUFBSSxLQUFLLFVBQVUsRUFBRTtnQkFDckIsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7YUFDN0I7U0FDSjtJQUNMLENBQUM7SUFFRDs7O09BR0c7SUFDSSxRQUFRO1FBQ1gsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDN0MsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7U0FDeEI7SUFDTCxDQUFDO21IQXZFUSx1QkFBdUIsa0JBaURBLGdCQUFnQjt1R0FqRHZDLHVCQUF1QiwrWUdqU3BDLG1XQVNBOztnR0h3UmEsdUJBQXVCO2tCQU5uQyxTQUFTOytCQUVJLGtCQUFrQixjQUVoQixJQUFJOzswQkFtREgsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxnQkFBZ0I7NENBbkN6QyxNQUFNO3NCQUZaLFdBQVc7dUJBQUMsd0JBQXdCOztzQkFDcEMsS0FBSztnQkFTQyxRQUFRO3NCQUZkLFdBQVc7dUJBQUMsa0NBQWtDOztzQkFDOUMsS0FBSztnQkFRSyxlQUFlO3NCQUR6QixXQUFXO3VCQUFDLGlDQUFpQztnQkFpQnZDLE9BQU87c0JBRmIsV0FBVzt1QkFBQyxpQ0FBaUM7O3NCQUM3QyxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDb21wb25lbnQsXG4gICAgRGlyZWN0aXZlLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIE9wdGlvbmFsLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPbkluaXQsXG4gICAgT25DaGFuZ2VzLFxuICAgIFNpbXBsZUNoYW5nZXNcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IG1rZW51bSB9IGZyb20gJy4uL2NvcmUvdXRpbHMnO1xuXG5sZXQgTkVYVF9JRCA9IDA7XG5cbi8qKlxuICogSWd4Q2FyZE1lZGlhIGlzIGNvbnRhaW5lciBmb3IgdGhlIGNhcmQgbWVkaWEgc2VjdGlvbi5cbiAqIFVzZSBpdCB0byB3cmFwIGltYWdlcyBhbmQgdmlkZW9zLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2RpcmVjdGl2ZS1zZWxlY3RvclxuICAgIHNlbGVjdG9yOiAnaWd4LWNhcmQtbWVkaWEnLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSWd4Q2FyZE1lZGlhRGlyZWN0aXZlIHtcbiAgICAvKiogQGhpZGRlbiBAaW50ZXJuYWwgKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmlneC1jYXJkX19tZWRpYScpXG4gICAgcHVibGljIGNzc0NsYXNzID0gJ2lneC1jYXJkX19tZWRpYSc7XG5cbiAgICAvKipcbiAgICAgKiBBbiBASW5wdXQgcHJvcGVydHkgdGhhdCBzZXRzIHRoZSBgd2lkdGhgIGFuZCBgbWluLXdpZHRoYCBzdHlsZSBwcm9wZXJ0eVxuICAgICAqIG9mIHRoZSBtZWRpYSBjb250YWluZXIuIElmIG5vdCBwcm92aWRlZCBpdCB3aWxsIGJlIHNldCB0byBgYXV0b2AuXG4gICAgICpcbiAgICAgKiBAZXhhbXBsZVxuICAgICAqIGBgYGh0bWxcbiAgICAgKiA8aWd4LWNhcmQtbWVkaWEgd2lkdGg9XCIzMDBweFwiPjwvaWd4LWNhcmQtbWVkaWE+XG4gICAgICogYGBgXG4gICAgICovXG4gICAgQEhvc3RCaW5kaW5nKCdzdHlsZS53aWR0aCcpXG4gICAgQEhvc3RCaW5kaW5nKCdzdHlsZS5taW4td2lkdGgnKVxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHdpZHRoID0gJ2F1dG8nO1xuXG4gICAgLyoqXG4gICAgICogQW4gQElucHV0IHByb3BlcnR5IHRoYXQgc2V0cyB0aGUgYGhlaWdodGAgc3R5bGUgcHJvcGVydHkgb2YgdGhlIG1lZGlhIGNvbnRhaW5lci5cbiAgICAgKiBJZiBub3QgcHJvdmlkZWQgaXQgd2lsbCBiZSBzZXQgdG8gYGF1dG9gLlxuICAgICAqXG4gICAgICogQGV4YW1wbGVcbiAgICAgKiBgYGBodG1sXG4gICAgICogPGlneC1jYXJkLW1lZGlhIGhlaWdodD1cIjUwJVwiPjwvaWd4LWNhcmQtbWVkaWE+XG4gICAgICogYGBgXG4gICAgICovXG4gICAgQEhvc3RCaW5kaW5nKCdzdHlsZS5oZWlnaHQnKVxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGhlaWdodCA9ICdhdXRvJztcblxuICAgIC8qKlxuICAgICAqIEFuIEBJbnB1dCBwcm9wZXJ0eSB0aGF0IHNldHMgdGhlIGByb2xlYCBhdHRyaWJ1dGUgb2YgdGhlIG1lZGlhIGNvbnRhaW5lci5cbiAgICAgKi9cbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIucm9sZScpXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgcm9sZSA9ICdpbWcnO1xufVxuXG4vKipcbiAqIElneENhcmRIZWFkZXIgaXMgY29udGFpbmVyIGZvciB0aGUgY2FyZCBoZWFkZXJcbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdpZ3gtY2FyZC1oZWFkZXInLFxuICAgIHRlbXBsYXRlVXJsOiAnY2FyZC1oZWFkZXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSWd4Q2FyZEhlYWRlckNvbXBvbmVudCB7XG4gICAgLyoqIEBoaWRkZW4gQGludGVybmFsICovXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pZ3gtY2FyZC1oZWFkZXInKVxuICAgIHB1YmxpYyBjc3NDbGFzcyA9ICdpZ3gtY2FyZC1oZWFkZXInO1xuXG4gICAgLyoqXG4gICAgICogQW4gQElucHV0IHByb3BlcnR5IHRoYXQgc2V0cyB0aGUgbGF5b3V0IHN0eWxlIG9mIHRoZSBoZWFkZXIuXG4gICAgICogQnkgZGVmYXVsdCB0aGUgaGVhZGVyIGVsZW1lbnRzKHRodW1ibmFpbCBhbmQgdGl0bGUvc3VidGl0bGUpIGFyZSBhbGlnbmVkIGhvcml6b250YWxseS5cbiAgICAgKlxuICAgICAqIEBleGFtcGxlXG4gICAgICogYGBgaHRtbFxuICAgICAqIDxpZ3gtY2FyZC1oZWFkZXIgW3ZlcnRpY2FsXT1cInRydWVcIj48L2lneC1jYXJkLWhlYWRlcj5cbiAgICAgKiBgYGBcbiAgICAgKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmlneC1jYXJkLWhlYWRlci0tdmVydGljYWwnKVxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHZlcnRpY2FsID0gZmFsc2U7XG59XG5cbi8qKlxuICogSWd4Q2FyZFRodW1ibmFpbCBpcyBjb250YWluZXIgZm9yIHRoZSBjYXJkIHRodW1ibmFpbCBzZWN0aW9uLlxuICogVXNlIGl0IHRvIHdyYXAgYW55dGhpbmcgeW91IHdhbnQgdG8gYmUgdXNlZCBhcyBhIHRodW1ibmFpbC5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbaWd4Q2FyZFRodW1ibmFpbF0nLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSWd4Q2FyZFRodW1ibmFpbERpcmVjdGl2ZSB7IH1cblxuLyoqXG4gKiBpZ3hDYXJkSGVhZGVyVGl0bGUgaXMgdXNlZCB0byBkZW5vdGUgdGhlIGhlYWRlciB0aXRsZSBpbiBhIGNhcmQuXG4gKiBVc2UgaXQgdG8gdGFnIHRleHQgbm9kZXMuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2lneENhcmRIZWFkZXJUaXRsZV0nLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSWd4Q2FyZEhlYWRlclRpdGxlRGlyZWN0aXZlIHtcbiAgICAvKiogQGhpZGRlbiBAaW50ZXJuYWwgKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmlneC1jYXJkLWhlYWRlcl9fdGl0bGUnKVxuICAgIHB1YmxpYyBjc3NDbGFzcyA9ICdpZ3gtY2FyZF9faGVhZGVyX190aXRsZSc7XG59XG5cbi8qKlxuICogaWd4Q2FyZEhlYWRlclN1YnRpdGxlIGlzIHVzZWQgdG8gZGVub3RlIHRoZSBoZWFkZXIgc3VidGl0bGUgaW4gYSBjYXJkLlxuICogVXNlIGl0IHRvIHRhZyB0ZXh0IG5vZGVzLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tpZ3hDYXJkSGVhZGVyU3VidGl0bGVdJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIElneENhcmRIZWFkZXJTdWJ0aXRsZURpcmVjdGl2ZSB7XG4gICAgLyoqIEBoaWRkZW4gQGludGVybmFsICovXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pZ3gtY2FyZC1oZWFkZXJfX3N1YnRpdGxlJylcbiAgICBwdWJsaWMgY3NzQ2xhc3MgPSAnaWd4LWNhcmQtaGVhZGVyX19zdWJ0aXRsZSc7XG59XG4vKipcbiAqIElneENhcmRDb250ZW50IGlzIGNvbnRhaW5lciBmb3IgdGhlIGNhcmQgY29udGVudC5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9kaXJlY3RpdmUtc2VsZWN0b3JcbiAgICBzZWxlY3RvcjogJ2lneC1jYXJkLWNvbnRlbnQnLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSWd4Q2FyZENvbnRlbnREaXJlY3RpdmUge1xuICAgIC8qKiBAaGlkZGVuIEBpbnRlcm5hbCAqL1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MuaWd4LWNhcmQtY29udGVudCcpXG4gICAgcHVibGljIGNzc0NsYXNzID0gJ2lneC1jYXJkLWNvbnRlbnQnO1xufVxuXG4vKipcbiAqIElneENhcmRGb290ZXIgaXMgY29udGFpbmVyIGZvciB0aGUgY2FyZCBmb290ZXJcbiAqL1xuQERpcmVjdGl2ZSh7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9kaXJlY3RpdmUtc2VsZWN0b3JcbiAgICBzZWxlY3RvcjogJ2lneC1jYXJkLWZvb3RlcicsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBJZ3hDYXJkRm9vdGVyRGlyZWN0aXZlIHtcbiAgICAvKipcbiAgICAgKiBBbiBASW5wdXQgcHJvcGVydHkgdGhhdCBzZXRzIHRoZSB2YWx1ZSBvZiB0aGUgYHJvbGVgIGF0dHJpYnV0ZSBvZiB0aGUgY2FyZCBmb290ZXIuXG4gICAgICogQnkgZGVmYXVsdCB0aGUgdmFsdWUgaXMgc2V0IHRvIGBmb290ZXJgLlxuICAgICAqXG4gICAgICogQGV4YW1wbGVcbiAgICAgKiBgYGBodG1sXG4gICAgICogPGlneC1jYXJkLWZvb3RlciByb2xlPVwiZm9vdGVyXCI+PC9pZ3gtY2FyZC1mb290ZXI+XG4gICAgICogYGBgXG4gICAgICovXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLnJvbGUnKVxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHJvbGUgPSAnZm9vdGVyJztcbn1cblxuLyoqXG4gKiBDYXJkIHByb3ZpZGVzIGEgd2F5IHRvIGRpc3BsYXkgb3JnYW5pemVkIGNvbnRlbnQgaW4gYXBwZWFsaW5nIHdheS5cbiAqXG4gKiBAaWd4TW9kdWxlIElneENhcmRNb2R1bGVcbiAqXG4gKiBAaWd4VGhlbWUgaWd4LWNhcmQtdGhlbWUsIGlneC1pY29uLXRoZW1lLCBpZ3gtYnV0dG9uLXRoZW1lXG4gKlxuICogQGlneEtleXdvcmRzIGNhcmQsIGJ1dHRvbiwgYXZhdGFyLCBpY29uXG4gKlxuICogQGlneEdyb3VwIExheW91dHNcbiAqXG4gKiBAcmVtYXJrc1xuICogVGhlIElnbml0ZSBVSSBDYXJkIHNlcnZlcyBhcyBhIGNvbnRhaW5lciB0aGF0IGFsbG93cyBjdXN0b20gY29udGVudCB0byBiZSBvcmdhbml6ZWQgaW4gYW4gYXBwZWFsaW5nIHdheS4gVGhlcmUgYXJlXG4gKiBmaXZlIHNlY3Rpb25zIGluIGEgY2FyZCB0aGF0IHlvdSBjYW4gdXNlIHRvIG9yZ2FuaXplIHlvdXIgY29udGVudC4gVGhlc2UgYXJlIGhlYWRlciwgbWVkaWEsIGNvbnRlbnQsIGFjdGlvbnMsIGFuZCBmb290ZXIuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGh0bWxcbiAqIDxpZ3gtY2FyZD5cbiAqICAgPGlneC1jYXJkLWhlYWRlcj5cbiAqICAgICA8aDMgaWd4Q2FyZEhlYWRlclRpdGxlPnt7dGl0bGV9fTwvaDM+XG4gKiAgICAgPGg1IGlneENhcmRIZWFkZXJTdWJ0aXRsZT57e3N1YnRpdGxlfX08L2g1PlxuICogICA8L2lneC1jYXJkLWhlYWRlcj5cbiAqICAgPGlneC1jYXJkLWFjdGlvbnM+XG4gKiAgICAgICA8YnV0dG9uIGlneEJ1dHRvbiBpZ3hSaXBwbGU+U2hhcmU8L2J1dHRvbj5cbiAqICAgICAgIDxidXR0b24gaWd4QnV0dG9uIGlneFJpcHBsZT5QbGF5IEFsYnVtPC9idXR0b24+XG4gKiAgIDwvaWd4LWNhcmQtYWN0aW9ucz5cbiAqIDwvaWd4LWNhcmQ+XG4gKiBgYGBcbiAqL1xuXG5leHBvcnQgY29uc3QgSWd4Q2FyZFR5cGUgPSBta2VudW0oe1xuICAgIEVMRVZBVEVEOiAnZWxldmF0ZWQnLFxuICAgIE9VVExJTkVEOiAnb3V0bGluZWQnXG59KTtcbmV4cG9ydCB0eXBlIElneENhcmRUeXBlID0gKHR5cGVvZiBJZ3hDYXJkVHlwZSlba2V5b2YgdHlwZW9mIElneENhcmRUeXBlXTtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdpZ3gtY2FyZCcsXG4gICAgdGVtcGxhdGVVcmw6ICdjYXJkLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIElneENhcmRDb21wb25lbnQge1xuICAgIC8qKlxuICAgICAqIFNldHMvZ2V0cyB0aGUgYGlkYCBvZiB0aGUgY2FyZC5cbiAgICAgKiBJZiBub3Qgc2V0LCBgaWRgIHdpbGwgaGF2ZSB2YWx1ZSBgXCJpZ3gtY2FyZC0wXCJgO1xuICAgICAqXG4gICAgICogQGV4YW1wbGVcbiAgICAgKiBgYGBodG1sXG4gICAgICogPGlneC1jYXJkIGlkID0gXCJteS1maXJzdC1jYXJkXCI+PC9pZ3gtY2FyZD5cbiAgICAgKiBgYGBcbiAgICAgKiBgYGB0eXBlc2NyaXB0XG4gICAgICogbGV0IGNhcmRJZCA9ICB0aGlzLmNhcmQuaWQ7XG4gICAgICogYGBgXG4gICAgICovXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmlkJylcbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBpZCA9IGBpZ3gtY2FyZC0ke05FWFRfSUQrK31gO1xuXG4gICAgLyoqXG4gICAgICogQW4gQElucHV0IHByb3BlcnR5IHRoYXQgc2V0cyB0aGUgdmFsdWUgb2YgdGhlIGByb2xlYCBhdHRyaWJ1dGUgb2YgdGhlIGNhcmQuXG4gICAgICogQnkgZGVmYXVsdCB0aGUgdmFsdWUgaXMgc2V0IHRvIGBncm91cGAuXG4gICAgICpcbiAgICAgKiBAZXhhbXBsZVxuICAgICAqIGBgYGh0bWxcbiAgICAgKiA8aWd4LWNhcmQgcm9sZT1cImdyb3VwXCI+PC9pZ3gtY2FyZD5cbiAgICAgKiBgYGBcbiAgICAgKi9cbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIucm9sZScpXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgcm9sZSA9ICdncm91cCc7XG5cbiAgICAvKipcbiAgICAgKiBBbiBASW5wdXQgcHJvcGVydHkgdGhhdCBzZXRzIHRoZSB2YWx1ZSBvZiB0aGUgYHR5cGVgIGF0dHJpYnV0ZSBvZiB0aGUgY2FyZC5cbiAgICAgKiBCeSBkZWZhdWx0IHRoZSB2YWx1ZSBpcyBzZXQgdG8gYGVsZXZhdGVkYC4gWW91IGNhbiBtYWtlIHRoZSBjYXJkIHVzZSB0aGVcbiAgICAgKiBvdXRsaW5lZCBzdHlsZSBieSBzZXR0aW5nIHRoZSB2YWx1ZSB0byBgb3V0bGluZWRgLlxuICAgICAqXG4gICAgICogQGV4YW1wbGVcbiAgICAgKiBgYGBodG1sXG4gICAgICogPGlneC1jYXJkIHR5cGU9XCJvdXRsaW5lZFwiPjwvaWd4LWNhcmQ+XG4gICAgICogYGBgXG4gICAgICovXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pZ3gtY2FyZCcpXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgdHlwZTogSWd4Q2FyZFR5cGUgfCBzdHJpbmcgPSBJZ3hDYXJkVHlwZS5FTEVWQVRFRDtcblxuICAgIC8qKlxuICAgICAqIEEgZ2V0dGVyIHdoaWNoIHdpbGwgcmV0dXJuIHRydWUgaWYgdGhlIGNhcmQgdHlwZSBpcyBgb3V0bGluZWRgLlxuICAgICAqL1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MuaWd4LWNhcmQtLW91dGxpbmVkJylcbiAgICBwdWJsaWMgZ2V0IGlzT3V0bGluZWRDYXJkKCkge1xuICAgICAgICByZXR1cm4gdGhpcy50eXBlID09PSBJZ3hDYXJkVHlwZS5PVVRMSU5FRDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBbiBASW5wdXQgcHJvcGVydHkgdGhhdCBzZXRzIHRoZSB2YWx1ZSBvZiB0aGUgYGhvcml6b250YWxgIGF0dHJpYnV0ZSBvZiB0aGUgY2FyZC5cbiAgICAgKiBTZXR0aW5nIHRoaXMgdG8gYHRydWVgIHdpbGwgbWFrZSB0aGUgZGlmZmVyZW50IGNhcmQgc2VjdGlvbnMgYWxpZ24gaG9yaXpvbnRhbGx5LFxuICAgICAqIGVzc2VudGlhbGx5IGZsaXBwaW5nIHRoZSBjYXJkIHRvIHRoZSBzaWRlLlxuICAgICAqXG4gICAgICogQGV4YW1wbGVcbiAgICAgKiBgYGBodG1sXG4gICAgICogPGlneC1jYXJkIFtob3Jpem9udGFsXT1cInRydWVcIj48L2lneC1jYXJkPlxuICAgICAqIGBgYFxuICAgICAqL1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MuaWd4LWNhcmQtLWhvcml6b250YWwnKVxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGhvcml6b250YWwgPSBmYWxzZTtcbn1cblxuZXhwb3J0IGNvbnN0IElneENhcmRBY3Rpb25zTGF5b3V0ID0gbWtlbnVtKHtcbiAgICBTVEFSVDogJ3N0YXJ0JyxcbiAgICBKVVNUSUZZOiAnanVzdGlmeSdcbn0pO1xuZXhwb3J0IHR5cGUgSWd4Q2FyZEFjdGlvbnNMYXlvdXQgPSAodHlwZW9mIElneENhcmRBY3Rpb25zTGF5b3V0KVtrZXlvZiB0eXBlb2YgSWd4Q2FyZEFjdGlvbnNMYXlvdXRdO1xuXG4vKipcbiAqIElneENhcmRBY3Rpb25zIGlzIGNvbnRhaW5lciBmb3IgdGhlIGNhcmQgYWN0aW9ucy5cbiAqL1xuQENvbXBvbmVudCh7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9kaXJlY3RpdmUtc2VsZWN0b3JcbiAgICBzZWxlY3RvcjogJ2lneC1jYXJkLWFjdGlvbnMnLFxuICAgIHRlbXBsYXRlVXJsOiAnY2FyZC1hY3Rpb25zLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIElneENhcmRBY3Rpb25zQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICAgIC8qKlxuICAgICAqIEFuIEBJbnB1dCBwcm9wZXJ0eSB0aGF0IHNldHMgdGhlIGxheW91dCBzdHlsZSBvZiB0aGUgYWN0aW9ucy5cbiAgICAgKiBZb3UgY2FuIGp1c3RpZnkgdGhlIGVsZW1lbnRzIHNsb3R0ZWQgaW4gdGhlIGlneC1jYXJkLWFjdGlvbiBjb250YWluZXJcbiAgICAgKiBzbyB0aGF0IHRoZXkgYXJlIHBvc2l0aW9uZWQgZXF1YWxseSBmcm9tIG9uZSBhbm90aGVyIHRha2luZyB1cCBhbGwgdGhlXG4gICAgICogc3BhY2UgYXZhaWxhYmxlIGFsb25nIHRoZSBjYXJkIGFjdGlvbnMgYXhpcy5cbiAgICAgKlxuICAgICAqIEBleGFtcGxlXG4gICAgICogYGBgaHRtbFxuICAgICAqIDxpZ3gtY2FyZC1hY3Rpb25zIGxheW91dD1cImp1c3RpZnlcIj48L2lneC1jYXJkLWFjdGlvbnM+XG4gICAgICogYGBgXG4gICAgICovXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pZ3gtY2FyZC1hY3Rpb25zJylcbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBsYXlvdXQ6IElneENhcmRBY3Rpb25zTGF5b3V0IHwgc3RyaW5nID0gSWd4Q2FyZEFjdGlvbnNMYXlvdXQuU1RBUlQ7XG5cbiAgICAvKipcbiAgICAgKiBBbiBASW5wdXQgcHJvcGVydHkgdGhhdCBzZXRzIHRoZSB2ZXJ0aWNhbCBhdHRyaWJ1dGUgb2YgdGhlIGFjdGlvbnMuXG4gICAgICogV2hlbiBzZXQgdG8gYHRydWVgIHRoZSBhY3Rpb25zIHdpbGwgYmUgbGF5ZWQgb3V0IHZlcnRpY2FsbHkuXG4gICAgICovXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pZ3gtY2FyZC1hY3Rpb25zLS12ZXJ0aWNhbCcpXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgdmVydGljYWwgPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIEEgZ2V0dGVyIHRoYXQgcmV0dXJucyBgdHJ1ZWAgd2hlbiB0aGUgbGF5b3V0IGhhcyBiZWVuXG4gICAgICogc2V0IHRvIGBqdXN0aWZ5YC5cbiAgICAgKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmlneC1jYXJkLWFjdGlvbnMtLWp1c3RpZnknKVxuICAgIHB1YmxpYyBnZXQgaXNKdXN0aWZ5TGF5b3V0KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5sYXlvdXQgPT09IElneENhcmRBY3Rpb25zTGF5b3V0LkpVU1RJRlk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGRlcHJlY2F0ZWQgaW4gdmVyc2lvbiAxNS4xLjAuXG4gICAgICpcbiAgICAgKiBBbiBASW5wdXQgcHJvcGVydHkgdGhhdCByZXZlcnNlcyB0aGUgb3JkZXIgb2YgdGhlIGJ1dHRvbnMgaW4gdGhlIGFjdGlvbnMgYXJlYS5cbiAgICAgKlxuICAgICAqIEBleGFtcGxlXG4gICAgICogYGBgaHRtbFxuICAgICAqIDxpZ3gtY2FyZC1hY3Rpb25zIFtyZXZlcnNlXT1cInRydWVcIj48L2lneC1jYXJkLWFjdGlvbnM+XG4gICAgICogYGBgXG4gICAgICovXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pZ3gtY2FyZC1hY3Rpb25zLS1yZXZlcnNlJylcbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyByZXZlcnNlID0gZmFsc2U7XG5cbiAgICBwcml2YXRlIGlzVmVydGljYWxTZXQgPSBmYWxzZTtcblxuICAgIGNvbnN0cnVjdG9yKEBPcHRpb25hbCgpIEBJbmplY3QoSWd4Q2FyZENvbXBvbmVudCkgcHVibGljIGNhcmQ6IElneENhcmRDb21wb25lbnQpIHsgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIEBpbnRlcm5hbFxuICAgICAqL1xuICAgIHB1YmxpYyBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgICAgIGZvciAoY29uc3QgcHJvcCBpbiBjaGFuZ2VzKSB7XG4gICAgICAgICAgICBpZiAocHJvcCA9PT0gJ3ZlcnRpY2FsJykge1xuICAgICAgICAgICAgICAgIHRoaXMuaXNWZXJ0aWNhbFNldCA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogQGludGVybmFsXG4gICAgICovXG4gICAgcHVibGljIG5nT25Jbml0KCkge1xuICAgICAgICBpZiAoIXRoaXMuaXNWZXJ0aWNhbFNldCAmJiB0aGlzLmNhcmQuaG9yaXpvbnRhbCkge1xuICAgICAgICAgICAgdGhpcy52ZXJ0aWNhbCA9IHRydWU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiIsIjxkaXYgY2xhc3M9XCJpZ3gtY2FyZC1oZWFkZXJfX3RodW1ibmFpbFwiPlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImlneC1hdmF0YXIsIGlneC1jYXJkLW1lZGlhLCBbaWd4Q2FyZFRodW1ibmFpbF1cIj48L25nLWNvbnRlbnQ+XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cImlneC1jYXJkLWhlYWRlcl9fdGl0bGVzXCI+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiXG4gICAgICAgIFtpZ3hDYXJkSGVhZGVyVGl0bGVdLFxuICAgICAgICBbaWd4Q2FyZEhlYWRlclN1YnRpdGxlXSxcbiAgICAgICAgLmlneC1jYXJkLWhlYWRlcl9fdGl0bGUsXG4gICAgICAgIC5pZ3gtY2FyZC1oZWFkZXJfX3N1YnRpdGxlXCI+XG4gICAgPC9uZy1jb250ZW50PlxuPC9kaXY+XG5cbjxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiIsIjxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiIsIjxkaXYgI2J1dHRvbnMgY2xhc3M9XCJpZ3gtY2FyZC1hY3Rpb25zX19zdGFydFwiPlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltpZ3hTdGFydF0sIFtpZ3hCdXR0b25dOm5vdChbaWd4QnV0dG9uPSdpY29uJ10pOm5vdChbaWd4RW5kXSlcIj48L25nLWNvbnRlbnQ+XG48L2Rpdj5cblxuPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuXG48ZGl2IGNsYXNzPVwiaWd4LWNhcmQtYWN0aW9uc19fZW5kXCI+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2lneEVuZF0sIFtpZ3hCdXR0b249J2ljb24nXTpub3QoW2lneFN0YXJ0XSksIGlneC1pY29uOm5vdChbaWd4U3RhcnRdKVwiPjwvbmctY29udGVudD5cbjwvZGl2PlxuIl19
|
|
430
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pZ25pdGV1aS1hbmd1bGFyL3NyYy9saWIvY2FyZC9jYXJkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2lnbml0ZXVpLWFuZ3VsYXIvc3JjL2xpYi9jYXJkL2NhcmQtaGVhZGVyLmNvbXBvbmVudC5odG1sIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaWduaXRldWktYW5ndWxhci9zcmMvbGliL2NhcmQvY2FyZC5jb21wb25lbnQuaHRtbCIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2lnbml0ZXVpLWFuZ3VsYXIvc3JjL2xpYi9jYXJkL2NhcmQtYWN0aW9ucy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsU0FBUyxFQUNULFNBQVMsRUFDVCxXQUFXLEVBQ1gsUUFBUSxFQUNSLE1BQU0sRUFDTixLQUFLLEVBSVIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFFdkMsSUFBSSxPQUFPLEdBQUcsQ0FBQyxDQUFDO0FBRWhCOzs7R0FHRztBQU1ILE1BQU0sT0FBTyxxQkFBcUI7SUFMbEM7UUFNSSx3QkFBd0I7UUFFakIsYUFBUSxHQUFHLGlCQUFpQixDQUFDO1FBRXBDOzs7Ozs7OztXQVFHO1FBSUksVUFBSyxHQUFHLE1BQU0sQ0FBQztRQUV0Qjs7Ozs7Ozs7V0FRRztRQUdJLFdBQU0sR0FBRyxNQUFNLENBQUM7UUFFdkI7O1dBRUc7UUFHSSxTQUFJLEdBQUcsS0FBSyxDQUFDO0tBQ3ZCOzhHQXRDWSxxQkFBcUI7a0dBQXJCLHFCQUFxQjs7MkZBQXJCLHFCQUFxQjtrQkFMakMsU0FBUzttQkFBQztvQkFDUCw4REFBOEQ7b0JBQzlELFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFVBQVUsRUFBRSxJQUFJ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Ozs7Ozs7V0FVRztRQUdJLFdBQU0sR0FBa0Msb0JBQW9CLENBQUMsS0FBSyxDQUFDO1FBRTFFOzs7V0FHRztRQUdJLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFXeEI7Ozs7Ozs7OztXQVNHO1FBR0ksWUFBTyxHQUFHLEtBQUssQ0FBQztRQUVmLGtCQUFhLEdBQUcsS0FBSyxDQUFDO0lBRXFELENBQUM7SUFFcEY7OztPQUdHO0lBQ0ksV0FBVyxDQUFDLE9BQXNCO1FBQ3JDLEtBQUssTUFBTSxJQUFJLElBQUksT0FBTyxFQUFFO1lBQ3hCLElBQUksSUFBSSxLQUFLLFVBQVUsRUFBRTtnQkFDckIsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7YUFDN0I7U0FDSjtJQUNMLENBQUM7SUFFRDs7O09BR0c7SUFDSSxRQUFRO1FBQ1gsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDN0MsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7U0FDeEI7SUFDTCxDQUFDOzhHQXZFUSx1QkFBdUIsa0JBaURBLGdCQUFnQjtrR0FqRHZDLHVCQUF1QiwrWUdqU3BDLG1XQVNBOzsyRkh3UmEsdUJBQXVCO2tCQU5uQyxTQUFTOytCQUVJLGtCQUFrQixjQUVoQixJQUFJOzswQkFtREgsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxnQkFBZ0I7NENBbkN6QyxNQUFNO3NCQUZaLFdBQVc7dUJBQUMsd0JBQXdCOztzQkFDcEMsS0FBSztnQkFTQyxRQUFRO3NCQUZkLFdBQVc7dUJBQUMsa0NBQWtDOztzQkFDOUMsS0FBSztnQkFRSyxlQUFlO3NCQUR6QixXQUFXO3VCQUFDLGlDQUFpQztnQkFpQnZDLE9BQU87c0JBRmIsV0FBVzt1QkFBQyxpQ0FBaUM7O3NCQUM3QyxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDb21wb25lbnQsXG4gICAgRGlyZWN0aXZlLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIE9wdGlvbmFsLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPbkluaXQsXG4gICAgT25DaGFuZ2VzLFxuICAgIFNpbXBsZUNoYW5nZXNcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IG1rZW51bSB9IGZyb20gJy4uL2NvcmUvdXRpbHMnO1xuXG5sZXQgTkVYVF9JRCA9IDA7XG5cbi8qKlxuICogSWd4Q2FyZE1lZGlhIGlzIGNvbnRhaW5lciBmb3IgdGhlIGNhcmQgbWVkaWEgc2VjdGlvbi5cbiAqIFVzZSBpdCB0byB3cmFwIGltYWdlcyBhbmQgdmlkZW9zLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2RpcmVjdGl2ZS1zZWxlY3RvclxuICAgIHNlbGVjdG9yOiAnaWd4LWNhcmQtbWVkaWEnLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSWd4Q2FyZE1lZGlhRGlyZWN0aXZlIHtcbiAgICAvKiogQGhpZGRlbiBAaW50ZXJuYWwgKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmlneC1jYXJkX19tZWRpYScpXG4gICAgcHVibGljIGNzc0NsYXNzID0gJ2lneC1jYXJkX19tZWRpYSc7XG5cbiAgICAvKipcbiAgICAgKiBBbiBASW5wdXQgcHJvcGVydHkgdGhhdCBzZXRzIHRoZSBgd2lkdGhgIGFuZCBgbWluLXdpZHRoYCBzdHlsZSBwcm9wZXJ0eVxuICAgICAqIG9mIHRoZSBtZWRpYSBjb250YWluZXIuIElmIG5vdCBwcm92aWRlZCBpdCB3aWxsIGJlIHNldCB0byBgYXV0b2AuXG4gICAgICpcbiAgICAgKiBAZXhhbXBsZVxuICAgICAqIGBgYGh0bWxcbiAgICAgKiA8aWd4LWNhcmQtbWVkaWEgd2lkdGg9XCIzMDBweFwiPjwvaWd4LWNhcmQtbWVkaWE+XG4gICAgICogYGBgXG4gICAgICovXG4gICAgQEhvc3RCaW5kaW5nKCdzdHlsZS53aWR0aCcpXG4gICAgQEhvc3RCaW5kaW5nKCdzdHlsZS5taW4td2lkdGgnKVxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHdpZHRoID0gJ2F1dG8nO1xuXG4gICAgLyoqXG4gICAgICogQW4gQElucHV0IHByb3BlcnR5IHRoYXQgc2V0cyB0aGUgYGhlaWdodGAgc3R5bGUgcHJvcGVydHkgb2YgdGhlIG1lZGlhIGNvbnRhaW5lci5cbiAgICAgKiBJZiBub3QgcHJvdmlkZWQgaXQgd2lsbCBiZSBzZXQgdG8gYGF1dG9gLlxuICAgICAqXG4gICAgICogQGV4YW1wbGVcbiAgICAgKiBgYGBodG1sXG4gICAgICogPGlneC1jYXJkLW1lZGlhIGhlaWdodD1cIjUwJVwiPjwvaWd4LWNhcmQtbWVkaWE+XG4gICAgICogYGBgXG4gICAgICovXG4gICAgQEhvc3RCaW5kaW5nKCdzdHlsZS5oZWlnaHQnKVxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGhlaWdodCA9ICdhdXRvJztcblxuICAgIC8qKlxuICAgICAqIEFuIEBJbnB1dCBwcm9wZXJ0eSB0aGF0IHNldHMgdGhlIGByb2xlYCBhdHRyaWJ1dGUgb2YgdGhlIG1lZGlhIGNvbnRhaW5lci5cbiAgICAgKi9cbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIucm9sZScpXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgcm9sZSA9ICdpbWcnO1xufVxuXG4vKipcbiAqIElneENhcmRIZWFkZXIgaXMgY29udGFpbmVyIGZvciB0aGUgY2FyZCBoZWFkZXJcbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdpZ3gtY2FyZC1oZWFkZXInLFxuICAgIHRlbXBsYXRlVXJsOiAnY2FyZC1oZWFkZXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSWd4Q2FyZEhlYWRlckNvbXBvbmVudCB7XG4gICAgLyoqIEBoaWRkZW4gQGludGVybmFsICovXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pZ3gtY2FyZC1oZWFkZXInKVxuICAgIHB1YmxpYyBjc3NDbGFzcyA9ICdpZ3gtY2FyZC1oZWFkZXInO1xuXG4gICAgLyoqXG4gICAgICogQW4gQElucHV0IHByb3BlcnR5IHRoYXQgc2V0cyB0aGUgbGF5b3V0IHN0eWxlIG9mIHRoZSBoZWFkZXIuXG4gICAgICogQnkgZGVmYXVsdCB0aGUgaGVhZGVyIGVsZW1lbnRzKHRodW1ibmFpbCBhbmQgdGl0bGUvc3VidGl0bGUpIGFyZSBhbGlnbmVkIGhvcml6b250YWxseS5cbiAgICAgKlxuICAgICAqIEBleGFtcGxlXG4gICAgICogYGBgaHRtbFxuICAgICAqIDxpZ3gtY2FyZC1oZWFkZXIgW3ZlcnRpY2FsXT1cInRydWVcIj48L2lneC1jYXJkLWhlYWRlcj5cbiAgICAgKiBgYGBcbiAgICAgKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmlneC1jYXJkLWhlYWRlci0tdmVydGljYWwnKVxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHZlcnRpY2FsID0gZmFsc2U7XG59XG5cbi8qKlxuICogSWd4Q2FyZFRodW1ibmFpbCBpcyBjb250YWluZXIgZm9yIHRoZSBjYXJkIHRodW1ibmFpbCBzZWN0aW9uLlxuICogVXNlIGl0IHRvIHdyYXAgYW55dGhpbmcgeW91IHdhbnQgdG8gYmUgdXNlZCBhcyBhIHRodW1ibmFpbC5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbaWd4Q2FyZFRodW1ibmFpbF0nLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSWd4Q2FyZFRodW1ibmFpbERpcmVjdGl2ZSB7IH1cblxuLyoqXG4gKiBpZ3hDYXJkSGVhZGVyVGl0bGUgaXMgdXNlZCB0byBkZW5vdGUgdGhlIGhlYWRlciB0aXRsZSBpbiBhIGNhcmQuXG4gKiBVc2UgaXQgdG8gdGFnIHRleHQgbm9kZXMuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2lneENhcmRIZWFkZXJUaXRsZV0nLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSWd4Q2FyZEhlYWRlclRpdGxlRGlyZWN0aXZlIHtcbiAgICAvKiogQGhpZGRlbiBAaW50ZXJuYWwgKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmlneC1jYXJkLWhlYWRlcl9fdGl0bGUnKVxuICAgIHB1YmxpYyBjc3NDbGFzcyA9ICdpZ3gtY2FyZF9faGVhZGVyX190aXRsZSc7XG59XG5cbi8qKlxuICogaWd4Q2FyZEhlYWRlclN1YnRpdGxlIGlzIHVzZWQgdG8gZGVub3RlIHRoZSBoZWFkZXIgc3VidGl0bGUgaW4gYSBjYXJkLlxuICogVXNlIGl0IHRvIHRhZyB0ZXh0IG5vZGVzLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tpZ3hDYXJkSGVhZGVyU3VidGl0bGVdJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIElneENhcmRIZWFkZXJTdWJ0aXRsZURpcmVjdGl2ZSB7XG4gICAgLyoqIEBoaWRkZW4gQGludGVybmFsICovXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pZ3gtY2FyZC1oZWFkZXJfX3N1YnRpdGxlJylcbiAgICBwdWJsaWMgY3NzQ2xhc3MgPSAnaWd4LWNhcmQtaGVhZGVyX19zdWJ0aXRsZSc7XG59XG4vKipcbiAqIElneENhcmRDb250ZW50IGlzIGNvbnRhaW5lciBmb3IgdGhlIGNhcmQgY29udGVudC5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9kaXJlY3RpdmUtc2VsZWN0b3JcbiAgICBzZWxlY3RvcjogJ2lneC1jYXJkLWNvbnRlbnQnLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSWd4Q2FyZENvbnRlbnREaXJlY3RpdmUge1xuICAgIC8qKiBAaGlkZGVuIEBpbnRlcm5hbCAqL1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MuaWd4LWNhcmQtY29udGVudCcpXG4gICAgcHVibGljIGNzc0NsYXNzID0gJ2lneC1jYXJkLWNvbnRlbnQnO1xufVxuXG4vKipcbiAqIElneENhcmRGb290ZXIgaXMgY29udGFpbmVyIGZvciB0aGUgY2FyZCBmb290ZXJcbiAqL1xuQERpcmVjdGl2ZSh7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9kaXJlY3RpdmUtc2VsZWN0b3JcbiAgICBzZWxlY3RvcjogJ2lneC1jYXJkLWZvb3RlcicsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBJZ3hDYXJkRm9vdGVyRGlyZWN0aXZlIHtcbiAgICAvKipcbiAgICAgKiBBbiBASW5wdXQgcHJvcGVydHkgdGhhdCBzZXRzIHRoZSB2YWx1ZSBvZiB0aGUgYHJvbGVgIGF0dHJpYnV0ZSBvZiB0aGUgY2FyZCBmb290ZXIuXG4gICAgICogQnkgZGVmYXVsdCB0aGUgdmFsdWUgaXMgc2V0IHRvIGBmb290ZXJgLlxuICAgICAqXG4gICAgICogQGV4YW1wbGVcbiAgICAgKiBgYGBodG1sXG4gICAgICogPGlneC1jYXJkLWZvb3RlciByb2xlPVwiZm9vdGVyXCI+PC9pZ3gtY2FyZC1mb290ZXI+XG4gICAgICogYGBgXG4gICAgICovXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLnJvbGUnKVxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHJvbGUgPSAnZm9vdGVyJztcbn1cblxuLyoqXG4gKiBDYXJkIHByb3ZpZGVzIGEgd2F5IHRvIGRpc3BsYXkgb3JnYW5pemVkIGNvbnRlbnQgaW4gYXBwZWFsaW5nIHdheS5cbiAqXG4gKiBAaWd4TW9kdWxlIElneENhcmRNb2R1bGVcbiAqXG4gKiBAaWd4VGhlbWUgaWd4LWNhcmQtdGhlbWUsIGlneC1pY29uLXRoZW1lLCBpZ3gtYnV0dG9uLXRoZW1lXG4gKlxuICogQGlneEtleXdvcmRzIGNhcmQsIGJ1dHRvbiwgYXZhdGFyLCBpY29uXG4gKlxuICogQGlneEdyb3VwIExheW91dHNcbiAqXG4gKiBAcmVtYXJrc1xuICogVGhlIElnbml0ZSBVSSBDYXJkIHNlcnZlcyBhcyBhIGNvbnRhaW5lciB0aGF0IGFsbG93cyBjdXN0b20gY29udGVudCB0byBiZSBvcmdhbml6ZWQgaW4gYW4gYXBwZWFsaW5nIHdheS4gVGhlcmUgYXJlXG4gKiBmaXZlIHNlY3Rpb25zIGluIGEgY2FyZCB0aGF0IHlvdSBjYW4gdXNlIHRvIG9yZ2FuaXplIHlvdXIgY29udGVudC4gVGhlc2UgYXJlIGhlYWRlciwgbWVkaWEsIGNvbnRlbnQsIGFjdGlvbnMsIGFuZCBmb290ZXIuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGh0bWxcbiAqIDxpZ3gtY2FyZD5cbiAqICAgPGlneC1jYXJkLWhlYWRlcj5cbiAqICAgICA8aDMgaWd4Q2FyZEhlYWRlclRpdGxlPnt7dGl0bGV9fTwvaDM+XG4gKiAgICAgPGg1IGlneENhcmRIZWFkZXJTdWJ0aXRsZT57e3N1YnRpdGxlfX08L2g1PlxuICogICA8L2lneC1jYXJkLWhlYWRlcj5cbiAqICAgPGlneC1jYXJkLWFjdGlvbnM+XG4gKiAgICAgICA8YnV0dG9uIGlneEJ1dHRvbiBpZ3hSaXBwbGU+U2hhcmU8L2J1dHRvbj5cbiAqICAgICAgIDxidXR0b24gaWd4QnV0dG9uIGlneFJpcHBsZT5QbGF5IEFsYnVtPC9idXR0b24+XG4gKiAgIDwvaWd4LWNhcmQtYWN0aW9ucz5cbiAqIDwvaWd4LWNhcmQ+XG4gKiBgYGBcbiAqL1xuXG5leHBvcnQgY29uc3QgSWd4Q2FyZFR5cGUgPSBta2VudW0oe1xuICAgIEVMRVZBVEVEOiAnZWxldmF0ZWQnLFxuICAgIE9VVExJTkVEOiAnb3V0bGluZWQnXG59KTtcbmV4cG9ydCB0eXBlIElneENhcmRUeXBlID0gKHR5cGVvZiBJZ3hDYXJkVHlwZSlba2V5b2YgdHlwZW9mIElneENhcmRUeXBlXTtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdpZ3gtY2FyZCcsXG4gICAgdGVtcGxhdGVVcmw6ICdjYXJkLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIElneENhcmRDb21wb25lbnQge1xuICAgIC8qKlxuICAgICAqIFNldHMvZ2V0cyB0aGUgYGlkYCBvZiB0aGUgY2FyZC5cbiAgICAgKiBJZiBub3Qgc2V0LCBgaWRgIHdpbGwgaGF2ZSB2YWx1ZSBgXCJpZ3gtY2FyZC0wXCJgO1xuICAgICAqXG4gICAgICogQGV4YW1wbGVcbiAgICAgKiBgYGBodG1sXG4gICAgICogPGlneC1jYXJkIGlkID0gXCJteS1maXJzdC1jYXJkXCI+PC9pZ3gtY2FyZD5cbiAgICAgKiBgYGBcbiAgICAgKiBgYGB0eXBlc2NyaXB0XG4gICAgICogbGV0IGNhcmRJZCA9ICB0aGlzLmNhcmQuaWQ7XG4gICAgICogYGBgXG4gICAgICovXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmlkJylcbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBpZCA9IGBpZ3gtY2FyZC0ke05FWFRfSUQrK31gO1xuXG4gICAgLyoqXG4gICAgICogQW4gQElucHV0IHByb3BlcnR5IHRoYXQgc2V0cyB0aGUgdmFsdWUgb2YgdGhlIGByb2xlYCBhdHRyaWJ1dGUgb2YgdGhlIGNhcmQuXG4gICAgICogQnkgZGVmYXVsdCB0aGUgdmFsdWUgaXMgc2V0IHRvIGBncm91cGAuXG4gICAgICpcbiAgICAgKiBAZXhhbXBsZVxuICAgICAqIGBgYGh0bWxcbiAgICAgKiA8aWd4LWNhcmQgcm9sZT1cImdyb3VwXCI+PC9pZ3gtY2FyZD5cbiAgICAgKiBgYGBcbiAgICAgKi9cbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIucm9sZScpXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgcm9sZSA9ICdncm91cCc7XG5cbiAgICAvKipcbiAgICAgKiBBbiBASW5wdXQgcHJvcGVydHkgdGhhdCBzZXRzIHRoZSB2YWx1ZSBvZiB0aGUgYHR5cGVgIGF0dHJpYnV0ZSBvZiB0aGUgY2FyZC5cbiAgICAgKiBCeSBkZWZhdWx0IHRoZSB2YWx1ZSBpcyBzZXQgdG8gYGVsZXZhdGVkYC4gWW91IGNhbiBtYWtlIHRoZSBjYXJkIHVzZSB0aGVcbiAgICAgKiBvdXRsaW5lZCBzdHlsZSBieSBzZXR0aW5nIHRoZSB2YWx1ZSB0byBgb3V0bGluZWRgLlxuICAgICAqXG4gICAgICogQGV4YW1wbGVcbiAgICAgKiBgYGBodG1sXG4gICAgICogPGlneC1jYXJkIHR5cGU9XCJvdXRsaW5lZFwiPjwvaWd4LWNhcmQ+XG4gICAgICogYGBgXG4gICAgICovXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pZ3gtY2FyZCcpXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgdHlwZTogSWd4Q2FyZFR5cGUgfCBzdHJpbmcgPSBJZ3hDYXJkVHlwZS5FTEVWQVRFRDtcblxuICAgIC8qKlxuICAgICAqIEEgZ2V0dGVyIHdoaWNoIHdpbGwgcmV0dXJuIHRydWUgaWYgdGhlIGNhcmQgdHlwZSBpcyBgb3V0bGluZWRgLlxuICAgICAqL1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MuaWd4LWNhcmQtLW91dGxpbmVkJylcbiAgICBwdWJsaWMgZ2V0IGlzT3V0bGluZWRDYXJkKCkge1xuICAgICAgICByZXR1cm4gdGhpcy50eXBlID09PSBJZ3hDYXJkVHlwZS5PVVRMSU5FRDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBbiBASW5wdXQgcHJvcGVydHkgdGhhdCBzZXRzIHRoZSB2YWx1ZSBvZiB0aGUgYGhvcml6b250YWxgIGF0dHJpYnV0ZSBvZiB0aGUgY2FyZC5cbiAgICAgKiBTZXR0aW5nIHRoaXMgdG8gYHRydWVgIHdpbGwgbWFrZSB0aGUgZGlmZmVyZW50IGNhcmQgc2VjdGlvbnMgYWxpZ24gaG9yaXpvbnRhbGx5LFxuICAgICAqIGVzc2VudGlhbGx5IGZsaXBwaW5nIHRoZSBjYXJkIHRvIHRoZSBzaWRlLlxuICAgICAqXG4gICAgICogQGV4YW1wbGVcbiAgICAgKiBgYGBodG1sXG4gICAgICogPGlneC1jYXJkIFtob3Jpem9udGFsXT1cInRydWVcIj48L2lneC1jYXJkPlxuICAgICAqIGBgYFxuICAgICAqL1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MuaWd4LWNhcmQtLWhvcml6b250YWwnKVxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGhvcml6b250YWwgPSBmYWxzZTtcbn1cblxuZXhwb3J0IGNvbnN0IElneENhcmRBY3Rpb25zTGF5b3V0ID0gbWtlbnVtKHtcbiAgICBTVEFSVDogJ3N0YXJ0JyxcbiAgICBKVVNUSUZZOiAnanVzdGlmeSdcbn0pO1xuZXhwb3J0IHR5cGUgSWd4Q2FyZEFjdGlvbnNMYXlvdXQgPSAodHlwZW9mIElneENhcmRBY3Rpb25zTGF5b3V0KVtrZXlvZiB0eXBlb2YgSWd4Q2FyZEFjdGlvbnNMYXlvdXRdO1xuXG4vKipcbiAqIElneENhcmRBY3Rpb25zIGlzIGNvbnRhaW5lciBmb3IgdGhlIGNhcmQgYWN0aW9ucy5cbiAqL1xuQENvbXBvbmVudCh7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9kaXJlY3RpdmUtc2VsZWN0b3JcbiAgICBzZWxlY3RvcjogJ2lneC1jYXJkLWFjdGlvbnMnLFxuICAgIHRlbXBsYXRlVXJsOiAnY2FyZC1hY3Rpb25zLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIElneENhcmRBY3Rpb25zQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICAgIC8qKlxuICAgICAqIEFuIEBJbnB1dCBwcm9wZXJ0eSB0aGF0IHNldHMgdGhlIGxheW91dCBzdHlsZSBvZiB0aGUgYWN0aW9ucy5cbiAgICAgKiBZb3UgY2FuIGp1c3RpZnkgdGhlIGVsZW1lbnRzIHNsb3R0ZWQgaW4gdGhlIGlneC1jYXJkLWFjdGlvbiBjb250YWluZXJcbiAgICAgKiBzbyB0aGF0IHRoZXkgYXJlIHBvc2l0aW9uZWQgZXF1YWxseSBmcm9tIG9uZSBhbm90aGVyIHRha2luZyB1cCBhbGwgdGhlXG4gICAgICogc3BhY2UgYXZhaWxhYmxlIGFsb25nIHRoZSBjYXJkIGFjdGlvbnMgYXhpcy5cbiAgICAgKlxuICAgICAqIEBleGFtcGxlXG4gICAgICogYGBgaHRtbFxuICAgICAqIDxpZ3gtY2FyZC1hY3Rpb25zIGxheW91dD1cImp1c3RpZnlcIj48L2lneC1jYXJkLWFjdGlvbnM+XG4gICAgICogYGBgXG4gICAgICovXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pZ3gtY2FyZC1hY3Rpb25zJylcbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBsYXlvdXQ6IElneENhcmRBY3Rpb25zTGF5b3V0IHwgc3RyaW5nID0gSWd4Q2FyZEFjdGlvbnNMYXlvdXQuU1RBUlQ7XG5cbiAgICAvKipcbiAgICAgKiBBbiBASW5wdXQgcHJvcGVydHkgdGhhdCBzZXRzIHRoZSB2ZXJ0aWNhbCBhdHRyaWJ1dGUgb2YgdGhlIGFjdGlvbnMuXG4gICAgICogV2hlbiBzZXQgdG8gYHRydWVgIHRoZSBhY3Rpb25zIHdpbGwgYmUgbGF5ZWQgb3V0IHZlcnRpY2FsbHkuXG4gICAgICovXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pZ3gtY2FyZC1hY3Rpb25zLS12ZXJ0aWNhbCcpXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgdmVydGljYWwgPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIEEgZ2V0dGVyIHRoYXQgcmV0dXJucyBgdHJ1ZWAgd2hlbiB0aGUgbGF5b3V0IGhhcyBiZWVuXG4gICAgICogc2V0IHRvIGBqdXN0aWZ5YC5cbiAgICAgKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmlneC1jYXJkLWFjdGlvbnMtLWp1c3RpZnknKVxuICAgIHB1YmxpYyBnZXQgaXNKdXN0aWZ5TGF5b3V0KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5sYXlvdXQgPT09IElneENhcmRBY3Rpb25zTGF5b3V0LkpVU1RJRlk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGRlcHJlY2F0ZWQgaW4gdmVyc2lvbiAxNS4xLjAuXG4gICAgICpcbiAgICAgKiBBbiBASW5wdXQgcHJvcGVydHkgdGhhdCByZXZlcnNlcyB0aGUgb3JkZXIgb2YgdGhlIGJ1dHRvbnMgaW4gdGhlIGFjdGlvbnMgYXJlYS5cbiAgICAgKlxuICAgICAqIEBleGFtcGxlXG4gICAgICogYGBgaHRtbFxuICAgICAqIDxpZ3gtY2FyZC1hY3Rpb25zIFtyZXZlcnNlXT1cInRydWVcIj48L2lneC1jYXJkLWFjdGlvbnM+XG4gICAgICogYGBgXG4gICAgICovXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pZ3gtY2FyZC1hY3Rpb25zLS1yZXZlcnNlJylcbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyByZXZlcnNlID0gZmFsc2U7XG5cbiAgICBwcml2YXRlIGlzVmVydGljYWxTZXQgPSBmYWxzZTtcblxuICAgIGNvbnN0cnVjdG9yKEBPcHRpb25hbCgpIEBJbmplY3QoSWd4Q2FyZENvbXBvbmVudCkgcHVibGljIGNhcmQ6IElneENhcmRDb21wb25lbnQpIHsgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIEBpbnRlcm5hbFxuICAgICAqL1xuICAgIHB1YmxpYyBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgICAgIGZvciAoY29uc3QgcHJvcCBpbiBjaGFuZ2VzKSB7XG4gICAgICAgICAgICBpZiAocHJvcCA9PT0gJ3ZlcnRpY2FsJykge1xuICAgICAgICAgICAgICAgIHRoaXMuaXNWZXJ0aWNhbFNldCA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogQGludGVybmFsXG4gICAgICovXG4gICAgcHVibGljIG5nT25Jbml0KCkge1xuICAgICAgICBpZiAoIXRoaXMuaXNWZXJ0aWNhbFNldCAmJiB0aGlzLmNhcmQuaG9yaXpvbnRhbCkge1xuICAgICAgICAgICAgdGhpcy52ZXJ0aWNhbCA9IHRydWU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiIsIjxkaXYgY2xhc3M9XCJpZ3gtY2FyZC1oZWFkZXJfX3RodW1ibmFpbFwiPlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImlneC1hdmF0YXIsIGlneC1jYXJkLW1lZGlhLCBbaWd4Q2FyZFRodW1ibmFpbF1cIj48L25nLWNvbnRlbnQ+XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cImlneC1jYXJkLWhlYWRlcl9fdGl0bGVzXCI+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiXG4gICAgICAgIFtpZ3hDYXJkSGVhZGVyVGl0bGVdLFxuICAgICAgICBbaWd4Q2FyZEhlYWRlclN1YnRpdGxlXSxcbiAgICAgICAgLmlneC1jYXJkLWhlYWRlcl9fdGl0bGUsXG4gICAgICAgIC5pZ3gtY2FyZC1oZWFkZXJfX3N1YnRpdGxlXCI+XG4gICAgPC9uZy1jb250ZW50PlxuPC9kaXY+XG5cbjxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiIsIjxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiIsIjxkaXYgI2J1dHRvbnMgY2xhc3M9XCJpZ3gtY2FyZC1hY3Rpb25zX19zdGFydFwiPlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltpZ3hTdGFydF0sIFtpZ3hCdXR0b25dOm5vdChbaWd4QnV0dG9uPSdpY29uJ10pOm5vdChbaWd4RW5kXSlcIj48L25nLWNvbnRlbnQ+XG48L2Rpdj5cblxuPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuXG48ZGl2IGNsYXNzPVwiaWd4LWNhcmQtYWN0aW9uc19fZW5kXCI+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2lneEVuZF0sIFtpZ3hCdXR0b249J2ljb24nXTpub3QoW2lneFN0YXJ0XSksIGlneC1pY29uOm5vdChbaWd4U3RhcnRdKVwiPjwvbmctY29udGVudD5cbjwvZGl2PlxuIl19
|