barsa-sap-ui 0.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/README.md +25 -0
- package/esm2020/barsa-sap-ui.mjs +5 -0
- package/esm2020/lib/apply-conditional-formmatings.directive.mjs +84 -0
- package/esm2020/lib/barsa-asp-viewer/barsa-asp-viewer.component.mjs +109 -0
- package/esm2020/lib/barsa-base-layout/barsa-base-layout.component.mjs +34 -0
- package/esm2020/lib/barsa-date-time-picker/barsa-date-time-picker.component.mjs +71 -0
- package/esm2020/lib/barsa-list-file-linear/barsa-list-file-linear.component.mjs +28 -0
- package/esm2020/lib/barsa-monaco-editor/barsa-monaco-editor.component.mjs +77 -0
- package/esm2020/lib/barsa-network-offline/barsa-network-offline.component.mjs +45 -0
- package/esm2020/lib/barsa-sap-ui-routing.module.mjs +17 -0
- package/esm2020/lib/barsa-sap-ui.module.mjs +277 -0
- package/esm2020/lib/barsa-search-form/barsa-search-form.component.mjs +29 -0
- package/esm2020/lib/barsa-table-header/barsa-table-header.component.mjs +122 -0
- package/esm2020/lib/barsa-table-row/barsa-table-row.component.mjs +57 -0
- package/esm2020/lib/barsa-tinyemce/barsa-tinyemce.component.mjs +334 -0
- package/esm2020/lib/barsa-tree-item/barsa-tree-item.component.mjs +120 -0
- package/esm2020/lib/barsa-tree-item/node-has-one-depth-level.pipe.mjs +19 -0
- package/esm2020/lib/barsa-ulv-main/barsa-ulv-main.component.mjs +156 -0
- package/esm2020/lib/breadcrumb/breadcrumb.component.mjs +45 -0
- package/esm2020/lib/captcha-field/captcha-field.component.mjs +28 -0
- package/esm2020/lib/card-item/card-item.component.mjs +60 -0
- package/esm2020/lib/card-view-content/card-view-content.component.mjs +23 -0
- package/esm2020/lib/col-renderer.directive.mjs +50 -0
- package/esm2020/lib/column-matrix-renderer/column-matrix-renderer.component.mjs +56 -0
- package/esm2020/lib/column-matrix-renderer/matrix-value.pipe.mjs +60 -0
- package/esm2020/lib/column-renderer/column-renderer.component.mjs +84 -0
- package/esm2020/lib/constants.mjs +413 -0
- package/esm2020/lib/custom-date-time/custom-date-time.component.mjs +41 -0
- package/esm2020/lib/device-info-field-base.mjs +23 -0
- package/esm2020/lib/dynamic-page-size.pipe.mjs +26 -0
- package/esm2020/lib/empty-page/empty-page.component.mjs +38 -0
- package/esm2020/lib/file-in-dialog/file-in-dialog.component.mjs +44 -0
- package/esm2020/lib/form-dialog/form-dialog.component.mjs +125 -0
- package/esm2020/lib/form-dialog-less/form-dialog-less.component.mjs +38 -0
- package/esm2020/lib/form-page/form-page.component.mjs +51 -0
- package/esm2020/lib/form-page-base.mjs +129 -0
- package/esm2020/lib/form-toolbar-button/form-toolbar-button.component.mjs +44 -0
- package/esm2020/lib/form-wizard/form-wizard.component.mjs +21 -0
- package/esm2020/lib/fullscreen-dialog.directive.mjs +40 -0
- package/esm2020/lib/fundamental-dynamic-form/fundamental-dynamic-form.component.mjs +152 -0
- package/esm2020/lib/gantt-dhtml-chart-view/gantt-dhtml-chart-view.component.mjs +203 -0
- package/esm2020/lib/global-search/global-search.component.mjs +26 -0
- package/esm2020/lib/global-search-module/global-search-module.component.mjs +30 -0
- package/esm2020/lib/global-search-panel/global-search-panel.component.mjs +30 -0
- package/esm2020/lib/header-avatar/header-avatar.component.mjs +19 -0
- package/esm2020/lib/header-facet-form/header-facet-form.component.mjs +22 -0
- package/esm2020/lib/header-facet-key-value/header-facet-key-value.component.mjs +31 -0
- package/esm2020/lib/header-facet-microchart/header-facet-microchart.component.mjs +21 -0
- package/esm2020/lib/header-facet-plain-text/header-facet-plain-text.component.mjs +28 -0
- package/esm2020/lib/header-facet-progress/header-facet-progress.component.mjs +26 -0
- package/esm2020/lib/header-facet-rate/header-facet-rate.component.mjs +26 -0
- package/esm2020/lib/htree-create-new/htree-create-new.component.mjs +49 -0
- package/esm2020/lib/hyperlink/hyperlink.component.mjs +19 -0
- package/esm2020/lib/index.mjs +412 -0
- package/esm2020/lib/inline-save-and-cancel/inline-save-and-cancel.component.mjs +32 -0
- package/esm2020/lib/layout-actions/layout-actions.component.mjs +65 -0
- package/esm2020/lib/layout-control/layout-control.component.mjs +214 -0
- package/esm2020/lib/layout-wizard/layout-wizard.component.mjs +133 -0
- package/esm2020/lib/list-item/list-item.component.mjs +30 -0
- package/esm2020/lib/ly-empty-space/ly-empty-space.component.mjs +37 -0
- package/esm2020/lib/ly-horizontal-layout/ly-horizontal-layout.component.mjs +70 -0
- package/esm2020/lib/ly-label/ly-label.component.mjs +31 -0
- package/esm2020/lib/ly-layout-container/ly-layout-container.component.mjs +83 -0
- package/esm2020/lib/ly-layout-container-of-root/ly-layout-container-of-root.component.mjs +17 -0
- package/esm2020/lib/ly-layout-field-label/ly-layout-field-label.component.mjs +24 -0
- package/esm2020/lib/ly-layout-panel/ly-layout-panel.component.mjs +64 -0
- package/esm2020/lib/ly-line/ly-line.component.mjs +56 -0
- package/esm2020/lib/ly-simple-label/ly-simple-label.component.mjs +27 -0
- package/esm2020/lib/ly-tab-container/ly-tab-container.component.mjs +43 -0
- package/esm2020/lib/ly-tab-page/ly-tab-page.component.mjs +35 -0
- package/esm2020/lib/ly-vertical-layout/ly-vertical-layout.component.mjs +49 -0
- package/esm2020/lib/manage-filters-report/manage-filters-report.component.mjs +45 -0
- package/esm2020/lib/mask/mask.component.mjs +22 -0
- package/esm2020/lib/message-strip/message-strip.component.mjs +28 -0
- package/esm2020/lib/models/grid-data-provider.mjs +219 -0
- package/esm2020/lib/models/grid-view.mjs +2 -0
- package/esm2020/lib/models/index.mjs +2 -0
- package/esm2020/lib/no-data/no-data.component.mjs +20 -0
- package/esm2020/lib/page-with-form-handler-base.mjs +42 -0
- package/esm2020/lib/page-with-header/page-with-header.component.mjs +76 -0
- package/esm2020/lib/progress-indicator/progress-indicator.component.mjs +18 -0
- package/esm2020/lib/report-navigator/report-navigator.component.mjs +62 -0
- package/esm2020/lib/report-new-top-form/report-new-top-form.component.mjs +60 -0
- package/esm2020/lib/report-search-fields-hidden-settings/report-search-fields-hidden-settings.component.mjs +35 -0
- package/esm2020/lib/report-search-fields-manage/report-search-fields-manage.component.mjs +99 -0
- package/esm2020/lib/report-search-panel-save/report-search-panel-save.component.mjs +90 -0
- package/esm2020/lib/report-tree-base.mjs +405 -0
- package/esm2020/lib/report-view-renderer.directive.mjs +248 -0
- package/esm2020/lib/responsive-toolbar/responsive-toolbar.component.mjs +50 -0
- package/esm2020/lib/responsive-toolbar-renderer/responsive-toolbar-renderer.component.mjs +84 -0
- package/esm2020/lib/rich-text-static/rich-text-static.component.mjs +35 -0
- package/esm2020/lib/sap-font-class.pipe.mjs +29 -0
- package/esm2020/lib/sap-font.pipe.mjs +29 -0
- package/esm2020/lib/sap-ui-report-base.component.mjs +689 -0
- package/esm2020/lib/search-panel/search-panel.component.mjs +40 -0
- package/esm2020/lib/static-text/static-text.component.mjs +15 -0
- package/esm2020/lib/title/title.component.mjs +15 -0
- package/esm2020/lib/ui-asp-report-viewer/ui-asp-report-viewer.component.mjs +14 -0
- package/esm2020/lib/ui-button/ui-button.component.mjs +31 -0
- package/esm2020/lib/ui-calendar/ui-calendar.component.mjs +46 -0
- package/esm2020/lib/ui-card-view/ui-card-view.component.mjs +60 -0
- package/esm2020/lib/ui-card-view-horizontal-group/ui-card-view-horizontal-group.component.mjs +27 -0
- package/esm2020/lib/ui-check-box/ui-check-box.component.mjs +29 -0
- package/esm2020/lib/ui-color-ui/ui-color-ui.component.mjs +50 -0
- package/esm2020/lib/ui-container-with-button/ui-container-with-button.component.mjs +34 -0
- package/esm2020/lib/ui-date-range-ex/ui-date-range-ex.component.mjs +194 -0
- package/esm2020/lib/ui-date-time/ui-date-time.component.mjs +116 -0
- package/esm2020/lib/ui-editable-grid/ui-editable-grid.component.mjs +110 -0
- package/esm2020/lib/ui-exception-form/ui-exception-form.component.mjs +61 -0
- package/esm2020/lib/ui-file-linear-list-box/ui-file-linear-list-box.component.mjs +181 -0
- package/esm2020/lib/ui-form-panel/ui-form-panel.component.mjs +43 -0
- package/esm2020/lib/ui-form-panel-toolbar/ui-form-panel-toolbar.component.mjs +26 -0
- package/esm2020/lib/ui-gantt-chart/ui-gantt-chart.component.mjs +32 -0
- package/esm2020/lib/ui-graph/ui-graph.component.mjs +16 -0
- package/esm2020/lib/ui-grid/ui-grid.component.mjs +25 -0
- package/esm2020/lib/ui-grid-columns/ui-grid-columns.component.mjs +44 -0
- package/esm2020/lib/ui-grid-filter-item/ui-grid-filter-item.component.mjs +67 -0
- package/esm2020/lib/ui-grid-filter-settings/ui-grid-filter-settings.component.mjs +76 -0
- package/esm2020/lib/ui-grid-sort-item/ui-grid-sort-item.component.mjs +59 -0
- package/esm2020/lib/ui-grid-sort-setting/ui-grid-sort-setting.component.mjs +156 -0
- package/esm2020/lib/ui-info-bar-panel/ui-info-bar-panel.component.mjs +11 -0
- package/esm2020/lib/ui-label/ui-label.component.mjs +12 -0
- package/esm2020/lib/ui-linear-list-container-with-button/ui-linear-list-container-with-button.component.mjs +299 -0
- package/esm2020/lib/ui-list-view/ui-list-view.component.mjs +44 -0
- package/esm2020/lib/ui-matrix-view/ui-matrix-view.component.mjs +125 -0
- package/esm2020/lib/ui-mo-info-combo-viewer/ui-mo-info-combo-viewer.component.mjs +19 -0
- package/esm2020/lib/ui-mo-info-general-object-ui/ui-mo-info-general-object-ui.component.mjs +13 -0
- package/esm2020/lib/ui-mo-info-sub-form-ui/ui-mo-info-sub-form-ui.component.mjs +46 -0
- package/esm2020/lib/ui-mo-info-ulv-combo/ui-mo-info-ulv-combo.component.mjs +335 -0
- package/esm2020/lib/ui-monaco-editor/ui-monaco-editor.component.mjs +18 -0
- package/esm2020/lib/ui-multi-select-combo/ui-multi-select-combo.component.mjs +83 -0
- package/esm2020/lib/ui-num-decimal-ui/ui-num-decimal-ui.component.mjs +24 -0
- package/esm2020/lib/ui-num-int-ui/ui-num-int-ui.component.mjs +21 -0
- package/esm2020/lib/ui-pdf-viewer/ui-pdf-viewer.component.mjs +216 -0
- package/esm2020/lib/ui-picture-file/ui-picture-file.component.mjs +95 -0
- package/esm2020/lib/ui-pictures-info/ui-pictures-info.component.mjs +215 -0
- package/esm2020/lib/ui-radio-group/ui-radio-group.component.mjs +24 -0
- package/esm2020/lib/ui-read-only-field/ui-read-only-field.component.mjs +29 -0
- package/esm2020/lib/ui-report-container/ui-report-container.component.mjs +46 -0
- package/esm2020/lib/ui-search-command-info-ui/ui-search-command-info-ui.component.mjs +24 -0
- package/esm2020/lib/ui-simple-combo/ui-simple-combo.component.mjs +29 -0
- package/esm2020/lib/ui-single-picture/ui-single-picture.component.mjs +36 -0
- package/esm2020/lib/ui-switch-button/ui-switch-button.component.mjs +20 -0
- package/esm2020/lib/ui-table-view/ui-table-view.component.mjs +106 -0
- package/esm2020/lib/ui-text-area/ui-text-area.component.mjs +44 -0
- package/esm2020/lib/ui-text-field/ui-text-field.component.mjs +47 -0
- package/esm2020/lib/ui-text-field-auto-complete/ui-text-field-auto-complete.component.mjs +47 -0
- package/esm2020/lib/ui-time-span/ui-time-span.component.mjs +24 -0
- package/esm2020/lib/ui-tinymce/ui-tinymce.component.mjs +53 -0
- package/esm2020/lib/ui-tree/ui-tree.component.mjs +69 -0
- package/esm2020/lib/ui-tree-view/ui-tree-view.component.mjs +75 -0
- package/esm2020/lib/ui-ulv-form-multi-select-ui/ui-ulv-form-multi-select-ui.component.mjs +24 -0
- package/esm2020/lib/ui-ulv-main-ui/ui-ulv-main-ui.component.mjs +276 -0
- package/esm2020/lib/ui-workflow-panel-ui/ui-workflow-panel-ui.component.mjs +26 -0
- package/esm2020/lib/ul-loading-mask-ui/ul-loading-mask-ui.component.mjs +86 -0
- package/esm2020/lib/ul-msg-box-adapter/ul-msg-box-adapter.component.mjs +117 -0
- package/esm2020/lib/ul-notify-popup/ul-notify-popup.component.mjs +114 -0
- package/esm2020/lib/ul-toast-adapter/ul-toast-adapter.component.mjs +44 -0
- package/esm2020/lib/ulv-column-settings/ulv-column-settings.component.mjs +53 -0
- package/esm2020/lib/ulv-context-menu/ulv-context-menu.component.mjs +74 -0
- package/esm2020/lib/ulv-filter-settings/ulv-filter-settings.component.mjs +43 -0
- package/esm2020/lib/ulv-form-multi-select/ulv-form-multi-select.component.mjs +183 -0
- package/esm2020/lib/ulv-groupby-settings/ulv-groupby-settings.component.mjs +44 -0
- package/esm2020/lib/ulv-paging/ulv-paging.component.mjs +73 -0
- package/esm2020/lib/ulv-selection/ulv-selection.component.mjs +66 -0
- package/esm2020/lib/ulv-settings/ulv-settings.component.mjs +117 -0
- package/esm2020/lib/ulv-sort-settings/ulv-sort-settings.component.mjs +44 -0
- package/esm2020/lib/ulv-toolbar/ulv-toolbar.component.mjs +110 -0
- package/esm2020/lib/upload-file-status.pipe.mjs +28 -0
- package/esm2020/lib/wizard-layout.directive.mjs +102 -0
- package/esm2020/public-api.mjs +170 -0
- package/fesm2015/barsa-sap-ui.mjs +11437 -0
- package/fesm2015/barsa-sap-ui.mjs.map +1 -0
- package/fesm2020/barsa-sap-ui.mjs +11427 -0
- package/fesm2020/barsa-sap-ui.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/apply-conditional-formmatings.directive.d.ts +25 -0
- package/lib/barsa-asp-viewer/barsa-asp-viewer.component.d.ts +26 -0
- package/lib/barsa-base-layout/barsa-base-layout.component.d.ts +18 -0
- package/lib/barsa-date-time-picker/barsa-date-time-picker.component.d.ts +18 -0
- package/lib/barsa-list-file-linear/barsa-list-file-linear.component.d.ts +8 -0
- package/lib/barsa-monaco-editor/barsa-monaco-editor.component.d.ts +18 -0
- package/lib/barsa-network-offline/barsa-network-offline.component.d.ts +13 -0
- package/lib/barsa-sap-ui-routing.module.d.ts +7 -0
- package/lib/barsa-sap-ui.module.d.ts +181 -0
- package/lib/barsa-search-form/barsa-search-form.component.d.ts +8 -0
- package/lib/barsa-table-header/barsa-table-header.component.d.ts +37 -0
- package/lib/barsa-table-row/barsa-table-row.component.d.ts +20 -0
- package/lib/barsa-tinyemce/barsa-tinyemce.component.d.ts +43 -0
- package/lib/barsa-tree-item/barsa-tree-item.component.d.ts +48 -0
- package/lib/barsa-tree-item/node-has-one-depth-level.pipe.d.ts +8 -0
- package/lib/barsa-ulv-main/barsa-ulv-main.component.d.ts +52 -0
- package/lib/breadcrumb/breadcrumb.component.d.ts +17 -0
- package/lib/captcha-field/captcha-field.component.d.ts +10 -0
- package/lib/card-item/card-item.component.d.ts +17 -0
- package/lib/card-view-content/card-view-content.component.d.ts +8 -0
- package/lib/col-renderer.directive.d.ts +12 -0
- package/lib/column-matrix-renderer/column-matrix-renderer.component.d.ts +23 -0
- package/lib/column-matrix-renderer/matrix-value.pipe.d.ts +8 -0
- package/lib/column-renderer/column-renderer.component.d.ts +29 -0
- package/lib/constants.d.ts +6 -0
- package/lib/custom-date-time/custom-date-time.component.d.ts +26 -0
- package/lib/device-info-field-base.d.ts +12 -0
- package/lib/dynamic-page-size.pipe.d.ts +8 -0
- package/lib/empty-page/empty-page.component.d.ts +11 -0
- package/lib/file-in-dialog/file-in-dialog.component.d.ts +16 -0
- package/lib/form-dialog/form-dialog.component.d.ts +40 -0
- package/lib/form-dialog-less/form-dialog-less.component.d.ts +27 -0
- package/lib/form-page/form-page.component.d.ts +17 -0
- package/lib/form-page-base.d.ts +26 -0
- package/lib/form-toolbar-button/form-toolbar-button.component.d.ts +18 -0
- package/lib/form-wizard/form-wizard.component.d.ts +8 -0
- package/lib/fullscreen-dialog.directive.d.ts +14 -0
- package/lib/fundamental-dynamic-form/fundamental-dynamic-form.component.d.ts +58 -0
- package/lib/gantt-dhtml-chart-view/gantt-dhtml-chart-view.component.d.ts +18 -0
- package/lib/global-search/global-search.component.d.ts +12 -0
- package/lib/global-search-module/global-search-module.component.d.ts +18 -0
- package/lib/global-search-panel/global-search-panel.component.d.ts +11 -0
- package/lib/header-avatar/header-avatar.component.d.ts +8 -0
- package/lib/header-facet-form/header-facet-form.component.d.ts +9 -0
- package/lib/header-facet-key-value/header-facet-key-value.component.d.ts +11 -0
- package/lib/header-facet-microchart/header-facet-microchart.component.d.ts +8 -0
- package/lib/header-facet-plain-text/header-facet-plain-text.component.d.ts +11 -0
- package/lib/header-facet-progress/header-facet-progress.component.d.ts +11 -0
- package/lib/header-facet-rate/header-facet-rate.component.d.ts +11 -0
- package/lib/htree-create-new/htree-create-new.component.d.ts +13 -0
- package/lib/hyperlink/hyperlink.component.d.ts +7 -0
- package/lib/index.d.ts +85 -0
- package/lib/inline-save-and-cancel/inline-save-and-cancel.component.d.ts +11 -0
- package/lib/layout-actions/layout-actions.component.d.ts +23 -0
- package/lib/layout-control/layout-control.component.d.ts +65 -0
- package/lib/layout-wizard/layout-wizard.component.d.ts +27 -0
- package/lib/list-item/list-item.component.d.ts +13 -0
- package/lib/ly-empty-space/ly-empty-space.component.d.ts +14 -0
- package/lib/ly-horizontal-layout/ly-horizontal-layout.component.d.ts +22 -0
- package/lib/ly-label/ly-label.component.d.ts +15 -0
- package/lib/ly-layout-container/ly-layout-container.component.d.ts +26 -0
- package/lib/ly-layout-container-of-root/ly-layout-container-of-root.component.d.ts +8 -0
- package/lib/ly-layout-field-label/ly-layout-field-label.component.d.ts +13 -0
- package/lib/ly-layout-panel/ly-layout-panel.component.d.ts +25 -0
- package/lib/ly-line/ly-line.component.d.ts +17 -0
- package/lib/ly-simple-label/ly-simple-label.component.d.ts +11 -0
- package/lib/ly-tab-container/ly-tab-container.component.d.ts +16 -0
- package/lib/ly-tab-page/ly-tab-page.component.d.ts +18 -0
- package/lib/ly-vertical-layout/ly-vertical-layout.component.d.ts +18 -0
- package/lib/manage-filters-report/manage-filters-report.component.d.ts +24 -0
- package/lib/mask/mask.component.d.ts +9 -0
- package/lib/message-strip/message-strip.component.d.ts +11 -0
- package/lib/models/grid-data-provider.d.ts +26 -0
- package/lib/models/grid-view.d.ts +64 -0
- package/lib/models/index.d.ts +1 -0
- package/lib/no-data/no-data.component.d.ts +8 -0
- package/lib/page-with-form-handler-base.d.ts +10 -0
- package/lib/page-with-header/page-with-header.component.d.ts +29 -0
- package/lib/progress-indicator/progress-indicator.component.d.ts +8 -0
- package/lib/report-navigator/report-navigator.component.d.ts +21 -0
- package/lib/report-new-top-form/report-new-top-form.component.d.ts +18 -0
- package/lib/report-search-fields-hidden-settings/report-search-fields-hidden-settings.component.d.ts +14 -0
- package/lib/report-search-fields-manage/report-search-fields-manage.component.d.ts +20 -0
- package/lib/report-search-panel-save/report-search-panel-save.component.d.ts +27 -0
- package/lib/report-tree-base.d.ts +61 -0
- package/lib/report-view-renderer.directive.d.ts +82 -0
- package/lib/responsive-toolbar/responsive-toolbar.component.d.ts +19 -0
- package/lib/responsive-toolbar-renderer/responsive-toolbar-renderer.component.d.ts +24 -0
- package/lib/rich-text-static/rich-text-static.component.d.ts +24 -0
- package/lib/sap-font-class.pipe.d.ts +8 -0
- package/lib/sap-font.pipe.d.ts +9 -0
- package/lib/sap-ui-report-base.component.d.ts +133 -0
- package/lib/search-panel/search-panel.component.d.ts +13 -0
- package/lib/static-text/static-text.component.d.ts +7 -0
- package/lib/title/title.component.d.ts +7 -0
- package/lib/ui-asp-report-viewer/ui-asp-report-viewer.component.d.ts +7 -0
- package/lib/ui-button/ui-button.component.d.ts +11 -0
- package/lib/ui-calendar/ui-calendar.component.d.ts +16 -0
- package/lib/ui-card-view/ui-card-view.component.d.ts +16 -0
- package/lib/ui-card-view-horizontal-group/ui-card-view-horizontal-group.component.d.ts +9 -0
- package/lib/ui-check-box/ui-check-box.component.d.ts +12 -0
- package/lib/ui-color-ui/ui-color-ui.component.d.ts +16 -0
- package/lib/ui-container-with-button/ui-container-with-button.component.d.ts +11 -0
- package/lib/ui-date-range-ex/ui-date-range-ex.component.d.ts +36 -0
- package/lib/ui-date-time/ui-date-time.component.d.ts +24 -0
- package/lib/ui-editable-grid/ui-editable-grid.component.d.ts +43 -0
- package/lib/ui-exception-form/ui-exception-form.component.d.ts +16 -0
- package/lib/ui-file-linear-list-box/ui-file-linear-list-box.component.d.ts +51 -0
- package/lib/ui-form-panel/ui-form-panel.component.d.ts +24 -0
- package/lib/ui-form-panel-toolbar/ui-form-panel-toolbar.component.d.ts +13 -0
- package/lib/ui-gantt-chart/ui-gantt-chart.component.d.ts +15 -0
- package/lib/ui-graph/ui-graph.component.d.ts +9 -0
- package/lib/ui-grid/ui-grid.component.d.ts +12 -0
- package/lib/ui-grid-columns/ui-grid-columns.component.d.ts +14 -0
- package/lib/ui-grid-filter-item/ui-grid-filter-item.component.d.ts +19 -0
- package/lib/ui-grid-filter-settings/ui-grid-filter-settings.component.d.ts +24 -0
- package/lib/ui-grid-sort-item/ui-grid-sort-item.component.d.ts +25 -0
- package/lib/ui-grid-sort-setting/ui-grid-sort-setting.component.d.ts +28 -0
- package/lib/ui-info-bar-panel/ui-info-bar-panel.component.d.ts +5 -0
- package/lib/ui-label/ui-label.component.d.ts +6 -0
- package/lib/ui-linear-list-container-with-button/ui-linear-list-container-with-button.component.d.ts +62 -0
- package/lib/ui-list-view/ui-list-view.component.d.ts +15 -0
- package/lib/ui-matrix-view/ui-matrix-view.component.d.ts +45 -0
- package/lib/ui-mo-info-combo-viewer/ui-mo-info-combo-viewer.component.d.ts +7 -0
- package/lib/ui-mo-info-general-object-ui/ui-mo-info-general-object-ui.component.d.ts +6 -0
- package/lib/ui-mo-info-sub-form-ui/ui-mo-info-sub-form-ui.component.d.ts +13 -0
- package/lib/ui-mo-info-ulv-combo/ui-mo-info-ulv-combo.component.d.ts +78 -0
- package/lib/ui-monaco-editor/ui-monaco-editor.component.d.ts +7 -0
- package/lib/ui-multi-select-combo/ui-multi-select-combo.component.d.ts +21 -0
- package/lib/ui-num-decimal-ui/ui-num-decimal-ui.component.d.ts +11 -0
- package/lib/ui-num-int-ui/ui-num-int-ui.component.d.ts +10 -0
- package/lib/ui-pdf-viewer/ui-pdf-viewer.component.d.ts +63 -0
- package/lib/ui-picture-file/ui-picture-file.component.d.ts +27 -0
- package/lib/ui-pictures-info/ui-pictures-info.component.d.ts +68 -0
- package/lib/ui-radio-group/ui-radio-group.component.d.ts +9 -0
- package/lib/ui-read-only-field/ui-read-only-field.component.d.ts +11 -0
- package/lib/ui-report-container/ui-report-container.component.d.ts +17 -0
- package/lib/ui-search-command-info-ui/ui-search-command-info-ui.component.d.ts +9 -0
- package/lib/ui-simple-combo/ui-simple-combo.component.d.ts +13 -0
- package/lib/ui-single-picture/ui-single-picture.component.d.ts +13 -0
- package/lib/ui-switch-button/ui-switch-button.component.d.ts +11 -0
- package/lib/ui-table-view/ui-table-view.component.d.ts +29 -0
- package/lib/ui-text-area/ui-text-area.component.d.ts +15 -0
- package/lib/ui-text-field/ui-text-field.component.d.ts +14 -0
- package/lib/ui-text-field-auto-complete/ui-text-field-auto-complete.component.d.ts +13 -0
- package/lib/ui-time-span/ui-time-span.component.d.ts +10 -0
- package/lib/ui-tinymce/ui-tinymce.component.d.ts +17 -0
- package/lib/ui-tree/ui-tree.component.d.ts +32 -0
- package/lib/ui-tree-view/ui-tree-view.component.d.ts +41 -0
- package/lib/ui-ulv-form-multi-select-ui/ui-ulv-form-multi-select-ui.component.d.ts +9 -0
- package/lib/ui-ulv-main-ui/ui-ulv-main-ui.component.d.ts +67 -0
- package/lib/ui-workflow-panel-ui/ui-workflow-panel-ui.component.d.ts +16 -0
- package/lib/ul-loading-mask-ui/ul-loading-mask-ui.component.d.ts +20 -0
- package/lib/ul-msg-box-adapter/ul-msg-box-adapter.component.d.ts +48 -0
- package/lib/ul-notify-popup/ul-notify-popup.component.d.ts +41 -0
- package/lib/ul-toast-adapter/ul-toast-adapter.component.d.ts +13 -0
- package/lib/ulv-column-settings/ulv-column-settings.component.d.ts +19 -0
- package/lib/ulv-context-menu/ulv-context-menu.component.d.ts +24 -0
- package/lib/ulv-filter-settings/ulv-filter-settings.component.d.ts +19 -0
- package/lib/ulv-form-multi-select/ulv-form-multi-select.component.d.ts +26 -0
- package/lib/ulv-groupby-settings/ulv-groupby-settings.component.d.ts +16 -0
- package/lib/ulv-paging/ulv-paging.component.d.ts +27 -0
- package/lib/ulv-selection/ulv-selection.component.d.ts +43 -0
- package/lib/ulv-settings/ulv-settings.component.d.ts +43 -0
- package/lib/ulv-sort-settings/ulv-sort-settings.component.d.ts +16 -0
- package/lib/ulv-toolbar/ulv-toolbar.component.d.ts +47 -0
- package/lib/upload-file-status.pipe.d.ts +9 -0
- package/lib/wizard-layout.directive.d.ts +39 -0
- package/package.json +31 -0
- package/public-api.d.ts +166 -0
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, Input, TemplateRef, ViewChild, ViewEncapsulation } from '@angular/core';
|
|
2
|
+
import { BaseComponent, BarsaApi } from 'barsa-novin-ray-core';
|
|
3
|
+
import { takeUntil } from 'rxjs/operators';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@fundamental-ngx/core";
|
|
6
|
+
import * as i2 from "barsa-novin-ray-core";
|
|
7
|
+
import * as i3 from "@angular/common";
|
|
8
|
+
import * as i4 from "@fundamental-ngx/core/bar";
|
|
9
|
+
import * as i5 from "@fundamental-ngx/core/button";
|
|
10
|
+
import * as i6 from "@fundamental-ngx/core/dialog";
|
|
11
|
+
import * as i7 from "@fundamental-ngx/core/title";
|
|
12
|
+
import * as i8 from "@fundamental-ngx/core/utils";
|
|
13
|
+
import * as i9 from "@fundamental-ngx/core/toolbar";
|
|
14
|
+
import * as i10 from "@fundamental-ngx/core/token";
|
|
15
|
+
import * as i11 from "@fundamental-ngx/platform/shared";
|
|
16
|
+
import * as i12 from "@fundamental-ngx/platform/button";
|
|
17
|
+
import * as i13 from "../ui-ulv-main-ui/ui-ulv-main-ui.component";
|
|
18
|
+
import * as i14 from "../fullscreen-dialog.directive";
|
|
19
|
+
export class UlvFormMultiSelectComponent extends BaseComponent {
|
|
20
|
+
constructor(_dialogService, _bbbTranslatePipe, _portalService, _contentDensityService) {
|
|
21
|
+
super();
|
|
22
|
+
this._dialogService = _dialogService;
|
|
23
|
+
this._bbbTranslatePipe = _bbbTranslatePipe;
|
|
24
|
+
/* eslint-disable */
|
|
25
|
+
this.Show = (adapter, config) => {
|
|
26
|
+
const largeScreen = this.deviceSize === 'l' || this.deviceSize === 'xl';
|
|
27
|
+
const dialogConfig = {
|
|
28
|
+
data: { ...config, adapter },
|
|
29
|
+
escKeyCloseable: false,
|
|
30
|
+
dialogPanelClass: `ulv-selection-form-dialog ${this.deviceSize ? 'ulv-selection-form-dialog-mobile' : ''}`,
|
|
31
|
+
verticalPadding: false
|
|
32
|
+
};
|
|
33
|
+
if (largeScreen) {
|
|
34
|
+
dialogConfig.width = '50vw';
|
|
35
|
+
dialogConfig.height = 'auto';
|
|
36
|
+
dialogConfig.minWidth = '400';
|
|
37
|
+
dialogConfig.minHeight = '60vh';
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
dialogConfig.mobile = true;
|
|
41
|
+
dialogConfig.fullScreen = true;
|
|
42
|
+
}
|
|
43
|
+
if (adapter.HideOkCancelButtons) {
|
|
44
|
+
dialogConfig.fullScreen = true;
|
|
45
|
+
}
|
|
46
|
+
const dialogRef = this._dialogService.open(this.dialogContainer, dialogConfig);
|
|
47
|
+
dialogRef.loading(config.IsLoaded === true ? false : true); // means ulv is loaded and it does not show loading in dialog
|
|
48
|
+
dialogRef.mask = (val) => {
|
|
49
|
+
dialogRef.loading(val);
|
|
50
|
+
};
|
|
51
|
+
dialogRef.AddUlvToWindow = (ulvControl1, ulvControl2) => {
|
|
52
|
+
dialogRef.loading(false);
|
|
53
|
+
const selectFormTitleText = this._bbbTranslatePipe.transform('SelectFormTitle');
|
|
54
|
+
dialogRef.data.title = selectFormTitleText.replace('{0}', ulvControl1.Setting.Extra.Report.TypeDefCaption);
|
|
55
|
+
dialogRef.data.ulv1 = ulvControl1;
|
|
56
|
+
if (ulvControl1.viewerControl) {
|
|
57
|
+
this._handleUlvViewerEvent(ulvControl1, adapter, dialogRef);
|
|
58
|
+
}
|
|
59
|
+
else {
|
|
60
|
+
ulvControl1.on({
|
|
61
|
+
ViewerControlChanged: () => {
|
|
62
|
+
this._handleUlvViewerEvent(ulvControl1, adapter, dialogRef);
|
|
63
|
+
}
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
if (ulvControl2) {
|
|
67
|
+
dialogRef.data.ulv2 = ulvControl2;
|
|
68
|
+
dialogRef.data.selectedItems = ulvControl2.Setting.Data;
|
|
69
|
+
}
|
|
70
|
+
};
|
|
71
|
+
return dialogRef;
|
|
72
|
+
/* eslint-disable */
|
|
73
|
+
};
|
|
74
|
+
this.contentDensity$ = _contentDensityService.contentDensity;
|
|
75
|
+
BarsaApi.Bw.UlvFormMultiSelect = this;
|
|
76
|
+
_portalService.deviceSize$.pipe(takeUntil(this._onDestroy$)).subscribe((c) => {
|
|
77
|
+
this.deviceSize = c;
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
_handleUlvViewerEvent(ulvControl1, adapter, dialogRef) {
|
|
81
|
+
ulvControl1.viewerControl.ShowOkCancelButtons = adapter.ShowOkCancelButtons;
|
|
82
|
+
ulvControl1.viewerControl.on({
|
|
83
|
+
/* eslint-disable */
|
|
84
|
+
rowselect: (sender, index, mo) => {
|
|
85
|
+
this._addItem(dialogRef, mo);
|
|
86
|
+
},
|
|
87
|
+
/* eslint-disable */
|
|
88
|
+
rowdeselect: (sender, index, mo) => {
|
|
89
|
+
this._removeItem(dialogRef, mo);
|
|
90
|
+
},
|
|
91
|
+
rowSelectAll: () => {
|
|
92
|
+
ulvControl1.Setting.Data.MoDataList.forEach((mo) => {
|
|
93
|
+
this._addItem(dialogRef, mo);
|
|
94
|
+
});
|
|
95
|
+
},
|
|
96
|
+
rowDeSelectAll: () => {
|
|
97
|
+
ulvControl1.Setting.Data.MoDataList.forEach((mo) => {
|
|
98
|
+
this._removeItem(dialogRef, mo);
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
});
|
|
102
|
+
}
|
|
103
|
+
onOk(dialogRef) {
|
|
104
|
+
const { ulv, ulv2 } = this._getUlv(dialogRef);
|
|
105
|
+
// if (ulv) {
|
|
106
|
+
// if (ulv2) {
|
|
107
|
+
// const adapter = dialogRef.data.adapter;
|
|
108
|
+
// adapter.fireEvent('AddRemoveButtonClick', adapter, 'Add');
|
|
109
|
+
// }
|
|
110
|
+
// }
|
|
111
|
+
this._btnClick(ulv, 'Ok');
|
|
112
|
+
}
|
|
113
|
+
_getUlv(dialogRef) {
|
|
114
|
+
const ulv2 = dialogRef.data.ulv2;
|
|
115
|
+
const ulv1 = dialogRef.data.ulv1;
|
|
116
|
+
const ulv = ulv2 || ulv1;
|
|
117
|
+
return { ulv, ulv2 };
|
|
118
|
+
}
|
|
119
|
+
_btnClick(ulv, btnKey) {
|
|
120
|
+
const okBtn = ulv.buttons.find((c) => c.Key === btnKey);
|
|
121
|
+
const scope = okBtn.scope;
|
|
122
|
+
okBtn.handler.bind(scope)(okBtn);
|
|
123
|
+
}
|
|
124
|
+
onCancel(dialogRef) {
|
|
125
|
+
if (!dialogRef.data.adapter?.ShowOkCancelButtons) {
|
|
126
|
+
dialogRef.dismiss();
|
|
127
|
+
return;
|
|
128
|
+
}
|
|
129
|
+
const { ulv, ulv2 } = this._getUlv(dialogRef);
|
|
130
|
+
this._btnClick(ulv, 'Cancel');
|
|
131
|
+
}
|
|
132
|
+
onClear(dialogRef) {
|
|
133
|
+
dialogRef.data.ulv1.viewerControl.ClearAllSelected();
|
|
134
|
+
dialogRef.data.selectedItems.MoDataList = [];
|
|
135
|
+
}
|
|
136
|
+
onRemoveSelected(dialogRef, item) {
|
|
137
|
+
this._removeItem(dialogRef, item);
|
|
138
|
+
}
|
|
139
|
+
_removeItem(dialogRef, mo) {
|
|
140
|
+
const selectedItems = dialogRef.data.selectedItems;
|
|
141
|
+
if (!selectedItems) {
|
|
142
|
+
return;
|
|
143
|
+
}
|
|
144
|
+
selectedItems.MoDataList = selectedItems.MoDataList.filter((c) => c.Id !== mo.Id);
|
|
145
|
+
dialogRef.data.ulv1.viewerControl.DeSelectRecords([mo]);
|
|
146
|
+
if (dialogRef.data.ulv2) {
|
|
147
|
+
const adapter = dialogRef.data.adapter;
|
|
148
|
+
adapter.fireEvent('AddRemoveButtonClick', adapter, 'Remove');
|
|
149
|
+
}
|
|
150
|
+
// const adapter = dialogRef.data.adapter;
|
|
151
|
+
// adapter.fireEvent('AddRemoveButtonClick', adapter, 'Remove');
|
|
152
|
+
}
|
|
153
|
+
_addItem(dialogRef, mo) {
|
|
154
|
+
const selectedItems = dialogRef.data.selectedItems;
|
|
155
|
+
if (!selectedItems) {
|
|
156
|
+
return;
|
|
157
|
+
}
|
|
158
|
+
if (!selectedItems.MoDataList.find((c) => c.Id === mo.Id)) {
|
|
159
|
+
selectedItems.MoDataList = [...selectedItems.MoDataList, mo];
|
|
160
|
+
if (dialogRef.data.ulv2) {
|
|
161
|
+
const adapter = dialogRef.data.adapter;
|
|
162
|
+
adapter.fireEvent('AddRemoveButtonClick', adapter, 'Add');
|
|
163
|
+
}
|
|
164
|
+
// const adapter = dialogRef.data.adapter;
|
|
165
|
+
// adapter.fireEvent('AddRemoveButtonClick', adapter, 'Add');
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
_trackBySelectedFn(_index, item) {
|
|
169
|
+
return item.Id;
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
UlvFormMultiSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UlvFormMultiSelectComponent, deps: [{ token: i1.DialogService }, { token: i2.BbbTranslatePipe }, { token: i2.PortalService }, { token: i1.ContentDensityService }], target: i0.ɵɵFactoryTarget.Component });
|
|
173
|
+
UlvFormMultiSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: UlvFormMultiSelectComponent, selector: "bsu-ulv-form-multi-select", inputs: { Show: "Show" }, viewQueries: [{ propertyName: "dialogContainer", first: true, predicate: ["container"], descendants: true, read: TemplateRef }], usesInheritance: true, ngImport: i0, template: "<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #container>\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\" #dialogTpl>\n <fd-dialog-header>\n <ng-template fdTemplate=\"header\">\n <div fd-bar-left>\n <fd-bar-element>\n <h1 id=\"fd-dialog-header-3\" fd-title>{{ dialog.data.title }}</h1>\n </fd-bar-element>\n </div>\n <div fd-bar-right>\n <fd-button-bar\n *ngIf=\"!dialogConfig.fullscreen\"\n ariaLabel=\"fullscreen\"\n [glyph]=\"dialog.data.fullscreen ? 'exitfullscreen' : 'resize'\"\n fullscreenDialog\n [dialog]=\"dialog\"\n [dialogComponent]=\"dialogTpl\"\n ></fd-button-bar>\n <fd-button-bar ariaLabel=\"close\" glyph=\"decline\" (click)=\"onCancel(dialog)\"></fd-button-bar>\n </div>\n </ng-template>\n <!-- <h3 fd-title>{{ dialog.data.title }}</h3>\n <button fd-dialog-close-button></button> -->\n </fd-dialog-header>\n\n <fd-dialog-body>\n <ng-container *ngIf=\"dialog.data.ulv1 as ulv1\">\n <bsu-ui-ulv-main-ui\n class=\"ulv-form-multi-select\"\n [context]=\"ulv1\"\n [inDialog]=\"true\"\n [fullscreen]=\"dialog.data.fullscreen\"\n ></bsu-ui-ulv-main-ui>\n </ng-container>\n <div\n *ngIf=\"dialog.data.ulv2 && dialog.data.ShowSecondPanel\"\n class=\"ulv-selection-form-dialog__row ulv-selection-form-dialog__selection-row\"\n [aria-label]=\"'SelectedItemsAndConditions' | bbbTranslate\"\n >\n <h5 fd-title class=\"selected-and-condition-title\">\n <ng-container>\n <ng-container>{{ 'SelectedItemsAndConditions' | bbbTranslate }} </ng-container>\n ({{ dialog.data.selectedItems?.MoDataList?.length || 0 }})\n </ng-container>\n </h5>\n\n <div class=\"ulv-selection-form-dialog__tokens-wrapper\">\n <div class=\"ulv-selection-form-dialog__tokens\">\n <fd-toolbar [shouldOverflow]=\"true\" *ngIf=\"dialog.data.selectedItems\">\n <!-- Selected items -->\n <fd-token\n fd-toolbar-item\n fdOverflowPriority=\"high\"\n class=\"fdp-value-help-dialog__selection-token\"\n (onCloseClick)=\"onRemoveSelected(dialog, item)\"\n *ngFor=\"\n let item of dialog.data.selectedItems.MoDataList;\n index as selectedIndex;\n trackBy: _trackBySelectedFn\n \"\n >{{ item.$Caption }}\n </fd-token>\n </fd-toolbar>\n </div>\n <button\n class=\"ulv-selection-form-dialog__tokens-clear\"\n fd-button\n fdType=\"transparent\"\n glyph=\"decline\"\n [aria-label]=\"'Clear' | bbbTranslate\"\n (click)=\"onClear(dialog)\"\n ></button>\n </div>\n </div>\n </fd-dialog-body>\n\n <fd-dialog-footer *ngIf=\"dialog.data.ulv1 && !dialog.data.ulv1?.HideOkCancelButtons\">\n <ng-template fdTemplate=\"footer\">\n <div\n class=\"ulv-selection-form-dialog__actions-row\"\n *ngIf=\"dialog.data.adapter?.ShowOkCancelButtons !== false\"\n >\n <button\n fd-button\n data-succes\n [label]=\"'OK' | bbbTranslate\"\n fdType=\"emphasized\"\n [compact]=\"true\"\n (click)=\"onOk(dialog)\"\n ></button>\n <fdp-button\n [contentDensity]=\"'compact'\"\n data-dismiss-dialog\n fd-dialog-decisive-button\n [label]=\"'Cancel' | bbbTranslate\"\n [buttonType]=\"'transparent'\"\n (click)=\"onCancel(dialog)\"\n ></fdp-button>\n </div>\n </ng-template>\n </fd-dialog-footer>\n </fd-dialog>\n</ng-template>\n", styles: [".ulv-selection-form-dialog{cursor:default}.ulv-selection-form-dialog .fd-dialog__body bsu-ui-table-view{overflow-x:inherit!important}.ulv-selection-form-dialog__advanced-filters{padding-top:1rem}.ulv-selection-form-dialog__advanced-filters label{height:auto}.ulv-selection-form-dialog__toggle-filters{display:flex;justify-content:flex-end;align-items:flex-end}.ulv-selection-form-dialog__toggle-filters .fd-button{margin-bottom:.25rem}.ulv-selection-form-dialog__advanced-actions{display:flex;align-items:center;justify-content:flex-end}.ulv-selection-form-dialog-mobile .ulv-selection-form-dialog__advanced-actions{justify-content:flex-start}.ulv-selection-form-dialog__advanced-actions .fd-toolbar{padding:0}.ulv-selection-form-dialog fd-dialog-body{height:100%;display:flex;flex-direction:column;overflow-y:hidden}.ulv-selection-form-dialog bsu-ui-ulv-main-ui{height:100%;flex-grow:1}.ulv-selection-form-dialog bsu-ui-ulv-main-ui .viewer-container{height:100%!important;overflow:auto}.ulv-selection-form-dialog .ulv-selection-form-dialog__row{border-top:.0625rem solid var(--sapPageFooter_BorderColor, #d9d9d9);padding-top:1rem}.ulv-selection-form-dialog bsu-search-panel{border-bottom:.0625rem solid var(--sapPageFooter_BorderColor, #d9d9d9)}.ulv-selection-form-dialog fd-dialog-footer{height:auto}.ulv-selection-form-dialog .fd-dialog__footer{flex-direction:column}.ulv-selection-form-dialog .fd-dialog__footer.fd-bar{padding:0!important}.ulv-selection-form-dialog .fd-dialog__footer{border-top:none}.ulv-selection-form-dialog__content-holder{padding:0 2rem 1rem;display:flex;flex-direction:column;height:100%;width:100%;overflow:hidden}.ulv-selection-form-dialog__row{padding:0 2rem 1rem}.ulv-selection-form-dialog__row.ulv-selection-form-dialog__selection-row{background-color:#f7f7f7;background-color:var(--sapBackgroundColor, #f7f7f7)}.ulv-selection-form-dialog__tokens-wrapper{display:flex}.ulv-selection-form-dialog__tokens{display:flex;flex:1 1 auto;overflow:hidden;align-items:center;border:1px solid #89919a;border-color:var(--sapContent_ForegroundBorderColor, #89919a);margin-right:.5rem;border-radius:.25rem;border-radius:var(--sapElement_BorderCornerRadius, .25rem);background:none}.ulv-selection-form-dialog__tokens fd-toolbar{flex:1 1 auto;overflow:hidden}.ulv-selection-form-dialog__tokens-clear{height:auto;min-width:2rem;padding:.125rem 0;justify-content:center}.ulv-selection-form-dialog__actions-row{padding:.5rem 0;display:flex;align-items:center;justify-content:flex-end;border-top:.0625rem solid #d9d9d9;border-top:.0625rem solid var(--sapPageFooter_BorderColor, #d9d9d9)}.ulv-selection-form-dialog__actions-row .fd-button{margin-left:.5rem}.ulv-selection-form-dialog__tokens-wrapper{align-items:center}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.BarLeftDirective, selector: "[fd-bar-left]" }, { kind: "directive", type: i4.BarRightDirective, selector: "[fd-bar-right]" }, { kind: "directive", type: i4.BarElementDirective, selector: "fd-bar-element", inputs: ["fullWidth", "isTitle"] }, { kind: "component", type: i4.ButtonBarComponent, selector: "fd-button-bar", inputs: ["fullWidth", "fdType", "title", "ariaLabel", "ariaLabelledby", "id"] }, { kind: "component", type: i5.ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "directive", type: i5.DeprecatedButtonContentDensityDirective, selector: "[fd-button][compact]" }, { kind: "component", type: i6.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i6.DialogBodyComponent, selector: "fd-dialog-body" }, { kind: "component", type: i6.DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: i6.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "directive", type: i6.DialogDecisiveButtonDirective, selector: "[fd-dialog-decisive-button]" }, { kind: "component", type: i7.TitleComponent, selector: "h1[fd-title], h2[fd-title], h3[fd-title], h4[fd-title], h5[fd-title], h6[fd-title]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "directive", type: i8.TemplateDirective, selector: "[fdTemplate]", inputs: ["fdTemplate"] }, { kind: "component", type: i9.ToolbarComponent, selector: "fd-toolbar", inputs: ["class", "shouldOverflow", "fdType", "hasTitle", "title", "active", "clearBorder", "forceOverflow", "tabindex"] }, { kind: "directive", type: i9.ToolbarItemDirective, selector: "[fd-toolbar-item]" }, { kind: "directive", type: i9.ToolbarOverflowPriorityDirective, selector: "[fdOverflowPriority]", inputs: ["fdOverflowPriority"] }, { kind: "component", type: i10.TokenComponent, selector: "fd-token", inputs: ["disabled", "selected", "readOnly", "deleteButtonLabel", "ariaRoleDescription"], outputs: ["onCloseClick", "onRemove", "onTokenClick", "onTokenKeydown"] }, { kind: "directive", type: i11.PlatformContentDensityDeprecationDirective, selector: " fdp-action-bar[contentDensity], fdp-button[contentDensity], fdp-object-list-item[contentDensity], fdp-standard-list-item[contentDensity], fdp-menu[contentDensity], fdp-menu-button[contentDensity], fdp-panel[contentDensity], fdp-search-field[contentDensity], fdp-split-menu-button[contentDensity], fdp-file-uploader[contentDensity], fdp-upload-collection[contentDensity], fdp-table[contentDensity], fdp-multi-input[contentDensity], fdp-list[contentDensity], fdp-slider[contentDensity], fdp-time-picker[contentDensity], fdp-textarea[contentDensity], fdp-switch[contentDensity], fdp-number-step-input[contentDensity], fdp-select[contentDensity], fdp-date-picker[contentDensity], fdp-checkbox[contentDensity], fdp-checkbox-group[contentDensity], fdp-combobox[contentDensity], fdp-datetime-picker[contentDensity], fdp-input[contentDensity], fdp-radio-group[contentDensity], fdp-radio-button[contentDensity], fdp-multi-combobox[contentDensity], fdp-input-group-addon-body[contentDensity], fdp-input-group[contentDensity], fdp-value-help-dialog[contentDensity], fdp-filter-single-select[contentDensity], fdp-filter-multi-select[contentDensity], fdp-filter-custom[contentDensity] " }, { kind: "component", type: i12.ButtonComponent, selector: "fdp-button", inputs: ["glyphPosition", "label", "glyph", "buttonType", "title", "ariaSelected", "ariaDisabled", "ariaExpanded", "ariaControlsId", "ariaPressed", "name", "type", "value"], outputs: ["buttonClicked"] }, { kind: "component", type: i13.UiUlvMainUiComponent, selector: "bsu-ui-ulv-main-ui", inputs: ["context", "isReportPage", "inDialog", "layoutInfo", "fullscreen"] }, { kind: "directive", type: i14.FullscreenDialogDirective, selector: "[fullscreenDialog]", inputs: ["dialog", "dialogComponent"] }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
174
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UlvFormMultiSelectComponent, decorators: [{
|
|
175
|
+
type: Component,
|
|
176
|
+
args: [{ selector: 'bsu-ulv-form-multi-select', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #container>\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\" #dialogTpl>\n <fd-dialog-header>\n <ng-template fdTemplate=\"header\">\n <div fd-bar-left>\n <fd-bar-element>\n <h1 id=\"fd-dialog-header-3\" fd-title>{{ dialog.data.title }}</h1>\n </fd-bar-element>\n </div>\n <div fd-bar-right>\n <fd-button-bar\n *ngIf=\"!dialogConfig.fullscreen\"\n ariaLabel=\"fullscreen\"\n [glyph]=\"dialog.data.fullscreen ? 'exitfullscreen' : 'resize'\"\n fullscreenDialog\n [dialog]=\"dialog\"\n [dialogComponent]=\"dialogTpl\"\n ></fd-button-bar>\n <fd-button-bar ariaLabel=\"close\" glyph=\"decline\" (click)=\"onCancel(dialog)\"></fd-button-bar>\n </div>\n </ng-template>\n <!-- <h3 fd-title>{{ dialog.data.title }}</h3>\n <button fd-dialog-close-button></button> -->\n </fd-dialog-header>\n\n <fd-dialog-body>\n <ng-container *ngIf=\"dialog.data.ulv1 as ulv1\">\n <bsu-ui-ulv-main-ui\n class=\"ulv-form-multi-select\"\n [context]=\"ulv1\"\n [inDialog]=\"true\"\n [fullscreen]=\"dialog.data.fullscreen\"\n ></bsu-ui-ulv-main-ui>\n </ng-container>\n <div\n *ngIf=\"dialog.data.ulv2 && dialog.data.ShowSecondPanel\"\n class=\"ulv-selection-form-dialog__row ulv-selection-form-dialog__selection-row\"\n [aria-label]=\"'SelectedItemsAndConditions' | bbbTranslate\"\n >\n <h5 fd-title class=\"selected-and-condition-title\">\n <ng-container>\n <ng-container>{{ 'SelectedItemsAndConditions' | bbbTranslate }} </ng-container>\n ({{ dialog.data.selectedItems?.MoDataList?.length || 0 }})\n </ng-container>\n </h5>\n\n <div class=\"ulv-selection-form-dialog__tokens-wrapper\">\n <div class=\"ulv-selection-form-dialog__tokens\">\n <fd-toolbar [shouldOverflow]=\"true\" *ngIf=\"dialog.data.selectedItems\">\n <!-- Selected items -->\n <fd-token\n fd-toolbar-item\n fdOverflowPriority=\"high\"\n class=\"fdp-value-help-dialog__selection-token\"\n (onCloseClick)=\"onRemoveSelected(dialog, item)\"\n *ngFor=\"\n let item of dialog.data.selectedItems.MoDataList;\n index as selectedIndex;\n trackBy: _trackBySelectedFn\n \"\n >{{ item.$Caption }}\n </fd-token>\n </fd-toolbar>\n </div>\n <button\n class=\"ulv-selection-form-dialog__tokens-clear\"\n fd-button\n fdType=\"transparent\"\n glyph=\"decline\"\n [aria-label]=\"'Clear' | bbbTranslate\"\n (click)=\"onClear(dialog)\"\n ></button>\n </div>\n </div>\n </fd-dialog-body>\n\n <fd-dialog-footer *ngIf=\"dialog.data.ulv1 && !dialog.data.ulv1?.HideOkCancelButtons\">\n <ng-template fdTemplate=\"footer\">\n <div\n class=\"ulv-selection-form-dialog__actions-row\"\n *ngIf=\"dialog.data.adapter?.ShowOkCancelButtons !== false\"\n >\n <button\n fd-button\n data-succes\n [label]=\"'OK' | bbbTranslate\"\n fdType=\"emphasized\"\n [compact]=\"true\"\n (click)=\"onOk(dialog)\"\n ></button>\n <fdp-button\n [contentDensity]=\"'compact'\"\n data-dismiss-dialog\n fd-dialog-decisive-button\n [label]=\"'Cancel' | bbbTranslate\"\n [buttonType]=\"'transparent'\"\n (click)=\"onCancel(dialog)\"\n ></fdp-button>\n </div>\n </ng-template>\n </fd-dialog-footer>\n </fd-dialog>\n</ng-template>\n", styles: [".ulv-selection-form-dialog{cursor:default}.ulv-selection-form-dialog .fd-dialog__body bsu-ui-table-view{overflow-x:inherit!important}.ulv-selection-form-dialog__advanced-filters{padding-top:1rem}.ulv-selection-form-dialog__advanced-filters label{height:auto}.ulv-selection-form-dialog__toggle-filters{display:flex;justify-content:flex-end;align-items:flex-end}.ulv-selection-form-dialog__toggle-filters .fd-button{margin-bottom:.25rem}.ulv-selection-form-dialog__advanced-actions{display:flex;align-items:center;justify-content:flex-end}.ulv-selection-form-dialog-mobile .ulv-selection-form-dialog__advanced-actions{justify-content:flex-start}.ulv-selection-form-dialog__advanced-actions .fd-toolbar{padding:0}.ulv-selection-form-dialog fd-dialog-body{height:100%;display:flex;flex-direction:column;overflow-y:hidden}.ulv-selection-form-dialog bsu-ui-ulv-main-ui{height:100%;flex-grow:1}.ulv-selection-form-dialog bsu-ui-ulv-main-ui .viewer-container{height:100%!important;overflow:auto}.ulv-selection-form-dialog .ulv-selection-form-dialog__row{border-top:.0625rem solid var(--sapPageFooter_BorderColor, #d9d9d9);padding-top:1rem}.ulv-selection-form-dialog bsu-search-panel{border-bottom:.0625rem solid var(--sapPageFooter_BorderColor, #d9d9d9)}.ulv-selection-form-dialog fd-dialog-footer{height:auto}.ulv-selection-form-dialog .fd-dialog__footer{flex-direction:column}.ulv-selection-form-dialog .fd-dialog__footer.fd-bar{padding:0!important}.ulv-selection-form-dialog .fd-dialog__footer{border-top:none}.ulv-selection-form-dialog__content-holder{padding:0 2rem 1rem;display:flex;flex-direction:column;height:100%;width:100%;overflow:hidden}.ulv-selection-form-dialog__row{padding:0 2rem 1rem}.ulv-selection-form-dialog__row.ulv-selection-form-dialog__selection-row{background-color:#f7f7f7;background-color:var(--sapBackgroundColor, #f7f7f7)}.ulv-selection-form-dialog__tokens-wrapper{display:flex}.ulv-selection-form-dialog__tokens{display:flex;flex:1 1 auto;overflow:hidden;align-items:center;border:1px solid #89919a;border-color:var(--sapContent_ForegroundBorderColor, #89919a);margin-right:.5rem;border-radius:.25rem;border-radius:var(--sapElement_BorderCornerRadius, .25rem);background:none}.ulv-selection-form-dialog__tokens fd-toolbar{flex:1 1 auto;overflow:hidden}.ulv-selection-form-dialog__tokens-clear{height:auto;min-width:2rem;padding:.125rem 0;justify-content:center}.ulv-selection-form-dialog__actions-row{padding:.5rem 0;display:flex;align-items:center;justify-content:flex-end;border-top:.0625rem solid #d9d9d9;border-top:.0625rem solid var(--sapPageFooter_BorderColor, #d9d9d9)}.ulv-selection-form-dialog__actions-row .fd-button{margin-left:.5rem}.ulv-selection-form-dialog__tokens-wrapper{align-items:center}\n"] }]
|
|
177
|
+
}], ctorParameters: function () { return [{ type: i1.DialogService }, { type: i2.BbbTranslatePipe }, { type: i2.PortalService }, { type: i1.ContentDensityService }]; }, propDecorators: { dialogContainer: [{
|
|
178
|
+
type: ViewChild,
|
|
179
|
+
args: ['container', { read: TemplateRef }]
|
|
180
|
+
}], Show: [{
|
|
181
|
+
type: Input
|
|
182
|
+
}] } });
|
|
183
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWx2LWZvcm0tbXVsdGktc2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLXNhcC11aS9zcmMvbGliL3Vsdi1mb3JtLW11bHRpLXNlbGVjdC91bHYtZm9ybS1tdWx0aS1zZWxlY3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWx2LWZvcm0tbXVsdGktc2VsZWN0L3Vsdi1mb3JtLW11bHRpLXNlbGVjdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXJILE9BQU8sRUFBRSxhQUFhLEVBQUUsUUFBUSxFQUF3RCxNQUFNLHNCQUFzQixDQUFDO0FBRXJILE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7OztBQVMzQyxNQUFNLE9BQU8sMkJBQTRCLFNBQVEsYUFBYTtJQU8xRCxZQUNZLGNBQTZCLEVBQzdCLGlCQUFtQyxFQUMzQyxjQUE2QixFQUM3QixzQkFBNkM7UUFFN0MsS0FBSyxFQUFFLENBQUM7UUFMQSxtQkFBYyxHQUFkLGNBQWMsQ0FBZTtRQUM3QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQWtCO1FBVy9DLG9CQUFvQjtRQUNYLFNBQUksR0FBRyxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRTtZQUNoQyxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsVUFBVSxLQUFLLEdBQUcsSUFBSSxJQUFJLENBQUMsVUFBVSxLQUFLLElBQUksQ0FBQztZQUN4RSxNQUFNLFlBQVksR0FBMkI7Z0JBQ3pDLElBQUksRUFBRSxFQUFFLEdBQUcsTUFBTSxFQUFFLE9BQU8sRUFBRTtn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QUFFO1lBQ2hCLE9BQU87U0FDVjtRQUNELElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUU7WUFDdkQsYUFBYSxDQUFDLFVBQVUsR0FBRyxDQUFDLEdBQUcsYUFBYSxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUM3RCxJQUFJLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFO2dCQUNyQixNQUFNLE9BQU8sR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQztnQkFDdkMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxzQkFBc0IsRUFBRSxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUM7YUFDN0Q7WUFFRCwwQ0FBMEM7WUFDMUMsNkRBQTZEO1NBQ2hFO0lBQ0wsQ0FBQztJQUVELGtCQUFrQixDQUFDLE1BQWMsRUFBRSxJQUF5QjtRQUN4RCxPQUFPLElBQUksQ0FBQyxFQUFFLENBQUM7SUFDbkIsQ0FBQzs7d0hBektRLDJCQUEyQjs0R0FBM0IsMkJBQTJCLG9MQUNKLFdBQVcsb0RDZC9DLGkySkF1R0E7MkZEMUZhLDJCQUEyQjtrQkFQdkMsU0FBUzsrQkFDSSwyQkFBMkIsaUJBR3RCLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU07bU1BSS9DLGVBQWU7c0JBRGQsU0FBUzt1QkFBQyxXQUFXLEVBQUUsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFO2dCQW9CcEMsSUFBSTtzQkFBWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQsIFRlbXBsYXRlUmVmLCBWaWV3Q2hpbGQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250ZW50RGVuc2l0eSwgQ29udGVudERlbnNpdHlTZXJ2aWNlLCBEaWFsb2dSZWYsIERpYWxvZ1NlcnZpY2UgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUnO1xuaW1wb3J0IHsgQmFzZUNvbXBvbmVudCwgQmFyc2FBcGksIE1ldGFvYmplY3REYXRhTW9kZWwsIEJiYlRyYW5zbGF0ZVBpcGUsIFBvcnRhbFNlcnZpY2UgfSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYnN1LXVsdi1mb3JtLW11bHRpLXNlbGVjdCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3Vsdi1mb3JtLW11bHRpLXNlbGVjdC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vdWx2LWZvcm0tbXVsdGktc2VsZWN0LmNvbXBvbmVudC5zY3NzJ10sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBVbHZGb3JtTXVsdGlTZWxlY3RDb21wb25lbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IHtcbiAgICBAVmlld0NoaWxkKCdjb250YWluZXInLCB7IHJlYWQ6IFRlbXBsYXRlUmVmIH0pXG4gICAgZGlhbG9nQ29udGFpbmVyOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gICAgZGV2aWNlU2l6ZTogc3RyaW5nO1xuICAgIGNvbnRlbnREZW5zaXR5JDogT2JzZXJ2YWJsZTxDb250ZW50RGVuc2l0eT47XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBfZGlhbG9nU2VydmljZTogRGlhbG9nU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBfYmJiVHJhbnNsYXRlUGlwZTogQmJiVHJhbnNsYXRlUGlwZSxcbiAgICAgICAgX3BvcnRhbFNlcnZpY2U6IFBvcnRhbFNlcnZpY2UsXG4gICAgICAgIF9jb250ZW50RGVuc2l0eVNlcnZpY2U6IENvbnRlbnREZW5zaXR5U2VydmljZVxuICAgICkge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICB0aGlzLmNvbnRlbnREZW5zaXR5JCA9IF9jb250ZW50RGVuc2l0eVNlcnZpY2UuY29udGVudERlbnNpdHk7XG4gICAgICAgIEJhcnNhQXBpLkJ3LlVsdkZvcm1NdWx0aVNlbGVjdCA9IHRoaXM7XG4gICAgICAgIF9wb3J0YWxTZXJ2aWNlLmRldmljZVNpemUkLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKGMpID0+IHtcbiAgICAgICAgICAgIHRoaXMuZGV2aWNlU2l6ZSA9IGM7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICAvKiBlc2xpbnQtZGlzYWJsZSAqL1xuICAgIEBJbnB1dCgpIFNob3cgPSAoYWRhcHRlciwgY29uZmlnKSA9PiB7XG4gICAgICAgIGNvbnN0IGxhcmdlU2NyZWVuID0gdGhpcy5kZXZpY2VTaXplID09PSAnbCcgfHwgdGhpcy5kZXZpY2VTaXplID09PSAneGwnO1xuICAgICAgICBjb25zdCBkaWFsb2dDb25maWc6IHsgW2tleTogc3RyaW5nXTogYW55IH0gPSB7XG4gICAgICAgICAgICBkYXRhOiB7IC4uLmNvbmZpZywgYWRhcHRlciB9LFxuICAgICAgICAgICAgZXNjS2V5Q2xvc2VhYmxlOiBmYWxzZSxcbiAgICAgICAgICAgIGRpYWxvZ1BhbmVsQ2xhc3M6IGB1bHYtc2VsZWN0aW9uLWZvcm0tZGlhbG9nICR7dGhpcy5kZXZpY2VTaXplID8gJ3Vsdi1zZWxlY3Rpb24tZm9ybS1kaWFsb2ctbW9iaWxlJyA6ICcnfWAsXG4gICAgICAgICAgICB2ZXJ0aWNhbFBhZGRpbmc6IGZhbHNlXG4gICAgICAgIH07XG4gICAgICAgIGlmIChsYXJnZVNjcmVlbikge1xuICAgICAgICAgICAgZGlhbG9nQ29uZmlnLndpZHRoID0gJzUwdncnO1xuICAgICAgICAgICAgZGlhbG9nQ29uZmlnLmhlaWdodCA9ICdhdXRvJztcbiAgICAgICAgICAgIGRpYWxvZ0NvbmZpZy5taW5XaWR0aCA9ICc0MDAnO1xuICAgICAgICAgICAgZGlhbG9nQ29uZmlnLm1pbkhlaWdodCA9ICc2MHZoJztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGRpYWxvZ0NvbmZpZy5tb2JpbGUgPSB0cnVlO1xuICAgICAgICAgICAgZGlhbG9nQ29uZmlnLmZ1bGxTY3JlZW4gPSB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIGlmIChhZGFwdGVyLkhpZGVPa0NhbmNlbEJ1dHRvbnMpIHtcbiAgICAgICAgICAgIGRpYWxvZ0NvbmZpZy5mdWxsU2NyZWVuID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBkaWFsb2dSZWYgPSB0aGlzLl9kaWFsb2dTZXJ2aWNlLm9wZW4odGhpcy5kaWFsb2dDb250YWluZXIsIGRpYWxvZ0NvbmZpZyk7XG4gICAgICAgIGRpYWxvZ1JlZi5sb2FkaW5nKGNvbmZpZy5Jc0xvYWRlZCA9PT0gdHJ1ZSA/IGZhbHNlIDogdHJ1ZSk7IC8vIG1lYW5zIHVsdiBpcyBsb2FkZWQgYW5kIGl0IGRvZXMgbm90IHNob3cgbG9hZGluZyBpbiBkaWFsb2dcbiAgICAgICAgKGRpYWxvZ1JlZiBhcyBhbnkpLm1hc2sgPSAodmFsKSA9PiB7XG4gICAgICAgICAgICBkaWFsb2dSZWYubG9hZGluZyh2YWwpO1xuICAgICAgICB9O1xuICAgICAgICAoZGlhbG9nUmVmIGFzIGFueSkuQWRkVWx2VG9XaW5kb3cgPSAodWx2Q29udHJvbDEsIHVsdkNvbnRyb2wyKSA9PiB7XG4gICAgICAgICAgICBkaWFsb2dSZWYubG9hZGluZyhmYWxzZSk7XG4gICAgICAgICAgICBjb25zdCBzZWxlY3RGb3JtVGl0bGVUZXh0ID0gdGhpcy5fYmJiVHJhbnNsYXRlUGlwZS50cmFuc2Zvcm0oJ1NlbGVjdEZvcm1UaXRsZScpO1xuICAgICAgICAgICAgZGlhbG9nUmVmLmRhdGEudGl0bGUgPSBzZWxlY3RGb3JtVGl0bGVUZXh0LnJlcGxhY2UoJ3swfScsIHVsdkNvbnRyb2wxLlNldHRpbmcuRXh0cmEuUmVwb3J0LlR5cGVEZWZDYXB0aW9uKTtcbiAgICAgICAgICAgIGRpYWxvZ1JlZi5kYXRhLnVsdjEgPSB1bHZDb250cm9sMTtcbiAgICAgICAgICAgIGlmICh1bHZDb250cm9sMS52aWV3ZXJDb250cm9sKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5faGFuZGxlVWx2Vmlld2VyRXZlbnQodWx2Q29udHJvbDEsIGFkYXB0ZXIsIGRpYWxvZ1JlZik7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHVsdkNvbnRyb2wxLm9uKHtcbiAgICAgICAgICAgICAgICAgICAgVmlld2VyQ29udHJvbENoYW5nZWQ6ICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX2hhbmRsZVVsdlZpZXdlckV2ZW50KHVsdkNvbnRyb2wxLCBhZGFwdGVyLCBkaWFsb2dSZWYpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAodWx2Q29udHJvbDIpIHtcbiAgICAgICAgICAgICAgICBkaWFsb2dSZWYuZGF0YS51bHYyID0gdWx2Q29udHJvbDI7XG4gICAgICAgICAgICAgICAgZGlhbG9nUmVmLmRhdGEuc2VsZWN0ZWRJdGVtcyA9IHVsdkNvbnRyb2wyLlNldHRpbmcuRGF0YTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICAgICAgcmV0dXJuIGRpYWxvZ1JlZjtcbiAgICAgICAgLyogZXNsaW50LWRpc2FibGUgKi9cbiAgICB9O1xuXG4gICAgcHJpdmF0ZSBfaGFuZGxlVWx2Vmlld2VyRXZlbnQodWx2Q29udHJvbDE6IGFueSwgYWRhcHRlcjogYW55LCBkaWFsb2dSZWY6IERpYWxvZ1JlZjxhbnksIGFueT4pIHtcbiAgICAgICAgdWx2Q29udHJvbDEudmlld2VyQ29udHJvbC5TaG93T2tDYW5jZWxCdXR0b25zID0gYWRhcHRlci5TaG93T2tDYW5jZWxCdXR0b25zO1xuICAgICAgICB1bHZDb250cm9sMS52aWV3ZXJDb250cm9sLm9uKHtcbiAgICAgICAgICAgIC8qIGVzbGludC1kaXNhYmxlICovXG4gICAgICAgICAgICByb3dzZWxlY3Q6IChzZW5kZXIsIGluZGV4LCBtbykgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuX2FkZEl0ZW0oZGlhbG9nUmVmLCBtbyk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgLyogZXNsaW50LWRpc2FibGUgKi9cbiAgICAgICAgICAgIHJvd2Rlc2VsZWN0OiAoc2VuZGVyLCBpbmRleCwgbW8pID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLl9yZW1vdmVJdGVtKGRpYWxvZ1JlZiwgbW8pO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHJvd1NlbGVjdEFsbDogKCkgPT4ge1xuICAgICAgICAgICAgICAgIHVsdkNvbnRyb2wxLlNldHRpbmcuRGF0YS5Nb0RhdGFMaXN0LmZvckVhY2goKG1vKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2FkZEl0ZW0oZGlhbG9nUmVmLCBtbyk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgcm93RGVTZWxlY3RBbGw6ICgpID0+IHtcbiAgICAgICAgICAgICAgICB1bHZDb250cm9sMS5TZXR0aW5nLkRhdGEuTW9EYXRhTGlzdC5mb3JFYWNoKChtbykgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9yZW1vdmVJdGVtKGRpYWxvZ1JlZiwgbW8pO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBvbk9rKGRpYWxvZ1JlZjogRGlhbG9nUmVmKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHsgdWx2LCB1bHYyIH0gPSB0aGlzLl9nZXRVbHYoZGlhbG9nUmVmKTtcbiAgICAgICAgLy8gaWYgKHVsdikge1xuICAgICAgICAvLyAgICAgaWYgKHVsdjIpIHtcbiAgICAgICAgLy8gICAgICAgICBjb25zdCBhZGFwdGVyID0gZGlhbG9nUmVmLmRhdGEuYWRhcHRlcjtcbiAgICAgICAgLy8gICAgICAgICBhZGFwdGVyLmZpcmVFdmVudCgnQWRkUmVtb3ZlQnV0dG9uQ2xpY2snLCBhZGFwdGVyLCAnQWRkJyk7XG4gICAgICAgIC8vICAgICB9XG4gICAgICAgIC8vIH1cbiAgICAgICAgdGhpcy5fYnRuQ2xpY2sodWx2LCAnT2snKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9nZXRVbHYoZGlhbG9nUmVmOiBEaWFsb2dSZWYpOiB7IHVsdjogYW55OyB1bHYyOiBhbnkgfSB7XG4gICAgICAgIGNvbnN0IHVsdjIgPSBkaWFsb2dSZWYuZGF0YS51bHYyO1xuICAgICAgICBjb25zdCB1bHYxID0gZGlhbG9nUmVmLmRhdGEudWx2MTtcbiAgICAgICAgY29uc3QgdWx2ID0gdWx2MiB8fCB1bHYxO1xuICAgICAgICByZXR1cm4geyB1bHYsIHVsdjIgfTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9idG5DbGljayh1bHY6IGFueSwgYnRuS2V5OiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qgb2tCdG4gPSB1bHYuYnV0dG9ucy5maW5kKChjKSA9PiBjLktleSA9PT0gYnRuS2V5KTtcbiAgICAgICAgY29uc3Qgc2NvcGUgPSBva0J0bi5zY29wZTtcbiAgICAgICAgb2tCdG4uaGFuZGxlci5iaW5kKHNjb3BlKShva0J0bik7XG4gICAgfVxuXG4gICAgb25DYW5jZWwoZGlhbG9nUmVmOiBEaWFsb2dSZWYpOiB2b2lkIHtcbiAgICAgICAgaWYgKCFkaWFsb2dSZWYuZGF0YS5hZGFwdGVyPy5TaG93T2tDYW5jZWxCdXR0b25zKSB7XG4gICAgICAgICAgICBkaWFsb2dSZWYuZGlzbWlzcygpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHsgdWx2LCB1bHYyIH0gPSB0aGlzLl9nZXRVbHYoZGlhbG9nUmVmKTtcbiAgICAgICAgdGhpcy5fYnRuQ2xpY2sodWx2LCAnQ2FuY2VsJyk7XG4gICAgfVxuXG4gICAgb25DbGVhcihkaWFsb2dSZWY6IERpYWxvZ1JlZik6IHZvaWQge1xuICAgICAgICBkaWFsb2dSZWYuZGF0YS51bHYxLnZpZXdlckNvbnRyb2wuQ2xlYXJBbGxTZWxlY3RlZCgpO1xuICAgICAgICBkaWFsb2dSZWYuZGF0YS5zZWxlY3RlZEl0ZW1zLk1vRGF0YUxpc3QgPSBbXTtcbiAgICB9XG5cbiAgICBvblJlbW92ZVNlbGVjdGVkKGRpYWxvZ1JlZjogRGlhbG9nUmVmLCBpdGVtOiBNZXRhb2JqZWN0RGF0YU1vZGVsKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3JlbW92ZUl0ZW0oZGlhbG9nUmVmLCBpdGVtKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgX3JlbW92ZUl0ZW0oZGlhbG9nUmVmOiBEaWFsb2dSZWY8YW55PiwgbW86IGFueSk6IHZvaWQge1xuICAgICAgICBjb25zdCBzZWxlY3RlZEl0ZW1zID0gZGlhbG9nUmVmLmRhdGEuc2VsZWN0ZWRJdGVtcztcbiAgICAgICAgaWYgKCFzZWxlY3RlZEl0ZW1zKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgc2VsZWN0ZWRJdGVtcy5Nb0RhdGFMaXN0ID0gc2VsZWN0ZWRJdGVtcy5Nb0RhdGFMaXN0LmZpbHRlcigoYykgPT4gYy5JZCAhPT0gbW8uSWQpO1xuICAgICAgICBkaWFsb2dSZWYuZGF0YS51bHYxLnZpZXdlckNvbnRyb2wuRGVTZWxlY3RSZWNvcmRzKFttb10pO1xuICAgICAgICBpZiAoZGlhbG9nUmVmLmRhdGEudWx2Mikge1xuICAgICAgICAgICAgY29uc3QgYWRhcHRlciA9IGRpYWxvZ1JlZi5kYXRhLmFkYXB0ZXI7XG4gICAgICAgICAgICBhZGFwdGVyLmZpcmVFdmVudCgnQWRkUmVtb3ZlQnV0dG9uQ2xpY2snLCBhZGFwdGVyLCAnUmVtb3ZlJyk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gY29uc3QgYWRhcHRlciA9IGRpYWxvZ1JlZi5kYXRhLmFkYXB0ZXI7XG4gICAgICAgIC8vIGFkYXB0ZXIuZmlyZUV2ZW50KCdBZGRSZW1vdmVCdXR0b25DbGljaycsIGFkYXB0ZXIsICdSZW1vdmUnKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgX2FkZEl0ZW0oZGlhbG9nUmVmOiBEaWFsb2dSZWY8YW55PiwgbW86IE1ldGFvYmplY3REYXRhTW9kZWwpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWRJdGVtcyA9IGRpYWxvZ1JlZi5kYXRhLnNlbGVjdGVkSXRlbXM7XG4gICAgICAgIGlmICghc2VsZWN0ZWRJdGVtcykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGlmICghc2VsZWN0ZWRJdGVtcy5Nb0RhdGFMaXN0LmZpbmQoKGMpID0+IGMuSWQgPT09IG1vLklkKSkge1xuICAgICAgICAgICAgc2VsZWN0ZWRJdGVtcy5Nb0RhdGFMaXN0ID0gWy4uLnNlbGVjdGVkSXRlbXMuTW9EYXRhTGlzdCwgbW9dO1xuICAgICAgICAgICAgaWYgKGRpYWxvZ1JlZi5kYXRhLnVsdjIpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBhZGFwdGVyID0gZGlhbG9nUmVmLmRhdGEuYWRhcHRlcjtcbiAgICAgICAgICAgICAgICBhZGFwdGVyLmZpcmVFdmVudCgnQWRkUmVtb3ZlQnV0dG9uQ2xpY2snLCBhZGFwdGVyLCAnQWRkJyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIGNvbnN0IGFkYXB0ZXIgPSBkaWFsb2dSZWYuZGF0YS5hZGFwdGVyO1xuICAgICAgICAgICAgLy8gYWRhcHRlci5maXJlRXZlbnQoJ0FkZFJlbW92ZUJ1dHRvbkNsaWNrJywgYWRhcHRlciwgJ0FkZCcpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgX3RyYWNrQnlTZWxlY3RlZEZuKF9pbmRleDogbnVtYmVyLCBpdGVtOiBNZXRhb2JqZWN0RGF0YU1vZGVsKTogbnVtYmVyIHwgc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGl0ZW0uSWQ7XG4gICAgfVxufVxuIiwiPG5nLXRlbXBsYXRlIGxldC1kaWFsb2cgbGV0LWRpYWxvZ0NvbmZpZz1cImRpYWxvZ0NvbmZpZ1wiICNjb250YWluZXI+XG4gICAgPGZkLWRpYWxvZyBbZGlhbG9nQ29uZmlnXT1cImRpYWxvZ0NvbmZpZ1wiIFtkaWFsb2dSZWZdPVwiZGlhbG9nXCIgI2RpYWxvZ1RwbD5cbiAgICAgICAgPGZkLWRpYWxvZy1oZWFkZXI+XG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgZmRUZW1wbGF0ZT1cImhlYWRlclwiPlxuICAgICAgICAgICAgICAgIDxkaXYgZmQtYmFyLWxlZnQ+XG4gICAgICAgICAgICAgICAgICAgIDxmZC1iYXItZWxlbWVudD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxoMSBpZD1cImZkLWRpYWxvZy1oZWFkZXItM1wiIGZkLXRpdGxlPnt7IGRpYWxvZy5kYXRhLnRpdGxlIH19PC9oMT5cbiAgICAgICAgICAgICAgICAgICAgPC9mZC1iYXItZWxlbWVudD5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGZkLWJhci1yaWdodD5cbiAgICAgICAgICAgICAgICAgICAgPGZkLWJ1dHRvbi1iYXJcbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiIWRpYWxvZ0NvbmZpZy5mdWxsc2NyZWVuXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGFyaWFMYWJlbD1cImZ1bGxzY3JlZW5cIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2dseXBoXT1cImRpYWxvZy5kYXRhLmZ1bGxzY3JlZW4gPyAnZXhpdGZ1bGxzY3JlZW4nIDogJ3Jlc2l6ZSdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgZnVsbHNjcmVlbkRpYWxvZ1xuICAgICAgICAgICAgICAgICAgICAgICAgW2RpYWxvZ109XCJkaWFsb2dcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2RpYWxvZ0NvbXBvbmVudF09XCJkaWFsb2dUcGxcIlxuICAgICAgICAgICAgICAgICAgICA+PC9mZC1idXR0b24tYmFyPlxuICAgICAgICAgICAgICAgICAgICA8ZmQtYnV0dG9uLWJhciBhcmlhTGFiZWw9XCJjbG9zZVwiIGdseXBoPVwiZGVjbGluZVwiIChjbGljayk9XCJvbkNhbmNlbChkaWFsb2cpXCI+PC9mZC1idXR0b24tYmFyPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgIDwhLS0gPGgzIGZkLXRpdGxlPnt7IGRpYWxvZy5kYXRhLnRpdGxlIH19PC9oMz5cbiAgICAgIDxidXR0b24gZmQtZGlhbG9nLWNsb3NlLWJ1dHRvbj48L2J1dHRvbj4gLS0+XG4gICAgICAgIDwvZmQtZGlhbG9nLWhlYWRlcj5cblxuICAgICAgICA8ZmQtZGlhbG9nLWJvZHk+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZGlhbG9nLmRhdGEudWx2MSBhcyB1bHYxXCI+XG4gICAgICAgICAgICAgICAgPGJzdS11aS11bHYtbWFpbi11aVxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInVsdi1mb3JtLW11bHRpLXNlbGVjdFwiXG4gICAgICAgICAgICAgICAgICAgIFtjb250ZXh0XT1cInVsdjFcIlxuICAgICAgICAgICAgICAgICAgICBbaW5EaWFsb2ddPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgIFtmdWxsc2NyZWVuXT1cImRpYWxvZy5kYXRhLmZ1bGxzY3JlZW5cIlxuICAgICAgICAgICAgICAgID48L2JzdS11aS11bHYtbWFpbi11aT5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICpuZ0lmPVwiZGlhbG9nLmRhdGEudWx2MiAmJiBkaWFsb2cuZGF0YS5TaG93U2Vjb25kUGFuZWxcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwidWx2LXNlbGVjdGlvbi1mb3JtLWRpYWxvZ19fcm93IHVsdi1zZWxlY3Rpb24tZm9ybS1kaWFsb2dfX3NlbGVjdGlvbi1yb3dcIlxuICAgICAgICAgICAgICAgIFthcmlhLWxhYmVsXT1cIidTZWxlY3RlZEl0ZW1zQW5kQ29uZGl0aW9ucycgfCBiYmJUcmFuc2xhdGVcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxoNSBmZC10aXRsZSBjbGFzcz1cInNlbGVjdGVkLWFuZC1jb25kaXRpb24tdGl0bGVcIj5cbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXI+e3sgJ1NlbGVjdGVkSXRlbXNBbmRDb25kaXRpb25zJyB8IGJiYlRyYW5zbGF0ZSB9fSA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICh7eyBkaWFsb2cuZGF0YS5zZWxlY3RlZEl0ZW1zPy5Nb0RhdGFMaXN0Py5sZW5ndGggfHwgMCB9fSlcbiAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgPC9oNT5cblxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ1bHYtc2VsZWN0aW9uLWZvcm0tZGlhbG9nX190b2tlbnMtd3JhcHBlclwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidWx2LXNlbGVjdGlvbi1mb3JtLWRpYWxvZ19fdG9rZW5zXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZmQtdG9vbGJhciBbc2hvdWxkT3ZlcmZsb3ddPVwidHJ1ZVwiICpuZ0lmPVwiZGlhbG9nLmRhdGEuc2VsZWN0ZWRJdGVtc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gU2VsZWN0ZWQgaXRlbXMgLS0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZkLXRva2VuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZkLXRvb2xiYXItaXRlbVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZE92ZXJmbG93UHJpb3JpdHk9XCJoaWdoXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmZHAtdmFsdWUtaGVscC1kaWFsb2dfX3NlbGVjdGlvbi10b2tlblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChvbkNsb3NlQ2xpY2spPVwib25SZW1vdmVTZWxlY3RlZChkaWFsb2csIGl0ZW0pXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nRm9yPVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgaXRlbSBvZiBkaWFsb2cuZGF0YS5zZWxlY3RlZEl0ZW1zLk1vRGF0YUxpc3Q7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmRleCBhcyBzZWxlY3RlZEluZGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhY2tCeTogX3RyYWNrQnlTZWxlY3RlZEZuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID57eyBpdGVtLiRDYXB0aW9uIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9mZC10b2tlbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZmQtdG9vbGJhcj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidWx2LXNlbGVjdGlvbi1mb3JtLWRpYWxvZ19fdG9rZW5zLWNsZWFyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZkLWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgZmRUeXBlPVwidHJhbnNwYXJlbnRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgZ2x5cGg9XCJkZWNsaW5lXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFthcmlhLWxhYmVsXT1cIidDbGVhcicgfCBiYmJUcmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uQ2xlYXIoZGlhbG9nKVwiXG4gICAgICAgICAgICAgICAgICAgID48L2J1dHRvbj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2ZkLWRpYWxvZy1ib2R5PlxuXG4gICAgICAgIDxmZC1kaWFsb2ctZm9vdGVyICpuZ0lmPVwiZGlhbG9nLmRhdGEudWx2MSAmJiAhZGlhbG9nLmRhdGEudWx2MT8uSGlkZU9rQ2FuY2VsQnV0dG9uc1wiPlxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlIGZkVGVtcGxhdGU9XCJmb290ZXJcIj5cbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidWx2LXNlbGVjdGlvbi1mb3JtLWRpYWxvZ19fYWN0aW9ucy1yb3dcIlxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImRpYWxvZy5kYXRhLmFkYXB0ZXI/LlNob3dPa0NhbmNlbEJ1dHRvbnMgIT09IGZhbHNlXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgIGZkLWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1zdWNjZXNcbiAgICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInT0snIHwgYmJiVHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZkVHlwZT1cImVtcGhhc2l6ZWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2NvbXBhY3RdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25PayhkaWFsb2cpXCJcbiAgICAgICAgICAgICAgICAgICAgPjwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICA8ZmRwLWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgW2NvbnRlbnREZW5zaXR5XT1cIidjb21wYWN0J1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBkYXRhLWRpc21pc3MtZGlhbG9nXG4gICAgICAgICAgICAgICAgICAgICAgICBmZC1kaWFsb2ctZGVjaXNpdmUtYnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ0NhbmNlbCcgfCBiYmJUcmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2J1dHRvblR5cGVdPVwiJ3RyYW5zcGFyZW50J1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25DYW5jZWwoZGlhbG9nKVwiXG4gICAgICAgICAgICAgICAgICAgID48L2ZkcC1idXR0b24+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8L2ZkLWRpYWxvZy1mb290ZXI+XG4gICAgPC9mZC1kaWFsb2c+XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, ViewChild } from '@angular/core';
|
|
2
|
+
import { BaseUlvSettingComponent } from 'barsa-novin-ray-core';
|
|
3
|
+
import { UiGridSortSettingComponent } from '../ui-grid-sort-setting/ui-grid-sort-setting.component';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@fundamental-ngx/core";
|
|
6
|
+
import * as i2 from "@fundamental-ngx/core/bar";
|
|
7
|
+
import * as i3 from "@fundamental-ngx/core/button";
|
|
8
|
+
import * as i4 from "@fundamental-ngx/core/dialog";
|
|
9
|
+
import * as i5 from "@fundamental-ngx/core/title";
|
|
10
|
+
import * as i6 from "@fundamental-ngx/core/utils";
|
|
11
|
+
import * as i7 from "../ui-grid-sort-setting/ui-grid-sort-setting.component";
|
|
12
|
+
import * as i8 from "barsa-novin-ray-core";
|
|
13
|
+
export class UlvGroupbySettingsComponent extends BaseUlvSettingComponent {
|
|
14
|
+
constructor(dialogRef) {
|
|
15
|
+
super();
|
|
16
|
+
this.dialogRef = dialogRef;
|
|
17
|
+
}
|
|
18
|
+
ngOnInit() {
|
|
19
|
+
this.context = this.dialogRef.data.context;
|
|
20
|
+
super.ngOnInit();
|
|
21
|
+
}
|
|
22
|
+
onReset() {
|
|
23
|
+
this.sortSettings = this.sortSettings.map((c) => ({ ...c, IsGrouped: false }));
|
|
24
|
+
}
|
|
25
|
+
getSettings() {
|
|
26
|
+
const sortSetting = this.ulvSortSetting.getSettings();
|
|
27
|
+
const settings = super.getSettings();
|
|
28
|
+
settings.SortSettingList = sortSetting;
|
|
29
|
+
return settings;
|
|
30
|
+
}
|
|
31
|
+
close(setting = null) {
|
|
32
|
+
this.dialogRef.close(setting);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
UlvGroupbySettingsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UlvGroupbySettingsComponent, deps: [{ token: i1.DialogRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
36
|
+
UlvGroupbySettingsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: UlvGroupbySettingsComponent, selector: "bsu-ulv-groupby-settings", viewQueries: [{ propertyName: "ulvSortSetting", first: true, predicate: UiGridSortSettingComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<fd-dialog>\n <fd-dialog-header>\n <ng-template fdTemplate=\"header\">\n <div fd-bar-left>\n <fd-bar-element>\n <h4 fd-title [headerSize]=\"4\">\n {{ 'Columns' | bbbTranslate }}\n </h4>\n </fd-bar-element>\n </div>\n <div fd-bar-right>\n <fd-bar-element>\n <button\n fd-button\n [label]=\"'Reset' | bbbTranslate\"\n [fdType]=\"'transparent'\"\n (click)=\"onReset()\"\n ></button>\n </fd-bar-element>\n </div>\n </ng-template>\n </fd-dialog-header>\n <fd-dialog-body class=\"setting-wrapper\">\n <bsu-ui-grid-sort-setting\n [columns]=\"allColumns\"\n [sortSettings]=\"sortSettings\"\n [showGroups]=\"true\"\n ></bsu-ui-grid-sort-setting>\n </fd-dialog-body>\n\n <fd-dialog-footer>\n <fd-dialog-footer-button>\n <button fd-button fdType=\"emphasized\" (click)=\"onOkClick()\" [label]=\"'OK' | bbbTranslate\"></button>\n </fd-dialog-footer-button>\n <fd-dialog-footer-button>\n <button fd-button (click)=\"onCancelSettings()\" [label]=\"'Cancel' | bbbTranslate\"></button>\n </fd-dialog-footer-button>\n </fd-dialog-footer>\n</fd-dialog>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.BarLeftDirective, selector: "[fd-bar-left]" }, { kind: "directive", type: i2.BarRightDirective, selector: "[fd-bar-right]" }, { kind: "directive", type: i2.BarElementDirective, selector: "fd-bar-element", inputs: ["fullWidth", "isTitle"] }, { 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.DialogFooterButtonComponent, selector: "fd-dialog-footer-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: "directive", type: i6.TemplateDirective, selector: "[fdTemplate]", inputs: ["fdTemplate"] }, { kind: "component", type: i7.UiGridSortSettingComponent, selector: "bsu-ui-grid-sort-setting", inputs: ["showGroups", "columns", "sortSettings"], outputs: ["changeSetting"] }, { kind: "pipe", type: i8.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
37
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UlvGroupbySettingsComponent, decorators: [{
|
|
38
|
+
type: Component,
|
|
39
|
+
args: [{ selector: 'bsu-ulv-groupby-settings', changeDetection: ChangeDetectionStrategy.OnPush, template: "<fd-dialog>\n <fd-dialog-header>\n <ng-template fdTemplate=\"header\">\n <div fd-bar-left>\n <fd-bar-element>\n <h4 fd-title [headerSize]=\"4\">\n {{ 'Columns' | bbbTranslate }}\n </h4>\n </fd-bar-element>\n </div>\n <div fd-bar-right>\n <fd-bar-element>\n <button\n fd-button\n [label]=\"'Reset' | bbbTranslate\"\n [fdType]=\"'transparent'\"\n (click)=\"onReset()\"\n ></button>\n </fd-bar-element>\n </div>\n </ng-template>\n </fd-dialog-header>\n <fd-dialog-body class=\"setting-wrapper\">\n <bsu-ui-grid-sort-setting\n [columns]=\"allColumns\"\n [sortSettings]=\"sortSettings\"\n [showGroups]=\"true\"\n ></bsu-ui-grid-sort-setting>\n </fd-dialog-body>\n\n <fd-dialog-footer>\n <fd-dialog-footer-button>\n <button fd-button fdType=\"emphasized\" (click)=\"onOkClick()\" [label]=\"'OK' | bbbTranslate\"></button>\n </fd-dialog-footer-button>\n <fd-dialog-footer-button>\n <button fd-button (click)=\"onCancelSettings()\" [label]=\"'Cancel' | bbbTranslate\"></button>\n </fd-dialog-footer-button>\n </fd-dialog-footer>\n</fd-dialog>\n" }]
|
|
40
|
+
}], ctorParameters: function () { return [{ type: i1.DialogRef }]; }, propDecorators: { ulvSortSetting: [{
|
|
41
|
+
type: ViewChild,
|
|
42
|
+
args: [UiGridSortSettingComponent]
|
|
43
|
+
}] } });
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWx2LWdyb3VwYnktc2V0dGluZ3MuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWx2LWdyb3VwYnktc2V0dGluZ3MvdWx2LWdyb3VwYnktc2V0dGluZ3MuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWx2LWdyb3VwYnktc2V0dGluZ3MvdWx2LWdyb3VwYnktc2V0dGluZ3MuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBVSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHdEYsT0FBTyxFQUFFLHVCQUF1QixFQUFlLE1BQU0sc0JBQXNCLENBQUM7QUFDNUUsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sd0RBQXdELENBQUM7Ozs7Ozs7Ozs7QUFPcEcsTUFBTSxPQUFPLDJCQUE0QixTQUFRLHVCQUF1QjtJQUdwRSxZQUFvQixTQUFvQjtRQUNwQyxLQUFLLEVBQUUsQ0FBQztRQURRLGNBQVMsR0FBVCxTQUFTLENBQVc7SUFFeEMsQ0FBQztJQUNELFFBQVE7UUFDSixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUMzQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUNELE9BQU87UUFDSCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNuRixDQUFDO0lBQ0QsV0FBVztRQUNQLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDdEQsTUFBTSxRQUFRLEdBQUcsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3JDLFFBQVEsQ0FBQyxlQUFlLEdBQUcsV0FBVyxDQUFDO1FBQ3ZDLE9BQU8sUUFBUSxDQUFDO0lBQ3BCLENBQUM7SUFDRCxLQUFLLENBQUMsVUFBZSxJQUFJO1FBQ3JCLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2xDLENBQUM7O3dIQXJCUSwyQkFBMkI7NEdBQTNCLDJCQUEyQixnSEFDekIsMEJBQTBCLHVFQ1p6QyxzN0NBdUNBOzJGRDVCYSwyQkFBMkI7a0JBTnZDLFNBQVM7K0JBQ0ksMEJBQTBCLG1CQUduQix1QkFBdUIsQ0FBQyxNQUFNO2dHQUkvQyxjQUFjO3NCQURiLFNBQVM7dUJBQUMsMEJBQTBCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgT25Jbml0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERpYWxvZ1JlZiB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZSc7XG5cbmltcG9ydCB7IEJhc2VVbHZTZXR0aW5nQ29tcG9uZW50LCBHcmlkU2V0dGluZyB9IGZyb20gJ2JhcnNhLW5vdmluLXJheS1jb3JlJztcbmltcG9ydCB7IFVpR3JpZFNvcnRTZXR0aW5nQ29tcG9uZW50IH0gZnJvbSAnLi4vdWktZ3JpZC1zb3J0LXNldHRpbmcvdWktZ3JpZC1zb3J0LXNldHRpbmcuY29tcG9uZW50JztcbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYnN1LXVsdi1ncm91cGJ5LXNldHRpbmdzJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdWx2LWdyb3VwYnktc2V0dGluZ3MuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3Vsdi1ncm91cGJ5LXNldHRpbmdzLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgVWx2R3JvdXBieVNldHRpbmdzQ29tcG9uZW50IGV4dGVuZHMgQmFzZVVsdlNldHRpbmdDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIEBWaWV3Q2hpbGQoVWlHcmlkU29ydFNldHRpbmdDb21wb25lbnQpXG4gICAgdWx2U29ydFNldHRpbmc6IFVpR3JpZFNvcnRTZXR0aW5nQ29tcG9uZW50O1xuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgZGlhbG9nUmVmOiBEaWFsb2dSZWYpIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICB9XG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY29udGV4dCA9IHRoaXMuZGlhbG9nUmVmLmRhdGEuY29udGV4dDtcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICB9XG4gICAgb25SZXNldCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zb3J0U2V0dGluZ3MgPSB0aGlzLnNvcnRTZXR0aW5ncy5tYXAoKGMpID0+ICh7IC4uLmMsIElzR3JvdXBlZDogZmFsc2UgfSkpO1xuICAgIH1cbiAgICBnZXRTZXR0aW5ncygpOiBHcmlkU2V0dGluZyB7XG4gICAgICAgIGNvbnN0IHNvcnRTZXR0aW5nID0gdGhpcy51bHZTb3J0U2V0dGluZy5nZXRTZXR0aW5ncygpO1xuICAgICAgICBjb25zdCBzZXR0aW5ncyA9IHN1cGVyLmdldFNldHRpbmdzKCk7XG4gICAgICAgIHNldHRpbmdzLlNvcnRTZXR0aW5nTGlzdCA9IHNvcnRTZXR0aW5nO1xuICAgICAgICByZXR1cm4gc2V0dGluZ3M7XG4gICAgfVxuICAgIGNsb3NlKHNldHRpbmc6IGFueSA9IG51bGwpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kaWFsb2dSZWYuY2xvc2Uoc2V0dGluZyk7XG4gICAgfVxufVxuIiwiPGZkLWRpYWxvZz5cbiAgICA8ZmQtZGlhbG9nLWhlYWRlcj5cbiAgICAgICAgPG5nLXRlbXBsYXRlIGZkVGVtcGxhdGU9XCJoZWFkZXJcIj5cbiAgICAgICAgICAgIDxkaXYgZmQtYmFyLWxlZnQ+XG4gICAgICAgICAgICAgICAgPGZkLWJhci1lbGVtZW50PlxuICAgICAgICAgICAgICAgICAgICA8aDQgZmQtdGl0bGUgW2hlYWRlclNpemVdPVwiNFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgJ0NvbHVtbnMnIHwgYmJiVHJhbnNsYXRlIH19XG4gICAgICAgICAgICAgICAgICAgIDwvaDQ+XG4gICAgICAgICAgICAgICAgPC9mZC1iYXItZWxlbWVudD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBmZC1iYXItcmlnaHQ+XG4gICAgICAgICAgICAgICAgPGZkLWJhci1lbGVtZW50PlxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICBmZC1idXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInUmVzZXQnIHwgYmJiVHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtmZFR5cGVdPVwiJ3RyYW5zcGFyZW50J1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25SZXNldCgpXCJcbiAgICAgICAgICAgICAgICAgICAgPjwvYnV0dG9uPlxuICAgICAgICAgICAgICAgIDwvZmQtYmFyLWVsZW1lbnQ+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L2ZkLWRpYWxvZy1oZWFkZXI+XG4gICAgPGZkLWRpYWxvZy1ib2R5IGNsYXNzPVwic2V0dGluZy13cmFwcGVyXCI+XG4gICAgICAgIDxic3UtdWktZ3JpZC1zb3J0LXNldHRpbmdcbiAgICAgICAgICAgIFtjb2x1bW5zXT1cImFsbENvbHVtbnNcIlxuICAgICAgICAgICAgW3NvcnRTZXR0aW5nc109XCJzb3J0U2V0dGluZ3NcIlxuICAgICAgICAgICAgW3Nob3dHcm91cHNdPVwidHJ1ZVwiXG4gICAgICAgID48L2JzdS11aS1ncmlkLXNvcnQtc2V0dGluZz5cbiAgICA8L2ZkLWRpYWxvZy1ib2R5PlxuXG4gICAgPGZkLWRpYWxvZy1mb290ZXI+XG4gICAgICAgIDxmZC1kaWFsb2ctZm9vdGVyLWJ1dHRvbj5cbiAgICAgICAgICAgIDxidXR0b24gZmQtYnV0dG9uIGZkVHlwZT1cImVtcGhhc2l6ZWRcIiAoY2xpY2spPVwib25Pa0NsaWNrKClcIiBbbGFiZWxdPVwiJ09LJyB8IGJiYlRyYW5zbGF0ZVwiPjwvYnV0dG9uPlxuICAgICAgICA8L2ZkLWRpYWxvZy1mb290ZXItYnV0dG9uPlxuICAgICAgICA8ZmQtZGlhbG9nLWZvb3Rlci1idXR0b24+XG4gICAgICAgICAgICA8YnV0dG9uIGZkLWJ1dHRvbiAoY2xpY2spPVwib25DYW5jZWxTZXR0aW5ncygpXCIgW2xhYmVsXT1cIidDYW5jZWwnIHwgYmJiVHJhbnNsYXRlXCI+PC9idXR0b24+XG4gICAgICAgIDwvZmQtZGlhbG9nLWZvb3Rlci1idXR0b24+XG4gICAgPC9mZC1kaWFsb2ctZm9vdGVyPlxuPC9mZC1kaWFsb2c+XG4iXX0=
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, HostBinding, Output } from '@angular/core';
|
|
2
|
+
import { takeUntil, tap } from 'rxjs/operators';
|
|
3
|
+
import { BaseComponent } 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/common";
|
|
7
|
+
import * as i3 from "@fundamental-ngx/core/pagination";
|
|
8
|
+
export class UlvPagingComponent extends BaseComponent {
|
|
9
|
+
constructor(ulvMainService, bbbPipe) {
|
|
10
|
+
super();
|
|
11
|
+
this.ulvMainService = ulvMainService;
|
|
12
|
+
this.bbbPipe = bbbPipe;
|
|
13
|
+
this.pageChange = new EventEmitter();
|
|
14
|
+
this.pageSizeChange = new EventEmitter();
|
|
15
|
+
this.height = 60;
|
|
16
|
+
this.currentPage = 0;
|
|
17
|
+
this.totalPage = 0;
|
|
18
|
+
}
|
|
19
|
+
ngOnInit() {
|
|
20
|
+
super.ngOnInit();
|
|
21
|
+
this.pagingSetting$ = this.ulvMainService.pagingSetting$.pipe(takeUntil(this._onDestroy$), tap((pagingSetting) => {
|
|
22
|
+
if (pagingSetting === null) {
|
|
23
|
+
this.height = 0;
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
this.totalPage = Number(pagingSetting.TotalPages);
|
|
27
|
+
const totalRows = pagingSetting.TotalRows.toString();
|
|
28
|
+
this.totalPageStr = this.bbbPipe.transform('CountWithParenthesis').replace('{0}', totalRows);
|
|
29
|
+
}));
|
|
30
|
+
}
|
|
31
|
+
onPageSizeChange(e) {
|
|
32
|
+
const selectedValue = e.target.selectedOption.value;
|
|
33
|
+
this.ulvMainService.pageSizeChanged(selectedValue);
|
|
34
|
+
}
|
|
35
|
+
onEndClick() {
|
|
36
|
+
this.currentPage = this.totalPage - 1;
|
|
37
|
+
this._pageChanged();
|
|
38
|
+
}
|
|
39
|
+
onFirstClick() {
|
|
40
|
+
this.currentPage = 0;
|
|
41
|
+
this._pageChanged();
|
|
42
|
+
}
|
|
43
|
+
onNextClick() {
|
|
44
|
+
this.currentPage++;
|
|
45
|
+
this._pageChanged();
|
|
46
|
+
}
|
|
47
|
+
onPreviousClick() {
|
|
48
|
+
this.currentPage--;
|
|
49
|
+
this._pageChanged();
|
|
50
|
+
}
|
|
51
|
+
onPageChange(pageNumber) {
|
|
52
|
+
this._pageChanged(pageNumber - 1);
|
|
53
|
+
this.currentPage = pageNumber;
|
|
54
|
+
}
|
|
55
|
+
_pageChanged(pageNumber) {
|
|
56
|
+
pageNumber = typeof pageNumber === 'undefined' ? this.currentPage : pageNumber;
|
|
57
|
+
this.ulvMainService.pageChanged(pageNumber);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
UlvPagingComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UlvPagingComponent, deps: [{ token: i1.UlvMainService }, { token: i1.BbbTranslatePipe }], target: i0.ɵɵFactoryTarget.Component });
|
|
61
|
+
UlvPagingComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: UlvPagingComponent, selector: "bsu-ulv-paging", outputs: { pageChange: "pageChange", pageSizeChange: "pageSizeChange" }, host: { properties: { "height.px": "this.height" } }, usesInheritance: true, ngImport: i0, template: "<!-- <ng-container *ngIf=\"config?.Setting?.Data?.Paging?.HasPaging\">\r\n <div class=\"icons\">\r\n <button\r\n fd-button\r\n [attr.disabled]=\"currentPage === totalPage - 1 ? true : null\"\r\n fdType=\"transparent\"\r\n glyph=\"begin\"\r\n (click)=\"onEndClick()\"\r\n ></button>\r\n <button\r\n fd-button\r\n [attr.disabled]=\"currentPage + 1 >= totalPage ? true : null\"\r\n fdType=\"transparent\"\r\n glyph=\"navigation-left-arrow\"\r\n (click)=\"onNextClick()\"\r\n ></button>\r\n <button\r\n fd-button\r\n [attr.disabled]=\"currentPage - 1 < 0 ? true : null\"\r\n fdType=\"transparent\"\r\n glyph=\"navigation-right-arrow\"\r\n (click)=\"onPreviousClick()\"\r\n ></button>\r\n <button\r\n fd-button\r\n [attr.disabled]=\"currentPage === 0 ? true : null\"\r\n fdType=\"transparent\"\r\n glyph=\"begin\"\r\n (click)=\"onFirstClick()\"\r\n ></button>\r\n </div>\r\n <div class=\"pagesize\">\r\n <label style=\"padding: 0 5px\"\r\n >{{ currentPage * pageSize }}-{{ currentPage * pageSize + pageSize }} \u0627\u0632\r\n {{ config.Setting.Data.Paging.TotalRows }}</label\r\n >\r\n <fd-select (valueChange)=\"onPageSizeChange($event)\" [value]=\"pageSize\">\r\n <fd-option [value]=\"24\">24</fd-option>\r\n <fd-option [value]=\"100\">100</fd-option>\r\n <fd-option [value]=\"100\">100</fd-option>\r\n </fd-select>\r\n\r\n <label style=\"padding: 0 5px\">{{ ItemsPerPage }}:</label>\r\n </div>\r\n</ng-container> -->\r\n<ng-container *ngIf=\"pagingSetting$ | async as pagingSetting\">\r\n <fd-pagination\r\n *ngIf=\"pagingSetting && pagingSetting.HasPaging\"\r\n [totalItems]=\"pagingSetting.TotalRows\"\r\n (pageChangeStart)=\"onPageChange($event)\"\r\n [itemsPerPage]=\"pagingSetting.PageSize\"\r\n [currentPage]=\"currentPage\"\r\n [displayTextTemplate]=\"showingItems\"\r\n ></fd-pagination>\r\n</ng-container>\r\n<ng-template #showingItems let-showing=\"showing\">\r\n <span dir=\"ltr\">\r\n {{ 'From' | bbbTranslate }} {{ showing.from }} {{ 'To' | bbbTranslate }} {{ showing.to }} {{ totalPageStr }}\r\n </span>\r\n</ng-template>\r\n", styles: [":host{align-items:center;display:flex;justify-content:center;flex-direction:row-reverse;width:100%}.icons{display:flex;justify-content:space-between;padding:0 15px}.icons ui5-button{color:var(--sapContent_LabelColor)}.icons ui5-button:hover{background:var(--sapBackgroundColor)!important;border-color:transparent!important}.pagesize{align-items:center;display:flex;justify-content:flex-start;flex-direction:row-reverse}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.PaginationComponent, selector: "fd-pagination", inputs: ["id", "mobile", "totalItems", "currentPage", "itemsPerPage", "itemsPerPageTemplate", "itemsPerPageLabel", "itemsPerPageOptions", "displayTotalItems", "displayTextTemplate", "firstLabel", "previousLabel", "nextLabel", "lastLabel", "ariaLabel", "pageLabel", "currentPageAriaLabel", "labelBeforeInputMobile", "labelAfterInputMobile", "inputAriaLabel"], outputs: ["pageChangeStart", "itemsPerPageChange"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
62
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UlvPagingComponent, decorators: [{
|
|
63
|
+
type: Component,
|
|
64
|
+
args: [{ selector: 'bsu-ulv-paging', changeDetection: ChangeDetectionStrategy.OnPush, template: "<!-- <ng-container *ngIf=\"config?.Setting?.Data?.Paging?.HasPaging\">\r\n <div class=\"icons\">\r\n <button\r\n fd-button\r\n [attr.disabled]=\"currentPage === totalPage - 1 ? true : null\"\r\n fdType=\"transparent\"\r\n glyph=\"begin\"\r\n (click)=\"onEndClick()\"\r\n ></button>\r\n <button\r\n fd-button\r\n [attr.disabled]=\"currentPage + 1 >= totalPage ? true : null\"\r\n fdType=\"transparent\"\r\n glyph=\"navigation-left-arrow\"\r\n (click)=\"onNextClick()\"\r\n ></button>\r\n <button\r\n fd-button\r\n [attr.disabled]=\"currentPage - 1 < 0 ? true : null\"\r\n fdType=\"transparent\"\r\n glyph=\"navigation-right-arrow\"\r\n (click)=\"onPreviousClick()\"\r\n ></button>\r\n <button\r\n fd-button\r\n [attr.disabled]=\"currentPage === 0 ? true : null\"\r\n fdType=\"transparent\"\r\n glyph=\"begin\"\r\n (click)=\"onFirstClick()\"\r\n ></button>\r\n </div>\r\n <div class=\"pagesize\">\r\n <label style=\"padding: 0 5px\"\r\n >{{ currentPage * pageSize }}-{{ currentPage * pageSize + pageSize }} \u0627\u0632\r\n {{ config.Setting.Data.Paging.TotalRows }}</label\r\n >\r\n <fd-select (valueChange)=\"onPageSizeChange($event)\" [value]=\"pageSize\">\r\n <fd-option [value]=\"24\">24</fd-option>\r\n <fd-option [value]=\"100\">100</fd-option>\r\n <fd-option [value]=\"100\">100</fd-option>\r\n </fd-select>\r\n\r\n <label style=\"padding: 0 5px\">{{ ItemsPerPage }}:</label>\r\n </div>\r\n</ng-container> -->\r\n<ng-container *ngIf=\"pagingSetting$ | async as pagingSetting\">\r\n <fd-pagination\r\n *ngIf=\"pagingSetting && pagingSetting.HasPaging\"\r\n [totalItems]=\"pagingSetting.TotalRows\"\r\n (pageChangeStart)=\"onPageChange($event)\"\r\n [itemsPerPage]=\"pagingSetting.PageSize\"\r\n [currentPage]=\"currentPage\"\r\n [displayTextTemplate]=\"showingItems\"\r\n ></fd-pagination>\r\n</ng-container>\r\n<ng-template #showingItems let-showing=\"showing\">\r\n <span dir=\"ltr\">\r\n {{ 'From' | bbbTranslate }} {{ showing.from }} {{ 'To' | bbbTranslate }} {{ showing.to }} {{ totalPageStr }}\r\n </span>\r\n</ng-template>\r\n", styles: [":host{align-items:center;display:flex;justify-content:center;flex-direction:row-reverse;width:100%}.icons{display:flex;justify-content:space-between;padding:0 15px}.icons ui5-button{color:var(--sapContent_LabelColor)}.icons ui5-button:hover{background:var(--sapBackgroundColor)!important;border-color:transparent!important}.pagesize{align-items:center;display:flex;justify-content:flex-start;flex-direction:row-reverse}\n"] }]
|
|
65
|
+
}], ctorParameters: function () { return [{ type: i1.UlvMainService }, { type: i1.BbbTranslatePipe }]; }, propDecorators: { pageChange: [{
|
|
66
|
+
type: Output
|
|
67
|
+
}], pageSizeChange: [{
|
|
68
|
+
type: Output
|
|
69
|
+
}], height: [{
|
|
70
|
+
type: HostBinding,
|
|
71
|
+
args: ['height.px']
|
|
72
|
+
}] } });
|
|
73
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWx2LXBhZ2luZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1zYXAtdWkvc3JjL2xpYi91bHYtcGFnaW5nL3Vsdi1wYWdpbmcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWx2LXBhZ2luZy91bHYtcGFnaW5nLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFOUcsT0FBTyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVoRCxPQUFPLEVBQW9CLGFBQWEsRUFBaUMsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7QUFRdEcsTUFBTSxPQUFPLGtCQUFtQixTQUFRLGFBQWE7SUFTakQsWUFBb0IsY0FBOEIsRUFBVSxPQUF5QjtRQUNqRixLQUFLLEVBQUUsQ0FBQztRQURRLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUFVLFlBQU8sR0FBUCxPQUFPLENBQWtCO1FBUjNFLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBQ3hDLG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUM1QixXQUFNLEdBQUcsRUFBRSxDQUFDO1FBR3RDLGdCQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQ2hCLGNBQVMsR0FBRyxDQUFDLENBQUM7SUFJZCxDQUFDO0lBRUQsUUFBUTtRQUNKLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsY0FBYyxDQUFDLElBQUksQ0FDekQsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsRUFDM0IsR0FBRyxDQUFDLENBQUMsYUFBbUMsRUFBRSxFQUFFO1lBQ3hDLElBQUksYUFBYSxLQUFLLElBQUksRUFBRTtnQkFDeEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7Z0JBQ2hCLE9BQU87YUFDVjtZQUNELElBQUksQ0FBQyxTQUFTLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUNsRCxNQUFNLFNBQVMsR0FBRyxhQUFhLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3JELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQ2pHLENBQUMsQ0FBQyxDQUNMLENBQUM7SUFDTixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsQ0FBQztRQUNkLE1BQU0sYUFBYSxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQztRQUNwRCxJQUFJLENBQUMsY0FBYyxDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBQ0QsVUFBVTtRQUNOLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUM7UUFDdEMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFDRCxZQUFZO1FBQ1IsSUFBSSxDQUFDLFdBQVcsR0FBRyxDQUFDLENBQUM7UUFDckIsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFDRCxXQUFXO1FBQ1AsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ25CLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBQ0QsZUFBZTtRQUNYLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNuQixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUNELFlBQVksQ0FBQyxVQUFrQjtRQUMzQixJQUFJLENBQUMsWUFBWSxDQUFDLFVBQVUsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUNsQyxJQUFJLENBQUMsV0FBVyxHQUFHLFVBQVUsQ0FBQztJQUNsQyxDQUFDO0lBQ08sWUFBWSxDQUFDLFVBQW1CO1FBQ3BDLFVBQVUsR0FBRyxPQUFPLFVBQVUsS0FBSyxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQztRQUMvRSxJQUFJLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNoRCxDQUFDOzsrR0F4RFEsa0JBQWtCO21HQUFsQixrQkFBa0IsNE1DWi9CLDZ0RUE0REE7MkZEaERhLGtCQUFrQjtrQkFOOUIsU0FBUzsrQkFDSSxnQkFBZ0IsbUJBR1QsdUJBQXVCLENBQUMsTUFBTTtvSUFHckMsVUFBVTtzQkFBbkIsTUFBTTtnQkFDRyxjQUFjO3NCQUF2QixNQUFNO2dCQUNtQixNQUFNO3NCQUEvQixXQUFXO3VCQUFDLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIEhvc3RCaW5kaW5nLCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IEJiYlRyYW5zbGF0ZVBpcGUsIEJhc2VDb21wb25lbnQsIFVsdk1haW5TZXJ2aWNlLCBQYWdpbmdTZXR0aW5nIH0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2JzdS11bHYtcGFnaW5nJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdWx2LXBhZ2luZy5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vdWx2LXBhZ2luZy5jb21wb25lbnQuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFVsdlBhZ2luZ0NvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIEBPdXRwdXQoKSBwYWdlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG4gICAgQE91dHB1dCgpIHBhZ2VTaXplQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG4gICAgQEhvc3RCaW5kaW5nKCdoZWlnaHQucHgnKSBoZWlnaHQgPSA2MDtcbiAgICBwYWdpbmdTZXR0aW5nJDogT2JzZXJ2YWJsZTxQYWdpbmdTZXR0aW5nIHwgbnVsbD47XG4gICAgY29udGV4dDogYW55O1xuICAgIGN1cnJlbnRQYWdlID0gMDtcbiAgICB0b3RhbFBhZ2UgPSAwO1xuICAgIHRvdGFsUGFnZVN0cjogc3RyaW5nO1xuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgdWx2TWFpblNlcnZpY2U6IFVsdk1haW5TZXJ2aWNlLCBwcml2YXRlIGJiYlBpcGU6IEJiYlRyYW5zbGF0ZVBpcGUpIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICAgICAgdGhpcy5wYWdpbmdTZXR0aW5nJCA9IHRoaXMudWx2TWFpblNlcnZpY2UucGFnaW5nU2V0dGluZyQucGlwZShcbiAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSxcbiAgICAgICAgICAgIHRhcCgocGFnaW5nU2V0dGluZzogUGFnaW5nU2V0dGluZyB8IG51bGwpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAocGFnaW5nU2V0dGluZyA9PT0gbnVsbCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmhlaWdodCA9IDA7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdGhpcy50b3RhbFBhZ2UgPSBOdW1iZXIocGFnaW5nU2V0dGluZy5Ub3RhbFBhZ2VzKTtcbiAgICAgICAgICAgICAgICBjb25zdCB0b3RhbFJvd3MgPSBwYWdpbmdTZXR0aW5nLlRvdGFsUm93cy50b1N0cmluZygpO1xuICAgICAgICAgICAgICAgIHRoaXMudG90YWxQYWdlU3RyID0gdGhpcy5iYmJQaXBlLnRyYW5zZm9ybSgnQ291bnRXaXRoUGFyZW50aGVzaXMnKS5yZXBsYWNlKCd7MH0nLCB0b3RhbFJvd3MpO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBvblBhZ2VTaXplQ2hhbmdlKGUpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWRWYWx1ZSA9IGUudGFyZ2V0LnNlbGVjdGVkT3B0aW9uLnZhbHVlO1xuICAgICAgICB0aGlzLnVsdk1haW5TZXJ2aWNlLnBhZ2VTaXplQ2hhbmdlZChzZWxlY3RlZFZhbHVlKTtcbiAgICB9XG4gICAgb25FbmRDbGljaygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jdXJyZW50UGFnZSA9IHRoaXMudG90YWxQYWdlIC0gMTtcbiAgICAgICAgdGhpcy5fcGFnZUNoYW5nZWQoKTtcbiAgICB9XG4gICAgb25GaXJzdENsaWNrKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmN1cnJlbnRQYWdlID0gMDtcbiAgICAgICAgdGhpcy5fcGFnZUNoYW5nZWQoKTtcbiAgICB9XG4gICAgb25OZXh0Q2xpY2soKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY3VycmVudFBhZ2UrKztcbiAgICAgICAgdGhpcy5fcGFnZUNoYW5nZWQoKTtcbiAgICB9XG4gICAgb25QcmV2aW91c0NsaWNrKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmN1cnJlbnRQYWdlLS07XG4gICAgICAgIHRoaXMuX3BhZ2VDaGFuZ2VkKCk7XG4gICAgfVxuICAgIG9uUGFnZUNoYW5nZShwYWdlTnVtYmVyOiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fcGFnZUNoYW5nZWQocGFnZU51bWJlciAtIDEpO1xuICAgICAgICB0aGlzLmN1cnJlbnRQYWdlID0gcGFnZU51bWJlcjtcbiAgICB9XG4gICAgcHJpdmF0ZSBfcGFnZUNoYW5nZWQocGFnZU51bWJlcj86IG51bWJlcik6IHZvaWQge1xuICAgICAgICBwYWdlTnVtYmVyID0gdHlwZW9mIHBhZ2VOdW1iZXIgPT09ICd1bmRlZmluZWQnID8gdGhpcy5jdXJyZW50UGFnZSA6IHBhZ2VOdW1iZXI7XG4gICAgICAgIHRoaXMudWx2TWFpblNlcnZpY2UucGFnZUNoYW5nZWQocGFnZU51bWJlcik7XG4gICAgfVxufVxuIiwiPCEtLSA8bmctY29udGFpbmVyICpuZ0lmPVwiY29uZmlnPy5TZXR0aW5nPy5EYXRhPy5QYWdpbmc/Lkhhc1BhZ2luZ1wiPlxyXG4gIDxkaXYgY2xhc3M9XCJpY29uc1wiPlxyXG4gICAgPGJ1dHRvblxyXG4gICAgICBmZC1idXR0b25cclxuICAgICAgW2F0dHIuZGlzYWJsZWRdPVwiY3VycmVudFBhZ2UgPT09IHRvdGFsUGFnZSAtIDEgPyB0cnVlIDogbnVsbFwiXHJcbiAgICAgIGZkVHlwZT1cInRyYW5zcGFyZW50XCJcclxuICAgICAgZ2x5cGg9XCJiZWdpblwiXHJcbiAgICAgIChjbGljayk9XCJvbkVuZENsaWNrKClcIlxyXG4gICAgPjwvYnV0dG9uPlxyXG4gICAgPGJ1dHRvblxyXG4gICAgICBmZC1idXR0b25cclxuICAgICAgW2F0dHIuZGlzYWJsZWRdPVwiY3VycmVudFBhZ2UgKyAxID49IHRvdGFsUGFnZSA/IHRydWUgOiBudWxsXCJcclxuICAgICAgZmRUeXBlPVwidHJhbnNwYXJlbnRcIlxyXG4gICAgICBnbHlwaD1cIm5hdmlnYXRpb24tbGVmdC1hcnJvd1wiXHJcbiAgICAgIChjbGljayk9XCJvbk5leHRDbGljaygpXCJcclxuICAgID48L2J1dHRvbj5cclxuICAgIDxidXR0b25cclxuICAgICAgZmQtYnV0dG9uXHJcbiAgICAgIFthdHRyLmRpc2FibGVkXT1cImN1cnJlbnRQYWdlIC0gMSA8IDAgPyB0cnVlIDogbnVsbFwiXHJcbiAgICAgIGZkVHlwZT1cInRyYW5zcGFyZW50XCJcclxuICAgICAgZ2x5cGg9XCJuYXZpZ2F0aW9uLXJpZ2h0LWFycm93XCJcclxuICAgICAgKGNsaWNrKT1cIm9uUHJldmlvdXNDbGljaygpXCJcclxuICAgID48L2J1dHRvbj5cclxuICAgIDxidXR0b25cclxuICAgICAgZmQtYnV0dG9uXHJcbiAgICAgIFthdHRyLmRpc2FibGVkXT1cImN1cnJlbnRQYWdlID09PSAwID8gdHJ1ZSA6IG51bGxcIlxyXG4gICAgICBmZFR5cGU9XCJ0cmFuc3BhcmVudFwiXHJcbiAgICAgIGdseXBoPVwiYmVnaW5cIlxyXG4gICAgICAoY2xpY2spPVwib25GaXJzdENsaWNrKClcIlxyXG4gICAgPjwvYnV0dG9uPlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgY2xhc3M9XCJwYWdlc2l6ZVwiPlxyXG4gICAgPGxhYmVsIHN0eWxlPVwicGFkZGluZzogMCA1cHhcIlxyXG4gICAgICA+e3sgY3VycmVudFBhZ2UgKiBwYWdlU2l6ZSB9fS17eyBjdXJyZW50UGFnZSAqIHBhZ2VTaXplICsgcGFnZVNpemUgfX0g2KfYslxyXG4gICAgICB7eyBjb25maWcuU2V0dGluZy5EYXRhLlBhZ2luZy5Ub3RhbFJvd3MgfX08L2xhYmVsXHJcbiAgICA+XHJcbiAgICA8ZmQtc2VsZWN0ICh2YWx1ZUNoYW5nZSk9XCJvblBhZ2VTaXplQ2hhbmdlKCRldmVudClcIiBbdmFsdWVdPVwicGFnZVNpemVcIj5cclxuICAgICAgPGZkLW9wdGlvbiBbdmFsdWVdPVwiMjRcIj4yNDwvZmQtb3B0aW9uPlxyXG4gICAgICA8ZmQtb3B0aW9uIFt2YWx1ZV09XCIxMDBcIj4xMDA8L2ZkLW9wdGlvbj5cclxuICAgICAgPGZkLW9wdGlvbiBbdmFsdWVdPVwiMTAwXCI+MTAwPC9mZC1vcHRpb24+XHJcbiAgICA8L2ZkLXNlbGVjdD5cclxuXHJcbiAgICA8bGFiZWwgc3R5bGU9XCJwYWRkaW5nOiAwIDVweFwiPnt7IEl0ZW1zUGVyUGFnZSB9fTo8L2xhYmVsPlxyXG4gIDwvZGl2PlxyXG48L25nLWNvbnRhaW5lcj4gLS0+XHJcbjxuZy1jb250YWluZXIgKm5nSWY9XCJwYWdpbmdTZXR0aW5nJCB8IGFzeW5jIGFzIHBhZ2luZ1NldHRpbmdcIj5cclxuICAgIDxmZC1wYWdpbmF0aW9uXHJcbiAgICAgICAgKm5nSWY9XCJwYWdpbmdTZXR0aW5nICYmIHBhZ2luZ1NldHRpbmcuSGFzUGFnaW5nXCJcclxuICAgICAgICBbdG90YWxJdGVtc109XCJwYWdpbmdTZXR0aW5nLlRvdGFsUm93c1wiXHJcbiAgICAgICAgKHBhZ2VDaGFuZ2VTdGFydCk9XCJvblBhZ2VDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgW2l0ZW1zUGVyUGFnZV09XCJwYWdpbmdTZXR0aW5nLlBhZ2VTaXplXCJcclxuICAgICAgICBbY3VycmVudFBhZ2VdPVwiY3VycmVudFBhZ2VcIlxyXG4gICAgICAgIFtkaXNwbGF5VGV4dFRlbXBsYXRlXT1cInNob3dpbmdJdGVtc1wiXHJcbiAgICA+PC9mZC1wYWdpbmF0aW9uPlxyXG48L25nLWNvbnRhaW5lcj5cclxuPG5nLXRlbXBsYXRlICNzaG93aW5nSXRlbXMgbGV0LXNob3dpbmc9XCJzaG93aW5nXCI+XHJcbiAgICA8c3BhbiBkaXI9XCJsdHJcIj5cclxuICAgICAgICB7eyAnRnJvbScgfCBiYmJUcmFuc2xhdGUgfX0ge3sgc2hvd2luZy5mcm9tIH19IHt7ICdUbycgfCBiYmJUcmFuc2xhdGUgfX0ge3sgc2hvd2luZy50byB9fSB7eyB0b3RhbFBhZ2VTdHIgfX1cclxuICAgIDwvc3Bhbj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuIl19
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, ElementRef, Input, TemplateRef, ViewChild, ViewEncapsulation } from '@angular/core';
|
|
2
|
+
import { BaseComponent, getDeviceIsMobile } 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 "@angular/common";
|
|
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
|
+
import * as i6 from "@fundamental-ngx/core/utils";
|
|
10
|
+
import * as i7 from "@fundamental-ngx/core/toolbar";
|
|
11
|
+
import * as i8 from "@fundamental-ngx/core/token";
|
|
12
|
+
import * as i9 from "../ui-ulv-main-ui/ui-ulv-main-ui.component";
|
|
13
|
+
export class UlvSelectionComponent extends BaseComponent {
|
|
14
|
+
constructor(dailogRef) {
|
|
15
|
+
super();
|
|
16
|
+
this.dailogRef = dailogRef;
|
|
17
|
+
this.visibility = false;
|
|
18
|
+
this.data = this.dailogRef.data;
|
|
19
|
+
}
|
|
20
|
+
ngAfterViewInit() {
|
|
21
|
+
this.isMobile = getDeviceIsMobile();
|
|
22
|
+
}
|
|
23
|
+
getCaption() {
|
|
24
|
+
return this.ulvMainUi?.Setting?.Extra?.Report?.Caption || '';
|
|
25
|
+
}
|
|
26
|
+
onOk() { }
|
|
27
|
+
onClear() { }
|
|
28
|
+
onDismiss() {
|
|
29
|
+
this.dailogRef.close();
|
|
30
|
+
}
|
|
31
|
+
_trackBySelectedFn(_index, item) {
|
|
32
|
+
return item.Id;
|
|
33
|
+
}
|
|
34
|
+
onRemoveSelected() { }
|
|
35
|
+
beforeClose() {
|
|
36
|
+
this.onParams.beforeclose.bind(this.context)();
|
|
37
|
+
}
|
|
38
|
+
onBeforeClose() {
|
|
39
|
+
this.beforeClose();
|
|
40
|
+
}
|
|
41
|
+
onClose() {
|
|
42
|
+
this.beforeClose();
|
|
43
|
+
}
|
|
44
|
+
onBeforeOpen() {
|
|
45
|
+
this.visibility = this.visibility ? true : false;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
UlvSelectionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UlvSelectionComponent, deps: [{ token: i1.DialogRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
49
|
+
UlvSelectionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: UlvSelectionComponent, selector: "bsu-ulv-selection", inputs: { context: "context", config: "config", body: "body" }, viewQueries: [{ propertyName: "dialogTemplateRef", first: true, predicate: ["dialogRef"], descendants: true, read: TemplateRef }, { propertyName: "contentRef", first: true, predicate: ["content"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #container>\r\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\r\n <fd-dialog-header>\r\n <h3 fd-title>{{ data.title }}</h3>\r\n </fd-dialog-header>\r\n\r\n <fd-dialog-body>\r\n <ng-container *ngIf=\"data.ulvUi as ulvUi\">\r\n <bsu-ui-ulv-main-ui [context]=\"ulvUi\"></bsu-ui-ulv-main-ui>\r\n </ng-container>\r\n </fd-dialog-body>\r\n\r\n <fd-dialog-footer>\r\n <ng-template fdTemplate=\"footer\">\r\n <div\r\n class=\"ulv-selection-form-dialog__row ulv-selection-form-dialog__selection-row\"\r\n aria-label=\"Selected and condition items\"\r\n i18n-aria-label=\"@@platformI18nValueHelpDialog.SelectionBarLabel\"\r\n >\r\n <h5 fd-title class=\"selected-and-condition-title\">\r\n <ng-container>\r\n <ng-container i18n=\"@@platformI18nValueHelpDialog.SelectedAndConditionLabel\"\r\n >Selected Items and Conditions\r\n </ng-container>\r\n ({{ data.selectedItems?.length || 0 }})\r\n </ng-container>\r\n </h5>\r\n\r\n <div class=\"ulv-selection-form-dialog__tokens-wrapper\">\r\n <div class=\"ulv-selection-form-dialog__tokens\">\r\n <fd-toolbar [shouldOverflow]=\"true\" *ngIf=\"data.selectedItems\">\r\n <!-- Selected items -->\r\n <fd-token\r\n fd-toolbar-item\r\n fdOverflowPriority=\"high\"\r\n class=\"fdp-value-help-dialog__selection-token\"\r\n (onCloseClick)=\"onRemoveSelected()\"\r\n *ngFor=\"\r\n let item of data.selectedItems;\r\n index as selectedIndex;\r\n trackBy: _trackBySelectedFn\r\n \"\r\n >{{ item.$Caption }}\r\n </fd-token>\r\n </fd-toolbar>\r\n </div>\r\n <button\r\n class=\"ulv-selection-form-dialog__tokens-clear\"\r\n fd-button\r\n fdType=\"transparent\"\r\n glyph=\"decline\"\r\n i18n-aria-label=\"@@platformI18nValueHelpDialog.ClearSelectedAriaLabel\"\r\n aria-label=\"clear selected items\"\r\n (click)=\"onClear()\"\r\n ></button>\r\n </div>\r\n </div>\r\n <div class=\"ulv-selection-form-dialog__actions-row\">\r\n <button\r\n fd-button\r\n data-succes\r\n i18n-label=\"@@platformI18nValueHelpDialog.SuccessButton\"\r\n label=\"OK\"\r\n fdType=\"emphasized\"\r\n (click)=\"onOk()\"\r\n ></button>\r\n <button\r\n fd-button\r\n data-dismiss-dialog\r\n fd-dialog-decisive-button\r\n i18n-label=\"@@platformI18nValueHelpDialog.CancelButton\"\r\n label=\"Cancel\"\r\n fdType=\"transparent\"\r\n (click)=\"onDismiss()\"\r\n ></button>\r\n </div>\r\n </ng-template>\r\n </fd-dialog-footer>\r\n </fd-dialog>\r\n</ng-template>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { 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: "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: "directive", type: i6.TemplateDirective, selector: "[fdTemplate]", inputs: ["fdTemplate"] }, { kind: "component", type: i7.ToolbarComponent, selector: "fd-toolbar", inputs: ["class", "shouldOverflow", "fdType", "hasTitle", "title", "active", "clearBorder", "forceOverflow", "tabindex"] }, { kind: "directive", type: i7.ToolbarItemDirective, selector: "[fd-toolbar-item]" }, { kind: "directive", type: i7.ToolbarOverflowPriorityDirective, selector: "[fdOverflowPriority]", inputs: ["fdOverflowPriority"] }, { kind: "component", type: i8.TokenComponent, selector: "fd-token", inputs: ["disabled", "selected", "readOnly", "deleteButtonLabel", "ariaRoleDescription"], outputs: ["onCloseClick", "onRemove", "onTokenClick", "onTokenKeydown"] }, { kind: "component", type: i9.UiUlvMainUiComponent, selector: "bsu-ui-ulv-main-ui", inputs: ["context", "isReportPage", "inDialog", "layoutInfo", "fullscreen"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
50
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UlvSelectionComponent, decorators: [{
|
|
51
|
+
type: Component,
|
|
52
|
+
args: [{ selector: 'bsu-ulv-selection', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #container>\r\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\r\n <fd-dialog-header>\r\n <h3 fd-title>{{ data.title }}</h3>\r\n </fd-dialog-header>\r\n\r\n <fd-dialog-body>\r\n <ng-container *ngIf=\"data.ulvUi as ulvUi\">\r\n <bsu-ui-ulv-main-ui [context]=\"ulvUi\"></bsu-ui-ulv-main-ui>\r\n </ng-container>\r\n </fd-dialog-body>\r\n\r\n <fd-dialog-footer>\r\n <ng-template fdTemplate=\"footer\">\r\n <div\r\n class=\"ulv-selection-form-dialog__row ulv-selection-form-dialog__selection-row\"\r\n aria-label=\"Selected and condition items\"\r\n i18n-aria-label=\"@@platformI18nValueHelpDialog.SelectionBarLabel\"\r\n >\r\n <h5 fd-title class=\"selected-and-condition-title\">\r\n <ng-container>\r\n <ng-container i18n=\"@@platformI18nValueHelpDialog.SelectedAndConditionLabel\"\r\n >Selected Items and Conditions\r\n </ng-container>\r\n ({{ data.selectedItems?.length || 0 }})\r\n </ng-container>\r\n </h5>\r\n\r\n <div class=\"ulv-selection-form-dialog__tokens-wrapper\">\r\n <div class=\"ulv-selection-form-dialog__tokens\">\r\n <fd-toolbar [shouldOverflow]=\"true\" *ngIf=\"data.selectedItems\">\r\n <!-- Selected items -->\r\n <fd-token\r\n fd-toolbar-item\r\n fdOverflowPriority=\"high\"\r\n class=\"fdp-value-help-dialog__selection-token\"\r\n (onCloseClick)=\"onRemoveSelected()\"\r\n *ngFor=\"\r\n let item of data.selectedItems;\r\n index as selectedIndex;\r\n trackBy: _trackBySelectedFn\r\n \"\r\n >{{ item.$Caption }}\r\n </fd-token>\r\n </fd-toolbar>\r\n </div>\r\n <button\r\n class=\"ulv-selection-form-dialog__tokens-clear\"\r\n fd-button\r\n fdType=\"transparent\"\r\n glyph=\"decline\"\r\n i18n-aria-label=\"@@platformI18nValueHelpDialog.ClearSelectedAriaLabel\"\r\n aria-label=\"clear selected items\"\r\n (click)=\"onClear()\"\r\n ></button>\r\n </div>\r\n </div>\r\n <div class=\"ulv-selection-form-dialog__actions-row\">\r\n <button\r\n fd-button\r\n data-succes\r\n i18n-label=\"@@platformI18nValueHelpDialog.SuccessButton\"\r\n label=\"OK\"\r\n fdType=\"emphasized\"\r\n (click)=\"onOk()\"\r\n ></button>\r\n <button\r\n fd-button\r\n data-dismiss-dialog\r\n fd-dialog-decisive-button\r\n i18n-label=\"@@platformI18nValueHelpDialog.CancelButton\"\r\n label=\"Cancel\"\r\n fdType=\"transparent\"\r\n (click)=\"onDismiss()\"\r\n ></button>\r\n </div>\r\n </ng-template>\r\n </fd-dialog-footer>\r\n </fd-dialog>\r\n</ng-template>\r\n" }]
|
|
53
|
+
}], ctorParameters: function () { return [{ type: i1.DialogRef }]; }, propDecorators: { context: [{
|
|
54
|
+
type: Input
|
|
55
|
+
}], config: [{
|
|
56
|
+
type: Input
|
|
57
|
+
}], body: [{
|
|
58
|
+
type: Input
|
|
59
|
+
}], dialogTemplateRef: [{
|
|
60
|
+
type: ViewChild,
|
|
61
|
+
args: ['dialogRef', { read: TemplateRef }]
|
|
62
|
+
}], contentRef: [{
|
|
63
|
+
type: ViewChild,
|
|
64
|
+
args: ['content', { read: ElementRef }]
|
|
65
|
+
}] } });
|
|
66
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWx2LXNlbGVjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1zYXAtdWkvc3JjL2xpYi91bHYtc2VsZWN0aW9uL3Vsdi1zZWxlY3Rpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWx2LXNlbGVjdGlvbi91bHYtc2VsZWN0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixLQUFLLEVBQ0wsV0FBVyxFQUNYLFNBQVMsRUFDVCxpQkFBaUIsRUFDcEIsTUFBTSxlQUFlLENBQUM7QUFHdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxpQkFBaUIsRUFBdUIsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7Ozs7Ozs7QUFTN0YsTUFBTSxPQUFPLHFCQUFzQixTQUFRLGFBQWE7SUE0QnBELFlBQW1CLFNBQW9CO1FBQ25DLEtBQUssRUFBRSxDQUFDO1FBRE8sY0FBUyxHQUFULFNBQVMsQ0FBVztRQVp2QyxlQUFVLEdBQUcsS0FBSyxDQUFDO1FBY2YsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQztJQUNwQyxDQUFDO0lBRUQsZUFBZTtRQUNYLElBQUksQ0FBQyxRQUFRLEdBQUcsaUJBQWlCLEVBQUUsQ0FBQztJQUN4QyxDQUFDO0lBRUQsVUFBVTtRQUNOLE9BQU8sSUFBSSxDQUFDLFNBQVMsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxPQUFPLElBQUksRUFBRSxDQUFDO0lBQ2pFLENBQUM7SUFFRCxJQUFJLEtBQVUsQ0FBQztJQUVmLE9BQU8sS0FBVSxDQUFDO0lBRWxCLFNBQVM7UUFDTCxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxNQUFjLEVBQUUsSUFBeUI7UUFDeEQsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFFRCxnQkFBZ0IsS0FBVSxDQUFDO0lBRTNCLFdBQVc7UUFDUCxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7SUFDbkQsQ0FBQztJQUVELGFBQWE7UUFDVCxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVELE9BQU87UUFDSCxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVELFlBQVk7UUFDUixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQ3JELENBQUM7O2tIQXJFUSxxQkFBcUI7c0dBQXJCLHFCQUFxQixvTkFXRSxXQUFXLGdHQUdiLFVBQVUsb0RDbkM1QyxtL0hBZ0ZBOzJGRDNEYSxxQkFBcUI7a0JBUGpDLFNBQVM7K0JBQ0ksbUJBQW1CLGlCQUdkLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU07Z0dBR3RDLE9BQU87c0JBQWYsS0FBSztnQkFHRyxNQUFNO3NCQUFkLEtBQUs7Z0JBS0csSUFBSTtzQkFBWixLQUFLO2dCQUdOLGlCQUFpQjtzQkFEaEIsU0FBUzt1QkFBQyxXQUFXLEVBQUUsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFO2dCQUk3QyxVQUFVO3NCQURULFNBQVM7dUJBQUMsU0FBUyxFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBJbnB1dCxcbiAgICBUZW1wbGF0ZVJlZixcbiAgICBWaWV3Q2hpbGQsXG4gICAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEaWFsb2dSZWYgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUnO1xuXG5pbXBvcnQgeyBCYXNlQ29tcG9uZW50LCBnZXREZXZpY2VJc01vYmlsZSwgTWV0YW9iamVjdERhdGFNb2RlbCB9IGZyb20gJ2JhcnNhLW5vdmluLXJheS1jb3JlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdic3UtdWx2LXNlbGVjdGlvbicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3Vsdi1zZWxlY3Rpb24uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3Vsdi1zZWxlY3Rpb24uY29tcG9uZW50LnNjc3MnXSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFVsdlNlbGVjdGlvbkNvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgICBASW5wdXQoKSBjb250ZXh0OiB7XG4gICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICB9O1xuICAgIEBJbnB1dCgpIGNvbmZpZzoge1xuICAgICAgICBfaWNvbjogbnVsbDtcbiAgICAgICAgU2hvd1NlY29uZFBhbmVsOiBzdHJpbmc7XG4gICAgICAgIEZvcm1UaXRsZTogc3RyaW5nO1xuICAgIH07XG4gICAgQElucHV0KCkgYm9keTtcblxuICAgIEBWaWV3Q2hpbGQoJ2RpYWxvZ1JlZicsIHsgcmVhZDogVGVtcGxhdGVSZWYgfSlcbiAgICBkaWFsb2dUZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PjtcblxuICAgIEBWaWV3Q2hpbGQoJ2NvbnRlbnQnLCB7IHJlYWQ6IEVsZW1lbnRSZWYgfSlcbiAgICBjb250ZW50UmVmOiBFbGVtZW50UmVmO1xuICAgIHZpc2liaWxpdHkgPSBmYWxzZTtcbiAgICBvblBhcmFtczoge1xuICAgICAgICBzY29wZTogYW55O1xuICAgICAgICBiZWZvcmVjbG9zZTogKCkgPT4gdm9pZDtcbiAgICAgICAgQWRkUmVtb3ZlQnV0dG9uQ2xpY2s6ICgpID0+IHZvaWQ7XG4gICAgfTtcbiAgICBoYXNVbHY6IGJvb2xlYW47XG4gICAgaXNNb2JpbGU6IGFueTtcbiAgICB1bHZNYWluVWk6IGFueTtcbiAgICBjYXB0aW9uOiBhbnk7XG4gICAgZGF0YTogYW55O1xuXG4gICAgY29uc3RydWN0b3IocHVibGljIGRhaWxvZ1JlZjogRGlhbG9nUmVmKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgICAgIHRoaXMuZGF0YSA9IHRoaXMuZGFpbG9nUmVmLmRhdGE7XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmlzTW9iaWxlID0gZ2V0RGV2aWNlSXNNb2JpbGUoKTtcbiAgICB9XG5cbiAgICBnZXRDYXB0aW9uKCk6IHZvaWQge1xuICAgICAgICByZXR1cm4gdGhpcy51bHZNYWluVWk/LlNldHRpbmc/LkV4dHJhPy5SZXBvcnQ/LkNhcHRpb24gfHwgJyc7XG4gICAgfVxuXG4gICAgb25PaygpOiB2b2lkIHt9XG5cbiAgICBvbkNsZWFyKCk6IHZvaWQge31cblxuICAgIG9uRGlzbWlzcygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kYWlsb2dSZWYuY2xvc2UoKTtcbiAgICB9XG5cbiAgICBfdHJhY2tCeVNlbGVjdGVkRm4oX2luZGV4OiBudW1iZXIsIGl0ZW06IE1ldGFvYmplY3REYXRhTW9kZWwpOiBudW1iZXIgfCBzdHJpbmcge1xuICAgICAgICByZXR1cm4gaXRlbS5JZDtcbiAgICB9XG5cbiAgICBvblJlbW92ZVNlbGVjdGVkKCk6IHZvaWQge31cblxuICAgIGJlZm9yZUNsb3NlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLm9uUGFyYW1zLmJlZm9yZWNsb3NlLmJpbmQodGhpcy5jb250ZXh0KSgpO1xuICAgIH1cblxuICAgIG9uQmVmb3JlQ2xvc2UoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuYmVmb3JlQ2xvc2UoKTtcbiAgICB9XG5cbiAgICBvbkNsb3NlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmJlZm9yZUNsb3NlKCk7XG4gICAgfVxuXG4gICAgb25CZWZvcmVPcGVuKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnZpc2liaWxpdHkgPSB0aGlzLnZpc2liaWxpdHkgPyB0cnVlIDogZmFsc2U7XG4gICAgfVxufVxuIiwiPG5nLXRlbXBsYXRlIGxldC1kaWFsb2cgbGV0LWRpYWxvZ0NvbmZpZz1cImRpYWxvZ0NvbmZpZ1wiICNjb250YWluZXI+XHJcbiAgICA8ZmQtZGlhbG9nIFtkaWFsb2dDb25maWddPVwiZGlhbG9nQ29uZmlnXCIgW2RpYWxvZ1JlZl09XCJkaWFsb2dcIj5cclxuICAgICAgICA8ZmQtZGlhbG9nLWhlYWRlcj5cclxuICAgICAgICAgICAgPGgzIGZkLXRpdGxlPnt7IGRhdGEudGl0bGUgfX08L2gzPlxyXG4gICAgICAgIDwvZmQtZGlhbG9nLWhlYWRlcj5cclxuXHJcbiAgICAgICAgPGZkLWRpYWxvZy1ib2R5PlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZGF0YS51bHZVaSBhcyB1bHZVaVwiPlxyXG4gICAgICAgICAgICAgICAgPGJzdS11aS11bHYtbWFpbi11aSBbY29udGV4dF09XCJ1bHZVaVwiPjwvYnN1LXVpLXVsdi1tYWluLXVpPlxyXG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8L2ZkLWRpYWxvZy1ib2R5PlxyXG5cclxuICAgICAgICA8ZmQtZGlhbG9nLWZvb3Rlcj5cclxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlIGZkVGVtcGxhdGU9XCJmb290ZXJcIj5cclxuICAgICAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInVsdi1zZWxlY3Rpb24tZm9ybS1kaWFsb2dfX3JvdyB1bHYtc2VsZWN0aW9uLWZvcm0tZGlhbG9nX19zZWxlY3Rpb24tcm93XCJcclxuICAgICAgICAgICAgICAgICAgICBhcmlhLWxhYmVsPVwiU2VsZWN0ZWQgYW5kIGNvbmRpdGlvbiBpdGVtc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgaTE4bi1hcmlhLWxhYmVsPVwiQEBwbGF0Zm9ybUkxOG5WYWx1ZUhlbHBEaWFsb2cuU2VsZWN0aW9uQmFyTGFiZWxcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgIDxoNSBmZC10aXRsZSBjbGFzcz1cInNlbGVjdGVkLWFuZC1jb25kaXRpb24tdGl0bGVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgaTE4bj1cIkBAcGxhdGZvcm1JMThuVmFsdWVIZWxwRGlhbG9nLlNlbGVjdGVkQW5kQ29uZGl0aW9uTGFiZWxcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5TZWxlY3RlZCBJdGVtcyBhbmQgQ29uZGl0aW9uc1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoe3sgZGF0YS5zZWxlY3RlZEl0ZW1zPy5sZW5ndGggfHwgMCB9fSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9oNT5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInVsdi1zZWxlY3Rpb24tZm9ybS1kaWFsb2dfX3Rva2Vucy13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ1bHYtc2VsZWN0aW9uLWZvcm0tZGlhbG9nX190b2tlbnNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZC10b29sYmFyIFtzaG91bGRPdmVyZmxvd109XCJ0cnVlXCIgKm5nSWY9XCJkYXRhLnNlbGVjdGVkSXRlbXNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIFNlbGVjdGVkIGl0ZW1zIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZC10b2tlblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZC10b29sYmFyLWl0ZW1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmRPdmVyZmxvd1ByaW9yaXR5PVwiaGlnaFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZmRwLXZhbHVlLWhlbHAtZGlhbG9nX19zZWxlY3Rpb24tdG9rZW5cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAob25DbG9zZUNsaWNrKT1cIm9uUmVtb3ZlU2VsZWN0ZWQoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0Zvcj1cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGl0ZW0gb2YgZGF0YS5zZWxlY3RlZEl0ZW1zO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5kZXggYXMgc2VsZWN0ZWRJbmRleDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYWNrQnk6IF90cmFja0J5U2VsZWN0ZWRGblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+e3sgaXRlbS4kQ2FwdGlvbiB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZmQtdG9rZW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2ZkLXRvb2xiYXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInVsdi1zZWxlY3Rpb24tZm9ybS1kaWFsb2dfX3Rva2Vucy1jbGVhclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZC1idXR0b25cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZkVHlwZT1cInRyYW5zcGFyZW50XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdseXBoPVwiZGVjbGluZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpMThuLWFyaWEtbGFiZWw9XCJAQHBsYXRmb3JtSTE4blZhbHVlSGVscERpYWxvZy5DbGVhclNlbGVjdGVkQXJpYUxhYmVsXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyaWEtbGFiZWw9XCJjbGVhciBzZWxlY3RlZCBpdGVtc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25DbGVhcigpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgPjwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidWx2LXNlbGVjdGlvbi1mb3JtLWRpYWxvZ19fYWN0aW9ucy1yb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZkLWJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXN1Y2Nlc1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpMThuLWxhYmVsPVwiQEBwbGF0Zm9ybUkxOG5WYWx1ZUhlbHBEaWFsb2cuU3VjY2Vzc0J1dHRvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsPVwiT0tcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmZFR5cGU9XCJlbXBoYXNpemVkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uT2soKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgPjwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b25cclxuICAgICAgICAgICAgICAgICAgICAgICAgZmQtYnV0dG9uXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtZGlzbWlzcy1kaWFsb2dcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmQtZGlhbG9nLWRlY2lzaXZlLWJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBpMThuLWxhYmVsPVwiQEBwbGF0Zm9ybUkxOG5WYWx1ZUhlbHBEaWFsb2cuQ2FuY2VsQnV0dG9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw9XCJDYW5jZWxcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmZFR5cGU9XCJ0cmFuc3BhcmVudFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvbkRpc21pc3MoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgPjwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgPC9mZC1kaWFsb2ctZm9vdGVyPlxyXG4gICAgPC9mZC1kaWFsb2c+XHJcbjwvbmctdGVtcGxhdGU+XHJcbiJdfQ==
|