barsa-sap-ui 1.0.456 → 2.0.2
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/{esm2020 → esm2022}/barsa-sap-ui.mjs +4 -4
- package/esm2022/lib/apply-conditional-formmatings.directive.mjs +89 -0
- package/esm2022/lib/barsa-answer-card/barsa-answer-card.component.mjs +41 -0
- package/esm2022/lib/barsa-asp-viewer/barsa-asp-viewer.component.mjs +141 -0
- package/{esm2020 → esm2022}/lib/barsa-bar-panel/barsa-bar-panel.component.mjs +23 -23
- package/esm2022/lib/barsa-base-panel/barsa-base-layout-panel.component.mjs +29 -0
- package/esm2022/lib/barsa-card-layout-panel/barsa-card-layout-panel.component.mjs +24 -0
- package/esm2022/lib/barsa-card-row-payam/barsa-card-row-payam.component.mjs +30 -0
- package/esm2022/lib/barsa-cartable-form/barsa-cartable-form.component.mjs +41 -0
- package/{esm2020 → esm2022}/lib/barsa-cartable-template/barsa-cartable-template.component.mjs +24 -24
- package/esm2022/lib/barsa-chat/barsa-chat.component.mjs +260 -0
- package/esm2022/lib/barsa-chat/chat.model.mjs +8 -0
- package/esm2022/lib/barsa-chat-content/barsa-chat-content.component.mjs +13 -0
- package/esm2022/lib/barsa-chat-content-toolbar/barsa-chat-content-toolbar.component.mjs +22 -0
- package/esm2022/lib/barsa-chat-list/barsa-chat-list.component.mjs +56 -0
- package/esm2022/lib/barsa-chat-message/barsa-chat-message.component.mjs +77 -0
- package/esm2022/lib/barsa-chat-thread/barsa-chat-thread.component.mjs +22 -0
- package/esm2022/lib/barsa-chat-threads-list/barsa-chat-threads-list.component.mjs +13 -0
- package/esm2022/lib/barsa-chat-threads-list-toolbar/barsa-chat-threads-list-toolbar.component.mjs +15 -0
- package/esm2022/lib/barsa-chip/barsa-chip.component.mjs +72 -0
- package/{esm2020 → esm2022}/lib/barsa-column-indicator/barsa-column-indicator.component.mjs +23 -23
- package/{esm2020 → esm2022}/lib/barsa-column-rownumber/barsa-column-rownumber.component.mjs +15 -15
- package/esm2022/lib/barsa-custom-inline-edit/barsa-custom-inline-edit.component.mjs +14 -0
- package/esm2022/lib/barsa-custom-inline-edit-row/barsa-custom-inline-edit-row.component.mjs +26 -0
- package/esm2022/lib/barsa-date-time-picker/barsa-date-time-picker.component.mjs +71 -0
- package/esm2022/lib/barsa-dynamic-field/barsa-dynamic-field.component.mjs +41 -0
- package/esm2022/lib/barsa-enum-menu-button/barsa-enum-menu-button.component.mjs +61 -0
- package/esm2022/lib/barsa-field-key-value/barsa-field-key-value.component.mjs +45 -0
- package/esm2022/lib/barsa-form-side-content/barsa-form-side-content.component.mjs +37 -0
- package/esm2022/lib/barsa-grid-layout-panel/barsa-grid-layout-panel.component.mjs +27 -0
- package/esm2022/lib/barsa-group-cartable/barsa-cartable-group.component.mjs +94 -0
- package/esm2022/lib/barsa-horizontal-flex-panel/barsa-horizontal-flex-panel.component.mjs +22 -0
- package/esm2022/lib/barsa-linkable-items-panel/barsa-linkable-items-panel.component.mjs +37 -0
- package/esm2022/lib/barsa-list-file-linear/barsa-list-file-linear.component.mjs +41 -0
- package/esm2022/lib/barsa-list-file-linear-gmail/barsa-list-file-linear-gmail.component.mjs +29 -0
- package/esm2022/lib/barsa-list-layout-panel/barsa-list-layout-panel.component.mjs +23 -0
- package/esm2022/lib/barsa-monaco-editor/barsa-monaco-editor.component.mjs +83 -0
- package/esm2022/lib/barsa-network-offline/barsa-network-offline.component.mjs +53 -0
- package/esm2022/lib/barsa-pishnamayesh-payam/barsa-pishnamayesh-payam.component.mjs +159 -0
- package/esm2022/lib/barsa-question-answer-comments-section/barsa-question-answer-comments-section.component.mjs +17 -0
- package/esm2022/lib/barsa-question-answer-content-actions-section/barsa-question-answer-content-actions-section.component.mjs +30 -0
- package/esm2022/lib/barsa-question-answer-creator-time-section/barsa-question-answer-creator-time-section.component.mjs +14 -0
- package/esm2022/lib/barsa-question-answer-form/barsa-question-answer-form.component.mjs +34 -0
- package/esm2022/lib/barsa-question-answer-form-add-comment/barsa-question-answer-form-add-comment.component.mjs +46 -0
- package/esm2022/lib/barsa-question-answer-vote-section/barsa-question-answer-vote-section.component.mjs +79 -0
- package/esm2022/lib/barsa-question-post/barsa-question-post.component.mjs +30 -0
- package/esm2022/lib/barsa-report-card-flex-view/barsa-report-card-flex-view.component.mjs +31 -0
- package/{esm2020 → esm2022}/lib/barsa-report-checkbox-switch-button/barsa-report-checkbox-switch-button.component.mjs +28 -28
- package/esm2022/lib/barsa-report-one-of-list/barsa-report-one-of-list.component.mjs +98 -0
- package/{esm2020 → esm2022}/lib/barsa-sap-ui-routing.module.mjs +18 -18
- package/esm2022/lib/barsa-sap-ui.module.mjs +360 -0
- package/esm2022/lib/barsa-search-form/barsa-search-form.component.mjs +29 -0
- package/esm2022/lib/barsa-simple-form/barsa-simple-form.component.mjs +168 -0
- package/esm2022/lib/barsa-table-column/barsa-table-column.component.mjs +27 -0
- package/esm2022/lib/barsa-table-header/barsa-table-header.component.mjs +198 -0
- package/esm2022/lib/barsa-table-row/barsa-table-row.component.mjs +63 -0
- package/esm2022/lib/barsa-tag-categories/barsa-tag-categories.component.mjs +60 -0
- package/esm2022/lib/barsa-tag-chip/barsa-tag-chip.component.mjs +26 -0
- package/esm2022/lib/barsa-tags-category-row/barsa-tags-category-row.component.mjs +23 -0
- package/esm2022/lib/barsa-text-ellipsis/barsa-text-ellipsis.component.mjs +37 -0
- package/esm2022/lib/barsa-tinyemce/barsa-tinyemce.component.mjs +417 -0
- package/esm2022/lib/barsa-toolbaritem-search/barsa-toolbaritem-search.component.mjs +36 -0
- package/esm2022/lib/barsa-tree-item/barsa-tree-item.component.mjs +129 -0
- package/{esm2020 → esm2022}/lib/barsa-tree-item/node-has-one-depth-level.pipe.mjs +19 -19
- package/esm2022/lib/barsa-ulv-main/barsa-ulv-main.component.mjs +208 -0
- package/esm2022/lib/blob-viewer/blob-viewer.component.mjs +78 -0
- package/esm2022/lib/breadcrumb/breadcrumb.component.mjs +44 -0
- package/{esm2020 → esm2022}/lib/captcha-field/captcha-field.component.mjs +28 -28
- package/esm2022/lib/card-item/card-item.component.mjs +76 -0
- package/esm2022/lib/card-view-content/card-view-content.component.mjs +46 -0
- package/esm2022/lib/col-renderer.directive.mjs +46 -0
- package/esm2022/lib/column-matrix-renderer/column-matrix-renderer.component.mjs +56 -0
- package/esm2022/lib/column-matrix-renderer/matrix-value.pipe.mjs +60 -0
- package/esm2022/lib/column-renderer/column-renderer.component.mjs +85 -0
- package/esm2022/lib/constants.mjs +421 -0
- package/esm2022/lib/custom-date-time/custom-date-time.component.mjs +41 -0
- package/{esm2020 → esm2022}/lib/device-info-field-base.mjs +23 -23
- package/{esm2020 → esm2022}/lib/dialog-handler.directive.mjs +28 -28
- package/esm2022/lib/download-files.directive.mjs +33 -0
- package/esm2022/lib/dynamic-page-size.pipe.mjs +26 -0
- package/{esm2020 → esm2022}/lib/file-in-dialog/file-in-dialog.component.mjs +44 -44
- package/esm2022/lib/file-viewer/file-viewer.component.mjs +39 -0
- package/{esm2020 → esm2022}/lib/file-viewer-content/file-viewer-content.component.mjs +53 -53
- package/esm2022/lib/file-viewer-popover/file-viewer-popover.component.mjs +41 -0
- package/esm2022/lib/form-dialog/form-dialog.component.mjs +142 -0
- package/esm2022/lib/form-dialog-less/form-dialog-less.component.mjs +44 -0
- package/esm2022/lib/form-toolbar/form-toolbar.component.mjs +43 -0
- package/esm2022/lib/form-toolbar-button/form-toolbar-button.component.mjs +45 -0
- package/esm2022/lib/form-wizard/form-wizard.component.mjs +21 -0
- package/esm2022/lib/fullscreen-dialog.directive.mjs +59 -0
- package/esm2022/lib/fullscreen-files.directive.mjs +42 -0
- package/esm2022/lib/fundamental-dynamic-form/fundamental-dynamic-form.component.mjs +194 -0
- package/esm2022/lib/gantt-dhtml-chart-view/gantt-dhtml-chart-view.component.mjs +203 -0
- package/{esm2020 → esm2022}/lib/global-search/global-search.component.mjs +27 -27
- package/esm2022/lib/global-search-module/global-search-module.component.mjs +29 -0
- package/esm2022/lib/global-search-panel/global-search-panel.component.mjs +25 -0
- package/esm2022/lib/header-avatar/header-avatar.component.mjs +18 -0
- package/{esm2020 → esm2022}/lib/header-facet-form/header-facet-form.component.mjs +22 -22
- package/{esm2020 → esm2022}/lib/header-facet-key-value/header-facet-key-value.component.mjs +31 -31
- package/{esm2020 → esm2022}/lib/header-facet-microchart/header-facet-microchart.component.mjs +21 -21
- package/{esm2020 → esm2022}/lib/header-facet-plain-text/header-facet-plain-text.component.mjs +28 -28
- package/esm2022/lib/header-facet-progress/header-facet-progress.component.mjs +25 -0
- package/esm2022/lib/header-facet-rate/header-facet-rate.component.mjs +25 -0
- package/esm2022/lib/htree-create-new/htree-create-new.component.mjs +48 -0
- package/esm2022/lib/hyperlink/hyperlink.component.mjs +23 -0
- package/esm2022/lib/index.mjs +564 -0
- package/{esm2020 → esm2022}/lib/inline-save-and-cancel/inline-save-and-cancel.component.mjs +32 -32
- package/esm2022/lib/layout-actions/layout-actions.component.mjs +68 -0
- package/esm2022/lib/layout-control/layout-control.component.mjs +234 -0
- package/esm2022/lib/layout-wizard/layout-wizard.component.mjs +154 -0
- package/esm2022/lib/list-item/list-item.component.mjs +34 -0
- package/esm2022/lib/ly-empty-space/ly-empty-space.component.mjs +42 -0
- package/esm2022/lib/ly-horizontal-layout/ly-horizontal-layout.component.mjs +71 -0
- package/esm2022/lib/ly-label/ly-label.component.mjs +34 -0
- package/esm2022/lib/ly-layout-container/ly-layout-container.component.mjs +83 -0
- package/esm2022/lib/ly-layout-container-of-root/ly-layout-container-of-root.component.mjs +17 -0
- package/{esm2020 → esm2022}/lib/ly-layout-field-label/ly-layout-field-label.component.mjs +24 -24
- package/esm2022/lib/ly-layout-panel/ly-layout-panel.component.mjs +73 -0
- package/esm2022/lib/ly-line/ly-line.component.mjs +56 -0
- package/esm2022/lib/ly-simple-label/ly-simple-label.component.mjs +22 -0
- package/esm2022/lib/ly-tab-container/ly-tab-container.component.mjs +52 -0
- package/esm2022/lib/ly-tab-page/ly-tab-page.component.mjs +44 -0
- package/esm2022/lib/ly-vertical-layout/ly-vertical-layout.component.mjs +50 -0
- package/esm2022/lib/manage-filters-report/manage-filters-report.component.mjs +43 -0
- package/{esm2020 → esm2022}/lib/mask/mask.component.mjs +22 -22
- package/esm2022/lib/message-strip/message-strip.component.mjs +28 -0
- package/esm2022/lib/models/grid-data-provider.mjs +83 -0
- package/esm2022/lib/models/grid-view.mjs +2 -0
- package/{esm2020 → esm2022}/lib/models/index.mjs +1 -1
- package/esm2022/lib/no-data/no-data.component.mjs +31 -0
- package/esm2022/lib/notification-item/notification-item.component.mjs +57 -0
- package/esm2022/lib/notification-popup.service.mjs +92 -0
- package/{esm2020 → esm2022}/lib/progress-indicator/progress-indicator.component.mjs +18 -18
- package/esm2022/lib/report-navigator/report-navigator.component.mjs +63 -0
- package/esm2022/lib/report-new-top-form/report-new-top-form.component.mjs +60 -0
- package/esm2022/lib/report-search-fields-hidden-settings/report-search-fields-hidden-settings.component.mjs +35 -0
- package/esm2022/lib/report-search-fields-manage/report-search-fields-manage.component.mjs +97 -0
- package/esm2022/lib/report-search-panel-save/report-search-panel-save.component.mjs +88 -0
- package/esm2022/lib/report-tree-base.mjs +408 -0
- package/esm2022/lib/report-view-renderer.directive.mjs +366 -0
- package/esm2022/lib/responsive-toolbar/responsive-toolbar.component.mjs +50 -0
- package/esm2022/lib/responsive-toolbar-renderer/responsive-toolbar-renderer.component.mjs +84 -0
- package/esm2022/lib/rich-text-static/rich-text-static.component.mjs +72 -0
- package/esm2022/lib/sap-font-class.pipe.mjs +29 -0
- package/esm2022/lib/sap-font.pipe.mjs +29 -0
- package/esm2022/lib/sap-size.pipe.mjs +27 -0
- package/esm2022/lib/sap-ui-report-base.component.mjs +765 -0
- package/esm2022/lib/search-panel/search-panel.component.mjs +42 -0
- package/{esm2020 → esm2022}/lib/static-text/static-text.component.mjs +15 -15
- package/{esm2020 → esm2022}/lib/title/title.component.mjs +15 -15
- package/{esm2020 → esm2022}/lib/ui-asp-report-viewer/ui-asp-report-viewer.component.mjs +18 -18
- package/esm2022/lib/ui-button/ui-button.component.mjs +31 -0
- package/esm2022/lib/ui-calendar/ui-calendar.component.mjs +53 -0
- package/esm2022/lib/ui-card-view/ui-card-view.component.mjs +59 -0
- package/esm2022/lib/ui-card-view-horizontal-group/ui-card-view-horizontal-group.component.mjs +42 -0
- package/esm2022/lib/ui-check-box/ui-check-box.component.mjs +34 -0
- package/esm2022/lib/ui-color-ui/ui-color-ui.component.mjs +50 -0
- package/esm2022/lib/ui-container-with-button/ui-container-with-button.component.mjs +34 -0
- package/esm2022/lib/ui-date-range-ex/ui-date-range-ex.component.mjs +191 -0
- package/esm2022/lib/ui-date-time/ui-date-time.component.mjs +149 -0
- package/esm2022/lib/ui-editable-grid/ui-editable-grid.component.mjs +110 -0
- package/esm2022/lib/ui-exception-form/ui-exception-form.component.mjs +53 -0
- package/esm2022/lib/ui-file-linear-list-box/ui-file-linear-list-box.component.mjs +121 -0
- package/esm2022/lib/ui-form-panel/ui-form-panel.component.mjs +92 -0
- package/{esm2020 → esm2022}/lib/ui-gantt-chart/ui-gantt-chart.component.mjs +32 -32
- package/{esm2020 → esm2022}/lib/ui-graph/ui-graph.component.mjs +17 -17
- package/{esm2020 → esm2022}/lib/ui-grid/ui-grid.component.mjs +25 -25
- package/esm2022/lib/ui-grid-columns/ui-grid-columns.component.mjs +43 -0
- package/esm2022/lib/ui-grid-filter-item/ui-grid-filter-item.component.mjs +66 -0
- package/esm2022/lib/ui-grid-filter-settings/ui-grid-filter-settings.component.mjs +75 -0
- package/esm2022/lib/ui-grid-sort-item/ui-grid-sort-item.component.mjs +58 -0
- package/esm2022/lib/ui-grid-sort-setting/ui-grid-sort-setting.component.mjs +155 -0
- package/{esm2020 → esm2022}/lib/ui-html-viewer/ui-html-viewer.component.mjs +16 -16
- package/{esm2020 → esm2022}/lib/ui-info-bar-panel/ui-info-bar-panel.component.mjs +11 -11
- package/{esm2020 → esm2022}/lib/ui-label/ui-label.component.mjs +12 -12
- package/esm2022/lib/ui-linear-list-container-with-button/ui-linear-list-container-with-button.component.mjs +349 -0
- package/esm2022/lib/ui-list-view/ui-list-view.component.mjs +75 -0
- package/esm2022/lib/ui-matrix-view/ui-matrix-view.component.mjs +124 -0
- package/esm2022/lib/ui-mo-info-combo-viewer/ui-mo-info-combo-viewer.component.mjs +19 -0
- package/{esm2020 → esm2022}/lib/ui-mo-info-general-object-ui/ui-mo-info-general-object-ui.component.mjs +14 -14
- package/esm2022/lib/ui-mo-info-sub-form-ui/ui-mo-info-sub-form-ui.component.mjs +55 -0
- package/esm2022/lib/ui-mo-info-ulv-combo/ui-mo-info-ulv-combo.component.mjs +430 -0
- package/esm2022/lib/ui-monaco-editor/ui-monaco-editor.component.mjs +28 -0
- package/esm2022/lib/ui-multi-select-card/ui-multi-select-card.component.mjs +37 -0
- package/esm2022/lib/ui-multi-select-checkbox/ui-multi-select-checkbox.component.mjs +59 -0
- package/esm2022/lib/ui-multi-select-combo/ui-multi-select-combo.component.mjs +93 -0
- package/esm2022/lib/ui-multi-select-radio/ui-multi-select-radio.component.mjs +36 -0
- package/esm2022/lib/ui-multi-select-slider/ui-multi-select-slider.component.mjs +56 -0
- package/esm2022/lib/ui-multi-select-smile/ui-multi-select-smile.component.mjs +28 -0
- package/esm2022/lib/ui-num-decimal-ui/ui-num-decimal-ui.component.mjs +24 -0
- package/esm2022/lib/ui-num-int-slider/ui-num-int-slider.component.mjs +27 -0
- package/{esm2020 → esm2022}/lib/ui-num-int-ui/ui-num-int-ui.component.mjs +21 -21
- package/esm2022/lib/ui-pdf-viewer/ui-pdf-viewer.component.mjs +261 -0
- package/esm2022/lib/ui-picture-file/ui-picture-file.component.mjs +98 -0
- package/esm2022/lib/ui-pictures-info/ui-pictures-info.component.mjs +223 -0
- package/esm2022/lib/ui-radio-group/ui-radio-group.component.mjs +48 -0
- package/esm2022/lib/ui-read-only-field/ui-read-only-field.component.mjs +36 -0
- package/esm2022/lib/ui-report-container/ui-report-container.component.mjs +46 -0
- package/{esm2020 → esm2022}/lib/ui-search-command-info-ui/ui-search-command-info-ui.component.mjs +24 -24
- package/esm2022/lib/ui-simple-combo/ui-simple-combo.component.mjs +37 -0
- package/{esm2020 → esm2022}/lib/ui-single-picture/ui-single-picture.component.mjs +36 -36
- package/esm2022/lib/ui-switch-button/ui-switch-button.component.mjs +20 -0
- package/esm2022/lib/ui-table-view/ui-table-view.component.mjs +155 -0
- package/esm2022/lib/ui-text-area/ui-text-area.component.mjs +49 -0
- package/esm2022/lib/ui-text-field/ui-text-field.component.mjs +52 -0
- package/{esm2020 → esm2022}/lib/ui-text-field-auto-complete/ui-text-field-auto-complete.component.mjs +47 -47
- package/{esm2020 → esm2022}/lib/ui-time-span/ui-time-span.component.mjs +24 -24
- package/esm2022/lib/ui-tinymce/ui-tinymce.component.mjs +53 -0
- package/esm2022/lib/ui-tree/ui-tree.component.mjs +92 -0
- package/esm2022/lib/ui-tree-view/ui-tree-view.component.mjs +80 -0
- package/esm2022/lib/ui-ulv-form-multi-select-ui/ui-ulv-form-multi-select-ui.component.mjs +23 -0
- package/esm2022/lib/ui-ulv-main-ui/ui-ulv-main-ui.component.mjs +289 -0
- package/esm2022/lib/ui-workflow-panel-ui/ui-workflow-panel-ui.component.mjs +25 -0
- package/esm2022/lib/ul-loading-mask-ui/ul-loading-mask-ui.component.mjs +93 -0
- package/esm2022/lib/ul-msg-box-adapter/ul-msg-box-adapter.component.mjs +117 -0
- package/esm2022/lib/ul-notify-popup/ul-notify-popup.component.mjs +32 -0
- package/esm2022/lib/ul-toast-adapter/ul-toast-adapter.component.mjs +48 -0
- package/esm2022/lib/ulv-column-settings/ulv-column-settings.component.mjs +60 -0
- package/esm2022/lib/ulv-context-menu/ulv-context-menu.component.mjs +87 -0
- package/esm2022/lib/ulv-filter-settings/ulv-filter-settings.component.mjs +43 -0
- package/esm2022/lib/ulv-form-multi-select/ulv-form-multi-select.component.mjs +184 -0
- package/esm2022/lib/ulv-groupby-settings/ulv-groupby-settings.component.mjs +44 -0
- package/esm2022/lib/ulv-paging/ulv-paging.component.mjs +84 -0
- package/esm2022/lib/ulv-selection/ulv-selection.component.mjs +65 -0
- package/esm2022/lib/ulv-settings/ulv-settings.component.mjs +116 -0
- package/esm2022/lib/ulv-sort-settings/ulv-sort-settings.component.mjs +44 -0
- package/esm2022/lib/ulv-toolbar/ulv-toolbar.component.mjs +115 -0
- package/esm2022/lib/upload-file-status.pipe.mjs +28 -0
- package/esm2022/lib/util-chat-time-badge.pipe.mjs +18 -0
- package/esm2022/lib/util-date-to-hh-mm.pipe.mjs +23 -0
- package/{esm2020 → esm2022}/lib/wizard-layout.directive.mjs +103 -103
- package/{esm2020 → esm2022}/public-api.mjs +230 -222
- package/fesm2022/barsa-sap-ui.mjs +14765 -0
- package/fesm2022/barsa-sap-ui.mjs.map +1 -0
- package/index.d.ts +5 -5
- package/lib/apply-conditional-formmatings.directive.d.ts +25 -25
- package/lib/barsa-answer-card/barsa-answer-card.component.d.ts +12 -12
- package/lib/barsa-asp-viewer/barsa-asp-viewer.component.d.ts +31 -29
- package/lib/barsa-bar-panel/barsa-bar-panel.component.d.ts +9 -9
- package/lib/barsa-base-panel/barsa-base-layout-panel.component.d.ts +12 -12
- package/lib/barsa-card-layout-panel/barsa-card-layout-panel.component.d.ts +15 -15
- package/lib/barsa-card-row-payam/barsa-card-row-payam.component.d.ts +20 -20
- package/lib/barsa-cartable-form/barsa-cartable-form.component.d.ts +10 -10
- package/lib/barsa-cartable-template/barsa-cartable-template.component.d.ts +14 -14
- package/lib/barsa-chat/barsa-chat.component.d.ts +48 -0
- package/lib/barsa-chat/chat.model.d.ts +43 -0
- package/lib/barsa-chat-content/barsa-chat-content.component.d.ts +5 -0
- package/lib/barsa-chat-content-toolbar/barsa-chat-content-toolbar.component.d.ts +9 -0
- package/lib/barsa-chat-list/barsa-chat-list.component.d.ts +16 -0
- package/lib/barsa-chat-message/barsa-chat-message.component.d.ts +16 -0
- package/lib/barsa-chat-thread/barsa-chat-thread.component.d.ts +6 -0
- package/lib/barsa-chat-threads-list/barsa-chat-threads-list.component.d.ts +5 -0
- package/lib/barsa-chat-threads-list-toolbar/barsa-chat-threads-list-toolbar.component.d.ts +5 -0
- package/lib/barsa-chip/barsa-chip.component.d.ts +20 -20
- package/lib/barsa-column-indicator/barsa-column-indicator.component.d.ts +11 -11
- package/lib/barsa-column-rownumber/barsa-column-rownumber.component.d.ts +8 -8
- package/lib/barsa-custom-inline-edit/barsa-custom-inline-edit.component.d.ts +6 -6
- package/lib/barsa-custom-inline-edit-row/barsa-custom-inline-edit-row.component.d.ts +10 -10
- package/lib/barsa-date-time-picker/barsa-date-time-picker.component.d.ts +18 -18
- package/lib/barsa-dynamic-field/barsa-dynamic-field.component.d.ts +16 -16
- package/lib/barsa-enum-menu-button/barsa-enum-menu-button.component.d.ts +23 -23
- package/lib/barsa-field-key-value/barsa-field-key-value.component.d.ts +26 -26
- package/lib/barsa-form-side-content/barsa-form-side-content.component.d.ts +25 -23
- package/lib/barsa-grid-layout-panel/barsa-grid-layout-panel.component.d.ts +16 -16
- package/lib/barsa-group-cartable/barsa-cartable-group.component.d.ts +26 -26
- package/lib/barsa-horizontal-flex-panel/barsa-horizontal-flex-panel.component.d.ts +14 -14
- package/lib/barsa-linkable-items-panel/barsa-linkable-items-panel.component.d.ts +12 -12
- package/lib/barsa-list-file-linear/barsa-list-file-linear.component.d.ts +17 -17
- package/lib/barsa-list-file-linear-gmail/barsa-list-file-linear-gmail.component.d.ts +8 -8
- package/lib/barsa-list-layout-panel/barsa-list-layout-panel.component.d.ts +9 -9
- package/lib/barsa-monaco-editor/barsa-monaco-editor.component.d.ts +23 -23
- package/lib/barsa-network-offline/barsa-network-offline.component.d.ts +14 -14
- package/lib/barsa-pishnamayesh-payam/barsa-pishnamayesh-payam.component.d.ts +79 -79
- package/lib/barsa-question-answer-comments-section/barsa-question-answer-comments-section.component.d.ts +7 -7
- package/lib/barsa-question-answer-content-actions-section/barsa-question-answer-content-actions-section.component.d.ts +13 -13
- package/lib/barsa-question-answer-creator-time-section/barsa-question-answer-creator-time-section.component.d.ts +7 -7
- package/lib/barsa-question-answer-form/barsa-question-answer-form.component.d.ts +10 -10
- package/lib/barsa-question-answer-form-add-comment/barsa-question-answer-form-add-comment.component.d.ts +13 -13
- package/lib/barsa-question-answer-vote-section/barsa-question-answer-vote-section.component.d.ts +14 -14
- package/lib/barsa-question-post/barsa-question-post.component.d.ts +10 -10
- package/lib/barsa-report-card-flex-view/barsa-report-card-flex-view.component.d.ts +9 -9
- package/lib/barsa-report-checkbox-switch-button/barsa-report-checkbox-switch-button.component.d.ts +15 -15
- package/lib/barsa-report-one-of-list/barsa-report-one-of-list.component.d.ts +31 -31
- package/lib/barsa-sap-ui-routing.module.d.ts +7 -7
- package/lib/barsa-sap-ui.module.d.ts +245 -234
- package/lib/barsa-search-form/barsa-search-form.component.d.ts +8 -8
- package/lib/barsa-simple-form/barsa-simple-form.component.d.ts +73 -73
- package/lib/barsa-table-column/barsa-table-column.component.d.ts +8 -8
- package/lib/barsa-table-header/barsa-table-header.component.d.ts +59 -59
- package/lib/barsa-table-row/barsa-table-row.component.d.ts +19 -18
- package/lib/barsa-tag-categories/barsa-tag-categories.component.d.ts +11 -11
- package/lib/barsa-tag-chip/barsa-tag-chip.component.d.ts +10 -10
- package/lib/barsa-tags-category-row/barsa-tags-category-row.component.d.ts +9 -9
- package/lib/barsa-text-ellipsis/barsa-text-ellipsis.component.d.ts +18 -18
- package/lib/barsa-tinyemce/barsa-tinyemce.component.d.ts +54 -54
- package/lib/barsa-toolbaritem-search/barsa-toolbaritem-search.component.d.ts +12 -12
- package/lib/barsa-tree-item/barsa-tree-item.component.d.ts +54 -54
- package/lib/barsa-tree-item/node-has-one-depth-level.pipe.d.ts +8 -8
- package/lib/barsa-ulv-main/barsa-ulv-main.component.d.ts +72 -72
- package/lib/blob-viewer/blob-viewer.component.d.ts +24 -24
- package/lib/breadcrumb/breadcrumb.component.d.ts +17 -17
- package/lib/captcha-field/captcha-field.component.d.ts +10 -10
- package/lib/card-item/card-item.component.d.ts +20 -20
- package/lib/card-view-content/card-view-content.component.d.ts +14 -14
- package/lib/col-renderer.directive.d.ts +10 -10
- package/lib/column-matrix-renderer/column-matrix-renderer.component.d.ts +23 -23
- package/lib/column-matrix-renderer/matrix-value.pipe.d.ts +8 -8
- package/lib/column-renderer/column-renderer.component.d.ts +33 -33
- package/lib/constants.d.ts +12 -12
- package/lib/custom-date-time/custom-date-time.component.d.ts +26 -26
- package/lib/device-info-field-base.d.ts +12 -12
- package/lib/dialog-handler.directive.d.ts +12 -12
- package/lib/download-files.directive.d.ts +9 -9
- package/lib/dynamic-page-size.pipe.d.ts +8 -8
- package/lib/file-in-dialog/file-in-dialog.component.d.ts +16 -16
- package/lib/file-viewer/file-viewer.component.d.ts +21 -21
- package/lib/file-viewer-content/file-viewer-content.component.d.ts +20 -20
- package/lib/file-viewer-popover/file-viewer-popover.component.d.ts +17 -17
- package/lib/form-dialog/form-dialog.component.d.ts +45 -45
- package/lib/form-dialog-less/form-dialog-less.component.d.ts +29 -29
- package/lib/form-toolbar/form-toolbar.component.d.ts +14 -14
- package/lib/form-toolbar-button/form-toolbar-button.component.d.ts +20 -20
- package/lib/form-wizard/form-wizard.component.d.ts +8 -8
- package/lib/fullscreen-dialog.directive.d.ts +20 -20
- package/lib/fullscreen-files.directive.d.ts +16 -16
- package/lib/fundamental-dynamic-form/fundamental-dynamic-form.component.d.ts +77 -76
- package/lib/gantt-dhtml-chart-view/gantt-dhtml-chart-view.component.d.ts +18 -18
- package/lib/global-search/global-search.component.d.ts +11 -11
- package/lib/global-search-module/global-search-module.component.d.ts +18 -18
- package/lib/global-search-panel/global-search-panel.component.d.ts +9 -9
- package/lib/header-avatar/header-avatar.component.d.ts +8 -8
- package/lib/header-facet-form/header-facet-form.component.d.ts +9 -9
- package/lib/header-facet-key-value/header-facet-key-value.component.d.ts +11 -11
- package/lib/header-facet-microchart/header-facet-microchart.component.d.ts +8 -8
- package/lib/header-facet-plain-text/header-facet-plain-text.component.d.ts +11 -11
- package/lib/header-facet-progress/header-facet-progress.component.d.ts +11 -11
- package/lib/header-facet-rate/header-facet-rate.component.d.ts +11 -11
- package/lib/htree-create-new/htree-create-new.component.d.ts +13 -13
- package/lib/hyperlink/hyperlink.component.d.ts +7 -7
- package/lib/index.d.ts +102 -100
- package/lib/inline-save-and-cancel/inline-save-and-cancel.component.d.ts +11 -11
- package/lib/layout-actions/layout-actions.component.d.ts +25 -25
- package/lib/layout-control/layout-control.component.d.ts +67 -67
- package/lib/layout-wizard/layout-wizard.component.d.ts +28 -28
- package/lib/list-item/list-item.component.d.ts +14 -14
- package/lib/ly-empty-space/ly-empty-space.component.d.ts +13 -13
- package/lib/ly-horizontal-layout/ly-horizontal-layout.component.d.ts +23 -23
- package/lib/ly-label/ly-label.component.d.ts +16 -16
- package/lib/ly-layout-container/ly-layout-container.component.d.ts +26 -26
- package/lib/ly-layout-container-of-root/ly-layout-container-of-root.component.d.ts +8 -8
- package/lib/ly-layout-field-label/ly-layout-field-label.component.d.ts +13 -13
- package/lib/ly-layout-panel/ly-layout-panel.component.d.ts +26 -26
- package/lib/ly-line/ly-line.component.d.ts +17 -17
- package/lib/ly-simple-label/ly-simple-label.component.d.ts +9 -9
- package/lib/ly-tab-container/ly-tab-container.component.d.ts +19 -19
- package/lib/ly-tab-page/ly-tab-page.component.d.ts +20 -20
- package/lib/ly-vertical-layout/ly-vertical-layout.component.d.ts +19 -19
- package/lib/manage-filters-report/manage-filters-report.component.d.ts +24 -24
- package/lib/mask/mask.component.d.ts +9 -9
- package/lib/message-strip/message-strip.component.d.ts +11 -11
- package/lib/models/grid-data-provider.d.ts +22 -22
- package/lib/models/grid-view.d.ts +61 -61
- package/lib/models/index.d.ts +1 -1
- package/lib/no-data/no-data.component.d.ts +11 -9
- package/lib/notification-item/notification-item.component.d.ts +43 -43
- package/lib/notification-popup.service.d.ts +17 -17
- package/lib/progress-indicator/progress-indicator.component.d.ts +8 -8
- package/lib/report-navigator/report-navigator.component.d.ts +21 -21
- package/lib/report-new-top-form/report-new-top-form.component.d.ts +18 -18
- package/lib/report-search-fields-hidden-settings/report-search-fields-hidden-settings.component.d.ts +14 -14
- package/lib/report-search-fields-manage/report-search-fields-manage.component.d.ts +20 -20
- package/lib/report-search-panel-save/report-search-panel-save.component.d.ts +27 -27
- package/lib/report-tree-base.d.ts +62 -62
- package/lib/report-view-renderer.directive.d.ts +117 -117
- package/lib/responsive-toolbar/responsive-toolbar.component.d.ts +19 -19
- package/lib/responsive-toolbar-renderer/responsive-toolbar-renderer.component.d.ts +24 -24
- package/lib/rich-text-static/rich-text-static.component.d.ts +28 -28
- package/lib/sap-font-class.pipe.d.ts +8 -8
- package/lib/sap-font.pipe.d.ts +9 -9
- package/lib/sap-size.pipe.d.ts +8 -8
- package/lib/sap-ui-report-base.component.d.ts +154 -154
- package/lib/search-panel/search-panel.component.d.ts +14 -14
- package/lib/static-text/static-text.component.d.ts +7 -7
- package/lib/title/title.component.d.ts +7 -7
- package/lib/ui-asp-report-viewer/ui-asp-report-viewer.component.d.ts +9 -9
- package/lib/ui-button/ui-button.component.d.ts +11 -11
- package/lib/ui-calendar/ui-calendar.component.d.ts +19 -19
- package/lib/ui-card-view/ui-card-view.component.d.ts +16 -16
- package/lib/ui-card-view-horizontal-group/ui-card-view-horizontal-group.component.d.ts +12 -12
- package/lib/ui-check-box/ui-check-box.component.d.ts +14 -14
- package/lib/ui-color-ui/ui-color-ui.component.d.ts +16 -16
- package/lib/ui-container-with-button/ui-container-with-button.component.d.ts +11 -11
- package/lib/ui-date-range-ex/ui-date-range-ex.component.d.ts +35 -36
- package/lib/ui-date-time/ui-date-time.component.d.ts +39 -40
- package/lib/ui-editable-grid/ui-editable-grid.component.d.ts +43 -43
- package/lib/ui-exception-form/ui-exception-form.component.d.ts +15 -15
- package/lib/ui-file-linear-list-box/ui-file-linear-list-box.component.d.ts +50 -50
- package/lib/ui-form-panel/ui-form-panel.component.d.ts +53 -53
- package/lib/ui-gantt-chart/ui-gantt-chart.component.d.ts +15 -15
- package/lib/ui-graph/ui-graph.component.d.ts +9 -9
- package/lib/ui-grid/ui-grid.component.d.ts +12 -12
- package/lib/ui-grid-columns/ui-grid-columns.component.d.ts +14 -14
- package/lib/ui-grid-filter-item/ui-grid-filter-item.component.d.ts +19 -19
- package/lib/ui-grid-filter-settings/ui-grid-filter-settings.component.d.ts +24 -24
- package/lib/ui-grid-sort-item/ui-grid-sort-item.component.d.ts +25 -25
- package/lib/ui-grid-sort-setting/ui-grid-sort-setting.component.d.ts +28 -28
- package/lib/ui-html-viewer/ui-html-viewer.component.d.ts +9 -9
- package/lib/ui-info-bar-panel/ui-info-bar-panel.component.d.ts +5 -5
- package/lib/ui-label/ui-label.component.d.ts +6 -6
- package/lib/ui-linear-list-container-with-button/ui-linear-list-container-with-button.component.d.ts +73 -73
- package/lib/ui-list-view/ui-list-view.component.d.ts +29 -29
- package/lib/ui-matrix-view/ui-matrix-view.component.d.ts +45 -45
- package/lib/ui-mo-info-combo-viewer/ui-mo-info-combo-viewer.component.d.ts +7 -7
- package/lib/ui-mo-info-general-object-ui/ui-mo-info-general-object-ui.component.d.ts +6 -6
- package/lib/ui-mo-info-sub-form-ui/ui-mo-info-sub-form-ui.component.d.ts +15 -15
- package/lib/ui-mo-info-ulv-combo/ui-mo-info-ulv-combo.component.d.ts +90 -90
- package/lib/ui-monaco-editor/ui-monaco-editor.component.d.ts +10 -7
- package/lib/ui-multi-select-card/ui-multi-select-card.component.d.ts +17 -17
- package/lib/ui-multi-select-checkbox/ui-multi-select-checkbox.component.d.ts +19 -19
- package/lib/ui-multi-select-combo/ui-multi-select-combo.component.d.ts +27 -27
- package/lib/ui-multi-select-radio/ui-multi-select-radio.component.d.ts +17 -17
- package/lib/ui-multi-select-slider/ui-multi-select-slider.component.d.ts +24 -24
- package/lib/ui-multi-select-smile/ui-multi-select-smile.component.d.ts +23 -23
- package/lib/ui-num-decimal-ui/ui-num-decimal-ui.component.d.ts +11 -11
- package/lib/ui-num-int-slider/ui-num-int-slider.component.d.ts +18 -18
- package/lib/ui-num-int-ui/ui-num-int-ui.component.d.ts +10 -10
- package/lib/ui-pdf-viewer/ui-pdf-viewer.component.d.ts +79 -79
- package/lib/ui-picture-file/ui-picture-file.component.d.ts +26 -25
- package/lib/ui-pictures-info/ui-pictures-info.component.d.ts +80 -69
- package/lib/ui-radio-group/ui-radio-group.component.d.ts +20 -20
- package/lib/ui-read-only-field/ui-read-only-field.component.d.ts +21 -21
- package/lib/ui-report-container/ui-report-container.component.d.ts +17 -17
- package/lib/ui-search-command-info-ui/ui-search-command-info-ui.component.d.ts +9 -9
- package/lib/ui-simple-combo/ui-simple-combo.component.d.ts +16 -16
- package/lib/ui-single-picture/ui-single-picture.component.d.ts +13 -13
- package/lib/ui-switch-button/ui-switch-button.component.d.ts +11 -11
- package/lib/ui-table-view/ui-table-view.component.d.ts +39 -39
- package/lib/ui-text-area/ui-text-area.component.d.ts +23 -23
- package/lib/ui-text-field/ui-text-field.component.d.ts +23 -23
- package/lib/ui-text-field-auto-complete/ui-text-field-auto-complete.component.d.ts +13 -13
- package/lib/ui-time-span/ui-time-span.component.d.ts +10 -10
- package/lib/ui-tinymce/ui-tinymce.component.d.ts +22 -22
- package/lib/ui-tree/ui-tree.component.d.ts +37 -37
- package/lib/ui-tree-view/ui-tree-view.component.d.ts +47 -47
- package/lib/ui-ulv-form-multi-select-ui/ui-ulv-form-multi-select-ui.component.d.ts +9 -9
- package/lib/ui-ulv-main-ui/ui-ulv-main-ui.component.d.ts +74 -74
- package/lib/ui-workflow-panel-ui/ui-workflow-panel-ui.component.d.ts +16 -16
- package/lib/ul-loading-mask-ui/ul-loading-mask-ui.component.d.ts +21 -21
- package/lib/ul-msg-box-adapter/ul-msg-box-adapter.component.d.ts +48 -48
- package/lib/ul-notify-popup/ul-notify-popup.component.d.ts +21 -21
- package/lib/ul-toast-adapter/ul-toast-adapter.component.d.ts +13 -13
- package/lib/ulv-column-settings/ulv-column-settings.component.d.ts +20 -20
- package/lib/ulv-context-menu/ulv-context-menu.component.d.ts +31 -31
- package/lib/ulv-filter-settings/ulv-filter-settings.component.d.ts +19 -19
- package/lib/ulv-form-multi-select/ulv-form-multi-select.component.d.ts +26 -26
- package/lib/ulv-groupby-settings/ulv-groupby-settings.component.d.ts +16 -16
- package/lib/ulv-paging/ulv-paging.component.d.ts +28 -28
- package/lib/ulv-selection/ulv-selection.component.d.ts +43 -43
- package/lib/ulv-settings/ulv-settings.component.d.ts +43 -43
- package/lib/ulv-sort-settings/ulv-sort-settings.component.d.ts +16 -16
- package/lib/ulv-toolbar/ulv-toolbar.component.d.ts +49 -49
- package/lib/upload-file-status.pipe.d.ts +9 -9
- package/lib/util-chat-time-badge.pipe.d.ts +7 -0
- package/lib/util-date-to-hh-mm.pipe.d.ts +7 -0
- package/lib/wizard-layout.directive.d.ts +40 -40
- package/package.json +7 -13
- package/public-api.d.ts +226 -218
- package/esm2020/lib/apply-conditional-formmatings.directive.mjs +0 -89
- package/esm2020/lib/barsa-answer-card/barsa-answer-card.component.mjs +0 -41
- package/esm2020/lib/barsa-asp-viewer/barsa-asp-viewer.component.mjs +0 -127
- package/esm2020/lib/barsa-base-panel/barsa-base-layout-panel.component.mjs +0 -29
- package/esm2020/lib/barsa-card-layout-panel/barsa-card-layout-panel.component.mjs +0 -25
- package/esm2020/lib/barsa-card-row-payam/barsa-card-row-payam.component.mjs +0 -30
- package/esm2020/lib/barsa-cartable-form/barsa-cartable-form.component.mjs +0 -41
- package/esm2020/lib/barsa-chip/barsa-chip.component.mjs +0 -72
- package/esm2020/lib/barsa-custom-inline-edit/barsa-custom-inline-edit.component.mjs +0 -15
- package/esm2020/lib/barsa-custom-inline-edit-row/barsa-custom-inline-edit-row.component.mjs +0 -26
- package/esm2020/lib/barsa-date-time-picker/barsa-date-time-picker.component.mjs +0 -71
- package/esm2020/lib/barsa-dynamic-field/barsa-dynamic-field.component.mjs +0 -42
- package/esm2020/lib/barsa-enum-menu-button/barsa-enum-menu-button.component.mjs +0 -61
- package/esm2020/lib/barsa-field-key-value/barsa-field-key-value.component.mjs +0 -45
- package/esm2020/lib/barsa-form-side-content/barsa-form-side-content.component.mjs +0 -37
- package/esm2020/lib/barsa-grid-layout-panel/barsa-grid-layout-panel.component.mjs +0 -27
- package/esm2020/lib/barsa-group-cartable/barsa-cartable-group.component.mjs +0 -94
- package/esm2020/lib/barsa-horizontal-flex-panel/barsa-horizontal-flex-panel.component.mjs +0 -22
- package/esm2020/lib/barsa-linkable-items-panel/barsa-linkable-items-panel.component.mjs +0 -37
- package/esm2020/lib/barsa-list-file-linear/barsa-list-file-linear.component.mjs +0 -41
- package/esm2020/lib/barsa-list-file-linear-gmail/barsa-list-file-linear-gmail.component.mjs +0 -29
- package/esm2020/lib/barsa-list-layout-panel/barsa-list-layout-panel.component.mjs +0 -23
- package/esm2020/lib/barsa-monaco-editor/barsa-monaco-editor.component.mjs +0 -83
- package/esm2020/lib/barsa-network-offline/barsa-network-offline.component.mjs +0 -53
- package/esm2020/lib/barsa-pishnamayesh-payam/barsa-pishnamayesh-payam.component.mjs +0 -159
- package/esm2020/lib/barsa-question-answer-comments-section/barsa-question-answer-comments-section.component.mjs +0 -17
- package/esm2020/lib/barsa-question-answer-content-actions-section/barsa-question-answer-content-actions-section.component.mjs +0 -31
- package/esm2020/lib/barsa-question-answer-creator-time-section/barsa-question-answer-creator-time-section.component.mjs +0 -14
- package/esm2020/lib/barsa-question-answer-form/barsa-question-answer-form.component.mjs +0 -35
- package/esm2020/lib/barsa-question-answer-form-add-comment/barsa-question-answer-form-add-comment.component.mjs +0 -47
- package/esm2020/lib/barsa-question-answer-vote-section/barsa-question-answer-vote-section.component.mjs +0 -78
- package/esm2020/lib/barsa-question-post/barsa-question-post.component.mjs +0 -30
- package/esm2020/lib/barsa-report-card-flex-view/barsa-report-card-flex-view.component.mjs +0 -31
- package/esm2020/lib/barsa-report-one-of-list/barsa-report-one-of-list.component.mjs +0 -98
- package/esm2020/lib/barsa-sap-ui.module.mjs +0 -332
- package/esm2020/lib/barsa-search-form/barsa-search-form.component.mjs +0 -29
- package/esm2020/lib/barsa-simple-form/barsa-simple-form.component.mjs +0 -168
- package/esm2020/lib/barsa-table-column/barsa-table-column.component.mjs +0 -28
- package/esm2020/lib/barsa-table-header/barsa-table-header.component.mjs +0 -198
- package/esm2020/lib/barsa-table-row/barsa-table-row.component.mjs +0 -61
- package/esm2020/lib/barsa-tag-categories/barsa-tag-categories.component.mjs +0 -60
- package/esm2020/lib/barsa-tag-chip/barsa-tag-chip.component.mjs +0 -26
- package/esm2020/lib/barsa-tags-category-row/barsa-tags-category-row.component.mjs +0 -23
- package/esm2020/lib/barsa-text-ellipsis/barsa-text-ellipsis.component.mjs +0 -38
- package/esm2020/lib/barsa-tinyemce/barsa-tinyemce.component.mjs +0 -417
- package/esm2020/lib/barsa-toolbaritem-search/barsa-toolbaritem-search.component.mjs +0 -36
- package/esm2020/lib/barsa-tree-item/barsa-tree-item.component.mjs +0 -130
- package/esm2020/lib/barsa-ulv-main/barsa-ulv-main.component.mjs +0 -209
- package/esm2020/lib/blob-viewer/blob-viewer.component.mjs +0 -78
- package/esm2020/lib/breadcrumb/breadcrumb.component.mjs +0 -45
- package/esm2020/lib/card-item/card-item.component.mjs +0 -76
- package/esm2020/lib/card-view-content/card-view-content.component.mjs +0 -46
- package/esm2020/lib/col-renderer.directive.mjs +0 -46
- package/esm2020/lib/column-matrix-renderer/column-matrix-renderer.component.mjs +0 -56
- package/esm2020/lib/column-matrix-renderer/matrix-value.pipe.mjs +0 -60
- package/esm2020/lib/column-renderer/column-renderer.component.mjs +0 -85
- package/esm2020/lib/constants.mjs +0 -421
- package/esm2020/lib/custom-date-time/custom-date-time.component.mjs +0 -41
- package/esm2020/lib/download-files.directive.mjs +0 -33
- package/esm2020/lib/dynamic-page-size.pipe.mjs +0 -26
- package/esm2020/lib/file-viewer/file-viewer.component.mjs +0 -47
- package/esm2020/lib/file-viewer-popover/file-viewer-popover.component.mjs +0 -41
- package/esm2020/lib/form-dialog/form-dialog.component.mjs +0 -143
- package/esm2020/lib/form-dialog-less/form-dialog-less.component.mjs +0 -45
- package/esm2020/lib/form-toolbar/form-toolbar.component.mjs +0 -42
- package/esm2020/lib/form-toolbar-button/form-toolbar-button.component.mjs +0 -46
- package/esm2020/lib/form-wizard/form-wizard.component.mjs +0 -21
- package/esm2020/lib/fullscreen-dialog.directive.mjs +0 -59
- package/esm2020/lib/fullscreen-files.directive.mjs +0 -42
- package/esm2020/lib/fundamental-dynamic-form/fundamental-dynamic-form.component.mjs +0 -188
- package/esm2020/lib/gantt-dhtml-chart-view/gantt-dhtml-chart-view.component.mjs +0 -203
- package/esm2020/lib/global-search-module/global-search-module.component.mjs +0 -30
- package/esm2020/lib/global-search-panel/global-search-panel.component.mjs +0 -25
- package/esm2020/lib/header-avatar/header-avatar.component.mjs +0 -19
- package/esm2020/lib/header-facet-progress/header-facet-progress.component.mjs +0 -26
- package/esm2020/lib/header-facet-rate/header-facet-rate.component.mjs +0 -26
- package/esm2020/lib/htree-create-new/htree-create-new.component.mjs +0 -49
- package/esm2020/lib/hyperlink/hyperlink.component.mjs +0 -23
- package/esm2020/lib/index.mjs +0 -529
- package/esm2020/lib/layout-actions/layout-actions.component.mjs +0 -68
- package/esm2020/lib/layout-control/layout-control.component.mjs +0 -234
- package/esm2020/lib/layout-wizard/layout-wizard.component.mjs +0 -155
- package/esm2020/lib/list-item/list-item.component.mjs +0 -33
- package/esm2020/lib/ly-empty-space/ly-empty-space.component.mjs +0 -42
- package/esm2020/lib/ly-horizontal-layout/ly-horizontal-layout.component.mjs +0 -71
- package/esm2020/lib/ly-label/ly-label.component.mjs +0 -35
- package/esm2020/lib/ly-layout-container/ly-layout-container.component.mjs +0 -83
- package/esm2020/lib/ly-layout-container-of-root/ly-layout-container-of-root.component.mjs +0 -17
- package/esm2020/lib/ly-layout-panel/ly-layout-panel.component.mjs +0 -73
- package/esm2020/lib/ly-line/ly-line.component.mjs +0 -56
- package/esm2020/lib/ly-simple-label/ly-simple-label.component.mjs +0 -23
- package/esm2020/lib/ly-tab-container/ly-tab-container.component.mjs +0 -52
- package/esm2020/lib/ly-tab-page/ly-tab-page.component.mjs +0 -44
- package/esm2020/lib/ly-vertical-layout/ly-vertical-layout.component.mjs +0 -50
- package/esm2020/lib/manage-filters-report/manage-filters-report.component.mjs +0 -45
- package/esm2020/lib/message-strip/message-strip.component.mjs +0 -28
- package/esm2020/lib/models/grid-data-provider.mjs +0 -83
- package/esm2020/lib/models/grid-view.mjs +0 -2
- package/esm2020/lib/no-data/no-data.component.mjs +0 -23
- package/esm2020/lib/notification-item/notification-item.component.mjs +0 -57
- package/esm2020/lib/notification-popup.service.mjs +0 -88
- package/esm2020/lib/report-navigator/report-navigator.component.mjs +0 -63
- package/esm2020/lib/report-new-top-form/report-new-top-form.component.mjs +0 -60
- package/esm2020/lib/report-search-fields-hidden-settings/report-search-fields-hidden-settings.component.mjs +0 -35
- package/esm2020/lib/report-search-fields-manage/report-search-fields-manage.component.mjs +0 -98
- package/esm2020/lib/report-search-panel-save/report-search-panel-save.component.mjs +0 -90
- package/esm2020/lib/report-tree-base.mjs +0 -408
- package/esm2020/lib/report-view-renderer.directive.mjs +0 -366
- package/esm2020/lib/responsive-toolbar/responsive-toolbar.component.mjs +0 -50
- package/esm2020/lib/responsive-toolbar-renderer/responsive-toolbar-renderer.component.mjs +0 -84
- package/esm2020/lib/rich-text-static/rich-text-static.component.mjs +0 -72
- package/esm2020/lib/sap-font-class.pipe.mjs +0 -29
- package/esm2020/lib/sap-font.pipe.mjs +0 -29
- package/esm2020/lib/sap-size.pipe.mjs +0 -27
- package/esm2020/lib/sap-ui-report-base.component.mjs +0 -766
- package/esm2020/lib/search-panel/search-panel.component.mjs +0 -43
- package/esm2020/lib/ui-button/ui-button.component.mjs +0 -31
- package/esm2020/lib/ui-calendar/ui-calendar.component.mjs +0 -53
- package/esm2020/lib/ui-card-view/ui-card-view.component.mjs +0 -60
- package/esm2020/lib/ui-card-view-horizontal-group/ui-card-view-horizontal-group.component.mjs +0 -43
- package/esm2020/lib/ui-check-box/ui-check-box.component.mjs +0 -34
- package/esm2020/lib/ui-color-ui/ui-color-ui.component.mjs +0 -50
- package/esm2020/lib/ui-container-with-button/ui-container-with-button.component.mjs +0 -34
- package/esm2020/lib/ui-date-range-ex/ui-date-range-ex.component.mjs +0 -194
- package/esm2020/lib/ui-date-time/ui-date-time.component.mjs +0 -150
- package/esm2020/lib/ui-editable-grid/ui-editable-grid.component.mjs +0 -110
- package/esm2020/lib/ui-exception-form/ui-exception-form.component.mjs +0 -53
- package/esm2020/lib/ui-file-linear-list-box/ui-file-linear-list-box.component.mjs +0 -121
- package/esm2020/lib/ui-form-panel/ui-form-panel.component.mjs +0 -92
- package/esm2020/lib/ui-grid-columns/ui-grid-columns.component.mjs +0 -44
- package/esm2020/lib/ui-grid-filter-item/ui-grid-filter-item.component.mjs +0 -67
- package/esm2020/lib/ui-grid-filter-settings/ui-grid-filter-settings.component.mjs +0 -76
- package/esm2020/lib/ui-grid-sort-item/ui-grid-sort-item.component.mjs +0 -59
- package/esm2020/lib/ui-grid-sort-setting/ui-grid-sort-setting.component.mjs +0 -156
- package/esm2020/lib/ui-linear-list-container-with-button/ui-linear-list-container-with-button.component.mjs +0 -349
- package/esm2020/lib/ui-list-view/ui-list-view.component.mjs +0 -75
- package/esm2020/lib/ui-matrix-view/ui-matrix-view.component.mjs +0 -125
- package/esm2020/lib/ui-mo-info-combo-viewer/ui-mo-info-combo-viewer.component.mjs +0 -19
- package/esm2020/lib/ui-mo-info-sub-form-ui/ui-mo-info-sub-form-ui.component.mjs +0 -56
- package/esm2020/lib/ui-mo-info-ulv-combo/ui-mo-info-ulv-combo.component.mjs +0 -430
- package/esm2020/lib/ui-monaco-editor/ui-monaco-editor.component.mjs +0 -18
- package/esm2020/lib/ui-multi-select-card/ui-multi-select-card.component.mjs +0 -37
- package/esm2020/lib/ui-multi-select-checkbox/ui-multi-select-checkbox.component.mjs +0 -59
- package/esm2020/lib/ui-multi-select-combo/ui-multi-select-combo.component.mjs +0 -93
- package/esm2020/lib/ui-multi-select-radio/ui-multi-select-radio.component.mjs +0 -36
- package/esm2020/lib/ui-multi-select-slider/ui-multi-select-slider.component.mjs +0 -56
- package/esm2020/lib/ui-multi-select-smile/ui-multi-select-smile.component.mjs +0 -28
- package/esm2020/lib/ui-num-decimal-ui/ui-num-decimal-ui.component.mjs +0 -24
- package/esm2020/lib/ui-num-int-slider/ui-num-int-slider.component.mjs +0 -27
- package/esm2020/lib/ui-pdf-viewer/ui-pdf-viewer.component.mjs +0 -262
- package/esm2020/lib/ui-picture-file/ui-picture-file.component.mjs +0 -91
- package/esm2020/lib/ui-pictures-info/ui-pictures-info.component.mjs +0 -223
- package/esm2020/lib/ui-radio-group/ui-radio-group.component.mjs +0 -48
- package/esm2020/lib/ui-read-only-field/ui-read-only-field.component.mjs +0 -36
- package/esm2020/lib/ui-report-container/ui-report-container.component.mjs +0 -46
- package/esm2020/lib/ui-simple-combo/ui-simple-combo.component.mjs +0 -37
- package/esm2020/lib/ui-switch-button/ui-switch-button.component.mjs +0 -20
- package/esm2020/lib/ui-table-view/ui-table-view.component.mjs +0 -151
- package/esm2020/lib/ui-text-area/ui-text-area.component.mjs +0 -49
- package/esm2020/lib/ui-text-field/ui-text-field.component.mjs +0 -52
- package/esm2020/lib/ui-tinymce/ui-tinymce.component.mjs +0 -53
- package/esm2020/lib/ui-tree/ui-tree.component.mjs +0 -92
- package/esm2020/lib/ui-tree-view/ui-tree-view.component.mjs +0 -81
- package/esm2020/lib/ui-ulv-form-multi-select-ui/ui-ulv-form-multi-select-ui.component.mjs +0 -24
- package/esm2020/lib/ui-ulv-main-ui/ui-ulv-main-ui.component.mjs +0 -289
- package/esm2020/lib/ui-workflow-panel-ui/ui-workflow-panel-ui.component.mjs +0 -26
- package/esm2020/lib/ul-loading-mask-ui/ul-loading-mask-ui.component.mjs +0 -91
- package/esm2020/lib/ul-msg-box-adapter/ul-msg-box-adapter.component.mjs +0 -117
- package/esm2020/lib/ul-notify-popup/ul-notify-popup.component.mjs +0 -32
- package/esm2020/lib/ul-toast-adapter/ul-toast-adapter.component.mjs +0 -44
- package/esm2020/lib/ulv-column-settings/ulv-column-settings.component.mjs +0 -60
- package/esm2020/lib/ulv-context-menu/ulv-context-menu.component.mjs +0 -87
- package/esm2020/lib/ulv-filter-settings/ulv-filter-settings.component.mjs +0 -43
- package/esm2020/lib/ulv-form-multi-select/ulv-form-multi-select.component.mjs +0 -185
- package/esm2020/lib/ulv-groupby-settings/ulv-groupby-settings.component.mjs +0 -44
- package/esm2020/lib/ulv-paging/ulv-paging.component.mjs +0 -84
- package/esm2020/lib/ulv-selection/ulv-selection.component.mjs +0 -66
- package/esm2020/lib/ulv-settings/ulv-settings.component.mjs +0 -117
- package/esm2020/lib/ulv-sort-settings/ulv-sort-settings.component.mjs +0 -44
- package/esm2020/lib/ulv-toolbar/ulv-toolbar.component.mjs +0 -115
- package/esm2020/lib/upload-file-status.pipe.mjs +0 -28
- package/fesm2015/barsa-sap-ui.mjs +0 -14233
- package/fesm2015/barsa-sap-ui.mjs.map +0 -1
- package/fesm2020/barsa-sap-ui.mjs +0 -14203
- package/fesm2020/barsa-sap-ui.mjs.map +0 -1
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, ViewChild } from '@angular/core';
|
|
2
|
-
import { BaseComponent, BarsaApi } from 'barsa-novin-ray-core';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@fundamental-ngx/core";
|
|
5
|
-
import * as i2 from "barsa-novin-ray-core";
|
|
6
|
-
import * as i3 from "@fundamental-ngx/core/button";
|
|
7
|
-
import * as i4 from "@fundamental-ngx/core/dialog";
|
|
8
|
-
import * as i5 from "@fundamental-ngx/core/title";
|
|
9
|
-
export class UiExceptionFormComponent extends BaseComponent {
|
|
10
|
-
constructor(_dialogService) {
|
|
11
|
-
super();
|
|
12
|
-
this._dialogService = _dialogService;
|
|
13
|
-
}
|
|
14
|
-
ngOnInit() {
|
|
15
|
-
super.ngOnInit();
|
|
16
|
-
BarsaApi.Ui.ExceptionForm.IsHandled = true;
|
|
17
|
-
BarsaApi.Ui.ExceptionForm.Show = (text, detail, callback) => {
|
|
18
|
-
this._dialogService.open(this.templateRef, {
|
|
19
|
-
...{ text, detail, callback },
|
|
20
|
-
responsivePadding: true
|
|
21
|
-
});
|
|
22
|
-
};
|
|
23
|
-
}
|
|
24
|
-
onClose(dialog, dialogConfig) {
|
|
25
|
-
dialog.close();
|
|
26
|
-
if (dialogConfig.callback) {
|
|
27
|
-
dialogConfig.callback();
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
onContinue(dialog, dialogConfig) {
|
|
31
|
-
dialog.close();
|
|
32
|
-
if (dialogConfig.callback) {
|
|
33
|
-
dialogConfig.callback();
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
onLogout(dialog, dialogConfig) {
|
|
37
|
-
dialog.close();
|
|
38
|
-
if (dialogConfig.callback) {
|
|
39
|
-
dialogConfig.callback();
|
|
40
|
-
}
|
|
41
|
-
BarsaApi.Bw.Logout();
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
UiExceptionFormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UiExceptionFormComponent, deps: [{ token: i1.DialogService }], target: i0.ɵɵFactoryTarget.Component });
|
|
45
|
-
UiExceptionFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: UiExceptionFormComponent, selector: "bsu-ui-exception-form", viewQueries: [{ propertyName: "templateRef", first: true, predicate: ["templateRef"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #templateRef>\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\n <fd-dialog-header>\n <h1 fd-title>\n {{ dialogConfig.text }}\n </h1>\n\n <button fd-dialog-close-button (click)=\"onClose(dialog, dialogConfig)\"></button>\n </fd-dialog-header>\n\n <fd-dialog-body style=\"padding: 15px\">\n <div style=\"min-height: 125px\">\n <label fd-label [innerHtml]=\"dialogConfig.detail\"> </label>\n </div>\n </fd-dialog-body>\n\n <fd-dialog-footer>\n <fd-dialog-footer-button>\n <button\n fd-button\n fd-dialog-decisive-button\n [fdType]=\"'emphasized'\"\n [label]=\"'Continue' | bbbTranslate\"\n (click)=\"onContinue(dialog, dialogConfig)\"\n ></button>\n </fd-dialog-footer-button>\n <fd-dialog-footer-button>\n <button\n fd-button\n fd-dialog-decisive-button\n [fdType]=\"'standard'\"\n [label]=\"'Copy' | bbbTranslate\"\n [copy]=\"dialogConfig.detail\"\n ></button>\n </fd-dialog-footer-button>\n <fd-dialog-footer-button>\n <button\n fd-button\n fd-dialog-decisive-button\n [fdType]=\"'negative'\"\n [label]=\"'Logout' | bbbTranslate\"\n (click)=\"onLogout(dialog, dialogConfig)\"\n ></button>\n </fd-dialog-footer-button>\n </fd-dialog-footer>\n </fd-dialog>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.CopyDirective, selector: "[copy]", inputs: ["copy"] }, { kind: "component", type: i3.ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i4.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i4.DialogBodyComponent, selector: "fd-dialog-body" }, { kind: "component", type: i4.DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: i4.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "component", type: i4.DialogCloseButtonComponent, selector: "[fd-dialog-close-button]", inputs: ["mobile", "title"] }, { kind: "component", type: i4.DialogFooterButtonComponent, selector: "fd-dialog-footer-button" }, { kind: "directive", type: i4.DialogDecisiveButtonDirective, selector: "[fd-dialog-decisive-button]" }, { kind: "component", type: i5.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: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
46
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UiExceptionFormComponent, decorators: [{
|
|
47
|
-
type: Component,
|
|
48
|
-
args: [{ selector: 'bsu-ui-exception-form', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #templateRef>\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\n <fd-dialog-header>\n <h1 fd-title>\n {{ dialogConfig.text }}\n </h1>\n\n <button fd-dialog-close-button (click)=\"onClose(dialog, dialogConfig)\"></button>\n </fd-dialog-header>\n\n <fd-dialog-body style=\"padding: 15px\">\n <div style=\"min-height: 125px\">\n <label fd-label [innerHtml]=\"dialogConfig.detail\"> </label>\n </div>\n </fd-dialog-body>\n\n <fd-dialog-footer>\n <fd-dialog-footer-button>\n <button\n fd-button\n fd-dialog-decisive-button\n [fdType]=\"'emphasized'\"\n [label]=\"'Continue' | bbbTranslate\"\n (click)=\"onContinue(dialog, dialogConfig)\"\n ></button>\n </fd-dialog-footer-button>\n <fd-dialog-footer-button>\n <button\n fd-button\n fd-dialog-decisive-button\n [fdType]=\"'standard'\"\n [label]=\"'Copy' | bbbTranslate\"\n [copy]=\"dialogConfig.detail\"\n ></button>\n </fd-dialog-footer-button>\n <fd-dialog-footer-button>\n <button\n fd-button\n fd-dialog-decisive-button\n [fdType]=\"'negative'\"\n [label]=\"'Logout' | bbbTranslate\"\n (click)=\"onLogout(dialog, dialogConfig)\"\n ></button>\n </fd-dialog-footer-button>\n </fd-dialog-footer>\n </fd-dialog>\n</ng-template>\n" }]
|
|
49
|
-
}], ctorParameters: function () { return [{ type: i1.DialogService }]; }, propDecorators: { templateRef: [{
|
|
50
|
-
type: ViewChild,
|
|
51
|
-
args: ['templateRef']
|
|
52
|
-
}] } });
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktZXhjZXB0aW9uLWZvcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktZXhjZXB0aW9uLWZvcm0vdWktZXhjZXB0aW9uLWZvcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktZXhjZXB0aW9uLWZvcm0vdWktZXhjZXB0aW9uLWZvcm0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBdUIsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR25HLE9BQU8sRUFBRSxhQUFhLEVBQUUsUUFBUSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7Ozs7Ozs7QUFPL0QsTUFBTSxPQUFPLHdCQUF5QixTQUFRLGFBQWE7SUFFdkQsWUFBb0IsY0FBNkI7UUFDN0MsS0FBSyxFQUFFLENBQUM7UUFEUSxtQkFBYyxHQUFkLGNBQWMsQ0FBZTtJQUVqRCxDQUFDO0lBRUQsUUFBUTtRQUNKLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQixRQUFRLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1FBQzNDLFFBQVEsQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLElBQUksR0FBRyxDQUFDLElBQUksRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLEVBQUU7WUFDeEQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRTtnQkFDdkMsR0FBRyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFO2dCQUM3QixpQkFBaUIsRUFBRSxJQUFJO2FBQzFCLENBQUMsQ0FBQztRQUNQLENBQUMsQ0FBQztJQUNOLENBQUM7SUFDRCxPQUFPLENBQUMsTUFBTSxFQUFFLFlBQVk7UUFDeEIsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2YsSUFBSSxZQUFZLENBQUMsUUFBUSxFQUFFO1lBQ3ZCLFlBQVksQ0FBQyxRQUFRLEVBQUUsQ0FBQztTQUMzQjtJQUNMLENBQUM7SUFDRCxVQUFVLENBQUMsTUFBTSxFQUFFLFlBQVk7UUFDM0IsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2YsSUFBSSxZQUFZLENBQUMsUUFBUSxFQUFFO1lBQ3ZCLFlBQVksQ0FBQyxRQUFRLEVBQUUsQ0FBQztTQUMzQjtJQUNMLENBQUM7SUFDRCxRQUFRLENBQUMsTUFBTSxFQUFFLFlBQVk7UUFDekIsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2YsSUFBSSxZQUFZLENBQUMsUUFBUSxFQUFFO1lBQ3ZCLFlBQVksQ0FBQyxRQUFRLEVBQUUsQ0FBQztTQUMzQjtRQUNELFFBQVEsQ0FBQyxFQUFFLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDekIsQ0FBQzs7cUhBbENRLHdCQUF3Qjt5R0FBeEIsd0JBQXdCLGdNQ1ZyQyxteURBK0NBOzJGRHJDYSx3QkFBd0I7a0JBTnBDLFNBQVM7K0JBQ0ksdUJBQXVCLG1CQUdoQix1QkFBdUIsQ0FBQyxNQUFNO29HQUdyQixXQUFXO3NCQUFwQyxTQUFTO3VCQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBPbkluaXQsIFRlbXBsYXRlUmVmLCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERpYWxvZ1NlcnZpY2UgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUnO1xuXG5pbXBvcnQgeyBCYXNlQ29tcG9uZW50LCBCYXJzYUFwaSB9IGZyb20gJ2JhcnNhLW5vdmluLXJheS1jb3JlJztcbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYnN1LXVpLWV4Y2VwdGlvbi1mb3JtJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdWktZXhjZXB0aW9uLWZvcm0uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3VpLWV4Y2VwdGlvbi1mb3JtLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgVWlFeGNlcHRpb25Gb3JtQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgQFZpZXdDaGlsZCgndGVtcGxhdGVSZWYnKSB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PjtcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9kaWFsb2dTZXJ2aWNlOiBEaWFsb2dTZXJ2aWNlKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgICAgIEJhcnNhQXBpLlVpLkV4Y2VwdGlvbkZvcm0uSXNIYW5kbGVkID0gdHJ1ZTtcbiAgICAgICAgQmFyc2FBcGkuVWkuRXhjZXB0aW9uRm9ybS5TaG93ID0gKHRleHQsIGRldGFpbCwgY2FsbGJhY2spID0+IHtcbiAgICAgICAgICAgIHRoaXMuX2RpYWxvZ1NlcnZpY2Uub3Blbih0aGlzLnRlbXBsYXRlUmVmLCB7XG4gICAgICAgICAgICAgICAgLi4ueyB0ZXh0LCBkZXRhaWwsIGNhbGxiYWNrIH0sXG4gICAgICAgICAgICAgICAgcmVzcG9uc2l2ZVBhZGRpbmc6IHRydWVcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9O1xuICAgIH1cbiAgICBvbkNsb3NlKGRpYWxvZywgZGlhbG9nQ29uZmlnKTogdm9pZCB7XG4gICAgICAgIGRpYWxvZy5jbG9zZSgpO1xuICAgICAgICBpZiAoZGlhbG9nQ29uZmlnLmNhbGxiYWNrKSB7XG4gICAgICAgICAgICBkaWFsb2dDb25maWcuY2FsbGJhY2soKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBvbkNvbnRpbnVlKGRpYWxvZywgZGlhbG9nQ29uZmlnKTogdm9pZCB7XG4gICAgICAgIGRpYWxvZy5jbG9zZSgpO1xuICAgICAgICBpZiAoZGlhbG9nQ29uZmlnLmNhbGxiYWNrKSB7XG4gICAgICAgICAgICBkaWFsb2dDb25maWcuY2FsbGJhY2soKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBvbkxvZ291dChkaWFsb2csIGRpYWxvZ0NvbmZpZyk6IHZvaWQge1xuICAgICAgICBkaWFsb2cuY2xvc2UoKTtcbiAgICAgICAgaWYgKGRpYWxvZ0NvbmZpZy5jYWxsYmFjaykge1xuICAgICAgICAgICAgZGlhbG9nQ29uZmlnLmNhbGxiYWNrKCk7XG4gICAgICAgIH1cbiAgICAgICAgQmFyc2FBcGkuQncuTG9nb3V0KCk7XG4gICAgfVxufVxuIiwiPG5nLXRlbXBsYXRlIGxldC1kaWFsb2cgbGV0LWRpYWxvZ0NvbmZpZz1cImRpYWxvZ0NvbmZpZ1wiICN0ZW1wbGF0ZVJlZj5cbiAgICA8ZmQtZGlhbG9nIFtkaWFsb2dDb25maWddPVwiZGlhbG9nQ29uZmlnXCIgW2RpYWxvZ1JlZl09XCJkaWFsb2dcIj5cbiAgICAgICAgPGZkLWRpYWxvZy1oZWFkZXI+XG4gICAgICAgICAgICA8aDEgZmQtdGl0bGU+XG4gICAgICAgICAgICAgICAge3sgZGlhbG9nQ29uZmlnLnRleHQgfX1cbiAgICAgICAgICAgIDwvaDE+XG5cbiAgICAgICAgICAgIDxidXR0b24gZmQtZGlhbG9nLWNsb3NlLWJ1dHRvbiAoY2xpY2spPVwib25DbG9zZShkaWFsb2csIGRpYWxvZ0NvbmZpZylcIj48L2J1dHRvbj5cbiAgICAgICAgPC9mZC1kaWFsb2ctaGVhZGVyPlxuXG4gICAgICAgIDxmZC1kaWFsb2ctYm9keSBzdHlsZT1cInBhZGRpbmc6IDE1cHhcIj5cbiAgICAgICAgICAgIDxkaXYgc3R5bGU9XCJtaW4taGVpZ2h0OiAxMjVweFwiPlxuICAgICAgICAgICAgICAgIDxsYWJlbCBmZC1sYWJlbCBbaW5uZXJIdG1sXT1cImRpYWxvZ0NvbmZpZy5kZXRhaWxcIj4gPC9sYWJlbD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2ZkLWRpYWxvZy1ib2R5PlxuXG4gICAgICAgIDxmZC1kaWFsb2ctZm9vdGVyPlxuICAgICAgICAgICAgPGZkLWRpYWxvZy1mb290ZXItYnV0dG9uPlxuICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgZmQtYnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIGZkLWRpYWxvZy1kZWNpc2l2ZS1idXR0b25cbiAgICAgICAgICAgICAgICAgICAgW2ZkVHlwZV09XCInZW1waGFzaXplZCdcIlxuICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ0NvbnRpbnVlJyB8IGJiYlRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvbkNvbnRpbnVlKGRpYWxvZywgZGlhbG9nQ29uZmlnKVwiXG4gICAgICAgICAgICAgICAgPjwvYnV0dG9uPlxuICAgICAgICAgICAgPC9mZC1kaWFsb2ctZm9vdGVyLWJ1dHRvbj5cbiAgICAgICAgICAgIDxmZC1kaWFsb2ctZm9vdGVyLWJ1dHRvbj5cbiAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIGZkLWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICBmZC1kaWFsb2ctZGVjaXNpdmUtYnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIFtmZFR5cGVdPVwiJ3N0YW5kYXJkJ1wiXG4gICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInQ29weScgfCBiYmJUcmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICBbY29weV09XCJkaWFsb2dDb25maWcuZGV0YWlsXCJcbiAgICAgICAgICAgICAgICA+PC9idXR0b24+XG4gICAgICAgICAgICA8L2ZkLWRpYWxvZy1mb290ZXItYnV0dG9uPlxuICAgICAgICAgICAgPGZkLWRpYWxvZy1mb290ZXItYnV0dG9uPlxuICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgZmQtYnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIGZkLWRpYWxvZy1kZWNpc2l2ZS1idXR0b25cbiAgICAgICAgICAgICAgICAgICAgW2ZkVHlwZV09XCInbmVnYXRpdmUnXCJcbiAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIidMb2dvdXQnIHwgYmJiVHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uTG9nb3V0KGRpYWxvZywgZGlhbG9nQ29uZmlnKVwiXG4gICAgICAgICAgICAgICAgPjwvYnV0dG9uPlxuICAgICAgICAgICAgPC9mZC1kaWFsb2ctZm9vdGVyLWJ1dHRvbj5cbiAgICAgICAgPC9mZC1kaWFsb2ctZm9vdGVyPlxuICAgIDwvZmQtZGlhbG9nPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
@@ -1,121 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, Input, ViewChild } from '@angular/core';
|
|
2
|
-
import { BehaviorSubject, Observable } from 'rxjs';
|
|
3
|
-
import { takeUntil } from 'rxjs/operators';
|
|
4
|
-
import { FileUploaderComponent } from '@fundamental-ngx/core';
|
|
5
|
-
import { UploadService, FilesValidationHelper, getValidExtension, LinearListHelper } from 'barsa-novin-ray-core';
|
|
6
|
-
import { DeviceInfoFieldBaseComponent } from '../device-info-field-base';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
import * as i1 from "@angular/common";
|
|
9
|
-
import * as i2 from "@fundamental-ngx/core/busy-indicator";
|
|
10
|
-
import * as i3 from "@fundamental-ngx/core/file-uploader";
|
|
11
|
-
import * as i4 from "@fundamental-ngx/core/list";
|
|
12
|
-
import * as i5 from "@fundamental-ngx/core/object-number";
|
|
13
|
-
import * as i6 from "@fundamental-ngx/core/object-status";
|
|
14
|
-
import * as i7 from "@fundamental-ngx/core/popover";
|
|
15
|
-
import * as i8 from "@fundamental-ngx/core/toolbar";
|
|
16
|
-
import * as i9 from "@fundamental-ngx/core/token";
|
|
17
|
-
import * as i10 from "../mask/mask.component";
|
|
18
|
-
import * as i11 from "barsa-novin-ray-core";
|
|
19
|
-
import * as i12 from "../upload-file-status.pipe";
|
|
20
|
-
export class UiFileLinearListBoxComponent extends DeviceInfoFieldBaseComponent {
|
|
21
|
-
constructor() {
|
|
22
|
-
super(...arguments);
|
|
23
|
-
this.uploading$ = new Observable();
|
|
24
|
-
this.validExtension = '';
|
|
25
|
-
this.loading = false;
|
|
26
|
-
this._fileCountSource = new BehaviorSubject(0);
|
|
27
|
-
}
|
|
28
|
-
ngOnInit() {
|
|
29
|
-
super.ngOnInit();
|
|
30
|
-
this.context.on({
|
|
31
|
-
ShowUploadWindow: this._showUploadWindow.bind(this)
|
|
32
|
-
});
|
|
33
|
-
this._filesValidationHelper = new FilesValidationHelper(this.Setting.MaxFileCount, this.Setting.MaxFileSizeKb, this.Setting.MaxTotalFileSizeKb);
|
|
34
|
-
this._linearHelper = new LinearListHelper(this._uploadService, this._filesValidationHelper, this.Setting.FieldDefId);
|
|
35
|
-
this.valueExtra$ = this._linearHelper.valueExtra$;
|
|
36
|
-
this.uploading$ = this._linearHelper.uploading$;
|
|
37
|
-
this._linearHelper.delete$.pipe(takeUntil(this._onDestroy$)).subscribe((fileAttachment) => {
|
|
38
|
-
this._deleteFileAttachment(fileAttachment);
|
|
39
|
-
});
|
|
40
|
-
this._linearHelper.newFileUploaded$.pipe(takeUntil(this._onDestroy$)).subscribe((fileAttachment) => {
|
|
41
|
-
this._newFileUploaded(fileAttachment);
|
|
42
|
-
});
|
|
43
|
-
this.value &&
|
|
44
|
-
this.value.forEach((c) => {
|
|
45
|
-
this._linearHelper.init(c);
|
|
46
|
-
});
|
|
47
|
-
if (!this.Setting.IsMultiSelect) {
|
|
48
|
-
this._filesValidationHelper.maxFileCount = 1;
|
|
49
|
-
}
|
|
50
|
-
this.maxFileCount = this._filesValidationHelper.maxFileCount;
|
|
51
|
-
this.validExtension = getValidExtension(this.Setting.ValidExtensions);
|
|
52
|
-
}
|
|
53
|
-
ngOnDestroy() {
|
|
54
|
-
// this.valueExtra = {};
|
|
55
|
-
this.context.un('ShowUploadWindow', this._showUploadWindow);
|
|
56
|
-
super.ngOnDestroy();
|
|
57
|
-
}
|
|
58
|
-
onDownloadFile(file) {
|
|
59
|
-
if (!file.IsNew || file.UploadState === 'Complete' || !file.UploadState) {
|
|
60
|
-
this.fireContextEvent('CommandRequest', this.context, 'Download', file.Id);
|
|
61
|
-
this.fileDownloading = true;
|
|
62
|
-
setTimeout(() => {
|
|
63
|
-
this.fileDownloading = false;
|
|
64
|
-
}, 500);
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
onFileDeleted(fileId) {
|
|
68
|
-
this._fileDelete(fileId);
|
|
69
|
-
}
|
|
70
|
-
onTerminate(fileAttachment) {
|
|
71
|
-
this.fireContextEvent('CommandRequest', this.context, 'Delete', fileAttachment.Id);
|
|
72
|
-
this._linearHelper.cancel(fileAttachment);
|
|
73
|
-
}
|
|
74
|
-
onFileSelection(files) {
|
|
75
|
-
this._linearHelper.uploadToServer(files);
|
|
76
|
-
}
|
|
77
|
-
trackById(file, index) {
|
|
78
|
-
return file ? file.Id : index;
|
|
79
|
-
}
|
|
80
|
-
retry(fileAttachment) {
|
|
81
|
-
this._linearHelper.retry(fileAttachment);
|
|
82
|
-
}
|
|
83
|
-
_setValue(value) {
|
|
84
|
-
super._setValue(value);
|
|
85
|
-
this._setFileCount(value);
|
|
86
|
-
}
|
|
87
|
-
_showUploadWindow() {
|
|
88
|
-
this.fileUploadComponent.open();
|
|
89
|
-
}
|
|
90
|
-
_fileDelete(id) {
|
|
91
|
-
const fileAttachment = this.value.find((c) => c.Id === id);
|
|
92
|
-
if (fileAttachment) {
|
|
93
|
-
this._deleteFileAttachment(fileAttachment);
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
_deleteFileAttachment(fileAttachment) {
|
|
97
|
-
this.fireContextEvent('CommandRequest', this.context, 'Delete', fileAttachment.Id);
|
|
98
|
-
}
|
|
99
|
-
_setLoading(loading) {
|
|
100
|
-
this.loading = loading;
|
|
101
|
-
this._cdr.markForCheck();
|
|
102
|
-
}
|
|
103
|
-
_newFileUploaded(newFileAttachment) {
|
|
104
|
-
this.fireContextEvent('CommandRequest', this.context, 'FileUpload', newFileAttachment);
|
|
105
|
-
}
|
|
106
|
-
_setFileCount(value) {
|
|
107
|
-
this._fileCountSource.next(value.filter((c) => !c.IsDeleted).length);
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
UiFileLinearListBoxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UiFileLinearListBoxComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
111
|
-
UiFileLinearListBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: UiFileLinearListBoxComponent, selector: "bsu-ui-file-linear-list-box", inputs: { value: "value" }, providers: [UploadService], viewQueries: [{ propertyName: "fileUploadComponent", first: true, predicate: FileUploaderComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"value\">\r\n <div class=\"token-container\">\r\n <div class=\"token-wrapper\">\r\n <ng-container *ngFor=\"let file of value; trackBy: trackById\">\r\n <fd-popover *ngIf=\"!file.IsDeleted\">\r\n <fd-popover-control>\r\n <fd-token (onCloseClick)=\"onFileDeleted(file.Id)\" [readOnly]=\"(disableOrReadonly$ | async)!!\"\r\n >{{ file.FileName }}\r\n <ng-container *ngIf=\"file.IsNew\">\r\n <ng-container *ngIf=\"valueExtra$ | async as valueExtra\">\r\n <span\r\n *ngIf=\"valueExtra[file.Id].UploadState !== 'Complete'\"\r\n fd-object-status\r\n [status]=\"file.Id | uploadFileStatus: valueExtra\"\r\n [label]=\"valueExtra[file.Id]?.UploadState || ''\"\r\n [title]=\"valueExtra[file.Id]?.UploadState\"\r\n [aria-label]=\"'File Upload Status Is ' + valueExtra[file.Id]?.UploadState\"\r\n ></span>\r\n <fd-object-number\r\n *ngIf=\"valueExtra[file.Id].Progress\"\r\n [number]=\"valueExtra[file.Id].Progress || 0\"\r\n unit=\"%\"\r\n status=\"informative\"\r\n ></fd-object-number>\r\n <ng-container *ngIf=\"valueExtra[file.Id].UploadState === 'Uploading'\">\r\n <fd-busy-indicator [loading]=\"true\" [size]=\"'s'\"></fd-busy-indicator>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n </fd-token>\r\n </fd-popover-control>\r\n <fd-popover-body>\r\n <ng-container *ngIf=\"valueExtra$ | async as valueExtra\">\r\n <ul\r\n fd-list\r\n *ngIf=\"\r\n valueExtra[file.Id].UploadState !== 'Error' ||\r\n valueExtra[file.Id].UploadState === 'Complete'\r\n \"\r\n >\r\n <li fd-list-item>\r\n <a fd-list-link (click)=\"onDownloadFile(file)\">\r\n <i fd-list-icon glyph=\"download\"></i>\r\n <span fd-list-title>\r\n {{ 'Download' | bbbTranslate }}\r\n </span>\r\n <fd-busy-indicator [loading]=\"fileDownloading\" [size]=\"'s'\"></fd-busy-indicator>\r\n </a>\r\n </li>\r\n </ul>\r\n </ng-container>\r\n </fd-popover-body>\r\n </fd-popover>\r\n </ng-container>\r\n <div style=\"display: flex\">\r\n <div style=\"position: relative; width: 3rem\" *ngIf=\"loading\">\r\n <bsu-mask [size]=\"'s'\" style=\"background: transparent\"></bsu-mask>\r\n </div>\r\n <fd-file-uploader\r\n *ngIf=\"value | canUploadFile: maxFileCount:(disable$ | async)!!:(readonly$ | async)!!\"\r\n class=\"file-linear-upload\"\r\n fd-toolbar-item\r\n [id]=\"id\"\r\n [name]=\"'linear_' + id\"\r\n [placeholder]=\"'AttachFile' | bbbTranslate\"\r\n [buttonLabel]=\"'AttachFile' | bbbTranslate\"\r\n [buttonAriaLabel]=\"'AttachFile' | bbbTranslate\"\r\n [accept]=\"validExtension\"\r\n [multiple]=\"maxFileCount > 1 || Setting.IsMultiSelect\"\r\n (selectedFilesChanged)=\"onFileSelection($event)\"\r\n [contentDensity]=\"(contentDensity$ | async)!!\"\r\n ></fd-file-uploader>\r\n </div>\r\n </div>\r\n </div>\r\n</ng-container>\r\n", styles: [":host{display:block;width:100%;height:100%}:host ::ng-deep .fd-slider__handle{display:none}:host ::ng-deep .fd-file-uploader input{display:none}:host.isMobile ::ng-deep fd-token>span{-webkit-line-clamp:2;-webkit-box-orient:vertical;white-space:pre-wrap;height:auto;text-align:right}:host.isMobile ::ng-deep body[dir=ltr] fd-token>span{text-align:left}.token-container{background:transparent;padding:3px;display:flex}.token-wrapper{align-items:center;flex-grow:1;display:flex;flex-wrap:wrap}.token-wrapper fd-token,.token-wrapper .file-linear-upload{padding:4px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.BusyIndicatorComponent, selector: "fd-busy-indicator", inputs: ["loading", "size", "block", "ariaLabel", "title", "label", "ariaLive"] }, { kind: "component", type: i3.FileUploaderComponent, selector: "fd-file-uploader", inputs: ["disabled", "required", "multiple", "accept", "dragndrop", "maxFileSize", "minFileSize", "id", "ariaLabel", "ariaLabelledBy", "placeholder", "buttonLabel", "buttonAriaLabel", "state", "fileLimit", "inputHidden", "width"], outputs: ["selectedFilesChanged", "selectedInvalidFiles", "onDragEnter", "onDragLeave"] }, { kind: "component", type: i4.ListComponent, selector: "[fd-list], [fdList]", inputs: ["dropdownMode", "multiInputMode", "mobileMode", "hasMessage", "noBorder", "navigationIndicator", "selection", "keyboardSupport", "byline"], outputs: ["focusEscapeList"] }, { kind: "component", type: i4.ListItemComponent, selector: "[fdListItem] ,[fd-list-item]", inputs: ["selected", "ariaDescribedBy", "noData", "action", "interactive", "growing", "counter", "unread", "selectedListItemScreenReaderText", "navigatedListItemScreenReaderText", "navigatableListItemScreenReaderText"], outputs: ["keyDown"] }, { kind: "directive", type: i4.ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap"] }, { kind: "directive", type: i4.ListIconDirective, selector: "[fdListIcon], [fd-list-icon]", inputs: ["glyph", "class", "role"] }, { kind: "directive", type: i4.ListLinkDirective, selector: "[fd-list-link], [fdListLink]", inputs: ["navigationIndicator", "navigated"] }, { kind: "component", type: i5.ObjectNumberComponent, selector: "fd-object-number", inputs: ["number", "decimal", "unit", "emphasized", "large", "status", "class", "ariaLabelledBy", "ariaLabel"] }, { kind: "component", type: i6.ObjectStatusComponent, selector: "[fd-object-status]", inputs: ["class", "status", "glyph", "label", "glyphAriaLabel", "indicationColor", "clickable", "inverted", "large"] }, { kind: "component", type: i7.PopoverControlComponent, selector: "fd-popover-control" }, { kind: "component", type: i7.PopoverBodyComponent, selector: "fd-popover-body" }, { kind: "component", type: i7.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig"] }, { kind: "directive", type: i8.ToolbarItemDirective, selector: "[fd-toolbar-item]" }, { kind: "component", type: i9.TokenComponent, selector: "fd-token", inputs: ["disabled", "selected", "readOnly", "deleteButtonLabel", "ariaRoleDescription"], outputs: ["onCloseClick", "onRemove", "onTokenClick", "onTokenKeydown"] }, { kind: "component", type: i10.MaskComponent, selector: "bsu-mask", inputs: ["size", "top"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i11.CanUploadFilePipe, name: "canUploadFile" }, { kind: "pipe", type: i11.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: i12.UploadFileStatusPipe, name: "uploadFileStatus" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
112
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UiFileLinearListBoxComponent, decorators: [{
|
|
113
|
-
type: Component,
|
|
114
|
-
args: [{ selector: 'bsu-ui-file-linear-list-box', providers: [UploadService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"value\">\r\n <div class=\"token-container\">\r\n <div class=\"token-wrapper\">\r\n <ng-container *ngFor=\"let file of value; trackBy: trackById\">\r\n <fd-popover *ngIf=\"!file.IsDeleted\">\r\n <fd-popover-control>\r\n <fd-token (onCloseClick)=\"onFileDeleted(file.Id)\" [readOnly]=\"(disableOrReadonly$ | async)!!\"\r\n >{{ file.FileName }}\r\n <ng-container *ngIf=\"file.IsNew\">\r\n <ng-container *ngIf=\"valueExtra$ | async as valueExtra\">\r\n <span\r\n *ngIf=\"valueExtra[file.Id].UploadState !== 'Complete'\"\r\n fd-object-status\r\n [status]=\"file.Id | uploadFileStatus: valueExtra\"\r\n [label]=\"valueExtra[file.Id]?.UploadState || ''\"\r\n [title]=\"valueExtra[file.Id]?.UploadState\"\r\n [aria-label]=\"'File Upload Status Is ' + valueExtra[file.Id]?.UploadState\"\r\n ></span>\r\n <fd-object-number\r\n *ngIf=\"valueExtra[file.Id].Progress\"\r\n [number]=\"valueExtra[file.Id].Progress || 0\"\r\n unit=\"%\"\r\n status=\"informative\"\r\n ></fd-object-number>\r\n <ng-container *ngIf=\"valueExtra[file.Id].UploadState === 'Uploading'\">\r\n <fd-busy-indicator [loading]=\"true\" [size]=\"'s'\"></fd-busy-indicator>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n </fd-token>\r\n </fd-popover-control>\r\n <fd-popover-body>\r\n <ng-container *ngIf=\"valueExtra$ | async as valueExtra\">\r\n <ul\r\n fd-list\r\n *ngIf=\"\r\n valueExtra[file.Id].UploadState !== 'Error' ||\r\n valueExtra[file.Id].UploadState === 'Complete'\r\n \"\r\n >\r\n <li fd-list-item>\r\n <a fd-list-link (click)=\"onDownloadFile(file)\">\r\n <i fd-list-icon glyph=\"download\"></i>\r\n <span fd-list-title>\r\n {{ 'Download' | bbbTranslate }}\r\n </span>\r\n <fd-busy-indicator [loading]=\"fileDownloading\" [size]=\"'s'\"></fd-busy-indicator>\r\n </a>\r\n </li>\r\n </ul>\r\n </ng-container>\r\n </fd-popover-body>\r\n </fd-popover>\r\n </ng-container>\r\n <div style=\"display: flex\">\r\n <div style=\"position: relative; width: 3rem\" *ngIf=\"loading\">\r\n <bsu-mask [size]=\"'s'\" style=\"background: transparent\"></bsu-mask>\r\n </div>\r\n <fd-file-uploader\r\n *ngIf=\"value | canUploadFile: maxFileCount:(disable$ | async)!!:(readonly$ | async)!!\"\r\n class=\"file-linear-upload\"\r\n fd-toolbar-item\r\n [id]=\"id\"\r\n [name]=\"'linear_' + id\"\r\n [placeholder]=\"'AttachFile' | bbbTranslate\"\r\n [buttonLabel]=\"'AttachFile' | bbbTranslate\"\r\n [buttonAriaLabel]=\"'AttachFile' | bbbTranslate\"\r\n [accept]=\"validExtension\"\r\n [multiple]=\"maxFileCount > 1 || Setting.IsMultiSelect\"\r\n (selectedFilesChanged)=\"onFileSelection($event)\"\r\n [contentDensity]=\"(contentDensity$ | async)!!\"\r\n ></fd-file-uploader>\r\n </div>\r\n </div>\r\n </div>\r\n</ng-container>\r\n", styles: [":host{display:block;width:100%;height:100%}:host ::ng-deep .fd-slider__handle{display:none}:host ::ng-deep .fd-file-uploader input{display:none}:host.isMobile ::ng-deep fd-token>span{-webkit-line-clamp:2;-webkit-box-orient:vertical;white-space:pre-wrap;height:auto;text-align:right}:host.isMobile ::ng-deep body[dir=ltr] fd-token>span{text-align:left}.token-container{background:transparent;padding:3px;display:flex}.token-wrapper{align-items:center;flex-grow:1;display:flex;flex-wrap:wrap}.token-wrapper fd-token,.token-wrapper .file-linear-upload{padding:4px}\n"] }]
|
|
115
|
-
}], propDecorators: { fileUploadComponent: [{
|
|
116
|
-
type: ViewChild,
|
|
117
|
-
args: [FileUploaderComponent, { static: false }]
|
|
118
|
-
}], value: [{
|
|
119
|
-
type: Input
|
|
120
|
-
}] } });
|
|
121
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktZmlsZS1saW5lYXItbGlzdC1ib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktZmlsZS1saW5lYXItbGlzdC1ib3gvdWktZmlsZS1saW5lYXItbGlzdC1ib3guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktZmlsZS1saW5lYXItbGlzdC1ib3gvdWktZmlsZS1saW5lYXItbGlzdC1ib3guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQXFCLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RyxPQUFPLEVBQUUsZUFBZSxFQUFFLFVBQVUsRUFBVyxNQUFNLE1BQU0sQ0FBQztBQUM1RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFrQixxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRTlFLE9BQU8sRUFDSCxhQUFhLEVBQ2IscUJBQXFCLEVBRXJCLGlCQUFpQixFQUNqQixnQkFBZ0IsRUFDbkIsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7QUFVekUsTUFBTSxPQUFPLDRCQUE2QixTQUFRLDRCQUE0QjtJQVA5RTs7UUFZSSxlQUFVLEdBQUcsSUFBSSxVQUFVLEVBQW1CLENBQUM7UUFLL0MsbUJBQWMsR0FBRyxFQUFFLENBQUM7UUFFcEIsWUFBTyxHQUFHLEtBQUssQ0FBQztRQUdSLHFCQUFnQixHQUFHLElBQUksZUFBZSxDQUFTLENBQUMsQ0FBQyxDQUFDO0tBOEY3RDtJQTVGRyxRQUFRO1FBQ0osS0FBSyxDQUFDLFFBQVEsRUFB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QUFDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsUUFBUSxFQUFFLGNBQWMsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUN2RixDQUFDO0lBRVMsV0FBVyxDQUFDLE9BQWdCO1FBQ2xDLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUNTLGdCQUFnQixDQUFDLGlCQUFxQztRQUM1RCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxZQUFZLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztJQUMzRixDQUFDO0lBQ1MsYUFBYSxDQUFDLEtBQUs7UUFDekIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN6RSxDQUFDOzt5SEE1R1EsNEJBQTRCOzZHQUE1Qiw0QkFBNEIsa0ZBSDFCLENBQUMsYUFBYSxDQUFDLCtFQUlmLHFCQUFxQix1RUN2QnBDLHFpSkE0RUE7MkZEdERhLDRCQUE0QjtrQkFQeEMsU0FBUzsrQkFDSSw2QkFBNkIsYUFHNUIsQ0FBQyxhQUFhLENBQUMsbUJBQ1QsdUJBQXVCLENBQUMsTUFBTTs4QkFHTSxtQkFBbUI7c0JBQXZFLFNBQVM7dUJBQUMscUJBQXFCLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUMxQyxLQUFLO3NCQUFiLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBDb250ZW50RGVuc2l0eSwgRmlsZVVwbG9hZGVyQ29tcG9uZW50IH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlJztcblxuaW1wb3J0IHtcbiAgICBVcGxvYWRTZXJ2aWNlLFxuICAgIEZpbGVzVmFsaWRhdGlvbkhlbHBlcixcbiAgICBGaWxlQXR0YWNobWVudEluZm8sXG4gICAgZ2V0VmFsaWRFeHRlbnNpb24sXG4gICAgTGluZWFyTGlzdEhlbHBlclxufSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XG5pbXBvcnQgeyBEZXZpY2VJbmZvRmllbGRCYXNlQ29tcG9uZW50IH0gZnJvbSAnLi4vZGV2aWNlLWluZm8tZmllbGQtYmFzZSc7XG5pbXBvcnQgeyBJVXBsb2FkaW5nU3RhdGUgfSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYnN1LXVpLWZpbGUtbGluZWFyLWxpc3QtYm94JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdWktZmlsZS1saW5lYXItbGlzdC1ib3guY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3VpLWZpbGUtbGluZWFyLWxpc3QtYm94LmNvbXBvbmVudC5zY3NzJ10sXG4gICAgcHJvdmlkZXJzOiBbVXBsb2FkU2VydmljZV0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgVWlGaWxlTGluZWFyTGlzdEJveENvbXBvbmVudCBleHRlbmRzIERldmljZUluZm9GaWVsZEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gICAgQFZpZXdDaGlsZChGaWxlVXBsb2FkZXJDb21wb25lbnQsIHsgc3RhdGljOiBmYWxzZSB9KSBmaWxlVXBsb2FkQ29tcG9uZW50OiBGaWxlVXBsb2FkZXJDb21wb25lbnQ7XG4gICAgQElucHV0KCkgdmFsdWU6IEZpbGVBdHRhY2htZW50SW5mb1tdO1xuXG4gICAgZmlsZUNvdW50JDogT2JzZXJ2YWJsZTxudW1iZXI+O1xuICAgIHVwbG9hZGluZyQgPSBuZXcgT2JzZXJ2YWJsZTxJVXBsb2FkaW5nU3RhdGU+KCk7XG5cbiAgICB2YWx1ZUV4dHJhJDogT2JzZXJ2YWJsZTx7IFtrZXk6IHN0cmluZ106IFVwbG9hZEZpbGVQcm9wcyB9PjtcbiAgICBjb250ZW50RGVuc2l0eSQ6IE9ic2VydmFibGU8Q29udGVudERlbnNpdHk+O1xuICAgIGZpbGVEb3dubG9hZGluZzogYm9vbGVhbjtcbiAgICB2YWxpZEV4dGVuc2lvbiA9ICcnO1xuICAgIG1heEZpbGVDb3VudDogbnVtYmVyO1xuICAgIGxvYWRpbmcgPSBmYWxzZTtcbiAgICBwcm90ZWN0ZWQgX2xpbmVhckhlbHBlcjogTGluZWFyTGlzdEhlbHBlcjtcbiAgICBwcm90ZWN0ZWQgX2ZpbGVzVmFsaWRhdGlvbkhlbHBlcjogRmlsZXNWYWxpZGF0aW9uSGVscGVyO1xuICAgIHByaXZhdGUgX2ZpbGVDb3VudFNvdXJjZSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8bnVtYmVyPigwKTtcblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgICAgICB0aGlzLmNvbnRleHQub24oe1xuICAgICAgICAgICAgU2hvd1VwbG9hZFdpbmRvdzogdGhpcy5fc2hvd1VwbG9hZFdpbmRvdy5iaW5kKHRoaXMpXG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLl9maWxlc1ZhbGlkYXRpb25IZWxwZXIgPSBuZXcgRmlsZXNWYWxpZGF0aW9uSGVscGVyKFxuICAgICAgICAgICAgdGhpcy5TZXR0aW5nLk1heEZpbGVDb3VudCxcbiAgICAgICAgICAgIHRoaXMuU2V0dGluZy5NYXhGaWxlU2l6ZUtiLFxuICAgICAgICAgICAgdGhpcy5TZXR0aW5nLk1heFRvdGFsRmlsZVNpemVLYlxuICAgICAgICApO1xuICAgICAgICB0aGlzLl9saW5lYXJIZWxwZXIgPSBuZXcgTGluZWFyTGlzdEhlbHBlcihcbiAgICAgICAgICAgIHRoaXMuX3VwbG9hZFNlcnZpY2UsXG4gICAgICAgICAgICB0aGlzLl9maWxlc1ZhbGlkYXRpb25IZWxwZXIsXG4gICAgICAgICAgICB0aGlzLlNldHRpbmcuRmllbGREZWZJZFxuICAgICAgICApO1xuICAgICAgICB0aGlzLnZhbHVlRXh0cmEkID0gdGhpcy5fbGluZWFySGVscGVyLnZhbHVlRXh0cmEkO1xuICAgICAgICB0aGlzLnVwbG9hZGluZyQgPSB0aGlzLl9saW5lYXJIZWxwZXIudXBsb2FkaW5nJDtcbiAgICAgICAgdGhpcy5fbGluZWFySGVscGVyLmRlbGV0ZSQucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCkpLnN1YnNjcmliZSgoZmlsZUF0dGFjaG1lbnQpID0+IHtcbiAgICAgICAgICAgIHRoaXMuX2RlbGV0ZUZpbGVBdHRhY2htZW50KGZpbGVBdHRhY2htZW50KTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuX2xpbmVhckhlbHBlci5uZXdGaWxlVXBsb2FkZWQkLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKGZpbGVBdHRhY2htZW50KSA9PiB7XG4gICAgICAgICAgICB0aGlzLl9uZXdGaWxlVXBsb2FkZWQoZmlsZUF0dGFjaG1lbnQpO1xuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy52YWx1ZSAmJlxuICAgICAgICAgICAgdGhpcy52YWx1ZS5mb3JFYWNoKChjKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5fbGluZWFySGVscGVyLmluaXQoYyk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICBpZiAoIXRoaXMuU2V0dGluZy5Jc011bHRpU2VsZWN0KSB7XG4gICAgICAgICAgICB0aGlzLl9maWxlc1ZhbGlkYXRpb25IZWxwZXIubWF4RmlsZUNvdW50ID0gMTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLm1heEZpbGVDb3VudCA9IHRoaXMuX2ZpbGVzVmFsaWRhdGlvbkhlbHBlci5tYXhGaWxlQ291bnQ7XG4gICAgICAgIHRoaXMudmFsaWRFeHRlbnNpb24gPSBnZXRWYWxpZEV4dGVuc2lvbih0aGlzLlNldHRpbmcuVmFsaWRFeHRlbnNpb25zKTtcbiAgICB9XG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIC8vIHRoaXMudmFsdWVFeHRyYSA9IHt9O1xuICAgICAgICB0aGlzLmNvbnRleHQudW4oJ1Nob3dVcGxvYWRXaW5kb3cnLCB0aGlzLl9zaG93VXBsb2FkV2luZG93KTtcbiAgICAgICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICB9XG4gICAgb25Eb3dubG9hZEZpbGUoZmlsZTogRmlsZUF0dGFjaG1lbnRJbmZvKTogdm9pZCB7XG4gICAgICAgIGlmICghZmlsZS5Jc05ldyB8fCBmaWxlLlVwbG9hZFN0YXRlID09PSAnQ29tcGxldGUnIHx8ICFmaWxlLlVwbG9hZFN0YXRlKSB7XG4gICAgICAgICAgICB0aGlzLmZpcmVDb250ZXh0RXZlbnQoJ0NvbW1hbmRSZXF1ZXN0JywgdGhpcy5jb250ZXh0LCAnRG93bmxvYWQnLCBmaWxlLklkKTtcbiAgICAgICAgICAgIHRoaXMuZmlsZURvd25sb2FkaW5nID0gdHJ1ZTtcbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuZmlsZURvd25sb2FkaW5nID0gZmFsc2U7XG4gICAgICAgICAgICB9LCA1MDApO1xuICAgICAgICB9XG4gICAgfVxuICAgIG9uRmlsZURlbGV0ZWQoZmlsZUlkKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2ZpbGVEZWxldGUoZmlsZUlkKTtcbiAgICB9XG4gICAgb25UZXJtaW5hdGUoZmlsZUF0dGFjaG1lbnQ6IEZpbGVBdHRhY2htZW50SW5mbyk6IHZvaWQge1xuICAgICAgICB0aGlzLmZpcmVDb250ZXh0RXZlbnQoJ0NvbW1hbmRSZXF1ZXN0JywgdGhpcy5jb250ZXh0LCAnRGVsZXRlJywgZmlsZUF0dGFjaG1lbnQuSWQpO1xuICAgICAgICB0aGlzLl9saW5lYXJIZWxwZXIuY2FuY2VsKGZpbGVBdHRhY2htZW50KTtcbiAgICB9XG4gICAgb25GaWxlU2VsZWN0aW9uKGZpbGVzOiBGaWxlW10pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fbGluZWFySGVscGVyLnVwbG9hZFRvU2VydmVyKGZpbGVzKTtcbiAgICB9XG5cbiAgICB0cmFja0J5SWQoZmlsZSwgaW5kZXgpOiBzdHJpbmcgfCBudW1iZXIge1xuICAgICAgICByZXR1cm4gZmlsZSA/IGZpbGUuSWQgOiBpbmRleDtcbiAgICB9XG4gICAgcHJvdGVjdGVkIHJldHJ5KGZpbGVBdHRhY2htZW50OiBGaWxlQXR0YWNobWVudEluZm8pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fbGluZWFySGVscGVyLnJldHJ5KGZpbGVBdHRhY2htZW50KTtcbiAgICB9XG4gICAgcHJvdGVjdGVkIF9zZXRWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgICAgIHN1cGVyLl9zZXRWYWx1ZSh2YWx1ZSk7XG4gICAgICAgIHRoaXMuX3NldEZpbGVDb3VudCh2YWx1ZSk7XG4gICAgfVxuICAgIHByb3RlY3RlZCBfc2hvd1VwbG9hZFdpbmRvdygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5maWxlVXBsb2FkQ29tcG9uZW50Lm9wZW4oKTtcbiAgICB9XG4gICAgcHJvdGVjdGVkIF9maWxlRGVsZXRlKGlkKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGZpbGVBdHRhY2htZW50ID0gdGhpcy52YWx1ZS5maW5kKChjKSA9PiBjLklkID09PSBpZCk7XG4gICAgICAgIGlmIChmaWxlQXR0YWNobWVudCkge1xuICAgICAgICAgICAgdGhpcy5fZGVsZXRlRmlsZUF0dGFjaG1lbnQoZmlsZUF0dGFjaG1lbnQpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHByb3RlY3RlZCBfZGVsZXRlRmlsZUF0dGFjaG1lbnQoZmlsZUF0dGFjaG1lbnQ6IEZpbGVBdHRhY2htZW50SW5mbyk6IHZvaWQge1xuICAgICAgICB0aGlzLmZpcmVDb250ZXh0RXZlbnQoJ0NvbW1hbmRSZXF1ZXN0JywgdGhpcy5jb250ZXh0LCAnRGVsZXRlJywgZmlsZUF0dGFjaG1lbnQuSWQpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBfc2V0TG9hZGluZyhsb2FkaW5nOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMubG9hZGluZyA9IGxvYWRpbmc7XG4gICAgICAgIHRoaXMuX2Nkci5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG4gICAgcHJvdGVjdGVkIF9uZXdGaWxlVXBsb2FkZWQobmV3RmlsZUF0dGFjaG1lbnQ6IEZpbGVBdHRhY2htZW50SW5mbyk6IHZvaWQge1xuICAgICAgICB0aGlzLmZpcmVDb250ZXh0RXZlbnQoJ0NvbW1hbmRSZXF1ZXN0JywgdGhpcy5jb250ZXh0LCAnRmlsZVVwbG9hZCcsIG5ld0ZpbGVBdHRhY2htZW50KTtcbiAgICB9XG4gICAgcHJvdGVjdGVkIF9zZXRGaWxlQ291bnQodmFsdWUpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZmlsZUNvdW50U291cmNlLm5leHQodmFsdWUuZmlsdGVyKChjKSA9PiAhYy5Jc0RlbGV0ZWQpLmxlbmd0aCk7XG4gICAgfVxufVxuXG5pbnRlcmZhY2UgVXBsb2FkRmlsZVByb3BzIHtcbiAgICBGaWxlVXJsPzogc3RyaW5nO1xuICAgIGNhbmNlbGF0aW9uJD86IFN1YmplY3Q8dm9pZD47XG4gICAgYmluYXJ5PzogYW55O1xuICAgIFVwbG9hZFN0YXRlPzogc3RyaW5nO1xuICAgIFByb2dyZXNzPzogbnVtYmVyO1xuICAgIElzSWNvbj86IGJvb2xlYW47XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwidmFsdWVcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJ0b2tlbi1jb250YWluZXJcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwidG9rZW4td3JhcHBlclwiPlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBmaWxlIG9mIHZhbHVlOyB0cmFja0J5OiB0cmFja0J5SWRcIj5cclxuICAgICAgICAgICAgICAgIDxmZC1wb3BvdmVyICpuZ0lmPVwiIWZpbGUuSXNEZWxldGVkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGZkLXBvcG92ZXItY29udHJvbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGZkLXRva2VuIChvbkNsb3NlQ2xpY2spPVwib25GaWxlRGVsZXRlZChmaWxlLklkKVwiIFtyZWFkT25seV09XCIoZGlzYWJsZU9yUmVhZG9ubHkkIHwgYXN5bmMpISFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPnt7IGZpbGUuRmlsZU5hbWUgfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJmaWxlLklzTmV3XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInZhbHVlRXh0cmEkIHwgYXN5bmMgYXMgdmFsdWVFeHRyYVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJ2YWx1ZUV4dHJhW2ZpbGUuSWRdLlVwbG9hZFN0YXRlICE9PSAnQ29tcGxldGUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZkLW9iamVjdC1zdGF0dXNcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzdGF0dXNdPVwiZmlsZS5JZCB8IHVwbG9hZEZpbGVTdGF0dXM6IHZhbHVlRXh0cmFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cInZhbHVlRXh0cmFbZmlsZS5JZF0/LlVwbG9hZFN0YXRlIHx8ICcnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0aXRsZV09XCJ2YWx1ZUV4dHJhW2ZpbGUuSWRdPy5VcGxvYWRTdGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXJpYS1sYWJlbF09XCInRmlsZSBVcGxvYWQgU3RhdHVzIElzICcgKyB2YWx1ZUV4dHJhW2ZpbGUuSWRdPy5VcGxvYWRTdGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZC1vYmplY3QtbnVtYmVyXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cInZhbHVlRXh0cmFbZmlsZS5JZF0uUHJvZ3Jlc3NcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW251bWJlcl09XCJ2YWx1ZUV4dHJhW2ZpbGUuSWRdLlByb2dyZXNzIHx8IDBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pdD1cIiVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdHVzPVwiaW5mb3JtYXRpdmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9mZC1vYmplY3QtbnVtYmVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwidmFsdWVFeHRyYVtmaWxlLklkXS5VcGxvYWRTdGF0ZSA9PT0gJ1VwbG9hZGluZydcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZC1idXN5LWluZGljYXRvciBbbG9hZGluZ109XCJ0cnVlXCIgW3NpemVdPVwiJ3MnXCI+PC9mZC1idXN5LWluZGljYXRvcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9mZC10b2tlbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2ZkLXBvcG92ZXItY29udHJvbD5cclxuICAgICAgICAgICAgICAgICAgICA8ZmQtcG9wb3Zlci1ib2R5PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwidmFsdWVFeHRyYSQgfCBhc3luYyBhcyB2YWx1ZUV4dHJhXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZC1saXN0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWVFeHRyYVtmaWxlLklkXS5VcGxvYWRTdGF0ZSAhPT0gJ0Vycm9yJyB8fFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZUV4dHJhW2ZpbGUuSWRdLlVwbG9hZFN0YXRlID09PSAnQ29tcGxldGUnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgZmQtbGlzdC1pdGVtPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBmZC1saXN0LWxpbmsgKGNsaWNrKT1cIm9uRG93bmxvYWRGaWxlKGZpbGUpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBmZC1saXN0LWljb24gZ2x5cGg9XCJkb3dubG9hZFwiPjwvaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGZkLWxpc3QtdGl0bGU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgJ0Rvd25sb2FkJyB8IGJiYlRyYW5zbGF0ZSB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZkLWJ1c3ktaW5kaWNhdG9yIFtsb2FkaW5nXT1cImZpbGVEb3dubG9hZGluZ1wiIFtzaXplXT1cIidzJ1wiPjwvZmQtYnVzeS1pbmRpY2F0b3I+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9mZC1wb3BvdmVyLWJvZHk+XHJcbiAgICAgICAgICAgICAgICA8L2ZkLXBvcG92ZXI+XHJcbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICA8ZGl2IHN0eWxlPVwiZGlzcGxheTogZmxleFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBzdHlsZT1cInBvc2l0aW9uOiByZWxhdGl2ZTsgd2lkdGg6IDNyZW1cIiAqbmdJZj1cImxvYWRpbmdcIj5cclxuICAgICAgICAgICAgICAgICAgICA8YnN1LW1hc2sgW3NpemVdPVwiJ3MnXCIgc3R5bGU9XCJiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudFwiPjwvYnN1LW1hc2s+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxmZC1maWxlLXVwbG9hZGVyXHJcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJ2YWx1ZSB8IGNhblVwbG9hZEZpbGU6IG1heEZpbGVDb3VudDooZGlzYWJsZSQgfCBhc3luYykhIToocmVhZG9ubHkkIHwgYXN5bmMpISFcIlxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZmlsZS1saW5lYXItdXBsb2FkXCJcclxuICAgICAgICAgICAgICAgICAgICBmZC10b29sYmFyLWl0ZW1cclxuICAgICAgICAgICAgICAgICAgICBbaWRdPVwiaWRcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtuYW1lXT1cIidsaW5lYXJfJyArIGlkXCJcclxuICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ0F0dGFjaEZpbGUnIHwgYmJiVHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICBbYnV0dG9uTGFiZWxdPVwiJ0F0dGFjaEZpbGUnIHwgYmJiVHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICBbYnV0dG9uQXJpYUxhYmVsXT1cIidBdHRhY2hGaWxlJyB8IGJiYlRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2FjY2VwdF09XCJ2YWxpZEV4dGVuc2lvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgW211bHRpcGxlXT1cIm1heEZpbGVDb3VudCA+IDEgfHwgU2V0dGluZy5Jc011bHRpU2VsZWN0XCJcclxuICAgICAgICAgICAgICAgICAgICAoc2VsZWN0ZWRGaWxlc0NoYW5nZWQpPVwib25GaWxlU2VsZWN0aW9uKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtjb250ZW50RGVuc2l0eV09XCIoY29udGVudERlbnNpdHkkIHwgYXN5bmMpISFcIlxyXG4gICAgICAgICAgICAgICAgPjwvZmQtZmlsZS11cGxvYWRlcj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuPC9uZy1jb250YWluZXI+XHJcbiJdfQ==
|
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, HostBinding, Self } from '@angular/core';
|
|
2
|
-
import { takeUntil, tap } from 'rxjs';
|
|
3
|
-
import { FormBaseComponent, FormPanelService, FindLayoutSettingFromLayout94, FindToolbarItem, BarsaApi } from 'barsa-novin-ray-core';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "barsa-novin-ray-core";
|
|
6
|
-
import * as i2 from "@angular/router";
|
|
7
|
-
import * as i3 from "@fundamental-ngx/core";
|
|
8
|
-
import * as i4 from "@angular/common";
|
|
9
|
-
import * as i5 from "../fundamental-dynamic-form/fundamental-dynamic-form.component";
|
|
10
|
-
import * as i6 from "../barsa-simple-form/barsa-simple-form.component";
|
|
11
|
-
export class UiFormPanelComponent extends FormBaseComponent {
|
|
12
|
-
constructor(_breadcrumbService, _portalService, _router, _el, _controlUiPipe, _formPanelService, _activatedRoute, _cdr, _contentDensityService) {
|
|
13
|
-
super(_breadcrumbService, _portalService, _router, _el, _controlUiPipe, _formPanelService, _activatedRoute, _cdr);
|
|
14
|
-
this._breadcrumbService = _breadcrumbService;
|
|
15
|
-
this._portalService = _portalService;
|
|
16
|
-
this._router = _router;
|
|
17
|
-
this._el = _el;
|
|
18
|
-
this._controlUiPipe = _controlUiPipe;
|
|
19
|
-
this._formPanelService = _formPanelService;
|
|
20
|
-
this._activatedRoute = _activatedRoute;
|
|
21
|
-
this._cdr = _cdr;
|
|
22
|
-
this._contentDensityService = _contentDensityService;
|
|
23
|
-
this._typeDefName = '';
|
|
24
|
-
this.breadCrumbs$ = _breadcrumbService.breadcrumbs$;
|
|
25
|
-
this.contentDensity$ = _contentDensityService.contentDensity;
|
|
26
|
-
this.deviceSize$ = _portalService.deviceSize$;
|
|
27
|
-
this.dirValue$ = _portalService.dirValue$;
|
|
28
|
-
this.rtl$ = _portalService.rtl$;
|
|
29
|
-
this.canSend$ = this._formPanelService.canSend$;
|
|
30
|
-
this._formPanelService.mo$.subscribe((c) => (this._typeDefName = c?.$TypeDefName ?? ''));
|
|
31
|
-
}
|
|
32
|
-
ngOnInit() {
|
|
33
|
-
super.ngOnInit();
|
|
34
|
-
const parameters = this.parameters;
|
|
35
|
-
this.extendLayout94$ = this.layout94$.pipe(takeUntil(this._onDestroy$), tap((layout94) => {
|
|
36
|
-
if (parameters?.FormLayoutItemsSetting) {
|
|
37
|
-
parameters.FormLayoutItemsSetting.MoDataList.forEach((setting) => {
|
|
38
|
-
const layoutItem = FindLayoutSettingFromLayout94(layout94, setting.Title);
|
|
39
|
-
if (layoutItem) {
|
|
40
|
-
if (layoutItem.Type === 'LayoutControlItem' && layoutItem.FieldUi) {
|
|
41
|
-
BarsaApi.Common.Merger.FastMerge(layoutItem.FieldUi.Setting, setting);
|
|
42
|
-
}
|
|
43
|
-
else {
|
|
44
|
-
BarsaApi.Common.Merger.FastMerge(layoutItem, setting);
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
});
|
|
48
|
-
}
|
|
49
|
-
}));
|
|
50
|
-
this.extendToolbarItems$ = this.toolbarItems$.pipe(takeUntil(this._onDestroy$), tap((toolbarItems) => {
|
|
51
|
-
if (parameters?.FormLayoutItemsSetting) {
|
|
52
|
-
parameters.FormLayoutItemsSetting.MoDataList.forEach((setting) => {
|
|
53
|
-
const toolbarItem = FindToolbarItem(toolbarItems, setting.Title);
|
|
54
|
-
if (toolbarItem) {
|
|
55
|
-
BarsaApi.Common.Merger.FastMerge(toolbarItem, setting);
|
|
56
|
-
}
|
|
57
|
-
});
|
|
58
|
-
}
|
|
59
|
-
if (parameters?.SaveButtonCustomUi?.Selector) {
|
|
60
|
-
const saveItem = FindToolbarItem(toolbarItems, 'SaveAndClose', 'itemId');
|
|
61
|
-
BarsaApi.Common.Merger.FastMerge(saveItem, {
|
|
62
|
-
Data: { CustomUi: parameters.SaveButtonCustomUi }
|
|
63
|
-
});
|
|
64
|
-
}
|
|
65
|
-
if (parameters?.OkButtonCustomUi?.Selector) {
|
|
66
|
-
const okItem = FindToolbarItem(toolbarItems, 'Ok', 'itemId');
|
|
67
|
-
BarsaApi.Common.Merger.FastMerge(okItem, {
|
|
68
|
-
Data: { CustomUi: parameters.OkButtonCustomUi }
|
|
69
|
-
});
|
|
70
|
-
}
|
|
71
|
-
if (parameters?.CancelButtonCustomUi?.Selector) {
|
|
72
|
-
const cancelItem = FindToolbarItem(toolbarItems, 'Cancel', 'itemId');
|
|
73
|
-
BarsaApi.Common.Merger.FastMerge(cancelItem, {
|
|
74
|
-
Data: { CustomUi: parameters.CancelButtonCustomUi }
|
|
75
|
-
});
|
|
76
|
-
}
|
|
77
|
-
}));
|
|
78
|
-
this.fullscreen = parameters?.FullscreenDefault === true && !this.isModal;
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
UiFormPanelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UiFormPanelComponent, deps: [{ token: i1.BreadcrumbService }, { token: i1.PortalService }, { token: i2.Router }, { token: i0.ElementRef }, { token: i1.ControlUiPipe }, { token: i1.FormPanelService, self: true }, { token: i2.ActivatedRoute }, { token: i0.ChangeDetectorRef }, { token: i3.ContentDensityService }], target: i0.ɵɵFactoryTarget.Component });
|
|
82
|
-
UiFormPanelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: UiFormPanelComponent, selector: "bsu-ui-form-panel", host: { properties: { "attr.typeDefName": "this._typeDefName" } }, providers: [FormPanelService], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"isSearchPanel || (isSimple$ | async) || isSubForm || isModal || isFormReport; else dynamicPage\">\n <bsu-barsa-simple-form\n [canSend]=\"(canSend$ | async) === true\"\n [formVisibilityStatus]=\"formVisibilityStatus\"\n [removeContentPadding]=\"(headerRemoveContentPadding$ | async)!!\"\n [breadCrumbs]=\"breadCrumbs$ | async\"\n [description]=\"(headerDescription$ | async)!!\"\n [hideClose]=\"(hideClose$ | async)!!\"\n [hideTitle]=\"(hideTitle$ | async)!!\"\n [hidePin]=\"(hidePin$ | async)!!\"\n [title]=\"(title$ | async)!!\"\n [isModal]=\"isModal\"\n [subtitle]=\"(headerSubtitle$ | async)!!\"\n [toolbarItems]=\"extendToolbarItems$ | async | tlbButtons: 'inFooter':false\"\n [layoutActions]=\"extendToolbarItems$ | async | tlbButtons: 'inFooter':true\"\n [toolbarVisible]=\"(toolbarVisible$ | async)!!\"\n [facetList]=\"(headerLayout$ | async)?.FacetList2\"\n [parameters]=\"parameters\"\n [workflowPanelUi]=\"workflowPanelUi$ | async\"\n [workflowButtons]=\"(workflowButtons$ | async)!!\"\n [isMobile]=\"isMobile\"\n [layout94]=\"extendLayout94$ | async\"\n [layoutGridCol]=\"+(parameters?.LayoutGridCol || 12)\"\n [colLg]=\"+(parameters?.ColLg || 0)\"\n [colXl]=\"+(parameters?.ColXl || 0)\"\n [colMd]=\"+(parameters?.ColMd || 0)\"\n [rtl]=\"(rtl$ | async)!!\"\n [mask]=\"(mask$ | async)!!\"\n [mo]=\"(mo$ | async)!!\"\n [dirValue]=\"(dirValue$ | async)!!\"\n [deviceSize]=\"(deviceSize$ | async)!!\"\n [contentDensity]=\"(contentDensity$ | async)!!\"\n [modernTabs]=\"(modernTabs$ | async)!!\"\n [avatar]=\"(avatar$ | async)!!\"\n [fieldDict]=\"(fieldDict$ | async)!!\"\n [landscape]=\"(landscape$ | async) === true\"\n [standalone]=\"(standalone$ | async) === true\"\n (close)=\"onClose()\"\n (toolbarClick)=\"onToolbarClick($event)\"\n [contentIsPage]=\"parameters?.ContentIsPage === true\"\n (workflowChoiceClick)=\"onWorkflowChoiceClick($event)\"\n ></bsu-barsa-simple-form>\n <!-- <div fd-bar barDesign=\"floating-footer\">\n <div\n *ngIf=\"context.WorkflowPanelUi\"\n fd-bar-right\n [footerActions]=\"context.WorkflowPanelUi\"\n ></div>\n <div\n *ngIf=\"\n !context.WorkflowPanelUi &&\n showToolbar &&\n \n toolbar.items.length > 0\n \"\n fd-bar-right\n [footerActions]=\"toolbar\"\n ></div>\n </div> -->\n</ng-container>\n<ng-template #dynamicPage>\n <bsu-fundamental-dynamic-form\n [style.position]=\"(mask$ | async) ? 'relative' : null\"\n [canSend]=\"(canSend$ | async) === true\"\n [formVisibilityStatus]=\"formVisibilityStatus\"\n [removeContentPadding]=\"(headerRemoveContentPadding$ | async)!!\"\n [breadCrumbs]=\"breadCrumbs$ | async\"\n [description]=\"(headerDescription$ | async)!!\"\n [hideClose]=\"(hideClose$ | async)!!\"\n [hideTitle]=\"(hideTitle$ | async)!!\"\n [hidePin]=\"(hidePin$ | async)!!\"\n [title]=\"(title$ | async)!!\"\n [subtitle]=\"(headerSubtitle$ | async)!!\"\n [toolbarItems]=\"extendToolbarItems$ | async | tlbButtons: 'inFooter':false\"\n [layoutActions]=\"extendToolbarItems$ | async | tlbButtons: 'inFooter':true\"\n [toolbarVisible]=\"(toolbarVisible$ | async)!!\"\n [facetList]=\"(headerLayout$ | async)?.FacetList2\"\n [parameters]=\"parameters\"\n [fullscreen]=\"fullscreen\"\n [workflowPanelUi]=\"workflowPanelUi$ | async\"\n [isMobile]=\"isMobile\"\n [layout94]=\"extendLayout94$ | async\"\n [rtl]=\"(rtl$ | async)!!\"\n [layoutGridCol]=\"+(parameters?.LayoutGridCol || 12)\"\n [colLg]=\"+(parameters?.ColLg || 0)\"\n [colXl]=\"+(parameters?.ColXl || 0)\"\n [colMd]=\"+(parameters?.ColMd || 0)\"\n [mask]=\"(mask$ | async)!!\"\n [mo]=\"(mo$ | async)!!\"\n [dirValue]=\"(dirValue$ | async)!!\"\n [deviceSize]=\"(deviceSize$ | async)!!\"\n [contentDensity]=\"(contentDensity$ | async)!!\"\n [modernTabs]=\"(modernTabs$ | async)!!\"\n [avatar]=\"(avatar$ | async)!!\"\n [fieldDict]=\"(fieldDict$ | async)!!\"\n [landscape]=\"(landscape$ | async) === true\"\n [standalone]=\"(standalone$ | async) === true\"\n (fullscreenRequest)=\"onFullscreen()\"\n (close)=\"onClose()\"\n (toolbarClick)=\"onToolbarClick($event)\"\n [contentIsPage]=\"parameters?.ContentIsPage === true\"\n (workflowChoiceClick)=\"onWorkflowChoiceClick($event)\"\n ></bsu-fundamental-dynamic-form>\n</ng-template>\n", styles: [":host{display:block;width:100%;min-height:100%}:host.fullscreen{position:fixed;top:0}.workflow-buttons{display:flex;margin-top:5px;padding:5px}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.FundamentalDynamicFormComponent, selector: "bsu-fundamental-dynamic-form", inputs: ["breadCrumbs", "toolbarVisible", "toolbarItems", "layoutActions", "layout94", "parameters", "workflowPanelUi", "context", "title", "subtitle", "description", "facetList", "fieldDict", "removeHeaderBorder", "removeContentPadding", "isMobile", "mo", "avatar", "rtl", "hideTitle", "hideClose", "hidePin", "fullscreen", "mask", "canSend", "contentIsPage", "contentDensity", "deviceSize", "dirValue", "landscape", "standalone", "modernTabs", "formVisibilityStatus", "layoutGridCol", "colLg", "colXl", "colMd"], outputs: ["toolbarClick", "workflowChoiceClick", "close", "fullscreenRequest"] }, { kind: "component", type: i6.BarsaSimpleFormComponent, selector: "bsu-barsa-simple-form", inputs: ["breadCrumbs", "toolbarVisible", "toolbarItems", "layoutActions", "layout94", "parameters", "workflowPanelUi", "context", "title", "subtitle", "description", "facetList", "fieldDict", "removeHeaderBorder", "removeContentPadding", "isMobile", "mo", "avatar", "rtl", "isModal", "hideTitle", "hideClose", "hidePin", "mask", "canSend", "contentIsPage", "contentDensity", "deviceSize", "dirValue", "landscape", "standalone", "modernTabs", "workflowButtons", "layoutGridCol", "colLg", "colXl", "colMd", "formVisibilityStatus"], outputs: ["toolbarClick", "workflowChoiceClick", "close"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.TlbButtonsPipe, name: "tlbButtons" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
83
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UiFormPanelComponent, decorators: [{
|
|
84
|
-
type: Component,
|
|
85
|
-
args: [{ selector: 'bsu-ui-form-panel', changeDetection: ChangeDetectionStrategy.OnPush, providers: [FormPanelService], template: "<ng-container *ngIf=\"isSearchPanel || (isSimple$ | async) || isSubForm || isModal || isFormReport; else dynamicPage\">\n <bsu-barsa-simple-form\n [canSend]=\"(canSend$ | async) === true\"\n [formVisibilityStatus]=\"formVisibilityStatus\"\n [removeContentPadding]=\"(headerRemoveContentPadding$ | async)!!\"\n [breadCrumbs]=\"breadCrumbs$ | async\"\n [description]=\"(headerDescription$ | async)!!\"\n [hideClose]=\"(hideClose$ | async)!!\"\n [hideTitle]=\"(hideTitle$ | async)!!\"\n [hidePin]=\"(hidePin$ | async)!!\"\n [title]=\"(title$ | async)!!\"\n [isModal]=\"isModal\"\n [subtitle]=\"(headerSubtitle$ | async)!!\"\n [toolbarItems]=\"extendToolbarItems$ | async | tlbButtons: 'inFooter':false\"\n [layoutActions]=\"extendToolbarItems$ | async | tlbButtons: 'inFooter':true\"\n [toolbarVisible]=\"(toolbarVisible$ | async)!!\"\n [facetList]=\"(headerLayout$ | async)?.FacetList2\"\n [parameters]=\"parameters\"\n [workflowPanelUi]=\"workflowPanelUi$ | async\"\n [workflowButtons]=\"(workflowButtons$ | async)!!\"\n [isMobile]=\"isMobile\"\n [layout94]=\"extendLayout94$ | async\"\n [layoutGridCol]=\"+(parameters?.LayoutGridCol || 12)\"\n [colLg]=\"+(parameters?.ColLg || 0)\"\n [colXl]=\"+(parameters?.ColXl || 0)\"\n [colMd]=\"+(parameters?.ColMd || 0)\"\n [rtl]=\"(rtl$ | async)!!\"\n [mask]=\"(mask$ | async)!!\"\n [mo]=\"(mo$ | async)!!\"\n [dirValue]=\"(dirValue$ | async)!!\"\n [deviceSize]=\"(deviceSize$ | async)!!\"\n [contentDensity]=\"(contentDensity$ | async)!!\"\n [modernTabs]=\"(modernTabs$ | async)!!\"\n [avatar]=\"(avatar$ | async)!!\"\n [fieldDict]=\"(fieldDict$ | async)!!\"\n [landscape]=\"(landscape$ | async) === true\"\n [standalone]=\"(standalone$ | async) === true\"\n (close)=\"onClose()\"\n (toolbarClick)=\"onToolbarClick($event)\"\n [contentIsPage]=\"parameters?.ContentIsPage === true\"\n (workflowChoiceClick)=\"onWorkflowChoiceClick($event)\"\n ></bsu-barsa-simple-form>\n <!-- <div fd-bar barDesign=\"floating-footer\">\n <div\n *ngIf=\"context.WorkflowPanelUi\"\n fd-bar-right\n [footerActions]=\"context.WorkflowPanelUi\"\n ></div>\n <div\n *ngIf=\"\n !context.WorkflowPanelUi &&\n showToolbar &&\n \n toolbar.items.length > 0\n \"\n fd-bar-right\n [footerActions]=\"toolbar\"\n ></div>\n </div> -->\n</ng-container>\n<ng-template #dynamicPage>\n <bsu-fundamental-dynamic-form\n [style.position]=\"(mask$ | async) ? 'relative' : null\"\n [canSend]=\"(canSend$ | async) === true\"\n [formVisibilityStatus]=\"formVisibilityStatus\"\n [removeContentPadding]=\"(headerRemoveContentPadding$ | async)!!\"\n [breadCrumbs]=\"breadCrumbs$ | async\"\n [description]=\"(headerDescription$ | async)!!\"\n [hideClose]=\"(hideClose$ | async)!!\"\n [hideTitle]=\"(hideTitle$ | async)!!\"\n [hidePin]=\"(hidePin$ | async)!!\"\n [title]=\"(title$ | async)!!\"\n [subtitle]=\"(headerSubtitle$ | async)!!\"\n [toolbarItems]=\"extendToolbarItems$ | async | tlbButtons: 'inFooter':false\"\n [layoutActions]=\"extendToolbarItems$ | async | tlbButtons: 'inFooter':true\"\n [toolbarVisible]=\"(toolbarVisible$ | async)!!\"\n [facetList]=\"(headerLayout$ | async)?.FacetList2\"\n [parameters]=\"parameters\"\n [fullscreen]=\"fullscreen\"\n [workflowPanelUi]=\"workflowPanelUi$ | async\"\n [isMobile]=\"isMobile\"\n [layout94]=\"extendLayout94$ | async\"\n [rtl]=\"(rtl$ | async)!!\"\n [layoutGridCol]=\"+(parameters?.LayoutGridCol || 12)\"\n [colLg]=\"+(parameters?.ColLg || 0)\"\n [colXl]=\"+(parameters?.ColXl || 0)\"\n [colMd]=\"+(parameters?.ColMd || 0)\"\n [mask]=\"(mask$ | async)!!\"\n [mo]=\"(mo$ | async)!!\"\n [dirValue]=\"(dirValue$ | async)!!\"\n [deviceSize]=\"(deviceSize$ | async)!!\"\n [contentDensity]=\"(contentDensity$ | async)!!\"\n [modernTabs]=\"(modernTabs$ | async)!!\"\n [avatar]=\"(avatar$ | async)!!\"\n [fieldDict]=\"(fieldDict$ | async)!!\"\n [landscape]=\"(landscape$ | async) === true\"\n [standalone]=\"(standalone$ | async) === true\"\n (fullscreenRequest)=\"onFullscreen()\"\n (close)=\"onClose()\"\n (toolbarClick)=\"onToolbarClick($event)\"\n [contentIsPage]=\"parameters?.ContentIsPage === true\"\n (workflowChoiceClick)=\"onWorkflowChoiceClick($event)\"\n ></bsu-fundamental-dynamic-form>\n</ng-template>\n", styles: [":host{display:block;width:100%;min-height:100%}:host.fullscreen{position:fixed;top:0}.workflow-buttons{display:flex;margin-top:5px;padding:5px}\n"] }]
|
|
86
|
-
}], ctorParameters: function () { return [{ type: i1.BreadcrumbService }, { type: i1.PortalService }, { type: i2.Router }, { type: i0.ElementRef }, { type: i1.ControlUiPipe }, { type: i1.FormPanelService, decorators: [{
|
|
87
|
-
type: Self
|
|
88
|
-
}] }, { type: i2.ActivatedRoute }, { type: i0.ChangeDetectorRef }, { type: i3.ContentDensityService }]; }, propDecorators: { _typeDefName: [{
|
|
89
|
-
type: HostBinding,
|
|
90
|
-
args: ['attr.typeDefName']
|
|
91
|
-
}] } });
|
|
92
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktZm9ybS1wYW5lbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1zYXAtdWkvc3JjL2xpYi91aS1mb3JtLXBhbmVsL3VpLWZvcm0tcGFuZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktZm9ybS1wYW5lbC91aS1mb3JtLXBhbmVsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFFdkIsU0FBUyxFQUVULFdBQVcsRUFFWCxJQUFJLEVBQ1AsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFjLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHbEQsT0FBTyxFQUNILGlCQUFpQixFQUdqQixnQkFBZ0IsRUFHaEIsNkJBQTZCLEVBQzdCLGVBQWUsRUFDZixRQUFRLEVBSVgsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7Ozs7QUFTOUIsTUFBTSxPQUFPLG9CQUFxQixTQUFRLGlCQUFpQjtJQVl2RCxZQUNjLGtCQUFxQyxFQUNyQyxjQUE2QixFQUM3QixPQUFlLEVBQ2YsR0FBZSxFQUNmLGNBQTZCLEVBQ3JCLGlCQUFtQyxFQUMzQyxlQUErQixFQUMvQixJQUF1QixFQUN2QixzQkFBNkM7UUFFdkQsS0FBSyxDQUNELGtCQUFrQixFQUNsQixjQUFjLEVBQ2QsT0FBTyxFQUNQLEdBQUcsRUFDSCxjQUFjLEVBQ2QsaUJBQWlCLEVBQ2pCLGVBQWUsRUFDZixJQUFJLENBQ1AsQ0FBQztRQW5CUSx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW1CO1FBQ3JDLG1CQUFjLEdBQWQsY0FBYyxDQUFlO1FBQzdCLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFDZixRQUFHLEdBQUgsR0FBRyxDQUFZO1FBQ2YsbUJBQWMsR0FBZCxjQUFjLENBQWU7UUFDckIsc0JB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b0J4QixJQUFJOzZJQWpCd0IsWUFBWTtzQkFBNUMsV0FBVzt1QkFBQyxrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIE9uSW5pdCxcbiAgICBTZWxmXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCB0YWtlVW50aWwsIHRhcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQ29udGVudERlbnNpdHksIENvbnRlbnREZW5zaXR5U2VydmljZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZSc7XG5cbmltcG9ydCB7XG4gICAgRm9ybUJhc2VDb21wb25lbnQsXG4gICAgUG9ydGFsU2VydmljZSxcbiAgICBCcmVhZENydW1iSW5mbyxcbiAgICBGb3JtUGFuZWxTZXJ2aWNlLFxuICAgIEJyZWFkY3J1bWJTZXJ2aWNlLFxuICAgIENvbnRyb2xVaVBpcGUsXG4gICAgRmluZExheW91dFNldHRpbmdGcm9tTGF5b3V0OTQsXG4gICAgRmluZFRvb2xiYXJJdGVtLFxuICAgIEJhcnNhQXBpLFxuICAgIE1ldGFvYmplY3REYXRhTW9kZWwsXG4gICAgRWpyYXlPbGdvLFxuICAgIE1vRm9yUmVwb3J0TW9kZWxcbn0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2JzdS11aS1mb3JtLXBhbmVsJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdWktZm9ybS1wYW5lbC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vdWktZm9ybS1wYW5lbC5jb21wb25lbnQuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW0Zvcm1QYW5lbFNlcnZpY2VdXG59KVxuZXhwb3J0IGNsYXNzIFVpRm9ybVBhbmVsQ29tcG9uZW50IGV4dGVuZHMgRm9ybUJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIEBIb3N0QmluZGluZygnYXR0ci50eXBlRGVmTmFtZScpIF90eXBlRGVmTmFtZSA9ICcnO1xuXG4gICAgYnJlYWRDcnVtYnMkOiBPYnNlcnZhYmxlPEJyZWFkQ3J1bWJJbmZvW10+O1xuICAgIGNvbnRlbnREZW5zaXR5JDogT2JzZXJ2YWJsZTxDb250ZW50RGVuc2l0eT47XG4gICAgZGV2aWNlU2l6ZSQ6IE9ic2VydmFibGU8J3MnIHwgJ20nIHwgJ2wnIHwgJ3hsJz47XG4gICAgZGlyVmFsdWUkOiBPYnNlcnZhYmxlPCdydGwnIHwgJ2x0cic+O1xuICAgIHJ0bCQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gICAgY2FuU2VuZCQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gICAgZXh0ZW5kTGF5b3V0OTQkOiBPYnNlcnZhYmxlPGFueT47XG4gICAgZXh0ZW5kVG9vbGJhckl0ZW1zJDogT2JzZXJ2YWJsZTxhbnlbXT47XG4gICAgcGFyYW1ldGVyczogRm9ybVBhbmVsU2V0dGluZztcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJvdGVjdGVkIF9icmVhZGNydW1iU2VydmljZTogQnJlYWRjcnVtYlNlcnZpY2UsXG4gICAgICAgIHByb3RlY3RlZCBfcG9ydGFsU2VydmljZTogUG9ydGFsU2VydmljZSxcbiAgICAgICAgcHJvdGVjdGVkIF9yb3V0ZXI6IFJvdXRlcixcbiAgICAgICAgcHJvdGVjdGVkIF9lbDogRWxlbWVudFJlZixcbiAgICAgICAgcHJvdGVjdGVkIF9jb250cm9sVWlQaXBlOiBDb250cm9sVWlQaXBlLFxuICAgICAgICBAU2VsZigpIHByb3RlY3RlZCBfZm9ybVBhbmVsU2VydmljZTogRm9ybVBhbmVsU2VydmljZSxcbiAgICAgICAgcHJvdGVjdGVkIF9hY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgICAgIHByb3RlY3RlZCBfY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgcHJvdGVjdGVkIF9jb250ZW50RGVuc2l0eVNlcnZpY2U6IENvbnRlbnREZW5zaXR5U2VydmljZVxuICAgICkge1xuICAgICAgICBzdXBlcihcbiAgICAgICAgICAgIF9icmVhZGNydW1iU2VydmljZSxcbiAgICAgICAgICAgIF9wb3J0YWxTZXJ2aWNlLFxuICAgICAgICAgICAgX3JvdXRlcixcbiAgICAgICAgICAgIF9lbCxcbiAgICAgICAgICAgIF9jb250cm9sVWlQaXBlLFxuICAgICAgICAgICAgX2Zvcm1QYW5lbFNlcnZpY2UsXG4gICAgICAgICAgICBfYWN0aXZhdGVkUm91dGUsXG4gICAgICAgICAgICBfY2RyXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMuYnJlYWRDcnVtYnMkID0gX2JyZWFkY3J1bWJTZXJ2aWNlLmJyZWFkY3J1bWJzJDtcbiAgICAgICAgdGhpcy5jb250ZW50RGVuc2l0eSQgPSBfY29udGVudERlbnNpdHlTZXJ2aWNlLmNvbnRlbnREZW5zaXR5O1xuICAgICAgICB0aGlzLmRldmljZVNpemUkID0gX3BvcnRhbFNlcnZpY2UuZGV2aWNlU2l6ZSQ7XG4gICAgICAgIHRoaXMuZGlyVmFsdWUkID0gX3BvcnRhbFNlcnZpY2UuZGlyVmFsdWUkO1xuICAgICAgICB0aGlzLnJ0bCQgPSBfcG9ydGFsU2VydmljZS5ydGwkO1xuICAgICAgICB0aGlzLmNhblNlbmQkID0gdGhpcy5fZm9ybVBhbmVsU2VydmljZS5jYW5TZW5kJDtcblxuICAgICAgICB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLm1vJC5zdWJzY3JpYmUoKGMpID0+ICh0aGlzLl90eXBlRGVmTmFtZSA9IGM/LiRUeXBlRGVmTmFtZSA/PyAnJykpO1xuICAgIH1cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICAgICAgY29uc3QgcGFyYW1ldGVycyA9IHRoaXMucGFyYW1ldGVycztcbiAgICAgICAgdGhpcy5leHRlbmRMYXlvdXQ5NCQgPSB0aGlzLmxheW91dDk0JC5waXBlKFxuICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpLFxuICAgICAgICAgICAgdGFwKChsYXlvdXQ5NCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChwYXJhbWV0ZXJzPy5Gb3JtTGF5b3V0SXRlbXNTZXR0aW5nKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhcmFtZXRlcnMuRm9ybUxheW91dEl0ZW1zU2V0dGluZy5Nb0RhdGFMaXN0LmZvckVhY2goKHNldHRpbmcpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGxheW91dEl0ZW0gPSBGaW5kTGF5b3V0U2V0dGluZ0Zyb21MYXlvdXQ5NChsYXlvdXQ5NCwgc2V0dGluZy5UaXRsZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAobGF5b3V0SXRlbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChsYXlvdXRJdGVtLlR5cGUgPT09ICdMYXlvdXRDb250cm9sSXRlbScgJiYgbGF5b3V0SXRlbS5GaWVsZFVpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEJhcnNhQXBpLkNvbW1vbi5NZXJnZXIuRmFzdE1lcmdlKGxheW91dEl0ZW0uRmllbGRVaS5TZXR0aW5nLCBzZXR0aW5nKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBCYXJzYUFwaS5Db21tb24uTWVyZ2VyLkZhc3RNZXJnZShsYXlvdXRJdGVtLCBzZXR0aW5nKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMuZXh0ZW5kVG9vbGJhckl0ZW1zJCA9IHRoaXMudG9vbGJhckl0ZW1zJC5waXBlKFxuICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpLFxuICAgICAgICAgICAgdGFwKCh0b29sYmFySXRlbXMpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAocGFyYW1ldGVycz8uRm9ybUxheW91dEl0ZW1zU2V0dGluZykge1xuICAgICAgICAgICAgICAgICAgICBwYXJhbWV0ZXJzLkZvcm1MYXlvdXRJdGVtc1NldHRpbmcuTW9EYXRhTGlzdC5mb3JFYWNoKChzZXR0aW5nKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB0b29sYmFySXRlbSA9IEZpbmRUb29sYmFySXRlbSh0b29sYmFySXRlbXMsIHNldHRpbmcuVGl0bGUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRvb2xiYXJJdGVtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQmFyc2FBcGkuQ29tbW9uLk1lcmdlci5GYXN0TWVyZ2UodG9vbGJhckl0ZW0sIHNldHRpbmcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKHBhcmFtZXRlcnM/LlNhdmVCdXR0b25DdXN0b21VaT8uU2VsZWN0b3IpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgc2F2ZUl0ZW0gPSBGaW5kVG9vbGJhckl0ZW0odG9vbGJhckl0ZW1zLCAnU2F2ZUFuZENsb3NlJywgJ2l0ZW1JZCcpO1xuICAgICAgICAgICAgICAgICAgICBCYXJzYUFwaS5Db21tb24uTWVyZ2VyLkZhc3RNZXJnZShzYXZlSXRlbSwge1xuICAgICAgICAgICAgICAgICAgICAgICAgRGF0YTogeyBDdXN0b21VaTogcGFyYW1ldGVycy5TYXZlQnV0dG9uQ3VzdG9tVWkgfVxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKHBhcmFtZXRlcnM/Lk9rQnV0dG9uQ3VzdG9tVWk/LlNlbGVjdG9yKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IG9rSXRlbSA9IEZpbmRUb29sYmFySXRlbSh0b29sYmFySXRlbXMsICdPaycsICdpdGVtSWQnKTtcbiAgICAgICAgICAgICAgICAgICAgQmFyc2FBcGkuQ29tbW9uLk1lcmdlci5GYXN0TWVyZ2Uob2tJdGVtLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBEYXRhOiB7IEN1c3RvbVVpOiBwYXJhbWV0ZXJzLk9rQnV0dG9uQ3VzdG9tVWkgfVxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKHBhcmFtZXRlcnM/LkNhbmNlbEJ1dHRvbkN1c3RvbVVpPy5TZWxlY3Rvcikge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBjYW5jZWxJdGVtID0gRmluZFRvb2xiYXJJdGVtKHRvb2xiYXJJdGVtcywgJ0NhbmNlbCcsICdpdGVtSWQnKTtcbiAgICAgICAgICAgICAgICAgICAgQmFyc2FBcGkuQ29tbW9uLk1lcmdlci5GYXN0TWVyZ2UoY2FuY2VsSXRlbSwge1xuICAgICAgICAgICAgICAgICAgICAgICAgRGF0YTogeyBDdXN0b21VaTogcGFyYW1ldGVycy5DYW5jZWxCdXR0b25DdXN0b21VaSB9XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMuZnVsbHNjcmVlbiA9IHBhcmFtZXRlcnM/LkZ1bGxzY3JlZW5EZWZhdWx0ID09PSB0cnVlICYmICF0aGlzLmlzTW9kYWw7XG4gICAgfVxufVxuaW50ZXJmYWNlIEZvcm1QYW5lbFNldHRpbmcgZXh0ZW5kcyBNZXRhb2JqZWN0RGF0YU1vZGVsIHtcbiAgICBMYXlvdXRDb21wb25lbnQ6IEVqcmF5T2xnbztcbiAgICBIZWFkZXJDb21wb25lbnQ6IEVqcmF5T2xnbztcbiAgICBGb290ZXJDb21wb25lbnQ6IEVqcmF5T2xnbztcbiAgICBTYXZlQnV0dG9uQ3VzdG9tVWk6IEVqcmF5T2xnbztcbiAgICBPa0J1dHRvbkN1c3RvbVVpOiBFanJheU9sZ287XG4gICAgQ2FuY2VsQnV0dG9uQ3VzdG9tVWk6IEVqcmF5T2xnbztcbiAgICBGb3JtTGF5b3V0SXRlbXNTZXR0aW5nOiBNb0ZvclJlcG9ydE1vZGVsO1xuICAgIEZ1bGxzY3JlZW5EZWZhdWx0OiBib29sZWFuO1xuICAgIENhbkZ1bGxzY3JlZW46IGJvb2xlYW47XG4gICAgSXNTaW1wbGU6IGJvb2xlYW47XG4gICAgSXNNb2RhbDogYm9vbGVhbjtcbiAgICBDc3NTdHlsZXM6IHN0cmluZztcbiAgICBDYW5Nb3ZlOiBib29sZWFuO1xuICAgIENhblJlc2l6ZTogYm9vbGVhbjtcbiAgICBDb250ZW50SXNQYWdlOiBib29sZWFuO1xuICAgIExheW91dEdyaWRDb2w6IG51bWJlcjtcbiAgICBDb2xMZzogbnVtYmVyO1xuICAgIENvbFhsOiBudW1iZXI7XG4gICAgQ29sTWQ6IG51bWJlcjtcbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJpc1NlYXJjaFBhbmVsIHx8IChpc1NpbXBsZSQgfCBhc3luYykgfHwgaXNTdWJGb3JtIHx8IGlzTW9kYWwgfHwgaXNGb3JtUmVwb3J0OyBlbHNlIGR5bmFtaWNQYWdlXCI+XG4gICAgPGJzdS1iYXJzYS1zaW1wbGUtZm9ybVxuICAgICAgICBbY2FuU2VuZF09XCIoY2FuU2VuZCQgfCBhc3luYykgPT09IHRydWVcIlxuICAgICAgICBbZm9ybVZpc2liaWxpdHlTdGF0dXNdPVwiZm9ybVZpc2liaWxpdHlTdGF0dXNcIlxuICAgICAgICBbcmVtb3ZlQ29udGVudFBhZGRpbmddPVwiKGhlYWRlclJlbW92ZUNvbnRlbnRQYWRkaW5nJCB8IGFzeW5jKSEhXCJcbiAgICAgICAgW2JyZWFkQ3J1bWJzXT1cImJyZWFkQ3J1bWJzJCB8IGFzeW5jXCJcbiAgICAgICAgW2Rlc2NyaXB0aW9uXT1cIihoZWFkZXJEZXNjcmlwdGlvbiQgfCBhc3luYykhIVwiXG4gICAgICAgIFtoaWRlQ2xvc2VdPVwiKGhpZGVDbG9zZSQgfCBhc3luYykhIVwiXG4gICAgICAgIFtoaWRlVGl0bGVdPVwiKGhpZGVUaXRsZSQgfCBhc3luYykhIVwiXG4gICAgICAgIFtoaWRlUGluXT1cIihoaWRlUGluJCB8IGFzeW5jKSEhXCJcbiAgICAgICAgW3RpdGxlXT1cIih0aXRsZSQgfCBhc3luYykhIVwiXG4gICAgICAgIFtpc01vZGFsXT1cImlzTW9kYWxcIlxuICAgICAgICBbc3VidGl0bGVdPVwiKGhlYWRlclN1YnRpdGxlJCB8IGFzeW5jKSEhXCJcbiAgICAgICAgW3Rvb2xiYXJJdGVtc109XCJleHRlbmRUb29sYmFySXRlbXMkIHwgYXN5bmMgfCB0bGJCdXR0b25zOiAnaW5Gb290ZXInOmZhbHNlXCJcbiAgICAgICAgW2xheW91dEFjdGlvbnNdPVwiZXh0ZW5kVG9vbGJhckl0ZW1zJCB8IGFzeW5jIHwgdGxiQnV0dG9uczogJ2luRm9vdGVyJzp0cnVlXCJcbiAgICAgICAgW3Rvb2xiYXJWaXNpYmxlXT1cIih0b29sYmFyVmlzaWJsZSQgfCBhc3luYykhIVwiXG4gICAgICAgIFtmYWNldExpc3RdPVwiKGhlYWRlckxheW91dCQgfCBhc3luYyk/LkZhY2V0TGlzdDJcIlxuICAgICAgICBbcGFyYW1ldGVyc109XCJwYXJhbWV0ZXJzXCJcbiAgICAgICAgW3dvcmtmbG93UGFuZWxVaV09XCJ3b3JrZmxvd1BhbmVsVWkkIHwgYXN5bmNcIlxuICAgICAgICBbd29ya2Zsb3dCdXR0b25zXT1cIih3b3JrZmxvd0J1dHRvbnMkIHwgYXN5bmMpISFcIlxuICAgICAgICBbaXNNb2JpbGVdPVwiaXNNb2JpbGVcIlxuICAgICAgICBbbGF5b3V0OTRdPVwiZXh0ZW5kTGF5b3V0OTQkIHwgYXN5bmNcIlxuICAgICAgICBbbGF5b3V0R3JpZENvbF09XCIrKHBhcmFtZXRlcnM/LkxheW91dEdyaWRDb2wgfHwgMTIpXCJcbiAgICAgICAgW2NvbExnXT1cIisocGFyYW1ldGVycz8uQ29sTGcgfHwgMClcIlxuICAgICAgICBbY29sWGxdPVwiKyhwYXJhbWV0ZXJzPy5Db2xYbCB8fCAwKVwiXG4gICAgICAgIFtjb2xNZF09XCIrKHBhcmFtZXRlcnM/LkNvbE1kIHx8IDApXCJcbiAgICAgICAgW3J0bF09XCIocnRsJCB8IGFzeW5jKSEhXCJcbiAgICAgICAgW21hc2tdPVwiKG1hc2skIHwgYXN5bmMpISFcIlxuICAgICAgICBbbW9dPVwiKG1vJCB8IGFzeW5jKSEhXCJcbiAgICAgICAgW2RpclZhbHVlXT1cIihkaXJWYWx1ZSQgfCBhc3luYykhIVwiXG4gICAgICAgIFtkZXZpY2VTaXplXT1cIihkZXZpY2VTaXplJCB8IGFzeW5jKSEhXCJcbiAgICAgICAgW2NvbnRlbnREZW5zaXR5XT1cIihjb250ZW50RGVuc2l0eSQgfCBhc3luYykhIVwiXG4gICAgICAgIFttb2Rlcm5UYWJzXT1cIihtb2Rlcm5UYWJzJCB8IGFzeW5jKSEhXCJcbiAgICAgICAgW2F2YXRhcl09XCIoYXZhdGFyJCB8IGFzeW5jKSEhXCJcbiAgICAgICAgW2ZpZWxkRGljdF09XCIoZmllbGREaWN0JCB8IGFzeW5jKSEhXCJcbiAgICAgICAgW2xhbmRzY2FwZV09XCIobGFuZHNjYXBlJCB8IGFzeW5jKSA9PT0gdHJ1ZVwiXG4gICAgICAgIFtzdGFuZGFsb25lXT1cIihzdGFuZGFsb25lJCB8IGFzeW5jKSA9PT0gdHJ1ZVwiXG4gICAgICAgIChjbG9zZSk9XCJvbkNsb3NlKClcIlxuICAgICAgICAodG9vbGJhckNsaWNrKT1cIm9uVG9vbGJhckNsaWNrKCRldmVudClcIlxuICAgICAgICBbY29udGVudElzUGFnZV09XCJwYXJhbWV0ZXJzPy5Db250ZW50SXNQYWdlID09PSB0cnVlXCJcbiAgICAgICAgKHdvcmtmbG93Q2hvaWNlQ2xpY2spPVwib25Xb3JrZmxvd0Nob2ljZUNsaWNrKCRldmVudClcIlxuICAgID48L2JzdS1iYXJzYS1zaW1wbGUtZm9ybT5cbiAgICA8IS0tIDxkaXYgZmQtYmFyIGJhckRlc2lnbj1cImZsb2F0aW5nLWZvb3RlclwiPlxuICAgIDxkaXZcbiAgICAgICpuZ0lmPVwiY29udGV4dC5Xb3JrZmxvd1BhbmVsVWlcIlxuICAgICAgZmQtYmFyLXJpZ2h0XG4gICAgICBbZm9vdGVyQWN0aW9uc109XCJjb250ZXh0LldvcmtmbG93UGFuZWxVaVwiXG4gICAgPjwvZGl2PlxuICAgIDxkaXZcbiAgICAgICpuZ0lmPVwiXG4gICAgICAgICFjb250ZXh0LldvcmtmbG93UGFuZWxVaSAmJlxuICAgICAgICBzaG93VG9vbGJhciAmJlxuICAgICAgICBcbiAgICAgICAgdG9vbGJhci5pdGVtcy5sZW5ndGggPiAwXG4gICAgICBcIlxuICAgICAgZmQtYmFyLXJpZ2h0XG4gICAgICBbZm9vdGVyQWN0aW9uc109XCJ0b29sYmFyXCJcbiAgICA+PC9kaXY+XG4gIDwvZGl2PiAtLT5cbjwvbmctY29udGFpbmVyPlxuPG5nLXRlbXBsYXRlICNkeW5hbWljUGFnZT5cbiAgICA8YnN1LWZ1bmRhbWVudGFsLWR5bmFtaWMtZm9ybVxuICAgICAgICBbc3R5bGUucG9zaXRpb25dPVwiKG1hc2skIHwgYXN5bmMpID8gJ3JlbGF0aXZlJyA6IG51bGxcIlxuICAgICAgICBbY2FuU2VuZF09XCIoY2FuU2VuZCQgfCBhc3luYykgPT09IHRydWVcIlxuICAgICAgICBbZm9ybVZpc2liaWxpdHlTdGF0dXNdPVwiZm9ybVZpc2liaWxpdHlTdGF0dXNcIlxuICAgICAgICBbcmVtb3ZlQ29udGVudFBhZGRpbmddPVwiKGhlYWRlclJlbW92ZUNvbnRlbnRQYWRkaW5nJCB8IGFzeW5jKSEhXCJcbiAgICAgICAgW2JyZWFkQ3J1bWJzXT1cImJyZWFkQ3J1bWJzJCB8IGFzeW5jXCJcbiAgICAgICAgW2Rlc2NyaXB0aW9uXT1cIihoZWFkZXJEZXNjcmlwdGlvbiQgfCBhc3luYykhIVwiXG4gICAgICAgIFtoaWRlQ2xvc2VdPVwiKGhpZGVDbG9zZSQgfCBhc3luYykhIVwiXG4gICAgICAgIFtoaWRlVGl0bGVdPVwiKGhpZGVUaXRsZSQgfCBhc3luYykhIVwiXG4gICAgICAgIFtoaWRlUGluXT1cIihoaWRlUGluJCB8IGFzeW5jKSEhXCJcbiAgICAgICAgW3RpdGxlXT1cIih0aXRsZSQgfCBhc3luYykhIVwiXG4gICAgICAgIFtzdWJ0aXRsZV09XCIoaGVhZGVyU3VidGl0bGUkIHwgYXN5bmMpISFcIlxuICAgICAgICBbdG9vbGJhckl0ZW1zXT1cImV4dGVuZFRvb2xiYXJJdGVtcyQgfCBhc3luYyB8IHRsYkJ1dHRvbnM6ICdpbkZvb3Rlcic6ZmFsc2VcIlxuICAgICAgICBbbGF5b3V0QWN0aW9uc109XCJleHRlbmRUb29sYmFySXRlbXMkIHwgYXN5bmMgfCB0bGJCdXR0b25zOiAnaW5Gb290ZXInOnRydWVcIlxuICAgICAgICBbdG9vbGJhclZpc2libGVdPVwiKHRvb2xiYXJWaXNpYmxlJCB8IGFzeW5jKSEhXCJcbiAgICAgICAgW2ZhY2V0TGlzdF09XCIoaGVhZGVyTGF5b3V0JCB8IGFzeW5jKT8uRmFjZXRMaXN0MlwiXG4gICAgICAgIFtwYXJhbWV0ZXJzXT1cInBhcmFtZXRlcnNcIlxuICAgICAgICBbZnVsbHNjcmVlbl09XCJmdWxsc2NyZWVuXCJcbiAgICAgICAgW3dvcmtmbG93UGFuZWxVaV09XCJ3b3JrZmxvd1BhbmVsVWkkIHwgYXN5bmNcIlxuICAgICAgICBbaXNNb2JpbGVdPVwiaXNNb2JpbGVcIlxuICAgICAgICBbbGF5b3V0OTRdPVwiZXh0ZW5kTGF5b3V0OTQkIHwgYXN5bmNcIlxuICAgICAgICBbcnRsXT1cIihydGwkIHwgYXN5bmMpISFcIlxuICAgICAgICBbbGF5b3V0R3JpZENvbF09XCIrKHBhcmFtZXRlcnM/LkxheW91dEdyaWRDb2wgfHwgMTIpXCJcbiAgICAgICAgW2NvbExnXT1cIisocGFyYW1ldGVycz8uQ29sTGcgfHwgMClcIlxuICAgICAgICBbY29sWGxdPVwiKyhwYXJhbWV0ZXJzPy5Db2xYbCB8fCAwKVwiXG4gICAgICAgIFtjb2xNZF09XCIrKHBhcmFtZXRlcnM/LkNvbE1kIHx8IDApXCJcbiAgICAgICAgW21hc2tdPVwiKG1hc2skIHwgYXN5bmMpISFcIlxuICAgICAgICBbbW9dPVwiKG1vJCB8IGFzeW5jKSEhXCJcbiAgICAgICAgW2RpclZhbHVlXT1cIihkaXJWYWx1ZSQgfCBhc3luYykhIVwiXG4gICAgICAgIFtkZXZpY2VTaXplXT1cIihkZXZpY2VTaXplJCB8IGFzeW5jKSEhXCJcbiAgICAgICAgW2NvbnRlbnREZW5zaXR5XT1cIihjb250ZW50RGVuc2l0eSQgfCBhc3luYykhIVwiXG4gICAgICAgIFttb2Rlcm5UYWJzXT1cIihtb2Rlcm5UYWJzJCB8IGFzeW5jKSEhXCJcbiAgICAgICAgW2F2YXRhcl09XCIoYXZhdGFyJCB8IGFzeW5jKSEhXCJcbiAgICAgICAgW2ZpZWxkRGljdF09XCIoZmllbGREaWN0JCB8IGFzeW5jKSEhXCJcbiAgICAgICAgW2xhbmRzY2FwZV09XCIobGFuZHNjYXBlJCB8IGFzeW5jKSA9PT0gdHJ1ZVwiXG4gICAgICAgIFtzdGFuZGFsb25lXT1cIihzdGFuZGFsb25lJCB8IGFzeW5jKSA9PT0gdHJ1ZVwiXG4gICAgICAgIChmdWxsc2NyZWVuUmVxdWVzdCk9XCJvbkZ1bGxzY3JlZW4oKVwiXG4gICAgICAgIChjbG9zZSk9XCJvbkNsb3NlKClcIlxuICAgICAgICAodG9vbGJhckNsaWNrKT1cIm9uVG9vbGJhckNsaWNrKCRldmVudClcIlxuICAgICAgICBbY29udGVudElzUGFnZV09XCJwYXJhbWV0ZXJzPy5Db250ZW50SXNQYWdlID09PSB0cnVlXCJcbiAgICAgICAgKHdvcmtmbG93Q2hvaWNlQ2xpY2spPVwib25Xb3JrZmxvd0Nob2ljZUNsaWNrKCRldmVudClcIlxuICAgID48L2JzdS1mdW5kYW1lbnRhbC1keW5hbWljLWZvcm0+XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import { moveItemInArray } from '@angular/cdk/drag-drop';
|
|
2
|
-
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';
|
|
3
|
-
import { BaseComponent } from 'barsa-novin-ray-core';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "@angular/common";
|
|
6
|
-
import * as i2 from "@angular/forms";
|
|
7
|
-
import * as i3 from "@angular/cdk/drag-drop";
|
|
8
|
-
import * as i4 from "@fundamental-ngx/core/checkbox";
|
|
9
|
-
import * as i5 from "@fundamental-ngx/core/list";
|
|
10
|
-
export class UiGridColumnsComponent extends BaseComponent {
|
|
11
|
-
constructor() {
|
|
12
|
-
super(...arguments);
|
|
13
|
-
this.columnsChange = new EventEmitter();
|
|
14
|
-
this.selectedColumns = 0;
|
|
15
|
-
}
|
|
16
|
-
onDropColumn(columns, event) {
|
|
17
|
-
moveItemInArray(columns, event.previousIndex, event.currentIndex);
|
|
18
|
-
this.columnsChange.emit(columns);
|
|
19
|
-
}
|
|
20
|
-
onChangeColumnHidden(column) {
|
|
21
|
-
const selectedColIndex = this.columns.findIndex((c) => c.Name === column.Name);
|
|
22
|
-
if (selectedColIndex > -1) {
|
|
23
|
-
const existColumn = this.columns[selectedColIndex];
|
|
24
|
-
this.columns[selectedColIndex] = { ...existColumn, Hidden: !existColumn.Hidden };
|
|
25
|
-
}
|
|
26
|
-
this.columnsChange.emit(this.columns);
|
|
27
|
-
}
|
|
28
|
-
trackByMethod(column) {
|
|
29
|
-
return column.Name;
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
UiGridColumnsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UiGridColumnsComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
33
|
-
UiGridColumnsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: UiGridColumnsComponent, selector: "bsu-ui-grid-columns", inputs: { columns: "columns", selectedColumns: "selectedColumns" }, outputs: { columnsChange: "columnsChange" }, usesInheritance: true, ngImport: i0, template: "<h3>{{ 'Select All (' + selectedColumns + '/' + columns.length + ')' }}</h3>\r\n<ul\r\n fd-list\r\n [selection]=\"true\"\r\n cdkDropList\r\n cdkDropListOrientation=\"vertical\"\r\n (cdkDropListDropped)=\"onDropColumn(columns, $event)\"\r\n>\r\n <li\r\n cdkDrag\r\n fd-list-item\r\n *ngFor=\"let column of columns; trackBy: trackByMethod\"\r\n [selected]=\"!column.Hidden\"\r\n (click)=\"onChangeColumnHidden(column)\"\r\n >\r\n <fd-checkbox [ngModel]=\"!column.Hidden\"></fd-checkbox>\r\n <span fd-list-title>\r\n {{ column.Caption }}\r\n <strong *ngIf=\"column.IsMandatory\">*</strong>\r\n </span>\r\n </li>\r\n</ul>\r\n", styles: [":host{display:flex;flex-direction:column;width:100%}.inputIcon{background:#fafafa;color:#0a6ed1;cursor:pointer;max-width:400px;min-width:200px}.inputIcon:hover{background:rgba(224,224,224,.5)}strong{color:#ce3b3b}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { 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: "directive", type: i3.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i3.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "component", type: i4.CheckboxComponent, selector: "fd-checkbox", inputs: ["ariaLabel", "value", "ariaLabelledBy", "ariaDescribedBy", "title", "inputId", "state", "name", "label", "disabled", "tristate", "tristateSelectable", "labelClass", "required", "values"], outputs: ["focusChange"] }, { kind: "component", type: i5.ListComponent, selector: "[fd-list], [fdList]", inputs: ["dropdownMode", "multiInputMode", "mobileMode", "hasMessage", "noBorder", "navigationIndicator", "selection", "keyboardSupport", "byline"], outputs: ["focusEscapeList"] }, { kind: "component", type: i5.ListItemComponent, selector: "[fdListItem] ,[fd-list-item]", inputs: ["selected", "ariaDescribedBy", "noData", "action", "interactive", "growing", "counter", "unread", "selectedListItemScreenReaderText", "navigatedListItemScreenReaderText", "navigatableListItemScreenReaderText"], outputs: ["keyDown"] }, { kind: "directive", type: i5.ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
34
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UiGridColumnsComponent, decorators: [{
|
|
35
|
-
type: Component,
|
|
36
|
-
args: [{ selector: 'bsu-ui-grid-columns', changeDetection: ChangeDetectionStrategy.OnPush, template: "<h3>{{ 'Select All (' + selectedColumns + '/' + columns.length + ')' }}</h3>\r\n<ul\r\n fd-list\r\n [selection]=\"true\"\r\n cdkDropList\r\n cdkDropListOrientation=\"vertical\"\r\n (cdkDropListDropped)=\"onDropColumn(columns, $event)\"\r\n>\r\n <li\r\n cdkDrag\r\n fd-list-item\r\n *ngFor=\"let column of columns; trackBy: trackByMethod\"\r\n [selected]=\"!column.Hidden\"\r\n (click)=\"onChangeColumnHidden(column)\"\r\n >\r\n <fd-checkbox [ngModel]=\"!column.Hidden\"></fd-checkbox>\r\n <span fd-list-title>\r\n {{ column.Caption }}\r\n <strong *ngIf=\"column.IsMandatory\">*</strong>\r\n </span>\r\n </li>\r\n</ul>\r\n", styles: [":host{display:flex;flex-direction:column;width:100%}.inputIcon{background:#fafafa;color:#0a6ed1;cursor:pointer;max-width:400px;min-width:200px}.inputIcon:hover{background:rgba(224,224,224,.5)}strong{color:#ce3b3b}\n"] }]
|
|
37
|
-
}], propDecorators: { columns: [{
|
|
38
|
-
type: Input
|
|
39
|
-
}], columnsChange: [{
|
|
40
|
-
type: Output
|
|
41
|
-
}], selectedColumns: [{
|
|
42
|
-
type: Input
|
|
43
|
-
}] } });
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktZ3JpZC1jb2x1bW5zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLXNhcC11aS9zcmMvbGliL3VpLWdyaWQtY29sdW1ucy91aS1ncmlkLWNvbHVtbnMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktZ3JpZC1jb2x1bW5zL3VpLWdyaWQtY29sdW1ucy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdEUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkgsT0FBTyxFQUFFLGFBQWEsRUFBa0IsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7OztBQVFyRSxNQUFNLE9BQU8sc0JBQXVCLFNBQVEsYUFBYTtJQU56RDs7UUFRYyxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFvQixDQUFDO1FBQ3RELG9CQUFlLEdBQUcsQ0FBQyxDQUFDO0tBa0JoQztJQWhCRyxZQUFZLENBQUMsT0FBeUIsRUFBRSxLQUFvQztRQUN4RSxlQUFlLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ2xFLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxNQUFNO1FBQ3ZCLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQy9FLElBQUksZ0JBQWdCLEdBQUcsQ0FBQyxDQUFDLEVBQUU7WUFDdkIsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1lBQ25ELElBQUksQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxFQUFFLEdBQUcsV0FBVyxFQUFFLE1BQU0sRUFBRSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQztTQUNwRjtRQUNELElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBQ0QsYUFBYSxDQUFDLE1BQU07UUFDaEIsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDO0lBQ3ZCLENBQUM7O21IQXBCUSxzQkFBc0I7dUdBQXRCLHNCQUFzQixtTUNWbkMscXRCQXNCQTsyRkRaYSxzQkFBc0I7a0JBTmxDLFNBQVM7K0JBQ0kscUJBQXFCLG1CQUdkLHVCQUF1QixDQUFDLE1BQU07OEJBR3RDLE9BQU87c0JBQWYsS0FBSztnQkFDSSxhQUFhO3NCQUF0QixNQUFNO2dCQUNFLGVBQWU7c0JBQXZCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDZGtEcmFnRHJvcCwgbW92ZUl0ZW1JbkFycmF5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RyYWctZHJvcCc7XHJcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQmFzZUNvbXBvbmVudCwgQ29sdW1uSW5mb1R5cGUgfSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnYnN1LXVpLWdyaWQtY29sdW1ucycsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vdWktZ3JpZC1jb2x1bW5zLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL3VpLWdyaWQtY29sdW1ucy5jb21wb25lbnQuc2NzcyddLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIFVpR3JpZENvbHVtbnNDb21wb25lbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xyXG4gICAgQElucHV0KCkgY29sdW1uczogQ29sdW1uSW5mb1R5cGVbXTtcclxuICAgIEBPdXRwdXQoKSBjb2x1bW5zQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxDb2x1bW5JbmZvVHlwZVtdPigpO1xyXG4gICAgQElucHV0KCkgc2VsZWN0ZWRDb2x1bW5zID0gMDtcclxuXHJcbiAgICBvbkRyb3BDb2x1bW4oY29sdW1uczogQ29sdW1uSW5mb1R5cGVbXSwgZXZlbnQ6IENka0RyYWdEcm9wPENvbHVtbkluZm9UeXBlW10+KTogdm9pZCB7XHJcbiAgICAgICAgbW92ZUl0ZW1JbkFycmF5KGNvbHVtbnMsIGV2ZW50LnByZXZpb3VzSW5kZXgsIGV2ZW50LmN1cnJlbnRJbmRleCk7XHJcbiAgICAgICAgdGhpcy5jb2x1bW5zQ2hhbmdlLmVtaXQoY29sdW1ucyk7XHJcbiAgICB9XHJcblxyXG4gICAgb25DaGFuZ2VDb2x1bW5IaWRkZW4oY29sdW1uKTogdm9pZCB7XHJcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWRDb2xJbmRleCA9IHRoaXMuY29sdW1ucy5maW5kSW5kZXgoKGMpID0+IGMuTmFtZSA9PT0gY29sdW1uLk5hbWUpO1xyXG4gICAgICAgIGlmIChzZWxlY3RlZENvbEluZGV4ID4gLTEpIHtcclxuICAgICAgICAgICAgY29uc3QgZXhpc3RDb2x1bW4gPSB0aGlzLmNvbHVtbnNbc2VsZWN0ZWRDb2xJbmRleF07XHJcbiAgICAgICAgICAgIHRoaXMuY29sdW1uc1tzZWxlY3RlZENvbEluZGV4XSA9IHsgLi4uZXhpc3RDb2x1bW4sIEhpZGRlbjogIWV4aXN0Q29sdW1uLkhpZGRlbiB9O1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmNvbHVtbnNDaGFuZ2UuZW1pdCh0aGlzLmNvbHVtbnMpO1xyXG4gICAgfVxyXG4gICAgdHJhY2tCeU1ldGhvZChjb2x1bW4pOiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiBjb2x1bW4uTmFtZTtcclxuICAgIH1cclxufVxyXG4iLCI8aDM+e3sgJ1NlbGVjdCBBbGwgKCcgKyBzZWxlY3RlZENvbHVtbnMgKyAnLycgKyBjb2x1bW5zLmxlbmd0aCArICcpJyB9fTwvaDM+XHJcbjx1bFxyXG4gICAgZmQtbGlzdFxyXG4gICAgW3NlbGVjdGlvbl09XCJ0cnVlXCJcclxuICAgIGNka0Ryb3BMaXN0XHJcbiAgICBjZGtEcm9wTGlzdE9yaWVudGF0aW9uPVwidmVydGljYWxcIlxyXG4gICAgKGNka0Ryb3BMaXN0RHJvcHBlZCk9XCJvbkRyb3BDb2x1bW4oY29sdW1ucywgJGV2ZW50KVwiXHJcbj5cclxuICAgIDxsaVxyXG4gICAgICAgIGNka0RyYWdcclxuICAgICAgICBmZC1saXN0LWl0ZW1cclxuICAgICAgICAqbmdGb3I9XCJsZXQgY29sdW1uIG9mIGNvbHVtbnM7IHRyYWNrQnk6IHRyYWNrQnlNZXRob2RcIlxyXG4gICAgICAgIFtzZWxlY3RlZF09XCIhY29sdW1uLkhpZGRlblwiXHJcbiAgICAgICAgKGNsaWNrKT1cIm9uQ2hhbmdlQ29sdW1uSGlkZGVuKGNvbHVtbilcIlxyXG4gICAgPlxyXG4gICAgICAgIDxmZC1jaGVja2JveCBbbmdNb2RlbF09XCIhY29sdW1uLkhpZGRlblwiPjwvZmQtY2hlY2tib3g+XHJcbiAgICAgICAgPHNwYW4gZmQtbGlzdC10aXRsZT5cclxuICAgICAgICAgICAge3sgY29sdW1uLkNhcHRpb24gfX1cclxuICAgICAgICAgICAgPHN0cm9uZyAqbmdJZj1cImNvbHVtbi5Jc01hbmRhdG9yeVwiPio8L3N0cm9uZz5cclxuICAgICAgICA8L3NwYW4+XHJcbiAgICA8L2xpPlxyXG48L3VsPlxyXG4iXX0=
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';
|
|
2
|
-
import { BaseComponent, FormComponent } from 'barsa-novin-ray-core';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@angular/common";
|
|
5
|
-
import * as i2 from "barsa-novin-ray-core";
|
|
6
|
-
import * as i3 from "@fundamental-ngx/core/button";
|
|
7
|
-
import * as i4 from "@fundamental-ngx/core/select";
|
|
8
|
-
export class UiGridFilterItemComponent extends BaseComponent {
|
|
9
|
-
constructor() {
|
|
10
|
-
super(...arguments);
|
|
11
|
-
this.add = new EventEmitter();
|
|
12
|
-
this.remove = new EventEmitter();
|
|
13
|
-
this.allConditions = [
|
|
14
|
-
'contains',
|
|
15
|
-
'equal to',
|
|
16
|
-
'between',
|
|
17
|
-
'starts with',
|
|
18
|
-
'ends with',
|
|
19
|
-
'less than',
|
|
20
|
-
'less than or equal to',
|
|
21
|
-
'greater than or equal to',
|
|
22
|
-
'empty'
|
|
23
|
-
];
|
|
24
|
-
}
|
|
25
|
-
ngOnInit() {
|
|
26
|
-
super.ngOnInit();
|
|
27
|
-
const fieldCtrlr = this.formPanelCtrlr.GetControlByName(this.selectedColumnName);
|
|
28
|
-
fieldCtrlr.SetVisible(true);
|
|
29
|
-
this._setSelectedColumn();
|
|
30
|
-
}
|
|
31
|
-
onColumnChange(name) {
|
|
32
|
-
this.selectedColumnName = name;
|
|
33
|
-
this._setSelectedColumn();
|
|
34
|
-
this.columns.forEach((c) => {
|
|
35
|
-
const columnFieldCtrlr = this.formPanelCtrlr.GetControlByName(c.Name);
|
|
36
|
-
columnFieldCtrlr.SetVisible(false);
|
|
37
|
-
});
|
|
38
|
-
const fieldCtrlr = this.formPanelCtrlr.GetControlByName(name);
|
|
39
|
-
fieldCtrlr.SetVisible(true);
|
|
40
|
-
}
|
|
41
|
-
onConditionChange() { }
|
|
42
|
-
_setSelectedColumn() {
|
|
43
|
-
this.selectedColumn = this.columns.find((c) => c.Name === this.selectedColumnName);
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
UiGridFilterItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UiGridFilterItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
47
|
-
UiGridFilterItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: UiGridFilterItemComponent, selector: "bsu-ui-grid-filter-item", inputs: { formPanelCtrlr: "formPanelCtrlr", columns: "columns", selectedColumnName: "selectedColumnName", selectedColumn: "selectedColumn" }, outputs: { add: "add", remove: "remove" }, viewQueries: [{ propertyName: "formComponent", first: true, predicate: FormComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"sort-select\">\r\n <fd-select (valueChange)=\"onColumnChange($event)\" [value]=\"selectedColumn?.Name\">\r\n <fd-option *ngFor=\"let column of columns\" [value]=\"column.Name\">{{ column.Caption }}</fd-option>\r\n </fd-select>\r\n <div class=\"spacer\"></div>\r\n <fd-select (valueChange)=\"onConditionChange()\">\r\n <fd-option *ngFor=\"let item of allConditions\" [value]=\"item\">{{ item }}</fd-option>\r\n </fd-select>\r\n <button fd-button glyph=\"decline\" fdType=\"transparent\" style=\"visibility: hidden\"></button>\r\n</div>\r\n<div class=\"sort-buttons\">\r\n <bnrc-form [formPanelCtrl]=\"formPanelCtrlr\"></bnrc-form>\r\n <button fd-button glyph=\"decline\" fdType=\"transparent\" (click)=\"this.remove.emit()\"></button>\r\n</div>\r\n", styles: [":host{display:flex;width:100%;flex-direction:column;margin-bottom:15px}:host ::ng-deep bnrc-form bsu-layout-control,:host ::ng-deep bnrc-form bnrc-field-ui{max-width:100%!important;width:100%!important;padding:0!important}:host ::ng-deep .sort-select fd-select,:host ::ng-deep .sort-select fd-select fd-popover{width:100%}.sort-select{display:flex;flex-grow:1}.spacer{flex-shrink:0;width:10px}.sort-buttons{display:flex;align-items:center}.sort-buttons input{flex:1}button{margin:0 5px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i2.FormComponent, selector: "bnrc-form", inputs: ["params", "customFormPanelUi", "formPanelCtrl", "UlvMainCtrlr", "formPanelCtrlId", "saveOnChange", "inlineEditInReport"], outputs: ["titleChanged", "moChanged", "formClose", "formRendered", "bruleAction", "beforeTransition", "afterTransition"] }, { kind: "component", type: i3.ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i4.SelectComponent, selector: "fd-select", inputs: ["controlId", "state", "mobile", "stateMessage", "disabled", "required", "readonly", "placeholder", "value", "extendedBodyTemplate", "maxHeight", "glyph", "closeOnOutsideClick", "fillControlMode", "controlTemplate", "appendTo", "unselectMissingOption", "typeaheadDebounceInterval", "ariaLabelledBy", "ariaLabel", "mobileConfig", "inline"], outputs: ["isOpenChange", "valueChange"] }, { kind: "component", type: i4.OptionComponent, selector: "[fd-option], fd-option", inputs: ["id", "value", "disabled"], outputs: ["selectionChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
48
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UiGridFilterItemComponent, decorators: [{
|
|
49
|
-
type: Component,
|
|
50
|
-
args: [{ selector: 'bsu-ui-grid-filter-item', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"sort-select\">\r\n <fd-select (valueChange)=\"onColumnChange($event)\" [value]=\"selectedColumn?.Name\">\r\n <fd-option *ngFor=\"let column of columns\" [value]=\"column.Name\">{{ column.Caption }}</fd-option>\r\n </fd-select>\r\n <div class=\"spacer\"></div>\r\n <fd-select (valueChange)=\"onConditionChange()\">\r\n <fd-option *ngFor=\"let item of allConditions\" [value]=\"item\">{{ item }}</fd-option>\r\n </fd-select>\r\n <button fd-button glyph=\"decline\" fdType=\"transparent\" style=\"visibility: hidden\"></button>\r\n</div>\r\n<div class=\"sort-buttons\">\r\n <bnrc-form [formPanelCtrl]=\"formPanelCtrlr\"></bnrc-form>\r\n <button fd-button glyph=\"decline\" fdType=\"transparent\" (click)=\"this.remove.emit()\"></button>\r\n</div>\r\n", styles: [":host{display:flex;width:100%;flex-direction:column;margin-bottom:15px}:host ::ng-deep bnrc-form bsu-layout-control,:host ::ng-deep bnrc-form bnrc-field-ui{max-width:100%!important;width:100%!important;padding:0!important}:host ::ng-deep .sort-select fd-select,:host ::ng-deep .sort-select fd-select fd-popover{width:100%}.sort-select{display:flex;flex-grow:1}.spacer{flex-shrink:0;width:10px}.sort-buttons{display:flex;align-items:center}.sort-buttons input{flex:1}button{margin:0 5px}\n"] }]
|
|
51
|
-
}], propDecorators: { formComponent: [{
|
|
52
|
-
type: ViewChild,
|
|
53
|
-
args: [FormComponent]
|
|
54
|
-
}], add: [{
|
|
55
|
-
type: Output
|
|
56
|
-
}], remove: [{
|
|
57
|
-
type: Output
|
|
58
|
-
}], formPanelCtrlr: [{
|
|
59
|
-
type: Input
|
|
60
|
-
}], columns: [{
|
|
61
|
-
type: Input
|
|
62
|
-
}], selectedColumnName: [{
|
|
63
|
-
type: Input
|
|
64
|
-
}], selectedColumn: [{
|
|
65
|
-
type: Input
|
|
66
|
-
}] } });
|
|
67
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktZ3JpZC1maWx0ZXItaXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1zYXAtdWkvc3JjL2xpYi91aS1ncmlkLWZpbHRlci1pdGVtL3VpLWdyaWQtZmlsdGVyLWl0ZW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktZ3JpZC1maWx0ZXItaXRlbS91aS1ncmlkLWZpbHRlci1pdGVtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRW5ILE9BQU8sRUFBRSxhQUFhLEVBQWlDLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7Ozs7QUFPbkcsTUFBTSxPQUFPLHlCQUEwQixTQUFRLGFBQWE7SUFONUQ7O1FBUWMsUUFBRyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDekIsV0FBTSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFLdEMsa0JBQWEsR0FBRztZQUNaLFVBQVU7WUFDVixVQUFVO1lBQ1YsU0FBUztZQUNULGFBQWE7WUFDYixXQUFXO1lBQ1gsV0FBVztZQUNYLHVCQUF1QjtZQUN2QiwwQkFBMEI7WUFDMUIsT0FBTztTQUNWLENBQUM7S0F1Qkw7SUFyQkcsUUFBUTtRQUNKLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQixNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQ2pGLFVBQVUsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDNUIsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUNELGNBQWMsQ0FBQyxJQUFJO1FBQ2YsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQztRQUMvQixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUMxQixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ3ZCLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDdEUsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3ZDLENBQUMsQ0FBQyxDQUFDO1FBRUgsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM5RCxVQUFVLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFDRCxpQkFBaUIsS0FBVSxDQUFDO0lBQ2xCLGtCQUFrQjtRQUN4QixJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQ3ZGLENBQUM7O3NIQXhDUSx5QkFBeUI7MEdBQXpCLHlCQUF5Qix1U0FDdkIsYUFBYSx1RUNWNUIsZ3lCQWNBOzJGRExhLHlCQUF5QjtrQkFOckMsU0FBUzsrQkFDSSx5QkFBeUIsbUJBR2xCLHVCQUF1QixDQUFDLE1BQU07OEJBR3JCLGFBQWE7c0JBQXRDLFNBQVM7dUJBQUMsYUFBYTtnQkFDZCxHQUFHO3NCQUFaLE1BQU07Z0JBQ0csTUFBTTtzQkFBZixNQUFNO2dCQUNFLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgQmFzZUNvbXBvbmVudCwgUmVwb3J0Vmlld0NvbHVtbiwgRm9ybVNldHRpbmcsIEZvcm1Db21wb25lbnQgfSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdic3UtdWktZ3JpZC1maWx0ZXItaXRlbScsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vdWktZ3JpZC1maWx0ZXItaXRlbS5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi91aS1ncmlkLWZpbHRlci1pdGVtLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVWlHcmlkRmlsdGVySXRlbUNvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gICAgQFZpZXdDaGlsZChGb3JtQ29tcG9uZW50KSBmb3JtQ29tcG9uZW50OiBGb3JtQ29tcG9uZW50O1xyXG4gICAgQE91dHB1dCgpIGFkZCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICAgIEBPdXRwdXQoKSByZW1vdmUgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgICBASW5wdXQoKSBmb3JtUGFuZWxDdHJscjogRm9ybVNldHRpbmc7XHJcbiAgICBASW5wdXQoKSBjb2x1bW5zOiBSZXBvcnRWaWV3Q29sdW1uW107XHJcbiAgICBASW5wdXQoKSBzZWxlY3RlZENvbHVtbk5hbWU6IHN0cmluZztcclxuICAgIEBJbnB1dCgpIHNlbGVjdGVkQ29sdW1uOiBSZXBvcnRWaWV3Q29sdW1uIHwgdW5kZWZpbmVkO1xyXG4gICAgYWxsQ29uZGl0aW9ucyA9IFtcclxuICAgICAgICAnY29udGFpbnMnLFxyXG4gICAgICAgICdlcXVhbCB0bycsXHJcbiAgICAgICAgJ2JldHdlZW4nLFxyXG4gICAgICAgICdzdGFydHMgd2l0aCcsXHJcbiAgICAgICAgJ2VuZHMgd2l0aCcsXHJcbiAgICAgICAgJ2xlc3MgdGhhbicsXHJcbiAgICAgICAgJ2xlc3MgdGhhbiBvciBlcXVhbCB0bycsXHJcbiAgICAgICAgJ2dyZWF0ZXIgdGhhbiBvciBlcXVhbCB0bycsXHJcbiAgICAgICAgJ2VtcHR5J1xyXG4gICAgXTtcclxuXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xyXG4gICAgICAgIGNvbnN0IGZpZWxkQ3RybHIgPSB0aGlzLmZvcm1QYW5lbEN0cmxyLkdldENvbnRyb2xCeU5hbWUodGhpcy5zZWxlY3RlZENvbHVtbk5hbWUpO1xyXG4gICAgICAgIGZpZWxkQ3RybHIuU2V0VmlzaWJsZSh0cnVlKTtcclxuICAgICAgICB0aGlzLl9zZXRTZWxlY3RlZENvbHVtbigpO1xyXG4gICAgfVxyXG4gICAgb25Db2x1bW5DaGFuZ2UobmFtZSk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRDb2x1bW5OYW1lID0gbmFtZTtcclxuICAgICAgICB0aGlzLl9zZXRTZWxlY3RlZENvbHVtbigpO1xyXG4gICAgICAgIHRoaXMuY29sdW1ucy5mb3JFYWNoKChjKSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IGNvbHVtbkZpZWxkQ3RybHIgPSB0aGlzLmZvcm1QYW5lbEN0cmxyLkdldENvbnRyb2xCeU5hbWUoYy5OYW1lKTtcclxuICAgICAgICAgICAgY29sdW1uRmllbGRDdHJsci5TZXRWaXNpYmxlKGZhbHNlKTtcclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgY29uc3QgZmllbGRDdHJsciA9IHRoaXMuZm9ybVBhbmVsQ3RybHIuR2V0Q29udHJvbEJ5TmFtZShuYW1lKTtcclxuICAgICAgICBmaWVsZEN0cmxyLlNldFZpc2libGUodHJ1ZSk7XHJcbiAgICB9XHJcbiAgICBvbkNvbmRpdGlvbkNoYW5nZSgpOiB2b2lkIHt9XHJcbiAgICBwcm90ZWN0ZWQgX3NldFNlbGVjdGVkQ29sdW1uKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRDb2x1bW4gPSB0aGlzLmNvbHVtbnMuZmluZCgoYykgPT4gYy5OYW1lID09PSB0aGlzLnNlbGVjdGVkQ29sdW1uTmFtZSk7XHJcbiAgICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInNvcnQtc2VsZWN0XCI+XHJcbiAgICA8ZmQtc2VsZWN0ICh2YWx1ZUNoYW5nZSk9XCJvbkNvbHVtbkNoYW5nZSgkZXZlbnQpXCIgW3ZhbHVlXT1cInNlbGVjdGVkQ29sdW1uPy5OYW1lXCI+XHJcbiAgICAgICAgPGZkLW9wdGlvbiAqbmdGb3I9XCJsZXQgY29sdW1uIG9mIGNvbHVtbnNcIiBbdmFsdWVdPVwiY29sdW1uLk5hbWVcIj57eyBjb2x1bW4uQ2FwdGlvbiB9fTwvZmQtb3B0aW9uPlxyXG4gICAgPC9mZC1zZWxlY3Q+XHJcbiAgICA8ZGl2IGNsYXNzPVwic3BhY2VyXCI+PC9kaXY+XHJcbiAgICA8ZmQtc2VsZWN0ICh2YWx1ZUNoYW5nZSk9XCJvbkNvbmRpdGlvbkNoYW5nZSgpXCI+XHJcbiAgICAgICAgPGZkLW9wdGlvbiAqbmdGb3I9XCJsZXQgaXRlbSBvZiBhbGxDb25kaXRpb25zXCIgW3ZhbHVlXT1cIml0ZW1cIj57eyBpdGVtIH19PC9mZC1vcHRpb24+XHJcbiAgICA8L2ZkLXNlbGVjdD5cclxuICAgIDxidXR0b24gZmQtYnV0dG9uIGdseXBoPVwiZGVjbGluZVwiIGZkVHlwZT1cInRyYW5zcGFyZW50XCIgc3R5bGU9XCJ2aXNpYmlsaXR5OiBoaWRkZW5cIj48L2J1dHRvbj5cclxuPC9kaXY+XHJcbjxkaXYgY2xhc3M9XCJzb3J0LWJ1dHRvbnNcIj5cclxuICAgIDxibnJjLWZvcm0gW2Zvcm1QYW5lbEN0cmxdPVwiZm9ybVBhbmVsQ3RybHJcIj48L2JucmMtZm9ybT5cclxuICAgIDxidXR0b24gZmQtYnV0dG9uIGdseXBoPVwiZGVjbGluZVwiIGZkVHlwZT1cInRyYW5zcGFyZW50XCIgKGNsaWNrKT1cInRoaXMucmVtb3ZlLmVtaXQoKVwiPjwvYnV0dG9uPlxyXG48L2Rpdj5cclxuIl19
|