barsa-sap-ui 2.2.7 → 2.2.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/barsa-table-row/barsa-table-row.component.mjs +3 -3
- package/esm2022/lib/card-item/card-item.component.mjs +2 -2
- package/esm2022/lib/column-renderer/column-renderer.component.mjs +15 -8
- package/esm2022/lib/ui-bpmn-viewer/ui-bpmn-viewer.component.mjs +2 -2
- package/esm2022/lib/ui-linear-list-container-with-button/ui-linear-list-container-with-button.component.mjs +3 -3
- package/esm2022/lib/ulv-form-multi-select/ulv-form-multi-select.component.mjs +2 -2
- package/fesm2022/barsa-sap-ui.mjs +23 -16
- package/fesm2022/barsa-sap-ui.mjs.map +1 -1
- package/lib/column-renderer/column-renderer.component.d.ts +4 -1
- package/package.json +1 -1
|
@@ -4777,13 +4777,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
4777
4777
|
}] } });
|
|
4778
4778
|
|
|
4779
4779
|
class ColumnRendererComponent extends BaseComponent {
|
|
4780
|
-
/**
|
|
4781
|
-
*
|
|
4782
|
-
*/
|
|
4783
4780
|
constructor(_cdr) {
|
|
4784
4781
|
super();
|
|
4785
4782
|
this._cdr = _cdr;
|
|
4786
4783
|
this._isSmall = false;
|
|
4784
|
+
/**
|
|
4785
|
+
*
|
|
4786
|
+
*/
|
|
4787
|
+
this._renderer2 = inject(Renderer2);
|
|
4787
4788
|
}
|
|
4788
4789
|
ngOnInit() {
|
|
4789
4790
|
this.signalValue = signal(this.value);
|
|
@@ -4813,13 +4814,19 @@ class ColumnRendererComponent extends BaseComponent {
|
|
|
4813
4814
|
this.showMore = val;
|
|
4814
4815
|
this._cdr.detectChanges();
|
|
4815
4816
|
}
|
|
4817
|
+
onSetMaxWidth() {
|
|
4818
|
+
this._renderer2.setStyle(this._filePopover.nativeElement, 'max-width', `${this.containerDom?.offsetWidth}px`);
|
|
4819
|
+
}
|
|
4816
4820
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ColumnRendererComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4817
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ColumnRendererComponent, selector: "bsu-column-renderer,[colRenderer]", inputs: { column: "column", allColumns: "allColumns", mo: "mo", index: "index", editMode: "editMode", customRowHeight: "customRowHeight", controlUi: "controlUi", formLayoutShowLabel: "formLayoutShowLabel", isChecked: "isChecked", isNewInlineMo: "isNewInlineMo", containerDom: "containerDom", disableEllapsis: "disableEllapsis", rtl: "rtl", isMobile: "isMobile", fdTextMode: "fdTextMode", deviceName: "deviceName", deviceSize: "deviceSize", value: "value", icon: "icon" }, host: { properties: { "class.isMobile": "this._isSmall" } }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "@if (column) {\r\n<ng-container *ngTemplateOutlet=\"editMode ? formControlTemplate : renderCellTemplate\"> </ng-container>\r\n}\r\n<ng-template #renderCellTemplate>\r\n @switch (column.FieldTypeId) { @case (42) {\r\n <ng-container *ngTemplateOutlet=\"renderCellImage\"></ng-container>\r\n } @case (33) {\r\n <ng-container *ngTemplateOutlet=\"renderCellFileInfo\"></ng-container>\r\n } @case (31) {\r\n <ng-container *ngTemplateOutlet=\"renderCellFileListKhati\"></ng-container>\r\n } @case (11) {\r\n <ng-container *ngTemplateOutlet=\"renderCellListTasavir\"></ng-container>\r\n } @case (5) {\r\n <ng-container\r\n *ngTemplateOutlet=\"column.Extra?.ShowCheckInGrid ? renderCellChecbox : renderChecboxImage\"\r\n ></ng-container>\r\n } @default {\r\n <ng-container *ngTemplateOutlet=\"renderGeneral\"></ng-container>\r\n } }\r\n</ng-template>\r\n<ng-template #renderGeneral>\r\n <div class=\"renderGeneral\" [class.onlyIcon]=\"column.Extra?.IconDisplayTypeEnum === 'Image'\" [style.width]=\"\">\r\n @if (icon) {\r\n <img [attr.rtl]=\"rtl\" [src]=\"icon\" />\r\n }\r\n <!-- <fd-text\r\n #fdText\r\n *ngIf=\"column.Extra?.IconDisplayTypeEnum !== 'Image'\"\r\n [maxLines]=\"1\"\r\n [text]=\"value\"\r\n [fd-inline-help]=\"value\"\r\n [disabled]=\"!fdText._hasMore\"\r\n ></fd-text> -->\r\n\r\n <!-- <bsu-barsa-text-ellipsis\r\n [style.width]=\"column.$Width\"\r\n *ngIf=\"column.Extra?.IconDisplayTypeEnum !== 'Image'\"\r\n [text]=\"value\"\r\n></bsu-barsa-text-ellipsis> -->\r\n <!-- <div *ngIf=\"column.Extra?.IconDisplayTypeEnum !== 'Image'\" style=\"word-break:break-word\">\r\n{{ value }}\r\n</div> -->\r\n @if (column.Extra?.IconDisplayTypeEnum !== 'Image') { @if(!isMobile && !fdTextMode){\r\n <div\r\n [ellapsisText]=\"value\"\r\n [disableEllapsis]=\"editMode\"\r\n [class.ellapsis]=\"!disableEllapsis\"\r\n [attr.title]=\"value\"\r\n (ellapsised)=\"onElapsised($event)\"\r\n >\r\n {{ value }}\r\n </div>\r\n } @else{\r\n <fd-text [attr.title]=\"value\" class=\"col-value\" [text]=\"value\" [maxLines]=\"2\"></fd-text>\r\n } }\r\n </div>\r\n</ng-template>\r\n<ng-template #formControlTemplate>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n !controlUi || controlUi.FieldUi.originalXtype === 'Ui.ReadOnlyField'\r\n ? renderCellTemplate\r\n : layoutControlTemplate\r\n \"\r\n ></ng-container>\r\n</ng-template>\r\n<ng-template #layoutControlTemplate>\r\n @if (controlUi) {\r\n <bsu-layout-control\r\n [inlineEdit]=\"true\"\r\n [caption]=\"column.Caption\"\r\n [config]=\"controlUi\"\r\n [focusControl]=\"index === 0 && (isChecked || isNewInlineMo)\"\r\n [showLabel]=\"formLayoutShowLabel\"\r\n ></bsu-layout-control>\r\n }\r\n</ng-template>\r\n<ng-template #renderCellListTasavir>\r\n @if (mo[column.Name] && mo[column.Name].Images) {\r\n <div style=\"display: flex; flex-wrap: wrap; gap: 0.15rem\">\r\n @for (pic of mo[column.Name].Images; track pic) {\r\n <img\r\n fullscreen\r\n fullscreenFiles\r\n [files]=\"mo[column.Name].Images\"\r\n [isImageGallery]=\"true\"\r\n [deviceSize]=\"deviceSize\"\r\n [src]=\"pic.FileId | picFieldSrc: 'BarsaPicture.Thumbnail':null:'':32:32\"\r\n style=\"width: 3rem; height: 3rem\"\r\n />\r\n }\r\n </div>\r\n }\r\n</ng-template>\r\n<ng-template #renderCellFileListKhati>\r\n @if (mo[column.Name]) {\r\n <div class=\"file-viewer-attachments\">\r\n @for (file of mo[column.Name].Files; track file) { @if (!file.IsDeleted) {\r\n <bsu-file-viewer-popover\r\n [
|
|
4821
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ColumnRendererComponent, selector: "bsu-column-renderer,[colRenderer]", inputs: { column: "column", allColumns: "allColumns", mo: "mo", index: "index", editMode: "editMode", customRowHeight: "customRowHeight", controlUi: "controlUi", formLayoutShowLabel: "formLayoutShowLabel", isChecked: "isChecked", isNewInlineMo: "isNewInlineMo", containerDom: "containerDom", disableEllapsis: "disableEllapsis", rtl: "rtl", isMobile: "isMobile", fdTextMode: "fdTextMode", deviceName: "deviceName", deviceSize: "deviceSize", value: "value", icon: "icon" }, host: { properties: { "class.isMobile": "this._isSmall" } }, viewQueries: [{ propertyName: "_filePopover", first: true, predicate: ["fileviewerPopover"], descendants: true, read: ElementRef }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "@if (column) {\r\n<ng-container *ngTemplateOutlet=\"editMode ? formControlTemplate : renderCellTemplate\"> </ng-container>\r\n}\r\n<ng-template #renderCellTemplate>\r\n @switch (column.FieldTypeId) { @case (42) {\r\n <ng-container *ngTemplateOutlet=\"renderCellImage\"></ng-container>\r\n } @case (33) {\r\n <ng-container *ngTemplateOutlet=\"renderCellFileInfo\"></ng-container>\r\n } @case (31) {\r\n <ng-container *ngTemplateOutlet=\"renderCellFileListKhati\"></ng-container>\r\n } @case (11) {\r\n <ng-container *ngTemplateOutlet=\"renderCellListTasavir\"></ng-container>\r\n } @case (5) {\r\n <ng-container\r\n *ngTemplateOutlet=\"column.Extra?.ShowCheckInGrid ? renderCellChecbox : renderChecboxImage\"\r\n ></ng-container>\r\n } @default {\r\n <ng-container *ngTemplateOutlet=\"renderGeneral\"></ng-container>\r\n } }\r\n</ng-template>\r\n<ng-template #renderGeneral>\r\n <div class=\"renderGeneral\" [class.onlyIcon]=\"column.Extra?.IconDisplayTypeEnum === 'Image'\" [style.width]=\"\">\r\n @if (icon) {\r\n <img [attr.rtl]=\"rtl\" [src]=\"icon\" />\r\n }\r\n <!-- <fd-text\r\n #fdText\r\n *ngIf=\"column.Extra?.IconDisplayTypeEnum !== 'Image'\"\r\n [maxLines]=\"1\"\r\n [text]=\"value\"\r\n [fd-inline-help]=\"value\"\r\n [disabled]=\"!fdText._hasMore\"\r\n ></fd-text> -->\r\n\r\n <!-- <bsu-barsa-text-ellipsis\r\n [style.width]=\"column.$Width\"\r\n *ngIf=\"column.Extra?.IconDisplayTypeEnum !== 'Image'\"\r\n [text]=\"value\"\r\n></bsu-barsa-text-ellipsis> -->\r\n <!-- <div *ngIf=\"column.Extra?.IconDisplayTypeEnum !== 'Image'\" style=\"word-break:break-word\">\r\n{{ value }}\r\n</div> -->\r\n @if (column.Extra?.IconDisplayTypeEnum !== 'Image') { @if(!isMobile && !fdTextMode){\r\n <div\r\n [ellapsisText]=\"value\"\r\n [disableEllapsis]=\"editMode\"\r\n [class.ellapsis]=\"!disableEllapsis\"\r\n [attr.title]=\"value\"\r\n (ellapsised)=\"onElapsised($event)\"\r\n >\r\n {{ value }}\r\n </div>\r\n } @else{\r\n <fd-text [attr.title]=\"value\" class=\"col-value\" [text]=\"value\" [maxLines]=\"2\"></fd-text>\r\n } }\r\n </div>\r\n</ng-template>\r\n<ng-template #formControlTemplate>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n !controlUi || controlUi.FieldUi.originalXtype === 'Ui.ReadOnlyField'\r\n ? renderCellTemplate\r\n : layoutControlTemplate\r\n \"\r\n ></ng-container>\r\n</ng-template>\r\n<ng-template #layoutControlTemplate>\r\n @if (controlUi) {\r\n <bsu-layout-control\r\n [inlineEdit]=\"true\"\r\n [caption]=\"column.Caption\"\r\n [config]=\"controlUi\"\r\n [focusControl]=\"index === 0 && (isChecked || isNewInlineMo)\"\r\n [showLabel]=\"formLayoutShowLabel\"\r\n ></bsu-layout-control>\r\n }\r\n</ng-template>\r\n<ng-template #renderCellListTasavir>\r\n @if (mo[column.Name] && mo[column.Name].Images) {\r\n <div style=\"display: flex; flex-wrap: wrap; gap: 0.15rem\">\r\n @for (pic of mo[column.Name].Images; track pic) {\r\n <img\r\n fullscreen\r\n fullscreenFiles\r\n [files]=\"mo[column.Name].Images\"\r\n [isImageGallery]=\"true\"\r\n [deviceSize]=\"deviceSize\"\r\n [src]=\"pic.FileId | picFieldSrc: 'BarsaPicture.Thumbnail':null:'':32:32\"\r\n style=\"width: 3rem; height: 3rem\"\r\n />\r\n }\r\n </div>\r\n }\r\n</ng-template>\r\n<ng-template #renderCellFileListKhati>\r\n @if (mo[column.Name]) {\r\n <div class=\"file-viewer-attachments\">\r\n @for (file of mo[column.Name].Files; track file) { @if (!file.IsDeleted) {\r\n <bsu-file-viewer-popover\r\n #fileviewerPopover\r\n intersectionObserver\r\n [intersectionThreshold]=\"0.1\"\r\n (visibilityChange)=\"$event === 'Visible' && onSetMaxWidth()\"\r\n [file]=\"file\"\r\n [files]=\"mo[column.Name].Files\"\r\n [deviceSize]=\"deviceSize\"\r\n [canDownload]=\"true\"\r\n [disableRemove]=\"true\"\r\n [fdType]=\"'transparent'\"\r\n preventDefault\r\n stopPropagation\r\n ></bsu-file-viewer-popover>\r\n }\r\n <!-- <fd-token *ngIf=\"!file.IsDeleted\" [readOnly]=\"true\">{{ file.FileName }}</fd-token> -->\r\n }\r\n </div>\r\n }\r\n</ng-template>\r\n<ng-template #renderCellFileInfo>\r\n @if (mo[column.Name]) {\r\n <fd-avatar\r\n [transparent]=\"true\"\r\n [size]=\"column.FieldTypeId === '42' || column.FieldTypeId === 42 ? 'xs' : deviceSize === 's' ? 's' : 'm'\"\r\n [image]=\"mo[column.Name] | picFieldSrc: 'PictureFileInfo':null:column.FieldDefId\"\r\n ></fd-avatar>\r\n }\r\n</ng-template>\r\n<ng-template #renderCellChecbox>\r\n <fd-icon [glyph]=\"mo[column.Name] === true ? 'accept' : 'less'\"></fd-icon>\r\n</ng-template>\r\n<ng-template #renderChecboxImage>\r\n @if (column.Extra?.TrueImage === '') {\r\n {{ value }}\r\n } @if (column.Extra?.TrueImage !== '') {\r\n <img [src]=\"mo[column.Name] ? column.Extra?.TrueImage : column.Extra?.FalseImage\" aling=\"middle\" />\r\n }\r\n</ng-template>\r\n<ng-template #renderCellImage>\r\n @if (mo[column.Name] && mo[column.Name]['Url']) {\r\n <fd-avatar\r\n [size]=\"column.FieldTypeId === '42' || column.FieldTypeId === 42 ? 'xs' : deviceSize === 's' ? 's' : 'm'\"\r\n [transparent]=\"true\"\r\n [image]=\"mo[column.Name]['Url']\"\r\n ></fd-avatar>\r\n }\r\n</ng-template>\r\n", styles: [":host{display:contents;overflow:hidden;padding:0}:host.isMobile span{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;white-space:pre-wrap}fd-avatar{min-width:100%;width:100%;max-width:64px}.renderGeneral{display:flex;width:100%;height:100%;align-items:center;justify-content:start}.renderGeneral.onlyIcon{justify-content:center}fd-text.col-value ::ng-deep p{color:inherit;font-size:inherit;font-family:inherit}\n"], dependencies: [{ kind: "directive", type: i1$2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.IntersectionObserverDirective, selector: "[intersectionObserver]", inputs: ["intersectionDebounce", "intersectionRootMargin", "intersectionRoot", "intersectionThreshold"], outputs: ["visibilityChange"] }, { kind: "directive", type: i2.EllapsisTextDirective, selector: "[ellapsisText]", inputs: ["ellapsisText", "fontSize", "disableEllapsis"], outputs: ["ellapsised"] }, { kind: "directive", type: i2.StopPropagationDirective, selector: "[stopPropagation]" }, { kind: "directive", type: i2.PreventDefaultDirective, selector: "[preventDefault]" }, { kind: "component", type: i3$6.AvatarComponent, selector: "fd-avatar", inputs: ["class", "id", "ariaLabel", "ariaLabelledby", "label", "size", "font", "glyph", "zoomGlyph", "circle", "transparent", "contain", "placeholder", "tile", "border", "colorAccent", "colorIndication", "random", "clickable", "valueState", "image", "alterIcon", "backupImage"], outputs: ["avatarClicked", "zoomGlyphClicked"] }, { kind: "component", type: i6.IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "color", "background", "class", "ariaLabel", "ariaHidden"] }, { kind: "component", type: i5$4.TextComponent, selector: "fd-text", inputs: ["text", "maxLines", "whitespaces", "hyphenation", "expandable", "isCollapsed"], outputs: ["isCollapsedChange"] }, { kind: "component", type: LayoutControlComponent, selector: "bsu-layout-control", inputs: ["inlineEdit", "caption", "focusControl", "showLabel", "maxLabelWidth", "hasHorizontalText", "contentDensity", "flex", "RefreshLabel", "SetVisible"], outputs: ["events"] }, { kind: "component", type: FileViewerPopoverComponent, selector: "bsu-file-viewer-popover", inputs: ["files", "file", "deviceSize", "canDownload", "disableRemove", "fdType"], outputs: ["remove"] }, { kind: "directive", type: FullscreenFilesDirective, selector: "[fullscreenFiles]", inputs: ["files", "title", "deviceSize", "isImageGallery", "component"] }, { kind: "pipe", type: i2.PictureFieldSourcePipe, name: "picFieldSrc" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
4818
4822
|
}
|
|
4819
4823
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ColumnRendererComponent, decorators: [{
|
|
4820
4824
|
type: Component,
|
|
4821
|
-
args: [{ selector: 'bsu-column-renderer,[colRenderer]', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "@if (column) {\r\n<ng-container *ngTemplateOutlet=\"editMode ? formControlTemplate : renderCellTemplate\"> </ng-container>\r\n}\r\n<ng-template #renderCellTemplate>\r\n @switch (column.FieldTypeId) { @case (42) {\r\n <ng-container *ngTemplateOutlet=\"renderCellImage\"></ng-container>\r\n } @case (33) {\r\n <ng-container *ngTemplateOutlet=\"renderCellFileInfo\"></ng-container>\r\n } @case (31) {\r\n <ng-container *ngTemplateOutlet=\"renderCellFileListKhati\"></ng-container>\r\n } @case (11) {\r\n <ng-container *ngTemplateOutlet=\"renderCellListTasavir\"></ng-container>\r\n } @case (5) {\r\n <ng-container\r\n *ngTemplateOutlet=\"column.Extra?.ShowCheckInGrid ? renderCellChecbox : renderChecboxImage\"\r\n ></ng-container>\r\n } @default {\r\n <ng-container *ngTemplateOutlet=\"renderGeneral\"></ng-container>\r\n } }\r\n</ng-template>\r\n<ng-template #renderGeneral>\r\n <div class=\"renderGeneral\" [class.onlyIcon]=\"column.Extra?.IconDisplayTypeEnum === 'Image'\" [style.width]=\"\">\r\n @if (icon) {\r\n <img [attr.rtl]=\"rtl\" [src]=\"icon\" />\r\n }\r\n <!-- <fd-text\r\n #fdText\r\n *ngIf=\"column.Extra?.IconDisplayTypeEnum !== 'Image'\"\r\n [maxLines]=\"1\"\r\n [text]=\"value\"\r\n [fd-inline-help]=\"value\"\r\n [disabled]=\"!fdText._hasMore\"\r\n ></fd-text> -->\r\n\r\n <!-- <bsu-barsa-text-ellipsis\r\n [style.width]=\"column.$Width\"\r\n *ngIf=\"column.Extra?.IconDisplayTypeEnum !== 'Image'\"\r\n [text]=\"value\"\r\n></bsu-barsa-text-ellipsis> -->\r\n <!-- <div *ngIf=\"column.Extra?.IconDisplayTypeEnum !== 'Image'\" style=\"word-break:break-word\">\r\n{{ value }}\r\n</div> -->\r\n @if (column.Extra?.IconDisplayTypeEnum !== 'Image') { @if(!isMobile && !fdTextMode){\r\n <div\r\n [ellapsisText]=\"value\"\r\n [disableEllapsis]=\"editMode\"\r\n [class.ellapsis]=\"!disableEllapsis\"\r\n [attr.title]=\"value\"\r\n (ellapsised)=\"onElapsised($event)\"\r\n >\r\n {{ value }}\r\n </div>\r\n } @else{\r\n <fd-text [attr.title]=\"value\" class=\"col-value\" [text]=\"value\" [maxLines]=\"2\"></fd-text>\r\n } }\r\n </div>\r\n</ng-template>\r\n<ng-template #formControlTemplate>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n !controlUi || controlUi.FieldUi.originalXtype === 'Ui.ReadOnlyField'\r\n ? renderCellTemplate\r\n : layoutControlTemplate\r\n \"\r\n ></ng-container>\r\n</ng-template>\r\n<ng-template #layoutControlTemplate>\r\n @if (controlUi) {\r\n <bsu-layout-control\r\n [inlineEdit]=\"true\"\r\n [caption]=\"column.Caption\"\r\n [config]=\"controlUi\"\r\n [focusControl]=\"index === 0 && (isChecked || isNewInlineMo)\"\r\n [showLabel]=\"formLayoutShowLabel\"\r\n ></bsu-layout-control>\r\n }\r\n</ng-template>\r\n<ng-template #renderCellListTasavir>\r\n @if (mo[column.Name] && mo[column.Name].Images) {\r\n <div style=\"display: flex; flex-wrap: wrap; gap: 0.15rem\">\r\n @for (pic of mo[column.Name].Images; track pic) {\r\n <img\r\n fullscreen\r\n fullscreenFiles\r\n [files]=\"mo[column.Name].Images\"\r\n [isImageGallery]=\"true\"\r\n [deviceSize]=\"deviceSize\"\r\n [src]=\"pic.FileId | picFieldSrc: 'BarsaPicture.Thumbnail':null:'':32:32\"\r\n style=\"width: 3rem; height: 3rem\"\r\n />\r\n }\r\n </div>\r\n }\r\n</ng-template>\r\n<ng-template #renderCellFileListKhati>\r\n @if (mo[column.Name]) {\r\n <div class=\"file-viewer-attachments\">\r\n @for (file of mo[column.Name].Files; track file) { @if (!file.IsDeleted) {\r\n <bsu-file-viewer-popover\r\n [
|
|
4822
|
-
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: {
|
|
4825
|
+
args: [{ selector: 'bsu-column-renderer,[colRenderer]', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "@if (column) {\r\n<ng-container *ngTemplateOutlet=\"editMode ? formControlTemplate : renderCellTemplate\"> </ng-container>\r\n}\r\n<ng-template #renderCellTemplate>\r\n @switch (column.FieldTypeId) { @case (42) {\r\n <ng-container *ngTemplateOutlet=\"renderCellImage\"></ng-container>\r\n } @case (33) {\r\n <ng-container *ngTemplateOutlet=\"renderCellFileInfo\"></ng-container>\r\n } @case (31) {\r\n <ng-container *ngTemplateOutlet=\"renderCellFileListKhati\"></ng-container>\r\n } @case (11) {\r\n <ng-container *ngTemplateOutlet=\"renderCellListTasavir\"></ng-container>\r\n } @case (5) {\r\n <ng-container\r\n *ngTemplateOutlet=\"column.Extra?.ShowCheckInGrid ? renderCellChecbox : renderChecboxImage\"\r\n ></ng-container>\r\n } @default {\r\n <ng-container *ngTemplateOutlet=\"renderGeneral\"></ng-container>\r\n } }\r\n</ng-template>\r\n<ng-template #renderGeneral>\r\n <div class=\"renderGeneral\" [class.onlyIcon]=\"column.Extra?.IconDisplayTypeEnum === 'Image'\" [style.width]=\"\">\r\n @if (icon) {\r\n <img [attr.rtl]=\"rtl\" [src]=\"icon\" />\r\n }\r\n <!-- <fd-text\r\n #fdText\r\n *ngIf=\"column.Extra?.IconDisplayTypeEnum !== 'Image'\"\r\n [maxLines]=\"1\"\r\n [text]=\"value\"\r\n [fd-inline-help]=\"value\"\r\n [disabled]=\"!fdText._hasMore\"\r\n ></fd-text> -->\r\n\r\n <!-- <bsu-barsa-text-ellipsis\r\n [style.width]=\"column.$Width\"\r\n *ngIf=\"column.Extra?.IconDisplayTypeEnum !== 'Image'\"\r\n [text]=\"value\"\r\n></bsu-barsa-text-ellipsis> -->\r\n <!-- <div *ngIf=\"column.Extra?.IconDisplayTypeEnum !== 'Image'\" style=\"word-break:break-word\">\r\n{{ value }}\r\n</div> -->\r\n @if (column.Extra?.IconDisplayTypeEnum !== 'Image') { @if(!isMobile && !fdTextMode){\r\n <div\r\n [ellapsisText]=\"value\"\r\n [disableEllapsis]=\"editMode\"\r\n [class.ellapsis]=\"!disableEllapsis\"\r\n [attr.title]=\"value\"\r\n (ellapsised)=\"onElapsised($event)\"\r\n >\r\n {{ value }}\r\n </div>\r\n } @else{\r\n <fd-text [attr.title]=\"value\" class=\"col-value\" [text]=\"value\" [maxLines]=\"2\"></fd-text>\r\n } }\r\n </div>\r\n</ng-template>\r\n<ng-template #formControlTemplate>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n !controlUi || controlUi.FieldUi.originalXtype === 'Ui.ReadOnlyField'\r\n ? renderCellTemplate\r\n : layoutControlTemplate\r\n \"\r\n ></ng-container>\r\n</ng-template>\r\n<ng-template #layoutControlTemplate>\r\n @if (controlUi) {\r\n <bsu-layout-control\r\n [inlineEdit]=\"true\"\r\n [caption]=\"column.Caption\"\r\n [config]=\"controlUi\"\r\n [focusControl]=\"index === 0 && (isChecked || isNewInlineMo)\"\r\n [showLabel]=\"formLayoutShowLabel\"\r\n ></bsu-layout-control>\r\n }\r\n</ng-template>\r\n<ng-template #renderCellListTasavir>\r\n @if (mo[column.Name] && mo[column.Name].Images) {\r\n <div style=\"display: flex; flex-wrap: wrap; gap: 0.15rem\">\r\n @for (pic of mo[column.Name].Images; track pic) {\r\n <img\r\n fullscreen\r\n fullscreenFiles\r\n [files]=\"mo[column.Name].Images\"\r\n [isImageGallery]=\"true\"\r\n [deviceSize]=\"deviceSize\"\r\n [src]=\"pic.FileId | picFieldSrc: 'BarsaPicture.Thumbnail':null:'':32:32\"\r\n style=\"width: 3rem; height: 3rem\"\r\n />\r\n }\r\n </div>\r\n }\r\n</ng-template>\r\n<ng-template #renderCellFileListKhati>\r\n @if (mo[column.Name]) {\r\n <div class=\"file-viewer-attachments\">\r\n @for (file of mo[column.Name].Files; track file) { @if (!file.IsDeleted) {\r\n <bsu-file-viewer-popover\r\n #fileviewerPopover\r\n intersectionObserver\r\n [intersectionThreshold]=\"0.1\"\r\n (visibilityChange)=\"$event === 'Visible' && onSetMaxWidth()\"\r\n [file]=\"file\"\r\n [files]=\"mo[column.Name].Files\"\r\n [deviceSize]=\"deviceSize\"\r\n [canDownload]=\"true\"\r\n [disableRemove]=\"true\"\r\n [fdType]=\"'transparent'\"\r\n preventDefault\r\n stopPropagation\r\n ></bsu-file-viewer-popover>\r\n }\r\n <!-- <fd-token *ngIf=\"!file.IsDeleted\" [readOnly]=\"true\">{{ file.FileName }}</fd-token> -->\r\n }\r\n </div>\r\n }\r\n</ng-template>\r\n<ng-template #renderCellFileInfo>\r\n @if (mo[column.Name]) {\r\n <fd-avatar\r\n [transparent]=\"true\"\r\n [size]=\"column.FieldTypeId === '42' || column.FieldTypeId === 42 ? 'xs' : deviceSize === 's' ? 's' : 'm'\"\r\n [image]=\"mo[column.Name] | picFieldSrc: 'PictureFileInfo':null:column.FieldDefId\"\r\n ></fd-avatar>\r\n }\r\n</ng-template>\r\n<ng-template #renderCellChecbox>\r\n <fd-icon [glyph]=\"mo[column.Name] === true ? 'accept' : 'less'\"></fd-icon>\r\n</ng-template>\r\n<ng-template #renderChecboxImage>\r\n @if (column.Extra?.TrueImage === '') {\r\n {{ value }}\r\n } @if (column.Extra?.TrueImage !== '') {\r\n <img [src]=\"mo[column.Name] ? column.Extra?.TrueImage : column.Extra?.FalseImage\" aling=\"middle\" />\r\n }\r\n</ng-template>\r\n<ng-template #renderCellImage>\r\n @if (mo[column.Name] && mo[column.Name]['Url']) {\r\n <fd-avatar\r\n [size]=\"column.FieldTypeId === '42' || column.FieldTypeId === 42 ? 'xs' : deviceSize === 's' ? 's' : 'm'\"\r\n [transparent]=\"true\"\r\n [image]=\"mo[column.Name]['Url']\"\r\n ></fd-avatar>\r\n }\r\n</ng-template>\r\n", styles: [":host{display:contents;overflow:hidden;padding:0}:host.isMobile span{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;white-space:pre-wrap}fd-avatar{min-width:100%;width:100%;max-width:64px}.renderGeneral{display:flex;width:100%;height:100%;align-items:center;justify-content:start}.renderGeneral.onlyIcon{justify-content:center}fd-text.col-value ::ng-deep p{color:inherit;font-size:inherit;font-family:inherit}\n"] }]
|
|
4826
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { _filePopover: [{
|
|
4827
|
+
type: ViewChild,
|
|
4828
|
+
args: ['fileviewerPopover', { static: false, read: ElementRef }]
|
|
4829
|
+
}], _isSmall: [{
|
|
4823
4830
|
type: HostBinding,
|
|
4824
4831
|
args: ['class.isMobile']
|
|
4825
4832
|
}], column: [{
|
|
@@ -5414,11 +5421,11 @@ class CardItemComponent extends BaseViewItemPropsComponent {
|
|
|
5414
5421
|
}
|
|
5415
5422
|
}
|
|
5416
5423
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CardItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
5417
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: CardItemComponent, selector: "bsu-card-item", inputs: { setting: "setting", extraFooterComponent: "extraFooterComponent" }, providers: [FormPanelService], viewQueries: [{ propertyName: "_quickViewTemplate", first: true, predicate: ["quickViewTemplate"], descendants: true, static: true }, { propertyName: "_contentTemplate", first: true, predicate: ["contentTemplate"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<fd-card\r\n [cardType]=\"setting.CardType$Caption\"\r\n class=\"docs-flex-item-margin\"\r\n [class.openOnClick]=\"setting.openOnClick\"\r\n [class.hide-header-border]=\"setting.HideHeaderBorder\"\r\n [style.width]=\"cardWidth\"\r\n [style.min-width]=\"minWidth\"\r\n [style.max-width]=\"maxWidth\"\r\n>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n setting.HeaderComponent ? renderHeaderComponent : renderHeader;\r\n context: {\r\n $implicit: mo,\r\n index: this.index\r\n }\r\n \"\r\n ></ng-container>\r\n\r\n @if (!noContent || contextMenuItems) {\r\n <fd-card-content (click)=\"onRowCheck()\" (dblclick)=\"onRowClick()\" ellipsify>\r\n <div #divEl [applyConditionalFormats]=\"conditionalFormats\" [styleIndex]=\"styleIndex\" [hostEl]=\"divEl\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n setting.ContentComponent ? contentTemplateComponent : contentTemplateRef;\r\n context: {\r\n $implicit: mo,\r\n index: this.index\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n </fd-card-content>\r\n } @if(detailsText || contextMenuEnabled){\r\n <fd-card-footer\r\n (click)=\"!isChecked && onRowCheck(true)\"\r\n (dblclick)=\"onRowClick()\"\r\n [class.extra-footer]=\"extraFooterComponent?.Selector\"\r\n [class.hasDetailsAndContextMenu]=\"detailsText && contextMenuEnabled && contextMenuInFooter\"\r\n >\r\n @if(extraFooterComponent?.Selector){\r\n <bnrc-dynamic-item-component\r\n style=\"display: block; flex: 1\"\r\n [component]=\"extraFooterComponent\"\r\n [mo]=\"mo\"\r\n [styleIndex]=\"mo.$StyleIndex\"\r\n [isChecked]=\"isChecked\"\r\n [setting]=\"setting\"\r\n [parameters]=\"extraFooterComponent.Settings\"\r\n [editMode]=\"inlineEditMode\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [index]=\"index\"\r\n [allColumns]=\"allColumns\"\r\n ></bnrc-dynamic-item-component>\r\n } @if(detailsText){<button *fdCardFooterActionItem fd-button fdType=\"transparent\" [fdPopoverTrigger]=\"popover\">\r\n {{ detailsText }}\r\n </button>\r\n } @if(contextMenuInFooter){\r\n <div\r\n *fdCardFooterActionItem\r\n ulvContextMenu\r\n [allColumns]=\"allColumns\"\r\n [footerMode]=\"false\"\r\n [menuItems]=\"contextMenuItems\"\r\n [contextMenuOverflowText]=\"contextMenuOverflowText\"\r\n [styleIndex]=\"styleIndex\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [mo]=\"mo\"\r\n (commandClick)=\"onUlvCommand()\"\r\n ></div>\r\n }\r\n <fd-popover #popover>\r\n @if (detailsColumns?.length) {\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 }\r\n </fd-popover>\r\n </fd-card-footer>\r\n }\r\n</fd-card>\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\" class=\"tw-p-2\">\r\n @for (column of detailsColumns; track column; let columnIndex = $index) {\r\n <div fd-form-item class=\"!tw-flex-row\">\r\n @if(!column.$CustomComponent?.HideColumnCaption) {<label fd-form-label for=\"input-2\"\r\n >{{ column.Caption }}<span>:</span></label\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: 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-layout94=\"layout94\"\r\n let-disableEllapsis=\"disableEllapsis\"\r\n let-fdTextMode=\"fdTextMode\"\r\n>\r\n @if (column) {\r\n <bsu-barsa-table-column\r\n [mo]=\"mo\"\r\n [allColumns]=\"allColumns\"\r\n [column]=\"column\"\r\n [isdirty]=\"false\"\r\n [value]=\"column | columnValue: mo\"\r\n [icon]=\"column | columnIcon: mo\"\r\n [customComponent]=\"column.$CustomComponent\"\r\n [column]=\"column\"\r\n [disableEllapsis]=\"disableEllapsis === false ? false : true\"\r\n [fdTextMode]=\"fdTextMode\"\r\n [editMode]=\"isChecked && inlineEditMode && allowInlineEdit\"\r\n [inlineEditMode]=\"inlineEditMode\"\r\n [isChecked]=\"isChecked\"\r\n [index]=\"index\"\r\n [formSetting]=\"formSetting\"\r\n [rtl]=\"rtl\"\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\r\n }\r\n</ng-template>\r\n<ng-template #quickViewTemplate let-mo let-index=\"index\">\r\n @if (!noContent) {\r\n <fd-quick-view [id]=\"'id'\">\r\n <fd-quick-view-group>\r\n @for (column of setting.FieldListMapped; track column) {\r\n <fd-quick-view-group-item [class.rowDirection]=\"column?.$CustomComponent?.IsRowDirection\">\r\n @if (column) { @if(!column.$CustomComponent?.HideColumnCaption) {<fd-quick-view-group-item-label>\r\n {{ column.Caption | bbbTranslate }} </fd-quick-view-group-item-label\r\n >}\r\n <fd-quick-view-group-item-content>\r\n <div fd-quick-view-group-item-content-element class=\"group-item-content\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: column,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n </fd-quick-view-group-item-content>\r\n }\r\n </fd-quick-view-group-item>\r\n } @if (setting.DescriptionField) {\r\n <fd-quick-view-group-item>\r\n <fd-quick-view-group-item-content>\r\n @if (inlineEditMode && allowInlineEdit) {\r\n <fd-quick-view-group-item-label>\r\n {{ setting.DescriptionField?.Alias | bbbTranslate }}\r\n </fd-quick-view-group-item-label>\r\n }\r\n <div fd-quick-view-group-item-content-element class=\"group-item-content\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: setting.DescriptionField,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n </fd-quick-view-group-item-content>\r\n @if (setting.ActionFieldNameField) {\r\n <fd-quick-view-group-item-content\r\n class=\"action\"\r\n (click)=\"onAction(setting.ActionFieldCommandField || '')\"\r\n >\r\n <a fd-link>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: setting.ActionFieldNameField,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n </a>\r\n </fd-quick-view-group-item-content>\r\n }\r\n </fd-quick-view-group-item>\r\n }\r\n </fd-quick-view-group>\r\n </fd-quick-view>\r\n }\r\n</ng-template>\r\n<ng-template #contentTemplate let-mo let-index=\"index\">\r\n <fd-layout-grid>\r\n <div fdLayoutGridRow style=\"align-items: center\">\r\n <div [fdLayoutGridCol]=\"12\">\r\n @for (column of setting.FieldListMapped; track column) {\r\n <div style=\"display: flex\">\r\n <label fd-form-label [colon]=\"true\">{{ column.Caption | bbbTranslate }}</label>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: column,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n }\r\n </div>\r\n @if (setting.DescriptionField) {\r\n <div [fdLayoutGridCol]=\"12\">\r\n @if (inlineEditMode && allowInlineEdit) {\r\n <label>\r\n {{ setting.DescriptionField?.Alias | bbbTranslate }}\r\n </label>\r\n }\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: setting.DescriptionField,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n }\r\n </div>\r\n </fd-layout-grid>\r\n</ng-template>\r\n<ng-template #avatar let-avatar let-visible=\"visible\" let-circle=\"circle\" let-avatarField=\"avatarField\">\r\n @if (visible) {\r\n <fd-avatar\r\n alterIcon=\"alt|content|backup|default-icon\"\r\n [circle]=\"circle\"\r\n [image]=\"avatarField ? (mo[avatarField.Name]?.FileId | picFieldSrc: 'ID':avatarField.FieldDefId) : ''\"\r\n [size]=\"\r\n deviceSize === 'xl' || deviceSize === 'l' ? setting.AvatarSizeDesktop$Caption : setting.AvatarSize$Caption\r\n \"\r\n [glyph]=\"avatar || (mo.$State === 'New' && !isChecked ? 'favorite' : inlineEditMode && isChecked ? 'edit' : '')\"\r\n >\r\n </fd-avatar>\r\n }\r\n</ng-template>\r\n\r\n<ng-template #contentTemplateComponent let-mo let-index=\"index\">\r\n <bnrc-dynamic-item-component\r\n [component]=\"setting.ContentComponent\"\r\n [mo]=\"mo\"\r\n [styleIndex]=\"mo.$StyleIndex\"\r\n [isChecked]=\"isChecked\"\r\n [setting]=\"setting\"\r\n [parameters]=\"setting.ContentComponent.Settings\"\r\n [editMode]=\"inlineEditMode\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [index]=\"index\"\r\n [allColumns]=\"allColumns\"\r\n ></bnrc-dynamic-item-component>\r\n</ng-template>\r\n\r\n<ng-template #renderHeader let-mo let-index=\"index\">\r\n @if(!hideOpenIcon && (openOnClick || (canView && deviceName !== 'desktop'))){\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n renderHeaderMobileCanView;\r\n context: {\r\n $implicit: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n }@else{\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n renderHeaderDesktop;\r\n context: {\r\n $implicit: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n }\r\n</ng-template>\r\n<ng-template #renderHeaderDesktop let-mo let-index=\"index\">\r\n <fd-card-header class=\"HeaderDesktop\">\r\n <div>\r\n @if(isCheckList){\r\n <fd-checkbox [name]=\"mo.$Caption\" [ngModel]=\"isChecked\" (ngModelChange)=\"onRowCheck()\"></fd-checkbox>\r\n }\r\n </div>\r\n <fd-card-main-header (click)=\"onRowCheck()\" (dblclick)=\"onRowClick()\">\r\n @if (setting.AvatarField || setting.Avatar) {\r\n <fd-avatar\r\n alterIcon=\"alt|content|backup|default-icon\"\r\n [circle]=\"setting.CircleAvatar\"\r\n [image]=\"\r\n setting.AvatarField\r\n ? (mo[setting.AvatarField.Name]?.FileId | picFieldSrc: 'ID':setting.AvatarField.FieldDefId)\r\n : ''\r\n \"\r\n [size]=\"\r\n deviceSize === 'xl' || deviceSize === 'l'\r\n ? setting.AvatarSizeDesktop$Caption\r\n : setting.AvatarSize$Caption\r\n \"\r\n [glyph]=\"\r\n setting.Avatar ||\r\n (mo.$State === 'New' && !isChecked ? 'favorite' : inlineEditMode && isChecked ? 'edit' : '')\r\n \"\r\n ></fd-avatar>\r\n }\r\n <h2 fd-card-title>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: setting.TitleField,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index,\r\n disableEllapsis: false,\r\n fdTextMode: true\r\n }\r\n \"\r\n ></ng-container>\r\n </h2>\r\n <h3 fd-card-subtitle>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: setting.SubtitleField,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index,\r\n disableEllapsis: false\r\n }\r\n \"\r\n ></ng-container>\r\n </h3>\r\n @if (!contextMenuInFooter && (contextMenuItems && contextMenuItems.length > 0)) {\r\n <div\r\n ulvContextMenu\r\n fd-card-header-action\r\n [allColumns]=\"allColumns\"\r\n [footerMode]=\"false\"\r\n [menuItems]=\"contextMenuItems\"\r\n [contextMenuOverflowText]=\"contextMenuOverflowText\"\r\n [styleIndex]=\"styleIndex\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [mo]=\"mo\"\r\n (commandClick)=\"onUlvCommand()\"\r\n ></div>\r\n }\r\n </fd-card-main-header>\r\n </fd-card-header>\r\n</ng-template>\r\n<ng-template #renderHeaderMobileCanView let-mo let-index=\"index\">\r\n <fd-card-header class=\"HeaderMobileCanView\">\r\n <div>\r\n @if(isCheckList){\r\n <fd-checkbox [name]=\"mo.$Caption\" [ngModel]=\"isChecked\" (ngModelChange)=\"onRowCheck()\"></fd-checkbox>\r\n }\r\n </div>\r\n <fd-card-main-header (click)=\"onRowCheck()\" (dblclick)=\"onRowClick()\">\r\n @if (setting.AvatarField || setting.Avatar) {\r\n <fd-avatar\r\n alterIcon=\"alt|content|backup|default-icon\"\r\n [circle]=\"setting.CircleAvatar\"\r\n [image]=\"\r\n setting.AvatarField\r\n ? (mo[setting.AvatarField.Name]?.FileId | picFieldSrc: 'ID':setting.AvatarField.FieldDefId)\r\n : ''\r\n \"\r\n [size]=\"\r\n deviceSize === 'xl' || deviceSize === 'l'\r\n ? setting.AvatarSizeDesktop$Caption\r\n : setting.AvatarSize$Caption\r\n \"\r\n [glyph]=\"\r\n setting.Avatar ||\r\n (mo.$State === 'New' && !isChecked ? 'favorite' : inlineEditMode && isChecked ? 'edit' : '')\r\n \"\r\n ></fd-avatar>\r\n }\r\n <h2 fd-card-title>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: setting.TitleField,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index,\r\n fdTextMode: true\r\n }\r\n \"\r\n ></ng-container>\r\n </h2>\r\n <h3 fd-card-subtitle>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: setting.SubtitleField,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n </h3>\r\n\r\n @if (!contextMenuInFooter && (contextMenuItems && contextMenuItems.length > 0)) {\r\n <div\r\n ulvContextMenu\r\n fd-card-header-action\r\n [allColumns]=\"allColumns\"\r\n [footerMode]=\"false\"\r\n [menuItems]=\"contextMenuItems\"\r\n [contextMenuOverflowText]=\"contextMenuOverflowText\"\r\n [styleIndex]=\"styleIndex\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [mo]=\"mo\"\r\n (commandClick)=\"onUlvCommand()\"\r\n ></div>\r\n }@else {\r\n <button\r\n fd-button\r\n fd-card-header-action\r\n class=\"view-btn\"\r\n (click)=\"onRowClick()\"\r\n [glyph]=\"navigationArrow\"\r\n fdType=\"transparent\"\r\n ></button>\r\n }\r\n </fd-card-main-header>\r\n </fd-card-header>\r\n</ng-template>\r\n<ng-template #renderHeaderComponent let-mo let-index=\"index\">\r\n <bnrc-dynamic-item-component\r\n (click)=\"setting.openOnClick && onRowClick()\"\r\n [component]=\"setting.HeaderComponent\"\r\n [mo]=\"mo\"\r\n [styleIndex]=\"mo.$StyleIndex\"\r\n [isChecked]=\"isChecked\"\r\n [setting]=\"setting\"\r\n [parameters]=\"setting.HeaderComponent.Settings\"\r\n [editMode]=\"inlineEditMode\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [index]=\"index\"\r\n [allColumns]=\"allColumns\"\r\n [contextMenuItems]=\"contextMenuItems\"\r\n [canView]=\"canView\"\r\n [hideOpenIcon]=\"hideOpenIcon\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [navigationArrow]=\"navigationArrow\"\r\n [isCheckList]=\"isCheckList\"\r\n (events)=\"onDynamicComponentEvents($event)\"\r\n ></bnrc-dynamic-item-component>\r\n</ng-template>\r\n", styles: ["fd-card:hover{box-shadow:0 0 0 .0625rem #2235487a,0 .625rem 1.875rem #22354840}fd-card div[ulvcontextmenu] ::ng-deep .fd-bar{background-color:transparent}fd-card ::ng-deep bsu-column-renderer div.renderGeneral{font-family:IranYekanDigits}fd-card fd-card-footer.extra-footer{flex-wrap:wrap}fd-card fd-card-footer.hasDetailsAndContextMenu ::ng-deep .fd-card__footer-actions{justify-content:space-between!important}fd-card fd-card-content{padding:0!important}fd-card fd-card-content>div>fd-quick-view ::ng-deep .fd-quick-view__content{padding-top:0}fd-card fd-card-content>div>fd-quick-view fd-quick-view-group-item.rowDirection ::ng-deep .fd-form-item{flex-direction:row}fd-card.hide-header-border ::ng-deep fd-card-header fd-card-main-header>.fd-card__header-main{border:none}fd-card fd-card-header{padding:.5rem}fd-card fd-card-header:hover{background:var(--fdCard_Background_Color)}fd-card fd-card-header .fd-card__title{display:flex;justify-content:space-between;align-items:center;width:100%}fd-card fd-card-header button,fd-card fd-card-header div[ulvcontextmenu]{z-index:6}fd-card fd-card-header:hover{background:inherit}fd-quick-view-subheader ::ng-deep div{background:inherit}.action{cursor:pointer;margin-top:6px;flex:1;display:flex;justify-content:end;flex-direction:column}.openOnClick{cursor:pointer}\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.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.EllipsifyDirective, selector: "[ellipsify]", inputs: ["limitLine"] }, { kind: "component", type: i3$6.AvatarComponent, selector: "fd-avatar", inputs: ["class", "id", "ariaLabel", "ariaLabelledby", "label", "size", "font", "glyph", "zoomGlyph", "circle", "transparent", "contain", "placeholder", "tile", "border", "colorAccent", "colorIndication", "random", "clickable", "valueState", "image", "alterIcon", "backupImage"], outputs: ["avatarClicked", "zoomGlyphClicked"] }, { kind: "component", type: i2$4.LinkComponent, selector: "[fdLink], [fd-link]", inputs: ["class", "emphasized", "disabled", "inverted", "subtle", "undecorated"] }, { 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$3.CardComponent, selector: "fd-card", inputs: ["badge", "badgeIcon", "badgeColor", "badgeColorSecondary", "badgeStatus", "badgeAriaLabel", "secondBadge", "secondBadgeIcon", "secondBadgeColor", "secondBadgeColorSecondary", "secondBadgeStatus", "secondBadgeAriaLabel", "isLoading", "cardType", "id", "ariaRoledescription", "ariaDescription", "ariaLabel", "role", "interactive", "selected", "ariaPosinset", "ariaSetsize"], outputs: ["ariaPosinsetChange", "ariaSetsizeChange"] }, { kind: "component", type: i5$3.CardHeaderComponent, selector: "fd-card-header", inputs: ["ariaRoleDescription"] }, { kind: "component", type: i5$3.CardMainHeaderComponent, selector: "fd-card-main-header", inputs: ["interactive", "title"] }, { kind: "directive", type: i5$3.CardHeaderActionDirective, selector: "[fd-card-header-action]" }, { kind: "component", type: i5$3.CardContentComponent, selector: "fd-card-content" }, { kind: "directive", type: i5$3.CardTitleDirective, selector: "[fd-card-title]", inputs: ["id"] }, { kind: "directive", type: i5$3.CardSubtitleDirective, selector: "[fd-card-subtitle]" }, { kind: "component", type: i5$3.CardFooterComponent, selector: "fd-card-footer" }, { kind: "directive", type: i5$3.CardFooterActionItemDirective, selector: "[fdCardFooterActionItem]" }, { 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: i4$2.LayoutGridComponent, selector: "fd-layout-grid, [fdLayoutGrid]", inputs: ["class", "noGap", "noHorizontalGap", "noVerticalGap"] }, { kind: "directive", type: i4$2.LayoutGridColDirective, selector: "[fd-layout-grid-col], [fdLayoutGridCol]", inputs: ["fdLayoutGridCol", "colGrow", "colMd", "colLg", "colXl", "colOffset", "colOffsetMd", "colOffsetLg", "colOffsetXl", "class"] }, { kind: "directive", type: i4$2.LayoutGridRowDirective, selector: "[fd-layout-grid-row], [fdLayoutGridRow]" }, { kind: "component", type: i7$3.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig", "preventSpaceKeyScroll"] }, { kind: "directive", type: i7$3.PopoverTriggerDirective, selector: "[fdPopoverTrigger], [fd-popover-trigger]", inputs: ["fdPopoverTrigger"] }, { kind: "component", type: i12.QuickViewComponent, selector: "fd-quick-view", inputs: ["id"] }, { kind: "component", type: i12.QuickViewGroupComponent, selector: "fd-quick-view-group" }, { kind: "component", type: i12.QuickViewGroupItemComponent, selector: "fd-quick-view-group-item", inputs: ["id"] }, { kind: "component", type: i12.QuickViewGroupItemLabelComponent, selector: "fd-quick-view-group-item-label" }, { kind: "component", type: i12.QuickViewGroupItemContentComponent, selector: "fd-quick-view-group-item-content" }, { kind: "directive", type: i12.QuickViewGroupItemContentElementDirective, selector: "[fd-quick-view-group-item-content-element]" }, { 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: "directive", type: ApplyConditionalFormatsDirective, selector: "[applyConditionalFormats]", inputs: ["applyConditionalFormats", "styleIndex", "hostEl", "dbName"] }, { kind: "pipe", type: i1$2.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.PictureFieldSourcePipe, name: "picFieldSrc" }, { 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 }); }
|
|
5424
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: CardItemComponent, selector: "bsu-card-item", inputs: { setting: "setting", extraFooterComponent: "extraFooterComponent" }, providers: [FormPanelService], viewQueries: [{ propertyName: "_quickViewTemplate", first: true, predicate: ["quickViewTemplate"], descendants: true, static: true }, { propertyName: "_contentTemplate", first: true, predicate: ["contentTemplate"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<fd-card\r\n [cardType]=\"setting.CardType$Caption\"\r\n class=\"docs-flex-item-margin\"\r\n [class.openOnClick]=\"setting.openOnClick\"\r\n [class.hide-header-border]=\"setting.HideHeaderBorder\"\r\n [style.width]=\"cardWidth\"\r\n [style.min-width]=\"minWidth\"\r\n [style.max-width]=\"maxWidth\"\r\n>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n setting.HeaderComponent ? renderHeaderComponent : renderHeader;\r\n context: {\r\n $implicit: mo,\r\n index: this.index\r\n }\r\n \"\r\n ></ng-container>\r\n\r\n @if (!noContent || contextMenuItems) {\r\n <fd-card-content (click)=\"onRowCheck()\" (dblclick)=\"onRowClick()\" ellipsify>\r\n <div #divEl [applyConditionalFormats]=\"conditionalFormats\" [styleIndex]=\"styleIndex\" [hostEl]=\"divEl\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n setting.ContentComponent ? contentTemplateComponent : contentTemplateRef;\r\n context: {\r\n $implicit: mo,\r\n index: this.index\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n </fd-card-content>\r\n } @if(detailsText || contextMenuEnabled){\r\n <fd-card-footer\r\n (click)=\"!isChecked && onRowCheck(true)\"\r\n (dblclick)=\"onRowClick()\"\r\n [class.extra-footer]=\"extraFooterComponent?.Selector\"\r\n [class.hasDetailsAndContextMenu]=\"detailsText && contextMenuEnabled && contextMenuInFooter\"\r\n >\r\n @if(extraFooterComponent?.Selector){\r\n <bnrc-dynamic-item-component\r\n style=\"display: block; flex: 1\"\r\n [component]=\"extraFooterComponent\"\r\n [mo]=\"mo\"\r\n [styleIndex]=\"mo.$StyleIndex\"\r\n [isChecked]=\"isChecked\"\r\n [setting]=\"setting\"\r\n [parameters]=\"extraFooterComponent.Settings\"\r\n [editMode]=\"inlineEditMode\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [index]=\"index\"\r\n [allColumns]=\"allColumns\"\r\n ></bnrc-dynamic-item-component>\r\n } @if(detailsText){<button *fdCardFooterActionItem fd-button fdType=\"transparent\" [fdPopoverTrigger]=\"popover\">\r\n {{ detailsText }}\r\n </button>\r\n } @if(contextMenuInFooter){\r\n <div\r\n *fdCardFooterActionItem\r\n ulvContextMenu\r\n [allColumns]=\"allColumns\"\r\n [footerMode]=\"false\"\r\n [menuItems]=\"contextMenuItems\"\r\n [contextMenuOverflowText]=\"contextMenuOverflowText\"\r\n [styleIndex]=\"styleIndex\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [mo]=\"mo\"\r\n (commandClick)=\"onUlvCommand()\"\r\n ></div>\r\n }\r\n <fd-popover #popover>\r\n @if (detailsColumns?.length) {\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 }\r\n </fd-popover>\r\n </fd-card-footer>\r\n }\r\n</fd-card>\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\" class=\"tw-p-2\">\r\n @for (column of detailsColumns; track column; let columnIndex = $index) {\r\n <div fd-form-item class=\"!tw-flex-row\">\r\n @if(!column.$CustomComponent?.HideColumnCaption) {<label fd-form-label for=\"input-2\"\r\n >{{ column.Caption }}<span>:</span></label\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: 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-layout94=\"layout94\"\r\n let-disableEllapsis=\"disableEllapsis\"\r\n let-fdTextMode=\"fdTextMode\"\r\n>\r\n @if (column) {\r\n <bsu-barsa-table-column\r\n [mo]=\"mo\"\r\n [allColumns]=\"allColumns\"\r\n [column]=\"column\"\r\n [isdirty]=\"false\"\r\n [value]=\"column | columnValue: mo\"\r\n [icon]=\"column | columnIcon: mo\"\r\n [customComponent]=\"column.$CustomComponent\"\r\n [column]=\"column\"\r\n [disableEllapsis]=\"disableEllapsis === false ? false : true\"\r\n [fdTextMode]=\"fdTextMode\"\r\n [editMode]=\"isChecked && inlineEditMode && allowInlineEdit\"\r\n [inlineEditMode]=\"inlineEditMode\"\r\n [isChecked]=\"isChecked\"\r\n [index]=\"index\"\r\n [formSetting]=\"formSetting\"\r\n [rtl]=\"rtl\"\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\r\n }\r\n</ng-template>\r\n<ng-template #quickViewTemplate let-mo let-index=\"index\">\r\n @if (!noContent) {\r\n <fd-quick-view [id]=\"'id'\">\r\n <fd-quick-view-group>\r\n @for (column of setting.FieldListMapped; track column) {\r\n <fd-quick-view-group-item [class.rowDirection]=\"column?.$CustomComponent?.IsRowDirection\">\r\n @if (column) { @if(!column.$CustomComponent?.HideColumnCaption) {<fd-quick-view-group-item-label>\r\n {{ column.Caption | bbbTranslate }} </fd-quick-view-group-item-label\r\n >}\r\n <fd-quick-view-group-item-content>\r\n <div fd-quick-view-group-item-content-element class=\"group-item-content\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: column,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n </fd-quick-view-group-item-content>\r\n }\r\n </fd-quick-view-group-item>\r\n } @if (setting.DescriptionField) {\r\n <fd-quick-view-group-item>\r\n <fd-quick-view-group-item-content>\r\n @if (inlineEditMode && allowInlineEdit) {\r\n <fd-quick-view-group-item-label>\r\n {{ setting.DescriptionField?.Alias | bbbTranslate }}\r\n </fd-quick-view-group-item-label>\r\n }\r\n <div fd-quick-view-group-item-content-element class=\"group-item-content\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: setting.DescriptionField,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n </fd-quick-view-group-item-content>\r\n @if (setting.ActionFieldNameField) {\r\n <fd-quick-view-group-item-content\r\n class=\"action\"\r\n (click)=\"onAction(setting.ActionFieldCommandField || '')\"\r\n >\r\n <a fd-link>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: setting.ActionFieldNameField,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n </a>\r\n </fd-quick-view-group-item-content>\r\n }\r\n </fd-quick-view-group-item>\r\n }\r\n </fd-quick-view-group>\r\n </fd-quick-view>\r\n }\r\n</ng-template>\r\n<ng-template #contentTemplate let-mo let-index=\"index\">\r\n <fd-layout-grid>\r\n <div fdLayoutGridRow style=\"align-items: center\">\r\n <div [fdLayoutGridCol]=\"12\">\r\n @for (column of setting.FieldListMapped; track column) {\r\n <div style=\"display: flex\">\r\n <label fd-form-label [colon]=\"true\">{{ column.Caption | bbbTranslate }}</label>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: column,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n }\r\n </div>\r\n @if (setting.DescriptionField) {\r\n <div [fdLayoutGridCol]=\"12\">\r\n @if (inlineEditMode && allowInlineEdit) {\r\n <label>\r\n {{ setting.DescriptionField?.Alias | bbbTranslate }}\r\n </label>\r\n }\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: setting.DescriptionField,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n }\r\n </div>\r\n </fd-layout-grid>\r\n</ng-template>\r\n<ng-template #avatar let-avatar let-visible=\"visible\" let-circle=\"circle\" let-avatarField=\"avatarField\">\r\n @if (visible) {\r\n <fd-avatar\r\n alterIcon=\"alt|content|backup|default-icon\"\r\n [circle]=\"circle\"\r\n [image]=\"avatarField ? (mo[avatarField.Name]?.FileId | picFieldSrc: 'ID':avatarField.FieldDefId) : ''\"\r\n [size]=\"\r\n deviceSize === 'xl' || deviceSize === 'l' ? setting.AvatarSizeDesktop$Caption : setting.AvatarSize$Caption\r\n \"\r\n [glyph]=\"avatar || (mo.$State === 'New' && !isChecked ? 'favorite' : inlineEditMode && isChecked ? 'edit' : '')\"\r\n >\r\n </fd-avatar>\r\n }\r\n</ng-template>\r\n\r\n<ng-template #contentTemplateComponent let-mo let-index=\"index\">\r\n <bnrc-dynamic-item-component\r\n [component]=\"setting.ContentComponent\"\r\n [mo]=\"mo\"\r\n [styleIndex]=\"mo.$StyleIndex\"\r\n [isChecked]=\"isChecked\"\r\n [setting]=\"setting\"\r\n [parameters]=\"setting.ContentComponent.Settings\"\r\n [editMode]=\"inlineEditMode\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [index]=\"index\"\r\n [allColumns]=\"allColumns\"\r\n ></bnrc-dynamic-item-component>\r\n</ng-template>\r\n\r\n<ng-template #renderHeader let-mo let-index=\"index\">\r\n @if(!hideOpenIcon && (openOnClick || (canView && deviceName !== 'desktop'))){\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n renderHeaderMobileCanView;\r\n context: {\r\n $implicit: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n }@else{\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n renderHeaderDesktop;\r\n context: {\r\n $implicit: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n }\r\n</ng-template>\r\n<ng-template #renderHeaderDesktop let-mo let-index=\"index\">\r\n <fd-card-header class=\"HeaderDesktop\">\r\n <div>\r\n @if(isCheckList){\r\n <fd-checkbox [name]=\"mo.$Caption\" [ngModel]=\"isChecked\" (ngModelChange)=\"onRowCheck()\"></fd-checkbox>\r\n }\r\n </div>\r\n <fd-card-main-header (click)=\"onRowCheck()\" (dblclick)=\"onRowClick()\">\r\n @if (setting.AvatarField || setting.Avatar) {\r\n <fd-avatar\r\n alterIcon=\"alt|content|backup|default-icon\"\r\n [circle]=\"setting.CircleAvatar\"\r\n [image]=\"\r\n setting.AvatarField\r\n ? (mo[setting.AvatarField.Name]?.FileId | picFieldSrc: 'ID':setting.AvatarField.FieldDefId)\r\n : ''\r\n \"\r\n [size]=\"\r\n deviceSize === 'xl' || deviceSize === 'l'\r\n ? setting.AvatarSizeDesktop$Caption\r\n : setting.AvatarSize$Caption\r\n \"\r\n [glyph]=\"\r\n setting.Avatar ||\r\n (mo.$State === 'New' && !isChecked ? 'favorite' : inlineEditMode && isChecked ? 'edit' : '')\r\n \"\r\n ></fd-avatar>\r\n }\r\n <h2 fd-card-title>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: setting.TitleField,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index,\r\n disableEllapsis: false,\r\n fdTextMode: true\r\n }\r\n \"\r\n ></ng-container>\r\n </h2>\r\n <h3 fd-card-subtitle>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: setting.SubtitleField,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index,\r\n disableEllapsis: false\r\n }\r\n \"\r\n ></ng-container>\r\n </h3>\r\n @if (!contextMenuInFooter && (contextMenuItems && contextMenuItems.length > 0)) {\r\n <div\r\n ulvContextMenu\r\n fd-card-header-action\r\n [allColumns]=\"allColumns\"\r\n [footerMode]=\"false\"\r\n [menuItems]=\"contextMenuItems\"\r\n [contextMenuOverflowText]=\"contextMenuOverflowText\"\r\n [styleIndex]=\"styleIndex\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [mo]=\"mo\"\r\n (commandClick)=\"onUlvCommand()\"\r\n ></div>\r\n }\r\n </fd-card-main-header>\r\n </fd-card-header>\r\n</ng-template>\r\n<ng-template #renderHeaderMobileCanView let-mo let-index=\"index\">\r\n <fd-card-header class=\"HeaderMobileCanView\">\r\n <div>\r\n @if(isCheckList){\r\n <fd-checkbox [name]=\"mo.$Caption\" [ngModel]=\"isChecked\" (ngModelChange)=\"onRowCheck()\"></fd-checkbox>\r\n }\r\n </div>\r\n <fd-card-main-header (click)=\"onRowCheck()\" (dblclick)=\"onRowClick()\">\r\n @if (setting.AvatarField || setting.Avatar) {\r\n <fd-avatar\r\n alterIcon=\"alt|content|backup|default-icon\"\r\n [circle]=\"setting.CircleAvatar\"\r\n [image]=\"\r\n setting.AvatarField\r\n ? (mo[setting.AvatarField.Name]?.FileId | picFieldSrc: 'ID':setting.AvatarField.FieldDefId)\r\n : ''\r\n \"\r\n [size]=\"\r\n deviceSize === 'xl' || deviceSize === 'l'\r\n ? setting.AvatarSizeDesktop$Caption\r\n : setting.AvatarSize$Caption\r\n \"\r\n [glyph]=\"\r\n setting.Avatar ||\r\n (mo.$State === 'New' && !isChecked ? 'favorite' : inlineEditMode && isChecked ? 'edit' : '')\r\n \"\r\n ></fd-avatar>\r\n }\r\n <h2 fd-card-title>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: setting.TitleField,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index,\r\n fdTextMode: true\r\n }\r\n \"\r\n ></ng-container>\r\n </h2>\r\n <h3 fd-card-subtitle>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: setting.SubtitleField,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n </h3>\r\n\r\n @if (!contextMenuInFooter && (contextMenuItems && contextMenuItems.length > 0)) {\r\n <div\r\n ulvContextMenu\r\n fd-card-header-action\r\n [allColumns]=\"allColumns\"\r\n [footerMode]=\"false\"\r\n [menuItems]=\"contextMenuItems\"\r\n [contextMenuOverflowText]=\"contextMenuOverflowText\"\r\n [styleIndex]=\"styleIndex\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [mo]=\"mo\"\r\n (commandClick)=\"onUlvCommand()\"\r\n ></div>\r\n }@else {\r\n <button\r\n fd-button\r\n fd-card-header-action\r\n class=\"view-btn\"\r\n (click)=\"onRowClick()\"\r\n [glyph]=\"navigationArrow\"\r\n fdType=\"transparent\"\r\n ></button>\r\n }\r\n </fd-card-main-header>\r\n </fd-card-header>\r\n</ng-template>\r\n<ng-template #renderHeaderComponent let-mo let-index=\"index\">\r\n <bnrc-dynamic-item-component\r\n (click)=\"setting.openOnClick && onRowClick()\"\r\n [component]=\"setting.HeaderComponent\"\r\n [mo]=\"mo\"\r\n [styleIndex]=\"mo.$StyleIndex\"\r\n [isChecked]=\"isChecked\"\r\n [setting]=\"setting\"\r\n [parameters]=\"setting.HeaderComponent.Settings\"\r\n [editMode]=\"inlineEditMode\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [index]=\"index\"\r\n [allColumns]=\"allColumns\"\r\n [contextMenuItems]=\"contextMenuItems\"\r\n [canView]=\"canView\"\r\n [hideOpenIcon]=\"hideOpenIcon\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [navigationArrow]=\"navigationArrow\"\r\n [isCheckList]=\"isCheckList\"\r\n (events)=\"onDynamicComponentEvents($event)\"\r\n ></bnrc-dynamic-item-component>\r\n</ng-template>\r\n", styles: ["fd-card:hover{box-shadow:0 0 0 .0625rem #2235487a,0 .625rem 1.875rem #22354840}fd-card div[ulvcontextmenu] ::ng-deep .fd-bar{background-color:transparent}fd-card fd-card-content ::ng-deep bsu-column-renderer div.renderGeneral{font-family:IranYekanDigits}fd-card fd-card-footer.extra-footer{flex-wrap:wrap}fd-card fd-card-footer.hasDetailsAndContextMenu ::ng-deep .fd-card__footer-actions{justify-content:space-between!important}fd-card fd-card-content{padding:0!important}fd-card fd-card-content>div>fd-quick-view ::ng-deep .fd-quick-view__content{padding-top:0}fd-card fd-card-content>div>fd-quick-view fd-quick-view-group-item.rowDirection ::ng-deep .fd-form-item{flex-direction:row}fd-card.hide-header-border ::ng-deep fd-card-header fd-card-main-header>.fd-card__header-main{border:none}fd-card fd-card-header{padding:.5rem}fd-card fd-card-header:hover{background:var(--fdCard_Background_Color)}fd-card fd-card-header .fd-card__title{display:flex;justify-content:space-between;align-items:center;width:100%}fd-card fd-card-header button,fd-card fd-card-header div[ulvcontextmenu]{z-index:6}fd-card fd-card-header:hover{background:inherit}fd-quick-view-subheader ::ng-deep div{background:inherit}.action{cursor:pointer;margin-top:6px;flex:1;display:flex;justify-content:end;flex-direction:column}.openOnClick{cursor:pointer}\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.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.EllipsifyDirective, selector: "[ellipsify]", inputs: ["limitLine"] }, { kind: "component", type: i3$6.AvatarComponent, selector: "fd-avatar", inputs: ["class", "id", "ariaLabel", "ariaLabelledby", "label", "size", "font", "glyph", "zoomGlyph", "circle", "transparent", "contain", "placeholder", "tile", "border", "colorAccent", "colorIndication", "random", "clickable", "valueState", "image", "alterIcon", "backupImage"], outputs: ["avatarClicked", "zoomGlyphClicked"] }, { kind: "component", type: i2$4.LinkComponent, selector: "[fdLink], [fd-link]", inputs: ["class", "emphasized", "disabled", "inverted", "subtle", "undecorated"] }, { 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$3.CardComponent, selector: "fd-card", inputs: ["badge", "badgeIcon", "badgeColor", "badgeColorSecondary", "badgeStatus", "badgeAriaLabel", "secondBadge", "secondBadgeIcon", "secondBadgeColor", "secondBadgeColorSecondary", "secondBadgeStatus", "secondBadgeAriaLabel", "isLoading", "cardType", "id", "ariaRoledescription", "ariaDescription", "ariaLabel", "role", "interactive", "selected", "ariaPosinset", "ariaSetsize"], outputs: ["ariaPosinsetChange", "ariaSetsizeChange"] }, { kind: "component", type: i5$3.CardHeaderComponent, selector: "fd-card-header", inputs: ["ariaRoleDescription"] }, { kind: "component", type: i5$3.CardMainHeaderComponent, selector: "fd-card-main-header", inputs: ["interactive", "title"] }, { kind: "directive", type: i5$3.CardHeaderActionDirective, selector: "[fd-card-header-action]" }, { kind: "component", type: i5$3.CardContentComponent, selector: "fd-card-content" }, { kind: "directive", type: i5$3.CardTitleDirective, selector: "[fd-card-title]", inputs: ["id"] }, { kind: "directive", type: i5$3.CardSubtitleDirective, selector: "[fd-card-subtitle]" }, { kind: "component", type: i5$3.CardFooterComponent, selector: "fd-card-footer" }, { kind: "directive", type: i5$3.CardFooterActionItemDirective, selector: "[fdCardFooterActionItem]" }, { 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: i4$2.LayoutGridComponent, selector: "fd-layout-grid, [fdLayoutGrid]", inputs: ["class", "noGap", "noHorizontalGap", "noVerticalGap"] }, { kind: "directive", type: i4$2.LayoutGridColDirective, selector: "[fd-layout-grid-col], [fdLayoutGridCol]", inputs: ["fdLayoutGridCol", "colGrow", "colMd", "colLg", "colXl", "colOffset", "colOffsetMd", "colOffsetLg", "colOffsetXl", "class"] }, { kind: "directive", type: i4$2.LayoutGridRowDirective, selector: "[fd-layout-grid-row], [fdLayoutGridRow]" }, { kind: "component", type: i7$3.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig", "preventSpaceKeyScroll"] }, { kind: "directive", type: i7$3.PopoverTriggerDirective, selector: "[fdPopoverTrigger], [fd-popover-trigger]", inputs: ["fdPopoverTrigger"] }, { kind: "component", type: i12.QuickViewComponent, selector: "fd-quick-view", inputs: ["id"] }, { kind: "component", type: i12.QuickViewGroupComponent, selector: "fd-quick-view-group" }, { kind: "component", type: i12.QuickViewGroupItemComponent, selector: "fd-quick-view-group-item", inputs: ["id"] }, { kind: "component", type: i12.QuickViewGroupItemLabelComponent, selector: "fd-quick-view-group-item-label" }, { kind: "component", type: i12.QuickViewGroupItemContentComponent, selector: "fd-quick-view-group-item-content" }, { kind: "directive", type: i12.QuickViewGroupItemContentElementDirective, selector: "[fd-quick-view-group-item-content-element]" }, { 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: "directive", type: ApplyConditionalFormatsDirective, selector: "[applyConditionalFormats]", inputs: ["applyConditionalFormats", "styleIndex", "hostEl", "dbName"] }, { kind: "pipe", type: i1$2.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.PictureFieldSourcePipe, name: "picFieldSrc" }, { 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 }); }
|
|
5418
5425
|
}
|
|
5419
5426
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CardItemComponent, decorators: [{
|
|
5420
5427
|
type: Component,
|
|
5421
|
-
args: [{ selector: 'bsu-card-item', providers: [FormPanelService], changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<fd-card\r\n [cardType]=\"setting.CardType$Caption\"\r\n class=\"docs-flex-item-margin\"\r\n [class.openOnClick]=\"setting.openOnClick\"\r\n [class.hide-header-border]=\"setting.HideHeaderBorder\"\r\n [style.width]=\"cardWidth\"\r\n [style.min-width]=\"minWidth\"\r\n [style.max-width]=\"maxWidth\"\r\n>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n setting.HeaderComponent ? renderHeaderComponent : renderHeader;\r\n context: {\r\n $implicit: mo,\r\n index: this.index\r\n }\r\n \"\r\n ></ng-container>\r\n\r\n @if (!noContent || contextMenuItems) {\r\n <fd-card-content (click)=\"onRowCheck()\" (dblclick)=\"onRowClick()\" ellipsify>\r\n <div #divEl [applyConditionalFormats]=\"conditionalFormats\" [styleIndex]=\"styleIndex\" [hostEl]=\"divEl\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n setting.ContentComponent ? contentTemplateComponent : contentTemplateRef;\r\n context: {\r\n $implicit: mo,\r\n index: this.index\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n </fd-card-content>\r\n } @if(detailsText || contextMenuEnabled){\r\n <fd-card-footer\r\n (click)=\"!isChecked && onRowCheck(true)\"\r\n (dblclick)=\"onRowClick()\"\r\n [class.extra-footer]=\"extraFooterComponent?.Selector\"\r\n [class.hasDetailsAndContextMenu]=\"detailsText && contextMenuEnabled && contextMenuInFooter\"\r\n >\r\n @if(extraFooterComponent?.Selector){\r\n <bnrc-dynamic-item-component\r\n style=\"display: block; flex: 1\"\r\n [component]=\"extraFooterComponent\"\r\n [mo]=\"mo\"\r\n [styleIndex]=\"mo.$StyleIndex\"\r\n [isChecked]=\"isChecked\"\r\n [setting]=\"setting\"\r\n [parameters]=\"extraFooterComponent.Settings\"\r\n [editMode]=\"inlineEditMode\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [index]=\"index\"\r\n [allColumns]=\"allColumns\"\r\n ></bnrc-dynamic-item-component>\r\n } @if(detailsText){<button *fdCardFooterActionItem fd-button fdType=\"transparent\" [fdPopoverTrigger]=\"popover\">\r\n {{ detailsText }}\r\n </button>\r\n } @if(contextMenuInFooter){\r\n <div\r\n *fdCardFooterActionItem\r\n ulvContextMenu\r\n [allColumns]=\"allColumns\"\r\n [footerMode]=\"false\"\r\n [menuItems]=\"contextMenuItems\"\r\n [contextMenuOverflowText]=\"contextMenuOverflowText\"\r\n [styleIndex]=\"styleIndex\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [mo]=\"mo\"\r\n (commandClick)=\"onUlvCommand()\"\r\n ></div>\r\n }\r\n <fd-popover #popover>\r\n @if (detailsColumns?.length) {\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 }\r\n </fd-popover>\r\n </fd-card-footer>\r\n }\r\n</fd-card>\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\" class=\"tw-p-2\">\r\n @for (column of detailsColumns; track column; let columnIndex = $index) {\r\n <div fd-form-item class=\"!tw-flex-row\">\r\n @if(!column.$CustomComponent?.HideColumnCaption) {<label fd-form-label for=\"input-2\"\r\n >{{ column.Caption }}<span>:</span></label\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: 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-layout94=\"layout94\"\r\n let-disableEllapsis=\"disableEllapsis\"\r\n let-fdTextMode=\"fdTextMode\"\r\n>\r\n @if (column) {\r\n <bsu-barsa-table-column\r\n [mo]=\"mo\"\r\n [allColumns]=\"allColumns\"\r\n [column]=\"column\"\r\n [isdirty]=\"false\"\r\n [value]=\"column | columnValue: mo\"\r\n [icon]=\"column | columnIcon: mo\"\r\n [customComponent]=\"column.$CustomComponent\"\r\n [column]=\"column\"\r\n [disableEllapsis]=\"disableEllapsis === false ? false : true\"\r\n [fdTextMode]=\"fdTextMode\"\r\n [editMode]=\"isChecked && inlineEditMode && allowInlineEdit\"\r\n [inlineEditMode]=\"inlineEditMode\"\r\n [isChecked]=\"isChecked\"\r\n [index]=\"index\"\r\n [formSetting]=\"formSetting\"\r\n [rtl]=\"rtl\"\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\r\n }\r\n</ng-template>\r\n<ng-template #quickViewTemplate let-mo let-index=\"index\">\r\n @if (!noContent) {\r\n <fd-quick-view [id]=\"'id'\">\r\n <fd-quick-view-group>\r\n @for (column of setting.FieldListMapped; track column) {\r\n <fd-quick-view-group-item [class.rowDirection]=\"column?.$CustomComponent?.IsRowDirection\">\r\n @if (column) { @if(!column.$CustomComponent?.HideColumnCaption) {<fd-quick-view-group-item-label>\r\n {{ column.Caption | bbbTranslate }} </fd-quick-view-group-item-label\r\n >}\r\n <fd-quick-view-group-item-content>\r\n <div fd-quick-view-group-item-content-element class=\"group-item-content\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: column,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n </fd-quick-view-group-item-content>\r\n }\r\n </fd-quick-view-group-item>\r\n } @if (setting.DescriptionField) {\r\n <fd-quick-view-group-item>\r\n <fd-quick-view-group-item-content>\r\n @if (inlineEditMode && allowInlineEdit) {\r\n <fd-quick-view-group-item-label>\r\n {{ setting.DescriptionField?.Alias | bbbTranslate }}\r\n </fd-quick-view-group-item-label>\r\n }\r\n <div fd-quick-view-group-item-content-element class=\"group-item-content\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: setting.DescriptionField,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n </fd-quick-view-group-item-content>\r\n @if (setting.ActionFieldNameField) {\r\n <fd-quick-view-group-item-content\r\n class=\"action\"\r\n (click)=\"onAction(setting.ActionFieldCommandField || '')\"\r\n >\r\n <a fd-link>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: setting.ActionFieldNameField,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n </a>\r\n </fd-quick-view-group-item-content>\r\n }\r\n </fd-quick-view-group-item>\r\n }\r\n </fd-quick-view-group>\r\n </fd-quick-view>\r\n }\r\n</ng-template>\r\n<ng-template #contentTemplate let-mo let-index=\"index\">\r\n <fd-layout-grid>\r\n <div fdLayoutGridRow style=\"align-items: center\">\r\n <div [fdLayoutGridCol]=\"12\">\r\n @for (column of setting.FieldListMapped; track column) {\r\n <div style=\"display: flex\">\r\n <label fd-form-label [colon]=\"true\">{{ column.Caption | bbbTranslate }}</label>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: column,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n }\r\n </div>\r\n @if (setting.DescriptionField) {\r\n <div [fdLayoutGridCol]=\"12\">\r\n @if (inlineEditMode && allowInlineEdit) {\r\n <label>\r\n {{ setting.DescriptionField?.Alias | bbbTranslate }}\r\n </label>\r\n }\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: setting.DescriptionField,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n }\r\n </div>\r\n </fd-layout-grid>\r\n</ng-template>\r\n<ng-template #avatar let-avatar let-visible=\"visible\" let-circle=\"circle\" let-avatarField=\"avatarField\">\r\n @if (visible) {\r\n <fd-avatar\r\n alterIcon=\"alt|content|backup|default-icon\"\r\n [circle]=\"circle\"\r\n [image]=\"avatarField ? (mo[avatarField.Name]?.FileId | picFieldSrc: 'ID':avatarField.FieldDefId) : ''\"\r\n [size]=\"\r\n deviceSize === 'xl' || deviceSize === 'l' ? setting.AvatarSizeDesktop$Caption : setting.AvatarSize$Caption\r\n \"\r\n [glyph]=\"avatar || (mo.$State === 'New' && !isChecked ? 'favorite' : inlineEditMode && isChecked ? 'edit' : '')\"\r\n >\r\n </fd-avatar>\r\n }\r\n</ng-template>\r\n\r\n<ng-template #contentTemplateComponent let-mo let-index=\"index\">\r\n <bnrc-dynamic-item-component\r\n [component]=\"setting.ContentComponent\"\r\n [mo]=\"mo\"\r\n [styleIndex]=\"mo.$StyleIndex\"\r\n [isChecked]=\"isChecked\"\r\n [setting]=\"setting\"\r\n [parameters]=\"setting.ContentComponent.Settings\"\r\n [editMode]=\"inlineEditMode\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [index]=\"index\"\r\n [allColumns]=\"allColumns\"\r\n ></bnrc-dynamic-item-component>\r\n</ng-template>\r\n\r\n<ng-template #renderHeader let-mo let-index=\"index\">\r\n @if(!hideOpenIcon && (openOnClick || (canView && deviceName !== 'desktop'))){\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n renderHeaderMobileCanView;\r\n context: {\r\n $implicit: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n }@else{\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n renderHeaderDesktop;\r\n context: {\r\n $implicit: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n }\r\n</ng-template>\r\n<ng-template #renderHeaderDesktop let-mo let-index=\"index\">\r\n <fd-card-header class=\"HeaderDesktop\">\r\n <div>\r\n @if(isCheckList){\r\n <fd-checkbox [name]=\"mo.$Caption\" [ngModel]=\"isChecked\" (ngModelChange)=\"onRowCheck()\"></fd-checkbox>\r\n }\r\n </div>\r\n <fd-card-main-header (click)=\"onRowCheck()\" (dblclick)=\"onRowClick()\">\r\n @if (setting.AvatarField || setting.Avatar) {\r\n <fd-avatar\r\n alterIcon=\"alt|content|backup|default-icon\"\r\n [circle]=\"setting.CircleAvatar\"\r\n [image]=\"\r\n setting.AvatarField\r\n ? (mo[setting.AvatarField.Name]?.FileId | picFieldSrc: 'ID':setting.AvatarField.FieldDefId)\r\n : ''\r\n \"\r\n [size]=\"\r\n deviceSize === 'xl' || deviceSize === 'l'\r\n ? setting.AvatarSizeDesktop$Caption\r\n : setting.AvatarSize$Caption\r\n \"\r\n [glyph]=\"\r\n setting.Avatar ||\r\n (mo.$State === 'New' && !isChecked ? 'favorite' : inlineEditMode && isChecked ? 'edit' : '')\r\n \"\r\n ></fd-avatar>\r\n }\r\n <h2 fd-card-title>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: setting.TitleField,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index,\r\n disableEllapsis: false,\r\n fdTextMode: true\r\n }\r\n \"\r\n ></ng-container>\r\n </h2>\r\n <h3 fd-card-subtitle>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: setting.SubtitleField,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index,\r\n disableEllapsis: false\r\n }\r\n \"\r\n ></ng-container>\r\n </h3>\r\n @if (!contextMenuInFooter && (contextMenuItems && contextMenuItems.length > 0)) {\r\n <div\r\n ulvContextMenu\r\n fd-card-header-action\r\n [allColumns]=\"allColumns\"\r\n [footerMode]=\"false\"\r\n [menuItems]=\"contextMenuItems\"\r\n [contextMenuOverflowText]=\"contextMenuOverflowText\"\r\n [styleIndex]=\"styleIndex\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [mo]=\"mo\"\r\n (commandClick)=\"onUlvCommand()\"\r\n ></div>\r\n }\r\n </fd-card-main-header>\r\n </fd-card-header>\r\n</ng-template>\r\n<ng-template #renderHeaderMobileCanView let-mo let-index=\"index\">\r\n <fd-card-header class=\"HeaderMobileCanView\">\r\n <div>\r\n @if(isCheckList){\r\n <fd-checkbox [name]=\"mo.$Caption\" [ngModel]=\"isChecked\" (ngModelChange)=\"onRowCheck()\"></fd-checkbox>\r\n }\r\n </div>\r\n <fd-card-main-header (click)=\"onRowCheck()\" (dblclick)=\"onRowClick()\">\r\n @if (setting.AvatarField || setting.Avatar) {\r\n <fd-avatar\r\n alterIcon=\"alt|content|backup|default-icon\"\r\n [circle]=\"setting.CircleAvatar\"\r\n [image]=\"\r\n setting.AvatarField\r\n ? (mo[setting.AvatarField.Name]?.FileId | picFieldSrc: 'ID':setting.AvatarField.FieldDefId)\r\n : ''\r\n \"\r\n [size]=\"\r\n deviceSize === 'xl' || deviceSize === 'l'\r\n ? setting.AvatarSizeDesktop$Caption\r\n : setting.AvatarSize$Caption\r\n \"\r\n [glyph]=\"\r\n setting.Avatar ||\r\n (mo.$State === 'New' && !isChecked ? 'favorite' : inlineEditMode && isChecked ? 'edit' : '')\r\n \"\r\n ></fd-avatar>\r\n }\r\n <h2 fd-card-title>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: setting.TitleField,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index,\r\n fdTextMode: true\r\n }\r\n \"\r\n ></ng-container>\r\n </h2>\r\n <h3 fd-card-subtitle>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: setting.SubtitleField,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n </h3>\r\n\r\n @if (!contextMenuInFooter && (contextMenuItems && contextMenuItems.length > 0)) {\r\n <div\r\n ulvContextMenu\r\n fd-card-header-action\r\n [allColumns]=\"allColumns\"\r\n [footerMode]=\"false\"\r\n [menuItems]=\"contextMenuItems\"\r\n [contextMenuOverflowText]=\"contextMenuOverflowText\"\r\n [styleIndex]=\"styleIndex\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [mo]=\"mo\"\r\n (commandClick)=\"onUlvCommand()\"\r\n ></div>\r\n }@else {\r\n <button\r\n fd-button\r\n fd-card-header-action\r\n class=\"view-btn\"\r\n (click)=\"onRowClick()\"\r\n [glyph]=\"navigationArrow\"\r\n fdType=\"transparent\"\r\n ></button>\r\n }\r\n </fd-card-main-header>\r\n </fd-card-header>\r\n</ng-template>\r\n<ng-template #renderHeaderComponent let-mo let-index=\"index\">\r\n <bnrc-dynamic-item-component\r\n (click)=\"setting.openOnClick && onRowClick()\"\r\n [component]=\"setting.HeaderComponent\"\r\n [mo]=\"mo\"\r\n [styleIndex]=\"mo.$StyleIndex\"\r\n [isChecked]=\"isChecked\"\r\n [setting]=\"setting\"\r\n [parameters]=\"setting.HeaderComponent.Settings\"\r\n [editMode]=\"inlineEditMode\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [index]=\"index\"\r\n [allColumns]=\"allColumns\"\r\n [contextMenuItems]=\"contextMenuItems\"\r\n [canView]=\"canView\"\r\n [hideOpenIcon]=\"hideOpenIcon\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [navigationArrow]=\"navigationArrow\"\r\n [isCheckList]=\"isCheckList\"\r\n (events)=\"onDynamicComponentEvents($event)\"\r\n ></bnrc-dynamic-item-component>\r\n</ng-template>\r\n", styles: ["fd-card:hover{box-shadow:0 0 0 .0625rem #2235487a,0 .625rem 1.875rem #22354840}fd-card div[ulvcontextmenu] ::ng-deep .fd-bar{background-color:transparent}fd-card ::ng-deep bsu-column-renderer div.renderGeneral{font-family:IranYekanDigits}fd-card fd-card-footer.extra-footer{flex-wrap:wrap}fd-card fd-card-footer.hasDetailsAndContextMenu ::ng-deep .fd-card__footer-actions{justify-content:space-between!important}fd-card fd-card-content{padding:0!important}fd-card fd-card-content>div>fd-quick-view ::ng-deep .fd-quick-view__content{padding-top:0}fd-card fd-card-content>div>fd-quick-view fd-quick-view-group-item.rowDirection ::ng-deep .fd-form-item{flex-direction:row}fd-card.hide-header-border ::ng-deep fd-card-header fd-card-main-header>.fd-card__header-main{border:none}fd-card fd-card-header{padding:.5rem}fd-card fd-card-header:hover{background:var(--fdCard_Background_Color)}fd-card fd-card-header .fd-card__title{display:flex;justify-content:space-between;align-items:center;width:100%}fd-card fd-card-header button,fd-card fd-card-header div[ulvcontextmenu]{z-index:6}fd-card fd-card-header:hover{background:inherit}fd-quick-view-subheader ::ng-deep div{background:inherit}.action{cursor:pointer;margin-top:6px;flex:1;display:flex;justify-content:end;flex-direction:column}.openOnClick{cursor:pointer}\n"] }]
|
|
5428
|
+
args: [{ selector: 'bsu-card-item', providers: [FormPanelService], changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<fd-card\r\n [cardType]=\"setting.CardType$Caption\"\r\n class=\"docs-flex-item-margin\"\r\n [class.openOnClick]=\"setting.openOnClick\"\r\n [class.hide-header-border]=\"setting.HideHeaderBorder\"\r\n [style.width]=\"cardWidth\"\r\n [style.min-width]=\"minWidth\"\r\n [style.max-width]=\"maxWidth\"\r\n>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n setting.HeaderComponent ? renderHeaderComponent : renderHeader;\r\n context: {\r\n $implicit: mo,\r\n index: this.index\r\n }\r\n \"\r\n ></ng-container>\r\n\r\n @if (!noContent || contextMenuItems) {\r\n <fd-card-content (click)=\"onRowCheck()\" (dblclick)=\"onRowClick()\" ellipsify>\r\n <div #divEl [applyConditionalFormats]=\"conditionalFormats\" [styleIndex]=\"styleIndex\" [hostEl]=\"divEl\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n setting.ContentComponent ? contentTemplateComponent : contentTemplateRef;\r\n context: {\r\n $implicit: mo,\r\n index: this.index\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n </fd-card-content>\r\n } @if(detailsText || contextMenuEnabled){\r\n <fd-card-footer\r\n (click)=\"!isChecked && onRowCheck(true)\"\r\n (dblclick)=\"onRowClick()\"\r\n [class.extra-footer]=\"extraFooterComponent?.Selector\"\r\n [class.hasDetailsAndContextMenu]=\"detailsText && contextMenuEnabled && contextMenuInFooter\"\r\n >\r\n @if(extraFooterComponent?.Selector){\r\n <bnrc-dynamic-item-component\r\n style=\"display: block; flex: 1\"\r\n [component]=\"extraFooterComponent\"\r\n [mo]=\"mo\"\r\n [styleIndex]=\"mo.$StyleIndex\"\r\n [isChecked]=\"isChecked\"\r\n [setting]=\"setting\"\r\n [parameters]=\"extraFooterComponent.Settings\"\r\n [editMode]=\"inlineEditMode\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [index]=\"index\"\r\n [allColumns]=\"allColumns\"\r\n ></bnrc-dynamic-item-component>\r\n } @if(detailsText){<button *fdCardFooterActionItem fd-button fdType=\"transparent\" [fdPopoverTrigger]=\"popover\">\r\n {{ detailsText }}\r\n </button>\r\n } @if(contextMenuInFooter){\r\n <div\r\n *fdCardFooterActionItem\r\n ulvContextMenu\r\n [allColumns]=\"allColumns\"\r\n [footerMode]=\"false\"\r\n [menuItems]=\"contextMenuItems\"\r\n [contextMenuOverflowText]=\"contextMenuOverflowText\"\r\n [styleIndex]=\"styleIndex\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [mo]=\"mo\"\r\n (commandClick)=\"onUlvCommand()\"\r\n ></div>\r\n }\r\n <fd-popover #popover>\r\n @if (detailsColumns?.length) {\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 }\r\n </fd-popover>\r\n </fd-card-footer>\r\n }\r\n</fd-card>\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\" class=\"tw-p-2\">\r\n @for (column of detailsColumns; track column; let columnIndex = $index) {\r\n <div fd-form-item class=\"!tw-flex-row\">\r\n @if(!column.$CustomComponent?.HideColumnCaption) {<label fd-form-label for=\"input-2\"\r\n >{{ column.Caption }}<span>:</span></label\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: 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-layout94=\"layout94\"\r\n let-disableEllapsis=\"disableEllapsis\"\r\n let-fdTextMode=\"fdTextMode\"\r\n>\r\n @if (column) {\r\n <bsu-barsa-table-column\r\n [mo]=\"mo\"\r\n [allColumns]=\"allColumns\"\r\n [column]=\"column\"\r\n [isdirty]=\"false\"\r\n [value]=\"column | columnValue: mo\"\r\n [icon]=\"column | columnIcon: mo\"\r\n [customComponent]=\"column.$CustomComponent\"\r\n [column]=\"column\"\r\n [disableEllapsis]=\"disableEllapsis === false ? false : true\"\r\n [fdTextMode]=\"fdTextMode\"\r\n [editMode]=\"isChecked && inlineEditMode && allowInlineEdit\"\r\n [inlineEditMode]=\"inlineEditMode\"\r\n [isChecked]=\"isChecked\"\r\n [index]=\"index\"\r\n [formSetting]=\"formSetting\"\r\n [rtl]=\"rtl\"\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\r\n }\r\n</ng-template>\r\n<ng-template #quickViewTemplate let-mo let-index=\"index\">\r\n @if (!noContent) {\r\n <fd-quick-view [id]=\"'id'\">\r\n <fd-quick-view-group>\r\n @for (column of setting.FieldListMapped; track column) {\r\n <fd-quick-view-group-item [class.rowDirection]=\"column?.$CustomComponent?.IsRowDirection\">\r\n @if (column) { @if(!column.$CustomComponent?.HideColumnCaption) {<fd-quick-view-group-item-label>\r\n {{ column.Caption | bbbTranslate }} </fd-quick-view-group-item-label\r\n >}\r\n <fd-quick-view-group-item-content>\r\n <div fd-quick-view-group-item-content-element class=\"group-item-content\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: column,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n </fd-quick-view-group-item-content>\r\n }\r\n </fd-quick-view-group-item>\r\n } @if (setting.DescriptionField) {\r\n <fd-quick-view-group-item>\r\n <fd-quick-view-group-item-content>\r\n @if (inlineEditMode && allowInlineEdit) {\r\n <fd-quick-view-group-item-label>\r\n {{ setting.DescriptionField?.Alias | bbbTranslate }}\r\n </fd-quick-view-group-item-label>\r\n }\r\n <div fd-quick-view-group-item-content-element class=\"group-item-content\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: setting.DescriptionField,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n </fd-quick-view-group-item-content>\r\n @if (setting.ActionFieldNameField) {\r\n <fd-quick-view-group-item-content\r\n class=\"action\"\r\n (click)=\"onAction(setting.ActionFieldCommandField || '')\"\r\n >\r\n <a fd-link>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: setting.ActionFieldNameField,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n </a>\r\n </fd-quick-view-group-item-content>\r\n }\r\n </fd-quick-view-group-item>\r\n }\r\n </fd-quick-view-group>\r\n </fd-quick-view>\r\n }\r\n</ng-template>\r\n<ng-template #contentTemplate let-mo let-index=\"index\">\r\n <fd-layout-grid>\r\n <div fdLayoutGridRow style=\"align-items: center\">\r\n <div [fdLayoutGridCol]=\"12\">\r\n @for (column of setting.FieldListMapped; track column) {\r\n <div style=\"display: flex\">\r\n <label fd-form-label [colon]=\"true\">{{ column.Caption | bbbTranslate }}</label>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: column,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n }\r\n </div>\r\n @if (setting.DescriptionField) {\r\n <div [fdLayoutGridCol]=\"12\">\r\n @if (inlineEditMode && allowInlineEdit) {\r\n <label>\r\n {{ setting.DescriptionField?.Alias | bbbTranslate }}\r\n </label>\r\n }\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: setting.DescriptionField,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n }\r\n </div>\r\n </fd-layout-grid>\r\n</ng-template>\r\n<ng-template #avatar let-avatar let-visible=\"visible\" let-circle=\"circle\" let-avatarField=\"avatarField\">\r\n @if (visible) {\r\n <fd-avatar\r\n alterIcon=\"alt|content|backup|default-icon\"\r\n [circle]=\"circle\"\r\n [image]=\"avatarField ? (mo[avatarField.Name]?.FileId | picFieldSrc: 'ID':avatarField.FieldDefId) : ''\"\r\n [size]=\"\r\n deviceSize === 'xl' || deviceSize === 'l' ? setting.AvatarSizeDesktop$Caption : setting.AvatarSize$Caption\r\n \"\r\n [glyph]=\"avatar || (mo.$State === 'New' && !isChecked ? 'favorite' : inlineEditMode && isChecked ? 'edit' : '')\"\r\n >\r\n </fd-avatar>\r\n }\r\n</ng-template>\r\n\r\n<ng-template #contentTemplateComponent let-mo let-index=\"index\">\r\n <bnrc-dynamic-item-component\r\n [component]=\"setting.ContentComponent\"\r\n [mo]=\"mo\"\r\n [styleIndex]=\"mo.$StyleIndex\"\r\n [isChecked]=\"isChecked\"\r\n [setting]=\"setting\"\r\n [parameters]=\"setting.ContentComponent.Settings\"\r\n [editMode]=\"inlineEditMode\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [index]=\"index\"\r\n [allColumns]=\"allColumns\"\r\n ></bnrc-dynamic-item-component>\r\n</ng-template>\r\n\r\n<ng-template #renderHeader let-mo let-index=\"index\">\r\n @if(!hideOpenIcon && (openOnClick || (canView && deviceName !== 'desktop'))){\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n renderHeaderMobileCanView;\r\n context: {\r\n $implicit: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n }@else{\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n renderHeaderDesktop;\r\n context: {\r\n $implicit: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n }\r\n</ng-template>\r\n<ng-template #renderHeaderDesktop let-mo let-index=\"index\">\r\n <fd-card-header class=\"HeaderDesktop\">\r\n <div>\r\n @if(isCheckList){\r\n <fd-checkbox [name]=\"mo.$Caption\" [ngModel]=\"isChecked\" (ngModelChange)=\"onRowCheck()\"></fd-checkbox>\r\n }\r\n </div>\r\n <fd-card-main-header (click)=\"onRowCheck()\" (dblclick)=\"onRowClick()\">\r\n @if (setting.AvatarField || setting.Avatar) {\r\n <fd-avatar\r\n alterIcon=\"alt|content|backup|default-icon\"\r\n [circle]=\"setting.CircleAvatar\"\r\n [image]=\"\r\n setting.AvatarField\r\n ? (mo[setting.AvatarField.Name]?.FileId | picFieldSrc: 'ID':setting.AvatarField.FieldDefId)\r\n : ''\r\n \"\r\n [size]=\"\r\n deviceSize === 'xl' || deviceSize === 'l'\r\n ? setting.AvatarSizeDesktop$Caption\r\n : setting.AvatarSize$Caption\r\n \"\r\n [glyph]=\"\r\n setting.Avatar ||\r\n (mo.$State === 'New' && !isChecked ? 'favorite' : inlineEditMode && isChecked ? 'edit' : '')\r\n \"\r\n ></fd-avatar>\r\n }\r\n <h2 fd-card-title>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: setting.TitleField,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index,\r\n disableEllapsis: false,\r\n fdTextMode: true\r\n }\r\n \"\r\n ></ng-container>\r\n </h2>\r\n <h3 fd-card-subtitle>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: setting.SubtitleField,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index,\r\n disableEllapsis: false\r\n }\r\n \"\r\n ></ng-container>\r\n </h3>\r\n @if (!contextMenuInFooter && (contextMenuItems && contextMenuItems.length > 0)) {\r\n <div\r\n ulvContextMenu\r\n fd-card-header-action\r\n [allColumns]=\"allColumns\"\r\n [footerMode]=\"false\"\r\n [menuItems]=\"contextMenuItems\"\r\n [contextMenuOverflowText]=\"contextMenuOverflowText\"\r\n [styleIndex]=\"styleIndex\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [mo]=\"mo\"\r\n (commandClick)=\"onUlvCommand()\"\r\n ></div>\r\n }\r\n </fd-card-main-header>\r\n </fd-card-header>\r\n</ng-template>\r\n<ng-template #renderHeaderMobileCanView let-mo let-index=\"index\">\r\n <fd-card-header class=\"HeaderMobileCanView\">\r\n <div>\r\n @if(isCheckList){\r\n <fd-checkbox [name]=\"mo.$Caption\" [ngModel]=\"isChecked\" (ngModelChange)=\"onRowCheck()\"></fd-checkbox>\r\n }\r\n </div>\r\n <fd-card-main-header (click)=\"onRowCheck()\" (dblclick)=\"onRowClick()\">\r\n @if (setting.AvatarField || setting.Avatar) {\r\n <fd-avatar\r\n alterIcon=\"alt|content|backup|default-icon\"\r\n [circle]=\"setting.CircleAvatar\"\r\n [image]=\"\r\n setting.AvatarField\r\n ? (mo[setting.AvatarField.Name]?.FileId | picFieldSrc: 'ID':setting.AvatarField.FieldDefId)\r\n : ''\r\n \"\r\n [size]=\"\r\n deviceSize === 'xl' || deviceSize === 'l'\r\n ? setting.AvatarSizeDesktop$Caption\r\n : setting.AvatarSize$Caption\r\n \"\r\n [glyph]=\"\r\n setting.Avatar ||\r\n (mo.$State === 'New' && !isChecked ? 'favorite' : inlineEditMode && isChecked ? 'edit' : '')\r\n \"\r\n ></fd-avatar>\r\n }\r\n <h2 fd-card-title>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: setting.TitleField,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index,\r\n fdTextMode: true\r\n }\r\n \"\r\n ></ng-container>\r\n </h2>\r\n <h3 fd-card-subtitle>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: setting.SubtitleField,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n </h3>\r\n\r\n @if (!contextMenuInFooter && (contextMenuItems && contextMenuItems.length > 0)) {\r\n <div\r\n ulvContextMenu\r\n fd-card-header-action\r\n [allColumns]=\"allColumns\"\r\n [footerMode]=\"false\"\r\n [menuItems]=\"contextMenuItems\"\r\n [contextMenuOverflowText]=\"contextMenuOverflowText\"\r\n [styleIndex]=\"styleIndex\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [mo]=\"mo\"\r\n (commandClick)=\"onUlvCommand()\"\r\n ></div>\r\n }@else {\r\n <button\r\n fd-button\r\n fd-card-header-action\r\n class=\"view-btn\"\r\n (click)=\"onRowClick()\"\r\n [glyph]=\"navigationArrow\"\r\n fdType=\"transparent\"\r\n ></button>\r\n }\r\n </fd-card-main-header>\r\n </fd-card-header>\r\n</ng-template>\r\n<ng-template #renderHeaderComponent let-mo let-index=\"index\">\r\n <bnrc-dynamic-item-component\r\n (click)=\"setting.openOnClick && onRowClick()\"\r\n [component]=\"setting.HeaderComponent\"\r\n [mo]=\"mo\"\r\n [styleIndex]=\"mo.$StyleIndex\"\r\n [isChecked]=\"isChecked\"\r\n [setting]=\"setting\"\r\n [parameters]=\"setting.HeaderComponent.Settings\"\r\n [editMode]=\"inlineEditMode\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [index]=\"index\"\r\n [allColumns]=\"allColumns\"\r\n [contextMenuItems]=\"contextMenuItems\"\r\n [canView]=\"canView\"\r\n [hideOpenIcon]=\"hideOpenIcon\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [navigationArrow]=\"navigationArrow\"\r\n [isCheckList]=\"isCheckList\"\r\n (events)=\"onDynamicComponentEvents($event)\"\r\n ></bnrc-dynamic-item-component>\r\n</ng-template>\r\n", styles: ["fd-card:hover{box-shadow:0 0 0 .0625rem #2235487a,0 .625rem 1.875rem #22354840}fd-card div[ulvcontextmenu] ::ng-deep .fd-bar{background-color:transparent}fd-card fd-card-content ::ng-deep bsu-column-renderer div.renderGeneral{font-family:IranYekanDigits}fd-card fd-card-footer.extra-footer{flex-wrap:wrap}fd-card fd-card-footer.hasDetailsAndContextMenu ::ng-deep .fd-card__footer-actions{justify-content:space-between!important}fd-card fd-card-content{padding:0!important}fd-card fd-card-content>div>fd-quick-view ::ng-deep .fd-quick-view__content{padding-top:0}fd-card fd-card-content>div>fd-quick-view fd-quick-view-group-item.rowDirection ::ng-deep .fd-form-item{flex-direction:row}fd-card.hide-header-border ::ng-deep fd-card-header fd-card-main-header>.fd-card__header-main{border:none}fd-card fd-card-header{padding:.5rem}fd-card fd-card-header:hover{background:var(--fdCard_Background_Color)}fd-card fd-card-header .fd-card__title{display:flex;justify-content:space-between;align-items:center;width:100%}fd-card fd-card-header button,fd-card fd-card-header div[ulvcontextmenu]{z-index:6}fd-card fd-card-header:hover{background:inherit}fd-quick-view-subheader ::ng-deep div{background:inherit}.action{cursor:pointer;margin-top:6px;flex:1;display:flex;justify-content:end;flex-direction:column}.openOnClick{cursor:pointer}\n"] }]
|
|
5422
5429
|
}], propDecorators: { setting: [{
|
|
5423
5430
|
type: Input
|
|
5424
5431
|
}], _quickViewTemplate: [{
|
|
@@ -5972,11 +5979,11 @@ class BarsaTableRowComponent extends BaseViewItemPropsComponent {
|
|
|
5972
5979
|
this._cdr.detectChanges();
|
|
5973
5980
|
}
|
|
5974
5981
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BarsaTableRowComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
5975
|
-
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>\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: 'BARSAFONT 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>\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>\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 [type]=\"bruleActionMessage.MessageType === 2 ? 'error' : 'information'\" [dismissible]=\"false\">\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 [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 && inlineEditMode && allowInlineEdit\"\r\n [inlineEditMode]=\"inlineEditMode\"\r\n [isChecked]=\"isChecked\"\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$2.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: i6.IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "color", "background", "class", "ariaLabel", "ariaHidden"] }, { kind: "component", type: i9.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 }); }
|
|
5982
|
+
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>\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>\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>\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 [type]=\"bruleActionMessage.MessageType === 2 ? 'error' : 'information'\" [dismissible]=\"false\">\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 [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 && inlineEditMode && allowInlineEdit\"\r\n [inlineEditMode]=\"inlineEditMode\"\r\n [isChecked]=\"isChecked\"\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$2.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: i6.IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "color", "background", "class", "ariaLabel", "ariaHidden"] }, { kind: "component", type: i9.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 }); }
|
|
5976
5983
|
}
|
|
5977
5984
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BarsaTableRowComponent, decorators: [{
|
|
5978
5985
|
type: Component,
|
|
5979
|
-
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>\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: 'BARSAFONT 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>\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>\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 [type]=\"bruleActionMessage.MessageType === 2 ? 'error' : 'information'\" [dismissible]=\"false\">\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 [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 && inlineEditMode && allowInlineEdit\"\r\n [inlineEditMode]=\"inlineEditMode\"\r\n [isChecked]=\"isChecked\"\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"] }]
|
|
5986
|
+
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>\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>\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>\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 [type]=\"bruleActionMessage.MessageType === 2 ? 'error' : 'information'\" [dismissible]=\"false\">\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 [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 && inlineEditMode && allowInlineEdit\"\r\n [inlineEditMode]=\"inlineEditMode\"\r\n [isChecked]=\"isChecked\"\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"] }]
|
|
5980
5987
|
}], propDecorators: { showDetailsInRow: [{
|
|
5981
5988
|
type: Input
|
|
5982
5989
|
}], previewColumn: [{
|
|
@@ -8724,11 +8731,11 @@ class UlvFormMultiSelectComponent extends BaseComponent {
|
|
|
8724
8731
|
return item.Id;
|
|
8725
8732
|
}
|
|
8726
8733
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UlvFormMultiSelectComponent, deps: [{ token: i1.DialogService }, { token: i2.BbbTranslatePipe }, { token: i2.PortalService }, { token: i1.ContentDensityService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8727
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: UlvFormMultiSelectComponent, selector: "bsu-ulv-form-multi-select", inputs: { Show: "Show" }, viewQueries: [{ propertyName: "dialogContainer", first: true, predicate: ["container"], descendants: true, read: TemplateRef }, { propertyName: "dialogComponent", first: true, predicate: ["dialogTpl"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #container>\r\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\" #dialogTpl>\r\n <fd-dialog-header>\r\n <ng-template fdkTemplate=\"header\">\r\n <div fd-bar-left>\r\n <fd-bar-element>\r\n <h1 id=\"fd-dialog-header-3\" fd-title>{{ dialog.data.title }}</h1>\r\n </fd-bar-element>\r\n </div>\r\n <div fd-bar-right>\r\n @if (!dialogConfig.fullscreen && !dialogConfig.mobile) {\r\n <fd-button-bar\r\n ariaLabel=\"fullscreen\"\r\n [glyph]=\"dialog.data.fullscreen ? 'exitfullscreen' : 'resize'\"\r\n fullscreenDialog\r\n [dialog]=\"dialog\"\r\n [fullscreen]=\"dialog.data.fullscreen\"\r\n (fullscreenChanged)=\"dialog.data.fullscreen = $event\"\r\n [dialogComponent]=\"dialogTpl\"\r\n ></fd-button-bar>\r\n }\r\n <fd-button-bar ariaLabel=\"close\" glyph=\"decline\" (click)=\"onCancel(dialog)\"></fd-button-bar>\r\n </div>\r\n </ng-template>\r\n <!-- <h3 fd-title>{{ dialog.data.title }}</h3>\r\n <button fd-dialog-close-button></button> -->\r\n </fd-dialog-header>\r\n\r\n <fd-dialog-body>\r\n @if (dialog.data.ulv1; as ulv1) {\r\n <bsu-ui-ulv-main-ui\r\n class=\"ulv-form-multi-select\"\r\n [context]=\"ulv1\"\r\n [inDialog]=\"true\"\r\n [isMultiSelect]=\"dialog.data.ShowSecondPanel\"\r\n [fullscreen]=\"dialog.data.fullscreen\"\r\n ></bsu-ui-ulv-main-ui>\r\n }\r\n </fd-dialog-body>\r\n @if (dialog.data.ulv2 && dialog.data.ShowSecondPanel) {\r\n <fd-dialog-footer class=\"ulvSelection\">\r\n <ng-template fdkTemplate=\"footer\">\r\n <div\r\n class=\"ulv-selection-form-dialog__row ulv-selection-form-dialog__selection-row\"\r\n [aria-label]=\"'SelectedItemsAndConditions' | bbbTranslate\"\r\n >\r\n <h5 fd-title class=\"selected-and-condition-title !tw-pb-2\">\r\n <ng-container>\r\n <ng-container>{{ 'SelectedItemsAndConditions' | bbbTranslate }} </ng-container>\r\n ({{ dialog.data.selectedItems?.MoDataList?.length || 0 }})\r\n </ng-container>\r\n </h5>\r\n <div class=\"ulv-selection-form-dialog__tokens-wrapper\">\r\n <div class=\"ulv-selection-form-dialog__tokens\">\r\n @if (dialog.data.selectedItems) {\r\n <fd-toolbar [shouldOverflow]=\"true\">\r\n <!-- Selected items -->\r\n @for ( item of dialog.data.selectedItems.MoDataList; track\r\n _trackBySelectedFn(selectedIndex, item); let selectedIndex = $index) {\r\n <fd-token\r\n fd-toolbar-item\r\n fdOverflowPriority=\"high\"\r\n class=\"fdp-value-help-dialog__selection-token\"\r\n (onCloseClick)=\"onRemoveSelected(dialog, item)\"\r\n >{{ item.$Caption }}\r\n </fd-token>\r\n }\r\n </fd-toolbar>\r\n }\r\n </div>\r\n <button\r\n class=\"ulv-selection-form-dialog__tokens-clear\"\r\n fd-button\r\n fdType=\"transparent\"\r\n glyph=\"decline\"\r\n [aria-label]=\"'Clear' | bbbTranslate\"\r\n (click)=\"onClear(dialog)\"\r\n ></button>\r\n </div>\r\n </div>\r\n </ng-template>\r\n </fd-dialog-footer>\r\n } @if (dialog.data.ulv1 && !dialog.data.ulv1?.HideOkCancelButtons) {\r\n <fd-dialog-footer>\r\n <ng-template fdkTemplate=\"footer\">\r\n @if (dialog.data.adapter?.ShowOkCancelButtons !== false) {\r\n <div class=\"fd-bar__right\">\r\n <button\r\n fd-button\r\n data-succes\r\n [label]=\"'OK' | bbbTranslate\"\r\n fdType=\"emphasized\"\r\n (click)=\"onOk(dialog)\"\r\n ></button>\r\n <button\r\n fd-button\r\n data-dismiss-dialog\r\n fd-dialog-decisive-button\r\n [label]=\"'Cancel' | bbbTranslate\"\r\n [fdType]=\"'transparent'\"\r\n (click)=\"onCancel(dialog)\"\r\n ></button>\r\n </div>\r\n }\r\n </ng-template>\r\n </fd-dialog-footer>\r\n }\r\n </fd-dialog>\r\n</ng-template>\r\n", styles: [".ulv-selection-form-dialog{cursor:default}.ulv-selection-form-dialog .fd-dialog__body bsu-ui-table-view{overflow-x:inherit!important}.ulv-selection-form-dialog__advanced-filters{padding-top:1rem}.ulv-selection-form-dialog__advanced-filters label{height:auto}.ulv-selection-form-dialog__toggle-filters{display:flex;justify-content:flex-end;align-items:flex-end}.ulv-selection-form-dialog__toggle-filters .fd-button{margin-bottom:.25rem}.ulv-selection-form-dialog__advanced-actions{display:flex;align-items:center;justify-content:flex-end}.ulv-selection-form-dialog-mobile .ulv-selection-form-dialog__advanced-actions{justify-content:flex-start}.ulv-selection-form-dialog__advanced-actions .fd-toolbar{padding:0}.ulv-selection-form-dialog fd-dialog-body{height:100%;display:flex;flex-direction:column}.ulv-selection-form-dialog bsu-ui-ulv-main-ui{height:100%;flex-grow:1}.ulv-selection-form-dialog bsu-ui-ulv-main-ui .viewer-container{height:auto;overflow:auto}.ulv-selection-form-dialog .ulv-selection-form-dialog__row{border-top:.0625rem solid var(--sapPageFooter_BorderColor, #d9d9d9);padding-top:1rem}.ulv-selection-form-dialog bsu-search-panel{border-bottom:.0625rem solid var(--sapPageFooter_BorderColor, #d9d9d9)}.ulv-selection-form-dialog fd-dialog-footer{height:auto}.ulv-selection-form-dialog fd-dialog-footer.ulvSelection .fd-bar{padding:0!important;height:7rem!important}.ulv-selection-form-dialog fd-dialog-footer.ulvSelection .fd-bar>div{width:100%}.ulv-selection-form-dialog__content-holder{padding:0 2rem 1rem;display:flex;flex-direction:column;height:100%;width:100%;overflow:hidden}.ulv-selection-form-dialog__row{padding:0 1rem}.ulv-selection-form-dialog__row.ulv-selection-form-dialog__selection-row{background-color:#f7f7f7;background-color:var(--sapBackgroundColor, #f7f7f7)}.ulv-selection-form-dialog__tokens-wrapper{display:flex}.ulv-selection-form-dialog__tokens{display:flex;flex:1 1 auto;overflow:hidden;align-items:center;border:1px solid #89919a;border-color:var(--sapContent_ForegroundBorderColor, #89919a);border-radius:.25rem;border-radius:var(--sapElement_BorderCornerRadius, .25rem);background:none}.ulv-selection-form-dialog__tokens fd-toolbar{flex:1 1 auto;overflow:hidden}.ulv-selection-form-dialog__tokens-clear{height:auto;min-width:2rem;padding:.125rem 0;justify-content:center}.ulv-selection-form-dialog__actions-row{padding:.5rem 0;display:flex;align-items:center;justify-content:flex-end;border-top:.0625rem solid #d9d9d9;border-top:.0625rem solid var(--sapPageFooter_BorderColor, #d9d9d9)}.ulv-selection-form-dialog__actions-row .fd-button{margin-left:.5rem}.ulv-selection-form-dialog__tokens-wrapper{align-items:center}\n"], dependencies: [{ kind: "directive", type: i3$1.BarLeftDirective, selector: "[fd-bar-left]" }, { kind: "directive", type: i3$1.BarRightDirective, selector: "[fd-bar-right]" }, { kind: "directive", type: i3$1.BarElementDirective, selector: "fd-bar-element", inputs: ["fullWidth"] }, { kind: "component", type: i3$1.ButtonBarComponent, selector: "fd-button-bar", inputs: ["fullWidth", "fdType", "title", "ariaLabelledby", "id"] }, { 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$1.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i4$1.DialogBodyComponent, selector: "fd-dialog-body", inputs: ["disablePaddings"] }, { kind: "component", type: i4$1.DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: i4$1.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "directive", type: i6$1.TemplateDirective, selector: "[fdkTemplate]", inputs: ["fdkTemplate"] }, { kind: "component", type: i7$1.TitleComponent, selector: "[fd-title], [fdTitle]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "component", type: i8.ToolbarComponent, selector: "fd-toolbar", inputs: ["titleId", "class", "shouldOverflow", "fdType", "title", "active", "clearBorder", "forceOverflow", "tabindex", "headingLevel", "ariaLabel", "ariaLabelledBy"] }, { kind: "directive", type: i8.ToolbarItemDirective, selector: "[fd-toolbar-item], [fdOverflowGroup], [fdOverflowPriority]", inputs: ["fdOverflowPriority", "fdOverflowGroup"] }, { kind: "component", type: i7$6.TokenComponent, selector: "fd-token", inputs: ["disabled", "selected", "readOnly"], outputs: ["onCloseClick", "onRemove", "onTokenClick", "onTokenKeydown", "elementFocused"] }, { kind: "component", type: UiUlvMainUiComponent, selector: "bsu-ui-ulv-main-ui", inputs: ["context", "isReportPage", "inDialog", "isMultiSelect", "layoutInfo", "fullscreen"] }, { kind: "directive", type: FullscreenDialogDirective, selector: "[fullscreenDialog]", inputs: ["dialog", "dialogComponent", "fullscreen"], outputs: ["fullscreenChanged"] }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
8734
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: UlvFormMultiSelectComponent, selector: "bsu-ulv-form-multi-select", inputs: { Show: "Show" }, viewQueries: [{ propertyName: "dialogContainer", first: true, predicate: ["container"], descendants: true, read: TemplateRef }, { propertyName: "dialogComponent", first: true, predicate: ["dialogTpl"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #container>\r\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\" #dialogTpl>\r\n <fd-dialog-header>\r\n <ng-template fdkTemplate=\"header\">\r\n <div fd-bar-left>\r\n <fd-bar-element>\r\n <h1 id=\"fd-dialog-header-3\" fd-title>{{ dialog.data.title }}</h1>\r\n </fd-bar-element>\r\n </div>\r\n <div fd-bar-right>\r\n @if (!dialogConfig.fullscreen && !dialogConfig.mobile) {\r\n <fd-button-bar\r\n ariaLabel=\"fullscreen\"\r\n [glyph]=\"dialog.data.fullscreen ? 'exitfullscreen' : 'resize'\"\r\n fullscreenDialog\r\n [dialog]=\"dialog\"\r\n [fullscreen]=\"dialog.data.fullscreen\"\r\n (fullscreenChanged)=\"dialog.data.fullscreen = $event\"\r\n [dialogComponent]=\"dialogTpl\"\r\n ></fd-button-bar>\r\n }\r\n <fd-button-bar ariaLabel=\"close\" glyph=\"decline\" (click)=\"onCancel(dialog)\"></fd-button-bar>\r\n </div>\r\n </ng-template>\r\n <!-- <h3 fd-title>{{ dialog.data.title }}</h3>\r\n <button fd-dialog-close-button></button> -->\r\n </fd-dialog-header>\r\n\r\n <fd-dialog-body>\r\n @if (dialog.data.ulv1; as ulv1) {\r\n <bsu-ui-ulv-main-ui\r\n class=\"ulv-form-multi-select\"\r\n [context]=\"ulv1\"\r\n [inDialog]=\"true\"\r\n [isMultiSelect]=\"dialog.data.ShowSecondPanel\"\r\n [fullscreen]=\"dialog.data.fullscreen\"\r\n ></bsu-ui-ulv-main-ui>\r\n }\r\n </fd-dialog-body>\r\n @if (dialog.data.ulv2 && dialog.data.ShowSecondPanel) {\r\n <fd-dialog-footer class=\"ulvSelection\">\r\n <ng-template fdkTemplate=\"footer\">\r\n <div\r\n class=\"ulv-selection-form-dialog__row ulv-selection-form-dialog__selection-row\"\r\n [aria-label]=\"'SelectedItemsAndConditions' | bbbTranslate\"\r\n >\r\n <h5 fd-title class=\"selected-and-condition-title !tw-pb-2\">\r\n <ng-container>\r\n <ng-container>{{ 'SelectedItemsAndConditions' | bbbTranslate }} </ng-container>\r\n ({{ dialog.data.selectedItems?.MoDataList?.length || 0 }})\r\n </ng-container>\r\n </h5>\r\n <div class=\"ulv-selection-form-dialog__tokens-wrapper\">\r\n <div class=\"ulv-selection-form-dialog__tokens\">\r\n @if (dialog.data.selectedItems) {\r\n <fd-toolbar [shouldOverflow]=\"true\">\r\n <!-- Selected items -->\r\n @for ( item of dialog.data.selectedItems.MoDataList; track\r\n _trackBySelectedFn(selectedIndex, item); let selectedIndex = $index) {\r\n <fd-token\r\n fd-toolbar-item\r\n fdOverflowPriority=\"high\"\r\n class=\"fdp-value-help-dialog__selection-token\"\r\n (onCloseClick)=\"onRemoveSelected(dialog, item)\"\r\n >{{ item.$Caption }}\r\n </fd-token>\r\n }\r\n </fd-toolbar>\r\n }\r\n </div>\r\n <button\r\n class=\"ulv-selection-form-dialog__tokens-clear\"\r\n fd-button\r\n fdType=\"transparent\"\r\n glyph=\"decline\"\r\n [aria-label]=\"'Clear' | bbbTranslate\"\r\n (click)=\"onClear(dialog)\"\r\n ></button>\r\n </div>\r\n </div>\r\n </ng-template>\r\n </fd-dialog-footer>\r\n } @if (dialog.data.ulv1 && !dialog.data.ulv1?.HideOkCancelButtons) {\r\n <fd-dialog-footer>\r\n <ng-template fdkTemplate=\"footer\">\r\n @if (dialog.data.adapter?.ShowOkCancelButtons !== false) {\r\n <div class=\"fd-bar__right\">\r\n <button\r\n fd-button\r\n data-succes\r\n [label]=\"'OK' | bbbTranslate\"\r\n fdType=\"emphasized\"\r\n (click)=\"onOk(dialog)\"\r\n ></button>\r\n <button\r\n fd-button\r\n data-dismiss-dialog\r\n fd-dialog-decisive-button\r\n [label]=\"'Cancel' | bbbTranslate\"\r\n [fdType]=\"'transparent'\"\r\n (click)=\"onCancel(dialog)\"\r\n ></button>\r\n </div>\r\n }\r\n </ng-template>\r\n </fd-dialog-footer>\r\n }\r\n </fd-dialog>\r\n</ng-template>\r\n", styles: [".ulv-selection-form-dialog{cursor:default}.ulv-selection-form-dialog .fd-dialog__body bsu-ui-table-view{overflow-x:inherit!important}.ulv-selection-form-dialog__advanced-filters{padding-top:1rem}.ulv-selection-form-dialog__advanced-filters label{height:auto}.ulv-selection-form-dialog__toggle-filters{display:flex;justify-content:flex-end;align-items:flex-end}.ulv-selection-form-dialog__toggle-filters .fd-button{margin-bottom:.25rem}.ulv-selection-form-dialog__advanced-actions{display:flex;align-items:center;justify-content:flex-end}.ulv-selection-form-dialog-mobile .ulv-selection-form-dialog__advanced-actions{justify-content:flex-start}.ulv-selection-form-dialog__advanced-actions .fd-toolbar{padding:0}.ulv-selection-form-dialog fd-dialog-body{height:100%;display:flex;flex-direction:column}.ulv-selection-form-dialog bsu-ui-ulv-main-ui{height:100%;flex-grow:1}.ulv-selection-form-dialog bsu-ui-ulv-main-ui .viewer-container{height:auto;overflow:auto}.ulv-selection-form-dialog .ulv-selection-form-dialog__row{border-top:.0625rem solid var(--sapPageFooter_BorderColor, #d9d9d9);padding-top:.5rem}.ulv-selection-form-dialog bsu-search-panel{border-bottom:.0625rem solid var(--sapPageFooter_BorderColor, #d9d9d9)}.ulv-selection-form-dialog fd-dialog-footer{height:auto}.ulv-selection-form-dialog fd-dialog-footer.ulvSelection .fd-bar{padding:0!important;height:5rem!important}.ulv-selection-form-dialog fd-dialog-footer.ulvSelection .fd-bar>div{width:100%}.ulv-selection-form-dialog__content-holder{padding:0 2rem 1rem;display:flex;flex-direction:column;height:100%;width:100%;overflow:hidden}.ulv-selection-form-dialog__row{padding:0 1rem}.ulv-selection-form-dialog__row.ulv-selection-form-dialog__selection-row{background-color:#f7f7f7;background-color:var(--sapBackgroundColor, #f7f7f7)}.ulv-selection-form-dialog__tokens-wrapper{display:flex}.ulv-selection-form-dialog__tokens{display:flex;flex:1 1 auto;overflow:hidden;align-items:center;border:1px solid #89919a;border-color:var(--sapContent_ForegroundBorderColor, #89919a);border-radius:.25rem;border-radius:var(--sapElement_BorderCornerRadius, .25rem);background:none}.ulv-selection-form-dialog__tokens fd-toolbar{flex:1 1 auto;overflow:hidden}.ulv-selection-form-dialog__tokens-clear{height:auto;min-width:2rem;padding:.125rem 0;justify-content:center}.ulv-selection-form-dialog__actions-row{padding:.5rem 0;display:flex;align-items:center;justify-content:flex-end;border-top:.0625rem solid #d9d9d9;border-top:.0625rem solid var(--sapPageFooter_BorderColor, #d9d9d9)}.ulv-selection-form-dialog__actions-row .fd-button{margin-left:.5rem}.ulv-selection-form-dialog__tokens-wrapper{align-items:center}\n"], dependencies: [{ kind: "directive", type: i3$1.BarLeftDirective, selector: "[fd-bar-left]" }, { kind: "directive", type: i3$1.BarRightDirective, selector: "[fd-bar-right]" }, { kind: "directive", type: i3$1.BarElementDirective, selector: "fd-bar-element", inputs: ["fullWidth"] }, { kind: "component", type: i3$1.ButtonBarComponent, selector: "fd-button-bar", inputs: ["fullWidth", "fdType", "title", "ariaLabelledby", "id"] }, { 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$1.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i4$1.DialogBodyComponent, selector: "fd-dialog-body", inputs: ["disablePaddings"] }, { kind: "component", type: i4$1.DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: i4$1.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "directive", type: i6$1.TemplateDirective, selector: "[fdkTemplate]", inputs: ["fdkTemplate"] }, { kind: "component", type: i7$1.TitleComponent, selector: "[fd-title], [fdTitle]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "component", type: i8.ToolbarComponent, selector: "fd-toolbar", inputs: ["titleId", "class", "shouldOverflow", "fdType", "title", "active", "clearBorder", "forceOverflow", "tabindex", "headingLevel", "ariaLabel", "ariaLabelledBy"] }, { kind: "directive", type: i8.ToolbarItemDirective, selector: "[fd-toolbar-item], [fdOverflowGroup], [fdOverflowPriority]", inputs: ["fdOverflowPriority", "fdOverflowGroup"] }, { kind: "component", type: i7$6.TokenComponent, selector: "fd-token", inputs: ["disabled", "selected", "readOnly"], outputs: ["onCloseClick", "onRemove", "onTokenClick", "onTokenKeydown", "elementFocused"] }, { kind: "component", type: UiUlvMainUiComponent, selector: "bsu-ui-ulv-main-ui", inputs: ["context", "isReportPage", "inDialog", "isMultiSelect", "layoutInfo", "fullscreen"] }, { kind: "directive", type: FullscreenDialogDirective, selector: "[fullscreenDialog]", inputs: ["dialog", "dialogComponent", "fullscreen"], outputs: ["fullscreenChanged"] }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
8728
8735
|
}
|
|
8729
8736
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UlvFormMultiSelectComponent, decorators: [{
|
|
8730
8737
|
type: Component,
|
|
8731
|
-
args: [{ selector: 'bsu-ulv-form-multi-select', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #container>\r\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\" #dialogTpl>\r\n <fd-dialog-header>\r\n <ng-template fdkTemplate=\"header\">\r\n <div fd-bar-left>\r\n <fd-bar-element>\r\n <h1 id=\"fd-dialog-header-3\" fd-title>{{ dialog.data.title }}</h1>\r\n </fd-bar-element>\r\n </div>\r\n <div fd-bar-right>\r\n @if (!dialogConfig.fullscreen && !dialogConfig.mobile) {\r\n <fd-button-bar\r\n ariaLabel=\"fullscreen\"\r\n [glyph]=\"dialog.data.fullscreen ? 'exitfullscreen' : 'resize'\"\r\n fullscreenDialog\r\n [dialog]=\"dialog\"\r\n [fullscreen]=\"dialog.data.fullscreen\"\r\n (fullscreenChanged)=\"dialog.data.fullscreen = $event\"\r\n [dialogComponent]=\"dialogTpl\"\r\n ></fd-button-bar>\r\n }\r\n <fd-button-bar ariaLabel=\"close\" glyph=\"decline\" (click)=\"onCancel(dialog)\"></fd-button-bar>\r\n </div>\r\n </ng-template>\r\n <!-- <h3 fd-title>{{ dialog.data.title }}</h3>\r\n <button fd-dialog-close-button></button> -->\r\n </fd-dialog-header>\r\n\r\n <fd-dialog-body>\r\n @if (dialog.data.ulv1; as ulv1) {\r\n <bsu-ui-ulv-main-ui\r\n class=\"ulv-form-multi-select\"\r\n [context]=\"ulv1\"\r\n [inDialog]=\"true\"\r\n [isMultiSelect]=\"dialog.data.ShowSecondPanel\"\r\n [fullscreen]=\"dialog.data.fullscreen\"\r\n ></bsu-ui-ulv-main-ui>\r\n }\r\n </fd-dialog-body>\r\n @if (dialog.data.ulv2 && dialog.data.ShowSecondPanel) {\r\n <fd-dialog-footer class=\"ulvSelection\">\r\n <ng-template fdkTemplate=\"footer\">\r\n <div\r\n class=\"ulv-selection-form-dialog__row ulv-selection-form-dialog__selection-row\"\r\n [aria-label]=\"'SelectedItemsAndConditions' | bbbTranslate\"\r\n >\r\n <h5 fd-title class=\"selected-and-condition-title !tw-pb-2\">\r\n <ng-container>\r\n <ng-container>{{ 'SelectedItemsAndConditions' | bbbTranslate }} </ng-container>\r\n ({{ dialog.data.selectedItems?.MoDataList?.length || 0 }})\r\n </ng-container>\r\n </h5>\r\n <div class=\"ulv-selection-form-dialog__tokens-wrapper\">\r\n <div class=\"ulv-selection-form-dialog__tokens\">\r\n @if (dialog.data.selectedItems) {\r\n <fd-toolbar [shouldOverflow]=\"true\">\r\n <!-- Selected items -->\r\n @for ( item of dialog.data.selectedItems.MoDataList; track\r\n _trackBySelectedFn(selectedIndex, item); let selectedIndex = $index) {\r\n <fd-token\r\n fd-toolbar-item\r\n fdOverflowPriority=\"high\"\r\n class=\"fdp-value-help-dialog__selection-token\"\r\n (onCloseClick)=\"onRemoveSelected(dialog, item)\"\r\n >{{ item.$Caption }}\r\n </fd-token>\r\n }\r\n </fd-toolbar>\r\n }\r\n </div>\r\n <button\r\n class=\"ulv-selection-form-dialog__tokens-clear\"\r\n fd-button\r\n fdType=\"transparent\"\r\n glyph=\"decline\"\r\n [aria-label]=\"'Clear' | bbbTranslate\"\r\n (click)=\"onClear(dialog)\"\r\n ></button>\r\n </div>\r\n </div>\r\n </ng-template>\r\n </fd-dialog-footer>\r\n } @if (dialog.data.ulv1 && !dialog.data.ulv1?.HideOkCancelButtons) {\r\n <fd-dialog-footer>\r\n <ng-template fdkTemplate=\"footer\">\r\n @if (dialog.data.adapter?.ShowOkCancelButtons !== false) {\r\n <div class=\"fd-bar__right\">\r\n <button\r\n fd-button\r\n data-succes\r\n [label]=\"'OK' | bbbTranslate\"\r\n fdType=\"emphasized\"\r\n (click)=\"onOk(dialog)\"\r\n ></button>\r\n <button\r\n fd-button\r\n data-dismiss-dialog\r\n fd-dialog-decisive-button\r\n [label]=\"'Cancel' | bbbTranslate\"\r\n [fdType]=\"'transparent'\"\r\n (click)=\"onCancel(dialog)\"\r\n ></button>\r\n </div>\r\n }\r\n </ng-template>\r\n </fd-dialog-footer>\r\n }\r\n </fd-dialog>\r\n</ng-template>\r\n", styles: [".ulv-selection-form-dialog{cursor:default}.ulv-selection-form-dialog .fd-dialog__body bsu-ui-table-view{overflow-x:inherit!important}.ulv-selection-form-dialog__advanced-filters{padding-top:1rem}.ulv-selection-form-dialog__advanced-filters label{height:auto}.ulv-selection-form-dialog__toggle-filters{display:flex;justify-content:flex-end;align-items:flex-end}.ulv-selection-form-dialog__toggle-filters .fd-button{margin-bottom:.25rem}.ulv-selection-form-dialog__advanced-actions{display:flex;align-items:center;justify-content:flex-end}.ulv-selection-form-dialog-mobile .ulv-selection-form-dialog__advanced-actions{justify-content:flex-start}.ulv-selection-form-dialog__advanced-actions .fd-toolbar{padding:0}.ulv-selection-form-dialog fd-dialog-body{height:100%;display:flex;flex-direction:column}.ulv-selection-form-dialog bsu-ui-ulv-main-ui{height:100%;flex-grow:1}.ulv-selection-form-dialog bsu-ui-ulv-main-ui .viewer-container{height:auto;overflow:auto}.ulv-selection-form-dialog .ulv-selection-form-dialog__row{border-top:.0625rem solid var(--sapPageFooter_BorderColor, #d9d9d9);padding-top
|
|
8738
|
+
args: [{ selector: 'bsu-ulv-form-multi-select', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #container>\r\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\" #dialogTpl>\r\n <fd-dialog-header>\r\n <ng-template fdkTemplate=\"header\">\r\n <div fd-bar-left>\r\n <fd-bar-element>\r\n <h1 id=\"fd-dialog-header-3\" fd-title>{{ dialog.data.title }}</h1>\r\n </fd-bar-element>\r\n </div>\r\n <div fd-bar-right>\r\n @if (!dialogConfig.fullscreen && !dialogConfig.mobile) {\r\n <fd-button-bar\r\n ariaLabel=\"fullscreen\"\r\n [glyph]=\"dialog.data.fullscreen ? 'exitfullscreen' : 'resize'\"\r\n fullscreenDialog\r\n [dialog]=\"dialog\"\r\n [fullscreen]=\"dialog.data.fullscreen\"\r\n (fullscreenChanged)=\"dialog.data.fullscreen = $event\"\r\n [dialogComponent]=\"dialogTpl\"\r\n ></fd-button-bar>\r\n }\r\n <fd-button-bar ariaLabel=\"close\" glyph=\"decline\" (click)=\"onCancel(dialog)\"></fd-button-bar>\r\n </div>\r\n </ng-template>\r\n <!-- <h3 fd-title>{{ dialog.data.title }}</h3>\r\n <button fd-dialog-close-button></button> -->\r\n </fd-dialog-header>\r\n\r\n <fd-dialog-body>\r\n @if (dialog.data.ulv1; as ulv1) {\r\n <bsu-ui-ulv-main-ui\r\n class=\"ulv-form-multi-select\"\r\n [context]=\"ulv1\"\r\n [inDialog]=\"true\"\r\n [isMultiSelect]=\"dialog.data.ShowSecondPanel\"\r\n [fullscreen]=\"dialog.data.fullscreen\"\r\n ></bsu-ui-ulv-main-ui>\r\n }\r\n </fd-dialog-body>\r\n @if (dialog.data.ulv2 && dialog.data.ShowSecondPanel) {\r\n <fd-dialog-footer class=\"ulvSelection\">\r\n <ng-template fdkTemplate=\"footer\">\r\n <div\r\n class=\"ulv-selection-form-dialog__row ulv-selection-form-dialog__selection-row\"\r\n [aria-label]=\"'SelectedItemsAndConditions' | bbbTranslate\"\r\n >\r\n <h5 fd-title class=\"selected-and-condition-title !tw-pb-2\">\r\n <ng-container>\r\n <ng-container>{{ 'SelectedItemsAndConditions' | bbbTranslate }} </ng-container>\r\n ({{ dialog.data.selectedItems?.MoDataList?.length || 0 }})\r\n </ng-container>\r\n </h5>\r\n <div class=\"ulv-selection-form-dialog__tokens-wrapper\">\r\n <div class=\"ulv-selection-form-dialog__tokens\">\r\n @if (dialog.data.selectedItems) {\r\n <fd-toolbar [shouldOverflow]=\"true\">\r\n <!-- Selected items -->\r\n @for ( item of dialog.data.selectedItems.MoDataList; track\r\n _trackBySelectedFn(selectedIndex, item); let selectedIndex = $index) {\r\n <fd-token\r\n fd-toolbar-item\r\n fdOverflowPriority=\"high\"\r\n class=\"fdp-value-help-dialog__selection-token\"\r\n (onCloseClick)=\"onRemoveSelected(dialog, item)\"\r\n >{{ item.$Caption }}\r\n </fd-token>\r\n }\r\n </fd-toolbar>\r\n }\r\n </div>\r\n <button\r\n class=\"ulv-selection-form-dialog__tokens-clear\"\r\n fd-button\r\n fdType=\"transparent\"\r\n glyph=\"decline\"\r\n [aria-label]=\"'Clear' | bbbTranslate\"\r\n (click)=\"onClear(dialog)\"\r\n ></button>\r\n </div>\r\n </div>\r\n </ng-template>\r\n </fd-dialog-footer>\r\n } @if (dialog.data.ulv1 && !dialog.data.ulv1?.HideOkCancelButtons) {\r\n <fd-dialog-footer>\r\n <ng-template fdkTemplate=\"footer\">\r\n @if (dialog.data.adapter?.ShowOkCancelButtons !== false) {\r\n <div class=\"fd-bar__right\">\r\n <button\r\n fd-button\r\n data-succes\r\n [label]=\"'OK' | bbbTranslate\"\r\n fdType=\"emphasized\"\r\n (click)=\"onOk(dialog)\"\r\n ></button>\r\n <button\r\n fd-button\r\n data-dismiss-dialog\r\n fd-dialog-decisive-button\r\n [label]=\"'Cancel' | bbbTranslate\"\r\n [fdType]=\"'transparent'\"\r\n (click)=\"onCancel(dialog)\"\r\n ></button>\r\n </div>\r\n }\r\n </ng-template>\r\n </fd-dialog-footer>\r\n }\r\n </fd-dialog>\r\n</ng-template>\r\n", styles: [".ulv-selection-form-dialog{cursor:default}.ulv-selection-form-dialog .fd-dialog__body bsu-ui-table-view{overflow-x:inherit!important}.ulv-selection-form-dialog__advanced-filters{padding-top:1rem}.ulv-selection-form-dialog__advanced-filters label{height:auto}.ulv-selection-form-dialog__toggle-filters{display:flex;justify-content:flex-end;align-items:flex-end}.ulv-selection-form-dialog__toggle-filters .fd-button{margin-bottom:.25rem}.ulv-selection-form-dialog__advanced-actions{display:flex;align-items:center;justify-content:flex-end}.ulv-selection-form-dialog-mobile .ulv-selection-form-dialog__advanced-actions{justify-content:flex-start}.ulv-selection-form-dialog__advanced-actions .fd-toolbar{padding:0}.ulv-selection-form-dialog fd-dialog-body{height:100%;display:flex;flex-direction:column}.ulv-selection-form-dialog bsu-ui-ulv-main-ui{height:100%;flex-grow:1}.ulv-selection-form-dialog bsu-ui-ulv-main-ui .viewer-container{height:auto;overflow:auto}.ulv-selection-form-dialog .ulv-selection-form-dialog__row{border-top:.0625rem solid var(--sapPageFooter_BorderColor, #d9d9d9);padding-top:.5rem}.ulv-selection-form-dialog bsu-search-panel{border-bottom:.0625rem solid var(--sapPageFooter_BorderColor, #d9d9d9)}.ulv-selection-form-dialog fd-dialog-footer{height:auto}.ulv-selection-form-dialog fd-dialog-footer.ulvSelection .fd-bar{padding:0!important;height:5rem!important}.ulv-selection-form-dialog fd-dialog-footer.ulvSelection .fd-bar>div{width:100%}.ulv-selection-form-dialog__content-holder{padding:0 2rem 1rem;display:flex;flex-direction:column;height:100%;width:100%;overflow:hidden}.ulv-selection-form-dialog__row{padding:0 1rem}.ulv-selection-form-dialog__row.ulv-selection-form-dialog__selection-row{background-color:#f7f7f7;background-color:var(--sapBackgroundColor, #f7f7f7)}.ulv-selection-form-dialog__tokens-wrapper{display:flex}.ulv-selection-form-dialog__tokens{display:flex;flex:1 1 auto;overflow:hidden;align-items:center;border:1px solid #89919a;border-color:var(--sapContent_ForegroundBorderColor, #89919a);border-radius:.25rem;border-radius:var(--sapElement_BorderCornerRadius, .25rem);background:none}.ulv-selection-form-dialog__tokens fd-toolbar{flex:1 1 auto;overflow:hidden}.ulv-selection-form-dialog__tokens-clear{height:auto;min-width:2rem;padding:.125rem 0;justify-content:center}.ulv-selection-form-dialog__actions-row{padding:.5rem 0;display:flex;align-items:center;justify-content:flex-end;border-top:.0625rem solid #d9d9d9;border-top:.0625rem solid var(--sapPageFooter_BorderColor, #d9d9d9)}.ulv-selection-form-dialog__actions-row .fd-button{margin-left:.5rem}.ulv-selection-form-dialog__tokens-wrapper{align-items:center}\n"] }]
|
|
8732
8739
|
}], ctorParameters: () => [{ type: i1.DialogService }, { type: i2.BbbTranslatePipe }, { type: i2.PortalService }, { type: i1.ContentDensityService }], propDecorators: { dialogContainer: [{
|
|
8733
8740
|
type: ViewChild,
|
|
8734
8741
|
args: ['container', { read: TemplateRef }]
|
|
@@ -9494,11 +9501,11 @@ class UiLinearListContainerWithButtonComponent extends DeviceInfoFieldBaseCompon
|
|
|
9494
9501
|
}
|
|
9495
9502
|
}
|
|
9496
9503
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiLinearListContainerWithButtonComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
9497
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: UiLinearListContainerWithButtonComponent, selector: "bsu-ui-linear-list-container-with-button", inputs: { UlvUi: "UlvUi", GetTextItemValue: "GetTextItemValue", show: "show", hide: "hide", hidden: "hidden", GetSelectionData: "GetSelectionData" }, host: { listeners: { "keydown.enter": "onKeyEnter($event)", "keydown.arrowdown": "onKeyDown($event)", "keydown.esc": "onKeyEsc($event)" } }, viewQueries: [{ propertyName: "multiInputComponent", first: true, predicate: MultiInputComponent, descendants: true, static: true }, { propertyName: "dialogContainer", first: true, predicate: ["container"], descendants: true, read: TemplateRef }], usesInheritance: true, ngImport: i0, template: "<fd-multi-input\r\n [inputId]=\"id\"\r\n intersectionObserver\r\n [intersectionThreshold]=\"0.1\"\r\n (visibilityChange)=\"onVisibilityChange($event)\"\r\n [class.control-readonly]=\"(readonly$ | async) === true\"\r\n [dropdownValues]=\"(dropDownValues$ | async)!!\"\r\n [placeholder]=\"Setting.ControlFieldCaptionTranslated | bbbTranslate\"\r\n [displayFn]=\"displayFunc\"\r\n [showAllButton]=\"false\"\r\n [displayAddonButton]=\"(disableOrReadonly$ | async) !== true\"\r\n [allowNewTokens]=\"false\"\r\n [includes]=\"true\"\r\n [(ngModel)]=\"idsOfMo\"\r\n [disabled]=\"(disable$ | async) === true\"\r\n [valueFn]=\"valueFn\"\r\n (searchTermChange)=\"onSearchTermChange($event)\"\r\n (selectedChange)=\"onSelectedChange($event)\"\r\n (addOnButtonClicked)=\"_handleAddonButtonClicked()\"\r\n></fd-multi-input>\r\n\r\n<!-- <button\r\n*ngIf=\"report\"\r\nfd-button\r\n[attr.rtl]=\"rtl\"\r\n[aria-label]=\"'Advanced' | bbbTranslate\"\r\nglyph=\"value-help\"\r\n[disabled]=\"(disableOrReadonly$ | async)!!\"\r\n(click)=\"onOpenReport()\"\r\n></button> -->\r\n\r\n<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #container>\r\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\" #dialogTpl>\r\n <fd-dialog-header>\r\n <ng-template fdkTemplate=\"header\">\r\n <div fd-bar-left>\r\n <fd-bar-element>\r\n <h1 id=\"fd-dialog-header-3\" fd-title>{{ dialog.data.title }}</h1>\r\n </fd-bar-element>\r\n </div>\r\n <div fd-bar-right>\r\n @if (dialogConfig.height !== '100vh') {\r\n <fd-button-bar\r\n ariaLabel=\"fullscreen\"\r\n [glyph]=\"dialog.data.fullscreen ? 'exitfullscreen' : 'resize'\"\r\n fullscreenDialog\r\n [fullscreen]=\"dialog.data.fullscreen\"\r\n (fullscreenChanged)=\"dialog.data.fullscreen = $event\"\r\n [dialog]=\"dialog\"\r\n [dialogComponent]=\"dialogTpl\"\r\n ></fd-button-bar>\r\n }\r\n <fd-button-bar ariaLabel=\"close\" glyph=\"decline\" (click)=\"onDismiss()\"></fd-button-bar>\r\n </div>\r\n </ng-template>\r\n <!-- <h3 fd-title>{{ dialog.data.title }}</h3>\r\n <button fd-dialog-close-button></button> -->\r\n </fd-dialog-header>\r\n <fd-dialog-body>\r\n @if (dialog.data.ulvUi; as ulvUi) {\r\n <bsu-ui-ulv-main-ui [context]=\"ulvUi\" class=\"linear-list-selection\"></bsu-ui-ulv-main-ui>\r\n\r\n }\r\n <div\r\n class=\"ulv-selection-form-dialog__row ulv-selection-form-dialog__selection-row\"\r\n [aria-label]=\"'SelectedItemsAndConditions' | bbbTranslate\"\r\n >\r\n <h5 fd-title class=\"selected-and-condition-title\">\r\n <ng-container>\r\n <ng-container>{{ 'SelectedItemsAndConditions' | bbbTranslate }} </ng-container>\r\n ({{ dialog.data.selectedItems?.length || 0 }})\r\n </ng-container>\r\n </h5>\r\n <div class=\"ulv-selection-form-dialog__tokens-wrapper\">\r\n <div class=\"ulv-selection-form-dialog__tokens\">\r\n @if (dialog.data.selectedItems) {\r\n <fd-toolbar>\r\n <!-- Selected items -->\r\n @for ( item of dialog.data.selectedItems; track _trackBySelectedFn(selectedIndex, item); let\r\n selectedIndex = $index) {\r\n <fd-token\r\n fd-toolbar-item\r\n fdOverflowPriority=\"high\"\r\n class=\"fdp-value-help-dialog__selection-token\"\r\n (onCloseClick)=\"onRemoveSelected(item)\"\r\n >{{ item.Text }}\r\n </fd-token>\r\n }\r\n </fd-toolbar>\r\n }\r\n </div>\r\n <button\r\n class=\"ulv-selection-form-dialog__tokens-clear\"\r\n fd-button\r\n fdType=\"transparent\"\r\n glyph=\"decline\"\r\n [aria-label]=\"'Clear' | bbbTranslate\"\r\n (click)=\"onClear()\"\r\n ></button>\r\n </div>\r\n </div>\r\n </fd-dialog-body>\r\n\r\n <fd-dialog-footer>\r\n <ng-template fdkTemplate=\"footer\">\r\n <div class=\"fd-bar__right\">\r\n <button\r\n fd-button\r\n data-succes\r\n [label]=\"'OK' | bbbTranslate\"\r\n fdType=\"emphasized\"\r\n (click)=\"onOk()\"\r\n ></button>\r\n <button\r\n fd-button\r\n data-dismiss-dialog\r\n fd-dialog-decisive-button\r\n [label]=\"'Cancel' | bbbTranslate\"\r\n fdType=\"transparent\"\r\n (click)=\"onDismiss()\"\r\n ></button>\r\n </div>\r\n </ng-template>\r\n </fd-dialog-footer>\r\n </fd-dialog>\r\n</ng-template>\r\n", styles: [":host{display:flex;align-items:center}:host ::ng-deep fd-multi-input .fd-input-group{cursor:default}fd-multi-input{flex-grow:1}button[rtl=true]{margin-right:5px}button[rtl=false]{margin-left:5px}::ng-deep .fd-toolbar{display:flex;flex-wrap:wrap;row-gap:5px}\n"], dependencies: [{ 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: "directive", type: i2.IntersectionObserverDirective, selector: "[intersectionObserver]", inputs: ["intersectionDebounce", "intersectionRootMargin", "intersectionRoot", "intersectionThreshold"], outputs: ["visibilityChange"] }, { kind: "directive", type: i3$1.BarLeftDirective, selector: "[fd-bar-left]" }, { kind: "directive", type: i3$1.BarRightDirective, selector: "[fd-bar-right]" }, { kind: "directive", type: i3$1.BarElementDirective, selector: "fd-bar-element", inputs: ["fullWidth"] }, { kind: "component", type: i3$1.ButtonBarComponent, selector: "fd-button-bar", inputs: ["fullWidth", "fdType", "title", "ariaLabelledby", "id"] }, { 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$1.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i4$1.DialogBodyComponent, selector: "fd-dialog-body", inputs: ["disablePaddings"] }, { kind: "component", type: i4$1.DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: i4$1.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "directive", type: i6$1.TemplateDirective, selector: "[fdkTemplate]", inputs: ["fdkTemplate"] }, { kind: "component", type: i7$1.TitleComponent, selector: "[fd-title], [fdTitle]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "component", type: i8$2.MultiInputComponent, selector: "fd-multi-input", inputs: ["placeholder", "disabled", "required", "compactCollapse", "maxHeight", "glyph", "glyphFont", "dropdownValues", "openDropdownOnAddOnClicked", "addonIconTitle", "searchTerm", "inputId", "highlight", "selected", "class", "filterFn", "valueFn", "displayFn", "newTokenParseFn", "optionItemIdentifier", "newTokenValidateFn", "ariaLabel", "ariaLabelledBy", "fillControlMode", "state", "buttonFocusable", "allowNewTokens", "mobile", "showAllButton", "bodyMaxWidth", "mobileConfig", "includes", "itemTemplate", "title", "byline", "autoComplete", "open", "displayAddonButton", "addOnButtonAriaLabel", "tokenHiddenId"], outputs: ["searchTermChange", "selectedChange", "openChange", "addOnButtonClicked", "allItemsSelectedChange"] }, { kind: "component", type: i8.ToolbarComponent, selector: "fd-toolbar", inputs: ["titleId", "class", "shouldOverflow", "fdType", "title", "active", "clearBorder", "forceOverflow", "tabindex", "headingLevel", "ariaLabel", "ariaLabelledBy"] }, { kind: "directive", type: i8.ToolbarItemDirective, selector: "[fd-toolbar-item], [fdOverflowGroup], [fdOverflowPriority]", inputs: ["fdOverflowPriority", "fdOverflowGroup"] }, { kind: "component", type: i7$6.TokenComponent, selector: "fd-token", inputs: ["disabled", "selected", "readOnly"], outputs: ["onCloseClick", "onRemove", "onTokenClick", "onTokenKeydown", "elementFocused"] }, { kind: "component", type: UiUlvMainUiComponent, selector: "bsu-ui-ulv-main-ui", inputs: ["context", "isReportPage", "inDialog", "isMultiSelect", "layoutInfo", "fullscreen"] }, { kind: "directive", type: FullscreenDialogDirective, selector: "[fullscreenDialog]", inputs: ["dialog", "dialogComponent", "fullscreen"], outputs: ["fullscreenChanged"] }, { kind: "pipe", type: i1$2.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
9504
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: UiLinearListContainerWithButtonComponent, selector: "bsu-ui-linear-list-container-with-button", inputs: { UlvUi: "UlvUi", GetTextItemValue: "GetTextItemValue", show: "show", hide: "hide", hidden: "hidden", GetSelectionData: "GetSelectionData" }, host: { listeners: { "keydown.enter": "onKeyEnter($event)", "keydown.arrowdown": "onKeyDown($event)", "keydown.esc": "onKeyEsc($event)" } }, viewQueries: [{ propertyName: "multiInputComponent", first: true, predicate: MultiInputComponent, descendants: true, static: true }, { propertyName: "dialogContainer", first: true, predicate: ["container"], descendants: true, read: TemplateRef }], usesInheritance: true, ngImport: i0, template: "<fd-multi-input\r\n [inputId]=\"id\"\r\n intersectionObserver\r\n [intersectionThreshold]=\"0.1\"\r\n (visibilityChange)=\"onVisibilityChange($event)\"\r\n [class.control-readonly]=\"(readonly$ | async) === true\"\r\n [dropdownValues]=\"(dropDownValues$ | async)!!\"\r\n [placeholder]=\"Setting.ControlFieldCaptionTranslated | bbbTranslate\"\r\n [displayFn]=\"displayFunc\"\r\n [showAllButton]=\"false\"\r\n [displayAddonButton]=\"(disableOrReadonly$ | async) !== true\"\r\n [allowNewTokens]=\"false\"\r\n [includes]=\"true\"\r\n [(ngModel)]=\"idsOfMo\"\r\n [disabled]=\"(disable$ | async) === true\"\r\n [valueFn]=\"valueFn\"\r\n (searchTermChange)=\"onSearchTermChange($event)\"\r\n (selectedChange)=\"onSelectedChange($event)\"\r\n (addOnButtonClicked)=\"_handleAddonButtonClicked()\"\r\n></fd-multi-input>\r\n\r\n<!-- <button\r\n*ngIf=\"report\"\r\nfd-button\r\n[attr.rtl]=\"rtl\"\r\n[aria-label]=\"'Advanced' | bbbTranslate\"\r\nglyph=\"value-help\"\r\n[disabled]=\"(disableOrReadonly$ | async)!!\"\r\n(click)=\"onOpenReport()\"\r\n></button> -->\r\n\r\n<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #container>\r\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\" #dialogTpl>\r\n <fd-dialog-header>\r\n <ng-template fdkTemplate=\"header\">\r\n <div fd-bar-left>\r\n <fd-bar-element>\r\n <h1 id=\"fd-dialog-header-3\" fd-title>{{ dialog.data.title }}</h1>\r\n </fd-bar-element>\r\n </div>\r\n <div fd-bar-right>\r\n @if (dialogConfig.height !== '100vh') {\r\n <fd-button-bar\r\n ariaLabel=\"fullscreen\"\r\n [glyph]=\"dialog.data.fullscreen ? 'exitfullscreen' : 'resize'\"\r\n fullscreenDialog\r\n [fullscreen]=\"dialog.data.fullscreen\"\r\n (fullscreenChanged)=\"dialog.data.fullscreen = $event\"\r\n [dialog]=\"dialog\"\r\n [dialogComponent]=\"dialogTpl\"\r\n ></fd-button-bar>\r\n }\r\n <fd-button-bar ariaLabel=\"close\" glyph=\"decline\" (click)=\"onDismiss()\"></fd-button-bar>\r\n </div>\r\n </ng-template>\r\n <!-- <h3 fd-title>{{ dialog.data.title }}</h3>\r\n <button fd-dialog-close-button></button> -->\r\n </fd-dialog-header>\r\n <fd-dialog-body>\r\n @if (dialog.data.ulvUi; as ulvUi) {\r\n <bsu-ui-ulv-main-ui [context]=\"ulvUi\" class=\"linear-list-selection\"></bsu-ui-ulv-main-ui>\r\n\r\n }\r\n </fd-dialog-body>\r\n\r\n <fd-dialog-footer class=\"ulvSelection\">\r\n <ng-template fdkTemplate=\"footer\">\r\n <div\r\n class=\"ulv-selection-form-dialog__row ulv-selection-form-dialog__selection-row\"\r\n [aria-label]=\"'SelectedItemsAndConditions' | bbbTranslate\"\r\n >\r\n <h5 fd-title class=\"selected-and-condition-title\">\r\n <ng-container>\r\n <ng-container>{{ 'SelectedItemsAndConditions' | bbbTranslate }} </ng-container>\r\n ({{ dialog.data.selectedItems?.length || 0 }})\r\n </ng-container>\r\n </h5>\r\n <div class=\"ulv-selection-form-dialog__tokens-wrapper\">\r\n <div class=\"ulv-selection-form-dialog__tokens\">\r\n @if (dialog.data.selectedItems) {\r\n <fd-toolbar>\r\n <!-- Selected items -->\r\n @for ( item of dialog.data.selectedItems; track _trackBySelectedFn(selectedIndex, item);\r\n let selectedIndex = $index) {\r\n <fd-token\r\n fd-toolbar-item\r\n fdOverflowPriority=\"high\"\r\n class=\"fdp-value-help-dialog__selection-token\"\r\n (onCloseClick)=\"onRemoveSelected(item)\"\r\n >{{ item.Text }}\r\n </fd-token>\r\n }\r\n </fd-toolbar>\r\n }\r\n </div>\r\n <button\r\n class=\"ulv-selection-form-dialog__tokens-clear\"\r\n fd-button\r\n fdType=\"transparent\"\r\n glyph=\"decline\"\r\n [aria-label]=\"'Clear' | bbbTranslate\"\r\n (click)=\"onClear()\"\r\n ></button>\r\n </div>\r\n </div>\r\n </ng-template>\r\n </fd-dialog-footer>\r\n <fd-dialog-footer>\r\n <ng-template fdkTemplate=\"footer\">\r\n <div class=\"fd-bar__right\">\r\n <button\r\n fd-button\r\n data-succes\r\n [label]=\"'OK' | bbbTranslate\"\r\n fdType=\"emphasized\"\r\n (click)=\"onOk()\"\r\n ></button>\r\n <button\r\n fd-button\r\n data-dismiss-dialog\r\n fd-dialog-decisive-button\r\n [label]=\"'Cancel' | bbbTranslate\"\r\n fdType=\"transparent\"\r\n (click)=\"onDismiss()\"\r\n ></button>\r\n </div>\r\n </ng-template>\r\n </fd-dialog-footer>\r\n </fd-dialog>\r\n</ng-template>\r\n", styles: [":host{display:flex;align-items:center}:host ::ng-deep fd-multi-input .fd-input-group{cursor:default}fd-multi-input{flex-grow:1}button[rtl=true]{margin-right:5px}button[rtl=false]{margin-left:5px}::ng-deep .fd-toolbar{display:flex;flex-wrap:wrap;row-gap:5px}\n"], dependencies: [{ 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: "directive", type: i2.IntersectionObserverDirective, selector: "[intersectionObserver]", inputs: ["intersectionDebounce", "intersectionRootMargin", "intersectionRoot", "intersectionThreshold"], outputs: ["visibilityChange"] }, { kind: "directive", type: i3$1.BarLeftDirective, selector: "[fd-bar-left]" }, { kind: "directive", type: i3$1.BarRightDirective, selector: "[fd-bar-right]" }, { kind: "directive", type: i3$1.BarElementDirective, selector: "fd-bar-element", inputs: ["fullWidth"] }, { kind: "component", type: i3$1.ButtonBarComponent, selector: "fd-button-bar", inputs: ["fullWidth", "fdType", "title", "ariaLabelledby", "id"] }, { 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$1.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i4$1.DialogBodyComponent, selector: "fd-dialog-body", inputs: ["disablePaddings"] }, { kind: "component", type: i4$1.DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: i4$1.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "directive", type: i6$1.TemplateDirective, selector: "[fdkTemplate]", inputs: ["fdkTemplate"] }, { kind: "component", type: i7$1.TitleComponent, selector: "[fd-title], [fdTitle]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "component", type: i8$2.MultiInputComponent, selector: "fd-multi-input", inputs: ["placeholder", "disabled", "required", "compactCollapse", "maxHeight", "glyph", "glyphFont", "dropdownValues", "openDropdownOnAddOnClicked", "addonIconTitle", "searchTerm", "inputId", "highlight", "selected", "class", "filterFn", "valueFn", "displayFn", "newTokenParseFn", "optionItemIdentifier", "newTokenValidateFn", "ariaLabel", "ariaLabelledBy", "fillControlMode", "state", "buttonFocusable", "allowNewTokens", "mobile", "showAllButton", "bodyMaxWidth", "mobileConfig", "includes", "itemTemplate", "title", "byline", "autoComplete", "open", "displayAddonButton", "addOnButtonAriaLabel", "tokenHiddenId"], outputs: ["searchTermChange", "selectedChange", "openChange", "addOnButtonClicked", "allItemsSelectedChange"] }, { kind: "component", type: i8.ToolbarComponent, selector: "fd-toolbar", inputs: ["titleId", "class", "shouldOverflow", "fdType", "title", "active", "clearBorder", "forceOverflow", "tabindex", "headingLevel", "ariaLabel", "ariaLabelledBy"] }, { kind: "directive", type: i8.ToolbarItemDirective, selector: "[fd-toolbar-item], [fdOverflowGroup], [fdOverflowPriority]", inputs: ["fdOverflowPriority", "fdOverflowGroup"] }, { kind: "component", type: i7$6.TokenComponent, selector: "fd-token", inputs: ["disabled", "selected", "readOnly"], outputs: ["onCloseClick", "onRemove", "onTokenClick", "onTokenKeydown", "elementFocused"] }, { kind: "component", type: UiUlvMainUiComponent, selector: "bsu-ui-ulv-main-ui", inputs: ["context", "isReportPage", "inDialog", "isMultiSelect", "layoutInfo", "fullscreen"] }, { kind: "directive", type: FullscreenDialogDirective, selector: "[fullscreenDialog]", inputs: ["dialog", "dialogComponent", "fullscreen"], outputs: ["fullscreenChanged"] }, { kind: "pipe", type: i1$2.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
9498
9505
|
}
|
|
9499
9506
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiLinearListContainerWithButtonComponent, decorators: [{
|
|
9500
9507
|
type: Component,
|
|
9501
|
-
args: [{ selector: 'bsu-ui-linear-list-container-with-button', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<fd-multi-input\r\n [inputId]=\"id\"\r\n intersectionObserver\r\n [intersectionThreshold]=\"0.1\"\r\n (visibilityChange)=\"onVisibilityChange($event)\"\r\n [class.control-readonly]=\"(readonly$ | async) === true\"\r\n [dropdownValues]=\"(dropDownValues$ | async)!!\"\r\n [placeholder]=\"Setting.ControlFieldCaptionTranslated | bbbTranslate\"\r\n [displayFn]=\"displayFunc\"\r\n [showAllButton]=\"false\"\r\n [displayAddonButton]=\"(disableOrReadonly$ | async) !== true\"\r\n [allowNewTokens]=\"false\"\r\n [includes]=\"true\"\r\n [(ngModel)]=\"idsOfMo\"\r\n [disabled]=\"(disable$ | async) === true\"\r\n [valueFn]=\"valueFn\"\r\n (searchTermChange)=\"onSearchTermChange($event)\"\r\n (selectedChange)=\"onSelectedChange($event)\"\r\n (addOnButtonClicked)=\"_handleAddonButtonClicked()\"\r\n></fd-multi-input>\r\n\r\n<!-- <button\r\n*ngIf=\"report\"\r\nfd-button\r\n[attr.rtl]=\"rtl\"\r\n[aria-label]=\"'Advanced' | bbbTranslate\"\r\nglyph=\"value-help\"\r\n[disabled]=\"(disableOrReadonly$ | async)!!\"\r\n(click)=\"onOpenReport()\"\r\n></button> -->\r\n\r\n<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #container>\r\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\" #dialogTpl>\r\n <fd-dialog-header>\r\n <ng-template fdkTemplate=\"header\">\r\n <div fd-bar-left>\r\n <fd-bar-element>\r\n <h1 id=\"fd-dialog-header-3\" fd-title>{{ dialog.data.title }}</h1>\r\n </fd-bar-element>\r\n </div>\r\n <div fd-bar-right>\r\n @if (dialogConfig.height !== '100vh') {\r\n <fd-button-bar\r\n ariaLabel=\"fullscreen\"\r\n [glyph]=\"dialog.data.fullscreen ? 'exitfullscreen' : 'resize'\"\r\n fullscreenDialog\r\n [fullscreen]=\"dialog.data.fullscreen\"\r\n (fullscreenChanged)=\"dialog.data.fullscreen = $event\"\r\n [dialog]=\"dialog\"\r\n [dialogComponent]=\"dialogTpl\"\r\n ></fd-button-bar>\r\n }\r\n <fd-button-bar ariaLabel=\"close\" glyph=\"decline\" (click)=\"onDismiss()\"></fd-button-bar>\r\n </div>\r\n </ng-template>\r\n <!-- <h3 fd-title>{{ dialog.data.title }}</h3>\r\n <button fd-dialog-close-button></button> -->\r\n </fd-dialog-header>\r\n <fd-dialog-body>\r\n @if (dialog.data.ulvUi; as ulvUi) {\r\n <bsu-ui-ulv-main-ui [context]=\"ulvUi\" class=\"linear-list-selection\"></bsu-ui-ulv-main-ui>\r\n\r\n }\r\n <div\r\n
|
|
9508
|
+
args: [{ selector: 'bsu-ui-linear-list-container-with-button', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<fd-multi-input\r\n [inputId]=\"id\"\r\n intersectionObserver\r\n [intersectionThreshold]=\"0.1\"\r\n (visibilityChange)=\"onVisibilityChange($event)\"\r\n [class.control-readonly]=\"(readonly$ | async) === true\"\r\n [dropdownValues]=\"(dropDownValues$ | async)!!\"\r\n [placeholder]=\"Setting.ControlFieldCaptionTranslated | bbbTranslate\"\r\n [displayFn]=\"displayFunc\"\r\n [showAllButton]=\"false\"\r\n [displayAddonButton]=\"(disableOrReadonly$ | async) !== true\"\r\n [allowNewTokens]=\"false\"\r\n [includes]=\"true\"\r\n [(ngModel)]=\"idsOfMo\"\r\n [disabled]=\"(disable$ | async) === true\"\r\n [valueFn]=\"valueFn\"\r\n (searchTermChange)=\"onSearchTermChange($event)\"\r\n (selectedChange)=\"onSelectedChange($event)\"\r\n (addOnButtonClicked)=\"_handleAddonButtonClicked()\"\r\n></fd-multi-input>\r\n\r\n<!-- <button\r\n*ngIf=\"report\"\r\nfd-button\r\n[attr.rtl]=\"rtl\"\r\n[aria-label]=\"'Advanced' | bbbTranslate\"\r\nglyph=\"value-help\"\r\n[disabled]=\"(disableOrReadonly$ | async)!!\"\r\n(click)=\"onOpenReport()\"\r\n></button> -->\r\n\r\n<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #container>\r\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\" #dialogTpl>\r\n <fd-dialog-header>\r\n <ng-template fdkTemplate=\"header\">\r\n <div fd-bar-left>\r\n <fd-bar-element>\r\n <h1 id=\"fd-dialog-header-3\" fd-title>{{ dialog.data.title }}</h1>\r\n </fd-bar-element>\r\n </div>\r\n <div fd-bar-right>\r\n @if (dialogConfig.height !== '100vh') {\r\n <fd-button-bar\r\n ariaLabel=\"fullscreen\"\r\n [glyph]=\"dialog.data.fullscreen ? 'exitfullscreen' : 'resize'\"\r\n fullscreenDialog\r\n [fullscreen]=\"dialog.data.fullscreen\"\r\n (fullscreenChanged)=\"dialog.data.fullscreen = $event\"\r\n [dialog]=\"dialog\"\r\n [dialogComponent]=\"dialogTpl\"\r\n ></fd-button-bar>\r\n }\r\n <fd-button-bar ariaLabel=\"close\" glyph=\"decline\" (click)=\"onDismiss()\"></fd-button-bar>\r\n </div>\r\n </ng-template>\r\n <!-- <h3 fd-title>{{ dialog.data.title }}</h3>\r\n <button fd-dialog-close-button></button> -->\r\n </fd-dialog-header>\r\n <fd-dialog-body>\r\n @if (dialog.data.ulvUi; as ulvUi) {\r\n <bsu-ui-ulv-main-ui [context]=\"ulvUi\" class=\"linear-list-selection\"></bsu-ui-ulv-main-ui>\r\n\r\n }\r\n </fd-dialog-body>\r\n\r\n <fd-dialog-footer class=\"ulvSelection\">\r\n <ng-template fdkTemplate=\"footer\">\r\n <div\r\n class=\"ulv-selection-form-dialog__row ulv-selection-form-dialog__selection-row\"\r\n [aria-label]=\"'SelectedItemsAndConditions' | bbbTranslate\"\r\n >\r\n <h5 fd-title class=\"selected-and-condition-title\">\r\n <ng-container>\r\n <ng-container>{{ 'SelectedItemsAndConditions' | bbbTranslate }} </ng-container>\r\n ({{ dialog.data.selectedItems?.length || 0 }})\r\n </ng-container>\r\n </h5>\r\n <div class=\"ulv-selection-form-dialog__tokens-wrapper\">\r\n <div class=\"ulv-selection-form-dialog__tokens\">\r\n @if (dialog.data.selectedItems) {\r\n <fd-toolbar>\r\n <!-- Selected items -->\r\n @for ( item of dialog.data.selectedItems; track _trackBySelectedFn(selectedIndex, item);\r\n let selectedIndex = $index) {\r\n <fd-token\r\n fd-toolbar-item\r\n fdOverflowPriority=\"high\"\r\n class=\"fdp-value-help-dialog__selection-token\"\r\n (onCloseClick)=\"onRemoveSelected(item)\"\r\n >{{ item.Text }}\r\n </fd-token>\r\n }\r\n </fd-toolbar>\r\n }\r\n </div>\r\n <button\r\n class=\"ulv-selection-form-dialog__tokens-clear\"\r\n fd-button\r\n fdType=\"transparent\"\r\n glyph=\"decline\"\r\n [aria-label]=\"'Clear' | bbbTranslate\"\r\n (click)=\"onClear()\"\r\n ></button>\r\n </div>\r\n </div>\r\n </ng-template>\r\n </fd-dialog-footer>\r\n <fd-dialog-footer>\r\n <ng-template fdkTemplate=\"footer\">\r\n <div class=\"fd-bar__right\">\r\n <button\r\n fd-button\r\n data-succes\r\n [label]=\"'OK' | bbbTranslate\"\r\n fdType=\"emphasized\"\r\n (click)=\"onOk()\"\r\n ></button>\r\n <button\r\n fd-button\r\n data-dismiss-dialog\r\n fd-dialog-decisive-button\r\n [label]=\"'Cancel' | bbbTranslate\"\r\n fdType=\"transparent\"\r\n (click)=\"onDismiss()\"\r\n ></button>\r\n </div>\r\n </ng-template>\r\n </fd-dialog-footer>\r\n </fd-dialog>\r\n</ng-template>\r\n", styles: [":host{display:flex;align-items:center}:host ::ng-deep fd-multi-input .fd-input-group{cursor:default}fd-multi-input{flex-grow:1}button[rtl=true]{margin-right:5px}button[rtl=false]{margin-left:5px}::ng-deep .fd-toolbar{display:flex;flex-wrap:wrap;row-gap:5px}\n"] }]
|
|
9502
9509
|
}], propDecorators: { multiInputComponent: [{
|
|
9503
9510
|
type: ViewChild,
|
|
9504
9511
|
args: [MultiInputComponent, { static: true }]
|
|
@@ -15297,11 +15304,11 @@ class UiBpmnViewerComponent extends SapUiReportBaseComponent {
|
|
|
15297
15304
|
});
|
|
15298
15305
|
}
|
|
15299
15306
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiBpmnViewerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
15300
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: UiBpmnViewerComponent, selector: "bsu-ui-bpmn-viewer", inputs: { isReportPage: "isReportPage", layoutInfo: "layoutInfo" }, viewQueries: [{ propertyName: "fillEmptySpace", first: true, predicate: ["fillEmptySpace"], descendants: true }], usesInheritance: true, ngImport: i0, template: "", styles: [":host{display:block;width:100%;height:100%}:host ::ng-deep input,:host ::ng-deep svg text{font-family:
|
|
15307
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: UiBpmnViewerComponent, selector: "bsu-ui-bpmn-viewer", inputs: { isReportPage: "isReportPage", layoutInfo: "layoutInfo" }, viewQueries: [{ propertyName: "fillEmptySpace", first: true, predicate: ["fillEmptySpace"], descendants: true }], usesInheritance: true, ngImport: i0, template: "", styles: [":host{display:block;width:100%;height:100%}:host ::ng-deep input,:host ::ng-deep svg text{font-family:B-Font;font-size:1rem!important}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
15301
15308
|
}
|
|
15302
15309
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiBpmnViewerComponent, decorators: [{
|
|
15303
15310
|
type: Component,
|
|
15304
|
-
args: [{ selector: 'bsu-ui-bpmn-viewer', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "", styles: [":host{display:block;width:100%;height:100%}:host ::ng-deep input,:host ::ng-deep svg text{font-family:
|
|
15311
|
+
args: [{ selector: 'bsu-ui-bpmn-viewer', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "", styles: [":host{display:block;width:100%;height:100%}:host ::ng-deep input,:host ::ng-deep svg text{font-family:B-Font;font-size:1rem!important}\n"] }]
|
|
15305
15312
|
}], propDecorators: { isReportPage: [{
|
|
15306
15313
|
type: Input
|
|
15307
15314
|
}], layoutInfo: [{
|