barsa-sap-ui 2.3.120 → 2.3.121

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.
@@ -7,7 +7,7 @@ import jmoment from 'moment-jalaali';
7
7
  import { combineLatest, of, BehaviorSubject, Subject, takeUntil as takeUntil$1, debounceTime as debounceTime$1, concatMap, tap as tap$1, Observable, fromEvent, first as first$1, skip, map as map$1, from } from 'rxjs';
8
8
  import { tap, filter, map, distinctUntilChanged, debounceTime, takeUntil, throttleTime, withLatestFrom, exhaustMap, finalize, first, switchMap, delay, concatMap as concatMap$1, catchError } from 'rxjs/operators';
9
9
  import { Overlay } from '@angular/cdk/overlay';
10
- import * as i238 from '@fundamental-ngx/core';
10
+ import * as i239 from '@fundamental-ngx/core';
11
11
  import { DialogRef, ContentDensityService, DialogService, TableComponent, ToolbarComponent, PopoverComponent, GlobalContentDensityService, RadioButtonComponent, DynamicPageComponent, FileUploaderComponent, MultiInputComponent, MessageStripAlertService, TabPanelComponent, WizardComponent, WizardStepComponent, ComboboxComponent, InlineHelpDirective, SliderComponent, ContentDensityMode, ThemingService as ThemingService$1, RtlService, NotificationService as NotificationService$1, NotificationRef as NotificationRef$1, MessageToastService, FundamentalNgxCoreModule, SideNavigationModule, FacetModule, WizardModule, RatingStarLabelPipe, ListGroupPipe, DateTimeFormatPipe, DateFromNowPipe, DateFormatPipe, AvatarIconPipe, ContentDensityModule } from '@fundamental-ngx/core';
12
12
  import { DomSanitizer } from '@angular/platform-browser';
13
13
  import * as i2$1 from '@fundamental-ngx/core/form';
@@ -35,13 +35,13 @@ import { CalendarService, BarsaCalendarModule } from 'barsa-calendar';
35
35
  import * as i2$5 from '@fundamental-ngx/core/layout-panel';
36
36
  import * as i3$4 from '@fundamental-ngx/core/table';
37
37
  import * as i7$1 from '@fundamental-ngx/core/popover';
38
- import * as i6 from '@fundamental-ngx/core/menu';
39
- import * as i7$2 from '@fundamental-ngx/core/split-button';
40
- import * as i8 from '@fundamental-ngx/core/toolbar';
38
+ import * as i5$2 from '@fundamental-ngx/core/menu';
39
+ import * as i8 from '@fundamental-ngx/core/split-button';
40
+ import * as i7$2 from '@fundamental-ngx/core/toolbar';
41
41
  import * as i4$3 from '@fundamental-ngx/core/content-density';
42
42
  import * as i1$3 from '@fundamental-ngx/core/illustrated-message';
43
43
  import * as i3$7 from '@fundamental-ngx/core/avatar';
44
- import * as i5$2 from '@fundamental-ngx/core/text';
44
+ import * as i5$3 from '@fundamental-ngx/core/text';
45
45
  import * as i10 from '@fundamental-ngx/core/layout-grid';
46
46
  import * as i3$6 from '@fundamental-ngx/core/panel';
47
47
  import * as i7$3 from '@fundamental-ngx/core/card';
@@ -67,11 +67,11 @@ import * as i17 from '@fundamental-ngx/core/message-page';
67
67
  import { ThemingService } from '@fundamental-ngx/core/theming';
68
68
  import * as i4$6 from 'ngx-color/swatches';
69
69
  import { ColorSwatchesModule } from 'ngx-color/swatches';
70
- import * as i5$3 from 'ngx-color/chrome';
70
+ import * as i5$4 from 'ngx-color/chrome';
71
71
  import { ColorChromeModule } from 'ngx-color/chrome';
72
- import * as i6$1 from '@angular/cdk/clipboard';
72
+ import * as i6 from '@angular/cdk/clipboard';
73
73
  import { ClipboardModule } from '@angular/cdk/clipboard';
74
- import * as i5$4 from '@fundamental-ngx/core/file-uploader';
74
+ import * as i4$7 from '@fundamental-ngx/core/file-uploader';
75
75
  import * as i7$4 from '@fundamental-ngx/core/object-number';
76
76
  import * as i11 from '@fundamental-ngx/core/slider';
77
77
  import * as i12$1 from '@fundamental-ngx/core/progress-indicator';
@@ -80,14 +80,14 @@ import * as i14 from '@fundamental-ngx/core/rating-indicator';
80
80
  import * as i18 from '@fundamental-ngx/platform';
81
81
  import { IconTabBarComponent, PlatformIconTabBarModule } from '@fundamental-ngx/platform';
82
82
  import * as i8$4 from '@fundamental-ngx/core/multi-input';
83
- import * as i4$7 from '@fundamental-ngx/core/combobox';
83
+ import * as i4$8 from '@fundamental-ngx/core/combobox';
84
84
  import * as i3$a from '@fundamental-ngx/core/wizard';
85
- import * as i4$8 from '@fundamental-ngx/core/segmented-button';
85
+ import * as i4$9 from '@fundamental-ngx/core/segmented-button';
86
86
  import * as i1$4 from '@fundamental-ngx/core/pagination';
87
87
  import * as i1$5 from '@fundamental-ngx/core/switch';
88
- import * as i6$2 from '@fundamental-ngx/core/info-label';
88
+ import * as i6$1 from '@fundamental-ngx/core/info-label';
89
89
  import * as i10$1 from '@fundamental-ngx/core/object-identifier';
90
- import * as i6$3 from '@fundamental-ngx/core/shellbar';
90
+ import * as i6$2 from '@fundamental-ngx/core/shellbar';
91
91
  import * as i8$5 from '@fundamental-ngx/core/object-attribute';
92
92
  import { trigger, transition, style, animate, state } from '@angular/animations';
93
93
  import * as i1$6 from '@fundamental-ngx/core/tabs';
@@ -3384,7 +3384,7 @@ class UlvContextMenuComponent extends BaseComponent {
3384
3384
  this._popoverCmp.close();
3385
3385
  }
3386
3386
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UlvContextMenuComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
3387
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: UlvContextMenuComponent, isStandalone: false, selector: "bsu-ulv-context-menu,[ulvContextMenu]", inputs: { onlyOverflow: "onlyOverflow", rightClickEnable: "rightClickEnable", closeOnOutsideClick: "closeOnOutsideClick", deviceName: "deviceName", menuItems: "menuItems", allColumns: "allColumns", index: "index", mo: "mo", styleIndex: "styleIndex", conditionalFormats: "conditionalFormats", disableOverflowContextMenu: "disableOverflowContextMenu", footerMode: "footerMode", contextMenuOverflowText: "contextMenuOverflowText", appendTo: "appendTo" }, outputs: { commandClick: "commandClick" }, host: { properties: { "class.disableOverflow": "this._disableOverflow" } }, viewQueries: [{ propertyName: "_popoverCmp", first: true, predicate: PopoverComponent, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "@if (footerMode) {\r\n<div fd-bar barDesign=\"footer\" [cozy]=\"false\" style=\"width: 100%\">\r\n <div fd-bar-right>\r\n <ng-container *ngTemplateOutlet=\"footerToolbarTpl\"></ng-container>\r\n </div>\r\n <ng-template #footerToolbarTpl>\r\n <fd-toolbar fdType=\"transparent\" [clearBorder]=\"true\" [shouldOverflow]=\"true\">\r\n @for (cmd of menuItems; track cmd) {\r\n <span fd-toolbar-item>\r\n <ng-container *ngTemplateOutlet=\"buttonTemplate; context: { $implicit: cmd }\"></ng-container>\r\n </span>\r\n }\r\n </fd-toolbar>\r\n </ng-template>\r\n</div>\r\n} @else if(rightClickEnable){\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n overflowCommands;\r\n context: { $implicit: menuItems, index: index, hideBtn: true, appendTo: appendTo, showText: true }\r\n \"\r\n></ng-container>\r\n}@else{\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n overflowMode && !disableOverflowContextMenu ? overflowCommands : simpleCommands;\r\n context: { $implicit: menuItems, index: index }\r\n \"\r\n></ng-container>\r\n}\r\n\r\n<ng-template #simpleCommands let-commands let-index=\"index\">\r\n @for (cmd of commands; track cmd) {\r\n <ng-container *ngTemplateOutlet=\"menuButtonTemplate; context: { $implicit: cmd }\"></ng-container>\r\n }\r\n</ng-template>\r\n\r\n<ng-template\r\n #overflowCommands\r\n let-commands\r\n let-index=\"index\"\r\n let-hideBtn=\"hideBtn\"\r\n let-appendTo=\"appendTo\"\r\n let-showText=\"showText\"\r\n>\r\n <fd-popover\r\n placement=\"bottom\"\r\n [(isOpen)]=\"isOpenOverflow\"\r\n [closeOnOutsideClick]=\"closeOnOutsideClick === false ? false : true\"\r\n [noArrow]=\"true\"\r\n [appendTo]=\"appendTo\"\r\n [focusAutoCapture]=\"true\"\r\n [focusTrapped]=\"true\"\r\n >\r\n <fd-popover-control #popover>\r\n @if(!hideBtn){\r\n <button\r\n fd-button\r\n (click)=\"onOpenOverflow($event)\"\r\n [fdType]=\"'transparent'\"\r\n [glyph]=\"!contextMenuOverflowText ? 'overflow' : null\"\r\n [title]=\"contextMenuOverflowText\"\r\n [label]=\"contextMenuOverflowText\"\r\n ></button>\r\n }\r\n </fd-popover-control>\r\n <fd-popover-body>\r\n <ul fd-list class=\"ulv-overflow-buttons\">\r\n @for (cmd of commands; track cmd) {\r\n <li fd-list-item>\r\n <ng-container *ngTemplateOutlet=\"menuButtonTemplate; context: { $implicit: cmd }\"></ng-container>\r\n </li>\r\n }\r\n </ul>\r\n </fd-popover-body>\r\n </fd-popover>\r\n</ng-template>\r\n\r\n<ng-template #menuButtonTemplate let-cmd>\r\n <ng-container\r\n *ngTemplateOutlet=\"cmd.menu ? menuTemplate : buttonTemplate; context: { $implicit: cmd, showLabel: true }\"\r\n ></ng-container>\r\n</ng-template>\r\n<ng-template #menuTemplate let-cmd>\r\n <fd-split-button fd-toolbar-item [mainAction]=\"{ mainActionTitle: cmd.text, keepMainAction: true }\">\r\n <fd-menu>\r\n @for (btnCommand of cmd.menu.items; track btnCommand) {\r\n <li\r\n fd-menu-item\r\n #liEl\r\n [applyConditionalFormats]=\"conditionalFormats\"\r\n [styleIndex]=\"styleIndex\"\r\n [dbName]=\"cmd.text\"\r\n [hostEl]=\"liEl\"\r\n (click)=\"onCommandSplitButtonClick($event, btnCommand)\"\r\n >\r\n <div fd-menu-interactive>\r\n <span fd-menu-title>{{ btnCommand.text | bbbTranslate }}</span>\r\n </div>\r\n </li>\r\n }\r\n </fd-menu>\r\n </fd-split-button>\r\n</ng-template>\r\n<ng-template #buttonTemplate let-cmd let-showLabel=\"showLabel\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n cmd?.Command?.CustomUi ? customButtonTemplate : defaultButtonTemplate;\r\n context: { $implicit: cmd, showLabel: showLabel }\r\n \"\r\n ></ng-container>\r\n</ng-template>\r\n<ng-template #defaultButtonTemplate let-cmd let-showLabel=\"showLabel\">\r\n <button\r\n fd-button\r\n #btnEl\r\n class=\"!tw-border-none\"\r\n [fdType]=\"cmd.Command?.JsonExtraProp?.Design ? cmd.Command?.JsonExtraProp.Design : 'transparent'\"\r\n [glyph]=\"cmd.Command?.NewIcon || cmd.Command?.JsonExtraProp?.Icon || ''\"\r\n [ulvCommandHandler]=\"cmd\"\r\n [label]=\"cmd.Command?.NewIcon && cmd.Command?.JsonExtraProp?.Icon ? (cmd.text | bbbTranslate) : ''\"\r\n [applyConditionalFormats]=\"conditionalFormats\"\r\n [styleIndex]=\"styleIndex\"\r\n [dbName]=\"cmd.text\"\r\n [hostEl]=\"btnEl\"\r\n [disabled]=\"cmd.Command?._isEnable === false\"\r\n (commandClick)=\"onCommandClick($event)\"\r\n >\r\n <!-- \u0686\u0648\u0646 \u0639\u06A9\u0633 \u062F\u0631 \u0633\u0645\u062A \u0631\u0627\u0633\u062A \u0642\u0631\u0627\u0631 \u0628\u06AF\u06CC\u0631\u062F \u0627\u0632 \u0644\u06CC\u0628\u0644 \u062F\u06A9\u0645\u0647 \u0627\u0633\u062A\u0641\u0627\u062F\u0647 \u0646\u06A9\u0631\u062F\u0645 -->\r\n @if (!cmd.Command?.NewIcon && !cmd.Command?.JsonExtraProp?.Icon) {\r\n <img [src]=\"cmd.icon\" />\r\n }\r\n <span *ngIf=\"true || !(cmd.Command?.NewIcon || cmd.Command?.JsonExtraProp?.Icon)\">{{\r\n cmd.text | bbbTranslate\r\n }}</span>\r\n </button>\r\n</ng-template>\r\n<ng-template #customButtonTemplate let-cmd let-showLabel=\"showLabel\">\r\n <div\r\n #hostEl\r\n [dbName]=\"cmd.text\"\r\n [applyConditionalFormats]=\"conditionalFormats\"\r\n [hostEl]=\"hostEl\"\r\n [styleIndex]=\"styleIndex\"\r\n >\r\n <bnrc-dynamic-form-toolbaritem\r\n fd-toolbar-item\r\n [ulvCommandHandler]=\"cmd\"\r\n [component]=\"cmd.Command?.CustomUi\"\r\n [mo]=\"mo\"\r\n [context]=\"cmd\"\r\n [showText]=\"showLabel || disableOverflowContextMenu === false\"\r\n [deviceName]=\"deviceName\"\r\n [index]=\"index\"\r\n [isEnable]=\"cmd.Command?._isEnable || cmd.Command?.UseForSingle\"\r\n [allColumns]=\"allColumns\"\r\n (btnClick)=\"onCommandClick($event)\"\r\n ></bnrc-dynamic-form-toolbaritem>\r\n </div>\r\n</ng-template>\r\n", styles: [":host{display:flex;justify-content:center;align-items:center}:host ::ng-deep button{margin-top:0!important}:host ::ng-deep .fd-popover-custom{max-width:none}:host.disableOverflow{column-gap:5px}button{align-items:center}button div{display:flex}button ::ng-deep span{height:auto!important}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.DynamicFormToolbaritemComponent, selector: "bnrc-dynamic-form-toolbaritem", inputs: ["mo", "index", "deviceName", "deviceSize", "context", "btn", "isEnable", "showText", "allColumns", "conditionalFormats"], outputs: ["btnClick"] }, { kind: "directive", type: i2.UlvCommandDirective, selector: "[ulvCommandHandler]", inputs: ["ulvCommandHandler", "disable"], outputs: ["commandClick"] }, { kind: "component", type: i3$2.BarComponent, selector: "[fd-bar]", inputs: ["class", "barDesign", "inPage", "inHomePage", "clear", "size", "role"] }, { kind: "directive", type: i3$2.BarRightDirective, selector: "[fd-bar-right]" }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i7.ListComponent, selector: "[fd-list], [fdList]", inputs: ["dropdownMode", "multiInputMode", "mobileMode", "hasMessage", "noBorder", "navigationIndicator", "selection", "keyboardSupport", "byline", "subline", "theme", "unreadIndicator", "role", "settingsList", "settingsListFooter"], outputs: ["focusEscapeList"] }, { kind: "component", type: i7.ListItemComponent, selector: "[fdListItem] ,[fd-list-item]", inputs: ["selected", "noData", "action", "interactive", "growing", "counter", "active", "unread", "byline", "ariaRole", "id", "preventClick", "settingsListTpl"], outputs: ["keyDown"], exportAs: ["fdListItem"] }, { kind: "component", type: i6.MenuComponent, selector: "fd-menu", inputs: ["mobile", "disabled", "focusTrapped", "focusAutoCapture", "openOnHoverTime", "mobileConfig", "ariaLabel", "ariaLabelledby", "id"], outputs: ["activePath"] }, { kind: "component", type: i6.MenuItemComponent, selector: "li[fd-menu-item]", inputs: ["disabled", "itemId", "submenu", "parentSubmenu", "hasSeparator"], outputs: ["onSelect"], exportAs: ["fd-menu-item"] }, { kind: "component", type: i6.MenuInteractiveComponent, selector: "[fd-menu-interactive]" }, { kind: "directive", type: i6.MenuTitleDirective, selector: "[fd-menu-title]" }, { kind: "component", type: i7$1.PopoverControlComponent, selector: "fd-popover-control, [fdPopoverControl]" }, { kind: "component", type: i7$1.PopoverBodyComponent, selector: "fd-popover-body", inputs: ["minWidth", "maxWidth", "minHeight", "maxHeight"] }, { kind: "component", type: i7$1.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig", "preventSpaceKeyScroll"] }, { kind: "component", type: i7$2.SplitButtonComponent, selector: "fd-split-button", inputs: ["glyph", "glyphFont", "disabled", "fdType", "expandButtonTitle", "selected", "fixedWidth", "mainAction", "arialLabel"], outputs: ["primaryButtonClicked"] }, { 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: "directive", type: ApplyConditionalFormatsDirective, selector: "[applyConditionalFormats]", inputs: ["applyConditionalFormats", "styleIndex", "hostEl", "dbName"] }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
3387
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: UlvContextMenuComponent, isStandalone: false, selector: "bsu-ulv-context-menu,[ulvContextMenu]", inputs: { onlyOverflow: "onlyOverflow", rightClickEnable: "rightClickEnable", closeOnOutsideClick: "closeOnOutsideClick", deviceName: "deviceName", menuItems: "menuItems", allColumns: "allColumns", index: "index", mo: "mo", styleIndex: "styleIndex", conditionalFormats: "conditionalFormats", disableOverflowContextMenu: "disableOverflowContextMenu", footerMode: "footerMode", contextMenuOverflowText: "contextMenuOverflowText", appendTo: "appendTo" }, outputs: { commandClick: "commandClick" }, host: { properties: { "class.disableOverflow": "this._disableOverflow" } }, viewQueries: [{ propertyName: "_popoverCmp", first: true, predicate: PopoverComponent, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "@if (footerMode) {\r\n<div fd-bar barDesign=\"footer\" [cozy]=\"false\" style=\"width: 100%\">\r\n <div fd-bar-right>\r\n <ng-container *ngTemplateOutlet=\"footerToolbarTpl\"></ng-container>\r\n </div>\r\n <ng-template #footerToolbarTpl>\r\n <fd-toolbar fdType=\"transparent\" [clearBorder]=\"true\" [shouldOverflow]=\"true\">\r\n @for (cmd of menuItems; track cmd) {\r\n <span fd-toolbar-item>\r\n <ng-container *ngTemplateOutlet=\"buttonTemplate; context: { $implicit: cmd }\"></ng-container>\r\n </span>\r\n }\r\n </fd-toolbar>\r\n </ng-template>\r\n</div>\r\n} @else if(rightClickEnable){\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n overflowCommands;\r\n context: { $implicit: menuItems, index: index, hideBtn: true, appendTo: appendTo, showText: true }\r\n \"\r\n></ng-container>\r\n}@else{\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n overflowMode && !disableOverflowContextMenu ? overflowCommands : simpleCommands;\r\n context: { $implicit: menuItems, index: index }\r\n \"\r\n></ng-container>\r\n}\r\n\r\n<ng-template #simpleCommands let-commands let-index=\"index\">\r\n @for (cmd of commands; track cmd) {\r\n <ng-container *ngTemplateOutlet=\"menuButtonTemplate; context: { $implicit: cmd }\"></ng-container>\r\n }\r\n</ng-template>\r\n\r\n<ng-template\r\n #overflowCommands\r\n let-commands\r\n let-index=\"index\"\r\n let-hideBtn=\"hideBtn\"\r\n let-appendTo=\"appendTo\"\r\n let-showText=\"showText\"\r\n>\r\n <fd-popover\r\n placement=\"bottom\"\r\n [(isOpen)]=\"isOpenOverflow\"\r\n [closeOnOutsideClick]=\"closeOnOutsideClick === false ? false : true\"\r\n [noArrow]=\"true\"\r\n [appendTo]=\"appendTo\"\r\n [focusAutoCapture]=\"true\"\r\n [focusTrapped]=\"true\"\r\n >\r\n <fd-popover-control #popover>\r\n @if(!hideBtn){\r\n <button\r\n fd-button\r\n (click)=\"onOpenOverflow($event)\"\r\n [fdType]=\"'transparent'\"\r\n [glyph]=\"!contextMenuOverflowText ? 'overflow' : null\"\r\n [title]=\"contextMenuOverflowText\"\r\n [label]=\"contextMenuOverflowText\"\r\n ></button>\r\n }\r\n </fd-popover-control>\r\n <fd-popover-body>\r\n <ul fd-list class=\"ulv-overflow-buttons\">\r\n @for (cmd of commands; track cmd) {\r\n <li fd-list-item>\r\n <ng-container *ngTemplateOutlet=\"menuButtonTemplate; context: { $implicit: cmd }\"></ng-container>\r\n </li>\r\n }\r\n </ul>\r\n </fd-popover-body>\r\n </fd-popover>\r\n</ng-template>\r\n\r\n<ng-template #menuButtonTemplate let-cmd>\r\n <ng-container\r\n *ngTemplateOutlet=\"cmd.menu ? menuTemplate : buttonTemplate; context: { $implicit: cmd, showLabel: true }\"\r\n ></ng-container>\r\n</ng-template>\r\n<ng-template #menuTemplate let-cmd>\r\n <fd-split-button fd-toolbar-item [mainAction]=\"{ mainActionTitle: cmd.text, keepMainAction: true }\">\r\n <fd-menu>\r\n @for (btnCommand of cmd.menu.items; track btnCommand) {\r\n <li\r\n fd-menu-item\r\n #liEl\r\n [applyConditionalFormats]=\"conditionalFormats\"\r\n [styleIndex]=\"styleIndex\"\r\n [dbName]=\"cmd.text\"\r\n [hostEl]=\"liEl\"\r\n (click)=\"onCommandSplitButtonClick($event, btnCommand)\"\r\n >\r\n <div fd-menu-interactive>\r\n <span fd-menu-title>{{ btnCommand.text | bbbTranslate }}</span>\r\n </div>\r\n </li>\r\n }\r\n </fd-menu>\r\n </fd-split-button>\r\n</ng-template>\r\n<ng-template #buttonTemplate let-cmd let-showLabel=\"showLabel\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n cmd?.Command?.CustomUi ? customButtonTemplate : defaultButtonTemplate;\r\n context: { $implicit: cmd, showLabel: showLabel }\r\n \"\r\n ></ng-container>\r\n</ng-template>\r\n<ng-template #defaultButtonTemplate let-cmd let-showLabel=\"showLabel\">\r\n <button\r\n fd-button\r\n #btnEl\r\n class=\"!tw-border-none\"\r\n [fdType]=\"cmd.Command?.JsonExtraProp?.Design ? cmd.Command?.JsonExtraProp.Design : 'transparent'\"\r\n [glyph]=\"cmd.Command?.NewIcon || cmd.Command?.JsonExtraProp?.Icon || ''\"\r\n [ulvCommandHandler]=\"cmd\"\r\n [label]=\"cmd.Command?.NewIcon && cmd.Command?.JsonExtraProp?.Icon ? (cmd.text | bbbTranslate) : ''\"\r\n [applyConditionalFormats]=\"conditionalFormats\"\r\n [styleIndex]=\"styleIndex\"\r\n [dbName]=\"cmd.text\"\r\n [hostEl]=\"btnEl\"\r\n [disabled]=\"cmd.Command?._isEnable === false\"\r\n (commandClick)=\"onCommandClick($event)\"\r\n >\r\n <!-- \u0686\u0648\u0646 \u0639\u06A9\u0633 \u062F\u0631 \u0633\u0645\u062A \u0631\u0627\u0633\u062A \u0642\u0631\u0627\u0631 \u0628\u06AF\u06CC\u0631\u062F \u0627\u0632 \u0644\u06CC\u0628\u0644 \u062F\u06A9\u0645\u0647 \u0627\u0633\u062A\u0641\u0627\u062F\u0647 \u0646\u06A9\u0631\u062F\u0645 -->\r\n @if (!cmd.Command?.NewIcon && !cmd.Command?.JsonExtraProp?.Icon) {\r\n <img [src]=\"cmd.icon\" />\r\n }\r\n <span *ngIf=\"true || !(cmd.Command?.NewIcon || cmd.Command?.JsonExtraProp?.Icon)\">{{\r\n cmd.text | bbbTranslate\r\n }}</span>\r\n </button>\r\n</ng-template>\r\n<ng-template #customButtonTemplate let-cmd let-showLabel=\"showLabel\">\r\n <div\r\n #hostEl\r\n [dbName]=\"cmd.text\"\r\n [applyConditionalFormats]=\"conditionalFormats\"\r\n [hostEl]=\"hostEl\"\r\n [styleIndex]=\"styleIndex\"\r\n >\r\n <bnrc-dynamic-form-toolbaritem\r\n fd-toolbar-item\r\n [ulvCommandHandler]=\"cmd\"\r\n [component]=\"cmd.Command?.CustomUi\"\r\n [mo]=\"mo\"\r\n [context]=\"cmd\"\r\n [showText]=\"showLabel || disableOverflowContextMenu === false\"\r\n [deviceName]=\"deviceName\"\r\n [index]=\"index\"\r\n [isEnable]=\"cmd.Command?._isEnable || cmd.Command?.UseForSingle\"\r\n [allColumns]=\"allColumns\"\r\n (btnClick)=\"onCommandClick($event)\"\r\n ></bnrc-dynamic-form-toolbaritem>\r\n </div>\r\n</ng-template>\r\n", styles: [":host{display:flex;justify-content:center;align-items:center}:host ::ng-deep button{margin-top:0!important}:host ::ng-deep .fd-popover-custom{max-width:none}:host.disableOverflow{column-gap:5px}button{align-items:center}button div{display:flex}button ::ng-deep span{height:auto!important}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.DynamicFormToolbaritemComponent, selector: "bnrc-dynamic-form-toolbaritem", inputs: ["mo", "index", "deviceName", "deviceSize", "context", "btn", "isEnable", "showText", "allColumns", "conditionalFormats"], outputs: ["btnClick"] }, { kind: "directive", type: i2.UlvCommandDirective, selector: "[ulvCommandHandler]", inputs: ["ulvCommandHandler", "disable"], outputs: ["commandClick"] }, { kind: "component", type: i3$2.BarComponent, selector: "[fd-bar]", inputs: ["class", "barDesign", "inPage", "inHomePage", "clear", "size", "role"] }, { kind: "directive", type: i3$2.BarRightDirective, selector: "[fd-bar-right]" }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i7.ListComponent, selector: "[fd-list], [fdList]", inputs: ["dropdownMode", "multiInputMode", "mobileMode", "hasMessage", "noBorder", "navigationIndicator", "selection", "keyboardSupport", "byline", "subline", "theme", "unreadIndicator", "role", "settingsList", "settingsListFooter"], outputs: ["focusEscapeList"] }, { kind: "component", type: i7.ListItemComponent, selector: "[fdListItem] ,[fd-list-item]", inputs: ["selected", "noData", "action", "interactive", "growing", "counter", "active", "unread", "byline", "ariaRole", "id", "preventClick", "settingsListTpl"], outputs: ["keyDown"], exportAs: ["fdListItem"] }, { kind: "component", type: i5$2.MenuComponent, selector: "fd-menu", inputs: ["mobile", "disabled", "focusTrapped", "focusAutoCapture", "openOnHoverTime", "mobileConfig", "ariaLabel", "ariaLabelledby", "id"], outputs: ["activePath"] }, { kind: "component", type: i5$2.MenuItemComponent, selector: "li[fd-menu-item]", inputs: ["disabled", "itemId", "submenu", "parentSubmenu", "hasSeparator"], outputs: ["onSelect"], exportAs: ["fd-menu-item"] }, { kind: "component", type: i5$2.MenuInteractiveComponent, selector: "[fd-menu-interactive]" }, { kind: "directive", type: i5$2.MenuTitleDirective, selector: "[fd-menu-title]" }, { kind: "component", type: i7$1.PopoverControlComponent, selector: "fd-popover-control, [fdPopoverControl]" }, { kind: "component", type: i7$1.PopoverBodyComponent, selector: "fd-popover-body", inputs: ["minWidth", "maxWidth", "minHeight", "maxHeight"] }, { kind: "component", type: i7$1.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig", "preventSpaceKeyScroll"] }, { kind: "component", type: i8.SplitButtonComponent, selector: "fd-split-button", inputs: ["glyph", "glyphFont", "disabled", "fdType", "expandButtonTitle", "selected", "fixedWidth", "mainAction", "arialLabel"], outputs: ["primaryButtonClicked"] }, { kind: "component", type: i7$2.ToolbarComponent, selector: "fd-toolbar", inputs: ["titleId", "class", "shouldOverflow", "fdType", "title", "active", "clearBorder", "forceOverflow", "tabindex", "headingLevel", "ariaLabel", "ariaLabelledBy"] }, { kind: "directive", type: i7$2.ToolbarItemDirective, selector: "[fd-toolbar-item], [fdOverflowGroup], [fdOverflowPriority]", inputs: ["fdOverflowPriority", "fdOverflowGroup"] }, { kind: "directive", type: ApplyConditionalFormatsDirective, selector: "[applyConditionalFormats]", inputs: ["applyConditionalFormats", "styleIndex", "hostEl", "dbName"] }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
3388
3388
  }
3389
3389
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UlvContextMenuComponent, decorators: [{
3390
3390
  type: Component,
@@ -4677,7 +4677,10 @@ class FileGalleryViewerComponent extends BaseComponent {
4677
4677
  // }
4678
4678
  }
4679
4679
  Rotate() {
4680
- this.listOfFileViewerContent.toArray()[this.selectedId]?.Rotate();
4680
+ this.listOfFileViewerContent
4681
+ .toArray()
4682
+ .find((c) => c.file.Id === this.selectedId)
4683
+ ?.Rotate();
4681
4684
  }
4682
4685
  _selectedIndexChanged(id) {
4683
4686
  this._selectedIdChange$.next(id);
@@ -4711,11 +4714,11 @@ class FileGalleryViewerComponent extends BaseComponent {
4711
4714
  return true;
4712
4715
  }
4713
4716
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: FileGalleryViewerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
4714
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: FileGalleryViewerComponent, isStandalone: false, selector: "bsu-file-gallery-viewer", inputs: { fillWidth: "fillWidth", deviceSize: "deviceSize", title: "title", files: "files", contentDensity: "contentDensity", isImageGallery: "isImageGallery", isHorizontal: "isHorizontal", selectedFile: "selectedFile", groupList: "groupList", selectedId: "selectedId", scrollToId: "scrollToId" }, outputs: { selectedIdChange: "selectedIdChange" }, viewQueries: [{ propertyName: "_galleryContainer", first: true, predicate: ["galleryContainer"], descendants: true, read: ElementRef }, { propertyName: "listOfFileViewerContent", predicate: ["fileViewerContent"], descendants: true }], usesInheritance: true, ngImport: i0, template: "@if (isImageGallery) {\r\n<div #galleryContainer class=\"gallery inDialog\">\r\n @for (groupItem of groupList; track groupItem.Id; let i = $index) { @for (media of files; track media; let i =\r\n $index) { @if(media.groupId===groupItem.Id){\r\n <bsu-file-viewer-content\r\n #fileViewerContent\r\n [attr.id]=\"'fv_gl_' + media.Id\"\r\n [deviceSize]=\"deviceSize\"\r\n [file]=\"media\"\r\n [imageOnly]=\"true\"\r\n [fillWidth]=\"fillWidth\"\r\n [isImageGallery]=\"isImageGallery\"\r\n (imageLoaded)=\"onImageLoaded(i)\"\r\n ></bsu-file-viewer-content>\r\n } } } @for (media of files; track media; let i = $index) { @if(!media.groupId || media.groupId===\"0\"){\r\n <bsu-file-viewer-content\r\n #fileViewerContent\r\n [attr.id]=\"'fv_gl_' + media.Id\"\r\n [deviceSize]=\"deviceSize\"\r\n [file]=\"media\"\r\n [imageOnly]=\"true\"\r\n [fillWidth]=\"fillWidth\"\r\n [isImageGallery]=\"isImageGallery\"\r\n (imageLoaded)=\"onImageLoaded(i)\"\r\n ></bsu-file-viewer-content>\r\n } }\r\n</div>\r\n} @if (!isImageGallery) {\r\n<div class=\"gallery\">\r\n @if (selectedFile) {\r\n <bsu-file-viewer-content\r\n [deviceSize]=\"deviceSize\"\r\n [fillWidth]=\"fillWidth\"\r\n [file]=\"selectedFile\"\r\n [isImageGallery]=\"isImageGallery\"\r\n ></bsu-file-viewer-content>\r\n }\r\n</div>\r\n} @if ((deviceSize !== 's' && isImageGallery) || (isHorizontal && files.length>1)) {\r\n<div class=\"thumbnail\" style=\"flex-shrink: 1\">\r\n <ng-container *ngTemplateOutlet=\"layoutGridTpl; context: { $implicit: files }\"></ng-container>\r\n</div>\r\n}\r\n<ng-template #layoutGridTpl let-files>\r\n <fd-layout-grid class=\"!tw-p-0\">\r\n @if (files) {\r\n <div fdLayoutGridRow>\r\n @for (groupItem of groupList; track groupItem.Id; let i = $index) {\r\n <div [fdLayoutGridCol]=\"6\" [colMd]=\"3\" [colLg]=\"2\" [colXl]=\"2\">\r\n <fd-panel [collapsed]=\"false\">\r\n <div fd-panel-title>{{ groupItem.Name }}</div>\r\n <div fd-panel-content class=\"tw-flex tw-justify-center tw-items-center tw-flex-col tw-gap-2\">\r\n @for (media of files; track media; let i = $index) { @if(media.groupId===groupItem.Id){\r\n <bsu-file-viewer-content\r\n class=\"tw-items-center\"\r\n (click)=\"onMedaiClick(media)\"\r\n [selected]=\"scrollToId() === media.Id\"\r\n [cardMode]=\"true\"\r\n [deviceSize]=\"deviceSize\"\r\n [file]=\"media\"\r\n [isThumbnail]=\"true\"\r\n [isImageGallery]=\"isImageGallery\"\r\n ></bsu-file-viewer-content>\r\n } }\r\n </div>\r\n </fd-panel>\r\n </div>\r\n } @for (file of files; track file; let i = $index) { @if(file.groupId===\"0\" || !file.groupId){\r\n <div [fdLayoutGridCol]=\"6\" [colMd]=\"3\" [colLg]=\"2\" [colXl]=\"2\" (click)=\"onMedaiClick(file)\">\r\n <bsu-file-viewer-content\r\n [selected]=\"scrollToId() === file.Id\"\r\n [cardMode]=\"true\"\r\n [deviceSize]=\"deviceSize\"\r\n [file]=\"file\"\r\n [isThumbnail]=\"true\"\r\n [isImageGallery]=\"isImageGallery\"\r\n ></bsu-file-viewer-content>\r\n </div>\r\n } }\r\n </div>\r\n }\r\n </fd-layout-grid>\r\n</ng-template>\r\n", styles: [":host{display:flex;flex-direction:row-reverse}:host .gallery{overflow:auto}:host .gallery .pics{position:relative}:host.horizontal{flex-direction:column}:host.horizontal fd-dialog-body ::ng-deep>section{flex-direction:column}:host.horizontal .gallery{flex-direction:row;flex:1}:host.horizontal .thumbnail{min-height:7rem;height:7rem;max-height:7rem;flex:1;border-top:1px solid #ccc;overflow-x:auto}:host.horizontal .thumbnail ::ng-deep fd-card,:host.horizontal .thumbnail ::ng-deep img{height:5rem}:host.horizontal .thumbnail .fd-row{flex-wrap:nowrap}:host.vertical fd-dialog-body ::ng-deep>section{flex-direction:row-reverse;padding:0;height:100%}:host.vertical .gallery{flex-direction:column;height:100%;flex:1;border-right:var(--sapList_BorderWidth) solid var(--sapList_BorderColor)}:host.vertical .thumbnail{position:sticky;top:0;border-bottom:var(--sapList_BorderWidth) solid var(--sapList_BorderColor);height:100%;width:8rem;overflow-y:auto}:host.vertical .thumbnail ::ng-deep .fd-row>div{width:100%;min-width:100%}:host.vertical .thumbnail ::ng-deep fd-card{min-height:6rem;max-height:6rem;min-width:6rem;max-width:6rem}:host.vertical .thumbnail ::ng-deep fd-card img{height:5rem}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i10.LayoutGridComponent, selector: "fd-layout-grid, [fdLayoutGrid]", inputs: ["class", "noGap", "noHorizontalGap", "noVerticalGap"] }, { kind: "directive", type: i10.LayoutGridColDirective, selector: "[fd-layout-grid-col], [fdLayoutGridCol]", inputs: ["fdLayoutGridCol", "colGrow", "colMd", "colLg", "colXl", "colOffset", "colOffsetMd", "colOffsetLg", "colOffsetXl", "class"] }, { kind: "directive", type: i10.LayoutGridRowDirective, selector: "[fd-layout-grid-row], [fdLayoutGridRow]" }, { kind: "component", type: i3$6.PanelComponent, selector: "fd-panel", inputs: ["class", "fixed", "id", "expandId", "expandAriaLabel", "expandAriaLabelledBy", "expanded", "transparent", "noRadius"], outputs: ["expandedChange"] }, { kind: "directive", type: i3$6.PanelContentDirective, selector: "[fd-panel-content]", inputs: ["height", "minHeight", "maxHeight", "ariaLabel", "ariaLabelledBy", "role", "noPadding", "transparent", "id"] }, { kind: "directive", type: i3$6.PanelTitleDirective, selector: "[fd-panel-title]", inputs: ["id"] }, { kind: "component", type: FileViewerContentComponent, selector: "bsu-file-viewer-content", inputs: ["fillWidth", "imageOnly", "isImageGallery", "cardMode", "showFooter", "showContent", "selected", "width", "deviceSize", "cardContentHeight", "file", "isThumbnail"], outputs: ["cantView", "imageLoaded"] }] }); }
4717
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: FileGalleryViewerComponent, isStandalone: false, selector: "bsu-file-gallery-viewer", inputs: { fillWidth: "fillWidth", deviceSize: "deviceSize", title: "title", files: "files", contentDensity: "contentDensity", isImageGallery: "isImageGallery", isHorizontal: "isHorizontal", selectedFile: "selectedFile", groupList: "groupList", selectedId: "selectedId", scrollToId: "scrollToId" }, outputs: { selectedIdChange: "selectedIdChange" }, viewQueries: [{ propertyName: "_galleryContainer", first: true, predicate: ["galleryContainer"], descendants: true, read: ElementRef }, { propertyName: "listOfFileViewerContent", predicate: ["fileViewerContent"], descendants: true }], usesInheritance: true, ngImport: i0, template: "@if (isImageGallery) {\r\n<div #galleryContainer class=\"gallery inDialog\">\r\n @for (groupItem of groupList; track groupItem.Id; let i = $index) { @for (media of files; track media; let i =\r\n $index) { @if(media.groupId===groupItem.Id){\r\n <bsu-file-viewer-content\r\n #fileViewerContent\r\n [attr.id]=\"'fv_gl_' + media.Id\"\r\n [deviceSize]=\"deviceSize\"\r\n [file]=\"media\"\r\n [imageOnly]=\"true\"\r\n [fillWidth]=\"fillWidth\"\r\n [isImageGallery]=\"isImageGallery\"\r\n (imageLoaded)=\"onImageLoaded(i)\"\r\n ></bsu-file-viewer-content>\r\n } } } @for (media of files; track media; let i = $index) { @if(!groupList?.length || !media.groupId ||\r\n media.groupId===\"0\"){\r\n <bsu-file-viewer-content\r\n #fileViewerContent\r\n [attr.id]=\"'fv_gl_' + media.Id\"\r\n [deviceSize]=\"deviceSize\"\r\n [file]=\"media\"\r\n [imageOnly]=\"true\"\r\n [fillWidth]=\"fillWidth\"\r\n [isImageGallery]=\"isImageGallery\"\r\n (imageLoaded)=\"onImageLoaded(i)\"\r\n ></bsu-file-viewer-content>\r\n } }\r\n</div>\r\n} @if (!isImageGallery) {\r\n<div class=\"gallery\">\r\n @if (selectedFile) {\r\n <bsu-file-viewer-content\r\n [deviceSize]=\"deviceSize\"\r\n [fillWidth]=\"fillWidth\"\r\n [file]=\"selectedFile\"\r\n [isImageGallery]=\"isImageGallery\"\r\n ></bsu-file-viewer-content>\r\n }\r\n</div>\r\n} @if (files.length > 1 &&( (deviceSize !== 's' && isImageGallery) || (isHorizontal && files.length>1))) {\r\n<div class=\"thumbnail\" style=\"flex-shrink: 1\">\r\n <ng-container *ngTemplateOutlet=\"layoutGridTpl; context: { $implicit: files }\"></ng-container>\r\n</div>\r\n}\r\n<ng-template #layoutGridTpl let-files>\r\n <fd-layout-grid class=\"!tw-p-0\">\r\n <div fdLayoutGridRow>\r\n @for (groupItem of groupList; track groupItem.Id; let i = $index) {\r\n <div [fdLayoutGridCol]=\"6\" [colMd]=\"3\" [colLg]=\"2\" [colXl]=\"2\">\r\n <fd-panel [collapsed]=\"false\">\r\n <div fd-panel-title>{{ groupItem.Name }}</div>\r\n <div fd-panel-content class=\"tw-flex tw-justify-center tw-items-center tw-flex-col tw-gap-2\">\r\n @for (media of files; track media; let i = $index) { @if(media.groupId===groupItem.Id){\r\n <bsu-file-viewer-content\r\n class=\"tw-items-center\"\r\n (click)=\"onMedaiClick(media)\"\r\n [selected]=\"scrollToId() === media.Id\"\r\n [cardMode]=\"true\"\r\n [deviceSize]=\"deviceSize\"\r\n [file]=\"media\"\r\n [isThumbnail]=\"true\"\r\n [isImageGallery]=\"isImageGallery\"\r\n ></bsu-file-viewer-content>\r\n } }\r\n </div>\r\n </fd-panel>\r\n </div>\r\n } @for (file of files; track file; let i = $index) { @if(!groupList?.length || file.groupId===\"0\" || !file.groupId){\r\n <div [fdLayoutGridCol]=\"6\" [colMd]=\"3\" [colLg]=\"2\" [colXl]=\"2\" (click)=\"onMedaiClick(file)\">\r\n <bsu-file-viewer-content\r\n [selected]=\"scrollToId() === file.Id\"\r\n [cardMode]=\"true\"\r\n [deviceSize]=\"deviceSize\"\r\n [file]=\"file\"\r\n [isThumbnail]=\"true\"\r\n [isImageGallery]=\"isImageGallery\"\r\n ></bsu-file-viewer-content>\r\n </div>\r\n } }\r\n </div>\r\n </fd-layout-grid>\r\n</ng-template>\r\n", styles: [":host{display:flex;flex-direction:row-reverse}:host .gallery{overflow:auto}:host .gallery .pics{position:relative}:host.horizontal{flex-direction:column}:host.horizontal fd-dialog-body ::ng-deep>section{flex-direction:column}:host.horizontal .gallery{flex-direction:row;flex:1}:host.horizontal .thumbnail{min-height:7rem;height:7rem;max-height:7rem;flex:1;border-top:1px solid #ccc;overflow-x:auto}:host.horizontal .thumbnail ::ng-deep fd-card,:host.horizontal .thumbnail ::ng-deep img{height:5rem}:host.horizontal .thumbnail .fd-row{flex-wrap:nowrap}:host.vertical fd-dialog-body ::ng-deep>section{flex-direction:row-reverse;padding:0;height:100%}:host.vertical .gallery{flex-direction:column;height:100%;flex:1;border-right:var(--sapList_BorderWidth) solid var(--sapList_BorderColor)}:host.vertical .thumbnail{position:sticky;top:0;border-bottom:var(--sapList_BorderWidth) solid var(--sapList_BorderColor);height:100%;width:8rem;overflow-y:auto}:host.vertical .thumbnail ::ng-deep .fd-row>div{width:100%;min-width:100%}:host.vertical .thumbnail ::ng-deep fd-card{min-height:6rem;max-height:6rem;min-width:6rem;max-width:6rem}:host.vertical .thumbnail ::ng-deep fd-card img{height:5rem}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i10.LayoutGridComponent, selector: "fd-layout-grid, [fdLayoutGrid]", inputs: ["class", "noGap", "noHorizontalGap", "noVerticalGap"] }, { kind: "directive", type: i10.LayoutGridColDirective, selector: "[fd-layout-grid-col], [fdLayoutGridCol]", inputs: ["fdLayoutGridCol", "colGrow", "colMd", "colLg", "colXl", "colOffset", "colOffsetMd", "colOffsetLg", "colOffsetXl", "class"] }, { kind: "directive", type: i10.LayoutGridRowDirective, selector: "[fd-layout-grid-row], [fdLayoutGridRow]" }, { kind: "component", type: i3$6.PanelComponent, selector: "fd-panel", inputs: ["class", "fixed", "id", "expandId", "expandAriaLabel", "expandAriaLabelledBy", "expanded", "transparent", "noRadius"], outputs: ["expandedChange"] }, { kind: "directive", type: i3$6.PanelContentDirective, selector: "[fd-panel-content]", inputs: ["height", "minHeight", "maxHeight", "ariaLabel", "ariaLabelledBy", "role", "noPadding", "transparent", "id"] }, { kind: "directive", type: i3$6.PanelTitleDirective, selector: "[fd-panel-title]", inputs: ["id"] }, { kind: "component", type: FileViewerContentComponent, selector: "bsu-file-viewer-content", inputs: ["fillWidth", "imageOnly", "isImageGallery", "cardMode", "showFooter", "showContent", "selected", "width", "deviceSize", "cardContentHeight", "file", "isThumbnail"], outputs: ["cantView", "imageLoaded"] }] }); }
4715
4718
  }
4716
4719
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: FileGalleryViewerComponent, decorators: [{
4717
4720
  type: Component,
4718
- args: [{ selector: 'bsu-file-gallery-viewer', standalone: false, template: "@if (isImageGallery) {\r\n<div #galleryContainer class=\"gallery inDialog\">\r\n @for (groupItem of groupList; track groupItem.Id; let i = $index) { @for (media of files; track media; let i =\r\n $index) { @if(media.groupId===groupItem.Id){\r\n <bsu-file-viewer-content\r\n #fileViewerContent\r\n [attr.id]=\"'fv_gl_' + media.Id\"\r\n [deviceSize]=\"deviceSize\"\r\n [file]=\"media\"\r\n [imageOnly]=\"true\"\r\n [fillWidth]=\"fillWidth\"\r\n [isImageGallery]=\"isImageGallery\"\r\n (imageLoaded)=\"onImageLoaded(i)\"\r\n ></bsu-file-viewer-content>\r\n } } } @for (media of files; track media; let i = $index) { @if(!media.groupId || media.groupId===\"0\"){\r\n <bsu-file-viewer-content\r\n #fileViewerContent\r\n [attr.id]=\"'fv_gl_' + media.Id\"\r\n [deviceSize]=\"deviceSize\"\r\n [file]=\"media\"\r\n [imageOnly]=\"true\"\r\n [fillWidth]=\"fillWidth\"\r\n [isImageGallery]=\"isImageGallery\"\r\n (imageLoaded)=\"onImageLoaded(i)\"\r\n ></bsu-file-viewer-content>\r\n } }\r\n</div>\r\n} @if (!isImageGallery) {\r\n<div class=\"gallery\">\r\n @if (selectedFile) {\r\n <bsu-file-viewer-content\r\n [deviceSize]=\"deviceSize\"\r\n [fillWidth]=\"fillWidth\"\r\n [file]=\"selectedFile\"\r\n [isImageGallery]=\"isImageGallery\"\r\n ></bsu-file-viewer-content>\r\n }\r\n</div>\r\n} @if ((deviceSize !== 's' && isImageGallery) || (isHorizontal && files.length>1)) {\r\n<div class=\"thumbnail\" style=\"flex-shrink: 1\">\r\n <ng-container *ngTemplateOutlet=\"layoutGridTpl; context: { $implicit: files }\"></ng-container>\r\n</div>\r\n}\r\n<ng-template #layoutGridTpl let-files>\r\n <fd-layout-grid class=\"!tw-p-0\">\r\n @if (files) {\r\n <div fdLayoutGridRow>\r\n @for (groupItem of groupList; track groupItem.Id; let i = $index) {\r\n <div [fdLayoutGridCol]=\"6\" [colMd]=\"3\" [colLg]=\"2\" [colXl]=\"2\">\r\n <fd-panel [collapsed]=\"false\">\r\n <div fd-panel-title>{{ groupItem.Name }}</div>\r\n <div fd-panel-content class=\"tw-flex tw-justify-center tw-items-center tw-flex-col tw-gap-2\">\r\n @for (media of files; track media; let i = $index) { @if(media.groupId===groupItem.Id){\r\n <bsu-file-viewer-content\r\n class=\"tw-items-center\"\r\n (click)=\"onMedaiClick(media)\"\r\n [selected]=\"scrollToId() === media.Id\"\r\n [cardMode]=\"true\"\r\n [deviceSize]=\"deviceSize\"\r\n [file]=\"media\"\r\n [isThumbnail]=\"true\"\r\n [isImageGallery]=\"isImageGallery\"\r\n ></bsu-file-viewer-content>\r\n } }\r\n </div>\r\n </fd-panel>\r\n </div>\r\n } @for (file of files; track file; let i = $index) { @if(file.groupId===\"0\" || !file.groupId){\r\n <div [fdLayoutGridCol]=\"6\" [colMd]=\"3\" [colLg]=\"2\" [colXl]=\"2\" (click)=\"onMedaiClick(file)\">\r\n <bsu-file-viewer-content\r\n [selected]=\"scrollToId() === file.Id\"\r\n [cardMode]=\"true\"\r\n [deviceSize]=\"deviceSize\"\r\n [file]=\"file\"\r\n [isThumbnail]=\"true\"\r\n [isImageGallery]=\"isImageGallery\"\r\n ></bsu-file-viewer-content>\r\n </div>\r\n } }\r\n </div>\r\n }\r\n </fd-layout-grid>\r\n</ng-template>\r\n", styles: [":host{display:flex;flex-direction:row-reverse}:host .gallery{overflow:auto}:host .gallery .pics{position:relative}:host.horizontal{flex-direction:column}:host.horizontal fd-dialog-body ::ng-deep>section{flex-direction:column}:host.horizontal .gallery{flex-direction:row;flex:1}:host.horizontal .thumbnail{min-height:7rem;height:7rem;max-height:7rem;flex:1;border-top:1px solid #ccc;overflow-x:auto}:host.horizontal .thumbnail ::ng-deep fd-card,:host.horizontal .thumbnail ::ng-deep img{height:5rem}:host.horizontal .thumbnail .fd-row{flex-wrap:nowrap}:host.vertical fd-dialog-body ::ng-deep>section{flex-direction:row-reverse;padding:0;height:100%}:host.vertical .gallery{flex-direction:column;height:100%;flex:1;border-right:var(--sapList_BorderWidth) solid var(--sapList_BorderColor)}:host.vertical .thumbnail{position:sticky;top:0;border-bottom:var(--sapList_BorderWidth) solid var(--sapList_BorderColor);height:100%;width:8rem;overflow-y:auto}:host.vertical .thumbnail ::ng-deep .fd-row>div{width:100%;min-width:100%}:host.vertical .thumbnail ::ng-deep fd-card{min-height:6rem;max-height:6rem;min-width:6rem;max-width:6rem}:host.vertical .thumbnail ::ng-deep fd-card img{height:5rem}\n"] }]
4721
+ args: [{ selector: 'bsu-file-gallery-viewer', standalone: false, template: "@if (isImageGallery) {\r\n<div #galleryContainer class=\"gallery inDialog\">\r\n @for (groupItem of groupList; track groupItem.Id; let i = $index) { @for (media of files; track media; let i =\r\n $index) { @if(media.groupId===groupItem.Id){\r\n <bsu-file-viewer-content\r\n #fileViewerContent\r\n [attr.id]=\"'fv_gl_' + media.Id\"\r\n [deviceSize]=\"deviceSize\"\r\n [file]=\"media\"\r\n [imageOnly]=\"true\"\r\n [fillWidth]=\"fillWidth\"\r\n [isImageGallery]=\"isImageGallery\"\r\n (imageLoaded)=\"onImageLoaded(i)\"\r\n ></bsu-file-viewer-content>\r\n } } } @for (media of files; track media; let i = $index) { @if(!groupList?.length || !media.groupId ||\r\n media.groupId===\"0\"){\r\n <bsu-file-viewer-content\r\n #fileViewerContent\r\n [attr.id]=\"'fv_gl_' + media.Id\"\r\n [deviceSize]=\"deviceSize\"\r\n [file]=\"media\"\r\n [imageOnly]=\"true\"\r\n [fillWidth]=\"fillWidth\"\r\n [isImageGallery]=\"isImageGallery\"\r\n (imageLoaded)=\"onImageLoaded(i)\"\r\n ></bsu-file-viewer-content>\r\n } }\r\n</div>\r\n} @if (!isImageGallery) {\r\n<div class=\"gallery\">\r\n @if (selectedFile) {\r\n <bsu-file-viewer-content\r\n [deviceSize]=\"deviceSize\"\r\n [fillWidth]=\"fillWidth\"\r\n [file]=\"selectedFile\"\r\n [isImageGallery]=\"isImageGallery\"\r\n ></bsu-file-viewer-content>\r\n }\r\n</div>\r\n} @if (files.length > 1 &&( (deviceSize !== 's' && isImageGallery) || (isHorizontal && files.length>1))) {\r\n<div class=\"thumbnail\" style=\"flex-shrink: 1\">\r\n <ng-container *ngTemplateOutlet=\"layoutGridTpl; context: { $implicit: files }\"></ng-container>\r\n</div>\r\n}\r\n<ng-template #layoutGridTpl let-files>\r\n <fd-layout-grid class=\"!tw-p-0\">\r\n <div fdLayoutGridRow>\r\n @for (groupItem of groupList; track groupItem.Id; let i = $index) {\r\n <div [fdLayoutGridCol]=\"6\" [colMd]=\"3\" [colLg]=\"2\" [colXl]=\"2\">\r\n <fd-panel [collapsed]=\"false\">\r\n <div fd-panel-title>{{ groupItem.Name }}</div>\r\n <div fd-panel-content class=\"tw-flex tw-justify-center tw-items-center tw-flex-col tw-gap-2\">\r\n @for (media of files; track media; let i = $index) { @if(media.groupId===groupItem.Id){\r\n <bsu-file-viewer-content\r\n class=\"tw-items-center\"\r\n (click)=\"onMedaiClick(media)\"\r\n [selected]=\"scrollToId() === media.Id\"\r\n [cardMode]=\"true\"\r\n [deviceSize]=\"deviceSize\"\r\n [file]=\"media\"\r\n [isThumbnail]=\"true\"\r\n [isImageGallery]=\"isImageGallery\"\r\n ></bsu-file-viewer-content>\r\n } }\r\n </div>\r\n </fd-panel>\r\n </div>\r\n } @for (file of files; track file; let i = $index) { @if(!groupList?.length || file.groupId===\"0\" || !file.groupId){\r\n <div [fdLayoutGridCol]=\"6\" [colMd]=\"3\" [colLg]=\"2\" [colXl]=\"2\" (click)=\"onMedaiClick(file)\">\r\n <bsu-file-viewer-content\r\n [selected]=\"scrollToId() === file.Id\"\r\n [cardMode]=\"true\"\r\n [deviceSize]=\"deviceSize\"\r\n [file]=\"file\"\r\n [isThumbnail]=\"true\"\r\n [isImageGallery]=\"isImageGallery\"\r\n ></bsu-file-viewer-content>\r\n </div>\r\n } }\r\n </div>\r\n </fd-layout-grid>\r\n</ng-template>\r\n", styles: [":host{display:flex;flex-direction:row-reverse}:host .gallery{overflow:auto}:host .gallery .pics{position:relative}:host.horizontal{flex-direction:column}:host.horizontal fd-dialog-body ::ng-deep>section{flex-direction:column}:host.horizontal .gallery{flex-direction:row;flex:1}:host.horizontal .thumbnail{min-height:7rem;height:7rem;max-height:7rem;flex:1;border-top:1px solid #ccc;overflow-x:auto}:host.horizontal .thumbnail ::ng-deep fd-card,:host.horizontal .thumbnail ::ng-deep img{height:5rem}:host.horizontal .thumbnail .fd-row{flex-wrap:nowrap}:host.vertical fd-dialog-body ::ng-deep>section{flex-direction:row-reverse;padding:0;height:100%}:host.vertical .gallery{flex-direction:column;height:100%;flex:1;border-right:var(--sapList_BorderWidth) solid var(--sapList_BorderColor)}:host.vertical .thumbnail{position:sticky;top:0;border-bottom:var(--sapList_BorderWidth) solid var(--sapList_BorderColor);height:100%;width:8rem;overflow-y:auto}:host.vertical .thumbnail ::ng-deep .fd-row>div{width:100%;min-width:100%}:host.vertical .thumbnail ::ng-deep fd-card{min-height:6rem;max-height:6rem;min-width:6rem;max-width:6rem}:host.vertical .thumbnail ::ng-deep fd-card img{height:5rem}\n"] }]
4719
4722
  }], propDecorators: { listOfFileViewerContent: [{
4720
4723
  type: ViewChildren,
4721
4724
  args: ['fileViewerContent']
@@ -4808,14 +4811,14 @@ class FullscreenFilesDirective {
4808
4811
  isImageGallery: this.isImageGallery,
4809
4812
  files: this.files,
4810
4813
  title: this.title,
4811
- selectedIndex: this.selectedIndex,
4814
+ selectedId: this.selectedId,
4812
4815
  deviceSize: this.deviceSize
4813
4816
  },
4814
4817
  mobile: true
4815
4818
  });
4816
4819
  }
4817
4820
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: FullscreenFilesDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
4818
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.0.6", type: FullscreenFilesDirective, isStandalone: false, selector: "[fullscreenFiles]", inputs: { files: "files", selectedIndex: "selectedIndex", title: "title", deviceSize: "deviceSize", isImageGallery: "isImageGallery", component: "component" }, host: { listeners: { "click": "_handleClick()" } }, ngImport: i0 }); }
4821
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.0.6", type: FullscreenFilesDirective, isStandalone: false, selector: "[fullscreenFiles]", inputs: { files: "files", selectedId: "selectedId", title: "title", deviceSize: "deviceSize", isImageGallery: "isImageGallery", component: "component" }, host: { listeners: { "click": "_handleClick()" } }, ngImport: i0 }); }
4819
4822
  }
4820
4823
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: FullscreenFilesDirective, decorators: [{
4821
4824
  type: Directive,
@@ -4825,7 +4828,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
4825
4828
  }]
4826
4829
  }], propDecorators: { files: [{
4827
4830
  type: Input
4828
- }], selectedIndex: [{
4831
+ }], selectedId: [{
4829
4832
  type: Input
4830
4833
  }], title: [{
4831
4834
  type: Input
@@ -4878,17 +4881,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
4878
4881
 
4879
4882
  class BarsaBarDownloadFileComponent extends BaseViewItemPropsComponent {
4880
4883
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BarsaBarDownloadFileComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
4881
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: BarsaBarDownloadFileComponent, isStandalone: false, selector: "bsu-barsa-bar-download-file", inputs: { popover: "popover", file: "file", files: "files", hideFullScreen: "hideFullScreen", isMobile: "isMobile", canPrint: "canPrint", selectedIndex: "selectedIndex", deviceSize: "deviceSize" }, providers: [UploadService], usesInheritance: true, ngImport: i0, template: "<div fd-bar barDesign=\"footer\">\r\n <div fd-bar-right>\r\n <fd-button-bar\r\n fdType=\"transparent\"\r\n glyph=\"download\"\r\n downloadFiles\r\n [files]=\"file ? [file] : files\"\r\n (click)=\"popover.close()\"\r\n ></fd-button-bar>\r\n @if (!isMobile && !hideFullScreen) {\r\n <fd-button-bar\r\n fdType=\"transparent\"\r\n glyph=\"resize\"\r\n fullscreenFiles\r\n [deviceSize]=\"deviceSize\"\r\n [files]=\"files\"\r\n [selectedIndex]=\"selectedIndex\"\r\n (click)=\"popover.close()\"\r\n ></fd-button-bar>\r\n } @if (canPrint) {\r\n <fd-button-bar\r\n fdType=\"transparent\"\r\n glyph=\"print\"\r\n printFiles\r\n [deviceSize]=\"deviceSize\"\r\n [files]=\"files\"\r\n (click)=\"popover.close()\"\r\n ></fd-button-bar>\r\n }\r\n </div>\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i2.PrintFilesDirective, selector: "[printFiles]", inputs: ["files", "file", "isImageGallery", "component"] }, { kind: "component", type: i3$2.BarComponent, selector: "[fd-bar]", inputs: ["class", "barDesign", "inPage", "inHomePage", "clear", "size", "role"] }, { kind: "directive", type: i3$2.BarRightDirective, selector: "[fd-bar-right]" }, { kind: "component", type: i3$2.ButtonBarComponent, selector: "fd-button-bar", inputs: ["fullWidth", "fdType", "title", "ariaLabelledby", "id"] }, { kind: "directive", type: FullscreenFilesDirective, selector: "[fullscreenFiles]", inputs: ["files", "selectedIndex", "title", "deviceSize", "isImageGallery", "component"] }, { kind: "directive", type: DownloadFilesDirective, selector: "[downloadFiles]", inputs: ["files", "nozip"] }] }); }
4884
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: BarsaBarDownloadFileComponent, isStandalone: false, selector: "bsu-barsa-bar-download-file", inputs: { popover: "popover", file: "file", files: "files", selectedId: "selectedId", hideFullScreen: "hideFullScreen", isMobile: "isMobile", canPrint: "canPrint", selectedIndex: "selectedIndex", deviceSize: "deviceSize" }, providers: [UploadService], usesInheritance: true, ngImport: i0, template: "<div fd-bar barDesign=\"footer\">\r\n <div fd-bar-right>\r\n <fd-button-bar\r\n fdType=\"transparent\"\r\n glyph=\"download\"\r\n downloadFiles\r\n [files]=\"file ? [file] : files\"\r\n (click)=\"popover.close()\"\r\n ></fd-button-bar>\r\n @if (!isMobile && !hideFullScreen) {\r\n <fd-button-bar\r\n fdType=\"transparent\"\r\n glyph=\"resize\"\r\n fullscreenFiles\r\n [deviceSize]=\"deviceSize\"\r\n [files]=\"files\"\r\n [selectedId]=\"selectedId\"\r\n (click)=\"popover.close()\"\r\n ></fd-button-bar>\r\n } @if (canPrint) {\r\n <fd-button-bar\r\n fdType=\"transparent\"\r\n glyph=\"print\"\r\n printFiles\r\n [deviceSize]=\"deviceSize\"\r\n [files]=\"files\"\r\n (click)=\"popover.close()\"\r\n ></fd-button-bar>\r\n }\r\n </div>\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i2.PrintFilesDirective, selector: "[printFiles]", inputs: ["files", "file", "isImageGallery", "component"] }, { kind: "component", type: i3$2.BarComponent, selector: "[fd-bar]", inputs: ["class", "barDesign", "inPage", "inHomePage", "clear", "size", "role"] }, { kind: "directive", type: i3$2.BarRightDirective, selector: "[fd-bar-right]" }, { kind: "component", type: i3$2.ButtonBarComponent, selector: "fd-button-bar", inputs: ["fullWidth", "fdType", "title", "ariaLabelledby", "id"] }, { kind: "directive", type: FullscreenFilesDirective, selector: "[fullscreenFiles]", inputs: ["files", "selectedId", "title", "deviceSize", "isImageGallery", "component"] }, { kind: "directive", type: DownloadFilesDirective, selector: "[downloadFiles]", inputs: ["files", "nozip"] }] }); }
4882
4885
  }
4883
4886
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BarsaBarDownloadFileComponent, decorators: [{
4884
4887
  type: Component,
4885
- args: [{ selector: 'bsu-barsa-bar-download-file', providers: [UploadService], standalone: false, template: "<div fd-bar barDesign=\"footer\">\r\n <div fd-bar-right>\r\n <fd-button-bar\r\n fdType=\"transparent\"\r\n glyph=\"download\"\r\n downloadFiles\r\n [files]=\"file ? [file] : files\"\r\n (click)=\"popover.close()\"\r\n ></fd-button-bar>\r\n @if (!isMobile && !hideFullScreen) {\r\n <fd-button-bar\r\n fdType=\"transparent\"\r\n glyph=\"resize\"\r\n fullscreenFiles\r\n [deviceSize]=\"deviceSize\"\r\n [files]=\"files\"\r\n [selectedIndex]=\"selectedIndex\"\r\n (click)=\"popover.close()\"\r\n ></fd-button-bar>\r\n } @if (canPrint) {\r\n <fd-button-bar\r\n fdType=\"transparent\"\r\n glyph=\"print\"\r\n printFiles\r\n [deviceSize]=\"deviceSize\"\r\n [files]=\"files\"\r\n (click)=\"popover.close()\"\r\n ></fd-button-bar>\r\n }\r\n </div>\r\n</div>\r\n" }]
4888
+ args: [{ selector: 'bsu-barsa-bar-download-file', providers: [UploadService], standalone: false, template: "<div fd-bar barDesign=\"footer\">\r\n <div fd-bar-right>\r\n <fd-button-bar\r\n fdType=\"transparent\"\r\n glyph=\"download\"\r\n downloadFiles\r\n [files]=\"file ? [file] : files\"\r\n (click)=\"popover.close()\"\r\n ></fd-button-bar>\r\n @if (!isMobile && !hideFullScreen) {\r\n <fd-button-bar\r\n fdType=\"transparent\"\r\n glyph=\"resize\"\r\n fullscreenFiles\r\n [deviceSize]=\"deviceSize\"\r\n [files]=\"files\"\r\n [selectedId]=\"selectedId\"\r\n (click)=\"popover.close()\"\r\n ></fd-button-bar>\r\n } @if (canPrint) {\r\n <fd-button-bar\r\n fdType=\"transparent\"\r\n glyph=\"print\"\r\n printFiles\r\n [deviceSize]=\"deviceSize\"\r\n [files]=\"files\"\r\n (click)=\"popover.close()\"\r\n ></fd-button-bar>\r\n }\r\n </div>\r\n</div>\r\n" }]
4886
4889
  }], propDecorators: { popover: [{
4887
4890
  type: Input
4888
4891
  }], file: [{
4889
4892
  type: Input
4890
4893
  }], files: [{
4891
4894
  type: Input
4895
+ }], selectedId: [{
4896
+ type: Input
4892
4897
  }], hideFullScreen: [{
4893
4898
  type: Input
4894
4899
  }], isMobile: [{
@@ -4909,11 +4914,11 @@ class FileViewerPopoverComponent extends BaseComponent {
4909
4914
  this.popoverOpened = false;
4910
4915
  }
4911
4916
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: FileViewerPopoverComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
4912
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: FileViewerPopoverComponent, isStandalone: false, selector: "bsu-file-viewer-popover", inputs: { files: "files", file: "file", index: "index", deviceSize: "deviceSize", canDownload: "canDownload", disableRemove: "disableRemove", fdType: "fdType", attachmentViewType: "attachmentViewType" }, outputs: { remove: "remove" }, usesInheritance: true, ngImport: i0, template: "<div style=\"display: flex; align-items: center; column-gap: 1px\">\r\n <button\r\n fd-button\r\n [fdPopoverTrigger]=\"deviceSize === 's' ? popoverMobile : popoverLarge\"\r\n [label]=\"attachmentViewType === 1 ? ('\u0645\u0634\u0627\u0647\u062F\u0647' | bbbTranslate) : file.FileName || ''\"\r\n [title]=\"attachmentViewType === 1 ? ('\u0645\u0634\u0627\u0647\u062F\u0647' | bbbTranslate) : file.FileName || ''\"\r\n [glyph]=\"attachmentViewType === 1 ? '' : 'attachment'\"\r\n [fdMenu]=\"deviceSize === 's' || attachmentViewType === 1 ? false : true\"\r\n [fdType]=\"fdType\"\r\n class=\"btn-actionsheet\"\r\n (click)=\"popoverOpened = true\"\r\n ></button>\r\n <fd-popover\r\n #popoverMobile\r\n [mobile]=\"true\"\r\n [mobileConfig]=\"{ title: file?.FileName || 'ShowFiles' | bbbTranslate, hasCloseButton: true }\"\r\n >\r\n <ng-template #popoverBodyContent>\r\n @if(popoverOpened){\r\n <ng-container\r\n *ngTemplateOutlet=\"popoverbodyTpl; context: { $implicit: popoverMobile, mobile: true }\"\r\n ></ng-container>\r\n }\r\n </ng-template>\r\n </fd-popover>\r\n <fd-popover #popoverLarge>\r\n <fd-popover-body class=\"file-viewer-popover-body\">\r\n @if(popoverOpened){\r\n <ng-container\r\n *ngTemplateOutlet=\"popoverbodyTpl; context: { $implicit: popoverLarge, mobile: false }\"\r\n ></ng-container>\r\n }\r\n </fd-popover-body>\r\n </fd-popover>\r\n\r\n @if (!disableRemove) {\r\n <button fd-button glyph=\"delete\" (click)=\"remove.emit()\"></button>\r\n }\r\n</div>\r\n\r\n<ng-template #popoverbodyTpl let-popover let-mobile=\"mobile\">\r\n <!-- <div fd-popover-body-header>\r\n <div fd-bar [cozy]=\"true\" id=\"popover-bar-header-3\">\r\n <div fd-bar-left>\r\n <fd-bar-element>{{ file.FileName }}</fd-bar-element>\r\n </div>\r\n </div>\r\n </div> -->\r\n <bsu-file-viewer-content\r\n [file]=\"file\"\r\n [width]=\"mobile ? '100vw' : '30vw'\"\r\n [cardMode]=\"true\"\r\n [showContent]=\"true\"\r\n [showFooter]=\"true\"\r\n [deviceSize]=\"deviceSize || 's'\"\r\n (cantView)=\"hideFullScreen = true\"\r\n [class.mobile]=\"mobile\"\r\n ></bsu-file-viewer-content>\r\n @if (canDownload) {\r\n <div fd-popover-body-footer>\r\n <bsu-barsa-bar-download-file\r\n [isMobile]=\"mobile\"\r\n [popover]=\"popover\"\r\n [files]=\"files?.length ? files : [file]\"\r\n [file]=\"file\"\r\n [selectedIndex]=\"index\"\r\n [deviceSize]=\"deviceSize || 's'\"\r\n [hideFullScreen]=\"hideFullScreen\"\r\n ></bsu-barsa-bar-download-file>\r\n </div>\r\n }\r\n</ng-template>\r\n", styles: [":host{display:block}.btn-actionsheet{width:100%!important;max-width:100%!important}.box{display:flex;flex-direction:column;width:175px;height:120px;position:relative;border:1px solid #ccc}.box .box-content{height:85px;text-align:center;display:flex;align-items:center;justify-content:center}.box .box-content fd-icon{font-size:1.825rem;color:#e5e5e5}.box .box-file-download{background-color:#f5f5f5;border-top:1px solid #e5e5e5;display:flex;gap:.285rem}.box .box-file-download .icon{align-items:center;float:left;display:-webkit-box;display:-webkit-flex;display:flex;height:32px;-webkit-justify-content:center;justify-content:center;width:32px}.box .box-file-download .filename-wrapper{display:flex;overflow:hidden}.box .box-file-download .filename{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#777;font-size:12px;font-weight:700;line-height:16px;margin-top:8px;word-wrap:normal}.box .download-wrapper{display:none}.box.onside{background:#f5f5f5}.box.onside .box-content{display:none}.box.onside .box-file-download{border-top:none;height:85px}.box.onside .download-wrapper{display:flex;gap:.285rem;justify-content:center}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.MobileDirective, selector: "[mobile]" }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i7$1.PopoverBodyComponent, selector: "fd-popover-body", inputs: ["minWidth", "maxWidth", "minHeight", "maxHeight"] }, { kind: "directive", type: i7$1.PopoverBodyFooterDirective, selector: "[fdPopoverBodyFooter], [fd-popover-body-footer]" }, { kind: "component", type: i7$1.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig", "preventSpaceKeyScroll"] }, { kind: "directive", type: i7$1.PopoverTriggerDirective, selector: "[fdPopoverTrigger], [fd-popover-trigger]", inputs: ["fdPopoverTrigger"] }, { kind: "component", type: BarsaBarDownloadFileComponent, selector: "bsu-barsa-bar-download-file", inputs: ["popover", "file", "files", "hideFullScreen", "isMobile", "canPrint", "selectedIndex", "deviceSize"] }, { kind: "component", type: FileViewerContentComponent, selector: "bsu-file-viewer-content", inputs: ["fillWidth", "imageOnly", "isImageGallery", "cardMode", "showFooter", "showContent", "selected", "width", "deviceSize", "cardContentHeight", "file", "isThumbnail"], outputs: ["cantView", "imageLoaded"] }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
4917
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: FileViewerPopoverComponent, isStandalone: false, selector: "bsu-file-viewer-popover", inputs: { files: "files", file: "file", index: "index", deviceSize: "deviceSize", canDownload: "canDownload", disableRemove: "disableRemove", fdType: "fdType", attachmentViewType: "attachmentViewType" }, outputs: { remove: "remove" }, usesInheritance: true, ngImport: i0, template: "<div style=\"display: flex; align-items: center; column-gap: 1px\">\r\n <button\r\n fd-button\r\n [fdPopoverTrigger]=\"deviceSize === 's' ? popoverMobile : popoverLarge\"\r\n [label]=\"attachmentViewType === 1 ? ('\u0645\u0634\u0627\u0647\u062F\u0647' | bbbTranslate) : file.FileName || ''\"\r\n [title]=\"attachmentViewType === 1 ? ('\u0645\u0634\u0627\u0647\u062F\u0647' | bbbTranslate) : file.FileName || ''\"\r\n [glyph]=\"attachmentViewType === 1 ? '' : 'attachment'\"\r\n [fdMenu]=\"deviceSize === 's' || attachmentViewType === 1 ? false : true\"\r\n [fdType]=\"fdType\"\r\n class=\"btn-actionsheet\"\r\n (click)=\"popoverOpened = true\"\r\n ></button>\r\n <fd-popover\r\n #popoverMobile\r\n [mobile]=\"true\"\r\n [mobileConfig]=\"{ title: file?.FileName || 'ShowFiles' | bbbTranslate, hasCloseButton: true }\"\r\n >\r\n <ng-template #popoverBodyContent>\r\n @if(popoverOpened){\r\n <ng-container\r\n *ngTemplateOutlet=\"popoverbodyTpl; context: { $implicit: popoverMobile, mobile: true }\"\r\n ></ng-container>\r\n }\r\n </ng-template>\r\n </fd-popover>\r\n <fd-popover #popoverLarge>\r\n <fd-popover-body class=\"file-viewer-popover-body\">\r\n @if(popoverOpened){\r\n <ng-container\r\n *ngTemplateOutlet=\"popoverbodyTpl; context: { $implicit: popoverLarge, mobile: false }\"\r\n ></ng-container>\r\n }\r\n </fd-popover-body>\r\n </fd-popover>\r\n\r\n @if (!disableRemove) {\r\n <button fd-button glyph=\"delete\" (click)=\"remove.emit()\"></button>\r\n }\r\n</div>\r\n\r\n<ng-template #popoverbodyTpl let-popover let-mobile=\"mobile\">\r\n <!-- <div fd-popover-body-header>\r\n <div fd-bar [cozy]=\"true\" id=\"popover-bar-header-3\">\r\n <div fd-bar-left>\r\n <fd-bar-element>{{ file.FileName }}</fd-bar-element>\r\n </div>\r\n </div>\r\n </div> -->\r\n <bsu-file-viewer-content\r\n [file]=\"file\"\r\n [width]=\"mobile ? '100vw' : '30vw'\"\r\n [cardMode]=\"true\"\r\n [showContent]=\"true\"\r\n [showFooter]=\"true\"\r\n [deviceSize]=\"deviceSize || 's'\"\r\n (cantView)=\"hideFullScreen = true\"\r\n [class.mobile]=\"mobile\"\r\n ></bsu-file-viewer-content>\r\n @if (canDownload) {\r\n <div fd-popover-body-footer>\r\n <bsu-barsa-bar-download-file\r\n [isMobile]=\"mobile\"\r\n [popover]=\"popover\"\r\n [files]=\"files?.length ? files : [file]\"\r\n [file]=\"file\"\r\n [selectedId]=\"file.Id\"\r\n [deviceSize]=\"deviceSize || 's'\"\r\n [hideFullScreen]=\"hideFullScreen\"\r\n ></bsu-barsa-bar-download-file>\r\n </div>\r\n }\r\n</ng-template>\r\n", styles: [":host{display:block}.btn-actionsheet{width:100%!important;max-width:100%!important}.box{display:flex;flex-direction:column;width:175px;height:120px;position:relative;border:1px solid #ccc}.box .box-content{height:85px;text-align:center;display:flex;align-items:center;justify-content:center}.box .box-content fd-icon{font-size:1.825rem;color:#e5e5e5}.box .box-file-download{background-color:#f5f5f5;border-top:1px solid #e5e5e5;display:flex;gap:.285rem}.box .box-file-download .icon{align-items:center;float:left;display:-webkit-box;display:-webkit-flex;display:flex;height:32px;-webkit-justify-content:center;justify-content:center;width:32px}.box .box-file-download .filename-wrapper{display:flex;overflow:hidden}.box .box-file-download .filename{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#777;font-size:12px;font-weight:700;line-height:16px;margin-top:8px;word-wrap:normal}.box .download-wrapper{display:none}.box.onside{background:#f5f5f5}.box.onside .box-content{display:none}.box.onside .box-file-download{border-top:none;height:85px}.box.onside .download-wrapper{display:flex;gap:.285rem;justify-content:center}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.MobileDirective, selector: "[mobile]" }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i7$1.PopoverBodyComponent, selector: "fd-popover-body", inputs: ["minWidth", "maxWidth", "minHeight", "maxHeight"] }, { kind: "directive", type: i7$1.PopoverBodyFooterDirective, selector: "[fdPopoverBodyFooter], [fd-popover-body-footer]" }, { kind: "component", type: i7$1.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig", "preventSpaceKeyScroll"] }, { kind: "directive", type: i7$1.PopoverTriggerDirective, selector: "[fdPopoverTrigger], [fd-popover-trigger]", inputs: ["fdPopoverTrigger"] }, { kind: "component", type: BarsaBarDownloadFileComponent, selector: "bsu-barsa-bar-download-file", inputs: ["popover", "file", "files", "selectedId", "hideFullScreen", "isMobile", "canPrint", "selectedIndex", "deviceSize"] }, { kind: "component", type: FileViewerContentComponent, selector: "bsu-file-viewer-content", inputs: ["fillWidth", "imageOnly", "isImageGallery", "cardMode", "showFooter", "showContent", "selected", "width", "deviceSize", "cardContentHeight", "file", "isThumbnail"], outputs: ["cantView", "imageLoaded"] }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
4913
4918
  }
4914
4919
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: FileViewerPopoverComponent, decorators: [{
4915
4920
  type: Component,
4916
- args: [{ selector: 'bsu-file-viewer-popover', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<div style=\"display: flex; align-items: center; column-gap: 1px\">\r\n <button\r\n fd-button\r\n [fdPopoverTrigger]=\"deviceSize === 's' ? popoverMobile : popoverLarge\"\r\n [label]=\"attachmentViewType === 1 ? ('\u0645\u0634\u0627\u0647\u062F\u0647' | bbbTranslate) : file.FileName || ''\"\r\n [title]=\"attachmentViewType === 1 ? ('\u0645\u0634\u0627\u0647\u062F\u0647' | bbbTranslate) : file.FileName || ''\"\r\n [glyph]=\"attachmentViewType === 1 ? '' : 'attachment'\"\r\n [fdMenu]=\"deviceSize === 's' || attachmentViewType === 1 ? false : true\"\r\n [fdType]=\"fdType\"\r\n class=\"btn-actionsheet\"\r\n (click)=\"popoverOpened = true\"\r\n ></button>\r\n <fd-popover\r\n #popoverMobile\r\n [mobile]=\"true\"\r\n [mobileConfig]=\"{ title: file?.FileName || 'ShowFiles' | bbbTranslate, hasCloseButton: true }\"\r\n >\r\n <ng-template #popoverBodyContent>\r\n @if(popoverOpened){\r\n <ng-container\r\n *ngTemplateOutlet=\"popoverbodyTpl; context: { $implicit: popoverMobile, mobile: true }\"\r\n ></ng-container>\r\n }\r\n </ng-template>\r\n </fd-popover>\r\n <fd-popover #popoverLarge>\r\n <fd-popover-body class=\"file-viewer-popover-body\">\r\n @if(popoverOpened){\r\n <ng-container\r\n *ngTemplateOutlet=\"popoverbodyTpl; context: { $implicit: popoverLarge, mobile: false }\"\r\n ></ng-container>\r\n }\r\n </fd-popover-body>\r\n </fd-popover>\r\n\r\n @if (!disableRemove) {\r\n <button fd-button glyph=\"delete\" (click)=\"remove.emit()\"></button>\r\n }\r\n</div>\r\n\r\n<ng-template #popoverbodyTpl let-popover let-mobile=\"mobile\">\r\n <!-- <div fd-popover-body-header>\r\n <div fd-bar [cozy]=\"true\" id=\"popover-bar-header-3\">\r\n <div fd-bar-left>\r\n <fd-bar-element>{{ file.FileName }}</fd-bar-element>\r\n </div>\r\n </div>\r\n </div> -->\r\n <bsu-file-viewer-content\r\n [file]=\"file\"\r\n [width]=\"mobile ? '100vw' : '30vw'\"\r\n [cardMode]=\"true\"\r\n [showContent]=\"true\"\r\n [showFooter]=\"true\"\r\n [deviceSize]=\"deviceSize || 's'\"\r\n (cantView)=\"hideFullScreen = true\"\r\n [class.mobile]=\"mobile\"\r\n ></bsu-file-viewer-content>\r\n @if (canDownload) {\r\n <div fd-popover-body-footer>\r\n <bsu-barsa-bar-download-file\r\n [isMobile]=\"mobile\"\r\n [popover]=\"popover\"\r\n [files]=\"files?.length ? files : [file]\"\r\n [file]=\"file\"\r\n [selectedIndex]=\"index\"\r\n [deviceSize]=\"deviceSize || 's'\"\r\n [hideFullScreen]=\"hideFullScreen\"\r\n ></bsu-barsa-bar-download-file>\r\n </div>\r\n }\r\n</ng-template>\r\n", styles: [":host{display:block}.btn-actionsheet{width:100%!important;max-width:100%!important}.box{display:flex;flex-direction:column;width:175px;height:120px;position:relative;border:1px solid #ccc}.box .box-content{height:85px;text-align:center;display:flex;align-items:center;justify-content:center}.box .box-content fd-icon{font-size:1.825rem;color:#e5e5e5}.box .box-file-download{background-color:#f5f5f5;border-top:1px solid #e5e5e5;display:flex;gap:.285rem}.box .box-file-download .icon{align-items:center;float:left;display:-webkit-box;display:-webkit-flex;display:flex;height:32px;-webkit-justify-content:center;justify-content:center;width:32px}.box .box-file-download .filename-wrapper{display:flex;overflow:hidden}.box .box-file-download .filename{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#777;font-size:12px;font-weight:700;line-height:16px;margin-top:8px;word-wrap:normal}.box .download-wrapper{display:none}.box.onside{background:#f5f5f5}.box.onside .box-content{display:none}.box.onside .box-file-download{border-top:none;height:85px}.box.onside .download-wrapper{display:flex;gap:.285rem;justify-content:center}\n"] }]
4921
+ args: [{ selector: 'bsu-file-viewer-popover', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<div style=\"display: flex; align-items: center; column-gap: 1px\">\r\n <button\r\n fd-button\r\n [fdPopoverTrigger]=\"deviceSize === 's' ? popoverMobile : popoverLarge\"\r\n [label]=\"attachmentViewType === 1 ? ('\u0645\u0634\u0627\u0647\u062F\u0647' | bbbTranslate) : file.FileName || ''\"\r\n [title]=\"attachmentViewType === 1 ? ('\u0645\u0634\u0627\u0647\u062F\u0647' | bbbTranslate) : file.FileName || ''\"\r\n [glyph]=\"attachmentViewType === 1 ? '' : 'attachment'\"\r\n [fdMenu]=\"deviceSize === 's' || attachmentViewType === 1 ? false : true\"\r\n [fdType]=\"fdType\"\r\n class=\"btn-actionsheet\"\r\n (click)=\"popoverOpened = true\"\r\n ></button>\r\n <fd-popover\r\n #popoverMobile\r\n [mobile]=\"true\"\r\n [mobileConfig]=\"{ title: file?.FileName || 'ShowFiles' | bbbTranslate, hasCloseButton: true }\"\r\n >\r\n <ng-template #popoverBodyContent>\r\n @if(popoverOpened){\r\n <ng-container\r\n *ngTemplateOutlet=\"popoverbodyTpl; context: { $implicit: popoverMobile, mobile: true }\"\r\n ></ng-container>\r\n }\r\n </ng-template>\r\n </fd-popover>\r\n <fd-popover #popoverLarge>\r\n <fd-popover-body class=\"file-viewer-popover-body\">\r\n @if(popoverOpened){\r\n <ng-container\r\n *ngTemplateOutlet=\"popoverbodyTpl; context: { $implicit: popoverLarge, mobile: false }\"\r\n ></ng-container>\r\n }\r\n </fd-popover-body>\r\n </fd-popover>\r\n\r\n @if (!disableRemove) {\r\n <button fd-button glyph=\"delete\" (click)=\"remove.emit()\"></button>\r\n }\r\n</div>\r\n\r\n<ng-template #popoverbodyTpl let-popover let-mobile=\"mobile\">\r\n <!-- <div fd-popover-body-header>\r\n <div fd-bar [cozy]=\"true\" id=\"popover-bar-header-3\">\r\n <div fd-bar-left>\r\n <fd-bar-element>{{ file.FileName }}</fd-bar-element>\r\n </div>\r\n </div>\r\n </div> -->\r\n <bsu-file-viewer-content\r\n [file]=\"file\"\r\n [width]=\"mobile ? '100vw' : '30vw'\"\r\n [cardMode]=\"true\"\r\n [showContent]=\"true\"\r\n [showFooter]=\"true\"\r\n [deviceSize]=\"deviceSize || 's'\"\r\n (cantView)=\"hideFullScreen = true\"\r\n [class.mobile]=\"mobile\"\r\n ></bsu-file-viewer-content>\r\n @if (canDownload) {\r\n <div fd-popover-body-footer>\r\n <bsu-barsa-bar-download-file\r\n [isMobile]=\"mobile\"\r\n [popover]=\"popover\"\r\n [files]=\"files?.length ? files : [file]\"\r\n [file]=\"file\"\r\n [selectedId]=\"file.Id\"\r\n [deviceSize]=\"deviceSize || 's'\"\r\n [hideFullScreen]=\"hideFullScreen\"\r\n ></bsu-barsa-bar-download-file>\r\n </div>\r\n }\r\n</ng-template>\r\n", styles: [":host{display:block}.btn-actionsheet{width:100%!important;max-width:100%!important}.box{display:flex;flex-direction:column;width:175px;height:120px;position:relative;border:1px solid #ccc}.box .box-content{height:85px;text-align:center;display:flex;align-items:center;justify-content:center}.box .box-content fd-icon{font-size:1.825rem;color:#e5e5e5}.box .box-file-download{background-color:#f5f5f5;border-top:1px solid #e5e5e5;display:flex;gap:.285rem}.box .box-file-download .icon{align-items:center;float:left;display:-webkit-box;display:-webkit-flex;display:flex;height:32px;-webkit-justify-content:center;justify-content:center;width:32px}.box .box-file-download .filename-wrapper{display:flex;overflow:hidden}.box .box-file-download .filename{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#777;font-size:12px;font-weight:700;line-height:16px;margin-top:8px;word-wrap:normal}.box .download-wrapper{display:none}.box.onside{background:#f5f5f5}.box.onside .box-content{display:none}.box.onside .box-file-download{border-top:none;height:85px}.box.onside .download-wrapper{display:flex;gap:.285rem;justify-content:center}\n"] }]
4917
4922
  }], propDecorators: { files: [{
4918
4923
  type: Input
4919
4924
  }], file: [{
@@ -4976,7 +4981,7 @@ class ColumnRendererComponent extends BaseComponent {
4976
4981
  this._renderer2.setStyle(this._filePopover.nativeElement, 'max-width', `${this.containerDom?.offsetWidth}px`);
4977
4982
  }
4978
4983
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: ColumnRendererComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
4979
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: ColumnRendererComponent, isStandalone: false, selector: "bsu-column-renderer,[colRenderer]", inputs: { cellEdit: "cellEdit", column: "column", allColumns: "allColumns", mo: "mo", index: "index", editMode: "editMode", attachmentViewType: "attachmentViewType", 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\r\n class=\"renderGeneral\"\r\n [class.onlyIcon]=\"column.Extra?.IconDisplayTypeEnum === 'Image'\"\r\n [style.width]=\"\"\r\n [attr.title]=\"value\"\r\n >\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 [columnValue]=\"value\"\r\n (ellapsised)=\"onElapsised($event)\"\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 [cellEdit]=\"cellEdit\"\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;let index=$index) { @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 [index]=\"index\"\r\n [attachmentViewType]=\"+attachmentViewType\"\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}.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;font-weight:inherit}\n"], dependencies: [{ kind: "directive", type: i1.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: "directive", type: i2.ColumnValueDirective, selector: "[columnValue]", inputs: ["columnValue"] }, { kind: "component", type: i3$7.AvatarComponent, selector: "fd-avatar", inputs: ["class", "id", "ariaLabel", "ariaLabelledby", "label", "size", "font", "glyph", "zoomGlyph", "circle", "interactive", "transparent", "contain", "placeholder", "tile", "border", "colorAccent", "colorIndication", "random", "clickable", "valueState", "image", "alterIcon", "backupImage"], outputs: ["avatarClicked", "zoomGlyphClicked"] }, { kind: "component", type: i3.IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "color", "background", "class", "ariaLabel", "ariaHidden"] }, { kind: "component", type: i5$2.TextComponent, selector: "fd-text", inputs: ["text", "maxLines", "whitespaces", "hyphenation", "expandable", "isCollapsed"], outputs: ["isCollapsedChange"] }, { kind: "component", type: LayoutControlComponent, selector: "bsu-layout-control", inputs: ["inlineEdit", "cellEdit", "caption", "focusControl", "showLabel", "maxLabelWidth", "hasHorizontalText", "contentDensity", "flex", "RefreshLabel", "SetVisible"], outputs: ["events"] }, { kind: "component", type: FileViewerPopoverComponent, selector: "bsu-file-viewer-popover", inputs: ["files", "file", "index", "deviceSize", "canDownload", "disableRemove", "fdType", "attachmentViewType"], outputs: ["remove"] }, { kind: "directive", type: FullscreenFilesDirective, selector: "[fullscreenFiles]", inputs: ["files", "selectedIndex", "title", "deviceSize", "isImageGallery", "component"] }, { kind: "pipe", type: i2.PictureFieldSourcePipe, name: "picFieldSrc" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
4984
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: ColumnRendererComponent, isStandalone: false, selector: "bsu-column-renderer,[colRenderer]", inputs: { cellEdit: "cellEdit", column: "column", allColumns: "allColumns", mo: "mo", index: "index", editMode: "editMode", attachmentViewType: "attachmentViewType", 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\r\n class=\"renderGeneral\"\r\n [class.onlyIcon]=\"column.Extra?.IconDisplayTypeEnum === 'Image'\"\r\n [style.width]=\"\"\r\n [attr.title]=\"value\"\r\n >\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 [columnValue]=\"value\"\r\n (ellapsised)=\"onElapsised($event)\"\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 [cellEdit]=\"cellEdit\"\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;let index=$index) { @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 [index]=\"index\"\r\n [attachmentViewType]=\"+attachmentViewType\"\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}.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;font-weight:inherit}\n"], dependencies: [{ kind: "directive", type: i1.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: "directive", type: i2.ColumnValueDirective, selector: "[columnValue]", inputs: ["columnValue"] }, { kind: "component", type: i3$7.AvatarComponent, selector: "fd-avatar", inputs: ["class", "id", "ariaLabel", "ariaLabelledby", "label", "size", "font", "glyph", "zoomGlyph", "circle", "interactive", "transparent", "contain", "placeholder", "tile", "border", "colorAccent", "colorIndication", "random", "clickable", "valueState", "image", "alterIcon", "backupImage"], outputs: ["avatarClicked", "zoomGlyphClicked"] }, { kind: "component", type: i3.IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "color", "background", "class", "ariaLabel", "ariaHidden"] }, { kind: "component", type: i5$3.TextComponent, selector: "fd-text", inputs: ["text", "maxLines", "whitespaces", "hyphenation", "expandable", "isCollapsed"], outputs: ["isCollapsedChange"] }, { kind: "component", type: LayoutControlComponent, selector: "bsu-layout-control", inputs: ["inlineEdit", "cellEdit", "caption", "focusControl", "showLabel", "maxLabelWidth", "hasHorizontalText", "contentDensity", "flex", "RefreshLabel", "SetVisible"], outputs: ["events"] }, { kind: "component", type: FileViewerPopoverComponent, selector: "bsu-file-viewer-popover", inputs: ["files", "file", "index", "deviceSize", "canDownload", "disableRemove", "fdType", "attachmentViewType"], outputs: ["remove"] }, { kind: "directive", type: FullscreenFilesDirective, selector: "[fullscreenFiles]", inputs: ["files", "selectedId", "title", "deviceSize", "isImageGallery", "component"] }, { kind: "pipe", type: i2.PictureFieldSourcePipe, name: "picFieldSrc" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
4980
4985
  }
4981
4986
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: ColumnRendererComponent, decorators: [{
4982
4987
  type: Component,
@@ -5037,11 +5042,11 @@ class LyLayoutContainerOfRootComponent extends LayoutPanelBaseComponent {
5037
5042
  this.isMobile = getDeviceIsMobile();
5038
5043
  }
5039
5044
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: LyLayoutContainerOfRootComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
5040
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: LyLayoutContainerOfRootComponent, isStandalone: false, selector: "bsu-ly-layout-container-of-root", host: { properties: { "class.ismobile": "this.isMobile" } }, providers: [LayoutService], viewQueries: [{ propertyName: "viewRef", first: true, predicate: ["viewRefTemplate"], descendants: true, read: ViewContainerRef, static: true }], usesInheritance: true, ngImport: i0, template: "@if (config) { @for (item of config | filterToolbarControl; track item) { @switch (item.xtype) { @case\r\n('Ly.LayoutTabPanel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-tab-container' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-tab-container [config]=\"item\"></bsu-ly-tab-container> -->\r\n} @case ('Ly.LayoutPanel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-layout-panel' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-layout-panel [config]=\"item\"></bsu-ly-layout-panel> -->\r\n} @case ('Ly.LayoutContainer') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n name: 'LyLayoutContainerComponent',\r\n selector: 'bsu-ly-layout-container'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-layout-container [config]=\"item\"></bsu-ly-layout-container> -->\r\n} @case ('Ly.EmptySpace') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n module: item.Type === 'SplitterItem' ? 'BarsaNovinRayCore' : '',\r\n name: item.Type === 'SplitterItem' ? 'SplitterComponent' : 'LyEmptySpaceComponent',\r\n selector: item.Type === 'SplitterItem' ? 'bnrc-splitter' : 'bsu-ly-empty-space'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-empty-space [config]=\"item\"></bsu-ly-empty-space> -->\r\n} @case ('Ly.SimpleLabel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LySimpleLabelComponent', selector: 'bsu-ly-simple-label' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-simple-label [config]=\"item\"></bsu-ly-simple-label> -->\r\n} @case ('Ly.LayoutLine') {\r\n<ng-container\r\n *ngTemplateOutlet=\"dynamicLayout; context: { $implicit: item, name: 'LyLineComponent', selector: 'bsu-ly-line' }\"\r\n></ng-container>\r\n<!-- <bsu-ly-line [isVertical]=\"item.IsVertical\"></bsu-ly-line> -->\r\n} @case ('Ly.LayoutJoin') { @if (item.Type === 'HorizontalJoin') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-horizontal-layout',\r\n name: 'LyLayoutHorizontalComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-horizontal-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-horizontal-layout> -->\r\n} @else {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-vertical-layout',\r\n name: 'LyLayoutVerticalComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-vertical-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-vertical-layout> -->\r\n} } @case ('Ly.LayoutControl') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-layout-control',\r\n name: 'LayoutControlComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-layout-control [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-layout-control> -->\r\n} }\r\n<ng-content></ng-content>\r\n}\r\n<ng-template #dynamicLayout let-config let-selector=\"selector\" let-maxLabelWidth=\"maxLabelWidth\" let-name=\"name\">\r\n <bnrc-dynamic-layout\r\n [config]=\"config\"\r\n [selector]=\"selector\"\r\n [name]=\"name\"\r\n [module]=\"'BarsaSapUi'\"\r\n [moduleFileName]=\"'BarsaSapUi'\"\r\n [maxLabelWidth]=\"(maxLabelWidth$ | async)!!\"\r\n [flex]=\"config.Bounds.width\"\r\n [isSearchPanel]=\"isSearchPanel\"\r\n >\r\n </bnrc-dynamic-layout>\r\n</ng-template>\r\n}\r\n", styles: [":host{display:block;width:100%;height:auto;position:relative}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.DynamicLayoutComponent, selector: "bnrc-dynamic-layout", inputs: ["selector", "module", "name", "parameters", "moduleFileName", "flex", "config", "maxLabelWidth", "hasHorizontalText", "isSearchPanel"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.FilterToolbarControlPipe, name: "filterToolbarControl" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
5045
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: LyLayoutContainerOfRootComponent, isStandalone: false, selector: "bsu-ly-layout-container-of-root", host: { properties: { "class.ismobile": "this.isMobile" } }, providers: [LayoutService], viewQueries: [{ propertyName: "viewRef", first: true, predicate: ["viewRefTemplate"], descendants: true, read: ViewContainerRef, static: true }], usesInheritance: true, ngImport: i0, template: "@if (config) { @for (item of config | filterToolbarControl; track item.id) { @switch (item.xtype) { @case\r\n('Ly.LayoutTabPanel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-tab-container' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-tab-container [config]=\"item\"></bsu-ly-tab-container> -->\r\n} @case ('Ly.LayoutPanel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-layout-panel' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-layout-panel [config]=\"item\"></bsu-ly-layout-panel> -->\r\n} @case ('Ly.LayoutContainer') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n name: 'LyLayoutContainerComponent',\r\n selector: 'bsu-ly-layout-container'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-layout-container [config]=\"item\"></bsu-ly-layout-container> -->\r\n} @case ('Ly.EmptySpace') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n module: item.Type === 'SplitterItem' ? 'BarsaNovinRayCore' : '',\r\n name: item.Type === 'SplitterItem' ? 'SplitterComponent' : 'LyEmptySpaceComponent',\r\n selector: item.Type === 'SplitterItem' ? 'bnrc-splitter' : 'bsu-ly-empty-space'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-empty-space [config]=\"item\"></bsu-ly-empty-space> -->\r\n} @case ('Ly.SimpleLabel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LySimpleLabelComponent', selector: 'bsu-ly-simple-label' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-simple-label [config]=\"item\"></bsu-ly-simple-label> -->\r\n} @case ('Ly.LayoutLine') {\r\n<ng-container\r\n *ngTemplateOutlet=\"dynamicLayout; context: { $implicit: item, name: 'LyLineComponent', selector: 'bsu-ly-line' }\"\r\n></ng-container>\r\n<!-- <bsu-ly-line [isVertical]=\"item.IsVertical\"></bsu-ly-line> -->\r\n} @case ('Ly.LayoutJoin') { @if (item.Type === 'HorizontalJoin') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-horizontal-layout',\r\n name: 'LyLayoutHorizontalComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-horizontal-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-horizontal-layout> -->\r\n} @else {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-vertical-layout',\r\n name: 'LyLayoutVerticalComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-vertical-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-vertical-layout> -->\r\n} } @case ('Ly.LayoutControl') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-layout-control',\r\n name: 'LayoutControlComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-layout-control [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-layout-control> -->\r\n} }\r\n<ng-content></ng-content>\r\n}\r\n<ng-template #dynamicLayout let-config let-selector=\"selector\" let-maxLabelWidth=\"maxLabelWidth\" let-name=\"name\">\r\n <bnrc-dynamic-layout\r\n [config]=\"config\"\r\n [selector]=\"selector\"\r\n [name]=\"name\"\r\n [module]=\"'BarsaSapUi'\"\r\n [moduleFileName]=\"'BarsaSapUi'\"\r\n [maxLabelWidth]=\"(maxLabelWidth$ | async)!!\"\r\n [flex]=\"config.Bounds.width\"\r\n [isSearchPanel]=\"isSearchPanel\"\r\n >\r\n </bnrc-dynamic-layout>\r\n</ng-template>\r\n}\r\n", styles: [":host{display:block;width:100%;height:auto;position:relative}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.DynamicLayoutComponent, selector: "bnrc-dynamic-layout", inputs: ["selector", "module", "name", "parameters", "moduleFileName", "flex", "config", "maxLabelWidth", "hasHorizontalText", "isSearchPanel"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.FilterToolbarControlPipe, name: "filterToolbarControl" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
5041
5046
  }
5042
5047
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: LyLayoutContainerOfRootComponent, decorators: [{
5043
5048
  type: Component,
5044
- args: [{ selector: 'bsu-ly-layout-container-of-root', changeDetection: ChangeDetectionStrategy.OnPush, providers: [LayoutService], standalone: false, template: "@if (config) { @for (item of config | filterToolbarControl; track item) { @switch (item.xtype) { @case\r\n('Ly.LayoutTabPanel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-tab-container' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-tab-container [config]=\"item\"></bsu-ly-tab-container> -->\r\n} @case ('Ly.LayoutPanel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-layout-panel' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-layout-panel [config]=\"item\"></bsu-ly-layout-panel> -->\r\n} @case ('Ly.LayoutContainer') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n name: 'LyLayoutContainerComponent',\r\n selector: 'bsu-ly-layout-container'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-layout-container [config]=\"item\"></bsu-ly-layout-container> -->\r\n} @case ('Ly.EmptySpace') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n module: item.Type === 'SplitterItem' ? 'BarsaNovinRayCore' : '',\r\n name: item.Type === 'SplitterItem' ? 'SplitterComponent' : 'LyEmptySpaceComponent',\r\n selector: item.Type === 'SplitterItem' ? 'bnrc-splitter' : 'bsu-ly-empty-space'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-empty-space [config]=\"item\"></bsu-ly-empty-space> -->\r\n} @case ('Ly.SimpleLabel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LySimpleLabelComponent', selector: 'bsu-ly-simple-label' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-simple-label [config]=\"item\"></bsu-ly-simple-label> -->\r\n} @case ('Ly.LayoutLine') {\r\n<ng-container\r\n *ngTemplateOutlet=\"dynamicLayout; context: { $implicit: item, name: 'LyLineComponent', selector: 'bsu-ly-line' }\"\r\n></ng-container>\r\n<!-- <bsu-ly-line [isVertical]=\"item.IsVertical\"></bsu-ly-line> -->\r\n} @case ('Ly.LayoutJoin') { @if (item.Type === 'HorizontalJoin') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-horizontal-layout',\r\n name: 'LyLayoutHorizontalComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-horizontal-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-horizontal-layout> -->\r\n} @else {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-vertical-layout',\r\n name: 'LyLayoutVerticalComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-vertical-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-vertical-layout> -->\r\n} } @case ('Ly.LayoutControl') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-layout-control',\r\n name: 'LayoutControlComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-layout-control [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-layout-control> -->\r\n} }\r\n<ng-content></ng-content>\r\n}\r\n<ng-template #dynamicLayout let-config let-selector=\"selector\" let-maxLabelWidth=\"maxLabelWidth\" let-name=\"name\">\r\n <bnrc-dynamic-layout\r\n [config]=\"config\"\r\n [selector]=\"selector\"\r\n [name]=\"name\"\r\n [module]=\"'BarsaSapUi'\"\r\n [moduleFileName]=\"'BarsaSapUi'\"\r\n [maxLabelWidth]=\"(maxLabelWidth$ | async)!!\"\r\n [flex]=\"config.Bounds.width\"\r\n [isSearchPanel]=\"isSearchPanel\"\r\n >\r\n </bnrc-dynamic-layout>\r\n</ng-template>\r\n}\r\n", styles: [":host{display:block;width:100%;height:auto;position:relative}\n"] }]
5049
+ args: [{ selector: 'bsu-ly-layout-container-of-root', changeDetection: ChangeDetectionStrategy.OnPush, providers: [LayoutService], standalone: false, template: "@if (config) { @for (item of config | filterToolbarControl; track item.id) { @switch (item.xtype) { @case\r\n('Ly.LayoutTabPanel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-tab-container' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-tab-container [config]=\"item\"></bsu-ly-tab-container> -->\r\n} @case ('Ly.LayoutPanel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-layout-panel' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-layout-panel [config]=\"item\"></bsu-ly-layout-panel> -->\r\n} @case ('Ly.LayoutContainer') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n name: 'LyLayoutContainerComponent',\r\n selector: 'bsu-ly-layout-container'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-layout-container [config]=\"item\"></bsu-ly-layout-container> -->\r\n} @case ('Ly.EmptySpace') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n module: item.Type === 'SplitterItem' ? 'BarsaNovinRayCore' : '',\r\n name: item.Type === 'SplitterItem' ? 'SplitterComponent' : 'LyEmptySpaceComponent',\r\n selector: item.Type === 'SplitterItem' ? 'bnrc-splitter' : 'bsu-ly-empty-space'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-empty-space [config]=\"item\"></bsu-ly-empty-space> -->\r\n} @case ('Ly.SimpleLabel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LySimpleLabelComponent', selector: 'bsu-ly-simple-label' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-simple-label [config]=\"item\"></bsu-ly-simple-label> -->\r\n} @case ('Ly.LayoutLine') {\r\n<ng-container\r\n *ngTemplateOutlet=\"dynamicLayout; context: { $implicit: item, name: 'LyLineComponent', selector: 'bsu-ly-line' }\"\r\n></ng-container>\r\n<!-- <bsu-ly-line [isVertical]=\"item.IsVertical\"></bsu-ly-line> -->\r\n} @case ('Ly.LayoutJoin') { @if (item.Type === 'HorizontalJoin') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-horizontal-layout',\r\n name: 'LyLayoutHorizontalComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-horizontal-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-horizontal-layout> -->\r\n} @else {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-vertical-layout',\r\n name: 'LyLayoutVerticalComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-vertical-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-vertical-layout> -->\r\n} } @case ('Ly.LayoutControl') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-layout-control',\r\n name: 'LayoutControlComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-layout-control [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-layout-control> -->\r\n} }\r\n<ng-content></ng-content>\r\n}\r\n<ng-template #dynamicLayout let-config let-selector=\"selector\" let-maxLabelWidth=\"maxLabelWidth\" let-name=\"name\">\r\n <bnrc-dynamic-layout\r\n [config]=\"config\"\r\n [selector]=\"selector\"\r\n [name]=\"name\"\r\n [module]=\"'BarsaSapUi'\"\r\n [moduleFileName]=\"'BarsaSapUi'\"\r\n [maxLabelWidth]=\"(maxLabelWidth$ | async)!!\"\r\n [flex]=\"config.Bounds.width\"\r\n [isSearchPanel]=\"isSearchPanel\"\r\n >\r\n </bnrc-dynamic-layout>\r\n</ng-template>\r\n}\r\n", styles: [":host{display:block;width:100%;height:auto;position:relative}\n"] }]
5045
5050
  }], propDecorators: { viewRef: [{
5046
5051
  type: ViewChild,
5047
5052
  args: ['viewRefTemplate', { read: ViewContainerRef, static: true }]
@@ -5820,7 +5825,7 @@ class UiListViewComponent extends ReportViewBaseComponent {
5820
5825
  }
5821
5826
  }
5822
5827
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UiListViewComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
5823
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: UiListViewComponent, isStandalone: false, selector: "bsu-ui-list-view", viewQueries: [{ propertyName: "popupModeTemplateRef", first: true, predicate: ["popupModeTemplate"], descendants: true, read: TemplateRef, static: true }, { propertyName: "defaultModeTemplateRef", first: true, predicate: ["defaultMode"], descendants: true, read: TemplateRef, static: true }, { propertyName: "_menu", first: true, predicate: ["menu"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngTemplateOutlet=\"selectedPresentaionTemplate\"></ng-container>\r\n\r\n<ng-template #popupModeTemplate>\r\n <ng-container *ngTemplateOutlet=\"deviceSize === 's' ? mobileTpl : desktopTpl\"></ng-container>\r\n\r\n <!-- <fd-menu [appendTo]=\"_el\"\r\n #menu [mobile]=\"deviceSize === 's'\" >\r\n</fd-menu> -->\r\n</ng-template>\r\n<ng-template #mobileTpl>\r\n <div class=\"popup-mode\">\r\n <ng-container *ngTemplateOutlet=\"buttonDropDown; context: { menu: menu }\"></ng-container>\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"tokensTpl\"></ng-container>\r\n <fd-menu #menu [mobile]=\"true\" [mobileConfig]=\"{ title: title | bbbTranslate, hasCloseButton: true }\">\r\n <ng-container *ngTemplateOutlet=\"defaultMode; context: { popover: menu, popupMode: true }\"></ng-container>\r\n </fd-menu>\r\n</ng-template>\r\n<ng-template #desktopTpl>\r\n <fd-popover #popover fillControlMode=\"equal\">\r\n <fd-popover-control class=\"popup-mode\">\r\n <ng-container *ngTemplateOutlet=\"buttonDropDown\"></ng-container>\r\n </fd-popover-control>\r\n <fd-popover-body>\r\n <ng-container\r\n *ngTemplateOutlet=\"defaultMode; context: { popover: popover, popupMode: true }\"\r\n ></ng-container>\r\n </fd-popover-body>\r\n </fd-popover>\r\n <ng-container *ngTemplateOutlet=\"tokensTpl\"></ng-container>\r\n</ng-template>\r\n<ng-template #buttonDropDown let-menu=\"menu\">\r\n <button\r\n class=\"drop-down\"\r\n fd-button\r\n [label]=\"selectedMo ? (selectedMo.$Caption | bbbTranslate) : (title | bbbTranslate)\"\r\n [fdMenu]=\"true\"\r\n [fdMenuTrigger]=\"menu\"\r\n >\r\n @if (selectedCount > 0 && isCheckList) {\r\n <span fd-object-status [inverted]=\"true\" [label]=\"selectedCount\" [title]=\"selectedCount\"></span>\r\n }\r\n </button>\r\n</ng-template>\r\n<ng-template #tokensTpl>\r\n @if (isCheckList && hasSelected) {\r\n <div style=\"padding: 5px; display: flex; flex-wrap: wrap; row-gap: 5px; column-gap: 5px\">\r\n @for (mo of moDataList; track mo; let index = $index) { @if (mo.$IsChecked) {\r\n <fd-token fdCozy [readOnly]=\"false\" (onCloseClick)=\"onRowCheck({mo, index})\">{{\r\n columns[0].Caption | rval: mo:columns:true\r\n }}</fd-token>\r\n } }\r\n </div>\r\n }\r\n</ng-template>\r\n<ng-template #defaultMode let-popover=\"popover\" let-popupMode=\"popupMode\">\r\n <fd-layout-panel [class.popup-mode]=\"popupMode\" [ngClass]=\"'size-' + deviceSize\">\r\n <fd-layout-panel-header>\r\n <fd-layout-panel-head>\r\n <h4 fd-layout-panel-title>{{ title | bbbTranslate }}</h4>\r\n @if (selectedCount > 0) {\r\n <span fd-object-status [inverted]=\"true\" [label]=\"selectedCount\" [title]=\"selectedCount\"></span>\r\n }\r\n </fd-layout-panel-head>\r\n <fd-layout-panel-actions>\r\n @if (deviceSize !== 's') {\r\n <button\r\n style=\"margin-top: 5px\"\r\n fd-button\r\n glyph=\"decline\"\r\n fdType=\"transparent\"\r\n (click)=\"popover.close()\"\r\n ></button>\r\n }\r\n </fd-layout-panel-actions>\r\n </fd-layout-panel-header>\r\n @if (isCheckList && moDataList.length) {\r\n <fd-layout-panel-filters>\r\n <fd-toolbar fdType=\"transparent\" [clearBorder]=\"true\">\r\n <a class=\"clearCheckAll\" (click)=\"onAllCheckbox($event)\" fd-link [aria-label]=\"'All' | bbbTranslate\">{{\r\n 'All' | bbbTranslate\r\n }}</a>\r\n <label fd-toolbar-label style=\"font-size: 1rem; font-weight: bold\">.</label>\r\n <a\r\n (click)=\"onClearCheckbox()\"\r\n fd-toolbar-item\r\n class=\"clearCheckAll\"\r\n fd-link\r\n [aria-label]=\"'Clear' | bbbTranslate\"\r\n >{{ 'Clear' | bbbTranslate }}</a\r\n >\r\n </fd-toolbar>\r\n </fd-layout-panel-filters>\r\n }\r\n\r\n <fd-layout-panel-body [bleed]=\"true\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n isDisplayType ? displayListTemplate : standardListTemplate;\r\n context: {\r\n $implicit: moDataList,\r\n isCheckList: isCheckList,\r\n groupby: groupby,\r\n conditionalFormats: conditionalFormats,\r\n deviceName: deviceName,\r\n viewSetting: viewSetting,\r\n allColumns: allColumns,\r\n access: access,\r\n rtl: rtl,\r\n popover: popover\r\n }\r\n \"\r\n >\r\n </ng-container>\r\n </fd-layout-panel-body>\r\n </fd-layout-panel>\r\n</ng-template>\r\n\r\n<!--display list-->\r\n<ng-template\r\n #displayListTemplate\r\n let-moDataList\r\n let-isCheckList=\"isCheckList\"\r\n let-groupby=\"groupby\"\r\n let-conditionalFormats=\"conditionalFormats\"\r\n let-deviceName=\"deviceName\"\r\n let-allColumns=\"allColumns\"\r\n let-viewSetting=\"viewSetting\"\r\n let-access=\"access\"\r\n let-rtl=\"rtl\"\r\n>\r\n @if (moDataList && moDataList.length > 0) {\r\n <ul fd-list class=\"display-list fd-list--navigation\" ellipsify>\r\n @for (mo of moDataList | multipleGroupBy: groupby; track mo; let index = $index; let last = $last) { @if\r\n (!mo.parent || mo.parent?.expanded) {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n itemTemplate;\r\n context: {\r\n $implicit: mo,\r\n index: index,\r\n last: last,\r\n columns: columns,\r\n moDataList: moDataList,\r\n moDataListCount: moDataList.length\r\n }\r\n \"\r\n ></ng-container>\r\n } }\r\n </ul>\r\n } @else {\r\n <bsu-no-data [simple]=\"popupMode\"></bsu-no-data>\r\n }\r\n</ng-template>\r\n<!--standard list-->\r\n<ng-template\r\n #standardListTemplate\r\n let-moDataList\r\n let-isCheckList=\"isCheckList\"\r\n let-groupby=\"groupby\"\r\n let-conditionalFormats=\"conditionalFormats\"\r\n let-allColumns=\"allColumns\"\r\n let-deviceName=\"deviceName\"\r\n let-access=\"access\"\r\n let-viewSetting=\"viewSetting\"\r\n let-rtl=\"rtl\"\r\n let-last=\"last\"\r\n>\r\n @if (moDataList && moDataList.length > 0) {\r\n <ul class=\"fd-list--navigation\" [class.fd-list--byline]=\"!isDisplayType\" fd-list [byline]=\"true\" ellipsify>\r\n @for (mo of moDataList | multipleGroupBy: groupby; track mo; let index = $index) { @if (!mo.parent ||\r\n mo.parent?.expanded) {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n itemTemplate;\r\n context: {\r\n $implicit: mo,\r\n index: index,\r\n last: last,\r\n columns: columns,\r\n moDataList: moDataList,\r\n moDataListCount: moDataList.length\r\n }\r\n \"\r\n ></ng-container>\r\n } }\r\n </ul>\r\n } @else {\r\n <bsu-no-data [simple]=\"popupMode\"></bsu-no-data>\r\n }\r\n</ng-template>\r\n\r\n<!--noData-->\r\n<ng-template\r\n #itemTemplate\r\n let-mo\r\n let-index=\"index\"\r\n let-last=\"last\"\r\n let-columns=\"columns\"\r\n let-moDataListCount=\"moDataListCount\"\r\n let-moDataList=\"moDataList\"\r\n>\r\n @if (mo.group || mo.group === '') {\r\n <li\r\n fd-list-group-header\r\n [style.padding-right]=\"'calc( 1rem + ' + mo.level * 12 + 'px' + ' )'\"\r\n [attr.level]=\"mo.level\"\r\n [class.root-group]=\"mo.level === 0\"\r\n >\r\n <fd-icon\r\n [glyph]=\"mo.expanded ? 'navigation-down-arrow' : 'navigation-left-arrow'\"\r\n class=\"cell-expand\"\r\n (click)=\"onExpandClick(mo)\"\r\n ></fd-icon>\r\n <span fd-list-title>{{ mo.group }}</span>\r\n </li>\r\n } @else {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n hasRowOlgo ? dynamicItemTemplate : defaultItem;\r\n context: {\r\n $implicit: mo,\r\n index: index,\r\n columns: columns,\r\n moDataList: moDataList,\r\n moDataListCount: moDataList.length\r\n }\r\n \"\r\n ></ng-container>\r\n <ng-template\r\n #defaultItem\r\n let-mo\r\n let-index=\"index\"\r\n let-columns=\"columns\"\r\n let-moDataListCount=\"moDataListCount\"\r\n let-moDataList=\"moDataList\"\r\n >\r\n @if (!hasRowOlgo) {\r\n <bsu-list-item\r\n [isDisplayType]=\"isDisplayType\"\r\n [mo]=\"mo\"\r\n [isChecked]=\"mo.$IsChecked\"\r\n [styleIndex]=\"mo.$StyleIndex\"\r\n [isNewInlineMo]=\"mo.$NewInlineMo\"\r\n [index]=\"index\"\r\n [last]=\"last\"\r\n [setting]=\"listSetting\"\r\n [editMode]=\"inlineEditMode\"\r\n [rtl]=\"rtl\"\r\n [hideOpenIcon]=\"hideOpenIcon\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [index]=\"index\"\r\n [formSetting]=\"formSetting\"\r\n [allColumns]=\"allColumns\"\r\n [contentDensity]=\"contentDensity\"\r\n [contextMenuItems]=\"contextMenuItems\"\r\n [canView]=\"canView\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [navigationArrow]=\"navigationArrow\"\r\n [isCheckList]=\"isCheckList\"\r\n (rowCheck)=\"onRowCheck($event)\"\r\n (rowClick)=\"onRowClick($event)\"\r\n (ulvCommand)=\"onUlvCommand($event)\"\r\n (editFormPanelSave)=\"onEditFormPanelSave($event)\"\r\n (editFormPanelCancel)=\"onEditFormPanelCancel($event)\"\r\n >\r\n </bsu-list-item>\r\n } @else {\r\n <bnrc-dynamic-item-component\r\n [component]=\"viewSetting.RowOlgo\"\r\n [mo]=\"mo\"\r\n [styleIndex]=\"mo.$StyleIndex\"\r\n [moDataList]=\"moDataList\"\r\n [showDetailsInRow]=\"showDetailsInRow\"\r\n [hideOpenIcon]=\"hideOpenIcon\"\r\n [detailsColumns]=\"detailsColumns\"\r\n [columnComponents]=\"viewSetting?.ColumnComponents || null\"\r\n [cartableTemplate]=\"cartableTemplates[mo.RelatedMo?.$TypeDefId]\"\r\n [cartableMo]=\"mo.RelatedMo\"\r\n [cartableWorkflowData]=\"mo.SerializedWorkflowData\"\r\n [serializedRelatedMo]=\"mo.SerializedRelatedMo\"\r\n [detailsText]=\"viewSetting?.DetailsSetting?.ButtonText\"\r\n [detailsComponent]=\"detailsComponent\"\r\n [isChecked]=\"mo.$IsChecked\"\r\n [visibility]=\"mo.$Visibility\"\r\n [expanded]=\"mo.$Expanded\"\r\n [level]=\"mo.$Level\"\r\n [parentExpanded]=\"mo.$Parent?.$Expanded\"\r\n [moDataListCount]=\"moDataListCount\"\r\n [columnsCount]=\"columnsCount - detailsColumns.length\"\r\n [typeDefId]=\"typeDefId\"\r\n [extraRelation]=\"extraRelation\"\r\n [formSetting]=\"formSetting\"\r\n [index]=\"index\"\r\n [last]=\"last\"\r\n [setting]=\"viewSetting\"\r\n [secondaryColumns]=\"secondaryColumns | filterColumnsByDetails: detailsColumns:false\"\r\n [columns]=\"columns | filterColumnsByDetails: detailsColumns:false\"\r\n [isNewInlineMo]=\"mo.$NewInlineMo\"\r\n [access]=\"access\"\r\n [inlineEditMode]=\"inlineEditMode\"\r\n [allowInlineEdit]=\"allowInlineEdit\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [allColumns]=\"allColumns\"\r\n [contextMenuItems]=\"contextMenuItems\"\r\n [canView]=\"canView\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [navigationArrow]=\"navigationArrow\"\r\n [isCheckList]=\"isCheckList\"\r\n [rowIndicator]=\"columns[0].MetaFieldTypeId === '41'\"\r\n (events)=\"onOlgoEvents($event)\"\r\n >\r\n </bnrc-dynamic-item-component>\r\n }\r\n </ng-template>\r\n <ng-template\r\n #dynamicItemTemplate\r\n let-mo\r\n let-index=\"index\"\r\n let-columns=\"columns\"\r\n let-moDataListCount=\"moDataListCount\"\r\n let-moDataList=\"moDataList\"\r\n >\r\n <bnrc-dynamic-item-component\r\n [component]=\"viewSetting.RowOlgo\"\r\n [mo]=\"mo\"\r\n [styleIndex]=\"mo.$StyleIndex\"\r\n [moDataList]=\"moDataList\"\r\n [showDetailsInRow]=\"showDetailsInRow\"\r\n [hideOpenIcon]=\"hideOpenIcon\"\r\n [detailsColumns]=\"detailsColumns\"\r\n [columnComponents]=\"viewSetting?.ColumnComponents || null\"\r\n [cartableTemplate]=\"cartableTemplates[mo.RelatedMo?.$TypeDefId]\"\r\n [cartableMo]=\"mo.RelatedMo\"\r\n [cartableWorkflowData]=\"mo.SerializedWorkflowData\"\r\n [serializedRelatedMo]=\"mo.SerializedRelatedMo\"\r\n [detailsText]=\"viewSetting?.DetailsSetting?.ButtonText\"\r\n [detailsComponent]=\"detailsComponent\"\r\n [isChecked]=\"mo.$IsChecked\"\r\n [visibility]=\"mo.$Visibility\"\r\n [expanded]=\"mo.$Expanded\"\r\n [level]=\"mo.$Level\"\r\n [parentExpanded]=\"mo.$Parent?.$Expanded\"\r\n [moDataListCount]=\"moDataListCount\"\r\n [columnsCount]=\"columnsCount - detailsColumns.length\"\r\n [typeDefId]=\"typeDefId\"\r\n [extraRelation]=\"extraRelation\"\r\n [formSetting]=\"formSetting\"\r\n [index]=\"index\"\r\n [last]=\"last\"\r\n [setting]=\"viewSetting\"\r\n [secondaryColumns]=\"secondaryColumns | filterColumnsByDetails: detailsColumns:false\"\r\n [columns]=\"columns | filterColumnsByDetails: detailsColumns:false\"\r\n [isNewInlineMo]=\"mo.$NewInlineMo\"\r\n [access]=\"access\"\r\n [inlineEditMode]=\"inlineEditMode\"\r\n [allowInlineEdit]=\"allowInlineEdit\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [allColumns]=\"allColumns\"\r\n [contextMenuItems]=\"contextMenuItems\"\r\n [canView]=\"canView\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [navigationArrow]=\"navigationArrow\"\r\n [isCheckList]=\"isCheckList\"\r\n [rowIndicator]=\"columns[0].MetaFieldTypeId === '41'\"\r\n (events)=\"onOlgoEvents($event)\"\r\n >\r\n </bnrc-dynamic-item-component>\r\n </ng-template>\r\n }\r\n</ng-template>\r\n", styles: [":host{display:block}.fd-list__group-header{column-gap:10px;align-items:center}.header th{border-left:none!important;border-right:none!important}.clearCheckAll{text-decoration:none!important}.fd-list--navigation-indication .fd-list__item:after{min-width:0!important}li.standard-list-row{padding-top:.2rem;padding-bottom:.2rem;min-height:4rem;justify-content:space-evenly;column-gap:10px}li.standard-list-row:hover:not(.selected){background-color:var(--sapBackgroundColor, #f7f7f7)}li.standard-list-row .fd-list__content{row-gap:.4rem}li.standard-list-row .fd-list__content .fd-list__byline{padding:0;font-size:.775rem}li.standard-list-row ::ng-deep .fd-form-item{position:static}li.standard-list-row ::ng-deep .fd-form-item .fd-checkbox__label--compact{padding:0;margin-left:0}li.standard-list-row ::ng-deep fd-icon{font-size:.75rem!important}fd-layout-panel{height:100%}.li-link.checklink[rtl=true]{padding-right:0!important}.li-link.checklist[rtl=false]{padding-left:0!important}.standard-list-group-label{padding-top:10px;padding-bottom:3px}fd-layout-panel-header{display:none}fd-layout-panel.popup-mode.size-s{box-shadow:none!important}fd-layout-panel.popup-mode.size-s fd-layout-panel-header{display:none!important}.popup-mode fd-layout-panel-header{display:flex;min-height:1rem;height:1rem;border:none!important}.popup-mode fd-layout-panel-header h4{font-weight:700;font-size:1rem}.popup-mode fd-layout-panel-head{display:flex;column-gap:5px;align-items:center;justify-content:center}.popup-mode ::ng-deep li{border:none!important}.popup-mode fd-layout-panel-body{margin-top:.3rem}.popup-mode fd-layout-panel-filters{border:none!important;padding:0 1rem}.popup-mode .drop-down{width:100%;max-width:100%;max-height:2rem!important;height:2rem!important;background:var(--sapButton_Background)!important;border:1px solid #ccc!important}.popup-mode .drop-down ::ng-deep span{font-size:1rem!important;line-height:1.2rem!important}.popup-mode .drop-down ::ng-deep fd-icon{position:absolute;left:10px}fd-popover{width:100%;max-width:100%}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { 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", "maxHeightHeader", "fields", "isChecked", "layout94$", "inlineEditMode", "isNewInlineMo", "allowInlineEdit", "typeDefId", "rowIndicator", "rowIndicatorColor", "UlvMainCtrlr"] }, { kind: "directive", type: i2.EllipsifyDirective, selector: "[ellipsify]", inputs: ["limitLine"] }, { kind: "directive", type: i2.MobileDirective, selector: "[mobile]" }, { kind: "component", type: i2$6.LinkComponent, selector: "[fdLink], [fd-link]", inputs: ["class", "emphasized", "disabled", "inverted", "subtle", "undecorated"] }, { kind: "directive", type: i4$3.ContentDensityDirective, selector: "[fdContentDensity]:not([fdCompact]):not([fdCondensed]):not([fdCozy]), [fdCompact]:not([fdContentDensity]):not([fdCondensed]):not([fdCozy]), [fdCondensed]:not([fdContentDensity]):not([fdCompact]):not([fdCozy]), [fdCozy]:not([fdContentDensity]):not([fdCompact]):not([fdCondensed])", inputs: ["fdContentDensity", "fdCompact", "fdCondensed", "fdCozy"], exportAs: ["fdContentDensity"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i3.IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "color", "background", "class", "ariaLabel", "ariaHidden"] }, { kind: "component", type: i2$5.LayoutPanelComponent, selector: "fd-layout-panel", inputs: ["backgroundImage", "id", "transparent"] }, { kind: "component", type: i2$5.LayoutPanelHeaderComponent, selector: "fd-layout-panel-header" }, { kind: "component", type: i2$5.LayoutPanelHeadComponent, selector: "fd-layout-panel-head" }, { kind: "directive", type: i2$5.LayoutPanelTitleDirective, selector: "[fd-layout-panel-title]" }, { kind: "component", type: i2$5.LayoutPanelActionsComponent, selector: "fd-layout-panel-actions" }, { kind: "component", type: i2$5.LayoutPanelFiltersComponent, selector: "fd-layout-panel-filters" }, { kind: "component", type: i2$5.LayoutPanelBodyComponent, selector: "fd-layout-panel-body", inputs: ["bleed"] }, { kind: "component", type: i7.ListComponent, selector: "[fd-list], [fdList]", inputs: ["dropdownMode", "multiInputMode", "mobileMode", "hasMessage", "noBorder", "navigationIndicator", "selection", "keyboardSupport", "byline", "subline", "theme", "unreadIndicator", "role", "settingsList", "settingsListFooter"], outputs: ["focusEscapeList"] }, { kind: "directive", type: i7.ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap", "truncate"] }, { kind: "directive", type: i7.ListGroupHeaderDirective, selector: "[fdListGroupHeader], [fd-list-group-header]", inputs: ["nativeElementId"], outputs: ["keyDown"] }, { kind: "component", type: i6.MenuComponent, selector: "fd-menu", inputs: ["mobile", "disabled", "focusTrapped", "focusAutoCapture", "openOnHoverTime", "mobileConfig", "ariaLabel", "ariaLabelledby", "id"], outputs: ["activePath"] }, { kind: "directive", type: i6.MenuTriggerDirective, selector: "[fdMenuTrigger]", inputs: ["fdMenuTrigger"] }, { kind: "component", type: i8$1.ObjectStatusComponent, selector: "[fd-object-status]", inputs: ["class", "status", "glyph", "glyphFont", "label", "glyphAriaLabel", "indicationColor", "clickable", "inverted", "large", "secondaryIndication", "textTemplate"] }, { kind: "component", type: i7$1.PopoverControlComponent, selector: "fd-popover-control, [fdPopoverControl]" }, { kind: "component", type: i7$1.PopoverBodyComponent, selector: "fd-popover-body", inputs: ["minWidth", "maxWidth", "minHeight", "maxHeight"] }, { kind: "component", type: i7$1.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig", "preventSpaceKeyScroll"] }, { 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: "directive", type: i8.ToolbarLabelDirective, selector: "[fd-toolbar-label]" }, { kind: "component", type: i13.TokenComponent, selector: "fd-token", inputs: ["disabled", "selected", "readOnly"], outputs: ["onCloseClick", "onRemove", "onTokenClick", "onTokenKeydown", "elementFocused"] }, { kind: "component", type: NoDataComponent, selector: "bsu-no-data", inputs: ["simple"] }, { kind: "component", type: ListItemComponent, selector: "bsu-list-item", inputs: ["setting", "isDisplayType"] }, { kind: "directive", type: ContentDensityDirective, selector: "[contentDensity]" }, { kind: "pipe", type: i2.MultipleGroupByPipe, name: "multipleGroupBy" }, { kind: "pipe", type: i2.MoReportValuePipe, name: "rval" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: i2.FilterColumnsByDetailsPipe, name: "filterColumnsByDetails" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
5828
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: UiListViewComponent, isStandalone: false, selector: "bsu-ui-list-view", viewQueries: [{ propertyName: "popupModeTemplateRef", first: true, predicate: ["popupModeTemplate"], descendants: true, read: TemplateRef, static: true }, { propertyName: "defaultModeTemplateRef", first: true, predicate: ["defaultMode"], descendants: true, read: TemplateRef, static: true }, { propertyName: "_menu", first: true, predicate: ["menu"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngTemplateOutlet=\"selectedPresentaionTemplate\"></ng-container>\r\n\r\n<ng-template #popupModeTemplate>\r\n <ng-container *ngTemplateOutlet=\"deviceSize === 's' ? mobileTpl : desktopTpl\"></ng-container>\r\n\r\n <!-- <fd-menu [appendTo]=\"_el\"\r\n #menu [mobile]=\"deviceSize === 's'\" >\r\n</fd-menu> -->\r\n</ng-template>\r\n<ng-template #mobileTpl>\r\n <div class=\"popup-mode\">\r\n <ng-container *ngTemplateOutlet=\"buttonDropDown; context: { menu: menu }\"></ng-container>\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"tokensTpl\"></ng-container>\r\n <fd-menu #menu [mobile]=\"true\" [mobileConfig]=\"{ title: title | bbbTranslate, hasCloseButton: true }\">\r\n <ng-container *ngTemplateOutlet=\"defaultMode; context: { popover: menu, popupMode: true }\"></ng-container>\r\n </fd-menu>\r\n</ng-template>\r\n<ng-template #desktopTpl>\r\n <fd-popover #popover fillControlMode=\"equal\">\r\n <fd-popover-control class=\"popup-mode\">\r\n <ng-container *ngTemplateOutlet=\"buttonDropDown\"></ng-container>\r\n </fd-popover-control>\r\n <fd-popover-body>\r\n <ng-container\r\n *ngTemplateOutlet=\"defaultMode; context: { popover: popover, popupMode: true }\"\r\n ></ng-container>\r\n </fd-popover-body>\r\n </fd-popover>\r\n <ng-container *ngTemplateOutlet=\"tokensTpl\"></ng-container>\r\n</ng-template>\r\n<ng-template #buttonDropDown let-menu=\"menu\">\r\n <button\r\n class=\"drop-down\"\r\n fd-button\r\n [label]=\"selectedMo ? (selectedMo.$Caption | bbbTranslate) : (title | bbbTranslate)\"\r\n [fdMenu]=\"true\"\r\n [fdMenuTrigger]=\"menu\"\r\n >\r\n @if (selectedCount > 0 && isCheckList) {\r\n <span fd-object-status [inverted]=\"true\" [label]=\"selectedCount\" [title]=\"selectedCount\"></span>\r\n }\r\n </button>\r\n</ng-template>\r\n<ng-template #tokensTpl>\r\n @if (isCheckList && hasSelected) {\r\n <div style=\"padding: 5px; display: flex; flex-wrap: wrap; row-gap: 5px; column-gap: 5px\">\r\n @for (mo of moDataList; track mo; let index = $index) { @if (mo.$IsChecked) {\r\n <fd-token fdCozy [readOnly]=\"false\" (onCloseClick)=\"onRowCheck({mo, index})\">{{\r\n columns[0].Caption | rval: mo:columns:true\r\n }}</fd-token>\r\n } }\r\n </div>\r\n }\r\n</ng-template>\r\n<ng-template #defaultMode let-popover=\"popover\" let-popupMode=\"popupMode\">\r\n <fd-layout-panel [class.popup-mode]=\"popupMode\" [ngClass]=\"'size-' + deviceSize\">\r\n <fd-layout-panel-header>\r\n <fd-layout-panel-head>\r\n <h4 fd-layout-panel-title>{{ title | bbbTranslate }}</h4>\r\n @if (selectedCount > 0) {\r\n <span fd-object-status [inverted]=\"true\" [label]=\"selectedCount\" [title]=\"selectedCount\"></span>\r\n }\r\n </fd-layout-panel-head>\r\n <fd-layout-panel-actions>\r\n @if (deviceSize !== 's') {\r\n <button\r\n style=\"margin-top: 5px\"\r\n fd-button\r\n glyph=\"decline\"\r\n fdType=\"transparent\"\r\n (click)=\"popover.close()\"\r\n ></button>\r\n }\r\n </fd-layout-panel-actions>\r\n </fd-layout-panel-header>\r\n @if (isCheckList && moDataList.length) {\r\n <fd-layout-panel-filters>\r\n <fd-toolbar fdType=\"transparent\" [clearBorder]=\"true\">\r\n <a class=\"clearCheckAll\" (click)=\"onAllCheckbox($event)\" fd-link [aria-label]=\"'All' | bbbTranslate\">{{\r\n 'All' | bbbTranslate\r\n }}</a>\r\n <label fd-toolbar-label style=\"font-size: 1rem; font-weight: bold\">.</label>\r\n <a\r\n (click)=\"onClearCheckbox()\"\r\n fd-toolbar-item\r\n class=\"clearCheckAll\"\r\n fd-link\r\n [aria-label]=\"'Clear' | bbbTranslate\"\r\n >{{ 'Clear' | bbbTranslate }}</a\r\n >\r\n </fd-toolbar>\r\n </fd-layout-panel-filters>\r\n }\r\n\r\n <fd-layout-panel-body [bleed]=\"true\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n isDisplayType ? displayListTemplate : standardListTemplate;\r\n context: {\r\n $implicit: moDataList,\r\n isCheckList: isCheckList,\r\n groupby: groupby,\r\n conditionalFormats: conditionalFormats,\r\n deviceName: deviceName,\r\n viewSetting: viewSetting,\r\n allColumns: allColumns,\r\n access: access,\r\n rtl: rtl,\r\n popover: popover\r\n }\r\n \"\r\n >\r\n </ng-container>\r\n </fd-layout-panel-body>\r\n </fd-layout-panel>\r\n</ng-template>\r\n\r\n<!--display list-->\r\n<ng-template\r\n #displayListTemplate\r\n let-moDataList\r\n let-isCheckList=\"isCheckList\"\r\n let-groupby=\"groupby\"\r\n let-conditionalFormats=\"conditionalFormats\"\r\n let-deviceName=\"deviceName\"\r\n let-allColumns=\"allColumns\"\r\n let-viewSetting=\"viewSetting\"\r\n let-access=\"access\"\r\n let-rtl=\"rtl\"\r\n>\r\n @if (moDataList && moDataList.length > 0) {\r\n <ul fd-list class=\"display-list fd-list--navigation\" ellipsify>\r\n @for (mo of moDataList | multipleGroupBy: groupby; track mo; let index = $index; let last = $last) { @if\r\n (!mo.parent || mo.parent?.expanded) {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n itemTemplate;\r\n context: {\r\n $implicit: mo,\r\n index: index,\r\n last: last,\r\n columns: columns,\r\n moDataList: moDataList,\r\n moDataListCount: moDataList.length\r\n }\r\n \"\r\n ></ng-container>\r\n } }\r\n </ul>\r\n } @else {\r\n <bsu-no-data [simple]=\"popupMode\"></bsu-no-data>\r\n }\r\n</ng-template>\r\n<!--standard list-->\r\n<ng-template\r\n #standardListTemplate\r\n let-moDataList\r\n let-isCheckList=\"isCheckList\"\r\n let-groupby=\"groupby\"\r\n let-conditionalFormats=\"conditionalFormats\"\r\n let-allColumns=\"allColumns\"\r\n let-deviceName=\"deviceName\"\r\n let-access=\"access\"\r\n let-viewSetting=\"viewSetting\"\r\n let-rtl=\"rtl\"\r\n let-last=\"last\"\r\n>\r\n @if (moDataList && moDataList.length > 0) {\r\n <ul class=\"fd-list--navigation\" [class.fd-list--byline]=\"!isDisplayType\" fd-list [byline]=\"true\" ellipsify>\r\n @for (mo of moDataList | multipleGroupBy: groupby; track mo; let index = $index) { @if (!mo.parent ||\r\n mo.parent?.expanded) {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n itemTemplate;\r\n context: {\r\n $implicit: mo,\r\n index: index,\r\n last: last,\r\n columns: columns,\r\n moDataList: moDataList,\r\n moDataListCount: moDataList.length\r\n }\r\n \"\r\n ></ng-container>\r\n } }\r\n </ul>\r\n } @else {\r\n <bsu-no-data [simple]=\"popupMode\"></bsu-no-data>\r\n }\r\n</ng-template>\r\n\r\n<!--noData-->\r\n<ng-template\r\n #itemTemplate\r\n let-mo\r\n let-index=\"index\"\r\n let-last=\"last\"\r\n let-columns=\"columns\"\r\n let-moDataListCount=\"moDataListCount\"\r\n let-moDataList=\"moDataList\"\r\n>\r\n @if (mo.group || mo.group === '') {\r\n <li\r\n fd-list-group-header\r\n [style.padding-right]=\"'calc( 1rem + ' + mo.level * 12 + 'px' + ' )'\"\r\n [attr.level]=\"mo.level\"\r\n [class.root-group]=\"mo.level === 0\"\r\n >\r\n <fd-icon\r\n [glyph]=\"mo.expanded ? 'navigation-down-arrow' : 'navigation-left-arrow'\"\r\n class=\"cell-expand\"\r\n (click)=\"onExpandClick(mo)\"\r\n ></fd-icon>\r\n <span fd-list-title>{{ mo.group }}</span>\r\n </li>\r\n } @else {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n hasRowOlgo ? dynamicItemTemplate : defaultItem;\r\n context: {\r\n $implicit: mo,\r\n index: index,\r\n columns: columns,\r\n moDataList: moDataList,\r\n moDataListCount: moDataList.length\r\n }\r\n \"\r\n ></ng-container>\r\n <ng-template\r\n #defaultItem\r\n let-mo\r\n let-index=\"index\"\r\n let-columns=\"columns\"\r\n let-moDataListCount=\"moDataListCount\"\r\n let-moDataList=\"moDataList\"\r\n >\r\n @if (!hasRowOlgo) {\r\n <bsu-list-item\r\n [isDisplayType]=\"isDisplayType\"\r\n [mo]=\"mo\"\r\n [isChecked]=\"mo.$IsChecked\"\r\n [styleIndex]=\"mo.$StyleIndex\"\r\n [isNewInlineMo]=\"mo.$NewInlineMo\"\r\n [index]=\"index\"\r\n [last]=\"last\"\r\n [setting]=\"listSetting\"\r\n [editMode]=\"inlineEditMode\"\r\n [rtl]=\"rtl\"\r\n [hideOpenIcon]=\"hideOpenIcon\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [index]=\"index\"\r\n [formSetting]=\"formSetting\"\r\n [allColumns]=\"allColumns\"\r\n [contentDensity]=\"contentDensity\"\r\n [contextMenuItems]=\"contextMenuItems\"\r\n [canView]=\"canView\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [navigationArrow]=\"navigationArrow\"\r\n [isCheckList]=\"isCheckList\"\r\n (rowCheck)=\"onRowCheck($event)\"\r\n (rowClick)=\"onRowClick($event)\"\r\n (ulvCommand)=\"onUlvCommand($event)\"\r\n (editFormPanelSave)=\"onEditFormPanelSave($event)\"\r\n (editFormPanelCancel)=\"onEditFormPanelCancel($event)\"\r\n >\r\n </bsu-list-item>\r\n } @else {\r\n <bnrc-dynamic-item-component\r\n [component]=\"viewSetting.RowOlgo\"\r\n [mo]=\"mo\"\r\n [styleIndex]=\"mo.$StyleIndex\"\r\n [moDataList]=\"moDataList\"\r\n [showDetailsInRow]=\"showDetailsInRow\"\r\n [hideOpenIcon]=\"hideOpenIcon\"\r\n [detailsColumns]=\"detailsColumns\"\r\n [columnComponents]=\"viewSetting?.ColumnComponents || null\"\r\n [cartableTemplate]=\"cartableTemplates[mo.RelatedMo?.$TypeDefId]\"\r\n [cartableMo]=\"mo.RelatedMo\"\r\n [cartableWorkflowData]=\"mo.SerializedWorkflowData\"\r\n [serializedRelatedMo]=\"mo.SerializedRelatedMo\"\r\n [detailsText]=\"viewSetting?.DetailsSetting?.ButtonText\"\r\n [detailsComponent]=\"detailsComponent\"\r\n [isChecked]=\"mo.$IsChecked\"\r\n [visibility]=\"mo.$Visibility\"\r\n [expanded]=\"mo.$Expanded\"\r\n [level]=\"mo.$Level\"\r\n [parentExpanded]=\"mo.$Parent?.$Expanded\"\r\n [moDataListCount]=\"moDataListCount\"\r\n [columnsCount]=\"columnsCount - detailsColumns.length\"\r\n [typeDefId]=\"typeDefId\"\r\n [extraRelation]=\"extraRelation\"\r\n [formSetting]=\"formSetting\"\r\n [index]=\"index\"\r\n [last]=\"last\"\r\n [setting]=\"viewSetting\"\r\n [secondaryColumns]=\"secondaryColumns | filterColumnsByDetails: detailsColumns:false\"\r\n [columns]=\"columns | filterColumnsByDetails: detailsColumns:false\"\r\n [isNewInlineMo]=\"mo.$NewInlineMo\"\r\n [access]=\"access\"\r\n [inlineEditMode]=\"inlineEditMode\"\r\n [allowInlineEdit]=\"allowInlineEdit\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [allColumns]=\"allColumns\"\r\n [contextMenuItems]=\"contextMenuItems\"\r\n [canView]=\"canView\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [navigationArrow]=\"navigationArrow\"\r\n [isCheckList]=\"isCheckList\"\r\n [rowIndicator]=\"columns[0].MetaFieldTypeId === '41'\"\r\n (events)=\"onOlgoEvents($event)\"\r\n >\r\n </bnrc-dynamic-item-component>\r\n }\r\n </ng-template>\r\n <ng-template\r\n #dynamicItemTemplate\r\n let-mo\r\n let-index=\"index\"\r\n let-columns=\"columns\"\r\n let-moDataListCount=\"moDataListCount\"\r\n let-moDataList=\"moDataList\"\r\n >\r\n <bnrc-dynamic-item-component\r\n [component]=\"viewSetting.RowOlgo\"\r\n [mo]=\"mo\"\r\n [styleIndex]=\"mo.$StyleIndex\"\r\n [moDataList]=\"moDataList\"\r\n [showDetailsInRow]=\"showDetailsInRow\"\r\n [hideOpenIcon]=\"hideOpenIcon\"\r\n [detailsColumns]=\"detailsColumns\"\r\n [columnComponents]=\"viewSetting?.ColumnComponents || null\"\r\n [cartableTemplate]=\"cartableTemplates[mo.RelatedMo?.$TypeDefId]\"\r\n [cartableMo]=\"mo.RelatedMo\"\r\n [cartableWorkflowData]=\"mo.SerializedWorkflowData\"\r\n [serializedRelatedMo]=\"mo.SerializedRelatedMo\"\r\n [detailsText]=\"viewSetting?.DetailsSetting?.ButtonText\"\r\n [detailsComponent]=\"detailsComponent\"\r\n [isChecked]=\"mo.$IsChecked\"\r\n [visibility]=\"mo.$Visibility\"\r\n [expanded]=\"mo.$Expanded\"\r\n [level]=\"mo.$Level\"\r\n [parentExpanded]=\"mo.$Parent?.$Expanded\"\r\n [moDataListCount]=\"moDataListCount\"\r\n [columnsCount]=\"columnsCount - detailsColumns.length\"\r\n [typeDefId]=\"typeDefId\"\r\n [extraRelation]=\"extraRelation\"\r\n [formSetting]=\"formSetting\"\r\n [index]=\"index\"\r\n [last]=\"last\"\r\n [setting]=\"viewSetting\"\r\n [secondaryColumns]=\"secondaryColumns | filterColumnsByDetails: detailsColumns:false\"\r\n [columns]=\"columns | filterColumnsByDetails: detailsColumns:false\"\r\n [isNewInlineMo]=\"mo.$NewInlineMo\"\r\n [access]=\"access\"\r\n [inlineEditMode]=\"inlineEditMode\"\r\n [allowInlineEdit]=\"allowInlineEdit\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [allColumns]=\"allColumns\"\r\n [contextMenuItems]=\"contextMenuItems\"\r\n [canView]=\"canView\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [navigationArrow]=\"navigationArrow\"\r\n [isCheckList]=\"isCheckList\"\r\n [rowIndicator]=\"columns[0].MetaFieldTypeId === '41'\"\r\n (events)=\"onOlgoEvents($event)\"\r\n >\r\n </bnrc-dynamic-item-component>\r\n </ng-template>\r\n }\r\n</ng-template>\r\n", styles: [":host{display:block}.fd-list__group-header{column-gap:10px;align-items:center}.header th{border-left:none!important;border-right:none!important}.clearCheckAll{text-decoration:none!important}.fd-list--navigation-indication .fd-list__item:after{min-width:0!important}li.standard-list-row{padding-top:.2rem;padding-bottom:.2rem;min-height:4rem;justify-content:space-evenly;column-gap:10px}li.standard-list-row:hover:not(.selected){background-color:var(--sapBackgroundColor, #f7f7f7)}li.standard-list-row .fd-list__content{row-gap:.4rem}li.standard-list-row .fd-list__content .fd-list__byline{padding:0;font-size:.775rem}li.standard-list-row ::ng-deep .fd-form-item{position:static}li.standard-list-row ::ng-deep .fd-form-item .fd-checkbox__label--compact{padding:0;margin-left:0}li.standard-list-row ::ng-deep fd-icon{font-size:.75rem!important}fd-layout-panel{height:100%}.li-link.checklink[rtl=true]{padding-right:0!important}.li-link.checklist[rtl=false]{padding-left:0!important}.standard-list-group-label{padding-top:10px;padding-bottom:3px}fd-layout-panel-header{display:none}fd-layout-panel.popup-mode.size-s{box-shadow:none!important}fd-layout-panel.popup-mode.size-s fd-layout-panel-header{display:none!important}.popup-mode fd-layout-panel-header{display:flex;min-height:1rem;height:1rem;border:none!important}.popup-mode fd-layout-panel-header h4{font-weight:700;font-size:1rem}.popup-mode fd-layout-panel-head{display:flex;column-gap:5px;align-items:center;justify-content:center}.popup-mode ::ng-deep li{border:none!important}.popup-mode fd-layout-panel-body{margin-top:.3rem}.popup-mode fd-layout-panel-filters{border:none!important;padding:0 1rem}.popup-mode .drop-down{width:100%;max-width:100%;max-height:2rem!important;height:2rem!important;background:var(--sapButton_Background)!important;border:1px solid #ccc!important}.popup-mode .drop-down ::ng-deep span{font-size:1rem!important;line-height:1.2rem!important}.popup-mode .drop-down ::ng-deep fd-icon{position:absolute;left:10px}fd-popover{width:100%;max-width:100%}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { 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", "maxHeightHeader", "fields", "isChecked", "layout94$", "inlineEditMode", "isNewInlineMo", "allowInlineEdit", "typeDefId", "rowIndicator", "rowIndicatorColor", "UlvMainCtrlr"] }, { kind: "directive", type: i2.EllipsifyDirective, selector: "[ellipsify]", inputs: ["limitLine"] }, { kind: "directive", type: i2.MobileDirective, selector: "[mobile]" }, { kind: "component", type: i2$6.LinkComponent, selector: "[fdLink], [fd-link]", inputs: ["class", "emphasized", "disabled", "inverted", "subtle", "undecorated"] }, { kind: "directive", type: i4$3.ContentDensityDirective, selector: "[fdContentDensity]:not([fdCompact]):not([fdCondensed]):not([fdCozy]), [fdCompact]:not([fdContentDensity]):not([fdCondensed]):not([fdCozy]), [fdCondensed]:not([fdContentDensity]):not([fdCompact]):not([fdCozy]), [fdCozy]:not([fdContentDensity]):not([fdCompact]):not([fdCondensed])", inputs: ["fdContentDensity", "fdCompact", "fdCondensed", "fdCozy"], exportAs: ["fdContentDensity"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i3.IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "color", "background", "class", "ariaLabel", "ariaHidden"] }, { kind: "component", type: i2$5.LayoutPanelComponent, selector: "fd-layout-panel", inputs: ["backgroundImage", "id", "transparent"] }, { kind: "component", type: i2$5.LayoutPanelHeaderComponent, selector: "fd-layout-panel-header" }, { kind: "component", type: i2$5.LayoutPanelHeadComponent, selector: "fd-layout-panel-head" }, { kind: "directive", type: i2$5.LayoutPanelTitleDirective, selector: "[fd-layout-panel-title]" }, { kind: "component", type: i2$5.LayoutPanelActionsComponent, selector: "fd-layout-panel-actions" }, { kind: "component", type: i2$5.LayoutPanelFiltersComponent, selector: "fd-layout-panel-filters" }, { kind: "component", type: i2$5.LayoutPanelBodyComponent, selector: "fd-layout-panel-body", inputs: ["bleed"] }, { kind: "component", type: i7.ListComponent, selector: "[fd-list], [fdList]", inputs: ["dropdownMode", "multiInputMode", "mobileMode", "hasMessage", "noBorder", "navigationIndicator", "selection", "keyboardSupport", "byline", "subline", "theme", "unreadIndicator", "role", "settingsList", "settingsListFooter"], outputs: ["focusEscapeList"] }, { kind: "directive", type: i7.ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap", "truncate"] }, { kind: "directive", type: i7.ListGroupHeaderDirective, selector: "[fdListGroupHeader], [fd-list-group-header]", inputs: ["nativeElementId"], outputs: ["keyDown"] }, { kind: "component", type: i5$2.MenuComponent, selector: "fd-menu", inputs: ["mobile", "disabled", "focusTrapped", "focusAutoCapture", "openOnHoverTime", "mobileConfig", "ariaLabel", "ariaLabelledby", "id"], outputs: ["activePath"] }, { kind: "directive", type: i5$2.MenuTriggerDirective, selector: "[fdMenuTrigger]", inputs: ["fdMenuTrigger"] }, { kind: "component", type: i8$1.ObjectStatusComponent, selector: "[fd-object-status]", inputs: ["class", "status", "glyph", "glyphFont", "label", "glyphAriaLabel", "indicationColor", "clickable", "inverted", "large", "secondaryIndication", "textTemplate"] }, { kind: "component", type: i7$1.PopoverControlComponent, selector: "fd-popover-control, [fdPopoverControl]" }, { kind: "component", type: i7$1.PopoverBodyComponent, selector: "fd-popover-body", inputs: ["minWidth", "maxWidth", "minHeight", "maxHeight"] }, { kind: "component", type: i7$1.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig", "preventSpaceKeyScroll"] }, { kind: "component", type: i7$2.ToolbarComponent, selector: "fd-toolbar", inputs: ["titleId", "class", "shouldOverflow", "fdType", "title", "active", "clearBorder", "forceOverflow", "tabindex", "headingLevel", "ariaLabel", "ariaLabelledBy"] }, { kind: "directive", type: i7$2.ToolbarItemDirective, selector: "[fd-toolbar-item], [fdOverflowGroup], [fdOverflowPriority]", inputs: ["fdOverflowPriority", "fdOverflowGroup"] }, { kind: "directive", type: i7$2.ToolbarLabelDirective, selector: "[fd-toolbar-label]" }, { kind: "component", type: i13.TokenComponent, selector: "fd-token", inputs: ["disabled", "selected", "readOnly"], outputs: ["onCloseClick", "onRemove", "onTokenClick", "onTokenKeydown", "elementFocused"] }, { kind: "component", type: NoDataComponent, selector: "bsu-no-data", inputs: ["simple"] }, { kind: "component", type: ListItemComponent, selector: "bsu-list-item", inputs: ["setting", "isDisplayType"] }, { kind: "directive", type: ContentDensityDirective, selector: "[contentDensity]" }, { kind: "pipe", type: i2.MultipleGroupByPipe, name: "multipleGroupBy" }, { kind: "pipe", type: i2.MoReportValuePipe, name: "rval" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: i2.FilterColumnsByDetailsPipe, name: "filterColumnsByDetails" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
5824
5829
  }
5825
5830
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UiListViewComponent, decorators: [{
5826
5831
  type: Component,
@@ -6050,7 +6055,7 @@ class BarsaTableHeaderComponent extends BaseComponent {
6050
6055
  return `${column.Name}${index}`;
6051
6056
  }
6052
6057
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BarsaTableHeaderComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
6053
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: BarsaTableHeaderComponent, isStandalone: false, selector: "bsu-barsa-table-header", inputs: { allChecked: "allChecked", isCheckList: "isCheckList", attachmentViewType: "attachmentViewType", columns: "columns", fitWidth: "fitWidth", contextMenuItems: "contextMenuItems", contextMenuWidth: "contextMenuWidth", showViewButton: "showViewButton", hasSelected: "hasSelected", isMobile: "isMobile", hideOpenIcon: "hideOpenIcon", disableOverflowContextMenu: "disableOverflowContextMenu", inlineEditMode: "inlineEditMode", hideHeader: "hideHeader", showDetailsInRow: "showDetailsInRow", viewSetting: "viewSetting", tableWidth: "tableWidth", resizedByUser: "resizedByUser", disableResponsive: "disableResponsive", actionList: "actionList", rowIndicator: "rowIndicator", rtl: "rtl", sticky: "sticky", showRowNumber: "showRowNumber", hasSecondaryColumns: "hasSecondaryColumns", disableResize: "disableResize", disableHeaderContextMenu: "disableHeaderContextMenu", deviceSize: "deviceSize", tableHeaderMode: "tableHeaderMode" }, outputs: { allCheckbox: "allCheckbox", columnResize: "columnResize", columnResizing: "columnResizing", fitToContent: "fitToContent", fitToContainer: "fitToContainer", freeColumnSize: "freeColumnSize", sortAscending: "sortAscending", sortDescending: "sortDescending", filter: "filter", resetGridSettings: "resetGridSettings", headerRender: "headerRender" }, viewQueries: [{ propertyName: "theadRef", first: true, predicate: ["theadRef"], descendants: true, read: ElementRef, static: true }, { propertyName: "thList", predicate: ["thRef"], descendants: true, read: ElementRef }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<thead\r\n fd-table-header\r\n [class.inline-edit]=\"inlineEditMode\"\r\n [class.smallColumns]=\"columnsSmallerThanTableWidth\"\r\n class=\"ellapsis\"\r\n [class.sticky-header]=\"sticky\"\r\n #theadRef\r\n>\r\n <tr fd-table-row>\r\n @if (!hideHeader) { @if (rowIndicator) {\r\n <th fd-table-cell fd-table-status-indicator #rowIndicator></th>\r\n } @if (showRowNumber) {\r\n <th fd-table-cell style=\"width: 40px; max-width: 40px\"></th>\r\n } @if (isCheckList) {\r\n <th fd-table-cell>\r\n <fd-checkbox\r\n name=\"allCheckbox\"\r\n [ngModel]=\"allChecked\"\r\n (ngModelChange)=\"onAllCheckbox($event)\"\r\n ></fd-checkbox>\r\n </th>\r\n } @if (!isCheckList && !showRowNumber) {\r\n <th fd-table-cell class=\"single-select\"></th>\r\n } @for (column of columns; track _trackByColumn(i, column); let i = $index; let last = $last) {\r\n <th\r\n #thRef\r\n tableth\r\n [hasSecondaryColumns]=\"hasSecondaryColumns\"\r\n fd-table-cell\r\n resizable\r\n [index]=\"i\"\r\n [last]=\"last\"\r\n [columnsLength]=\"columns.length\"\r\n [column]=\"column\"\r\n [tableHeaderMode]=\"tableHeaderMode\"\r\n [fieldTypeId]=\"+column.FieldTypeId\"\r\n [rtl]=\"rtl\"\r\n [caption]=\"column.Caption | bbbTranslate\"\r\n [name]=\"column.Name\"\r\n [icon]=\"column.Icon\"\r\n [colClass]=\"column.$CSSClassName + ' column__' + column.Caption\"\r\n [displayType]=\"column.Extra?.IconDisplayTypeEnum\"\r\n [isImageOrIcon]=\"(column | thImageOrIcon) === true\"\r\n [disableResize]=\"\r\n hasSecondaryColumns ||\r\n disableResize ||\r\n (tableHeaderMode === 2 && last) ||\r\n (column | thImageOrIcon) === true\r\n \"\r\n [disableHeaderContextMenu]=\"disableHeaderContextMenu\"\r\n [disableResponsive]=\"disableResponsive\"\r\n (sortAscending)=\"sortAscending.emit(column)\"\r\n (sortDescending)=\"sortDescending.emit(column)\"\r\n (filter)=\"filter.emit(column)\"\r\n (resetGridSettings)=\"resetGridSettings.emit()\"\r\n (widthChange)=\"!hasSecondaryColumns && onColumnWidthChange(column)\"\r\n (widthChanging)=\"!hasSecondaryColumns && onColumnWidthChanging(i, column, $event)\"\r\n [style.width]=\"hasSecondaryColumns ? (columns.length === 1 ? '100% !important' : '50% !important') : null\"\r\n >\r\n @if(!disableHeaderContextMenu){\r\n <fd-popover #menu>\r\n <fd-popover-control>\r\n <ng-container *ngTemplateOutlet=\"headerValue; context: { $implicit: column }\"></ng-container>\r\n </fd-popover-control>\r\n <fd-popover-body>\r\n <ul fd-list>\r\n <li fd-list-item>\r\n <a fd-list-link (click)=\"onSortAscending(column, menu)\">\r\n <fd-menu-addon position=\"before\" glyph=\"sort-ascending\" fd-list-icon></fd-menu-addon>\r\n <span fd-list-title\r\n >{{ ('Sort' | bbbTranslate) + ' ' }} {{ 'Ascending' | bbbTranslate }}</span\r\n >\r\n </a>\r\n </li>\r\n <li fd-list-item>\r\n <a fd-list-link (click)=\"onSortDescending(column, menu)\" bodyClick>\r\n <fd-menu-addon position=\"before\" glyph=\"sort-descending\" fd-list-icon></fd-menu-addon>\r\n <span fd-list-title\r\n >{{ ('Sort' | bbbTranslate) + ' ' }} {{ 'Descending' | bbbTranslate }}</span\r\n >\r\n </a>\r\n </li>\r\n <li fd-list-item>\r\n <a fd-list-link (click)=\"onFitToContent(column, i)\" bodyClick>\r\n <fd-menu-addon position=\"before\" fd-list-icon></fd-menu-addon>\r\n <span fd-list-title>{{ ('Fit Column To Content' | bbbTranslate) + ' ' }}</span>\r\n </a>\r\n </li>\r\n <li fd-list-item>\r\n <a fd-list-link (click)=\"fitToContainer.emit()\" bodyClick>\r\n <fd-menu-addon position=\"before\" fd-list-icon></fd-menu-addon>\r\n <span fd-list-title>{{ ('All Columns In Page' | bbbTranslate) + ' ' }}</span>\r\n </a>\r\n </li>\r\n <li fd-list-item>\r\n <a fd-list-link (click)=\"freeColumnSize.emit()\" bodyClick>\r\n <fd-menu-addon position=\"before\" fd-list-icon></fd-menu-addon>\r\n <span fd-list-title>{{ ('Free Columns Size' | bbbTranslate) + ' ' }}</span>\r\n </a>\r\n </li>\r\n <li fd-list-item>\r\n <a fd-list-link (click)=\"onResetColumnsSettings()\" bodyClick>\r\n <fd-menu-addon position=\"before\" glyph=\"reset\" fd-list-icon></fd-menu-addon>\r\n <span fd-list-title>{{ 'GridSettingBase' | bbbTranslate }}</span>\r\n </a>\r\n </li>\r\n </ul>\r\n </fd-popover-body>\r\n </fd-popover>\r\n } @else{\r\n <ng-container *ngTemplateOutlet=\"headerValue; context: { $implicit: column }\"></ng-container>\r\n }\r\n </th>\r\n } @if (contextMenuItems && contextMenuItems.length > 0) {\r\n <th\r\n class=\"col-header col-context-menu\"\r\n fd-table-cell\r\n [fitContent]=\"disableOverflowContextMenu\"\r\n [style.width.px]=\"contextMenuWidth\"\r\n ></th>\r\n } @if (showDetailsInRow && !inlineEditMode) {\r\n <th class=\"col-header col-details\" [style.width]=\"deviceSize === 's' ? '44px' : '120px'\" fd-table-cell></th>\r\n } @if (showViewButton) {\r\n <th class=\"col-header col-view\" [style.width.px]=\"36 * (actionList?.length ?? 0) + 8\" fd-table-cell></th>\r\n } } @if (!hideHeader) {\r\n <th fd-table-cell style=\"width: 0.1%\"></th>\r\n }\r\n </tr>\r\n</thead>\r\n<ng-template #headerValue let-column>\r\n <div\r\n style=\"display: flex\"\r\n [attr.title]=\"column.Caption | bbbTranslate\"\r\n [style.min-width]=\"isMobile ? 'max-content' : null\"\r\n >\r\n @if ( (column.Extra?.IconDisplayTypeEnum === 'Image' || column.FieldTypeId === 42) && column.Icon) {\r\n <img [src]=\"column.Icon\" />\r\n } @else if(column.FieldTypeId!==38) {\r\n {{ column.Caption | bbbTranslate }}\r\n }\r\n </div>\r\n</ng-template>\r\n", styles: [":host{display:contents;width:100%}:host.has-toolbar thead{border-top:none!important}:host>thead.sticky-header{position:sticky;top:0;z-index:1}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i2.BodyClickDirective, selector: "[bodyClick]", inputs: ["disableBodyClick"] }, { kind: "component", type: i2$2.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: i7.ListComponent, selector: "[fd-list], [fdList]", inputs: ["dropdownMode", "multiInputMode", "mobileMode", "hasMessage", "noBorder", "navigationIndicator", "selection", "keyboardSupport", "byline", "subline", "theme", "unreadIndicator", "role", "settingsList", "settingsListFooter"], outputs: ["focusEscapeList"] }, { kind: "component", type: i7.ListItemComponent, selector: "[fdListItem] ,[fd-list-item]", inputs: ["selected", "noData", "action", "interactive", "growing", "counter", "active", "unread", "byline", "ariaRole", "id", "preventClick", "settingsListTpl"], outputs: ["keyDown"], exportAs: ["fdListItem"] }, { kind: "directive", type: i7.ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap", "truncate"] }, { kind: "directive", type: i7.ListIconDirective, selector: "[fdListIcon], [fd-list-icon]", inputs: ["glyph", "glyphFont", "class", "role", "ariaHidden"] }, { kind: "directive", type: i7.ListLinkDirective, selector: "[fd-list-link], [fdListLink]", inputs: ["navigationIndicator", "navigated", "focusable"] }, { kind: "component", type: i6.MenuAddonDirective, selector: "fd-menu-addon", inputs: ["position", "submenuIndicator", "ariaHidden"] }, { kind: "component", type: i7$1.PopoverControlComponent, selector: "fd-popover-control, [fdPopoverControl]" }, { kind: "component", type: i7$1.PopoverBodyComponent, selector: "fd-popover-body", inputs: ["minWidth", "maxWidth", "minHeight", "maxHeight"] }, { kind: "component", type: i7$1.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig", "preventSpaceKeyScroll"] }, { kind: "directive", type: i3$4.TableHeaderDirective, selector: "[fdTableHeader], [fd-table-header]", inputs: ["noBorderX", "noBorderY", "nonInteractive"] }, { kind: "directive", type: i3$4.TableRowDirective, selector: "[fdTableRow], [fd-table-row]", inputs: ["activable", "highlightActive", "hoverable", "focusable", "main", "secondary", "active"] }, { kind: "directive", type: i3$4.TableCellDirective, selector: "[fdTableCell], [fd-table-cell]", inputs: ["noBorderX", "noBorderY", "activable", "focusable", "hoverable", "fitContent", "noPadding", "noData", "nonInteractive", "key"] }, { kind: "directive", type: i3$4.TableStatusIndicatorDirective, selector: "[fdTableStatusIndicator], [fd-table-status-indicator]", inputs: ["status"] }, { kind: "component", type: i2.ResizableComponent, selector: "th[resizable]", inputs: ["disableResize", "rtl"], outputs: ["widthChange", "widthChanging"] }, { kind: "directive", type: TableThDirective, selector: "[tableth]", inputs: ["fieldTypeId", "caption", "icon", "inlineEditMode", "isImageOrIcon", "columnsLength", "tableWidth", "last", "rtl", "column", "disableResponsive", "disableResize", "disableHeaderContextMenu", "hasSecondaryColumns", "tableHeaderMode", "colClass", "displayType", "name", "index"] }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: i2.ThImageOrIconePipe, name: "thImageOrIcon" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
6058
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: BarsaTableHeaderComponent, isStandalone: false, selector: "bsu-barsa-table-header", inputs: { allChecked: "allChecked", isCheckList: "isCheckList", attachmentViewType: "attachmentViewType", columns: "columns", fitWidth: "fitWidth", contextMenuItems: "contextMenuItems", contextMenuWidth: "contextMenuWidth", showViewButton: "showViewButton", hasSelected: "hasSelected", isMobile: "isMobile", hideOpenIcon: "hideOpenIcon", disableOverflowContextMenu: "disableOverflowContextMenu", inlineEditMode: "inlineEditMode", hideHeader: "hideHeader", showDetailsInRow: "showDetailsInRow", viewSetting: "viewSetting", tableWidth: "tableWidth", resizedByUser: "resizedByUser", disableResponsive: "disableResponsive", actionList: "actionList", rowIndicator: "rowIndicator", rtl: "rtl", sticky: "sticky", showRowNumber: "showRowNumber", hasSecondaryColumns: "hasSecondaryColumns", disableResize: "disableResize", disableHeaderContextMenu: "disableHeaderContextMenu", deviceSize: "deviceSize", tableHeaderMode: "tableHeaderMode" }, outputs: { allCheckbox: "allCheckbox", columnResize: "columnResize", columnResizing: "columnResizing", fitToContent: "fitToContent", fitToContainer: "fitToContainer", freeColumnSize: "freeColumnSize", sortAscending: "sortAscending", sortDescending: "sortDescending", filter: "filter", resetGridSettings: "resetGridSettings", headerRender: "headerRender" }, viewQueries: [{ propertyName: "theadRef", first: true, predicate: ["theadRef"], descendants: true, read: ElementRef, static: true }, { propertyName: "thList", predicate: ["thRef"], descendants: true, read: ElementRef }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<thead\r\n fd-table-header\r\n [class.inline-edit]=\"inlineEditMode\"\r\n [class.smallColumns]=\"columnsSmallerThanTableWidth\"\r\n class=\"ellapsis\"\r\n [class.sticky-header]=\"sticky\"\r\n #theadRef\r\n>\r\n <tr fd-table-row>\r\n @if (!hideHeader) { @if (rowIndicator) {\r\n <th fd-table-cell fd-table-status-indicator #rowIndicator></th>\r\n } @if (showRowNumber) {\r\n <th fd-table-cell style=\"width: 40px; max-width: 40px\"></th>\r\n } @if (isCheckList) {\r\n <th fd-table-cell>\r\n <fd-checkbox\r\n name=\"allCheckbox\"\r\n [ngModel]=\"allChecked\"\r\n (ngModelChange)=\"onAllCheckbox($event)\"\r\n ></fd-checkbox>\r\n </th>\r\n } @if (!isCheckList && !showRowNumber) {\r\n <th fd-table-cell class=\"single-select\"></th>\r\n } @for (column of columns; track _trackByColumn(i, column); let i = $index; let last = $last) {\r\n <th\r\n #thRef\r\n tableth\r\n [hasSecondaryColumns]=\"hasSecondaryColumns\"\r\n fd-table-cell\r\n resizable\r\n [index]=\"i\"\r\n [last]=\"last\"\r\n [columnsLength]=\"columns.length\"\r\n [column]=\"column\"\r\n [tableHeaderMode]=\"tableHeaderMode\"\r\n [fieldTypeId]=\"+column.FieldTypeId\"\r\n [rtl]=\"rtl\"\r\n [caption]=\"column.Caption | bbbTranslate\"\r\n [name]=\"column.Name\"\r\n [icon]=\"column.Icon\"\r\n [colClass]=\"column.$CSSClassName + ' column__' + column.Caption\"\r\n [displayType]=\"column.Extra?.IconDisplayTypeEnum\"\r\n [isImageOrIcon]=\"(column | thImageOrIcon) === true\"\r\n [disableResize]=\"\r\n hasSecondaryColumns ||\r\n disableResize ||\r\n (tableHeaderMode === 2 && last) ||\r\n (column | thImageOrIcon) === true\r\n \"\r\n [disableHeaderContextMenu]=\"disableHeaderContextMenu\"\r\n [disableResponsive]=\"disableResponsive\"\r\n (sortAscending)=\"sortAscending.emit(column)\"\r\n (sortDescending)=\"sortDescending.emit(column)\"\r\n (filter)=\"filter.emit(column)\"\r\n (resetGridSettings)=\"resetGridSettings.emit()\"\r\n (widthChange)=\"!hasSecondaryColumns && onColumnWidthChange(column)\"\r\n (widthChanging)=\"!hasSecondaryColumns && onColumnWidthChanging(i, column, $event)\"\r\n [style.width]=\"hasSecondaryColumns ? (columns.length === 1 ? '100% !important' : '50% !important') : null\"\r\n >\r\n @if(!disableHeaderContextMenu){\r\n <fd-popover #menu>\r\n <fd-popover-control>\r\n <ng-container *ngTemplateOutlet=\"headerValue; context: { $implicit: column }\"></ng-container>\r\n </fd-popover-control>\r\n <fd-popover-body>\r\n <ul fd-list>\r\n <li fd-list-item>\r\n <a fd-list-link (click)=\"onSortAscending(column, menu)\">\r\n <fd-menu-addon position=\"before\" glyph=\"sort-ascending\" fd-list-icon></fd-menu-addon>\r\n <span fd-list-title\r\n >{{ ('Sort' | bbbTranslate) + ' ' }} {{ 'Ascending' | bbbTranslate }}</span\r\n >\r\n </a>\r\n </li>\r\n <li fd-list-item>\r\n <a fd-list-link (click)=\"onSortDescending(column, menu)\" bodyClick>\r\n <fd-menu-addon position=\"before\" glyph=\"sort-descending\" fd-list-icon></fd-menu-addon>\r\n <span fd-list-title\r\n >{{ ('Sort' | bbbTranslate) + ' ' }} {{ 'Descending' | bbbTranslate }}</span\r\n >\r\n </a>\r\n </li>\r\n <li fd-list-item>\r\n <a fd-list-link (click)=\"onFitToContent(column, i)\" bodyClick>\r\n <fd-menu-addon position=\"before\" fd-list-icon></fd-menu-addon>\r\n <span fd-list-title>{{ ('Fit Column To Content' | bbbTranslate) + ' ' }}</span>\r\n </a>\r\n </li>\r\n <li fd-list-item>\r\n <a fd-list-link (click)=\"fitToContainer.emit()\" bodyClick>\r\n <fd-menu-addon position=\"before\" fd-list-icon></fd-menu-addon>\r\n <span fd-list-title>{{ ('All Columns In Page' | bbbTranslate) + ' ' }}</span>\r\n </a>\r\n </li>\r\n <li fd-list-item>\r\n <a fd-list-link (click)=\"freeColumnSize.emit()\" bodyClick>\r\n <fd-menu-addon position=\"before\" fd-list-icon></fd-menu-addon>\r\n <span fd-list-title>{{ ('Free Columns Size' | bbbTranslate) + ' ' }}</span>\r\n </a>\r\n </li>\r\n <li fd-list-item>\r\n <a fd-list-link (click)=\"onResetColumnsSettings()\" bodyClick>\r\n <fd-menu-addon position=\"before\" glyph=\"reset\" fd-list-icon></fd-menu-addon>\r\n <span fd-list-title>{{ 'GridSettingBase' | bbbTranslate }}</span>\r\n </a>\r\n </li>\r\n </ul>\r\n </fd-popover-body>\r\n </fd-popover>\r\n } @else{\r\n <ng-container *ngTemplateOutlet=\"headerValue; context: { $implicit: column }\"></ng-container>\r\n }\r\n </th>\r\n } @if (contextMenuItems && contextMenuItems.length > 0) {\r\n <th\r\n class=\"col-header col-context-menu\"\r\n fd-table-cell\r\n [fitContent]=\"disableOverflowContextMenu\"\r\n [style.width.px]=\"contextMenuWidth\"\r\n ></th>\r\n } @if (showDetailsInRow && !inlineEditMode) {\r\n <th class=\"col-header col-details\" [style.width]=\"deviceSize === 's' ? '44px' : '120px'\" fd-table-cell></th>\r\n } @if (showViewButton) {\r\n <th class=\"col-header col-view\" [style.width.px]=\"36 * (actionList?.length ?? 0) + 8\" fd-table-cell></th>\r\n } } @if (!hideHeader) {\r\n <th fd-table-cell style=\"width: 0.1%\"></th>\r\n }\r\n </tr>\r\n</thead>\r\n<ng-template #headerValue let-column>\r\n <div\r\n style=\"display: flex\"\r\n [attr.title]=\"column.Caption | bbbTranslate\"\r\n [style.min-width]=\"isMobile ? 'max-content' : null\"\r\n >\r\n @if ( (column.Extra?.IconDisplayTypeEnum === 'Image' || column.FieldTypeId === 42) && column.Icon) {\r\n <img [src]=\"column.Icon\" />\r\n } @else if(column.FieldTypeId!==38) {\r\n {{ column.Caption | bbbTranslate }}\r\n }\r\n </div>\r\n</ng-template>\r\n", styles: [":host{display:contents;width:100%}:host.has-toolbar thead{border-top:none!important}:host>thead.sticky-header{position:sticky;top:0;z-index:1}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i2.BodyClickDirective, selector: "[bodyClick]", inputs: ["disableBodyClick"] }, { kind: "component", type: i2$2.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: i7.ListComponent, selector: "[fd-list], [fdList]", inputs: ["dropdownMode", "multiInputMode", "mobileMode", "hasMessage", "noBorder", "navigationIndicator", "selection", "keyboardSupport", "byline", "subline", "theme", "unreadIndicator", "role", "settingsList", "settingsListFooter"], outputs: ["focusEscapeList"] }, { kind: "component", type: i7.ListItemComponent, selector: "[fdListItem] ,[fd-list-item]", inputs: ["selected", "noData", "action", "interactive", "growing", "counter", "active", "unread", "byline", "ariaRole", "id", "preventClick", "settingsListTpl"], outputs: ["keyDown"], exportAs: ["fdListItem"] }, { kind: "directive", type: i7.ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap", "truncate"] }, { kind: "directive", type: i7.ListIconDirective, selector: "[fdListIcon], [fd-list-icon]", inputs: ["glyph", "glyphFont", "class", "role", "ariaHidden"] }, { kind: "directive", type: i7.ListLinkDirective, selector: "[fd-list-link], [fdListLink]", inputs: ["navigationIndicator", "navigated", "focusable"] }, { kind: "component", type: i5$2.MenuAddonDirective, selector: "fd-menu-addon", inputs: ["position", "submenuIndicator", "ariaHidden"] }, { kind: "component", type: i7$1.PopoverControlComponent, selector: "fd-popover-control, [fdPopoverControl]" }, { kind: "component", type: i7$1.PopoverBodyComponent, selector: "fd-popover-body", inputs: ["minWidth", "maxWidth", "minHeight", "maxHeight"] }, { kind: "component", type: i7$1.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig", "preventSpaceKeyScroll"] }, { kind: "directive", type: i3$4.TableHeaderDirective, selector: "[fdTableHeader], [fd-table-header]", inputs: ["noBorderX", "noBorderY", "nonInteractive"] }, { kind: "directive", type: i3$4.TableRowDirective, selector: "[fdTableRow], [fd-table-row]", inputs: ["activable", "highlightActive", "hoverable", "focusable", "main", "secondary", "active"] }, { kind: "directive", type: i3$4.TableCellDirective, selector: "[fdTableCell], [fd-table-cell]", inputs: ["noBorderX", "noBorderY", "activable", "focusable", "hoverable", "fitContent", "noPadding", "noData", "nonInteractive", "key"] }, { kind: "directive", type: i3$4.TableStatusIndicatorDirective, selector: "[fdTableStatusIndicator], [fd-table-status-indicator]", inputs: ["status"] }, { kind: "component", type: i2.ResizableComponent, selector: "th[resizable]", inputs: ["disableResize", "rtl"], outputs: ["widthChange", "widthChanging"] }, { kind: "directive", type: TableThDirective, selector: "[tableth]", inputs: ["fieldTypeId", "caption", "icon", "inlineEditMode", "isImageOrIcon", "columnsLength", "tableWidth", "last", "rtl", "column", "disableResponsive", "disableResize", "disableHeaderContextMenu", "hasSecondaryColumns", "tableHeaderMode", "colClass", "displayType", "name", "index"] }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: i2.ThImageOrIconePipe, name: "thImageOrIcon" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
6054
6059
  }
6055
6060
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BarsaTableHeaderComponent, decorators: [{
6056
6061
  type: Component,
@@ -7422,7 +7427,7 @@ class BarsaUlvMainComponent extends BaseComponent {
7422
7427
  this._customBackground = true;
7423
7428
  }
7424
7429
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BarsaUlvMainComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
7425
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: BarsaUlvMainComponent, isStandalone: false, selector: "bsu-barsa-ulv-main", inputs: { component: "component", viewerControl: "viewerControl", hideViewerLoading: "hideViewerLoading", loading: "loading", hidePaging: "hidePaging", viewerLoading: "viewerLoading", isReportPage: "isReportPage", cssBackground: "cssBackground", deviceSize: "deviceSize", shortcuts: "shortcuts", title: "title", searchPanelUi: "searchPanelUi", breadCrumbs: "breadCrumbs", allSearchPanelSettings: "allSearchPanelSettings", isAnonymous: "isAnonymous", canSaveGridSetting: "canSaveGridSetting", rtl: "rtl", hideUlvPageTitle: "hideUlvPageTitle", selectedSearchPanelSettings: "selectedSearchPanelSettings", searchPanelMoChanged: "searchPanelMoChanged", selectedSearchPanelSettingsId: "selectedSearchPanelSettingsId", hideSearchPanel: "hideSearchPanel", pagingSetting: "pagingSetting", contentDensity: "contentDensity", context: "context", isMobile: "isMobile", standalone: "standalone", landscape: "landscape", toolbarSettings: "toolbarSettings", layoutInfo: "layoutInfo", formSetting: "formSetting", allowGridColumnSort: "allowGridColumnSort", useLayoutItemTextForControl: "useLayoutItemTextForControl", hideTitle: "hideTitle", deviceName: "deviceName", access: "access", hideToolbar: "hideToolbar", toolbarButtons: "toolbarButtons", toolbarButtonsReportView: "toolbarButtonsReportView", inlineEditMode: "inlineEditMode", allowInlineEdit: "allowInlineEdit", gridSetting: "gridSetting", viewCollection: "viewCollection", reportView: "reportView", inDialog: "inDialog", isMultiSelect: "isMultiSelect", hiddenOverflowContent: "hiddenOverflowContent", cls: "cls", hasSelected: "hasSelected", ulvHeightSizeType: "ulvHeightSizeType", ulvHeightSize: "ulvHeightSize" }, outputs: { toggleMultiSelect: "toggleMultiSelect", groupbyClick: "groupbyClick", sortClick: "sortClick", columnClick: "columnClick", editModeClick: "editModeClick", viewClick: "viewClick", createNewInlineMo: "createNewInlineMo", contentHeightChange: "contentHeightChange", closeEvent: "closeEvent", searchPanelMoChange: "searchPanelMoChange", openManageFilters: "openManageFilters", collapsedChange: "collapsedChange", hideSearchPanelClick: "hideSearchPanelClick", filterSave: "filterSave", filterSaveAs: "filterSaveAs", pageChange: "pageChange", showFilterFieldsSetting: "showFilterFieldsSetting", manageFilters: "manageFilters", clearSearch: "clearSearch", search: "search", selectSearchPanelSettings: "selectSearchPanelSettings" }, host: { properties: { "style.background-color": "this._backgroundColor", "style.background-image": "this._backgroundUrl", "style.background-repeat": "this._backgroundRepeat", "class.custom-background": "this._customBackground" } }, viewQueries: [{ propertyName: "_dynamicPageComponent", first: true, predicate: DynamicPageComponent, descendants: true }, { propertyName: "dialogTemplate", first: true, predicate: ["searchpanelDialog"], descendants: true }, { propertyName: "_ulvToolbar", first: true, predicate: ["ulvToolbar"], descendants: true, read: ElementRef }, { propertyName: "_ulvPaging", first: true, predicate: ["ulvPaging"], descendants: true, read: ElementRef }, { propertyName: "_ulvSearchPanel", first: true, predicate: SearchPanelComponent, descendants: true, read: ElementRef }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-container\r\n *ngTemplateOutlet=\"\r\n isReportPage ? reportPageTemplate : reportTemplate;\r\n context: {\r\n $implicit: viewerControl,\r\n tabMode: viewerControl?.Setting?.ClassNames?.CustomUi?.Parameters?.TabMode\r\n }\r\n \"\r\n>\r\n</ng-container>\r\n@if (loading) {\r\n<bsu-mask size=\"m\"></bsu-mask>\r\n}\r\n<ng-template #reportPageTemplate let-viewerControl let-tabMode=\"tabMode\">\r\n <fd-dynamic-page\r\n darkClass\r\n formClose\r\n mobile\r\n [attr.isMobile]=\"isMobile ? true : null\"\r\n [isMobile]=\"isMobile\"\r\n [size]=\"deviceSize | dynamicPageSize\"\r\n [attr.tabMode]=\"tabMode\"\r\n [autoResponsive]=\"false\"\r\n [class.notitle]=\"title.length < 2 || hideUlvPageTitle\"\r\n [class.nosearchpanel]=\"!searchPanelUi\"\r\n [class.hideSearchPanel]=\"hideSearchPanel\"\r\n [class.sideContentMode]=\"sideContentMode\"\r\n >\r\n <fd-dynamic-page-header\r\n [title]=\"\r\n (title | bbbTranslate) && !hideUlvPageTitle\r\n ? (title | bbbTranslate)\r\n : isMobile && breadCrumbs.length\r\n ? breadCrumbs[breadCrumbs.length - 1].label\r\n : ''\r\n \"\r\n class=\"p-b0\"\r\n >\r\n <fd-dynamic-page-breadcrumb [class.hide]=\"isMobile\">\r\n <fd-breadcrumb>\r\n @for ( breadCrumb of breadCrumbs | slice: 0:breadCrumbs.length; track breadCrumb.url; let i =\r\n $index; let last = $last) { @if(i>0) {\r\n <fd-breadcrumb-item>\r\n <bsu-breadcrumb\r\n [index]=\"i\"\r\n [isLast]=\"last\"\r\n [breadCrumb]=\"breadCrumb\"\r\n [allBreadCrumb]=\"breadCrumbs\"\r\n ></bsu-breadcrumb>\r\n </fd-breadcrumb-item>\r\n }}\r\n </fd-breadcrumb>\r\n </fd-dynamic-page-breadcrumb>\r\n <!-- <fd-dynamic-page-title-content>\u06AF\u0632\u0627\u0631\u0634 </fd-dynamic-page-title-content> -->\r\n\r\n <fd-dynamic-page-global-actions *untilInView=\"el\" style=\"min-width: auto\">\r\n <fd-toolbar [shouldOverflow]=\"true\" style=\"display: none\"> </fd-toolbar>\r\n <!-- added this because in mobile landscape toolbar disapper -->\r\n @if ( searchPanelUi && isMobile) {\r\n <fd-toolbar\r\n class=\"global-actions\"\r\n fdType=\"transparent\"\r\n [clearBorder]=\"true\"\r\n [shouldOverflow]=\"deviceSize === 's'\"\r\n >\r\n @if (isAnonymous === false && canSaveGridSetting) {\r\n <fd-popover fd-toolbar-item #popover fdOverflowPriority=\"never\">\r\n <fd-popover-control>\r\n <div style=\"display: flex; align-items: center\">\r\n <h3 class=\"header-search\" [attr.rtl]=\"rtl\" fd-title>\r\n {{\r\n selectedSearchPanelSettings?.IsStandard\r\n ? ''\r\n : selectedSearchPanelSettings?.Title\r\n }}\r\n @if (searchPanelMoChanged) {\r\n <strong>*</strong>\r\n }\r\n </h3>\r\n <button\r\n fd-button\r\n glyph=\"slim-arrow-down\"\r\n fdType=\"transparent\"\r\n [fdContentDensity]=\"contentDensity\"\r\n ></button>\r\n </div>\r\n </fd-popover-control>\r\n <fd-popover-body mobile>\r\n <div fd-popover-body-header>\r\n <div fd-bar [fdCozy]>\r\n <div fd-bar-left>\r\n <fd-bar-element>{{ 'Filters' | bbbTranslate }}</fd-bar-element>\r\n </div>\r\n </div>\r\n </div>\r\n <ul fd-list style=\"min-height: 200px; background-color: var(--sapBackgroundColor, #f7f7f7)\">\r\n @for (option of allSearchPanelSettings; track option) {\r\n <li\r\n fd-list-item\r\n [selected]=\"option.Id === selectedSearchPanelSettingsId\"\r\n (click)=\"onSelectSearchPanelSettings(option.Id, popover)\"\r\n >\r\n <span fd-list-title>{{ option.Title }}</span>\r\n </li>\r\n }\r\n </ul>\r\n <div fd-popover-body-footer>\r\n <div fd-bar [barDesign]=\"'footer'\" [fdCozy]>\r\n @if (selectedSearchPanelSettings) {\r\n <div fd-bar-right>\r\n @if (!selectedSearchPanelSettings.IsPrimary && searchPanelMoChanged) {\r\n <fd-button-bar\r\n [label]=\"'Save' | bbbTranslate\"\r\n fdType=\"emphasized\"\r\n (click)=\"onFilterSave(popover)\"\r\n >\r\n </fd-button-bar>\r\n } @if (searchPanelMoChanged) {\r\n <fd-button-bar\r\n [label]=\"'SaveAs' | bbbTranslate\"\r\n [fdType]=\"\r\n selectedSearchPanelSettings.IsDefault ? 'emphasized' : 'transparent'\r\n \"\r\n (click)=\"onFilterSaveAs(popover)\"\r\n >\r\n </fd-button-bar>\r\n }\r\n <fd-button-bar\r\n [label]=\"'Manage' | bbbTranslate\"\r\n fdkInitialFocus\r\n fdType=\"transparent\"\r\n (click)=\"onManageFilters(popover)\"\r\n >\r\n </fd-button-bar>\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n </fd-popover-body>\r\n </fd-popover>\r\n } @if (deviceSize !== 's') {\r\n <fd-toolbar-spacer></fd-toolbar-spacer>\r\n } @if (isMobile && searchPanelUi) {\r\n <button\r\n fd-button\r\n fd-toolbar-item\r\n fdOverflowPriority=\"never\"\r\n (click)=\"onShowSearchpanelDialog()\"\r\n [glyph]=\"'filter'\"\r\n [fdContentDensity]=\"contentDensity\"\r\n ></button>\r\n }\r\n </fd-toolbar>\r\n }\r\n </fd-dynamic-page-global-actions>\r\n <fd-dynamic-page-layout-actions>\r\n <fd-toolbar fdType=\"transparent\" [clearBorder]=\"true\">\r\n <button fd-button fdType=\"transparent\" aria-label=\"Close\" (click)=\"closeEvent.emit()\" title=\"Close\">\r\n <i [class]=\"'sap-icon--' + (isMobile ? (rtl ? 'arrow-right' : 'arrow-left') : 'decline')\"></i>\r\n </button>\r\n </fd-toolbar>\r\n </fd-dynamic-page-layout-actions>\r\n </fd-dynamic-page-header>\r\n @if (!hideSearchPanel && searchPanelUi && !sideContentMode) {\r\n <fd-dynamic-page-subheader [pinnable]=\"false\" [collapsible]=\"true\">\r\n @if (!isMobile) {\r\n <bsu-search-panel\r\n [hideButtons]=\"false\"\r\n [searchPanelUi]=\"searchPanelUi\"\r\n (moChanged)=\"onSearchPanelMoChanged()\"\r\n ></bsu-search-panel>\r\n }\r\n </fd-dynamic-page-subheader>\r\n } @if (!tabMode) {\r\n\r\n <fd-dynamic-page-content>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n sideContentMode ? sideContentTemplate : viewerTemplate;\r\n context: { noRenderPageing: true }\r\n \"\r\n ></ng-container>\r\n </fd-dynamic-page-content>\r\n\r\n } @if (pagingSetting?.TotalPages) {\r\n <fd-dynamic-page-footer>\r\n <!-- page footer content goes here -->\r\n <div fd-bar [barDesign]=\"'footer'\">\r\n <div fd-bar-middle>\r\n <ng-container\r\n [renderUlvPaging]=\"context\"\r\n [pagingSetting]=\"pagingSetting\"\r\n (pageChange)=\"onPageChange($event)\"\r\n ></ng-container>\r\n </div>\r\n </div>\r\n </fd-dynamic-page-footer>\r\n }\r\n </fd-dynamic-page>\r\n @if (tabMode) {\r\n <ng-container\r\n *ngTemplateOutlet=\"sideContentMode ? sideContentTemplate : viewerTemplate; context: { noRenderPageing: true }\"\r\n ></ng-container>\r\n }\r\n</ng-template>\r\n<ng-template #reportTemplate>\r\n @if (loading) {\r\n <bsu-mask size=\"s\"></bsu-mask>\r\n } @if (!hideSearchPanel && searchPanelUi && !sideContentMode) {\r\n <ng-container *ngTemplateOutlet=\"searchpanelTemplate; context: { hideButtons: false }\"></ng-container>\r\n }\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n sideContentMode ? sideContentTemplate : viewerTemplate;\r\n context: { simpleReport: 'simpleReport' }\r\n \"\r\n >\r\n </ng-container>\r\n</ng-template>\r\n<ng-template #sideContentTemplate let-simpleReport=\"simpleReport\">\r\n <fd-dynamic-side-content\r\n [class.rtl]=\"rtl\"\r\n [size]=\"deviceSize | sapSize\"\r\n fillEmptySpace\r\n [decrement]=\"'2rem'\"\r\n [disable]=\"isReportPage\"\r\n [setMinHeight]=\"true\"\r\n *untilInView=\"el\"\r\n >\r\n <fd-dynamic-side-content-side>\r\n <ng-container\r\n *ngTemplateOutlet=\"searchpanelTemplate; context: { isSearcPanelInSideContent: true }\"\r\n ></ng-container>\r\n </fd-dynamic-side-content-side>\r\n <fd-dynamic-side-content-main [style.width]=\"deviceSize !== 's' ? mainContentWidth : null\">\r\n <fd-card>\r\n <fd-card-content class=\"tw-flex tw-flex-col\">\r\n <ng-container\r\n *ngTemplateOutlet=\"viewerTemplate; context: { noRenderPageing: isReportPage ? true : false }\"\r\n ></ng-container>\r\n </fd-card-content>\r\n </fd-card>\r\n </fd-dynamic-side-content-main>\r\n </fd-dynamic-side-content>\r\n</ng-template>\r\n<ng-template\r\n #searchpanelTemplate\r\n let-isSearcPanelInSideContent=\"isSearcPanelInSideContent\"\r\n let-hideButtons=\"hideButtons\"\r\n>\r\n @if (!isSearcPanelInSideContent) { @if (!hideSearchPanel && searchPanelUi) {\r\n <bsu-search-panel\r\n darkClass\r\n [searchPanelUi]=\"searchPanelUi\"\r\n [isSearcPanelInSideContent]=\"isSearcPanelInSideContent\"\r\n [hideButtons]=\"false\"\r\n (moChanged)=\"onSearchPanelMoChanged()\"\r\n ></bsu-search-panel>\r\n } } @else {\r\n <fd-card class=\"searchpanel-card\" darkClass>\r\n <fd-card-header>\r\n <fd-card-main-header>\r\n <h2 fd-card-title>\r\n <fd-icon glyph=\"filter\"></fd-icon><span>{{ 'Filter' | bbbTranslate }}</span>\r\n </h2>\r\n </fd-card-main-header>\r\n </fd-card-header>\r\n <fd-card-content style=\"flex-grow: 0\">\r\n @if (!hideSearchPanel && searchPanelUi) {\r\n <bsu-search-panel\r\n [searchPanelUi]=\"searchPanelUi\"\r\n [hideButtons]=\"true\"\r\n [isSearcPanelInSideContent]=\"isSearcPanelInSideContent\"\r\n (moChanged)=\"onSearchPanelMoChanged()\"\r\n ></bsu-search-panel>\r\n }\r\n </fd-card-content>\r\n <fd-card-footer style=\"border-bottom: none\">\r\n <button\r\n *fdCardFooterActionItem\r\n fd-button\r\n fdType=\"emphasized\"\r\n [label]=\"'Search' | bbbTranslate\"\r\n (click)=\"onSearch()\"\r\n [fdContentDensity]=\"contentDensity\"\r\n ></button>\r\n <button\r\n *fdCardFooterActionItem\r\n fd-button\r\n fdType=\"transparent\"\r\n [label]=\"('Delete' | bbbTranslate) + ' ' + ('Filters' | bbbTranslate)\"\r\n (click)=\"onClearSearch()\"\r\n [fdOverflowGroup]=\"1\"\r\n [fdContentDensity]=\"contentDensity\"\r\n ></button>\r\n </fd-card-footer>\r\n </fd-card>\r\n }\r\n</ng-template>\r\n<ng-template #viewerTemplate let-noRenderPageing=\"noRenderPageing\">\r\n <div\r\n darkClass\r\n class=\"viewer-container\"\r\n fillEmptySpace\r\n [shortcutHandler]=\"shortcuts\"\r\n [disable]=\"!isReportPage || !fillPage\"\r\n [decrement]=\"deviceSize !== 's' ? '100px' : '75px'\"\r\n [style.height]=\"viewerLoading && !hideViewerLoading ? '100%' : 'auto'\"\r\n [style.min-height]=\"isReportPage ? '100%' : null\"\r\n [style.position]=\"viewerLoading && !hideViewerLoading ? 'relative' : null\"\r\n >\r\n <bnrc-dynamic-ulv-toolbar-component\r\n #ulvToolbar\r\n [component]=\"ulvToolbarComponent\"\r\n [hideToolbar]=\"hideToolbar\"\r\n [deviceName]=\"deviceName\"\r\n [hideTitle]=\"true\"\r\n [deviceSize]=\"deviceSize\"\r\n [toolbarButtons]=\"toolbarButtons | ulvToolbarSettings: toolbarSettings\"\r\n [toolbarButtonsReportView]=\"toolbarButtonsReportView\"\r\n [gridSetting]=\"gridSetting\"\r\n [title]=\"title\"\r\n [hasSelected]=\"hasSelected\"\r\n [access]=\"access\"\r\n [inDialog]=\"inDialog\"\r\n [isMultiSelect]=\"isMultiSelect\"\r\n [contentDensity]=\"contentDensity\"\r\n [inlineEditMode]=\"inlineEditMode && allowInlineEdit && formSetting\"\r\n [allowInlineEdit]=\"allowInlineEdit && formSetting\"\r\n [allowGridColumnSort]=\"allowGridColumnSort\"\r\n [FnHandleEvents]=\"FnHandleUlvToolbarEvents\"\r\n ></bnrc-dynamic-ulv-toolbar-component>\r\n @if (viewerLoading) {\r\n <bsu-mask size=\"m\"></bsu-mask>\r\n } @if (viewerControl) {\r\n\r\n <ng-container\r\n [renderUlvViewer]=\"viewerControl\"\r\n [layoutInfo]=\"layoutInfo\"\r\n [isReportPage]=\"isReportPage\"\r\n ></ng-container>\r\n }@else{\r\n <fd-message-page type=\"no-items\" class=\"!tw-bg-transparent\">\r\n <fd-message-page-title>\u0627\u0628\u062A\u062F\u0627 \u0641\u06CC\u0644\u062A\u0631 \u0631\u0627 \u062A\u0646\u0638\u06CC\u0645 \u06A9\u0646\u06CC\u062F \u0648 \u062C\u0633\u062A\u062C\u0648 \u0646\u0645\u0627\u06CC\u06CC\u062F.</fd-message-page-title>\r\n </fd-message-page>\r\n }\r\n </div>\r\n @if (!noRenderPageing && pagingSetting?.TotalPages && !hidePageing && !hidePaging) {\r\n <bnrc-dynamic-ulv-paging-component\r\n #ulvPaging\r\n [component]=\"ulvPaginComponent\"\r\n [pagingSetting]=\"pagingSetting\"\r\n [context]=\"context\"\r\n [FnHandleEvents]=\"FnHandleUlvPagingEvents\"\r\n ></bnrc-dynamic-ulv-paging-component>\r\n }\r\n</ng-template>\r\n<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #searchpanelDialog>\r\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\r\n <fd-dialog-header>\r\n <h1 id=\"fd-dialog-header-10\" fd-title>{{ 'Filters' | bbbTranslate }}</h1>\r\n <button fd-dialog-close-button (click)=\"dialog.dismiss('Close button')\"></button>\r\n </fd-dialog-header>\r\n <fd-dialog-body>\r\n <bsu-search-panel\r\n [hideButtons]=\"false\"\r\n [searchPanelUi]=\"searchPanelUi\"\r\n (moChanged)=\"onSearchPanelMoChanged()\"\r\n ></bsu-search-panel>\r\n </fd-dialog-body>\r\n\r\n <fd-dialog-footer>\r\n <fd-dialog-footer-button>\r\n <button\r\n fd-button\r\n fdkInitialFocus\r\n fdType=\"emphasized\"\r\n (click)=\"dialog.dismiss(); onSearch()\"\r\n [label]=\"'Search' | bbbTranslate\"\r\n ></button>\r\n </fd-dialog-footer-button>\r\n <fd-dialog-footer-button>\r\n <button fd-button [label]=\"'Clear' | bbbTranslate\" (click)=\"onClearSearch()\"></button>\r\n </fd-dialog-footer-button>\r\n <fd-dialog-footer-button>\r\n <button\r\n fd-button\r\n fdType=\"transparent\"\r\n (click)=\"dialog.dismiss('Close button')\"\r\n [label]=\"'Cancel' | bbbTranslate\"\r\n ></button>\r\n </fd-dialog-footer-button>\r\n </fd-dialog-footer>\r\n </fd-dialog>\r\n</ng-template>\r\n", styles: [":host{display:block;height:100%;flex-grow:1}:host .searchpanel-card fd-card-header{pointer-events:none;cursor:default;padding:.5rem}:host .searchpanel-card h2[fd-card-title]{font-size:1rem;display:flex;align-items:center;gap:.5rem}:host .searchpanel-card h2[fd-card-title] fd-icon{font-size:1.2rem}:host fd-dynamic-side-content{gap:1rem}:host[uiviewer=bsu-ui-card-view]>fd-dynamic-side-content{border:var(--sapList_BorderWidth) solid var(--sapList_BorderColor)}:host[uiviewer=bsu-ui-card-view]>fd-dynamic-side-content fd-dynamic-side-content-side{border-right:var(--sapList_BorderWidth) solid var(--sapList_BorderColor)}:host[uiviewer=bsu-ui-card-view]>fd-dynamic-side-content.rtl fd-dynamic-side-content-side{border-right:none;border-left:1px solid #ccc!important}:host[uiviewer=bsu-ui-card-view]>fd-dynamic-side-content fd-dynamic-side-content-main fd-card{transition:.25s background-color!important}:host.custom-background ::ng-deep article.fd-dynamic-page,:host.custom-background ::ng-deep fd-dynamic-page-content,:host.custom-background ::ng-deep .report-view,:host.custom-background ::ng-deep fd-dynamic-side-content-main>fd-card{background-color:transparent!important}:host>fd-dynamic-page>fd-dynamic-page-header.hide-container ::ng-deep .fd-dynamic-page__title-container{display:none}fd-dynamic-page:not(.mobile).notitle.sideContentMode ::ng-deep>article>header .fd-dynamic-page__title-container,fd-dynamic-page:not(.mobile).notitle.nosearchpanel ::ng-deep>article>header .fd-dynamic-page__title-container{display:none}fd-dynamic-page:not(.mobile) ::ng-deep>article>div{display:flex;flex:1}fd-dynamic-page:not(.mobile) ::ng-deep>article>fd-tab-list>.fd-tabs__content fd-tab.is-expanded{min-height:100%;display:flex}fd-dynamic-page:not(.mobile) ::ng-deep>article>fd-tab-list>.fd-tabs__content fd-tab.is-expanded>fd-dynamic-page-content{min-height:100%}fd-dynamic-page[tabmode=true] ::ng-deep>article{height:auto!important}fd-dynamic-side-content{min-height:100%;height:auto}fd-dynamic-side-content-main fd-card-content ::ng-deep>div{flex:1}fd-dynamic-side-content-main ::ng-deep fd-toolbar{border:none!important}fd-dynamic-side-content-main ::ng-deep bsu-ui-table-view{padding-bottom:0!important;overflow-y:hidden}fd-dynamic-side-content-side fd-card-content{padding:.5rem}fd-dynamic-page-global-actions{flex:1;width:100%}h3[rtl=true]{margin-left:5px}h3[rtl=false]{margin-right:5px}.header-search{color:var(--sapButton_TextColor, #0854a0)!important}.filter-wrapper{border-bottom:1px solid var(--sapObjectHeader_BorderColor, #d9d9d9)}.report-toolbar-container{display:flex}.report-toolbar-container .global-actions{flex-grow:1}fd-popover-body{min-width:380px}fd-popover-body.mobile{min-width:80vw}@media (max-width: 599px){.report-toolbar-container{flex-direction:column-reverse}.report-toolbar-container .layout-actions{flex-grow:1}}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.DynamicUlvToolbarComponent, selector: "bnrc-dynamic-ulv-toolbar-component", inputs: ["allowGridColumnSort", "useLayoutItemTextForControl", "enableSearch", "hideTitle", "title", "icon", "deviceName", "deviceSize", "access", "hideToolbar", "toolbarButtons", "contentDensity", "inlineEditMode", "allowInlineEdit", "gridSetting", "viewCollection", "toolbarButtonsReportView", "reportView", "inDialog", "isMultiSelect", "cls", "hasSelected", "config", "hidden", "buttons", "moDataListCount"] }, { kind: "component", type: i2.DynamicUlvPagingComponent, selector: "bnrc-dynamic-ulv-paging-component", inputs: ["pagingSetting", "context"] }, { kind: "directive", type: i2.RenderUlvViewerDirective, selector: "[renderUlvViewer]", inputs: ["mask", "isReportPage", "layoutInfo", "renderUlvViewer"] }, { kind: "directive", type: i2.RenderUlvPaginDirective, selector: "[renderUlvPaging]", inputs: ["mask", "pagingSetting", "renderUlvPaging"], outputs: ["pageChange"] }, { kind: "directive", type: i2.UntilInViewDirective, selector: "[untilInView]", inputs: ["untilInView", "intersectionDebounce"] }, { kind: "directive", type: i2.FillEmptySpaceDirective, selector: "[fillEmptySpace]", inputs: ["containerDom", "decrement", "disable", "height", "dontUseTopBound", "setMinHeight", "setMaxHeight"], outputs: ["heightChanged"], exportAs: ["fillEmptySpace"] }, { kind: "directive", type: i2.FormCloseDirective, selector: "[formClose]", inputs: ["isMobile"] }, { kind: "directive", type: i2.MobileDirective, selector: "[mobile]" }, { kind: "directive", type: i2.ShortcutHandlerDirective, selector: "[shortcutHandler]", inputs: ["shortcutHandler"], outputs: ["shortCutCommand"] }, { kind: "component", type: i3$2.BarComponent, selector: "[fd-bar]", inputs: ["class", "barDesign", "inPage", "inHomePage", "clear", "size", "role"] }, { kind: "directive", type: i3$2.BarLeftDirective, selector: "[fd-bar-left]" }, { kind: "directive", type: i3$2.BarMiddleDirective, selector: "[fd-bar-middle]" }, { kind: "directive", type: i3$2.BarRightDirective, selector: "[fd-bar-right]" }, { kind: "directive", type: i3$2.BarElementDirective, selector: "fd-bar-element", inputs: ["fullWidth"] }, { kind: "component", type: i3$2.ButtonBarComponent, selector: "fd-button-bar", inputs: ["fullWidth", "fdType", "title", "ariaLabelledby", "id"] }, { kind: "component", type: i4$5.BreadcrumbComponent, selector: "fd-breadcrumb", inputs: ["reverse", "tabIndex"], outputs: ["visibleItemsCount", "hiddenItemsCount"] }, { kind: "component", type: i4$5.BreadcrumbItemComponent, selector: "fd-breadcrumb-item" }, { kind: "directive", type: i4$3.ContentDensityDirective, selector: "[fdContentDensity]:not([fdCompact]):not([fdCondensed]):not([fdCozy]), [fdCompact]:not([fdContentDensity]):not([fdCondensed]):not([fdCozy]), [fdCondensed]:not([fdContentDensity]):not([fdCompact]):not([fdCozy]), [fdCozy]:not([fdContentDensity]):not([fdCompact]):not([fdCondensed])", inputs: ["fdContentDensity", "fdCompact", "fdCondensed", "fdCozy"], exportAs: ["fdContentDensity"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i7$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: i7$3.CardHeaderComponent, selector: "fd-card-header", inputs: ["ariaRoleDescription"] }, { kind: "component", type: i7$3.CardMainHeaderComponent, selector: "fd-card-main-header", inputs: ["interactive", "title"] }, { kind: "component", type: i7$3.CardContentComponent, selector: "fd-card-content" }, { kind: "directive", type: i7$3.CardTitleDirective, selector: "[fd-card-title]", inputs: ["id"] }, { kind: "component", type: i7$3.CardFooterComponent, selector: "fd-card-footer" }, { kind: "directive", type: i7$3.CardFooterActionItemDirective, selector: "[fdCardFooterActionItem]" }, { kind: "component", type: i8$2.DynamicPageComponent, selector: "fd-dynamic-page", inputs: ["disableSnapOnScroll", "ariaLabel", "ariaRoledescription", "background", "autoResponsive", "size", "offset", "expandContent", "positionRelative"] }, { kind: "component", type: i8$2.DynamicPageHeaderComponent, selector: "fd-dynamic-page-header", inputs: ["title", "titleWrap", "subtitle", "subtitleWrap", "headingLevel", "titleId"] }, { kind: "component", type: i8$2.DynamicPageGlobalActionsComponent, selector: "fd-dynamic-page-global-actions" }, { kind: "component", type: i8$2.DynamicPageLayoutActionsComponent, selector: "fd-dynamic-page-layout-actions" }, { kind: "component", type: i8$2.DynamicPageSubheaderComponent, selector: "fd-dynamic-page-subheader", inputs: ["collapsible", "pinnable", "collapsed", "expandLabel", "collapseLabel", "id", "headerAriaLabel", "pinAriaLabel", "unpinAriaLabel"], outputs: ["collapsedChange"] }, { kind: "component", type: i8$2.DynamicPageContentComponent, selector: "fd-dynamic-page-content", inputs: ["tabLabel", "id"] }, { kind: "component", type: i8$2.DynamicPageFooterComponent, selector: "fd-dynamic-page-footer" }, { kind: "component", type: i8$2.DynamicPageBreadcrumbComponent, selector: "fd-dynamic-page-breadcrumb" }, { kind: "component", type: i9.DynamicSideContentComponent, selector: "fd-dynamic-side-content", inputs: ["position", "size", "id"] }, { kind: "component", type: i9.DynamicSideContentSideComponent, selector: "fd-dynamic-side-content-side", inputs: ["id"] }, { kind: "component", type: i9.DynamicSideContentMainComponent, selector: "fd-dynamic-side-content-main", inputs: ["id"] }, { kind: "component", type: i3.IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "color", "background", "class", "ariaLabel", "ariaHidden"] }, { kind: "component", type: i7.ListComponent, selector: "[fd-list], [fdList]", inputs: ["dropdownMode", "multiInputMode", "mobileMode", "hasMessage", "noBorder", "navigationIndicator", "selection", "keyboardSupport", "byline", "subline", "theme", "unreadIndicator", "role", "settingsList", "settingsListFooter"], outputs: ["focusEscapeList"] }, { kind: "component", type: i7.ListItemComponent, selector: "[fdListItem] ,[fd-list-item]", inputs: ["selected", "noData", "action", "interactive", "growing", "counter", "active", "unread", "byline", "ariaRole", "id", "preventClick", "settingsListTpl"], outputs: ["keyDown"], exportAs: ["fdListItem"] }, { kind: "directive", type: i7.ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap", "truncate"] }, { kind: "component", type: i3$3.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i3$3.DialogBodyComponent, selector: "fd-dialog-body", inputs: ["disablePaddings"] }, { kind: "component", type: i3$3.DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: i3$3.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "component", type: i3$3.DialogCloseButtonComponent, selector: "[fd-dialog-close-button]", inputs: ["mobile", "title", "ariaLabel"] }, { kind: "component", type: i5.TitleComponent, selector: "[fd-title], [fdTitle]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "directive", type: i4$2.InitialFocusDirective, selector: "[fdkInitialFocus]", inputs: ["fdkInitialFocus", "enabled", "focusLastElement"] }, { kind: "component", type: i7$1.PopoverControlComponent, selector: "fd-popover-control, [fdPopoverControl]" }, { kind: "component", type: i7$1.PopoverBodyComponent, selector: "fd-popover-body", inputs: ["minWidth", "maxWidth", "minHeight", "maxHeight"] }, { kind: "directive", type: i7$1.PopoverBodyHeaderDirective, selector: "[fdPopoverBodyHeader], [fd-popover-body-header]" }, { kind: "directive", type: i7$1.PopoverBodyFooterDirective, selector: "[fdPopoverBodyFooter], [fd-popover-body-footer]" }, { kind: "component", type: i7$1.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig", "preventSpaceKeyScroll"] }, { 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: "directive", type: i8.ToolbarSpacerDirective, selector: "fd-toolbar-spacer", inputs: ["width", "class", "fixed"] }, { kind: "component", type: i17.MessagePageComponent, selector: "fd-message-page", inputs: ["class", "type", "hasIcon", "glyphFont", "glyph"] }, { kind: "component", type: i17.MessagePageTitleComponent, selector: "fd-message-page-title" }, { kind: "component", type: MaskComponent, selector: "bsu-mask", inputs: ["size", "top"] }, { kind: "component", type: SearchPanelComponent, selector: "bsu-search-panel", inputs: ["searchPanelUi", "hideButtons", "isSearcPanelInSideContent"], outputs: ["moChanged"] }, { kind: "component", type: BreadcrumbComponent, selector: "bsu-breadcrumb", inputs: ["breadCrumb", "allBreadCrumb", "isLast", "index"] }, { kind: "directive", type: ContentDensityDirective, selector: "[contentDensity]" }, { kind: "directive", type: DarkClassDirective, selector: "[darkClass]" }, { kind: "pipe", type: i1.SlicePipe, name: "slice" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: i2.ToolbarSettingsPipe, name: "ulvToolbarSettings" }, { kind: "pipe", type: DynamicPageSizePipe, name: "dynamicPageSize" }, { kind: "pipe", type: SapSizePipe, name: "sapSize" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
7430
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: BarsaUlvMainComponent, isStandalone: false, selector: "bsu-barsa-ulv-main", inputs: { component: "component", viewerControl: "viewerControl", hideViewerLoading: "hideViewerLoading", loading: "loading", hidePaging: "hidePaging", viewerLoading: "viewerLoading", isReportPage: "isReportPage", cssBackground: "cssBackground", deviceSize: "deviceSize", shortcuts: "shortcuts", title: "title", searchPanelUi: "searchPanelUi", breadCrumbs: "breadCrumbs", allSearchPanelSettings: "allSearchPanelSettings", isAnonymous: "isAnonymous", canSaveGridSetting: "canSaveGridSetting", rtl: "rtl", hideUlvPageTitle: "hideUlvPageTitle", selectedSearchPanelSettings: "selectedSearchPanelSettings", searchPanelMoChanged: "searchPanelMoChanged", selectedSearchPanelSettingsId: "selectedSearchPanelSettingsId", hideSearchPanel: "hideSearchPanel", pagingSetting: "pagingSetting", contentDensity: "contentDensity", context: "context", isMobile: "isMobile", standalone: "standalone", landscape: "landscape", toolbarSettings: "toolbarSettings", layoutInfo: "layoutInfo", formSetting: "formSetting", allowGridColumnSort: "allowGridColumnSort", useLayoutItemTextForControl: "useLayoutItemTextForControl", hideTitle: "hideTitle", deviceName: "deviceName", access: "access", hideToolbar: "hideToolbar", toolbarButtons: "toolbarButtons", toolbarButtonsReportView: "toolbarButtonsReportView", inlineEditMode: "inlineEditMode", allowInlineEdit: "allowInlineEdit", gridSetting: "gridSetting", viewCollection: "viewCollection", reportView: "reportView", inDialog: "inDialog", isMultiSelect: "isMultiSelect", hiddenOverflowContent: "hiddenOverflowContent", cls: "cls", hasSelected: "hasSelected", ulvHeightSizeType: "ulvHeightSizeType", ulvHeightSize: "ulvHeightSize" }, outputs: { toggleMultiSelect: "toggleMultiSelect", groupbyClick: "groupbyClick", sortClick: "sortClick", columnClick: "columnClick", editModeClick: "editModeClick", viewClick: "viewClick", createNewInlineMo: "createNewInlineMo", contentHeightChange: "contentHeightChange", closeEvent: "closeEvent", searchPanelMoChange: "searchPanelMoChange", openManageFilters: "openManageFilters", collapsedChange: "collapsedChange", hideSearchPanelClick: "hideSearchPanelClick", filterSave: "filterSave", filterSaveAs: "filterSaveAs", pageChange: "pageChange", showFilterFieldsSetting: "showFilterFieldsSetting", manageFilters: "manageFilters", clearSearch: "clearSearch", search: "search", selectSearchPanelSettings: "selectSearchPanelSettings" }, host: { properties: { "style.background-color": "this._backgroundColor", "style.background-image": "this._backgroundUrl", "style.background-repeat": "this._backgroundRepeat", "class.custom-background": "this._customBackground" } }, viewQueries: [{ propertyName: "_dynamicPageComponent", first: true, predicate: DynamicPageComponent, descendants: true }, { propertyName: "dialogTemplate", first: true, predicate: ["searchpanelDialog"], descendants: true }, { propertyName: "_ulvToolbar", first: true, predicate: ["ulvToolbar"], descendants: true, read: ElementRef }, { propertyName: "_ulvPaging", first: true, predicate: ["ulvPaging"], descendants: true, read: ElementRef }, { propertyName: "_ulvSearchPanel", first: true, predicate: SearchPanelComponent, descendants: true, read: ElementRef }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-container\r\n *ngTemplateOutlet=\"\r\n isReportPage ? reportPageTemplate : reportTemplate;\r\n context: {\r\n $implicit: viewerControl,\r\n tabMode: viewerControl?.Setting?.ClassNames?.CustomUi?.Parameters?.TabMode\r\n }\r\n \"\r\n>\r\n</ng-container>\r\n@if (loading) {\r\n<bsu-mask size=\"m\"></bsu-mask>\r\n}\r\n<ng-template #reportPageTemplate let-viewerControl let-tabMode=\"tabMode\">\r\n <fd-dynamic-page\r\n darkClass\r\n formClose\r\n mobile\r\n [attr.isMobile]=\"isMobile ? true : null\"\r\n [isMobile]=\"isMobile\"\r\n [size]=\"deviceSize | dynamicPageSize\"\r\n [attr.tabMode]=\"tabMode\"\r\n [autoResponsive]=\"false\"\r\n [class.notitle]=\"title.length < 2 || hideUlvPageTitle\"\r\n [class.nosearchpanel]=\"!searchPanelUi\"\r\n [class.hideSearchPanel]=\"hideSearchPanel\"\r\n [class.sideContentMode]=\"sideContentMode\"\r\n >\r\n <fd-dynamic-page-header\r\n [title]=\"\r\n (title | bbbTranslate) && !hideUlvPageTitle\r\n ? (title | bbbTranslate)\r\n : isMobile && breadCrumbs.length\r\n ? breadCrumbs[breadCrumbs.length - 1].label\r\n : ''\r\n \"\r\n class=\"p-b0\"\r\n >\r\n <fd-dynamic-page-breadcrumb [class.hide]=\"isMobile\">\r\n <fd-breadcrumb>\r\n @for ( breadCrumb of breadCrumbs | slice: 0:breadCrumbs.length; track breadCrumb.url; let i =\r\n $index; let last = $last) { @if(i>0) {\r\n <fd-breadcrumb-item>\r\n <bsu-breadcrumb\r\n [index]=\"i\"\r\n [isLast]=\"last\"\r\n [breadCrumb]=\"breadCrumb\"\r\n [allBreadCrumb]=\"breadCrumbs\"\r\n ></bsu-breadcrumb>\r\n </fd-breadcrumb-item>\r\n }}\r\n </fd-breadcrumb>\r\n </fd-dynamic-page-breadcrumb>\r\n <!-- <fd-dynamic-page-title-content>\u06AF\u0632\u0627\u0631\u0634 </fd-dynamic-page-title-content> -->\r\n\r\n <fd-dynamic-page-global-actions *untilInView=\"el\" style=\"min-width: auto\">\r\n <fd-toolbar [shouldOverflow]=\"true\" style=\"display: none\"> </fd-toolbar>\r\n <!-- added this because in mobile landscape toolbar disapper -->\r\n @if ( searchPanelUi && isMobile) {\r\n <fd-toolbar\r\n class=\"global-actions\"\r\n fdType=\"transparent\"\r\n [clearBorder]=\"true\"\r\n [shouldOverflow]=\"deviceSize === 's'\"\r\n >\r\n @if (isAnonymous === false && canSaveGridSetting) {\r\n <fd-popover fd-toolbar-item #popover fdOverflowPriority=\"never\">\r\n <fd-popover-control>\r\n <div style=\"display: flex; align-items: center\">\r\n <h3 class=\"header-search\" [attr.rtl]=\"rtl\" fd-title>\r\n {{\r\n selectedSearchPanelSettings?.IsStandard\r\n ? ''\r\n : selectedSearchPanelSettings?.Title\r\n }}\r\n @if (searchPanelMoChanged) {\r\n <strong>*</strong>\r\n }\r\n </h3>\r\n <button\r\n fd-button\r\n glyph=\"slim-arrow-down\"\r\n fdType=\"transparent\"\r\n [fdContentDensity]=\"contentDensity\"\r\n ></button>\r\n </div>\r\n </fd-popover-control>\r\n <fd-popover-body mobile>\r\n <div fd-popover-body-header>\r\n <div fd-bar [fdCozy]>\r\n <div fd-bar-left>\r\n <fd-bar-element>{{ 'Filters' | bbbTranslate }}</fd-bar-element>\r\n </div>\r\n </div>\r\n </div>\r\n <ul fd-list style=\"min-height: 200px; background-color: var(--sapBackgroundColor, #f7f7f7)\">\r\n @for (option of allSearchPanelSettings; track option) {\r\n <li\r\n fd-list-item\r\n [selected]=\"option.Id === selectedSearchPanelSettingsId\"\r\n (click)=\"onSelectSearchPanelSettings(option.Id, popover)\"\r\n >\r\n <span fd-list-title>{{ option.Title }}</span>\r\n </li>\r\n }\r\n </ul>\r\n <div fd-popover-body-footer>\r\n <div fd-bar [barDesign]=\"'footer'\" [fdCozy]>\r\n @if (selectedSearchPanelSettings) {\r\n <div fd-bar-right>\r\n @if (!selectedSearchPanelSettings.IsPrimary && searchPanelMoChanged) {\r\n <fd-button-bar\r\n [label]=\"'Save' | bbbTranslate\"\r\n fdType=\"emphasized\"\r\n (click)=\"onFilterSave(popover)\"\r\n >\r\n </fd-button-bar>\r\n } @if (searchPanelMoChanged) {\r\n <fd-button-bar\r\n [label]=\"'SaveAs' | bbbTranslate\"\r\n [fdType]=\"\r\n selectedSearchPanelSettings.IsDefault ? 'emphasized' : 'transparent'\r\n \"\r\n (click)=\"onFilterSaveAs(popover)\"\r\n >\r\n </fd-button-bar>\r\n }\r\n <fd-button-bar\r\n [label]=\"'Manage' | bbbTranslate\"\r\n fdkInitialFocus\r\n fdType=\"transparent\"\r\n (click)=\"onManageFilters(popover)\"\r\n >\r\n </fd-button-bar>\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n </fd-popover-body>\r\n </fd-popover>\r\n } @if (deviceSize !== 's') {\r\n <fd-toolbar-spacer></fd-toolbar-spacer>\r\n } @if (isMobile && searchPanelUi) {\r\n <button\r\n fd-button\r\n fd-toolbar-item\r\n fdOverflowPriority=\"never\"\r\n (click)=\"onShowSearchpanelDialog()\"\r\n [glyph]=\"'filter'\"\r\n [fdContentDensity]=\"contentDensity\"\r\n ></button>\r\n }\r\n </fd-toolbar>\r\n }\r\n </fd-dynamic-page-global-actions>\r\n <fd-dynamic-page-layout-actions>\r\n <fd-toolbar fdType=\"transparent\" [clearBorder]=\"true\">\r\n <button fd-button fdType=\"transparent\" aria-label=\"Close\" (click)=\"closeEvent.emit()\" title=\"Close\">\r\n <i [class]=\"'sap-icon--' + (isMobile ? (rtl ? 'arrow-right' : 'arrow-left') : 'decline')\"></i>\r\n </button>\r\n </fd-toolbar>\r\n </fd-dynamic-page-layout-actions>\r\n </fd-dynamic-page-header>\r\n @if (!hideSearchPanel && searchPanelUi && !sideContentMode) {\r\n <fd-dynamic-page-subheader [pinnable]=\"false\" [collapsible]=\"true\">\r\n @if (!isMobile) {\r\n <bsu-search-panel\r\n [hideButtons]=\"false\"\r\n [searchPanelUi]=\"searchPanelUi\"\r\n (moChanged)=\"onSearchPanelMoChanged()\"\r\n ></bsu-search-panel>\r\n }\r\n </fd-dynamic-page-subheader>\r\n } @if (!tabMode) {\r\n\r\n <fd-dynamic-page-content>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n sideContentMode ? sideContentTemplate : viewerTemplate;\r\n context: { noRenderPageing: true }\r\n \"\r\n ></ng-container>\r\n </fd-dynamic-page-content>\r\n\r\n } @if (pagingSetting?.TotalPages) {\r\n <fd-dynamic-page-footer>\r\n <!-- page footer content goes here -->\r\n <div fd-bar [barDesign]=\"'footer'\">\r\n <div fd-bar-middle>\r\n <ng-container\r\n [renderUlvPaging]=\"context\"\r\n [pagingSetting]=\"pagingSetting\"\r\n (pageChange)=\"onPageChange($event)\"\r\n ></ng-container>\r\n </div>\r\n </div>\r\n </fd-dynamic-page-footer>\r\n }\r\n </fd-dynamic-page>\r\n @if (tabMode) {\r\n <ng-container\r\n *ngTemplateOutlet=\"sideContentMode ? sideContentTemplate : viewerTemplate; context: { noRenderPageing: true }\"\r\n ></ng-container>\r\n }\r\n</ng-template>\r\n<ng-template #reportTemplate>\r\n @if (loading) {\r\n <bsu-mask size=\"s\"></bsu-mask>\r\n } @if (!hideSearchPanel && searchPanelUi && !sideContentMode) {\r\n <ng-container *ngTemplateOutlet=\"searchpanelTemplate; context: { hideButtons: false }\"></ng-container>\r\n }\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n sideContentMode ? sideContentTemplate : viewerTemplate;\r\n context: { simpleReport: 'simpleReport' }\r\n \"\r\n >\r\n </ng-container>\r\n</ng-template>\r\n<ng-template #sideContentTemplate let-simpleReport=\"simpleReport\">\r\n <fd-dynamic-side-content\r\n [class.rtl]=\"rtl\"\r\n [size]=\"deviceSize | sapSize\"\r\n fillEmptySpace\r\n [decrement]=\"'2rem'\"\r\n [disable]=\"isReportPage\"\r\n [setMinHeight]=\"true\"\r\n *untilInView=\"el\"\r\n >\r\n <fd-dynamic-side-content-side>\r\n <ng-container\r\n *ngTemplateOutlet=\"searchpanelTemplate; context: { isSearcPanelInSideContent: true }\"\r\n ></ng-container>\r\n </fd-dynamic-side-content-side>\r\n <fd-dynamic-side-content-main [style.width]=\"deviceSize !== 's' ? mainContentWidth : null\">\r\n <fd-card>\r\n <fd-card-content class=\"tw-flex tw-flex-col\">\r\n <ng-container\r\n *ngTemplateOutlet=\"viewerTemplate; context: { noRenderPageing: isReportPage ? true : false }\"\r\n ></ng-container>\r\n </fd-card-content>\r\n </fd-card>\r\n </fd-dynamic-side-content-main>\r\n </fd-dynamic-side-content>\r\n</ng-template>\r\n<ng-template\r\n #searchpanelTemplate\r\n let-isSearcPanelInSideContent=\"isSearcPanelInSideContent\"\r\n let-hideButtons=\"hideButtons\"\r\n>\r\n @if (!isSearcPanelInSideContent) { @if (!hideSearchPanel && searchPanelUi) {\r\n <bsu-search-panel\r\n darkClass\r\n [searchPanelUi]=\"searchPanelUi\"\r\n [isSearcPanelInSideContent]=\"isSearcPanelInSideContent\"\r\n [hideButtons]=\"false\"\r\n (moChanged)=\"onSearchPanelMoChanged()\"\r\n ></bsu-search-panel>\r\n } } @else {\r\n <fd-card class=\"searchpanel-card\" darkClass>\r\n <fd-card-header>\r\n <fd-card-main-header>\r\n <h2 fd-card-title>\r\n <fd-icon glyph=\"filter\"></fd-icon><span>{{ 'Filter' | bbbTranslate }}</span>\r\n </h2>\r\n </fd-card-main-header>\r\n </fd-card-header>\r\n <fd-card-content style=\"flex-grow: 0\">\r\n @if (!hideSearchPanel && searchPanelUi) {\r\n <bsu-search-panel\r\n [searchPanelUi]=\"searchPanelUi\"\r\n [hideButtons]=\"true\"\r\n [isSearcPanelInSideContent]=\"isSearcPanelInSideContent\"\r\n (moChanged)=\"onSearchPanelMoChanged()\"\r\n ></bsu-search-panel>\r\n }\r\n </fd-card-content>\r\n <fd-card-footer style=\"border-bottom: none\">\r\n <button\r\n *fdCardFooterActionItem\r\n fd-button\r\n fdType=\"emphasized\"\r\n [label]=\"'Search' | bbbTranslate\"\r\n (click)=\"onSearch()\"\r\n [fdContentDensity]=\"contentDensity\"\r\n ></button>\r\n <button\r\n *fdCardFooterActionItem\r\n fd-button\r\n fdType=\"transparent\"\r\n [label]=\"('Delete' | bbbTranslate) + ' ' + ('Filters' | bbbTranslate)\"\r\n (click)=\"onClearSearch()\"\r\n [fdOverflowGroup]=\"1\"\r\n [fdContentDensity]=\"contentDensity\"\r\n ></button>\r\n </fd-card-footer>\r\n </fd-card>\r\n }\r\n</ng-template>\r\n<ng-template #viewerTemplate let-noRenderPageing=\"noRenderPageing\">\r\n <div\r\n darkClass\r\n class=\"viewer-container\"\r\n fillEmptySpace\r\n [shortcutHandler]=\"shortcuts\"\r\n [disable]=\"!isReportPage || !fillPage\"\r\n [decrement]=\"deviceSize !== 's' ? '100px' : '75px'\"\r\n [style.height]=\"viewerLoading && !hideViewerLoading ? '100%' : 'auto'\"\r\n [style.min-height]=\"isReportPage ? '100%' : null\"\r\n [style.position]=\"viewerLoading && !hideViewerLoading ? 'relative' : null\"\r\n >\r\n <bnrc-dynamic-ulv-toolbar-component\r\n #ulvToolbar\r\n [component]=\"ulvToolbarComponent\"\r\n [hideToolbar]=\"hideToolbar\"\r\n [deviceName]=\"deviceName\"\r\n [hideTitle]=\"true\"\r\n [deviceSize]=\"deviceSize\"\r\n [toolbarButtons]=\"toolbarButtons | ulvToolbarSettings: toolbarSettings\"\r\n [toolbarButtonsReportView]=\"toolbarButtonsReportView\"\r\n [gridSetting]=\"gridSetting\"\r\n [title]=\"title\"\r\n [hasSelected]=\"hasSelected\"\r\n [access]=\"access\"\r\n [inDialog]=\"inDialog\"\r\n [isMultiSelect]=\"isMultiSelect\"\r\n [contentDensity]=\"contentDensity\"\r\n [inlineEditMode]=\"inlineEditMode && allowInlineEdit && formSetting\"\r\n [allowInlineEdit]=\"allowInlineEdit && formSetting\"\r\n [allowGridColumnSort]=\"allowGridColumnSort\"\r\n [FnHandleEvents]=\"FnHandleUlvToolbarEvents\"\r\n ></bnrc-dynamic-ulv-toolbar-component>\r\n @if (viewerLoading) {\r\n <bsu-mask size=\"m\"></bsu-mask>\r\n } @if (viewerControl) {\r\n\r\n <ng-container\r\n [renderUlvViewer]=\"viewerControl\"\r\n [layoutInfo]=\"layoutInfo\"\r\n [isReportPage]=\"isReportPage\"\r\n ></ng-container>\r\n }@else{\r\n <fd-message-page type=\"no-items\" class=\"!tw-bg-transparent\">\r\n <fd-message-page-title>\u0627\u0628\u062A\u062F\u0627 \u0641\u06CC\u0644\u062A\u0631 \u0631\u0627 \u062A\u0646\u0638\u06CC\u0645 \u06A9\u0646\u06CC\u062F \u0648 \u062C\u0633\u062A\u062C\u0648 \u0646\u0645\u0627\u06CC\u06CC\u062F.</fd-message-page-title>\r\n </fd-message-page>\r\n }\r\n </div>\r\n @if (!noRenderPageing && pagingSetting?.TotalPages && !hidePageing && !hidePaging) {\r\n <bnrc-dynamic-ulv-paging-component\r\n #ulvPaging\r\n [component]=\"ulvPaginComponent\"\r\n [pagingSetting]=\"pagingSetting\"\r\n [context]=\"context\"\r\n [FnHandleEvents]=\"FnHandleUlvPagingEvents\"\r\n ></bnrc-dynamic-ulv-paging-component>\r\n }\r\n</ng-template>\r\n<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #searchpanelDialog>\r\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\r\n <fd-dialog-header>\r\n <h1 id=\"fd-dialog-header-10\" fd-title>{{ 'Filters' | bbbTranslate }}</h1>\r\n <button fd-dialog-close-button (click)=\"dialog.dismiss('Close button')\"></button>\r\n </fd-dialog-header>\r\n <fd-dialog-body>\r\n <bsu-search-panel\r\n [hideButtons]=\"false\"\r\n [searchPanelUi]=\"searchPanelUi\"\r\n (moChanged)=\"onSearchPanelMoChanged()\"\r\n ></bsu-search-panel>\r\n </fd-dialog-body>\r\n\r\n <fd-dialog-footer>\r\n <fd-dialog-footer-button>\r\n <button\r\n fd-button\r\n fdkInitialFocus\r\n fdType=\"emphasized\"\r\n (click)=\"dialog.dismiss(); onSearch()\"\r\n [label]=\"'Search' | bbbTranslate\"\r\n ></button>\r\n </fd-dialog-footer-button>\r\n <fd-dialog-footer-button>\r\n <button fd-button [label]=\"'Clear' | bbbTranslate\" (click)=\"onClearSearch()\"></button>\r\n </fd-dialog-footer-button>\r\n <fd-dialog-footer-button>\r\n <button\r\n fd-button\r\n fdType=\"transparent\"\r\n (click)=\"dialog.dismiss('Close button')\"\r\n [label]=\"'Cancel' | bbbTranslate\"\r\n ></button>\r\n </fd-dialog-footer-button>\r\n </fd-dialog-footer>\r\n </fd-dialog>\r\n</ng-template>\r\n", styles: [":host{display:block;height:100%;flex-grow:1}:host .searchpanel-card fd-card-header{pointer-events:none;cursor:default;padding:.5rem}:host .searchpanel-card h2[fd-card-title]{font-size:1rem;display:flex;align-items:center;gap:.5rem}:host .searchpanel-card h2[fd-card-title] fd-icon{font-size:1.2rem}:host fd-dynamic-side-content{gap:1rem}:host[uiviewer=bsu-ui-card-view]>fd-dynamic-side-content{border:var(--sapList_BorderWidth) solid var(--sapList_BorderColor)}:host[uiviewer=bsu-ui-card-view]>fd-dynamic-side-content fd-dynamic-side-content-side{border-right:var(--sapList_BorderWidth) solid var(--sapList_BorderColor)}:host[uiviewer=bsu-ui-card-view]>fd-dynamic-side-content.rtl fd-dynamic-side-content-side{border-right:none;border-left:1px solid #ccc!important}:host[uiviewer=bsu-ui-card-view]>fd-dynamic-side-content fd-dynamic-side-content-main fd-card{transition:.25s background-color!important}:host.custom-background ::ng-deep article.fd-dynamic-page,:host.custom-background ::ng-deep fd-dynamic-page-content,:host.custom-background ::ng-deep .report-view,:host.custom-background ::ng-deep fd-dynamic-side-content-main>fd-card{background-color:transparent!important}:host>fd-dynamic-page>fd-dynamic-page-header.hide-container ::ng-deep .fd-dynamic-page__title-container{display:none}fd-dynamic-page:not(.mobile).notitle.sideContentMode ::ng-deep>article>header .fd-dynamic-page__title-container,fd-dynamic-page:not(.mobile).notitle.nosearchpanel ::ng-deep>article>header .fd-dynamic-page__title-container{display:none}fd-dynamic-page:not(.mobile) ::ng-deep>article>div{display:flex;flex:1}fd-dynamic-page:not(.mobile) ::ng-deep>article>fd-tab-list>.fd-tabs__content fd-tab.is-expanded{min-height:100%;display:flex}fd-dynamic-page:not(.mobile) ::ng-deep>article>fd-tab-list>.fd-tabs__content fd-tab.is-expanded>fd-dynamic-page-content{min-height:100%}fd-dynamic-page[tabmode=true] ::ng-deep>article{height:auto!important}fd-dynamic-side-content{min-height:100%;height:auto}fd-dynamic-side-content-main fd-card-content ::ng-deep>div{flex:1}fd-dynamic-side-content-main ::ng-deep fd-toolbar{border:none!important}fd-dynamic-side-content-main ::ng-deep bsu-ui-table-view{padding-bottom:0!important;overflow-y:hidden}fd-dynamic-side-content-side fd-card-content{padding:.5rem}fd-dynamic-page-global-actions{flex:1;width:100%}h3[rtl=true]{margin-left:5px}h3[rtl=false]{margin-right:5px}.header-search{color:var(--sapButton_TextColor, #0854a0)!important}.filter-wrapper{border-bottom:1px solid var(--sapObjectHeader_BorderColor, #d9d9d9)}.report-toolbar-container{display:flex}.report-toolbar-container .global-actions{flex-grow:1}fd-popover-body{min-width:380px}fd-popover-body.mobile{min-width:80vw}@media (max-width: 599px){.report-toolbar-container{flex-direction:column-reverse}.report-toolbar-container .layout-actions{flex-grow:1}}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.DynamicUlvToolbarComponent, selector: "bnrc-dynamic-ulv-toolbar-component", inputs: ["allowGridColumnSort", "useLayoutItemTextForControl", "enableSearch", "hideTitle", "title", "icon", "deviceName", "deviceSize", "access", "hideToolbar", "toolbarButtons", "contentDensity", "inlineEditMode", "allowInlineEdit", "gridSetting", "viewCollection", "toolbarButtonsReportView", "reportView", "inDialog", "isMultiSelect", "cls", "hasSelected", "config", "hidden", "buttons", "moDataListCount"] }, { kind: "component", type: i2.DynamicUlvPagingComponent, selector: "bnrc-dynamic-ulv-paging-component", inputs: ["pagingSetting", "context"] }, { kind: "directive", type: i2.RenderUlvViewerDirective, selector: "[renderUlvViewer]", inputs: ["mask", "isReportPage", "layoutInfo", "renderUlvViewer"] }, { kind: "directive", type: i2.RenderUlvPaginDirective, selector: "[renderUlvPaging]", inputs: ["mask", "pagingSetting", "renderUlvPaging"], outputs: ["pageChange"] }, { kind: "directive", type: i2.UntilInViewDirective, selector: "[untilInView]", inputs: ["untilInView", "intersectionDebounce"] }, { kind: "directive", type: i2.FillEmptySpaceDirective, selector: "[fillEmptySpace]", inputs: ["containerDom", "decrement", "disable", "height", "dontUseTopBound", "setMinHeight", "setMaxHeight"], outputs: ["heightChanged"], exportAs: ["fillEmptySpace"] }, { kind: "directive", type: i2.FormCloseDirective, selector: "[formClose]", inputs: ["isMobile"] }, { kind: "directive", type: i2.MobileDirective, selector: "[mobile]" }, { kind: "directive", type: i2.ShortcutHandlerDirective, selector: "[shortcutHandler]", inputs: ["shortcutHandler"], outputs: ["shortCutCommand"] }, { kind: "component", type: i3$2.BarComponent, selector: "[fd-bar]", inputs: ["class", "barDesign", "inPage", "inHomePage", "clear", "size", "role"] }, { kind: "directive", type: i3$2.BarLeftDirective, selector: "[fd-bar-left]" }, { kind: "directive", type: i3$2.BarMiddleDirective, selector: "[fd-bar-middle]" }, { kind: "directive", type: i3$2.BarRightDirective, selector: "[fd-bar-right]" }, { kind: "directive", type: i3$2.BarElementDirective, selector: "fd-bar-element", inputs: ["fullWidth"] }, { kind: "component", type: i3$2.ButtonBarComponent, selector: "fd-button-bar", inputs: ["fullWidth", "fdType", "title", "ariaLabelledby", "id"] }, { kind: "component", type: i4$5.BreadcrumbComponent, selector: "fd-breadcrumb", inputs: ["reverse", "tabIndex"], outputs: ["visibleItemsCount", "hiddenItemsCount"] }, { kind: "component", type: i4$5.BreadcrumbItemComponent, selector: "fd-breadcrumb-item" }, { kind: "directive", type: i4$3.ContentDensityDirective, selector: "[fdContentDensity]:not([fdCompact]):not([fdCondensed]):not([fdCozy]), [fdCompact]:not([fdContentDensity]):not([fdCondensed]):not([fdCozy]), [fdCondensed]:not([fdContentDensity]):not([fdCompact]):not([fdCozy]), [fdCozy]:not([fdContentDensity]):not([fdCompact]):not([fdCondensed])", inputs: ["fdContentDensity", "fdCompact", "fdCondensed", "fdCozy"], exportAs: ["fdContentDensity"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i7$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: i7$3.CardHeaderComponent, selector: "fd-card-header", inputs: ["ariaRoleDescription"] }, { kind: "component", type: i7$3.CardMainHeaderComponent, selector: "fd-card-main-header", inputs: ["interactive", "title"] }, { kind: "component", type: i7$3.CardContentComponent, selector: "fd-card-content" }, { kind: "directive", type: i7$3.CardTitleDirective, selector: "[fd-card-title]", inputs: ["id"] }, { kind: "component", type: i7$3.CardFooterComponent, selector: "fd-card-footer" }, { kind: "directive", type: i7$3.CardFooterActionItemDirective, selector: "[fdCardFooterActionItem]" }, { kind: "component", type: i8$2.DynamicPageComponent, selector: "fd-dynamic-page", inputs: ["disableSnapOnScroll", "ariaLabel", "ariaRoledescription", "background", "autoResponsive", "size", "offset", "expandContent", "positionRelative"] }, { kind: "component", type: i8$2.DynamicPageHeaderComponent, selector: "fd-dynamic-page-header", inputs: ["title", "titleWrap", "subtitle", "subtitleWrap", "headingLevel", "titleId"] }, { kind: "component", type: i8$2.DynamicPageGlobalActionsComponent, selector: "fd-dynamic-page-global-actions" }, { kind: "component", type: i8$2.DynamicPageLayoutActionsComponent, selector: "fd-dynamic-page-layout-actions" }, { kind: "component", type: i8$2.DynamicPageSubheaderComponent, selector: "fd-dynamic-page-subheader", inputs: ["collapsible", "pinnable", "collapsed", "expandLabel", "collapseLabel", "id", "headerAriaLabel", "pinAriaLabel", "unpinAriaLabel"], outputs: ["collapsedChange"] }, { kind: "component", type: i8$2.DynamicPageContentComponent, selector: "fd-dynamic-page-content", inputs: ["tabLabel", "id"] }, { kind: "component", type: i8$2.DynamicPageFooterComponent, selector: "fd-dynamic-page-footer" }, { kind: "component", type: i8$2.DynamicPageBreadcrumbComponent, selector: "fd-dynamic-page-breadcrumb" }, { kind: "component", type: i9.DynamicSideContentComponent, selector: "fd-dynamic-side-content", inputs: ["position", "size", "id"] }, { kind: "component", type: i9.DynamicSideContentSideComponent, selector: "fd-dynamic-side-content-side", inputs: ["id"] }, { kind: "component", type: i9.DynamicSideContentMainComponent, selector: "fd-dynamic-side-content-main", inputs: ["id"] }, { kind: "component", type: i3.IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "color", "background", "class", "ariaLabel", "ariaHidden"] }, { kind: "component", type: i7.ListComponent, selector: "[fd-list], [fdList]", inputs: ["dropdownMode", "multiInputMode", "mobileMode", "hasMessage", "noBorder", "navigationIndicator", "selection", "keyboardSupport", "byline", "subline", "theme", "unreadIndicator", "role", "settingsList", "settingsListFooter"], outputs: ["focusEscapeList"] }, { kind: "component", type: i7.ListItemComponent, selector: "[fdListItem] ,[fd-list-item]", inputs: ["selected", "noData", "action", "interactive", "growing", "counter", "active", "unread", "byline", "ariaRole", "id", "preventClick", "settingsListTpl"], outputs: ["keyDown"], exportAs: ["fdListItem"] }, { kind: "directive", type: i7.ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap", "truncate"] }, { kind: "component", type: i3$3.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i3$3.DialogBodyComponent, selector: "fd-dialog-body", inputs: ["disablePaddings"] }, { kind: "component", type: i3$3.DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: i3$3.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "component", type: i3$3.DialogCloseButtonComponent, selector: "[fd-dialog-close-button]", inputs: ["mobile", "title", "ariaLabel"] }, { kind: "component", type: i5.TitleComponent, selector: "[fd-title], [fdTitle]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "directive", type: i4$2.InitialFocusDirective, selector: "[fdkInitialFocus]", inputs: ["fdkInitialFocus", "enabled", "focusLastElement"] }, { kind: "component", type: i7$1.PopoverControlComponent, selector: "fd-popover-control, [fdPopoverControl]" }, { kind: "component", type: i7$1.PopoverBodyComponent, selector: "fd-popover-body", inputs: ["minWidth", "maxWidth", "minHeight", "maxHeight"] }, { kind: "directive", type: i7$1.PopoverBodyHeaderDirective, selector: "[fdPopoverBodyHeader], [fd-popover-body-header]" }, { kind: "directive", type: i7$1.PopoverBodyFooterDirective, selector: "[fdPopoverBodyFooter], [fd-popover-body-footer]" }, { kind: "component", type: i7$1.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig", "preventSpaceKeyScroll"] }, { kind: "component", type: i7$2.ToolbarComponent, selector: "fd-toolbar", inputs: ["titleId", "class", "shouldOverflow", "fdType", "title", "active", "clearBorder", "forceOverflow", "tabindex", "headingLevel", "ariaLabel", "ariaLabelledBy"] }, { kind: "directive", type: i7$2.ToolbarItemDirective, selector: "[fd-toolbar-item], [fdOverflowGroup], [fdOverflowPriority]", inputs: ["fdOverflowPriority", "fdOverflowGroup"] }, { kind: "directive", type: i7$2.ToolbarSpacerDirective, selector: "fd-toolbar-spacer", inputs: ["width", "class", "fixed"] }, { kind: "component", type: i17.MessagePageComponent, selector: "fd-message-page", inputs: ["class", "type", "hasIcon", "glyphFont", "glyph"] }, { kind: "component", type: i17.MessagePageTitleComponent, selector: "fd-message-page-title" }, { kind: "component", type: MaskComponent, selector: "bsu-mask", inputs: ["size", "top"] }, { kind: "component", type: SearchPanelComponent, selector: "bsu-search-panel", inputs: ["searchPanelUi", "hideButtons", "isSearcPanelInSideContent"], outputs: ["moChanged"] }, { kind: "component", type: BreadcrumbComponent, selector: "bsu-breadcrumb", inputs: ["breadCrumb", "allBreadCrumb", "isLast", "index"] }, { kind: "directive", type: ContentDensityDirective, selector: "[contentDensity]" }, { kind: "directive", type: DarkClassDirective, selector: "[darkClass]" }, { kind: "pipe", type: i1.SlicePipe, name: "slice" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: i2.ToolbarSettingsPipe, name: "ulvToolbarSettings" }, { kind: "pipe", type: DynamicPageSizePipe, name: "dynamicPageSize" }, { kind: "pipe", type: SapSizePipe, name: "sapSize" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
7426
7431
  }
7427
7432
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BarsaUlvMainComponent, decorators: [{
7428
7433
  type: Component,
@@ -8034,7 +8039,7 @@ class UiColorUiComponent extends FieldBaseComponent {
8034
8039
  this.selectedColor = $event;
8035
8040
  }
8036
8041
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UiColorUiComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
8037
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: UiColorUiComponent, isStandalone: false, selector: "bsu-ui-color-ui", usesInheritance: true, ngImport: i0, template: "@if (readonly$ | async) {\r\n<div class=\"read-only\">\r\n <div [style.background-color]=\"value ? value : null\"></div>\r\n <span>{{ value }}</span>\r\n <button\r\n fd-button\r\n [cdkCopyToClipboard]=\"value\"\r\n [fdType]=\"'transparent'\"\r\n [glyph]=\"'copy'\"\r\n aria-label=\"copy\"\r\n title=\"copy\"\r\n ></button>\r\n</div>\r\n} @else {\r\n<fd-popover #popover>\r\n <fd-popover-control style=\"margin: 0.25rem 0\">\r\n <button fd-button [fdMenu]=\"true\" fdType=\"transparent\">\r\n <span [style.background-color]=\"value\" style=\"width: 16px; height: 16px; border-radius: 50%\"></span>\r\n </button>\r\n </fd-popover-control>\r\n <fd-popover-body>\r\n @if (!isVisibleSwatches) {\r\n <color-chrome [color]=\"value\" className=\"color-box\" (colorChange)=\"onColorChang($event)\"></color-chrome>\r\n } @if (isVisibleSwatches) {\r\n <color-swatches [color]=\"value\" (colorChange)=\"onColorChang($event)\"></color-swatches>\r\n }\r\n <fd-toolbar style=\"background-color: white\">\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n [label]=\"'Cancel' | bbbTranslate\"\r\n (click)=\"onCancel(popover)\"\r\n [compact]=\"true\"\r\n ></button>\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n [label]=\"'Ok' | bbbTranslate\"\r\n (click)=\"onApply(popover)\"\r\n [compact]=\"true\"\r\n ></button>\r\n <fd-toolbar-spacer></fd-toolbar-spacer>\r\n <button fd-toolbar-item fd-button [label]=\"switchText\" (click)=\"onSwatchClick()\" [compact]=\"true\"></button>\r\n </fd-toolbar>\r\n </fd-popover-body>\r\n</fd-popover>\r\n}\r\n", styles: [":host{display:block;margin:.25rem 0}.read-only{display:flex;justify-content:flex-start;column-gap:3px}.read-only div{width:25px;height:20px;border-radius:5px}\n"], dependencies: [{ kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i7$1.PopoverControlComponent, selector: "fd-popover-control, [fdPopoverControl]" }, { kind: "component", type: i7$1.PopoverBodyComponent, selector: "fd-popover-body", inputs: ["minWidth", "maxWidth", "minHeight", "maxHeight"] }, { kind: "component", type: i7$1.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig", "preventSpaceKeyScroll"] }, { 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: "directive", type: i8.ToolbarSpacerDirective, selector: "fd-toolbar-spacer", inputs: ["width", "class", "fixed"] }, { kind: "component", type: i4$6.SwatchesComponent, selector: "color-swatches", inputs: ["width", "height", "colors", "zDepth", "radius", "background"] }, { kind: "component", type: i5$3.ChromeComponent, selector: "color-chrome", inputs: ["disableAlpha"] }, { kind: "directive", type: i6$1.CdkCopyToClipboard, selector: "[cdkCopyToClipboard]", inputs: ["cdkCopyToClipboard", "cdkCopyToClipboardAttempts"], outputs: ["cdkCopyToClipboardCopied"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
8042
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: UiColorUiComponent, isStandalone: false, selector: "bsu-ui-color-ui", usesInheritance: true, ngImport: i0, template: "@if (readonly$ | async) {\r\n<div class=\"read-only\">\r\n <div [style.background-color]=\"value ? value : null\"></div>\r\n <span>{{ value }}</span>\r\n <button\r\n fd-button\r\n [cdkCopyToClipboard]=\"value\"\r\n [fdType]=\"'transparent'\"\r\n [glyph]=\"'copy'\"\r\n aria-label=\"copy\"\r\n title=\"copy\"\r\n ></button>\r\n</div>\r\n} @else {\r\n<fd-popover #popover>\r\n <fd-popover-control style=\"margin: 0.25rem 0\">\r\n <button fd-button [fdMenu]=\"true\" fdType=\"transparent\">\r\n <span [style.background-color]=\"value\" style=\"width: 16px; height: 16px; border-radius: 50%\"></span>\r\n </button>\r\n </fd-popover-control>\r\n <fd-popover-body>\r\n @if (!isVisibleSwatches) {\r\n <color-chrome [color]=\"value\" className=\"color-box\" (colorChange)=\"onColorChang($event)\"></color-chrome>\r\n } @if (isVisibleSwatches) {\r\n <color-swatches [color]=\"value\" (colorChange)=\"onColorChang($event)\"></color-swatches>\r\n }\r\n <fd-toolbar style=\"background-color: white\">\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n [label]=\"'Cancel' | bbbTranslate\"\r\n (click)=\"onCancel(popover)\"\r\n [compact]=\"true\"\r\n ></button>\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n [label]=\"'Ok' | bbbTranslate\"\r\n (click)=\"onApply(popover)\"\r\n [compact]=\"true\"\r\n ></button>\r\n <fd-toolbar-spacer></fd-toolbar-spacer>\r\n <button fd-toolbar-item fd-button [label]=\"switchText\" (click)=\"onSwatchClick()\" [compact]=\"true\"></button>\r\n </fd-toolbar>\r\n </fd-popover-body>\r\n</fd-popover>\r\n}\r\n", styles: [":host{display:block;margin:.25rem 0}.read-only{display:flex;justify-content:flex-start;column-gap:3px}.read-only div{width:25px;height:20px;border-radius:5px}\n"], dependencies: [{ kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i7$1.PopoverControlComponent, selector: "fd-popover-control, [fdPopoverControl]" }, { kind: "component", type: i7$1.PopoverBodyComponent, selector: "fd-popover-body", inputs: ["minWidth", "maxWidth", "minHeight", "maxHeight"] }, { kind: "component", type: i7$1.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig", "preventSpaceKeyScroll"] }, { kind: "component", type: i7$2.ToolbarComponent, selector: "fd-toolbar", inputs: ["titleId", "class", "shouldOverflow", "fdType", "title", "active", "clearBorder", "forceOverflow", "tabindex", "headingLevel", "ariaLabel", "ariaLabelledBy"] }, { kind: "directive", type: i7$2.ToolbarItemDirective, selector: "[fd-toolbar-item], [fdOverflowGroup], [fdOverflowPriority]", inputs: ["fdOverflowPriority", "fdOverflowGroup"] }, { kind: "directive", type: i7$2.ToolbarSpacerDirective, selector: "fd-toolbar-spacer", inputs: ["width", "class", "fixed"] }, { kind: "component", type: i4$6.SwatchesComponent, selector: "color-swatches", inputs: ["width", "height", "colors", "zDepth", "radius", "background"] }, { kind: "component", type: i5$4.ChromeComponent, selector: "color-chrome", inputs: ["disableAlpha"] }, { kind: "directive", type: i6.CdkCopyToClipboard, selector: "[cdkCopyToClipboard]", inputs: ["cdkCopyToClipboard", "cdkCopyToClipboardAttempts"], outputs: ["cdkCopyToClipboardCopied"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
8038
8043
  }
8039
8044
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UiColorUiComponent, decorators: [{
8040
8045
  type: Component,
@@ -8631,7 +8636,7 @@ class BarsaTinyemceComponent extends BaseComponent {
8631
8636
  }
8632
8637
  }
8633
8638
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BarsaTinyemceComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
8634
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.6", type: BarsaTinyemceComponent, isStandalone: false, selector: "bsu-barsa-tinyemce", inputs: { Setting: "Setting", isReadonly: "isReadonly", value: "value", IsInline: "IsInline", defaultVerbs: "defaultVerbs" }, outputs: { valueChange: "valueChange", tinyInit: "tinyInit" }, providers: [UploadService], viewQueries: [{ propertyName: "_uploader", first: true, predicate: ["uploader"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div\r\n class=\"fd-input tinywrapper\"\r\n [style.min-height.px]=\"height\"\r\n [id]=\"tinyHostId\"\r\n intersectionObserver\r\n [intersectionThreshold]=\"0.1\"\r\n (visibilityChange)=\"onVisibilityChange($event)\"\r\n></div>\r\n<fd-file-uploader\r\n #uploader\r\n [style.display]=\"'none'\"\r\n [accept]=\"''\"\r\n [multiple]=\"false\"\r\n (selectedFilesChanged)=\"onFileSelection($event)\"\r\n></fd-file-uploader>\r\n<!-- <textarea [id]=\"tinyHostId\" style=\"height: 100%; visibility: hidden\"></textarea> -->\r\n", styles: [":host{display:block;width:100%;height:100%}.tinywrapper{overflow:auto}\n"], dependencies: [{ kind: "directive", type: i2.IntersectionObserverDirective, selector: "[intersectionObserver]", inputs: ["intersectionDebounce", "intersectionRootMargin", "intersectionRoot", "intersectionThreshold"], outputs: ["visibilityChange"] }, { kind: "component", type: i5$4.FileUploaderComponent, selector: "fd-file-uploader", inputs: ["disabled", "required", "multiple", "accept", "dragndrop", "maxFileSize", "minFileSize", "id", "ariaLabel", "ariaLabelledBy", "placeholder", "buttonLabel", "buttonAriaLabel", "state", "fileLimit", "inputHidden", "width"], outputs: ["selectedFilesChanged", "selectedInvalidFiles", "onDragEnter", "onDragLeave"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
8639
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.6", type: BarsaTinyemceComponent, isStandalone: false, selector: "bsu-barsa-tinyemce", inputs: { Setting: "Setting", isReadonly: "isReadonly", value: "value", IsInline: "IsInline", defaultVerbs: "defaultVerbs" }, outputs: { valueChange: "valueChange", tinyInit: "tinyInit" }, providers: [UploadService], viewQueries: [{ propertyName: "_uploader", first: true, predicate: ["uploader"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div\r\n class=\"fd-input tinywrapper\"\r\n [style.min-height.px]=\"height\"\r\n [id]=\"tinyHostId\"\r\n intersectionObserver\r\n [intersectionThreshold]=\"0.1\"\r\n (visibilityChange)=\"onVisibilityChange($event)\"\r\n></div>\r\n<fd-file-uploader\r\n #uploader\r\n [style.display]=\"'none'\"\r\n [accept]=\"''\"\r\n [multiple]=\"false\"\r\n (selectedFilesChanged)=\"onFileSelection($event)\"\r\n></fd-file-uploader>\r\n<!-- <textarea [id]=\"tinyHostId\" style=\"height: 100%; visibility: hidden\"></textarea> -->\r\n", styles: [":host{display:block;width:100%;height:100%}.tinywrapper{overflow:auto}\n"], dependencies: [{ kind: "directive", type: i2.IntersectionObserverDirective, selector: "[intersectionObserver]", inputs: ["intersectionDebounce", "intersectionRootMargin", "intersectionRoot", "intersectionThreshold"], outputs: ["visibilityChange"] }, { kind: "component", type: i4$7.FileUploaderComponent, selector: "fd-file-uploader", inputs: ["disabled", "required", "multiple", "accept", "dragndrop", "maxFileSize", "minFileSize", "id", "ariaLabel", "ariaLabelledBy", "placeholder", "buttonLabel", "buttonAriaLabel", "state", "fileLimit", "inputHidden", "width"], outputs: ["selectedFilesChanged", "selectedInvalidFiles", "onDragEnter", "onDragLeave"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
8635
8640
  }
8636
8641
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BarsaTinyemceComponent, decorators: [{
8637
8642
  type: Component,
@@ -8903,7 +8908,7 @@ class UiPdfViewerComponent extends DeviceInfoFieldBaseComponent {
8903
8908
  BarsaApi.Ul.LoadingMask.Mask(this._el.nativeElement);
8904
8909
  }
8905
8910
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UiPdfViewerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
8906
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: UiPdfViewerComponent, isStandalone: false, selector: "bsu-ui-pdf-viewer", host: { properties: { "style.min-height": "this._minheight" } }, providers: [UploadService], viewQueries: [{ propertyName: "fileUploadComponent", first: true, predicate: FileUploaderComponent, descendants: true }, { propertyName: "_pdfViewerOnDemand", first: true, predicate: ["pdfViewerOnDemand"], descendants: true }, { propertyName: "_dialogTpl", first: true, predicate: ["dialogTpl"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-container *untilInView=\"el\">\r\n @switch (parameters?.ShowMode) { @case ('2') {\r\n <div>\r\n <ng-container *ngTemplateOutlet=\"toolbar; context: { dialogMode: true }\"></ng-container>\r\n </div>\r\n } @default {\r\n <div>\r\n <ng-container *ngTemplateOutlet=\"toolbar\"></ng-container>\r\n <ng-container *ngTemplateOutlet=\"preview\"></ng-container>\r\n </div>\r\n } }\r\n</ng-container>\r\n\r\n<ng-template #toolbar let-dialogMode=\"dialogMode\">\r\n @if ((disableOrReadonly$ | async) !== true) {\r\n <fd-toolbar [class.dialogMode]=\"dialogMode\" [transparent]=\"true\" [shouldOverflow]=\"true\">\r\n <fd-file-uploader\r\n #uploader\r\n [style.display]=\"'none'\"\r\n fd-toolbar-item\r\n [id]=\"id\"\r\n [name]=\"'pdf_' + id\"\r\n [placeholder]=\"'AttachFile' | bbbTranslate\"\r\n [buttonLabel]=\"'AttachFile' | bbbTranslate\"\r\n [buttonAriaLabel]=\"'AttachFile' | bbbTranslate\"\r\n [accept]=\"validExtension\"\r\n [(ngModel)]=\"files\"\r\n [multiple]=\"false\"\r\n (selectedFilesChanged)=\"onFileSelection($event)\"\r\n [contentDensity]=\"(contentDensity$ | async)!!\"\r\n ></fd-file-uploader>\r\n @if (!parameters?.HideDelete && !hideRemove) {\r\n <button\r\n [disabled]=\"!(canDelete && value)\"\r\n fd-button\r\n fd-toolbar-item\r\n class=\"delete\"\r\n glyph=\"delete\"\r\n [fdType]=\"'transparent'\"\r\n (click)=\"onDelete()\"\r\n ></button>\r\n } @if (!parameters?.HideAttach && !hideUpload) {\r\n <button\r\n fd-button\r\n fd-toolbar-item\r\n glyph=\"attachment\"\r\n [fdType]=\"'transparent'\"\r\n [disabled]=\"!canUpload\"\r\n (click)=\"uploader.open()\"\r\n ></button>\r\n } @if (canEdit) {\r\n <button fd-toolbar-item fd-button glyph=\"edit\" [fdType]=\"'transparent'\" (click)=\"onEdit()\"></button>\r\n } @if (useWordEditor) {\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n glyph=\"doc-attachment\"\r\n [fdType]=\"'transparent'\"\r\n [label]=\"'Edit' | bbbTranslate\"\r\n (click)=\"onEditInWord()\"\r\n ></button>\r\n } @if (officeOnline) {\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n glyph=\"doc-attachment\"\r\n [fdType]=\"'transparent'\"\r\n [label]=\"'OfficeOnline' | bbbTranslate\"\r\n (click)=\"onOfficeOnline($event)\"\r\n ></button>\r\n } @if (dialogMode) {\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n [glyph]=\"'show'\"\r\n [attr.fdOverflowPriority]=\"'low'\"\r\n [fdType]=\"'transparent'\"\r\n [label]=\"!dialogMode ? '' : ('View' | bbbTranslate)\"\r\n (click)=\"onOpenPreviewInDialog()\"\r\n bodyClick\r\n ></button>\r\n } @if (canDownload && value) {\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n [attr.fdOverflowPriority]=\"'low'\"\r\n [glyph]=\"'download'\"\r\n [label]=\"!dialogMode ? '' : ('Download' | bbbTranslate)\"\r\n [fdType]=\"'transparent'\"\r\n (click)=\"onDownload()\"\r\n bodyClick\r\n ></button>\r\n } @if (!parameters?.HideRefresh && value) {\r\n <button\r\n [attr.fdOverflowPriority]=\"'low'\"\r\n fd-toolbar-item\r\n fd-button\r\n [glyph]=\"dialogMode ? null : 'refresh'\"\r\n [label]=\"!dialogMode ? '' : ('Refresh' | bbbTranslate)\"\r\n [fdType]=\"'transparent'\"\r\n bodyClick\r\n (click)=\"onRefresh()\"\r\n ></button>\r\n }\r\n <fd-busy-indicator\r\n fd-toolbar-item\r\n [loading]=\"(uploadingState$ | async)?.uploading === true\"\r\n ></fd-busy-indicator>\r\n </fd-toolbar>\r\n }\r\n</ng-template>\r\n<ng-template #preview>\r\n @if (isMobile) {\r\n <div\r\n [style.border]=\"!blobUrl ? '.0625rem solid var(--sapGroup_TitleBorderColor)' : null\"\r\n style=\"height: calc(70vh - 40px); position: relative\"\r\n >\r\n @if(value && hasPdf){\r\n <bsu-blob-viewer [file]=\"value\" [style.width]=\"width\" [decrement]=\"'25px'\"></bsu-blob-viewer>\r\n }@else{\r\n <ng-container *ngTemplateOutlet=\"previewOtherPdf\"></ng-container>\r\n\r\n }\r\n <!-- <ng2-pdfjs-viewer\r\n fillEmptySpace\r\n [containerDom]=\"formContainer\"\r\n [dontUseTopBound]=\"true\"\r\n #pdfViewerOnDemand\r\n [externalWindow]=\"false\"\r\n [downloadFileName]=\"blobUrl\"\r\n [openFile]=\"false\"\r\n [viewBookmark]=\"false\"\r\n [showSpinner]=\"true\"\r\n [download]=\"true\"\r\n ></ng2-pdfjs-viewer> -->\r\n </div>\r\n } @else { @if (hasPdf) {\r\n <object\r\n fillEmptySpace\r\n [containerDom]=\"formContainer\"\r\n [dontUseTopBound]=\"true\"\r\n [disable]=\"inlineEdit\"\r\n style=\"flex-grow: 1\"\r\n [attr.data]=\"valueUrl\"\r\n type=\"application/pdf\"\r\n width=\"100%\"\r\n [style.height]=\"inlineEdit ? 'auto' : formHeight - 30 > 0 ? formHeight - 30 + 'px' : '100vh'\"\r\n [attr.html]=\"fallbackLink\"\r\n ></object>\r\n } @else {\r\n <ng-container *ngTemplateOutlet=\"previewOtherPdf\"></ng-container>\r\n } }\r\n</ng-template>\r\n\r\n<ng-template #previewOtherPdf>\r\n @if (singleControl && value && !value.IsDeleted) {\r\n <div class=\"tw-flex tw-justify-center\">\r\n @if (singleFileThumbnailUrl) {\r\n <bsu-file-viewer-content\r\n [attr.title]=\"value.FileName\"\r\n [file]=\"value\"\r\n [imageOnly]=\"true\"\r\n [fillWidth]=\"true\"\r\n [isImageGallery]=\"false\"\r\n ></bsu-file-viewer-content>\r\n <!-- <img [src]=\"singleFileThumbnailUrl\" /> -->\r\n }\r\n </div>\r\n } @else {\r\n <div\r\n fillEmptySpace\r\n [containerDom]=\"formContainer\"\r\n [dontUseTopBound]=\"true\"\r\n class=\"hatchBackground\"\r\n [disable]=\"inlineEdit\"\r\n [class.tw-h-4]=\"inlineEdit\"\r\n ></div>\r\n }\r\n</ng-template>\r\n<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #dialogTpl>\r\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\" class=\"vertical\">\r\n <fd-dialog-header>\r\n <ng-template fdkTemplate=\"header\">\r\n <div fd-bar-left>\r\n <fd-bar-element>\r\n <h3 fd-title>edit in word</h3>\r\n </fd-bar-element>\r\n </div>\r\n <div fd-bar-right>\r\n <fd-button-bar ariaLabel=\"close\" glyph=\"decline\" (click)=\"onDialogClose()\"></fd-button-bar>\r\n </div>\r\n </ng-template>\r\n </fd-dialog-header>\r\n <fd-dialog-body>\r\n <ng-container *ngTemplateOutlet=\"preview\"></ng-container>\r\n </fd-dialog-body>\r\n </fd-dialog>\r\n</ng-template>\r\n", styles: [":host{display:flex;flex-direction:column}:host fd-toolbar.dialogMode ::ng-deep .fd-toolbar{border-bottom:none}:host ::ng-deep .delete button{border-color:transparent!important;background-color:transparent!important}:host ::ng-deep .fd-file-uploader input{display:none}.single-control{height:50px}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i2.UntilInViewDirective, selector: "[untilInView]", inputs: ["untilInView", "intersectionDebounce"] }, { kind: "directive", type: i2.FillEmptySpaceDirective, selector: "[fillEmptySpace]", inputs: ["containerDom", "decrement", "disable", "height", "dontUseTopBound", "setMinHeight", "setMaxHeight"], outputs: ["heightChanged"], exportAs: ["fillEmptySpace"] }, { kind: "directive", type: i2.BodyClickDirective, selector: "[bodyClick]", inputs: ["disableBodyClick"] }, { kind: "directive", type: i3$2.BarLeftDirective, selector: "[fd-bar-left]" }, { kind: "directive", type: i3$2.BarRightDirective, selector: "[fd-bar-right]" }, { kind: "directive", type: i3$2.BarElementDirective, selector: "fd-bar-element", inputs: ["fullWidth"] }, { kind: "component", type: i3$2.ButtonBarComponent, selector: "fd-button-bar", inputs: ["fullWidth", "fdType", "title", "ariaLabelledby", "id"] }, { kind: "component", type: i5$1.BusyIndicatorComponent, selector: "fd-busy-indicator", inputs: ["loading", "size", "block", "ariaLabel", "ariaValueText", "title", "label", "ariaLive"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i5$4.FileUploaderComponent, selector: "fd-file-uploader", inputs: ["disabled", "required", "multiple", "accept", "dragndrop", "maxFileSize", "minFileSize", "id", "ariaLabel", "ariaLabelledBy", "placeholder", "buttonLabel", "buttonAriaLabel", "state", "fileLimit", "inputHidden", "width"], outputs: ["selectedFilesChanged", "selectedInvalidFiles", "onDragEnter", "onDragLeave"] }, { kind: "component", type: i3$3.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i3$3.DialogBodyComponent, selector: "fd-dialog-body", inputs: ["disablePaddings"] }, { kind: "component", type: i3$3.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "directive", type: i4$2.TemplateDirective, selector: "[fdkTemplate]", inputs: ["fdkTemplate"] }, { kind: "component", type: i5.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: FileViewerContentComponent, selector: "bsu-file-viewer-content", inputs: ["fillWidth", "imageOnly", "isImageGallery", "cardMode", "showFooter", "showContent", "selected", "width", "deviceSize", "cardContentHeight", "file", "isThumbnail"], outputs: ["cantView", "imageLoaded"] }, { kind: "component", type: BlobViewerComponent, selector: "bsu-blob-viewer", inputs: ["file", "type"] }, { kind: "directive", type: ContentDensityDirective, selector: "[contentDensity]" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
8911
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: UiPdfViewerComponent, isStandalone: false, selector: "bsu-ui-pdf-viewer", host: { properties: { "style.min-height": "this._minheight" } }, providers: [UploadService], viewQueries: [{ propertyName: "fileUploadComponent", first: true, predicate: FileUploaderComponent, descendants: true }, { propertyName: "_pdfViewerOnDemand", first: true, predicate: ["pdfViewerOnDemand"], descendants: true }, { propertyName: "_dialogTpl", first: true, predicate: ["dialogTpl"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-container *untilInView=\"el\">\r\n @switch (parameters?.ShowMode) { @case ('2') {\r\n <div>\r\n <ng-container *ngTemplateOutlet=\"toolbar; context: { dialogMode: true }\"></ng-container>\r\n </div>\r\n } @default {\r\n <div>\r\n <ng-container *ngTemplateOutlet=\"toolbar\"></ng-container>\r\n <ng-container *ngTemplateOutlet=\"preview\"></ng-container>\r\n </div>\r\n } }\r\n</ng-container>\r\n\r\n<ng-template #toolbar let-dialogMode=\"dialogMode\">\r\n @if ((disableOrReadonly$ | async) !== true) {\r\n <fd-toolbar [class.dialogMode]=\"dialogMode\" [transparent]=\"true\" [shouldOverflow]=\"true\">\r\n <fd-file-uploader\r\n #uploader\r\n [style.display]=\"'none'\"\r\n fd-toolbar-item\r\n [id]=\"id\"\r\n [name]=\"'pdf_' + id\"\r\n [placeholder]=\"'AttachFile' | bbbTranslate\"\r\n [buttonLabel]=\"'AttachFile' | bbbTranslate\"\r\n [buttonAriaLabel]=\"'AttachFile' | bbbTranslate\"\r\n [accept]=\"validExtension\"\r\n [(ngModel)]=\"files\"\r\n [multiple]=\"false\"\r\n (selectedFilesChanged)=\"onFileSelection($event)\"\r\n [contentDensity]=\"(contentDensity$ | async)!!\"\r\n ></fd-file-uploader>\r\n @if (!parameters?.HideDelete && !hideRemove) {\r\n <button\r\n [disabled]=\"!(canDelete && value)\"\r\n fd-button\r\n fd-toolbar-item\r\n class=\"delete\"\r\n glyph=\"delete\"\r\n [fdType]=\"'transparent'\"\r\n (click)=\"onDelete()\"\r\n ></button>\r\n } @if (!parameters?.HideAttach && !hideUpload) {\r\n <button\r\n fd-button\r\n fd-toolbar-item\r\n glyph=\"attachment\"\r\n [fdType]=\"'transparent'\"\r\n [disabled]=\"!canUpload\"\r\n (click)=\"uploader.open()\"\r\n ></button>\r\n } @if (canEdit) {\r\n <button fd-toolbar-item fd-button glyph=\"edit\" [fdType]=\"'transparent'\" (click)=\"onEdit()\"></button>\r\n } @if (useWordEditor) {\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n glyph=\"doc-attachment\"\r\n [fdType]=\"'transparent'\"\r\n [label]=\"'Edit' | bbbTranslate\"\r\n (click)=\"onEditInWord()\"\r\n ></button>\r\n } @if (officeOnline) {\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n glyph=\"doc-attachment\"\r\n [fdType]=\"'transparent'\"\r\n [label]=\"'OfficeOnline' | bbbTranslate\"\r\n (click)=\"onOfficeOnline($event)\"\r\n ></button>\r\n } @if (dialogMode) {\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n [glyph]=\"'show'\"\r\n [attr.fdOverflowPriority]=\"'low'\"\r\n [fdType]=\"'transparent'\"\r\n [label]=\"!dialogMode ? '' : ('View' | bbbTranslate)\"\r\n (click)=\"onOpenPreviewInDialog()\"\r\n bodyClick\r\n ></button>\r\n } @if (canDownload && value) {\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n [attr.fdOverflowPriority]=\"'low'\"\r\n [glyph]=\"'download'\"\r\n [label]=\"!dialogMode ? '' : ('Download' | bbbTranslate)\"\r\n [fdType]=\"'transparent'\"\r\n (click)=\"onDownload()\"\r\n bodyClick\r\n ></button>\r\n } @if (!parameters?.HideRefresh && value) {\r\n <button\r\n [attr.fdOverflowPriority]=\"'low'\"\r\n fd-toolbar-item\r\n fd-button\r\n [glyph]=\"dialogMode ? null : 'refresh'\"\r\n [label]=\"!dialogMode ? '' : ('Refresh' | bbbTranslate)\"\r\n [fdType]=\"'transparent'\"\r\n bodyClick\r\n (click)=\"onRefresh()\"\r\n ></button>\r\n }\r\n <fd-busy-indicator\r\n fd-toolbar-item\r\n [loading]=\"(uploadingState$ | async)?.uploading === true\"\r\n ></fd-busy-indicator>\r\n </fd-toolbar>\r\n }\r\n</ng-template>\r\n<ng-template #preview>\r\n @if (isMobile) {\r\n <div\r\n [style.border]=\"!blobUrl ? '.0625rem solid var(--sapGroup_TitleBorderColor)' : null\"\r\n style=\"height: calc(70vh - 40px); position: relative\"\r\n >\r\n @if(value && hasPdf){\r\n <bsu-blob-viewer [file]=\"value\" [style.width]=\"width\" [decrement]=\"'25px'\"></bsu-blob-viewer>\r\n }@else{\r\n <ng-container *ngTemplateOutlet=\"previewOtherPdf\"></ng-container>\r\n\r\n }\r\n <!-- <ng2-pdfjs-viewer\r\n fillEmptySpace\r\n [containerDom]=\"formContainer\"\r\n [dontUseTopBound]=\"true\"\r\n #pdfViewerOnDemand\r\n [externalWindow]=\"false\"\r\n [downloadFileName]=\"blobUrl\"\r\n [openFile]=\"false\"\r\n [viewBookmark]=\"false\"\r\n [showSpinner]=\"true\"\r\n [download]=\"true\"\r\n ></ng2-pdfjs-viewer> -->\r\n </div>\r\n } @else { @if (hasPdf) {\r\n <object\r\n fillEmptySpace\r\n [containerDom]=\"formContainer\"\r\n [dontUseTopBound]=\"true\"\r\n [disable]=\"inlineEdit\"\r\n style=\"flex-grow: 1\"\r\n [attr.data]=\"valueUrl\"\r\n type=\"application/pdf\"\r\n width=\"100%\"\r\n [style.height]=\"inlineEdit ? 'auto' : formHeight - 30 > 0 ? formHeight - 30 + 'px' : '100vh'\"\r\n [attr.html]=\"fallbackLink\"\r\n ></object>\r\n } @else {\r\n <ng-container *ngTemplateOutlet=\"previewOtherPdf\"></ng-container>\r\n } }\r\n</ng-template>\r\n\r\n<ng-template #previewOtherPdf>\r\n @if (singleControl && value && !value.IsDeleted) {\r\n <div class=\"tw-flex tw-justify-center\">\r\n @if (singleFileThumbnailUrl) {\r\n <bsu-file-viewer-content\r\n [attr.title]=\"value.FileName\"\r\n [file]=\"value\"\r\n [imageOnly]=\"true\"\r\n [fillWidth]=\"true\"\r\n [isImageGallery]=\"false\"\r\n ></bsu-file-viewer-content>\r\n <!-- <img [src]=\"singleFileThumbnailUrl\" /> -->\r\n }\r\n </div>\r\n } @else {\r\n <div\r\n fillEmptySpace\r\n [containerDom]=\"formContainer\"\r\n [dontUseTopBound]=\"true\"\r\n class=\"hatchBackground\"\r\n [disable]=\"inlineEdit\"\r\n [class.tw-h-4]=\"inlineEdit\"\r\n ></div>\r\n }\r\n</ng-template>\r\n<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #dialogTpl>\r\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\" class=\"vertical\">\r\n <fd-dialog-header>\r\n <ng-template fdkTemplate=\"header\">\r\n <div fd-bar-left>\r\n <fd-bar-element>\r\n <h3 fd-title>edit in word</h3>\r\n </fd-bar-element>\r\n </div>\r\n <div fd-bar-right>\r\n <fd-button-bar ariaLabel=\"close\" glyph=\"decline\" (click)=\"onDialogClose()\"></fd-button-bar>\r\n </div>\r\n </ng-template>\r\n </fd-dialog-header>\r\n <fd-dialog-body>\r\n <ng-container *ngTemplateOutlet=\"preview\"></ng-container>\r\n </fd-dialog-body>\r\n </fd-dialog>\r\n</ng-template>\r\n", styles: [":host{display:flex;flex-direction:column}:host fd-toolbar.dialogMode ::ng-deep .fd-toolbar{border-bottom:none}:host ::ng-deep .delete button{border-color:transparent!important;background-color:transparent!important}:host ::ng-deep .fd-file-uploader input{display:none}.single-control{height:50px}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i2.UntilInViewDirective, selector: "[untilInView]", inputs: ["untilInView", "intersectionDebounce"] }, { kind: "directive", type: i2.FillEmptySpaceDirective, selector: "[fillEmptySpace]", inputs: ["containerDom", "decrement", "disable", "height", "dontUseTopBound", "setMinHeight", "setMaxHeight"], outputs: ["heightChanged"], exportAs: ["fillEmptySpace"] }, { kind: "directive", type: i2.BodyClickDirective, selector: "[bodyClick]", inputs: ["disableBodyClick"] }, { kind: "directive", type: i3$2.BarLeftDirective, selector: "[fd-bar-left]" }, { kind: "directive", type: i3$2.BarRightDirective, selector: "[fd-bar-right]" }, { kind: "directive", type: i3$2.BarElementDirective, selector: "fd-bar-element", inputs: ["fullWidth"] }, { kind: "component", type: i3$2.ButtonBarComponent, selector: "fd-button-bar", inputs: ["fullWidth", "fdType", "title", "ariaLabelledby", "id"] }, { kind: "component", type: i5$1.BusyIndicatorComponent, selector: "fd-busy-indicator", inputs: ["loading", "size", "block", "ariaLabel", "ariaValueText", "title", "label", "ariaLive"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i4$7.FileUploaderComponent, selector: "fd-file-uploader", inputs: ["disabled", "required", "multiple", "accept", "dragndrop", "maxFileSize", "minFileSize", "id", "ariaLabel", "ariaLabelledBy", "placeholder", "buttonLabel", "buttonAriaLabel", "state", "fileLimit", "inputHidden", "width"], outputs: ["selectedFilesChanged", "selectedInvalidFiles", "onDragEnter", "onDragLeave"] }, { kind: "component", type: i3$3.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i3$3.DialogBodyComponent, selector: "fd-dialog-body", inputs: ["disablePaddings"] }, { kind: "component", type: i3$3.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "directive", type: i4$2.TemplateDirective, selector: "[fdkTemplate]", inputs: ["fdkTemplate"] }, { kind: "component", type: i5.TitleComponent, selector: "[fd-title], [fdTitle]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "component", type: i7$2.ToolbarComponent, selector: "fd-toolbar", inputs: ["titleId", "class", "shouldOverflow", "fdType", "title", "active", "clearBorder", "forceOverflow", "tabindex", "headingLevel", "ariaLabel", "ariaLabelledBy"] }, { kind: "directive", type: i7$2.ToolbarItemDirective, selector: "[fd-toolbar-item], [fdOverflowGroup], [fdOverflowPriority]", inputs: ["fdOverflowPriority", "fdOverflowGroup"] }, { kind: "component", type: FileViewerContentComponent, selector: "bsu-file-viewer-content", inputs: ["fillWidth", "imageOnly", "isImageGallery", "cardMode", "showFooter", "showContent", "selected", "width", "deviceSize", "cardContentHeight", "file", "isThumbnail"], outputs: ["cantView", "imageLoaded"] }, { kind: "component", type: BlobViewerComponent, selector: "bsu-blob-viewer", inputs: ["file", "type"] }, { kind: "directive", type: ContentDensityDirective, selector: "[contentDensity]" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
8907
8912
  }
8908
8913
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UiPdfViewerComponent, decorators: [{
8909
8914
  type: Component,
@@ -9055,11 +9060,11 @@ class UiFileLinearListBoxComponent extends DeviceInfoFieldBaseComponent {
9055
9060
  this._fileCountSource.next(value?.filter((c) => !c.IsDeleted).length);
9056
9061
  }
9057
9062
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UiFileLinearListBoxComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
9058
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: UiFileLinearListBoxComponent, isStandalone: false, selector: "bsu-ui-file-linear-list-box", inputs: { value: "value" }, providers: [UploadService], viewQueries: [{ propertyName: "fileUploadComponent", first: true, predicate: FileUploaderComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<input fd-form-control class=\"hide\" />\r\n@if (value) {\r\n<div\r\n class=\"token-container fd-input\"\r\n contentDensity\r\n [attr.readonly]=\"(readonly$ | async) === true ? true : null\"\r\n [disabled]=\"(disable$ | async) === true ? true : null\"\r\n intersectionObserver\r\n [intersectionThreshold]=\"0.1\"\r\n (visibilityChange)=\"onVisibilityChange($event)\"\r\n style=\"height: auto !important\"\r\n>\r\n <div class=\"token-wrapper\">\r\n @for (file of value; track trackById(file,$index)) { @if (!file.IsDeleted) {\r\n <fd-popover #popover>\r\n <fd-popover-control>\r\n <fd-token (onCloseClick)=\"onFileDeleted(file.Id)\" [readOnly]=\"(disableOrReadonly$ | async)!!\"\r\n >{{ file.FileName }}\r\n @if (file.IsNew) { @if (valueExtra$ | async; as valueExtra) { @if (valueExtra[file.Id].UploadState\r\n !== 'Complete') {\r\n <span\r\n fd-object-status\r\n [status]=\"file.Id | uploadFileStatus: valueExtra\"\r\n [label]=\"valueExtra[file.Id]?.UploadState || ''\"\r\n [title]=\"valueExtra[file.Id]?.UploadState\"\r\n [aria-label]=\"'File Upload Status Is ' + valueExtra[file.Id]?.UploadState\"\r\n ></span>\r\n } @if (valueExtra[file.Id].Progress) {\r\n <fd-object-number\r\n [number]=\"valueExtra[file.Id].Progress || 0\"\r\n unit=\"%\"\r\n status=\"informative\"\r\n ></fd-object-number>\r\n } @if (valueExtra[file.Id].UploadState === 'Uploading') {\r\n <fd-busy-indicator [loading]=\"true\" [size]=\"'s'\"></fd-busy-indicator>\r\n } } }\r\n </fd-token>\r\n </fd-popover-control>\r\n <fd-popover-body>\r\n @if (valueExtra$ | async; as valueExtra) { @if ( (valueExtra[file.Id].UploadState !== 'Error' ||\r\n valueExtra[file.Id].UploadState === 'Complete') ) {\r\n <bsu-file-viewer-content\r\n [file]=\"file\"\r\n [width]=\"isMobile ? '70svw' : '30svw'\"\r\n [cardContentHeight]=\"!isMobile ? '30svh' : '50svh'\"\r\n [cardMode]=\"true\"\r\n [showContent]=\"true\"\r\n [showFooter]=\"true\"\r\n [deviceSize]=\"(deviceSize$ | async) || 's'\"\r\n (cantView)=\"file.cantView = true\"\r\n ></bsu-file-viewer-content>\r\n <div fd-popover-body-footer>\r\n <bsu-barsa-bar-download-file\r\n [isMobile]=\"false\"\r\n [popover]=\"popover\"\r\n [canPrint]=\"file.Type | isImageType\"\r\n [files]=\"[file]\"\r\n [hideFullScreen]=\"file.cantView\"\r\n [deviceSize]=\"(deviceSize$ | async) || 's'\"\r\n ></bsu-barsa-bar-download-file>\r\n </div>\r\n <!-- <ul fd-list>\r\n <li fd-list-item>\r\n <a fd-list-link (click)=\"onDownloadFile(file)\">\r\n <i fd-list-icon glyph=\"download\"></i>\r\n <span fd-list-title>\r\n {{ 'Download' | bbbTranslate }}\r\n </span>\r\n <fd-busy-indicator [loading]=\"fileDownloading\" [size]=\"'s'\"></fd-busy-indicator>\r\n </a>\r\n </li>\r\n </ul> -->\r\n } }\r\n </fd-popover-body>\r\n </fd-popover>\r\n } }\r\n <div class=\"tw-flex tw-items-center\">\r\n @if (loading) {\r\n <div style=\"position: relative; width: 3rem\">\r\n <bsu-mask [size]=\"'s'\" style=\"background: transparent\"></bsu-mask>\r\n </div>\r\n } @if ((fileCount$ | async) | canUploadFile: maxFileCount:(disable$ | async)===true:(readonly$ |\r\n async)===true) {\r\n <fd-file-uploader\r\n class=\"file-linear-upload\"\r\n fd-toolbar-item\r\n [id]=\"id\"\r\n [name]=\"'linear_' + id\"\r\n [placeholder]=\"'AttachFile' | bbbTranslate\"\r\n [buttonLabel]=\"'AttachFile' | bbbTranslate\"\r\n [buttonAriaLabel]=\"'AttachFile' | bbbTranslate\"\r\n [accept]=\"validExtension\"\r\n [multiple]=\"maxFileCount > 1 || Setting.IsMultiSelect\"\r\n (selectedFilesChanged)=\"onFileSelection($event)\"\r\n [contentDensity]=\"(contentDensity$ | async)!!\"\r\n ></fd-file-uploader>\r\n } @if(value && value.length){\r\n <button\r\n fd-button\r\n fdType=\"transparent\"\r\n [fdMenu]=\"true\"\r\n [fdMenuTrigger]=\"menu\"\r\n [label]=\"'Download' | bbbTranslate\"\r\n ></button>\r\n <fd-menu #menu>\r\n @if(value.length>1){\r\n <li fd-menu-item downloadFiles [files]=\"value\">\r\n <div fd-menu-interactive>\r\n <span fd-menu-title>{{ '.zip' | bbbTranslate }}</span>\r\n </div>\r\n </li>\r\n }\r\n <li fd-menu-item downloadFiles [files]=\"value\" [nozip]=\"true\">\r\n <div fd-menu-interactive>\r\n <span fd-menu-title>{{ 'Download' | bbbTranslate }}{{'All' | bbbTranslate}}</span>\r\n </div>\r\n </li>\r\n </fd-menu>\r\n }\r\n </div>\r\n </div>\r\n</div>\r\n}\r\n", styles: [":host{display:block;width:100%;height:100%}:host ::ng-deep .fd-slider__handle{display:none}:host ::ng-deep .fd-file-uploader input{display:none}:host.isMobile ::ng-deep fd-token>span{-webkit-line-clamp:2;-webkit-box-orient:vertical;white-space:pre-wrap;height:auto;text-align:right}:host.isMobile ::ng-deep body[dir=ltr] fd-token>span{text-align:left}.token-container{padding:3px;display:flex;width:100%}.token-container[readonly=true]{border:none}.token-wrapper{align-items:center;flex-grow:1;display:flex;flex-wrap:wrap;width:100%}.token-wrapper fd-token,.token-wrapper .file-linear-upload{padding:4px}\n"], dependencies: [{ kind: "directive", type: i2.IntersectionObserverDirective, selector: "[intersectionObserver]", inputs: ["intersectionDebounce", "intersectionRootMargin", "intersectionRoot", "intersectionThreshold"], outputs: ["visibilityChange"] }, { kind: "component", type: i5$1.BusyIndicatorComponent, selector: "fd-busy-indicator", inputs: ["loading", "size", "block", "ariaLabel", "ariaValueText", "title", "label", "ariaLive"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i5$4.FileUploaderComponent, selector: "fd-file-uploader", inputs: ["disabled", "required", "multiple", "accept", "dragndrop", "maxFileSize", "minFileSize", "id", "ariaLabel", "ariaLabelledBy", "placeholder", "buttonLabel", "buttonAriaLabel", "state", "fileLimit", "inputHidden", "width"], outputs: ["selectedFilesChanged", "selectedInvalidFiles", "onDragEnter", "onDragLeave"] }, { kind: "component", type: i2$1.FormControlComponent, selector: "input[fd-form-control], textarea[fd-form-control]", inputs: ["state", "type", "class", "ariaLabel", "ariaLabelledBy"] }, { kind: "component", type: i6.MenuComponent, selector: "fd-menu", inputs: ["mobile", "disabled", "focusTrapped", "focusAutoCapture", "openOnHoverTime", "mobileConfig", "ariaLabel", "ariaLabelledby", "id"], outputs: ["activePath"] }, { kind: "component", type: i6.MenuItemComponent, selector: "li[fd-menu-item]", inputs: ["disabled", "itemId", "submenu", "parentSubmenu", "hasSeparator"], outputs: ["onSelect"], exportAs: ["fd-menu-item"] }, { kind: "component", type: i6.MenuInteractiveComponent, selector: "[fd-menu-interactive]" }, { kind: "directive", type: i6.MenuTitleDirective, selector: "[fd-menu-title]" }, { kind: "directive", type: i6.MenuTriggerDirective, selector: "[fdMenuTrigger]", inputs: ["fdMenuTrigger"] }, { kind: "component", type: i7$4.ObjectNumberComponent, selector: "fd-object-number", inputs: ["number", "decimal", "unit", "emphasized", "large", "status", "class", "ariaLabelledBy", "ariaLabel"] }, { kind: "component", type: i8$1.ObjectStatusComponent, selector: "[fd-object-status]", inputs: ["class", "status", "glyph", "glyphFont", "label", "glyphAriaLabel", "indicationColor", "clickable", "inverted", "large", "secondaryIndication", "textTemplate"] }, { kind: "component", type: i7$1.PopoverControlComponent, selector: "fd-popover-control, [fdPopoverControl]" }, { kind: "component", type: i7$1.PopoverBodyComponent, selector: "fd-popover-body", inputs: ["minWidth", "maxWidth", "minHeight", "maxHeight"] }, { kind: "directive", type: i7$1.PopoverBodyFooterDirective, selector: "[fdPopoverBodyFooter], [fd-popover-body-footer]" }, { kind: "component", type: i7$1.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig", "preventSpaceKeyScroll"] }, { kind: "directive", type: i8.ToolbarItemDirective, selector: "[fd-toolbar-item], [fdOverflowGroup], [fdOverflowPriority]", inputs: ["fdOverflowPriority", "fdOverflowGroup"] }, { kind: "component", type: i13.TokenComponent, selector: "fd-token", inputs: ["disabled", "selected", "readOnly"], outputs: ["onCloseClick", "onRemove", "onTokenClick", "onTokenKeydown", "elementFocused"] }, { kind: "component", type: BarsaBarDownloadFileComponent, selector: "bsu-barsa-bar-download-file", inputs: ["popover", "file", "files", "hideFullScreen", "isMobile", "canPrint", "selectedIndex", "deviceSize"] }, { kind: "component", type: MaskComponent, selector: "bsu-mask", inputs: ["size", "top"] }, { kind: "component", type: FileViewerContentComponent, selector: "bsu-file-viewer-content", inputs: ["fillWidth", "imageOnly", "isImageGallery", "cardMode", "showFooter", "showContent", "selected", "width", "deviceSize", "cardContentHeight", "file", "isThumbnail"], outputs: ["cantView", "imageLoaded"] }, { kind: "directive", type: DownloadFilesDirective, selector: "[downloadFiles]", inputs: ["files", "nozip"] }, { kind: "directive", type: ContentDensityDirective, selector: "[contentDensity]" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.CanUploadFilePipe, name: "canUploadFile" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: i2.IsImagePipe, name: "isImageType" }, { kind: "pipe", type: UploadFileStatusPipe, name: "uploadFileStatus" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
9063
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: UiFileLinearListBoxComponent, isStandalone: false, selector: "bsu-ui-file-linear-list-box", inputs: { value: "value" }, providers: [UploadService], viewQueries: [{ propertyName: "fileUploadComponent", first: true, predicate: FileUploaderComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<input fd-form-control class=\"hide\" />\r\n@if (value) {\r\n<div\r\n class=\"token-container fd-input\"\r\n contentDensity\r\n [attr.readonly]=\"(readonly$ | async) === true ? true : null\"\r\n [disabled]=\"(disable$ | async) === true ? true : null\"\r\n intersectionObserver\r\n [intersectionThreshold]=\"0.1\"\r\n (visibilityChange)=\"onVisibilityChange($event)\"\r\n style=\"height: auto !important\"\r\n>\r\n <div class=\"token-wrapper\">\r\n @for (file of value; track trackById(file,$index)) { @if (!file.IsDeleted) {\r\n <fd-popover #popover>\r\n <fd-popover-control>\r\n <fd-token (onCloseClick)=\"onFileDeleted(file.Id)\" [readOnly]=\"(disableOrReadonly$ | async)!!\"\r\n >{{ file.FileName }}\r\n @if (file.IsNew) { @if (valueExtra$ | async; as valueExtra) { @if (valueExtra[file.Id].UploadState\r\n !== 'Complete') {\r\n <span\r\n fd-object-status\r\n [status]=\"file.Id | uploadFileStatus: valueExtra\"\r\n [label]=\"valueExtra[file.Id]?.UploadState || ''\"\r\n [title]=\"valueExtra[file.Id]?.UploadState\"\r\n [aria-label]=\"'File Upload Status Is ' + valueExtra[file.Id]?.UploadState\"\r\n ></span>\r\n } @if (valueExtra[file.Id].Progress) {\r\n <fd-object-number\r\n [number]=\"valueExtra[file.Id].Progress || 0\"\r\n unit=\"%\"\r\n status=\"informative\"\r\n ></fd-object-number>\r\n } @if (valueExtra[file.Id].UploadState === 'Uploading') {\r\n <fd-busy-indicator [loading]=\"true\" [size]=\"'s'\"></fd-busy-indicator>\r\n } } }\r\n </fd-token>\r\n </fd-popover-control>\r\n <fd-popover-body>\r\n @if (valueExtra$ | async; as valueExtra) { @if ( (valueExtra[file.Id].UploadState !== 'Error' ||\r\n valueExtra[file.Id].UploadState === 'Complete') ) {\r\n <bsu-file-viewer-content\r\n [file]=\"file\"\r\n [width]=\"isMobile ? '70svw' : '30svw'\"\r\n [cardContentHeight]=\"!isMobile ? '30svh' : '50svh'\"\r\n [cardMode]=\"true\"\r\n [showContent]=\"true\"\r\n [showFooter]=\"true\"\r\n [deviceSize]=\"(deviceSize$ | async) || 's'\"\r\n (cantView)=\"file.cantView = true\"\r\n ></bsu-file-viewer-content>\r\n <div fd-popover-body-footer>\r\n <bsu-barsa-bar-download-file\r\n [isMobile]=\"false\"\r\n [popover]=\"popover\"\r\n [canPrint]=\"file.Type | isImageType\"\r\n [files]=\"[file]\"\r\n [selectedId]=\"file.Id\"\r\n [hideFullScreen]=\"file.cantView\"\r\n [deviceSize]=\"(deviceSize$ | async) || 's'\"\r\n ></bsu-barsa-bar-download-file>\r\n </div>\r\n <!-- <ul fd-list>\r\n <li fd-list-item>\r\n <a fd-list-link (click)=\"onDownloadFile(file)\">\r\n <i fd-list-icon glyph=\"download\"></i>\r\n <span fd-list-title>\r\n {{ 'Download' | bbbTranslate }}\r\n </span>\r\n <fd-busy-indicator [loading]=\"fileDownloading\" [size]=\"'s'\"></fd-busy-indicator>\r\n </a>\r\n </li>\r\n </ul> -->\r\n } }\r\n </fd-popover-body>\r\n </fd-popover>\r\n } }\r\n <div class=\"tw-flex tw-items-center\">\r\n @if (loading) {\r\n <div style=\"position: relative; width: 3rem\">\r\n <bsu-mask [size]=\"'s'\" style=\"background: transparent\"></bsu-mask>\r\n </div>\r\n } @if ((fileCount$ | async) | canUploadFile: maxFileCount:(disable$ | async)===true:(readonly$ |\r\n async)===true) {\r\n <fd-file-uploader\r\n class=\"file-linear-upload\"\r\n fd-toolbar-item\r\n [id]=\"id\"\r\n [name]=\"'linear_' + id\"\r\n [placeholder]=\"'AttachFile' | bbbTranslate\"\r\n [buttonLabel]=\"'AttachFile' | bbbTranslate\"\r\n [buttonAriaLabel]=\"'AttachFile' | bbbTranslate\"\r\n [accept]=\"validExtension\"\r\n [multiple]=\"maxFileCount > 1 || Setting.IsMultiSelect\"\r\n (selectedFilesChanged)=\"onFileSelection($event)\"\r\n [contentDensity]=\"(contentDensity$ | async)!!\"\r\n ></fd-file-uploader>\r\n } @if(value && value.length){\r\n <button\r\n fd-button\r\n fdType=\"transparent\"\r\n [fdMenu]=\"true\"\r\n [fdMenuTrigger]=\"menu\"\r\n [label]=\"'Download' | bbbTranslate\"\r\n ></button>\r\n <fd-menu #menu>\r\n @if(value.length>1){\r\n <li fd-menu-item downloadFiles [files]=\"value\">\r\n <div fd-menu-interactive>\r\n <span fd-menu-title>{{ '.zip' | bbbTranslate }}</span>\r\n </div>\r\n </li>\r\n }\r\n <li fd-menu-item downloadFiles [files]=\"value\" [nozip]=\"true\">\r\n <div fd-menu-interactive>\r\n <span fd-menu-title>{{ 'Download' | bbbTranslate }}{{ 'All' | bbbTranslate }}</span>\r\n </div>\r\n </li>\r\n </fd-menu>\r\n }\r\n </div>\r\n </div>\r\n</div>\r\n}\r\n", styles: [":host{display:block;width:100%;height:100%}:host ::ng-deep .fd-slider__handle{display:none}:host ::ng-deep .fd-file-uploader input{display:none}:host.isMobile ::ng-deep fd-token>span{-webkit-line-clamp:2;-webkit-box-orient:vertical;white-space:pre-wrap;height:auto;text-align:right}:host.isMobile ::ng-deep body[dir=ltr] fd-token>span{text-align:left}.token-container{padding:3px;display:flex;width:100%}.token-container[readonly=true]{border:none}.token-wrapper{align-items:center;flex-grow:1;display:flex;flex-wrap:wrap;width:100%}.token-wrapper fd-token,.token-wrapper .file-linear-upload{padding:4px}\n"], dependencies: [{ kind: "directive", type: i2.IntersectionObserverDirective, selector: "[intersectionObserver]", inputs: ["intersectionDebounce", "intersectionRootMargin", "intersectionRoot", "intersectionThreshold"], outputs: ["visibilityChange"] }, { kind: "component", type: i5$1.BusyIndicatorComponent, selector: "fd-busy-indicator", inputs: ["loading", "size", "block", "ariaLabel", "ariaValueText", "title", "label", "ariaLive"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i4$7.FileUploaderComponent, selector: "fd-file-uploader", inputs: ["disabled", "required", "multiple", "accept", "dragndrop", "maxFileSize", "minFileSize", "id", "ariaLabel", "ariaLabelledBy", "placeholder", "buttonLabel", "buttonAriaLabel", "state", "fileLimit", "inputHidden", "width"], outputs: ["selectedFilesChanged", "selectedInvalidFiles", "onDragEnter", "onDragLeave"] }, { kind: "component", type: i2$1.FormControlComponent, selector: "input[fd-form-control], textarea[fd-form-control]", inputs: ["state", "type", "class", "ariaLabel", "ariaLabelledBy"] }, { kind: "component", type: i5$2.MenuComponent, selector: "fd-menu", inputs: ["mobile", "disabled", "focusTrapped", "focusAutoCapture", "openOnHoverTime", "mobileConfig", "ariaLabel", "ariaLabelledby", "id"], outputs: ["activePath"] }, { kind: "component", type: i5$2.MenuItemComponent, selector: "li[fd-menu-item]", inputs: ["disabled", "itemId", "submenu", "parentSubmenu", "hasSeparator"], outputs: ["onSelect"], exportAs: ["fd-menu-item"] }, { kind: "component", type: i5$2.MenuInteractiveComponent, selector: "[fd-menu-interactive]" }, { kind: "directive", type: i5$2.MenuTitleDirective, selector: "[fd-menu-title]" }, { kind: "directive", type: i5$2.MenuTriggerDirective, selector: "[fdMenuTrigger]", inputs: ["fdMenuTrigger"] }, { kind: "component", type: i7$4.ObjectNumberComponent, selector: "fd-object-number", inputs: ["number", "decimal", "unit", "emphasized", "large", "status", "class", "ariaLabelledBy", "ariaLabel"] }, { kind: "component", type: i8$1.ObjectStatusComponent, selector: "[fd-object-status]", inputs: ["class", "status", "glyph", "glyphFont", "label", "glyphAriaLabel", "indicationColor", "clickable", "inverted", "large", "secondaryIndication", "textTemplate"] }, { kind: "component", type: i7$1.PopoverControlComponent, selector: "fd-popover-control, [fdPopoverControl]" }, { kind: "component", type: i7$1.PopoverBodyComponent, selector: "fd-popover-body", inputs: ["minWidth", "maxWidth", "minHeight", "maxHeight"] }, { kind: "directive", type: i7$1.PopoverBodyFooterDirective, selector: "[fdPopoverBodyFooter], [fd-popover-body-footer]" }, { kind: "component", type: i7$1.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig", "preventSpaceKeyScroll"] }, { kind: "directive", type: i7$2.ToolbarItemDirective, selector: "[fd-toolbar-item], [fdOverflowGroup], [fdOverflowPriority]", inputs: ["fdOverflowPriority", "fdOverflowGroup"] }, { kind: "component", type: i13.TokenComponent, selector: "fd-token", inputs: ["disabled", "selected", "readOnly"], outputs: ["onCloseClick", "onRemove", "onTokenClick", "onTokenKeydown", "elementFocused"] }, { kind: "component", type: BarsaBarDownloadFileComponent, selector: "bsu-barsa-bar-download-file", inputs: ["popover", "file", "files", "selectedId", "hideFullScreen", "isMobile", "canPrint", "selectedIndex", "deviceSize"] }, { kind: "component", type: MaskComponent, selector: "bsu-mask", inputs: ["size", "top"] }, { kind: "component", type: FileViewerContentComponent, selector: "bsu-file-viewer-content", inputs: ["fillWidth", "imageOnly", "isImageGallery", "cardMode", "showFooter", "showContent", "selected", "width", "deviceSize", "cardContentHeight", "file", "isThumbnail"], outputs: ["cantView", "imageLoaded"] }, { kind: "directive", type: DownloadFilesDirective, selector: "[downloadFiles]", inputs: ["files", "nozip"] }, { kind: "directive", type: ContentDensityDirective, selector: "[contentDensity]" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.CanUploadFilePipe, name: "canUploadFile" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: i2.IsImagePipe, name: "isImageType" }, { kind: "pipe", type: UploadFileStatusPipe, name: "uploadFileStatus" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
9059
9064
  }
9060
9065
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UiFileLinearListBoxComponent, decorators: [{
9061
9066
  type: Component,
9062
- args: [{ selector: 'bsu-ui-file-linear-list-box', providers: [UploadService], changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<input fd-form-control class=\"hide\" />\r\n@if (value) {\r\n<div\r\n class=\"token-container fd-input\"\r\n contentDensity\r\n [attr.readonly]=\"(readonly$ | async) === true ? true : null\"\r\n [disabled]=\"(disable$ | async) === true ? true : null\"\r\n intersectionObserver\r\n [intersectionThreshold]=\"0.1\"\r\n (visibilityChange)=\"onVisibilityChange($event)\"\r\n style=\"height: auto !important\"\r\n>\r\n <div class=\"token-wrapper\">\r\n @for (file of value; track trackById(file,$index)) { @if (!file.IsDeleted) {\r\n <fd-popover #popover>\r\n <fd-popover-control>\r\n <fd-token (onCloseClick)=\"onFileDeleted(file.Id)\" [readOnly]=\"(disableOrReadonly$ | async)!!\"\r\n >{{ file.FileName }}\r\n @if (file.IsNew) { @if (valueExtra$ | async; as valueExtra) { @if (valueExtra[file.Id].UploadState\r\n !== 'Complete') {\r\n <span\r\n fd-object-status\r\n [status]=\"file.Id | uploadFileStatus: valueExtra\"\r\n [label]=\"valueExtra[file.Id]?.UploadState || ''\"\r\n [title]=\"valueExtra[file.Id]?.UploadState\"\r\n [aria-label]=\"'File Upload Status Is ' + valueExtra[file.Id]?.UploadState\"\r\n ></span>\r\n } @if (valueExtra[file.Id].Progress) {\r\n <fd-object-number\r\n [number]=\"valueExtra[file.Id].Progress || 0\"\r\n unit=\"%\"\r\n status=\"informative\"\r\n ></fd-object-number>\r\n } @if (valueExtra[file.Id].UploadState === 'Uploading') {\r\n <fd-busy-indicator [loading]=\"true\" [size]=\"'s'\"></fd-busy-indicator>\r\n } } }\r\n </fd-token>\r\n </fd-popover-control>\r\n <fd-popover-body>\r\n @if (valueExtra$ | async; as valueExtra) { @if ( (valueExtra[file.Id].UploadState !== 'Error' ||\r\n valueExtra[file.Id].UploadState === 'Complete') ) {\r\n <bsu-file-viewer-content\r\n [file]=\"file\"\r\n [width]=\"isMobile ? '70svw' : '30svw'\"\r\n [cardContentHeight]=\"!isMobile ? '30svh' : '50svh'\"\r\n [cardMode]=\"true\"\r\n [showContent]=\"true\"\r\n [showFooter]=\"true\"\r\n [deviceSize]=\"(deviceSize$ | async) || 's'\"\r\n (cantView)=\"file.cantView = true\"\r\n ></bsu-file-viewer-content>\r\n <div fd-popover-body-footer>\r\n <bsu-barsa-bar-download-file\r\n [isMobile]=\"false\"\r\n [popover]=\"popover\"\r\n [canPrint]=\"file.Type | isImageType\"\r\n [files]=\"[file]\"\r\n [hideFullScreen]=\"file.cantView\"\r\n [deviceSize]=\"(deviceSize$ | async) || 's'\"\r\n ></bsu-barsa-bar-download-file>\r\n </div>\r\n <!-- <ul fd-list>\r\n <li fd-list-item>\r\n <a fd-list-link (click)=\"onDownloadFile(file)\">\r\n <i fd-list-icon glyph=\"download\"></i>\r\n <span fd-list-title>\r\n {{ 'Download' | bbbTranslate }}\r\n </span>\r\n <fd-busy-indicator [loading]=\"fileDownloading\" [size]=\"'s'\"></fd-busy-indicator>\r\n </a>\r\n </li>\r\n </ul> -->\r\n } }\r\n </fd-popover-body>\r\n </fd-popover>\r\n } }\r\n <div class=\"tw-flex tw-items-center\">\r\n @if (loading) {\r\n <div style=\"position: relative; width: 3rem\">\r\n <bsu-mask [size]=\"'s'\" style=\"background: transparent\"></bsu-mask>\r\n </div>\r\n } @if ((fileCount$ | async) | canUploadFile: maxFileCount:(disable$ | async)===true:(readonly$ |\r\n async)===true) {\r\n <fd-file-uploader\r\n class=\"file-linear-upload\"\r\n fd-toolbar-item\r\n [id]=\"id\"\r\n [name]=\"'linear_' + id\"\r\n [placeholder]=\"'AttachFile' | bbbTranslate\"\r\n [buttonLabel]=\"'AttachFile' | bbbTranslate\"\r\n [buttonAriaLabel]=\"'AttachFile' | bbbTranslate\"\r\n [accept]=\"validExtension\"\r\n [multiple]=\"maxFileCount > 1 || Setting.IsMultiSelect\"\r\n (selectedFilesChanged)=\"onFileSelection($event)\"\r\n [contentDensity]=\"(contentDensity$ | async)!!\"\r\n ></fd-file-uploader>\r\n } @if(value && value.length){\r\n <button\r\n fd-button\r\n fdType=\"transparent\"\r\n [fdMenu]=\"true\"\r\n [fdMenuTrigger]=\"menu\"\r\n [label]=\"'Download' | bbbTranslate\"\r\n ></button>\r\n <fd-menu #menu>\r\n @if(value.length>1){\r\n <li fd-menu-item downloadFiles [files]=\"value\">\r\n <div fd-menu-interactive>\r\n <span fd-menu-title>{{ '.zip' | bbbTranslate }}</span>\r\n </div>\r\n </li>\r\n }\r\n <li fd-menu-item downloadFiles [files]=\"value\" [nozip]=\"true\">\r\n <div fd-menu-interactive>\r\n <span fd-menu-title>{{ 'Download' | bbbTranslate }}{{'All' | bbbTranslate}}</span>\r\n </div>\r\n </li>\r\n </fd-menu>\r\n }\r\n </div>\r\n </div>\r\n</div>\r\n}\r\n", styles: [":host{display:block;width:100%;height:100%}:host ::ng-deep .fd-slider__handle{display:none}:host ::ng-deep .fd-file-uploader input{display:none}:host.isMobile ::ng-deep fd-token>span{-webkit-line-clamp:2;-webkit-box-orient:vertical;white-space:pre-wrap;height:auto;text-align:right}:host.isMobile ::ng-deep body[dir=ltr] fd-token>span{text-align:left}.token-container{padding:3px;display:flex;width:100%}.token-container[readonly=true]{border:none}.token-wrapper{align-items:center;flex-grow:1;display:flex;flex-wrap:wrap;width:100%}.token-wrapper fd-token,.token-wrapper .file-linear-upload{padding:4px}\n"] }]
9067
+ args: [{ selector: 'bsu-ui-file-linear-list-box', providers: [UploadService], changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<input fd-form-control class=\"hide\" />\r\n@if (value) {\r\n<div\r\n class=\"token-container fd-input\"\r\n contentDensity\r\n [attr.readonly]=\"(readonly$ | async) === true ? true : null\"\r\n [disabled]=\"(disable$ | async) === true ? true : null\"\r\n intersectionObserver\r\n [intersectionThreshold]=\"0.1\"\r\n (visibilityChange)=\"onVisibilityChange($event)\"\r\n style=\"height: auto !important\"\r\n>\r\n <div class=\"token-wrapper\">\r\n @for (file of value; track trackById(file,$index)) { @if (!file.IsDeleted) {\r\n <fd-popover #popover>\r\n <fd-popover-control>\r\n <fd-token (onCloseClick)=\"onFileDeleted(file.Id)\" [readOnly]=\"(disableOrReadonly$ | async)!!\"\r\n >{{ file.FileName }}\r\n @if (file.IsNew) { @if (valueExtra$ | async; as valueExtra) { @if (valueExtra[file.Id].UploadState\r\n !== 'Complete') {\r\n <span\r\n fd-object-status\r\n [status]=\"file.Id | uploadFileStatus: valueExtra\"\r\n [label]=\"valueExtra[file.Id]?.UploadState || ''\"\r\n [title]=\"valueExtra[file.Id]?.UploadState\"\r\n [aria-label]=\"'File Upload Status Is ' + valueExtra[file.Id]?.UploadState\"\r\n ></span>\r\n } @if (valueExtra[file.Id].Progress) {\r\n <fd-object-number\r\n [number]=\"valueExtra[file.Id].Progress || 0\"\r\n unit=\"%\"\r\n status=\"informative\"\r\n ></fd-object-number>\r\n } @if (valueExtra[file.Id].UploadState === 'Uploading') {\r\n <fd-busy-indicator [loading]=\"true\" [size]=\"'s'\"></fd-busy-indicator>\r\n } } }\r\n </fd-token>\r\n </fd-popover-control>\r\n <fd-popover-body>\r\n @if (valueExtra$ | async; as valueExtra) { @if ( (valueExtra[file.Id].UploadState !== 'Error' ||\r\n valueExtra[file.Id].UploadState === 'Complete') ) {\r\n <bsu-file-viewer-content\r\n [file]=\"file\"\r\n [width]=\"isMobile ? '70svw' : '30svw'\"\r\n [cardContentHeight]=\"!isMobile ? '30svh' : '50svh'\"\r\n [cardMode]=\"true\"\r\n [showContent]=\"true\"\r\n [showFooter]=\"true\"\r\n [deviceSize]=\"(deviceSize$ | async) || 's'\"\r\n (cantView)=\"file.cantView = true\"\r\n ></bsu-file-viewer-content>\r\n <div fd-popover-body-footer>\r\n <bsu-barsa-bar-download-file\r\n [isMobile]=\"false\"\r\n [popover]=\"popover\"\r\n [canPrint]=\"file.Type | isImageType\"\r\n [files]=\"[file]\"\r\n [selectedId]=\"file.Id\"\r\n [hideFullScreen]=\"file.cantView\"\r\n [deviceSize]=\"(deviceSize$ | async) || 's'\"\r\n ></bsu-barsa-bar-download-file>\r\n </div>\r\n <!-- <ul fd-list>\r\n <li fd-list-item>\r\n <a fd-list-link (click)=\"onDownloadFile(file)\">\r\n <i fd-list-icon glyph=\"download\"></i>\r\n <span fd-list-title>\r\n {{ 'Download' | bbbTranslate }}\r\n </span>\r\n <fd-busy-indicator [loading]=\"fileDownloading\" [size]=\"'s'\"></fd-busy-indicator>\r\n </a>\r\n </li>\r\n </ul> -->\r\n } }\r\n </fd-popover-body>\r\n </fd-popover>\r\n } }\r\n <div class=\"tw-flex tw-items-center\">\r\n @if (loading) {\r\n <div style=\"position: relative; width: 3rem\">\r\n <bsu-mask [size]=\"'s'\" style=\"background: transparent\"></bsu-mask>\r\n </div>\r\n } @if ((fileCount$ | async) | canUploadFile: maxFileCount:(disable$ | async)===true:(readonly$ |\r\n async)===true) {\r\n <fd-file-uploader\r\n class=\"file-linear-upload\"\r\n fd-toolbar-item\r\n [id]=\"id\"\r\n [name]=\"'linear_' + id\"\r\n [placeholder]=\"'AttachFile' | bbbTranslate\"\r\n [buttonLabel]=\"'AttachFile' | bbbTranslate\"\r\n [buttonAriaLabel]=\"'AttachFile' | bbbTranslate\"\r\n [accept]=\"validExtension\"\r\n [multiple]=\"maxFileCount > 1 || Setting.IsMultiSelect\"\r\n (selectedFilesChanged)=\"onFileSelection($event)\"\r\n [contentDensity]=\"(contentDensity$ | async)!!\"\r\n ></fd-file-uploader>\r\n } @if(value && value.length){\r\n <button\r\n fd-button\r\n fdType=\"transparent\"\r\n [fdMenu]=\"true\"\r\n [fdMenuTrigger]=\"menu\"\r\n [label]=\"'Download' | bbbTranslate\"\r\n ></button>\r\n <fd-menu #menu>\r\n @if(value.length>1){\r\n <li fd-menu-item downloadFiles [files]=\"value\">\r\n <div fd-menu-interactive>\r\n <span fd-menu-title>{{ '.zip' | bbbTranslate }}</span>\r\n </div>\r\n </li>\r\n }\r\n <li fd-menu-item downloadFiles [files]=\"value\" [nozip]=\"true\">\r\n <div fd-menu-interactive>\r\n <span fd-menu-title>{{ 'Download' | bbbTranslate }}{{ 'All' | bbbTranslate }}</span>\r\n </div>\r\n </li>\r\n </fd-menu>\r\n }\r\n </div>\r\n </div>\r\n</div>\r\n}\r\n", styles: [":host{display:block;width:100%;height:100%}:host ::ng-deep .fd-slider__handle{display:none}:host ::ng-deep .fd-file-uploader input{display:none}:host.isMobile ::ng-deep fd-token>span{-webkit-line-clamp:2;-webkit-box-orient:vertical;white-space:pre-wrap;height:auto;text-align:right}:host.isMobile ::ng-deep body[dir=ltr] fd-token>span{text-align:left}.token-container{padding:3px;display:flex;width:100%}.token-container[readonly=true]{border:none}.token-wrapper{align-items:center;flex-grow:1;display:flex;flex-wrap:wrap;width:100%}.token-wrapper fd-token,.token-wrapper .file-linear-upload{padding:4px}\n"] }]
9063
9068
  }], propDecorators: { fileUploadComponent: [{
9064
9069
  type: ViewChild,
9065
9070
  args: [FileUploaderComponent, { static: false }]
@@ -9081,7 +9086,7 @@ class BarsaListFileLinearComponent extends UiFileLinearListBoxComponent {
9081
9086
  }
9082
9087
  }
9083
9088
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BarsaListFileLinearComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
9084
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: BarsaListFileLinearComponent, isStandalone: false, selector: "bsu-barsa-list-file-linear", providers: [UploadService], usesInheritance: true, ngImport: i0, template: "@if (parameters.ModeValue === '1') {\r\n<ul fd-list class=\"file-viewer-attachments\">\r\n @for (file of value; track file) { @if (!file.IsDeleted) {\r\n <li fd-list-item style=\"background-color: #f5f5f5; margin: 0 0 0 30%; width: 100%\">\r\n @if (file.inEdit) {\r\n <input\r\n style=\"width: 90%\"\r\n fd-form-control\r\n [(ngModel)]=\"file.FileName\"\r\n (click)=\"$event.preventDefault(); $event.stopPropagation()\"\r\n (keydown.enter)=\"onHandleRenameFile(file)\"\r\n />\r\n } @if (!file.inEdit) {\r\n <span fd-list-title>\r\n {{ file.FileName }}\r\n </span>\r\n }\r\n <span fd-list-secondary>\r\n <button\r\n ariaLabel=\"Edit Or Save\"\r\n fdType=\"transparent\"\r\n class=\"fd-button--compact\"\r\n fd-button\r\n fdCompact\r\n [glyph]=\"file.inEdit ? 'save' : 'edit'\"\r\n (click)=\"onHandleRenameFile(file)\"\r\n ></button>\r\n @if (!file.inEdit) {\r\n <button\r\n ariaLabel=\"Remove\"\r\n fdType=\"transparent\"\r\n title=\"Remove\"\r\n fd-button\r\n glyph=\"delete\"\r\n (click)=\"onFileDeleted(file.Id)\"\r\n ></button>\r\n }\r\n </span>\r\n </li>\r\n } } @if (valueExtra$ | async; as valueExtra) { @for (file of valueExtra | keyvalue; track file) { @if\r\n (file.value.UploadState === 'Uploading') {\r\n <li style=\"background-color: #f5f5f5; margin: 0 0 0 30%; width: 100%\">\r\n @if (file.value.Progress) {\r\n <fd-progress-indicator state=\"informative\" [valueNow]=\"file.value.Progress\"></fd-progress-indicator>\r\n }\r\n </li>\r\n } } }\r\n</ul>\r\n} @if (parameters.ModeValue === '2') {\r\n<ul fd-list [byline]=\"true\">\r\n @if (fileCount$ | async; as fileCount) { @if (fileCount === 0) {\r\n <li fd-list-item>\r\n <div fd-list-content style=\"text-align: center\">\r\n <span>{{ 'NoFiles' | bbbTranslate }}</span>\r\n </div>\r\n </li>\r\n } } @for (file of value; track file) { @if (valueExtra$ | async; as valueExtra) { @if (!file.IsDeleted) {\r\n <li fd-list-item>\r\n <span fd-list-thumbnail>\r\n @if (valueExtra[file.Id].IsIcon) {\r\n <fd-icon [glyph]=\"valueExtra[file.Id].FileUrl\"></fd-icon>\r\n } @else {\r\n <fd-avatar size=\"m\" [image]=\"valueExtra[file.Id].FileUrl || ''\"></fd-avatar>\r\n }\r\n </span>\r\n <!-- for byline, fd-list-content is mandatory -->\r\n <div fd-list-content>\r\n <div fd-list-title>{{ file.FileName }}</div>\r\n <div fd-list-byline [twoCol]=\"true\">\r\n <div fd-list-byline-left></div>\r\n <div fd-list-byline-right style=\"display: flex; justify-content: flex-end\">\r\n <fd-toolbar [fdType]=\"'transparent'\" [clearBorder]=\"true\">\r\n @if (file.IsNew) {\r\n <span\r\n fd-toolbar-item\r\n fd-object-status\r\n [status]=\"file.Id | uploadFileStatus: valueExtra\"\r\n [label]=\"valueExtra[file.Id]?.UploadState || ''\"\r\n [title]=\"valueExtra[file.Id]?.UploadState\"\r\n [aria-label]=\"'File Upload Status Is ' + valueExtra[file.Id]?.UploadState\"\r\n ></span>\r\n @if (valueExtra[file.Id].UploadState === 'Uploading') {\r\n <fd-slider\r\n [contentDensity]=\"(contentDensity$ | async)!!\"\r\n [(ngModel)]=\"valueExtra[file.Id].Progress\"\r\n [name]=\"'filerLinear_' + id\"\r\n fd-toolbar-item\r\n [id]=\"id\"\r\n [min]=\"0\"\r\n [max]=\"100\"\r\n [step]=\"1\"\r\n >\r\n </fd-slider>\r\n } }\r\n </fd-toolbar>\r\n </div>\r\n </div>\r\n </div>\r\n @if ((disableOrReadonly$ | async) === false && valueExtra[file.Id].UploadState !== 'Uploading') {\r\n <button fd-button fdType=\"transparent\" glyph=\"decline\" (click)=\"onFileDeleted(file.Id)\"></button>\r\n } @if (valueExtra[file.Id].UploadState === 'Uploading') {\r\n <button fd-button [fdType]=\"'transparent'\" [glyph]=\"'stop'\" (click)=\"onTerminate(file)\"></button>\r\n } @if (valueExtra[file.Id].UploadState === 'Error') {\r\n <button fd-button [fdType]=\"'transparent'\" [glyph]=\"'refresh'\" (click)=\"onRetry(file)\"></button>\r\n }\r\n </li>\r\n } } }\r\n</ul>\r\n} @if ((disableOrReadonly$ | async) !== true) {\r\n<fd-toolbar\r\n style=\"display: block\"\r\n [style.height.px]=\"parameters.ModeValue === '1' ? 0 : null\"\r\n [fdType]=\"'transparent'\"\r\n [clearBorder]=\"true\"\r\n>\r\n <fd-file-uploader\r\n fd-toolbar-item\r\n [class.hide-file-uploader]=\"parameters?.HideAttachButton\"\r\n [id]=\"id\"\r\n [name]=\"id\"\r\n [placeholder]=\"'AttachFile' | bbbTranslate\"\r\n [buttonLabel]=\"'AttachFile' | bbbTranslate\"\r\n [buttonAriaLabel]=\"'AttachFile' | bbbTranslate\"\r\n [accept]=\"Setting.ValidExtensions || ''\"\r\n [multiple]=\"maxFileCount > 1\"\r\n (selectedFilesChanged)=\"onFileSelection($event)\"\r\n [contentDensity]=\"(contentDensity$ | async)!!\"\r\n ></fd-file-uploader>\r\n</fd-toolbar>\r\n}\r\n", styles: [":host{display:block;width:100%;height:100%}:host ::ng-deep .fd-slider__handle{display:none}:host ::ng-deep .fd-file-uploader input{display:none}:host ::ng-deep fd-file-uploader .fd-button{background-color:var(--sapButton_Lite_Background);border-color:var(--sapButton_Lite_BorderColor);color:var(--sapButton_Lite_TextColor)}:host .hide-file-uploader{visibility:hidden;height:0;width:0}\n"], dependencies: [{ kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3$7.AvatarComponent, selector: "fd-avatar", inputs: ["class", "id", "ariaLabel", "ariaLabelledby", "label", "size", "font", "glyph", "zoomGlyph", "circle", "interactive", "transparent", "contain", "placeholder", "tile", "border", "colorAccent", "colorIndication", "random", "clickable", "valueState", "image", "alterIcon", "backupImage"], outputs: ["avatarClicked", "zoomGlyphClicked"] }, { kind: "directive", type: i4$3.ContentDensityDirective, selector: "[fdContentDensity]:not([fdCompact]):not([fdCondensed]):not([fdCozy]), [fdCompact]:not([fdContentDensity]):not([fdCondensed]):not([fdCozy]), [fdCondensed]:not([fdContentDensity]):not([fdCompact]):not([fdCozy]), [fdCozy]:not([fdContentDensity]):not([fdCompact]):not([fdCondensed])", inputs: ["fdContentDensity", "fdCompact", "fdCondensed", "fdCozy"], exportAs: ["fdContentDensity"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i5$4.FileUploaderComponent, selector: "fd-file-uploader", inputs: ["disabled", "required", "multiple", "accept", "dragndrop", "maxFileSize", "minFileSize", "id", "ariaLabel", "ariaLabelledBy", "placeholder", "buttonLabel", "buttonAriaLabel", "state", "fileLimit", "inputHidden", "width"], outputs: ["selectedFilesChanged", "selectedInvalidFiles", "onDragEnter", "onDragLeave"] }, { kind: "component", type: i2$1.FormControlComponent, selector: "input[fd-form-control], textarea[fd-form-control]", inputs: ["state", "type", "class", "ariaLabel", "ariaLabelledBy"] }, { kind: "component", type: i3.IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "color", "background", "class", "ariaLabel", "ariaHidden"] }, { kind: "component", type: i7.ListComponent, selector: "[fd-list], [fdList]", inputs: ["dropdownMode", "multiInputMode", "mobileMode", "hasMessage", "noBorder", "navigationIndicator", "selection", "keyboardSupport", "byline", "subline", "theme", "unreadIndicator", "role", "settingsList", "settingsListFooter"], outputs: ["focusEscapeList"] }, { kind: "component", type: i7.ListItemComponent, selector: "[fdListItem] ,[fd-list-item]", inputs: ["selected", "noData", "action", "interactive", "growing", "counter", "active", "unread", "byline", "ariaRole", "id", "preventClick", "settingsListTpl"], outputs: ["keyDown"], exportAs: ["fdListItem"] }, { kind: "directive", type: i7.ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap", "truncate"] }, { kind: "directive", type: i7.ListSecondaryDirective, selector: "[fd-list-secondary], [fdListSecondary]", inputs: ["type"] }, { kind: "directive", type: i7.ListBylineDirective, selector: "[fdListByline], [fd-list-byline]", inputs: ["twoCol", "wrap"] }, { kind: "directive", type: i7.ListBylineLeftDirective, selector: "[fdListBylineLeft], [fd-list-byline-left]", inputs: ["wrap"] }, { kind: "directive", type: i7.ListBylineRightDirective, selector: "[fdListBylineRight], [fd-list-byline-right]", inputs: ["status", "wrap"] }, { kind: "directive", type: i7.ListContentDirective, selector: "[fdListContent], [fd-list-content]", inputs: ["twoCol"] }, { kind: "directive", type: i7.ListThumbnailDirective, selector: "[fdListThumbnail], [fd-list-thumbnail]" }, { kind: "component", type: i8$1.ObjectStatusComponent, selector: "[fd-object-status]", inputs: ["class", "status", "glyph", "glyphFont", "label", "glyphAriaLabel", "indicationColor", "clickable", "inverted", "large", "secondaryIndication", "textTemplate"] }, { 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: i11.SliderComponent, selector: "fd-slider", inputs: ["id", "class", "ariaLabelledBy", "ariaLabel", "min", "max", "step", "jump", "tickmarksBetweenLabels", "mode", "showTicks", "showTicksLabels", "customValues", "tooltipMode", "hideProgressBar", "disabled", "vertical", "value"] }, { kind: "component", type: i12$1.ProgressIndicatorComponent, selector: "fd-progress-indicator", inputs: ["valueText", "unit", "valueMin", "valueMax", "valueNow", "state", "animate"] }, { kind: "directive", type: ContentDensityDirective, selector: "[contentDensity]" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.KeyValuePipe, name: "keyvalue" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: UploadFileStatusPipe, name: "uploadFileStatus" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
9089
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: BarsaListFileLinearComponent, isStandalone: false, selector: "bsu-barsa-list-file-linear", providers: [UploadService], usesInheritance: true, ngImport: i0, template: "@if (parameters.ModeValue === '1') {\r\n<ul fd-list class=\"file-viewer-attachments\">\r\n @for (file of value; track file) { @if (!file.IsDeleted) {\r\n <li fd-list-item style=\"background-color: #f5f5f5; margin: 0 0 0 30%; width: 100%\">\r\n @if (file.inEdit) {\r\n <input\r\n style=\"width: 90%\"\r\n fd-form-control\r\n [(ngModel)]=\"file.FileName\"\r\n (click)=\"$event.preventDefault(); $event.stopPropagation()\"\r\n (keydown.enter)=\"onHandleRenameFile(file)\"\r\n />\r\n } @if (!file.inEdit) {\r\n <span fd-list-title>\r\n {{ file.FileName }}\r\n </span>\r\n }\r\n <span fd-list-secondary>\r\n <button\r\n ariaLabel=\"Edit Or Save\"\r\n fdType=\"transparent\"\r\n class=\"fd-button--compact\"\r\n fd-button\r\n fdCompact\r\n [glyph]=\"file.inEdit ? 'save' : 'edit'\"\r\n (click)=\"onHandleRenameFile(file)\"\r\n ></button>\r\n @if (!file.inEdit) {\r\n <button\r\n ariaLabel=\"Remove\"\r\n fdType=\"transparent\"\r\n title=\"Remove\"\r\n fd-button\r\n glyph=\"delete\"\r\n (click)=\"onFileDeleted(file.Id)\"\r\n ></button>\r\n }\r\n </span>\r\n </li>\r\n } } @if (valueExtra$ | async; as valueExtra) { @for (file of valueExtra | keyvalue; track file) { @if\r\n (file.value.UploadState === 'Uploading') {\r\n <li style=\"background-color: #f5f5f5; margin: 0 0 0 30%; width: 100%\">\r\n @if (file.value.Progress) {\r\n <fd-progress-indicator state=\"informative\" [valueNow]=\"file.value.Progress\"></fd-progress-indicator>\r\n }\r\n </li>\r\n } } }\r\n</ul>\r\n} @if (parameters.ModeValue === '2') {\r\n<ul fd-list [byline]=\"true\">\r\n @if (fileCount$ | async; as fileCount) { @if (fileCount === 0) {\r\n <li fd-list-item>\r\n <div fd-list-content style=\"text-align: center\">\r\n <span>{{ 'NoFiles' | bbbTranslate }}</span>\r\n </div>\r\n </li>\r\n } } @for (file of value; track file) { @if (valueExtra$ | async; as valueExtra) { @if (!file.IsDeleted) {\r\n <li fd-list-item>\r\n <span fd-list-thumbnail>\r\n @if (valueExtra[file.Id].IsIcon) {\r\n <fd-icon [glyph]=\"valueExtra[file.Id].FileUrl\"></fd-icon>\r\n } @else {\r\n <fd-avatar size=\"m\" [image]=\"valueExtra[file.Id].FileUrl || ''\"></fd-avatar>\r\n }\r\n </span>\r\n <!-- for byline, fd-list-content is mandatory -->\r\n <div fd-list-content>\r\n <div fd-list-title>{{ file.FileName }}</div>\r\n <div fd-list-byline [twoCol]=\"true\">\r\n <div fd-list-byline-left></div>\r\n <div fd-list-byline-right style=\"display: flex; justify-content: flex-end\">\r\n <fd-toolbar [fdType]=\"'transparent'\" [clearBorder]=\"true\">\r\n @if (file.IsNew) {\r\n <span\r\n fd-toolbar-item\r\n fd-object-status\r\n [status]=\"file.Id | uploadFileStatus: valueExtra\"\r\n [label]=\"valueExtra[file.Id]?.UploadState || ''\"\r\n [title]=\"valueExtra[file.Id]?.UploadState\"\r\n [aria-label]=\"'File Upload Status Is ' + valueExtra[file.Id]?.UploadState\"\r\n ></span>\r\n @if (valueExtra[file.Id].UploadState === 'Uploading') {\r\n <fd-slider\r\n [contentDensity]=\"(contentDensity$ | async)!!\"\r\n [(ngModel)]=\"valueExtra[file.Id].Progress\"\r\n [name]=\"'filerLinear_' + id\"\r\n fd-toolbar-item\r\n [id]=\"id\"\r\n [min]=\"0\"\r\n [max]=\"100\"\r\n [step]=\"1\"\r\n >\r\n </fd-slider>\r\n } }\r\n </fd-toolbar>\r\n </div>\r\n </div>\r\n </div>\r\n @if ((disableOrReadonly$ | async) === false && valueExtra[file.Id].UploadState !== 'Uploading') {\r\n <button fd-button fdType=\"transparent\" glyph=\"decline\" (click)=\"onFileDeleted(file.Id)\"></button>\r\n } @if (valueExtra[file.Id].UploadState === 'Uploading') {\r\n <button fd-button [fdType]=\"'transparent'\" [glyph]=\"'stop'\" (click)=\"onTerminate(file)\"></button>\r\n } @if (valueExtra[file.Id].UploadState === 'Error') {\r\n <button fd-button [fdType]=\"'transparent'\" [glyph]=\"'refresh'\" (click)=\"onRetry(file)\"></button>\r\n }\r\n </li>\r\n } } }\r\n</ul>\r\n} @if ((disableOrReadonly$ | async) !== true) {\r\n<fd-toolbar\r\n style=\"display: block\"\r\n [style.height.px]=\"parameters.ModeValue === '1' ? 0 : null\"\r\n [fdType]=\"'transparent'\"\r\n [clearBorder]=\"true\"\r\n>\r\n <fd-file-uploader\r\n fd-toolbar-item\r\n [class.hide-file-uploader]=\"parameters?.HideAttachButton\"\r\n [id]=\"id\"\r\n [name]=\"id\"\r\n [placeholder]=\"'AttachFile' | bbbTranslate\"\r\n [buttonLabel]=\"'AttachFile' | bbbTranslate\"\r\n [buttonAriaLabel]=\"'AttachFile' | bbbTranslate\"\r\n [accept]=\"Setting.ValidExtensions || ''\"\r\n [multiple]=\"maxFileCount > 1\"\r\n (selectedFilesChanged)=\"onFileSelection($event)\"\r\n [contentDensity]=\"(contentDensity$ | async)!!\"\r\n ></fd-file-uploader>\r\n</fd-toolbar>\r\n}\r\n", styles: [":host{display:block;width:100%;height:100%}:host ::ng-deep .fd-slider__handle{display:none}:host ::ng-deep .fd-file-uploader input{display:none}:host ::ng-deep fd-file-uploader .fd-button{background-color:var(--sapButton_Lite_Background);border-color:var(--sapButton_Lite_BorderColor);color:var(--sapButton_Lite_TextColor)}:host .hide-file-uploader{visibility:hidden;height:0;width:0}\n"], dependencies: [{ kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3$7.AvatarComponent, selector: "fd-avatar", inputs: ["class", "id", "ariaLabel", "ariaLabelledby", "label", "size", "font", "glyph", "zoomGlyph", "circle", "interactive", "transparent", "contain", "placeholder", "tile", "border", "colorAccent", "colorIndication", "random", "clickable", "valueState", "image", "alterIcon", "backupImage"], outputs: ["avatarClicked", "zoomGlyphClicked"] }, { kind: "directive", type: i4$3.ContentDensityDirective, selector: "[fdContentDensity]:not([fdCompact]):not([fdCondensed]):not([fdCozy]), [fdCompact]:not([fdContentDensity]):not([fdCondensed]):not([fdCozy]), [fdCondensed]:not([fdContentDensity]):not([fdCompact]):not([fdCozy]), [fdCozy]:not([fdContentDensity]):not([fdCompact]):not([fdCondensed])", inputs: ["fdContentDensity", "fdCompact", "fdCondensed", "fdCozy"], exportAs: ["fdContentDensity"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i4$7.FileUploaderComponent, selector: "fd-file-uploader", inputs: ["disabled", "required", "multiple", "accept", "dragndrop", "maxFileSize", "minFileSize", "id", "ariaLabel", "ariaLabelledBy", "placeholder", "buttonLabel", "buttonAriaLabel", "state", "fileLimit", "inputHidden", "width"], outputs: ["selectedFilesChanged", "selectedInvalidFiles", "onDragEnter", "onDragLeave"] }, { kind: "component", type: i2$1.FormControlComponent, selector: "input[fd-form-control], textarea[fd-form-control]", inputs: ["state", "type", "class", "ariaLabel", "ariaLabelledBy"] }, { kind: "component", type: i3.IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "color", "background", "class", "ariaLabel", "ariaHidden"] }, { kind: "component", type: i7.ListComponent, selector: "[fd-list], [fdList]", inputs: ["dropdownMode", "multiInputMode", "mobileMode", "hasMessage", "noBorder", "navigationIndicator", "selection", "keyboardSupport", "byline", "subline", "theme", "unreadIndicator", "role", "settingsList", "settingsListFooter"], outputs: ["focusEscapeList"] }, { kind: "component", type: i7.ListItemComponent, selector: "[fdListItem] ,[fd-list-item]", inputs: ["selected", "noData", "action", "interactive", "growing", "counter", "active", "unread", "byline", "ariaRole", "id", "preventClick", "settingsListTpl"], outputs: ["keyDown"], exportAs: ["fdListItem"] }, { kind: "directive", type: i7.ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap", "truncate"] }, { kind: "directive", type: i7.ListSecondaryDirective, selector: "[fd-list-secondary], [fdListSecondary]", inputs: ["type"] }, { kind: "directive", type: i7.ListBylineDirective, selector: "[fdListByline], [fd-list-byline]", inputs: ["twoCol", "wrap"] }, { kind: "directive", type: i7.ListBylineLeftDirective, selector: "[fdListBylineLeft], [fd-list-byline-left]", inputs: ["wrap"] }, { kind: "directive", type: i7.ListBylineRightDirective, selector: "[fdListBylineRight], [fd-list-byline-right]", inputs: ["status", "wrap"] }, { kind: "directive", type: i7.ListContentDirective, selector: "[fdListContent], [fd-list-content]", inputs: ["twoCol"] }, { kind: "directive", type: i7.ListThumbnailDirective, selector: "[fdListThumbnail], [fd-list-thumbnail]" }, { kind: "component", type: i8$1.ObjectStatusComponent, selector: "[fd-object-status]", inputs: ["class", "status", "glyph", "glyphFont", "label", "glyphAriaLabel", "indicationColor", "clickable", "inverted", "large", "secondaryIndication", "textTemplate"] }, { kind: "component", type: i7$2.ToolbarComponent, selector: "fd-toolbar", inputs: ["titleId", "class", "shouldOverflow", "fdType", "title", "active", "clearBorder", "forceOverflow", "tabindex", "headingLevel", "ariaLabel", "ariaLabelledBy"] }, { kind: "directive", type: i7$2.ToolbarItemDirective, selector: "[fd-toolbar-item], [fdOverflowGroup], [fdOverflowPriority]", inputs: ["fdOverflowPriority", "fdOverflowGroup"] }, { kind: "component", type: i11.SliderComponent, selector: "fd-slider", inputs: ["id", "class", "ariaLabelledBy", "ariaLabel", "min", "max", "step", "jump", "tickmarksBetweenLabels", "mode", "showTicks", "showTicksLabels", "customValues", "tooltipMode", "hideProgressBar", "disabled", "vertical", "value"] }, { kind: "component", type: i12$1.ProgressIndicatorComponent, selector: "fd-progress-indicator", inputs: ["valueText", "unit", "valueMin", "valueMax", "valueNow", "state", "animate"] }, { kind: "directive", type: ContentDensityDirective, selector: "[contentDensity]" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.KeyValuePipe, name: "keyvalue" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: UploadFileStatusPipe, name: "uploadFileStatus" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
9085
9090
  }
9086
9091
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BarsaListFileLinearComponent, decorators: [{
9087
9092
  type: Component,
@@ -9277,7 +9282,7 @@ class UlvFormMultiSelectComponent extends BaseComponent {
9277
9282
  return item.Id;
9278
9283
  }
9279
9284
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UlvFormMultiSelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9280
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: UlvFormMultiSelectComponent, isStandalone: false, 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 fullscreenDialog\r\n [glyph]=\"(dialog.fullScreen | async) === true ? 'exitfullscreen' : 'resize'\"\r\n (click)=\"dialog.toggleFullScreen()\"\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:6rem!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$2.BarLeftDirective, selector: "[fd-bar-left]" }, { kind: "directive", type: i3$2.BarRightDirective, selector: "[fd-bar-right]" }, { kind: "directive", type: i3$2.BarElementDirective, selector: "fd-bar-element", inputs: ["fullWidth"] }, { kind: "component", type: i3$2.ButtonBarComponent, selector: "fd-button-bar", inputs: ["fullWidth", "fdType", "title", "ariaLabelledby", "id"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i3$3.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i3$3.DialogBodyComponent, selector: "fd-dialog-body", inputs: ["disablePaddings"] }, { kind: "component", type: i3$3.DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: i3$3.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "directive", type: i4$2.TemplateDirective, selector: "[fdkTemplate]", inputs: ["fdkTemplate"] }, { kind: "component", type: i5.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: i13.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]" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
9285
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: UlvFormMultiSelectComponent, isStandalone: false, 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 fullscreenDialog\r\n [glyph]=\"(dialog.fullScreen | async) === true ? 'exitfullscreen' : 'resize'\"\r\n (click)=\"dialog.toggleFullScreen()\"\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:6rem!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$2.BarLeftDirective, selector: "[fd-bar-left]" }, { kind: "directive", type: i3$2.BarRightDirective, selector: "[fd-bar-right]" }, { kind: "directive", type: i3$2.BarElementDirective, selector: "fd-bar-element", inputs: ["fullWidth"] }, { kind: "component", type: i3$2.ButtonBarComponent, selector: "fd-button-bar", inputs: ["fullWidth", "fdType", "title", "ariaLabelledby", "id"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i3$3.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i3$3.DialogBodyComponent, selector: "fd-dialog-body", inputs: ["disablePaddings"] }, { kind: "component", type: i3$3.DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: i3$3.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "directive", type: i4$2.TemplateDirective, selector: "[fdkTemplate]", inputs: ["fdkTemplate"] }, { kind: "component", type: i5.TitleComponent, selector: "[fd-title], [fdTitle]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "component", type: i7$2.ToolbarComponent, selector: "fd-toolbar", inputs: ["titleId", "class", "shouldOverflow", "fdType", "title", "active", "clearBorder", "forceOverflow", "tabindex", "headingLevel", "ariaLabel", "ariaLabelledBy"] }, { kind: "directive", type: i7$2.ToolbarItemDirective, selector: "[fd-toolbar-item], [fdOverflowGroup], [fdOverflowPriority]", inputs: ["fdOverflowPriority", "fdOverflowGroup"] }, { kind: "component", type: i13.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]" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
9281
9286
  }
9282
9287
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UlvFormMultiSelectComponent, decorators: [{
9283
9288
  type: Component,
@@ -9299,7 +9304,7 @@ class UiUlvFormMultiSelectUiComponent extends BaseComponent {
9299
9304
  this.dialogRef = inject(DialogRef);
9300
9305
  }
9301
9306
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UiUlvFormMultiSelectUiComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9302
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: UiUlvFormMultiSelectUiComponent, isStandalone: false, selector: "bsu-ui-ulv-form-multi-select-ui", usesInheritance: true, ngImport: i0, template: "<fd-dialog>\r\n <fd-dialog-header>\r\n <h1 fd-title>{{ dialogRef.data.title }}</h1>\r\n <button fd-dialog-close-button (click)=\"dialogRef.dismiss('Close button')\"></button>\r\n </fd-dialog-header>\r\n\r\n <fd-dialog-body>\r\n @if (dialogRef.data.ulv1; as ulv1) {\r\n <bsu-ui-ulv-main-ui [context]=\"ulv1\"></bsu-ui-ulv-main-ui>\r\n }\r\n </fd-dialog-body>\r\n\r\n <fd-dialog-footer>\r\n <ng-template fdkTemplate=\"footer\">\r\n <div\r\n class=\"fdp-value-help-dialog__row fdp-value-help-dialog__selection-row\"\r\n aria-label=\"Selected and condition items\"\r\n i18n-aria-label=\"@@platformI18nValueHelpDialog.SelectionBarLabel\"\r\n >\r\n <h5 fd-title class=\"selected-and-condition-title\">\r\n <ng-container>\r\n <ng-container i18n=\"@@platformI18nValueHelpDialog.SelectedAndConditionLabel\"\r\n >Selected Items and Conditions\r\n </ng-container>\r\n ()\r\n </ng-container>\r\n </h5>\r\n\r\n <div class=\"fdp-value-help-dialog__tokens-wrapper\">\r\n <div class=\"fdp-value-help-dialog__tokens\">\r\n <fd-toolbar [shouldOverflow]=\"true\">\r\n <!-- Selected items -->\r\n </fd-toolbar>\r\n </div>\r\n <button\r\n class=\"fdp-value-help-dialog__tokens-clear\"\r\n fd-button\r\n fdType=\"transparent\"\r\n glyph=\"decline\"\r\n i18n-aria-label=\"@@platformI18nValueHelpDialog.ClearSelectedAriaLabel\"\r\n aria-label=\"clear selected items\"\r\n ></button>\r\n </div>\r\n </div>\r\n <div class=\"fdp-value-help-dialog__actions-row\">\r\n <button\r\n fd-button\r\n data-go-advanced\r\n i18n-label=\"@@platformI18nValueHelpDialog.SearchButton\"\r\n label=\"Go\"\r\n fdType=\"emphasized\"\r\n ></button>\r\n <button\r\n fd-button\r\n data-succes\r\n i18n-label=\"@@platformI18nValueHelpDialog.SuccessButton\"\r\n label=\"OK\"\r\n fdType=\"emphasized\"\r\n ></button>\r\n <button\r\n fd-button\r\n data-dismiss-dialog\r\n fd-dialog-decisive-button\r\n i18n-label=\"@@platformI18nValueHelpDialog.CancelButton\"\r\n label=\"Cancel\"\r\n fdType=\"transparent\"\r\n ></button>\r\n </div>\r\n </ng-template>\r\n </fd-dialog-footer>\r\n</fd-dialog>\r\n", styles: [""], dependencies: [{ kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i3$3.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i3$3.DialogBodyComponent, selector: "fd-dialog-body", inputs: ["disablePaddings"] }, { kind: "component", type: i3$3.DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: i3$3.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "component", type: i3$3.DialogCloseButtonComponent, selector: "[fd-dialog-close-button]", inputs: ["mobile", "title", "ariaLabel"] }, { kind: "directive", type: i4$2.TemplateDirective, selector: "[fdkTemplate]", inputs: ["fdkTemplate"] }, { kind: "component", type: i5.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: "component", type: UiUlvMainUiComponent, selector: "bsu-ui-ulv-main-ui", inputs: ["context", "isReportPage", "inDialog", "isMultiSelect", "layoutInfo", "fullscreen"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
9307
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: UiUlvFormMultiSelectUiComponent, isStandalone: false, selector: "bsu-ui-ulv-form-multi-select-ui", usesInheritance: true, ngImport: i0, template: "<fd-dialog>\r\n <fd-dialog-header>\r\n <h1 fd-title>{{ dialogRef.data.title }}</h1>\r\n <button fd-dialog-close-button (click)=\"dialogRef.dismiss('Close button')\"></button>\r\n </fd-dialog-header>\r\n\r\n <fd-dialog-body>\r\n @if (dialogRef.data.ulv1; as ulv1) {\r\n <bsu-ui-ulv-main-ui [context]=\"ulv1\"></bsu-ui-ulv-main-ui>\r\n }\r\n </fd-dialog-body>\r\n\r\n <fd-dialog-footer>\r\n <ng-template fdkTemplate=\"footer\">\r\n <div\r\n class=\"fdp-value-help-dialog__row fdp-value-help-dialog__selection-row\"\r\n aria-label=\"Selected and condition items\"\r\n i18n-aria-label=\"@@platformI18nValueHelpDialog.SelectionBarLabel\"\r\n >\r\n <h5 fd-title class=\"selected-and-condition-title\">\r\n <ng-container>\r\n <ng-container i18n=\"@@platformI18nValueHelpDialog.SelectedAndConditionLabel\"\r\n >Selected Items and Conditions\r\n </ng-container>\r\n ()\r\n </ng-container>\r\n </h5>\r\n\r\n <div class=\"fdp-value-help-dialog__tokens-wrapper\">\r\n <div class=\"fdp-value-help-dialog__tokens\">\r\n <fd-toolbar [shouldOverflow]=\"true\">\r\n <!-- Selected items -->\r\n </fd-toolbar>\r\n </div>\r\n <button\r\n class=\"fdp-value-help-dialog__tokens-clear\"\r\n fd-button\r\n fdType=\"transparent\"\r\n glyph=\"decline\"\r\n i18n-aria-label=\"@@platformI18nValueHelpDialog.ClearSelectedAriaLabel\"\r\n aria-label=\"clear selected items\"\r\n ></button>\r\n </div>\r\n </div>\r\n <div class=\"fdp-value-help-dialog__actions-row\">\r\n <button\r\n fd-button\r\n data-go-advanced\r\n i18n-label=\"@@platformI18nValueHelpDialog.SearchButton\"\r\n label=\"Go\"\r\n fdType=\"emphasized\"\r\n ></button>\r\n <button\r\n fd-button\r\n data-succes\r\n i18n-label=\"@@platformI18nValueHelpDialog.SuccessButton\"\r\n label=\"OK\"\r\n fdType=\"emphasized\"\r\n ></button>\r\n <button\r\n fd-button\r\n data-dismiss-dialog\r\n fd-dialog-decisive-button\r\n i18n-label=\"@@platformI18nValueHelpDialog.CancelButton\"\r\n label=\"Cancel\"\r\n fdType=\"transparent\"\r\n ></button>\r\n </div>\r\n </ng-template>\r\n </fd-dialog-footer>\r\n</fd-dialog>\r\n", styles: [""], dependencies: [{ kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i3$3.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i3$3.DialogBodyComponent, selector: "fd-dialog-body", inputs: ["disablePaddings"] }, { kind: "component", type: i3$3.DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: i3$3.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "component", type: i3$3.DialogCloseButtonComponent, selector: "[fd-dialog-close-button]", inputs: ["mobile", "title", "ariaLabel"] }, { kind: "directive", type: i4$2.TemplateDirective, selector: "[fdkTemplate]", inputs: ["fdkTemplate"] }, { kind: "component", type: i5.TitleComponent, selector: "[fd-title], [fdTitle]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "component", type: i7$2.ToolbarComponent, selector: "fd-toolbar", inputs: ["titleId", "class", "shouldOverflow", "fdType", "title", "active", "clearBorder", "forceOverflow", "tabindex", "headingLevel", "ariaLabel", "ariaLabelledBy"] }, { kind: "component", type: UiUlvMainUiComponent, selector: "bsu-ui-ulv-main-ui", inputs: ["context", "isReportPage", "inDialog", "isMultiSelect", "layoutInfo", "fullscreen"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
9303
9308
  }
9304
9309
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UiUlvFormMultiSelectUiComponent, decorators: [{
9305
9310
  type: Component,
@@ -9355,11 +9360,11 @@ class LyLayoutContainerComponent extends LayoutPanelBaseComponent {
9355
9360
  this.display = this.visible ? 'flex' : 'none';
9356
9361
  }
9357
9362
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: LyLayoutContainerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
9358
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: LyLayoutContainerComponent, isStandalone: false, selector: "bsu-ly-layout-container", inputs: { renderItems: "renderItems", isRoot: "isRoot", SetVisible: "SetVisible", SetEnable: "SetEnable", SetReadonly: "SetReadonly" }, host: { properties: { "attr.maxLabelWidth": "this.maxLabelWidth", "style.display": "this.display", "style.flex": "this.flex" } }, providers: [LayoutService], viewQueries: [{ propertyName: "viewRef", first: true, predicate: ["viewRefTemplate"], descendants: true, read: ViewContainerRef, static: true }], usesInheritance: true, ngImport: i0, template: "@for (item of config | filterToolbarControl; track item) { @switch (item.xtype) { @case ('Ly.LayoutTabPanel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-tab-container' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-tab-container [config]=\"item\"></bsu-ly-tab-container> -->\r\n} @case ('Ly.LayoutPanel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-layout-panel' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-layout-panel [config]=\"item\"></bsu-ly-layout-panel> -->\r\n} @case ('Ly.LayoutContainer') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n name: 'LyLayoutContainerComponent',\r\n selector: 'bsu-ly-layout-container'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-layout-container [config]=\"item\"></bsu-ly-layout-container> -->\r\n} @case ('Ly.EmptySpace') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n module:item.Type === 'SplitterItem' ? 'BarsaNovinRayCore' :'',\r\n name: item.Type === 'SplitterItem' ? 'SplitterComponent' : 'LyEmptySpaceComponent',\r\n selector: item.Type === 'SplitterItem' ? 'bnrc-splitter' : 'bsu-ly-empty-space'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-empty-space [config]=\"item\"></bsu-ly-empty-space> -->\r\n} @case ('Ly.SimpleLabel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LySimpleLabelComponent', selector: 'bsu-ly-simple-label' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-simple-label [config]=\"item\"></bsu-ly-simple-label> -->\r\n} @case ('Ly.LayoutLine') {\r\n<ng-container\r\n *ngTemplateOutlet=\"dynamicLayout; context: { $implicit: item, name: 'LyLineComponent', selector: 'bsu-ly-line' }\"\r\n></ng-container>\r\n<!-- <bsu-ly-line [isVertical]=\"item.IsVertical\"></bsu-ly-line> -->\r\n} @case ('Ly.LayoutJoin') { @if (item.Type === 'HorizontalJoin') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-horizontal-layout',\r\n name: 'LyLayoutHorizontalComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-horizontal-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-horizontal-layout> -->\r\n} @else {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-vertical-layout',\r\n name: 'LyLayoutVerticalComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-vertical-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-vertical-layout> -->\r\n} } @case ('Ly.LayoutControl') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-layout-control',\r\n name: 'LayoutControlComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-layout-control [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-layout-control> -->\r\n} } }\r\n<ng-template #dynamicLayout let-config let-selector=\"selector\" let-name=\"name\">\r\n <bnrc-dynamic-layout\r\n [config]=\"config\"\r\n [selector]=\"selector\"\r\n [name]=\"name\"\r\n [module]=\"'BarsaSapUi'\"\r\n [moduleFileName]=\"'BarsaSapUi'\"\r\n [maxLabelWidth]=\"(maxLabelWidth$ | async)!!\"\r\n [flex]=\"config.Bounds.width\"\r\n [isSearchPanel]=\"isSearchPanel\"\r\n >\r\n </bnrc-dynamic-layout>\r\n</ng-template>\r\n", styles: [":host{width:100%;display:flex;height:auto;align-items:flex-start}.fd-wizard-example .fd-wizard__content{min-height:300px}.full-width{width:100%}@media (max-width: 600px){:host{align-items:stretch}}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.DynamicLayoutComponent, selector: "bnrc-dynamic-layout", inputs: ["selector", "module", "name", "parameters", "moduleFileName", "flex", "config", "maxLabelWidth", "hasHorizontalText", "isSearchPanel"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.FilterToolbarControlPipe, name: "filterToolbarControl" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
9363
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: LyLayoutContainerComponent, isStandalone: false, selector: "bsu-ly-layout-container", inputs: { renderItems: "renderItems", isRoot: "isRoot", SetVisible: "SetVisible", SetEnable: "SetEnable", SetReadonly: "SetReadonly" }, host: { properties: { "attr.maxLabelWidth": "this.maxLabelWidth", "style.display": "this.display", "style.flex": "this.flex" } }, providers: [LayoutService], viewQueries: [{ propertyName: "viewRef", first: true, predicate: ["viewRefTemplate"], descendants: true, read: ViewContainerRef, static: true }], usesInheritance: true, ngImport: i0, template: "@for (item of config | filterToolbarControl; track item.id) { @switch (item.xtype) { @case ('Ly.LayoutTabPanel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-tab-container' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-tab-container [config]=\"item\"></bsu-ly-tab-container> -->\r\n} @case ('Ly.LayoutPanel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-layout-panel' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-layout-panel [config]=\"item\"></bsu-ly-layout-panel> -->\r\n} @case ('Ly.LayoutContainer') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n name: 'LyLayoutContainerComponent',\r\n selector: 'bsu-ly-layout-container'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-layout-container [config]=\"item\"></bsu-ly-layout-container> -->\r\n} @case ('Ly.EmptySpace') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n module:item.Type === 'SplitterItem' ? 'BarsaNovinRayCore' :'',\r\n name: item.Type === 'SplitterItem' ? 'SplitterComponent' : 'LyEmptySpaceComponent',\r\n selector: item.Type === 'SplitterItem' ? 'bnrc-splitter' : 'bsu-ly-empty-space'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-empty-space [config]=\"item\"></bsu-ly-empty-space> -->\r\n} @case ('Ly.SimpleLabel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LySimpleLabelComponent', selector: 'bsu-ly-simple-label' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-simple-label [config]=\"item\"></bsu-ly-simple-label> -->\r\n} @case ('Ly.LayoutLine') {\r\n<ng-container\r\n *ngTemplateOutlet=\"dynamicLayout; context: { $implicit: item, name: 'LyLineComponent', selector: 'bsu-ly-line' }\"\r\n></ng-container>\r\n<!-- <bsu-ly-line [isVertical]=\"item.IsVertical\"></bsu-ly-line> -->\r\n} @case ('Ly.LayoutJoin') { @if (item.Type === 'HorizontalJoin') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-horizontal-layout',\r\n name: 'LyLayoutHorizontalComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-horizontal-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-horizontal-layout> -->\r\n} @else {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-vertical-layout',\r\n name: 'LyLayoutVerticalComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-vertical-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-vertical-layout> -->\r\n} } @case ('Ly.LayoutControl') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-layout-control',\r\n name: 'LayoutControlComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-layout-control [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-layout-control> -->\r\n} } }\r\n<ng-template #dynamicLayout let-config let-selector=\"selector\" let-name=\"name\">\r\n <bnrc-dynamic-layout\r\n [config]=\"config\"\r\n [selector]=\"selector\"\r\n [name]=\"name\"\r\n [module]=\"'BarsaSapUi'\"\r\n [moduleFileName]=\"'BarsaSapUi'\"\r\n [maxLabelWidth]=\"(maxLabelWidth$ | async)!!\"\r\n [flex]=\"config.Bounds.width\"\r\n [isSearchPanel]=\"isSearchPanel\"\r\n >\r\n </bnrc-dynamic-layout>\r\n</ng-template>\r\n", styles: [":host{width:100%;display:flex;height:auto;align-items:flex-start}.fd-wizard-example .fd-wizard__content{min-height:300px}.full-width{width:100%}@media (max-width: 600px){:host{align-items:stretch}}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.DynamicLayoutComponent, selector: "bnrc-dynamic-layout", inputs: ["selector", "module", "name", "parameters", "moduleFileName", "flex", "config", "maxLabelWidth", "hasHorizontalText", "isSearchPanel"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.FilterToolbarControlPipe, name: "filterToolbarControl" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
9359
9364
  }
9360
9365
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: LyLayoutContainerComponent, decorators: [{
9361
9366
  type: Component,
9362
- args: [{ selector: 'bsu-ly-layout-container', changeDetection: ChangeDetectionStrategy.OnPush, providers: [LayoutService], standalone: false, template: "@for (item of config | filterToolbarControl; track item) { @switch (item.xtype) { @case ('Ly.LayoutTabPanel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-tab-container' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-tab-container [config]=\"item\"></bsu-ly-tab-container> -->\r\n} @case ('Ly.LayoutPanel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-layout-panel' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-layout-panel [config]=\"item\"></bsu-ly-layout-panel> -->\r\n} @case ('Ly.LayoutContainer') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n name: 'LyLayoutContainerComponent',\r\n selector: 'bsu-ly-layout-container'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-layout-container [config]=\"item\"></bsu-ly-layout-container> -->\r\n} @case ('Ly.EmptySpace') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n module:item.Type === 'SplitterItem' ? 'BarsaNovinRayCore' :'',\r\n name: item.Type === 'SplitterItem' ? 'SplitterComponent' : 'LyEmptySpaceComponent',\r\n selector: item.Type === 'SplitterItem' ? 'bnrc-splitter' : 'bsu-ly-empty-space'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-empty-space [config]=\"item\"></bsu-ly-empty-space> -->\r\n} @case ('Ly.SimpleLabel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LySimpleLabelComponent', selector: 'bsu-ly-simple-label' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-simple-label [config]=\"item\"></bsu-ly-simple-label> -->\r\n} @case ('Ly.LayoutLine') {\r\n<ng-container\r\n *ngTemplateOutlet=\"dynamicLayout; context: { $implicit: item, name: 'LyLineComponent', selector: 'bsu-ly-line' }\"\r\n></ng-container>\r\n<!-- <bsu-ly-line [isVertical]=\"item.IsVertical\"></bsu-ly-line> -->\r\n} @case ('Ly.LayoutJoin') { @if (item.Type === 'HorizontalJoin') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-horizontal-layout',\r\n name: 'LyLayoutHorizontalComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-horizontal-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-horizontal-layout> -->\r\n} @else {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-vertical-layout',\r\n name: 'LyLayoutVerticalComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-vertical-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-vertical-layout> -->\r\n} } @case ('Ly.LayoutControl') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-layout-control',\r\n name: 'LayoutControlComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-layout-control [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-layout-control> -->\r\n} } }\r\n<ng-template #dynamicLayout let-config let-selector=\"selector\" let-name=\"name\">\r\n <bnrc-dynamic-layout\r\n [config]=\"config\"\r\n [selector]=\"selector\"\r\n [name]=\"name\"\r\n [module]=\"'BarsaSapUi'\"\r\n [moduleFileName]=\"'BarsaSapUi'\"\r\n [maxLabelWidth]=\"(maxLabelWidth$ | async)!!\"\r\n [flex]=\"config.Bounds.width\"\r\n [isSearchPanel]=\"isSearchPanel\"\r\n >\r\n </bnrc-dynamic-layout>\r\n</ng-template>\r\n", styles: [":host{width:100%;display:flex;height:auto;align-items:flex-start}.fd-wizard-example .fd-wizard__content{min-height:300px}.full-width{width:100%}@media (max-width: 600px){:host{align-items:stretch}}\n"] }]
9367
+ args: [{ selector: 'bsu-ly-layout-container', changeDetection: ChangeDetectionStrategy.OnPush, providers: [LayoutService], standalone: false, template: "@for (item of config | filterToolbarControl; track item.id) { @switch (item.xtype) { @case ('Ly.LayoutTabPanel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-tab-container' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-tab-container [config]=\"item\"></bsu-ly-tab-container> -->\r\n} @case ('Ly.LayoutPanel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-layout-panel' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-layout-panel [config]=\"item\"></bsu-ly-layout-panel> -->\r\n} @case ('Ly.LayoutContainer') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n name: 'LyLayoutContainerComponent',\r\n selector: 'bsu-ly-layout-container'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-layout-container [config]=\"item\"></bsu-ly-layout-container> -->\r\n} @case ('Ly.EmptySpace') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n module:item.Type === 'SplitterItem' ? 'BarsaNovinRayCore' :'',\r\n name: item.Type === 'SplitterItem' ? 'SplitterComponent' : 'LyEmptySpaceComponent',\r\n selector: item.Type === 'SplitterItem' ? 'bnrc-splitter' : 'bsu-ly-empty-space'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-empty-space [config]=\"item\"></bsu-ly-empty-space> -->\r\n} @case ('Ly.SimpleLabel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LySimpleLabelComponent', selector: 'bsu-ly-simple-label' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-simple-label [config]=\"item\"></bsu-ly-simple-label> -->\r\n} @case ('Ly.LayoutLine') {\r\n<ng-container\r\n *ngTemplateOutlet=\"dynamicLayout; context: { $implicit: item, name: 'LyLineComponent', selector: 'bsu-ly-line' }\"\r\n></ng-container>\r\n<!-- <bsu-ly-line [isVertical]=\"item.IsVertical\"></bsu-ly-line> -->\r\n} @case ('Ly.LayoutJoin') { @if (item.Type === 'HorizontalJoin') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-horizontal-layout',\r\n name: 'LyLayoutHorizontalComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-horizontal-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-horizontal-layout> -->\r\n} @else {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-vertical-layout',\r\n name: 'LyLayoutVerticalComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-vertical-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-vertical-layout> -->\r\n} } @case ('Ly.LayoutControl') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-layout-control',\r\n name: 'LayoutControlComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-layout-control [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-layout-control> -->\r\n} } }\r\n<ng-template #dynamicLayout let-config let-selector=\"selector\" let-name=\"name\">\r\n <bnrc-dynamic-layout\r\n [config]=\"config\"\r\n [selector]=\"selector\"\r\n [name]=\"name\"\r\n [module]=\"'BarsaSapUi'\"\r\n [moduleFileName]=\"'BarsaSapUi'\"\r\n [maxLabelWidth]=\"(maxLabelWidth$ | async)!!\"\r\n [flex]=\"config.Bounds.width\"\r\n [isSearchPanel]=\"isSearchPanel\"\r\n >\r\n </bnrc-dynamic-layout>\r\n</ng-template>\r\n", styles: [":host{width:100%;display:flex;height:auto;align-items:flex-start}.fd-wizard-example .fd-wizard__content{min-height:300px}.full-width{width:100%}@media (max-width: 600px){:host{align-items:stretch}}\n"] }]
9363
9368
  }], propDecorators: { renderItems: [{
9364
9369
  type: Input
9365
9370
  }], isRoot: [{
@@ -9434,7 +9439,7 @@ class LayoutActionsComponent extends FormToolbarBaseComponent {
9434
9439
  this.hasButtons.set(workflowButtons?.length > 0 || buttons?.length > 0);
9435
9440
  }
9436
9441
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: LayoutActionsComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
9437
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: LayoutActionsComponent, isStandalone: false, selector: "bsu-layout-actions", inputs: { workflowButtons: "workflowButtons", workflowButtonsComboMode: "workflowButtonsComboMode", canSend: "canSend", simple: "simple", footerDesign: "footerDesign" }, outputs: { workflowChoiceSelect: "workflowChoiceSelect" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-container *ngTemplateOutlet=\"simple ? buttonsMode : defaultTemplate\"> </ng-container>\r\n<ng-template #defaultTemplate>\r\n @if (visible) { @if (hasButtons()) {\r\n <div fd-bar [barDesign]=\"footerDesign ? footerDesign : 'footer'\" [inPage]=\"false\">\r\n @if (canSend && false) {\r\n <div fd-bar-left>\r\n <fd-bar-element class=\"forward\">\r\n <fd-popover\r\n [focusTrapped]=\"true\"\r\n [focusAutoCapture]=\"true\"\r\n [closeOnOutsideClick]=\"false\"\r\n [scrollStrategy]=\"repositionScrollStrategy\"\r\n #forwardPopover\r\n >\r\n <fd-popover-control class=\"forward\">\r\n <button fd-button [fdType]=\"'standard'\" [label]=\"'Forward' | bbbTranslate\"></button>\r\n </fd-popover-control>\r\n <fd-popover-body style=\"min-width: 30vw; max-width: 30vw; min-height: 30vh\">\r\n <div fd-popover-body-header>\r\n <div fd-bar barDesign=\"header\" [cozy]=\"true\">\r\n <div fd-bar-right>\r\n <fd-bar-element\r\n ><button\r\n fd-button\r\n (click)=\"forwardPopover.close()\"\r\n [fdType]=\"'transparent'\"\r\n [glyph]=\"'decline'\"\r\n ></button>\r\n </fd-bar-element>\r\n <div fd-bar-left>\r\n <fd-bar-element>\u0627\u0631\u062C\u0627\u0639 \u0641\u0631\u0645 \u0628\u0647 \u0634\u062E\u0635 \u062F\u06CC\u06AF\u0631 </fd-bar-element>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <bnrc-form-new\r\n class=\"form-erja\"\r\n [settings]=\"{\r\n MetaTypeDef: { Id: '', $Caption: '' },\r\n MetaView: { Id: '', $Caption: '' },\r\n DisableGenerateId: true\r\n }\"\r\n ></bnrc-form-new>\r\n <div fd-popover-body-footer>\r\n <div fd-bar barDesign=\"footer\" [cozy]=\"true\">\r\n <div fd-bar-right>\r\n <fd-button-bar [label]=\"'Send' | bbbTranslate\" fdType=\"emphasized\"></fd-button-bar>\r\n <fd-button-bar\r\n [label]=\"'Cancel' | bbbTranslate\"\r\n [fdType]=\"'transparent'\"\r\n (click)=\"forwardPopover.close()\"\r\n ></fd-button-bar>\r\n </div>\r\n </div>\r\n </div>\r\n </fd-popover-body>\r\n </fd-popover>\r\n </fd-bar-element>\r\n </div>\r\n }\r\n <div fd-bar-right>\r\n @if (workflowButtonsComboMode && workflowButtons.length) { @if(workflowButtons.length === 1){\r\n <fd-button-bar\r\n [fdType]=\"'emphasized'\"\r\n [label]=\"workflowButtons[0].text | bbbTranslate\"\r\n [glyph]=\"'accept'\"\r\n (click)=\"onWorkflowButtonSelected(workflowButtons[0]); onAcceptWorkflow()\"\r\n ></fd-button-bar>\r\n } @else{\r\n <button\r\n fd-button\r\n [fdMenu]=\"true\"\r\n fdType=\"emphasized\"\r\n [label]=\"selectedWorkflowButton?.text || 'Select' | bbbTranslate\"\r\n [ariaLabel]=\"selectedWorkflowButton?.text || 'Select' | bbbTranslate\"\r\n [fdMenuTrigger]=\"menu\"\r\n ></button>\r\n <fd-menu #menu>\r\n @for (btn of workflowButtons; track btn) {\r\n <li fd-menu-item (click)=\"menu.close(); onWorkflowButtonSelected(btn)\">\r\n <div fd-menu-interactive>\r\n <span fd-menu-title>{{ btn.text }}</span>\r\n </div>\r\n </li>\r\n }\r\n </fd-menu>\r\n <fd-button-bar\r\n [fdType]=\"'positive'\"\r\n [label]=\"'Send' | bbbTranslate\"\r\n [disabled]=\"!selectedWorkflowButton\"\r\n [glyph]=\"'accept'\"\r\n (click)=\"onAcceptWorkflow()\"\r\n ></fd-button-bar>\r\n } }@for (btn of buttons; track btn; let i = $index) { @if (btn.Data?.CustomUi?.Selector) {\r\n <bnrc-dynamic-form-toolbaritem\r\n class=\"fd-bar__element\"\r\n [component]=\"btn.Data.CustomUi\"\r\n [context]=\"btn\"\r\n [isEnable]=\"btn.Command?._isEnable\"\r\n (btnClick)=\"onToolClick(btn)\"\r\n ></bnrc-dynamic-form-toolbaritem>\r\n } @if (btn !== '-' && !btn.Data?.CustomUi?.Selector) {\r\n <fd-button-bar\r\n [fdType]=\"btn.design ? btn.design : btn.Data?.JsonExtraProp?.Design\"\r\n [label]=\"btn.text | bbbTranslate\"\r\n [glyph]=\"btn.newIcon ? btn.newIcon : btn.Data?.JsonExtraProp?.Icon\"\r\n (click)=\"onToolClick(btn)\"\r\n ></fd-button-bar>\r\n } }\r\n </div>\r\n </div>\r\n } } \r\n</ng-template>\r\n<ng-template #buttonsMode>\r\n @for (btn of workflowButtons; track btn; let i = $index) { @if (btn !== '-') {\r\n <fd-button-bar\r\n [attr.workflowButton]=\"true\"\r\n [fdType]=\"btn.design ? btn.design : btn.Data?.JsonExtraProp?.Design\"\r\n [label]=\"btn.text | bbbTranslate\"\r\n [glyph]=\"btn.newIcon ? btn.newIcon : btn.Data?.JsonExtraProp?.Icon\"\r\n (click)=\"onToolClick(btn)\"\r\n ></fd-button-bar>\r\n } }\r\n</ng-template>\r\n", styles: [":host[rtl=true] fd-split-button{margin-left:.5rem}:host[rtl=false] fd-split-button{margin-right:.5rem}.forward button{min-width:6rem}.form-erja{padding-top:1rem;padding-bottom:1rem}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.FormNewComponent, selector: "bnrc-form-new", inputs: ["settings"] }, { kind: "component", type: i2.DynamicFormToolbaritemComponent, selector: "bnrc-dynamic-form-toolbaritem", inputs: ["mo", "index", "deviceName", "deviceSize", "context", "btn", "isEnable", "showText", "allColumns", "conditionalFormats"], outputs: ["btnClick"] }, { kind: "component", type: i3$2.BarComponent, selector: "[fd-bar]", inputs: ["class", "barDesign", "inPage", "inHomePage", "clear", "size", "role"] }, { kind: "directive", type: i3$2.BarLeftDirective, selector: "[fd-bar-left]" }, { kind: "directive", type: i3$2.BarRightDirective, selector: "[fd-bar-right]" }, { kind: "directive", type: i3$2.BarElementDirective, selector: "fd-bar-element", inputs: ["fullWidth"] }, { kind: "component", type: i3$2.ButtonBarComponent, selector: "fd-button-bar", inputs: ["fullWidth", "fdType", "title", "ariaLabelledby", "id"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i6.MenuComponent, selector: "fd-menu", inputs: ["mobile", "disabled", "focusTrapped", "focusAutoCapture", "openOnHoverTime", "mobileConfig", "ariaLabel", "ariaLabelledby", "id"], outputs: ["activePath"] }, { kind: "component", type: i6.MenuItemComponent, selector: "li[fd-menu-item]", inputs: ["disabled", "itemId", "submenu", "parentSubmenu", "hasSeparator"], outputs: ["onSelect"], exportAs: ["fd-menu-item"] }, { kind: "component", type: i6.MenuInteractiveComponent, selector: "[fd-menu-interactive]" }, { kind: "directive", type: i6.MenuTitleDirective, selector: "[fd-menu-title]" }, { kind: "directive", type: i6.MenuTriggerDirective, selector: "[fdMenuTrigger]", inputs: ["fdMenuTrigger"] }, { kind: "component", type: i7$1.PopoverControlComponent, selector: "fd-popover-control, [fdPopoverControl]" }, { kind: "component", type: i7$1.PopoverBodyComponent, selector: "fd-popover-body", inputs: ["minWidth", "maxWidth", "minHeight", "maxHeight"] }, { kind: "directive", type: i7$1.PopoverBodyHeaderDirective, selector: "[fdPopoverBodyHeader], [fd-popover-body-header]" }, { kind: "directive", type: i7$1.PopoverBodyFooterDirective, selector: "[fdPopoverBodyFooter], [fd-popover-body-footer]" }, { kind: "component", type: i7$1.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig", "preventSpaceKeyScroll"] }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
9442
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: LayoutActionsComponent, isStandalone: false, selector: "bsu-layout-actions", inputs: { workflowButtons: "workflowButtons", workflowButtonsComboMode: "workflowButtonsComboMode", canSend: "canSend", simple: "simple", footerDesign: "footerDesign" }, outputs: { workflowChoiceSelect: "workflowChoiceSelect" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-container *ngTemplateOutlet=\"simple ? buttonsMode : defaultTemplate\"> </ng-container>\r\n<ng-template #defaultTemplate>\r\n @if (visible) { @if (hasButtons()) {\r\n <div fd-bar [barDesign]=\"footerDesign ? footerDesign : 'footer'\" [inPage]=\"false\">\r\n @if (canSend && false) {\r\n <div fd-bar-left>\r\n <fd-bar-element class=\"forward\">\r\n <fd-popover\r\n [focusTrapped]=\"true\"\r\n [focusAutoCapture]=\"true\"\r\n [closeOnOutsideClick]=\"false\"\r\n [scrollStrategy]=\"repositionScrollStrategy\"\r\n #forwardPopover\r\n >\r\n <fd-popover-control class=\"forward\">\r\n <button fd-button [fdType]=\"'standard'\" [label]=\"'Forward' | bbbTranslate\"></button>\r\n </fd-popover-control>\r\n <fd-popover-body style=\"min-width: 30vw; max-width: 30vw; min-height: 30vh\">\r\n <div fd-popover-body-header>\r\n <div fd-bar barDesign=\"header\" [cozy]=\"true\">\r\n <div fd-bar-right>\r\n <fd-bar-element\r\n ><button\r\n fd-button\r\n (click)=\"forwardPopover.close()\"\r\n [fdType]=\"'transparent'\"\r\n [glyph]=\"'decline'\"\r\n ></button>\r\n </fd-bar-element>\r\n <div fd-bar-left>\r\n <fd-bar-element>\u0627\u0631\u062C\u0627\u0639 \u0641\u0631\u0645 \u0628\u0647 \u0634\u062E\u0635 \u062F\u06CC\u06AF\u0631 </fd-bar-element>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <bnrc-form-new\r\n class=\"form-erja\"\r\n [settings]=\"{\r\n MetaTypeDef: { Id: '', $Caption: '' },\r\n MetaView: { Id: '', $Caption: '' },\r\n DisableGenerateId: true\r\n }\"\r\n ></bnrc-form-new>\r\n <div fd-popover-body-footer>\r\n <div fd-bar barDesign=\"footer\" [cozy]=\"true\">\r\n <div fd-bar-right>\r\n <fd-button-bar [label]=\"'Send' | bbbTranslate\" fdType=\"emphasized\"></fd-button-bar>\r\n <fd-button-bar\r\n [label]=\"'Cancel' | bbbTranslate\"\r\n [fdType]=\"'transparent'\"\r\n (click)=\"forwardPopover.close()\"\r\n ></fd-button-bar>\r\n </div>\r\n </div>\r\n </div>\r\n </fd-popover-body>\r\n </fd-popover>\r\n </fd-bar-element>\r\n </div>\r\n }\r\n <div fd-bar-right>\r\n @if (workflowButtonsComboMode && workflowButtons.length) { @if(workflowButtons.length === 1){\r\n <fd-button-bar\r\n [fdType]=\"'emphasized'\"\r\n [label]=\"workflowButtons[0].text | bbbTranslate\"\r\n [glyph]=\"'accept'\"\r\n (click)=\"onWorkflowButtonSelected(workflowButtons[0]); onAcceptWorkflow()\"\r\n ></fd-button-bar>\r\n } @else{\r\n <button\r\n fd-button\r\n [fdMenu]=\"true\"\r\n fdType=\"emphasized\"\r\n [label]=\"selectedWorkflowButton?.text || 'Select' | bbbTranslate\"\r\n [ariaLabel]=\"selectedWorkflowButton?.text || 'Select' | bbbTranslate\"\r\n [fdMenuTrigger]=\"menu\"\r\n ></button>\r\n <fd-menu #menu>\r\n @for (btn of workflowButtons; track btn) {\r\n <li fd-menu-item (click)=\"menu.close(); onWorkflowButtonSelected(btn)\">\r\n <div fd-menu-interactive>\r\n <span fd-menu-title>{{ btn.text }}</span>\r\n </div>\r\n </li>\r\n }\r\n </fd-menu>\r\n <fd-button-bar\r\n [fdType]=\"'positive'\"\r\n [label]=\"'Send' | bbbTranslate\"\r\n [disabled]=\"!selectedWorkflowButton\"\r\n [glyph]=\"'accept'\"\r\n (click)=\"onAcceptWorkflow()\"\r\n ></fd-button-bar>\r\n } }@for (btn of buttons; track btn; let i = $index) { @if (btn.Data?.CustomUi?.Selector) {\r\n <bnrc-dynamic-form-toolbaritem\r\n class=\"fd-bar__element\"\r\n [component]=\"btn.Data.CustomUi\"\r\n [context]=\"btn\"\r\n [isEnable]=\"btn.Command?._isEnable\"\r\n (btnClick)=\"onToolClick(btn)\"\r\n ></bnrc-dynamic-form-toolbaritem>\r\n } @if (btn !== '-' && !btn.Data?.CustomUi?.Selector) {\r\n <fd-button-bar\r\n [fdType]=\"btn.design ? btn.design : btn.Data?.JsonExtraProp?.Design\"\r\n [label]=\"btn.text | bbbTranslate\"\r\n [glyph]=\"btn.newIcon ? btn.newIcon : btn.Data?.JsonExtraProp?.Icon\"\r\n (click)=\"onToolClick(btn)\"\r\n ></fd-button-bar>\r\n } }\r\n </div>\r\n </div>\r\n } } \r\n</ng-template>\r\n<ng-template #buttonsMode>\r\n @for (btn of workflowButtons; track btn; let i = $index) { @if (btn !== '-') {\r\n <fd-button-bar\r\n [attr.workflowButton]=\"true\"\r\n [fdType]=\"btn.design ? btn.design : btn.Data?.JsonExtraProp?.Design\"\r\n [label]=\"btn.text | bbbTranslate\"\r\n [glyph]=\"btn.newIcon ? btn.newIcon : btn.Data?.JsonExtraProp?.Icon\"\r\n (click)=\"onToolClick(btn)\"\r\n ></fd-button-bar>\r\n } }\r\n</ng-template>\r\n", styles: [":host[rtl=true] fd-split-button{margin-left:.5rem}:host[rtl=false] fd-split-button{margin-right:.5rem}.forward button{min-width:6rem}.form-erja{padding-top:1rem;padding-bottom:1rem}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.FormNewComponent, selector: "bnrc-form-new", inputs: ["settings"] }, { kind: "component", type: i2.DynamicFormToolbaritemComponent, selector: "bnrc-dynamic-form-toolbaritem", inputs: ["mo", "index", "deviceName", "deviceSize", "context", "btn", "isEnable", "showText", "allColumns", "conditionalFormats"], outputs: ["btnClick"] }, { kind: "component", type: i3$2.BarComponent, selector: "[fd-bar]", inputs: ["class", "barDesign", "inPage", "inHomePage", "clear", "size", "role"] }, { kind: "directive", type: i3$2.BarLeftDirective, selector: "[fd-bar-left]" }, { kind: "directive", type: i3$2.BarRightDirective, selector: "[fd-bar-right]" }, { kind: "directive", type: i3$2.BarElementDirective, selector: "fd-bar-element", inputs: ["fullWidth"] }, { kind: "component", type: i3$2.ButtonBarComponent, selector: "fd-button-bar", inputs: ["fullWidth", "fdType", "title", "ariaLabelledby", "id"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i5$2.MenuComponent, selector: "fd-menu", inputs: ["mobile", "disabled", "focusTrapped", "focusAutoCapture", "openOnHoverTime", "mobileConfig", "ariaLabel", "ariaLabelledby", "id"], outputs: ["activePath"] }, { kind: "component", type: i5$2.MenuItemComponent, selector: "li[fd-menu-item]", inputs: ["disabled", "itemId", "submenu", "parentSubmenu", "hasSeparator"], outputs: ["onSelect"], exportAs: ["fd-menu-item"] }, { kind: "component", type: i5$2.MenuInteractiveComponent, selector: "[fd-menu-interactive]" }, { kind: "directive", type: i5$2.MenuTitleDirective, selector: "[fd-menu-title]" }, { kind: "directive", type: i5$2.MenuTriggerDirective, selector: "[fdMenuTrigger]", inputs: ["fdMenuTrigger"] }, { kind: "component", type: i7$1.PopoverControlComponent, selector: "fd-popover-control, [fdPopoverControl]" }, { kind: "component", type: i7$1.PopoverBodyComponent, selector: "fd-popover-body", inputs: ["minWidth", "maxWidth", "minHeight", "maxHeight"] }, { kind: "directive", type: i7$1.PopoverBodyHeaderDirective, selector: "[fdPopoverBodyHeader], [fd-popover-body-header]" }, { kind: "directive", type: i7$1.PopoverBodyFooterDirective, selector: "[fdPopoverBodyFooter], [fd-popover-body-footer]" }, { kind: "component", type: i7$1.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig", "preventSpaceKeyScroll"] }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
9438
9443
  }
9439
9444
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: LayoutActionsComponent, decorators: [{
9440
9445
  type: Component,
@@ -9471,11 +9476,11 @@ class LyTabPageComponent extends LayoutPanelBaseComponent {
9471
9476
  this._layoutService.refreshLayout();
9472
9477
  }
9473
9478
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: LyTabPageComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
9474
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: LyTabPageComponent, isStandalone: false, selector: "bsu-ly-tab-page", inputs: { renderItems: "renderItems" }, host: { properties: { "style.flex": "this.flex", "attr.tabtitle": "this.title", "class": "this._classes" } }, providers: [LayoutService, TabpageService], viewQueries: [{ propertyName: "vcr", first: true, predicate: ["placeholder"], descendants: true, read: ViewContainerRef }, { propertyName: "viewRef", first: true, predicate: ["viewRefTemplate"], descendants: true, read: ViewContainerRef, static: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *untilInView=\"el\">\r\n @for (item of config | filterToolbarControl; track item) { @switch (item.xtype) { @case ('Ly.LayoutTabPanel') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-tab-container' }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-tab-container [config]=\"item\"></bsu-ly-tab-container> -->\r\n } @case ('Ly.LayoutPanel') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-layout-panel' }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-layout-panel [config]=\"item\"></bsu-ly-layout-panel> -->\r\n } @case ('Ly.LayoutContainer') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n name: 'LyLayoutContainerComponent',\r\n selector: 'bsu-ly-layout-container'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-layout-container [config]=\"item\"></bsu-ly-layout-container> -->\r\n } @case ('Ly.EmptySpace') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n module: item.Type === 'SplitterItem' ? 'BarsaNovinRayCore' : '',\r\n name: item.Type === 'SplitterItem' ? 'SplitterComponent' : 'LyEmptySpaceComponent',\r\n selector: item.Type === 'SplitterItem' ? 'bnrc-splitter' : 'bsu-ly-empty-space'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-empty-space [config]=\"item\"></bsu-ly-empty-space> -->\r\n } @case ('Ly.SimpleLabel') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LySimpleLabelComponent', selector: 'bsu-ly-simple-label' }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-simple-label [config]=\"item\"></bsu-ly-simple-label> -->\r\n } @case ('Ly.LayoutLine') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLineComponent', selector: 'bsu-ly-line' }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-line [isVertical]=\"item.IsVertical\"></bsu-ly-line> -->\r\n } @case ('Ly.LayoutJoin') { @if (item.Type === 'HorizontalJoin') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-horizontal-layout',\r\n name: 'LyLayoutHorizontalComponent'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-horizontal-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-horizontal-layout> -->\r\n } @else {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-vertical-layout',\r\n name: 'LyLayoutVerticalComponent'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-vertical-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-vertical-layout> -->\r\n } } @case ('Ly.LayoutControl') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-layout-control',\r\n name: 'LayoutControlComponent'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-layout-control [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-layout-control> -->\r\n } } }\r\n <ng-template #dynamicLayout let-config let-selector=\"selector\" let-name=\"name\">\r\n <bnrc-dynamic-layout\r\n [config]=\"config\"\r\n [selector]=\"selector\"\r\n [name]=\"name\"\r\n [module]=\"'BarsaSapUi'\"\r\n [moduleFileName]=\"'BarsaSapUi'\"\r\n [maxLabelWidth]=\"(maxLabelWidth$ | async)!!\"\r\n [flex]=\"config.Bounds.width\"\r\n [isSearchPanel]=\"isSearchPanel\"\r\n >\r\n </bnrc-dynamic-layout>\r\n </ng-template>\r\n</ng-container>\r\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.DynamicLayoutComponent, selector: "bnrc-dynamic-layout", inputs: ["selector", "module", "name", "parameters", "moduleFileName", "flex", "config", "maxLabelWidth", "hasHorizontalText", "isSearchPanel"] }, { kind: "directive", type: i2.UntilInViewDirective, selector: "[untilInView]", inputs: ["untilInView", "intersectionDebounce"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.FilterToolbarControlPipe, name: "filterToolbarControl" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
9479
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: LyTabPageComponent, isStandalone: false, selector: "bsu-ly-tab-page", inputs: { renderItems: "renderItems" }, host: { properties: { "style.flex": "this.flex", "attr.tabtitle": "this.title", "class": "this._classes" } }, providers: [LayoutService, TabpageService], viewQueries: [{ propertyName: "vcr", first: true, predicate: ["placeholder"], descendants: true, read: ViewContainerRef }, { propertyName: "viewRef", first: true, predicate: ["viewRefTemplate"], descendants: true, read: ViewContainerRef, static: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *untilInView=\"el\">\r\n @for (item of config | filterToolbarControl; track item.id) { @switch (item.xtype) { @case ('Ly.LayoutTabPanel') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-tab-container' }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-tab-container [config]=\"item\"></bsu-ly-tab-container> -->\r\n } @case ('Ly.LayoutPanel') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-layout-panel' }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-layout-panel [config]=\"item\"></bsu-ly-layout-panel> -->\r\n } @case ('Ly.LayoutContainer') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n name: 'LyLayoutContainerComponent',\r\n selector: 'bsu-ly-layout-container'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-layout-container [config]=\"item\"></bsu-ly-layout-container> -->\r\n } @case ('Ly.EmptySpace') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n module: item.Type === 'SplitterItem' ? 'BarsaNovinRayCore' : '',\r\n name: item.Type === 'SplitterItem' ? 'SplitterComponent' : 'LyEmptySpaceComponent',\r\n selector: item.Type === 'SplitterItem' ? 'bnrc-splitter' : 'bsu-ly-empty-space'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-empty-space [config]=\"item\"></bsu-ly-empty-space> -->\r\n } @case ('Ly.SimpleLabel') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LySimpleLabelComponent', selector: 'bsu-ly-simple-label' }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-simple-label [config]=\"item\"></bsu-ly-simple-label> -->\r\n } @case ('Ly.LayoutLine') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLineComponent', selector: 'bsu-ly-line' }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-line [isVertical]=\"item.IsVertical\"></bsu-ly-line> -->\r\n } @case ('Ly.LayoutJoin') { @if (item.Type === 'HorizontalJoin') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-horizontal-layout',\r\n name: 'LyLayoutHorizontalComponent'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-horizontal-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-horizontal-layout> -->\r\n } @else {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-vertical-layout',\r\n name: 'LyLayoutVerticalComponent'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-vertical-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-vertical-layout> -->\r\n } } @case ('Ly.LayoutControl') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-layout-control',\r\n name: 'LayoutControlComponent'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-layout-control [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-layout-control> -->\r\n } } }\r\n <ng-template #dynamicLayout let-config let-selector=\"selector\" let-name=\"name\">\r\n <bnrc-dynamic-layout\r\n [config]=\"config\"\r\n [selector]=\"selector\"\r\n [name]=\"name\"\r\n [module]=\"'BarsaSapUi'\"\r\n [moduleFileName]=\"'BarsaSapUi'\"\r\n [maxLabelWidth]=\"(maxLabelWidth$ | async)!!\"\r\n [flex]=\"config.Bounds.width\"\r\n [isSearchPanel]=\"isSearchPanel\"\r\n >\r\n </bnrc-dynamic-layout>\r\n </ng-template>\r\n</ng-container>\r\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.DynamicLayoutComponent, selector: "bnrc-dynamic-layout", inputs: ["selector", "module", "name", "parameters", "moduleFileName", "flex", "config", "maxLabelWidth", "hasHorizontalText", "isSearchPanel"] }, { kind: "directive", type: i2.UntilInViewDirective, selector: "[untilInView]", inputs: ["untilInView", "intersectionDebounce"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.FilterToolbarControlPipe, name: "filterToolbarControl" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
9475
9480
  }
9476
9481
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: LyTabPageComponent, decorators: [{
9477
9482
  type: Component,
9478
- args: [{ selector: 'bsu-ly-tab-page', changeDetection: ChangeDetectionStrategy.OnPush, providers: [LayoutService, TabpageService], standalone: false, template: "<ng-container *untilInView=\"el\">\r\n @for (item of config | filterToolbarControl; track item) { @switch (item.xtype) { @case ('Ly.LayoutTabPanel') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-tab-container' }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-tab-container [config]=\"item\"></bsu-ly-tab-container> -->\r\n } @case ('Ly.LayoutPanel') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-layout-panel' }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-layout-panel [config]=\"item\"></bsu-ly-layout-panel> -->\r\n } @case ('Ly.LayoutContainer') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n name: 'LyLayoutContainerComponent',\r\n selector: 'bsu-ly-layout-container'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-layout-container [config]=\"item\"></bsu-ly-layout-container> -->\r\n } @case ('Ly.EmptySpace') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n module: item.Type === 'SplitterItem' ? 'BarsaNovinRayCore' : '',\r\n name: item.Type === 'SplitterItem' ? 'SplitterComponent' : 'LyEmptySpaceComponent',\r\n selector: item.Type === 'SplitterItem' ? 'bnrc-splitter' : 'bsu-ly-empty-space'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-empty-space [config]=\"item\"></bsu-ly-empty-space> -->\r\n } @case ('Ly.SimpleLabel') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LySimpleLabelComponent', selector: 'bsu-ly-simple-label' }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-simple-label [config]=\"item\"></bsu-ly-simple-label> -->\r\n } @case ('Ly.LayoutLine') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLineComponent', selector: 'bsu-ly-line' }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-line [isVertical]=\"item.IsVertical\"></bsu-ly-line> -->\r\n } @case ('Ly.LayoutJoin') { @if (item.Type === 'HorizontalJoin') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-horizontal-layout',\r\n name: 'LyLayoutHorizontalComponent'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-horizontal-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-horizontal-layout> -->\r\n } @else {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-vertical-layout',\r\n name: 'LyLayoutVerticalComponent'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-vertical-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-vertical-layout> -->\r\n } } @case ('Ly.LayoutControl') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-layout-control',\r\n name: 'LayoutControlComponent'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-layout-control [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-layout-control> -->\r\n } } }\r\n <ng-template #dynamicLayout let-config let-selector=\"selector\" let-name=\"name\">\r\n <bnrc-dynamic-layout\r\n [config]=\"config\"\r\n [selector]=\"selector\"\r\n [name]=\"name\"\r\n [module]=\"'BarsaSapUi'\"\r\n [moduleFileName]=\"'BarsaSapUi'\"\r\n [maxLabelWidth]=\"(maxLabelWidth$ | async)!!\"\r\n [flex]=\"config.Bounds.width\"\r\n [isSearchPanel]=\"isSearchPanel\"\r\n >\r\n </bnrc-dynamic-layout>\r\n </ng-template>\r\n</ng-container>\r\n", styles: [":host{display:block}\n"] }]
9483
+ args: [{ selector: 'bsu-ly-tab-page', changeDetection: ChangeDetectionStrategy.OnPush, providers: [LayoutService, TabpageService], standalone: false, template: "<ng-container *untilInView=\"el\">\r\n @for (item of config | filterToolbarControl; track item.id) { @switch (item.xtype) { @case ('Ly.LayoutTabPanel') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-tab-container' }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-tab-container [config]=\"item\"></bsu-ly-tab-container> -->\r\n } @case ('Ly.LayoutPanel') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-layout-panel' }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-layout-panel [config]=\"item\"></bsu-ly-layout-panel> -->\r\n } @case ('Ly.LayoutContainer') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n name: 'LyLayoutContainerComponent',\r\n selector: 'bsu-ly-layout-container'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-layout-container [config]=\"item\"></bsu-ly-layout-container> -->\r\n } @case ('Ly.EmptySpace') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n module: item.Type === 'SplitterItem' ? 'BarsaNovinRayCore' : '',\r\n name: item.Type === 'SplitterItem' ? 'SplitterComponent' : 'LyEmptySpaceComponent',\r\n selector: item.Type === 'SplitterItem' ? 'bnrc-splitter' : 'bsu-ly-empty-space'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-empty-space [config]=\"item\"></bsu-ly-empty-space> -->\r\n } @case ('Ly.SimpleLabel') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LySimpleLabelComponent', selector: 'bsu-ly-simple-label' }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-simple-label [config]=\"item\"></bsu-ly-simple-label> -->\r\n } @case ('Ly.LayoutLine') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLineComponent', selector: 'bsu-ly-line' }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-line [isVertical]=\"item.IsVertical\"></bsu-ly-line> -->\r\n } @case ('Ly.LayoutJoin') { @if (item.Type === 'HorizontalJoin') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-horizontal-layout',\r\n name: 'LyLayoutHorizontalComponent'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-horizontal-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-horizontal-layout> -->\r\n } @else {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-vertical-layout',\r\n name: 'LyLayoutVerticalComponent'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-vertical-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-vertical-layout> -->\r\n } } @case ('Ly.LayoutControl') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-layout-control',\r\n name: 'LayoutControlComponent'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-layout-control [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-layout-control> -->\r\n } } }\r\n <ng-template #dynamicLayout let-config let-selector=\"selector\" let-name=\"name\">\r\n <bnrc-dynamic-layout\r\n [config]=\"config\"\r\n [selector]=\"selector\"\r\n [name]=\"name\"\r\n [module]=\"'BarsaSapUi'\"\r\n [moduleFileName]=\"'BarsaSapUi'\"\r\n [maxLabelWidth]=\"(maxLabelWidth$ | async)!!\"\r\n [flex]=\"config.Bounds.width\"\r\n [isSearchPanel]=\"isSearchPanel\"\r\n >\r\n </bnrc-dynamic-layout>\r\n </ng-template>\r\n</ng-container>\r\n", styles: [":host{display:block}\n"] }]
9479
9484
  }], propDecorators: { vcr: [{
9480
9485
  type: ViewChild,
9481
9486
  args: ['placeholder', { read: ViewContainerRef }]
@@ -9535,7 +9540,7 @@ class FormToolbarComponent extends FormToolbarBaseComponent {
9535
9540
  }
9536
9541
  }
9537
9542
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: FormToolbarComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
9538
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: FormToolbarComponent, isStandalone: false, selector: "bsu-form-toolbar", outputs: { toolbarClick: "toolbarClick" }, viewQueries: [{ propertyName: "_tlbCmp", first: true, predicate: ["formToolbar"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<fd-toolbar\r\n #formToolbar\r\n fdType=\"transparent\"\r\n [clearBorder]=\"true\"\r\n [shouldOverflow]=\"deviceSize === 's' || shouldOverflow\"\r\n [style.width]=\"width\"\r\n [class.firefox]=\"isFirefox\"\r\n>\r\n @for (btn of buttons; track btn; let i = $index; let last = $last; let first = $first) { @if ((btn === '-' ||\r\n btn.text === '-') && !last && !first && deviceSize !== 's') {\r\n <fd-toolbar-separator [attr.i]=\"i\" [attr.last]=\"last\" [attr.first]=\"first\"></fd-toolbar-separator>\r\n } @if (btn.IAmMenu) { @if (btn.isBuiltin) {\r\n <fd-split-button\r\n [dir]=\"dirValue === 'rtl' ? 'rtl' : 'ltr'\"\r\n fd-toolbar-item\r\n [attr.fdOverflowPriority]=\"'low'\"\r\n [mainAction]=\"{ mainActionTitle: btn.text, keepMainAction: true }\"\r\n [fdType]=\"btn.design ? btn.design : btn.Data?.JsonExtraProp?.Design\"\r\n (primaryButtonClicked)=\"btn.isBuiltin && onToolbarClick(btn)\"\r\n (click)=\"menu2.open()\"\r\n >\r\n <fd-menu #menu2>\r\n @for (menuItem of btn.menu.items; track menuItem) {\r\n <li fd-menu-item [disabled]=\"menuItem.disabled\" (click)=\"onToolbarClick(menuItem, menu2)\">\r\n <div fd-menu-interactive>\r\n <fd-menu-addon\r\n position=\"before\"\r\n [glyph]=\"menuItem.newIcon ? menuItem.newIcon : menuItem.Data?.JsonExtraProp?.Icon\"\r\n >\r\n </fd-menu-addon>\r\n @if (!menuItem.newIcon && menuItem.icon) {\r\n <img class=\"mr8\" [src]=\"menuItem.icon\" />\r\n }\r\n <span fd-menu-title>{{ menuItem.text }}</span>\r\n </div>\r\n </li>\r\n }\r\n </fd-menu>\r\n </fd-split-button>\r\n } @if (!btn.isBuiltin) {\r\n <button\r\n fd-button\r\n fd-toolbar-item\r\n [fdMenu]=\"true\"\r\n [attr.text]=\"btn.text\"\r\n [attr.itemId]=\"btn.itemId\"\r\n [attr.name]=\"btn.name\"\r\n [glyph]=\"btn.FontIcon\"\r\n [style.color]=\"btn.IconColor\"\r\n [fdType]=\"btn.design ? btn.design : btn.Data?.JsonExtraProp?.Design\"\r\n [label]=\"btn.text | bbbTranslate\"\r\n [ariaLabel]=\"btn.text | bbbTranslate\"\r\n [fdMenuTrigger]=\"menu\"\r\n >\r\n @if (!btn.Data?.JsonExtraProp?.Icon && !btn.newIcon && btn.icon) {\r\n <img width=\"16\" [src]=\"btn.icon\" />\r\n }\r\n <fd-menu #menu>\r\n @for (menuItem of btn.menu.items; track menuItem) {\r\n <li fd-menu-item [disabled]=\"menuItem.disabled\" (click)=\"onToolbarClick(menuItem, menu)\">\r\n <div fd-menu-interactive>\r\n @if ( menuItem.newIcon || menuItem.Data?.JsonExtraProp?.Icon || menuItem.FontIcon ||\r\n menuItem.Data?.CustomUi?.Parameters?.Icon ) {\r\n <fd-menu-addon\r\n position=\"before\"\r\n [ngClass]=\"\r\n menuItem.Data?.CustomUi?.Parameters?.FdType$Caption\r\n ? 'fd-button--' + menuItem.Data?.CustomUi?.Parameters?.FdType$Caption\r\n : ''\r\n \"\r\n [style.color]=\"menuItem.IconColor\"\r\n [attr.name]=\"menuItem.name\"\r\n [attr.itemId]=\"menuItem.itemId\" \r\n [attr.text]=\"menuItem.text\"\r\n [glyph]=\"\r\n menuItem.newIcon ||\r\n menuItem.Data?.JsonExtraProp?.Icon ||\r\n menuItem.FontIcon ||\r\n menuItem.Data?.CustomUi?.Parameters?.Icon\r\n \"\r\n >\r\n </fd-menu-addon>\r\n } @if ( !( menuItem.newIcon || menuItem.Data?.JsonExtraProp?.Icon ||\r\n menuItem.Data?.CustomUi?.Parameters?.Icon || menuItem.FontIcon ) && menuItem.icon ) {\r\n <img class=\"mr8\" [src]=\"menuItem.icon\" />\r\n }\r\n <span fd-menu-title>{{ menuItem.text }}</span>\r\n </div>\r\n </li>\r\n }\r\n </fd-menu>\r\n </button>\r\n } } @else { @if (!(btn === '-' || btn.text === '-')) {\r\n <ng-container\r\n *ngTemplateOutlet=\"btn.Data?.CustomUi?.Selector ? dynamicBtnTemplate : btnTemplate; context: { $implicit: btn }\"\r\n ></ng-container>\r\n <ng-template #btnTemplate let-btn>\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n [disabled]=\"btn.disabled\"\r\n [attr.text]=\"btn.text\"\r\n [attr.itemId]=\"btn.itemId\"\r\n [attr.name]=\"btn.name\"\r\n [attr.fdOverflowPriority]=\"btn.priority\"\r\n [fdType]=\"btn.isWorkflow ? 'positive' : btn.design ? btn.design : btn.Data?.JsonExtraProp?.Design\"\r\n [glyph]=\"btn.newIcon ? btn.newIcon : btn.Data?.JsonExtraProp?.Icon\"\r\n (click)=\"onToolbarClick(btn)\"\r\n >\r\n @if (!btn.Data?.JsonExtraProp?.Icon && !btn.newIcon && btn.icon) {\r\n <img width=\"16\" [src]=\"btn.icon\" />\r\n } @if (btn.text) {\r\n <span>{{ btn.text }}</span>\r\n }\r\n </button>\r\n </ng-template>\r\n <ng-template #dynamicBtnTemplate let-btn>\r\n <bnrc-dynamic-form-toolbaritem\r\n fd-toolbar-item\r\n [attr.text]=\"btn.text\"\r\n [attr.itemId]=\"btn.itemId\"\r\n [attr.name]=\"btn.name\"\r\n [component]=\"btn.Data.CustomUi\"\r\n [context]=\"btn\"\r\n [isEnable]=\"btn.Command?._isEnable\"\r\n (btnClick)=\"onToolbarClick(btn)\"\r\n ></bnrc-dynamic-form-toolbaritem>\r\n </ng-template>\r\n } } }\r\n</fd-toolbar>\r\n", styles: [":host{display:contents}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.DynamicFormToolbaritemComponent, selector: "bnrc-dynamic-form-toolbaritem", inputs: ["mo", "index", "deviceName", "deviceSize", "context", "btn", "isEnable", "showText", "allColumns", "conditionalFormats"], outputs: ["btnClick"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i6.MenuComponent, selector: "fd-menu", inputs: ["mobile", "disabled", "focusTrapped", "focusAutoCapture", "openOnHoverTime", "mobileConfig", "ariaLabel", "ariaLabelledby", "id"], outputs: ["activePath"] }, { kind: "component", type: i6.MenuItemComponent, selector: "li[fd-menu-item]", inputs: ["disabled", "itemId", "submenu", "parentSubmenu", "hasSeparator"], outputs: ["onSelect"], exportAs: ["fd-menu-item"] }, { kind: "component", type: i6.MenuInteractiveComponent, selector: "[fd-menu-interactive]" }, { kind: "directive", type: i6.MenuTitleDirective, selector: "[fd-menu-title]" }, { kind: "component", type: i6.MenuAddonDirective, selector: "fd-menu-addon", inputs: ["position", "submenuIndicator", "ariaHidden"] }, { kind: "directive", type: i6.MenuTriggerDirective, selector: "[fdMenuTrigger]", inputs: ["fdMenuTrigger"] }, { kind: "component", type: i7$2.SplitButtonComponent, selector: "fd-split-button", inputs: ["glyph", "glyphFont", "disabled", "fdType", "expandButtonTitle", "selected", "fixedWidth", "mainAction", "arialLabel"], outputs: ["primaryButtonClicked"] }, { 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: i8.ToolbarSeparatorComponent, selector: "fd-toolbar-separator" }, { kind: "directive", type: i2$7.ɵɵDir, selector: "[dir]", inputs: ["dir"], outputs: ["dirChange"], exportAs: ["dir"] }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
9543
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: FormToolbarComponent, isStandalone: false, selector: "bsu-form-toolbar", outputs: { toolbarClick: "toolbarClick" }, viewQueries: [{ propertyName: "_tlbCmp", first: true, predicate: ["formToolbar"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<fd-toolbar\r\n #formToolbar\r\n fdType=\"transparent\"\r\n [clearBorder]=\"true\"\r\n [shouldOverflow]=\"deviceSize === 's' || shouldOverflow\"\r\n [style.width]=\"width\"\r\n [class.firefox]=\"isFirefox\"\r\n>\r\n @for (btn of buttons; track btn; let i = $index; let last = $last; let first = $first) { @if ((btn === '-' ||\r\n btn.text === '-') && !last && !first && deviceSize !== 's') {\r\n <fd-toolbar-separator [attr.i]=\"i\" [attr.last]=\"last\" [attr.first]=\"first\"></fd-toolbar-separator>\r\n } @if (btn.IAmMenu) { @if (btn.isBuiltin) {\r\n <fd-split-button\r\n [dir]=\"dirValue === 'rtl' ? 'rtl' : 'ltr'\"\r\n fd-toolbar-item\r\n [attr.fdOverflowPriority]=\"'low'\"\r\n [mainAction]=\"{ mainActionTitle: btn.text, keepMainAction: true }\"\r\n [fdType]=\"btn.design ? btn.design : btn.Data?.JsonExtraProp?.Design\"\r\n (primaryButtonClicked)=\"btn.isBuiltin && onToolbarClick(btn)\"\r\n (click)=\"menu2.open()\"\r\n >\r\n <fd-menu #menu2>\r\n @for (menuItem of btn.menu.items; track menuItem) {\r\n <li fd-menu-item [disabled]=\"menuItem.disabled\" (click)=\"onToolbarClick(menuItem, menu2)\">\r\n <div fd-menu-interactive>\r\n <fd-menu-addon\r\n position=\"before\"\r\n [glyph]=\"menuItem.newIcon ? menuItem.newIcon : menuItem.Data?.JsonExtraProp?.Icon\"\r\n >\r\n </fd-menu-addon>\r\n @if (!menuItem.newIcon && menuItem.icon) {\r\n <img class=\"mr8\" [src]=\"menuItem.icon\" />\r\n }\r\n <span fd-menu-title>{{ menuItem.text }}</span>\r\n </div>\r\n </li>\r\n }\r\n </fd-menu>\r\n </fd-split-button>\r\n } @if (!btn.isBuiltin) {\r\n <button\r\n fd-button\r\n fd-toolbar-item\r\n [fdMenu]=\"true\"\r\n [attr.text]=\"btn.text\"\r\n [attr.itemId]=\"btn.itemId\"\r\n [attr.name]=\"btn.name\"\r\n [glyph]=\"btn.FontIcon\"\r\n [style.color]=\"btn.IconColor\"\r\n [fdType]=\"btn.design ? btn.design : btn.Data?.JsonExtraProp?.Design\"\r\n [label]=\"btn.text | bbbTranslate\"\r\n [ariaLabel]=\"btn.text | bbbTranslate\"\r\n [fdMenuTrigger]=\"menu\"\r\n >\r\n @if (!btn.Data?.JsonExtraProp?.Icon && !btn.newIcon && btn.icon) {\r\n <img width=\"16\" [src]=\"btn.icon\" />\r\n }\r\n <fd-menu #menu>\r\n @for (menuItem of btn.menu.items; track menuItem) {\r\n <li fd-menu-item [disabled]=\"menuItem.disabled\" (click)=\"onToolbarClick(menuItem, menu)\">\r\n <div fd-menu-interactive>\r\n @if ( menuItem.newIcon || menuItem.Data?.JsonExtraProp?.Icon || menuItem.FontIcon ||\r\n menuItem.Data?.CustomUi?.Parameters?.Icon ) {\r\n <fd-menu-addon\r\n position=\"before\"\r\n [ngClass]=\"\r\n menuItem.Data?.CustomUi?.Parameters?.FdType$Caption\r\n ? 'fd-button--' + menuItem.Data?.CustomUi?.Parameters?.FdType$Caption\r\n : ''\r\n \"\r\n [style.color]=\"menuItem.IconColor\"\r\n [attr.name]=\"menuItem.name\"\r\n [attr.itemId]=\"menuItem.itemId\" \r\n [attr.text]=\"menuItem.text\"\r\n [glyph]=\"\r\n menuItem.newIcon ||\r\n menuItem.Data?.JsonExtraProp?.Icon ||\r\n menuItem.FontIcon ||\r\n menuItem.Data?.CustomUi?.Parameters?.Icon\r\n \"\r\n >\r\n </fd-menu-addon>\r\n } @if ( !( menuItem.newIcon || menuItem.Data?.JsonExtraProp?.Icon ||\r\n menuItem.Data?.CustomUi?.Parameters?.Icon || menuItem.FontIcon ) && menuItem.icon ) {\r\n <img class=\"mr8\" [src]=\"menuItem.icon\" />\r\n }\r\n <span fd-menu-title>{{ menuItem.text }}</span>\r\n </div>\r\n </li>\r\n }\r\n </fd-menu>\r\n </button>\r\n } } @else { @if (!(btn === '-' || btn.text === '-')) {\r\n <ng-container\r\n *ngTemplateOutlet=\"btn.Data?.CustomUi?.Selector ? dynamicBtnTemplate : btnTemplate; context: { $implicit: btn }\"\r\n ></ng-container>\r\n <ng-template #btnTemplate let-btn>\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n [disabled]=\"btn.disabled\"\r\n [attr.text]=\"btn.text\"\r\n [attr.itemId]=\"btn.itemId\"\r\n [attr.name]=\"btn.name\"\r\n [attr.fdOverflowPriority]=\"btn.priority\"\r\n [fdType]=\"btn.isWorkflow ? 'positive' : btn.design ? btn.design : btn.Data?.JsonExtraProp?.Design\"\r\n [glyph]=\"btn.newIcon ? btn.newIcon : btn.Data?.JsonExtraProp?.Icon\"\r\n (click)=\"onToolbarClick(btn)\"\r\n >\r\n @if (!btn.Data?.JsonExtraProp?.Icon && !btn.newIcon && btn.icon) {\r\n <img width=\"16\" [src]=\"btn.icon\" />\r\n } @if (btn.text) {\r\n <span>{{ btn.text }}</span>\r\n }\r\n </button>\r\n </ng-template>\r\n <ng-template #dynamicBtnTemplate let-btn>\r\n <bnrc-dynamic-form-toolbaritem\r\n fd-toolbar-item\r\n [attr.text]=\"btn.text\"\r\n [attr.itemId]=\"btn.itemId\"\r\n [attr.name]=\"btn.name\"\r\n [component]=\"btn.Data.CustomUi\"\r\n [context]=\"btn\"\r\n [isEnable]=\"btn.Command?._isEnable\"\r\n (btnClick)=\"onToolbarClick(btn)\"\r\n ></bnrc-dynamic-form-toolbaritem>\r\n </ng-template>\r\n } } }\r\n</fd-toolbar>\r\n", styles: [":host{display:contents}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.DynamicFormToolbaritemComponent, selector: "bnrc-dynamic-form-toolbaritem", inputs: ["mo", "index", "deviceName", "deviceSize", "context", "btn", "isEnable", "showText", "allColumns", "conditionalFormats"], outputs: ["btnClick"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i5$2.MenuComponent, selector: "fd-menu", inputs: ["mobile", "disabled", "focusTrapped", "focusAutoCapture", "openOnHoverTime", "mobileConfig", "ariaLabel", "ariaLabelledby", "id"], outputs: ["activePath"] }, { kind: "component", type: i5$2.MenuItemComponent, selector: "li[fd-menu-item]", inputs: ["disabled", "itemId", "submenu", "parentSubmenu", "hasSeparator"], outputs: ["onSelect"], exportAs: ["fd-menu-item"] }, { kind: "component", type: i5$2.MenuInteractiveComponent, selector: "[fd-menu-interactive]" }, { kind: "directive", type: i5$2.MenuTitleDirective, selector: "[fd-menu-title]" }, { kind: "component", type: i5$2.MenuAddonDirective, selector: "fd-menu-addon", inputs: ["position", "submenuIndicator", "ariaHidden"] }, { kind: "directive", type: i5$2.MenuTriggerDirective, selector: "[fdMenuTrigger]", inputs: ["fdMenuTrigger"] }, { kind: "component", type: i8.SplitButtonComponent, selector: "fd-split-button", inputs: ["glyph", "glyphFont", "disabled", "fdType", "expandButtonTitle", "selected", "fixedWidth", "mainAction", "arialLabel"], outputs: ["primaryButtonClicked"] }, { kind: "component", type: i7$2.ToolbarComponent, selector: "fd-toolbar", inputs: ["titleId", "class", "shouldOverflow", "fdType", "title", "active", "clearBorder", "forceOverflow", "tabindex", "headingLevel", "ariaLabel", "ariaLabelledBy"] }, { kind: "directive", type: i7$2.ToolbarItemDirective, selector: "[fd-toolbar-item], [fdOverflowGroup], [fdOverflowPriority]", inputs: ["fdOverflowPriority", "fdOverflowGroup"] }, { kind: "component", type: i7$2.ToolbarSeparatorComponent, selector: "fd-toolbar-separator" }, { kind: "directive", type: i2$7.ɵɵDir, selector: "[dir]", inputs: ["dir"], outputs: ["dirChange"], exportAs: ["dir"] }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
9539
9544
  }
9540
9545
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: FormToolbarComponent, decorators: [{
9541
9546
  type: Component,
@@ -9658,7 +9663,7 @@ class FundamentalDynamicFormComponent extends BaseComponent {
9658
9663
  }
9659
9664
  }
9660
9665
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: FundamentalDynamicFormComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
9661
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: FundamentalDynamicFormComponent, isStandalone: false, selector: "bsu-fundamental-dynamic-form", inputs: { breadCrumbs: "breadCrumbs", toolbarVisible: "toolbarVisible", toolbarItems: "toolbarItems", layoutActions: "layoutActions", layout94: "layout94", parameters: "parameters", workflowPanelUi: "workflowPanelUi", context: "context", title: "title", subtitle: "subtitle", description: "description", facetList: "facetList", infobars: "infobars", fieldDict: "fieldDict", removeHeaderBorder: "removeHeaderBorder", removeContentPadding: "removeContentPadding", isMobile: "isMobile", mo: "mo", avatar: "avatar", circleAvatar: "circleAvatar", hideBreadCrumb: "hideBreadCrumb", rtl: "rtl", hideFooter: "hideFooter", hideTitle: "hideTitle", hideClose: "hideClose", hidePin: "hidePin", fullscreen: "fullscreen", mask: "mask", canSend: "canSend", contentIsPage: "contentIsPage", contentDensity: "contentDensity", deviceSize: "deviceSize", dirValue: "dirValue", landscape: "landscape", standalone: "standalone", modernTabs: "modernTabs", selectedTabPageName: "selectedTabPageName", modernTabContainerComponent: "modernTabContainerComponent", layoutGridCol: "layoutGridCol", colLg: "colLg", colXl: "colXl", colMd: "colMd", footerDesign: "footerDesign", formContentMaxWidth: "formContentMaxWidth", workflowButtons: "workflowButtons" }, outputs: { toolbarClick: "toolbarClick", workflowChoiceClick: "workflowChoiceClick", close: "close", fullscreenRequest: "fullscreenRequest", dismissInfobar: "dismissInfobar" }, viewQueries: [{ propertyName: "_dynamicPageComponent", first: true, predicate: DynamicPageComponent, descendants: true, static: true }, { propertyName: "_toolbarComponent", first: true, predicate: ["formToolbar"], descendants: true }, { propertyName: "titleRef", first: true, predicate: ["titleRef"], descendants: true, read: ViewContainerRef }, { propertyName: "headerAvatarRef", first: true, predicate: ["headerAvatar"], descendants: true }, { propertyName: "closeFormTemplate", first: true, predicate: ["closeForm"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "@if (mask) {\r\n<div style=\"position: absolute; top: 0; left: 0; width: 100%; height: 100%\">\r\n <bsu-mask size=\"m\"></bsu-mask>\r\n</div>\r\n}\r\n\r\n<fd-dynamic-page\r\n [size]=\"isMobile ? 'small' : 'large'\"\r\n [ngClass]=\"{ 'floating-footer': footerDesign === 'floating-footer' }\"\r\n [class.header-border]=\"!removeHeaderBorder\"\r\n [attr.isMobile]=\"isMobile\"\r\n [attr.contentIsPage]=\"contentIsPage\"\r\n mobile\r\n formClose\r\n [isMobile]=\"isMobile\"\r\n>\r\n <fd-dynamic-page-header\r\n [class.simple-title]=\"!description\"\r\n [title]=\"(hideTitle === true ? '' : title) | bbbTranslate\"\r\n [class.notitle]=\"title.length < 2 || hideTitle\"\r\n [class.p-b0]=\"removeContentPadding\"\r\n [class.hide-title]=\"hideTitle === true && hideClose === true\"\r\n [class.hide-breadcrumb]=\"hideBreadCrumb\"\r\n [class.no-toolbar-items]=\"!(toolbarItems | filterWorkflowInMobile: worfklowButtonsOnFooter)?.length\"\r\n [mWidthTitle]=\"title\"\r\n #titleRef\r\n >\r\n <fd-dynamic-page-breadcrumb\r\n [class.hide]=\"isMobile || hideBreadCrumb\"\r\n *ngIf=\"breadCrumbs?.length; else noBreadcrumbs\"\r\n >\r\n <fd-breadcrumb>\r\n @if (breadCrumbs && !isMobile) { @for (breadCrumb of breadCrumbs | slice: 0:breadCrumbs.length; track\r\n trackBreadCrumb($index, breadCrumb); let i = $index; let last = $last) { @if(i>0) {\r\n <fd-breadcrumb-item>\r\n <bsu-breadcrumb\r\n [index]=\"i\"\r\n [isLast]=\"last\"\r\n [breadCrumb]=\"breadCrumb\"\r\n [allBreadCrumb]=\"breadCrumbs\"\r\n ></bsu-breadcrumb>\r\n </fd-breadcrumb-item>\r\n } }}\r\n </fd-breadcrumb>\r\n </fd-dynamic-page-breadcrumb>\r\n <ng-template #noBreadcrumbs></ng-template>\r\n <fd-dynamic-page-global-actions>\r\n <!-- global actions -->\r\n\r\n <fd-toolbar [shouldOverflow]=\"true\" Style=\"display:none\"> </fd-toolbar>\r\n <!-- added this because in mobile landscape toolbar disapper -->\r\n @if (toolbarVisible) {\r\n <bsu-form-toolbar\r\n [deviceSize]=\"deviceSize\"\r\n [buttons]=\"toolbarItems | filterWorkflowInMobile: worfklowButtonsOnFooter\"\r\n [dirValue]=\"dirValue\"\r\n [isFirefox]=\"isFirefox\"\r\n (toolbarClick)=\"toolbarClick.emit($event)\"\r\n #formToolbar\r\n ></bsu-form-toolbar>\r\n }\r\n </fd-dynamic-page-global-actions>\r\n <fd-dynamic-page-layout-actions>\r\n <!-- layout actions -->\r\n <!-- <div [formActions]=\"this.toolbar\"></div> -->\r\n @if (!hideClose) {\r\n <fd-toolbar fdType=\"transparent\" [clearBorder]=\"true\">\r\n @if (deviceSize !== 's') {\r\n <fd-toolbar-separator></fd-toolbar-separator>\r\n }\r\n <ng-container *ngTemplateOutlet=\"fullscreenForm\"></ng-container>\r\n <ng-container *ngTemplateOutlet=\"closeForm\"></ng-container>\r\n </fd-toolbar>\r\n }\r\n </fd-dynamic-page-layout-actions>\r\n </fd-dynamic-page-header>\r\n @if (description || facetList.length > 0 || workflowInfoText || avatar || infobars?.length) {}\r\n <fd-dynamic-page-subheader\r\n [class.header-no-description]=\"!(description || workflowInfoText || infobars?.length)\"\r\n [class.no-pin]=\"hidePin || (!facetList?.length && !workflowInfoText && !infobars?.length)\"\r\n [collapsible]=\"!hidePin\"\r\n [pinnable]=\"false\"\r\n [collapsed]=\"!facetList?.length && !workflowInfoText && !infobars?.length\"\r\n >\r\n @if (workflowInfoText) {\r\n <fd-message-strip\r\n [type]=\"'warning'\"\r\n [dismissible]=\"false\"\r\n [innerHtml]=\"workflowInfoText | bbbTranslate | sanitizeText\"\r\n >\r\n </fd-message-strip>\r\n }\r\n <bsu-barsa-infobars [infobars]=\"infobars\" (dismiss)=\"dismissInfobar.emit($event)\"></bsu-barsa-infobars>\r\n <fd-facet-group ariaLabel=\"Facet Group\">\r\n @if (avatar) {\r\n <fd-facet type=\"image\">\r\n <fd-avatar\r\n title=\"avatar\"\r\n [glyph]=\"avatar\"\r\n [image]=\"!avatar?.FileId ? null : (avatar?.FileId | picFieldSrc: 'ID':null)\"\r\n [size]=\"deviceSize === 'xl' ? 'l' : deviceSize\"\r\n [transparent]=\"true\"\r\n [circle]=\"circleAvatar\"\r\n ></fd-avatar>\r\n <!-- <div\r\n class=\"fd-avatar fd-avatar--circle\"\r\n [class]=\"'fd-avatar--' + (deviceSize === 'xl' ? 'l' : deviceSize)\"\r\n >\r\n <i *ngIf=\"avatar\" class=\"fd-avatar__icon\" [class]=\"avatar | sapFontClass\" role=\"presentation\"> </i>\r\n </div> -->\r\n </fd-facet>\r\n } @for (facet of facetList; track facet) {\r\n <fd-facet\r\n [type]=\"facet.type\"\r\n [facetTitle]=\"facet.mo.Title | bbbTranslate\"\r\n [subtitle]=\"facet.mo.SubTitle | facetValue | bbbTranslate\"\r\n >\r\n @for (item of facet.mo.ItemList?.MoDataList; track item) {\r\n <fd-facet-content>\r\n <label fd-form-label [colon]=\"true\" for=\"form-value-10\">{{ item.Title | bbbTranslate }}</label>\r\n <fd-text [text]=\"item.Value | facetValue | bbbTranslate\" id=\"form-value-10\"></fd-text>\r\n </fd-facet-content>\r\n } @if ( !facet.mo.IsNumber && facet.type === 'key-value' && !facet.mo.Component?.Selector) {\r\n <span\r\n fd-object-status\r\n [status]=\"facet.mo.Status | facetValue\"\r\n [label]=\"facet.mo.Component?.Selector ? '' : (facet.mo.Text | facetValue | bbbTranslate)\"\r\n [large]=\"facet.mo.IsLarge\"\r\n [title]=\"facet.mo.Text | facetValue | bbbTranslate\"\r\n [aria-label]=\"facet.mo.Text | facetValue | bbbTranslate\"\r\n [glyph]=\"facet.mo.Icon\"\r\n >\r\n </span>\r\n } @else {\r\n <bnrc-dynamic-component\r\n [class]=\"'fd-object-status fd-object-status--' + facet.mo.Status | facetValue\"\r\n [class.fd-object-status--large]=\"facet.mo.IsLarge\"\r\n [component]=\"facet.mo.Component\"\r\n [value]=\"facet.mo.Text | bbbTranslate\"\r\n ></bnrc-dynamic-component>\r\n } @if (facet.mo.IsNumber && facet.type === 'key-value') {\r\n <fd-object-number\r\n [number]=\"facet.mo.Text | facetValue\"\r\n [large]=\"facet.mo.IsLarge\"\r\n [unit]=\"facet.mo.Unit | facetValue | bbbTranslate\"\r\n [status]=\"facet.mo.Status | facetValue\"\r\n [decimal]=\"facet.mo.DecimalValue | facetValue\"\r\n ></fd-object-number>\r\n } @if (facet.type === 'plain-text') {\r\n <div [style.width.px]=\"facet.mo.Width\" style=\"white-space: normal\">\r\n <fd-text [text]=\"facet.mo.Text | facetValue | bbbTranslate\" hyphenation=\"auto\"></fd-text>\r\n </div>\r\n } @if (facet.type === 'rating-indicator') {\r\n <fd-facet-content>\r\n <fd-rating-indicator\r\n style=\"pointer-events: none\"\r\n size=\"md\"\r\n [dynamicTextIndicator]=\"facet.mo.Footer | bbbTranslate\"\r\n [displayMode]=\"true\"\r\n [value]=\"facet.mo | facetValue: facet.type\"\r\n ></fd-rating-indicator>\r\n </fd-facet-content>\r\n } @if (facet.type === 'progress') {\r\n <div [style.width]=\"'10rem'\">\r\n <!-- <span fd-form-label>{{ facet.mo.Subtitle | facetValue }}</span> -->\r\n <fd-progress-indicator\r\n class=\"facet-progress\"\r\n style=\"width: 10r em\"\r\n [state]=\"facet.mo.State\"\r\n [valueText]=\"(facet.mo | facetValue: facet.type) + ' \u0627\u0632 10 \u0645\u0631\u062D\u0644\u0647' | bbbTranslate\"\r\n [valueNow]=\"facet.mo | facetValue: facet.type\"\r\n [valueMax]=\"10\"\r\n [unit]=\"'\u0645\u0631\u062D\u0644\u0647'\"\r\n ></fd-progress-indicator>\r\n <!-- <ui5-progress-indicator\r\n style=\"width: 10rem\"\r\n [valueState]=\"facet.mo.State\"\r\n [value]=\"getNumber(facet.mo.Value)\"\r\n ></ui5-progress-indicator> -->\r\n </div>\r\n } @if (facet.type === 'microcharts') {\r\n <div>\r\n <label wrap>in progress ...</label>\r\n </div>\r\n }\r\n </fd-facet>\r\n }\r\n </fd-facet-group>\r\n @if (description) {\r\n <span>{{ description | bbbTranslate }}</span>\r\n }\r\n </fd-dynamic-page-subheader>\r\n @if((!modernTabs.length && !contentIsPage) || (modernTabs.length && !contentIsPage && parameters?.LayoutComponent))\r\n {\r\n <fd-dynamic-page-content [class.limit-content-width]=\"formContentMaxWidth > 0\" cdkScrollable>\r\n <fd-layout-grid class=\"!tw-p-0\" style=\"min-height: 100%\" [style.max-width.px]=\"formContentMaxWidth\">\r\n <div fdLayoutGridRow class=\"!tw-p-0\">\r\n <div\r\n class=\"!tw-p-0\"\r\n [class.hide]=\"layout2.colXl === 0\"\r\n [class.hide]=\"disableGrid\"\r\n [fdLayoutGridCol]=\"0\"\r\n [colMd]=\"layout1.colMd\"\r\n [colLg]=\"layout1.colLg\"\r\n [colXl]=\"layout1.colXl\"\r\n ></div>\r\n <div class=\"!tw-p-0\" [fdLayoutGridCol]=\"12\" [colMd]=\"colMd\" [colLg]=\"colLg\" [colXl]=\"colXl\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n parameters?.LayoutComponent ? renderLayoutComponent : renderDefaultLayout;\r\n context: {\r\n $implicit: parameters?.LayoutComponent,\r\n layout94: layout94\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n <div\r\n class=\"!tw-p-0\"\r\n [class.hide]=\"disableGrid\"\r\n [class.hide]=\"layout2.colXl === 0\"\r\n [fdLayoutGridCol]=\"0\"\r\n [colMd]=\"layout2.colMd\"\r\n [colLg]=\"layout2.colLg\"\r\n [colXl]=\"layout2.colXl\"\r\n ></div>\r\n </div>\r\n </fd-layout-grid>\r\n </fd-dynamic-page-content>\r\n } @else if(modernTabs.length && !contentIsPage && !parameters?.LayoutComponent){\r\n <fdp-icon-tab-bar\r\n [stackContent]=\"false\"\r\n [collapseOverflow]=\"true\"\r\n [expandOverflowText]=\"'More' | bbbTranslate\"\r\n [iconTabType]=\"modernTabContainerComponent?.Settings?.TabType.$Caption || 'text'\"\r\n [layoutMode]=\"modernTabContainerComponent?.Settings?.LayoutMode$Caption\"\r\n >\r\n @for (tab of modernTabs; track tab.Title; let i = $index) {\r\n <fdp-icon-tab-bar-tab\r\n [id]=\"tab.ControlId\"\r\n [active]=\"selectedTabPageName === tab.ControlId\"\r\n [label]=\"tab.Title!! | bbbTranslate\"\r\n [title]=\"tab.Title!! | bbbTranslate\"\r\n [color]=\"tab.SemanticColor?.$Caption\"\r\n [icon]=\"tab.FontIcon\"\r\n [iconFont]=\"tab.IconFontName?.$Caption\"\r\n [counter]=\"tab.CustomUi?.Settings?.CounterValue\"\r\n [class.is-expanded]=\"selectedTab === tab.Title\"\r\n #tablist\r\n >\r\n <fd-dynamic-page-content [id]=\"tab.id\" [class.limit-content-width]=\"formContentMaxWidth > 0\">\r\n <fd-layout-grid [style.max-width.px]=\"formContentMaxWidth\" class=\"!tw-p-0\">\r\n <div fdLayoutGridRow>\r\n <div\r\n class=\"!tw-p-0\"\r\n [fdLayoutGridCol]=\"0\"\r\n [colMd]=\"layout1.colMd\"\r\n [colLg]=\"layout1.colLg\"\r\n [colXl]=\"layout1.colXl\"\r\n [class.hide]=\"disableGrid\"\r\n ></div>\r\n <div [fdLayoutGridCol]=\"12\" [colMd]=\"colMd\" [colLg]=\"colLg\" [colXl]=\"colXl\" class=\"!tw-p-0\">\r\n <bsu-ly-tab-page [config]=\"tab\"></bsu-ly-tab-page>\r\n </div>\r\n <div\r\n class=\"!tw-p-0\"\r\n [fdLayoutGridCol]=\"0\"\r\n [colMd]=\"layout2.colMd\"\r\n [colLg]=\"layout2.colLg\"\r\n [colXl]=\"layout2.colXl\"\r\n [class.hide]=\"disableGrid\"\r\n ></div>\r\n </div>\r\n </fd-layout-grid>\r\n </fd-dynamic-page-content>\r\n </fdp-icon-tab-bar-tab>\r\n }\r\n </fdp-icon-tab-bar>\r\n } @if(!hideFooter && hasLayoutButtons || (workflowButtons.length && isMobile)){\r\n <fd-dynamic-page-footer>\r\n <ng-container *ngTemplateOutlet=\"layoutActionsTemplateRef\"></ng-container>\r\n </fd-dynamic-page-footer>\r\n }\r\n</fd-dynamic-page>\r\n@if (contentIsPage) {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n renderLayoutComponent;\r\n context: {\r\n $implicit: parameters?.LayoutComponent,\r\n layout94: layout94\r\n }\r\n \"\r\n></ng-container>\r\n}\r\n<ng-template #renderDefaultLayout let-layout94=\"layout94\">\r\n <bsu-ly-layout-container-of-root\r\n [config]=\"layout94\"\r\n [isPanel]=\"false\"\r\n [isRoot]=\"true\"\r\n ></bsu-ly-layout-container-of-root>\r\n</ng-template>\r\n<ng-template #renderLayoutComponent let-component let-layout94=\"layout94\">\r\n <bnrc-dynamic-form-component\r\n [component]=\"component\"\r\n [layoutActionsTemplateRef]=\"layoutActionsTemplateRef\"\r\n [removeContentPadding]=\"removeContentPadding\"\r\n [breadCrumbs]=\"breadCrumbs\"\r\n [description]=\"description\"\r\n [title]=\"title\"\r\n [subtitle]=\"subtitle\"\r\n [toolbarItems]=\"toolbarItems\"\r\n [layoutActions]=\"layoutActions\"\r\n [footerDesign]=\"footerDesign\"\r\n [facetList]=\"facetList\"\r\n [settings]=\"component.Settings\"\r\n [workflowButtons]=\"workflowButtons\"\r\n [workflowPanelUi]=\"workflowPanelUi\"\r\n [isMobile]=\"isMobile\"\r\n [mo]=\"mo\"\r\n [layout94]=\"layout94\"\r\n [context]=\"context\"\r\n [rtl]=\"rtl\"\r\n [fieldDict]=\"fieldDict\"\r\n [mask]=\"mask\"\r\n [dirValue]=\"dirValue\"\r\n [deviceSize]=\"deviceSize\"\r\n [contentDensity]=\"contentDensity\"\r\n [modernTabs]=\"modernTabs\"\r\n [avatar]=\"avatar\"\r\n (events)=\"onDynamicComponentEvents($event)\"\r\n ></bnrc-dynamic-form-component>\r\n</ng-template>\r\n<ng-template #closeForm>\r\n <button fd-button fdType=\"transparent\" aria-label=\"Close\" (click)=\"close.emit()\" title=\"Close\">\r\n <i [class]=\"'sap-icon--' + (isMobile ? (rtl ? 'arrow-right' : 'arrow-left') : 'decline')\"></i>\r\n </button>\r\n</ng-template>\r\n<ng-template #fullscreenForm>\r\n @if (canFullscreen) {\r\n <button\r\n fd-button\r\n fdType=\"transparent\"\r\n [attr.aria-label]=\"fullscreen ? 'exit fullscreen' : 'fullscreen'\"\r\n (click)=\"fullscreenRequest.emit()\"\r\n [title]=\"fullscreen ? 'exit fullscreen' : 'fullscreen'\"\r\n [glyph]=\"fullscreen ? 'exitfullscreen' : 'resize'\"\r\n ></button>\r\n }\r\n</ng-template>\r\n<ng-template #layoutActionsTemplateRef>\r\n <bsu-layout-actions\r\n [canSend]=\"canSend\"\r\n [buttons]=\"isMobile && hideFooter ? [] : layoutActions\"\r\n [isMobile]=\"isMobile\"\r\n [landscape]=\"landscape\"\r\n [standalone]=\"standalone\"\r\n [footerDesign]=\"footerDesign\"\r\n [workflowButtons]=\"workflowButtons\"\r\n [workflowButtonsComboMode]=\"workflowButtonsComboMode || worfklowButtonsOnFooter\"\r\n [deviceSize]=\"deviceSize\"\r\n [rtl]=\"rtl\"\r\n (toolClick)=\"toolbarClick.emit($event)\"\r\n (workflowChoiceSelect)=\"onWfChoiceSelect($event)\"\r\n >\r\n </bsu-layout-actions>\r\n</ng-template>\r\n", styles: [":host{display:block;height:auto;width:100%}:host>fd-dynamic-page[contentispage=false]:not([ismobile=true]) ::ng-deep fd-dynamic-page-header .fd-dynamic-page__title{max-width:50svw}:host ::ng-deep .fd-facet .fd-title{font-family:B-Font Medium}:host ::ng-deep fd-dynamic-page[contentIsPage=true] .fd-dynamic-page{height:auto!important;min-height:auto!important}:host ::ng-deep .facet-progress .fd-progress-indicator__container,:host ::ng-deep .facet-progress .fd-progress-indicator__progress-bar{height:1.5rem}:host ::ng-deep fd-facet .fd-object-status--large{font-size:1.1rem}.no-toolbar-items ::ng-deep .fd-dynamic-page__toolbar-container{width:auto}fd-dynamic-page[ismobile=true] fd-dynamic-page-header.notitle ::ng-deep .fd-dynamic-page__title{width:auto}fd-dynamic-page[ismobile=true] fd-dynamic-page-header.notitle ::ng-deep>article{height:calc(100svh - var(--shellbar-height) - env(safe-area-inset-bottom) - constant(safe-area-inset-bottom))!important}fd-dynamic-page ::ng-deep>article{min-height:calc(100svh - var(--shellbar-height))}fd-dynamic-page ::ng-deep>article>fd-tab-list>.fd-tabs__content fd-tab.is-expanded{min-height:100%;display:flex}fd-dynamic-page ::ng-deep>article>fd-tab-list>.fd-tabs__content fd-tab.is-expanded>fd-dynamic-page-content{min-height:100%;overflow:hidden}fd-dynamic-page ::ng-deep>article>fd-tab-list>.fd-tabs__content fd-tab.is-expanded bsu-ly-layout-container-of-root{min-height:100%}fd-dynamic-page ::ng-deep>article>.fd-scrollbar{height:inherit}fd-dynamic-page fd-dynamic-page-content.limit-content-width{display:flex;justify-content:center}fd-facet{display:flex;flex-direction:column}.hide-title ::ng-deep .fd-dynamic-page__title-container{display:none!important}.hide-title.hide-breadcrumb{display:none}.no-pin ::ng-deep .fd-dynamic-page__collapsible-header-visibility-container{display:none!important}fd-toolbar.firefox ::ng-deep .fd-toolbar{flex-direction:row-reverse}fd-toolbar.firefox ::ng-deep .fd-toolbar>:first-child{margin-right:5px}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.DynamicFormComponent, selector: "bnrc-dynamic-form-component", inputs: ["breadCrumbs", "toolbarVisible", "toolbarItems", "layoutActions", "layoutActionsTemplateRef", "workflowButtons", "layout94", "footerDesign", "settings", "workflowPanelUi", "title", "subtitle", "description", "facetList", "removeHeaderBorder", "removeContentPadding", "isMobile", "avatar", "rtl", "mask", "mo", "contentDensity", "deviceSize", "dirValue", "fieldDict", "modernTabs"] }, { kind: "component", type: i2.BaseDynamicComponent, selector: "bnrc-dynamic-component", inputs: ["component", "FnHandleEvents", "value"], outputs: ["events"] }, { kind: "directive", type: i2.FormCloseDirective, selector: "[formClose]", inputs: ["isMobile"] }, { kind: "directive", type: i2.MobileDirective, selector: "[mobile]" }, { kind: "directive", type: i2.MeasureFormTitleWidthDirective, selector: "[mWidthTitle]", inputs: ["mWidthTitle", "enableMobile"] }, { kind: "directive", type: i3$1.ɵɵCdkScrollable, selector: "[cdk-scrollable], [cdkScrollable]" }, { kind: "component", type: i3$7.AvatarComponent, selector: "fd-avatar", inputs: ["class", "id", "ariaLabel", "ariaLabelledby", "label", "size", "font", "glyph", "zoomGlyph", "circle", "interactive", "transparent", "contain", "placeholder", "tile", "border", "colorAccent", "colorIndication", "random", "clickable", "valueState", "image", "alterIcon", "backupImage"], outputs: ["avatarClicked", "zoomGlyphClicked"] }, { kind: "component", type: i4$5.BreadcrumbComponent, selector: "fd-breadcrumb", inputs: ["reverse", "tabIndex"], outputs: ["visibleItemsCount", "hiddenItemsCount"] }, { kind: "component", type: i4$5.BreadcrumbItemComponent, selector: "fd-breadcrumb-item" }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i8$2.DynamicPageComponent, selector: "fd-dynamic-page", inputs: ["disableSnapOnScroll", "ariaLabel", "ariaRoledescription", "background", "autoResponsive", "size", "offset", "expandContent", "positionRelative"] }, { kind: "component", type: i8$2.DynamicPageHeaderComponent, selector: "fd-dynamic-page-header", inputs: ["title", "titleWrap", "subtitle", "subtitleWrap", "headingLevel", "titleId"] }, { kind: "component", type: i8$2.DynamicPageGlobalActionsComponent, selector: "fd-dynamic-page-global-actions" }, { kind: "component", type: i8$2.DynamicPageLayoutActionsComponent, selector: "fd-dynamic-page-layout-actions" }, { kind: "component", type: i8$2.DynamicPageSubheaderComponent, selector: "fd-dynamic-page-subheader", inputs: ["collapsible", "pinnable", "collapsed", "expandLabel", "collapseLabel", "id", "headerAriaLabel", "pinAriaLabel", "unpinAriaLabel"], outputs: ["collapsedChange"] }, { kind: "component", type: i8$2.DynamicPageContentComponent, selector: "fd-dynamic-page-content", inputs: ["tabLabel", "id"] }, { kind: "component", type: i8$2.DynamicPageFooterComponent, selector: "fd-dynamic-page-footer" }, { kind: "component", type: i8$2.DynamicPageBreadcrumbComponent, selector: "fd-dynamic-page-breadcrumb" }, { kind: "component", type: i8$3.FacetComponent, selector: "fd-facet", inputs: ["type", "facetTitle", "subtitle", "headingLevel", "id", "alignEnd"] }, { kind: "component", type: i8$3.FacetGroupComponent, selector: "fd-facet-group", inputs: ["ariaLabel"] }, { kind: "component", type: i8$3.FacetContentComponent, selector: "fd-facet-content" }, { 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: i10.LayoutGridComponent, selector: "fd-layout-grid, [fdLayoutGrid]", inputs: ["class", "noGap", "noHorizontalGap", "noVerticalGap"] }, { kind: "directive", type: i10.LayoutGridColDirective, selector: "[fd-layout-grid-col], [fdLayoutGridCol]", inputs: ["fdLayoutGridCol", "colGrow", "colMd", "colLg", "colXl", "colOffset", "colOffsetMd", "colOffsetLg", "colOffsetXl", "class"] }, { kind: "directive", type: i10.LayoutGridRowDirective, selector: "[fd-layout-grid-row], [fdLayoutGridRow]" }, { kind: "component", type: i2$8.MessageStripComponent, selector: "fd-message-strip", inputs: ["class", "dismissible", "ariaLabelledBy", "dismissBtnTitle", "noIcon", "type", "id", "ariaLabel", "width", "minWidth", "marginBottom", "indicationColor"], outputs: ["onDismiss"] }, { kind: "component", type: i7$4.ObjectNumberComponent, selector: "fd-object-number", inputs: ["number", "decimal", "unit", "emphasized", "large", "status", "class", "ariaLabelledBy", "ariaLabel"] }, { kind: "component", type: i8$1.ObjectStatusComponent, selector: "[fd-object-status]", inputs: ["class", "status", "glyph", "glyphFont", "label", "glyphAriaLabel", "indicationColor", "clickable", "inverted", "large", "secondaryIndication", "textTemplate"] }, { kind: "component", type: i14.RatingIndicatorComponent, selector: "fd-rating-indicator", inputs: ["class", "name", "ariaLabel", "ariaLabelledBy", "disabled", "displayMode", "nonInteractive", "indicatorCapacity", "allowHalves", "value", "totalRatings", "ratingAverage", "ratings", "displayAllRatings", "ratedIcon", "unratedIcon", "size", "dynamicTextIndicator"], outputs: ["ratingChanged"] }, { kind: "component", type: i5$2.TextComponent, selector: "fd-text", inputs: ["text", "maxLines", "whitespaces", "hyphenation", "expandable", "isCollapsed"], outputs: ["isCollapsedChange"] }, { kind: "component", type: i8.ToolbarComponent, selector: "fd-toolbar", inputs: ["titleId", "class", "shouldOverflow", "fdType", "title", "active", "clearBorder", "forceOverflow", "tabindex", "headingLevel", "ariaLabel", "ariaLabelledBy"] }, { kind: "component", type: i8.ToolbarSeparatorComponent, selector: "fd-toolbar-separator" }, { kind: "component", type: i12$1.ProgressIndicatorComponent, selector: "fd-progress-indicator", inputs: ["valueText", "unit", "valueMin", "valueMax", "valueNow", "state", "animate"] }, { kind: "component", type: i18.IconTabBarComponent, selector: "fdp-icon-tab-bar", inputs: ["stackContent", "tabHeadingLevel", "iconTabType", "tabsConfig", "densityMode", "iconTabFont", "enableTabReordering", "showTotalTab", "multiClick", "layoutMode", "iconTabBackground", "iconTabSize", "colorAssociations", "settings", "maxContentHeight"], outputs: ["tabsConfigChange", "densityModeChange", "iconTabSelected", "iconTabReordered", "closeTab"] }, { kind: "component", type: i18.IconTabBarTabComponent, selector: "fdp-icon-tab-bar-tab", inputs: ["label", "color", "icon", "iconFont", "counter", "active", "badge", "closable", "id"] }, { kind: "component", type: LyLayoutContainerOfRootComponent, selector: "bsu-ly-layout-container-of-root" }, { kind: "component", type: MaskComponent, selector: "bsu-mask", inputs: ["size", "top"] }, { kind: "component", type: LyTabPageComponent, selector: "bsu-ly-tab-page", inputs: ["renderItems"] }, { kind: "component", type: LayoutActionsComponent, selector: "bsu-layout-actions", inputs: ["workflowButtons", "workflowButtonsComboMode", "canSend", "simple", "footerDesign"], outputs: ["workflowChoiceSelect"] }, { kind: "component", type: BreadcrumbComponent, selector: "bsu-breadcrumb", inputs: ["breadCrumb", "allBreadCrumb", "isLast", "index"] }, { kind: "component", type: FormToolbarComponent, selector: "bsu-form-toolbar", outputs: ["toolbarClick"] }, { kind: "component", type: BarsaInfobarsComponent, selector: "bsu-barsa-infobars", inputs: ["infobars"], outputs: ["dismiss"] }, { kind: "directive", type: ContentDensityDirective, selector: "[contentDensity]" }, { kind: "pipe", type: i1.SlicePipe, name: "slice" }, { kind: "pipe", type: i2.HeaderFacetValuePipe, name: "facetValue" }, { kind: "pipe", type: i2.PictureFieldSourcePipe, name: "picFieldSrc" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: i2.SanitizeTextPipe, name: "sanitizeText" }, { kind: "pipe", type: i2.FilterWorkflowInMobilePipe, name: "filterWorkflowInMobile" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
9666
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: FundamentalDynamicFormComponent, isStandalone: false, selector: "bsu-fundamental-dynamic-form", inputs: { breadCrumbs: "breadCrumbs", toolbarVisible: "toolbarVisible", toolbarItems: "toolbarItems", layoutActions: "layoutActions", layout94: "layout94", parameters: "parameters", workflowPanelUi: "workflowPanelUi", context: "context", title: "title", subtitle: "subtitle", description: "description", facetList: "facetList", infobars: "infobars", fieldDict: "fieldDict", removeHeaderBorder: "removeHeaderBorder", removeContentPadding: "removeContentPadding", isMobile: "isMobile", mo: "mo", avatar: "avatar", circleAvatar: "circleAvatar", hideBreadCrumb: "hideBreadCrumb", rtl: "rtl", hideFooter: "hideFooter", hideTitle: "hideTitle", hideClose: "hideClose", hidePin: "hidePin", fullscreen: "fullscreen", mask: "mask", canSend: "canSend", contentIsPage: "contentIsPage", contentDensity: "contentDensity", deviceSize: "deviceSize", dirValue: "dirValue", landscape: "landscape", standalone: "standalone", modernTabs: "modernTabs", selectedTabPageName: "selectedTabPageName", modernTabContainerComponent: "modernTabContainerComponent", layoutGridCol: "layoutGridCol", colLg: "colLg", colXl: "colXl", colMd: "colMd", footerDesign: "footerDesign", formContentMaxWidth: "formContentMaxWidth", workflowButtons: "workflowButtons" }, outputs: { toolbarClick: "toolbarClick", workflowChoiceClick: "workflowChoiceClick", close: "close", fullscreenRequest: "fullscreenRequest", dismissInfobar: "dismissInfobar" }, viewQueries: [{ propertyName: "_dynamicPageComponent", first: true, predicate: DynamicPageComponent, descendants: true, static: true }, { propertyName: "_toolbarComponent", first: true, predicate: ["formToolbar"], descendants: true }, { propertyName: "titleRef", first: true, predicate: ["titleRef"], descendants: true, read: ViewContainerRef }, { propertyName: "headerAvatarRef", first: true, predicate: ["headerAvatar"], descendants: true }, { propertyName: "closeFormTemplate", first: true, predicate: ["closeForm"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "@if (mask) {\r\n<div style=\"position: absolute; top: 0; left: 0; width: 100%; height: 100%\">\r\n <bsu-mask size=\"m\"></bsu-mask>\r\n</div>\r\n}\r\n\r\n<fd-dynamic-page\r\n [size]=\"isMobile ? 'small' : 'large'\"\r\n [ngClass]=\"{ 'floating-footer': footerDesign === 'floating-footer' }\"\r\n [class.header-border]=\"!removeHeaderBorder\"\r\n [attr.isMobile]=\"isMobile\"\r\n [attr.contentIsPage]=\"contentIsPage\"\r\n mobile\r\n formClose\r\n [isMobile]=\"isMobile\"\r\n>\r\n <fd-dynamic-page-header\r\n [class.simple-title]=\"!description\"\r\n [title]=\"(hideTitle === true ? '' : title) | bbbTranslate\"\r\n [class.notitle]=\"title.length < 2 || hideTitle\"\r\n [class.p-b0]=\"removeContentPadding\"\r\n [class.hide-title]=\"hideTitle === true && hideClose === true\"\r\n [class.hide-breadcrumb]=\"hideBreadCrumb\"\r\n [class.no-toolbar-items]=\"!(toolbarItems | filterWorkflowInMobile: worfklowButtonsOnFooter)?.length\"\r\n [mWidthTitle]=\"title\"\r\n #titleRef\r\n >\r\n <fd-dynamic-page-breadcrumb\r\n [class.hide]=\"isMobile || hideBreadCrumb\"\r\n *ngIf=\"breadCrumbs?.length; else noBreadcrumbs\"\r\n >\r\n <fd-breadcrumb>\r\n @if (breadCrumbs && !isMobile) { @for (breadCrumb of breadCrumbs | slice: 0:breadCrumbs.length; track\r\n trackBreadCrumb($index, breadCrumb); let i = $index; let last = $last) { @if(i>0) {\r\n <fd-breadcrumb-item>\r\n <bsu-breadcrumb\r\n [index]=\"i\"\r\n [isLast]=\"last\"\r\n [breadCrumb]=\"breadCrumb\"\r\n [allBreadCrumb]=\"breadCrumbs\"\r\n ></bsu-breadcrumb>\r\n </fd-breadcrumb-item>\r\n } }}\r\n </fd-breadcrumb>\r\n </fd-dynamic-page-breadcrumb>\r\n <ng-template #noBreadcrumbs></ng-template>\r\n <fd-dynamic-page-global-actions>\r\n <!-- global actions -->\r\n\r\n <fd-toolbar [shouldOverflow]=\"true\" Style=\"display:none\"> </fd-toolbar>\r\n <!-- added this because in mobile landscape toolbar disapper -->\r\n @if (toolbarVisible) {\r\n <bsu-form-toolbar\r\n [deviceSize]=\"deviceSize\"\r\n [buttons]=\"toolbarItems | filterWorkflowInMobile: worfklowButtonsOnFooter\"\r\n [dirValue]=\"dirValue\"\r\n [isFirefox]=\"isFirefox\"\r\n (toolbarClick)=\"toolbarClick.emit($event)\"\r\n #formToolbar\r\n ></bsu-form-toolbar>\r\n }\r\n </fd-dynamic-page-global-actions>\r\n <fd-dynamic-page-layout-actions>\r\n <!-- layout actions -->\r\n <!-- <div [formActions]=\"this.toolbar\"></div> -->\r\n @if (!hideClose) {\r\n <fd-toolbar fdType=\"transparent\" [clearBorder]=\"true\">\r\n @if (deviceSize !== 's') {\r\n <fd-toolbar-separator></fd-toolbar-separator>\r\n }\r\n <ng-container *ngTemplateOutlet=\"fullscreenForm\"></ng-container>\r\n <ng-container *ngTemplateOutlet=\"closeForm\"></ng-container>\r\n </fd-toolbar>\r\n }\r\n </fd-dynamic-page-layout-actions>\r\n </fd-dynamic-page-header>\r\n @if (description || facetList.length > 0 || workflowInfoText || avatar || infobars?.length) {}\r\n <fd-dynamic-page-subheader\r\n [class.header-no-description]=\"!(description || workflowInfoText || infobars?.length)\"\r\n [class.no-pin]=\"hidePin || (!facetList?.length && !workflowInfoText && !infobars?.length)\"\r\n [collapsible]=\"!hidePin\"\r\n [pinnable]=\"false\"\r\n [collapsed]=\"!facetList?.length && !workflowInfoText && !infobars?.length\"\r\n >\r\n @if (workflowInfoText) {\r\n <fd-message-strip\r\n [type]=\"'warning'\"\r\n [dismissible]=\"false\"\r\n [innerHtml]=\"workflowInfoText | bbbTranslate | sanitizeText\"\r\n >\r\n </fd-message-strip>\r\n }\r\n <bsu-barsa-infobars [infobars]=\"infobars\" (dismiss)=\"dismissInfobar.emit($event)\"></bsu-barsa-infobars>\r\n <fd-facet-group ariaLabel=\"Facet Group\">\r\n @if (avatar) {\r\n <fd-facet type=\"image\">\r\n <fd-avatar\r\n title=\"avatar\"\r\n [glyph]=\"avatar\"\r\n [image]=\"!avatar?.FileId ? null : (avatar?.FileId | picFieldSrc: 'ID':null)\"\r\n [size]=\"deviceSize === 'xl' ? 'l' : deviceSize\"\r\n [transparent]=\"true\"\r\n [circle]=\"circleAvatar\"\r\n ></fd-avatar>\r\n <!-- <div\r\n class=\"fd-avatar fd-avatar--circle\"\r\n [class]=\"'fd-avatar--' + (deviceSize === 'xl' ? 'l' : deviceSize)\"\r\n >\r\n <i *ngIf=\"avatar\" class=\"fd-avatar__icon\" [class]=\"avatar | sapFontClass\" role=\"presentation\"> </i>\r\n </div> -->\r\n </fd-facet>\r\n } @for (facet of facetList; track facet) {\r\n <fd-facet\r\n [type]=\"facet.type\"\r\n [facetTitle]=\"facet.mo.Title | bbbTranslate\"\r\n [subtitle]=\"facet.mo.SubTitle | facetValue | bbbTranslate\"\r\n >\r\n @for (item of facet.mo.ItemList?.MoDataList; track item) {\r\n <fd-facet-content>\r\n <label fd-form-label [colon]=\"true\" for=\"form-value-10\">{{ item.Title | bbbTranslate }}</label>\r\n <fd-text [text]=\"item.Value | facetValue | bbbTranslate\" id=\"form-value-10\"></fd-text>\r\n </fd-facet-content>\r\n } @if ( !facet.mo.IsNumber && facet.type === 'key-value' && !facet.mo.Component?.Selector) {\r\n <span\r\n fd-object-status\r\n [status]=\"facet.mo.Status | facetValue\"\r\n [label]=\"facet.mo.Component?.Selector ? '' : (facet.mo.Text | facetValue | bbbTranslate)\"\r\n [large]=\"facet.mo.IsLarge\"\r\n [title]=\"facet.mo.Text | facetValue | bbbTranslate\"\r\n [aria-label]=\"facet.mo.Text | facetValue | bbbTranslate\"\r\n [glyph]=\"facet.mo.Icon\"\r\n >\r\n </span>\r\n } @else {\r\n <bnrc-dynamic-component\r\n [class]=\"'fd-object-status fd-object-status--' + facet.mo.Status | facetValue\"\r\n [class.fd-object-status--large]=\"facet.mo.IsLarge\"\r\n [component]=\"facet.mo.Component\"\r\n [value]=\"facet.mo.Text | bbbTranslate\"\r\n ></bnrc-dynamic-component>\r\n } @if (facet.mo.IsNumber && facet.type === 'key-value') {\r\n <fd-object-number\r\n [number]=\"facet.mo.Text | facetValue\"\r\n [large]=\"facet.mo.IsLarge\"\r\n [unit]=\"facet.mo.Unit | facetValue | bbbTranslate\"\r\n [status]=\"facet.mo.Status | facetValue\"\r\n [decimal]=\"facet.mo.DecimalValue | facetValue\"\r\n ></fd-object-number>\r\n } @if (facet.type === 'plain-text') {\r\n <div [style.width.px]=\"facet.mo.Width\" style=\"white-space: normal\">\r\n <fd-text [text]=\"facet.mo.Text | facetValue | bbbTranslate\" hyphenation=\"auto\"></fd-text>\r\n </div>\r\n } @if (facet.type === 'rating-indicator') {\r\n <fd-facet-content>\r\n <fd-rating-indicator\r\n style=\"pointer-events: none\"\r\n size=\"md\"\r\n [dynamicTextIndicator]=\"facet.mo.Footer | bbbTranslate\"\r\n [displayMode]=\"true\"\r\n [value]=\"facet.mo | facetValue: facet.type\"\r\n ></fd-rating-indicator>\r\n </fd-facet-content>\r\n } @if (facet.type === 'progress') {\r\n <div [style.width]=\"'10rem'\">\r\n <!-- <span fd-form-label>{{ facet.mo.Subtitle | facetValue }}</span> -->\r\n <fd-progress-indicator\r\n class=\"facet-progress\"\r\n style=\"width: 10r em\"\r\n [state]=\"facet.mo.State\"\r\n [valueText]=\"(facet.mo | facetValue: facet.type) + ' \u0627\u0632 10 \u0645\u0631\u062D\u0644\u0647' | bbbTranslate\"\r\n [valueNow]=\"facet.mo | facetValue: facet.type\"\r\n [valueMax]=\"10\"\r\n [unit]=\"'\u0645\u0631\u062D\u0644\u0647'\"\r\n ></fd-progress-indicator>\r\n <!-- <ui5-progress-indicator\r\n style=\"width: 10rem\"\r\n [valueState]=\"facet.mo.State\"\r\n [value]=\"getNumber(facet.mo.Value)\"\r\n ></ui5-progress-indicator> -->\r\n </div>\r\n } @if (facet.type === 'microcharts') {\r\n <div>\r\n <label wrap>in progress ...</label>\r\n </div>\r\n }\r\n </fd-facet>\r\n }\r\n </fd-facet-group>\r\n @if (description) {\r\n <span>{{ description | bbbTranslate }}</span>\r\n }\r\n </fd-dynamic-page-subheader>\r\n @if((!modernTabs.length && !contentIsPage) || (modernTabs.length && !contentIsPage && parameters?.LayoutComponent))\r\n {\r\n <fd-dynamic-page-content [class.limit-content-width]=\"formContentMaxWidth > 0\" cdkScrollable>\r\n <fd-layout-grid class=\"!tw-p-0\" style=\"min-height: 100%\" [style.max-width.px]=\"formContentMaxWidth\">\r\n <div fdLayoutGridRow class=\"!tw-p-0\">\r\n <div\r\n class=\"!tw-p-0\"\r\n [class.hide]=\"layout2.colXl === 0\"\r\n [class.hide]=\"disableGrid\"\r\n [fdLayoutGridCol]=\"0\"\r\n [colMd]=\"layout1.colMd\"\r\n [colLg]=\"layout1.colLg\"\r\n [colXl]=\"layout1.colXl\"\r\n ></div>\r\n <div class=\"!tw-p-0\" [fdLayoutGridCol]=\"12\" [colMd]=\"colMd\" [colLg]=\"colLg\" [colXl]=\"colXl\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n parameters?.LayoutComponent ? renderLayoutComponent : renderDefaultLayout;\r\n context: {\r\n $implicit: parameters?.LayoutComponent,\r\n layout94: layout94\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n <div\r\n class=\"!tw-p-0\"\r\n [class.hide]=\"disableGrid\"\r\n [class.hide]=\"layout2.colXl === 0\"\r\n [fdLayoutGridCol]=\"0\"\r\n [colMd]=\"layout2.colMd\"\r\n [colLg]=\"layout2.colLg\"\r\n [colXl]=\"layout2.colXl\"\r\n ></div>\r\n </div>\r\n </fd-layout-grid>\r\n </fd-dynamic-page-content>\r\n } @else if(modernTabs.length && !contentIsPage && !parameters?.LayoutComponent){\r\n <fdp-icon-tab-bar\r\n [stackContent]=\"false\"\r\n [collapseOverflow]=\"true\"\r\n [expandOverflowText]=\"'More' | bbbTranslate\"\r\n [iconTabType]=\"modernTabContainerComponent?.Settings?.TabType.$Caption || 'text'\"\r\n [layoutMode]=\"modernTabContainerComponent?.Settings?.LayoutMode$Caption\"\r\n >\r\n @for (tab of modernTabs; track tab.Title; let i = $index) {\r\n <fdp-icon-tab-bar-tab\r\n [id]=\"tab.ControlId\"\r\n [active]=\"selectedTabPageName === tab.ControlId\"\r\n [label]=\"tab.Title!! | bbbTranslate\"\r\n [title]=\"tab.Title!! | bbbTranslate\"\r\n [color]=\"tab.SemanticColor?.$Caption\"\r\n [icon]=\"tab.FontIcon\"\r\n [iconFont]=\"tab.IconFontName?.$Caption\"\r\n [counter]=\"tab.CustomUi?.Settings?.CounterValue\"\r\n [class.is-expanded]=\"selectedTab === tab.Title\"\r\n #tablist\r\n >\r\n <fd-dynamic-page-content [id]=\"tab.id\" [class.limit-content-width]=\"formContentMaxWidth > 0\">\r\n <fd-layout-grid [style.max-width.px]=\"formContentMaxWidth\" class=\"!tw-p-0\">\r\n <div fdLayoutGridRow>\r\n <div\r\n class=\"!tw-p-0\"\r\n [fdLayoutGridCol]=\"0\"\r\n [colMd]=\"layout1.colMd\"\r\n [colLg]=\"layout1.colLg\"\r\n [colXl]=\"layout1.colXl\"\r\n [class.hide]=\"disableGrid\"\r\n ></div>\r\n <div [fdLayoutGridCol]=\"12\" [colMd]=\"colMd\" [colLg]=\"colLg\" [colXl]=\"colXl\" class=\"!tw-p-0\">\r\n <bsu-ly-tab-page [config]=\"tab\"></bsu-ly-tab-page>\r\n </div>\r\n <div\r\n class=\"!tw-p-0\"\r\n [fdLayoutGridCol]=\"0\"\r\n [colMd]=\"layout2.colMd\"\r\n [colLg]=\"layout2.colLg\"\r\n [colXl]=\"layout2.colXl\"\r\n [class.hide]=\"disableGrid\"\r\n ></div>\r\n </div>\r\n </fd-layout-grid>\r\n </fd-dynamic-page-content>\r\n </fdp-icon-tab-bar-tab>\r\n }\r\n </fdp-icon-tab-bar>\r\n } @if(!hideFooter && hasLayoutButtons || (workflowButtons.length && isMobile)){\r\n <fd-dynamic-page-footer>\r\n <ng-container *ngTemplateOutlet=\"layoutActionsTemplateRef\"></ng-container>\r\n </fd-dynamic-page-footer>\r\n }\r\n</fd-dynamic-page>\r\n@if (contentIsPage) {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n renderLayoutComponent;\r\n context: {\r\n $implicit: parameters?.LayoutComponent,\r\n layout94: layout94\r\n }\r\n \"\r\n></ng-container>\r\n}\r\n<ng-template #renderDefaultLayout let-layout94=\"layout94\">\r\n <bsu-ly-layout-container-of-root\r\n [config]=\"layout94\"\r\n [isPanel]=\"false\"\r\n [isRoot]=\"true\"\r\n ></bsu-ly-layout-container-of-root>\r\n</ng-template>\r\n<ng-template #renderLayoutComponent let-component let-layout94=\"layout94\">\r\n <bnrc-dynamic-form-component\r\n [component]=\"component\"\r\n [layoutActionsTemplateRef]=\"layoutActionsTemplateRef\"\r\n [removeContentPadding]=\"removeContentPadding\"\r\n [breadCrumbs]=\"breadCrumbs\"\r\n [description]=\"description\"\r\n [title]=\"title\"\r\n [subtitle]=\"subtitle\"\r\n [toolbarItems]=\"toolbarItems\"\r\n [layoutActions]=\"layoutActions\"\r\n [footerDesign]=\"footerDesign\"\r\n [facetList]=\"facetList\"\r\n [settings]=\"component.Settings\"\r\n [workflowButtons]=\"workflowButtons\"\r\n [workflowPanelUi]=\"workflowPanelUi\"\r\n [isMobile]=\"isMobile\"\r\n [mo]=\"mo\"\r\n [layout94]=\"layout94\"\r\n [context]=\"context\"\r\n [rtl]=\"rtl\"\r\n [fieldDict]=\"fieldDict\"\r\n [mask]=\"mask\"\r\n [dirValue]=\"dirValue\"\r\n [deviceSize]=\"deviceSize\"\r\n [contentDensity]=\"contentDensity\"\r\n [modernTabs]=\"modernTabs\"\r\n [avatar]=\"avatar\"\r\n (events)=\"onDynamicComponentEvents($event)\"\r\n ></bnrc-dynamic-form-component>\r\n</ng-template>\r\n<ng-template #closeForm>\r\n <button fd-button fdType=\"transparent\" aria-label=\"Close\" (click)=\"close.emit()\" title=\"Close\">\r\n <i [class]=\"'sap-icon--' + (isMobile ? (rtl ? 'arrow-right' : 'arrow-left') : 'decline')\"></i>\r\n </button>\r\n</ng-template>\r\n<ng-template #fullscreenForm>\r\n @if (canFullscreen) {\r\n <button\r\n fd-button\r\n fdType=\"transparent\"\r\n [attr.aria-label]=\"fullscreen ? 'exit fullscreen' : 'fullscreen'\"\r\n (click)=\"fullscreenRequest.emit()\"\r\n [title]=\"fullscreen ? 'exit fullscreen' : 'fullscreen'\"\r\n [glyph]=\"fullscreen ? 'exitfullscreen' : 'resize'\"\r\n ></button>\r\n }\r\n</ng-template>\r\n<ng-template #layoutActionsTemplateRef>\r\n <bsu-layout-actions\r\n [canSend]=\"canSend\"\r\n [buttons]=\"isMobile && hideFooter ? [] : layoutActions\"\r\n [isMobile]=\"isMobile\"\r\n [landscape]=\"landscape\"\r\n [standalone]=\"standalone\"\r\n [footerDesign]=\"footerDesign\"\r\n [workflowButtons]=\"workflowButtons\"\r\n [workflowButtonsComboMode]=\"workflowButtonsComboMode || worfklowButtonsOnFooter\"\r\n [deviceSize]=\"deviceSize\"\r\n [rtl]=\"rtl\"\r\n (toolClick)=\"toolbarClick.emit($event)\"\r\n (workflowChoiceSelect)=\"onWfChoiceSelect($event)\"\r\n >\r\n </bsu-layout-actions>\r\n</ng-template>\r\n", styles: [":host{display:block;height:auto;width:100%}:host>fd-dynamic-page[contentispage=false]:not([ismobile=true]) ::ng-deep fd-dynamic-page-header .fd-dynamic-page__title{max-width:50svw}:host ::ng-deep .fd-facet .fd-title{font-family:B-Font Medium}:host ::ng-deep fd-dynamic-page[contentIsPage=true] .fd-dynamic-page{height:auto!important;min-height:auto!important}:host ::ng-deep .facet-progress .fd-progress-indicator__container,:host ::ng-deep .facet-progress .fd-progress-indicator__progress-bar{height:1.5rem}:host ::ng-deep fd-facet .fd-object-status--large{font-size:1.1rem}.no-toolbar-items ::ng-deep .fd-dynamic-page__toolbar-container{width:auto}fd-dynamic-page[ismobile=true] fd-dynamic-page-header.notitle ::ng-deep .fd-dynamic-page__title{width:auto}fd-dynamic-page[ismobile=true] fd-dynamic-page-header.notitle ::ng-deep>article{height:calc(100svh - var(--shellbar-height) - env(safe-area-inset-bottom) - constant(safe-area-inset-bottom))!important}fd-dynamic-page ::ng-deep>article{min-height:calc(100svh - var(--shellbar-height))}fd-dynamic-page ::ng-deep>article>fd-tab-list>.fd-tabs__content fd-tab.is-expanded{min-height:100%;display:flex}fd-dynamic-page ::ng-deep>article>fd-tab-list>.fd-tabs__content fd-tab.is-expanded>fd-dynamic-page-content{min-height:100%;overflow:hidden}fd-dynamic-page ::ng-deep>article>fd-tab-list>.fd-tabs__content fd-tab.is-expanded bsu-ly-layout-container-of-root{min-height:100%}fd-dynamic-page ::ng-deep>article>.fd-scrollbar{height:inherit}fd-dynamic-page fd-dynamic-page-content.limit-content-width{display:flex;justify-content:center}fd-facet{display:flex;flex-direction:column}.hide-title ::ng-deep .fd-dynamic-page__title-container{display:none!important}.hide-title.hide-breadcrumb{display:none}.no-pin ::ng-deep .fd-dynamic-page__collapsible-header-visibility-container{display:none!important}fd-toolbar.firefox ::ng-deep .fd-toolbar{flex-direction:row-reverse}fd-toolbar.firefox ::ng-deep .fd-toolbar>:first-child{margin-right:5px}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.DynamicFormComponent, selector: "bnrc-dynamic-form-component", inputs: ["breadCrumbs", "toolbarVisible", "toolbarItems", "layoutActions", "layoutActionsTemplateRef", "workflowButtons", "layout94", "footerDesign", "settings", "workflowPanelUi", "title", "subtitle", "description", "facetList", "removeHeaderBorder", "removeContentPadding", "isMobile", "avatar", "rtl", "mask", "mo", "contentDensity", "deviceSize", "dirValue", "fieldDict", "modernTabs"] }, { kind: "component", type: i2.BaseDynamicComponent, selector: "bnrc-dynamic-component", inputs: ["component", "FnHandleEvents", "value"], outputs: ["events"] }, { kind: "directive", type: i2.FormCloseDirective, selector: "[formClose]", inputs: ["isMobile"] }, { kind: "directive", type: i2.MobileDirective, selector: "[mobile]" }, { kind: "directive", type: i2.MeasureFormTitleWidthDirective, selector: "[mWidthTitle]", inputs: ["mWidthTitle", "enableMobile"] }, { kind: "directive", type: i3$1.ɵɵCdkScrollable, selector: "[cdk-scrollable], [cdkScrollable]" }, { kind: "component", type: i3$7.AvatarComponent, selector: "fd-avatar", inputs: ["class", "id", "ariaLabel", "ariaLabelledby", "label", "size", "font", "glyph", "zoomGlyph", "circle", "interactive", "transparent", "contain", "placeholder", "tile", "border", "colorAccent", "colorIndication", "random", "clickable", "valueState", "image", "alterIcon", "backupImage"], outputs: ["avatarClicked", "zoomGlyphClicked"] }, { kind: "component", type: i4$5.BreadcrumbComponent, selector: "fd-breadcrumb", inputs: ["reverse", "tabIndex"], outputs: ["visibleItemsCount", "hiddenItemsCount"] }, { kind: "component", type: i4$5.BreadcrumbItemComponent, selector: "fd-breadcrumb-item" }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i8$2.DynamicPageComponent, selector: "fd-dynamic-page", inputs: ["disableSnapOnScroll", "ariaLabel", "ariaRoledescription", "background", "autoResponsive", "size", "offset", "expandContent", "positionRelative"] }, { kind: "component", type: i8$2.DynamicPageHeaderComponent, selector: "fd-dynamic-page-header", inputs: ["title", "titleWrap", "subtitle", "subtitleWrap", "headingLevel", "titleId"] }, { kind: "component", type: i8$2.DynamicPageGlobalActionsComponent, selector: "fd-dynamic-page-global-actions" }, { kind: "component", type: i8$2.DynamicPageLayoutActionsComponent, selector: "fd-dynamic-page-layout-actions" }, { kind: "component", type: i8$2.DynamicPageSubheaderComponent, selector: "fd-dynamic-page-subheader", inputs: ["collapsible", "pinnable", "collapsed", "expandLabel", "collapseLabel", "id", "headerAriaLabel", "pinAriaLabel", "unpinAriaLabel"], outputs: ["collapsedChange"] }, { kind: "component", type: i8$2.DynamicPageContentComponent, selector: "fd-dynamic-page-content", inputs: ["tabLabel", "id"] }, { kind: "component", type: i8$2.DynamicPageFooterComponent, selector: "fd-dynamic-page-footer" }, { kind: "component", type: i8$2.DynamicPageBreadcrumbComponent, selector: "fd-dynamic-page-breadcrumb" }, { kind: "component", type: i8$3.FacetComponent, selector: "fd-facet", inputs: ["type", "facetTitle", "subtitle", "headingLevel", "id", "alignEnd"] }, { kind: "component", type: i8$3.FacetGroupComponent, selector: "fd-facet-group", inputs: ["ariaLabel"] }, { kind: "component", type: i8$3.FacetContentComponent, selector: "fd-facet-content" }, { 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: i10.LayoutGridComponent, selector: "fd-layout-grid, [fdLayoutGrid]", inputs: ["class", "noGap", "noHorizontalGap", "noVerticalGap"] }, { kind: "directive", type: i10.LayoutGridColDirective, selector: "[fd-layout-grid-col], [fdLayoutGridCol]", inputs: ["fdLayoutGridCol", "colGrow", "colMd", "colLg", "colXl", "colOffset", "colOffsetMd", "colOffsetLg", "colOffsetXl", "class"] }, { kind: "directive", type: i10.LayoutGridRowDirective, selector: "[fd-layout-grid-row], [fdLayoutGridRow]" }, { kind: "component", type: i2$8.MessageStripComponent, selector: "fd-message-strip", inputs: ["class", "dismissible", "ariaLabelledBy", "dismissBtnTitle", "noIcon", "type", "id", "ariaLabel", "width", "minWidth", "marginBottom", "indicationColor"], outputs: ["onDismiss"] }, { kind: "component", type: i7$4.ObjectNumberComponent, selector: "fd-object-number", inputs: ["number", "decimal", "unit", "emphasized", "large", "status", "class", "ariaLabelledBy", "ariaLabel"] }, { kind: "component", type: i8$1.ObjectStatusComponent, selector: "[fd-object-status]", inputs: ["class", "status", "glyph", "glyphFont", "label", "glyphAriaLabel", "indicationColor", "clickable", "inverted", "large", "secondaryIndication", "textTemplate"] }, { kind: "component", type: i14.RatingIndicatorComponent, selector: "fd-rating-indicator", inputs: ["class", "name", "ariaLabel", "ariaLabelledBy", "disabled", "displayMode", "nonInteractive", "indicatorCapacity", "allowHalves", "value", "totalRatings", "ratingAverage", "ratings", "displayAllRatings", "ratedIcon", "unratedIcon", "size", "dynamicTextIndicator"], outputs: ["ratingChanged"] }, { kind: "component", type: i5$3.TextComponent, selector: "fd-text", inputs: ["text", "maxLines", "whitespaces", "hyphenation", "expandable", "isCollapsed"], outputs: ["isCollapsedChange"] }, { kind: "component", type: i7$2.ToolbarComponent, selector: "fd-toolbar", inputs: ["titleId", "class", "shouldOverflow", "fdType", "title", "active", "clearBorder", "forceOverflow", "tabindex", "headingLevel", "ariaLabel", "ariaLabelledBy"] }, { kind: "component", type: i7$2.ToolbarSeparatorComponent, selector: "fd-toolbar-separator" }, { kind: "component", type: i12$1.ProgressIndicatorComponent, selector: "fd-progress-indicator", inputs: ["valueText", "unit", "valueMin", "valueMax", "valueNow", "state", "animate"] }, { kind: "component", type: i18.IconTabBarComponent, selector: "fdp-icon-tab-bar", inputs: ["stackContent", "tabHeadingLevel", "iconTabType", "tabsConfig", "densityMode", "iconTabFont", "enableTabReordering", "showTotalTab", "multiClick", "layoutMode", "iconTabBackground", "iconTabSize", "colorAssociations", "settings", "maxContentHeight"], outputs: ["tabsConfigChange", "densityModeChange", "iconTabSelected", "iconTabReordered", "closeTab"] }, { kind: "component", type: i18.IconTabBarTabComponent, selector: "fdp-icon-tab-bar-tab", inputs: ["label", "color", "icon", "iconFont", "counter", "active", "badge", "closable", "id"] }, { kind: "component", type: LyLayoutContainerOfRootComponent, selector: "bsu-ly-layout-container-of-root" }, { kind: "component", type: MaskComponent, selector: "bsu-mask", inputs: ["size", "top"] }, { kind: "component", type: LyTabPageComponent, selector: "bsu-ly-tab-page", inputs: ["renderItems"] }, { kind: "component", type: LayoutActionsComponent, selector: "bsu-layout-actions", inputs: ["workflowButtons", "workflowButtonsComboMode", "canSend", "simple", "footerDesign"], outputs: ["workflowChoiceSelect"] }, { kind: "component", type: BreadcrumbComponent, selector: "bsu-breadcrumb", inputs: ["breadCrumb", "allBreadCrumb", "isLast", "index"] }, { kind: "component", type: FormToolbarComponent, selector: "bsu-form-toolbar", outputs: ["toolbarClick"] }, { kind: "component", type: BarsaInfobarsComponent, selector: "bsu-barsa-infobars", inputs: ["infobars"], outputs: ["dismiss"] }, { kind: "directive", type: ContentDensityDirective, selector: "[contentDensity]" }, { kind: "pipe", type: i1.SlicePipe, name: "slice" }, { kind: "pipe", type: i2.HeaderFacetValuePipe, name: "facetValue" }, { kind: "pipe", type: i2.PictureFieldSourcePipe, name: "picFieldSrc" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: i2.SanitizeTextPipe, name: "sanitizeText" }, { kind: "pipe", type: i2.FilterWorkflowInMobilePipe, name: "filterWorkflowInMobile" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
9662
9667
  }
9663
9668
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: FundamentalDynamicFormComponent, decorators: [{
9664
9669
  type: Component,
@@ -10137,7 +10142,7 @@ class UiLinearListContainerWithButtonComponent extends DeviceInfoFieldBaseCompon
10137
10142
  }
10138
10143
  }
10139
10144
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UiLinearListContainerWithButtonComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
10140
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: UiLinearListContainerWithButtonComponent, isStandalone: false, 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 fullscreenDialog\r\n [glyph]=\"(dialog.fullScreen | async) === true ? 'exitfullscreen' : 'resize'\"\r\n (click)=\"dialog.toggleFullScreen()\"\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 [shouldOverflow]=\"true\" style=\"overflow-y:auto\">\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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.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$2.BarLeftDirective, selector: "[fd-bar-left]" }, { kind: "directive", type: i3$2.BarRightDirective, selector: "[fd-bar-right]" }, { kind: "directive", type: i3$2.BarElementDirective, selector: "fd-bar-element", inputs: ["fullWidth"] }, { kind: "component", type: i3$2.ButtonBarComponent, selector: "fd-button-bar", inputs: ["fullWidth", "fdType", "title", "ariaLabelledby", "id"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i3$3.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i3$3.DialogBodyComponent, selector: "fd-dialog-body", inputs: ["disablePaddings"] }, { kind: "component", type: i3$3.DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: i3$3.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "directive", type: i4$2.TemplateDirective, selector: "[fdkTemplate]", inputs: ["fdkTemplate"] }, { kind: "component", type: i5.TitleComponent, selector: "[fd-title], [fdTitle]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "component", type: i8$4.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"], 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: i13.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]" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
10145
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: UiLinearListContainerWithButtonComponent, isStandalone: false, 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 fullscreenDialog\r\n [glyph]=\"(dialog.fullScreen | async) === true ? 'exitfullscreen' : 'resize'\"\r\n (click)=\"dialog.toggleFullScreen()\"\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 [shouldOverflow]=\"true\" style=\"overflow-y:auto\">\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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.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$2.BarLeftDirective, selector: "[fd-bar-left]" }, { kind: "directive", type: i3$2.BarRightDirective, selector: "[fd-bar-right]" }, { kind: "directive", type: i3$2.BarElementDirective, selector: "fd-bar-element", inputs: ["fullWidth"] }, { kind: "component", type: i3$2.ButtonBarComponent, selector: "fd-button-bar", inputs: ["fullWidth", "fdType", "title", "ariaLabelledby", "id"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i3$3.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i3$3.DialogBodyComponent, selector: "fd-dialog-body", inputs: ["disablePaddings"] }, { kind: "component", type: i3$3.DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: i3$3.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "directive", type: i4$2.TemplateDirective, selector: "[fdkTemplate]", inputs: ["fdkTemplate"] }, { kind: "component", type: i5.TitleComponent, selector: "[fd-title], [fdTitle]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "component", type: i8$4.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"], outputs: ["searchTermChange", "selectedChange", "openChange", "addOnButtonClicked", "allItemsSelectedChange"] }, { kind: "component", type: i7$2.ToolbarComponent, selector: "fd-toolbar", inputs: ["titleId", "class", "shouldOverflow", "fdType", "title", "active", "clearBorder", "forceOverflow", "tabindex", "headingLevel", "ariaLabel", "ariaLabelledBy"] }, { kind: "directive", type: i7$2.ToolbarItemDirective, selector: "[fd-toolbar-item], [fdOverflowGroup], [fdOverflowPriority]", inputs: ["fdOverflowPriority", "fdOverflowGroup"] }, { kind: "component", type: i13.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]" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
10141
10146
  }
10142
10147
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UiLinearListContainerWithButtonComponent, decorators: [{
10143
10148
  type: Component,
@@ -10241,7 +10246,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
10241
10246
 
10242
10247
  class StaticTextComponent extends FieldBaseComponent {
10243
10248
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: StaticTextComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
10244
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.6", type: StaticTextComponent, isStandalone: false, selector: "bsu-static-text", usesInheritance: true, ngImport: i0, template: "<fd-text\r\n [text]=\"value || context._innerControl?.value | bbbTranslate\"\r\n [maxLines]=\"parameters.MaxLines\"\r\n [expandable]=\"parameters.Expandable\"\r\n [ngStyle]=\"parameters?.Style | removeNewline | convertToStyle\"\r\n></fd-text>\r\n", styles: [":host ::ng-deep p,:host ::ng-deep span{font-size:inherit;font-weight:inherit}fd-text{display:block}\n"], dependencies: [{ kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i5$2.TextComponent, selector: "fd-text", inputs: ["text", "maxLines", "whitespaces", "hyphenation", "expandable", "isCollapsed"], outputs: ["isCollapsedChange"] }, { kind: "pipe", type: i2.RemoveNewlinePipe, name: "removeNewline" }, { kind: "pipe", type: i2.ConvertToStylePipe, name: "convertToStyle" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
10249
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.6", type: StaticTextComponent, isStandalone: false, selector: "bsu-static-text", usesInheritance: true, ngImport: i0, template: "<fd-text\r\n [text]=\"value || context._innerControl?.value | bbbTranslate\"\r\n [maxLines]=\"parameters.MaxLines\"\r\n [expandable]=\"parameters.Expandable\"\r\n [ngStyle]=\"parameters?.Style | removeNewline | convertToStyle\"\r\n></fd-text>\r\n", styles: [":host ::ng-deep p,:host ::ng-deep span{font-size:inherit;font-weight:inherit}fd-text{display:block}\n"], dependencies: [{ kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i5$3.TextComponent, selector: "fd-text", inputs: ["text", "maxLines", "whitespaces", "hyphenation", "expandable", "isCollapsed"], outputs: ["isCollapsedChange"] }, { kind: "pipe", type: i2.RemoveNewlinePipe, name: "removeNewline" }, { kind: "pipe", type: i2.ConvertToStylePipe, name: "convertToStyle" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
10245
10250
  }
10246
10251
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: StaticTextComponent, decorators: [{
10247
10252
  type: Component,
@@ -10408,7 +10413,7 @@ class UiTextFieldAutoCompleteComponent extends FieldBaseComponent {
10408
10413
  });
10409
10414
  }
10410
10415
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UiTextFieldAutoCompleteComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
10411
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.6", type: UiTextFieldAutoCompleteComponent, isStandalone: false, selector: "bsu-ui-text-field-auto-complete", usesInheritance: true, ngImport: i0, template: "<fd-combobox\r\n #fdCombo\r\n [inputId]=\"id\"\r\n [placeholder]=\"Setting?.NullText || ''\"\r\n [readonly]=\"(readonly$ | async) === true\"\r\n [fillOnSelect]=\"true\"\r\n [isSearch]=\"false\"\r\n [disabled]=\"(disable$ | async) === true\"\r\n [maxlength]=\"Setting?.MaxLength !== undefined ? Setting?.MaxLength : null\"\r\n [style.direction]=\"Setting?.IsLtr === true ? 'ltr' : 'rtl'\"\r\n [showDropdownButton]=\"false\"\r\n [dropdownValues]=\"(suggestionList$ | async) || []\"\r\n [includes]=\"true\"\r\n [highlighting]=\"false\"\r\n [ngModel]=\"value || ''\"\r\n (inputTextChange)=\"onValueChange($event)\"\r\n>\r\n</fd-combobox>\r\n", styles: [":host{display:block;height:100%}fd-combobox{width:100%}fd-combobox ::ng-deep fd-popover{width:100%}fd-combobox ::ng-deep .fd-input-group--control{margin:.1875rem 0!important;margin-bottom:.25rem rem!important}fd-combobox ::ng-deep .fd-input-group--control input{padding-right:.625rem!important;padding-left:.625rem!important}\n"], dependencies: [{ kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4$7.ComboboxComponent, selector: "fd-combobox", inputs: ["comboboxId", "inputId", "ariaLabel", "ariaLabelledBy", "required", "dropdownValues", "filterFn", "disabled", "placeholder", "isSearch", "glyph", "glyphFont", "showClearButton", "triggers", "closeOnOutsideClick", "openOnKeyboardEvent", "state", "itemTemplate", "groupFn", "maxHeight", "dropDownMaxWidthPx", "noDropDownMaxWidth", "width", "searchFn", "highlighting", "closeOnSelect", "fillOnSelect", "autoComplete", "fillControlMode", "communicateByObject", "displayFn", "buttonFocusable", "clearButtonFocusable", "readOnly", "mobile", "mobileConfig", "showDropdownButton", "includes", "title", "byline", "tabOutStrategy"], outputs: ["itemClicked", "openChange", "inputTextChange"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
10416
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.6", type: UiTextFieldAutoCompleteComponent, isStandalone: false, selector: "bsu-ui-text-field-auto-complete", usesInheritance: true, ngImport: i0, template: "<fd-combobox\r\n #fdCombo\r\n [inputId]=\"id\"\r\n [placeholder]=\"Setting?.NullText || ''\"\r\n [readonly]=\"(readonly$ | async) === true\"\r\n [fillOnSelect]=\"true\"\r\n [isSearch]=\"false\"\r\n [disabled]=\"(disable$ | async) === true\"\r\n [maxlength]=\"Setting?.MaxLength !== undefined ? Setting?.MaxLength : null\"\r\n [style.direction]=\"Setting?.IsLtr === true ? 'ltr' : 'rtl'\"\r\n [showDropdownButton]=\"false\"\r\n [dropdownValues]=\"(suggestionList$ | async) || []\"\r\n [includes]=\"true\"\r\n [highlighting]=\"false\"\r\n [ngModel]=\"value || ''\"\r\n (inputTextChange)=\"onValueChange($event)\"\r\n>\r\n</fd-combobox>\r\n", styles: [":host{display:block;height:100%}fd-combobox{width:100%}fd-combobox ::ng-deep fd-popover{width:100%}fd-combobox ::ng-deep .fd-input-group--control{margin:.1875rem 0!important;margin-bottom:.25rem rem!important}fd-combobox ::ng-deep .fd-input-group--control input{padding-right:.625rem!important;padding-left:.625rem!important}\n"], dependencies: [{ kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4$8.ComboboxComponent, selector: "fd-combobox", inputs: ["comboboxId", "inputId", "ariaLabel", "ariaLabelledBy", "required", "dropdownValues", "filterFn", "disabled", "placeholder", "isSearch", "glyph", "glyphFont", "showClearButton", "triggers", "closeOnOutsideClick", "openOnKeyboardEvent", "state", "itemTemplate", "groupFn", "maxHeight", "dropDownMaxWidthPx", "noDropDownMaxWidth", "width", "searchFn", "highlighting", "closeOnSelect", "fillOnSelect", "autoComplete", "fillControlMode", "communicateByObject", "displayFn", "buttonFocusable", "clearButtonFocusable", "readOnly", "mobile", "mobileConfig", "showDropdownButton", "includes", "title", "byline", "tabOutStrategy"], outputs: ["itemClicked", "openChange", "inputTextChange"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
10412
10417
  }
10413
10418
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UiTextFieldAutoCompleteComponent, decorators: [{
10414
10419
  type: Component,
@@ -10647,7 +10652,7 @@ class UlMsgBoxAdapterComponent extends BaseComponent {
10647
10652
  return '';
10648
10653
  }
10649
10654
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UlMsgBoxAdapterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10650
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: UlMsgBoxAdapterComponent, isStandalone: false, selector: "bsu-ul-msg-box-adapter", inputs: { context: "context" }, viewQueries: [{ propertyName: "templateRef", first: true, predicate: ["templateRef"], descendants: true }, { propertyName: "waitRef", first: true, predicate: ["waitRef"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template #waitRef [fdDialogTemplate] let-dialog let-dialogConfig=\"dialogConfig\">\r\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\r\n <fd-dialog-body\r\n style=\"background-color: transparent\"\r\n class=\"tw-flex tw-flex-col tw-items-center tw-justify-center\"\r\n >\r\n @if(dialog.data && dialog.data.title){\r\n <div\r\n _ngcontent-ng-c678863778=\"\"\r\n class=\"tw-flex tw-flex-col tw-justify-start tw-items-center tw-p-4\"\r\n style=\"\r\n color: white;\r\n min-width: 210px;\r\n width: auto;\r\n height: 160px;\r\n background: white;\r\n position: relative;\r\n gap: 1rem;\r\n border-radius: 0.625rem;\r\n \"\r\n >\r\n <h3 fd-title *ngIf=\"dialog.data?.title\">{{ dialog.data?.title }}</h3>\r\n <fd-text *ngIf=\"dialog.data?.msg\" [text]=\"dialog.data?.msg\" [whitespaces]=\"true\"></fd-text>\r\n <div style=\"position: relative; width: 100%\">\r\n <bsu-mask></bsu-mask>\r\n </div>\r\n </div>\r\n }@else {\r\n <bsu-mask></bsu-mask>\r\n }\r\n </fd-dialog-body>\r\n </fd-dialog>\r\n</ng-template>\r\n\r\n<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #templateRef>\r\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\r\n <fd-dialog-header>\r\n <h1 fd-title>\r\n {{ dialogConfig.title }}\r\n </h1>\r\n </fd-dialog-header>\r\n\r\n <fd-dialog-body style=\"padding: 15px; max-width: 480px\">\r\n <div style=\"min-height: 125px\">\r\n <label fd-label [type]=\"dialogConfig.iconType\" [innerHtml]=\"dialogConfig.msg\"> </label>\r\n </div>\r\n </fd-dialog-body>\r\n\r\n <fd-dialog-footer>\r\n @for (btn of dialogConfig.buttons | keyvalue: keepOrder; track btn) {\r\n <fd-dialog-footer-button>\r\n <button\r\n fd-button\r\n fd-dialog-decisive-button\r\n style=\"padding: 0 0.825rem\"\r\n [fdType]=\"\r\n btn.key === 'ok' || btn.key === 'yes'\r\n ? 'emphasized'\r\n : btn.key === 'no'\r\n ? 'standard'\r\n : 'transparent'\r\n \"\r\n [label]=\"btn.key + '' | titlecase | bbbTranslate\"\r\n (click)=\"onButton(btn, dialog, dialogConfig)\"\r\n ></button>\r\n </fd-dialog-footer-button>\r\n }\r\n </fd-dialog-footer>\r\n </fd-dialog>\r\n</ng-template>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i3$3.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i3$3.DialogBodyComponent, selector: "fd-dialog-body", inputs: ["disablePaddings"] }, { kind: "component", type: i3$3.DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: i3$3.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "directive", type: i3$3.DialogTemplateDirective, selector: "[fdDialogTemplate]", inputs: ["fdDialogTemplateConfig"] }, { kind: "component", type: i5.TitleComponent, selector: "[fd-title], [fdTitle]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "component", type: i5$2.TextComponent, selector: "fd-text", inputs: ["text", "maxLines", "whitespaces", "hyphenation", "expandable", "isCollapsed"], outputs: ["isCollapsedChange"] }, { kind: "component", type: MaskComponent, selector: "bsu-mask", inputs: ["size", "top"] }, { kind: "pipe", type: i1.TitleCasePipe, name: "titlecase" }, { kind: "pipe", type: i1.KeyValuePipe, name: "keyvalue" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
10655
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: UlMsgBoxAdapterComponent, isStandalone: false, selector: "bsu-ul-msg-box-adapter", inputs: { context: "context" }, viewQueries: [{ propertyName: "templateRef", first: true, predicate: ["templateRef"], descendants: true }, { propertyName: "waitRef", first: true, predicate: ["waitRef"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template #waitRef [fdDialogTemplate] let-dialog let-dialogConfig=\"dialogConfig\">\r\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\r\n <fd-dialog-body\r\n style=\"background-color: transparent\"\r\n class=\"tw-flex tw-flex-col tw-items-center tw-justify-center\"\r\n >\r\n @if(dialog.data && dialog.data.title){\r\n <div\r\n _ngcontent-ng-c678863778=\"\"\r\n class=\"tw-flex tw-flex-col tw-justify-start tw-items-center tw-p-4\"\r\n style=\"\r\n color: white;\r\n min-width: 210px;\r\n width: auto;\r\n height: 160px;\r\n background: white;\r\n position: relative;\r\n gap: 1rem;\r\n border-radius: 0.625rem;\r\n \"\r\n >\r\n <h3 fd-title *ngIf=\"dialog.data?.title\">{{ dialog.data?.title }}</h3>\r\n <fd-text *ngIf=\"dialog.data?.msg\" [text]=\"dialog.data?.msg\" [whitespaces]=\"true\"></fd-text>\r\n <div style=\"position: relative; width: 100%\">\r\n <bsu-mask></bsu-mask>\r\n </div>\r\n </div>\r\n }@else {\r\n <bsu-mask></bsu-mask>\r\n }\r\n </fd-dialog-body>\r\n </fd-dialog>\r\n</ng-template>\r\n\r\n<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #templateRef>\r\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\r\n <fd-dialog-header>\r\n <h1 fd-title>\r\n {{ dialogConfig.title }}\r\n </h1>\r\n </fd-dialog-header>\r\n\r\n <fd-dialog-body style=\"padding: 15px; max-width: 480px\">\r\n <div style=\"min-height: 125px\">\r\n <label fd-label [type]=\"dialogConfig.iconType\" [innerHtml]=\"dialogConfig.msg\"> </label>\r\n </div>\r\n </fd-dialog-body>\r\n\r\n <fd-dialog-footer>\r\n @for (btn of dialogConfig.buttons | keyvalue: keepOrder; track btn) {\r\n <fd-dialog-footer-button>\r\n <button\r\n fd-button\r\n fd-dialog-decisive-button\r\n style=\"padding: 0 0.825rem\"\r\n [fdType]=\"\r\n btn.key === 'ok' || btn.key === 'yes'\r\n ? 'emphasized'\r\n : btn.key === 'no'\r\n ? 'standard'\r\n : 'transparent'\r\n \"\r\n [label]=\"btn.key + '' | titlecase | bbbTranslate\"\r\n (click)=\"onButton(btn, dialog, dialogConfig)\"\r\n ></button>\r\n </fd-dialog-footer-button>\r\n }\r\n </fd-dialog-footer>\r\n </fd-dialog>\r\n</ng-template>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i3$3.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i3$3.DialogBodyComponent, selector: "fd-dialog-body", inputs: ["disablePaddings"] }, { kind: "component", type: i3$3.DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: i3$3.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "directive", type: i3$3.DialogTemplateDirective, selector: "[fdDialogTemplate]", inputs: ["fdDialogTemplateConfig"] }, { kind: "component", type: i5.TitleComponent, selector: "[fd-title], [fdTitle]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "component", type: i5$3.TextComponent, selector: "fd-text", inputs: ["text", "maxLines", "whitespaces", "hyphenation", "expandable", "isCollapsed"], outputs: ["isCollapsedChange"] }, { kind: "component", type: MaskComponent, selector: "bsu-mask", inputs: ["size", "top"] }, { kind: "pipe", type: i1.TitleCasePipe, name: "titlecase" }, { kind: "pipe", type: i1.KeyValuePipe, name: "keyvalue" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
10651
10656
  }
10652
10657
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UlMsgBoxAdapterComponent, decorators: [{
10653
10658
  type: Component,
@@ -10778,11 +10783,11 @@ class LyVerticalLayoutComponent extends LayoutItemBaseComponent {
10778
10783
  this.layoutService.removeHorizontal(this.id);
10779
10784
  }
10780
10785
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: LyVerticalLayoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10781
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: LyVerticalLayoutComponent, isStandalone: false, selector: "bsu-ly-vertical-layout", outputs: { events: "events" }, host: { properties: { "style.flex": "this.flex", "style.flex-wrap": "this.flexWrap", "attr.groupname": "this.groupName" } }, viewQueries: [{ propertyName: "viewRef", first: true, predicate: ["viewRefTemplate"], descendants: true, read: ViewContainerRef, static: true }], usesInheritance: true, ngImport: i0, template: "@for (item of config | filterToolbarControl; track item) { @switch (item.xtype) { @case ('Ly.LayoutTabPanel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-tab-container' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-tab-container [config]=\"item\"></bsu-ly-tab-container> -->\r\n} @case ('Ly.LayoutPanel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-layout-panel' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-layout-panel [config]=\"item\"></bsu-ly-layout-panel> -->\r\n} @case ('Ly.LayoutContainer') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n name: 'LyLayoutContainerComponent',\r\n selector: 'bsu-ly-layout-container'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-layout-container [config]=\"item\"></bsu-ly-layout-container> -->\r\n} @case ('Ly.EmptySpace') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n module: item.Type === 'SplitterItem' ? 'BarsaNovinRayCore' : '',\r\n name: item.Type === 'SplitterItem' ? 'SplitterComponent' : 'LyEmptySpaceComponent',\r\n selector: item.Type === 'SplitterItem' ? 'bnrc-splitter' : 'bsu-ly-empty-space'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-empty-space [config]=\"item\"></bsu-ly-empty-space> -->\r\n} @case ('Ly.SimpleLabel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LySimpleLabelComponent', selector: 'bsu-ly-simple-label' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-simple-label [config]=\"item\"></bsu-ly-simple-label> -->\r\n} @case ('Ly.LayoutLine') {\r\n<ng-container\r\n *ngTemplateOutlet=\"dynamicLayout; context: { $implicit: item, name: 'LyLineComponent', selector: 'bsu-ly-line' }\"\r\n></ng-container>\r\n<!-- <bsu-ly-line [isVertical]=\"item.IsVertical\"></bsu-ly-line> -->\r\n} @case ('Ly.LayoutJoin') { @if (item.Type === 'HorizontalJoin') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-horizontal-layout',\r\n name: 'LyLayoutHorizontalComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-horizontal-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-horizontal-layout> -->\r\n} @else {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-vertical-layout',\r\n name: 'LyLayoutVerticalComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-vertical-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-vertical-layout> -->\r\n} } @case ('Ly.LayoutControl') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-layout-control',\r\n name: 'LayoutControlComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-layout-control [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-layout-control> -->\r\n} } }\r\n<ng-template #dynamicLayout let-config let-selector=\"selector\" let-name=\"name\">\r\n <bnrc-dynamic-layout\r\n [config]=\"config\"\r\n [selector]=\"selector\"\r\n [name]=\"name\"\r\n [module]=\"'BarsaSapUi'\"\r\n [moduleFileName]=\"'BarsaSapUi'\"\r\n [maxLabelWidth]=\"maxLabelWidth\"\r\n (events)=\"events.emit($event)\"\r\n >\r\n </bnrc-dynamic-layout>\r\n</ng-template>\r\n", styles: [":host{display:flex;flex-direction:column}:host ::ng-deep>bsu-ly-layout-panel:not(:first-of-type){margin-top:.5rem}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.DynamicLayoutComponent, selector: "bnrc-dynamic-layout", inputs: ["selector", "module", "name", "parameters", "moduleFileName", "flex", "config", "maxLabelWidth", "hasHorizontalText", "isSearchPanel"] }, { kind: "pipe", type: i2.FilterToolbarControlPipe, name: "filterToolbarControl" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
10786
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: LyVerticalLayoutComponent, isStandalone: false, selector: "bsu-ly-vertical-layout", outputs: { events: "events" }, host: { properties: { "style.flex": "this.flex", "style.flex-wrap": "this.flexWrap", "attr.groupname": "this.groupName" } }, viewQueries: [{ propertyName: "viewRef", first: true, predicate: ["viewRefTemplate"], descendants: true, read: ViewContainerRef, static: true }], usesInheritance: true, ngImport: i0, template: "@for (item of config | filterToolbarControl; track item.id) { @switch (item.xtype) { @case ('Ly.LayoutTabPanel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-tab-container' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-tab-container [config]=\"item\"></bsu-ly-tab-container> -->\r\n} @case ('Ly.LayoutPanel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-layout-panel' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-layout-panel [config]=\"item\"></bsu-ly-layout-panel> -->\r\n} @case ('Ly.LayoutContainer') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n name: 'LyLayoutContainerComponent',\r\n selector: 'bsu-ly-layout-container'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-layout-container [config]=\"item\"></bsu-ly-layout-container> -->\r\n} @case ('Ly.EmptySpace') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n module: item.Type === 'SplitterItem' ? 'BarsaNovinRayCore' : '',\r\n name: item.Type === 'SplitterItem' ? 'SplitterComponent' : 'LyEmptySpaceComponent',\r\n selector: item.Type === 'SplitterItem' ? 'bnrc-splitter' : 'bsu-ly-empty-space'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-empty-space [config]=\"item\"></bsu-ly-empty-space> -->\r\n} @case ('Ly.SimpleLabel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LySimpleLabelComponent', selector: 'bsu-ly-simple-label' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-simple-label [config]=\"item\"></bsu-ly-simple-label> -->\r\n} @case ('Ly.LayoutLine') {\r\n<ng-container\r\n *ngTemplateOutlet=\"dynamicLayout; context: { $implicit: item, name: 'LyLineComponent', selector: 'bsu-ly-line' }\"\r\n></ng-container>\r\n<!-- <bsu-ly-line [isVertical]=\"item.IsVertical\"></bsu-ly-line> -->\r\n} @case ('Ly.LayoutJoin') { @if (item.Type === 'HorizontalJoin') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-horizontal-layout',\r\n name: 'LyLayoutHorizontalComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-horizontal-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-horizontal-layout> -->\r\n} @else {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-vertical-layout',\r\n name: 'LyLayoutVerticalComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-vertical-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-vertical-layout> -->\r\n} } @case ('Ly.LayoutControl') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-layout-control',\r\n name: 'LayoutControlComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-layout-control [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-layout-control> -->\r\n} } }\r\n<ng-template #dynamicLayout let-config let-selector=\"selector\" let-name=\"name\">\r\n <bnrc-dynamic-layout\r\n [config]=\"config\"\r\n [selector]=\"selector\"\r\n [name]=\"name\"\r\n [module]=\"'BarsaSapUi'\"\r\n [moduleFileName]=\"'BarsaSapUi'\"\r\n [maxLabelWidth]=\"maxLabelWidth\"\r\n (events)=\"events.emit($event)\"\r\n >\r\n </bnrc-dynamic-layout>\r\n</ng-template>\r\n", styles: [":host{display:flex;flex-direction:column}:host ::ng-deep>bsu-ly-layout-panel:not(:first-of-type){margin-top:.5rem}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.DynamicLayoutComponent, selector: "bnrc-dynamic-layout", inputs: ["selector", "module", "name", "parameters", "moduleFileName", "flex", "config", "maxLabelWidth", "hasHorizontalText", "isSearchPanel"] }, { kind: "pipe", type: i2.FilterToolbarControlPipe, name: "filterToolbarControl" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
10782
10787
  }
10783
10788
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: LyVerticalLayoutComponent, decorators: [{
10784
10789
  type: Component,
10785
- args: [{ selector: 'bsu-ly-vertical-layout', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "@for (item of config | filterToolbarControl; track item) { @switch (item.xtype) { @case ('Ly.LayoutTabPanel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-tab-container' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-tab-container [config]=\"item\"></bsu-ly-tab-container> -->\r\n} @case ('Ly.LayoutPanel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-layout-panel' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-layout-panel [config]=\"item\"></bsu-ly-layout-panel> -->\r\n} @case ('Ly.LayoutContainer') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n name: 'LyLayoutContainerComponent',\r\n selector: 'bsu-ly-layout-container'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-layout-container [config]=\"item\"></bsu-ly-layout-container> -->\r\n} @case ('Ly.EmptySpace') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n module: item.Type === 'SplitterItem' ? 'BarsaNovinRayCore' : '',\r\n name: item.Type === 'SplitterItem' ? 'SplitterComponent' : 'LyEmptySpaceComponent',\r\n selector: item.Type === 'SplitterItem' ? 'bnrc-splitter' : 'bsu-ly-empty-space'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-empty-space [config]=\"item\"></bsu-ly-empty-space> -->\r\n} @case ('Ly.SimpleLabel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LySimpleLabelComponent', selector: 'bsu-ly-simple-label' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-simple-label [config]=\"item\"></bsu-ly-simple-label> -->\r\n} @case ('Ly.LayoutLine') {\r\n<ng-container\r\n *ngTemplateOutlet=\"dynamicLayout; context: { $implicit: item, name: 'LyLineComponent', selector: 'bsu-ly-line' }\"\r\n></ng-container>\r\n<!-- <bsu-ly-line [isVertical]=\"item.IsVertical\"></bsu-ly-line> -->\r\n} @case ('Ly.LayoutJoin') { @if (item.Type === 'HorizontalJoin') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-horizontal-layout',\r\n name: 'LyLayoutHorizontalComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-horizontal-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-horizontal-layout> -->\r\n} @else {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-vertical-layout',\r\n name: 'LyLayoutVerticalComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-vertical-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-vertical-layout> -->\r\n} } @case ('Ly.LayoutControl') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-layout-control',\r\n name: 'LayoutControlComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-layout-control [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-layout-control> -->\r\n} } }\r\n<ng-template #dynamicLayout let-config let-selector=\"selector\" let-name=\"name\">\r\n <bnrc-dynamic-layout\r\n [config]=\"config\"\r\n [selector]=\"selector\"\r\n [name]=\"name\"\r\n [module]=\"'BarsaSapUi'\"\r\n [moduleFileName]=\"'BarsaSapUi'\"\r\n [maxLabelWidth]=\"maxLabelWidth\"\r\n (events)=\"events.emit($event)\"\r\n >\r\n </bnrc-dynamic-layout>\r\n</ng-template>\r\n", styles: [":host{display:flex;flex-direction:column}:host ::ng-deep>bsu-ly-layout-panel:not(:first-of-type){margin-top:.5rem}\n"] }]
10790
+ args: [{ selector: 'bsu-ly-vertical-layout', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "@for (item of config | filterToolbarControl; track item.id) { @switch (item.xtype) { @case ('Ly.LayoutTabPanel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-tab-container' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-tab-container [config]=\"item\"></bsu-ly-tab-container> -->\r\n} @case ('Ly.LayoutPanel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-layout-panel' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-layout-panel [config]=\"item\"></bsu-ly-layout-panel> -->\r\n} @case ('Ly.LayoutContainer') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n name: 'LyLayoutContainerComponent',\r\n selector: 'bsu-ly-layout-container'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-layout-container [config]=\"item\"></bsu-ly-layout-container> -->\r\n} @case ('Ly.EmptySpace') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n module: item.Type === 'SplitterItem' ? 'BarsaNovinRayCore' : '',\r\n name: item.Type === 'SplitterItem' ? 'SplitterComponent' : 'LyEmptySpaceComponent',\r\n selector: item.Type === 'SplitterItem' ? 'bnrc-splitter' : 'bsu-ly-empty-space'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-empty-space [config]=\"item\"></bsu-ly-empty-space> -->\r\n} @case ('Ly.SimpleLabel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LySimpleLabelComponent', selector: 'bsu-ly-simple-label' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-simple-label [config]=\"item\"></bsu-ly-simple-label> -->\r\n} @case ('Ly.LayoutLine') {\r\n<ng-container\r\n *ngTemplateOutlet=\"dynamicLayout; context: { $implicit: item, name: 'LyLineComponent', selector: 'bsu-ly-line' }\"\r\n></ng-container>\r\n<!-- <bsu-ly-line [isVertical]=\"item.IsVertical\"></bsu-ly-line> -->\r\n} @case ('Ly.LayoutJoin') { @if (item.Type === 'HorizontalJoin') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-horizontal-layout',\r\n name: 'LyLayoutHorizontalComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-horizontal-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-horizontal-layout> -->\r\n} @else {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-vertical-layout',\r\n name: 'LyLayoutVerticalComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-vertical-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-vertical-layout> -->\r\n} } @case ('Ly.LayoutControl') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-layout-control',\r\n name: 'LayoutControlComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-layout-control [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-layout-control> -->\r\n} } }\r\n<ng-template #dynamicLayout let-config let-selector=\"selector\" let-name=\"name\">\r\n <bnrc-dynamic-layout\r\n [config]=\"config\"\r\n [selector]=\"selector\"\r\n [name]=\"name\"\r\n [module]=\"'BarsaSapUi'\"\r\n [moduleFileName]=\"'BarsaSapUi'\"\r\n [maxLabelWidth]=\"maxLabelWidth\"\r\n (events)=\"events.emit($event)\"\r\n >\r\n </bnrc-dynamic-layout>\r\n</ng-template>\r\n", styles: [":host{display:flex;flex-direction:column}:host ::ng-deep>bsu-ly-layout-panel:not(:first-of-type){margin-top:.5rem}\n"] }]
10786
10791
  }], ctorParameters: () => [], propDecorators: { flex: [{
10787
10792
  type: HostBinding,
10788
10793
  args: ['style.flex']
@@ -10837,11 +10842,11 @@ class LyHorizontalLayoutComponent extends LayoutItemBaseComponent {
10837
10842
  }
10838
10843
  }
10839
10844
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: LyHorizontalLayoutComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
10840
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: LyHorizontalLayoutComponent, isStandalone: false, selector: "bsu-ly-horizontal-layout", inputs: { renderItems: "renderItems" }, outputs: { events: "events" }, host: { properties: { "style.flex": "this.flex", "class.horizontal-layout": "this.horizontalLayoutClass", "class.wrap-content": "this.wrapContent", "style.opacity": "this.opacity", "attr.ismobile": "this.isMobile", "attr.groupname": "this.groupName", "attr.rowmode": "this.alwaysRowMode" } }, viewQueries: [{ propertyName: "viewRef", first: true, predicate: ["viewRefTemplate"], descendants: true, read: ViewContainerRef, static: true }], usesInheritance: true, ngImport: i0, template: "@for (item of config | filterToolbarControl; track item) { @switch (item.xtype) { @case ('Ly.LayoutTabPanel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-tab-container' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-tab-container [config]=\"item\"></bsu-ly-tab-container> -->\r\n} @case ('Ly.LayoutPanel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-layout-panel' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-layout-panel [config]=\"item\"></bsu-ly-layout-panel> -->\r\n} @case ('Ly.LayoutContainer') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n name: 'LyLayoutContainerComponent',\r\n selector: 'bsu-ly-layout-container'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-layout-container [config]=\"item\"></bsu-ly-layout-container> -->\r\n} @case ('Ly.EmptySpace') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n module:item.Type === 'SplitterItem' ? 'BarsaNovinRayCore' :'',\r\n name: item.Type === 'SplitterItem' ? 'SplitterComponent' : 'LyEmptySpaceComponent',\r\n selector: item.Type === 'SplitterItem' ? 'bnrc-splitter' : 'bsu-ly-empty-space'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-empty-space [config]=\"item\"></bsu-ly-empty-space> -->\r\n} @case ('Ly.SimpleLabel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LySimpleLabelComponent', selector: 'bsu-ly-simple-label' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-simple-label [config]=\"item\"></bsu-ly-simple-label> -->\r\n} @case ('Ly.LayoutLine') {\r\n<ng-container\r\n *ngTemplateOutlet=\"dynamicLayout; context: { $implicit: item, name: 'LyLineComponent', selector: 'bsu-ly-line' }\"\r\n></ng-container>\r\n<!-- <bsu-ly-line [isVertical]=\"item.IsVertical\"></bsu-ly-line> -->\r\n} @case ('Ly.LayoutJoin') { @if (item.Type === 'HorizontalJoin') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-horizontal-layout',\r\n name: 'LyLayoutHorizontalComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-horizontal-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-horizontal-layout> -->\r\n} @else {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-vertical-layout',\r\n name: 'LyLayoutVerticalComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-vertical-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-vertical-layout> -->\r\n} } @case ('Ly.LayoutControl') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-layout-control',\r\n name: 'LayoutControlComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-layout-control [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-layout-control> -->\r\n} } }\r\n<ng-template #dynamicLayout let-config let-selector=\"selector\" let-name=\"name\" let-module=\"module\">\r\n <bnrc-dynamic-layout\r\n [config]=\"config\"\r\n [selector]=\"selector\"\r\n [name]=\"name\"\r\n [module]=\"module || 'BarsaSapUi'\"\r\n [moduleFileName]=\"'BarsaSapUi'\"\r\n [maxLabelWidth]=\"maxLabelWidth\"\r\n [flex]=\"config.Bounds.width\"\r\n [hasHorizontalText]=\"hasHorizontalText\"\r\n [isSearchPanel]=\"isSearchPanel\"\r\n (events)=\"events.emit($event)\"\r\n >\r\n </bnrc-dynamic-layout>\r\n</ng-template>\r\n", styles: ["@charset \"UTF-8\";:host{display:var(--horizontal-display);align-items:flex-start;justify-content:flex-start;flex-wrap:wrap}@media (max-width: 575px){:host{grid-template-columns:var(--horizontal-grid-templateSm)}}@media (min-width: 576px){:host{grid-template-columns:var(--horizontal-grid-templateMd)}}@media (min-width: 768px){:host{grid-template-columns:var(--horizontal-grid-templateL)}}@media (min-width: 992px){:host{grid-template-columns:var(--horizontal-grid-templateL)}}@media (min-width: 1200px){:host{grid-template-columns:var(--horizontal-grid-templateXl)}}@media (min-width: 1400px){:host{grid-template-columns:var(--horizontal-grid-templateXxl)}}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.DynamicLayoutComponent, selector: "bnrc-dynamic-layout", inputs: ["selector", "module", "name", "parameters", "moduleFileName", "flex", "config", "maxLabelWidth", "hasHorizontalText", "isSearchPanel"] }, { kind: "pipe", type: i2.FilterToolbarControlPipe, name: "filterToolbarControl" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
10845
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: LyHorizontalLayoutComponent, isStandalone: false, selector: "bsu-ly-horizontal-layout", inputs: { renderItems: "renderItems" }, outputs: { events: "events" }, host: { properties: { "style.flex": "this.flex", "class.horizontal-layout": "this.horizontalLayoutClass", "class.wrap-content": "this.wrapContent", "style.opacity": "this.opacity", "attr.ismobile": "this.isMobile", "attr.groupname": "this.groupName", "attr.rowmode": "this.alwaysRowMode" } }, viewQueries: [{ propertyName: "viewRef", first: true, predicate: ["viewRefTemplate"], descendants: true, read: ViewContainerRef, static: true }], usesInheritance: true, ngImport: i0, template: "@for (item of config | filterToolbarControl; track item.id) { @switch (item.xtype) { @case ('Ly.LayoutTabPanel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-tab-container' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-tab-container [config]=\"item\"></bsu-ly-tab-container> -->\r\n} @case ('Ly.LayoutPanel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-layout-panel' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-layout-panel [config]=\"item\"></bsu-ly-layout-panel> -->\r\n} @case ('Ly.LayoutContainer') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n name: 'LyLayoutContainerComponent',\r\n selector: 'bsu-ly-layout-container'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-layout-container [config]=\"item\"></bsu-ly-layout-container> -->\r\n} @case ('Ly.EmptySpace') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n module:item.Type === 'SplitterItem' ? 'BarsaNovinRayCore' :'',\r\n name: item.Type === 'SplitterItem' ? 'SplitterComponent' : 'LyEmptySpaceComponent',\r\n selector: item.Type === 'SplitterItem' ? 'bnrc-splitter' : 'bsu-ly-empty-space'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-empty-space [config]=\"item\"></bsu-ly-empty-space> -->\r\n} @case ('Ly.SimpleLabel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LySimpleLabelComponent', selector: 'bsu-ly-simple-label' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-simple-label [config]=\"item\"></bsu-ly-simple-label> -->\r\n} @case ('Ly.LayoutLine') {\r\n<ng-container\r\n *ngTemplateOutlet=\"dynamicLayout; context: { $implicit: item, name: 'LyLineComponent', selector: 'bsu-ly-line' }\"\r\n></ng-container>\r\n<!-- <bsu-ly-line [isVertical]=\"item.IsVertical\"></bsu-ly-line> -->\r\n} @case ('Ly.LayoutJoin') { @if (item.Type === 'HorizontalJoin') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-horizontal-layout',\r\n name: 'LyLayoutHorizontalComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-horizontal-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-horizontal-layout> -->\r\n} @else {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-vertical-layout',\r\n name: 'LyLayoutVerticalComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-vertical-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-vertical-layout> -->\r\n} } @case ('Ly.LayoutControl') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-layout-control',\r\n name: 'LayoutControlComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-layout-control [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-layout-control> -->\r\n} } }\r\n<ng-template #dynamicLayout let-config let-selector=\"selector\" let-name=\"name\" let-module=\"module\">\r\n <bnrc-dynamic-layout\r\n [config]=\"config\"\r\n [selector]=\"selector\"\r\n [name]=\"name\"\r\n [module]=\"module || 'BarsaSapUi'\"\r\n [moduleFileName]=\"'BarsaSapUi'\"\r\n [maxLabelWidth]=\"maxLabelWidth\"\r\n [flex]=\"config.Bounds.width\"\r\n [hasHorizontalText]=\"hasHorizontalText\"\r\n [isSearchPanel]=\"isSearchPanel\"\r\n (events)=\"events.emit($event)\"\r\n >\r\n </bnrc-dynamic-layout>\r\n</ng-template>\r\n", styles: ["@charset \"UTF-8\";:host{display:var(--horizontal-display);align-items:flex-start;justify-content:flex-start;flex-wrap:wrap}@media (max-width: 575px){:host{grid-template-columns:var(--horizontal-grid-templateSm)}}@media (min-width: 576px){:host{grid-template-columns:var(--horizontal-grid-templateMd)}}@media (min-width: 768px){:host{grid-template-columns:var(--horizontal-grid-templateL)}}@media (min-width: 992px){:host{grid-template-columns:var(--horizontal-grid-templateL)}}@media (min-width: 1200px){:host{grid-template-columns:var(--horizontal-grid-templateXl)}}@media (min-width: 1400px){:host{grid-template-columns:var(--horizontal-grid-templateXxl)}}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.DynamicLayoutComponent, selector: "bnrc-dynamic-layout", inputs: ["selector", "module", "name", "parameters", "moduleFileName", "flex", "config", "maxLabelWidth", "hasHorizontalText", "isSearchPanel"] }, { kind: "pipe", type: i2.FilterToolbarControlPipe, name: "filterToolbarControl" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
10841
10846
  }
10842
10847
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: LyHorizontalLayoutComponent, decorators: [{
10843
10848
  type: Component,
10844
- args: [{ selector: 'bsu-ly-horizontal-layout', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "@for (item of config | filterToolbarControl; track item) { @switch (item.xtype) { @case ('Ly.LayoutTabPanel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-tab-container' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-tab-container [config]=\"item\"></bsu-ly-tab-container> -->\r\n} @case ('Ly.LayoutPanel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-layout-panel' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-layout-panel [config]=\"item\"></bsu-ly-layout-panel> -->\r\n} @case ('Ly.LayoutContainer') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n name: 'LyLayoutContainerComponent',\r\n selector: 'bsu-ly-layout-container'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-layout-container [config]=\"item\"></bsu-ly-layout-container> -->\r\n} @case ('Ly.EmptySpace') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n module:item.Type === 'SplitterItem' ? 'BarsaNovinRayCore' :'',\r\n name: item.Type === 'SplitterItem' ? 'SplitterComponent' : 'LyEmptySpaceComponent',\r\n selector: item.Type === 'SplitterItem' ? 'bnrc-splitter' : 'bsu-ly-empty-space'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-empty-space [config]=\"item\"></bsu-ly-empty-space> -->\r\n} @case ('Ly.SimpleLabel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LySimpleLabelComponent', selector: 'bsu-ly-simple-label' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-simple-label [config]=\"item\"></bsu-ly-simple-label> -->\r\n} @case ('Ly.LayoutLine') {\r\n<ng-container\r\n *ngTemplateOutlet=\"dynamicLayout; context: { $implicit: item, name: 'LyLineComponent', selector: 'bsu-ly-line' }\"\r\n></ng-container>\r\n<!-- <bsu-ly-line [isVertical]=\"item.IsVertical\"></bsu-ly-line> -->\r\n} @case ('Ly.LayoutJoin') { @if (item.Type === 'HorizontalJoin') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-horizontal-layout',\r\n name: 'LyLayoutHorizontalComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-horizontal-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-horizontal-layout> -->\r\n} @else {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-vertical-layout',\r\n name: 'LyLayoutVerticalComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-vertical-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-vertical-layout> -->\r\n} } @case ('Ly.LayoutControl') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-layout-control',\r\n name: 'LayoutControlComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-layout-control [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-layout-control> -->\r\n} } }\r\n<ng-template #dynamicLayout let-config let-selector=\"selector\" let-name=\"name\" let-module=\"module\">\r\n <bnrc-dynamic-layout\r\n [config]=\"config\"\r\n [selector]=\"selector\"\r\n [name]=\"name\"\r\n [module]=\"module || 'BarsaSapUi'\"\r\n [moduleFileName]=\"'BarsaSapUi'\"\r\n [maxLabelWidth]=\"maxLabelWidth\"\r\n [flex]=\"config.Bounds.width\"\r\n [hasHorizontalText]=\"hasHorizontalText\"\r\n [isSearchPanel]=\"isSearchPanel\"\r\n (events)=\"events.emit($event)\"\r\n >\r\n </bnrc-dynamic-layout>\r\n</ng-template>\r\n", styles: ["@charset \"UTF-8\";:host{display:var(--horizontal-display);align-items:flex-start;justify-content:flex-start;flex-wrap:wrap}@media (max-width: 575px){:host{grid-template-columns:var(--horizontal-grid-templateSm)}}@media (min-width: 576px){:host{grid-template-columns:var(--horizontal-grid-templateMd)}}@media (min-width: 768px){:host{grid-template-columns:var(--horizontal-grid-templateL)}}@media (min-width: 992px){:host{grid-template-columns:var(--horizontal-grid-templateL)}}@media (min-width: 1200px){:host{grid-template-columns:var(--horizontal-grid-templateXl)}}@media (min-width: 1400px){:host{grid-template-columns:var(--horizontal-grid-templateXxl)}}\n"] }]
10849
+ args: [{ selector: 'bsu-ly-horizontal-layout', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "@for (item of config | filterToolbarControl; track item.id) { @switch (item.xtype) { @case ('Ly.LayoutTabPanel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-tab-container' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-tab-container [config]=\"item\"></bsu-ly-tab-container> -->\r\n} @case ('Ly.LayoutPanel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLayoutPanelComponent', selector: 'bsu-ly-layout-panel' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-layout-panel [config]=\"item\"></bsu-ly-layout-panel> -->\r\n} @case ('Ly.LayoutContainer') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n name: 'LyLayoutContainerComponent',\r\n selector: 'bsu-ly-layout-container'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-layout-container [config]=\"item\"></bsu-ly-layout-container> -->\r\n} @case ('Ly.EmptySpace') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n module:item.Type === 'SplitterItem' ? 'BarsaNovinRayCore' :'',\r\n name: item.Type === 'SplitterItem' ? 'SplitterComponent' : 'LyEmptySpaceComponent',\r\n selector: item.Type === 'SplitterItem' ? 'bnrc-splitter' : 'bsu-ly-empty-space'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-empty-space [config]=\"item\"></bsu-ly-empty-space> -->\r\n} @case ('Ly.SimpleLabel') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LySimpleLabelComponent', selector: 'bsu-ly-simple-label' }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-simple-label [config]=\"item\"></bsu-ly-simple-label> -->\r\n} @case ('Ly.LayoutLine') {\r\n<ng-container\r\n *ngTemplateOutlet=\"dynamicLayout; context: { $implicit: item, name: 'LyLineComponent', selector: 'bsu-ly-line' }\"\r\n></ng-container>\r\n<!-- <bsu-ly-line [isVertical]=\"item.IsVertical\"></bsu-ly-line> -->\r\n} @case ('Ly.LayoutJoin') { @if (item.Type === 'HorizontalJoin') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-horizontal-layout',\r\n name: 'LyLayoutHorizontalComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-horizontal-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-horizontal-layout> -->\r\n} @else {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-vertical-layout',\r\n name: 'LyLayoutVerticalComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-ly-vertical-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-vertical-layout> -->\r\n} } @case ('Ly.LayoutControl') {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-layout-control',\r\n name: 'LayoutControlComponent'\r\n }\r\n \"\r\n></ng-container>\r\n<!-- <bsu-layout-control [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-layout-control> -->\r\n} } }\r\n<ng-template #dynamicLayout let-config let-selector=\"selector\" let-name=\"name\" let-module=\"module\">\r\n <bnrc-dynamic-layout\r\n [config]=\"config\"\r\n [selector]=\"selector\"\r\n [name]=\"name\"\r\n [module]=\"module || 'BarsaSapUi'\"\r\n [moduleFileName]=\"'BarsaSapUi'\"\r\n [maxLabelWidth]=\"maxLabelWidth\"\r\n [flex]=\"config.Bounds.width\"\r\n [hasHorizontalText]=\"hasHorizontalText\"\r\n [isSearchPanel]=\"isSearchPanel\"\r\n (events)=\"events.emit($event)\"\r\n >\r\n </bnrc-dynamic-layout>\r\n</ng-template>\r\n", styles: ["@charset \"UTF-8\";:host{display:var(--horizontal-display);align-items:flex-start;justify-content:flex-start;flex-wrap:wrap}@media (max-width: 575px){:host{grid-template-columns:var(--horizontal-grid-templateSm)}}@media (min-width: 576px){:host{grid-template-columns:var(--horizontal-grid-templateMd)}}@media (min-width: 768px){:host{grid-template-columns:var(--horizontal-grid-templateL)}}@media (min-width: 992px){:host{grid-template-columns:var(--horizontal-grid-templateL)}}@media (min-width: 1200px){:host{grid-template-columns:var(--horizontal-grid-templateXl)}}@media (min-width: 1400px){:host{grid-template-columns:var(--horizontal-grid-templateXxl)}}\n"] }]
10845
10850
  }], propDecorators: { renderItems: [{
10846
10851
  type: Input
10847
10852
  }], events: [{
@@ -10872,6 +10877,69 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
10872
10877
  args: ['attr.rowmode']
10873
10878
  }] } });
10874
10879
 
10880
+ class FileCardViewerComponent extends BaseComponent {
10881
+ constructor() {
10882
+ super(...arguments);
10883
+ this.openUploader = new EventEmitter();
10884
+ this.rotateMedia = new EventEmitter();
10885
+ this.deleteMedia = new EventEmitter();
10886
+ this.gridColsClass = signal('tw-grid-cols-4');
10887
+ this._renderer2 = inject(Renderer2);
10888
+ this.ResizeRefresh = () => this.onResize();
10889
+ }
10890
+ ngOnInit() {
10891
+ super.ngOnInit();
10892
+ }
10893
+ onRotate(imgEl, media2) {
10894
+ const media = media2;
10895
+ RotateImage(imgEl, media, this._renderer2);
10896
+ this.rotateMedia.emit(media);
10897
+ }
10898
+ onResize() {
10899
+ const width = this._el.nativeElement.offsetWidth;
10900
+ if (width < 500) {
10901
+ this.gridColsClass.set('tw-grid-cols-2');
10902
+ }
10903
+ else if (width < 800) {
10904
+ this.gridColsClass.set('tw-grid-cols-3');
10905
+ }
10906
+ else if (width < 1100) {
10907
+ this.gridColsClass.set('tw-grid-cols-6');
10908
+ }
10909
+ else {
10910
+ this.gridColsClass.set('tw-grid-cols-8');
10911
+ }
10912
+ }
10913
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: FileCardViewerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
10914
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: FileCardViewerComponent, isStandalone: false, selector: "bsu-file-card-viewer", inputs: { mediaData: "mediaData", inDialog: "inDialog", disableOrReadonly: "disableOrReadonly", deviceSize: "deviceSize", uploadingState: "uploadingState", uploader: "uploader", scanMenu: "scanMenu", groupList: "groupList" }, outputs: { openUploader: "openUploader", rotateMedia: "rotateMedia", deleteMedia: "deleteMedia" }, usesInheritance: true, ngImport: i0, template: "@for (groupItem of groupList; track groupItem.Id; let i = $index) {\r\n<fd-panel>\r\n <div fd-panel-title>{{ groupItem.Name }}</div>\r\n <div fd-panel-content class=\"tw-transition-all tw-duration-300\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n cardFiles;\r\n context: {\r\n $implicit: mediaData | picturesByGroupId: groupItem.Id,\r\n groupItem: groupItem,\r\n allFiles: mediaData\r\n }\r\n \"\r\n >\r\n </ng-container>\r\n </div>\r\n</fd-panel>\r\n\r\n} @if(!groupList.length){\r\n<ng-container *ngTemplateOutlet=\"cardFiles; context: { $implicit: mediaData, allFiles: mediaData, groupItem: null }\">\r\n</ng-container>\r\n}\r\n<ng-template #cardFiles let-files let-groupItem=\"groupItem\" let-allFiles=\"allFiles\">\r\n <div resizeHandler [fnResize]=\"ResizeRefresh\">\r\n <div class=\"tw-grid tw-gap-4 tw-transition-all tw-duration-300\" [ngClass]=\"gridColsClass()\">\r\n @for (media of files; track media.Id; let i = $index) {\r\n <div>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n cardTpl;\r\n context: {\r\n $implicit: media,\r\n files: files,\r\n inDialog: inDialog,\r\n index: i,\r\n disableOrReadonly: disableOrReadonly,\r\n allFiles: allFiles\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n } @if (!inDialog && !disableOrReadonly) {\r\n <div>\r\n <ng-container *ngTemplateOutlet=\"newFile; context: { $implicit: groupItem }\"></ng-container>\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template\r\n #cardTpl\r\n let-media\r\n let-groupId=\"groupId\"\r\n let-files=\"files\"\r\n let-allFiles=\"allFiles\"\r\n let-inDialog=\"inDialog\"\r\n let-index=\"index\"\r\n let-disableOrReadonly=\"disableOrReadonly\"\r\n>\r\n <fd-card class=\"media\" [class.inDialog]=\"inDialog\">\r\n <fd-card-content class=\"tw-flex tw-h-32\">\r\n <img class=\"tw-w-full\" imgLazy [imgLazy]=\"media.thumbnailUrl\" [src]=\"media.thumbnailUrl\" #img />\r\n </fd-card-content>\r\n @if (!inDialog) {\r\n <fd-card-footer>\r\n <button\r\n glyph=\"print\"\r\n *fdCardFooterActionItem\r\n fd-button\r\n fdType=\"transparent\"\r\n [files]=\"[media]\"\r\n printFiles\r\n ></button>\r\n <button\r\n glyph=\"full-screen\"\r\n [title]=\"'FullScreen' | bbbTranslate\"\r\n *fdCardFooterActionItem\r\n fd-button\r\n fdType=\"transparent\"\r\n fullscreenFiles\r\n [deviceSize]=\"deviceSize\"\r\n [isImageGallery]=\"true\"\r\n [selectedId]=\"media.Id\"\r\n [files]=\"[media]\"\r\n ></button>\r\n\r\n <button fd-button [glyph]=\"'overflow'\" [fdType]=\"'transparent'\" [fdMenuTrigger]=\"menu\"></button>\r\n <fd-menu #menu>\r\n <li fd-menu-item [files]=\"files\" printFiles>\r\n <a fd-menu-interactive>\r\n <fd-menu-addon position=\"before\" glyph=\"print\"></fd-menu-addon>\r\n <span fd-menu-title>{{ 'Print' | bbbTranslate }} {{ 'All' | bbbTranslate }}</span>\r\n </a>\r\n </li>\r\n <li fd-menu-item [name]=\"media.label\" [src]=\"media.mediaUrl\" saveImage>\r\n <a fd-menu-interactive>\r\n <fd-menu-addon position=\"before\" glyph=\"download\"></fd-menu-addon>\r\n <span fd-menu-title>{{ 'Download' | bbbTranslate }}</span>\r\n </a>\r\n </li>\r\n @if (!disableOrReadonly) {\r\n <li fd-menu-item (click)=\"onRotate(img, media)\">\r\n <a fd-menu-interactive>\r\n <fd-menu-addon position=\"before\" glyph=\"rotate\"></fd-menu-addon>\r\n <span fd-menu-title>{{ 'Rotate' | bbbTranslate }}</span>\r\n </a>\r\n </li>\r\n <li fd-menu-item (click)=\"deleteMedia.emit(media.Id)\">\r\n <a fd-menu-interactive>\r\n <fd-menu-addon position=\"before\" glyph=\"delete\"></fd-menu-addon>\r\n <span fd-menu-title>{{ 'Delete' | bbbTranslate }}</span>\r\n </a>\r\n </li>\r\n <li\r\n fd-menu-item\r\n fullscreenFiles\r\n [deviceSize]=\"deviceSize\"\r\n [isImageGallery]=\"true\" \r\n [files]=\"allFiles\"\r\n >\r\n <a fd-menu-interactive>\r\n <fd-menu-addon position=\"before\" glyph=\"full-screen\"></fd-menu-addon>\r\n <span fd-menu-title>{{ 'FullScreen' | bbbTranslate }} {{ 'All' | bbbTranslate }} </span>\r\n </a>\r\n </li>\r\n }\r\n </fd-menu>\r\n </fd-card-footer>\r\n }\r\n </fd-card>\r\n</ng-template>\r\n<ng-template #newFile let-groupItem>\r\n <div style=\"position: relative; height: 100%\">\r\n <fd-card>\r\n <fd-card-content style=\"display: flex; align-items: center; justify-content: center; min-height: 120px\">\r\n <button\r\n fd-button\r\n glyph=\"add-photo\"\r\n fdType=\"transparent\"\r\n [label]=\"'AttachFile' | bbbTranslate\"\r\n (click)=\"openUploader.emit(groupItem)\"\r\n ></button>\r\n </fd-card-content>\r\n\r\n <fd-card-footer style=\"border-top: 1px solid #ccc\">\r\n <button fd-button [glyph]=\"'overflow'\" [fdType]=\"'transparent'\" [fdMenuTrigger]=\"scanMenu\"></button>\r\n </fd-card-footer>\r\n </fd-card>\r\n @if (uploadingState?.uploading === true) {\r\n <bsu-mask></bsu-mask>\r\n }\r\n </div>\r\n</ng-template>\r\n", styles: [":host{display:flex;gap:.5rem;flex-direction:column}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.ImageLazyDirective, selector: "[imgLazy]", inputs: ["auto", "threshold", "imgLazy"], outputs: ["imageLoaded"] }, { kind: "directive", type: i2.PrintFilesDirective, selector: "[printFiles]", inputs: ["files", "file", "isImageGallery", "component"] }, { kind: "directive", type: i2.SaveImageDirective, selector: "[saveImage]", inputs: ["name", "src"] }, { kind: "directive", type: i2.ResizeHandlerDirective, selector: "[resizeHandler]", inputs: ["fnResize"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i7$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: i7$3.CardContentComponent, selector: "fd-card-content" }, { kind: "component", type: i7$3.CardFooterComponent, selector: "fd-card-footer" }, { kind: "directive", type: i7$3.CardFooterActionItemDirective, selector: "[fdCardFooterActionItem]" }, { kind: "component", type: i5$2.MenuComponent, selector: "fd-menu", inputs: ["mobile", "disabled", "focusTrapped", "focusAutoCapture", "openOnHoverTime", "mobileConfig", "ariaLabel", "ariaLabelledby", "id"], outputs: ["activePath"] }, { kind: "component", type: i5$2.MenuItemComponent, selector: "li[fd-menu-item]", inputs: ["disabled", "itemId", "submenu", "parentSubmenu", "hasSeparator"], outputs: ["onSelect"], exportAs: ["fd-menu-item"] }, { kind: "component", type: i5$2.MenuInteractiveComponent, selector: "[fd-menu-interactive]" }, { kind: "directive", type: i5$2.MenuTitleDirective, selector: "[fd-menu-title]" }, { kind: "component", type: i5$2.MenuAddonDirective, selector: "fd-menu-addon", inputs: ["position", "submenuIndicator", "ariaHidden"] }, { kind: "directive", type: i5$2.MenuTriggerDirective, selector: "[fdMenuTrigger]", inputs: ["fdMenuTrigger"] }, { kind: "component", type: i3$6.PanelComponent, selector: "fd-panel", inputs: ["class", "fixed", "id", "expandId", "expandAriaLabel", "expandAriaLabelledBy", "expanded", "transparent", "noRadius"], outputs: ["expandedChange"] }, { kind: "directive", type: i3$6.PanelContentDirective, selector: "[fd-panel-content]", inputs: ["height", "minHeight", "maxHeight", "ariaLabel", "ariaLabelledBy", "role", "noPadding", "transparent", "id"] }, { kind: "directive", type: i3$6.PanelTitleDirective, selector: "[fd-panel-title]", inputs: ["id"] }, { kind: "component", type: MaskComponent, selector: "bsu-mask", inputs: ["size", "top"] }, { kind: "directive", type: FullscreenFilesDirective, selector: "[fullscreenFiles]", inputs: ["files", "selectedId", "title", "deviceSize", "isImageGallery", "component"] }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: i2.PicturesByGroupIdPipe, name: "picturesByGroupId" }] }); }
10915
+ }
10916
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: FileCardViewerComponent, decorators: [{
10917
+ type: Component,
10918
+ args: [{ selector: 'bsu-file-card-viewer', standalone: false, template: "@for (groupItem of groupList; track groupItem.Id; let i = $index) {\r\n<fd-panel>\r\n <div fd-panel-title>{{ groupItem.Name }}</div>\r\n <div fd-panel-content class=\"tw-transition-all tw-duration-300\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n cardFiles;\r\n context: {\r\n $implicit: mediaData | picturesByGroupId: groupItem.Id,\r\n groupItem: groupItem,\r\n allFiles: mediaData\r\n }\r\n \"\r\n >\r\n </ng-container>\r\n </div>\r\n</fd-panel>\r\n\r\n} @if(!groupList.length){\r\n<ng-container *ngTemplateOutlet=\"cardFiles; context: { $implicit: mediaData, allFiles: mediaData, groupItem: null }\">\r\n</ng-container>\r\n}\r\n<ng-template #cardFiles let-files let-groupItem=\"groupItem\" let-allFiles=\"allFiles\">\r\n <div resizeHandler [fnResize]=\"ResizeRefresh\">\r\n <div class=\"tw-grid tw-gap-4 tw-transition-all tw-duration-300\" [ngClass]=\"gridColsClass()\">\r\n @for (media of files; track media.Id; let i = $index) {\r\n <div>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n cardTpl;\r\n context: {\r\n $implicit: media,\r\n files: files,\r\n inDialog: inDialog,\r\n index: i,\r\n disableOrReadonly: disableOrReadonly,\r\n allFiles: allFiles\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n } @if (!inDialog && !disableOrReadonly) {\r\n <div>\r\n <ng-container *ngTemplateOutlet=\"newFile; context: { $implicit: groupItem }\"></ng-container>\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template\r\n #cardTpl\r\n let-media\r\n let-groupId=\"groupId\"\r\n let-files=\"files\"\r\n let-allFiles=\"allFiles\"\r\n let-inDialog=\"inDialog\"\r\n let-index=\"index\"\r\n let-disableOrReadonly=\"disableOrReadonly\"\r\n>\r\n <fd-card class=\"media\" [class.inDialog]=\"inDialog\">\r\n <fd-card-content class=\"tw-flex tw-h-32\">\r\n <img class=\"tw-w-full\" imgLazy [imgLazy]=\"media.thumbnailUrl\" [src]=\"media.thumbnailUrl\" #img />\r\n </fd-card-content>\r\n @if (!inDialog) {\r\n <fd-card-footer>\r\n <button\r\n glyph=\"print\"\r\n *fdCardFooterActionItem\r\n fd-button\r\n fdType=\"transparent\"\r\n [files]=\"[media]\"\r\n printFiles\r\n ></button>\r\n <button\r\n glyph=\"full-screen\"\r\n [title]=\"'FullScreen' | bbbTranslate\"\r\n *fdCardFooterActionItem\r\n fd-button\r\n fdType=\"transparent\"\r\n fullscreenFiles\r\n [deviceSize]=\"deviceSize\"\r\n [isImageGallery]=\"true\"\r\n [selectedId]=\"media.Id\"\r\n [files]=\"[media]\"\r\n ></button>\r\n\r\n <button fd-button [glyph]=\"'overflow'\" [fdType]=\"'transparent'\" [fdMenuTrigger]=\"menu\"></button>\r\n <fd-menu #menu>\r\n <li fd-menu-item [files]=\"files\" printFiles>\r\n <a fd-menu-interactive>\r\n <fd-menu-addon position=\"before\" glyph=\"print\"></fd-menu-addon>\r\n <span fd-menu-title>{{ 'Print' | bbbTranslate }} {{ 'All' | bbbTranslate }}</span>\r\n </a>\r\n </li>\r\n <li fd-menu-item [name]=\"media.label\" [src]=\"media.mediaUrl\" saveImage>\r\n <a fd-menu-interactive>\r\n <fd-menu-addon position=\"before\" glyph=\"download\"></fd-menu-addon>\r\n <span fd-menu-title>{{ 'Download' | bbbTranslate }}</span>\r\n </a>\r\n </li>\r\n @if (!disableOrReadonly) {\r\n <li fd-menu-item (click)=\"onRotate(img, media)\">\r\n <a fd-menu-interactive>\r\n <fd-menu-addon position=\"before\" glyph=\"rotate\"></fd-menu-addon>\r\n <span fd-menu-title>{{ 'Rotate' | bbbTranslate }}</span>\r\n </a>\r\n </li>\r\n <li fd-menu-item (click)=\"deleteMedia.emit(media.Id)\">\r\n <a fd-menu-interactive>\r\n <fd-menu-addon position=\"before\" glyph=\"delete\"></fd-menu-addon>\r\n <span fd-menu-title>{{ 'Delete' | bbbTranslate }}</span>\r\n </a>\r\n </li>\r\n <li\r\n fd-menu-item\r\n fullscreenFiles\r\n [deviceSize]=\"deviceSize\"\r\n [isImageGallery]=\"true\" \r\n [files]=\"allFiles\"\r\n >\r\n <a fd-menu-interactive>\r\n <fd-menu-addon position=\"before\" glyph=\"full-screen\"></fd-menu-addon>\r\n <span fd-menu-title>{{ 'FullScreen' | bbbTranslate }} {{ 'All' | bbbTranslate }} </span>\r\n </a>\r\n </li>\r\n }\r\n </fd-menu>\r\n </fd-card-footer>\r\n }\r\n </fd-card>\r\n</ng-template>\r\n<ng-template #newFile let-groupItem>\r\n <div style=\"position: relative; height: 100%\">\r\n <fd-card>\r\n <fd-card-content style=\"display: flex; align-items: center; justify-content: center; min-height: 120px\">\r\n <button\r\n fd-button\r\n glyph=\"add-photo\"\r\n fdType=\"transparent\"\r\n [label]=\"'AttachFile' | bbbTranslate\"\r\n (click)=\"openUploader.emit(groupItem)\"\r\n ></button>\r\n </fd-card-content>\r\n\r\n <fd-card-footer style=\"border-top: 1px solid #ccc\">\r\n <button fd-button [glyph]=\"'overflow'\" [fdType]=\"'transparent'\" [fdMenuTrigger]=\"scanMenu\"></button>\r\n </fd-card-footer>\r\n </fd-card>\r\n @if (uploadingState?.uploading === true) {\r\n <bsu-mask></bsu-mask>\r\n }\r\n </div>\r\n</ng-template>\r\n", styles: [":host{display:flex;gap:.5rem;flex-direction:column}\n"] }]
10919
+ }], propDecorators: { mediaData: [{
10920
+ type: Input
10921
+ }], inDialog: [{
10922
+ type: Input
10923
+ }], disableOrReadonly: [{
10924
+ type: Input
10925
+ }], deviceSize: [{
10926
+ type: Input
10927
+ }], uploadingState: [{
10928
+ type: Input
10929
+ }], uploader: [{
10930
+ type: Input
10931
+ }], scanMenu: [{
10932
+ type: Input
10933
+ }], groupList: [{
10934
+ type: Input
10935
+ }], openUploader: [{
10936
+ type: Output
10937
+ }], rotateMedia: [{
10938
+ type: Output
10939
+ }], deleteMedia: [{
10940
+ type: Output
10941
+ }] } });
10942
+
10875
10943
  class UiPicturesInfoComponent extends DeviceInfoFieldBaseComponent {
10876
10944
  constructor() {
10877
10945
  super(...arguments);
@@ -10885,7 +10953,6 @@ class UiPicturesInfoComponent extends DeviceInfoFieldBaseComponent {
10885
10953
  this._uploadService = inject(UploadService, { self: true });
10886
10954
  this._dialogService = inject(DialogService);
10887
10955
  this._fileCountSource = new BehaviorSubject(0);
10888
- this.ResizeRefresh = () => this.onResize();
10889
10956
  }
10890
10957
  get selectedMedia() {
10891
10958
  return this.mediaDataSource.getValue().find((c) => c.Id === this.selectedId);
@@ -10912,33 +10979,18 @@ class UiPicturesInfoComponent extends DeviceInfoFieldBaseComponent {
10912
10979
  this.context.un('DisplayImages', this._displayImages);
10913
10980
  }
10914
10981
  onPrimaryUpload(uploader) {
10915
- uploader.open();
10916
- this.selectedGroupItem = null;
10982
+ this._setGroupItemAndOpenUploader(null, uploader);
10983
+ }
10984
+ onOpenUploader(groupItem, uploader) {
10985
+ this._setGroupItemAndOpenUploader(groupItem, uploader);
10917
10986
  }
10918
10987
  onGroupAttach(groupItem, uploader) {
10919
- this.selectedGroupItem = groupItem;
10920
- uploader.open();
10988
+ this._setGroupItemAndOpenUploader(groupItem, uploader);
10921
10989
  }
10922
10990
  onInvalidFiles(_files) { }
10923
- onResize() {
10924
- const width = this._el.nativeElement.offsetWidth;
10925
- if (width < 500) {
10926
- this.gridColsClass.set('tw-grid-cols-2');
10927
- }
10928
- else if (width < 800) {
10929
- this.gridColsClass.set('tw-grid-cols-3');
10930
- }
10931
- else if (width < 1100) {
10932
- this.gridColsClass.set('tw-grid-cols-6');
10933
- }
10934
- else {
10935
- this.gridColsClass.set('tw-grid-cols-8');
10936
- }
10937
- }
10938
- onRotate(imgEl, media2, _index) {
10991
+ onRotate(media2) {
10939
10992
  const media = media2;
10940
10993
  const bpId = media.FileId;
10941
- RotateImage(imgEl, media, this._renderer2);
10942
10994
  this.context.fireEvent('SettingsChange', this, {
10943
10995
  FileId: bpId,
10944
10996
  Angle: media.RotationAngle
@@ -10959,7 +11011,7 @@ class UiPicturesInfoComponent extends DeviceInfoFieldBaseComponent {
10959
11011
  }
10960
11012
  onDelete(id) {
10961
11013
  const mediaData = this.mediaDataSource.getValue();
10962
- const selectedMedia = mediaData.find(c => c.Id === id);
11014
+ const selectedMedia = mediaData.find((c) => c.Id === id);
10963
11015
  this._deleteMedia(selectedMedia);
10964
11016
  }
10965
11017
  onScan() {
@@ -11011,6 +11063,10 @@ class UiPicturesInfoComponent extends DeviceInfoFieldBaseComponent {
11011
11063
  this.uploadToServer(files).pipe(takeUntil(this._onDestroy$)).subscribe();
11012
11064
  this._fileUploader?.clear();
11013
11065
  }
11066
+ _setGroupItemAndOpenUploader(groupItem, uploader) {
11067
+ this.selectedGroupItem = groupItem;
11068
+ uploader.open();
11069
+ }
11014
11070
  _deleteMedia(selectedMedia) {
11015
11071
  const { Id, FileId } = selectedMedia;
11016
11072
  let selectedId = Id;
@@ -11118,11 +11174,11 @@ class UiPicturesInfoComponent extends DeviceInfoFieldBaseComponent {
11118
11174
  this.value = value;
11119
11175
  }
11120
11176
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UiPicturesInfoComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
11121
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: UiPicturesInfoComponent, isStandalone: false, selector: "bsu-ui-pictures-info", inputs: { value: "value" }, providers: [UploadService], viewQueries: [{ propertyName: "_fileUploader", first: true, predicate: FileUploaderComponent, descendants: true }, { propertyName: "_fileGalleryViewer", first: true, predicate: FileGalleryViewerComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<fd-file-uploader\r\n #uploader\r\n [style.display]=\"'none'\"\r\n [id]=\"id\"\r\n [name]=\"'pictures_' + id\"\r\n [placeholder]=\"'AttachPicture' | bbbTranslate\"\r\n [buttonLabel]=\"'AttachPicture' | bbbTranslate\"\r\n [buttonAriaLabel]=\"'AttachPicture' | bbbTranslate\"\r\n accept=\".png,.jpg,.bpm,.jpeg,.gif,.png,.tif,.pdf\"\r\n [multiple]=\"maxFileCount === 0 || maxFileCount > 1\"\r\n (selectedFilesChanged)=\"onFileSelection($event)\"\r\n (selectedInvalidFiles)=\"onInvalidFiles($event)\"\r\n></fd-file-uploader>\r\n\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n isInlineGallery ? inlineGallery : layoutGridTpl;\r\n context: {\r\n disableOrReadonly: (disableOrReadonly$ | async),\r\n mediaData: (mediaData$ | async),\r\n deviceSize: (deviceSize$ | async)\r\n }\r\n \"\r\n></ng-container>\r\n<ng-template #inlineGallery let-mediaData=\"mediaData\" let-deviceSize=\"deviceSize\">\r\n <fd-toolbar [shouldOverflow]=\"true\">\r\n @if(mediaData.length && selectedMedia){\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n fdType=\"transparent\"\r\n [label]=\"'Download' | bbbTranslate\"\r\n glyph=\"download\"\r\n [name]=\"selectedMedia.label\"\r\n [src]=\"selectedMedia.mediaUrl\"\r\n saveImage\r\n ></button>\r\n }\r\n <button\r\n fd-button\r\n fdType=\"transparent\"\r\n [label]=\"'Scan' | bbbTranslate\"\r\n fd-toolbar-item\r\n [glyph]=\"'x-ray'\"\r\n [fdMenuTrigger]=\"menu\"\r\n ></button>\r\n @if(!Setting.GroupList?.length){\r\n <button\r\n fd-button\r\n fd-toolbar-item\r\n glyph=\"add-photo\"\r\n fdType=\"transparent\"\r\n [label]=\"'AttachFile' | bbbTranslate\"\r\n (click)=\"onPrimaryUpload(uploader)\"\r\n ></button>\r\n }@else{\r\n <fd-split-button\r\n fd-toolbar-item\r\n [mainAction]=\"{ mainActionTitle: ('AttachFile' | bbbTranslate), keepMainAction: true }\"\r\n (primaryButtonClicked)=\"onPrimaryUpload(uploader)\"\r\n >\r\n <fd-menu #menu>\r\n @for (groupItem of Setting.GroupList; track groupItem.Id; let index = $index) {\r\n <li fd-menu-item (click)=\"onGroupAttach(groupItem, uploader)\">\r\n <div fd-menu-interactive>\r\n <span fd-menu-title>{{ groupItem.Name | bbbTranslate }}</span>\r\n </div>\r\n </li>\r\n }\r\n </fd-menu>\r\n </fd-split-button>\r\n }\r\n\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n fdType=\"transparent\"\r\n [label]=\"'Rotate' | bbbTranslate\"\r\n glyph=\"rotate\"\r\n (click)=\"onRotate2()\"\r\n ></button>\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n fdType=\"transparent\"\r\n [label]=\"'Delete' | bbbTranslate\"\r\n glyph=\"delete\"\r\n (click)=\"onDelete(selectedId)\"\r\n ></button>\r\n <fd-toolbar-separator></fd-toolbar-separator>\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n [glyph]=\"'text-align-justified'\"\r\n [fdType]=\"fillWidth ? 'emphasized' : 'transparent'\"\r\n fdType=\"transparent\"\r\n (click)=\"fillWidth = !fillWidth\"\r\n ></button>\r\n <button glyph=\"print\" fdType=\"transparent\" fd-toolbar-item fd-button [files]=\"mediaData\" printFiles></button>\r\n </fd-toolbar>\r\n\r\n <bsu-file-gallery-viewer\r\n [style.max-height]=\"'100svh'\"\r\n [style.min-height.px]=\"layoutInfo.Bounds.height || 480\"\r\n fillEmptySpace\r\n [decrement]=\"'4.5rem'\"\r\n [fillWidth]=\"true\"\r\n [fillWidth]=\"fillWidth\"\r\n [groupList]=\"Setting.GroupList\"\r\n [deviceSize]=\"deviceSize\"\r\n [title]=\"'AttachPicture' | bbbTranslate\"\r\n [files]=\"mediaData\"\r\n [isImageGallery]=\"true\"\r\n [isHorizontal]=\"isThumbnailHorizontal\"\r\n [selectedId]=\"selectedId\"\r\n (selectedIdChange)=\"selectedId = $event\"\r\n ></bsu-file-gallery-viewer>\r\n</ng-template>\r\n<ng-template\r\n #layoutGridTpl\r\n let-inDialog=\"inDialog\"\r\n let-gallery=\"gallery\"\r\n let-disableOrReadonly=\"disableOrReadonly\"\r\n let-mediaData=\"mediaData\"\r\n>\r\n <div resizeHandler [fnResize]=\"ResizeRefresh\">\r\n <div class=\"tw-grid tw-gap-4 tw-transition-all tw-duration-300\" [ngClass]=\"gridColsClass()\">\r\n @for (media of mediaData; track media; let i = $index) {\r\n <div>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n cardTpl;\r\n context: {\r\n $implicit: media,\r\n mediaData: mediaData,\r\n inDialog: inDialog,\r\n index: i,\r\n disableOrReadonly: disableOrReadonly\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n } @if (!inDialog && !disableOrReadonly) {\r\n <div>\r\n <ng-container *ngTemplateOutlet=\"newFile\"></ng-container>\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n</ng-template>\r\n<ng-template\r\n #cardTpl\r\n let-media\r\n let-mediaData=\"mediaData\"\r\n let-inDialog=\"inDialog\"\r\n let-index=\"index\"\r\n let-disableOrReadonly=\"disableOrReadonly\"\r\n>\r\n <fd-card class=\"media\" [class.inDialog]=\"inDialog\">\r\n <fd-card-content class=\"tw-flex tw-h-32\">\r\n <img class=\"tw-w-full\" imgLazy [imgLazy]=\"media.thumbnailUrl\" [src]=\"media.thumbnailUrl\" #img />\r\n </fd-card-content>\r\n @if (!inDialog) {\r\n <fd-card-footer>\r\n <button\r\n glyph=\"print\"\r\n *fdCardFooterActionItem\r\n fd-button\r\n fdType=\"transparent\"\r\n [files]=\"[media]\"\r\n printFiles\r\n ></button>\r\n <button\r\n glyph=\"full-screen\"\r\n [title]=\"'FullScreen' | bbbTranslate\"\r\n *fdCardFooterActionItem\r\n fd-button\r\n fdType=\"transparent\"\r\n fullscreenFiles\r\n [deviceSize]=\"(deviceSize$ | async)!!\"\r\n [isImageGallery]=\"true\"\r\n [selectedIndex]=\"index\"\r\n [files]=\"[media]\"\r\n ></button>\r\n\r\n <button fd-button [glyph]=\"'overflow'\" [fdType]=\"'transparent'\" [fdMenuTrigger]=\"menu\"></button>\r\n <fd-menu #menu>\r\n <li fd-menu-item [files]=\"mediaData\" printFiles>\r\n <a fd-menu-interactive>\r\n <fd-menu-addon position=\"before\" glyph=\"print\"></fd-menu-addon>\r\n <span fd-menu-title>{{ 'Print' | bbbTranslate }} {{ 'All' | bbbTranslate }}</span>\r\n </a>\r\n </li>\r\n <li fd-menu-item [name]=\"media.label\" [src]=\"media.mediaUrl\" saveImage>\r\n <a fd-menu-interactive>\r\n <fd-menu-addon position=\"before\" glyph=\"download\"></fd-menu-addon>\r\n <span fd-menu-title>{{ 'Download' | bbbTranslate }}</span>\r\n </a>\r\n </li>\r\n @if (!disableOrReadonly) {\r\n <li fd-menu-item (click)=\"onRotate(img, media, index)\">\r\n <a fd-menu-interactive>\r\n <fd-menu-addon position=\"before\" glyph=\"rotate\"></fd-menu-addon>\r\n <span fd-menu-title>{{ 'Rotate' | bbbTranslate }}</span>\r\n </a>\r\n </li>\r\n <li fd-menu-item (click)=\"onDelete(index)\">\r\n <a fd-menu-interactive>\r\n <fd-menu-addon position=\"before\" glyph=\"delete\"></fd-menu-addon>\r\n <span fd-menu-title>{{ 'Delete' | bbbTranslate }}</span>\r\n </a>\r\n </li>\r\n <li\r\n fd-menu-item\r\n fullscreenFiles\r\n [deviceSize]=\"(deviceSize$ | async)!!\"\r\n [isImageGallery]=\"true\"\r\n [selectedIndex]=\"index\"\r\n [files]=\"mediaData\"\r\n >\r\n <a fd-menu-interactive>\r\n <fd-menu-addon position=\"before\" glyph=\"fullscreen\"></fd-menu-addon>\r\n <span fd-menu-title>{{ 'Fullscreen' | bbbTranslate }}</span>\r\n </a>\r\n </li>\r\n }\r\n </fd-menu>\r\n </fd-card-footer>\r\n }\r\n </fd-card>\r\n</ng-template>\r\n<ng-template #newFile>\r\n <div style=\"position: relative; height: 100%\">\r\n <fd-card>\r\n <fd-card-content style=\"display: flex; align-items: center; justify-content: center; min-height: 120px\">\r\n <button\r\n fd-button\r\n glyph=\"add-photo\"\r\n fdType=\"transparent\"\r\n [label]=\"'AttachFile' | bbbTranslate\"\r\n (click)=\"uploader.open()\"\r\n ></button>\r\n </fd-card-content>\r\n\r\n <fd-card-footer style=\"border-top: 1px solid #ccc\">\r\n <button fd-button [glyph]=\"'overflow'\" [fdType]=\"'transparent'\" [fdMenuTrigger]=\"menu\"></button>\r\n </fd-card-footer>\r\n </fd-card>\r\n @if ((uploadingState$ | async)?.uploading === true) {\r\n <bsu-mask></bsu-mask>\r\n }\r\n </div>\r\n</ng-template>\r\n\r\n<fd-menu #menu>\r\n <li fd-menu-item (click)=\"onScan()\">\r\n <a fd-menu-interactive>\r\n <span fd-menu-title>{{ 'Scan' | bbbTranslate }}</span>\r\n </a>\r\n </li>\r\n <li fd-menu-item (click)=\"onAdvanceScan()\">\r\n <a fd-menu-interactive>\r\n <span fd-menu-title>{{ 'AdvancedScan' | bbbTranslate }}</span>\r\n </a>\r\n </li>\r\n</fd-menu>\r\n", styles: [":host{position:relative}:host ::ng-deep .delete button{border-color:transparent!important;background-color:transparent!important}.big-imgs-box{position:relative}.big-imgs-box>fd-toolbar{position:absolute;z-index:5;opacity:.5}.big-imgs-box>fd-toolbar:hover{opacity:1}fd-toolbar{width:100%}fd-dialog-footer{justify-content:center}.hatchBackground{min-height:100px}.gallery{display:flex;width:100%;height:400px;column-gap:1px;background-color:var(--sapField_Background, #fff)}.gallery ::-webkit-scrollbar{width:7px;height:7px}.gallery ::-webkit-scrollbar-track{box-shadow:inset 0 0 5px gray;border-radius:4px}.gallery ::-webkit-scrollbar-thumb{background:#555454;border-radius:4px}.gallery ::-webkit-scrollbar-thumb:hover{background:#2c2b2b}.gallery .column{overflow-y:scroll;display:flex;flex-direction:column;row-gap:3%;align-items:center}.gallery .column .pics{width:100%;display:flex;justify-content:center}.gallery .column .pics img{border-radius:5px}.gallery .column.small-imgs-box{flex:10%}.gallery .column.big-imgs-box{flex:90%}.gallery .selected{background-color:#fff;border:3px solid #0294d8;padding:10px}.gallery .fill-all .pics{height:100%}.gallery .fill-all img{width:100%!important;height:100%!important;object-fit:fill!important}.gallery .fill-original img{width:unset;height:unset}.gallery .zoom1 img{zoom:1}.gallery .zoom1-5 img{zoom:1.5}.gallery .zoom2 img{zoom:2}fd-dialog .gallery{overflow:auto}fd-dialog .gallery .column{overflow:initial}fd-dialog .gallery .pics{position:relative}fd-dialog fd-dialog-body{display:flex}fd-dialog.horizontal fd-dialog-body{flex-direction:column}fd-dialog.horizontal .gallery{flex-direction:row}fd-dialog.horizontal .thumbnail{border-top:1px solid #ccc;overflow-x:auto}fd-dialog.vertical fd-dialog-body{flex-direction:row-reverse}fd-dialog.vertical .gallery{flex-direction:column;height:100%}fd-dialog.vertical .thumbnail{border-left:1px solid #ccc;height:100%;width:200px;overflow-y:auto}fd-dialog.vertical .thumbnail ::ng-deep .fd-row>div{width:100%;min-width:100%}fd-card.media fd-card-footer button{border:none}fd-card.inDialog fd-card-header{padding-top:5px;padding-bottom:5px}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.ImageLazyDirective, selector: "[imgLazy]", inputs: ["auto", "threshold", "imgLazy"], outputs: ["imageLoaded"] }, { kind: "directive", type: i2.FillEmptySpaceDirective, selector: "[fillEmptySpace]", inputs: ["containerDom", "decrement", "disable", "height", "dontUseTopBound", "setMinHeight", "setMaxHeight"], outputs: ["heightChanged"], exportAs: ["fillEmptySpace"] }, { kind: "directive", type: i2.PrintFilesDirective, selector: "[printFiles]", inputs: ["files", "file", "isImageGallery", "component"] }, { kind: "directive", type: i2.SaveImageDirective, selector: "[saveImage]", inputs: ["name", "src"] }, { kind: "directive", type: i2.ResizeHandlerDirective, selector: "[resizeHandler]", inputs: ["fnResize"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i7$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: i7$3.CardContentComponent, selector: "fd-card-content" }, { kind: "component", type: i7$3.CardFooterComponent, selector: "fd-card-footer" }, { kind: "directive", type: i7$3.CardFooterActionItemDirective, selector: "[fdCardFooterActionItem]" }, { kind: "component", type: i5$4.FileUploaderComponent, selector: "fd-file-uploader", inputs: ["disabled", "required", "multiple", "accept", "dragndrop", "maxFileSize", "minFileSize", "id", "ariaLabel", "ariaLabelledBy", "placeholder", "buttonLabel", "buttonAriaLabel", "state", "fileLimit", "inputHidden", "width"], outputs: ["selectedFilesChanged", "selectedInvalidFiles", "onDragEnter", "onDragLeave"] }, { kind: "component", type: i6.MenuComponent, selector: "fd-menu", inputs: ["mobile", "disabled", "focusTrapped", "focusAutoCapture", "openOnHoverTime", "mobileConfig", "ariaLabel", "ariaLabelledby", "id"], outputs: ["activePath"] }, { kind: "component", type: i6.MenuItemComponent, selector: "li[fd-menu-item]", inputs: ["disabled", "itemId", "submenu", "parentSubmenu", "hasSeparator"], outputs: ["onSelect"], exportAs: ["fd-menu-item"] }, { kind: "component", type: i6.MenuInteractiveComponent, selector: "[fd-menu-interactive]" }, { kind: "directive", type: i6.MenuTitleDirective, selector: "[fd-menu-title]" }, { kind: "component", type: i6.MenuAddonDirective, selector: "fd-menu-addon", inputs: ["position", "submenuIndicator", "ariaHidden"] }, { kind: "directive", type: i6.MenuTriggerDirective, selector: "[fdMenuTrigger]", inputs: ["fdMenuTrigger"] }, { kind: "component", type: i7$2.SplitButtonComponent, selector: "fd-split-button", inputs: ["glyph", "glyphFont", "disabled", "fdType", "expandButtonTitle", "selected", "fixedWidth", "mainAction", "arialLabel"], outputs: ["primaryButtonClicked"] }, { 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: i8.ToolbarSeparatorComponent, selector: "fd-toolbar-separator" }, { kind: "component", type: MaskComponent, selector: "bsu-mask", inputs: ["size", "top"] }, { kind: "component", type: FileGalleryViewerComponent, selector: "bsu-file-gallery-viewer", inputs: ["fillWidth", "deviceSize", "title", "files", "contentDensity", "isImageGallery", "isHorizontal", "selectedFile", "groupList", "selectedId", "scrollToId"], outputs: ["selectedIdChange"] }, { kind: "directive", type: FullscreenFilesDirective, selector: "[fullscreenFiles]", inputs: ["files", "selectedIndex", "title", "deviceSize", "isImageGallery", "component"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
11177
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: UiPicturesInfoComponent, isStandalone: false, selector: "bsu-ui-pictures-info", inputs: { value: "value" }, providers: [UploadService], viewQueries: [{ propertyName: "_fileUploader", first: true, predicate: FileUploaderComponent, descendants: true }, { propertyName: "_fileGalleryViewer", first: true, predicate: FileGalleryViewerComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<fd-file-uploader\r\n #uploader\r\n [style.display]=\"'none'\"\r\n [id]=\"id\"\r\n [name]=\"'pictures_' + id\"\r\n [placeholder]=\"'AttachPicture' | bbbTranslate\"\r\n [buttonLabel]=\"'AttachPicture' | bbbTranslate\"\r\n [buttonAriaLabel]=\"'AttachPicture' | bbbTranslate\"\r\n accept=\".png,.jpg,.bpm,.jpeg,.gif,.png,.tif,.pdf\"\r\n [multiple]=\"maxFileCount === 0 || maxFileCount > 1\"\r\n (selectedFilesChanged)=\"onFileSelection($event)\"\r\n (selectedInvalidFiles)=\"onInvalidFiles($event)\"\r\n></fd-file-uploader>\r\n\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n isInlineGallery ? inlineGallery : layoutGridTpl;\r\n context: {\r\n disableOrReadonly: (disableOrReadonly$ | async),\r\n mediaData: (mediaData$ | async),\r\n deviceSize: (deviceSize$ | async),\r\n uploader: uploader\r\n }\r\n \"\r\n></ng-container>\r\n<ng-template #inlineGallery let-mediaData=\"mediaData\" let-deviceSize=\"deviceSize\">\r\n <fd-toolbar [shouldOverflow]=\"true\">\r\n @if(mediaData.length && selectedMedia){\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n fdType=\"transparent\"\r\n [label]=\"'Download' | bbbTranslate\"\r\n glyph=\"download\"\r\n [name]=\"selectedMedia.label\"\r\n [src]=\"selectedMedia.mediaUrl\"\r\n saveImage\r\n ></button>\r\n }\r\n <button\r\n fd-button\r\n fdType=\"transparent\"\r\n [label]=\"'Scan' | bbbTranslate\"\r\n fd-toolbar-item\r\n [glyph]=\"'x-ray'\"\r\n [fdMenuTrigger]=\"menu\"\r\n ></button>\r\n @if(!Setting.GroupList?.length){\r\n <button\r\n fd-button\r\n fd-toolbar-item\r\n glyph=\"add-photo\"\r\n fdType=\"transparent\"\r\n [label]=\"'AttachFile' | bbbTranslate\"\r\n (click)=\"onPrimaryUpload(uploader)\"\r\n ></button>\r\n }@else{\r\n <fd-split-button\r\n fd-toolbar-item\r\n [mainAction]=\"{ mainActionTitle: ('AttachFile' | bbbTranslate), keepMainAction: true }\"\r\n (primaryButtonClicked)=\"onPrimaryUpload(uploader)\"\r\n >\r\n <fd-menu #menu>\r\n @for (groupItem of Setting.GroupList; track groupItem.Id; let index = $index) {\r\n <li fd-menu-item (click)=\"onGroupAttach(groupItem, uploader)\">\r\n <div fd-menu-interactive>\r\n <span fd-menu-title>{{ groupItem.Name | bbbTranslate }}</span>\r\n </div>\r\n </li>\r\n }\r\n </fd-menu>\r\n </fd-split-button>\r\n }\r\n\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n fdType=\"transparent\"\r\n [label]=\"'Rotate' | bbbTranslate\"\r\n glyph=\"rotate\"\r\n (click)=\"onRotate2()\"\r\n ></button>\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n fdType=\"transparent\"\r\n [label]=\"'Delete' | bbbTranslate\"\r\n glyph=\"delete\"\r\n (click)=\"onDelete(selectedId)\"\r\n ></button>\r\n <fd-toolbar-separator></fd-toolbar-separator>\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n [glyph]=\"'text-align-justified'\"\r\n [fdType]=\"fillWidth ? 'emphasized' : 'transparent'\"\r\n fdType=\"transparent\"\r\n (click)=\"fillWidth = !fillWidth\"\r\n ></button>\r\n <button glyph=\"print\" fdType=\"transparent\" fd-toolbar-item fd-button [files]=\"mediaData\" printFiles></button>\r\n </fd-toolbar>\r\n\r\n <bsu-file-gallery-viewer\r\n [style.max-height]=\"'100svh'\"\r\n [style.min-height.px]=\"layoutInfo.Bounds.height || 480\"\r\n fillEmptySpace\r\n [decrement]=\"'4.5rem'\"\r\n [fillWidth]=\"true\"\r\n [fillWidth]=\"fillWidth\"\r\n [groupList]=\"Setting.GroupList\"\r\n [deviceSize]=\"deviceSize\"\r\n [title]=\"'AttachPicture' | bbbTranslate\"\r\n [files]=\"mediaData\"\r\n [isImageGallery]=\"true\"\r\n [isHorizontal]=\"isThumbnailHorizontal\"\r\n [selectedId]=\"selectedId\"\r\n (selectedIdChange)=\"selectedId = $event\"\r\n ></bsu-file-gallery-viewer>\r\n</ng-template>\r\n<ng-template\r\n #layoutGridTpl\r\n let-inDialog=\"inDialog\"\r\n let-gallery=\"gallery\"\r\n let-disableOrReadonly=\"disableOrReadonly\"\r\n let-mediaData=\"mediaData\"\r\n let-deviceSize=\"deviceSize\"\r\n let-uploader=\"uploader\"\r\n>\r\n <bsu-file-card-viewer\r\n [inDialog]=\"inDialog\"\r\n [mediaData]=\"mediaData\"\r\n [disableOrReadonly]=\"disableOrReadonly\"\r\n [deviceSize]=\"deviceSize\"\r\n [uploader]=\"uploader\"\r\n [groupList]=\"Setting.GroupList\"\r\n [uploadingState]=\"(uploadingState$ | async)!!\"\r\n [scanMenu]=\"menu\"\r\n (rotateMedia)=\"onRotate($event)\"\r\n (deleteMedia)=\"onDelete($event)\"\r\n (openUploader)=\"onOpenUploader($event, uploader)\"\r\n ></bsu-file-card-viewer>\r\n</ng-template>\r\n\r\n<fd-menu #menu>\r\n <li fd-menu-item (click)=\"onScan()\">\r\n <a fd-menu-interactive>\r\n <span fd-menu-title>{{ 'Scan' | bbbTranslate }}</span>\r\n </a>\r\n </li>\r\n <li fd-menu-item (click)=\"onAdvanceScan()\">\r\n <a fd-menu-interactive>\r\n <span fd-menu-title>{{ 'AdvancedScan' | bbbTranslate }}</span>\r\n </a>\r\n </li>\r\n</fd-menu>\r\n", styles: [":host{position:relative}:host ::ng-deep .delete button{border-color:transparent!important;background-color:transparent!important}.big-imgs-box{position:relative}.big-imgs-box>fd-toolbar{position:absolute;z-index:5;opacity:.5}.big-imgs-box>fd-toolbar:hover{opacity:1}fd-toolbar{width:100%}fd-dialog-footer{justify-content:center}.hatchBackground{min-height:100px}.gallery{display:flex;width:100%;height:400px;column-gap:1px;background-color:var(--sapField_Background, #fff)}.gallery ::-webkit-scrollbar{width:7px;height:7px}.gallery ::-webkit-scrollbar-track{box-shadow:inset 0 0 5px gray;border-radius:4px}.gallery ::-webkit-scrollbar-thumb{background:#555454;border-radius:4px}.gallery ::-webkit-scrollbar-thumb:hover{background:#2c2b2b}.gallery .column{overflow-y:scroll;display:flex;flex-direction:column;row-gap:3%;align-items:center}.gallery .column .pics{width:100%;display:flex;justify-content:center}.gallery .column .pics img{border-radius:5px}.gallery .column.small-imgs-box{flex:10%}.gallery .column.big-imgs-box{flex:90%}.gallery .selected{background-color:#fff;border:3px solid #0294d8;padding:10px}.gallery .fill-all .pics{height:100%}.gallery .fill-all img{width:100%!important;height:100%!important;object-fit:fill!important}.gallery .fill-original img{width:unset;height:unset}.gallery .zoom1 img{zoom:1}.gallery .zoom1-5 img{zoom:1.5}.gallery .zoom2 img{zoom:2}fd-dialog .gallery{overflow:auto}fd-dialog .gallery .column{overflow:initial}fd-dialog .gallery .pics{position:relative}fd-dialog fd-dialog-body{display:flex}fd-dialog.horizontal fd-dialog-body{flex-direction:column}fd-dialog.horizontal .gallery{flex-direction:row}fd-dialog.horizontal .thumbnail{border-top:1px solid #ccc;overflow-x:auto}fd-dialog.vertical fd-dialog-body{flex-direction:row-reverse}fd-dialog.vertical .gallery{flex-direction:column;height:100%}fd-dialog.vertical .thumbnail{border-left:1px solid #ccc;height:100%;width:200px;overflow-y:auto}fd-dialog.vertical .thumbnail ::ng-deep .fd-row>div{width:100%;min-width:100%}fd-card.media fd-card-footer button{border:none}fd-card.inDialog fd-card-header{padding-top:5px;padding-bottom:5px}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.FillEmptySpaceDirective, selector: "[fillEmptySpace]", inputs: ["containerDom", "decrement", "disable", "height", "dontUseTopBound", "setMinHeight", "setMaxHeight"], outputs: ["heightChanged"], exportAs: ["fillEmptySpace"] }, { kind: "directive", type: i2.PrintFilesDirective, selector: "[printFiles]", inputs: ["files", "file", "isImageGallery", "component"] }, { kind: "directive", type: i2.SaveImageDirective, selector: "[saveImage]", inputs: ["name", "src"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i4$7.FileUploaderComponent, selector: "fd-file-uploader", inputs: ["disabled", "required", "multiple", "accept", "dragndrop", "maxFileSize", "minFileSize", "id", "ariaLabel", "ariaLabelledBy", "placeholder", "buttonLabel", "buttonAriaLabel", "state", "fileLimit", "inputHidden", "width"], outputs: ["selectedFilesChanged", "selectedInvalidFiles", "onDragEnter", "onDragLeave"] }, { kind: "component", type: i5$2.MenuComponent, selector: "fd-menu", inputs: ["mobile", "disabled", "focusTrapped", "focusAutoCapture", "openOnHoverTime", "mobileConfig", "ariaLabel", "ariaLabelledby", "id"], outputs: ["activePath"] }, { kind: "component", type: i5$2.MenuItemComponent, selector: "li[fd-menu-item]", inputs: ["disabled", "itemId", "submenu", "parentSubmenu", "hasSeparator"], outputs: ["onSelect"], exportAs: ["fd-menu-item"] }, { kind: "component", type: i5$2.MenuInteractiveComponent, selector: "[fd-menu-interactive]" }, { kind: "directive", type: i5$2.MenuTitleDirective, selector: "[fd-menu-title]" }, { kind: "directive", type: i5$2.MenuTriggerDirective, selector: "[fdMenuTrigger]", inputs: ["fdMenuTrigger"] }, { kind: "component", type: i8.SplitButtonComponent, selector: "fd-split-button", inputs: ["glyph", "glyphFont", "disabled", "fdType", "expandButtonTitle", "selected", "fixedWidth", "mainAction", "arialLabel"], outputs: ["primaryButtonClicked"] }, { kind: "component", type: i7$2.ToolbarComponent, selector: "fd-toolbar", inputs: ["titleId", "class", "shouldOverflow", "fdType", "title", "active", "clearBorder", "forceOverflow", "tabindex", "headingLevel", "ariaLabel", "ariaLabelledBy"] }, { kind: "directive", type: i7$2.ToolbarItemDirective, selector: "[fd-toolbar-item], [fdOverflowGroup], [fdOverflowPriority]", inputs: ["fdOverflowPriority", "fdOverflowGroup"] }, { kind: "component", type: i7$2.ToolbarSeparatorComponent, selector: "fd-toolbar-separator" }, { kind: "component", type: FileGalleryViewerComponent, selector: "bsu-file-gallery-viewer", inputs: ["fillWidth", "deviceSize", "title", "files", "contentDensity", "isImageGallery", "isHorizontal", "selectedFile", "groupList", "selectedId", "scrollToId"], outputs: ["selectedIdChange"] }, { kind: "component", type: FileCardViewerComponent, selector: "bsu-file-card-viewer", inputs: ["mediaData", "inDialog", "disableOrReadonly", "deviceSize", "uploadingState", "uploader", "scanMenu", "groupList"], outputs: ["openUploader", "rotateMedia", "deleteMedia"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
11122
11178
  }
11123
11179
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UiPicturesInfoComponent, decorators: [{
11124
11180
  type: Component,
11125
- args: [{ selector: 'bsu-ui-pictures-info', providers: [UploadService], changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<fd-file-uploader\r\n #uploader\r\n [style.display]=\"'none'\"\r\n [id]=\"id\"\r\n [name]=\"'pictures_' + id\"\r\n [placeholder]=\"'AttachPicture' | bbbTranslate\"\r\n [buttonLabel]=\"'AttachPicture' | bbbTranslate\"\r\n [buttonAriaLabel]=\"'AttachPicture' | bbbTranslate\"\r\n accept=\".png,.jpg,.bpm,.jpeg,.gif,.png,.tif,.pdf\"\r\n [multiple]=\"maxFileCount === 0 || maxFileCount > 1\"\r\n (selectedFilesChanged)=\"onFileSelection($event)\"\r\n (selectedInvalidFiles)=\"onInvalidFiles($event)\"\r\n></fd-file-uploader>\r\n\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n isInlineGallery ? inlineGallery : layoutGridTpl;\r\n context: {\r\n disableOrReadonly: (disableOrReadonly$ | async),\r\n mediaData: (mediaData$ | async),\r\n deviceSize: (deviceSize$ | async)\r\n }\r\n \"\r\n></ng-container>\r\n<ng-template #inlineGallery let-mediaData=\"mediaData\" let-deviceSize=\"deviceSize\">\r\n <fd-toolbar [shouldOverflow]=\"true\">\r\n @if(mediaData.length && selectedMedia){\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n fdType=\"transparent\"\r\n [label]=\"'Download' | bbbTranslate\"\r\n glyph=\"download\"\r\n [name]=\"selectedMedia.label\"\r\n [src]=\"selectedMedia.mediaUrl\"\r\n saveImage\r\n ></button>\r\n }\r\n <button\r\n fd-button\r\n fdType=\"transparent\"\r\n [label]=\"'Scan' | bbbTranslate\"\r\n fd-toolbar-item\r\n [glyph]=\"'x-ray'\"\r\n [fdMenuTrigger]=\"menu\"\r\n ></button>\r\n @if(!Setting.GroupList?.length){\r\n <button\r\n fd-button\r\n fd-toolbar-item\r\n glyph=\"add-photo\"\r\n fdType=\"transparent\"\r\n [label]=\"'AttachFile' | bbbTranslate\"\r\n (click)=\"onPrimaryUpload(uploader)\"\r\n ></button>\r\n }@else{\r\n <fd-split-button\r\n fd-toolbar-item\r\n [mainAction]=\"{ mainActionTitle: ('AttachFile' | bbbTranslate), keepMainAction: true }\"\r\n (primaryButtonClicked)=\"onPrimaryUpload(uploader)\"\r\n >\r\n <fd-menu #menu>\r\n @for (groupItem of Setting.GroupList; track groupItem.Id; let index = $index) {\r\n <li fd-menu-item (click)=\"onGroupAttach(groupItem, uploader)\">\r\n <div fd-menu-interactive>\r\n <span fd-menu-title>{{ groupItem.Name | bbbTranslate }}</span>\r\n </div>\r\n </li>\r\n }\r\n </fd-menu>\r\n </fd-split-button>\r\n }\r\n\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n fdType=\"transparent\"\r\n [label]=\"'Rotate' | bbbTranslate\"\r\n glyph=\"rotate\"\r\n (click)=\"onRotate2()\"\r\n ></button>\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n fdType=\"transparent\"\r\n [label]=\"'Delete' | bbbTranslate\"\r\n glyph=\"delete\"\r\n (click)=\"onDelete(selectedId)\"\r\n ></button>\r\n <fd-toolbar-separator></fd-toolbar-separator>\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n [glyph]=\"'text-align-justified'\"\r\n [fdType]=\"fillWidth ? 'emphasized' : 'transparent'\"\r\n fdType=\"transparent\"\r\n (click)=\"fillWidth = !fillWidth\"\r\n ></button>\r\n <button glyph=\"print\" fdType=\"transparent\" fd-toolbar-item fd-button [files]=\"mediaData\" printFiles></button>\r\n </fd-toolbar>\r\n\r\n <bsu-file-gallery-viewer\r\n [style.max-height]=\"'100svh'\"\r\n [style.min-height.px]=\"layoutInfo.Bounds.height || 480\"\r\n fillEmptySpace\r\n [decrement]=\"'4.5rem'\"\r\n [fillWidth]=\"true\"\r\n [fillWidth]=\"fillWidth\"\r\n [groupList]=\"Setting.GroupList\"\r\n [deviceSize]=\"deviceSize\"\r\n [title]=\"'AttachPicture' | bbbTranslate\"\r\n [files]=\"mediaData\"\r\n [isImageGallery]=\"true\"\r\n [isHorizontal]=\"isThumbnailHorizontal\"\r\n [selectedId]=\"selectedId\"\r\n (selectedIdChange)=\"selectedId = $event\"\r\n ></bsu-file-gallery-viewer>\r\n</ng-template>\r\n<ng-template\r\n #layoutGridTpl\r\n let-inDialog=\"inDialog\"\r\n let-gallery=\"gallery\"\r\n let-disableOrReadonly=\"disableOrReadonly\"\r\n let-mediaData=\"mediaData\"\r\n>\r\n <div resizeHandler [fnResize]=\"ResizeRefresh\">\r\n <div class=\"tw-grid tw-gap-4 tw-transition-all tw-duration-300\" [ngClass]=\"gridColsClass()\">\r\n @for (media of mediaData; track media; let i = $index) {\r\n <div>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n cardTpl;\r\n context: {\r\n $implicit: media,\r\n mediaData: mediaData,\r\n inDialog: inDialog,\r\n index: i,\r\n disableOrReadonly: disableOrReadonly\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n } @if (!inDialog && !disableOrReadonly) {\r\n <div>\r\n <ng-container *ngTemplateOutlet=\"newFile\"></ng-container>\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n</ng-template>\r\n<ng-template\r\n #cardTpl\r\n let-media\r\n let-mediaData=\"mediaData\"\r\n let-inDialog=\"inDialog\"\r\n let-index=\"index\"\r\n let-disableOrReadonly=\"disableOrReadonly\"\r\n>\r\n <fd-card class=\"media\" [class.inDialog]=\"inDialog\">\r\n <fd-card-content class=\"tw-flex tw-h-32\">\r\n <img class=\"tw-w-full\" imgLazy [imgLazy]=\"media.thumbnailUrl\" [src]=\"media.thumbnailUrl\" #img />\r\n </fd-card-content>\r\n @if (!inDialog) {\r\n <fd-card-footer>\r\n <button\r\n glyph=\"print\"\r\n *fdCardFooterActionItem\r\n fd-button\r\n fdType=\"transparent\"\r\n [files]=\"[media]\"\r\n printFiles\r\n ></button>\r\n <button\r\n glyph=\"full-screen\"\r\n [title]=\"'FullScreen' | bbbTranslate\"\r\n *fdCardFooterActionItem\r\n fd-button\r\n fdType=\"transparent\"\r\n fullscreenFiles\r\n [deviceSize]=\"(deviceSize$ | async)!!\"\r\n [isImageGallery]=\"true\"\r\n [selectedIndex]=\"index\"\r\n [files]=\"[media]\"\r\n ></button>\r\n\r\n <button fd-button [glyph]=\"'overflow'\" [fdType]=\"'transparent'\" [fdMenuTrigger]=\"menu\"></button>\r\n <fd-menu #menu>\r\n <li fd-menu-item [files]=\"mediaData\" printFiles>\r\n <a fd-menu-interactive>\r\n <fd-menu-addon position=\"before\" glyph=\"print\"></fd-menu-addon>\r\n <span fd-menu-title>{{ 'Print' | bbbTranslate }} {{ 'All' | bbbTranslate }}</span>\r\n </a>\r\n </li>\r\n <li fd-menu-item [name]=\"media.label\" [src]=\"media.mediaUrl\" saveImage>\r\n <a fd-menu-interactive>\r\n <fd-menu-addon position=\"before\" glyph=\"download\"></fd-menu-addon>\r\n <span fd-menu-title>{{ 'Download' | bbbTranslate }}</span>\r\n </a>\r\n </li>\r\n @if (!disableOrReadonly) {\r\n <li fd-menu-item (click)=\"onRotate(img, media, index)\">\r\n <a fd-menu-interactive>\r\n <fd-menu-addon position=\"before\" glyph=\"rotate\"></fd-menu-addon>\r\n <span fd-menu-title>{{ 'Rotate' | bbbTranslate }}</span>\r\n </a>\r\n </li>\r\n <li fd-menu-item (click)=\"onDelete(index)\">\r\n <a fd-menu-interactive>\r\n <fd-menu-addon position=\"before\" glyph=\"delete\"></fd-menu-addon>\r\n <span fd-menu-title>{{ 'Delete' | bbbTranslate }}</span>\r\n </a>\r\n </li>\r\n <li\r\n fd-menu-item\r\n fullscreenFiles\r\n [deviceSize]=\"(deviceSize$ | async)!!\"\r\n [isImageGallery]=\"true\"\r\n [selectedIndex]=\"index\"\r\n [files]=\"mediaData\"\r\n >\r\n <a fd-menu-interactive>\r\n <fd-menu-addon position=\"before\" glyph=\"fullscreen\"></fd-menu-addon>\r\n <span fd-menu-title>{{ 'Fullscreen' | bbbTranslate }}</span>\r\n </a>\r\n </li>\r\n }\r\n </fd-menu>\r\n </fd-card-footer>\r\n }\r\n </fd-card>\r\n</ng-template>\r\n<ng-template #newFile>\r\n <div style=\"position: relative; height: 100%\">\r\n <fd-card>\r\n <fd-card-content style=\"display: flex; align-items: center; justify-content: center; min-height: 120px\">\r\n <button\r\n fd-button\r\n glyph=\"add-photo\"\r\n fdType=\"transparent\"\r\n [label]=\"'AttachFile' | bbbTranslate\"\r\n (click)=\"uploader.open()\"\r\n ></button>\r\n </fd-card-content>\r\n\r\n <fd-card-footer style=\"border-top: 1px solid #ccc\">\r\n <button fd-button [glyph]=\"'overflow'\" [fdType]=\"'transparent'\" [fdMenuTrigger]=\"menu\"></button>\r\n </fd-card-footer>\r\n </fd-card>\r\n @if ((uploadingState$ | async)?.uploading === true) {\r\n <bsu-mask></bsu-mask>\r\n }\r\n </div>\r\n</ng-template>\r\n\r\n<fd-menu #menu>\r\n <li fd-menu-item (click)=\"onScan()\">\r\n <a fd-menu-interactive>\r\n <span fd-menu-title>{{ 'Scan' | bbbTranslate }}</span>\r\n </a>\r\n </li>\r\n <li fd-menu-item (click)=\"onAdvanceScan()\">\r\n <a fd-menu-interactive>\r\n <span fd-menu-title>{{ 'AdvancedScan' | bbbTranslate }}</span>\r\n </a>\r\n </li>\r\n</fd-menu>\r\n", styles: [":host{position:relative}:host ::ng-deep .delete button{border-color:transparent!important;background-color:transparent!important}.big-imgs-box{position:relative}.big-imgs-box>fd-toolbar{position:absolute;z-index:5;opacity:.5}.big-imgs-box>fd-toolbar:hover{opacity:1}fd-toolbar{width:100%}fd-dialog-footer{justify-content:center}.hatchBackground{min-height:100px}.gallery{display:flex;width:100%;height:400px;column-gap:1px;background-color:var(--sapField_Background, #fff)}.gallery ::-webkit-scrollbar{width:7px;height:7px}.gallery ::-webkit-scrollbar-track{box-shadow:inset 0 0 5px gray;border-radius:4px}.gallery ::-webkit-scrollbar-thumb{background:#555454;border-radius:4px}.gallery ::-webkit-scrollbar-thumb:hover{background:#2c2b2b}.gallery .column{overflow-y:scroll;display:flex;flex-direction:column;row-gap:3%;align-items:center}.gallery .column .pics{width:100%;display:flex;justify-content:center}.gallery .column .pics img{border-radius:5px}.gallery .column.small-imgs-box{flex:10%}.gallery .column.big-imgs-box{flex:90%}.gallery .selected{background-color:#fff;border:3px solid #0294d8;padding:10px}.gallery .fill-all .pics{height:100%}.gallery .fill-all img{width:100%!important;height:100%!important;object-fit:fill!important}.gallery .fill-original img{width:unset;height:unset}.gallery .zoom1 img{zoom:1}.gallery .zoom1-5 img{zoom:1.5}.gallery .zoom2 img{zoom:2}fd-dialog .gallery{overflow:auto}fd-dialog .gallery .column{overflow:initial}fd-dialog .gallery .pics{position:relative}fd-dialog fd-dialog-body{display:flex}fd-dialog.horizontal fd-dialog-body{flex-direction:column}fd-dialog.horizontal .gallery{flex-direction:row}fd-dialog.horizontal .thumbnail{border-top:1px solid #ccc;overflow-x:auto}fd-dialog.vertical fd-dialog-body{flex-direction:row-reverse}fd-dialog.vertical .gallery{flex-direction:column;height:100%}fd-dialog.vertical .thumbnail{border-left:1px solid #ccc;height:100%;width:200px;overflow-y:auto}fd-dialog.vertical .thumbnail ::ng-deep .fd-row>div{width:100%;min-width:100%}fd-card.media fd-card-footer button{border:none}fd-card.inDialog fd-card-header{padding-top:5px;padding-bottom:5px}\n"] }]
11181
+ args: [{ selector: 'bsu-ui-pictures-info', providers: [UploadService], changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<fd-file-uploader\r\n #uploader\r\n [style.display]=\"'none'\"\r\n [id]=\"id\"\r\n [name]=\"'pictures_' + id\"\r\n [placeholder]=\"'AttachPicture' | bbbTranslate\"\r\n [buttonLabel]=\"'AttachPicture' | bbbTranslate\"\r\n [buttonAriaLabel]=\"'AttachPicture' | bbbTranslate\"\r\n accept=\".png,.jpg,.bpm,.jpeg,.gif,.png,.tif,.pdf\"\r\n [multiple]=\"maxFileCount === 0 || maxFileCount > 1\"\r\n (selectedFilesChanged)=\"onFileSelection($event)\"\r\n (selectedInvalidFiles)=\"onInvalidFiles($event)\"\r\n></fd-file-uploader>\r\n\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n isInlineGallery ? inlineGallery : layoutGridTpl;\r\n context: {\r\n disableOrReadonly: (disableOrReadonly$ | async),\r\n mediaData: (mediaData$ | async),\r\n deviceSize: (deviceSize$ | async),\r\n uploader: uploader\r\n }\r\n \"\r\n></ng-container>\r\n<ng-template #inlineGallery let-mediaData=\"mediaData\" let-deviceSize=\"deviceSize\">\r\n <fd-toolbar [shouldOverflow]=\"true\">\r\n @if(mediaData.length && selectedMedia){\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n fdType=\"transparent\"\r\n [label]=\"'Download' | bbbTranslate\"\r\n glyph=\"download\"\r\n [name]=\"selectedMedia.label\"\r\n [src]=\"selectedMedia.mediaUrl\"\r\n saveImage\r\n ></button>\r\n }\r\n <button\r\n fd-button\r\n fdType=\"transparent\"\r\n [label]=\"'Scan' | bbbTranslate\"\r\n fd-toolbar-item\r\n [glyph]=\"'x-ray'\"\r\n [fdMenuTrigger]=\"menu\"\r\n ></button>\r\n @if(!Setting.GroupList?.length){\r\n <button\r\n fd-button\r\n fd-toolbar-item\r\n glyph=\"add-photo\"\r\n fdType=\"transparent\"\r\n [label]=\"'AttachFile' | bbbTranslate\"\r\n (click)=\"onPrimaryUpload(uploader)\"\r\n ></button>\r\n }@else{\r\n <fd-split-button\r\n fd-toolbar-item\r\n [mainAction]=\"{ mainActionTitle: ('AttachFile' | bbbTranslate), keepMainAction: true }\"\r\n (primaryButtonClicked)=\"onPrimaryUpload(uploader)\"\r\n >\r\n <fd-menu #menu>\r\n @for (groupItem of Setting.GroupList; track groupItem.Id; let index = $index) {\r\n <li fd-menu-item (click)=\"onGroupAttach(groupItem, uploader)\">\r\n <div fd-menu-interactive>\r\n <span fd-menu-title>{{ groupItem.Name | bbbTranslate }}</span>\r\n </div>\r\n </li>\r\n }\r\n </fd-menu>\r\n </fd-split-button>\r\n }\r\n\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n fdType=\"transparent\"\r\n [label]=\"'Rotate' | bbbTranslate\"\r\n glyph=\"rotate\"\r\n (click)=\"onRotate2()\"\r\n ></button>\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n fdType=\"transparent\"\r\n [label]=\"'Delete' | bbbTranslate\"\r\n glyph=\"delete\"\r\n (click)=\"onDelete(selectedId)\"\r\n ></button>\r\n <fd-toolbar-separator></fd-toolbar-separator>\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n [glyph]=\"'text-align-justified'\"\r\n [fdType]=\"fillWidth ? 'emphasized' : 'transparent'\"\r\n fdType=\"transparent\"\r\n (click)=\"fillWidth = !fillWidth\"\r\n ></button>\r\n <button glyph=\"print\" fdType=\"transparent\" fd-toolbar-item fd-button [files]=\"mediaData\" printFiles></button>\r\n </fd-toolbar>\r\n\r\n <bsu-file-gallery-viewer\r\n [style.max-height]=\"'100svh'\"\r\n [style.min-height.px]=\"layoutInfo.Bounds.height || 480\"\r\n fillEmptySpace\r\n [decrement]=\"'4.5rem'\"\r\n [fillWidth]=\"true\"\r\n [fillWidth]=\"fillWidth\"\r\n [groupList]=\"Setting.GroupList\"\r\n [deviceSize]=\"deviceSize\"\r\n [title]=\"'AttachPicture' | bbbTranslate\"\r\n [files]=\"mediaData\"\r\n [isImageGallery]=\"true\"\r\n [isHorizontal]=\"isThumbnailHorizontal\"\r\n [selectedId]=\"selectedId\"\r\n (selectedIdChange)=\"selectedId = $event\"\r\n ></bsu-file-gallery-viewer>\r\n</ng-template>\r\n<ng-template\r\n #layoutGridTpl\r\n let-inDialog=\"inDialog\"\r\n let-gallery=\"gallery\"\r\n let-disableOrReadonly=\"disableOrReadonly\"\r\n let-mediaData=\"mediaData\"\r\n let-deviceSize=\"deviceSize\"\r\n let-uploader=\"uploader\"\r\n>\r\n <bsu-file-card-viewer\r\n [inDialog]=\"inDialog\"\r\n [mediaData]=\"mediaData\"\r\n [disableOrReadonly]=\"disableOrReadonly\"\r\n [deviceSize]=\"deviceSize\"\r\n [uploader]=\"uploader\"\r\n [groupList]=\"Setting.GroupList\"\r\n [uploadingState]=\"(uploadingState$ | async)!!\"\r\n [scanMenu]=\"menu\"\r\n (rotateMedia)=\"onRotate($event)\"\r\n (deleteMedia)=\"onDelete($event)\"\r\n (openUploader)=\"onOpenUploader($event, uploader)\"\r\n ></bsu-file-card-viewer>\r\n</ng-template>\r\n\r\n<fd-menu #menu>\r\n <li fd-menu-item (click)=\"onScan()\">\r\n <a fd-menu-interactive>\r\n <span fd-menu-title>{{ 'Scan' | bbbTranslate }}</span>\r\n </a>\r\n </li>\r\n <li fd-menu-item (click)=\"onAdvanceScan()\">\r\n <a fd-menu-interactive>\r\n <span fd-menu-title>{{ 'AdvancedScan' | bbbTranslate }}</span>\r\n </a>\r\n </li>\r\n</fd-menu>\r\n", styles: [":host{position:relative}:host ::ng-deep .delete button{border-color:transparent!important;background-color:transparent!important}.big-imgs-box{position:relative}.big-imgs-box>fd-toolbar{position:absolute;z-index:5;opacity:.5}.big-imgs-box>fd-toolbar:hover{opacity:1}fd-toolbar{width:100%}fd-dialog-footer{justify-content:center}.hatchBackground{min-height:100px}.gallery{display:flex;width:100%;height:400px;column-gap:1px;background-color:var(--sapField_Background, #fff)}.gallery ::-webkit-scrollbar{width:7px;height:7px}.gallery ::-webkit-scrollbar-track{box-shadow:inset 0 0 5px gray;border-radius:4px}.gallery ::-webkit-scrollbar-thumb{background:#555454;border-radius:4px}.gallery ::-webkit-scrollbar-thumb:hover{background:#2c2b2b}.gallery .column{overflow-y:scroll;display:flex;flex-direction:column;row-gap:3%;align-items:center}.gallery .column .pics{width:100%;display:flex;justify-content:center}.gallery .column .pics img{border-radius:5px}.gallery .column.small-imgs-box{flex:10%}.gallery .column.big-imgs-box{flex:90%}.gallery .selected{background-color:#fff;border:3px solid #0294d8;padding:10px}.gallery .fill-all .pics{height:100%}.gallery .fill-all img{width:100%!important;height:100%!important;object-fit:fill!important}.gallery .fill-original img{width:unset;height:unset}.gallery .zoom1 img{zoom:1}.gallery .zoom1-5 img{zoom:1.5}.gallery .zoom2 img{zoom:2}fd-dialog .gallery{overflow:auto}fd-dialog .gallery .column{overflow:initial}fd-dialog .gallery .pics{position:relative}fd-dialog fd-dialog-body{display:flex}fd-dialog.horizontal fd-dialog-body{flex-direction:column}fd-dialog.horizontal .gallery{flex-direction:row}fd-dialog.horizontal .thumbnail{border-top:1px solid #ccc;overflow-x:auto}fd-dialog.vertical fd-dialog-body{flex-direction:row-reverse}fd-dialog.vertical .gallery{flex-direction:column;height:100%}fd-dialog.vertical .thumbnail{border-left:1px solid #ccc;height:100%;width:200px;overflow-y:auto}fd-dialog.vertical .thumbnail ::ng-deep .fd-row>div{width:100%;min-width:100%}fd-card.media fd-card-footer button{border:none}fd-card.inDialog fd-card-header{padding-top:5px;padding-bottom:5px}\n"] }]
11126
11182
  }], propDecorators: { _fileUploader: [{
11127
11183
  type: ViewChild,
11128
11184
  args: [FileUploaderComponent]
@@ -11880,7 +11936,7 @@ class ResponsiveToolbarComponent extends BaseComponent {
11880
11936
  this.btnClick.emit(button);
11881
11937
  }
11882
11938
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: ResponsiveToolbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
11883
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: ResponsiveToolbarComponent, isStandalone: false, selector: "bsu-responsive-toolbar", inputs: { buttons: "buttons" }, outputs: { btnClick: "btnClick" }, viewQueries: [{ propertyName: "btnListRef", predicate: ["btnRef"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<!-- <div style=\"width: 100%; height: 0; visibility: hidden\" #containerRef>\r\n<ng-container\r\n *ngTemplateOutlet=\"renderToolbar; context: { $implicit: buttons }\"\r\n></ng-container>\r\n</div>\r\n<bsu-responsive-toolbar-renderer\r\n *ngIf=\"buttonsCalculated\"\r\n [buttons]=\"buttonsCalculated\"\r\n (btnClick)=\"onButtonClick($event)\"\r\n [renderToolbar]=\"renderToolbar\"\r\n></bsu-responsive-toolbar-renderer>\r\n\r\n<ng-template #renderToolbar let-btnList>\r\n <ng-container *ngFor=\"let btn of btnList\">\r\n <ng-container *ngIf=\"btn === '-' || btn.text === '-'; else btnCommand\">\r\n <span #btnRef class=\"toolbar-btn toolbar-vseperator\"></span>\r\n </ng-container>\r\n <ng-template #btnCommand>\r\n <ui5-button\r\n #btnRef\r\n (click)=\"onButtonClick(btn)\"\r\n [attr.disabled]=\"btn.enable === false ? true : null\"\r\n [attr.disabled]=\"btn.readonly === true ? true : null\"\r\n class=\"toolbar-btn\"\r\n [attr.design]=\"btn.emphasized ? 'Emphasized' : 'Transparent'\"\r\n [attr.icon]=\"btn.newIcon ? btn.newIcon : null\"\r\n >{{ btn.text }}\r\n <img *ngIf=\"!btn.newIcon && !btn.isBuiltin\" width=\"16\" [src]=\"btn.icon\"\r\n /></ui5-button>\r\n </ng-template>\r\n </ng-container>\r\n </ng-template> -->\r\n\r\n<fd-toolbar [shouldOverflow]=\"true\" [style.direction]=\"dirValue$ | async\">\r\n @for (btn of btns; track btn) { @if (btn === '-' || btn.text === '-') {\r\n <fd-toolbar-separator></fd-toolbar-separator>\r\n } @else {\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n (click)=\"onButtonClick(btn)\"\r\n [attr.disabled]=\"btn.enable === false ? true : null\"\r\n [attr.disabled]=\"btn.readonly === true ? true : null\"\r\n [fdType]=\"btn.emphasized ? 'emphasized' : 'transparent'\"\r\n [label]=\"btn.text\"\r\n [glyph]=\"btn.newIcon ? btn.newIcon : null\"\r\n >\r\n @if (!btn.newIcon && !btn.isBuiltin) {\r\n <img width=\"16\" [src]=\"btn.icon\" />\r\n }\r\n </button>\r\n }\r\n <ng-template #btnCommand>\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n (click)=\"onButtonClick(btn)\"\r\n [attr.disabled]=\"btn.enable === false ? true : null\"\r\n [attr.disabled]=\"btn.readonly === true ? true : null\"\r\n [fdType]=\"btn.emphasized ? 'emphasized' : 'transparent'\"\r\n [label]=\"btn.text\"\r\n [glyph]=\"btn.newIcon ? btn.newIcon : null\"\r\n >\r\n @if (!btn.newIcon && !btn.isBuiltin) {\r\n <img width=\"16\" [src]=\"btn.icon\" />\r\n }\r\n </button>\r\n </ng-template>\r\n }\r\n</fd-toolbar>\r\n", styles: [":host{display:block;width:100%;position:relative}:host ::ng-deep .fd-toolbar--solid{background-color:var(--sapBackgroundColor, #f7f7f7);border:none}\n"], dependencies: [{ kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { 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: i8.ToolbarSeparatorComponent, selector: "fd-toolbar-separator" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
11939
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: ResponsiveToolbarComponent, isStandalone: false, selector: "bsu-responsive-toolbar", inputs: { buttons: "buttons" }, outputs: { btnClick: "btnClick" }, viewQueries: [{ propertyName: "btnListRef", predicate: ["btnRef"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<!-- <div style=\"width: 100%; height: 0; visibility: hidden\" #containerRef>\r\n<ng-container\r\n *ngTemplateOutlet=\"renderToolbar; context: { $implicit: buttons }\"\r\n></ng-container>\r\n</div>\r\n<bsu-responsive-toolbar-renderer\r\n *ngIf=\"buttonsCalculated\"\r\n [buttons]=\"buttonsCalculated\"\r\n (btnClick)=\"onButtonClick($event)\"\r\n [renderToolbar]=\"renderToolbar\"\r\n></bsu-responsive-toolbar-renderer>\r\n\r\n<ng-template #renderToolbar let-btnList>\r\n <ng-container *ngFor=\"let btn of btnList\">\r\n <ng-container *ngIf=\"btn === '-' || btn.text === '-'; else btnCommand\">\r\n <span #btnRef class=\"toolbar-btn toolbar-vseperator\"></span>\r\n </ng-container>\r\n <ng-template #btnCommand>\r\n <ui5-button\r\n #btnRef\r\n (click)=\"onButtonClick(btn)\"\r\n [attr.disabled]=\"btn.enable === false ? true : null\"\r\n [attr.disabled]=\"btn.readonly === true ? true : null\"\r\n class=\"toolbar-btn\"\r\n [attr.design]=\"btn.emphasized ? 'Emphasized' : 'Transparent'\"\r\n [attr.icon]=\"btn.newIcon ? btn.newIcon : null\"\r\n >{{ btn.text }}\r\n <img *ngIf=\"!btn.newIcon && !btn.isBuiltin\" width=\"16\" [src]=\"btn.icon\"\r\n /></ui5-button>\r\n </ng-template>\r\n </ng-container>\r\n </ng-template> -->\r\n\r\n<fd-toolbar [shouldOverflow]=\"true\" [style.direction]=\"dirValue$ | async\">\r\n @for (btn of btns; track btn) { @if (btn === '-' || btn.text === '-') {\r\n <fd-toolbar-separator></fd-toolbar-separator>\r\n } @else {\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n (click)=\"onButtonClick(btn)\"\r\n [attr.disabled]=\"btn.enable === false ? true : null\"\r\n [attr.disabled]=\"btn.readonly === true ? true : null\"\r\n [fdType]=\"btn.emphasized ? 'emphasized' : 'transparent'\"\r\n [label]=\"btn.text\"\r\n [glyph]=\"btn.newIcon ? btn.newIcon : null\"\r\n >\r\n @if (!btn.newIcon && !btn.isBuiltin) {\r\n <img width=\"16\" [src]=\"btn.icon\" />\r\n }\r\n </button>\r\n }\r\n <ng-template #btnCommand>\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n (click)=\"onButtonClick(btn)\"\r\n [attr.disabled]=\"btn.enable === false ? true : null\"\r\n [attr.disabled]=\"btn.readonly === true ? true : null\"\r\n [fdType]=\"btn.emphasized ? 'emphasized' : 'transparent'\"\r\n [label]=\"btn.text\"\r\n [glyph]=\"btn.newIcon ? btn.newIcon : null\"\r\n >\r\n @if (!btn.newIcon && !btn.isBuiltin) {\r\n <img width=\"16\" [src]=\"btn.icon\" />\r\n }\r\n </button>\r\n </ng-template>\r\n }\r\n</fd-toolbar>\r\n", styles: [":host{display:block;width:100%;position:relative}:host ::ng-deep .fd-toolbar--solid{background-color:var(--sapBackgroundColor, #f7f7f7);border:none}\n"], dependencies: [{ kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i7$2.ToolbarComponent, selector: "fd-toolbar", inputs: ["titleId", "class", "shouldOverflow", "fdType", "title", "active", "clearBorder", "forceOverflow", "tabindex", "headingLevel", "ariaLabel", "ariaLabelledBy"] }, { kind: "directive", type: i7$2.ToolbarItemDirective, selector: "[fd-toolbar-item], [fdOverflowGroup], [fdOverflowPriority]", inputs: ["fdOverflowPriority", "fdOverflowGroup"] }, { kind: "component", type: i7$2.ToolbarSeparatorComponent, selector: "fd-toolbar-separator" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
11884
11940
  }
11885
11941
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: ResponsiveToolbarComponent, decorators: [{
11886
11942
  type: Component,
@@ -12147,7 +12203,7 @@ class FormDialogComponent extends BaseComponent {
12147
12203
  this.caption = typeDefName + ':' + moCaption;
12148
12204
  }
12149
12205
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: FormDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
12150
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: FormDialogComponent, isStandalone: false, selector: "bsu-form-dialog", providers: [ContainerService], viewQueries: [{ propertyName: "dialogTemplateRef", first: true, predicate: ["dialog"], descendants: true, read: TemplateRef, static: true }, { propertyName: "_dialogForm", first: true, predicate: ["dialogTplRef"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #dialog>\r\n <fd-dialog\r\n [dialogConfig]=\"dialogConfig\"\r\n [dialogRef]=\"dialog\"\r\n #dialogTplRef\r\n class=\"form-dialog\"\r\n intersectionObserver\r\n [intersectionThreshold]=\"0.5\"\r\n (visibilityChange)=\"onBarRightVisibilityChange($event, dialogBody, dialogTplRef)\"\r\n >\r\n <fd-dialog-header>\r\n <ng-template fdkTemplate=\"header\">\r\n @if(formUi()?.extendToolbarItems$ | async | tlbButtons: 'inFooter':false:true;as toolbarItems){\r\n <div\r\n fd-bar-left\r\n #barLeft\r\n intersectionObserver\r\n [intersectionThreshold]=\"0.5\"\r\n (visibilityChange)=\"onHeaderTitleVisibilityChange($event, barLeft)\"\r\n >\r\n <h1 fd-title>\r\n {{ title }}\r\n </h1>\r\n </div>\r\n <div fd-bar-center style=\"flex: 1; display: none\"></div>\r\n <div fd-bar-right #barRight class=\"bar-right\" [attr.items]=\"toolbarItems.length\">\r\n <bsu-form-toolbar\r\n fd-bar-right\r\n class=\"toolbar-hide-spacer\"\r\n [width]=\"'100%'\"\r\n [shouldOverflow]=\"true\"\r\n [deviceSize]=\"deviceSize\"\r\n [buttons]=\"toolbarItems | filterWorkflowInMobile: showWorkflowButtonsOnFooter\"\r\n [dirValue]=\"(formUi()?.dirValue$ | async)!!\"\r\n [isFirefox]=\"isFirefox\"\r\n (toolbarClick)=\"onToolbarClick($event)\"\r\n #formToolbar\r\n ></bsu-form-toolbar>\r\n @if (dialogConfig.data.canFullscreen) {\r\n <fd-button-bar\r\n ariaLabel=\"fullscreen\"\r\n fullscreenDialog\r\n [glyph]=\"(dialog.fullScreen | async) === true ? 'exitfullscreen' : 'resize'\"\r\n (click)=\"onFullscreenToggle(dialog, dialogBody, dialogTplRef)\"\r\n ></fd-button-bar>\r\n }\r\n <fd-button-bar\r\n ariaLabel=\"close\"\r\n glyph=\"decline\"\r\n (click)=\"onCancel()\"\r\n [style.width]=\"\"\r\n ></fd-button-bar>\r\n </div>\r\n }\r\n </ng-template>\r\n </fd-dialog-header>\r\n\r\n <fd-dialog-body #dialogBody>\r\n <bnrc-form\r\n [formPanelCtrl]=\"formPanelCtrlr\"\r\n [params]=\"params\"\r\n (formClose)=\"onFormClose()\"\r\n (uiComponent)=\"onFormUiComponentReady($event)\"\r\n ></bnrc-form>\r\n </fd-dialog-body>\r\n <fd-dialog-footer [style.display]=\"!showFooter ? 'none' : null\">\r\n <ng-template fdkTemplate=\"footer\">\r\n <div fd-bar-right>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n layoutactions;\r\n context: {\r\n workflowButtons: (formUi()?.workflowButtons$ | async),\r\n extendToolbarItems:\r\n (formUi()?.extendToolbarItems$ | async | tlbButtons: 'inFooter':true)\r\n }\r\n \"\r\n >\r\n </ng-container>\r\n <ng-template\r\n #layoutactions\r\n let-workflowButtons=\"workflowButtons\"\r\n let-extendToolbarItems=\"extendToolbarItems\"\r\n >\r\n @if(workflowButtons.length && showWorkflowButtonsOnFooter ){\r\n <bsu-layout-actions\r\n [canSend]=\"false\"\r\n [buttons]=\"[]\"\r\n [isMobile]=\"isMobile\"\r\n [landscape]=\"(formUi()?.landscape$ | async) === true\"\r\n [standalone]=\"(formUi()?.standalone$ | async) === true\"\r\n [workflowButtons]=\"workflowButtons\"\r\n [workflowButtonsComboMode]=\"true\"\r\n [deviceSize]=\"deviceSize\"\r\n [rtl]=\"(formUi()?.rtl$ | async) === true\"\r\n (toolClick)=\"onToolbarClick($event)\"\r\n (workflowChoiceSelect)=\"onWorkflowChoiceClick($event)\"\r\n >\r\n </bsu-layout-actions>\r\n }@if(!hideFooter){ @for (btn of extendToolbarItems ; track btn.Id) { @if (!(btn === '-' ||\r\n btn.text === '-') ) {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n btn.Data?.CustomUi?.Selector ? dynamicBtnTemplate : btnTemplate;\r\n context: { $implicit: btn ,}\r\n \"\r\n ></ng-container>\r\n <ng-template #btnTemplate let-btn>\r\n <fd-dialog-footer-button>\r\n <fd-button-bar\r\n [fdType]=\"\r\n workflowButtons?.length && btn.design === 'emphasized' ? 'ghost' : btn.design\r\n \"\r\n [label]=\"btn.text | bbbTranslate\"\r\n [glyph]=\"btn.newIcon ? btn.newIcon : null\"\r\n (click)=\"btn.handler(btn, formPanelCtrlr?.Adapter?.Control)\"\r\n ></fd-button-bar>\r\n </fd-dialog-footer-button>\r\n </ng-template>\r\n <ng-template #dynamicBtnTemplate let-btn>\r\n <fd-dialog-footer-button>\r\n <bnrc-dynamic-form-toolbaritem\r\n fd-toolbar-item\r\n [component]=\"btn.Data.CustomUi\"\r\n [context]=\"btn\"\r\n [isEnable]=\"btn.Command?._isEnable\"\r\n (btnClick)=\"btn.handler(btn, formPanelCtrlr?.Adapter?.Control)\"\r\n ></bnrc-dynamic-form-toolbaritem>\r\n </fd-dialog-footer-button>\r\n </ng-template>\r\n } } @if (!isNonePersistance && showSaveButton !== false) {\r\n <fd-dialog-footer-button>\r\n <fd-button-bar\r\n fd-initial-focus\r\n fd-dialog-decisive-button\r\n [label]=\"'Cancel' | bbbTranslate\"\r\n (click)=\"onCancel()\"\r\n ></fd-button-bar>\r\n </fd-dialog-footer-button>\r\n } }\r\n </ng-template>\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:block;height:auto}fd-dialog-body{display:flex;flex-direction:column;height:100%;align-items:stretch;justify-content:stretch}fd-dialog-body>bnrc-form{flex-grow:1;display:flex;flex-direction:row;height:100%;justify-content:stretch;align-items:stretch}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { 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.DynamicFormToolbaritemComponent, selector: "bnrc-dynamic-form-toolbaritem", inputs: ["mo", "index", "deviceName", "deviceSize", "context", "btn", "isEnable", "showText", "allColumns", "conditionalFormats"], outputs: ["btnClick"] }, { kind: "directive", type: i2.IntersectionObserverDirective, selector: "[intersectionObserver]", inputs: ["intersectionDebounce", "intersectionRootMargin", "intersectionRoot", "intersectionThreshold"], outputs: ["visibilityChange"] }, { kind: "directive", type: i2.FormCloseDirective, selector: "[formClose]", inputs: ["isMobile"] }, { kind: "directive", type: i3$2.BarLeftDirective, selector: "[fd-bar-left]" }, { kind: "directive", type: i3$2.BarRightDirective, selector: "[fd-bar-right]" }, { kind: "component", type: i3$2.ButtonBarComponent, selector: "fd-button-bar", inputs: ["fullWidth", "fdType", "title", "ariaLabelledby", "id"] }, { kind: "component", type: i3$3.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i3$3.DialogBodyComponent, selector: "fd-dialog-body", inputs: ["disablePaddings"] }, { kind: "component", type: i3$3.DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: i3$3.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "directive", type: i4$2.TemplateDirective, selector: "[fdkTemplate]", inputs: ["fdkTemplate"] }, { kind: "component", type: i5.TitleComponent, selector: "[fd-title], [fdTitle]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "directive", type: i8.ToolbarItemDirective, selector: "[fd-toolbar-item], [fdOverflowGroup], [fdOverflowPriority]", inputs: ["fdOverflowPriority", "fdOverflowGroup"] }, { kind: "component", type: LayoutActionsComponent, selector: "bsu-layout-actions", inputs: ["workflowButtons", "workflowButtonsComboMode", "canSend", "simple", "footerDesign"], outputs: ["workflowChoiceSelect"] }, { kind: "component", type: FormToolbarComponent, selector: "bsu-form-toolbar", outputs: ["toolbarClick"] }, { kind: "directive", type: FullscreenDialogDirective, selector: "[fullscreenDialog]" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.TlbButtonsPipe, name: "tlbButtons" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: i2.FilterWorkflowInMobilePipe, name: "filterWorkflowInMobile" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
12206
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: FormDialogComponent, isStandalone: false, selector: "bsu-form-dialog", providers: [ContainerService], viewQueries: [{ propertyName: "dialogTemplateRef", first: true, predicate: ["dialog"], descendants: true, read: TemplateRef, static: true }, { propertyName: "_dialogForm", first: true, predicate: ["dialogTplRef"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #dialog>\r\n <fd-dialog\r\n [dialogConfig]=\"dialogConfig\"\r\n [dialogRef]=\"dialog\"\r\n #dialogTplRef\r\n class=\"form-dialog\"\r\n intersectionObserver\r\n [intersectionThreshold]=\"0.5\"\r\n (visibilityChange)=\"onBarRightVisibilityChange($event, dialogBody, dialogTplRef)\"\r\n >\r\n <fd-dialog-header>\r\n <ng-template fdkTemplate=\"header\">\r\n @if(formUi()?.extendToolbarItems$ | async | tlbButtons: 'inFooter':false:true;as toolbarItems){\r\n <div\r\n fd-bar-left\r\n #barLeft\r\n intersectionObserver\r\n [intersectionThreshold]=\"0.5\"\r\n (visibilityChange)=\"onHeaderTitleVisibilityChange($event, barLeft)\"\r\n >\r\n <h1 fd-title>\r\n {{ title }}\r\n </h1>\r\n </div>\r\n <div fd-bar-center style=\"flex: 1; display: none\"></div>\r\n <div fd-bar-right #barRight class=\"bar-right\" [attr.items]=\"toolbarItems.length\">\r\n <bsu-form-toolbar\r\n fd-bar-right\r\n class=\"toolbar-hide-spacer\"\r\n [width]=\"'100%'\"\r\n [shouldOverflow]=\"true\"\r\n [deviceSize]=\"deviceSize\"\r\n [buttons]=\"toolbarItems | filterWorkflowInMobile: showWorkflowButtonsOnFooter\"\r\n [dirValue]=\"(formUi()?.dirValue$ | async)!!\"\r\n [isFirefox]=\"isFirefox\"\r\n (toolbarClick)=\"onToolbarClick($event)\"\r\n #formToolbar\r\n ></bsu-form-toolbar>\r\n @if (dialogConfig.data.canFullscreen) {\r\n <fd-button-bar\r\n ariaLabel=\"fullscreen\"\r\n fullscreenDialog\r\n [glyph]=\"(dialog.fullScreen | async) === true ? 'exitfullscreen' : 'resize'\"\r\n (click)=\"onFullscreenToggle(dialog, dialogBody, dialogTplRef)\"\r\n ></fd-button-bar>\r\n }\r\n <fd-button-bar\r\n ariaLabel=\"close\"\r\n glyph=\"decline\"\r\n (click)=\"onCancel()\"\r\n [style.width]=\"\"\r\n ></fd-button-bar>\r\n </div>\r\n }\r\n </ng-template>\r\n </fd-dialog-header>\r\n\r\n <fd-dialog-body #dialogBody>\r\n <bnrc-form\r\n [formPanelCtrl]=\"formPanelCtrlr\"\r\n [params]=\"params\"\r\n (formClose)=\"onFormClose()\"\r\n (uiComponent)=\"onFormUiComponentReady($event)\"\r\n ></bnrc-form>\r\n </fd-dialog-body>\r\n <fd-dialog-footer [style.display]=\"!showFooter ? 'none' : null\">\r\n <ng-template fdkTemplate=\"footer\">\r\n <div fd-bar-right>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n layoutactions;\r\n context: {\r\n workflowButtons: (formUi()?.workflowButtons$ | async),\r\n extendToolbarItems:\r\n (formUi()?.extendToolbarItems$ | async | tlbButtons: 'inFooter':true)\r\n }\r\n \"\r\n >\r\n </ng-container>\r\n <ng-template\r\n #layoutactions\r\n let-workflowButtons=\"workflowButtons\"\r\n let-extendToolbarItems=\"extendToolbarItems\"\r\n >\r\n @if(workflowButtons.length && showWorkflowButtonsOnFooter ){\r\n <bsu-layout-actions\r\n [canSend]=\"false\"\r\n [buttons]=\"[]\"\r\n [isMobile]=\"isMobile\"\r\n [landscape]=\"(formUi()?.landscape$ | async) === true\"\r\n [standalone]=\"(formUi()?.standalone$ | async) === true\"\r\n [workflowButtons]=\"workflowButtons\"\r\n [workflowButtonsComboMode]=\"true\"\r\n [deviceSize]=\"deviceSize\"\r\n [rtl]=\"(formUi()?.rtl$ | async) === true\"\r\n (toolClick)=\"onToolbarClick($event)\"\r\n (workflowChoiceSelect)=\"onWorkflowChoiceClick($event)\"\r\n >\r\n </bsu-layout-actions>\r\n }@if(!hideFooter){ @for (btn of extendToolbarItems ; track btn.Id) { @if (!(btn === '-' ||\r\n btn.text === '-') ) {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n btn.Data?.CustomUi?.Selector ? dynamicBtnTemplate : btnTemplate;\r\n context: { $implicit: btn ,}\r\n \"\r\n ></ng-container>\r\n <ng-template #btnTemplate let-btn>\r\n <fd-dialog-footer-button>\r\n <fd-button-bar\r\n [fdType]=\"\r\n workflowButtons?.length && btn.design === 'emphasized' ? 'ghost' : btn.design\r\n \"\r\n [label]=\"btn.text | bbbTranslate\"\r\n [glyph]=\"btn.newIcon ? btn.newIcon : null\"\r\n (click)=\"btn.handler(btn, formPanelCtrlr?.Adapter?.Control)\"\r\n ></fd-button-bar>\r\n </fd-dialog-footer-button>\r\n </ng-template>\r\n <ng-template #dynamicBtnTemplate let-btn>\r\n <fd-dialog-footer-button>\r\n <bnrc-dynamic-form-toolbaritem\r\n fd-toolbar-item\r\n [component]=\"btn.Data.CustomUi\"\r\n [context]=\"btn\"\r\n [isEnable]=\"btn.Command?._isEnable\"\r\n (btnClick)=\"btn.handler(btn, formPanelCtrlr?.Adapter?.Control)\"\r\n ></bnrc-dynamic-form-toolbaritem>\r\n </fd-dialog-footer-button>\r\n </ng-template>\r\n } } @if (!isNonePersistance && showSaveButton !== false) {\r\n <fd-dialog-footer-button>\r\n <fd-button-bar\r\n fd-initial-focus\r\n fd-dialog-decisive-button\r\n [label]=\"'Cancel' | bbbTranslate\"\r\n (click)=\"onCancel()\"\r\n ></fd-button-bar>\r\n </fd-dialog-footer-button>\r\n } }\r\n </ng-template>\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:block;height:auto}fd-dialog-body{display:flex;flex-direction:column;height:100%;align-items:stretch;justify-content:stretch}fd-dialog-body>bnrc-form{flex-grow:1;display:flex;flex-direction:row;height:100%;justify-content:stretch;align-items:stretch}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { 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.DynamicFormToolbaritemComponent, selector: "bnrc-dynamic-form-toolbaritem", inputs: ["mo", "index", "deviceName", "deviceSize", "context", "btn", "isEnable", "showText", "allColumns", "conditionalFormats"], outputs: ["btnClick"] }, { kind: "directive", type: i2.IntersectionObserverDirective, selector: "[intersectionObserver]", inputs: ["intersectionDebounce", "intersectionRootMargin", "intersectionRoot", "intersectionThreshold"], outputs: ["visibilityChange"] }, { kind: "directive", type: i2.FormCloseDirective, selector: "[formClose]", inputs: ["isMobile"] }, { kind: "directive", type: i3$2.BarLeftDirective, selector: "[fd-bar-left]" }, { kind: "directive", type: i3$2.BarRightDirective, selector: "[fd-bar-right]" }, { kind: "component", type: i3$2.ButtonBarComponent, selector: "fd-button-bar", inputs: ["fullWidth", "fdType", "title", "ariaLabelledby", "id"] }, { kind: "component", type: i3$3.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i3$3.DialogBodyComponent, selector: "fd-dialog-body", inputs: ["disablePaddings"] }, { kind: "component", type: i3$3.DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: i3$3.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "directive", type: i4$2.TemplateDirective, selector: "[fdkTemplate]", inputs: ["fdkTemplate"] }, { kind: "component", type: i5.TitleComponent, selector: "[fd-title], [fdTitle]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "directive", type: i7$2.ToolbarItemDirective, selector: "[fd-toolbar-item], [fdOverflowGroup], [fdOverflowPriority]", inputs: ["fdOverflowPriority", "fdOverflowGroup"] }, { kind: "component", type: LayoutActionsComponent, selector: "bsu-layout-actions", inputs: ["workflowButtons", "workflowButtonsComboMode", "canSend", "simple", "footerDesign"], outputs: ["workflowChoiceSelect"] }, { kind: "component", type: FormToolbarComponent, selector: "bsu-form-toolbar", outputs: ["toolbarClick"] }, { kind: "directive", type: FullscreenDialogDirective, selector: "[fullscreenDialog]" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.TlbButtonsPipe, name: "tlbButtons" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: i2.FilterWorkflowInMobilePipe, name: "filterWorkflowInMobile" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
12151
12207
  }
12152
12208
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: FormDialogComponent, decorators: [{
12153
12209
  type: Component,
@@ -12439,7 +12495,7 @@ class UlvSettingsComponent extends BaseComponent {
12439
12495
  ];
12440
12496
  }
12441
12497
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UlvSettingsComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
12442
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: UlvSettingsComponent, isStandalone: false, selector: "bsu-ulv-settings", inputs: { context: "context", open: "open" }, outputs: { changed: "changed", restore: "restore" }, viewQueries: [{ propertyName: "dialogTemplateRef", first: true, predicate: ["dialogTemplateRef"], descendants: true, read: TemplateRef }, { propertyName: "gridColumnsComponent", first: true, predicate: ["gridColumnsRef"], descendants: true }, { propertyName: "gridSortComponent", first: true, predicate: ["gridSortRef"], descendants: true }, { propertyName: "gridGroupComponent", first: true, predicate: ["gridGroupRef"], descendants: true }, { propertyName: "settingButtonRef", predicate: ["settingButtons"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #dialogTemplateRef>\r\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\r\n <fd-dialog-header>\r\n <h1 fd-title>{{ 'Settings' | bbbTranslate }}</h1>\r\n <button fd-dialog-close-button (click)=\"dialog.dismiss('Close button')\"></button>\r\n </fd-dialog-header>\r\n <fd-dialog-body class=\"setting-wrapper\">\r\n <fd-segmented-button>\r\n @for (button of settingButtons; track button; let i = $index) {\r\n <button\r\n (click)=\"onSettingButtonsSelectionChange(i)\"\r\n #settingButtons\r\n [class.is-selected]=\"selectedSettingButton === i ? true : null\"\r\n fd-button\r\n [label]=\"button.text\"\r\n ></button>\r\n }\r\n </fd-segmented-button>\r\n <div\r\n class=\"setting-section\"\r\n [class.section-visible]=\"settingButtons[selectedSettingButton]?.text === ('Columns' | bbbTranslate)\"\r\n >\r\n <bsu-ui-grid-columns [columns]=\"allColumns\" #gridColumnsRef></bsu-ui-grid-columns>\r\n </div>\r\n <div\r\n class=\"setting-section\"\r\n [class.section-visible]=\"settingButtons[selectedSettingButton]?.text === ('Sort' | bbbTranslate)\"\r\n >\r\n <bsu-ui-grid-sort-setting\r\n #gridSortRef\r\n [columns]=\"allColumns\"\r\n [sortSettings]=\"sortSettings\"\r\n (changeSetting)=\"onChangeSetting()\"\r\n ></bsu-ui-grid-sort-setting>\r\n </div>\r\n\r\n <div\r\n class=\"setting-section\"\r\n [class.section-visible]=\"settingButtons[selectedSettingButton]?.text === ('Groups' | bbbTranslate)\"\r\n >\r\n <bsu-ui-grid-sort-setting\r\n #gridGroupRef\r\n [columns]=\"allColumns\"\r\n [class.section-visible]=\"selectedSettingButton === 1\"\r\n [sortSettings]=\"sortSettings\"\r\n [showGroups]=\"true\"\r\n (changeSetting)=\"onChangeSetting()\"\r\n ></bsu-ui-grid-sort-setting>\r\n </div>\r\n </fd-dialog-body>\r\n\r\n <fd-dialog-footer>\r\n <fd-dialog-footer-button>\r\n <button fd-button fdType=\"emphasized\" (click)=\"onOkClick()\" [label]=\"'OK' | bbbTranslate\"></button>\r\n </fd-dialog-footer-button>\r\n <fd-dialog-footer-button>\r\n <button fd-button (click)=\"onCancelSettings()\" [label]=\"'Cancel' | bbbTranslate\"></button>\r\n </fd-dialog-footer-button>\r\n <fd-dialog-footer-button>\r\n <button\r\n fd-button\r\n fdType=\"transparent\"\r\n (click)=\"onRestoreClick()\"\r\n [label]=\"'Restore' | bbbTranslate\"\r\n ></button>\r\n </fd-dialog-footer-button>\r\n </fd-dialog-footer>\r\n </fd-dialog>\r\n</ng-template>\r\n", styles: [".popover-content{width:60vw;height:60vh;background-color:var(--sapBackgroundColor)}.segemented-wrapper{box-shadow:var(--sapContent_HeaderShadow)}ui5-responsive-popover{background-color:var(--sapBackgroundColor)}.header-settings{padding:10px 0 2px;display:flex;flex-direction:column;align-items:stretch;width:100%}.header-settings ui5-title{align-self:flex-start}fd-segmented-button{display:flex;justify-content:stretch;width:100%;height:36px}fd-segmented-button button{width:100%}.setting-wrapper{min-height:calc(60vh - 25px)}.setting-section{display:none;overflow:hidden;padding:15px 0;max-height:50vh}.section-visible{overflow:auto;display:block}\n"], dependencies: [{ kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i3$3.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i3$3.DialogBodyComponent, selector: "fd-dialog-body", inputs: ["disablePaddings"] }, { kind: "component", type: i3$3.DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: i3$3.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "component", type: i3$3.DialogCloseButtonComponent, selector: "[fd-dialog-close-button]", inputs: ["mobile", "title", "ariaLabel"] }, { kind: "component", type: i5.TitleComponent, selector: "[fd-title], [fdTitle]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "component", type: i4$8.SegmentedButtonComponent, selector: "fd-segmented-button", inputs: ["toggle", "vertical"] }, { kind: "component", type: UiGridSortSettingComponent, selector: "bsu-ui-grid-sort-setting", inputs: ["showGroups", "columns", "sortSettings"], outputs: ["changeSetting"] }, { kind: "component", type: UiGridColumnsComponent, selector: "bsu-ui-grid-columns", inputs: ["columns", "selectedColumns"], outputs: ["columnsChange"] }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
12498
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: UlvSettingsComponent, isStandalone: false, selector: "bsu-ulv-settings", inputs: { context: "context", open: "open" }, outputs: { changed: "changed", restore: "restore" }, viewQueries: [{ propertyName: "dialogTemplateRef", first: true, predicate: ["dialogTemplateRef"], descendants: true, read: TemplateRef }, { propertyName: "gridColumnsComponent", first: true, predicate: ["gridColumnsRef"], descendants: true }, { propertyName: "gridSortComponent", first: true, predicate: ["gridSortRef"], descendants: true }, { propertyName: "gridGroupComponent", first: true, predicate: ["gridGroupRef"], descendants: true }, { propertyName: "settingButtonRef", predicate: ["settingButtons"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #dialogTemplateRef>\r\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\r\n <fd-dialog-header>\r\n <h1 fd-title>{{ 'Settings' | bbbTranslate }}</h1>\r\n <button fd-dialog-close-button (click)=\"dialog.dismiss('Close button')\"></button>\r\n </fd-dialog-header>\r\n <fd-dialog-body class=\"setting-wrapper\">\r\n <fd-segmented-button>\r\n @for (button of settingButtons; track button; let i = $index) {\r\n <button\r\n (click)=\"onSettingButtonsSelectionChange(i)\"\r\n #settingButtons\r\n [class.is-selected]=\"selectedSettingButton === i ? true : null\"\r\n fd-button\r\n [label]=\"button.text\"\r\n ></button>\r\n }\r\n </fd-segmented-button>\r\n <div\r\n class=\"setting-section\"\r\n [class.section-visible]=\"settingButtons[selectedSettingButton]?.text === ('Columns' | bbbTranslate)\"\r\n >\r\n <bsu-ui-grid-columns [columns]=\"allColumns\" #gridColumnsRef></bsu-ui-grid-columns>\r\n </div>\r\n <div\r\n class=\"setting-section\"\r\n [class.section-visible]=\"settingButtons[selectedSettingButton]?.text === ('Sort' | bbbTranslate)\"\r\n >\r\n <bsu-ui-grid-sort-setting\r\n #gridSortRef\r\n [columns]=\"allColumns\"\r\n [sortSettings]=\"sortSettings\"\r\n (changeSetting)=\"onChangeSetting()\"\r\n ></bsu-ui-grid-sort-setting>\r\n </div>\r\n\r\n <div\r\n class=\"setting-section\"\r\n [class.section-visible]=\"settingButtons[selectedSettingButton]?.text === ('Groups' | bbbTranslate)\"\r\n >\r\n <bsu-ui-grid-sort-setting\r\n #gridGroupRef\r\n [columns]=\"allColumns\"\r\n [class.section-visible]=\"selectedSettingButton === 1\"\r\n [sortSettings]=\"sortSettings\"\r\n [showGroups]=\"true\"\r\n (changeSetting)=\"onChangeSetting()\"\r\n ></bsu-ui-grid-sort-setting>\r\n </div>\r\n </fd-dialog-body>\r\n\r\n <fd-dialog-footer>\r\n <fd-dialog-footer-button>\r\n <button fd-button fdType=\"emphasized\" (click)=\"onOkClick()\" [label]=\"'OK' | bbbTranslate\"></button>\r\n </fd-dialog-footer-button>\r\n <fd-dialog-footer-button>\r\n <button fd-button (click)=\"onCancelSettings()\" [label]=\"'Cancel' | bbbTranslate\"></button>\r\n </fd-dialog-footer-button>\r\n <fd-dialog-footer-button>\r\n <button\r\n fd-button\r\n fdType=\"transparent\"\r\n (click)=\"onRestoreClick()\"\r\n [label]=\"'Restore' | bbbTranslate\"\r\n ></button>\r\n </fd-dialog-footer-button>\r\n </fd-dialog-footer>\r\n </fd-dialog>\r\n</ng-template>\r\n", styles: [".popover-content{width:60vw;height:60vh;background-color:var(--sapBackgroundColor)}.segemented-wrapper{box-shadow:var(--sapContent_HeaderShadow)}ui5-responsive-popover{background-color:var(--sapBackgroundColor)}.header-settings{padding:10px 0 2px;display:flex;flex-direction:column;align-items:stretch;width:100%}.header-settings ui5-title{align-self:flex-start}fd-segmented-button{display:flex;justify-content:stretch;width:100%;height:36px}fd-segmented-button button{width:100%}.setting-wrapper{min-height:calc(60vh - 25px)}.setting-section{display:none;overflow:hidden;padding:15px 0;max-height:50vh}.section-visible{overflow:auto;display:block}\n"], dependencies: [{ kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i3$3.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i3$3.DialogBodyComponent, selector: "fd-dialog-body", inputs: ["disablePaddings"] }, { kind: "component", type: i3$3.DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: i3$3.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "component", type: i3$3.DialogCloseButtonComponent, selector: "[fd-dialog-close-button]", inputs: ["mobile", "title", "ariaLabel"] }, { kind: "component", type: i5.TitleComponent, selector: "[fd-title], [fdTitle]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "component", type: i4$9.SegmentedButtonComponent, selector: "fd-segmented-button", inputs: ["toggle", "vertical"] }, { kind: "component", type: UiGridSortSettingComponent, selector: "bsu-ui-grid-sort-setting", inputs: ["showGroups", "columns", "sortSettings"], outputs: ["changeSetting"] }, { kind: "component", type: UiGridColumnsComponent, selector: "bsu-ui-grid-columns", inputs: ["columns", "selectedColumns"], outputs: ["columnsChange"] }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
12443
12499
  }
12444
12500
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UlvSettingsComponent, decorators: [{
12445
12501
  type: Component,
@@ -12663,7 +12719,7 @@ class UlvToolbarComponent extends BaseComponent {
12663
12719
  }
12664
12720
  }
12665
12721
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UlvToolbarComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
12666
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: UlvToolbarComponent, isStandalone: false, selector: "bsu-ulv-toolbar", inputs: { allowGridColumnSort: "allowGridColumnSort", useLayoutItemTextForControl: "useLayoutItemTextForControl", hideTitle: "hideTitle", title: "title", icon: "icon", deviceName: "deviceName", deviceSize: "deviceSize", access: "access", hideToolbar: "hideToolbar", toolbarButtons: "toolbarButtons", toolbarButtonsReportView: "toolbarButtonsReportView", contentDensity: "contentDensity", inlineEditMode: "inlineEditMode", allowInlineEdit: "allowInlineEdit", gridSetting: "gridSetting", viewCollection: "viewCollection", reportView: "reportView", inDialog: "inDialog", isMultiSelect: "isMultiSelect", cls: "cls", hasSelected: "hasSelected" }, outputs: { groupbyClick: "groupbyClick", toggleMultiSelect: "toggleMultiSelect", sortClick: "sortClick", columnClick: "columnClick", editModeClick: "editModeClick", viewClick: "viewClick", createNewInlineMo: "createNewInlineMo" }, viewQueries: [{ propertyName: "_tlbCmp", first: true, predicate: ["toolbar"], descendants: true }, { propertyName: "_divTempWidth", first: true, predicate: ["divTempWidth"], descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div\r\n style=\"width: 100%; height: 0; visibility: hidden; opacity: 0\"\r\n resizeHandler\r\n [fnResize]=\"onResize\"\r\n #divTempWidth\r\n></div>\r\n@if (!useLayoutItemTextForControl && !hideToolbar && visibled()) {\r\n<fd-toolbar\r\n #toolbar\r\n [shouldOverflow]=\"true\"\r\n [ngClass]=\"deviceSize\"\r\n [hasTitle]=\"!hideTitle\"\r\n [forceOverflow]=\"true\"\r\n [ngClass]=\"cls\"\r\n [style.width]=\"ulvWidth()\"\r\n>\r\n @if(!hideTitle && deviceSize !== 's' ? (title | bbbTranslate) : ''){ @if(icon){\r\n <fd-icon [glyph]=\"icon\"></fd-icon>\r\n }\r\n <h4 fd-title>{{ title | bbbTranslate }}</h4>\r\n } @if (deviceSize !== 's') {\r\n <!-- <fd-toolbar-spacer fd-toolbar-item></fd-toolbar-spacer> -->\r\n } @if (!hideToolbar) {\r\n <ng-content select=\"[fd-toolbar-item]\"></ng-content>\r\n @if (gridSetting && gridSetting.Hidden !== true && allowGridColumnSort) { @if (deviceSize === 's') {\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n [contentDensity]=\"contentDensity\"\r\n fdType=\"transparent\"\r\n fdOverflowPriority=\"always\"\r\n [fdOverflowGroup]=\"9\"\r\n (click)=\"onGroupbySettings()\"\r\n [label]=\"'Groups' | bbbTranslate\"\r\n bodyClick\r\n ></button>\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n [contentDensity]=\"contentDensity\"\r\n fdType=\"transparent\"\r\n fdOverflowPriority=\"always\"\r\n [fdOverflowGroup]=\"9\"\r\n (click)=\"onSortSettings()\"\r\n [label]=\"'Sort' | bbbTranslate\"\r\n bodyClick\r\n ></button>\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n [contentDensity]=\"contentDensity\"\r\n fdType=\"transparent\"\r\n fdOverflowPriority=\"always\"\r\n [fdOverflowGroup]=\"9\"\r\n (click)=\"onColumnSettings()\"\r\n [label]=\"'Columns' | bbbTranslate\"\r\n bodyClick\r\n ></button>\r\n } @if (deviceSize !== 's') {\r\n <button\r\n fd-button\r\n fd-toolbar-item\r\n fdOverflowPriority=\"never\"\r\n [fdOverflowGroup]=\"9\"\r\n [fdMenu]=\"true\"\r\n fdType=\"transparent\"\r\n glyph=\"action-settings\"\r\n [title]=\"'Settings' | bbbTranslate\"\r\n [fdMenuTrigger]=\"tableMenuSettings\"\r\n bodyClick\r\n ></button>\r\n }\r\n\r\n <fd-menu #tableMenuSettings>\r\n <li fd-menu-item>\r\n <div fd-menu-interactive (click)=\"tableMenuSettings.close(); onMultiSelect()\" bodyClick>\r\n <fd-menu-addon position=\"before\" glyph=\"checklist\"></fd-menu-addon>\r\n <span fd-menu-title>\r\n {{ isMultiSelect ? ('Single Select' | bbbTranslate) : ('Multi Select' | bbbTranslate) }}\r\n </span>\r\n </div>\r\n </li>\r\n <li fd-menu-item>\r\n <div fd-menu-interactive (click)=\"tableMenuSettings.close(); onColumnSettings()\" bodyClick>\r\n <fd-menu-addon position=\"before\" glyph=\"action-settings\"></fd-menu-addon>\r\n <span fd-menu-title>\r\n {{ 'Columns' | bbbTranslate }}\r\n </span>\r\n </div>\r\n </li>\r\n <li fd-menu-item>\r\n <div fd-menu-interactive (click)=\"tableMenuSettings.close(); onSortSettings()\" bodyClick>\r\n <fd-menu-addon position=\"before\" glyph=\"sort\"></fd-menu-addon>\r\n <span fd-menu-title>\r\n {{ 'Sort' | bbbTranslate }}\r\n </span>\r\n </div>\r\n </li>\r\n <li fd-menu-item>\r\n <div fd-menu-interactive (click)=\"tableMenuSettings.close(); onGroupbySettings()\" bodyClick>\r\n <fd-menu-addon position=\"before\" glyph=\"group-2\"></fd-menu-addon>\r\n <span fd-menu-title>\r\n {{ 'Groups' | bbbTranslate }}\r\n </span>\r\n </div>\r\n </li>\r\n </fd-menu>\r\n } @if (viewCollection && viewCollection.length > 1) {\r\n <fd-split-button\r\n fd-toolbar-item\r\n fdOverflowPriority=\"never\"\r\n [fdOverflowGroup]=\"10\"\r\n [fdType]=\"'transparent'\"\r\n [mainAction]=\"{\r\n keepMainAction: true,\r\n mainActionTitle: splitBtnTitle\r\n }\"\r\n >\r\n <fd-menu>\r\n @for (viewObject of viewCollection; track viewObject) {\r\n <li fd-menu-item>\r\n <div fd-menu-interactive (click)=\"onChangeView(viewObject)\" bodyClick>\r\n <span fd-menu-title>\r\n <fd-icon [glyph]=\"viewObject.UiComponent.Settings?.Icon\"> </fd-icon>\r\n </span>\r\n </div>\r\n </li>\r\n }\r\n </fd-menu>\r\n </fd-split-button>\r\n } @if (allowInlineEdit && access?.Edit) {\r\n <button\r\n fd-button\r\n fd-toolbar-item\r\n [fdType]=\"inlineEditMode ? 'emphasized' : 'transparent'\"\r\n [glyph]=\"'edit'\"\r\n [label]=\"deviceSize === 's' ? ('Inline Edit In List' | bbbTranslate) : ''\"\r\n (click)=\"onEditMode()\"\r\n fdOverflowPriority=\"low\"\r\n [fdOverflowGroup]=\"11\"\r\n [title]=\"'Inline Edit In List' | bbbTranslate\"\r\n bodyClick\r\n ></button>\r\n }\r\n <ng-template #splitBtnTitle>\r\n <fd-icon [glyph]=\"reportView.UiComponent.Settings?.Icon\"></fd-icon>\r\n </ng-template>\r\n <ng-template #splitBtnSettings>\r\n <fd-icon [glyph]=\"'action-settings'\"></fd-icon>\r\n </ng-template>\r\n @for (btn of toolbarButtons | reverse; track _trackBy(i, btn); let i = $index) { @if (btn !== '-' && btn.Command &&\r\n !btn.Command.CustomUi && !btn.menu) {\r\n <button\r\n fd-button\r\n fd-toolbar-item\r\n [fdOverflowPriority]=\"btn.priority\"\r\n [fdOverflowGroup]=\"btn.priorityGroup\"\r\n [ulvCommandHandler]=\"btn\"\r\n [disable]=\"inlineEditMode && btn.itemId === 'New'\"\r\n [disabled]=\"btn.Command._isEnable === false ? true : false\"\r\n [fdType]=\"!btn.Command._isEnable ? 'transparent' : btn.Command.JsonExtraProp?.Design || 'transparent'\"\r\n [glyph]=\"deviceSize === 's' ? null : btn.newIcon || btn.Command.JsonExtraProp?.Icon\"\r\n [title]=\"(btn.Command?.IsBuiltin ? btn.text : '') | bbbTranslate\"\r\n (click)=\"inlineEditMode && btn.itemId === 'New' && createNewInlineMo.emit()\"\r\n bodyClick\r\n >\r\n @if (!btn.Command.JsonExtraProp?.Icon && !btn.Command?.IsBuiltin && btn.icon) {\r\n <img width=\"16\" [src]=\"btn.icon\" />\r\n } @if (!btn.hideText || deviceSize === 's') {\r\n <span>{{ (!btn.text && btn.isCustom ? btn.itemId : btn.text) | bbbTranslate }}</span>\r\n }\r\n </button>\r\n } @if ((btn === '-' || btn.type === 'seperator') && deviceName !== 'mobile') {\r\n <fd-toolbar-separator fd-toolbar-item></fd-toolbar-separator>\r\n } @if (btn.menu) {\r\n <button\r\n fd-button\r\n fd-toolbar-item\r\n [fdMenu]=\"true\"\r\n [fdType]=\"btn.Command?.IsBuiltin ? 'standard' : 'transparent'\"\r\n [label]=\"btn.text | bbbTranslate\"\r\n [ariaLabel]=\"btn.text | bbbTranslate\"\r\n [fdMenuTrigger]=\"menu\"\r\n bodyClick\r\n >\r\n <fd-menu #menu>\r\n @for (btnCommand of btn.menu.items; track btnCommand) {\r\n <li fd-menu-item [ulvCommandHandler]=\"btnCommand\" (click)=\"menu.close()\">\r\n <div fd-menu-interactive>\r\n <span fd-menu-title>{{ btnCommand.text | bbbTranslate }}</span>\r\n </div>\r\n </li>\r\n }\r\n </fd-menu>\r\n </button>\r\n } @if (btn !== '-' && btn.Command && btn.Command.CustomUi) {\r\n <bnrc-dynamic-form-toolbaritem\r\n fd-toolbar-item\r\n [ulvCommandHandler]=\"btn\"\r\n [component]=\"btn.Command?.CustomUi\"\r\n [context]=\"btn\"\r\n [isEnable]=\"btn.Command?._isEnable\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n bodyClick\r\n ></bnrc-dynamic-form-toolbaritem>\r\n } } @for (btn of toolbarButtonsReportView | reverse; track btn.id; let i = $index) {\r\n <button\r\n fd-button\r\n fd-toolbar-item\r\n [fdOverflowPriority]=\"'high'\"\r\n [fdOverflowGroup]=\"1\"\r\n [glyph]=\"btn.icon\"\r\n [title]=\"btn.text | bbbTranslate\"\r\n [label]=\"btn.hideText ? '' : (btn.text | bbbTranslate)\"\r\n (click)=\"btn.handler()\"\r\n [disabled]=\"!btn.isEnable\"\r\n bodyClick\r\n ></button>\r\n } }\r\n</fd-toolbar>\r\n}\r\n", styles: [":host{display:block;width:100%;position:relative}:host fd-toolbar.border-b-0{border-bottom-width:0px!important}:host ::ng-deep .fd-toolbar{flex-wrap:nowrap!important}:host ::ng-deep .fd-toolbar{border-top:var(--sapList_BorderWidth) solid var(--sapList_BorderColor);border-left:var(--sapList_BorderWidth) solid var(--sapList_BorderColor);border-right:var(--sapList_BorderWidth) solid var(--sapList_BorderColor)}:host fd-toolbar.s ::ng-deep .fd-toolbar{justify-content:end}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.DynamicFormToolbaritemComponent, selector: "bnrc-dynamic-form-toolbaritem", inputs: ["mo", "index", "deviceName", "deviceSize", "context", "btn", "isEnable", "showText", "allColumns", "conditionalFormats"], outputs: ["btnClick"] }, { kind: "directive", type: i2.UlvCommandDirective, selector: "[ulvCommandHandler]", inputs: ["ulvCommandHandler", "disable"], outputs: ["commandClick"] }, { kind: "directive", type: i2.BodyClickDirective, selector: "[bodyClick]", inputs: ["disableBodyClick"] }, { kind: "directive", type: i2.ResizeHandlerDirective, selector: "[resizeHandler]", inputs: ["fnResize"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i3.IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "color", "background", "class", "ariaLabel", "ariaHidden"] }, { kind: "component", type: i6.MenuComponent, selector: "fd-menu", inputs: ["mobile", "disabled", "focusTrapped", "focusAutoCapture", "openOnHoverTime", "mobileConfig", "ariaLabel", "ariaLabelledby", "id"], outputs: ["activePath"] }, { kind: "component", type: i6.MenuItemComponent, selector: "li[fd-menu-item]", inputs: ["disabled", "itemId", "submenu", "parentSubmenu", "hasSeparator"], outputs: ["onSelect"], exportAs: ["fd-menu-item"] }, { kind: "component", type: i6.MenuInteractiveComponent, selector: "[fd-menu-interactive]" }, { kind: "directive", type: i6.MenuTitleDirective, selector: "[fd-menu-title]" }, { kind: "component", type: i6.MenuAddonDirective, selector: "fd-menu-addon", inputs: ["position", "submenuIndicator", "ariaHidden"] }, { kind: "directive", type: i6.MenuTriggerDirective, selector: "[fdMenuTrigger]", inputs: ["fdMenuTrigger"] }, { kind: "component", type: i5.TitleComponent, selector: "[fd-title], [fdTitle]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "component", type: i7$2.SplitButtonComponent, selector: "fd-split-button", inputs: ["glyph", "glyphFont", "disabled", "fdType", "expandButtonTitle", "selected", "fixedWidth", "mainAction", "arialLabel"], outputs: ["primaryButtonClicked"] }, { 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: i8.ToolbarSeparatorComponent, selector: "fd-toolbar-separator" }, { kind: "directive", type: ContentDensityDirective, selector: "[contentDensity]" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: i2.ReversePipe, name: "reverse" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
12722
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: UlvToolbarComponent, isStandalone: false, selector: "bsu-ulv-toolbar", inputs: { allowGridColumnSort: "allowGridColumnSort", useLayoutItemTextForControl: "useLayoutItemTextForControl", hideTitle: "hideTitle", title: "title", icon: "icon", deviceName: "deviceName", deviceSize: "deviceSize", access: "access", hideToolbar: "hideToolbar", toolbarButtons: "toolbarButtons", toolbarButtonsReportView: "toolbarButtonsReportView", contentDensity: "contentDensity", inlineEditMode: "inlineEditMode", allowInlineEdit: "allowInlineEdit", gridSetting: "gridSetting", viewCollection: "viewCollection", reportView: "reportView", inDialog: "inDialog", isMultiSelect: "isMultiSelect", cls: "cls", hasSelected: "hasSelected" }, outputs: { groupbyClick: "groupbyClick", toggleMultiSelect: "toggleMultiSelect", sortClick: "sortClick", columnClick: "columnClick", editModeClick: "editModeClick", viewClick: "viewClick", createNewInlineMo: "createNewInlineMo" }, viewQueries: [{ propertyName: "_tlbCmp", first: true, predicate: ["toolbar"], descendants: true }, { propertyName: "_divTempWidth", first: true, predicate: ["divTempWidth"], descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div\r\n style=\"width: 100%; height: 0; visibility: hidden; opacity: 0\"\r\n resizeHandler\r\n [fnResize]=\"onResize\"\r\n #divTempWidth\r\n></div>\r\n@if (!useLayoutItemTextForControl && !hideToolbar && visibled()) {\r\n<fd-toolbar\r\n #toolbar\r\n [shouldOverflow]=\"true\"\r\n [ngClass]=\"deviceSize\"\r\n [hasTitle]=\"!hideTitle\"\r\n [forceOverflow]=\"true\"\r\n [ngClass]=\"cls\"\r\n [style.width]=\"ulvWidth()\"\r\n>\r\n @if(!hideTitle && deviceSize !== 's' ? (title | bbbTranslate) : ''){ @if(icon){\r\n <fd-icon [glyph]=\"icon\"></fd-icon>\r\n }\r\n <h4 fd-title>{{ title | bbbTranslate }}</h4>\r\n } @if (deviceSize !== 's') {\r\n <!-- <fd-toolbar-spacer fd-toolbar-item></fd-toolbar-spacer> -->\r\n } @if (!hideToolbar) {\r\n <ng-content select=\"[fd-toolbar-item]\"></ng-content>\r\n @if (gridSetting && gridSetting.Hidden !== true && allowGridColumnSort) { @if (deviceSize === 's') {\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n [contentDensity]=\"contentDensity\"\r\n fdType=\"transparent\"\r\n fdOverflowPriority=\"always\"\r\n [fdOverflowGroup]=\"9\"\r\n (click)=\"onGroupbySettings()\"\r\n [label]=\"'Groups' | bbbTranslate\"\r\n bodyClick\r\n ></button>\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n [contentDensity]=\"contentDensity\"\r\n fdType=\"transparent\"\r\n fdOverflowPriority=\"always\"\r\n [fdOverflowGroup]=\"9\"\r\n (click)=\"onSortSettings()\"\r\n [label]=\"'Sort' | bbbTranslate\"\r\n bodyClick\r\n ></button>\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n [contentDensity]=\"contentDensity\"\r\n fdType=\"transparent\"\r\n fdOverflowPriority=\"always\"\r\n [fdOverflowGroup]=\"9\"\r\n (click)=\"onColumnSettings()\"\r\n [label]=\"'Columns' | bbbTranslate\"\r\n bodyClick\r\n ></button>\r\n } @if (deviceSize !== 's') {\r\n <button\r\n fd-button\r\n fd-toolbar-item\r\n fdOverflowPriority=\"never\"\r\n [fdOverflowGroup]=\"9\"\r\n [fdMenu]=\"true\"\r\n fdType=\"transparent\"\r\n glyph=\"action-settings\"\r\n [title]=\"'Settings' | bbbTranslate\"\r\n [fdMenuTrigger]=\"tableMenuSettings\"\r\n bodyClick\r\n ></button>\r\n }\r\n\r\n <fd-menu #tableMenuSettings>\r\n <li fd-menu-item>\r\n <div fd-menu-interactive (click)=\"tableMenuSettings.close(); onMultiSelect()\" bodyClick>\r\n <fd-menu-addon position=\"before\" glyph=\"checklist\"></fd-menu-addon>\r\n <span fd-menu-title>\r\n {{ isMultiSelect ? ('Single Select' | bbbTranslate) : ('Multi Select' | bbbTranslate) }}\r\n </span>\r\n </div>\r\n </li>\r\n <li fd-menu-item>\r\n <div fd-menu-interactive (click)=\"tableMenuSettings.close(); onColumnSettings()\" bodyClick>\r\n <fd-menu-addon position=\"before\" glyph=\"action-settings\"></fd-menu-addon>\r\n <span fd-menu-title>\r\n {{ 'Columns' | bbbTranslate }}\r\n </span>\r\n </div>\r\n </li>\r\n <li fd-menu-item>\r\n <div fd-menu-interactive (click)=\"tableMenuSettings.close(); onSortSettings()\" bodyClick>\r\n <fd-menu-addon position=\"before\" glyph=\"sort\"></fd-menu-addon>\r\n <span fd-menu-title>\r\n {{ 'Sort' | bbbTranslate }}\r\n </span>\r\n </div>\r\n </li>\r\n <li fd-menu-item>\r\n <div fd-menu-interactive (click)=\"tableMenuSettings.close(); onGroupbySettings()\" bodyClick>\r\n <fd-menu-addon position=\"before\" glyph=\"group-2\"></fd-menu-addon>\r\n <span fd-menu-title>\r\n {{ 'Groups' | bbbTranslate }}\r\n </span>\r\n </div>\r\n </li>\r\n </fd-menu>\r\n } @if (viewCollection && viewCollection.length > 1) {\r\n <fd-split-button\r\n fd-toolbar-item\r\n fdOverflowPriority=\"never\"\r\n [fdOverflowGroup]=\"10\"\r\n [fdType]=\"'transparent'\"\r\n [mainAction]=\"{\r\n keepMainAction: true,\r\n mainActionTitle: splitBtnTitle\r\n }\"\r\n >\r\n <fd-menu>\r\n @for (viewObject of viewCollection; track viewObject) {\r\n <li fd-menu-item>\r\n <div fd-menu-interactive (click)=\"onChangeView(viewObject)\" bodyClick>\r\n <span fd-menu-title>\r\n <fd-icon [glyph]=\"viewObject.UiComponent.Settings?.Icon\"> </fd-icon>\r\n </span>\r\n </div>\r\n </li>\r\n }\r\n </fd-menu>\r\n </fd-split-button>\r\n } @if (allowInlineEdit && access?.Edit) {\r\n <button\r\n fd-button\r\n fd-toolbar-item\r\n [fdType]=\"inlineEditMode ? 'emphasized' : 'transparent'\"\r\n [glyph]=\"'edit'\"\r\n [label]=\"deviceSize === 's' ? ('Inline Edit In List' | bbbTranslate) : ''\"\r\n (click)=\"onEditMode()\"\r\n fdOverflowPriority=\"low\"\r\n [fdOverflowGroup]=\"11\"\r\n [title]=\"'Inline Edit In List' | bbbTranslate\"\r\n bodyClick\r\n ></button>\r\n }\r\n <ng-template #splitBtnTitle>\r\n <fd-icon [glyph]=\"reportView.UiComponent.Settings?.Icon\"></fd-icon>\r\n </ng-template>\r\n <ng-template #splitBtnSettings>\r\n <fd-icon [glyph]=\"'action-settings'\"></fd-icon>\r\n </ng-template>\r\n @for (btn of toolbarButtons | reverse; track _trackBy(i, btn); let i = $index) { @if (btn !== '-' && btn.Command &&\r\n !btn.Command.CustomUi && !btn.menu) {\r\n <button\r\n fd-button\r\n fd-toolbar-item\r\n [fdOverflowPriority]=\"btn.priority\"\r\n [fdOverflowGroup]=\"btn.priorityGroup\"\r\n [ulvCommandHandler]=\"btn\"\r\n [disable]=\"inlineEditMode && btn.itemId === 'New'\"\r\n [disabled]=\"btn.Command._isEnable === false ? true : false\"\r\n [fdType]=\"!btn.Command._isEnable ? 'transparent' : btn.Command.JsonExtraProp?.Design || 'transparent'\"\r\n [glyph]=\"deviceSize === 's' ? null : btn.newIcon || btn.Command.JsonExtraProp?.Icon\"\r\n [title]=\"(btn.Command?.IsBuiltin ? btn.text : '') | bbbTranslate\"\r\n (click)=\"inlineEditMode && btn.itemId === 'New' && createNewInlineMo.emit()\"\r\n bodyClick\r\n >\r\n @if (!btn.Command.JsonExtraProp?.Icon && !btn.Command?.IsBuiltin && btn.icon) {\r\n <img width=\"16\" [src]=\"btn.icon\" />\r\n } @if (!btn.hideText || deviceSize === 's') {\r\n <span>{{ (!btn.text && btn.isCustom ? btn.itemId : btn.text) | bbbTranslate }}</span>\r\n }\r\n </button>\r\n } @if ((btn === '-' || btn.type === 'seperator') && deviceName !== 'mobile') {\r\n <fd-toolbar-separator fd-toolbar-item></fd-toolbar-separator>\r\n } @if (btn.menu) {\r\n <button\r\n fd-button\r\n fd-toolbar-item\r\n [fdMenu]=\"true\"\r\n [fdType]=\"btn.Command?.IsBuiltin ? 'standard' : 'transparent'\"\r\n [label]=\"btn.text | bbbTranslate\"\r\n [ariaLabel]=\"btn.text | bbbTranslate\"\r\n [fdMenuTrigger]=\"menu\"\r\n bodyClick\r\n >\r\n <fd-menu #menu>\r\n @for (btnCommand of btn.menu.items; track btnCommand) {\r\n <li fd-menu-item [ulvCommandHandler]=\"btnCommand\" (click)=\"menu.close()\">\r\n <div fd-menu-interactive>\r\n <span fd-menu-title>{{ btnCommand.text | bbbTranslate }}</span>\r\n </div>\r\n </li>\r\n }\r\n </fd-menu>\r\n </button>\r\n } @if (btn !== '-' && btn.Command && btn.Command.CustomUi) {\r\n <bnrc-dynamic-form-toolbaritem\r\n fd-toolbar-item\r\n [ulvCommandHandler]=\"btn\"\r\n [component]=\"btn.Command?.CustomUi\"\r\n [context]=\"btn\"\r\n [isEnable]=\"btn.Command?._isEnable\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n bodyClick\r\n ></bnrc-dynamic-form-toolbaritem>\r\n } } @for (btn of toolbarButtonsReportView | reverse; track btn.id; let i = $index) {\r\n <button\r\n fd-button\r\n fd-toolbar-item\r\n [fdOverflowPriority]=\"'high'\"\r\n [fdOverflowGroup]=\"1\"\r\n [glyph]=\"btn.icon\"\r\n [title]=\"btn.text | bbbTranslate\"\r\n [label]=\"btn.hideText ? '' : (btn.text | bbbTranslate)\"\r\n (click)=\"btn.handler()\"\r\n [disabled]=\"!btn.isEnable\"\r\n bodyClick\r\n ></button>\r\n } }\r\n</fd-toolbar>\r\n}\r\n", styles: [":host{display:block;width:100%;position:relative}:host fd-toolbar.border-b-0{border-bottom-width:0px!important}:host ::ng-deep .fd-toolbar{flex-wrap:nowrap!important}:host ::ng-deep .fd-toolbar{border-top:var(--sapList_BorderWidth) solid var(--sapList_BorderColor);border-left:var(--sapList_BorderWidth) solid var(--sapList_BorderColor);border-right:var(--sapList_BorderWidth) solid var(--sapList_BorderColor)}:host fd-toolbar.s ::ng-deep .fd-toolbar{justify-content:end}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.DynamicFormToolbaritemComponent, selector: "bnrc-dynamic-form-toolbaritem", inputs: ["mo", "index", "deviceName", "deviceSize", "context", "btn", "isEnable", "showText", "allColumns", "conditionalFormats"], outputs: ["btnClick"] }, { kind: "directive", type: i2.UlvCommandDirective, selector: "[ulvCommandHandler]", inputs: ["ulvCommandHandler", "disable"], outputs: ["commandClick"] }, { kind: "directive", type: i2.BodyClickDirective, selector: "[bodyClick]", inputs: ["disableBodyClick"] }, { kind: "directive", type: i2.ResizeHandlerDirective, selector: "[resizeHandler]", inputs: ["fnResize"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i3.IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "color", "background", "class", "ariaLabel", "ariaHidden"] }, { kind: "component", type: i5$2.MenuComponent, selector: "fd-menu", inputs: ["mobile", "disabled", "focusTrapped", "focusAutoCapture", "openOnHoverTime", "mobileConfig", "ariaLabel", "ariaLabelledby", "id"], outputs: ["activePath"] }, { kind: "component", type: i5$2.MenuItemComponent, selector: "li[fd-menu-item]", inputs: ["disabled", "itemId", "submenu", "parentSubmenu", "hasSeparator"], outputs: ["onSelect"], exportAs: ["fd-menu-item"] }, { kind: "component", type: i5$2.MenuInteractiveComponent, selector: "[fd-menu-interactive]" }, { kind: "directive", type: i5$2.MenuTitleDirective, selector: "[fd-menu-title]" }, { kind: "component", type: i5$2.MenuAddonDirective, selector: "fd-menu-addon", inputs: ["position", "submenuIndicator", "ariaHidden"] }, { kind: "directive", type: i5$2.MenuTriggerDirective, selector: "[fdMenuTrigger]", inputs: ["fdMenuTrigger"] }, { kind: "component", type: i5.TitleComponent, selector: "[fd-title], [fdTitle]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "component", type: i8.SplitButtonComponent, selector: "fd-split-button", inputs: ["glyph", "glyphFont", "disabled", "fdType", "expandButtonTitle", "selected", "fixedWidth", "mainAction", "arialLabel"], outputs: ["primaryButtonClicked"] }, { kind: "component", type: i7$2.ToolbarComponent, selector: "fd-toolbar", inputs: ["titleId", "class", "shouldOverflow", "fdType", "title", "active", "clearBorder", "forceOverflow", "tabindex", "headingLevel", "ariaLabel", "ariaLabelledBy"] }, { kind: "directive", type: i7$2.ToolbarItemDirective, selector: "[fd-toolbar-item], [fdOverflowGroup], [fdOverflowPriority]", inputs: ["fdOverflowPriority", "fdOverflowGroup"] }, { kind: "component", type: i7$2.ToolbarSeparatorComponent, selector: "fd-toolbar-separator" }, { kind: "directive", type: ContentDensityDirective, selector: "[contentDensity]" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: i2.ReversePipe, name: "reverse" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
12667
12723
  }
12668
12724
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UlvToolbarComponent, decorators: [{
12669
12725
  type: Component,
@@ -12768,7 +12824,7 @@ class UlvSelectionComponent extends BaseComponent {
12768
12824
  this.visibility = this.visibility ? true : false;
12769
12825
  }
12770
12826
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UlvSelectionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
12771
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: UlvSelectionComponent, isStandalone: false, selector: "bsu-ulv-selection", inputs: { context: "context", config: "config", body: "body" }, viewQueries: [{ propertyName: "dialogTemplateRef", first: true, predicate: ["dialogRef"], descendants: true, read: TemplateRef }, { propertyName: "contentRef", first: true, predicate: ["content"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #container>\r\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\r\n <fd-dialog-header>\r\n <h3 fd-title>{{ data.title }}</h3>\r\n </fd-dialog-header>\r\n\r\n <fd-dialog-body>\r\n @if (data.ulvUi; as ulvUi) {\r\n <bsu-ui-ulv-main-ui [context]=\"ulvUi\"></bsu-ui-ulv-main-ui>\r\n }\r\n <div\r\n class=\"ulv-selection-form-dialog__row ulv-selection-form-dialog__selection-row\"\r\n aria-label=\"Selected and condition items\"\r\n i18n-aria-label=\"@@platformI18nValueHelpDialog.SelectionBarLabel\"\r\n >\r\n <h5 fd-title class=\"selected-and-condition-title\">\r\n <ng-container>\r\n <ng-container i18n=\"@@platformI18nValueHelpDialog.SelectedAndConditionLabel\"\r\n >Selected Items and Conditions\r\n </ng-container>\r\n ({{ data.selectedItems?.length || 0 }})\r\n </ng-container>\r\n </h5>\r\n\r\n <div class=\"ulv-selection-form-dialog__tokens-wrapper\">\r\n <div class=\"ulv-selection-form-dialog__tokens\">\r\n @if (data.selectedItems) {\r\n <fd-toolbar [shouldOverflow]=\"true\">\r\n <!-- Selected items -->\r\n @for ( item of 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()\"\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 i18n-aria-label=\"@@platformI18nValueHelpDialog.ClearSelectedAriaLabel\"\r\n aria-label=\"clear selected items\"\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 i18n-label=\"@@platformI18nValueHelpDialog.SuccessButton\"\r\n label=\"OK\"\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 i18n-label=\"@@platformI18nValueHelpDialog.CancelButton\"\r\n label=\"Cancel\"\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: [""], dependencies: [{ kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i3$3.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i3$3.DialogBodyComponent, selector: "fd-dialog-body", inputs: ["disablePaddings"] }, { kind: "component", type: i3$3.DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: i3$3.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "directive", type: i4$2.TemplateDirective, selector: "[fdkTemplate]", inputs: ["fdkTemplate"] }, { kind: "component", type: i5.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: i13.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"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
12827
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: UlvSelectionComponent, isStandalone: false, selector: "bsu-ulv-selection", inputs: { context: "context", config: "config", body: "body" }, viewQueries: [{ propertyName: "dialogTemplateRef", first: true, predicate: ["dialogRef"], descendants: true, read: TemplateRef }, { propertyName: "contentRef", first: true, predicate: ["content"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #container>\r\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\r\n <fd-dialog-header>\r\n <h3 fd-title>{{ data.title }}</h3>\r\n </fd-dialog-header>\r\n\r\n <fd-dialog-body>\r\n @if (data.ulvUi; as ulvUi) {\r\n <bsu-ui-ulv-main-ui [context]=\"ulvUi\"></bsu-ui-ulv-main-ui>\r\n }\r\n <div\r\n class=\"ulv-selection-form-dialog__row ulv-selection-form-dialog__selection-row\"\r\n aria-label=\"Selected and condition items\"\r\n i18n-aria-label=\"@@platformI18nValueHelpDialog.SelectionBarLabel\"\r\n >\r\n <h5 fd-title class=\"selected-and-condition-title\">\r\n <ng-container>\r\n <ng-container i18n=\"@@platformI18nValueHelpDialog.SelectedAndConditionLabel\"\r\n >Selected Items and Conditions\r\n </ng-container>\r\n ({{ data.selectedItems?.length || 0 }})\r\n </ng-container>\r\n </h5>\r\n\r\n <div class=\"ulv-selection-form-dialog__tokens-wrapper\">\r\n <div class=\"ulv-selection-form-dialog__tokens\">\r\n @if (data.selectedItems) {\r\n <fd-toolbar [shouldOverflow]=\"true\">\r\n <!-- Selected items -->\r\n @for ( item of 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()\"\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 i18n-aria-label=\"@@platformI18nValueHelpDialog.ClearSelectedAriaLabel\"\r\n aria-label=\"clear selected items\"\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 i18n-label=\"@@platformI18nValueHelpDialog.SuccessButton\"\r\n label=\"OK\"\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 i18n-label=\"@@platformI18nValueHelpDialog.CancelButton\"\r\n label=\"Cancel\"\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: [""], dependencies: [{ kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i3$3.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i3$3.DialogBodyComponent, selector: "fd-dialog-body", inputs: ["disablePaddings"] }, { kind: "component", type: i3$3.DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: i3$3.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "directive", type: i4$2.TemplateDirective, selector: "[fdkTemplate]", inputs: ["fdkTemplate"] }, { kind: "component", type: i5.TitleComponent, selector: "[fd-title], [fdTitle]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "component", type: i7$2.ToolbarComponent, selector: "fd-toolbar", inputs: ["titleId", "class", "shouldOverflow", "fdType", "title", "active", "clearBorder", "forceOverflow", "tabindex", "headingLevel", "ariaLabel", "ariaLabelledBy"] }, { kind: "directive", type: i7$2.ToolbarItemDirective, selector: "[fd-toolbar-item], [fdOverflowGroup], [fdOverflowPriority]", inputs: ["fdOverflowPriority", "fdOverflowGroup"] }, { kind: "component", type: i13.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"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
12772
12828
  }
12773
12829
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UlvSelectionComponent, decorators: [{
12774
12830
  type: Component,
@@ -13419,7 +13475,7 @@ class UiMoInfoUlvComboComponent extends FieldBaseComponent {
13419
13475
  // this._triggerClick('ItemSelect', this.value);
13420
13476
  }
13421
13477
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UiMoInfoUlvComboComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
13422
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: UiMoInfoUlvComboComponent, isStandalone: false, selector: "bsu-ui-mo-info-ulv-combo", inputs: { ulvAdapter: "ulvAdapter", Control: "Control", UlvMainCtrlr: "UlvMainCtrlr", UlvUi: "UlvUi", IsExpanded: "IsExpanded", Collapse: "Collapse", Expand: "Expand", on: "on", Focus: "Focus", SetUlvAdapter: "SetUlvAdapter", IsUiCreated: "IsUiCreated", Mask: "Mask", hide: "hide", show: "show", Unmask: "Unmask", getRawValue: "getRawValue" }, host: { listeners: { "keydown": "onKeyDown($event)", "keydown.alt": "onAlt($event)" } }, viewQueries: [{ propertyName: "fdComboRef", first: true, predicate: ComboboxComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-container\r\n *ngTemplateOutlet=\"\r\n comboTemplate;\r\n context: {\r\n $implicit:\r\n (loading$ | async) === true\r\n | moInfoUlvMoList\r\n : isDataLoadedFirstTime\r\n : ulvAdapter?.Setting?.Data?.MoDataList\r\n : UlvUi?.Setting?.Data?.MoDataList\r\n : ulvAdapter?.Setting?.Data?.Paging\r\n : UlvUi?.Setting?.Data?.Paging,\r\n deviceSize: deviceSize$ | async,\r\n disableOrReadonly: disableOrReadonly$ | async,\r\n disable: disable$ | async,\r\n readonly: readonly$ | async,\r\n isSearch: context._showPopup || context._showDropDown === false\r\n }\r\n \"\r\n>\r\n</ng-container>\r\n\r\n<ng-template #btnsTpl let-disableOrReadonly=\"disableOrReadonly\">\r\n @if( showExtraButtons() && !disableOrReadonly ){\r\n <div class=\"extra-buttons fd-input-group fd-input-group--control\" contentDensity>\r\n @if (hasValue && !inlineEdit) {\r\n <span class=\"fd-input-group__addon--button combo-popup-btn\" fd-input-group-addon>\r\n <button tabindex=\"-1\" fd-button fdType=\"transparent\" glyph=\"decline\" (click)=\"onClear()\"></button>\r\n </span>\r\n } @if (!hasValue && Setting.ShowNewButton) {\r\n <span fd-input-group-addon class=\"fd-input-group__addon--button combo-popup-btn\">\r\n <button fd-button fdType=\"transparent\" glyph=\"add\" (click)=\"onNew()\"></button>\r\n </span>\r\n } @if (hasValue && Setting.ViewRelatedFormType !== 'Hide') {\r\n <span fd-input-group-addon class=\"fd-input-group__addon--button combo-popup-btn\">\r\n <button fd-button fdType=\"transparent\" glyph=\"edit\" (click)=\"onEdit()\"></button>\r\n </span>\r\n } @if (context._showPopup && !value ) {\r\n <span fd-input-group-addon class=\"fd-input-group__addon--button combo-popup-btn\">\r\n <button fd-button fdType=\"transparent\" glyph=\"search\" (click)=\"onSearch()\"></button>\r\n </span>\r\n }\r\n </div>\r\n }\r\n</ng-template>\r\n<ng-template\r\n #comboTemplate\r\n let-moDataList\r\n let-deviceSize=\"deviceSize\"\r\n let-disableOrReadonly=\"disableOrReadonly\"\r\n let-disable=\"disable\"\r\n let-readonly=\"readonly\"\r\n let-isSearch=\"isSearch\"\r\n>\r\n <div class=\"simple-combo-wrapper\">\r\n <fd-combobox\r\n #fdCombobox\r\n class=\"combo-mo-ulv\"\r\n [class.canAdd]=\"!hasValue && disableOrReadonly !== true && Setting.ShowNewButton\"\r\n [class.canEdit]=\"hasValue && disableOrReadonly !== true\"\r\n [class.disableorreadonly]=\"disableOrReadonly === true\"\r\n [class.showExtraButtons]=\"disableOrReadonly !== true && showExtraButtons()\"\r\n [comboboxId]=\"comboboxId\"\r\n [class.has-Value]=\"hasValue\"\r\n [placeholder]=\"'Select' | bbbTranslate\"\r\n [mobile]=\"false\"\r\n [mobileConfig]=\"mobileConfig\"\r\n [fillOnSelect]=\"true\"\r\n [readOnly]=\"readonly === true ? true : false\"\r\n [disabled]=\"disable === true ? true : false\"\r\n [dropdownValues]=\"moDataList\"\r\n [filterFn]=\"customFilter\"\r\n [openOnKeyboardEvent]=\"true\"\r\n [byline]=\"allColumns.length > 0\"\r\n [isSearch]=\"false\"\r\n [itemTemplate]=\"itemTemplate\"\r\n [displayFn]=\"displayFunc\"\r\n [showDropdownButton]=\"context._showDropDown !== false && disableOrReadonly !== true\"\r\n (itemClicked)=\"onItemClick($event, moDataList)\"\r\n (inputTextChange)=\"onInputChange($event)\"\r\n (openChange)=\"onOpenChange(fdCombobox, $event)\"\r\n >\r\n </fd-combobox>\r\n <ng-container *ngTemplateOutlet=\"btnsTpl; context: { disableOrReadonly: disableOrReadonly }\"></ng-container>\r\n </div>\r\n <ng-template #itemTemplate let-item>\r\n @if (item.$isLoading) {\r\n <div fd-list-content style=\"width: 100%; height: 20px\">\r\n <bsu-mask [size]=\"'s'\" [top]=\"'10px'\"></bsu-mask>\r\n </div>\r\n } @else {\r\n <ng-container\r\n *ngTemplateOutlet=\"item.$LoadMore ? loadMoreButton : showItem; context: { ulv: ulvAdapter || UlvUi }\"\r\n >\r\n </ng-container>\r\n }\r\n <ng-template #loadMoreButton let-ulv=\"ulv\">\r\n @if (ulv) {\r\n <bsu-ulv-paging\r\n (click)=\"onPagingClick($event)\"\r\n (pageChange)=\"onPageChange($event)\"\r\n [pagingSetting]=\"ulv.Setting.Data.Paging\"\r\n >\r\n </bsu-ulv-paging>\r\n }\r\n <!-- <button\r\n style=\"width: 100%\"\r\n *ngIf=\"ulv && ulv.Setting.Data.Paging.Page + 1 < ulv.Setting.Data.Paging.TotalPages\"\r\n fd-button\r\n (click)=\"onPageChange2(ulv.Setting.Data.Paging, $event)\"\r\n [label]=\"'More' | bbbTranslate\"\r\n ></button> -->\r\n </ng-template>\r\n <ng-template #showItem>\r\n @if (allColumns?.length && !item.isEmpty) { @if (!item.$__IsLast) {\r\n <div class=\"moinfoulv devider\"></div>\r\n } @if (item.$Icon) {\r\n <span fd-list-thumbnail><fd-icon [glyph]=\"item.$Icon\"></fd-icon></span>\r\n }\r\n <div fd-list-content class=\"moinfoulv hasColumns\">\r\n <div fd-list-title class=\"title\">{{ allColumns[0].Alias | rval: item:allColumns:true }}</div>\r\n @if (allColumns[1]) {\r\n <div fd-list-byline class=\"byline\">\r\n {{ allColumns[1].Alias | rval: item:allColumns:true }}\r\n </div>\r\n }\r\n <div style=\"display: flex; column-gap: 8px; flex-wrap: wrap\">\r\n @for (column of allColumns; track column; let index = $index) { @if (index > 1) { @if (column.Alias\r\n | rval: item:allColumns:true; as value) {\r\n <span> {{ column.Alias }}:{{ value }}</span>\r\n } } }\r\n </div>\r\n </div>\r\n } @else {\r\n <span fd-list-title [class.list-empty-item]=\"item.isEmpty\"\r\n >{{ item.isEmpty ? ('NoData' | bbbTranslate) : (item.$MoCaption || item.$Caption | bbbTranslate) }}\r\n </span>\r\n }\r\n </ng-template>\r\n </ng-template>\r\n</ng-template>\r\n", styles: [":host{display:block}.combo-mo-ulv{width:100%}.combo-mo-ulv ::ng-deep .fd-popover-custom{width:100%}.fd-input-group{min-width:fit-content}.simple-combo-wrapper{display:flex;align-items:center;position:relative}.simple-combo-wrapper ::ng-deep .combo-mo-ulv.showExtraButtons:not(.disableorreadonly) .fd-input-group{border-left:none;border-bottom-left-radius:unset;border-top-left-radius:unset}.combo-wrapper{display:flex;align-items:center;border:var(--sapField_BorderWidth, .0625rem) solid var(--sapField_BorderColor, #89919a);border-radius:var(--sapField_BorderCornerRadius, .125rem)}::ng-deep .combo-popup-btn{border:none;background:transparent}::ng-deep .combo-popup-btn button{border-color:transparent!important;border:none}::ng-deep .fd-combobox-count-list-results{display:none}.extra-buttons{width:auto;border-right:none;border-left:none;margin:0}.extra-buttons>span{overflow:hidden}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.MobileDirective, selector: "[mobile]" }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i4$7.ComboboxComponent, selector: "fd-combobox", inputs: ["comboboxId", "inputId", "ariaLabel", "ariaLabelledBy", "required", "dropdownValues", "filterFn", "disabled", "placeholder", "isSearch", "glyph", "glyphFont", "showClearButton", "triggers", "closeOnOutsideClick", "openOnKeyboardEvent", "state", "itemTemplate", "groupFn", "maxHeight", "dropDownMaxWidthPx", "noDropDownMaxWidth", "width", "searchFn", "highlighting", "closeOnSelect", "fillOnSelect", "autoComplete", "fillControlMode", "communicateByObject", "displayFn", "buttonFocusable", "clearButtonFocusable", "readOnly", "mobile", "mobileConfig", "showDropdownButton", "includes", "title", "byline", "tabOutStrategy"], outputs: ["itemClicked", "openChange", "inputTextChange"] }, { kind: "component", type: i3.IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "color", "background", "class", "ariaLabel", "ariaHidden"] }, { kind: "directive", type: i4$1.InputGroupAddOnDirective, selector: "[fdInputGroupAddon], [fd-input-group-addon]", inputs: ["class", "placement", "type", "state", "button"] }, { kind: "directive", type: i7.ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap", "truncate"] }, { kind: "directive", type: i7.ListBylineDirective, selector: "[fdListByline], [fd-list-byline]", inputs: ["twoCol", "wrap"] }, { kind: "directive", type: i7.ListContentDirective, selector: "[fdListContent], [fd-list-content]", inputs: ["twoCol"] }, { kind: "directive", type: i7.ListThumbnailDirective, selector: "[fdListThumbnail], [fd-list-thumbnail]" }, { kind: "component", type: UlvPagingComponent, selector: "bsu-ulv-paging", inputs: ["pagingSetting"], outputs: ["pageChange", "pageSizeChange"] }, { kind: "component", type: MaskComponent, selector: "bsu-mask", inputs: ["size", "top"] }, { kind: "directive", type: ContentDensityDirective, selector: "[contentDensity]" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.MoReportValuePipe, name: "rval" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: i2.MoInfoUlvMoListPipe, name: "moInfoUlvMoList" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
13478
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: UiMoInfoUlvComboComponent, isStandalone: false, selector: "bsu-ui-mo-info-ulv-combo", inputs: { ulvAdapter: "ulvAdapter", Control: "Control", UlvMainCtrlr: "UlvMainCtrlr", UlvUi: "UlvUi", IsExpanded: "IsExpanded", Collapse: "Collapse", Expand: "Expand", on: "on", Focus: "Focus", SetUlvAdapter: "SetUlvAdapter", IsUiCreated: "IsUiCreated", Mask: "Mask", hide: "hide", show: "show", Unmask: "Unmask", getRawValue: "getRawValue" }, host: { listeners: { "keydown": "onKeyDown($event)", "keydown.alt": "onAlt($event)" } }, viewQueries: [{ propertyName: "fdComboRef", first: true, predicate: ComboboxComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-container\r\n *ngTemplateOutlet=\"\r\n comboTemplate;\r\n context: {\r\n $implicit:\r\n (loading$ | async) === true\r\n | moInfoUlvMoList\r\n : isDataLoadedFirstTime\r\n : ulvAdapter?.Setting?.Data?.MoDataList\r\n : UlvUi?.Setting?.Data?.MoDataList\r\n : ulvAdapter?.Setting?.Data?.Paging\r\n : UlvUi?.Setting?.Data?.Paging,\r\n deviceSize: deviceSize$ | async,\r\n disableOrReadonly: disableOrReadonly$ | async,\r\n disable: disable$ | async,\r\n readonly: readonly$ | async,\r\n isSearch: context._showPopup || context._showDropDown === false\r\n }\r\n \"\r\n>\r\n</ng-container>\r\n\r\n<ng-template #btnsTpl let-disableOrReadonly=\"disableOrReadonly\">\r\n @if( showExtraButtons() && !disableOrReadonly ){\r\n <div class=\"extra-buttons fd-input-group fd-input-group--control\" contentDensity>\r\n @if (hasValue && !inlineEdit) {\r\n <span class=\"fd-input-group__addon--button combo-popup-btn\" fd-input-group-addon>\r\n <button tabindex=\"-1\" fd-button fdType=\"transparent\" glyph=\"decline\" (click)=\"onClear()\"></button>\r\n </span>\r\n } @if (!hasValue && Setting.ShowNewButton) {\r\n <span fd-input-group-addon class=\"fd-input-group__addon--button combo-popup-btn\">\r\n <button fd-button fdType=\"transparent\" glyph=\"add\" (click)=\"onNew()\"></button>\r\n </span>\r\n } @if (hasValue && Setting.ViewRelatedFormType !== 'Hide') {\r\n <span fd-input-group-addon class=\"fd-input-group__addon--button combo-popup-btn\">\r\n <button fd-button fdType=\"transparent\" glyph=\"edit\" (click)=\"onEdit()\"></button>\r\n </span>\r\n } @if (context._showPopup && !value ) {\r\n <span fd-input-group-addon class=\"fd-input-group__addon--button combo-popup-btn\">\r\n <button fd-button fdType=\"transparent\" glyph=\"search\" (click)=\"onSearch()\"></button>\r\n </span>\r\n }\r\n </div>\r\n }\r\n</ng-template>\r\n<ng-template\r\n #comboTemplate\r\n let-moDataList\r\n let-deviceSize=\"deviceSize\"\r\n let-disableOrReadonly=\"disableOrReadonly\"\r\n let-disable=\"disable\"\r\n let-readonly=\"readonly\"\r\n let-isSearch=\"isSearch\"\r\n>\r\n <div class=\"simple-combo-wrapper\">\r\n <fd-combobox\r\n #fdCombobox\r\n class=\"combo-mo-ulv\"\r\n [class.canAdd]=\"!hasValue && disableOrReadonly !== true && Setting.ShowNewButton\"\r\n [class.canEdit]=\"hasValue && disableOrReadonly !== true\"\r\n [class.disableorreadonly]=\"disableOrReadonly === true\"\r\n [class.showExtraButtons]=\"disableOrReadonly !== true && showExtraButtons()\"\r\n [comboboxId]=\"comboboxId\"\r\n [class.has-Value]=\"hasValue\"\r\n [placeholder]=\"'Select' | bbbTranslate\"\r\n [mobile]=\"false\"\r\n [mobileConfig]=\"mobileConfig\"\r\n [fillOnSelect]=\"true\"\r\n [readOnly]=\"readonly === true ? true : false\"\r\n [disabled]=\"disable === true ? true : false\"\r\n [dropdownValues]=\"moDataList\"\r\n [filterFn]=\"customFilter\"\r\n [openOnKeyboardEvent]=\"true\"\r\n [byline]=\"allColumns.length > 0\"\r\n [isSearch]=\"false\"\r\n [itemTemplate]=\"itemTemplate\"\r\n [displayFn]=\"displayFunc\"\r\n [showDropdownButton]=\"context._showDropDown !== false && disableOrReadonly !== true\"\r\n (itemClicked)=\"onItemClick($event, moDataList)\"\r\n (inputTextChange)=\"onInputChange($event)\"\r\n (openChange)=\"onOpenChange(fdCombobox, $event)\"\r\n >\r\n </fd-combobox>\r\n <ng-container *ngTemplateOutlet=\"btnsTpl; context: { disableOrReadonly: disableOrReadonly }\"></ng-container>\r\n </div>\r\n <ng-template #itemTemplate let-item>\r\n @if (item.$isLoading) {\r\n <div fd-list-content style=\"width: 100%; height: 20px\">\r\n <bsu-mask [size]=\"'s'\" [top]=\"'10px'\"></bsu-mask>\r\n </div>\r\n } @else {\r\n <ng-container\r\n *ngTemplateOutlet=\"item.$LoadMore ? loadMoreButton : showItem; context: { ulv: ulvAdapter || UlvUi }\"\r\n >\r\n </ng-container>\r\n }\r\n <ng-template #loadMoreButton let-ulv=\"ulv\">\r\n @if (ulv) {\r\n <bsu-ulv-paging\r\n (click)=\"onPagingClick($event)\"\r\n (pageChange)=\"onPageChange($event)\"\r\n [pagingSetting]=\"ulv.Setting.Data.Paging\"\r\n >\r\n </bsu-ulv-paging>\r\n }\r\n <!-- <button\r\n style=\"width: 100%\"\r\n *ngIf=\"ulv && ulv.Setting.Data.Paging.Page + 1 < ulv.Setting.Data.Paging.TotalPages\"\r\n fd-button\r\n (click)=\"onPageChange2(ulv.Setting.Data.Paging, $event)\"\r\n [label]=\"'More' | bbbTranslate\"\r\n ></button> -->\r\n </ng-template>\r\n <ng-template #showItem>\r\n @if (allColumns?.length && !item.isEmpty) { @if (!item.$__IsLast) {\r\n <div class=\"moinfoulv devider\"></div>\r\n } @if (item.$Icon) {\r\n <span fd-list-thumbnail><fd-icon [glyph]=\"item.$Icon\"></fd-icon></span>\r\n }\r\n <div fd-list-content class=\"moinfoulv hasColumns\">\r\n <div fd-list-title class=\"title\">{{ allColumns[0].Alias | rval: item:allColumns:true }}</div>\r\n @if (allColumns[1]) {\r\n <div fd-list-byline class=\"byline\">\r\n {{ allColumns[1].Alias | rval: item:allColumns:true }}\r\n </div>\r\n }\r\n <div style=\"display: flex; column-gap: 8px; flex-wrap: wrap\">\r\n @for (column of allColumns; track column; let index = $index) { @if (index > 1) { @if (column.Alias\r\n | rval: item:allColumns:true; as value) {\r\n <span> {{ column.Alias }}:{{ value }}</span>\r\n } } }\r\n </div>\r\n </div>\r\n } @else {\r\n <span fd-list-title [class.list-empty-item]=\"item.isEmpty\"\r\n >{{ item.isEmpty ? ('NoData' | bbbTranslate) : (item.$MoCaption || item.$Caption | bbbTranslate) }}\r\n </span>\r\n }\r\n </ng-template>\r\n </ng-template>\r\n</ng-template>\r\n", styles: [":host{display:block}.combo-mo-ulv{width:100%}.combo-mo-ulv ::ng-deep .fd-popover-custom{width:100%}.fd-input-group{min-width:fit-content}.simple-combo-wrapper{display:flex;align-items:center;position:relative}.simple-combo-wrapper ::ng-deep .combo-mo-ulv.showExtraButtons:not(.disableorreadonly) .fd-input-group{border-left:none;border-bottom-left-radius:unset;border-top-left-radius:unset}.combo-wrapper{display:flex;align-items:center;border:var(--sapField_BorderWidth, .0625rem) solid var(--sapField_BorderColor, #89919a);border-radius:var(--sapField_BorderCornerRadius, .125rem)}::ng-deep .combo-popup-btn{border:none;background:transparent}::ng-deep .combo-popup-btn button{border-color:transparent!important;border:none}::ng-deep .fd-combobox-count-list-results{display:none}.extra-buttons{width:auto;border-right:none;border-left:none;margin:0}.extra-buttons>span{overflow:hidden}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.MobileDirective, selector: "[mobile]" }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i4$8.ComboboxComponent, selector: "fd-combobox", inputs: ["comboboxId", "inputId", "ariaLabel", "ariaLabelledBy", "required", "dropdownValues", "filterFn", "disabled", "placeholder", "isSearch", "glyph", "glyphFont", "showClearButton", "triggers", "closeOnOutsideClick", "openOnKeyboardEvent", "state", "itemTemplate", "groupFn", "maxHeight", "dropDownMaxWidthPx", "noDropDownMaxWidth", "width", "searchFn", "highlighting", "closeOnSelect", "fillOnSelect", "autoComplete", "fillControlMode", "communicateByObject", "displayFn", "buttonFocusable", "clearButtonFocusable", "readOnly", "mobile", "mobileConfig", "showDropdownButton", "includes", "title", "byline", "tabOutStrategy"], outputs: ["itemClicked", "openChange", "inputTextChange"] }, { kind: "component", type: i3.IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "color", "background", "class", "ariaLabel", "ariaHidden"] }, { kind: "directive", type: i4$1.InputGroupAddOnDirective, selector: "[fdInputGroupAddon], [fd-input-group-addon]", inputs: ["class", "placement", "type", "state", "button"] }, { kind: "directive", type: i7.ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap", "truncate"] }, { kind: "directive", type: i7.ListBylineDirective, selector: "[fdListByline], [fd-list-byline]", inputs: ["twoCol", "wrap"] }, { kind: "directive", type: i7.ListContentDirective, selector: "[fdListContent], [fd-list-content]", inputs: ["twoCol"] }, { kind: "directive", type: i7.ListThumbnailDirective, selector: "[fdListThumbnail], [fd-list-thumbnail]" }, { kind: "component", type: UlvPagingComponent, selector: "bsu-ulv-paging", inputs: ["pagingSetting"], outputs: ["pageChange", "pageSizeChange"] }, { kind: "component", type: MaskComponent, selector: "bsu-mask", inputs: ["size", "top"] }, { kind: "directive", type: ContentDensityDirective, selector: "[contentDensity]" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.MoReportValuePipe, name: "rval" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: i2.MoInfoUlvMoListPipe, name: "moInfoUlvMoList" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
13423
13479
  }
13424
13480
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UiMoInfoUlvComboComponent, decorators: [{
13425
13481
  type: Component,
@@ -13544,7 +13600,7 @@ class UiPictureFileComponent extends FieldBaseComponent {
13544
13600
  }))));
13545
13601
  }
13546
13602
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UiPictureFileComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
13547
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: UiPictureFileComponent, isStandalone: false, selector: "bsu-ui-picture-file", inputs: { imageUrl: "imageUrl", sizeMode: "sizeMode", hideUpload: "hideUpload" }, host: { properties: { "class.editable": "this._editable" } }, providers: [UploadService], viewQueries: [{ propertyName: "fileUploadComponent", first: true, predicate: FileUploaderComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div\r\n [style.max-height]=\"Setting.SizeMode === '2' ? null : layoutHeight\"\r\n [class.no-inlineEdit]=\"!inlineEdit\"\r\n [style.min-height.px]=\"!value && !inlineEdit ? null : 140\"\r\n [class.inlineEdit]=\"inlineEdit\"\r\n>\r\n @if (!((disableOrReadonly$ | async) === true || Setting.IsReadOnly === true)) {\r\n <div>\r\n <fd-toolbar [fdType]=\"'transparent'\" [clearBorder]=\"value && imageUrl ? false : true\">\r\n <fd-file-uploader\r\n #uploader\r\n fd-toolbar-item\r\n [style.display]=\"'none'\"\r\n [id]=\"id\"\r\n [name]=\"'uploader_' + id\"\r\n [placeholder]=\"'AttachPicture' | bbbTranslate\"\r\n [buttonLabel]=\"'AttachPicture' | bbbTranslate\"\r\n [buttonAriaLabel]=\"'AttachPicture' | bbbTranslate\"\r\n [accept]=\"validExtensions\"\r\n [(ngModel)]=\"files\"\r\n [multiple]=\"false\"\r\n (selectedFilesChanged)=\"onFileSelection($event)\"\r\n ></fd-file-uploader>\r\n @if(value && !value?.IsDeleted){\r\n <button\r\n fd-button\r\n fd-toolbar-item\r\n glyph=\"print\"\r\n fdType=\"transparent\"\r\n printFiles\r\n [files]=\"[{ Id: '0', IsNew: true, IsDeleted: false, Type: 'image', mediaUrl: imageUrl }]\"\r\n ></button>\r\n <button\r\n fd-button\r\n fd-toolbar-item\r\n glyph=\"download\"\r\n fdType=\"transparent\"\r\n [name]=\"Setting.ControlFieldCaption + value.Ext\"\r\n [src]=\"imageUrl\"\r\n saveImage\r\n ></button>\r\n }\r\n <button\r\n class=\"delete\"\r\n fd-button\r\n fd-toolbar-item\r\n [disabled]=\"!this.value || value?.IsDeleted\"\r\n glyph=\"delete\"\r\n [fdType]=\"'transparent'\"\r\n (click)=\"onFileDeleted(uploader)\"\r\n ></button>\r\n @if(!hideUpload){\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n [disabled]=\"this.value && value?.IsDeleted !== true\"\r\n glyph=\"attachment\"\r\n [fdType]=\"'transparent'\"\r\n (click)=\"uploader.open()\"\r\n ></button>\r\n }\r\n <ng-content select=\"[fd-toolbar-item]\"></ng-content>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n loadingTpl;\r\n context: {\r\n uploadingState: uploadingState$ | async\r\n }\r\n \"\r\n >\r\n </ng-container>\r\n </fd-toolbar>\r\n </div>\r\n } @if (!inlineEdit) {\r\n <div\r\n [style.max-height.px]=\"Setting.SizeMode === '0' ? layoutInfo.ControlBounds.height : null\"\r\n [style.max-width.px]=\"Setting.SizeMode === '0' ? layoutInfo.ControlBounds.width : null\"\r\n [class.centerImage]=\"Setting.SizeMode === '3'\"\r\n [style.min-height.px]=\"140\"\r\n >\r\n @if (value && imageUrl) {\r\n <bsu-mask [top]=\"'0px'\"></bsu-mask>\r\n } @if ((value && imageUrl) || Setting.HasDefaultPicture) {\r\n <img\r\n imgLazy\r\n [imgLazy]=\"imageUrl\"\r\n [src]=\"imageUrl\"\r\n [ngClass]=\"Setting.SizeMode === '1' ? 'cover' : 'contain'\"\r\n [style.height.px]=\"Setting.SizeMode !== '2' ? layoutInfo.ControlBounds.height : null\"\r\n [style.min-height.px]=\"!value && !inlineEdit ? null : 140\"\r\n />\r\n }\r\n </div>\r\n } @else {\r\n <fd-avatar [size]=\"'m'\" [image]=\"imageUrl\"></fd-avatar>\r\n }\r\n</div>\r\n<ng-template #loadingTpl let-uploadingState=\"uploadingState\">\r\n @if (uploadingState && uploadingState.state !== 'Complete' && uploadingState.uploading) {\r\n <fd-slider\r\n [(ngModel)]=\"uploadingState.progress\"\r\n [name]=\"'slider_' + id\"\r\n fd-toolbar-item\r\n [id]=\"id + '1'\"\r\n [min]=\"0\"\r\n [max]=\"100\"\r\n [step]=\"1\"\r\n >\r\n </fd-slider>\r\n @if (uploadingState.state === 'Uploading') {\r\n <button fd-toolbar-item fd-button glyph=\"stop\" fdType=\"transparent\" (click)=\"onTerminate()\"></button>\r\n } @if (uploadingState.state === 'Error') {\r\n <button fd-toolbar-item fd-button glyph=\"refresh\" [fdType]=\"'transparent'\" (click)=\"onRetry()\"></button>\r\n } }\r\n</ng-template>\r\n", styles: [":host{width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;position:relative;overflow:hidden;margin-bottom:.25rem;margin-top:.1875rem}:host.editable{border:.0625rem solid var(--sapGroup_TitleBorderColor)}:host ::ng-deep .fd-slider__handle{display:none}:host ::ng-deep .delete button{border-color:transparent!important;background-color:transparent!important}img{width:100%}.pic-wrapper{background-repeat:no-repeat;background-position:center}.cover{max-width:100%;max-height:100%;min-height:100%;width:100%;height:100%;background-size:cover}.contain{max-width:100%;max-height:100%;min-height:100%;width:auto;height:100%;background-size:contain}.no-inlineEdit{width:100%;position:relative;display:flex;flex-direction:column}.inlineEdit{width:100%;position:relative;display:flex;flex-direction:row-reverse;align-items:flex-end;justify-content:flex-start}.centerImage{display:flex;justify-content:center}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i2.ImageLazyDirective, selector: "[imgLazy]", inputs: ["auto", "threshold", "imgLazy"], outputs: ["imageLoaded"] }, { kind: "directive", type: i2.PrintFilesDirective, selector: "[printFiles]", inputs: ["files", "file", "isImageGallery", "component"] }, { kind: "directive", type: i2.SaveImageDirective, selector: "[saveImage]", inputs: ["name", "src"] }, { kind: "component", type: i3$7.AvatarComponent, selector: "fd-avatar", inputs: ["class", "id", "ariaLabel", "ariaLabelledby", "label", "size", "font", "glyph", "zoomGlyph", "circle", "interactive", "transparent", "contain", "placeholder", "tile", "border", "colorAccent", "colorIndication", "random", "clickable", "valueState", "image", "alterIcon", "backupImage"], outputs: ["avatarClicked", "zoomGlyphClicked"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i5$4.FileUploaderComponent, selector: "fd-file-uploader", inputs: ["disabled", "required", "multiple", "accept", "dragndrop", "maxFileSize", "minFileSize", "id", "ariaLabel", "ariaLabelledBy", "placeholder", "buttonLabel", "buttonAriaLabel", "state", "fileLimit", "inputHidden", "width"], outputs: ["selectedFilesChanged", "selectedInvalidFiles", "onDragEnter", "onDragLeave"] }, { kind: "component", type: 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: i11.SliderComponent, selector: "fd-slider", inputs: ["id", "class", "ariaLabelledBy", "ariaLabel", "min", "max", "step", "jump", "tickmarksBetweenLabels", "mode", "showTicks", "showTicksLabels", "customValues", "tooltipMode", "hideProgressBar", "disabled", "vertical", "value"] }, { kind: "component", type: MaskComponent, selector: "bsu-mask", inputs: ["size", "top"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
13603
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: UiPictureFileComponent, isStandalone: false, selector: "bsu-ui-picture-file", inputs: { imageUrl: "imageUrl", sizeMode: "sizeMode", hideUpload: "hideUpload" }, host: { properties: { "class.editable": "this._editable" } }, providers: [UploadService], viewQueries: [{ propertyName: "fileUploadComponent", first: true, predicate: FileUploaderComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div\r\n [style.max-height]=\"Setting.SizeMode === '2' ? null : layoutHeight\"\r\n [class.no-inlineEdit]=\"!inlineEdit\"\r\n [style.min-height.px]=\"!value && !inlineEdit ? null : 140\"\r\n [class.inlineEdit]=\"inlineEdit\"\r\n>\r\n @if (!((disableOrReadonly$ | async) === true || Setting.IsReadOnly === true)) {\r\n <div>\r\n <fd-toolbar [fdType]=\"'transparent'\" [clearBorder]=\"value && imageUrl ? false : true\">\r\n <fd-file-uploader\r\n #uploader\r\n fd-toolbar-item\r\n [style.display]=\"'none'\"\r\n [id]=\"id\"\r\n [name]=\"'uploader_' + id\"\r\n [placeholder]=\"'AttachPicture' | bbbTranslate\"\r\n [buttonLabel]=\"'AttachPicture' | bbbTranslate\"\r\n [buttonAriaLabel]=\"'AttachPicture' | bbbTranslate\"\r\n [accept]=\"validExtensions\"\r\n [(ngModel)]=\"files\"\r\n [multiple]=\"false\"\r\n (selectedFilesChanged)=\"onFileSelection($event)\"\r\n ></fd-file-uploader>\r\n @if(value && !value?.IsDeleted){\r\n <button\r\n fd-button\r\n fd-toolbar-item\r\n glyph=\"print\"\r\n fdType=\"transparent\"\r\n printFiles\r\n [files]=\"[{ Id: '0', IsNew: true, IsDeleted: false, Type: 'image', mediaUrl: imageUrl }]\"\r\n ></button>\r\n <button\r\n fd-button\r\n fd-toolbar-item\r\n glyph=\"download\"\r\n fdType=\"transparent\"\r\n [name]=\"Setting.ControlFieldCaption + value.Ext\"\r\n [src]=\"imageUrl\"\r\n saveImage\r\n ></button>\r\n }\r\n <button\r\n class=\"delete\"\r\n fd-button\r\n fd-toolbar-item\r\n [disabled]=\"!this.value || value?.IsDeleted\"\r\n glyph=\"delete\"\r\n [fdType]=\"'transparent'\"\r\n (click)=\"onFileDeleted(uploader)\"\r\n ></button>\r\n @if(!hideUpload){\r\n <button\r\n fd-toolbar-item\r\n fd-button\r\n [disabled]=\"this.value && value?.IsDeleted !== true\"\r\n glyph=\"attachment\"\r\n [fdType]=\"'transparent'\"\r\n (click)=\"uploader.open()\"\r\n ></button>\r\n }\r\n <ng-content select=\"[fd-toolbar-item]\"></ng-content>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n loadingTpl;\r\n context: {\r\n uploadingState: uploadingState$ | async\r\n }\r\n \"\r\n >\r\n </ng-container>\r\n </fd-toolbar>\r\n </div>\r\n } @if (!inlineEdit) {\r\n <div\r\n [style.max-height.px]=\"Setting.SizeMode === '0' ? layoutInfo.ControlBounds.height : null\"\r\n [style.max-width.px]=\"Setting.SizeMode === '0' ? layoutInfo.ControlBounds.width : null\"\r\n [class.centerImage]=\"Setting.SizeMode === '3'\"\r\n [style.min-height.px]=\"140\"\r\n >\r\n @if (value && imageUrl) {\r\n <bsu-mask [top]=\"'0px'\"></bsu-mask>\r\n } @if ((value && imageUrl) || Setting.HasDefaultPicture) {\r\n <img\r\n imgLazy\r\n [imgLazy]=\"imageUrl\"\r\n [src]=\"imageUrl\"\r\n [ngClass]=\"Setting.SizeMode === '1' ? 'cover' : 'contain'\"\r\n [style.height.px]=\"Setting.SizeMode !== '2' ? layoutInfo.ControlBounds.height : null\"\r\n [style.min-height.px]=\"!value && !inlineEdit ? null : 140\"\r\n />\r\n }\r\n </div>\r\n } @else {\r\n <fd-avatar [size]=\"'m'\" [image]=\"imageUrl\"></fd-avatar>\r\n }\r\n</div>\r\n<ng-template #loadingTpl let-uploadingState=\"uploadingState\">\r\n @if (uploadingState && uploadingState.state !== 'Complete' && uploadingState.uploading) {\r\n <fd-slider\r\n [(ngModel)]=\"uploadingState.progress\"\r\n [name]=\"'slider_' + id\"\r\n fd-toolbar-item\r\n [id]=\"id + '1'\"\r\n [min]=\"0\"\r\n [max]=\"100\"\r\n [step]=\"1\"\r\n >\r\n </fd-slider>\r\n @if (uploadingState.state === 'Uploading') {\r\n <button fd-toolbar-item fd-button glyph=\"stop\" fdType=\"transparent\" (click)=\"onTerminate()\"></button>\r\n } @if (uploadingState.state === 'Error') {\r\n <button fd-toolbar-item fd-button glyph=\"refresh\" [fdType]=\"'transparent'\" (click)=\"onRetry()\"></button>\r\n } }\r\n</ng-template>\r\n", styles: [":host{width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;position:relative;overflow:hidden;margin-bottom:.25rem;margin-top:.1875rem}:host.editable{border:.0625rem solid var(--sapGroup_TitleBorderColor)}:host ::ng-deep .fd-slider__handle{display:none}:host ::ng-deep .delete button{border-color:transparent!important;background-color:transparent!important}img{width:100%}.pic-wrapper{background-repeat:no-repeat;background-position:center}.cover{max-width:100%;max-height:100%;min-height:100%;width:100%;height:100%;background-size:cover}.contain{max-width:100%;max-height:100%;min-height:100%;width:auto;height:100%;background-size:contain}.no-inlineEdit{width:100%;position:relative;display:flex;flex-direction:column}.inlineEdit{width:100%;position:relative;display:flex;flex-direction:row-reverse;align-items:flex-end;justify-content:flex-start}.centerImage{display:flex;justify-content:center}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i2.ImageLazyDirective, selector: "[imgLazy]", inputs: ["auto", "threshold", "imgLazy"], outputs: ["imageLoaded"] }, { kind: "directive", type: i2.PrintFilesDirective, selector: "[printFiles]", inputs: ["files", "file", "isImageGallery", "component"] }, { kind: "directive", type: i2.SaveImageDirective, selector: "[saveImage]", inputs: ["name", "src"] }, { kind: "component", type: i3$7.AvatarComponent, selector: "fd-avatar", inputs: ["class", "id", "ariaLabel", "ariaLabelledby", "label", "size", "font", "glyph", "zoomGlyph", "circle", "interactive", "transparent", "contain", "placeholder", "tile", "border", "colorAccent", "colorIndication", "random", "clickable", "valueState", "image", "alterIcon", "backupImage"], outputs: ["avatarClicked", "zoomGlyphClicked"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i4$7.FileUploaderComponent, selector: "fd-file-uploader", inputs: ["disabled", "required", "multiple", "accept", "dragndrop", "maxFileSize", "minFileSize", "id", "ariaLabel", "ariaLabelledBy", "placeholder", "buttonLabel", "buttonAriaLabel", "state", "fileLimit", "inputHidden", "width"], outputs: ["selectedFilesChanged", "selectedInvalidFiles", "onDragEnter", "onDragLeave"] }, { kind: "component", type: i7$2.ToolbarComponent, selector: "fd-toolbar", inputs: ["titleId", "class", "shouldOverflow", "fdType", "title", "active", "clearBorder", "forceOverflow", "tabindex", "headingLevel", "ariaLabel", "ariaLabelledBy"] }, { kind: "directive", type: i7$2.ToolbarItemDirective, selector: "[fd-toolbar-item], [fdOverflowGroup], [fdOverflowPriority]", inputs: ["fdOverflowPriority", "fdOverflowGroup"] }, { kind: "component", type: i11.SliderComponent, selector: "fd-slider", inputs: ["id", "class", "ariaLabelledBy", "ariaLabel", "min", "max", "step", "jump", "tickmarksBetweenLabels", "mode", "showTicks", "showTicksLabels", "customValues", "tooltipMode", "hideProgressBar", "disabled", "vertical", "value"] }, { kind: "component", type: MaskComponent, selector: "bsu-mask", inputs: ["size", "top"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
13548
13604
  }
13549
13605
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UiPictureFileComponent, decorators: [{
13550
13606
  type: Component,
@@ -13616,7 +13672,7 @@ class UiReadOnlyFieldComponent extends FieldBaseComponent {
13616
13672
  this._cdr.markForCheck();
13617
13673
  }
13618
13674
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UiReadOnlyFieldComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
13619
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: UiReadOnlyFieldComponent, isStandalone: false, selector: "bsu-ui-read-only-field", usesInheritance: true, ngImport: i0, template: "<ng-container *ngTemplateOutlet=\"controlTpl; context: { maxlines: parameters?.MaxLines }\"></ng-container>\r\n\r\n@if (parameters?.ShowCopy && text) {\r\n<button fd-button glyph=\"copy\" [fdCompact] fdType=\"transparent\" [copy]=\"text | bbbTranslate\"></button>\r\n}\r\n<!-- <fd-popover *ngIf=\"text\">\r\n<fd-popover-control>\r\n <button\r\n *ngIf=\"isEllipsis\"\r\n fd-button\r\n glyph=\"overflow\"\r\n [fdCompact]\r\n fdType=\"transparent\"\r\n [title]=\"text | bbbTranslate\"\r\n ></button>\r\n</fd-popover-control>\r\n<fd-popover-body>\r\n <ng-container *ngTemplateOutlet=\"controlTpl\"></ng-container>\r\n</fd-popover-body>\r\n</fd-popover>\r\n-->\r\n<ng-template #controlTpl let-maxlines>\r\n <fd-text\r\n style=\"height: auto !important\"\r\n [text]=\"!text ? '' : (text | bbbTranslate)\"\r\n [class.bold]=\"parameters?.NotBold === false\"\r\n [whitespaces]=\"true\"\r\n [maxLines]=\"maxlines ? maxlines : 0\"\r\n [style.color]=\"parameters?.ColorValue ? parameters?.ColorValue : null\"\r\n class=\"fd-input\"\r\n [barsaReadonly]=\"Setting\"\r\n [attr.readonly]=\"true\"\r\n ></fd-text>\r\n</ng-template>\r\n", styles: [":host{display:flex;width:100%;align-items:center}:host.isMobile{height:auto}label{overflow:hidden;text-align:justify;line-height:1.6rem}.empty-bracket{opacity:.3}fd-text{display:flex;align-items:center}fd-text ::ng-deep p{color:inherit;font-weight:inherit}fd-text ::ng-deep p span{color:inherit}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.CopyDirective, selector: "[copy]", inputs: ["copy"] }, { kind: "directive", type: i2.BarsaReadonlyDirective, selector: "[barsaReadonly]", inputs: ["barsaReadonly"] }, { kind: "directive", type: i4$3.ContentDensityDirective, selector: "[fdContentDensity]:not([fdCompact]):not([fdCondensed]):not([fdCozy]), [fdCompact]:not([fdContentDensity]):not([fdCondensed]):not([fdCozy]), [fdCondensed]:not([fdContentDensity]):not([fdCompact]):not([fdCozy]), [fdCozy]:not([fdContentDensity]):not([fdCompact]):not([fdCondensed])", inputs: ["fdContentDensity", "fdCompact", "fdCondensed", "fdCozy"], exportAs: ["fdContentDensity"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i5$2.TextComponent, selector: "fd-text", inputs: ["text", "maxLines", "whitespaces", "hyphenation", "expandable", "isCollapsed"], outputs: ["isCollapsedChange"] }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
13675
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: UiReadOnlyFieldComponent, isStandalone: false, selector: "bsu-ui-read-only-field", usesInheritance: true, ngImport: i0, template: "<ng-container *ngTemplateOutlet=\"controlTpl; context: { maxlines: parameters?.MaxLines }\"></ng-container>\r\n\r\n@if (parameters?.ShowCopy && text) {\r\n<button fd-button glyph=\"copy\" [fdCompact] fdType=\"transparent\" [copy]=\"text | bbbTranslate\"></button>\r\n}\r\n<!-- <fd-popover *ngIf=\"text\">\r\n<fd-popover-control>\r\n <button\r\n *ngIf=\"isEllipsis\"\r\n fd-button\r\n glyph=\"overflow\"\r\n [fdCompact]\r\n fdType=\"transparent\"\r\n [title]=\"text | bbbTranslate\"\r\n ></button>\r\n</fd-popover-control>\r\n<fd-popover-body>\r\n <ng-container *ngTemplateOutlet=\"controlTpl\"></ng-container>\r\n</fd-popover-body>\r\n</fd-popover>\r\n-->\r\n<ng-template #controlTpl let-maxlines>\r\n <fd-text\r\n style=\"height: auto !important\"\r\n [text]=\"!text ? '' : (text | bbbTranslate)\"\r\n [class.bold]=\"parameters?.NotBold === false\"\r\n [whitespaces]=\"true\"\r\n [maxLines]=\"maxlines ? maxlines : 0\"\r\n [style.color]=\"parameters?.ColorValue ? parameters?.ColorValue : null\"\r\n class=\"fd-input\"\r\n [barsaReadonly]=\"Setting\"\r\n [attr.readonly]=\"true\"\r\n ></fd-text>\r\n</ng-template>\r\n", styles: [":host{display:flex;width:100%;align-items:center}:host.isMobile{height:auto}label{overflow:hidden;text-align:justify;line-height:1.6rem}.empty-bracket{opacity:.3}fd-text{display:flex;align-items:center}fd-text ::ng-deep p{color:inherit;font-weight:inherit}fd-text ::ng-deep p span{color:inherit}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.CopyDirective, selector: "[copy]", inputs: ["copy"] }, { kind: "directive", type: i2.BarsaReadonlyDirective, selector: "[barsaReadonly]", inputs: ["barsaReadonly"] }, { kind: "directive", type: i4$3.ContentDensityDirective, selector: "[fdContentDensity]:not([fdCompact]):not([fdCondensed]):not([fdCozy]), [fdCompact]:not([fdContentDensity]):not([fdCondensed]):not([fdCozy]), [fdCondensed]:not([fdContentDensity]):not([fdCompact]):not([fdCozy]), [fdCozy]:not([fdContentDensity]):not([fdCompact]):not([fdCondensed])", inputs: ["fdContentDensity", "fdCompact", "fdCondensed", "fdCozy"], exportAs: ["fdContentDensity"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i5$3.TextComponent, selector: "fd-text", inputs: ["text", "maxLines", "whitespaces", "hyphenation", "expandable", "isCollapsed"], outputs: ["isCollapsedChange"] }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
13620
13676
  }
13621
13677
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UiReadOnlyFieldComponent, decorators: [{
13622
13678
  type: Component,
@@ -13667,11 +13723,11 @@ class LyLayoutPanelComponent extends LayoutPanelBaseComponent {
13667
13723
  this._cdr.detectChanges();
13668
13724
  }
13669
13725
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: LyLayoutPanelComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
13670
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: LyLayoutPanelComponent, isStandalone: false, selector: "bsu-ly-layout-panel", inputs: { renderItems: "renderItems", isRoot: "isRoot", hideTitle: "hideTitle", notPanelMode: "notPanelMode" }, host: { properties: { "attr.maxLabelWidth": "this.maxLabelWidth", "style.flex": "this.flex", "attr.title": "this.title", "attr.layoutpanel": "this.layoutpanel" } }, providers: [LayoutService], viewQueries: [{ propertyName: "viewRef", first: true, predicate: ["viewRefTemplate"], descendants: true, read: ViewContainerRef, static: true }], usesInheritance: true, ngImport: i0, template: "@if (visible) { @if(!notPanelMode && !parameters?.IsNotPanelMode){\r\n<fd-panel\r\n [fixed]=\"!config.ExpandButtonVisible\"\r\n [class.hide-header]=\"!config.TextVisible || hideTitle\"\r\n [attr.maxWidth]=\"maxWidth\"\r\n [expanded]=\"config.Expanded\"\r\n [config]=\"config\"\r\n [hrResponsive]=\"parameters?.HResponsiveSettings\"\r\n>\r\n @if (!hideTitle && !parameters?.HideHeader) {\r\n <h5 fd-panel-title>\r\n <div style=\"display: flex; gap: 0.5rem; align-items: center\">\r\n @if (config.FontIcon) {\r\n <i\r\n style=\"font-size: 1.5rem\"\r\n [style.color]=\"config.IconColor || null\"\r\n [class]=\"'sap-icon--' + config.FontIcon\"\r\n ></i>\r\n }\r\n <span>{{ (config.TextVisible ? config.Title ?? '' : '') | bbbTranslate }}</span>\r\n </div>\r\n </h5>\r\n }\r\n <div fd-panel-content [class.row-reverse-direction]=\"rowDirection\" [class.column-direction]=\"columnDirection\">\r\n <ng-container *ngTemplateOutlet=\"renderControls\"></ng-container>\r\n </div>\r\n</fd-panel>\r\n} @else {\r\n<div [config]=\"config\" [hrResponsive]=\"parameters?.HResponsiveSettings\" class=\"tw-w-full\">\r\n <ng-container *ngTemplateOutlet=\"renderControls\"></ng-container>\r\n</div>\r\n} }\r\n<ng-template #renderControls>\r\n @for (item of config | filterToolbarControl; track item) { @switch (item.xtype) { @case ('Ly.LayoutTabPanel') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n name: 'LyLayoutPanelComponent',\r\n selector: 'bsu-ly-tab-container'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-tab-container [config]=\"item\"></bsu-ly-tab-container> -->\r\n } @case ('Ly.LayoutPanel') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n name: 'LyLayoutPanelComponent',\r\n selector: 'bsu-ly-layout-panel'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-layout-panel [config]=\"item\"></bsu-ly-layout-panel> -->\r\n } @case ('Ly.LayoutContainer') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n name: 'LyLayoutContainerComponent',\r\n selector: 'bsu-ly-layout-container'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-layout-container [config]=\"item\"></bsu-ly-layout-container> -->\r\n } @case ('Ly.EmptySpace') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n module: item.Type === 'SplitterItem' ? 'BarsaNovinRayCore' : '',\r\n name: item.Type === 'SplitterItem' ? 'SplitterComponent' : 'LyEmptySpaceComponent',\r\n selector: item.Type === 'SplitterItem' ? 'bnrc-splitter' : 'bsu-ly-empty-space'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-empty-space [config]=\"item\"></bsu-ly-empty-space> -->\r\n } @case ('Ly.SimpleLabel') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n name: 'LySimpleLabelComponent',\r\n selector: 'bsu-ly-simple-label'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-simple-label [config]=\"item\"></bsu-ly-simple-label> -->\r\n } @case ('Ly.LayoutLine') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLineComponent', selector: 'bsu-ly-line' }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-line [isVertical]=\"item.IsVertical\"></bsu-ly-line> -->\r\n } @case ('Ly.LayoutJoin') { @if (item.Type === 'HorizontalJoin') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-horizontal-layout',\r\n name: 'LyLayoutHorizontalComponent'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-horizontal-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-horizontal-layout> -->\r\n } @else {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-vertical-layout',\r\n name: 'LyLayoutVerticalComponent'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-vertical-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-vertical-layout> -->\r\n } } @case ('Ly.LayoutControl') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-layout-control',\r\n name: 'LayoutControlComponent'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-layout-control [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-layout-control> -->\r\n } } }\r\n <ng-template #dynamicLayout let-config let-selector=\"selector\" let-maxLabelWidth=\"maxLabelWidth\" let-name=\"name\">\r\n <bnrc-dynamic-layout\r\n [config]=\"config\"\r\n [selector]=\"selector\"\r\n [name]=\"name\"\r\n [module]=\"'BarsaSapUi'\"\r\n [moduleFileName]=\"'BarsaSapUi'\"\r\n [maxLabelWidth]=\"(maxLabelWidth$ | async)!!\"\r\n [flex]=\"config.Bounds.width\"\r\n [isSearchPanel]=\"isSearchPanel\"\r\n (events)=\"onEvents($event)\"\r\n >\r\n </bnrc-dynamic-layout>\r\n </ng-template>\r\n</ng-template>\r\n", styles: [":host{width:100%;display:flex;height:auto;align-items:flex-start;min-width:0}:host>fd-panel.hide-header ::ng-deep>.fd-panel>.fd-panel__content{border-radius:var(--fdPanel_Content_Border_Top_Left_Radius, var(--fdPanel_Border_Radius)) var(--fdPanel_Content_Border_Top_Right_Radius, var(--fdPanel_Border_Radius)) var(--fdPanel_Content_Border_Bottom_Right_Radius, var(--fdPanel_Border_Radius)) var(--fdPanel_Content_Border_Bottom_Left_Radius, var(--fdPanel_Border_Radius))}.fd-wizard-example .fd-wizard__content{min-height:300px}.full-width{width:100%}@media (max-width: 600px){:host{align-items:stretch}}fd-panel{width:100%}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.DynamicLayoutComponent, selector: "bnrc-dynamic-layout", inputs: ["selector", "module", "name", "parameters", "moduleFileName", "flex", "config", "maxLabelWidth", "hasHorizontalText", "isSearchPanel"] }, { kind: "directive", type: i2.HorizontalResponsiveDirective, selector: "[hrResponsive]", inputs: ["disable", "config", "hrResponsive"] }, { kind: "component", type: i3$6.PanelComponent, selector: "fd-panel", inputs: ["class", "fixed", "id", "expandId", "expandAriaLabel", "expandAriaLabelledBy", "expanded", "transparent", "noRadius"], outputs: ["expandedChange"] }, { kind: "directive", type: i3$6.PanelContentDirective, selector: "[fd-panel-content]", inputs: ["height", "minHeight", "maxHeight", "ariaLabel", "ariaLabelledBy", "role", "noPadding", "transparent", "id"] }, { kind: "directive", type: i3$6.PanelTitleDirective, selector: "[fd-panel-title]", inputs: ["id"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: i2.FilterToolbarControlPipe, name: "filterToolbarControl" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
13726
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: LyLayoutPanelComponent, isStandalone: false, selector: "bsu-ly-layout-panel", inputs: { renderItems: "renderItems", isRoot: "isRoot", hideTitle: "hideTitle", notPanelMode: "notPanelMode" }, host: { properties: { "attr.maxLabelWidth": "this.maxLabelWidth", "style.flex": "this.flex", "attr.title": "this.title", "attr.layoutpanel": "this.layoutpanel" } }, providers: [LayoutService], viewQueries: [{ propertyName: "viewRef", first: true, predicate: ["viewRefTemplate"], descendants: true, read: ViewContainerRef, static: true }], usesInheritance: true, ngImport: i0, template: "@if (visible) { @if(!notPanelMode && !parameters?.IsNotPanelMode){\r\n<fd-panel\r\n [fixed]=\"!config.ExpandButtonVisible\"\r\n [class.hide-header]=\"!config.TextVisible || hideTitle\"\r\n [attr.maxWidth]=\"maxWidth\"\r\n [expanded]=\"config.Expanded\"\r\n [config]=\"config\"\r\n [hrResponsive]=\"parameters?.HResponsiveSettings\"\r\n>\r\n @if (!hideTitle && !parameters?.HideHeader) {\r\n <h5 fd-panel-title>\r\n <div style=\"display: flex; gap: 0.5rem; align-items: center\">\r\n @if (config.FontIcon) {\r\n <i\r\n style=\"font-size: 1.5rem\"\r\n [style.color]=\"config.IconColor || null\"\r\n [class]=\"'sap-icon--' + config.FontIcon\"\r\n ></i>\r\n }\r\n <span>{{ (config.TextVisible ? config.Title ?? '' : '') | bbbTranslate }}</span>\r\n </div>\r\n </h5>\r\n }\r\n <div fd-panel-content [class.row-reverse-direction]=\"rowDirection\" [class.column-direction]=\"columnDirection\">\r\n <ng-container *ngTemplateOutlet=\"renderControls\"></ng-container>\r\n </div>\r\n</fd-panel>\r\n} @else {\r\n<div [config]=\"config\" [hrResponsive]=\"parameters?.HResponsiveSettings\" class=\"tw-w-full\">\r\n <ng-container *ngTemplateOutlet=\"renderControls\"></ng-container>\r\n</div>\r\n} }\r\n<ng-template #renderControls>\r\n @for (item of config | filterToolbarControl; track item.id) { @switch (item.xtype) { @case ('Ly.LayoutTabPanel') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n name: 'LyLayoutPanelComponent',\r\n selector: 'bsu-ly-tab-container'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-tab-container [config]=\"item\"></bsu-ly-tab-container> -->\r\n } @case ('Ly.LayoutPanel') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n name: 'LyLayoutPanelComponent',\r\n selector: 'bsu-ly-layout-panel'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-layout-panel [config]=\"item\"></bsu-ly-layout-panel> -->\r\n } @case ('Ly.LayoutContainer') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n name: 'LyLayoutContainerComponent',\r\n selector: 'bsu-ly-layout-container'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-layout-container [config]=\"item\"></bsu-ly-layout-container> -->\r\n } @case ('Ly.EmptySpace') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n module: item.Type === 'SplitterItem' ? 'BarsaNovinRayCore' : '',\r\n name: item.Type === 'SplitterItem' ? 'SplitterComponent' : 'LyEmptySpaceComponent',\r\n selector: item.Type === 'SplitterItem' ? 'bnrc-splitter' : 'bsu-ly-empty-space'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-empty-space [config]=\"item\"></bsu-ly-empty-space> -->\r\n } @case ('Ly.SimpleLabel') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n name: 'LySimpleLabelComponent',\r\n selector: 'bsu-ly-simple-label'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-simple-label [config]=\"item\"></bsu-ly-simple-label> -->\r\n } @case ('Ly.LayoutLine') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLineComponent', selector: 'bsu-ly-line' }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-line [isVertical]=\"item.IsVertical\"></bsu-ly-line> -->\r\n } @case ('Ly.LayoutJoin') { @if (item.Type === 'HorizontalJoin') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-horizontal-layout',\r\n name: 'LyLayoutHorizontalComponent'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-horizontal-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-horizontal-layout> -->\r\n } @else {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-vertical-layout',\r\n name: 'LyLayoutVerticalComponent'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-vertical-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-vertical-layout> -->\r\n } } @case ('Ly.LayoutControl') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-layout-control',\r\n name: 'LayoutControlComponent'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-layout-control [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-layout-control> -->\r\n } } }\r\n <ng-template #dynamicLayout let-config let-selector=\"selector\" let-maxLabelWidth=\"maxLabelWidth\" let-name=\"name\">\r\n <bnrc-dynamic-layout\r\n [config]=\"config\"\r\n [selector]=\"selector\"\r\n [name]=\"name\"\r\n [module]=\"'BarsaSapUi'\"\r\n [moduleFileName]=\"'BarsaSapUi'\"\r\n [maxLabelWidth]=\"(maxLabelWidth$ | async)!!\"\r\n [flex]=\"config.Bounds.width\"\r\n [isSearchPanel]=\"isSearchPanel\"\r\n (events)=\"onEvents($event)\"\r\n >\r\n </bnrc-dynamic-layout>\r\n </ng-template>\r\n</ng-template>\r\n", styles: [":host{width:100%;display:flex;height:auto;align-items:flex-start;min-width:0}:host>fd-panel.hide-header ::ng-deep>.fd-panel>.fd-panel__content{border-radius:var(--fdPanel_Content_Border_Top_Left_Radius, var(--fdPanel_Border_Radius)) var(--fdPanel_Content_Border_Top_Right_Radius, var(--fdPanel_Border_Radius)) var(--fdPanel_Content_Border_Bottom_Right_Radius, var(--fdPanel_Border_Radius)) var(--fdPanel_Content_Border_Bottom_Left_Radius, var(--fdPanel_Border_Radius))}.fd-wizard-example .fd-wizard__content{min-height:300px}.full-width{width:100%}@media (max-width: 600px){:host{align-items:stretch}}fd-panel{width:100%}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.DynamicLayoutComponent, selector: "bnrc-dynamic-layout", inputs: ["selector", "module", "name", "parameters", "moduleFileName", "flex", "config", "maxLabelWidth", "hasHorizontalText", "isSearchPanel"] }, { kind: "directive", type: i2.HorizontalResponsiveDirective, selector: "[hrResponsive]", inputs: ["disable", "config", "hrResponsive"] }, { kind: "component", type: i3$6.PanelComponent, selector: "fd-panel", inputs: ["class", "fixed", "id", "expandId", "expandAriaLabel", "expandAriaLabelledBy", "expanded", "transparent", "noRadius"], outputs: ["expandedChange"] }, { kind: "directive", type: i3$6.PanelContentDirective, selector: "[fd-panel-content]", inputs: ["height", "minHeight", "maxHeight", "ariaLabel", "ariaLabelledBy", "role", "noPadding", "transparent", "id"] }, { kind: "directive", type: i3$6.PanelTitleDirective, selector: "[fd-panel-title]", inputs: ["id"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: i2.FilterToolbarControlPipe, name: "filterToolbarControl" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
13671
13727
  }
13672
13728
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: LyLayoutPanelComponent, decorators: [{
13673
13729
  type: Component,
13674
- args: [{ selector: 'bsu-ly-layout-panel', changeDetection: ChangeDetectionStrategy.OnPush, providers: [LayoutService], standalone: false, template: "@if (visible) { @if(!notPanelMode && !parameters?.IsNotPanelMode){\r\n<fd-panel\r\n [fixed]=\"!config.ExpandButtonVisible\"\r\n [class.hide-header]=\"!config.TextVisible || hideTitle\"\r\n [attr.maxWidth]=\"maxWidth\"\r\n [expanded]=\"config.Expanded\"\r\n [config]=\"config\"\r\n [hrResponsive]=\"parameters?.HResponsiveSettings\"\r\n>\r\n @if (!hideTitle && !parameters?.HideHeader) {\r\n <h5 fd-panel-title>\r\n <div style=\"display: flex; gap: 0.5rem; align-items: center\">\r\n @if (config.FontIcon) {\r\n <i\r\n style=\"font-size: 1.5rem\"\r\n [style.color]=\"config.IconColor || null\"\r\n [class]=\"'sap-icon--' + config.FontIcon\"\r\n ></i>\r\n }\r\n <span>{{ (config.TextVisible ? config.Title ?? '' : '') | bbbTranslate }}</span>\r\n </div>\r\n </h5>\r\n }\r\n <div fd-panel-content [class.row-reverse-direction]=\"rowDirection\" [class.column-direction]=\"columnDirection\">\r\n <ng-container *ngTemplateOutlet=\"renderControls\"></ng-container>\r\n </div>\r\n</fd-panel>\r\n} @else {\r\n<div [config]=\"config\" [hrResponsive]=\"parameters?.HResponsiveSettings\" class=\"tw-w-full\">\r\n <ng-container *ngTemplateOutlet=\"renderControls\"></ng-container>\r\n</div>\r\n} }\r\n<ng-template #renderControls>\r\n @for (item of config | filterToolbarControl; track item) { @switch (item.xtype) { @case ('Ly.LayoutTabPanel') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n name: 'LyLayoutPanelComponent',\r\n selector: 'bsu-ly-tab-container'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-tab-container [config]=\"item\"></bsu-ly-tab-container> -->\r\n } @case ('Ly.LayoutPanel') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n name: 'LyLayoutPanelComponent',\r\n selector: 'bsu-ly-layout-panel'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-layout-panel [config]=\"item\"></bsu-ly-layout-panel> -->\r\n } @case ('Ly.LayoutContainer') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n name: 'LyLayoutContainerComponent',\r\n selector: 'bsu-ly-layout-container'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-layout-container [config]=\"item\"></bsu-ly-layout-container> -->\r\n } @case ('Ly.EmptySpace') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n module: item.Type === 'SplitterItem' ? 'BarsaNovinRayCore' : '',\r\n name: item.Type === 'SplitterItem' ? 'SplitterComponent' : 'LyEmptySpaceComponent',\r\n selector: item.Type === 'SplitterItem' ? 'bnrc-splitter' : 'bsu-ly-empty-space'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-empty-space [config]=\"item\"></bsu-ly-empty-space> -->\r\n } @case ('Ly.SimpleLabel') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n name: 'LySimpleLabelComponent',\r\n selector: 'bsu-ly-simple-label'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-simple-label [config]=\"item\"></bsu-ly-simple-label> -->\r\n } @case ('Ly.LayoutLine') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLineComponent', selector: 'bsu-ly-line' }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-line [isVertical]=\"item.IsVertical\"></bsu-ly-line> -->\r\n } @case ('Ly.LayoutJoin') { @if (item.Type === 'HorizontalJoin') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-horizontal-layout',\r\n name: 'LyLayoutHorizontalComponent'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-horizontal-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-horizontal-layout> -->\r\n } @else {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-vertical-layout',\r\n name: 'LyLayoutVerticalComponent'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-vertical-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-vertical-layout> -->\r\n } } @case ('Ly.LayoutControl') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-layout-control',\r\n name: 'LayoutControlComponent'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-layout-control [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-layout-control> -->\r\n } } }\r\n <ng-template #dynamicLayout let-config let-selector=\"selector\" let-maxLabelWidth=\"maxLabelWidth\" let-name=\"name\">\r\n <bnrc-dynamic-layout\r\n [config]=\"config\"\r\n [selector]=\"selector\"\r\n [name]=\"name\"\r\n [module]=\"'BarsaSapUi'\"\r\n [moduleFileName]=\"'BarsaSapUi'\"\r\n [maxLabelWidth]=\"(maxLabelWidth$ | async)!!\"\r\n [flex]=\"config.Bounds.width\"\r\n [isSearchPanel]=\"isSearchPanel\"\r\n (events)=\"onEvents($event)\"\r\n >\r\n </bnrc-dynamic-layout>\r\n </ng-template>\r\n</ng-template>\r\n", styles: [":host{width:100%;display:flex;height:auto;align-items:flex-start;min-width:0}:host>fd-panel.hide-header ::ng-deep>.fd-panel>.fd-panel__content{border-radius:var(--fdPanel_Content_Border_Top_Left_Radius, var(--fdPanel_Border_Radius)) var(--fdPanel_Content_Border_Top_Right_Radius, var(--fdPanel_Border_Radius)) var(--fdPanel_Content_Border_Bottom_Right_Radius, var(--fdPanel_Border_Radius)) var(--fdPanel_Content_Border_Bottom_Left_Radius, var(--fdPanel_Border_Radius))}.fd-wizard-example .fd-wizard__content{min-height:300px}.full-width{width:100%}@media (max-width: 600px){:host{align-items:stretch}}fd-panel{width:100%}\n"] }]
13730
+ args: [{ selector: 'bsu-ly-layout-panel', changeDetection: ChangeDetectionStrategy.OnPush, providers: [LayoutService], standalone: false, template: "@if (visible) { @if(!notPanelMode && !parameters?.IsNotPanelMode){\r\n<fd-panel\r\n [fixed]=\"!config.ExpandButtonVisible\"\r\n [class.hide-header]=\"!config.TextVisible || hideTitle\"\r\n [attr.maxWidth]=\"maxWidth\"\r\n [expanded]=\"config.Expanded\"\r\n [config]=\"config\"\r\n [hrResponsive]=\"parameters?.HResponsiveSettings\"\r\n>\r\n @if (!hideTitle && !parameters?.HideHeader) {\r\n <h5 fd-panel-title>\r\n <div style=\"display: flex; gap: 0.5rem; align-items: center\">\r\n @if (config.FontIcon) {\r\n <i\r\n style=\"font-size: 1.5rem\"\r\n [style.color]=\"config.IconColor || null\"\r\n [class]=\"'sap-icon--' + config.FontIcon\"\r\n ></i>\r\n }\r\n <span>{{ (config.TextVisible ? config.Title ?? '' : '') | bbbTranslate }}</span>\r\n </div>\r\n </h5>\r\n }\r\n <div fd-panel-content [class.row-reverse-direction]=\"rowDirection\" [class.column-direction]=\"columnDirection\">\r\n <ng-container *ngTemplateOutlet=\"renderControls\"></ng-container>\r\n </div>\r\n</fd-panel>\r\n} @else {\r\n<div [config]=\"config\" [hrResponsive]=\"parameters?.HResponsiveSettings\" class=\"tw-w-full\">\r\n <ng-container *ngTemplateOutlet=\"renderControls\"></ng-container>\r\n</div>\r\n} }\r\n<ng-template #renderControls>\r\n @for (item of config | filterToolbarControl; track item.id) { @switch (item.xtype) { @case ('Ly.LayoutTabPanel') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n name: 'LyLayoutPanelComponent',\r\n selector: 'bsu-ly-tab-container'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-tab-container [config]=\"item\"></bsu-ly-tab-container> -->\r\n } @case ('Ly.LayoutPanel') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n name: 'LyLayoutPanelComponent',\r\n selector: 'bsu-ly-layout-panel'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-layout-panel [config]=\"item\"></bsu-ly-layout-panel> -->\r\n } @case ('Ly.LayoutContainer') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n name: 'LyLayoutContainerComponent',\r\n selector: 'bsu-ly-layout-container'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-layout-container [config]=\"item\"></bsu-ly-layout-container> -->\r\n } @case ('Ly.EmptySpace') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n module: item.Type === 'SplitterItem' ? 'BarsaNovinRayCore' : '',\r\n name: item.Type === 'SplitterItem' ? 'SplitterComponent' : 'LyEmptySpaceComponent',\r\n selector: item.Type === 'SplitterItem' ? 'bnrc-splitter' : 'bsu-ly-empty-space'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-empty-space [config]=\"item\"></bsu-ly-empty-space> -->\r\n } @case ('Ly.SimpleLabel') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n name: 'LySimpleLabelComponent',\r\n selector: 'bsu-ly-simple-label'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-simple-label [config]=\"item\"></bsu-ly-simple-label> -->\r\n } @case ('Ly.LayoutLine') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: { $implicit: item, name: 'LyLineComponent', selector: 'bsu-ly-line' }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-line [isVertical]=\"item.IsVertical\"></bsu-ly-line> -->\r\n } @case ('Ly.LayoutJoin') { @if (item.Type === 'HorizontalJoin') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-horizontal-layout',\r\n name: 'LyLayoutHorizontalComponent'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-horizontal-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-horizontal-layout> -->\r\n } @else {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-ly-vertical-layout',\r\n name: 'LyLayoutVerticalComponent'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-ly-vertical-layout [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-ly-vertical-layout> -->\r\n } } @case ('Ly.LayoutControl') {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n dynamicLayout;\r\n context: {\r\n $implicit: item,\r\n selector: 'bsu-layout-control',\r\n name: 'LayoutControlComponent'\r\n }\r\n \"\r\n ></ng-container>\r\n <!-- <bsu-layout-control [config]=\"item\" [maxLabelWidth]=\"maxLabelWidth\"></bsu-layout-control> -->\r\n } } }\r\n <ng-template #dynamicLayout let-config let-selector=\"selector\" let-maxLabelWidth=\"maxLabelWidth\" let-name=\"name\">\r\n <bnrc-dynamic-layout\r\n [config]=\"config\"\r\n [selector]=\"selector\"\r\n [name]=\"name\"\r\n [module]=\"'BarsaSapUi'\"\r\n [moduleFileName]=\"'BarsaSapUi'\"\r\n [maxLabelWidth]=\"(maxLabelWidth$ | async)!!\"\r\n [flex]=\"config.Bounds.width\"\r\n [isSearchPanel]=\"isSearchPanel\"\r\n (events)=\"onEvents($event)\"\r\n >\r\n </bnrc-dynamic-layout>\r\n </ng-template>\r\n</ng-template>\r\n", styles: [":host{width:100%;display:flex;height:auto;align-items:flex-start;min-width:0}:host>fd-panel.hide-header ::ng-deep>.fd-panel>.fd-panel__content{border-radius:var(--fdPanel_Content_Border_Top_Left_Radius, var(--fdPanel_Border_Radius)) var(--fdPanel_Content_Border_Top_Right_Radius, var(--fdPanel_Border_Radius)) var(--fdPanel_Content_Border_Bottom_Right_Radius, var(--fdPanel_Border_Radius)) var(--fdPanel_Content_Border_Bottom_Left_Radius, var(--fdPanel_Border_Radius))}.fd-wizard-example .fd-wizard__content{min-height:300px}.full-width{width:100%}@media (max-width: 600px){:host{align-items:stretch}}fd-panel{width:100%}\n"] }]
13675
13731
  }], propDecorators: { renderItems: [{
13676
13732
  type: Input
13677
13733
  }], isRoot: [{
@@ -13803,7 +13859,7 @@ class UiSimpleComboComponent extends FieldBaseComponent {
13803
13859
  this.fireContextEvent('select', this.value);
13804
13860
  }
13805
13861
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UiSimpleComboComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
13806
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: UiSimpleComboComponent, isStandalone: false, selector: "bsu-ui-simple-combo", inputs: { MinSize: "MinSize" }, viewQueries: [{ propertyName: "fdComboRef", first: true, predicate: ComboboxComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "@if (Setting.IconDisplayType !== 'Image' && !popupMode) {\r\n<!-- <fd-select\r\n style=\"width: 100%\"\r\n [placeholder]=\"'Select' | bbbTranslate\"\r\n [value]=\"value\"\r\n [mobile]=\"(deviceSize$ | async) === 's'\"\r\n [mobileConfig]=\"mobileConfig\"\r\n (valueChange)=\"onValueChange($event)\"\r\n [style.direction]=\"Setting.IsLtr === true ? 'ltr' : null\"\r\n [style.text-align]=\"Setting.IsLtr === true ? 'left' : null\"\r\n [readonly]=\"(readonly$ | async) === true ? true : false\"\r\n [disabled]=\"(disable$ | async) === true ? true : false\"\r\n>\r\n @for (item of context.store.data[context.store.root]; track item) {\r\n <fd-option\r\n [value]=\"item.id\"\r\n [style.direction]=\"Setting.IsLtr === true ? 'ltr' : null\"\r\n [class.control-disabled]=\"item.IsEmpty\"\r\n [class.list-empty-item]=\"item.IsEmpty\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"itemTemplate; context: { $implicit: item, popupMode: true }\"></ng-container>\r\n </fd-option>\r\n }\r\n</fd-select> -->\r\n<fd-combobox\r\n [inputId]=\"id\"\r\n [placeholder]=\"'Select' | bbbTranslate\"\r\n [displayFn]=\"displayFn\"\r\n [(ngModel)]=\"tvalue\"\r\n [readOnly]=\"(readonly$ | async) === true ? true : false\"\r\n [disabled]=\"(disable$ | async) === true ? true : false\"\r\n [attr.dir]=\"Setting.IsLtr === true ? 'ltr' : null\"\r\n [class.ltr]=\"Setting.IsLtr === true\"\r\n [fillOnSelect]=\"true\"\r\n [dropdownValues]=\"context.store.data[context.store.root]\"\r\n (itemClicked)=\"onItemClick($event)\"\r\n (change)=\"onChange($event)\"\r\n>\r\n <ng-container *fdComboboxItem=\"let item; use: rowDataOption; inputText as search\">\r\n <!-- Note that in this case you are responsible for highlighting. -->\r\n @if (Setting.IconDisplayType !== 'NoImage') { @if (item.url) {\r\n <img fd-list-icon [attrRtl]=\"Setting.IsLtr === true ? false : undefined\" [src]=\"item.url\" />\r\n } } @if (Setting.IconDisplayType !== 'Image') {\r\n <span fd-list-title [innerHTML]=\"item.IsEmpty ? ('Select' | bbbTranslate) : (item.txt | bbbTranslate)\"></span>\r\n }\r\n </ng-container>\r\n</fd-combobox>\r\n} @if (Setting.IconDisplayType === 'Image' || popupMode) {\r\n<fd-popover #popover [focusTrapped]=\"true\" [focusAutoCapture]=\"true\">\r\n <fd-popover-control>\r\n <button fd-button fdType=\"transparent\" [fdMenu]=\"true\">\r\n @if (value && value !== '0') {\r\n <img [src]=\"value | comboRowImg: context.store.data.Rows\" />\r\n }\r\n </button>\r\n </fd-popover-control>\r\n <fd-popover-body class=\"combo-popupmode\">\r\n @for (item of context.store.data[context.store.root]; track item) {\r\n <button fd-button fdType=\"transparent\" [title]=\"item.txt\" (click)=\"popover.close(); onValueChange(item.id)\">\r\n @if (item.url) {\r\n <img [attrRtl]=\"Setting.IsLtr === true ? false : undefined\" [src]=\"item.url\" />\r\n }\r\n </button>\r\n }\r\n </fd-popover-body>\r\n</fd-popover>\r\n}\r\n<ng-template #itemTemplate let-item let-popupMode=\"popupMode\">\r\n @if (Setting.IconDisplayType !== 'NoImage') { @if (item.url) {\r\n <img [attrRtl]=\"Setting.IsLtr === true ? false : undefined\" [src]=\"item.url\" />\r\n } } @if (Setting.IconDisplayType !== 'Image') {\r\n {{ item.IsEmpty ? ('Select' | bbbTranslate) : (item.txt | bbbTranslate) }}\r\n }\r\n</ng-template>\r\n", styles: [":host{display:flex;align-self:center;align-items:center;width:100%;height:100%}:host ::ng-deep fd-select fd-popover{width:100%}:host fd-combobox{width:100%}:host fd-combobox ::ng-deep fd-popover{width:100%}:host fd-combobox ::ng-deep .ltr input{text-align:left!important}:host ::ng-deep .fd-popover-custom{width:100%}:host ::ng-deep fd-combobox-mobile fd-dialog-footer{position:absolute;bottom:0;width:100%}:host ::ng-deep fd-combobox-mobile .fd-dialog__content.fd-dialog__content--mobile{width:80svw;height:60svh}img[rtl=true]{margin-left:5px}img[rtl=false]{margin-right:5px}fd-popover{margin:.25rem 0}\n"], dependencies: [{ kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i2.AttrRtlDirective, selector: "[attrRtl]", inputs: ["attrRtl"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i4$7.ComboboxComponent, selector: "fd-combobox", inputs: ["comboboxId", "inputId", "ariaLabel", "ariaLabelledBy", "required", "dropdownValues", "filterFn", "disabled", "placeholder", "isSearch", "glyph", "glyphFont", "showClearButton", "triggers", "closeOnOutsideClick", "openOnKeyboardEvent", "state", "itemTemplate", "groupFn", "maxHeight", "dropDownMaxWidthPx", "noDropDownMaxWidth", "width", "searchFn", "highlighting", "closeOnSelect", "fillOnSelect", "autoComplete", "fillControlMode", "communicateByObject", "displayFn", "buttonFocusable", "clearButtonFocusable", "readOnly", "mobile", "mobileConfig", "showDropdownButton", "includes", "title", "byline", "tabOutStrategy"], outputs: ["itemClicked", "openChange", "inputTextChange"] }, { kind: "directive", type: i4$7.ComboboxItemDirective, selector: "[fdComboboxItem]", inputs: ["fdComboboxItemUse"] }, { kind: "directive", type: i7.ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap", "truncate"] }, { kind: "directive", type: i7.ListIconDirective, selector: "[fdListIcon], [fd-list-icon]", inputs: ["glyph", "glyphFont", "class", "role", "ariaHidden"] }, { kind: "component", type: i7$1.PopoverControlComponent, selector: "fd-popover-control, [fdPopoverControl]" }, { kind: "component", type: i7$1.PopoverBodyComponent, selector: "fd-popover-body", inputs: ["minWidth", "maxWidth", "minHeight", "maxHeight"] }, { kind: "component", type: i7$1.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig", "preventSpaceKeyScroll"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: i2.ComboRowImagePipe, name: "comboRowImg" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
13862
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: UiSimpleComboComponent, isStandalone: false, selector: "bsu-ui-simple-combo", inputs: { MinSize: "MinSize" }, viewQueries: [{ propertyName: "fdComboRef", first: true, predicate: ComboboxComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "@if (Setting.IconDisplayType !== 'Image' && !popupMode) {\r\n<!-- <fd-select\r\n style=\"width: 100%\"\r\n [placeholder]=\"'Select' | bbbTranslate\"\r\n [value]=\"value\"\r\n [mobile]=\"(deviceSize$ | async) === 's'\"\r\n [mobileConfig]=\"mobileConfig\"\r\n (valueChange)=\"onValueChange($event)\"\r\n [style.direction]=\"Setting.IsLtr === true ? 'ltr' : null\"\r\n [style.text-align]=\"Setting.IsLtr === true ? 'left' : null\"\r\n [readonly]=\"(readonly$ | async) === true ? true : false\"\r\n [disabled]=\"(disable$ | async) === true ? true : false\"\r\n>\r\n @for (item of context.store.data[context.store.root]; track item) {\r\n <fd-option\r\n [value]=\"item.id\"\r\n [style.direction]=\"Setting.IsLtr === true ? 'ltr' : null\"\r\n [class.control-disabled]=\"item.IsEmpty\"\r\n [class.list-empty-item]=\"item.IsEmpty\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"itemTemplate; context: { $implicit: item, popupMode: true }\"></ng-container>\r\n </fd-option>\r\n }\r\n</fd-select> -->\r\n<fd-combobox\r\n [inputId]=\"id\"\r\n [placeholder]=\"'Select' | bbbTranslate\"\r\n [displayFn]=\"displayFn\"\r\n [(ngModel)]=\"tvalue\"\r\n [readOnly]=\"(readonly$ | async) === true ? true : false\"\r\n [disabled]=\"(disable$ | async) === true ? true : false\"\r\n [attr.dir]=\"Setting.IsLtr === true ? 'ltr' : null\"\r\n [class.ltr]=\"Setting.IsLtr === true\"\r\n [fillOnSelect]=\"true\"\r\n [dropdownValues]=\"context.store.data[context.store.root]\"\r\n (itemClicked)=\"onItemClick($event)\"\r\n (change)=\"onChange($event)\"\r\n>\r\n <ng-container *fdComboboxItem=\"let item; use: rowDataOption; inputText as search\">\r\n <!-- Note that in this case you are responsible for highlighting. -->\r\n @if (Setting.IconDisplayType !== 'NoImage') { @if (item.url) {\r\n <img fd-list-icon [attrRtl]=\"Setting.IsLtr === true ? false : undefined\" [src]=\"item.url\" />\r\n } } @if (Setting.IconDisplayType !== 'Image') {\r\n <span fd-list-title [innerHTML]=\"item.IsEmpty ? ('Select' | bbbTranslate) : (item.txt | bbbTranslate)\"></span>\r\n }\r\n </ng-container>\r\n</fd-combobox>\r\n} @if (Setting.IconDisplayType === 'Image' || popupMode) {\r\n<fd-popover #popover [focusTrapped]=\"true\" [focusAutoCapture]=\"true\">\r\n <fd-popover-control>\r\n <button fd-button fdType=\"transparent\" [fdMenu]=\"true\">\r\n @if (value && value !== '0') {\r\n <img [src]=\"value | comboRowImg: context.store.data.Rows\" />\r\n }\r\n </button>\r\n </fd-popover-control>\r\n <fd-popover-body class=\"combo-popupmode\">\r\n @for (item of context.store.data[context.store.root]; track item) {\r\n <button fd-button fdType=\"transparent\" [title]=\"item.txt\" (click)=\"popover.close(); onValueChange(item.id)\">\r\n @if (item.url) {\r\n <img [attrRtl]=\"Setting.IsLtr === true ? false : undefined\" [src]=\"item.url\" />\r\n }\r\n </button>\r\n }\r\n </fd-popover-body>\r\n</fd-popover>\r\n}\r\n<ng-template #itemTemplate let-item let-popupMode=\"popupMode\">\r\n @if (Setting.IconDisplayType !== 'NoImage') { @if (item.url) {\r\n <img [attrRtl]=\"Setting.IsLtr === true ? false : undefined\" [src]=\"item.url\" />\r\n } } @if (Setting.IconDisplayType !== 'Image') {\r\n {{ item.IsEmpty ? ('Select' | bbbTranslate) : (item.txt | bbbTranslate) }}\r\n }\r\n</ng-template>\r\n", styles: [":host{display:flex;align-self:center;align-items:center;width:100%;height:100%}:host ::ng-deep fd-select fd-popover{width:100%}:host fd-combobox{width:100%}:host fd-combobox ::ng-deep fd-popover{width:100%}:host fd-combobox ::ng-deep .ltr input{text-align:left!important}:host ::ng-deep .fd-popover-custom{width:100%}:host ::ng-deep fd-combobox-mobile fd-dialog-footer{position:absolute;bottom:0;width:100%}:host ::ng-deep fd-combobox-mobile .fd-dialog__content.fd-dialog__content--mobile{width:80svw;height:60svh}img[rtl=true]{margin-left:5px}img[rtl=false]{margin-right:5px}fd-popover{margin:.25rem 0}\n"], dependencies: [{ kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i2.AttrRtlDirective, selector: "[attrRtl]", inputs: ["attrRtl"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i4$8.ComboboxComponent, selector: "fd-combobox", inputs: ["comboboxId", "inputId", "ariaLabel", "ariaLabelledBy", "required", "dropdownValues", "filterFn", "disabled", "placeholder", "isSearch", "glyph", "glyphFont", "showClearButton", "triggers", "closeOnOutsideClick", "openOnKeyboardEvent", "state", "itemTemplate", "groupFn", "maxHeight", "dropDownMaxWidthPx", "noDropDownMaxWidth", "width", "searchFn", "highlighting", "closeOnSelect", "fillOnSelect", "autoComplete", "fillControlMode", "communicateByObject", "displayFn", "buttonFocusable", "clearButtonFocusable", "readOnly", "mobile", "mobileConfig", "showDropdownButton", "includes", "title", "byline", "tabOutStrategy"], outputs: ["itemClicked", "openChange", "inputTextChange"] }, { kind: "directive", type: i4$8.ComboboxItemDirective, selector: "[fdComboboxItem]", inputs: ["fdComboboxItemUse"] }, { kind: "directive", type: i7.ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap", "truncate"] }, { kind: "directive", type: i7.ListIconDirective, selector: "[fdListIcon], [fd-list-icon]", inputs: ["glyph", "glyphFont", "class", "role", "ariaHidden"] }, { kind: "component", type: i7$1.PopoverControlComponent, selector: "fd-popover-control, [fdPopoverControl]" }, { kind: "component", type: i7$1.PopoverBodyComponent, selector: "fd-popover-body", inputs: ["minWidth", "maxWidth", "minHeight", "maxHeight"] }, { kind: "component", type: i7$1.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig", "preventSpaceKeyScroll"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: i2.ComboRowImagePipe, name: "comboRowImg" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
13807
13863
  }
13808
13864
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UiSimpleComboComponent, decorators: [{
13809
13865
  type: Component,
@@ -14117,7 +14173,7 @@ class FormToolbarButtonComponent extends BaseFormToolbaritemPropsComponent {
14117
14173
  }
14118
14174
  }
14119
14175
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: FormToolbarButtonComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
14120
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: FormToolbarButtonComponent, isStandalone: false, selector: "bsu-form-toolbar-button", inputs: { parameters: "parameters" }, outputs: { btnClick: "btnClick" }, viewQueries: [{ propertyName: "inlineHelpDirective", first: true, predicate: InlineHelpDirective, descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<button\r\n fd-toolbar-item\r\n fd-button\r\n [title]=\"inlineHelp | bbbTranslate\"\r\n [glyph]=\"deviceSize === 's' ? null : icon\"\r\n [class.control-disabled]=\"isEnable === false ? true : false\"\r\n [fdType]=\"fdType || (!isEnable ? 'transparent' : fdType)\"\r\n (click)=\"btnClick.emit()\"\r\n [style.min-width.px]=\"minWidth ? minWidth : null\"\r\n>\r\n @if ( deviceSize === 's' || (!onlyIcon && showText!==false )) {\r\n <span>{{ customText || text | bbbTranslate }}</span>\r\n }\r\n</button>\r\n", styles: [""], dependencies: [{ kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "directive", type: i8.ToolbarItemDirective, selector: "[fd-toolbar-item], [fdOverflowGroup], [fdOverflowPriority]", inputs: ["fdOverflowPriority", "fdOverflowGroup"] }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
14176
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: FormToolbarButtonComponent, isStandalone: false, selector: "bsu-form-toolbar-button", inputs: { parameters: "parameters" }, outputs: { btnClick: "btnClick" }, viewQueries: [{ propertyName: "inlineHelpDirective", first: true, predicate: InlineHelpDirective, descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<button\r\n fd-toolbar-item\r\n fd-button\r\n [title]=\"inlineHelp | bbbTranslate\"\r\n [glyph]=\"deviceSize === 's' ? null : icon\"\r\n [class.control-disabled]=\"isEnable === false ? true : false\"\r\n [fdType]=\"fdType || (!isEnable ? 'transparent' : fdType)\"\r\n (click)=\"btnClick.emit()\"\r\n [style.min-width.px]=\"minWidth ? minWidth : null\"\r\n>\r\n @if ( deviceSize === 's' || (!onlyIcon && showText!==false )) {\r\n <span>{{ customText || text | bbbTranslate }}</span>\r\n }\r\n</button>\r\n", styles: [""], dependencies: [{ kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "directive", type: i7$2.ToolbarItemDirective, selector: "[fd-toolbar-item], [fdOverflowGroup], [fdOverflowPriority]", inputs: ["fdOverflowPriority", "fdOverflowGroup"] }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
14121
14177
  }
14122
14178
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: FormToolbarButtonComponent, decorators: [{
14123
14179
  type: Component,
@@ -14191,7 +14247,7 @@ class BarsaNetworkOfflineComponent extends BaseComponent {
14191
14247
  this._dialogRef = this._dialogService.open(this.dialogContainer, dialogConfig);
14192
14248
  }
14193
14249
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BarsaNetworkOfflineComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
14194
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.6", type: BarsaNetworkOfflineComponent, isStandalone: false, selector: "bsu-barsa-network-offline", viewQueries: [{ propertyName: "dialogContainer", first: true, predicate: ["container"], descendants: true, read: TemplateRef }], usesInheritance: true, ngImport: i0, template: "<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #container>\r\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\" #dialogTpl>\r\n <fd-dialog-header>\r\n <h1 fd-title>{{ 'ErrorInConnection' | bbbTranslate }}</h1>\r\n </fd-dialog-header>\r\n\r\n <fd-dialog-body class=\"offline-wrapper\">\r\n <img src=\"assets/svg/offline-internet-icon.svg\" />\r\n <div>\r\n <h3 fd-title>{{ 'NetworkOffline' | bbbTranslate }}</h3>\r\n <fd-text [text]=\"'NetworkOfflineDescription' | bbbTranslate\"></fd-text>\r\n </div>\r\n </fd-dialog-body>\r\n <fd-dialog-footer>\r\n <ng-template fdkTemplate=\"footer\">\r\n <div fd-bar-right>\r\n <fd-button-bar\r\n fdType=\"emphasized\"\r\n [label]=\"'Continue' | bbbTranslate\"\r\n (click)=\"dialog.dismiss('Close button')\"\r\n >\r\n </fd-button-bar>\r\n </div>\r\n </ng-template>\r\n </fd-dialog-footer>\r\n </fd-dialog>\r\n</ng-template>\r\n", styles: [".offline-wrapper{display:flex;flex-direction:column;align-items:center;justify-content:center}\n"], dependencies: [{ kind: "directive", type: i3$2.BarRightDirective, selector: "[fd-bar-right]" }, { kind: "component", type: i3$2.ButtonBarComponent, selector: "fd-button-bar", inputs: ["fullWidth", "fdType", "title", "ariaLabelledby", "id"] }, { kind: "component", type: i3$3.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i3$3.DialogBodyComponent, selector: "fd-dialog-body", inputs: ["disablePaddings"] }, { kind: "component", type: i3$3.DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: i3$3.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "directive", type: i4$2.TemplateDirective, selector: "[fdkTemplate]", inputs: ["fdkTemplate"] }, { kind: "component", type: i5.TitleComponent, selector: "[fd-title], [fdTitle]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "component", type: i5$2.TextComponent, selector: "fd-text", inputs: ["text", "maxLines", "whitespaces", "hyphenation", "expandable", "isCollapsed"], outputs: ["isCollapsedChange"] }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
14250
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.6", type: BarsaNetworkOfflineComponent, isStandalone: false, selector: "bsu-barsa-network-offline", viewQueries: [{ propertyName: "dialogContainer", first: true, predicate: ["container"], descendants: true, read: TemplateRef }], usesInheritance: true, ngImport: i0, template: "<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #container>\r\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\" #dialogTpl>\r\n <fd-dialog-header>\r\n <h1 fd-title>{{ 'ErrorInConnection' | bbbTranslate }}</h1>\r\n </fd-dialog-header>\r\n\r\n <fd-dialog-body class=\"offline-wrapper\">\r\n <img src=\"assets/svg/offline-internet-icon.svg\" />\r\n <div>\r\n <h3 fd-title>{{ 'NetworkOffline' | bbbTranslate }}</h3>\r\n <fd-text [text]=\"'NetworkOfflineDescription' | bbbTranslate\"></fd-text>\r\n </div>\r\n </fd-dialog-body>\r\n <fd-dialog-footer>\r\n <ng-template fdkTemplate=\"footer\">\r\n <div fd-bar-right>\r\n <fd-button-bar\r\n fdType=\"emphasized\"\r\n [label]=\"'Continue' | bbbTranslate\"\r\n (click)=\"dialog.dismiss('Close button')\"\r\n >\r\n </fd-button-bar>\r\n </div>\r\n </ng-template>\r\n </fd-dialog-footer>\r\n </fd-dialog>\r\n</ng-template>\r\n", styles: [".offline-wrapper{display:flex;flex-direction:column;align-items:center;justify-content:center}\n"], dependencies: [{ kind: "directive", type: i3$2.BarRightDirective, selector: "[fd-bar-right]" }, { kind: "component", type: i3$2.ButtonBarComponent, selector: "fd-button-bar", inputs: ["fullWidth", "fdType", "title", "ariaLabelledby", "id"] }, { kind: "component", type: i3$3.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i3$3.DialogBodyComponent, selector: "fd-dialog-body", inputs: ["disablePaddings"] }, { kind: "component", type: i3$3.DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: i3$3.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "directive", type: i4$2.TemplateDirective, selector: "[fdkTemplate]", inputs: ["fdkTemplate"] }, { kind: "component", type: i5.TitleComponent, selector: "[fd-title], [fdTitle]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "component", type: i5$3.TextComponent, selector: "fd-text", inputs: ["text", "maxLines", "whitespaces", "hyphenation", "expandable", "isCollapsed"], outputs: ["isCollapsedChange"] }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
14195
14251
  }
14196
14252
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BarsaNetworkOfflineComponent, decorators: [{
14197
14253
  type: Component,
@@ -14400,7 +14456,7 @@ class BarsaToolbaritemSearchComponent extends BaseFormToolbaritemPropsComponent
14400
14456
  this._cdr.detectChanges();
14401
14457
  }
14402
14458
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BarsaToolbaritemSearchComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
14403
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: BarsaToolbaritemSearchComponent, isStandalone: false, selector: "bsu-barsa-toolbaritem-search", host: { listeners: { "click": "onClick($event)" } }, usesInheritance: true, ngImport: i0, template: "<ng-container *ngTemplateOutlet=\"searchTpl\"> </ng-container>\r\n<!-- <ng-container *ngTemplateOutlet=\"deviceSize !== 's' ? searchTpl : btnTpl\"> </ng-container> -->\r\n\r\n<ng-template #btnTpl>\r\n <button fd-button glyph=\"search\" fdType=\"transparent\" (click)=\"onSearchModeChange()\"></button>\r\n @if (searchMode) {\r\n <div style=\"z-index: 1; position: absolute; left: 0; top: 0; bottom: 0; right: 0\">\r\n <ng-container *ngTemplateOutlet=\"searchTpl\"></ng-container>\r\n </div>\r\n }\r\n</ng-template>\r\n<ng-template #searchTpl>\r\n <!-- <button fd-button glyph=\"arrow-right\" fdType=\"transparent\"></button> -->\r\n <!-- <fd-input-group placement=\"before\" glyph=\"arrow-right\" glyphAriaLabel=\"search\" placeholder=\"Search\">\r\n</fd-input-group> -->\r\n <fd-input-group\r\n [style.width]=\"deviceSize === 's' ? '100%' : '220px'\"\r\n fd-toolbar-item\r\n type=\"search\"\r\n glyph=\"search\"\r\n [glyphAriaLabel]=\"'Search' | bbbTranslate\"\r\n [placeholder]=\"'Search' | bbbTranslate\"\r\n [button]=\"true\"\r\n [disabled]=\"false\"\r\n [(ngModel)]=\"searchTerm\"\r\n (addOnButtonClicked)=\"onSearchSubmit()\"\r\n (keydown.enter)=\"onSearchSubmit()\"\r\n >\r\n </fd-input-group>\r\n</ng-template>\r\n", styles: [":host{display:block;width:100%;height:100%;min-width:180px}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i4$1.InputGroupComponent, selector: "fd-input-group", inputs: ["placement", "required", "inline", "addOnText", "buttonFocusable", "type", "glyph", "glyphFont", "button", "isControl", "showFocus", "isExpanded", "glyphAriaLabel", "addonButtonAriaHidden", "iconTitle", "ariaLabelledBy", "ariaLabel"], outputs: ["addOnButtonClicked", "search"] }, { kind: "directive", type: i8.ToolbarItemDirective, selector: "[fd-toolbar-item], [fdOverflowGroup], [fdOverflowPriority]", inputs: ["fdOverflowPriority", "fdOverflowGroup"] }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
14459
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: BarsaToolbaritemSearchComponent, isStandalone: false, selector: "bsu-barsa-toolbaritem-search", host: { listeners: { "click": "onClick($event)" } }, usesInheritance: true, ngImport: i0, template: "<ng-container *ngTemplateOutlet=\"searchTpl\"> </ng-container>\r\n<!-- <ng-container *ngTemplateOutlet=\"deviceSize !== 's' ? searchTpl : btnTpl\"> </ng-container> -->\r\n\r\n<ng-template #btnTpl>\r\n <button fd-button glyph=\"search\" fdType=\"transparent\" (click)=\"onSearchModeChange()\"></button>\r\n @if (searchMode) {\r\n <div style=\"z-index: 1; position: absolute; left: 0; top: 0; bottom: 0; right: 0\">\r\n <ng-container *ngTemplateOutlet=\"searchTpl\"></ng-container>\r\n </div>\r\n }\r\n</ng-template>\r\n<ng-template #searchTpl>\r\n <!-- <button fd-button glyph=\"arrow-right\" fdType=\"transparent\"></button> -->\r\n <!-- <fd-input-group placement=\"before\" glyph=\"arrow-right\" glyphAriaLabel=\"search\" placeholder=\"Search\">\r\n</fd-input-group> -->\r\n <fd-input-group\r\n [style.width]=\"deviceSize === 's' ? '100%' : '220px'\"\r\n fd-toolbar-item\r\n type=\"search\"\r\n glyph=\"search\"\r\n [glyphAriaLabel]=\"'Search' | bbbTranslate\"\r\n [placeholder]=\"'Search' | bbbTranslate\"\r\n [button]=\"true\"\r\n [disabled]=\"false\"\r\n [(ngModel)]=\"searchTerm\"\r\n (addOnButtonClicked)=\"onSearchSubmit()\"\r\n (keydown.enter)=\"onSearchSubmit()\"\r\n >\r\n </fd-input-group>\r\n</ng-template>\r\n", styles: [":host{display:block;width:100%;height:100%;min-width:180px}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i4$1.InputGroupComponent, selector: "fd-input-group", inputs: ["placement", "required", "inline", "addOnText", "buttonFocusable", "type", "glyph", "glyphFont", "button", "isControl", "showFocus", "isExpanded", "glyphAriaLabel", "addonButtonAriaHidden", "iconTitle", "ariaLabelledBy", "ariaLabel"], outputs: ["addOnButtonClicked", "search"] }, { kind: "directive", type: i7$2.ToolbarItemDirective, selector: "[fd-toolbar-item], [fdOverflowGroup], [fdOverflowPriority]", inputs: ["fdOverflowPriority", "fdOverflowGroup"] }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
14404
14460
  }
14405
14461
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BarsaToolbaritemSearchComponent, decorators: [{
14406
14462
  type: Component,
@@ -14455,7 +14511,7 @@ class BarsaPishnamayeshPayamComponent extends FieldBaseComponent {
14455
14511
  useFactory: getDateService$1,
14456
14512
  deps: [LogService]
14457
14513
  }
14458
- ], usesInheritance: true, ngImport: i0, template: "@if (data) {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n showPayamClass;\r\n context: {\r\n $implicit: data,\r\n primary: !data?.$details?.length,\r\n isFirst: true\r\n }\r\n \"\r\n>\r\n</ng-container>\r\n}\r\n<ng-template #showPayamClass let-data let-primary=\"primary\" let-isFirst=\"isFirst\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n namayeshPayam;\r\n context: {\r\n $implicit: data.payam.Subject,\r\n mailNoText: data.payam.MailNoText,\r\n fromText: data.payam.FromText,\r\n toText: data.$toText,\r\n importance: data.$importance,\r\n readDate: data.$readDate,\r\n sendDate: data.$sendDate,\r\n ccText: data.$ccText,\r\n bccText: data.$bccText,\r\n accessLevel: data.$accessLevel,\r\n content: data.$content,\r\n fromPhoto: data.$fromPhoto,\r\n details: data.$details,\r\n attachments: data.$attachments,\r\n todo: data.$todo,\r\n customText: data.payam.CustomText,\r\n primary: primary,\r\n isFirst: isFirst\r\n }\r\n \"\r\n >\r\n </ng-container>\r\n</ng-template>\r\n\r\n<ng-template\r\n #namayeshPayam\r\n let-subject\r\n let-mailNoText=\"mailNoText\"\r\n let-content=\"content\"\r\n let-fromText=\"fromText\"\r\n let-toText=\"toText\"\r\n let-importance=\"importance\"\r\n let-readDate=\"readDate\"\r\n let-sendDate=\"sendDate\"\r\n let-ccText=\"ccText\"\r\n let-bccText=\"bccText\"\r\n let-fromPhoto=\"fromPhoto\"\r\n let-details=\"details\"\r\n let-accessLevel=\"accessLevel\"\r\n let-primary=\"primary\"\r\n let-isFirst=\"isFirst\"\r\n let-attachments=\"attachments\"\r\n let-todo=\"todo\"\r\n let-customText=\"customText\"\r\n>\r\n <fd-card cardType=\"object\">\r\n <fd-card-header>\r\n <fd-card-main-header>\r\n <fd-avatar\r\n [image]=\"fromPhoto\"\r\n [circle]=\"true\"\r\n size=\"s\"\r\n [ariaLabel]=\"fromText\"\r\n [label]=\"fromText\"\r\n [title]=\"fromText\"\r\n ></fd-avatar>\r\n <div fd-card-title class=\"header-fields\">\r\n <h5 fd-title>\r\n <a fd-link [emphasized]=\"true\" aria-label=\"Sender\"> {{ fromText }}</a>\r\n </h5>\r\n <fd-object-identifier [description]=\"'(' + sendDate + ')'\"> </fd-object-identifier>\r\n </div>\r\n <div fd-card-subtitle>\r\n <h5 fd-title>\r\n {{ subject }} @if(mailNoText){ <span>({{ mailNoText }})</span>}\r\n </h5>\r\n <fd-popover>\r\n <fd-popover-control>\r\n <button fd-button fdType=\"transparent\" [fdMenu]=\"true\">\r\n {{ 'Recievers' | bbbTranslate }}\r\n </button>\r\n </fd-popover-control>\r\n <fd-popover-body>\r\n <ul fd-list>\r\n @for (rec of toText; track rec) {\r\n <li fd-list-item>\r\n <a fd-list-link>{{ rec }}</a>\r\n </li>\r\n }\r\n </ul>\r\n </fd-popover-body>\r\n </fd-popover>\r\n </div>\r\n </fd-card-main-header>\r\n </fd-card-header>\r\n <fd-card-content>\r\n <fd-panel [expanded]=\"isFirst\">\r\n <div fd-panel-title >\r\n <h5 fd-title>{{ '\u0645\u062D\u062A\u0648\u0627\u06CC \u067E\u06CC\u0627\u0645' | bbbTranslate }}</h5>\r\n <div class=\"payamIcons\">\r\n @if (importance.icon) {\r\n <fd-popover>\r\n <fd-popover-control>\r\n <img [src]=\"'/Customization/Mail/' + importance.icon\" />\r\n </fd-popover-control>\r\n <fd-popover-body>\r\n <ul fd-list>\r\n <li fd-list-item>{{ importance.text }}</li>\r\n </ul>\r\n </fd-popover-body>\r\n </fd-popover>\r\n } @if (accessLevel.icon) {\r\n <fd-popover>\r\n <fd-popover-control>\r\n <img [src]=\"'/Customization/Mail/' + accessLevel.icon\" />\r\n </fd-popover-control>\r\n <fd-popover-body>\r\n <ul fd-list>\r\n <li fd-list-item>{{ accessLevel.text }}</li>\r\n </ul>\r\n </fd-popover-body>\r\n </fd-popover>\r\n } @if (todo) {\r\n <fd-info-label [label]=\"todo.text\" [color]=\"todo.color\" [title]=\"todo.text\"></fd-info-label>\r\n }\r\n </div>\r\n </div>\r\n <div fd-panel-content>\r\n @if (customText) {\r\n <div>\r\n <fd-message-strip type=\"information\" [noIcon]=\"true\" [dismissible]=\"false\">\r\n {{ customText }}\r\n </fd-message-strip>\r\n </div>\r\n }\r\n <div [innerHtml]=\"content\" [disable]=\"!primary || attachments?.length\"></div>\r\n\r\n @if (attachments?.length) {\r\n <div class=\"file-viewer-attachments\">\r\n @for (file of attachments; track file;let index=$index) { @if (!file.IsDeleted) {\r\n <bsu-file-viewer-popover\r\n [file]=\"file\"\r\n [index]=\"index\"\r\n [files]=\"attachments\"\r\n [deviceSize]=\"(deviceSize$ | async)!!\"\r\n [canDownload]=\"true\"\r\n [disableRemove]=\"true\"\r\n ></bsu-file-viewer-popover>\r\n } } @if (attachments.length > 1) {\r\n <button\r\n fd-button\r\n [title]=\"'Download' | bbbTranslate\"\r\n [glyph]=\"'download'\"\r\n downloadFiles\r\n [files]=\"attachments\"\r\n ></button>\r\n }\r\n </div>\r\n }\r\n <div class=\"readAt\">\r\n @if (readDate) {\r\n <fd-object-identifier [description]=\"('ReadAt' | bbbTranslate) + ': (' + readDate + ')'\">\r\n </fd-object-identifier>\r\n }\r\n </div>\r\n </div>\r\n </fd-panel>\r\n </fd-card-content>\r\n <!-- <fd-card-footer>\r\n <button *fdCardFooterActionItem fd-button fdCompact>Assign to Project</button>\r\n </fd-card-footer> -->\r\n </fd-card>\r\n @for (detail of details; track detail) {\r\n <ng-contianer>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n showPayamClass;\r\n context: {\r\n $implicit: detail\r\n }\r\n \"\r\n >\r\n </ng-container>\r\n </ng-contianer>\r\n }\r\n</ng-template>\r\n", styles: [":host{display:block;position:relative;width:100%;height:100%}:host ::ng-deep .fd-panel__content{border-bottom:none;padding-bottom:5px}:host ::ng-deep .fd-card__subtitle{display:flex;align-items:center;column-gap:5px;justify-content:start;height:auto;max-height:initial}:host ::ng-deep .fd-card__subtitle h5{white-space:initial!important}:host ::ng-deep .fd-object-identifier__text{margin-top:0}:host ::ng-deep .fd-panel__header{border-bottom:none}:host ::ng-deep ol{list-style:auto;margin:unset;padding:revert}fd-card-header{cursor:default;border-bottom:none!important}fd-card-header:before{position:relative!important;display:none!important}fd-card-header:hover{background:var(--fdCard_Background_Color)!important}.readAt{padding-top:2rem}.readAt ::ng-deep p{color:var(--sapButton_BorderColor)!important}.payamIcons{display:flex;column-gap:5px}.payamIcons img{width:16px}@media (max-width: 410px){h5{max-width:210px}}@media (max-width: 1040px){.h5{max-width:600px}}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3$7.AvatarComponent, selector: "fd-avatar", inputs: ["class", "id", "ariaLabel", "ariaLabelledby", "label", "size", "font", "glyph", "zoomGlyph", "circle", "interactive", "transparent", "contain", "placeholder", "tile", "border", "colorAccent", "colorIndication", "random", "clickable", "valueState", "image", "alterIcon", "backupImage"], outputs: ["avatarClicked", "zoomGlyphClicked"] }, { kind: "component", type: i2$6.LinkComponent, selector: "[fdLink], [fd-link]", inputs: ["class", "emphasized", "disabled", "inverted", "subtle", "undecorated"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i7$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: i7$3.CardHeaderComponent, selector: "fd-card-header", inputs: ["ariaRoleDescription"] }, { kind: "component", type: i7$3.CardMainHeaderComponent, selector: "fd-card-main-header", inputs: ["interactive", "title"] }, { kind: "component", type: i7$3.CardContentComponent, selector: "fd-card-content" }, { kind: "directive", type: i7$3.CardTitleDirective, selector: "[fd-card-title]", inputs: ["id"] }, { kind: "directive", type: i7$3.CardSubtitleDirective, selector: "[fd-card-subtitle]" }, { kind: "component", type: i6$2.InfoLabelComponent, selector: "fd-info-label", inputs: ["class", "type", "glyph", "font", "color", "label", "title", "ariaLabel", "ariaLabelledBy"] }, { kind: "component", type: i7.ListComponent, selector: "[fd-list], [fdList]", inputs: ["dropdownMode", "multiInputMode", "mobileMode", "hasMessage", "noBorder", "navigationIndicator", "selection", "keyboardSupport", "byline", "subline", "theme", "unreadIndicator", "role", "settingsList", "settingsListFooter"], outputs: ["focusEscapeList"] }, { kind: "component", type: i7.ListItemComponent, selector: "[fdListItem] ,[fd-list-item]", inputs: ["selected", "noData", "action", "interactive", "growing", "counter", "active", "unread", "byline", "ariaRole", "id", "preventClick", "settingsListTpl"], outputs: ["keyDown"], exportAs: ["fdListItem"] }, { kind: "directive", type: i7.ListLinkDirective, selector: "[fd-list-link], [fdListLink]", inputs: ["navigationIndicator", "navigated", "focusable"] }, { kind: "component", type: i5.TitleComponent, selector: "[fd-title], [fdTitle]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "component", type: i2$8.MessageStripComponent, selector: "fd-message-strip", inputs: ["class", "dismissible", "ariaLabelledBy", "dismissBtnTitle", "noIcon", "type", "id", "ariaLabel", "width", "minWidth", "marginBottom", "indicationColor"], outputs: ["onDismiss"] }, { kind: "component", type: i10$1.ObjectIdentifierComponent, selector: "fd-object-identifier", inputs: ["description", "bold", "medium"] }, { kind: "component", type: i3$6.PanelComponent, selector: "fd-panel", inputs: ["class", "fixed", "id", "expandId", "expandAriaLabel", "expandAriaLabelledBy", "expanded", "transparent", "noRadius"], outputs: ["expandedChange"] }, { kind: "directive", type: i3$6.PanelContentDirective, selector: "[fd-panel-content]", inputs: ["height", "minHeight", "maxHeight", "ariaLabel", "ariaLabelledBy", "role", "noPadding", "transparent", "id"] }, { kind: "directive", type: i3$6.PanelTitleDirective, selector: "[fd-panel-title]", inputs: ["id"] }, { kind: "component", type: i7$1.PopoverControlComponent, selector: "fd-popover-control, [fdPopoverControl]" }, { kind: "component", type: i7$1.PopoverBodyComponent, selector: "fd-popover-body", inputs: ["minWidth", "maxWidth", "minHeight", "maxHeight"] }, { kind: "component", type: i7$1.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig", "preventSpaceKeyScroll"] }, { kind: "component", type: FileViewerPopoverComponent, selector: "bsu-file-viewer-popover", inputs: ["files", "file", "index", "deviceSize", "canDownload", "disableRemove", "fdType", "attachmentViewType"], outputs: ["remove"] }, { kind: "directive", type: DownloadFilesDirective, selector: "[downloadFiles]", inputs: ["files", "nozip"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
14514
+ ], usesInheritance: true, ngImport: i0, template: "@if (data) {\r\n<ng-container\r\n *ngTemplateOutlet=\"\r\n showPayamClass;\r\n context: {\r\n $implicit: data,\r\n primary: !data?.$details?.length,\r\n isFirst: true\r\n }\r\n \"\r\n>\r\n</ng-container>\r\n}\r\n<ng-template #showPayamClass let-data let-primary=\"primary\" let-isFirst=\"isFirst\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n namayeshPayam;\r\n context: {\r\n $implicit: data.payam.Subject,\r\n mailNoText: data.payam.MailNoText,\r\n fromText: data.payam.FromText,\r\n toText: data.$toText,\r\n importance: data.$importance,\r\n readDate: data.$readDate,\r\n sendDate: data.$sendDate,\r\n ccText: data.$ccText,\r\n bccText: data.$bccText,\r\n accessLevel: data.$accessLevel,\r\n content: data.$content,\r\n fromPhoto: data.$fromPhoto,\r\n details: data.$details,\r\n attachments: data.$attachments,\r\n todo: data.$todo,\r\n customText: data.payam.CustomText,\r\n primary: primary,\r\n isFirst: isFirst\r\n }\r\n \"\r\n >\r\n </ng-container>\r\n</ng-template>\r\n\r\n<ng-template\r\n #namayeshPayam\r\n let-subject\r\n let-mailNoText=\"mailNoText\"\r\n let-content=\"content\"\r\n let-fromText=\"fromText\"\r\n let-toText=\"toText\"\r\n let-importance=\"importance\"\r\n let-readDate=\"readDate\"\r\n let-sendDate=\"sendDate\"\r\n let-ccText=\"ccText\"\r\n let-bccText=\"bccText\"\r\n let-fromPhoto=\"fromPhoto\"\r\n let-details=\"details\"\r\n let-accessLevel=\"accessLevel\"\r\n let-primary=\"primary\"\r\n let-isFirst=\"isFirst\"\r\n let-attachments=\"attachments\"\r\n let-todo=\"todo\"\r\n let-customText=\"customText\"\r\n>\r\n <fd-card cardType=\"object\">\r\n <fd-card-header>\r\n <fd-card-main-header>\r\n <fd-avatar\r\n [image]=\"fromPhoto\"\r\n [circle]=\"true\"\r\n size=\"s\"\r\n [ariaLabel]=\"fromText\"\r\n [label]=\"fromText\"\r\n [title]=\"fromText\"\r\n ></fd-avatar>\r\n <div fd-card-title class=\"header-fields\">\r\n <h5 fd-title>\r\n <a fd-link [emphasized]=\"true\" aria-label=\"Sender\"> {{ fromText }}</a>\r\n </h5>\r\n <fd-object-identifier [description]=\"'(' + sendDate + ')'\"> </fd-object-identifier>\r\n </div>\r\n <div fd-card-subtitle>\r\n <h5 fd-title>\r\n {{ subject }} @if(mailNoText){ <span>({{ mailNoText }})</span>}\r\n </h5>\r\n <fd-popover>\r\n <fd-popover-control>\r\n <button fd-button fdType=\"transparent\" [fdMenu]=\"true\">\r\n {{ 'Recievers' | bbbTranslate }}\r\n </button>\r\n </fd-popover-control>\r\n <fd-popover-body>\r\n <ul fd-list>\r\n @for (rec of toText; track rec) {\r\n <li fd-list-item>\r\n <a fd-list-link>{{ rec }}</a>\r\n </li>\r\n }\r\n </ul>\r\n </fd-popover-body>\r\n </fd-popover>\r\n </div>\r\n </fd-card-main-header>\r\n </fd-card-header>\r\n <fd-card-content>\r\n <fd-panel [expanded]=\"isFirst\">\r\n <div fd-panel-title >\r\n <h5 fd-title>{{ '\u0645\u062D\u062A\u0648\u0627\u06CC \u067E\u06CC\u0627\u0645' | bbbTranslate }}</h5>\r\n <div class=\"payamIcons\">\r\n @if (importance.icon) {\r\n <fd-popover>\r\n <fd-popover-control>\r\n <img [src]=\"'/Customization/Mail/' + importance.icon\" />\r\n </fd-popover-control>\r\n <fd-popover-body>\r\n <ul fd-list>\r\n <li fd-list-item>{{ importance.text }}</li>\r\n </ul>\r\n </fd-popover-body>\r\n </fd-popover>\r\n } @if (accessLevel.icon) {\r\n <fd-popover>\r\n <fd-popover-control>\r\n <img [src]=\"'/Customization/Mail/' + accessLevel.icon\" />\r\n </fd-popover-control>\r\n <fd-popover-body>\r\n <ul fd-list>\r\n <li fd-list-item>{{ accessLevel.text }}</li>\r\n </ul>\r\n </fd-popover-body>\r\n </fd-popover>\r\n } @if (todo) {\r\n <fd-info-label [label]=\"todo.text\" [color]=\"todo.color\" [title]=\"todo.text\"></fd-info-label>\r\n }\r\n </div>\r\n </div>\r\n <div fd-panel-content>\r\n @if (customText) {\r\n <div>\r\n <fd-message-strip type=\"information\" [noIcon]=\"true\" [dismissible]=\"false\">\r\n {{ customText }}\r\n </fd-message-strip>\r\n </div>\r\n }\r\n <div [innerHtml]=\"content\" [disable]=\"!primary || attachments?.length\"></div>\r\n\r\n @if (attachments?.length) {\r\n <div class=\"file-viewer-attachments\">\r\n @for (file of attachments; track file;let index=$index) { @if (!file.IsDeleted) {\r\n <bsu-file-viewer-popover\r\n [file]=\"file\"\r\n [index]=\"index\"\r\n [files]=\"attachments\"\r\n [deviceSize]=\"(deviceSize$ | async)!!\"\r\n [canDownload]=\"true\"\r\n [disableRemove]=\"true\"\r\n ></bsu-file-viewer-popover>\r\n } } @if (attachments.length > 1) {\r\n <button\r\n fd-button\r\n [title]=\"'Download' | bbbTranslate\"\r\n [glyph]=\"'download'\"\r\n downloadFiles\r\n [files]=\"attachments\"\r\n ></button>\r\n }\r\n </div>\r\n }\r\n <div class=\"readAt\">\r\n @if (readDate) {\r\n <fd-object-identifier [description]=\"('ReadAt' | bbbTranslate) + ': (' + readDate + ')'\">\r\n </fd-object-identifier>\r\n }\r\n </div>\r\n </div>\r\n </fd-panel>\r\n </fd-card-content>\r\n <!-- <fd-card-footer>\r\n <button *fdCardFooterActionItem fd-button fdCompact>Assign to Project</button>\r\n </fd-card-footer> -->\r\n </fd-card>\r\n @for (detail of details; track detail) {\r\n <ng-contianer>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n showPayamClass;\r\n context: {\r\n $implicit: detail\r\n }\r\n \"\r\n >\r\n </ng-container>\r\n </ng-contianer>\r\n }\r\n</ng-template>\r\n", styles: [":host{display:block;position:relative;width:100%;height:100%}:host ::ng-deep .fd-panel__content{border-bottom:none;padding-bottom:5px}:host ::ng-deep .fd-card__subtitle{display:flex;align-items:center;column-gap:5px;justify-content:start;height:auto;max-height:initial}:host ::ng-deep .fd-card__subtitle h5{white-space:initial!important}:host ::ng-deep .fd-object-identifier__text{margin-top:0}:host ::ng-deep .fd-panel__header{border-bottom:none}:host ::ng-deep ol{list-style:auto;margin:unset;padding:revert}fd-card-header{cursor:default;border-bottom:none!important}fd-card-header:before{position:relative!important;display:none!important}fd-card-header:hover{background:var(--fdCard_Background_Color)!important}.readAt{padding-top:2rem}.readAt ::ng-deep p{color:var(--sapButton_BorderColor)!important}.payamIcons{display:flex;column-gap:5px}.payamIcons img{width:16px}@media (max-width: 410px){h5{max-width:210px}}@media (max-width: 1040px){.h5{max-width:600px}}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3$7.AvatarComponent, selector: "fd-avatar", inputs: ["class", "id", "ariaLabel", "ariaLabelledby", "label", "size", "font", "glyph", "zoomGlyph", "circle", "interactive", "transparent", "contain", "placeholder", "tile", "border", "colorAccent", "colorIndication", "random", "clickable", "valueState", "image", "alterIcon", "backupImage"], outputs: ["avatarClicked", "zoomGlyphClicked"] }, { kind: "component", type: i2$6.LinkComponent, selector: "[fdLink], [fd-link]", inputs: ["class", "emphasized", "disabled", "inverted", "subtle", "undecorated"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i7$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: i7$3.CardHeaderComponent, selector: "fd-card-header", inputs: ["ariaRoleDescription"] }, { kind: "component", type: i7$3.CardMainHeaderComponent, selector: "fd-card-main-header", inputs: ["interactive", "title"] }, { kind: "component", type: i7$3.CardContentComponent, selector: "fd-card-content" }, { kind: "directive", type: i7$3.CardTitleDirective, selector: "[fd-card-title]", inputs: ["id"] }, { kind: "directive", type: i7$3.CardSubtitleDirective, selector: "[fd-card-subtitle]" }, { kind: "component", type: i6$1.InfoLabelComponent, selector: "fd-info-label", inputs: ["class", "type", "glyph", "font", "color", "label", "title", "ariaLabel", "ariaLabelledBy"] }, { kind: "component", type: i7.ListComponent, selector: "[fd-list], [fdList]", inputs: ["dropdownMode", "multiInputMode", "mobileMode", "hasMessage", "noBorder", "navigationIndicator", "selection", "keyboardSupport", "byline", "subline", "theme", "unreadIndicator", "role", "settingsList", "settingsListFooter"], outputs: ["focusEscapeList"] }, { kind: "component", type: i7.ListItemComponent, selector: "[fdListItem] ,[fd-list-item]", inputs: ["selected", "noData", "action", "interactive", "growing", "counter", "active", "unread", "byline", "ariaRole", "id", "preventClick", "settingsListTpl"], outputs: ["keyDown"], exportAs: ["fdListItem"] }, { kind: "directive", type: i7.ListLinkDirective, selector: "[fd-list-link], [fdListLink]", inputs: ["navigationIndicator", "navigated", "focusable"] }, { kind: "component", type: i5.TitleComponent, selector: "[fd-title], [fdTitle]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "component", type: i2$8.MessageStripComponent, selector: "fd-message-strip", inputs: ["class", "dismissible", "ariaLabelledBy", "dismissBtnTitle", "noIcon", "type", "id", "ariaLabel", "width", "minWidth", "marginBottom", "indicationColor"], outputs: ["onDismiss"] }, { kind: "component", type: i10$1.ObjectIdentifierComponent, selector: "fd-object-identifier", inputs: ["description", "bold", "medium"] }, { kind: "component", type: i3$6.PanelComponent, selector: "fd-panel", inputs: ["class", "fixed", "id", "expandId", "expandAriaLabel", "expandAriaLabelledBy", "expanded", "transparent", "noRadius"], outputs: ["expandedChange"] }, { kind: "directive", type: i3$6.PanelContentDirective, selector: "[fd-panel-content]", inputs: ["height", "minHeight", "maxHeight", "ariaLabel", "ariaLabelledBy", "role", "noPadding", "transparent", "id"] }, { kind: "directive", type: i3$6.PanelTitleDirective, selector: "[fd-panel-title]", inputs: ["id"] }, { kind: "component", type: i7$1.PopoverControlComponent, selector: "fd-popover-control, [fdPopoverControl]" }, { kind: "component", type: i7$1.PopoverBodyComponent, selector: "fd-popover-body", inputs: ["minWidth", "maxWidth", "minHeight", "maxHeight"] }, { kind: "component", type: i7$1.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig", "preventSpaceKeyScroll"] }, { kind: "component", type: FileViewerPopoverComponent, selector: "bsu-file-viewer-popover", inputs: ["files", "file", "index", "deviceSize", "canDownload", "disableRemove", "fdType", "attachmentViewType"], outputs: ["remove"] }, { kind: "directive", type: DownloadFilesDirective, selector: "[downloadFiles]", inputs: ["files", "nozip"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
14459
14515
  }
14460
14516
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BarsaPishnamayeshPayamComponent, decorators: [{
14461
14517
  type: Component,
@@ -14584,7 +14640,7 @@ class BarsaTextEllipsisComponent extends BaseComponent {
14584
14640
  this._cdr.detectChanges();
14585
14641
  }
14586
14642
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BarsaTextEllipsisComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
14587
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: BarsaTextEllipsisComponent, isStandalone: false, selector: "bsu-barsa-text-ellipsis,[textEllipsis]", inputs: { text: "text", fontSize: "fontSize", deviceSize: "deviceSize" }, usesInheritance: true, ngImport: i0, template: "<div (ellapsised)=\"onEllapsised($event)\" ellapsisText [ellapsisText]=\"text | bbbTranslate\">\r\n {{ text | bbbTranslate }}\r\n</div>\r\n@if (ellipsised) {\r\n<fd-popover>\r\n <fd-popover-control>\r\n <button style=\"position: absolute; left: 0\" fd-button glyph=\"overflow\" fdType=\"transparent\" fdCompact></button>\r\n </fd-popover-control>\r\n <fd-popover-body style=\"max-width: 320px\">\r\n <fd-text [text]=\"text | bbbTranslate\" [whitespaces]=\"true\"></fd-text>\r\n </fd-popover-body>\r\n</fd-popover>\r\n}\r\n", styles: [":host{display:block;position:relative}\n"], dependencies: [{ kind: "directive", type: i2.EllapsisTextDirective, selector: "[ellapsisText]", inputs: ["ellapsisText", "fontSize", "disableEllapsis"], outputs: ["ellapsised"] }, { kind: "directive", type: i4$3.ContentDensityDirective, selector: "[fdContentDensity]:not([fdCompact]):not([fdCondensed]):not([fdCozy]), [fdCompact]:not([fdContentDensity]):not([fdCondensed]):not([fdCozy]), [fdCondensed]:not([fdContentDensity]):not([fdCompact]):not([fdCozy]), [fdCozy]:not([fdContentDensity]):not([fdCompact]):not([fdCondensed])", inputs: ["fdContentDensity", "fdCompact", "fdCondensed", "fdCozy"], exportAs: ["fdContentDensity"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i7$1.PopoverControlComponent, selector: "fd-popover-control, [fdPopoverControl]" }, { kind: "component", type: i7$1.PopoverBodyComponent, selector: "fd-popover-body", inputs: ["minWidth", "maxWidth", "minHeight", "maxHeight"] }, { kind: "component", type: i7$1.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig", "preventSpaceKeyScroll"] }, { kind: "component", type: i5$2.TextComponent, selector: "fd-text", inputs: ["text", "maxLines", "whitespaces", "hyphenation", "expandable", "isCollapsed"], outputs: ["isCollapsedChange"] }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
14643
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: BarsaTextEllipsisComponent, isStandalone: false, selector: "bsu-barsa-text-ellipsis,[textEllipsis]", inputs: { text: "text", fontSize: "fontSize", deviceSize: "deviceSize" }, usesInheritance: true, ngImport: i0, template: "<div (ellapsised)=\"onEllapsised($event)\" ellapsisText [ellapsisText]=\"text | bbbTranslate\">\r\n {{ text | bbbTranslate }}\r\n</div>\r\n@if (ellipsised) {\r\n<fd-popover>\r\n <fd-popover-control>\r\n <button style=\"position: absolute; left: 0\" fd-button glyph=\"overflow\" fdType=\"transparent\" fdCompact></button>\r\n </fd-popover-control>\r\n <fd-popover-body style=\"max-width: 320px\">\r\n <fd-text [text]=\"text | bbbTranslate\" [whitespaces]=\"true\"></fd-text>\r\n </fd-popover-body>\r\n</fd-popover>\r\n}\r\n", styles: [":host{display:block;position:relative}\n"], dependencies: [{ kind: "directive", type: i2.EllapsisTextDirective, selector: "[ellapsisText]", inputs: ["ellapsisText", "fontSize", "disableEllapsis"], outputs: ["ellapsised"] }, { kind: "directive", type: i4$3.ContentDensityDirective, selector: "[fdContentDensity]:not([fdCompact]):not([fdCondensed]):not([fdCozy]), [fdCompact]:not([fdContentDensity]):not([fdCondensed]):not([fdCozy]), [fdCondensed]:not([fdContentDensity]):not([fdCompact]):not([fdCozy]), [fdCozy]:not([fdContentDensity]):not([fdCompact]):not([fdCondensed])", inputs: ["fdContentDensity", "fdCompact", "fdCondensed", "fdCozy"], exportAs: ["fdContentDensity"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i7$1.PopoverControlComponent, selector: "fd-popover-control, [fdPopoverControl]" }, { kind: "component", type: i7$1.PopoverBodyComponent, selector: "fd-popover-body", inputs: ["minWidth", "maxWidth", "minHeight", "maxHeight"] }, { kind: "component", type: i7$1.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig", "preventSpaceKeyScroll"] }, { kind: "component", type: i5$3.TextComponent, selector: "fd-text", inputs: ["text", "maxLines", "whitespaces", "hyphenation", "expandable", "isCollapsed"], outputs: ["isCollapsedChange"] }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
14588
14644
  }
14589
14645
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BarsaTextEllipsisComponent, decorators: [{
14590
14646
  type: Component,
@@ -14602,7 +14658,7 @@ class BarsaListFileLinearGmailComponent extends UiFileLinearListBoxComponent {
14602
14658
  this.retry(fileAttachment);
14603
14659
  }
14604
14660
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BarsaListFileLinearGmailComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
14605
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: BarsaListFileLinearGmailComponent, isStandalone: false, selector: "bsu-barsa-list-file-linear-gmail", providers: [UploadService], usesInheritance: true, ngImport: i0, template: "<ul fd-list>\r\n @for (item of value; track item) { @if (!item.IsDeleted) {\r\n <li fd-list-item style=\"background-color: #f5f5f5; margin: 0.5rem 0 0 30%\">\r\n @if (item.inEdit) {\r\n <input\r\n style=\"width: 90%\"\r\n fd-form-control\r\n [value]=\"item.fileName\"\r\n (click)=\"$event.preventDefault(); $event.stopPropagation()\"\r\n />\r\n } @if (!item.inEdit) {\r\n <span fd-list-title>\r\n {{ item.fileName }}\r\n </span>\r\n }\r\n <span fd-list-secondary>\r\n <button\r\n ariaLabel=\"Edit Or Save\"\r\n fdType=\"transparent\"\r\n class=\"fd-button--compact\"\r\n fd-button\r\n fdCompact\r\n [glyph]=\"item.inEdit ? 'save' : 'edit'\"\r\n (click)=\"item.inEdit = !item.inEdit\"\r\n ></button>\r\n @if (!item.inEdit) {\r\n <button ariaLabel=\"Remove\" fdType=\"transparent\" title=\"Remove\" fd-button glyph=\"delete\"></button>\r\n }\r\n </span>\r\n </li>\r\n } }\r\n</ul>\r\n<ul fd-list [byline]=\"true\">\r\n @if (fileCount$ | async; as fileCount) { @if (fileCount === 0) {\r\n <li fd-list-item>\r\n <div fd-list-content style=\"text-align: center\">\r\n <span>{{ 'NoFiles' | bbbTranslate }}</span>\r\n </div>\r\n </li>\r\n } } @for (file of value; track file) { @if (valueExtra$ | async; as valueExtra) { @if (!file.IsDeleted) {\r\n <li fd-list-item>\r\n <span fd-list-thumbnail>\r\n @if (valueExtra[file.Id].IsIcon) {\r\n <fd-icon [glyph]=\"valueExtra[file.Id].FileUrl\"></fd-icon>\r\n } @else {\r\n <fd-avatar size=\"m\" [image]=\"valueExtra[file.Id].FileUrl || ''\"></fd-avatar>\r\n }\r\n </span>\r\n <!-- for byline, fd-list-content is mandatory -->\r\n <div fd-list-content>\r\n <div fd-list-title>{{ file.FileName }}</div>\r\n <div fd-list-byline [twoCol]=\"true\">\r\n <div fd-list-byline-left></div>\r\n <div fd-list-byline-right style=\"display: flex; justify-content: flex-end\">\r\n <fd-toolbar [fdType]=\"'transparent'\" [clearBorder]=\"true\">\r\n @if (file.IsNew) {\r\n <span\r\n fd-toolbar-item\r\n fd-object-status\r\n [status]=\"file.Id | uploadFileStatus: valueExtra\"\r\n [label]=\"valueExtra[file.Id]?.UploadState || ''\"\r\n [title]=\"valueExtra[file.Id]?.UploadState\"\r\n [aria-label]=\"'File Upload Status Is ' + valueExtra[file.Id]?.UploadState\"\r\n ></span>\r\n @if (valueExtra[file.Id].UploadState === 'Uploading') {\r\n <fd-slider\r\n [contentDensity]=\"(contentDensity$ | async)!!\"\r\n [(ngModel)]=\"valueExtra[file.Id].Progress\"\r\n [name]=\"'filerLinear_' + id\"\r\n fd-toolbar-item\r\n [id]=\"id\"\r\n [min]=\"0\"\r\n [max]=\"100\"\r\n [step]=\"1\"\r\n >\r\n </fd-slider>\r\n } }\r\n </fd-toolbar>\r\n </div>\r\n </div>\r\n </div>\r\n @if ((disableOrReadonly$ | async) === false && valueExtra[file.Id].UploadState !== 'Uploading') {\r\n <button fd-button fdType=\"transparent\" glyph=\"decline\" (click)=\"onFileDeleted(file.Id)\"></button>\r\n } @if (valueExtra[file.Id].UploadState === 'Uploading') {\r\n <button fd-button [fdType]=\"'transparent'\" [glyph]=\"'stop'\" (click)=\"onTerminate(file)\"></button>\r\n } @if (valueExtra[file.Id].UploadState === 'Error') {\r\n <button fd-button [fdType]=\"'transparent'\" [glyph]=\"'refresh'\" (click)=\"onRetry(file)\"></button>\r\n }\r\n </li>\r\n } } }\r\n</ul>\r\n", styles: [":host{display:block;width:100%;height:100%}:host ::ng-deep .fd-slider__handle{display:none}:host ::ng-deep .fd-file-uploader input{display:none}\n"], dependencies: [{ kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3$7.AvatarComponent, selector: "fd-avatar", inputs: ["class", "id", "ariaLabel", "ariaLabelledby", "label", "size", "font", "glyph", "zoomGlyph", "circle", "interactive", "transparent", "contain", "placeholder", "tile", "border", "colorAccent", "colorIndication", "random", "clickable", "valueState", "image", "alterIcon", "backupImage"], outputs: ["avatarClicked", "zoomGlyphClicked"] }, { kind: "directive", type: i4$3.ContentDensityDirective, selector: "[fdContentDensity]:not([fdCompact]):not([fdCondensed]):not([fdCozy]), [fdCompact]:not([fdContentDensity]):not([fdCondensed]):not([fdCozy]), [fdCondensed]:not([fdContentDensity]):not([fdCompact]):not([fdCozy]), [fdCozy]:not([fdContentDensity]):not([fdCompact]):not([fdCondensed])", inputs: ["fdContentDensity", "fdCompact", "fdCondensed", "fdCozy"], exportAs: ["fdContentDensity"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i2$1.FormControlComponent, selector: "input[fd-form-control], textarea[fd-form-control]", inputs: ["state", "type", "class", "ariaLabel", "ariaLabelledBy"] }, { kind: "component", type: i3.IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "color", "background", "class", "ariaLabel", "ariaHidden"] }, { kind: "component", type: i7.ListComponent, selector: "[fd-list], [fdList]", inputs: ["dropdownMode", "multiInputMode", "mobileMode", "hasMessage", "noBorder", "navigationIndicator", "selection", "keyboardSupport", "byline", "subline", "theme", "unreadIndicator", "role", "settingsList", "settingsListFooter"], outputs: ["focusEscapeList"] }, { kind: "component", type: i7.ListItemComponent, selector: "[fdListItem] ,[fd-list-item]", inputs: ["selected", "noData", "action", "interactive", "growing", "counter", "active", "unread", "byline", "ariaRole", "id", "preventClick", "settingsListTpl"], outputs: ["keyDown"], exportAs: ["fdListItem"] }, { kind: "directive", type: i7.ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap", "truncate"] }, { kind: "directive", type: i7.ListSecondaryDirective, selector: "[fd-list-secondary], [fdListSecondary]", inputs: ["type"] }, { kind: "directive", type: i7.ListBylineDirective, selector: "[fdListByline], [fd-list-byline]", inputs: ["twoCol", "wrap"] }, { kind: "directive", type: i7.ListBylineLeftDirective, selector: "[fdListBylineLeft], [fd-list-byline-left]", inputs: ["wrap"] }, { kind: "directive", type: i7.ListBylineRightDirective, selector: "[fdListBylineRight], [fd-list-byline-right]", inputs: ["status", "wrap"] }, { kind: "directive", type: i7.ListContentDirective, selector: "[fdListContent], [fd-list-content]", inputs: ["twoCol"] }, { kind: "directive", type: i7.ListThumbnailDirective, selector: "[fdListThumbnail], [fd-list-thumbnail]" }, { kind: "component", type: i8$1.ObjectStatusComponent, selector: "[fd-object-status]", inputs: ["class", "status", "glyph", "glyphFont", "label", "glyphAriaLabel", "indicationColor", "clickable", "inverted", "large", "secondaryIndication", "textTemplate"] }, { 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: i11.SliderComponent, selector: "fd-slider", inputs: ["id", "class", "ariaLabelledBy", "ariaLabel", "min", "max", "step", "jump", "tickmarksBetweenLabels", "mode", "showTicks", "showTicksLabels", "customValues", "tooltipMode", "hideProgressBar", "disabled", "vertical", "value"] }, { kind: "directive", type: ContentDensityDirective, selector: "[contentDensity]" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: UploadFileStatusPipe, name: "uploadFileStatus" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
14661
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: BarsaListFileLinearGmailComponent, isStandalone: false, selector: "bsu-barsa-list-file-linear-gmail", providers: [UploadService], usesInheritance: true, ngImport: i0, template: "<ul fd-list>\r\n @for (item of value; track item) { @if (!item.IsDeleted) {\r\n <li fd-list-item style=\"background-color: #f5f5f5; margin: 0.5rem 0 0 30%\">\r\n @if (item.inEdit) {\r\n <input\r\n style=\"width: 90%\"\r\n fd-form-control\r\n [value]=\"item.fileName\"\r\n (click)=\"$event.preventDefault(); $event.stopPropagation()\"\r\n />\r\n } @if (!item.inEdit) {\r\n <span fd-list-title>\r\n {{ item.fileName }}\r\n </span>\r\n }\r\n <span fd-list-secondary>\r\n <button\r\n ariaLabel=\"Edit Or Save\"\r\n fdType=\"transparent\"\r\n class=\"fd-button--compact\"\r\n fd-button\r\n fdCompact\r\n [glyph]=\"item.inEdit ? 'save' : 'edit'\"\r\n (click)=\"item.inEdit = !item.inEdit\"\r\n ></button>\r\n @if (!item.inEdit) {\r\n <button ariaLabel=\"Remove\" fdType=\"transparent\" title=\"Remove\" fd-button glyph=\"delete\"></button>\r\n }\r\n </span>\r\n </li>\r\n } }\r\n</ul>\r\n<ul fd-list [byline]=\"true\">\r\n @if (fileCount$ | async; as fileCount) { @if (fileCount === 0) {\r\n <li fd-list-item>\r\n <div fd-list-content style=\"text-align: center\">\r\n <span>{{ 'NoFiles' | bbbTranslate }}</span>\r\n </div>\r\n </li>\r\n } } @for (file of value; track file) { @if (valueExtra$ | async; as valueExtra) { @if (!file.IsDeleted) {\r\n <li fd-list-item>\r\n <span fd-list-thumbnail>\r\n @if (valueExtra[file.Id].IsIcon) {\r\n <fd-icon [glyph]=\"valueExtra[file.Id].FileUrl\"></fd-icon>\r\n } @else {\r\n <fd-avatar size=\"m\" [image]=\"valueExtra[file.Id].FileUrl || ''\"></fd-avatar>\r\n }\r\n </span>\r\n <!-- for byline, fd-list-content is mandatory -->\r\n <div fd-list-content>\r\n <div fd-list-title>{{ file.FileName }}</div>\r\n <div fd-list-byline [twoCol]=\"true\">\r\n <div fd-list-byline-left></div>\r\n <div fd-list-byline-right style=\"display: flex; justify-content: flex-end\">\r\n <fd-toolbar [fdType]=\"'transparent'\" [clearBorder]=\"true\">\r\n @if (file.IsNew) {\r\n <span\r\n fd-toolbar-item\r\n fd-object-status\r\n [status]=\"file.Id | uploadFileStatus: valueExtra\"\r\n [label]=\"valueExtra[file.Id]?.UploadState || ''\"\r\n [title]=\"valueExtra[file.Id]?.UploadState\"\r\n [aria-label]=\"'File Upload Status Is ' + valueExtra[file.Id]?.UploadState\"\r\n ></span>\r\n @if (valueExtra[file.Id].UploadState === 'Uploading') {\r\n <fd-slider\r\n [contentDensity]=\"(contentDensity$ | async)!!\"\r\n [(ngModel)]=\"valueExtra[file.Id].Progress\"\r\n [name]=\"'filerLinear_' + id\"\r\n fd-toolbar-item\r\n [id]=\"id\"\r\n [min]=\"0\"\r\n [max]=\"100\"\r\n [step]=\"1\"\r\n >\r\n </fd-slider>\r\n } }\r\n </fd-toolbar>\r\n </div>\r\n </div>\r\n </div>\r\n @if ((disableOrReadonly$ | async) === false && valueExtra[file.Id].UploadState !== 'Uploading') {\r\n <button fd-button fdType=\"transparent\" glyph=\"decline\" (click)=\"onFileDeleted(file.Id)\"></button>\r\n } @if (valueExtra[file.Id].UploadState === 'Uploading') {\r\n <button fd-button [fdType]=\"'transparent'\" [glyph]=\"'stop'\" (click)=\"onTerminate(file)\"></button>\r\n } @if (valueExtra[file.Id].UploadState === 'Error') {\r\n <button fd-button [fdType]=\"'transparent'\" [glyph]=\"'refresh'\" (click)=\"onRetry(file)\"></button>\r\n }\r\n </li>\r\n } } }\r\n</ul>\r\n", styles: [":host{display:block;width:100%;height:100%}:host ::ng-deep .fd-slider__handle{display:none}:host ::ng-deep .fd-file-uploader input{display:none}\n"], dependencies: [{ kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3$7.AvatarComponent, selector: "fd-avatar", inputs: ["class", "id", "ariaLabel", "ariaLabelledby", "label", "size", "font", "glyph", "zoomGlyph", "circle", "interactive", "transparent", "contain", "placeholder", "tile", "border", "colorAccent", "colorIndication", "random", "clickable", "valueState", "image", "alterIcon", "backupImage"], outputs: ["avatarClicked", "zoomGlyphClicked"] }, { kind: "directive", type: i4$3.ContentDensityDirective, selector: "[fdContentDensity]:not([fdCompact]):not([fdCondensed]):not([fdCozy]), [fdCompact]:not([fdContentDensity]):not([fdCondensed]):not([fdCozy]), [fdCondensed]:not([fdContentDensity]):not([fdCompact]):not([fdCozy]), [fdCozy]:not([fdContentDensity]):not([fdCompact]):not([fdCondensed])", inputs: ["fdContentDensity", "fdCompact", "fdCondensed", "fdCozy"], exportAs: ["fdContentDensity"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i2$1.FormControlComponent, selector: "input[fd-form-control], textarea[fd-form-control]", inputs: ["state", "type", "class", "ariaLabel", "ariaLabelledBy"] }, { kind: "component", type: i3.IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "color", "background", "class", "ariaLabel", "ariaHidden"] }, { kind: "component", type: i7.ListComponent, selector: "[fd-list], [fdList]", inputs: ["dropdownMode", "multiInputMode", "mobileMode", "hasMessage", "noBorder", "navigationIndicator", "selection", "keyboardSupport", "byline", "subline", "theme", "unreadIndicator", "role", "settingsList", "settingsListFooter"], outputs: ["focusEscapeList"] }, { kind: "component", type: i7.ListItemComponent, selector: "[fdListItem] ,[fd-list-item]", inputs: ["selected", "noData", "action", "interactive", "growing", "counter", "active", "unread", "byline", "ariaRole", "id", "preventClick", "settingsListTpl"], outputs: ["keyDown"], exportAs: ["fdListItem"] }, { kind: "directive", type: i7.ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap", "truncate"] }, { kind: "directive", type: i7.ListSecondaryDirective, selector: "[fd-list-secondary], [fdListSecondary]", inputs: ["type"] }, { kind: "directive", type: i7.ListBylineDirective, selector: "[fdListByline], [fd-list-byline]", inputs: ["twoCol", "wrap"] }, { kind: "directive", type: i7.ListBylineLeftDirective, selector: "[fdListBylineLeft], [fd-list-byline-left]", inputs: ["wrap"] }, { kind: "directive", type: i7.ListBylineRightDirective, selector: "[fdListBylineRight], [fd-list-byline-right]", inputs: ["status", "wrap"] }, { kind: "directive", type: i7.ListContentDirective, selector: "[fdListContent], [fd-list-content]", inputs: ["twoCol"] }, { kind: "directive", type: i7.ListThumbnailDirective, selector: "[fdListThumbnail], [fd-list-thumbnail]" }, { kind: "component", type: i8$1.ObjectStatusComponent, selector: "[fd-object-status]", inputs: ["class", "status", "glyph", "glyphFont", "label", "glyphAriaLabel", "indicationColor", "clickable", "inverted", "large", "secondaryIndication", "textTemplate"] }, { kind: "component", type: i7$2.ToolbarComponent, selector: "fd-toolbar", inputs: ["titleId", "class", "shouldOverflow", "fdType", "title", "active", "clearBorder", "forceOverflow", "tabindex", "headingLevel", "ariaLabel", "ariaLabelledBy"] }, { kind: "directive", type: i7$2.ToolbarItemDirective, selector: "[fd-toolbar-item], [fdOverflowGroup], [fdOverflowPriority]", inputs: ["fdOverflowPriority", "fdOverflowGroup"] }, { kind: "component", type: i11.SliderComponent, selector: "fd-slider", inputs: ["id", "class", "ariaLabelledBy", "ariaLabel", "min", "max", "step", "jump", "tickmarksBetweenLabels", "mode", "showTicks", "showTicksLabels", "customValues", "tooltipMode", "hideProgressBar", "disabled", "vertical", "value"] }, { kind: "directive", type: ContentDensityDirective, selector: "[contentDensity]" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: UploadFileStatusPipe, name: "uploadFileStatus" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
14606
14662
  }
14607
14663
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BarsaListFileLinearGmailComponent, decorators: [{
14608
14664
  type: Component,
@@ -14688,7 +14744,7 @@ class BarsaEnumMenuButtonComponent extends FieldBaseComponent {
14688
14744
  this.fireContextEvent('select', this.value);
14689
14745
  }
14690
14746
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BarsaEnumMenuButtonComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
14691
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: BarsaEnumMenuButtonComponent, isStandalone: false, selector: "bsu-barsa-enum-menu-button", usesInheritance: true, ngImport: i0, template: "<button\r\n fd-button\r\n [label]=\"valueCaption ? valueCaption : Setting.ControlFieldCaptionTranslated\"\r\n [title]=\"Setting.ControlFieldCaptionTranslated\"\r\n [fdType]=\"valueStatus\"\r\n [fdMenu]=\"(disableOrReadonly$ | async) === true ? false : true\"\r\n [fdMenuTrigger]=\"(disableOrReadonly$ | async) === true ? undefined : menu\"\r\n [class.placeholder-custom]=\"!valueItem || valueItem?.IsEmpty\"\r\n></button>\r\n<fd-menu #menu>\r\n @for (item of context.store.data[context.store.root]; track item) {\r\n <li fd-menu-item>\r\n <a fd-menu-interactive (click)=\"onValueChange(menu, item.id)\">\r\n <span fd-menu-title [class.list-empty-item]=\"item.IsEmpty\">{{ item.txt }}</span>\r\n </a>\r\n </li>\r\n }\r\n</fd-menu>\r\n", styles: [""], dependencies: [{ kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i6.MenuComponent, selector: "fd-menu", inputs: ["mobile", "disabled", "focusTrapped", "focusAutoCapture", "openOnHoverTime", "mobileConfig", "ariaLabel", "ariaLabelledby", "id"], outputs: ["activePath"] }, { kind: "component", type: i6.MenuItemComponent, selector: "li[fd-menu-item]", inputs: ["disabled", "itemId", "submenu", "parentSubmenu", "hasSeparator"], outputs: ["onSelect"], exportAs: ["fd-menu-item"] }, { kind: "component", type: i6.MenuInteractiveComponent, selector: "[fd-menu-interactive]" }, { kind: "directive", type: i6.MenuTitleDirective, selector: "[fd-menu-title]" }, { kind: "directive", type: i6.MenuTriggerDirective, selector: "[fdMenuTrigger]", inputs: ["fdMenuTrigger"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
14747
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: BarsaEnumMenuButtonComponent, isStandalone: false, selector: "bsu-barsa-enum-menu-button", usesInheritance: true, ngImport: i0, template: "<button\r\n fd-button\r\n [label]=\"valueCaption ? valueCaption : Setting.ControlFieldCaptionTranslated\"\r\n [title]=\"Setting.ControlFieldCaptionTranslated\"\r\n [fdType]=\"valueStatus\"\r\n [fdMenu]=\"(disableOrReadonly$ | async) === true ? false : true\"\r\n [fdMenuTrigger]=\"(disableOrReadonly$ | async) === true ? undefined : menu\"\r\n [class.placeholder-custom]=\"!valueItem || valueItem?.IsEmpty\"\r\n></button>\r\n<fd-menu #menu>\r\n @for (item of context.store.data[context.store.root]; track item) {\r\n <li fd-menu-item>\r\n <a fd-menu-interactive (click)=\"onValueChange(menu, item.id)\">\r\n <span fd-menu-title [class.list-empty-item]=\"item.IsEmpty\">{{ item.txt }}</span>\r\n </a>\r\n </li>\r\n }\r\n</fd-menu>\r\n", styles: [""], dependencies: [{ kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i5$2.MenuComponent, selector: "fd-menu", inputs: ["mobile", "disabled", "focusTrapped", "focusAutoCapture", "openOnHoverTime", "mobileConfig", "ariaLabel", "ariaLabelledby", "id"], outputs: ["activePath"] }, { kind: "component", type: i5$2.MenuItemComponent, selector: "li[fd-menu-item]", inputs: ["disabled", "itemId", "submenu", "parentSubmenu", "hasSeparator"], outputs: ["onSelect"], exportAs: ["fd-menu-item"] }, { kind: "component", type: i5$2.MenuInteractiveComponent, selector: "[fd-menu-interactive]" }, { kind: "directive", type: i5$2.MenuTitleDirective, selector: "[fd-menu-title]" }, { kind: "directive", type: i5$2.MenuTriggerDirective, selector: "[fdMenuTrigger]", inputs: ["fdMenuTrigger"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
14692
14748
  }
14693
14749
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BarsaEnumMenuButtonComponent, decorators: [{
14694
14750
  type: Component,
@@ -14804,7 +14860,7 @@ class BarsaFormSideContentComponent extends FormPropsBaseComponent {
14804
14860
  return isSmallDevice;
14805
14861
  }
14806
14862
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BarsaFormSideContentComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
14807
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: BarsaFormSideContentComponent, isStandalone: false, selector: "bsu-barsa-form-side-content", host: { properties: { "class.smallDevice": "this._isSmallDevice", "style.background": "this._background" } }, providers: [LayoutService], usesInheritance: true, ngImport: i0, template: "@if(isMobile) {\r\n<button\r\n fd-shellbar-side-nav\r\n fd-button\r\n fdType=\"transparent\"\r\n glyph=\"menu2\"\r\n style=\"width: 2.75rem\"\r\n (click)=\"$event.stopPropagation(); openSidebar()\"\r\n></button>\r\n\r\n<div\r\n class=\"sidemenu-h tw-fixed tw-bg-white tw-transition-all tw-z-[1001] tw-shadow-2xl tw-overflow-auto\"\r\n [ngClass]=\"{ 'tw-w-4/5': isMobile }\"\r\n [class.-tw-right-full]=\"isMobile\"\r\n [class.tw-w-96]=\"!isMobile\"\r\n [class.-tw-right-96]=\"!isMobile\"\r\n fillEmptySpace\r\n [class.!tw-right-0]=\"isOpenQuickAccess$ | async\"\r\n (click)=\"$event.stopPropagation()\"\r\n #sidebar\r\n>\r\n <button\r\n fd-shellbar-side-nav\r\n fd-button\r\n fdType=\"transparent\"\r\n glyph=\"decline\"\r\n (click)=\"$event.stopPropagation(); closeSidebar()\"\r\n routeFormChange\r\n [bodyClick]=\"true\"\r\n (stateChanged)=\"afterViewInit && closeSidebar()\"\r\n ></button>\r\n @if (sideContentLayout ) {\r\n <bsu-ly-layout-panel\r\n style=\"width: 100%\"\r\n [config]=\"sideContentLayout\"\r\n [hideTitle]=\"parameters?.HideSideContentTitle === true\"\r\n class=\"xxx\"\r\n ></bsu-ly-layout-panel\r\n >}\r\n</div>\r\n} @if (sideContentLayout && mainContentLayout) {\r\n\r\n<fd-dynamic-side-content\r\n [class.rtl]=\"rtl\"\r\n fillEmptySpace\r\n [decrement]=\"'40px'\"\r\n [disable]=\"autoHeight\"\r\n [setMinHeight]=\"true\"\r\n [size]=\"isMobile ? 'sm' : smallDevice ? 'md' : 'xl'\"\r\n>\r\n <fd-dynamic-side-content-side>\r\n <bsu-ly-layout-panel\r\n fillEmptySpace\r\n [disable]=\"!parameters?.FixSideContentHeight\"\r\n [decrement]=\"'40px'\"\r\n [style.overflow-y]=\"parameters?.FixSideContentHeight === true ? 'auto' : null\"\r\n [config]=\"sideContentLayout\"\r\n [hideTitle]=\"parameters?.HideSideContentTitle === true\"\r\n >\r\n </bsu-ly-layout-panel>\r\n </fd-dynamic-side-content-side>\r\n <fd-dynamic-side-content-main\r\n [style.width]=\"isMobile ? null : parameters?.MainContentWidth\"\r\n fillEmptySpace\r\n [decrement]=\"'40px'\"\r\n [style.overflow-y]=\"'auto'\"\r\n >\r\n <bsu-ly-layout-panel [config]=\"mainContentLayout\" [hideTitle]=\"parameters?.HideMainContentTitle === true\">\r\n </bsu-ly-layout-panel>\r\n </fd-dynamic-side-content-main>\r\n</fd-dynamic-side-content>\r\n} @else {\r\n<fd-message-strip type=\"error\" [dismissible]=\"false\"\r\n >side content and main content does not defined correctly.</fd-message-strip\r\n>\r\n}\r\n<ng-template #error>\r\n <fd-message-strip type=\"error\" [dismissible]=\"false\"\r\n >side content and main content does not defined correctly.</fd-message-strip\r\n >\r\n</ng-template>\r\n", styles: [":host{width:100%;height:100%;display:flex;position:relative;flex-direction:column}fd-dynamic-side-content-main>bsu-ly-layout-panel,fd-dynamic-side-content-side>bsu-ly-layout-panel{border:none;padding:0;margin:0}fd-dynamic-side-content-main>bsu-ly-layout-panel ::ng-deep>fd-panel>.fd-panel>.fd-panel__content,fd-dynamic-side-content-side>bsu-ly-layout-panel ::ng-deep>fd-panel>.fd-panel>.fd-panel__content{border:none;padding:0;display:block}:host ::ng-deep bnrc-field-ui{padding:0!important}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.FillEmptySpaceDirective, selector: "[fillEmptySpace]", inputs: ["containerDom", "decrement", "disable", "height", "dontUseTopBound", "setMinHeight", "setMaxHeight"], outputs: ["heightChanged"], exportAs: ["fillEmptySpace"] }, { kind: "directive", type: i2.BodyClickDirective, selector: "[bodyClick]", inputs: ["disableBodyClick"] }, { kind: "directive", type: i2.RouteFormChangeDirective, selector: "[routeFormChange]", inputs: ["handleBodyClick"], outputs: ["stateChanged"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i9.DynamicSideContentComponent, selector: "fd-dynamic-side-content", inputs: ["position", "size", "id"] }, { kind: "component", type: i9.DynamicSideContentSideComponent, selector: "fd-dynamic-side-content-side", inputs: ["id"] }, { kind: "component", type: i9.DynamicSideContentMainComponent, selector: "fd-dynamic-side-content-main", inputs: ["id"] }, { kind: "component", type: i2$8.MessageStripComponent, selector: "fd-message-strip", inputs: ["class", "dismissible", "ariaLabelledBy", "dismissBtnTitle", "noIcon", "type", "id", "ariaLabel", "width", "minWidth", "marginBottom", "indicationColor"], outputs: ["onDismiss"] }, { kind: "directive", type: i6$3.ShellbarSidenavDirective, selector: "[fdShellbarSidenav], [fd-shellbar-side-nav]" }, { kind: "component", type: LyLayoutPanelComponent, selector: "bsu-ly-layout-panel", inputs: ["renderItems", "isRoot", "hideTitle", "notPanelMode"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
14863
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: BarsaFormSideContentComponent, isStandalone: false, selector: "bsu-barsa-form-side-content", host: { properties: { "class.smallDevice": "this._isSmallDevice", "style.background": "this._background" } }, providers: [LayoutService], usesInheritance: true, ngImport: i0, template: "@if(isMobile) {\r\n<button\r\n fd-shellbar-side-nav\r\n fd-button\r\n fdType=\"transparent\"\r\n glyph=\"menu2\"\r\n style=\"width: 2.75rem\"\r\n (click)=\"$event.stopPropagation(); openSidebar()\"\r\n></button>\r\n\r\n<div\r\n class=\"sidemenu-h tw-fixed tw-bg-white tw-transition-all tw-z-[1001] tw-shadow-2xl tw-overflow-auto\"\r\n [ngClass]=\"{ 'tw-w-4/5': isMobile }\"\r\n [class.-tw-right-full]=\"isMobile\"\r\n [class.tw-w-96]=\"!isMobile\"\r\n [class.-tw-right-96]=\"!isMobile\"\r\n fillEmptySpace\r\n [class.!tw-right-0]=\"isOpenQuickAccess$ | async\"\r\n (click)=\"$event.stopPropagation()\"\r\n #sidebar\r\n>\r\n <button\r\n fd-shellbar-side-nav\r\n fd-button\r\n fdType=\"transparent\"\r\n glyph=\"decline\"\r\n (click)=\"$event.stopPropagation(); closeSidebar()\"\r\n routeFormChange\r\n [bodyClick]=\"true\"\r\n (stateChanged)=\"afterViewInit && closeSidebar()\"\r\n ></button>\r\n @if (sideContentLayout ) {\r\n <bsu-ly-layout-panel\r\n style=\"width: 100%\"\r\n [config]=\"sideContentLayout\"\r\n [hideTitle]=\"parameters?.HideSideContentTitle === true\"\r\n class=\"xxx\"\r\n ></bsu-ly-layout-panel\r\n >}\r\n</div>\r\n} @if (sideContentLayout && mainContentLayout) {\r\n\r\n<fd-dynamic-side-content\r\n [class.rtl]=\"rtl\"\r\n fillEmptySpace\r\n [decrement]=\"'40px'\"\r\n [disable]=\"autoHeight\"\r\n [setMinHeight]=\"true\"\r\n [size]=\"isMobile ? 'sm' : smallDevice ? 'md' : 'xl'\"\r\n>\r\n <fd-dynamic-side-content-side>\r\n <bsu-ly-layout-panel\r\n fillEmptySpace\r\n [disable]=\"!parameters?.FixSideContentHeight\"\r\n [decrement]=\"'40px'\"\r\n [style.overflow-y]=\"parameters?.FixSideContentHeight === true ? 'auto' : null\"\r\n [config]=\"sideContentLayout\"\r\n [hideTitle]=\"parameters?.HideSideContentTitle === true\"\r\n >\r\n </bsu-ly-layout-panel>\r\n </fd-dynamic-side-content-side>\r\n <fd-dynamic-side-content-main\r\n [style.width]=\"isMobile ? null : parameters?.MainContentWidth\"\r\n fillEmptySpace\r\n [decrement]=\"'40px'\"\r\n [style.overflow-y]=\"'auto'\"\r\n >\r\n <bsu-ly-layout-panel [config]=\"mainContentLayout\" [hideTitle]=\"parameters?.HideMainContentTitle === true\">\r\n </bsu-ly-layout-panel>\r\n </fd-dynamic-side-content-main>\r\n</fd-dynamic-side-content>\r\n} @else {\r\n<fd-message-strip type=\"error\" [dismissible]=\"false\"\r\n >side content and main content does not defined correctly.</fd-message-strip\r\n>\r\n}\r\n<ng-template #error>\r\n <fd-message-strip type=\"error\" [dismissible]=\"false\"\r\n >side content and main content does not defined correctly.</fd-message-strip\r\n >\r\n</ng-template>\r\n", styles: [":host{width:100%;height:100%;display:flex;position:relative;flex-direction:column}fd-dynamic-side-content-main>bsu-ly-layout-panel,fd-dynamic-side-content-side>bsu-ly-layout-panel{border:none;padding:0;margin:0}fd-dynamic-side-content-main>bsu-ly-layout-panel ::ng-deep>fd-panel>.fd-panel>.fd-panel__content,fd-dynamic-side-content-side>bsu-ly-layout-panel ::ng-deep>fd-panel>.fd-panel>.fd-panel__content{border:none;padding:0;display:block}:host ::ng-deep bnrc-field-ui{padding:0!important}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.FillEmptySpaceDirective, selector: "[fillEmptySpace]", inputs: ["containerDom", "decrement", "disable", "height", "dontUseTopBound", "setMinHeight", "setMaxHeight"], outputs: ["heightChanged"], exportAs: ["fillEmptySpace"] }, { kind: "directive", type: i2.BodyClickDirective, selector: "[bodyClick]", inputs: ["disableBodyClick"] }, { kind: "directive", type: i2.RouteFormChangeDirective, selector: "[routeFormChange]", inputs: ["handleBodyClick"], outputs: ["stateChanged"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "component", type: i9.DynamicSideContentComponent, selector: "fd-dynamic-side-content", inputs: ["position", "size", "id"] }, { kind: "component", type: i9.DynamicSideContentSideComponent, selector: "fd-dynamic-side-content-side", inputs: ["id"] }, { kind: "component", type: i9.DynamicSideContentMainComponent, selector: "fd-dynamic-side-content-main", inputs: ["id"] }, { kind: "component", type: i2$8.MessageStripComponent, selector: "fd-message-strip", inputs: ["class", "dismissible", "ariaLabelledBy", "dismissBtnTitle", "noIcon", "type", "id", "ariaLabel", "width", "minWidth", "marginBottom", "indicationColor"], outputs: ["onDismiss"] }, { kind: "directive", type: i6$2.ShellbarSidenavDirective, selector: "[fdShellbarSidenav], [fd-shellbar-side-nav]" }, { kind: "component", type: LyLayoutPanelComponent, selector: "bsu-ly-layout-panel", inputs: ["renderItems", "isRoot", "hideTitle", "notPanelMode"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
14808
14864
  }
14809
14865
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BarsaFormSideContentComponent, decorators: [{
14810
14866
  type: Component,
@@ -16858,7 +16914,7 @@ class UiSignatureComponent extends FieldBaseComponent {
16858
16914
  });
16859
16915
  }
16860
16916
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UiSignatureComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
16861
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: UiSignatureComponent, isStandalone: false, selector: "bsu-ui-signature", viewQueries: [{ propertyName: "canvasRef", first: true, predicate: ["canvas"], descendants: true, read: ElementRef, static: true }], usesInheritance: true, ngImport: i0, template: "@if(context){\n<bsu-ui-picture-file [context]=\"context\" [layoutInfo]=\"layoutInfo\" [hideUpload]=\"true\">\n @if(!value || (value && value?.IsDeleted)){\n <button\n fd-toolbar-item\n fd-button\n [disabled]=\"(disableOrReadonly$ | async) === true\"\n glyph=\"clear-all\"\n [fdType]=\"'transparent'\"\n (click)=\"onCanvasClear()\"\n ></button>\n } </bsu-ui-picture-file\n>}\n\n<canvas\n #canvas\n style=\"\n touch-action: none;\n width: 100%;\n height: 100%;\n background-color: var(--sapBaseColor);\n border: 0.0625rem solid var(--sapGroup_TitleBorderColor);\n \"\n [class.hide]=\"value && value.IsDeleted !== true\"\n [style.min-height.px]=\"layoutInfo?.ControlBounds.height\"\n resizeObserver\n (elResized)=\"onCanvasResize($event)\"\n></canvas>\n\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: i2.ResizeObserverDirective, selector: "[resizeObserver]", outputs: ["elResized"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "directive", type: i8.ToolbarItemDirective, selector: "[fd-toolbar-item], [fdOverflowGroup], [fdOverflowPriority]", inputs: ["fdOverflowPriority", "fdOverflowGroup"] }, { kind: "component", type: UiPictureFileComponent, selector: "bsu-ui-picture-file", inputs: ["imageUrl", "sizeMode", "hideUpload"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
16917
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: UiSignatureComponent, isStandalone: false, selector: "bsu-ui-signature", viewQueries: [{ propertyName: "canvasRef", first: true, predicate: ["canvas"], descendants: true, read: ElementRef, static: true }], usesInheritance: true, ngImport: i0, template: "@if(context){\n<bsu-ui-picture-file [context]=\"context\" [layoutInfo]=\"layoutInfo\" [hideUpload]=\"true\">\n @if(!value || (value && value?.IsDeleted)){\n <button\n fd-toolbar-item\n fd-button\n [disabled]=\"(disableOrReadonly$ | async) === true\"\n glyph=\"clear-all\"\n [fdType]=\"'transparent'\"\n (click)=\"onCanvasClear()\"\n ></button>\n } </bsu-ui-picture-file\n>}\n\n<canvas\n #canvas\n style=\"\n touch-action: none;\n width: 100%;\n height: 100%;\n background-color: var(--sapBaseColor);\n border: 0.0625rem solid var(--sapGroup_TitleBorderColor);\n \"\n [class.hide]=\"value && value.IsDeleted !== true\"\n [style.min-height.px]=\"layoutInfo?.ControlBounds.height\"\n resizeObserver\n (elResized)=\"onCanvasResize($event)\"\n></canvas>\n\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: i2.ResizeObserverDirective, selector: "[resizeObserver]", outputs: ["elResized"] }, { kind: "component", type: i1$2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class", "id"], exportAs: ["fd-button"] }, { kind: "directive", type: i7$2.ToolbarItemDirective, selector: "[fd-toolbar-item], [fdOverflowGroup], [fdOverflowPriority]", inputs: ["fdOverflowPriority", "fdOverflowGroup"] }, { kind: "component", type: UiPictureFileComponent, selector: "bsu-ui-picture-file", inputs: ["imageUrl", "sizeMode", "hideUpload"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
16862
16918
  }
16863
16919
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UiSignatureComponent, decorators: [{
16864
16920
  type: Component,
@@ -17382,7 +17438,8 @@ const components = [
17382
17438
  BarsaInfobarsComponent,
17383
17439
  DynamicCommandComponent,
17384
17440
  BarsaChatMessageStatusComponent,
17385
- FileGalleryViewerComponent
17441
+ FileGalleryViewerComponent,
17442
+ FileCardViewerComponent
17386
17443
  ];
17387
17444
  const pipes = [
17388
17445
  UploadFileStatusPipe,
@@ -17543,7 +17600,7 @@ class BarsaSapUiModule extends BaseModule {
17543
17600
  };
17544
17601
  }
17545
17602
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BarsaSapUiModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
17546
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.0.6", ngImport: i0, type: BarsaSapUiModule, declarations: [BarsaBarDownloadFileComponent, UiTextFieldComponent, LyLayoutFieldLabelComponent, UiCheckBoxComponent, UiSimpleComboComponent, UiRadioGroupComponent, UiGridComponent, UiMapComponent, LyLayoutContainerOfRootComponent, LyLayoutPanelComponent, UiReadOnlyFieldComponent, UiContainerWithButtonComponent, UiPictureFileComponent, UiMoInfoUlvComboComponent, UiMultiSelectComboComponent, UiNumDecimalUiComponent, UiNumIntUiComponent, UiTimeSpanComponent, UiFileLinearListBoxComponent, LyEmptySpaceComponent, UiSinglePictureComponent, UlvSelectionComponent, UlvToolbarComponent, UlvPagingComponent, UiGridSortSettingComponent, UiGridSortItemComponent, UiGridColumnsComponent, MaskComponent, UiInfoBarPanelComponent, UiFormPanelComponent, UiSearchCommandInfoUiComponent, UlvSettingsComponent, UiTinymceComponent, UiButtonComponent, UiDateTimeComponent, FormDialogComponent, UiMoInfoSubFormUiComponent, ResponsiveToolbarComponent, ResponsiveToolbarRendererComponent, UiTextAreaComponent, LayoutControlComponent, LayoutWizardComponent, FormWizardComponent, FormDialogLessComponent, RichTextStaticComponent, UiPicturesInfoComponent, LyHorizontalLayoutComponent, LyVerticalLayoutComponent, LyTabContainerComponent, LyTabPageComponent, LyLabelComponent, UiMoInfoComboViewerComponent, UlMsgBoxAdapterComponent, UiTreeComponent, HeaderAvatarComponent, UiWorkflowPanelUiComponent, UlvContextMenuComponent, UlLoadingMaskUiComponent, UiTextFieldAutoCompleteComponent, CaptchaFieldComponent, LySimpleLabelComponent, GlobalSearchPanelComponent, GlobalSearchModuleComponent, GlobalSearchComponent, HyperlinkComponent, StaticTextComponent, UlToastAdapterComponent, MessageStripComponent, UiLinearListContainerWithButtonComponent, FundamentalDynamicFormComponent, LayoutActionsComponent, LyLayoutContainerComponent, UiUlvFormMultiSelectUiComponent, UlvFormMultiSelectComponent, UlvColumnSettingsComponent, UlvFilterSettingsComponent, UlvSortSettingsComponent, UlvGroupbySettingsComponent, BarsaListFileLinearComponent, UiPdfViewerComponent, BarsaTinyemceComponent, UiMonacoEditorComponent, BarsaMonacoEditorComponent, BarsaDateTimePickerComponent, BarsaTreeItemComponent, UiSwitchButtonComponent, UiColorUiComponent, LyLineComponent, UiUlvMainUiComponent, ManageFiltersReportComponent, ReportSearchFieldsManageComponent, ReportSearchFieldsHiddenSettingsComponent, SearchPanelComponent, ReportSearchPanelSaveComponent, UiGridFilterSettingsComponent, UiGridFilterItemComponent, UiDateRangeExComponent, UlNotifyPopupComponent, UiTableViewComponent, UiListViewComponent, UiCardViewComponent, UiReportContainerComponent, NoDataComponent, ColumnRendererComponent, InlineSaveAndCancelComponent, UiTreeViewComponent, InlineSaveAndCancelComponent, UiCalendarComponent, UiAspReportViewerComponent, UiGraphComponent, UiExceptionFormComponent, UiEditableGridComponent, ColumnMatrixRendererComponent, UiMatrixViewComponent, CustomDateTimeComponent, BarsaAspViewerComponent, FileInDialogComponent, UiMoInfoGeneralObjectUiComponent, UiGanttChartComponent, GanttDhtmlChartViewComponent, ProgressIndicatorComponent, CardViewContentComponent, CardItemComponent, UiCardViewHorizontalGroupComponent, TitleComponent, BarsaUlvMainComponent, ListItemComponent, HtreeCreateNewComponent, BarsaTableHeaderComponent, BarsaTableRowComponent, BarsaTableColumnComponent, BreadcrumbComponent, UiLabelComponent, FormToolbarButtonComponent, BarsaSearchFormComponent, ReportNewTopFormComponent, BarsaNetworkOfflineComponent, FileViewerContentComponent, FileViewerPopoverComponent, FileViewerComponent, BlobViewerComponent, NotificationItemComponent, BarsaCartableTemplateComponent, BarsaCartableGroupComponent, BarsaCartableFormComponent, BarsaColumnIndicatorComponent, BarsaFieldKeyValueComponent, BarsaToolbaritemSearchComponent, UiHtmlViewerComponent, BarsaPishnamayeshPayamComponent, BarsaTextEllipsisComponent, BarsaListFileLinearGmailComponent, BarsaLinkableItemsPanelComponent, BarsaEnumMenuButtonComponent, BarsaCardLayoutPanelComponent, BarsaHorizontalFlexPanelComponent, BarsaBaseLayoutPanelComponent, BarsaBarPanelComponent, BarsaFormSideContentComponent, BarsaSimpleFormComponent, FormToolbarComponent, BarsaListLayoutPanelComponent, BarsaGridLayoutPanelComponent, BarsaDynamicFieldComponent, UiMultiSelectRadioComponent, UiMultiSelectCheckboxComponent, UiNumIntSliderComponent, UiMultiSelectSliderComponent, UiMultiSelectCardComponent, UiMultiSelectSmileComponent, BarsaReportCheckboxSwitchButtonComponent, BarsaColumnRowNumberComponent, BarsaCardRowPayamComponent, BarsaColumnRowNumberComponent, BarsaQuestionPostComponent, BarsaQuestionAnswerFormComponent, BarsaQuestionAnswerFormAddCommentComponent, BarsaAnswerCardComponent, BarsaQuestionAnswerContentActionsSectionComponent, BarsaQuestionAnswerVoteSectionComponent, BarsaQuestionAnswerCreatorTimeSectionComponent, BarsaQuestionAnswerCommentsSectionComponent, BarsaChipComponent, BarsaTagChipComponent, BarsaReportCardFlexViewComponent, BarsaTagsCategoryRowComponent, BarsaTagCategoriesComponent, BarsaReportOneOfListComponent, BarsaCardRowPayamComponent, BarsaCustomInlineEditComponent, BarsaCustomInlineEditRowComponent, BarsaChatComponent, BarsaChatContentComponent, BarsaChatMessageComponent, BarsaChatUserListComponent, BarsaChatThreadsListComponent, BarsaChatThreadsListToolbarComponent, BarsaChatContentToolbarComponent, BarsaChatListComponent, BarsaModalComponent, BarsaTabRouteManagerComponent, BarsaBreadcrumbsComponent, BarsaRowInlineActionlistComponent, UiBpmnViewerComponent, UiNotificationViewComponent, NotificationItemActionsComponent, BarsaFormLayoutPanelComponent, UiReportCarouselViewComponent, BarsaCardBannerComponent, BarsaThemeComponent, BarsaImgSkeletonComponent, BarsaBottomMenuViewComponent, UiSignatureComponent, BarsaMegamenuComponent, UiMapReportComponent, BarsaInfobarsComponent, DynamicCommandComponent, BarsaChatMessageStatusComponent, FileGalleryViewerComponent, UploadFileStatusPipe, SapFontPipe, SapFontClassPipe, StringToArrayPipe, NodeHasOneDepthLevelPipe, MatrixValuePipe, DynamicPageSizePipe, SapSizePipe, AvatarGridColPipe, ObjectStatusIconPipe, WizardLayoutDirective, ColRendererDirective, ApplyConditionalFormatsDirective, ReportViewRendererDirective, FullscreenDialogDirective, FullscreenFilesDirective, DownloadFilesDirective, DialogHandlerDirective, TableThDirective, ContentDensityDirective, DarkClassDirective, FixTabMoreDirective], imports: [CommonModule,
17603
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.0.6", ngImport: i0, type: BarsaSapUiModule, declarations: [BarsaBarDownloadFileComponent, UiTextFieldComponent, LyLayoutFieldLabelComponent, UiCheckBoxComponent, UiSimpleComboComponent, UiRadioGroupComponent, UiGridComponent, UiMapComponent, LyLayoutContainerOfRootComponent, LyLayoutPanelComponent, UiReadOnlyFieldComponent, UiContainerWithButtonComponent, UiPictureFileComponent, UiMoInfoUlvComboComponent, UiMultiSelectComboComponent, UiNumDecimalUiComponent, UiNumIntUiComponent, UiTimeSpanComponent, UiFileLinearListBoxComponent, LyEmptySpaceComponent, UiSinglePictureComponent, UlvSelectionComponent, UlvToolbarComponent, UlvPagingComponent, UiGridSortSettingComponent, UiGridSortItemComponent, UiGridColumnsComponent, MaskComponent, UiInfoBarPanelComponent, UiFormPanelComponent, UiSearchCommandInfoUiComponent, UlvSettingsComponent, UiTinymceComponent, UiButtonComponent, UiDateTimeComponent, FormDialogComponent, UiMoInfoSubFormUiComponent, ResponsiveToolbarComponent, ResponsiveToolbarRendererComponent, UiTextAreaComponent, LayoutControlComponent, LayoutWizardComponent, FormWizardComponent, FormDialogLessComponent, RichTextStaticComponent, UiPicturesInfoComponent, LyHorizontalLayoutComponent, LyVerticalLayoutComponent, LyTabContainerComponent, LyTabPageComponent, LyLabelComponent, UiMoInfoComboViewerComponent, UlMsgBoxAdapterComponent, UiTreeComponent, HeaderAvatarComponent, UiWorkflowPanelUiComponent, UlvContextMenuComponent, UlLoadingMaskUiComponent, UiTextFieldAutoCompleteComponent, CaptchaFieldComponent, LySimpleLabelComponent, GlobalSearchPanelComponent, GlobalSearchModuleComponent, GlobalSearchComponent, HyperlinkComponent, StaticTextComponent, UlToastAdapterComponent, MessageStripComponent, UiLinearListContainerWithButtonComponent, FundamentalDynamicFormComponent, LayoutActionsComponent, LyLayoutContainerComponent, UiUlvFormMultiSelectUiComponent, UlvFormMultiSelectComponent, UlvColumnSettingsComponent, UlvFilterSettingsComponent, UlvSortSettingsComponent, UlvGroupbySettingsComponent, BarsaListFileLinearComponent, UiPdfViewerComponent, BarsaTinyemceComponent, UiMonacoEditorComponent, BarsaMonacoEditorComponent, BarsaDateTimePickerComponent, BarsaTreeItemComponent, UiSwitchButtonComponent, UiColorUiComponent, LyLineComponent, UiUlvMainUiComponent, ManageFiltersReportComponent, ReportSearchFieldsManageComponent, ReportSearchFieldsHiddenSettingsComponent, SearchPanelComponent, ReportSearchPanelSaveComponent, UiGridFilterSettingsComponent, UiGridFilterItemComponent, UiDateRangeExComponent, UlNotifyPopupComponent, UiTableViewComponent, UiListViewComponent, UiCardViewComponent, UiReportContainerComponent, NoDataComponent, ColumnRendererComponent, InlineSaveAndCancelComponent, UiTreeViewComponent, InlineSaveAndCancelComponent, UiCalendarComponent, UiAspReportViewerComponent, UiGraphComponent, UiExceptionFormComponent, UiEditableGridComponent, ColumnMatrixRendererComponent, UiMatrixViewComponent, CustomDateTimeComponent, BarsaAspViewerComponent, FileInDialogComponent, UiMoInfoGeneralObjectUiComponent, UiGanttChartComponent, GanttDhtmlChartViewComponent, ProgressIndicatorComponent, CardViewContentComponent, CardItemComponent, UiCardViewHorizontalGroupComponent, TitleComponent, BarsaUlvMainComponent, ListItemComponent, HtreeCreateNewComponent, BarsaTableHeaderComponent, BarsaTableRowComponent, BarsaTableColumnComponent, BreadcrumbComponent, UiLabelComponent, FormToolbarButtonComponent, BarsaSearchFormComponent, ReportNewTopFormComponent, BarsaNetworkOfflineComponent, FileViewerContentComponent, FileViewerPopoverComponent, FileViewerComponent, BlobViewerComponent, NotificationItemComponent, BarsaCartableTemplateComponent, BarsaCartableGroupComponent, BarsaCartableFormComponent, BarsaColumnIndicatorComponent, BarsaFieldKeyValueComponent, BarsaToolbaritemSearchComponent, UiHtmlViewerComponent, BarsaPishnamayeshPayamComponent, BarsaTextEllipsisComponent, BarsaListFileLinearGmailComponent, BarsaLinkableItemsPanelComponent, BarsaEnumMenuButtonComponent, BarsaCardLayoutPanelComponent, BarsaHorizontalFlexPanelComponent, BarsaBaseLayoutPanelComponent, BarsaBarPanelComponent, BarsaFormSideContentComponent, BarsaSimpleFormComponent, FormToolbarComponent, BarsaListLayoutPanelComponent, BarsaGridLayoutPanelComponent, BarsaDynamicFieldComponent, UiMultiSelectRadioComponent, UiMultiSelectCheckboxComponent, UiNumIntSliderComponent, UiMultiSelectSliderComponent, UiMultiSelectCardComponent, UiMultiSelectSmileComponent, BarsaReportCheckboxSwitchButtonComponent, BarsaColumnRowNumberComponent, BarsaCardRowPayamComponent, BarsaColumnRowNumberComponent, BarsaQuestionPostComponent, BarsaQuestionAnswerFormComponent, BarsaQuestionAnswerFormAddCommentComponent, BarsaAnswerCardComponent, BarsaQuestionAnswerContentActionsSectionComponent, BarsaQuestionAnswerVoteSectionComponent, BarsaQuestionAnswerCreatorTimeSectionComponent, BarsaQuestionAnswerCommentsSectionComponent, BarsaChipComponent, BarsaTagChipComponent, BarsaReportCardFlexViewComponent, BarsaTagsCategoryRowComponent, BarsaTagCategoriesComponent, BarsaReportOneOfListComponent, BarsaCardRowPayamComponent, BarsaCustomInlineEditComponent, BarsaCustomInlineEditRowComponent, BarsaChatComponent, BarsaChatContentComponent, BarsaChatMessageComponent, BarsaChatUserListComponent, BarsaChatThreadsListComponent, BarsaChatThreadsListToolbarComponent, BarsaChatContentToolbarComponent, BarsaChatListComponent, BarsaModalComponent, BarsaTabRouteManagerComponent, BarsaBreadcrumbsComponent, BarsaRowInlineActionlistComponent, UiBpmnViewerComponent, UiNotificationViewComponent, NotificationItemActionsComponent, BarsaFormLayoutPanelComponent, UiReportCarouselViewComponent, BarsaCardBannerComponent, BarsaThemeComponent, BarsaImgSkeletonComponent, BarsaBottomMenuViewComponent, UiSignatureComponent, BarsaMegamenuComponent, UiMapReportComponent, BarsaInfobarsComponent, DynamicCommandComponent, BarsaChatMessageStatusComponent, FileGalleryViewerComponent, FileCardViewerComponent, UploadFileStatusPipe, SapFontPipe, SapFontClassPipe, StringToArrayPipe, NodeHasOneDepthLevelPipe, MatrixValuePipe, DynamicPageSizePipe, SapSizePipe, AvatarGridColPipe, ObjectStatusIconPipe, WizardLayoutDirective, ColRendererDirective, ApplyConditionalFormatsDirective, ReportViewRendererDirective, FullscreenDialogDirective, FullscreenFilesDirective, DownloadFilesDirective, DialogHandlerDirective, TableThDirective, ContentDensityDirective, DarkClassDirective, FixTabMoreDirective], imports: [CommonModule,
17547
17604
  FormsModule,
17548
17605
  ReactiveFormsModule,
17549
17606
  BarsaNovinRayCoreModule,
@@ -17566,9 +17623,9 @@ class BarsaSapUiModule extends BaseModule {
17566
17623
  BarsaSapUiRoutingModule,
17567
17624
  PdfJsViewerModule,
17568
17625
  ResizableModule,
17569
- PlatformIconTabBarModule, i238.ContentDensityModule, ScrollingModule,
17626
+ PlatformIconTabBarModule, i239.ContentDensityModule, ScrollingModule,
17570
17627
  UtilDateToHhMmPipe,
17571
- UtilChatTimeBadgePipe], exports: [BarsaBarDownloadFileComponent, UiTextFieldComponent, LyLayoutFieldLabelComponent, UiCheckBoxComponent, UiSimpleComboComponent, UiRadioGroupComponent, UiGridComponent, UiMapComponent, LyLayoutContainerOfRootComponent, LyLayoutPanelComponent, UiReadOnlyFieldComponent, UiContainerWithButtonComponent, UiPictureFileComponent, UiMoInfoUlvComboComponent, UiMultiSelectComboComponent, UiNumDecimalUiComponent, UiNumIntUiComponent, UiTimeSpanComponent, UiFileLinearListBoxComponent, LyEmptySpaceComponent, UiSinglePictureComponent, UlvSelectionComponent, UlvToolbarComponent, UlvPagingComponent, UiGridSortSettingComponent, UiGridSortItemComponent, UiGridColumnsComponent, MaskComponent, UiInfoBarPanelComponent, UiFormPanelComponent, UiSearchCommandInfoUiComponent, UlvSettingsComponent, UiTinymceComponent, UiButtonComponent, UiDateTimeComponent, FormDialogComponent, UiMoInfoSubFormUiComponent, ResponsiveToolbarComponent, ResponsiveToolbarRendererComponent, UiTextAreaComponent, LayoutControlComponent, LayoutWizardComponent, FormWizardComponent, FormDialogLessComponent, RichTextStaticComponent, UiPicturesInfoComponent, LyHorizontalLayoutComponent, LyVerticalLayoutComponent, LyTabContainerComponent, LyTabPageComponent, LyLabelComponent, UiMoInfoComboViewerComponent, UlMsgBoxAdapterComponent, UiTreeComponent, HeaderAvatarComponent, UiWorkflowPanelUiComponent, UlvContextMenuComponent, UlLoadingMaskUiComponent, UiTextFieldAutoCompleteComponent, CaptchaFieldComponent, LySimpleLabelComponent, GlobalSearchPanelComponent, GlobalSearchModuleComponent, GlobalSearchComponent, HyperlinkComponent, StaticTextComponent, UlToastAdapterComponent, MessageStripComponent, UiLinearListContainerWithButtonComponent, FundamentalDynamicFormComponent, LayoutActionsComponent, LyLayoutContainerComponent, UiUlvFormMultiSelectUiComponent, UlvFormMultiSelectComponent, UlvColumnSettingsComponent, UlvFilterSettingsComponent, UlvSortSettingsComponent, UlvGroupbySettingsComponent, BarsaListFileLinearComponent, UiPdfViewerComponent, BarsaTinyemceComponent, UiMonacoEditorComponent, BarsaMonacoEditorComponent, BarsaDateTimePickerComponent, BarsaTreeItemComponent, UiSwitchButtonComponent, UiColorUiComponent, LyLineComponent, UiUlvMainUiComponent, ManageFiltersReportComponent, ReportSearchFieldsManageComponent, ReportSearchFieldsHiddenSettingsComponent, SearchPanelComponent, ReportSearchPanelSaveComponent, UiGridFilterSettingsComponent, UiGridFilterItemComponent, UiDateRangeExComponent, UlNotifyPopupComponent, UiTableViewComponent, UiListViewComponent, UiCardViewComponent, UiReportContainerComponent, NoDataComponent, ColumnRendererComponent, InlineSaveAndCancelComponent, UiTreeViewComponent, InlineSaveAndCancelComponent, UiCalendarComponent, UiAspReportViewerComponent, UiGraphComponent, UiExceptionFormComponent, UiEditableGridComponent, ColumnMatrixRendererComponent, UiMatrixViewComponent, CustomDateTimeComponent, BarsaAspViewerComponent, FileInDialogComponent, UiMoInfoGeneralObjectUiComponent, UiGanttChartComponent, GanttDhtmlChartViewComponent, ProgressIndicatorComponent, CardViewContentComponent, CardItemComponent, UiCardViewHorizontalGroupComponent, TitleComponent, BarsaUlvMainComponent, ListItemComponent, HtreeCreateNewComponent, BarsaTableHeaderComponent, BarsaTableRowComponent, BarsaTableColumnComponent, BreadcrumbComponent, UiLabelComponent, FormToolbarButtonComponent, BarsaSearchFormComponent, ReportNewTopFormComponent, BarsaNetworkOfflineComponent, FileViewerContentComponent, FileViewerPopoverComponent, FileViewerComponent, BlobViewerComponent, NotificationItemComponent, BarsaCartableTemplateComponent, BarsaCartableGroupComponent, BarsaCartableFormComponent, BarsaColumnIndicatorComponent, BarsaFieldKeyValueComponent, BarsaToolbaritemSearchComponent, UiHtmlViewerComponent, BarsaPishnamayeshPayamComponent, BarsaTextEllipsisComponent, BarsaListFileLinearGmailComponent, BarsaLinkableItemsPanelComponent, BarsaEnumMenuButtonComponent, BarsaCardLayoutPanelComponent, BarsaHorizontalFlexPanelComponent, BarsaBaseLayoutPanelComponent, BarsaBarPanelComponent, BarsaFormSideContentComponent, BarsaSimpleFormComponent, FormToolbarComponent, BarsaListLayoutPanelComponent, BarsaGridLayoutPanelComponent, BarsaDynamicFieldComponent, UiMultiSelectRadioComponent, UiMultiSelectCheckboxComponent, UiNumIntSliderComponent, UiMultiSelectSliderComponent, UiMultiSelectCardComponent, UiMultiSelectSmileComponent, BarsaReportCheckboxSwitchButtonComponent, BarsaColumnRowNumberComponent, BarsaCardRowPayamComponent, BarsaColumnRowNumberComponent, BarsaQuestionPostComponent, BarsaQuestionAnswerFormComponent, BarsaQuestionAnswerFormAddCommentComponent, BarsaAnswerCardComponent, BarsaQuestionAnswerContentActionsSectionComponent, BarsaQuestionAnswerVoteSectionComponent, BarsaQuestionAnswerCreatorTimeSectionComponent, BarsaQuestionAnswerCommentsSectionComponent, BarsaChipComponent, BarsaTagChipComponent, BarsaReportCardFlexViewComponent, BarsaTagsCategoryRowComponent, BarsaTagCategoriesComponent, BarsaReportOneOfListComponent, BarsaCardRowPayamComponent, BarsaCustomInlineEditComponent, BarsaCustomInlineEditRowComponent, BarsaChatComponent, BarsaChatContentComponent, BarsaChatMessageComponent, BarsaChatUserListComponent, BarsaChatThreadsListComponent, BarsaChatThreadsListToolbarComponent, BarsaChatContentToolbarComponent, BarsaChatListComponent, BarsaModalComponent, BarsaTabRouteManagerComponent, BarsaBreadcrumbsComponent, BarsaRowInlineActionlistComponent, UiBpmnViewerComponent, UiNotificationViewComponent, NotificationItemActionsComponent, BarsaFormLayoutPanelComponent, UiReportCarouselViewComponent, BarsaCardBannerComponent, BarsaThemeComponent, BarsaImgSkeletonComponent, BarsaBottomMenuViewComponent, UiSignatureComponent, BarsaMegamenuComponent, UiMapReportComponent, BarsaInfobarsComponent, DynamicCommandComponent, BarsaChatMessageStatusComponent, FileGalleryViewerComponent, WizardLayoutDirective, ColRendererDirective, ApplyConditionalFormatsDirective, ReportViewRendererDirective, FullscreenDialogDirective, FullscreenFilesDirective, DownloadFilesDirective, DialogHandlerDirective, TableThDirective, ContentDensityDirective, DarkClassDirective, FixTabMoreDirective, UploadFileStatusPipe, SapFontPipe, SapFontClassPipe, StringToArrayPipe, NodeHasOneDepthLevelPipe, MatrixValuePipe, DynamicPageSizePipe, SapSizePipe, AvatarGridColPipe, ObjectStatusIconPipe] }); }
17628
+ UtilChatTimeBadgePipe], exports: [BarsaBarDownloadFileComponent, UiTextFieldComponent, LyLayoutFieldLabelComponent, UiCheckBoxComponent, UiSimpleComboComponent, UiRadioGroupComponent, UiGridComponent, UiMapComponent, LyLayoutContainerOfRootComponent, LyLayoutPanelComponent, UiReadOnlyFieldComponent, UiContainerWithButtonComponent, UiPictureFileComponent, UiMoInfoUlvComboComponent, UiMultiSelectComboComponent, UiNumDecimalUiComponent, UiNumIntUiComponent, UiTimeSpanComponent, UiFileLinearListBoxComponent, LyEmptySpaceComponent, UiSinglePictureComponent, UlvSelectionComponent, UlvToolbarComponent, UlvPagingComponent, UiGridSortSettingComponent, UiGridSortItemComponent, UiGridColumnsComponent, MaskComponent, UiInfoBarPanelComponent, UiFormPanelComponent, UiSearchCommandInfoUiComponent, UlvSettingsComponent, UiTinymceComponent, UiButtonComponent, UiDateTimeComponent, FormDialogComponent, UiMoInfoSubFormUiComponent, ResponsiveToolbarComponent, ResponsiveToolbarRendererComponent, UiTextAreaComponent, LayoutControlComponent, LayoutWizardComponent, FormWizardComponent, FormDialogLessComponent, RichTextStaticComponent, UiPicturesInfoComponent, LyHorizontalLayoutComponent, LyVerticalLayoutComponent, LyTabContainerComponent, LyTabPageComponent, LyLabelComponent, UiMoInfoComboViewerComponent, UlMsgBoxAdapterComponent, UiTreeComponent, HeaderAvatarComponent, UiWorkflowPanelUiComponent, UlvContextMenuComponent, UlLoadingMaskUiComponent, UiTextFieldAutoCompleteComponent, CaptchaFieldComponent, LySimpleLabelComponent, GlobalSearchPanelComponent, GlobalSearchModuleComponent, GlobalSearchComponent, HyperlinkComponent, StaticTextComponent, UlToastAdapterComponent, MessageStripComponent, UiLinearListContainerWithButtonComponent, FundamentalDynamicFormComponent, LayoutActionsComponent, LyLayoutContainerComponent, UiUlvFormMultiSelectUiComponent, UlvFormMultiSelectComponent, UlvColumnSettingsComponent, UlvFilterSettingsComponent, UlvSortSettingsComponent, UlvGroupbySettingsComponent, BarsaListFileLinearComponent, UiPdfViewerComponent, BarsaTinyemceComponent, UiMonacoEditorComponent, BarsaMonacoEditorComponent, BarsaDateTimePickerComponent, BarsaTreeItemComponent, UiSwitchButtonComponent, UiColorUiComponent, LyLineComponent, UiUlvMainUiComponent, ManageFiltersReportComponent, ReportSearchFieldsManageComponent, ReportSearchFieldsHiddenSettingsComponent, SearchPanelComponent, ReportSearchPanelSaveComponent, UiGridFilterSettingsComponent, UiGridFilterItemComponent, UiDateRangeExComponent, UlNotifyPopupComponent, UiTableViewComponent, UiListViewComponent, UiCardViewComponent, UiReportContainerComponent, NoDataComponent, ColumnRendererComponent, InlineSaveAndCancelComponent, UiTreeViewComponent, InlineSaveAndCancelComponent, UiCalendarComponent, UiAspReportViewerComponent, UiGraphComponent, UiExceptionFormComponent, UiEditableGridComponent, ColumnMatrixRendererComponent, UiMatrixViewComponent, CustomDateTimeComponent, BarsaAspViewerComponent, FileInDialogComponent, UiMoInfoGeneralObjectUiComponent, UiGanttChartComponent, GanttDhtmlChartViewComponent, ProgressIndicatorComponent, CardViewContentComponent, CardItemComponent, UiCardViewHorizontalGroupComponent, TitleComponent, BarsaUlvMainComponent, ListItemComponent, HtreeCreateNewComponent, BarsaTableHeaderComponent, BarsaTableRowComponent, BarsaTableColumnComponent, BreadcrumbComponent, UiLabelComponent, FormToolbarButtonComponent, BarsaSearchFormComponent, ReportNewTopFormComponent, BarsaNetworkOfflineComponent, FileViewerContentComponent, FileViewerPopoverComponent, FileViewerComponent, BlobViewerComponent, NotificationItemComponent, BarsaCartableTemplateComponent, BarsaCartableGroupComponent, BarsaCartableFormComponent, BarsaColumnIndicatorComponent, BarsaFieldKeyValueComponent, BarsaToolbaritemSearchComponent, UiHtmlViewerComponent, BarsaPishnamayeshPayamComponent, BarsaTextEllipsisComponent, BarsaListFileLinearGmailComponent, BarsaLinkableItemsPanelComponent, BarsaEnumMenuButtonComponent, BarsaCardLayoutPanelComponent, BarsaHorizontalFlexPanelComponent, BarsaBaseLayoutPanelComponent, BarsaBarPanelComponent, BarsaFormSideContentComponent, BarsaSimpleFormComponent, FormToolbarComponent, BarsaListLayoutPanelComponent, BarsaGridLayoutPanelComponent, BarsaDynamicFieldComponent, UiMultiSelectRadioComponent, UiMultiSelectCheckboxComponent, UiNumIntSliderComponent, UiMultiSelectSliderComponent, UiMultiSelectCardComponent, UiMultiSelectSmileComponent, BarsaReportCheckboxSwitchButtonComponent, BarsaColumnRowNumberComponent, BarsaCardRowPayamComponent, BarsaColumnRowNumberComponent, BarsaQuestionPostComponent, BarsaQuestionAnswerFormComponent, BarsaQuestionAnswerFormAddCommentComponent, BarsaAnswerCardComponent, BarsaQuestionAnswerContentActionsSectionComponent, BarsaQuestionAnswerVoteSectionComponent, BarsaQuestionAnswerCreatorTimeSectionComponent, BarsaQuestionAnswerCommentsSectionComponent, BarsaChipComponent, BarsaTagChipComponent, BarsaReportCardFlexViewComponent, BarsaTagsCategoryRowComponent, BarsaTagCategoriesComponent, BarsaReportOneOfListComponent, BarsaCardRowPayamComponent, BarsaCustomInlineEditComponent, BarsaCustomInlineEditRowComponent, BarsaChatComponent, BarsaChatContentComponent, BarsaChatMessageComponent, BarsaChatUserListComponent, BarsaChatThreadsListComponent, BarsaChatThreadsListToolbarComponent, BarsaChatContentToolbarComponent, BarsaChatListComponent, BarsaModalComponent, BarsaTabRouteManagerComponent, BarsaBreadcrumbsComponent, BarsaRowInlineActionlistComponent, UiBpmnViewerComponent, UiNotificationViewComponent, NotificationItemActionsComponent, BarsaFormLayoutPanelComponent, UiReportCarouselViewComponent, BarsaCardBannerComponent, BarsaThemeComponent, BarsaImgSkeletonComponent, BarsaBottomMenuViewComponent, UiSignatureComponent, BarsaMegamenuComponent, UiMapReportComponent, BarsaInfobarsComponent, DynamicCommandComponent, BarsaChatMessageStatusComponent, FileGalleryViewerComponent, FileCardViewerComponent, WizardLayoutDirective, ColRendererDirective, ApplyConditionalFormatsDirective, ReportViewRendererDirective, FullscreenDialogDirective, FullscreenFilesDirective, DownloadFilesDirective, DialogHandlerDirective, TableThDirective, ContentDensityDirective, DarkClassDirective, FixTabMoreDirective, UploadFileStatusPipe, SapFontPipe, SapFontClassPipe, StringToArrayPipe, NodeHasOneDepthLevelPipe, MatrixValuePipe, DynamicPageSizePipe, SapSizePipe, AvatarGridColPipe, ObjectStatusIconPipe] }); }
17572
17629
  static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BarsaSapUiModule, providers: [
17573
17630
  { provide: DIALOG_SERVICE, useClass: DialogService },
17574
17631
  provideAppInitializer(() => {
@@ -17666,5 +17723,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
17666
17723
  * Generated bundle index. Do not edit.
17667
17724
  */
17668
17725
 
17669
- export { ApplyConditionalFormatsDirective, AvatarGridColPipe, BarsaAnswerCardComponent, BarsaAspViewerComponent, BarsaBarDownloadFileComponent, BarsaBarPanelComponent, BarsaBaseLayoutPanelComponent, BarsaBottomMenuViewComponent, BarsaBreadcrumbsComponent, BarsaCardBannerComponent, BarsaCardLayoutPanelComponent, BarsaCardRowPayamComponent, BarsaCartableFormComponent, BarsaCartableGroupComponent, BarsaCartableTemplateComponent, BarsaChatComponent, BarsaChatContentComponent, BarsaChatContentToolbarComponent, BarsaChatListComponent, BarsaChatMessageComponent, BarsaChatMessageStatusComponent, BarsaChatThreadsListComponent, BarsaChatThreadsListToolbarComponent, BarsaChatUserListComponent, BarsaChipComponent, BarsaColumnIndicatorComponent, BarsaColumnRowNumberComponent, BarsaCustomInlineEditComponent, BarsaCustomInlineEditRowComponent, BarsaDateTimePickerComponent, BarsaDynamicFieldComponent, BarsaEnumMenuButtonComponent, BarsaFieldKeyValueComponent, BarsaFormLayoutPanelComponent, BarsaFormSideContentComponent, BarsaGridLayoutPanelComponent, BarsaHorizontalFlexPanelComponent, BarsaImgSkeletonComponent, BarsaInfobarsComponent, BarsaLinkableItemsPanelComponent, BarsaListFileLinearComponent, BarsaListFileLinearGmailComponent, BarsaListLayoutPanelComponent, BarsaMegamenuComponent, BarsaModalComponent, BarsaMonacoEditorComponent, BarsaNetworkOfflineComponent, BarsaPishnamayeshPayamComponent, BarsaQuestionAnswerCommentsSectionComponent, BarsaQuestionAnswerContentActionsSectionComponent, BarsaQuestionAnswerCreatorTimeSectionComponent, BarsaQuestionAnswerFormAddCommentComponent, BarsaQuestionAnswerFormComponent, BarsaQuestionAnswerVoteSectionComponent, BarsaQuestionPostComponent, BarsaReportCardFlexViewComponent, BarsaReportCheckboxSwitchButtonComponent, BarsaReportOneOfListComponent, BarsaRowInlineActionlistComponent, BarsaSapUiModule, BarsaSapUiRoutingModule, BarsaSearchFormComponent, BarsaSimpleFormComponent, BarsaTabRouteManagerComponent, BarsaTableColumnComponent, BarsaTableHeaderComponent, BarsaTableRowComponent, BarsaTagCategoriesComponent, BarsaTagChipComponent, BarsaTagsCategoryRowComponent, BarsaTextEllipsisComponent, BarsaThemeComponent, BarsaTinyemceComponent, BarsaToolbaritemSearchComponent, BarsaTreeItemComponent, BarsaUlvMainComponent, BlobViewerComponent, BreadcrumbComponent, CaptchaFieldComponent, CardItemComponent, CardViewContentComponent, ColRendererDirective, ColumnMatrixRendererComponent, ColumnRendererComponent, ContentDensityDirective, CustomDateTimeComponent, DarkClassDirective, DeviceInfoFieldBaseComponent, DialogHandlerDirective, DownloadFilesDirective, DynamicCommandComponent, DynamicPageSizePipe, FileGalleryViewerComponent, FileInDialogComponent, FileViewerComponent, FileViewerContentComponent, FileViewerPopoverComponent, FixTabMoreDirective, FormDialogComponent, FormDialogLessComponent, FormToolbarButtonComponent, FormToolbarComponent, FormWizardComponent, FullscreenDialogDirective, FullscreenFilesDirective, FundamentalDynamicFormComponent, GanttDhtmlChartViewComponent, GetFormLayoutGrid, GlobalSearchComponent, GlobalSearchModuleComponent, GlobalSearchPanelComponent, HeaderAvatarComponent, HtreeCreateNewComponent, HyperlinkComponent, IconBusinessSuite, IconTNT, InlineSaveAndCancelComponent, LayoutActionsComponent, LayoutControlComponent, LayoutWizardComponent, ListItemComponent, LyEmptySpaceComponent, LyHorizontalLayoutComponent, LyLabelComponent, LyLayoutContainerComponent, LyLayoutContainerOfRootComponent, LyLayoutFieldLabelComponent, LyLayoutPanelComponent, LyLineComponent, LySimpleLabelComponent, LyTabContainerComponent, LyTabPageComponent, LyVerticalLayoutComponent, ManageFiltersReportComponent, MaskComponent, MatrixValuePipe, MessageStripComponent, NoDataComponent, NodeHasOneDepthLevelPipe, NotificationItemActionsComponent, NotificationItemComponent, ObjectStatusIconPipe, ProgressIndicatorComponent, ReportNewTopFormComponent, ReportSearchFieldsHiddenSettingsComponent, ReportSearchFieldsManageComponent, ReportSearchPanelSaveComponent, ReportViewRendererDirective, ResponsiveToolbarComponent, ResponsiveToolbarRendererComponent, RichTextStaticComponent, SapFontClassPipe, SapFontPipe, SapSizePipe, SapUiReportBaseComponent, SearchPanelComponent, StaticTextComponent, StringToArrayPipe, TableThDirective, TitleComponent, UiAspReportViewerComponent, UiBpmnViewerComponent, UiButtonComponent, UiCalendarComponent, UiCardViewComponent, UiCardViewHorizontalGroupComponent, UiCheckBoxComponent, UiColorUiComponent, UiContainerWithButtonComponent, UiDateRangeExComponent, UiDateTimeComponent, UiEditableGridComponent, UiExceptionFormComponent, UiFileLinearListBoxComponent, UiFormPanelComponent, UiGanttChartComponent, UiGraphComponent, UiGridColumnsComponent, UiGridComponent, UiGridFilterItemComponent, UiGridFilterSettingsComponent, UiGridSortItemComponent, UiGridSortSettingComponent, UiHtmlViewerComponent, UiInfoBarPanelComponent, UiLabelComponent, UiLinearListContainerWithButtonComponent, UiListViewComponent, UiMapComponent, UiMapReportComponent, UiMatrixViewComponent, UiMoInfoComboViewerComponent, UiMoInfoGeneralObjectUiComponent, UiMoInfoSubFormUiComponent, UiMoInfoUlvComboComponent, UiMonacoEditorComponent, UiMultiSelectCardComponent, UiMultiSelectCheckboxComponent, UiMultiSelectComboComponent, UiMultiSelectRadioComponent, UiMultiSelectSliderComponent, UiMultiSelectSmileComponent, UiNotificationViewComponent, UiNumDecimalUiComponent, UiNumIntSliderComponent, UiNumIntUiComponent, UiPdfViewerComponent, UiPictureFileComponent, UiPicturesInfoComponent, UiRadioGroupComponent, UiReadOnlyFieldComponent, UiReportCarouselViewComponent, UiReportContainerComponent, UiSearchCommandInfoUiComponent, UiSignatureComponent, UiSimpleComboComponent, UiSinglePictureComponent, UiSwitchButtonComponent, UiTableViewComponent, UiTextAreaComponent, UiTextFieldAutoCompleteComponent, UiTextFieldComponent, UiTimeSpanComponent, UiTinymceComponent, UiTreeComponent, UiTreeViewComponent, UiUlvFormMultiSelectUiComponent, UiUlvMainUiComponent, UiWorkflowPanelUiComponent, UlLoadingMaskUiComponent, UlMsgBoxAdapterComponent, UlNotifyPopupComponent, UlToastAdapterComponent, UlvColumnSettingsComponent, UlvContextMenuComponent, UlvFilterSettingsComponent, UlvFormMultiSelectComponent, UlvGroupbySettingsComponent, UlvPagingComponent, UlvSelectionComponent, UlvSettingsComponent, UlvSortSettingsComponent, UlvToolbarComponent, UploadFileStatusPipe, WidthTypeEnum, WizardLayoutDirective, _trimEnd, getNestedValue, insertAvatar, sort$1 as sort };
17726
+ export { ApplyConditionalFormatsDirective, AvatarGridColPipe, BarsaAnswerCardComponent, BarsaAspViewerComponent, BarsaBarDownloadFileComponent, BarsaBarPanelComponent, BarsaBaseLayoutPanelComponent, BarsaBottomMenuViewComponent, BarsaBreadcrumbsComponent, BarsaCardBannerComponent, BarsaCardLayoutPanelComponent, BarsaCardRowPayamComponent, BarsaCartableFormComponent, BarsaCartableGroupComponent, BarsaCartableTemplateComponent, BarsaChatComponent, BarsaChatContentComponent, BarsaChatContentToolbarComponent, BarsaChatListComponent, BarsaChatMessageComponent, BarsaChatMessageStatusComponent, BarsaChatThreadsListComponent, BarsaChatThreadsListToolbarComponent, BarsaChatUserListComponent, BarsaChipComponent, BarsaColumnIndicatorComponent, BarsaColumnRowNumberComponent, BarsaCustomInlineEditComponent, BarsaCustomInlineEditRowComponent, BarsaDateTimePickerComponent, BarsaDynamicFieldComponent, BarsaEnumMenuButtonComponent, BarsaFieldKeyValueComponent, BarsaFormLayoutPanelComponent, BarsaFormSideContentComponent, BarsaGridLayoutPanelComponent, BarsaHorizontalFlexPanelComponent, BarsaImgSkeletonComponent, BarsaInfobarsComponent, BarsaLinkableItemsPanelComponent, BarsaListFileLinearComponent, BarsaListFileLinearGmailComponent, BarsaListLayoutPanelComponent, BarsaMegamenuComponent, BarsaModalComponent, BarsaMonacoEditorComponent, BarsaNetworkOfflineComponent, BarsaPishnamayeshPayamComponent, BarsaQuestionAnswerCommentsSectionComponent, BarsaQuestionAnswerContentActionsSectionComponent, BarsaQuestionAnswerCreatorTimeSectionComponent, BarsaQuestionAnswerFormAddCommentComponent, BarsaQuestionAnswerFormComponent, BarsaQuestionAnswerVoteSectionComponent, BarsaQuestionPostComponent, BarsaReportCardFlexViewComponent, BarsaReportCheckboxSwitchButtonComponent, BarsaReportOneOfListComponent, BarsaRowInlineActionlistComponent, BarsaSapUiModule, BarsaSapUiRoutingModule, BarsaSearchFormComponent, BarsaSimpleFormComponent, BarsaTabRouteManagerComponent, BarsaTableColumnComponent, BarsaTableHeaderComponent, BarsaTableRowComponent, BarsaTagCategoriesComponent, BarsaTagChipComponent, BarsaTagsCategoryRowComponent, BarsaTextEllipsisComponent, BarsaThemeComponent, BarsaTinyemceComponent, BarsaToolbaritemSearchComponent, BarsaTreeItemComponent, BarsaUlvMainComponent, BlobViewerComponent, BreadcrumbComponent, CaptchaFieldComponent, CardItemComponent, CardViewContentComponent, ColRendererDirective, ColumnMatrixRendererComponent, ColumnRendererComponent, ContentDensityDirective, CustomDateTimeComponent, DarkClassDirective, DeviceInfoFieldBaseComponent, DialogHandlerDirective, DownloadFilesDirective, DynamicCommandComponent, DynamicPageSizePipe, FileCardViewerComponent, FileGalleryViewerComponent, FileInDialogComponent, FileViewerComponent, FileViewerContentComponent, FileViewerPopoverComponent, FixTabMoreDirective, FormDialogComponent, FormDialogLessComponent, FormToolbarButtonComponent, FormToolbarComponent, FormWizardComponent, FullscreenDialogDirective, FullscreenFilesDirective, FundamentalDynamicFormComponent, GanttDhtmlChartViewComponent, GetFormLayoutGrid, GlobalSearchComponent, GlobalSearchModuleComponent, GlobalSearchPanelComponent, HeaderAvatarComponent, HtreeCreateNewComponent, HyperlinkComponent, IconBusinessSuite, IconTNT, InlineSaveAndCancelComponent, LayoutActionsComponent, LayoutControlComponent, LayoutWizardComponent, ListItemComponent, LyEmptySpaceComponent, LyHorizontalLayoutComponent, LyLabelComponent, LyLayoutContainerComponent, LyLayoutContainerOfRootComponent, LyLayoutFieldLabelComponent, LyLayoutPanelComponent, LyLineComponent, LySimpleLabelComponent, LyTabContainerComponent, LyTabPageComponent, LyVerticalLayoutComponent, ManageFiltersReportComponent, MaskComponent, MatrixValuePipe, MessageStripComponent, NoDataComponent, NodeHasOneDepthLevelPipe, NotificationItemActionsComponent, NotificationItemComponent, ObjectStatusIconPipe, ProgressIndicatorComponent, ReportNewTopFormComponent, ReportSearchFieldsHiddenSettingsComponent, ReportSearchFieldsManageComponent, ReportSearchPanelSaveComponent, ReportViewRendererDirective, ResponsiveToolbarComponent, ResponsiveToolbarRendererComponent, RichTextStaticComponent, SapFontClassPipe, SapFontPipe, SapSizePipe, SapUiReportBaseComponent, SearchPanelComponent, StaticTextComponent, StringToArrayPipe, TableThDirective, TitleComponent, UiAspReportViewerComponent, UiBpmnViewerComponent, UiButtonComponent, UiCalendarComponent, UiCardViewComponent, UiCardViewHorizontalGroupComponent, UiCheckBoxComponent, UiColorUiComponent, UiContainerWithButtonComponent, UiDateRangeExComponent, UiDateTimeComponent, UiEditableGridComponent, UiExceptionFormComponent, UiFileLinearListBoxComponent, UiFormPanelComponent, UiGanttChartComponent, UiGraphComponent, UiGridColumnsComponent, UiGridComponent, UiGridFilterItemComponent, UiGridFilterSettingsComponent, UiGridSortItemComponent, UiGridSortSettingComponent, UiHtmlViewerComponent, UiInfoBarPanelComponent, UiLabelComponent, UiLinearListContainerWithButtonComponent, UiListViewComponent, UiMapComponent, UiMapReportComponent, UiMatrixViewComponent, UiMoInfoComboViewerComponent, UiMoInfoGeneralObjectUiComponent, UiMoInfoSubFormUiComponent, UiMoInfoUlvComboComponent, UiMonacoEditorComponent, UiMultiSelectCardComponent, UiMultiSelectCheckboxComponent, UiMultiSelectComboComponent, UiMultiSelectRadioComponent, UiMultiSelectSliderComponent, UiMultiSelectSmileComponent, UiNotificationViewComponent, UiNumDecimalUiComponent, UiNumIntSliderComponent, UiNumIntUiComponent, UiPdfViewerComponent, UiPictureFileComponent, UiPicturesInfoComponent, UiRadioGroupComponent, UiReadOnlyFieldComponent, UiReportCarouselViewComponent, UiReportContainerComponent, UiSearchCommandInfoUiComponent, UiSignatureComponent, UiSimpleComboComponent, UiSinglePictureComponent, UiSwitchButtonComponent, UiTableViewComponent, UiTextAreaComponent, UiTextFieldAutoCompleteComponent, UiTextFieldComponent, UiTimeSpanComponent, UiTinymceComponent, UiTreeComponent, UiTreeViewComponent, UiUlvFormMultiSelectUiComponent, UiUlvMainUiComponent, UiWorkflowPanelUiComponent, UlLoadingMaskUiComponent, UlMsgBoxAdapterComponent, UlNotifyPopupComponent, UlToastAdapterComponent, UlvColumnSettingsComponent, UlvContextMenuComponent, UlvFilterSettingsComponent, UlvFormMultiSelectComponent, UlvGroupbySettingsComponent, UlvPagingComponent, UlvSelectionComponent, UlvSettingsComponent, UlvSortSettingsComponent, UlvToolbarComponent, UploadFileStatusPipe, WidthTypeEnum, WizardLayoutDirective, _trimEnd, getNestedValue, insertAvatar, sort$1 as sort };
17670
17727
  //# sourceMappingURL=barsa-sap-ui.mjs.map