barsa-sap-ui 2.2.2 → 2.2.4
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/esm2022/barsa-sap-ui.mjs +5 -0
- package/esm2022/lib/apply-conditional-formmatings.directive.mjs +90 -0
- package/esm2022/lib/avatar-size.pipe.mjs +41 -0
- package/esm2022/lib/barsa-answer-card/barsa-answer-card.component.mjs +41 -0
- package/esm2022/lib/barsa-asp-viewer/barsa-asp-viewer.component.mjs +145 -0
- package/esm2022/lib/barsa-bar-download-file/barsa-bar-download-file.component.mjs +23 -0
- package/esm2022/lib/barsa-bar-panel/barsa-bar-panel.component.mjs +23 -0
- package/esm2022/lib/barsa-base-panel/barsa-base-layout-panel.component.mjs +29 -0
- package/esm2022/lib/barsa-breadcrumbs/barsa-breadcrumbs.component.mjs +24 -0
- package/esm2022/lib/barsa-card-layout-panel/barsa-card-layout-panel.component.mjs +24 -0
- package/esm2022/lib/barsa-card-row-payam/barsa-card-row-payam.component.mjs +31 -0
- package/esm2022/lib/barsa-cartable-form/barsa-cartable-form.component.mjs +41 -0
- package/esm2022/lib/barsa-cartable-template/barsa-cartable-template.component.mjs +24 -0
- package/esm2022/lib/barsa-chat/barsa-chat.component.mjs +242 -0
- package/esm2022/lib/barsa-chat/chat.model.mjs +8 -0
- package/esm2022/lib/barsa-chat-content/barsa-chat-content.component.mjs +13 -0
- package/esm2022/lib/barsa-chat-content-toolbar/barsa-chat-content-toolbar.component.mjs +22 -0
- package/esm2022/lib/barsa-chat-list/barsa-chat-list.component.mjs +66 -0
- package/esm2022/lib/barsa-chat-message/barsa-chat-message.component.mjs +78 -0
- package/esm2022/lib/barsa-chat-thread/barsa-chat-thread.component.mjs +22 -0
- package/esm2022/lib/barsa-chat-threads-list/barsa-chat-threads-list.component.mjs +13 -0
- package/esm2022/lib/barsa-chat-threads-list-toolbar/barsa-chat-threads-list-toolbar.component.mjs +15 -0
- package/esm2022/lib/barsa-chip/barsa-chip.component.mjs +72 -0
- package/esm2022/lib/barsa-column-indicator/barsa-column-indicator.component.mjs +23 -0
- package/esm2022/lib/barsa-column-rownumber/barsa-column-rownumber.component.mjs +14 -0
- package/esm2022/lib/barsa-custom-inline-edit/barsa-custom-inline-edit.component.mjs +14 -0
- package/esm2022/lib/barsa-custom-inline-edit-row/barsa-custom-inline-edit-row.component.mjs +26 -0
- package/esm2022/lib/barsa-date-time-picker/barsa-date-time-picker.component.mjs +71 -0
- package/esm2022/lib/barsa-dynamic-field/barsa-dynamic-field.component.mjs +40 -0
- package/esm2022/lib/barsa-enum-menu-button/barsa-enum-menu-button.component.mjs +61 -0
- package/esm2022/lib/barsa-field-key-value/barsa-field-key-value.component.mjs +45 -0
- package/esm2022/lib/barsa-form-side-content/barsa-form-side-content.component.mjs +58 -0
- package/esm2022/lib/barsa-grid-layout-panel/barsa-grid-layout-panel.component.mjs +27 -0
- package/esm2022/lib/barsa-group-cartable/barsa-cartable-group.component.mjs +94 -0
- package/esm2022/lib/barsa-horizontal-flex-panel/barsa-horizontal-flex-panel.component.mjs +22 -0
- package/esm2022/lib/barsa-linkable-items-panel/barsa-linkable-items-panel.component.mjs +37 -0
- package/esm2022/lib/barsa-list-file-linear/barsa-list-file-linear.component.mjs +41 -0
- package/esm2022/lib/barsa-list-file-linear-gmail/barsa-list-file-linear-gmail.component.mjs +29 -0
- package/esm2022/lib/barsa-list-layout-panel/barsa-list-layout-panel.component.mjs +23 -0
- package/esm2022/lib/barsa-modal/barsa-modal.component.mjs +43 -0
- package/esm2022/lib/barsa-monaco-editor/barsa-monaco-editor.component.mjs +83 -0
- package/esm2022/lib/barsa-network-offline/barsa-network-offline.component.mjs +57 -0
- package/esm2022/lib/barsa-pishnamayesh-payam/barsa-pishnamayesh-payam.component.mjs +159 -0
- package/esm2022/lib/barsa-question-answer-comments-section/barsa-question-answer-comments-section.component.mjs +17 -0
- package/esm2022/lib/barsa-question-answer-content-actions-section/barsa-question-answer-content-actions-section.component.mjs +30 -0
- package/esm2022/lib/barsa-question-answer-creator-time-section/barsa-question-answer-creator-time-section.component.mjs +14 -0
- package/esm2022/lib/barsa-question-answer-form/barsa-question-answer-form.component.mjs +34 -0
- package/esm2022/lib/barsa-question-answer-form-add-comment/barsa-question-answer-form-add-comment.component.mjs +46 -0
- package/esm2022/lib/barsa-question-answer-vote-section/barsa-question-answer-vote-section.component.mjs +79 -0
- package/esm2022/lib/barsa-question-post/barsa-question-post.component.mjs +30 -0
- package/esm2022/lib/barsa-report-card-flex-view/barsa-report-card-flex-view.component.mjs +31 -0
- package/esm2022/lib/barsa-report-checkbox-switch-button/barsa-report-checkbox-switch-button.component.mjs +28 -0
- package/esm2022/lib/barsa-report-one-of-list/barsa-report-one-of-list.component.mjs +102 -0
- package/esm2022/lib/barsa-row-inline-actionlist/barsa-row-inline-actionlist.component.mjs +26 -0
- package/esm2022/lib/barsa-sap-ui-routing.module.mjs +18 -0
- package/esm2022/lib/barsa-sap-ui.module.mjs +377 -0
- package/esm2022/lib/barsa-search-form/barsa-search-form.component.mjs +29 -0
- package/esm2022/lib/barsa-simple-form/barsa-simple-form.component.mjs +170 -0
- package/esm2022/lib/barsa-tab-route-manager/barsa-tab-route-manager.component.mjs +18 -0
- package/esm2022/lib/barsa-table-column/barsa-table-column.component.mjs +29 -0
- package/esm2022/lib/barsa-table-header/barsa-table-header.component.mjs +222 -0
- package/esm2022/lib/barsa-table-row/barsa-table-row.component.mjs +87 -0
- package/esm2022/lib/barsa-tag-categories/barsa-tag-categories.component.mjs +60 -0
- package/esm2022/lib/barsa-tag-chip/barsa-tag-chip.component.mjs +26 -0
- package/esm2022/lib/barsa-tags-category-row/barsa-tags-category-row.component.mjs +23 -0
- package/esm2022/lib/barsa-text-ellipsis/barsa-text-ellipsis.component.mjs +37 -0
- package/esm2022/lib/barsa-tinyemce/barsa-tinyemce.component.mjs +418 -0
- package/esm2022/lib/barsa-toolbaritem-search/barsa-toolbaritem-search.component.mjs +36 -0
- package/esm2022/lib/barsa-tree-item/barsa-tree-item.component.mjs +153 -0
- package/esm2022/lib/barsa-tree-item/node-has-one-depth-level.pipe.mjs +20 -0
- package/esm2022/lib/barsa-ulv-main/barsa-ulv-main.component.mjs +216 -0
- package/esm2022/lib/blob-viewer/blob-viewer.component.mjs +74 -0
- package/esm2022/lib/breadcrumb/breadcrumb.component.mjs +50 -0
- package/esm2022/lib/captcha-field/captcha-field.component.mjs +28 -0
- package/esm2022/lib/card-item/card-item.component.mjs +74 -0
- package/esm2022/lib/card-view-content/card-view-content.component.mjs +46 -0
- package/esm2022/lib/col-renderer.directive.mjs +47 -0
- package/esm2022/lib/column-matrix-renderer/column-matrix-renderer.component.mjs +56 -0
- package/esm2022/lib/column-matrix-renderer/matrix-value.pipe.mjs +61 -0
- package/esm2022/lib/column-renderer/column-renderer.component.mjs +97 -0
- package/esm2022/lib/constants.mjs +450 -0
- package/esm2022/lib/custom-date-time/custom-date-time.component.mjs +41 -0
- package/esm2022/lib/device-info-field-base.mjs +24 -0
- package/esm2022/lib/dialog-handler.directive.mjs +29 -0
- package/esm2022/lib/download-files.directive.mjs +34 -0
- package/esm2022/lib/dynamic-page-size.pipe.mjs +27 -0
- package/esm2022/lib/file-in-dialog/file-in-dialog.component.mjs +44 -0
- package/esm2022/lib/file-viewer/file-viewer.component.mjs +47 -0
- package/esm2022/lib/file-viewer-content/file-viewer-content.component.mjs +71 -0
- package/esm2022/lib/file-viewer-popover/file-viewer-popover.component.mjs +37 -0
- package/esm2022/lib/form-dialog/form-dialog.component.mjs +171 -0
- package/esm2022/lib/form-dialog-less/form-dialog-less.component.mjs +50 -0
- package/esm2022/lib/form-toolbar/form-toolbar.component.mjs +62 -0
- package/esm2022/lib/form-toolbar-button/form-toolbar-button.component.mjs +45 -0
- package/esm2022/lib/form-wizard/form-wizard.component.mjs +21 -0
- package/esm2022/lib/fullscreen-dialog.directive.mjs +60 -0
- package/esm2022/lib/fullscreen-files.directive.mjs +43 -0
- package/esm2022/lib/fundamental-dynamic-form/fundamental-dynamic-form.component.mjs +217 -0
- package/esm2022/lib/gantt-dhtml-chart-view/gantt-dhtml-chart-view.component.mjs +215 -0
- package/esm2022/lib/global-search/global-search.component.mjs +27 -0
- package/esm2022/lib/global-search-module/global-search-module.component.mjs +29 -0
- package/esm2022/lib/global-search-panel/global-search-panel.component.mjs +25 -0
- package/esm2022/lib/header-avatar/header-avatar.component.mjs +18 -0
- package/esm2022/lib/htree-create-new/htree-create-new.component.mjs +48 -0
- package/esm2022/lib/hyperlink/hyperlink.component.mjs +23 -0
- package/esm2022/lib/index.mjs +549 -0
- package/esm2022/lib/inline-save-and-cancel/inline-save-and-cancel.component.mjs +32 -0
- package/esm2022/lib/layout-actions/layout-actions.component.mjs +70 -0
- package/esm2022/lib/layout-control/layout-control.component.mjs +302 -0
- package/esm2022/lib/layout-wizard/layout-wizard.component.mjs +180 -0
- package/esm2022/lib/list-item/list-item.component.mjs +34 -0
- package/esm2022/lib/ly-empty-space/ly-empty-space.component.mjs +42 -0
- package/esm2022/lib/ly-horizontal-layout/ly-horizontal-layout.component.mjs +82 -0
- package/esm2022/lib/ly-label/ly-label.component.mjs +37 -0
- package/esm2022/lib/ly-layout-container/ly-layout-container.component.mjs +83 -0
- package/esm2022/lib/ly-layout-container-of-root/ly-layout-container-of-root.component.mjs +17 -0
- package/esm2022/lib/ly-layout-field-label/ly-layout-field-label.component.mjs +24 -0
- package/esm2022/lib/ly-layout-panel/ly-layout-panel.component.mjs +83 -0
- package/esm2022/lib/ly-line/ly-line.component.mjs +56 -0
- package/esm2022/lib/ly-simple-label/ly-simple-label.component.mjs +22 -0
- package/esm2022/lib/ly-tab-container/ly-tab-container.component.mjs +44 -0
- package/esm2022/lib/ly-tab-page/ly-tab-page.component.mjs +44 -0
- package/esm2022/lib/ly-vertical-layout/ly-vertical-layout.component.mjs +51 -0
- package/esm2022/lib/manage-filters-report/manage-filters-report.component.mjs +43 -0
- package/esm2022/lib/mask/mask.component.mjs +22 -0
- package/esm2022/lib/message-strip/message-strip.component.mjs +28 -0
- package/esm2022/lib/models/grid-data-provider.mjs +114 -0
- package/esm2022/lib/models/grid-view.mjs +2 -0
- package/esm2022/lib/models/index.mjs +2 -0
- package/esm2022/lib/no-data/no-data.component.mjs +31 -0
- package/esm2022/lib/notification-item/notification-item.component.mjs +57 -0
- package/esm2022/lib/notification-item-actions/notification-item-actions.component.mjs +79 -0
- package/esm2022/lib/notification-popup.service.mjs +92 -0
- package/esm2022/lib/object-status-icon.pipe.mjs +27 -0
- package/esm2022/lib/progress-indicator/progress-indicator.component.mjs +18 -0
- package/esm2022/lib/report-navigator/report-navigator.component.mjs +68 -0
- package/esm2022/lib/report-new-top-form/report-new-top-form.component.mjs +60 -0
- package/esm2022/lib/report-search-fields-hidden-settings/report-search-fields-hidden-settings.component.mjs +35 -0
- package/esm2022/lib/report-search-fields-manage/report-search-fields-manage.component.mjs +97 -0
- package/esm2022/lib/report-search-panel-save/report-search-panel-save.component.mjs +88 -0
- package/esm2022/lib/report-tree-base.mjs +387 -0
- package/esm2022/lib/report-view-renderer.directive.mjs +392 -0
- package/esm2022/lib/responsive-toolbar/responsive-toolbar.component.mjs +50 -0
- package/esm2022/lib/responsive-toolbar-renderer/responsive-toolbar-renderer.component.mjs +84 -0
- package/esm2022/lib/rich-text-static/rich-text-static.component.mjs +72 -0
- package/esm2022/lib/sap-font-class.pipe.mjs +30 -0
- package/esm2022/lib/sap-font.pipe.mjs +30 -0
- package/esm2022/lib/sap-size.pipe.mjs +28 -0
- package/esm2022/lib/sap-ui-report-base.component.mjs +809 -0
- package/esm2022/lib/search-panel/search-panel.component.mjs +63 -0
- package/esm2022/lib/static-text/static-text.component.mjs +15 -0
- package/esm2022/lib/table-th.directive.mjs +87 -0
- package/esm2022/lib/title/title.component.mjs +15 -0
- package/esm2022/lib/ui-asp-report-viewer/ui-asp-report-viewer.component.mjs +34 -0
- package/esm2022/lib/ui-bpmn-viewer/ui-bpmn-viewer.component.mjs +33 -0
- package/esm2022/lib/ui-button/ui-button.component.mjs +32 -0
- package/esm2022/lib/ui-calendar/ui-calendar.component.mjs +53 -0
- package/esm2022/lib/ui-card-view/ui-card-view.component.mjs +58 -0
- package/esm2022/lib/ui-card-view-horizontal-group/ui-card-view-horizontal-group.component.mjs +42 -0
- package/esm2022/lib/ui-check-box/ui-check-box.component.mjs +39 -0
- package/esm2022/lib/ui-color-ui/ui-color-ui.component.mjs +50 -0
- package/esm2022/lib/ui-container-with-button/ui-container-with-button.component.mjs +38 -0
- package/esm2022/lib/ui-date-range-ex/ui-date-range-ex.component.mjs +191 -0
- package/esm2022/lib/ui-date-time/ui-date-time.component.mjs +150 -0
- package/esm2022/lib/ui-editable-grid/ui-editable-grid.component.mjs +108 -0
- package/esm2022/lib/ui-exception-form/ui-exception-form.component.mjs +53 -0
- package/esm2022/lib/ui-file-linear-list-box/ui-file-linear-list-box.component.mjs +124 -0
- package/esm2022/lib/ui-form-panel/ui-form-panel.component.mjs +103 -0
- package/esm2022/lib/ui-gantt-chart/ui-gantt-chart.component.mjs +32 -0
- package/esm2022/lib/ui-graph/ui-graph.component.mjs +17 -0
- package/esm2022/lib/ui-grid/ui-grid.component.mjs +25 -0
- package/esm2022/lib/ui-grid-columns/ui-grid-columns.component.mjs +43 -0
- package/esm2022/lib/ui-grid-filter-item/ui-grid-filter-item.component.mjs +66 -0
- package/esm2022/lib/ui-grid-filter-settings/ui-grid-filter-settings.component.mjs +75 -0
- package/esm2022/lib/ui-grid-sort-item/ui-grid-sort-item.component.mjs +58 -0
- package/esm2022/lib/ui-grid-sort-setting/ui-grid-sort-setting.component.mjs +123 -0
- package/esm2022/lib/ui-html-viewer/ui-html-viewer.component.mjs +16 -0
- package/esm2022/lib/ui-info-bar-panel/ui-info-bar-panel.component.mjs +11 -0
- package/esm2022/lib/ui-label/ui-label.component.mjs +12 -0
- package/esm2022/lib/ui-linear-list-container-with-button/ui-linear-list-container-with-button.component.mjs +379 -0
- package/esm2022/lib/ui-list-view/ui-list-view.component.mjs +84 -0
- package/esm2022/lib/ui-map/ui-map.component.mjs +68 -0
- package/esm2022/lib/ui-matrix-view/ui-matrix-view.component.mjs +124 -0
- package/esm2022/lib/ui-mo-info-combo-viewer/ui-mo-info-combo-viewer.component.mjs +19 -0
- package/esm2022/lib/ui-mo-info-general-object-ui/ui-mo-info-general-object-ui.component.mjs +14 -0
- package/esm2022/lib/ui-mo-info-sub-form-ui/ui-mo-info-sub-form-ui.component.mjs +55 -0
- package/esm2022/lib/ui-mo-info-ulv-combo/ui-mo-info-ulv-combo.component.mjs +429 -0
- package/esm2022/lib/ui-monaco-editor/ui-monaco-editor.component.mjs +28 -0
- package/esm2022/lib/ui-multi-select-card/ui-multi-select-card.component.mjs +37 -0
- package/esm2022/lib/ui-multi-select-checkbox/ui-multi-select-checkbox.component.mjs +59 -0
- package/esm2022/lib/ui-multi-select-combo/ui-multi-select-combo.component.mjs +93 -0
- package/esm2022/lib/ui-multi-select-radio/ui-multi-select-radio.component.mjs +36 -0
- package/esm2022/lib/ui-multi-select-slider/ui-multi-select-slider.component.mjs +56 -0
- package/esm2022/lib/ui-multi-select-smile/ui-multi-select-smile.component.mjs +28 -0
- package/esm2022/lib/ui-notification-view/ui-notification-view.component.mjs +47 -0
- package/esm2022/lib/ui-num-decimal-ui/ui-num-decimal-ui.component.mjs +33 -0
- package/esm2022/lib/ui-num-int-slider/ui-num-int-slider.component.mjs +27 -0
- package/esm2022/lib/ui-num-int-ui/ui-num-int-ui.component.mjs +21 -0
- package/esm2022/lib/ui-pdf-viewer/ui-pdf-viewer.component.mjs +268 -0
- package/esm2022/lib/ui-picture-file/ui-picture-file.component.mjs +101 -0
- package/esm2022/lib/ui-pictures-info/ui-pictures-info.component.mjs +261 -0
- package/esm2022/lib/ui-radio-group/ui-radio-group.component.mjs +48 -0
- package/esm2022/lib/ui-read-only-field/ui-read-only-field.component.mjs +36 -0
- package/esm2022/lib/ui-report-container/ui-report-container.component.mjs +46 -0
- package/esm2022/lib/ui-search-command-info-ui/ui-search-command-info-ui.component.mjs +24 -0
- package/esm2022/lib/ui-simple-combo/ui-simple-combo.component.mjs +55 -0
- package/esm2022/lib/ui-single-picture/ui-single-picture.component.mjs +36 -0
- package/esm2022/lib/ui-switch-button/ui-switch-button.component.mjs +20 -0
- package/esm2022/lib/ui-table-view/ui-table-view.component.mjs +296 -0
- package/esm2022/lib/ui-text-area/ui-text-area.component.mjs +49 -0
- package/esm2022/lib/ui-text-field/ui-text-field.component.mjs +52 -0
- package/esm2022/lib/ui-text-field-auto-complete/ui-text-field-auto-complete.component.mjs +48 -0
- package/esm2022/lib/ui-time-span/ui-time-span.component.mjs +24 -0
- package/esm2022/lib/ui-tinymce/ui-tinymce.component.mjs +53 -0
- package/esm2022/lib/ui-tree/ui-tree.component.mjs +114 -0
- package/esm2022/lib/ui-tree-view/ui-tree-view.component.mjs +100 -0
- package/esm2022/lib/ui-ulv-form-multi-select-ui/ui-ulv-form-multi-select-ui.component.mjs +23 -0
- package/esm2022/lib/ui-ulv-main-ui/ui-ulv-main-ui.component.mjs +310 -0
- package/esm2022/lib/ui-workflow-panel-ui/ui-workflow-panel-ui.component.mjs +25 -0
- package/esm2022/lib/ul-loading-mask-ui/ul-loading-mask-ui.component.mjs +93 -0
- package/esm2022/lib/ul-msg-box-adapter/ul-msg-box-adapter.component.mjs +119 -0
- package/esm2022/lib/ul-notify-popup/ul-notify-popup.component.mjs +32 -0
- package/esm2022/lib/ul-toast-adapter/ul-toast-adapter.component.mjs +48 -0
- package/esm2022/lib/ulv-column-settings/ulv-column-settings.component.mjs +53 -0
- package/esm2022/lib/ulv-context-menu/ulv-context-menu.component.mjs +116 -0
- package/esm2022/lib/ulv-filter-settings/ulv-filter-settings.component.mjs +43 -0
- package/esm2022/lib/ulv-form-multi-select/ulv-form-multi-select.component.mjs +196 -0
- package/esm2022/lib/ulv-groupby-settings/ulv-groupby-settings.component.mjs +44 -0
- package/esm2022/lib/ulv-paging/ulv-paging.component.mjs +84 -0
- package/esm2022/lib/ulv-selection/ulv-selection.component.mjs +65 -0
- package/esm2022/lib/ulv-settings/ulv-settings.component.mjs +116 -0
- package/esm2022/lib/ulv-sort-settings/ulv-sort-settings.component.mjs +54 -0
- package/esm2022/lib/ulv-toolbar/ulv-toolbar.component.mjs +177 -0
- package/esm2022/lib/upload-file-status.pipe.mjs +29 -0
- package/esm2022/lib/util-chat-time-badge.pipe.mjs +18 -0
- package/esm2022/lib/util-date-to-hh-mm.pipe.mjs +23 -0
- package/esm2022/lib/wizard-layout.directive.mjs +104 -0
- package/esm2022/public-api.mjs +236 -0
- package/fesm2022/barsa-sap-ui.mjs +6 -6
- package/fesm2022/barsa-sap-ui.mjs.map +1 -1
- package/package.json +3 -1
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, Input, ViewChild } from '@angular/core';
|
|
2
|
+
import { BehaviorSubject, Observable } from 'rxjs';
|
|
3
|
+
import { distinctUntilChanged, takeUntil } from 'rxjs/operators';
|
|
4
|
+
import { FileUploaderComponent } from '@fundamental-ngx/core';
|
|
5
|
+
import { UploadService, FilesValidationHelper, getValidExtension, LinearListHelper } from 'barsa-novin-ray-core';
|
|
6
|
+
import { DeviceInfoFieldBaseComponent } from '../device-info-field-base';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "@fundamental-ngx/core/busy-indicator";
|
|
9
|
+
import * as i2 from "@fundamental-ngx/core/file-uploader";
|
|
10
|
+
import * as i3 from "@fundamental-ngx/core/object-number";
|
|
11
|
+
import * as i4 from "@fundamental-ngx/core/object-status";
|
|
12
|
+
import * as i5 from "@fundamental-ngx/core/popover";
|
|
13
|
+
import * as i6 from "@fundamental-ngx/core/toolbar";
|
|
14
|
+
import * as i7 from "@fundamental-ngx/core/token";
|
|
15
|
+
import * as i8 from "../barsa-bar-download-file/barsa-bar-download-file.component";
|
|
16
|
+
import * as i9 from "../mask/mask.component";
|
|
17
|
+
import * as i10 from "../file-viewer-content/file-viewer-content.component";
|
|
18
|
+
import * as i11 from "@angular/common";
|
|
19
|
+
import * as i12 from "barsa-novin-ray-core";
|
|
20
|
+
import * as i13 from "../upload-file-status.pipe";
|
|
21
|
+
export class UiFileLinearListBoxComponent extends DeviceInfoFieldBaseComponent {
|
|
22
|
+
constructor() {
|
|
23
|
+
super(...arguments);
|
|
24
|
+
this.uploading$ = new Observable();
|
|
25
|
+
this.validExtension = '';
|
|
26
|
+
this.loading = false;
|
|
27
|
+
this._fileCountSource = new BehaviorSubject(0);
|
|
28
|
+
}
|
|
29
|
+
ngOnInit() {
|
|
30
|
+
super.ngOnInit();
|
|
31
|
+
this.context.on({
|
|
32
|
+
ShowUploadWindow: this._showUploadWindow.bind(this)
|
|
33
|
+
});
|
|
34
|
+
this._filesValidationHelper = new FilesValidationHelper(this.Setting.MaxFileCount, this.Setting.MaxFileSizeKb, this.Setting.MaxTotalFileSizeKb);
|
|
35
|
+
this._linearHelper = new LinearListHelper(this._uploadService, this._filesValidationHelper, this.Setting.FieldDefId);
|
|
36
|
+
this.fileCount$ = this._fileCountSource.asObservable().pipe(distinctUntilChanged());
|
|
37
|
+
this.valueExtra$ = this._linearHelper.valueExtra$;
|
|
38
|
+
this.uploading$ = this._linearHelper.uploading$;
|
|
39
|
+
this._linearHelper.delete$.pipe(takeUntil(this._onDestroy$)).subscribe((fileAttachment) => {
|
|
40
|
+
this._deleteFileAttachment(fileAttachment);
|
|
41
|
+
});
|
|
42
|
+
this._linearHelper.newFileUploaded$.pipe(takeUntil(this._onDestroy$)).subscribe((fileAttachment) => {
|
|
43
|
+
this._newFileUploaded(fileAttachment);
|
|
44
|
+
});
|
|
45
|
+
this.value &&
|
|
46
|
+
this.value.forEach((c) => {
|
|
47
|
+
this._linearHelper.init(c);
|
|
48
|
+
});
|
|
49
|
+
if (!this.Setting.IsMultiSelect) {
|
|
50
|
+
this._filesValidationHelper.maxFileCount = 1;
|
|
51
|
+
}
|
|
52
|
+
this.maxFileCount = this._filesValidationHelper.maxFileCount;
|
|
53
|
+
this.validExtension = getValidExtension(this.Setting.ValidExtensions);
|
|
54
|
+
this._setFileCount(this.value);
|
|
55
|
+
}
|
|
56
|
+
ngOnDestroy() {
|
|
57
|
+
// this.valueExtra = {};
|
|
58
|
+
this.context.un('ShowUploadWindow', this._showUploadWindow);
|
|
59
|
+
super.ngOnDestroy();
|
|
60
|
+
}
|
|
61
|
+
onDownloadFile(file) {
|
|
62
|
+
if (!file.IsNew || file.UploadState === 'Complete' || !file.UploadState) {
|
|
63
|
+
this.fireContextEvent('CommandRequest', this.context, 'Download', file.Id);
|
|
64
|
+
this.fileDownloading = true;
|
|
65
|
+
setTimeout(() => {
|
|
66
|
+
this.fileDownloading = false;
|
|
67
|
+
}, 500);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
onFileDeleted(fileId) {
|
|
71
|
+
this._fileDelete(fileId);
|
|
72
|
+
}
|
|
73
|
+
onTerminate(fileAttachment) {
|
|
74
|
+
this.fireContextEvent('CommandRequest', this.context, 'Delete', fileAttachment.Id);
|
|
75
|
+
this._linearHelper.cancel(fileAttachment);
|
|
76
|
+
}
|
|
77
|
+
onFileSelection(files) {
|
|
78
|
+
this._linearHelper.uploadToServer(files);
|
|
79
|
+
}
|
|
80
|
+
trackById(file, index) {
|
|
81
|
+
return file ? file.Id : index;
|
|
82
|
+
}
|
|
83
|
+
retry(fileAttachment) {
|
|
84
|
+
this._linearHelper.retry(fileAttachment);
|
|
85
|
+
}
|
|
86
|
+
_setValue(value) {
|
|
87
|
+
super._setValue(value);
|
|
88
|
+
this._setFileCount(value);
|
|
89
|
+
}
|
|
90
|
+
_showUploadWindow() {
|
|
91
|
+
this.fileUploadComponent.open();
|
|
92
|
+
}
|
|
93
|
+
_fileDelete(id) {
|
|
94
|
+
const fileAttachment = this.value.find((c) => c.Id === id);
|
|
95
|
+
if (fileAttachment) {
|
|
96
|
+
this._deleteFileAttachment(fileAttachment);
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
_deleteFileAttachment(fileAttachment) {
|
|
100
|
+
this.fireContextEvent('CommandRequest', this.context, 'Delete', fileAttachment.Id);
|
|
101
|
+
}
|
|
102
|
+
_setLoading(loading) {
|
|
103
|
+
this.loading = loading;
|
|
104
|
+
this._cdr.markForCheck();
|
|
105
|
+
}
|
|
106
|
+
_newFileUploaded(newFileAttachment) {
|
|
107
|
+
this.fireContextEvent('CommandRequest', this.context, 'FileUpload', newFileAttachment);
|
|
108
|
+
}
|
|
109
|
+
_setFileCount(value) {
|
|
110
|
+
this._fileCountSource.next(value.filter((c) => !c.IsDeleted).length);
|
|
111
|
+
}
|
|
112
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiFileLinearListBoxComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
113
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: UiFileLinearListBoxComponent, selector: "bsu-ui-file-linear-list-box", inputs: { value: "value" }, providers: [UploadService], viewQueries: [{ propertyName: "fileUploadComponent", first: true, predicate: FileUploaderComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "@if (value) {\r\n<div class=\"token-container\">\r\n <div class=\"token-wrapper\">\r\n @for (file of value; track trackById($index, file)) { @if (!file.IsDeleted) {\r\n <fd-popover #popover>\r\n <fd-popover-control>\r\n <fd-token (onCloseClick)=\"onFileDeleted(file.Id)\" [readOnly]=\"(disableOrReadonly$ | async)!!\"\r\n >{{ file.FileName }}\r\n @if (file.IsNew) { @if (valueExtra$ | async; as valueExtra) { @if (valueExtra[file.Id].UploadState\r\n !== 'Complete') {\r\n <span\r\n fd-object-status\r\n [status]=\"file.Id | uploadFileStatus: valueExtra\"\r\n [label]=\"valueExtra[file.Id]?.UploadState || ''\"\r\n [title]=\"valueExtra[file.Id]?.UploadState\"\r\n [aria-label]=\"'File Upload Status Is ' + valueExtra[file.Id]?.UploadState\"\r\n ></span>\r\n } @if (valueExtra[file.Id].Progress) {\r\n <fd-object-number\r\n [number]=\"valueExtra[file.Id].Progress || 0\"\r\n unit=\"%\"\r\n status=\"informative\"\r\n ></fd-object-number>\r\n } @if (valueExtra[file.Id].UploadState === 'Uploading') {\r\n <fd-busy-indicator [loading]=\"true\" [size]=\"'s'\"></fd-busy-indicator>\r\n } } }\r\n </fd-token>\r\n </fd-popover-control>\r\n <fd-popover-body>\r\n @if (valueExtra$ | async; as valueExtra) { @if ( valueExtra[file.Id].UploadState !== 'Error' ||\r\n valueExtra[file.Id].UploadState === 'Complete' ) {\r\n <bsu-file-viewer-content\r\n [file]=\"file\"\r\n [width]=\"isMobile ? '100vw' : '30vw'\"\r\n [cardMode]=\"true\"\r\n [showContent]=\"true\"\r\n [showFooter]=\"true\"\r\n [deviceSize]=\"(deviceSize$ | async) || 's'\"\r\n ></bsu-file-viewer-content>\r\n <div fd-popover-body-footer>\r\n <bsu-barsa-bar-download-file\r\n [isMobile]=\"isMobile\"\r\n [popover]=\"popover\"\r\n [files]=\"[file]\"\r\n [hideFullScreen]=\"false\"\r\n ></bsu-barsa-bar-download-file>\r\n </div>\r\n <!-- <ul fd-list>\r\n <li fd-list-item>\r\n <a fd-list-link (click)=\"onDownloadFile(file)\">\r\n <i fd-list-icon glyph=\"download\"></i>\r\n <span fd-list-title>\r\n {{ 'Download' | bbbTranslate }}\r\n </span>\r\n <fd-busy-indicator [loading]=\"fileDownloading\" [size]=\"'s'\"></fd-busy-indicator>\r\n </a>\r\n </li>\r\n </ul> -->\r\n } }\r\n </fd-popover-body>\r\n </fd-popover>\r\n } }\r\n <div style=\"display: flex\">\r\n @if (loading) {\r\n <div style=\"position: relative; width: 3rem\">\r\n <bsu-mask [size]=\"'s'\" style=\"background: transparent\"></bsu-mask>\r\n </div>\r\n } @if ((fileCount$ | async) | canUploadFile: maxFileCount:(disable$ | async)===true:(readonly$ |\r\n async)===true) {\r\n <fd-file-uploader\r\n class=\"file-linear-upload\"\r\n fd-toolbar-item\r\n [id]=\"id\"\r\n [name]=\"'linear_' + id\"\r\n [placeholder]=\"'AttachFile' | bbbTranslate\"\r\n [buttonLabel]=\"'AttachFile' | bbbTranslate\"\r\n [buttonAriaLabel]=\"'AttachFile' | bbbTranslate\"\r\n [accept]=\"validExtension\"\r\n [multiple]=\"maxFileCount > 1 || Setting.IsMultiSelect\"\r\n (selectedFilesChanged)=\"onFileSelection($event)\"\r\n [contentDensity]=\"(contentDensity$ | async)!!\"\r\n ></fd-file-uploader>\r\n }\r\n </div>\r\n </div>\r\n</div>\r\n}\r\n", styles: [":host{display:block;width:100%;height:100%}:host ::ng-deep .fd-slider__handle{display:none}:host ::ng-deep .fd-file-uploader input{display:none}:host.isMobile ::ng-deep fd-token>span{-webkit-line-clamp:2;-webkit-box-orient:vertical;white-space:pre-wrap;height:auto;text-align:right}:host.isMobile ::ng-deep body[dir=ltr] fd-token>span{text-align:left}.token-container{background:transparent;padding:3px;display:flex}.token-wrapper{align-items:center;flex-grow:1;display:flex;flex-wrap:wrap}.token-wrapper fd-token,.token-wrapper .file-linear-upload{padding:4px}\n"], dependencies: [{ kind: "component", type: i1.BusyIndicatorComponent, selector: "fd-busy-indicator", inputs: ["loading", "size", "block", "ariaLabel", "title", "label", "ariaLive"] }, { kind: "component", type: i2.FileUploaderComponent, selector: "fd-file-uploader", inputs: ["disabled", "required", "multiple", "accept", "dragndrop", "maxFileSize", "minFileSize", "id", "ariaLabel", "ariaLabelledBy", "placeholder", "buttonLabel", "buttonAriaLabel", "state", "fileLimit", "inputHidden", "width"], outputs: ["selectedFilesChanged", "selectedInvalidFiles", "onDragEnter", "onDragLeave"] }, { kind: "component", type: i3.ObjectNumberComponent, selector: "fd-object-number", inputs: ["number", "decimal", "unit", "emphasized", "large", "status", "class", "ariaLabelledBy", "ariaLabel"] }, { kind: "component", type: i4.ObjectStatusComponent, selector: "[fd-object-status]", inputs: ["class", "status", "glyph", "glyphFont", "label", "glyphAriaLabel", "indicationColor", "clickable", "inverted", "large", "secondaryIndication", "textTemplate"] }, { kind: "component", type: i5.PopoverControlComponent, selector: "fd-popover-control, [fdPopoverControl]" }, { kind: "component", type: i5.PopoverBodyComponent, selector: "fd-popover-body", inputs: ["minWidth", "maxWidth", "minHeight", "maxHeight"] }, { kind: "directive", type: i5.PopoverBodyFooterDirective, selector: "[fdPopoverBodyFooter], [fd-popover-body-footer]" }, { kind: "component", type: i5.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig", "preventSpaceKeyScroll"] }, { kind: "directive", type: i6.ToolbarItemDirective, selector: "[fd-toolbar-item], [fdOverflowGroup], [fdOverflowPriority]", inputs: ["fdOverflowPriority", "fdOverflowGroup"] }, { kind: "component", type: i7.TokenComponent, selector: "fd-token", inputs: ["disabled", "selected", "readOnly"], outputs: ["onCloseClick", "onRemove", "onTokenClick", "onTokenKeydown", "elementFocused"] }, { kind: "component", type: i8.BarsaBarDownloadFileComponent, selector: "bsu-barsa-bar-download-file", inputs: ["popover", "files", "hideFullScreen", "isMobile"] }, { kind: "component", type: i9.MaskComponent, selector: "bsu-mask", inputs: ["size", "top"] }, { kind: "component", type: i10.FileViewerContentComponent, selector: "bsu-file-viewer-content", inputs: ["fillWidth", "imageOnly", "isImageGallery", "cardMode", "showFooter", "showContent", "width", "deviceSize", "cardContentHeight", "file"], outputs: ["cantView"] }, { kind: "pipe", type: i11.AsyncPipe, name: "async" }, { kind: "pipe", type: i12.CanUploadFilePipe, name: "canUploadFile" }, { kind: "pipe", type: i12.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: i13.UploadFileStatusPipe, name: "uploadFileStatus" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
114
|
+
}
|
|
115
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiFileLinearListBoxComponent, decorators: [{
|
|
116
|
+
type: Component,
|
|
117
|
+
args: [{ selector: 'bsu-ui-file-linear-list-box', providers: [UploadService], changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "@if (value) {\r\n<div class=\"token-container\">\r\n <div class=\"token-wrapper\">\r\n @for (file of value; track trackById($index, file)) { @if (!file.IsDeleted) {\r\n <fd-popover #popover>\r\n <fd-popover-control>\r\n <fd-token (onCloseClick)=\"onFileDeleted(file.Id)\" [readOnly]=\"(disableOrReadonly$ | async)!!\"\r\n >{{ file.FileName }}\r\n @if (file.IsNew) { @if (valueExtra$ | async; as valueExtra) { @if (valueExtra[file.Id].UploadState\r\n !== 'Complete') {\r\n <span\r\n fd-object-status\r\n [status]=\"file.Id | uploadFileStatus: valueExtra\"\r\n [label]=\"valueExtra[file.Id]?.UploadState || ''\"\r\n [title]=\"valueExtra[file.Id]?.UploadState\"\r\n [aria-label]=\"'File Upload Status Is ' + valueExtra[file.Id]?.UploadState\"\r\n ></span>\r\n } @if (valueExtra[file.Id].Progress) {\r\n <fd-object-number\r\n [number]=\"valueExtra[file.Id].Progress || 0\"\r\n unit=\"%\"\r\n status=\"informative\"\r\n ></fd-object-number>\r\n } @if (valueExtra[file.Id].UploadState === 'Uploading') {\r\n <fd-busy-indicator [loading]=\"true\" [size]=\"'s'\"></fd-busy-indicator>\r\n } } }\r\n </fd-token>\r\n </fd-popover-control>\r\n <fd-popover-body>\r\n @if (valueExtra$ | async; as valueExtra) { @if ( valueExtra[file.Id].UploadState !== 'Error' ||\r\n valueExtra[file.Id].UploadState === 'Complete' ) {\r\n <bsu-file-viewer-content\r\n [file]=\"file\"\r\n [width]=\"isMobile ? '100vw' : '30vw'\"\r\n [cardMode]=\"true\"\r\n [showContent]=\"true\"\r\n [showFooter]=\"true\"\r\n [deviceSize]=\"(deviceSize$ | async) || 's'\"\r\n ></bsu-file-viewer-content>\r\n <div fd-popover-body-footer>\r\n <bsu-barsa-bar-download-file\r\n [isMobile]=\"isMobile\"\r\n [popover]=\"popover\"\r\n [files]=\"[file]\"\r\n [hideFullScreen]=\"false\"\r\n ></bsu-barsa-bar-download-file>\r\n </div>\r\n <!-- <ul fd-list>\r\n <li fd-list-item>\r\n <a fd-list-link (click)=\"onDownloadFile(file)\">\r\n <i fd-list-icon glyph=\"download\"></i>\r\n <span fd-list-title>\r\n {{ 'Download' | bbbTranslate }}\r\n </span>\r\n <fd-busy-indicator [loading]=\"fileDownloading\" [size]=\"'s'\"></fd-busy-indicator>\r\n </a>\r\n </li>\r\n </ul> -->\r\n } }\r\n </fd-popover-body>\r\n </fd-popover>\r\n } }\r\n <div style=\"display: flex\">\r\n @if (loading) {\r\n <div style=\"position: relative; width: 3rem\">\r\n <bsu-mask [size]=\"'s'\" style=\"background: transparent\"></bsu-mask>\r\n </div>\r\n } @if ((fileCount$ | async) | canUploadFile: maxFileCount:(disable$ | async)===true:(readonly$ |\r\n async)===true) {\r\n <fd-file-uploader\r\n class=\"file-linear-upload\"\r\n fd-toolbar-item\r\n [id]=\"id\"\r\n [name]=\"'linear_' + id\"\r\n [placeholder]=\"'AttachFile' | bbbTranslate\"\r\n [buttonLabel]=\"'AttachFile' | bbbTranslate\"\r\n [buttonAriaLabel]=\"'AttachFile' | bbbTranslate\"\r\n [accept]=\"validExtension\"\r\n [multiple]=\"maxFileCount > 1 || Setting.IsMultiSelect\"\r\n (selectedFilesChanged)=\"onFileSelection($event)\"\r\n [contentDensity]=\"(contentDensity$ | async)!!\"\r\n ></fd-file-uploader>\r\n }\r\n </div>\r\n </div>\r\n</div>\r\n}\r\n", styles: [":host{display:block;width:100%;height:100%}:host ::ng-deep .fd-slider__handle{display:none}:host ::ng-deep .fd-file-uploader input{display:none}:host.isMobile ::ng-deep fd-token>span{-webkit-line-clamp:2;-webkit-box-orient:vertical;white-space:pre-wrap;height:auto;text-align:right}:host.isMobile ::ng-deep body[dir=ltr] fd-token>span{text-align:left}.token-container{background:transparent;padding:3px;display:flex}.token-wrapper{align-items:center;flex-grow:1;display:flex;flex-wrap:wrap}.token-wrapper fd-token,.token-wrapper .file-linear-upload{padding:4px}\n"] }]
|
|
118
|
+
}], propDecorators: { fileUploadComponent: [{
|
|
119
|
+
type: ViewChild,
|
|
120
|
+
args: [FileUploaderComponent, { static: false }]
|
|
121
|
+
}], value: [{
|
|
122
|
+
type: Input
|
|
123
|
+
}] } });
|
|
124
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktZmlsZS1saW5lYXItbGlzdC1ib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktZmlsZS1saW5lYXItbGlzdC1ib3gvdWktZmlsZS1saW5lYXItbGlzdC1ib3guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktZmlsZS1saW5lYXItbGlzdC1ib3gvdWktZmlsZS1saW5lYXItbGlzdC1ib3guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQXFCLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RyxPQUFPLEVBQUUsZUFBZSxFQUFFLFVBQVUsRUFBVyxNQUFNLE1BQU0sQ0FBQztBQUM1RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDakUsT0FBTyxFQUFrQixxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRTlFLE9BQU8sRUFDSCxhQUFhLEVBQ2IscUJBQXFCLEVBRXJCLGlCQUFpQixFQUNqQixnQkFBZ0IsRUFDbkIsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7O0FBV3pFLE1BQU0sT0FBTyw0QkFBNkIsU0FBUSw0QkFBNEI7SUFSOUU7O1FBYUksZUFBVSxHQUFHLElBQUksVUFBVSxFQUFtQixDQUFDO1FBSy9DLG1CQUFjLEdBQUcsRUFBRSxDQUFDO1FBRXBCLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFHUixxQkFBZ0IsR0FBRyxJQUFJLGVBQWUsQ0FBUyxDQUFDLENBQUMsQ0FBQztLQStGN0Q7SUE5RkcsUUFBUTtRQUNKLEtBQUss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QUFFO2dCQUMxQyxLQUFLO3NCQUFiLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgZGlzdGluY3RVbnRpbENoYW5nZWQsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgQ29udGVudERlbnNpdHksIEZpbGVVcGxvYWRlckNvbXBvbmVudCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZSc7XHJcblxyXG5pbXBvcnQge1xyXG4gICAgVXBsb2FkU2VydmljZSxcclxuICAgIEZpbGVzVmFsaWRhdGlvbkhlbHBlcixcclxuICAgIEZpbGVBdHRhY2htZW50SW5mbyxcclxuICAgIGdldFZhbGlkRXh0ZW5zaW9uLFxyXG4gICAgTGluZWFyTGlzdEhlbHBlclxyXG59IGZyb20gJ2JhcnNhLW5vdmluLXJheS1jb3JlJztcclxuaW1wb3J0IHsgRGV2aWNlSW5mb0ZpZWxkQmFzZUNvbXBvbmVudCB9IGZyb20gJy4uL2RldmljZS1pbmZvLWZpZWxkLWJhc2UnO1xyXG5pbXBvcnQgeyBJVXBsb2FkaW5nU3RhdGUgfSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnYnN1LXVpLWZpbGUtbGluZWFyLWxpc3QtYm94JyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi91aS1maWxlLWxpbmVhci1saXN0LWJveC5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi91aS1maWxlLWxpbmVhci1saXN0LWJveC5jb21wb25lbnQuc2NzcyddLFxyXG4gICAgcHJvdmlkZXJzOiBbVXBsb2FkU2VydmljZV0sXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICAgIHN0YW5kYWxvbmU6IGZhbHNlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBVaUZpbGVMaW5lYXJMaXN0Qm94Q29tcG9uZW50IGV4dGVuZHMgRGV2aWNlSW5mb0ZpZWxkQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICAgIEBWaWV3Q2hpbGQoRmlsZVVwbG9hZGVyQ29tcG9uZW50LCB7IHN0YXRpYzogZmFsc2UgfSkgZmlsZVVwbG9hZENvbXBvbmVudDogRmlsZVVwbG9hZGVyQ29tcG9uZW50O1xyXG4gICAgQElucHV0KCkgdmFsdWU6IEZpbGVBdHRhY2htZW50SW5mb1tdO1xyXG5cclxuICAgIGZpbGVDb3VudCQ6IE9ic2VydmFibGU8bnVtYmVyPjtcclxuICAgIHVwbG9hZGluZyQgPSBuZXcgT2JzZXJ2YWJsZTxJVXBsb2FkaW5nU3RhdGU+KCk7XHJcblxyXG4gICAgdmFsdWVFeHRyYSQ6IE9ic2VydmFibGU8eyBba2V5OiBzdHJpbmddOiBVcGxvYWRGaWxlUHJvcHMgfT47XHJcbiAgICBjb250ZW50RGVuc2l0eSQ6IE9ic2VydmFibGU8Q29udGVudERlbnNpdHk+O1xyXG4gICAgZmlsZURvd25sb2FkaW5nOiBib29sZWFuO1xyXG4gICAgdmFsaWRFeHRlbnNpb24gPSAnJztcclxuICAgIG1heEZpbGVDb3VudDogbnVtYmVyO1xyXG4gICAgbG9hZGluZyA9IGZhbHNlO1xyXG4gICAgcHJvdGVjdGVkIF9saW5lYXJIZWxwZXI6IExpbmVhckxpc3RIZWxwZXI7XHJcbiAgICBwcm90ZWN0ZWQgX2ZpbGVzVmFsaWRhdGlvbkhlbHBlcjogRmlsZXNWYWxpZGF0aW9uSGVscGVyO1xyXG4gICAgcHJpdmF0ZSBfZmlsZUNvdW50U291cmNlID0gbmV3IEJlaGF2aW9yU3ViamVjdDxudW1iZXI+KDApO1xyXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcclxuICAgICAgICB0aGlzLmNvbnRleHQub24oe1xyXG4gICAgICAgICAgICBTaG93VXBsb2FkV2luZG93OiB0aGlzLl9zaG93VXBsb2FkV2luZG93LmJpbmQodGhpcylcclxuICAgICAgICB9KTtcclxuICAgICAgICB0aGlzLl9maWxlc1ZhbGlkYXRpb25IZWxwZXIgPSBuZXcgRmlsZXNWYWxpZGF0aW9uSGVscGVyKFxyXG4gICAgICAgICAgICB0aGlzLlNldHRpbmcuTWF4RmlsZUNvdW50LFxyXG4gICAgICAgICAgICB0aGlzLlNldHRpbmcuTWF4RmlsZVNpemVLYixcclxuICAgICAgICAgICAgdGhpcy5TZXR0aW5nLk1heFRvdGFsRmlsZVNpemVLYlxyXG4gICAgICAgICk7XHJcbiAgICAgICAgdGhpcy5fbGluZWFySGVscGVyID0gbmV3IExpbmVhckxpc3RIZWxwZXIoXHJcbiAgICAgICAgICAgIHRoaXMuX3VwbG9hZFNlcnZpY2UsXHJcbiAgICAgICAgICAgIHRoaXMuX2ZpbGVzVmFsaWRhdGlvbkhlbHBlcixcclxuICAgICAgICAgICAgdGhpcy5TZXR0aW5nLkZpZWxkRGVmSWRcclxuICAgICAgICApO1xyXG4gICAgICAgIHRoaXMuZmlsZUNvdW50JCA9IHRoaXMuX2ZpbGVDb3VudFNvdXJjZS5hc09ic2VydmFibGUoKS5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpO1xyXG4gICAgICAgIHRoaXMudmFsdWVFeHRyYSQgPSB0aGlzLl9saW5lYXJIZWxwZXIudmFsdWVFeHRyYSQ7XHJcbiAgICAgICAgdGhpcy51cGxvYWRpbmckID0gdGhpcy5fbGluZWFySGVscGVyLnVwbG9hZGluZyQ7XHJcbiAgICAgICAgdGhpcy5fbGluZWFySGVscGVyLmRlbGV0ZSQucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCkpLnN1YnNjcmliZSgoZmlsZUF0dGFjaG1lbnQpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5fZGVsZXRlRmlsZUF0dGFjaG1lbnQoZmlsZUF0dGFjaG1lbnQpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHRoaXMuX2xpbmVhckhlbHBlci5uZXdGaWxlVXBsb2FkZWQkLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKGZpbGVBdHRhY2htZW50KSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuX25ld0ZpbGVVcGxvYWRlZChmaWxlQXR0YWNobWVudCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgdGhpcy52YWx1ZSAmJlxyXG4gICAgICAgICAgICB0aGlzLnZhbHVlLmZvckVhY2goKGMpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMuX2xpbmVhckhlbHBlci5pbml0KGMpO1xyXG4gICAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgaWYgKCF0aGlzLlNldHRpbmcuSXNNdWx0aVNlbGVjdCkge1xyXG4gICAgICAgICAgICB0aGlzLl9maWxlc1ZhbGlkYXRpb25IZWxwZXIubWF4RmlsZUNvdW50ID0gMTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5tYXhGaWxlQ291bnQgPSB0aGlzLl9maWxlc1ZhbGlkYXRpb25IZWxwZXIubWF4RmlsZUNvdW50O1xyXG4gICAgICAgIHRoaXMudmFsaWRFeHRlbnNpb24gPSBnZXRWYWxpZEV4dGVuc2lvbih0aGlzLlNldHRpbmcuVmFsaWRFeHRlbnNpb25zKTtcclxuICAgICAgICB0aGlzLl9zZXRGaWxlQ291bnQodGhpcy52YWx1ZSk7XHJcbiAgICB9XHJcbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgICAgICAvLyB0aGlzLnZhbHVlRXh0cmEgPSB7fTtcclxuICAgICAgICB0aGlzLmNvbnRleHQudW4oJ1Nob3dVcGxvYWRXaW5kb3cnLCB0aGlzLl9zaG93VXBsb2FkV2luZG93KTtcclxuICAgICAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xyXG4gICAgfVxyXG4gICAgb25Eb3dubG9hZEZpbGUoZmlsZTogRmlsZUF0dGFjaG1lbnRJbmZvKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKCFmaWxlLklzTmV3IHx8IGZpbGUuVXBsb2FkU3RhdGUgPT09ICdDb21wbGV0ZScgfHwgIWZpbGUuVXBsb2FkU3RhdGUpIHtcclxuICAgICAgICAgICAgdGhpcy5maXJlQ29udGV4dEV2ZW50KCdDb21tYW5kUmVxdWVzdCcsIHRoaXMuY29udGV4dCwgJ0Rvd25sb2FkJywgZmlsZS5JZCk7XHJcbiAgICAgICAgICAgIHRoaXMuZmlsZURvd25sb2FkaW5nID0gdHJ1ZTtcclxuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmZpbGVEb3dubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICB9LCA1MDApO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIG9uRmlsZURlbGV0ZWQoZmlsZUlkKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fZmlsZURlbGV0ZShmaWxlSWQpO1xyXG4gICAgfVxyXG4gICAgb25UZXJtaW5hdGUoZmlsZUF0dGFjaG1lbnQ6IEZpbGVBdHRhY2htZW50SW5mbyk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZmlyZUNvbnRleHRFdmVudCgnQ29tbWFuZFJlcXVlc3QnLCB0aGlzLmNvbnRleHQsICdEZWxldGUnLCBmaWxlQXR0YWNobWVudC5JZCk7XHJcbiAgICAgICAgdGhpcy5fbGluZWFySGVscGVyLmNhbmNlbChmaWxlQXR0YWNobWVudCk7XHJcbiAgICB9XHJcbiAgICBvbkZpbGVTZWxlY3Rpb24oZmlsZXM6IEZpbGVbXSk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX2xpbmVhckhlbHBlci51cGxvYWRUb1NlcnZlcihmaWxlcyk7XHJcbiAgICB9XHJcblxyXG4gICAgdHJhY2tCeUlkKGZpbGUsIGluZGV4KTogc3RyaW5nIHwgbnVtYmVyIHtcclxuICAgICAgICByZXR1cm4gZmlsZSA/IGZpbGUuSWQgOiBpbmRleDtcclxuICAgIH1cclxuICAgIHByb3RlY3RlZCByZXRyeShmaWxlQXR0YWNobWVudDogRmlsZUF0dGFjaG1lbnRJbmZvKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fbGluZWFySGVscGVyLnJldHJ5KGZpbGVBdHRhY2htZW50KTtcclxuICAgIH1cclxuICAgIHByb3RlY3RlZCBfc2V0VmFsdWUodmFsdWU6IGFueSk6IHZvaWQge1xyXG4gICAgICAgIHN1cGVyLl9zZXRWYWx1ZSh2YWx1ZSk7XHJcbiAgICAgICAgdGhpcy5fc2V0RmlsZUNvdW50KHZhbHVlKTtcclxuICAgIH1cclxuICAgIHByb3RlY3RlZCBfc2hvd1VwbG9hZFdpbmRvdygpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmZpbGVVcGxvYWRDb21wb25lbnQub3BlbigpO1xyXG4gICAgfVxyXG4gICAgcHJvdGVjdGVkIF9maWxlRGVsZXRlKGlkKTogdm9pZCB7XHJcbiAgICAgICAgY29uc3QgZmlsZUF0dGFjaG1lbnQgPSB0aGlzLnZhbHVlLmZpbmQoKGMpID0+IGMuSWQgPT09IGlkKTtcclxuICAgICAgICBpZiAoZmlsZUF0dGFjaG1lbnQpIHtcclxuICAgICAgICAgICAgdGhpcy5fZGVsZXRlRmlsZUF0dGFjaG1lbnQoZmlsZUF0dGFjaG1lbnQpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIHByb3RlY3RlZCBfZGVsZXRlRmlsZUF0dGFjaG1lbnQoZmlsZUF0dGFjaG1lbnQ6IEZpbGVBdHRhY2htZW50SW5mbyk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZmlyZUNvbnRleHRFdmVudCgnQ29tbWFuZFJlcXVlc3QnLCB0aGlzLmNvbnRleHQsICdEZWxldGUnLCBmaWxlQXR0YWNobWVudC5JZCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJvdGVjdGVkIF9zZXRMb2FkaW5nKGxvYWRpbmc6IGJvb2xlYW4pOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmxvYWRpbmcgPSBsb2FkaW5nO1xyXG4gICAgICAgIHRoaXMuX2Nkci5tYXJrRm9yQ2hlY2soKTtcclxuICAgIH1cclxuICAgIHByb3RlY3RlZCBfbmV3RmlsZVVwbG9hZGVkKG5ld0ZpbGVBdHRhY2htZW50OiBGaWxlQXR0YWNobWVudEluZm8pOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmZpcmVDb250ZXh0RXZlbnQoJ0NvbW1hbmRSZXF1ZXN0JywgdGhpcy5jb250ZXh0LCAnRmlsZVVwbG9hZCcsIG5ld0ZpbGVBdHRhY2htZW50KTtcclxuICAgIH1cclxuICAgIHByb3RlY3RlZCBfc2V0RmlsZUNvdW50KHZhbHVlKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fZmlsZUNvdW50U291cmNlLm5leHQodmFsdWUuZmlsdGVyKChjKSA9PiAhYy5Jc0RlbGV0ZWQpLmxlbmd0aCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbmludGVyZmFjZSBVcGxvYWRGaWxlUHJvcHMge1xyXG4gICAgRmlsZVVybD86IHN0cmluZztcclxuICAgIGNhbmNlbGF0aW9uJD86IFN1YmplY3Q8dm9pZD47XHJcbiAgICBiaW5hcnk/OiBhbnk7XHJcbiAgICBVcGxvYWRTdGF0ZT86IHN0cmluZztcclxuICAgIFByb2dyZXNzPzogbnVtYmVyO1xyXG4gICAgSXNJY29uPzogYm9vbGVhbjtcclxufVxyXG4iLCJAaWYgKHZhbHVlKSB7XHJcbjxkaXYgY2xhc3M9XCJ0b2tlbi1jb250YWluZXJcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJ0b2tlbi13cmFwcGVyXCI+XHJcbiAgICAgICAgQGZvciAoZmlsZSBvZiB2YWx1ZTsgdHJhY2sgdHJhY2tCeUlkKCRpbmRleCwgZmlsZSkpIHsgQGlmICghZmlsZS5Jc0RlbGV0ZWQpIHtcclxuICAgICAgICA8ZmQtcG9wb3ZlciAjcG9wb3Zlcj5cclxuICAgICAgICAgICAgPGZkLXBvcG92ZXItY29udHJvbD5cclxuICAgICAgICAgICAgICAgIDxmZC10b2tlbiAob25DbG9zZUNsaWNrKT1cIm9uRmlsZURlbGV0ZWQoZmlsZS5JZClcIiBbcmVhZE9ubHldPVwiKGRpc2FibGVPclJlYWRvbmx5JCB8IGFzeW5jKSEhXCJcclxuICAgICAgICAgICAgICAgICAgICA+e3sgZmlsZS5GaWxlTmFtZSB9fVxyXG4gICAgICAgICAgICAgICAgICAgIEBpZiAoZmlsZS5Jc05ldykgeyBAaWYgKHZhbHVlRXh0cmEkIHwgYXN5bmM7IGFzIHZhbHVlRXh0cmEpIHsgQGlmICh2YWx1ZUV4dHJhW2ZpbGUuSWRdLlVwbG9hZFN0YXRlXHJcbiAgICAgICAgICAgICAgICAgICAgIT09ICdDb21wbGV0ZScpIHtcclxuICAgICAgICAgICAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmZC1vYmplY3Qtc3RhdHVzXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtzdGF0dXNdPVwiZmlsZS5JZCB8IHVwbG9hZEZpbGVTdGF0dXM6IHZhbHVlRXh0cmFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwidmFsdWVFeHRyYVtmaWxlLklkXT8uVXBsb2FkU3RhdGUgfHwgJydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbdGl0bGVdPVwidmFsdWVFeHRyYVtmaWxlLklkXT8uVXBsb2FkU3RhdGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbYXJpYS1sYWJlbF09XCInRmlsZSBVcGxvYWQgU3RhdHVzIElzICcgKyB2YWx1ZUV4dHJhW2ZpbGUuSWRdPy5VcGxvYWRTdGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICB9IEBpZiAodmFsdWVFeHRyYVtmaWxlLklkXS5Qcm9ncmVzcykge1xyXG4gICAgICAgICAgICAgICAgICAgIDxmZC1vYmplY3QtbnVtYmVyXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtudW1iZXJdPVwidmFsdWVFeHRyYVtmaWxlLklkXS5Qcm9ncmVzcyB8fCAwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgdW5pdD1cIiVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdGF0dXM9XCJpbmZvcm1hdGl2ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgPjwvZmQtb2JqZWN0LW51bWJlcj5cclxuICAgICAgICAgICAgICAgICAgICB9IEBpZiAodmFsdWVFeHRyYVtmaWxlLklkXS5VcGxvYWRTdGF0ZSA9PT0gJ1VwbG9hZGluZycpIHtcclxuICAgICAgICAgICAgICAgICAgICA8ZmQtYnVzeS1pbmRpY2F0b3IgW2xvYWRpbmddPVwidHJ1ZVwiIFtzaXplXT1cIidzJ1wiPjwvZmQtYnVzeS1pbmRpY2F0b3I+XHJcbiAgICAgICAgICAgICAgICAgICAgfSB9IH1cclxuICAgICAgICAgICAgICAgIDwvZmQtdG9rZW4+XHJcbiAgICAgICAgICAgIDwvZmQtcG9wb3Zlci1jb250cm9sPlxyXG4gICAgICAgICAgICA8ZmQtcG9wb3Zlci1ib2R5PlxyXG4gICAgICAgICAgICAgICAgQGlmICh2YWx1ZUV4dHJhJCB8IGFzeW5jOyBhcyB2YWx1ZUV4dHJhKSB7IEBpZiAoIHZhbHVlRXh0cmFbZmlsZS5JZF0uVXBsb2FkU3RhdGUgIT09ICdFcnJvcicgfHxcclxuICAgICAgICAgICAgICAgIHZhbHVlRXh0cmFbZmlsZS5JZF0uVXBsb2FkU3RhdGUgPT09ICdDb21wbGV0ZScgKSB7XHJcbiAgICAgICAgICAgICAgICA8YnN1LWZpbGUtdmlld2VyLWNvbnRlbnRcclxuICAgICAgICAgICAgICAgICAgICBbZmlsZV09XCJmaWxlXCJcclxuICAgICAgICAgICAgICAgICAgICBbd2lkdGhdPVwiaXNNb2JpbGUgPyAnMTAwdncnIDogJzMwdncnXCJcclxuICAgICAgICAgICAgICAgICAgICBbY2FyZE1vZGVdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3Nob3dDb250ZW50XT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtzaG93Rm9vdGVyXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtkZXZpY2VTaXplXT1cIihkZXZpY2VTaXplJCB8IGFzeW5jKSB8fCAncydcIlxyXG4gICAgICAgICAgICAgICAgPjwvYnN1LWZpbGUtdmlld2VyLWNvbnRlbnQ+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGZkLXBvcG92ZXItYm9keS1mb290ZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGJzdS1iYXJzYS1iYXItZG93bmxvYWQtZmlsZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbaXNNb2JpbGVdPVwiaXNNb2JpbGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbcG9wb3Zlcl09XCJwb3BvdmVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2ZpbGVzXT1cIltmaWxlXVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtoaWRlRnVsbFNjcmVlbl09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgPjwvYnN1LWJhcnNhLWJhci1kb3dubG9hZC1maWxlPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8IS0tIDx1bCBmZC1saXN0PlxyXG4gICAgICAgICAgICAgICAgICAgIDxsaSBmZC1saXN0LWl0ZW0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGZkLWxpc3QtbGluayAoY2xpY2spPVwib25Eb3dubG9hZEZpbGUoZmlsZSlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGZkLWxpc3QtaWNvbiBnbHlwaD1cImRvd25sb2FkXCI+PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZmQtbGlzdC10aXRsZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyAnRG93bmxvYWQnIHwgYmJiVHJhbnNsYXRlIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmQtYnVzeS1pbmRpY2F0b3IgW2xvYWRpbmddPVwiZmlsZURvd25sb2FkaW5nXCIgW3NpemVdPVwiJ3MnXCI+PC9mZC1idXN5LWluZGljYXRvcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICA8L3VsPiAtLT5cclxuICAgICAgICAgICAgICAgIH0gfVxyXG4gICAgICAgICAgICA8L2ZkLXBvcG92ZXItYm9keT5cclxuICAgICAgICA8L2ZkLXBvcG92ZXI+XHJcbiAgICAgICAgfSB9XHJcbiAgICAgICAgPGRpdiBzdHlsZT1cImRpc3BsYXk6IGZsZXhcIj5cclxuICAgICAgICAgICAgQGlmIChsb2FkaW5nKSB7XHJcbiAgICAgICAgICAgIDxkaXYgc3R5bGU9XCJwb3NpdGlvbjogcmVsYXRpdmU7IHdpZHRoOiAzcmVtXCI+XHJcbiAgICAgICAgICAgICAgICA8YnN1LW1hc2sgW3NpemVdPVwiJ3MnXCIgc3R5bGU9XCJiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudFwiPjwvYnN1LW1hc2s+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICB9IEBpZiAoKGZpbGVDb3VudCQgfCBhc3luYykgfCBjYW5VcGxvYWRGaWxlOiBtYXhGaWxlQ291bnQ6KGRpc2FibGUkIHwgYXN5bmMpPT09dHJ1ZToocmVhZG9ubHkkIHxcclxuICAgICAgICAgICAgYXN5bmMpPT09dHJ1ZSkge1xyXG4gICAgICAgICAgICA8ZmQtZmlsZS11cGxvYWRlclxyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJmaWxlLWxpbmVhci11cGxvYWRcIlxyXG4gICAgICAgICAgICAgICAgZmQtdG9vbGJhci1pdGVtXHJcbiAgICAgICAgICAgICAgICBbaWRdPVwiaWRcIlxyXG4gICAgICAgICAgICAgICAgW25hbWVdPVwiJ2xpbmVhcl8nICsgaWRcIlxyXG4gICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidBdHRhY2hGaWxlJyB8IGJiYlRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICAgICAgICBbYnV0dG9uTGFiZWxdPVwiJ0F0dGFjaEZpbGUnIHwgYmJiVHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgICAgIFtidXR0b25BcmlhTGFiZWxdPVwiJ0F0dGFjaEZpbGUnIHwgYmJiVHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgICAgIFthY2NlcHRdPVwidmFsaWRFeHRlbnNpb25cIlxyXG4gICAgICAgICAgICAgICAgW211bHRpcGxlXT1cIm1heEZpbGVDb3VudCA+IDEgfHwgU2V0dGluZy5Jc011bHRpU2VsZWN0XCJcclxuICAgICAgICAgICAgICAgIChzZWxlY3RlZEZpbGVzQ2hhbmdlZCk9XCJvbkZpbGVTZWxlY3Rpb24oJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICBbY29udGVudERlbnNpdHldPVwiKGNvbnRlbnREZW5zaXR5JCB8IGFzeW5jKSEhXCJcclxuICAgICAgICAgICAgPjwvZmQtZmlsZS11cGxvYWRlcj5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PlxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, HostBinding, Self } from '@angular/core';
|
|
2
|
+
import { takeUntil, tap } from 'rxjs';
|
|
3
|
+
import { FormBaseComponent, FormPanelService, FindLayoutSettingFromLayout94, FindToolbarItem, BarsaApi } from 'barsa-novin-ray-core';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "barsa-novin-ray-core";
|
|
6
|
+
import * as i2 from "@angular/router";
|
|
7
|
+
import * as i3 from "@fundamental-ngx/core";
|
|
8
|
+
import * as i4 from "../fundamental-dynamic-form/fundamental-dynamic-form.component";
|
|
9
|
+
import * as i5 from "../barsa-simple-form/barsa-simple-form.component";
|
|
10
|
+
import * as i6 from "@angular/common";
|
|
11
|
+
export class UiFormPanelComponent extends FormBaseComponent {
|
|
12
|
+
constructor(_breadcrumbService, _portalService, _router, _el, _controlUiPipe, _formPanelService, _activatedRoute, _cdr, _contentDensityService) {
|
|
13
|
+
super(_breadcrumbService, _portalService, _router, _el, _controlUiPipe, _formPanelService, _activatedRoute, _cdr);
|
|
14
|
+
this._breadcrumbService = _breadcrumbService;
|
|
15
|
+
this._portalService = _portalService;
|
|
16
|
+
this._router = _router;
|
|
17
|
+
this._el = _el;
|
|
18
|
+
this._controlUiPipe = _controlUiPipe;
|
|
19
|
+
this._formPanelService = _formPanelService;
|
|
20
|
+
this._activatedRoute = _activatedRoute;
|
|
21
|
+
this._cdr = _cdr;
|
|
22
|
+
this._contentDensityService = _contentDensityService;
|
|
23
|
+
this._typeDefName = '';
|
|
24
|
+
this._viewName = '';
|
|
25
|
+
this.breadCrumbs$ = _breadcrumbService.breadcrumbs$;
|
|
26
|
+
this.contentDensity$ = _contentDensityService.contentDensity;
|
|
27
|
+
this.deviceSize$ = _portalService.deviceSize$;
|
|
28
|
+
this.dirValue$ = _portalService.dirValue$;
|
|
29
|
+
this.rtl$ = _portalService.rtl$;
|
|
30
|
+
this.canSend$ = this._formPanelService.canSend$;
|
|
31
|
+
this._formPanelService.mo$.subscribe((c) => (this._typeDefName = c?.$TypeDefName ?? ''));
|
|
32
|
+
this._formPanelService.view$.subscribe((c) => (this._viewName = c?.TypeViewName ?? ''));
|
|
33
|
+
}
|
|
34
|
+
ngOnInit() {
|
|
35
|
+
super.ngOnInit();
|
|
36
|
+
const parameters = this.parameters;
|
|
37
|
+
this.formContentMaxWidth = parameters?.FormContentMaxWidth;
|
|
38
|
+
this.hideFooter = parameters?.HideFooter;
|
|
39
|
+
this._formPanelService.hideFooter(this.hideFooter);
|
|
40
|
+
this.hideFooter$ = this._formPanelService.hideFooter$;
|
|
41
|
+
this.footerDesign = parameters?.FooterDesing$Caption;
|
|
42
|
+
this.hideAcceptAndCancel = this.parameters?.HideAcceptAndCancel;
|
|
43
|
+
this.extendToolbarItems$ = this.toolbarItems$.pipe(takeUntil(this._onDestroy$), tap((toolbarItems) => {
|
|
44
|
+
if (parameters?.FormLayoutItemsSetting) {
|
|
45
|
+
parameters.FormLayoutItemsSetting.MoDataList.forEach((setting) => {
|
|
46
|
+
const toolbarItem = FindToolbarItem(toolbarItems, setting.Title);
|
|
47
|
+
if (toolbarItem) {
|
|
48
|
+
BarsaApi.Common.Merger.FastMerge(toolbarItem, setting);
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
if (parameters?.SaveButtonCustomUi?.Selector) {
|
|
53
|
+
const saveItem = FindToolbarItem(toolbarItems, 'SaveAndClose', 'itemId');
|
|
54
|
+
BarsaApi.Common.Merger.FastMerge(saveItem, {
|
|
55
|
+
Data: { CustomUi: parameters.SaveButtonCustomUi }
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
if (parameters?.OkButtonCustomUi?.Selector) {
|
|
59
|
+
const okItem = FindToolbarItem(toolbarItems, 'Ok', 'itemId');
|
|
60
|
+
BarsaApi.Common.Merger.FastMerge(okItem, {
|
|
61
|
+
Data: { CustomUi: parameters.OkButtonCustomUi }
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
if (parameters?.CancelButtonCustomUi?.Selector) {
|
|
65
|
+
const cancelItem = FindToolbarItem(toolbarItems, 'Cancel', 'itemId');
|
|
66
|
+
BarsaApi.Common.Merger.FastMerge(cancelItem, {
|
|
67
|
+
Data: { CustomUi: parameters.CancelButtonCustomUi }
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
}));
|
|
71
|
+
this.extendLayout94$ = this.layout94$.pipe(takeUntil(this._onDestroy$), tap((layout94) => {
|
|
72
|
+
if (parameters?.FormLayoutItemsSetting) {
|
|
73
|
+
parameters.FormLayoutItemsSetting.MoDataList.forEach((setting) => {
|
|
74
|
+
const layoutItem = FindLayoutSettingFromLayout94(layout94, setting.Title);
|
|
75
|
+
if (layoutItem) {
|
|
76
|
+
if (layoutItem.Type === 'LayoutControlItem' && layoutItem.FieldUi) {
|
|
77
|
+
BarsaApi.Common.Merger.FastMerge(layoutItem.FieldUi.Setting, setting);
|
|
78
|
+
}
|
|
79
|
+
else {
|
|
80
|
+
BarsaApi.Common.Merger.FastMerge(layoutItem, setting);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
}));
|
|
86
|
+
this.fullscreen = parameters?.FullscreenDefault === true && !this.isModal;
|
|
87
|
+
}
|
|
88
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiFormPanelComponent, deps: [{ token: i1.BreadcrumbService }, { token: i1.PortalService }, { token: i2.Router }, { token: i0.ElementRef }, { token: i1.ControlUiPipe }, { token: i1.FormPanelService, self: true }, { token: i2.ActivatedRoute }, { token: i0.ChangeDetectorRef }, { token: i3.ContentDensityService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
89
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: UiFormPanelComponent, selector: "bsu-ui-form-panel", host: { properties: { "attr.typeDefName": "this._typeDefName", "attr.viewName": "this._viewName" } }, providers: [FormPanelService], usesInheritance: true, ngImport: i0, template: "@if (isSearchPanel || (isSimple$ | async) || isSubForm || isModal || isFormReport || parameters?.IsSimple) {\r\n<bsu-barsa-simple-form\r\n [cssStyle]=\"parameters?.CssStyles\"\r\n [canSend]=\"(canSend$ | async) === true\"\r\n [formVisibilityStatus]=\"formVisibilityStatus\"\r\n [removeContentPadding]=\"(headerRemoveContentPadding$ | async)!!\"\r\n [breadCrumbs]=\"breadCrumbs$ | async\"\r\n [description]=\"(headerDescription$ | async)!!\"\r\n [hideClose]=\"(hideClose$ | async)!!\"\r\n [hideTitle]=\"(hideTitle$ | async)!!\"\r\n [hidePin]=\"(hidePin$ | async)!!\"\r\n [title]=\"(title$ | async)!!\"\r\n [isModal]=\"isModal\"\r\n [formContentMaxWidth]=\"formContentMaxWidth\"\r\n [subtitle]=\"(headerSubtitle$ | async)!!\"\r\n [toolbarItems]=\"extendToolbarItems$ | async | tlbButtons: 'inFooter':false\"\r\n [layoutActions]=\"extendToolbarItems$ | async | tlbButtons: 'inFooter':true | hideAcceptCancel: hideAcceptAndCancel\"\r\n [toolbarVisible]=\"(toolbarVisible$ | async)!!\"\r\n [facetList]=\"(headerLayout$ | async)?.FacetList2\"\r\n [parameters]=\"parameters\"\r\n [workflowPanelUi]=\"workflowPanelUi$ | async\"\r\n [workflowButtons]=\"(workflowButtons$ | async)!!\"\r\n [isMobile]=\"isMobile\"\r\n [layout94]=\"extendLayout94$ | async\"\r\n [layoutGridCol]=\"+(parameters?.LayoutGridCol || 12)\"\r\n [colLg]=\"+(parameters?.ColLg || 0)\"\r\n [colXl]=\"+(parameters?.ColXl || 0)\"\r\n [colMd]=\"+(parameters?.ColMd || 0)\"\r\n [hideFooter]=\"(hideFooter$ | async) === true\"\r\n [rtl]=\"(rtl$ | async)!!\"\r\n [mask]=\"(mask$ | async)!!\"\r\n [mo]=\"(mo$ | async)!!\"\r\n [dirValue]=\"(dirValue$ | async)!!\"\r\n [deviceSize]=\"(deviceSize$ | async)!!\"\r\n [contentDensity]=\"(contentDensity$ | async)!!\"\r\n [modernTabs]=\"(modernTabs$ | async)!!\"\r\n [avatar]=\"(avatar$ | async)!!\"\r\n [circleAvatar]=\"(circleAvatar$ | async)!!\"\r\n [fieldDict]=\"(fieldDict$ | async)!!\"\r\n [landscape]=\"(landscape$ | async) === true\"\r\n [standalone]=\"(standalone$ | async) === true\"\r\n (close)=\"onClose()\"\r\n (toolbarClick)=\"onToolbarClick($event)\"\r\n [contentIsPage]=\"parameters?.ContentIsPage === true\"\r\n (workflowChoiceClick)=\"onWorkflowChoiceClick($event)\"\r\n></bsu-barsa-simple-form>\r\n} @else {\r\n<bsu-fundamental-dynamic-form\r\n [cssStyle]=\"parameters?.CssStyles\"\r\n [style.position]=\"(mask$ | async) ? 'relative' : null\"\r\n [workflowButtons]=\"(workflowButtons$ | async)!!\"\r\n [canSend]=\"(canSend$ | async) === true\"\r\n [formVisibilityStatus]=\"formVisibilityStatus\"\r\n [removeContentPadding]=\"(headerRemoveContentPadding$ | async)!!\"\r\n [breadCrumbs]=\"breadCrumbs$ | async\"\r\n [description]=\"(headerDescription$ | async)!!\"\r\n [hideClose]=\"(hideClose$ | async)!!\"\r\n [hideTitle]=\"(hideTitle$ | async)!!\"\r\n [hidePin]=\"(hidePin$ | async)!!\"\r\n [title]=\"(title$ | async)!!\"\r\n [subtitle]=\"(headerSubtitle$ | async)!!\"\r\n [toolbarItems]=\"extendToolbarItems$ | async | tlbButtons: 'inFooter':false\"\r\n [layoutActions]=\"extendToolbarItems$ | async | tlbButtons: 'inFooter':true | hideAcceptCancel: hideAcceptAndCancel\"\r\n [toolbarVisible]=\"(toolbarVisible$ | async)!!\"\r\n [facetList]=\"(headerLayout$ | async)?.FacetList2\"\r\n [formContentMaxWidth]=\"formContentMaxWidth\"\r\n [parameters]=\"parameters\"\r\n [fullscreen]=\"fullscreen\"\r\n [hideFooter]=\"(hideFooter$ | async) === true\"\r\n [workflowPanelUi]=\"workflowPanelUi$ | async\"\r\n [isMobile]=\"isMobile\"\r\n [layout94]=\"extendLayout94$ | async\"\r\n [rtl]=\"(rtl$ | async)!!\"\r\n [layoutGridCol]=\"+(parameters?.LayoutGridCol || 12)\"\r\n [colLg]=\"+(parameters?.ColLg || 0)\"\r\n [colXl]=\"+(parameters?.ColXl || 0)\"\r\n [colMd]=\"+(parameters?.ColMd || 0)\"\r\n [footerDesign]=\"footerDesign\"\r\n [mask]=\"(mask$ | async)!!\"\r\n [mo]=\"(mo$ | async)!!\"\r\n [dirValue]=\"(dirValue$ | async)!!\"\r\n [deviceSize]=\"(deviceSize$ | async)!!\"\r\n [contentDensity]=\"(contentDensity$ | async)!!\"\r\n [modernTabs]=\"(modernTabs$ | async)!!\"\r\n [avatar]=\"(avatar$ | async)!!\"\r\n [circleAvatar]=\"(circleAvatar$ | async)!!\"\r\n [fieldDict]=\"(fieldDict$ | async)!!\"\r\n [landscape]=\"(landscape$ | async) === true\"\r\n [standalone]=\"(standalone$ | async) === true\"\r\n (fullscreenRequest)=\"onFullscreen()\"\r\n (close)=\"onClose()\"\r\n (toolbarClick)=\"onToolbarClick($event)\"\r\n [contentIsPage]=\"parameters?.ContentIsPage === true\"\r\n (workflowChoiceClick)=\"onWorkflowChoiceClick($event)\"\r\n></bsu-fundamental-dynamic-form>\r\n}\r\n", styles: [":host{display:block;width:100%;min-height:100%}:host.fullscreen{position:fixed;top:0}.workflow-buttons{display:flex;margin-top:5px;padding:5px}\n"], dependencies: [{ kind: "directive", type: i1.DynamicStyleDirective, selector: "[cssStyle]", inputs: ["cssStyle"] }, { kind: "component", type: i4.FundamentalDynamicFormComponent, selector: "bsu-fundamental-dynamic-form", inputs: ["breadCrumbs", "toolbarVisible", "toolbarItems", "layoutActions", "layout94", "parameters", "workflowPanelUi", "context", "title", "subtitle", "description", "facetList", "fieldDict", "removeHeaderBorder", "removeContentPadding", "isMobile", "mo", "avatar", "circleAvatar", "rtl", "hideFooter", "hideTitle", "hideClose", "hidePin", "fullscreen", "mask", "canSend", "contentIsPage", "contentDensity", "deviceSize", "dirValue", "landscape", "standalone", "modernTabs", "formVisibilityStatus", "layoutGridCol", "colLg", "colXl", "colMd", "footerDesign", "formContentMaxWidth", "workflowButtons"], outputs: ["toolbarClick", "workflowChoiceClick", "close", "fullscreenRequest"] }, { kind: "component", type: i5.BarsaSimpleFormComponent, selector: "bsu-barsa-simple-form", inputs: ["breadCrumbs", "toolbarVisible", "toolbarItems", "layoutActions", "layout94", "parameters", "workflowPanelUi", "context", "title", "subtitle", "description", "facetList", "fieldDict", "removeHeaderBorder", "removeContentPadding", "isMobile", "mo", "avatar", "rtl", "isModal", "hideTitle", "hideClose", "hidePin", "mask", "canSend", "contentIsPage", "contentDensity", "deviceSize", "dirValue", "landscape", "standalone", "modernTabs", "workflowButtons", "layoutGridCol", "colLg", "colXl", "colMd", "formContentMaxWidth", "formVisibilityStatus"], outputs: ["toolbarClick", "workflowChoiceClick", "close"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.TlbButtonsPipe, name: "tlbButtons" }, { kind: "pipe", type: i1.HideAcceptCancelButtonsPipe, name: "hideAcceptCancel" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
90
|
+
}
|
|
91
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiFormPanelComponent, decorators: [{
|
|
92
|
+
type: Component,
|
|
93
|
+
args: [{ selector: 'bsu-ui-form-panel', changeDetection: ChangeDetectionStrategy.OnPush, providers: [FormPanelService], standalone: false, template: "@if (isSearchPanel || (isSimple$ | async) || isSubForm || isModal || isFormReport || parameters?.IsSimple) {\r\n<bsu-barsa-simple-form\r\n [cssStyle]=\"parameters?.CssStyles\"\r\n [canSend]=\"(canSend$ | async) === true\"\r\n [formVisibilityStatus]=\"formVisibilityStatus\"\r\n [removeContentPadding]=\"(headerRemoveContentPadding$ | async)!!\"\r\n [breadCrumbs]=\"breadCrumbs$ | async\"\r\n [description]=\"(headerDescription$ | async)!!\"\r\n [hideClose]=\"(hideClose$ | async)!!\"\r\n [hideTitle]=\"(hideTitle$ | async)!!\"\r\n [hidePin]=\"(hidePin$ | async)!!\"\r\n [title]=\"(title$ | async)!!\"\r\n [isModal]=\"isModal\"\r\n [formContentMaxWidth]=\"formContentMaxWidth\"\r\n [subtitle]=\"(headerSubtitle$ | async)!!\"\r\n [toolbarItems]=\"extendToolbarItems$ | async | tlbButtons: 'inFooter':false\"\r\n [layoutActions]=\"extendToolbarItems$ | async | tlbButtons: 'inFooter':true | hideAcceptCancel: hideAcceptAndCancel\"\r\n [toolbarVisible]=\"(toolbarVisible$ | async)!!\"\r\n [facetList]=\"(headerLayout$ | async)?.FacetList2\"\r\n [parameters]=\"parameters\"\r\n [workflowPanelUi]=\"workflowPanelUi$ | async\"\r\n [workflowButtons]=\"(workflowButtons$ | async)!!\"\r\n [isMobile]=\"isMobile\"\r\n [layout94]=\"extendLayout94$ | async\"\r\n [layoutGridCol]=\"+(parameters?.LayoutGridCol || 12)\"\r\n [colLg]=\"+(parameters?.ColLg || 0)\"\r\n [colXl]=\"+(parameters?.ColXl || 0)\"\r\n [colMd]=\"+(parameters?.ColMd || 0)\"\r\n [hideFooter]=\"(hideFooter$ | async) === true\"\r\n [rtl]=\"(rtl$ | async)!!\"\r\n [mask]=\"(mask$ | async)!!\"\r\n [mo]=\"(mo$ | async)!!\"\r\n [dirValue]=\"(dirValue$ | async)!!\"\r\n [deviceSize]=\"(deviceSize$ | async)!!\"\r\n [contentDensity]=\"(contentDensity$ | async)!!\"\r\n [modernTabs]=\"(modernTabs$ | async)!!\"\r\n [avatar]=\"(avatar$ | async)!!\"\r\n [circleAvatar]=\"(circleAvatar$ | async)!!\"\r\n [fieldDict]=\"(fieldDict$ | async)!!\"\r\n [landscape]=\"(landscape$ | async) === true\"\r\n [standalone]=\"(standalone$ | async) === true\"\r\n (close)=\"onClose()\"\r\n (toolbarClick)=\"onToolbarClick($event)\"\r\n [contentIsPage]=\"parameters?.ContentIsPage === true\"\r\n (workflowChoiceClick)=\"onWorkflowChoiceClick($event)\"\r\n></bsu-barsa-simple-form>\r\n} @else {\r\n<bsu-fundamental-dynamic-form\r\n [cssStyle]=\"parameters?.CssStyles\"\r\n [style.position]=\"(mask$ | async) ? 'relative' : null\"\r\n [workflowButtons]=\"(workflowButtons$ | async)!!\"\r\n [canSend]=\"(canSend$ | async) === true\"\r\n [formVisibilityStatus]=\"formVisibilityStatus\"\r\n [removeContentPadding]=\"(headerRemoveContentPadding$ | async)!!\"\r\n [breadCrumbs]=\"breadCrumbs$ | async\"\r\n [description]=\"(headerDescription$ | async)!!\"\r\n [hideClose]=\"(hideClose$ | async)!!\"\r\n [hideTitle]=\"(hideTitle$ | async)!!\"\r\n [hidePin]=\"(hidePin$ | async)!!\"\r\n [title]=\"(title$ | async)!!\"\r\n [subtitle]=\"(headerSubtitle$ | async)!!\"\r\n [toolbarItems]=\"extendToolbarItems$ | async | tlbButtons: 'inFooter':false\"\r\n [layoutActions]=\"extendToolbarItems$ | async | tlbButtons: 'inFooter':true | hideAcceptCancel: hideAcceptAndCancel\"\r\n [toolbarVisible]=\"(toolbarVisible$ | async)!!\"\r\n [facetList]=\"(headerLayout$ | async)?.FacetList2\"\r\n [formContentMaxWidth]=\"formContentMaxWidth\"\r\n [parameters]=\"parameters\"\r\n [fullscreen]=\"fullscreen\"\r\n [hideFooter]=\"(hideFooter$ | async) === true\"\r\n [workflowPanelUi]=\"workflowPanelUi$ | async\"\r\n [isMobile]=\"isMobile\"\r\n [layout94]=\"extendLayout94$ | async\"\r\n [rtl]=\"(rtl$ | async)!!\"\r\n [layoutGridCol]=\"+(parameters?.LayoutGridCol || 12)\"\r\n [colLg]=\"+(parameters?.ColLg || 0)\"\r\n [colXl]=\"+(parameters?.ColXl || 0)\"\r\n [colMd]=\"+(parameters?.ColMd || 0)\"\r\n [footerDesign]=\"footerDesign\"\r\n [mask]=\"(mask$ | async)!!\"\r\n [mo]=\"(mo$ | async)!!\"\r\n [dirValue]=\"(dirValue$ | async)!!\"\r\n [deviceSize]=\"(deviceSize$ | async)!!\"\r\n [contentDensity]=\"(contentDensity$ | async)!!\"\r\n [modernTabs]=\"(modernTabs$ | async)!!\"\r\n [avatar]=\"(avatar$ | async)!!\"\r\n [circleAvatar]=\"(circleAvatar$ | async)!!\"\r\n [fieldDict]=\"(fieldDict$ | async)!!\"\r\n [landscape]=\"(landscape$ | async) === true\"\r\n [standalone]=\"(standalone$ | async) === true\"\r\n (fullscreenRequest)=\"onFullscreen()\"\r\n (close)=\"onClose()\"\r\n (toolbarClick)=\"onToolbarClick($event)\"\r\n [contentIsPage]=\"parameters?.ContentIsPage === true\"\r\n (workflowChoiceClick)=\"onWorkflowChoiceClick($event)\"\r\n></bsu-fundamental-dynamic-form>\r\n}\r\n", styles: [":host{display:block;width:100%;min-height:100%}:host.fullscreen{position:fixed;top:0}.workflow-buttons{display:flex;margin-top:5px;padding:5px}\n"] }]
|
|
94
|
+
}], ctorParameters: () => [{ type: i1.BreadcrumbService }, { type: i1.PortalService }, { type: i2.Router }, { type: i0.ElementRef }, { type: i1.ControlUiPipe }, { type: i1.FormPanelService, decorators: [{
|
|
95
|
+
type: Self
|
|
96
|
+
}] }, { type: i2.ActivatedRoute }, { type: i0.ChangeDetectorRef }, { type: i3.ContentDensityService }], propDecorators: { _typeDefName: [{
|
|
97
|
+
type: HostBinding,
|
|
98
|
+
args: ['attr.typeDefName']
|
|
99
|
+
}], _viewName: [{
|
|
100
|
+
type: HostBinding,
|
|
101
|
+
args: ['attr.viewName']
|
|
102
|
+
}] } });
|
|
103
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktZm9ybS1wYW5lbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1zYXAtdWkvc3JjL2xpYi91aS1mb3JtLXBhbmVsL3VpLWZvcm0tcGFuZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktZm9ybS1wYW5lbC91aS1mb3JtLXBhbmVsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFFdkIsU0FBUyxFQUVULFdBQVcsRUFFWCxJQUFJLEVBQ1AsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFjLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHbEQsT0FBTyxFQUNILGlCQUFpQixFQUdqQixnQkFBZ0IsRUFHaEIsNkJBQTZCLEVBQzdCLGVBQWUsRUFDZixRQUFRLEVBSVgsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7Ozs7QUFVOUIsTUFBTSxPQUFPLG9CQUFxQixTQUFRLGlCQUFpQjtJQWN2RCxZQUNjLGtCQUFxQyxFQUNyQyxjQUE2QixFQUM3QixPQUFlLEVBQ2YsR0FBZSxFQUNmLGNBQTZCLEVBQ3JCLGlCQUFtQyxFQUMzQyxlQUErQixFQUMvQixJQUF1QixFQUN2QixzQkFBNkM7UUFFdkQsS0FBSyxDQUNELGtCQUFrQixFQUNsQixjQUFjLEVBQ2QsT0FBTyxFQUNQLEdBQUcsRUFDSCxjQUFjLEVBQ2QsaUJBQWlCLEVBQ2pCLGVBQWUsRUFDZixJQUFJLENBQ1AsQ0FBQztRQW5CUSx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW1CO1FBQ3JDLG1CQUFjLEdBQWQsY0FBYyxDQUFlO1FBQzdCLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFDZixRQUFHLEdBQUgsR0FBRyxDQUFZO1FBQ2YsbUJBQWMsR0FBZCxjQUFjLENBQWU7UUFDckIsc0JB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LElBQUksVUFBVSxDQUFDLElBQUksS0FBSyxtQkFBbUIsSUFBSSxVQUFVLENBQUMsT0FBTyxFQUFFLENBQUM7NEJBQ2hFLFFBQVEsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQzt3QkFDMUUsQ0FBQzs2QkFBTSxDQUFDOzRCQUNKLFFBQVEsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUM7d0JBQzFELENBQUM7b0JBQ0wsQ0FBQztnQkFDTCxDQUFDLENBQUMsQ0FBQztZQUNQLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FDTCxDQUFDO1FBRUYsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLEVBQUUsaUJBQWlCLEtBQUssSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUM5RSxDQUFDOytHQXhHUSxvQkFBb0I7bUdBQXBCLG9CQUFvQixrSkFIbEIsQ0FBQyxnQkFBZ0IsQ0FBQyxpRENqQ2pDLDJwSkFnR0E7OzRGRDVEYSxvQkFBb0I7a0JBUmhDLFNBQVM7K0JBQ0ksbUJBQW1CLG1CQUdaLHVCQUF1QixDQUFDLE1BQU0sYUFDcEMsQ0FBQyxnQkFBZ0IsQ0FBQyxjQUNqQixLQUFLOzswQkFzQlosSUFBSTswSUFuQndCLFlBQVk7c0JBQTVDLFdBQVc7dUJBQUMsa0JBQWtCO2dCQUNELFNBQVM7c0JBQXRDLFdBQVc7dUJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICAgIENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgQ29tcG9uZW50LFxyXG4gICAgRWxlbWVudFJlZixcclxuICAgIEhvc3RCaW5kaW5nLFxyXG4gICAgT25Jbml0LFxyXG4gICAgU2VsZlxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgdGFrZVVudGlsLCB0YXAgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQmFyRGVzaWduVHlwZSwgQ29udGVudERlbnNpdHksIENvbnRlbnREZW5zaXR5U2VydmljZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZSc7XHJcblxyXG5pbXBvcnQge1xyXG4gICAgRm9ybUJhc2VDb21wb25lbnQsXHJcbiAgICBQb3J0YWxTZXJ2aWNlLFxyXG4gICAgQnJlYWRDcnVtYkluZm8sXHJcbiAgICBGb3JtUGFuZWxTZXJ2aWNlLFxyXG4gICAgQnJlYWRjcnVtYlNlcnZpY2UsXHJcbiAgICBDb250cm9sVWlQaXBlLFxyXG4gICAgRmluZExheW91dFNldHRpbmdGcm9tTGF5b3V0OTQsXHJcbiAgICBGaW5kVG9vbGJhckl0ZW0sXHJcbiAgICBCYXJzYUFwaSxcclxuICAgIE1ldGFvYmplY3REYXRhTW9kZWwsXHJcbiAgICBFanJheU9sZ28sXHJcbiAgICBNb0ZvclJlcG9ydE1vZGVsXHJcbn0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2JzdS11aS1mb3JtLXBhbmVsJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi91aS1mb3JtLXBhbmVsLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL3VpLWZvcm0tcGFuZWwuY29tcG9uZW50LnNjc3MnXSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gICAgcHJvdmlkZXJzOiBbRm9ybVBhbmVsU2VydmljZV0sXHJcbiAgICBzdGFuZGFsb25lOiBmYWxzZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVWlGb3JtUGFuZWxDb21wb25lbnQgZXh0ZW5kcyBGb3JtQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIudHlwZURlZk5hbWUnKSBfdHlwZURlZk5hbWUgPSAnJztcclxuICAgIEBIb3N0QmluZGluZygnYXR0ci52aWV3TmFtZScpIF92aWV3TmFtZSA9ICcnO1xyXG5cclxuICAgIGJyZWFkQ3J1bWJzJDogT2JzZXJ2YWJsZTxCcmVhZENydW1iSW5mb1tdPjtcclxuICAgIGNvbnRlbnREZW5zaXR5JDogT2JzZXJ2YWJsZTxDb250ZW50RGVuc2l0eT47XHJcbiAgICBjYW5TZW5kJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcclxuICAgIGhpZGVGb290ZXIkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xyXG4gICAgZXh0ZW5kTGF5b3V0OTQkOiBPYnNlcnZhYmxlPGFueT47XHJcbiAgICBwYXJhbWV0ZXJzOiBGb3JtUGFuZWxTZXR0aW5nO1xyXG4gICAgZm9ybUNvbnRlbnRNYXhXaWR0aDogbnVtYmVyO1xyXG4gICAgZm9vdGVyRGVzaWduOiBCYXJEZXNpZ25UeXBlO1xyXG4gICAgaGlkZUZvb3RlcjogYm9vbGVhbjtcclxuICAgIGhpZGVBY2NlcHRBbmRDYW5jZWw6IGJvb2xlYW47XHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcm90ZWN0ZWQgX2JyZWFkY3J1bWJTZXJ2aWNlOiBCcmVhZGNydW1iU2VydmljZSxcclxuICAgICAgICBwcm90ZWN0ZWQgX3BvcnRhbFNlcnZpY2U6IFBvcnRhbFNlcnZpY2UsXHJcbiAgICAgICAgcHJvdGVjdGVkIF9yb3V0ZXI6IFJvdXRlcixcclxuICAgICAgICBwcm90ZWN0ZWQgX2VsOiBFbGVtZW50UmVmLFxyXG4gICAgICAgIHByb3RlY3RlZCBfY29udHJvbFVpUGlwZTogQ29udHJvbFVpUGlwZSxcclxuICAgICAgICBAU2VsZigpIHByb3RlY3RlZCBfZm9ybVBhbmVsU2VydmljZTogRm9ybVBhbmVsU2VydmljZSxcclxuICAgICAgICBwcm90ZWN0ZWQgX2FjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcclxuICAgICAgICBwcm90ZWN0ZWQgX2NkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICAgICAgcHJvdGVjdGVkIF9jb250ZW50RGVuc2l0eVNlcnZpY2U6IENvbnRlbnREZW5zaXR5U2VydmljZVxyXG4gICAgKSB7XHJcbiAgICAgICAgc3VwZXIoXHJcbiAgICAgICAgICAgIF9icmVhZGNydW1iU2VydmljZSxcclxuICAgICAgICAgICAgX3BvcnRhbFNlcnZpY2UsXHJcbiAgICAgICAgICAgIF9yb3V0ZXIsXHJcbiAgICAgICAgICAgIF9lbCxcclxuICAgICAgICAgICAgX2NvbnRyb2xVaVBpcGUsXHJcbiAgICAgICAgICAgIF9mb3JtUGFuZWxTZXJ2aWNlLFxyXG4gICAgICAgICAgICBfYWN0aXZhdGVkUm91dGUsXHJcbiAgICAgICAgICAgIF9jZHJcclxuICAgICAgICApO1xyXG4gICAgICAgIHRoaXMuYnJlYWRDcnVtYnMkID0gX2JyZWFkY3J1bWJTZXJ2aWNlLmJyZWFkY3J1bWJzJDtcclxuICAgICAgICB0aGlzLmNvbnRlbnREZW5zaXR5JCA9IF9jb250ZW50RGVuc2l0eVNlcnZpY2UuY29udGVudERlbnNpdHk7XHJcbiAgICAgICAgdGhpcy5kZXZpY2VTaXplJCA9IF9wb3J0YWxTZXJ2aWNlLmRldmljZVNpemUkO1xyXG4gICAgICAgIHRoaXMuZGlyVmFsdWUkID0gX3BvcnRhbFNlcnZpY2UuZGlyVmFsdWUkO1xyXG4gICAgICAgIHRoaXMucnRsJCA9IF9wb3J0YWxTZXJ2aWNlLnJ0bCQ7XHJcbiAgICAgICAgdGhpcy5jYW5TZW5kJCA9IHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UuY2FuU2VuZCQ7XHJcblxyXG4gICAgICAgIHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UubW8kLnN1YnNjcmliZSgoYykgPT4gKHRoaXMuX3R5cGVEZWZOYW1lID0gYz8uJFR5cGVEZWZOYW1lID8/ICcnKSk7XHJcbiAgICAgICAgdGhpcy5fZm9ybVBhbmVsU2VydmljZS52aWV3JC5zdWJzY3JpYmUoKGMpID0+ICh0aGlzLl92aWV3TmFtZSA9IGM/LlR5cGVWaWV3TmFtZSA/PyAnJykpO1xyXG4gICAgfVxyXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcclxuICAgICAgICBjb25zdCBwYXJhbWV0ZXJzID0gdGhpcy5wYXJhbWV0ZXJzO1xyXG4gICAgICAgIHRoaXMuZm9ybUNvbnRlbnRNYXhXaWR0aCA9IHBhcmFtZXRlcnM/LkZvcm1Db250ZW50TWF4V2lkdGg7XHJcbiAgICAgICAgdGhpcy5oaWRlRm9vdGVyID0gcGFyYW1ldGVycz8uSGlkZUZvb3RlcjtcclxuICAgICAgICB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLmhpZGVGb290ZXIodGhpcy5oaWRlRm9vdGVyKTtcclxuICAgICAgICB0aGlzLmhpZGVGb290ZXIkID0gdGhpcy5fZm9ybVBhbmVsU2VydmljZS5oaWRlRm9vdGVyJDtcclxuICAgICAgICB0aGlzLmZvb3RlckRlc2lnbiA9IHBhcmFtZXRlcnM/LkZvb3RlckRlc2luZyRDYXB0aW9uO1xyXG4gICAgICAgIHRoaXMuaGlkZUFjY2VwdEFuZENhbmNlbCA9IHRoaXMucGFyYW1ldGVycz8uSGlkZUFjY2VwdEFuZENhbmNlbDtcclxuICAgICAgICB0aGlzLmV4dGVuZFRvb2xiYXJJdGVtcyQgPSB0aGlzLnRvb2xiYXJJdGVtcyQucGlwZShcclxuICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpLFxyXG4gICAgICAgICAgICB0YXAoKHRvb2xiYXJJdGVtcykgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKHBhcmFtZXRlcnM/LkZvcm1MYXlvdXRJdGVtc1NldHRpbmcpIHtcclxuICAgICAgICAgICAgICAgICAgICBwYXJhbWV0ZXJzLkZvcm1MYXlvdXRJdGVtc1NldHRpbmcuTW9EYXRhTGlzdC5mb3JFYWNoKChzZXR0aW5nKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHRvb2xiYXJJdGVtID0gRmluZFRvb2xiYXJJdGVtKHRvb2xiYXJJdGVtcywgc2V0dGluZy5UaXRsZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0b29sYmFySXRlbSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQmFyc2FBcGkuQ29tbW9uLk1lcmdlci5GYXN0TWVyZ2UodG9vbGJhckl0ZW0sIHNldHRpbmcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBpZiAocGFyYW1ldGVycz8uU2F2ZUJ1dHRvbkN1c3RvbVVpPy5TZWxlY3Rvcikge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHNhdmVJdGVtID0gRmluZFRvb2xiYXJJdGVtKHRvb2xiYXJJdGVtcywgJ1NhdmVBbmRDbG9zZScsICdpdGVtSWQnKTtcclxuICAgICAgICAgICAgICAgICAgICBCYXJzYUFwaS5Db21tb24uTWVyZ2VyLkZhc3RNZXJnZShzYXZlSXRlbSwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBEYXRhOiB7IEN1c3RvbVVpOiBwYXJhbWV0ZXJzLlNhdmVCdXR0b25DdXN0b21VaSB9XHJcbiAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBpZiAocGFyYW1ldGVycz8uT2tCdXR0b25DdXN0b21VaT8uU2VsZWN0b3IpIHtcclxuICAgICAgICAgICAgICAgICAgICBjb25zdCBva0l0ZW0gPSBGaW5kVG9vbGJhckl0ZW0odG9vbGJhckl0ZW1zLCAnT2snLCAnaXRlbUlkJyk7XHJcbiAgICAgICAgICAgICAgICAgICAgQmFyc2FBcGkuQ29tbW9uLk1lcmdlci5GYXN0TWVyZ2Uob2tJdGVtLCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIERhdGE6IHsgQ3VzdG9tVWk6IHBhcmFtZXRlcnMuT2tCdXR0b25DdXN0b21VaSB9XHJcbiAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBpZiAocGFyYW1ldGVycz8uQ2FuY2VsQnV0dG9uQ3VzdG9tVWk/LlNlbGVjdG9yKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgY2FuY2VsSXRlbSA9IEZpbmRUb29sYmFySXRlbSh0b29sYmFySXRlbXMsICdDYW5jZWwnLCAnaXRlbUlkJyk7XHJcbiAgICAgICAgICAgICAgICAgICAgQmFyc2FBcGkuQ29tbW9uLk1lcmdlci5GYXN0TWVyZ2UoY2FuY2VsSXRlbSwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBEYXRhOiB7IEN1c3RvbVVpOiBwYXJhbWV0ZXJzLkNhbmNlbEJ1dHRvbkN1c3RvbVVpIH1cclxuICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSlcclxuICAgICAgICApO1xyXG4gICAgICAgIHRoaXMuZXh0ZW5kTGF5b3V0OTQkID0gdGhpcy5sYXlvdXQ5NCQucGlwZShcclxuICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpLFxyXG4gICAgICAgICAgICB0YXAoKGxheW91dDk0KSA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZiAocGFyYW1ldGVycz8uRm9ybUxheW91dEl0ZW1zU2V0dGluZykge1xyXG4gICAgICAgICAgICAgICAgICAgIHBhcmFtZXRlcnMuRm9ybUxheW91dEl0ZW1zU2V0dGluZy5Nb0RhdGFMaXN0LmZvckVhY2goKHNldHRpbmcpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbGF5b3V0SXRlbSA9IEZpbmRMYXlvdXRTZXR0aW5nRnJvbUxheW91dDk0KGxheW91dDk0LCBzZXR0aW5nLlRpdGxlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGxheW91dEl0ZW0pIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChsYXlvdXRJdGVtLlR5cGUgPT09ICdMYXlvdXRDb250cm9sSXRlbScgJiYgbGF5b3V0SXRlbS5GaWVsZFVpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQmFyc2FBcGkuQ29tbW9uLk1lcmdlci5GYXN0TWVyZ2UobGF5b3V0SXRlbS5GaWVsZFVpLlNldHRpbmcsIHNldHRpbmcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBCYXJzYUFwaS5Db21tb24uTWVyZ2VyLkZhc3RNZXJnZShsYXlvdXRJdGVtLCBzZXR0aW5nKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICk7XHJcblxyXG4gICAgICAgIHRoaXMuZnVsbHNjcmVlbiA9IHBhcmFtZXRlcnM/LkZ1bGxzY3JlZW5EZWZhdWx0ID09PSB0cnVlICYmICF0aGlzLmlzTW9kYWw7XHJcbiAgICB9XHJcbn1cclxuaW50ZXJmYWNlIEZvcm1QYW5lbFNldHRpbmcgZXh0ZW5kcyBNZXRhb2JqZWN0RGF0YU1vZGVsIHtcclxuICAgIExheW91dENvbXBvbmVudDogRWpyYXlPbGdvO1xyXG4gICAgSGVhZGVyQ29tcG9uZW50OiBFanJheU9sZ287XHJcbiAgICBGb290ZXJDb21wb25lbnQ6IEVqcmF5T2xnbztcclxuICAgIFNhdmVCdXR0b25DdXN0b21VaTogRWpyYXlPbGdvO1xyXG4gICAgT2tCdXR0b25DdXN0b21VaTogRWpyYXlPbGdvO1xyXG4gICAgQ2FuY2VsQnV0dG9uQ3VzdG9tVWk6IEVqcmF5T2xnbztcclxuICAgIEZvcm1MYXlvdXRJdGVtc1NldHRpbmc6IE1vRm9yUmVwb3J0TW9kZWw7XHJcbiAgICBGdWxsc2NyZWVuRGVmYXVsdDogYm9vbGVhbjtcclxuICAgIENhbkZ1bGxzY3JlZW46IGJvb2xlYW47XHJcbiAgICBJc1NpbXBsZTogYm9vbGVhbjtcclxuICAgIElzTW9kYWw6IGJvb2xlYW47XHJcbiAgICBDc3NTdHlsZXM6IHN0cmluZztcclxuICAgIENhbk1vdmU6IGJvb2xlYW47XHJcbiAgICBDYW5SZXNpemU6IGJvb2xlYW47XHJcbiAgICBDb250ZW50SXNQYWdlOiBib29sZWFuO1xyXG4gICAgTGF5b3V0R3JpZENvbDogbnVtYmVyO1xyXG4gICAgQ29sTGc6IG51bWJlcjtcclxuICAgIENvbFhsOiBudW1iZXI7XHJcbiAgICBDb2xNZDogbnVtYmVyO1xyXG59XHJcbiIsIkBpZiAoaXNTZWFyY2hQYW5lbCB8fCAoaXNTaW1wbGUkIHwgYXN5bmMpIHx8IGlzU3ViRm9ybSB8fCBpc01vZGFsIHx8IGlzRm9ybVJlcG9ydCB8fCBwYXJhbWV0ZXJzPy5Jc1NpbXBsZSkge1xyXG48YnN1LWJhcnNhLXNpbXBsZS1mb3JtXHJcbiAgICBbY3NzU3R5bGVdPVwicGFyYW1ldGVycz8uQ3NzU3R5bGVzXCJcclxuICAgIFtjYW5TZW5kXT1cIihjYW5TZW5kJCB8IGFzeW5jKSA9PT0gdHJ1ZVwiXHJcbiAgICBbZm9ybVZpc2liaWxpdHlTdGF0dXNdPVwiZm9ybVZpc2liaWxpdHlTdGF0dXNcIlxyXG4gICAgW3JlbW92ZUNvbnRlbnRQYWRkaW5nXT1cIihoZWFkZXJSZW1vdmVDb250ZW50UGFkZGluZyQgfCBhc3luYykhIVwiXHJcbiAgICBbYnJlYWRDcnVtYnNdPVwiYnJlYWRDcnVtYnMkIHwgYXN5bmNcIlxyXG4gICAgW2Rlc2NyaXB0aW9uXT1cIihoZWFkZXJEZXNjcmlwdGlvbiQgfCBhc3luYykhIVwiXHJcbiAgICBbaGlkZUNsb3NlXT1cIihoaWRlQ2xvc2UkIHwgYXN5bmMpISFcIlxyXG4gICAgW2hpZGVUaXRsZV09XCIoaGlkZVRpdGxlJCB8IGFzeW5jKSEhXCJcclxuICAgIFtoaWRlUGluXT1cIihoaWRlUGluJCB8IGFzeW5jKSEhXCJcclxuICAgIFt0aXRsZV09XCIodGl0bGUkIHwgYXN5bmMpISFcIlxyXG4gICAgW2lzTW9kYWxdPVwiaXNNb2RhbFwiXHJcbiAgICBbZm9ybUNvbnRlbnRNYXhXaWR0aF09XCJmb3JtQ29udGVudE1heFdpZHRoXCJcclxuICAgIFtzdWJ0aXRsZV09XCIoaGVhZGVyU3VidGl0bGUkIHwgYXN5bmMpISFcIlxyXG4gICAgW3Rvb2xiYXJJdGVtc109XCJleHRlbmRUb29sYmFySXRlbXMkIHwgYXN5bmMgfCB0bGJCdXR0b25zOiAnaW5Gb290ZXInOmZhbHNlXCJcclxuICAgIFtsYXlvdXRBY3Rpb25zXT1cImV4dGVuZFRvb2xiYXJJdGVtcyQgfCBhc3luYyB8IHRsYkJ1dHRvbnM6ICdpbkZvb3Rlcic6dHJ1ZSB8IGhpZGVBY2NlcHRDYW5jZWw6IGhpZGVBY2NlcHRBbmRDYW5jZWxcIlxyXG4gICAgW3Rvb2xiYXJWaXNpYmxlXT1cIih0b29sYmFyVmlzaWJsZSQgfCBhc3luYykhIVwiXHJcbiAgICBbZmFjZXRMaXN0XT1cIihoZWFkZXJMYXlvdXQkIHwgYXN5bmMpPy5GYWNldExpc3QyXCJcclxuICAgIFtwYXJhbWV0ZXJzXT1cInBhcmFtZXRlcnNcIlxyXG4gICAgW3dvcmtmbG93UGFuZWxVaV09XCJ3b3JrZmxvd1BhbmVsVWkkIHwgYXN5bmNcIlxyXG4gICAgW3dvcmtmbG93QnV0dG9uc109XCIod29ya2Zsb3dCdXR0b25zJCB8IGFzeW5jKSEhXCJcclxuICAgIFtpc01vYmlsZV09XCJpc01vYmlsZVwiXHJcbiAgICBbbGF5b3V0OTRdPVwiZXh0ZW5kTGF5b3V0OTQkIHwgYXN5bmNcIlxyXG4gICAgW2xheW91dEdyaWRDb2xdPVwiKyhwYXJhbWV0ZXJzPy5MYXlvdXRHcmlkQ29sIHx8IDEyKVwiXHJcbiAgICBbY29sTGddPVwiKyhwYXJhbWV0ZXJzPy5Db2xMZyB8fCAwKVwiXHJcbiAgICBbY29sWGxdPVwiKyhwYXJhbWV0ZXJzPy5Db2xYbCB8fCAwKVwiXHJcbiAgICBbY29sTWRdPVwiKyhwYXJhbWV0ZXJzPy5Db2xNZCB8fCAwKVwiXHJcbiAgICBbaGlkZUZvb3Rlcl09XCIoaGlkZUZvb3RlciQgfCBhc3luYykgPT09IHRydWVcIlxyXG4gICAgW3J0bF09XCIocnRsJCB8IGFzeW5jKSEhXCJcclxuICAgIFttYXNrXT1cIihtYXNrJCB8IGFzeW5jKSEhXCJcclxuICAgIFttb109XCIobW8kIHwgYXN5bmMpISFcIlxyXG4gICAgW2RpclZhbHVlXT1cIihkaXJWYWx1ZSQgfCBhc3luYykhIVwiXHJcbiAgICBbZGV2aWNlU2l6ZV09XCIoZGV2aWNlU2l6ZSQgfCBhc3luYykhIVwiXHJcbiAgICBbY29udGVudERlbnNpdHldPVwiKGNvbnRlbnREZW5zaXR5JCB8IGFzeW5jKSEhXCJcclxuICAgIFttb2Rlcm5UYWJzXT1cIihtb2Rlcm5UYWJzJCB8IGFzeW5jKSEhXCJcclxuICAgIFthdmF0YXJdPVwiKGF2YXRhciQgfCBhc3luYykhIVwiXHJcbiAgICBbY2lyY2xlQXZhdGFyXT1cIihjaXJjbGVBdmF0YXIkIHwgYXN5bmMpISFcIlxyXG4gICAgW2ZpZWxkRGljdF09XCIoZmllbGREaWN0JCB8IGFzeW5jKSEhXCJcclxuICAgIFtsYW5kc2NhcGVdPVwiKGxhbmRzY2FwZSQgfCBhc3luYykgPT09IHRydWVcIlxyXG4gICAgW3N0YW5kYWxvbmVdPVwiKHN0YW5kYWxvbmUkIHwgYXN5bmMpID09PSB0cnVlXCJcclxuICAgIChjbG9zZSk9XCJvbkNsb3NlKClcIlxyXG4gICAgKHRvb2xiYXJDbGljayk9XCJvblRvb2xiYXJDbGljaygkZXZlbnQpXCJcclxuICAgIFtjb250ZW50SXNQYWdlXT1cInBhcmFtZXRlcnM/LkNvbnRlbnRJc1BhZ2UgPT09IHRydWVcIlxyXG4gICAgKHdvcmtmbG93Q2hvaWNlQ2xpY2spPVwib25Xb3JrZmxvd0Nob2ljZUNsaWNrKCRldmVudClcIlxyXG4+PC9ic3UtYmFyc2Etc2ltcGxlLWZvcm0+XHJcbn0gQGVsc2Uge1xyXG48YnN1LWZ1bmRhbWVudGFsLWR5bmFtaWMtZm9ybVxyXG4gICAgW2Nzc1N0eWxlXT1cInBhcmFtZXRlcnM/LkNzc1N0eWxlc1wiXHJcbiAgICBbc3R5bGUucG9zaXRpb25dPVwiKG1hc2skIHwgYXN5bmMpID8gJ3JlbGF0aXZlJyA6IG51bGxcIlxyXG4gICAgW3dvcmtmbG93QnV0dG9uc109XCIod29ya2Zsb3dCdXR0b25zJCB8IGFzeW5jKSEhXCJcclxuICAgIFtjYW5TZW5kXT1cIihjYW5TZW5kJCB8IGFzeW5jKSA9PT0gdHJ1ZVwiXHJcbiAgICBbZm9ybVZpc2liaWxpdHlTdGF0dXNdPVwiZm9ybVZpc2liaWxpdHlTdGF0dXNcIlxyXG4gICAgW3JlbW92ZUNvbnRlbnRQYWRkaW5nXT1cIihoZWFkZXJSZW1vdmVDb250ZW50UGFkZGluZyQgfCBhc3luYykhIVwiXHJcbiAgICBbYnJlYWRDcnVtYnNdPVwiYnJlYWRDcnVtYnMkIHwgYXN5bmNcIlxyXG4gICAgW2Rlc2NyaXB0aW9uXT1cIihoZWFkZXJEZXNjcmlwdGlvbiQgfCBhc3luYykhIVwiXHJcbiAgICBbaGlkZUNsb3NlXT1cIihoaWRlQ2xvc2UkIHwgYXN5bmMpISFcIlxyXG4gICAgW2hpZGVUaXRsZV09XCIoaGlkZVRpdGxlJCB8IGFzeW5jKSEhXCJcclxuICAgIFtoaWRlUGluXT1cIihoaWRlUGluJCB8IGFzeW5jKSEhXCJcclxuICAgIFt0aXRsZV09XCIodGl0bGUkIHwgYXN5bmMpISFcIlxyXG4gICAgW3N1YnRpdGxlXT1cIihoZWFkZXJTdWJ0aXRsZSQgfCBhc3luYykhIVwiXHJcbiAgICBbdG9vbGJhckl0ZW1zXT1cImV4dGVuZFRvb2xiYXJJdGVtcyQgfCBhc3luYyB8IHRsYkJ1dHRvbnM6ICdpbkZvb3Rlcic6ZmFsc2VcIlxyXG4gICAgW2xheW91dEFjdGlvbnNdPVwiZXh0ZW5kVG9vbGJhckl0ZW1zJCB8IGFzeW5jIHwgdGxiQnV0dG9uczogJ2luRm9vdGVyJzp0cnVlIHwgaGlkZUFjY2VwdENhbmNlbDogaGlkZUFjY2VwdEFuZENhbmNlbFwiXHJcbiAgICBbdG9vbGJhclZpc2libGVdPVwiKHRvb2xiYXJWaXNpYmxlJCB8IGFzeW5jKSEhXCJcclxuICAgIFtmYWNldExpc3RdPVwiKGhlYWRlckxheW91dCQgfCBhc3luYyk/LkZhY2V0TGlzdDJcIlxyXG4gICAgW2Zvcm1Db250ZW50TWF4V2lkdGhdPVwiZm9ybUNvbnRlbnRNYXhXaWR0aFwiXHJcbiAgICBbcGFyYW1ldGVyc109XCJwYXJhbWV0ZXJzXCJcclxuICAgIFtmdWxsc2NyZWVuXT1cImZ1bGxzY3JlZW5cIlxyXG4gICAgW2hpZGVGb290ZXJdPVwiKGhpZGVGb290ZXIkIHwgYXN5bmMpID09PSB0cnVlXCJcclxuICAgIFt3b3JrZmxvd1BhbmVsVWldPVwid29ya2Zsb3dQYW5lbFVpJCB8IGFzeW5jXCJcclxuICAgIFtpc01vYmlsZV09XCJpc01vYmlsZVwiXHJcbiAgICBbbGF5b3V0OTRdPVwiZXh0ZW5kTGF5b3V0OTQkIHwgYXN5bmNcIlxyXG4gICAgW3J0bF09XCIocnRsJCB8IGFzeW5jKSEhXCJcclxuICAgIFtsYXlvdXRHcmlkQ29sXT1cIisocGFyYW1ldGVycz8uTGF5b3V0R3JpZENvbCB8fCAxMilcIlxyXG4gICAgW2NvbExnXT1cIisocGFyYW1ldGVycz8uQ29sTGcgfHwgMClcIlxyXG4gICAgW2NvbFhsXT1cIisocGFyYW1ldGVycz8uQ29sWGwgfHwgMClcIlxyXG4gICAgW2NvbE1kXT1cIisocGFyYW1ldGVycz8uQ29sTWQgfHwgMClcIlxyXG4gICAgW2Zvb3RlckRlc2lnbl09XCJmb290ZXJEZXNpZ25cIlxyXG4gICAgW21hc2tdPVwiKG1hc2skIHwgYXN5bmMpISFcIlxyXG4gICAgW21vXT1cIihtbyQgfCBhc3luYykhIVwiXHJcbiAgICBbZGlyVmFsdWVdPVwiKGRpclZhbHVlJCB8IGFzeW5jKSEhXCJcclxuICAgIFtkZXZpY2VTaXplXT1cIihkZXZpY2VTaXplJCB8IGFzeW5jKSEhXCJcclxuICAgIFtjb250ZW50RGVuc2l0eV09XCIoY29udGVudERlbnNpdHkkIHwgYXN5bmMpISFcIlxyXG4gICAgW21vZGVyblRhYnNdPVwiKG1vZGVyblRhYnMkIHwgYXN5bmMpISFcIlxyXG4gICAgW2F2YXRhcl09XCIoYXZhdGFyJCB8IGFzeW5jKSEhXCJcclxuICAgIFtjaXJjbGVBdmF0YXJdPVwiKGNpcmNsZUF2YXRhciQgfCBhc3luYykhIVwiXHJcbiAgICBbZmllbGREaWN0XT1cIihmaWVsZERpY3QkIHwgYXN5bmMpISFcIlxyXG4gICAgW2xhbmRzY2FwZV09XCIobGFuZHNjYXBlJCB8IGFzeW5jKSA9PT0gdHJ1ZVwiXHJcbiAgICBbc3RhbmRhbG9uZV09XCIoc3RhbmRhbG9uZSQgfCBhc3luYykgPT09IHRydWVcIlxyXG4gICAgKGZ1bGxzY3JlZW5SZXF1ZXN0KT1cIm9uRnVsbHNjcmVlbigpXCJcclxuICAgIChjbG9zZSk9XCJvbkNsb3NlKClcIlxyXG4gICAgKHRvb2xiYXJDbGljayk9XCJvblRvb2xiYXJDbGljaygkZXZlbnQpXCJcclxuICAgIFtjb250ZW50SXNQYWdlXT1cInBhcmFtZXRlcnM/LkNvbnRlbnRJc1BhZ2UgPT09IHRydWVcIlxyXG4gICAgKHdvcmtmbG93Q2hvaWNlQ2xpY2spPVwib25Xb3JrZmxvd0Nob2ljZUNsaWNrKCRldmVudClcIlxyXG4+PC9ic3UtZnVuZGFtZW50YWwtZHluYW1pYy1mb3JtPlxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
+
import { BehaviorSubject } from 'rxjs';
|
|
3
|
+
import { distinctUntilChanged, takeUntil } from 'rxjs/operators';
|
|
4
|
+
import { SapUiReportBaseComponent } from '../sap-ui-report-base.component';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@angular/common";
|
|
7
|
+
import * as i2 from "../ulv-toolbar/ulv-toolbar.component";
|
|
8
|
+
import * as i3 from "../gantt-dhtml-chart-view/gantt-dhtml-chart-view.component";
|
|
9
|
+
import * as i4 from "barsa-novin-ray-core";
|
|
10
|
+
export class UiGanttChartComponent extends SapUiReportBaseComponent {
|
|
11
|
+
constructor() {
|
|
12
|
+
super(...arguments);
|
|
13
|
+
this._modeSource = new BehaviorSubject('day');
|
|
14
|
+
}
|
|
15
|
+
ngOnInit() {
|
|
16
|
+
this.mode$ = this._modeSource.asObservable().pipe(takeUntil(this._onDestroy$), distinctUntilChanged());
|
|
17
|
+
super.ngOnInit();
|
|
18
|
+
this.context.on({
|
|
19
|
+
ModeChange: this._modeChanged.bind(this)
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
_modeChanged(mode) {
|
|
23
|
+
this._modeSource.next(mode);
|
|
24
|
+
}
|
|
25
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiGanttChartComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
26
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: UiGanttChartComponent, selector: "bsu-ui-gantt-chart", usesInheritance: true, ngImport: i0, template: "<ng-container\n *ngTemplateOutlet=\"\n renderContainer;\n context: {\n $implicit: moDataList$ | async,\n allChecked: allChecked$ | async,\n groupby: groupby$ | async,\n isCheckList: context.Setting.View?.IsCheckList,\n columns: columns$ | async,\n columnsCount: columnsCount$ | async,\n allowInlineEdit: allowInlineEdit$ | async,\n inlineEditMode: inlineEditMode$ | async,\n onlyInlineEdit: onlyInlineEdit$ | async,\n secondaryColumns: secondaryColumns$ | async,\n toolbarButtons: (toolbarButtons$ | async)!! | seperatorFix,\n popin: (mobileOrTablet$ | async) || (secondaryColumnsCount$ | async) ? true : false,\n contextMenuItems: menuItems$ | async | contextMenu: context.Setting.View?.IsCheckList,\n conditionalFormats: conditionalFormats$ | async,\n deviceName: deviceName$ | async,\n deviceSize: deviceSize$ | async,\n mobileOrTablet: mobileOrTablet$ | async,\n access: context.Setting.Extra?.DefaultCommandsAccess,\n title: title$ | async,\n rtl: rtl$ | async,\n hideToolbar: hideToolbar$ | async,\n allColumns: allColumns,\n gridSetting: gridSetting$ | async,\n contentDensity: contentDensity$ | async,\n formLayout: layout$ | async,\n hasSelected: hasSelected$ | async,\n showOkCancelButtons: showOkCancelButtons,\n disableOverflowContextMenu: viewSetting?.DisableOverflowContextMenu,\n navigationArrow: navigationArrow$ | async,\n mode: mode$ | async,\n ganttFields: context.Setting.View.GanttFields,\n ganttChartHelper: context._ganttChartHelper\n }\n \"\n></ng-container>\n<ng-template\n #renderContainer\n let-moDataList\n let-allChecked=\"allChecked\"\n let-isCheckList=\"isCheckList\"\n let-columns=\"columns\"\n let-columnsCount=\"columnsCount\"\n let-groupby=\"groupby\"\n let-secondaryColumns=\"secondaryColumns\"\n let-contextMenuItems=\"contextMenuItems\"\n let-conditionalFormats=\"conditionalFormats\"\n let-deviceName=\"deviceName\"\n let-deviceSize=\"deviceSize\"\n let-access=\"access\"\n let-toolbarButtons=\"toolbarButtons\"\n let-popin=\"popin\"\n let-mobileOrTablet=\"mobileOrTablet\"\n let-title=\"title\"\n let-inlineEditMode=\"inlineEditMode\"\n let-allowInlineEdit=\"allowInlineEdit\"\n let-hideToolbar=\"hideToolbar\"\n let-gridSetting=\"gridSetting\"\n let-contentDensity=\"contentDensity\"\n let-formLayout=\"formLayout\"\n let-hasSelected=\"hasSelected\"\n let-showOkCancelButtons=\"showOkCancelButtons\"\n let-disableOverflowContextMenu=\"disableOverflowContextMenu\"\n let-navigationArrow=\"navigationArrow\"\n let-mode=\"mode\"\n let-ganttFields=\"ganttFields\"\n let-ganttChartHelper=\"ganttChartHelper\"\n>\n <bsu-ulv-toolbar\n [hideToolbar]=\"hideToolbar\"\n [deviceName]=\"deviceName\"\n [deviceSize]=\"deviceSize\"\n [toolbarButtons]=\"toolbarButtons\"\n [gridSetting]=\"gridSetting\"\n [title]=\"title\"\n [hasSelected]=\"hasSelected\"\n [access]=\"access\"\n [contentDensity]=\"contentDensity\"\n [inlineEditMode]=\"false\"\n [allowInlineEdit]=\"false\"\n [moDataListCount]=\"moDataList.length\"\n ></bsu-ulv-toolbar>\n <bsu-gantt-dhtml-chart-view\n [isCheckList]=\"isCheckList\"\n [allChecked]=\"allChecked\"\n [moDataList]=\"moDataList\"\n [access]=\"access\"\n [deviceName]=\"deviceName\"\n [deviceSize]=\"deviceSize\"\n [navigationArrow]=\"navigationArrow\"\n [title]=\"title\"\n [mobileOrTablet]=\"mobileOrTablet\"\n [contextMenuItems]=\"contextMenuItems\"\n [inlineEditMode]=\"false\"\n [allowInlineEdit]=\"false\"\n [mode]=\"mode\"\n [showOkCancelButtons]=\"showOkCancelButtons\"\n [ganttFields]=\"ganttFields\"\n [ganttChartHelper]=\"ganttChartHelper\"\n (ulvCommandClick)=\"onUlvCommand($event)\"\n (filter)=\"onFilter($event)\"\n (rowClick)=\"onRowClick($event)\"\n (rowCheck)=\"onRowCheck($event)\"\n >\n </bsu-gantt-dhtml-chart-view>\n</ng-template>\n", styles: [":host{display:block}:host.gantt_rtl{direction:ltr}::ng-deep .gantt_rtl>.gantt_layout_root>.gantt_layout{display:flex;flex-direction:row-reverse}::ng-deep .gantt-fix-grid{direction:ltr}::ng-deep .gantt_grid_scale{direction:ltr}::ng-deep .gantt_tree_content{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}::ng-deep .gantt_container,::ng-deep .gantt_tooltip{font-family:var(--sapFontFamily)!important}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.UlvToolbarComponent, selector: "bsu-ulv-toolbar", inputs: ["allowGridColumnSort", "useLayoutItemTextForControl", "enableSearch", "hideTitle", "title", "icon", "deviceName", "deviceSize", "access", "hideToolbar", "toolbarButtons", "contentDensity", "inlineEditMode", "allowInlineEdit", "gridSetting", "viewCollection", "reportView", "inDialog", "isMultiSelect", "cls", "hasSelected", "config", "hidden", "buttons", "moDataListCount"], outputs: ["search", "groupbyClick", "sortClick", "columnClick", "editModeClick", "viewClick", "createNewInlineMo"] }, { kind: "component", type: i3.GanttDhtmlChartViewComponent, selector: "bsu-gantt-dhtml-chart-view", inputs: ["mode", "ganttFields", "ganttChartHelper"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.SeperatorFixPipe, name: "seperatorFix" }, { kind: "pipe", type: i4.ContextMenuPipe, name: "contextMenu" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
27
|
+
}
|
|
28
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiGanttChartComponent, decorators: [{
|
|
29
|
+
type: Component,
|
|
30
|
+
args: [{ selector: 'bsu-ui-gantt-chart', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<ng-container\n *ngTemplateOutlet=\"\n renderContainer;\n context: {\n $implicit: moDataList$ | async,\n allChecked: allChecked$ | async,\n groupby: groupby$ | async,\n isCheckList: context.Setting.View?.IsCheckList,\n columns: columns$ | async,\n columnsCount: columnsCount$ | async,\n allowInlineEdit: allowInlineEdit$ | async,\n inlineEditMode: inlineEditMode$ | async,\n onlyInlineEdit: onlyInlineEdit$ | async,\n secondaryColumns: secondaryColumns$ | async,\n toolbarButtons: (toolbarButtons$ | async)!! | seperatorFix,\n popin: (mobileOrTablet$ | async) || (secondaryColumnsCount$ | async) ? true : false,\n contextMenuItems: menuItems$ | async | contextMenu: context.Setting.View?.IsCheckList,\n conditionalFormats: conditionalFormats$ | async,\n deviceName: deviceName$ | async,\n deviceSize: deviceSize$ | async,\n mobileOrTablet: mobileOrTablet$ | async,\n access: context.Setting.Extra?.DefaultCommandsAccess,\n title: title$ | async,\n rtl: rtl$ | async,\n hideToolbar: hideToolbar$ | async,\n allColumns: allColumns,\n gridSetting: gridSetting$ | async,\n contentDensity: contentDensity$ | async,\n formLayout: layout$ | async,\n hasSelected: hasSelected$ | async,\n showOkCancelButtons: showOkCancelButtons,\n disableOverflowContextMenu: viewSetting?.DisableOverflowContextMenu,\n navigationArrow: navigationArrow$ | async,\n mode: mode$ | async,\n ganttFields: context.Setting.View.GanttFields,\n ganttChartHelper: context._ganttChartHelper\n }\n \"\n></ng-container>\n<ng-template\n #renderContainer\n let-moDataList\n let-allChecked=\"allChecked\"\n let-isCheckList=\"isCheckList\"\n let-columns=\"columns\"\n let-columnsCount=\"columnsCount\"\n let-groupby=\"groupby\"\n let-secondaryColumns=\"secondaryColumns\"\n let-contextMenuItems=\"contextMenuItems\"\n let-conditionalFormats=\"conditionalFormats\"\n let-deviceName=\"deviceName\"\n let-deviceSize=\"deviceSize\"\n let-access=\"access\"\n let-toolbarButtons=\"toolbarButtons\"\n let-popin=\"popin\"\n let-mobileOrTablet=\"mobileOrTablet\"\n let-title=\"title\"\n let-inlineEditMode=\"inlineEditMode\"\n let-allowInlineEdit=\"allowInlineEdit\"\n let-hideToolbar=\"hideToolbar\"\n let-gridSetting=\"gridSetting\"\n let-contentDensity=\"contentDensity\"\n let-formLayout=\"formLayout\"\n let-hasSelected=\"hasSelected\"\n let-showOkCancelButtons=\"showOkCancelButtons\"\n let-disableOverflowContextMenu=\"disableOverflowContextMenu\"\n let-navigationArrow=\"navigationArrow\"\n let-mode=\"mode\"\n let-ganttFields=\"ganttFields\"\n let-ganttChartHelper=\"ganttChartHelper\"\n>\n <bsu-ulv-toolbar\n [hideToolbar]=\"hideToolbar\"\n [deviceName]=\"deviceName\"\n [deviceSize]=\"deviceSize\"\n [toolbarButtons]=\"toolbarButtons\"\n [gridSetting]=\"gridSetting\"\n [title]=\"title\"\n [hasSelected]=\"hasSelected\"\n [access]=\"access\"\n [contentDensity]=\"contentDensity\"\n [inlineEditMode]=\"false\"\n [allowInlineEdit]=\"false\"\n [moDataListCount]=\"moDataList.length\"\n ></bsu-ulv-toolbar>\n <bsu-gantt-dhtml-chart-view\n [isCheckList]=\"isCheckList\"\n [allChecked]=\"allChecked\"\n [moDataList]=\"moDataList\"\n [access]=\"access\"\n [deviceName]=\"deviceName\"\n [deviceSize]=\"deviceSize\"\n [navigationArrow]=\"navigationArrow\"\n [title]=\"title\"\n [mobileOrTablet]=\"mobileOrTablet\"\n [contextMenuItems]=\"contextMenuItems\"\n [inlineEditMode]=\"false\"\n [allowInlineEdit]=\"false\"\n [mode]=\"mode\"\n [showOkCancelButtons]=\"showOkCancelButtons\"\n [ganttFields]=\"ganttFields\"\n [ganttChartHelper]=\"ganttChartHelper\"\n (ulvCommandClick)=\"onUlvCommand($event)\"\n (filter)=\"onFilter($event)\"\n (rowClick)=\"onRowClick($event)\"\n (rowCheck)=\"onRowCheck($event)\"\n >\n </bsu-gantt-dhtml-chart-view>\n</ng-template>\n", styles: [":host{display:block}:host.gantt_rtl{direction:ltr}::ng-deep .gantt_rtl>.gantt_layout_root>.gantt_layout{display:flex;flex-direction:row-reverse}::ng-deep .gantt-fix-grid{direction:ltr}::ng-deep .gantt_grid_scale{direction:ltr}::ng-deep .gantt_tree_content{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}::ng-deep .gantt_container,::ng-deep .gantt_tooltip{font-family:var(--sapFontFamily)!important}\n"] }]
|
|
31
|
+
}] });
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktZ2FudHQtY2hhcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktZ2FudHQtY2hhcnQvdWktZ2FudHQtY2hhcnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktZ2FudHQtY2hhcnQvdWktZ2FudHQtY2hhcnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUUzRSxPQUFPLEVBQUUsZUFBZSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7Ozs7O0FBUzNFLE1BQU0sT0FBTyxxQkFBc0IsU0FBUSx3QkFBaUQ7SUFQNUY7O1FBU1ksZ0JBQVcsR0FBRyxJQUFJLGVBQWUsQ0FBWSxLQUFLLENBQUMsQ0FBQztLQVkvRDtJQVZHLFFBQVE7UUFDSixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEVBQUUsb0JBQW9CLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZHLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUNaLFVBQVUsRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7U0FDM0MsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUNTLFlBQVksQ0FBQyxJQUFlO1FBQ2xDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2hDLENBQUM7K0dBYlEscUJBQXFCO21HQUFyQixxQkFBcUIsaUZDYmxDLG0wSUE2R0E7OzRGRGhHYSxxQkFBcUI7a0JBUGpDLFNBQVM7K0JBQ0ksb0JBQW9CLG1CQUdiLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBVaVJlcG9ydFZpZXdCYXNlU2V0dGluZyB9IGZyb20gJ2JhcnNhLW5vdmluLXJheS1jb3JlJztcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IFNhcFVpUmVwb3J0QmFzZUNvbXBvbmVudCB9IGZyb20gJy4uL3NhcC11aS1yZXBvcnQtYmFzZS5jb21wb25lbnQnO1xyXG5kZWNsYXJlIHR5cGUgR2FudHRNb2RlID0gJ2RheScgfCAnbW9udGgnIHwgJ3llYXInO1xyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnYnN1LXVpLWdhbnR0LWNoYXJ0JyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi91aS1nYW50dC1jaGFydC5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi91aS1nYW50dC1jaGFydC5jb21wb25lbnQuc2NzcyddLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgICBzdGFuZGFsb25lOiBmYWxzZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVWlHYW50dENoYXJ0Q29tcG9uZW50IGV4dGVuZHMgU2FwVWlSZXBvcnRCYXNlQ29tcG9uZW50PFVpUmVwb3J0Vmlld0Jhc2VTZXR0aW5nPiBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgICBtb2RlJDogT2JzZXJ2YWJsZTxHYW50dE1vZGU+O1xyXG4gICAgcHJpdmF0ZSBfbW9kZVNvdXJjZSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8R2FudHRNb2RlPignZGF5Jyk7XHJcblxyXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5tb2RlJCA9IHRoaXMuX21vZGVTb3VyY2UuYXNPYnNlcnZhYmxlKCkucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCksIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpO1xyXG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XHJcbiAgICAgICAgdGhpcy5jb250ZXh0Lm9uKHtcclxuICAgICAgICAgICAgTW9kZUNoYW5nZTogdGhpcy5fbW9kZUNoYW5nZWQuYmluZCh0aGlzKVxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgcHJvdGVjdGVkIF9tb2RlQ2hhbmdlZChtb2RlOiBHYW50dE1vZGUpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9tb2RlU291cmNlLm5leHQobW9kZSk7XHJcbiAgICB9XHJcbn1cclxuIiwiPG5nLWNvbnRhaW5lclxuICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICAgIHJlbmRlckNvbnRhaW5lcjtcbiAgICAgICAgY29udGV4dDoge1xuICAgICAgICAgICAgJGltcGxpY2l0OiBtb0RhdGFMaXN0JCB8IGFzeW5jLFxuICAgICAgICAgICAgYWxsQ2hlY2tlZDogYWxsQ2hlY2tlZCQgfCBhc3luYyxcbiAgICAgICAgICAgIGdyb3VwYnk6IGdyb3VwYnkkIHwgYXN5bmMsXG4gICAgICAgICAgICBpc0NoZWNrTGlzdDogY29udGV4dC5TZXR0aW5nLlZpZXc/LklzQ2hlY2tMaXN0LFxuICAgICAgICAgICAgY29sdW1uczogY29sdW1ucyQgfCBhc3luYyxcbiAgICAgICAgICAgIGNvbHVtbnNDb3VudDogY29sdW1uc0NvdW50JCB8IGFzeW5jLFxuICAgICAgICAgICAgYWxsb3dJbmxpbmVFZGl0OiBhbGxvd0lubGluZUVkaXQkIHwgYXN5bmMsXG4gICAgICAgICAgICBpbmxpbmVFZGl0TW9kZTogaW5saW5lRWRpdE1vZGUkIHwgYXN5bmMsXG4gICAgICAgICAgICBvbmx5SW5saW5lRWRpdDogb25seUlubGluZUVkaXQkIHwgYXN5bmMsXG4gICAgICAgICAgICBzZWNvbmRhcnlDb2x1bW5zOiBzZWNvbmRhcnlDb2x1bW5zJCB8IGFzeW5jLFxuICAgICAgICAgICAgdG9vbGJhckJ1dHRvbnM6ICh0b29sYmFyQnV0dG9ucyQgfCBhc3luYykhISB8IHNlcGVyYXRvckZpeCxcbiAgICAgICAgICAgIHBvcGluOiAobW9iaWxlT3JUYWJsZXQkIHwgYXN5bmMpIHx8IChzZWNvbmRhcnlDb2x1bW5zQ291bnQkIHwgYXN5bmMpID8gdHJ1ZSA6IGZhbHNlLFxuICAgICAgICAgICAgY29udGV4dE1lbnVJdGVtczogbWVudUl0ZW1zJCB8IGFzeW5jIHwgY29udGV4dE1lbnU6IGNvbnRleHQuU2V0dGluZy5WaWV3Py5Jc0NoZWNrTGlzdCxcbiAgICAgICAgICAgIGNvbmRpdGlvbmFsRm9ybWF0czogY29uZGl0aW9uYWxGb3JtYXRzJCB8IGFzeW5jLFxuICAgICAgICAgICAgZGV2aWNlTmFtZTogZGV2aWNlTmFtZSQgfCBhc3luYyxcbiAgICAgICAgICAgIGRldmljZVNpemU6IGRldmljZVNpemUkIHwgYXN5bmMsXG4gICAgICAgICAgICBtb2JpbGVPclRhYmxldDogbW9iaWxlT3JUYWJsZXQkIHwgYXN5bmMsXG4gICAgICAgICAgICBhY2Nlc3M6IGNvbnRleHQuU2V0dGluZy5FeHRyYT8uRGVmYXVsdENvbW1hbmRzQWNjZXNzLFxuICAgICAgICAgICAgdGl0bGU6IHRpdGxlJCB8IGFzeW5jLFxuICAgICAgICAgICAgcnRsOiBydGwkIHwgYXN5bmMsXG4gICAgICAgICAgICBoaWRlVG9vbGJhcjogaGlkZVRvb2xiYXIkIHwgYXN5bmMsXG4gICAgICAgICAgICBhbGxDb2x1bW5zOiBhbGxDb2x1bW5zLFxuICAgICAgICAgICAgZ3JpZFNldHRpbmc6IGdyaWRTZXR0aW5nJCB8IGFzeW5jLFxuICAgICAgICAgICAgY29udGVudERlbnNpdHk6IGNvbnRlbnREZW5zaXR5JCB8IGFzeW5jLFxuICAgICAgICAgICAgZm9ybUxheW91dDogbGF5b3V0JCB8IGFzeW5jLFxuICAgICAgICAgICAgaGFzU2VsZWN0ZWQ6IGhhc1NlbGVjdGVkJCB8IGFzeW5jLFxuICAgICAgICAgICAgc2hvd09rQ2FuY2VsQnV0dG9uczogc2hvd09rQ2FuY2VsQnV0dG9ucyxcbiAgICAgICAgICAgIGRpc2FibGVPdmVyZmxvd0NvbnRleHRNZW51OiB2aWV3U2V0dGluZz8uRGlzYWJsZU92ZXJmbG93Q29udGV4dE1lbnUsXG4gICAgICAgICAgICBuYXZpZ2F0aW9uQXJyb3c6IG5hdmlnYXRpb25BcnJvdyQgfCBhc3luYyxcbiAgICAgICAgICAgIG1vZGU6IG1vZGUkIHwgYXN5bmMsXG4gICAgICAgICAgICBnYW50dEZpZWxkczogY29udGV4dC5TZXR0aW5nLlZpZXcuR2FudHRGaWVsZHMsXG4gICAgICAgICAgICBnYW50dENoYXJ0SGVscGVyOiBjb250ZXh0Ll9nYW50dENoYXJ0SGVscGVyXG4gICAgICAgIH1cbiAgICBcIlxuPjwvbmctY29udGFpbmVyPlxuPG5nLXRlbXBsYXRlXG4gICAgI3JlbmRlckNvbnRhaW5lclxuICAgIGxldC1tb0RhdGFMaXN0XG4gICAgbGV0LWFsbENoZWNrZWQ9XCJhbGxDaGVja2VkXCJcbiAgICBsZXQtaXNDaGVja0xpc3Q9XCJpc0NoZWNrTGlzdFwiXG4gICAgbGV0LWNvbHVtbnM9XCJjb2x1bW5zXCJcbiAgICBsZXQtY29sdW1uc0NvdW50PVwiY29sdW1uc0NvdW50XCJcbiAgICBsZXQtZ3JvdXBieT1cImdyb3VwYnlcIlxuICAgIGxldC1zZWNvbmRhcnlDb2x1bW5zPVwic2Vjb25kYXJ5Q29sdW1uc1wiXG4gICAgbGV0LWNvbnRleHRNZW51SXRlbXM9XCJjb250ZXh0TWVudUl0ZW1zXCJcbiAgICBsZXQtY29uZGl0aW9uYWxGb3JtYXRzPVwiY29uZGl0aW9uYWxGb3JtYXRzXCJcbiAgICBsZXQtZGV2aWNlTmFtZT1cImRldmljZU5hbWVcIlxuICAgIGxldC1kZXZpY2VTaXplPVwiZGV2aWNlU2l6ZVwiXG4gICAgbGV0LWFjY2Vzcz1cImFjY2Vzc1wiXG4gICAgbGV0LXRvb2xiYXJCdXR0b25zPVwidG9vbGJhckJ1dHRvbnNcIlxuICAgIGxldC1wb3Bpbj1cInBvcGluXCJcbiAgICBsZXQtbW9iaWxlT3JUYWJsZXQ9XCJtb2JpbGVPclRhYmxldFwiXG4gICAgbGV0LXRpdGxlPVwidGl0bGVcIlxuICAgIGxldC1pbmxpbmVFZGl0TW9kZT1cImlubGluZUVkaXRNb2RlXCJcbiAgICBsZXQtYWxsb3dJbmxpbmVFZGl0PVwiYWxsb3dJbmxpbmVFZGl0XCJcbiAgICBsZXQtaGlkZVRvb2xiYXI9XCJoaWRlVG9vbGJhclwiXG4gICAgbGV0LWdyaWRTZXR0aW5nPVwiZ3JpZFNldHRpbmdcIlxuICAgIGxldC1jb250ZW50RGVuc2l0eT1cImNvbnRlbnREZW5zaXR5XCJcbiAgICBsZXQtZm9ybUxheW91dD1cImZvcm1MYXlvdXRcIlxuICAgIGxldC1oYXNTZWxlY3RlZD1cImhhc1NlbGVjdGVkXCJcbiAgICBsZXQtc2hvd09rQ2FuY2VsQnV0dG9ucz1cInNob3dPa0NhbmNlbEJ1dHRvbnNcIlxuICAgIGxldC1kaXNhYmxlT3ZlcmZsb3dDb250ZXh0TWVudT1cImRpc2FibGVPdmVyZmxvd0NvbnRleHRNZW51XCJcbiAgICBsZXQtbmF2aWdhdGlvbkFycm93PVwibmF2aWdhdGlvbkFycm93XCJcbiAgICBsZXQtbW9kZT1cIm1vZGVcIlxuICAgIGxldC1nYW50dEZpZWxkcz1cImdhbnR0RmllbGRzXCJcbiAgICBsZXQtZ2FudHRDaGFydEhlbHBlcj1cImdhbnR0Q2hhcnRIZWxwZXJcIlxuPlxuICAgIDxic3UtdWx2LXRvb2xiYXJcbiAgICAgICAgW2hpZGVUb29sYmFyXT1cImhpZGVUb29sYmFyXCJcbiAgICAgICAgW2RldmljZU5hbWVdPVwiZGV2aWNlTmFtZVwiXG4gICAgICAgIFtkZXZpY2VTaXplXT1cImRldmljZVNpemVcIlxuICAgICAgICBbdG9vbGJhckJ1dHRvbnNdPVwidG9vbGJhckJ1dHRvbnNcIlxuICAgICAgICBbZ3JpZFNldHRpbmddPVwiZ3JpZFNldHRpbmdcIlxuICAgICAgICBbdGl0bGVdPVwidGl0bGVcIlxuICAgICAgICBbaGFzU2VsZWN0ZWRdPVwiaGFzU2VsZWN0ZWRcIlxuICAgICAgICBbYWNjZXNzXT1cImFjY2Vzc1wiXG4gICAgICAgIFtjb250ZW50RGVuc2l0eV09XCJjb250ZW50RGVuc2l0eVwiXG4gICAgICAgIFtpbmxpbmVFZGl0TW9kZV09XCJmYWxzZVwiXG4gICAgICAgIFthbGxvd0lubGluZUVkaXRdPVwiZmFsc2VcIlxuICAgICAgICBbbW9EYXRhTGlzdENvdW50XT1cIm1vRGF0YUxpc3QubGVuZ3RoXCJcbiAgICA+PC9ic3UtdWx2LXRvb2xiYXI+XG4gICAgPGJzdS1nYW50dC1kaHRtbC1jaGFydC12aWV3XG4gICAgICAgIFtpc0NoZWNrTGlzdF09XCJpc0NoZWNrTGlzdFwiXG4gICAgICAgIFthbGxDaGVja2VkXT1cImFsbENoZWNrZWRcIlxuICAgICAgICBbbW9EYXRhTGlzdF09XCJtb0RhdGFMaXN0XCJcbiAgICAgICAgW2FjY2Vzc109XCJhY2Nlc3NcIlxuICAgICAgICBbZGV2aWNlTmFtZV09XCJkZXZpY2VOYW1lXCJcbiAgICAgICAgW2RldmljZVNpemVdPVwiZGV2aWNlU2l6ZVwiXG4gICAgICAgIFtuYXZpZ2F0aW9uQXJyb3ddPVwibmF2aWdhdGlvbkFycm93XCJcbiAgICAgICAgW3RpdGxlXT1cInRpdGxlXCJcbiAgICAgICAgW21vYmlsZU9yVGFibGV0XT1cIm1vYmlsZU9yVGFibGV0XCJcbiAgICAgICAgW2NvbnRleHRNZW51SXRlbXNdPVwiY29udGV4dE1lbnVJdGVtc1wiXG4gICAgICAgIFtpbmxpbmVFZGl0TW9kZV09XCJmYWxzZVwiXG4gICAgICAgIFthbGxvd0lubGluZUVkaXRdPVwiZmFsc2VcIlxuICAgICAgICBbbW9kZV09XCJtb2RlXCJcbiAgICAgICAgW3Nob3dPa0NhbmNlbEJ1dHRvbnNdPVwic2hvd09rQ2FuY2VsQnV0dG9uc1wiXG4gICAgICAgIFtnYW50dEZpZWxkc109XCJnYW50dEZpZWxkc1wiXG4gICAgICAgIFtnYW50dENoYXJ0SGVscGVyXT1cImdhbnR0Q2hhcnRIZWxwZXJcIlxuICAgICAgICAodWx2Q29tbWFuZENsaWNrKT1cIm9uVWx2Q29tbWFuZCgkZXZlbnQpXCJcbiAgICAgICAgKGZpbHRlcik9XCJvbkZpbHRlcigkZXZlbnQpXCJcbiAgICAgICAgKHJvd0NsaWNrKT1cIm9uUm93Q2xpY2soJGV2ZW50KVwiXG4gICAgICAgIChyb3dDaGVjayk9XCJvblJvd0NoZWNrKCRldmVudClcIlxuICAgID5cbiAgICA8L2JzdS1nYW50dC1kaHRtbC1jaGFydC12aWV3PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
+
import { SapUiReportBaseComponent } from '../sap-ui-report-base.component';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class UiGraphComponent extends SapUiReportBaseComponent {
|
|
5
|
+
ngAfterViewInit() {
|
|
6
|
+
super.ngAfterViewInit();
|
|
7
|
+
this.context.fireEvent('render', this);
|
|
8
|
+
this.context.Draw(this.id);
|
|
9
|
+
}
|
|
10
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiGraphComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
11
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: UiGraphComponent, selector: "bsu-ui-graph", usesInheritance: true, ngImport: i0, template: "<div [id]=\"id\"></div>\n", styles: [":host{display:block}:host div{min-height:800px;width:100%}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
12
|
+
}
|
|
13
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiGraphComponent, decorators: [{
|
|
14
|
+
type: Component,
|
|
15
|
+
args: [{ selector: 'bsu-ui-graph', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<div [id]=\"id\"></div>\n", styles: [":host{display:block}:host div{min-height:800px;width:100%}\n"] }]
|
|
16
|
+
}] });
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktZ3JhcGguY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktZ3JhcGgvdWktZ3JhcGguY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktZ3JhcGgvdWktZ3JhcGguY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQix1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHbEYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0saUNBQWlDLENBQUM7O0FBUzNFLE1BQU0sT0FBTyxnQkFBaUIsU0FBUSx3QkFBaUQ7SUFDbkYsZUFBZTtRQUNYLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDdkMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQy9CLENBQUM7K0dBTFEsZ0JBQWdCO21HQUFoQixnQkFBZ0IsMkVDWjdCLDJCQUNBOzs0RkRXYSxnQkFBZ0I7a0JBUDVCLFNBQVM7K0JBQ0ksY0FBYyxtQkFHUCx1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBVaVJlcG9ydFZpZXdCYXNlU2V0dGluZyB9IGZyb20gJ2JhcnNhLW5vdmluLXJheS1jb3JlJztcclxuaW1wb3J0IHsgU2FwVWlSZXBvcnRCYXNlQ29tcG9uZW50IH0gZnJvbSAnLi4vc2FwLXVpLXJlcG9ydC1iYXNlLmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnYnN1LXVpLWdyYXBoJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi91aS1ncmFwaC5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi91aS1ncmFwaC5jb21wb25lbnQuc2NzcyddLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgICBzdGFuZGFsb25lOiBmYWxzZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVWlHcmFwaENvbXBvbmVudCBleHRlbmRzIFNhcFVpUmVwb3J0QmFzZUNvbXBvbmVudDxVaVJlcG9ydFZpZXdCYXNlU2V0dGluZz4gaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcclxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgICAgICBzdXBlci5uZ0FmdGVyVmlld0luaXQoKTtcclxuICAgICAgICB0aGlzLmNvbnRleHQuZmlyZUV2ZW50KCdyZW5kZXInLCB0aGlzKTtcclxuICAgICAgICB0aGlzLmNvbnRleHQuRHJhdyh0aGlzLmlkKTtcclxuICAgIH1cclxufVxyXG4iLCI8ZGl2IFtpZF09XCJpZFwiPjwvZGl2PlxuIl19
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
|
|
2
|
+
import { SapUiReportBaseComponent } from '../sap-ui-report-base.component';
|
|
3
|
+
import { WidthTypeEnum } from '../ui-editable-grid/ui-editable-grid.component';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/common";
|
|
6
|
+
import * as i2 from "../ulv-toolbar/ulv-toolbar.component";
|
|
7
|
+
import * as i3 from "../ui-table-view/ui-table-view.component";
|
|
8
|
+
import * as i4 from "barsa-novin-ray-core";
|
|
9
|
+
export class UiGridComponent extends SapUiReportBaseComponent {
|
|
10
|
+
constructor() {
|
|
11
|
+
super(...arguments);
|
|
12
|
+
this.enableResizing = true;
|
|
13
|
+
this.rowResizer = false;
|
|
14
|
+
this.widthTypeEnum = WidthTypeEnum;
|
|
15
|
+
}
|
|
16
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiGridComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
17
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: UiGridComponent, selector: "bsu-ui-grid", inputs: { showOkCancelButtons: "showOkCancelButtons" }, usesInheritance: true, ngImport: i0, template: "<!--render container-->\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n renderContainer;\r\n context: {\r\n $implicit: gridDataSource.data$ | async,\r\n allChecked: allChecked$ | async,\r\n groupby: groupby$ | async,\r\n isCheckList: context.Setting.View?.IsCheckList,\r\n hasSummary: context.Setting.View?.HasSummaryRow,\r\n columns: columns$ | async,\r\n columnsCount: columnsCount$ | async,\r\n allowInlineEdit: allowInlineEdit$ | async,\r\n inlineEditMode: inlineEditMode$ | async,\r\n onlyInlineEdit: onlyInlineEdit$ | async,\r\n secondaryColumns: secondaryColumns$ | async,\r\n toolbarButtons: (toolbarButtons$ | async)!! | seperatorFix,\r\n popin: (secondaryColumnsCount$ | async)!! > 0 ? true : false,\r\n contextMenuItems: menuItems$ | async | contextMenu: context.Setting.View?.IsCheckList,\r\n conditionalFormats: conditionalFormats$ | async,\r\n deviceName: deviceName$ | async,\r\n deviceSize: deviceSize$ | async,\r\n mobileOrTablet: mobileOrTablet$ | async,\r\n access: context.Setting.Extra?.DefaultCommandsAccess,\r\n extraRelation: context.Setting.Extra?.Relation,\r\n title: title$ | async,\r\n rtl: rtl$ | async,\r\n hideToolbar: hideToolbar$ | async,\r\n allColumns: allColumns,\r\n gridSetting: gridSetting$ | async,\r\n contentDensity: contentDensity$ | async,\r\n formSetting: context.Setting.FormTemplate,\r\n hasSelected: hasSelected$ | async,\r\n showOkCancelButtons: showOkCancelButtons,\r\n disableOverflowContextMenu: viewSetting?.DisableOverflowContextMenu,\r\n navigationArrow: navigationArrow$ | async,\r\n containerWidth: containerWidth$ | async,\r\n newInlineEditMo: newInlineEditMo$ | async,\r\n typeDefId: context.Setting.Extra.Report.TypeDefId,\r\n reportId: context.Setting.Extra.Report.Id,\r\n listEditViewId: context.Setting.Extra.Report.ListEditViewId,\r\n typeViewId: context.Setting.Extra.Report.TypeViewId,\r\n contextView: context.Setting.View,\r\n cartableTemplates: cartableTemplates$ | async,\r\n cartableChildsMo: cartableChildsMo$ | async,\r\n inDialog: inDialog$ | async,\r\n isMultiSelect: isMultiSelect$ | async,\r\n disableResponsive: disableResponsive$ | async,\r\n fullscreen: fullscreen$ | async,\r\n selectedMo: selectedMo$ | async,\r\n gridFreeColumnSizing: gridFreeColumnSizing$ | async,\r\n allowGridColumnSort: context.ViewSetting?.AllowGridColumnSort,\r\n UlvMainCtrlr: context.Adapter?.UlvMainCtrlr,\r\n pagingSetting: pagingSetting$ | async,\r\n simpleInlineEdit: simpleInlineEdit,\r\n groupSummary: groupSummary\r\n }\r\n \"\r\n></ng-container>\r\n<!--render container -->\r\n<ng-template\r\n #renderContainer\r\n let-moDataList\r\n let-allChecked=\"allChecked\"\r\n let-isCheckList=\"isCheckList\"\r\n let-columns=\"columns\"\r\n let-columnsCount=\"columnsCount\"\r\n let-groupby=\"groupby\"\r\n let-secondaryColumns=\"secondaryColumns\"\r\n let-contextMenuItems=\"contextMenuItems\"\r\n let-conditionalFormats=\"conditionalFormats\"\r\n let-deviceName=\"deviceName\"\r\n let-deviceSize=\"deviceSize\"\r\n let-access=\"access\"\r\n let-toolbarButtons=\"toolbarButtons\"\r\n let-popin=\"popin\"\r\n let-mobileOrTablet=\"mobileOrTablet\"\r\n let-title=\"title\"\r\n let-inlineEditMode=\"inlineEditMode\"\r\n let-allowInlineEdit=\"allowInlineEdit\"\r\n let-hideToolbar=\"hideToolbar\"\r\n let-gridSetting=\"gridSetting\"\r\n let-contentDensity=\"contentDensity\"\r\n let-formSetting=\"formSetting\"\r\n let-hasSelected=\"hasSelected\"\r\n let-showOkCancelButtons=\"showOkCancelButtons\"\r\n let-disableOverflowContextMenu=\"disableOverflowContextMenu\"\r\n let-navigationArrow=\"navigationArrow\"\r\n let-containerWidth=\"containerWidth\"\r\n let-newInlineEditMo=\"newInlineEditMo\"\r\n let-hasSummary=\"hasSummary\"\r\n let-extraRelation=\"extraRelation\"\r\n let-typeDefId=\"typeDefId\"\r\n let-contextView=\"contextView\"\r\n let-cartableTemplates=\"cartableTemplates\"\r\n let-cartableChildsMo=\"cartableChildsMo\"\r\n let-inDialog=\"inDialog\"\r\n let-isMultiSelect=\"isMultiSelect\"\r\n let-fullscreen=\"fullscreen\"\r\n let-selectedMo=\"selectedMo\"\r\n let-disableResponsive=\"disableResponsive\"\r\n let-gridFreeColumnSizing=\"gridFreeColumnSizing\"\r\n let-reportId=\"reportId\"\r\n let-listEditViewId=\"listEditViewId\"\r\n let-typeViewId=\"typeViewId\"\r\n let-UlvMainCtrlr=\"UlvMainCtrlr\"\r\n let-rtl=\"rtl\"\r\n let-allColumns=\"allColumns\"\r\n let-allowGridColumnSort=\"allowGridColumnSort\"\r\n let-pagingSetting=\"pagingSetting\"\r\n let-simpleInlineEdit=\"simpleInlineEdit\"\r\n let-groupSummary=\"groupSummary\"\r\n>\r\n <bsu-ulv-toolbar\r\n [cls]=\"contextView.Grid_HideHeader ? null : 'border-b-0'\"\r\n [hideToolbar]=\"hideToolbar\"\r\n [deviceName]=\"deviceName\"\r\n [hideTitle]=\"true\"\r\n [deviceSize]=\"deviceSize\"\r\n [toolbarButtons]=\"toolbarButtons\"\r\n [gridSetting]=\"gridSetting\"\r\n [UlvMainCtrlr]=\"UlvMainCtrlr\"\r\n [title]=\"title\"\r\n [hasSelected]=\"hasSelected\"\r\n [access]=\"access\"\r\n [disableResponsive]=\"disableResponsive\"\r\n [inDialog]=\"inDialog\"\r\n [isMultiSelect]=\"isMultiSelect\"\r\n [contentDensity]=\"contentDensity\"\r\n [inlineEditMode]=\"inlineEditMode && allowInlineEdit && formSetting\"\r\n [allowInlineEdit]=\"allowInlineEdit && formSetting\"\r\n [moDataListCount]=\"moDataList.length\"\r\n [gridFreeColumnSizing]=\"gridFreeColumnSizing\"\r\n [allowGridColumnSort]=\"allowGridColumnSort\"\r\n (sortClick)=\"onSortSettings(deviceName)\"\r\n (groupbyClick)=\"onGroupbySettings(deviceName)\"\r\n (columnClick)=\"onColumnSettings(deviceName)\"\r\n (editModeClick)=\"onEditMode()\"\r\n (createNewInlineMo)=\"onToolbarCreateNewInlineMo()\"\r\n ></bsu-ulv-toolbar>\r\n <bsu-ui-table-view\r\n [groupSummary]=\"groupSummary\"\r\n [gridFreeColumnSizing]=\"gridFreeColumnSizing\"\r\n [UlvMainCtrlr]=\"UlvMainCtrlr\"\r\n [simpleInlineEdit]=\"simpleInlineEdit\"\r\n [cartableTemplates]=\"cartableTemplates\"\r\n [pagingSetting]=\"pagingSetting\"\r\n [parentHeight]=\"parentHeight\"\r\n [fullscreen]=\"fullscreen\"\r\n [selectedMo]=\"selectedMo\"\r\n [rtl]=\"rtl\"\r\n [allowGridColumnSort]=\"allowGridColumnSort\"\r\n [inDialog]=\"inDialog\"\r\n [isMultiSelect]=\"isMultiSelect\"\r\n [allColumns]=\"allColumns\"\r\n [cartableChildsMo]=\"cartableChildsMo\"\r\n [contextView]=\"contextView\"\r\n [containerWidth]=\"containerWidth\"\r\n [isCheckList]=\"isCheckList\"\r\n [allChecked]=\"allChecked\"\r\n [moDataList]=\"moDataList\"\r\n [access]=\"access\"\r\n [groupby]=\"groupby\"\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [navigationArrow]=\"navigationArrow\"\r\n [title]=\"title\"\r\n [mobileOrTablet]=\"mobileOrTablet\"\r\n [disableResponsive]=\"disableResponsive\"\r\n [popin]=\"popin\"\r\n [secondaryColumns]=\"secondaryColumns\"\r\n [contextMenuItems]=\"contextMenuItems\"\r\n [inlineEditMode]=\"inlineEditMode && allowInlineEdit\"\r\n [allowInlineEdit]=\"allowInlineEdit && formSetting\"\r\n [columns]=\"columns\"\r\n [columnWidth]=\"100 / columns.length\"\r\n [columnsCount]=\"columnsCount\"\r\n [rowHoverable]=\"rowHoverable\"\r\n [rowActivable]=\"rowActivable\"\r\n [formSetting]=\"formSetting\"\r\n [typeDefId]=\"typeDefId\"\r\n [reportId]=\"reportId\"\r\n [listEditViewId]=\"listEditViewId\"\r\n [typeViewId]=\"typeViewId\"\r\n [extraRelation]=\"extraRelation\"\r\n [showOkCancelButtons]=\"showOkCancelButtons\"\r\n [fitWidth]=\"false\"\r\n [hasSummary]=\"hasSummary\"\r\n [rowResizer]=\"rowResizer\"\r\n [enableResizing]=\"enableResizing\"\r\n [newInlineEditMo]=\"newInlineEditMo\"\r\n (columnSummary)=\"onColumnSummary($event)\"\r\n (escapeKey)=\"onEscapeKey($event)\"\r\n (deselectAll)=\"onDeselectAll()\"\r\n (ulvCommandClick)=\"onUlvCommand($event)\"\r\n (selectNextInlineRecord)=\"onSelectNextInlineRecord($event)\"\r\n (editFormPanelCancel)=\"onEditFormPanelCancel($event)\"\r\n (editFormPanelSave)=\"onEditFormPanelSave($event)\"\r\n (editFormPanelValueChange)=\"onEditFormPanelValueChange($event)\"\r\n (sortAscending)=\"onSortAscending($event)\"\r\n (sortDescending)=\"onSortDescending($event)\"\r\n (filter)=\"onFilter($event)\"\r\n (rowClick)=\"onRowClick($event)\"\r\n (rowCheck)=\"onRowCheck($event)\"\r\n (allCheckbox)=\"onAllCheckbox($event)\"\r\n (expandClick)=\"onExpandClick($event)\"\r\n (columnResized)=\"onColumnResized($event)\"\r\n (workflowShareButtons)=\"onWorkflowShareButtons($event)\"\r\n (resetGridSettings)=\"onResetGridSettings()\"\r\n >\r\n </bsu-ui-table-view>\r\n</ng-template>\r\n", styles: [":host{display:flex;width:100%;height:100%;flex-direction:column}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.UlvToolbarComponent, selector: "bsu-ulv-toolbar", inputs: ["allowGridColumnSort", "useLayoutItemTextForControl", "enableSearch", "hideTitle", "title", "icon", "deviceName", "deviceSize", "access", "hideToolbar", "toolbarButtons", "contentDensity", "inlineEditMode", "allowInlineEdit", "gridSetting", "viewCollection", "reportView", "inDialog", "isMultiSelect", "cls", "hasSelected", "config", "hidden", "buttons", "moDataListCount"], outputs: ["search", "groupbyClick", "sortClick", "columnClick", "editModeClick", "viewClick", "createNewInlineMo"] }, { kind: "component", type: i3.UiTableViewComponent, selector: "bsu-ui-table-view", inputs: ["columnWidth", "minWidth", "minHeight", "disableResize", "disableHeaderContextMenu", "rowResizer", "enableResizing", "disableFixedTableLayout"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.SeperatorFixPipe, name: "seperatorFix" }, { kind: "pipe", type: i4.ContextMenuPipe, name: "contextMenu" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
18
|
+
}
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiGridComponent, decorators: [{
|
|
20
|
+
type: Component,
|
|
21
|
+
args: [{ selector: 'bsu-ui-grid', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<!--render container-->\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n renderContainer;\r\n context: {\r\n $implicit: gridDataSource.data$ | async,\r\n allChecked: allChecked$ | async,\r\n groupby: groupby$ | async,\r\n isCheckList: context.Setting.View?.IsCheckList,\r\n hasSummary: context.Setting.View?.HasSummaryRow,\r\n columns: columns$ | async,\r\n columnsCount: columnsCount$ | async,\r\n allowInlineEdit: allowInlineEdit$ | async,\r\n inlineEditMode: inlineEditMode$ | async,\r\n onlyInlineEdit: onlyInlineEdit$ | async,\r\n secondaryColumns: secondaryColumns$ | async,\r\n toolbarButtons: (toolbarButtons$ | async)!! | seperatorFix,\r\n popin: (secondaryColumnsCount$ | async)!! > 0 ? true : false,\r\n contextMenuItems: menuItems$ | async | contextMenu: context.Setting.View?.IsCheckList,\r\n conditionalFormats: conditionalFormats$ | async,\r\n deviceName: deviceName$ | async,\r\n deviceSize: deviceSize$ | async,\r\n mobileOrTablet: mobileOrTablet$ | async,\r\n access: context.Setting.Extra?.DefaultCommandsAccess,\r\n extraRelation: context.Setting.Extra?.Relation,\r\n title: title$ | async,\r\n rtl: rtl$ | async,\r\n hideToolbar: hideToolbar$ | async,\r\n allColumns: allColumns,\r\n gridSetting: gridSetting$ | async,\r\n contentDensity: contentDensity$ | async,\r\n formSetting: context.Setting.FormTemplate,\r\n hasSelected: hasSelected$ | async,\r\n showOkCancelButtons: showOkCancelButtons,\r\n disableOverflowContextMenu: viewSetting?.DisableOverflowContextMenu,\r\n navigationArrow: navigationArrow$ | async,\r\n containerWidth: containerWidth$ | async,\r\n newInlineEditMo: newInlineEditMo$ | async,\r\n typeDefId: context.Setting.Extra.Report.TypeDefId,\r\n reportId: context.Setting.Extra.Report.Id,\r\n listEditViewId: context.Setting.Extra.Report.ListEditViewId,\r\n typeViewId: context.Setting.Extra.Report.TypeViewId,\r\n contextView: context.Setting.View,\r\n cartableTemplates: cartableTemplates$ | async,\r\n cartableChildsMo: cartableChildsMo$ | async,\r\n inDialog: inDialog$ | async,\r\n isMultiSelect: isMultiSelect$ | async,\r\n disableResponsive: disableResponsive$ | async,\r\n fullscreen: fullscreen$ | async,\r\n selectedMo: selectedMo$ | async,\r\n gridFreeColumnSizing: gridFreeColumnSizing$ | async,\r\n allowGridColumnSort: context.ViewSetting?.AllowGridColumnSort,\r\n UlvMainCtrlr: context.Adapter?.UlvMainCtrlr,\r\n pagingSetting: pagingSetting$ | async,\r\n simpleInlineEdit: simpleInlineEdit,\r\n groupSummary: groupSummary\r\n }\r\n \"\r\n></ng-container>\r\n<!--render container -->\r\n<ng-template\r\n #renderContainer\r\n let-moDataList\r\n let-allChecked=\"allChecked\"\r\n let-isCheckList=\"isCheckList\"\r\n let-columns=\"columns\"\r\n let-columnsCount=\"columnsCount\"\r\n let-groupby=\"groupby\"\r\n let-secondaryColumns=\"secondaryColumns\"\r\n let-contextMenuItems=\"contextMenuItems\"\r\n let-conditionalFormats=\"conditionalFormats\"\r\n let-deviceName=\"deviceName\"\r\n let-deviceSize=\"deviceSize\"\r\n let-access=\"access\"\r\n let-toolbarButtons=\"toolbarButtons\"\r\n let-popin=\"popin\"\r\n let-mobileOrTablet=\"mobileOrTablet\"\r\n let-title=\"title\"\r\n let-inlineEditMode=\"inlineEditMode\"\r\n let-allowInlineEdit=\"allowInlineEdit\"\r\n let-hideToolbar=\"hideToolbar\"\r\n let-gridSetting=\"gridSetting\"\r\n let-contentDensity=\"contentDensity\"\r\n let-formSetting=\"formSetting\"\r\n let-hasSelected=\"hasSelected\"\r\n let-showOkCancelButtons=\"showOkCancelButtons\"\r\n let-disableOverflowContextMenu=\"disableOverflowContextMenu\"\r\n let-navigationArrow=\"navigationArrow\"\r\n let-containerWidth=\"containerWidth\"\r\n let-newInlineEditMo=\"newInlineEditMo\"\r\n let-hasSummary=\"hasSummary\"\r\n let-extraRelation=\"extraRelation\"\r\n let-typeDefId=\"typeDefId\"\r\n let-contextView=\"contextView\"\r\n let-cartableTemplates=\"cartableTemplates\"\r\n let-cartableChildsMo=\"cartableChildsMo\"\r\n let-inDialog=\"inDialog\"\r\n let-isMultiSelect=\"isMultiSelect\"\r\n let-fullscreen=\"fullscreen\"\r\n let-selectedMo=\"selectedMo\"\r\n let-disableResponsive=\"disableResponsive\"\r\n let-gridFreeColumnSizing=\"gridFreeColumnSizing\"\r\n let-reportId=\"reportId\"\r\n let-listEditViewId=\"listEditViewId\"\r\n let-typeViewId=\"typeViewId\"\r\n let-UlvMainCtrlr=\"UlvMainCtrlr\"\r\n let-rtl=\"rtl\"\r\n let-allColumns=\"allColumns\"\r\n let-allowGridColumnSort=\"allowGridColumnSort\"\r\n let-pagingSetting=\"pagingSetting\"\r\n let-simpleInlineEdit=\"simpleInlineEdit\"\r\n let-groupSummary=\"groupSummary\"\r\n>\r\n <bsu-ulv-toolbar\r\n [cls]=\"contextView.Grid_HideHeader ? null : 'border-b-0'\"\r\n [hideToolbar]=\"hideToolbar\"\r\n [deviceName]=\"deviceName\"\r\n [hideTitle]=\"true\"\r\n [deviceSize]=\"deviceSize\"\r\n [toolbarButtons]=\"toolbarButtons\"\r\n [gridSetting]=\"gridSetting\"\r\n [UlvMainCtrlr]=\"UlvMainCtrlr\"\r\n [title]=\"title\"\r\n [hasSelected]=\"hasSelected\"\r\n [access]=\"access\"\r\n [disableResponsive]=\"disableResponsive\"\r\n [inDialog]=\"inDialog\"\r\n [isMultiSelect]=\"isMultiSelect\"\r\n [contentDensity]=\"contentDensity\"\r\n [inlineEditMode]=\"inlineEditMode && allowInlineEdit && formSetting\"\r\n [allowInlineEdit]=\"allowInlineEdit && formSetting\"\r\n [moDataListCount]=\"moDataList.length\"\r\n [gridFreeColumnSizing]=\"gridFreeColumnSizing\"\r\n [allowGridColumnSort]=\"allowGridColumnSort\"\r\n (sortClick)=\"onSortSettings(deviceName)\"\r\n (groupbyClick)=\"onGroupbySettings(deviceName)\"\r\n (columnClick)=\"onColumnSettings(deviceName)\"\r\n (editModeClick)=\"onEditMode()\"\r\n (createNewInlineMo)=\"onToolbarCreateNewInlineMo()\"\r\n ></bsu-ulv-toolbar>\r\n <bsu-ui-table-view\r\n [groupSummary]=\"groupSummary\"\r\n [gridFreeColumnSizing]=\"gridFreeColumnSizing\"\r\n [UlvMainCtrlr]=\"UlvMainCtrlr\"\r\n [simpleInlineEdit]=\"simpleInlineEdit\"\r\n [cartableTemplates]=\"cartableTemplates\"\r\n [pagingSetting]=\"pagingSetting\"\r\n [parentHeight]=\"parentHeight\"\r\n [fullscreen]=\"fullscreen\"\r\n [selectedMo]=\"selectedMo\"\r\n [rtl]=\"rtl\"\r\n [allowGridColumnSort]=\"allowGridColumnSort\"\r\n [inDialog]=\"inDialog\"\r\n [isMultiSelect]=\"isMultiSelect\"\r\n [allColumns]=\"allColumns\"\r\n [cartableChildsMo]=\"cartableChildsMo\"\r\n [contextView]=\"contextView\"\r\n [containerWidth]=\"containerWidth\"\r\n [isCheckList]=\"isCheckList\"\r\n [allChecked]=\"allChecked\"\r\n [moDataList]=\"moDataList\"\r\n [access]=\"access\"\r\n [groupby]=\"groupby\"\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [navigationArrow]=\"navigationArrow\"\r\n [title]=\"title\"\r\n [mobileOrTablet]=\"mobileOrTablet\"\r\n [disableResponsive]=\"disableResponsive\"\r\n [popin]=\"popin\"\r\n [secondaryColumns]=\"secondaryColumns\"\r\n [contextMenuItems]=\"contextMenuItems\"\r\n [inlineEditMode]=\"inlineEditMode && allowInlineEdit\"\r\n [allowInlineEdit]=\"allowInlineEdit && formSetting\"\r\n [columns]=\"columns\"\r\n [columnWidth]=\"100 / columns.length\"\r\n [columnsCount]=\"columnsCount\"\r\n [rowHoverable]=\"rowHoverable\"\r\n [rowActivable]=\"rowActivable\"\r\n [formSetting]=\"formSetting\"\r\n [typeDefId]=\"typeDefId\"\r\n [reportId]=\"reportId\"\r\n [listEditViewId]=\"listEditViewId\"\r\n [typeViewId]=\"typeViewId\"\r\n [extraRelation]=\"extraRelation\"\r\n [showOkCancelButtons]=\"showOkCancelButtons\"\r\n [fitWidth]=\"false\"\r\n [hasSummary]=\"hasSummary\"\r\n [rowResizer]=\"rowResizer\"\r\n [enableResizing]=\"enableResizing\"\r\n [newInlineEditMo]=\"newInlineEditMo\"\r\n (columnSummary)=\"onColumnSummary($event)\"\r\n (escapeKey)=\"onEscapeKey($event)\"\r\n (deselectAll)=\"onDeselectAll()\"\r\n (ulvCommandClick)=\"onUlvCommand($event)\"\r\n (selectNextInlineRecord)=\"onSelectNextInlineRecord($event)\"\r\n (editFormPanelCancel)=\"onEditFormPanelCancel($event)\"\r\n (editFormPanelSave)=\"onEditFormPanelSave($event)\"\r\n (editFormPanelValueChange)=\"onEditFormPanelValueChange($event)\"\r\n (sortAscending)=\"onSortAscending($event)\"\r\n (sortDescending)=\"onSortDescending($event)\"\r\n (filter)=\"onFilter($event)\"\r\n (rowClick)=\"onRowClick($event)\"\r\n (rowCheck)=\"onRowCheck($event)\"\r\n (allCheckbox)=\"onAllCheckbox($event)\"\r\n (expandClick)=\"onExpandClick($event)\"\r\n (columnResized)=\"onColumnResized($event)\"\r\n (workflowShareButtons)=\"onWorkflowShareButtons($event)\"\r\n (resetGridSettings)=\"onResetGridSettings()\"\r\n >\r\n </bsu-ui-table-view>\r\n</ng-template>\r\n", styles: [":host{display:flex;width:100%;height:100%;flex-direction:column}\n"] }]
|
|
22
|
+
}], propDecorators: { showOkCancelButtons: [{
|
|
23
|
+
type: Input
|
|
24
|
+
}] } });
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktZ3JpZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1zYXAtdWkvc3JjL2xpYi91aS1ncmlkL3VpLWdyaWQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktZ3JpZC91aS1ncmlkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzFFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQzs7Ozs7O0FBUy9FLE1BQU0sT0FBTyxlQUFnQixTQUFRLHdCQUFpRDtJQVB0Rjs7UUFTSSxtQkFBYyxHQUFHLElBQUksQ0FBQztRQUN0QixlQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ25CLGtCQUFhLEdBQUcsYUFBYSxDQUFDO0tBQ2pDOytHQUxZLGVBQWU7bUdBQWYsZUFBZSxrSUNiNUIsd3JUQXNOQTs7NEZEek1hLGVBQWU7a0JBUDNCLFNBQVM7K0JBQ0ksYUFBYSxtQkFHTix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLEtBQUs7OEJBR1IsbUJBQW1CO3NCQUEzQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IFVpUmVwb3J0Vmlld0Jhc2VTZXR0aW5nIH0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xyXG5pbXBvcnQgeyBTYXBVaVJlcG9ydEJhc2VDb21wb25lbnQgfSBmcm9tICcuLi9zYXAtdWktcmVwb3J0LWJhc2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgV2lkdGhUeXBlRW51bSB9IGZyb20gJy4uL3VpLWVkaXRhYmxlLWdyaWQvdWktZWRpdGFibGUtZ3JpZC5jb21wb25lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2JzdS11aS1ncmlkJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi91aS1ncmlkLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL3VpLWdyaWQuY29tcG9uZW50LnNjc3MnXSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gICAgc3RhbmRhbG9uZTogZmFsc2VcclxufSlcclxuZXhwb3J0IGNsYXNzIFVpR3JpZENvbXBvbmVudCBleHRlbmRzIFNhcFVpUmVwb3J0QmFzZUNvbXBvbmVudDxVaVJlcG9ydFZpZXdCYXNlU2V0dGluZz4ge1xyXG4gICAgQElucHV0KCkgc2hvd09rQ2FuY2VsQnV0dG9ucztcclxuICAgIGVuYWJsZVJlc2l6aW5nID0gdHJ1ZTtcclxuICAgIHJvd1Jlc2l6ZXIgPSBmYWxzZTtcclxuICAgIHdpZHRoVHlwZUVudW0gPSBXaWR0aFR5cGVFbnVtO1xyXG59XHJcbiIsIjwhLS1yZW5kZXIgY29udGFpbmVyLS0+XHJcbjxuZy1jb250YWluZXJcclxuICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXHJcbiAgICAgICAgcmVuZGVyQ29udGFpbmVyO1xyXG4gICAgICAgIGNvbnRleHQ6IHtcclxuICAgICAgICAgICAgJGltcGxpY2l0OiBncmlkRGF0YVNvdXJjZS5kYXRhJCB8IGFzeW5jLFxyXG4gICAgICAgICAgICBhbGxDaGVja2VkOiBhbGxDaGVja2VkJCB8IGFzeW5jLFxyXG4gICAgICAgICAgICBncm91cGJ5OiBncm91cGJ5JCB8IGFzeW5jLFxyXG4gICAgICAgICAgICBpc0NoZWNrTGlzdDogY29udGV4dC5TZXR0aW5nLlZpZXc/LklzQ2hlY2tMaXN0LFxyXG4gICAgICAgICAgICBoYXNTdW1tYXJ5OiBjb250ZXh0LlNldHRpbmcuVmlldz8uSGFzU3VtbWFyeVJvdyxcclxuICAgICAgICAgICAgY29sdW1uczogY29sdW1ucyQgfCBhc3luYyxcclxuICAgICAgICAgICAgY29sdW1uc0NvdW50OiBjb2x1bW5zQ291bnQkIHwgYXN5bmMsXHJcbiAgICAgICAgICAgIGFsbG93SW5saW5lRWRpdDogYWxsb3dJbmxpbmVFZGl0JCB8IGFzeW5jLFxyXG4gICAgICAgICAgICBpbmxpbmVFZGl0TW9kZTogaW5saW5lRWRpdE1vZGUkIHwgYXN5bmMsXHJcbiAgICAgICAgICAgIG9ubHlJbmxpbmVFZGl0OiBvbmx5SW5saW5lRWRpdCQgfCBhc3luYyxcclxuICAgICAgICAgICAgc2Vjb25kYXJ5Q29sdW1uczogc2Vjb25kYXJ5Q29sdW1ucyQgfCBhc3luYyxcclxuICAgICAgICAgICAgdG9vbGJhckJ1dHRvbnM6ICh0b29sYmFyQnV0dG9ucyQgfCBhc3luYykhISB8IHNlcGVyYXRvckZpeCxcclxuICAgICAgICAgICAgcG9waW46IChzZWNvbmRhcnlDb2x1bW5zQ291bnQkIHwgYXN5bmMpISEgPiAwID8gdHJ1ZSA6IGZhbHNlLFxyXG4gICAgICAgICAgICBjb250ZXh0TWVudUl0ZW1zOiBtZW51SXRlbXMkIHwgYXN5bmMgfCBjb250ZXh0TWVudTogY29udGV4dC5TZXR0aW5nLlZpZXc/LklzQ2hlY2tMaXN0LFxyXG4gICAgICAgICAgICBjb25kaXRpb25hbEZvcm1hdHM6IGNvbmRpdGlvbmFsRm9ybWF0cyQgfCBhc3luYyxcclxuICAgICAgICAgICAgZGV2aWNlTmFtZTogZGV2aWNlTmFtZSQgfCBhc3luYyxcclxuICAgICAgICAgICAgZGV2aWNlU2l6ZTogZGV2aWNlU2l6ZSQgfCBhc3luYyxcclxuICAgICAgICAgICAgbW9iaWxlT3JUYWJsZXQ6IG1vYmlsZU9yVGFibGV0JCB8IGFzeW5jLFxyXG4gICAgICAgICAgICBhY2Nlc3M6IGNvbnRleHQuU2V0dGluZy5FeHRyYT8uRGVmYXVsdENvbW1hbmRzQWNjZXNzLFxyXG4gICAgICAgICAgICBleHRyYVJlbGF0aW9uOiBjb250ZXh0LlNldHRpbmcuRXh0cmE/LlJlbGF0aW9uLFxyXG4gICAgICAgICAgICB0aXRsZTogdGl0bGUkIHwgYXN5bmMsXHJcbiAgICAgICAgICAgIHJ0bDogcnRsJCB8IGFzeW5jLFxyXG4gICAgICAgICAgICBoaWRlVG9vbGJhcjogaGlkZVRvb2xiYXIkIHwgYXN5bmMsXHJcbiAgICAgICAgICAgIGFsbENvbHVtbnM6IGFsbENvbHVtbnMsXHJcbiAgICAgICAgICAgIGdyaWRTZXR0aW5nOiBncmlkU2V0dGluZyQgfCBhc3luYyxcclxuICAgICAgICAgICAgY29udGVudERlbnNpdHk6IGNvbnRlbnREZW5zaXR5JCB8IGFzeW5jLFxyXG4gICAgICAgICAgICBmb3JtU2V0dGluZzogY29udGV4dC5TZXR0aW5nLkZvcm1UZW1wbGF0ZSxcclxuICAgICAgICAgICAgaGFzU2VsZWN0ZWQ6IGhhc1NlbGVjdGVkJCB8IGFzeW5jLFxyXG4gICAgICAgICAgICBzaG93T2tDYW5jZWxCdXR0b25zOiBzaG93T2tDYW5jZWxCdXR0b25zLFxyXG4gICAgICAgICAgICBkaXNhYmxlT3ZlcmZsb3dDb250ZXh0TWVudTogdmlld1NldHRpbmc/LkRpc2FibGVPdmVyZmxvd0NvbnRleHRNZW51LFxyXG4gICAgICAgICAgICBuYXZpZ2F0aW9uQXJyb3c6IG5hdmlnYXRpb25BcnJvdyQgfCBhc3luYyxcclxuICAgICAgICAgICAgY29udGFpbmVyV2lkdGg6IGNvbnRhaW5lcldpZHRoJCB8IGFzeW5jLFxyXG4gICAgICAgICAgICBuZXdJbmxpbmVFZGl0TW86IG5ld0lubGluZUVkaXRNbyQgfCBhc3luYyxcclxuICAgICAgICAgICAgdHlwZURlZklkOiBjb250ZXh0LlNldHRpbmcuRXh0cmEuUmVwb3J0LlR5cGVEZWZJZCxcclxuICAgICAgICAgICAgcmVwb3J0SWQ6IGNvbnRleHQuU2V0dGluZy5FeHRyYS5SZXBvcnQuSWQsXHJcbiAgICAgICAgICAgIGxpc3RFZGl0Vmlld0lkOiBjb250ZXh0LlNldHRpbmcuRXh0cmEuUmVwb3J0Lkxpc3RFZGl0Vmlld0lkLFxyXG4gICAgICAgICAgICB0eXBlVmlld0lkOiBjb250ZXh0LlNldHRpbmcuRXh0cmEuUmVwb3J0LlR5cGVWaWV3SWQsXHJcbiAgICAgICAgICAgIGNvbnRleHRWaWV3OiBjb250ZXh0LlNldHRpbmcuVmlldyxcclxuICAgICAgICAgICAgY2FydGFibGVUZW1wbGF0ZXM6IGNhcnRhYmxlVGVtcGxhdGVzJCB8IGFzeW5jLFxyXG4gICAgICAgICAgICBjYXJ0YWJsZUNoaWxkc01vOiBjYXJ0YWJsZUNoaWxkc01vJCB8IGFzeW5jLFxyXG4gICAgICAgICAgICBpbkRpYWxvZzogaW5EaWFsb2ckIHwgYXN5bmMsXHJcbiAgICAgICAgICAgIGlzTXVsdGlTZWxlY3Q6IGlzTXVsdGlTZWxlY3QkIHwgYXN5bmMsXHJcbiAgICAgICAgICAgIGRpc2FibGVSZXNwb25zaXZlOiBkaXNhYmxlUmVzcG9uc2l2ZSQgfCBhc3luYyxcclxuICAgICAgICAgICAgZnVsbHNjcmVlbjogZnVsbHNjcmVlbiQgfCBhc3luYyxcclxuICAgICAgICAgICAgc2VsZWN0ZWRNbzogc2VsZWN0ZWRNbyQgfCBhc3luYyxcclxuICAgICAgICAgICAgZ3JpZEZyZWVDb2x1bW5TaXppbmc6IGdyaWRGcmVlQ29sdW1uU2l6aW5nJCB8IGFzeW5jLFxyXG4gICAgICAgICAgICBhbGxvd0dyaWRDb2x1bW5Tb3J0OiBjb250ZXh0LlZpZXdTZXR0aW5nPy5BbGxvd0dyaWRDb2x1bW5Tb3J0LFxyXG4gICAgICAgICAgICBVbHZNYWluQ3RybHI6IGNvbnRleHQuQWRhcHRlcj8uVWx2TWFpbkN0cmxyLFxyXG4gICAgICAgICAgICBwYWdpbmdTZXR0aW5nOiBwYWdpbmdTZXR0aW5nJCB8IGFzeW5jLFxyXG4gICAgICAgICAgICBzaW1wbGVJbmxpbmVFZGl0OiBzaW1wbGVJbmxpbmVFZGl0LFxyXG4gICAgICAgICAgICBncm91cFN1bW1hcnk6IGdyb3VwU3VtbWFyeVxyXG4gICAgICAgIH1cclxuICAgIFwiXHJcbj48L25nLWNvbnRhaW5lcj5cclxuPCEtLXJlbmRlciBjb250YWluZXIgLS0+XHJcbjxuZy10ZW1wbGF0ZVxyXG4gICAgI3JlbmRlckNvbnRhaW5lclxyXG4gICAgbGV0LW1vRGF0YUxpc3RcclxuICAgIGxldC1hbGxDaGVja2VkPVwiYWxsQ2hlY2tlZFwiXHJcbiAgICBsZXQtaXNDaGVja0xpc3Q9XCJpc0NoZWNrTGlzdFwiXHJcbiAgICBsZXQtY29sdW1ucz1cImNvbHVtbnNcIlxyXG4gICAgbGV0LWNvbHVtbnNDb3VudD1cImNvbHVtbnNDb3VudFwiXHJcbiAgICBsZXQtZ3JvdXBieT1cImdyb3VwYnlcIlxyXG4gICAgbGV0LXNlY29uZGFyeUNvbHVtbnM9XCJzZWNvbmRhcnlDb2x1bW5zXCJcclxuICAgIGxldC1jb250ZXh0TWVudUl0ZW1zPVwiY29udGV4dE1lbnVJdGVtc1wiXHJcbiAgICBsZXQtY29uZGl0aW9uYWxGb3JtYXRzPVwiY29uZGl0aW9uYWxGb3JtYXRzXCJcclxuICAgIGxldC1kZXZpY2VOYW1lPVwiZGV2aWNlTmFtZVwiXHJcbiAgICBsZXQtZGV2aWNlU2l6ZT1cImRldmljZVNpemVcIlxyXG4gICAgbGV0LWFjY2Vzcz1cImFjY2Vzc1wiXHJcbiAgICBsZXQtdG9vbGJhckJ1dHRvbnM9XCJ0b29sYmFyQnV0dG9uc1wiXHJcbiAgICBsZXQtcG9waW49XCJwb3BpblwiXHJcbiAgICBsZXQtbW9iaWxlT3JUYWJsZXQ9XCJtb2JpbGVPclRhYmxldFwiXHJcbiAgICBsZXQtdGl0bGU9XCJ0aXRsZVwiXHJcbiAgICBsZXQtaW5saW5lRWRpdE1vZGU9XCJpbmxpbmVFZGl0TW9kZVwiXHJcbiAgICBsZXQtYWxsb3dJbmxpbmVFZGl0PVwiYWxsb3dJbmxpbmVFZGl0XCJcclxuICAgIGxldC1oaWRlVG9vbGJhcj1cImhpZGVUb29sYmFyXCJcclxuICAgIGxldC1ncmlkU2V0dGluZz1cImdyaWRTZXR0aW5nXCJcclxuICAgIGxldC1jb250ZW50RGVuc2l0eT1cImNvbnRlbnREZW5zaXR5XCJcclxuICAgIGxldC1mb3JtU2V0dGluZz1cImZvcm1TZXR0aW5nXCJcclxuICAgIGxldC1oYXNTZWxlY3RlZD1cImhhc1NlbGVjdGVkXCJcclxuICAgIGxldC1zaG93T2tDYW5jZWxCdXR0b25zPVwic2hvd09rQ2FuY2VsQnV0dG9uc1wiXHJcbiAgICBsZXQtZGlzYWJsZU92ZXJmbG93Q29udGV4dE1lbnU9XCJkaXNhYmxlT3ZlcmZsb3dDb250ZXh0TWVudVwiXHJcbiAgICBsZXQtbmF2aWdhdGlvbkFycm93PVwibmF2aWdhdGlvbkFycm93XCJcclxuICAgIGxldC1jb250YWluZXJXaWR0aD1cImNvbnRhaW5lcldpZHRoXCJcclxuICAgIGxldC1uZXdJbmxpbmVFZGl0TW89XCJuZXdJbmxpbmVFZGl0TW9cIlxyXG4gICAgbGV0LWhhc1N1bW1hcnk9XCJoYXNTdW1tYXJ5XCJcclxuICAgIGxldC1leHRyYVJlbGF0aW9uPVwiZXh0cmFSZWxhdGlvblwiXHJcbiAgICBsZXQtdHlwZURlZklkPVwidHlwZURlZklkXCJcclxuICAgIGxldC1jb250ZXh0Vmlldz1cImNvbnRleHRWaWV3XCJcclxuICAgIGxldC1jYXJ0YWJsZVRlbXBsYXRlcz1cImNhcnRhYmxlVGVtcGxhdGVzXCJcclxuICAgIGxldC1jYXJ0YWJsZUNoaWxkc01vPVwiY2FydGFibGVDaGlsZHNNb1wiXHJcbiAgICBsZXQtaW5EaWFsb2c9XCJpbkRpYWxvZ1wiXHJcbiAgICBsZXQtaXNNdWx0aVNlbGVjdD1cImlzTXVsdGlTZWxlY3RcIlxyXG4gICAgbGV0LWZ1bGxzY3JlZW49XCJmdWxsc2NyZWVuXCJcclxuICAgIGxldC1zZWxlY3RlZE1vPVwic2VsZWN0ZWRNb1wiXHJcbiAgICBsZXQtZGlzYWJsZVJlc3BvbnNpdmU9XCJkaXNhYmxlUmVzcG9uc2l2ZVwiXHJcbiAgICBsZXQtZ3JpZEZyZWVDb2x1bW5TaXppbmc9XCJncmlkRnJlZUNvbHVtblNpemluZ1wiXHJcbiAgICBsZXQtcmVwb3J0SWQ9XCJyZXBvcnRJZFwiXHJcbiAgICBsZXQtbGlzdEVkaXRWaWV3SWQ9XCJsaXN0RWRpdFZpZXdJZFwiXHJcbiAgICBsZXQtdHlwZVZpZXdJZD1cInR5cGVWaWV3SWRcIlxyXG4gICAgbGV0LVVsdk1haW5DdHJscj1cIlVsdk1haW5DdHJsclwiXHJcbiAgICBsZXQtcnRsPVwicnRsXCJcclxuICAgIGxldC1hbGxDb2x1bW5zPVwiYWxsQ29sdW1uc1wiXHJcbiAgICBsZXQtYWxsb3dHcmlkQ29sdW1uU29ydD1cImFsbG93R3JpZENvbHVtblNvcnRcIlxyXG4gICAgbGV0LXBhZ2luZ1NldHRpbmc9XCJwYWdpbmdTZXR0aW5nXCJcclxuICAgIGxldC1zaW1wbGVJbmxpbmVFZGl0PVwic2ltcGxlSW5saW5lRWRpdFwiXHJcbiAgICBsZXQtZ3JvdXBTdW1tYXJ5PVwiZ3JvdXBTdW1tYXJ5XCJcclxuPlxyXG4gICAgPGJzdS11bHYtdG9vbGJhclxyXG4gICAgICAgIFtjbHNdPVwiY29udGV4dFZpZXcuR3JpZF9IaWRlSGVhZGVyID8gbnVsbCA6ICdib3JkZXItYi0wJ1wiXHJcbiAgICAgICAgW2hpZGVUb29sYmFyXT1cImhpZGVUb29sYmFyXCJcclxuICAgICAgICBbZGV2aWNlTmFtZV09XCJkZXZpY2VOYW1lXCJcclxuICAgICAgICBbaGlkZVRpdGxlXT1cInRydWVcIlxyXG4gICAgICAgIFtkZXZpY2VTaXplXT1cImRldmljZVNpemVcIlxyXG4gICAgICAgIFt0b29sYmFyQnV0dG9uc109XCJ0b29sYmFyQnV0dG9uc1wiXHJcbiAgICAgICAgW2dyaWRTZXR0aW5nXT1cImdyaWRTZXR0aW5nXCJcclxuICAgICAgICBbVWx2TWFpbkN0cmxyXT1cIlVsdk1haW5DdHJsclwiXHJcbiAgICAgICAgW3RpdGxlXT1cInRpdGxlXCJcclxuICAgICAgICBbaGFzU2VsZWN0ZWRdPVwiaGFzU2VsZWN0ZWRcIlxyXG4gICAgICAgIFthY2Nlc3NdPVwiYWNjZXNzXCJcclxuICAgICAgICBbZGlzYWJsZVJlc3BvbnNpdmVdPVwiZGlzYWJsZVJlc3BvbnNpdmVcIlxyXG4gICAgICAgIFtpbkRpYWxvZ109XCJpbkRpYWxvZ1wiXHJcbiAgICAgICAgW2lzTXVsdGlTZWxlY3RdPVwiaXNNdWx0aVNlbGVjdFwiXHJcbiAgICAgICAgW2NvbnRlbnREZW5zaXR5XT1cImNvbnRlbnREZW5zaXR5XCJcclxuICAgICAgICBbaW5saW5lRWRpdE1vZGVdPVwiaW5saW5lRWRpdE1vZGUgJiYgYWxsb3dJbmxpbmVFZGl0ICYmIGZvcm1TZXR0aW5nXCJcclxuICAgICAgICBbYWxsb3dJbmxpbmVFZGl0XT1cImFsbG93SW5saW5lRWRpdCAmJiBmb3JtU2V0dGluZ1wiXHJcbiAgICAgICAgW21vRGF0YUxpc3RDb3VudF09XCJtb0RhdGFMaXN0Lmxlbmd0aFwiXHJcbiAgICAgICAgW2dyaWRGcmVlQ29sdW1uU2l6aW5nXT1cImdyaWRGcmVlQ29sdW1uU2l6aW5nXCJcclxuICAgICAgICBbYWxsb3dHcmlkQ29sdW1uU29ydF09XCJhbGxvd0dyaWRDb2x1bW5Tb3J0XCJcclxuICAgICAgICAoc29ydENsaWNrKT1cIm9uU29ydFNldHRpbmdzKGRldmljZU5hbWUpXCJcclxuICAgICAgICAoZ3JvdXBieUNsaWNrKT1cIm9uR3JvdXBieVNldHRpbmdzKGRldmljZU5hbWUpXCJcclxuICAgICAgICAoY29sdW1uQ2xpY2spPVwib25Db2x1bW5TZXR0aW5ncyhkZXZpY2VOYW1lKVwiXHJcbiAgICAgICAgKGVkaXRNb2RlQ2xpY2spPVwib25FZGl0TW9kZSgpXCJcclxuICAgICAgICAoY3JlYXRlTmV3SW5saW5lTW8pPVwib25Ub29sYmFyQ3JlYXRlTmV3SW5saW5lTW8oKVwiXHJcbiAgICA+PC9ic3UtdWx2LXRvb2xiYXI+XHJcbiAgICA8YnN1LXVpLXRhYmxlLXZpZXdcclxuICAgICAgICBbZ3JvdXBTdW1tYXJ5XT1cImdyb3VwU3VtbWFyeVwiXHJcbiAgICAgICAgW2dyaWRGcmVlQ29sdW1uU2l6aW5nXT1cImdyaWRGcmVlQ29sdW1uU2l6aW5nXCJcclxuICAgICAgICBbVWx2TWFpbkN0cmxyXT1cIlVsdk1haW5DdHJsclwiXHJcbiAgICAgICAgW3NpbXBsZUlubGluZUVkaXRdPVwic2ltcGxlSW5saW5lRWRpdFwiXHJcbiAgICAgICAgW2NhcnRhYmxlVGVtcGxhdGVzXT1cImNhcnRhYmxlVGVtcGxhdGVzXCJcclxuICAgICAgICBbcGFnaW5nU2V0dGluZ109XCJwYWdpbmdTZXR0aW5nXCJcclxuICAgICAgICBbcGFyZW50SGVpZ2h0XT1cInBhcmVudEhlaWdodFwiXHJcbiAgICAgICAgW2Z1bGxzY3JlZW5dPVwiZnVsbHNjcmVlblwiXHJcbiAgICAgICAgW3NlbGVjdGVkTW9dPVwic2VsZWN0ZWRNb1wiXHJcbiAgICAgICAgW3J0bF09XCJydGxcIlxyXG4gICAgICAgIFthbGxvd0dyaWRDb2x1bW5Tb3J0XT1cImFsbG93R3JpZENvbHVtblNvcnRcIlxyXG4gICAgICAgIFtpbkRpYWxvZ109XCJpbkRpYWxvZ1wiXHJcbiAgICAgICAgW2lzTXVsdGlTZWxlY3RdPVwiaXNNdWx0aVNlbGVjdFwiXHJcbiAgICAgICAgW2FsbENvbHVtbnNdPVwiYWxsQ29sdW1uc1wiXHJcbiAgICAgICAgW2NhcnRhYmxlQ2hpbGRzTW9dPVwiY2FydGFibGVDaGlsZHNNb1wiXHJcbiAgICAgICAgW2NvbnRleHRWaWV3XT1cImNvbnRleHRWaWV3XCJcclxuICAgICAgICBbY29udGFpbmVyV2lkdGhdPVwiY29udGFpbmVyV2lkdGhcIlxyXG4gICAgICAgIFtpc0NoZWNrTGlzdF09XCJpc0NoZWNrTGlzdFwiXHJcbiAgICAgICAgW2FsbENoZWNrZWRdPVwiYWxsQ2hlY2tlZFwiXHJcbiAgICAgICAgW21vRGF0YUxpc3RdPVwibW9EYXRhTGlzdFwiXHJcbiAgICAgICAgW2FjY2Vzc109XCJhY2Nlc3NcIlxyXG4gICAgICAgIFtncm91cGJ5XT1cImdyb3VwYnlcIlxyXG4gICAgICAgIFtkaXNhYmxlT3ZlcmZsb3dDb250ZXh0TWVudV09XCJkaXNhYmxlT3ZlcmZsb3dDb250ZXh0TWVudVwiXHJcbiAgICAgICAgW2NvbmRpdGlvbmFsRm9ybWF0c109XCJjb25kaXRpb25hbEZvcm1hdHNcIlxyXG4gICAgICAgIFtkZXZpY2VOYW1lXT1cImRldmljZU5hbWVcIlxyXG4gICAgICAgIFtkZXZpY2VTaXplXT1cImRldmljZVNpemVcIlxyXG4gICAgICAgIFtuYXZpZ2F0aW9uQXJyb3ddPVwibmF2aWdhdGlvbkFycm93XCJcclxuICAgICAgICBbdGl0bGVdPVwidGl0bGVcIlxyXG4gICAgICAgIFttb2JpbGVPclRhYmxldF09XCJtb2JpbGVPclRhYmxldFwiXHJcbiAgICAgICAgW2Rpc2FibGVSZXNwb25zaXZlXT1cImRpc2FibGVSZXNwb25zaXZlXCJcclxuICAgICAgICBbcG9waW5dPVwicG9waW5cIlxyXG4gICAgICAgIFtzZWNvbmRhcnlDb2x1bW5zXT1cInNlY29uZGFyeUNvbHVtbnNcIlxyXG4gICAgICAgIFtjb250ZXh0TWVudUl0ZW1zXT1cImNvbnRleHRNZW51SXRlbXNcIlxyXG4gICAgICAgIFtpbmxpbmVFZGl0TW9kZV09XCJpbmxpbmVFZGl0TW9kZSAmJiBhbGxvd0lubGluZUVkaXRcIlxyXG4gICAgICAgIFthbGxvd0lubGluZUVkaXRdPVwiYWxsb3dJbmxpbmVFZGl0ICYmIGZvcm1TZXR0aW5nXCJcclxuICAgICAgICBbY29sdW1uc109XCJjb2x1bW5zXCJcclxuICAgICAgICBbY29sdW1uV2lkdGhdPVwiMTAwIC8gY29sdW1ucy5sZW5ndGhcIlxyXG4gICAgICAgIFtjb2x1bW5zQ291bnRdPVwiY29sdW1uc0NvdW50XCJcclxuICAgICAgICBbcm93SG92ZXJhYmxlXT1cInJvd0hvdmVyYWJsZVwiXHJcbiAgICAgICAgW3Jvd0FjdGl2YWJsZV09XCJyb3dBY3RpdmFibGVcIlxyXG4gICAgICAgIFtmb3JtU2V0dGluZ109XCJmb3JtU2V0dGluZ1wiXHJcbiAgICAgICAgW3R5cGVEZWZJZF09XCJ0eXBlRGVmSWRcIlxyXG4gICAgICAgIFtyZXBvcnRJZF09XCJyZXBvcnRJZFwiXHJcbiAgICAgICAgW2xpc3RFZGl0Vmlld0lkXT1cImxpc3RFZGl0Vmlld0lkXCJcclxuICAgICAgICBbdHlwZVZpZXdJZF09XCJ0eXBlVmlld0lkXCJcclxuICAgICAgICBbZXh0cmFSZWxhdGlvbl09XCJleHRyYVJlbGF0aW9uXCJcclxuICAgICAgICBbc2hvd09rQ2FuY2VsQnV0dG9uc109XCJzaG93T2tDYW5jZWxCdXR0b25zXCJcclxuICAgICAgICBbZml0V2lkdGhdPVwiZmFsc2VcIlxyXG4gICAgICAgIFtoYXNTdW1tYXJ5XT1cImhhc1N1bW1hcnlcIlxyXG4gICAgICAgIFtyb3dSZXNpemVyXT1cInJvd1Jlc2l6ZXJcIlxyXG4gICAgICAgIFtlbmFibGVSZXNpemluZ109XCJlbmFibGVSZXNpemluZ1wiXHJcbiAgICAgICAgW25ld0lubGluZUVkaXRNb109XCJuZXdJbmxpbmVFZGl0TW9cIlxyXG4gICAgICAgIChjb2x1bW5TdW1tYXJ5KT1cIm9uQ29sdW1uU3VtbWFyeSgkZXZlbnQpXCJcclxuICAgICAgICAoZXNjYXBlS2V5KT1cIm9uRXNjYXBlS2V5KCRldmVudClcIlxyXG4gICAgICAgIChkZXNlbGVjdEFsbCk9XCJvbkRlc2VsZWN0QWxsKClcIlxyXG4gICAgICAgICh1bHZDb21tYW5kQ2xpY2spPVwib25VbHZDb21tYW5kKCRldmVudClcIlxyXG4gICAgICAgIChzZWxlY3ROZXh0SW5saW5lUmVjb3JkKT1cIm9uU2VsZWN0TmV4dElubGluZVJlY29yZCgkZXZlbnQpXCJcclxuICAgICAgICAoZWRpdEZvcm1QYW5lbENhbmNlbCk9XCJvbkVkaXRGb3JtUGFuZWxDYW5jZWwoJGV2ZW50KVwiXHJcbiAgICAgICAgKGVkaXRGb3JtUGFuZWxTYXZlKT1cIm9uRWRpdEZvcm1QYW5lbFNhdmUoJGV2ZW50KVwiXHJcbiAgICAgICAgKGVkaXRGb3JtUGFuZWxWYWx1ZUNoYW5nZSk9XCJvbkVkaXRGb3JtUGFuZWxWYWx1ZUNoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAoc29ydEFzY2VuZGluZyk9XCJvblNvcnRBc2NlbmRpbmcoJGV2ZW50KVwiXHJcbiAgICAgICAgKHNvcnREZXNjZW5kaW5nKT1cIm9uU29ydERlc2NlbmRpbmcoJGV2ZW50KVwiXHJcbiAgICAgICAgKGZpbHRlcik9XCJvbkZpbHRlcigkZXZlbnQpXCJcclxuICAgICAgICAocm93Q2xpY2spPVwib25Sb3dDbGljaygkZXZlbnQpXCJcclxuICAgICAgICAocm93Q2hlY2spPVwib25Sb3dDaGVjaygkZXZlbnQpXCJcclxuICAgICAgICAoYWxsQ2hlY2tib3gpPVwib25BbGxDaGVja2JveCgkZXZlbnQpXCJcclxuICAgICAgICAoZXhwYW5kQ2xpY2spPVwib25FeHBhbmRDbGljaygkZXZlbnQpXCJcclxuICAgICAgICAoY29sdW1uUmVzaXplZCk9XCJvbkNvbHVtblJlc2l6ZWQoJGV2ZW50KVwiXHJcbiAgICAgICAgKHdvcmtmbG93U2hhcmVCdXR0b25zKT1cIm9uV29ya2Zsb3dTaGFyZUJ1dHRvbnMoJGV2ZW50KVwiXHJcbiAgICAgICAgKHJlc2V0R3JpZFNldHRpbmdzKT1cIm9uUmVzZXRHcmlkU2V0dGluZ3MoKVwiXHJcbiAgICA+XHJcbiAgICA8L2JzdS11aS10YWJsZS12aWV3PlxyXG48L25nLXRlbXBsYXRlPlxyXG4iXX0=
|