barsa-sap-ui 2.2.66 → 2.2.68

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.
@@ -1,13 +1,13 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Component, ChangeDetectionStrategy, Input, Pipe, EventEmitter, ElementRef, SkipSelf, ViewChild, HostBinding, Output, ViewEncapsulation, ViewChildren, Inject, Optional, Self, inject, Renderer2, Directive, TemplateRef, HostListener, signal, ViewContainerRef, NgZone, NgModule, ChangeDetectorRef, Injectable, APP_INITIALIZER, NO_ERRORS_SCHEMA, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
2
+ import { Component, ChangeDetectionStrategy, Input, Pipe, EventEmitter, ElementRef, SkipSelf, ViewChild, HostBinding, Output, ViewEncapsulation, ViewChildren, Inject, Optional, Self, inject, Renderer2, Directive, TemplateRef, HostListener, signal, ViewContainerRef, NgZone, NgModule, ChangeDetectorRef, Injectable, NO_ERRORS_SCHEMA, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
3
3
  import * as i2 from 'barsa-novin-ray-core';
4
- import { BaseComponent, ReportViewBaseComponent, getUniqueId, BarsaApi, LayoutItemBaseComponent, getDeviceIsMobile, measureText, getLabelWidth, LayoutService, SortDirection, BaseUlvSettingComponent, getResetGridSettings, FormComponent, createFormPanelMetaConditions, ReportBaseComponent, SelectionMode, GetAllColumnsSorted, getParentHeight, getControlSizeMode, getDeviceIsDesktop, getDeviceIsTablet, getGridSettings, BaseDirective, PortalService, FieldBaseComponent, DateService, getDateService as getDateService$1, DateMiladiService, DateHijriService, DateShamsiService, EllipsifyDirective, createGridEditorFormPanel, FormPanelService, TabpageService, LocalStorageService, getAllItemsPerChildren, setOneDepthLevel, BaseViewItemPropsComponent, MoReportValuePipe, ExecuteDynamicCommand, isImage, getIcon, UploadService, LayoutPanelBaseComponent, BaseColumnPropsComponent, ColumnService, BaseViewContentPropsComponent, enumValueToStringSize, PreventDefaulEvent, setTableThWidth, TableHeaderWidthMode, calcContextMenuWidth, setColumnWidthByMaxMoContentWidth, calculateColumnWidth, calculateColumnContent, calculateColumnWidthFitToContainer, calculateFreeColumnSize, DateRanges, LogService, UlvMainService, isFunction, FilesValidationHelper, getValidExtension, getImagePath, LinearListHelper, FormToolbarBaseComponent, isFirefox, FormBaseComponent, getFieldValue, ContainerComponent, DIALOG_SERVICE, FORM_DIALOG_COMPONENT, ContainerService, FindToolbarItem, FindLayoutSettingFromLayout94, FormPropsBaseComponent, NumberBaseComponent, ImageMimeType, BaseFormToolbaritemPropsComponent, isInLocalMode, executeUlvCommandHandler, FillAllLayoutControls, PictureFieldSourcePipe, IntersectionStatus, BreadcrumbService, LayoutMainContentService, getDeviceIsPhone, NOTIFICATAION_POPUP_SERVER, TOAST_SERVICE, BaseModule, BarsaNovinRayCoreModule, ResizableModule } from 'barsa-novin-ray-core';
4
+ import { BaseComponent, ReportViewBaseComponent, getUniqueId, BarsaApi, LayoutItemBaseComponent, getDeviceIsMobile, measureText, getLabelWidth, LayoutService, SortDirection, BaseUlvSettingComponent, getResetGridSettings, FormComponent, createFormPanelMetaConditions, ReportBaseComponent, SelectionMode, GetAllColumnsSorted, getParentHeight, getControlSizeMode, getDeviceIsDesktop, getDeviceIsTablet, getGridSettings, BaseDirective, PortalService, FieldBaseComponent, DateService, getDateService as getDateService$1, DateMiladiService, DateHijriService, DateShamsiService, EllipsifyDirective, createGridEditorFormPanel, FormPanelService, TabpageService, LocalStorageService, getAllItemsPerChildren, setOneDepthLevel, BaseViewItemPropsComponent, MoReportValuePipe, ExecuteDynamicCommand, isImage, getIcon, UploadService, LayoutPanelBaseComponent, BaseColumnPropsComponent, ColumnService, BaseViewContentPropsComponent, enumValueToStringSize, PreventDefaulEvent, setTableThWidth, TableHeaderWidthMode, calcContextMenuWidth, setColumnWidthByMaxMoContentWidth, calculateColumnWidth, calculateColumnContent, calculateColumnWidthFitToContainer, calculateFreeColumnSize, DateRanges, LogService, UlvMainService, isFunction, FilesValidationHelper, getValidExtension, getImagePath, LinearListHelper, FormToolbarBaseComponent, isFirefox, FormBaseComponent, getFieldValue, ContainerComponent, DIALOG_SERVICE, FORM_DIALOG_COMPONENT, ContainerService, FindToolbarItem, FindLayoutSettingFromLayout94, FormPropsBaseComponent, NumberBaseComponent, ImageMimeType, BaseFormToolbaritemPropsComponent, isInLocalMode, executeUlvCommandHandler, FillAllLayoutControls, PictureFieldSourcePipe, IntersectionStatus, BreadcrumbService, LayoutMainContentService, NOTIFICATAION_POPUP_SERVER, TOAST_SERVICE, BaseModule, BarsaNovinRayCoreModule, ResizableModule } from 'barsa-novin-ray-core';
5
5
  import moment from 'moment';
6
6
  import jmoment from 'moment-jalaali';
7
7
  import { combineLatest, of, BehaviorSubject, Subject, takeUntil as takeUntil$1, throwError, concatMap, tap as tap$1, Observable, fromEvent, first as first$1, filter as filter$1, map as map$1 } from 'rxjs';
8
8
  import { tap, filter, map, distinctUntilChanged, debounceTime, withLatestFrom, takeUntil, exhaustMap, finalize, switchMap, catchError, first, delay, concatMap as concatMap$1 } from 'rxjs/operators';
9
9
  import * as i1 from '@fundamental-ngx/core';
10
- import { TableComponent, ToolbarComponent, GlobalContentDensityService, PopoverComponent, RadioButtonComponent, DynamicPageComponent, DialogService, FileUploaderComponent, MultiInputComponent, TabPanelComponent, WizardComponent, WizardStepComponent, ComboboxComponent, InlineHelpDirective, SliderComponent, ContentDensityMode, ThemingService, NotificationRef, MessageToastService, FundamentalNgxCoreModule, FacetModule, WizardModule, RatingStarLabelPipe, ListGroupPipe, DateTimeFormatPipe, DateFromNowPipe, DateFormatPipe, AvatarIconPipe, ContentDensityModule } from '@fundamental-ngx/core';
10
+ import { TableComponent, ToolbarComponent, GlobalContentDensityService, PopoverComponent, RadioButtonComponent, DynamicPageComponent, DialogService, FileUploaderComponent, MultiInputComponent, TabPanelComponent, WizardComponent, WizardStepComponent, ComboboxComponent, InlineHelpDirective, SliderComponent, ContentDensityMode, ThemingService, RtlService, NotificationRef, MessageToastService, FundamentalNgxCoreModule, FacetModule, WizardModule, RatingStarLabelPipe, ListGroupPipe, DateTimeFormatPipe, DateFromNowPipe, DateFormatPipe, AvatarIconPipe, ContentDensityModule } from '@fundamental-ngx/core';
11
11
  import * as i1$1 from '@angular/platform-browser';
12
12
  import { DomSanitizer } from '@angular/platform-browser';
13
13
  import * as i2$1 from '@fundamental-ngx/core/form';
@@ -26,7 +26,7 @@ import * as i3$2 from '@fundamental-ngx/core/button';
26
26
  import * as i5$1 from '@fundamental-ngx/core/input-group';
27
27
  import * as i4$2 from '@fundamental-ngx/core/dialog';
28
28
  import * as i5$2 from '@fundamental-ngx/cdk/utils';
29
- import { RtlService } from '@fundamental-ngx/cdk/utils';
29
+ import { RtlService as RtlService$1 } from '@fundamental-ngx/cdk/utils';
30
30
  import * as i6 from '@fundamental-ngx/core/title';
31
31
  import * as i2$2 from '@fundamental-ngx/core/select';
32
32
  import * as i5$3 from '@fundamental-ngx/core/busy-indicator';
@@ -5487,11 +5487,11 @@ class BarsaTableColumnComponent extends BaseColumnPropsComponent {
5487
5487
  }
5488
5488
  }
5489
5489
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BarsaTableColumnComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
5490
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: BarsaTableColumnComponent, selector: "bsu-barsa-table-column", inputs: { disableEllapsis: "disableEllapsis", fdTextMode: "fdTextMode" }, providers: [FormPanelService, ColumnService], usesInheritance: true, ngImport: i0, template: "<div\r\n [class.editMode]=\"editMode\"\r\n [class.isdirty]=\"isdirty\"\r\n #divDom\r\n style=\"display: flex; width: 100%\"\r\n [style.column-gap]=\"column.$MergedFieldsToColumn?.length ? '0.2rem' : null\"\r\n>\r\n @if (customComponent && customComponent.Selector) {\r\n <bnrc-dynamic-item-component\r\n [component]=\"customComponent\"\r\n [mo]=\"mo\"\r\n [isChecked]=\"isChecked\"\r\n [setting]=\"detailsComponentSetting\"\r\n [parameters]=\"customComponent.Settings\"\r\n [column]=\"column\"\r\n [value]=\"value\"\r\n [disableEllapsis]=\"disableEllapsis\"\r\n [fdTextMode]=\"fdTextMode\"\r\n [icon]=\"icon\"\r\n [editMode]=\"editMode\"\r\n [attachmentViewType]=\"attachmentViewType\"\r\n [rtl]=\"rtl\"\r\n [isMobile]=\"isMobile\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [index]=\"index\"\r\n [allColumns]=\"allColumns\"\r\n [containerDom]=\"divDom\"\r\n ></bnrc-dynamic-item-component>\r\n } @else {\r\n <bsu-column-renderer\r\n [mo]=\"mo\"\r\n [containerDom]=\"divDom\"\r\n [allColumns]=\"allColumns\"\r\n [column]=\"column\"\r\n [disableEllapsis]=\"disableEllapsis\"\r\n [fdTextMode]=\"fdTextMode\"\r\n [value]=\"value | bbbTranslate\"\r\n [icon]=\"icon\"\r\n [attachmentViewType]=\"attachmentViewType\"\r\n [editMode]=\"editMode\"\r\n [isChecked]=\"isChecked\"\r\n [index]=\"index\"\r\n [isMobile]=\"isMobile\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [formLayoutShowLabel]=\"false\"\r\n [deviceSize]=\"deviceSize\"\r\n [controlUi]=\"column.Caption | controlUi: layout94:column.Name\"\r\n (keyup.control.enter)=\"save.emit($event)\"\r\n (keyup.esc)=\"cancel.emit($event)\"\r\n (keydown.Tab)=\"tab.emit($event)\"\r\n ></bsu-column-renderer>\r\n } @if (editMode) { @for (fieldCaption of column.$MergedFieldsToColumn; track fieldCaption) { @if (fieldCaption |\r\n controlUi: layout94; as layoutConfig) {\r\n <bsu-layout-control\r\n [caption]=\"fieldCaption\"\r\n [config]=\"layoutConfig\"\r\n [showLabel]=\"false\"\r\n [inlineEdit]=\"true\"\r\n (keyup.control.enter)=\"save.emit($event)\"\r\n (keyup.esc)=\"cancel.emit($event)\"\r\n (keydown.Tab)=\"tab.emit($event)\"\r\n ></bsu-layout-control>\r\n } } }\r\n</div>\r\n", styles: [":host{display:contents;width:100%}:host>div.isdirty{background:url(/Lib/ui/resources/images/default/grid/dirty.gif);background-repeat:no-repeat}:host ::ng-deep .row-group.mobile-mode{border-bottom:var(--sapList_BorderWidth, .0625rem) solid var(--sapList_BorderColor, #e4e4e4)!important}:host ::ng-deep .editMode bnrc-field-ui{padding:0;margin:0}:host ::ng-deep .editMode bsu-ui-simple-combo{margin:0!important}bsu-layout-control:not(.hide-form-item){align-items:center;height:100%;min-width:auto;width:auto}td{vertical-align:middle}tr.brule-message td{border:0}.row-group{background-color:var(--sapBackgroundColor, \"#f7f7ff\")}.cell-expand{cursor:pointer;display:inline-flex;justify-content:center;align-items:center;font-size:.75rem;color:#0854a0;color:var(--sapContent_IconColor, #0854a0);min-width:2rem;max-width:2rem}.save-error{color:var(--sapField_InvalidColor)}.save-success{color:var(--sapField_SuccessColor)}.showdetails-on td{border-bottom:none!important}.flow{max-width:100%}.flow-item{display:flex}.flow-item fd-micro-process-flow-icon{width:1.375rem;height:1.375rem}.flow-item h5{padding-right:.3rem}.cartable-template{padding:.5rem 0}\n"], dependencies: [{ kind: "component", type: i2.DynamicItemComponent, selector: "bnrc-dynamic-item-component", inputs: ["mo", "allColumns", "moDataList", "columns", "column", "index", "last", "hideOpenIcon", "deviceName", "deviceSize", "rtl", "editMode", "setting", "parameters", "contextMenuItems", "canView", "showRowNumber", "rowNumber", "formSetting", "conditionalFormats", "disableOverflowContextMenu", "navigationArrow", "isCheckList", "fields", "isChecked", "layout94$", "inlineEditMode", "isNewInlineMo", "allowInlineEdit", "typeDefId", "rowIndicator", "rowIndicatorColor", "UlvMainCtrlr"] }, { kind: "component", type: LayoutControlComponent, selector: "bsu-layout-control", inputs: ["inlineEdit", "cellEdit", "caption", "focusControl", "showLabel", "maxLabelWidth", "hasHorizontalText", "contentDensity", "flex", "RefreshLabel", "SetVisible"], outputs: ["events"] }, { kind: "component", type: ColumnRendererComponent, selector: "bsu-column-renderer,[colRenderer]", inputs: ["cellEdit", "column", "allColumns", "mo", "index", "editMode", "attachmentViewType", "customRowHeight", "controlUi", "formLayoutShowLabel", "isChecked", "isNewInlineMo", "containerDom", "disableEllapsis", "rtl", "isMobile", "fdTextMode", "deviceName", "deviceSize", "value", "icon"] }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: i2.ControlUiPipe, name: "controlUi" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
5490
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: BarsaTableColumnComponent, selector: "bsu-barsa-table-column", inputs: { disableEllapsis: "disableEllapsis", fdTextMode: "fdTextMode" }, providers: [FormPanelService, ColumnService], usesInheritance: true, ngImport: i0, template: "<div\r\n [class.editMode]=\"editMode\"\r\n [class.isdirty]=\"isdirty\"\r\n #divDom\r\n style=\"display: flex; width: 100%\"\r\n [style.column-gap]=\"column.$MergedFieldsToColumn?.length ? '0.2rem' : null\"\r\n>\r\n @if (customComponent && customComponent.Selector) {\r\n <bnrc-dynamic-item-component\r\n [component]=\"customComponent\"\r\n [mo]=\"mo\"\r\n [isChecked]=\"isChecked\"\r\n [setting]=\"detailsComponentSetting\"\r\n [parameters]=\"customComponent.Settings\"\r\n [column]=\"column\"\r\n [value]=\"value\"\r\n [disableEllapsis]=\"disableEllapsis\"\r\n [fdTextMode]=\"fdTextMode\"\r\n [cellEdit]=\"cellEdit\"\r\n [icon]=\"icon\"\r\n [editMode]=\"editMode\"\r\n [attachmentViewType]=\"attachmentViewType\"\r\n [rtl]=\"rtl\"\r\n [isMobile]=\"isMobile\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [index]=\"index\"\r\n [allColumns]=\"allColumns\"\r\n [containerDom]=\"divDom\"\r\n ></bnrc-dynamic-item-component>\r\n } @else {\r\n <bsu-column-renderer\r\n [mo]=\"mo\"\r\n [containerDom]=\"divDom\"\r\n [allColumns]=\"allColumns\"\r\n [column]=\"column\"\r\n [disableEllapsis]=\"disableEllapsis\"\r\n [fdTextMode]=\"fdTextMode\"\r\n [value]=\"value | bbbTranslate\"\r\n [icon]=\"icon\"\r\n [cellEdit]=\"cellEdit\"\r\n [attachmentViewType]=\"attachmentViewType\"\r\n [editMode]=\"editMode\"\r\n [isChecked]=\"isChecked\"\r\n [index]=\"index\"\r\n [isMobile]=\"isMobile\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [formLayoutShowLabel]=\"false\"\r\n [deviceSize]=\"deviceSize\"\r\n [controlUi]=\"column.Caption | controlUi: layout94:column.Name\"\r\n (keyup.control.enter)=\"save.emit($event)\"\r\n (keyup.esc)=\"cancel.emit($event)\"\r\n (keydown.Tab)=\"tab.emit($event)\"\r\n ></bsu-column-renderer>\r\n } @if (editMode) { @for (fieldCaption of column.$MergedFieldsToColumn; track fieldCaption) { @if (fieldCaption |\r\n controlUi: layout94; as layoutConfig) {\r\n <bsu-layout-control\r\n [caption]=\"fieldCaption\"\r\n [config]=\"layoutConfig\"\r\n [showLabel]=\"false\"\r\n [inlineEdit]=\"true\"\r\n (keyup.control.enter)=\"save.emit($event)\"\r\n (keyup.esc)=\"cancel.emit($event)\"\r\n (keydown.Tab)=\"tab.emit($event)\"\r\n ></bsu-layout-control>\r\n } } }\r\n</div>\r\n", styles: [":host{display:contents;width:100%}:host>div.isdirty{background:url(/Lib/ui/resources/images/default/grid/dirty.gif);background-repeat:no-repeat}:host ::ng-deep .row-group.mobile-mode{border-bottom:var(--sapList_BorderWidth, .0625rem) solid var(--sapList_BorderColor, #e4e4e4)!important}:host ::ng-deep .editMode bnrc-field-ui{padding:0;margin:0}:host ::ng-deep .editMode bsu-ui-simple-combo{margin:0!important}bsu-layout-control:not(.hide-form-item){align-items:center;height:100%;min-width:auto;width:auto}td{vertical-align:middle}tr.brule-message td{border:0}.row-group{background-color:var(--sapBackgroundColor, \"#f7f7ff\")}.cell-expand{cursor:pointer;display:inline-flex;justify-content:center;align-items:center;font-size:.75rem;color:#0854a0;color:var(--sapContent_IconColor, #0854a0);min-width:2rem;max-width:2rem}.save-error{color:var(--sapField_InvalidColor)}.save-success{color:var(--sapField_SuccessColor)}.showdetails-on td{border-bottom:none!important}.flow{max-width:100%}.flow-item{display:flex}.flow-item fd-micro-process-flow-icon{width:1.375rem;height:1.375rem}.flow-item h5{padding-right:.3rem}.cartable-template{padding:.5rem 0}\n"], dependencies: [{ kind: "component", type: i2.DynamicItemComponent, selector: "bnrc-dynamic-item-component", inputs: ["mo", "allColumns", "moDataList", "columns", "column", "index", "last", "hideOpenIcon", "deviceName", "deviceSize", "rtl", "editMode", "setting", "parameters", "contextMenuItems", "canView", "showRowNumber", "rowNumber", "formSetting", "conditionalFormats", "disableOverflowContextMenu", "navigationArrow", "isCheckList", "fields", "isChecked", "layout94$", "inlineEditMode", "isNewInlineMo", "allowInlineEdit", "typeDefId", "rowIndicator", "rowIndicatorColor", "UlvMainCtrlr"] }, { kind: "component", type: LayoutControlComponent, selector: "bsu-layout-control", inputs: ["inlineEdit", "cellEdit", "caption", "focusControl", "showLabel", "maxLabelWidth", "hasHorizontalText", "contentDensity", "flex", "RefreshLabel", "SetVisible"], outputs: ["events"] }, { kind: "component", type: ColumnRendererComponent, selector: "bsu-column-renderer,[colRenderer]", inputs: ["cellEdit", "column", "allColumns", "mo", "index", "editMode", "attachmentViewType", "customRowHeight", "controlUi", "formLayoutShowLabel", "isChecked", "isNewInlineMo", "containerDom", "disableEllapsis", "rtl", "isMobile", "fdTextMode", "deviceName", "deviceSize", "value", "icon"] }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: i2.ControlUiPipe, name: "controlUi" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
5491
5491
  }
5492
5492
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BarsaTableColumnComponent, decorators: [{
5493
5493
  type: Component,
5494
- args: [{ selector: 'bsu-barsa-table-column', providers: [FormPanelService, ColumnService], changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<div\r\n [class.editMode]=\"editMode\"\r\n [class.isdirty]=\"isdirty\"\r\n #divDom\r\n style=\"display: flex; width: 100%\"\r\n [style.column-gap]=\"column.$MergedFieldsToColumn?.length ? '0.2rem' : null\"\r\n>\r\n @if (customComponent && customComponent.Selector) {\r\n <bnrc-dynamic-item-component\r\n [component]=\"customComponent\"\r\n [mo]=\"mo\"\r\n [isChecked]=\"isChecked\"\r\n [setting]=\"detailsComponentSetting\"\r\n [parameters]=\"customComponent.Settings\"\r\n [column]=\"column\"\r\n [value]=\"value\"\r\n [disableEllapsis]=\"disableEllapsis\"\r\n [fdTextMode]=\"fdTextMode\"\r\n [icon]=\"icon\"\r\n [editMode]=\"editMode\"\r\n [attachmentViewType]=\"attachmentViewType\"\r\n [rtl]=\"rtl\"\r\n [isMobile]=\"isMobile\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [index]=\"index\"\r\n [allColumns]=\"allColumns\"\r\n [containerDom]=\"divDom\"\r\n ></bnrc-dynamic-item-component>\r\n } @else {\r\n <bsu-column-renderer\r\n [mo]=\"mo\"\r\n [containerDom]=\"divDom\"\r\n [allColumns]=\"allColumns\"\r\n [column]=\"column\"\r\n [disableEllapsis]=\"disableEllapsis\"\r\n [fdTextMode]=\"fdTextMode\"\r\n [value]=\"value | bbbTranslate\"\r\n [icon]=\"icon\"\r\n [attachmentViewType]=\"attachmentViewType\"\r\n [editMode]=\"editMode\"\r\n [isChecked]=\"isChecked\"\r\n [index]=\"index\"\r\n [isMobile]=\"isMobile\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [formLayoutShowLabel]=\"false\"\r\n [deviceSize]=\"deviceSize\"\r\n [controlUi]=\"column.Caption | controlUi: layout94:column.Name\"\r\n (keyup.control.enter)=\"save.emit($event)\"\r\n (keyup.esc)=\"cancel.emit($event)\"\r\n (keydown.Tab)=\"tab.emit($event)\"\r\n ></bsu-column-renderer>\r\n } @if (editMode) { @for (fieldCaption of column.$MergedFieldsToColumn; track fieldCaption) { @if (fieldCaption |\r\n controlUi: layout94; as layoutConfig) {\r\n <bsu-layout-control\r\n [caption]=\"fieldCaption\"\r\n [config]=\"layoutConfig\"\r\n [showLabel]=\"false\"\r\n [inlineEdit]=\"true\"\r\n (keyup.control.enter)=\"save.emit($event)\"\r\n (keyup.esc)=\"cancel.emit($event)\"\r\n (keydown.Tab)=\"tab.emit($event)\"\r\n ></bsu-layout-control>\r\n } } }\r\n</div>\r\n", styles: [":host{display:contents;width:100%}:host>div.isdirty{background:url(/Lib/ui/resources/images/default/grid/dirty.gif);background-repeat:no-repeat}:host ::ng-deep .row-group.mobile-mode{border-bottom:var(--sapList_BorderWidth, .0625rem) solid var(--sapList_BorderColor, #e4e4e4)!important}:host ::ng-deep .editMode bnrc-field-ui{padding:0;margin:0}:host ::ng-deep .editMode bsu-ui-simple-combo{margin:0!important}bsu-layout-control:not(.hide-form-item){align-items:center;height:100%;min-width:auto;width:auto}td{vertical-align:middle}tr.brule-message td{border:0}.row-group{background-color:var(--sapBackgroundColor, \"#f7f7ff\")}.cell-expand{cursor:pointer;display:inline-flex;justify-content:center;align-items:center;font-size:.75rem;color:#0854a0;color:var(--sapContent_IconColor, #0854a0);min-width:2rem;max-width:2rem}.save-error{color:var(--sapField_InvalidColor)}.save-success{color:var(--sapField_SuccessColor)}.showdetails-on td{border-bottom:none!important}.flow{max-width:100%}.flow-item{display:flex}.flow-item fd-micro-process-flow-icon{width:1.375rem;height:1.375rem}.flow-item h5{padding-right:.3rem}.cartable-template{padding:.5rem 0}\n"] }]
5494
+ args: [{ selector: 'bsu-barsa-table-column', providers: [FormPanelService, ColumnService], changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<div\r\n [class.editMode]=\"editMode\"\r\n [class.isdirty]=\"isdirty\"\r\n #divDom\r\n style=\"display: flex; width: 100%\"\r\n [style.column-gap]=\"column.$MergedFieldsToColumn?.length ? '0.2rem' : null\"\r\n>\r\n @if (customComponent && customComponent.Selector) {\r\n <bnrc-dynamic-item-component\r\n [component]=\"customComponent\"\r\n [mo]=\"mo\"\r\n [isChecked]=\"isChecked\"\r\n [setting]=\"detailsComponentSetting\"\r\n [parameters]=\"customComponent.Settings\"\r\n [column]=\"column\"\r\n [value]=\"value\"\r\n [disableEllapsis]=\"disableEllapsis\"\r\n [fdTextMode]=\"fdTextMode\"\r\n [cellEdit]=\"cellEdit\"\r\n [icon]=\"icon\"\r\n [editMode]=\"editMode\"\r\n [attachmentViewType]=\"attachmentViewType\"\r\n [rtl]=\"rtl\"\r\n [isMobile]=\"isMobile\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [index]=\"index\"\r\n [allColumns]=\"allColumns\"\r\n [containerDom]=\"divDom\"\r\n ></bnrc-dynamic-item-component>\r\n } @else {\r\n <bsu-column-renderer\r\n [mo]=\"mo\"\r\n [containerDom]=\"divDom\"\r\n [allColumns]=\"allColumns\"\r\n [column]=\"column\"\r\n [disableEllapsis]=\"disableEllapsis\"\r\n [fdTextMode]=\"fdTextMode\"\r\n [value]=\"value | bbbTranslate\"\r\n [icon]=\"icon\"\r\n [cellEdit]=\"cellEdit\"\r\n [attachmentViewType]=\"attachmentViewType\"\r\n [editMode]=\"editMode\"\r\n [isChecked]=\"isChecked\"\r\n [index]=\"index\"\r\n [isMobile]=\"isMobile\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [formLayoutShowLabel]=\"false\"\r\n [deviceSize]=\"deviceSize\"\r\n [controlUi]=\"column.Caption | controlUi: layout94:column.Name\"\r\n (keyup.control.enter)=\"save.emit($event)\"\r\n (keyup.esc)=\"cancel.emit($event)\"\r\n (keydown.Tab)=\"tab.emit($event)\"\r\n ></bsu-column-renderer>\r\n } @if (editMode) { @for (fieldCaption of column.$MergedFieldsToColumn; track fieldCaption) { @if (fieldCaption |\r\n controlUi: layout94; as layoutConfig) {\r\n <bsu-layout-control\r\n [caption]=\"fieldCaption\"\r\n [config]=\"layoutConfig\"\r\n [showLabel]=\"false\"\r\n [inlineEdit]=\"true\"\r\n (keyup.control.enter)=\"save.emit($event)\"\r\n (keyup.esc)=\"cancel.emit($event)\"\r\n (keydown.Tab)=\"tab.emit($event)\"\r\n ></bsu-layout-control>\r\n } } }\r\n</div>\r\n", styles: [":host{display:contents;width:100%}:host>div.isdirty{background:url(/Lib/ui/resources/images/default/grid/dirty.gif);background-repeat:no-repeat}:host ::ng-deep .row-group.mobile-mode{border-bottom:var(--sapList_BorderWidth, .0625rem) solid var(--sapList_BorderColor, #e4e4e4)!important}:host ::ng-deep .editMode bnrc-field-ui{padding:0;margin:0}:host ::ng-deep .editMode bsu-ui-simple-combo{margin:0!important}bsu-layout-control:not(.hide-form-item){align-items:center;height:100%;min-width:auto;width:auto}td{vertical-align:middle}tr.brule-message td{border:0}.row-group{background-color:var(--sapBackgroundColor, \"#f7f7ff\")}.cell-expand{cursor:pointer;display:inline-flex;justify-content:center;align-items:center;font-size:.75rem;color:#0854a0;color:var(--sapContent_IconColor, #0854a0);min-width:2rem;max-width:2rem}.save-error{color:var(--sapField_InvalidColor)}.save-success{color:var(--sapField_SuccessColor)}.showdetails-on td{border-bottom:none!important}.flow{max-width:100%}.flow-item{display:flex}.flow-item fd-micro-process-flow-icon{width:1.375rem;height:1.375rem}.flow-item h5{padding-right:.3rem}.cartable-template{padding:.5rem 0}\n"] }]
5495
5495
  }], propDecorators: { disableEllapsis: [{
5496
5496
  type: Input
5497
5497
  }], fdTextMode: [{
@@ -6064,6 +6064,7 @@ class BarsaTableRowComponent extends BaseViewItemPropsComponent {
6064
6064
  this.showDetailsInRow = false;
6065
6065
  this.columnSummary = new EventEmitter();
6066
6066
  this._renderer2 = inject(Renderer2);
6067
+ this.activeColumn = signal(undefined);
6067
6068
  }
6068
6069
  ngOnInit() {
6069
6070
  super.ngOnInit();
@@ -6092,22 +6093,36 @@ class BarsaTableRowComponent extends BaseViewItemPropsComponent {
6092
6093
  }
6093
6094
  });
6094
6095
  }
6095
- onColumnClick() {
6096
- if (this.isCheckList) {
6097
- return;
6098
- }
6099
- this.onRowCheck();
6096
+ onColumnClick(column) {
6097
+ this._columnChangeToEditMode(column);
6098
+ }
6099
+ onColumnKeyEnter(column) {
6100
+ // if (column === this.activeColumn()) {
6101
+ // const colIndex = this.columns.findIndex((c) => column.Name === c.Name);
6102
+ // if (colIndex > -1 && colIndex < this.columns.length) {
6103
+ // this.activeColumn.set(this.columns[colIndex + 1]);
6104
+ // }
6105
+ // return;
6106
+ // }
6107
+ this._columnChangeToEditMode(column);
6100
6108
  }
6101
6109
  onRowDetails() {
6102
6110
  this.detailsCollapsed = !this.detailsCollapsed;
6103
6111
  this._cdr.detectChanges();
6104
6112
  }
6113
+ _columnChangeToEditMode(column) {
6114
+ if (this.isCheckList && this.isChecked) {
6115
+ return;
6116
+ }
6117
+ this._rowCheck();
6118
+ this.activeColumn.set(column);
6119
+ }
6105
6120
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BarsaTableRowComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
6106
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: BarsaTableRowComponent, selector: "bsu-barsa-table-row", inputs: { showDetailsInRow: "showDetailsInRow", previewColumn: "previewColumn", columnComponents: "columnComponents", dirtyColumns: "dirtyColumns", detailsCollapsed: "detailsCollapsed" }, outputs: { columnSummary: "columnSummary" }, providers: [FormPanelService], viewQueries: [{ propertyName: "detailsFormItems", first: true, predicate: ["detailsFormItems"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "@if ((!mo.$Parent || parentExpanded) && visibility !== false) {\r\n<tr\r\n [class.row-error]=\"hasError\"\r\n [class.showdetails-on]=\"!detailsCollapsed && (detailsComponent?.Selector || detailsColumns?.length)\"\r\n [class.hasForm]=\"formSetting\"\r\n [class.hasCartable]=\"!!cartableParams\"\r\n #trEl\r\n fd-table-row\r\n [activable]=\"false\"\r\n [hoverable]=\"true\"\r\n [main]=\"true\"\r\n [focusable]=\"true\"\r\n [applyConditionalFormats]=\"conditionalFormats\"\r\n [styleIndex]=\"styleIndex\"\r\n [hostEl]=\"trEl\"\r\n [attr.aria-selected]=\"isChecked\"\r\n [class.has-preview-column]=\"!!previewColumn\"\r\n [class.brule-message]=\"bruleActionMessage() || workflowState()?.error\"\r\n [class.workflow-pending]=\"workflowState()?.state === 'Pending'\"\r\n [style.background-color]=\"isOdd && !isChecked ? 'var(--sapList_Hover_Background)' : null\"\r\n>\r\n @if (mo.$Group || mo.$Group === '') {\r\n <td\r\n [style.padding-right]=\"rtl ? 'calc( 1rem + ' + level * 12 + 'px' + ' )' : 'inherit'\"\r\n [style.padding-left]=\"!rtl ? 'calc( 1rem + ' + level * 12 + 'px' + ' )' : 'inherit'\"\r\n fd-table-cell\r\n style=\"font-weight: bold; font-size: 1rem\"\r\n [attr.colspan]=\"\r\n columns.length +\r\n 1 +\r\n (rowIndicator ? -1 : 0) +\r\n (contextMenuItems && contextMenuItems.length > 0 ? 1 : 0) +\r\n (showViewButton ? 1 : 0) +\r\n (showDetailsInRow && !inlineEditMode ? 1 : 0)\r\n \"\r\n class=\"row-group\"\r\n [class.mobile-mode]=\"secondaryColumns?.length\"\r\n [attr.level]=\"level\"\r\n [class.root-group]=\"level === 0\"\r\n >\r\n <button\r\n fd-button\r\n [fdType]=\"'transparent'\"\r\n [glyph]=\"expanded !== false ? 'navigation-down-arrow' : 'navigation-left-arrow'\"\r\n class=\"cell-expand\"\r\n (click)=\"onExpandClick()\"\r\n ></button>\r\n {{ mo.$Group === 'undefined' ? '' : mo.$Group }}\r\n </td>\r\n } @else {\r\n\r\n <ng-container *ngTemplateOutlet=\"statusIndicator\"></ng-container>\r\n @if (isCheckList) {\r\n <td fd-table-cell [style.width]=\"checkboxComponent ? '60px' : null\">\r\n @if (workflowState()?.state === 'Pending') {\r\n <div style=\"position: absolute; left: 0; right: 0; bottom: 0; top: 0\">\r\n <bsu-mask [top]=\"'20px'\" [size]=\"'s'\"></bsu-mask>\r\n </div>\r\n } @if (checkboxComponent?.Selector) {\r\n <bnrc-dynamic-item-component\r\n [component]=\"checkboxComponent\"\r\n [mo]=\"mo\"\r\n [isChecked]=\"isChecked\"\r\n [UlvMainCtrlr]=\"UlvMainCtrlr\"\r\n [setting]=\"setting\"\r\n [parameters]=\"checkboxComponent.Parameters\"\r\n [editMode]=\"inlineEditMode\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [value]=\"isChecked\"\r\n [deviceSize]=\"deviceSize\"\r\n [index]=\"index\"\r\n [allColumns]=\"allColumns\"\r\n [typeDefId]=\"typeDefId\"\r\n (events)=\"onRowCheck()\"\r\n ></bnrc-dynamic-item-component>\r\n } @else {\r\n <fd-checkbox [name]=\"mo.$Caption\" [ngModel]=\"isChecked\" (ngModelChange)=\"onRowCheck()\"></fd-checkbox>\r\n }\r\n </td>\r\n } @if (!isCheckList && !showRowNumber) {\r\n <td\r\n fd-table-cell\r\n class=\"single-select\"\r\n (click)=\"!isCheckList && onRowCheck()\"\r\n style=\"padding: 0; text-align: center\"\r\n >\r\n @if (inlineEditMode && allowInlineEdit && (hasError || saving || saved)) { @if (hasError) {\r\n <fd-icon class=\"save-error\" glyph=\"error\"></fd-icon>\r\n } @if (saving) {\r\n <fd-busy-indicator [loading]=\"true\" [size]=\"'s'\" title=\"record saving\"></fd-busy-indicator>\r\n } @if (saved) {\r\n <fd-icon class=\"save-success\" glyph=\"accept\"></fd-icon>\r\n } } @else { @if (mo.$State === 'New' && !isChecked) {\r\n <fd-icon glyph=\"favorite\"></fd-icon>\r\n } @if (inlineEditMode && allowInlineEdit && isChecked) {\r\n <fd-icon glyph=\"edit\"></fd-icon>\r\n } }\r\n </td>\r\n }\r\n <ng-container *ngTemplateOutlet=\"rowNumberTemplate\"></ng-container>\r\n @for (column of columns; track column.Name; let columnIndex = $index) {\r\n <td\r\n class=\"rep-column\"\r\n [attr.dbName]=\"column.Name\"\r\n #tdEl\r\n fd-table-cell\r\n [applyConditionalFormats]=\"conditionalFormats\"\r\n [hostEl]=\"tdEl\"\r\n [styleIndex]=\"styleIndex\"\r\n [dbName]=\"column.Name\"\r\n [focusable]=\"false\"\r\n (click)=\"onColumnClick()\"\r\n (dblclick)=\"onRowClick()\"\r\n [hoverable]=\"inlineEditMode && allowInlineEdit\"\r\n [class.control-readonly]=\"column.IsReadonly\"\r\n >\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: column,\r\n mo: mo,\r\n index: columnIndex,\r\n inlineEditMode: inlineEditMode,\r\n layout94: layout$ | async\r\n }\r\n \"\r\n ></ng-container>\r\n </td>\r\n } @if (contextMenuItems.length ) {\r\n <td class=\"col-context-menu\" fd-table-cell>\r\n <bsu-ulv-context-menu\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [styleIndex]=\"styleIndex\"\r\n [mo]=\"mo\"\r\n [index]=\"index\"\r\n (commandClick)=\"onUlvCommand()\"\r\n [deviceName]=\"deviceName\"\r\n [menuItems]=\"contextMenuItems\"\r\n [allColumns]=\"allColumns\"\r\n ></bsu-ulv-context-menu>\r\n </td>\r\n } @if (showDetailsInRow && (!inlineEditMode || !allowInlineEdit)) {\r\n <td class=\"col-details\" fd-table-cell [fitContent]=\"true\">\r\n @if ((detailsComponent?.Selector || detailsColumns?.length || cartableParams?.moId ) && !hideDetailsText) {\r\n <div class=\"tw-flex tw-justify-end tw-w-full\">\r\n <button\r\n fd-button\r\n [label]=\"(detailsCollapsed ? detailsText : 'Hide') | bbbTranslate\"\r\n [fdType]=\"'transparent'\"\r\n (click)=\"onRowDetails()\"\r\n ></button>\r\n </div>\r\n }\r\n </td>\r\n } @if (actionList?.length && !inlineEditMode) {\r\n <td class=\"col-view\" [class.rtl]=\"rtl\" fd-table-cell [fitContent]=\"true\">\r\n <bsu-barsa-row-inline-actionlist\r\n [actionList]=\"actionList\"\r\n (btnClick)=\"actionListClick.emit($event)\"\r\n ></bsu-barsa-row-inline-actionlist>\r\n </td>\r\n } }\r\n</tr>\r\n} @if (secondaryColumns?.length && !mo.$Group && (!mo.$Parent || parentExpanded) && visibility !== false) {\r\n<tr\r\n #trEl\r\n fd-table-row\r\n [secondary]=\"true\"\r\n class=\"secondary-row\"\r\n [class.no-edit-mode]=\"!inlineEditMode\"\r\n [applyConditionalFormats]=\"conditionalFormats\"\r\n [styleIndex]=\"styleIndex\"\r\n [hostEl]=\"trEl\"\r\n [attr.aria-selected]=\"isChecked && !inlineEditMode ? true : false\"\r\n [style.background-color]=\"isOdd && !isChecked ? 'var(--sapList_Hover_Background)' : null\"\r\n>\r\n <ng-container *ngTemplateOutlet=\"statusIndicator\"></ng-container>\r\n @if (!isCheckList) {\r\n <td fd-table-cell class=\"single-select\" (click)=\"onRowCheck()\"></td>\r\n }\r\n <td fd-table-cell colspan=\"100%\" (click)=\"onRowCheck()\" class=\"secondary p-wrapper\">\r\n <div style=\"display: flex; flex-direction: column\">\r\n @for (column of secondaryColumns; track _trackByColumn(columnIndex, column); let columnIndex = $index) {\r\n <p\r\n #pEl\r\n fd-table-text\r\n [applyConditionalFormats]=\"conditionalFormats\"\r\n [hostEl]=\"pEl\"\r\n [styleIndex]=\"styleIndex\"\r\n [dbName]=\"column.Name\"\r\n style=\"font-family: 'B-Font Medium'\"\r\n >\r\n <label fd-form-label>{{ column.Caption }} :</label>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: column,\r\n mo: mo,\r\n index: columnIndex,\r\n inlineEditMode: inlineEditMode,\r\n layout94: layout$ | async\r\n }\r\n \"\r\n ></ng-container>\r\n </p>\r\n }\r\n </div>\r\n </td>\r\n</tr>\r\n} @if (cartableParams?.moId) {\r\n<tr\r\n [class.detailCollapsed]=\"detailsCollapsed\"\r\n fd-table-row\r\n class=\"showdetails cartable\"\r\n [attr.aria-selected]=\"isChecked\"\r\n [class.has-preview-column]=\"!!previewColumn\"\r\n [style.background-color]=\"isOdd && !isChecked ? 'var(--sapList_Hover_Background)' : null\"\r\n>\r\n <ng-container *ngTemplateOutlet=\"statusIndicator\"></ng-container>\r\n <td\r\n (click)=\"onRowCheck()\"\r\n fd-table-cell\r\n [attr.colspan]=\"\r\n columns.length +\r\n 1 +\r\n (rowIndicator ? 1 : 0) +\r\n (contextMenuItems && contextMenuItems.length > 0 ? 1 : 0) +\r\n (showViewButton ? 1 : 0) +\r\n (showDetailsInRow && !inlineEditMode ? 1 : 0)\r\n \"\r\n >\r\n <ng-container>\r\n <bnrc-form\r\n #cartableFormRef\r\n class=\"cartable-template\"\r\n [inlineEditInReport]=\"true\"\r\n [params]=\"cartableParams\"\r\n (beforeTransition)=\"onCartableBeforeTansition()\"\r\n (afterTransition)=\"onCartableAfterTansition($event)\"\r\n (bruleAction)=\"onCartableBruleAction($event)\"\r\n (click)=\"OnCartableFormClick($event)\"\r\n (formClose)=\"onCartableFormClosed()\"\r\n ></bnrc-form>\r\n </ng-container>\r\n </td>\r\n</tr>\r\n} @if (!detailsCollapsed && (detailsComponent?.Selector|| detailsColumns?.length)) {\r\n<tr fd-table-row class=\"showdetails\" [attr.aria-selected]=\"isChecked\" [class.has-preview-column]=\"!!previewColumn\">\r\n <ng-container *ngTemplateOutlet=\"statusIndicator\"></ng-container>\r\n <td\r\n (click)=\"onRowCheck()\"\r\n fd-table-cell\r\n [attr.colspan]=\"\r\n columns.length +\r\n 1 +\r\n (rowIndicator ? -1 : 0) +\r\n (contextMenuItems && contextMenuItems.length > 0 ? 1 : 0) +\r\n (showViewButton ? 1 : 0) +\r\n (showDetailsInRow && !inlineEditMode ? 1 : 0)\r\n \"\r\n >\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n detailsColumnsTemplate;\r\n context: { mo: mo, inlineEditMode: inlineEditMode, layout94: layout$ | async }\r\n \"\r\n ></ng-container>\r\n @if (detailsComponent && detailsComponent.Selector) {\r\n <bnrc-dynamic-item-component\r\n [component]=\"detailsComponent\"\r\n [mo]=\"mo\"\r\n [isChecked]=\"isChecked\"\r\n [UlvMainCtrlr]=\"UlvMainCtrlr\"\r\n [setting]=\"detailsComponentSetting\"\r\n [parameters]=\"detailsComponent.Settings\"\r\n [editMode]=\"inlineEditMode\"\r\n [formSetting]=\"formSetting\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [index]=\"index\"\r\n [allColumns]=\"allColumns\"\r\n [typeDefId]=\"typeDefId\"\r\n ></bnrc-dynamic-item-component>\r\n }\r\n </td>\r\n</tr>\r\n} @if(previewColumn){\r\n<tr\r\n #trEl\r\n fd-table-row\r\n [secondary]=\"true\"\r\n class=\"preview-column\"\r\n [class.no-edit-mode]=\"!inlineEditMode\"\r\n [applyConditionalFormats]=\"conditionalFormats\"\r\n [styleIndex]=\"styleIndex\"\r\n [hostEl]=\"trEl\"\r\n [attr.aria-selected]=\"isChecked && !inlineEditMode ? true : false\"\r\n [style.background-color]=\"isOdd && !isChecked ? 'var(--sapList_Hover_Background)' : null\"\r\n>\r\n <ng-container *ngTemplateOutlet=\"statusIndicator\"></ng-container>\r\n\r\n <td\r\n fd-table-cell\r\n [attr.colspan]=\"\r\n columns.length +\r\n 1 +\r\n (rowIndicator ? -1 : 0) +\r\n (contextMenuItems && contextMenuItems.length > 0 ? 1 : 0) +\r\n (showViewButton ? 1 : 0) +\r\n (showDetailsInRow && !inlineEditMode ? 1 : 0)\r\n \"\r\n (click)=\"onRowCheck()\"\r\n >\r\n <div style=\"display: flex; flex-direction: column\">\r\n <p\r\n #pEl\r\n fd-table-text\r\n [applyConditionalFormats]=\"conditionalFormats\"\r\n [hostEl]=\"pEl\"\r\n [styleIndex]=\"styleIndex\"\r\n [dbName]=\"previewColumn.Name\"\r\n style=\"color: var(--sapAccentColor6)\"\r\n >\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: previewColumn,\r\n mo: mo,\r\n index: columns.length,\r\n inlineEditMode: inlineEditMode,\r\n layout94: layout$ | async\r\n }\r\n \"\r\n ></ng-container>\r\n </p>\r\n </div>\r\n </td>\r\n</tr>\r\n} @if(isLastChildGroup && groupSummary){\r\n<tr #trEl fd-table-row class=\"group-summary-row\" [class.no-edit-mode]=\"true\" [attr.aria-selected]=\"false\">\r\n <ng-container *ngTemplateOutlet=\"statusIndicator\"></ng-container>\r\n @if (!isCheckList) {\r\n <td fd-table-cell class=\"single-select\"></td>\r\n } @for (column of columns; track _trackByColumn(columnIndex, column); let columnIndex = $index) {\r\n <td fd-table-cell>\r\n <label #summaryRef>{{ reCalculateColumnSummary(summaryRef, column) }}</label>\r\n </td>\r\n } @if (contextMenuItems.length) {\r\n <td class=\"col-context-menu\" fd-table-cell></td>\r\n } @if (showDetailsInRow && (!inlineEditMode || !allowInlineEdit)) {\r\n <td class=\"col-details\" fd-table-cell [fitContent]=\"true\"></td>\r\n } @if (actionList?.length && !inlineEditMode) {\r\n <td class=\"col-view\" fd-table-cell [fitContent]=\"true\"></td>\r\n }\r\n</tr>\r\n} @if (bruleActionMessage() && inlineEditMode) {\r\n<tr fd-table-row>\r\n <ng-container *ngTemplateOutlet=\"statusIndicator\"></ng-container>\r\n <td\r\n fd-table-cell\r\n [attr.colspan]=\"\r\n columns.length +\r\n 1 +\r\n (rowIndicator ? -1 : 0) +\r\n (contextMenuItems && contextMenuItems.length > 0 ? 1 : 0) +\r\n (showViewButton ? 1 : 0) +\r\n (showDetailsInRow && !inlineEditMode ? 1 : 0)\r\n \"\r\n >\r\n @if (bruleActionMessage()?.MessageType === 2) {\r\n <fd-message-strip\r\n [type]=\"bruleActionMessage()?.MessageType === 2 ? 'error' : 'information'\"\r\n [dismissible]=\"false\"\r\n >\r\n {{ bruleActionMessage()?.MessageExpression }}\r\n </fd-message-strip>\r\n }\r\n </td>\r\n</tr>\r\n} @if (workflowState()?.state === 'Finish' && workflowState()?.error) {\r\n<tr fd-table-row>\r\n <ng-container *ngTemplateOutlet=\"statusIndicator\"></ng-container>\r\n <td\r\n fd-table-cell\r\n [attr.colspan]=\"\r\n columns.length +\r\n 1 +\r\n (rowIndicator ? -1 : 0) +\r\n (contextMenuItems && contextMenuItems.length > 0 ? 1 : 0) +\r\n (showViewButton ? 1 : 0) +\r\n (showDetailsInRow && !inlineEditMode ? 1 : 0)\r\n \"\r\n >\r\n <fd-message-strip type=\"error\" [dismissible]=\"true\" (onDismiss)=\"onResetWorkflowState()\">\r\n {{ workflowState()?.error?.Text || workflowState()?.error?.MessageExpression }}\r\n </fd-message-strip>\r\n </td>\r\n</tr>\r\n}\r\n<ng-template #detailsColumnsTemplate let-mo=\"mo\" let-inlineEditMode=\"inlineEditMode\" let-layout94=\"layout94\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n detailsFormItems;\r\n context: {\r\n $implicit: detailsColumns,\r\n mo: this.mo,\r\n inlineEditMode: this.inlineEditMode,\r\n layout94: layout94\r\n }\r\n \"\r\n ></ng-container>\r\n</ng-template>\r\n<ng-template\r\n #detailsFormItems\r\n let-detailsColumns\r\n let-mo=\"mo\"\r\n let-inlineEditMode=\"inlineEditMode\"\r\n let-layout94=\"layout94\"\r\n>\r\n <div class=\"form-items\">\r\n @for (column of detailsColumns; track column; let columnIndex = $index) {\r\n <div fd-form-item>\r\n <label fd-form-label for=\"input-2\">{{ column.Caption }}</label>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: column,\r\n mo: mo,\r\n index: columnIndex,\r\n inlineEditMode: inlineEditMode,\r\n layout94: layout94\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n }\r\n </div>\r\n</ng-template>\r\n<ng-template\r\n #columnTemplate\r\n let-column\r\n let-mo=\"mo\"\r\n let-index=\"index\"\r\n let-inlineEditMode=\"inlineEditMode\"\r\n let-layout94=\"layout94\"\r\n>\r\n <bsu-barsa-table-column\r\n [mo]=\"mo\"\r\n [allColumns]=\"allColumns\"\r\n [column]=\"column\"\r\n [attachmentViewType]=\"attachmentViewType\"\r\n [isdirty]=\"dirtyColumns && dirtyColumns[column.Name]\"\r\n [value]=\"column | columnValue: mo\"\r\n [icon]=\"column | columnIcon: mo\"\r\n [customComponent]=\"column.$CustomComponent\"\r\n [column]=\"column\"\r\n [disableEllapsis]=\"secondaryColumns?.length || disableEllapsis\"\r\n [editMode]=\"(isChecked || inlineEditWithoutSelection) && inlineEditMode && allowInlineEdit\"\r\n [inlineEditMode]=\"inlineEditMode\"\r\n [isChecked]=\"isChecked === true\"\r\n [index]=\"index\"\r\n [formSetting]=\"formSetting\"\r\n [rtl]=\"rtl\"\r\n [isMobile]=\"isMobile\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [layout94]=\"layout94\"\r\n (save)=\"onEditFormPanelSave(null)\"\r\n (cancel)=\"onEditFormPanelCancel(null)\"\r\n (tab)=\"onTabKeyDown($event, index)\"\r\n (changeToEditMode)=\"onColumnChangeToEditMode($event, index)\"\r\n >\r\n </bsu-barsa-table-column>\r\n</ng-template>\r\n<ng-template #statusIndicator>\r\n @if (rowIndicator) {\r\n <bsu-barsa-column-indicator [hideBorderBottom]=\"!detailsCollapsed\" [backColor]=\"rowIndicatorColor\">\r\n </bsu-barsa-column-indicator>\r\n }\r\n</ng-template>\r\n<ng-template #rowNumberTemplate>\r\n @if (showRowNumber) {\r\n <td fd-table-cell bsu-barsa-column-rownumber [rowNumber]=\"rowNumber\" (click)=\"!isCheckList && onRowCheck()\"></td>\r\n }\r\n</ng-template>\r\n<tr fd-table-row style=\"pointer-events: none\"></tr>\r\n", styles: [":host{display:contents;width:100%}:host bnrc-form.cartable-template ::ng-deep bsu-ly-layout-container-of-root{padding-bottom:1rem}:host.has-preview-column .secondary-row td{border-bottom:none}:host ::ng-deep .row-group.mobile-mode{border-bottom:var(--sapList_BorderWidth, .0625rem) solid var(--sapList_BorderColor, #e4e4e4)!important}:host ::ng-deep .inlineEditMode bnrc-field-ui{padding:0;margin:0}:host ::ng-deep .inlineEditMode bsu-ui-simple-combo{margin:0!important}:host ::ng-deep .secondary.p-wrapper p{display:flex;align-items:center}bsu-layout-control:not(.hide-form-item){align-items:center;height:100%;min-width:auto;width:auto}tr.group-summary-row td{border:none;background-color:#dde5f0;border-right:none!important;font-weight:700}tr.group-summary-row td label{font-weight:700}tr.group-summary-row td label.NaN{display:none}td{vertical-align:middle}td.control-readonly{background-color:var(--sapList_HeaderBackground)}tr.brule-message td{border:0}.row-group{background-color:var(--sapBackgroundColor, \"#f7f7ff\")}.cell-expand{cursor:pointer;display:inline-flex;justify-content:center;align-items:center;font-size:.75rem;color:#0854a0;color:var(--sapContent_IconColor, #0854a0);min-width:2rem;max-width:2rem}.save-error{color:var(--sapField_InvalidColor)}.save-success{color:var(--sapField_SuccessColor)}.flow{max-width:100%}.flow-item{display:flex}.flow-item fd-micro-process-flow-icon{width:1.375rem;height:1.375rem}.flow-item h5{padding-right:.3rem}.cartable-template{padding:.5rem 0}.workflow-pending{opacity:.5;pointer-events:none;position:relative}.detailCollapsed{height:0;display:none}tr td.rep-column:first-child{position:sticky;right:0}tr:not([aria-selected=true]).preview-column td{border-bottom:var(--sapList_BorderWidth) var(--fdTable_Cell_Horizontal_Border_Style, solid) var(--sapList_BorderColor)}tr[aria-selected=true].has-preview-column td,tr.showdetails-on.hasCartable td,tr.showdetails-on.hasForm td{border-bottom:none}\n"], dependencies: [{ kind: "directive", type: i1$2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2.FormComponent, selector: "bnrc-form", inputs: ["params", "customFormPanelUi", "formPanelCtrl", "UlvMainCtrlr", "formPanelCtrlId", "saveOnChange", "inlineEditInReport"], outputs: ["titleChanged", "moChanged", "formClose", "uiComponent", "formRendered", "bruleAction", "beforeTransition", "afterTransition"] }, { kind: "component", type: i2.DynamicItemComponent, selector: "bnrc-dynamic-item-component", inputs: ["mo", "allColumns", "moDataList", "columns", "column", "index", "last", "hideOpenIcon", "deviceName", "deviceSize", "rtl", "editMode", "setting", "parameters", "contextMenuItems", "canView", "showRowNumber", "rowNumber", "formSetting", "conditionalFormats", "disableOverflowContextMenu", "navigationArrow", "isCheckList", "fields", "isChecked", "layout94$", "inlineEditMode", "isNewInlineMo", "allowInlineEdit", "typeDefId", "rowIndicator", "rowIndicatorColor", "UlvMainCtrlr"] }, { kind: "directive", type: i2.FormCloseDirective, selector: "[formClose]", inputs: ["isMobile"] }, { kind: "component", type: i5$3.BusyIndicatorComponent, selector: "fd-busy-indicator", inputs: ["loading", "size", "block", "ariaLabel", "title", "label", "ariaLive"] }, { kind: "component", type: i3$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i5.CheckboxComponent, selector: "fd-checkbox", inputs: ["wrapLabel", "valignLabel", "ariaLabel", "role", "value", "ariaLabelledBy", "ariaDescribedBy", "title", "inputId", "state", "name", "label", "disabled", "readonly", "tristate", "tristateSelectable", "labelClass", "required", "displayOnly", "values", "standalone"], outputs: ["focusChange"] }, { kind: "component", type: i2$1.FormItemComponent, selector: "[fd-form-item]", inputs: ["isInline", "horizontal"] }, { kind: "component", type: i2$1.FormLabelComponent, selector: "[fd-form-label]", inputs: ["required", "colon", "alignLabelEnd", "inlineHelpContent", "inlineHelpGlyph", "inlineHelpTriggers", "inlineHelpBodyPlacement", "inlineHelpPlacement", "allowWrap", "inlineHelpLabel", "id"] }, { kind: "component", type: i3.IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "color", "background", "class", "ariaLabel", "ariaHidden"] }, { kind: "component", type: i2$5.MessageStripComponent, selector: "fd-message-strip", inputs: ["class", "dismissible", "noIcon", "type", "id", "ariaLabelledBy", "ariaLabel", "width", "minWidth", "marginBottom", "indicationColor"], outputs: ["onDismiss"] }, { kind: "directive", type: i3$3.TableRowDirective, selector: "[fdTableRow], [fd-table-row]", inputs: ["activable", "highlightActive", "hoverable", "focusable", "main", "secondary", "active"] }, { kind: "directive", type: i3$3.TableCellDirective, selector: "[fdTableCell], [fd-table-cell]", inputs: ["noBorderX", "noBorderY", "activable", "focusable", "hoverable", "fitContent", "noPadding", "noData", "nonInteractive", "key"] }, { kind: "directive", type: i3$3.TableTextDirective, selector: "[fdTableText], [fd-table-text]", inputs: ["fdTableTextClass", "noWrap", "title", "maxWidth"] }, { kind: "component", type: MaskComponent, selector: "bsu-mask", inputs: ["size", "top"] }, { kind: "component", type: UlvContextMenuComponent, selector: "bsu-ulv-context-menu,[ulvContextMenu]", inputs: ["onlyOverflow", "rightClickEnable", "deviceName", "menuItems", "allColumns", "index", "mo", "styleIndex", "conditionalFormats", "disableOverflowContextMenu", "footerMode", "contextMenuOverflowText", "appendTo"], outputs: ["commandClick"] }, { kind: "component", type: BarsaTableColumnComponent, selector: "bsu-barsa-table-column", inputs: ["disableEllapsis", "fdTextMode"] }, { kind: "component", type: BarsaColumnIndicatorComponent, selector: "bsu-barsa-column-indicator", inputs: ["backColor", "hideBorderBottom"] }, { kind: "component", type: BarsaColumnRowNumberComponent, selector: "td[bsu-barsa-column-rownumber],bsu-barsa-column-rownumber", inputs: ["rowNumber"] }, { kind: "component", type: BarsaRowInlineActionlistComponent, selector: "bsu-barsa-row-inline-actionlist", inputs: ["actionList", "mo", "index"], outputs: ["btnClick"] }, { kind: "directive", type: ApplyConditionalFormatsDirective, selector: "[applyConditionalFormats]", inputs: ["applyConditionalFormats", "styleIndex", "hostEl", "dbName"] }, { kind: "pipe", type: i1$2.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: i2.ColumnIconPipe, name: "columnIcon" }, { kind: "pipe", type: i2.ColumnValuePipe, name: "columnValue" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
6121
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: BarsaTableRowComponent, selector: "bsu-barsa-table-row", inputs: { showDetailsInRow: "showDetailsInRow", previewColumn: "previewColumn", columnComponents: "columnComponents", dirtyColumns: "dirtyColumns", detailsCollapsed: "detailsCollapsed" }, outputs: { columnSummary: "columnSummary" }, providers: [FormPanelService], viewQueries: [{ propertyName: "detailsFormItems", first: true, predicate: ["detailsFormItems"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "@if ((!mo.$Parent || parentExpanded) && visibility !== false) {\r\n<tr\r\n [class.row-error]=\"hasError\"\r\n [class.showdetails-on]=\"!detailsCollapsed && (detailsComponent?.Selector || detailsColumns?.length)\"\r\n [class.hasForm]=\"formSetting\"\r\n [class.hasCartable]=\"!!cartableParams\"\r\n #trEl\r\n fd-table-row\r\n [activable]=\"false\"\r\n [hoverable]=\"true\"\r\n [main]=\"true\"\r\n [focusable]=\"!(inlineEditMode && allowInlineEdit)\"\r\n [applyConditionalFormats]=\"conditionalFormats\"\r\n [styleIndex]=\"styleIndex\"\r\n [hostEl]=\"trEl\"\r\n [attr.aria-selected]=\"isChecked\"\r\n [class.has-preview-column]=\"!!previewColumn\"\r\n [class.brule-message]=\"bruleActionMessage() || workflowState()?.error\"\r\n [class.workflow-pending]=\"workflowState()?.state === 'Pending'\"\r\n [style.background-color]=\"isOdd && !isChecked ? 'var(--sapList_Hover_Background)' : null\"\r\n (keydown.enter)=\"onRowCheck(true)\"\r\n>\r\n @if (mo.$Group || mo.$Group === '') {\r\n <td\r\n [style.padding-right]=\"rtl ? 'calc( 1rem + ' + level * 12 + 'px' + ' )' : 'inherit'\"\r\n [style.padding-left]=\"!rtl ? 'calc( 1rem + ' + level * 12 + 'px' + ' )' : 'inherit'\"\r\n fd-table-cell\r\n style=\"font-weight: bold; font-size: 1rem\"\r\n [attr.colspan]=\"\r\n columns.length +\r\n 1 +\r\n (rowIndicator ? -1 : 0) +\r\n (contextMenuItems && contextMenuItems.length > 0 ? 1 : 0) +\r\n (showViewButton ? 1 : 0) +\r\n (showDetailsInRow && !inlineEditMode ? 1 : 0)\r\n \"\r\n class=\"row-group\"\r\n [class.mobile-mode]=\"secondaryColumns?.length\"\r\n [attr.level]=\"level\"\r\n [class.root-group]=\"level === 0\"\r\n >\r\n <button\r\n fd-button\r\n [fdType]=\"'transparent'\"\r\n [glyph]=\"expanded !== false ? 'navigation-down-arrow' : 'navigation-left-arrow'\"\r\n class=\"cell-expand\"\r\n (click)=\"onExpandClick()\"\r\n ></button>\r\n {{ mo.$Group === 'undefined' ? '' : mo.$Group }}\r\n </td>\r\n } @else {\r\n\r\n <ng-container *ngTemplateOutlet=\"statusIndicator\"></ng-container>\r\n @if (isCheckList) {\r\n <td fd-table-cell [style.width]=\"checkboxComponent ? '60px' : null\">\r\n @if (workflowState()?.state === 'Pending') {\r\n <div style=\"position: absolute; left: 0; right: 0; bottom: 0; top: 0\">\r\n <bsu-mask [top]=\"'20px'\" [size]=\"'s'\"></bsu-mask>\r\n </div>\r\n } @if (checkboxComponent?.Selector) {\r\n <bnrc-dynamic-item-component\r\n [component]=\"checkboxComponent\"\r\n [mo]=\"mo\"\r\n [isChecked]=\"isChecked\"\r\n [UlvMainCtrlr]=\"UlvMainCtrlr\"\r\n [setting]=\"setting\"\r\n [parameters]=\"checkboxComponent.Parameters\"\r\n [editMode]=\"inlineEditMode\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [value]=\"isChecked\"\r\n [deviceSize]=\"deviceSize\"\r\n [index]=\"index\"\r\n [allColumns]=\"allColumns\"\r\n [typeDefId]=\"typeDefId\"\r\n (events)=\"onRowCheck()\"\r\n ></bnrc-dynamic-item-component>\r\n } @else {\r\n <fd-checkbox [name]=\"mo.$Caption\" [ngModel]=\"isChecked\" (ngModelChange)=\"onRowCheck()\"></fd-checkbox>\r\n }\r\n </td>\r\n } @if (!isCheckList && !showRowNumber) {\r\n <td\r\n fd-table-cell\r\n class=\"single-select\"\r\n (click)=\"!isCheckList && onRowCheck()\"\r\n style=\"padding: 0; text-align: center\"\r\n >\r\n @if (inlineEditMode && allowInlineEdit && (hasError || saving || saved)) { @if (hasError) {\r\n <fd-icon class=\"save-error\" glyph=\"error\"></fd-icon>\r\n } @if (saving) {\r\n <fd-busy-indicator [loading]=\"true\" [size]=\"'s'\" title=\"record saving\"></fd-busy-indicator>\r\n } @if (saved) {\r\n <fd-icon class=\"save-success\" glyph=\"accept\"></fd-icon>\r\n } } @else { @if (mo.$State === 'New' && !isChecked) {\r\n <fd-icon glyph=\"favorite\"></fd-icon>\r\n } @if (inlineEditMode && allowInlineEdit && isChecked) {\r\n <fd-icon glyph=\"edit\"></fd-icon>\r\n } }\r\n </td>\r\n }\r\n <ng-container *ngTemplateOutlet=\"rowNumberTemplate\"></ng-container>\r\n @for (column of columns; track column.Name; let columnIndex = $index) {\r\n <td\r\n class=\"rep-column\"\r\n [attr.dbName]=\"column.Name\"\r\n #tdEl\r\n fd-table-cell\r\n [applyConditionalFormats]=\"conditionalFormats\"\r\n [hostEl]=\"tdEl\"\r\n [styleIndex]=\"styleIndex\"\r\n [dbName]=\"column.Name\"\r\n [focusable]=\"false\"\r\n (click)=\"onColumnClick(column)\"\r\n (keydown.enter)=\"onColumnKeyEnter(column)\"\r\n (dblclick)=\"onRowClick()\"\r\n [hoverable]=\"inlineEditMode && allowInlineEdit\"\r\n [class.control-readonly]=\"column.IsReadonly\"\r\n >\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: column,\r\n mo: mo,\r\n index: columnIndex,\r\n inlineEditMode: inlineEditMode,\r\n layout94: layout$ | async\r\n }\r\n \"\r\n ></ng-container>\r\n </td>\r\n } @if (contextMenuItems.length ) {\r\n <td class=\"col-context-menu\" fd-table-cell>\r\n <bsu-ulv-context-menu\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [styleIndex]=\"styleIndex\"\r\n [mo]=\"mo\"\r\n [index]=\"index\"\r\n (commandClick)=\"onUlvCommand()\"\r\n [deviceName]=\"deviceName\"\r\n [menuItems]=\"contextMenuItems\"\r\n [allColumns]=\"allColumns\"\r\n ></bsu-ulv-context-menu>\r\n </td>\r\n } @if (showDetailsInRow && (!inlineEditMode || !allowInlineEdit)) {\r\n <td class=\"col-details\" fd-table-cell [fitContent]=\"true\">\r\n @if ((detailsComponent?.Selector || detailsColumns?.length || cartableParams?.moId ) && !hideDetailsText) {\r\n <div class=\"tw-flex tw-justify-end tw-w-full\">\r\n <button\r\n fd-button\r\n [label]=\"(detailsCollapsed ? detailsText : 'Hide') | bbbTranslate\"\r\n [fdType]=\"'transparent'\"\r\n (click)=\"onRowDetails()\"\r\n ></button>\r\n </div>\r\n }\r\n </td>\r\n } @if (actionList?.length && !inlineEditMode) {\r\n <td class=\"col-view\" [class.rtl]=\"rtl\" fd-table-cell [fitContent]=\"true\">\r\n <bsu-barsa-row-inline-actionlist\r\n [actionList]=\"actionList\"\r\n (btnClick)=\"actionListClick.emit($event)\"\r\n ></bsu-barsa-row-inline-actionlist>\r\n </td>\r\n } }\r\n</tr>\r\n} @if (secondaryColumns?.length && !mo.$Group && (!mo.$Parent || parentExpanded) && visibility !== false) {\r\n<tr\r\n #trEl\r\n fd-table-row\r\n [secondary]=\"true\"\r\n class=\"secondary-row\"\r\n [class.no-edit-mode]=\"!inlineEditMode\"\r\n [applyConditionalFormats]=\"conditionalFormats\"\r\n [styleIndex]=\"styleIndex\"\r\n [hostEl]=\"trEl\"\r\n [attr.aria-selected]=\"isChecked && !inlineEditMode ? true : false\"\r\n [style.background-color]=\"isOdd && !isChecked ? 'var(--sapList_Hover_Background)' : null\"\r\n>\r\n <ng-container *ngTemplateOutlet=\"statusIndicator\"></ng-container>\r\n @if (!isCheckList) {\r\n <td fd-table-cell class=\"single-select\" (click)=\"onRowCheck()\"></td>\r\n }\r\n <td fd-table-cell colspan=\"100%\" (click)=\"onRowCheck()\" class=\"secondary p-wrapper\">\r\n <div style=\"display: flex; flex-direction: column\">\r\n @for (column of secondaryColumns; track _trackByColumn(columnIndex, column); let columnIndex = $index) {\r\n <p\r\n #pEl\r\n fd-table-text\r\n [applyConditionalFormats]=\"conditionalFormats\"\r\n [hostEl]=\"pEl\"\r\n [styleIndex]=\"styleIndex\"\r\n [dbName]=\"column.Name\"\r\n style=\"font-family: 'B-Font Medium'\"\r\n >\r\n <label fd-form-label>{{ column.Caption }} :</label>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: column,\r\n mo: mo,\r\n index: columnIndex,\r\n inlineEditMode: inlineEditMode,\r\n layout94: layout$ | async\r\n }\r\n \"\r\n ></ng-container>\r\n </p>\r\n }\r\n </div>\r\n </td>\r\n</tr>\r\n} @if (cartableParams?.moId) {\r\n<tr\r\n [class.detailCollapsed]=\"detailsCollapsed\"\r\n fd-table-row\r\n class=\"showdetails cartable\"\r\n [attr.aria-selected]=\"isChecked\"\r\n [class.has-preview-column]=\"!!previewColumn\"\r\n [style.background-color]=\"isOdd && !isChecked ? 'var(--sapList_Hover_Background)' : null\"\r\n>\r\n <ng-container *ngTemplateOutlet=\"statusIndicator\"></ng-container>\r\n <td\r\n (click)=\"onRowCheck()\"\r\n fd-table-cell\r\n [attr.colspan]=\"\r\n columns.length +\r\n 1 +\r\n (rowIndicator ? 1 : 0) +\r\n (contextMenuItems && contextMenuItems.length > 0 ? 1 : 0) +\r\n (showViewButton ? 1 : 0) +\r\n (showDetailsInRow && !inlineEditMode ? 1 : 0)\r\n \"\r\n >\r\n <ng-container>\r\n <bnrc-form\r\n #cartableFormRef\r\n class=\"cartable-template\"\r\n [inlineEditInReport]=\"true\"\r\n [params]=\"cartableParams\"\r\n (beforeTransition)=\"onCartableBeforeTansition()\"\r\n (afterTransition)=\"onCartableAfterTansition($event)\"\r\n (bruleAction)=\"onCartableBruleAction($event)\"\r\n (click)=\"OnCartableFormClick($event)\"\r\n (formClose)=\"onCartableFormClosed()\"\r\n ></bnrc-form>\r\n </ng-container>\r\n </td>\r\n</tr>\r\n} @if (!detailsCollapsed && (detailsComponent?.Selector|| detailsColumns?.length)) {\r\n<tr fd-table-row class=\"showdetails\" [attr.aria-selected]=\"isChecked\" [class.has-preview-column]=\"!!previewColumn\">\r\n <ng-container *ngTemplateOutlet=\"statusIndicator\"></ng-container>\r\n <td\r\n (click)=\"onRowCheck()\"\r\n fd-table-cell\r\n [attr.colspan]=\"\r\n columns.length +\r\n 1 +\r\n (rowIndicator ? -1 : 0) +\r\n (contextMenuItems && contextMenuItems.length > 0 ? 1 : 0) +\r\n (showViewButton ? 1 : 0) +\r\n (showDetailsInRow && !inlineEditMode ? 1 : 0)\r\n \"\r\n >\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n detailsColumnsTemplate;\r\n context: { mo: mo, inlineEditMode: inlineEditMode, layout94: layout$ | async }\r\n \"\r\n ></ng-container>\r\n @if (detailsComponent && detailsComponent.Selector) {\r\n <bnrc-dynamic-item-component\r\n [component]=\"detailsComponent\"\r\n [mo]=\"mo\"\r\n [isChecked]=\"isChecked\"\r\n [UlvMainCtrlr]=\"UlvMainCtrlr\"\r\n [setting]=\"detailsComponentSetting\"\r\n [parameters]=\"detailsComponent.Settings\"\r\n [editMode]=\"inlineEditMode\"\r\n [formSetting]=\"formSetting\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [index]=\"index\"\r\n [allColumns]=\"allColumns\"\r\n [typeDefId]=\"typeDefId\"\r\n ></bnrc-dynamic-item-component>\r\n }\r\n </td>\r\n</tr>\r\n} @if(previewColumn){\r\n<tr\r\n #trEl\r\n fd-table-row\r\n [secondary]=\"true\"\r\n class=\"preview-column\"\r\n [class.no-edit-mode]=\"!inlineEditMode\"\r\n [applyConditionalFormats]=\"conditionalFormats\"\r\n [styleIndex]=\"styleIndex\"\r\n [hostEl]=\"trEl\"\r\n [attr.aria-selected]=\"isChecked && !inlineEditMode ? true : false\"\r\n [style.background-color]=\"isOdd && !isChecked ? 'var(--sapList_Hover_Background)' : null\"\r\n>\r\n <ng-container *ngTemplateOutlet=\"statusIndicator\"></ng-container>\r\n\r\n <td\r\n fd-table-cell\r\n [attr.colspan]=\"\r\n columns.length +\r\n 1 +\r\n (rowIndicator ? -1 : 0) +\r\n (contextMenuItems && contextMenuItems.length > 0 ? 1 : 0) +\r\n (showViewButton ? 1 : 0) +\r\n (showDetailsInRow && !inlineEditMode ? 1 : 0)\r\n \"\r\n (click)=\"onRowCheck()\"\r\n >\r\n <div style=\"display: flex; flex-direction: column\">\r\n <p\r\n #pEl\r\n fd-table-text\r\n [applyConditionalFormats]=\"conditionalFormats\"\r\n [hostEl]=\"pEl\"\r\n [styleIndex]=\"styleIndex\"\r\n [dbName]=\"previewColumn.Name\"\r\n style=\"color: var(--sapAccentColor6)\"\r\n >\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: previewColumn,\r\n mo: mo,\r\n index: columns.length,\r\n inlineEditMode: inlineEditMode,\r\n layout94: layout$ | async\r\n }\r\n \"\r\n ></ng-container>\r\n </p>\r\n </div>\r\n </td>\r\n</tr>\r\n} @if(isLastChildGroup && groupSummary){\r\n<tr #trEl fd-table-row class=\"group-summary-row\" [class.no-edit-mode]=\"true\" [attr.aria-selected]=\"false\">\r\n <ng-container *ngTemplateOutlet=\"statusIndicator\"></ng-container>\r\n @if (!isCheckList) {\r\n <td fd-table-cell class=\"single-select\"></td>\r\n } @for (column of columns; track _trackByColumn(columnIndex, column); let columnIndex = $index) {\r\n <td fd-table-cell>\r\n <label #summaryRef>{{ reCalculateColumnSummary(summaryRef, column) }}</label>\r\n </td>\r\n } @if (contextMenuItems.length) {\r\n <td class=\"col-context-menu\" fd-table-cell></td>\r\n } @if (showDetailsInRow && (!inlineEditMode || !allowInlineEdit)) {\r\n <td class=\"col-details\" fd-table-cell [fitContent]=\"true\"></td>\r\n } @if (actionList?.length && !inlineEditMode) {\r\n <td class=\"col-view\" fd-table-cell [fitContent]=\"true\"></td>\r\n }\r\n</tr>\r\n} @if (bruleActionMessage() && inlineEditMode) {\r\n<tr fd-table-row>\r\n <ng-container *ngTemplateOutlet=\"statusIndicator\"></ng-container>\r\n <td\r\n fd-table-cell\r\n [attr.colspan]=\"\r\n columns.length +\r\n 1 +\r\n (rowIndicator ? -1 : 0) +\r\n (contextMenuItems && contextMenuItems.length > 0 ? 1 : 0) +\r\n (showViewButton ? 1 : 0) +\r\n (showDetailsInRow && !inlineEditMode ? 1 : 0)\r\n \"\r\n >\r\n @if (bruleActionMessage()?.MessageType === 2) {\r\n <fd-message-strip\r\n [type]=\"bruleActionMessage()?.MessageType === 2 ? 'error' : 'information'\"\r\n [dismissible]=\"false\"\r\n >\r\n {{ bruleActionMessage()?.MessageExpression }}\r\n </fd-message-strip>\r\n }\r\n </td>\r\n</tr>\r\n} @if (workflowState()?.state === 'Finish' && workflowState()?.error) {\r\n<tr fd-table-row>\r\n <ng-container *ngTemplateOutlet=\"statusIndicator\"></ng-container>\r\n <td\r\n fd-table-cell\r\n [attr.colspan]=\"\r\n columns.length +\r\n 1 +\r\n (rowIndicator ? -1 : 0) +\r\n (contextMenuItems && contextMenuItems.length > 0 ? 1 : 0) +\r\n (showViewButton ? 1 : 0) +\r\n (showDetailsInRow && !inlineEditMode ? 1 : 0)\r\n \"\r\n >\r\n <fd-message-strip type=\"error\" [dismissible]=\"true\" (onDismiss)=\"onResetWorkflowState()\">\r\n {{ workflowState()?.error?.Text || workflowState()?.error?.MessageExpression }}\r\n </fd-message-strip>\r\n </td>\r\n</tr>\r\n}\r\n<ng-template #detailsColumnsTemplate let-mo=\"mo\" let-inlineEditMode=\"inlineEditMode\" let-layout94=\"layout94\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n detailsFormItems;\r\n context: {\r\n $implicit: detailsColumns,\r\n mo: this.mo,\r\n inlineEditMode: this.inlineEditMode,\r\n layout94: layout94\r\n }\r\n \"\r\n ></ng-container>\r\n</ng-template>\r\n<ng-template\r\n #detailsFormItems\r\n let-detailsColumns\r\n let-mo=\"mo\"\r\n let-inlineEditMode=\"inlineEditMode\"\r\n let-layout94=\"layout94\"\r\n>\r\n <div class=\"form-items\">\r\n @for (column of detailsColumns; track column; let columnIndex = $index) {\r\n <div fd-form-item>\r\n <label fd-form-label for=\"input-2\">{{ column.Caption }}</label>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: column,\r\n mo: mo,\r\n index: columnIndex,\r\n inlineEditMode: inlineEditMode,\r\n layout94: layout94\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n }\r\n </div>\r\n</ng-template>\r\n<ng-template\r\n #columnTemplate\r\n let-column\r\n let-mo=\"mo\"\r\n let-index=\"index\"\r\n let-inlineEditMode=\"inlineEditMode\"\r\n let-layout94=\"layout94\"\r\n>\r\n <bsu-barsa-table-column\r\n [mo]=\"mo\"\r\n [allColumns]=\"allColumns\"\r\n [column]=\"column\"\r\n [attachmentViewType]=\"attachmentViewType\"\r\n [isdirty]=\"dirtyColumns && dirtyColumns[column.Name]\"\r\n [value]=\"column | columnValue: mo\"\r\n [icon]=\"column | columnIcon: mo\"\r\n [customComponent]=\"column.$CustomComponent\"\r\n [column]=\"column\"\r\n [disableEllapsis]=\"secondaryColumns?.length || disableEllapsis\"\r\n [editMode]=\"(isChecked || inlineEditWithoutSelection) && inlineEditMode && allowInlineEdit\"\r\n [inlineEditMode]=\"inlineEditMode\"\r\n [isChecked]=\"isChecked === true\"\r\n [index]=\"index\"\r\n [formSetting]=\"formSetting\"\r\n [rtl]=\"rtl\"\r\n [isMobile]=\"isMobile\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [layout94]=\"layout94\"\r\n [cellEdit]=\"activeColumn() === column && isChecked\"\r\n (save)=\"onEditFormPanelSave(null)\"\r\n (cancel)=\"onEditFormPanelCancel(null)\"\r\n (tab)=\"onTabKeyDown($event, index)\"\r\n (changeToEditMode)=\"onColumnChangeToEditMode($event, index)\"\r\n >\r\n </bsu-barsa-table-column>\r\n</ng-template>\r\n<ng-template #statusIndicator>\r\n @if (rowIndicator) {\r\n <bsu-barsa-column-indicator [hideBorderBottom]=\"!detailsCollapsed\" [backColor]=\"rowIndicatorColor\">\r\n </bsu-barsa-column-indicator>\r\n }\r\n</ng-template>\r\n<ng-template #rowNumberTemplate>\r\n @if (showRowNumber) {\r\n <td fd-table-cell bsu-barsa-column-rownumber [rowNumber]=\"rowNumber\" (click)=\"!isCheckList && onRowCheck()\"></td>\r\n }\r\n</ng-template>\r\n<tr fd-table-row style=\"pointer-events: none\"></tr>\r\n", styles: [":host{display:contents;width:100%}:host bnrc-form.cartable-template ::ng-deep bsu-ly-layout-container-of-root{padding-bottom:1rem}:host.has-preview-column .secondary-row td{border-bottom:none}:host ::ng-deep .row-group.mobile-mode{border-bottom:var(--sapList_BorderWidth, .0625rem) solid var(--sapList_BorderColor, #e4e4e4)!important}:host ::ng-deep .inlineEditMode bnrc-field-ui{padding:0;margin:0}:host ::ng-deep .inlineEditMode bsu-ui-simple-combo{margin:0!important}:host ::ng-deep .secondary.p-wrapper p{display:flex;align-items:center}bsu-layout-control:not(.hide-form-item){align-items:center;height:100%;min-width:auto;width:auto}tr.group-summary-row td{border:none;background-color:#dde5f0;border-right:none!important;font-weight:700}tr.group-summary-row td label{font-weight:700}tr.group-summary-row td label.NaN{display:none}td{vertical-align:middle}td.control-readonly{background-color:var(--sapList_HeaderBackground)}tr.brule-message td{border:0}.row-group{background-color:var(--sapBackgroundColor, \"#f7f7ff\")}.cell-expand{cursor:pointer;display:inline-flex;justify-content:center;align-items:center;font-size:.75rem;color:#0854a0;color:var(--sapContent_IconColor, #0854a0);min-width:2rem;max-width:2rem}.save-error{color:var(--sapField_InvalidColor)}.save-success{color:var(--sapField_SuccessColor)}.flow{max-width:100%}.flow-item{display:flex}.flow-item fd-micro-process-flow-icon{width:1.375rem;height:1.375rem}.flow-item h5{padding-right:.3rem}.cartable-template{padding:.5rem 0}.workflow-pending{opacity:.5;pointer-events:none;position:relative}.detailCollapsed{height:0;display:none}tr td.rep-column:first-child{position:sticky;right:0}tr:not([aria-selected=true]).preview-column td{border-bottom:var(--sapList_BorderWidth) var(--fdTable_Cell_Horizontal_Border_Style, solid) var(--sapList_BorderColor)}tr[aria-selected=true].has-preview-column td,tr.showdetails-on.hasCartable td,tr.showdetails-on.hasForm td{border-bottom:none}\n"], dependencies: [{ kind: "directive", type: i1$2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2.FormComponent, selector: "bnrc-form", inputs: ["params", "customFormPanelUi", "formPanelCtrl", "UlvMainCtrlr", "formPanelCtrlId", "saveOnChange", "inlineEditInReport"], outputs: ["titleChanged", "moChanged", "formClose", "uiComponent", "formRendered", "bruleAction", "beforeTransition", "afterTransition"] }, { kind: "component", type: i2.DynamicItemComponent, selector: "bnrc-dynamic-item-component", inputs: ["mo", "allColumns", "moDataList", "columns", "column", "index", "last", "hideOpenIcon", "deviceName", "deviceSize", "rtl", "editMode", "setting", "parameters", "contextMenuItems", "canView", "showRowNumber", "rowNumber", "formSetting", "conditionalFormats", "disableOverflowContextMenu", "navigationArrow", "isCheckList", "fields", "isChecked", "layout94$", "inlineEditMode", "isNewInlineMo", "allowInlineEdit", "typeDefId", "rowIndicator", "rowIndicatorColor", "UlvMainCtrlr"] }, { kind: "directive", type: i2.FormCloseDirective, selector: "[formClose]", inputs: ["isMobile"] }, { kind: "component", type: i5$3.BusyIndicatorComponent, selector: "fd-busy-indicator", inputs: ["loading", "size", "block", "ariaLabel", "title", "label", "ariaLive"] }, { kind: "component", type: i3$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i5.CheckboxComponent, selector: "fd-checkbox", inputs: ["wrapLabel", "valignLabel", "ariaLabel", "role", "value", "ariaLabelledBy", "ariaDescribedBy", "title", "inputId", "state", "name", "label", "disabled", "readonly", "tristate", "tristateSelectable", "labelClass", "required", "displayOnly", "values", "standalone"], outputs: ["focusChange"] }, { kind: "component", type: i2$1.FormItemComponent, selector: "[fd-form-item]", inputs: ["isInline", "horizontal"] }, { kind: "component", type: i2$1.FormLabelComponent, selector: "[fd-form-label]", inputs: ["required", "colon", "alignLabelEnd", "inlineHelpContent", "inlineHelpGlyph", "inlineHelpTriggers", "inlineHelpBodyPlacement", "inlineHelpPlacement", "allowWrap", "inlineHelpLabel", "id"] }, { kind: "component", type: i3.IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "color", "background", "class", "ariaLabel", "ariaHidden"] }, { kind: "component", type: i2$5.MessageStripComponent, selector: "fd-message-strip", inputs: ["class", "dismissible", "noIcon", "type", "id", "ariaLabelledBy", "ariaLabel", "width", "minWidth", "marginBottom", "indicationColor"], outputs: ["onDismiss"] }, { kind: "directive", type: i3$3.TableRowDirective, selector: "[fdTableRow], [fd-table-row]", inputs: ["activable", "highlightActive", "hoverable", "focusable", "main", "secondary", "active"] }, { kind: "directive", type: i3$3.TableCellDirective, selector: "[fdTableCell], [fd-table-cell]", inputs: ["noBorderX", "noBorderY", "activable", "focusable", "hoverable", "fitContent", "noPadding", "noData", "nonInteractive", "key"] }, { kind: "directive", type: i3$3.TableTextDirective, selector: "[fdTableText], [fd-table-text]", inputs: ["fdTableTextClass", "noWrap", "title", "maxWidth"] }, { kind: "component", type: MaskComponent, selector: "bsu-mask", inputs: ["size", "top"] }, { kind: "component", type: UlvContextMenuComponent, selector: "bsu-ulv-context-menu,[ulvContextMenu]", inputs: ["onlyOverflow", "rightClickEnable", "deviceName", "menuItems", "allColumns", "index", "mo", "styleIndex", "conditionalFormats", "disableOverflowContextMenu", "footerMode", "contextMenuOverflowText", "appendTo"], outputs: ["commandClick"] }, { kind: "component", type: BarsaTableColumnComponent, selector: "bsu-barsa-table-column", inputs: ["disableEllapsis", "fdTextMode"] }, { kind: "component", type: BarsaColumnIndicatorComponent, selector: "bsu-barsa-column-indicator", inputs: ["backColor", "hideBorderBottom"] }, { kind: "component", type: BarsaColumnRowNumberComponent, selector: "td[bsu-barsa-column-rownumber],bsu-barsa-column-rownumber", inputs: ["rowNumber"] }, { kind: "component", type: BarsaRowInlineActionlistComponent, selector: "bsu-barsa-row-inline-actionlist", inputs: ["actionList", "mo", "index"], outputs: ["btnClick"] }, { kind: "directive", type: ApplyConditionalFormatsDirective, selector: "[applyConditionalFormats]", inputs: ["applyConditionalFormats", "styleIndex", "hostEl", "dbName"] }, { kind: "pipe", type: i1$2.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: i2.ColumnIconPipe, name: "columnIcon" }, { kind: "pipe", type: i2.ColumnValuePipe, name: "columnValue" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
6107
6122
  }
6108
6123
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BarsaTableRowComponent, decorators: [{
6109
6124
  type: Component,
6110
- args: [{ selector: 'bsu-barsa-table-row', providers: [FormPanelService], changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "@if ((!mo.$Parent || parentExpanded) && visibility !== false) {\r\n<tr\r\n [class.row-error]=\"hasError\"\r\n [class.showdetails-on]=\"!detailsCollapsed && (detailsComponent?.Selector || detailsColumns?.length)\"\r\n [class.hasForm]=\"formSetting\"\r\n [class.hasCartable]=\"!!cartableParams\"\r\n #trEl\r\n fd-table-row\r\n [activable]=\"false\"\r\n [hoverable]=\"true\"\r\n [main]=\"true\"\r\n [focusable]=\"true\"\r\n [applyConditionalFormats]=\"conditionalFormats\"\r\n [styleIndex]=\"styleIndex\"\r\n [hostEl]=\"trEl\"\r\n [attr.aria-selected]=\"isChecked\"\r\n [class.has-preview-column]=\"!!previewColumn\"\r\n [class.brule-message]=\"bruleActionMessage() || workflowState()?.error\"\r\n [class.workflow-pending]=\"workflowState()?.state === 'Pending'\"\r\n [style.background-color]=\"isOdd && !isChecked ? 'var(--sapList_Hover_Background)' : null\"\r\n>\r\n @if (mo.$Group || mo.$Group === '') {\r\n <td\r\n [style.padding-right]=\"rtl ? 'calc( 1rem + ' + level * 12 + 'px' + ' )' : 'inherit'\"\r\n [style.padding-left]=\"!rtl ? 'calc( 1rem + ' + level * 12 + 'px' + ' )' : 'inherit'\"\r\n fd-table-cell\r\n style=\"font-weight: bold; font-size: 1rem\"\r\n [attr.colspan]=\"\r\n columns.length +\r\n 1 +\r\n (rowIndicator ? -1 : 0) +\r\n (contextMenuItems && contextMenuItems.length > 0 ? 1 : 0) +\r\n (showViewButton ? 1 : 0) +\r\n (showDetailsInRow && !inlineEditMode ? 1 : 0)\r\n \"\r\n class=\"row-group\"\r\n [class.mobile-mode]=\"secondaryColumns?.length\"\r\n [attr.level]=\"level\"\r\n [class.root-group]=\"level === 0\"\r\n >\r\n <button\r\n fd-button\r\n [fdType]=\"'transparent'\"\r\n [glyph]=\"expanded !== false ? 'navigation-down-arrow' : 'navigation-left-arrow'\"\r\n class=\"cell-expand\"\r\n (click)=\"onExpandClick()\"\r\n ></button>\r\n {{ mo.$Group === 'undefined' ? '' : mo.$Group }}\r\n </td>\r\n } @else {\r\n\r\n <ng-container *ngTemplateOutlet=\"statusIndicator\"></ng-container>\r\n @if (isCheckList) {\r\n <td fd-table-cell [style.width]=\"checkboxComponent ? '60px' : null\">\r\n @if (workflowState()?.state === 'Pending') {\r\n <div style=\"position: absolute; left: 0; right: 0; bottom: 0; top: 0\">\r\n <bsu-mask [top]=\"'20px'\" [size]=\"'s'\"></bsu-mask>\r\n </div>\r\n } @if (checkboxComponent?.Selector) {\r\n <bnrc-dynamic-item-component\r\n [component]=\"checkboxComponent\"\r\n [mo]=\"mo\"\r\n [isChecked]=\"isChecked\"\r\n [UlvMainCtrlr]=\"UlvMainCtrlr\"\r\n [setting]=\"setting\"\r\n [parameters]=\"checkboxComponent.Parameters\"\r\n [editMode]=\"inlineEditMode\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [value]=\"isChecked\"\r\n [deviceSize]=\"deviceSize\"\r\n [index]=\"index\"\r\n [allColumns]=\"allColumns\"\r\n [typeDefId]=\"typeDefId\"\r\n (events)=\"onRowCheck()\"\r\n ></bnrc-dynamic-item-component>\r\n } @else {\r\n <fd-checkbox [name]=\"mo.$Caption\" [ngModel]=\"isChecked\" (ngModelChange)=\"onRowCheck()\"></fd-checkbox>\r\n }\r\n </td>\r\n } @if (!isCheckList && !showRowNumber) {\r\n <td\r\n fd-table-cell\r\n class=\"single-select\"\r\n (click)=\"!isCheckList && onRowCheck()\"\r\n style=\"padding: 0; text-align: center\"\r\n >\r\n @if (inlineEditMode && allowInlineEdit && (hasError || saving || saved)) { @if (hasError) {\r\n <fd-icon class=\"save-error\" glyph=\"error\"></fd-icon>\r\n } @if (saving) {\r\n <fd-busy-indicator [loading]=\"true\" [size]=\"'s'\" title=\"record saving\"></fd-busy-indicator>\r\n } @if (saved) {\r\n <fd-icon class=\"save-success\" glyph=\"accept\"></fd-icon>\r\n } } @else { @if (mo.$State === 'New' && !isChecked) {\r\n <fd-icon glyph=\"favorite\"></fd-icon>\r\n } @if (inlineEditMode && allowInlineEdit && isChecked) {\r\n <fd-icon glyph=\"edit\"></fd-icon>\r\n } }\r\n </td>\r\n }\r\n <ng-container *ngTemplateOutlet=\"rowNumberTemplate\"></ng-container>\r\n @for (column of columns; track column.Name; let columnIndex = $index) {\r\n <td\r\n class=\"rep-column\"\r\n [attr.dbName]=\"column.Name\"\r\n #tdEl\r\n fd-table-cell\r\n [applyConditionalFormats]=\"conditionalFormats\"\r\n [hostEl]=\"tdEl\"\r\n [styleIndex]=\"styleIndex\"\r\n [dbName]=\"column.Name\"\r\n [focusable]=\"false\"\r\n (click)=\"onColumnClick()\"\r\n (dblclick)=\"onRowClick()\"\r\n [hoverable]=\"inlineEditMode && allowInlineEdit\"\r\n [class.control-readonly]=\"column.IsReadonly\"\r\n >\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: column,\r\n mo: mo,\r\n index: columnIndex,\r\n inlineEditMode: inlineEditMode,\r\n layout94: layout$ | async\r\n }\r\n \"\r\n ></ng-container>\r\n </td>\r\n } @if (contextMenuItems.length ) {\r\n <td class=\"col-context-menu\" fd-table-cell>\r\n <bsu-ulv-context-menu\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [styleIndex]=\"styleIndex\"\r\n [mo]=\"mo\"\r\n [index]=\"index\"\r\n (commandClick)=\"onUlvCommand()\"\r\n [deviceName]=\"deviceName\"\r\n [menuItems]=\"contextMenuItems\"\r\n [allColumns]=\"allColumns\"\r\n ></bsu-ulv-context-menu>\r\n </td>\r\n } @if (showDetailsInRow && (!inlineEditMode || !allowInlineEdit)) {\r\n <td class=\"col-details\" fd-table-cell [fitContent]=\"true\">\r\n @if ((detailsComponent?.Selector || detailsColumns?.length || cartableParams?.moId ) && !hideDetailsText) {\r\n <div class=\"tw-flex tw-justify-end tw-w-full\">\r\n <button\r\n fd-button\r\n [label]=\"(detailsCollapsed ? detailsText : 'Hide') | bbbTranslate\"\r\n [fdType]=\"'transparent'\"\r\n (click)=\"onRowDetails()\"\r\n ></button>\r\n </div>\r\n }\r\n </td>\r\n } @if (actionList?.length && !inlineEditMode) {\r\n <td class=\"col-view\" [class.rtl]=\"rtl\" fd-table-cell [fitContent]=\"true\">\r\n <bsu-barsa-row-inline-actionlist\r\n [actionList]=\"actionList\"\r\n (btnClick)=\"actionListClick.emit($event)\"\r\n ></bsu-barsa-row-inline-actionlist>\r\n </td>\r\n } }\r\n</tr>\r\n} @if (secondaryColumns?.length && !mo.$Group && (!mo.$Parent || parentExpanded) && visibility !== false) {\r\n<tr\r\n #trEl\r\n fd-table-row\r\n [secondary]=\"true\"\r\n class=\"secondary-row\"\r\n [class.no-edit-mode]=\"!inlineEditMode\"\r\n [applyConditionalFormats]=\"conditionalFormats\"\r\n [styleIndex]=\"styleIndex\"\r\n [hostEl]=\"trEl\"\r\n [attr.aria-selected]=\"isChecked && !inlineEditMode ? true : false\"\r\n [style.background-color]=\"isOdd && !isChecked ? 'var(--sapList_Hover_Background)' : null\"\r\n>\r\n <ng-container *ngTemplateOutlet=\"statusIndicator\"></ng-container>\r\n @if (!isCheckList) {\r\n <td fd-table-cell class=\"single-select\" (click)=\"onRowCheck()\"></td>\r\n }\r\n <td fd-table-cell colspan=\"100%\" (click)=\"onRowCheck()\" class=\"secondary p-wrapper\">\r\n <div style=\"display: flex; flex-direction: column\">\r\n @for (column of secondaryColumns; track _trackByColumn(columnIndex, column); let columnIndex = $index) {\r\n <p\r\n #pEl\r\n fd-table-text\r\n [applyConditionalFormats]=\"conditionalFormats\"\r\n [hostEl]=\"pEl\"\r\n [styleIndex]=\"styleIndex\"\r\n [dbName]=\"column.Name\"\r\n style=\"font-family: 'B-Font Medium'\"\r\n >\r\n <label fd-form-label>{{ column.Caption }} :</label>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: column,\r\n mo: mo,\r\n index: columnIndex,\r\n inlineEditMode: inlineEditMode,\r\n layout94: layout$ | async\r\n }\r\n \"\r\n ></ng-container>\r\n </p>\r\n }\r\n </div>\r\n </td>\r\n</tr>\r\n} @if (cartableParams?.moId) {\r\n<tr\r\n [class.detailCollapsed]=\"detailsCollapsed\"\r\n fd-table-row\r\n class=\"showdetails cartable\"\r\n [attr.aria-selected]=\"isChecked\"\r\n [class.has-preview-column]=\"!!previewColumn\"\r\n [style.background-color]=\"isOdd && !isChecked ? 'var(--sapList_Hover_Background)' : null\"\r\n>\r\n <ng-container *ngTemplateOutlet=\"statusIndicator\"></ng-container>\r\n <td\r\n (click)=\"onRowCheck()\"\r\n fd-table-cell\r\n [attr.colspan]=\"\r\n columns.length +\r\n 1 +\r\n (rowIndicator ? 1 : 0) +\r\n (contextMenuItems && contextMenuItems.length > 0 ? 1 : 0) +\r\n (showViewButton ? 1 : 0) +\r\n (showDetailsInRow && !inlineEditMode ? 1 : 0)\r\n \"\r\n >\r\n <ng-container>\r\n <bnrc-form\r\n #cartableFormRef\r\n class=\"cartable-template\"\r\n [inlineEditInReport]=\"true\"\r\n [params]=\"cartableParams\"\r\n (beforeTransition)=\"onCartableBeforeTansition()\"\r\n (afterTransition)=\"onCartableAfterTansition($event)\"\r\n (bruleAction)=\"onCartableBruleAction($event)\"\r\n (click)=\"OnCartableFormClick($event)\"\r\n (formClose)=\"onCartableFormClosed()\"\r\n ></bnrc-form>\r\n </ng-container>\r\n </td>\r\n</tr>\r\n} @if (!detailsCollapsed && (detailsComponent?.Selector|| detailsColumns?.length)) {\r\n<tr fd-table-row class=\"showdetails\" [attr.aria-selected]=\"isChecked\" [class.has-preview-column]=\"!!previewColumn\">\r\n <ng-container *ngTemplateOutlet=\"statusIndicator\"></ng-container>\r\n <td\r\n (click)=\"onRowCheck()\"\r\n fd-table-cell\r\n [attr.colspan]=\"\r\n columns.length +\r\n 1 +\r\n (rowIndicator ? -1 : 0) +\r\n (contextMenuItems && contextMenuItems.length > 0 ? 1 : 0) +\r\n (showViewButton ? 1 : 0) +\r\n (showDetailsInRow && !inlineEditMode ? 1 : 0)\r\n \"\r\n >\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n detailsColumnsTemplate;\r\n context: { mo: mo, inlineEditMode: inlineEditMode, layout94: layout$ | async }\r\n \"\r\n ></ng-container>\r\n @if (detailsComponent && detailsComponent.Selector) {\r\n <bnrc-dynamic-item-component\r\n [component]=\"detailsComponent\"\r\n [mo]=\"mo\"\r\n [isChecked]=\"isChecked\"\r\n [UlvMainCtrlr]=\"UlvMainCtrlr\"\r\n [setting]=\"detailsComponentSetting\"\r\n [parameters]=\"detailsComponent.Settings\"\r\n [editMode]=\"inlineEditMode\"\r\n [formSetting]=\"formSetting\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [index]=\"index\"\r\n [allColumns]=\"allColumns\"\r\n [typeDefId]=\"typeDefId\"\r\n ></bnrc-dynamic-item-component>\r\n }\r\n </td>\r\n</tr>\r\n} @if(previewColumn){\r\n<tr\r\n #trEl\r\n fd-table-row\r\n [secondary]=\"true\"\r\n class=\"preview-column\"\r\n [class.no-edit-mode]=\"!inlineEditMode\"\r\n [applyConditionalFormats]=\"conditionalFormats\"\r\n [styleIndex]=\"styleIndex\"\r\n [hostEl]=\"trEl\"\r\n [attr.aria-selected]=\"isChecked && !inlineEditMode ? true : false\"\r\n [style.background-color]=\"isOdd && !isChecked ? 'var(--sapList_Hover_Background)' : null\"\r\n>\r\n <ng-container *ngTemplateOutlet=\"statusIndicator\"></ng-container>\r\n\r\n <td\r\n fd-table-cell\r\n [attr.colspan]=\"\r\n columns.length +\r\n 1 +\r\n (rowIndicator ? -1 : 0) +\r\n (contextMenuItems && contextMenuItems.length > 0 ? 1 : 0) +\r\n (showViewButton ? 1 : 0) +\r\n (showDetailsInRow && !inlineEditMode ? 1 : 0)\r\n \"\r\n (click)=\"onRowCheck()\"\r\n >\r\n <div style=\"display: flex; flex-direction: column\">\r\n <p\r\n #pEl\r\n fd-table-text\r\n [applyConditionalFormats]=\"conditionalFormats\"\r\n [hostEl]=\"pEl\"\r\n [styleIndex]=\"styleIndex\"\r\n [dbName]=\"previewColumn.Name\"\r\n style=\"color: var(--sapAccentColor6)\"\r\n >\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: previewColumn,\r\n mo: mo,\r\n index: columns.length,\r\n inlineEditMode: inlineEditMode,\r\n layout94: layout$ | async\r\n }\r\n \"\r\n ></ng-container>\r\n </p>\r\n </div>\r\n </td>\r\n</tr>\r\n} @if(isLastChildGroup && groupSummary){\r\n<tr #trEl fd-table-row class=\"group-summary-row\" [class.no-edit-mode]=\"true\" [attr.aria-selected]=\"false\">\r\n <ng-container *ngTemplateOutlet=\"statusIndicator\"></ng-container>\r\n @if (!isCheckList) {\r\n <td fd-table-cell class=\"single-select\"></td>\r\n } @for (column of columns; track _trackByColumn(columnIndex, column); let columnIndex = $index) {\r\n <td fd-table-cell>\r\n <label #summaryRef>{{ reCalculateColumnSummary(summaryRef, column) }}</label>\r\n </td>\r\n } @if (contextMenuItems.length) {\r\n <td class=\"col-context-menu\" fd-table-cell></td>\r\n } @if (showDetailsInRow && (!inlineEditMode || !allowInlineEdit)) {\r\n <td class=\"col-details\" fd-table-cell [fitContent]=\"true\"></td>\r\n } @if (actionList?.length && !inlineEditMode) {\r\n <td class=\"col-view\" fd-table-cell [fitContent]=\"true\"></td>\r\n }\r\n</tr>\r\n} @if (bruleActionMessage() && inlineEditMode) {\r\n<tr fd-table-row>\r\n <ng-container *ngTemplateOutlet=\"statusIndicator\"></ng-container>\r\n <td\r\n fd-table-cell\r\n [attr.colspan]=\"\r\n columns.length +\r\n 1 +\r\n (rowIndicator ? -1 : 0) +\r\n (contextMenuItems && contextMenuItems.length > 0 ? 1 : 0) +\r\n (showViewButton ? 1 : 0) +\r\n (showDetailsInRow && !inlineEditMode ? 1 : 0)\r\n \"\r\n >\r\n @if (bruleActionMessage()?.MessageType === 2) {\r\n <fd-message-strip\r\n [type]=\"bruleActionMessage()?.MessageType === 2 ? 'error' : 'information'\"\r\n [dismissible]=\"false\"\r\n >\r\n {{ bruleActionMessage()?.MessageExpression }}\r\n </fd-message-strip>\r\n }\r\n </td>\r\n</tr>\r\n} @if (workflowState()?.state === 'Finish' && workflowState()?.error) {\r\n<tr fd-table-row>\r\n <ng-container *ngTemplateOutlet=\"statusIndicator\"></ng-container>\r\n <td\r\n fd-table-cell\r\n [attr.colspan]=\"\r\n columns.length +\r\n 1 +\r\n (rowIndicator ? -1 : 0) +\r\n (contextMenuItems && contextMenuItems.length > 0 ? 1 : 0) +\r\n (showViewButton ? 1 : 0) +\r\n (showDetailsInRow && !inlineEditMode ? 1 : 0)\r\n \"\r\n >\r\n <fd-message-strip type=\"error\" [dismissible]=\"true\" (onDismiss)=\"onResetWorkflowState()\">\r\n {{ workflowState()?.error?.Text || workflowState()?.error?.MessageExpression }}\r\n </fd-message-strip>\r\n </td>\r\n</tr>\r\n}\r\n<ng-template #detailsColumnsTemplate let-mo=\"mo\" let-inlineEditMode=\"inlineEditMode\" let-layout94=\"layout94\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n detailsFormItems;\r\n context: {\r\n $implicit: detailsColumns,\r\n mo: this.mo,\r\n inlineEditMode: this.inlineEditMode,\r\n layout94: layout94\r\n }\r\n \"\r\n ></ng-container>\r\n</ng-template>\r\n<ng-template\r\n #detailsFormItems\r\n let-detailsColumns\r\n let-mo=\"mo\"\r\n let-inlineEditMode=\"inlineEditMode\"\r\n let-layout94=\"layout94\"\r\n>\r\n <div class=\"form-items\">\r\n @for (column of detailsColumns; track column; let columnIndex = $index) {\r\n <div fd-form-item>\r\n <label fd-form-label for=\"input-2\">{{ column.Caption }}</label>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: column,\r\n mo: mo,\r\n index: columnIndex,\r\n inlineEditMode: inlineEditMode,\r\n layout94: layout94\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n }\r\n </div>\r\n</ng-template>\r\n<ng-template\r\n #columnTemplate\r\n let-column\r\n let-mo=\"mo\"\r\n let-index=\"index\"\r\n let-inlineEditMode=\"inlineEditMode\"\r\n let-layout94=\"layout94\"\r\n>\r\n <bsu-barsa-table-column\r\n [mo]=\"mo\"\r\n [allColumns]=\"allColumns\"\r\n [column]=\"column\"\r\n [attachmentViewType]=\"attachmentViewType\"\r\n [isdirty]=\"dirtyColumns && dirtyColumns[column.Name]\"\r\n [value]=\"column | columnValue: mo\"\r\n [icon]=\"column | columnIcon: mo\"\r\n [customComponent]=\"column.$CustomComponent\"\r\n [column]=\"column\"\r\n [disableEllapsis]=\"secondaryColumns?.length || disableEllapsis\"\r\n [editMode]=\"(isChecked || inlineEditWithoutSelection) && inlineEditMode && allowInlineEdit\"\r\n [inlineEditMode]=\"inlineEditMode\"\r\n [isChecked]=\"isChecked === true\"\r\n [index]=\"index\"\r\n [formSetting]=\"formSetting\"\r\n [rtl]=\"rtl\"\r\n [isMobile]=\"isMobile\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [layout94]=\"layout94\"\r\n (save)=\"onEditFormPanelSave(null)\"\r\n (cancel)=\"onEditFormPanelCancel(null)\"\r\n (tab)=\"onTabKeyDown($event, index)\"\r\n (changeToEditMode)=\"onColumnChangeToEditMode($event, index)\"\r\n >\r\n </bsu-barsa-table-column>\r\n</ng-template>\r\n<ng-template #statusIndicator>\r\n @if (rowIndicator) {\r\n <bsu-barsa-column-indicator [hideBorderBottom]=\"!detailsCollapsed\" [backColor]=\"rowIndicatorColor\">\r\n </bsu-barsa-column-indicator>\r\n }\r\n</ng-template>\r\n<ng-template #rowNumberTemplate>\r\n @if (showRowNumber) {\r\n <td fd-table-cell bsu-barsa-column-rownumber [rowNumber]=\"rowNumber\" (click)=\"!isCheckList && onRowCheck()\"></td>\r\n }\r\n</ng-template>\r\n<tr fd-table-row style=\"pointer-events: none\"></tr>\r\n", styles: [":host{display:contents;width:100%}:host bnrc-form.cartable-template ::ng-deep bsu-ly-layout-container-of-root{padding-bottom:1rem}:host.has-preview-column .secondary-row td{border-bottom:none}:host ::ng-deep .row-group.mobile-mode{border-bottom:var(--sapList_BorderWidth, .0625rem) solid var(--sapList_BorderColor, #e4e4e4)!important}:host ::ng-deep .inlineEditMode bnrc-field-ui{padding:0;margin:0}:host ::ng-deep .inlineEditMode bsu-ui-simple-combo{margin:0!important}:host ::ng-deep .secondary.p-wrapper p{display:flex;align-items:center}bsu-layout-control:not(.hide-form-item){align-items:center;height:100%;min-width:auto;width:auto}tr.group-summary-row td{border:none;background-color:#dde5f0;border-right:none!important;font-weight:700}tr.group-summary-row td label{font-weight:700}tr.group-summary-row td label.NaN{display:none}td{vertical-align:middle}td.control-readonly{background-color:var(--sapList_HeaderBackground)}tr.brule-message td{border:0}.row-group{background-color:var(--sapBackgroundColor, \"#f7f7ff\")}.cell-expand{cursor:pointer;display:inline-flex;justify-content:center;align-items:center;font-size:.75rem;color:#0854a0;color:var(--sapContent_IconColor, #0854a0);min-width:2rem;max-width:2rem}.save-error{color:var(--sapField_InvalidColor)}.save-success{color:var(--sapField_SuccessColor)}.flow{max-width:100%}.flow-item{display:flex}.flow-item fd-micro-process-flow-icon{width:1.375rem;height:1.375rem}.flow-item h5{padding-right:.3rem}.cartable-template{padding:.5rem 0}.workflow-pending{opacity:.5;pointer-events:none;position:relative}.detailCollapsed{height:0;display:none}tr td.rep-column:first-child{position:sticky;right:0}tr:not([aria-selected=true]).preview-column td{border-bottom:var(--sapList_BorderWidth) var(--fdTable_Cell_Horizontal_Border_Style, solid) var(--sapList_BorderColor)}tr[aria-selected=true].has-preview-column td,tr.showdetails-on.hasCartable td,tr.showdetails-on.hasForm td{border-bottom:none}\n"] }]
6125
+ args: [{ selector: 'bsu-barsa-table-row', providers: [FormPanelService], changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "@if ((!mo.$Parent || parentExpanded) && visibility !== false) {\r\n<tr\r\n [class.row-error]=\"hasError\"\r\n [class.showdetails-on]=\"!detailsCollapsed && (detailsComponent?.Selector || detailsColumns?.length)\"\r\n [class.hasForm]=\"formSetting\"\r\n [class.hasCartable]=\"!!cartableParams\"\r\n #trEl\r\n fd-table-row\r\n [activable]=\"false\"\r\n [hoverable]=\"true\"\r\n [main]=\"true\"\r\n [focusable]=\"!(inlineEditMode && allowInlineEdit)\"\r\n [applyConditionalFormats]=\"conditionalFormats\"\r\n [styleIndex]=\"styleIndex\"\r\n [hostEl]=\"trEl\"\r\n [attr.aria-selected]=\"isChecked\"\r\n [class.has-preview-column]=\"!!previewColumn\"\r\n [class.brule-message]=\"bruleActionMessage() || workflowState()?.error\"\r\n [class.workflow-pending]=\"workflowState()?.state === 'Pending'\"\r\n [style.background-color]=\"isOdd && !isChecked ? 'var(--sapList_Hover_Background)' : null\"\r\n (keydown.enter)=\"onRowCheck(true)\"\r\n>\r\n @if (mo.$Group || mo.$Group === '') {\r\n <td\r\n [style.padding-right]=\"rtl ? 'calc( 1rem + ' + level * 12 + 'px' + ' )' : 'inherit'\"\r\n [style.padding-left]=\"!rtl ? 'calc( 1rem + ' + level * 12 + 'px' + ' )' : 'inherit'\"\r\n fd-table-cell\r\n style=\"font-weight: bold; font-size: 1rem\"\r\n [attr.colspan]=\"\r\n columns.length +\r\n 1 +\r\n (rowIndicator ? -1 : 0) +\r\n (contextMenuItems && contextMenuItems.length > 0 ? 1 : 0) +\r\n (showViewButton ? 1 : 0) +\r\n (showDetailsInRow && !inlineEditMode ? 1 : 0)\r\n \"\r\n class=\"row-group\"\r\n [class.mobile-mode]=\"secondaryColumns?.length\"\r\n [attr.level]=\"level\"\r\n [class.root-group]=\"level === 0\"\r\n >\r\n <button\r\n fd-button\r\n [fdType]=\"'transparent'\"\r\n [glyph]=\"expanded !== false ? 'navigation-down-arrow' : 'navigation-left-arrow'\"\r\n class=\"cell-expand\"\r\n (click)=\"onExpandClick()\"\r\n ></button>\r\n {{ mo.$Group === 'undefined' ? '' : mo.$Group }}\r\n </td>\r\n } @else {\r\n\r\n <ng-container *ngTemplateOutlet=\"statusIndicator\"></ng-container>\r\n @if (isCheckList) {\r\n <td fd-table-cell [style.width]=\"checkboxComponent ? '60px' : null\">\r\n @if (workflowState()?.state === 'Pending') {\r\n <div style=\"position: absolute; left: 0; right: 0; bottom: 0; top: 0\">\r\n <bsu-mask [top]=\"'20px'\" [size]=\"'s'\"></bsu-mask>\r\n </div>\r\n } @if (checkboxComponent?.Selector) {\r\n <bnrc-dynamic-item-component\r\n [component]=\"checkboxComponent\"\r\n [mo]=\"mo\"\r\n [isChecked]=\"isChecked\"\r\n [UlvMainCtrlr]=\"UlvMainCtrlr\"\r\n [setting]=\"setting\"\r\n [parameters]=\"checkboxComponent.Parameters\"\r\n [editMode]=\"inlineEditMode\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [value]=\"isChecked\"\r\n [deviceSize]=\"deviceSize\"\r\n [index]=\"index\"\r\n [allColumns]=\"allColumns\"\r\n [typeDefId]=\"typeDefId\"\r\n (events)=\"onRowCheck()\"\r\n ></bnrc-dynamic-item-component>\r\n } @else {\r\n <fd-checkbox [name]=\"mo.$Caption\" [ngModel]=\"isChecked\" (ngModelChange)=\"onRowCheck()\"></fd-checkbox>\r\n }\r\n </td>\r\n } @if (!isCheckList && !showRowNumber) {\r\n <td\r\n fd-table-cell\r\n class=\"single-select\"\r\n (click)=\"!isCheckList && onRowCheck()\"\r\n style=\"padding: 0; text-align: center\"\r\n >\r\n @if (inlineEditMode && allowInlineEdit && (hasError || saving || saved)) { @if (hasError) {\r\n <fd-icon class=\"save-error\" glyph=\"error\"></fd-icon>\r\n } @if (saving) {\r\n <fd-busy-indicator [loading]=\"true\" [size]=\"'s'\" title=\"record saving\"></fd-busy-indicator>\r\n } @if (saved) {\r\n <fd-icon class=\"save-success\" glyph=\"accept\"></fd-icon>\r\n } } @else { @if (mo.$State === 'New' && !isChecked) {\r\n <fd-icon glyph=\"favorite\"></fd-icon>\r\n } @if (inlineEditMode && allowInlineEdit && isChecked) {\r\n <fd-icon glyph=\"edit\"></fd-icon>\r\n } }\r\n </td>\r\n }\r\n <ng-container *ngTemplateOutlet=\"rowNumberTemplate\"></ng-container>\r\n @for (column of columns; track column.Name; let columnIndex = $index) {\r\n <td\r\n class=\"rep-column\"\r\n [attr.dbName]=\"column.Name\"\r\n #tdEl\r\n fd-table-cell\r\n [applyConditionalFormats]=\"conditionalFormats\"\r\n [hostEl]=\"tdEl\"\r\n [styleIndex]=\"styleIndex\"\r\n [dbName]=\"column.Name\"\r\n [focusable]=\"false\"\r\n (click)=\"onColumnClick(column)\"\r\n (keydown.enter)=\"onColumnKeyEnter(column)\"\r\n (dblclick)=\"onRowClick()\"\r\n [hoverable]=\"inlineEditMode && allowInlineEdit\"\r\n [class.control-readonly]=\"column.IsReadonly\"\r\n >\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: column,\r\n mo: mo,\r\n index: columnIndex,\r\n inlineEditMode: inlineEditMode,\r\n layout94: layout$ | async\r\n }\r\n \"\r\n ></ng-container>\r\n </td>\r\n } @if (contextMenuItems.length ) {\r\n <td class=\"col-context-menu\" fd-table-cell>\r\n <bsu-ulv-context-menu\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [styleIndex]=\"styleIndex\"\r\n [mo]=\"mo\"\r\n [index]=\"index\"\r\n (commandClick)=\"onUlvCommand()\"\r\n [deviceName]=\"deviceName\"\r\n [menuItems]=\"contextMenuItems\"\r\n [allColumns]=\"allColumns\"\r\n ></bsu-ulv-context-menu>\r\n </td>\r\n } @if (showDetailsInRow && (!inlineEditMode || !allowInlineEdit)) {\r\n <td class=\"col-details\" fd-table-cell [fitContent]=\"true\">\r\n @if ((detailsComponent?.Selector || detailsColumns?.length || cartableParams?.moId ) && !hideDetailsText) {\r\n <div class=\"tw-flex tw-justify-end tw-w-full\">\r\n <button\r\n fd-button\r\n [label]=\"(detailsCollapsed ? detailsText : 'Hide') | bbbTranslate\"\r\n [fdType]=\"'transparent'\"\r\n (click)=\"onRowDetails()\"\r\n ></button>\r\n </div>\r\n }\r\n </td>\r\n } @if (actionList?.length && !inlineEditMode) {\r\n <td class=\"col-view\" [class.rtl]=\"rtl\" fd-table-cell [fitContent]=\"true\">\r\n <bsu-barsa-row-inline-actionlist\r\n [actionList]=\"actionList\"\r\n (btnClick)=\"actionListClick.emit($event)\"\r\n ></bsu-barsa-row-inline-actionlist>\r\n </td>\r\n } }\r\n</tr>\r\n} @if (secondaryColumns?.length && !mo.$Group && (!mo.$Parent || parentExpanded) && visibility !== false) {\r\n<tr\r\n #trEl\r\n fd-table-row\r\n [secondary]=\"true\"\r\n class=\"secondary-row\"\r\n [class.no-edit-mode]=\"!inlineEditMode\"\r\n [applyConditionalFormats]=\"conditionalFormats\"\r\n [styleIndex]=\"styleIndex\"\r\n [hostEl]=\"trEl\"\r\n [attr.aria-selected]=\"isChecked && !inlineEditMode ? true : false\"\r\n [style.background-color]=\"isOdd && !isChecked ? 'var(--sapList_Hover_Background)' : null\"\r\n>\r\n <ng-container *ngTemplateOutlet=\"statusIndicator\"></ng-container>\r\n @if (!isCheckList) {\r\n <td fd-table-cell class=\"single-select\" (click)=\"onRowCheck()\"></td>\r\n }\r\n <td fd-table-cell colspan=\"100%\" (click)=\"onRowCheck()\" class=\"secondary p-wrapper\">\r\n <div style=\"display: flex; flex-direction: column\">\r\n @for (column of secondaryColumns; track _trackByColumn(columnIndex, column); let columnIndex = $index) {\r\n <p\r\n #pEl\r\n fd-table-text\r\n [applyConditionalFormats]=\"conditionalFormats\"\r\n [hostEl]=\"pEl\"\r\n [styleIndex]=\"styleIndex\"\r\n [dbName]=\"column.Name\"\r\n style=\"font-family: 'B-Font Medium'\"\r\n >\r\n <label fd-form-label>{{ column.Caption }} :</label>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: column,\r\n mo: mo,\r\n index: columnIndex,\r\n inlineEditMode: inlineEditMode,\r\n layout94: layout$ | async\r\n }\r\n \"\r\n ></ng-container>\r\n </p>\r\n }\r\n </div>\r\n </td>\r\n</tr>\r\n} @if (cartableParams?.moId) {\r\n<tr\r\n [class.detailCollapsed]=\"detailsCollapsed\"\r\n fd-table-row\r\n class=\"showdetails cartable\"\r\n [attr.aria-selected]=\"isChecked\"\r\n [class.has-preview-column]=\"!!previewColumn\"\r\n [style.background-color]=\"isOdd && !isChecked ? 'var(--sapList_Hover_Background)' : null\"\r\n>\r\n <ng-container *ngTemplateOutlet=\"statusIndicator\"></ng-container>\r\n <td\r\n (click)=\"onRowCheck()\"\r\n fd-table-cell\r\n [attr.colspan]=\"\r\n columns.length +\r\n 1 +\r\n (rowIndicator ? 1 : 0) +\r\n (contextMenuItems && contextMenuItems.length > 0 ? 1 : 0) +\r\n (showViewButton ? 1 : 0) +\r\n (showDetailsInRow && !inlineEditMode ? 1 : 0)\r\n \"\r\n >\r\n <ng-container>\r\n <bnrc-form\r\n #cartableFormRef\r\n class=\"cartable-template\"\r\n [inlineEditInReport]=\"true\"\r\n [params]=\"cartableParams\"\r\n (beforeTransition)=\"onCartableBeforeTansition()\"\r\n (afterTransition)=\"onCartableAfterTansition($event)\"\r\n (bruleAction)=\"onCartableBruleAction($event)\"\r\n (click)=\"OnCartableFormClick($event)\"\r\n (formClose)=\"onCartableFormClosed()\"\r\n ></bnrc-form>\r\n </ng-container>\r\n </td>\r\n</tr>\r\n} @if (!detailsCollapsed && (detailsComponent?.Selector|| detailsColumns?.length)) {\r\n<tr fd-table-row class=\"showdetails\" [attr.aria-selected]=\"isChecked\" [class.has-preview-column]=\"!!previewColumn\">\r\n <ng-container *ngTemplateOutlet=\"statusIndicator\"></ng-container>\r\n <td\r\n (click)=\"onRowCheck()\"\r\n fd-table-cell\r\n [attr.colspan]=\"\r\n columns.length +\r\n 1 +\r\n (rowIndicator ? -1 : 0) +\r\n (contextMenuItems && contextMenuItems.length > 0 ? 1 : 0) +\r\n (showViewButton ? 1 : 0) +\r\n (showDetailsInRow && !inlineEditMode ? 1 : 0)\r\n \"\r\n >\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n detailsColumnsTemplate;\r\n context: { mo: mo, inlineEditMode: inlineEditMode, layout94: layout$ | async }\r\n \"\r\n ></ng-container>\r\n @if (detailsComponent && detailsComponent.Selector) {\r\n <bnrc-dynamic-item-component\r\n [component]=\"detailsComponent\"\r\n [mo]=\"mo\"\r\n [isChecked]=\"isChecked\"\r\n [UlvMainCtrlr]=\"UlvMainCtrlr\"\r\n [setting]=\"detailsComponentSetting\"\r\n [parameters]=\"detailsComponent.Settings\"\r\n [editMode]=\"inlineEditMode\"\r\n [formSetting]=\"formSetting\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [index]=\"index\"\r\n [allColumns]=\"allColumns\"\r\n [typeDefId]=\"typeDefId\"\r\n ></bnrc-dynamic-item-component>\r\n }\r\n </td>\r\n</tr>\r\n} @if(previewColumn){\r\n<tr\r\n #trEl\r\n fd-table-row\r\n [secondary]=\"true\"\r\n class=\"preview-column\"\r\n [class.no-edit-mode]=\"!inlineEditMode\"\r\n [applyConditionalFormats]=\"conditionalFormats\"\r\n [styleIndex]=\"styleIndex\"\r\n [hostEl]=\"trEl\"\r\n [attr.aria-selected]=\"isChecked && !inlineEditMode ? true : false\"\r\n [style.background-color]=\"isOdd && !isChecked ? 'var(--sapList_Hover_Background)' : null\"\r\n>\r\n <ng-container *ngTemplateOutlet=\"statusIndicator\"></ng-container>\r\n\r\n <td\r\n fd-table-cell\r\n [attr.colspan]=\"\r\n columns.length +\r\n 1 +\r\n (rowIndicator ? -1 : 0) +\r\n (contextMenuItems && contextMenuItems.length > 0 ? 1 : 0) +\r\n (showViewButton ? 1 : 0) +\r\n (showDetailsInRow && !inlineEditMode ? 1 : 0)\r\n \"\r\n (click)=\"onRowCheck()\"\r\n >\r\n <div style=\"display: flex; flex-direction: column\">\r\n <p\r\n #pEl\r\n fd-table-text\r\n [applyConditionalFormats]=\"conditionalFormats\"\r\n [hostEl]=\"pEl\"\r\n [styleIndex]=\"styleIndex\"\r\n [dbName]=\"previewColumn.Name\"\r\n style=\"color: var(--sapAccentColor6)\"\r\n >\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: previewColumn,\r\n mo: mo,\r\n index: columns.length,\r\n inlineEditMode: inlineEditMode,\r\n layout94: layout$ | async\r\n }\r\n \"\r\n ></ng-container>\r\n </p>\r\n </div>\r\n </td>\r\n</tr>\r\n} @if(isLastChildGroup && groupSummary){\r\n<tr #trEl fd-table-row class=\"group-summary-row\" [class.no-edit-mode]=\"true\" [attr.aria-selected]=\"false\">\r\n <ng-container *ngTemplateOutlet=\"statusIndicator\"></ng-container>\r\n @if (!isCheckList) {\r\n <td fd-table-cell class=\"single-select\"></td>\r\n } @for (column of columns; track _trackByColumn(columnIndex, column); let columnIndex = $index) {\r\n <td fd-table-cell>\r\n <label #summaryRef>{{ reCalculateColumnSummary(summaryRef, column) }}</label>\r\n </td>\r\n } @if (contextMenuItems.length) {\r\n <td class=\"col-context-menu\" fd-table-cell></td>\r\n } @if (showDetailsInRow && (!inlineEditMode || !allowInlineEdit)) {\r\n <td class=\"col-details\" fd-table-cell [fitContent]=\"true\"></td>\r\n } @if (actionList?.length && !inlineEditMode) {\r\n <td class=\"col-view\" fd-table-cell [fitContent]=\"true\"></td>\r\n }\r\n</tr>\r\n} @if (bruleActionMessage() && inlineEditMode) {\r\n<tr fd-table-row>\r\n <ng-container *ngTemplateOutlet=\"statusIndicator\"></ng-container>\r\n <td\r\n fd-table-cell\r\n [attr.colspan]=\"\r\n columns.length +\r\n 1 +\r\n (rowIndicator ? -1 : 0) +\r\n (contextMenuItems && contextMenuItems.length > 0 ? 1 : 0) +\r\n (showViewButton ? 1 : 0) +\r\n (showDetailsInRow && !inlineEditMode ? 1 : 0)\r\n \"\r\n >\r\n @if (bruleActionMessage()?.MessageType === 2) {\r\n <fd-message-strip\r\n [type]=\"bruleActionMessage()?.MessageType === 2 ? 'error' : 'information'\"\r\n [dismissible]=\"false\"\r\n >\r\n {{ bruleActionMessage()?.MessageExpression }}\r\n </fd-message-strip>\r\n }\r\n </td>\r\n</tr>\r\n} @if (workflowState()?.state === 'Finish' && workflowState()?.error) {\r\n<tr fd-table-row>\r\n <ng-container *ngTemplateOutlet=\"statusIndicator\"></ng-container>\r\n <td\r\n fd-table-cell\r\n [attr.colspan]=\"\r\n columns.length +\r\n 1 +\r\n (rowIndicator ? -1 : 0) +\r\n (contextMenuItems && contextMenuItems.length > 0 ? 1 : 0) +\r\n (showViewButton ? 1 : 0) +\r\n (showDetailsInRow && !inlineEditMode ? 1 : 0)\r\n \"\r\n >\r\n <fd-message-strip type=\"error\" [dismissible]=\"true\" (onDismiss)=\"onResetWorkflowState()\">\r\n {{ workflowState()?.error?.Text || workflowState()?.error?.MessageExpression }}\r\n </fd-message-strip>\r\n </td>\r\n</tr>\r\n}\r\n<ng-template #detailsColumnsTemplate let-mo=\"mo\" let-inlineEditMode=\"inlineEditMode\" let-layout94=\"layout94\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n detailsFormItems;\r\n context: {\r\n $implicit: detailsColumns,\r\n mo: this.mo,\r\n inlineEditMode: this.inlineEditMode,\r\n layout94: layout94\r\n }\r\n \"\r\n ></ng-container>\r\n</ng-template>\r\n<ng-template\r\n #detailsFormItems\r\n let-detailsColumns\r\n let-mo=\"mo\"\r\n let-inlineEditMode=\"inlineEditMode\"\r\n let-layout94=\"layout94\"\r\n>\r\n <div class=\"form-items\">\r\n @for (column of detailsColumns; track column; let columnIndex = $index) {\r\n <div fd-form-item>\r\n <label fd-form-label for=\"input-2\">{{ column.Caption }}</label>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: column,\r\n mo: mo,\r\n index: columnIndex,\r\n inlineEditMode: inlineEditMode,\r\n layout94: layout94\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n }\r\n </div>\r\n</ng-template>\r\n<ng-template\r\n #columnTemplate\r\n let-column\r\n let-mo=\"mo\"\r\n let-index=\"index\"\r\n let-inlineEditMode=\"inlineEditMode\"\r\n let-layout94=\"layout94\"\r\n>\r\n <bsu-barsa-table-column\r\n [mo]=\"mo\"\r\n [allColumns]=\"allColumns\"\r\n [column]=\"column\"\r\n [attachmentViewType]=\"attachmentViewType\"\r\n [isdirty]=\"dirtyColumns && dirtyColumns[column.Name]\"\r\n [value]=\"column | columnValue: mo\"\r\n [icon]=\"column | columnIcon: mo\"\r\n [customComponent]=\"column.$CustomComponent\"\r\n [column]=\"column\"\r\n [disableEllapsis]=\"secondaryColumns?.length || disableEllapsis\"\r\n [editMode]=\"(isChecked || inlineEditWithoutSelection) && inlineEditMode && allowInlineEdit\"\r\n [inlineEditMode]=\"inlineEditMode\"\r\n [isChecked]=\"isChecked === true\"\r\n [index]=\"index\"\r\n [formSetting]=\"formSetting\"\r\n [rtl]=\"rtl\"\r\n [isMobile]=\"isMobile\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [layout94]=\"layout94\"\r\n [cellEdit]=\"activeColumn() === column && isChecked\"\r\n (save)=\"onEditFormPanelSave(null)\"\r\n (cancel)=\"onEditFormPanelCancel(null)\"\r\n (tab)=\"onTabKeyDown($event, index)\"\r\n (changeToEditMode)=\"onColumnChangeToEditMode($event, index)\"\r\n >\r\n </bsu-barsa-table-column>\r\n</ng-template>\r\n<ng-template #statusIndicator>\r\n @if (rowIndicator) {\r\n <bsu-barsa-column-indicator [hideBorderBottom]=\"!detailsCollapsed\" [backColor]=\"rowIndicatorColor\">\r\n </bsu-barsa-column-indicator>\r\n }\r\n</ng-template>\r\n<ng-template #rowNumberTemplate>\r\n @if (showRowNumber) {\r\n <td fd-table-cell bsu-barsa-column-rownumber [rowNumber]=\"rowNumber\" (click)=\"!isCheckList && onRowCheck()\"></td>\r\n }\r\n</ng-template>\r\n<tr fd-table-row style=\"pointer-events: none\"></tr>\r\n", styles: [":host{display:contents;width:100%}:host bnrc-form.cartable-template ::ng-deep bsu-ly-layout-container-of-root{padding-bottom:1rem}:host.has-preview-column .secondary-row td{border-bottom:none}:host ::ng-deep .row-group.mobile-mode{border-bottom:var(--sapList_BorderWidth, .0625rem) solid var(--sapList_BorderColor, #e4e4e4)!important}:host ::ng-deep .inlineEditMode bnrc-field-ui{padding:0;margin:0}:host ::ng-deep .inlineEditMode bsu-ui-simple-combo{margin:0!important}:host ::ng-deep .secondary.p-wrapper p{display:flex;align-items:center}bsu-layout-control:not(.hide-form-item){align-items:center;height:100%;min-width:auto;width:auto}tr.group-summary-row td{border:none;background-color:#dde5f0;border-right:none!important;font-weight:700}tr.group-summary-row td label{font-weight:700}tr.group-summary-row td label.NaN{display:none}td{vertical-align:middle}td.control-readonly{background-color:var(--sapList_HeaderBackground)}tr.brule-message td{border:0}.row-group{background-color:var(--sapBackgroundColor, \"#f7f7ff\")}.cell-expand{cursor:pointer;display:inline-flex;justify-content:center;align-items:center;font-size:.75rem;color:#0854a0;color:var(--sapContent_IconColor, #0854a0);min-width:2rem;max-width:2rem}.save-error{color:var(--sapField_InvalidColor)}.save-success{color:var(--sapField_SuccessColor)}.flow{max-width:100%}.flow-item{display:flex}.flow-item fd-micro-process-flow-icon{width:1.375rem;height:1.375rem}.flow-item h5{padding-right:.3rem}.cartable-template{padding:.5rem 0}.workflow-pending{opacity:.5;pointer-events:none;position:relative}.detailCollapsed{height:0;display:none}tr td.rep-column:first-child{position:sticky;right:0}tr:not([aria-selected=true]).preview-column td{border-bottom:var(--sapList_BorderWidth) var(--fdTable_Cell_Horizontal_Border_Style, solid) var(--sapList_BorderColor)}tr[aria-selected=true].has-preview-column td,tr.showdetails-on.hasCartable td,tr.showdetails-on.hasForm td{border-bottom:none}\n"] }]
6111
6126
  }], propDecorators: { showDetailsInRow: [{
6112
6127
  type: Input
6113
6128
  }], previewColumn: [{
@@ -12189,11 +12204,11 @@ class UiNumIntUiComponent extends NumberBaseComponent {
12189
12204
  super.ngOnInit();
12190
12205
  }
12191
12206
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiNumIntUiComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
12192
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: UiNumIntUiComponent, selector: "bsu-ui-num-int-ui", viewQueries: [{ propertyName: "inputRef", first: true, predicate: ["inputRef"], descendants: true, read: ElementRef, static: true }], usesInheritance: true, ngImport: i0, template: "<input\r\n #inputRef\r\n fd-form-control\r\n [placeholder]=\"Setting.NullText || ''\"\r\n [attr.readonly]=\"(readonly$ | async) === true ? true : null\"\r\n [attr.disabled]=\"(disable$ | async) === true ? true : null\"\r\n [type]=\"hasMask ? 'text' : 'number'\"\r\n [id]=\"id\"\r\n [style.direction]=\"'ltr'\"\r\n [style.text-align]=\"Setting.IsLtr === true ? 'left' : 'right'\"\r\n (keydown)=\"onKeyDown($event)\"\r\n (input)=\"onValueChange($event)\"\r\n [class.inlineEdit]=\"inlineEdit \"\r\n [class.cellEdit]=\"cellEdit\"\r\n \r\n/>\r\n\r\n\r\n", styles: [":host{display:block}.number-input{display:block}\n"], dependencies: [{ kind: "component", type: i2$1.FormControlComponent, selector: "input[fd-form-control], textarea[fd-form-control]", inputs: ["state", "type", "class", "ariaLabel", "ariaLabelledBy"] }, { kind: "pipe", type: i1$2.AsyncPipe, name: "async" }] }); }
12207
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: UiNumIntUiComponent, selector: "bsu-ui-num-int-ui", viewQueries: [{ propertyName: "inputRef", first: true, predicate: ["inputRef"], descendants: true, read: ElementRef, static: true }], usesInheritance: true, ngImport: i0, template: "<input\r\n #inputRef\r\n fd-form-control\r\n [placeholder]=\"Setting.NullText || ''\"\r\n [attr.readonly]=\"(readonly$ | async) === true ? true : null\"\r\n [attr.disabled]=\"(disable$ | async) === true ? true : null\"\r\n [type]=\"hasMask ? 'text' : 'number'\"\r\n [id]=\"id\"\r\n [style.direction]=\"'ltr'\"\r\n [style.text-align]=\"Setting.IsLtr === true ? 'left' : 'right'\"\r\n (keydown)=\"onKeyDown($event)\"\r\n (input)=\"onValueChange($event)\"\r\n \r\n/>\r\n\r\n\r\n", styles: [":host{display:block}.number-input{display:block}\n"], dependencies: [{ kind: "component", type: i2$1.FormControlComponent, selector: "input[fd-form-control], textarea[fd-form-control]", inputs: ["state", "type", "class", "ariaLabel", "ariaLabelledBy"] }, { kind: "pipe", type: i1$2.AsyncPipe, name: "async" }] }); }
12193
12208
  }
12194
12209
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiNumIntUiComponent, decorators: [{
12195
12210
  type: Component,
12196
- args: [{ selector: 'bsu-ui-num-int-ui', standalone: false, template: "<input\r\n #inputRef\r\n fd-form-control\r\n [placeholder]=\"Setting.NullText || ''\"\r\n [attr.readonly]=\"(readonly$ | async) === true ? true : null\"\r\n [attr.disabled]=\"(disable$ | async) === true ? true : null\"\r\n [type]=\"hasMask ? 'text' : 'number'\"\r\n [id]=\"id\"\r\n [style.direction]=\"'ltr'\"\r\n [style.text-align]=\"Setting.IsLtr === true ? 'left' : 'right'\"\r\n (keydown)=\"onKeyDown($event)\"\r\n (input)=\"onValueChange($event)\"\r\n [class.inlineEdit]=\"inlineEdit \"\r\n [class.cellEdit]=\"cellEdit\"\r\n \r\n/>\r\n\r\n\r\n", styles: [":host{display:block}.number-input{display:block}\n"] }]
12211
+ args: [{ selector: 'bsu-ui-num-int-ui', standalone: false, template: "<input\r\n #inputRef\r\n fd-form-control\r\n [placeholder]=\"Setting.NullText || ''\"\r\n [attr.readonly]=\"(readonly$ | async) === true ? true : null\"\r\n [attr.disabled]=\"(disable$ | async) === true ? true : null\"\r\n [type]=\"hasMask ? 'text' : 'number'\"\r\n [id]=\"id\"\r\n [style.direction]=\"'ltr'\"\r\n [style.text-align]=\"Setting.IsLtr === true ? 'left' : 'right'\"\r\n (keydown)=\"onKeyDown($event)\"\r\n (input)=\"onValueChange($event)\"\r\n \r\n/>\r\n\r\n\r\n", styles: [":host{display:block}.number-input{display:block}\n"] }]
12197
12212
  }], propDecorators: { inputRef: [{
12198
12213
  type: ViewChild,
12199
12214
  args: ['inputRef', { read: ElementRef, static: true }]
@@ -12339,6 +12354,7 @@ class UiMoInfoUlvComboComponent extends FieldBaseComponent {
12339
12354
  super(...arguments);
12340
12355
  this.smartChange = new Subject();
12341
12356
  this.allColumns = [];
12357
+ this.showExtraButtons = signal(false);
12342
12358
  this._openPopupFormSelectionSource = new Subject();
12343
12359
  this._closeDialogSource = new Subject();
12344
12360
  this._loadingSource = new Subject();
@@ -12566,8 +12582,27 @@ class UiMoInfoUlvComboComponent extends FieldBaseComponent {
12566
12582
  this._setValueText(value);
12567
12583
  this._checkHasValue(value);
12568
12584
  super._setValue(value);
12585
+ this._checkShowExtraButtons();
12569
12586
  // this._setComboText(value);
12570
12587
  }
12588
+ _checkShowExtraButtons() {
12589
+ let showExtraButtos = false;
12590
+ this.showExtraButtons.set(false);
12591
+ if (this.hasValue && !this.inlineEdit) {
12592
+ showExtraButtos = true;
12593
+ }
12594
+ if (!this.hasValue && this.Setting.ShowNewButton) {
12595
+ showExtraButtos = true;
12596
+ this.showExtraButtons.set(true);
12597
+ }
12598
+ if (this.hasValue && this.Setting.ViewRelatedFormType !== 'Hide') {
12599
+ showExtraButtos = true;
12600
+ }
12601
+ if (this.context._showPopup && !this.value) {
12602
+ showExtraButtos = true;
12603
+ }
12604
+ this.showExtraButtons.set(showExtraButtos);
12605
+ }
12571
12606
  _checkHasValue(value) {
12572
12607
  this.hasValue = typeof value !== 'undefined' && value !== null && value !== '';
12573
12608
  }
@@ -12700,11 +12735,11 @@ class UiMoInfoUlvComboComponent extends FieldBaseComponent {
12700
12735
  // this._triggerClick('ItemSelect', this.value);
12701
12736
  }
12702
12737
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiMoInfoUlvComboComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
12703
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: UiMoInfoUlvComboComponent, selector: "bsu-ui-mo-info-ulv-combo", inputs: { ulvAdapter: "ulvAdapter", Control: "Control", UlvMainCtrlr: "UlvMainCtrlr", UlvUi: "UlvUi", IsExpanded: "IsExpanded", Collapse: "Collapse", Expand: "Expand", on: "on", Focus: "Focus", SetUlvAdapter: "SetUlvAdapter", IsUiCreated: "IsUiCreated", Mask: "Mask", hide: "hide", show: "show", Unmask: "Unmask", getRawValue: "getRawValue" }, host: { listeners: { "keydown": "onKeyDown($event)", "keydown.alt": "onAlt($event)" } }, viewQueries: [{ propertyName: "fdComboRef", first: true, predicate: ComboboxComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-container\r\n *ngTemplateOutlet=\"\r\n comboTemplate;\r\n context: {\r\n $implicit:\r\n (loading$ | async) === true\r\n | moInfoUlvMoList\r\n : isDataLoadedFirstTime\r\n : ulvAdapter?.Setting?.Data?.MoDataList\r\n : UlvUi?.Setting?.Data?.MoDataList\r\n : ulvAdapter?.Setting?.Data?.Paging\r\n : UlvUi?.Setting?.Data?.Paging,\r\n deviceSize: deviceSize$ | async,\r\n disableOrReadonly: disableOrReadonly$ | async,\r\n disable: disable$ | async,\r\n readonly: readonly$ | async,\r\n isSearch: context._showPopup || context._showDropDown === false\r\n }\r\n \"\r\n>\r\n</ng-container>\r\n\r\n<ng-template #btnsTpl let-disableOrReadonly=\"disableOrReadonly\">\r\n <div class=\"extra-buttons fd-input-group fd-input-group--control\" contentDensity>\r\n @if (hasValue && disableOrReadonly !== true) {\r\n <span class=\"fd-input-group__addon--button combo-popup-btn\" fd-input-group-addon>\r\n <button tabindex=\"-1\" fd-button fdType=\"transparent\" glyph=\"decline\" (click)=\"onClear()\"></button>\r\n </span>\r\n } @if (!hasValue && disableOrReadonly !== true && Setting.ShowNewButton) {\r\n <span fd-input-group-addon class=\"fd-input-group__addon--button combo-popup-btn\">\r\n <button fd-button fdType=\"transparent\" glyph=\"add\" (click)=\"onNew()\"></button>\r\n </span>\r\n } @if (hasValue && disableOrReadonly !== true && Setting.ViewRelatedFormType !== 'Hide') {\r\n <span fd-input-group-addon class=\"fd-input-group__addon--button combo-popup-btn\">\r\n <button fd-button fdType=\"transparent\" glyph=\"edit\" (click)=\"onEdit()\"></button>\r\n </span>\r\n } @if (context._showPopup && !value && disableOrReadonly !== true) {\r\n <span fd-input-group-addon class=\"fd-input-group__addon--button combo-popup-btn\">\r\n <button fd-button fdType=\"transparent\" glyph=\"search\" (click)=\"onSearch()\"></button>\r\n </span>\r\n }\r\n </div>\r\n</ng-template>\r\n<ng-template\r\n #comboTemplate\r\n let-moDataList\r\n let-deviceSize=\"deviceSize\"\r\n let-disableOrReadonly=\"disableOrReadonly\"\r\n let-disable=\"disable\"\r\n let-readonly=\"readonly\"\r\n let-isSearch=\"isSearch\"\r\n>\r\n <div class=\"simple-combo-wrapper\">\r\n <fd-combobox\r\n #fdCombobox\r\n class=\"combo-mo-ulv\"\r\n [class.canAdd]=\"!hasValue && disableOrReadonly !== true && Setting.ShowNewButton\"\r\n [class.canEdit]=\"hasValue && disableOrReadonly !== true\"\r\n [class.disableorreadonly]=\"disableOrReadonly === true\"\r\n [comboboxId]=\"comboboxId\"\r\n [class.has-Value]=\"hasValue\"\r\n [placeholder]=\"'Select' | bbbTranslate\"\r\n [mobile]=\"deviceSize === 's'\"\r\n [mobileConfig]=\"mobileConfig\"\r\n [fillOnSelect]=\"true\"\r\n [readOnly]=\"readonly === true ? true : false\"\r\n [disabled]=\"disable === true ? true : false\"\r\n [dropdownValues]=\"moDataList\"\r\n [filterFn]=\"customFilter\"\r\n [openOnKeyboardEvent]=\"true\"\r\n [byline]=\"allColumns.length > 0\"\r\n [isSearch]=\"false\"\r\n [itemTemplate]=\"itemTemplate\"\r\n [displayFn]=\"displayFunc\"\r\n [showDropdownButton]=\"context._showDropDown !== false && disableOrReadonly !== true\"\r\n (itemClicked)=\"onItemClick($event, moDataList)\"\r\n (inputTextChange)=\"onInputChange($event)\"\r\n (openChange)=\"onOpenChange(fdCombobox, $event)\"\r\n >\r\n </fd-combobox>\r\n <ng-container\r\n *ngTemplateOutlet=\"btnsTpl; context: { disableOrReadonly: this.disableOrReadonly }\"\r\n ></ng-container>\r\n </div>\r\n <ng-template #itemTemplate let-item>\r\n @if (item.$isLoading) {\r\n <div fd-list-content style=\"width: 100%; height: 20px\">\r\n <bsu-mask [size]=\"'s'\" [top]=\"'10px'\"></bsu-mask>\r\n </div>\r\n } @else {\r\n <ng-container\r\n *ngTemplateOutlet=\"item.$LoadMore ? loadMoreButton : showItem; context: { ulv: ulvAdapter || UlvUi }\"\r\n >\r\n </ng-container>\r\n }\r\n <ng-template #loadMoreButton let-ulv=\"ulv\">\r\n @if (ulv) {\r\n <bsu-ulv-paging\r\n (click)=\"onPagingClick($event)\"\r\n (pageChange)=\"onPageChange($event)\"\r\n [pagingSetting]=\"ulv.Setting.Data.Paging\"\r\n >\r\n </bsu-ulv-paging>\r\n }\r\n <!-- <button\r\n style=\"width: 100%\"\r\n *ngIf=\"ulv && ulv.Setting.Data.Paging.Page + 1 < ulv.Setting.Data.Paging.TotalPages\"\r\n fd-button\r\n (click)=\"onPageChange2(ulv.Setting.Data.Paging, $event)\"\r\n [label]=\"'More' | bbbTranslate\"\r\n ></button> -->\r\n </ng-template>\r\n <ng-template #showItem>\r\n @if (allColumns?.length && !item.isEmpty) { @if (!item.$__IsLast) {\r\n <div class=\"moinfoulv devider\"></div>\r\n } @if (item.$Icon) {\r\n <span fd-list-thumbnail><fd-icon [glyph]=\"item.$Icon\"></fd-icon></span>\r\n }\r\n <div fd-list-content class=\"moinfoulv hasColumns\">\r\n <div fd-list-title class=\"title\">{{ allColumns[0].Alias | rval: item:allColumns:true }}</div>\r\n @if (allColumns[1]) {\r\n <div fd-list-byline class=\"byline\">\r\n {{ allColumns[1].Alias | rval: item:allColumns:true }}\r\n </div>\r\n }\r\n <div style=\"display: flex; column-gap: 8px; flex-wrap: wrap\">\r\n @for (column of allColumns; track column; let index = $index) { @if (index > 1) { @if (column.Alias\r\n | rval: item:allColumns:true; as value) {\r\n <span> {{ column.Alias }}:{{ value }}</span>\r\n } } }\r\n </div>\r\n </div>\r\n } @else {\r\n <span fd-list-title [class.list-empty-item]=\"item.isEmpty\"\r\n >{{ item.isEmpty ? ('NoData' | bbbTranslate) : (item.$MoCaption || item.$Caption | bbbTranslate) }}\r\n </span>\r\n }\r\n </ng-template>\r\n </ng-template>\r\n</ng-template>\r\n", styles: [":host{display:block}.combo-mo-ulv{width:100%}.combo-mo-ulv ::ng-deep .fd-popover-custom{width:100%}.fd-input-group{min-width:fit-content}.simple-combo-wrapper{display:flex;align-items:center;position:relative}.simple-combo-wrapper ::ng-deep .combo-mo-ulv[class*=has-]:not(.disableorreadonly) .fd-input-group,.simple-combo-wrapper ::ng-deep .combo-mo-ulv.canAdd:not(.disableorreadonly) .fd-input-group,.simple-combo-wrapper ::ng-deep .combo-mo-ulv.canEdit:not(.disableorreadonly) .fd-input-group{border-left:none;border-bottom-left-radius:unset;border-top-left-radius:unset}.combo-wrapper{display:flex;align-items:center;border:var(--sapField_BorderWidth, .0625rem) solid var(--sapField_BorderColor, #89919a);border-radius:var(--sapField_BorderCornerRadius, .125rem)}::ng-deep .combo-popup-btn{border:none;background:transparent}::ng-deep .combo-popup-btn button{border-color:transparent!important;border:none}::ng-deep .fd-combobox-count-list-results{display:none}.extra-buttons{width:auto;border-right:none;border-left:none;margin:0}.extra-buttons>span{overflow:hidden}\n"], dependencies: [{ kind: "directive", type: i1$2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.MobileDirective, selector: "[mobile]" }, { kind: "component", type: i3$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i4$6.ComboboxComponent, selector: "fd-combobox", inputs: ["comboboxId", "inputId", "ariaLabel", "ariaLabelledBy", "required", "dropdownValues", "filterFn", "disabled", "placeholder", "isSearch", "glyph", "glyphFont", "showClearButton", "triggers", "closeOnOutsideClick", "openOnKeyboardEvent", "state", "itemTemplate", "groupFn", "maxHeight", "width", "searchFn", "highlighting", "closeOnSelect", "fillOnSelect", "autoComplete", "fillControlMode", "communicateByObject", "displayFn", "buttonFocusable", "clearButtonFocusable", "readOnly", "mobile", "mobileConfig", "showDropdownButton", "includes", "title", "byline", "tabOutStrategy"], outputs: ["itemClicked", "openChange", "inputTextChange"] }, { kind: "component", type: i3.IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "color", "background", "class", "ariaLabel", "ariaHidden"] }, { kind: "directive", type: i5$1.InputGroupAddOnDirective, selector: "[fdInputGroupAddon], [fd-input-group-addon]", inputs: ["class", "placement", "type", "state", "button"] }, { kind: "directive", type: i7.ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap"] }, { kind: "directive", type: i7.ListBylineDirective, selector: "[fdListByline], [fd-list-byline]", inputs: ["twoCol", "wrap"] }, { kind: "directive", type: i7.ListContentDirective, selector: "[fdListContent], [fd-list-content]", inputs: ["twoCol"] }, { kind: "directive", type: i7.ListThumbnailDirective, selector: "[fdListThumbnail], [fd-list-thumbnail]" }, { kind: "component", type: UlvPagingComponent, selector: "bsu-ulv-paging", inputs: ["pagingSetting"], outputs: ["pageChange", "pageSizeChange"] }, { kind: "component", type: MaskComponent, selector: "bsu-mask", inputs: ["size", "top"] }, { kind: "directive", type: ContentDensityDirective, selector: "[contentDensity]" }, { kind: "pipe", type: i1$2.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.MoReportValuePipe, name: "rval" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: i2.MoInfoUlvMoListPipe, name: "moInfoUlvMoList" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
12738
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: UiMoInfoUlvComboComponent, selector: "bsu-ui-mo-info-ulv-combo", inputs: { ulvAdapter: "ulvAdapter", Control: "Control", UlvMainCtrlr: "UlvMainCtrlr", UlvUi: "UlvUi", IsExpanded: "IsExpanded", Collapse: "Collapse", Expand: "Expand", on: "on", Focus: "Focus", SetUlvAdapter: "SetUlvAdapter", IsUiCreated: "IsUiCreated", Mask: "Mask", hide: "hide", show: "show", Unmask: "Unmask", getRawValue: "getRawValue" }, host: { listeners: { "keydown": "onKeyDown($event)", "keydown.alt": "onAlt($event)" } }, viewQueries: [{ propertyName: "fdComboRef", first: true, predicate: ComboboxComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-container\r\n *ngTemplateOutlet=\"\r\n comboTemplate;\r\n context: {\r\n $implicit:\r\n (loading$ | async) === true\r\n | moInfoUlvMoList\r\n : isDataLoadedFirstTime\r\n : ulvAdapter?.Setting?.Data?.MoDataList\r\n : UlvUi?.Setting?.Data?.MoDataList\r\n : ulvAdapter?.Setting?.Data?.Paging\r\n : UlvUi?.Setting?.Data?.Paging,\r\n deviceSize: deviceSize$ | async,\r\n disableOrReadonly: disableOrReadonly$ | async,\r\n disable: disable$ | async,\r\n readonly: readonly$ | async,\r\n isSearch: context._showPopup || context._showDropDown === false\r\n }\r\n \"\r\n>\r\n</ng-container>\r\n\r\n<ng-template #btnsTpl let-disableOrReadonly=\"disableOrReadonly\">\r\n @if( showExtraButtons() ){\r\n <div class=\"extra-buttons fd-input-group fd-input-group--control\" contentDensity>\r\n @if (hasValue && !inlineEdit) {\r\n <span class=\"fd-input-group__addon--button combo-popup-btn\" fd-input-group-addon>\r\n <button tabindex=\"-1\" fd-button fdType=\"transparent\" glyph=\"decline\" (click)=\"onClear()\"></button>\r\n </span>\r\n } @if (!hasValue && Setting.ShowNewButton) {\r\n <span fd-input-group-addon class=\"fd-input-group__addon--button combo-popup-btn\">\r\n <button fd-button fdType=\"transparent\" glyph=\"add\" (click)=\"onNew()\"></button>\r\n </span>\r\n } @if (hasValue && Setting.ViewRelatedFormType !== 'Hide') {\r\n <span fd-input-group-addon class=\"fd-input-group__addon--button combo-popup-btn\">\r\n <button fd-button fdType=\"transparent\" glyph=\"edit\" (click)=\"onEdit()\"></button>\r\n </span>\r\n } @if (context._showPopup && !value ) {\r\n <span fd-input-group-addon class=\"fd-input-group__addon--button combo-popup-btn\">\r\n <button fd-button fdType=\"transparent\" glyph=\"search\" (click)=\"onSearch()\"></button>\r\n </span>\r\n }\r\n </div>\r\n }\r\n</ng-template>\r\n<ng-template\r\n #comboTemplate\r\n let-moDataList\r\n let-deviceSize=\"deviceSize\"\r\n let-disableOrReadonly=\"disableOrReadonly\"\r\n let-disable=\"disable\"\r\n let-readonly=\"readonly\"\r\n let-isSearch=\"isSearch\"\r\n>\r\n <div class=\"simple-combo-wrapper\">\r\n <fd-combobox\r\n #fdCombobox\r\n class=\"combo-mo-ulv\"\r\n [class.canAdd]=\"!hasValue && disableOrReadonly !== true && Setting.ShowNewButton\"\r\n [class.canEdit]=\"hasValue && disableOrReadonly !== true\"\r\n [class.disableorreadonly]=\"disableOrReadonly === true\"\r\n [class.showExtraButtons]=\"disableOrReadonly !== true && showExtraButtons()\"\r\n [comboboxId]=\"comboboxId\"\r\n [class.has-Value]=\"hasValue\"\r\n [placeholder]=\"'Select' | bbbTranslate\"\r\n [mobile]=\"deviceSize === 's'\"\r\n [mobileConfig]=\"mobileConfig\"\r\n [fillOnSelect]=\"true\"\r\n [readOnly]=\"readonly === true ? true : false\"\r\n [disabled]=\"disable === true ? true : false\"\r\n [dropdownValues]=\"moDataList\"\r\n [filterFn]=\"customFilter\"\r\n [openOnKeyboardEvent]=\"true\"\r\n [byline]=\"allColumns.length > 0\"\r\n [isSearch]=\"false\"\r\n [itemTemplate]=\"itemTemplate\"\r\n [displayFn]=\"displayFunc\"\r\n [showDropdownButton]=\"context._showDropDown !== false && disableOrReadonly !== true\"\r\n (itemClicked)=\"onItemClick($event, moDataList)\"\r\n (inputTextChange)=\"onInputChange($event)\"\r\n (openChange)=\"onOpenChange(fdCombobox, $event)\"\r\n >\r\n </fd-combobox>\r\n <ng-container\r\n *ngTemplateOutlet=\"btnsTpl; context: { disableOrReadonly: this.disableOrReadonly }\"\r\n ></ng-container>\r\n </div>\r\n <ng-template #itemTemplate let-item>\r\n @if (item.$isLoading) {\r\n <div fd-list-content style=\"width: 100%; height: 20px\">\r\n <bsu-mask [size]=\"'s'\" [top]=\"'10px'\"></bsu-mask>\r\n </div>\r\n } @else {\r\n <ng-container\r\n *ngTemplateOutlet=\"item.$LoadMore ? loadMoreButton : showItem; context: { ulv: ulvAdapter || UlvUi }\"\r\n >\r\n </ng-container>\r\n }\r\n <ng-template #loadMoreButton let-ulv=\"ulv\">\r\n @if (ulv) {\r\n <bsu-ulv-paging\r\n (click)=\"onPagingClick($event)\"\r\n (pageChange)=\"onPageChange($event)\"\r\n [pagingSetting]=\"ulv.Setting.Data.Paging\"\r\n >\r\n </bsu-ulv-paging>\r\n }\r\n <!-- <button\r\n style=\"width: 100%\"\r\n *ngIf=\"ulv && ulv.Setting.Data.Paging.Page + 1 < ulv.Setting.Data.Paging.TotalPages\"\r\n fd-button\r\n (click)=\"onPageChange2(ulv.Setting.Data.Paging, $event)\"\r\n [label]=\"'More' | bbbTranslate\"\r\n ></button> -->\r\n </ng-template>\r\n <ng-template #showItem>\r\n @if (allColumns?.length && !item.isEmpty) { @if (!item.$__IsLast) {\r\n <div class=\"moinfoulv devider\"></div>\r\n } @if (item.$Icon) {\r\n <span fd-list-thumbnail><fd-icon [glyph]=\"item.$Icon\"></fd-icon></span>\r\n }\r\n <div fd-list-content class=\"moinfoulv hasColumns\">\r\n <div fd-list-title class=\"title\">{{ allColumns[0].Alias | rval: item:allColumns:true }}</div>\r\n @if (allColumns[1]) {\r\n <div fd-list-byline class=\"byline\">\r\n {{ allColumns[1].Alias | rval: item:allColumns:true }}\r\n </div>\r\n }\r\n <div style=\"display: flex; column-gap: 8px; flex-wrap: wrap\">\r\n @for (column of allColumns; track column; let index = $index) { @if (index > 1) { @if (column.Alias\r\n | rval: item:allColumns:true; as value) {\r\n <span> {{ column.Alias }}:{{ value }}</span>\r\n } } }\r\n </div>\r\n </div>\r\n } @else {\r\n <span fd-list-title [class.list-empty-item]=\"item.isEmpty\"\r\n >{{ item.isEmpty ? ('NoData' | bbbTranslate) : (item.$MoCaption || item.$Caption | bbbTranslate) }}\r\n </span>\r\n }\r\n </ng-template>\r\n </ng-template>\r\n</ng-template>\r\n", styles: [":host{display:block}.combo-mo-ulv{width:100%}.combo-mo-ulv ::ng-deep .fd-popover-custom{width:100%}.fd-input-group{min-width:fit-content}.simple-combo-wrapper{display:flex;align-items:center;position:relative}.simple-combo-wrapper ::ng-deep .combo-mo-ulv.showExtraButtons:not(.disableorreadonly) .fd-input-group{border-left:none;border-bottom-left-radius:unset;border-top-left-radius:unset}.combo-wrapper{display:flex;align-items:center;border:var(--sapField_BorderWidth, .0625rem) solid var(--sapField_BorderColor, #89919a);border-radius:var(--sapField_BorderCornerRadius, .125rem)}::ng-deep .combo-popup-btn{border:none;background:transparent}::ng-deep .combo-popup-btn button{border-color:transparent!important;border:none}::ng-deep .fd-combobox-count-list-results{display:none}.extra-buttons{width:auto;border-right:none;border-left:none;margin:0}.extra-buttons>span{overflow:hidden}\n"], dependencies: [{ kind: "directive", type: i1$2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.MobileDirective, selector: "[mobile]" }, { kind: "component", type: i3$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i4$6.ComboboxComponent, selector: "fd-combobox", inputs: ["comboboxId", "inputId", "ariaLabel", "ariaLabelledBy", "required", "dropdownValues", "filterFn", "disabled", "placeholder", "isSearch", "glyph", "glyphFont", "showClearButton", "triggers", "closeOnOutsideClick", "openOnKeyboardEvent", "state", "itemTemplate", "groupFn", "maxHeight", "width", "searchFn", "highlighting", "closeOnSelect", "fillOnSelect", "autoComplete", "fillControlMode", "communicateByObject", "displayFn", "buttonFocusable", "clearButtonFocusable", "readOnly", "mobile", "mobileConfig", "showDropdownButton", "includes", "title", "byline", "tabOutStrategy"], outputs: ["itemClicked", "openChange", "inputTextChange"] }, { kind: "component", type: i3.IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "color", "background", "class", "ariaLabel", "ariaHidden"] }, { kind: "directive", type: i5$1.InputGroupAddOnDirective, selector: "[fdInputGroupAddon], [fd-input-group-addon]", inputs: ["class", "placement", "type", "state", "button"] }, { kind: "directive", type: i7.ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap"] }, { kind: "directive", type: i7.ListBylineDirective, selector: "[fdListByline], [fd-list-byline]", inputs: ["twoCol", "wrap"] }, { kind: "directive", type: i7.ListContentDirective, selector: "[fdListContent], [fd-list-content]", inputs: ["twoCol"] }, { kind: "directive", type: i7.ListThumbnailDirective, selector: "[fdListThumbnail], [fd-list-thumbnail]" }, { kind: "component", type: UlvPagingComponent, selector: "bsu-ulv-paging", inputs: ["pagingSetting"], outputs: ["pageChange", "pageSizeChange"] }, { kind: "component", type: MaskComponent, selector: "bsu-mask", inputs: ["size", "top"] }, { kind: "directive", type: ContentDensityDirective, selector: "[contentDensity]" }, { kind: "pipe", type: i1$2.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.MoReportValuePipe, name: "rval" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: i2.MoInfoUlvMoListPipe, name: "moInfoUlvMoList" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
12704
12739
  }
12705
12740
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiMoInfoUlvComboComponent, decorators: [{
12706
12741
  type: Component,
12707
- args: [{ selector: 'bsu-ui-mo-info-ulv-combo', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<ng-container\r\n *ngTemplateOutlet=\"\r\n comboTemplate;\r\n context: {\r\n $implicit:\r\n (loading$ | async) === true\r\n | moInfoUlvMoList\r\n : isDataLoadedFirstTime\r\n : ulvAdapter?.Setting?.Data?.MoDataList\r\n : UlvUi?.Setting?.Data?.MoDataList\r\n : ulvAdapter?.Setting?.Data?.Paging\r\n : UlvUi?.Setting?.Data?.Paging,\r\n deviceSize: deviceSize$ | async,\r\n disableOrReadonly: disableOrReadonly$ | async,\r\n disable: disable$ | async,\r\n readonly: readonly$ | async,\r\n isSearch: context._showPopup || context._showDropDown === false\r\n }\r\n \"\r\n>\r\n</ng-container>\r\n\r\n<ng-template #btnsTpl let-disableOrReadonly=\"disableOrReadonly\">\r\n <div class=\"extra-buttons fd-input-group fd-input-group--control\" contentDensity>\r\n @if (hasValue && disableOrReadonly !== true) {\r\n <span class=\"fd-input-group__addon--button combo-popup-btn\" fd-input-group-addon>\r\n <button tabindex=\"-1\" fd-button fdType=\"transparent\" glyph=\"decline\" (click)=\"onClear()\"></button>\r\n </span>\r\n } @if (!hasValue && disableOrReadonly !== true && Setting.ShowNewButton) {\r\n <span fd-input-group-addon class=\"fd-input-group__addon--button combo-popup-btn\">\r\n <button fd-button fdType=\"transparent\" glyph=\"add\" (click)=\"onNew()\"></button>\r\n </span>\r\n } @if (hasValue && disableOrReadonly !== true && Setting.ViewRelatedFormType !== 'Hide') {\r\n <span fd-input-group-addon class=\"fd-input-group__addon--button combo-popup-btn\">\r\n <button fd-button fdType=\"transparent\" glyph=\"edit\" (click)=\"onEdit()\"></button>\r\n </span>\r\n } @if (context._showPopup && !value && disableOrReadonly !== true) {\r\n <span fd-input-group-addon class=\"fd-input-group__addon--button combo-popup-btn\">\r\n <button fd-button fdType=\"transparent\" glyph=\"search\" (click)=\"onSearch()\"></button>\r\n </span>\r\n }\r\n </div>\r\n</ng-template>\r\n<ng-template\r\n #comboTemplate\r\n let-moDataList\r\n let-deviceSize=\"deviceSize\"\r\n let-disableOrReadonly=\"disableOrReadonly\"\r\n let-disable=\"disable\"\r\n let-readonly=\"readonly\"\r\n let-isSearch=\"isSearch\"\r\n>\r\n <div class=\"simple-combo-wrapper\">\r\n <fd-combobox\r\n #fdCombobox\r\n class=\"combo-mo-ulv\"\r\n [class.canAdd]=\"!hasValue && disableOrReadonly !== true && Setting.ShowNewButton\"\r\n [class.canEdit]=\"hasValue && disableOrReadonly !== true\"\r\n [class.disableorreadonly]=\"disableOrReadonly === true\"\r\n [comboboxId]=\"comboboxId\"\r\n [class.has-Value]=\"hasValue\"\r\n [placeholder]=\"'Select' | bbbTranslate\"\r\n [mobile]=\"deviceSize === 's'\"\r\n [mobileConfig]=\"mobileConfig\"\r\n [fillOnSelect]=\"true\"\r\n [readOnly]=\"readonly === true ? true : false\"\r\n [disabled]=\"disable === true ? true : false\"\r\n [dropdownValues]=\"moDataList\"\r\n [filterFn]=\"customFilter\"\r\n [openOnKeyboardEvent]=\"true\"\r\n [byline]=\"allColumns.length > 0\"\r\n [isSearch]=\"false\"\r\n [itemTemplate]=\"itemTemplate\"\r\n [displayFn]=\"displayFunc\"\r\n [showDropdownButton]=\"context._showDropDown !== false && disableOrReadonly !== true\"\r\n (itemClicked)=\"onItemClick($event, moDataList)\"\r\n (inputTextChange)=\"onInputChange($event)\"\r\n (openChange)=\"onOpenChange(fdCombobox, $event)\"\r\n >\r\n </fd-combobox>\r\n <ng-container\r\n *ngTemplateOutlet=\"btnsTpl; context: { disableOrReadonly: this.disableOrReadonly }\"\r\n ></ng-container>\r\n </div>\r\n <ng-template #itemTemplate let-item>\r\n @if (item.$isLoading) {\r\n <div fd-list-content style=\"width: 100%; height: 20px\">\r\n <bsu-mask [size]=\"'s'\" [top]=\"'10px'\"></bsu-mask>\r\n </div>\r\n } @else {\r\n <ng-container\r\n *ngTemplateOutlet=\"item.$LoadMore ? loadMoreButton : showItem; context: { ulv: ulvAdapter || UlvUi }\"\r\n >\r\n </ng-container>\r\n }\r\n <ng-template #loadMoreButton let-ulv=\"ulv\">\r\n @if (ulv) {\r\n <bsu-ulv-paging\r\n (click)=\"onPagingClick($event)\"\r\n (pageChange)=\"onPageChange($event)\"\r\n [pagingSetting]=\"ulv.Setting.Data.Paging\"\r\n >\r\n </bsu-ulv-paging>\r\n }\r\n <!-- <button\r\n style=\"width: 100%\"\r\n *ngIf=\"ulv && ulv.Setting.Data.Paging.Page + 1 < ulv.Setting.Data.Paging.TotalPages\"\r\n fd-button\r\n (click)=\"onPageChange2(ulv.Setting.Data.Paging, $event)\"\r\n [label]=\"'More' | bbbTranslate\"\r\n ></button> -->\r\n </ng-template>\r\n <ng-template #showItem>\r\n @if (allColumns?.length && !item.isEmpty) { @if (!item.$__IsLast) {\r\n <div class=\"moinfoulv devider\"></div>\r\n } @if (item.$Icon) {\r\n <span fd-list-thumbnail><fd-icon [glyph]=\"item.$Icon\"></fd-icon></span>\r\n }\r\n <div fd-list-content class=\"moinfoulv hasColumns\">\r\n <div fd-list-title class=\"title\">{{ allColumns[0].Alias | rval: item:allColumns:true }}</div>\r\n @if (allColumns[1]) {\r\n <div fd-list-byline class=\"byline\">\r\n {{ allColumns[1].Alias | rval: item:allColumns:true }}\r\n </div>\r\n }\r\n <div style=\"display: flex; column-gap: 8px; flex-wrap: wrap\">\r\n @for (column of allColumns; track column; let index = $index) { @if (index > 1) { @if (column.Alias\r\n | rval: item:allColumns:true; as value) {\r\n <span> {{ column.Alias }}:{{ value }}</span>\r\n } } }\r\n </div>\r\n </div>\r\n } @else {\r\n <span fd-list-title [class.list-empty-item]=\"item.isEmpty\"\r\n >{{ item.isEmpty ? ('NoData' | bbbTranslate) : (item.$MoCaption || item.$Caption | bbbTranslate) }}\r\n </span>\r\n }\r\n </ng-template>\r\n </ng-template>\r\n</ng-template>\r\n", styles: [":host{display:block}.combo-mo-ulv{width:100%}.combo-mo-ulv ::ng-deep .fd-popover-custom{width:100%}.fd-input-group{min-width:fit-content}.simple-combo-wrapper{display:flex;align-items:center;position:relative}.simple-combo-wrapper ::ng-deep .combo-mo-ulv[class*=has-]:not(.disableorreadonly) .fd-input-group,.simple-combo-wrapper ::ng-deep .combo-mo-ulv.canAdd:not(.disableorreadonly) .fd-input-group,.simple-combo-wrapper ::ng-deep .combo-mo-ulv.canEdit:not(.disableorreadonly) .fd-input-group{border-left:none;border-bottom-left-radius:unset;border-top-left-radius:unset}.combo-wrapper{display:flex;align-items:center;border:var(--sapField_BorderWidth, .0625rem) solid var(--sapField_BorderColor, #89919a);border-radius:var(--sapField_BorderCornerRadius, .125rem)}::ng-deep .combo-popup-btn{border:none;background:transparent}::ng-deep .combo-popup-btn button{border-color:transparent!important;border:none}::ng-deep .fd-combobox-count-list-results{display:none}.extra-buttons{width:auto;border-right:none;border-left:none;margin:0}.extra-buttons>span{overflow:hidden}\n"] }]
12742
+ args: [{ selector: 'bsu-ui-mo-info-ulv-combo', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<ng-container\r\n *ngTemplateOutlet=\"\r\n comboTemplate;\r\n context: {\r\n $implicit:\r\n (loading$ | async) === true\r\n | moInfoUlvMoList\r\n : isDataLoadedFirstTime\r\n : ulvAdapter?.Setting?.Data?.MoDataList\r\n : UlvUi?.Setting?.Data?.MoDataList\r\n : ulvAdapter?.Setting?.Data?.Paging\r\n : UlvUi?.Setting?.Data?.Paging,\r\n deviceSize: deviceSize$ | async,\r\n disableOrReadonly: disableOrReadonly$ | async,\r\n disable: disable$ | async,\r\n readonly: readonly$ | async,\r\n isSearch: context._showPopup || context._showDropDown === false\r\n }\r\n \"\r\n>\r\n</ng-container>\r\n\r\n<ng-template #btnsTpl let-disableOrReadonly=\"disableOrReadonly\">\r\n @if( showExtraButtons() ){\r\n <div class=\"extra-buttons fd-input-group fd-input-group--control\" contentDensity>\r\n @if (hasValue && !inlineEdit) {\r\n <span class=\"fd-input-group__addon--button combo-popup-btn\" fd-input-group-addon>\r\n <button tabindex=\"-1\" fd-button fdType=\"transparent\" glyph=\"decline\" (click)=\"onClear()\"></button>\r\n </span>\r\n } @if (!hasValue && Setting.ShowNewButton) {\r\n <span fd-input-group-addon class=\"fd-input-group__addon--button combo-popup-btn\">\r\n <button fd-button fdType=\"transparent\" glyph=\"add\" (click)=\"onNew()\"></button>\r\n </span>\r\n } @if (hasValue && Setting.ViewRelatedFormType !== 'Hide') {\r\n <span fd-input-group-addon class=\"fd-input-group__addon--button combo-popup-btn\">\r\n <button fd-button fdType=\"transparent\" glyph=\"edit\" (click)=\"onEdit()\"></button>\r\n </span>\r\n } @if (context._showPopup && !value ) {\r\n <span fd-input-group-addon class=\"fd-input-group__addon--button combo-popup-btn\">\r\n <button fd-button fdType=\"transparent\" glyph=\"search\" (click)=\"onSearch()\"></button>\r\n </span>\r\n }\r\n </div>\r\n }\r\n</ng-template>\r\n<ng-template\r\n #comboTemplate\r\n let-moDataList\r\n let-deviceSize=\"deviceSize\"\r\n let-disableOrReadonly=\"disableOrReadonly\"\r\n let-disable=\"disable\"\r\n let-readonly=\"readonly\"\r\n let-isSearch=\"isSearch\"\r\n>\r\n <div class=\"simple-combo-wrapper\">\r\n <fd-combobox\r\n #fdCombobox\r\n class=\"combo-mo-ulv\"\r\n [class.canAdd]=\"!hasValue && disableOrReadonly !== true && Setting.ShowNewButton\"\r\n [class.canEdit]=\"hasValue && disableOrReadonly !== true\"\r\n [class.disableorreadonly]=\"disableOrReadonly === true\"\r\n [class.showExtraButtons]=\"disableOrReadonly !== true && showExtraButtons()\"\r\n [comboboxId]=\"comboboxId\"\r\n [class.has-Value]=\"hasValue\"\r\n [placeholder]=\"'Select' | bbbTranslate\"\r\n [mobile]=\"deviceSize === 's'\"\r\n [mobileConfig]=\"mobileConfig\"\r\n [fillOnSelect]=\"true\"\r\n [readOnly]=\"readonly === true ? true : false\"\r\n [disabled]=\"disable === true ? true : false\"\r\n [dropdownValues]=\"moDataList\"\r\n [filterFn]=\"customFilter\"\r\n [openOnKeyboardEvent]=\"true\"\r\n [byline]=\"allColumns.length > 0\"\r\n [isSearch]=\"false\"\r\n [itemTemplate]=\"itemTemplate\"\r\n [displayFn]=\"displayFunc\"\r\n [showDropdownButton]=\"context._showDropDown !== false && disableOrReadonly !== true\"\r\n (itemClicked)=\"onItemClick($event, moDataList)\"\r\n (inputTextChange)=\"onInputChange($event)\"\r\n (openChange)=\"onOpenChange(fdCombobox, $event)\"\r\n >\r\n </fd-combobox>\r\n <ng-container\r\n *ngTemplateOutlet=\"btnsTpl; context: { disableOrReadonly: this.disableOrReadonly }\"\r\n ></ng-container>\r\n </div>\r\n <ng-template #itemTemplate let-item>\r\n @if (item.$isLoading) {\r\n <div fd-list-content style=\"width: 100%; height: 20px\">\r\n <bsu-mask [size]=\"'s'\" [top]=\"'10px'\"></bsu-mask>\r\n </div>\r\n } @else {\r\n <ng-container\r\n *ngTemplateOutlet=\"item.$LoadMore ? loadMoreButton : showItem; context: { ulv: ulvAdapter || UlvUi }\"\r\n >\r\n </ng-container>\r\n }\r\n <ng-template #loadMoreButton let-ulv=\"ulv\">\r\n @if (ulv) {\r\n <bsu-ulv-paging\r\n (click)=\"onPagingClick($event)\"\r\n (pageChange)=\"onPageChange($event)\"\r\n [pagingSetting]=\"ulv.Setting.Data.Paging\"\r\n >\r\n </bsu-ulv-paging>\r\n }\r\n <!-- <button\r\n style=\"width: 100%\"\r\n *ngIf=\"ulv && ulv.Setting.Data.Paging.Page + 1 < ulv.Setting.Data.Paging.TotalPages\"\r\n fd-button\r\n (click)=\"onPageChange2(ulv.Setting.Data.Paging, $event)\"\r\n [label]=\"'More' | bbbTranslate\"\r\n ></button> -->\r\n </ng-template>\r\n <ng-template #showItem>\r\n @if (allColumns?.length && !item.isEmpty) { @if (!item.$__IsLast) {\r\n <div class=\"moinfoulv devider\"></div>\r\n } @if (item.$Icon) {\r\n <span fd-list-thumbnail><fd-icon [glyph]=\"item.$Icon\"></fd-icon></span>\r\n }\r\n <div fd-list-content class=\"moinfoulv hasColumns\">\r\n <div fd-list-title class=\"title\">{{ allColumns[0].Alias | rval: item:allColumns:true }}</div>\r\n @if (allColumns[1]) {\r\n <div fd-list-byline class=\"byline\">\r\n {{ allColumns[1].Alias | rval: item:allColumns:true }}\r\n </div>\r\n }\r\n <div style=\"display: flex; column-gap: 8px; flex-wrap: wrap\">\r\n @for (column of allColumns; track column; let index = $index) { @if (index > 1) { @if (column.Alias\r\n | rval: item:allColumns:true; as value) {\r\n <span> {{ column.Alias }}:{{ value }}</span>\r\n } } }\r\n </div>\r\n </div>\r\n } @else {\r\n <span fd-list-title [class.list-empty-item]=\"item.isEmpty\"\r\n >{{ item.isEmpty ? ('NoData' | bbbTranslate) : (item.$MoCaption || item.$Caption | bbbTranslate) }}\r\n </span>\r\n }\r\n </ng-template>\r\n </ng-template>\r\n</ng-template>\r\n", styles: [":host{display:block}.combo-mo-ulv{width:100%}.combo-mo-ulv ::ng-deep .fd-popover-custom{width:100%}.fd-input-group{min-width:fit-content}.simple-combo-wrapper{display:flex;align-items:center;position:relative}.simple-combo-wrapper ::ng-deep .combo-mo-ulv.showExtraButtons:not(.disableorreadonly) .fd-input-group{border-left:none;border-bottom-left-radius:unset;border-top-left-radius:unset}.combo-wrapper{display:flex;align-items:center;border:var(--sapField_BorderWidth, .0625rem) solid var(--sapField_BorderColor, #89919a);border-radius:var(--sapField_BorderCornerRadius, .125rem)}::ng-deep .combo-popup-btn{border:none;background:transparent}::ng-deep .combo-popup-btn button{border-color:transparent!important;border:none}::ng-deep .fd-combobox-count-list-results{display:none}.extra-buttons{width:auto;border-right:none;border-left:none;margin:0}.extra-buttons>span{overflow:hidden}\n"] }]
12708
12743
  }], propDecorators: { ulvAdapter: [{
12709
12744
  type: Input
12710
12745
  }], Control: [{
@@ -15770,6 +15805,122 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
15770
15805
  args: [{ selector: 'bsu-barsa-card-banner', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<fd-card cardType=\"banner\" [style.height.px]=\"parameters.Height || 300\" (click)=\"rowChecked()\">\n <fd-card-media>\n <div\n fd-card-media-content-container\n [legendColor]=\"parameters.LegendColor || 13\"\n [style.background]=\"parameters.ColorColumn | rval: mo:allColumns:true | bbbTranslate\"\n [style.background]=\"\n parameters.ColorColumn\n ? (parameters.ColorColumn | rval: mo:allColumns:true | bbbTranslate)\n : parameters.CustomColor\n ? parameters.CustomColor\n : null\n \"\n >\n <div fd-card-media-heading [level]=\"2\">\n {{ parameters.TitleColumn | rval: mo:allColumns:true | bbbTranslate }}\n </div>\n <p fd-card-media-text>\n {{ parameters.SubtitleColumn | rval: mo:allColumns:true | bbbTranslate }}\n </p>\n @if (contextMenuItems.length ) {\n\n <bsu-ulv-context-menu\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\n [conditionalFormats]=\"conditionalFormats\"\n [styleIndex]=\"styleIndex\"\n [mo]=\"mo\"\n [index]=\"index\"\n (commandClick)=\"onUlvCommand2()\"\n [deviceName]=\"deviceName\"\n [menuItems]=\"contextMenuItems\"\n [allColumns]=\"allColumns\"\n ></bsu-ulv-context-menu>\n }\n </div>\n <div fd-card-media-image-container>\n <img\n fd-card-media-image\n [src]=\"\n (parameters.PictureColumn | rval: mo:allColumns)?.FileId\n | picFieldSrc: 'GetPictureFromFileInfo':null\n \"\n [alt]=\"parameters.TitleColumn | rval: mo:allColumns:true | bbbTranslate\"\n [style.height.px]=\"parameters?.Height || 300\"\n />\n </div>\n </fd-card-media>\n</fd-card>\n\n" }]
15771
15806
  }] });
15772
15807
 
15808
+ class BarsaThemeComponent extends BaseComponent {
15809
+ constructor() {
15810
+ super(...arguments);
15811
+ this.DEFAULT_THEME = 'sap_fiori_3';
15812
+ this.DEFAULT_CONTENTDESNITY = ContentDensityMode.COMPACT;
15813
+ this._themingService = inject(ThemingService);
15814
+ this._contentDensityService = inject(GlobalContentDensityService);
15815
+ this._portalService = inject(PortalService);
15816
+ this._domSanitizer = inject(DomSanitizer);
15817
+ this._rtlService = inject(RtlService);
15818
+ this._localStorage = inject(LocalStorageService);
15819
+ this._currentTheme = this.DEFAULT_THEME;
15820
+ this._currentContentDensity = this.DEFAULT_CONTENTDESNITY;
15821
+ }
15822
+ ngOnInit() {
15823
+ super.ngOnInit();
15824
+ this._rtlService.rtl.next(BarsaApi.LoginFormData.IsRtl);
15825
+ if (!this._applyUserSettings()) {
15826
+ this._setDefaultTheme();
15827
+ }
15828
+ this._themingService.currentTheme.subscribe((theme) => {
15829
+ if (theme) {
15830
+ this._applyPortalTheme(theme.theming.themePath, theme.theming.themingBasePath);
15831
+ }
15832
+ });
15833
+ this._loadUserPortalSettings();
15834
+ }
15835
+ _loadUserPortalSettings() {
15836
+ this._portalService.userPortalSettings$.pipe().subscribe((userPortalSettings) => {
15837
+ const userSettings = userPortalSettings['UserPortalSettings'];
15838
+ if (userSettings) {
15839
+ const { ContentDensity$Caption, Theme$Caption } = userSettings;
15840
+ let contentDensity = ContentDensity$Caption;
15841
+ const theme = Theme$Caption;
15842
+ if (!contentDensity) {
15843
+ contentDensity = this.DEFAULT_CONTENTDESNITY;
15844
+ }
15845
+ this._setUserSettings(contentDensity, theme);
15846
+ if (this._currentTheme !== theme || this._currentContentDensity !== contentDensity) {
15847
+ this._setTheme(contentDensity, theme);
15848
+ }
15849
+ }
15850
+ });
15851
+ }
15852
+ _setUserSettings(contentDensity, theme) {
15853
+ this._localStorage.setItem('sap_theme', theme);
15854
+ this._localStorage.setItem('contentDensity', contentDensity);
15855
+ }
15856
+ _applyUserSettings() {
15857
+ const theme = this._localStorage.getItem('sap_theme');
15858
+ const contentDensity = this._localStorage.getItem('contentDensity');
15859
+ if (!theme) {
15860
+ return false;
15861
+ }
15862
+ this._setTheme(contentDensity, theme);
15863
+ return true;
15864
+ }
15865
+ _setDefaultTheme() {
15866
+ const settings = this.parameters || this.settings;
15867
+ const defaultTheme = settings?.SapTheme$Caption || this.DEFAULT_THEME;
15868
+ const defaultContentDensity = settings?.ContentDensity$Caption || this.DEFAULT_CONTENTDESNITY;
15869
+ this._setTheme(defaultContentDensity, defaultTheme);
15870
+ }
15871
+ _setTheme(contentDensity, theme) {
15872
+ this._applyContentDensity(contentDensity);
15873
+ const isMobile = getDeviceIsMobile();
15874
+ const adjustedDensity = isMobile ? ContentDensityMode.COZY : contentDensity;
15875
+ const themes = this._themingService.getThemes();
15876
+ const themeId = themes.find((t) => t.id === theme || t.name === theme)?.id ?? this.DEFAULT_THEME;
15877
+ this._currentTheme = themeId;
15878
+ this._themingService.setTheme(themeId);
15879
+ this._checkDarkUi5(theme);
15880
+ this._contentDensityService.updateContentDensity(adjustedDensity);
15881
+ this._currentContentDensity = adjustedDensity;
15882
+ this._checkContentDensityUi5(adjustedDensity);
15883
+ }
15884
+ _applyPortalTheme(themePath, basePath) {
15885
+ this._portalService.setCssUrlTheme(this._domSanitizer.bypassSecurityTrustResourceUrl(themePath), this._domSanitizer.bypassSecurityTrustResourceUrl(basePath));
15886
+ }
15887
+ _applyContentDensity(contentDensity) {
15888
+ document.body.removeAttribute('data-ui5-cozy-size');
15889
+ document.body.removeAttribute('data-ui5-compact-size');
15890
+ document.body.setAttribute(contentDensity === ContentDensityMode.COZY ? 'data-ui5-cozy-size' : 'data-ui5-compact-size', '');
15891
+ }
15892
+ _checkDarkUi5(theme) {
15893
+ const isDark = theme.includes('dark');
15894
+ document.documentElement.style.setProperty('color-scheme', isDark ? 'dark' : 'light');
15895
+ document.documentElement.setAttribute('data-mode', isDark ? 'dark' : 'light');
15896
+ }
15897
+ _checkContentDensityUi5(contentDensity) {
15898
+ const body = document.body;
15899
+ const densityClasses = {
15900
+ compact: 'ui5-content-density-compact',
15901
+ condensed: 'ui5-content-density-condensed',
15902
+ cozy: 'ui5-content-density-cozy'
15903
+ };
15904
+ Object.values(densityClasses).forEach((cls) => body.classList.remove(cls));
15905
+ body.classList.add(densityClasses[contentDensity]);
15906
+ }
15907
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BarsaThemeComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
15908
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: BarsaThemeComponent, selector: "bsu-barsa-theme", inputs: { parameters: "parameters", settings: "settings" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
15909
+ }
15910
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BarsaThemeComponent, decorators: [{
15911
+ type: Component,
15912
+ args: [{
15913
+ selector: 'bsu-barsa-theme',
15914
+ template: '',
15915
+ changeDetection: ChangeDetectionStrategy.OnPush,
15916
+ standalone: false
15917
+ }]
15918
+ }], propDecorators: { parameters: [{
15919
+ type: Input
15920
+ }], settings: [{
15921
+ type: Input
15922
+ }] } });
15923
+
15773
15924
  const components = [
15774
15925
  BarsaBarDownloadFileComponent,
15775
15926
  UiTextFieldComponent,
@@ -15980,7 +16131,8 @@ const components = [
15980
16131
  NotificationItemActionsComponent,
15981
16132
  BarsaFormLayoutPanelComponent,
15982
16133
  UiReportCarouselViewComponent,
15983
- BarsaCardBannerComponent
16134
+ BarsaCardBannerComponent,
16135
+ BarsaThemeComponent
15984
16136
  ];
15985
16137
  const pipes = [
15986
16138
  UploadFileStatusPipe,
@@ -16006,102 +16158,6 @@ const directives = [
16006
16158
  TableThDirective,
16007
16159
  ContentDensityDirective
16008
16160
  ];
16009
- const INIT_SAPFIORI = (rtlService, contentDensityService, themeService, portalService, domSanitizer, localStorageService) => () => {
16010
- // rtlService.rtl.next(BarsaApi.LoginFormData.IsRtl);
16011
- const setTheme = (theme) => {
16012
- if (theme) {
16013
- themeService.setTheme(theme);
16014
- }
16015
- // themeService.setTheme(themeCaption);
16016
- themeService.currentTheme.subscribe((theme) => {
16017
- if (theme) {
16018
- portalService.setCssUrlTheme(domSanitizer.bypassSecurityTrustResourceUrl(theme.theming.themePath), domSanitizer.bypassSecurityTrustResourceUrl(theme.theming.themingBasePath));
16019
- }
16020
- });
16021
- };
16022
- portalService.userPortalSettings$.pipe().subscribe((userPortalSettings) => {
16023
- rtlService.rtl.next(BarsaApi.LoginFormData.IsRtl);
16024
- const userSettings = userPortalSettings['UserPortalSettings'];
16025
- let contentDensity;
16026
- if (!userSettings) {
16027
- const defaultTheme = localStorageService.getItem('default_theme') || 'sap_horizon';
16028
- setTheme(defaultTheme);
16029
- if (getDeviceIsMobile() || getDeviceIsPhone() || getDeviceIsTablet()) {
16030
- contentDensity = ContentDensityMode.COZY;
16031
- document.body.removeAttribute('data-ui5-compact-size');
16032
- document.body.setAttribute('data-ui5-cozy-size', '');
16033
- }
16034
- else {
16035
- contentDensity = ContentDensityMode.COMPACT;
16036
- document.body.removeAttribute('data-ui5-cozy-size');
16037
- document.body.setAttribute('data-ui5-compact-size', '');
16038
- }
16039
- contentDensityService.updateContentDensity(contentDensity);
16040
- return;
16041
- }
16042
- let theme;
16043
- if (userSettings) {
16044
- const { ContentDensity$Caption, Theme$Caption } = userSettings;
16045
- contentDensity = ContentDensity$Caption;
16046
- theme = Theme$Caption;
16047
- if (!contentDensity) {
16048
- contentDensity = ContentDensityMode.COMPACT;
16049
- }
16050
- }
16051
- if (getDeviceIsMobile() || getDeviceIsPhone()) {
16052
- contentDensity = ContentDensityMode.COZY;
16053
- }
16054
- if (contentDensity) {
16055
- {
16056
- contentDensityService.updateContentDensity(contentDensity);
16057
- }
16058
- const bodyClassCompact = 'ui5-content-density-compact';
16059
- const bodyClassCondensed = 'ui5-content-density-condensed';
16060
- const bodyClassCozy = 'ui5-content-density-cozy';
16061
- const body = document?.body;
16062
- switch (contentDensity) {
16063
- case 'condensed':
16064
- {
16065
- if (!body.classList.contains(bodyClassCondensed)) {
16066
- body.classList.add(bodyClassCondensed);
16067
- }
16068
- body.classList.remove(bodyClassCompact);
16069
- body.classList.remove(bodyClassCozy);
16070
- }
16071
- break;
16072
- case 'cozy':
16073
- {
16074
- if (!body.classList.contains(bodyClassCozy)) {
16075
- body.classList.add(bodyClassCozy);
16076
- }
16077
- body.classList.remove(bodyClassCompact);
16078
- body.classList.remove(bodyClassCondensed);
16079
- }
16080
- break;
16081
- case 'compact':
16082
- {
16083
- if (!body.classList.contains(bodyClassCompact)) {
16084
- body.classList.add(bodyClassCompact);
16085
- }
16086
- body.classList.remove(bodyClassCozy);
16087
- body.classList.remove(bodyClassCondensed);
16088
- }
16089
- break;
16090
- }
16091
- }
16092
- if (theme) {
16093
- if (theme.indexOf('dark') > -1) {
16094
- document.documentElement.style.setProperty('color-scheme', 'dark');
16095
- document.documentElement.setAttribute('data-mode', 'dark');
16096
- }
16097
- else {
16098
- document.documentElement.style.setProperty('color-scheme', 'light');
16099
- document.documentElement.setAttribute('data-mode', 'light');
16100
- }
16101
- setTheme(theme);
16102
- }
16103
- });
16104
- };
16105
16161
 
16106
16162
  class NotificationPopupService {
16107
16163
  constructor(_notificationService) {
@@ -16194,20 +16250,7 @@ const rootProviders = [
16194
16250
  GlobalContentDensityService,
16195
16251
  ThemingService,
16196
16252
  NotificationRef,
16197
- RtlService,
16198
- {
16199
- provide: APP_INITIALIZER,
16200
- useFactory: INIT_SAPFIORI,
16201
- deps: [
16202
- RtlService,
16203
- GlobalContentDensityService,
16204
- ThemingService,
16205
- PortalService,
16206
- DomSanitizer,
16207
- LocalStorageService
16208
- ],
16209
- multi: true
16210
- },
16253
+ RtlService$1,
16211
16254
  { provide: FORM_DIALOG_COMPONENT, useValue: FormDialogComponent },
16212
16255
  { provide: NOTIFICATAION_POPUP_SERVER, useClass: NotificationPopupService },
16213
16256
  { provide: TOAST_SERVICE, useClass: MessageToastService }
@@ -16226,7 +16269,7 @@ class BarsaSapUiModule extends BaseModule {
16226
16269
  };
16227
16270
  }
16228
16271
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BarsaSapUiModule, deps: [{ token: i2.DynamicComponentService }, { token: i0.ComponentFactoryResolver }], target: i0.ɵɵFactoryTarget.NgModule }); }
16229
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: BarsaSapUiModule, declarations: [BarsaBarDownloadFileComponent, UiTextFieldComponent, LyLayoutFieldLabelComponent, UiCheckBoxComponent, UiSimpleComboComponent, UiRadioGroupComponent, UiGridComponent, UiMapComponent, LyLayoutContainerOfRootComponent, LyLayoutPanelComponent, UiReadOnlyFieldComponent, UiContainerWithButtonComponent, UiPictureFileComponent, UiMoInfoUlvComboComponent, UiMultiSelectComboComponent, UiNumDecimalUiComponent, UiNumIntUiComponent, UiTimeSpanComponent, UiFileLinearListBoxComponent, LyEmptySpaceComponent, UiSinglePictureComponent, UlvSelectionComponent, UlvToolbarComponent, UlvPagingComponent, UiGridSortSettingComponent, UiGridSortItemComponent, UiGridColumnsComponent, MaskComponent, UiInfoBarPanelComponent, UiFormPanelComponent, UiSearchCommandInfoUiComponent, UlvSettingsComponent, UiTinymceComponent, UiButtonComponent, UiDateTimeComponent, FormDialogComponent, UiMoInfoSubFormUiComponent, ResponsiveToolbarComponent, ResponsiveToolbarRendererComponent, UiTextAreaComponent, LayoutControlComponent, LayoutWizardComponent, FormWizardComponent, FormDialogLessComponent, RichTextStaticComponent, UiPicturesInfoComponent, LyHorizontalLayoutComponent, LyVerticalLayoutComponent, LyTabContainerComponent, LyTabPageComponent, LyLabelComponent, UiMoInfoComboViewerComponent, UlMsgBoxAdapterComponent, UiTreeComponent, HeaderAvatarComponent, UiWorkflowPanelUiComponent, UlvContextMenuComponent, UlLoadingMaskUiComponent, UiTextFieldAutoCompleteComponent, CaptchaFieldComponent, LySimpleLabelComponent, GlobalSearchPanelComponent, GlobalSearchModuleComponent, GlobalSearchComponent, HyperlinkComponent, StaticTextComponent, UlToastAdapterComponent, MessageStripComponent, UiLinearListContainerWithButtonComponent, FundamentalDynamicFormComponent, LayoutActionsComponent, LyLayoutContainerComponent, UiUlvFormMultiSelectUiComponent, UlvFormMultiSelectComponent, UlvColumnSettingsComponent, UlvFilterSettingsComponent, UlvSortSettingsComponent, UlvGroupbySettingsComponent, BarsaListFileLinearComponent, UiPdfViewerComponent, BarsaTinyemceComponent, UiMonacoEditorComponent, BarsaMonacoEditorComponent, BarsaDateTimePickerComponent, BarsaTreeItemComponent, UiSwitchButtonComponent, UiColorUiComponent, LyLineComponent, UiUlvMainUiComponent, ReportNavigatorComponent, ManageFiltersReportComponent, ReportSearchFieldsManageComponent, ReportSearchFieldsHiddenSettingsComponent, SearchPanelComponent, ReportSearchPanelSaveComponent, UiGridFilterSettingsComponent, UiGridFilterItemComponent, UiDateRangeExComponent, UlNotifyPopupComponent, UiTableViewComponent, UiListViewComponent, UiCardViewComponent, UiReportContainerComponent, NoDataComponent, ColumnRendererComponent, InlineSaveAndCancelComponent, UiTreeViewComponent, InlineSaveAndCancelComponent, UiCalendarComponent, UiAspReportViewerComponent, UiGraphComponent, UiExceptionFormComponent, UiEditableGridComponent, ColumnMatrixRendererComponent, UiMatrixViewComponent, CustomDateTimeComponent, BarsaAspViewerComponent, FileInDialogComponent, UiMoInfoGeneralObjectUiComponent, UiGanttChartComponent, GanttDhtmlChartViewComponent, ProgressIndicatorComponent, CardViewContentComponent, CardItemComponent, UiCardViewHorizontalGroupComponent, TitleComponent, BarsaUlvMainComponent, ListItemComponent, HtreeCreateNewComponent, BarsaTableHeaderComponent, BarsaTableRowComponent, BarsaTableColumnComponent, BreadcrumbComponent, UiLabelComponent, FormToolbarButtonComponent, BarsaSearchFormComponent, ReportNewTopFormComponent, BarsaNetworkOfflineComponent, FileViewerContentComponent, FileViewerPopoverComponent, FileViewerComponent, BlobViewerComponent, NotificationItemComponent, BarsaCartableTemplateComponent, BarsaCartableGroupComponent, BarsaCartableFormComponent, BarsaColumnIndicatorComponent, BarsaFieldKeyValueComponent, BarsaToolbaritemSearchComponent, UiHtmlViewerComponent, BarsaPishnamayeshPayamComponent, BarsaTextEllipsisComponent, BarsaListFileLinearGmailComponent, BarsaLinkableItemsPanelComponent, BarsaEnumMenuButtonComponent, BarsaCardLayoutPanelComponent, BarsaHorizontalFlexPanelComponent, BarsaBaseLayoutPanelComponent, BarsaBarPanelComponent, BarsaFormSideContentComponent, BarsaSimpleFormComponent, FormToolbarComponent, BarsaListLayoutPanelComponent, BarsaGridLayoutPanelComponent, BarsaDynamicFieldComponent, UiMultiSelectRadioComponent, UiMultiSelectCheckboxComponent, UiNumIntSliderComponent, UiMultiSelectSliderComponent, UiMultiSelectCardComponent, UiMultiSelectSmileComponent, BarsaReportCheckboxSwitchButtonComponent, BarsaColumnRowNumberComponent, BarsaCardRowPayamComponent, BarsaColumnRowNumberComponent, BarsaQuestionPostComponent, BarsaQuestionAnswerFormComponent, BarsaQuestionAnswerFormAddCommentComponent, BarsaAnswerCardComponent, BarsaQuestionAnswerContentActionsSectionComponent, BarsaQuestionAnswerVoteSectionComponent, BarsaQuestionAnswerCreatorTimeSectionComponent, BarsaQuestionAnswerCommentsSectionComponent, BarsaChipComponent, BarsaTagChipComponent, BarsaReportCardFlexViewComponent, BarsaTagsCategoryRowComponent, BarsaTagCategoriesComponent, BarsaReportOneOfListComponent, BarsaCardRowPayamComponent, BarsaCustomInlineEditComponent, BarsaCustomInlineEditRowComponent, BarsaChatComponent, BarsaChatContentComponent, BarsaChatMessageComponent, BarsaChatThreadComponent, BarsaChatThreadsListComponent, BarsaChatThreadsListToolbarComponent, BarsaChatContentToolbarComponent, BarsaChatListComponent, BarsaModalComponent, BarsaTabRouteManagerComponent, BarsaBreadcrumbsComponent, BarsaRowInlineActionlistComponent, UiBpmnViewerComponent, UiNotificationViewComponent, NotificationItemActionsComponent, BarsaFormLayoutPanelComponent, UiReportCarouselViewComponent, BarsaCardBannerComponent, UploadFileStatusPipe, SapFontPipe, SapFontClassPipe, StringToArrayPipe, NodeHasOneDepthLevelPipe, MatrixValuePipe, DynamicPageSizePipe, SapSizePipe, AvatarGridColPipe, ObjectStatusIconPipe, WizardLayoutDirective, ColRendererDirective, ApplyConditionalFormatsDirective, ReportViewRendererDirective, FullscreenDialogDirective, FullscreenFilesDirective, DownloadFilesDirective, DialogHandlerDirective, TableThDirective, ContentDensityDirective], imports: [CommonModule,
16272
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: BarsaSapUiModule, declarations: [BarsaBarDownloadFileComponent, UiTextFieldComponent, LyLayoutFieldLabelComponent, UiCheckBoxComponent, UiSimpleComboComponent, UiRadioGroupComponent, UiGridComponent, UiMapComponent, LyLayoutContainerOfRootComponent, LyLayoutPanelComponent, UiReadOnlyFieldComponent, UiContainerWithButtonComponent, UiPictureFileComponent, UiMoInfoUlvComboComponent, UiMultiSelectComboComponent, UiNumDecimalUiComponent, UiNumIntUiComponent, UiTimeSpanComponent, UiFileLinearListBoxComponent, LyEmptySpaceComponent, UiSinglePictureComponent, UlvSelectionComponent, UlvToolbarComponent, UlvPagingComponent, UiGridSortSettingComponent, UiGridSortItemComponent, UiGridColumnsComponent, MaskComponent, UiInfoBarPanelComponent, UiFormPanelComponent, UiSearchCommandInfoUiComponent, UlvSettingsComponent, UiTinymceComponent, UiButtonComponent, UiDateTimeComponent, FormDialogComponent, UiMoInfoSubFormUiComponent, ResponsiveToolbarComponent, ResponsiveToolbarRendererComponent, UiTextAreaComponent, LayoutControlComponent, LayoutWizardComponent, FormWizardComponent, FormDialogLessComponent, RichTextStaticComponent, UiPicturesInfoComponent, LyHorizontalLayoutComponent, LyVerticalLayoutComponent, LyTabContainerComponent, LyTabPageComponent, LyLabelComponent, UiMoInfoComboViewerComponent, UlMsgBoxAdapterComponent, UiTreeComponent, HeaderAvatarComponent, UiWorkflowPanelUiComponent, UlvContextMenuComponent, UlLoadingMaskUiComponent, UiTextFieldAutoCompleteComponent, CaptchaFieldComponent, LySimpleLabelComponent, GlobalSearchPanelComponent, GlobalSearchModuleComponent, GlobalSearchComponent, HyperlinkComponent, StaticTextComponent, UlToastAdapterComponent, MessageStripComponent, UiLinearListContainerWithButtonComponent, FundamentalDynamicFormComponent, LayoutActionsComponent, LyLayoutContainerComponent, UiUlvFormMultiSelectUiComponent, UlvFormMultiSelectComponent, UlvColumnSettingsComponent, UlvFilterSettingsComponent, UlvSortSettingsComponent, UlvGroupbySettingsComponent, BarsaListFileLinearComponent, UiPdfViewerComponent, BarsaTinyemceComponent, UiMonacoEditorComponent, BarsaMonacoEditorComponent, BarsaDateTimePickerComponent, BarsaTreeItemComponent, UiSwitchButtonComponent, UiColorUiComponent, LyLineComponent, UiUlvMainUiComponent, ReportNavigatorComponent, ManageFiltersReportComponent, ReportSearchFieldsManageComponent, ReportSearchFieldsHiddenSettingsComponent, SearchPanelComponent, ReportSearchPanelSaveComponent, UiGridFilterSettingsComponent, UiGridFilterItemComponent, UiDateRangeExComponent, UlNotifyPopupComponent, UiTableViewComponent, UiListViewComponent, UiCardViewComponent, UiReportContainerComponent, NoDataComponent, ColumnRendererComponent, InlineSaveAndCancelComponent, UiTreeViewComponent, InlineSaveAndCancelComponent, UiCalendarComponent, UiAspReportViewerComponent, UiGraphComponent, UiExceptionFormComponent, UiEditableGridComponent, ColumnMatrixRendererComponent, UiMatrixViewComponent, CustomDateTimeComponent, BarsaAspViewerComponent, FileInDialogComponent, UiMoInfoGeneralObjectUiComponent, UiGanttChartComponent, GanttDhtmlChartViewComponent, ProgressIndicatorComponent, CardViewContentComponent, CardItemComponent, UiCardViewHorizontalGroupComponent, TitleComponent, BarsaUlvMainComponent, ListItemComponent, HtreeCreateNewComponent, BarsaTableHeaderComponent, BarsaTableRowComponent, BarsaTableColumnComponent, BreadcrumbComponent, UiLabelComponent, FormToolbarButtonComponent, BarsaSearchFormComponent, ReportNewTopFormComponent, BarsaNetworkOfflineComponent, FileViewerContentComponent, FileViewerPopoverComponent, FileViewerComponent, BlobViewerComponent, NotificationItemComponent, BarsaCartableTemplateComponent, BarsaCartableGroupComponent, BarsaCartableFormComponent, BarsaColumnIndicatorComponent, BarsaFieldKeyValueComponent, BarsaToolbaritemSearchComponent, UiHtmlViewerComponent, BarsaPishnamayeshPayamComponent, BarsaTextEllipsisComponent, BarsaListFileLinearGmailComponent, BarsaLinkableItemsPanelComponent, BarsaEnumMenuButtonComponent, BarsaCardLayoutPanelComponent, BarsaHorizontalFlexPanelComponent, BarsaBaseLayoutPanelComponent, BarsaBarPanelComponent, BarsaFormSideContentComponent, BarsaSimpleFormComponent, FormToolbarComponent, BarsaListLayoutPanelComponent, BarsaGridLayoutPanelComponent, BarsaDynamicFieldComponent, UiMultiSelectRadioComponent, UiMultiSelectCheckboxComponent, UiNumIntSliderComponent, UiMultiSelectSliderComponent, UiMultiSelectCardComponent, UiMultiSelectSmileComponent, BarsaReportCheckboxSwitchButtonComponent, BarsaColumnRowNumberComponent, BarsaCardRowPayamComponent, BarsaColumnRowNumberComponent, BarsaQuestionPostComponent, BarsaQuestionAnswerFormComponent, BarsaQuestionAnswerFormAddCommentComponent, BarsaAnswerCardComponent, BarsaQuestionAnswerContentActionsSectionComponent, BarsaQuestionAnswerVoteSectionComponent, BarsaQuestionAnswerCreatorTimeSectionComponent, BarsaQuestionAnswerCommentsSectionComponent, BarsaChipComponent, BarsaTagChipComponent, BarsaReportCardFlexViewComponent, BarsaTagsCategoryRowComponent, BarsaTagCategoriesComponent, BarsaReportOneOfListComponent, BarsaCardRowPayamComponent, BarsaCustomInlineEditComponent, BarsaCustomInlineEditRowComponent, BarsaChatComponent, BarsaChatContentComponent, BarsaChatMessageComponent, BarsaChatThreadComponent, BarsaChatThreadsListComponent, BarsaChatThreadsListToolbarComponent, BarsaChatContentToolbarComponent, BarsaChatListComponent, BarsaModalComponent, BarsaTabRouteManagerComponent, BarsaBreadcrumbsComponent, BarsaRowInlineActionlistComponent, UiBpmnViewerComponent, UiNotificationViewComponent, NotificationItemActionsComponent, BarsaFormLayoutPanelComponent, UiReportCarouselViewComponent, BarsaCardBannerComponent, BarsaThemeComponent, UploadFileStatusPipe, SapFontPipe, SapFontClassPipe, StringToArrayPipe, NodeHasOneDepthLevelPipe, MatrixValuePipe, DynamicPageSizePipe, SapSizePipe, AvatarGridColPipe, ObjectStatusIconPipe, WizardLayoutDirective, ColRendererDirective, ApplyConditionalFormatsDirective, ReportViewRendererDirective, FullscreenDialogDirective, FullscreenFilesDirective, DownloadFilesDirective, DialogHandlerDirective, TableThDirective, ContentDensityDirective], imports: [CommonModule,
16230
16273
  FormsModule,
16231
16274
  ReactiveFormsModule,
16232
16275
  BarsaNovinRayCoreModule,
@@ -16250,7 +16293,7 @@ class BarsaSapUiModule extends BaseModule {
16250
16293
  ResizableModule,
16251
16294
  PlatformIconTabBarModule, i1.ContentDensityModule, ScrollingModule,
16252
16295
  UtilDateToHhMmPipe,
16253
- UtilChatTimeBadgePipe], exports: [BarsaBarDownloadFileComponent, UiTextFieldComponent, LyLayoutFieldLabelComponent, UiCheckBoxComponent, UiSimpleComboComponent, UiRadioGroupComponent, UiGridComponent, UiMapComponent, LyLayoutContainerOfRootComponent, LyLayoutPanelComponent, UiReadOnlyFieldComponent, UiContainerWithButtonComponent, UiPictureFileComponent, UiMoInfoUlvComboComponent, UiMultiSelectComboComponent, UiNumDecimalUiComponent, UiNumIntUiComponent, UiTimeSpanComponent, UiFileLinearListBoxComponent, LyEmptySpaceComponent, UiSinglePictureComponent, UlvSelectionComponent, UlvToolbarComponent, UlvPagingComponent, UiGridSortSettingComponent, UiGridSortItemComponent, UiGridColumnsComponent, MaskComponent, UiInfoBarPanelComponent, UiFormPanelComponent, UiSearchCommandInfoUiComponent, UlvSettingsComponent, UiTinymceComponent, UiButtonComponent, UiDateTimeComponent, FormDialogComponent, UiMoInfoSubFormUiComponent, ResponsiveToolbarComponent, ResponsiveToolbarRendererComponent, UiTextAreaComponent, LayoutControlComponent, LayoutWizardComponent, FormWizardComponent, FormDialogLessComponent, RichTextStaticComponent, UiPicturesInfoComponent, LyHorizontalLayoutComponent, LyVerticalLayoutComponent, LyTabContainerComponent, LyTabPageComponent, LyLabelComponent, UiMoInfoComboViewerComponent, UlMsgBoxAdapterComponent, UiTreeComponent, HeaderAvatarComponent, UiWorkflowPanelUiComponent, UlvContextMenuComponent, UlLoadingMaskUiComponent, UiTextFieldAutoCompleteComponent, CaptchaFieldComponent, LySimpleLabelComponent, GlobalSearchPanelComponent, GlobalSearchModuleComponent, GlobalSearchComponent, HyperlinkComponent, StaticTextComponent, UlToastAdapterComponent, MessageStripComponent, UiLinearListContainerWithButtonComponent, FundamentalDynamicFormComponent, LayoutActionsComponent, LyLayoutContainerComponent, UiUlvFormMultiSelectUiComponent, UlvFormMultiSelectComponent, UlvColumnSettingsComponent, UlvFilterSettingsComponent, UlvSortSettingsComponent, UlvGroupbySettingsComponent, BarsaListFileLinearComponent, UiPdfViewerComponent, BarsaTinyemceComponent, UiMonacoEditorComponent, BarsaMonacoEditorComponent, BarsaDateTimePickerComponent, BarsaTreeItemComponent, UiSwitchButtonComponent, UiColorUiComponent, LyLineComponent, UiUlvMainUiComponent, ReportNavigatorComponent, ManageFiltersReportComponent, ReportSearchFieldsManageComponent, ReportSearchFieldsHiddenSettingsComponent, SearchPanelComponent, ReportSearchPanelSaveComponent, UiGridFilterSettingsComponent, UiGridFilterItemComponent, UiDateRangeExComponent, UlNotifyPopupComponent, UiTableViewComponent, UiListViewComponent, UiCardViewComponent, UiReportContainerComponent, NoDataComponent, ColumnRendererComponent, InlineSaveAndCancelComponent, UiTreeViewComponent, InlineSaveAndCancelComponent, UiCalendarComponent, UiAspReportViewerComponent, UiGraphComponent, UiExceptionFormComponent, UiEditableGridComponent, ColumnMatrixRendererComponent, UiMatrixViewComponent, CustomDateTimeComponent, BarsaAspViewerComponent, FileInDialogComponent, UiMoInfoGeneralObjectUiComponent, UiGanttChartComponent, GanttDhtmlChartViewComponent, ProgressIndicatorComponent, CardViewContentComponent, CardItemComponent, UiCardViewHorizontalGroupComponent, TitleComponent, BarsaUlvMainComponent, ListItemComponent, HtreeCreateNewComponent, BarsaTableHeaderComponent, BarsaTableRowComponent, BarsaTableColumnComponent, BreadcrumbComponent, UiLabelComponent, FormToolbarButtonComponent, BarsaSearchFormComponent, ReportNewTopFormComponent, BarsaNetworkOfflineComponent, FileViewerContentComponent, FileViewerPopoverComponent, FileViewerComponent, BlobViewerComponent, NotificationItemComponent, BarsaCartableTemplateComponent, BarsaCartableGroupComponent, BarsaCartableFormComponent, BarsaColumnIndicatorComponent, BarsaFieldKeyValueComponent, BarsaToolbaritemSearchComponent, UiHtmlViewerComponent, BarsaPishnamayeshPayamComponent, BarsaTextEllipsisComponent, BarsaListFileLinearGmailComponent, BarsaLinkableItemsPanelComponent, BarsaEnumMenuButtonComponent, BarsaCardLayoutPanelComponent, BarsaHorizontalFlexPanelComponent, BarsaBaseLayoutPanelComponent, BarsaBarPanelComponent, BarsaFormSideContentComponent, BarsaSimpleFormComponent, FormToolbarComponent, BarsaListLayoutPanelComponent, BarsaGridLayoutPanelComponent, BarsaDynamicFieldComponent, UiMultiSelectRadioComponent, UiMultiSelectCheckboxComponent, UiNumIntSliderComponent, UiMultiSelectSliderComponent, UiMultiSelectCardComponent, UiMultiSelectSmileComponent, BarsaReportCheckboxSwitchButtonComponent, BarsaColumnRowNumberComponent, BarsaCardRowPayamComponent, BarsaColumnRowNumberComponent, BarsaQuestionPostComponent, BarsaQuestionAnswerFormComponent, BarsaQuestionAnswerFormAddCommentComponent, BarsaAnswerCardComponent, BarsaQuestionAnswerContentActionsSectionComponent, BarsaQuestionAnswerVoteSectionComponent, BarsaQuestionAnswerCreatorTimeSectionComponent, BarsaQuestionAnswerCommentsSectionComponent, BarsaChipComponent, BarsaTagChipComponent, BarsaReportCardFlexViewComponent, BarsaTagsCategoryRowComponent, BarsaTagCategoriesComponent, BarsaReportOneOfListComponent, BarsaCardRowPayamComponent, BarsaCustomInlineEditComponent, BarsaCustomInlineEditRowComponent, BarsaChatComponent, BarsaChatContentComponent, BarsaChatMessageComponent, BarsaChatThreadComponent, BarsaChatThreadsListComponent, BarsaChatThreadsListToolbarComponent, BarsaChatContentToolbarComponent, BarsaChatListComponent, BarsaModalComponent, BarsaTabRouteManagerComponent, BarsaBreadcrumbsComponent, BarsaRowInlineActionlistComponent, UiBpmnViewerComponent, UiNotificationViewComponent, NotificationItemActionsComponent, BarsaFormLayoutPanelComponent, UiReportCarouselViewComponent, BarsaCardBannerComponent, WizardLayoutDirective, ColRendererDirective, ApplyConditionalFormatsDirective, ReportViewRendererDirective, FullscreenDialogDirective, FullscreenFilesDirective, DownloadFilesDirective, DialogHandlerDirective, TableThDirective, ContentDensityDirective, UploadFileStatusPipe, SapFontPipe, SapFontClassPipe, StringToArrayPipe, NodeHasOneDepthLevelPipe, MatrixValuePipe, DynamicPageSizePipe, SapSizePipe, AvatarGridColPipe, ObjectStatusIconPipe] }); }
16296
+ UtilChatTimeBadgePipe], exports: [BarsaBarDownloadFileComponent, UiTextFieldComponent, LyLayoutFieldLabelComponent, UiCheckBoxComponent, UiSimpleComboComponent, UiRadioGroupComponent, UiGridComponent, UiMapComponent, LyLayoutContainerOfRootComponent, LyLayoutPanelComponent, UiReadOnlyFieldComponent, UiContainerWithButtonComponent, UiPictureFileComponent, UiMoInfoUlvComboComponent, UiMultiSelectComboComponent, UiNumDecimalUiComponent, UiNumIntUiComponent, UiTimeSpanComponent, UiFileLinearListBoxComponent, LyEmptySpaceComponent, UiSinglePictureComponent, UlvSelectionComponent, UlvToolbarComponent, UlvPagingComponent, UiGridSortSettingComponent, UiGridSortItemComponent, UiGridColumnsComponent, MaskComponent, UiInfoBarPanelComponent, UiFormPanelComponent, UiSearchCommandInfoUiComponent, UlvSettingsComponent, UiTinymceComponent, UiButtonComponent, UiDateTimeComponent, FormDialogComponent, UiMoInfoSubFormUiComponent, ResponsiveToolbarComponent, ResponsiveToolbarRendererComponent, UiTextAreaComponent, LayoutControlComponent, LayoutWizardComponent, FormWizardComponent, FormDialogLessComponent, RichTextStaticComponent, UiPicturesInfoComponent, LyHorizontalLayoutComponent, LyVerticalLayoutComponent, LyTabContainerComponent, LyTabPageComponent, LyLabelComponent, UiMoInfoComboViewerComponent, UlMsgBoxAdapterComponent, UiTreeComponent, HeaderAvatarComponent, UiWorkflowPanelUiComponent, UlvContextMenuComponent, UlLoadingMaskUiComponent, UiTextFieldAutoCompleteComponent, CaptchaFieldComponent, LySimpleLabelComponent, GlobalSearchPanelComponent, GlobalSearchModuleComponent, GlobalSearchComponent, HyperlinkComponent, StaticTextComponent, UlToastAdapterComponent, MessageStripComponent, UiLinearListContainerWithButtonComponent, FundamentalDynamicFormComponent, LayoutActionsComponent, LyLayoutContainerComponent, UiUlvFormMultiSelectUiComponent, UlvFormMultiSelectComponent, UlvColumnSettingsComponent, UlvFilterSettingsComponent, UlvSortSettingsComponent, UlvGroupbySettingsComponent, BarsaListFileLinearComponent, UiPdfViewerComponent, BarsaTinyemceComponent, UiMonacoEditorComponent, BarsaMonacoEditorComponent, BarsaDateTimePickerComponent, BarsaTreeItemComponent, UiSwitchButtonComponent, UiColorUiComponent, LyLineComponent, UiUlvMainUiComponent, ReportNavigatorComponent, ManageFiltersReportComponent, ReportSearchFieldsManageComponent, ReportSearchFieldsHiddenSettingsComponent, SearchPanelComponent, ReportSearchPanelSaveComponent, UiGridFilterSettingsComponent, UiGridFilterItemComponent, UiDateRangeExComponent, UlNotifyPopupComponent, UiTableViewComponent, UiListViewComponent, UiCardViewComponent, UiReportContainerComponent, NoDataComponent, ColumnRendererComponent, InlineSaveAndCancelComponent, UiTreeViewComponent, InlineSaveAndCancelComponent, UiCalendarComponent, UiAspReportViewerComponent, UiGraphComponent, UiExceptionFormComponent, UiEditableGridComponent, ColumnMatrixRendererComponent, UiMatrixViewComponent, CustomDateTimeComponent, BarsaAspViewerComponent, FileInDialogComponent, UiMoInfoGeneralObjectUiComponent, UiGanttChartComponent, GanttDhtmlChartViewComponent, ProgressIndicatorComponent, CardViewContentComponent, CardItemComponent, UiCardViewHorizontalGroupComponent, TitleComponent, BarsaUlvMainComponent, ListItemComponent, HtreeCreateNewComponent, BarsaTableHeaderComponent, BarsaTableRowComponent, BarsaTableColumnComponent, BreadcrumbComponent, UiLabelComponent, FormToolbarButtonComponent, BarsaSearchFormComponent, ReportNewTopFormComponent, BarsaNetworkOfflineComponent, FileViewerContentComponent, FileViewerPopoverComponent, FileViewerComponent, BlobViewerComponent, NotificationItemComponent, BarsaCartableTemplateComponent, BarsaCartableGroupComponent, BarsaCartableFormComponent, BarsaColumnIndicatorComponent, BarsaFieldKeyValueComponent, BarsaToolbaritemSearchComponent, UiHtmlViewerComponent, BarsaPishnamayeshPayamComponent, BarsaTextEllipsisComponent, BarsaListFileLinearGmailComponent, BarsaLinkableItemsPanelComponent, BarsaEnumMenuButtonComponent, BarsaCardLayoutPanelComponent, BarsaHorizontalFlexPanelComponent, BarsaBaseLayoutPanelComponent, BarsaBarPanelComponent, BarsaFormSideContentComponent, BarsaSimpleFormComponent, FormToolbarComponent, BarsaListLayoutPanelComponent, BarsaGridLayoutPanelComponent, BarsaDynamicFieldComponent, UiMultiSelectRadioComponent, UiMultiSelectCheckboxComponent, UiNumIntSliderComponent, UiMultiSelectSliderComponent, UiMultiSelectCardComponent, UiMultiSelectSmileComponent, BarsaReportCheckboxSwitchButtonComponent, BarsaColumnRowNumberComponent, BarsaCardRowPayamComponent, BarsaColumnRowNumberComponent, BarsaQuestionPostComponent, BarsaQuestionAnswerFormComponent, BarsaQuestionAnswerFormAddCommentComponent, BarsaAnswerCardComponent, BarsaQuestionAnswerContentActionsSectionComponent, BarsaQuestionAnswerVoteSectionComponent, BarsaQuestionAnswerCreatorTimeSectionComponent, BarsaQuestionAnswerCommentsSectionComponent, BarsaChipComponent, BarsaTagChipComponent, BarsaReportCardFlexViewComponent, BarsaTagsCategoryRowComponent, BarsaTagCategoriesComponent, BarsaReportOneOfListComponent, BarsaCardRowPayamComponent, BarsaCustomInlineEditComponent, BarsaCustomInlineEditRowComponent, BarsaChatComponent, BarsaChatContentComponent, BarsaChatMessageComponent, BarsaChatThreadComponent, BarsaChatThreadsListComponent, BarsaChatThreadsListToolbarComponent, BarsaChatContentToolbarComponent, BarsaChatListComponent, BarsaModalComponent, BarsaTabRouteManagerComponent, BarsaBreadcrumbsComponent, BarsaRowInlineActionlistComponent, UiBpmnViewerComponent, UiNotificationViewComponent, NotificationItemActionsComponent, BarsaFormLayoutPanelComponent, UiReportCarouselViewComponent, BarsaCardBannerComponent, BarsaThemeComponent, WizardLayoutDirective, ColRendererDirective, ApplyConditionalFormatsDirective, ReportViewRendererDirective, FullscreenDialogDirective, FullscreenFilesDirective, DownloadFilesDirective, DialogHandlerDirective, TableThDirective, ContentDensityDirective, UploadFileStatusPipe, SapFontPipe, SapFontClassPipe, StringToArrayPipe, NodeHasOneDepthLevelPipe, MatrixValuePipe, DynamicPageSizePipe, SapSizePipe, AvatarGridColPipe, ObjectStatusIconPipe] }); }
16254
16297
  static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BarsaSapUiModule, providers: [{ provide: DIALOG_SERVICE, useClass: DialogService }], imports: [CommonModule,
16255
16298
  FormsModule,
16256
16299
  ReactiveFormsModule,
@@ -16322,5 +16365,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
16322
16365
  * Generated bundle index. Do not edit.
16323
16366
  */
16324
16367
 
16325
- export { ApplyConditionalFormatsDirective, AvatarGridColPipe, BarsaAnswerCardComponent, BarsaAspViewerComponent, BarsaBarDownloadFileComponent, BarsaBarPanelComponent, BarsaBaseLayoutPanelComponent, BarsaBreadcrumbsComponent, BarsaCardBannerComponent, BarsaCardLayoutPanelComponent, BarsaCardRowPayamComponent, BarsaCartableFormComponent, BarsaCartableGroupComponent, BarsaCartableTemplateComponent, BarsaChatComponent, BarsaChatContentComponent, BarsaChatContentToolbarComponent, BarsaChatListComponent, BarsaChatMessageComponent, BarsaChatThreadComponent, BarsaChatThreadsListComponent, BarsaChatThreadsListToolbarComponent, BarsaChipComponent, BarsaColumnIndicatorComponent, BarsaColumnRowNumberComponent, BarsaCustomInlineEditComponent, BarsaCustomInlineEditRowComponent, BarsaDateTimePickerComponent, BarsaDynamicFieldComponent, BarsaEnumMenuButtonComponent, BarsaFieldKeyValueComponent, BarsaFormLayoutPanelComponent, BarsaFormSideContentComponent, BarsaGridLayoutPanelComponent, BarsaHorizontalFlexPanelComponent, BarsaLinkableItemsPanelComponent, BarsaListFileLinearComponent, BarsaListFileLinearGmailComponent, BarsaListLayoutPanelComponent, BarsaModalComponent, BarsaMonacoEditorComponent, BarsaNetworkOfflineComponent, BarsaPishnamayeshPayamComponent, BarsaQuestionAnswerCommentsSectionComponent, BarsaQuestionAnswerContentActionsSectionComponent, BarsaQuestionAnswerCreatorTimeSectionComponent, BarsaQuestionAnswerFormAddCommentComponent, BarsaQuestionAnswerFormComponent, BarsaQuestionAnswerVoteSectionComponent, BarsaQuestionPostComponent, BarsaReportCardFlexViewComponent, BarsaReportCheckboxSwitchButtonComponent, BarsaReportOneOfListComponent, BarsaRowInlineActionlistComponent, BarsaSapUiModule, BarsaSapUiRoutingModule, BarsaSearchFormComponent, BarsaSimpleFormComponent, BarsaTabRouteManagerComponent, BarsaTableColumnComponent, BarsaTableHeaderComponent, BarsaTableRowComponent, BarsaTagCategoriesComponent, BarsaTagChipComponent, BarsaTagsCategoryRowComponent, BarsaTextEllipsisComponent, BarsaTinyemceComponent, BarsaToolbaritemSearchComponent, BarsaTreeItemComponent, BarsaUlvMainComponent, BlobViewerComponent, BreadcrumbComponent, CaptchaFieldComponent, CardItemComponent, CardViewContentComponent, ColRendererDirective, ColumnMatrixRendererComponent, ColumnRendererComponent, ContentDensityDirective, CustomDateTimeComponent, DeviceInfoFieldBaseComponent, DialogHandlerDirective, DownloadFilesDirective, DynamicPageSizePipe, FileInDialogComponent, FileViewerComponent, FileViewerContentComponent, FileViewerPopoverComponent, FormDialogComponent, FormDialogLessComponent, FormToolbarButtonComponent, FormToolbarComponent, FormWizardComponent, FullscreenDialogDirective, FullscreenFilesDirective, FundamentalDynamicFormComponent, GanttDhtmlChartViewComponent, GetFormLayoutGrid, GlobalSearchComponent, GlobalSearchModuleComponent, GlobalSearchPanelComponent, HeaderAvatarComponent, HtreeCreateNewComponent, HyperlinkComponent, IconBusinessSuite, IconTNT, InlineSaveAndCancelComponent, LayoutActionsComponent, LayoutControlComponent, LayoutWizardComponent, ListItemComponent, LyEmptySpaceComponent, LyHorizontalLayoutComponent, LyLabelComponent, LyLayoutContainerComponent, LyLayoutContainerOfRootComponent, LyLayoutFieldLabelComponent, LyLayoutPanelComponent, LyLineComponent, LySimpleLabelComponent, LyTabContainerComponent, LyTabPageComponent, LyVerticalLayoutComponent, ManageFiltersReportComponent, MaskComponent, MatrixValuePipe, MessageStripComponent, NoDataComponent, NodeHasOneDepthLevelPipe, NotificationItemActionsComponent, NotificationItemComponent, ObjectStatusIconPipe, ProgressIndicatorComponent, ReportNavigatorComponent, ReportNewTopFormComponent, ReportSearchFieldsHiddenSettingsComponent, ReportSearchFieldsManageComponent, ReportSearchPanelSaveComponent, ReportViewRendererDirective, ResponsiveToolbarComponent, ResponsiveToolbarRendererComponent, RichTextStaticComponent, SapFontClassPipe, SapFontPipe, SapSizePipe, SapUiReportBaseComponent, SearchPanelComponent, StaticTextComponent, StringToArrayPipe, TableThDirective, TitleComponent, UiAspReportViewerComponent, UiBpmnViewerComponent, UiButtonComponent, UiCalendarComponent, UiCardViewComponent, UiCardViewHorizontalGroupComponent, UiCheckBoxComponent, UiColorUiComponent, UiContainerWithButtonComponent, UiDateRangeExComponent, UiDateTimeComponent, UiEditableGridComponent, UiExceptionFormComponent, UiFileLinearListBoxComponent, UiFormPanelComponent, UiGanttChartComponent, UiGraphComponent, UiGridColumnsComponent, UiGridComponent, UiGridFilterItemComponent, UiGridFilterSettingsComponent, UiGridSortItemComponent, UiGridSortSettingComponent, UiHtmlViewerComponent, UiInfoBarPanelComponent, UiLabelComponent, UiLinearListContainerWithButtonComponent, UiListViewComponent, UiMapComponent, UiMatrixViewComponent, UiMoInfoComboViewerComponent, UiMoInfoGeneralObjectUiComponent, UiMoInfoSubFormUiComponent, UiMoInfoUlvComboComponent, UiMonacoEditorComponent, UiMultiSelectCardComponent, UiMultiSelectCheckboxComponent, UiMultiSelectComboComponent, UiMultiSelectRadioComponent, UiMultiSelectSliderComponent, UiMultiSelectSmileComponent, UiNotificationViewComponent, UiNumDecimalUiComponent, UiNumIntSliderComponent, UiNumIntUiComponent, UiPdfViewerComponent, UiPictureFileComponent, UiPicturesInfoComponent, UiRadioGroupComponent, UiReadOnlyFieldComponent, UiReportCarouselViewComponent, UiReportContainerComponent, UiSearchCommandInfoUiComponent, UiSimpleComboComponent, UiSinglePictureComponent, UiSwitchButtonComponent, UiTableViewComponent, UiTextAreaComponent, UiTextFieldAutoCompleteComponent, UiTextFieldComponent, UiTimeSpanComponent, UiTinymceComponent, UiTreeComponent, UiTreeViewComponent, UiUlvFormMultiSelectUiComponent, UiUlvMainUiComponent, UiWorkflowPanelUiComponent, UlLoadingMaskUiComponent, UlMsgBoxAdapterComponent, UlNotifyPopupComponent, UlToastAdapterComponent, UlvColumnSettingsComponent, UlvContextMenuComponent, UlvFilterSettingsComponent, UlvFormMultiSelectComponent, UlvGroupbySettingsComponent, UlvPagingComponent, UlvSelectionComponent, UlvSettingsComponent, UlvSortSettingsComponent, UlvToolbarComponent, UploadFileStatusPipe, WidthTypeEnum, WizardLayoutDirective, _trimEnd, getNestedValue, insertAvatar, sort$1 as sort };
16368
+ export { ApplyConditionalFormatsDirective, AvatarGridColPipe, BarsaAnswerCardComponent, BarsaAspViewerComponent, BarsaBarDownloadFileComponent, BarsaBarPanelComponent, BarsaBaseLayoutPanelComponent, BarsaBreadcrumbsComponent, BarsaCardBannerComponent, BarsaCardLayoutPanelComponent, BarsaCardRowPayamComponent, BarsaCartableFormComponent, BarsaCartableGroupComponent, BarsaCartableTemplateComponent, BarsaChatComponent, BarsaChatContentComponent, BarsaChatContentToolbarComponent, BarsaChatListComponent, BarsaChatMessageComponent, BarsaChatThreadComponent, BarsaChatThreadsListComponent, BarsaChatThreadsListToolbarComponent, BarsaChipComponent, BarsaColumnIndicatorComponent, BarsaColumnRowNumberComponent, BarsaCustomInlineEditComponent, BarsaCustomInlineEditRowComponent, BarsaDateTimePickerComponent, BarsaDynamicFieldComponent, BarsaEnumMenuButtonComponent, BarsaFieldKeyValueComponent, BarsaFormLayoutPanelComponent, BarsaFormSideContentComponent, BarsaGridLayoutPanelComponent, BarsaHorizontalFlexPanelComponent, BarsaLinkableItemsPanelComponent, BarsaListFileLinearComponent, BarsaListFileLinearGmailComponent, BarsaListLayoutPanelComponent, BarsaModalComponent, BarsaMonacoEditorComponent, BarsaNetworkOfflineComponent, BarsaPishnamayeshPayamComponent, BarsaQuestionAnswerCommentsSectionComponent, BarsaQuestionAnswerContentActionsSectionComponent, BarsaQuestionAnswerCreatorTimeSectionComponent, BarsaQuestionAnswerFormAddCommentComponent, BarsaQuestionAnswerFormComponent, BarsaQuestionAnswerVoteSectionComponent, BarsaQuestionPostComponent, BarsaReportCardFlexViewComponent, BarsaReportCheckboxSwitchButtonComponent, BarsaReportOneOfListComponent, BarsaRowInlineActionlistComponent, BarsaSapUiModule, BarsaSapUiRoutingModule, BarsaSearchFormComponent, BarsaSimpleFormComponent, BarsaTabRouteManagerComponent, BarsaTableColumnComponent, BarsaTableHeaderComponent, BarsaTableRowComponent, BarsaTagCategoriesComponent, BarsaTagChipComponent, BarsaTagsCategoryRowComponent, BarsaTextEllipsisComponent, BarsaThemeComponent, BarsaTinyemceComponent, BarsaToolbaritemSearchComponent, BarsaTreeItemComponent, BarsaUlvMainComponent, BlobViewerComponent, BreadcrumbComponent, CaptchaFieldComponent, CardItemComponent, CardViewContentComponent, ColRendererDirective, ColumnMatrixRendererComponent, ColumnRendererComponent, ContentDensityDirective, CustomDateTimeComponent, DeviceInfoFieldBaseComponent, DialogHandlerDirective, DownloadFilesDirective, DynamicPageSizePipe, FileInDialogComponent, FileViewerComponent, FileViewerContentComponent, FileViewerPopoverComponent, FormDialogComponent, FormDialogLessComponent, FormToolbarButtonComponent, FormToolbarComponent, FormWizardComponent, FullscreenDialogDirective, FullscreenFilesDirective, FundamentalDynamicFormComponent, GanttDhtmlChartViewComponent, GetFormLayoutGrid, GlobalSearchComponent, GlobalSearchModuleComponent, GlobalSearchPanelComponent, HeaderAvatarComponent, HtreeCreateNewComponent, HyperlinkComponent, IconBusinessSuite, IconTNT, InlineSaveAndCancelComponent, LayoutActionsComponent, LayoutControlComponent, LayoutWizardComponent, ListItemComponent, LyEmptySpaceComponent, LyHorizontalLayoutComponent, LyLabelComponent, LyLayoutContainerComponent, LyLayoutContainerOfRootComponent, LyLayoutFieldLabelComponent, LyLayoutPanelComponent, LyLineComponent, LySimpleLabelComponent, LyTabContainerComponent, LyTabPageComponent, LyVerticalLayoutComponent, ManageFiltersReportComponent, MaskComponent, MatrixValuePipe, MessageStripComponent, NoDataComponent, NodeHasOneDepthLevelPipe, NotificationItemActionsComponent, NotificationItemComponent, ObjectStatusIconPipe, ProgressIndicatorComponent, ReportNavigatorComponent, ReportNewTopFormComponent, ReportSearchFieldsHiddenSettingsComponent, ReportSearchFieldsManageComponent, ReportSearchPanelSaveComponent, ReportViewRendererDirective, ResponsiveToolbarComponent, ResponsiveToolbarRendererComponent, RichTextStaticComponent, SapFontClassPipe, SapFontPipe, SapSizePipe, SapUiReportBaseComponent, SearchPanelComponent, StaticTextComponent, StringToArrayPipe, TableThDirective, TitleComponent, UiAspReportViewerComponent, UiBpmnViewerComponent, UiButtonComponent, UiCalendarComponent, UiCardViewComponent, UiCardViewHorizontalGroupComponent, UiCheckBoxComponent, UiColorUiComponent, UiContainerWithButtonComponent, UiDateRangeExComponent, UiDateTimeComponent, UiEditableGridComponent, UiExceptionFormComponent, UiFileLinearListBoxComponent, UiFormPanelComponent, UiGanttChartComponent, UiGraphComponent, UiGridColumnsComponent, UiGridComponent, UiGridFilterItemComponent, UiGridFilterSettingsComponent, UiGridSortItemComponent, UiGridSortSettingComponent, UiHtmlViewerComponent, UiInfoBarPanelComponent, UiLabelComponent, UiLinearListContainerWithButtonComponent, UiListViewComponent, UiMapComponent, UiMatrixViewComponent, UiMoInfoComboViewerComponent, UiMoInfoGeneralObjectUiComponent, UiMoInfoSubFormUiComponent, UiMoInfoUlvComboComponent, UiMonacoEditorComponent, UiMultiSelectCardComponent, UiMultiSelectCheckboxComponent, UiMultiSelectComboComponent, UiMultiSelectRadioComponent, UiMultiSelectSliderComponent, UiMultiSelectSmileComponent, UiNotificationViewComponent, UiNumDecimalUiComponent, UiNumIntSliderComponent, UiNumIntUiComponent, UiPdfViewerComponent, UiPictureFileComponent, UiPicturesInfoComponent, UiRadioGroupComponent, UiReadOnlyFieldComponent, UiReportCarouselViewComponent, UiReportContainerComponent, UiSearchCommandInfoUiComponent, UiSimpleComboComponent, UiSinglePictureComponent, UiSwitchButtonComponent, UiTableViewComponent, UiTextAreaComponent, UiTextFieldAutoCompleteComponent, UiTextFieldComponent, UiTimeSpanComponent, UiTinymceComponent, UiTreeComponent, UiTreeViewComponent, UiUlvFormMultiSelectUiComponent, UiUlvMainUiComponent, UiWorkflowPanelUiComponent, UlLoadingMaskUiComponent, UlMsgBoxAdapterComponent, UlNotifyPopupComponent, UlToastAdapterComponent, UlvColumnSettingsComponent, UlvContextMenuComponent, UlvFilterSettingsComponent, UlvFormMultiSelectComponent, UlvGroupbySettingsComponent, UlvPagingComponent, UlvSelectionComponent, UlvSettingsComponent, UlvSortSettingsComponent, UlvToolbarComponent, UploadFileStatusPipe, WidthTypeEnum, WizardLayoutDirective, _trimEnd, getNestedValue, insertAvatar, sort$1 as sort };
16326
16369
  //# sourceMappingURL=barsa-sap-ui.mjs.map