@fundamental-ngx/platform 0.48.0-rc.9 → 0.48.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/approval-flow/approval-flow-node/approval-flow-node.component.d.ts +0 -2
- package/button/button.component.d.ts +7 -8
- package/dynamic-page/dynamic-page.component.d.ts +24 -15
- package/dynamic-page/dynamic-page.tokens.d.ts +3 -0
- package/dynamic-page/index.d.ts +2 -1
- package/dynamic-page/platform-dynamic-page.interface.d.ts +22 -0
- package/esm2022/approval-flow/approval-flow-add-node/approval-flow-add-node.component.mjs +4 -4
- package/esm2022/approval-flow/approval-flow-approver-details/approval-flow-approver-details.component.mjs +4 -4
- package/esm2022/approval-flow/approval-flow-messages/approval-flow-messages.component.mjs +3 -3
- package/esm2022/approval-flow/approval-flow-node/approval-flow-drop-zone.directive.mjs +3 -3
- package/esm2022/approval-flow/approval-flow-node/approval-flow-node.component.mjs +5 -7
- package/esm2022/approval-flow/approval-flow-select-type/approval-flow-select-type.component.mjs +3 -3
- package/esm2022/approval-flow/approval-flow-team-list/approval-flow-team-list.component.mjs +3 -3
- package/esm2022/approval-flow/approval-flow-toolbar-actions/approval-flow-toolbar-actions.component.mjs +3 -3
- package/esm2022/approval-flow/approval-flow-user-details/approval-flow-user-details.component.mjs +3 -3
- package/esm2022/approval-flow/approval-flow-user-list/approval-flow-user-list.component.mjs +3 -3
- package/esm2022/approval-flow/approval-flow.component.mjs +5 -5
- package/esm2022/approval-flow/approval-flow.module.mjs +4 -4
- package/esm2022/approval-flow/services/approval-flow-add-node-view.service.mjs +3 -3
- package/esm2022/button/button.component.mjs +14 -15
- package/esm2022/button/button.module.mjs +4 -4
- package/esm2022/dynamic-page/directives/dynamic-page-header-subtitle.directive.mjs +3 -3
- package/esm2022/dynamic-page/directives/dynamic-page-header-title.directive.mjs +3 -3
- package/esm2022/dynamic-page/dynamic-page-content/dynamic-page-content-host.component.mjs +3 -3
- package/esm2022/dynamic-page/dynamic-page-content/dynamic-page-content.component.mjs +3 -3
- package/esm2022/dynamic-page/dynamic-page-footer/dynamic-page-footer.component.mjs +3 -3
- package/esm2022/dynamic-page/dynamic-page-header/actions/global-actions/dynamic-page-global-actions.component.mjs +3 -3
- package/esm2022/dynamic-page/dynamic-page-header/actions/layout-actions/dynamic-page-layout-actions.component.mjs +3 -3
- package/esm2022/dynamic-page/dynamic-page-header/header/dynamic-page-header.component.mjs +3 -3
- package/esm2022/dynamic-page/dynamic-page-header/key-info/dynamic-page-key-info.component.mjs +3 -3
- package/esm2022/dynamic-page/dynamic-page-header/title/dynamic-page-title-image.component.mjs +3 -3
- package/esm2022/dynamic-page/dynamic-page-header/title/dynamic-page-title.component.mjs +3 -3
- package/esm2022/dynamic-page/dynamic-page.component.mjs +48 -35
- package/esm2022/dynamic-page/dynamic-page.config.mjs +3 -3
- package/esm2022/dynamic-page/dynamic-page.module.mjs +4 -4
- package/esm2022/dynamic-page/dynamic-page.tokens.mjs +3 -0
- package/esm2022/dynamic-page/index.mjs +3 -2
- package/esm2022/dynamic-page/platform-dynamic-page.interface.mjs +2 -0
- package/esm2022/feed-input/feed-input.component.mjs +6 -6
- package/esm2022/feed-input/feed-input.module.mjs +4 -4
- package/esm2022/form/auto-complete/auto-complete.directive.mjs +3 -3
- package/esm2022/form/auto-complete/auto-complete.module.mjs +4 -4
- package/esm2022/form/checkbox/checkbox.component.mjs +11 -43
- package/esm2022/form/checkbox/checkbox.module.mjs +4 -4
- package/esm2022/form/checkbox-group/checkbox-group.component.mjs +21 -63
- package/esm2022/form/checkbox-group/checkbox-group.module.mjs +4 -4
- package/esm2022/form/combobox/combobox/combobox.component.mjs +33 -63
- package/esm2022/form/combobox/combobox-mobile/combobox/combobox-mobile.component.mjs +15 -22
- package/esm2022/form/combobox/combobox-mobile/combobox-mobile.module.mjs +4 -4
- package/esm2022/form/combobox/combobox.config.mjs +3 -3
- package/esm2022/form/combobox/combobox.module.mjs +4 -4
- package/esm2022/form/combobox/commons/base-combobox.mjs +24 -58
- package/esm2022/form/combobox/directives/combobox-item.directive.mjs +15 -15
- package/esm2022/form/date-picker/date-picker.component.mjs +21 -57
- package/esm2022/form/date-picker/date-picker.module.mjs +4 -4
- package/esm2022/form/datetime-picker/datetime-picker.component.mjs +22 -60
- package/esm2022/form/datetime-picker/datetime-picker.module.mjs +4 -4
- package/esm2022/form/form-generator/base-dynamic-form-generator-control.mjs +3 -3
- package/esm2022/form/form-generator/controls/dynamic-form-generator-checkbox/dynamic-form-generator-checkbox.component.mjs +5 -9
- package/esm2022/form/form-generator/controls/dynamic-form-generator-datepicker/dynamic-form-generator-datepicker.component.mjs +5 -9
- package/esm2022/form/form-generator/controls/dynamic-form-generator-editor/dynamic-form-generator-editor.component.mjs +5 -9
- package/esm2022/form/form-generator/controls/dynamic-form-generator-input/dynamic-form-generator-input.component.mjs +5 -9
- package/esm2022/form/form-generator/controls/dynamic-form-generator-multi-input/dynamic-form-generator-multi-input.component.mjs +5 -9
- package/esm2022/form/form-generator/controls/dynamic-form-generator-object-status/dynamic-form-generator-object-status.component.mjs +4 -4
- package/esm2022/form/form-generator/controls/dynamic-form-generator-radio/dynamic-form-generator-radio.component.mjs +5 -9
- package/esm2022/form/form-generator/controls/dynamic-form-generator-select/dynamic-form-generator-select.component.mjs +5 -9
- package/esm2022/form/form-generator/controls/dynamic-form-generator-switch/dynamic-form-generator-switch.component.mjs +5 -9
- package/esm2022/form/form-generator/dynamic-form-control-field.directive.mjs +3 -3
- package/esm2022/form/form-generator/dynamic-form-control.directive.mjs +3 -3
- package/esm2022/form/form-generator/fdp-form-generator.module.mjs +4 -4
- package/esm2022/form/form-generator/form-generator/form-generator.component.mjs +27 -13
- package/esm2022/form/form-generator/form-generator-components-accessor.service.mjs +3 -3
- package/esm2022/form/form-generator/form-generator-field/form-generator-field.component.mjs +3 -3
- package/esm2022/form/form-generator/form-generator.service.mjs +11 -16
- package/esm2022/form/form-generator/interfaces/dynamic-form-item.mjs +1 -1
- package/esm2022/form/form-generator/pipes/get-hint-options.pipe.mjs +3 -3
- package/esm2022/form/form-generator/pipes/get-ordered-form-controls.pipe.mjs +3 -3
- package/esm2022/form/form-group/fdp-form.module.mjs +4 -4
- package/esm2022/form/form-group/form-field/form-field.component.mjs +40 -47
- package/esm2022/form/form-group/form-field-error/form-field-error-description.directive.mjs +3 -3
- package/esm2022/form/form-group/form-field-error/form-field-error-heading.directive.mjs +3 -3
- package/esm2022/form/form-group/form-field-error/form-field-error.directive.mjs +3 -3
- package/esm2022/form/form-group/form-field-extras/form-field-extras.component.mjs +3 -3
- package/esm2022/form/form-group/form-field-group/form-field-group.component.mjs +4 -4
- package/esm2022/form/form-group/form-group-header/form-group-header.component.mjs +3 -3
- package/esm2022/form/form-group/form-group.component.mjs +40 -50
- package/esm2022/form/form-group/pipes/field-group-row-value.pipe.mjs +3 -3
- package/esm2022/form/form-group/services/form-field-layout.service.mjs +3 -3
- package/esm2022/form/input/fdp-input.module.mjs +4 -4
- package/esm2022/form/input/input.component.mjs +16 -48
- package/esm2022/form/input-group/addon-body.component.mjs +4 -5
- package/esm2022/form/input-group/addon.component.mjs +3 -3
- package/esm2022/form/input-group/input-group.component.mjs +13 -46
- package/esm2022/form/input-group/input-group.config.mjs +3 -3
- package/esm2022/form/input-group/input-group.module.mjs +4 -4
- package/esm2022/form/input-group/input.component.mjs +3 -3
- package/esm2022/form/input-message-group-with-template/input-message-group-with-template.component.mjs +3 -3
- package/esm2022/form/multi-combobox/commons/base-multi-combobox.mjs +64 -102
- package/esm2022/form/multi-combobox/multi-combobox/multi-combobox.component.mjs +25 -71
- package/esm2022/form/multi-combobox/multi-combobox-mobile/multi-combobox/multi-combobox-mobile.component.mjs +18 -26
- package/esm2022/form/multi-combobox/multi-combobox-mobile/multi-combobox-mobile.module.mjs +4 -4
- package/esm2022/form/multi-combobox/multi-combobox.config.mjs +3 -3
- package/esm2022/form/multi-combobox/multi-combobox.interface.mjs +1 -1
- package/esm2022/form/multi-combobox/multi-combobox.module.mjs +4 -4
- package/esm2022/form/multi-input/base-multi-input.mjs +43 -83
- package/esm2022/form/multi-input/multi-input-mobile/multi-input-mobile.component.mjs +13 -21
- package/esm2022/form/multi-input/multi-input-mobile/multi-input-mobile.module.mjs +4 -4
- package/esm2022/form/multi-input/multi-input.component.mjs +32 -91
- package/esm2022/form/multi-input/multi-input.config.mjs +3 -3
- package/esm2022/form/multi-input/multi-input.module.mjs +4 -4
- package/esm2022/form/radio-group/radio/radio.component.mjs +12 -44
- package/esm2022/form/radio-group/radio-group.component.mjs +32 -74
- package/esm2022/form/radio-group/radio-group.module.mjs +4 -4
- package/esm2022/form/select/commons/base-select.mjs +59 -101
- package/esm2022/form/select/select/select.component.mjs +17 -60
- package/esm2022/form/select/select.config.mjs +3 -3
- package/esm2022/form/select/select.module.mjs +4 -4
- package/esm2022/form/step-input/base.step-input.mjs +72 -85
- package/esm2022/form/step-input/number/number-step-input.component.mjs +14 -53
- package/esm2022/form/step-input/step-input-action-button.mjs +9 -13
- package/esm2022/form/step-input/step-input-control.directive.mjs +3 -3
- package/esm2022/form/step-input/step-input-decrement.directive.mjs +9 -13
- package/esm2022/form/step-input/step-input-increment.directive.mjs +9 -13
- package/esm2022/form/step-input/step-input.config.mjs +3 -3
- package/esm2022/form/step-input/step-input.module.mjs +4 -4
- package/esm2022/form/switch/switch/switch.component.mjs +12 -49
- package/esm2022/form/switch/switch/switch.config.mjs +3 -3
- package/esm2022/form/switch/switch.module.mjs +4 -4
- package/esm2022/form/text-area/text-area.component.mjs +14 -45
- package/esm2022/form/text-area/text-area.config.mjs +3 -3
- package/esm2022/form/text-area/text-area.module.mjs +4 -4
- package/esm2022/form/time-picker/time-picker.component.mjs +11 -42
- package/esm2022/form/time-picker/time-picker.module.mjs +4 -4
- package/esm2022/fundamental-ngx.module.mjs +4 -4
- package/esm2022/icon-tab-bar/components/closable-icon-tab-bar.class.mjs +6 -6
- package/esm2022/icon-tab-bar/components/icon-tab-bar-base.class.mjs +85 -90
- package/esm2022/icon-tab-bar/components/icon-tab-bar-filter-type/icon-tab-bar-filter-type.component.mjs +21 -9
- package/esm2022/icon-tab-bar/components/icon-tab-bar-icon-type/icon-tab-bar-icon-type.component.mjs +26 -9
- package/esm2022/icon-tab-bar/components/icon-tab-bar-process-type/icon-tab-bar-process-type.component.mjs +40 -26
- package/esm2022/icon-tab-bar/components/icon-tab-bar-tab/icon-tab-bar-tab.component.mjs +76 -0
- package/esm2022/icon-tab-bar/components/icon-tab-bar-text-type/icon-tab-bar-text-type.component.mjs +28 -16
- package/esm2022/icon-tab-bar/components/popovers/icon-tab-bar-popover/icon-tab-bar-popover.component.mjs +14 -5
- package/esm2022/icon-tab-bar/components/popovers/icon-tab-bar-popover-base.class.mjs +3 -3
- package/esm2022/icon-tab-bar/components/popovers/text-type-popover/text-type-popover.component.mjs +5 -5
- package/esm2022/icon-tab-bar/directives/dnd/icon-bar-dnd-container.directive.mjs +12 -21
- package/esm2022/icon-tab-bar/directives/dnd/icon-bar-dnd-item.directive.mjs +10 -12
- package/esm2022/icon-tab-bar/directives/dnd/icon-bar-dnd-list.directive.mjs +10 -11
- package/esm2022/icon-tab-bar/directives/icon-tab-bar-free-content.directive.mjs +14 -0
- package/esm2022/icon-tab-bar/icon-tab-bar.component.mjs +208 -27
- package/esm2022/icon-tab-bar/icon-tab-bar.module.mjs +19 -9
- package/esm2022/icon-tab-bar/index.mjs +3 -1
- package/esm2022/icon-tab-bar/interfaces/tab-config.interface.mjs +1 -1
- package/esm2022/info-label/info-label.component.mjs +6 -4
- package/esm2022/info-label/info-label.module.mjs +4 -4
- package/esm2022/link/link.component.mjs +15 -23
- package/esm2022/link/link.module.mjs +4 -4
- package/esm2022/list/action-list-item/action-list-item.component.mjs +5 -5
- package/esm2022/list/action-list-item/action-list-item.module.mjs +4 -4
- package/esm2022/list/base-list-item.mjs +20 -22
- package/esm2022/list/display-list-item/display-list-item.component.mjs +5 -5
- package/esm2022/list/display-list-item/display-list-item.module.mjs +4 -4
- package/esm2022/list/free-content-list-item/free-content-list-item.component.mjs +5 -5
- package/esm2022/list/list-group-footer.component.mjs +5 -5
- package/esm2022/list/list-group-header.component.mjs +7 -7
- package/esm2022/list/list.component.mjs +25 -66
- package/esm2022/list/list.config.mjs +3 -3
- package/esm2022/list/list.module.mjs +4 -4
- package/esm2022/list/load-more-content.directive.mjs +3 -3
- package/esm2022/list/object-list-item/object-list-item-row.component.mjs +6 -6
- package/esm2022/list/object-list-item/object-list-item.component.mjs +5 -5
- package/esm2022/list/object-list-item/object-list-item.module.mjs +4 -4
- package/esm2022/list/standard-list-item/standard-list-item.component.mjs +5 -5
- package/esm2022/list/standard-list-item/standard-list-item.module.mjs +4 -4
- package/esm2022/menu/menu-item.component.mjs +5 -5
- package/esm2022/menu/menu-trigger.directive.mjs +3 -3
- package/esm2022/menu/menu.component.mjs +5 -6
- package/esm2022/menu/menu.module.mjs +4 -4
- package/esm2022/menu-button/menu-button.component.mjs +14 -9
- package/esm2022/menu-button/menu-button.module.mjs +4 -4
- package/esm2022/message-popover/components/message-popover-form-wrapper/message-popover-form-wrapper.component.mjs +11 -14
- package/esm2022/message-popover/components/message-view/message-view.component.mjs +4 -4
- package/esm2022/message-popover/directives/message-popover-form-item.directive.mjs +3 -3
- package/esm2022/message-popover/message-popover.component.mjs +53 -54
- package/esm2022/message-popover/models/message-popover-wrapper.interface.mjs +1 -1
- package/esm2022/message-popover/platform-message-popover.module.mjs +4 -4
- package/esm2022/object-marker/object-marker.component.mjs +10 -5
- package/esm2022/object-marker/object-marker.module.mjs +4 -4
- package/esm2022/object-status/object-status.component.mjs +13 -8
- package/esm2022/object-status/object-status.module.mjs +4 -4
- package/esm2022/page-footer/page-footer.component.mjs +8 -10
- package/esm2022/page-footer/page-footer.module.mjs +4 -4
- package/esm2022/panel/panel-actions.component.mjs +3 -3
- package/esm2022/panel/panel-content/panel-content.component.mjs +3 -3
- package/esm2022/panel/panel.component.mjs +8 -9
- package/esm2022/panel/panel.config.mjs +3 -3
- package/esm2022/panel/panel.module.mjs +4 -4
- package/esm2022/search-field/search-field-mobile/search-field/search-field-mobile.component.mjs +12 -22
- package/esm2022/search-field/search-field.component.mjs +36 -42
- package/esm2022/search-field/search-field.module.mjs +4 -4
- package/esm2022/settings-generator/controls/theme-selector-list/theme-selector-list.component.mjs +6 -6
- package/esm2022/settings-generator/default-config.mjs +2 -2
- package/esm2022/settings-generator/layouts/base-settings-generator-layout.mjs +3 -3
- package/esm2022/settings-generator/layouts/settings-generator-sidebar-layout/settings-generator-sidebar-icon/settings-generator-sidebar-icon.component.mjs +3 -3
- package/esm2022/settings-generator/layouts/settings-generator-sidebar-layout/settings-generator-sidebar-layout.component.mjs +3 -3
- package/esm2022/settings-generator/models/settings.model.mjs +1 -1
- package/esm2022/settings-generator/settings-generator-content/settings-generator-content.component.mjs +34 -28
- package/esm2022/settings-generator/settings-generator-content/settings-generator-section/settings-generator-section.component.mjs +4 -5
- package/esm2022/settings-generator/settings-generator-layout-accessor.service.mjs +3 -3
- package/esm2022/settings-generator/settings-generator.component.mjs +6 -6
- package/esm2022/settings-generator/settings-generator.module.mjs +4 -4
- package/esm2022/settings-generator/settings-generator.service.mjs +12 -13
- package/esm2022/shared/base.mjs +30 -18
- package/esm2022/shared/form/base.input.mjs +70 -69
- package/esm2022/shared/form/collection-base.input.mjs +7 -49
- package/esm2022/shared/form/inline-layout-collection-base.input.mjs +25 -66
- package/esm2022/shared/pipes/convert-bytes/convert-bytes.pipe.mjs +3 -3
- package/esm2022/shared/pipes/pipe.module.mjs +4 -4
- package/esm2022/shared/platform.config.mjs +3 -3
- package/esm2022/slider/slider.component.mjs +11 -43
- package/esm2022/slider/slider.module.mjs +4 -4
- package/esm2022/smart-filter-bar/components/smart-filter-bar-condition-field/base-smart-filter-bar-condition-field.mjs +11 -14
- package/esm2022/smart-filter-bar/components/smart-filter-bar-condition-field/smart-filter-bar-condition-field.component.mjs +8 -16
- package/esm2022/smart-filter-bar/components/smart-filter-bar-conditions-dialog/smart-filter-bar-conditions-dialog.component.mjs +6 -6
- package/esm2022/smart-filter-bar/components/smart-filter-bar-settings-dialog/smart-filter-bar-settings-dialog.component.mjs +13 -18
- package/esm2022/smart-filter-bar/directives/smart-filter-bar-field-definition.directive.mjs +22 -47
- package/esm2022/smart-filter-bar/directives/smart-filter-bar-subject.directive.mjs +12 -10
- package/esm2022/smart-filter-bar/directives/smart-filter-bar-toolbar-item.directive.mjs +3 -3
- package/esm2022/smart-filter-bar/smart-filter-bar.class.mjs +3 -3
- package/esm2022/smart-filter-bar/smart-filter-bar.component.mjs +73 -57
- package/esm2022/smart-filter-bar/smart-filter-bar.module.mjs +4 -4
- package/esm2022/smart-filter-bar/smart-filter-bar.service.mjs +3 -3
- package/esm2022/split-menu-button/split-menu-button.component.mjs +17 -24
- package/esm2022/split-menu-button/split-menu-button.module.mjs +4 -4
- package/esm2022/table/components/no-data-wrapper/no-data-wrapper.component.mjs +3 -3
- package/esm2022/table/components/reset-button/reset-button.component.mjs +8 -9
- package/esm2022/table/components/table-cell-header-popover/table-cell-header-popover.component.mjs +10 -9
- package/esm2022/table/components/table-column/table-column.component.mjs +3 -3
- package/esm2022/table/components/table-column-resizer/table-column-resizer.component.mjs +11 -14
- package/esm2022/table/components/table-editable-cell/table-editable-cell.component.mjs +4 -4
- package/esm2022/table/components/table-group-row/table-group-row.component.mjs +6 -10
- package/esm2022/table/components/table-header-cell-content/table-header-cell-content.component.mjs +31 -15
- package/esm2022/table/components/table-header-row/table-header-row.component.mjs +19 -24
- package/esm2022/table/components/table-p13-dialog/columns/columns.component.mjs +9 -11
- package/esm2022/table/components/table-p13-dialog/filtering/filter-rule.component.mjs +4 -4
- package/esm2022/table/components/table-p13-dialog/filtering/filtering.component.mjs +8 -11
- package/esm2022/table/components/table-p13-dialog/grouping/grouping.component.mjs +8 -11
- package/esm2022/table/components/table-p13-dialog/sorting/sorting.component.mjs +11 -14
- package/esm2022/table/components/table-p13-dialog/table-p13-columns.component.mjs +3 -3
- package/esm2022/table/components/table-p13-dialog/table-p13-dialog.component.mjs +3 -3
- package/esm2022/table/components/table-p13-dialog/table-p13-filter.component.mjs +3 -3
- package/esm2022/table/components/table-p13-dialog/table-p13-group.component.mjs +3 -3
- package/esm2022/table/components/table-p13-dialog/table-p13-sort.component.mjs +3 -3
- package/esm2022/table/components/table-popping-row/table-popping-row.component.mjs +7 -8
- package/esm2022/table/components/table-row/table-row.component.mjs +12 -17
- package/esm2022/table/components/table-toolbar/table-toolbar-actions.component.mjs +3 -3
- package/esm2022/table/components/table-toolbar/table-toolbar-left-actions.component.mjs +3 -3
- package/esm2022/table/components/table-toolbar/table-toolbar.component.mjs +38 -23
- package/esm2022/table/components/table-view-settings-dialog/filtering/filter-custom.component.mjs +3 -3
- package/esm2022/table/components/table-view-settings-dialog/filtering/filter-multi-select.component.mjs +3 -3
- package/esm2022/table/components/table-view-settings-dialog/filtering/filter-single-select.component.mjs +3 -3
- package/esm2022/table/components/table-view-settings-dialog/filtering/filter-step.component.mjs +4 -4
- package/esm2022/table/components/table-view-settings-dialog/filtering/filters-list-step.component.mjs +4 -4
- package/esm2022/table/components/table-view-settings-dialog/filtering/filters.component.mjs +8 -11
- package/esm2022/table/components/table-view-settings-dialog/grouping/grouping.component.mjs +9 -12
- package/esm2022/table/components/table-view-settings-dialog/sorting/sorting.component.mjs +9 -12
- package/esm2022/table/components/table-view-settings-dialog/table-view-settings-dialog.component.mjs +3 -3
- package/esm2022/table/components/table-view-settings-dialog/table-view-settings-filter.component.mjs +3 -3
- package/esm2022/table/table.component.mjs +138 -62
- package/esm2022/table/table.module.mjs +4 -4
- package/esm2022/table-helpers/directives/platform-table-column-responsive.directive.mjs +3 -3
- package/esm2022/table-helpers/directives/table-cell-header-popover.directive.mjs +4 -4
- package/esm2022/table-helpers/directives/table-cell-resizable.directive.mjs +20 -23
- package/esm2022/table-helpers/directives/table-cell-selectable.directive.mjs +3 -3
- package/esm2022/table-helpers/directives/table-cell.directive.mjs +12 -12
- package/esm2022/table-helpers/directives/table-data-source.directive.mjs +10 -9
- package/esm2022/table-helpers/directives/table-draggable.directive.mjs +3 -3
- package/esm2022/table-helpers/directives/table-header-resizer.directive.mjs +3 -3
- package/esm2022/table-helpers/directives/table-header.directive.mjs +6 -6
- package/esm2022/table-helpers/directives/table-initial-state.directive.mjs +5 -5
- package/esm2022/table-helpers/directives/table-scrollable.directive.mjs +3 -3
- package/esm2022/table-helpers/directives/table-view-settings-filter-custom.directive.mjs +3 -3
- package/esm2022/table-helpers/directives/table-virtual-scroll.directive.mjs +3 -3
- package/esm2022/table-helpers/pipes/cell-styles.pipe.mjs +3 -3
- package/esm2022/table-helpers/pipes/column-resizable-side.pipe.mjs +3 -3
- package/esm2022/table-helpers/pipes/column-sorting-direction.pipe.mjs +3 -3
- package/esm2022/table-helpers/pipes/row-classes.pipe.mjs +3 -3
- package/esm2022/table-helpers/pipes/selection-cell-styles.pipe.mjs +3 -3
- package/esm2022/table-helpers/services/table-column-resize.service.mjs +22 -20
- package/esm2022/table-helpers/services/table-responsive.service.mjs +9 -14
- package/esm2022/table-helpers/services/table-row.service.mjs +3 -3
- package/esm2022/table-helpers/services/table-scroll-dispatcher.service.mjs +3 -3
- package/esm2022/table-helpers/services/table.service.mjs +23 -21
- package/esm2022/table-helpers/table-helpers.module.mjs +4 -4
- package/esm2022/table-helpers/table.mjs +1 -1
- package/esm2022/value-help-dialog/components/base-tab/vhd-base-tab.component.mjs +3 -3
- package/esm2022/value-help-dialog/components/define-tab/define-tab.component.mjs +4 -4
- package/esm2022/value-help-dialog/components/select-tab/select-tab.component.mjs +28 -8
- package/esm2022/value-help-dialog/components/value-help-dialog-filter/value-help-dialog-filter.component.mjs +9 -5
- package/esm2022/value-help-dialog/directives/condition-count-message.directive.mjs +3 -3
- package/esm2022/value-help-dialog/directives/value-help-column-def.directive.mjs +24 -0
- package/esm2022/value-help-dialog/directives/value-help-filter-def.directive.mjs +22 -0
- package/esm2022/value-help-dialog/index.mjs +3 -1
- package/esm2022/value-help-dialog/models/vhd-component.model.mjs +3 -0
- package/esm2022/value-help-dialog/models/vhd-filter.model.mjs +1 -1
- package/esm2022/value-help-dialog/value-help-dialog/value-help-dialog.component.mjs +59 -32
- package/esm2022/value-help-dialog/value-help-dialog.module.mjs +4 -4
- package/esm2022/variant-management/components/manage-variant-item/manage-variant-item.component.mjs +4 -4
- package/esm2022/variant-management/components/manage-variants-dialog/manage-variants-dialog.component.mjs +6 -6
- package/esm2022/variant-management/components/variant-management-wrapper/variant-management-wrapper.component.mjs +3 -3
- package/esm2022/variant-management/directives/variant-management-dirty-label.directive.mjs +3 -3
- package/esm2022/variant-management/variant-management.component.mjs +47 -13
- package/esm2022/variant-management/variant-management.module.mjs +4 -4
- package/esm2022/wizard-generator/base-wizard-generator.mjs +21 -28
- package/esm2022/wizard-generator/components/dialog-wizard-generator/dialog-wizard-generator.component.mjs +19 -19
- package/esm2022/wizard-generator/components/wizard-body/wizard-body.component.mjs +12 -18
- package/esm2022/wizard-generator/components/wizard-generator/wizard-generator.component.mjs +7 -12
- package/esm2022/wizard-generator/components/wizard-generator-step/wizard-generator-step.component.mjs +11 -10
- package/esm2022/wizard-generator/components/wizard-summary-step/wizard-summary-section/wizard-summary-section.component.mjs +4 -4
- package/esm2022/wizard-generator/components/wizard-summary-step/wizard-summary-step.component.mjs +3 -3
- package/esm2022/wizard-generator/directives/wizard-generator-finish-button.directive.mjs +3 -3
- package/esm2022/wizard-generator/directives/wizard-generator-go-next-button.directive.mjs +3 -3
- package/esm2022/wizard-generator/directives/wizard-generator-review-button.directive.mjs +3 -3
- package/esm2022/wizard-generator/directives/wizard-generator-summary-step.directive.mjs +3 -3
- package/esm2022/wizard-generator/wizard-dialog-generator.service.mjs +3 -3
- package/esm2022/wizard-generator/wizard-generator.module.mjs +4 -4
- package/esm2022/wizard-generator/wizard-generator.service.mjs +3 -3
- package/fesm2022/fundamental-ngx-platform-approval-flow.mjs +42 -44
- package/fesm2022/fundamental-ngx-platform-approval-flow.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-button.mjs +16 -17
- package/fesm2022/fundamental-ngx-platform-button.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-dynamic-page.mjs +88 -130
- package/fesm2022/fundamental-ngx-platform-dynamic-page.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-feed-input.mjs +9 -9
- package/fesm2022/fundamental-ngx-platform-feed-input.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-form.mjs +853 -1636
- package/fesm2022/fundamental-ngx-platform-form.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-icon-tab-bar.mjs +532 -220
- package/fesm2022/fundamental-ngx-platform-icon-tab-bar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-info-label.mjs +9 -7
- package/fesm2022/fundamental-ngx-platform-info-label.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-link.mjs +18 -26
- package/fesm2022/fundamental-ngx-platform-link.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-list.mjs +104 -143
- package/fesm2022/fundamental-ngx-platform-list.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-menu-button.mjs +16 -11
- package/fesm2022/fundamental-ngx-platform-menu-button.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-menu.mjs +16 -16
- package/fesm2022/fundamental-ngx-platform-menu.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-message-popover.mjs +71 -74
- package/fesm2022/fundamental-ngx-platform-message-popover.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-object-marker.mjs +13 -8
- package/fesm2022/fundamental-ngx-platform-object-marker.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-object-status.mjs +16 -11
- package/fesm2022/fundamental-ngx-platform-object-status.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-page-footer.mjs +10 -12
- package/fesm2022/fundamental-ngx-platform-page-footer.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-panel.mjs +19 -20
- package/fesm2022/fundamental-ngx-platform-panel.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-search-field.mjs +49 -77
- package/fesm2022/fundamental-ngx-platform-search-field.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-settings-generator.mjs +75 -72
- package/fesm2022/fundamental-ngx-platform-settings-generator.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-shared.mjs +162 -218
- package/fesm2022/fundamental-ngx-platform-shared.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-slider.mjs +12 -44
- package/fesm2022/fundamental-ngx-platform-slider.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-smart-filter-bar.mjs +144 -162
- package/fesm2022/fundamental-ngx-platform-smart-filter-bar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-split-menu-button.mjs +20 -27
- package/fesm2022/fundamental-ngx-platform-split-menu-button.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-table-helpers.mjs +143 -148
- package/fesm2022/fundamental-ngx-platform-table-helpers.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-table.mjs +366 -291
- package/fesm2022/fundamental-ngx-platform-table.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-value-help-dialog.mjs +144 -53
- package/fesm2022/fundamental-ngx-platform-value-help-dialog.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-variant-management.mjs +63 -30
- package/fesm2022/fundamental-ngx-platform-variant-management.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-wizard-generator.mjs +82 -98
- package/fesm2022/fundamental-ngx-platform-wizard-generator.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform.mjs +4 -4
- package/form/checkbox/checkbox.component.d.ts +4 -6
- package/form/checkbox-group/checkbox-group.component.d.ts +3 -8
- package/form/combobox/combobox/combobox.component.d.ts +4 -12
- package/form/combobox/combobox-mobile/combobox/combobox-mobile.component.d.ts +5 -8
- package/form/combobox/commons/base-combobox.d.ts +4 -9
- package/form/date-picker/date-picker.component.d.ts +8 -11
- package/form/datetime-picker/datetime-picker.component.d.ts +9 -11
- package/form/form-generator/controls/dynamic-form-generator-checkbox/dynamic-form-generator-checkbox.component.d.ts +0 -2
- package/form/form-generator/controls/dynamic-form-generator-datepicker/dynamic-form-generator-datepicker.component.d.ts +0 -2
- package/form/form-generator/controls/dynamic-form-generator-editor/dynamic-form-generator-editor.component.d.ts +0 -2
- package/form/form-generator/controls/dynamic-form-generator-input/dynamic-form-generator-input.component.d.ts +0 -2
- package/form/form-generator/controls/dynamic-form-generator-multi-input/dynamic-form-generator-multi-input.component.d.ts +0 -2
- package/form/form-generator/controls/dynamic-form-generator-radio/dynamic-form-generator-radio.component.d.ts +0 -2
- package/form/form-generator/controls/dynamic-form-generator-select/dynamic-form-generator-select.component.d.ts +0 -2
- package/form/form-generator/controls/dynamic-form-generator-switch/dynamic-form-generator-switch.component.d.ts +0 -2
- package/form/form-generator/form-generator/form-generator.component.d.ts +3 -1
- package/form/form-generator/form-generator.service.d.ts +3 -7
- package/form/form-generator/interfaces/dynamic-form-item.d.ts +5 -5
- package/form/form-group/form-field/form-field.component.d.ts +16 -20
- package/form/form-group/form-group.component.d.ts +36 -35
- package/form/input/input.component.d.ts +3 -6
- package/form/input-group/addon-body.component.d.ts +0 -1
- package/form/input-group/input-group.component.d.ts +4 -5
- package/form/multi-combobox/commons/base-multi-combobox.d.ts +13 -16
- package/form/multi-combobox/multi-combobox/multi-combobox.component.d.ts +4 -12
- package/form/multi-combobox/multi-combobox-mobile/multi-combobox/multi-combobox-mobile.component.d.ts +6 -9
- package/form/multi-combobox/multi-combobox.interface.d.ts +3 -3
- package/form/multi-input/base-multi-input.d.ts +10 -15
- package/form/multi-input/multi-input-mobile/multi-input-mobile.component.d.ts +5 -8
- package/form/multi-input/multi-input.component.d.ts +7 -37
- package/form/radio-group/radio/radio.component.d.ts +4 -5
- package/form/radio-group/radio-group.component.d.ts +7 -11
- package/form/select/commons/base-select.d.ts +11 -18
- package/form/select/select/select.component.d.ts +2 -15
- package/form/step-input/base.step-input.d.ts +13 -14
- package/form/step-input/number/number-step-input.component.d.ts +2 -7
- package/form/step-input/step-input-action-button.d.ts +4 -7
- package/form/step-input/step-input-decrement.directive.d.ts +2 -5
- package/form/step-input/step-input-increment.directive.d.ts +2 -5
- package/form/switch/switch/switch.component.d.ts +5 -8
- package/form/text-area/text-area.component.d.ts +4 -5
- package/form/time-picker/time-picker.component.d.ts +4 -5
- package/fundamental-ngx-platform-v0.48.0.tgz +0 -0
- package/icon-tab-bar/components/icon-tab-bar-base.class.d.ts +19 -20
- package/icon-tab-bar/components/icon-tab-bar-icon-type/icon-tab-bar-icon-type.component.d.ts +2 -0
- package/icon-tab-bar/components/icon-tab-bar-tab/icon-tab-bar-tab.component.d.ts +45 -0
- package/icon-tab-bar/components/icon-tab-bar-text-type/icon-tab-bar-text-type.component.d.ts +1 -3
- package/icon-tab-bar/directives/dnd/icon-bar-dnd-container.directive.d.ts +5 -8
- package/icon-tab-bar/directives/dnd/icon-bar-dnd-item.directive.d.ts +1 -1
- package/icon-tab-bar/directives/dnd/icon-bar-dnd-list.directive.d.ts +1 -1
- package/icon-tab-bar/directives/icon-tab-bar-free-content.directive.d.ts +5 -0
- package/icon-tab-bar/icon-tab-bar.component.d.ts +82 -8
- package/icon-tab-bar/icon-tab-bar.module.d.ts +7 -1
- package/icon-tab-bar/index.d.ts +2 -0
- package/icon-tab-bar/interfaces/tab-config.interface.d.ts +13 -5
- package/info-label/info-label.component.d.ts +2 -2
- package/link/link.component.d.ts +4 -7
- package/list/base-list-item.d.ts +4 -6
- package/list/list.component.d.ts +6 -15
- package/menu-button/menu-button.component.d.ts +7 -4
- package/message-popover/components/message-popover-form-wrapper/message-popover-form-wrapper.component.d.ts +2 -4
- package/message-popover/message-popover.component.d.ts +13 -20
- package/message-popover/models/message-popover-wrapper.interface.d.ts +2 -2
- package/object-marker/object-marker.component.d.ts +4 -1
- package/object-status/object-status.component.d.ts +4 -1
- package/package.json +4 -4
- package/page-footer/page-footer.component.d.ts +2 -4
- package/panel/panel.component.d.ts +2 -3
- package/search-field/search-field-mobile/search-field/search-field-mobile.component.d.ts +7 -10
- package/search-field/search-field.component.d.ts +10 -19
- package/settings-generator/models/settings.model.d.ts +7 -6
- package/settings-generator/settings-generator-content/settings-generator-content.component.d.ts +31 -12
- package/settings-generator/settings-generator-content/settings-generator-section/settings-generator-section.component.d.ts +0 -2
- package/settings-generator/settings-generator.component.d.ts +3 -3
- package/settings-generator/settings-generator.service.d.ts +1 -1
- package/shared/base.d.ts +11 -4
- package/shared/form/base.input.d.ts +24 -16
- package/shared/form/collection-base.input.d.ts +1 -9
- package/shared/form/inline-layout-collection-base.input.d.ts +5 -12
- package/slider/slider.component.d.ts +3 -6
- package/smart-filter-bar/components/smart-filter-bar-condition-field/base-smart-filter-bar-condition-field.d.ts +3 -5
- package/smart-filter-bar/components/smart-filter-bar-condition-field/smart-filter-bar-condition-field.component.d.ts +0 -5
- package/smart-filter-bar/components/smart-filter-bar-settings-dialog/smart-filter-bar-settings-dialog.component.d.ts +4 -8
- package/smart-filter-bar/directives/smart-filter-bar-field-definition.directive.d.ts +8 -17
- package/smart-filter-bar/directives/smart-filter-bar-subject.directive.d.ts +2 -0
- package/smart-filter-bar/smart-filter-bar.component.d.ts +28 -22
- package/split-menu-button/split-menu-button.component.d.ts +11 -14
- package/table/components/reset-button/reset-button.component.d.ts +2 -3
- package/table/components/table-cell-header-popover/table-cell-header-popover.component.d.ts +4 -3
- package/table/components/table-column-resizer/table-column-resizer.component.d.ts +4 -5
- package/table/components/table-group-row/table-group-row.component.d.ts +2 -5
- package/table/components/table-header-cell-content/table-header-cell-content.component.d.ts +11 -6
- package/table/components/table-header-row/table-header-row.component.d.ts +1 -3
- package/table/components/table-p13-dialog/columns/columns.component.d.ts +2 -4
- package/table/components/table-p13-dialog/filtering/filtering.component.d.ts +1 -4
- package/table/components/table-p13-dialog/grouping/grouping.component.d.ts +1 -4
- package/table/components/table-p13-dialog/sorting/sorting.component.d.ts +1 -4
- package/table/components/table-row/table-row.component.d.ts +2 -2
- package/table/components/table-toolbar/table-toolbar.component.d.ts +24 -8
- package/table/components/table-view-settings-dialog/filtering/filters.component.d.ts +1 -4
- package/table/components/table-view-settings-dialog/grouping/grouping.component.d.ts +1 -4
- package/table/components/table-view-settings-dialog/sorting/sorting.component.d.ts +1 -4
- package/table/table.component.d.ts +29 -19
- package/table-helpers/directives/table-cell-header-popover.directive.d.ts +2 -3
- package/table-helpers/directives/table-cell-resizable.directive.d.ts +1 -3
- package/table-helpers/directives/table-data-source.directive.d.ts +1 -1
- package/table-helpers/services/table-column-resize.service.d.ts +4 -2
- package/table-helpers/services/table-responsive.service.d.ts +3 -5
- package/table-helpers/services/table.service.d.ts +12 -10
- package/table-helpers/table.d.ts +1 -0
- package/value-help-dialog/components/select-tab/select-tab.component.d.ts +9 -2
- package/value-help-dialog/components/value-help-dialog-filter/value-help-dialog-filter.component.d.ts +5 -1
- package/value-help-dialog/directives/value-help-column-def.directive.d.ts +17 -0
- package/value-help-dialog/directives/value-help-filter-def.directive.d.ts +15 -0
- package/value-help-dialog/index.d.ts +2 -0
- package/value-help-dialog/models/vhd-component.model.d.ts +5 -0
- package/value-help-dialog/models/vhd-filter.model.d.ts +3 -0
- package/value-help-dialog/value-help-dialog/value-help-dialog.component.d.ts +14 -7
- package/variant-management/variant-management.component.d.ts +19 -6
- package/wizard-generator/base-wizard-generator.d.ts +9 -12
- package/wizard-generator/components/dialog-wizard-generator/dialog-wizard-generator.component.d.ts +2 -3
- package/wizard-generator/components/wizard-body/wizard-body.component.d.ts +3 -7
- package/wizard-generator/components/wizard-generator/wizard-generator.component.d.ts +1 -4
- package/wizard-generator/components/wizard-generator-step/wizard-generator-step.component.d.ts +1 -1
- package/dynamic-page/dynamic-page.service.d.ts +0 -35
- package/esm2022/dynamic-page/dynamic-page.service.mjs +0 -58
- package/esm2022/search-field/search-field-mobile/search-field-mobile.module.mjs +0 -16
- package/fundamental-ngx-platform-v0.48.0-rc.9.tgz +0 -0
- package/search-field/search-field-mobile/search-field-mobile.module.d.ts +0 -7
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
/* eslint-disable @typescript-eslint/member-ordering */
|
|
2
|
-
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewChild, ViewEncapsulation } from '@angular/core';
|
|
2
|
+
import { ChangeDetectionStrategy, Component, DestroyRef, EventEmitter, Input, Output, ViewChild, ViewEncapsulation, inject } from '@angular/core';
|
|
3
3
|
import { CdkScrollable } from '@angular/cdk/overlay';
|
|
4
|
-
import { SlicePipe } from '@angular/common';
|
|
4
|
+
import { NgTemplateOutlet, SlicePipe } from '@angular/common';
|
|
5
|
+
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
5
6
|
import { FormsModule } from '@angular/forms';
|
|
6
7
|
import { FocusableGridDirective, RepeatDirective } from '@fundamental-ngx/cdk/utils';
|
|
7
8
|
import { BarComponent, BarElementDirective, BarMiddleDirective } from '@fundamental-ngx/core/bar';
|
|
@@ -14,6 +15,8 @@ import { SkeletonComponent } from '@fundamental-ngx/core/skeleton';
|
|
|
14
15
|
import { TableBodyDirective, TableCellDirective, TableComponent, TableHeaderDirective, TableRowDirective, TableTextDirective } from '@fundamental-ngx/core/table';
|
|
15
16
|
import { TitleComponent } from '@fundamental-ngx/core/title';
|
|
16
17
|
import { FdTranslatePipe } from '@fundamental-ngx/i18n';
|
|
18
|
+
import { startWith } from 'rxjs';
|
|
19
|
+
import { VhdComponent } from '../../models/vhd-component.model';
|
|
17
20
|
import { VhdBaseTab } from '../base-tab/vhd-base-tab.component';
|
|
18
21
|
import * as i0 from "@angular/core";
|
|
19
22
|
import * as i1 from "@angular/forms";
|
|
@@ -37,6 +40,8 @@ export class SelectTabComponent extends VhdBaseTab {
|
|
|
37
40
|
this.filters = [];
|
|
38
41
|
/** Close dialog immediately after select any row from search table. It'll be skipped if multi option is true */
|
|
39
42
|
this.selection = 'single';
|
|
43
|
+
/** Whether to allow users to select all table entries with one checkbox. */
|
|
44
|
+
this.allowSelectAll = true;
|
|
40
45
|
/** Uniq field from data source */
|
|
41
46
|
this.uniqueKey = 'id';
|
|
42
47
|
/** Count of default mobile header from search table */
|
|
@@ -61,7 +66,13 @@ export class SelectTabComponent extends VhdBaseTab {
|
|
|
61
66
|
/** @hidden */
|
|
62
67
|
this._selectedMap = {};
|
|
63
68
|
/** @hidden */
|
|
69
|
+
this._columnDefMap = new Map();
|
|
70
|
+
/** @hidden */
|
|
64
71
|
this.selectedItems = [];
|
|
72
|
+
/** @hidden */
|
|
73
|
+
this._vhd = inject(VhdComponent, { optional: true });
|
|
74
|
+
/** @hidden */
|
|
75
|
+
this._destroyRef = inject(DestroyRef);
|
|
65
76
|
/** @hidden Track function for main data */
|
|
66
77
|
this._trackByTableRowFn = (_index, item) => {
|
|
67
78
|
if (item) {
|
|
@@ -85,6 +96,12 @@ export class SelectTabComponent extends VhdBaseTab {
|
|
|
85
96
|
/** @hidden */
|
|
86
97
|
ngAfterViewInit() {
|
|
87
98
|
Promise.resolve(true).then(() => this._checkScrollAndShowMore());
|
|
99
|
+
this._vhd?.columnDef.changes.pipe(startWith(null), takeUntilDestroyed(this._destroyRef)).subscribe(() => {
|
|
100
|
+
this._columnDefMap.clear();
|
|
101
|
+
this._vhd?.columnDef.forEach((item) => {
|
|
102
|
+
this._columnDefMap.set(item.column, item);
|
|
103
|
+
});
|
|
104
|
+
});
|
|
88
105
|
}
|
|
89
106
|
/** @hidden */
|
|
90
107
|
ngOnChanges(changes) {
|
|
@@ -232,10 +249,10 @@ export class SelectTabComponent extends VhdBaseTab {
|
|
|
232
249
|
this._selectedMap[s[this.uniqueKey]] = true;
|
|
233
250
|
}
|
|
234
251
|
}
|
|
235
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.
|
|
236
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.0.4", type: SelectTabComponent, isStandalone: true, selector: "fdp-select-tab", inputs: { selectTabTitleId: "selectTabTitleId", selectTabCountId: "selectTabCountId", selected: "selected", loading: "loading", filters: "filters", selection: "selection", uniqueKey: "uniqueKey", pageSize: "pageSize", defaultMobileHeaders: "defaultMobileHeaders", displayedData: "displayedData" }, outputs: { select: "select" }, viewQueries: [{ propertyName: "infiniteScrollTable", first: true, predicate: InfiniteScrollDirective, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"table-header\">\n <h5 fd-title role=\"heading\" aria-level=\"5\">\n {{ 'platformVHD.selectTabDisplayCountLabel' | fdTranslate: { count: displayedData.length } }}\n </h5>\n</div>\n<div\n class=\"fdp-value-help-dialog__table-holder table-content\"\n fd-scrollbar\n fdInfiniteScroll\n (onScrollAction)=\"_showMoreElements()\"\n [scrollPercent]=\"80\"\n role=\"table\"\n>\n <table\n fd-table\n [popIn]=\"mobile\"\n [noBorderX]=\"mobile\"\n [noBorderY]=\"false\"\n [attr.aria-colcount]=\"_tableFilters.main.length\"\n [attr.aria-rowcount]=\"displayedData.length\"\n role=\"grid\"\n aria-multiselectable=\"true\"\n [attr.aria-labelledby]=\"selectTabTitleId + ' ' + selectTabCountId\"\n >\n <label [id]=\"selectTabCountId\" fd-form-label class=\"fdp-value-help-dialog__hidden_label\">\n {{\n 'platformVHD.selectTabCountHiddenA11yLabel'\n | fdTranslate: { rowCount: displayedData.length, colCount: _tableFilters.main.length }\n }}\n </label>\n <label [id]=\"selectTabTitleId\" fd-form-label class=\"fdp-value-help-dialog__hidden_label\">\n {{ 'platformVHD.selectTabDisplayCountLabel' | fdTranslate: { count: displayedData.length } }}\n </label>\n <thead fd-table-header>\n @if (displayedData.length && _tableFilters) {\n <tr fd-table-row>\n <th fd-table-cell [fitContent]=\"mobile\">\n @if (isMultiSelection) {\n <fd-checkbox\n [name]=\"uid + '-row-all'\"\n [tristate]=\"true\"\n [tristateSelectable]=\"false\"\n [ngModel]=\"_selectedAll\"\n (ngModelChange)=\"_toggleAllRows()\"\n ></fd-checkbox>\n }\n </th>\n @for (\n filter of _tableFilters.main;\n track _trackByFilterFn(colindex, filter);\n let colindex = $index\n ) {\n <th fd-table-cell [attr.aria-colindex]=\"colindex\">\n {{ filter.label }}\n </th>\n }\n </tr>\n }\n </thead>\n <tbody fd-table-body>\n @for (\n row of displayedData | slice: _shownFrom : _shownCount;\n track _trackByTableRowFn(i, row);\n let i = $index\n ) {\n <tr\n fd-table-row\n [hoverable]=\"!mobile\"\n [main]=\"mobile\"\n [attr.aria-selected]=\"_selectedMap[row[uniqueKey]]\"\n [activable]=\"!isMultiSelection\"\n (click)=\"!isMultiSelection && _toggleSelectRow(row)\"\n >\n <td fd-table-cell [fitContent]=\"mobile\">\n @if (isMultiSelection) {\n <fd-checkbox\n [name]=\"uid + '-row-' + i\"\n [ngModel]=\"_selectedMap[row[uniqueKey]]\"\n (change)=\"_toggleSelectRow(row)\"\n ></fd-checkbox>\n }\n </td>\n @for (filter of _tableFilters.main; track filter; let rowIndex = $index) {\n <td fd-table-cell [attr.aria-rowindex]=\"rowIndex\">\n {{ row[filter.key] || '' }}\n </td>\n }\n </tr>\n @if (mobile && _tableFilters.secondary.length) {\n <tr fd-table-row [secondary]=\"true\" [attr.aria-selected]=\"_selectedMap[row[uniqueKey]]\">\n <td fd-table-cell></td>\n <td colspan=\"100%\" fd-table-cell [fitContent]=\"true\">\n @for (filter of _tableFilters.secondary; track filter) {\n <p fd-table-text>\n <label>{{ filter.label }}:</label>\n {{ row[filter.key] || '' }}\n </p>\n }\n </td>\n </tr>\n }\n }\n @if (displayedData.length && mobile && _shownCount && _shownCount !== displayedData.length) {\n <tr fd-table-row>\n <td colspan=\"100%\">\n <div fd-bar barDesign=\"header-with-subheader\">\n <div fd-bar-middle>\n <fd-bar-element>\n <button\n fd-button\n fdType=\"transparent\"\n [label]=\"'platformVHD.selectTabMoreBtnLabel' | fdTranslate\"\n (click)=\"_showMoreElements()\"\n ></button>\n </fd-bar-element>\n </div>\n </div>\n </td>\n </tr>\n }\n @if (!displayedData.length) {\n @if (loading) {\n <tr fd-table-row *fdkRepeat=\"3\">\n <td fd-table-cell *fdkRepeat=\"3\">\n <fd-skeleton [style.margin]=\"'auto 0'\" type=\"text\" textLines=\"1\" width=\"60%\"></fd-skeleton>\n </td>\n </tr>\n } @else {\n <tr fd-table-row>\n <td fd-table-cell colspan=\"100%\">\n <div class=\"fdp-value-help-dialog__empty-message\">\n {{ 'platformVHD.searchTableEmptyMessage' | fdTranslate }}\n </div>\n </td>\n </tr>\n }\n }\n </tbody>\n </table>\n</div>\n", styles: [".fdp-value-help-dialog__advanced-filters .fd-col{padding-top:0}.fdp-value-help-dialog__content-holder fdp-select-tab{display:flex;flex-direction:column;overflow:hidden;height:100%}.fdp-value-help-dialog__content-holder .table-header{flex:0 0 auto}.fdp-value-help-dialog__content-holder .table-content{flex:1 1 auto;overflow:auto;min-height:5rem}.fdp-value-help-dialog__table-holder{padding-top:0;padding-bottom:0}.fdp-value-help-dialog__empty-message{padding:1rem 2rem}\n"], dependencies: [{ kind: "component", type: TitleComponent, selector: "h1[fd-title], h2[fd-title], h3[fd-title], h4[fd-title], h5[fd-title], h6[fd-title]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "directive", type: ScrollbarDirective, selector: "[fdScrollbar], [fd-scrollbar]", inputs: ["noHorizontalScroll", "noVerticalScroll", "alwaysVisible"] }, { kind: "directive", type: InfiniteScrollDirective, selector: "[fdInfiniteScroll]", inputs: ["scrollPercent", "scrollOffset"], outputs: ["onScrollAction"] }, { kind: "component", type: TableComponent, selector: "table[fd-table]", inputs: ["noBorderX", "noBorderY", "noOuterBorder", "topBorder", "popIn", "responsive", "keys", "allCellsFocusable"], exportAs: ["fd-table"] }, { kind: "component", type: FormLabelComponent, selector: "[fd-form-label]", inputs: ["required", "colon", "alignLabelEnd", "inlineHelpContent", "inlineHelpGlyph", "inlineHelpTriggers", "inlineHelpBodyPlacement", "inlineHelpPlacement", "inlineHelpLabel", "id"] }, { kind: "directive", type: TableHeaderDirective, selector: "[fdTableHeader], [fd-table-header]", inputs: ["noBorderX", "noBorderY"] }, { kind: "directive", type: TableRowDirective, selector: "[fdTableRow], [fd-table-row]", inputs: ["activable", "highlightActive", "hoverable", "focusable", "main", "secondary", "active"] }, { kind: "directive", type: TableCellDirective, selector: "[fdTableCell], [fd-table-cell]", inputs: ["noBorderX", "noBorderY", "activable", "focusable", "hoverable", "fitContent", "noPadding", "noData", "key"] }, { kind: "component", type: CheckboxComponent, selector: "fd-checkbox", inputs: ["wrapLabel", "valignLabel", "ariaLabel", "value", "ariaLabelledBy", "ariaDescribedBy", "title", "inputId", "state", "name", "label", "disabled", "tristate", "tristateSelectable", "labelClass", "required", "displayOnly", "values", "standalone"], outputs: ["focusChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: TableBodyDirective, selector: "[fdTableBody], [fd-table-body]", inputs: ["noBorderX", "noBorderY"] }, { kind: "directive", type: TableTextDirective, selector: "[fdTableText], [fd-table-text]", inputs: ["fdTableTextClass", "noWrap", "title", "maxWidth"] }, { kind: "component", type: BarComponent, selector: "[fd-bar]", inputs: ["class", "barDesign", "inPage", "inHomePage", "size"] }, { kind: "directive", type: BarMiddleDirective, selector: "[fd-bar-middle]" }, { kind: "directive", type: BarElementDirective, selector: "fd-bar-element", inputs: ["fullWidth"] }, { kind: "component", type: ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "directive", type: RepeatDirective, selector: "[fdkRepeat]", inputs: ["fdkRepeat"] }, { kind: "component", type: SkeletonComponent, selector: "fd-skeleton", inputs: ["animated", "type", "textLines", "width", "height"] }, { kind: "pipe", type: SlicePipe, name: "slice" }, { kind: "pipe", type: FdTranslatePipe, name: "fdTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
252
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: SelectTabComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
253
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.0.8", type: SelectTabComponent, isStandalone: true, selector: "fdp-select-tab", inputs: { selectTabTitleId: "selectTabTitleId", selectTabCountId: "selectTabCountId", selected: "selected", loading: "loading", filters: "filters", selection: "selection", allowSelectAll: "allowSelectAll", uniqueKey: "uniqueKey", pageSize: "pageSize", defaultMobileHeaders: "defaultMobileHeaders", displayedData: "displayedData" }, outputs: { select: "select" }, viewQueries: [{ propertyName: "infiniteScrollTable", first: true, predicate: InfiniteScrollDirective, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"table-header\">\n <h5 fd-title role=\"heading\" aria-level=\"5\">\n {{ 'platformVHD.selectTabDisplayCountLabel' | fdTranslate: { count: displayedData.length } }}\n </h5>\n</div>\n<div\n class=\"fdp-value-help-dialog__table-holder table-content\"\n fd-scrollbar\n fdInfiniteScroll\n (onScrollAction)=\"_showMoreElements()\"\n [scrollPercent]=\"80\"\n role=\"table\"\n>\n <table\n fd-table\n [popIn]=\"mobile\"\n [noBorderX]=\"mobile\"\n [noBorderY]=\"false\"\n [attr.aria-colcount]=\"_tableFilters.main.length\"\n [attr.aria-rowcount]=\"displayedData.length\"\n role=\"grid\"\n aria-multiselectable=\"true\"\n [attr.aria-labelledby]=\"selectTabTitleId + ' ' + selectTabCountId\"\n >\n <label [id]=\"selectTabCountId\" fd-form-label class=\"fdp-value-help-dialog__hidden_label\">\n {{\n 'platformVHD.selectTabCountHiddenA11yLabel'\n | fdTranslate: { rowCount: displayedData.length, colCount: _tableFilters.main.length }\n }}\n </label>\n <label [id]=\"selectTabTitleId\" fd-form-label class=\"fdp-value-help-dialog__hidden_label\">\n {{ 'platformVHD.selectTabDisplayCountLabel' | fdTranslate: { count: displayedData.length } }}\n </label>\n <thead fd-table-header>\n @if (displayedData.length && _tableFilters) {\n <tr fd-table-row>\n <th fd-table-cell [fitContent]=\"mobile\">\n @if (isMultiSelection && allowSelectAll) {\n <fd-checkbox\n [name]=\"uid + '-row-all'\"\n [tristate]=\"true\"\n [tristateSelectable]=\"false\"\n [ngModel]=\"_selectedAll\"\n (ngModelChange)=\"_toggleAllRows()\"\n ></fd-checkbox>\n }\n </th>\n @for (\n filter of _tableFilters.main;\n track _trackByFilterFn(colindex, filter);\n let colindex = $index\n ) {\n <th fd-table-cell [attr.aria-colindex]=\"colindex\">\n {{ filter.label }}\n </th>\n }\n </tr>\n }\n </thead>\n <tbody fd-table-body>\n @for (\n row of displayedData | slice: _shownFrom : _shownCount;\n track _trackByTableRowFn(i, row);\n let i = $index\n ) {\n <tr\n fd-table-row\n [hoverable]=\"!mobile\"\n [main]=\"mobile\"\n [attr.aria-selected]=\"_selectedMap[row[uniqueKey]]\"\n [activable]=\"!isMultiSelection\"\n (click)=\"!isMultiSelection && _toggleSelectRow(row)\"\n >\n <td fd-table-cell [fitContent]=\"mobile\">\n @if (isMultiSelection) {\n <fd-checkbox\n [name]=\"uid + '-row-' + i\"\n [ngModel]=\"_selectedMap[row[uniqueKey]]\"\n (change)=\"_toggleSelectRow(row)\"\n ></fd-checkbox>\n }\n </td>\n @for (filter of _tableFilters.main; track filter; let rowIndex = $index) {\n <td fd-table-cell [attr.aria-rowindex]=\"rowIndex\">\n @if (_columnDefMap.get(filter.key); as columnDef) {\n <ng-template\n [ngTemplateOutlet]=\"columnDef.templateRef\"\n [ngTemplateOutletContext]=\"{\n $implicit: row,\n key: filter.key,\n value: row[filter.key] || ''\n }\"\n ></ng-template>\n } @else {\n {{ row[filter.key] || '' }}\n }\n </td>\n }\n </tr>\n @if (mobile && _tableFilters.secondary.length) {\n <tr fd-table-row [secondary]=\"true\" [attr.aria-selected]=\"_selectedMap[row[uniqueKey]]\">\n <td fd-table-cell></td>\n <td colspan=\"100%\" fd-table-cell [fitContent]=\"true\">\n @for (filter of _tableFilters.secondary; track filter) {\n <p fd-table-text>\n <label>{{ filter.label }}:</label>\n {{ row[filter.key] || '' }}\n </p>\n }\n </td>\n </tr>\n }\n }\n @if (displayedData.length && mobile && _shownCount && _shownCount !== displayedData.length) {\n <tr fd-table-row>\n <td colspan=\"100%\">\n <div fd-bar barDesign=\"header-with-subheader\">\n <div fd-bar-middle>\n <fd-bar-element>\n <button\n fd-button\n fdType=\"transparent\"\n [label]=\"'platformVHD.selectTabMoreBtnLabel' | fdTranslate\"\n (click)=\"_showMoreElements()\"\n ></button>\n </fd-bar-element>\n </div>\n </div>\n </td>\n </tr>\n }\n @if (!displayedData.length) {\n @if (loading) {\n <tr fd-table-row *fdkRepeat=\"3\">\n <td fd-table-cell *fdkRepeat=\"3\">\n <fd-skeleton [style.margin]=\"'auto 0'\" type=\"text\" textLines=\"1\" width=\"60%\"></fd-skeleton>\n </td>\n </tr>\n } @else {\n <tr fd-table-row>\n <td fd-table-cell colspan=\"100%\">\n <div class=\"fdp-value-help-dialog__empty-message\">\n {{ 'platformVHD.searchTableEmptyMessage' | fdTranslate }}\n </div>\n </td>\n </tr>\n }\n }\n </tbody>\n </table>\n</div>\n", styles: [".fdp-value-help-dialog__advanced-filters .fd-col{padding-top:0}.fdp-value-help-dialog__content-holder fdp-select-tab{display:flex;flex-direction:column;overflow:hidden;height:100%}.fdp-value-help-dialog__content-holder .table-header{flex:0 0 auto}.fdp-value-help-dialog__content-holder .table-content{flex:1 1 auto;overflow:auto;min-height:5rem}.fdp-value-help-dialog__table-holder{padding-top:0;padding-bottom:0}.fdp-value-help-dialog__empty-message{padding:1rem 2rem}\n"], dependencies: [{ kind: "component", type: TitleComponent, selector: "h1[fd-title], h2[fd-title], h3[fd-title], h4[fd-title], h5[fd-title], h6[fd-title], span[fd-title]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "directive", type: ScrollbarDirective, selector: "[fdScrollbar], [fd-scrollbar]", inputs: ["noHorizontalScroll", "noVerticalScroll", "alwaysVisible"] }, { kind: "directive", type: InfiniteScrollDirective, selector: "[fdInfiniteScroll]", inputs: ["scrollPercent", "scrollOffset"], outputs: ["onScrollAction"] }, { kind: "component", type: TableComponent, selector: "table[fd-table]", inputs: ["noBorderX", "noBorderY", "noOuterBorder", "topBorder", "popIn", "responsive", "keys", "allCellsFocusable"], exportAs: ["fd-table"] }, { kind: "component", type: FormLabelComponent, selector: "[fd-form-label]", inputs: ["required", "colon", "alignLabelEnd", "inlineHelpContent", "inlineHelpGlyph", "inlineHelpTriggers", "inlineHelpBodyPlacement", "inlineHelpPlacement", "inlineHelpLabel", "id"] }, { kind: "directive", type: TableHeaderDirective, selector: "[fdTableHeader], [fd-table-header]", inputs: ["noBorderX", "noBorderY"] }, { kind: "directive", type: TableRowDirective, selector: "[fdTableRow], [fd-table-row]", inputs: ["activable", "highlightActive", "hoverable", "focusable", "main", "secondary", "active"] }, { kind: "directive", type: TableCellDirective, selector: "[fdTableCell], [fd-table-cell]", inputs: ["noBorderX", "noBorderY", "activable", "focusable", "hoverable", "fitContent", "noPadding", "noData", "key"] }, { kind: "component", type: CheckboxComponent, selector: "fd-checkbox", inputs: ["wrapLabel", "valignLabel", "ariaLabel", "value", "ariaLabelledBy", "ariaDescribedBy", "title", "inputId", "state", "name", "label", "disabled", "tristate", "tristateSelectable", "labelClass", "required", "displayOnly", "values", "standalone"], outputs: ["focusChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: TableBodyDirective, selector: "[fdTableBody], [fd-table-body]", inputs: ["noBorderX", "noBorderY"] }, { kind: "directive", type: TableTextDirective, selector: "[fdTableText], [fd-table-text]", inputs: ["fdTableTextClass", "noWrap", "title", "maxWidth"] }, { kind: "component", type: BarComponent, selector: "[fd-bar]", inputs: ["class", "barDesign", "inPage", "inHomePage", "size"] }, { kind: "directive", type: BarMiddleDirective, selector: "[fd-bar-middle]" }, { kind: "directive", type: BarElementDirective, selector: "fd-bar-element", inputs: ["fullWidth"] }, { kind: "component", type: ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "directive", type: RepeatDirective, selector: "[fdkRepeat]", inputs: ["fdkRepeat"] }, { kind: "component", type: SkeletonComponent, selector: "fd-skeleton", inputs: ["animated", "type", "textLines", "width", "height"] }, { kind: "pipe", type: SlicePipe, name: "slice" }, { kind: "pipe", type: FdTranslatePipe, name: "fdTranslate" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
237
254
|
}
|
|
238
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.
|
|
255
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: SelectTabComponent, decorators: [{
|
|
239
256
|
type: Component,
|
|
240
257
|
args: [{ selector: 'fdp-select-tab', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
241
258
|
TitleComponent,
|
|
@@ -259,8 +276,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImpor
|
|
|
259
276
|
RepeatDirective,
|
|
260
277
|
SkeletonComponent,
|
|
261
278
|
SlicePipe,
|
|
262
|
-
FdTranslatePipe
|
|
263
|
-
|
|
279
|
+
FdTranslatePipe,
|
|
280
|
+
NgTemplateOutlet
|
|
281
|
+
], template: "<div class=\"table-header\">\n <h5 fd-title role=\"heading\" aria-level=\"5\">\n {{ 'platformVHD.selectTabDisplayCountLabel' | fdTranslate: { count: displayedData.length } }}\n </h5>\n</div>\n<div\n class=\"fdp-value-help-dialog__table-holder table-content\"\n fd-scrollbar\n fdInfiniteScroll\n (onScrollAction)=\"_showMoreElements()\"\n [scrollPercent]=\"80\"\n role=\"table\"\n>\n <table\n fd-table\n [popIn]=\"mobile\"\n [noBorderX]=\"mobile\"\n [noBorderY]=\"false\"\n [attr.aria-colcount]=\"_tableFilters.main.length\"\n [attr.aria-rowcount]=\"displayedData.length\"\n role=\"grid\"\n aria-multiselectable=\"true\"\n [attr.aria-labelledby]=\"selectTabTitleId + ' ' + selectTabCountId\"\n >\n <label [id]=\"selectTabCountId\" fd-form-label class=\"fdp-value-help-dialog__hidden_label\">\n {{\n 'platformVHD.selectTabCountHiddenA11yLabel'\n | fdTranslate: { rowCount: displayedData.length, colCount: _tableFilters.main.length }\n }}\n </label>\n <label [id]=\"selectTabTitleId\" fd-form-label class=\"fdp-value-help-dialog__hidden_label\">\n {{ 'platformVHD.selectTabDisplayCountLabel' | fdTranslate: { count: displayedData.length } }}\n </label>\n <thead fd-table-header>\n @if (displayedData.length && _tableFilters) {\n <tr fd-table-row>\n <th fd-table-cell [fitContent]=\"mobile\">\n @if (isMultiSelection && allowSelectAll) {\n <fd-checkbox\n [name]=\"uid + '-row-all'\"\n [tristate]=\"true\"\n [tristateSelectable]=\"false\"\n [ngModel]=\"_selectedAll\"\n (ngModelChange)=\"_toggleAllRows()\"\n ></fd-checkbox>\n }\n </th>\n @for (\n filter of _tableFilters.main;\n track _trackByFilterFn(colindex, filter);\n let colindex = $index\n ) {\n <th fd-table-cell [attr.aria-colindex]=\"colindex\">\n {{ filter.label }}\n </th>\n }\n </tr>\n }\n </thead>\n <tbody fd-table-body>\n @for (\n row of displayedData | slice: _shownFrom : _shownCount;\n track _trackByTableRowFn(i, row);\n let i = $index\n ) {\n <tr\n fd-table-row\n [hoverable]=\"!mobile\"\n [main]=\"mobile\"\n [attr.aria-selected]=\"_selectedMap[row[uniqueKey]]\"\n [activable]=\"!isMultiSelection\"\n (click)=\"!isMultiSelection && _toggleSelectRow(row)\"\n >\n <td fd-table-cell [fitContent]=\"mobile\">\n @if (isMultiSelection) {\n <fd-checkbox\n [name]=\"uid + '-row-' + i\"\n [ngModel]=\"_selectedMap[row[uniqueKey]]\"\n (change)=\"_toggleSelectRow(row)\"\n ></fd-checkbox>\n }\n </td>\n @for (filter of _tableFilters.main; track filter; let rowIndex = $index) {\n <td fd-table-cell [attr.aria-rowindex]=\"rowIndex\">\n @if (_columnDefMap.get(filter.key); as columnDef) {\n <ng-template\n [ngTemplateOutlet]=\"columnDef.templateRef\"\n [ngTemplateOutletContext]=\"{\n $implicit: row,\n key: filter.key,\n value: row[filter.key] || ''\n }\"\n ></ng-template>\n } @else {\n {{ row[filter.key] || '' }}\n }\n </td>\n }\n </tr>\n @if (mobile && _tableFilters.secondary.length) {\n <tr fd-table-row [secondary]=\"true\" [attr.aria-selected]=\"_selectedMap[row[uniqueKey]]\">\n <td fd-table-cell></td>\n <td colspan=\"100%\" fd-table-cell [fitContent]=\"true\">\n @for (filter of _tableFilters.secondary; track filter) {\n <p fd-table-text>\n <label>{{ filter.label }}:</label>\n {{ row[filter.key] || '' }}\n </p>\n }\n </td>\n </tr>\n }\n }\n @if (displayedData.length && mobile && _shownCount && _shownCount !== displayedData.length) {\n <tr fd-table-row>\n <td colspan=\"100%\">\n <div fd-bar barDesign=\"header-with-subheader\">\n <div fd-bar-middle>\n <fd-bar-element>\n <button\n fd-button\n fdType=\"transparent\"\n [label]=\"'platformVHD.selectTabMoreBtnLabel' | fdTranslate\"\n (click)=\"_showMoreElements()\"\n ></button>\n </fd-bar-element>\n </div>\n </div>\n </td>\n </tr>\n }\n @if (!displayedData.length) {\n @if (loading) {\n <tr fd-table-row *fdkRepeat=\"3\">\n <td fd-table-cell *fdkRepeat=\"3\">\n <fd-skeleton [style.margin]=\"'auto 0'\" type=\"text\" textLines=\"1\" width=\"60%\"></fd-skeleton>\n </td>\n </tr>\n } @else {\n <tr fd-table-row>\n <td fd-table-cell colspan=\"100%\">\n <div class=\"fdp-value-help-dialog__empty-message\">\n {{ 'platformVHD.searchTableEmptyMessage' | fdTranslate }}\n </div>\n </td>\n </tr>\n }\n }\n </tbody>\n </table>\n</div>\n", styles: [".fdp-value-help-dialog__advanced-filters .fd-col{padding-top:0}.fdp-value-help-dialog__content-holder fdp-select-tab{display:flex;flex-direction:column;overflow:hidden;height:100%}.fdp-value-help-dialog__content-holder .table-header{flex:0 0 auto}.fdp-value-help-dialog__content-holder .table-content{flex:1 1 auto;overflow:auto;min-height:5rem}.fdp-value-help-dialog__table-holder{padding-top:0;padding-bottom:0}.fdp-value-help-dialog__empty-message{padding:1rem 2rem}\n"] }]
|
|
264
282
|
}], propDecorators: { selectTabTitleId: [{
|
|
265
283
|
type: Input
|
|
266
284
|
}], selectTabCountId: [{
|
|
@@ -273,6 +291,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImpor
|
|
|
273
291
|
type: Input
|
|
274
292
|
}], selection: [{
|
|
275
293
|
type: Input
|
|
294
|
+
}], allowSelectAll: [{
|
|
295
|
+
type: Input
|
|
276
296
|
}], uniqueKey: [{
|
|
277
297
|
type: Input
|
|
278
298
|
}], pageSize: [{
|
|
@@ -289,4 +309,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImpor
|
|
|
289
309
|
type: ViewChild,
|
|
290
310
|
args: [InfiniteScrollDirective]
|
|
291
311
|
}] } });
|
|
292
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LXRhYi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3ZhbHVlLWhlbHAtZGlhbG9nL2NvbXBvbmVudHMvc2VsZWN0LXRhYi9zZWxlY3QtdGFiLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vdmFsdWUtaGVscC1kaWFsb2cvY29tcG9uZW50cy9zZWxlY3QtdGFiL3NlbGVjdC10YWIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsdURBQXVEO0FBQ3ZELE9BQU8sRUFFSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUVOLFNBQVMsRUFDVCxpQkFBaUIsRUFDcEIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLHNCQUFzQixFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3JGLE9BQU8sRUFBRSxZQUFZLEVBQUUsbUJBQW1CLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNsRyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbkUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDaEUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDaEYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDckUs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QUFNO3NCQUZMLE1BQU07Z0JBSzZCLG1CQUFtQjtzQkFBdEQsU0FBUzt1QkFBQyx1QkFBdUIiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbWVtYmVyLW9yZGVyaW5nICovXG5pbXBvcnQge1xuICAgIEFmdGVyVmlld0luaXQsXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBJbnB1dCxcbiAgICBPbkNoYW5nZXMsXG4gICAgT3V0cHV0LFxuICAgIFNpbXBsZUNoYW5nZXMsXG4gICAgVmlld0NoaWxkLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBDZGtTY3JvbGxhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgU2xpY2VQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgRm9jdXNhYmxlR3JpZERpcmVjdGl2ZSwgUmVwZWF0RGlyZWN0aXZlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jZGsvdXRpbHMnO1xuaW1wb3J0IHsgQmFyQ29tcG9uZW50LCBCYXJFbGVtZW50RGlyZWN0aXZlLCBCYXJNaWRkbGVEaXJlY3RpdmUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvYmFyJztcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9idXR0b24nO1xuaW1wb3J0IHsgQ2hlY2tib3hDb21wb25lbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvY2hlY2tib3gnO1xuaW1wb3J0IHsgRm9ybUxhYmVsQ29tcG9uZW50IH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2Zvcm0nO1xuaW1wb3J0IHsgSW5maW5pdGVTY3JvbGxEaXJlY3RpdmUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvaW5maW5pdGUtc2Nyb2xsJztcbmltcG9ydCB7IFNjcm9sbGJhckRpcmVjdGl2ZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9zY3JvbGxiYXInO1xuaW1wb3J0IHsgU2tlbGV0b25Db21wb25lbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvc2tlbGV0b24nO1xuaW1wb3J0IHtcbiAgICBUYWJsZUJvZHlEaXJlY3RpdmUsXG4gICAgVGFibGVDZWxsRGlyZWN0aXZlLFxuICAgIFRhYmxlQ29tcG9uZW50LFxuICAgIFRhYmxlSGVhZGVyRGlyZWN0aXZlLFxuICAgIFRhYmxlUm93RGlyZWN0aXZlLFxuICAgIFRhYmxlVGV4dERpcmVjdGl2ZVxufSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvdGFibGUnO1xuaW1wb3J0IHsgVGl0bGVDb21wb25lbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvdGl0bGUnO1xuaW1wb3J0IHsgRmRUcmFuc2xhdGVQaXBlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9pMThuJztcbmltcG9ydCB7IFZkaFRhYmxlU2VsZWN0aW9uLCBWaGRGaWx0ZXIgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgVmhkQmFzZVRhYiB9IGZyb20gJy4uL2Jhc2UtdGFiL3ZoZC1iYXNlLXRhYi5jb21wb25lbnQnO1xuXG5sZXQgdGl0bGVVbmlxdWVJZCA9IDA7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZmRwLXNlbGVjdC10YWInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9zZWxlY3QtdGFiLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybDogJy4vc2VsZWN0LXRhYi5jb21wb25lbnQuc2NzcycsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgVGl0bGVDb21wb25lbnQsXG4gICAgICAgIENka1Njcm9sbGFibGUsXG4gICAgICAgIFNjcm9sbGJhckRpcmVjdGl2ZSxcbiAgICAgICAgSW5maW5pdGVTY3JvbGxEaXJlY3RpdmUsXG4gICAgICAgIEZvY3VzYWJsZUdyaWREaXJlY3RpdmUsXG4gICAgICAgIFRhYmxlQ29tcG9uZW50LFxuICAgICAgICBGb3JtTGFiZWxDb21wb25lbnQsXG4gICAgICAgIFRhYmxlSGVhZGVyRGlyZWN0aXZlLFxuICAgICAgICBUYWJsZVJvd0RpcmVjdGl2ZSxcbiAgICAgICAgVGFibGVDZWxsRGlyZWN0aXZlLFxuICAgICAgICBDaGVja2JveENvbXBvbmVudCxcbiAgICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICAgIFRhYmxlQm9keURpcmVjdGl2ZSxcbiAgICAgICAgVGFibGVUZXh0RGlyZWN0aXZlLFxuICAgICAgICBCYXJDb21wb25lbnQsXG4gICAgICAgIEJhck1pZGRsZURpcmVjdGl2ZSxcbiAgICAgICAgQmFyRWxlbWVudERpcmVjdGl2ZSxcbiAgICAgICAgQnV0dG9uQ29tcG9uZW50LFxuICAgICAgICBSZXBlYXREaXJlY3RpdmUsXG4gICAgICAgIFNrZWxldG9uQ29tcG9uZW50LFxuICAgICAgICBTbGljZVBpcGUsXG4gICAgICAgIEZkVHJhbnNsYXRlUGlwZVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgU2VsZWN0VGFiQ29tcG9uZW50PFQ+IGV4dGVuZHMgVmhkQmFzZVRhYiBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgQWZ0ZXJWaWV3SW5pdCB7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcm90ZWN0ZWQgZGVmYXVsdFRpdGxlSWQgPSBgZmQtc2VsZWN0LXRhYi10aXRsZS1pZC0ke3RpdGxlVW5pcXVlSWQrK31gO1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJvdGVjdGVkIGRlZmF1bHRDb3VudElkID0gYGZkLXNlbGVjdC10YWItdGl0bGUtY291bnQtaWQtJHt0aXRsZVVuaXF1ZUlkKyt9YDtcblxuICAgIC8qKiBTZWxlY3QgdGFiIHRpdGxlIGVsZW1lbnQgSUQgKi9cbiAgICBASW5wdXQoKVxuICAgIHNlbGVjdFRhYlRpdGxlSWQ6IHN0cmluZyA9IHRoaXMuZGVmYXVsdFRpdGxlSWQ7XG5cbiAgICAvKiogU2VsZWN0IHRhYiBjb3VudCBlbGVtZW50IElEICovXG4gICAgQElucHV0KClcbiAgICBzZWxlY3RUYWJDb3VudElkOiBzdHJpbmcgPSB0aGlzLmRlZmF1bHRDb3VudElkO1xuXG4gICAgLyoqIFNlbGVjdGVkIGl0ZW1zICovXG4gICAgQElucHV0KClcbiAgICBzZWxlY3RlZDogVFtdID0gW107XG5cbiAgICAvKiogTG9hZGluZyBzdGF0ZSAqL1xuICAgIEBJbnB1dCgpXG4gICAgbG9hZGluZyA9IGZhbHNlO1xuXG4gICAgLyoqIEFjdHVhbCBmaWx0ZXJzICovXG4gICAgQElucHV0KClcbiAgICBmaWx0ZXJzOiBWaGRGaWx0ZXJbXSA9IFtdO1xuXG4gICAgLyoqIENsb3NlIGRpYWxvZyBpbW1lZGlhdGVseSBhZnRlciBzZWxlY3QgYW55IHJvdyBmcm9tIHNlYXJjaCB0YWJsZS4gSXQnbGwgYmUgc2tpcHBlZCBpZiBtdWx0aSBvcHRpb24gaXMgdHJ1ZSAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2VsZWN0aW9uOiBWZGhUYWJsZVNlbGVjdGlvbiA9ICdzaW5nbGUnO1xuXG4gICAgLyoqIFVuaXEgZmllbGQgZnJvbSBkYXRhIHNvdXJjZSAqL1xuICAgIEBJbnB1dCgpXG4gICAgdW5pcXVlS2V5ID0gJ2lkJztcblxuICAgIC8qKiBJdGVtcyBwZXIgcGFnZSBmb3IgcGFnaW5hdGlvbiBiZWxvdyBzZWFyY2ggdGFibGUgKi9cbiAgICBASW5wdXQoKVxuICAgIHBhZ2VTaXplOiBudW1iZXI7XG5cbiAgICAvKiogQ291bnQgb2YgZGVmYXVsdCBtb2JpbGUgaGVhZGVyIGZyb20gc2VhcmNoIHRhYmxlICovXG4gICAgQElucHV0KClcbiAgICBkZWZhdWx0TW9iaWxlSGVhZGVycyA9IDI7XG5cbiAgICAvKiogRGlzcGxheWVkIGRhdGEgZm9yIHNlYXJjaCB0YWJsZSAqL1xuICAgIEBJbnB1dCgpXG4gICAgZGlzcGxheWVkRGF0YTogVFtdID0gW107XG5cbiAgICAvKiogRXZlbnQgZW1pdHRlZCB3aGVuIHJvdyB3YXMgc2VsZWN0ZWQuICovXG4gICAgQE91dHB1dCgpXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1vdXRwdXQtbmF0aXZlXG4gICAgc2VsZWN0ID0gbmV3IEV2ZW50RW1pdHRlcjxUW10+KCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBWaWV3Q2hpbGQoSW5maW5pdGVTY3JvbGxEaXJlY3RpdmUpIGluZmluaXRlU2Nyb2xsVGFibGU6IEluZmluaXRlU2Nyb2xsRGlyZWN0aXZlO1xuXG4gICAgLyoqIEBoaWRkZW4gaW5kZXRlcm1pbmF0ZSBmbGFnIGZvciBgc2VsZWN0IGFsbGAgY2hlY2tib3ggKi9cbiAgICBfc2VsZWN0ZWRBbGw6IGJvb2xlYW4gfCBudWxsID0gZmFsc2U7XG5cbiAgICAvKiogQGhpZGRlbiBTaG93biBpdGVtcyBjb3VudCBpbiBtb2JpbGUgdmlldyAqL1xuICAgIF9zaG93bkZyb20gPSAwO1xuXG4gICAgLyoqIEBoaWRkZW4gU2hvd24gaXRlbXMgY291bnQgaW4gbW9iaWxlIHZpZXcgKi9cbiAgICBfc2hvd25Db3VudCA9IDA7XG5cbiAgICAvKiogQGhpZGRlbiBDdXJyZW50IHBhZ2UgaW4gZGVza3RvcCB2aWV3ICovXG4gICAgX2N1cnJlbnRQYWdlID0gMDtcblxuICAgIC8qKiBAaGlkZGVuIEhlYWRlcnMgYW5kIGJvZHkgZm9yIHNlYXJjaCB0YWJsZSAqL1xuICAgIF90YWJsZUZpbHRlcnM6IHtcbiAgICAgICAgbWFpbjogVmhkRmlsdGVyW107XG4gICAgICAgIHNlY29uZGFyeTogVmhkRmlsdGVyW107XG4gICAgfSA9IHtcbiAgICAgICAgbWFpbjogW10sXG4gICAgICAgIHNlY29uZGFyeTogW11cbiAgICB9O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfc2VsZWN0ZWRNYXA6IHsgW2tleTogc3RyaW5nXTogYm9vbGVhbiB9ID0ge307XG5cbiAgICAvKiogU2VsZWN0aW9uIHR5cGUgZ2V0dGVycyAqL1xuICAgIGdldCBpc1NpbmdsZVNlbGVjdGlvbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2VsZWN0aW9uID09PSAnc2luZ2xlJztcbiAgICB9XG4gICAgLyoqIFNlbGVjdGlvbiB0eXBlIGdldHRlcnMgKi9cbiAgICBnZXQgaXNPbmNlU2VsZWN0aW9uKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5zZWxlY3Rpb24gPT09ICdvbmNlJztcbiAgICB9XG4gICAgLyoqIFNlbGVjdGlvbiB0eXBlIGdldHRlcnMgKi9cbiAgICBnZXQgaXNNdWx0aVNlbGVjdGlvbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2VsZWN0aW9uID09PSAnbXVsdGknO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBzZWxlY3RlZEl0ZW1zOiBUW10gPSBbXTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfZW1wdHlUYWJsZU1lc3NhZ2U6IHN0cmluZztcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICBQcm9taXNlLnJlc29sdmUodHJ1ZSkudGhlbigoKSA9PiB0aGlzLl9jaGVja1Njcm9sbEFuZFNob3dNb3JlKCkpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICAqL1xuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICAgICAgaWYgKCdmaWx0ZXJzJyBpbiBjaGFuZ2VzKSB7XG4gICAgICAgICAgICB0aGlzLl9pbml0aWFsaXplRmlsdGVycygpO1xuICAgICAgICB9XG4gICAgICAgIGlmICgnZGlzcGxheWVkRGF0YScgaW4gY2hhbmdlcykge1xuICAgICAgICAgICAgdGhpcy5fcmVmcmVzaERpc3BsYXllZERhdGEoKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoJ3NlbGVjdGVkJyBpbiBjaGFuZ2VzKSB7XG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbXMgPSB0aGlzLnNlbGVjdGVkIHx8IFtdO1xuICAgICAgICAgICAgdGhpcy5fcmVmcmVzaFNlbGVjdGVkTWFwKCk7XG4gICAgICAgICAgICB0aGlzLl9yZWZyZXNoVHJpc3RhdGUoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuIFRyYWNrIGZ1bmN0aW9uIGZvciBtYWluIGRhdGEgKi9cbiAgICBfdHJhY2tCeVRhYmxlUm93Rm46IChfaW5kZXg6IG51bWJlciwgaXRlbTogVCkgPT4gc3RyaW5nIHwgdW5kZWZpbmVkID0gKF9pbmRleDogbnVtYmVyLCBpdGVtOiBUKSA9PiB7XG4gICAgICAgIGlmIChpdGVtKSB7XG4gICAgICAgICAgICByZXR1cm4gaXRlbVt0aGlzLnVuaXF1ZUtleV07XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH07XG5cbiAgICAvKiogQGhpZGRlbiBUcmFjayBmdW5jdGlvbiBmb3IgZmlsdGVycyAqL1xuICAgIF90cmFja0J5RmlsdGVyRm4oX2luZGV4OiBudW1iZXIsIGl0ZW06IFZoZEZpbHRlcik6IG51bWJlciB8IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiBpdGVtICYmIGl0ZW0ua2V5ID8gaXRlbS5rZXkgOiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gU2hvdyBtb3JlIGVsZW1lbnRzICovXG4gICAgX3Nob3dNb3JlRWxlbWVudHMoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnBhZ2VTaXplICYmIHRoaXMuX3Nob3duQ291bnQgIT09IHRoaXMuZGlzcGxheWVkRGF0YS5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMuX3Nob3duQ291bnQgKz0gdGhpcy5wYWdlU2l6ZTtcbiAgICAgICAgICAgIHRoaXMuX3Nob3duQ291bnQgPSBNYXRoLm1pbih0aGlzLl9zaG93bkNvdW50LCB0aGlzLmRpc3BsYXllZERhdGEubGVuZ3RoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuX3Nob3duQ291bnQgPSB0aGlzLmRpc3BsYXllZERhdGEubGVuZ3RoO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuIFJlZnJlc2ggcGFnZSBpbiBkZXNrdG9wIHZpZXcgKi9cbiAgICBfdXBkYXRlUGFnZShwYWdlTnVtYmVyID0gMSk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5wYWdlU2l6ZSkge1xuICAgICAgICAgICAgdGhpcy5fY3VycmVudFBhZ2UgPSBwYWdlTnVtYmVyO1xuICAgICAgICAgICAgdGhpcy5fc2hvd25Gcm9tID0gKHBhZ2VOdW1iZXIgLSAxKSAqIHRoaXMucGFnZVNpemU7XG4gICAgICAgICAgICB0aGlzLl9zaG93bkNvdW50ID0gTWF0aC5taW4odGhpcy5fc2hvd25Gcm9tICsgdGhpcy5wYWdlU2l6ZSwgdGhpcy5kaXNwbGF5ZWREYXRhLmxlbmd0aCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLl9zaG93bkNvdW50ID0gdGhpcy5kaXNwbGF5ZWREYXRhLmxlbmd0aDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuIE1ldGhvZCB0b2dnbGUgc2VsZWN0ZWQgc3RhdGUgZm9yIGFsbCBpdGVtcyAgKi9cbiAgICBfdG9nZ2xlQWxsUm93cygpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuX3NlbGVjdGVkQWxsKSB7XG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbXMgPSBbXTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtcyA9IHRoaXMuZGlzcGxheWVkRGF0YTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnNlbGVjdC5lbWl0KHRoaXMuc2VsZWN0ZWRJdGVtcyk7XG4gICAgICAgIHRoaXMuX3JlZnJlc2hTZWxlY3RlZE1hcCgpO1xuICAgICAgICB0aGlzLl9yZWZyZXNoVHJpc3RhdGUoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiBNZXRob2QgdG9nZ2xlIHNlbGVjdGVkIHN0YXRlIGZvciBvbmUgaXRlbXMgICovXG4gICAgX3RvZ2dsZVNlbGVjdFJvdyhpdGVtOiBUKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmlzTXVsdGlTZWxlY3Rpb24pIHtcbiAgICAgICAgICAgIGNvbnN0IGlzU2VsZWN0ZWQgPSB0aGlzLl9zZWxlY3RlZE1hcFtpdGVtW3RoaXMudW5pcXVlS2V5XV07XG4gICAgICAgICAgICBpZiAoaXNTZWxlY3RlZCkge1xuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtcyA9IHRoaXMuc2VsZWN0ZWRJdGVtcy5maWx0ZXIoKHM6IFQpID0+IHNbdGhpcy51bmlxdWVLZXldICE9PSBpdGVtW3RoaXMudW5pcXVlS2V5XSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtcy5wdXNoKGl0ZW0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5fc2VsZWN0ZWRNYXBbaXRlbVt0aGlzLnVuaXF1ZUtleV1dID0gIXRoaXMuX3NlbGVjdGVkTWFwW2l0ZW1bdGhpcy51bmlxdWVLZXldXTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuX2NsZWFyU2VsZWN0ZWRJdGVtcygpO1xuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZEl0ZW1zID0gW2l0ZW1dO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuc2VsZWN0LmVtaXQodGhpcy5zZWxlY3RlZEl0ZW1zKTtcbiAgICAgICAgdGhpcy5fcmVmcmVzaFRyaXN0YXRlKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9jaGVja1Njcm9sbEFuZFNob3dNb3JlKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5tb2JpbGUpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBpZiAoXG4gICAgICAgICAgICB0aGlzLmRpc3BsYXllZERhdGEubGVuZ3RoICYmXG4gICAgICAgICAgICB0aGlzLl9zaG93bkNvdW50ICE9PSB0aGlzLmRpc3BsYXllZERhdGEubGVuZ3RoICYmXG4gICAgICAgICAgICB0aGlzLmluZmluaXRlU2Nyb2xsVGFibGU/LnNob3VsZFRyaWdnZXJBY3Rpb24oKVxuICAgICAgICApIHtcbiAgICAgICAgICAgIHRoaXMuX3Nob3dNb3JlRWxlbWVudHMoKTtcbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuX2NoZWNrU2Nyb2xsQW5kU2hvd01vcmUoKTtcbiAgICAgICAgICAgIH0sIDEwMCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3Jlc2V0U2hvd24oKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLm1vYmlsZSkge1xuICAgICAgICAgICAgdGhpcy5fc2hvd01vcmVFbGVtZW50cygpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5fY2hlY2tTY3JvbGxBbmRTaG93TW9yZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gTWFudWFsbHkgY2xlYXIgc2VsZWN0ZWQgaXRlbXMgKi9cbiAgICBwcml2YXRlIF9jbGVhclNlbGVjdGVkSXRlbXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3NlbGVjdGVkTWFwID0ge307XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtcyA9IFtdO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuIFJlZnJlc2ggaW5kZXRlcm1pbmF0ZSBhdHRyaWJ1dGUgb24gYHNlbGVjdCBhbGxgIGNoZWNrYm94ICovXG4gICAgcHJpdmF0ZSBfcmVmcmVzaFRyaXN0YXRlKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBzZWxlY3RlZCA9IE9iamVjdC52YWx1ZXModGhpcy5fc2VsZWN0ZWRNYXApLmZpbHRlcihCb29sZWFuKS5sZW5ndGg7XG4gICAgICAgIGlmIChzZWxlY3RlZCA9PT0gMCkge1xuICAgICAgICAgICAgdGhpcy5fc2VsZWN0ZWRBbGwgPSBmYWxzZTtcbiAgICAgICAgfSBlbHNlIGlmIChzZWxlY3RlZCA9PT0gdGhpcy5kaXNwbGF5ZWREYXRhLmxlbmd0aCkge1xuICAgICAgICAgICAgdGhpcy5fc2VsZWN0ZWRBbGwgPSB0cnVlO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5fc2VsZWN0ZWRBbGwgPSBudWxsO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gU2V0IHVwIGZpbHRlcnMgKi9cbiAgICBwcml2YXRlIF9pbml0aWFsaXplRmlsdGVycygpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMubW9iaWxlKSB7XG4gICAgICAgICAgICBsZXQgX21vYmlsZVRhYmxlSGVhZGVycyA9IHRoaXMuZmlsdGVycy5maWx0ZXIoKGYpID0+IGYubWFpbikubWFwKChmKSA9PiBmLmtleSk7XG4gICAgICAgICAgICBpZiAoIV9tb2JpbGVUYWJsZUhlYWRlcnMubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgX21vYmlsZVRhYmxlSGVhZGVycyA9IHRoaXMuZmlsdGVycy5zbGljZSgwLCB0aGlzLmRlZmF1bHRNb2JpbGVIZWFkZXJzKS5tYXAoKGYpID0+IGYua2V5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuX3RhYmxlRmlsdGVycyA9IHtcbiAgICAgICAgICAgICAgICBtYWluOiB0aGlzLmZpbHRlcnMuZmlsdGVyKChmaWx0ZXIpID0+IF9tb2JpbGVUYWJsZUhlYWRlcnMuc29tZSgoa2V5KSA9PiBrZXkgPT09IGZpbHRlci5rZXkpKSxcbiAgICAgICAgICAgICAgICBzZWNvbmRhcnk6IHRoaXMuZmlsdGVycy5maWx0ZXIoKGZpbHRlcikgPT4gIV9tb2JpbGVUYWJsZUhlYWRlcnMuc29tZSgoa2V5KSA9PiBrZXkgPT09IGZpbHRlci5rZXkpKVxuICAgICAgICAgICAgfTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuX3RhYmxlRmlsdGVycyA9IHtcbiAgICAgICAgICAgICAgICBtYWluOiB0aGlzLmZpbHRlcnMsXG4gICAgICAgICAgICAgICAgc2Vjb25kYXJ5OiBbXVxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuIFJlZnJlc2ggZGlzcGxheSBkYXRhICovXG4gICAgcHJpdmF0ZSBfcmVmcmVzaERpc3BsYXllZERhdGEoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3Jlc2V0U2hvd24oKTtcbiAgICAgICAgdGhpcy5fcmVmcmVzaFRyaXN0YXRlKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gUmVmcmVzaCBzZWxlY3RlZCBtYXAgZm9yIGRpc3BsYXkgZGF0YSAqL1xuICAgIHByaXZhdGUgX3JlZnJlc2hTZWxlY3RlZE1hcCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fc2VsZWN0ZWRNYXAgPSB7fTtcbiAgICAgICAgZm9yIChjb25zdCBpdGVtIG9mIHRoaXMuZGlzcGxheWVkRGF0YSkge1xuICAgICAgICAgICAgdGhpcy5fc2VsZWN0ZWRNYXBbaXRlbVt0aGlzLnVuaXF1ZUtleV1dID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgZm9yIChjb25zdCBzIG9mIHRoaXMuc2VsZWN0ZWRJdGVtcykge1xuICAgICAgICAgICAgdGhpcy5fc2VsZWN0ZWRNYXBbc1t0aGlzLnVuaXF1ZUtleV1dID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJ0YWJsZS1oZWFkZXJcIj5cbiAgICA8aDUgZmQtdGl0bGUgcm9sZT1cImhlYWRpbmdcIiBhcmlhLWxldmVsPVwiNVwiPlxuICAgICAgICB7eyAncGxhdGZvcm1WSEQuc2VsZWN0VGFiRGlzcGxheUNvdW50TGFiZWwnIHwgZmRUcmFuc2xhdGU6IHsgY291bnQ6IGRpc3BsYXllZERhdGEubGVuZ3RoIH0gfX1cbiAgICA8L2g1PlxuPC9kaXY+XG48ZGl2XG4gICAgY2xhc3M9XCJmZHAtdmFsdWUtaGVscC1kaWFsb2dfX3RhYmxlLWhvbGRlciB0YWJsZS1jb250ZW50XCJcbiAgICBmZC1zY3JvbGxiYXJcbiAgICBmZEluZmluaXRlU2Nyb2xsXG4gICAgKG9uU2Nyb2xsQWN0aW9uKT1cIl9zaG93TW9yZUVsZW1lbnRzKClcIlxuICAgIFtzY3JvbGxQZXJjZW50XT1cIjgwXCJcbiAgICByb2xlPVwidGFibGVcIlxuPlxuICAgIDx0YWJsZVxuICAgICAgICBmZC10YWJsZVxuICAgICAgICBbcG9wSW5dPVwibW9iaWxlXCJcbiAgICAgICAgW25vQm9yZGVyWF09XCJtb2JpbGVcIlxuICAgICAgICBbbm9Cb3JkZXJZXT1cImZhbHNlXCJcbiAgICAgICAgW2F0dHIuYXJpYS1jb2xjb3VudF09XCJfdGFibGVGaWx0ZXJzLm1haW4ubGVuZ3RoXCJcbiAgICAgICAgW2F0dHIuYXJpYS1yb3djb3VudF09XCJkaXNwbGF5ZWREYXRhLmxlbmd0aFwiXG4gICAgICAgIHJvbGU9XCJncmlkXCJcbiAgICAgICAgYXJpYS1tdWx0aXNlbGVjdGFibGU9XCJ0cnVlXCJcbiAgICAgICAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cInNlbGVjdFRhYlRpdGxlSWQgKyAnICcgKyBzZWxlY3RUYWJDb3VudElkXCJcbiAgICA+XG4gICAgICAgIDxsYWJlbCBbaWRdPVwic2VsZWN0VGFiQ291bnRJZFwiIGZkLWZvcm0tbGFiZWwgY2xhc3M9XCJmZHAtdmFsdWUtaGVscC1kaWFsb2dfX2hpZGRlbl9sYWJlbFwiPlxuICAgICAgICAgICAge3tcbiAgICAgICAgICAgICAgICAncGxhdGZvcm1WSEQuc2VsZWN0VGFiQ291bnRIaWRkZW5BMTF5TGFiZWwnXG4gICAgICAgICAgICAgICAgICAgIHwgZmRUcmFuc2xhdGU6IHsgcm93Q291bnQ6IGRpc3BsYXllZERhdGEubGVuZ3RoLCBjb2xDb3VudDogX3RhYmxlRmlsdGVycy5tYWluLmxlbmd0aCB9XG4gICAgICAgICAgICB9fVxuICAgICAgICA8L2xhYmVsPlxuICAgICAgICA8bGFiZWwgW2lkXT1cInNlbGVjdFRhYlRpdGxlSWRcIiBmZC1mb3JtLWxhYmVsIGNsYXNzPVwiZmRwLXZhbHVlLWhlbHAtZGlhbG9nX19oaWRkZW5fbGFiZWxcIj5cbiAgICAgICAgICAgIHt7ICdwbGF0Zm9ybVZIRC5zZWxlY3RUYWJEaXNwbGF5Q291bnRMYWJlbCcgfCBmZFRyYW5zbGF0ZTogeyBjb3VudDogZGlzcGxheWVkRGF0YS5sZW5ndGggfSB9fVxuICAgICAgICA8L2xhYmVsPlxuICAgICAgICA8dGhlYWQgZmQtdGFibGUtaGVhZGVyPlxuICAgICAgICAgICAgQGlmIChkaXNwbGF5ZWREYXRhLmxlbmd0aCAmJiBfdGFibGVGaWx0ZXJzKSB7XG4gICAgICAgICAgICAgICAgPHRyIGZkLXRhYmxlLXJvdz5cbiAgICAgICAgICAgICAgICAgICAgPHRoIGZkLXRhYmxlLWNlbGwgW2ZpdENvbnRlbnRdPVwibW9iaWxlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGlzTXVsdGlTZWxlY3Rpb24pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmQtY2hlY2tib3hcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25hbWVdPVwidWlkICsgJy1yb3ctYWxsJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0cmlzdGF0ZV09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3RyaXN0YXRlU2VsZWN0YWJsZV09XCJmYWxzZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ01vZGVsXT1cIl9zZWxlY3RlZEFsbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIl90b2dnbGVBbGxSb3dzKClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L2ZkLWNoZWNrYm94PlxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICA8L3RoPlxuICAgICAgICAgICAgICAgICAgICBAZm9yIChcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbHRlciBvZiBfdGFibGVGaWx0ZXJzLm1haW47XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFjayBfdHJhY2tCeUZpbHRlckZuKGNvbGluZGV4LCBmaWx0ZXIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGNvbGluZGV4ID0gJGluZGV4XG4gICAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgPHRoIGZkLXRhYmxlLWNlbGwgW2F0dHIuYXJpYS1jb2xpbmRleF09XCJjb2xpbmRleFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGZpbHRlci5sYWJlbCB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvdGhlYWQ+XG4gICAgICAgIDx0Ym9keSBmZC10YWJsZS1ib2R5PlxuICAgICAgICAgICAgQGZvciAoXG4gICAgICAgICAgICAgICAgcm93IG9mIGRpc3BsYXllZERhdGEgfCBzbGljZTogX3Nob3duRnJvbSA6IF9zaG93bkNvdW50O1xuICAgICAgICAgICAgICAgIHRyYWNrIF90cmFja0J5VGFibGVSb3dGbihpLCByb3cpO1xuICAgICAgICAgICAgICAgIGxldCBpID0gJGluZGV4XG4gICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICA8dHJcbiAgICAgICAgICAgICAgICAgICAgZmQtdGFibGUtcm93XG4gICAgICAgICAgICAgICAgICAgIFtob3ZlcmFibGVdPVwiIW1vYmlsZVwiXG4gICAgICAgICAgICAgICAgICAgIFttYWluXT1cIm1vYmlsZVwiXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtc2VsZWN0ZWRdPVwiX3NlbGVjdGVkTWFwW3Jvd1t1bmlxdWVLZXldXVwiXG4gICAgICAgICAgICAgICAgICAgIFthY3RpdmFibGVdPVwiIWlzTXVsdGlTZWxlY3Rpb25cIlxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiIWlzTXVsdGlTZWxlY3Rpb24gJiYgX3RvZ2dsZVNlbGVjdFJvdyhyb3cpXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDx0ZCBmZC10YWJsZS1jZWxsIFtmaXRDb250ZW50XT1cIm1vYmlsZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChpc011bHRpU2VsZWN0aW9uKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZkLWNoZWNrYm94XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuYW1lXT1cInVpZCArICctcm93LScgKyBpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nTW9kZWxdPVwiX3NlbGVjdGVkTWFwW3Jvd1t1bmlxdWVLZXldXVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjaGFuZ2UpPVwiX3RvZ2dsZVNlbGVjdFJvdyhyb3cpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9mZC1jaGVja2JveD5cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgQGZvciAoZmlsdGVyIG9mIF90YWJsZUZpbHRlcnMubWFpbjsgdHJhY2sgZmlsdGVyOyBsZXQgcm93SW5kZXggPSAkaW5kZXgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBmZC10YWJsZS1jZWxsIFthdHRyLmFyaWEtcm93aW5kZXhdPVwicm93SW5kZXhcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyByb3dbZmlsdGVyLmtleV0gfHwgJycgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgIEBpZiAobW9iaWxlICYmIF90YWJsZUZpbHRlcnMuc2Vjb25kYXJ5Lmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgICA8dHIgZmQtdGFibGUtcm93IFtzZWNvbmRhcnldPVwidHJ1ZVwiIFthdHRyLmFyaWEtc2VsZWN0ZWRdPVwiX3NlbGVjdGVkTWFwW3Jvd1t1bmlxdWVLZXldXVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGZkLXRhYmxlLWNlbGw+PC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjb2xzcGFuPVwiMTAwJVwiIGZkLXRhYmxlLWNlbGwgW2ZpdENvbnRlbnRdPVwidHJ1ZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBmb3IgKGZpbHRlciBvZiBfdGFibGVGaWx0ZXJzLnNlY29uZGFyeTsgdHJhY2sgZmlsdGVyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGZkLXRhYmxlLXRleHQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWw+e3sgZmlsdGVyLmxhYmVsIH19OjwvbGFiZWw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyByb3dbZmlsdGVyLmtleV0gfHwgJycgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGlmIChkaXNwbGF5ZWREYXRhLmxlbmd0aCAmJiBtb2JpbGUgJiYgX3Nob3duQ291bnQgJiYgX3Nob3duQ291bnQgIT09IGRpc3BsYXllZERhdGEubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgPHRyIGZkLXRhYmxlLXJvdz5cbiAgICAgICAgICAgICAgICAgICAgPHRkIGNvbHNwYW49XCIxMDAlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGZkLWJhciBiYXJEZXNpZ249XCJoZWFkZXItd2l0aC1zdWJoZWFkZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGZkLWJhci1taWRkbGU+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZC1iYXItZWxlbWVudD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZC1idXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZFR5cGU9XCJ0cmFuc3BhcmVudFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIidwbGF0Zm9ybVZIRC5zZWxlY3RUYWJNb3JlQnRuTGFiZWwnIHwgZmRUcmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJfc2hvd01vcmVFbGVtZW50cygpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9mZC1iYXItZWxlbWVudD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaWYgKCFkaXNwbGF5ZWREYXRhLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIEBpZiAobG9hZGluZykge1xuICAgICAgICAgICAgICAgICAgICA8dHIgZmQtdGFibGUtcm93ICpmZGtSZXBlYXQ9XCIzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQgZmQtdGFibGUtY2VsbCAqZmRrUmVwZWF0PVwiM1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZC1za2VsZXRvbiBbc3R5bGUubWFyZ2luXT1cIidhdXRvIDAnXCIgdHlwZT1cInRleHRcIiB0ZXh0TGluZXM9XCIxXCIgd2lkdGg9XCI2MCVcIj48L2ZkLXNrZWxldG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgPHRyIGZkLXRhYmxlLXJvdz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBmZC10YWJsZS1jZWxsIGNvbHNwYW49XCIxMDAlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZkcC12YWx1ZS1oZWxwLWRpYWxvZ19fZW1wdHktbWVzc2FnZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyAncGxhdGZvcm1WSEQuc2VhcmNoVGFibGVFbXB0eU1lc3NhZ2UnIHwgZmRUcmFuc2xhdGUgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICA8L3Rib2R5PlxuICAgIDwvdGFibGU+XG48L2Rpdj5cbiJdfQ==
|
|
312
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LXRhYi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3ZhbHVlLWhlbHAtZGlhbG9nL2NvbXBvbmVudHMvc2VsZWN0LXRhYi9zZWxlY3QtdGFiLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vdmFsdWUtaGVscC1kaWFsb2cvY29tcG9uZW50cy9zZWxlY3QtdGFiL3NlbGVjdC10YWIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsdURBQXVEO0FBQ3ZELE9BQU8sRUFFSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFFTixTQUFTLEVBQ1QsaUJBQWlCLEVBQ2pCLE1BQU0sRUFDVCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDckQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzlELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDckYsT0FBTyxFQUFFLFlBQVksRUFBRSxtQkFBbUIsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2xHLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsdUJB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bnQvbWVtYmVyLW9yZGVyaW5nICovXG5pbXBvcnQge1xuICAgIEFmdGVyVmlld0luaXQsXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIERlc3Ryb3lSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIElucHV0LFxuICAgIE9uQ2hhbmdlcyxcbiAgICBPdXRwdXQsXG4gICAgU2ltcGxlQ2hhbmdlcyxcbiAgICBWaWV3Q2hpbGQsXG4gICAgVmlld0VuY2Fwc3VsYXRpb24sXG4gICAgaW5qZWN0XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBDZGtTY3JvbGxhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgTmdUZW1wbGF0ZU91dGxldCwgU2xpY2VQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgRm9jdXNhYmxlR3JpZERpcmVjdGl2ZSwgUmVwZWF0RGlyZWN0aXZlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jZGsvdXRpbHMnO1xuaW1wb3J0IHsgQmFyQ29tcG9uZW50LCBCYXJFbGVtZW50RGlyZWN0aXZlLCBCYXJNaWRkbGVEaXJlY3RpdmUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvYmFyJztcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9idXR0b24nO1xuaW1wb3J0IHsgQ2hlY2tib3hDb21wb25lbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvY2hlY2tib3gnO1xuaW1wb3J0IHsgRm9ybUxhYmVsQ29tcG9uZW50IH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2Zvcm0nO1xuaW1wb3J0IHsgSW5maW5pdGVTY3JvbGxEaXJlY3RpdmUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvaW5maW5pdGUtc2Nyb2xsJztcbmltcG9ydCB7IFNjcm9sbGJhckRpcmVjdGl2ZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9zY3JvbGxiYXInO1xuaW1wb3J0IHsgU2tlbGV0b25Db21wb25lbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvc2tlbGV0b24nO1xuaW1wb3J0IHtcbiAgICBUYWJsZUJvZHlEaXJlY3RpdmUsXG4gICAgVGFibGVDZWxsRGlyZWN0aXZlLFxuICAgIFRhYmxlQ29tcG9uZW50LFxuICAgIFRhYmxlSGVhZGVyRGlyZWN0aXZlLFxuICAgIFRhYmxlUm93RGlyZWN0aXZlLFxuICAgIFRhYmxlVGV4dERpcmVjdGl2ZVxufSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvdGFibGUnO1xuaW1wb3J0IHsgVGl0bGVDb21wb25lbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvdGl0bGUnO1xuaW1wb3J0IHsgRmRUcmFuc2xhdGVQaXBlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9pMThuJztcbmltcG9ydCB7IHN0YXJ0V2l0aCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgVmFsdWVIZWxwQ29sdW1uRGVmRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy92YWx1ZS1oZWxwLWNvbHVtbi1kZWYuZGlyZWN0aXZlJztcbmltcG9ydCB7IFZkaFRhYmxlU2VsZWN0aW9uLCBWaGRGaWx0ZXIgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgVmhkQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbW9kZWxzL3ZoZC1jb21wb25lbnQubW9kZWwnO1xuaW1wb3J0IHsgVmhkQmFzZVRhYiB9IGZyb20gJy4uL2Jhc2UtdGFiL3ZoZC1iYXNlLXRhYi5jb21wb25lbnQnO1xuXG5sZXQgdGl0bGVVbmlxdWVJZCA9IDA7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZmRwLXNlbGVjdC10YWInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9zZWxlY3QtdGFiLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybDogJy4vc2VsZWN0LXRhYi5jb21wb25lbnQuc2NzcycsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgVGl0bGVDb21wb25lbnQsXG4gICAgICAgIENka1Njcm9sbGFibGUsXG4gICAgICAgIFNjcm9sbGJhckRpcmVjdGl2ZSxcbiAgICAgICAgSW5maW5pdGVTY3JvbGxEaXJlY3RpdmUsXG4gICAgICAgIEZvY3VzYWJsZUdyaWREaXJlY3RpdmUsXG4gICAgICAgIFRhYmxlQ29tcG9uZW50LFxuICAgICAgICBGb3JtTGFiZWxDb21wb25lbnQsXG4gICAgICAgIFRhYmxlSGVhZGVyRGlyZWN0aXZlLFxuICAgICAgICBUYWJsZVJvd0RpcmVjdGl2ZSxcbiAgICAgICAgVGFibGVDZWxsRGlyZWN0aXZlLFxuICAgICAgICBDaGVja2JveENvbXBvbmVudCxcbiAgICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICAgIFRhYmxlQm9keURpcmVjdGl2ZSxcbiAgICAgICAgVGFibGVUZXh0RGlyZWN0aXZlLFxuICAgICAgICBCYXJDb21wb25lbnQsXG4gICAgICAgIEJhck1pZGRsZURpcmVjdGl2ZSxcbiAgICAgICAgQmFyRWxlbWVudERpcmVjdGl2ZSxcbiAgICAgICAgQnV0dG9uQ29tcG9uZW50LFxuICAgICAgICBSZXBlYXREaXJlY3RpdmUsXG4gICAgICAgIFNrZWxldG9uQ29tcG9uZW50LFxuICAgICAgICBTbGljZVBpcGUsXG4gICAgICAgIEZkVHJhbnNsYXRlUGlwZSxcbiAgICAgICAgTmdUZW1wbGF0ZU91dGxldFxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgU2VsZWN0VGFiQ29tcG9uZW50PFQ+IGV4dGVuZHMgVmhkQmFzZVRhYiBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgQWZ0ZXJWaWV3SW5pdCB7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcm90ZWN0ZWQgZGVmYXVsdFRpdGxlSWQgPSBgZmQtc2VsZWN0LXRhYi10aXRsZS1pZC0ke3RpdGxlVW5pcXVlSWQrK31gO1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJvdGVjdGVkIGRlZmF1bHRDb3VudElkID0gYGZkLXNlbGVjdC10YWItdGl0bGUtY291bnQtaWQtJHt0aXRsZVVuaXF1ZUlkKyt9YDtcblxuICAgIC8qKiBTZWxlY3QgdGFiIHRpdGxlIGVsZW1lbnQgSUQgKi9cbiAgICBASW5wdXQoKVxuICAgIHNlbGVjdFRhYlRpdGxlSWQ6IHN0cmluZyA9IHRoaXMuZGVmYXVsdFRpdGxlSWQ7XG5cbiAgICAvKiogU2VsZWN0IHRhYiBjb3VudCBlbGVtZW50IElEICovXG4gICAgQElucHV0KClcbiAgICBzZWxlY3RUYWJDb3VudElkOiBzdHJpbmcgPSB0aGlzLmRlZmF1bHRDb3VudElkO1xuXG4gICAgLyoqIFNlbGVjdGVkIGl0ZW1zICovXG4gICAgQElucHV0KClcbiAgICBzZWxlY3RlZDogVFtdID0gW107XG5cbiAgICAvKiogTG9hZGluZyBzdGF0ZSAqL1xuICAgIEBJbnB1dCgpXG4gICAgbG9hZGluZyA9IGZhbHNlO1xuXG4gICAgLyoqIEFjdHVhbCBmaWx0ZXJzICovXG4gICAgQElucHV0KClcbiAgICBmaWx0ZXJzOiBWaGRGaWx0ZXJbXSA9IFtdO1xuXG4gICAgLyoqIENsb3NlIGRpYWxvZyBpbW1lZGlhdGVseSBhZnRlciBzZWxlY3QgYW55IHJvdyBmcm9tIHNlYXJjaCB0YWJsZS4gSXQnbGwgYmUgc2tpcHBlZCBpZiBtdWx0aSBvcHRpb24gaXMgdHJ1ZSAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2VsZWN0aW9uOiBWZGhUYWJsZVNlbGVjdGlvbiA9ICdzaW5nbGUnO1xuXG4gICAgLyoqIFdoZXRoZXIgdG8gYWxsb3cgdXNlcnMgdG8gc2VsZWN0IGFsbCB0YWJsZSBlbnRyaWVzIHdpdGggb25lIGNoZWNrYm94LiAqL1xuICAgIEBJbnB1dCgpXG4gICAgYWxsb3dTZWxlY3RBbGwgPSB0cnVlO1xuXG4gICAgLyoqIFVuaXEgZmllbGQgZnJvbSBkYXRhIHNvdXJjZSAqL1xuICAgIEBJbnB1dCgpXG4gICAgdW5pcXVlS2V5ID0gJ2lkJztcblxuICAgIC8qKiBJdGVtcyBwZXIgcGFnZSBmb3IgcGFnaW5hdGlvbiBiZWxvdyBzZWFyY2ggdGFibGUgKi9cbiAgICBASW5wdXQoKVxuICAgIHBhZ2VTaXplOiBudW1iZXI7XG5cbiAgICAvKiogQ291bnQgb2YgZGVmYXVsdCBtb2JpbGUgaGVhZGVyIGZyb20gc2VhcmNoIHRhYmxlICovXG4gICAgQElucHV0KClcbiAgICBkZWZhdWx0TW9iaWxlSGVhZGVycyA9IDI7XG5cbiAgICAvKiogRGlzcGxheWVkIGRhdGEgZm9yIHNlYXJjaCB0YWJsZSAqL1xuICAgIEBJbnB1dCgpXG4gICAgZGlzcGxheWVkRGF0YTogVFtdID0gW107XG5cbiAgICAvKiogRXZlbnQgZW1pdHRlZCB3aGVuIHJvdyB3YXMgc2VsZWN0ZWQuICovXG4gICAgQE91dHB1dCgpXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1vdXRwdXQtbmF0aXZlXG4gICAgc2VsZWN0ID0gbmV3IEV2ZW50RW1pdHRlcjxUW10+KCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBWaWV3Q2hpbGQoSW5maW5pdGVTY3JvbGxEaXJlY3RpdmUpIGluZmluaXRlU2Nyb2xsVGFibGU6IEluZmluaXRlU2Nyb2xsRGlyZWN0aXZlO1xuXG4gICAgLyoqIEBoaWRkZW4gaW5kZXRlcm1pbmF0ZSBmbGFnIGZvciBgc2VsZWN0IGFsbGAgY2hlY2tib3ggKi9cbiAgICBfc2VsZWN0ZWRBbGw6IGJvb2xlYW4gfCBudWxsID0gZmFsc2U7XG5cbiAgICAvKiogQGhpZGRlbiBTaG93biBpdGVtcyBjb3VudCBpbiBtb2JpbGUgdmlldyAqL1xuICAgIF9zaG93bkZyb20gPSAwO1xuXG4gICAgLyoqIEBoaWRkZW4gU2hvd24gaXRlbXMgY291bnQgaW4gbW9iaWxlIHZpZXcgKi9cbiAgICBfc2hvd25Db3VudCA9IDA7XG5cbiAgICAvKiogQGhpZGRlbiBDdXJyZW50IHBhZ2UgaW4gZGVza3RvcCB2aWV3ICovXG4gICAgX2N1cnJlbnRQYWdlID0gMDtcblxuICAgIC8qKiBAaGlkZGVuIEhlYWRlcnMgYW5kIGJvZHkgZm9yIHNlYXJjaCB0YWJsZSAqL1xuICAgIF90YWJsZUZpbHRlcnM6IHtcbiAgICAgICAgbWFpbjogVmhkRmlsdGVyW107XG4gICAgICAgIHNlY29uZGFyeTogVmhkRmlsdGVyW107XG4gICAgfSA9IHtcbiAgICAgICAgbWFpbjogW10sXG4gICAgICAgIHNlY29uZGFyeTogW11cbiAgICB9O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfc2VsZWN0ZWRNYXA6IHsgW2tleTogc3RyaW5nXTogYm9vbGVhbiB9ID0ge307XG5cbiAgICAvKiogU2VsZWN0aW9uIHR5cGUgZ2V0dGVycyAqL1xuICAgIGdldCBpc1NpbmdsZVNlbGVjdGlvbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2VsZWN0aW9uID09PSAnc2luZ2xlJztcbiAgICB9XG4gICAgLyoqIFNlbGVjdGlvbiB0eXBlIGdldHRlcnMgKi9cbiAgICBnZXQgaXNPbmNlU2VsZWN0aW9uKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5zZWxlY3Rpb24gPT09ICdvbmNlJztcbiAgICB9XG4gICAgLyoqIFNlbGVjdGlvbiB0eXBlIGdldHRlcnMgKi9cbiAgICBnZXQgaXNNdWx0aVNlbGVjdGlvbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2VsZWN0aW9uID09PSAnbXVsdGknO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX2NvbHVtbkRlZk1hcCA9IG5ldyBNYXA8c3RyaW5nLCBWYWx1ZUhlbHBDb2x1bW5EZWZEaXJlY3RpdmU+KCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgc2VsZWN0ZWRJdGVtczogVFtdID0gW107XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgX3ZoZCA9IGluamVjdChWaGRDb21wb25lbnQsIHsgb3B0aW9uYWw6IHRydWUgfSk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgX2Rlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgUHJvbWlzZS5yZXNvbHZlKHRydWUpLnRoZW4oKCkgPT4gdGhpcy5fY2hlY2tTY3JvbGxBbmRTaG93TW9yZSgpKTtcblxuICAgICAgICB0aGlzLl92aGQ/LmNvbHVtbkRlZi5jaGFuZ2VzLnBpcGUoc3RhcnRXaXRoKG51bGwpLCB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5fZGVzdHJveVJlZikpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLl9jb2x1bW5EZWZNYXAuY2xlYXIoKTtcbiAgICAgICAgICAgIHRoaXMuX3ZoZD8uY29sdW1uRGVmLmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLl9jb2x1bW5EZWZNYXAuc2V0KGl0ZW0uY29sdW1uLCBpdGVtKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAgKi9cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmICgnZmlsdGVycycgaW4gY2hhbmdlcykge1xuICAgICAgICAgICAgdGhpcy5faW5pdGlhbGl6ZUZpbHRlcnMoKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoJ2Rpc3BsYXllZERhdGEnIGluIGNoYW5nZXMpIHtcbiAgICAgICAgICAgIHRoaXMuX3JlZnJlc2hEaXNwbGF5ZWREYXRhKCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCdzZWxlY3RlZCcgaW4gY2hhbmdlcykge1xuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZEl0ZW1zID0gdGhpcy5zZWxlY3RlZCB8fCBbXTtcbiAgICAgICAgICAgIHRoaXMuX3JlZnJlc2hTZWxlY3RlZE1hcCgpO1xuICAgICAgICAgICAgdGhpcy5fcmVmcmVzaFRyaXN0YXRlKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiBUcmFjayBmdW5jdGlvbiBmb3IgbWFpbiBkYXRhICovXG4gICAgX3RyYWNrQnlUYWJsZVJvd0ZuOiAoX2luZGV4OiBudW1iZXIsIGl0ZW06IFQpID0+IHN0cmluZyB8IHVuZGVmaW5lZCA9IChfaW5kZXg6IG51bWJlciwgaXRlbTogVCkgPT4ge1xuICAgICAgICBpZiAoaXRlbSkge1xuICAgICAgICAgICAgcmV0dXJuIGl0ZW1bdGhpcy51bmlxdWVLZXldO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9O1xuXG4gICAgLyoqIEBoaWRkZW4gVHJhY2sgZnVuY3Rpb24gZm9yIGZpbHRlcnMgKi9cbiAgICBfdHJhY2tCeUZpbHRlckZuKF9pbmRleDogbnVtYmVyLCBpdGVtOiBWaGRGaWx0ZXIpOiBudW1iZXIgfCBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gaXRlbSAmJiBpdGVtLmtleSA/IGl0ZW0ua2V5IDogdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuIFNob3cgbW9yZSBlbGVtZW50cyAqL1xuICAgIF9zaG93TW9yZUVsZW1lbnRzKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5wYWdlU2l6ZSAmJiB0aGlzLl9zaG93bkNvdW50ICE9PSB0aGlzLmRpc3BsYXllZERhdGEubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLl9zaG93bkNvdW50ICs9IHRoaXMucGFnZVNpemU7XG4gICAgICAgICAgICB0aGlzLl9zaG93bkNvdW50ID0gTWF0aC5taW4odGhpcy5fc2hvd25Db3VudCwgdGhpcy5kaXNwbGF5ZWREYXRhLmxlbmd0aCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLl9zaG93bkNvdW50ID0gdGhpcy5kaXNwbGF5ZWREYXRhLmxlbmd0aDtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiBSZWZyZXNoIHBhZ2UgaW4gZGVza3RvcCB2aWV3ICovXG4gICAgX3VwZGF0ZVBhZ2UocGFnZU51bWJlciA9IDEpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMucGFnZVNpemUpIHtcbiAgICAgICAgICAgIHRoaXMuX2N1cnJlbnRQYWdlID0gcGFnZU51bWJlcjtcbiAgICAgICAgICAgIHRoaXMuX3Nob3duRnJvbSA9IChwYWdlTnVtYmVyIC0gMSkgKiB0aGlzLnBhZ2VTaXplO1xuICAgICAgICAgICAgdGhpcy5fc2hvd25Db3VudCA9IE1hdGgubWluKHRoaXMuX3Nob3duRnJvbSArIHRoaXMucGFnZVNpemUsIHRoaXMuZGlzcGxheWVkRGF0YS5sZW5ndGgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5fc2hvd25Db3VudCA9IHRoaXMuZGlzcGxheWVkRGF0YS5sZW5ndGg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiBNZXRob2QgdG9nZ2xlIHNlbGVjdGVkIHN0YXRlIGZvciBhbGwgaXRlbXMgICovXG4gICAgX3RvZ2dsZUFsbFJvd3MoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLl9zZWxlY3RlZEFsbCkge1xuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZEl0ZW1zID0gW107XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbXMgPSB0aGlzLmRpc3BsYXllZERhdGE7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5zZWxlY3QuZW1pdCh0aGlzLnNlbGVjdGVkSXRlbXMpO1xuICAgICAgICB0aGlzLl9yZWZyZXNoU2VsZWN0ZWRNYXAoKTtcbiAgICAgICAgdGhpcy5fcmVmcmVzaFRyaXN0YXRlKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gTWV0aG9kIHRvZ2dsZSBzZWxlY3RlZCBzdGF0ZSBmb3Igb25lIGl0ZW1zICAqL1xuICAgIF90b2dnbGVTZWxlY3RSb3coaXRlbTogVCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5pc011bHRpU2VsZWN0aW9uKSB7XG4gICAgICAgICAgICBjb25zdCBpc1NlbGVjdGVkID0gdGhpcy5fc2VsZWN0ZWRNYXBbaXRlbVt0aGlzLnVuaXF1ZUtleV1dO1xuICAgICAgICAgICAgaWYgKGlzU2VsZWN0ZWQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbXMgPSB0aGlzLnNlbGVjdGVkSXRlbXMuZmlsdGVyKChzOiBUKSA9PiBzW3RoaXMudW5pcXVlS2V5XSAhPT0gaXRlbVt0aGlzLnVuaXF1ZUtleV0pO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbXMucHVzaChpdGVtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuX3NlbGVjdGVkTWFwW2l0ZW1bdGhpcy51bmlxdWVLZXldXSA9ICF0aGlzLl9zZWxlY3RlZE1hcFtpdGVtW3RoaXMudW5pcXVlS2V5XV07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLl9jbGVhclNlbGVjdGVkSXRlbXMoKTtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtcyA9IFtpdGVtXTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnNlbGVjdC5lbWl0KHRoaXMuc2VsZWN0ZWRJdGVtcyk7XG4gICAgICAgIHRoaXMuX3JlZnJlc2hUcmlzdGF0ZSgpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfY2hlY2tTY3JvbGxBbmRTaG93TW9yZSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMubW9iaWxlKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgdGhpcy5kaXNwbGF5ZWREYXRhLmxlbmd0aCAmJlxuICAgICAgICAgICAgdGhpcy5fc2hvd25Db3VudCAhPT0gdGhpcy5kaXNwbGF5ZWREYXRhLmxlbmd0aCAmJlxuICAgICAgICAgICAgdGhpcy5pbmZpbml0ZVNjcm9sbFRhYmxlPy5zaG91bGRUcmlnZ2VyQWN0aW9uKClcbiAgICAgICAgKSB7XG4gICAgICAgICAgICB0aGlzLl9zaG93TW9yZUVsZW1lbnRzKCk7XG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLl9jaGVja1Njcm9sbEFuZFNob3dNb3JlKCk7XG4gICAgICAgICAgICB9LCAxMDApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9yZXNldFNob3duKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5tb2JpbGUpIHtcbiAgICAgICAgICAgIHRoaXMuX3Nob3dNb3JlRWxlbWVudHMoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuX2NoZWNrU2Nyb2xsQW5kU2hvd01vcmUoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuIE1hbnVhbGx5IGNsZWFyIHNlbGVjdGVkIGl0ZW1zICovXG4gICAgcHJpdmF0ZSBfY2xlYXJTZWxlY3RlZEl0ZW1zKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9zZWxlY3RlZE1hcCA9IHt9O1xuICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbXMgPSBbXTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiBSZWZyZXNoIGluZGV0ZXJtaW5hdGUgYXR0cmlidXRlIG9uIGBzZWxlY3QgYWxsYCBjaGVja2JveCAqL1xuICAgIHByaXZhdGUgX3JlZnJlc2hUcmlzdGF0ZSgpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWQgPSBPYmplY3QudmFsdWVzKHRoaXMuX3NlbGVjdGVkTWFwKS5maWx0ZXIoQm9vbGVhbikubGVuZ3RoO1xuICAgICAgICBpZiAoc2VsZWN0ZWQgPT09IDApIHtcbiAgICAgICAgICAgIHRoaXMuX3NlbGVjdGVkQWxsID0gZmFsc2U7XG4gICAgICAgIH0gZWxzZSBpZiAoc2VsZWN0ZWQgPT09IHRoaXMuZGlzcGxheWVkRGF0YS5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMuX3NlbGVjdGVkQWxsID0gdHJ1ZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuX3NlbGVjdGVkQWxsID0gbnVsbDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuIFNldCB1cCBmaWx0ZXJzICovXG4gICAgcHJpdmF0ZSBfaW5pdGlhbGl6ZUZpbHRlcnMoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLm1vYmlsZSkge1xuICAgICAgICAgICAgbGV0IF9tb2JpbGVUYWJsZUhlYWRlcnMgPSB0aGlzLmZpbHRlcnMuZmlsdGVyKChmKSA9PiBmLm1haW4pLm1hcCgoZikgPT4gZi5rZXkpO1xuICAgICAgICAgICAgaWYgKCFfbW9iaWxlVGFibGVIZWFkZXJzLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIF9tb2JpbGVUYWJsZUhlYWRlcnMgPSB0aGlzLmZpbHRlcnMuc2xpY2UoMCwgdGhpcy5kZWZhdWx0TW9iaWxlSGVhZGVycykubWFwKChmKSA9PiBmLmtleSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLl90YWJsZUZpbHRlcnMgPSB7XG4gICAgICAgICAgICAgICAgbWFpbjogdGhpcy5maWx0ZXJzLmZpbHRlcigoZmlsdGVyKSA9PiBfbW9iaWxlVGFibGVIZWFkZXJzLnNvbWUoKGtleSkgPT4ga2V5ID09PSBmaWx0ZXIua2V5KSksXG4gICAgICAgICAgICAgICAgc2Vjb25kYXJ5OiB0aGlzLmZpbHRlcnMuZmlsdGVyKChmaWx0ZXIpID0+ICFfbW9iaWxlVGFibGVIZWFkZXJzLnNvbWUoKGtleSkgPT4ga2V5ID09PSBmaWx0ZXIua2V5KSlcbiAgICAgICAgICAgIH07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLl90YWJsZUZpbHRlcnMgPSB7XG4gICAgICAgICAgICAgICAgbWFpbjogdGhpcy5maWx0ZXJzLFxuICAgICAgICAgICAgICAgIHNlY29uZGFyeTogW11cbiAgICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiBSZWZyZXNoIGRpc3BsYXkgZGF0YSAqL1xuICAgIHByaXZhdGUgX3JlZnJlc2hEaXNwbGF5ZWREYXRhKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9yZXNldFNob3duKCk7XG4gICAgICAgIHRoaXMuX3JlZnJlc2hUcmlzdGF0ZSgpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuIFJlZnJlc2ggc2VsZWN0ZWQgbWFwIGZvciBkaXNwbGF5IGRhdGEgKi9cbiAgICBwcml2YXRlIF9yZWZyZXNoU2VsZWN0ZWRNYXAoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3NlbGVjdGVkTWFwID0ge307XG4gICAgICAgIGZvciAoY29uc3QgaXRlbSBvZiB0aGlzLmRpc3BsYXllZERhdGEpIHtcbiAgICAgICAgICAgIHRoaXMuX3NlbGVjdGVkTWFwW2l0ZW1bdGhpcy51bmlxdWVLZXldXSA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIGZvciAoY29uc3QgcyBvZiB0aGlzLnNlbGVjdGVkSXRlbXMpIHtcbiAgICAgICAgICAgIHRoaXMuX3NlbGVjdGVkTWFwW3NbdGhpcy51bmlxdWVLZXldXSA9IHRydWU7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwidGFibGUtaGVhZGVyXCI+XG4gICAgPGg1IGZkLXRpdGxlIHJvbGU9XCJoZWFkaW5nXCIgYXJpYS1sZXZlbD1cIjVcIj5cbiAgICAgICAge3sgJ3BsYXRmb3JtVkhELnNlbGVjdFRhYkRpc3BsYXlDb3VudExhYmVsJyB8IGZkVHJhbnNsYXRlOiB7IGNvdW50OiBkaXNwbGF5ZWREYXRhLmxlbmd0aCB9IH19XG4gICAgPC9oNT5cbjwvZGl2PlxuPGRpdlxuICAgIGNsYXNzPVwiZmRwLXZhbHVlLWhlbHAtZGlhbG9nX190YWJsZS1ob2xkZXIgdGFibGUtY29udGVudFwiXG4gICAgZmQtc2Nyb2xsYmFyXG4gICAgZmRJbmZpbml0ZVNjcm9sbFxuICAgIChvblNjcm9sbEFjdGlvbik9XCJfc2hvd01vcmVFbGVtZW50cygpXCJcbiAgICBbc2Nyb2xsUGVyY2VudF09XCI4MFwiXG4gICAgcm9sZT1cInRhYmxlXCJcbj5cbiAgICA8dGFibGVcbiAgICAgICAgZmQtdGFibGVcbiAgICAgICAgW3BvcEluXT1cIm1vYmlsZVwiXG4gICAgICAgIFtub0JvcmRlclhdPVwibW9iaWxlXCJcbiAgICAgICAgW25vQm9yZGVyWV09XCJmYWxzZVwiXG4gICAgICAgIFthdHRyLmFyaWEtY29sY291bnRdPVwiX3RhYmxlRmlsdGVycy5tYWluLmxlbmd0aFwiXG4gICAgICAgIFthdHRyLmFyaWEtcm93Y291bnRdPVwiZGlzcGxheWVkRGF0YS5sZW5ndGhcIlxuICAgICAgICByb2xlPVwiZ3JpZFwiXG4gICAgICAgIGFyaWEtbXVsdGlzZWxlY3RhYmxlPVwidHJ1ZVwiXG4gICAgICAgIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJzZWxlY3RUYWJUaXRsZUlkICsgJyAnICsgc2VsZWN0VGFiQ291bnRJZFwiXG4gICAgPlxuICAgICAgICA8bGFiZWwgW2lkXT1cInNlbGVjdFRhYkNvdW50SWRcIiBmZC1mb3JtLWxhYmVsIGNsYXNzPVwiZmRwLXZhbHVlLWhlbHAtZGlhbG9nX19oaWRkZW5fbGFiZWxcIj5cbiAgICAgICAgICAgIHt7XG4gICAgICAgICAgICAgICAgJ3BsYXRmb3JtVkhELnNlbGVjdFRhYkNvdW50SGlkZGVuQTExeUxhYmVsJ1xuICAgICAgICAgICAgICAgICAgICB8IGZkVHJhbnNsYXRlOiB7IHJvd0NvdW50OiBkaXNwbGF5ZWREYXRhLmxlbmd0aCwgY29sQ291bnQ6IF90YWJsZUZpbHRlcnMubWFpbi5sZW5ndGggfVxuICAgICAgICAgICAgfX1cbiAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgPGxhYmVsIFtpZF09XCJzZWxlY3RUYWJUaXRsZUlkXCIgZmQtZm9ybS1sYWJlbCBjbGFzcz1cImZkcC12YWx1ZS1oZWxwLWRpYWxvZ19faGlkZGVuX2xhYmVsXCI+XG4gICAgICAgICAgICB7eyAncGxhdGZvcm1WSEQuc2VsZWN0VGFiRGlzcGxheUNvdW50TGFiZWwnIHwgZmRUcmFuc2xhdGU6IHsgY291bnQ6IGRpc3BsYXllZERhdGEubGVuZ3RoIH0gfX1cbiAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgPHRoZWFkIGZkLXRhYmxlLWhlYWRlcj5cbiAgICAgICAgICAgIEBpZiAoZGlzcGxheWVkRGF0YS5sZW5ndGggJiYgX3RhYmxlRmlsdGVycykge1xuICAgICAgICAgICAgICAgIDx0ciBmZC10YWJsZS1yb3c+XG4gICAgICAgICAgICAgICAgICAgIDx0aCBmZC10YWJsZS1jZWxsIFtmaXRDb250ZW50XT1cIm1vYmlsZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChpc011bHRpU2VsZWN0aW9uICYmIGFsbG93U2VsZWN0QWxsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZkLWNoZWNrYm94XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuYW1lXT1cInVpZCArICctcm93LWFsbCdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdHJpc3RhdGVdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0cmlzdGF0ZVNlbGVjdGFibGVdPVwiZmFsc2VcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdNb2RlbF09XCJfc2VsZWN0ZWRBbGxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJfdG9nZ2xlQWxsUm93cygpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9mZC1jaGVja2JveD5cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgPC90aD5cbiAgICAgICAgICAgICAgICAgICAgQGZvciAoXG4gICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXIgb2YgX3RhYmxlRmlsdGVycy5tYWluO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhY2sgX3RyYWNrQnlGaWx0ZXJGbihjb2xpbmRleCwgZmlsdGVyKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCBjb2xpbmRleCA9ICRpbmRleFxuICAgICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBmZC10YWJsZS1jZWxsIFthdHRyLmFyaWEtY29saW5kZXhdPVwiY29saW5kZXhcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBmaWx0ZXIubGFiZWwgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgfVxuICAgICAgICA8L3RoZWFkPlxuICAgICAgICA8dGJvZHkgZmQtdGFibGUtYm9keT5cbiAgICAgICAgICAgIEBmb3IgKFxuICAgICAgICAgICAgICAgIHJvdyBvZiBkaXNwbGF5ZWREYXRhIHwgc2xpY2U6IF9zaG93bkZyb20gOiBfc2hvd25Db3VudDtcbiAgICAgICAgICAgICAgICB0cmFjayBfdHJhY2tCeVRhYmxlUm93Rm4oaSwgcm93KTtcbiAgICAgICAgICAgICAgICBsZXQgaSA9ICRpbmRleFxuICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgPHRyXG4gICAgICAgICAgICAgICAgICAgIGZkLXRhYmxlLXJvd1xuICAgICAgICAgICAgICAgICAgICBbaG92ZXJhYmxlXT1cIiFtb2JpbGVcIlxuICAgICAgICAgICAgICAgICAgICBbbWFpbl09XCJtb2JpbGVcIlxuICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLXNlbGVjdGVkXT1cIl9zZWxlY3RlZE1hcFtyb3dbdW5pcXVlS2V5XV1cIlxuICAgICAgICAgICAgICAgICAgICBbYWN0aXZhYmxlXT1cIiFpc011bHRpU2VsZWN0aW9uXCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIiFpc011bHRpU2VsZWN0aW9uICYmIF90b2dnbGVTZWxlY3RSb3cocm93KVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8dGQgZmQtdGFibGUtY2VsbCBbZml0Q29udGVudF09XCJtb2JpbGVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoaXNNdWx0aVNlbGVjdGlvbikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZC1jaGVja2JveFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmFtZV09XCJ1aWQgKyAnLXJvdy0nICsgaVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ01vZGVsXT1cIl9zZWxlY3RlZE1hcFtyb3dbdW5pcXVlS2V5XV1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2hhbmdlKT1cIl90b2dnbGVTZWxlY3RSb3cocm93KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvZmQtY2hlY2tib3g+XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgIEBmb3IgKGZpbHRlciBvZiBfdGFibGVGaWx0ZXJzLm1haW47IHRyYWNrIGZpbHRlcjsgbGV0IHJvd0luZGV4ID0gJGluZGV4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQgZmQtdGFibGUtY2VsbCBbYXR0ci5hcmlhLXJvd2luZGV4XT1cInJvd0luZGV4XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChfY29sdW1uRGVmTWFwLmdldChmaWx0ZXIua2V5KTsgYXMgY29sdW1uRGVmKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiY29sdW1uRGVmLnRlbXBsYXRlUmVmXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGltcGxpY2l0OiByb3csXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga2V5OiBmaWx0ZXIua2V5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiByb3dbZmlsdGVyLmtleV0gfHwgJydcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgcm93W2ZpbHRlci5rZXldIHx8ICcnIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgQGlmIChtb2JpbGUgJiYgX3RhYmxlRmlsdGVycy5zZWNvbmRhcnkubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgIDx0ciBmZC10YWJsZS1yb3cgW3NlY29uZGFyeV09XCJ0cnVlXCIgW2F0dHIuYXJpYS1zZWxlY3RlZF09XCJfc2VsZWN0ZWRNYXBbcm93W3VuaXF1ZUtleV1dXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQgZmQtdGFibGUtY2VsbD48L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNvbHNwYW49XCIxMDAlXCIgZmQtdGFibGUtY2VsbCBbZml0Q29udGVudF09XCJ0cnVlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGZvciAoZmlsdGVyIG9mIF90YWJsZUZpbHRlcnMuc2Vjb25kYXJ5OyB0cmFjayBmaWx0ZXIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgZmQtdGFibGUtdGV4dD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbD57eyBmaWx0ZXIubGFiZWwgfX06PC9sYWJlbD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IHJvd1tmaWx0ZXIua2V5XSB8fCAnJyB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaWYgKGRpc3BsYXllZERhdGEubGVuZ3RoICYmIG1vYmlsZSAmJiBfc2hvd25Db3VudCAmJiBfc2hvd25Db3VudCAhPT0gZGlzcGxheWVkRGF0YS5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICA8dHIgZmQtdGFibGUtcm93PlxuICAgICAgICAgICAgICAgICAgICA8dGQgY29sc3Bhbj1cIjEwMCVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgZmQtYmFyIGJhckRlc2lnbj1cImhlYWRlci13aXRoLXN1YmhlYWRlclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgZmQtYmFyLW1pZGRsZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZkLWJhci1lbGVtZW50PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZkLWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZkVHlwZT1cInRyYW5zcGFyZW50XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ3BsYXRmb3JtVkhELnNlbGVjdFRhYk1vcmVCdG5MYWJlbCcgfCBmZFRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIl9zaG93TW9yZUVsZW1lbnRzKClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2ZkLWJhci1lbGVtZW50PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpZiAoIWRpc3BsYXllZERhdGEubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgQGlmIChsb2FkaW5nKSB7XG4gICAgICAgICAgICAgICAgICAgIDx0ciBmZC10YWJsZS1yb3cgKmZka1JlcGVhdD1cIjNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBmZC10YWJsZS1jZWxsICpmZGtSZXBlYXQ9XCIzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZkLXNrZWxldG9uIFtzdHlsZS5tYXJnaW5dPVwiJ2F1dG8gMCdcIiB0eXBlPVwidGV4dFwiIHRleHRMaW5lcz1cIjFcIiB3aWR0aD1cIjYwJVwiPjwvZmQtc2tlbGV0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICA8dHIgZmQtdGFibGUtcm93PlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGZkLXRhYmxlLWNlbGwgY29sc3Bhbj1cIjEwMCVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmRwLXZhbHVlLWhlbHAtZGlhbG9nX19lbXB0eS1tZXNzYWdlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7ICdwbGF0Zm9ybVZIRC5zZWFyY2hUYWJsZUVtcHR5TWVzc2FnZScgfCBmZFRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvdGJvZHk+XG4gICAgPC90YWJsZT5cbjwvZGl2PlxuIl19
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
|
|
1
|
+
import { ChangeDetectionStrategy, Component, ContentChild, Input } from '@angular/core';
|
|
2
|
+
import { ValueHelpFilterDefDirective } from '../../directives/value-help-filter-def.directive';
|
|
2
3
|
import * as i0 from "@angular/core";
|
|
3
4
|
export class VhdFilterComponent {
|
|
4
5
|
constructor() {
|
|
@@ -14,10 +15,10 @@ export class VhdFilterComponent {
|
|
|
14
15
|
/** Allow to use filter for excluding in `define conditions tab` */
|
|
15
16
|
this.exclude = true;
|
|
16
17
|
}
|
|
17
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.
|
|
18
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.
|
|
18
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: VhdFilterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
19
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.8", type: VhdFilterComponent, isStandalone: true, selector: "fdp-value-help-dialog-filter", inputs: { key: "key", main: "main", label: "label", value: "value", advanced: "advanced", include: "include", exclude: "exclude" }, queries: [{ propertyName: "filterDef", first: true, predicate: ValueHelpFilterDefDirective, descendants: true }], ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
19
20
|
}
|
|
20
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.
|
|
21
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: VhdFilterComponent, decorators: [{
|
|
21
22
|
type: Component,
|
|
22
23
|
args: [{
|
|
23
24
|
selector: 'fdp-value-help-dialog-filter',
|
|
@@ -39,5 +40,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImpor
|
|
|
39
40
|
type: Input
|
|
40
41
|
}], exclude: [{
|
|
41
42
|
type: Input
|
|
43
|
+
}], filterDef: [{
|
|
44
|
+
type: ContentChild,
|
|
45
|
+
args: [ValueHelpFilterDefDirective]
|
|
42
46
|
}] } });
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsdWUtaGVscC1kaWFsb2ctZmlsdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vdmFsdWUtaGVscC1kaWFsb2cvY29tcG9uZW50cy92YWx1ZS1oZWxwLWRpYWxvZy1maWx0ZXIvdmFsdWUtaGVscC1kaWFsb2ctZmlsdGVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHeEYsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sa0RBQWtELENBQUM7O0FBUy9GLE1BQU0sT0FBTyxrQkFBa0I7SUFOL0I7UUFXSTt5Q0FDaUM7UUFFakMsU0FBSSxHQUFHLEtBQUssQ0FBQztRQU1iLCtFQUErRTtRQUUvRSxVQUFLLEdBQUcsRUFBRSxDQUFDO1FBRVgsdURBQXVEO1FBRXZELGFBQVEsR0FBRyxJQUFJLENBQUM7UUFFaEIsbUVBQW1FO1FBRW5FLFlBQU8sR0FBRyxJQUFJLENBQUM7UUFFZixtRUFBbUU7UUFFbkUsWUFBTyxHQUFHLElBQUksQ0FBQztLQUtsQjs4R0FqQ1ksa0JBQWtCO2tHQUFsQixrQkFBa0IsbVFBK0JiLDJCQUEyQixnREFuQy9CLEVBQUU7OzJGQUlILGtCQUFrQjtrQkFOOUIsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsOEJBQThCO29CQUN4QyxRQUFRLEVBQUUsRUFBRTtvQkFDWixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsVUFBVSxFQUFFLElBQUk7aUJBQ25COzhCQUlHLEdBQUc7c0JBREYsS0FBSztnQkFNTixJQUFJO3NCQURILEtBQUs7Z0JBS04sS0FBSztzQkFESixLQUFLO2dCQUtOLEtBQUs7c0JBREosS0FBSztnQkFLTixRQUFRO3NCQURQLEtBQUs7Z0JBS04sT0FBTztzQkFETixLQUFLO2dCQUtOLE9BQU87c0JBRE4sS0FBSztnQkFLTixTQUFTO3NCQURSLFlBQVk7dUJBQUMsMkJBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgQ29udGVudENoaWxkLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBOdWxsYWJsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY2RrL3V0aWxzJztcbmltcG9ydCB7IFZhbHVlSGVscEZpbHRlckRlZkRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvdmFsdWUtaGVscC1maWx0ZXItZGVmLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBWaGRGaWx0ZXIgfSBmcm9tICcuLi8uLi9tb2RlbHMvdmhkLWZpbHRlci5tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZmRwLXZhbHVlLWhlbHAtZGlhbG9nLWZpbHRlcicsXG4gICAgdGVtcGxhdGU6ICcnLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgVmhkRmlsdGVyQ29tcG9uZW50IGltcGxlbWVudHMgVmhkRmlsdGVyIHtcbiAgICAvKiogVW5pcSBrZXkgZm9yIHNlYXJjaCBhbmQgZmlsdGVyaW5nICovXG4gICAgQElucHV0KClcbiAgICBrZXk6IHN0cmluZztcblxuICAgIC8qKiBBbGxvdyB0byBjb250cm9sIHdoaWNoIG9mIGZpbHRlcnMgc2hvdWxkIHNob3cgYXMgbWFpbiBpbiBtb2JpbGUgdmlldy5cbiAgICAgKiBBcHBseSBmb3Igc2VhcmNoIHRhYmxlIG9ubHkgKi9cbiAgICBASW5wdXQoKVxuICAgIG1haW4gPSBmYWxzZTtcblxuICAgIC8qKiBMYWJlbCBmb3IgaGVhZGVyIGluIHNlYXJjaCB0YWJsZSBhbmQgc2VhcmNoIGZpZWxkICovXG4gICAgQElucHV0KClcbiAgICBsYWJlbDogc3RyaW5nO1xuXG4gICAgLyoqIEluaXRpYWwgZmlsdGVyJ3MgdmFsdWUgZm9yIHNlYXJjaCBzZWN0aW9uIGluIGBzZWxlY3QgZnJvbSBsaXN0IHRhYmAgb25seSAqL1xuICAgIEBJbnB1dCgpXG4gICAgdmFsdWUgPSAnJztcblxuICAgIC8qKiBBbGxvdyB0byBzaG93IGZpbHRlciBpbiBhZHZhbmNlZCBzZWFyY2ggdGVtcGxhdGUgKi9cbiAgICBASW5wdXQoKVxuICAgIGFkdmFuY2VkID0gdHJ1ZTtcblxuICAgIC8qKiBBbGxvdyB0byB1c2UgZmlsdGVyIGZvciBpbmNsdWRpbmcgaW4gYGRlZmluZSBjb25kaXRpb25zIHRhYmAgKi9cbiAgICBASW5wdXQoKVxuICAgIGluY2x1ZGUgPSB0cnVlO1xuXG4gICAgLyoqIEFsbG93IHRvIHVzZSBmaWx0ZXIgZm9yIGV4Y2x1ZGluZyBpbiBgZGVmaW5lIGNvbmRpdGlvbnMgdGFiYCAqL1xuICAgIEBJbnB1dCgpXG4gICAgZXhjbHVkZSA9IHRydWU7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBDb250ZW50Q2hpbGQoVmFsdWVIZWxwRmlsdGVyRGVmRGlyZWN0aXZlKVxuICAgIGZpbHRlckRlZjogTnVsbGFibGU8VmFsdWVIZWxwRmlsdGVyRGVmRGlyZWN0aXZlPjtcbn1cbiJdfQ==
|
|
@@ -34,10 +34,10 @@ export class ConditionCountMessageDirective {
|
|
|
34
34
|
return null;
|
|
35
35
|
};
|
|
36
36
|
}
|
|
37
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.
|
|
38
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.
|
|
37
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: ConditionCountMessageDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
38
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.8", type: ConditionCountMessageDirective, isStandalone: true, selector: "[fdp-condition-count-message]", inputs: { maxCharacters: "maxCharacters" }, providers: [{ provide: NG_VALIDATORS, useExisting: ConditionCountMessageDirective, multi: true }], ngImport: i0 }); }
|
|
39
39
|
}
|
|
40
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.
|
|
40
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: ConditionCountMessageDirective, decorators: [{
|
|
41
41
|
type: Directive,
|
|
42
42
|
args: [{
|
|
43
43
|
// eslint-disable-next-line @angular-eslint/directive-selector
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { Directive, Input, TemplateRef, inject } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class ValueHelpColumnDefDirective {
|
|
4
|
+
constructor() {
|
|
5
|
+
/** Template reference */
|
|
6
|
+
this.templateRef = inject(TemplateRef);
|
|
7
|
+
}
|
|
8
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: ValueHelpColumnDefDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
9
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.8", type: ValueHelpColumnDefDirective, isStandalone: true, selector: "[fdpValueHelpColumnDef]", inputs: { as: ["fdpValueHelpColumnDefAs", "as"], column: ["fdpValueHelpColumnDefColumn", "column"] }, ngImport: i0 }); }
|
|
10
|
+
}
|
|
11
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: ValueHelpColumnDefDirective, decorators: [{
|
|
12
|
+
type: Directive,
|
|
13
|
+
args: [{
|
|
14
|
+
selector: '[fdpValueHelpColumnDef]',
|
|
15
|
+
standalone: true
|
|
16
|
+
}]
|
|
17
|
+
}], propDecorators: { as: [{
|
|
18
|
+
type: Input,
|
|
19
|
+
args: ['fdpValueHelpColumnDefAs']
|
|
20
|
+
}], column: [{
|
|
21
|
+
type: Input,
|
|
22
|
+
args: ['fdpValueHelpColumnDefColumn']
|
|
23
|
+
}] } });
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsdWUtaGVscC1jb2x1bW4tZGVmLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vdmFsdWUtaGVscC1kaWFsb2cvZGlyZWN0aXZlcy92YWx1ZS1oZWxwLWNvbHVtbi1kZWYuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBWXRFLE1BQU0sT0FBTywyQkFBMkI7SUFKeEM7UUFZSSx5QkFBeUI7UUFDaEIsZ0JBQVcsR0FBRyxNQUFNLENBQTRDLFdBQVcsQ0FBQyxDQUFDO0tBQ3pGOzhHQVZZLDJCQUEyQjtrR0FBM0IsMkJBQTJCOzsyRkFBM0IsMkJBQTJCO2tCQUp2QyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSx5QkFBeUI7b0JBQ25DLFVBQVUsRUFBRSxJQUFJO2lCQUNuQjs4QkFJRyxFQUFFO3NCQURELEtBQUs7dUJBQUMseUJBQXlCO2dCQUtoQyxNQUFNO3NCQURMLEtBQUs7dUJBQUMsNkJBQTZCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBJbnB1dCwgVGVtcGxhdGVSZWYsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFZhbHVlSGVscENvbHVtbkRlZkNvbnRleHQ8VD4ge1xuICAgICRpbXBsaWNpdDogVDtcbiAgICBrZXk6IHN0cmluZztcbiAgICB2YWx1ZTogYW55O1xufVxuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tmZHBWYWx1ZUhlbHBDb2x1bW5EZWZdJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIFZhbHVlSGVscENvbHVtbkRlZkRpcmVjdGl2ZTxUID0gYW55PiB7XG4gICAgLyoqIFR5cGUgc3VwcG9ydC4gKi9cbiAgICBASW5wdXQoJ2ZkcFZhbHVlSGVscENvbHVtbkRlZkFzJylcbiAgICBhczogVDtcblxuICAgIC8qKiBDb2x1bW4ga2V5IHRvIHJlbmRlciBjdXN0b20gdGVtcGxhdGUuICovXG4gICAgQElucHV0KCdmZHBWYWx1ZUhlbHBDb2x1bW5EZWZDb2x1bW4nKVxuICAgIGNvbHVtbjogc3RyaW5nO1xuICAgIC8qKiBUZW1wbGF0ZSByZWZlcmVuY2UgKi9cbiAgICByZWFkb25seSB0ZW1wbGF0ZVJlZiA9IGluamVjdDxUZW1wbGF0ZVJlZjxWYWx1ZUhlbHBDb2x1bW5EZWZDb250ZXh0PFQ+Pj4oVGVtcGxhdGVSZWYpO1xufVxuIl19
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Directive, TemplateRef, inject } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class ValueHelpFilterDefDirective {
|
|
4
|
+
constructor() {
|
|
5
|
+
/** Template reference */
|
|
6
|
+
this.templateRef = inject((TemplateRef));
|
|
7
|
+
}
|
|
8
|
+
/** @hidden */
|
|
9
|
+
static ngTemplateContextGuard(dir, ctx) {
|
|
10
|
+
return true;
|
|
11
|
+
}
|
|
12
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: ValueHelpFilterDefDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
13
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.8", type: ValueHelpFilterDefDirective, isStandalone: true, selector: "[fdpValueHelpFilterDef]", ngImport: i0 }); }
|
|
14
|
+
}
|
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: ValueHelpFilterDefDirective, decorators: [{
|
|
16
|
+
type: Directive,
|
|
17
|
+
args: [{
|
|
18
|
+
selector: '[fdpValueHelpFilterDef]',
|
|
19
|
+
standalone: true
|
|
20
|
+
}]
|
|
21
|
+
}] });
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsdWUtaGVscC1maWx0ZXItZGVmLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vdmFsdWUtaGVscC1kaWFsb2cvZGlyZWN0aXZlcy92YWx1ZS1oZWxwLWZpbHRlci1kZWYuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFXL0QsTUFBTSxPQUFPLDJCQUEyQjtJQUp4QztRQUtJLHlCQUF5QjtRQUNoQixnQkFBVyxHQUFHLE1BQU0sQ0FBQyxDQUFBLFdBQXNDLENBQUEsQ0FBQyxDQUFDO0tBTXpFO0lBSkcsY0FBYztJQUNkLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxHQUFnQyxFQUFFLEdBQVk7UUFDeEUsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQzs4R0FQUSwyQkFBMkI7a0dBQTNCLDJCQUEyQjs7MkZBQTNCLDJCQUEyQjtrQkFKdkMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUseUJBQXlCO29CQUNuQyxVQUFVLEVBQUUsSUFBSTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIFRlbXBsYXRlUmVmLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFZoZEZpbHRlciB9IGZyb20gJy4uL21vZGVscy92aGQtZmlsdGVyLm1vZGVsJztcblxuaW50ZXJmYWNlIFZhbHVlSGVscEZpbHRlckRlZkNvbnRleHQge1xuICAgICRpbXBsaWNpdDogVmhkRmlsdGVyO1xufVxuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tmZHBWYWx1ZUhlbHBGaWx0ZXJEZWZdJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIFZhbHVlSGVscEZpbHRlckRlZkRpcmVjdGl2ZSB7XG4gICAgLyoqIFRlbXBsYXRlIHJlZmVyZW5jZSAqL1xuICAgIHJlYWRvbmx5IHRlbXBsYXRlUmVmID0gaW5qZWN0KFRlbXBsYXRlUmVmPFZhbHVlSGVscEZpbHRlckRlZkNvbnRleHQ+KTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgc3RhdGljIG5nVGVtcGxhdGVDb250ZXh0R3VhcmQoZGlyOiBWYWx1ZUhlbHBGaWx0ZXJEZWZEaXJlY3RpdmUsIGN0eDogdW5rbm93bik6IGN0eCBpcyBWYWx1ZUhlbHBGaWx0ZXJEZWZDb250ZXh0IHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxufVxuIl19
|
|
@@ -4,7 +4,9 @@ export * from './components/select-tab/select-tab.component';
|
|
|
4
4
|
export * from './components/value-help-dialog-filter/value-help-dialog-filter.component';
|
|
5
5
|
export * from './constans';
|
|
6
6
|
export * from './directives/condition-count-message.directive';
|
|
7
|
+
export * from './directives/value-help-column-def.directive';
|
|
8
|
+
export * from './directives/value-help-filter-def.directive';
|
|
7
9
|
export * from './models';
|
|
8
10
|
export * from './value-help-dialog.module';
|
|
9
11
|
export * from './value-help-dialog/value-help-dialog.component';
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3ZhbHVlLWhlbHAtZGlhbG9nL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMsMEVBQTBFLENBQUM7QUFDekYsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLGlEQUFpRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jb21wb25lbnRzL2Jhc2UtdGFiL3ZoZC1iYXNlLXRhYi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9jb21wb25lbnRzL2RlZmluZS10YWIvZGVmaW5lLXRhYi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9jb21wb25lbnRzL3NlbGVjdC10YWIvc2VsZWN0LXRhYi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9jb21wb25lbnRzL3ZhbHVlLWhlbHAtZGlhbG9nLWZpbHRlci92YWx1ZS1oZWxwLWRpYWxvZy1maWx0ZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vY29uc3RhbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9kaXJlY3RpdmVzL2NvbmRpdGlvbi1jb3VudC1tZXNzYWdlLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2RpcmVjdGl2ZXMvdmFsdWUtaGVscC1jb2x1bW4tZGVmLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2RpcmVjdGl2ZXMvdmFsdWUtaGVscC1maWx0ZXItZGVmLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL21vZGVscyc7XG5leHBvcnQgKiBmcm9tICcuL3ZhbHVlLWhlbHAtZGlhbG9nLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3ZhbHVlLWhlbHAtZGlhbG9nL3ZhbHVlLWhlbHAtZGlhbG9nLmNvbXBvbmVudCc7XG4iXX0=
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export class VhdComponent {
|
|
2
|
+
}
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmhkLWNvbXBvbmVudC5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vdmFsdWUtaGVscC1kaWFsb2cvbW9kZWxzL3ZoZC1jb21wb25lbnQubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsTUFBTSxPQUFnQixZQUFZO0NBRWpDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUXVlcnlMaXN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBWYWx1ZUhlbHBDb2x1bW5EZWZEaXJlY3RpdmUgfSBmcm9tICcuLi9kaXJlY3RpdmVzL3ZhbHVlLWhlbHAtY29sdW1uLWRlZi5kaXJlY3RpdmUnO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgVmhkQ29tcG9uZW50IHtcbiAgICBhYnN0cmFjdCBjb2x1bW5EZWY6IFF1ZXJ5TGlzdDxWYWx1ZUhlbHBDb2x1bW5EZWZEaXJlY3RpdmU+O1xufVxuIl19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmhkLWZpbHRlci5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vdmFsdWUtaGVscC1kaWFsb2cvbW9kZWxzL3ZoZC1maWx0ZXIubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE51bGxhYmxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jZGsvdXRpbHMnO1xuaW1wb3J0IHsgVmFsdWVIZWxwRmlsdGVyRGVmRGlyZWN0aXZlIH0gZnJvbSAnLi4vZGlyZWN0aXZlcy92YWx1ZS1oZWxwLWZpbHRlci1kZWYuZGlyZWN0aXZlJztcblxuZXhwb3J0IGludGVyZmFjZSBWaGRGaWx0ZXIge1xuICAgIGtleTogc3RyaW5nO1xuICAgIGxhYmVsOiBzdHJpbmc7XG4gICAgbWFpbj86IGJvb2xlYW47XG4gICAgdmFsdWU/OiBzdHJpbmc7XG4gICAgYWR2YW5jZWQ/OiBib29sZWFuO1xuICAgIGluY2x1ZGU/OiBib29sZWFuO1xuICAgIGV4Y2x1ZGU/OiBib29sZWFuO1xuICAgIGZpbHRlckRlZjogTnVsbGFibGU8VmFsdWVIZWxwRmlsdGVyRGVmRGlyZWN0aXZlPjtcbn1cbiJdfQ==
|