barsa-sap-ui 1.0.456 → 2.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/{esm2020 → esm2022}/barsa-sap-ui.mjs +4 -4
- package/esm2022/lib/apply-conditional-formmatings.directive.mjs +89 -0
- package/esm2022/lib/barsa-answer-card/barsa-answer-card.component.mjs +41 -0
- package/esm2022/lib/barsa-asp-viewer/barsa-asp-viewer.component.mjs +141 -0
- package/{esm2020 → esm2022}/lib/barsa-bar-panel/barsa-bar-panel.component.mjs +23 -23
- package/esm2022/lib/barsa-base-panel/barsa-base-layout-panel.component.mjs +29 -0
- package/esm2022/lib/barsa-card-layout-panel/barsa-card-layout-panel.component.mjs +24 -0
- package/esm2022/lib/barsa-card-row-payam/barsa-card-row-payam.component.mjs +30 -0
- package/esm2022/lib/barsa-cartable-form/barsa-cartable-form.component.mjs +41 -0
- package/{esm2020 → esm2022}/lib/barsa-cartable-template/barsa-cartable-template.component.mjs +24 -24
- package/esm2022/lib/barsa-chat/barsa-chat.component.mjs +260 -0
- package/esm2022/lib/barsa-chat/chat.model.mjs +8 -0
- package/esm2022/lib/barsa-chat-content/barsa-chat-content.component.mjs +13 -0
- package/esm2022/lib/barsa-chat-content-toolbar/barsa-chat-content-toolbar.component.mjs +22 -0
- package/esm2022/lib/barsa-chat-list/barsa-chat-list.component.mjs +56 -0
- package/esm2022/lib/barsa-chat-message/barsa-chat-message.component.mjs +77 -0
- package/esm2022/lib/barsa-chat-thread/barsa-chat-thread.component.mjs +22 -0
- package/esm2022/lib/barsa-chat-threads-list/barsa-chat-threads-list.component.mjs +13 -0
- package/esm2022/lib/barsa-chat-threads-list-toolbar/barsa-chat-threads-list-toolbar.component.mjs +15 -0
- package/esm2022/lib/barsa-chip/barsa-chip.component.mjs +72 -0
- package/{esm2020 → esm2022}/lib/barsa-column-indicator/barsa-column-indicator.component.mjs +23 -23
- package/{esm2020 → esm2022}/lib/barsa-column-rownumber/barsa-column-rownumber.component.mjs +15 -15
- package/esm2022/lib/barsa-custom-inline-edit/barsa-custom-inline-edit.component.mjs +14 -0
- package/esm2022/lib/barsa-custom-inline-edit-row/barsa-custom-inline-edit-row.component.mjs +26 -0
- package/esm2022/lib/barsa-date-time-picker/barsa-date-time-picker.component.mjs +71 -0
- package/esm2022/lib/barsa-dynamic-field/barsa-dynamic-field.component.mjs +41 -0
- package/esm2022/lib/barsa-enum-menu-button/barsa-enum-menu-button.component.mjs +61 -0
- package/esm2022/lib/barsa-field-key-value/barsa-field-key-value.component.mjs +45 -0
- package/esm2022/lib/barsa-form-side-content/barsa-form-side-content.component.mjs +37 -0
- package/esm2022/lib/barsa-grid-layout-panel/barsa-grid-layout-panel.component.mjs +27 -0
- package/esm2022/lib/barsa-group-cartable/barsa-cartable-group.component.mjs +94 -0
- package/esm2022/lib/barsa-horizontal-flex-panel/barsa-horizontal-flex-panel.component.mjs +22 -0
- package/esm2022/lib/barsa-linkable-items-panel/barsa-linkable-items-panel.component.mjs +37 -0
- package/esm2022/lib/barsa-list-file-linear/barsa-list-file-linear.component.mjs +41 -0
- package/esm2022/lib/barsa-list-file-linear-gmail/barsa-list-file-linear-gmail.component.mjs +29 -0
- package/esm2022/lib/barsa-list-layout-panel/barsa-list-layout-panel.component.mjs +23 -0
- package/esm2022/lib/barsa-monaco-editor/barsa-monaco-editor.component.mjs +83 -0
- package/esm2022/lib/barsa-network-offline/barsa-network-offline.component.mjs +53 -0
- package/esm2022/lib/barsa-pishnamayesh-payam/barsa-pishnamayesh-payam.component.mjs +159 -0
- package/esm2022/lib/barsa-question-answer-comments-section/barsa-question-answer-comments-section.component.mjs +17 -0
- package/esm2022/lib/barsa-question-answer-content-actions-section/barsa-question-answer-content-actions-section.component.mjs +30 -0
- package/esm2022/lib/barsa-question-answer-creator-time-section/barsa-question-answer-creator-time-section.component.mjs +14 -0
- package/esm2022/lib/barsa-question-answer-form/barsa-question-answer-form.component.mjs +34 -0
- package/esm2022/lib/barsa-question-answer-form-add-comment/barsa-question-answer-form-add-comment.component.mjs +46 -0
- package/esm2022/lib/barsa-question-answer-vote-section/barsa-question-answer-vote-section.component.mjs +79 -0
- package/esm2022/lib/barsa-question-post/barsa-question-post.component.mjs +30 -0
- package/esm2022/lib/barsa-report-card-flex-view/barsa-report-card-flex-view.component.mjs +31 -0
- package/{esm2020 → esm2022}/lib/barsa-report-checkbox-switch-button/barsa-report-checkbox-switch-button.component.mjs +28 -28
- package/esm2022/lib/barsa-report-one-of-list/barsa-report-one-of-list.component.mjs +98 -0
- package/{esm2020 → esm2022}/lib/barsa-sap-ui-routing.module.mjs +18 -18
- package/esm2022/lib/barsa-sap-ui.module.mjs +360 -0
- package/esm2022/lib/barsa-search-form/barsa-search-form.component.mjs +29 -0
- package/esm2022/lib/barsa-simple-form/barsa-simple-form.component.mjs +168 -0
- package/esm2022/lib/barsa-table-column/barsa-table-column.component.mjs +27 -0
- package/esm2022/lib/barsa-table-header/barsa-table-header.component.mjs +198 -0
- package/esm2022/lib/barsa-table-row/barsa-table-row.component.mjs +63 -0
- package/esm2022/lib/barsa-tag-categories/barsa-tag-categories.component.mjs +60 -0
- package/esm2022/lib/barsa-tag-chip/barsa-tag-chip.component.mjs +26 -0
- package/esm2022/lib/barsa-tags-category-row/barsa-tags-category-row.component.mjs +23 -0
- package/esm2022/lib/barsa-text-ellipsis/barsa-text-ellipsis.component.mjs +37 -0
- package/esm2022/lib/barsa-tinyemce/barsa-tinyemce.component.mjs +417 -0
- package/esm2022/lib/barsa-toolbaritem-search/barsa-toolbaritem-search.component.mjs +36 -0
- package/esm2022/lib/barsa-tree-item/barsa-tree-item.component.mjs +129 -0
- package/{esm2020 → esm2022}/lib/barsa-tree-item/node-has-one-depth-level.pipe.mjs +19 -19
- package/esm2022/lib/barsa-ulv-main/barsa-ulv-main.component.mjs +208 -0
- package/esm2022/lib/blob-viewer/blob-viewer.component.mjs +78 -0
- package/esm2022/lib/breadcrumb/breadcrumb.component.mjs +44 -0
- package/{esm2020 → esm2022}/lib/captcha-field/captcha-field.component.mjs +28 -28
- package/esm2022/lib/card-item/card-item.component.mjs +76 -0
- package/esm2022/lib/card-view-content/card-view-content.component.mjs +46 -0
- package/esm2022/lib/col-renderer.directive.mjs +46 -0
- package/esm2022/lib/column-matrix-renderer/column-matrix-renderer.component.mjs +56 -0
- package/esm2022/lib/column-matrix-renderer/matrix-value.pipe.mjs +60 -0
- package/esm2022/lib/column-renderer/column-renderer.component.mjs +85 -0
- package/esm2022/lib/constants.mjs +421 -0
- package/esm2022/lib/custom-date-time/custom-date-time.component.mjs +41 -0
- package/{esm2020 → esm2022}/lib/device-info-field-base.mjs +23 -23
- package/{esm2020 → esm2022}/lib/dialog-handler.directive.mjs +28 -28
- package/esm2022/lib/download-files.directive.mjs +33 -0
- package/esm2022/lib/dynamic-page-size.pipe.mjs +26 -0
- package/{esm2020 → esm2022}/lib/file-in-dialog/file-in-dialog.component.mjs +44 -44
- package/esm2022/lib/file-viewer/file-viewer.component.mjs +39 -0
- package/{esm2020 → esm2022}/lib/file-viewer-content/file-viewer-content.component.mjs +53 -53
- package/esm2022/lib/file-viewer-popover/file-viewer-popover.component.mjs +41 -0
- package/esm2022/lib/form-dialog/form-dialog.component.mjs +142 -0
- package/esm2022/lib/form-dialog-less/form-dialog-less.component.mjs +44 -0
- package/esm2022/lib/form-toolbar/form-toolbar.component.mjs +43 -0
- package/esm2022/lib/form-toolbar-button/form-toolbar-button.component.mjs +45 -0
- package/esm2022/lib/form-wizard/form-wizard.component.mjs +21 -0
- package/esm2022/lib/fullscreen-dialog.directive.mjs +59 -0
- package/esm2022/lib/fullscreen-files.directive.mjs +42 -0
- package/esm2022/lib/fundamental-dynamic-form/fundamental-dynamic-form.component.mjs +194 -0
- package/esm2022/lib/gantt-dhtml-chart-view/gantt-dhtml-chart-view.component.mjs +203 -0
- package/{esm2020 → esm2022}/lib/global-search/global-search.component.mjs +27 -27
- package/esm2022/lib/global-search-module/global-search-module.component.mjs +29 -0
- package/esm2022/lib/global-search-panel/global-search-panel.component.mjs +25 -0
- package/esm2022/lib/header-avatar/header-avatar.component.mjs +18 -0
- package/{esm2020 → esm2022}/lib/header-facet-form/header-facet-form.component.mjs +22 -22
- package/{esm2020 → esm2022}/lib/header-facet-key-value/header-facet-key-value.component.mjs +31 -31
- package/{esm2020 → esm2022}/lib/header-facet-microchart/header-facet-microchart.component.mjs +21 -21
- package/{esm2020 → esm2022}/lib/header-facet-plain-text/header-facet-plain-text.component.mjs +28 -28
- package/esm2022/lib/header-facet-progress/header-facet-progress.component.mjs +25 -0
- package/esm2022/lib/header-facet-rate/header-facet-rate.component.mjs +25 -0
- package/esm2022/lib/htree-create-new/htree-create-new.component.mjs +48 -0
- package/esm2022/lib/hyperlink/hyperlink.component.mjs +23 -0
- package/esm2022/lib/index.mjs +564 -0
- package/{esm2020 → esm2022}/lib/inline-save-and-cancel/inline-save-and-cancel.component.mjs +32 -32
- package/esm2022/lib/layout-actions/layout-actions.component.mjs +68 -0
- package/esm2022/lib/layout-control/layout-control.component.mjs +234 -0
- package/esm2022/lib/layout-wizard/layout-wizard.component.mjs +154 -0
- package/esm2022/lib/list-item/list-item.component.mjs +34 -0
- package/esm2022/lib/ly-empty-space/ly-empty-space.component.mjs +42 -0
- package/esm2022/lib/ly-horizontal-layout/ly-horizontal-layout.component.mjs +71 -0
- package/esm2022/lib/ly-label/ly-label.component.mjs +34 -0
- package/esm2022/lib/ly-layout-container/ly-layout-container.component.mjs +83 -0
- package/esm2022/lib/ly-layout-container-of-root/ly-layout-container-of-root.component.mjs +17 -0
- package/{esm2020 → esm2022}/lib/ly-layout-field-label/ly-layout-field-label.component.mjs +24 -24
- package/esm2022/lib/ly-layout-panel/ly-layout-panel.component.mjs +73 -0
- package/esm2022/lib/ly-line/ly-line.component.mjs +56 -0
- package/esm2022/lib/ly-simple-label/ly-simple-label.component.mjs +22 -0
- package/esm2022/lib/ly-tab-container/ly-tab-container.component.mjs +52 -0
- package/esm2022/lib/ly-tab-page/ly-tab-page.component.mjs +44 -0
- package/esm2022/lib/ly-vertical-layout/ly-vertical-layout.component.mjs +50 -0
- package/esm2022/lib/manage-filters-report/manage-filters-report.component.mjs +43 -0
- package/{esm2020 → esm2022}/lib/mask/mask.component.mjs +22 -22
- package/esm2022/lib/message-strip/message-strip.component.mjs +28 -0
- package/esm2022/lib/models/grid-data-provider.mjs +83 -0
- package/esm2022/lib/models/grid-view.mjs +2 -0
- package/{esm2020 → esm2022}/lib/models/index.mjs +1 -1
- package/esm2022/lib/no-data/no-data.component.mjs +31 -0
- package/esm2022/lib/notification-item/notification-item.component.mjs +57 -0
- package/esm2022/lib/notification-popup.service.mjs +92 -0
- package/{esm2020 → esm2022}/lib/progress-indicator/progress-indicator.component.mjs +18 -18
- package/esm2022/lib/report-navigator/report-navigator.component.mjs +63 -0
- package/esm2022/lib/report-new-top-form/report-new-top-form.component.mjs +60 -0
- package/esm2022/lib/report-search-fields-hidden-settings/report-search-fields-hidden-settings.component.mjs +35 -0
- package/esm2022/lib/report-search-fields-manage/report-search-fields-manage.component.mjs +97 -0
- package/esm2022/lib/report-search-panel-save/report-search-panel-save.component.mjs +88 -0
- package/esm2022/lib/report-tree-base.mjs +408 -0
- package/esm2022/lib/report-view-renderer.directive.mjs +366 -0
- package/esm2022/lib/responsive-toolbar/responsive-toolbar.component.mjs +50 -0
- package/esm2022/lib/responsive-toolbar-renderer/responsive-toolbar-renderer.component.mjs +84 -0
- package/esm2022/lib/rich-text-static/rich-text-static.component.mjs +72 -0
- package/esm2022/lib/sap-font-class.pipe.mjs +29 -0
- package/esm2022/lib/sap-font.pipe.mjs +29 -0
- package/esm2022/lib/sap-size.pipe.mjs +27 -0
- package/esm2022/lib/sap-ui-report-base.component.mjs +765 -0
- package/esm2022/lib/search-panel/search-panel.component.mjs +42 -0
- package/{esm2020 → esm2022}/lib/static-text/static-text.component.mjs +15 -15
- package/{esm2020 → esm2022}/lib/title/title.component.mjs +15 -15
- package/{esm2020 → esm2022}/lib/ui-asp-report-viewer/ui-asp-report-viewer.component.mjs +18 -18
- package/esm2022/lib/ui-button/ui-button.component.mjs +31 -0
- package/esm2022/lib/ui-calendar/ui-calendar.component.mjs +53 -0
- package/esm2022/lib/ui-card-view/ui-card-view.component.mjs +59 -0
- package/esm2022/lib/ui-card-view-horizontal-group/ui-card-view-horizontal-group.component.mjs +42 -0
- package/esm2022/lib/ui-check-box/ui-check-box.component.mjs +34 -0
- package/esm2022/lib/ui-color-ui/ui-color-ui.component.mjs +50 -0
- package/esm2022/lib/ui-container-with-button/ui-container-with-button.component.mjs +34 -0
- package/esm2022/lib/ui-date-range-ex/ui-date-range-ex.component.mjs +191 -0
- package/esm2022/lib/ui-date-time/ui-date-time.component.mjs +149 -0
- package/esm2022/lib/ui-editable-grid/ui-editable-grid.component.mjs +110 -0
- package/esm2022/lib/ui-exception-form/ui-exception-form.component.mjs +53 -0
- package/esm2022/lib/ui-file-linear-list-box/ui-file-linear-list-box.component.mjs +121 -0
- package/esm2022/lib/ui-form-panel/ui-form-panel.component.mjs +92 -0
- package/{esm2020 → esm2022}/lib/ui-gantt-chart/ui-gantt-chart.component.mjs +32 -32
- package/{esm2020 → esm2022}/lib/ui-graph/ui-graph.component.mjs +17 -17
- package/{esm2020 → esm2022}/lib/ui-grid/ui-grid.component.mjs +25 -25
- package/esm2022/lib/ui-grid-columns/ui-grid-columns.component.mjs +43 -0
- package/esm2022/lib/ui-grid-filter-item/ui-grid-filter-item.component.mjs +66 -0
- package/esm2022/lib/ui-grid-filter-settings/ui-grid-filter-settings.component.mjs +75 -0
- package/esm2022/lib/ui-grid-sort-item/ui-grid-sort-item.component.mjs +58 -0
- package/esm2022/lib/ui-grid-sort-setting/ui-grid-sort-setting.component.mjs +155 -0
- package/{esm2020 → esm2022}/lib/ui-html-viewer/ui-html-viewer.component.mjs +16 -16
- package/{esm2020 → esm2022}/lib/ui-info-bar-panel/ui-info-bar-panel.component.mjs +11 -11
- package/{esm2020 → esm2022}/lib/ui-label/ui-label.component.mjs +12 -12
- package/esm2022/lib/ui-linear-list-container-with-button/ui-linear-list-container-with-button.component.mjs +349 -0
- package/esm2022/lib/ui-list-view/ui-list-view.component.mjs +75 -0
- package/esm2022/lib/ui-matrix-view/ui-matrix-view.component.mjs +124 -0
- package/esm2022/lib/ui-mo-info-combo-viewer/ui-mo-info-combo-viewer.component.mjs +19 -0
- package/{esm2020 → esm2022}/lib/ui-mo-info-general-object-ui/ui-mo-info-general-object-ui.component.mjs +14 -14
- package/esm2022/lib/ui-mo-info-sub-form-ui/ui-mo-info-sub-form-ui.component.mjs +55 -0
- package/esm2022/lib/ui-mo-info-ulv-combo/ui-mo-info-ulv-combo.component.mjs +430 -0
- package/esm2022/lib/ui-monaco-editor/ui-monaco-editor.component.mjs +28 -0
- package/esm2022/lib/ui-multi-select-card/ui-multi-select-card.component.mjs +37 -0
- package/esm2022/lib/ui-multi-select-checkbox/ui-multi-select-checkbox.component.mjs +59 -0
- package/esm2022/lib/ui-multi-select-combo/ui-multi-select-combo.component.mjs +93 -0
- package/esm2022/lib/ui-multi-select-radio/ui-multi-select-radio.component.mjs +36 -0
- package/esm2022/lib/ui-multi-select-slider/ui-multi-select-slider.component.mjs +56 -0
- package/esm2022/lib/ui-multi-select-smile/ui-multi-select-smile.component.mjs +28 -0
- package/esm2022/lib/ui-num-decimal-ui/ui-num-decimal-ui.component.mjs +24 -0
- package/esm2022/lib/ui-num-int-slider/ui-num-int-slider.component.mjs +27 -0
- package/{esm2020 → esm2022}/lib/ui-num-int-ui/ui-num-int-ui.component.mjs +21 -21
- package/esm2022/lib/ui-pdf-viewer/ui-pdf-viewer.component.mjs +261 -0
- package/esm2022/lib/ui-picture-file/ui-picture-file.component.mjs +98 -0
- package/esm2022/lib/ui-pictures-info/ui-pictures-info.component.mjs +223 -0
- package/esm2022/lib/ui-radio-group/ui-radio-group.component.mjs +48 -0
- package/esm2022/lib/ui-read-only-field/ui-read-only-field.component.mjs +36 -0
- package/esm2022/lib/ui-report-container/ui-report-container.component.mjs +46 -0
- package/{esm2020 → esm2022}/lib/ui-search-command-info-ui/ui-search-command-info-ui.component.mjs +24 -24
- package/esm2022/lib/ui-simple-combo/ui-simple-combo.component.mjs +37 -0
- package/{esm2020 → esm2022}/lib/ui-single-picture/ui-single-picture.component.mjs +36 -36
- package/esm2022/lib/ui-switch-button/ui-switch-button.component.mjs +20 -0
- package/esm2022/lib/ui-table-view/ui-table-view.component.mjs +155 -0
- package/esm2022/lib/ui-text-area/ui-text-area.component.mjs +49 -0
- package/esm2022/lib/ui-text-field/ui-text-field.component.mjs +52 -0
- package/{esm2020 → esm2022}/lib/ui-text-field-auto-complete/ui-text-field-auto-complete.component.mjs +47 -47
- package/{esm2020 → esm2022}/lib/ui-time-span/ui-time-span.component.mjs +24 -24
- package/esm2022/lib/ui-tinymce/ui-tinymce.component.mjs +53 -0
- package/esm2022/lib/ui-tree/ui-tree.component.mjs +92 -0
- package/esm2022/lib/ui-tree-view/ui-tree-view.component.mjs +80 -0
- package/esm2022/lib/ui-ulv-form-multi-select-ui/ui-ulv-form-multi-select-ui.component.mjs +23 -0
- package/esm2022/lib/ui-ulv-main-ui/ui-ulv-main-ui.component.mjs +289 -0
- package/esm2022/lib/ui-workflow-panel-ui/ui-workflow-panel-ui.component.mjs +25 -0
- package/esm2022/lib/ul-loading-mask-ui/ul-loading-mask-ui.component.mjs +93 -0
- package/esm2022/lib/ul-msg-box-adapter/ul-msg-box-adapter.component.mjs +117 -0
- package/esm2022/lib/ul-notify-popup/ul-notify-popup.component.mjs +32 -0
- package/esm2022/lib/ul-toast-adapter/ul-toast-adapter.component.mjs +48 -0
- package/esm2022/lib/ulv-column-settings/ulv-column-settings.component.mjs +60 -0
- package/esm2022/lib/ulv-context-menu/ulv-context-menu.component.mjs +87 -0
- package/esm2022/lib/ulv-filter-settings/ulv-filter-settings.component.mjs +43 -0
- package/esm2022/lib/ulv-form-multi-select/ulv-form-multi-select.component.mjs +184 -0
- package/esm2022/lib/ulv-groupby-settings/ulv-groupby-settings.component.mjs +44 -0
- package/esm2022/lib/ulv-paging/ulv-paging.component.mjs +84 -0
- package/esm2022/lib/ulv-selection/ulv-selection.component.mjs +65 -0
- package/esm2022/lib/ulv-settings/ulv-settings.component.mjs +116 -0
- package/esm2022/lib/ulv-sort-settings/ulv-sort-settings.component.mjs +44 -0
- package/esm2022/lib/ulv-toolbar/ulv-toolbar.component.mjs +115 -0
- package/esm2022/lib/upload-file-status.pipe.mjs +28 -0
- package/esm2022/lib/util-chat-time-badge.pipe.mjs +18 -0
- package/esm2022/lib/util-date-to-hh-mm.pipe.mjs +23 -0
- package/{esm2020 → esm2022}/lib/wizard-layout.directive.mjs +103 -103
- package/{esm2020 → esm2022}/public-api.mjs +230 -222
- package/fesm2022/barsa-sap-ui.mjs +14765 -0
- package/fesm2022/barsa-sap-ui.mjs.map +1 -0
- package/index.d.ts +5 -5
- package/lib/apply-conditional-formmatings.directive.d.ts +25 -25
- package/lib/barsa-answer-card/barsa-answer-card.component.d.ts +12 -12
- package/lib/barsa-asp-viewer/barsa-asp-viewer.component.d.ts +31 -29
- package/lib/barsa-bar-panel/barsa-bar-panel.component.d.ts +9 -9
- package/lib/barsa-base-panel/barsa-base-layout-panel.component.d.ts +12 -12
- package/lib/barsa-card-layout-panel/barsa-card-layout-panel.component.d.ts +15 -15
- package/lib/barsa-card-row-payam/barsa-card-row-payam.component.d.ts +20 -20
- package/lib/barsa-cartable-form/barsa-cartable-form.component.d.ts +10 -10
- package/lib/barsa-cartable-template/barsa-cartable-template.component.d.ts +14 -14
- package/lib/barsa-chat/barsa-chat.component.d.ts +48 -0
- package/lib/barsa-chat/chat.model.d.ts +43 -0
- package/lib/barsa-chat-content/barsa-chat-content.component.d.ts +5 -0
- package/lib/barsa-chat-content-toolbar/barsa-chat-content-toolbar.component.d.ts +9 -0
- package/lib/barsa-chat-list/barsa-chat-list.component.d.ts +16 -0
- package/lib/barsa-chat-message/barsa-chat-message.component.d.ts +16 -0
- package/lib/barsa-chat-thread/barsa-chat-thread.component.d.ts +6 -0
- package/lib/barsa-chat-threads-list/barsa-chat-threads-list.component.d.ts +5 -0
- package/lib/barsa-chat-threads-list-toolbar/barsa-chat-threads-list-toolbar.component.d.ts +5 -0
- package/lib/barsa-chip/barsa-chip.component.d.ts +20 -20
- package/lib/barsa-column-indicator/barsa-column-indicator.component.d.ts +11 -11
- package/lib/barsa-column-rownumber/barsa-column-rownumber.component.d.ts +8 -8
- package/lib/barsa-custom-inline-edit/barsa-custom-inline-edit.component.d.ts +6 -6
- package/lib/barsa-custom-inline-edit-row/barsa-custom-inline-edit-row.component.d.ts +10 -10
- package/lib/barsa-date-time-picker/barsa-date-time-picker.component.d.ts +18 -18
- package/lib/barsa-dynamic-field/barsa-dynamic-field.component.d.ts +16 -16
- package/lib/barsa-enum-menu-button/barsa-enum-menu-button.component.d.ts +23 -23
- package/lib/barsa-field-key-value/barsa-field-key-value.component.d.ts +26 -26
- package/lib/barsa-form-side-content/barsa-form-side-content.component.d.ts +25 -23
- package/lib/barsa-grid-layout-panel/barsa-grid-layout-panel.component.d.ts +16 -16
- package/lib/barsa-group-cartable/barsa-cartable-group.component.d.ts +26 -26
- package/lib/barsa-horizontal-flex-panel/barsa-horizontal-flex-panel.component.d.ts +14 -14
- package/lib/barsa-linkable-items-panel/barsa-linkable-items-panel.component.d.ts +12 -12
- package/lib/barsa-list-file-linear/barsa-list-file-linear.component.d.ts +17 -17
- package/lib/barsa-list-file-linear-gmail/barsa-list-file-linear-gmail.component.d.ts +8 -8
- package/lib/barsa-list-layout-panel/barsa-list-layout-panel.component.d.ts +9 -9
- package/lib/barsa-monaco-editor/barsa-monaco-editor.component.d.ts +23 -23
- package/lib/barsa-network-offline/barsa-network-offline.component.d.ts +14 -14
- package/lib/barsa-pishnamayesh-payam/barsa-pishnamayesh-payam.component.d.ts +79 -79
- package/lib/barsa-question-answer-comments-section/barsa-question-answer-comments-section.component.d.ts +7 -7
- package/lib/barsa-question-answer-content-actions-section/barsa-question-answer-content-actions-section.component.d.ts +13 -13
- package/lib/barsa-question-answer-creator-time-section/barsa-question-answer-creator-time-section.component.d.ts +7 -7
- package/lib/barsa-question-answer-form/barsa-question-answer-form.component.d.ts +10 -10
- package/lib/barsa-question-answer-form-add-comment/barsa-question-answer-form-add-comment.component.d.ts +13 -13
- package/lib/barsa-question-answer-vote-section/barsa-question-answer-vote-section.component.d.ts +14 -14
- package/lib/barsa-question-post/barsa-question-post.component.d.ts +10 -10
- package/lib/barsa-report-card-flex-view/barsa-report-card-flex-view.component.d.ts +9 -9
- package/lib/barsa-report-checkbox-switch-button/barsa-report-checkbox-switch-button.component.d.ts +15 -15
- package/lib/barsa-report-one-of-list/barsa-report-one-of-list.component.d.ts +31 -31
- package/lib/barsa-sap-ui-routing.module.d.ts +7 -7
- package/lib/barsa-sap-ui.module.d.ts +245 -234
- package/lib/barsa-search-form/barsa-search-form.component.d.ts +8 -8
- package/lib/barsa-simple-form/barsa-simple-form.component.d.ts +73 -73
- package/lib/barsa-table-column/barsa-table-column.component.d.ts +8 -8
- package/lib/barsa-table-header/barsa-table-header.component.d.ts +59 -59
- package/lib/barsa-table-row/barsa-table-row.component.d.ts +19 -18
- package/lib/barsa-tag-categories/barsa-tag-categories.component.d.ts +11 -11
- package/lib/barsa-tag-chip/barsa-tag-chip.component.d.ts +10 -10
- package/lib/barsa-tags-category-row/barsa-tags-category-row.component.d.ts +9 -9
- package/lib/barsa-text-ellipsis/barsa-text-ellipsis.component.d.ts +18 -18
- package/lib/barsa-tinyemce/barsa-tinyemce.component.d.ts +54 -54
- package/lib/barsa-toolbaritem-search/barsa-toolbaritem-search.component.d.ts +12 -12
- package/lib/barsa-tree-item/barsa-tree-item.component.d.ts +54 -54
- package/lib/barsa-tree-item/node-has-one-depth-level.pipe.d.ts +8 -8
- package/lib/barsa-ulv-main/barsa-ulv-main.component.d.ts +72 -72
- package/lib/blob-viewer/blob-viewer.component.d.ts +24 -24
- package/lib/breadcrumb/breadcrumb.component.d.ts +17 -17
- package/lib/captcha-field/captcha-field.component.d.ts +10 -10
- package/lib/card-item/card-item.component.d.ts +20 -20
- package/lib/card-view-content/card-view-content.component.d.ts +14 -14
- package/lib/col-renderer.directive.d.ts +10 -10
- package/lib/column-matrix-renderer/column-matrix-renderer.component.d.ts +23 -23
- package/lib/column-matrix-renderer/matrix-value.pipe.d.ts +8 -8
- package/lib/column-renderer/column-renderer.component.d.ts +33 -33
- package/lib/constants.d.ts +12 -12
- package/lib/custom-date-time/custom-date-time.component.d.ts +26 -26
- package/lib/device-info-field-base.d.ts +12 -12
- package/lib/dialog-handler.directive.d.ts +12 -12
- package/lib/download-files.directive.d.ts +9 -9
- package/lib/dynamic-page-size.pipe.d.ts +8 -8
- package/lib/file-in-dialog/file-in-dialog.component.d.ts +16 -16
- package/lib/file-viewer/file-viewer.component.d.ts +21 -21
- package/lib/file-viewer-content/file-viewer-content.component.d.ts +20 -20
- package/lib/file-viewer-popover/file-viewer-popover.component.d.ts +17 -17
- package/lib/form-dialog/form-dialog.component.d.ts +45 -45
- package/lib/form-dialog-less/form-dialog-less.component.d.ts +29 -29
- package/lib/form-toolbar/form-toolbar.component.d.ts +14 -14
- package/lib/form-toolbar-button/form-toolbar-button.component.d.ts +20 -20
- package/lib/form-wizard/form-wizard.component.d.ts +8 -8
- package/lib/fullscreen-dialog.directive.d.ts +20 -20
- package/lib/fullscreen-files.directive.d.ts +16 -16
- package/lib/fundamental-dynamic-form/fundamental-dynamic-form.component.d.ts +77 -76
- package/lib/gantt-dhtml-chart-view/gantt-dhtml-chart-view.component.d.ts +18 -18
- package/lib/global-search/global-search.component.d.ts +11 -11
- package/lib/global-search-module/global-search-module.component.d.ts +18 -18
- package/lib/global-search-panel/global-search-panel.component.d.ts +9 -9
- package/lib/header-avatar/header-avatar.component.d.ts +8 -8
- package/lib/header-facet-form/header-facet-form.component.d.ts +9 -9
- package/lib/header-facet-key-value/header-facet-key-value.component.d.ts +11 -11
- package/lib/header-facet-microchart/header-facet-microchart.component.d.ts +8 -8
- package/lib/header-facet-plain-text/header-facet-plain-text.component.d.ts +11 -11
- package/lib/header-facet-progress/header-facet-progress.component.d.ts +11 -11
- package/lib/header-facet-rate/header-facet-rate.component.d.ts +11 -11
- package/lib/htree-create-new/htree-create-new.component.d.ts +13 -13
- package/lib/hyperlink/hyperlink.component.d.ts +7 -7
- package/lib/index.d.ts +102 -100
- package/lib/inline-save-and-cancel/inline-save-and-cancel.component.d.ts +11 -11
- package/lib/layout-actions/layout-actions.component.d.ts +25 -25
- package/lib/layout-control/layout-control.component.d.ts +67 -67
- package/lib/layout-wizard/layout-wizard.component.d.ts +28 -28
- package/lib/list-item/list-item.component.d.ts +14 -14
- package/lib/ly-empty-space/ly-empty-space.component.d.ts +13 -13
- package/lib/ly-horizontal-layout/ly-horizontal-layout.component.d.ts +23 -23
- package/lib/ly-label/ly-label.component.d.ts +16 -16
- package/lib/ly-layout-container/ly-layout-container.component.d.ts +26 -26
- package/lib/ly-layout-container-of-root/ly-layout-container-of-root.component.d.ts +8 -8
- package/lib/ly-layout-field-label/ly-layout-field-label.component.d.ts +13 -13
- package/lib/ly-layout-panel/ly-layout-panel.component.d.ts +26 -26
- package/lib/ly-line/ly-line.component.d.ts +17 -17
- package/lib/ly-simple-label/ly-simple-label.component.d.ts +9 -9
- package/lib/ly-tab-container/ly-tab-container.component.d.ts +19 -19
- package/lib/ly-tab-page/ly-tab-page.component.d.ts +20 -20
- package/lib/ly-vertical-layout/ly-vertical-layout.component.d.ts +19 -19
- package/lib/manage-filters-report/manage-filters-report.component.d.ts +24 -24
- package/lib/mask/mask.component.d.ts +9 -9
- package/lib/message-strip/message-strip.component.d.ts +11 -11
- package/lib/models/grid-data-provider.d.ts +22 -22
- package/lib/models/grid-view.d.ts +61 -61
- package/lib/models/index.d.ts +1 -1
- package/lib/no-data/no-data.component.d.ts +11 -9
- package/lib/notification-item/notification-item.component.d.ts +43 -43
- package/lib/notification-popup.service.d.ts +17 -17
- package/lib/progress-indicator/progress-indicator.component.d.ts +8 -8
- package/lib/report-navigator/report-navigator.component.d.ts +21 -21
- package/lib/report-new-top-form/report-new-top-form.component.d.ts +18 -18
- package/lib/report-search-fields-hidden-settings/report-search-fields-hidden-settings.component.d.ts +14 -14
- package/lib/report-search-fields-manage/report-search-fields-manage.component.d.ts +20 -20
- package/lib/report-search-panel-save/report-search-panel-save.component.d.ts +27 -27
- package/lib/report-tree-base.d.ts +62 -62
- package/lib/report-view-renderer.directive.d.ts +117 -117
- package/lib/responsive-toolbar/responsive-toolbar.component.d.ts +19 -19
- package/lib/responsive-toolbar-renderer/responsive-toolbar-renderer.component.d.ts +24 -24
- package/lib/rich-text-static/rich-text-static.component.d.ts +28 -28
- package/lib/sap-font-class.pipe.d.ts +8 -8
- package/lib/sap-font.pipe.d.ts +9 -9
- package/lib/sap-size.pipe.d.ts +8 -8
- package/lib/sap-ui-report-base.component.d.ts +154 -154
- package/lib/search-panel/search-panel.component.d.ts +14 -14
- package/lib/static-text/static-text.component.d.ts +7 -7
- package/lib/title/title.component.d.ts +7 -7
- package/lib/ui-asp-report-viewer/ui-asp-report-viewer.component.d.ts +9 -9
- package/lib/ui-button/ui-button.component.d.ts +11 -11
- package/lib/ui-calendar/ui-calendar.component.d.ts +19 -19
- package/lib/ui-card-view/ui-card-view.component.d.ts +16 -16
- package/lib/ui-card-view-horizontal-group/ui-card-view-horizontal-group.component.d.ts +12 -12
- package/lib/ui-check-box/ui-check-box.component.d.ts +14 -14
- package/lib/ui-color-ui/ui-color-ui.component.d.ts +16 -16
- package/lib/ui-container-with-button/ui-container-with-button.component.d.ts +11 -11
- package/lib/ui-date-range-ex/ui-date-range-ex.component.d.ts +35 -36
- package/lib/ui-date-time/ui-date-time.component.d.ts +39 -40
- package/lib/ui-editable-grid/ui-editable-grid.component.d.ts +43 -43
- package/lib/ui-exception-form/ui-exception-form.component.d.ts +15 -15
- package/lib/ui-file-linear-list-box/ui-file-linear-list-box.component.d.ts +50 -50
- package/lib/ui-form-panel/ui-form-panel.component.d.ts +53 -53
- package/lib/ui-gantt-chart/ui-gantt-chart.component.d.ts +15 -15
- package/lib/ui-graph/ui-graph.component.d.ts +9 -9
- package/lib/ui-grid/ui-grid.component.d.ts +12 -12
- package/lib/ui-grid-columns/ui-grid-columns.component.d.ts +14 -14
- package/lib/ui-grid-filter-item/ui-grid-filter-item.component.d.ts +19 -19
- package/lib/ui-grid-filter-settings/ui-grid-filter-settings.component.d.ts +24 -24
- package/lib/ui-grid-sort-item/ui-grid-sort-item.component.d.ts +25 -25
- package/lib/ui-grid-sort-setting/ui-grid-sort-setting.component.d.ts +28 -28
- package/lib/ui-html-viewer/ui-html-viewer.component.d.ts +9 -9
- package/lib/ui-info-bar-panel/ui-info-bar-panel.component.d.ts +5 -5
- package/lib/ui-label/ui-label.component.d.ts +6 -6
- package/lib/ui-linear-list-container-with-button/ui-linear-list-container-with-button.component.d.ts +73 -73
- package/lib/ui-list-view/ui-list-view.component.d.ts +29 -29
- package/lib/ui-matrix-view/ui-matrix-view.component.d.ts +45 -45
- package/lib/ui-mo-info-combo-viewer/ui-mo-info-combo-viewer.component.d.ts +7 -7
- package/lib/ui-mo-info-general-object-ui/ui-mo-info-general-object-ui.component.d.ts +6 -6
- package/lib/ui-mo-info-sub-form-ui/ui-mo-info-sub-form-ui.component.d.ts +15 -15
- package/lib/ui-mo-info-ulv-combo/ui-mo-info-ulv-combo.component.d.ts +90 -90
- package/lib/ui-monaco-editor/ui-monaco-editor.component.d.ts +10 -7
- package/lib/ui-multi-select-card/ui-multi-select-card.component.d.ts +17 -17
- package/lib/ui-multi-select-checkbox/ui-multi-select-checkbox.component.d.ts +19 -19
- package/lib/ui-multi-select-combo/ui-multi-select-combo.component.d.ts +27 -27
- package/lib/ui-multi-select-radio/ui-multi-select-radio.component.d.ts +17 -17
- package/lib/ui-multi-select-slider/ui-multi-select-slider.component.d.ts +24 -24
- package/lib/ui-multi-select-smile/ui-multi-select-smile.component.d.ts +23 -23
- package/lib/ui-num-decimal-ui/ui-num-decimal-ui.component.d.ts +11 -11
- package/lib/ui-num-int-slider/ui-num-int-slider.component.d.ts +18 -18
- package/lib/ui-num-int-ui/ui-num-int-ui.component.d.ts +10 -10
- package/lib/ui-pdf-viewer/ui-pdf-viewer.component.d.ts +79 -79
- package/lib/ui-picture-file/ui-picture-file.component.d.ts +26 -25
- package/lib/ui-pictures-info/ui-pictures-info.component.d.ts +80 -69
- package/lib/ui-radio-group/ui-radio-group.component.d.ts +20 -20
- package/lib/ui-read-only-field/ui-read-only-field.component.d.ts +21 -21
- package/lib/ui-report-container/ui-report-container.component.d.ts +17 -17
- package/lib/ui-search-command-info-ui/ui-search-command-info-ui.component.d.ts +9 -9
- package/lib/ui-simple-combo/ui-simple-combo.component.d.ts +16 -16
- package/lib/ui-single-picture/ui-single-picture.component.d.ts +13 -13
- package/lib/ui-switch-button/ui-switch-button.component.d.ts +11 -11
- package/lib/ui-table-view/ui-table-view.component.d.ts +39 -39
- package/lib/ui-text-area/ui-text-area.component.d.ts +23 -23
- package/lib/ui-text-field/ui-text-field.component.d.ts +23 -23
- package/lib/ui-text-field-auto-complete/ui-text-field-auto-complete.component.d.ts +13 -13
- package/lib/ui-time-span/ui-time-span.component.d.ts +10 -10
- package/lib/ui-tinymce/ui-tinymce.component.d.ts +22 -22
- package/lib/ui-tree/ui-tree.component.d.ts +37 -37
- package/lib/ui-tree-view/ui-tree-view.component.d.ts +47 -47
- package/lib/ui-ulv-form-multi-select-ui/ui-ulv-form-multi-select-ui.component.d.ts +9 -9
- package/lib/ui-ulv-main-ui/ui-ulv-main-ui.component.d.ts +74 -74
- package/lib/ui-workflow-panel-ui/ui-workflow-panel-ui.component.d.ts +16 -16
- package/lib/ul-loading-mask-ui/ul-loading-mask-ui.component.d.ts +21 -21
- package/lib/ul-msg-box-adapter/ul-msg-box-adapter.component.d.ts +48 -48
- package/lib/ul-notify-popup/ul-notify-popup.component.d.ts +21 -21
- package/lib/ul-toast-adapter/ul-toast-adapter.component.d.ts +13 -13
- package/lib/ulv-column-settings/ulv-column-settings.component.d.ts +20 -20
- package/lib/ulv-context-menu/ulv-context-menu.component.d.ts +31 -31
- package/lib/ulv-filter-settings/ulv-filter-settings.component.d.ts +19 -19
- package/lib/ulv-form-multi-select/ulv-form-multi-select.component.d.ts +26 -26
- package/lib/ulv-groupby-settings/ulv-groupby-settings.component.d.ts +16 -16
- package/lib/ulv-paging/ulv-paging.component.d.ts +28 -28
- package/lib/ulv-selection/ulv-selection.component.d.ts +43 -43
- package/lib/ulv-settings/ulv-settings.component.d.ts +43 -43
- package/lib/ulv-sort-settings/ulv-sort-settings.component.d.ts +16 -16
- package/lib/ulv-toolbar/ulv-toolbar.component.d.ts +49 -49
- package/lib/upload-file-status.pipe.d.ts +9 -9
- package/lib/util-chat-time-badge.pipe.d.ts +7 -0
- package/lib/util-date-to-hh-mm.pipe.d.ts +7 -0
- package/lib/wizard-layout.directive.d.ts +40 -40
- package/package.json +7 -13
- package/public-api.d.ts +226 -218
- package/esm2020/lib/apply-conditional-formmatings.directive.mjs +0 -89
- package/esm2020/lib/barsa-answer-card/barsa-answer-card.component.mjs +0 -41
- package/esm2020/lib/barsa-asp-viewer/barsa-asp-viewer.component.mjs +0 -127
- package/esm2020/lib/barsa-base-panel/barsa-base-layout-panel.component.mjs +0 -29
- package/esm2020/lib/barsa-card-layout-panel/barsa-card-layout-panel.component.mjs +0 -25
- package/esm2020/lib/barsa-card-row-payam/barsa-card-row-payam.component.mjs +0 -30
- package/esm2020/lib/barsa-cartable-form/barsa-cartable-form.component.mjs +0 -41
- package/esm2020/lib/barsa-chip/barsa-chip.component.mjs +0 -72
- package/esm2020/lib/barsa-custom-inline-edit/barsa-custom-inline-edit.component.mjs +0 -15
- package/esm2020/lib/barsa-custom-inline-edit-row/barsa-custom-inline-edit-row.component.mjs +0 -26
- package/esm2020/lib/barsa-date-time-picker/barsa-date-time-picker.component.mjs +0 -71
- package/esm2020/lib/barsa-dynamic-field/barsa-dynamic-field.component.mjs +0 -42
- package/esm2020/lib/barsa-enum-menu-button/barsa-enum-menu-button.component.mjs +0 -61
- package/esm2020/lib/barsa-field-key-value/barsa-field-key-value.component.mjs +0 -45
- package/esm2020/lib/barsa-form-side-content/barsa-form-side-content.component.mjs +0 -37
- package/esm2020/lib/barsa-grid-layout-panel/barsa-grid-layout-panel.component.mjs +0 -27
- package/esm2020/lib/barsa-group-cartable/barsa-cartable-group.component.mjs +0 -94
- package/esm2020/lib/barsa-horizontal-flex-panel/barsa-horizontal-flex-panel.component.mjs +0 -22
- package/esm2020/lib/barsa-linkable-items-panel/barsa-linkable-items-panel.component.mjs +0 -37
- package/esm2020/lib/barsa-list-file-linear/barsa-list-file-linear.component.mjs +0 -41
- package/esm2020/lib/barsa-list-file-linear-gmail/barsa-list-file-linear-gmail.component.mjs +0 -29
- package/esm2020/lib/barsa-list-layout-panel/barsa-list-layout-panel.component.mjs +0 -23
- package/esm2020/lib/barsa-monaco-editor/barsa-monaco-editor.component.mjs +0 -83
- package/esm2020/lib/barsa-network-offline/barsa-network-offline.component.mjs +0 -53
- package/esm2020/lib/barsa-pishnamayesh-payam/barsa-pishnamayesh-payam.component.mjs +0 -159
- package/esm2020/lib/barsa-question-answer-comments-section/barsa-question-answer-comments-section.component.mjs +0 -17
- package/esm2020/lib/barsa-question-answer-content-actions-section/barsa-question-answer-content-actions-section.component.mjs +0 -31
- package/esm2020/lib/barsa-question-answer-creator-time-section/barsa-question-answer-creator-time-section.component.mjs +0 -14
- package/esm2020/lib/barsa-question-answer-form/barsa-question-answer-form.component.mjs +0 -35
- package/esm2020/lib/barsa-question-answer-form-add-comment/barsa-question-answer-form-add-comment.component.mjs +0 -47
- package/esm2020/lib/barsa-question-answer-vote-section/barsa-question-answer-vote-section.component.mjs +0 -78
- package/esm2020/lib/barsa-question-post/barsa-question-post.component.mjs +0 -30
- package/esm2020/lib/barsa-report-card-flex-view/barsa-report-card-flex-view.component.mjs +0 -31
- package/esm2020/lib/barsa-report-one-of-list/barsa-report-one-of-list.component.mjs +0 -98
- package/esm2020/lib/barsa-sap-ui.module.mjs +0 -332
- package/esm2020/lib/barsa-search-form/barsa-search-form.component.mjs +0 -29
- package/esm2020/lib/barsa-simple-form/barsa-simple-form.component.mjs +0 -168
- package/esm2020/lib/barsa-table-column/barsa-table-column.component.mjs +0 -28
- package/esm2020/lib/barsa-table-header/barsa-table-header.component.mjs +0 -198
- package/esm2020/lib/barsa-table-row/barsa-table-row.component.mjs +0 -61
- package/esm2020/lib/barsa-tag-categories/barsa-tag-categories.component.mjs +0 -60
- package/esm2020/lib/barsa-tag-chip/barsa-tag-chip.component.mjs +0 -26
- package/esm2020/lib/barsa-tags-category-row/barsa-tags-category-row.component.mjs +0 -23
- package/esm2020/lib/barsa-text-ellipsis/barsa-text-ellipsis.component.mjs +0 -38
- package/esm2020/lib/barsa-tinyemce/barsa-tinyemce.component.mjs +0 -417
- package/esm2020/lib/barsa-toolbaritem-search/barsa-toolbaritem-search.component.mjs +0 -36
- package/esm2020/lib/barsa-tree-item/barsa-tree-item.component.mjs +0 -130
- package/esm2020/lib/barsa-ulv-main/barsa-ulv-main.component.mjs +0 -209
- package/esm2020/lib/blob-viewer/blob-viewer.component.mjs +0 -78
- package/esm2020/lib/breadcrumb/breadcrumb.component.mjs +0 -45
- package/esm2020/lib/card-item/card-item.component.mjs +0 -76
- package/esm2020/lib/card-view-content/card-view-content.component.mjs +0 -46
- package/esm2020/lib/col-renderer.directive.mjs +0 -46
- package/esm2020/lib/column-matrix-renderer/column-matrix-renderer.component.mjs +0 -56
- package/esm2020/lib/column-matrix-renderer/matrix-value.pipe.mjs +0 -60
- package/esm2020/lib/column-renderer/column-renderer.component.mjs +0 -85
- package/esm2020/lib/constants.mjs +0 -421
- package/esm2020/lib/custom-date-time/custom-date-time.component.mjs +0 -41
- package/esm2020/lib/download-files.directive.mjs +0 -33
- package/esm2020/lib/dynamic-page-size.pipe.mjs +0 -26
- package/esm2020/lib/file-viewer/file-viewer.component.mjs +0 -47
- package/esm2020/lib/file-viewer-popover/file-viewer-popover.component.mjs +0 -41
- package/esm2020/lib/form-dialog/form-dialog.component.mjs +0 -143
- package/esm2020/lib/form-dialog-less/form-dialog-less.component.mjs +0 -45
- package/esm2020/lib/form-toolbar/form-toolbar.component.mjs +0 -42
- package/esm2020/lib/form-toolbar-button/form-toolbar-button.component.mjs +0 -46
- package/esm2020/lib/form-wizard/form-wizard.component.mjs +0 -21
- package/esm2020/lib/fullscreen-dialog.directive.mjs +0 -59
- package/esm2020/lib/fullscreen-files.directive.mjs +0 -42
- package/esm2020/lib/fundamental-dynamic-form/fundamental-dynamic-form.component.mjs +0 -188
- package/esm2020/lib/gantt-dhtml-chart-view/gantt-dhtml-chart-view.component.mjs +0 -203
- package/esm2020/lib/global-search-module/global-search-module.component.mjs +0 -30
- package/esm2020/lib/global-search-panel/global-search-panel.component.mjs +0 -25
- package/esm2020/lib/header-avatar/header-avatar.component.mjs +0 -19
- package/esm2020/lib/header-facet-progress/header-facet-progress.component.mjs +0 -26
- package/esm2020/lib/header-facet-rate/header-facet-rate.component.mjs +0 -26
- package/esm2020/lib/htree-create-new/htree-create-new.component.mjs +0 -49
- package/esm2020/lib/hyperlink/hyperlink.component.mjs +0 -23
- package/esm2020/lib/index.mjs +0 -529
- package/esm2020/lib/layout-actions/layout-actions.component.mjs +0 -68
- package/esm2020/lib/layout-control/layout-control.component.mjs +0 -234
- package/esm2020/lib/layout-wizard/layout-wizard.component.mjs +0 -155
- package/esm2020/lib/list-item/list-item.component.mjs +0 -33
- package/esm2020/lib/ly-empty-space/ly-empty-space.component.mjs +0 -42
- package/esm2020/lib/ly-horizontal-layout/ly-horizontal-layout.component.mjs +0 -71
- package/esm2020/lib/ly-label/ly-label.component.mjs +0 -35
- package/esm2020/lib/ly-layout-container/ly-layout-container.component.mjs +0 -83
- package/esm2020/lib/ly-layout-container-of-root/ly-layout-container-of-root.component.mjs +0 -17
- package/esm2020/lib/ly-layout-panel/ly-layout-panel.component.mjs +0 -73
- package/esm2020/lib/ly-line/ly-line.component.mjs +0 -56
- package/esm2020/lib/ly-simple-label/ly-simple-label.component.mjs +0 -23
- package/esm2020/lib/ly-tab-container/ly-tab-container.component.mjs +0 -52
- package/esm2020/lib/ly-tab-page/ly-tab-page.component.mjs +0 -44
- package/esm2020/lib/ly-vertical-layout/ly-vertical-layout.component.mjs +0 -50
- package/esm2020/lib/manage-filters-report/manage-filters-report.component.mjs +0 -45
- package/esm2020/lib/message-strip/message-strip.component.mjs +0 -28
- package/esm2020/lib/models/grid-data-provider.mjs +0 -83
- package/esm2020/lib/models/grid-view.mjs +0 -2
- package/esm2020/lib/no-data/no-data.component.mjs +0 -23
- package/esm2020/lib/notification-item/notification-item.component.mjs +0 -57
- package/esm2020/lib/notification-popup.service.mjs +0 -88
- package/esm2020/lib/report-navigator/report-navigator.component.mjs +0 -63
- package/esm2020/lib/report-new-top-form/report-new-top-form.component.mjs +0 -60
- package/esm2020/lib/report-search-fields-hidden-settings/report-search-fields-hidden-settings.component.mjs +0 -35
- package/esm2020/lib/report-search-fields-manage/report-search-fields-manage.component.mjs +0 -98
- package/esm2020/lib/report-search-panel-save/report-search-panel-save.component.mjs +0 -90
- package/esm2020/lib/report-tree-base.mjs +0 -408
- package/esm2020/lib/report-view-renderer.directive.mjs +0 -366
- package/esm2020/lib/responsive-toolbar/responsive-toolbar.component.mjs +0 -50
- package/esm2020/lib/responsive-toolbar-renderer/responsive-toolbar-renderer.component.mjs +0 -84
- package/esm2020/lib/rich-text-static/rich-text-static.component.mjs +0 -72
- package/esm2020/lib/sap-font-class.pipe.mjs +0 -29
- package/esm2020/lib/sap-font.pipe.mjs +0 -29
- package/esm2020/lib/sap-size.pipe.mjs +0 -27
- package/esm2020/lib/sap-ui-report-base.component.mjs +0 -766
- package/esm2020/lib/search-panel/search-panel.component.mjs +0 -43
- package/esm2020/lib/ui-button/ui-button.component.mjs +0 -31
- package/esm2020/lib/ui-calendar/ui-calendar.component.mjs +0 -53
- package/esm2020/lib/ui-card-view/ui-card-view.component.mjs +0 -60
- package/esm2020/lib/ui-card-view-horizontal-group/ui-card-view-horizontal-group.component.mjs +0 -43
- package/esm2020/lib/ui-check-box/ui-check-box.component.mjs +0 -34
- package/esm2020/lib/ui-color-ui/ui-color-ui.component.mjs +0 -50
- package/esm2020/lib/ui-container-with-button/ui-container-with-button.component.mjs +0 -34
- package/esm2020/lib/ui-date-range-ex/ui-date-range-ex.component.mjs +0 -194
- package/esm2020/lib/ui-date-time/ui-date-time.component.mjs +0 -150
- package/esm2020/lib/ui-editable-grid/ui-editable-grid.component.mjs +0 -110
- package/esm2020/lib/ui-exception-form/ui-exception-form.component.mjs +0 -53
- package/esm2020/lib/ui-file-linear-list-box/ui-file-linear-list-box.component.mjs +0 -121
- package/esm2020/lib/ui-form-panel/ui-form-panel.component.mjs +0 -92
- package/esm2020/lib/ui-grid-columns/ui-grid-columns.component.mjs +0 -44
- package/esm2020/lib/ui-grid-filter-item/ui-grid-filter-item.component.mjs +0 -67
- package/esm2020/lib/ui-grid-filter-settings/ui-grid-filter-settings.component.mjs +0 -76
- package/esm2020/lib/ui-grid-sort-item/ui-grid-sort-item.component.mjs +0 -59
- package/esm2020/lib/ui-grid-sort-setting/ui-grid-sort-setting.component.mjs +0 -156
- package/esm2020/lib/ui-linear-list-container-with-button/ui-linear-list-container-with-button.component.mjs +0 -349
- package/esm2020/lib/ui-list-view/ui-list-view.component.mjs +0 -75
- package/esm2020/lib/ui-matrix-view/ui-matrix-view.component.mjs +0 -125
- package/esm2020/lib/ui-mo-info-combo-viewer/ui-mo-info-combo-viewer.component.mjs +0 -19
- package/esm2020/lib/ui-mo-info-sub-form-ui/ui-mo-info-sub-form-ui.component.mjs +0 -56
- package/esm2020/lib/ui-mo-info-ulv-combo/ui-mo-info-ulv-combo.component.mjs +0 -430
- package/esm2020/lib/ui-monaco-editor/ui-monaco-editor.component.mjs +0 -18
- package/esm2020/lib/ui-multi-select-card/ui-multi-select-card.component.mjs +0 -37
- package/esm2020/lib/ui-multi-select-checkbox/ui-multi-select-checkbox.component.mjs +0 -59
- package/esm2020/lib/ui-multi-select-combo/ui-multi-select-combo.component.mjs +0 -93
- package/esm2020/lib/ui-multi-select-radio/ui-multi-select-radio.component.mjs +0 -36
- package/esm2020/lib/ui-multi-select-slider/ui-multi-select-slider.component.mjs +0 -56
- package/esm2020/lib/ui-multi-select-smile/ui-multi-select-smile.component.mjs +0 -28
- package/esm2020/lib/ui-num-decimal-ui/ui-num-decimal-ui.component.mjs +0 -24
- package/esm2020/lib/ui-num-int-slider/ui-num-int-slider.component.mjs +0 -27
- package/esm2020/lib/ui-pdf-viewer/ui-pdf-viewer.component.mjs +0 -262
- package/esm2020/lib/ui-picture-file/ui-picture-file.component.mjs +0 -91
- package/esm2020/lib/ui-pictures-info/ui-pictures-info.component.mjs +0 -223
- package/esm2020/lib/ui-radio-group/ui-radio-group.component.mjs +0 -48
- package/esm2020/lib/ui-read-only-field/ui-read-only-field.component.mjs +0 -36
- package/esm2020/lib/ui-report-container/ui-report-container.component.mjs +0 -46
- package/esm2020/lib/ui-simple-combo/ui-simple-combo.component.mjs +0 -37
- package/esm2020/lib/ui-switch-button/ui-switch-button.component.mjs +0 -20
- package/esm2020/lib/ui-table-view/ui-table-view.component.mjs +0 -151
- package/esm2020/lib/ui-text-area/ui-text-area.component.mjs +0 -49
- package/esm2020/lib/ui-text-field/ui-text-field.component.mjs +0 -52
- package/esm2020/lib/ui-tinymce/ui-tinymce.component.mjs +0 -53
- package/esm2020/lib/ui-tree/ui-tree.component.mjs +0 -92
- package/esm2020/lib/ui-tree-view/ui-tree-view.component.mjs +0 -81
- package/esm2020/lib/ui-ulv-form-multi-select-ui/ui-ulv-form-multi-select-ui.component.mjs +0 -24
- package/esm2020/lib/ui-ulv-main-ui/ui-ulv-main-ui.component.mjs +0 -289
- package/esm2020/lib/ui-workflow-panel-ui/ui-workflow-panel-ui.component.mjs +0 -26
- package/esm2020/lib/ul-loading-mask-ui/ul-loading-mask-ui.component.mjs +0 -91
- package/esm2020/lib/ul-msg-box-adapter/ul-msg-box-adapter.component.mjs +0 -117
- package/esm2020/lib/ul-notify-popup/ul-notify-popup.component.mjs +0 -32
- package/esm2020/lib/ul-toast-adapter/ul-toast-adapter.component.mjs +0 -44
- package/esm2020/lib/ulv-column-settings/ulv-column-settings.component.mjs +0 -60
- package/esm2020/lib/ulv-context-menu/ulv-context-menu.component.mjs +0 -87
- package/esm2020/lib/ulv-filter-settings/ulv-filter-settings.component.mjs +0 -43
- package/esm2020/lib/ulv-form-multi-select/ulv-form-multi-select.component.mjs +0 -185
- package/esm2020/lib/ulv-groupby-settings/ulv-groupby-settings.component.mjs +0 -44
- package/esm2020/lib/ulv-paging/ulv-paging.component.mjs +0 -84
- package/esm2020/lib/ulv-selection/ulv-selection.component.mjs +0 -66
- package/esm2020/lib/ulv-settings/ulv-settings.component.mjs +0 -117
- package/esm2020/lib/ulv-sort-settings/ulv-sort-settings.component.mjs +0 -44
- package/esm2020/lib/ulv-toolbar/ulv-toolbar.component.mjs +0 -115
- package/esm2020/lib/upload-file-status.pipe.mjs +0 -28
- package/fesm2015/barsa-sap-ui.mjs +0 -14233
- package/fesm2015/barsa-sap-ui.mjs.map +0 -1
- package/fesm2020/barsa-sap-ui.mjs +0 -14203
- package/fesm2020/barsa-sap-ui.mjs.map +0 -1
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { Component, ChangeDetectionStrategy, ViewChild, TemplateRef } from '@angular/core';
|
|
2
|
+
import { BaseComponent } from 'barsa-novin-ray-core';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@fundamental-ngx/core";
|
|
5
|
+
import * as i2 from "barsa-novin-ray-core";
|
|
6
|
+
import * as i3 from "@fundamental-ngx/core/bar";
|
|
7
|
+
import * as i4 from "@fundamental-ngx/core/dialog";
|
|
8
|
+
import * as i5 from "@fundamental-ngx/cdk/utils";
|
|
9
|
+
import * as i6 from "@fundamental-ngx/core/title";
|
|
10
|
+
import * as i7 from "@fundamental-ngx/core/text";
|
|
11
|
+
export class BarsaNetworkOfflineComponent extends BaseComponent {
|
|
12
|
+
constructor(_dialogService, _networkStatusService, _portalService) {
|
|
13
|
+
super();
|
|
14
|
+
this._dialogService = _dialogService;
|
|
15
|
+
_portalService.deviceSize$.pipe().subscribe((c) => (this.size = c));
|
|
16
|
+
_networkStatusService.networkStatus$.subscribe((status) => {
|
|
17
|
+
if (!status) {
|
|
18
|
+
this.openOfflineDialog();
|
|
19
|
+
}
|
|
20
|
+
else if (this._dialogRef) {
|
|
21
|
+
this._dialogRef.close();
|
|
22
|
+
this._dialogRef = null;
|
|
23
|
+
}
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
openOfflineDialog() {
|
|
27
|
+
const dialogConfig = {
|
|
28
|
+
escKeyCloseable: false,
|
|
29
|
+
dialogPanelClass: `offline-internet-dialog`,
|
|
30
|
+
verticalPadding: false
|
|
31
|
+
};
|
|
32
|
+
// dialogConfig.mobile = true;
|
|
33
|
+
if (this.size === 's') {
|
|
34
|
+
dialogConfig.fullScreen = true;
|
|
35
|
+
}
|
|
36
|
+
else {
|
|
37
|
+
dialogConfig.width = '380px';
|
|
38
|
+
dialogConfig.height = 'auto';
|
|
39
|
+
dialogConfig.minHeight = '320px';
|
|
40
|
+
}
|
|
41
|
+
this._dialogRef = this._dialogService.open(this.dialogContainer, dialogConfig);
|
|
42
|
+
}
|
|
43
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: BarsaNetworkOfflineComponent, deps: [{ token: i1.DialogService }, { token: i2.NetworkStatusService }, { token: i2.PortalService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
44
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.5", type: BarsaNetworkOfflineComponent, selector: "bsu-barsa-network-offline", viewQueries: [{ propertyName: "dialogContainer", first: true, predicate: ["container"], descendants: true, read: TemplateRef }], usesInheritance: true, ngImport: i0, template: "<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #container>\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\" #dialogTpl>\n <fd-dialog-header>\n <h1 fd-title>{{ 'ErrorInConnection' | bbbTranslate }}</h1>\n </fd-dialog-header>\n\n <fd-dialog-body class=\"offline-wrapper\">\n <img src=\"assets/svg/offline-internet-icon.svg\" />\n <div>\n <h3 fd-title>{{ 'NetworkOffline' | bbbTranslate }}</h3>\n <fd-text [text]=\"'NetworkOfflineDescription' | bbbTranslate\"></fd-text>\n </div>\n </fd-dialog-body>\n <fd-dialog-footer>\n <ng-template fdkTemplate=\"footer\">\n <div fd-bar-right>\n <fd-button-bar\n fdType=\"emphasized\"\n [label]=\"'Continue' | bbbTranslate\"\n (click)=\"dialog.dismiss('Close button')\"\n >\n </fd-button-bar>\n </div>\n </ng-template>\n </fd-dialog-footer>\n </fd-dialog>\n</ng-template>\n", styles: [".offline-wrapper{display:flex;flex-direction:column;align-items:center;justify-content:center}\n"], dependencies: [{ kind: "directive", type: i3.BarRightDirective, selector: "[fd-bar-right]" }, { kind: "component", type: i3.ButtonBarComponent, selector: "fd-button-bar", inputs: ["fullWidth", "fdType", "title", "ariaLabelledby", "id"] }, { kind: "component", type: i4.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i4.DialogBodyComponent, selector: "fd-dialog-body" }, { kind: "component", type: i4.DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: i4.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "directive", type: i5.TemplateDirective, selector: "[fdkTemplate]", inputs: ["fdkTemplate"] }, { kind: "component", type: i6.TitleComponent, selector: "[fd-title], [fdTitle]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "component", type: i7.TextComponent, selector: "fd-text", inputs: ["text", "maxLines", "whitespaces", "hyphenation", "expandable", "isCollapsed"], outputs: ["isCollapsedChange"] }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
45
|
+
}
|
|
46
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: BarsaNetworkOfflineComponent, decorators: [{
|
|
47
|
+
type: Component,
|
|
48
|
+
args: [{ selector: 'bsu-barsa-network-offline', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #container>\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\" #dialogTpl>\n <fd-dialog-header>\n <h1 fd-title>{{ 'ErrorInConnection' | bbbTranslate }}</h1>\n </fd-dialog-header>\n\n <fd-dialog-body class=\"offline-wrapper\">\n <img src=\"assets/svg/offline-internet-icon.svg\" />\n <div>\n <h3 fd-title>{{ 'NetworkOffline' | bbbTranslate }}</h3>\n <fd-text [text]=\"'NetworkOfflineDescription' | bbbTranslate\"></fd-text>\n </div>\n </fd-dialog-body>\n <fd-dialog-footer>\n <ng-template fdkTemplate=\"footer\">\n <div fd-bar-right>\n <fd-button-bar\n fdType=\"emphasized\"\n [label]=\"'Continue' | bbbTranslate\"\n (click)=\"dialog.dismiss('Close button')\"\n >\n </fd-button-bar>\n </div>\n </ng-template>\n </fd-dialog-footer>\n </fd-dialog>\n</ng-template>\n", styles: [".offline-wrapper{display:flex;flex-direction:column;align-items:center;justify-content:center}\n"] }]
|
|
49
|
+
}], ctorParameters: () => [{ type: i1.DialogService }, { type: i2.NetworkStatusService }, { type: i2.PortalService }], propDecorators: { dialogContainer: [{
|
|
50
|
+
type: ViewChild,
|
|
51
|
+
args: ['container', { read: TemplateRef }]
|
|
52
|
+
}] } });
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyc2EtbmV0d29yay1vZmZsaW5lLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLXNhcC11aS9zcmMvbGliL2JhcnNhLW5ldHdvcmstb2ZmbGluZS9iYXJzYS1uZXR3b3JrLW9mZmxpbmUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvYmFyc2EtbmV0d29yay1vZmZsaW5lL2JhcnNhLW5ldHdvcmstb2ZmbGluZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0YsT0FBTyxFQUF5QixhQUFhLEVBQXVDLE1BQU0sc0JBQXNCLENBQUM7Ozs7Ozs7OztBQU9qSCxNQUFNLE9BQU8sNEJBQTZCLFNBQVEsYUFBYTtJQUszRCxZQUNZLGNBQTZCLEVBQ3JDLHFCQUEyQyxFQUMzQyxjQUE2QjtRQUU3QixLQUFLLEVBQUUsQ0FBQztRQUpBLG1CQUFjLEdBQWQsY0FBYyxDQUFlO1FBS3JDLGNBQWMsQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNwRSxxQkFBcUIsQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDdEQsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO2dCQUNWLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQzdCLENBQUM7aUJBQU0sSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7Z0JBQ3pCLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ3hCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1lBQzNCLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFDRCxpQkFBaUI7UUFDYixNQUFNLFlBQVksR0FBMkI7WUFDekMsZUFBZSxFQUFFLEtBQUs7WUFDdEIsZ0JBQWdCLEVBQUUseUJBQXlCO1lBQzNDLGVBQWUsRUFBRSxLQUFLO1NBQ3pCLENBQUM7UUFFRiw4QkFBOEI7UUFDOUIsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLEdBQUcsRUFBRSxDQUFDO1lBQ3BCLFlBQVksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1FBQ25DLENBQUM7YUFBTSxDQUFDO1lBQ0osWUFBWSxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUM7WUFDN0IsWUFBWSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7WUFDN0IsWUFBWSxDQUFDLFNBQVMsR0FBRyxPQUFPLENBQUM7UUFDckMsQ0FBQztRQUVELElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxZQUFZLENBQUMsQ0FBQztJQUNuRixDQUFDOzhHQXRDUSw0QkFBNEI7a0dBQTVCLDRCQUE0QiwwSkFDTCxXQUFXLG9EQ1YvQyxtbkNBMkJBOzsyRkRsQmEsNEJBQTRCO2tCQU54QyxTQUFTOytCQUNJLDJCQUEyQixtQkFHcEIsdUJBQXVCLENBQUMsTUFBTTtpSkFJL0MsZUFBZTtzQkFEZCxTQUFTO3VCQUFDLFdBQVcsRUFBRSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBWaWV3Q2hpbGQsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEaWFsb2dSZWYsIERpYWxvZ1NlcnZpY2UgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUnO1xuaW1wb3J0IHsgQWJicmV2YXRpb25EZXZpY2VTaXplLCBCYXNlQ29tcG9uZW50LCBOZXR3b3JrU3RhdHVzU2VydmljZSwgUG9ydGFsU2VydmljZSB9IGZyb20gJ2JhcnNhLW5vdmluLXJheS1jb3JlJztcbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYnN1LWJhcnNhLW5ldHdvcmstb2ZmbGluZScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2JhcnNhLW5ldHdvcmstb2ZmbGluZS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vYmFyc2EtbmV0d29yay1vZmZsaW5lLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgQmFyc2FOZXR3b3JrT2ZmbGluZUNvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnQge1xuICAgIEBWaWV3Q2hpbGQoJ2NvbnRhaW5lcicsIHsgcmVhZDogVGVtcGxhdGVSZWYgfSlcbiAgICBkaWFsb2dDb250YWluZXI6IFRlbXBsYXRlUmVmPGFueT47XG4gICAgX2RpYWxvZ1JlZjogRGlhbG9nUmVmPGFueT4gfCBudWxsO1xuICAgIHNpemU6IEFiYnJldmF0aW9uRGV2aWNlU2l6ZTtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBfZGlhbG9nU2VydmljZTogRGlhbG9nU2VydmljZSxcbiAgICAgICAgX25ldHdvcmtTdGF0dXNTZXJ2aWNlOiBOZXR3b3JrU3RhdHVzU2VydmljZSxcbiAgICAgICAgX3BvcnRhbFNlcnZpY2U6IFBvcnRhbFNlcnZpY2VcbiAgICApIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICAgICAgX3BvcnRhbFNlcnZpY2UuZGV2aWNlU2l6ZSQucGlwZSgpLnN1YnNjcmliZSgoYykgPT4gKHRoaXMuc2l6ZSA9IGMpKTtcbiAgICAgICAgX25ldHdvcmtTdGF0dXNTZXJ2aWNlLm5ldHdvcmtTdGF0dXMkLnN1YnNjcmliZSgoc3RhdHVzKSA9PiB7XG4gICAgICAgICAgICBpZiAoIXN0YXR1cykge1xuICAgICAgICAgICAgICAgIHRoaXMub3Blbk9mZmxpbmVEaWFsb2coKTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy5fZGlhbG9nUmVmKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fZGlhbG9nUmVmLmNsb3NlKCk7XG4gICAgICAgICAgICAgICAgdGhpcy5fZGlhbG9nUmVmID0gbnVsbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuICAgIG9wZW5PZmZsaW5lRGlhbG9nKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBkaWFsb2dDb25maWc6IHsgW2tleTogc3RyaW5nXTogYW55IH0gPSB7XG4gICAgICAgICAgICBlc2NLZXlDbG9zZWFibGU6IGZhbHNlLFxuICAgICAgICAgICAgZGlhbG9nUGFuZWxDbGFzczogYG9mZmxpbmUtaW50ZXJuZXQtZGlhbG9nYCxcbiAgICAgICAgICAgIHZlcnRpY2FsUGFkZGluZzogZmFsc2VcbiAgICAgICAgfTtcblxuICAgICAgICAvLyBkaWFsb2dDb25maWcubW9iaWxlID0gdHJ1ZTtcbiAgICAgICAgaWYgKHRoaXMuc2l6ZSA9PT0gJ3MnKSB7XG4gICAgICAgICAgICBkaWFsb2dDb25maWcuZnVsbFNjcmVlbiA9IHRydWU7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBkaWFsb2dDb25maWcud2lkdGggPSAnMzgwcHgnO1xuICAgICAgICAgICAgZGlhbG9nQ29uZmlnLmhlaWdodCA9ICdhdXRvJztcbiAgICAgICAgICAgIGRpYWxvZ0NvbmZpZy5taW5IZWlnaHQgPSAnMzIwcHgnO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fZGlhbG9nUmVmID0gdGhpcy5fZGlhbG9nU2VydmljZS5vcGVuKHRoaXMuZGlhbG9nQ29udGFpbmVyLCBkaWFsb2dDb25maWcpO1xuICAgIH1cbn1cbiIsIjxuZy10ZW1wbGF0ZSBsZXQtZGlhbG9nIGxldC1kaWFsb2dDb25maWc9XCJkaWFsb2dDb25maWdcIiAjY29udGFpbmVyPlxuICAgIDxmZC1kaWFsb2cgW2RpYWxvZ0NvbmZpZ109XCJkaWFsb2dDb25maWdcIiBbZGlhbG9nUmVmXT1cImRpYWxvZ1wiICNkaWFsb2dUcGw+XG4gICAgICAgIDxmZC1kaWFsb2ctaGVhZGVyPlxuICAgICAgICAgICAgPGgxIGZkLXRpdGxlPnt7ICdFcnJvckluQ29ubmVjdGlvbicgfCBiYmJUcmFuc2xhdGUgfX08L2gxPlxuICAgICAgICA8L2ZkLWRpYWxvZy1oZWFkZXI+XG5cbiAgICAgICAgPGZkLWRpYWxvZy1ib2R5IGNsYXNzPVwib2ZmbGluZS13cmFwcGVyXCI+XG4gICAgICAgICAgICA8aW1nIHNyYz1cImFzc2V0cy9zdmcvb2ZmbGluZS1pbnRlcm5ldC1pY29uLnN2Z1wiIC8+XG4gICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICAgIDxoMyBmZC10aXRsZT57eyAnTmV0d29ya09mZmxpbmUnIHwgYmJiVHJhbnNsYXRlIH19PC9oMz5cbiAgICAgICAgICAgICAgICA8ZmQtdGV4dCBbdGV4dF09XCInTmV0d29ya09mZmxpbmVEZXNjcmlwdGlvbicgfCBiYmJUcmFuc2xhdGVcIj48L2ZkLXRleHQ+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9mZC1kaWFsb2ctYm9keT5cbiAgICAgICAgPGZkLWRpYWxvZy1mb290ZXI+XG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgZmRrVGVtcGxhdGU9XCJmb290ZXJcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGZkLWJhci1yaWdodD5cbiAgICAgICAgICAgICAgICAgICAgPGZkLWJ1dHRvbi1iYXJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZkVHlwZT1cImVtcGhhc2l6ZWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIidDb250aW51ZScgfCBiYmJUcmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImRpYWxvZy5kaXNtaXNzKCdDbG9zZSBidXR0b24nKVwiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPC9mZC1idXR0b24tYmFyPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9mZC1kaWFsb2ctZm9vdGVyPlxuICAgIDwvZmQtZGlhbG9nPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
+
import { FieldBaseComponent, DateService, getDateService, LogService, BarsaApi } from 'barsa-novin-ray-core';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/common";
|
|
5
|
+
import * as i2 from "@fundamental-ngx/core/avatar";
|
|
6
|
+
import * as i3 from "@fundamental-ngx/core/link";
|
|
7
|
+
import * as i4 from "@fundamental-ngx/core/button";
|
|
8
|
+
import * as i5 from "@fundamental-ngx/core/card";
|
|
9
|
+
import * as i6 from "@fundamental-ngx/core/info-label";
|
|
10
|
+
import * as i7 from "@fundamental-ngx/core/list";
|
|
11
|
+
import * as i8 from "@fundamental-ngx/core/title";
|
|
12
|
+
import * as i9 from "@fundamental-ngx/core/message-strip";
|
|
13
|
+
import * as i10 from "@fundamental-ngx/core/object-identifier";
|
|
14
|
+
import * as i11 from "@fundamental-ngx/core/panel";
|
|
15
|
+
import * as i12 from "@fundamental-ngx/core/popover";
|
|
16
|
+
import * as i13 from "../file-viewer-popover/file-viewer-popover.component";
|
|
17
|
+
import * as i14 from "../download-files.directive";
|
|
18
|
+
import * as i15 from "barsa-novin-ray-core";
|
|
19
|
+
export class BarsaPishnamayeshPayamComponent extends FieldBaseComponent {
|
|
20
|
+
constructor() {
|
|
21
|
+
super(...arguments);
|
|
22
|
+
this.expanded = true;
|
|
23
|
+
}
|
|
24
|
+
ngOnInit() {
|
|
25
|
+
super.ngOnInit();
|
|
26
|
+
const mo = this.context?.FormPanelUi?.Mo;
|
|
27
|
+
if (mo) {
|
|
28
|
+
let mailContent = mo[this.Setting.ControlName];
|
|
29
|
+
const $FieldDict = mailContent.$FieldDict;
|
|
30
|
+
if ($FieldDict) {
|
|
31
|
+
mailContent = mailContent[$FieldDict['محتوای پیام']];
|
|
32
|
+
}
|
|
33
|
+
this.data = new PayamClassType(mailContent, this._domSanitizer, this._dateService);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
_setValue(val) {
|
|
37
|
+
super._setValue(val);
|
|
38
|
+
}
|
|
39
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: BarsaPishnamayeshPayamComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
40
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.5", type: BarsaPishnamayeshPayamComponent, selector: "bsu-barsa-pishnamayesh-payam", providers: [
|
|
41
|
+
{
|
|
42
|
+
provide: DateService,
|
|
43
|
+
useFactory: getDateService,
|
|
44
|
+
deps: [LogService]
|
|
45
|
+
}
|
|
46
|
+
], usesInheritance: true, ngImport: i0, template: "@if (data) {\n<ng-container\n *ngTemplateOutlet=\"\n showPayamClass;\n context: {\n $implicit: data,\n primary: !data?.$details?.length,\n isFirst: true\n }\n \"\n>\n</ng-container>\n}\n<ng-template #showPayamClass let-data let-primary=\"primary\" let-isFirst=\"isFirst\">\n <ng-container\n *ngTemplateOutlet=\"\n namayeshPayam;\n context: {\n $implicit: data.payam.Subject,\n fromText: data.payam.FromText,\n toText: data.$toText,\n importance: data.$importance,\n readDate: data.$readDate,\n sendDate: data.$sendDate,\n ccText: data.$ccText,\n bccText: data.$bccText,\n accessLevel: data.$accessLevel,\n content: data.$content,\n fromPhoto: data.$fromPhoto,\n details: data.$details,\n attachments: data.$attachments,\n todo: data.$todo,\n customText: data.payam.CustomText,\n primary: primary,\n isFirst: isFirst\n }\n \"\n >\n </ng-container>\n</ng-template>\n\n<ng-template\n #namayeshPayam\n let-subject\n let-content=\"content\"\n let-fromText=\"fromText\"\n let-toText=\"toText\"\n let-importance=\"importance\"\n let-readDate=\"readDate\"\n let-sendDate=\"sendDate\"\n let-ccText=\"ccText\"\n let-bccText=\"bccText\"\n let-fromPhoto=\"fromPhoto\"\n let-details=\"details\"\n let-accessLevel=\"accessLevel\"\n let-primary=\"primary\"\n let-isFirst=\"isFirst\"\n let-attachments=\"attachments\"\n let-todo=\"todo\"\n let-customText=\"customText\"\n>\n <fd-card cardType=\"object\">\n <fd-card-header>\n <fd-avatar\n [image]=\"fromPhoto\"\n [circle]=\"true\"\n size=\"s\"\n [ariaLabel]=\"fromText\"\n [label]=\"fromText\"\n [title]=\"fromText\"\n ></fd-avatar>\n <div fd-card-title class=\"header-fields\">\n <h5 fd-title>\n <a fd-link [emphasized]=\"true\" aria-label=\"Sender\"> {{ fromText }}</a>\n </h5>\n <fd-object-identifier [description]=\"'(' + sendDate + ')'\"> </fd-object-identifier>\n </div>\n <div fd-card-subtitle>\n <h5 fd-title>{{ subject }}</h5>\n <fd-popover>\n <fd-popover-control>\n <button fd-button fdType=\"transparent\" [fdMenu]=\"true\">{{ 'Recievers' | bbbTranslate }}</button>\n </fd-popover-control>\n <fd-popover-body>\n <ul fd-list>\n @for (rec of toText; track rec) {\n <li fd-list-item>\n <a fd-list-link>{{ rec }}</a>\n </li>\n }\n </ul>\n </fd-popover-body>\n </fd-popover>\n </div>\n </fd-card-header>\n <fd-card-content>\n <fd-panel [expanded]=\"isFirst\">\n <div fd-panel-title id=\"panel-expandable-title-1\">\n <h5 fd-title>{{ '\u0645\u062D\u062A\u0648\u0627\u06CC \u067E\u06CC\u0627\u0645' | bbbTranslate }}</h5>\n <div class=\"payamIcons\">\n @if (importance.icon) {\n <fd-popover>\n <fd-popover-control>\n <img [src]=\"'/Customization/Mail/' + importance.icon\" />\n </fd-popover-control>\n <fd-popover-body>\n <ul fd-list>\n <li fd-list-item>{{ importance.text }}</li>\n </ul>\n </fd-popover-body>\n </fd-popover>\n } @if (accessLevel.icon) {\n <fd-popover>\n <fd-popover-control>\n <img [src]=\"'/Customization/Mail/' + accessLevel.icon\" />\n </fd-popover-control>\n <fd-popover-body>\n <ul fd-list>\n <li fd-list-item>{{ accessLevel.text }}</li>\n </ul>\n </fd-popover-body>\n </fd-popover>\n } @if (todo) {\n <fd-info-label [label]=\"todo.text\" [color]=\"todo.color\" [title]=\"todo.text\"></fd-info-label>\n }\n </div>\n </div>\n <div fd-panel-content>\n @if (customText) {\n <div>\n <fd-message-strip type=\"information\" [noIcon]=\"true\" [dismissible]=\"false\">\n {{ customText }}\n </fd-message-strip>\n </div>\n }\n <div [innerHtml]=\"content\" [disable]=\"!primary || attachments?.length\"></div>\n\n @if (attachments?.length) {\n <div class=\"file-viewer-attachments\">\n @for (file of attachments; track file) { @if (!file.IsDeleted) {\n <bsu-file-viewer-popover\n [file]=\"file\"\n [files]=\"attachments\"\n [deviceSize]=\"(deviceSize$ | async)!!\"\n [canDownload]=\"true\"\n [disableRemove]=\"true\"\n ></bsu-file-viewer-popover>\n } } @if (attachments.length > 1) {\n <button\n fd-button\n [title]=\"'Download' | bbbTranslate\"\n [glyph]=\"'download'\"\n downloadFiles\n [files]=\"attachments\"\n ></button>\n }\n </div>\n }\n <div class=\"readAt\">\n @if (readDate) {\n <fd-object-identifier [description]=\"('ReadAt' | bbbTranslate) + ': (' + readDate + ')'\">\n </fd-object-identifier>\n }\n </div>\n </div>\n </fd-panel>\n </fd-card-content>\n <!-- <fd-card-footer>\n <button *fdCardFooterActionItem fd-button fdCompact>Assign to Project</button>\n </fd-card-footer> -->\n </fd-card>\n @for (detail of details; track detail) {\n <ng-contianer>\n <ng-container\n *ngTemplateOutlet=\"\n showPayamClass;\n context: {\n $implicit: detail\n }\n \"\n >\n </ng-container>\n </ng-contianer>\n }\n</ng-template>\n", styles: [":host{display:block;position:relative;width:100%;height:100%}:host ::ng-deep .fd-panel__content{border-bottom:none;padding-bottom:5px}:host ::ng-deep .fd-card__subtitle{display:flex;align-items:center;column-gap:5px;justify-content:start;height:auto;max-height:initial}:host ::ng-deep .fd-card__subtitle h5{white-space:initial!important}:host ::ng-deep .fd-object-identifier__text{margin-top:0}:host ::ng-deep .fd-panel__header{border-bottom:none}fd-card-header{cursor:default;border-bottom:none!important}fd-card-header:before{position:relative!important;display:none!important}fd-card-header:hover{background:var(--fdCard_Background_Color)!important}.readAt{padding-top:2rem}.readAt ::ng-deep p{color:var(--sapButton_BorderColor)!important}.payamIcons{display:flex;column-gap:5px}.payamIcons img{width:16px}@media (max-width: 410px){h5{max-width:210px}}@media (max-width: 1040px){.h5{max-width:600px}}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.AvatarComponent, selector: "fd-avatar", inputs: ["class", "id", "ariaLabel", "ariaLabelledby", "label", "size", "font", "glyph", "zoomGlyph", "circle", "transparent", "contain", "placeholder", "tile", "border", "colorAccent", "random", "clickable", "valueState", "image", "alterIcon", "backupImage"], outputs: ["avatarClicked", "zoomGlyphClicked"] }, { kind: "component", type: i3.LinkComponent, selector: "[fdLink], [fd-link]", inputs: ["class", "emphasized", "disabled", "inverted", "subtle", "undecorated"] }, { kind: "component", type: i4.ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i5.CardComponent, selector: "fd-card", inputs: ["badge", "isLoading", "cardType", "id", "role"] }, { kind: "component", type: i5.CardHeaderComponent, selector: "fd-card-header", inputs: ["interactive", "tabindex"] }, { kind: "component", type: i5.CardContentComponent, selector: "fd-card-content" }, { kind: "directive", type: i5.CardTitleDirective, selector: "[fd-card-title]", inputs: ["id"] }, { kind: "directive", type: i5.CardSubtitleDirective, selector: "[fd-card-subtitle]" }, { kind: "component", type: i6.InfoLabelComponent, selector: "fd-info-label", inputs: ["class", "type", "glyph", "font", "color", "label", "title", "ariaLabel", "ariaLabelledBy"] }, { kind: "component", type: i7.ListComponent, selector: "[fd-list], [fdList]", inputs: ["dropdownMode", "multiInputMode", "mobileMode", "hasMessage", "noBorder", "navigationIndicator", "selection", "keyboardSupport", "byline", "unreadIndicator", "role"], outputs: ["focusEscapeList"] }, { kind: "component", type: i7.ListItemComponent, selector: "[fdListItem] ,[fd-list-item]", inputs: ["selected", "noData", "action", "interactive", "growing", "counter", "unread", "byline", "ariaRole", "id"], outputs: ["keyDown"] }, { kind: "directive", type: i7.ListLinkDirective, selector: "[fd-list-link], [fdListLink]", inputs: ["navigationIndicator", "navigated", "focusable"] }, { kind: "component", type: i8.TitleComponent, selector: "[fd-title], [fdTitle]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "component", type: i9.MessageStripComponent, selector: "fd-message-strip", inputs: ["class", "dismissible", "noIcon", "type", "id", "ariaLabelledBy", "ariaLabel", "width", "minWidth", "marginBottom", "indicationColor"], outputs: ["onDismiss"] }, { kind: "component", type: i10.ObjectIdentifierComponent, selector: "fd-object-identifier", inputs: ["description", "bold", "medium"] }, { kind: "component", type: i11.PanelComponent, selector: "fd-panel", inputs: ["class", "fixed", "id", "expandId", "expandAriaLabel", "expandAriaLabelledBy", "expanded"], outputs: ["expandedChange"] }, { kind: "directive", type: i11.PanelContentDirective, selector: "[fd-panel-content]", inputs: ["height", "minHeight", "maxHeight", "ariaLabel", "ariaLabelledBy", "role", "id"] }, { kind: "directive", type: i11.PanelTitleDirective, selector: "[fd-panel-title]", inputs: ["id"] }, { kind: "component", type: i12.PopoverControlComponent, selector: "fd-popover-control, [fdPopoverControl]" }, { kind: "component", type: i12.PopoverBodyComponent, selector: "fd-popover-body", inputs: ["minWidth", "maxWidth", "minHeight", "maxHeight"] }, { kind: "component", type: i12.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig", "preventSpaceKeyScroll"] }, { kind: "component", type: i13.FileViewerPopoverComponent, selector: "bsu-file-viewer-popover", inputs: ["files", "file", "deviceSize", "canDownload", "disableRemove", "fdType"], outputs: ["remove"] }, { kind: "directive", type: i14.DownloadFilesDirective, selector: "[downloadFiles]", inputs: ["files"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i15.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
47
|
+
}
|
|
48
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: BarsaPishnamayeshPayamComponent, decorators: [{
|
|
49
|
+
type: Component,
|
|
50
|
+
args: [{ selector: 'bsu-barsa-pishnamayesh-payam', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
51
|
+
{
|
|
52
|
+
provide: DateService,
|
|
53
|
+
useFactory: getDateService,
|
|
54
|
+
deps: [LogService]
|
|
55
|
+
}
|
|
56
|
+
], template: "@if (data) {\n<ng-container\n *ngTemplateOutlet=\"\n showPayamClass;\n context: {\n $implicit: data,\n primary: !data?.$details?.length,\n isFirst: true\n }\n \"\n>\n</ng-container>\n}\n<ng-template #showPayamClass let-data let-primary=\"primary\" let-isFirst=\"isFirst\">\n <ng-container\n *ngTemplateOutlet=\"\n namayeshPayam;\n context: {\n $implicit: data.payam.Subject,\n fromText: data.payam.FromText,\n toText: data.$toText,\n importance: data.$importance,\n readDate: data.$readDate,\n sendDate: data.$sendDate,\n ccText: data.$ccText,\n bccText: data.$bccText,\n accessLevel: data.$accessLevel,\n content: data.$content,\n fromPhoto: data.$fromPhoto,\n details: data.$details,\n attachments: data.$attachments,\n todo: data.$todo,\n customText: data.payam.CustomText,\n primary: primary,\n isFirst: isFirst\n }\n \"\n >\n </ng-container>\n</ng-template>\n\n<ng-template\n #namayeshPayam\n let-subject\n let-content=\"content\"\n let-fromText=\"fromText\"\n let-toText=\"toText\"\n let-importance=\"importance\"\n let-readDate=\"readDate\"\n let-sendDate=\"sendDate\"\n let-ccText=\"ccText\"\n let-bccText=\"bccText\"\n let-fromPhoto=\"fromPhoto\"\n let-details=\"details\"\n let-accessLevel=\"accessLevel\"\n let-primary=\"primary\"\n let-isFirst=\"isFirst\"\n let-attachments=\"attachments\"\n let-todo=\"todo\"\n let-customText=\"customText\"\n>\n <fd-card cardType=\"object\">\n <fd-card-header>\n <fd-avatar\n [image]=\"fromPhoto\"\n [circle]=\"true\"\n size=\"s\"\n [ariaLabel]=\"fromText\"\n [label]=\"fromText\"\n [title]=\"fromText\"\n ></fd-avatar>\n <div fd-card-title class=\"header-fields\">\n <h5 fd-title>\n <a fd-link [emphasized]=\"true\" aria-label=\"Sender\"> {{ fromText }}</a>\n </h5>\n <fd-object-identifier [description]=\"'(' + sendDate + ')'\"> </fd-object-identifier>\n </div>\n <div fd-card-subtitle>\n <h5 fd-title>{{ subject }}</h5>\n <fd-popover>\n <fd-popover-control>\n <button fd-button fdType=\"transparent\" [fdMenu]=\"true\">{{ 'Recievers' | bbbTranslate }}</button>\n </fd-popover-control>\n <fd-popover-body>\n <ul fd-list>\n @for (rec of toText; track rec) {\n <li fd-list-item>\n <a fd-list-link>{{ rec }}</a>\n </li>\n }\n </ul>\n </fd-popover-body>\n </fd-popover>\n </div>\n </fd-card-header>\n <fd-card-content>\n <fd-panel [expanded]=\"isFirst\">\n <div fd-panel-title id=\"panel-expandable-title-1\">\n <h5 fd-title>{{ '\u0645\u062D\u062A\u0648\u0627\u06CC \u067E\u06CC\u0627\u0645' | bbbTranslate }}</h5>\n <div class=\"payamIcons\">\n @if (importance.icon) {\n <fd-popover>\n <fd-popover-control>\n <img [src]=\"'/Customization/Mail/' + importance.icon\" />\n </fd-popover-control>\n <fd-popover-body>\n <ul fd-list>\n <li fd-list-item>{{ importance.text }}</li>\n </ul>\n </fd-popover-body>\n </fd-popover>\n } @if (accessLevel.icon) {\n <fd-popover>\n <fd-popover-control>\n <img [src]=\"'/Customization/Mail/' + accessLevel.icon\" />\n </fd-popover-control>\n <fd-popover-body>\n <ul fd-list>\n <li fd-list-item>{{ accessLevel.text }}</li>\n </ul>\n </fd-popover-body>\n </fd-popover>\n } @if (todo) {\n <fd-info-label [label]=\"todo.text\" [color]=\"todo.color\" [title]=\"todo.text\"></fd-info-label>\n }\n </div>\n </div>\n <div fd-panel-content>\n @if (customText) {\n <div>\n <fd-message-strip type=\"information\" [noIcon]=\"true\" [dismissible]=\"false\">\n {{ customText }}\n </fd-message-strip>\n </div>\n }\n <div [innerHtml]=\"content\" [disable]=\"!primary || attachments?.length\"></div>\n\n @if (attachments?.length) {\n <div class=\"file-viewer-attachments\">\n @for (file of attachments; track file) { @if (!file.IsDeleted) {\n <bsu-file-viewer-popover\n [file]=\"file\"\n [files]=\"attachments\"\n [deviceSize]=\"(deviceSize$ | async)!!\"\n [canDownload]=\"true\"\n [disableRemove]=\"true\"\n ></bsu-file-viewer-popover>\n } } @if (attachments.length > 1) {\n <button\n fd-button\n [title]=\"'Download' | bbbTranslate\"\n [glyph]=\"'download'\"\n downloadFiles\n [files]=\"attachments\"\n ></button>\n }\n </div>\n }\n <div class=\"readAt\">\n @if (readDate) {\n <fd-object-identifier [description]=\"('ReadAt' | bbbTranslate) + ': (' + readDate + ')'\">\n </fd-object-identifier>\n }\n </div>\n </div>\n </fd-panel>\n </fd-card-content>\n <!-- <fd-card-footer>\n <button *fdCardFooterActionItem fd-button fdCompact>Assign to Project</button>\n </fd-card-footer> -->\n </fd-card>\n @for (detail of details; track detail) {\n <ng-contianer>\n <ng-container\n *ngTemplateOutlet=\"\n showPayamClass;\n context: {\n $implicit: detail\n }\n \"\n >\n </ng-container>\n </ng-contianer>\n }\n</ng-template>\n", styles: [":host{display:block;position:relative;width:100%;height:100%}:host ::ng-deep .fd-panel__content{border-bottom:none;padding-bottom:5px}:host ::ng-deep .fd-card__subtitle{display:flex;align-items:center;column-gap:5px;justify-content:start;height:auto;max-height:initial}:host ::ng-deep .fd-card__subtitle h5{white-space:initial!important}:host ::ng-deep .fd-object-identifier__text{margin-top:0}:host ::ng-deep .fd-panel__header{border-bottom:none}fd-card-header{cursor:default;border-bottom:none!important}fd-card-header:before{position:relative!important;display:none!important}fd-card-header:hover{background:var(--fdCard_Background_Color)!important}.readAt{padding-top:2rem}.readAt ::ng-deep p{color:var(--sapButton_BorderColor)!important}.payamIcons{display:flex;column-gap:5px}.payamIcons img{width:16px}@media (max-width: 410px){h5{max-width:210px}}@media (max-width: 1040px){.h5{max-width:600px}}\n"] }]
|
|
57
|
+
}] });
|
|
58
|
+
class PayamClassType {
|
|
59
|
+
constructor(payam, _domSanitizer, _dateService) {
|
|
60
|
+
this.payam = payam;
|
|
61
|
+
this._domSanitizer = _domSanitizer;
|
|
62
|
+
this._dateService = _dateService;
|
|
63
|
+
this.$content = this._domSanitizer.bypassSecurityTrustHtml(payam.ContentHtml);
|
|
64
|
+
this.$sendDate = this._getDateString(payam.SendDate);
|
|
65
|
+
this.$readDate = !payam.ReadDate ? '' : this._getDateString(payam.ReadDate);
|
|
66
|
+
this.$toText = payam.ToText.split(';');
|
|
67
|
+
this.$ccText = payam.CcText?.split(';');
|
|
68
|
+
this.$bccText = payam.BccText?.split(';');
|
|
69
|
+
this.$fromPhoto = BarsaApi.Common.Util.GetIconUrl(payam.FromPhoto, null, null, 64);
|
|
70
|
+
this.$details = payam.Details?.map((c) => new PayamClassType(c, _domSanitizer, _dateService));
|
|
71
|
+
this.$attachments = payam.Attachments?.map((c) => ({
|
|
72
|
+
Id: c.Id,
|
|
73
|
+
IsNew: false,
|
|
74
|
+
IsDeleted: false,
|
|
75
|
+
Type: c.Extension,
|
|
76
|
+
FileName: `${c.Name}.${c.Extension}`
|
|
77
|
+
}));
|
|
78
|
+
this.$importance = {
|
|
79
|
+
icon: this._iconImportance(payam.Importance),
|
|
80
|
+
text: this._textImportance(payam.Importance)
|
|
81
|
+
};
|
|
82
|
+
this.$accessLevel = {
|
|
83
|
+
icon: this._iconAccessLevel(payam.AccessLevel),
|
|
84
|
+
text: this._textAccessLevel(payam.AccessLevel)
|
|
85
|
+
};
|
|
86
|
+
if (payam.Todo?.DueDate) {
|
|
87
|
+
this.$todo = this._textTodo(payam.Todo);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
_textTodo(todo) {
|
|
91
|
+
if (!todo || !todo.DueDate) {
|
|
92
|
+
return { text: '', color: '10' };
|
|
93
|
+
}
|
|
94
|
+
let dueDateStr = '';
|
|
95
|
+
let doneDateStr = '';
|
|
96
|
+
if (BarsaApi.Ext.isString(todo.DueDate)) {
|
|
97
|
+
dueDateStr = this._getDateString(todo.DueDate);
|
|
98
|
+
}
|
|
99
|
+
if (todo.DoneDate) {
|
|
100
|
+
doneDateStr = this._getDateString(todo.DoneDate);
|
|
101
|
+
}
|
|
102
|
+
// eslint-disable-next-line no-eval
|
|
103
|
+
const dueDate = eval(todo.DueDate);
|
|
104
|
+
if (todo.State === 2) {
|
|
105
|
+
return { text: BarsaApi.BBB.Mail_TodoCompleted + ': ' + doneDateStr, color: '8' };
|
|
106
|
+
}
|
|
107
|
+
else if (new Date().getTime() < dueDate.getTime()) {
|
|
108
|
+
return { text: BarsaApi.BBB.Mail_TodoDueDate + ': ' + dueDateStr, color: '1' };
|
|
109
|
+
}
|
|
110
|
+
else {
|
|
111
|
+
return {
|
|
112
|
+
text: BarsaApi.BBB.Mail_TodoOverdue + ': ' + (doneDateStr ? doneDateStr : dueDateStr),
|
|
113
|
+
color: '2'
|
|
114
|
+
};
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
_textImportance(i) {
|
|
118
|
+
if (i) {
|
|
119
|
+
return BarsaApi.BBB['Mail_Importance' + i];
|
|
120
|
+
}
|
|
121
|
+
return null;
|
|
122
|
+
}
|
|
123
|
+
_textAccessLevel(i) {
|
|
124
|
+
if (i) {
|
|
125
|
+
return BarsaApi.BBB['Mail_Sensitivity' + i];
|
|
126
|
+
}
|
|
127
|
+
return null;
|
|
128
|
+
}
|
|
129
|
+
_iconImportance(i) {
|
|
130
|
+
if (i) {
|
|
131
|
+
return 'priority_' + i.toString() + '.png';
|
|
132
|
+
}
|
|
133
|
+
return null;
|
|
134
|
+
}
|
|
135
|
+
_iconAccessLevel(i) {
|
|
136
|
+
if (i) {
|
|
137
|
+
return 'lock_' + i.toString() + '.png';
|
|
138
|
+
}
|
|
139
|
+
return null;
|
|
140
|
+
}
|
|
141
|
+
_getSize(size) {
|
|
142
|
+
size = size.replace('KB', 'کیلوبایت');
|
|
143
|
+
size = size.replace('MB', 'مگابایت');
|
|
144
|
+
size = size.replace('B', 'بایت');
|
|
145
|
+
return size;
|
|
146
|
+
}
|
|
147
|
+
_getAttachmentIcon(extension) {
|
|
148
|
+
if (BarsaApi.Ext.isEmpty(extension) === false) {
|
|
149
|
+
return '/assets/Images/FileTypeIcons/' + '_' + extension + '.PNG';
|
|
150
|
+
}
|
|
151
|
+
return null;
|
|
152
|
+
}
|
|
153
|
+
_getDateString(date) {
|
|
154
|
+
// eslint-disable-next-line no-eval
|
|
155
|
+
const dateInfo = this._dateService.getDateInfo(eval(date));
|
|
156
|
+
return `${dateInfo.dayName} ${dateInfo.day} ${dateInfo.monthName} ${dateInfo.year} ${dateInfo.hour}:${dateInfo.minutes}`;
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyc2EtcGlzaG5hbWF5ZXNoLXBheWFtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLXNhcC11aS9zcmMvbGliL2JhcnNhLXBpc2huYW1heWVzaC1wYXlhbS9iYXJzYS1waXNobmFtYXllc2gtcGF5YW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvYmFyc2EtcGlzaG5hbWF5ZXNoLXBheWFtL2JhcnNhLXBpc2huYW1heWVzaC1wYXlhbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBRzNFLE9BQU8sRUFDSCxrQkFBa0IsRUFDbEIsV0FBVyxFQUNYLGNBQWMsRUFDZCxVQUFVLEVBRVYsUUFBUSxFQUVYLE1BQU0sc0JBQXNCLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBYzlCLE1BQU0sT0FBTywrQkFBZ0MsU0FBUSxrQkFBa0I7SUFidkU7O1FBZUksYUFBUSxHQUFHLElBQUksQ0FBQztLQWlCbkI7SUFoQkcsUUFBUTtRQUNKLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQixNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLFdBQVcsRUFBRSxFQUFFLENBQUM7UUFDekMsSUFBSSxFQUFFLEVBQUUsQ0FBQztZQUNMLElBQUksV0FBVyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBRS9DLE1BQU0sVUFBVSxHQUFHLFdBQVcsQ0FBQyxVQUFVLENBQUM7WUFDMUMsSUFBSSxVQUFVLEVBQUUsQ0FBQztnQkFDYixXQUFXLEdBQUcsV0FBVyxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO1lBQ3pELENBQUM7WUFDRCxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksY0FBYyxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUN2RixDQUFDO0lBQ0wsQ0FBQztJQUNTLFNBQVMsQ0FBQyxHQUFRO1FBQ3hCLEtBQUssQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDekIsQ0FBQzs4R0FsQlEsK0JBQStCO2tHQUEvQiwrQkFBK0IsdURBUjdCO1lBQ1A7Z0JBQ0ksT0FBTyxFQUFFLFdBQVc7Z0JBQ3BCLFVBQVUsRUFBRSxjQUFjO2dCQUMxQixJQUFJLEVBQUUsQ0FBQyxVQUFVLENBQUM7YUFDckI7U0FDSixpREN2QkwsMnFPQXlMQTs7MkZEaEthLCtCQUErQjtrQkFiM0MsU0FBUzsrQkFDSSw4QkFBOEIsbUJBR3ZCLHVCQUF1QixDQUFDLE1BQU0sYUFDcEM7d0JBQ1A7NEJBQ0ksT0FBTyxFQUFFLFdBQVc7NEJBQ3BCLFVBQVUsRUFBRSxjQUFjOzRCQUMxQixJQUFJLEVBQUUsQ0FBQyxVQUFVLENBQUM7eUJBQ3JCO3FCQUNKOztBQTBDTCxNQUFNLGNBQWM7SUFjaEIsWUFBbUIsS0FBZ0IsRUFBVSxhQUEyQixFQUFVLFlBQXlCO1FBQXhGLFVBQUssR0FBTCxLQUFLLENBQVc7UUFBVSxrQkFBYSxHQUFiLGFBQWEsQ0FBYztRQUFVLGlCQUFZLEdBQVosWUFBWSxDQUFhO1FBQ3ZHLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyx1QkFBdUIsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDOUUsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNyRCxJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUU1RSxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDeEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUMxQyxJQUFJLENBQUMsVUFBVSxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDbkYsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxjQUFjLENBQUMsQ0FBQyxFQUFFLGFBQWEsRUFBRSxZQUFZLENBQUMsQ0FBQyxDQUFDO1FBQzlGLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDLFdBQVcsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDL0MsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFO1lBQ1IsS0FBSyxFQUFFLEtBQUs7WUFDWixTQUFTLEVBQUUsS0FBSztZQUNoQixJQUFJLEVBQUUsQ0FBQyxDQUFDLFNBQVM7WUFDakIsUUFBUSxFQUFFLEdBQUcsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLENBQUMsU0FBUyxFQUFFO1NBQ3ZDLENBQUMsQ0FBQyxDQUFDO1FBQ0osSUFBSSxDQUFDLFdBQVcsR0FBRztZQUNmLElBQUksRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUM7WUFDNUMsSUFBSSxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQztTQUMvQyxDQUFDO1FBQ0YsSUFBSSxDQUFDLFlBQVksR0FBRztZQUNoQixJQUFJLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUM7WUFDOUMsSUFBSSxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDO1NBQ2pELENBQUM7UUFFRixJQUFJLEtBQUssQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUM7WUFDdEIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM1QyxDQUFDO0lBQ0wsQ0FBQztJQUNPLFNBQVMsQ0FBQyxJQUFlO1FBQzdCLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDekIsT0FBTyxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDO1FBQ3JDLENBQUM7UUFDRCxJQUFJLFVBQVUsR0FBRyxFQUFFLENBQUM7UUFDcEIsSUFBSSxXQUFXLEdBQUcsRUFBRSxDQUFDO1FBQ3JCLElBQUksUUFBUSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDdEMsVUFBVSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ25ELENBQUM7UUFDRCxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNoQixXQUFXLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDckQsQ0FBQztRQUNELG1DQUFtQztRQUNuQyxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ25DLElBQUksSUFBSSxDQUFDLEtBQUssS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUNuQixPQUFPLEVBQUUsSUFBSSxFQUFFLFFBQVEsQ0FBQyxHQUFHLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxHQUFHLFdBQVcsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLENBQUM7UUFDdEYsQ0FBQzthQUFNLElBQUksSUFBSSxJQUFJLEVBQUUsQ0FBQyxPQUFPLEVBQUUsR0FBRyxPQUFPLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQztZQUNsRCxPQUFPLEVBQUUsSUFBSSxFQUFFLFFBQVEsQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxHQUFHLFVBQVUsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLENBQUM7UUFDbkYsQ0FBQzthQUFNLENBQUM7WUFDSixPQUFPO2dCQUNILElBQUksRUFBRSxRQUFRLENBQUMsR0FBRyxDQUFDLGdCQUFnQixHQUFHLElBQUksR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUM7Z0JBQ3JGLEtBQUssRUFBRSxHQUFHO2FBQ2IsQ0FBQztRQUNOLENBQUM7SUFDTCxDQUFDO0lBQ08sZUFBZSxDQUFDLENBQUM7UUFDckIsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUNKLE9BQU8sUUFBUSxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUMvQyxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUNPLGdCQUFnQixDQUFDLENBQUM7UUFDdEIsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUNKLE9BQU8sUUFBUSxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUNoRCxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUNPLGVBQWUsQ0FBQyxDQUFDO1FBQ3JCLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDSixPQUFPLFdBQVcsR0FBRyxDQUFDLENBQUMsUUFBUSxFQUFFLEdBQUcsTUFBTSxDQUFDO1FBQy9DLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBQ08sZ0JBQWdCLENBQUMsQ0FBQztRQUN0QixJQUFJLENBQUMsRUFBRSxDQUFDO1lBQ0osT0FBTyxPQUFPLEdBQUcsQ0FBQyxDQUFDLFFBQVEsRUFBRSxHQUFHLE1BQU0sQ0FBQztRQUMzQyxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUNPLFFBQVEsQ0FBQyxJQUFZO1FBQ3pCLElBQUksR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsQ0FBQztRQUN0QyxJQUFJLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDckMsSUFBSSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ2pDLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFDTyxrQkFBa0IsQ0FBQyxTQUFTO1FBQ2hDLElBQUksUUFBUSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEtBQUssS0FBSyxFQUFFLENBQUM7WUFDNUMsT0FBTywrQkFBK0IsR0FBRyxHQUFHLEdBQUcsU0FBUyxHQUFHLE1BQU0sQ0FBQztRQUN0RSxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUNPLGNBQWMsQ0FBQyxJQUFZO1FBQy9CLG1DQUFtQztRQUNuQyxNQUFNLFFBQVEsR0FBYSxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNyRSxPQUFPLEdBQUcsUUFBUSxDQUFDLE9BQU8sSUFBSSxRQUFRLENBQUMsR0FBRyxJQUFJLFFBQVEsQ0FBQyxTQUFTLElBQUksUUFBUSxDQUFDLElBQUksSUFBSSxRQUFRLENBQUMsSUFBSSxJQUFJLFFBQVEsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUM3SCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERvbVNhbml0aXplciwgU2FmZUh0bWwgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcblxuaW1wb3J0IHtcbiAgICBGaWVsZEJhc2VDb21wb25lbnQsXG4gICAgRGF0ZVNlcnZpY2UsXG4gICAgZ2V0RGF0ZVNlcnZpY2UsXG4gICAgTG9nU2VydmljZSxcbiAgICBEYXRlSW5mbyxcbiAgICBCYXJzYUFwaSxcbiAgICBGaWxlQXR0YWNobWVudEluZm9cbn0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdic3UtYmFyc2EtcGlzaG5hbWF5ZXNoLXBheWFtJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vYmFyc2EtcGlzaG5hbWF5ZXNoLXBheWFtLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9iYXJzYS1waXNobmFtYXllc2gtcGF5YW0uY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogRGF0ZVNlcnZpY2UsXG4gICAgICAgICAgICB1c2VGYWN0b3J5OiBnZXREYXRlU2VydmljZSxcbiAgICAgICAgICAgIGRlcHM6IFtMb2dTZXJ2aWNlXVxuICAgICAgICB9XG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBCYXJzYVBpc2huYW1heWVzaFBheWFtQ29tcG9uZW50IGV4dGVuZHMgRmllbGRCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBkYXRhOiBQYXlhbUNsYXNzVHlwZTtcbiAgICBleHBhbmRlZCA9IHRydWU7XG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgICAgIGNvbnN0IG1vID0gdGhpcy5jb250ZXh0Py5Gb3JtUGFuZWxVaT8uTW87XG4gICAgICAgIGlmIChtbykge1xuICAgICAgICAgICAgbGV0IG1haWxDb250ZW50ID0gbW9bdGhpcy5TZXR0aW5nLkNvbnRyb2xOYW1lXTtcblxuICAgICAgICAgICAgY29uc3QgJEZpZWxkRGljdCA9IG1haWxDb250ZW50LiRGaWVsZERpY3Q7XG4gICAgICAgICAgICBpZiAoJEZpZWxkRGljdCkge1xuICAgICAgICAgICAgICAgIG1haWxDb250ZW50ID0gbWFpbENvbnRlbnRbJEZpZWxkRGljdFsn2YXYrdiq2YjYp9uMINm+24zYp9mFJ11dO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5kYXRhID0gbmV3IFBheWFtQ2xhc3NUeXBlKG1haWxDb250ZW50LCB0aGlzLl9kb21TYW5pdGl6ZXIsIHRoaXMuX2RhdGVTZXJ2aWNlKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBwcm90ZWN0ZWQgX3NldFZhbHVlKHZhbDogYW55KTogdm9pZCB7XG4gICAgICAgIHN1cGVyLl9zZXRWYWx1ZSh2YWwpO1xuICAgIH1cbn1cblxudHlwZSBQYXlhbVR5cGUgPSB7XG4gICAgQWNjZXNzTGV2ZWw6IG51bWJlcjtcbiAgICBBdHRhY2htZW50cz86IFBheWFtQXR0YWNobWVudFtdOyAvLyBudWxsXG4gICAgQmNjVGV4dDogc3RyaW5nO1xuICAgIFN1YmplY3Q6IHN0cmluZztcbiAgICBDYXRlZ29yeVN0cmluZzogc3RyaW5nO1xuICAgIENjVGV4dDogc3RyaW5nO1xuICAgIENvbnRlbnRIdG1sOiBzdHJpbmc7XG4gICAgQ3VzdG9tVGV4dDogc3RyaW5nO1xuICAgIEZyb21UZXh0OiBzdHJpbmc7XG4gICAgRnJvbVBob3RvOiBzdHJpbmc7XG4gICAgT3JkZXI6IG51bWJlcjsgLy8gMVxuICAgIEltcG9ydGFuY2U6IG51bWJlcjtcbiAgICBSZWFkRGF0ZTogc3RyaW5nOyAvLyBcIm5ldyBEYXRlKDIwMjMsNiwyMCwxMSwyMSwxOSlcIlxuICAgIFNlbmREYXRlOiBzdHJpbmc7IC8vIFwibmV3IERhdGUoMjAyMyw2LDIwLDExLDIwLDU1KVwiXG4gICAgVG9UZXh0OiBzdHJpbmc7XG4gICAgVG9kbzogUGF5YW1Ub2RvOyAvLyBudWxsXG4gICAgRGV0YWlscz86IFBheWFtVHlwZVtdO1xufTtcbmNsYXNzIFBheWFtQ2xhc3NUeXBlIHtcbiAgICAkY29udGVudD86IFNhZmVIdG1sO1xuICAgICRzZW5kRGF0ZT86IHN0cmluZztcbiAgICAkcmVhZERhdGU/OiBzdHJpbmc7XG4gICAgJGZyb21QaG90bz86IHN0cmluZztcbiAgICAkdG9UZXh0Pzogc3RyaW5nW107XG4gICAgJGNjVGV4dD86IHN0cmluZ1tdO1xuICAgICRiY2NUZXh0Pzogc3RyaW5nW107XG4gICAgJGRldGFpbHM/OiBQYXlhbUNsYXNzVHlwZVtdO1xuICAgICRhdHRhY2htZW50cz86IEZpbGVBdHRhY2htZW50SW5mb1tdO1xuICAgICRpbXBvcnRhbmNlOiB7IGljb246IHN0cmluZyB8IG51bGw7IHRleHQ6IHN0cmluZyB8IG51bGwgfTtcbiAgICAkYWNjZXNzTGV2ZWw6IHsgaWNvbjogc3RyaW5nIHwgbnVsbDsgdGV4dDogc3RyaW5nIHwgbnVsbCB9O1xuICAgICR0b2RvOiB7IHRleHQ6IHN0cmluZzsgY29sb3I6IHN0cmluZyB9O1xuXG4gICAgY29uc3RydWN0b3IocHVibGljIHBheWFtOiBQYXlhbVR5cGUsIHByaXZhdGUgX2RvbVNhbml0aXplcjogRG9tU2FuaXRpemVyLCBwcml2YXRlIF9kYXRlU2VydmljZTogRGF0ZVNlcnZpY2UpIHtcbiAgICAgICAgdGhpcy4kY29udGVudCA9IHRoaXMuX2RvbVNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0SHRtbChwYXlhbS5Db250ZW50SHRtbCk7XG4gICAgICAgIHRoaXMuJHNlbmREYXRlID0gdGhpcy5fZ2V0RGF0ZVN0cmluZyhwYXlhbS5TZW5kRGF0ZSk7XG4gICAgICAgIHRoaXMuJHJlYWREYXRlID0gIXBheWFtLlJlYWREYXRlID8gJycgOiB0aGlzLl9nZXREYXRlU3RyaW5nKHBheWFtLlJlYWREYXRlKTtcblxuICAgICAgICB0aGlzLiR0b1RleHQgPSBwYXlhbS5Ub1RleHQuc3BsaXQoJzsnKTtcbiAgICAgICAgdGhpcy4kY2NUZXh0ID0gcGF5YW0uQ2NUZXh0Py5zcGxpdCgnOycpO1xuICAgICAgICB0aGlzLiRiY2NUZXh0ID0gcGF5YW0uQmNjVGV4dD8uc3BsaXQoJzsnKTtcbiAgICAgICAgdGhpcy4kZnJvbVBob3RvID0gQmFyc2FBcGkuQ29tbW9uLlV0aWwuR2V0SWNvblVybChwYXlhbS5Gcm9tUGhvdG8sIG51bGwsIG51bGwsIDY0KTtcbiAgICAgICAgdGhpcy4kZGV0YWlscyA9IHBheWFtLkRldGFpbHM/Lm1hcCgoYykgPT4gbmV3IFBheWFtQ2xhc3NUeXBlKGMsIF9kb21TYW5pdGl6ZXIsIF9kYXRlU2VydmljZSkpO1xuICAgICAgICB0aGlzLiRhdHRhY2htZW50cyA9IHBheWFtLkF0dGFjaG1lbnRzPy5tYXAoKGMpID0+ICh7XG4gICAgICAgICAgICBJZDogYy5JZCxcbiAgICAgICAgICAgIElzTmV3OiBmYWxzZSxcbiAgICAgICAgICAgIElzRGVsZXRlZDogZmFsc2UsXG4gICAgICAgICAgICBUeXBlOiBjLkV4dGVuc2lvbixcbiAgICAgICAgICAgIEZpbGVOYW1lOiBgJHtjLk5hbWV9LiR7Yy5FeHRlbnNpb259YFxuICAgICAgICB9KSk7XG4gICAgICAgIHRoaXMuJGltcG9ydGFuY2UgPSB7XG4gICAgICAgICAgICBpY29uOiB0aGlzLl9pY29uSW1wb3J0YW5jZShwYXlhbS5JbXBvcnRhbmNlKSxcbiAgICAgICAgICAgIHRleHQ6IHRoaXMuX3RleHRJbXBvcnRhbmNlKHBheWFtLkltcG9ydGFuY2UpXG4gICAgICAgIH07XG4gICAgICAgIHRoaXMuJGFjY2Vzc0xldmVsID0ge1xuICAgICAgICAgICAgaWNvbjogdGhpcy5faWNvbkFjY2Vzc0xldmVsKHBheWFtLkFjY2Vzc0xldmVsKSxcbiAgICAgICAgICAgIHRleHQ6IHRoaXMuX3RleHRBY2Nlc3NMZXZlbChwYXlhbS5BY2Nlc3NMZXZlbClcbiAgICAgICAgfTtcblxuICAgICAgICBpZiAocGF5YW0uVG9kbz8uRHVlRGF0ZSkge1xuICAgICAgICAgICAgdGhpcy4kdG9kbyA9IHRoaXMuX3RleHRUb2RvKHBheWFtLlRvZG8pO1xuICAgICAgICB9XG4gICAgfVxuICAgIHByaXZhdGUgX3RleHRUb2RvKHRvZG86IFBheWFtVG9kbyk6IHsgdGV4dDogc3RyaW5nOyBjb2xvcjogc3RyaW5nIH0ge1xuICAgICAgICBpZiAoIXRvZG8gfHwgIXRvZG8uRHVlRGF0ZSkge1xuICAgICAgICAgICAgcmV0dXJuIHsgdGV4dDogJycsIGNvbG9yOiAnMTAnIH07XG4gICAgICAgIH1cbiAgICAgICAgbGV0IGR1ZURhdGVTdHIgPSAnJztcbiAgICAgICAgbGV0IGRvbmVEYXRlU3RyID0gJyc7XG4gICAgICAgIGlmIChCYXJzYUFwaS5FeHQuaXNTdHJpbmcodG9kby5EdWVEYXRlKSkge1xuICAgICAgICAgICAgZHVlRGF0ZVN0ciA9IHRoaXMuX2dldERhdGVTdHJpbmcodG9kby5EdWVEYXRlKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodG9kby5Eb25lRGF0ZSkge1xuICAgICAgICAgICAgZG9uZURhdGVTdHIgPSB0aGlzLl9nZXREYXRlU3RyaW5nKHRvZG8uRG9uZURhdGUpO1xuICAgICAgICB9XG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1ldmFsXG4gICAgICAgIGNvbnN0IGR1ZURhdGUgPSBldmFsKHRvZG8uRHVlRGF0ZSk7XG4gICAgICAgIGlmICh0b2RvLlN0YXRlID09PSAyKSB7XG4gICAgICAgICAgICByZXR1cm4geyB0ZXh0OiBCYXJzYUFwaS5CQkIuTWFpbF9Ub2RvQ29tcGxldGVkICsgJzogJyArIGRvbmVEYXRlU3RyLCBjb2xvcjogJzgnIH07XG4gICAgICAgIH0gZWxzZSBpZiAobmV3IERhdGUoKS5nZXRUaW1lKCkgPCBkdWVEYXRlLmdldFRpbWUoKSkge1xuICAgICAgICAgICAgcmV0dXJuIHsgdGV4dDogQmFyc2FBcGkuQkJCLk1haWxfVG9kb0R1ZURhdGUgKyAnOiAnICsgZHVlRGF0ZVN0ciwgY29sb3I6ICcxJyB9O1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICB0ZXh0OiBCYXJzYUFwaS5CQkIuTWFpbF9Ub2RvT3ZlcmR1ZSArICc6ICcgKyAoZG9uZURhdGVTdHIgPyBkb25lRGF0ZVN0ciA6IGR1ZURhdGVTdHIpLFxuICAgICAgICAgICAgICAgIGNvbG9yOiAnMidcbiAgICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICB9XG4gICAgcHJpdmF0ZSBfdGV4dEltcG9ydGFuY2UoaSk6IHN0cmluZyB8IG51bGwge1xuICAgICAgICBpZiAoaSkge1xuICAgICAgICAgICAgcmV0dXJuIEJhcnNhQXBpLkJCQlsnTWFpbF9JbXBvcnRhbmNlJyArIGldO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgICBwcml2YXRlIF90ZXh0QWNjZXNzTGV2ZWwoaSk6IHN0cmluZyB8IG51bGwge1xuICAgICAgICBpZiAoaSkge1xuICAgICAgICAgICAgcmV0dXJuIEJhcnNhQXBpLkJCQlsnTWFpbF9TZW5zaXRpdml0eScgKyBpXTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgcHJpdmF0ZSBfaWNvbkltcG9ydGFuY2UoaSk6IHN0cmluZyB8IG51bGwge1xuICAgICAgICBpZiAoaSkge1xuICAgICAgICAgICAgcmV0dXJuICdwcmlvcml0eV8nICsgaS50b1N0cmluZygpICsgJy5wbmcnO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgICBwcml2YXRlIF9pY29uQWNjZXNzTGV2ZWwoaSk6IHN0cmluZyB8IG51bGwge1xuICAgICAgICBpZiAoaSkge1xuICAgICAgICAgICAgcmV0dXJuICdsb2NrXycgKyBpLnRvU3RyaW5nKCkgKyAnLnBuZyc7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICAgIHByaXZhdGUgX2dldFNpemUoc2l6ZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgc2l6ZSA9IHNpemUucmVwbGFjZSgnS0InLCAn2qnbjNmE2YjYqNin24zYqicpO1xuICAgICAgICBzaXplID0gc2l6ZS5yZXBsYWNlKCdNQicsICfZhdqv2KfYqNin24zYqicpO1xuICAgICAgICBzaXplID0gc2l6ZS5yZXBsYWNlKCdCJywgJ9io2KfbjNiqJyk7XG4gICAgICAgIHJldHVybiBzaXplO1xuICAgIH1cbiAgICBwcml2YXRlIF9nZXRBdHRhY2htZW50SWNvbihleHRlbnNpb24pOiBzdHJpbmcgfCBudWxsIHtcbiAgICAgICAgaWYgKEJhcnNhQXBpLkV4dC5pc0VtcHR5KGV4dGVuc2lvbikgPT09IGZhbHNlKSB7XG4gICAgICAgICAgICByZXR1cm4gJy9hc3NldHMvSW1hZ2VzL0ZpbGVUeXBlSWNvbnMvJyArICdfJyArIGV4dGVuc2lvbiArICcuUE5HJztcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgcHJpdmF0ZSBfZ2V0RGF0ZVN0cmluZyhkYXRlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZXZhbFxuICAgICAgICBjb25zdCBkYXRlSW5mbzogRGF0ZUluZm8gPSB0aGlzLl9kYXRlU2VydmljZS5nZXREYXRlSW5mbyhldmFsKGRhdGUpKTtcbiAgICAgICAgcmV0dXJuIGAke2RhdGVJbmZvLmRheU5hbWV9ICR7ZGF0ZUluZm8uZGF5fSAke2RhdGVJbmZvLm1vbnRoTmFtZX0gJHtkYXRlSW5mby55ZWFyfSAke2RhdGVJbmZvLmhvdXJ9OiR7ZGF0ZUluZm8ubWludXRlc31gO1xuICAgIH1cbn1cblxudHlwZSBQYXlhbUF0dGFjaG1lbnQgPSB7XG4gICAgQXR0YWNodHlwZTogc3RyaW5nOyAvLyBcImF0dGFjaENvbnRlbnRcIlxuICAgIEV4dGVuc2lvbjogc3RyaW5nOyAvLyBcImRvY3hcIlxuICAgIElkOiBzdHJpbmc7IC8vIFwiX09RMlhfU04wb2cyWTRTLVhfQUN4QnRKTWY1b2lnMVwiXG4gICAgTmFtZTogc3RyaW5nOyAvLyBcIkRvY3VtZW50IDEwXCJcbiAgICBTaXplOiBzdHJpbmc7IC8vIFwiMTQuOSBLQlwiXG59O1xudHlwZSBQYXlhbVRvZG8gPSB7IER1ZURhdGU6IHN0cmluZzsgU3RhdGU6IG51bWJlcjsgRG9uZURhdGU/OiBzdHJpbmcgfTtcbiIsIkBpZiAoZGF0YSkge1xuPG5nLWNvbnRhaW5lclxuICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICAgIHNob3dQYXlhbUNsYXNzO1xuICAgICAgICBjb250ZXh0OiB7XG4gICAgICAgICAgICAkaW1wbGljaXQ6IGRhdGEsXG4gICAgICAgICAgICBwcmltYXJ5OiAhZGF0YT8uJGRldGFpbHM/Lmxlbmd0aCxcbiAgICAgICAgICAgIGlzRmlyc3Q6IHRydWVcbiAgICAgICAgfVxuICAgIFwiXG4+XG48L25nLWNvbnRhaW5lcj5cbn1cbjxuZy10ZW1wbGF0ZSAjc2hvd1BheWFtQ2xhc3MgbGV0LWRhdGEgbGV0LXByaW1hcnk9XCJwcmltYXJ5XCIgbGV0LWlzRmlyc3Q9XCJpc0ZpcnN0XCI+XG4gICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cIlxuICAgICAgICAgICAgbmFtYXllc2hQYXlhbTtcbiAgICAgICAgICAgIGNvbnRleHQ6IHtcbiAgICAgICAgICAgICAgICAkaW1wbGljaXQ6IGRhdGEucGF5YW0uU3ViamVjdCxcbiAgICAgICAgICAgICAgICBmcm9tVGV4dDogZGF0YS5wYXlhbS5Gcm9tVGV4dCxcbiAgICAgICAgICAgICAgICB0b1RleHQ6IGRhdGEuJHRvVGV4dCxcbiAgICAgICAgICAgICAgICBpbXBvcnRhbmNlOiBkYXRhLiRpbXBvcnRhbmNlLFxuICAgICAgICAgICAgICAgIHJlYWREYXRlOiBkYXRhLiRyZWFkRGF0ZSxcbiAgICAgICAgICAgICAgICBzZW5kRGF0ZTogZGF0YS4kc2VuZERhdGUsXG4gICAgICAgICAgICAgICAgY2NUZXh0OiBkYXRhLiRjY1RleHQsXG4gICAgICAgICAgICAgICAgYmNjVGV4dDogZGF0YS4kYmNjVGV4dCxcbiAgICAgICAgICAgICAgICBhY2Nlc3NMZXZlbDogZGF0YS4kYWNjZXNzTGV2ZWwsXG4gICAgICAgICAgICAgICAgY29udGVudDogZGF0YS4kY29udGVudCxcbiAgICAgICAgICAgICAgICBmcm9tUGhvdG86IGRhdGEuJGZyb21QaG90byxcbiAgICAgICAgICAgICAgICBkZXRhaWxzOiBkYXRhLiRkZXRhaWxzLFxuICAgICAgICAgICAgICAgIGF0dGFjaG1lbnRzOiBkYXRhLiRhdHRhY2htZW50cyxcbiAgICAgICAgICAgICAgICB0b2RvOiBkYXRhLiR0b2RvLFxuICAgICAgICAgICAgICAgIGN1c3RvbVRleHQ6IGRhdGEucGF5YW0uQ3VzdG9tVGV4dCxcbiAgICAgICAgICAgICAgICBwcmltYXJ5OiBwcmltYXJ5LFxuICAgICAgICAgICAgICAgIGlzRmlyc3Q6IGlzRmlyc3RcbiAgICAgICAgICAgIH1cbiAgICAgICAgXCJcbiAgICA+XG4gICAgPC9uZy1jb250YWluZXI+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGVcbiAgICAjbmFtYXllc2hQYXlhbVxuICAgIGxldC1zdWJqZWN0XG4gICAgbGV0LWNvbnRlbnQ9XCJjb250ZW50XCJcbiAgICBsZXQtZnJvbVRleHQ9XCJmcm9tVGV4dFwiXG4gICAgbGV0LXRvVGV4dD1cInRvVGV4dFwiXG4gICAgbGV0LWltcG9ydGFuY2U9XCJpbXBvcnRhbmNlXCJcbiAgICBsZXQtcmVhZERhdGU9XCJyZWFkRGF0ZVwiXG4gICAgbGV0LXNlbmREYXRlPVwic2VuZERhdGVcIlxuICAgIGxldC1jY1RleHQ9XCJjY1RleHRcIlxuICAgIGxldC1iY2NUZXh0PVwiYmNjVGV4dFwiXG4gICAgbGV0LWZyb21QaG90bz1cImZyb21QaG90b1wiXG4gICAgbGV0LWRldGFpbHM9XCJkZXRhaWxzXCJcbiAgICBsZXQtYWNjZXNzTGV2ZWw9XCJhY2Nlc3NMZXZlbFwiXG4gICAgbGV0LXByaW1hcnk9XCJwcmltYXJ5XCJcbiAgICBsZXQtaXNGaXJzdD1cImlzRmlyc3RcIlxuICAgIGxldC1hdHRhY2htZW50cz1cImF0dGFjaG1lbnRzXCJcbiAgICBsZXQtdG9kbz1cInRvZG9cIlxuICAgIGxldC1jdXN0b21UZXh0PVwiY3VzdG9tVGV4dFwiXG4+XG4gICAgPGZkLWNhcmQgY2FyZFR5cGU9XCJvYmplY3RcIj5cbiAgICAgICAgPGZkLWNhcmQtaGVhZGVyPlxuICAgICAgICAgICAgPGZkLWF2YXRhclxuICAgICAgICAgICAgICAgIFtpbWFnZV09XCJmcm9tUGhvdG9cIlxuICAgICAgICAgICAgICAgIFtjaXJjbGVdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgc2l6ZT1cInNcIlxuICAgICAgICAgICAgICAgIFthcmlhTGFiZWxdPVwiZnJvbVRleHRcIlxuICAgICAgICAgICAgICAgIFtsYWJlbF09XCJmcm9tVGV4dFwiXG4gICAgICAgICAgICAgICAgW3RpdGxlXT1cImZyb21UZXh0XCJcbiAgICAgICAgICAgID48L2ZkLWF2YXRhcj5cbiAgICAgICAgICAgIDxkaXYgZmQtY2FyZC10aXRsZSBjbGFzcz1cImhlYWRlci1maWVsZHNcIj5cbiAgICAgICAgICAgICAgICA8aDUgZmQtdGl0bGU+XG4gICAgICAgICAgICAgICAgICAgIDxhIGZkLWxpbmsgW2VtcGhhc2l6ZWRdPVwidHJ1ZVwiIGFyaWEtbGFiZWw9XCJTZW5kZXJcIj4ge3sgZnJvbVRleHQgfX08L2E+XG4gICAgICAgICAgICAgICAgPC9oNT5cbiAgICAgICAgICAgICAgICA8ZmQtb2JqZWN0LWlkZW50aWZpZXIgW2Rlc2NyaXB0aW9uXT1cIicoJyArIHNlbmREYXRlICsgJyknXCI+IDwvZmQtb2JqZWN0LWlkZW50aWZpZXI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgZmQtY2FyZC1zdWJ0aXRsZT5cbiAgICAgICAgICAgICAgICA8aDUgZmQtdGl0bGU+e3sgc3ViamVjdCB9fTwvaDU+XG4gICAgICAgICAgICAgICAgPGZkLXBvcG92ZXI+XG4gICAgICAgICAgICAgICAgICAgIDxmZC1wb3BvdmVyLWNvbnRyb2w+XG4gICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGZkLWJ1dHRvbiBmZFR5cGU9XCJ0cmFuc3BhcmVudFwiIFtmZE1lbnVdPVwidHJ1ZVwiPnt7ICdSZWNpZXZlcnMnIHwgYmJiVHJhbnNsYXRlIH19PC9idXR0b24+XG4gICAgICAgICAgICAgICAgICAgIDwvZmQtcG9wb3Zlci1jb250cm9sPlxuICAgICAgICAgICAgICAgICAgICA8ZmQtcG9wb3Zlci1ib2R5PlxuICAgICAgICAgICAgICAgICAgICAgICAgPHVsIGZkLWxpc3Q+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGZvciAocmVjIG9mIHRvVGV4dDsgdHJhY2sgcmVjKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGZkLWxpc3QtaXRlbT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgZmQtbGlzdC1saW5rPnt7IHJlYyB9fTwvYT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgICAgICAgICAgIDwvZmQtcG9wb3Zlci1ib2R5PlxuICAgICAgICAgICAgICAgIDwvZmQtcG9wb3Zlcj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2ZkLWNhcmQtaGVhZGVyPlxuICAgICAgICA8ZmQtY2FyZC1jb250ZW50PlxuICAgICAgICAgICAgPGZkLXBhbmVsIFtleHBhbmRlZF09XCJpc0ZpcnN0XCI+XG4gICAgICAgICAgICAgICAgPGRpdiBmZC1wYW5lbC10aXRsZSBpZD1cInBhbmVsLWV4cGFuZGFibGUtdGl0bGUtMVwiPlxuICAgICAgICAgICAgICAgICAgICA8aDUgZmQtdGl0bGU+e3sgJ9mF2K3YqtmI2KfbjCDZvtuM2KfZhScgfCBiYmJUcmFuc2xhdGUgfX08L2g1PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicGF5YW1JY29uc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChpbXBvcnRhbmNlLmljb24pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDxmZC1wb3BvdmVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZC1wb3BvdmVyLWNvbnRyb2w+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgW3NyY109XCInL0N1c3RvbWl6YXRpb24vTWFpbC8nICsgaW1wb3J0YW5jZS5pY29uXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2ZkLXBvcG92ZXItY29udHJvbD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmQtcG9wb3Zlci1ib2R5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWwgZmQtbGlzdD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBmZC1saXN0LWl0ZW0+e3sgaW1wb3J0YW5jZS50ZXh0IH19PC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2ZkLXBvcG92ZXItYm9keT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZmQtcG9wb3Zlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgIH0gQGlmIChhY2Nlc3NMZXZlbC5pY29uKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZmQtcG9wb3Zlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmQtcG9wb3Zlci1jb250cm9sPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIFtzcmNdPVwiJy9DdXN0b21pemF0aW9uL01haWwvJyArIGFjY2Vzc0xldmVsLmljb25cIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZmQtcG9wb3Zlci1jb250cm9sPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZC1wb3BvdmVyLWJvZHk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBmZC1saXN0PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGZkLWxpc3QtaXRlbT57eyBhY2Nlc3NMZXZlbC50ZXh0IH19PC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2ZkLXBvcG92ZXItYm9keT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZmQtcG9wb3Zlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgIH0gQGlmICh0b2RvKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZmQtaW5mby1sYWJlbCBbbGFiZWxdPVwidG9kby50ZXh0XCIgW2NvbG9yXT1cInRvZG8uY29sb3JcIiBbdGl0bGVdPVwidG9kby50ZXh0XCI+PC9mZC1pbmZvLWxhYmVsPlxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGZkLXBhbmVsLWNvbnRlbnQ+XG4gICAgICAgICAgICAgICAgICAgIEBpZiAoY3VzdG9tVGV4dCkge1xuICAgICAgICAgICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGZkLW1lc3NhZ2Utc3RyaXAgdHlwZT1cImluZm9ybWF0aW9uXCIgW25vSWNvbl09XCJ0cnVlXCIgW2Rpc21pc3NpYmxlXT1cImZhbHNlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgY3VzdG9tVGV4dCB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9mZC1tZXNzYWdlLXN0cmlwPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICA8ZGl2IFtpbm5lckh0bWxdPVwiY29udGVudFwiIFtkaXNhYmxlXT1cIiFwcmltYXJ5IHx8IGF0dGFjaG1lbnRzPy5sZW5ndGhcIj48L2Rpdj5cblxuICAgICAgICAgICAgICAgICAgICBAaWYgKGF0dGFjaG1lbnRzPy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpbGUtdmlld2VyLWF0dGFjaG1lbnRzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICBAZm9yIChmaWxlIG9mIGF0dGFjaG1lbnRzOyB0cmFjayBmaWxlKSB7IEBpZiAoIWZpbGUuSXNEZWxldGVkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8YnN1LWZpbGUtdmlld2VyLXBvcG92ZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZmlsZV09XCJmaWxlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZmlsZXNdPVwiYXR0YWNobWVudHNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkZXZpY2VTaXplXT1cIihkZXZpY2VTaXplJCB8IGFzeW5jKSEhXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2FuRG93bmxvYWRdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVSZW1vdmVdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICA+PC9ic3UtZmlsZS12aWV3ZXItcG9wb3Zlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgIH0gfSBAaWYgKGF0dGFjaG1lbnRzLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZC1idXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdGl0bGVdPVwiJ0Rvd25sb2FkJyB8IGJiYlRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2dseXBoXT1cIidkb3dubG9hZCdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvd25sb2FkRmlsZXNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZmlsZXNdPVwiYXR0YWNobWVudHNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPjwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicmVhZEF0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICBAaWYgKHJlYWREYXRlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZmQtb2JqZWN0LWlkZW50aWZpZXIgW2Rlc2NyaXB0aW9uXT1cIignUmVhZEF0JyB8IGJiYlRyYW5zbGF0ZSkgKyAnOiAoJyArIHJlYWREYXRlICsgJyknXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2ZkLW9iamVjdC1pZGVudGlmaWVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZmQtcGFuZWw+XG4gICAgICAgIDwvZmQtY2FyZC1jb250ZW50PlxuICAgICAgICA8IS0tIDxmZC1jYXJkLWZvb3Rlcj5cbiAgICA8YnV0dG9uICpmZENhcmRGb290ZXJBY3Rpb25JdGVtIGZkLWJ1dHRvbiBmZENvbXBhY3Q+QXNzaWduIHRvIFByb2plY3Q8L2J1dHRvbj5cbiAgPC9mZC1jYXJkLWZvb3Rlcj4gLS0+XG4gICAgPC9mZC1jYXJkPlxuICAgIEBmb3IgKGRldGFpbCBvZiBkZXRhaWxzOyB0cmFjayBkZXRhaWwpIHtcbiAgICA8bmctY29udGlhbmVyPlxuICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cIlxuICAgICAgICAgICAgICAgIHNob3dQYXlhbUNsYXNzO1xuICAgICAgICAgICAgICAgIGNvbnRleHQ6IHtcbiAgICAgICAgICAgICAgICAgICAgJGltcGxpY2l0OiBkZXRhaWxcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBcIlxuICAgICAgICA+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGlhbmVyPlxuICAgIH1cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import { UploadService } from 'barsa-novin-ray-core';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/common";
|
|
5
|
+
import * as i2 from "@fundamental-ngx/core/link";
|
|
6
|
+
import * as i3 from "../barsa-question-answer-form-add-comment/barsa-question-answer-form-add-comment.component";
|
|
7
|
+
export class BarsaQuestionAnswerCommentsSectionComponent {
|
|
8
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: BarsaQuestionAnswerCommentsSectionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
9
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.5", type: BarsaQuestionAnswerCommentsSectionComponent, selector: "bsu-barsa-question-answer-comments-section", inputs: { post: "post" }, providers: [UploadService], ngImport: i0, template: "<div class=\"tw-flex tw-w-full tw-flex-col tw-items-start\">\n <div class=\"tw-border-b tw-border-gray-300 tw-w-full tw-mt-2\"></div>\n @if (post.Comments.MoDataList.length > 2 && !post.showAllCommnets) {\n <ng-container\n *ngTemplateOutlet=\"CommentRows; context: { $implicit: post.Comments.MoDataList.slice(0, 2) }\"\n ></ng-container>\n } @else {\n <ng-container *ngTemplateOutlet=\"CommentRows; context: { $implicit: post.Comments.MoDataList }\"></ng-container>\n }\n <ng-template #CommentRows let-comments>\n @for (comment of comments; track comment) {\n <div class=\"tw-py-2 tw-border-b tw-border-gray-200 tw-text-sm tw-w-full\">\n <p>\n <a fd-link class=\"tw-inline\">{{ comment.CreatorUser$Caption.trim() }}</a>\n <span class=\"tw-text-gray-500\">({{ comment.CreationDate$Caption.trim() }}):</span>\n {{ comment.$Caption.trim() }}\n @if ( comment.LastUpdateDate && comment.LastUpdateDate.getTime() !== comment.CreationDate.getTime() ) {\n <span class=\"tw-italic tw-text-gray-500\">\n -\n {{ comment.LastUpdateDate$Caption }}\n \u0648\u06CC\u0631\u0627\u06CC\u0634 \u0634\u062F\u0647\n </span>\n }\n </p>\n </div>\n }\n </ng-template>\n <bsu-barsa-question-answer-form-add-comment\n [postId]=\"post.Id\"\n (addComment)=\"post.Comments.MoDataList.push($event); post.showAllCommnets = true\"\n >\n @if (post.Comments.MoDataList.length > 2 && !post.showAllCommnets) {\n <span>|</span>\n <a fd-link aria-label=\"Emphasized\" class=\"hover:tw-cursor-pointer\" (click)=\"post.showAllCommnets = true\">\n \u0646\u0645\u0627\u06CC\u0634\n {{ post.Comments.MoDataList.length - 2 }}\n \u0646\u0638\u0631 \u062F\u06CC\u06AF\u0631\n </a>\n }\n </bsu-barsa-question-answer-form-add-comment>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.LinkComponent, selector: "[fdLink], [fd-link]", inputs: ["class", "emphasized", "disabled", "inverted", "subtle", "undecorated"] }, { kind: "component", type: i3.BarsaQuestionAnswerFormAddCommentComponent, selector: "bsu-barsa-question-answer-form-add-comment", inputs: ["postId"], outputs: ["addComment"] }] }); }
|
|
10
|
+
}
|
|
11
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: BarsaQuestionAnswerCommentsSectionComponent, decorators: [{
|
|
12
|
+
type: Component,
|
|
13
|
+
args: [{ selector: 'bsu-barsa-question-answer-comments-section', providers: [UploadService], template: "<div class=\"tw-flex tw-w-full tw-flex-col tw-items-start\">\n <div class=\"tw-border-b tw-border-gray-300 tw-w-full tw-mt-2\"></div>\n @if (post.Comments.MoDataList.length > 2 && !post.showAllCommnets) {\n <ng-container\n *ngTemplateOutlet=\"CommentRows; context: { $implicit: post.Comments.MoDataList.slice(0, 2) }\"\n ></ng-container>\n } @else {\n <ng-container *ngTemplateOutlet=\"CommentRows; context: { $implicit: post.Comments.MoDataList }\"></ng-container>\n }\n <ng-template #CommentRows let-comments>\n @for (comment of comments; track comment) {\n <div class=\"tw-py-2 tw-border-b tw-border-gray-200 tw-text-sm tw-w-full\">\n <p>\n <a fd-link class=\"tw-inline\">{{ comment.CreatorUser$Caption.trim() }}</a>\n <span class=\"tw-text-gray-500\">({{ comment.CreationDate$Caption.trim() }}):</span>\n {{ comment.$Caption.trim() }}\n @if ( comment.LastUpdateDate && comment.LastUpdateDate.getTime() !== comment.CreationDate.getTime() ) {\n <span class=\"tw-italic tw-text-gray-500\">\n -\n {{ comment.LastUpdateDate$Caption }}\n \u0648\u06CC\u0631\u0627\u06CC\u0634 \u0634\u062F\u0647\n </span>\n }\n </p>\n </div>\n }\n </ng-template>\n <bsu-barsa-question-answer-form-add-comment\n [postId]=\"post.Id\"\n (addComment)=\"post.Comments.MoDataList.push($event); post.showAllCommnets = true\"\n >\n @if (post.Comments.MoDataList.length > 2 && !post.showAllCommnets) {\n <span>|</span>\n <a fd-link aria-label=\"Emphasized\" class=\"hover:tw-cursor-pointer\" (click)=\"post.showAllCommnets = true\">\n \u0646\u0645\u0627\u06CC\u0634\n {{ post.Comments.MoDataList.length - 2 }}\n \u0646\u0638\u0631 \u062F\u06CC\u06AF\u0631\n </a>\n }\n </bsu-barsa-question-answer-form-add-comment>\n</div>\n" }]
|
|
14
|
+
}], propDecorators: { post: [{
|
|
15
|
+
type: Input
|
|
16
|
+
}] } });
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyc2EtcXVlc3Rpb24tYW5zd2VyLWNvbW1lbnRzLXNlY3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvYmFyc2EtcXVlc3Rpb24tYW5zd2VyLWNvbW1lbnRzLXNlY3Rpb24vYmFyc2EtcXVlc3Rpb24tYW5zd2VyLWNvbW1lbnRzLXNlY3Rpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvYmFyc2EtcXVlc3Rpb24tYW5zd2VyLWNvbW1lbnRzLXNlY3Rpb24vYmFyc2EtcXVlc3Rpb24tYW5zd2VyLWNvbW1lbnRzLXNlY3Rpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUF1QixhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7QUFRMUUsTUFBTSxPQUFPLDJDQUEyQzs4R0FBM0MsMkNBQTJDO2tHQUEzQywyQ0FBMkMsK0ZBRnpDLENBQUMsYUFBYSxDQUFDLDBCQ1A5Qix3L0RBeUNBOzsyRkRoQ2EsMkNBQTJDO2tCQU52RCxTQUFTOytCQUNJLDRDQUE0QyxhQUczQyxDQUFDLGFBQWEsQ0FBQzs4QkFHakIsSUFBSTtzQkFBWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWV0YW9iamVjdERhdGFNb2RlbCwgVXBsb2FkU2VydmljZSB9IGZyb20gJ2JhcnNhLW5vdmluLXJheS1jb3JlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdic3UtYmFyc2EtcXVlc3Rpb24tYW5zd2VyLWNvbW1lbnRzLXNlY3Rpb24nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9iYXJzYS1xdWVzdGlvbi1hbnN3ZXItY29tbWVudHMtc2VjdGlvbi5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vYmFyc2EtcXVlc3Rpb24tYW5zd2VyLWNvbW1lbnRzLXNlY3Rpb24uY29tcG9uZW50LmNzcyddLFxuICAgIHByb3ZpZGVyczogW1VwbG9hZFNlcnZpY2VdXG59KVxuZXhwb3J0IGNsYXNzIEJhcnNhUXVlc3Rpb25BbnN3ZXJDb21tZW50c1NlY3Rpb25Db21wb25lbnQge1xuICAgIEBJbnB1dCgpIHBvc3Q6IE1ldGFvYmplY3REYXRhTW9kZWw7XG59XG4iLCI8ZGl2IGNsYXNzPVwidHctZmxleCB0dy13LWZ1bGwgdHctZmxleC1jb2wgdHctaXRlbXMtc3RhcnRcIj5cbiAgICA8ZGl2IGNsYXNzPVwidHctYm9yZGVyLWIgdHctYm9yZGVyLWdyYXktMzAwIHR3LXctZnVsbCB0dy1tdC0yXCI+PC9kaXY+XG4gICAgQGlmIChwb3N0LkNvbW1lbnRzLk1vRGF0YUxpc3QubGVuZ3RoID4gMiAmJiAhcG9zdC5zaG93QWxsQ29tbW5ldHMpIHtcbiAgICA8bmctY29udGFpbmVyXG4gICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiQ29tbWVudFJvd3M7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiBwb3N0LkNvbW1lbnRzLk1vRGF0YUxpc3Quc2xpY2UoMCwgMikgfVwiXG4gICAgPjwvbmctY29udGFpbmVyPlxuICAgIH0gQGVsc2Uge1xuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJDb21tZW50Um93czsgY29udGV4dDogeyAkaW1wbGljaXQ6IHBvc3QuQ29tbWVudHMuTW9EYXRhTGlzdCB9XCI+PC9uZy1jb250YWluZXI+XG4gICAgfVxuICAgIDxuZy10ZW1wbGF0ZSAjQ29tbWVudFJvd3MgbGV0LWNvbW1lbnRzPlxuICAgICAgICBAZm9yIChjb21tZW50IG9mIGNvbW1lbnRzOyB0cmFjayBjb21tZW50KSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0dy1weS0yIHR3LWJvcmRlci1iIHR3LWJvcmRlci1ncmF5LTIwMCB0dy10ZXh0LXNtIHR3LXctZnVsbFwiPlxuICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgPGEgZmQtbGluayBjbGFzcz1cInR3LWlubGluZVwiPnt7IGNvbW1lbnQuQ3JlYXRvclVzZXIkQ2FwdGlvbi50cmltKCkgfX08L2E+XG4gICAgICAgICAgICAgICAgJm5ic3A7PHNwYW4gY2xhc3M9XCJ0dy10ZXh0LWdyYXktNTAwXCI+KHt7IGNvbW1lbnQuQ3JlYXRpb25EYXRlJENhcHRpb24udHJpbSgpIH19KTo8L3NwYW4+XG4gICAgICAgICAgICAgICAge3sgY29tbWVudC4kQ2FwdGlvbi50cmltKCkgfX1cbiAgICAgICAgICAgICAgICBAaWYgKCBjb21tZW50Lkxhc3RVcGRhdGVEYXRlICYmIGNvbW1lbnQuTGFzdFVwZGF0ZURhdGUuZ2V0VGltZSgpICE9PSBjb21tZW50LkNyZWF0aW9uRGF0ZS5nZXRUaW1lKCkgKSB7XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0dy1pdGFsaWMgdHctdGV4dC1ncmF5LTUwMFwiPlxuICAgICAgICAgICAgICAgICAgICAtXG4gICAgICAgICAgICAgICAgICAgIHt7IGNvbW1lbnQuTGFzdFVwZGF0ZURhdGUkQ2FwdGlvbiB9fVxuICAgICAgICAgICAgICAgICAgICDZiNuM2LHYp9uM2LQg2LTYr9mHXG4gICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDwvcD5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICA8L25nLXRlbXBsYXRlPlxuICAgIDxic3UtYmFyc2EtcXVlc3Rpb24tYW5zd2VyLWZvcm0tYWRkLWNvbW1lbnRcbiAgICAgICAgW3Bvc3RJZF09XCJwb3N0LklkXCJcbiAgICAgICAgKGFkZENvbW1lbnQpPVwicG9zdC5Db21tZW50cy5Nb0RhdGFMaXN0LnB1c2goJGV2ZW50KTsgcG9zdC5zaG93QWxsQ29tbW5ldHMgPSB0cnVlXCJcbiAgICA+XG4gICAgICAgIEBpZiAocG9zdC5Db21tZW50cy5Nb0RhdGFMaXN0Lmxlbmd0aCA+IDIgJiYgIXBvc3Quc2hvd0FsbENvbW1uZXRzKSB7XG4gICAgICAgIDxzcGFuPnw8L3NwYW4+XG4gICAgICAgIDxhIGZkLWxpbmsgYXJpYS1sYWJlbD1cIkVtcGhhc2l6ZWRcIiBjbGFzcz1cImhvdmVyOnR3LWN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cInBvc3Quc2hvd0FsbENvbW1uZXRzID0gdHJ1ZVwiPlxuICAgICAgICAgICAg2YbZhdin24zYtFxuICAgICAgICAgICAge3sgcG9zdC5Db21tZW50cy5Nb0RhdGFMaXN0Lmxlbmd0aCAtIDIgfX1cbiAgICAgICAgICAgINmG2LjYsSDYr9uM2q/YsVxuICAgICAgICA8L2E+XG4gICAgICAgIH1cbiAgICA8L2JzdS1iYXJzYS1xdWVzdGlvbi1hbnN3ZXItZm9ybS1hZGQtY29tbWVudD5cbjwvZGl2PlxuIl19
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { Component, EventEmitter, inject, Input, Output } from '@angular/core';
|
|
2
|
+
import { UploadService } from 'barsa-novin-ray-core';
|
|
3
|
+
import { DomSanitizer } from '@angular/platform-browser';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@fundamental-ngx/core/link";
|
|
6
|
+
import * as i2 from "../barsa-chip/barsa-chip.component";
|
|
7
|
+
export class BarsaQuestionAnswerContentActionsSectionComponent {
|
|
8
|
+
constructor() {
|
|
9
|
+
this.btnClick = new EventEmitter();
|
|
10
|
+
this._domSanitizer = inject(DomSanitizer);
|
|
11
|
+
}
|
|
12
|
+
safeHtml(html) {
|
|
13
|
+
return this._domSanitizer.bypassSecurityTrustHtml(html ?? '');
|
|
14
|
+
}
|
|
15
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: BarsaQuestionAnswerContentActionsSectionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
16
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.5", type: BarsaQuestionAnswerContentActionsSectionComponent, selector: "bsu-barsa-question-answer-content-actions-section", inputs: { mo: "mo", buttons: "buttons" }, outputs: { btnClick: "btnClick" }, host: { classAttribute: "w-full flex grow shrink flex-col" }, providers: [UploadService], ngImport: i0, template: "<div class=\"tw-my-4 [&_*]:!tw-bg-transparent\" [innerHTML]=\"safeHtml(mo.Post.Content)\"></div>\n<div class=\"tw-grow tw-shrink\"></div>\n<div class=\"tw-flex tw-justify-between tw-items-center\">\n @if (mo.Tags?.MoDataList) {\n <div class=\"tw-flex tw-gap-3\">\n @for (tag of mo.Tags.MoDataList; track tag) {\n <bsu-barsa-chip [title]=\"tag.$Caption\"></bsu-barsa-chip>\n }\n </div>\n }\n <div class=\"tw-flex tw-gap-3\">\n @for (item of buttons; track item) { @if (!item.hidden && !item.isBuiltin) {\n <a\n fd-link\n aria-label=\"Emphasized\"\n class=\"!hover:tw-cursor-pointer !tw-no-underline\"\n (click)=\"btnClick.emit(); item.handler(item, item)\"\n [disabled]=\"item.disabled\"\n >{{ item.text }}</a\n >\n } }\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "component", type: i1.LinkComponent, selector: "[fdLink], [fd-link]", inputs: ["class", "emphasized", "disabled", "inverted", "subtle", "undecorated"] }, { kind: "component", type: i2.BarsaChipComponent, selector: "bsu-barsa-chip", inputs: ["title", "moreInfo", "canCheck", "isChecked"], outputs: ["checkedChange"] }] }); }
|
|
17
|
+
}
|
|
18
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: BarsaQuestionAnswerContentActionsSectionComponent, decorators: [{
|
|
19
|
+
type: Component,
|
|
20
|
+
args: [{ selector: 'bsu-barsa-question-answer-content-actions-section', providers: [UploadService], host: {
|
|
21
|
+
class: 'w-full flex grow shrink flex-col'
|
|
22
|
+
}, template: "<div class=\"tw-my-4 [&_*]:!tw-bg-transparent\" [innerHTML]=\"safeHtml(mo.Post.Content)\"></div>\n<div class=\"tw-grow tw-shrink\"></div>\n<div class=\"tw-flex tw-justify-between tw-items-center\">\n @if (mo.Tags?.MoDataList) {\n <div class=\"tw-flex tw-gap-3\">\n @for (tag of mo.Tags.MoDataList; track tag) {\n <bsu-barsa-chip [title]=\"tag.$Caption\"></bsu-barsa-chip>\n }\n </div>\n }\n <div class=\"tw-flex tw-gap-3\">\n @for (item of buttons; track item) { @if (!item.hidden && !item.isBuiltin) {\n <a\n fd-link\n aria-label=\"Emphasized\"\n class=\"!hover:tw-cursor-pointer !tw-no-underline\"\n (click)=\"btnClick.emit(); item.handler(item, item)\"\n [disabled]=\"item.disabled\"\n >{{ item.text }}</a\n >\n } }\n </div>\n</div>\n" }]
|
|
23
|
+
}], propDecorators: { mo: [{
|
|
24
|
+
type: Input
|
|
25
|
+
}], buttons: [{
|
|
26
|
+
type: Input
|
|
27
|
+
}], btnClick: [{
|
|
28
|
+
type: Output
|
|
29
|
+
}] } });
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyc2EtcXVlc3Rpb24tYW5zd2VyLWNvbnRlbnQtYWN0aW9ucy1zZWN0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLXNhcC11aS9zcmMvbGliL2JhcnNhLXF1ZXN0aW9uLWFuc3dlci1jb250ZW50LWFjdGlvbnMtc2VjdGlvbi9iYXJzYS1xdWVzdGlvbi1hbnN3ZXItY29udGVudC1hY3Rpb25zLXNlY3Rpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvYmFyc2EtcXVlc3Rpb24tYW5zd2VyLWNvbnRlbnQtYWN0aW9ucy1zZWN0aW9uL2JhcnNhLXF1ZXN0aW9uLWFuc3dlci1jb250ZW50LWFjdGlvbnMtc2VjdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvRSxPQUFPLEVBQXVCLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzFFLE9BQU8sRUFBRSxZQUFZLEVBQVksTUFBTSwyQkFBMkIsQ0FBQzs7OztBQVduRSxNQUFNLE9BQU8saURBQWlEO0lBVDlEO1FBWWMsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFaEMsa0JBQWEsR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7S0FJaEQ7SUFIRyxRQUFRLENBQUMsSUFBSTtRQUNULE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLENBQUM7SUFDbEUsQ0FBQzs4R0FSUSxpREFBaUQ7a0dBQWpELGlEQUFpRCx1TkFML0MsQ0FBQyxhQUFhLENBQUMsMEJDUjlCLHcyQkF1QkE7OzJGRFZhLGlEQUFpRDtrQkFUN0QsU0FBUzsrQkFDSSxtREFBbUQsYUFHbEQsQ0FBQyxhQUFhLENBQUMsUUFDcEI7d0JBQ0YsS0FBSyxFQUFFLGtDQUFrQztxQkFDNUM7OEJBR1EsRUFBRTtzQkFBVixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDSSxRQUFRO3NCQUFqQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIGluamVjdCwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWV0YW9iamVjdERhdGFNb2RlbCwgVXBsb2FkU2VydmljZSB9IGZyb20gJ2JhcnNhLW5vdmluLXJheS1jb3JlJztcbmltcG9ydCB7IERvbVNhbml0aXplciwgU2FmZUh0bWwgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdic3UtYmFyc2EtcXVlc3Rpb24tYW5zd2VyLWNvbnRlbnQtYWN0aW9ucy1zZWN0aW9uJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vYmFyc2EtcXVlc3Rpb24tYW5zd2VyLWNvbnRlbnQtYWN0aW9ucy1zZWN0aW9uLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9iYXJzYS1xdWVzdGlvbi1hbnN3ZXItY29udGVudC1hY3Rpb25zLXNlY3Rpb24uY29tcG9uZW50LmNzcyddLFxuICAgIHByb3ZpZGVyczogW1VwbG9hZFNlcnZpY2VdLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICd3LWZ1bGwgZmxleCBncm93IHNocmluayBmbGV4LWNvbCdcbiAgICB9XG59KVxuZXhwb3J0IGNsYXNzIEJhcnNhUXVlc3Rpb25BbnN3ZXJDb250ZW50QWN0aW9uc1NlY3Rpb25Db21wb25lbnQge1xuICAgIEBJbnB1dCgpIG1vOiBNZXRhb2JqZWN0RGF0YU1vZGVsO1xuICAgIEBJbnB1dCgpIGJ1dHRvbnM6IGFueVtdO1xuICAgIEBPdXRwdXQoKSBidG5DbGljayA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIHByaXZhdGUgX2RvbVNhbml0aXplciA9IGluamVjdChEb21TYW5pdGl6ZXIpO1xuICAgIHNhZmVIdG1sKGh0bWwpOiBTYWZlSHRtbCB7XG4gICAgICAgIHJldHVybiB0aGlzLl9kb21TYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdEh0bWwoaHRtbCA/PyAnJyk7XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInR3LW15LTQgWyZfKl06IXR3LWJnLXRyYW5zcGFyZW50XCIgW2lubmVySFRNTF09XCJzYWZlSHRtbChtby5Qb3N0LkNvbnRlbnQpXCI+PC9kaXY+XG48ZGl2IGNsYXNzPVwidHctZ3JvdyB0dy1zaHJpbmtcIj48L2Rpdj5cbjxkaXYgY2xhc3M9XCJ0dy1mbGV4IHR3LWp1c3RpZnktYmV0d2VlbiB0dy1pdGVtcy1jZW50ZXJcIj5cbiAgICBAaWYgKG1vLlRhZ3M/Lk1vRGF0YUxpc3QpIHtcbiAgICA8ZGl2IGNsYXNzPVwidHctZmxleCB0dy1nYXAtM1wiPlxuICAgICAgICBAZm9yICh0YWcgb2YgbW8uVGFncy5Nb0RhdGFMaXN0OyB0cmFjayB0YWcpIHtcbiAgICAgICAgPGJzdS1iYXJzYS1jaGlwIFt0aXRsZV09XCJ0YWcuJENhcHRpb25cIj48L2JzdS1iYXJzYS1jaGlwPlxuICAgICAgICB9XG4gICAgPC9kaXY+XG4gICAgfVxuICAgIDxkaXYgY2xhc3M9XCJ0dy1mbGV4IHR3LWdhcC0zXCI+XG4gICAgICAgIEBmb3IgKGl0ZW0gb2YgYnV0dG9uczsgdHJhY2sgaXRlbSkgeyBAaWYgKCFpdGVtLmhpZGRlbiAmJiAhaXRlbS5pc0J1aWx0aW4pIHtcbiAgICAgICAgPGFcbiAgICAgICAgICAgIGZkLWxpbmtcbiAgICAgICAgICAgIGFyaWEtbGFiZWw9XCJFbXBoYXNpemVkXCJcbiAgICAgICAgICAgIGNsYXNzPVwiIWhvdmVyOnR3LWN1cnNvci1wb2ludGVyICF0dy1uby11bmRlcmxpbmVcIlxuICAgICAgICAgICAgKGNsaWNrKT1cImJ0bkNsaWNrLmVtaXQoKTsgaXRlbS5oYW5kbGVyKGl0ZW0sIGl0ZW0pXCJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJpdGVtLmRpc2FibGVkXCJcbiAgICAgICAgICAgID57eyBpdGVtLnRleHQgfX08L2FcbiAgICAgICAgPlxuICAgICAgICB9IH1cbiAgICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import { UploadService } from 'barsa-novin-ray-core';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class BarsaQuestionAnswerCreatorTimeSectionComponent {
|
|
5
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: BarsaQuestionAnswerCreatorTimeSectionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
6
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.5", type: BarsaQuestionAnswerCreatorTimeSectionComponent, selector: "bsu-barsa-question-answer-creator-time-section", inputs: { post: "post" }, providers: [UploadService], ngImport: i0, template: "<p>\n {{ post.CreatorUser$Caption }}\n</p>\n<p>\n {{ post.CreationDate$Caption }}\n</p>\n", styles: [""] }); }
|
|
7
|
+
}
|
|
8
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: BarsaQuestionAnswerCreatorTimeSectionComponent, decorators: [{
|
|
9
|
+
type: Component,
|
|
10
|
+
args: [{ selector: 'bsu-barsa-question-answer-creator-time-section', providers: [UploadService], template: "<p>\n {{ post.CreatorUser$Caption }}\n</p>\n<p>\n {{ post.CreationDate$Caption }}\n</p>\n" }]
|
|
11
|
+
}], propDecorators: { post: [{
|
|
12
|
+
type: Input
|
|
13
|
+
}] } });
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyc2EtcXVlc3Rpb24tYW5zd2VyLWNyZWF0b3ItdGltZS1zZWN0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLXNhcC11aS9zcmMvbGliL2JhcnNhLXF1ZXN0aW9uLWFuc3dlci1jcmVhdG9yLXRpbWUtc2VjdGlvbi9iYXJzYS1xdWVzdGlvbi1hbnN3ZXItY3JlYXRvci10aW1lLXNlY3Rpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvYmFyc2EtcXVlc3Rpb24tYW5zd2VyLWNyZWF0b3ItdGltZS1zZWN0aW9uL2JhcnNhLXF1ZXN0aW9uLWFuc3dlci1jcmVhdG9yLXRpbWUtc2VjdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQXVCLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDOztBQVExRSxNQUFNLE9BQU8sOENBQThDOzhHQUE5Qyw4Q0FBOEM7a0dBQTlDLDhDQUE4QyxtR0FGNUMsQ0FBQyxhQUFhLENBQUMsMEJDUDlCLGlHQU1BOzsyRkRHYSw4Q0FBOEM7a0JBTjFELFNBQVM7K0JBQ0ksZ0RBQWdELGFBRy9DLENBQUMsYUFBYSxDQUFDOzhCQUdqQixJQUFJO3NCQUFaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNZXRhb2JqZWN0RGF0YU1vZGVsLCBVcGxvYWRTZXJ2aWNlIH0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2JzdS1iYXJzYS1xdWVzdGlvbi1hbnN3ZXItY3JlYXRvci10aW1lLXNlY3Rpb24nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9iYXJzYS1xdWVzdGlvbi1hbnN3ZXItY3JlYXRvci10aW1lLXNlY3Rpb24uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2JhcnNhLXF1ZXN0aW9uLWFuc3dlci1jcmVhdG9yLXRpbWUtc2VjdGlvbi5jb21wb25lbnQuY3NzJ10sXG4gICAgcHJvdmlkZXJzOiBbVXBsb2FkU2VydmljZV1cbn0pXG5leHBvcnQgY2xhc3MgQmFyc2FRdWVzdGlvbkFuc3dlckNyZWF0b3JUaW1lU2VjdGlvbkNvbXBvbmVudCB7XG4gICAgQElucHV0KCkgcG9zdDogTWV0YW9iamVjdERhdGFNb2RlbDtcbn1cbiIsIjxwPlxuICAgIHt7IHBvc3QuQ3JlYXRvclVzZXIkQ2FwdGlvbiB9fVxuPC9wPlxuPHA+XG4gICAge3sgcG9zdC5DcmVhdGlvbkRhdGUkQ2FwdGlvbiB9fVxuPC9wPlxuIl19
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
+
import { FormPropsBaseComponent, UploadService } from 'barsa-novin-ray-core';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "../layout-control/layout-control.component";
|
|
5
|
+
import * as i2 from "../barsa-question-answer-content-actions-section/barsa-question-answer-content-actions-section.component";
|
|
6
|
+
import * as i3 from "../barsa-question-answer-vote-section/barsa-question-answer-vote-section.component";
|
|
7
|
+
import * as i4 from "../barsa-question-answer-creator-time-section/barsa-question-answer-creator-time-section.component";
|
|
8
|
+
import * as i5 from "../barsa-question-answer-comments-section/barsa-question-answer-comments-section.component";
|
|
9
|
+
import * as i6 from "barsa-novin-ray-core";
|
|
10
|
+
export class BarsaQuestionAnswerFormComponent extends FormPropsBaseComponent {
|
|
11
|
+
constructor() {
|
|
12
|
+
super(...arguments);
|
|
13
|
+
this.toolbar = toolbar;
|
|
14
|
+
}
|
|
15
|
+
ngOnChanges(changes) {
|
|
16
|
+
super.ngOnChanges(changes);
|
|
17
|
+
const { mo } = changes;
|
|
18
|
+
if (mo && !mo.firstChange) {
|
|
19
|
+
this.mo = mo.currentValue;
|
|
20
|
+
this._cdr.detectChanges();
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
onVoteChange(isPositive) {
|
|
24
|
+
const vote = this._controlUiPipe.transform(isPositive ? 'ثبت رای مثبت' : 'ثبت رای منفی', this.layout94);
|
|
25
|
+
vote && vote?.FieldUi.fireEvent('click', vote.FieldUi);
|
|
26
|
+
}
|
|
27
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: BarsaQuestionAnswerFormComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
28
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.5", type: BarsaQuestionAnswerFormComponent, selector: "bsu-barsa-question-answer-form", providers: [UploadService], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"tw-absolute tw-z-0 tw-bg-white tw-w-screen tw-top-0 tw-left-0\"></div>\n<div class=\"tw-w-full tw-py-8 tw-relative\">\n <div class=\"tw-w-full tw-max-w-[80rem] tw-mx-auto tw-grid tw-grid-cols-4 tw-gap-12\">\n <div class=\"tw-col-span-3 tw-flex tw-flex-col tw-gap-8\">\n <div class=\"tw-flex tw-gap-8 tw-pb-8\">\n <div class=\"tw-grow-0 tw-shrink-0 tw-flex tw-flex-col tw-items-center tw-gap-6\">\n <img src=\"https://picsum.photos/64/64\" class=\"tw-size-12 tw-rounded-full\" />\n <bsu-barsa-question-answer-vote-section\n [vote]=\"mo.Post.CurrentUserVote.Vote\"\n [voteUps]=\"mo.Post.VoteUps\"\n [voteDowns]=\"mo.Post.VoteDowns\"\n (voteChange)=\"onVoteChange($event)\"\n ></bsu-barsa-question-answer-vote-section>\n </div>\n <div class=\"tw-grow tw-shrink\">\n <bsu-barsa-question-answer-creator-time-section\n [post]=\"mo.Post\"\n ></bsu-barsa-question-answer-creator-time-section>\n <p class=\"tw-text-2xl tw-mt-4\">\n {{ mo.Title }}\n </p>\n <bsu-barsa-question-answer-content-actions-section\n [mo]=\"mo\"\n [buttons]=\"toolbarItems\"\n ></bsu-barsa-question-answer-content-actions-section>\n <bsu-barsa-question-answer-comments-section\n [post]=\"mo.Post\"\n ></bsu-barsa-question-answer-comments-section>\n </div>\n </div>\n <p class=\"tw-z-10 tw-text-2xl tw-pb-4 tw-border-b tw-border-gray-200 tw-relative\">\n {{ mo.Answers.MoDataList.length }}\n \u067E\u0627\u0633\u062E\n </p>\n <div class=\"tw-flex tw-flex-col tw-gap-8 tw-z-10 tw-relative\">\n @if (mo.Answers.MoDataList.length) { @if ('\u067E\u0627\u0633\u062E \u0647\u0627' | controlUi: layout94; as answers) {\n <bsu-layout-control [config]=\"answers\"></bsu-layout-control>\n } }\n </div>\n </div>\n <div class=\"tw-col-span-1\">\n @if ('\u0633\u0648\u0627\u0644\u0627\u062A \u0645\u0631\u062A\u0628\u0637' | controlUi: layout94; as relevantQuestions) {\n <bsu-layout-control [config]=\"relevantQuestions\"></bsu-layout-control>\n }\n </div>\n </div>\n <div class=\"tw-w-full tw-max-w-[80rem] tw-mx-auto tw-grid tw-grid-cols-4 tw-mt-4\">\n <div\n class=\"tw-col-span-4 tw-flex tw-flex-col tw-gap-4 tw-p-4 border tw-border-gray-200 tw-rounded-md tw-bg-white\"\n >\n <span class=\"tw-text-xl\">\u0627\u0631\u0633\u0627\u0644 \u067E\u0627\u0633\u062E</span>\n @if ('\u067E\u0627\u0633\u062E \u062C\u062F\u06CC\u062F' | controlUi: layout94; as newAnswerText) {\n <bsu-layout-control [config]=\"newAnswerText\"></bsu-layout-control>\n }\n <div class=\"tw-flex tw-justify-end\">\n @if ('\u0627\u0631\u0633\u0627\u0644 \u067E\u0627\u0633\u062E \u062C\u062F\u06CC\u062F' | controlUi: layout94; as newAnswerSubmit) {\n <bsu-layout-control\n class=\"tw-w-fit tw-min-w-fit tw-max-w-fit\"\n [config]=\"newAnswerSubmit\"\n ></bsu-layout-control>\n }\n </div>\n </div>\n </div>\n</div>\n", styles: [":root{--sapBackgroundColor: #fdfdfd}\n"], dependencies: [{ kind: "component", type: i1.LayoutControlComponent, selector: "bsu-layout-control", inputs: ["inlineEdit", "caption", "focusControl", "showLabel", "maxLabelWidth", "hasHorizontalText", "contentDensity", "flex", "RefreshLabel", "SetVisible"] }, { kind: "component", type: i2.BarsaQuestionAnswerContentActionsSectionComponent, selector: "bsu-barsa-question-answer-content-actions-section", inputs: ["mo", "buttons"], outputs: ["btnClick"] }, { kind: "component", type: i3.BarsaQuestionAnswerVoteSectionComponent, selector: "bsu-barsa-question-answer-vote-section", inputs: ["vote", "voteDowns", "voteUps"], outputs: ["voteChange"] }, { kind: "component", type: i4.BarsaQuestionAnswerCreatorTimeSectionComponent, selector: "bsu-barsa-question-answer-creator-time-section", inputs: ["post"] }, { kind: "component", type: i5.BarsaQuestionAnswerCommentsSectionComponent, selector: "bsu-barsa-question-answer-comments-section", inputs: ["post"] }, { kind: "pipe", type: i6.ControlUiPipe, name: "controlUi" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
29
|
+
}
|
|
30
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: BarsaQuestionAnswerFormComponent, decorators: [{
|
|
31
|
+
type: Component,
|
|
32
|
+
args: [{ selector: 'bsu-barsa-question-answer-form', changeDetection: ChangeDetectionStrategy.OnPush, providers: [UploadService], template: "<div class=\"tw-absolute tw-z-0 tw-bg-white tw-w-screen tw-top-0 tw-left-0\"></div>\n<div class=\"tw-w-full tw-py-8 tw-relative\">\n <div class=\"tw-w-full tw-max-w-[80rem] tw-mx-auto tw-grid tw-grid-cols-4 tw-gap-12\">\n <div class=\"tw-col-span-3 tw-flex tw-flex-col tw-gap-8\">\n <div class=\"tw-flex tw-gap-8 tw-pb-8\">\n <div class=\"tw-grow-0 tw-shrink-0 tw-flex tw-flex-col tw-items-center tw-gap-6\">\n <img src=\"https://picsum.photos/64/64\" class=\"tw-size-12 tw-rounded-full\" />\n <bsu-barsa-question-answer-vote-section\n [vote]=\"mo.Post.CurrentUserVote.Vote\"\n [voteUps]=\"mo.Post.VoteUps\"\n [voteDowns]=\"mo.Post.VoteDowns\"\n (voteChange)=\"onVoteChange($event)\"\n ></bsu-barsa-question-answer-vote-section>\n </div>\n <div class=\"tw-grow tw-shrink\">\n <bsu-barsa-question-answer-creator-time-section\n [post]=\"mo.Post\"\n ></bsu-barsa-question-answer-creator-time-section>\n <p class=\"tw-text-2xl tw-mt-4\">\n {{ mo.Title }}\n </p>\n <bsu-barsa-question-answer-content-actions-section\n [mo]=\"mo\"\n [buttons]=\"toolbarItems\"\n ></bsu-barsa-question-answer-content-actions-section>\n <bsu-barsa-question-answer-comments-section\n [post]=\"mo.Post\"\n ></bsu-barsa-question-answer-comments-section>\n </div>\n </div>\n <p class=\"tw-z-10 tw-text-2xl tw-pb-4 tw-border-b tw-border-gray-200 tw-relative\">\n {{ mo.Answers.MoDataList.length }}\n \u067E\u0627\u0633\u062E\n </p>\n <div class=\"tw-flex tw-flex-col tw-gap-8 tw-z-10 tw-relative\">\n @if (mo.Answers.MoDataList.length) { @if ('\u067E\u0627\u0633\u062E \u0647\u0627' | controlUi: layout94; as answers) {\n <bsu-layout-control [config]=\"answers\"></bsu-layout-control>\n } }\n </div>\n </div>\n <div class=\"tw-col-span-1\">\n @if ('\u0633\u0648\u0627\u0644\u0627\u062A \u0645\u0631\u062A\u0628\u0637' | controlUi: layout94; as relevantQuestions) {\n <bsu-layout-control [config]=\"relevantQuestions\"></bsu-layout-control>\n }\n </div>\n </div>\n <div class=\"tw-w-full tw-max-w-[80rem] tw-mx-auto tw-grid tw-grid-cols-4 tw-mt-4\">\n <div\n class=\"tw-col-span-4 tw-flex tw-flex-col tw-gap-4 tw-p-4 border tw-border-gray-200 tw-rounded-md tw-bg-white\"\n >\n <span class=\"tw-text-xl\">\u0627\u0631\u0633\u0627\u0644 \u067E\u0627\u0633\u062E</span>\n @if ('\u067E\u0627\u0633\u062E \u062C\u062F\u06CC\u062F' | controlUi: layout94; as newAnswerText) {\n <bsu-layout-control [config]=\"newAnswerText\"></bsu-layout-control>\n }\n <div class=\"tw-flex tw-justify-end\">\n @if ('\u0627\u0631\u0633\u0627\u0644 \u067E\u0627\u0633\u062E \u062C\u062F\u06CC\u062F' | controlUi: layout94; as newAnswerSubmit) {\n <bsu-layout-control\n class=\"tw-w-fit tw-min-w-fit tw-max-w-fit\"\n [config]=\"newAnswerSubmit\"\n ></bsu-layout-control>\n }\n </div>\n </div>\n </div>\n</div>\n", styles: [":root{--sapBackgroundColor: #fdfdfd}\n"] }]
|
|
33
|
+
}] });
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyc2EtcXVlc3Rpb24tYW5zd2VyLWZvcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvYmFyc2EtcXVlc3Rpb24tYW5zd2VyLWZvcm0vYmFyc2EtcXVlc3Rpb24tYW5zd2VyLWZvcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvYmFyc2EtcXVlc3Rpb24tYW5zd2VyLWZvcm0vYmFyc2EtcXVlc3Rpb24tYW5zd2VyLWZvcm0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDbEYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7Ozs7OztBQVM3RSxNQUFNLE9BQU8sZ0NBQWlDLFNBQVEsc0JBQXNCO0lBUDVFOztRQW9CdUIsWUFBTyxHQUFHLE9BQU8sQ0FBQztLQUN4QztJQWJHLFdBQVcsQ0FBQyxPQUFzQjtRQUM5QixLQUFLLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzNCLE1BQU0sRUFBRSxFQUFFLEVBQUUsR0FBRyxPQUFPLENBQUM7UUFDdkIsSUFBSSxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsWUFBWSxDQUFDO1lBQzFCLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDOUIsQ0FBQztJQUNMLENBQUM7SUFDRCxZQUFZLENBQUMsVUFBbUI7UUFDNUIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLGNBQWMsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDeEcsSUFBSSxJQUFJLElBQUksRUFBRSxPQUFPLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDM0QsQ0FBQzs4R0FaUSxnQ0FBZ0M7a0dBQWhDLGdDQUFnQyx5REFGOUIsQ0FBQyxhQUFhLENBQUMsc0VDUjlCLDBqSEFpRUE7OzJGRHZEYSxnQ0FBZ0M7a0JBUDVDLFNBQVM7K0JBQ0ksZ0NBQWdDLG1CQUd6Qix1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDLENBQUMsYUFBYSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybVByb3BzQmFzZUNvbXBvbmVudCwgVXBsb2FkU2VydmljZSB9IGZyb20gJ2JhcnNhLW5vdmluLXJheS1jb3JlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdic3UtYmFyc2EtcXVlc3Rpb24tYW5zd2VyLWZvcm0nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9iYXJzYS1xdWVzdGlvbi1hbnN3ZXItZm9ybS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vYmFyc2EtcXVlc3Rpb24tYW5zd2VyLWZvcm0uY29tcG9uZW50LmNzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1VwbG9hZFNlcnZpY2VdXG59KVxuZXhwb3J0IGNsYXNzIEJhcnNhUXVlc3Rpb25BbnN3ZXJGb3JtQ29tcG9uZW50IGV4dGVuZHMgRm9ybVByb3BzQmFzZUNvbXBvbmVudCB7XG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgICAgICBzdXBlci5uZ09uQ2hhbmdlcyhjaGFuZ2VzKTtcbiAgICAgICAgY29uc3QgeyBtbyB9ID0gY2hhbmdlcztcbiAgICAgICAgaWYgKG1vICYmICFtby5maXJzdENoYW5nZSkge1xuICAgICAgICAgICAgdGhpcy5tbyA9IG1vLmN1cnJlbnRWYWx1ZTtcbiAgICAgICAgICAgIHRoaXMuX2Nkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgb25Wb3RlQ2hhbmdlKGlzUG9zaXRpdmU6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgY29uc3Qgdm90ZSA9IHRoaXMuX2NvbnRyb2xVaVBpcGUudHJhbnNmb3JtKGlzUG9zaXRpdmUgPyAn2KvYqNiqINix2KfbjCDZhdir2KjYqicgOiAn2KvYqNiqINix2KfbjCDZhdmG2YHbjCcsIHRoaXMubGF5b3V0OTQpO1xuICAgICAgICB2b3RlICYmIHZvdGU/LkZpZWxkVWkuZmlyZUV2ZW50KCdjbGljaycsIHZvdGUuRmllbGRVaSk7XG4gICAgfVxuICAgIHByb3RlY3RlZCByZWFkb25seSB0b29sYmFyID0gdG9vbGJhcjtcbn1cbiIsIjxkaXYgY2xhc3M9XCJ0dy1hYnNvbHV0ZSB0dy16LTAgdHctYmctd2hpdGUgdHctdy1zY3JlZW4gdHctdG9wLTAgdHctbGVmdC0wXCI+PC9kaXY+XG48ZGl2IGNsYXNzPVwidHctdy1mdWxsIHR3LXB5LTggdHctcmVsYXRpdmVcIj5cbiAgICA8ZGl2IGNsYXNzPVwidHctdy1mdWxsIHR3LW1heC13LVs4MHJlbV0gdHctbXgtYXV0byB0dy1ncmlkIHR3LWdyaWQtY29scy00IHR3LWdhcC0xMlwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwidHctY29sLXNwYW4tMyB0dy1mbGV4IHR3LWZsZXgtY29sIHR3LWdhcC04XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidHctZmxleCB0dy1nYXAtOCB0dy1wYi04XCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInR3LWdyb3ctMCB0dy1zaHJpbmstMCB0dy1mbGV4IHR3LWZsZXgtY29sIHR3LWl0ZW1zLWNlbnRlciB0dy1nYXAtNlwiPlxuICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vcGljc3VtLnBob3Rvcy82NC82NFwiIGNsYXNzPVwidHctc2l6ZS0xMiB0dy1yb3VuZGVkLWZ1bGxcIiAvPlxuICAgICAgICAgICAgICAgICAgICA8YnN1LWJhcnNhLXF1ZXN0aW9uLWFuc3dlci12b3RlLXNlY3Rpb25cbiAgICAgICAgICAgICAgICAgICAgICAgIFt2b3RlXT1cIm1vLlBvc3QuQ3VycmVudFVzZXJWb3RlLlZvdGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW3ZvdGVVcHNdPVwibW8uUG9zdC5Wb3RlVXBzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFt2b3RlRG93bnNdPVwibW8uUG9zdC5Wb3RlRG93bnNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKHZvdGVDaGFuZ2UpPVwib25Wb3RlQ2hhbmdlKCRldmVudClcIlxuICAgICAgICAgICAgICAgICAgICA+PC9ic3UtYmFyc2EtcXVlc3Rpb24tYW5zd2VyLXZvdGUtc2VjdGlvbj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidHctZ3JvdyB0dy1zaHJpbmtcIj5cbiAgICAgICAgICAgICAgICAgICAgPGJzdS1iYXJzYS1xdWVzdGlvbi1hbnN3ZXItY3JlYXRvci10aW1lLXNlY3Rpb25cbiAgICAgICAgICAgICAgICAgICAgICAgIFtwb3N0XT1cIm1vLlBvc3RcIlxuICAgICAgICAgICAgICAgICAgICA+PC9ic3UtYmFyc2EtcXVlc3Rpb24tYW5zd2VyLWNyZWF0b3ItdGltZS1zZWN0aW9uPlxuICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cInR3LXRleHQtMnhsIHR3LW10LTRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7IG1vLlRpdGxlIH19XG4gICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgPGJzdS1iYXJzYS1xdWVzdGlvbi1hbnN3ZXItY29udGVudC1hY3Rpb25zLXNlY3Rpb25cbiAgICAgICAgICAgICAgICAgICAgICAgIFttb109XCJtb1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYnV0dG9uc109XCJ0b29sYmFySXRlbXNcIlxuICAgICAgICAgICAgICAgICAgICA+PC9ic3UtYmFyc2EtcXVlc3Rpb24tYW5zd2VyLWNvbnRlbnQtYWN0aW9ucy1zZWN0aW9uPlxuICAgICAgICAgICAgICAgICAgICA8YnN1LWJhcnNhLXF1ZXN0aW9uLWFuc3dlci1jb21tZW50cy1zZWN0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICBbcG9zdF09XCJtby5Qb3N0XCJcbiAgICAgICAgICAgICAgICAgICAgPjwvYnN1LWJhcnNhLXF1ZXN0aW9uLWFuc3dlci1jb21tZW50cy1zZWN0aW9uPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8cCBjbGFzcz1cInR3LXotMTAgdHctdGV4dC0yeGwgdHctcGItNCB0dy1ib3JkZXItYiB0dy1ib3JkZXItZ3JheS0yMDAgdHctcmVsYXRpdmVcIj5cbiAgICAgICAgICAgICAgICB7eyBtby5BbnN3ZXJzLk1vRGF0YUxpc3QubGVuZ3RoIH19XG4gICAgICAgICAgICAgICAg2b7Yp9iz2K5cbiAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0dy1mbGV4IHR3LWZsZXgtY29sIHR3LWdhcC04IHR3LXotMTAgdHctcmVsYXRpdmVcIj5cbiAgICAgICAgICAgICAgICBAaWYgKG1vLkFuc3dlcnMuTW9EYXRhTGlzdC5sZW5ndGgpIHsgQGlmICgn2b7Yp9iz2K4g2YfYpycgfCBjb250cm9sVWk6IGxheW91dDk0OyBhcyBhbnN3ZXJzKSB7XG4gICAgICAgICAgICAgICAgPGJzdS1sYXlvdXQtY29udHJvbCBbY29uZmlnXT1cImFuc3dlcnNcIj48L2JzdS1sYXlvdXQtY29udHJvbD5cbiAgICAgICAgICAgICAgICB9IH1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInR3LWNvbC1zcGFuLTFcIj5cbiAgICAgICAgICAgIEBpZiAoJ9iz2YjYp9mE2KfYqiDZhdix2KrYqNi3JyB8IGNvbnRyb2xVaTogbGF5b3V0OTQ7IGFzIHJlbGV2YW50UXVlc3Rpb25zKSB7XG4gICAgICAgICAgICA8YnN1LWxheW91dC1jb250cm9sIFtjb25maWddPVwicmVsZXZhbnRRdWVzdGlvbnNcIj48L2JzdS1sYXlvdXQtY29udHJvbD5cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInR3LXctZnVsbCB0dy1tYXgtdy1bODByZW1dIHR3LW14LWF1dG8gdHctZ3JpZCB0dy1ncmlkLWNvbHMtNCB0dy1tdC00XCI+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgIGNsYXNzPVwidHctY29sLXNwYW4tNCB0dy1mbGV4IHR3LWZsZXgtY29sIHR3LWdhcC00IHR3LXAtNCBib3JkZXIgdHctYm9yZGVyLWdyYXktMjAwIHR3LXJvdW5kZWQtbWQgdHctYmctd2hpdGVcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cInR3LXRleHQteGxcIj7Yp9ix2LPYp9mEINm+2KfYs9iuPC9zcGFuPlxuICAgICAgICAgICAgQGlmICgn2b7Yp9iz2K4g2KzYr9uM2K8nIHwgY29udHJvbFVpOiBsYXlvdXQ5NDsgYXMgbmV3QW5zd2VyVGV4dCkge1xuICAgICAgICAgICAgPGJzdS1sYXlvdXQtY29udHJvbCBbY29uZmlnXT1cIm5ld0Fuc3dlclRleHRcIj48L2JzdS1sYXlvdXQtY29udHJvbD5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0dy1mbGV4IHR3LWp1c3RpZnktZW5kXCI+XG4gICAgICAgICAgICAgICAgQGlmICgn2KfYsdiz2KfZhCDZvtin2LPYriDYrNiv24zYrycgfCBjb250cm9sVWk6IGxheW91dDk0OyBhcyBuZXdBbnN3ZXJTdWJtaXQpIHtcbiAgICAgICAgICAgICAgICA8YnN1LWxheW91dC1jb250cm9sXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidHctdy1maXQgdHctbWluLXctZml0IHR3LW1heC13LWZpdFwiXG4gICAgICAgICAgICAgICAgICAgIFtjb25maWddPVwibmV3QW5zd2VyU3VibWl0XCJcbiAgICAgICAgICAgICAgICA+PC9ic3UtbGF5b3V0LWNvbnRyb2w+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { ChangeDetectorRef, Component, EventEmitter, inject, Input, Output } from '@angular/core';
|
|
2
|
+
import { BarsaApi } from 'barsa-novin-ray-core';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/forms";
|
|
5
|
+
import * as i2 from "@fundamental-ngx/core/link";
|
|
6
|
+
import * as i3 from "@fundamental-ngx/core/button";
|
|
7
|
+
export class BarsaQuestionAnswerFormAddCommentComponent {
|
|
8
|
+
constructor() {
|
|
9
|
+
this.addComment = new EventEmitter();
|
|
10
|
+
this._cdr = inject(ChangeDetectorRef);
|
|
11
|
+
this.newCommentText = '';
|
|
12
|
+
this.showAddCommentTextArea = false;
|
|
13
|
+
this.sending = false;
|
|
14
|
+
}
|
|
15
|
+
onAddComment() {
|
|
16
|
+
this.sending = true;
|
|
17
|
+
BarsaApi.Bw.RunBlMethodAsync({
|
|
18
|
+
Method: 'SabteNazar',
|
|
19
|
+
Parameters: [this.postId, this.newCommentText],
|
|
20
|
+
SuccessFn: (res) => {
|
|
21
|
+
this.addComment.emit(res);
|
|
22
|
+
this.sending = false;
|
|
23
|
+
this.showAddCommentTextArea = false;
|
|
24
|
+
this.newCommentText = '';
|
|
25
|
+
this._cdr.markForCheck();
|
|
26
|
+
},
|
|
27
|
+
FailedFn: () => {
|
|
28
|
+
this.sending = false;
|
|
29
|
+
this._cdr.markForCheck();
|
|
30
|
+
}
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: BarsaQuestionAnswerFormAddCommentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
34
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.5", type: BarsaQuestionAnswerFormAddCommentComponent, selector: "bsu-barsa-question-answer-form-add-comment", inputs: { postId: "postId" }, outputs: { addComment: "addComment" }, host: { classAttribute: "w-full" }, ngImport: i0, template: "@if (!showAddCommentTextArea) {\n<div class=\"tw-w-full tw-mt-2 tw-flex tw-gap-3\">\n <a\n fd-link\n aria-label=\"Emphasized\"\n class=\"hover:tw-cursor-pointer\"\n (click)=\"showAddCommentTextArea = true; newCommentText = ''\"\n >\u0627\u0631\u0633\u0627\u0644 \u0646\u0638\u0631</a\n >\n <ng-content></ng-content>\n</div>\n}\n<div [class.!flex]=\"showAddCommentTextArea\" class=\"tw-hidden tw-items-end tw-w-full tw-gap-4\">\n <textarea\n rows=\"3\"\n class=\"tw-block tw-p-2.5 tw-w-full tw-text-sm tw-text-gray-900 tw-bg-gray-50 tw-rounded-lg tw-border tw-border-gray-300\"\n placeholder=\"\u0646\u0638\u0631 \u0634\u0645\u0627...\"\n [disabled]=\"sending\"\n [(ngModel)]=\"newCommentText\"\n ></textarea>\n <div class=\"tw-flex tw-justify-end\">\n <button fd-button fdType=\"standard\" [disabled]=\"sending || newCommentText.length < 3\" (click)=\"onAddComment()\">\n \u0627\u0631\u0633\u0627\u0644\n </button>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2.LinkComponent, selector: "[fdLink], [fd-link]", inputs: ["class", "emphasized", "disabled", "inverted", "subtle", "undecorated"] }, { kind: "component", type: i3.ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }] }); }
|
|
35
|
+
}
|
|
36
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: BarsaQuestionAnswerFormAddCommentComponent, decorators: [{
|
|
37
|
+
type: Component,
|
|
38
|
+
args: [{ selector: 'bsu-barsa-question-answer-form-add-comment', host: {
|
|
39
|
+
class: 'w-full'
|
|
40
|
+
}, template: "@if (!showAddCommentTextArea) {\n<div class=\"tw-w-full tw-mt-2 tw-flex tw-gap-3\">\n <a\n fd-link\n aria-label=\"Emphasized\"\n class=\"hover:tw-cursor-pointer\"\n (click)=\"showAddCommentTextArea = true; newCommentText = ''\"\n >\u0627\u0631\u0633\u0627\u0644 \u0646\u0638\u0631</a\n >\n <ng-content></ng-content>\n</div>\n}\n<div [class.!flex]=\"showAddCommentTextArea\" class=\"tw-hidden tw-items-end tw-w-full tw-gap-4\">\n <textarea\n rows=\"3\"\n class=\"tw-block tw-p-2.5 tw-w-full tw-text-sm tw-text-gray-900 tw-bg-gray-50 tw-rounded-lg tw-border tw-border-gray-300\"\n placeholder=\"\u0646\u0638\u0631 \u0634\u0645\u0627...\"\n [disabled]=\"sending\"\n [(ngModel)]=\"newCommentText\"\n ></textarea>\n <div class=\"tw-flex tw-justify-end\">\n <button fd-button fdType=\"standard\" [disabled]=\"sending || newCommentText.length < 3\" (click)=\"onAddComment()\">\n \u0627\u0631\u0633\u0627\u0644\n </button>\n </div>\n</div>\n" }]
|
|
41
|
+
}], propDecorators: { postId: [{
|
|
42
|
+
type: Input
|
|
43
|
+
}], addComment: [{
|
|
44
|
+
type: Output
|
|
45
|
+
}] } });
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyc2EtcXVlc3Rpb24tYW5zd2VyLWZvcm0tYWRkLWNvbW1lbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvYmFyc2EtcXVlc3Rpb24tYW5zd2VyLWZvcm0tYWRkLWNvbW1lbnQvYmFyc2EtcXVlc3Rpb24tYW5zd2VyLWZvcm0tYWRkLWNvbW1lbnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvYmFyc2EtcXVlc3Rpb24tYW5zd2VyLWZvcm0tYWRkLWNvbW1lbnQvYmFyc2EtcXVlc3Rpb24tYW5zd2VyLWZvcm0tYWRkLWNvbW1lbnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEcsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7OztBQVVoRCxNQUFNLE9BQU8sMENBQTBDO0lBUnZEO1FBVWMsZUFBVSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFDdkMsU0FBSSxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQ3pDLG1CQUFjLEdBQUcsRUFBRSxDQUFDO1FBQ3BCLDJCQUFzQixHQUFHLEtBQUssQ0FBQztRQUMvQixZQUFPLEdBQUcsS0FBSyxDQUFDO0tBbUJuQjtJQWxCRyxZQUFZO1FBQ1IsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDcEIsUUFBUSxDQUFDLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztZQUN6QixNQUFNLEVBQUUsWUFBWTtZQUNwQixVQUFVLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUM7WUFDOUMsU0FBUyxFQUFFLENBQUMsR0FBRyxFQUFFLEVBQUU7Z0JBQ2YsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQzFCLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO2dCQUNyQixJQUFJLENBQUMsc0JBQXNCLEdBQUcsS0FBSyxDQUFDO2dCQUNwQyxJQUFJLENBQUMsY0FBYyxHQUFHLEVBQUUsQ0FBQztnQkFDekIsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUM3QixDQUFDO1lBQ0QsUUFBUSxFQUFFLEdBQUcsRUFBRTtnQkFDWCxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztnQkFDckIsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUM3QixDQUFDO1NBQ0osQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs4R0F4QlEsMENBQTBDO2tHQUExQywwQ0FBMEMsMkxDWHZELDJoQ0EwQkE7OzJGRGZhLDBDQUEwQztrQkFSdEQsU0FBUzsrQkFDSSw0Q0FBNEMsUUFHaEQ7d0JBQ0YsS0FBSyxFQUFFLFFBQVE7cUJBQ2xCOzhCQUdRLE1BQU07c0JBQWQsS0FBSztnQkFDSSxVQUFVO3NCQUFuQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBpbmplY3QsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJhcnNhQXBpIH0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2JzdS1iYXJzYS1xdWVzdGlvbi1hbnN3ZXItZm9ybS1hZGQtY29tbWVudCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2JhcnNhLXF1ZXN0aW9uLWFuc3dlci1mb3JtLWFkZC1jb21tZW50LmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9iYXJzYS1xdWVzdGlvbi1hbnN3ZXItZm9ybS1hZGQtY29tbWVudC5jb21wb25lbnQuY3NzJ10sXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ3ctZnVsbCdcbiAgICB9XG59KVxuZXhwb3J0IGNsYXNzIEJhcnNhUXVlc3Rpb25BbnN3ZXJGb3JtQWRkQ29tbWVudENvbXBvbmVudCB7XG4gICAgQElucHV0KCkgcG9zdElkOiBzdHJpbmc7XG4gICAgQE91dHB1dCgpIGFkZENvbW1lbnQgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgICBwcml2YXRlIF9jZHIgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuICAgIG5ld0NvbW1lbnRUZXh0ID0gJyc7XG4gICAgc2hvd0FkZENvbW1lbnRUZXh0QXJlYSA9IGZhbHNlO1xuICAgIHNlbmRpbmcgPSBmYWxzZTtcbiAgICBvbkFkZENvbW1lbnQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2VuZGluZyA9IHRydWU7XG4gICAgICAgIEJhcnNhQXBpLkJ3LlJ1bkJsTWV0aG9kQXN5bmMoe1xuICAgICAgICAgICAgTWV0aG9kOiAnU2FidGVOYXphcicsXG4gICAgICAgICAgICBQYXJhbWV0ZXJzOiBbdGhpcy5wb3N0SWQsIHRoaXMubmV3Q29tbWVudFRleHRdLFxuICAgICAgICAgICAgU3VjY2Vzc0ZuOiAocmVzKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5hZGRDb21tZW50LmVtaXQocmVzKTtcbiAgICAgICAgICAgICAgICB0aGlzLnNlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICB0aGlzLnNob3dBZGRDb21tZW50VGV4dEFyZWEgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICB0aGlzLm5ld0NvbW1lbnRUZXh0ID0gJyc7XG4gICAgICAgICAgICAgICAgdGhpcy5fY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIEZhaWxlZEZuOiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZW5kaW5nID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgdGhpcy5fY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG59XG4iLCJAaWYgKCFzaG93QWRkQ29tbWVudFRleHRBcmVhKSB7XG48ZGl2IGNsYXNzPVwidHctdy1mdWxsIHR3LW10LTIgdHctZmxleCB0dy1nYXAtM1wiPlxuICAgIDxhXG4gICAgICAgIGZkLWxpbmtcbiAgICAgICAgYXJpYS1sYWJlbD1cIkVtcGhhc2l6ZWRcIlxuICAgICAgICBjbGFzcz1cImhvdmVyOnR3LWN1cnNvci1wb2ludGVyXCJcbiAgICAgICAgKGNsaWNrKT1cInNob3dBZGRDb21tZW50VGV4dEFyZWEgPSB0cnVlOyBuZXdDb21tZW50VGV4dCA9ICcnXCJcbiAgICAgICAgPtin2LHYs9in2YQg2YbYuNixPC9hXG4gICAgPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvZGl2PlxufVxuPGRpdiBbY2xhc3MuIWZsZXhdPVwic2hvd0FkZENvbW1lbnRUZXh0QXJlYVwiIGNsYXNzPVwidHctaGlkZGVuIHR3LWl0ZW1zLWVuZCB0dy13LWZ1bGwgdHctZ2FwLTRcIj5cbiAgICA8dGV4dGFyZWFcbiAgICAgICAgcm93cz1cIjNcIlxuICAgICAgICBjbGFzcz1cInR3LWJsb2NrIHR3LXAtMi41IHR3LXctZnVsbCB0dy10ZXh0LXNtIHR3LXRleHQtZ3JheS05MDAgdHctYmctZ3JheS01MCB0dy1yb3VuZGVkLWxnIHR3LWJvcmRlciB0dy1ib3JkZXItZ3JheS0zMDBcIlxuICAgICAgICBwbGFjZWhvbGRlcj1cItmG2LjYsSDYtNmF2KcuLi5cIlxuICAgICAgICBbZGlzYWJsZWRdPVwic2VuZGluZ1wiXG4gICAgICAgIFsobmdNb2RlbCldPVwibmV3Q29tbWVudFRleHRcIlxuICAgID48L3RleHRhcmVhPlxuICAgIDxkaXYgY2xhc3M9XCJ0dy1mbGV4IHR3LWp1c3RpZnktZW5kXCI+XG4gICAgICAgIDxidXR0b24gZmQtYnV0dG9uIGZkVHlwZT1cInN0YW5kYXJkXCIgW2Rpc2FibGVkXT1cInNlbmRpbmcgfHwgbmV3Q29tbWVudFRleHQubGVuZ3RoIDwgM1wiIChjbGljayk9XCJvbkFkZENvbW1lbnQoKVwiPlxuICAgICAgICAgICAg2KfYsdiz2KfZhFxuICAgICAgICA8L2J1dHRvbj5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuIl19
|