@fundamental-ngx/platform 0.44.1-rc.3 → 0.45.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/action-bar/action-bar.component.d.ts +1 -6
- package/action-bar/action-bar.module.d.ts +3 -4
- package/button/button.module.d.ts +2 -3
- package/dynamic-page/dynamic-page-header/header/dynamic-page-header.component.d.ts +1 -3
- package/esm2022/action-bar/action-bar.component.mjs +3 -5
- package/esm2022/action-bar/action-bar.module.mjs +5 -26
- package/esm2022/approval-flow/approval-flow-add-node/approval-flow-add-node.component.mjs +5 -5
- package/esm2022/approval-flow/approval-flow-approver-details/approval-flow-approver-details.component.mjs +5 -5
- package/esm2022/approval-flow/approval-flow-messages/approval-flow-messages.component.mjs +1 -1
- package/esm2022/approval-flow/approval-flow-select-type/approval-flow-select-type.component.mjs +5 -5
- package/esm2022/approval-flow/approval-flow-team-list/approval-flow-team-list.component.mjs +3 -3
- package/esm2022/approval-flow/approval-flow-user-details/approval-flow-user-details.component.mjs +1 -1
- package/esm2022/approval-flow/approval-flow-user-list/approval-flow-user-list.component.mjs +3 -3
- package/esm2022/approval-flow/approval-flow.component.mjs +1 -1
- package/esm2022/button/button.module.mjs +5 -6
- package/esm2022/dynamic-page/dynamic-page-header/header/dynamic-page-header.component.mjs +2 -8
- package/esm2022/dynamic-page/dynamic-page.component.mjs +1 -1
- package/esm2022/feed-input/feed-input.component.mjs +3 -17
- package/esm2022/form/checkbox/checkbox.component.mjs +3 -50
- package/esm2022/form/checkbox/checkbox.module.mjs +5 -26
- package/esm2022/form/checkbox-group/checkbox-group.component.mjs +10 -38
- package/esm2022/form/checkbox-group/checkbox-group.module.mjs +5 -23
- package/esm2022/form/combobox/combobox/combobox.component.mjs +1 -1
- package/esm2022/form/combobox/combobox-mobile/combobox/combobox-mobile.component.mjs +1 -1
- package/esm2022/form/combobox/combobox.module.mjs +4 -8
- package/esm2022/form/date-picker/date-picker.component.mjs +4 -66
- package/esm2022/form/date-picker/date-picker.module.mjs +5 -26
- package/esm2022/form/datetime-picker/datetime-picker.component.mjs +3 -56
- package/esm2022/form/datetime-picker/datetime-picker.module.mjs +5 -26
- package/esm2022/form/form-generator/controls/dynamic-form-generator-checkbox/dynamic-form-generator-checkbox.component.mjs +2 -2
- package/esm2022/form/form-generator/controls/dynamic-form-generator-datepicker/dynamic-form-generator-datepicker.component.mjs +2 -2
- package/esm2022/form/form-generator/controls/dynamic-form-generator-editor/dynamic-form-generator-editor.component.mjs +2 -2
- package/esm2022/form/form-generator/controls/dynamic-form-generator-select/dynamic-form-generator-select.component.mjs +2 -2
- package/esm2022/form/form-generator/form-generator/form-generator.component.mjs +35 -60
- package/esm2022/form/form-generator/form-generator-field/form-generator-field.component.mjs +1 -1
- package/esm2022/form/form-generator/interfaces/dynamic-form-item.mjs +1 -1
- package/esm2022/form/form-group/fdp-form.module.mjs +1 -5
- package/esm2022/form/form-group/form-field/form-field.component.mjs +5 -41
- package/esm2022/form/form-group/form-group-header/form-group-header.component.mjs +1 -1
- package/esm2022/form/form-group/form-group.component.mjs +5 -29
- package/esm2022/form/index.mjs +1 -2
- package/esm2022/form/input/fdp-input.module.mjs +5 -23
- package/esm2022/form/input-group/input-group.module.mjs +4 -22
- package/esm2022/form/multi-combobox/multi-combobox/multi-combobox.component.mjs +1 -1
- package/esm2022/form/multi-combobox/multi-combobox-mobile/multi-combobox/multi-combobox-mobile.component.mjs +1 -1
- package/esm2022/form/multi-combobox/multi-combobox.module.mjs +4 -8
- package/esm2022/form/multi-input/multi-input-mobile/multi-input-mobile.component.mjs +1 -1
- package/esm2022/form/multi-input/multi-input.component.mjs +3 -3
- package/esm2022/form/multi-input/multi-input.module.mjs +4 -8
- package/esm2022/form/platform-file-uploader/platform-file-uploader.component.mjs +9 -27
- package/esm2022/form/platform-file-uploader/platform-file-uploader.module.mjs +5 -23
- package/esm2022/form/radio-group/radio/radio.component.mjs +3 -22
- package/esm2022/form/radio-group/radio-group.component.mjs +1 -1
- package/esm2022/form/radio-group/radio-group.module.mjs +4 -17
- package/esm2022/form/select/select/select.component.mjs +5 -23
- package/esm2022/form/select/select.module.mjs +4 -20
- package/esm2022/form/step-input/number/number-step-input.component.mjs +1 -1
- package/esm2022/form/step-input/step-input.module.mjs +4 -8
- package/esm2022/form/switch/switch/switch.component.mjs +1 -1
- package/esm2022/form/switch/switch.module.mjs +5 -23
- package/esm2022/form/text-area/text-area.component.mjs +4 -21
- package/esm2022/form/text-area/text-area.module.mjs +4 -8
- package/esm2022/form/time-picker/time-picker.module.mjs +5 -26
- package/esm2022/icon-tab-bar/components/icon-tab-bar-filter-type/icon-tab-bar-filter-type.component.mjs +1 -1
- package/esm2022/icon-tab-bar/components/icon-tab-bar-icon-type/icon-tab-bar-icon-type.component.mjs +1 -1
- package/esm2022/icon-tab-bar/components/icon-tab-bar-process-type/icon-tab-bar-process-type.component.mjs +1 -1
- package/esm2022/icon-tab-bar/components/icon-tab-bar-text-type/icon-tab-bar-text-type.component.mjs +1 -1
- package/esm2022/link/link.component.mjs +3 -3
- package/esm2022/list/action-list-item/action-list-item.component.mjs +1 -1
- package/esm2022/list/base-list-item.mjs +6 -49
- package/esm2022/list/display-list-item/display-list-item.component.mjs +1 -1
- package/esm2022/list/free-content-list-item/free-content-list-item.component.mjs +3 -3
- package/esm2022/list/list-group-header.component.mjs +2 -8
- package/esm2022/list/list.component.mjs +1 -1
- package/esm2022/list/list.module.mjs +2 -9
- package/esm2022/list/object-list-item/object-list-item.component.mjs +1 -1
- package/esm2022/list/object-list-item/object-list-item.module.mjs +4 -17
- package/esm2022/list/standard-list-item/standard-list-item.component.mjs +3 -3
- package/esm2022/list/standard-list-item/standard-list-item.module.mjs +4 -8
- package/esm2022/menu/menu.module.mjs +5 -37
- package/esm2022/menu-button/menu-button.module.mjs +5 -23
- package/esm2022/message-popover/components/message-view/message-view.component.mjs +2 -2
- package/esm2022/message-popover/message-popover.component.mjs +4 -5
- package/esm2022/panel/panel.module.mjs +5 -17
- package/esm2022/search-field/search-field-mobile/search-field/search-field-mobile.component.mjs +1 -1
- package/esm2022/search-field/search-field.component.mjs +8 -45
- package/esm2022/search-field/search-field.module.mjs +4 -19
- package/esm2022/settings-generator/controls/theme-selector-list/theme-selector-list.component.mjs +2 -2
- package/esm2022/settings-generator/layouts/settings-generator-sidebar-layout/settings-generator-sidebar-icon/settings-generator-sidebar-icon.component.mjs +1 -1
- package/esm2022/settings-generator/layouts/settings-generator-sidebar-layout/settings-generator-sidebar-layout.component.mjs +1 -1
- package/esm2022/settings-generator/settings-generator-content/settings-generator-content.component.mjs +1 -1
- package/esm2022/settings-generator/settings-generator-content/settings-generator-section/settings-generator-section.component.mjs +1 -1
- package/esm2022/shared/form/form-field.mjs +1 -1
- package/esm2022/shared/form/form-options.mjs +1 -1
- package/esm2022/shared/form/hint-options.mjs +1 -1
- package/esm2022/shared/index.mjs +1 -2
- package/esm2022/slider/slider.component.mjs +1 -1
- package/esm2022/slider/slider.module.mjs +5 -6
- package/esm2022/smart-filter-bar/components/smart-filter-bar-condition-field/base-smart-filter-bar-condition-field.mjs +6 -10
- package/esm2022/smart-filter-bar/components/smart-filter-bar-condition-field/smart-filter-bar-condition-field.component.mjs +10 -12
- package/esm2022/smart-filter-bar/components/smart-filter-bar-conditions-dialog/smart-filter-bar-conditions-dialog.component.mjs +8 -11
- package/esm2022/smart-filter-bar/components/smart-filter-bar-settings-dialog/smart-filter-bar-settings-dialog.component.mjs +40 -45
- package/esm2022/smart-filter-bar/interfaces/smart-filter-bar-condition.mjs +1 -1
- package/esm2022/smart-filter-bar/interfaces/smart-filter-bar-settings-dialog-config.mjs +1 -1
- package/esm2022/smart-filter-bar/interfaces/strategy-labels.type.mjs +1 -1
- package/esm2022/smart-filter-bar/smart-filter-bar.class.mjs +1 -1
- package/esm2022/smart-filter-bar/smart-filter-bar.component.mjs +5 -72
- package/esm2022/split-menu-button/split-menu-button.module.mjs +5 -23
- package/esm2022/table/components/table-cell-header-popover/table-cell-header-popover.component.mjs +1 -1
- package/esm2022/table/components/table-editable-cell/table-editable-cell.component.mjs +1 -1
- package/esm2022/table/components/table-p13-dialog/columns/columns.component.mjs +3 -3
- package/esm2022/table/components/table-p13-dialog/filtering/filter-rule.component.mjs +1 -1
- package/esm2022/table/components/table-p13-dialog/filtering/filtering.component.mjs +3 -3
- package/esm2022/table/components/table-p13-dialog/grouping/grouping.component.mjs +3 -3
- package/esm2022/table/components/table-p13-dialog/sorting/sorting.component.mjs +3 -3
- package/esm2022/table/components/table-popping-row/table-popping-row.component.mjs +1 -1
- package/esm2022/table/components/table-toolbar/table-toolbar.component.mjs +1 -1
- package/esm2022/table/components/table-view-settings-dialog/filtering/filter-multi-select.component.mjs +1 -1
- package/esm2022/table/components/table-view-settings-dialog/filtering/filter-single-select.component.mjs +1 -1
- package/esm2022/table/components/table-view-settings-dialog/filtering/filter-step.component.mjs +3 -3
- package/esm2022/table/components/table-view-settings-dialog/filtering/filters-list-step.component.mjs +1 -1
- package/esm2022/table/components/table-view-settings-dialog/filtering/filters.component.mjs +1 -1
- package/esm2022/table/components/table-view-settings-dialog/grouping/grouping.component.mjs +1 -1
- package/esm2022/table/components/table-view-settings-dialog/sorting/sorting.component.mjs +1 -1
- package/esm2022/table/table.component.mjs +1 -1
- package/esm2022/table/table.module.mjs +1 -5
- package/esm2022/thumbnail/thumbnail-details/thumbnail-details.component.mjs +5 -5
- package/esm2022/thumbnail/thumbnail-image/thumbnail-image.component.mjs +3 -3
- package/esm2022/upload-collection/dialogs/move-to/move-to.component.mjs +1 -1
- package/esm2022/upload-collection/dialogs/new-folder/new-folder.component.mjs +1 -1
- package/esm2022/upload-collection/models/upload-collection.models.mjs +1 -1
- package/esm2022/upload-collection/upload-collection/upload-collection.component.mjs +4 -29
- package/esm2022/upload-collection/upload-collection.module.mjs +4 -8
- package/esm2022/value-help-dialog/components/define-tab/define-tab.component.mjs +2 -27
- package/esm2022/value-help-dialog/components/select-tab/select-tab.component.mjs +3 -17
- package/esm2022/value-help-dialog/index.mjs +1 -2
- package/esm2022/value-help-dialog/value-help-dialog/value-help-dialog.component.mjs +4 -43
- package/esm2022/value-help-dialog/value-help-dialog.module.mjs +4 -22
- package/esm2022/variant-management/components/manage-variant-item/manage-variant-item.component.mjs +3 -3
- package/esm2022/variant-management/components/manage-variants-dialog/manage-variants-dialog.component.mjs +1 -1
- package/esm2022/variant-management/variant-management.component.mjs +1 -1
- package/esm2022/wizard-generator/components/dialog-wizard-generator/dialog-wizard-generator.component.mjs +1 -1
- package/esm2022/wizard-generator/components/wizard-generator/wizard-generator.component.mjs +1 -1
- package/esm2022/wizard-generator/components/wizard-generator-step/wizard-generator-step.component.mjs +1 -1
- package/esm2022/wizard-generator/components/wizard-summary-step/wizard-summary-section/wizard-summary-section.component.mjs +1 -1
- package/feed-input/feed-input.component.d.ts +1 -9
- package/fesm2022/fundamental-ngx-platform-action-bar.mjs +7 -29
- package/fesm2022/fundamental-ngx-platform-action-bar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-approval-flow.mjs +25 -25
- package/fesm2022/fundamental-ngx-platform-approval-flow.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-button.mjs +5 -5
- package/fesm2022/fundamental-ngx-platform-button.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-dynamic-page.mjs +3 -8
- package/fesm2022/fundamental-ngx-platform-dynamic-page.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-feed-input.mjs +2 -16
- package/fesm2022/fundamental-ngx-platform-feed-input.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-form.mjs +138 -716
- package/fesm2022/fundamental-ngx-platform-form.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-icon-tab-bar.mjs +4 -4
- package/fesm2022/fundamental-ngx-platform-icon-tab-bar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-link.mjs +2 -2
- package/fesm2022/fundamental-ngx-platform-link.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-list.mjs +23 -93
- package/fesm2022/fundamental-ngx-platform-list.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-menu-button.mjs +5 -22
- package/fesm2022/fundamental-ngx-platform-menu-button.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-menu.mjs +4 -36
- package/fesm2022/fundamental-ngx-platform-menu.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-message-popover.mjs +2 -2
- package/fesm2022/fundamental-ngx-platform-message-popover.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-panel.mjs +5 -16
- package/fesm2022/fundamental-ngx-platform-panel.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-search-field.mjs +12 -63
- package/fesm2022/fundamental-ngx-platform-search-field.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-settings-generator.mjs +5 -5
- package/fesm2022/fundamental-ngx-platform-settings-generator.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-shared.mjs +2 -116
- package/fesm2022/fundamental-ngx-platform-shared.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-slider.mjs +6 -6
- package/fesm2022/fundamental-ngx-platform-slider.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-smart-filter-bar.mjs +71 -146
- package/fesm2022/fundamental-ngx-platform-smart-filter-bar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-split-menu-button.mjs +5 -22
- package/fesm2022/fundamental-ngx-platform-split-menu-button.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-table.mjs +23 -26
- package/fesm2022/fundamental-ngx-platform-table.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-thumbnail.mjs +6 -6
- package/fesm2022/fundamental-ngx-platform-thumbnail.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-upload-collection.mjs +9 -37
- package/fesm2022/fundamental-ngx-platform-upload-collection.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-value-help-dialog.mjs +11 -147
- package/fesm2022/fundamental-ngx-platform-value-help-dialog.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-variant-management.mjs +4 -4
- package/fesm2022/fundamental-ngx-platform-variant-management.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-wizard-generator.mjs +4 -4
- package/fesm2022/fundamental-ngx-platform-wizard-generator.mjs.map +1 -1
- package/form/checkbox/checkbox.component.d.ts +3 -19
- package/form/checkbox/checkbox.module.d.ts +3 -4
- package/form/checkbox-group/checkbox-group.component.d.ts +5 -16
- package/form/checkbox-group/checkbox-group.module.d.ts +2 -3
- package/form/combobox/combobox.module.d.ts +2 -3
- package/form/date-picker/date-picker.component.d.ts +1 -35
- package/form/date-picker/date-picker.module.d.ts +2 -3
- package/form/datetime-picker/datetime-picker.component.d.ts +1 -33
- package/form/datetime-picker/datetime-picker.module.d.ts +2 -3
- package/form/form-generator/form-generator/form-generator.component.d.ts +8 -18
- package/form/form-generator/interfaces/dynamic-form-item.d.ts +1 -13
- package/form/form-group/fdp-form.module.d.ts +12 -13
- package/form/form-group/form-field/form-field.component.d.ts +2 -17
- package/form/form-group/form-group.component.d.ts +2 -14
- package/form/index.d.ts +0 -1
- package/form/input/fdp-input.module.d.ts +2 -3
- package/form/input-group/input-group.module.d.ts +2 -3
- package/form/multi-combobox/multi-combobox.module.d.ts +2 -3
- package/form/multi-input/multi-input.module.d.ts +2 -3
- package/form/platform-file-uploader/platform-file-uploader.component.d.ts +5 -11
- package/form/platform-file-uploader/platform-file-uploader.module.d.ts +2 -3
- package/form/radio-group/radio/radio.component.d.ts +1 -8
- package/form/radio-group/radio-group.module.d.ts +2 -3
- package/form/select/select/select.component.d.ts +1 -8
- package/form/select/select.module.d.ts +2 -3
- package/form/step-input/step-input.module.d.ts +2 -3
- package/form/switch/switch.module.d.ts +2 -3
- package/form/text-area/text-area.component.d.ts +1 -6
- package/form/text-area/text-area.module.d.ts +3 -4
- package/form/time-picker/time-picker.module.d.ts +2 -3
- package/fundamental-ngx-platform-v0.45.0.tgz +0 -0
- package/list/base-list-item.d.ts +2 -27
- package/list/list-group-header.component.d.ts +1 -3
- package/list/list.module.d.ts +7 -8
- package/list/object-list-item/object-list-item.module.d.ts +2 -3
- package/list/standard-list-item/standard-list-item.module.d.ts +2 -3
- package/menu/menu.module.d.ts +2 -3
- package/menu-button/menu-button.module.d.ts +2 -3
- package/package.json +4 -4
- package/panel/panel.module.d.ts +2 -3
- package/schematics/ng-add/index.js +1 -1
- package/search-field/search-field.component.d.ts +1 -18
- package/search-field/search-field.module.d.ts +4 -5
- package/shared/form/form-field.d.ts +1 -17
- package/shared/form/form-options.d.ts +0 -3
- package/shared/form/hint-options.d.ts +0 -7
- package/shared/index.d.ts +0 -1
- package/slider/slider.module.d.ts +2 -3
- package/smart-filter-bar/components/smart-filter-bar-condition-field/base-smart-filter-bar-condition-field.d.ts +1 -3
- package/smart-filter-bar/components/smart-filter-bar-condition-field/smart-filter-bar-condition-field.component.d.ts +1 -2
- package/smart-filter-bar/components/smart-filter-bar-settings-dialog/smart-filter-bar-settings-dialog.component.d.ts +8 -8
- package/smart-filter-bar/interfaces/smart-filter-bar-condition.d.ts +0 -6
- package/smart-filter-bar/interfaces/smart-filter-bar-settings-dialog-config.d.ts +0 -6
- package/smart-filter-bar/interfaces/strategy-labels.type.d.ts +1 -1
- package/smart-filter-bar/smart-filter-bar.class.d.ts +0 -3
- package/smart-filter-bar/smart-filter-bar.component.d.ts +1 -43
- package/split-menu-button/split-menu-button.module.d.ts +2 -3
- package/table/table.module.d.ts +5 -6
- package/upload-collection/models/upload-collection.models.d.ts +0 -2
- package/upload-collection/upload-collection/upload-collection.component.d.ts +1 -16
- package/upload-collection/upload-collection.module.d.ts +1 -1
- package/value-help-dialog/components/define-tab/define-tab.component.d.ts +1 -11
- package/value-help-dialog/components/select-tab/select-tab.component.d.ts +1 -7
- package/value-help-dialog/index.d.ts +0 -1
- package/value-help-dialog/value-help-dialog/value-help-dialog.component.d.ts +1 -21
- package/value-help-dialog/value-help-dialog.module.d.ts +32 -34
- package/esm2022/form/form-group/deprecated-form-group-compact.directive.mjs +0 -30
- package/esm2022/shared/platform-content-density-deprecations/directives/platform-compact-deprecation.directive.mjs +0 -24
- package/esm2022/shared/platform-content-density-deprecations/directives/platform-content-density-deprecation.directive.mjs +0 -68
- package/esm2022/shared/platform-content-density-deprecations/index.mjs +0 -5
- package/esm2022/shared/platform-content-density-deprecations/platform-content-density-deprecations.module.mjs +0 -19
- package/esm2022/shared/platform-content-density-deprecations/providers/module-deprecation.provider.mjs +0 -13
- package/esm2022/value-help-dialog/components/value-help-dialog-search/value-help-dialog-search.component.mjs +0 -46
- package/form/form-group/deprecated-form-group-compact.directive.d.ts +0 -8
- package/fundamental-ngx-platform-v0.44.1-rc.3.tgz +0 -0
- package/shared/platform-content-density-deprecations/directives/platform-compact-deprecation.directive.d.ts +0 -8
- package/shared/platform-content-density-deprecations/directives/platform-content-density-deprecation.directive.d.ts +0 -10
- package/shared/platform-content-density-deprecations/index.d.ts +0 -4
- package/shared/platform-content-density-deprecations/platform-content-density-deprecations.module.d.ts +0 -9
- package/shared/platform-content-density-deprecations/providers/module-deprecation.provider.d.ts +0 -3
- package/value-help-dialog/components/value-help-dialog-search/value-help-dialog-search.component.d.ts +0 -20
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChildren, ElementRef, EventEmitter, forwardRef, Host, Inject, Input,
|
|
1
|
+
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChildren, ElementRef, EventEmitter, forwardRef, Host, Inject, Input, Optional, Output, QueryList, Self, SkipSelf, ViewChildren, ViewEncapsulation } from '@angular/core';
|
|
2
2
|
import { ControlContainer, NgControl, NgForm } from '@angular/forms';
|
|
3
3
|
import { FD_FORM_FIELD, FD_FORM_FIELD_CONTROL } from '@fundamental-ngx/cdk/forms';
|
|
4
|
-
import { RangeSelector
|
|
4
|
+
import { RangeSelector } from '@fundamental-ngx/cdk/utils';
|
|
5
5
|
import { SelectionModel } from '@angular/cdk/collections';
|
|
6
6
|
import { InLineLayoutCollectionBaseInput, RESPONSIVE_BREAKPOINTS_CONFIG, ResponsiveBreakPointConfig, ResponsiveBreakpointsService, coerceArraySafe, PlatformFormField, PlatformFormFieldControl } from '@fundamental-ngx/platform/shared';
|
|
7
7
|
import { CheckboxComponent } from '../checkbox/checkbox.component';
|
|
@@ -11,13 +11,6 @@ import * as i2 from "@angular/forms";
|
|
|
11
11
|
import * as i3 from "@angular/common";
|
|
12
12
|
import * as i4 from "../checkbox/checkbox.component";
|
|
13
13
|
import * as i5 from "@fundamental-ngx/core/form";
|
|
14
|
-
let warnedAboutChecked = false;
|
|
15
|
-
const warnAboutChecked = () => {
|
|
16
|
-
if (isDevMode() && !warnedAboutChecked) {
|
|
17
|
-
warnOnce('The fdp-checkbox-group[checked] property is deprecated. Use fdp-checkbox-group[value] instead');
|
|
18
|
-
warnedAboutChecked = true;
|
|
19
|
-
}
|
|
20
|
-
};
|
|
21
14
|
/**
|
|
22
15
|
* Checkbox group implementation based on the
|
|
23
16
|
* https://github.com/SAP/fundamental-ngx/wiki/Platform:-CheckboxGroup-Technical-Design
|
|
@@ -43,18 +36,6 @@ export class CheckboxGroupComponent extends InLineLayoutCollectionBaseInput {
|
|
|
43
36
|
get isInline() {
|
|
44
37
|
return this._inlineCurrentValue$.value;
|
|
45
38
|
}
|
|
46
|
-
/**
|
|
47
|
-
* @deprecated
|
|
48
|
-
* Establishes two way binding, when checkbox group used outside form.
|
|
49
|
-
*/
|
|
50
|
-
set checked(checkedValues) {
|
|
51
|
-
warnAboutChecked();
|
|
52
|
-
this.value = checkedValues;
|
|
53
|
-
}
|
|
54
|
-
get checked() {
|
|
55
|
-
warnAboutChecked();
|
|
56
|
-
return this.value;
|
|
57
|
-
}
|
|
58
39
|
/** @hidden */
|
|
59
40
|
constructor(cd, elementRef, _responsiveBreakpointsService, ngControl, controlContainer, ngForm, formField, formControl, _defaultResponsiveBreakPointConfig) {
|
|
60
41
|
super(cd, elementRef, _responsiveBreakpointsService, ngControl, controlContainer, ngForm, formField, formControl, _defaultResponsiveBreakPointConfig);
|
|
@@ -62,15 +43,10 @@ export class CheckboxGroupComponent extends InLineLayoutCollectionBaseInput {
|
|
|
62
43
|
this._defaultResponsiveBreakPointConfig = _defaultResponsiveBreakPointConfig;
|
|
63
44
|
/** Emits checked change event */
|
|
64
45
|
this.valueChange = new EventEmitter();
|
|
65
|
-
/**
|
|
66
|
-
* @deprecated - use "valueChange" instead
|
|
67
|
-
* Emits checked change event
|
|
68
|
-
*/
|
|
69
|
-
this.checkedChange = this.valueChange;
|
|
70
|
-
/** @hidden */
|
|
71
|
-
this._rangeSelector = new RangeSelector();
|
|
72
46
|
/** @hidden */
|
|
73
47
|
this._selectionModel = new SelectionModel(true);
|
|
48
|
+
/** @hidden */
|
|
49
|
+
this._rangeSelector = new RangeSelector();
|
|
74
50
|
}
|
|
75
51
|
/**
|
|
76
52
|
* @hidden
|
|
@@ -121,10 +97,6 @@ export class CheckboxGroupComponent extends InLineLayoutCollectionBaseInput {
|
|
|
121
97
|
super.writeValue(coerceArraySafe(selectedValue));
|
|
122
98
|
this._updateSelectionModelByValue();
|
|
123
99
|
}
|
|
124
|
-
/** @inheritdoc */
|
|
125
|
-
setValue(value, emitOnChange = true) {
|
|
126
|
-
super.setValue(coerceArraySafe(value), emitOnChange);
|
|
127
|
-
}
|
|
128
100
|
/**
|
|
129
101
|
* access display value for objects, acts as checkbox label.
|
|
130
102
|
*/
|
|
@@ -141,6 +113,10 @@ export class CheckboxGroupComponent extends InLineLayoutCollectionBaseInput {
|
|
|
141
113
|
getListItemDisabledValue(item) {
|
|
142
114
|
return this.disabled || !!item?.disabled;
|
|
143
115
|
}
|
|
116
|
+
/** @inheritdoc */
|
|
117
|
+
setValue(value, emitOnChange = true) {
|
|
118
|
+
super.setValue(coerceArraySafe(value), emitOnChange);
|
|
119
|
+
}
|
|
144
120
|
/** @hidden */
|
|
145
121
|
_setValueBySelectionModel() {
|
|
146
122
|
super.setValue(this._selectionModel.selected);
|
|
@@ -153,7 +129,7 @@ export class CheckboxGroupComponent extends InLineLayoutCollectionBaseInput {
|
|
|
153
129
|
this._cd.markForCheck();
|
|
154
130
|
}
|
|
155
131
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.0", ngImport: i0, type: CheckboxGroupComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i1.ResponsiveBreakpointsService }, { token: i2.NgControl, optional: true, self: true }, { token: i2.ControlContainer, optional: true, skipSelf: true }, { token: i2.NgForm, optional: true, skipSelf: true }, { token: FD_FORM_FIELD, host: true, optional: true, skipSelf: true }, { token: FD_FORM_FIELD_CONTROL, host: true, optional: true, skipSelf: true }, { token: RESPONSIVE_BREAKPOINTS_CONFIG, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
156
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.0", type: CheckboxGroupComponent, selector: "fdp-checkbox-group", inputs: { value: "value", isInline: "isInline"
|
|
132
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.0", type: CheckboxGroupComponent, selector: "fdp-checkbox-group", inputs: { value: "value", isInline: "isInline" }, outputs: { valueChange: "valueChange" }, providers: [{ provide: FD_FORM_FIELD_CONTROL, useExisting: forwardRef(() => CheckboxGroupComponent), multi: true }], queries: [{ propertyName: "contentCheckboxes", predicate: CheckboxComponent }], viewQueries: [{ propertyName: "viewCheckboxes", predicate: CheckboxComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<fd-form-group\n [isInline]=\"isInline\"\n role=\"group\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-required]=\"required\"\n>\n <ng-container *ngIf=\"!list\">\n <ng-container *ngFor=\"let checkbox of contentCheckboxes; let i = index\">\n <ng-container\n *ngTemplateOutlet=\"\n checkboxtmpt;\n context: {\n id: id + i,\n idx: i,\n source: 'contentChildren',\n name: name,\n checkboxValue: checkbox.coreCheckbox?.values?.trueValue,\n labeltext: checkbox.label,\n disabled: disabled || checkbox.disabled,\n ariaLabel: checkbox.ariaLabel,\n ariaLabelledBy: checkbox.ariaLabelledBy,\n ariaDescribedBy: checkbox.ariaDescribedBy,\n title: checkbox.title\n }\n \"\n >\n </ng-container>\n </ng-container>\n </ng-container>\n <ng-container *ngIf=\"list\">\n <ng-container *ngTemplateOutlet=\"listvalues\"></ng-container>\n </ng-container>\n</fd-form-group>\n\n<ng-template #listvalues>\n <ng-container *ngFor=\"let item of list; let i = index\">\n <ng-container\n *ngTemplateOutlet=\"\n checkboxtmpt;\n context: {\n id: id + i,\n idx: i,\n source: 'list',\n name: name,\n checkboxValue: getLookupValue(item),\n labeltext: getDisplayValue(item),\n disabled: getListItemDisabledValue(item)\n }\n \"\n >\n </ng-container>\n </ng-container>\n</ng-template>\n\n<ng-template\n #checkboxtmpt\n let-id=\"id\"\n let-idx=\"idx\"\n let-source=\"source\"\n let-name=\"name\"\n let-checkboxValue=\"checkboxValue\"\n let-labeltext=\"labeltext\"\n let-checkboxDisabled=\"disabled\"\n let-ariaLabel=\"ariaLabel\"\n let-ariaLabelledBy=\"ariaLabelledBy\"\n let-ariaDescribedBy=\"ariaDescribedBy\"\n let-title=\"title\"\n>\n <fdp-checkbox\n [id]=\"id\"\n [name]=\"name\"\n [values]=\"{ trueValue: checkboxValue }\"\n [label]=\"labeltext\"\n [ariaLabel]=\"ariaLabel\"\n [ariaLabelledBy]=\"ariaLabelledBy\"\n [ariaDescribedBy]=\"ariaDescribedBy\"\n [title]=\"title\"\n [disabled]=\"checkboxDisabled\"\n [state]=\"state\"\n [ngModel]=\"_selectionModel.isSelected(checkboxValue) ? checkboxValue : false\"\n (ngModelChange)=\"onModelChanged($event, checkboxValue)\"\n (click)=\"onCheckboxClick(idx, source, $event)\"\n >\n </fdp-checkbox>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i4.CheckboxComponent, selector: "fdp-checkbox", inputs: ["title", "label", "tristate", "checked", "tristateSelectable", "values", "standalone"], outputs: ["checkedChange"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5.FormGroupComponent, selector: "fd-form-group", inputs: ["isInline"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
157
133
|
}
|
|
158
134
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.0", ngImport: i0, type: CheckboxGroupComponent, decorators: [{
|
|
159
135
|
type: Component,
|
|
@@ -200,8 +176,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.0", ngImpor
|
|
|
200
176
|
type: Input
|
|
201
177
|
}], isInline: [{
|
|
202
178
|
type: Input
|
|
203
|
-
}], checked: [{
|
|
204
|
-
type: Input
|
|
205
179
|
}], contentCheckboxes: [{
|
|
206
180
|
type: ContentChildren,
|
|
207
181
|
args: [CheckboxComponent]
|
|
@@ -210,7 +184,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.0", ngImpor
|
|
|
210
184
|
args: [CheckboxComponent]
|
|
211
185
|
}], valueChange: [{
|
|
212
186
|
type: Output
|
|
213
|
-
}], checkedChange: [{
|
|
214
|
-
type: Output
|
|
215
187
|
}] } });
|
|
216
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3gtZ3JvdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9zcmMvbGliL2Zvcm0vY2hlY2tib3gtZ3JvdXAvY2hlY2tib3gtZ3JvdXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9zcmMvbGliL2Zvcm0vY2hlY2tib3gtZ3JvdXAvY2hlY2tib3gtZ3JvdXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULGVBQWUsRUFDZixVQUFVLEVBQ1YsWUFBWSxFQUNaLFVBQVUsRUFDVixJQUFJLEVBQ0osTUFBTSxFQUNOLEtBQUssRUFDTCxTQUFTLEVBQ1QsUUFBUSxFQUNSLE1BQU0sRUFDTixTQUFTLEVBQ1QsSUFBSSxFQUNKLFFBQVEsRUFDUixZQUFZLEVBQ1osaUJBQWlCLEVBQ3BCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckUsT0FBTyxFQUFFLGFBQWEsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2xGLE9BQU8sRUFBRSxhQUFhLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDckUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRTFELE9BQU8sRUFDSCwrQkFBK0IsRUFDL0IsNkJBQTZCLEVBQzdCLDBCQUEwQixFQUMxQiw0QkFBNEIsRUFDNUIsZUFBZSxFQUVmLGlCQUFpQixFQUNqQix3QkFBd0IsRUFDM0IsTUFBTSxrQ0FBa0MsQ0FBQztBQUMxQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7Ozs7OztBQUVuRSxJQUFJ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LEVBQUUsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQyw0REF5Q2xHLGlCQUFpQixnRUFJcEIsaUJBQWlCLHVFQ3BHbkMsNjRGQXNGQTs7MkZEN0JhLHNCQUFzQjtrQkFQbEMsU0FBUzsrQkFDSSxvQkFBb0IsbUJBRWIsdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsaUJBQWlCLENBQUMsSUFBSSxhQUMxQixDQUFDLEVBQUUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLHVCQUF1QixDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDOzswQkFzRTlHLFFBQVE7OzBCQUFJLElBQUk7OzBCQUNoQixRQUFROzswQkFBSSxRQUFROzswQkFDcEIsUUFBUTs7MEJBQUksUUFBUTs7MEJBQ3BCLFFBQVE7OzBCQUFJLFFBQVE7OzBCQUFJLElBQUk7OzBCQUFJLE1BQU07MkJBQUMsYUFBYTs7MEJBQ3BELFFBQVE7OzBCQUNSLFFBQVE7OzBCQUNSLElBQUk7OzBCQUNKLE1BQU07MkJBQUMscUJBQXFCOzswQkFDNUIsTUFBTTsyQkFBQyxxQkFBcUI7OzBCQUU1QixRQUFROzswQkFDUixNQUFNOzJCQUFDLDZCQUE2Qjs0Q0ExRXJDLEtBQUs7c0JBRFIsS0FBSztnQkFhRixRQUFRO3NCQURYLEtBQUs7Z0JBYUYsT0FBTztzQkFEVixLQUFLO2dCQVlOLGlCQUFpQjtzQkFEaEIsZUFBZTt1QkFBQyxpQkFBaUI7Z0JBS2xDLGNBQWM7c0JBRGIsWUFBWTt1QkFBQyxpQkFBaUI7Z0JBS3RCLFdBQVc7c0JBRG5CLE1BQU07Z0JBUUUsYUFBYTtzQkFEckIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIENvbnRlbnRDaGlsZHJlbixcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBmb3J3YXJkUmVmLFxuICAgIEhvc3QsXG4gICAgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIGlzRGV2TW9kZSxcbiAgICBPcHRpb25hbCxcbiAgICBPdXRwdXQsXG4gICAgUXVlcnlMaXN0LFxuICAgIFNlbGYsXG4gICAgU2tpcFNlbGYsXG4gICAgVmlld0NoaWxkcmVuLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbENvbnRhaW5lciwgTmdDb250cm9sLCBOZ0Zvcm0gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBGRF9GT1JNX0ZJRUxELCBGRF9GT1JNX0ZJRUxEX0NPTlRST0wgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2Nkay9mb3Jtcyc7XG5pbXBvcnQgeyBSYW5nZVNlbGVjdG9yLCB3YXJuT25jZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY2RrL3V0aWxzJztcbmltcG9ydCB7IFNlbGVjdGlvbk1vZGVsIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvbGxlY3Rpb25zJztcblxuaW1wb3J0IHtcbiAgICBJbkxpbmVMYXlvdXRDb2xsZWN0aW9uQmFzZUlucHV0LFxuICAgIFJFU1BPTlNJVkVfQlJFQUtQT0lOVFNfQ09ORklHLFxuICAgIFJlc3BvbnNpdmVCcmVha1BvaW50Q29uZmlnLFxuICAgIFJlc3BvbnNpdmVCcmVha3BvaW50c1NlcnZpY2UsXG4gICAgY29lcmNlQXJyYXlTYWZlLFxuICAgIFNlbGVjdEl0ZW0sXG4gICAgUGxhdGZvcm1Gb3JtRmllbGQsXG4gICAgUGxhdGZvcm1Gb3JtRmllbGRDb250cm9sXG59IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvcGxhdGZvcm0vc2hhcmVkJztcbmltcG9ydCB7IENoZWNrYm94Q29tcG9uZW50IH0gZnJvbSAnLi4vY2hlY2tib3gvY2hlY2tib3guY29tcG9uZW50JztcblxubGV0IHdhcm5lZEFib3V0Q2hlY2tlZCA9IGZhbHNlO1xuY29uc3Qgd2FybkFib3V0Q2hlY2tlZCA9ICgpOiB2b2lkID0+IHtcbiAgICBpZiAoaXNEZXZNb2RlKCkgJiYgIXdhcm5lZEFib3V0Q2hlY2tlZCkge1xuICAgICAgICB3YXJuT25jZSgnVGhlIGZkcC1jaGVja2JveC1ncm91cFtjaGVja2VkXSBwcm9wZXJ0eSBpcyBkZXByZWNhdGVkLiBVc2UgZmRwLWNoZWNrYm94LWdyb3VwW3ZhbHVlXSBpbnN0ZWFkJyk7XG4gICAgICAgIHdhcm5lZEFib3V0Q2hlY2tlZCA9IHRydWU7XG4gICAgfVxufTtcblxuLyoqXG4gKiBDaGVja2JveCBncm91cCBpbXBsZW1lbnRhdGlvbiBiYXNlZCBvbiB0aGVcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9TQVAvZnVuZGFtZW50YWwtbmd4L3dpa2kvUGxhdGZvcm06LUNoZWNrYm94R3JvdXAtVGVjaG5pY2FsLURlc2lnblxuICogZG9jdW1lbnRzLlxuICovXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ZkcC1jaGVja2JveC1ncm91cCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NoZWNrYm94LWdyb3VwLmNvbXBvbmVudC5odG1sJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIHByb3ZpZGVyczogW3sgcHJvdmlkZTogRkRfRk9STV9GSUVMRF9DT05UUk9MLCB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBDaGVja2JveEdyb3VwQ29tcG9uZW50KSwgbXVsdGk6IHRydWUgfV1cbn0pXG5leHBvcnQgY2xhc3MgQ2hlY2tib3hHcm91cENvbXBvbmVudCBleHRlbmRzIEluTGluZUxheW91dENvbGxlY3Rpb25CYXNlSW5wdXQge1xuICAgIC8qKlxuICAgICAqIHZhbHVlIGZvciBzZWxlY3RlZCBjaGVja2JveGVzLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IHZhbHVlKHNlbGVjdGVkVmFsdWU6IGFueVtdKSB7XG4gICAgICAgIHRoaXMuc2V0VmFsdWUoc2VsZWN0ZWRWYWx1ZSk7XG4gICAgICAgIHRoaXMuX3VwZGF0ZVNlbGVjdGlvbk1vZGVsQnlWYWx1ZSgpO1xuICAgIH1cbiAgICBnZXQgdmFsdWUoKTogYW55W10ge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRWYWx1ZSgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFRvIERpc3BsYXkgbXVsdGlwbGUgY2hlY2tib3hlcyBpbiBhIGxpbmVcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCBpc0lubGluZShpbmxpbmU6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5faW5saW5lQ3VycmVudFZhbHVlJC5uZXh0KGlubGluZSk7XG4gICAgfVxuICAgIGdldCBpc0lubGluZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2lubGluZUN1cnJlbnRWYWx1ZSQudmFsdWU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGRlcHJlY2F0ZWRcbiAgICAgKiBFc3RhYmxpc2hlcyB0d28gd2F5IGJpbmRpbmcsIHdoZW4gY2hlY2tib3ggZ3JvdXAgdXNlZCBvdXRzaWRlIGZvcm0uXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzZXQgY2hlY2tlZChjaGVja2VkVmFsdWVzOiBzdHJpbmdbXSkge1xuICAgICAgICB3YXJuQWJvdXRDaGVja2VkKCk7XG4gICAgICAgIHRoaXMudmFsdWUgPSBjaGVja2VkVmFsdWVzO1xuICAgIH1cbiAgICBnZXQgY2hlY2tlZCgpOiBzdHJpbmdbXSB7XG4gICAgICAgIHdhcm5BYm91dENoZWNrZWQoKTtcbiAgICAgICAgcmV0dXJuIHRoaXMudmFsdWU7XG4gICAgfVxuXG4gICAgLyoqIENoaWxkcmVuIGNoZWNrYm94ZXMgcGFzc2VkIGFzIGNvbnRlbnQgKi9cbiAgICBAQ29udGVudENoaWxkcmVuKENoZWNrYm94Q29tcG9uZW50KVxuICAgIGNvbnRlbnRDaGVja2JveGVzOiBRdWVyeUxpc3Q8Q2hlY2tib3hDb21wb25lbnQ+O1xuXG4gICAgLyoqIENoaWxkcmVuIGNoZWNrYm94ZXMgY3JlYXRlZCBmcm9tIHBhc3NlZCBsaXN0IHZhbHVlcy4gKi9cbiAgICBAVmlld0NoaWxkcmVuKENoZWNrYm94Q29tcG9uZW50KVxuICAgIHZpZXdDaGVja2JveGVzOiBRdWVyeUxpc3Q8Q2hlY2tib3hDb21wb25lbnQ+O1xuXG4gICAgLyoqIEVtaXRzIGNoZWNrZWQgY2hhbmdlIGV2ZW50ICovXG4gICAgQE91dHB1dCgpXG4gICAgcmVhZG9ubHkgdmFsdWVDaGFuZ2U6IEV2ZW50RW1pdHRlcjxzdHJpbmdbXT4gPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZ1tdPigpO1xuXG4gICAgLyoqXG4gICAgICogQGRlcHJlY2F0ZWQgLSB1c2UgXCJ2YWx1ZUNoYW5nZVwiIGluc3RlYWRcbiAgICAgKiBFbWl0cyBjaGVja2VkIGNoYW5nZSBldmVudFxuICAgICAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHJlYWRvbmx5IGNoZWNrZWRDaGFuZ2UgPSB0aGlzLnZhbHVlQ2hhbmdlO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IF9yYW5nZVNlbGVjdG9yID0gbmV3IFJhbmdlU2VsZWN0b3IoKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcmVhZG9ubHkgX3NlbGVjdGlvbk1vZGVsID0gbmV3IFNlbGVjdGlvbk1vZGVsKHRydWUpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgY2Q6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgICAgICByZWFkb25seSBfcmVzcG9uc2l2ZUJyZWFrcG9pbnRzU2VydmljZTogUmVzcG9uc2l2ZUJyZWFrcG9pbnRzU2VydmljZSxcbiAgICAgICAgQE9wdGlvbmFsKCkgQFNlbGYoKSBuZ0NvbnRyb2w6IE5nQ29udHJvbCxcbiAgICAgICAgQE9wdGlvbmFsKCkgQFNraXBTZWxmKCkgY29udHJvbENvbnRhaW5lcjogQ29udHJvbENvbnRhaW5lcixcbiAgICAgICAgQE9wdGlvbmFsKCkgQFNraXBTZWxmKCkgbmdGb3JtOiBOZ0Zvcm0sXG4gICAgICAgIEBPcHRpb25hbCgpIEBTa2lwU2VsZigpIEBIb3N0KCkgQEluamVjdChGRF9GT1JNX0ZJRUxEKSBmb3JtRmllbGQ6IFBsYXRmb3JtRm9ybUZpZWxkLFxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBAU2tpcFNlbGYoKVxuICAgICAgICBASG9zdCgpXG4gICAgICAgIEBJbmplY3QoRkRfRk9STV9GSUVMRF9DT05UUk9MKVxuICAgICAgICBASW5qZWN0KEZEX0ZPUk1fRklFTERfQ09OVFJPTClcbiAgICAgICAgZm9ybUNvbnRyb2w6IFBsYXRmb3JtRm9ybUZpZWxkQ29udHJvbCxcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQEluamVjdChSRVNQT05TSVZFX0JSRUFLUE9JTlRTX0NPTkZJRylcbiAgICAgICAgcmVhZG9ubHkgX2RlZmF1bHRSZXNwb25zaXZlQnJlYWtQb2ludENvbmZpZzogUmVzcG9uc2l2ZUJyZWFrUG9pbnRDb25maWdcbiAgICApIHtcbiAgICAgICAgc3VwZXIoXG4gICAgICAgICAgICBjZCxcbiAgICAgICAgICAgIGVsZW1lbnRSZWYsXG4gICAgICAgICAgICBfcmVzcG9uc2l2ZUJyZWFrcG9pbnRzU2VydmljZSxcbiAgICAgICAgICAgIG5nQ29udHJvbCxcbiAgICAgICAgICAgIGNvbnRyb2xDb250YWluZXIsXG4gICAgICAgICAgICBuZ0Zvcm0sXG4gICAgICAgICAgICBmb3JtRmllbGQsXG4gICAgICAgICAgICBmb3JtQ29udHJvbCxcbiAgICAgICAgICAgIF9kZWZhdWx0UmVzcG9uc2l2ZUJyZWFrUG9pbnRDb25maWdcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogQHBhcmFtIHNlbGVjdGlvblN0YXRlIGFjdHVhbCB2YWx1ZSBvZiB0aGUgY2hlY2tib3hcbiAgICAgKiBAcGFyYW0gY2hlY2tib3hUcnVlVmFsdWUgdGh1dGh5IHZhbHVlIHRvIGNvbXBhcmUgdGhlIFwic2VsZWN0aW9uU3RhdGVcIiB3aXRoXG4gICAgICovXG4gICAgb25Nb2RlbENoYW5nZWQoc2VsZWN0aW9uU3RhdGU6IGFueSwgY2hlY2tib3hUcnVlVmFsdWU6IGFueSk6IHZvaWQge1xuICAgICAgICBjb25zdCBpc1NlbGVjdGVkID0gc2VsZWN0aW9uU3RhdGUgPT09IGNoZWNrYm94VHJ1ZVZhbHVlO1xuICAgICAgICBpZiAoaXNTZWxlY3RlZCkge1xuICAgICAgICAgICAgdGhpcy5fc2VsZWN0aW9uTW9kZWwuc2VsZWN0KGNoZWNrYm94VHJ1ZVZhbHVlKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuX3NlbGVjdGlvbk1vZGVsLmRlc2VsZWN0KGNoZWNrYm94VHJ1ZVZhbHVlKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl9zZXRWYWx1ZUJ5U2VsZWN0aW9uTW9kZWwoKTtcbiAgICAgICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICAgICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KHRoaXMudmFsdWUpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgb25DaGVja2JveENsaWNrKGluZGV4OiBudW1iZXIsIHNvdXJjZTogJ2NvbnRlbnRDaGlsZHJlbicgfCAnbGlzdCcsIGV2ZW50PzogTW91c2VFdmVudCk6IHZvaWQge1xuICAgICAgICAvLyB0aGlzIGhhbmRsZXIgd2lsbCBiZSBpbnZva2VkIGFmdGVyIFwidmFsdWVDaGFuZ2VcIlxuICAgICAgICBjb25zdCBxdWVyeUxpc3QgPSBzb3VyY2UgPT09ICdsaXN0JyA/IHRoaXMudmlld0NoZWNrYm94ZXMgOiB0aGlzLmNvbnRlbnRDaGVja2JveGVzO1xuICAgICAgICBjb25zdCB0YXJnZXQgPSBxdWVyeUxpc3QuZ2V0KGluZGV4KTtcblxuICAgICAgICBjb25zdCBpc0NoZWNrZWQgPSB0aGlzLl9zZWxlY3Rpb25Nb2RlbC5pc1NlbGVjdGVkKHRhcmdldD8udmFsdWVzLnRydWVWYWx1ZSk7XG4gICAgICAgIHRoaXMuX3JhbmdlU2VsZWN0b3Iub25SYW5nZUVsZW1lbnRUb2dnbGVkKGluZGV4LCBldmVudCk7XG5cbiAgICAgICAgaWYgKCF0aGlzLl9yYW5nZVNlbGVjdG9yLmxhc3RSYW5nZVNlbGVjdGlvblN0YXRlPy5pc1JhbmdlU2VsZWN0aW9uKSB7XG4gICAgICAgICAgICAvLyBubyBuZWVkIHRvIHByb2NlZWQsIGlmIGl0J3Mgbm90IGEgcmFuZ2Ugc2VsZWN0aW9uIC0gY3VycmVudCBjaGVja2JveCBpcyBhbHJlYWR5IHVwZGF0ZWRcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX3JhbmdlU2VsZWN0b3IuYXBwbHlWYWx1ZVRvRWFjaEluUmFuZ2UoKGlkeCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgY2hlY2tib3ggPSBxdWVyeUxpc3QuZ2V0KGlkeCk7XG4gICAgICAgICAgICBpZiAoY2hlY2tib3g/LmRpc2FibGVkKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgY2hlY2tib3hWYWx1ZSA9IGNoZWNrYm94Py52YWx1ZXMudHJ1ZVZhbHVlO1xuICAgICAgICAgICAgaWYgKGlzQ2hlY2tlZCkge1xuICAgICAgICAgICAgICAgIHRoaXMuX3NlbGVjdGlvbk1vZGVsLnNlbGVjdChjaGVja2JveFZhbHVlKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fc2VsZWN0aW9uTW9kZWwuZGVzZWxlY3QoY2hlY2tib3hWYWx1ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLl9zZXRWYWx1ZUJ5U2VsZWN0aW9uTW9kZWwoKTtcbiAgICAgICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KHRoaXMudmFsdWUpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgd3JpdGVWYWx1ZShzZWxlY3RlZFZhbHVlOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIud3JpdGVWYWx1ZShjb2VyY2VBcnJheVNhZmUoc2VsZWN0ZWRWYWx1ZSkpO1xuICAgICAgICB0aGlzLl91cGRhdGVTZWxlY3Rpb25Nb2RlbEJ5VmFsdWUoKTtcbiAgICB9XG5cbiAgICAvKiogQGluaGVyaXRkb2MgKi9cbiAgICBwcm90ZWN0ZWQgc2V0VmFsdWUodmFsdWU6IGFueSwgZW1pdE9uQ2hhbmdlID0gdHJ1ZSk6IHZvaWQge1xuICAgICAgICBzdXBlci5zZXRWYWx1ZShjb2VyY2VBcnJheVNhZmUodmFsdWUpLCBlbWl0T25DaGFuZ2UpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGFjY2VzcyBkaXNwbGF5IHZhbHVlIGZvciBvYmplY3RzLCBhY3RzIGFzIGNoZWNrYm94IGxhYmVsLlxuICAgICAqL1xuICAgIHB1YmxpYyBnZXREaXNwbGF5VmFsdWUoaXRlbTogYW55KTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGlzcGxheVZhbHVlKGl0ZW0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGFjY2VzcyBsb29rdXAgdmFsdWUgZm9yIG9iamVjdHMsIGFjdHMgYXMgY2hlY2tib3ggdmFsdWUuXG4gICAgICovXG4gICAgcHVibGljIGdldExvb2t1cFZhbHVlKGl0ZW06IGFueSk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLmxvb2t1cFZhbHVlKGl0ZW0pO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHVibGljIGdldExpc3RJdGVtRGlzYWJsZWRWYWx1ZShpdGVtOiBDaGVja2JveEdyb3VwQ29tcG9uZW50WydsaXN0J11bbnVtYmVyXSk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5kaXNhYmxlZCB8fCAhISg8U2VsZWN0SXRlbT5pdGVtKT8uZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9zZXRWYWx1ZUJ5U2VsZWN0aW9uTW9kZWwoKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLnNldFZhbHVlKHRoaXMuX3NlbGVjdGlvbk1vZGVsLnNlbGVjdGVkKTtcbiAgICAgICAgdGhpcy5fY2QubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF91cGRhdGVTZWxlY3Rpb25Nb2RlbEJ5VmFsdWUoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3NlbGVjdGlvbk1vZGVsLmNsZWFyKCk7XG4gICAgICAgIHRoaXMudmFsdWUuZm9yRWFjaCgodikgPT4gdGhpcy5fc2VsZWN0aW9uTW9kZWwuc2VsZWN0KHYpKTtcbiAgICAgICAgdGhpcy5fY2QubWFya0ZvckNoZWNrKCk7XG4gICAgfVxufVxuIiwiPGZkLWZvcm0tZ3JvdXBcbiAgICBbaXNJbmxpbmVdPVwiaXNJbmxpbmVcIlxuICAgIHJvbGU9XCJncm91cFwiXG4gICAgW2F0dHIuYXJpYS1sYWJlbF09XCJhcmlhTGFiZWxcIlxuICAgIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJhcmlhTGFiZWxsZWRCeVwiXG4gICAgW2F0dHIuYXJpYS1yZXF1aXJlZF09XCJyZXF1aXJlZFwiXG4+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFsaXN0XCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGNoZWNrYm94IG9mIGNvbnRlbnRDaGVja2JveGVzOyBsZXQgaSA9IGluZGV4XCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJcbiAgICAgICAgICAgICAgICAgICAgY2hlY2tib3h0bXB0O1xuICAgICAgICAgICAgICAgICAgICBjb250ZXh0OiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZDogaWQgKyBpLFxuICAgICAgICAgICAgICAgICAgICAgICAgaWR4OiBpLFxuICAgICAgICAgICAgICAgICAgICAgICAgc291cmNlOiAnY29udGVudENoaWxkcmVuJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IG5hbWUsXG4gICAgICAgICAgICAgICAgICAgICAgICBjaGVja2JveFZhbHVlOiBjaGVja2JveC5jb3JlQ2hlY2tib3g/LnZhbHVlcz8udHJ1ZVZhbHVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWx0ZXh0OiBjaGVja2JveC5sYWJlbCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc2FibGVkOiBkaXNhYmxlZCB8fCBjaGVja2JveC5kaXNhYmxlZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGFyaWFMYWJlbDogY2hlY2tib3guYXJpYUxhYmVsLFxuICAgICAgICAgICAgICAgICAgICAgICAgYXJpYUxhYmVsbGVkQnk6IGNoZWNrYm94LmFyaWFMYWJlbGxlZEJ5LFxuICAgICAgICAgICAgICAgICAgICAgICAgYXJpYURlc2NyaWJlZEJ5OiBjaGVja2JveC5hcmlhRGVzY3JpYmVkQnksXG4gICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogY2hlY2tib3gudGl0bGVcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImxpc3RcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImxpc3R2YWx1ZXNcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbjwvZmQtZm9ybS1ncm91cD5cblxuPG5nLXRlbXBsYXRlICNsaXN0dmFsdWVzPlxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgbGlzdDsgbGV0IGkgPSBpbmRleFwiPlxuICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cIlxuICAgICAgICAgICAgICAgIGNoZWNrYm94dG1wdDtcbiAgICAgICAgICAgICAgICBjb250ZXh0OiB7XG4gICAgICAgICAgICAgICAgICAgIGlkOiBpZCArIGksXG4gICAgICAgICAgICAgICAgICAgIGlkeDogaSxcbiAgICAgICAgICAgICAgICAgICAgc291cmNlOiAnbGlzdCcsXG4gICAgICAgICAgICAgICAgICAgIG5hbWU6IG5hbWUsXG4gICAgICAgICAgICAgICAgICAgIGNoZWNrYm94VmFsdWU6IGdldExvb2t1cFZhbHVlKGl0ZW0pLFxuICAgICAgICAgICAgICAgICAgICBsYWJlbHRleHQ6IGdldERpc3BsYXlWYWx1ZShpdGVtKSxcbiAgICAgICAgICAgICAgICAgICAgZGlzYWJsZWQ6IGdldExpc3RJdGVtRGlzYWJsZWRWYWx1ZShpdGVtKVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFwiXG4gICAgICAgID5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGVcbiAgICAjY2hlY2tib3h0bXB0XG4gICAgbGV0LWlkPVwiaWRcIlxuICAgIGxldC1pZHg9XCJpZHhcIlxuICAgIGxldC1zb3VyY2U9XCJzb3VyY2VcIlxuICAgIGxldC1uYW1lPVwibmFtZVwiXG4gICAgbGV0LWNoZWNrYm94VmFsdWU9XCJjaGVja2JveFZhbHVlXCJcbiAgICBsZXQtbGFiZWx0ZXh0PVwibGFiZWx0ZXh0XCJcbiAgICBsZXQtY2hlY2tib3hEaXNhYmxlZD1cImRpc2FibGVkXCJcbiAgICBsZXQtYXJpYUxhYmVsPVwiYXJpYUxhYmVsXCJcbiAgICBsZXQtYXJpYUxhYmVsbGVkQnk9XCJhcmlhTGFiZWxsZWRCeVwiXG4gICAgbGV0LWFyaWFEZXNjcmliZWRCeT1cImFyaWFEZXNjcmliZWRCeVwiXG4gICAgbGV0LXRpdGxlPVwidGl0bGVcIlxuPlxuICAgIDxmZHAtY2hlY2tib3hcbiAgICAgICAgW2lkXT1cImlkXCJcbiAgICAgICAgW25hbWVdPVwibmFtZVwiXG4gICAgICAgIFt2YWx1ZXNdPVwieyB0cnVlVmFsdWU6IGNoZWNrYm94VmFsdWUgfVwiXG4gICAgICAgIFtsYWJlbF09XCJsYWJlbHRleHRcIlxuICAgICAgICBbYXJpYUxhYmVsXT1cImFyaWFMYWJlbFwiXG4gICAgICAgIFthcmlhTGFiZWxsZWRCeV09XCJhcmlhTGFiZWxsZWRCeVwiXG4gICAgICAgIFthcmlhRGVzY3JpYmVkQnldPVwiYXJpYURlc2NyaWJlZEJ5XCJcbiAgICAgICAgW3RpdGxlXT1cInRpdGxlXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImNoZWNrYm94RGlzYWJsZWRcIlxuICAgICAgICBbc3RhdGVdPVwic3RhdGVcIlxuICAgICAgICBbbmdNb2RlbF09XCJfc2VsZWN0aW9uTW9kZWwuaXNTZWxlY3RlZChjaGVja2JveFZhbHVlKSA/IGNoZWNrYm94VmFsdWUgOiBmYWxzZVwiXG4gICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uTW9kZWxDaGFuZ2VkKCRldmVudCwgY2hlY2tib3hWYWx1ZSlcIlxuICAgICAgICAoY2xpY2spPVwib25DaGVja2JveENsaWNrKGlkeCwgc291cmNlLCAkZXZlbnQpXCJcbiAgICA+XG4gICAgPC9mZHAtY2hlY2tib3g+XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
188
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3gtZ3JvdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9zcmMvbGliL2Zvcm0vY2hlY2tib3gtZ3JvdXAvY2hlY2tib3gtZ3JvdXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9zcmMvbGliL2Zvcm0vY2hlY2tib3gtZ3JvdXAvY2hlY2tib3gtZ3JvdXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULGVBQWUsRUFDZixVQUFVLEVBQ1YsWUFBWSxFQUNaLFVBQVUsRUFDVixJQUFJLEVBQ0osTUFBTSxFQUNOLEtBQUssRUFDTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLFNBQVMsRUFDVCxJQUFJLEVBQ0osUUFBUSxFQUNSLFlBQVksRUFDWixpQkFBaUIsRUFDcEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRSxPQUFPLEVBQUUsYUFBYSxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDbEYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzNELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUUxRCxPQUFPLEVBQ0gsK0JBQStCLEVBQy9CLDZCQUE2QixFQUM3QiwwQkFBMEIsRUFDMUIsNEJBQTRCLEVBQzVCLGVBQWUsRUFFZixpQkFBaUIsRUFDakIsd0JBQXdCLEVBQzNCLE1BQU0sa0NBQWtDLENBQUM7QUFDMUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7Ozs7Ozs7QUFFbkU7Ozs7R0FJRztBQVFILE1BQU0sT0FBTyxz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QUFNOzJCQUFDLGFBQWE7OzBCQUNwRCxRQUFROzswQkFDUixRQUFROzswQkFDUixJQUFJOzswQkFDSixNQUFNOzJCQUFDLHFCQUFxQjs7MEJBQzVCLE1BQU07MkJBQUMscUJBQXFCOzswQkFFNUIsUUFBUTs7MEJBQ1IsTUFBTTsyQkFBQyw2QkFBNkI7NENBckRyQyxLQUFLO3NCQURSLEtBQUs7Z0JBYUYsUUFBUTtzQkFEWCxLQUFLO2dCQVVOLGlCQUFpQjtzQkFEaEIsZUFBZTt1QkFBQyxpQkFBaUI7Z0JBS2xDLGNBQWM7c0JBRGIsWUFBWTt1QkFBQyxpQkFBaUI7Z0JBS3RCLFdBQVc7c0JBRG5CLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBDb250ZW50Q2hpbGRyZW4sXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgZm9yd2FyZFJlZixcbiAgICBIb3N0LFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPcHRpb25hbCxcbiAgICBPdXRwdXQsXG4gICAgUXVlcnlMaXN0LFxuICAgIFNlbGYsXG4gICAgU2tpcFNlbGYsXG4gICAgVmlld0NoaWxkcmVuLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbENvbnRhaW5lciwgTmdDb250cm9sLCBOZ0Zvcm0gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBGRF9GT1JNX0ZJRUxELCBGRF9GT1JNX0ZJRUxEX0NPTlRST0wgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2Nkay9mb3Jtcyc7XG5pbXBvcnQgeyBSYW5nZVNlbGVjdG9yIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jZGsvdXRpbHMnO1xuaW1wb3J0IHsgU2VsZWN0aW9uTW9kZWwgfSBmcm9tICdAYW5ndWxhci9jZGsvY29sbGVjdGlvbnMnO1xuXG5pbXBvcnQge1xuICAgIEluTGluZUxheW91dENvbGxlY3Rpb25CYXNlSW5wdXQsXG4gICAgUkVTUE9OU0lWRV9CUkVBS1BPSU5UU19DT05GSUcsXG4gICAgUmVzcG9uc2l2ZUJyZWFrUG9pbnRDb25maWcsXG4gICAgUmVzcG9uc2l2ZUJyZWFrcG9pbnRzU2VydmljZSxcbiAgICBjb2VyY2VBcnJheVNhZmUsXG4gICAgU2VsZWN0SXRlbSxcbiAgICBQbGF0Zm9ybUZvcm1GaWVsZCxcbiAgICBQbGF0Zm9ybUZvcm1GaWVsZENvbnRyb2xcbn0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9wbGF0Zm9ybS9zaGFyZWQnO1xuaW1wb3J0IHsgQ2hlY2tib3hDb21wb25lbnQgfSBmcm9tICcuLi9jaGVja2JveC9jaGVja2JveC5jb21wb25lbnQnO1xuXG4vKipcbiAqIENoZWNrYm94IGdyb3VwIGltcGxlbWVudGF0aW9uIGJhc2VkIG9uIHRoZVxuICogaHR0cHM6Ly9naXRodWIuY29tL1NBUC9mdW5kYW1lbnRhbC1uZ3gvd2lraS9QbGF0Zm9ybTotQ2hlY2tib3hHcm91cC1UZWNobmljYWwtRGVzaWduXG4gKiBkb2N1bWVudHMuXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZmRwLWNoZWNrYm94LWdyb3VwJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vY2hlY2tib3gtZ3JvdXAuY29tcG9uZW50Lmh0bWwnLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBGRF9GT1JNX0ZJRUxEX0NPTlRST0wsIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IENoZWNrYm94R3JvdXBDb21wb25lbnQpLCBtdWx0aTogdHJ1ZSB9XVxufSlcbmV4cG9ydCBjbGFzcyBDaGVja2JveEdyb3VwQ29tcG9uZW50IGV4dGVuZHMgSW5MaW5lTGF5b3V0Q29sbGVjdGlvbkJhc2VJbnB1dCB7XG4gICAgLyoqXG4gICAgICogdmFsdWUgZm9yIHNlbGVjdGVkIGNoZWNrYm94ZXMuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzZXQgdmFsdWUoc2VsZWN0ZWRWYWx1ZTogYW55W10pIHtcbiAgICAgICAgdGhpcy5zZXRWYWx1ZShzZWxlY3RlZFZhbHVlKTtcbiAgICAgICAgdGhpcy5fdXBkYXRlU2VsZWN0aW9uTW9kZWxCeVZhbHVlKCk7XG4gICAgfVxuICAgIGdldCB2YWx1ZSgpOiBhbnlbXSB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldFZhbHVlKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVG8gRGlzcGxheSBtdWx0aXBsZSBjaGVja2JveGVzIGluIGEgbGluZVxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IGlzSW5saW5lKGlubGluZTogYm9vbGVhbikge1xuICAgICAgICB0aGlzLl9pbmxpbmVDdXJyZW50VmFsdWUkLm5leHQoaW5saW5lKTtcbiAgICB9XG4gICAgZ2V0IGlzSW5saW5lKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faW5saW5lQ3VycmVudFZhbHVlJC52YWx1ZTtcbiAgICB9XG5cbiAgICAvKiogQ2hpbGRyZW4gY2hlY2tib3hlcyBwYXNzZWQgYXMgY29udGVudCAqL1xuICAgIEBDb250ZW50Q2hpbGRyZW4oQ2hlY2tib3hDb21wb25lbnQpXG4gICAgY29udGVudENoZWNrYm94ZXM6IFF1ZXJ5TGlzdDxDaGVja2JveENvbXBvbmVudD47XG5cbiAgICAvKiogQ2hpbGRyZW4gY2hlY2tib3hlcyBjcmVhdGVkIGZyb20gcGFzc2VkIGxpc3QgdmFsdWVzLiAqL1xuICAgIEBWaWV3Q2hpbGRyZW4oQ2hlY2tib3hDb21wb25lbnQpXG4gICAgdmlld0NoZWNrYm94ZXM6IFF1ZXJ5TGlzdDxDaGVja2JveENvbXBvbmVudD47XG5cbiAgICAvKiogRW1pdHMgY2hlY2tlZCBjaGFuZ2UgZXZlbnQgKi9cbiAgICBAT3V0cHV0KClcbiAgICByZWFkb25seSB2YWx1ZUNoYW5nZTogRXZlbnRFbWl0dGVyPHN0cmluZ1tdPiA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nW10+KCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHJlYWRvbmx5IF9zZWxlY3Rpb25Nb2RlbCA9IG5ldyBTZWxlY3Rpb25Nb2RlbCh0cnVlKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBfcmFuZ2VTZWxlY3RvciA9IG5ldyBSYW5nZVNlbGVjdG9yKCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgICAgIHJlYWRvbmx5IF9yZXNwb25zaXZlQnJlYWtwb2ludHNTZXJ2aWNlOiBSZXNwb25zaXZlQnJlYWtwb2ludHNTZXJ2aWNlLFxuICAgICAgICBAT3B0aW9uYWwoKSBAU2VsZigpIG5nQ29udHJvbDogTmdDb250cm9sLFxuICAgICAgICBAT3B0aW9uYWwoKSBAU2tpcFNlbGYoKSBjb250cm9sQ29udGFpbmVyOiBDb250cm9sQ29udGFpbmVyLFxuICAgICAgICBAT3B0aW9uYWwoKSBAU2tpcFNlbGYoKSBuZ0Zvcm06IE5nRm9ybSxcbiAgICAgICAgQE9wdGlvbmFsKCkgQFNraXBTZWxmKCkgQEhvc3QoKSBASW5qZWN0KEZEX0ZPUk1fRklFTEQpIGZvcm1GaWVsZDogUGxhdGZvcm1Gb3JtRmllbGQsXG4gICAgICAgIEBPcHRpb25hbCgpXG4gICAgICAgIEBTa2lwU2VsZigpXG4gICAgICAgIEBIb3N0KClcbiAgICAgICAgQEluamVjdChGRF9GT1JNX0ZJRUxEX0NPTlRST0wpXG4gICAgICAgIEBJbmplY3QoRkRfRk9STV9GSUVMRF9DT05UUk9MKVxuICAgICAgICBmb3JtQ29udHJvbDogUGxhdGZvcm1Gb3JtRmllbGRDb250cm9sLFxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBASW5qZWN0KFJFU1BPTlNJVkVfQlJFQUtQT0lOVFNfQ09ORklHKVxuICAgICAgICByZWFkb25seSBfZGVmYXVsdFJlc3BvbnNpdmVCcmVha1BvaW50Q29uZmlnOiBSZXNwb25zaXZlQnJlYWtQb2ludENvbmZpZ1xuICAgICkge1xuICAgICAgICBzdXBlcihcbiAgICAgICAgICAgIGNkLFxuICAgICAgICAgICAgZWxlbWVudFJlZixcbiAgICAgICAgICAgIF9yZXNwb25zaXZlQnJlYWtwb2ludHNTZXJ2aWNlLFxuICAgICAgICAgICAgbmdDb250cm9sLFxuICAgICAgICAgICAgY29udHJvbENvbnRhaW5lcixcbiAgICAgICAgICAgIG5nRm9ybSxcbiAgICAgICAgICAgIGZvcm1GaWVsZCxcbiAgICAgICAgICAgIGZvcm1Db250cm9sLFxuICAgICAgICAgICAgX2RlZmF1bHRSZXNwb25zaXZlQnJlYWtQb2ludENvbmZpZ1xuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBAcGFyYW0gc2VsZWN0aW9uU3RhdGUgYWN0dWFsIHZhbHVlIG9mIHRoZSBjaGVja2JveFxuICAgICAqIEBwYXJhbSBjaGVja2JveFRydWVWYWx1ZSB0aHV0aHkgdmFsdWUgdG8gY29tcGFyZSB0aGUgXCJzZWxlY3Rpb25TdGF0ZVwiIHdpdGhcbiAgICAgKi9cbiAgICBvbk1vZGVsQ2hhbmdlZChzZWxlY3Rpb25TdGF0ZTogYW55LCBjaGVja2JveFRydWVWYWx1ZTogYW55KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGlzU2VsZWN0ZWQgPSBzZWxlY3Rpb25TdGF0ZSA9PT0gY2hlY2tib3hUcnVlVmFsdWU7XG4gICAgICAgIGlmIChpc1NlbGVjdGVkKSB7XG4gICAgICAgICAgICB0aGlzLl9zZWxlY3Rpb25Nb2RlbC5zZWxlY3QoY2hlY2tib3hUcnVlVmFsdWUpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5fc2VsZWN0aW9uTW9kZWwuZGVzZWxlY3QoY2hlY2tib3hUcnVlVmFsdWUpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX3NldFZhbHVlQnlTZWxlY3Rpb25Nb2RlbCgpO1xuICAgICAgICB0aGlzLm9uVG91Y2hlZCgpO1xuICAgICAgICB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQodGhpcy52YWx1ZSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBvbkNoZWNrYm94Q2xpY2soaW5kZXg6IG51bWJlciwgc291cmNlOiAnY29udGVudENoaWxkcmVuJyB8ICdsaXN0JywgZXZlbnQ/OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIC8vIHRoaXMgaGFuZGxlciB3aWxsIGJlIGludm9rZWQgYWZ0ZXIgXCJ2YWx1ZUNoYW5nZVwiXG4gICAgICAgIGNvbnN0IHF1ZXJ5TGlzdCA9IHNvdXJjZSA9PT0gJ2xpc3QnID8gdGhpcy52aWV3Q2hlY2tib3hlcyA6IHRoaXMuY29udGVudENoZWNrYm94ZXM7XG4gICAgICAgIGNvbnN0IHRhcmdldCA9IHF1ZXJ5TGlzdC5nZXQoaW5kZXgpO1xuXG4gICAgICAgIGNvbnN0IGlzQ2hlY2tlZCA9IHRoaXMuX3NlbGVjdGlvbk1vZGVsLmlzU2VsZWN0ZWQodGFyZ2V0Py52YWx1ZXMudHJ1ZVZhbHVlKTtcbiAgICAgICAgdGhpcy5fcmFuZ2VTZWxlY3Rvci5vblJhbmdlRWxlbWVudFRvZ2dsZWQoaW5kZXgsIGV2ZW50KTtcblxuICAgICAgICBpZiAoIXRoaXMuX3JhbmdlU2VsZWN0b3IubGFzdFJhbmdlU2VsZWN0aW9uU3RhdGU/LmlzUmFuZ2VTZWxlY3Rpb24pIHtcbiAgICAgICAgICAgIC8vIG5vIG5lZWQgdG8gcHJvY2VlZCwgaWYgaXQncyBub3QgYSByYW5nZSBzZWxlY3Rpb24gLSBjdXJyZW50IGNoZWNrYm94IGlzIGFscmVhZHkgdXBkYXRlZFxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fcmFuZ2VTZWxlY3Rvci5hcHBseVZhbHVlVG9FYWNoSW5SYW5nZSgoaWR4KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjaGVja2JveCA9IHF1ZXJ5TGlzdC5nZXQoaWR4KTtcbiAgICAgICAgICAgIGlmIChjaGVja2JveD8uZGlzYWJsZWQpIHtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCBjaGVja2JveFZhbHVlID0gY2hlY2tib3g/LnZhbHVlcy50cnVlVmFsdWU7XG4gICAgICAgICAgICBpZiAoaXNDaGVja2VkKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fc2VsZWN0aW9uTW9kZWwuc2VsZWN0KGNoZWNrYm94VmFsdWUpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9zZWxlY3Rpb25Nb2RlbC5kZXNlbGVjdChjaGVja2JveFZhbHVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuX3NldFZhbHVlQnlTZWxlY3Rpb25Nb2RlbCgpO1xuICAgICAgICB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQodGhpcy52YWx1ZSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICB3cml0ZVZhbHVlKHNlbGVjdGVkVmFsdWU6IGFueSk6IHZvaWQge1xuICAgICAgICBzdXBlci53cml0ZVZhbHVlKGNvZXJjZUFycmF5U2FmZShzZWxlY3RlZFZhbHVlKSk7XG4gICAgICAgIHRoaXMuX3VwZGF0ZVNlbGVjdGlvbk1vZGVsQnlWYWx1ZSgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGFjY2VzcyBkaXNwbGF5IHZhbHVlIGZvciBvYmplY3RzLCBhY3RzIGFzIGNoZWNrYm94IGxhYmVsLlxuICAgICAqL1xuICAgIGdldERpc3BsYXlWYWx1ZShpdGVtOiBhbnkpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5kaXNwbGF5VmFsdWUoaXRlbSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogYWNjZXNzIGxvb2t1cCB2YWx1ZSBmb3Igb2JqZWN0cywgYWN0cyBhcyBjaGVja2JveCB2YWx1ZS5cbiAgICAgKi9cbiAgICBnZXRMb29rdXBWYWx1ZShpdGVtOiBhbnkpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5sb29rdXBWYWx1ZShpdGVtKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGdldExpc3RJdGVtRGlzYWJsZWRWYWx1ZShpdGVtOiBDaGVja2JveEdyb3VwQ29tcG9uZW50WydsaXN0J11bbnVtYmVyXSk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5kaXNhYmxlZCB8fCAhISg8U2VsZWN0SXRlbT5pdGVtKT8uZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgLyoqIEBpbmhlcml0ZG9jICovXG4gICAgcHJvdGVjdGVkIHNldFZhbHVlKHZhbHVlOiBhbnksIGVtaXRPbkNoYW5nZSA9IHRydWUpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIuc2V0VmFsdWUoY29lcmNlQXJyYXlTYWZlKHZhbHVlKSwgZW1pdE9uQ2hhbmdlKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3NldFZhbHVlQnlTZWxlY3Rpb25Nb2RlbCgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIuc2V0VmFsdWUodGhpcy5fc2VsZWN0aW9uTW9kZWwuc2VsZWN0ZWQpO1xuICAgICAgICB0aGlzLl9jZC5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3VwZGF0ZVNlbGVjdGlvbk1vZGVsQnlWYWx1ZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fc2VsZWN0aW9uTW9kZWwuY2xlYXIoKTtcbiAgICAgICAgdGhpcy52YWx1ZS5mb3JFYWNoKCh2KSA9PiB0aGlzLl9zZWxlY3Rpb25Nb2RlbC5zZWxlY3QodikpO1xuICAgICAgICB0aGlzLl9jZC5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG59XG4iLCI8ZmQtZm9ybS1ncm91cFxuICAgIFtpc0lubGluZV09XCJpc0lubGluZVwiXG4gICAgcm9sZT1cImdyb3VwXCJcbiAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImFyaWFMYWJlbFwiXG4gICAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cImFyaWFMYWJlbGxlZEJ5XCJcbiAgICBbYXR0ci5hcmlhLXJlcXVpcmVkXT1cInJlcXVpcmVkXCJcbj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWxpc3RcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgY2hlY2tib3ggb2YgY29udGVudENoZWNrYm94ZXM7IGxldCBpID0gaW5kZXhcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cIlxuICAgICAgICAgICAgICAgICAgICBjaGVja2JveHRtcHQ7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRleHQ6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBpZCArIGksXG4gICAgICAgICAgICAgICAgICAgICAgICBpZHg6IGksXG4gICAgICAgICAgICAgICAgICAgICAgICBzb3VyY2U6ICdjb250ZW50Q2hpbGRyZW4nLFxuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogbmFtZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNoZWNrYm94VmFsdWU6IGNoZWNrYm94LmNvcmVDaGVja2JveD8udmFsdWVzPy50cnVlVmFsdWUsXG4gICAgICAgICAgICAgICAgICAgICAgICBsYWJlbHRleHQ6IGNoZWNrYm94LmxhYmVsLFxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzYWJsZWQ6IGRpc2FibGVkIHx8IGNoZWNrYm94LmRpc2FibGVkLFxuICAgICAgICAgICAgICAgICAgICAgICAgYXJpYUxhYmVsOiBjaGVja2JveC5hcmlhTGFiZWwsXG4gICAgICAgICAgICAgICAgICAgICAgICBhcmlhTGFiZWxsZWRCeTogY2hlY2tib3guYXJpYUxhYmVsbGVkQnksXG4gICAgICAgICAgICAgICAgICAgICAgICBhcmlhRGVzY3JpYmVkQnk6IGNoZWNrYm94LmFyaWFEZXNjcmliZWRCeSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiBjaGVja2JveC50aXRsZVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibGlzdFwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwibGlzdHZhbHVlc1wiPjwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuPC9mZC1mb3JtLWdyb3VwPlxuXG48bmctdGVtcGxhdGUgI2xpc3R2YWx1ZXM+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBsaXN0OyBsZXQgaSA9IGluZGV4XCI+XG4gICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICAgICAgICAgICAgY2hlY2tib3h0bXB0O1xuICAgICAgICAgICAgICAgIGNvbnRleHQ6IHtcbiAgICAgICAgICAgICAgICAgICAgaWQ6IGlkICsgaSxcbiAgICAgICAgICAgICAgICAgICAgaWR4OiBpLFxuICAgICAgICAgICAgICAgICAgICBzb3VyY2U6ICdsaXN0JyxcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogbmFtZSxcbiAgICAgICAgICAgICAgICAgICAgY2hlY2tib3hWYWx1ZTogZ2V0TG9va3VwVmFsdWUoaXRlbSksXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsdGV4dDogZ2V0RGlzcGxheVZhbHVlKGl0ZW0pLFxuICAgICAgICAgICAgICAgICAgICBkaXNhYmxlZDogZ2V0TGlzdEl0ZW1EaXNhYmxlZFZhbHVlKGl0ZW0pXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXCJcbiAgICAgICAgPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZVxuICAgICNjaGVja2JveHRtcHRcbiAgICBsZXQtaWQ9XCJpZFwiXG4gICAgbGV0LWlkeD1cImlkeFwiXG4gICAgbGV0LXNvdXJjZT1cInNvdXJjZVwiXG4gICAgbGV0LW5hbWU9XCJuYW1lXCJcbiAgICBsZXQtY2hlY2tib3hWYWx1ZT1cImNoZWNrYm94VmFsdWVcIlxuICAgIGxldC1sYWJlbHRleHQ9XCJsYWJlbHRleHRcIlxuICAgIGxldC1jaGVja2JveERpc2FibGVkPVwiZGlzYWJsZWRcIlxuICAgIGxldC1hcmlhTGFiZWw9XCJhcmlhTGFiZWxcIlxuICAgIGxldC1hcmlhTGFiZWxsZWRCeT1cImFyaWFMYWJlbGxlZEJ5XCJcbiAgICBsZXQtYXJpYURlc2NyaWJlZEJ5PVwiYXJpYURlc2NyaWJlZEJ5XCJcbiAgICBsZXQtdGl0bGU9XCJ0aXRsZVwiXG4+XG4gICAgPGZkcC1jaGVja2JveFxuICAgICAgICBbaWRdPVwiaWRcIlxuICAgICAgICBbbmFtZV09XCJuYW1lXCJcbiAgICAgICAgW3ZhbHVlc109XCJ7IHRydWVWYWx1ZTogY2hlY2tib3hWYWx1ZSB9XCJcbiAgICAgICAgW2xhYmVsXT1cImxhYmVsdGV4dFwiXG4gICAgICAgIFthcmlhTGFiZWxdPVwiYXJpYUxhYmVsXCJcbiAgICAgICAgW2FyaWFMYWJlbGxlZEJ5XT1cImFyaWFMYWJlbGxlZEJ5XCJcbiAgICAgICAgW2FyaWFEZXNjcmliZWRCeV09XCJhcmlhRGVzY3JpYmVkQnlcIlxuICAgICAgICBbdGl0bGVdPVwidGl0bGVcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiY2hlY2tib3hEaXNhYmxlZFwiXG4gICAgICAgIFtzdGF0ZV09XCJzdGF0ZVwiXG4gICAgICAgIFtuZ01vZGVsXT1cIl9zZWxlY3Rpb25Nb2RlbC5pc1NlbGVjdGVkKGNoZWNrYm94VmFsdWUpID8gY2hlY2tib3hWYWx1ZSA6IGZhbHNlXCJcbiAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25Nb2RlbENoYW5nZWQoJGV2ZW50LCBjaGVja2JveFZhbHVlKVwiXG4gICAgICAgIChjbGljayk9XCJvbkNoZWNrYm94Q2xpY2soaWR4LCBzb3VyY2UsICRldmVudClcIlxuICAgID5cbiAgICA8L2ZkcC1jaGVja2JveD5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
@@ -5,36 +5,18 @@ import { FormGroupModule } from '@fundamental-ngx/core/form';
|
|
|
5
5
|
import { ContentDensityModule } from '@fundamental-ngx/core/content-density';
|
|
6
6
|
import { CheckboxGroupComponent } from './checkbox-group.component';
|
|
7
7
|
import { PlatformCheckboxModule } from '../checkbox/checkbox.module';
|
|
8
|
-
import { PlatformContentDensityDeprecationsModule } from '@fundamental-ngx/platform/shared';
|
|
9
8
|
import * as i0 from "@angular/core";
|
|
10
9
|
export class PlatformCheckboxGroupModule {
|
|
11
10
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.0", ngImport: i0, type: PlatformCheckboxGroupModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
12
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.0", ngImport: i0, type: PlatformCheckboxGroupModule, declarations: [CheckboxGroupComponent], imports: [CommonModule,
|
|
13
|
-
|
|
14
|
-
FormsModule,
|
|
15
|
-
FormGroupModule,
|
|
16
|
-
PlatformContentDensityDeprecationsModule,
|
|
17
|
-
ContentDensityModule], exports: [CheckboxGroupComponent, PlatformContentDensityDeprecationsModule, ContentDensityModule] }); }
|
|
18
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.0", ngImport: i0, type: PlatformCheckboxGroupModule, imports: [CommonModule,
|
|
19
|
-
PlatformCheckboxModule,
|
|
20
|
-
FormsModule,
|
|
21
|
-
FormGroupModule,
|
|
22
|
-
PlatformContentDensityDeprecationsModule,
|
|
23
|
-
ContentDensityModule, PlatformContentDensityDeprecationsModule, ContentDensityModule] }); }
|
|
11
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.0", ngImport: i0, type: PlatformCheckboxGroupModule, declarations: [CheckboxGroupComponent], imports: [CommonModule, PlatformCheckboxModule, FormsModule, FormGroupModule, ContentDensityModule], exports: [CheckboxGroupComponent, ContentDensityModule] }); }
|
|
12
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.0", ngImport: i0, type: PlatformCheckboxGroupModule, imports: [CommonModule, PlatformCheckboxModule, FormsModule, FormGroupModule, ContentDensityModule, ContentDensityModule] }); }
|
|
24
13
|
}
|
|
25
14
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.0", ngImport: i0, type: PlatformCheckboxGroupModule, decorators: [{
|
|
26
15
|
type: NgModule,
|
|
27
16
|
args: [{
|
|
28
|
-
imports: [
|
|
29
|
-
|
|
30
|
-
PlatformCheckboxModule,
|
|
31
|
-
FormsModule,
|
|
32
|
-
FormGroupModule,
|
|
33
|
-
PlatformContentDensityDeprecationsModule,
|
|
34
|
-
ContentDensityModule
|
|
35
|
-
],
|
|
36
|
-
exports: [CheckboxGroupComponent, PlatformContentDensityDeprecationsModule, ContentDensityModule],
|
|
17
|
+
imports: [CommonModule, PlatformCheckboxModule, FormsModule, FormGroupModule, ContentDensityModule],
|
|
18
|
+
exports: [CheckboxGroupComponent, ContentDensityModule],
|
|
37
19
|
declarations: [CheckboxGroupComponent]
|
|
38
20
|
}]
|
|
39
21
|
}] });
|
|
40
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3gtZ3JvdXAubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9zcmMvbGliL2Zvcm0vY2hlY2tib3gtZ3JvdXAvY2hlY2tib3gtZ3JvdXAubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU3QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDN0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDN0UsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDcEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7O0FBT3JFLE1BQU0sT0FBTywyQkFBMkI7OEdBQTNCLDJCQUEyQjsrR0FBM0IsMkJBQTJCLGlCQUZyQixzQkFBc0IsYUFGM0IsWUFBWSxFQUFFLHNCQUFzQixFQUFFLFdBQVcsRUFBRSxlQUFlLEVBQUUsb0JBQW9CLGFBQ3hGLHNCQUFzQixFQUFFLG9CQUFvQjsrR0FHN0MsMkJBQTJCLFlBSjFCLFlBQVksRUFBRSxzQkFBc0IsRUFBRSxXQUFXLEVBQUUsZUFBZSxFQUFFLG9CQUFvQixFQUNoRSxvQkFBb0I7OzJGQUc3QywyQkFBMkI7a0JBTHZDLFFBQVE7bUJBQUM7b0JBQ04sT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLHNCQUFzQixFQUFFLFdBQVcsRUFBRSxlQUFlLEVBQUUsb0JBQW9CLENBQUM7b0JBQ25HLE9BQU8sRUFBRSxDQUFDLHNCQUFzQixFQUFFLG9CQUFvQixDQUFDO29CQUN2RCxZQUFZLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztpQkFDekMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBGb3JtR3JvdXBNb2R1bGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvZm9ybSc7XG5pbXBvcnQgeyBDb250ZW50RGVuc2l0eU1vZHVsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9jb250ZW50LWRlbnNpdHknO1xuaW1wb3J0IHsgQ2hlY2tib3hHcm91cENvbXBvbmVudCB9IGZyb20gJy4vY2hlY2tib3gtZ3JvdXAuY29tcG9uZW50JztcbmltcG9ydCB7IFBsYXRmb3JtQ2hlY2tib3hNb2R1bGUgfSBmcm9tICcuLi9jaGVja2JveC9jaGVja2JveC5tb2R1bGUnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFBsYXRmb3JtQ2hlY2tib3hNb2R1bGUsIEZvcm1zTW9kdWxlLCBGb3JtR3JvdXBNb2R1bGUsIENvbnRlbnREZW5zaXR5TW9kdWxlXSxcbiAgICBleHBvcnRzOiBbQ2hlY2tib3hHcm91cENvbXBvbmVudCwgQ29udGVudERlbnNpdHlNb2R1bGVdLFxuICAgIGRlY2xhcmF0aW9uczogW0NoZWNrYm94R3JvdXBDb21wb25lbnRdXG59KVxuZXhwb3J0IGNsYXNzIFBsYXRmb3JtQ2hlY2tib3hHcm91cE1vZHVsZSB7fVxuIl19
|
|
@@ -180,7 +180,7 @@ export class ComboboxComponent extends BaseCombobox {
|
|
|
180
180
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.0", type: ComboboxComponent, selector: "fdp-combobox", outputs: { selectionChange: "selectionChange" }, providers: [
|
|
181
181
|
{ provide: FD_FORM_FIELD_CONTROL, useExisting: ComboboxComponent, multi: true },
|
|
182
182
|
contentDensityObserverProviders()
|
|
183
|
-
], viewQueries: [{ propertyName: "searchInputElement", first: true, predicate: ["searchInputElement"], descendants: true }, { propertyName: "controlTemplate", first: true, predicate: ["controlTemplate"], descendants: true }, { propertyName: "listTemplate", first: true, predicate: ["listTemplate"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngTemplateOutlet=\"mobile ? mobileTemplate : desktopTemplate\"></ng-container>\n\n<ng-template #desktopTemplate>\n <fd-popover\n [isOpen]=\"isOpen && _suggestions.length > 0\"\n (isOpenChange)=\"isOpenChangeHandle($event)\"\n [fillControlMode]=\"fillControlMode\"\n [focusTrapped]=\"true\"\n [triggers]=\"triggers\"\n [disabled]=\"disabled || readonly\"\n [maxWidth]=\"autoResize ? null : minWidth\"\n [closeOnOutsideClick]=\"closeOnOutsideClick\"\n additionalBodyClass=\"fdp-combobox__popover\"\n >\n <fd-popover-control>\n <ng-container *ngTemplateOutlet=\"controlTemplate\"></ng-container>\n </fd-popover-control>\n <fd-popover-body [hidden]=\"_suggestions.length === 0\">\n <ng-container *ngTemplateOutlet=\"listTemplate\"></ng-container>\n <ng-content></ng-content>\n </fd-popover-body>\n </fd-popover>\n</ng-template>\n\n<ng-template #mobileTemplate>\n <ng-container [ngTemplateOutlet]=\"controlTemplate\"></ng-container>\n</ng-template>\n\n<ng-template #controlTemplate>\n <fd-form-input-message-group>\n <fd-input-group\n [id]=\"id + '-input-group-container'\"\n [button]=\"!readonly\"\n [glyph]=\"!readonly ? 'navigation-down-arrow' : ' '\"\n [state]=\"mobile && isOpen ? null : state\"\n [buttonFocusable]=\"buttonFocusable\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [isControl]=\"true\"\n (addOnButtonClicked)=\"onPrimaryButtonClick()\"\n [isExpanded]=\"!mobile && isOpen && _suggestions.length > 0\"\n [attr.aria-disabled]=\"disabled\"\n [glyphAriaLabel]=\"ariaLabel\"\n (click)=\"openInMobileMode()\"\n >\n <input\n #searchInputElement\n fdp-auto-complete\n [options]=\"_suggestions\"\n [inputText]=\"inputText\"\n [mobile]=\"mobile\"\n (onComplete)=\"_onCompleteTerm($event)\"\n type=\"text\"\n role=\"combobox\"\n autocomplete=\"off\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-autocomplete]=\"autoComplete && !mobile ? 'list' : null\"\n [attr.aria-owns]=\"autoComplete && !mobile ? id + '-result' : null\"\n [attr.aria-haspopup]=\"autoComplete && !mobile\"\n [attr.aria-required]=\"required\"\n fd-input-group-input\n tabindex=\"0\"\n [id]=\"id\"\n [name]=\"name\"\n (keydown)=\"onInputKeydownHandler($event)\"\n [disabled]=\"disabled\"\n [ngModel]=\"inputText\"\n (ngModelChange)=\"searchTermChanged($event)\"\n [placeholder]=\"placeholder\"\n (focus)=\"onTouched()\"\n (blur)=\"_onBlur($event)\"\n [attr.aria-expanded]=\"isOpen && _suggestions.length > 0\"\n [readonly]=\"readonly\"\n [attr.aria-readonly]=\"readonly\"\n />\n </fd-input-group>\n <div class=\"fdp-combobox__count-list-results\" role=\"status\" *ngIf=\"isOpen\">\n <ng-container *ngIf=\"_flatSuggestions?.length || '0' as count\">\n {{\n (count === 1\n ? 'platformCombobox.countListResultsSingular'\n : 'platformCombobox.countListResultsPlural'\n ) | fdTranslate : { count: count }\n }}\n </ng-container>\n </div>\n <fd-form-message\n *ngIf=\"mobile || isOpen ? null : !!stateMessage\"\n [type]=\"state\"\n [innerHtml]=\"stateMessage\"\n ></fd-form-message>\n </fd-form-input-message-group>\n</ng-template>\n\n<ng-template #listTemplate>\n <ul\n fd-list\n [hasMessage]=\"!!stateMessage\"\n (focusEscapeList)=\"handleListFocusEscape($event)\"\n [dropdownMode]=\"true\"\n class=\"fdp-combobox__list {{ !!stateMessage && 'fdp-combobox__list--message' }}\"\n [id]=\"id + '-result'\"\n role=\"listbox\"\n [byline]=\"byline\"\n [attr.aria-labelledby]=\"id + '-search'\"\n [style.maxHeight]=\"!mobile && maxHeight\"\n [style.maxWidth]=\"autoResize && maxWidth + 'px'\"\n >\n <li\n *ngIf=\"stateMessage\"\n [attr.aria-label]=\"stateMessage\"\n fd-list-message\n tabindex=\"-1\"\n role=\"presentation\"\n [type]=\"state || 'default'\"\n [innerHtml]=\"stateMessage\"\n ></li>\n\n <ng-content></ng-content>\n <ng-container *ngIf=\"isGroup\">\n <ng-container *ngFor=\"let group of _suggestions\">\n <ng-container *ngIf=\"!groupItemTemplate\">\n <li fd-list-group-header role=\"option\">\n <span fd-list-title [attr.title]=\"group.label\">{{ group.label }}</span>\n </li>\n </ng-container>\n\n <ng-container *ngIf=\"groupItemTemplate\">\n <ng-container\n [ngTemplateOutlet]=\"groupItemTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { label: group.label } }\"\n ></ng-container>\n </ng-container>\n\n <li\n *ngFor=\"let optionItem of group.children; let i = index\"\n (click)=\"handleOptionItem(optionItem)\"\n fd-list-item\n role=\"option\"\n [tabindex]=\"0\"\n (keyDown)=\"handlePressEnter($event, optionItem)\"\n [selected]=\"isSelectedOptionItem(optionItem)\"\n >\n <ng-container\n [ngTemplateOutlet]=\"listItem\"\n [ngTemplateOutletContext]=\"{ optionItem: optionItem, index: i }\"\n ></ng-container>\n </li>\n </ng-container>\n </ng-container>\n\n <ng-container *ngIf=\"!isGroup\">\n <li\n *ngFor=\"let optionItem of _suggestions; let i = index\"\n (click)=\"handleOptionItem(optionItem)\"\n fd-list-item\n role=\"option\"\n [tabindex]=\"0\"\n (keyDown)=\"handlePressEnter($event, optionItem)\"\n [selected]=\"isSelectedOptionItem(optionItem)\"\n >\n <ng-container\n [ngTemplateOutlet]=\"listItem\"\n [ngTemplateOutletContext]=\"{ optionItem: optionItem, index: i }\"\n ></ng-container>\n </li>\n </ng-container>\n </ul>\n</ng-template>\n\n<ng-template let-optionItem=\"optionItem\" let-index=\"index\" #listItem>\n <ng-container\n *ngIf=\"isSelectedOptionItem(optionItem) && !!selectedItemTemplate\"\n [ngTemplateOutlet]=\"selectedItemTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: optionItem.value, index: index }\"\n ></ng-container>\n\n <ng-container *ngIf=\"!(isSelectedOptionItem(optionItem) && selectedItemTemplate)\">\n <ng-container\n [ngTemplateOutlet]=\"optionItemSource\"\n [ngTemplateOutletContext]=\"{ optionItem: optionItem, index: index }\"\n ></ng-container>\n\n <ng-container\n [ngTemplateOutlet]=\"secondaryTextSource\"\n [ngTemplateOutletContext]=\"{ optionItem: optionItem }\"\n ></ng-container>\n </ng-container>\n</ng-template>\n\n<ng-template let-optionItem=\"optionItem\" let-index=\"index\" #optionItemSource>\n <ng-container *ngIf=\"!optionItemTemplate\">\n <span [attr.title]=\"optionItem.label\" [innerHTML]=\"optionItem.label | highlight : inputText\"></span>\n </ng-container>\n\n <ng-container *ngIf=\"optionItemTemplate\">\n <ng-container\n [ngTemplateOutlet]=\"optionItemTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: optionItem.value, index: index }\"\n ></ng-container>\n </ng-container>\n</ng-template>\n\n<ng-template let-optionItem=\"optionItem\" #secondaryTextSource>\n <ng-container *ngIf=\"showSecondaryText\">\n <ng-container *ngIf=\"!secondaryItemTemplate\">\n <span\n [style.text-align]=\"secondaryTextAlignment\"\n fd-list-secondary\n [attr.title]=\"optionItem.secondaryText\"\n [innerHTML]=\"optionItem.secondaryText | highlight : inputText\"\n ></span>\n </ng-container>\n\n <ng-container *ngIf=\"secondaryItemTemplate\">\n <ng-container\n [ngTemplateOutlet]=\"secondaryItemTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: optionItem.value }\"\n ></ng-container>\n </ng-container>\n </ng-container>\n</ng-template>\n", styles: [".fdp-combobox__count-list-results{position:absolute;opacity:0;z-index:-1}.fdp-combobox__list .fd-list__item{justify-content:space-between}.fdp-combobox__list .fd-list__item span{overflow:hidden;text-overflow:ellipsis;width:100%}\n"], dependencies: [{ kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { 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: "component", type: i6.InputGroupComponent, selector: "fd-input-group", inputs: ["inputTemplate", "placement", "required", "inline", "placeholder", "addOnText", "buttonFocusable", "type", "glyph", "button", "disabled", "readonly", "state", "isControl", "showFocus", "isExpanded", "glyphAriaLabel", "iconTitle", "ariaLabelledby", "ariaLabelledBy"], outputs: ["addOnButtonClicked", "search"] }, { kind: "directive", type: i6.InputGroupInputDirective, selector: "[fdInputGroupInput], [fd-input-group-input]", inputs: ["class"] }, { kind: "component", type: i7.ListComponent, selector: "[fd-list], [fdList]", inputs: ["dropdownMode", "multiInputMode", "mobileMode", "hasMessage", "noBorder", "navigationIndicator", "selection", "keyboardSupport", "byline", "unreadIndicator"], outputs: ["focusEscapeList"] }, { kind: "component", type: i7.ListItemComponent, selector: "[fdListItem] ,[fd-list-item]", inputs: ["selected", "ariaDescribedBy", "noData", "action", "interactive", "growing", "counter", "unread", "byline", "selectedListItemScreenReaderText", "navigatedListItemScreenReaderText", "navigatableListItemScreenReaderText"], outputs: ["keyDown"] }, { kind: "directive", type: i7.ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap"] }, { kind: "directive", type: i7.ListGroupHeaderDirective, selector: "[fdListGroupHeader], [fd-list-group-header]", inputs: ["nativeElementId"], outputs: ["keyDown"] }, { kind: "directive", type: i7.ListSecondaryDirective, selector: "[fd-list-secondary] ,[fdListSecondary]" }, { kind: "directive", type: i7.ListMessageDirective, selector: "[fd-list-message], [fdListMessage]", inputs: ["type", "class"] }, { kind: "component", type: i8.PopoverControlComponent, selector: "fd-popover-control" }, { kind: "component", type: i8.PopoverBodyComponent, selector: "fd-popover-body" }, { kind: "component", type: i8.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig"] }, { kind: "directive", type: i9.AutoCompleteDirective, selector: "[fdp-auto-complete]", inputs: ["options", "inputText", "mobile"], outputs: ["onComplete"] }, { kind: "component", type: i10.FormMessageComponent, selector: "fd-form-message", inputs: ["type", "static", "embedded", "class"] }, { kind: "component", type: i10.FormInputMessageGroupComponent, selector: "fd-form-input-message-group", inputs: ["triggers", "closeOnOutsideClick", "fillControlMode", "noArrow", "closeOnEscapeKey", "placement", "placementContainer", "isOpen"], outputs: ["isOpenChange"] }, { kind: "pipe", type: i3.SearchHighlightPipe, name: "highlight" }, { kind: "pipe", type: i11.FdTranslatePipe, name: "fdTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
183
|
+
], viewQueries: [{ propertyName: "searchInputElement", first: true, predicate: ["searchInputElement"], descendants: true }, { propertyName: "controlTemplate", first: true, predicate: ["controlTemplate"], descendants: true }, { propertyName: "listTemplate", first: true, predicate: ["listTemplate"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngTemplateOutlet=\"mobile ? mobileTemplate : desktopTemplate\"></ng-container>\n\n<ng-template #desktopTemplate>\n <fd-popover\n [isOpen]=\"isOpen && _suggestions.length > 0\"\n (isOpenChange)=\"isOpenChangeHandle($event)\"\n [fillControlMode]=\"fillControlMode\"\n [focusTrapped]=\"true\"\n [triggers]=\"triggers\"\n [disabled]=\"disabled || readonly\"\n [maxWidth]=\"autoResize ? null : minWidth\"\n [closeOnOutsideClick]=\"closeOnOutsideClick\"\n additionalBodyClass=\"fdp-combobox__popover\"\n >\n <fd-popover-control>\n <ng-container *ngTemplateOutlet=\"controlTemplate\"></ng-container>\n </fd-popover-control>\n <fd-popover-body [hidden]=\"_suggestions.length === 0\">\n <ng-container *ngTemplateOutlet=\"listTemplate\"></ng-container>\n <ng-content></ng-content>\n </fd-popover-body>\n </fd-popover>\n</ng-template>\n\n<ng-template #mobileTemplate>\n <ng-container [ngTemplateOutlet]=\"controlTemplate\"></ng-container>\n</ng-template>\n\n<ng-template #controlTemplate>\n <fd-form-input-message-group>\n <fd-input-group\n [id]=\"id + '-input-group-container'\"\n [button]=\"!readonly\"\n [glyph]=\"!readonly ? 'navigation-down-arrow' : ' '\"\n [state]=\"mobile && isOpen ? null : state\"\n [buttonFocusable]=\"buttonFocusable\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [isControl]=\"true\"\n (addOnButtonClicked)=\"onPrimaryButtonClick()\"\n [isExpanded]=\"!mobile && isOpen && _suggestions.length > 0\"\n [attr.aria-disabled]=\"disabled\"\n [glyphAriaLabel]=\"ariaLabel\"\n (click)=\"openInMobileMode()\"\n >\n <input\n #searchInputElement\n fdp-auto-complete\n [options]=\"_suggestions\"\n [inputText]=\"inputText\"\n [mobile]=\"mobile\"\n (onComplete)=\"_onCompleteTerm($event)\"\n type=\"text\"\n role=\"combobox\"\n autocomplete=\"off\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-autocomplete]=\"autoComplete && !mobile ? 'list' : null\"\n [attr.aria-owns]=\"autoComplete && !mobile ? id + '-result' : null\"\n [attr.aria-haspopup]=\"autoComplete && !mobile\"\n [attr.aria-required]=\"required\"\n fd-input-group-input\n tabindex=\"0\"\n [id]=\"id\"\n [name]=\"name\"\n (keydown)=\"onInputKeydownHandler($event)\"\n [disabled]=\"disabled\"\n [ngModel]=\"inputText\"\n (ngModelChange)=\"searchTermChanged($event)\"\n [placeholder]=\"placeholder\"\n (focus)=\"onTouched()\"\n (blur)=\"_onBlur($event)\"\n [attr.aria-expanded]=\"isOpen && _suggestions.length > 0\"\n [readonly]=\"readonly\"\n [attr.aria-readonly]=\"readonly\"\n />\n </fd-input-group>\n <div class=\"fdp-combobox__count-list-results\" role=\"status\" *ngIf=\"isOpen\">\n <ng-container *ngIf=\"_flatSuggestions?.length || '0' as count\">\n {{\n (count === 1\n ? 'platformCombobox.countListResultsSingular'\n : 'platformCombobox.countListResultsPlural'\n ) | fdTranslate : { count: count }\n }}\n </ng-container>\n </div>\n <fd-form-message\n *ngIf=\"mobile || isOpen ? null : !!stateMessage\"\n [type]=\"state\"\n [innerHtml]=\"stateMessage\"\n ></fd-form-message>\n </fd-form-input-message-group>\n</ng-template>\n\n<ng-template #listTemplate>\n <ul\n fd-list\n [hasMessage]=\"!!stateMessage\"\n (focusEscapeList)=\"handleListFocusEscape($event)\"\n [dropdownMode]=\"true\"\n class=\"fdp-combobox__list {{ !!stateMessage && 'fdp-combobox__list--message' }}\"\n [id]=\"id + '-result'\"\n role=\"listbox\"\n [byline]=\"byline\"\n [attr.aria-labelledby]=\"id + '-search'\"\n [style.maxHeight]=\"!mobile && maxHeight\"\n [style.maxWidth]=\"autoResize && maxWidth + 'px'\"\n >\n <li\n *ngIf=\"stateMessage\"\n [attr.aria-label]=\"stateMessage\"\n fd-list-message\n tabindex=\"-1\"\n role=\"presentation\"\n [type]=\"state || 'default'\"\n [innerHtml]=\"stateMessage\"\n ></li>\n\n <ng-content></ng-content>\n <ng-container *ngIf=\"isGroup\">\n <ng-container *ngFor=\"let group of _suggestions\">\n <ng-container *ngIf=\"!groupItemTemplate\">\n <li fd-list-group-header role=\"option\">\n <span fd-list-title [attr.title]=\"group.label\">{{ group.label }}</span>\n </li>\n </ng-container>\n\n <ng-container *ngIf=\"groupItemTemplate\">\n <ng-container\n [ngTemplateOutlet]=\"groupItemTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { label: group.label } }\"\n ></ng-container>\n </ng-container>\n\n <li\n *ngFor=\"let optionItem of group.children; let i = index\"\n (click)=\"handleOptionItem(optionItem)\"\n fd-list-item\n role=\"option\"\n [tabindex]=\"0\"\n (keyDown)=\"handlePressEnter($event, optionItem)\"\n [selected]=\"isSelectedOptionItem(optionItem)\"\n >\n <ng-container\n [ngTemplateOutlet]=\"listItem\"\n [ngTemplateOutletContext]=\"{ optionItem: optionItem, index: i }\"\n ></ng-container>\n </li>\n </ng-container>\n </ng-container>\n\n <ng-container *ngIf=\"!isGroup\">\n <li\n *ngFor=\"let optionItem of _suggestions; let i = index\"\n (click)=\"handleOptionItem(optionItem)\"\n fd-list-item\n role=\"option\"\n [tabindex]=\"0\"\n (keyDown)=\"handlePressEnter($event, optionItem)\"\n [selected]=\"isSelectedOptionItem(optionItem)\"\n >\n <ng-container\n [ngTemplateOutlet]=\"listItem\"\n [ngTemplateOutletContext]=\"{ optionItem: optionItem, index: i }\"\n ></ng-container>\n </li>\n </ng-container>\n </ul>\n</ng-template>\n\n<ng-template let-optionItem=\"optionItem\" let-index=\"index\" #listItem>\n <ng-container\n *ngIf=\"isSelectedOptionItem(optionItem) && !!selectedItemTemplate\"\n [ngTemplateOutlet]=\"selectedItemTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: optionItem.value, index: index }\"\n ></ng-container>\n\n <ng-container *ngIf=\"!(isSelectedOptionItem(optionItem) && selectedItemTemplate)\">\n <ng-container\n [ngTemplateOutlet]=\"optionItemSource\"\n [ngTemplateOutletContext]=\"{ optionItem: optionItem, index: index }\"\n ></ng-container>\n\n <ng-container\n [ngTemplateOutlet]=\"secondaryTextSource\"\n [ngTemplateOutletContext]=\"{ optionItem: optionItem }\"\n ></ng-container>\n </ng-container>\n</ng-template>\n\n<ng-template let-optionItem=\"optionItem\" let-index=\"index\" #optionItemSource>\n <ng-container *ngIf=\"!optionItemTemplate\">\n <span [attr.title]=\"optionItem.label\" [innerHTML]=\"optionItem.label | highlight : inputText\"></span>\n </ng-container>\n\n <ng-container *ngIf=\"optionItemTemplate\">\n <ng-container\n [ngTemplateOutlet]=\"optionItemTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: optionItem.value, index: index }\"\n ></ng-container>\n </ng-container>\n</ng-template>\n\n<ng-template let-optionItem=\"optionItem\" #secondaryTextSource>\n <ng-container *ngIf=\"showSecondaryText\">\n <ng-container *ngIf=\"!secondaryItemTemplate\">\n <span\n [style.text-align]=\"secondaryTextAlignment\"\n fd-list-secondary\n [attr.title]=\"optionItem.secondaryText\"\n [innerHTML]=\"optionItem.secondaryText | highlight : inputText\"\n ></span>\n </ng-container>\n\n <ng-container *ngIf=\"secondaryItemTemplate\">\n <ng-container\n [ngTemplateOutlet]=\"secondaryItemTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: optionItem.value }\"\n ></ng-container>\n </ng-container>\n </ng-container>\n</ng-template>\n", styles: [".fdp-combobox__count-list-results{position:absolute;opacity:0;z-index:-1}.fdp-combobox__list .fd-list__item{justify-content:space-between}.fdp-combobox__list .fd-list__item span{overflow:hidden;text-overflow:ellipsis;width:100%}\n"], dependencies: [{ kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { 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: "component", type: i6.InputGroupComponent, selector: "fd-input-group", inputs: ["placement", "required", "inline", "placeholder", "addOnText", "buttonFocusable", "type", "glyph", "button", "disabled", "readonly", "state", "isControl", "showFocus", "isExpanded", "glyphAriaLabel", "iconTitle", "ariaLabelledBy"], outputs: ["addOnButtonClicked", "search"] }, { kind: "directive", type: i6.InputGroupInputDirective, selector: "[fdInputGroupInput], [fd-input-group-input]", inputs: ["class"] }, { kind: "component", type: i7.ListComponent, selector: "[fd-list], [fdList]", inputs: ["dropdownMode", "multiInputMode", "mobileMode", "hasMessage", "noBorder", "navigationIndicator", "selection", "keyboardSupport", "byline", "unreadIndicator"], outputs: ["focusEscapeList"] }, { kind: "component", type: i7.ListItemComponent, selector: "[fdListItem] ,[fd-list-item]", inputs: ["selected", "noData", "action", "interactive", "growing", "counter", "unread", "byline"], outputs: ["keyDown"] }, { kind: "directive", type: i7.ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap"] }, { kind: "directive", type: i7.ListGroupHeaderDirective, selector: "[fdListGroupHeader], [fd-list-group-header]", inputs: ["nativeElementId"], outputs: ["keyDown"] }, { kind: "directive", type: i7.ListSecondaryDirective, selector: "[fd-list-secondary] ,[fdListSecondary]" }, { kind: "directive", type: i7.ListMessageDirective, selector: "[fd-list-message], [fdListMessage]", inputs: ["type", "class"] }, { kind: "component", type: i8.PopoverControlComponent, selector: "fd-popover-control" }, { kind: "component", type: i8.PopoverBodyComponent, selector: "fd-popover-body" }, { kind: "component", type: i8.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig"] }, { kind: "directive", type: i9.AutoCompleteDirective, selector: "[fdp-auto-complete]", inputs: ["options", "inputText", "mobile"], outputs: ["onComplete"] }, { kind: "component", type: i10.FormMessageComponent, selector: "fd-form-message", inputs: ["type", "static", "embedded", "class"] }, { kind: "component", type: i10.FormInputMessageGroupComponent, selector: "fd-form-input-message-group", inputs: ["triggers", "closeOnOutsideClick", "fillControlMode", "noArrow", "closeOnEscapeKey", "placement", "placementContainer", "isOpen"], outputs: ["isOpenChange"] }, { kind: "pipe", type: i3.SearchHighlightPipe, name: "highlight" }, { kind: "pipe", type: i11.FdTranslatePipe, name: "fdTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
184
184
|
}
|
|
185
185
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.0", ngImport: i0, type: ComboboxComponent, decorators: [{
|
|
186
186
|
type: Component,
|
|
@@ -75,7 +75,7 @@ export class ComboboxMobileComponent extends MobileModeBase {
|
|
|
75
75
|
});
|
|
76
76
|
}
|
|
77
77
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.0", ngImport: i0, type: ComboboxMobileComponent, deps: [{ token: i0.ElementRef }, { token: i1.DialogService }, { token: COMBOBOX_COMPONENT }, { token: MOBILE_MODE_CONFIG, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
78
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.0", type: ComboboxMobileComponent, selector: "fdp-combobox-mobile", viewQueries: [{ propertyName: "dialogTemplate", first: true, predicate: ["dialogTemplate"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #dialogTemplate>\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\n <fd-dialog-header>\n <h1 fd-title *ngIf=\"mobileConfig?.title\">{{ mobileConfig.title }}</h1>\n <button\n fd-dialog-close-button\n *ngIf=\"mobileConfig?.hasCloseButton\"\n [mobile]=\"true\"\n (click)=\"handleDismiss()\"\n ></button>\n <ng-template fdkTemplate=\"subheader\">\n <div fd-bar-middle>\n <fd-bar-element [fullWidth]=\"true\">\n <ng-container *ngTemplateOutlet=\"childContent?.controlTemplate || null\"></ng-container>\n </fd-bar-element>\n </div>\n </ng-template>\n </fd-dialog-header>\n\n <fd-dialog-body>\n <ng-container *ngTemplateOutlet=\"childContent?.listTemplate || null\"></ng-container>\n </fd-dialog-body>\n\n <fd-dialog-footer>\n <fd-button-bar\n *ngIf=\"mobileConfig.approveButtonText\"\n fdType=\"emphasized\"\n [label]=\"mobileConfig.approveButtonText!\"\n (click)=\"handleApprove()\"\n >\n </fd-button-bar>\n <fd-button-bar\n *ngIf=\"mobileConfig?.cancelButtonText\"\n [label]=\"mobileConfig.cancelButtonText!\"\n (click)=\"handleDismiss()\"\n >\n </fd-button-bar>\n </fd-dialog-footer>\n </fd-dialog>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i2.BarMiddleDirective, selector: "[fd-bar-middle]" }, { kind: "directive", type: i2.BarElementDirective, selector: "fd-bar-element", inputs: ["
|
|
78
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.0", type: ComboboxMobileComponent, selector: "fdp-combobox-mobile", viewQueries: [{ propertyName: "dialogTemplate", first: true, predicate: ["dialogTemplate"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #dialogTemplate>\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\n <fd-dialog-header>\n <h1 fd-title *ngIf=\"mobileConfig?.title\">{{ mobileConfig.title }}</h1>\n <button\n fd-dialog-close-button\n *ngIf=\"mobileConfig?.hasCloseButton\"\n [mobile]=\"true\"\n (click)=\"handleDismiss()\"\n ></button>\n <ng-template fdkTemplate=\"subheader\">\n <div fd-bar-middle>\n <fd-bar-element [fullWidth]=\"true\">\n <ng-container *ngTemplateOutlet=\"childContent?.controlTemplate || null\"></ng-container>\n </fd-bar-element>\n </div>\n </ng-template>\n </fd-dialog-header>\n\n <fd-dialog-body>\n <ng-container *ngTemplateOutlet=\"childContent?.listTemplate || null\"></ng-container>\n </fd-dialog-body>\n\n <fd-dialog-footer>\n <fd-button-bar\n *ngIf=\"mobileConfig.approveButtonText\"\n fdType=\"emphasized\"\n [label]=\"mobileConfig.approveButtonText!\"\n (click)=\"handleApprove()\"\n >\n </fd-button-bar>\n <fd-button-bar\n *ngIf=\"mobileConfig?.cancelButtonText\"\n [label]=\"mobileConfig.cancelButtonText!\"\n (click)=\"handleDismiss()\"\n >\n </fd-button-bar>\n </fd-dialog-footer>\n </fd-dialog>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i2.BarMiddleDirective, selector: "[fd-bar-middle]" }, { kind: "directive", type: i2.BarElementDirective, selector: "fd-bar-element", inputs: ["fullWidth"] }, { kind: "component", type: i2.ButtonBarComponent, selector: "fd-button-bar", inputs: ["fullWidth", "fdType", "title", "ariaLabel", "ariaLabelledby", "id"] }, { kind: "component", type: i1.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i1.DialogBodyComponent, selector: "fd-dialog-body" }, { kind: "component", type: i1.DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: i1.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "component", type: i1.DialogCloseButtonComponent, selector: "[fd-dialog-close-button]", inputs: ["mobile", "title"] }, { kind: "component", type: i3.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: i4.TemplateDirective, selector: "[fdkTemplate]", inputs: ["fdkTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
79
79
|
}
|
|
80
80
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.0", ngImport: i0, type: ComboboxMobileComponent, decorators: [{
|
|
81
81
|
type: Component,
|
|
@@ -12,7 +12,6 @@ import { PipeModule } from '@fundamental-ngx/cdk/utils';
|
|
|
12
12
|
import { I18nModule } from '@fundamental-ngx/i18n';
|
|
13
13
|
import { ComboboxComponent } from './combobox/combobox.component';
|
|
14
14
|
import { PlatformAutoCompleteModule } from '../auto-complete/auto-complete.module';
|
|
15
|
-
import { PlatformContentDensityDeprecationsModule } from '@fundamental-ngx/platform/shared';
|
|
16
15
|
import * as i0 from "@angular/core";
|
|
17
16
|
export class PlatformComboboxModule {
|
|
18
17
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.0", ngImport: i0, type: PlatformComboboxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
@@ -26,8 +25,7 @@ export class PlatformComboboxModule {
|
|
|
26
25
|
PlatformAutoCompleteModule,
|
|
27
26
|
FormModule,
|
|
28
27
|
I18nModule,
|
|
29
|
-
|
|
30
|
-
ContentDensityModule], exports: [ComboboxComponent, TemplateModule, PlatformContentDensityDeprecationsModule, ContentDensityModule] }); }
|
|
28
|
+
ContentDensityModule], exports: [ComboboxComponent, TemplateModule, ContentDensityModule] }); }
|
|
31
29
|
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.0", ngImport: i0, type: PlatformComboboxModule, providers: [DynamicComponentService], imports: [CommonModule,
|
|
32
30
|
FormsModule,
|
|
33
31
|
InputGroupModule,
|
|
@@ -38,8 +36,7 @@ export class PlatformComboboxModule {
|
|
|
38
36
|
PlatformAutoCompleteModule,
|
|
39
37
|
FormModule,
|
|
40
38
|
I18nModule,
|
|
41
|
-
|
|
42
|
-
ContentDensityModule, TemplateModule, PlatformContentDensityDeprecationsModule, ContentDensityModule] }); }
|
|
39
|
+
ContentDensityModule, TemplateModule, ContentDensityModule] }); }
|
|
43
40
|
}
|
|
44
41
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.0", ngImport: i0, type: PlatformComboboxModule, decorators: [{
|
|
45
42
|
type: NgModule,
|
|
@@ -56,11 +53,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.0", ngImpor
|
|
|
56
53
|
PlatformAutoCompleteModule,
|
|
57
54
|
FormModule,
|
|
58
55
|
I18nModule,
|
|
59
|
-
PlatformContentDensityDeprecationsModule,
|
|
60
56
|
ContentDensityModule
|
|
61
57
|
],
|
|
62
58
|
providers: [DynamicComponentService],
|
|
63
|
-
exports: [ComboboxComponent, TemplateModule,
|
|
59
|
+
exports: [ComboboxComponent, TemplateModule, ContentDensityModule]
|
|
64
60
|
}]
|
|
65
61
|
}] });
|
|
66
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
62
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tYm9ib3gubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9zcmMvbGliL2Zvcm0vY29tYm9ib3gvY29tYm9ib3gubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU3QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDNUQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3JGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDeEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDN0UsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzlELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFbkQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7O0FBb0JuRixNQUFNLE9BQU8sc0JBQXNCOzhHQUF0QixzQkFBc0I7K0dBQXRCLHNCQUFzQixpQkFqQmhCLGlCQUFpQixhQUU1QixZQUFZO1lBQ1osV0FBVztZQUNYLGdCQUFnQjtZQUNoQixVQUFVO1lBQ1YsVUFBVTtZQUNWLFlBQVk7WUFDWixhQUFhO1lBQ2IsMEJBQTBCO1lBQzFCLFVBQVU7WUFDVixVQUFVO1lBQ1Ysb0JBQW9CLGFBR2QsaUJBQWlCLEVBQUUsY0FBYyxFQUFFLG9CQUFvQjsrR0FFeEQsc0JBQXNCLGFBSHBCLENBQUMsdUJBQXVCLENBQUMsWUFaaEMsWUFBWTtZQUNaLFdBQVc7WUFDWCxnQkFBZ0I7WUFDaEIsVUFBVTtZQUNWLFVBQVU7WUFDVixZQUFZO1lBQ1osYUFBYTtZQUNiLDBCQUEwQjtZQUMxQixVQUFVO1lBQ1YsVUFBVTtZQUNWLG9CQUFvQixFQUdLLGNBQWMsRUFBRSxvQkFBb0I7OzJGQUV4RCxzQkFBc0I7a0JBbEJsQyxRQUFRO21CQUFDO29CQUNOLFlBQVksRUFBRSxDQUFDLGlCQUFpQixDQUFDO29CQUNqQyxPQUFPLEVBQUU7d0JBQ0wsWUFBWTt3QkFDWixXQUFXO3dCQUNYLGdCQUFnQjt3QkFDaEIsVUFBVTt3QkFDVixVQUFVO3dCQUNWLFlBQVk7d0JBQ1osYUFBYTt3QkFDYiwwQkFBMEI7d0JBQzFCLFVBQVU7d0JBQ1YsVUFBVTt3QkFDVixvQkFBb0I7cUJBQ3ZCO29CQUNELFNBQVMsRUFBRSxDQUFDLHVCQUF1QixDQUFDO29CQUNwQyxPQUFPLEVBQUUsQ0FBQyxpQkFBaUIsRUFBRSxjQUFjLEVBQUUsb0JBQW9CLENBQUM7aUJBQ3JFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgQnV0dG9uTW9kdWxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2J1dHRvbic7XG5pbXBvcnQgeyBEeW5hbWljQ29tcG9uZW50U2VydmljZSwgVGVtcGxhdGVNb2R1bGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2Nkay91dGlscyc7XG5pbXBvcnQgeyBJbnB1dEdyb3VwTW9kdWxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2lucHV0LWdyb3VwJztcbmltcG9ydCB7IExpc3RNb2R1bGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvbGlzdCc7XG5pbXBvcnQgeyBGb3JtTW9kdWxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2Zvcm0nO1xuaW1wb3J0IHsgQ29udGVudERlbnNpdHlNb2R1bGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvY29udGVudC1kZW5zaXR5JztcbmltcG9ydCB7IFBvcG92ZXJNb2R1bGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvcG9wb3Zlcic7XG5pbXBvcnQgeyBQaXBlTW9kdWxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jZGsvdXRpbHMnO1xuaW1wb3J0IHsgSTE4bk1vZHVsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvaTE4bic7XG5cbmltcG9ydCB7IENvbWJvYm94Q29tcG9uZW50IH0gZnJvbSAnLi9jb21ib2JveC9jb21ib2JveC5jb21wb25lbnQnO1xuaW1wb3J0IHsgUGxhdGZvcm1BdXRvQ29tcGxldGVNb2R1bGUgfSBmcm9tICcuLi9hdXRvLWNvbXBsZXRlL2F1dG8tY29tcGxldGUubW9kdWxlJztcblxuQE5nTW9kdWxlKHtcbiAgICBkZWNsYXJhdGlvbnM6IFtDb21ib2JveENvbXBvbmVudF0sXG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIEZvcm1zTW9kdWxlLFxuICAgICAgICBJbnB1dEdyb3VwTW9kdWxlLFxuICAgICAgICBQaXBlTW9kdWxlLFxuICAgICAgICBMaXN0TW9kdWxlLFxuICAgICAgICBCdXR0b25Nb2R1bGUsXG4gICAgICAgIFBvcG92ZXJNb2R1bGUsXG4gICAgICAgIFBsYXRmb3JtQXV0b0NvbXBsZXRlTW9kdWxlLFxuICAgICAgICBGb3JtTW9kdWxlLFxuICAgICAgICBJMThuTW9kdWxlLFxuICAgICAgICBDb250ZW50RGVuc2l0eU1vZHVsZVxuICAgIF0sXG4gICAgcHJvdmlkZXJzOiBbRHluYW1pY0NvbXBvbmVudFNlcnZpY2VdLFxuICAgIGV4cG9ydHM6IFtDb21ib2JveENvbXBvbmVudCwgVGVtcGxhdGVNb2R1bGUsIENvbnRlbnREZW5zaXR5TW9kdWxlXVxufSlcbmV4cG9ydCBjbGFzcyBQbGF0Zm9ybUNvbWJvYm94TW9kdWxlIHt9XG4iXX0=
|