@fundamental-ngx/platform 0.47.4 → 0.48.0-rc.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +0 -28
- package/esm2022/approval-flow/approval-flow-add-node/approval-flow-add-node.component.mjs +6 -11
- package/esm2022/approval-flow/approval-flow-approver-details/approval-flow-approver-details.component.mjs +6 -8
- package/esm2022/approval-flow/approval-flow-messages/approval-flow-messages.component.mjs +5 -6
- package/esm2022/approval-flow/approval-flow-node/approval-flow-drop-zone.directive.mjs +5 -5
- package/esm2022/approval-flow/approval-flow-node/approval-flow-node.component.mjs +8 -11
- package/esm2022/approval-flow/approval-flow-select-type/approval-flow-select-type.component.mjs +6 -8
- package/esm2022/approval-flow/approval-flow-team-list/approval-flow-team-list.component.mjs +5 -7
- package/esm2022/approval-flow/approval-flow-toolbar-actions/approval-flow-toolbar-actions.component.mjs +5 -6
- package/esm2022/approval-flow/approval-flow-user-details/approval-flow-user-details.component.mjs +6 -6
- package/esm2022/approval-flow/approval-flow-user-list/approval-flow-user-list.component.mjs +6 -7
- package/esm2022/approval-flow/approval-flow.component.mjs +8 -10
- package/esm2022/approval-flow/approval-flow.module.mjs +4 -4
- package/esm2022/approval-flow/services/approval-flow-add-node-view.service.mjs +3 -3
- package/esm2022/button/button.component.mjs +5 -5
- package/esm2022/button/button.module.mjs +4 -4
- package/esm2022/dynamic-page/directives/dynamic-page-header-subtitle.directive.mjs +3 -3
- package/esm2022/dynamic-page/directives/dynamic-page-header-title.directive.mjs +3 -3
- package/esm2022/dynamic-page/dynamic-page-content/dynamic-page-content-host.component.mjs +5 -5
- package/esm2022/dynamic-page/dynamic-page-content/dynamic-page-content.component.mjs +5 -5
- package/esm2022/dynamic-page/dynamic-page-footer/dynamic-page-footer.component.mjs +3 -3
- package/esm2022/dynamic-page/dynamic-page-header/actions/global-actions/dynamic-page-global-actions.component.mjs +3 -3
- package/esm2022/dynamic-page/dynamic-page-header/actions/layout-actions/dynamic-page-layout-actions.component.mjs +3 -3
- package/esm2022/dynamic-page/dynamic-page-header/header/dynamic-page-header.component.mjs +4 -4
- package/esm2022/dynamic-page/dynamic-page-header/key-info/dynamic-page-key-info.component.mjs +3 -3
- package/esm2022/dynamic-page/dynamic-page-header/title/dynamic-page-title-image.component.mjs +3 -3
- package/esm2022/dynamic-page/dynamic-page-header/title/dynamic-page-title.component.mjs +3 -3
- package/esm2022/dynamic-page/dynamic-page.component.mjs +8 -10
- package/esm2022/dynamic-page/dynamic-page.config.mjs +4 -4
- package/esm2022/dynamic-page/dynamic-page.module.mjs +4 -4
- package/esm2022/dynamic-page/dynamic-page.service.mjs +3 -3
- package/esm2022/feed-input/feed-input.component.mjs +6 -7
- package/esm2022/feed-input/feed-input.module.mjs +4 -4
- package/esm2022/form/auto-complete/auto-complete.directive.mjs +5 -5
- package/esm2022/form/auto-complete/auto-complete.module.mjs +4 -4
- package/esm2022/form/checkbox/checkbox.component.mjs +6 -6
- package/esm2022/form/checkbox/checkbox.module.mjs +4 -4
- package/esm2022/form/checkbox-group/checkbox-group.component.mjs +8 -8
- package/esm2022/form/checkbox-group/checkbox-group.module.mjs +4 -4
- package/esm2022/form/combobox/combobox/combobox.component.mjs +9 -11
- package/esm2022/form/combobox/combobox-mobile/combobox/combobox-mobile.component.mjs +13 -15
- package/esm2022/form/combobox/combobox-mobile/combobox-mobile.module.mjs +4 -4
- package/esm2022/form/combobox/combobox.config.mjs +4 -4
- package/esm2022/form/combobox/combobox.module.mjs +4 -4
- package/esm2022/form/combobox/commons/base-combobox.mjs +8 -6
- package/esm2022/form/combobox/directives/combobox-item.directive.mjs +15 -15
- package/esm2022/form/date-picker/date-picker.component.mjs +6 -6
- package/esm2022/form/date-picker/date-picker.module.mjs +4 -4
- package/esm2022/form/datetime-picker/datetime-picker.component.mjs +6 -6
- package/esm2022/form/datetime-picker/datetime-picker.module.mjs +4 -4
- package/esm2022/form/form-generator/base-dynamic-form-generator-control.mjs +3 -3
- package/esm2022/form/form-generator/controls/dynamic-form-generator-checkbox/dynamic-form-generator-checkbox.component.mjs +4 -4
- package/esm2022/form/form-generator/controls/dynamic-form-generator-datepicker/dynamic-form-generator-datepicker.component.mjs +4 -4
- package/esm2022/form/form-generator/controls/dynamic-form-generator-editor/dynamic-form-generator-editor.component.mjs +4 -4
- package/esm2022/form/form-generator/controls/dynamic-form-generator-input/dynamic-form-generator-input.component.mjs +6 -7
- package/esm2022/form/form-generator/controls/dynamic-form-generator-multi-input/dynamic-form-generator-multi-input.component.mjs +4 -4
- package/esm2022/form/form-generator/controls/dynamic-form-generator-object-status/dynamic-form-generator-object-status.component.mjs +3 -3
- package/esm2022/form/form-generator/controls/dynamic-form-generator-radio/dynamic-form-generator-radio.component.mjs +4 -4
- package/esm2022/form/form-generator/controls/dynamic-form-generator-select/dynamic-form-generator-select.component.mjs +4 -4
- package/esm2022/form/form-generator/controls/dynamic-form-generator-switch/dynamic-form-generator-switch.component.mjs +4 -4
- package/esm2022/form/form-generator/dynamic-form-control-field.directive.mjs +5 -5
- package/esm2022/form/form-generator/dynamic-form-control.directive.mjs +6 -6
- package/esm2022/form/form-generator/fdp-form-generator.module.mjs +4 -4
- package/esm2022/form/form-generator/form-generator/form-generator.component.mjs +9 -11
- package/esm2022/form/form-generator/form-generator-components-accessor.service.mjs +3 -3
- package/esm2022/form/form-generator/form-generator-field/form-generator-field.component.mjs +7 -8
- package/esm2022/form/form-generator/form-generator.service.mjs +5 -5
- package/esm2022/form/form-generator/pipes/get-hint-options.pipe.mjs +5 -5
- package/esm2022/form/form-generator/pipes/get-ordered-form-controls.pipe.mjs +3 -3
- package/esm2022/form/form-group/fdp-form.module.mjs +4 -4
- package/esm2022/form/form-group/form-field/form-field.component.mjs +10 -10
- package/esm2022/form/form-group/form-field-error/form-field-error-description.directive.mjs +6 -6
- package/esm2022/form/form-group/form-field-error/form-field-error-heading.directive.mjs +6 -6
- package/esm2022/form/form-group/form-field-error/form-field-error.directive.mjs +5 -5
- package/esm2022/form/form-group/form-field-extras/form-field-extras.component.mjs +3 -3
- package/esm2022/form/form-group/form-field-group/form-field-group.component.mjs +6 -6
- package/esm2022/form/form-group/form-group-header/form-group-header.component.mjs +6 -6
- package/esm2022/form/form-group/form-group.component.mjs +8 -10
- package/esm2022/form/form-group/pipes/field-group-row-value.pipe.mjs +3 -3
- package/esm2022/form/form-group/services/form-field-layout.service.mjs +5 -5
- package/esm2022/form/index.mjs +1 -3
- package/esm2022/form/input/fdp-input.module.mjs +4 -4
- package/esm2022/form/input/input.component.mjs +6 -6
- package/esm2022/form/input-group/addon-body.component.mjs +5 -5
- package/esm2022/form/input-group/addon.component.mjs +5 -5
- package/esm2022/form/input-group/input-group.component.mjs +12 -12
- package/esm2022/form/input-group/input-group.config.mjs +4 -4
- package/esm2022/form/input-group/input-group.module.mjs +4 -4
- package/esm2022/form/input-group/input.component.mjs +3 -3
- package/esm2022/form/input-message-group-with-template/input-message-group-with-template.component.mjs +7 -7
- package/esm2022/form/multi-combobox/commons/base-multi-combobox.mjs +6 -6
- package/esm2022/form/multi-combobox/multi-combobox/multi-combobox.component.mjs +10 -12
- package/esm2022/form/multi-combobox/multi-combobox-mobile/multi-combobox/multi-combobox-mobile.component.mjs +8 -9
- package/esm2022/form/multi-combobox/multi-combobox-mobile/multi-combobox-mobile.module.mjs +4 -4
- package/esm2022/form/multi-combobox/multi-combobox.config.mjs +4 -4
- package/esm2022/form/multi-combobox/multi-combobox.module.mjs +4 -4
- package/esm2022/form/multi-input/base-multi-input.mjs +6 -6
- package/esm2022/form/multi-input/multi-input-mobile/multi-input-mobile.component.mjs +12 -12
- package/esm2022/form/multi-input/multi-input-mobile/multi-input-mobile.module.mjs +4 -4
- package/esm2022/form/multi-input/multi-input.component.mjs +9 -11
- package/esm2022/form/multi-input/multi-input.config.mjs +4 -4
- package/esm2022/form/multi-input/multi-input.module.mjs +4 -4
- package/esm2022/form/radio-group/radio/radio.component.mjs +8 -8
- package/esm2022/form/radio-group/radio-group.component.mjs +8 -8
- package/esm2022/form/radio-group/radio-group.module.mjs +4 -4
- package/esm2022/form/select/commons/base-select.mjs +6 -6
- package/esm2022/form/select/select/select.component.mjs +8 -8
- package/esm2022/form/select/select.config.mjs +4 -4
- package/esm2022/form/select/select.module.mjs +4 -4
- package/esm2022/form/step-input/base.step-input.mjs +5 -5
- package/esm2022/form/step-input/number/number-step-input.component.mjs +9 -10
- package/esm2022/form/step-input/step-input-action-button.mjs +3 -3
- package/esm2022/form/step-input/step-input-control.directive.mjs +6 -6
- package/esm2022/form/step-input/step-input-decrement.directive.mjs +5 -5
- package/esm2022/form/step-input/step-input-increment.directive.mjs +5 -5
- package/esm2022/form/step-input/step-input.config.mjs +3 -3
- package/esm2022/form/step-input/step-input.module.mjs +4 -4
- package/esm2022/form/switch/switch/switch.component.mjs +6 -6
- package/esm2022/form/switch/switch/switch.config.mjs +3 -3
- package/esm2022/form/switch/switch.module.mjs +4 -4
- package/esm2022/form/text-area/text-area.component.mjs +8 -9
- package/esm2022/form/text-area/text-area.config.mjs +3 -3
- package/esm2022/form/text-area/text-area.module.mjs +4 -4
- package/esm2022/form/time-picker/time-picker.component.mjs +6 -6
- package/esm2022/form/time-picker/time-picker.module.mjs +4 -4
- package/esm2022/fundamental-ngx.module.mjs +14 -33
- package/esm2022/icon-tab-bar/components/closable-icon-tab-bar.class.mjs +3 -3
- package/esm2022/icon-tab-bar/components/icon-tab-bar-base.class.mjs +5 -9
- package/esm2022/icon-tab-bar/components/icon-tab-bar-filter-type/icon-tab-bar-filter-type.component.mjs +6 -8
- package/esm2022/icon-tab-bar/components/icon-tab-bar-icon-type/icon-tab-bar-icon-type.component.mjs +6 -8
- package/esm2022/icon-tab-bar/components/icon-tab-bar-process-type/icon-tab-bar-process-type.component.mjs +5 -8
- package/esm2022/icon-tab-bar/components/icon-tab-bar-text-type/icon-tab-bar-text-type.component.mjs +7 -9
- package/esm2022/icon-tab-bar/components/popovers/icon-tab-bar-popover/icon-tab-bar-popover.component.mjs +6 -15
- package/esm2022/icon-tab-bar/components/popovers/icon-tab-bar-popover-base.class.mjs +5 -9
- package/esm2022/icon-tab-bar/components/popovers/text-type-popover/text-type-popover.component.mjs +6 -8
- package/esm2022/icon-tab-bar/directives/dnd/icon-bar-dnd-container.directive.mjs +5 -5
- package/esm2022/icon-tab-bar/directives/dnd/icon-bar-dnd-item.directive.mjs +5 -5
- package/esm2022/icon-tab-bar/directives/dnd/icon-bar-dnd-list.directive.mjs +5 -5
- package/esm2022/icon-tab-bar/icon-tab-bar.component.mjs +8 -9
- package/esm2022/icon-tab-bar/icon-tab-bar.module.mjs +4 -4
- package/esm2022/index.mjs +8 -12
- package/esm2022/info-label/info-label.component.mjs +5 -5
- package/esm2022/info-label/info-label.module.mjs +4 -4
- package/esm2022/link/link.component.mjs +5 -5
- package/esm2022/link/link.module.mjs +4 -4
- package/esm2022/list/action-list-item/action-list-item.component.mjs +3 -3
- package/esm2022/list/action-list-item/action-list-item.module.mjs +4 -4
- package/esm2022/list/base-list-item.mjs +11 -11
- package/esm2022/list/display-list-item/display-list-item.component.mjs +6 -7
- package/esm2022/list/display-list-item/display-list-item.module.mjs +4 -4
- package/esm2022/list/free-content-list-item/free-content-list-item.component.mjs +4 -4
- package/esm2022/list/list-group-footer.component.mjs +3 -3
- package/esm2022/list/list-group-header.component.mjs +3 -3
- package/esm2022/list/list.component.mjs +9 -11
- package/esm2022/list/list.config.mjs +3 -3
- package/esm2022/list/list.module.mjs +4 -4
- package/esm2022/list/load-more-content.directive.mjs +4 -4
- package/esm2022/list/object-list-item/object-list-item-row.component.mjs +4 -4
- package/esm2022/list/object-list-item/object-list-item.component.mjs +6 -7
- package/esm2022/list/object-list-item/object-list-item.module.mjs +4 -4
- package/esm2022/list/standard-list-item/standard-list-item.component.mjs +6 -7
- package/esm2022/list/standard-list-item/standard-list-item.module.mjs +4 -4
- package/esm2022/menu/menu-item.component.mjs +7 -7
- package/esm2022/menu/menu-trigger.directive.mjs +6 -6
- package/esm2022/menu/menu.component.mjs +6 -6
- package/esm2022/menu/menu.module.mjs +4 -4
- package/esm2022/menu-button/menu-button.component.mjs +5 -5
- package/esm2022/menu-button/menu-button.module.mjs +4 -4
- package/esm2022/message-popover/components/message-popover-form-wrapper/message-popover-form-wrapper.component.mjs +6 -6
- package/esm2022/message-popover/components/message-view/message-view.component.mjs +8 -10
- package/esm2022/message-popover/directives/message-popover-form-item.directive.mjs +6 -6
- package/esm2022/message-popover/message-popover.component.mjs +7 -9
- package/esm2022/message-popover/platform-message-popover.module.mjs +4 -4
- package/esm2022/object-marker/object-marker.component.mjs +6 -7
- package/esm2022/object-marker/object-marker.module.mjs +4 -4
- package/esm2022/object-status/object-status.component.mjs +8 -8
- package/esm2022/object-status/object-status.module.mjs +4 -4
- package/esm2022/page-footer/page-footer.component.mjs +6 -6
- package/esm2022/page-footer/page-footer.module.mjs +4 -4
- package/esm2022/panel/panel-actions.component.mjs +3 -3
- package/esm2022/panel/panel-content/panel-content.component.mjs +4 -4
- package/esm2022/panel/panel.component.mjs +5 -5
- package/esm2022/panel/panel.config.mjs +4 -4
- package/esm2022/panel/panel.module.mjs +4 -4
- package/esm2022/search-field/search-field-mobile/search-field/search-field-mobile.component.mjs +8 -9
- package/esm2022/search-field/search-field-mobile/search-field-mobile.module.mjs +4 -4
- package/esm2022/search-field/search-field.component.mjs +16 -18
- package/esm2022/search-field/search-field.module.mjs +4 -4
- package/esm2022/settings-generator/controls/theme-selector-list/theme-selector-list.component.mjs +9 -16
- package/esm2022/settings-generator/layouts/base-settings-generator-layout.mjs +3 -3
- package/esm2022/settings-generator/layouts/settings-generator-sidebar-layout/settings-generator-sidebar-icon/settings-generator-sidebar-icon.component.mjs +5 -6
- package/esm2022/settings-generator/layouts/settings-generator-sidebar-layout/settings-generator-sidebar-layout.component.mjs +6 -9
- package/esm2022/settings-generator/settings-generator-content/settings-generator-content.component.mjs +6 -8
- package/esm2022/settings-generator/settings-generator-content/settings-generator-section/settings-generator-section.component.mjs +7 -7
- package/esm2022/settings-generator/settings-generator-layout-accessor.service.mjs +3 -3
- package/esm2022/settings-generator/settings-generator.component.mjs +9 -9
- package/esm2022/settings-generator/settings-generator.module.mjs +4 -4
- package/esm2022/settings-generator/settings-generator.service.mjs +4 -4
- package/esm2022/shared/base.mjs +5 -5
- package/esm2022/shared/form/base.input.mjs +6 -6
- package/esm2022/shared/form/collection-base.input.mjs +6 -6
- package/esm2022/shared/form/inline-layout-collection-base.input.mjs +13 -13
- package/esm2022/shared/pipes/convert-bytes/convert-bytes.pipe.mjs +3 -3
- package/esm2022/shared/pipes/pipe.module.mjs +4 -4
- package/esm2022/shared/platform.config.mjs +3 -3
- package/esm2022/slider/slider.component.mjs +6 -6
- package/esm2022/slider/slider.module.mjs +4 -4
- package/esm2022/smart-filter-bar/components/smart-filter-bar-condition-field/base-smart-filter-bar-condition-field.mjs +4 -4
- package/esm2022/smart-filter-bar/components/smart-filter-bar-condition-field/smart-filter-bar-condition-field.component.mjs +4 -4
- package/esm2022/smart-filter-bar/components/smart-filter-bar-conditions-dialog/smart-filter-bar-conditions-dialog.component.mjs +6 -9
- package/esm2022/smart-filter-bar/components/smart-filter-bar-settings-dialog/smart-filter-bar-settings-dialog.component.mjs +7 -9
- package/esm2022/smart-filter-bar/directives/smart-filter-bar-field-definition.directive.mjs +3 -3
- package/esm2022/smart-filter-bar/directives/smart-filter-bar-subject.directive.mjs +5 -5
- package/esm2022/smart-filter-bar/directives/smart-filter-bar-toolbar-item.directive.mjs +4 -4
- package/esm2022/smart-filter-bar/smart-filter-bar.class.mjs +3 -3
- package/esm2022/smart-filter-bar/smart-filter-bar.component.mjs +8 -10
- package/esm2022/smart-filter-bar/smart-filter-bar.module.mjs +4 -4
- package/esm2022/smart-filter-bar/smart-filter-bar.service.mjs +4 -4
- package/esm2022/split-menu-button/split-menu-button.component.mjs +6 -6
- package/esm2022/split-menu-button/split-menu-button.module.mjs +4 -4
- package/esm2022/table/components/no-data-wrapper/no-data-wrapper.component.mjs +3 -3
- package/esm2022/table/components/reset-button/reset-button.component.mjs +5 -5
- package/esm2022/table/components/table-cell-header-popover/table-cell-header-popover.component.mjs +6 -8
- package/esm2022/table/components/table-column/table-column.component.mjs +6 -6
- package/esm2022/table/components/table-column-resizer/table-column-resizer.component.mjs +6 -6
- package/esm2022/table/components/table-editable-cell/table-editable-cell.component.mjs +5 -15
- package/esm2022/table/components/table-group-row/table-group-row.component.mjs +7 -7
- package/esm2022/table/components/table-header-cell-content/table-header-cell-content.component.mjs +6 -6
- package/esm2022/table/components/table-header-row/table-header-row.component.mjs +11 -13
- package/esm2022/table/components/table-p13-dialog/columns/columns.component.mjs +7 -9
- package/esm2022/table/components/table-p13-dialog/filtering/filter-rule.component.mjs +9 -11
- package/esm2022/table/components/table-p13-dialog/filtering/filtering.component.mjs +6 -9
- package/esm2022/table/components/table-p13-dialog/grouping/grouping.component.mjs +6 -8
- package/esm2022/table/components/table-p13-dialog/sorting/sorting.component.mjs +9 -11
- package/esm2022/table/components/table-p13-dialog/table-p13-columns.component.mjs +3 -3
- package/esm2022/table/components/table-p13-dialog/table-p13-dialog.component.mjs +5 -5
- package/esm2022/table/components/table-p13-dialog/table-p13-filter.component.mjs +3 -3
- package/esm2022/table/components/table-p13-dialog/table-p13-group.component.mjs +3 -3
- package/esm2022/table/components/table-p13-dialog/table-p13-sort.component.mjs +3 -3
- package/esm2022/table/components/table-popping-row/table-popping-row.component.mjs +7 -9
- package/esm2022/table/components/table-row/table-row.component.mjs +8 -12
- package/esm2022/table/components/table-toolbar/table-toolbar-actions.component.mjs +3 -3
- package/esm2022/table/components/table-toolbar/table-toolbar-left-actions.component.mjs +3 -3
- package/esm2022/table/components/table-toolbar/table-toolbar.component.mjs +7 -8
- package/esm2022/table/components/table-view-settings-dialog/filtering/filter-custom.component.mjs +6 -6
- package/esm2022/table/components/table-view-settings-dialog/filtering/filter-multi-select.component.mjs +5 -6
- package/esm2022/table/components/table-view-settings-dialog/filtering/filter-single-select.component.mjs +5 -14
- package/esm2022/table/components/table-view-settings-dialog/filtering/filter-step.component.mjs +5 -8
- package/esm2022/table/components/table-view-settings-dialog/filtering/filters-list-step.component.mjs +5 -7
- package/esm2022/table/components/table-view-settings-dialog/filtering/filters.component.mjs +7 -10
- package/esm2022/table/components/table-view-settings-dialog/grouping/grouping.component.mjs +6 -8
- package/esm2022/table/components/table-view-settings-dialog/sorting/sorting.component.mjs +6 -9
- package/esm2022/table/components/table-view-settings-dialog/table-view-settings-dialog.component.mjs +5 -5
- package/esm2022/table/components/table-view-settings-dialog/table-view-settings-filter.component.mjs +3 -3
- package/esm2022/table/table.component.mjs +9 -14
- package/esm2022/table/table.module.mjs +4 -4
- package/esm2022/table-helpers/directives/platform-table-column-responsive.directive.mjs +6 -6
- package/esm2022/table-helpers/directives/table-cell-header-popover.directive.mjs +4 -4
- package/esm2022/table-helpers/directives/table-cell-resizable.directive.mjs +5 -5
- package/esm2022/table-helpers/directives/table-cell-selectable.directive.mjs +3 -3
- package/esm2022/table-helpers/directives/table-cell.directive.mjs +16 -16
- package/esm2022/table-helpers/directives/table-data-source.directive.mjs +3 -3
- package/esm2022/table-helpers/directives/table-draggable.directive.mjs +3 -3
- package/esm2022/table-helpers/directives/table-header-resizer.directive.mjs +3 -3
- package/esm2022/table-helpers/directives/table-header.directive.mjs +7 -7
- package/esm2022/table-helpers/directives/table-initial-state.directive.mjs +3 -3
- package/esm2022/table-helpers/directives/table-scrollable.directive.mjs +4 -4
- package/esm2022/table-helpers/directives/table-view-settings-filter-custom.directive.mjs +4 -4
- package/esm2022/table-helpers/directives/table-virtual-scroll.directive.mjs +3 -3
- package/esm2022/table-helpers/enums/collection-filter.enum.mjs +16 -1
- package/esm2022/table-helpers/pipes/cell-styles.pipe.mjs +3 -3
- package/esm2022/table-helpers/pipes/column-resizable-side.pipe.mjs +3 -3
- package/esm2022/table-helpers/pipes/column-sorting-direction.pipe.mjs +3 -3
- package/esm2022/table-helpers/pipes/row-classes.pipe.mjs +3 -3
- package/esm2022/table-helpers/pipes/selection-cell-styles.pipe.mjs +3 -3
- package/esm2022/table-helpers/services/table-column-resize.service.mjs +5 -5
- package/esm2022/table-helpers/services/table-responsive.service.mjs +5 -5
- package/esm2022/table-helpers/services/table-row.service.mjs +3 -3
- package/esm2022/table-helpers/services/table-scroll-dispatcher.service.mjs +3 -3
- package/esm2022/table-helpers/services/table.service.mjs +3 -3
- package/esm2022/table-helpers/table-helpers.module.mjs +4 -4
- package/esm2022/value-help-dialog/components/base-tab/vhd-base-tab.component.mjs +5 -5
- package/esm2022/value-help-dialog/components/define-tab/define-tab.component.mjs +6 -10
- package/esm2022/value-help-dialog/components/select-tab/select-tab.component.mjs +13 -15
- package/esm2022/value-help-dialog/components/value-help-dialog-filter/value-help-dialog-filter.component.mjs +3 -3
- package/esm2022/value-help-dialog/directives/condition-count-message.directive.mjs +5 -5
- package/esm2022/value-help-dialog/value-help-dialog/value-help-dialog.component.mjs +12 -17
- package/esm2022/value-help-dialog/value-help-dialog.module.mjs +4 -4
- package/esm2022/variant-management/components/manage-variant-item/manage-variant-item.component.mjs +5 -5
- package/esm2022/variant-management/components/manage-variants-dialog/manage-variants-dialog.component.mjs +6 -8
- package/esm2022/variant-management/components/variant-management-wrapper/variant-management-wrapper.component.mjs +3 -3
- package/esm2022/variant-management/directives/variant-management-dirty-label.directive.mjs +4 -4
- package/esm2022/variant-management/variant-management.component.mjs +8 -10
- package/esm2022/variant-management/variant-management.module.mjs +4 -4
- package/esm2022/wizard-generator/base-wizard-generator.mjs +5 -5
- package/esm2022/wizard-generator/components/dialog-wizard-generator/dialog-wizard-generator.component.mjs +7 -8
- package/esm2022/wizard-generator/components/wizard-body/wizard-body.component.mjs +7 -9
- package/esm2022/wizard-generator/components/wizard-generator/wizard-generator.component.mjs +6 -7
- package/esm2022/wizard-generator/components/wizard-generator-step/wizard-generator-step.component.mjs +6 -7
- package/esm2022/wizard-generator/components/wizard-summary-step/wizard-summary-section/wizard-summary-section.component.mjs +5 -6
- package/esm2022/wizard-generator/components/wizard-summary-step/wizard-summary-step.component.mjs +7 -7
- package/esm2022/wizard-generator/directives/wizard-generator-finish-button.directive.mjs +3 -3
- package/esm2022/wizard-generator/directives/wizard-generator-go-next-button.directive.mjs +3 -3
- package/esm2022/wizard-generator/directives/wizard-generator-review-button.directive.mjs +3 -3
- package/esm2022/wizard-generator/directives/wizard-generator-summary-step.directive.mjs +3 -3
- package/esm2022/wizard-generator/wizard-dialog-generator.service.mjs +4 -4
- package/esm2022/wizard-generator/wizard-generator.module.mjs +4 -4
- package/esm2022/wizard-generator/wizard-generator.service.mjs +4 -4
- package/fesm2022/fundamental-ngx-platform-approval-flow.mjs +62 -74
- package/fesm2022/fundamental-ngx-platform-approval-flow.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-button.mjs +8 -8
- package/fesm2022/fundamental-ngx-platform-button.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-dynamic-page.mjs +54 -56
- package/fesm2022/fundamental-ngx-platform-dynamic-page.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-feed-input.mjs +9 -10
- package/fesm2022/fundamental-ngx-platform-feed-input.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-form.mjs +444 -602
- package/fesm2022/fundamental-ngx-platform-form.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-icon-tab-bar.mjs +59 -87
- package/fesm2022/fundamental-ngx-platform-icon-tab-bar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-info-label.mjs +8 -8
- package/fesm2022/fundamental-ngx-platform-info-label.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-link.mjs +8 -8
- package/fesm2022/fundamental-ngx-platform-link.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-list.mjs +73 -78
- package/fesm2022/fundamental-ngx-platform-list.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-menu-button.mjs +8 -8
- package/fesm2022/fundamental-ngx-platform-menu-button.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-menu.mjs +20 -20
- package/fesm2022/fundamental-ngx-platform-menu.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-message-popover.mjs +29 -33
- package/fesm2022/fundamental-ngx-platform-message-popover.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-object-marker.mjs +9 -10
- package/fesm2022/fundamental-ngx-platform-object-marker.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-object-status.mjs +12 -12
- package/fesm2022/fundamental-ngx-platform-object-status.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-page-footer.mjs +9 -9
- package/fesm2022/fundamental-ngx-platform-page-footer.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-panel.mjs +19 -19
- package/fesm2022/fundamental-ngx-platform-panel.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-search-field.mjs +29 -32
- package/fesm2022/fundamental-ngx-platform-search-field.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-settings-generator.mjs +45 -56
- package/fesm2022/fundamental-ngx-platform-settings-generator.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-shared.mjs +36 -36
- package/fesm2022/fundamental-ngx-platform-shared.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-slider.mjs +9 -9
- package/fesm2022/fundamental-ngx-platform-slider.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-smart-filter-bar.mjs +48 -53
- package/fesm2022/fundamental-ngx-platform-smart-filter-bar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-split-menu-button.mjs +9 -9
- package/fesm2022/fundamental-ngx-platform-split-menu-button.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-table-helpers.mjs +115 -100
- package/fesm2022/fundamental-ngx-platform-table-helpers.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-table.mjs +168 -218
- package/fesm2022/fundamental-ngx-platform-table.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-value-help-dialog.mjs +41 -52
- package/fesm2022/fundamental-ngx-platform-value-help-dialog.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-variant-management.mjs +28 -31
- package/fesm2022/fundamental-ngx-platform-variant-management.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-wizard-generator.mjs +58 -61
- package/fesm2022/fundamental-ngx-platform-wizard-generator.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform.mjs +19 -42
- package/fesm2022/fundamental-ngx-platform.mjs.map +1 -1
- package/form/combobox/combobox-mobile/combobox/combobox-mobile.component.d.ts +2 -2
- package/form/form-group/form-group.component.d.ts +1 -1
- package/form/index.d.ts +0 -2
- package/form/input-group/input-group.component.d.ts +2 -2
- package/form/multi-combobox/multi-combobox/multi-combobox.component.d.ts +1 -1
- package/form/multi-input/multi-input-mobile/multi-input-mobile.component.d.ts +2 -2
- package/fundamental-ngx-platform-v0.48.0-rc.1.tgz +0 -0
- package/fundamental-ngx.module.d.ts +27 -31
- package/icon-tab-bar/components/icon-tab-bar-base.class.d.ts +0 -2
- package/icon-tab-bar/components/popovers/icon-tab-bar-popover-base.class.d.ts +0 -2
- package/index.d.ts +7 -11
- package/list/list.component.d.ts +1 -1
- package/package.json +4 -28
- package/page-footer/page-footer.component.d.ts +1 -1
- package/schematics/ng-add/index.js +1 -1
- package/settings-generator/settings-generator-content/settings-generator-section/settings-generator-section.component.d.ts +1 -1
- package/settings-generator/settings-generator.component.d.ts +2 -2
- package/table/components/table-p13-dialog/filtering/filter-rule.component.d.ts +2 -0
- package/table/table.component.d.ts +1 -1
- package/table-helpers/enums/collection-filter.enum.d.ts +2 -0
- package/value-help-dialog/components/select-tab/select-tab.component.d.ts +1 -1
- package/value-help-dialog/value-help-dialog/value-help-dialog.component.d.ts +1 -1
- package/wizard-generator/components/wizard-generator-step/wizard-generator-step.component.d.ts +2 -2
- package/wizard-generator/components/wizard-summary-step/wizard-summary-step.component.d.ts +2 -2
- package/action-bar/README.md +0 -25
- package/action-bar/action-bar.component.d.ts +0 -36
- package/action-bar/action-bar.module.d.ts +0 -8
- package/action-bar/index.d.ts +0 -2
- package/action-button-group/README.md +0 -25
- package/action-button-group/action-button-group.component.d.ts +0 -11
- package/action-button-group/action-button-group.module.d.ts +0 -7
- package/action-button-group/index.d.ts +0 -2
- package/esm2022/action-bar/action-bar.component.mjs +0 -64
- package/esm2022/action-bar/action-bar.module.mjs +0 -17
- package/esm2022/action-bar/fundamental-ngx-platform-action-bar.mjs +0 -5
- package/esm2022/action-bar/index.mjs +0 -3
- package/esm2022/action-button-group/action-button-group.component.mjs +0 -21
- package/esm2022/action-button-group/action-button-group.module.mjs +0 -16
- package/esm2022/action-button-group/fundamental-ngx-platform-action-button-group.mjs +0 -5
- package/esm2022/action-button-group/index.mjs +0 -3
- package/esm2022/form/platform-file-uploader/platform-file-uploader.component.mjs +0 -143
- package/esm2022/form/platform-file-uploader/platform-file-uploader.module.mjs +0 -16
- package/esm2022/thumbnail/fundamental-ngx-platform-thumbnail.mjs +0 -5
- package/esm2022/thumbnail/index.mjs +0 -6
- package/esm2022/thumbnail/thumbnail-details/thumbnail-details.component.mjs +0 -166
- package/esm2022/thumbnail/thumbnail-image/thumbnail-image.component.mjs +0 -100
- package/esm2022/thumbnail/thumbnail.component.mjs +0 -148
- package/esm2022/thumbnail/thumbnail.interfaces.mjs +0 -2
- package/esm2022/thumbnail/thumbnail.module.mjs +0 -19
- package/esm2022/upload-collection/dialogs/move-to/move-to.component.mjs +0 -148
- package/esm2022/upload-collection/dialogs/new-folder/new-folder.component.mjs +0 -69
- package/esm2022/upload-collection/directives/upload-collection-dragndrop.directive.mjs +0 -138
- package/esm2022/upload-collection/domain/upload-collection-data-provider.mjs +0 -106
- package/esm2022/upload-collection/domain/upload-collection-data-source.mjs +0 -95
- package/esm2022/upload-collection/fundamental-ngx-platform-upload-collection.mjs +0 -5
- package/esm2022/upload-collection/helpers/generate-message-stripe-data.mjs +0 -20
- package/esm2022/upload-collection/index.mjs +0 -12
- package/esm2022/upload-collection/models/upload-collection.models.mjs +0 -58
- package/esm2022/upload-collection/services/files-validator.service.mjs +0 -68
- package/esm2022/upload-collection/upload-collection/upload-collection-data-provider-test.mjs +0 -280
- package/esm2022/upload-collection/upload-collection/upload-collection.component.mjs +0 -926
- package/esm2022/upload-collection/upload-collection.module.mjs +0 -33
- package/fesm2022/fundamental-ngx-platform-action-bar.mjs +0 -85
- package/fesm2022/fundamental-ngx-platform-action-bar.mjs.map +0 -1
- package/fesm2022/fundamental-ngx-platform-action-button-group.mjs +0 -41
- package/fesm2022/fundamental-ngx-platform-action-button-group.mjs.map +0 -1
- package/fesm2022/fundamental-ngx-platform-thumbnail.mjs +0 -418
- package/fesm2022/fundamental-ngx-platform-thumbnail.mjs.map +0 -1
- package/fesm2022/fundamental-ngx-platform-upload-collection.mjs +0 -1893
- package/fesm2022/fundamental-ngx-platform-upload-collection.mjs.map +0 -1
- package/form/platform-file-uploader/platform-file-uploader.component.d.ts +0 -69
- package/form/platform-file-uploader/platform-file-uploader.module.d.ts +0 -7
- package/fundamental-ngx-platform-v0.47.4.tgz +0 -0
- package/thumbnail/README.md +0 -25
- package/thumbnail/index.d.ts +0 -5
- package/thumbnail/thumbnail-details/thumbnail-details.component.d.ts +0 -57
- package/thumbnail/thumbnail-image/thumbnail-image.component.d.ts +0 -48
- package/thumbnail/thumbnail.component.d.ts +0 -73
- package/thumbnail/thumbnail.interfaces.d.ts +0 -12
- package/thumbnail/thumbnail.module.d.ts +0 -9
- package/upload-collection/README.md +0 -25
- package/upload-collection/dialogs/move-to/move-to.component.d.ts +0 -57
- package/upload-collection/dialogs/new-folder/new-folder.component.d.ts +0 -26
- package/upload-collection/directives/upload-collection-dragndrop.directive.d.ts +0 -64
- package/upload-collection/domain/upload-collection-data-provider.d.ts +0 -46
- package/upload-collection/domain/upload-collection-data-source.d.ts +0 -49
- package/upload-collection/helpers/generate-message-stripe-data.d.ts +0 -3
- package/upload-collection/index.d.ts +0 -11
- package/upload-collection/models/upload-collection.models.d.ts +0 -225
- package/upload-collection/services/files-validator.service.d.ts +0 -18
- package/upload-collection/upload-collection/upload-collection-data-provider-test.d.ts +0 -36
- package/upload-collection/upload-collection/upload-collection.component.d.ts +0 -259
- package/upload-collection/upload-collection.module.d.ts +0 -11
|
@@ -1,148 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectorRef, Component } from '@angular/core';
|
|
2
|
-
import { take } from 'rxjs/operators';
|
|
3
|
-
import { DialogRef, DialogService } from '@fundamental-ngx/core/dialog';
|
|
4
|
-
import { isObject } from '@fundamental-ngx/platform/shared';
|
|
5
|
-
import { CdkScrollable } from '@angular/cdk/overlay';
|
|
6
|
-
import { NgFor, NgIf } from '@angular/common';
|
|
7
|
-
import { TemplateDirective } from '@fundamental-ngx/cdk/utils';
|
|
8
|
-
import { BarElementDirective, BarLeftDirective, BarRightDirective, ButtonBarComponent } from '@fundamental-ngx/core/bar';
|
|
9
|
-
import { ButtonComponent } from '@fundamental-ngx/core/button';
|
|
10
|
-
import { DialogBodyComponent, DialogComponent, DialogFooterComponent, DialogHeaderComponent } from '@fundamental-ngx/core/dialog';
|
|
11
|
-
import { IconComponent } from '@fundamental-ngx/core/icon';
|
|
12
|
-
import { ListComponent, ListIconDirective, ListItemComponent, ListLinkDirective, ListTitleDirective } from '@fundamental-ngx/core/list';
|
|
13
|
-
import { ScrollbarDirective } from '@fundamental-ngx/core/scrollbar';
|
|
14
|
-
import { TitleComponent } from '@fundamental-ngx/core/title';
|
|
15
|
-
import { FdTranslatePipe } from '@fundamental-ngx/i18n';
|
|
16
|
-
import { NewFolderComponent } from '../new-folder/new-folder.component';
|
|
17
|
-
import * as i0 from "@angular/core";
|
|
18
|
-
import * as i1 from "@fundamental-ngx/core/dialog";
|
|
19
|
-
export class MoveToComponent {
|
|
20
|
-
/** @hidden */
|
|
21
|
-
constructor(dialogRef, _dialogService, _cd) {
|
|
22
|
-
this.dialogRef = dialogRef;
|
|
23
|
-
this._dialogService = _dialogService;
|
|
24
|
-
this._cd = _cd;
|
|
25
|
-
/**
|
|
26
|
-
* List of upload collection items
|
|
27
|
-
*/
|
|
28
|
-
this.items = this.dialogRef.data.items;
|
|
29
|
-
/**
|
|
30
|
-
* The current folder in what need to create a new one
|
|
31
|
-
*/
|
|
32
|
-
this.originalFolder = this.dialogRef.data.currentFolder;
|
|
33
|
-
/** @hidden */
|
|
34
|
-
this.movableFolders = this.dialogRef.data.movableFolders;
|
|
35
|
-
/** @hidden */
|
|
36
|
-
this._maxFilenameLength = this.dialogRef.data.maxFilenameLength;
|
|
37
|
-
/** @hidden */
|
|
38
|
-
this._currentFolder = this.originalFolder && { ...this.originalFolder };
|
|
39
|
-
/** @hidden */
|
|
40
|
-
this._foldersList = [];
|
|
41
|
-
}
|
|
42
|
-
/** @hidden */
|
|
43
|
-
ngOnInit() {
|
|
44
|
-
this._init(this._currentFolder ? this._currentFolder.files : this.items);
|
|
45
|
-
}
|
|
46
|
-
/** @hidden */
|
|
47
|
-
_goToParentFolder() {
|
|
48
|
-
this.selectedFolder = null;
|
|
49
|
-
this._currentFolder = this._getParentFolderByCurrentFolderId(this._currentFolder?.documentId);
|
|
50
|
-
this._init(this._currentFolder ? this._currentFolder.files : this.items);
|
|
51
|
-
this._cd.detectChanges();
|
|
52
|
-
}
|
|
53
|
-
/** @hidden */
|
|
54
|
-
_close() {
|
|
55
|
-
this.dialogRef.dismiss();
|
|
56
|
-
}
|
|
57
|
-
/** @hidden */
|
|
58
|
-
_confirm() {
|
|
59
|
-
this.dialogRef.close({
|
|
60
|
-
selectedFolder: this.selectedFolder || this._currentFolder
|
|
61
|
-
});
|
|
62
|
-
}
|
|
63
|
-
/** @hidden */
|
|
64
|
-
_openFolder(folder) {
|
|
65
|
-
this.selectedFolder = null;
|
|
66
|
-
this._currentFolder = folder;
|
|
67
|
-
this._init(folder.files);
|
|
68
|
-
this._cd.detectChanges();
|
|
69
|
-
}
|
|
70
|
-
/** @hidden */
|
|
71
|
-
_selectFolder(folder) {
|
|
72
|
-
this.selectedFolder = folder;
|
|
73
|
-
}
|
|
74
|
-
/** @hidden */
|
|
75
|
-
_hasFolders(items) {
|
|
76
|
-
return items.some((item) => item.type === 'folder');
|
|
77
|
-
}
|
|
78
|
-
/** @hidden */
|
|
79
|
-
_newFolder() {
|
|
80
|
-
const dialogRef = this._dialogService.open(NewFolderComponent, {
|
|
81
|
-
responsivePadding: true,
|
|
82
|
-
backdropClickCloseable: false,
|
|
83
|
-
height: '350px',
|
|
84
|
-
backdropClass: 'fdp-upload-collection-dialig-no-bg',
|
|
85
|
-
data: {
|
|
86
|
-
currentFolder: this._currentFolder,
|
|
87
|
-
maxFilenameLength: this._maxFilenameLength
|
|
88
|
-
}
|
|
89
|
-
});
|
|
90
|
-
dialogRef.afterClosed.pipe(take(1)).subscribe((folderName) => {
|
|
91
|
-
this.dialogRef.close({
|
|
92
|
-
parentFolderId: this._currentFolder?.documentId,
|
|
93
|
-
selectedFolder: null,
|
|
94
|
-
folderName
|
|
95
|
-
});
|
|
96
|
-
});
|
|
97
|
-
}
|
|
98
|
-
/** @hidden */
|
|
99
|
-
_init(items) {
|
|
100
|
-
this._foldersList = items.filter((item) => item.type === 'folder' && !this.movableFolders?.some((folder) => folder.documentId === item.documentId));
|
|
101
|
-
}
|
|
102
|
-
/** @hidden */
|
|
103
|
-
_getParentFolderByCurrentFolderId(documentId) {
|
|
104
|
-
let foundObj;
|
|
105
|
-
if (documentId) {
|
|
106
|
-
JSON.stringify(this.items, (_, nestedValue) => {
|
|
107
|
-
if (!isObject(nestedValue) || nestedValue.type === 'file' || !nestedValue.files) {
|
|
108
|
-
return nestedValue;
|
|
109
|
-
}
|
|
110
|
-
if (nestedValue.files.some((item) => item.documentId === documentId)) {
|
|
111
|
-
foundObj = nestedValue;
|
|
112
|
-
}
|
|
113
|
-
return nestedValue;
|
|
114
|
-
});
|
|
115
|
-
}
|
|
116
|
-
return foundObj;
|
|
117
|
-
}
|
|
118
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: MoveToComponent, deps: [{ token: i1.DialogRef }, { token: i1.DialogService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
119
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.7", type: MoveToComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: "<fd-dialog>\n <fd-dialog-header>\n <ng-template fdkTemplate=\"header\">\n <div fd-bar-left>\n <fd-bar-element>\n <h1 class=\"fd-title--bold\" *ngIf=\"!_currentFolder\" fd-title>\n {{ 'platformUploadCollection.moveToTitle' | fdTranslate }}\n </h1>\n <ng-container *ngIf=\"_currentFolder\">\n <button\n fd-button\n fdType=\"transparent\"\n glyph=\"navigation-left-arrow\"\n (click)=\"_goToParentFolder()\"\n ></button>\n <h1 fd-title>\n <span>{{ 'platformUploadCollection.moveToTitleFolder' | fdTranslate }}</span>\n {{ _currentFolder.name }}\n </h1>\n </ng-container>\n </fd-bar-element>\n </div>\n <div fd-bar-right>\n <fd-bar-element>\n <button\n fd-button\n [label]=\"'platformUploadCollection.moveToNewFolderBtnLabel' | fdTranslate\"\n (click)=\"_newFolder()\"\n ></button>\n </fd-bar-element>\n </div>\n </ng-template>\n </fd-dialog-header>\n\n <fd-dialog-body class=\"fd-dialog__body--no-horizontal-padding\">\n <ul fd-list>\n <li *ngIf=\"!_currentFolder\" fd-list-item class=\"fd-list__item--title-background\">\n <span fd-list-title>{{ 'platformUploadCollection.moveToAllFilesSubHeaderLabel' | fdTranslate }}</span>\n </li>\n <li\n fd-list-item\n *ngFor=\"let folder of _foldersList\"\n [selected]=\"selectedFolder?.documentId === folder.documentId\"\n >\n <a fd-list-link (click)=\"_hasFolders(folder.files) ? _openFolder(folder) : _selectFolder(folder)\">\n <fd-icon class=\"fdp-upload-collection__fd-icon\" glyph=\"folder-blank\"></fd-icon>\n <span fd-list-title>{{ folder.name }}</span>\n <i *ngIf=\"_hasFolders(folder.files)\" fd-list-icon glyph=\"slim-arrow-right\"></i>\n </a>\n </li>\n </ul>\n </fd-dialog-body>\n\n <fd-dialog-footer>\n <fd-button-bar\n fdType=\"emphasized\"\n type=\"submit\"\n [disabled]=\"\n !(\n (selectedFolder && originalFolder?.documentId !== selectedFolder.documentId) ||\n (!selectedFolder && originalFolder?.documentId !== _currentFolder?.documentId)\n )\n \"\n (click)=\"_confirm()\"\n >\n {{ 'platformUploadCollection.moveToConfirmBtn' | fdTranslate }}\n </fd-button-bar>\n <fd-button-bar (click)=\"_close()\">\n {{ 'platformUploadCollection.moveToCloseBtn' | fdTranslate }}\n </fd-button-bar>\n </fd-dialog-footer>\n</fd-dialog>\n", styles: [".fd-list__item--title-background{background-color:var(--sapList_HeaderBackground)}.fd-dialog__body--no-horizontal-padding{padding-left:0!important;padding-right:0!important}.fd-title--bold{font-weight:700}\n"], dependencies: [{ kind: "component", type: DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "directive", type: TemplateDirective, selector: "[fdkTemplate]", inputs: ["fdkTemplate"] }, { kind: "directive", type: BarLeftDirective, selector: "[fd-bar-left]" }, { kind: "directive", type: BarElementDirective, selector: "fd-bar-element", inputs: ["fullWidth"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: TitleComponent, selector: "h1[fd-title], h2[fd-title], h3[fd-title], h4[fd-title], h5[fd-title], h6[fd-title]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "component", type: ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "directive", type: BarRightDirective, selector: "[fd-bar-right]" }, { kind: "component", type: DialogBodyComponent, selector: "fd-dialog-body" }, { kind: "component", type: ListComponent, selector: "[fd-list], [fdList]", inputs: ["dropdownMode", "multiInputMode", "mobileMode", "hasMessage", "noBorder", "navigationIndicator", "selection", "keyboardSupport", "byline", "unreadIndicator", "role"], outputs: ["focusEscapeList"] }, { kind: "component", type: ListItemComponent, selector: "[fdListItem] ,[fd-list-item]", inputs: ["selected", "noData", "action", "interactive", "growing", "counter", "unread", "byline", "ariaRole"], outputs: ["keyDown"] }, { kind: "directive", type: ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: ListLinkDirective, selector: "[fd-list-link], [fdListLink]", inputs: ["navigationIndicator", "navigated", "focusable"] }, { kind: "component", type: IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "color", "background", "class", "ariaLabel", "ariaHidden"] }, { kind: "directive", type: ListIconDirective, selector: "[fdListIcon], [fd-list-icon]", inputs: ["glyph", "class", "role"] }, { kind: "component", type: DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: ButtonBarComponent, selector: "fd-button-bar", inputs: ["fullWidth", "fdType", "title", "ariaLabel", "ariaLabelledby", "id"] }, { kind: "pipe", type: FdTranslatePipe, name: "fdTranslate" }] }); }
|
|
120
|
-
}
|
|
121
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: MoveToComponent, decorators: [{
|
|
122
|
-
type: Component,
|
|
123
|
-
args: [{ standalone: true, imports: [
|
|
124
|
-
DialogComponent,
|
|
125
|
-
DialogHeaderComponent,
|
|
126
|
-
TemplateDirective,
|
|
127
|
-
BarLeftDirective,
|
|
128
|
-
BarElementDirective,
|
|
129
|
-
NgIf,
|
|
130
|
-
TitleComponent,
|
|
131
|
-
ButtonComponent,
|
|
132
|
-
BarRightDirective,
|
|
133
|
-
CdkScrollable,
|
|
134
|
-
ScrollbarDirective,
|
|
135
|
-
DialogBodyComponent,
|
|
136
|
-
ListComponent,
|
|
137
|
-
ListItemComponent,
|
|
138
|
-
ListTitleDirective,
|
|
139
|
-
NgFor,
|
|
140
|
-
ListLinkDirective,
|
|
141
|
-
IconComponent,
|
|
142
|
-
ListIconDirective,
|
|
143
|
-
DialogFooterComponent,
|
|
144
|
-
ButtonBarComponent,
|
|
145
|
-
FdTranslatePipe
|
|
146
|
-
], template: "<fd-dialog>\n <fd-dialog-header>\n <ng-template fdkTemplate=\"header\">\n <div fd-bar-left>\n <fd-bar-element>\n <h1 class=\"fd-title--bold\" *ngIf=\"!_currentFolder\" fd-title>\n {{ 'platformUploadCollection.moveToTitle' | fdTranslate }}\n </h1>\n <ng-container *ngIf=\"_currentFolder\">\n <button\n fd-button\n fdType=\"transparent\"\n glyph=\"navigation-left-arrow\"\n (click)=\"_goToParentFolder()\"\n ></button>\n <h1 fd-title>\n <span>{{ 'platformUploadCollection.moveToTitleFolder' | fdTranslate }}</span>\n {{ _currentFolder.name }}\n </h1>\n </ng-container>\n </fd-bar-element>\n </div>\n <div fd-bar-right>\n <fd-bar-element>\n <button\n fd-button\n [label]=\"'platformUploadCollection.moveToNewFolderBtnLabel' | fdTranslate\"\n (click)=\"_newFolder()\"\n ></button>\n </fd-bar-element>\n </div>\n </ng-template>\n </fd-dialog-header>\n\n <fd-dialog-body class=\"fd-dialog__body--no-horizontal-padding\">\n <ul fd-list>\n <li *ngIf=\"!_currentFolder\" fd-list-item class=\"fd-list__item--title-background\">\n <span fd-list-title>{{ 'platformUploadCollection.moveToAllFilesSubHeaderLabel' | fdTranslate }}</span>\n </li>\n <li\n fd-list-item\n *ngFor=\"let folder of _foldersList\"\n [selected]=\"selectedFolder?.documentId === folder.documentId\"\n >\n <a fd-list-link (click)=\"_hasFolders(folder.files) ? _openFolder(folder) : _selectFolder(folder)\">\n <fd-icon class=\"fdp-upload-collection__fd-icon\" glyph=\"folder-blank\"></fd-icon>\n <span fd-list-title>{{ folder.name }}</span>\n <i *ngIf=\"_hasFolders(folder.files)\" fd-list-icon glyph=\"slim-arrow-right\"></i>\n </a>\n </li>\n </ul>\n </fd-dialog-body>\n\n <fd-dialog-footer>\n <fd-button-bar\n fdType=\"emphasized\"\n type=\"submit\"\n [disabled]=\"\n !(\n (selectedFolder && originalFolder?.documentId !== selectedFolder.documentId) ||\n (!selectedFolder && originalFolder?.documentId !== _currentFolder?.documentId)\n )\n \"\n (click)=\"_confirm()\"\n >\n {{ 'platformUploadCollection.moveToConfirmBtn' | fdTranslate }}\n </fd-button-bar>\n <fd-button-bar (click)=\"_close()\">\n {{ 'platformUploadCollection.moveToCloseBtn' | fdTranslate }}\n </fd-button-bar>\n </fd-dialog-footer>\n</fd-dialog>\n", styles: [".fd-list__item--title-background{background-color:var(--sapList_HeaderBackground)}.fd-dialog__body--no-horizontal-padding{padding-left:0!important;padding-right:0!important}.fd-title--bold{font-weight:700}\n"] }]
|
|
147
|
-
}], ctorParameters: function () { return [{ type: i1.DialogRef }, { type: i1.DialogService }, { type: i0.ChangeDetectorRef }]; } });
|
|
148
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW92ZS10by5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3NyYy9saWIvdXBsb2FkLWNvbGxlY3Rpb24vZGlhbG9ncy9tb3ZlLXRvL21vdmUtdG8uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9zcmMvbGliL3VwbG9hZC1jb2xsZWN0aW9uL2RpYWxvZ3MvbW92ZS10by9tb3ZlLXRvLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDckUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXRDLE9BQU8sRUFBZ0IsU0FBUyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3RGLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUU1RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDckQsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM5QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQ0gsbUJBQW1CLEVBQ25CLGdCQUFnQixFQUNoQixpQkFBaUIsRUFDakIsa0JBQWtCLEVBQ3JCLE1BQU0sMkJBQTJCLENBQUM7QUFDbkMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQy9ELE9BQU8sRUFDSCxtQkFBbUIsRUFDbkIsZUFBZSxFQUNmLHFCQUFxQixFQUNyQixxQkFBcUIsRUFDeEIsTUFBTSw4QkFBOEIsQ0FBQztBQUN0QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDM0QsT0FBTyxFQUNILGFB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Yzt3QkFDZCxlQUFlO3dCQUNmLGlCQUFpQjt3QkFDakIsYUFBYTt3QkFDYixrQkFBa0I7d0JBQ2xCLG1CQUFtQjt3QkFDbkIsYUFBYTt3QkFDYixpQkFBaUI7d0JBQ2pCLGtCQUFrQjt3QkFDbEIsS0FBSzt3QkFDTCxpQkFBaUI7d0JBQ2pCLGFBQWE7d0JBQ2IsaUJBQWlCO3dCQUNqQixxQkFBcUI7d0JBQ3JCLGtCQUFrQjt3QkFDbEIsZUFBZTtxQkFDbEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IERpYWxvZ0NvbmZpZywgRGlhbG9nUmVmLCBEaWFsb2dTZXJ2aWNlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2RpYWxvZyc7XG5pbXBvcnQgeyBpc09iamVjdCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvcGxhdGZvcm0vc2hhcmVkJztcblxuaW1wb3J0IHsgQ2RrU2Nyb2xsYWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IE5nRm9yLCBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFRlbXBsYXRlRGlyZWN0aXZlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jZGsvdXRpbHMnO1xuaW1wb3J0IHtcbiAgICBCYXJFbGVtZW50RGlyZWN0aXZlLFxuICAgIEJhckxlZnREaXJlY3RpdmUsXG4gICAgQmFyUmlnaHREaXJlY3RpdmUsXG4gICAgQnV0dG9uQmFyQ29tcG9uZW50XG59IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9iYXInO1xuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2J1dHRvbic7XG5pbXBvcnQge1xuICAgIERpYWxvZ0JvZHlDb21wb25lbnQsXG4gICAgRGlhbG9nQ29tcG9uZW50LFxuICAgIERpYWxvZ0Zvb3RlckNvbXBvbmVudCxcbiAgICBEaWFsb2dIZWFkZXJDb21wb25lbnRcbn0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2RpYWxvZyc7XG5pbXBvcnQgeyBJY29uQ29tcG9uZW50IH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2ljb24nO1xuaW1wb3J0IHtcbiAgICBMaXN0Q29tcG9uZW50LFxuICAgIExpc3RJY29uRGlyZWN0aXZlLFxuICAgIExpc3RJdGVtQ29tcG9uZW50LFxuICAgIExpc3RMaW5rRGlyZWN0aXZlLFxuICAgIExpc3RUaXRsZURpcmVjdGl2ZVxufSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvbGlzdCc7XG5pbXBvcnQgeyBTY3JvbGxiYXJEaXJlY3RpdmUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvc2Nyb2xsYmFyJztcbmltcG9ydCB7IFRpdGxlQ29tcG9uZW50IH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL3RpdGxlJztcbmltcG9ydCB7IEZkVHJhbnNsYXRlUGlwZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvaTE4bic7XG5pbXBvcnQgeyBVcGxvYWRDb2xsZWN0aW9uRm9sZGVyLCBVcGxvYWRDb2xsZWN0aW9uSXRlbSB9IGZyb20gJy4uLy4uL21vZGVscy91cGxvYWQtY29sbGVjdGlvbi5tb2RlbHMnO1xuaW1wb3J0IHsgTmV3Rm9sZGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vbmV3LWZvbGRlci9uZXctZm9sZGVyLmNvbXBvbmVudCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTW92ZVRvQ29tcG9uZW50RGlhbG9nRGF0YSB7XG4gICAgaXRlbXM6IFVwbG9hZENvbGxlY3Rpb25JdGVtW107XG4gICAgY3VycmVudEZvbGRlcj86IFVwbG9hZENvbGxlY3Rpb25Gb2xkZXI7XG4gICAgbW92YWJsZUZvbGRlcnM/OiBVcGxvYWRDb2xsZWN0aW9uRm9sZGVyW107XG4gICAgbWF4RmlsZW5hbWVMZW5ndGg6IG51bWJlcjtcbn1cblxuQENvbXBvbmVudCh7XG4gICAgdGVtcGxhdGVVcmw6ICcuL21vdmUtdG8uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlczogW1xuICAgICAgICBgXG4gICAgICAgICAgICAuZmQtbGlzdF9faXRlbS0tdGl0bGUtYmFja2dyb3VuZCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2FwTGlzdF9IZWFkZXJCYWNrZ3JvdW5kKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmZkLWRpYWxvZ19fYm9keS0tbm8taG9yaXpvbnRhbC1wYWRkaW5nIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5mZC10aXRsZS0tYm9sZCB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIGBcbiAgICBdLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBEaWFsb2dDb21wb25lbnQsXG4gICAgICAgIERpYWxvZ0hlYWRlckNvbXBvbmVudCxcbiAgICAgICAgVGVtcGxhdGVEaXJlY3RpdmUsXG4gICAgICAgIEJhckxlZnREaXJlY3RpdmUsXG4gICAgICAgIEJhckVsZW1lbnREaXJlY3RpdmUsXG4gICAgICAgIE5nSWYsXG4gICAgICAgIFRpdGxlQ29tcG9uZW50LFxuICAgICAgICBCdXR0b25Db21wb25lbnQsXG4gICAgICAgIEJhclJpZ2h0RGlyZWN0aXZlLFxuICAgICAgICBDZGtTY3JvbGxhYmxlLFxuICAgICAgICBTY3JvbGxiYXJEaXJlY3RpdmUsXG4gICAgICAgIERpYWxvZ0JvZHlDb21wb25lbnQsXG4gICAgICAgIExpc3RDb21wb25lbnQsXG4gICAgICAgIExpc3RJdGVtQ29tcG9uZW50LFxuICAgICAgICBMaXN0VGl0bGVEaXJlY3RpdmUsXG4gICAgICAgIE5nRm9yLFxuICAgICAgICBMaXN0TGlua0RpcmVjdGl2ZSxcbiAgICAgICAgSWNvbkNvbXBvbmVudCxcbiAgICAgICAgTGlzdEljb25EaXJlY3RpdmUsXG4gICAgICAgIERpYWxvZ0Zvb3RlckNvbXBvbmVudCxcbiAgICAgICAgQnV0dG9uQmFyQ29tcG9uZW50LFxuICAgICAgICBGZFRyYW5zbGF0ZVBpcGVcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIE1vdmVUb0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgLyoqXG4gICAgICogTGlzdCBvZiB1cGxvYWQgY29sbGVjdGlvbiBpdGVtc1xuICAgICAqL1xuICAgIHJlYWRvbmx5IGl0ZW1zOiBVcGxvYWRDb2xsZWN0aW9uSXRlbVtdID0gdGhpcy5kaWFsb2dSZWYuZGF0YS5pdGVtcztcbiAgICAvKipcbiAgICAgKiBUaGUgY3VycmVudCBmb2xkZXIgaW4gd2hhdCBuZWVkIHRvIGNyZWF0ZSBhIG5ldyBvbmVcbiAgICAgKi9cbiAgICBvcmlnaW5hbEZvbGRlcj86IFVwbG9hZENvbGxlY3Rpb25Gb2xkZXIgPSB0aGlzLmRpYWxvZ1JlZi5kYXRhLmN1cnJlbnRGb2xkZXI7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHJlYWRvbmx5IG1vdmFibGVGb2xkZXJzPzogVXBsb2FkQ29sbGVjdGlvbkZvbGRlcltdID0gdGhpcy5kaWFsb2dSZWYuZGF0YS5tb3ZhYmxlRm9sZGVycztcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcmVhZG9ubHkgX21heEZpbGVuYW1lTGVuZ3RoID0gdGhpcy5kaWFsb2dSZWYuZGF0YS5tYXhGaWxlbmFtZUxlbmd0aDtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX2N1cnJlbnRGb2xkZXI/OiBVcGxvYWRDb2xsZWN0aW9uRm9sZGVyID0gdGhpcy5vcmlnaW5hbEZvbGRlciAmJiB7IC4uLnRoaXMub3JpZ2luYWxGb2xkZXIgfTtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHNlbGVjdGVkRm9sZGVyOiBVcGxvYWRDb2xsZWN0aW9uRm9sZGVyIHwgbnVsbDtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX2ZvbGRlcnNMaXN0OiBVcGxvYWRDb2xsZWN0aW9uRm9sZGVyW10gPSBbXTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHB1YmxpYyByZWFkb25seSBkaWFsb2dSZWY6IERpYWxvZ1JlZjxNb3ZlVG9Db21wb25lbnREaWFsb2dEYXRhPixcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBfZGlhbG9nU2VydmljZTogRGlhbG9nU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBfY2Q6IENoYW5nZURldGVjdG9yUmVmXG4gICAgKSB7fVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5faW5pdCh0aGlzLl9jdXJyZW50Rm9sZGVyID8gdGhpcy5fY3VycmVudEZvbGRlci5maWxlcyA6IHRoaXMuaXRlbXMpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX2dvVG9QYXJlbnRGb2xkZXIoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRGb2xkZXIgPSBudWxsO1xuICAgICAgICB0aGlzLl9jdXJyZW50Rm9sZGVyID0gdGhpcy5fZ2V0UGFyZW50Rm9sZGVyQnlDdXJyZW50Rm9sZGVySWQodGhpcy5fY3VycmVudEZvbGRlcj8uZG9jdW1lbnRJZCk7XG4gICAgICAgIHRoaXMuX2luaXQodGhpcy5fY3VycmVudEZvbGRlciA/IHRoaXMuX2N1cnJlbnRGb2xkZXIuZmlsZXMgOiB0aGlzLml0ZW1zKTtcblxuICAgICAgICB0aGlzLl9jZC5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfY2xvc2UoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGlhbG9nUmVmLmRpc21pc3MoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9jb25maXJtKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZSh7XG4gICAgICAgICAgICBzZWxlY3RlZEZvbGRlcjogdGhpcy5zZWxlY3RlZEZvbGRlciB8fCB0aGlzLl9jdXJyZW50Rm9sZGVyXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX29wZW5Gb2xkZXIoZm9sZGVyOiBVcGxvYWRDb2xsZWN0aW9uRm9sZGVyKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRGb2xkZXIgPSBudWxsO1xuICAgICAgICB0aGlzLl9jdXJyZW50Rm9sZGVyID0gZm9sZGVyO1xuICAgICAgICB0aGlzLl9pbml0KGZvbGRlci5maWxlcyk7XG5cbiAgICAgICAgdGhpcy5fY2QuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX3NlbGVjdEZvbGRlcihmb2xkZXI6IFVwbG9hZENvbGxlY3Rpb25Gb2xkZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZWxlY3RlZEZvbGRlciA9IGZvbGRlcjtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9oYXNGb2xkZXJzKGl0ZW1zOiBVcGxvYWRDb2xsZWN0aW9uSXRlbVtdKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBpdGVtcy5zb21lKChpdGVtKSA9PiBpdGVtLnR5cGUgPT09ICdmb2xkZXInKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9uZXdGb2xkZXIoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuX2RpYWxvZ1NlcnZpY2Uub3BlbihOZXdGb2xkZXJDb21wb25lbnQsIHtcbiAgICAgICAgICAgIHJlc3BvbnNpdmVQYWRkaW5nOiB0cnVlLFxuICAgICAgICAgICAgYmFja2Ryb3BDbGlja0Nsb3NlYWJsZTogZmFsc2UsXG4gICAgICAgICAgICBoZWlnaHQ6ICczNTBweCcsXG4gICAgICAgICAgICBiYWNrZHJvcENsYXNzOiAnZmRwLXVwbG9hZC1jb2xsZWN0aW9uLWRpYWxpZy1uby1iZycsXG4gICAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICAgICAgY3VycmVudEZvbGRlcjogdGhpcy5fY3VycmVudEZvbGRlcixcbiAgICAgICAgICAgICAgICBtYXhGaWxlbmFtZUxlbmd0aDogdGhpcy5fbWF4RmlsZW5hbWVMZW5ndGhcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBhcyBEaWFsb2dDb25maWcpO1xuXG4gICAgICAgIGRpYWxvZ1JlZi5hZnRlckNsb3NlZC5waXBlKHRha2UoMSkpLnN1YnNjcmliZSgoZm9sZGVyTmFtZSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5kaWFsb2dSZWYuY2xvc2Uoe1xuICAgICAgICAgICAgICAgIHBhcmVudEZvbGRlcklkOiB0aGlzLl9jdXJyZW50Rm9sZGVyPy5kb2N1bWVudElkLFxuICAgICAgICAgICAgICAgIHNlbGVjdGVkRm9sZGVyOiBudWxsLFxuICAgICAgICAgICAgICAgIGZvbGRlck5hbWVcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2luaXQoaXRlbXM6IFVwbG9hZENvbGxlY3Rpb25JdGVtW10pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZm9sZGVyc0xpc3QgPSBpdGVtcy5maWx0ZXIoXG4gICAgICAgICAgICAoaXRlbSkgPT5cbiAgICAgICAgICAgICAgICBpdGVtLnR5cGUgPT09ICdmb2xkZXInICYmICF0aGlzLm1vdmFibGVGb2xkZXJzPy5zb21lKChmb2xkZXIpID0+IGZvbGRlci5kb2N1bWVudElkID09PSBpdGVtLmRvY3VtZW50SWQpXG4gICAgICAgICkgYXMgVXBsb2FkQ29sbGVjdGlvbkZvbGRlcltdO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfZ2V0UGFyZW50Rm9sZGVyQnlDdXJyZW50Rm9sZGVySWQoZG9jdW1lbnRJZD86IHN0cmluZyB8IG51bWJlcik6IFVwbG9hZENvbGxlY3Rpb25Gb2xkZXIgfCB1bmRlZmluZWQge1xuICAgICAgICBsZXQgZm91bmRPYmo6IFVwbG9hZENvbGxlY3Rpb25Gb2xkZXIgfCB1bmRlZmluZWQ7XG5cbiAgICAgICAgaWYgKGRvY3VtZW50SWQpIHtcbiAgICAgICAgICAgIEpTT04uc3RyaW5naWZ5KHRoaXMuaXRlbXMsIChfLCBuZXN0ZWRWYWx1ZSkgPT4ge1xuICAgICAgICAgICAgICAgIGlmICghaXNPYmplY3QobmVzdGVkVmFsdWUpIHx8IG5lc3RlZFZhbHVlLnR5cGUgPT09ICdmaWxlJyB8fCAhbmVzdGVkVmFsdWUuZmlsZXMpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG5lc3RlZFZhbHVlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlmIChuZXN0ZWRWYWx1ZS5maWxlcy5zb21lKChpdGVtKSA9PiBpdGVtLmRvY3VtZW50SWQgPT09IGRvY3VtZW50SWQpKSB7XG4gICAgICAgICAgICAgICAgICAgIGZvdW5kT2JqID0gbmVzdGVkVmFsdWU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcmV0dXJuIG5lc3RlZFZhbHVlO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gZm91bmRPYmo7XG4gICAgfVxufVxuIiwiPGZkLWRpYWxvZz5cbiAgICA8ZmQtZGlhbG9nLWhlYWRlcj5cbiAgICAgICAgPG5nLXRlbXBsYXRlIGZka1RlbXBsYXRlPVwiaGVhZGVyXCI+XG4gICAgICAgICAgICA8ZGl2IGZkLWJhci1sZWZ0PlxuICAgICAgICAgICAgICAgIDxmZC1iYXItZWxlbWVudD5cbiAgICAgICAgICAgICAgICAgICAgPGgxIGNsYXNzPVwiZmQtdGl0bGUtLWJvbGRcIiAqbmdJZj1cIiFfY3VycmVudEZvbGRlclwiIGZkLXRpdGxlPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgJ3BsYXRmb3JtVXBsb2FkQ29sbGVjdGlvbi5tb3ZlVG9UaXRsZScgfCBmZFRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgICAgICAgICA8L2gxPlxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiX2N1cnJlbnRGb2xkZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZC1idXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZFR5cGU9XCJ0cmFuc3BhcmVudFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2x5cGg9XCJuYXZpZ2F0aW9uLWxlZnQtYXJyb3dcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJfZ29Ub1BhcmVudEZvbGRlcigpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgID48L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxoMSBmZC10aXRsZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj57eyAncGxhdGZvcm1VcGxvYWRDb2xsZWN0aW9uLm1vdmVUb1RpdGxlRm9sZGVyJyB8IGZkVHJhbnNsYXRlIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IF9jdXJyZW50Rm9sZGVyLm5hbWUgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvaDE+XG4gICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgIDwvZmQtYmFyLWVsZW1lbnQ+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgZmQtYmFyLXJpZ2h0PlxuICAgICAgICAgICAgICAgIDxmZC1iYXItZWxlbWVudD5cbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgZmQtYnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ3BsYXRmb3JtVXBsb2FkQ29sbGVjdGlvbi5tb3ZlVG9OZXdGb2xkZXJCdG5MYWJlbCcgfCBmZFRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiX25ld0ZvbGRlcigpXCJcbiAgICAgICAgICAgICAgICAgICAgPjwvYnV0dG9uPlxuICAgICAgICAgICAgICAgIDwvZmQtYmFyLWVsZW1lbnQ+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L2ZkLWRpYWxvZy1oZWFkZXI+XG5cbiAgICA8ZmQtZGlhbG9nLWJvZHkgY2xhc3M9XCJmZC1kaWFsb2dfX2JvZHktLW5vLWhvcml6b250YWwtcGFkZGluZ1wiPlxuICAgICAgICA8dWwgZmQtbGlzdD5cbiAgICAgICAgICAgIDxsaSAqbmdJZj1cIiFfY3VycmVudEZvbGRlclwiIGZkLWxpc3QtaXRlbSBjbGFzcz1cImZkLWxpc3RfX2l0ZW0tLXRpdGxlLWJhY2tncm91bmRcIj5cbiAgICAgICAgICAgICAgICA8c3BhbiBmZC1saXN0LXRpdGxlPnt7ICdwbGF0Zm9ybVVwbG9hZENvbGxlY3Rpb24ubW92ZVRvQWxsRmlsZXNTdWJIZWFkZXJMYWJlbCcgfCBmZFRyYW5zbGF0ZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICA8bGlcbiAgICAgICAgICAgICAgICBmZC1saXN0LWl0ZW1cbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgZm9sZGVyIG9mIF9mb2xkZXJzTGlzdFwiXG4gICAgICAgICAgICAgICAgW3NlbGVjdGVkXT1cInNlbGVjdGVkRm9sZGVyPy5kb2N1bWVudElkID09PSBmb2xkZXIuZG9jdW1lbnRJZFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGEgZmQtbGlzdC1saW5rIChjbGljayk9XCJfaGFzRm9sZGVycyhmb2xkZXIuZmlsZXMpID8gX29wZW5Gb2xkZXIoZm9sZGVyKSA6IF9zZWxlY3RGb2xkZXIoZm9sZGVyKVwiPlxuICAgICAgICAgICAgICAgICAgICA8ZmQtaWNvbiBjbGFzcz1cImZkcC11cGxvYWQtY29sbGVjdGlvbl9fZmQtaWNvblwiIGdseXBoPVwiZm9sZGVyLWJsYW5rXCI+PC9mZC1pY29uPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBmZC1saXN0LXRpdGxlPnt7IGZvbGRlci5uYW1lIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8aSAqbmdJZj1cIl9oYXNGb2xkZXJzKGZvbGRlci5maWxlcylcIiBmZC1saXN0LWljb24gZ2x5cGg9XCJzbGltLWFycm93LXJpZ2h0XCI+PC9pPlxuICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIDwvbGk+XG4gICAgICAgIDwvdWw+XG4gICAgPC9mZC1kaWFsb2ctYm9keT5cblxuICAgIDxmZC1kaWFsb2ctZm9vdGVyPlxuICAgICAgICA8ZmQtYnV0dG9uLWJhclxuICAgICAgICAgICAgZmRUeXBlPVwiZW1waGFzaXplZFwiXG4gICAgICAgICAgICB0eXBlPVwic3VibWl0XCJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJcbiAgICAgICAgICAgICAgICAhKFxuICAgICAgICAgICAgICAgICAgICAoc2VsZWN0ZWRGb2xkZXIgJiYgb3JpZ2luYWxGb2xkZXI/LmRvY3VtZW50SWQgIT09IHNlbGVjdGVkRm9sZGVyLmRvY3VtZW50SWQpIHx8XG4gICAgICAgICAgICAgICAgICAgICghc2VsZWN0ZWRGb2xkZXIgJiYgb3JpZ2luYWxGb2xkZXI/LmRvY3VtZW50SWQgIT09IF9jdXJyZW50Rm9sZGVyPy5kb2N1bWVudElkKVxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAoY2xpY2spPVwiX2NvbmZpcm0oKVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIHt7ICdwbGF0Zm9ybVVwbG9hZENvbGxlY3Rpb24ubW92ZVRvQ29uZmlybUJ0bicgfCBmZFRyYW5zbGF0ZSB9fVxuICAgICAgICA8L2ZkLWJ1dHRvbi1iYXI+XG4gICAgICAgIDxmZC1idXR0b24tYmFyIChjbGljayk9XCJfY2xvc2UoKVwiPlxuICAgICAgICAgICAge3sgJ3BsYXRmb3JtVXBsb2FkQ29sbGVjdGlvbi5tb3ZlVG9DbG9zZUJ0bicgfCBmZFRyYW5zbGF0ZSB9fVxuICAgICAgICA8L2ZkLWJ1dHRvbi1iYXI+XG4gICAgPC9mZC1kaWFsb2ctZm9vdGVyPlxuPC9mZC1kaWFsb2c+XG4iXX0=
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
import { Component, ViewChild } from '@angular/core';
|
|
2
|
-
import { CdkScrollable } from '@angular/cdk/overlay';
|
|
3
|
-
import { NgIf } from '@angular/common';
|
|
4
|
-
import { FormsModule } from '@angular/forms';
|
|
5
|
-
import { ButtonBarComponent } from '@fundamental-ngx/core/bar';
|
|
6
|
-
import { DialogBodyComponent, DialogComponent, DialogFooterComponent, DialogHeaderComponent, DialogRef, DialogTitleDirective } from '@fundamental-ngx/core/dialog';
|
|
7
|
-
import { FormControlComponent, FormItemComponent, FormLabelComponent } from '@fundamental-ngx/core/form';
|
|
8
|
-
import { ObjectStatusComponent } from '@fundamental-ngx/core/object-status';
|
|
9
|
-
import { ScrollbarDirective } from '@fundamental-ngx/core/scrollbar';
|
|
10
|
-
import { TitleComponent } from '@fundamental-ngx/core/title';
|
|
11
|
-
import { FdTranslatePipe } from '@fundamental-ngx/i18n';
|
|
12
|
-
import * as i0 from "@angular/core";
|
|
13
|
-
import * as i1 from "@fundamental-ngx/core/dialog";
|
|
14
|
-
import * as i2 from "@angular/forms";
|
|
15
|
-
export class NewFolderComponent {
|
|
16
|
-
/** @hidden */
|
|
17
|
-
constructor(dialogRef) {
|
|
18
|
-
this.dialogRef = dialogRef;
|
|
19
|
-
/**
|
|
20
|
-
* @hidden
|
|
21
|
-
* The current folder in what need to create a new one
|
|
22
|
-
*/
|
|
23
|
-
this._currentFolder = this.dialogRef.data.currentFolder;
|
|
24
|
-
/** @hidden */
|
|
25
|
-
this._maxFilenameLength = this.dialogRef.data.maxFilenameLength;
|
|
26
|
-
/** @hidden */
|
|
27
|
-
this._newFolderName = 'New Folder';
|
|
28
|
-
}
|
|
29
|
-
/** @hidden */
|
|
30
|
-
ngAfterViewInit() {
|
|
31
|
-
const el = this.formControl.elementRef.nativeElement;
|
|
32
|
-
if (el) {
|
|
33
|
-
el.focus();
|
|
34
|
-
this._setSelectionRange(el, 0, this._newFolderName.length);
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
/** @hidden */
|
|
38
|
-
_setSelectionRange(el, selectionStart, selectionEnd) {
|
|
39
|
-
const direction = el.selectionDirection;
|
|
40
|
-
el.setSelectionRange(selectionStart, selectionEnd, direction || undefined);
|
|
41
|
-
}
|
|
42
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: NewFolderComponent, deps: [{ token: i1.DialogRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
43
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.7", type: NewFolderComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "formControl", first: true, predicate: FormControlComponent, descendants: true }], ngImport: i0, template: "<fd-dialog>\n <fd-dialog-header>\n <h1 class=\"fd-title--bold\" fd-dialog-title id=\"fdp-upload-collection-new-folder-title\" fd-title>\n {{ 'platformUploadCollection.newFolderTitle' | fdTranslate }}\n </h1>\n </fd-dialog-header>\n\n <fd-dialog-body>\n <div fd-form-item>\n <label fd-form-label for=\"fdp-upload-collection-new-folder-input\">\n {{\n (_currentFolder\n ? 'platformUploadCollection.newFolderAtFolderInputLabel'\n : 'platformUploadCollection.newFolderAtRootInputLabel'\n ) | fdTranslate : { folderName: _currentFolder?.name || '' }\n }}:\n </label>\n <input\n #formControl\n fd-form-control\n fdkInitialFocus\n id=\"fdp-upload-collection-new-folder-input\"\n type=\"text\"\n [(ngModel)]=\"_newFolderName\"\n [placeholder]=\"'platformUploadCollection.newFolderInputPlaceholder' | fdTranslate\"\n />\n <span\n *ngIf=\"_newFolderName.length > _maxFilenameLength\"\n fd-object-status\n status=\"negative\"\n [label]=\"'platformUploadCollection.newFolderInputErrorLabel' | fdTranslate\"\n [attr.title]=\"'platformUploadCollection.newFolderInputErrorLabel' | fdTranslate\"\n [attr.aria-label]=\"'platformUploadCollection.newFolderInputErrorLabel' | fdTranslate\"\n ></span>\n </div>\n </fd-dialog-body>\n\n <fd-dialog-footer>\n <fd-button-bar\n fdType=\"emphasized\"\n [label]=\"'platformUploadCollection.newFolderDialogCreateBtnLabel' | fdTranslate\"\n [disabled]=\"_newFolderName.length > _maxFilenameLength\"\n (click)=\"dialogRef.close(_newFolderName)\"\n >\n </fd-button-bar>\n <fd-button-bar\n [label]=\"'platformUploadCollection.newFolderDialogCancelBtnLabel' | fdTranslate\"\n (click)=\"dialogRef.dismiss()\"\n >\n </fd-button-bar>\n </fd-dialog-footer>\n</fd-dialog>\n", styles: [".fd-title--bold{font-weight:700}\n"], dependencies: [{ kind: "component", type: DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "component", type: TitleComponent, selector: "h1[fd-title], h2[fd-title], h3[fd-title], h4[fd-title], h5[fd-title], h6[fd-title]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "directive", type: DialogTitleDirective, selector: "[fd-dialog-title]", inputs: ["id"] }, { kind: "component", type: DialogBodyComponent, selector: "fd-dialog-body" }, { kind: "component", type: FormItemComponent, selector: "[fd-form-item]", inputs: ["isInline", "horizontal"] }, { kind: "component", type: FormLabelComponent, selector: "[fd-form-label]", inputs: ["required", "colon", "alignLabelEnd", "inlineHelpContent", "inlineHelpGlyph", "inlineHelpTriggers", "inlineHelpBodyPlacement", "inlineHelpPlacement", "inlineHelpLabel", "id"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.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: 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: FormControlComponent, selector: "input[fd-form-control], textarea[fd-form-control]", inputs: ["state", "type", "class", "ariaLabel", "ariaLabelledBy"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ObjectStatusComponent, selector: "[fd-object-status]", inputs: ["class", "status", "glyph", "label", "glyphAriaLabel", "indicationColor", "clickable", "inverted", "large", "secondaryIndication", "textTemplate"] }, { kind: "component", type: DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: ButtonBarComponent, selector: "fd-button-bar", inputs: ["fullWidth", "fdType", "title", "ariaLabel", "ariaLabelledby", "id"] }, { kind: "pipe", type: FdTranslatePipe, name: "fdTranslate" }] }); }
|
|
44
|
-
}
|
|
45
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: NewFolderComponent, decorators: [{
|
|
46
|
-
type: Component,
|
|
47
|
-
args: [{ standalone: true, imports: [
|
|
48
|
-
DialogComponent,
|
|
49
|
-
DialogHeaderComponent,
|
|
50
|
-
TitleComponent,
|
|
51
|
-
DialogTitleDirective,
|
|
52
|
-
CdkScrollable,
|
|
53
|
-
ScrollbarDirective,
|
|
54
|
-
DialogBodyComponent,
|
|
55
|
-
FormItemComponent,
|
|
56
|
-
FormLabelComponent,
|
|
57
|
-
FormsModule,
|
|
58
|
-
FormControlComponent,
|
|
59
|
-
NgIf,
|
|
60
|
-
ObjectStatusComponent,
|
|
61
|
-
DialogFooterComponent,
|
|
62
|
-
ButtonBarComponent,
|
|
63
|
-
FdTranslatePipe
|
|
64
|
-
], template: "<fd-dialog>\n <fd-dialog-header>\n <h1 class=\"fd-title--bold\" fd-dialog-title id=\"fdp-upload-collection-new-folder-title\" fd-title>\n {{ 'platformUploadCollection.newFolderTitle' | fdTranslate }}\n </h1>\n </fd-dialog-header>\n\n <fd-dialog-body>\n <div fd-form-item>\n <label fd-form-label for=\"fdp-upload-collection-new-folder-input\">\n {{\n (_currentFolder\n ? 'platformUploadCollection.newFolderAtFolderInputLabel'\n : 'platformUploadCollection.newFolderAtRootInputLabel'\n ) | fdTranslate : { folderName: _currentFolder?.name || '' }\n }}:\n </label>\n <input\n #formControl\n fd-form-control\n fdkInitialFocus\n id=\"fdp-upload-collection-new-folder-input\"\n type=\"text\"\n [(ngModel)]=\"_newFolderName\"\n [placeholder]=\"'platformUploadCollection.newFolderInputPlaceholder' | fdTranslate\"\n />\n <span\n *ngIf=\"_newFolderName.length > _maxFilenameLength\"\n fd-object-status\n status=\"negative\"\n [label]=\"'platformUploadCollection.newFolderInputErrorLabel' | fdTranslate\"\n [attr.title]=\"'platformUploadCollection.newFolderInputErrorLabel' | fdTranslate\"\n [attr.aria-label]=\"'platformUploadCollection.newFolderInputErrorLabel' | fdTranslate\"\n ></span>\n </div>\n </fd-dialog-body>\n\n <fd-dialog-footer>\n <fd-button-bar\n fdType=\"emphasized\"\n [label]=\"'platformUploadCollection.newFolderDialogCreateBtnLabel' | fdTranslate\"\n [disabled]=\"_newFolderName.length > _maxFilenameLength\"\n (click)=\"dialogRef.close(_newFolderName)\"\n >\n </fd-button-bar>\n <fd-button-bar\n [label]=\"'platformUploadCollection.newFolderDialogCancelBtnLabel' | fdTranslate\"\n (click)=\"dialogRef.dismiss()\"\n >\n </fd-button-bar>\n </fd-dialog-footer>\n</fd-dialog>\n", styles: [".fd-title--bold{font-weight:700}\n"] }]
|
|
65
|
-
}], ctorParameters: function () { return [{ type: i1.DialogRef }]; }, propDecorators: { formControl: [{
|
|
66
|
-
type: ViewChild,
|
|
67
|
-
args: [FormControlComponent]
|
|
68
|
-
}] } });
|
|
69
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV3LWZvbGRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3NyYy9saWIvdXBsb2FkLWNvbGxlY3Rpb24vZGlhbG9ncy9uZXctZm9sZGVyL25ldy1mb2xkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9zcmMvbGliL3VwbG9hZC1jb2xsZWN0aW9uL2RpYWxvZ3MvbmV3LWZvbGRlci9uZXctZm9sZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVwRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDckQsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMvRCxPQUFPLEVBQ0gsbUJBQW1CLEVBQ25CLGVBQWUsRUFDZixxQkFBcUIsRUFDckIscUJBQXFCLEVBQ3JCLFNBQVMsRUFDVCxvQkFBb0IsRUFDdkIsTUFBTSw4QkFBOEIsQ0FBQztBQUN0QyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsaUJBQWlCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN6RyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7O0FBZ0N4RCxNQUFNLE9BQU8sa0JBQWtCO0lBaUIzQixjQUFjO0lBQ2QsWUFBNEIsU0FBb0I7UUFBcEIsY0FBUyxHQUFULFNBQVMsQ0FBVztRQWpCaEQ7OztXQUdHO1FBQ00sbUJBQWMsR0FBNEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDO1FBRXJGLGNBQWM7UUFDTCx1QkFBa0IsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztRQUVwRSxjQUFjO1FBQ2QsbUJBQWMsR0FBRyxZQUFZLENBQUM7SUFPcUIsQ0FBQztJQUVwRCxjQUFjO0lBQ2QsZUFBZTtRQUNYLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLGFBQWlDLENBQUM7UUFDekUsSUFBSSxFQUFFLEVBQUU7WUFDSixFQUFFLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDWCxJQUFJLENBQUMsa0JBQWtCLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQzlEO0lBQ0wsQ0FBQztJQUVELGNBQWM7SUFDTixrQkFBa0IsQ0FBQyxFQUFvQixFQUFFLGNBQXNCLEVBQUUsWUFBb0I7UUFDekYsTUFBTSxTQUFTLEdBQUcsRUFBRSxDQUFDLGtCQUFrQixDQUFDO1FBRXhDLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQyxjQUFjLEVBQUUsWUFBWSxFQUFFLFNBQVMsSUFBSSxTQUFTLENBQUMsQ0FBQztJQUMvRSxDQUFDOzhHQWxDUSxrQkFBa0I7a0dBQWxCLGtCQUFrQixxSEFjaEIsb0JBQW9CLGdEQ2hFbkMsa3JFQW9EQSw0RkRwQlEsZUFBZSxzR0FDZixxQkFBcUIsNkRBQ3JCLGNBQWMsdUxBQ2Qsb0JBQW9CLDhFQUdwQixtQkFBbUIsMkRBQ25CLGlCQUFpQiwrRkFDakIsa0JBQWtCLG9QQUNsQixXQUFXLCttQkFDWCxvQkFBb0IsaUtBQ3BCLElBQUksNkZBQ0oscUJBQXFCLDROQUNyQixxQkFBcUIsNkRBQ3JCLGtCQUFrQixvSUFDbEIsZUFBZTs7MkZBR1Ysa0JBQWtCO2tCQTdCOUIsU0FBUztpQ0FTTSxJQUFJLFdBQ1A7d0JBQ0wsZUFBZTt3QkFDZixxQkFBcUI7d0JBQ3JCLGNBQWM7d0JBQ2Qsb0JBQW9CO3dCQUNwQixhQUFhO3dCQUNiLGtCQUFrQjt3QkFDbEIsbUJBQW1CO3dCQUNuQixpQkFBaUI7d0JBQ2pCLGtCQUFrQjt3QkFDbEIsV0FBVzt3QkFDWCxvQkFBb0I7d0JBQ3BCLElBQUk7d0JBQ0oscUJBQXFCO3dCQUNyQixxQkFBcUI7d0JBQ3JCLGtCQUFrQjt3QkFDbEIsZUFBZTtxQkFDbEI7Z0dBaUJnQixXQUFXO3NCQUQzQixTQUFTO3VCQUFDLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IENka1Njcm9sbGFibGUgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQnV0dG9uQmFyQ29tcG9uZW50IH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2Jhcic7XG5pbXBvcnQge1xuICAgIERpYWxvZ0JvZHlDb21wb25lbnQsXG4gICAgRGlhbG9nQ29tcG9uZW50LFxuICAgIERpYWxvZ0Zvb3RlckNvbXBvbmVudCxcbiAgICBEaWFsb2dIZWFkZXJDb21wb25lbnQsXG4gICAgRGlhbG9nUmVmLFxuICAgIERpYWxvZ1RpdGxlRGlyZWN0aXZlXG59IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9kaWFsb2cnO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2xDb21wb25lbnQsIEZvcm1JdGVtQ29tcG9uZW50LCBGb3JtTGFiZWxDb21wb25lbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvZm9ybSc7XG5pbXBvcnQgeyBPYmplY3RTdGF0dXNDb21wb25lbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvb2JqZWN0LXN0YXR1cyc7XG5pbXBvcnQgeyBTY3JvbGxiYXJEaXJlY3RpdmUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvc2Nyb2xsYmFyJztcbmltcG9ydCB7IFRpdGxlQ29tcG9uZW50IH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL3RpdGxlJztcbmltcG9ydCB7IEZkVHJhbnNsYXRlUGlwZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvaTE4bic7XG5pbXBvcnQgeyBVcGxvYWRDb2xsZWN0aW9uRm9sZGVyIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3VwbG9hZC1jb2xsZWN0aW9uLm1vZGVscyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHRlbXBsYXRlVXJsOiAnLi9uZXctZm9sZGVyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZXM6IFtcbiAgICAgICAgYFxuICAgICAgICAgICAgLmZkLXRpdGxlLS1ib2xkIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgYFxuICAgIF0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIERpYWxvZ0NvbXBvbmVudCxcbiAgICAgICAgRGlhbG9nSGVhZGVyQ29tcG9uZW50LFxuICAgICAgICBUaXRsZUNvbXBvbmVudCxcbiAgICAgICAgRGlhbG9nVGl0bGVEaXJlY3RpdmUsXG4gICAgICAgIENka1Njcm9sbGFibGUsXG4gICAgICAgIFNjcm9sbGJhckRpcmVjdGl2ZSxcbiAgICAgICAgRGlhbG9nQm9keUNvbXBvbmVudCxcbiAgICAgICAgRm9ybUl0ZW1Db21wb25lbnQsXG4gICAgICAgIEZvcm1MYWJlbENvbXBvbmVudCxcbiAgICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICAgIEZvcm1Db250cm9sQ29tcG9uZW50LFxuICAgICAgICBOZ0lmLFxuICAgICAgICBPYmplY3RTdGF0dXNDb21wb25lbnQsXG4gICAgICAgIERpYWxvZ0Zvb3RlckNvbXBvbmVudCxcbiAgICAgICAgQnV0dG9uQmFyQ29tcG9uZW50LFxuICAgICAgICBGZFRyYW5zbGF0ZVBpcGVcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIE5ld0ZvbGRlckNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBUaGUgY3VycmVudCBmb2xkZXIgaW4gd2hhdCBuZWVkIHRvIGNyZWF0ZSBhIG5ldyBvbmVcbiAgICAgKi9cbiAgICByZWFkb25seSBfY3VycmVudEZvbGRlcj86IFVwbG9hZENvbGxlY3Rpb25Gb2xkZXIgPSB0aGlzLmRpYWxvZ1JlZi5kYXRhLmN1cnJlbnRGb2xkZXI7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHJlYWRvbmx5IF9tYXhGaWxlbmFtZUxlbmd0aCA9IHRoaXMuZGlhbG9nUmVmLmRhdGEubWF4RmlsZW5hbWVMZW5ndGg7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9uZXdGb2xkZXJOYW1lID0gJ05ldyBGb2xkZXInO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBAVmlld0NoaWxkKEZvcm1Db250cm9sQ29tcG9uZW50KVxuICAgIHByaXZhdGUgcmVhZG9ubHkgZm9ybUNvbnRyb2w6IEZvcm1Db250cm9sQ29tcG9uZW50O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgcmVhZG9ubHkgZGlhbG9nUmVmOiBEaWFsb2dSZWYpIHt9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZWwgPSB0aGlzLmZvcm1Db250cm9sLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCBhcyBIVE1MSW5wdXRFbGVtZW50O1xuICAgICAgICBpZiAoZWwpIHtcbiAgICAgICAgICAgIGVsLmZvY3VzKCk7XG4gICAgICAgICAgICB0aGlzLl9zZXRTZWxlY3Rpb25SYW5nZShlbCwgMCwgdGhpcy5fbmV3Rm9sZGVyTmFtZS5sZW5ndGgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9zZXRTZWxlY3Rpb25SYW5nZShlbDogSFRNTElucHV0RWxlbWVudCwgc2VsZWN0aW9uU3RhcnQ6IG51bWJlciwgc2VsZWN0aW9uRW5kOiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZGlyZWN0aW9uID0gZWwuc2VsZWN0aW9uRGlyZWN0aW9uO1xuXG4gICAgICAgIGVsLnNldFNlbGVjdGlvblJhbmdlKHNlbGVjdGlvblN0YXJ0LCBzZWxlY3Rpb25FbmQsIGRpcmVjdGlvbiB8fCB1bmRlZmluZWQpO1xuICAgIH1cbn1cbiIsIjxmZC1kaWFsb2c+XG4gICAgPGZkLWRpYWxvZy1oZWFkZXI+XG4gICAgICAgIDxoMSBjbGFzcz1cImZkLXRpdGxlLS1ib2xkXCIgZmQtZGlhbG9nLXRpdGxlIGlkPVwiZmRwLXVwbG9hZC1jb2xsZWN0aW9uLW5ldy1mb2xkZXItdGl0bGVcIiBmZC10aXRsZT5cbiAgICAgICAgICAgIHt7ICdwbGF0Zm9ybVVwbG9hZENvbGxlY3Rpb24ubmV3Rm9sZGVyVGl0bGUnIHwgZmRUcmFuc2xhdGUgfX1cbiAgICAgICAgPC9oMT5cbiAgICA8L2ZkLWRpYWxvZy1oZWFkZXI+XG5cbiAgICA8ZmQtZGlhbG9nLWJvZHk+XG4gICAgICAgIDxkaXYgZmQtZm9ybS1pdGVtPlxuICAgICAgICAgICAgPGxhYmVsIGZkLWZvcm0tbGFiZWwgZm9yPVwiZmRwLXVwbG9hZC1jb2xsZWN0aW9uLW5ldy1mb2xkZXItaW5wdXRcIj5cbiAgICAgICAgICAgICAgICB7e1xuICAgICAgICAgICAgICAgICAgICAoX2N1cnJlbnRGb2xkZXJcbiAgICAgICAgICAgICAgICAgICAgICAgID8gJ3BsYXRmb3JtVXBsb2FkQ29sbGVjdGlvbi5uZXdGb2xkZXJBdEZvbGRlcklucHV0TGFiZWwnXG4gICAgICAgICAgICAgICAgICAgICAgICA6ICdwbGF0Zm9ybVVwbG9hZENvbGxlY3Rpb24ubmV3Rm9sZGVyQXRSb290SW5wdXRMYWJlbCdcbiAgICAgICAgICAgICAgICAgICAgKSB8IGZkVHJhbnNsYXRlIDogeyBmb2xkZXJOYW1lOiBfY3VycmVudEZvbGRlcj8ubmFtZSB8fCAnJyB9XG4gICAgICAgICAgICAgICAgfX06XG4gICAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgI2Zvcm1Db250cm9sXG4gICAgICAgICAgICAgICAgZmQtZm9ybS1jb250cm9sXG4gICAgICAgICAgICAgICAgZmRrSW5pdGlhbEZvY3VzXG4gICAgICAgICAgICAgICAgaWQ9XCJmZHAtdXBsb2FkLWNvbGxlY3Rpb24tbmV3LWZvbGRlci1pbnB1dFwiXG4gICAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiX25ld0ZvbGRlck5hbWVcIlxuICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCIncGxhdGZvcm1VcGxvYWRDb2xsZWN0aW9uLm5ld0ZvbGRlcklucHV0UGxhY2Vob2xkZXInIHwgZmRUcmFuc2xhdGVcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJfbmV3Rm9sZGVyTmFtZS5sZW5ndGggPiBfbWF4RmlsZW5hbWVMZW5ndGhcIlxuICAgICAgICAgICAgICAgIGZkLW9iamVjdC1zdGF0dXNcbiAgICAgICAgICAgICAgICBzdGF0dXM9XCJuZWdhdGl2ZVwiXG4gICAgICAgICAgICAgICAgW2xhYmVsXT1cIidwbGF0Zm9ybVVwbG9hZENvbGxlY3Rpb24ubmV3Rm9sZGVySW5wdXRFcnJvckxhYmVsJyB8IGZkVHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICBbYXR0ci50aXRsZV09XCIncGxhdGZvcm1VcGxvYWRDb2xsZWN0aW9uLm5ld0ZvbGRlcklucHV0RXJyb3JMYWJlbCcgfCBmZFRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCIncGxhdGZvcm1VcGxvYWRDb2xsZWN0aW9uLm5ld0ZvbGRlcklucHV0RXJyb3JMYWJlbCcgfCBmZFRyYW5zbGF0ZVwiXG4gICAgICAgICAgICA+PC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2ZkLWRpYWxvZy1ib2R5PlxuXG4gICAgPGZkLWRpYWxvZy1mb290ZXI+XG4gICAgICAgIDxmZC1idXR0b24tYmFyXG4gICAgICAgICAgICBmZFR5cGU9XCJlbXBoYXNpemVkXCJcbiAgICAgICAgICAgIFtsYWJlbF09XCIncGxhdGZvcm1VcGxvYWRDb2xsZWN0aW9uLm5ld0ZvbGRlckRpYWxvZ0NyZWF0ZUJ0bkxhYmVsJyB8IGZkVHJhbnNsYXRlXCJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJfbmV3Rm9sZGVyTmFtZS5sZW5ndGggPiBfbWF4RmlsZW5hbWVMZW5ndGhcIlxuICAgICAgICAgICAgKGNsaWNrKT1cImRpYWxvZ1JlZi5jbG9zZShfbmV3Rm9sZGVyTmFtZSlcIlxuICAgICAgICA+XG4gICAgICAgIDwvZmQtYnV0dG9uLWJhcj5cbiAgICAgICAgPGZkLWJ1dHRvbi1iYXJcbiAgICAgICAgICAgIFtsYWJlbF09XCIncGxhdGZvcm1VcGxvYWRDb2xsZWN0aW9uLm5ld0ZvbGRlckRpYWxvZ0NhbmNlbEJ0bkxhYmVsJyB8IGZkVHJhbnNsYXRlXCJcbiAgICAgICAgICAgIChjbGljayk9XCJkaWFsb2dSZWYuZGlzbWlzcygpXCJcbiAgICAgICAgPlxuICAgICAgICA8L2ZkLWJ1dHRvbi1iYXI+XG4gICAgPC9mZC1kaWFsb2ctZm9vdGVyPlxuPC9mZC1kaWFsb2c+XG4iXX0=
|
|
@@ -1,138 +0,0 @@
|
|
|
1
|
-
import { Directive, ElementRef, EventEmitter, HostListener, Input, Output } from '@angular/core';
|
|
2
|
-
import { FilesValidatorService } from '../services/files-validator.service';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "../services/files-validator.service";
|
|
5
|
-
/**
|
|
6
|
-
* Directive that handles the drag and drop feature of the file input.
|
|
7
|
-
*/
|
|
8
|
-
export class UploadCollectionDragnDropDirective {
|
|
9
|
-
/** @hidden */
|
|
10
|
-
constructor(_elementRef, _filesValidatorService) {
|
|
11
|
-
this._elementRef = _elementRef;
|
|
12
|
-
this._filesValidatorService = _filesValidatorService;
|
|
13
|
-
/** Whether multiple files can be dropped at once. */
|
|
14
|
-
this.multiple = true;
|
|
15
|
-
/**
|
|
16
|
-
* Defines the allowed file types for the upload.
|
|
17
|
-
* The chosen files will be checked against an array of file types.
|
|
18
|
-
* If at least one file does not fit the file type requirements,
|
|
19
|
-
* the upload is prevented. Example: ["jpg", "png", "bmp"].
|
|
20
|
-
*/
|
|
21
|
-
this.fileTypes = [];
|
|
22
|
-
/**
|
|
23
|
-
* Defines the allowed MIME types of files to be uploaded.
|
|
24
|
-
* The chosen files will be checked against an array of MIME types.
|
|
25
|
-
* If at least one file does not fit the MIME type requirements, the upload is prevented.
|
|
26
|
-
* Example: mimeTypes ["image/png", "image/jpeg"].
|
|
27
|
-
*/
|
|
28
|
-
this.mimeTypes = [];
|
|
29
|
-
/** Whether selecting of new files is disabled. */
|
|
30
|
-
this.disabled = false;
|
|
31
|
-
/** Whether drag and drop is enabled. Disables this directive. */
|
|
32
|
-
this.dragndrop = true;
|
|
33
|
-
/** Event emitted when files are dropped. Passes back an array of files. */
|
|
34
|
-
this.fileChanged = new EventEmitter();
|
|
35
|
-
/** Event emitted when the dragged file enters the dropzone or exits from it. */
|
|
36
|
-
this.cancel = new EventEmitter();
|
|
37
|
-
/** Event emitted when the dragged file enters the dropzone. */
|
|
38
|
-
this.onDropzone = new EventEmitter();
|
|
39
|
-
/** @hidden */
|
|
40
|
-
this.dropzonePreviousState = null;
|
|
41
|
-
const element = this._elementRef.nativeElement;
|
|
42
|
-
this.elementSelector = element.id ? `#${element.id}` : '';
|
|
43
|
-
this.elementSelector += element.className ? `.${element.className.split(' ').join('.')}` : '';
|
|
44
|
-
if (!this.elementSelector) {
|
|
45
|
-
this.elementSelector = `${element.localName}[fdpUploadCollectionDragnDrop]`;
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
/** @hidden */
|
|
49
|
-
onWindowDragover(event) {
|
|
50
|
-
if (!this.dragndrop || this.disabled) {
|
|
51
|
-
return;
|
|
52
|
-
}
|
|
53
|
-
this._muteEvent(event);
|
|
54
|
-
const isDragDropArea = !!(event.target instanceof HTMLElement && event.target.closest(this.elementSelector));
|
|
55
|
-
if (this.dropzonePreviousState !== isDragDropArea) {
|
|
56
|
-
this.dropzonePreviousState = isDragDropArea;
|
|
57
|
-
this.onDropzone.emit(isDragDropArea);
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
/** @hidden */
|
|
61
|
-
onDragLeave(event) {
|
|
62
|
-
if (!this.dragndrop || this.disabled) {
|
|
63
|
-
return;
|
|
64
|
-
}
|
|
65
|
-
const leavePositions = [event.screenX, event.screenY, event.clientX, event.clientY, event.pageX, event.pageY];
|
|
66
|
-
if (!leavePositions.some((item) => item > 0)) {
|
|
67
|
-
this._muteEvent(event);
|
|
68
|
-
this.dropzonePreviousState = null;
|
|
69
|
-
this.cancel.emit();
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
/** @hidden */
|
|
73
|
-
onDrop(event) {
|
|
74
|
-
if (!this.dragndrop || this.disabled) {
|
|
75
|
-
return;
|
|
76
|
-
}
|
|
77
|
-
this.dropzonePreviousState = null;
|
|
78
|
-
this.cancel.emit();
|
|
79
|
-
const isDragDropArea = !!(event.target instanceof HTMLElement && event.target.closest(this.elementSelector));
|
|
80
|
-
if (!isDragDropArea) {
|
|
81
|
-
return;
|
|
82
|
-
}
|
|
83
|
-
this._muteEvent(event);
|
|
84
|
-
const rawFiles = event.dataTransfer?.files ?? [];
|
|
85
|
-
const files = Array.from(rawFiles);
|
|
86
|
-
const output = this._filesValidatorService.validation(files, {
|
|
87
|
-
maxFileSize: this.maxFileSize,
|
|
88
|
-
maxFileNameLength: this.maxFilenameLength,
|
|
89
|
-
fileTypes: this.fileTypes,
|
|
90
|
-
mimeTypes: this.mimeTypes
|
|
91
|
-
});
|
|
92
|
-
this.fileChanged.emit(output);
|
|
93
|
-
}
|
|
94
|
-
/** @hidden */
|
|
95
|
-
_muteEvent(event) {
|
|
96
|
-
event.preventDefault();
|
|
97
|
-
event.stopPropagation();
|
|
98
|
-
}
|
|
99
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: UploadCollectionDragnDropDirective, deps: [{ token: i0.ElementRef }, { token: i1.FilesValidatorService }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
100
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.7", type: UploadCollectionDragnDropDirective, isStandalone: true, selector: "[fdpUploadCollectionDragnDrop]", inputs: { multiple: "multiple", fileTypes: "fileTypes", maxFileSize: "maxFileSize", maxFilenameLength: "maxFilenameLength", mimeTypes: "mimeTypes", disabled: "disabled", dragndrop: "dragndrop" }, outputs: { fileChanged: "fileChanged", cancel: "cancel", onDropzone: "onDropzone" }, host: { listeners: { "window:dragover": "onWindowDragover($event)", "window:dragleave": "onDragLeave($event)", "window:drop": "onDrop($event)" } }, ngImport: i0 }); }
|
|
101
|
-
}
|
|
102
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: UploadCollectionDragnDropDirective, decorators: [{
|
|
103
|
-
type: Directive,
|
|
104
|
-
args: [{
|
|
105
|
-
selector: '[fdpUploadCollectionDragnDrop]',
|
|
106
|
-
standalone: true
|
|
107
|
-
}]
|
|
108
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.FilesValidatorService }]; }, propDecorators: { multiple: [{
|
|
109
|
-
type: Input
|
|
110
|
-
}], fileTypes: [{
|
|
111
|
-
type: Input
|
|
112
|
-
}], maxFileSize: [{
|
|
113
|
-
type: Input
|
|
114
|
-
}], maxFilenameLength: [{
|
|
115
|
-
type: Input
|
|
116
|
-
}], mimeTypes: [{
|
|
117
|
-
type: Input
|
|
118
|
-
}], disabled: [{
|
|
119
|
-
type: Input
|
|
120
|
-
}], dragndrop: [{
|
|
121
|
-
type: Input
|
|
122
|
-
}], fileChanged: [{
|
|
123
|
-
type: Output
|
|
124
|
-
}], cancel: [{
|
|
125
|
-
type: Output
|
|
126
|
-
}], onDropzone: [{
|
|
127
|
-
type: Output
|
|
128
|
-
}], onWindowDragover: [{
|
|
129
|
-
type: HostListener,
|
|
130
|
-
args: ['window:dragover', ['$event']]
|
|
131
|
-
}], onDragLeave: [{
|
|
132
|
-
type: HostListener,
|
|
133
|
-
args: ['window:dragleave', ['$event']]
|
|
134
|
-
}], onDrop: [{
|
|
135
|
-
type: HostListener,
|
|
136
|
-
args: ['window:drop', ['$event']]
|
|
137
|
-
}] } });
|
|
138
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLWNvbGxlY3Rpb24tZHJhZ25kcm9wLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vc3JjL2xpYi91cGxvYWQtY29sbGVjdGlvbi9kaXJlY3RpdmVzL3VwbG9hZC1jb2xsZWN0aW9uLWRyYWduZHJvcC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR2pHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDOzs7QUFFNUU7O0dBRUc7QUFLSCxNQUFNLE9BQU8sa0NBQWtDO0lBaUUzQyxjQUFjO0lBQ2QsWUFDcUIsV0FBdUIsRUFDdkIsc0JBQTZDO1FBRDdDLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBQ3ZCLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBdUI7UUFuRWxFLHFEQUFxRDtRQUVyRCxhQUFRLEdBQUcsSUFBSSxDQUFDO1FBRWhCOzs7OztXQUtHO1FBRUgsY0FBUyxHQUFhLEVBQUUsQ0FBQztRQWlCekI7Ozs7O1dBS0c7UUFFSCxjQUFTLEdBQWEsRUFBRSxDQUFDO1FBRXpCLGtEQUFrRDtRQUVsRCxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBRWpCLGlFQUFpRTtRQUVqRSxjQUFTLEdBQUcsSUFBSSxDQUFDO1FBRWpCLDJFQUEyRTtRQUVsRSxnQkFBVyxHQUFHLElBQUksWUFBWSxFQUF3QixDQUFDO1FBRWhFLGdGQUFnRjtRQUV2RSxXQUFNLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUUzQywrREFBK0Q7UUFHdEQsZUFBVSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFbEQsY0FBYztRQUNOLDBCQUFxQixHQUFtQixJQUFJLENBQUM7UUFVakQsTUFBTSxPQUFP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dGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSG9zdExpc3RlbmVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEZpbGVzVmFsaWRhdG9yT3V0cHV0IH0gZnJvbSAnLi4vbW9kZWxzL3VwbG9hZC1jb2xsZWN0aW9uLm1vZGVscyc7XG5pbXBvcnQgeyBGaWxlc1ZhbGlkYXRvclNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9maWxlcy12YWxpZGF0b3Iuc2VydmljZSc7XG5cbi8qKlxuICogRGlyZWN0aXZlIHRoYXQgaGFuZGxlcyB0aGUgZHJhZyBhbmQgZHJvcCBmZWF0dXJlIG9mIHRoZSBmaWxlIGlucHV0LlxuICovXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tmZHBVcGxvYWRDb2xsZWN0aW9uRHJhZ25Ecm9wXScsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBVcGxvYWRDb2xsZWN0aW9uRHJhZ25Ecm9wRGlyZWN0aXZlIHtcbiAgICAvKiogV2hldGhlciBtdWx0aXBsZSBmaWxlcyBjYW4gYmUgZHJvcHBlZCBhdCBvbmNlLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgbXVsdGlwbGUgPSB0cnVlO1xuXG4gICAgLyoqXG4gICAgICogRGVmaW5lcyB0aGUgYWxsb3dlZCBmaWxlIHR5cGVzIGZvciB0aGUgdXBsb2FkLlxuICAgICAqIFRoZSBjaG9zZW4gZmlsZXMgd2lsbCBiZSBjaGVja2VkIGFnYWluc3QgYW4gYXJyYXkgb2YgZmlsZSB0eXBlcy5cbiAgICAgKiBJZiBhdCBsZWFzdCBvbmUgZmlsZSBkb2VzIG5vdCBmaXQgdGhlIGZpbGUgdHlwZSByZXF1aXJlbWVudHMsXG4gICAgICogdGhlIHVwbG9hZCBpcyBwcmV2ZW50ZWQuIEV4YW1wbGU6IFtcImpwZ1wiLCBcInBuZ1wiLCBcImJtcFwiXS5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIGZpbGVUeXBlczogc3RyaW5nW10gPSBbXTtcblxuICAgIC8qKlxuICAgICAqIFNwZWNpZmllcyBhIGZpbGUgc2l6ZSBsaW1pdCBpbiBtZWdhYnl0ZXMgdGhhdCBwcmV2ZW50cyB0aGUgdXBsb2FkXG4gICAgICogaWYgYXQgbGVhc3Qgb25lIGZpbGUgZXhjZWVkcyB0aGUgbGltaXQuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBtYXhGaWxlU2l6ZT86IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIFNwZWNpZmllcyB0aGUgbWF4aW11bSBsZW5ndGggb2YgYSBmaWxlIG5hbWUuXG4gICAgICogSWYgdGhlIG1heGltdW0gZmlsZSBuYW1lIGxlbmd0aCBpcyBleGNlZWRlZCxcbiAgICAgKiB0aGUgY29ycmVzcG9uZGluZyBldmVudCAnZmlsZW5hbWVMZW5ndGhFeGNlZWQnIGlzIHRyaWdnZXJlZC5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIG1heEZpbGVuYW1lTGVuZ3RoPzogbnVtYmVyO1xuXG4gICAgLyoqXG4gICAgICogRGVmaW5lcyB0aGUgYWxsb3dlZCBNSU1FIHR5cGVzIG9mIGZpbGVzIHRvIGJlIHVwbG9hZGVkLlxuICAgICAqIFRoZSBjaG9zZW4gZmlsZXMgd2lsbCBiZSBjaGVja2VkIGFnYWluc3QgYW4gYXJyYXkgb2YgTUlNRSB0eXBlcy5cbiAgICAgKiBJZiBhdCBsZWFzdCBvbmUgZmlsZSBkb2VzIG5vdCBmaXQgdGhlIE1JTUUgdHlwZSByZXF1aXJlbWVudHMsIHRoZSB1cGxvYWQgaXMgcHJldmVudGVkLlxuICAgICAqIEV4YW1wbGU6IG1pbWVUeXBlcyBbXCJpbWFnZS9wbmdcIiwgXCJpbWFnZS9qcGVnXCJdLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgbWltZVR5cGVzOiBzdHJpbmdbXSA9IFtdO1xuXG4gICAgLyoqIFdoZXRoZXIgc2VsZWN0aW5nIG9mIG5ldyBmaWxlcyBpcyBkaXNhYmxlZC4gKi9cbiAgICBASW5wdXQoKVxuICAgIGRpc2FibGVkID0gZmFsc2U7XG5cbiAgICAvKiogV2hldGhlciBkcmFnIGFuZCBkcm9wIGlzIGVuYWJsZWQuIERpc2FibGVzIHRoaXMgZGlyZWN0aXZlLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgZHJhZ25kcm9wID0gdHJ1ZTtcblxuICAgIC8qKiBFdmVudCBlbWl0dGVkIHdoZW4gZmlsZXMgYXJlIGRyb3BwZWQuIFBhc3NlcyBiYWNrIGFuIGFycmF5IG9mIGZpbGVzLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHJlYWRvbmx5IGZpbGVDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxGaWxlc1ZhbGlkYXRvck91dHB1dD4oKTtcblxuICAgIC8qKiBFdmVudCBlbWl0dGVkIHdoZW4gdGhlIGRyYWdnZWQgZmlsZSBlbnRlcnMgdGhlIGRyb3B6b25lIG9yIGV4aXRzIGZyb20gaXQuICovXG4gICAgQE91dHB1dCgpXG4gICAgcmVhZG9ubHkgY2FuY2VsID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gICAgLyoqIEV2ZW50IGVtaXR0ZWQgd2hlbiB0aGUgZHJhZ2dlZCBmaWxlIGVudGVycyB0aGUgZHJvcHpvbmUuICovXG4gICAgQE91dHB1dCgpXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1vdXRwdXQtb24tcHJlZml4XG4gICAgcmVhZG9ubHkgb25Ecm9wem9uZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBkcm9wem9uZVByZXZpb3VzU3RhdGU6IGJvb2xlYW4gfCBudWxsID0gbnVsbDtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBlbGVtZW50U2VsZWN0b3I6IHN0cmluZztcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgX2ZpbGVzVmFsaWRhdG9yU2VydmljZTogRmlsZXNWYWxpZGF0b3JTZXJ2aWNlXG4gICAgKSB7XG4gICAgICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQ7XG4gICAgICAgIHRoaXMuZWxlbWVudFNlbGVjdG9yID0gZWxlbWVudC5pZCA/IGAjJHtlbGVtZW50LmlkfWAgOiAnJztcbiAgICAgICAgdGhpcy5lbGVtZW50U2VsZWN0b3IgKz0gZWxlbWVudC5jbGFzc05hbWUgPyBgLiR7ZWxlbWVudC5jbGFzc05hbWUuc3BsaXQoJyAnKS5qb2luKCcuJyl9YCA6ICcnO1xuICAgICAgICBpZiAoIXRoaXMuZWxlbWVudFNlbGVjdG9yKSB7XG4gICAgICAgICAgICB0aGlzLmVsZW1lbnRTZWxlY3RvciA9IGAke2VsZW1lbnQubG9jYWxOYW1lfVtmZHBVcGxvYWRDb2xsZWN0aW9uRHJhZ25Ecm9wXWA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpkcmFnb3ZlcicsIFsnJGV2ZW50J10pXG4gICAgb25XaW5kb3dEcmFnb3ZlcihldmVudDogRHJhZ0V2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5kcmFnbmRyb3AgfHwgdGhpcy5kaXNhYmxlZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fbXV0ZUV2ZW50KGV2ZW50KTtcblxuICAgICAgICBjb25zdCBpc0RyYWdEcm9wQXJlYSA9ICEhKGV2ZW50LnRhcmdldCBpbnN0YW5jZW9mIEhUTUxFbGVtZW50ICYmIGV2ZW50LnRhcmdldC5jbG9zZXN0KHRoaXMuZWxlbWVudFNlbGVjdG9yKSk7XG4gICAgICAgIGlmICh0aGlzLmRyb3B6b25lUHJldmlvdXNTdGF0ZSAhPT0gaXNEcmFnRHJvcEFyZWEpIHtcbiAgICAgICAgICAgIHRoaXMuZHJvcHpvbmVQcmV2aW91c1N0YXRlID0gaXNEcmFnRHJvcEFyZWE7XG4gICAgICAgICAgICB0aGlzLm9uRHJvcHpvbmUuZW1pdChpc0RyYWdEcm9wQXJlYSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpkcmFnbGVhdmUnLCBbJyRldmVudCddKVxuICAgIG9uRHJhZ0xlYXZlKGV2ZW50OiBEcmFnRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmRyYWduZHJvcCB8fCB0aGlzLmRpc2FibGVkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBsZWF2ZVBvc2l0aW9ucyA9IFtldmVudC5zY3JlZW5YLCBldmVudC5zY3JlZW5ZLCBldmVudC5jbGllbnRYLCBldmVudC5jbGllbnRZLCBldmVudC5wYWdlWCwgZXZlbnQucGFnZVldO1xuXG4gICAgICAgIGlmICghbGVhdmVQb3NpdGlvbnMuc29tZSgoaXRlbSkgPT4gaXRlbSA+IDApKSB7XG4gICAgICAgICAgICB0aGlzLl9tdXRlRXZlbnQoZXZlbnQpO1xuICAgICAgICAgICAgdGhpcy5kcm9wem9uZVByZXZpb3VzU3RhdGUgPSBudWxsO1xuICAgICAgICAgICAgdGhpcy5jYW5jZWwuZW1pdCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBASG9zdExpc3RlbmVyKCd3aW5kb3c6ZHJvcCcsIFsnJGV2ZW50J10pXG4gICAgb25Ecm9wKGV2ZW50OiBEcmFnRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmRyYWduZHJvcCB8fCB0aGlzLmRpc2FibGVkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmRyb3B6b25lUHJldmlvdXNTdGF0ZSA9IG51bGw7XG4gICAgICAgIHRoaXMuY2FuY2VsLmVtaXQoKTtcblxuICAgICAgICBjb25zdCBpc0RyYWdEcm9wQXJlYSA9ICEhKGV2ZW50LnRhcmdldCBpbnN0YW5jZW9mIEhUTUxFbGVtZW50ICYmIGV2ZW50LnRhcmdldC5jbG9zZXN0KHRoaXMuZWxlbWVudFNlbGVjdG9yKSk7XG4gICAgICAgIGlmICghaXNEcmFnRHJvcEFyZWEpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX211dGVFdmVudChldmVudCk7XG4gICAgICAgIGNvbnN0IHJhd0ZpbGVzID0gZXZlbnQuZGF0YVRyYW5zZmVyPy5maWxlcyA/PyBbXTtcbiAgICAgICAgY29uc3QgZmlsZXM6IEZpbGVbXSA9IEFycmF5LmZyb20ocmF3RmlsZXMpO1xuXG4gICAgICAgIGNvbnN0IG91dHB1dCA9IHRoaXMuX2ZpbGVzVmFsaWRhdG9yU2VydmljZS52YWxpZGF0aW9uKGZpbGVzLCB7XG4gICAgICAgICAgICBtYXhGaWxlU2l6ZTogdGhpcy5tYXhGaWxlU2l6ZSxcbiAgICAgICAgICAgIG1heEZpbGVOYW1lTGVuZ3RoOiB0aGlzLm1heEZpbGVuYW1lTGVuZ3RoLFxuICAgICAgICAgICAgZmlsZVR5cGVzOiB0aGlzLmZpbGVUeXBlcyxcbiAgICAgICAgICAgIG1pbWVUeXBlczogdGhpcy5taW1lVHlwZXNcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5maWxlQ2hhbmdlZC5lbWl0KG91dHB1dCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9tdXRlRXZlbnQoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Default implementation for Observable Arrays and Arrays.
|
|
3
|
-
*/
|
|
4
|
-
import { of } from 'rxjs';
|
|
5
|
-
import { DataProvider } from '@fundamental-ngx/platform/shared';
|
|
6
|
-
/**
|
|
7
|
-
* In Memory implementation of DataProvider that supports fulltext search
|
|
8
|
-
*/
|
|
9
|
-
export class UploadCollectionDataProvider extends DataProvider {
|
|
10
|
-
constructor() {
|
|
11
|
-
super(...arguments);
|
|
12
|
-
/** @hidden */
|
|
13
|
-
this.totalItems = 0;
|
|
14
|
-
/** @hidden */
|
|
15
|
-
this.list = [];
|
|
16
|
-
}
|
|
17
|
-
/** @hidden */
|
|
18
|
-
fetch(params) {
|
|
19
|
-
let currentItems = this.items;
|
|
20
|
-
const folderId = params.get('folderId');
|
|
21
|
-
if (folderId) {
|
|
22
|
-
const folder = this._findFolderById(folderId);
|
|
23
|
-
currentItems = folder ? folder.files : [];
|
|
24
|
-
}
|
|
25
|
-
let _list = this._defaultSorting(currentItems);
|
|
26
|
-
const searchText = params.get('searchText') ?? '';
|
|
27
|
-
const limit = +(params.get('limit') ?? 100);
|
|
28
|
-
const page = +(params.get('page') ?? 1);
|
|
29
|
-
if (!searchText || searchText === '*') {
|
|
30
|
-
this.list = _list;
|
|
31
|
-
this.totalItems = _list.length;
|
|
32
|
-
return of(this._getItemsByPage(_list, page, limit));
|
|
33
|
-
}
|
|
34
|
-
const keyword = searchText.toLowerCase();
|
|
35
|
-
_list = _list.filter((item) => item.name.toLowerCase().indexOf(keyword) > -1);
|
|
36
|
-
this.list = _list;
|
|
37
|
-
this.totalItems = _list.length;
|
|
38
|
-
_list = this._getItemsByPage(_list, page, limit);
|
|
39
|
-
return of(_list);
|
|
40
|
-
}
|
|
41
|
-
/** @hidden */
|
|
42
|
-
_getItemsByPage(items, page, limit) {
|
|
43
|
-
const firstDisplayedRow = (page - 1) * limit;
|
|
44
|
-
const _visibleList = items.slice(firstDisplayedRow, firstDisplayedRow + limit);
|
|
45
|
-
if (_visibleList.length === 0 && items.length > 0) {
|
|
46
|
-
this._getItemsByPage(items, page > 1 ? page - 1 : 1, limit);
|
|
47
|
-
}
|
|
48
|
-
return _visibleList;
|
|
49
|
-
}
|
|
50
|
-
/** @hidden */
|
|
51
|
-
_defaultSorting(list) {
|
|
52
|
-
let _list = [];
|
|
53
|
-
const groupByType = list.reduce((res, item) => {
|
|
54
|
-
const type = `${item.type}s`;
|
|
55
|
-
if (!res[type]) {
|
|
56
|
-
res[type] = [];
|
|
57
|
-
}
|
|
58
|
-
if (item.type === 'folder') {
|
|
59
|
-
item.fileSize = +this._getFileSize(item).toFixed(2);
|
|
60
|
-
}
|
|
61
|
-
res[type].push(item);
|
|
62
|
-
return res;
|
|
63
|
-
}, {});
|
|
64
|
-
groupByType.folders = this._sortBy(groupByType.folders, 'name');
|
|
65
|
-
groupByType.files = this._sortBy(groupByType.files, 'name');
|
|
66
|
-
if (groupByType.folders) {
|
|
67
|
-
_list = groupByType.folders;
|
|
68
|
-
}
|
|
69
|
-
else {
|
|
70
|
-
_list = [];
|
|
71
|
-
}
|
|
72
|
-
if (groupByType.files) {
|
|
73
|
-
_list.push(...groupByType.files);
|
|
74
|
-
}
|
|
75
|
-
return _list;
|
|
76
|
-
}
|
|
77
|
-
/** @hidden */
|
|
78
|
-
_getFileSize(item) {
|
|
79
|
-
if (item.type === 'file') {
|
|
80
|
-
return item.fileSize;
|
|
81
|
-
}
|
|
82
|
-
if (item.type === 'folder') {
|
|
83
|
-
return item.files.reduce((res, folderItem) => {
|
|
84
|
-
res += this._getFileSize(folderItem);
|
|
85
|
-
return res;
|
|
86
|
-
}, 0);
|
|
87
|
-
}
|
|
88
|
-
return 0;
|
|
89
|
-
}
|
|
90
|
-
/** @hidden */
|
|
91
|
-
_sortBy(items = [], key) {
|
|
92
|
-
return items.sort((a, b) => (a[key] > b[key] ? 1 : -1));
|
|
93
|
-
}
|
|
94
|
-
/** @hidden */
|
|
95
|
-
_findFolderById(folderId) {
|
|
96
|
-
let foundObj;
|
|
97
|
-
JSON.stringify(this.items, (_, nestedValue) => {
|
|
98
|
-
if (nestedValue && nestedValue.documentId === folderId) {
|
|
99
|
-
foundObj = nestedValue;
|
|
100
|
-
}
|
|
101
|
-
return nestedValue;
|
|
102
|
-
});
|
|
103
|
-
return foundObj;
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLWNvbGxlY3Rpb24tZGF0YS1wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vc3JjL2xpYi91cGxvYWQtY29sbGVjdGlvbi9kb21haW4vdXBsb2FkLWNvbGxlY3Rpb24tZGF0YS1wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFdEMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBZ0JoRTs7R0FFRztBQUNILE1BQU0sT0FBZ0IsNEJBQTZCLFNBQVEsWUFBa0M7SUFBN0Y7O1FBQ0ksY0FBYztRQUNkLGVBQVUsR0FBRyxDQUFDLENBQUM7UUFDZixjQUFjO1FBQ2QsU0FBSSxHQUEyQixFQUFFLENBQUM7SUFpSnRDLENBQUM7SUFsSEcsY0FBYztJQUNkLEtBQUssQ0FBQyxNQUFvQztRQUN0QyxJQUFJLFlBQVksR0FBMkIsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUV0RCxNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3hDLElBQUksUUFBUSxFQUFFO1lBQ1YsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUM5QyxZQUFZLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7U0FDN0M7UUFFRCxJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQy9DLE1BQU0sVUFBVSxHQUFJLE1BQU0sQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFZLElBQUksRUFBRSxDQUFDO1FBQzlELE1BQU0sS0FBSyxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFD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akQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxFQUFFLFdBQVcsRUFBRSxFQUFFO1lBQzFDLElBQUksV0FBVyxJQUFJLFdBQVcsQ0FBQyxVQUFVLEtBQUssUUFBUSxFQUFFO2dCQUNwRCxRQUFRLEdBQUcsV0FBVyxDQUFDO2FBQzFCO1lBRUQsT0FBTyxXQUFXLENBQUM7UUFDdkIsQ0FBQyxDQUFDLENBQUM7UUFFSCxPQUFPLFFBQVEsQ0FBQztJQUNwQixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIERlZmF1bHQgaW1wbGVtZW50YXRpb24gZm9yIE9ic2VydmFibGUgQXJyYXlzIGFuZCBBcnJheXMuXG4gKi9cbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IERhdGFQcm92aWRlciB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvcGxhdGZvcm0vc2hhcmVkJztcbmltcG9ydCB7XG4gICAgR3JvdXBCeVR5cGUsXG4gICAgVXBsb2FkQ29sbGVjdGlvbkZpbGUsXG4gICAgVXBsb2FkQ29sbGVjdGlvbkZvbGRlcixcbiAgICBVcGxvYWRDb2xsZWN0aW9uSXRlbSxcbiAgICBDYW5jZWxVcGxvYWROZXdGaWxlRXZlbnQsXG4gICAgRGVsZXRlRXZlbnQsXG4gICAgRG93bmxvYWRFdmVudCxcbiAgICBGaWxlUmVuYW1lZEV2ZW50LFxuICAgIE1vdmVUb0V2ZW50LFxuICAgIE5ld0ZvbGRlckV2ZW50LFxuICAgIFVwZGF0ZVZlcnNpb25FdmVudCxcbiAgICBVcGxvYWRFdmVudFxufSBmcm9tICcuLi9tb2RlbHMvdXBsb2FkLWNvbGxlY3Rpb24ubW9kZWxzJztcblxuLyoqXG4gKiBJbiBNZW1vcnkgaW1wbGVtZW50YXRpb24gb2YgRGF0YVByb3ZpZGVyIHRoYXQgc3VwcG9ydHMgZnVsbHRleHQgc2VhcmNoXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBVcGxvYWRDb2xsZWN0aW9uRGF0YVByb3ZpZGVyIGV4dGVuZHMgRGF0YVByb3ZpZGVyPFVwbG9hZENvbGxlY3Rpb25JdGVtPiB7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICB0b3RhbEl0ZW1zID0gMDtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGxpc3Q6IFVwbG9hZENvbGxlY3Rpb25JdGVtW10gPSBbXTtcblxuICAgIGFic3RyYWN0IGl0ZW1zOiBVcGxvYWRDb2xsZWN0aW9uSXRlbVtdO1xuXG4gICAgLyoqIFRoZSBtZXRob2QgaXMgdHJpZ2dlcmVkIHdoZW4gdmFsaWQgZmlsZXMgYXJlIHNlbGVjdGVkIGluIHRoZSBmaWxlIHVwbG9hZGVyIGRpYWxvZy4gKi9cbiAgICBhYnN0cmFjdCB1cGxvYWQoZGF0YTogVXBsb2FkRXZlbnQpOiBPYnNlcnZhYmxlPFVwbG9hZENvbGxlY3Rpb25JdGVtW10+O1xuXG4gICAgLyoqIFRoZSBtZXRob2QgaXMgdHJpZ2dlcmVkIHdoZW4gYW4gdXBsb2FkZWQgYXR0YWNobWVudCBpcyBzZWxlY3RlZCBhbmQgdGhlIERvd25sb2FkIGJ1dHRvbiBpcyBwcmVzc2VkLiAqL1xuICAgIGFic3RyYWN0IGRvd25sb2FkKGRhdGE6IERvd25sb2FkRXZlbnQpOiBPYnNlcnZhYmxlPHZvaWQ+O1xuXG4gICAgLyoqIFRoZSBtZXRob2QgaXMgdHJpZ2dlcmVkIHdoZW4gTW92ZSB0byBidXR0b24gaXMgcHJlc3NlZCBhbmQgZm9sZGVyIHRvIG1vdmUgaXMgc2VsZWN0ZWQgaW4gdGhlIGRpYWxvZyBtb2RhbC4gKi9cbiAgICBhYnN0cmFjdCBtb3ZlVG8oZGF0YTogTW92ZVRvRXZlbnQpOiBPYnNlcnZhYmxlPFVwbG9hZENvbGxlY3Rpb25JdGVtW10+O1xuXG4gICAgLyoqIFRoZSBtZXRob2QgaXMgdHJpZ2dlcmVkIHdoZW4gYW4gdXBsb2FkZWQgYXR0YWNobWVudCBpcyBzZWxlY3RlZCBhbmQgdGhlIERlbGV0ZSBidXR0b24gaXMgcHJlc3NlZC4gKi9cbiAgICBhYnN0cmFjdCBkZWxldGUoZGF0YTogRGVsZXRlRXZlbnQpOiBPYnNlcnZhYmxlPFVwbG9hZENvbGxlY3Rpb25JdGVtW10+O1xuXG4gICAgLyoqIFRoZSBtZXRob2QgaXMgdHJpZ2dlcmVkIHdoZW4gdGhlIGZpbGUgbmFtZSBpcyBjaGFuZ2VkLiAqL1xuICAgIGFic3RyYWN0IGZpbGVSZW5hbWVkKGRhdGE6IEZpbGVSZW5hbWVkRXZlbnQpOiBPYnNlcnZhYmxlPFVwbG9hZENvbGxlY3Rpb25JdGVtW10+O1xuXG4gICAgLyoqIFRoZSBtZXRob2QgaXMgdHJpZ2dlcmVkIHdoZW4gdGhlIG5ldyBmb2xkZXIgYWRkZWQuICovXG4gICAgYWJzdHJhY3QgbmV3Rm9sZGVyKGRhdGE6IE5ld0ZvbGRlckV2ZW50KTogT2JzZXJ2YWJsZTxVcGxvYWRDb2xsZWN0aW9uSXRlbVtdPjtcblxuICAgIC8qKiBUaGUgbWV0aG9kIGlzIHRyaWdnZXJlZCB3aGVuIFVwZGF0ZSBWZXJzaW9uIGJ1dHRvbiBpcyBwcmVzc2VkIGFuZCB2YWxpZCBmaWxlIGFyZSBzZWxlY3RlZCBpbiB0aGUgZmlsZSB1cGxvYWRlciBkaWFsb2cuICovXG4gICAgYWJzdHJhY3QgdXBkYXRlVmVyc2lvbihkYXRhOiBVcGRhdGVWZXJzaW9uRXZlbnQpOiBPYnNlcnZhYmxlPFVwbG9hZENvbGxlY3Rpb25JdGVtW10+O1xuXG4gICAgLyoqIFRoZSBtZXRob2QgaXMgdHJpZ2dlcmVkIHdoZW4gUnVuIGJ1dHRvbiBpcyBwcmVzc2VkICovXG4gICAgYWJzdHJhY3QgcnVuQWZ0ZXJGYWlsKGRhdGE6IFVwbG9hZEV2ZW50KTogT2JzZXJ2YWJsZTxVcGxvYWRDb2xsZWN0aW9uSXRlbVtdPjtcblxuICAgIC8qKiBUaGUgbWV0aG9kIGlzIHRyaWdnZXJlZCB3aGVuIENhbmNlbCBidXR0b24gaXMgcHJlc3NlZCAqL1xuICAgIGFic3RyYWN0IGNhbmNlbFVwbG9hZE5ld0ZpbGUoZGF0YTogQ2FuY2VsVXBsb2FkTmV3RmlsZUV2ZW50KTogT2JzZXJ2YWJsZTxVcGxvYWRDb2xsZWN0aW9uSXRlbVtdPjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgZmV0Y2gocGFyYW1zOiBNYXA8c3RyaW5nLCBzdHJpbmcgfCBudW1iZXI+KTogT2JzZXJ2YWJsZTxVcGxvYWRDb2xsZWN0aW9uSXRlbVtdPiB7XG4gICAgICAgIGxldCBjdXJyZW50SXRlbXM6IFVwbG9hZENvbGxlY3Rpb25JdGVtW10gPSB0aGlzLml0ZW1zO1xuXG4gICAgICAgIGNvbnN0IGZvbGRlcklkID0gcGFyYW1zLmdldCgnZm9sZGVySWQnKTtcbiAgICAgICAgaWYgKGZvbGRlcklkKSB7XG4gICAgICAgICAgICBjb25zdCBmb2xkZXIgPSB0aGlzLl9maW5kRm9sZGVyQnlJZChmb2xkZXJJZCk7XG4gICAgICAgICAgICBjdXJyZW50SXRlbXMgPSBmb2xkZXIgPyBmb2xkZXIuZmlsZXMgOiBbXTtcbiAgICAgICAgfVxuXG4gICAgICAgIGxldCBfbGlzdCA9IHRoaXMuX2RlZmF1bHRTb3J0aW5nKGN1cnJlbnRJdGVtcyk7XG4gICAgICAgIGNvbnN0IHNlYXJjaFRleHQgPSAocGFyYW1zLmdldCgnc2VhcmNoVGV4dCcpIGFzIHN0cmluZykgPz8gJyc7XG4gICAgICAgIGNvbnN0IGxpbWl0ID0gKyhwYXJhbXMuZ2V0KCdsaW1pdCcpID8/ICgxMDAgYXMgbnVtYmVyKSk7XG4gICAgICAgIGNvbnN0IHBhZ2UgPSArKHBhcmFtcy5nZXQoJ3BhZ2UnKSA/PyAxKTtcblxuICAgICAgICBpZiAoIXNlYXJjaFRleHQgfHwgc2VhcmNoVGV4dCA9PT0gJyonKSB7XG4gICAgICAgICAgICB0aGlzLmxpc3QgPSBfbGlzdDtcbiAgICAgICAgICAgIHRoaXMudG90YWxJdGVtcyA9IF9saXN0Lmxlbmd0aDtcblxuICAgICAgICAgICAgcmV0dXJuIG9mKHRoaXMuX2dldEl0ZW1zQnlQYWdlKF9saXN0LCBwYWdlLCBsaW1pdCkpO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qga2V5d29yZCA9IHNlYXJjaFRleHQudG9Mb3dlckNhc2UoKTtcbiAgICAgICAgX2xpc3QgPSBfbGlzdC5maWx0ZXIoKGl0ZW0pID0+IGl0ZW0ubmFtZS50b0xvd2VyQ2FzZSgpLmluZGV4T2Yoa2V5d29yZCkgPiAtMSk7XG4gICAgICAgIHRoaXMubGlzdCA9IF9saXN0O1xuICAgICAgICB0aGlzLnRvdGFsSXRlbXMgPSBfbGlzdC5sZW5ndGg7XG5cbiAgICAgICAgX2xpc3QgPSB0aGlzLl9nZXRJdGVtc0J5UGFnZShfbGlzdCwgcGFnZSwgbGltaXQpO1xuXG4gICAgICAgIHJldHVybiBvZihfbGlzdCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9nZXRJdGVtc0J5UGFnZShpdGVtczogVXBsb2FkQ29sbGVjdGlvbkl0ZW1bXSwgcGFnZTogbnVtYmVyLCBsaW1pdDogbnVtYmVyKTogVXBsb2FkQ29sbGVjdGlvbkl0ZW1bXSB7XG4gICAgICAgIGNvbnN0IGZpcnN0RGlzcGxheWVkUm93ID0gKHBhZ2UgLSAxKSAqIGxpbWl0O1xuICAgICAgICBjb25zdCBfdmlzaWJsZUxpc3QgPSBpdGVtcy5zbGljZShmaXJzdERpc3BsYXllZFJvdywgZmlyc3REaXNwbGF5ZWRSb3cgKyBsaW1pdCk7XG5cbiAgICAgICAgaWYgKF92aXNpYmxlTGlzdC5sZW5ndGggPT09IDAgJiYgaXRlbXMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgdGhpcy5fZ2V0SXRlbXNCeVBhZ2UoaXRlbXMsIHBhZ2UgPiAxID8gcGFnZSAtIDEgOiAxLCBsaW1pdCk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gX3Zpc2libGVMaXN0O1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfZGVmYXVsdFNvcnRpbmcobGlzdDogVXBsb2FkQ29sbGVjdGlvbkl0ZW1bXSk6IFVwbG9hZENvbGxlY3Rpb25JdGVtW10ge1xuICAgICAgICBsZXQgX2xpc3Q6IFVwbG9hZENvbGxlY3Rpb25JdGVtW10gPSBbXTtcbiAgICAgICAgY29uc3QgZ3JvdXBCeVR5cGU6IEdyb3VwQnlUeXBlID0gbGlzdC5yZWR1Y2UoKHJlczogR3JvdXBCeVR5cGUsIGl0ZW06IFVwbG9hZENvbGxlY3Rpb25JdGVtKSA9PiB7XG4gICAgICAgICAgICBjb25zdCB0eXBlID0gYCR7aXRlbS50eXBlfXNgO1xuXG4gICAgICAgICAgICBpZiAoIXJlc1t0eXBlXSkge1xuICAgICAgICAgICAgICAgIHJlc1t0eXBlXSA9IFtdO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoaXRlbS50eXBlID09PSAnZm9sZGVyJykge1xuICAgICAgICAgICAgICAgIGl0ZW0uZmlsZVNpemUgPSArdGhpcy5fZ2V0RmlsZVNpemUoaXRlbSkudG9GaXhlZCgyKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmVzW3R5cGVdLnB1c2goaXRlbSk7XG5cbiAgICAgICAgICAgIHJldHVybiByZXM7XG4gICAgICAgIH0sIHt9IGFzIEdyb3VwQnlUeXBlKTtcblxuICAgICAgICBncm91cEJ5VHlwZS5mb2xkZXJzID0gdGhpcy5fc29ydEJ5KGdyb3VwQnlUeXBlLmZvbGRlcnMsICduYW1lJykgYXMgVXBsb2FkQ29sbGVjdGlvbkZvbGRlcltdO1xuICAgICAgICBncm91cEJ5VHlwZS5maWxlcyA9IHRoaXMuX3NvcnRCeShncm91cEJ5VHlwZS5maWxlcywgJ25hbWUnKSBhcyBVcGxvYWRDb2xsZWN0aW9uRmlsZVtdO1xuXG4gICAgICAgIGlmIChncm91cEJ5VHlwZS5mb2xkZXJzKSB7XG4gICAgICAgICAgICBfbGlzdCA9IGdyb3VwQnlUeXBlLmZvbGRlcnM7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBfbGlzdCA9IFtdO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGdyb3VwQnlUeXBlLmZpbGVzKSB7XG4gICAgICAgICAgICBfbGlzdC5wdXNoKC4uLmdyb3VwQnlUeXBlLmZpbGVzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBfbGlzdDtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2dldEZpbGVTaXplKGl0ZW06IFVwbG9hZENvbGxlY3Rpb25JdGVtKTogbnVtYmVyIHtcbiAgICAgICAgaWYgKGl0ZW0udHlwZSA9PT0gJ2ZpbGUnKSB7XG4gICAgICAgICAgICByZXR1cm4gaXRlbS5maWxlU2l6ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChpdGVtLnR5cGUgPT09ICdmb2xkZXInKSB7XG4gICAgICAgICAgICByZXR1cm4gaXRlbS5maWxlcy5yZWR1Y2UoKHJlcywgZm9sZGVySXRlbSkgPT4ge1xuICAgICAgICAgICAgICAgIHJlcyArPSB0aGlzLl9nZXRGaWxlU2l6ZShmb2xkZXJJdGVtKTtcblxuICAgICAgICAgICAgICAgIHJldHVybiByZXM7XG4gICAgICAgICAgICB9LCAwKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gMDtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3NvcnRCeShpdGVtczogVXBsb2FkQ29sbGVjdGlvbkl0ZW1bXSA9IFtdLCBrZXk6IHN0cmluZyk6IFVwbG9hZENvbGxlY3Rpb25JdGVtW10ge1xuICAgICAgICByZXR1cm4gaXRlbXMuc29ydCgoYSwgYikgPT4gKGFba2V5XSA+IGJba2V5XSA/IDEgOiAtMSkpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfZmluZEZvbGRlckJ5SWQoZm9sZGVySWQ6IG51bWJlciB8IHN0cmluZyk6IFVwbG9hZENvbGxlY3Rpb25Gb2xkZXIgfCB1bmRlZmluZWQge1xuICAgICAgICBsZXQgZm91bmRPYmo6IFVwbG9hZENvbGxlY3Rpb25Gb2xkZXIgfCB1bmRlZmluZWQ7XG5cbiAgICAgICAgSlNPTi5zdHJpbmdpZnkodGhpcy5pdGVtcywgKF8sIG5lc3RlZFZhbHVlKSA9PiB7XG4gICAgICAgICAgICBpZiAobmVzdGVkVmFsdWUgJiYgbmVzdGVkVmFsdWUuZG9jdW1lbnRJZCA9PT0gZm9sZGVySWQpIHtcbiAgICAgICAgICAgICAgICBmb3VuZE9iaiA9IG5lc3RlZFZhbHVlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gbmVzdGVkVmFsdWU7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiBmb3VuZE9iajtcbiAgICB9XG59XG4iXX0=
|