barsa-develop-components 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-develop-components.mjs +4 -4
- package/esm2022/lib/accept-reject/accept-reject.component.mjs +68 -0
- package/esm2022/lib/avatar/avatar.component.mjs +29 -0
- package/esm2022/lib/barcode-format-pipe.mjs +24 -0
- package/esm2022/lib/barcode-reader/barcode-reader.component.mjs +62 -0
- package/esm2022/lib/barcode-reader-dialog/barcode-reader-dialog.component.mjs +82 -0
- package/esm2022/lib/barcode-reader-video/barcode-reader-video.component.mjs +66 -0
- package/esm2022/lib/barcode.service.mjs +330 -0
- package/{esm2020 → esm2022}/lib/barsa-develop-components.module.mjs +284 -284
- package/esm2022/lib/barsa-document-list-item/barsa-document-list-item.component.mjs +104 -0
- package/esm2022/lib/barsa-documents/barsa-documents.component.mjs +173 -0
- package/esm2022/lib/barsa-geographic-location/barsa-geographic-location.component.mjs +163 -0
- package/esm2022/lib/card-content-image-and-title/card-content-image-and-title.component.mjs +50 -0
- package/esm2022/lib/card-content-line-chart/card-content-line-chart.component.mjs +37 -0
- package/esm2022/lib/card-header-big-image-title-and-subtitle/card-header-big-image-title-and-subtitle.component.mjs +19 -0
- package/esm2022/lib/card-header-kpi/card-header-kpi.component.mjs +40 -0
- package/esm2022/lib/card-header-logo-title-subtitle/card-header-logo-title-subtitle.component.mjs +45 -0
- package/{esm2020 → esm2022}/lib/checkbox-button/checkbox-button.component.mjs +23 -23
- package/esm2022/lib/column-form-viewer/column-form-viewer.component.mjs +88 -0
- package/{esm2020 → esm2022}/lib/enum-info-micro-proccess-flow/enum-info-micro-proccess-flow.component.mjs +18 -18
- package/esm2022/lib/footer/footer.component.mjs +43 -0
- package/esm2022/lib/form-card/form-card.component.mjs +17 -0
- package/esm2022/lib/form-chart-content/form-chart-content.component.mjs +37 -0
- package/esm2022/lib/form-content-quick-view/form-content-quick-view.component.mjs +102 -0
- package/esm2022/lib/form-report-view/form-report-view.component.mjs +25 -0
- package/esm2022/lib/form-report-view-item/form-report-view-item.component.mjs +45 -0
- package/{esm2020 → esm2022}/lib/g4b-details/g4b-details.component.mjs +28 -28
- package/esm2022/lib/g4b-estelam/g4b-estelam.component.mjs +30 -0
- package/esm2022/lib/geographic-location/geographic-location.component.mjs +85 -0
- package/esm2022/lib/login-form/login-form.component.mjs +55 -0
- package/{esm2020 → esm2022}/lib/login-social-conncetions/login-social-conncetions.component.mjs +30 -30
- package/esm2022/lib/master-detail-card-form/master-detail-card-form.component.mjs +17 -0
- package/esm2022/lib/media-file-uploader/media-file-uploader.component.mjs +238 -0
- package/esm2022/lib/micro-proccess-flow/micro-proccess-flow.component.mjs +52 -0
- package/esm2022/lib/micro-process-flow-view/micro-process-flow-view.component.mjs +24 -0
- package/esm2022/lib/mo-info-micro-proccess-flow/mo-info-micro-proccess-flow.component.mjs +23 -0
- package/esm2022/lib/models/document-item.mjs +2 -0
- package/esm2022/lib/models/documents-setting.mjs +2 -0
- package/{esm2020 → esm2022}/lib/models/form-report-view-setting.mjs +2 -2
- package/{esm2020 → esm2022}/lib/models/index.mjs +8 -8
- package/{esm2020 → esm2022}/lib/models/micro-process-flow-view-setting.mjs +2 -2
- package/{esm2020 → esm2022}/lib/models/person.mjs +1 -1
- package/{esm2020 → esm2022}/lib/models/service-desk-view-of-services-setting.mjs +2 -2
- package/{esm2020 → esm2022}/lib/models/tab-process-view-setting.mjs +2 -2
- package/{esm2020 → esm2022}/lib/pipes/datasource-to-flow-item.mjs +22 -22
- package/{esm2020 → esm2022}/lib/pipes/index.mjs +2 -2
- package/{esm2020 → esm2022}/lib/pipes/mo-list-to-flow-item.pipe.mjs +22 -22
- package/esm2022/lib/query-string-form-observable/query-string-form-observable.component.mjs +37 -0
- package/esm2022/lib/query-string-observable/query-string-observable.component.mjs +22 -0
- package/esm2022/lib/report-button-view/report-button-view.component.mjs +37 -0
- package/{esm2020 → esm2022}/lib/report-line-chart-view/report-line-chart-view.component.mjs +13 -13
- package/esm2022/lib/report-tab-view/report-tab-view.component.mjs +27 -0
- package/esm2022/lib/resend-verification-code/resend-verification-code.component.mjs +62 -0
- package/{esm2020 → esm2022}/lib/service-desk-card-content-mojavezhay-akhz-shode/service-desk-card-content-mojavezhay-akhz-shode.component.mjs +28 -28
- package/esm2022/lib/service-desk-form-layout-content-mojavez/service-desk-form-layout-content-mojavez.component.mjs +110 -0
- package/esm2022/lib/service-desk-header/service-desk-header.component.mjs +240 -0
- package/esm2022/lib/service-desk-servcie-detail/service-desk-servcie-detail.component.mjs +142 -0
- package/esm2022/lib/service-desk-view-of-services/service-desk-view-of-services.component.mjs +37 -0
- package/esm2022/lib/setting-form/setting-form.component.mjs +64 -0
- package/esm2022/lib/subform-in-row-report/subform-in-row-report.component.mjs +73 -0
- package/esm2022/lib/tab-process-view/tab-process-view.component.mjs +48 -0
- package/esm2022/lib/table-view-vertical-columns/table-view-vertical-columns.component.mjs +16 -0
- package/esm2022/lib/timer-count-down/timer-count-down.component.mjs +98 -0
- package/esm2022/lib/token-report-view/token-report-view.component.mjs +27 -0
- package/esm2022/lib/ui-enum-segmented-button/ui-enum-segmented-button.component.mjs +25 -0
- package/esm2022/lib/ui-num-rate/ui-num-rate.component.mjs +29 -0
- package/esm2022/lib/ui-person/ui-person.component.mjs +160 -0
- package/esm2022/lib/ui-person/ui-person.pipe.mjs +40 -0
- package/esm2022/lib/ui-pictures-carousel/ui-pictures-carousel.component.mjs +17 -0
- package/esm2022/lib/ui-text-field-search/ui-text-field-search.component.mjs +42 -0
- package/esm2022/lib/ulv-context-menu-item-show-file-content/ulv-context-menu-item-show-file-content.component.mjs +69 -0
- package/{esm2020 → esm2022}/public-api.mjs +62 -62
- package/fesm2022/barsa-develop-components.mjs +3626 -0
- package/fesm2022/barsa-develop-components.mjs.map +1 -0
- package/index.d.ts +5 -5
- package/lib/accept-reject/accept-reject.component.d.ts +28 -28
- package/lib/avatar/avatar.component.d.ts +12 -12
- package/lib/barcode-format-pipe.d.ts +7 -7
- package/lib/barcode-reader/barcode-reader.component.d.ts +19 -19
- package/lib/barcode-reader-dialog/barcode-reader-dialog.component.d.ts +32 -32
- package/lib/barcode-reader-video/barcode-reader-video.component.d.ts +22 -22
- package/lib/barcode.service.d.ts +98 -98
- package/lib/barsa-develop-components.module.d.ts +117 -117
- package/lib/barsa-document-list-item/barsa-document-list-item.component.d.ts +39 -39
- package/lib/barsa-documents/barsa-documents.component.d.ts +47 -47
- package/lib/barsa-geographic-location/barsa-geographic-location.component.d.ts +45 -46
- package/lib/card-content-image-and-title/card-content-image-and-title.component.d.ts +18 -18
- package/lib/card-content-line-chart/card-content-line-chart.component.d.ts +9 -9
- package/lib/card-header-big-image-title-and-subtitle/card-header-big-image-title-and-subtitle.component.d.ts +6 -6
- package/lib/card-header-kpi/card-header-kpi.component.d.ts +14 -14
- package/lib/card-header-logo-title-subtitle/card-header-logo-title-subtitle.component.d.ts +23 -23
- package/lib/checkbox-button/checkbox-button.component.d.ts +13 -13
- package/lib/column-form-viewer/column-form-viewer.component.d.ts +30 -30
- package/lib/enum-info-micro-proccess-flow/enum-info-micro-proccess-flow.component.d.ts +8 -8
- package/lib/footer/footer.component.d.ts +15 -15
- package/lib/form-card/form-card.component.d.ts +8 -8
- package/lib/form-chart-content/form-chart-content.component.d.ts +9 -9
- package/lib/form-content-quick-view/form-content-quick-view.component.d.ts +18 -18
- package/lib/form-report-view/form-report-view.component.d.ts +13 -13
- package/lib/form-report-view-item/form-report-view-item.component.d.ts +15 -15
- package/lib/g4b-details/g4b-details.component.d.ts +9 -9
- package/lib/g4b-estelam/g4b-estelam.component.d.ts +11 -11
- package/lib/geographic-location/geographic-location.component.d.ts +33 -34
- package/lib/login-form/login-form.component.d.ts +12 -12
- package/lib/login-social-conncetions/login-social-conncetions.component.d.ts +12 -12
- package/lib/master-detail-card-form/master-detail-card-form.component.d.ts +8 -8
- package/lib/media-file-uploader/media-file-uploader.component.d.ts +52 -52
- package/lib/micro-proccess-flow/micro-proccess-flow.component.d.ts +28 -28
- package/lib/micro-process-flow-view/micro-process-flow-view.component.d.ts +14 -14
- package/lib/mo-info-micro-proccess-flow/mo-info-micro-proccess-flow.component.d.ts +9 -9
- package/lib/models/document-item.d.ts +19 -19
- package/lib/models/documents-setting.d.ts +11 -11
- package/lib/models/form-report-view-setting.d.ts +7 -7
- package/lib/models/index.d.ts +7 -7
- package/lib/models/micro-process-flow-view-setting.d.ts +8 -8
- package/lib/models/person.d.ts +10 -10
- package/lib/models/service-desk-view-of-services-setting.d.ts +6 -6
- package/lib/models/tab-process-view-setting.d.ts +7 -7
- package/lib/pipes/datasource-to-flow-item.d.ts +10 -10
- package/lib/pipes/index.d.ts +2 -2
- package/lib/pipes/mo-list-to-flow-item.pipe.d.ts +10 -10
- package/lib/query-string-form-observable/query-string-form-observable.component.d.ts +13 -13
- package/lib/query-string-observable/query-string-observable.component.d.ts +9 -9
- package/lib/report-button-view/report-button-view.component.d.ts +12 -12
- package/lib/report-line-chart-view/report-line-chart-view.component.d.ts +7 -7
- package/lib/report-tab-view/report-tab-view.component.d.ts +15 -15
- package/lib/resend-verification-code/resend-verification-code.component.d.ts +19 -18
- package/lib/service-desk-card-content-mojavezhay-akhz-shode/service-desk-card-content-mojavezhay-akhz-shode.component.d.ts +15 -15
- package/lib/service-desk-form-layout-content-mojavez/service-desk-form-layout-content-mojavez.component.d.ts +26 -26
- package/lib/service-desk-header/service-desk-header.component.d.ts +63 -63
- package/lib/service-desk-servcie-detail/service-desk-servcie-detail.component.d.ts +39 -39
- package/lib/service-desk-view-of-services/service-desk-view-of-services.component.d.ts +16 -16
- package/lib/setting-form/setting-form.component.d.ts +20 -20
- package/lib/subform-in-row-report/subform-in-row-report.component.d.ts +22 -21
- package/lib/tab-process-view/tab-process-view.component.d.ts +20 -20
- package/lib/table-view-vertical-columns/table-view-vertical-columns.component.d.ts +6 -6
- package/lib/timer-count-down/timer-count-down.component.d.ts +15 -15
- package/lib/token-report-view/token-report-view.component.d.ts +15 -15
- package/lib/ui-enum-segmented-button/ui-enum-segmented-button.component.d.ts +9 -9
- package/lib/ui-num-rate/ui-num-rate.component.d.ts +9 -9
- package/lib/ui-person/ui-person.component.d.ts +31 -31
- package/lib/ui-person/ui-person.pipe.d.ts +7 -7
- package/lib/ui-pictures-carousel/ui-pictures-carousel.component.d.ts +6 -6
- package/lib/ui-text-field-search/ui-text-field-search.component.d.ts +17 -17
- package/lib/ulv-context-menu-item-show-file-content/ulv-context-menu-item-show-file-content.component.d.ts +25 -25
- package/package.json +7 -13
- package/public-api.d.ts +58 -58
- package/esm2020/lib/accept-reject/accept-reject.component.mjs +0 -69
- package/esm2020/lib/avatar/avatar.component.mjs +0 -29
- package/esm2020/lib/barcode-format-pipe.mjs +0 -24
- package/esm2020/lib/barcode-reader/barcode-reader.component.mjs +0 -62
- package/esm2020/lib/barcode-reader-dialog/barcode-reader-dialog.component.mjs +0 -82
- package/esm2020/lib/barcode-reader-video/barcode-reader-video.component.mjs +0 -66
- package/esm2020/lib/barcode.service.mjs +0 -330
- package/esm2020/lib/barsa-document-list-item/barsa-document-list-item.component.mjs +0 -104
- package/esm2020/lib/barsa-documents/barsa-documents.component.mjs +0 -173
- package/esm2020/lib/barsa-geographic-location/barsa-geographic-location.component.mjs +0 -174
- package/esm2020/lib/card-content-image-and-title/card-content-image-and-title.component.mjs +0 -51
- package/esm2020/lib/card-content-line-chart/card-content-line-chart.component.mjs +0 -38
- package/esm2020/lib/card-header-big-image-title-and-subtitle/card-header-big-image-title-and-subtitle.component.mjs +0 -20
- package/esm2020/lib/card-header-kpi/card-header-kpi.component.mjs +0 -41
- package/esm2020/lib/card-header-logo-title-subtitle/card-header-logo-title-subtitle.component.mjs +0 -46
- package/esm2020/lib/column-form-viewer/column-form-viewer.component.mjs +0 -88
- package/esm2020/lib/footer/footer.component.mjs +0 -44
- package/esm2020/lib/form-card/form-card.component.mjs +0 -18
- package/esm2020/lib/form-chart-content/form-chart-content.component.mjs +0 -38
- package/esm2020/lib/form-content-quick-view/form-content-quick-view.component.mjs +0 -102
- package/esm2020/lib/form-report-view/form-report-view.component.mjs +0 -26
- package/esm2020/lib/form-report-view-item/form-report-view-item.component.mjs +0 -45
- package/esm2020/lib/g4b-estelam/g4b-estelam.component.mjs +0 -30
- package/esm2020/lib/geographic-location/geographic-location.component.mjs +0 -88
- package/esm2020/lib/login-form/login-form.component.mjs +0 -55
- package/esm2020/lib/master-detail-card-form/master-detail-card-form.component.mjs +0 -17
- package/esm2020/lib/media-file-uploader/media-file-uploader.component.mjs +0 -238
- package/esm2020/lib/micro-proccess-flow/micro-proccess-flow.component.mjs +0 -53
- package/esm2020/lib/micro-process-flow-view/micro-process-flow-view.component.mjs +0 -24
- package/esm2020/lib/mo-info-micro-proccess-flow/mo-info-micro-proccess-flow.component.mjs +0 -23
- package/esm2020/lib/models/document-item.mjs +0 -2
- package/esm2020/lib/models/documents-setting.mjs +0 -2
- package/esm2020/lib/query-string-form-observable/query-string-form-observable.component.mjs +0 -37
- package/esm2020/lib/query-string-observable/query-string-observable.component.mjs +0 -22
- package/esm2020/lib/report-button-view/report-button-view.component.mjs +0 -38
- package/esm2020/lib/report-tab-view/report-tab-view.component.mjs +0 -28
- package/esm2020/lib/resend-verification-code/resend-verification-code.component.mjs +0 -59
- package/esm2020/lib/service-desk-form-layout-content-mojavez/service-desk-form-layout-content-mojavez.component.mjs +0 -110
- package/esm2020/lib/service-desk-header/service-desk-header.component.mjs +0 -236
- package/esm2020/lib/service-desk-servcie-detail/service-desk-servcie-detail.component.mjs +0 -142
- package/esm2020/lib/service-desk-view-of-services/service-desk-view-of-services.component.mjs +0 -37
- package/esm2020/lib/setting-form/setting-form.component.mjs +0 -64
- package/esm2020/lib/subform-in-row-report/subform-in-row-report.component.mjs +0 -65
- package/esm2020/lib/tab-process-view/tab-process-view.component.mjs +0 -49
- package/esm2020/lib/table-view-vertical-columns/table-view-vertical-columns.component.mjs +0 -16
- package/esm2020/lib/timer-count-down/timer-count-down.component.mjs +0 -98
- package/esm2020/lib/token-report-view/token-report-view.component.mjs +0 -27
- package/esm2020/lib/ui-enum-segmented-button/ui-enum-segmented-button.component.mjs +0 -25
- package/esm2020/lib/ui-num-rate/ui-num-rate.component.mjs +0 -29
- package/esm2020/lib/ui-person/ui-person.component.mjs +0 -160
- package/esm2020/lib/ui-person/ui-person.pipe.mjs +0 -40
- package/esm2020/lib/ui-pictures-carousel/ui-pictures-carousel.component.mjs +0 -17
- package/esm2020/lib/ui-text-field-search/ui-text-field-search.component.mjs +0 -42
- package/esm2020/lib/ulv-context-menu-item-show-file-content/ulv-context-menu-item-show-file-content.component.mjs +0 -70
- package/fesm2015/barsa-develop-components.mjs +0 -3660
- package/fesm2015/barsa-develop-components.mjs.map +0 -1
- package/fesm2020/barsa-develop-components.mjs +0 -3625
- package/fesm2020/barsa-develop-components.mjs.map +0 -1
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { Component, ChangeDetectionStrategy } from '@angular/core';
|
|
2
|
+
import { ReportViewBaseComponent } from 'barsa-novin-ray-core';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/common";
|
|
5
|
+
import * as i2 from "barsa-novin-ray-core";
|
|
6
|
+
import * as i3 from "barsa-sap-ui";
|
|
7
|
+
import * as i4 from "@fundamental-ngx/core/button";
|
|
8
|
+
import * as i5 from "@fundamental-ngx/core/icon";
|
|
9
|
+
import * as i6 from "@fundamental-ngx/core/layout-grid";
|
|
10
|
+
import * as i7 from "@fundamental-ngx/core/title";
|
|
11
|
+
export class ServiceDeskViewOfServicesComponent extends ReportViewBaseComponent {
|
|
12
|
+
ngOnInit() {
|
|
13
|
+
super.ngOnInit();
|
|
14
|
+
this.fieldIcon = this.viewSetting.FieldIcon;
|
|
15
|
+
this.fieldTitle = this.viewSetting.FieldTitle;
|
|
16
|
+
this.fieldDynamicCommand = this.viewSetting.FieldDynamicCommand;
|
|
17
|
+
this.contextMenuItems?.forEach((c) => {
|
|
18
|
+
const parameters = c.Command.CustomUi?.Parameters;
|
|
19
|
+
if (parameters) {
|
|
20
|
+
// parameters.OnlyIcon = true;
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
onRowClick2(e, dynamicCommand) {
|
|
25
|
+
if (dynamicCommand) {
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
super.onRowClick(e);
|
|
29
|
+
}
|
|
30
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: ServiceDeskViewOfServicesComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
31
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.5", type: ServiceDeskViewOfServicesComponent, selector: "bdc-service-desk-view-of-services", usesInheritance: true, ngImport: i0, template: "<div class=\"services\">\r\n <div class=\"service-list\">\r\n <fd-layout-grid>\r\n <div fdLayoutGridRow>\r\n @for (mo of moDataList | multipleGroupBy: groupby; track mo; let i = $index) { @if (mo.$Group ||\r\n mo.$Group === '') {\r\n <div [fdLayoutGridCol]=\"12\">\r\n <h3\r\n fd-title\r\n style=\"\r\n padding: 0 0 0.4rem 0;\r\n border-bottom: var(--sapList_BorderWidth) solid var(--sapList_BorderColor);\r\n \"\r\n >\r\n {{ mo.$Group }}\r\n </h3>\r\n </div>\r\n } @if (!mo.$Group) {\r\n <div [fdLayoutGridCol]=\"12\" [colSm]=\"12\" [colMd]=\"3\" [colLg]=\"3\" [colXl]=\"3\">\r\n <div class=\"item\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicCommand;\r\n context: {\r\n $implicit: mo,\r\n index: i,\r\n dynCommand: fieldDynamicCommand | rval: mo:allColumns,\r\n title: fieldTitle | rval: mo:allColumns | bbbTranslate\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n </div>\r\n } }\r\n </div>\r\n </fd-layout-grid>\r\n </div>\r\n</div>\r\n<ng-template #dynamicCommand let-mo let-index=\"index\" let-dynCommand=\"dynCommand\" let-title=\"title\">\r\n <button\r\n fd-button\r\n [dynCommand]=\"dynCommand\"\r\n [mo]=\"mo\"\r\n [enableCommand]=\"dynCommand\"\r\n style=\"width: 100%; max-height: 2.3rem; height: 2.3rem; border-radius: 0\"\r\n [fdType]=\"'emphasized'\"\r\n (click)=\"onRowClick2({ mo, index },dynCommand)\"\r\n [title]=\"title\"\r\n >\r\n <span class=\"item-icon\">\r\n <fd-icon glyph=\"product\"></fd-icon>\r\n </span>\r\n <span class=\"item-content\"> {{ title }}</span>\r\n <span class=\"item-icon-arrow\">\r\n @if (fieldIcon) {\r\n <fd-icon [glyph]=\"fieldIcon\"></fd-icon>\r\n }\r\n </span>\r\n </button>\r\n <div style=\"padding: 10px; border-top: 1px solid #ccc\">\r\n <bsu-ulv-context-menu\r\n [disableOverflowContextMenu]=\"true\"\r\n [mo]=\"mo\"\r\n [index]=\"index\"\r\n [styleIndex]=\"mo.$StyleIndex\"\r\n [menuItems]=\"contextMenuItems\"\r\n [allColumns]=\"allColumns\"\r\n (commandClick)=\"this.ulvCommandClick.emit({ mo, index })\"\r\n ></bsu-ulv-context-menu>\r\n </div>\r\n</ng-template>\r\n", styles: [":host .b-b{padding-right:5px;padding-top:5px}bsu-ulv-context-menu{flex-wrap:wrap;row-gap:5px}.item{position:relative;border:1px solid #ccc}.item a{background:#0078d7;cursor:pointer;display:flex;padding:10px 5px;flex-direction:column;cursor:pointer!important}.item a:hover{background:#67b4f3}fd-icon{font-size:1.25rem;color:#fff}.item .item-content{color:#fff;margin-left:35px;margin-right:25px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;position:relative}.item .item-icon{position:absolute;right:5px;top:5px}.item .item-icon-arrow{position:absolute;left:16px;top:9px}.item .item-icon-arrow fd-icon{font-size:1rem;color:#fff}.exe_cell{margin-top:10px;padding:0 5px}.service-list{margin-top:20px}.exe_cell:nth-child(1),.exe_cell:nth-child(2),.exe_cell:nth-child(3),.exe_cell:nth-child(4){margin-top:10px}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.DynamicCommandDirective, selector: "[dynCommand]", inputs: ["dynCommand", "mo", "enableCommand"], outputs: ["commandClick"] }, { kind: "component", type: i3.UlvContextMenuComponent, selector: "bsu-ulv-context-menu,[ulvContextMenu]", inputs: ["onlyOverflow", "deviceName", "menuItems", "allColumns", "index", "mo", "styleIndex", "conditionalFormats", "disableOverflowContextMenu", "footerMode"], outputs: ["commandClick"] }, { kind: "component", type: i4.ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i5.IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "color", "background", "class", "ariaLabel", "ariaHidden"] }, { kind: "component", type: i6.LayoutGridComponent, selector: "fd-layout-grid, [fdLayoutGrid]", inputs: ["class", "noGap", "noHorizontalGap", "noVerticalGap"] }, { kind: "directive", type: i6.LayoutGridColDirective, selector: "[fd-layout-grid-col], [fdLayoutGridCol]", inputs: ["fdLayoutGridCol", "colGrow", "colMd", "colLg", "colXl", "colOffset", "colOffsetMd", "colOffsetLg", "colOffsetXl", "class"] }, { kind: "directive", type: i6.LayoutGridRowDirective, selector: "[fd-layout-grid-row], [fdLayoutGridRow]" }, { kind: "component", type: i7.TitleComponent, selector: "[fd-title], [fdTitle]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "pipe", type: i2.MultipleGroupByPipe, name: "multipleGroupBy" }, { kind: "pipe", type: i2.MoReportValuePipe, name: "rval" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
32
|
+
}
|
|
33
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: ServiceDeskViewOfServicesComponent, decorators: [{
|
|
34
|
+
type: Component,
|
|
35
|
+
args: [{ selector: 'bdc-service-desk-view-of-services', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"services\">\r\n <div class=\"service-list\">\r\n <fd-layout-grid>\r\n <div fdLayoutGridRow>\r\n @for (mo of moDataList | multipleGroupBy: groupby; track mo; let i = $index) { @if (mo.$Group ||\r\n mo.$Group === '') {\r\n <div [fdLayoutGridCol]=\"12\">\r\n <h3\r\n fd-title\r\n style=\"\r\n padding: 0 0 0.4rem 0;\r\n border-bottom: var(--sapList_BorderWidth) solid var(--sapList_BorderColor);\r\n \"\r\n >\r\n {{ mo.$Group }}\r\n </h3>\r\n </div>\r\n } @if (!mo.$Group) {\r\n <div [fdLayoutGridCol]=\"12\" [colSm]=\"12\" [colMd]=\"3\" [colLg]=\"3\" [colXl]=\"3\">\r\n <div class=\"item\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicCommand;\r\n context: {\r\n $implicit: mo,\r\n index: i,\r\n dynCommand: fieldDynamicCommand | rval: mo:allColumns,\r\n title: fieldTitle | rval: mo:allColumns | bbbTranslate\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n </div>\r\n } }\r\n </div>\r\n </fd-layout-grid>\r\n </div>\r\n</div>\r\n<ng-template #dynamicCommand let-mo let-index=\"index\" let-dynCommand=\"dynCommand\" let-title=\"title\">\r\n <button\r\n fd-button\r\n [dynCommand]=\"dynCommand\"\r\n [mo]=\"mo\"\r\n [enableCommand]=\"dynCommand\"\r\n style=\"width: 100%; max-height: 2.3rem; height: 2.3rem; border-radius: 0\"\r\n [fdType]=\"'emphasized'\"\r\n (click)=\"onRowClick2({ mo, index },dynCommand)\"\r\n [title]=\"title\"\r\n >\r\n <span class=\"item-icon\">\r\n <fd-icon glyph=\"product\"></fd-icon>\r\n </span>\r\n <span class=\"item-content\"> {{ title }}</span>\r\n <span class=\"item-icon-arrow\">\r\n @if (fieldIcon) {\r\n <fd-icon [glyph]=\"fieldIcon\"></fd-icon>\r\n }\r\n </span>\r\n </button>\r\n <div style=\"padding: 10px; border-top: 1px solid #ccc\">\r\n <bsu-ulv-context-menu\r\n [disableOverflowContextMenu]=\"true\"\r\n [mo]=\"mo\"\r\n [index]=\"index\"\r\n [styleIndex]=\"mo.$StyleIndex\"\r\n [menuItems]=\"contextMenuItems\"\r\n [allColumns]=\"allColumns\"\r\n (commandClick)=\"this.ulvCommandClick.emit({ mo, index })\"\r\n ></bsu-ulv-context-menu>\r\n </div>\r\n</ng-template>\r\n", styles: [":host .b-b{padding-right:5px;padding-top:5px}bsu-ulv-context-menu{flex-wrap:wrap;row-gap:5px}.item{position:relative;border:1px solid #ccc}.item a{background:#0078d7;cursor:pointer;display:flex;padding:10px 5px;flex-direction:column;cursor:pointer!important}.item a:hover{background:#67b4f3}fd-icon{font-size:1.25rem;color:#fff}.item .item-content{color:#fff;margin-left:35px;margin-right:25px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;position:relative}.item .item-icon{position:absolute;right:5px;top:5px}.item .item-icon-arrow{position:absolute;left:16px;top:9px}.item .item-icon-arrow fd-icon{font-size:1rem;color:#fff}.exe_cell{margin-top:10px;padding:0 5px}.service-list{margin-top:20px}.exe_cell:nth-child(1),.exe_cell:nth-child(2),.exe_cell:nth-child(3),.exe_cell:nth-child(4){margin-top:10px}\n"] }]
|
|
36
|
+
}] });
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1kZXNrLXZpZXctb2Ytc2VydmljZXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2EtZGV2ZWxvcC1jb21wb25lbnRzL3NyYy9saWIvc2VydmljZS1kZXNrLXZpZXctb2Ytc2VydmljZXMvc2VydmljZS1kZXNrLXZpZXctb2Ytc2VydmljZXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2EtZGV2ZWxvcC1jb21wb25lbnRzL3NyYy9saWIvc2VydmljZS1kZXNrLXZpZXctb2Ytc2VydmljZXMvc2VydmljZS1kZXNrLXZpZXctb2Ytc2VydmljZXMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSx1QkFBdUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQXVCLHVCQUF1QixFQUFFLE1BQU0sc0JBQXNCLENBQUM7Ozs7Ozs7OztBQVNwRixNQUFNLE9BQU8sa0NBQ1QsU0FBUSx1QkFBeUQ7SUFNakUsUUFBUTtRQUNKLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDO1FBQzVDLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUM7UUFDOUMsSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsbUJBQW1CLENBQUM7UUFDaEUsSUFBSSxDQUFDLGdCQUFnQixFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ2pDLE1BQU0sVUFBVSxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQztZQUNsRCxJQUFJLFVBQVUsRUFBRSxDQUFDO2dCQUNiLDhCQUE4QjtZQUNsQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBQ0QsV0FBVyxDQUFDLENBQTZDLEVBQUUsY0FBbUI7UUFDMUUsSUFBSSxjQUFjLEVBQUUsQ0FBQztZQUNqQixPQUFPO1FBQ1gsQ0FBQztRQUNELEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDeEIsQ0FBQzs4R0F4QlEsa0NBQWtDO2tHQUFsQyxrQ0FBa0MsZ0dDVi9DLG84RkF1RUE7OzJGRDdEYSxrQ0FBa0M7a0JBTjlDLFNBQVM7K0JBQ0ksbUNBQW1DLG1CQUc1Qix1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1ldGFvYmplY3REYXRhTW9kZWwsIFJlcG9ydFZpZXdCYXNlQ29tcG9uZW50IH0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xyXG5pbXBvcnQgeyBTZXJ2aWNlRGVza1ZpZXdPZlNlcnZpY2VzU2V0dGluZyB9IGZyb20gJy4uL21vZGVscyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnYmRjLXNlcnZpY2UtZGVzay12aWV3LW9mLXNlcnZpY2VzJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9zZXJ2aWNlLWRlc2stdmlldy1vZi1zZXJ2aWNlcy5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi9zZXJ2aWNlLWRlc2stdmlldy1vZi1zZXJ2aWNlcy5jb21wb25lbnQuc2NzcyddLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIFNlcnZpY2VEZXNrVmlld09mU2VydmljZXNDb21wb25lbnRcclxuICAgIGV4dGVuZHMgUmVwb3J0Vmlld0Jhc2VDb21wb25lbnQ8U2VydmljZURlc2tWaWV3T2ZTZXJ2aWNlc1NldHRpbmc+XHJcbiAgICBpbXBsZW1lbnRzIE9uSW5pdFxyXG57XHJcbiAgICBmaWVsZEljb246IHN0cmluZztcclxuICAgIGZpZWxkVGl0bGU6IHN0cmluZztcclxuICAgIGZpZWxkRHluYW1pY0NvbW1hbmQ6IHN0cmluZztcclxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XHJcbiAgICAgICAgdGhpcy5maWVsZEljb24gPSB0aGlzLnZpZXdTZXR0aW5nLkZpZWxkSWNvbjtcclxuICAgICAgICB0aGlzLmZpZWxkVGl0bGUgPSB0aGlzLnZpZXdTZXR0aW5nLkZpZWxkVGl0bGU7XHJcbiAgICAgICAgdGhpcy5maWVsZER5bmFtaWNDb21tYW5kID0gdGhpcy52aWV3U2V0dGluZy5GaWVsZER5bmFtaWNDb21tYW5kO1xyXG4gICAgICAgIHRoaXMuY29udGV4dE1lbnVJdGVtcz8uZm9yRWFjaCgoYykgPT4ge1xyXG4gICAgICAgICAgICBjb25zdCBwYXJhbWV0ZXJzID0gYy5Db21tYW5kLkN1c3RvbVVpPy5QYXJhbWV0ZXJzO1xyXG4gICAgICAgICAgICBpZiAocGFyYW1ldGVycykge1xyXG4gICAgICAgICAgICAgICAgLy8gcGFyYW1ldGVycy5Pbmx5SWNvbiA9IHRydWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgIH1cclxuICAgIG9uUm93Q2xpY2syKGU6IHsgbW86IE1ldGFvYmplY3REYXRhTW9kZWw7IGluZGV4OiBudW1iZXIgfSwgZHluYW1pY0NvbW1hbmQ6IGFueSk6IHZvaWQge1xyXG4gICAgICAgIGlmIChkeW5hbWljQ29tbWFuZCkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHN1cGVyLm9uUm93Q2xpY2soZSk7XHJcbiAgICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInNlcnZpY2VzXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwic2VydmljZS1saXN0XCI+XHJcbiAgICAgICAgPGZkLWxheW91dC1ncmlkPlxyXG4gICAgICAgICAgICA8ZGl2IGZkTGF5b3V0R3JpZFJvdz5cclxuICAgICAgICAgICAgICAgIEBmb3IgKG1vIG9mIG1vRGF0YUxpc3QgfCBtdWx0aXBsZUdyb3VwQnk6IGdyb3VwYnk7IHRyYWNrIG1vOyBsZXQgaSA9ICRpbmRleCkgeyBAaWYgKG1vLiRHcm91cCB8fFxyXG4gICAgICAgICAgICAgICAgbW8uJEdyb3VwID09PSAnJykge1xyXG4gICAgICAgICAgICAgICAgPGRpdiBbZmRMYXlvdXRHcmlkQ29sXT1cIjEyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGgzXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZkLXRpdGxlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAgMC40cmVtIDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiB2YXIoLS1zYXBMaXN0X0JvcmRlcldpZHRoKSBzb2xpZCB2YXIoLS1zYXBMaXN0X0JvcmRlckNvbG9yKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgXCJcclxuICAgICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHt7IG1vLiRHcm91cCB9fVxyXG4gICAgICAgICAgICAgICAgICAgIDwvaDM+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIH0gQGlmICghbW8uJEdyb3VwKSB7XHJcbiAgICAgICAgICAgICAgICA8ZGl2IFtmZExheW91dEdyaWRDb2xdPVwiMTJcIiBbY29sU21dPVwiMTJcIiBbY29sTWRdPVwiM1wiIFtjb2xMZ109XCIzXCIgW2NvbFhsXT1cIjNcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR5bmFtaWNDb21tYW5kO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRleHQ6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGltcGxpY2l0OiBtbyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5kZXg6IGksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR5bkNvbW1hbmQ6IGZpZWxkRHluYW1pY0NvbW1hbmQgfCBydmFsOiBtbzphbGxDb2x1bW5zLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogZmllbGRUaXRsZSB8IHJ2YWw6IG1vOmFsbENvbHVtbnMgfCBiYmJUcmFuc2xhdGVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIH0gfVxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2ZkLWxheW91dC1ncmlkPlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PlxyXG48bmctdGVtcGxhdGUgI2R5bmFtaWNDb21tYW5kIGxldC1tbyBsZXQtaW5kZXg9XCJpbmRleFwiIGxldC1keW5Db21tYW5kPVwiZHluQ29tbWFuZFwiIGxldC10aXRsZT1cInRpdGxlXCI+XHJcbiAgICA8YnV0dG9uXHJcbiAgICAgICAgZmQtYnV0dG9uXHJcbiAgICAgICAgW2R5bkNvbW1hbmRdPVwiZHluQ29tbWFuZFwiXHJcbiAgICAgICAgW21vXT1cIm1vXCJcclxuICAgICAgICBbZW5hYmxlQ29tbWFuZF09XCJkeW5Db21tYW5kXCJcclxuICAgICAgICBzdHlsZT1cIndpZHRoOiAxMDAlOyBtYXgtaGVpZ2h0OiAyLjNyZW07IGhlaWdodDogMi4zcmVtOyBib3JkZXItcmFkaXVzOiAwXCJcclxuICAgICAgICBbZmRUeXBlXT1cIidlbXBoYXNpemVkJ1wiXHJcbiAgICAgICAgKGNsaWNrKT1cIm9uUm93Q2xpY2syKHsgbW8sIGluZGV4IH0sZHluQ29tbWFuZClcIlxyXG4gICAgICAgIFt0aXRsZV09XCJ0aXRsZVwiXHJcbiAgICA+XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJpdGVtLWljb25cIj5cclxuICAgICAgICAgICAgPGZkLWljb24gZ2x5cGg9XCJwcm9kdWN0XCI+PC9mZC1pY29uPlxyXG4gICAgICAgIDwvc3Bhbj5cclxuICAgICAgICA8c3BhbiBjbGFzcz1cIml0ZW0tY29udGVudFwiPiB7eyB0aXRsZSB9fTwvc3Bhbj5cclxuICAgICAgICA8c3BhbiBjbGFzcz1cIml0ZW0taWNvbi1hcnJvd1wiPlxyXG4gICAgICAgICAgICBAaWYgKGZpZWxkSWNvbikge1xyXG4gICAgICAgICAgICA8ZmQtaWNvbiBbZ2x5cGhdPVwiZmllbGRJY29uXCI+PC9mZC1pY29uPlxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgPC9zcGFuPlxyXG4gICAgPC9idXR0b24+XHJcbiAgICA8ZGl2IHN0eWxlPVwicGFkZGluZzogMTBweDsgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjY2NcIj5cclxuICAgICAgICA8YnN1LXVsdi1jb250ZXh0LW1lbnVcclxuICAgICAgICAgICAgW2Rpc2FibGVPdmVyZmxvd0NvbnRleHRNZW51XT1cInRydWVcIlxyXG4gICAgICAgICAgICBbbW9dPVwibW9cIlxyXG4gICAgICAgICAgICBbaW5kZXhdPVwiaW5kZXhcIlxyXG4gICAgICAgICAgICBbc3R5bGVJbmRleF09XCJtby4kU3R5bGVJbmRleFwiXHJcbiAgICAgICAgICAgIFttZW51SXRlbXNdPVwiY29udGV4dE1lbnVJdGVtc1wiXHJcbiAgICAgICAgICAgIFthbGxDb2x1bW5zXT1cImFsbENvbHVtbnNcIlxyXG4gICAgICAgICAgICAoY29tbWFuZENsaWNrKT1cInRoaXMudWx2Q29tbWFuZENsaWNrLmVtaXQoeyBtbywgaW5kZXggfSlcIlxyXG4gICAgICAgID48L2JzdS11bHYtY29udGV4dC1tZW51PlxyXG4gICAgPC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+XHJcbiJdfQ==
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
+
import { takeUntil } from 'rxjs/operators';
|
|
3
|
+
import { FormBaseComponent, FormPanelService } from 'barsa-novin-ray-core';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/common";
|
|
6
|
+
import * as i2 from "barsa-sap-ui";
|
|
7
|
+
import * as i3 from "@fundamental-ngx/core/button";
|
|
8
|
+
import * as i4 from "@fundamental-ngx/core/dynamic-side-content";
|
|
9
|
+
import * as i5 from "barsa-novin-ray-core";
|
|
10
|
+
export class SettingFormComponent extends FormBaseComponent {
|
|
11
|
+
constructor() {
|
|
12
|
+
super(...arguments);
|
|
13
|
+
this.deviceSize = 'xl';
|
|
14
|
+
this.selectedSetting = false;
|
|
15
|
+
this.groupSettingFieldCaption = 'گروه تنظیمات2';
|
|
16
|
+
this.objectSettingFieldCaption = 'شی تنظیمات';
|
|
17
|
+
}
|
|
18
|
+
ngOnInit() {
|
|
19
|
+
super.ngOnInit();
|
|
20
|
+
this.rtl$ = this._portalService.rtl$;
|
|
21
|
+
this._portalService.deviceSize$.pipe(takeUntil(this._onDestroy$)).subscribe((deviceSize) => {
|
|
22
|
+
switch (deviceSize) {
|
|
23
|
+
case 's':
|
|
24
|
+
this.deviceSize = 'sm';
|
|
25
|
+
break;
|
|
26
|
+
case 'm':
|
|
27
|
+
this.deviceSize = 'md';
|
|
28
|
+
break;
|
|
29
|
+
default:
|
|
30
|
+
this.deviceSize = 'xl';
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
ngAfterViewInit() {
|
|
35
|
+
super.ngAfterViewInit();
|
|
36
|
+
const fieldUi = Object.values(this.listFieldUi).find((c) => c.Setting.ControlFieldCaption === this.groupSettingFieldCaption);
|
|
37
|
+
if (fieldUi) {
|
|
38
|
+
fieldUi.viewerControl.on({
|
|
39
|
+
rowselect: this._setSelectedSetting.bind(this)
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
this._groupSettingControlUi = fieldUi;
|
|
43
|
+
}
|
|
44
|
+
ngOnDestroy() {
|
|
45
|
+
super.ngOnDestroy();
|
|
46
|
+
if (this._groupSettingControlUi) {
|
|
47
|
+
this._groupSettingControlUi.viewerControl.un('rowselect', this._setSelectedSetting);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
onSettingClick() { }
|
|
51
|
+
onBack() {
|
|
52
|
+
this.selectedSetting = false;
|
|
53
|
+
}
|
|
54
|
+
_setSelectedSetting() {
|
|
55
|
+
this.selectedSetting = true;
|
|
56
|
+
}
|
|
57
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: SettingFormComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
58
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.5", type: SettingFormComponent, selector: "bdc-setting-form", providers: [FormPanelService], usesInheritance: true, ngImport: i0, template: "@if (mo$ | async; as mo) { @if (layout94$ | async; as layout) { @if (deviceSize === 'sm') {\r\n<div style=\"display: flex; flex-direction: column\">\r\n @if (selectedSetting) {\r\n <div style=\"width: 100%\">\r\n <button\r\n fd-button\r\n [fdType]=\"'transparent'\"\r\n [glyph]=\"(rtl$ | async)!! ? 'arrow-left' : 'arrow-right'\"\r\n (click)=\"onBack()\"\r\n ></button>\r\n </div>\r\n }\r\n <div [class.hide]=\"selectedSetting\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n renderSetting;\r\n context: {\r\n $implicit: layout,\r\n isMobile: true\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n <div [class.hide]=\"!selectedSetting\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n renderForm;\r\n context: {\r\n $implicit: layout,\r\n isMobile: true\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n</div>\r\n} @else {\r\n<fd-dynamic-side-content [size]=\"deviceSize\">\r\n <fd-dynamic-side-content-side>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n renderSetting;\r\n context: {\r\n $implicit: layout,\r\n isMobile: false\r\n }\r\n \"\r\n ></ng-container>\r\n </fd-dynamic-side-content-side>\r\n <fd-dynamic-side-content-main>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n renderForm;\r\n context: {\r\n $implicit: layout,\r\n isMobile: false\r\n }\r\n \"\r\n ></ng-container>\r\n </fd-dynamic-side-content-main>\r\n</fd-dynamic-side-content>\r\n} }\r\n<ng-template #renderForm let-layout let-isMobile=\"isMobile\">\r\n @if (objectSettingFieldCaption | controlUi: layout; as layoutConfig) {\r\n <bsu-layout-control\r\n (click)=\"onSettingClick()\"\r\n class=\"form-setting\"\r\n [class.is-mobile]=\"isMobile\"\r\n [caption]=\"objectSettingFieldCaption\"\r\n [config]=\"layoutConfig\"\r\n [focus]=\"true\"\r\n ></bsu-layout-control>\r\n }\r\n</ng-template>\r\n<ng-template #renderSetting let-layout let-isMobile=\"isMobile\">\r\n @if (groupSettingFieldCaption | controlUi: layout; as layoutConfig) {\r\n <bsu-layout-control\r\n class=\"list-setting\"\r\n [class.is-mobile]=\"isMobile\"\r\n [caption]=\"groupSettingFieldCaption\"\r\n [config]=\"layoutConfig\"\r\n ></bsu-layout-control>\r\n }\r\n</ng-template>\r\n} @else {\r\n<bsu-mask></bsu-mask>\r\n}\r\n", styles: [":host{width:100%}:host ::ng-deep bsu-ulv-context-menu,:host ::ng-deep li button{display:none}.list-setting{height:100%;border-left:1px solid #ccc}.list-setting ::ng-deep bnrc-field-ui{height:100%;padding:0}.list-setting.is-mobile{border:none}.form-setting{height:100%;padding-top:5px}.form-setting ::ng-deep bnrc-field-ui{height:100%!important}fd-dynamic-side-content{height:100%}fd-dynamic-side-content-main{overflow-y:auto}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.MaskComponent, selector: "bsu-mask", inputs: ["size", "top"] }, { kind: "component", type: i2.LayoutControlComponent, selector: "bsu-layout-control", inputs: ["inlineEdit", "caption", "focusControl", "showLabel", "maxLabelWidth", "hasHorizontalText", "contentDensity", "flex", "RefreshLabel", "SetVisible"] }, { kind: "component", type: i3.ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i4.DynamicSideContentComponent, selector: "fd-dynamic-side-content", inputs: ["position", "size", "id"] }, { kind: "component", type: i4.DynamicSideContentSideComponent, selector: "fd-dynamic-side-content-side", inputs: ["id"] }, { kind: "component", type: i4.DynamicSideContentMainComponent, selector: "fd-dynamic-side-content-main", inputs: ["id"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i5.ControlUiPipe, name: "controlUi" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
59
|
+
}
|
|
60
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: SettingFormComponent, decorators: [{
|
|
61
|
+
type: Component,
|
|
62
|
+
args: [{ selector: 'bdc-setting-form', changeDetection: ChangeDetectionStrategy.OnPush, providers: [FormPanelService], template: "@if (mo$ | async; as mo) { @if (layout94$ | async; as layout) { @if (deviceSize === 'sm') {\r\n<div style=\"display: flex; flex-direction: column\">\r\n @if (selectedSetting) {\r\n <div style=\"width: 100%\">\r\n <button\r\n fd-button\r\n [fdType]=\"'transparent'\"\r\n [glyph]=\"(rtl$ | async)!! ? 'arrow-left' : 'arrow-right'\"\r\n (click)=\"onBack()\"\r\n ></button>\r\n </div>\r\n }\r\n <div [class.hide]=\"selectedSetting\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n renderSetting;\r\n context: {\r\n $implicit: layout,\r\n isMobile: true\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n <div [class.hide]=\"!selectedSetting\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n renderForm;\r\n context: {\r\n $implicit: layout,\r\n isMobile: true\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n</div>\r\n} @else {\r\n<fd-dynamic-side-content [size]=\"deviceSize\">\r\n <fd-dynamic-side-content-side>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n renderSetting;\r\n context: {\r\n $implicit: layout,\r\n isMobile: false\r\n }\r\n \"\r\n ></ng-container>\r\n </fd-dynamic-side-content-side>\r\n <fd-dynamic-side-content-main>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n renderForm;\r\n context: {\r\n $implicit: layout,\r\n isMobile: false\r\n }\r\n \"\r\n ></ng-container>\r\n </fd-dynamic-side-content-main>\r\n</fd-dynamic-side-content>\r\n} }\r\n<ng-template #renderForm let-layout let-isMobile=\"isMobile\">\r\n @if (objectSettingFieldCaption | controlUi: layout; as layoutConfig) {\r\n <bsu-layout-control\r\n (click)=\"onSettingClick()\"\r\n class=\"form-setting\"\r\n [class.is-mobile]=\"isMobile\"\r\n [caption]=\"objectSettingFieldCaption\"\r\n [config]=\"layoutConfig\"\r\n [focus]=\"true\"\r\n ></bsu-layout-control>\r\n }\r\n</ng-template>\r\n<ng-template #renderSetting let-layout let-isMobile=\"isMobile\">\r\n @if (groupSettingFieldCaption | controlUi: layout; as layoutConfig) {\r\n <bsu-layout-control\r\n class=\"list-setting\"\r\n [class.is-mobile]=\"isMobile\"\r\n [caption]=\"groupSettingFieldCaption\"\r\n [config]=\"layoutConfig\"\r\n ></bsu-layout-control>\r\n }\r\n</ng-template>\r\n} @else {\r\n<bsu-mask></bsu-mask>\r\n}\r\n", styles: [":host{width:100%}:host ::ng-deep bsu-ulv-context-menu,:host ::ng-deep li button{display:none}.list-setting{height:100%;border-left:1px solid #ccc}.list-setting ::ng-deep bnrc-field-ui{height:100%;padding:0}.list-setting.is-mobile{border:none}.form-setting{height:100%;padding-top:5px}.form-setting ::ng-deep bnrc-field-ui{height:100%!important}fd-dynamic-side-content{height:100%}fd-dynamic-side-content-main{overflow-y:auto}\n"] }]
|
|
63
|
+
}] });
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZy1mb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLWRldmVsb3AtY29tcG9uZW50cy9zcmMvbGliL3NldHRpbmctZm9ybS9zZXR0aW5nLWZvcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2EtZGV2ZWxvcC1jb21wb25lbnRzL3NyYy9saWIvc2V0dGluZy1mb3JtL3NldHRpbmctZm9ybS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLHVCQUF1QixFQUFFLFNBQVMsRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFFckcsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7Ozs7O0FBUzNFLE1BQU0sT0FBTyxvQkFBcUIsU0FBUSxpQkFBaUI7SUFQM0Q7O1FBUUksZUFBVSxHQUF1QixJQUFJLENBQUM7UUFDdEMsb0JBQWUsR0FBRyxLQUFLLENBQUM7UUFFeEIsNkJBQXdCLEdBQUcsZUFBZSxDQUFDO1FBQzNDLDhCQUF5QixHQUFHLFlBQVksQ0FBQztLQTRDNUM7SUF6Q0csUUFBUTtRQUNKLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDO1FBQ3JDLElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsVUFBVSxFQUFFLEVBQUU7WUFDdkYsUUFBUSxVQUFVLEVBQUUsQ0FBQztnQkFDakIsS0FBSyxHQUFHO29CQUNKLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO29CQUN2QixNQUFNO2dCQUNWLEtBQUssR0FBRztvQkFDSixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztvQkFDdkIsTUFBTTtnQkFDVjtvQkFDSSxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztZQUMvQixDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBQ0QsZUFBZTtRQUNYLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN4QixNQUFNLE9BQU8sR0FBUSxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxJQUFJLENBQ3JELENBQUMsQ0FBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLG1CQUFtQixLQUFLLElBQUksQ0FBQyx3QkFBd0IsQ0FDOUUsQ0FBQztRQUNGLElBQUksT0FBTyxFQUFFLENBQUM7WUFDVixPQUFPLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQztnQkFDckIsU0FBUyxFQUFFLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO2FBQ2pELENBQUMsQ0FBQztRQUNQLENBQUM7UUFDRCxJQUFJLENBQUMsc0JBQXNCLEdBQUcsT0FBTyxDQUFDO0lBQzFDLENBQUM7SUFDRCxXQUFXO1FBQ1AsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3BCLElBQUksSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7WUFDOUIsSUFBSSxDQUFDLHNCQUFzQixDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBQ3hGLENBQUM7SUFDTCxDQUFDO0lBQ0QsY0FBYyxLQUFVLENBQUM7SUFDekIsTUFBTTtRQUNGLElBQUksQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFDO0lBQ2pDLENBQUM7SUFDRCxtQkFBbUI7UUFDZixJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQztJQUNoQyxDQUFDOzhHQWhEUSxvQkFBb0I7a0dBQXBCLG9CQUFvQiwyQ0FGbEIsQ0FBQyxnQkFBZ0IsQ0FBQyxpRENWakMsNHdGQXNGQTs7MkZEMUVhLG9CQUFvQjtrQkFQaEMsU0FBUzsrQkFDSSxrQkFBa0IsbUJBR1gsdUJBQXVCLENBQUMsTUFBTSxhQUNwQyxDQUFDLGdCQUFnQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEZvcm1CYXNlQ29tcG9uZW50LCBGb3JtUGFuZWxTZXJ2aWNlIH0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2JkYy1zZXR0aW5nLWZvcm0nLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL3NldHRpbmctZm9ybS5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi9zZXR0aW5nLWZvcm0uY29tcG9uZW50LnNjc3MnXSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gICAgcHJvdmlkZXJzOiBbRm9ybVBhbmVsU2VydmljZV1cclxufSlcclxuZXhwb3J0IGNsYXNzIFNldHRpbmdGb3JtQ29tcG9uZW50IGV4dGVuZHMgRm9ybUJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XHJcbiAgICBkZXZpY2VTaXplOiAneGwnIHwgJ21kJyB8ICdzbScgPSAneGwnO1xyXG4gICAgc2VsZWN0ZWRTZXR0aW5nID0gZmFsc2U7XHJcbiAgICBydGwkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xyXG4gICAgZ3JvdXBTZXR0aW5nRmllbGRDYXB0aW9uID0gJ9qv2LHZiNmHINiq2YbYuNuM2YXYp9iqMic7XHJcbiAgICBvYmplY3RTZXR0aW5nRmllbGRDYXB0aW9uID0gJ9i024wg2KrZhti424zZhdin2KonO1xyXG4gICAgcHJpdmF0ZSBfZ3JvdXBTZXR0aW5nQ29udHJvbFVpOiBhbnk7XHJcblxyXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcclxuICAgICAgICB0aGlzLnJ0bCQgPSB0aGlzLl9wb3J0YWxTZXJ2aWNlLnJ0bCQ7XHJcbiAgICAgICAgdGhpcy5fcG9ydGFsU2VydmljZS5kZXZpY2VTaXplJC5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKChkZXZpY2VTaXplKSA9PiB7XHJcbiAgICAgICAgICAgIHN3aXRjaCAoZGV2aWNlU2l6ZSkge1xyXG4gICAgICAgICAgICAgICAgY2FzZSAncyc6XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kZXZpY2VTaXplID0gJ3NtJztcclxuICAgICAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICAgIGNhc2UgJ20nOlxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGV2aWNlU2l6ZSA9ICdtZCc7XHJcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGV2aWNlU2l6ZSA9ICd4bCc7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgIH1cclxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgICAgICBzdXBlci5uZ0FmdGVyVmlld0luaXQoKTtcclxuICAgICAgICBjb25zdCBmaWVsZFVpOiBhbnkgPSBPYmplY3QudmFsdWVzKHRoaXMubGlzdEZpZWxkVWkpLmZpbmQoXHJcbiAgICAgICAgICAgIChjOiBhbnkpID0+IGMuU2V0dGluZy5Db250cm9sRmllbGRDYXB0aW9uID09PSB0aGlzLmdyb3VwU2V0dGluZ0ZpZWxkQ2FwdGlvblxyXG4gICAgICAgICk7XHJcbiAgICAgICAgaWYgKGZpZWxkVWkpIHtcclxuICAgICAgICAgICAgZmllbGRVaS52aWV3ZXJDb250cm9sLm9uKHtcclxuICAgICAgICAgICAgICAgIHJvd3NlbGVjdDogdGhpcy5fc2V0U2VsZWN0ZWRTZXR0aW5nLmJpbmQodGhpcylcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuX2dyb3VwU2V0dGluZ0NvbnRyb2xVaSA9IGZpZWxkVWk7XHJcbiAgICB9XHJcbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgICAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xyXG4gICAgICAgIGlmICh0aGlzLl9ncm91cFNldHRpbmdDb250cm9sVWkpIHtcclxuICAgICAgICAgICAgdGhpcy5fZ3JvdXBTZXR0aW5nQ29udHJvbFVpLnZpZXdlckNvbnRyb2wudW4oJ3Jvd3NlbGVjdCcsIHRoaXMuX3NldFNlbGVjdGVkU2V0dGluZyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgb25TZXR0aW5nQ2xpY2soKTogdm9pZCB7fVxyXG4gICAgb25CYWNrKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRTZXR0aW5nID0gZmFsc2U7XHJcbiAgICB9XHJcbiAgICBfc2V0U2VsZWN0ZWRTZXR0aW5nKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRTZXR0aW5nID0gdHJ1ZTtcclxuICAgIH1cclxufVxyXG4iLCJAaWYgKG1vJCB8IGFzeW5jOyBhcyBtbykgeyBAaWYgKGxheW91dDk0JCB8IGFzeW5jOyBhcyBsYXlvdXQpIHsgQGlmIChkZXZpY2VTaXplID09PSAnc20nKSB7XHJcbjxkaXYgc3R5bGU9XCJkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uXCI+XHJcbiAgICBAaWYgKHNlbGVjdGVkU2V0dGluZykge1xyXG4gICAgPGRpdiBzdHlsZT1cIndpZHRoOiAxMDAlXCI+XHJcbiAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICBmZC1idXR0b25cclxuICAgICAgICAgICAgW2ZkVHlwZV09XCIndHJhbnNwYXJlbnQnXCJcclxuICAgICAgICAgICAgW2dseXBoXT1cIihydGwkIHwgYXN5bmMpISEgPyAnYXJyb3ctbGVmdCcgOiAnYXJyb3ctcmlnaHQnXCJcclxuICAgICAgICAgICAgKGNsaWNrKT1cIm9uQmFjaygpXCJcclxuICAgICAgICA+PC9idXR0b24+XHJcbiAgICA8L2Rpdj5cclxuICAgIH1cclxuICAgIDxkaXYgW2NsYXNzLmhpZGVdPVwic2VsZWN0ZWRTZXR0aW5nXCI+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lclxyXG4gICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cIlxyXG4gICAgICAgICAgICAgICAgcmVuZGVyU2V0dGluZztcclxuICAgICAgICAgICAgICAgIGNvbnRleHQ6IHtcclxuICAgICAgICAgICAgICAgICAgICAkaW1wbGljaXQ6IGxheW91dCxcclxuICAgICAgICAgICAgICAgICAgICBpc01vYmlsZTogdHJ1ZVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBcIlxyXG4gICAgICAgID48L25nLWNvbnRhaW5lcj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBbY2xhc3MuaGlkZV09XCIhc2VsZWN0ZWRTZXR0aW5nXCI+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lclxyXG4gICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cIlxyXG4gICAgICAgICAgICAgICAgcmVuZGVyRm9ybTtcclxuICAgICAgICAgICAgICAgIGNvbnRleHQ6IHtcclxuICAgICAgICAgICAgICAgICAgICAkaW1wbGljaXQ6IGxheW91dCxcclxuICAgICAgICAgICAgICAgICAgICBpc01vYmlsZTogdHJ1ZVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBcIlxyXG4gICAgICAgID48L25nLWNvbnRhaW5lcj5cclxuICAgIDwvZGl2PlxyXG48L2Rpdj5cclxufSBAZWxzZSB7XHJcbjxmZC1keW5hbWljLXNpZGUtY29udGVudCBbc2l6ZV09XCJkZXZpY2VTaXplXCI+XHJcbiAgICA8ZmQtZHluYW1pYy1zaWRlLWNvbnRlbnQtc2lkZT5cclxuICAgICAgICA8bmctY29udGFpbmVyXHJcbiAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXHJcbiAgICAgICAgICAgICAgICByZW5kZXJTZXR0aW5nO1xyXG4gICAgICAgICAgICAgICAgY29udGV4dDoge1xyXG4gICAgICAgICAgICAgICAgICAgICRpbXBsaWNpdDogbGF5b3V0LFxyXG4gICAgICAgICAgICAgICAgICAgIGlzTW9iaWxlOiBmYWxzZVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBcIlxyXG4gICAgICAgID48L25nLWNvbnRhaW5lcj5cclxuICAgIDwvZmQtZHluYW1pYy1zaWRlLWNvbnRlbnQtc2lkZT5cclxuICAgIDxmZC1keW5hbWljLXNpZGUtY29udGVudC1tYWluPlxyXG4gICAgICAgIDxuZy1jb250YWluZXJcclxuICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJcclxuICAgICAgICAgICAgICAgIHJlbmRlckZvcm07XHJcbiAgICAgICAgICAgICAgICBjb250ZXh0OiB7XHJcbiAgICAgICAgICAgICAgICAgICAgJGltcGxpY2l0OiBsYXlvdXQsXHJcbiAgICAgICAgICAgICAgICAgICAgaXNNb2JpbGU6IGZhbHNlXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIFwiXHJcbiAgICAgICAgPjwvbmctY29udGFpbmVyPlxyXG4gICAgPC9mZC1keW5hbWljLXNpZGUtY29udGVudC1tYWluPlxyXG48L2ZkLWR5bmFtaWMtc2lkZS1jb250ZW50PlxyXG59IH1cclxuPG5nLXRlbXBsYXRlICNyZW5kZXJGb3JtIGxldC1sYXlvdXQgbGV0LWlzTW9iaWxlPVwiaXNNb2JpbGVcIj5cclxuICAgIEBpZiAob2JqZWN0U2V0dGluZ0ZpZWxkQ2FwdGlvbiB8IGNvbnRyb2xVaTogbGF5b3V0OyBhcyBsYXlvdXRDb25maWcpIHtcclxuICAgIDxic3UtbGF5b3V0LWNvbnRyb2xcclxuICAgICAgICAoY2xpY2spPVwib25TZXR0aW5nQ2xpY2soKVwiXHJcbiAgICAgICAgY2xhc3M9XCJmb3JtLXNldHRpbmdcIlxyXG4gICAgICAgIFtjbGFzcy5pcy1tb2JpbGVdPVwiaXNNb2JpbGVcIlxyXG4gICAgICAgIFtjYXB0aW9uXT1cIm9iamVjdFNldHRpbmdGaWVsZENhcHRpb25cIlxyXG4gICAgICAgIFtjb25maWddPVwibGF5b3V0Q29uZmlnXCJcclxuICAgICAgICBbZm9jdXNdPVwidHJ1ZVwiXHJcbiAgICA+PC9ic3UtbGF5b3V0LWNvbnRyb2w+XHJcbiAgICB9XHJcbjwvbmctdGVtcGxhdGU+XHJcbjxuZy10ZW1wbGF0ZSAjcmVuZGVyU2V0dGluZyBsZXQtbGF5b3V0IGxldC1pc01vYmlsZT1cImlzTW9iaWxlXCI+XHJcbiAgICBAaWYgKGdyb3VwU2V0dGluZ0ZpZWxkQ2FwdGlvbiB8IGNvbnRyb2xVaTogbGF5b3V0OyBhcyBsYXlvdXRDb25maWcpIHtcclxuICAgIDxic3UtbGF5b3V0LWNvbnRyb2xcclxuICAgICAgICBjbGFzcz1cImxpc3Qtc2V0dGluZ1wiXHJcbiAgICAgICAgW2NsYXNzLmlzLW1vYmlsZV09XCJpc01vYmlsZVwiXHJcbiAgICAgICAgW2NhcHRpb25dPVwiZ3JvdXBTZXR0aW5nRmllbGRDYXB0aW9uXCJcclxuICAgICAgICBbY29uZmlnXT1cImxheW91dENvbmZpZ1wiXHJcbiAgICA+PC9ic3UtbGF5b3V0LWNvbnRyb2w+XHJcbiAgICB9XHJcbjwvbmctdGVtcGxhdGU+XHJcbn0gQGVsc2Uge1xyXG48YnN1LW1hc2s+PC9ic3UtbWFzaz5cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
+
import { BaseItemContentPropsComponent, createGridEditorFormPanel, BarsaApi } from 'barsa-novin-ray-core';
|
|
3
|
+
import { Subject, debounceTime, switchMap, takeUntil } from 'rxjs';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "barsa-novin-ray-core";
|
|
6
|
+
import * as i2 from "@fundamental-ngx/core/object-status";
|
|
7
|
+
export class SubformInRowReportComponent extends BaseItemContentPropsComponent {
|
|
8
|
+
constructor() {
|
|
9
|
+
super(...arguments);
|
|
10
|
+
this.suggestionList$ = new Subject();
|
|
11
|
+
}
|
|
12
|
+
ngOnInit() {
|
|
13
|
+
super.ngOnInit();
|
|
14
|
+
this.suggestionList$
|
|
15
|
+
.asObservable()
|
|
16
|
+
.pipe(takeUntil(this._onDestroy$), debounceTime(500), switchMap((ulvParams) => new Promise((resolve, reject) => {
|
|
17
|
+
formPanelCtrl.Save(false, (err) => {
|
|
18
|
+
if (err) {
|
|
19
|
+
reject(err);
|
|
20
|
+
}
|
|
21
|
+
this.UlvMainCtrlr.RefreshRowsByMosNoSelectionChange([formPanelCtrl.Mo], [], []);
|
|
22
|
+
resolve();
|
|
23
|
+
});
|
|
24
|
+
})))
|
|
25
|
+
.subscribe();
|
|
26
|
+
const userDefineViewId = this.parameters?.ViewTypeValue?.Id;
|
|
27
|
+
this.params = {
|
|
28
|
+
moId: this.mo.Id,
|
|
29
|
+
typeDefId: this.typeDefId,
|
|
30
|
+
isSimple: true,
|
|
31
|
+
viewId: userDefineViewId
|
|
32
|
+
};
|
|
33
|
+
const formPanelCtrl = createGridEditorFormPanel(this.formSetting, { ...this.mo }, this.typeDefId, null, false
|
|
34
|
+
// BarsaApi.Common.Util.TryGetValue(this.context.Setting, 'Extra.Relation')
|
|
35
|
+
);
|
|
36
|
+
this.formPanelCtrl = formPanelCtrl;
|
|
37
|
+
if (this.parameters?.AutoSaveOnChange) {
|
|
38
|
+
formPanelCtrl.on({
|
|
39
|
+
scope: this,
|
|
40
|
+
ValueChange: () => {
|
|
41
|
+
this.suggestionList$.next();
|
|
42
|
+
}
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
formPanelCtrl.LoadAndCreate({ MoId: this.mo.Id, TypeDefId: this.typeDefId, TypeViewId: userDefineViewId }, false, true, (t, e, r) => {
|
|
46
|
+
console.log(t, e, r);
|
|
47
|
+
const error = BarsaApi.Common.Util.TryGetValue(t, 'Data.ResponseData.error');
|
|
48
|
+
if (error) {
|
|
49
|
+
this.loaded = false;
|
|
50
|
+
this.errorMessage = error.userMessage;
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
this.loaded = true;
|
|
54
|
+
}
|
|
55
|
+
this._cdr.detectChanges();
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
ngOnChanges(changes) {
|
|
59
|
+
super.ngOnChanges(changes);
|
|
60
|
+
const { mo } = changes;
|
|
61
|
+
if (mo && !mo.firstChange) {
|
|
62
|
+
BarsaApi.Common.Merger.FastMerge(this.formPanelCtrl.Mo, mo.currentValue);
|
|
63
|
+
this.formPanelCtrl.SetValue(this.formPanelCtrl.Mo);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: SubformInRowReportComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
67
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.5", type: SubformInRowReportComponent, selector: "bdc-subform-in-row-report", usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "@if (loaded) {\n<bnrc-form [formPanelCtrl]=\"formPanelCtrl\" class=\"subform-in-row\" [params]=\"params\"></bnrc-form>\n} @if(errorMessage){\n<span\n fd-object-status\n status=\"negative\"\n [label]=\"errorMessage\"\n [title]=\"errorMessage\"\n [attr.aria-label]=\"errorMessage\"\n></span>\n}\n", styles: [""], dependencies: [{ kind: "component", type: i1.FormComponent, selector: "bnrc-form", inputs: ["params", "customFormPanelUi", "formPanelCtrl", "UlvMainCtrlr", "formPanelCtrlId", "saveOnChange", "inlineEditInReport"], outputs: ["titleChanged", "moChanged", "formClose", "formRendered", "bruleAction", "beforeTransition", "afterTransition"] }, { kind: "component", type: i2.ObjectStatusComponent, selector: "[fd-object-status]", inputs: ["class", "status", "glyph", "glyphFont", "label", "glyphAriaLabel", "indicationColor", "clickable", "inverted", "large", "secondaryIndication", "textTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
68
|
+
}
|
|
69
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: SubformInRowReportComponent, decorators: [{
|
|
70
|
+
type: Component,
|
|
71
|
+
args: [{ selector: 'bdc-subform-in-row-report', changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (loaded) {\n<bnrc-form [formPanelCtrl]=\"formPanelCtrl\" class=\"subform-in-row\" [params]=\"params\"></bnrc-form>\n} @if(errorMessage){\n<span\n fd-object-status\n status=\"negative\"\n [label]=\"errorMessage\"\n [title]=\"errorMessage\"\n [attr.aria-label]=\"errorMessage\"\n></span>\n}\n" }]
|
|
72
|
+
}] });
|
|
73
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ViZm9ybS1pbi1yb3ctcmVwb3J0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLWRldmVsb3AtY29tcG9uZW50cy9zcmMvbGliL3N1YmZvcm0taW4tcm93LXJlcG9ydC9zdWJmb3JtLWluLXJvdy1yZXBvcnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2EtZGV2ZWxvcC1jb21wb25lbnRzL3NyYy9saWIvc3ViZm9ybS1pbi1yb3ctcmVwb3J0L3N1YmZvcm0taW4tcm93LXJlcG9ydC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFvQyxNQUFNLGVBQWUsQ0FBQztBQUNyRyxPQUFPLEVBQ0gsNkJBQTZCLEVBQzdCLHlCQUF5QixFQUl6QixRQUFRLEVBQ1gsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7O0FBUW5FLE1BQU0sT0FBTywyQkFDVCxTQUFRLDZCQUFzRDtJQVBsRTs7UUFjSSxvQkFBZSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7S0EwRXpDO0lBeEVHLFFBQVE7UUFDSixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDakIsSUFBSSxDQUFDLGVBQWU7YUFDZixZQUFZLEVBQUU7YUFDZCxJQUFJLENBQ0QsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsRUFDM0IsWUFBWSxDQUFDLEdBQUcsQ0FBQyxFQUNqQixTQUFTLENBQ0wsQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUNWLElBQUksT0FBTyxDQUFPLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFO1lBQ2xDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsR0FB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QTJCO2tHQUEzQiwyQkFBMkIsNkdDakJ4Qyx1VEFXQTs7MkZETWEsMkJBQTJCO2tCQU52QyxTQUFTOytCQUNJLDJCQUEyQixtQkFHcEIsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIE9uQ2hhbmdlcywgT25Jbml0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIEJhc2VJdGVtQ29udGVudFByb3BzQ29tcG9uZW50LFxuICAgIGNyZWF0ZUdyaWRFZGl0b3JGb3JtUGFuZWwsXG4gICAgVWlSZXBvcnRWaWV3QmFzZVNldHRpbmcsXG4gICAgRm9ybUNvbXBvbmVudFBhcmFtcyxcbiAgICBNZXRhb2JqZWN0RGF0YU1vZGVsLFxuICAgIEJhcnNhQXBpXG59IGZyb20gJ2JhcnNhLW5vdmluLXJheS1jb3JlJztcbmltcG9ydCB7IFN1YmplY3QsIGRlYm91bmNlVGltZSwgc3dpdGNoTWFwLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdiZGMtc3ViZm9ybS1pbi1yb3ctcmVwb3J0JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vc3ViZm9ybS1pbi1yb3ctcmVwb3J0LmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9zdWJmb3JtLWluLXJvdy1yZXBvcnQuY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBTdWJmb3JtSW5Sb3dSZXBvcnRDb21wb25lbnRcbiAgICBleHRlbmRzIEJhc2VJdGVtQ29udGVudFByb3BzQ29tcG9uZW50PFVpUmVwb3J0Vmlld0Jhc2VTZXR0aW5nPlxuICAgIGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXNcbntcbiAgICBmb3JtUGFuZWxDdHJsOiBhbnk7XG4gICAgbG9hZGVkOiBib29sZWFuO1xuICAgIHBhcmFtczogRm9ybUNvbXBvbmVudFBhcmFtcztcbiAgICBwYXJhbWV0ZXJzOiBTdWJmb3JtSW5Sb3dSZXBvcnRTZXR0aW5nO1xuICAgIHN1Z2dlc3Rpb25MaXN0JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gICAgZXJyb3JNZXNzYWdlOiBzdHJpbmc7XG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgICAgIHRoaXMuc3VnZ2VzdGlvbkxpc3QkXG4gICAgICAgICAgICAuYXNPYnNlcnZhYmxlKClcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSxcbiAgICAgICAgICAgICAgICBkZWJvdW5jZVRpbWUoNTAwKSxcbiAgICAgICAgICAgICAgICBzd2l0Y2hNYXAoXG4gICAgICAgICAgICAgICAgICAgICh1bHZQYXJhbXMpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICBuZXcgUHJvbWlzZTx2b2lkPigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybVBhbmVsQ3RybC5TYXZlKGZhbHNlLCAoZXJyKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChlcnIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlamVjdChlcnIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuVWx2TWFpbkN0cmxyLlJlZnJlc2hSb3dzQnlNb3NOb1NlbGVjdGlvbkNoYW5nZShbZm9ybVBhbmVsQ3RybC5Nb10sIFtdLCBbXSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc29sdmUoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgpO1xuXG4gICAgICAgIGNvbnN0IHVzZXJEZWZpbmVWaWV3SWQgPSB0aGlzLnBhcmFtZXRlcnM/LlZpZXdUeXBlVmFsdWU/LklkO1xuICAgICAgICB0aGlzLnBhcmFtcyA9IHtcbiAgICAgICAgICAgIG1vSWQ6IHRoaXMubW8uSWQsXG4gICAgICAgICAgICB0eXBlRGVmSWQ6IHRoaXMudHlwZURlZklkLFxuICAgICAgICAgICAgaXNTaW1wbGU6IHRydWUsXG4gICAgICAgICAgICB2aWV3SWQ6IHVzZXJEZWZpbmVWaWV3SWRcbiAgICAgICAgfTtcbiAgICAgICAgY29uc3QgZm9ybVBhbmVsQ3RybCA9IGNyZWF0ZUdyaWRFZGl0b3JGb3JtUGFuZWwoXG4gICAgICAgICAgICB0aGlzLmZvcm1TZXR0aW5nLFxuICAgICAgICAgICAgeyAuLi50aGlzLm1vIH0sXG4gICAgICAgICAgICB0aGlzLnR5cGVEZWZJZCxcbiAgICAgICAgICAgIG51bGwsXG4gICAgICAgICAgICBmYWxzZVxuICAgICAgICAgICAgLy8gQmFyc2FBcGkuQ29tbW9uLlV0aWwuVHJ5R2V0VmFsdWUodGhpcy5jb250ZXh0LlNldHRpbmcsICdFeHRyYS5SZWxhdGlvbicpXG4gICAgICAgICk7XG5cbiAgICAgICAgdGhpcy5mb3JtUGFuZWxDdHJsID0gZm9ybVBhbmVsQ3RybDtcbiAgICAgICAgaWYgKHRoaXMucGFyYW1ldGVycz8uQXV0b1NhdmVPbkNoYW5nZSkge1xuICAgICAgICAgICAgZm9ybVBhbmVsQ3RybC5vbih7XG4gICAgICAgICAgICAgICAgc2NvcGU6IHRoaXMsXG4gICAgICAgICAgICAgICAgVmFsdWVDaGFuZ2U6ICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zdWdnZXN0aW9uTGlzdCQubmV4dCgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIGZvcm1QYW5lbEN0cmwuTG9hZEFuZENyZWF0ZShcbiAgICAgICAgICAgIHsgTW9JZDogdGhpcy5tby5JZCwgVHlwZURlZklkOiB0aGlzLnR5cGVEZWZJZCwgVHlwZVZpZXdJZDogdXNlckRlZmluZVZpZXdJZCB9LFxuICAgICAgICAgICAgZmFsc2UsXG4gICAgICAgICAgICB0cnVlLFxuICAgICAgICAgICAgKHQsIGUsIHIpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyh0LCBlLCByKTtcbiAgICAgICAgICAgICAgICBjb25zdCBlcnJvciA9IEJhcnNhQXBpLkNvbW1vbi5VdGlsLlRyeUdldFZhbHVlKHQsICdEYXRhLlJlc3BvbnNlRGF0YS5lcnJvcicpO1xuICAgICAgICAgICAgICAgIGlmIChlcnJvcikge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmxvYWRlZCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9IGVycm9yLnVzZXJNZXNzYWdlO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMubG9hZGVkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgKTtcbiAgICB9XG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgICAgICBzdXBlci5uZ09uQ2hhbmdlcyhjaGFuZ2VzKTtcbiAgICAgICAgY29uc3QgeyBtbyB9ID0gY2hhbmdlcztcbiAgICAgICAgaWYgKG1vICYmICFtby5maXJzdENoYW5nZSkge1xuICAgICAgICAgICAgQmFyc2FBcGkuQ29tbW9uLk1lcmdlci5GYXN0TWVyZ2UodGhpcy5mb3JtUGFuZWxDdHJsLk1vLCBtby5jdXJyZW50VmFsdWUpO1xuICAgICAgICAgICAgdGhpcy5mb3JtUGFuZWxDdHJsLlNldFZhbHVlKHRoaXMuZm9ybVBhbmVsQ3RybC5Nbyk7XG4gICAgICAgIH1cbiAgICB9XG59XG5pbnRlcmZhY2UgU3ViZm9ybUluUm93UmVwb3J0U2V0dGluZyBleHRlbmRzIE1ldGFvYmplY3REYXRhTW9kZWwge1xuICAgIFR5cGVEZWZWYWx1ZTogTWV0YW9iamVjdERhdGFNb2RlbDtcbiAgICBWaWV3VHlwZVZhbHVlOiBNZXRhb2JqZWN0RGF0YU1vZGVsO1xuICAgIEF1dG9TYXZlT25DaGFuZ2U6IGJvb2xlYW47XG59XG4iLCJAaWYgKGxvYWRlZCkge1xuPGJucmMtZm9ybSBbZm9ybVBhbmVsQ3RybF09XCJmb3JtUGFuZWxDdHJsXCIgY2xhc3M9XCJzdWJmb3JtLWluLXJvd1wiIFtwYXJhbXNdPVwicGFyYW1zXCI+PC9ibnJjLWZvcm0+XG59IEBpZihlcnJvck1lc3NhZ2Upe1xuPHNwYW5cbiAgICBmZC1vYmplY3Qtc3RhdHVzXG4gICAgc3RhdHVzPVwibmVnYXRpdmVcIlxuICAgIFtsYWJlbF09XCJlcnJvck1lc3NhZ2VcIlxuICAgIFt0aXRsZV09XCJlcnJvck1lc3NhZ2VcIlxuICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiZXJyb3JNZXNzYWdlXCJcbj48L3NwYW4+XG59XG4iXX0=
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, ViewChild } from '@angular/core';
|
|
2
|
+
import { takeUntil } from 'rxjs/operators';
|
|
3
|
+
import { ReportViewBaseComponent } from 'barsa-novin-ray-core';
|
|
4
|
+
import { TabListComponent } from '@fundamental-ngx/core';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@fundamental-ngx/core/tabs";
|
|
7
|
+
import * as i2 from "barsa-novin-ray-core";
|
|
8
|
+
export class TabProcessViewComponent extends ReportViewBaseComponent {
|
|
9
|
+
ngOnInit() {
|
|
10
|
+
super.ngOnInit();
|
|
11
|
+
this.arrowRight = this.rtl ? 'navigation-left-arrow' : 'navigation-right-arrow';
|
|
12
|
+
this.fieldTitle = this.viewSetting.FieldTitle;
|
|
13
|
+
this.fieldSubtitle = this.viewSetting.FieldSubtitle;
|
|
14
|
+
this.fieldIcon = this.viewSetting.FieldIcon;
|
|
15
|
+
this.defaultIcon = this.viewSetting.DefaultIcon;
|
|
16
|
+
this._ulvMainService.moDataList$.pipe(takeUntil(this._onDestroy$)).subscribe((moDataList) => {
|
|
17
|
+
if (moDataList) {
|
|
18
|
+
const selectedIndex = moDataList.findIndex((c) => c.$IsChecked);
|
|
19
|
+
if (this.tabList && selectedIndex > -1) {
|
|
20
|
+
setTimeout(() => this.tabList.tabPanels.toArray()[selectedIndex].open(true), 0);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
onTabChange2(e) {
|
|
26
|
+
const index = this.moDataList.findIndex((c) => c.Id === e.Id);
|
|
27
|
+
const mo = this.moDataList[index];
|
|
28
|
+
if (mo.$IsChecked) {
|
|
29
|
+
return;
|
|
30
|
+
}
|
|
31
|
+
super.onRowCheck({ mo, index });
|
|
32
|
+
}
|
|
33
|
+
onTabChange(e) {
|
|
34
|
+
const index = this.moDataList.findIndex((c) => c.Id === e.id);
|
|
35
|
+
const mo = this.moDataList[index];
|
|
36
|
+
super.onRowCheck({ mo, index });
|
|
37
|
+
}
|
|
38
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: TabProcessViewComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
39
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.5", type: TabProcessViewComponent, selector: "bdc-tab-process-view", viewQueries: [{ propertyName: "tabList", first: true, predicate: TabListComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "@if (moDataList?.length) {\r\n<fd-tab-list\r\n mode=\"process\"\r\n [style.min-height]=\"moDataList?.length ? '3.8rem' : null\"\r\n [expandOverflowText]=\"'More' | bbbTranslate\"\r\n>\r\n @for (item of moDataList; track item; let index = $index; let last = $last) {\r\n <fd-tab [id]=\"item.Id\" [active]=\"item.$IsChecked\">\r\n <ng-template fd-tab-title-template>\r\n <span\r\n (click)=\"onTabChange2(item)\"\r\n fd-tab-icon\r\n [icon]=\"(fieldIcon | rval: item:allColumns) ? (fieldIcon | rval: item:allColumns) : defaultIcon\"\r\n ></span>\r\n <div fd-tab-process (click)=\"onTabChange2(item)\">\r\n <span fd-tab-label>{{ fieldTitle | rval: item:allColumns }}</span>\r\n <span fd-tab-label>{{ fieldSubtitle | rval: item:allColumns }}</span>\r\n </div>\r\n </ng-template>\r\n </fd-tab>\r\n }\r\n</fd-tab-list>\r\n} @else {\r\n<div style=\"min-height: 3.8rem; background-color: var(--sapObjectHeader_Background)\"></div>\r\n}\r\n", styles: [""], dependencies: [{ kind: "component", type: i1.TabListComponent, selector: "fd-tab-list", inputs: ["size", "mode", "collapseOverflow", "maxVisibleTabs", "stackContent", "maxContentHeight", "collapsibleTabs", "defaultTab", "selectDefaultOnTabsChange", "focusFirstFocusableElement"], outputs: ["selectedTabChange", "selectedTabIndexChange", "visibleItemsCount", "hiddenItemsCount"] }, { kind: "component", type: i1.TabPanelComponent, selector: "fd-tab", inputs: ["id", "ariaLabel", "ariaLabelledBy", "title", "count", "glyph", "header", "disabled", "tabState"], outputs: ["opened", "closed"] }, { kind: "directive", type: i1.TabTitleDirective, selector: "[fdTabTitleTemplate], [fd-tab-title-template]" }, { kind: "component", type: i1.TabIconComponent, selector: "[fd-tab-icon]", inputs: ["class", "icon", "iconFont"] }, { kind: "directive", type: i1.TabLabelDirective, selector: "[fdTabLabel], [fd-tab-label]" }, { kind: "directive", type: i1.TabProcessDirective, selector: "[fdTabProcess], [fd-tab-process]" }, { kind: "pipe", type: i2.MoReportValuePipe, name: "rval" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
40
|
+
}
|
|
41
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: TabProcessViewComponent, decorators: [{
|
|
42
|
+
type: Component,
|
|
43
|
+
args: [{ selector: 'bdc-tab-process-view', changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (moDataList?.length) {\r\n<fd-tab-list\r\n mode=\"process\"\r\n [style.min-height]=\"moDataList?.length ? '3.8rem' : null\"\r\n [expandOverflowText]=\"'More' | bbbTranslate\"\r\n>\r\n @for (item of moDataList; track item; let index = $index; let last = $last) {\r\n <fd-tab [id]=\"item.Id\" [active]=\"item.$IsChecked\">\r\n <ng-template fd-tab-title-template>\r\n <span\r\n (click)=\"onTabChange2(item)\"\r\n fd-tab-icon\r\n [icon]=\"(fieldIcon | rval: item:allColumns) ? (fieldIcon | rval: item:allColumns) : defaultIcon\"\r\n ></span>\r\n <div fd-tab-process (click)=\"onTabChange2(item)\">\r\n <span fd-tab-label>{{ fieldTitle | rval: item:allColumns }}</span>\r\n <span fd-tab-label>{{ fieldSubtitle | rval: item:allColumns }}</span>\r\n </div>\r\n </ng-template>\r\n </fd-tab>\r\n }\r\n</fd-tab-list>\r\n} @else {\r\n<div style=\"min-height: 3.8rem; background-color: var(--sapObjectHeader_Background)\"></div>\r\n}\r\n" }]
|
|
44
|
+
}], propDecorators: { tabList: [{
|
|
45
|
+
type: ViewChild,
|
|
46
|
+
args: [TabListComponent]
|
|
47
|
+
}] } });
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLXByb2Nlc3Mtdmlldy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1kZXZlbG9wLWNvbXBvbmVudHMvc3JjL2xpYi90YWItcHJvY2Vzcy12aWV3L3RhYi1wcm9jZXNzLXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2EtZGV2ZWxvcC1jb21wb25lbnRzL3NyYy9saWIvdGFiLXByb2Nlc3Mtdmlldy90YWItcHJvY2Vzcy12aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQVUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzQyxPQUFPLEVBQUUsdUJBQXVCLEVBQXVCLE1BQU0sc0JBQXNCLENBQUM7QUFFcEYsT0FBTyxFQUFFLGdCQUFnQixFQUFxQixNQUFNLHVCQUF1QixDQUFDOzs7O0FBTzVFLE1BQU0sT0FBTyx1QkFBd0IsU0FBUSx1QkFBOEM7SUFVdkYsUUFBUTtRQUNKLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLHVCQUF1QixDQUFDLENBQUMsQ0FBQyx3QkFBd0IsQ0FBQztRQUNoRixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDO1FBQzlDLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUM7UUFDcEQsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQztRQUM1QyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDO1FBQ2hELElBQUksQ0FBQyxlQUFlLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsVUFBVSxFQUFFLEVBQUU7WUFDeEYsSUFBSSxVQUFVLEVBQUUsQ0FBQztnQkFDYixNQUFNLGFBQWEsR0FBRyxVQUFVLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUM7Z0JBQ2hFLElBQUksSUFBSSxDQUFDLE9BQU8sSUFBSSxhQUFhLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQztvQkFDckMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxDQUFDLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFDcEYsQ0FBQztZQUNMLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFDRCxZQUFZLENBQUMsQ0FBc0I7UUFDL0IsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzlELE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbEMsSUFBSSxFQUFFLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDaEIsT0FBTztRQUNYLENBQUM7UUFDRCxLQUFLLENBQUMsVUFBVSxDQUFDLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUNELFdBQVcsQ0FBQyxDQUFvQjtRQUM1QixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDOUQsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNsQyxLQUFLLENBQUMsVUFBVSxDQUFDLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDcEMsQ0FBQzs4R0F0Q1EsdUJBQXVCO2tHQUF2Qix1QkFBdUIscUdBQ3JCLGdCQUFnQix1RUNiL0IsNmpDQXlCQTs7MkZEYmEsdUJBQXVCO2tCQU5uQyxTQUFTOytCQUNJLHNCQUFzQixtQkFHZix1QkFBdUIsQ0FBQyxNQUFNOzhCQUdsQixPQUFPO3NCQUFuQyxTQUFTO3VCQUFDLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuXHJcbmltcG9ydCB7IFJlcG9ydFZpZXdCYXNlQ29tcG9uZW50LCBNZXRhb2JqZWN0RGF0YU1vZGVsIH0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xyXG5pbXBvcnQgeyBUYWJQcm9jZXNzVmlld1NldHRpbmcgfSBmcm9tICcuLi9tb2RlbHMnO1xyXG5pbXBvcnQgeyBUYWJMaXN0Q29tcG9uZW50LCBUYWJQYW5lbENvbXBvbmVudCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZSc7XHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdiZGMtdGFiLXByb2Nlc3MtdmlldycsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vdGFiLXByb2Nlc3Mtdmlldy5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi90YWItcHJvY2Vzcy12aWV3LmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVGFiUHJvY2Vzc1ZpZXdDb21wb25lbnQgZXh0ZW5kcyBSZXBvcnRWaWV3QmFzZUNvbXBvbmVudDxUYWJQcm9jZXNzVmlld1NldHRpbmc+IGltcGxlbWVudHMgT25Jbml0IHtcclxuICAgIEBWaWV3Q2hpbGQoVGFiTGlzdENvbXBvbmVudCkgdGFiTGlzdDogVGFiTGlzdENvbXBvbmVudDtcclxuICAgIGZpZWxkVGl0bGU6IHN0cmluZztcclxuICAgIGZpZWxkSWNvbjogc3RyaW5nO1xyXG4gICAgZmllbGRTdGF0ZTogc3RyaW5nO1xyXG4gICAgbW9kZTogc3RyaW5nO1xyXG4gICAgYXJyb3dSaWdodDogc3RyaW5nO1xyXG4gICAgZmllbGRTdWJ0aXRsZTogc3RyaW5nO1xyXG4gICAgZGVmYXVsdEljb246IHN0cmluZztcclxuXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xyXG4gICAgICAgIHRoaXMuYXJyb3dSaWdodCA9IHRoaXMucnRsID8gJ25hdmlnYXRpb24tbGVmdC1hcnJvdycgOiAnbmF2aWdhdGlvbi1yaWdodC1hcnJvdyc7XHJcbiAgICAgICAgdGhpcy5maWVsZFRpdGxlID0gdGhpcy52aWV3U2V0dGluZy5GaWVsZFRpdGxlO1xyXG4gICAgICAgIHRoaXMuZmllbGRTdWJ0aXRsZSA9IHRoaXMudmlld1NldHRpbmcuRmllbGRTdWJ0aXRsZTtcclxuICAgICAgICB0aGlzLmZpZWxkSWNvbiA9IHRoaXMudmlld1NldHRpbmcuRmllbGRJY29uO1xyXG4gICAgICAgIHRoaXMuZGVmYXVsdEljb24gPSB0aGlzLnZpZXdTZXR0aW5nLkRlZmF1bHRJY29uO1xyXG4gICAgICAgIHRoaXMuX3Vsdk1haW5TZXJ2aWNlLm1vRGF0YUxpc3QkLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKG1vRGF0YUxpc3QpID0+IHtcclxuICAgICAgICAgICAgaWYgKG1vRGF0YUxpc3QpIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IHNlbGVjdGVkSW5kZXggPSBtb0RhdGFMaXN0LmZpbmRJbmRleCgoYykgPT4gYy4kSXNDaGVja2VkKTtcclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLnRhYkxpc3QgJiYgc2VsZWN0ZWRJbmRleCA+IC0xKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLnRhYkxpc3QudGFiUGFuZWxzLnRvQXJyYXkoKVtzZWxlY3RlZEluZGV4XS5vcGVuKHRydWUpLCAwKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgb25UYWJDaGFuZ2UyKGU6IE1ldGFvYmplY3REYXRhTW9kZWwpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBpbmRleCA9IHRoaXMubW9EYXRhTGlzdC5maW5kSW5kZXgoKGMpID0+IGMuSWQgPT09IGUuSWQpO1xyXG4gICAgICAgIGNvbnN0IG1vID0gdGhpcy5tb0RhdGFMaXN0W2luZGV4XTtcclxuICAgICAgICBpZiAobW8uJElzQ2hlY2tlZCkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHN1cGVyLm9uUm93Q2hlY2soeyBtbywgaW5kZXggfSk7XHJcbiAgICB9XHJcbiAgICBvblRhYkNoYW5nZShlOiBUYWJQYW5lbENvbXBvbmVudCk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5tb0RhdGFMaXN0LmZpbmRJbmRleCgoYykgPT4gYy5JZCA9PT0gZS5pZCk7XHJcbiAgICAgICAgY29uc3QgbW8gPSB0aGlzLm1vRGF0YUxpc3RbaW5kZXhdO1xyXG4gICAgICAgIHN1cGVyLm9uUm93Q2hlY2soeyBtbywgaW5kZXggfSk7XHJcbiAgICB9XHJcbn1cclxuIiwiQGlmIChtb0RhdGFMaXN0Py5sZW5ndGgpIHtcclxuPGZkLXRhYi1saXN0XHJcbiAgICBtb2RlPVwicHJvY2Vzc1wiXHJcbiAgICBbc3R5bGUubWluLWhlaWdodF09XCJtb0RhdGFMaXN0Py5sZW5ndGggPyAnMy44cmVtJyA6IG51bGxcIlxyXG4gICAgW2V4cGFuZE92ZXJmbG93VGV4dF09XCInTW9yZScgfCBiYmJUcmFuc2xhdGVcIlxyXG4+XHJcbiAgICBAZm9yIChpdGVtIG9mIG1vRGF0YUxpc3Q7IHRyYWNrIGl0ZW07IGxldCBpbmRleCA9ICRpbmRleDsgbGV0IGxhc3QgPSAkbGFzdCkge1xyXG4gICAgPGZkLXRhYiBbaWRdPVwiaXRlbS5JZFwiIFthY3RpdmVdPVwiaXRlbS4kSXNDaGVja2VkXCI+XHJcbiAgICAgICAgPG5nLXRlbXBsYXRlIGZkLXRhYi10aXRsZS10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgICAgIChjbGljayk9XCJvblRhYkNoYW5nZTIoaXRlbSlcIlxyXG4gICAgICAgICAgICAgICAgZmQtdGFiLWljb25cclxuICAgICAgICAgICAgICAgIFtpY29uXT1cIihmaWVsZEljb24gfCBydmFsOiBpdGVtOmFsbENvbHVtbnMpID8gKGZpZWxkSWNvbiB8IHJ2YWw6IGl0ZW06YWxsQ29sdW1ucykgOiBkZWZhdWx0SWNvblwiXHJcbiAgICAgICAgICAgID48L3NwYW4+XHJcbiAgICAgICAgICAgIDxkaXYgZmQtdGFiLXByb2Nlc3MgKGNsaWNrKT1cIm9uVGFiQ2hhbmdlMihpdGVtKVwiPlxyXG4gICAgICAgICAgICAgICAgPHNwYW4gZmQtdGFiLWxhYmVsPnt7IGZpZWxkVGl0bGUgfCBydmFsOiBpdGVtOmFsbENvbHVtbnMgfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBmZC10YWItbGFiZWw+e3sgZmllbGRTdWJ0aXRsZSB8IHJ2YWw6IGl0ZW06YWxsQ29sdW1ucyB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgIDwvZmQtdGFiPlxyXG4gICAgfVxyXG48L2ZkLXRhYi1saXN0PlxyXG59IEBlbHNlIHtcclxuPGRpdiBzdHlsZT1cIm1pbi1oZWlnaHQ6IDMuOHJlbTsgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2FwT2JqZWN0SGVhZGVyX0JhY2tncm91bmQpXCI+PC9kaXY+XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Component, ChangeDetectionStrategy } from '@angular/core';
|
|
2
|
+
import { ReportViewBaseComponent } from 'barsa-novin-ray-core';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/common";
|
|
5
|
+
import * as i2 from "barsa-sap-ui";
|
|
6
|
+
import * as i3 from "@fundamental-ngx/core/table";
|
|
7
|
+
import * as i4 from "barsa-novin-ray-core";
|
|
8
|
+
export class TableViewVerticalColumnsComponent extends ReportViewBaseComponent {
|
|
9
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: TableViewVerticalColumnsComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
10
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.5", type: TableViewVerticalColumnsComponent, selector: "bdc-table-view-vertical-columns", usesInheritance: true, ngImport: i0, template: "@for (mo of moDataList | multipleGroupBy: groupby; track mo; let index = $index) { @if (mo.$Group) {\r\n<h3>{{ mo.$Group }}</h3>\r\n<ng-container *ngTemplateOutlet=\"tplTable; context: { $implicit: mo.$Children, index: this.index }\"></ng-container>\r\n} }\r\n<ng-template #tplTable let-children let-index=\"index\">\r\n <table fd-table [style.margin-top]=\"index > 0 ? '2rem' : 0\">\r\n <tbody fd-table-body>\r\n @for (column of columns; track column) {\r\n <tr fd-table-row>\r\n <th fd-table-cell>\r\n <strong>{{ column.Alias }}:</strong>\r\n </th>\r\n @for (mo of children; track mo; let index = $index) {\r\n <td\r\n fd-table-cell\r\n #tdEl\r\n [applyConditionalFormats]=\"conditionalFormats\"\r\n [hostEl]=\"tdEl\"\r\n [styleIndex]=\"mo.$StyleIndex\"\r\n [dbName]=\"column.Name\"\r\n >\r\n <bsu-column-renderer\r\n [mo]=\"mo\"\r\n [column]=\"column\"\r\n [value]=\"column | columnValue: mo | bbbTranslate\"\r\n [icon]=\"column | columnIcon: mo\"\r\n [editMode]=\"false\"\r\n [isChecked]=\"false\"\r\n [isNewInlineMo]=\"false\"\r\n [index]=\"index\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [formLayoutShowLabel]=\"false\"\r\n [deviceSize]=\"deviceSize\"\r\n ></bsu-column-renderer>\r\n </td>\r\n }\r\n </tr>\r\n }\r\n </tbody>\r\n </table>\r\n</ng-template>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.ColumnRendererComponent, selector: "bsu-column-renderer,[colRenderer]", inputs: ["column", "mo", "index", "editMode", "customRowHeight", "controlUi", "formLayoutShowLabel", "isChecked", "isNewInlineMo", "containerDom", "disableEllapsis", "rtl", "deviceName", "deviceSize", "value", "icon"] }, { kind: "directive", type: i2.ApplyConditionalFormatsDirective, selector: "[applyConditionalFormats]", inputs: ["applyConditionalFormats", "styleIndex", "hostEl", "dbName"] }, { kind: "component", type: i3.TableComponent, selector: "table[fd-table]", inputs: ["noBorderX", "noBorderY", "noOuterBorder", "topBorder", "popIn", "responsive", "keys", "allCellsFocusable"], exportAs: ["fd-table"] }, { kind: "directive", type: i3.TableBodyDirective, selector: "[fdTableBody], [fd-table-body]", inputs: ["noBorderX", "noBorderY"] }, { kind: "directive", type: i3.TableRowDirective, selector: "[fdTableRow], [fd-table-row]", inputs: ["activable", "highlightActive", "hoverable", "focusable", "main", "secondary", "active"] }, { kind: "directive", type: i3.TableCellDirective, selector: "[fdTableCell], [fd-table-cell]", inputs: ["noBorderX", "noBorderY", "activable", "focusable", "hoverable", "fitContent", "noPadding", "noData", "key"] }, { kind: "pipe", type: i4.MultipleGroupByPipe, name: "multipleGroupBy" }, { kind: "pipe", type: i4.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: i4.ColumnIconPipe, name: "columnIcon" }, { kind: "pipe", type: i4.ColumnValuePipe, name: "columnValue" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
11
|
+
}
|
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: TableViewVerticalColumnsComponent, decorators: [{
|
|
13
|
+
type: Component,
|
|
14
|
+
args: [{ selector: 'bdc-table-view-vertical-columns', changeDetection: ChangeDetectionStrategy.OnPush, template: "@for (mo of moDataList | multipleGroupBy: groupby; track mo; let index = $index) { @if (mo.$Group) {\r\n<h3>{{ mo.$Group }}</h3>\r\n<ng-container *ngTemplateOutlet=\"tplTable; context: { $implicit: mo.$Children, index: this.index }\"></ng-container>\r\n} }\r\n<ng-template #tplTable let-children let-index=\"index\">\r\n <table fd-table [style.margin-top]=\"index > 0 ? '2rem' : 0\">\r\n <tbody fd-table-body>\r\n @for (column of columns; track column) {\r\n <tr fd-table-row>\r\n <th fd-table-cell>\r\n <strong>{{ column.Alias }}:</strong>\r\n </th>\r\n @for (mo of children; track mo; let index = $index) {\r\n <td\r\n fd-table-cell\r\n #tdEl\r\n [applyConditionalFormats]=\"conditionalFormats\"\r\n [hostEl]=\"tdEl\"\r\n [styleIndex]=\"mo.$StyleIndex\"\r\n [dbName]=\"column.Name\"\r\n >\r\n <bsu-column-renderer\r\n [mo]=\"mo\"\r\n [column]=\"column\"\r\n [value]=\"column | columnValue: mo | bbbTranslate\"\r\n [icon]=\"column | columnIcon: mo\"\r\n [editMode]=\"false\"\r\n [isChecked]=\"false\"\r\n [isNewInlineMo]=\"false\"\r\n [index]=\"index\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [formLayoutShowLabel]=\"false\"\r\n [deviceSize]=\"deviceSize\"\r\n ></bsu-column-renderer>\r\n </td>\r\n }\r\n </tr>\r\n }\r\n </tbody>\r\n </table>\r\n</ng-template>\r\n" }]
|
|
15
|
+
}] });
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtdmlldy12ZXJ0aWNhbC1jb2x1bW5zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLWRldmVsb3AtY29tcG9uZW50cy9zcmMvbGliL3RhYmxlLXZpZXctdmVydGljYWwtY29sdW1ucy90YWJsZS12aWV3LXZlcnRpY2FsLWNvbHVtbnMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2EtZGV2ZWxvcC1jb21wb25lbnRzL3NyYy9saWIvdGFibGUtdmlldy12ZXJ0aWNhbC1jb2x1bW5zL3RhYmxlLXZpZXctdmVydGljYWwtY29sdW1ucy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25FLE9BQU8sRUFBRSx1QkFBdUIsRUFBMkIsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7O0FBUXhGLE1BQU0sT0FBTyxpQ0FBa0MsU0FBUSx1QkFBZ0Q7OEdBQTFGLGlDQUFpQztrR0FBakMsaUNBQWlDLDhGQ1Q5Qyx5MkRBMENBOzsyRkRqQ2EsaUNBQWlDO2tCQU43QyxTQUFTOytCQUNJLGlDQUFpQyxtQkFHMUIsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUmVwb3J0Vmlld0Jhc2VDb21wb25lbnQsIFVpUmVwb3J0Vmlld0Jhc2VTZXR0aW5nIH0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2JkYy10YWJsZS12aWV3LXZlcnRpY2FsLWNvbHVtbnMnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL3RhYmxlLXZpZXctdmVydGljYWwtY29sdW1ucy5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi90YWJsZS12aWV3LXZlcnRpY2FsLWNvbHVtbnMuY29tcG9uZW50LnNjc3MnXSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUYWJsZVZpZXdWZXJ0aWNhbENvbHVtbnNDb21wb25lbnQgZXh0ZW5kcyBSZXBvcnRWaWV3QmFzZUNvbXBvbmVudDxVaVJlcG9ydFZpZXdCYXNlU2V0dGluZz4ge31cclxuIiwiQGZvciAobW8gb2YgbW9EYXRhTGlzdCB8IG11bHRpcGxlR3JvdXBCeTogZ3JvdXBieTsgdHJhY2sgbW87IGxldCBpbmRleCA9ICRpbmRleCkgeyBAaWYgKG1vLiRHcm91cCkge1xyXG48aDM+e3sgbW8uJEdyb3VwIH19PC9oMz5cclxuPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInRwbFRhYmxlOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogbW8uJENoaWxkcmVuLCBpbmRleDogdGhpcy5pbmRleCB9XCI+PC9uZy1jb250YWluZXI+XHJcbn0gfVxyXG48bmctdGVtcGxhdGUgI3RwbFRhYmxlIGxldC1jaGlsZHJlbiBsZXQtaW5kZXg9XCJpbmRleFwiPlxyXG4gICAgPHRhYmxlIGZkLXRhYmxlIFtzdHlsZS5tYXJnaW4tdG9wXT1cImluZGV4ID4gMCA/ICcycmVtJyA6IDBcIj5cclxuICAgICAgICA8dGJvZHkgZmQtdGFibGUtYm9keT5cclxuICAgICAgICAgICAgQGZvciAoY29sdW1uIG9mIGNvbHVtbnM7IHRyYWNrIGNvbHVtbikge1xyXG4gICAgICAgICAgICA8dHIgZmQtdGFibGUtcm93PlxyXG4gICAgICAgICAgICAgICAgPHRoIGZkLXRhYmxlLWNlbGw+XHJcbiAgICAgICAgICAgICAgICAgICAgPHN0cm9uZz57eyBjb2x1bW4uQWxpYXMgfX06PC9zdHJvbmc+XHJcbiAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgQGZvciAobW8gb2YgY2hpbGRyZW47IHRyYWNrIG1vOyBsZXQgaW5kZXggPSAkaW5kZXgpIHtcclxuICAgICAgICAgICAgICAgIDx0ZFxyXG4gICAgICAgICAgICAgICAgICAgIGZkLXRhYmxlLWNlbGxcclxuICAgICAgICAgICAgICAgICAgICAjdGRFbFxyXG4gICAgICAgICAgICAgICAgICAgIFthcHBseUNvbmRpdGlvbmFsRm9ybWF0c109XCJjb25kaXRpb25hbEZvcm1hdHNcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtob3N0RWxdPVwidGRFbFwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3N0eWxlSW5kZXhdPVwibW8uJFN0eWxlSW5kZXhcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtkYk5hbWVdPVwiY29sdW1uLk5hbWVcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgIDxic3UtY29sdW1uLXJlbmRlcmVyXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFttb109XCJtb1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjb2x1bW5dPVwiY29sdW1uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW3ZhbHVlXT1cImNvbHVtbiB8IGNvbHVtblZhbHVlOiBtbyB8IGJiYlRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtpY29uXT1cImNvbHVtbiB8IGNvbHVtbkljb246IG1vXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2VkaXRNb2RlXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2lzQ2hlY2tlZF09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtpc05ld0lubGluZU1vXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2luZGV4XT1cImluZGV4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW3J0bF09XCJydGxcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGV2aWNlTmFtZV09XCJkZXZpY2VOYW1lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2Zvcm1MYXlvdXRTaG93TGFiZWxdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGV2aWNlU2l6ZV09XCJkZXZpY2VTaXplXCJcclxuICAgICAgICAgICAgICAgICAgICA+PC9ic3UtY29sdW1uLXJlbmRlcmVyPlxyXG4gICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIDwvdGJvZHk+XHJcbiAgICA8L3RhYmxlPlxyXG48L25nLXRlbXBsYXRlPlxyXG4iXX0=
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { Component, ChangeDetectionStrategy } from '@angular/core';
|
|
2
|
+
import { DateService, FieldBaseComponent, getDateService, LogService } from 'barsa-novin-ray-core';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class TimerCountDownComponent extends FieldBaseComponent {
|
|
5
|
+
ngOnInit() {
|
|
6
|
+
super.ngOnInit();
|
|
7
|
+
this._setCountDown(this.value);
|
|
8
|
+
}
|
|
9
|
+
_setValue(value) {
|
|
10
|
+
super._setValue(value);
|
|
11
|
+
this._setCountDown(value);
|
|
12
|
+
}
|
|
13
|
+
_setCountDown(value) {
|
|
14
|
+
const keysInValue = Object.keys(value);
|
|
15
|
+
let _tempValue = value;
|
|
16
|
+
if (keysInValue.length) {
|
|
17
|
+
const findKeyDate = keysInValue.find((c) => !isNaN(Date.parse(value[c])));
|
|
18
|
+
if (findKeyDate) {
|
|
19
|
+
_tempValue = new Date(value[findKeyDate]);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
const exp = this._dateService.getMoment(_tempValue);
|
|
23
|
+
if (this._interval) {
|
|
24
|
+
clearInterval(this._interval);
|
|
25
|
+
this._interval = null;
|
|
26
|
+
}
|
|
27
|
+
this._interval = setInterval(() => {
|
|
28
|
+
const now = this._dateService.getMoment(new Date());
|
|
29
|
+
const diffDuration = this._dateService.duration(exp.diff(now));
|
|
30
|
+
const month = diffDuration.months();
|
|
31
|
+
const days = diffDuration.days();
|
|
32
|
+
const hours = diffDuration.hours().toLocaleString('en-US', {
|
|
33
|
+
minimumIntegerDigits: 2,
|
|
34
|
+
useGrouping: false
|
|
35
|
+
});
|
|
36
|
+
const minutes = diffDuration.minutes().toLocaleString('en-US', {
|
|
37
|
+
minimumIntegerDigits: 2,
|
|
38
|
+
useGrouping: false
|
|
39
|
+
});
|
|
40
|
+
const seconds = diffDuration.seconds().toLocaleString('en-US', {
|
|
41
|
+
minimumIntegerDigits: 2,
|
|
42
|
+
useGrouping: false
|
|
43
|
+
});
|
|
44
|
+
this.countDownText = `
|
|
45
|
+
${this._getMonthText(month)}
|
|
46
|
+
${this._daysText(days)}
|
|
47
|
+
${this._getTimeText(hours, minutes, seconds)}`;
|
|
48
|
+
this._cdr.detectChanges();
|
|
49
|
+
}, 1000);
|
|
50
|
+
}
|
|
51
|
+
_getMonthText(month) {
|
|
52
|
+
return month > 0 ? `${month} ماه` : '';
|
|
53
|
+
}
|
|
54
|
+
_daysText(days) {
|
|
55
|
+
return days > 0 ? `${days} روز` : '';
|
|
56
|
+
}
|
|
57
|
+
_getTimeText(hours, minutes, seconds) {
|
|
58
|
+
if (hours < 0 || minutes < 0 || seconds < 0) {
|
|
59
|
+
if (this.parameters?.ExpireViewMode) {
|
|
60
|
+
switch (this.parameters.ExpireViewMode) {
|
|
61
|
+
case 1:
|
|
62
|
+
return `00:00:00`;
|
|
63
|
+
break;
|
|
64
|
+
case 2:
|
|
65
|
+
return `پایان یافته`;
|
|
66
|
+
break;
|
|
67
|
+
case 3:
|
|
68
|
+
return '';
|
|
69
|
+
break;
|
|
70
|
+
case 4: // نمایش زمان گذشته
|
|
71
|
+
return `${hours}:${minutes}:${seconds}`;
|
|
72
|
+
break;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
return `00:00:00`;
|
|
76
|
+
}
|
|
77
|
+
return `${hours}:${minutes}:${seconds}`;
|
|
78
|
+
}
|
|
79
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: TimerCountDownComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
80
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.5", type: TimerCountDownComponent, selector: "bdc-timer-count-down", providers: [
|
|
81
|
+
{
|
|
82
|
+
provide: DateService,
|
|
83
|
+
useFactory: getDateService,
|
|
84
|
+
deps: [LogService]
|
|
85
|
+
}
|
|
86
|
+
], usesInheritance: true, ngImport: i0, template: "<span>{{ countDownText }}</span>\r\n", styles: [":host{display:block;width:110px}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
87
|
+
}
|
|
88
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: TimerCountDownComponent, decorators: [{
|
|
89
|
+
type: Component,
|
|
90
|
+
args: [{ selector: 'bdc-timer-count-down', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
91
|
+
{
|
|
92
|
+
provide: DateService,
|
|
93
|
+
useFactory: getDateService,
|
|
94
|
+
deps: [LogService]
|
|
95
|
+
}
|
|
96
|
+
], template: "<span>{{ countDownText }}</span>\r\n", styles: [":host{display:block;width:110px}\n"] }]
|
|
97
|
+
}] });
|
|
98
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZXItY291bnQtZG93bi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1kZXZlbG9wLWNvbXBvbmVudHMvc3JjL2xpYi90aW1lci1jb3VudC1kb3duL3RpbWVyLWNvdW50LWRvd24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2EtZGV2ZWxvcC1jb21wb25lbnRzL3NyYy9saWIvdGltZXItY291bnQtZG93bi90aW1lci1jb3VudC1kb3duLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsdUJBQXVCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0UsT0FBTyxFQUFFLFdBQVcsRUFBRSxrQkFBa0IsRUFBRSxjQUFjLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7O0FBZW5HLE1BQU0sT0FBTyx1QkFBd0IsU0FBUSxrQkFBa0I7SUFHM0QsUUFBUTtRQUNKLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBQ1MsU0FBUyxDQUFDLEtBQVU7UUFDMUIsS0FBSyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN2QixJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFDUyxhQUFhLENBQUMsS0FBMEI7UUFDOUMsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN2QyxJQUFJLFVBQVUsR0FBRyxLQUFLLENBQUM7UUFDdkIsSUFBSSxXQUFXLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDckIsTUFBTSxXQUFXLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFF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QUssQ0FBQzt3QkFDRixPQUFPLGFBQWEsQ0FBQzt3QkFDckIsTUFBTTtvQkFDVixLQUFLLENBQUM7d0JBQ0YsT0FBTyxFQUFFLENBQUM7d0JBQ1YsTUFBTTtvQkFDVixLQUFLLENBQUMsRUFBRSxtQkFBbUI7d0JBQ3ZCLE9BQU8sR0FBRyxLQUFLLElBQUksT0FBTyxJQUFJLE9BQU8sRUFBRSxDQUFDO3dCQUN4QyxNQUFNO2dCQUNkLENBQUM7WUFDTCxDQUFDO1lBQ0QsT0FBTyxVQUFVLENBQUM7UUFDdEIsQ0FBQztRQUNELE9BQU8sR0FBRyxLQUFLLElBQUksT0FBTyxJQUFJLE9BQU8sRUFBRSxDQUFDO0lBQzVDLENBQUM7OEdBNUVRLHVCQUF1QjtrR0FBdkIsdUJBQXVCLCtDQVJyQjtZQUNQO2dCQUNJLE9BQU8sRUFBRSxXQUFXO2dCQUNwQixVQUFVLEVBQUUsY0FBYztnQkFDMUIsSUFBSSxFQUFFLENBQUMsVUFBVSxDQUFDO2FBQ3JCO1NBQ0osaURDZEwsc0NBQ0E7OzJGRGVhLHVCQUF1QjtrQkFibkMsU0FBUzsrQkFDSSxzQkFBc0IsbUJBR2YsdUJBQXVCLENBQUMsTUFBTSxhQUNwQzt3QkFDUDs0QkFDSSxPQUFPLEVBQUUsV0FBVzs0QkFDcEIsVUFBVSxFQUFFLGNBQWM7NEJBQzFCLElBQUksRUFBRSxDQUFDLFVBQVUsQ0FBQzt5QkFDckI7cUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRGF0ZVNlcnZpY2UsIEZpZWxkQmFzZUNvbXBvbmVudCwgZ2V0RGF0ZVNlcnZpY2UsIExvZ1NlcnZpY2UgfSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnYmRjLXRpbWVyLWNvdW50LWRvd24nLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL3RpbWVyLWNvdW50LWRvd24uY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vdGltZXItY291bnQtZG93bi5jb21wb25lbnQuc2NzcyddLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgICBwcm92aWRlcnM6IFtcclxuICAgICAgICB7XHJcbiAgICAgICAgICAgIHByb3ZpZGU6IERhdGVTZXJ2aWNlLFxyXG4gICAgICAgICAgICB1c2VGYWN0b3J5OiBnZXREYXRlU2VydmljZSxcclxuICAgICAgICAgICAgZGVwczogW0xvZ1NlcnZpY2VdXHJcbiAgICAgICAgfVxyXG4gICAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVGltZXJDb3VudERvd25Db21wb25lbnQgZXh0ZW5kcyBGaWVsZEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gICAgY291bnREb3duVGV4dDogc3RyaW5nO1xyXG4gICAgX2ludGVydmFsOiBhbnk7XHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xyXG4gICAgICAgIHRoaXMuX3NldENvdW50RG93bih0aGlzLnZhbHVlKTtcclxuICAgIH1cclxuICAgIHByb3RlY3RlZCBfc2V0VmFsdWUodmFsdWU6IGFueSk6IHZvaWQge1xyXG4gICAgICAgIHN1cGVyLl9zZXRWYWx1ZSh2YWx1ZSk7XHJcbiAgICAgICAgdGhpcy5fc2V0Q291bnREb3duKHZhbHVlKTtcclxuICAgIH1cclxuICAgIHByb3RlY3RlZCBfc2V0Q291bnREb3duKHZhbHVlOiBzdHJpbmcgfCBEYXRlIHwgYW55KTogdm9pZCB7XHJcbiAgICAgICAgY29uc3Qga2V5c0luVmFsdWUgPSBPYmplY3Qua2V5cyh2YWx1ZSk7XHJcbiAgICAgICAgbGV0IF90ZW1wVmFsdWUgPSB2YWx1ZTtcclxuICAgICAgICBpZiAoa2V5c0luVmFsdWUubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGZpbmRLZXlEYXRlID0ga2V5c0luVmFsdWUuZmluZCgoYykgPT4gIWlzTmFOKERhdGUucGFyc2UodmFsdWVbY10pKSk7XHJcbiAgICAgICAgICAgIGlmIChmaW5kS2V5RGF0ZSkge1xyXG4gICAgICAgICAgICAgICAgX3RlbXBWYWx1ZSA9IG5ldyBEYXRlKHZhbHVlW2ZpbmRLZXlEYXRlXSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgY29uc3QgZXhwID0gdGhpcy5fZGF0ZVNlcnZpY2UuZ2V0TW9tZW50KF90ZW1wVmFsdWUpO1xyXG4gICAgICAgIGlmICh0aGlzLl9pbnRlcnZhbCkge1xyXG4gICAgICAgICAgICBjbGVhckludGVydmFsKHRoaXMuX2ludGVydmFsKTtcclxuICAgICAgICAgICAgdGhpcy5faW50ZXJ2YWwgPSBudWxsO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLl9pbnRlcnZhbCA9IHNldEludGVydmFsKCgpOiB2b2lkID0+IHtcclxuICAgICAgICAgICAgY29uc3Qgbm93ID0gdGhpcy5fZGF0ZVNlcnZpY2UuZ2V0TW9tZW50KG5ldyBEYXRlKCkpO1xyXG4gICAgICAgICAgICBjb25zdCBkaWZmRHVyYXRpb24gPSB0aGlzLl9kYXRlU2VydmljZS5kdXJhdGlvbihleHAuZGlmZihub3cpKTtcclxuICAgICAgICAgICAgY29uc3QgbW9udGggPSBkaWZmRHVyYXRpb24ubW9udGhzKCk7XHJcbiAgICAgICAgICAgIGNvbnN0IGRheXMgPSBkaWZmRHVyYXRpb24uZGF5cygpO1xyXG4gICAgICAgICAgICBjb25zdCBob3VycyA9IGRpZmZEdXJhdGlvbi5ob3VycygpLnRvTG9jYWxlU3RyaW5nKCdlbi1VUycsIHtcclxuICAgICAgICAgICAgICAgIG1pbmltdW1JbnRlZ2VyRGlnaXRzOiAyLFxyXG4gICAgICAgICAgICAgICAgdXNlR3JvdXBpbmc6IGZhbHNlXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICBjb25zdCBtaW51dGVzID0gZGlmZkR1cmF0aW9uLm1pbnV0ZXMoKS50b0xvY2FsZVN0cmluZygnZW4tVVMnLCB7XHJcbiAgICAgICAgICAgICAgICBtaW5pbXVtSW50ZWdlckRpZ2l0czogMixcclxuICAgICAgICAgICAgICAgIHVzZUdyb3VwaW5nOiBmYWxzZVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgY29uc3Qgc2Vjb25kcyA9IGRpZmZEdXJhdGlvbi5zZWNvbmRzKCkudG9Mb2NhbGVTdHJpbmcoJ2VuLVVTJywge1xyXG4gICAgICAgICAgICAgICAgbWluaW11bUludGVnZXJEaWdpdHM6IDIsXHJcbiAgICAgICAgICAgICAgICB1c2VHcm91cGluZzogZmFsc2VcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIHRoaXMuY291bnREb3duVGV4dCA9IGBcclxuICAgICAgICAgICAgJHt0aGlzLl9nZXRNb250aFRleHQobW9udGgpfSBcclxuICAgICAgICAgICAgJHt0aGlzLl9kYXlzVGV4dChkYXlzKX0gXHJcbiAgICAgICAgICAgICR7dGhpcy5fZ2V0VGltZVRleHQoaG91cnMsIG1pbnV0ZXMsIHNlY29uZHMpfWA7XHJcbiAgICAgICAgICAgIHRoaXMuX2Nkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgfSwgMTAwMCk7XHJcbiAgICB9XHJcbiAgICBwcml2YXRlIF9nZXRNb250aFRleHQobW9udGgpOiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiBtb250aCA+IDAgPyBgJHttb250aH0g2YXYp9mHYCA6ICcnO1xyXG4gICAgfVxyXG4gICAgcHJpdmF0ZSBfZGF5c1RleHQoZGF5cyk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIGRheXMgPiAwID8gYCR7ZGF5c30g2LHZiNiyYCA6ICcnO1xyXG4gICAgfVxyXG4gICAgcHJpdmF0ZSBfZ2V0VGltZVRleHQoaG91cnMsIG1pbnV0ZXMsIHNlY29uZHMpOiBzdHJpbmcge1xyXG4gICAgICAgIGlmIChob3VycyA8IDAgfHwgbWludXRlcyA8IDAgfHwgc2Vjb25kcyA8IDApIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMucGFyYW1ldGVycz8uRXhwaXJlVmlld01vZGUpIHtcclxuICAgICAgICAgICAgICAgIHN3aXRjaCAodGhpcy5wYXJhbWV0ZXJzLkV4cGlyZVZpZXdNb2RlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY2FzZSAxOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gYDAwOjAwOjAwYDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICAgICAgY2FzZSAyOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gYNm+2KfbjNin2YYg24zYp9mB2KrZh2A7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICAgICAgICAgIGNhc2UgMzpcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICcnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICAgICAgICBjYXNlIDQ6IC8vINmG2YXYp9uM2LQg2LLZhdin2YYg2q/YsNi02KrZh1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gYCR7aG91cnN9OiR7bWludXRlc306JHtzZWNvbmRzfWA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHJldHVybiBgMDA6MDA6MDBgO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gYCR7aG91cnN9OiR7bWludXRlc306JHtzZWNvbmRzfWA7XHJcbiAgICB9XHJcbn1cclxuIiwiPHNwYW4+e3sgY291bnREb3duVGV4dCB9fTwvc3Bhbj5cclxuIl19
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
+
import { ReportViewBaseComponent } 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/content-density";
|
|
6
|
+
import * as i3 from "@fundamental-ngx/core/token";
|
|
7
|
+
import * as i4 from "barsa-novin-ray-core";
|
|
8
|
+
export class TokenReportViewComponent extends ReportViewBaseComponent {
|
|
9
|
+
ngOnInit() {
|
|
10
|
+
super.ngOnInit();
|
|
11
|
+
}
|
|
12
|
+
onRemoveItem(mo, index) {
|
|
13
|
+
this.rowCheck.emit({ mo, index });
|
|
14
|
+
let itemId = 'RemoveFromList';
|
|
15
|
+
if (this.viewSetting?.DeleteAction === '1') {
|
|
16
|
+
itemId = 'Delete';
|
|
17
|
+
}
|
|
18
|
+
this.executeToolbarButton.emit({ itemId });
|
|
19
|
+
}
|
|
20
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: TokenReportViewComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
21
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.5", type: TokenReportViewComponent, selector: "bdc-token-report-view", usesInheritance: true, ngImport: i0, template: "@for (mo of moDataList | multipleGroupBy: groupby; track mo; let index = $index; let last = $last) { @if (!mo.parent ||\r\nmo.parent?.expanded) {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n itemTemplate;\r\n context: {\r\n $implicit: mo,\r\n index: index,\r\n last: last,\r\n columns: columns,\r\n moDataList: moDataList,\r\n moDataListCount: moDataList.length\r\n }\r\n \"\r\n></ng-container>\r\n} }\r\n<ng-template\r\n #itemTemplate\r\n let-mo\r\n let-index=\"index\"\r\n let-last=\"last\"\r\n let-columns=\"columns\"\r\n let-moDataListCount=\"moDataListCount\"\r\n let-moDataList=\"moDataList\"\r\n>\r\n <fd-token fdCozy (onCloseClick)=\"onRemoveItem(mo, index)\" [readOnly]=\"false\">{{\r\n columns[0].Caption | rval: mo:columns:true\r\n }}</fd-token>\r\n</ng-template>\r\n", styles: [":host{display:flex;column-gap:5px;flex-wrap:wrap;row-gap:5px}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.ContentDensityDirective, selector: "[fdContentDensity]:not([fdCompact]):not([fdCondensed]):not([fdCozy]), [fdCompact]:not([fdContentDensity]):not([fdCondensed]):not([fdCozy]), [fdCondensed]:not([fdContentDensity]):not([fdCompact]):not([fdCozy]), [fdCozy]:not([fdContentDensity]):not([fdCompact]):not([fdCondensed])", inputs: ["fdContentDensity", "fdCompact", "fdCondensed", "fdCozy"], exportAs: ["fdContentDensity"] }, { kind: "component", type: i3.TokenComponent, selector: "fd-token", inputs: ["disabled", "selected", "readOnly"], outputs: ["onCloseClick", "onRemove", "onTokenClick", "onTokenKeydown", "elementFocused"] }, { kind: "pipe", type: i4.MultipleGroupByPipe, name: "multipleGroupBy" }, { kind: "pipe", type: i4.MoReportValuePipe, name: "rval" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
22
|
+
}
|
|
23
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: TokenReportViewComponent, decorators: [{
|
|
24
|
+
type: Component,
|
|
25
|
+
args: [{ selector: 'bdc-token-report-view', changeDetection: ChangeDetectionStrategy.OnPush, template: "@for (mo of moDataList | multipleGroupBy: groupby; track mo; let index = $index; let last = $last) { @if (!mo.parent ||\r\nmo.parent?.expanded) {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n itemTemplate;\r\n context: {\r\n $implicit: mo,\r\n index: index,\r\n last: last,\r\n columns: columns,\r\n moDataList: moDataList,\r\n moDataListCount: moDataList.length\r\n }\r\n \"\r\n></ng-container>\r\n} }\r\n<ng-template\r\n #itemTemplate\r\n let-mo\r\n let-index=\"index\"\r\n let-last=\"last\"\r\n let-columns=\"columns\"\r\n let-moDataListCount=\"moDataListCount\"\r\n let-moDataList=\"moDataList\"\r\n>\r\n <fd-token fdCozy (onCloseClick)=\"onRemoveItem(mo, index)\" [readOnly]=\"false\">{{\r\n columns[0].Caption | rval: mo:columns:true\r\n }}</fd-token>\r\n</ng-template>\r\n", styles: [":host{display:flex;column-gap:5px;flex-wrap:wrap;row-gap:5px}\n"] }]
|
|
26
|
+
}] });
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW4tcmVwb3J0LXZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2EtZGV2ZWxvcC1jb21wb25lbnRzL3NyYy9saWIvdG9rZW4tcmVwb3J0LXZpZXcvdG9rZW4tcmVwb3J0LXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2EtZGV2ZWxvcC1jb21wb25lbnRzL3NyYy9saWIvdG9rZW4tcmVwb3J0LXZpZXcvdG9rZW4tcmVwb3J0LXZpZXcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQXVCLHVCQUF1QixFQUFFLE1BQU0sc0JBQXNCLENBQUM7Ozs7OztBQVNwRixNQUFNLE9BQU8sd0JBQXlCLFNBQVEsdUJBQW9EO0lBTzlGLFFBQVE7UUFDSixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUNELFlBQVksQ0FBQyxFQUF1QixFQUFFLEtBQWE7UUFDL0MsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUNsQyxJQUFJLE1BQU0sR0FBRyxnQkFBZ0IsQ0FBQztRQUM5QixJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsWUFBWSxLQUFLLEdBQUcsRUFBRSxDQUFDO1lBQ3pDLE1BQU0sR0FBRyxRQUFRLENBQUM7UUFDdEIsQ0FBQztRQUVELElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQy9DLENBQUM7OEdBbEJRLHdCQUF3QjtrR0FBeEIsd0JBQXdCLG9GQ1ZyQyw0NEJBNkJBOzsyRkRuQmEsd0JBQXdCO2tCQU5wQyxTQUFTOytCQUNJLHVCQUF1QixtQkFHaEIsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNZXRhb2JqZWN0RGF0YU1vZGVsLCBSZXBvcnRWaWV3QmFzZUNvbXBvbmVudCB9IGZyb20gJ2JhcnNhLW5vdmluLXJheS1jb3JlJztcclxuXHJcbmltcG9ydCB7IE1pY3JvUHJvY2Vzc0Zsb3dWaWV3U2V0dGluZyB9IGZyb20gJy4uL21vZGVscyc7XHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdiZGMtdG9rZW4tcmVwb3J0LXZpZXcnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL3Rva2VuLXJlcG9ydC12aWV3LmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL3Rva2VuLXJlcG9ydC12aWV3LmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVG9rZW5SZXBvcnRWaWV3Q29tcG9uZW50IGV4dGVuZHMgUmVwb3J0Vmlld0Jhc2VDb21wb25lbnQ8TWljcm9Qcm9jZXNzRmxvd1ZpZXdTZXR0aW5nPiBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgICBmaWVsZFRpdGxlOiBzdHJpbmc7XHJcbiAgICBmaWVsZEljb246IHN0cmluZztcclxuICAgIGZpZWxkU3RhdGU6IHN0cmluZztcclxuICAgIG1vZGU6IHN0cmluZztcclxuICAgIGFycm93UmlnaHQ6IHN0cmluZztcclxuXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xyXG4gICAgfVxyXG4gICAgb25SZW1vdmVJdGVtKG1vOiBNZXRhb2JqZWN0RGF0YU1vZGVsLCBpbmRleDogbnVtYmVyKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5yb3dDaGVjay5lbWl0KHsgbW8sIGluZGV4IH0pO1xyXG4gICAgICAgIGxldCBpdGVtSWQgPSAnUmVtb3ZlRnJvbUxpc3QnO1xyXG4gICAgICAgIGlmICh0aGlzLnZpZXdTZXR0aW5nPy5EZWxldGVBY3Rpb24gPT09ICcxJykge1xyXG4gICAgICAgICAgICBpdGVtSWQgPSAnRGVsZXRlJztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMuZXhlY3V0ZVRvb2xiYXJCdXR0b24uZW1pdCh7IGl0ZW1JZCB9KTtcclxuICAgIH1cclxufVxyXG4iLCJAZm9yIChtbyBvZiBtb0RhdGFMaXN0IHwgbXVsdGlwbGVHcm91cEJ5OiBncm91cGJ5OyB0cmFjayBtbzsgbGV0IGluZGV4ID0gJGluZGV4OyBsZXQgbGFzdCA9ICRsYXN0KSB7IEBpZiAoIW1vLnBhcmVudCB8fFxyXG5tby5wYXJlbnQ/LmV4cGFuZGVkKSB7XHJcbjxuZy1jb250YWluZXJcclxuICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXHJcbiAgICAgICAgaXRlbVRlbXBsYXRlO1xyXG4gICAgICAgIGNvbnRleHQ6IHtcclxuICAgICAgICAgICAgJGltcGxpY2l0OiBtbyxcclxuICAgICAgICAgICAgaW5kZXg6IGluZGV4LFxyXG4gICAgICAgICAgICBsYXN0OiBsYXN0LFxyXG4gICAgICAgICAgICBjb2x1bW5zOiBjb2x1bW5zLFxyXG4gICAgICAgICAgICBtb0RhdGFMaXN0OiBtb0RhdGFMaXN0LFxyXG4gICAgICAgICAgICBtb0RhdGFMaXN0Q291bnQ6IG1vRGF0YUxpc3QubGVuZ3RoXHJcbiAgICAgICAgfVxyXG4gICAgXCJcclxuPjwvbmctY29udGFpbmVyPlxyXG59IH1cclxuPG5nLXRlbXBsYXRlXHJcbiAgICAjaXRlbVRlbXBsYXRlXHJcbiAgICBsZXQtbW9cclxuICAgIGxldC1pbmRleD1cImluZGV4XCJcclxuICAgIGxldC1sYXN0PVwibGFzdFwiXHJcbiAgICBsZXQtY29sdW1ucz1cImNvbHVtbnNcIlxyXG4gICAgbGV0LW1vRGF0YUxpc3RDb3VudD1cIm1vRGF0YUxpc3RDb3VudFwiXHJcbiAgICBsZXQtbW9EYXRhTGlzdD1cIm1vRGF0YUxpc3RcIlxyXG4+XHJcbiAgICA8ZmQtdG9rZW4gZmRDb3p5IChvbkNsb3NlQ2xpY2spPVwib25SZW1vdmVJdGVtKG1vLCBpbmRleClcIiBbcmVhZE9ubHldPVwiZmFsc2VcIj57e1xyXG4gICAgICAgIGNvbHVtbnNbMF0uQ2FwdGlvbiB8IHJ2YWw6IG1vOmNvbHVtbnM6dHJ1ZVxyXG4gICAgfX08L2ZkLXRva2VuPlxyXG48L25nLXRlbXBsYXRlPlxyXG4iXX0=
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
+
import { FieldBaseComponent } 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/button";
|
|
6
|
+
import * as i3 from "@fundamental-ngx/core/segmented-button";
|
|
7
|
+
import * as i4 from "@angular/common";
|
|
8
|
+
export class UiEnumSegmentedButtonComponent extends FieldBaseComponent {
|
|
9
|
+
onValueChange(value) {
|
|
10
|
+
const selectedValue = value;
|
|
11
|
+
this.setValue(selectedValue);
|
|
12
|
+
}
|
|
13
|
+
setValue(selectedValue) {
|
|
14
|
+
this.value = selectedValue;
|
|
15
|
+
this.valueChange.emit(this.value);
|
|
16
|
+
this.fireContextEvent('select', this.value);
|
|
17
|
+
}
|
|
18
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: UiEnumSegmentedButtonComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
19
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.5", type: UiEnumSegmentedButtonComponent, selector: "bdc-ui-enum-segmented-button", usesInheritance: true, ngImport: i0, template: "<fd-segmented-button style=\"width: 100%\" [(ngModel)]=\"value\" (ngModelChange)=\"onValueChange($event)\">\r\n @for (item of context.store.data[context.store.root]; track item) { @if (item.id !== '0') {\r\n <button\r\n [disabled]=\"(disableOrReadonly$ | async) === true ? true : false\"\r\n fd-button\r\n [label]=\"item.txt\"\r\n [value]=\"item.id\"\r\n ></button>\r\n } }\r\n</fd-segmented-button>\r\n", styles: ["button{width:100%}\n"], dependencies: [{ kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "component", type: i2.ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i3.SegmentedButtonComponent, selector: "fd-segmented-button", inputs: ["toggle", "vertical"] }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
20
|
+
}
|
|
21
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: UiEnumSegmentedButtonComponent, decorators: [{
|
|
22
|
+
type: Component,
|
|
23
|
+
args: [{ selector: 'bdc-ui-enum-segmented-button', changeDetection: ChangeDetectionStrategy.OnPush, template: "<fd-segmented-button style=\"width: 100%\" [(ngModel)]=\"value\" (ngModelChange)=\"onValueChange($event)\">\r\n @for (item of context.store.data[context.store.root]; track item) { @if (item.id !== '0') {\r\n <button\r\n [disabled]=\"(disableOrReadonly$ | async) === true ? true : false\"\r\n fd-button\r\n [label]=\"item.txt\"\r\n [value]=\"item.id\"\r\n ></button>\r\n } }\r\n</fd-segmented-button>\r\n", styles: ["button{width:100%}\n"] }]
|
|
24
|
+
}] });
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktZW51bS1zZWdtZW50ZWQtYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLWRldmVsb3AtY29tcG9uZW50cy9zcmMvbGliL3VpLWVudW0tc2VnbWVudGVkLWJ1dHRvbi91aS1lbnVtLXNlZ21lbnRlZC1idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2EtZGV2ZWxvcC1jb21wb25lbnRzL3NyYy9saWIvdWktZW51bS1zZWdtZW50ZWQtYnV0dG9uL3VpLWVudW0tc2VnbWVudGVkLWJ1dHRvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRW5FLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7Ozs7QUFPMUQsTUFBTSxPQUFPLDhCQUErQixTQUFRLGtCQUFrQjtJQUdsRSxhQUFhLENBQUMsS0FBSztRQUNmLE1BQU0sYUFBYSxHQUFHLEtBQUssQ0FBQztRQUM1QixJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFUyxRQUFRLENBQUMsYUFBa0I7UUFDakMsSUFBSSxDQUFDLEtBQUssR0FBRyxhQUFhLENBQUM7UUFDM0IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2hELENBQUM7OEdBWlEsOEJBQThCO2tHQUE5Qiw4QkFBOEIsMkZDVDNDLDZiQVVBOzsyRkREYSw4QkFBOEI7a0JBTjFDLFNBQVM7K0JBQ0ksOEJBQThCLG1CQUd2Qix1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgRmllbGRCYXNlQ29tcG9uZW50IH0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnYmRjLXVpLWVudW0tc2VnbWVudGVkLWJ1dHRvbicsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vdWktZW51bS1zZWdtZW50ZWQtYnV0dG9uLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL3VpLWVudW0tc2VnbWVudGVkLWJ1dHRvbi5jb21wb25lbnQuc2NzcyddLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIFVpRW51bVNlZ21lbnRlZEJ1dHRvbkNvbXBvbmVudCBleHRlbmRzIEZpZWxkQmFzZUNvbXBvbmVudCB7XHJcbiAgICBjYXB0aW9uOiBzdHJpbmc7XHJcblxyXG4gICAgb25WYWx1ZUNoYW5nZSh2YWx1ZSk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IHNlbGVjdGVkVmFsdWUgPSB2YWx1ZTtcclxuICAgICAgICB0aGlzLnNldFZhbHVlKHNlbGVjdGVkVmFsdWUpO1xyXG4gICAgfVxyXG5cclxuICAgIHByb3RlY3RlZCBzZXRWYWx1ZShzZWxlY3RlZFZhbHVlOiBhbnkpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLnZhbHVlID0gc2VsZWN0ZWRWYWx1ZTtcclxuICAgICAgICB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQodGhpcy52YWx1ZSk7XHJcbiAgICAgICAgdGhpcy5maXJlQ29udGV4dEV2ZW50KCdzZWxlY3QnLCB0aGlzLnZhbHVlKTtcclxuICAgIH1cclxufVxyXG4iLCI8ZmQtc2VnbWVudGVkLWJ1dHRvbiBzdHlsZT1cIndpZHRoOiAxMDAlXCIgWyhuZ01vZGVsKV09XCJ2YWx1ZVwiIChuZ01vZGVsQ2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50KVwiPlxyXG4gICAgQGZvciAoaXRlbSBvZiBjb250ZXh0LnN0b3JlLmRhdGFbY29udGV4dC5zdG9yZS5yb290XTsgdHJhY2sgaXRlbSkgeyBAaWYgKGl0ZW0uaWQgIT09ICcwJykge1xyXG4gICAgPGJ1dHRvblxyXG4gICAgICAgIFtkaXNhYmxlZF09XCIoZGlzYWJsZU9yUmVhZG9ubHkkIHwgYXN5bmMpID09PSB0cnVlID8gdHJ1ZSA6IGZhbHNlXCJcclxuICAgICAgICBmZC1idXR0b25cclxuICAgICAgICBbbGFiZWxdPVwiaXRlbS50eHRcIlxyXG4gICAgICAgIFt2YWx1ZV09XCJpdGVtLmlkXCJcclxuICAgID48L2J1dHRvbj5cclxuICAgIH0gfVxyXG48L2ZkLXNlZ21lbnRlZC1idXR0b24+XHJcbiJdfQ==
|