barsa-sap-ui 1.0.378 → 1.0.380
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/lib/barsa-search-form/barsa-search-form.component.mjs +1 -1
- package/esm2020/lib/barsa-table-header/barsa-table-header.component.mjs +2 -2
- package/esm2020/lib/card-view-content/card-view-content.component.mjs +26 -3
- package/esm2020/lib/fundamental-dynamic-form/fundamental-dynamic-form.component.mjs +9 -3
- package/esm2020/lib/ly-layout-panel/ly-layout-panel.component.mjs +3 -3
- package/esm2020/lib/no-data/no-data.component.mjs +2 -2
- package/esm2020/lib/report-view-renderer.directive.mjs +5 -2
- package/esm2020/lib/ui-card-view/ui-card-view.component.mjs +3 -3
- package/esm2020/lib/ui-form-panel/ui-form-panel.component.mjs +29 -4
- package/esm2020/lib/ui-report-container/ui-report-container.component.mjs +3 -3
- package/esm2020/lib/ui-table-view/ui-table-view.component.mjs +3 -3
- package/esm2020/lib/ulv-toolbar/ulv-toolbar.component.mjs +3 -3
- package/fesm2015/barsa-sap-ui.mjs +83 -24
- package/fesm2015/barsa-sap-ui.mjs.map +1 -1
- package/fesm2020/barsa-sap-ui.mjs +79 -23
- package/fesm2020/barsa-sap-ui.mjs.map +1 -1
- package/lib/card-view-content/card-view-content.component.d.ts +7 -1
- package/lib/fundamental-dynamic-form/fundamental-dynamic-form.component.d.ts +4 -1
- package/lib/report-view-renderer.directive.d.ts +2 -1
- package/lib/ui-form-panel/ui-form-panel.component.d.ts +5 -2
- package/package.json +1 -1
|
@@ -21,7 +21,7 @@ export class BarsaSearchFormComponent extends UiFormPanelComponent {
|
|
|
21
21
|
}
|
|
22
22
|
}
|
|
23
23
|
BarsaSearchFormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: BarsaSearchFormComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
24
|
-
BarsaSearchFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: BarsaSearchFormComponent, selector: "bsu-barsa-search-form", providers: [FormPanelService], usesInheritance: true, ngImport: i0, template: "<bsu-fundamental-dynamic-form\r\n [removeContentPadding]=\"(headerRemoveContentPadding$ | async)!!\"\r\n [breadCrumbs]=\"breadCrumbs$ | async\"\r\n [description]=\"(headerDescription$ | async)!!\"\r\n [title]=\"(title$ | async)!!\"\r\n [subtitle]=\"(headerSubtitle$ | async)!!\"\r\n [toolbarItems]=\"toolbarItems$ | async | tlbButtons: 'inFooter':false\"\r\n [layoutActions]=\"toolbarItems$ | async | tlbButtons: 'inFooter':true\"\r\n [toolbarVisible]=\"(toolbarVisible$ | async)!!\"\r\n [facetList]=\"(headerLayout$ | async)?.FacetList2\"\r\n [parameters]=\"parameters\"\r\n [workflowPanelUi]=\"workflowPanelUi$ | async\"\r\n [isMobile]=\"isMobile\"\r\n [layout94]=\"layout94$ | async\"\r\n [rtl]=\"(rtl$ | async)!!\"\r\n [mask]=\"(mask$ | async)!!\"\r\n [dirValue]=\"(dirValue$ | async)!!\"\r\n [deviceSize]=\"(deviceSize$ | async)!!\"\r\n [contentDensity]=\"(contentDensity$ | async)!!\"\r\n [modernTabs]=\"(modernTabs$ | async)!!\"\r\n [avatar]=\"(avatar$ | async)!!\"\r\n [fieldDict]=\"(fieldDict$ | async)!!\"\r\n (close)=\"onClose2()\"\r\n (toolbarClick)=\"onToolbarClick($event)\"\r\n [contentIsPage]=\"parameters?.ContentIsPage\"\r\n (workflowChoiceClick)=\"onWorkflowChoiceClick($event)\"\r\n></bsu-fundamental-dynamic-form>\r\n", styles: [""], dependencies: [{ kind: "component", type: i1.FundamentalDynamicFormComponent, selector: "bsu-fundamental-dynamic-form", inputs: ["breadCrumbs", "toolbarVisible", "toolbarItems", "layoutActions", "layout94", "parameters", "workflowPanelUi", "context", "title", "subtitle", "description", "facetList", "fieldDict", "removeHeaderBorder", "removeContentPadding", "isMobile", "mo", "avatar", "rtl", "hideTitle", "hideClose", "hidePin", "mask", "canSend", "contentIsPage", "contentDensity", "deviceSize", "dirValue", "landscape", "standalone", "modernTabs", "formVisibilityStatus"], outputs: ["toolbarClick", "workflowChoiceClick", "close"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TlbButtonsPipe, name: "tlbButtons" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
24
|
+
BarsaSearchFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: BarsaSearchFormComponent, selector: "bsu-barsa-search-form", providers: [FormPanelService], usesInheritance: true, ngImport: i0, template: "<bsu-fundamental-dynamic-form\r\n [removeContentPadding]=\"(headerRemoveContentPadding$ | async)!!\"\r\n [breadCrumbs]=\"breadCrumbs$ | async\"\r\n [description]=\"(headerDescription$ | async)!!\"\r\n [title]=\"(title$ | async)!!\"\r\n [subtitle]=\"(headerSubtitle$ | async)!!\"\r\n [toolbarItems]=\"toolbarItems$ | async | tlbButtons: 'inFooter':false\"\r\n [layoutActions]=\"toolbarItems$ | async | tlbButtons: 'inFooter':true\"\r\n [toolbarVisible]=\"(toolbarVisible$ | async)!!\"\r\n [facetList]=\"(headerLayout$ | async)?.FacetList2\"\r\n [parameters]=\"parameters\"\r\n [workflowPanelUi]=\"workflowPanelUi$ | async\"\r\n [isMobile]=\"isMobile\"\r\n [layout94]=\"layout94$ | async\"\r\n [rtl]=\"(rtl$ | async)!!\"\r\n [mask]=\"(mask$ | async)!!\"\r\n [dirValue]=\"(dirValue$ | async)!!\"\r\n [deviceSize]=\"(deviceSize$ | async)!!\"\r\n [contentDensity]=\"(contentDensity$ | async)!!\"\r\n [modernTabs]=\"(modernTabs$ | async)!!\"\r\n [avatar]=\"(avatar$ | async)!!\"\r\n [fieldDict]=\"(fieldDict$ | async)!!\"\r\n (close)=\"onClose2()\"\r\n (toolbarClick)=\"onToolbarClick($event)\"\r\n [contentIsPage]=\"parameters?.ContentIsPage\"\r\n (workflowChoiceClick)=\"onWorkflowChoiceClick($event)\"\r\n></bsu-fundamental-dynamic-form>\r\n", styles: [""], dependencies: [{ kind: "component", type: i1.FundamentalDynamicFormComponent, selector: "bsu-fundamental-dynamic-form", inputs: ["breadCrumbs", "toolbarVisible", "toolbarItems", "layoutActions", "layout94", "parameters", "workflowPanelUi", "context", "title", "subtitle", "description", "facetList", "fieldDict", "removeHeaderBorder", "removeContentPadding", "isMobile", "mo", "avatar", "rtl", "hideTitle", "hideClose", "hidePin", "fullscreen", "mask", "canSend", "contentIsPage", "contentDensity", "deviceSize", "dirValue", "landscape", "standalone", "modernTabs", "formVisibilityStatus"], outputs: ["toolbarClick", "workflowChoiceClick", "close", "fullscreenRequest"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.TlbButtonsPipe, name: "tlbButtons" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
25
25
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: BarsaSearchFormComponent, decorators: [{
|
|
26
26
|
type: Component,
|
|
27
27
|
args: [{ selector: 'bsu-barsa-search-form', changeDetection: ChangeDetectionStrategy.OnPush, providers: [FormPanelService], template: "<bsu-fundamental-dynamic-form\r\n [removeContentPadding]=\"(headerRemoveContentPadding$ | async)!!\"\r\n [breadCrumbs]=\"breadCrumbs$ | async\"\r\n [description]=\"(headerDescription$ | async)!!\"\r\n [title]=\"(title$ | async)!!\"\r\n [subtitle]=\"(headerSubtitle$ | async)!!\"\r\n [toolbarItems]=\"toolbarItems$ | async | tlbButtons: 'inFooter':false\"\r\n [layoutActions]=\"toolbarItems$ | async | tlbButtons: 'inFooter':true\"\r\n [toolbarVisible]=\"(toolbarVisible$ | async)!!\"\r\n [facetList]=\"(headerLayout$ | async)?.FacetList2\"\r\n [parameters]=\"parameters\"\r\n [workflowPanelUi]=\"workflowPanelUi$ | async\"\r\n [isMobile]=\"isMobile\"\r\n [layout94]=\"layout94$ | async\"\r\n [rtl]=\"(rtl$ | async)!!\"\r\n [mask]=\"(mask$ | async)!!\"\r\n [dirValue]=\"(dirValue$ | async)!!\"\r\n [deviceSize]=\"(deviceSize$ | async)!!\"\r\n [contentDensity]=\"(contentDensity$ | async)!!\"\r\n [modernTabs]=\"(modernTabs$ | async)!!\"\r\n [avatar]=\"(avatar$ | async)!!\"\r\n [fieldDict]=\"(fieldDict$ | async)!!\"\r\n (close)=\"onClose2()\"\r\n (toolbarClick)=\"onToolbarClick($event)\"\r\n [contentIsPage]=\"parameters?.ContentIsPage\"\r\n (workflowChoiceClick)=\"onWorkflowChoiceClick($event)\"\r\n></bsu-fundamental-dynamic-form>\r\n" }]
|
|
@@ -111,10 +111,10 @@ export class BarsaTableHeaderComponent extends BaseComponent {
|
|
|
111
111
|
}
|
|
112
112
|
}
|
|
113
113
|
BarsaTableHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: BarsaTableHeaderComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
114
|
-
BarsaTableHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: BarsaTableHeaderComponent, selector: "bsu-barsa-table-header", inputs: { allChecked: "allChecked", isCheckList: "isCheckList", columns: "columns", fitWidth: "fitWidth", contextMenuItems: "contextMenuItems", contextMenuWidth: "contextMenuWidth", showViewButton: "showViewButton", hasSelected: "hasSelected", hideOpenIcon: "hideOpenIcon", disableOverflowContextMenu: "disableOverflowContextMenu", inlineEditMode: "inlineEditMode", hideHeader: "hideHeader", showDetailsInRow: "showDetailsInRow", viewSetting: "viewSetting", tableWidth: "tableWidth", resizedByUser: "resizedByUser", disableResponsive: "disableResponsive", rowIndicator: "rowIndicator", rtl: "rtl", deviceSize: "deviceSize", tableHeaderMode: "tableHeaderMode" }, outputs: { allCheckbox: "allCheckbox", columnResize: "columnResize", fitToContent: "fitToContent", fitToContainer: "fitToContainer", fitToColumn: "fitToColumn", sortAscending: "sortAscending", sortDescending: "sortDescending", filter: "filter" }, viewQueries: [{ propertyName: "thList", predicate: ["thRef"], descendants: true, read: ElementRef }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<thead\n fd-table-header\n [class.inline-edit]=\"inlineEditMode\"\n [class.smallColumns]=\"columnsSmallerThanTableWidth\"\n [attr.columnsWidth]=\"columnsWidth\"\n [attr.tableWidth]=\"tableWidth\"\n>\n <tr fd-table-row>\n <ng-container *ngIf=\"!hideHeader\">\n <th *ngIf=\"rowIndicator\" fd-table-cell fd-table-status-indicator></th>\n <th fd-table-cell *ngIf=\"isCheckList\">\n <fd-checkbox\n name=\"allCheckbox\"\n [ngModel]=\"allChecked\"\n (ngModelChange)=\"onAllCheckbox($event)\"\n ></fd-checkbox>\n </th>\n <th fd-table-cell *ngIf=\"!isCheckList\" class=\"single-select\"></th>\n <ng-container *ngFor=\"let column of columns; let i = index; let last = last; trackBy: _trackByColumn\">\n <th\n *ngIf=\"startIndex <= i\"\n #thRef\n [columnIndex]=\"i\"\n fd-table-cell\n [style.width]=\"last ? null : column.FieldTypeId === 38 ? '40px' : column.$Width2 || column.$Width\"\n [style.min-width]=\"last ? null : inlineEditMode ? '210px' : last ? '100%' : 'auto'\"\n resizable\n [rtl]=\"rtl\"\n [disableResize]=\"last\"\n (widthChange)=\"onColumnWidthChange(column)\"\n (widthChanging)=\"onColumnWidthChanging(i, column, $event)\"\n [disableResponsive]=\"disableResponsive\"\n [tableWidth]=\"tableWidth\"\n [columnsWidth]=\"columnsWidth\"\n [attr.columnName]=\"column.Name\"\n [attr.index]=\"i\"\n [ngClass]=\"column.$CSSClassName + ' column__' + column.Caption\"\n [class.displayIcon]=\"column.Extra?.IconDisplayTypeEnum\"\n >\n <fd-popover #menu>\n <fd-popover-control>\n <div style=\"display: flex\">\n <!-- FieldTypeId 38 means it is auto row number field-->\n <img\n [src]=\"column.Icon\"\n *ngIf=\"\n (column.Extra?.IconDisplayTypeEnum === 'Image' || column.FieldTypeId === 42) &&\n column.Icon;\n else captionTpl\n \"\n />\n <ng-template #captionTpl>\n {{ column.Caption | bbbTranslate }}\n </ng-template>\n </div>\n </fd-popover-control>\n <fd-popover-body>\n <ul fd-list>\n <li fd-list-item>\n <a fd-list-link (click)=\"onSortAscending(column, menu)\">\n <fd-menu-addon position=\"before\" glyph=\"sort-ascending\"></fd-menu-addon>\n <span fd-list-title\n >{{ ('Sort' | bbbTranslate) + ' ' }} {{ 'Ascending' | bbbTranslate }}</span\n >\n </a>\n </li>\n <li fd-list-item>\n <a fd-list-link (click)=\"onSortDescending(column, menu)\">\n <fd-menu-addon position=\"before\" glyph=\"sort-descending\"></fd-menu-addon>\n <span fd-list-title\n >{{ ('Sort' | bbbTranslate) + ' ' }} {{ 'Descending' | bbbTranslate }}</span\n >\n </a>\n </li>\n <li fd-list-item>\n <a fd-list-link (click)=\"menu.close(); fitToContent.emit(column)\">\n <fd-menu-addon position=\"before\"></fd-menu-addon>\n <span fd-list-title>{{ ('Fit Column To Content' | bbbTranslate) + ' ' }}</span>\n </a>\n </li>\n <li fd-list-item>\n <a fd-list-link (click)=\"menu.close(); fitToContainer.emit()\">\n <fd-menu-addon position=\"before\"></fd-menu-addon>\n <span fd-list-title>{{ ('All Columns In Page' | bbbTranslate) + ' ' }}</span>\n </a>\n </li>\n <li fd-list-item>\n <a fd-list-link (click)=\"menu.close(); fitToColumn.emit()\">\n <fd-menu-addon position=\"before\"></fd-menu-addon>\n <span fd-list-title>{{ ('Free Columns Size' | bbbTranslate) + ' ' }}</span>\n </a>\n </li>\n <!-- <li fd-list-item>\n <a fd-list-link (click)=\"onFilter(column, menu)\">\n <fd-menu-addon position=\"before\" glyph=\"filter\"></fd-menu-addon>\n <span fd-list-title>{{ 'Filter' | bbbTranslate }}</span>\n </a>\n </li> -->\n </ul>\n </fd-popover-body>\n </fd-popover>\n </th>\n </ng-container>\n <ng-container *ngIf=\"contextMenuItems && contextMenuItems.length > 0 && !inlineEditMode\">\n <th\n class=\"col-header col-context-menu\"\n fd-table-cell\n [fitContent]=\"disableOverflowContextMenu\"\n [style.width.px]=\"contextMenuWidth\"\n ></th>\n </ng-container>\n <th\n class=\"col-header col-details\"\n [style.width]=\"deviceSize === 's' ? 'auto' : '120px'\"\n fd-table-cell\n *ngIf=\"showDetailsInRow && !inlineEditMode\"\n ></th>\n <th class=\"col-header col-view\" [style.width.px]=\"40\" fd-table-cell *ngIf=\"showViewButton\"></th>\n </ng-container>\n </tr>\n</thead>\n", styles: [":host{display:contents;width:100%}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.CheckboxComponent, selector: "fd-checkbox", inputs: ["ariaLabel", "value", "ariaLabelledBy", "ariaDescribedBy", "title", "inputId", "state", "name", "label", "disabled", "tristate", "tristateSelectable", "labelClass", "required", "values"], outputs: ["focusChange"] }, { kind: "component", type: i4.ListComponent, selector: "[fd-list], [fdList]", inputs: ["dropdownMode", "multiInputMode", "mobileMode", "hasMessage", "noBorder", "navigationIndicator", "selection", "keyboardSupport", "byline"], outputs: ["focusEscapeList"] }, { kind: "component", type: i4.ListItemComponent, selector: "[fdListItem] ,[fd-list-item]", inputs: ["selected", "ariaDescribedBy", "noData", "action", "interactive", "growing", "counter", "unread", "selectedListItemScreenReaderText", "navigatedListItemScreenReaderText", "navigatableListItemScreenReaderText"], outputs: ["keyDown"] }, { kind: "directive", type: i4.ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap"] }, { kind: "directive", type: i4.ListLinkDirective, selector: "[fd-list-link], [fdListLink]", inputs: ["navigationIndicator", "navigated"] }, { kind: "component", type: i5.MenuAddonDirective, selector: "fd-menu-addon", inputs: ["position", "glyph", "submenuIndicator", "ariaHidden"] }, { kind: "component", type: i6.PopoverControlComponent, selector: "fd-popover-control" }, { kind: "component", type: i6.PopoverBodyComponent, selector: "fd-popover-body" }, { kind: "component", type: i6.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig"] }, { kind: "directive", type: i7.TableHeaderDirective, selector: "[fdTableHeader], [fd-table-header]", inputs: ["noBorderX", "noBorderY"] }, { kind: "directive", type: i7.TableRowDirective, selector: "[fdTableRow], [fd-table-row]", inputs: ["activable", "highlightActive", "hoverable", "focusable", "main", "secondary", "active"] }, { kind: "directive", type: i7.TableCellDirective, selector: "[fdTableCell], [fd-table-cell]", inputs: ["noBorderX", "noBorderY", "activable", "focusable", "tabindex", "hoverable", "fitContent", "noPadding", "noData", "key", "cellFocusedEventAnnouncer"] }, { kind: "directive", type: i7.TableStatusIndicatorDirective, selector: "[fdTableStatusIndicator], [fd-table-status-indicator]", inputs: ["status"] }, { kind: "component", type: i8.ResizableComponent, selector: "th[resizable]", inputs: ["disableResize", "rtl"], outputs: ["widthChange", "widthChanging"] }, { kind: "pipe", type: i8.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
114
|
+
BarsaTableHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: BarsaTableHeaderComponent, selector: "bsu-barsa-table-header", inputs: { allChecked: "allChecked", isCheckList: "isCheckList", columns: "columns", fitWidth: "fitWidth", contextMenuItems: "contextMenuItems", contextMenuWidth: "contextMenuWidth", showViewButton: "showViewButton", hasSelected: "hasSelected", hideOpenIcon: "hideOpenIcon", disableOverflowContextMenu: "disableOverflowContextMenu", inlineEditMode: "inlineEditMode", hideHeader: "hideHeader", showDetailsInRow: "showDetailsInRow", viewSetting: "viewSetting", tableWidth: "tableWidth", resizedByUser: "resizedByUser", disableResponsive: "disableResponsive", rowIndicator: "rowIndicator", rtl: "rtl", deviceSize: "deviceSize", tableHeaderMode: "tableHeaderMode" }, outputs: { allCheckbox: "allCheckbox", columnResize: "columnResize", fitToContent: "fitToContent", fitToContainer: "fitToContainer", fitToColumn: "fitToColumn", sortAscending: "sortAscending", sortDescending: "sortDescending", filter: "filter" }, viewQueries: [{ propertyName: "thList", predicate: ["thRef"], descendants: true, read: ElementRef }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<thead\n fd-table-header\n [class.inline-edit]=\"inlineEditMode\"\n [class.smallColumns]=\"columnsSmallerThanTableWidth\"\n [attr.columnsWidth]=\"columnsWidth\"\n [attr.tableWidth]=\"tableWidth\"\n>\n <tr fd-table-row>\n <ng-container *ngIf=\"!hideHeader\">\n <th *ngIf=\"rowIndicator\" fd-table-cell fd-table-status-indicator></th>\n <th fd-table-cell *ngIf=\"isCheckList\">\n <fd-checkbox\n name=\"allCheckbox\"\n [ngModel]=\"allChecked\"\n (ngModelChange)=\"onAllCheckbox($event)\"\n ></fd-checkbox>\n </th>\n <th fd-table-cell *ngIf=\"!isCheckList\" class=\"single-select\"></th>\n <ng-container *ngFor=\"let column of columns; let i = index; let last = last; trackBy: _trackByColumn\">\n <th\n *ngIf=\"startIndex <= i\"\n #thRef\n [columnIndex]=\"i\"\n fd-table-cell\n [style.width]=\"last ? null : column.FieldTypeId === 38 ? '40px' : column.$Width2 || column.$Width\"\n [style.min-width]=\"last ? null : inlineEditMode ? '210px' : last ? '100%' : 'auto'\"\n resizable\n [rtl]=\"rtl\"\n [disableResize]=\"last\"\n (widthChange)=\"onColumnWidthChange(column)\"\n (widthChanging)=\"onColumnWidthChanging(i, column, $event)\"\n [disableResponsive]=\"disableResponsive\"\n [tableWidth]=\"tableWidth\"\n [columnsWidth]=\"columnsWidth\"\n [attr.columnName]=\"column.Name\"\n [attr.index]=\"i\"\n [ngClass]=\"column.$CSSClassName + ' column__' + column.Caption\"\n [class.displayIcon]=\"column.Extra?.IconDisplayTypeEnum\"\n >\n <fd-popover #menu>\n <fd-popover-control>\n <div style=\"display: flex\">\n <!-- FieldTypeId 38 means it is auto row number field-->\n <img\n [src]=\"column.Icon\"\n *ngIf=\"\n (column.Extra?.IconDisplayTypeEnum === 'Image' || column.FieldTypeId === 42) &&\n column.Icon;\n else captionTpl\n \"\n />\n <ng-template #captionTpl>\n {{ column.Caption | bbbTranslate }}\n </ng-template>\n </div>\n </fd-popover-control>\n <fd-popover-body>\n <ul fd-list>\n <li fd-list-item>\n <a fd-list-link (click)=\"onSortAscending(column, menu)\">\n <fd-menu-addon position=\"before\" glyph=\"sort-ascending\"></fd-menu-addon>\n <span fd-list-title\n >{{ ('Sort' | bbbTranslate) + ' ' }} {{ 'Ascending' | bbbTranslate }}</span\n >\n </a>\n </li>\n <li fd-list-item>\n <a fd-list-link (click)=\"onSortDescending(column, menu)\">\n <fd-menu-addon position=\"before\" glyph=\"sort-descending\"></fd-menu-addon>\n <span fd-list-title\n >{{ ('Sort' | bbbTranslate) + ' ' }} {{ 'Descending' | bbbTranslate }}</span\n >\n </a>\n </li>\n <li fd-list-item>\n <a fd-list-link (click)=\"menu.close(); fitToContent.emit(column)\">\n <fd-menu-addon position=\"before\"></fd-menu-addon>\n <span fd-list-title>{{ ('Fit Column To Content' | bbbTranslate) + ' ' }}</span>\n </a>\n </li>\n <li fd-list-item>\n <a fd-list-link (click)=\"menu.close(); fitToContainer.emit()\">\n <fd-menu-addon position=\"before\"></fd-menu-addon>\n <span fd-list-title>{{ ('All Columns In Page' | bbbTranslate) + ' ' }}</span>\n </a>\n </li>\n <li fd-list-item>\n <a fd-list-link (click)=\"menu.close(); fitToColumn.emit()\">\n <fd-menu-addon position=\"before\"></fd-menu-addon>\n <span fd-list-title>{{ ('Free Columns Size' | bbbTranslate) + ' ' }}</span>\n </a>\n </li>\n <!-- <li fd-list-item>\n <a fd-list-link (click)=\"onFilter(column, menu)\">\n <fd-menu-addon position=\"before\" glyph=\"filter\"></fd-menu-addon>\n <span fd-list-title>{{ 'Filter' | bbbTranslate }}</span>\n </a>\n </li> -->\n </ul>\n </fd-popover-body>\n </fd-popover>\n </th>\n </ng-container>\n <ng-container *ngIf=\"contextMenuItems && contextMenuItems.length > 0 && !inlineEditMode\">\n <th\n class=\"col-header col-context-menu\"\n fd-table-cell\n [fitContent]=\"disableOverflowContextMenu\"\n [style.width.px]=\"contextMenuWidth\"\n ></th>\n </ng-container>\n <th\n class=\"col-header col-details\"\n [style.width]=\"deviceSize === 's' ? 'auto' : '120px'\"\n fd-table-cell\n *ngIf=\"showDetailsInRow && !inlineEditMode\"\n ></th>\n <th class=\"col-header col-view\" [style.width.px]=\"40\" fd-table-cell *ngIf=\"showViewButton\"></th>\n </ng-container>\n </tr>\n</thead>\n", styles: [":host{display:contents;width:100%}:host.has-toolbar thead{border-top:none!important}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.CheckboxComponent, selector: "fd-checkbox", inputs: ["ariaLabel", "value", "ariaLabelledBy", "ariaDescribedBy", "title", "inputId", "state", "name", "label", "disabled", "tristate", "tristateSelectable", "labelClass", "required", "values"], outputs: ["focusChange"] }, { kind: "component", type: i4.ListComponent, selector: "[fd-list], [fdList]", inputs: ["dropdownMode", "multiInputMode", "mobileMode", "hasMessage", "noBorder", "navigationIndicator", "selection", "keyboardSupport", "byline"], outputs: ["focusEscapeList"] }, { kind: "component", type: i4.ListItemComponent, selector: "[fdListItem] ,[fd-list-item]", inputs: ["selected", "ariaDescribedBy", "noData", "action", "interactive", "growing", "counter", "unread", "selectedListItemScreenReaderText", "navigatedListItemScreenReaderText", "navigatableListItemScreenReaderText"], outputs: ["keyDown"] }, { kind: "directive", type: i4.ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap"] }, { kind: "directive", type: i4.ListLinkDirective, selector: "[fd-list-link], [fdListLink]", inputs: ["navigationIndicator", "navigated"] }, { kind: "component", type: i5.MenuAddonDirective, selector: "fd-menu-addon", inputs: ["position", "glyph", "submenuIndicator", "ariaHidden"] }, { kind: "component", type: i6.PopoverControlComponent, selector: "fd-popover-control" }, { kind: "component", type: i6.PopoverBodyComponent, selector: "fd-popover-body" }, { kind: "component", type: i6.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig"] }, { kind: "directive", type: i7.TableHeaderDirective, selector: "[fdTableHeader], [fd-table-header]", inputs: ["noBorderX", "noBorderY"] }, { kind: "directive", type: i7.TableRowDirective, selector: "[fdTableRow], [fd-table-row]", inputs: ["activable", "highlightActive", "hoverable", "focusable", "main", "secondary", "active"] }, { kind: "directive", type: i7.TableCellDirective, selector: "[fdTableCell], [fd-table-cell]", inputs: ["noBorderX", "noBorderY", "activable", "focusable", "tabindex", "hoverable", "fitContent", "noPadding", "noData", "key", "cellFocusedEventAnnouncer"] }, { kind: "directive", type: i7.TableStatusIndicatorDirective, selector: "[fdTableStatusIndicator], [fd-table-status-indicator]", inputs: ["status"] }, { kind: "component", type: i8.ResizableComponent, selector: "th[resizable]", inputs: ["disableResize", "rtl"], outputs: ["widthChange", "widthChanging"] }, { kind: "pipe", type: i8.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
115
115
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: BarsaTableHeaderComponent, decorators: [{
|
|
116
116
|
type: Component,
|
|
117
|
-
args: [{ selector: 'bsu-barsa-table-header', changeDetection: ChangeDetectionStrategy.OnPush, template: "<thead\n fd-table-header\n [class.inline-edit]=\"inlineEditMode\"\n [class.smallColumns]=\"columnsSmallerThanTableWidth\"\n [attr.columnsWidth]=\"columnsWidth\"\n [attr.tableWidth]=\"tableWidth\"\n>\n <tr fd-table-row>\n <ng-container *ngIf=\"!hideHeader\">\n <th *ngIf=\"rowIndicator\" fd-table-cell fd-table-status-indicator></th>\n <th fd-table-cell *ngIf=\"isCheckList\">\n <fd-checkbox\n name=\"allCheckbox\"\n [ngModel]=\"allChecked\"\n (ngModelChange)=\"onAllCheckbox($event)\"\n ></fd-checkbox>\n </th>\n <th fd-table-cell *ngIf=\"!isCheckList\" class=\"single-select\"></th>\n <ng-container *ngFor=\"let column of columns; let i = index; let last = last; trackBy: _trackByColumn\">\n <th\n *ngIf=\"startIndex <= i\"\n #thRef\n [columnIndex]=\"i\"\n fd-table-cell\n [style.width]=\"last ? null : column.FieldTypeId === 38 ? '40px' : column.$Width2 || column.$Width\"\n [style.min-width]=\"last ? null : inlineEditMode ? '210px' : last ? '100%' : 'auto'\"\n resizable\n [rtl]=\"rtl\"\n [disableResize]=\"last\"\n (widthChange)=\"onColumnWidthChange(column)\"\n (widthChanging)=\"onColumnWidthChanging(i, column, $event)\"\n [disableResponsive]=\"disableResponsive\"\n [tableWidth]=\"tableWidth\"\n [columnsWidth]=\"columnsWidth\"\n [attr.columnName]=\"column.Name\"\n [attr.index]=\"i\"\n [ngClass]=\"column.$CSSClassName + ' column__' + column.Caption\"\n [class.displayIcon]=\"column.Extra?.IconDisplayTypeEnum\"\n >\n <fd-popover #menu>\n <fd-popover-control>\n <div style=\"display: flex\">\n <!-- FieldTypeId 38 means it is auto row number field-->\n <img\n [src]=\"column.Icon\"\n *ngIf=\"\n (column.Extra?.IconDisplayTypeEnum === 'Image' || column.FieldTypeId === 42) &&\n column.Icon;\n else captionTpl\n \"\n />\n <ng-template #captionTpl>\n {{ column.Caption | bbbTranslate }}\n </ng-template>\n </div>\n </fd-popover-control>\n <fd-popover-body>\n <ul fd-list>\n <li fd-list-item>\n <a fd-list-link (click)=\"onSortAscending(column, menu)\">\n <fd-menu-addon position=\"before\" glyph=\"sort-ascending\"></fd-menu-addon>\n <span fd-list-title\n >{{ ('Sort' | bbbTranslate) + ' ' }} {{ 'Ascending' | bbbTranslate }}</span\n >\n </a>\n </li>\n <li fd-list-item>\n <a fd-list-link (click)=\"onSortDescending(column, menu)\">\n <fd-menu-addon position=\"before\" glyph=\"sort-descending\"></fd-menu-addon>\n <span fd-list-title\n >{{ ('Sort' | bbbTranslate) + ' ' }} {{ 'Descending' | bbbTranslate }}</span\n >\n </a>\n </li>\n <li fd-list-item>\n <a fd-list-link (click)=\"menu.close(); fitToContent.emit(column)\">\n <fd-menu-addon position=\"before\"></fd-menu-addon>\n <span fd-list-title>{{ ('Fit Column To Content' | bbbTranslate) + ' ' }}</span>\n </a>\n </li>\n <li fd-list-item>\n <a fd-list-link (click)=\"menu.close(); fitToContainer.emit()\">\n <fd-menu-addon position=\"before\"></fd-menu-addon>\n <span fd-list-title>{{ ('All Columns In Page' | bbbTranslate) + ' ' }}</span>\n </a>\n </li>\n <li fd-list-item>\n <a fd-list-link (click)=\"menu.close(); fitToColumn.emit()\">\n <fd-menu-addon position=\"before\"></fd-menu-addon>\n <span fd-list-title>{{ ('Free Columns Size' | bbbTranslate) + ' ' }}</span>\n </a>\n </li>\n <!-- <li fd-list-item>\n <a fd-list-link (click)=\"onFilter(column, menu)\">\n <fd-menu-addon position=\"before\" glyph=\"filter\"></fd-menu-addon>\n <span fd-list-title>{{ 'Filter' | bbbTranslate }}</span>\n </a>\n </li> -->\n </ul>\n </fd-popover-body>\n </fd-popover>\n </th>\n </ng-container>\n <ng-container *ngIf=\"contextMenuItems && contextMenuItems.length > 0 && !inlineEditMode\">\n <th\n class=\"col-header col-context-menu\"\n fd-table-cell\n [fitContent]=\"disableOverflowContextMenu\"\n [style.width.px]=\"contextMenuWidth\"\n ></th>\n </ng-container>\n <th\n class=\"col-header col-details\"\n [style.width]=\"deviceSize === 's' ? 'auto' : '120px'\"\n fd-table-cell\n *ngIf=\"showDetailsInRow && !inlineEditMode\"\n ></th>\n <th class=\"col-header col-view\" [style.width.px]=\"40\" fd-table-cell *ngIf=\"showViewButton\"></th>\n </ng-container>\n </tr>\n</thead>\n", styles: [":host{display:contents;width:100%}\n"] }]
|
|
117
|
+
args: [{ selector: 'bsu-barsa-table-header', changeDetection: ChangeDetectionStrategy.OnPush, template: "<thead\n fd-table-header\n [class.inline-edit]=\"inlineEditMode\"\n [class.smallColumns]=\"columnsSmallerThanTableWidth\"\n [attr.columnsWidth]=\"columnsWidth\"\n [attr.tableWidth]=\"tableWidth\"\n>\n <tr fd-table-row>\n <ng-container *ngIf=\"!hideHeader\">\n <th *ngIf=\"rowIndicator\" fd-table-cell fd-table-status-indicator></th>\n <th fd-table-cell *ngIf=\"isCheckList\">\n <fd-checkbox\n name=\"allCheckbox\"\n [ngModel]=\"allChecked\"\n (ngModelChange)=\"onAllCheckbox($event)\"\n ></fd-checkbox>\n </th>\n <th fd-table-cell *ngIf=\"!isCheckList\" class=\"single-select\"></th>\n <ng-container *ngFor=\"let column of columns; let i = index; let last = last; trackBy: _trackByColumn\">\n <th\n *ngIf=\"startIndex <= i\"\n #thRef\n [columnIndex]=\"i\"\n fd-table-cell\n [style.width]=\"last ? null : column.FieldTypeId === 38 ? '40px' : column.$Width2 || column.$Width\"\n [style.min-width]=\"last ? null : inlineEditMode ? '210px' : last ? '100%' : 'auto'\"\n resizable\n [rtl]=\"rtl\"\n [disableResize]=\"last\"\n (widthChange)=\"onColumnWidthChange(column)\"\n (widthChanging)=\"onColumnWidthChanging(i, column, $event)\"\n [disableResponsive]=\"disableResponsive\"\n [tableWidth]=\"tableWidth\"\n [columnsWidth]=\"columnsWidth\"\n [attr.columnName]=\"column.Name\"\n [attr.index]=\"i\"\n [ngClass]=\"column.$CSSClassName + ' column__' + column.Caption\"\n [class.displayIcon]=\"column.Extra?.IconDisplayTypeEnum\"\n >\n <fd-popover #menu>\n <fd-popover-control>\n <div style=\"display: flex\">\n <!-- FieldTypeId 38 means it is auto row number field-->\n <img\n [src]=\"column.Icon\"\n *ngIf=\"\n (column.Extra?.IconDisplayTypeEnum === 'Image' || column.FieldTypeId === 42) &&\n column.Icon;\n else captionTpl\n \"\n />\n <ng-template #captionTpl>\n {{ column.Caption | bbbTranslate }}\n </ng-template>\n </div>\n </fd-popover-control>\n <fd-popover-body>\n <ul fd-list>\n <li fd-list-item>\n <a fd-list-link (click)=\"onSortAscending(column, menu)\">\n <fd-menu-addon position=\"before\" glyph=\"sort-ascending\"></fd-menu-addon>\n <span fd-list-title\n >{{ ('Sort' | bbbTranslate) + ' ' }} {{ 'Ascending' | bbbTranslate }}</span\n >\n </a>\n </li>\n <li fd-list-item>\n <a fd-list-link (click)=\"onSortDescending(column, menu)\">\n <fd-menu-addon position=\"before\" glyph=\"sort-descending\"></fd-menu-addon>\n <span fd-list-title\n >{{ ('Sort' | bbbTranslate) + ' ' }} {{ 'Descending' | bbbTranslate }}</span\n >\n </a>\n </li>\n <li fd-list-item>\n <a fd-list-link (click)=\"menu.close(); fitToContent.emit(column)\">\n <fd-menu-addon position=\"before\"></fd-menu-addon>\n <span fd-list-title>{{ ('Fit Column To Content' | bbbTranslate) + ' ' }}</span>\n </a>\n </li>\n <li fd-list-item>\n <a fd-list-link (click)=\"menu.close(); fitToContainer.emit()\">\n <fd-menu-addon position=\"before\"></fd-menu-addon>\n <span fd-list-title>{{ ('All Columns In Page' | bbbTranslate) + ' ' }}</span>\n </a>\n </li>\n <li fd-list-item>\n <a fd-list-link (click)=\"menu.close(); fitToColumn.emit()\">\n <fd-menu-addon position=\"before\"></fd-menu-addon>\n <span fd-list-title>{{ ('Free Columns Size' | bbbTranslate) + ' ' }}</span>\n </a>\n </li>\n <!-- <li fd-list-item>\n <a fd-list-link (click)=\"onFilter(column, menu)\">\n <fd-menu-addon position=\"before\" glyph=\"filter\"></fd-menu-addon>\n <span fd-list-title>{{ 'Filter' | bbbTranslate }}</span>\n </a>\n </li> -->\n </ul>\n </fd-popover-body>\n </fd-popover>\n </th>\n </ng-container>\n <ng-container *ngIf=\"contextMenuItems && contextMenuItems.length > 0 && !inlineEditMode\">\n <th\n class=\"col-header col-context-menu\"\n fd-table-cell\n [fitContent]=\"disableOverflowContextMenu\"\n [style.width.px]=\"contextMenuWidth\"\n ></th>\n </ng-container>\n <th\n class=\"col-header col-details\"\n [style.width]=\"deviceSize === 's' ? 'auto' : '120px'\"\n fd-table-cell\n *ngIf=\"showDetailsInRow && !inlineEditMode\"\n ></th>\n <th class=\"col-header col-view\" [style.width.px]=\"40\" fd-table-cell *ngIf=\"showViewButton\"></th>\n </ng-container>\n </tr>\n</thead>\n", styles: [":host{display:contents;width:100%}:host.has-toolbar thead{border-top:none!important}\n"] }]
|
|
118
118
|
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { thList: [{
|
|
119
119
|
type: ViewChildren,
|
|
120
120
|
args: ['thRef', { read: ElementRef }]
|
|
@@ -10,14 +10,37 @@ import * as i6 from "../ulv-context-menu/ulv-context-menu.component";
|
|
|
10
10
|
import * as i7 from "../no-data/no-data.component";
|
|
11
11
|
import * as i8 from "../card-item/card-item.component";
|
|
12
12
|
export class CardViewContentComponent extends BaseViewContentPropsComponent {
|
|
13
|
+
constructor() {
|
|
14
|
+
super(...arguments);
|
|
15
|
+
this.sizeXl = 3;
|
|
16
|
+
this.sizeL = 4;
|
|
17
|
+
this.sizeM = 6;
|
|
18
|
+
this.sizeS = 12;
|
|
19
|
+
}
|
|
20
|
+
ngOnInit() {
|
|
21
|
+
super.ngOnInit();
|
|
22
|
+
const { SizeXL, SizeL, SizeM, SizeS } = this.setting;
|
|
23
|
+
if (SizeXL) {
|
|
24
|
+
this.sizeXl = 12 / SizeXL;
|
|
25
|
+
}
|
|
26
|
+
if (SizeL) {
|
|
27
|
+
this.sizeL = 12 / SizeL;
|
|
28
|
+
}
|
|
29
|
+
if (SizeM) {
|
|
30
|
+
this.sizeM = 12 / SizeM;
|
|
31
|
+
}
|
|
32
|
+
if (SizeS) {
|
|
33
|
+
this.sizeS = 12 / SizeS;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
13
36
|
onExpandClick(mo) {
|
|
14
37
|
this.expandClick.emit(mo);
|
|
15
38
|
}
|
|
16
39
|
}
|
|
17
40
|
CardViewContentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: CardViewContentComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
18
|
-
CardViewContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: CardViewContentComponent, selector: "bsu-card-view-content", usesInheritance: true, ngImport: i0, template: "<ng-container *ngTemplateOutlet=\"setting.CardWidth ? flexTemplate : gridTemplate\"></ng-container>\n<ng-template #gridTemplate>\n <fd-layout-grid *ngIf=\"moDataList && moDataList.length > 0; else noData\" class=\"card-list\">\n <ng-container *ngTemplateOutlet=\"containerTemplate; context: { $implicit: true }\"></ng-container>\n </fd-layout-grid>\n</ng-template>\n<ng-template #flexTemplate>\n <div class=\"card-view-flex-container\">\n <ng-container *ngTemplateOutlet=\"containerTemplate\"></ng-container>\n </div>\n</ng-template>\n<ng-template #containerTemplate let-isGrid>\n <ng-container\n *ngFor=\"\n let mo of moDataList | multipleGroupBy: groupby;\n let index = index;\n let last = last;\n let first = first;\n trackBy: _trackByRow\n \"\n >\n <ng-container *ngIf=\"!mo.parent || mo.parent?.expanded\">\n <ng-container\n *ngTemplateOutlet=\"\n mo.group || mo.group === '' ? group : isGrid ? cardTemplateGrid : cardTemplate;\n context: { $implicit: mo, index: this.index }\n \"\n ></ng-container>\n <ng-template #group>\n <div\n class=\"group-label row-group\"\n [style.padding-right]=\"'calc( 1rem + ' + mo.level * 12 + 'px' + ' )'\"\n [attr.level]=\"mo.level\"\n [class.root-group]=\"mo.level === 0\"\n ellipsify\n >\n <fd-icon\n [glyph]=\"mo.expanded ? 'navigation-down-arrow' : 'navigation-left-arrow'\"\n class=\"cell-expand\"\n (click)=\"onExpandClick(mo)\"\n ></fd-icon>\n <span fd-list-title>{{ mo.group }}</span>\n </div>\n </ng-template>\n </ng-container>\n <div\n *ngIf=\"setting.contextMenuInFooter && contextMenuItems && contextMenuItems.length > 0\"\n ulvContextMenu\n [allColumns]=\"allColumns\"\n [menuItems]=\"contextMenuItems\"\n [styleIndex]=\"mo.$StyleIndex\"\n [conditionalFormats]=\"conditionalFormats\"\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\n [mo]=\"mo\"\n (commandClick)=\"ulvCommand.emit({mo,index})\"\n ></div>\n </ng-container>\n</ng-template>\n<ng-template #noData>\n <bsu-no-data></bsu-no-data>\n</ng-template>\n<ng-template #cardTemplate let-mo let-index=\"index\">\n <bsu-card-item\n [mo]=\"mo\"\n [styleIndex]=\"mo.$StyleIndex\"\n [isNewInlineMo]=\"mo.$NewInlineMo\"\n [index]=\"index\"\n [isChecked]=\"mo.$IsChecked\"\n [visibility]=\"mo.$Visibility\"\n [expanded]=\"mo.$Expanded\"\n [level]=\"mo.$Level\"\n [parentExpanded]=\"mo.$Parent?.$Expanded\"\n [setting]=\"setting\"\n [inlineEditMode]=\"inlineEditMode\"\n [allowInlineEdit]=\"allowInlineEdit\"\n [formSetting]=\"formSetting\"\n [rtl]=\"rtl\"\n [deviceName]=\"deviceName\"\n [deviceSize]=\"deviceSize\"\n [index]=\"index\"\n [allColumns]=\"allColumns\"\n [contextMenuItems]=\"contextMenuItems\"\n [canView]=\"canView\"\n [conditionalFormats]=\"conditionalFormats\"\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\n [navigationArrow]=\"navigationArrow\"\n [isCheckList]=\"isCheckList\"\n (rowCheck)=\"rowCheck.emit($event)\"\n (rowClick)=\"rowClick.emit($event)\"\n (ulvCommand)=\"ulvCommand.emit($event)\"\n (editFormPanelSave)=\"editFormPanelSave.emit($event)\"\n (editFormPanelCancel)=\"editFormPanelCancel.emit($event)\"\n (action)=\"action.emit($event)\"\n >\n </bsu-card-item>\n</ng-template>\n<ng-template #cardTemplateGrid let-mo let-index=\"index\">\n <div\n [fdLayoutGridCol]=\"
|
|
41
|
+
CardViewContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: CardViewContentComponent, selector: "bsu-card-view-content", usesInheritance: true, ngImport: i0, template: "<ng-container *ngTemplateOutlet=\"setting.CardWidth ? flexTemplate : gridTemplate\"></ng-container>\n<ng-template #gridTemplate>\n <fd-layout-grid *ngIf=\"moDataList && moDataList.length > 0; else noData\" class=\"card-list\">\n <ng-container *ngTemplateOutlet=\"containerTemplate; context: { $implicit: true }\"></ng-container>\n </fd-layout-grid>\n</ng-template>\n<ng-template #flexTemplate>\n <div class=\"card-view-flex-container\">\n <ng-container *ngTemplateOutlet=\"containerTemplate\"></ng-container>\n </div>\n</ng-template>\n<ng-template #containerTemplate let-isGrid>\n <ng-container\n *ngFor=\"\n let mo of moDataList | multipleGroupBy: groupby;\n let index = index;\n let last = last;\n let first = first;\n trackBy: _trackByRow\n \"\n >\n <ng-container *ngIf=\"!mo.parent || mo.parent?.expanded\">\n <ng-container\n *ngTemplateOutlet=\"\n mo.group || mo.group === '' ? group : isGrid ? cardTemplateGrid : cardTemplate;\n context: { $implicit: mo, index: this.index }\n \"\n ></ng-container>\n <ng-template #group>\n <div\n class=\"group-label row-group\"\n [style.padding-right]=\"'calc( 1rem + ' + mo.level * 12 + 'px' + ' )'\"\n [attr.level]=\"mo.level\"\n [class.root-group]=\"mo.level === 0\"\n ellipsify\n >\n <fd-icon\n [glyph]=\"mo.expanded ? 'navigation-down-arrow' : 'navigation-left-arrow'\"\n class=\"cell-expand\"\n (click)=\"onExpandClick(mo)\"\n ></fd-icon>\n <span fd-list-title>{{ mo.group }}</span>\n </div>\n </ng-template>\n </ng-container>\n <div\n *ngIf=\"setting.contextMenuInFooter && contextMenuItems && contextMenuItems.length > 0\"\n ulvContextMenu\n [allColumns]=\"allColumns\"\n [menuItems]=\"contextMenuItems\"\n [styleIndex]=\"mo.$StyleIndex\"\n [conditionalFormats]=\"conditionalFormats\"\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\n [mo]=\"mo\"\n (commandClick)=\"ulvCommand.emit({mo,index})\"\n ></div>\n </ng-container>\n</ng-template>\n<ng-template #noData>\n <bsu-no-data></bsu-no-data>\n</ng-template>\n<ng-template #cardTemplate let-mo let-index=\"index\">\n <bsu-card-item\n [mo]=\"mo\"\n [styleIndex]=\"mo.$StyleIndex\"\n [isNewInlineMo]=\"mo.$NewInlineMo\"\n [index]=\"index\"\n [isChecked]=\"mo.$IsChecked\"\n [visibility]=\"mo.$Visibility\"\n [expanded]=\"mo.$Expanded\"\n [level]=\"mo.$Level\"\n [parentExpanded]=\"mo.$Parent?.$Expanded\"\n [setting]=\"setting\"\n [inlineEditMode]=\"inlineEditMode\"\n [allowInlineEdit]=\"allowInlineEdit\"\n [formSetting]=\"formSetting\"\n [rtl]=\"rtl\"\n [deviceName]=\"deviceName\"\n [deviceSize]=\"deviceSize\"\n [index]=\"index\"\n [allColumns]=\"allColumns\"\n [contextMenuItems]=\"contextMenuItems\"\n [canView]=\"canView\"\n [conditionalFormats]=\"conditionalFormats\"\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\n [navigationArrow]=\"navigationArrow\"\n [isCheckList]=\"isCheckList\"\n (rowCheck)=\"rowCheck.emit($event)\"\n (rowClick)=\"rowClick.emit($event)\"\n (ulvCommand)=\"ulvCommand.emit($event)\"\n (editFormPanelSave)=\"editFormPanelSave.emit($event)\"\n (editFormPanelCancel)=\"editFormPanelCancel.emit($event)\"\n (action)=\"action.emit($event)\"\n >\n </bsu-card-item>\n</ng-template>\n<ng-template #cardTemplateGrid let-mo let-index=\"index\">\n <div\n [fdLayoutGridCol]=\"sizeS\"\n [colMd]=\"sizeM\"\n [colLg]=\"sizeL\"\n [colXl]=\"sizeXl\"\n [class.selected]=\"mo.$IsChecked ? true : false\"\n class=\"card-container\"\n >\n <ng-container *ngTemplateOutlet=\"cardTemplate; context: { $implicit: mo, index: index }\"></ng-container>\n </div>\n</ng-template>\n", styles: [".card-list{flex-wrap:wrap;padding-bottom:2rem;margin-left:0;row-gap:.25rem}.card-list .group-label{width:100%;display:flex;align-items:center;border-right:none;padding-top:.25rem;padding-bottom:.25rem;column-gap:10px}::ng-deep .card-list .unread .fd-form-item,::ng-deep .card-list .unread .fd-title,::ng-deep .card-list .unread .fd-quick-view__subtitle{font-weight:700}::ng-deep .card-list .group-item-content{background-color:transparent}::ng-deep .card-list .selected fd-card{background-color:var(--sapList_SelectionBackgroundColor, #e5f0fa);border-color:var(--sapList_SelectionBorderColor, #0854a0)}::ng-deep .card-list .selected fd-card,::ng-deep .card-list .selected fd-card-header,::ng-deep .card-list .selected .fd-bar--footer,::ng-deep .card-list .selected fd-quick-view-subheader .fd-bar{background-color:inherit}::ng-deep .card-list fd-card fd-icon .avatar{font-size:.75rem!important}::ng-deep .card-list fd-card .fd-quick-view__content{height:100%}::ng-deep .card-list fd-card fd-icon .avatar{font-size:1rem!important}.card-view-flex-container{width:100%;display:flex;flex-wrap:wrap;row-gap:10px;column-gap:10px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.EllipsifyDirective, selector: "[ellipsify]", inputs: ["limitLine"] }, { kind: "component", type: i3.IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "class", "ariaLabel"] }, { kind: "component", type: i4.LayoutGridComponent, selector: "fd-layout-grid, [fdLayoutGrid]", inputs: ["class", "noGap", "noHorizontalGap", "noVerticalGap"] }, { kind: "directive", type: i4.LayoutGridColDirective, selector: "[fd-layout-grid-col], [fdLayoutGridCol]", inputs: ["fdLayoutGridCol", "colGrow", "colMd", "colLg", "colXl", "colOffset", "colOffsetMd", "colOffsetLg", "colOffsetXl", "class"] }, { kind: "directive", type: i5.ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap"] }, { kind: "component", type: i6.UlvContextMenuComponent, selector: "bsu-ulv-context-menu,[ulvContextMenu]", inputs: ["onlyOverflow", "deviceName", "menuItems", "allColumns", "index", "mo", "styleIndex", "conditionalFormats", "disableOverflowContextMenu", "footerMode"], outputs: ["commandClick"] }, { kind: "component", type: i7.NoDataComponent, selector: "bsu-no-data" }, { kind: "component", type: i8.CardItemComponent, selector: "bsu-card-item", inputs: ["setting"] }, { kind: "pipe", type: i2.MultipleGroupByPipe, name: "multipleGroupBy" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
19
42
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: CardViewContentComponent, decorators: [{
|
|
20
43
|
type: Component,
|
|
21
|
-
args: [{ selector: 'bsu-card-view-content', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngTemplateOutlet=\"setting.CardWidth ? flexTemplate : gridTemplate\"></ng-container>\n<ng-template #gridTemplate>\n <fd-layout-grid *ngIf=\"moDataList && moDataList.length > 0; else noData\" class=\"card-list\">\n <ng-container *ngTemplateOutlet=\"containerTemplate; context: { $implicit: true }\"></ng-container>\n </fd-layout-grid>\n</ng-template>\n<ng-template #flexTemplate>\n <div class=\"card-view-flex-container\">\n <ng-container *ngTemplateOutlet=\"containerTemplate\"></ng-container>\n </div>\n</ng-template>\n<ng-template #containerTemplate let-isGrid>\n <ng-container\n *ngFor=\"\n let mo of moDataList | multipleGroupBy: groupby;\n let index = index;\n let last = last;\n let first = first;\n trackBy: _trackByRow\n \"\n >\n <ng-container *ngIf=\"!mo.parent || mo.parent?.expanded\">\n <ng-container\n *ngTemplateOutlet=\"\n mo.group || mo.group === '' ? group : isGrid ? cardTemplateGrid : cardTemplate;\n context: { $implicit: mo, index: this.index }\n \"\n ></ng-container>\n <ng-template #group>\n <div\n class=\"group-label row-group\"\n [style.padding-right]=\"'calc( 1rem + ' + mo.level * 12 + 'px' + ' )'\"\n [attr.level]=\"mo.level\"\n [class.root-group]=\"mo.level === 0\"\n ellipsify\n >\n <fd-icon\n [glyph]=\"mo.expanded ? 'navigation-down-arrow' : 'navigation-left-arrow'\"\n class=\"cell-expand\"\n (click)=\"onExpandClick(mo)\"\n ></fd-icon>\n <span fd-list-title>{{ mo.group }}</span>\n </div>\n </ng-template>\n </ng-container>\n <div\n *ngIf=\"setting.contextMenuInFooter && contextMenuItems && contextMenuItems.length > 0\"\n ulvContextMenu\n [allColumns]=\"allColumns\"\n [menuItems]=\"contextMenuItems\"\n [styleIndex]=\"mo.$StyleIndex\"\n [conditionalFormats]=\"conditionalFormats\"\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\n [mo]=\"mo\"\n (commandClick)=\"ulvCommand.emit({mo,index})\"\n ></div>\n </ng-container>\n</ng-template>\n<ng-template #noData>\n <bsu-no-data></bsu-no-data>\n</ng-template>\n<ng-template #cardTemplate let-mo let-index=\"index\">\n <bsu-card-item\n [mo]=\"mo\"\n [styleIndex]=\"mo.$StyleIndex\"\n [isNewInlineMo]=\"mo.$NewInlineMo\"\n [index]=\"index\"\n [isChecked]=\"mo.$IsChecked\"\n [visibility]=\"mo.$Visibility\"\n [expanded]=\"mo.$Expanded\"\n [level]=\"mo.$Level\"\n [parentExpanded]=\"mo.$Parent?.$Expanded\"\n [setting]=\"setting\"\n [inlineEditMode]=\"inlineEditMode\"\n [allowInlineEdit]=\"allowInlineEdit\"\n [formSetting]=\"formSetting\"\n [rtl]=\"rtl\"\n [deviceName]=\"deviceName\"\n [deviceSize]=\"deviceSize\"\n [index]=\"index\"\n [allColumns]=\"allColumns\"\n [contextMenuItems]=\"contextMenuItems\"\n [canView]=\"canView\"\n [conditionalFormats]=\"conditionalFormats\"\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\n [navigationArrow]=\"navigationArrow\"\n [isCheckList]=\"isCheckList\"\n (rowCheck)=\"rowCheck.emit($event)\"\n (rowClick)=\"rowClick.emit($event)\"\n (ulvCommand)=\"ulvCommand.emit($event)\"\n (editFormPanelSave)=\"editFormPanelSave.emit($event)\"\n (editFormPanelCancel)=\"editFormPanelCancel.emit($event)\"\n (action)=\"action.emit($event)\"\n >\n </bsu-card-item>\n</ng-template>\n<ng-template #cardTemplateGrid let-mo let-index=\"index\">\n <div\n [fdLayoutGridCol]=\"
|
|
44
|
+
args: [{ selector: 'bsu-card-view-content', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngTemplateOutlet=\"setting.CardWidth ? flexTemplate : gridTemplate\"></ng-container>\n<ng-template #gridTemplate>\n <fd-layout-grid *ngIf=\"moDataList && moDataList.length > 0; else noData\" class=\"card-list\">\n <ng-container *ngTemplateOutlet=\"containerTemplate; context: { $implicit: true }\"></ng-container>\n </fd-layout-grid>\n</ng-template>\n<ng-template #flexTemplate>\n <div class=\"card-view-flex-container\">\n <ng-container *ngTemplateOutlet=\"containerTemplate\"></ng-container>\n </div>\n</ng-template>\n<ng-template #containerTemplate let-isGrid>\n <ng-container\n *ngFor=\"\n let mo of moDataList | multipleGroupBy: groupby;\n let index = index;\n let last = last;\n let first = first;\n trackBy: _trackByRow\n \"\n >\n <ng-container *ngIf=\"!mo.parent || mo.parent?.expanded\">\n <ng-container\n *ngTemplateOutlet=\"\n mo.group || mo.group === '' ? group : isGrid ? cardTemplateGrid : cardTemplate;\n context: { $implicit: mo, index: this.index }\n \"\n ></ng-container>\n <ng-template #group>\n <div\n class=\"group-label row-group\"\n [style.padding-right]=\"'calc( 1rem + ' + mo.level * 12 + 'px' + ' )'\"\n [attr.level]=\"mo.level\"\n [class.root-group]=\"mo.level === 0\"\n ellipsify\n >\n <fd-icon\n [glyph]=\"mo.expanded ? 'navigation-down-arrow' : 'navigation-left-arrow'\"\n class=\"cell-expand\"\n (click)=\"onExpandClick(mo)\"\n ></fd-icon>\n <span fd-list-title>{{ mo.group }}</span>\n </div>\n </ng-template>\n </ng-container>\n <div\n *ngIf=\"setting.contextMenuInFooter && contextMenuItems && contextMenuItems.length > 0\"\n ulvContextMenu\n [allColumns]=\"allColumns\"\n [menuItems]=\"contextMenuItems\"\n [styleIndex]=\"mo.$StyleIndex\"\n [conditionalFormats]=\"conditionalFormats\"\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\n [mo]=\"mo\"\n (commandClick)=\"ulvCommand.emit({mo,index})\"\n ></div>\n </ng-container>\n</ng-template>\n<ng-template #noData>\n <bsu-no-data></bsu-no-data>\n</ng-template>\n<ng-template #cardTemplate let-mo let-index=\"index\">\n <bsu-card-item\n [mo]=\"mo\"\n [styleIndex]=\"mo.$StyleIndex\"\n [isNewInlineMo]=\"mo.$NewInlineMo\"\n [index]=\"index\"\n [isChecked]=\"mo.$IsChecked\"\n [visibility]=\"mo.$Visibility\"\n [expanded]=\"mo.$Expanded\"\n [level]=\"mo.$Level\"\n [parentExpanded]=\"mo.$Parent?.$Expanded\"\n [setting]=\"setting\"\n [inlineEditMode]=\"inlineEditMode\"\n [allowInlineEdit]=\"allowInlineEdit\"\n [formSetting]=\"formSetting\"\n [rtl]=\"rtl\"\n [deviceName]=\"deviceName\"\n [deviceSize]=\"deviceSize\"\n [index]=\"index\"\n [allColumns]=\"allColumns\"\n [contextMenuItems]=\"contextMenuItems\"\n [canView]=\"canView\"\n [conditionalFormats]=\"conditionalFormats\"\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\n [navigationArrow]=\"navigationArrow\"\n [isCheckList]=\"isCheckList\"\n (rowCheck)=\"rowCheck.emit($event)\"\n (rowClick)=\"rowClick.emit($event)\"\n (ulvCommand)=\"ulvCommand.emit($event)\"\n (editFormPanelSave)=\"editFormPanelSave.emit($event)\"\n (editFormPanelCancel)=\"editFormPanelCancel.emit($event)\"\n (action)=\"action.emit($event)\"\n >\n </bsu-card-item>\n</ng-template>\n<ng-template #cardTemplateGrid let-mo let-index=\"index\">\n <div\n [fdLayoutGridCol]=\"sizeS\"\n [colMd]=\"sizeM\"\n [colLg]=\"sizeL\"\n [colXl]=\"sizeXl\"\n [class.selected]=\"mo.$IsChecked ? true : false\"\n class=\"card-container\"\n >\n <ng-container *ngTemplateOutlet=\"cardTemplate; context: { $implicit: mo, index: index }\"></ng-container>\n </div>\n</ng-template>\n", styles: [".card-list{flex-wrap:wrap;padding-bottom:2rem;margin-left:0;row-gap:.25rem}.card-list .group-label{width:100%;display:flex;align-items:center;border-right:none;padding-top:.25rem;padding-bottom:.25rem;column-gap:10px}::ng-deep .card-list .unread .fd-form-item,::ng-deep .card-list .unread .fd-title,::ng-deep .card-list .unread .fd-quick-view__subtitle{font-weight:700}::ng-deep .card-list .group-item-content{background-color:transparent}::ng-deep .card-list .selected fd-card{background-color:var(--sapList_SelectionBackgroundColor, #e5f0fa);border-color:var(--sapList_SelectionBorderColor, #0854a0)}::ng-deep .card-list .selected fd-card,::ng-deep .card-list .selected fd-card-header,::ng-deep .card-list .selected .fd-bar--footer,::ng-deep .card-list .selected fd-quick-view-subheader .fd-bar{background-color:inherit}::ng-deep .card-list fd-card fd-icon .avatar{font-size:.75rem!important}::ng-deep .card-list fd-card .fd-quick-view__content{height:100%}::ng-deep .card-list fd-card fd-icon .avatar{font-size:1rem!important}.card-view-flex-container{width:100%;display:flex;flex-wrap:wrap;row-gap:10px;column-gap:10px}\n"] }]
|
|
22
45
|
}] });
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC12aWV3LWNvbnRlbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvY2FyZC12aWV3LWNvbnRlbnQvY2FyZC12aWV3LWNvbnRlbnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvY2FyZC12aWV3LWNvbnRlbnQvY2FyZC12aWV3LWNvbnRlbnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSx1QkFBdUIsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7Ozs7OztBQVNyRSxNQUFNLE9BQU8sd0JBQXlCLFNBQVEsNkJBQW9EO0lBTmxHOztRQU9JLFdBQU0sR0FBRyxDQUFDLENBQUM7UUFDWCxVQUFLLEdBQUcsQ0FBQyxDQUFDO1FBQ1YsVUFBSyxHQUFHLENBQUMsQ0FBQztRQUNWLFVBQUssR0FBRyxFQUFFLENBQUM7S0FvQmQ7SUFuQkcsUUFBUTtRQUNKLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQixNQUFNLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUNyRCxJQUFJLE1BQU0sRUFBRTtZQUNSLElBQUksQ0FBQyxNQUFNLEdBQUcsRUFBRSxHQUFHLE1BQU0sQ0FBQztTQUM3QjtRQUNELElBQUksS0FBSyxFQUFFO1lBQ1AsSUFBSSxDQUFDLEtBQUssR0FBRyxFQUFFLEdBQUcsS0FBSyxDQUFDO1NBQzNCO1FBQ0QsSUFBSSxLQUFLLEVBQUU7WUFDUCxJQUFJLENBQUMsS0FBSyxHQUFHLEVBQUUsR0FBRyxLQUFLLENBQUM7U0FDM0I7UUFDRCxJQUFJLEtBQUssRUFBRTtZQUNQLElBQUksQ0FBQyxLQUFLLEdBQUcsRUFBRSxHQUFHLEtBQUssQ0FBQztTQUMzQjtJQUNMLENBQUM7SUFDRCxhQUFhLENBQUMsRUFBRTtRQUNaLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzlCLENBQUM7O3FIQXZCUSx3QkFBd0I7eUdBQXhCLHdCQUF3QixvRkNWckMsa3pJQTRHQTsyRkRsR2Esd0JBQXdCO2tCQU5wQyxTQUFTOytCQUNJLHVCQUF1QixtQkFHaEIsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmFzZVZpZXdDb250ZW50UHJvcHNDb21wb25lbnQgfSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XG5pbXBvcnQgeyBVaUNhcmRMaXN0Vmlld1NldHRpbmcgfSBmcm9tICcuLi9tb2RlbHMvZ3JpZC12aWV3JztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdic3UtY2FyZC12aWV3LWNvbnRlbnQnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9jYXJkLXZpZXctY29udGVudC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vY2FyZC12aWV3LWNvbnRlbnQuY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBDYXJkVmlld0NvbnRlbnRDb21wb25lbnQgZXh0ZW5kcyBCYXNlVmlld0NvbnRlbnRQcm9wc0NvbXBvbmVudDxVaUNhcmRMaXN0Vmlld1NldHRpbmc+IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBzaXplWGwgPSAzO1xuICAgIHNpemVMID0gNDtcbiAgICBzaXplTSA9IDY7XG4gICAgc2l6ZVMgPSAxMjtcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICAgICAgY29uc3QgeyBTaXplWEwsIFNpemVMLCBTaXplTSwgU2l6ZVMgfSA9IHRoaXMuc2V0dGluZztcbiAgICAgICAgaWYgKFNpemVYTCkge1xuICAgICAgICAgICAgdGhpcy5zaXplWGwgPSAxMiAvIFNpemVYTDtcbiAgICAgICAgfVxuICAgICAgICBpZiAoU2l6ZUwpIHtcbiAgICAgICAgICAgIHRoaXMuc2l6ZUwgPSAxMiAvIFNpemVMO1xuICAgICAgICB9XG4gICAgICAgIGlmIChTaXplTSkge1xuICAgICAgICAgICAgdGhpcy5zaXplTSA9IDEyIC8gU2l6ZU07XG4gICAgICAgIH1cbiAgICAgICAgaWYgKFNpemVTKSB7XG4gICAgICAgICAgICB0aGlzLnNpemVTID0gMTIgLyBTaXplUztcbiAgICAgICAgfVxuICAgIH1cbiAgICBvbkV4cGFuZENsaWNrKG1vKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZXhwYW5kQ2xpY2suZW1pdChtbyk7XG4gICAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInNldHRpbmcuQ2FyZFdpZHRoID8gZmxleFRlbXBsYXRlIDogZ3JpZFRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG48bmctdGVtcGxhdGUgI2dyaWRUZW1wbGF0ZT5cbiAgICA8ZmQtbGF5b3V0LWdyaWQgKm5nSWY9XCJtb0RhdGFMaXN0ICYmIG1vRGF0YUxpc3QubGVuZ3RoID4gMDsgZWxzZSBub0RhdGFcIiBjbGFzcz1cImNhcmQtbGlzdFwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29udGFpbmVyVGVtcGxhdGU7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiB0cnVlIH1cIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L2ZkLWxheW91dC1ncmlkPlxuPC9uZy10ZW1wbGF0ZT5cbjxuZy10ZW1wbGF0ZSAjZmxleFRlbXBsYXRlPlxuICAgIDxkaXYgY2xhc3M9XCJjYXJkLXZpZXctZmxleC1jb250YWluZXJcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbnRhaW5lclRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuPG5nLXRlbXBsYXRlICNjb250YWluZXJUZW1wbGF0ZSBsZXQtaXNHcmlkPlxuICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgKm5nRm9yPVwiXG4gICAgICAgICAgICBsZXQgbW8gb2YgbW9EYXRhTGlzdCB8IG11bHRpcGxlR3JvdXBCeTogZ3JvdXBieTtcbiAgICAgICAgICAgIGxldCBpbmRleCA9IGluZGV4O1xuICAgICAgICAgICAgbGV0IGxhc3QgPSBsYXN0O1xuICAgICAgICAgICAgbGV0IGZpcnN0ID0gZmlyc3Q7XG4gICAgICAgICAgICB0cmFja0J5OiBfdHJhY2tCeVJvd1xuICAgICAgICBcIlxuICAgID5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFtby5wYXJlbnQgfHwgbW8ucGFyZW50Py5leHBhbmRlZFwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICAgICAgICAgICAgICAgIG1vLmdyb3VwIHx8IG1vLmdyb3VwID09PSAnJyA/IGdyb3VwIDogaXNHcmlkID8gY2FyZFRlbXBsYXRlR3JpZCA6IGNhcmRUZW1wbGF0ZTtcbiAgICAgICAgICAgICAgICAgICAgY29udGV4dDogeyAkaW1wbGljaXQ6IG1vLCBpbmRleDogdGhpcy5pbmRleCB9XG4gICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZ3JvdXA+XG4gICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImdyb3VwLWxhYmVsIHJvdy1ncm91cFwiXG4gICAgICAgICAgICAgICAgICAgIFtzdHlsZS5wYWRkaW5nLXJpZ2h0XT1cIidjYWxjKCAxcmVtICsgJyArIG1vLmxldmVsICogMTIgKyAncHgnICsgJyApJ1wiXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLmxldmVsXT1cIm1vLmxldmVsXCJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzLnJvb3QtZ3JvdXBdPVwibW8ubGV2ZWwgPT09IDBcIlxuICAgICAgICAgICAgICAgICAgICBlbGxpcHNpZnlcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxmZC1pY29uXG4gICAgICAgICAgICAgICAgICAgICAgICBbZ2x5cGhdPVwibW8uZXhwYW5kZWQgPyAnbmF2aWdhdGlvbi1kb3duLWFycm93JyA6ICduYXZpZ2F0aW9uLWxlZnQtYXJyb3cnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY2VsbC1leHBhbmRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uRXhwYW5kQ2xpY2sobW8pXCJcbiAgICAgICAgICAgICAgICAgICAgPjwvZmQtaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gZmQtbGlzdC10aXRsZT57eyBtby5ncm91cCB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICAqbmdJZj1cInNldHRpbmcuY29udGV4dE1lbnVJbkZvb3RlciAmJiBjb250ZXh0TWVudUl0ZW1zICYmIGNvbnRleHRNZW51SXRlbXMubGVuZ3RoID4gMFwiXG4gICAgICAgICAgICB1bHZDb250ZXh0TWVudVxuICAgICAgICAgICAgW2FsbENvbHVtbnNdPVwiYWxsQ29sdW1uc1wiXG4gICAgICAgICAgICBbbWVudUl0ZW1zXT1cImNvbnRleHRNZW51SXRlbXNcIlxuICAgICAgICAgICAgW3N0eWxlSW5kZXhdPVwibW8uJFN0eWxlSW5kZXhcIlxuICAgICAgICAgICAgW2NvbmRpdGlvbmFsRm9ybWF0c109XCJjb25kaXRpb25hbEZvcm1hdHNcIlxuICAgICAgICAgICAgW2Rpc2FibGVPdmVyZmxvd0NvbnRleHRNZW51XT1cImRpc2FibGVPdmVyZmxvd0NvbnRleHRNZW51XCJcbiAgICAgICAgICAgIFttb109XCJtb1wiXG4gICAgICAgICAgICAoY29tbWFuZENsaWNrKT1cInVsdkNvbW1hbmQuZW1pdCh7bW8saW5kZXh9KVwiXG4gICAgICAgID48L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbjwvbmctdGVtcGxhdGU+XG48bmctdGVtcGxhdGUgI25vRGF0YT5cbiAgICA8YnN1LW5vLWRhdGE+PC9ic3Utbm8tZGF0YT5cbjwvbmctdGVtcGxhdGU+XG48bmctdGVtcGxhdGUgI2NhcmRUZW1wbGF0ZSBsZXQtbW8gbGV0LWluZGV4PVwiaW5kZXhcIj5cbiAgICA8YnN1LWNhcmQtaXRlbVxuICAgICAgICBbbW9dPVwibW9cIlxuICAgICAgICBbc3R5bGVJbmRleF09XCJtby4kU3R5bGVJbmRleFwiXG4gICAgICAgIFtpc05ld0lubGluZU1vXT1cIm1vLiROZXdJbmxpbmVNb1wiXG4gICAgICAgIFtpbmRleF09XCJpbmRleFwiXG4gICAgICAgIFtpc0NoZWNrZWRdPVwibW8uJElzQ2hlY2tlZFwiXG4gICAgICAgIFt2aXNpYmlsaXR5XT1cIm1vLiRWaXNpYmlsaXR5XCJcbiAgICAgICAgW2V4cGFuZGVkXT1cIm1vLiRFeHBhbmRlZFwiXG4gICAgICAgIFtsZXZlbF09XCJtby4kTGV2ZWxcIlxuICAgICAgICBbcGFyZW50RXhwYW5kZWRdPVwibW8uJFBhcmVudD8uJEV4cGFuZGVkXCJcbiAgICAgICAgW3NldHRpbmddPVwic2V0dGluZ1wiXG4gICAgICAgIFtpbmxpbmVFZGl0TW9kZV09XCJpbmxpbmVFZGl0TW9kZVwiXG4gICAgICAgIFthbGxvd0lubGluZUVkaXRdPVwiYWxsb3dJbmxpbmVFZGl0XCJcbiAgICAgICAgW2Zvcm1TZXR0aW5nXT1cImZvcm1TZXR0aW5nXCJcbiAgICAgICAgW3J0bF09XCJydGxcIlxuICAgICAgICBbZGV2aWNlTmFtZV09XCJkZXZpY2VOYW1lXCJcbiAgICAgICAgW2RldmljZVNpemVdPVwiZGV2aWNlU2l6ZVwiXG4gICAgICAgIFtpbmRleF09XCJpbmRleFwiXG4gICAgICAgIFthbGxDb2x1bW5zXT1cImFsbENvbHVtbnNcIlxuICAgICAgICBbY29udGV4dE1lbnVJdGVtc109XCJjb250ZXh0TWVudUl0ZW1zXCJcbiAgICAgICAgW2NhblZpZXddPVwiY2FuVmlld1wiXG4gICAgICAgIFtjb25kaXRpb25hbEZvcm1hdHNdPVwiY29uZGl0aW9uYWxGb3JtYXRzXCJcbiAgICAgICAgW2Rpc2FibGVPdmVyZmxvd0NvbnRleHRNZW51XT1cImRpc2FibGVPdmVyZmxvd0NvbnRleHRNZW51XCJcbiAgICAgICAgW25hdmlnYXRpb25BcnJvd109XCJuYXZpZ2F0aW9uQXJyb3dcIlxuICAgICAgICBbaXNDaGVja0xpc3RdPVwiaXNDaGVja0xpc3RcIlxuICAgICAgICAocm93Q2hlY2spPVwicm93Q2hlY2suZW1pdCgkZXZlbnQpXCJcbiAgICAgICAgKHJvd0NsaWNrKT1cInJvd0NsaWNrLmVtaXQoJGV2ZW50KVwiXG4gICAgICAgICh1bHZDb21tYW5kKT1cInVsdkNvbW1hbmQuZW1pdCgkZXZlbnQpXCJcbiAgICAgICAgKGVkaXRGb3JtUGFuZWxTYXZlKT1cImVkaXRGb3JtUGFuZWxTYXZlLmVtaXQoJGV2ZW50KVwiXG4gICAgICAgIChlZGl0Rm9ybVBhbmVsQ2FuY2VsKT1cImVkaXRGb3JtUGFuZWxDYW5jZWwuZW1pdCgkZXZlbnQpXCJcbiAgICAgICAgKGFjdGlvbik9XCJhY3Rpb24uZW1pdCgkZXZlbnQpXCJcbiAgICA+XG4gICAgPC9ic3UtY2FyZC1pdGVtPlxuPC9uZy10ZW1wbGF0ZT5cbjxuZy10ZW1wbGF0ZSAjY2FyZFRlbXBsYXRlR3JpZCBsZXQtbW8gbGV0LWluZGV4PVwiaW5kZXhcIj5cbiAgICA8ZGl2XG4gICAgICAgIFtmZExheW91dEdyaWRDb2xdPVwic2l6ZVNcIlxuICAgICAgICBbY29sTWRdPVwic2l6ZU1cIlxuICAgICAgICBbY29sTGddPVwic2l6ZUxcIlxuICAgICAgICBbY29sWGxdPVwic2l6ZVhsXCJcbiAgICAgICAgW2NsYXNzLnNlbGVjdGVkXT1cIm1vLiRJc0NoZWNrZWQgPyB0cnVlIDogZmFsc2VcIlxuICAgICAgICBjbGFzcz1cImNhcmQtY29udGFpbmVyXCJcbiAgICA+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjYXJkVGVtcGxhdGU7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiBtbywgaW5kZXg6IGluZGV4IH1cIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|