barsa-sap-ui 2.3.113 → 2.3.116
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/barsa-sap-ui.mjs +62 -44
- package/fesm2022/barsa-sap-ui.mjs.map +1 -1
- package/index.d.ts +10 -9
- package/package.json +1 -1
|
@@ -2637,11 +2637,11 @@ class UlvToolbarComponent extends BaseComponent {
|
|
|
2637
2637
|
}
|
|
2638
2638
|
}
|
|
2639
2639
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UlvToolbarComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
2640
|
-
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", contentDensity: "contentDensity", inlineEditMode: "inlineEditMode", allowInlineEdit: "allowInlineEdit", gridSetting: "gridSetting", viewCollection: "viewCollection", reportView: "reportView", inDialog: "inDialog", isMultiSelect: "isMultiSelect", cls: "cls", hasSelected: "hasSelected" }, outputs: { groupbyClick: "groupbyClick", 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]=\"deviceSize === 's'\"\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) { @for (btn of toolbarButtons; track _trackBy(i, btn); let i = $index) { @if (btn !== '-' &&\r\n btn.Command && !btn.Command.CustomUi && !btn.menu) {\r\n <button\r\n fd-button\r\n fd-toolbar-item\r\n [attr.fdOverflowPriority]=\"btn.itemId === 'Edit' ? 'always' : btn.Command?.IsBuiltin ? 'low' : 'high'\"\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 } }\r\n <ng-content select=\"[fd-toolbar-item]\"></ng-content>\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 [attr.fdOverflowPriority]=\"'always'\"\r\n [title]=\"'Inline Edit In List' | bbbTranslate\"\r\n bodyClick\r\n ></button>\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 [attr.fdOverflowPriority]=\"'always'\"\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 [attr.fdOverflowPriority]=\"'always'\"\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 [attr.fdOverflowPriority]=\"'always'\"\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 [attr.fdOverflowPriority]=\"'never'\"\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 <fd-menu #tableMenuSettings>\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 [attr.fdOverflowPriority]=\"deviceSize === 's' ? 'always' : 'low'\"\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 }\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 }\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: i7$1.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: i7$2.ToolbarSpacerDirective, selector: "fd-toolbar-spacer", inputs: ["width", "class", "fixed"] }, { kind: "component", type: i7$2.ToolbarSeparatorComponent, selector: "fd-toolbar-separator" }, { kind: "directive", type: ContentDensityDirective, selector: "[contentDensity]" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
2640
|
+
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", contentDensity: "contentDensity", inlineEditMode: "inlineEditMode", allowInlineEdit: "allowInlineEdit", gridSetting: "gridSetting", viewCollection: "viewCollection", reportView: "reportView", inDialog: "inDialog", isMultiSelect: "isMultiSelect", cls: "cls", hasSelected: "hasSelected" }, outputs: { groupbyClick: "groupbyClick", 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(); 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.Command?.IsBuiltin ? btn.priority : 'high'\" \r\n [fdOverflowGroup]=\"btn.Command?.IsBuiltin ? btn.priorityGroup : 1\"\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 } } }\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: i7$1.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 }); }
|
|
2641
2641
|
}
|
|
2642
2642
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UlvToolbarComponent, decorators: [{
|
|
2643
2643
|
type: Component,
|
|
2644
|
-
args: [{ selector: 'bsu-ulv-toolbar', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, 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]=\"
|
|
2644
|
+
args: [{ selector: 'bsu-ulv-toolbar', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, 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(); 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.Command?.IsBuiltin ? btn.priority : 'high'\" \r\n [fdOverflowGroup]=\"btn.Command?.IsBuiltin ? btn.priorityGroup : 1\"\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 } } }\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"] }]
|
|
2645
2645
|
}], propDecorators: { _tlbCmp: [{
|
|
2646
2646
|
type: ViewChild,
|
|
2647
2647
|
args: ['toolbar']
|
|
@@ -4640,12 +4640,12 @@ class FileViewerContentComponent extends BaseComponent {
|
|
|
4640
4640
|
const isImg = isImage(ext) || file.mediaType === 'image';
|
|
4641
4641
|
isImg &&
|
|
4642
4642
|
(file.thumbnailUrl = this._picFieldSrc.transform(file.Id, this.isImageGallery ? 'BarsaPicture.Thumbnail' : 'ID', null, '', 120, 120)) &&
|
|
4643
|
-
file.CreateDate &&
|
|
4644
|
-
(file.thumbnailUrl += file.CreateDate) &&
|
|
4645
4643
|
(file.mediaUrl = this._picFieldSrc.transform(file.Id, this.isImageGallery ? 'BarsaPicture.Full' : 'Attachment', '', '', 0, 0)) &&
|
|
4646
|
-
file.CreateDate &&
|
|
4647
|
-
(file.mediaUrl += file.CreateDate) &&
|
|
4648
4644
|
(file.isImage = true);
|
|
4645
|
+
if (isImg && file.CreateDate) {
|
|
4646
|
+
file.thumbnailUrl += file.CreateDate;
|
|
4647
|
+
file.mediaUrl += file.CreateDate;
|
|
4648
|
+
}
|
|
4649
4649
|
!isImg && (file.thumbnailUrl = getIcon(ext || file.Type));
|
|
4650
4650
|
if (!isImg &&
|
|
4651
4651
|
['webm', 'mp4', 'x-wav', 'x-ms-wma', 'm4a', 'txt', 'text', 'pdf', 'jfif', 'webp', 'image'].indexOf(this.file.Type) < 0) {
|
|
@@ -5071,11 +5071,11 @@ class LyLayoutContainerOfRootComponent extends LayoutPanelBaseComponent {
|
|
|
5071
5071
|
this.isMobile = getDeviceIsMobile();
|
|
5072
5072
|
}
|
|
5073
5073
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: LyLayoutContainerOfRootComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
5074
|
-
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: {
|
|
5074
|
+
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]=\"isSearchPanel ? 'unset' : 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 }); }
|
|
5075
5075
|
}
|
|
5076
5076
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: LyLayoutContainerOfRootComponent, decorators: [{
|
|
5077
5077
|
type: Component,
|
|
5078
|
-
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: {
|
|
5078
|
+
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]=\"isSearchPanel ? 'unset' : 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"] }]
|
|
5079
5079
|
}], propDecorators: { viewRef: [{
|
|
5080
5080
|
type: ViewChild,
|
|
5081
5081
|
args: ['viewRefTemplate', { read: ViewContainerRef, static: true }]
|
|
@@ -6628,9 +6628,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
|
|
|
6628
6628
|
}] } });
|
|
6629
6629
|
|
|
6630
6630
|
class UlNotifyPopupComponent extends BaseComponent {
|
|
6631
|
-
/** Inserted by Angular inject() migration for backwards compatibility */
|
|
6632
6631
|
constructor() {
|
|
6633
|
-
super();
|
|
6632
|
+
super(...arguments);
|
|
6634
6633
|
this.notification = inject(NotificationRef);
|
|
6635
6634
|
this._portalService = inject(PortalService);
|
|
6636
6635
|
this._notificationService = inject(NotificationService);
|
|
@@ -6646,13 +6645,13 @@ class UlNotifyPopupComponent extends BaseComponent {
|
|
|
6646
6645
|
onShow(e) {
|
|
6647
6646
|
this._notificationService.ShowNotificationRelatedMo(e);
|
|
6648
6647
|
}
|
|
6649
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UlNotifyPopupComponent, deps:
|
|
6648
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UlNotifyPopupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
6650
6649
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.6", type: UlNotifyPopupComponent, isStandalone: false, selector: "bsu-ul-notify-popup", usesInheritance: true, ngImport: i0, template: "<bsu-notification-item\r\n [showCloseButton]=\"true\"\r\n (actionClick)=\"onActionClick($event)\"\r\n [option]=\"notification.data\"\r\n [bodyOnly]=\"true\"\r\n (closeEvent)=\"onClose($event)\"\r\n (showEvent)=\"onShow($event)\"\r\n>\r\n</bsu-notification-item>\r\n\r\n<!-- <fd-notification-body\r\n [dir]=\"notification.data?.isRtl ? 'rtl' : 'ltr'\"\r\n (click)=\"notification.close(); notification.data?.callback()\"\r\n>\r\n <fd-avatar [circle]=\"true\" size=\"xs\" [image]=\"notification.data?.image\"></fd-avatar>\r\n <fd-notification-content>\r\n <fd-notification-header>\r\n <div fd-notification-indicator type=\"success\"></div>\r\n <h2 fd-notification-title [unread]=\"true\">\r\n {{ notification.data?.title }}\r\n </h2>\r\n </fd-notification-header>\r\n\r\n <p fd-notification-paragraph [innerHtml]=\"notification.data?.msg\"></p>\r\n </fd-notification-content>\r\n\r\n <fd-notification-actions>\r\n <fd-action-sheet #sheet *ngIf=\"notification.data?.uiOptions?.OverflowButtons; else buttonsTpl\">\r\n <fd-action-sheet-control>\r\n <button\r\n role=\"menu\"\r\n [ariaLabel]=\"'More' | bbbTranslate\"\r\n [title]=\"'More' | bbbTranslate\"\r\n fd-button\r\n fdType=\"transparent\"\r\n glyph=\"overflow\"\r\n ></button>\r\n </fd-action-sheet-control>\r\n\r\n <fd-action-sheet-body>\r\n <li\r\n *ngFor=\"let btn of notification.data?.UiActions\"\r\n fd-action-sheet-item\r\n [glyph]=\"btn.Icon\"\r\n [label]=\"btn.Title | bbbTranslate\"\r\n \r\n ></li>\r\n </fd-action-sheet-body>\r\n </fd-action-sheet>\r\n <ng-template #buttonsTpl>\r\n <button\r\n *ngFor=\"let btn of notification.data?.UiActions\"\r\n fd-button\r\n [glyph]=\"btn.Icon\"\r\n [fdType]=\"btn.Status\"\r\n [label]=\"btn.Title | bbbTranslate\"\r\n fdCompact\r\n \r\n ></button>\r\n </ng-template>\r\n <button\r\n *ngIf=\"!notification.data?.uiOptions?.HideDeleteButton\"\r\n fd-button\r\n fdType=\"transparent\"\r\n [ariaLabel]=\"'Delete' | bbbTranslate\"\r\n [title]=\"'Delete' | bbbTranslate\"\r\n glyph=\"decline\"\r\n \r\n fdCompact\r\n ></button>\r\n <button\r\n *ngIf=\"!notification.data?.uiOptions?.HideShowButton\"\r\n fd-button\r\n fdType=\"transparent\"\r\n [ariaLabel]=\"'Show' | bbbTranslate\"\r\n [title]=\"'Show' | bbbTranslate\"\r\n glyph=\"show\"\r\n \r\n fdCompact\r\n ></button>\r\n </fd-notification-actions>\r\n</fd-notification-body> -->\r\n", styles: ["fd-notification-body{overflow-y:hidden}:host ::ng-deep .unset-positions{top:unset!important;left:unset!important;right:unset!important;bottom:unset!important}:host ::ng-deep .top-left{top:5rem!important;left:2rem!important}:host ::ng-deep .top-right{top:5rem!important;right:2rem!important}:host ::ng-deep .bottom-left{bottom:2rem!important;left:2rem!important}:host ::ng-deep .bottom-right{bottom:2rem!important;right:2rem!important}:host ::ng-deep .center-top{top:5rem!important;right:50%!important}:host ::ng-deep .center-bottom{bottom:2rem!important;right:50%!important}\n"], dependencies: [{ kind: "component", type: NotificationItemComponent, selector: "bsu-notification-item", inputs: ["option", "notificationItem", "showCloseButton"], outputs: ["viewed", "remove", "actionClick", "showEvent", "closeEvent"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
6651
6650
|
}
|
|
6652
6651
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UlNotifyPopupComponent, decorators: [{
|
|
6653
6652
|
type: Component,
|
|
6654
6653
|
args: [{ selector: 'bsu-ul-notify-popup', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<bsu-notification-item\r\n [showCloseButton]=\"true\"\r\n (actionClick)=\"onActionClick($event)\"\r\n [option]=\"notification.data\"\r\n [bodyOnly]=\"true\"\r\n (closeEvent)=\"onClose($event)\"\r\n (showEvent)=\"onShow($event)\"\r\n>\r\n</bsu-notification-item>\r\n\r\n<!-- <fd-notification-body\r\n [dir]=\"notification.data?.isRtl ? 'rtl' : 'ltr'\"\r\n (click)=\"notification.close(); notification.data?.callback()\"\r\n>\r\n <fd-avatar [circle]=\"true\" size=\"xs\" [image]=\"notification.data?.image\"></fd-avatar>\r\n <fd-notification-content>\r\n <fd-notification-header>\r\n <div fd-notification-indicator type=\"success\"></div>\r\n <h2 fd-notification-title [unread]=\"true\">\r\n {{ notification.data?.title }}\r\n </h2>\r\n </fd-notification-header>\r\n\r\n <p fd-notification-paragraph [innerHtml]=\"notification.data?.msg\"></p>\r\n </fd-notification-content>\r\n\r\n <fd-notification-actions>\r\n <fd-action-sheet #sheet *ngIf=\"notification.data?.uiOptions?.OverflowButtons; else buttonsTpl\">\r\n <fd-action-sheet-control>\r\n <button\r\n role=\"menu\"\r\n [ariaLabel]=\"'More' | bbbTranslate\"\r\n [title]=\"'More' | bbbTranslate\"\r\n fd-button\r\n fdType=\"transparent\"\r\n glyph=\"overflow\"\r\n ></button>\r\n </fd-action-sheet-control>\r\n\r\n <fd-action-sheet-body>\r\n <li\r\n *ngFor=\"let btn of notification.data?.UiActions\"\r\n fd-action-sheet-item\r\n [glyph]=\"btn.Icon\"\r\n [label]=\"btn.Title | bbbTranslate\"\r\n \r\n ></li>\r\n </fd-action-sheet-body>\r\n </fd-action-sheet>\r\n <ng-template #buttonsTpl>\r\n <button\r\n *ngFor=\"let btn of notification.data?.UiActions\"\r\n fd-button\r\n [glyph]=\"btn.Icon\"\r\n [fdType]=\"btn.Status\"\r\n [label]=\"btn.Title | bbbTranslate\"\r\n fdCompact\r\n \r\n ></button>\r\n </ng-template>\r\n <button\r\n *ngIf=\"!notification.data?.uiOptions?.HideDeleteButton\"\r\n fd-button\r\n fdType=\"transparent\"\r\n [ariaLabel]=\"'Delete' | bbbTranslate\"\r\n [title]=\"'Delete' | bbbTranslate\"\r\n glyph=\"decline\"\r\n \r\n fdCompact\r\n ></button>\r\n <button\r\n *ngIf=\"!notification.data?.uiOptions?.HideShowButton\"\r\n fd-button\r\n fdType=\"transparent\"\r\n [ariaLabel]=\"'Show' | bbbTranslate\"\r\n [title]=\"'Show' | bbbTranslate\"\r\n glyph=\"show\"\r\n \r\n fdCompact\r\n ></button>\r\n </fd-notification-actions>\r\n</fd-notification-body> -->\r\n", styles: ["fd-notification-body{overflow-y:hidden}:host ::ng-deep .unset-positions{top:unset!important;left:unset!important;right:unset!important;bottom:unset!important}:host ::ng-deep .top-left{top:5rem!important;left:2rem!important}:host ::ng-deep .top-right{top:5rem!important;right:2rem!important}:host ::ng-deep .bottom-left{bottom:2rem!important;left:2rem!important}:host ::ng-deep .bottom-right{bottom:2rem!important;right:2rem!important}:host ::ng-deep .center-top{top:5rem!important;right:50%!important}:host ::ng-deep .center-bottom{bottom:2rem!important;right:50%!important}\n"] }]
|
|
6655
|
-
}]
|
|
6654
|
+
}] });
|
|
6656
6655
|
|
|
6657
6656
|
function getDateService(_logService) {
|
|
6658
6657
|
const culture = BarsaApi.LoginFormData.Culture;
|
|
@@ -7758,21 +7757,22 @@ class UiUlvMainUiComponent extends BaseComponent {
|
|
|
7758
7757
|
this._ulvMainService.newInlineMo(false);
|
|
7759
7758
|
}
|
|
7760
7759
|
onEditMode() {
|
|
7761
|
-
this._ulvMainService.setInlineEdit(this._ulvMainService.inlineEditMode);
|
|
7760
|
+
this._ulvMainService.setInlineEdit(!this._ulvMainService.inlineEditMode);
|
|
7762
7761
|
}
|
|
7763
|
-
onColumnSettings(
|
|
7764
|
-
this._openSettings('columns'
|
|
7762
|
+
onColumnSettings() {
|
|
7763
|
+
this._openSettings('columns');
|
|
7765
7764
|
}
|
|
7766
|
-
onSortSettings(
|
|
7767
|
-
this._openSettings('sort'
|
|
7765
|
+
onSortSettings() {
|
|
7766
|
+
this._openSettings('sort');
|
|
7768
7767
|
}
|
|
7769
|
-
onGroupbySettings(
|
|
7770
|
-
this._openSettings('groupby'
|
|
7768
|
+
onGroupbySettings() {
|
|
7769
|
+
this._openSettings('groupby');
|
|
7771
7770
|
}
|
|
7772
7771
|
onSortSettingsChange(sortSettings) {
|
|
7773
7772
|
this._ulvMainService.sortSettingChange(sortSettings);
|
|
7774
7773
|
}
|
|
7775
|
-
_openSettings(name
|
|
7774
|
+
_openSettings(name) {
|
|
7775
|
+
const device = this._portalService.deviceSize;
|
|
7776
7776
|
let component = null;
|
|
7777
7777
|
switch (name) {
|
|
7778
7778
|
case 'columns':
|
|
@@ -7788,11 +7788,13 @@ class UiUlvMainUiComponent extends BaseComponent {
|
|
|
7788
7788
|
const config = {
|
|
7789
7789
|
...this.dialogConfig,
|
|
7790
7790
|
data: { context: this.context },
|
|
7791
|
-
mobile: device === '
|
|
7792
|
-
|
|
7793
|
-
|
|
7794
|
-
|
|
7795
|
-
|
|
7791
|
+
mobile: device === 's',
|
|
7792
|
+
width: device === 's' ? '100svw' : this.dialogConfig.width,
|
|
7793
|
+
height: device === 's' ? '100svh' : this.dialogConfig.height,
|
|
7794
|
+
minWidth: device === 's' ? 'auto' : this.dialogConfig.minWidth,
|
|
7795
|
+
minHeight: device === 's' ? 'auto' : this.dialogConfig.minHeight,
|
|
7796
|
+
maxHeight: device === 's' ? '100%' : this.dialogConfig.maxHeight,
|
|
7797
|
+
maxWidth: device === 's' ? '100%' : this.dialogConfig.maxWidth
|
|
7796
7798
|
};
|
|
7797
7799
|
if (component !== null) {
|
|
7798
7800
|
const dialogRef = this._dialogService.open(component, config);
|
|
@@ -7912,11 +7914,11 @@ class UiUlvMainUiComponent extends BaseComponent {
|
|
|
7912
7914
|
});
|
|
7913
7915
|
}
|
|
7914
7916
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UiUlvMainUiComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
7915
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.6", type: UiUlvMainUiComponent, isStandalone: false, selector: "bsu-ui-ulv-main-ui", inputs: { context: "context", isReportPage: "isReportPage", inDialog: "inDialog", isMultiSelect: "isMultiSelect", layoutInfo: "layoutInfo", fullscreen: "fullscreen" }, host: { properties: { "class.control-readonly": "this.readonly", "class.control-disabled": "this.disable", "class.margin-ulv": "this.marginUlv" } }, providers: [UlvMainService], viewQueries: [{ propertyName: "_barsaUlvComponent", first: true, predicate: BarsaUlvMainComponent, descendants: true }, { propertyName: "searchPanelComponent", first: true, predicate: SearchPanelComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<bsu-barsa-ulv-main\r\n [shortcutHandler]=\"shortCuts$ | async\"\r\n [style.style.width]=\"!isMobile ? null : '100%'\"\r\n [layoutInfo]=\"layoutInfo\"\r\n [attr.isReportPage]=\"isReportPage\"\r\n [simpleSearchPanel]=\"simpleSearchPanel\"\r\n [viewerControl]=\"viewer$ | async\"\r\n [loading]=\"(mask$ | async) === true\"\r\n [viewerLoading]=\"(viwerMask$ | async) === true\"\r\n [hideViewerLoading]=\"(hideViewerLoading$ | async) === true\"\r\n [cssBackground]=\"cssBackground$ | async\"\r\n [standalone]=\"(standalone$ | async) === true\"\r\n [landscape]=\"(landscape$ | async) === true\"\r\n [hideUlvPageTitle]=\"(hideUlvPageTitle$ | async) === true\"\r\n [isReportPage]=\"isReportPage\"\r\n [deviceSize]=\"(deviceSize$ | async)!!\"\r\n [title]=\"title\"\r\n [allowGridColumnSort]=\"(gridAllowSort$ | async) === true\"\r\n [hidePaging]=\"(hidePaging$ | async) === true\"\r\n [searchPanelUi]=\"(searchPanelUi$ | async)!!\"\r\n [breadCrumbs]=\"(breadCrumbs$ | async)!!\"\r\n [allSearchPanelSettings]=\"(allSearchPanelSettings$ | async)!!\"\r\n [isAnonymous]=\"(isAnonymous$ | async)!!\"\r\n [canSaveGridSetting]=\"(canSaveGridSetting$ | async) === true\"\r\n [rtl]=\"(rtl$ | async)!!\"\r\n [hasSelected]=\"(hasSelected$ | async) === true\"\r\n [toolbarButtons]=\"(toolbarButtons$ | async)!! | seperatorFix\"\r\n [hideToolbar]=\"(hideToolbar$ | async) === true\"\r\n [gridSetting]=\"(gridSetting$ | async)!!\"\r\n [access]=\"(commandsAccess$ | async)!!\"\r\n [inDialog]=\"(inDialog$ | async) === true\"\r\n [inlineEditMode]=\"(inlineEditMode$ | async) === true\"\r\n [allowInlineEdit]=\"(allowInlineEdit$ | async) === true\"\r\n [viewCollection]=\"(viewCollection$ | async)!!\"\r\n [isMultiSelect]=\"(isMultiSelect$ | async) === true\"\r\n [useLayoutItemTextForControl]=\"(useLayoutItemTextForControl$ | async) === true\"\r\n [formSetting]=\"context.Setting.FormTemplate\"\r\n [hideTitle]=\"(hideTitle$ | async) === true\"\r\n [selectedSearchPanelSettings]=\"(selectedSearchPanelSettings$ | async)!!\"\r\n [searchPanelMoChanged]=\"(searchPanelMoChanged$ | async)!!\"\r\n [selectedSearchPanelSettingsId]=\"(selectedSearchPanelSettingsId$ | async)!!\"\r\n [hideSearchPanel]=\"(hideSearchPanel$ | async)!!\"\r\n [pagingSetting]=\"(pagingSetting$ | async)!!\"\r\n [context]=\"context\"\r\n [contentDensity]=\"contentDensity$ | async\"\r\n (closeEvent)=\"onClose()\"\r\n (searchPanelMoChange)=\"onSearchPanelMoChanged()\"\r\n (openManageFilters)=\"onOpenManageFilters()\"\r\n (collapsedChange)=\"onCollapsedChange($event)\"\r\n (hideSearchPanelClick)=\"onHideSearchPanelClick()\"\r\n (filterSave)=\"onFilterSave()\"\r\n (filterSaveAs)=\"onFilterSaveAs()\"\r\n (showFilterFieldsSetting)=\"onShowFilterFieldsSetting()\"\r\n (manageFilters)=\"onManageFilters()\"\r\n (clearSearch)=\"onClearSearch()\"\r\n (search)=\"onSearch()\"\r\n (pageChange)=\"onPageChange($event)\"\r\n (selectSearchPanelSettings)=\"onSelectSearchPanelSettings($event)\"\r\n (shortCutCommand)=\"onShortcutCommand($event)\"\r\n (sortClick)=\"onSortSettings(
|
|
7917
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.6", type: UiUlvMainUiComponent, isStandalone: false, selector: "bsu-ui-ulv-main-ui", inputs: { context: "context", isReportPage: "isReportPage", inDialog: "inDialog", isMultiSelect: "isMultiSelect", layoutInfo: "layoutInfo", fullscreen: "fullscreen" }, host: { properties: { "class.control-readonly": "this.readonly", "class.control-disabled": "this.disable", "class.margin-ulv": "this.marginUlv" } }, providers: [UlvMainService], viewQueries: [{ propertyName: "_barsaUlvComponent", first: true, predicate: BarsaUlvMainComponent, descendants: true }, { propertyName: "searchPanelComponent", first: true, predicate: SearchPanelComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<bsu-barsa-ulv-main\r\n [shortcutHandler]=\"shortCuts$ | async\"\r\n [style.style.width]=\"!isMobile ? null : '100%'\"\r\n [layoutInfo]=\"layoutInfo\"\r\n [attr.isReportPage]=\"isReportPage\"\r\n [simpleSearchPanel]=\"simpleSearchPanel\"\r\n [viewerControl]=\"viewer$ | async\"\r\n [loading]=\"(mask$ | async) === true\"\r\n [viewerLoading]=\"(viwerMask$ | async) === true\"\r\n [hideViewerLoading]=\"(hideViewerLoading$ | async) === true\"\r\n [cssBackground]=\"cssBackground$ | async\"\r\n [standalone]=\"(standalone$ | async) === true\"\r\n [landscape]=\"(landscape$ | async) === true\"\r\n [hideUlvPageTitle]=\"(hideUlvPageTitle$ | async) === true\"\r\n [isReportPage]=\"isReportPage\"\r\n [deviceSize]=\"(deviceSize$ | async)!!\"\r\n [title]=\"title\"\r\n [allowGridColumnSort]=\"(gridAllowSort$ | async) === true\"\r\n [hidePaging]=\"(hidePaging$ | async) === true\"\r\n [searchPanelUi]=\"(searchPanelUi$ | async)!!\"\r\n [breadCrumbs]=\"(breadCrumbs$ | async)!!\"\r\n [allSearchPanelSettings]=\"(allSearchPanelSettings$ | async)!!\"\r\n [isAnonymous]=\"(isAnonymous$ | async)!!\"\r\n [canSaveGridSetting]=\"(canSaveGridSetting$ | async) === true\"\r\n [rtl]=\"(rtl$ | async)!!\"\r\n [hasSelected]=\"(hasSelected$ | async) === true\"\r\n [toolbarButtons]=\"(toolbarButtons$ | async)!! | seperatorFix\"\r\n [hideToolbar]=\"(hideToolbar$ | async) === true\"\r\n [gridSetting]=\"(gridSetting$ | async)!!\"\r\n [access]=\"(commandsAccess$ | async)!!\"\r\n [inDialog]=\"(inDialog$ | async) === true\"\r\n [inlineEditMode]=\"(inlineEditMode$ | async) === true\"\r\n [allowInlineEdit]=\"(allowInlineEdit$ | async) === true\"\r\n [viewCollection]=\"(viewCollection$ | async)!!\"\r\n [isMultiSelect]=\"(isMultiSelect$ | async) === true\"\r\n [useLayoutItemTextForControl]=\"(useLayoutItemTextForControl$ | async) === true\"\r\n [formSetting]=\"context.Setting.FormTemplate\"\r\n [hideTitle]=\"(hideTitle$ | async) === true\"\r\n [selectedSearchPanelSettings]=\"(selectedSearchPanelSettings$ | async)!!\"\r\n [searchPanelMoChanged]=\"(searchPanelMoChanged$ | async)!!\"\r\n [selectedSearchPanelSettingsId]=\"(selectedSearchPanelSettingsId$ | async)!!\"\r\n [hideSearchPanel]=\"(hideSearchPanel$ | async)!!\"\r\n [pagingSetting]=\"(pagingSetting$ | async)!!\"\r\n [context]=\"context\"\r\n [contentDensity]=\"contentDensity$ | async\"\r\n (closeEvent)=\"onClose()\"\r\n (searchPanelMoChange)=\"onSearchPanelMoChanged()\"\r\n (openManageFilters)=\"onOpenManageFilters()\"\r\n (collapsedChange)=\"onCollapsedChange($event)\"\r\n (hideSearchPanelClick)=\"onHideSearchPanelClick()\"\r\n (filterSave)=\"onFilterSave()\"\r\n (filterSaveAs)=\"onFilterSaveAs()\"\r\n (showFilterFieldsSetting)=\"onShowFilterFieldsSetting()\"\r\n (manageFilters)=\"onManageFilters()\"\r\n (clearSearch)=\"onClearSearch()\"\r\n (search)=\"onSearch()\"\r\n (pageChange)=\"onPageChange($event)\"\r\n (selectSearchPanelSettings)=\"onSelectSearchPanelSettings($event)\"\r\n (shortCutCommand)=\"onShortcutCommand($event)\"\r\n (sortClick)=\"onSortSettings()\"\r\n (groupbyClick)=\"onGroupbySettings()\"\r\n (columnClick)=\"onColumnSettings()\"\r\n (editModeClick)=\"onEditMode()\"\r\n (viewClick)=\"onChangeView($event)\"\r\n (createNewInlineMo)=\"onToolbarCreateNewInlineMo()\"\r\n>\r\n</bsu-barsa-ulv-main>\r\n", styles: [":host{width:100%;min-height:100%;height:auto;display:flex;flex-direction:column;cursor:default}.margin-ulv{margin-bottom:.25rem;margin-top:.1875rem}\n"], dependencies: [{ kind: "directive", type: i2.ShortcutHandlerDirective, selector: "[shortcutHandler]", inputs: ["shortcutHandler"], outputs: ["shortCutCommand"] }, { kind: "component", type: BarsaUlvMainComponent, selector: "bsu-barsa-ulv-main", inputs: ["component", "viewerControl", "hideViewerLoading", "loading", "hidePaging", "viewerLoading", "isReportPage", "cssBackground", "deviceSize", "shortcuts", "title", "searchPanelUi", "breadCrumbs", "allSearchPanelSettings", "isAnonymous", "canSaveGridSetting", "rtl", "hideUlvPageTitle", "selectedSearchPanelSettings", "searchPanelMoChanged", "selectedSearchPanelSettingsId", "hideSearchPanel", "pagingSetting", "contentDensity", "context", "isMobile", "standalone", "landscape", "simpleSearchPanel", "layoutInfo", "formSetting", "allowGridColumnSort", "useLayoutItemTextForControl", "hideTitle", "deviceName", "access", "hideToolbar", "toolbarButtons", "inlineEditMode", "allowInlineEdit", "gridSetting", "viewCollection", "reportView", "inDialog", "isMultiSelect", "cls", "hasSelected"], outputs: ["groupbyClick", "sortClick", "columnClick", "editModeClick", "viewClick", "createNewInlineMo", "closeEvent", "searchPanelMoChange", "openManageFilters", "collapsedChange", "hideSearchPanelClick", "filterSave", "filterSaveAs", "pageChange", "showFilterFieldsSetting", "manageFilters", "clearSearch", "search", "selectSearchPanelSettings"] }, { kind: "directive", type: ContentDensityDirective, selector: "[contentDensity]" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.SeperatorFixPipe, name: "seperatorFix" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
7916
7918
|
}
|
|
7917
7919
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UiUlvMainUiComponent, decorators: [{
|
|
7918
7920
|
type: Component,
|
|
7919
|
-
args: [{ selector: 'bsu-ui-ulv-main-ui', providers: [UlvMainService], changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<bsu-barsa-ulv-main\r\n [shortcutHandler]=\"shortCuts$ | async\"\r\n [style.style.width]=\"!isMobile ? null : '100%'\"\r\n [layoutInfo]=\"layoutInfo\"\r\n [attr.isReportPage]=\"isReportPage\"\r\n [simpleSearchPanel]=\"simpleSearchPanel\"\r\n [viewerControl]=\"viewer$ | async\"\r\n [loading]=\"(mask$ | async) === true\"\r\n [viewerLoading]=\"(viwerMask$ | async) === true\"\r\n [hideViewerLoading]=\"(hideViewerLoading$ | async) === true\"\r\n [cssBackground]=\"cssBackground$ | async\"\r\n [standalone]=\"(standalone$ | async) === true\"\r\n [landscape]=\"(landscape$ | async) === true\"\r\n [hideUlvPageTitle]=\"(hideUlvPageTitle$ | async) === true\"\r\n [isReportPage]=\"isReportPage\"\r\n [deviceSize]=\"(deviceSize$ | async)!!\"\r\n [title]=\"title\"\r\n [allowGridColumnSort]=\"(gridAllowSort$ | async) === true\"\r\n [hidePaging]=\"(hidePaging$ | async) === true\"\r\n [searchPanelUi]=\"(searchPanelUi$ | async)!!\"\r\n [breadCrumbs]=\"(breadCrumbs$ | async)!!\"\r\n [allSearchPanelSettings]=\"(allSearchPanelSettings$ | async)!!\"\r\n [isAnonymous]=\"(isAnonymous$ | async)!!\"\r\n [canSaveGridSetting]=\"(canSaveGridSetting$ | async) === true\"\r\n [rtl]=\"(rtl$ | async)!!\"\r\n [hasSelected]=\"(hasSelected$ | async) === true\"\r\n [toolbarButtons]=\"(toolbarButtons$ | async)!! | seperatorFix\"\r\n [hideToolbar]=\"(hideToolbar$ | async) === true\"\r\n [gridSetting]=\"(gridSetting$ | async)!!\"\r\n [access]=\"(commandsAccess$ | async)!!\"\r\n [inDialog]=\"(inDialog$ | async) === true\"\r\n [inlineEditMode]=\"(inlineEditMode$ | async) === true\"\r\n [allowInlineEdit]=\"(allowInlineEdit$ | async) === true\"\r\n [viewCollection]=\"(viewCollection$ | async)!!\"\r\n [isMultiSelect]=\"(isMultiSelect$ | async) === true\"\r\n [useLayoutItemTextForControl]=\"(useLayoutItemTextForControl$ | async) === true\"\r\n [formSetting]=\"context.Setting.FormTemplate\"\r\n [hideTitle]=\"(hideTitle$ | async) === true\"\r\n [selectedSearchPanelSettings]=\"(selectedSearchPanelSettings$ | async)!!\"\r\n [searchPanelMoChanged]=\"(searchPanelMoChanged$ | async)!!\"\r\n [selectedSearchPanelSettingsId]=\"(selectedSearchPanelSettingsId$ | async)!!\"\r\n [hideSearchPanel]=\"(hideSearchPanel$ | async)!!\"\r\n [pagingSetting]=\"(pagingSetting$ | async)!!\"\r\n [context]=\"context\"\r\n [contentDensity]=\"contentDensity$ | async\"\r\n (closeEvent)=\"onClose()\"\r\n (searchPanelMoChange)=\"onSearchPanelMoChanged()\"\r\n (openManageFilters)=\"onOpenManageFilters()\"\r\n (collapsedChange)=\"onCollapsedChange($event)\"\r\n (hideSearchPanelClick)=\"onHideSearchPanelClick()\"\r\n (filterSave)=\"onFilterSave()\"\r\n (filterSaveAs)=\"onFilterSaveAs()\"\r\n (showFilterFieldsSetting)=\"onShowFilterFieldsSetting()\"\r\n (manageFilters)=\"onManageFilters()\"\r\n (clearSearch)=\"onClearSearch()\"\r\n (search)=\"onSearch()\"\r\n (pageChange)=\"onPageChange($event)\"\r\n (selectSearchPanelSettings)=\"onSelectSearchPanelSettings($event)\"\r\n (shortCutCommand)=\"onShortcutCommand($event)\"\r\n (sortClick)=\"onSortSettings(
|
|
7921
|
+
args: [{ selector: 'bsu-ui-ulv-main-ui', providers: [UlvMainService], changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<bsu-barsa-ulv-main\r\n [shortcutHandler]=\"shortCuts$ | async\"\r\n [style.style.width]=\"!isMobile ? null : '100%'\"\r\n [layoutInfo]=\"layoutInfo\"\r\n [attr.isReportPage]=\"isReportPage\"\r\n [simpleSearchPanel]=\"simpleSearchPanel\"\r\n [viewerControl]=\"viewer$ | async\"\r\n [loading]=\"(mask$ | async) === true\"\r\n [viewerLoading]=\"(viwerMask$ | async) === true\"\r\n [hideViewerLoading]=\"(hideViewerLoading$ | async) === true\"\r\n [cssBackground]=\"cssBackground$ | async\"\r\n [standalone]=\"(standalone$ | async) === true\"\r\n [landscape]=\"(landscape$ | async) === true\"\r\n [hideUlvPageTitle]=\"(hideUlvPageTitle$ | async) === true\"\r\n [isReportPage]=\"isReportPage\"\r\n [deviceSize]=\"(deviceSize$ | async)!!\"\r\n [title]=\"title\"\r\n [allowGridColumnSort]=\"(gridAllowSort$ | async) === true\"\r\n [hidePaging]=\"(hidePaging$ | async) === true\"\r\n [searchPanelUi]=\"(searchPanelUi$ | async)!!\"\r\n [breadCrumbs]=\"(breadCrumbs$ | async)!!\"\r\n [allSearchPanelSettings]=\"(allSearchPanelSettings$ | async)!!\"\r\n [isAnonymous]=\"(isAnonymous$ | async)!!\"\r\n [canSaveGridSetting]=\"(canSaveGridSetting$ | async) === true\"\r\n [rtl]=\"(rtl$ | async)!!\"\r\n [hasSelected]=\"(hasSelected$ | async) === true\"\r\n [toolbarButtons]=\"(toolbarButtons$ | async)!! | seperatorFix\"\r\n [hideToolbar]=\"(hideToolbar$ | async) === true\"\r\n [gridSetting]=\"(gridSetting$ | async)!!\"\r\n [access]=\"(commandsAccess$ | async)!!\"\r\n [inDialog]=\"(inDialog$ | async) === true\"\r\n [inlineEditMode]=\"(inlineEditMode$ | async) === true\"\r\n [allowInlineEdit]=\"(allowInlineEdit$ | async) === true\"\r\n [viewCollection]=\"(viewCollection$ | async)!!\"\r\n [isMultiSelect]=\"(isMultiSelect$ | async) === true\"\r\n [useLayoutItemTextForControl]=\"(useLayoutItemTextForControl$ | async) === true\"\r\n [formSetting]=\"context.Setting.FormTemplate\"\r\n [hideTitle]=\"(hideTitle$ | async) === true\"\r\n [selectedSearchPanelSettings]=\"(selectedSearchPanelSettings$ | async)!!\"\r\n [searchPanelMoChanged]=\"(searchPanelMoChanged$ | async)!!\"\r\n [selectedSearchPanelSettingsId]=\"(selectedSearchPanelSettingsId$ | async)!!\"\r\n [hideSearchPanel]=\"(hideSearchPanel$ | async)!!\"\r\n [pagingSetting]=\"(pagingSetting$ | async)!!\"\r\n [context]=\"context\"\r\n [contentDensity]=\"contentDensity$ | async\"\r\n (closeEvent)=\"onClose()\"\r\n (searchPanelMoChange)=\"onSearchPanelMoChanged()\"\r\n (openManageFilters)=\"onOpenManageFilters()\"\r\n (collapsedChange)=\"onCollapsedChange($event)\"\r\n (hideSearchPanelClick)=\"onHideSearchPanelClick()\"\r\n (filterSave)=\"onFilterSave()\"\r\n (filterSaveAs)=\"onFilterSaveAs()\"\r\n (showFilterFieldsSetting)=\"onShowFilterFieldsSetting()\"\r\n (manageFilters)=\"onManageFilters()\"\r\n (clearSearch)=\"onClearSearch()\"\r\n (search)=\"onSearch()\"\r\n (pageChange)=\"onPageChange($event)\"\r\n (selectSearchPanelSettings)=\"onSelectSearchPanelSettings($event)\"\r\n (shortCutCommand)=\"onShortcutCommand($event)\"\r\n (sortClick)=\"onSortSettings()\"\r\n (groupbyClick)=\"onGroupbySettings()\"\r\n (columnClick)=\"onColumnSettings()\"\r\n (editModeClick)=\"onEditMode()\"\r\n (viewClick)=\"onChangeView($event)\"\r\n (createNewInlineMo)=\"onToolbarCreateNewInlineMo()\"\r\n>\r\n</bsu-barsa-ulv-main>\r\n", styles: [":host{width:100%;min-height:100%;height:auto;display:flex;flex-direction:column;cursor:default}.margin-ulv{margin-bottom:.25rem;margin-top:.1875rem}\n"] }]
|
|
7920
7922
|
}], ctorParameters: () => [], propDecorators: { context: [{
|
|
7921
7923
|
type: Input
|
|
7922
7924
|
}], isReportPage: [{
|
|
@@ -8604,6 +8606,8 @@ class UiPdfViewerComponent extends DeviceInfoFieldBaseComponent {
|
|
|
8604
8606
|
ngOnInit() {
|
|
8605
8607
|
this.uploadingState$ = this._uploadService.uploadingState$;
|
|
8606
8608
|
super.ngOnInit();
|
|
8609
|
+
this.hideRemove = BarsaApi.Common.Util.TryGetValue(this, 'Setting.JsonExtraProp.HideRemove', null);
|
|
8610
|
+
this.hideUpload = BarsaApi.Common.Util.TryGetValue(this, 'Setting.JsonExtraProp.HideUpload', null);
|
|
8607
8611
|
switch (this.parameters?.ShowMode) {
|
|
8608
8612
|
case '2':
|
|
8609
8613
|
this._minheight = null;
|
|
@@ -8837,11 +8841,11 @@ class UiPdfViewerComponent extends DeviceInfoFieldBaseComponent {
|
|
|
8837
8841
|
BarsaApi.Ul.LoadingMask.Mask(this._el.nativeElement);
|
|
8838
8842
|
}
|
|
8839
8843
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UiPdfViewerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
8840
|
-
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: "_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) {\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) {\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"], 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$5.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"] }, { kind: "directive", type: ContentDensityDirective, selector: "[contentDensity]" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
8844
|
+
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: "_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"], 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$5.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"] }, { kind: "directive", type: ContentDensityDirective, selector: "[contentDensity]" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
8841
8845
|
}
|
|
8842
8846
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UiPdfViewerComponent, decorators: [{
|
|
8843
8847
|
type: Component,
|
|
8844
|
-
args: [{ selector: 'bsu-ui-pdf-viewer', providers: [UploadService], changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, 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) {\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) {\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"] }]
|
|
8848
|
+
args: [{ selector: 'bsu-ui-pdf-viewer', providers: [UploadService], changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, 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"] }]
|
|
8845
8849
|
}], propDecorators: { _pdfViewerOnDemand: [{
|
|
8846
8850
|
type: ViewChild,
|
|
8847
8851
|
args: ['pdfViewerOnDemand']
|
|
@@ -8985,11 +8989,11 @@ class UiFileLinearListBoxComponent extends DeviceInfoFieldBaseComponent {
|
|
|
8985
8989
|
this._fileCountSource.next(value?.filter((c) => !c.IsDeleted).length);
|
|
8986
8990
|
}
|
|
8987
8991
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UiFileLinearListBoxComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
8988
|
-
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')
|
|
8992
|
+
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 ? '100vw' : '30vw'\"\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 style=\"display: flex\">\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 }\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: i5$5.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$6.ObjectNumberComponent, selector: "fd-object-number", inputs: ["number", "decimal", "unit", "emphasized", "large", "status", "class", "ariaLabelledBy", "ariaLabel"] }, { kind: "component", type: i10$1.ObjectStatusComponent, selector: "[fd-object-status]", inputs: ["class", "status", "glyph", "glyphFont", "label", "glyphAriaLabel", "indicationColor", "clickable", "inverted", "large", "secondaryIndication", "textTemplate"] }, { kind: "component", type: i7$3.PopoverControlComponent, selector: "fd-popover-control, [fdPopoverControl]" }, { kind: "component", type: i7$3.PopoverBodyComponent, selector: "fd-popover-body", inputs: ["minWidth", "maxWidth", "minHeight", "maxHeight"] }, { kind: "directive", type: i7$3.PopoverBodyFooterDirective, selector: "[fdPopoverBodyFooter], [fd-popover-body-footer]" }, { kind: "component", type: i7$3.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", "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: 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 }); }
|
|
8989
8993
|
}
|
|
8990
8994
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UiFileLinearListBoxComponent, decorators: [{
|
|
8991
8995
|
type: Component,
|
|
8992
|
-
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')
|
|
8996
|
+
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 ? '100vw' : '30vw'\"\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 style=\"display: flex\">\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 }\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"] }]
|
|
8993
8997
|
}], propDecorators: { fileUploadComponent: [{
|
|
8994
8998
|
type: ViewChild,
|
|
8995
8999
|
args: [FileUploaderComponent, { static: false }]
|
|
@@ -9285,11 +9289,11 @@ class LyLayoutContainerComponent extends LayoutPanelBaseComponent {
|
|
|
9285
9289
|
this.display = this.visible ? 'flex' : 'none';
|
|
9286
9290
|
}
|
|
9287
9291
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: LyLayoutContainerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
9288
|
-
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: {
|
|
9292
|
+
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]=\"isSearchPanel ? 'unset' : 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 }); }
|
|
9289
9293
|
}
|
|
9290
9294
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: LyLayoutContainerComponent, decorators: [{
|
|
9291
9295
|
type: Component,
|
|
9292
|
-
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: {
|
|
9296
|
+
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]=\"isSearchPanel ? 'unset' : 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"] }]
|
|
9293
9297
|
}], propDecorators: { renderItems: [{
|
|
9294
9298
|
type: Input
|
|
9295
9299
|
}], isRoot: [{
|
|
@@ -9401,11 +9405,11 @@ class LyTabPageComponent extends LayoutPanelBaseComponent {
|
|
|
9401
9405
|
this._layoutService.refreshLayout();
|
|
9402
9406
|
}
|
|
9403
9407
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: LyTabPageComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
9404
|
-
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
|
|
9408
|
+
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]=\"isSearchPanel ? 'unset' : 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 }); }
|
|
9405
9409
|
}
|
|
9406
9410
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: LyTabPageComponent, decorators: [{
|
|
9407
9411
|
type: Component,
|
|
9408
|
-
args: [{ selector: 'bsu-ly-tab-page', changeDetection: ChangeDetectionStrategy.OnPush, providers: [LayoutService, TabpageService], standalone: false, template: "<ng-container *untilInView=\"el\">\r\n
|
|
9412
|
+
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]=\"isSearchPanel ? 'unset' : 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"] }]
|
|
9409
9413
|
}], propDecorators: { vcr: [{
|
|
9410
9414
|
type: ViewChild,
|
|
9411
9415
|
args: ['placeholder', { read: ViewContainerRef }]
|
|
@@ -9565,6 +9569,18 @@ class FundamentalDynamicFormComponent extends BaseComponent {
|
|
|
9565
9569
|
}
|
|
9566
9570
|
}
|
|
9567
9571
|
_refreshSize() {
|
|
9572
|
+
if (this._dynamicPageComponent) {
|
|
9573
|
+
const x = this._dynamicPageComponent;
|
|
9574
|
+
/** @hidden */
|
|
9575
|
+
const originalMethod = x._getCalculatedFullHeight;
|
|
9576
|
+
x._getCalculatedFullHeight = function (element) {
|
|
9577
|
+
const result = originalMethod.apply(this, [element]);
|
|
9578
|
+
if (result) {
|
|
9579
|
+
return result.replace('vh', 'svh'); // تبدیل vh به svh در رشته خروجی
|
|
9580
|
+
}
|
|
9581
|
+
return result;
|
|
9582
|
+
};
|
|
9583
|
+
}
|
|
9568
9584
|
this._dynamicPageComponent?.refreshSize();
|
|
9569
9585
|
this._toolbarComponent?.updateCollapsibleItems();
|
|
9570
9586
|
}
|
|
@@ -9714,6 +9730,7 @@ class UiLinearListContainerWithButtonComponent extends DeviceInfoFieldBaseCompon
|
|
|
9714
9730
|
this.term = '';
|
|
9715
9731
|
this.termSource = new Subject();
|
|
9716
9732
|
this.rtl = BarsaApi.LoginFormData.IsRtl;
|
|
9733
|
+
this._dialogService = inject(DialogService);
|
|
9717
9734
|
this.showUlvSource = new Subject();
|
|
9718
9735
|
this._setWidth = false;
|
|
9719
9736
|
this._firstVisible = false;
|
|
@@ -10693,11 +10710,11 @@ class LyVerticalLayoutComponent extends LayoutItemBaseComponent {
|
|
|
10693
10710
|
this.layoutService.removeHorizontal(this.id);
|
|
10694
10711
|
}
|
|
10695
10712
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: LyVerticalLayoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
10696
|
-
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: {
|
|
10713
|
+
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 }); }
|
|
10697
10714
|
}
|
|
10698
10715
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: LyVerticalLayoutComponent, decorators: [{
|
|
10699
10716
|
type: Component,
|
|
10700
|
-
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: {
|
|
10717
|
+
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"] }]
|
|
10701
10718
|
}], ctorParameters: () => [], propDecorators: { flex: [{
|
|
10702
10719
|
type: HostBinding,
|
|
10703
10720
|
args: ['style.flex']
|
|
@@ -10752,11 +10769,11 @@ class LyHorizontalLayoutComponent extends LayoutItemBaseComponent {
|
|
|
10752
10769
|
}
|
|
10753
10770
|
}
|
|
10754
10771
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: LyHorizontalLayoutComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
10755
|
-
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: {
|
|
10772
|
+
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]=\"isSearchPanel ? 'unset' : 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 }); }
|
|
10756
10773
|
}
|
|
10757
10774
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: LyHorizontalLayoutComponent, decorators: [{
|
|
10758
10775
|
type: Component,
|
|
10759
|
-
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: {
|
|
10776
|
+
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]=\"isSearchPanel ? 'unset' : 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"] }]
|
|
10760
10777
|
}], propDecorators: { renderItems: [{
|
|
10761
10778
|
type: Input
|
|
10762
10779
|
}], events: [{
|
|
@@ -11017,11 +11034,11 @@ class UiPicturesInfoComponent extends DeviceInfoFieldBaseComponent {
|
|
|
11017
11034
|
this.value = value;
|
|
11018
11035
|
}
|
|
11019
11036
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UiPicturesInfoComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
11020
|
-
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 && selectedIndex >-1){\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]=\"mediaData[selectedIndex].label\"\r\n [src]=\"mediaData[selectedIndex].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\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)=\"uploader.open()\"\r\n ></button>\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(selectedIndex)\"\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 [deviceSize]=\"deviceSize\"\r\n [title]=\"'AttachPicture' | bbbTranslate\"\r\n [files]=\"mediaData\"\r\n [isImageGallery]=\"true\"\r\n [isHorizontal]=\"isThumbnailHorizontal\"\r\n [selectedIndex]=\"selectedIndex\"\r\n (selectedIndexChange)=\"selectedIndex = $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]=\"mediaData\"\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 }\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"], 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$4.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$4.CardContentComponent, selector: "fd-card-content" }, { kind: "component", type: i7$4.CardFooterComponent, selector: "fd-card-footer" }, { kind: "directive", type: i7$4.CardFooterActionItemDirective, selector: "[fdCardFooterActionItem]" }, { kind: "component", type: i5$5.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: "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: 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: 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", "selectedIndex", "scrollToThumbnailIndex"], outputs: ["selectedIndexChange"] }, { 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 }); }
|
|
11037
|
+
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 && selectedIndex >-1){\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]=\"mediaData[selectedIndex].label\"\r\n [src]=\"mediaData[selectedIndex].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\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)=\"uploader.open()\"\r\n ></button>\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(selectedIndex)\"\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 [deviceSize]=\"deviceSize\"\r\n [title]=\"'AttachPicture' | bbbTranslate\"\r\n [files]=\"mediaData\"\r\n [isImageGallery]=\"true\"\r\n [isHorizontal]=\"isThumbnailHorizontal\"\r\n [selectedIndex]=\"selectedIndex\"\r\n (selectedIndexChange)=\"selectedIndex = $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"], 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$4.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$4.CardContentComponent, selector: "fd-card-content" }, { kind: "component", type: i7$4.CardFooterComponent, selector: "fd-card-footer" }, { kind: "directive", type: i7$4.CardFooterActionItemDirective, selector: "[fdCardFooterActionItem]" }, { kind: "component", type: i5$5.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: "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: 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: 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", "selectedIndex", "scrollToThumbnailIndex"], outputs: ["selectedIndexChange"] }, { 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 }); }
|
|
11021
11038
|
}
|
|
11022
11039
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: UiPicturesInfoComponent, decorators: [{
|
|
11023
11040
|
type: Component,
|
|
11024
|
-
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 && selectedIndex >-1){\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]=\"mediaData[selectedIndex].label\"\r\n [src]=\"mediaData[selectedIndex].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\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)=\"uploader.open()\"\r\n ></button>\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(selectedIndex)\"\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 [deviceSize]=\"deviceSize\"\r\n [title]=\"'AttachPicture' | bbbTranslate\"\r\n [files]=\"mediaData\"\r\n [isImageGallery]=\"true\"\r\n [isHorizontal]=\"isThumbnailHorizontal\"\r\n [selectedIndex]=\"selectedIndex\"\r\n (selectedIndexChange)=\"selectedIndex = $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]=\"mediaData\"\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 }\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"] }]
|
|
11041
|
+
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 && selectedIndex >-1){\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]=\"mediaData[selectedIndex].label\"\r\n [src]=\"mediaData[selectedIndex].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\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)=\"uploader.open()\"\r\n ></button>\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(selectedIndex)\"\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 [deviceSize]=\"deviceSize\"\r\n [title]=\"'AttachPicture' | bbbTranslate\"\r\n [files]=\"mediaData\"\r\n [isImageGallery]=\"true\"\r\n [isHorizontal]=\"isThumbnailHorizontal\"\r\n [selectedIndex]=\"selectedIndex\"\r\n (selectedIndexChange)=\"selectedIndex = $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"] }]
|
|
11025
11042
|
}], propDecorators: { _fileUploader: [{
|
|
11026
11043
|
type: ViewChild,
|
|
11027
11044
|
args: [FileUploaderComponent]
|
|
@@ -13405,11 +13422,11 @@ class LyLayoutPanelComponent extends LayoutPanelBaseComponent {
|
|
|
13405
13422
|
this._cdr.detectChanges();
|
|
13406
13423
|
}
|
|
13407
13424
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: LyLayoutPanelComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
13408
|
-
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: {
|
|
13425
|
+
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]=\"isSearchPanel ? 'unset' : 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$a.PanelComponent, selector: "fd-panel", inputs: ["class", "fixed", "id", "expandId", "expandAriaLabel", "expandAriaLabelledBy", "expanded", "transparent", "noRadius"], outputs: ["expandedChange"] }, { kind: "directive", type: i3$a.PanelContentDirective, selector: "[fd-panel-content]", inputs: ["height", "minHeight", "maxHeight", "ariaLabel", "ariaLabelledBy", "role", "noPadding", "transparent", "id"] }, { kind: "directive", type: i3$a.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 }); }
|
|
13409
13426
|
}
|
|
13410
13427
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: LyLayoutPanelComponent, decorators: [{
|
|
13411
13428
|
type: Component,
|
|
13412
|
-
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: {
|
|
13429
|
+
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]=\"isSearchPanel ? 'unset' : 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"] }]
|
|
13413
13430
|
}], propDecorators: { renderItems: [{
|
|
13414
13431
|
type: Input
|
|
13415
13432
|
}], isRoot: [{
|
|
@@ -17153,7 +17170,7 @@ class NotificationPopupService {
|
|
|
17153
17170
|
Image: null,
|
|
17154
17171
|
Title: null,
|
|
17155
17172
|
Icon: false,
|
|
17156
|
-
Delay:
|
|
17173
|
+
Delay: 80000,
|
|
17157
17174
|
Closable: true,
|
|
17158
17175
|
DelayIndicator: true,
|
|
17159
17176
|
CloseOnClick: true,
|
|
@@ -17190,6 +17207,7 @@ class NotificationPopupService {
|
|
|
17190
17207
|
_getNotificationConfig(image, title, uiOptions, msg, mo, callback) {
|
|
17191
17208
|
return {
|
|
17192
17209
|
id: getUniqueId(3),
|
|
17210
|
+
shouldTrapFocus: false,
|
|
17193
17211
|
data: {
|
|
17194
17212
|
mo,
|
|
17195
17213
|
image,
|