@schneideress/dashboardframework 20.0.30 → 22.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Injectable, Input, ViewEncapsulation, Component, EventEmitter, ElementRef, Renderer2, ChangeDetectorRef, NgZone, Inject, HostBinding, Output, ViewContainerRef, ViewChild, HostListener, NgModule, Directive } from '@angular/core';
|
|
2
|
+
import { Injectable, Input, ChangeDetectionStrategy, ViewEncapsulation, Component, EventEmitter, ElementRef, Renderer2, ChangeDetectorRef, NgZone, Inject, HostBinding, Output, ViewContainerRef, ViewChild, HostListener, NgModule, Directive } from '@angular/core';
|
|
3
3
|
import { of, Subject, debounceTime, takeUntil, switchMap, timer } from 'rxjs';
|
|
4
4
|
import * as i3 from '@schneideress/ra-common';
|
|
5
5
|
import { BaseService, RACommonModule } from '@schneideress/ra-common';
|
|
@@ -8,7 +8,7 @@ import { NgxUiLoaderModule } from 'ngx-ui-loader';
|
|
|
8
8
|
import * as i4 from 'angular-notifier';
|
|
9
9
|
import { NotifierModule } from 'angular-notifier';
|
|
10
10
|
import * as i2 from '@angular/common';
|
|
11
|
-
import {
|
|
11
|
+
import { NgStyle, CommonModule } from '@angular/common';
|
|
12
12
|
import { RaWidgetlockStatus, WidgetViewState, RADownloadType, RADownloadOption } from '@schneideress/widgetframework';
|
|
13
13
|
import { loadRemoteModule } from '@angular-architects/module-federation';
|
|
14
14
|
import * as i6 from '@schneideress/common-controls';
|
|
@@ -86,10 +86,10 @@ class RaDashboardService extends BaseService {
|
|
|
86
86
|
/** To Copy Current widget with same configuration*/
|
|
87
87
|
copyWidget(widgetInfo) {
|
|
88
88
|
}
|
|
89
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
90
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
89
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: RaDashboardService, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
90
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: RaDashboardService, providedIn: 'root' }); }
|
|
91
91
|
}
|
|
92
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
92
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: RaDashboardService, decorators: [{
|
|
93
93
|
type: Injectable,
|
|
94
94
|
args: [{
|
|
95
95
|
providedIn: 'root'
|
|
@@ -370,10 +370,10 @@ class RADashboardResponsiveService {
|
|
|
370
370
|
}
|
|
371
371
|
return height;
|
|
372
372
|
}
|
|
373
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
374
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
373
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: RADashboardResponsiveService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
374
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: RADashboardResponsiveService, providedIn: "root" }); }
|
|
375
375
|
}
|
|
376
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
376
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: RADashboardResponsiveService, decorators: [{
|
|
377
377
|
type: Injectable,
|
|
378
378
|
args: [{ providedIn: "root" }]
|
|
379
379
|
}], ctorParameters: () => [] });
|
|
@@ -1025,12 +1025,12 @@ class GridsterPreviewComponent {
|
|
|
1025
1025
|
this.renderer.setStyle(this.el, 'display', '');
|
|
1026
1026
|
}
|
|
1027
1027
|
}
|
|
1028
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1029
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
1028
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: GridsterPreviewComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1029
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.0.7", type: GridsterPreviewComponent, isStandalone: true, selector: "gridster-preview", inputs: { previewStyle$: "previewStyle$", gridRenderer: "gridRenderer" }, ngImport: i0, template: '', isInline: true, styles: ["gridster-preview{position:absolute;display:none;background:#00000026}\n"], changeDetection: i0.ChangeDetectionStrategy.Eager, encapsulation: i0.ViewEncapsulation.None }); }
|
|
1030
1030
|
}
|
|
1031
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1031
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: GridsterPreviewComponent, decorators: [{
|
|
1032
1032
|
type: Component,
|
|
1033
|
-
args: [{ selector: 'gridster-preview', template: '', encapsulation: ViewEncapsulation.None, standalone: true, styles: ["gridster-preview{position:absolute;display:none;background:#00000026}\n"] }]
|
|
1033
|
+
args: [{ selector: 'gridster-preview', template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.Eager, standalone: true, styles: ["gridster-preview{position:absolute;display:none;background:#00000026}\n"] }]
|
|
1034
1034
|
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }], propDecorators: { previewStyle$: [{
|
|
1035
1035
|
type: Input
|
|
1036
1036
|
}], gridRenderer: [{
|
|
@@ -1904,12 +1904,12 @@ class GridsterComponent {
|
|
|
1904
1904
|
}
|
|
1905
1905
|
return 0;
|
|
1906
1906
|
}
|
|
1907
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1908
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
1907
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: GridsterComponent, deps: [{ token: ElementRef }, { token: Renderer2 }, { token: ChangeDetectorRef }, { token: NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1908
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.7", type: GridsterComponent, isStandalone: true, selector: "gridster", inputs: { options: "options" }, usesOnChanges: true, ngImport: i0, template: "@for (column of gridColumns; track column; let i = $index) {\n<div\r\n class=\"gridster-column\"\r\n \r\n [ngStyle]=\"gridRenderer.getGridColumnStyle(i)\"\r\n></div>\n}\r\n@for (row of gridRows; track row; let i = $index) {\n<div\r\n class=\"gridster-row\"\r\n \r\n [ngStyle]=\"gridRenderer.getGridRowStyle(i)\"\r\n></div>\n}\r\n<ng-content></ng-content>\r\n<gridster-preview\r\n [gridRenderer]=\"gridRenderer\"\r\n [previewStyle$]=\"previewStyle$\"\r\n class=\"gridster-preview\"\r\n></gridster-preview>\r\n", styles: ["gridster{position:relative;box-sizing:border-box;background:gray;width:100%;height:100%;-webkit-user-select:none;user-select:none;display:block}gridster.fit{overflow-x:hidden;overflow-y:hidden}gridster.scrollVertical{overflow-x:hidden;overflow-y:auto}gridster.scrollHorizontal{overflow-x:auto;overflow-y:hidden}gridster.fixed{overflow:auto}gridster.mobile{overflow-x:hidden;overflow-y:auto}gridster.mobile gridster-item{position:relative}gridster.gridSize{height:initial;width:initial}gridster.gridSize.fit{height:100%;width:100%}gridster .gridster-column,gridster .gridster-row{position:absolute;display:none;transition:.3s;box-sizing:border-box}gridster.display-grid .gridster-column,gridster.display-grid .gridster-row{display:block}gridster .gridster-column{border-left:1px solid white;border-right:1px solid white}gridster .gridster-row{border-top:1px solid white;border-bottom:1px solid white}\n"], dependencies: [{ kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: GridsterPreviewComponent, selector: "gridster-preview", inputs: ["previewStyle$", "gridRenderer"] }], changeDetection: i0.ChangeDetectionStrategy.Eager, encapsulation: i0.ViewEncapsulation.None }); }
|
|
1909
1909
|
}
|
|
1910
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1910
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: GridsterComponent, decorators: [{
|
|
1911
1911
|
type: Component,
|
|
1912
|
-
args: [{ selector: 'gridster', encapsulation: ViewEncapsulation.None, imports: [
|
|
1912
|
+
args: [{ selector: 'gridster', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.Eager, imports: [NgStyle, GridsterPreviewComponent], template: "@for (column of gridColumns; track column; let i = $index) {\n<div\r\n class=\"gridster-column\"\r\n \r\n [ngStyle]=\"gridRenderer.getGridColumnStyle(i)\"\r\n></div>\n}\r\n@for (row of gridRows; track row; let i = $index) {\n<div\r\n class=\"gridster-row\"\r\n \r\n [ngStyle]=\"gridRenderer.getGridRowStyle(i)\"\r\n></div>\n}\r\n<ng-content></ng-content>\r\n<gridster-preview\r\n [gridRenderer]=\"gridRenderer\"\r\n [previewStyle$]=\"previewStyle$\"\r\n class=\"gridster-preview\"\r\n></gridster-preview>\r\n", styles: ["gridster{position:relative;box-sizing:border-box;background:gray;width:100%;height:100%;-webkit-user-select:none;user-select:none;display:block}gridster.fit{overflow-x:hidden;overflow-y:hidden}gridster.scrollVertical{overflow-x:hidden;overflow-y:auto}gridster.scrollHorizontal{overflow-x:auto;overflow-y:hidden}gridster.fixed{overflow:auto}gridster.mobile{overflow-x:hidden;overflow-y:auto}gridster.mobile gridster-item{position:relative}gridster.gridSize{height:initial;width:initial}gridster.gridSize.fit{height:100%;width:100%}gridster .gridster-column,gridster .gridster-row{position:absolute;display:none;transition:.3s;box-sizing:border-box}gridster.display-grid .gridster-column,gridster.display-grid .gridster-row{display:block}gridster .gridster-column{border-left:1px solid white;border-right:1px solid white}gridster .gridster-row{border-top:1px solid white;border-bottom:1px solid white}\n"] }]
|
|
1913
1913
|
}], ctorParameters: () => [{ type: i0.ElementRef, decorators: [{
|
|
1914
1914
|
type: Inject,
|
|
1915
1915
|
args: [ElementRef]
|
|
@@ -3749,12 +3749,12 @@ class GridsterItemComponent {
|
|
|
3749
3749
|
}
|
|
3750
3750
|
return 0;
|
|
3751
3751
|
}
|
|
3752
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3753
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
3752
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: GridsterItemComponent, deps: [{ token: ElementRef }, { token: GridsterComponent }, { token: Renderer2 }, { token: NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3753
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.7", type: GridsterItemComponent, isStandalone: true, selector: "gridster-item", inputs: { item: "item" }, outputs: { itemInit: "itemInit", itemChange: "itemChange", itemResize: "itemResize" }, host: { properties: { "style.z-index": "this.zIndex" } }, usesOnChanges: true, ngImport: i0, template: "<ng-content></ng-content>\r\n@if (resize.resizableHandles?.s && resize.resizeEnabled) {\n<div\r\n (mousedown)=\"resize.dragStartDelay($event)\"\r\n (touchstart)=\"resize.dragStartDelay($event)\"\r\n \r\n class=\"gridster-item-resizable-handler handle-s\"\r\n></div>\n}\r\n@if (resize.resizableHandles?.e && resize.resizeEnabled) {\n<div\r\n (mousedown)=\"resize.dragStartDelay($event)\"\r\n (touchstart)=\"resize.dragStartDelay($event)\"\r\n \r\n class=\"gridster-item-resizable-handler handle-e\"\r\n></div>\n}\r\n@if (resize.resizableHandles?.n && resize.resizeEnabled) {\n<div\r\n (mousedown)=\"resize.dragStartDelay($event)\"\r\n (touchstart)=\"resize.dragStartDelay($event)\"\r\n \r\n class=\"gridster-item-resizable-handler handle-n\"\r\n></div>\n}\r\n@if (resize.resizableHandles?.w && resize.resizeEnabled) {\n<div\r\n (mousedown)=\"resize.dragStartDelay($event)\"\r\n (touchstart)=\"resize.dragStartDelay($event)\"\r\n \r\n class=\"gridster-item-resizable-handler handle-w\"\r\n></div>\n}\r\n@if (resize.resizableHandles?.se && resize.resizeEnabled) {\n<div\r\n (mousedown)=\"resize.dragStartDelay($event)\"\r\n (touchstart)=\"resize.dragStartDelay($event)\"\r\n \r\n class=\"gridster-item-resizable-handler handle-se\"\r\n></div>\n}\r\n@if (resize.resizableHandles?.ne && resize.resizeEnabled) {\n<div\r\n (mousedown)=\"resize.dragStartDelay($event)\"\r\n (touchstart)=\"resize.dragStartDelay($event)\"\r\n \r\n class=\"gridster-item-resizable-handler handle-ne\"\r\n></div>\n}\r\n@if (resize.resizableHandles?.sw && resize.resizeEnabled) {\n<div\r\n (mousedown)=\"resize.dragStartDelay($event)\"\r\n (touchstart)=\"resize.dragStartDelay($event)\"\r\n \r\n class=\"gridster-item-resizable-handler handle-sw\"\r\n></div>\n}\r\n@if (resize.resizableHandles?.nw && resize.resizeEnabled) {\n<div\r\n (mousedown)=\"resize.dragStartDelay($event)\"\r\n (touchstart)=\"resize.dragStartDelay($event)\"\r\n \r\n class=\"gridster-item-resizable-handler handle-nw\"\r\n></div>\n}\r\n", styles: ["gridster-item{box-sizing:border-box;z-index:1;position:absolute;overflow:hidden;transition:.3s;display:none;background:#fff;-webkit-user-select:text;user-select:text}gridster-item.gridster-item-moving{cursor:move}gridster-item.gridster-item-resizing,gridster-item.gridster-item-moving{transition:0s;z-index:2;box-shadow:0 0 5px 5px #0003,0 6px 10px #00000024,0 1px 18px #0000001f}.gridster-item-resizable-handler{position:absolute;z-index:2}.gridster-item-resizable-handler.handle-n{cursor:ns-resize;height:10px;right:0;top:0;left:0}.gridster-item-resizable-handler.handle-e{cursor:ew-resize;width:10px;bottom:0;right:0;top:0}.gridster-item-resizable-handler.handle-s{cursor:ns-resize;height:10px;right:0;bottom:0;left:0}.gridster-item-resizable-handler.handle-w{cursor:ew-resize;width:10px;left:0;top:0;bottom:0}.gridster-item-resizable-handler.handle-ne{cursor:ne-resize;width:10px;height:10px;right:0;top:0}.gridster-item-resizable-handler.handle-nw{cursor:nw-resize;width:10px;height:10px;left:0;top:0}.gridster-item-resizable-handler.handle-se{cursor:se-resize;width:0;height:0;right:0;bottom:0;border-style:solid;border-width:0 0 10px 10px;border-color:transparent}.gridster-item-resizable-handler.handle-sw{cursor:sw-resize;width:10px;height:10px;left:0;bottom:0}gridster-item:hover .gridster-item-resizable-handler.handle-se{border-color:transparent transparent #ccc}.no-hover gridster-item:hover{box-shadow:none!important}\n"], changeDetection: i0.ChangeDetectionStrategy.Eager, encapsulation: i0.ViewEncapsulation.None }); }
|
|
3754
3754
|
}
|
|
3755
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3755
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: GridsterItemComponent, decorators: [{
|
|
3756
3756
|
type: Component,
|
|
3757
|
-
args: [{ selector: 'gridster-item', encapsulation: ViewEncapsulation.None, imports: [
|
|
3757
|
+
args: [{ selector: 'gridster-item', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.Eager, imports: [], template: "<ng-content></ng-content>\r\n@if (resize.resizableHandles?.s && resize.resizeEnabled) {\n<div\r\n (mousedown)=\"resize.dragStartDelay($event)\"\r\n (touchstart)=\"resize.dragStartDelay($event)\"\r\n \r\n class=\"gridster-item-resizable-handler handle-s\"\r\n></div>\n}\r\n@if (resize.resizableHandles?.e && resize.resizeEnabled) {\n<div\r\n (mousedown)=\"resize.dragStartDelay($event)\"\r\n (touchstart)=\"resize.dragStartDelay($event)\"\r\n \r\n class=\"gridster-item-resizable-handler handle-e\"\r\n></div>\n}\r\n@if (resize.resizableHandles?.n && resize.resizeEnabled) {\n<div\r\n (mousedown)=\"resize.dragStartDelay($event)\"\r\n (touchstart)=\"resize.dragStartDelay($event)\"\r\n \r\n class=\"gridster-item-resizable-handler handle-n\"\r\n></div>\n}\r\n@if (resize.resizableHandles?.w && resize.resizeEnabled) {\n<div\r\n (mousedown)=\"resize.dragStartDelay($event)\"\r\n (touchstart)=\"resize.dragStartDelay($event)\"\r\n \r\n class=\"gridster-item-resizable-handler handle-w\"\r\n></div>\n}\r\n@if (resize.resizableHandles?.se && resize.resizeEnabled) {\n<div\r\n (mousedown)=\"resize.dragStartDelay($event)\"\r\n (touchstart)=\"resize.dragStartDelay($event)\"\r\n \r\n class=\"gridster-item-resizable-handler handle-se\"\r\n></div>\n}\r\n@if (resize.resizableHandles?.ne && resize.resizeEnabled) {\n<div\r\n (mousedown)=\"resize.dragStartDelay($event)\"\r\n (touchstart)=\"resize.dragStartDelay($event)\"\r\n \r\n class=\"gridster-item-resizable-handler handle-ne\"\r\n></div>\n}\r\n@if (resize.resizableHandles?.sw && resize.resizeEnabled) {\n<div\r\n (mousedown)=\"resize.dragStartDelay($event)\"\r\n (touchstart)=\"resize.dragStartDelay($event)\"\r\n \r\n class=\"gridster-item-resizable-handler handle-sw\"\r\n></div>\n}\r\n@if (resize.resizableHandles?.nw && resize.resizeEnabled) {\n<div\r\n (mousedown)=\"resize.dragStartDelay($event)\"\r\n (touchstart)=\"resize.dragStartDelay($event)\"\r\n \r\n class=\"gridster-item-resizable-handler handle-nw\"\r\n></div>\n}\r\n", styles: ["gridster-item{box-sizing:border-box;z-index:1;position:absolute;overflow:hidden;transition:.3s;display:none;background:#fff;-webkit-user-select:text;user-select:text}gridster-item.gridster-item-moving{cursor:move}gridster-item.gridster-item-resizing,gridster-item.gridster-item-moving{transition:0s;z-index:2;box-shadow:0 0 5px 5px #0003,0 6px 10px #00000024,0 1px 18px #0000001f}.gridster-item-resizable-handler{position:absolute;z-index:2}.gridster-item-resizable-handler.handle-n{cursor:ns-resize;height:10px;right:0;top:0;left:0}.gridster-item-resizable-handler.handle-e{cursor:ew-resize;width:10px;bottom:0;right:0;top:0}.gridster-item-resizable-handler.handle-s{cursor:ns-resize;height:10px;right:0;bottom:0;left:0}.gridster-item-resizable-handler.handle-w{cursor:ew-resize;width:10px;left:0;top:0;bottom:0}.gridster-item-resizable-handler.handle-ne{cursor:ne-resize;width:10px;height:10px;right:0;top:0}.gridster-item-resizable-handler.handle-nw{cursor:nw-resize;width:10px;height:10px;left:0;top:0}.gridster-item-resizable-handler.handle-se{cursor:se-resize;width:0;height:0;right:0;bottom:0;border-style:solid;border-width:0 0 10px 10px;border-color:transparent}.gridster-item-resizable-handler.handle-sw{cursor:sw-resize;width:10px;height:10px;left:0;bottom:0}gridster-item:hover .gridster-item-resizable-handler.handle-se{border-color:transparent transparent #ccc}.no-hover gridster-item:hover{box-shadow:none!important}\n"] }]
|
|
3758
3758
|
}], ctorParameters: () => [{ type: i0.ElementRef, decorators: [{
|
|
3759
3759
|
type: Inject,
|
|
3760
3760
|
args: [ElementRef]
|
|
@@ -3808,12 +3808,12 @@ class LockTooltip {
|
|
|
3808
3808
|
this.domService.removeComponent(comp);
|
|
3809
3809
|
});
|
|
3810
3810
|
}
|
|
3811
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3812
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
3811
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: LockTooltip, deps: [{ token: i3.DomService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3812
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.7", type: LockTooltip, isStandalone: false, selector: "ra-lock-tooltip", ngImport: i0, template: "<div class=\"lock-popup-content light widget-config-item\"\r\n [ngStyle]=\"{'top': containerTop,'bottom':containerBottom,'position':'fixed','left':containerLeft,'z-index': '9999','width':'250px','min-height':'fit-content'}\">\r\n @if (data && !template) {\n<div>\r\n <label style=\"color: #D9F0FA;\">\r\n {{title}}:\r\n </label>\r\n <div style=\"color: white;\">\r\n @for (item of data; track item) {\n<label class=\"bold\" style=\"margin-bottom: 0px;width: 100%;\">\r\n {{item}}\r\n </label>\n}\r\n </div>\r\n <hr style=\"background-color: white;\">\r\n <div style=\"color: #D9F0FA;\">\r\n <label>{{footer}}</label>\r\n </div>\r\n </div>\n}\r\n @if (!data && template) {\n<div>\r\n <ng-container *ngTemplateOutlet=\"template\">\r\n </ng-container>\r\n </div>\n}\r\n</div>", styles: [".lock-popup-content{margin-top:8px;position:absolute;right:0;top:79%;box-shadow:0 8px 16px 8px #0003;z-index:899;font-size:12px;min-width:220px!important;min-height:112px;background-color:#219bfd;opacity:.9;padding:15px;color:#fff}.widget-config-item i{font-size:17px;color:#42b4e6}.widget-config-item span{font-size:12px;font:inherit;padding-left:12px;color:#42b4e6}\n"], dependencies: [{ kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.Eager }); }
|
|
3813
3813
|
}
|
|
3814
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3814
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: LockTooltip, decorators: [{
|
|
3815
3815
|
type: Component,
|
|
3816
|
-
args: [{ selector: 'ra-lock-tooltip', standalone: false, template: "<div class=\"lock-popup-content light widget-config-item\"\r\n [ngStyle]=\"{'top': containerTop,'bottom':containerBottom,'position':'fixed','left':containerLeft,'z-index': '9999','width':'250px','min-height':'fit-content'}\">\r\n
|
|
3816
|
+
args: [{ selector: 'ra-lock-tooltip', changeDetection: ChangeDetectionStrategy.Eager, standalone: false, template: "<div class=\"lock-popup-content light widget-config-item\"\r\n [ngStyle]=\"{'top': containerTop,'bottom':containerBottom,'position':'fixed','left':containerLeft,'z-index': '9999','width':'250px','min-height':'fit-content'}\">\r\n @if (data && !template) {\n<div>\r\n <label style=\"color: #D9F0FA;\">\r\n {{title}}:\r\n </label>\r\n <div style=\"color: white;\">\r\n @for (item of data; track item) {\n<label class=\"bold\" style=\"margin-bottom: 0px;width: 100%;\">\r\n {{item}}\r\n </label>\n}\r\n </div>\r\n <hr style=\"background-color: white;\">\r\n <div style=\"color: #D9F0FA;\">\r\n <label>{{footer}}</label>\r\n </div>\r\n </div>\n}\r\n @if (!data && template) {\n<div>\r\n <ng-container *ngTemplateOutlet=\"template\">\r\n </ng-container>\r\n </div>\n}\r\n</div>", styles: [".lock-popup-content{margin-top:8px;position:absolute;right:0;top:79%;box-shadow:0 8px 16px 8px #0003;z-index:899;font-size:12px;min-width:220px!important;min-height:112px;background-color:#219bfd;opacity:.9;padding:15px;color:#fff}.widget-config-item i{font-size:17px;color:#42b4e6}.widget-config-item span{font-size:12px;font:inherit;padding-left:12px;color:#42b4e6}\n"] }]
|
|
3817
3817
|
}], ctorParameters: () => [{ type: i3.DomService }] });
|
|
3818
3818
|
|
|
3819
3819
|
class RAWidgetContainer {
|
|
@@ -4725,12 +4725,12 @@ class RAWidgetContainer {
|
|
|
4725
4725
|
return item;
|
|
4726
4726
|
return translatedString.toLowerCase() === rKey.toLowerCase() ? item : translatedString;
|
|
4727
4727
|
}
|
|
4728
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
4729
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
4728
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: RAWidgetContainer, deps: [{ token: RaDashboardService }, { token: i2$1.NgxUiLoaderService }, { token: i3.RATranslateService }, { token: i0.NgZone }, { token: i4.NotifierService }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i3.RAPermissionService }, { token: i3.DomService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4729
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.7", type: RAWidgetContainer, isStandalone: false, selector: "ra-widget-container", inputs: { widgetInstanceId: ["widget-instance-id", "widgetInstanceId"], globalFilter: ["global-filter", "globalFilter"], dashboardInfo: ["dashboard-info", "dashboardInfo"], data: "data", raDashboardEventBus: ["event-bus", "raDashboardEventBus"], appConfig: ["app-config", "appConfig"], width: ["widget-width", "width"], height: ["widget-height", "height"], gridCellHeight: ["grid-cell-height", "gridCellHeight"], bulkActionData: ["bulk-action-data", "bulkActionData"], canLoadData: "canLoadData", setResized: ["dom-resized", "setResized"] }, outputs: { widgetDeleted: "widgetDeleted", updateAppliedFilters: "updateAppliedFilters", dataLoaded: "dataLoaded", widgetLoaded: "widgetLoaded" }, viewQueries: [{ propertyName: "ctlWidget", first: true, predicate: ["ctlWidget"], descendants: true }, { propertyName: "ctlWidgetModule", first: true, predicate: ["ctlWidgetModule"], descendants: true, read: ViewContainerRef }, { propertyName: "widgetDropdown", first: true, predicate: ["widgetDropdown"], descendants: true }, { propertyName: "searchInput", first: true, predicate: ["searchInput"], descendants: true }, { propertyName: "wcWrapper", first: true, predicate: ["wcWrapper"], descendants: true }, { propertyName: "banPopupDiv", first: true, predicate: ["banPopupDiv"], descendants: true }, { propertyName: "lockPopupDiv", first: true, predicate: ["lockPopupDiv"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div #wcWrapper class=\"wc-wrapper\" (mouseenter)=\"mouseHover(true)\" (mouseleave)=\"mouseHover(false)\"\r\n [ngStyle]=\"{'margin-left': noPadding?'0px':'15px','margin-right': noPadding?'0px':'15px'}\">\r\n @if (!hideTitle && !showOnlyDropdown) {\n<div class=\"wcheader widget-move\"\r\n [ngClass]=\"{'underLine': enableTitleLine || isWidgetStateApplicable}\">\r\n <div class=\"col-md-12\" [ngClass]=\"{'wc-mover' : isWidgetCanMove }\" style=\"padding-left: 0px;height:inherit;padding-right: 0px;\">\r\n <div style=\"display:flex;margin-top:10px;\"\r\n [ngStyle]=\"{'margin-left': noPadding?'15px':'0px','margin-right': noPadding?'15px':'0px'}\">\r\n <div class=\"col-9 float-left title-label\">\r\n <ra-tooltip [value]=\"toolTipValue\" [width]=\"toolTipWidth\">\r\n <div [hidden]=\"hideTitle\" style=\"text-overflow: ellipsis;white-space: nowrap;overflow: hidden;\"\r\n (mouseover)=\"mouseOver($event)\" #searchInput>{{WidgetDisplayName}}</div>\r\n </ra-tooltip>\r\n </div>\r\n <div class=\"col-3\" style=\"cursor:default;padding-right: 0px;\"> \r\n <div class=\"float-right\" style=\"display: flex;\">\r\n <div #banPopupDiv (mouseover)=\"openPopup(inapplicableIconTitle,inapplicableFilters,inapplicableIconFooter,'innaplicable')\" (mouseout)=\"closePopup()\" class=\"title-bar-lock-icon lock-dropdown\" [hidden]=\"!inapplicableFilters || inapplicableFilters.length == 0 || !globalFilter || globalFilter == '{}'\">\r\n <i class=\"fal fa-ban lock\"></i> \r\n </div>\r\n <div #lockPopupDiv (mouseover)=\"openPopup(lockIconTitle,lockDetails,lockIconFooter,'lock',lockTemplateInfo)\" (mouseout)=\"closePopup()\" class=\"title-bar-lock-icon lock-dropdown\" [hidden]=\"(!lockDetails && !lockTemplateInfo) || hideLock\">\r\n <i class=\"fal fa-lock lock\"></i> \r\n </div>\r\n @if (!hideEllipses) {\n\r\n <div class=\"widget-menu\" style=\"width:10px;\"\r\n [ngClass]=\"{'widget-menu-show': isMouseHover && showSettingsLink}\">\r\n <div class=\"dropbtn title-bar-icon\">\r\n <i (click)=\"showDropDown($event)\" #widgetDropdown class=\"fal fa-ellipsis-v widget-menu-ellipse\"></i>\r\n </div>\r\n </div>\r\n \n}\r\n @if (hideEllipses) {\n<div class=\"widget-action-icons-card\">\r\n <div class=\"widget-menu-trend-report\" style=\"display: flex;\">\r\n @if (showInlineDownloadIcon) {\n<div class=\"title-bar-action-icon\" title=\"{{'Common.downloads' | translate}}\" aria-label=\"{{'Common.downloads' | translate}}\">\r\n <i (click)=\"onTrendReportDownloadClick()\" class=\"fal fa-download\"></i>\r\n </div>\n}\r\n @if (isWidgetMgmnt && (!data.widgetInfo.templateWidgetSettings || !data.widgetInfo.templateWidgetSettings.hideEdit)) {\n<div class=\"title-bar-action-icon\" title=\"{{'Common.edit' | translate}}\" aria-label=\"{{'Common.edit' | translate}}\">\r\n <i (click)=\"editWidget()\" class=\"fal fa-edit\"></i>\r\n </div>\n}\r\n </div>\r\n </div>\n}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\n}\r\n @if (hideTitle && !showOnlyDropdown) {\n<div class=\"wcheader widget-move\"\r\n style=\"height: 45px;width: 95%;cursor: move;z-index: 99;opacity: 0;\">\r\n </div>\n}\r\n @if (hideTitle && !showOnlyDropdown && !hideEllipses) {\n\r\n <div class=\"widget-menu widget-menu-title-hidden\" [ngClass]=\"{'widget-menu-show': isMouseHover && showSettingsLink}\">\r\n <div class=\"dropbtn title-bar-icon\">\r\n <i (click)=\"showDropDown($event)\" class=\"fal fa-ellipsis-v\" style=\"text-align: center;\"></i>\r\n </div>\r\n </div>\r\n \n}\r\n @if (hideTitle && !showOnlyDropdown && hideEllipses) {\n<div class=\"widget-menu-title-hidden widget-action-icons-card\">\r\n <div class=\"widget-menu-trend-report\" style=\"display: flex;\">\r\n @if (showInlineDownloadIcon) {\n<div class=\"title-bar-action-icon\" title=\"{{'Common.downloads' | translate}}\" aria-label=\"{{'Common.downloads' | translate}}\">\r\n <i (click)=\"onTrendReportDownloadClick()\" class=\"fal fa-download\"></i>\r\n </div>\n}\r\n @if (isWidgetMgmnt && (!data.widgetInfo.templateWidgetSettings || !data.widgetInfo.templateWidgetSettings.hideEdit)) {\n<div class=\"title-bar-action-icon\" title=\"{{'Common.edit' | translate}}\" aria-label=\"{{'Common.edit' | translate}}\">\r\n <i (click)=\"editWidget()\" class=\"fal fa-edit\"></i>\r\n </div>\n}\r\n </div>\r\n </div>\n}\r\n <div class=\"wcBody\" [ngStyle]=\"{'bottom': noPadding?'0px':'10px','top':hideTitle || showOnlyDropdown?'10px':'46px'}\">\r\n <div [hidden]=\"isWidgetStateApplicable\" class=\"m-fadeOut widget-overlay\" [ngClass]=\"{'m-fadeIn': showPanel}\">\r\n <div class=\"lds-roller\">\r\n <div></div>\r\n <div></div>\r\n <div></div>\r\n <div></div>\r\n <div></div>\r\n <div></div>\r\n <div></div>\r\n <div></div>\r\n </div>\r\n </div>\r\n <div class=\"wc\" [hidden]=\"isWidgetStateApplicable\">\r\n <div [hidden]=\"!isCustomElement\" #ctlWidget></div>\r\n <div [hidden]=\"isCustomElement\">\r\n <ng-container #ctlWidgetModule></ng-container>\r\n </div>\r\n </div>\r\n @if (isWidgetStateApplicable) {\n<div class=\"defaultConfig\">\r\n <ra-widget-state style=\"width: 100%;height: 100%;\" [isWidgetStateApplicable]=\"isWidgetStateApplicable\"\r\n [isGlobalFilterApplied]=\"isGlobalFilterApplied\" [widgetEmptyState]=\"widgetEmptyState\"\r\n (editWidgetClicked)=editWidget() [widthCol]=\"width\" [heightCol]=\"height\">\r\n </ra-widget-state>\r\n </div>\n}\r\n <div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i6.TooltipControl, selector: "ra-tooltip", inputs: ["data", "url", "value", "key", "dataField", "position", "width", "count", "moreItemText", "reset", "disable-tooltip", "set-top-padding"], outputs: ["dataLoaded"] }, { kind: "component", type: i6.WidgetStateControl, selector: "ra-widget-state", inputs: ["isWidgetStateApplicable", "isGlobalFilterApplied", "widgetEmptyState", "widgetEmptyDataText", "widthCol", "heightCol"], outputs: ["editWidgetClicked"] }, { kind: "pipe", type: i3.RATranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.Eager }); }
|
|
4730
4730
|
}
|
|
4731
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4731
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: RAWidgetContainer, decorators: [{
|
|
4732
4732
|
type: Component,
|
|
4733
|
-
args: [{ selector: 'ra-widget-container', standalone: false, template: "<div #wcWrapper class=\"wc-wrapper\" (mouseenter)=\"mouseHover(true)\" (mouseleave)=\"mouseHover(false)\"\r\n [ngStyle]=\"{'margin-left': noPadding?'0px':'15px','margin-right': noPadding?'0px':'15px'}\">\r\n <div class=\"wcheader widget-move\"
|
|
4733
|
+
args: [{ selector: 'ra-widget-container', changeDetection: ChangeDetectionStrategy.Eager, standalone: false, template: "<div #wcWrapper class=\"wc-wrapper\" (mouseenter)=\"mouseHover(true)\" (mouseleave)=\"mouseHover(false)\"\r\n [ngStyle]=\"{'margin-left': noPadding?'0px':'15px','margin-right': noPadding?'0px':'15px'}\">\r\n @if (!hideTitle && !showOnlyDropdown) {\n<div class=\"wcheader widget-move\"\r\n [ngClass]=\"{'underLine': enableTitleLine || isWidgetStateApplicable}\">\r\n <div class=\"col-md-12\" [ngClass]=\"{'wc-mover' : isWidgetCanMove }\" style=\"padding-left: 0px;height:inherit;padding-right: 0px;\">\r\n <div style=\"display:flex;margin-top:10px;\"\r\n [ngStyle]=\"{'margin-left': noPadding?'15px':'0px','margin-right': noPadding?'15px':'0px'}\">\r\n <div class=\"col-9 float-left title-label\">\r\n <ra-tooltip [value]=\"toolTipValue\" [width]=\"toolTipWidth\">\r\n <div [hidden]=\"hideTitle\" style=\"text-overflow: ellipsis;white-space: nowrap;overflow: hidden;\"\r\n (mouseover)=\"mouseOver($event)\" #searchInput>{{WidgetDisplayName}}</div>\r\n </ra-tooltip>\r\n </div>\r\n <div class=\"col-3\" style=\"cursor:default;padding-right: 0px;\"> \r\n <div class=\"float-right\" style=\"display: flex;\">\r\n <div #banPopupDiv (mouseover)=\"openPopup(inapplicableIconTitle,inapplicableFilters,inapplicableIconFooter,'innaplicable')\" (mouseout)=\"closePopup()\" class=\"title-bar-lock-icon lock-dropdown\" [hidden]=\"!inapplicableFilters || inapplicableFilters.length == 0 || !globalFilter || globalFilter == '{}'\">\r\n <i class=\"fal fa-ban lock\"></i> \r\n </div>\r\n <div #lockPopupDiv (mouseover)=\"openPopup(lockIconTitle,lockDetails,lockIconFooter,'lock',lockTemplateInfo)\" (mouseout)=\"closePopup()\" class=\"title-bar-lock-icon lock-dropdown\" [hidden]=\"(!lockDetails && !lockTemplateInfo) || hideLock\">\r\n <i class=\"fal fa-lock lock\"></i> \r\n </div>\r\n @if (!hideEllipses) {\n\r\n <div class=\"widget-menu\" style=\"width:10px;\"\r\n [ngClass]=\"{'widget-menu-show': isMouseHover && showSettingsLink}\">\r\n <div class=\"dropbtn title-bar-icon\">\r\n <i (click)=\"showDropDown($event)\" #widgetDropdown class=\"fal fa-ellipsis-v widget-menu-ellipse\"></i>\r\n </div>\r\n </div>\r\n \n}\r\n @if (hideEllipses) {\n<div class=\"widget-action-icons-card\">\r\n <div class=\"widget-menu-trend-report\" style=\"display: flex;\">\r\n @if (showInlineDownloadIcon) {\n<div class=\"title-bar-action-icon\" title=\"{{'Common.downloads' | translate}}\" aria-label=\"{{'Common.downloads' | translate}}\">\r\n <i (click)=\"onTrendReportDownloadClick()\" class=\"fal fa-download\"></i>\r\n </div>\n}\r\n @if (isWidgetMgmnt && (!data.widgetInfo.templateWidgetSettings || !data.widgetInfo.templateWidgetSettings.hideEdit)) {\n<div class=\"title-bar-action-icon\" title=\"{{'Common.edit' | translate}}\" aria-label=\"{{'Common.edit' | translate}}\">\r\n <i (click)=\"editWidget()\" class=\"fal fa-edit\"></i>\r\n </div>\n}\r\n </div>\r\n </div>\n}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\n}\r\n @if (hideTitle && !showOnlyDropdown) {\n<div class=\"wcheader widget-move\"\r\n style=\"height: 45px;width: 95%;cursor: move;z-index: 99;opacity: 0;\">\r\n </div>\n}\r\n @if (hideTitle && !showOnlyDropdown && !hideEllipses) {\n\r\n <div class=\"widget-menu widget-menu-title-hidden\" [ngClass]=\"{'widget-menu-show': isMouseHover && showSettingsLink}\">\r\n <div class=\"dropbtn title-bar-icon\">\r\n <i (click)=\"showDropDown($event)\" class=\"fal fa-ellipsis-v\" style=\"text-align: center;\"></i>\r\n </div>\r\n </div>\r\n \n}\r\n @if (hideTitle && !showOnlyDropdown && hideEllipses) {\n<div class=\"widget-menu-title-hidden widget-action-icons-card\">\r\n <div class=\"widget-menu-trend-report\" style=\"display: flex;\">\r\n @if (showInlineDownloadIcon) {\n<div class=\"title-bar-action-icon\" title=\"{{'Common.downloads' | translate}}\" aria-label=\"{{'Common.downloads' | translate}}\">\r\n <i (click)=\"onTrendReportDownloadClick()\" class=\"fal fa-download\"></i>\r\n </div>\n}\r\n @if (isWidgetMgmnt && (!data.widgetInfo.templateWidgetSettings || !data.widgetInfo.templateWidgetSettings.hideEdit)) {\n<div class=\"title-bar-action-icon\" title=\"{{'Common.edit' | translate}}\" aria-label=\"{{'Common.edit' | translate}}\">\r\n <i (click)=\"editWidget()\" class=\"fal fa-edit\"></i>\r\n </div>\n}\r\n </div>\r\n </div>\n}\r\n <div class=\"wcBody\" [ngStyle]=\"{'bottom': noPadding?'0px':'10px','top':hideTitle || showOnlyDropdown?'10px':'46px'}\">\r\n <div [hidden]=\"isWidgetStateApplicable\" class=\"m-fadeOut widget-overlay\" [ngClass]=\"{'m-fadeIn': showPanel}\">\r\n <div class=\"lds-roller\">\r\n <div></div>\r\n <div></div>\r\n <div></div>\r\n <div></div>\r\n <div></div>\r\n <div></div>\r\n <div></div>\r\n <div></div>\r\n </div>\r\n </div>\r\n <div class=\"wc\" [hidden]=\"isWidgetStateApplicable\">\r\n <div [hidden]=\"!isCustomElement\" #ctlWidget></div>\r\n <div [hidden]=\"isCustomElement\">\r\n <ng-container #ctlWidgetModule></ng-container>\r\n </div>\r\n </div>\r\n @if (isWidgetStateApplicable) {\n<div class=\"defaultConfig\">\r\n <ra-widget-state style=\"width: 100%;height: 100%;\" [isWidgetStateApplicable]=\"isWidgetStateApplicable\"\r\n [isGlobalFilterApplied]=\"isGlobalFilterApplied\" [widgetEmptyState]=\"widgetEmptyState\"\r\n (editWidgetClicked)=editWidget() [widthCol]=\"width\" [heightCol]=\"height\">\r\n </ra-widget-state>\r\n </div>\n}\r\n <div>\r\n </div>\r\n </div>\r\n</div>" }]
|
|
4734
4734
|
}], ctorParameters: () => [{ type: RaDashboardService }, { type: i2$1.NgxUiLoaderService }, { type: i3.RATranslateService }, { type: i0.NgZone }, { type: i4.NotifierService }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }, { type: i3.RAPermissionService }, { type: i3.DomService }], propDecorators: { ctlWidget: [{
|
|
4735
4735
|
type: ViewChild,
|
|
4736
4736
|
args: ['ctlWidget', { static: false }]
|
|
@@ -5049,49 +5049,59 @@ class RADashboardArea {
|
|
|
5049
5049
|
}
|
|
5050
5050
|
return;
|
|
5051
5051
|
}
|
|
5052
|
-
//
|
|
5053
|
-
const
|
|
5054
|
-
|
|
5052
|
+
// Prefer the real data table (ra-grid) so we do not pick unrelated tables when present
|
|
5053
|
+
const dataTable = element.querySelector('table.ra-grid')
|
|
5054
|
+
?? element.querySelector('table');
|
|
5055
|
+
const tbody = dataTable?.querySelector('tbody')
|
|
5056
|
+
?? element.querySelector('tbody');
|
|
5057
|
+
const table = dataTable;
|
|
5055
5058
|
const wcBody = element.querySelector('.wcBody');
|
|
5056
5059
|
const wc = element.querySelector('.wc');
|
|
5057
5060
|
const kendoGridContent = element.querySelector('.k-grid-content');
|
|
5058
5061
|
const kendoGridTable = element.querySelector('.k-grid-table');
|
|
5062
|
+
const addVisibleFilterHeights = (base) => {
|
|
5063
|
+
let h = base;
|
|
5064
|
+
element.querySelectorAll('.ra-widget-filter').forEach((node) => {
|
|
5065
|
+
const fe = node;
|
|
5066
|
+
if (fe.offsetHeight > 0) {
|
|
5067
|
+
h += fe.offsetHeight;
|
|
5068
|
+
}
|
|
5069
|
+
});
|
|
5070
|
+
return h;
|
|
5071
|
+
};
|
|
5059
5072
|
// Measure the actual content height - try multiple strategies to get accurate measurement
|
|
5060
5073
|
let contentHeight = 0;
|
|
5061
5074
|
let measuredElement = null;
|
|
5062
|
-
// Strategy 1:
|
|
5063
|
-
if (
|
|
5075
|
+
// Strategy 1: HTML table / ra-grid — use full table box (thead + tbody), not tbody only (avoids clipping header row)
|
|
5076
|
+
if (table && table.offsetHeight > 0) {
|
|
5077
|
+
measuredElement = table;
|
|
5078
|
+
contentHeight = addVisibleFilterHeights(table.offsetHeight);
|
|
5079
|
+
}
|
|
5080
|
+
// Strategy 2: tbody only (fallback if table not measurable)
|
|
5081
|
+
else if (tbody) {
|
|
5064
5082
|
measuredElement = tbody;
|
|
5065
|
-
// Count actual rows and calculate height
|
|
5066
5083
|
const rows = tbody.querySelectorAll('tr');
|
|
5067
5084
|
if (rows.length > 0) {
|
|
5068
|
-
|
|
5069
|
-
|
|
5070
|
-
|
|
5071
|
-
|
|
5072
|
-
|
|
5073
|
-
// Use scrollHeight if available, otherwise use estimated
|
|
5074
|
-
contentHeight = Math.max(tbody.scrollHeight, estimatedHeight);
|
|
5085
|
+
let totalRowHeight = 0;
|
|
5086
|
+
rows.forEach((row) => {
|
|
5087
|
+
totalRowHeight += row.offsetHeight || 30;
|
|
5088
|
+
});
|
|
5089
|
+
contentHeight = addVisibleFilterHeights(totalRowHeight);
|
|
5075
5090
|
}
|
|
5076
5091
|
else {
|
|
5077
|
-
contentHeight = tbody.scrollHeight;
|
|
5092
|
+
contentHeight = addVisibleFilterHeights(tbody.scrollHeight);
|
|
5078
5093
|
}
|
|
5079
5094
|
}
|
|
5080
|
-
// Strategy
|
|
5095
|
+
// Strategy 3: Measure Kendo grid content
|
|
5081
5096
|
else if (kendoGridContent) {
|
|
5082
5097
|
measuredElement = kendoGridContent;
|
|
5083
|
-
contentHeight = kendoGridContent.scrollHeight;
|
|
5098
|
+
contentHeight = addVisibleFilterHeights(kendoGridContent.scrollHeight);
|
|
5084
5099
|
// Also check the table inside
|
|
5085
5100
|
if (kendoGridTable) {
|
|
5086
5101
|
const tableHeight = kendoGridTable.scrollHeight;
|
|
5087
|
-
contentHeight = Math.max(contentHeight, tableHeight);
|
|
5102
|
+
contentHeight = Math.max(contentHeight, addVisibleFilterHeights(tableHeight));
|
|
5088
5103
|
}
|
|
5089
5104
|
}
|
|
5090
|
-
// Strategy 3: Measure table
|
|
5091
|
-
else if (table) {
|
|
5092
|
-
measuredElement = table;
|
|
5093
|
-
contentHeight = table.scrollHeight;
|
|
5094
|
-
}
|
|
5095
5105
|
// Strategy 4: Measure widget content
|
|
5096
5106
|
else if (wc) {
|
|
5097
5107
|
measuredElement = wc;
|
|
@@ -5118,16 +5128,22 @@ class RADashboardArea {
|
|
|
5118
5128
|
// Try offsetHeight
|
|
5119
5129
|
contentHeight = Math.max(contentHeight, offsetH);
|
|
5120
5130
|
}
|
|
5121
|
-
//
|
|
5122
|
-
|
|
5123
|
-
|
|
5124
|
-
|
|
5125
|
-
|
|
5126
|
-
|
|
5127
|
-
|
|
5128
|
-
|
|
5129
|
-
|
|
5130
|
-
|
|
5131
|
+
// Sum of tr heights often exceeds table.offsetHeight for many rows (borders/spacing), which grows extra whitespace.
|
|
5132
|
+
// When the table already laid out with a real box height, trust that measurement only.
|
|
5133
|
+
const tableBoxHeightTrusted = !!(table && table.offsetHeight > 0);
|
|
5134
|
+
if (!tableBoxHeightTrusted) {
|
|
5135
|
+
const rowHost = table || tbody;
|
|
5136
|
+
if (rowHost) {
|
|
5137
|
+
const hostEl = rowHost;
|
|
5138
|
+
const allRows = hostEl.querySelectorAll('tr');
|
|
5139
|
+
if (allRows.length > 0) {
|
|
5140
|
+
let totalRowHeight = 0;
|
|
5141
|
+
allRows.forEach((row) => {
|
|
5142
|
+
totalRowHeight += row.offsetHeight || 30;
|
|
5143
|
+
});
|
|
5144
|
+
const withFilters = addVisibleFilterHeights(totalRowHeight);
|
|
5145
|
+
contentHeight = Math.max(contentHeight, withFilters);
|
|
5146
|
+
}
|
|
5131
5147
|
}
|
|
5132
5148
|
}
|
|
5133
5149
|
}
|
|
@@ -5135,8 +5151,8 @@ class RADashboardArea {
|
|
|
5135
5151
|
const header = element.querySelector('.wcheader');
|
|
5136
5152
|
const headerHeight = header ? header.offsetHeight : 46;
|
|
5137
5153
|
// Calculate total height needed (content + header + padding)
|
|
5138
|
-
//
|
|
5139
|
-
const padding =
|
|
5154
|
+
// Slightly less vertical slack for tall tables (grid ceil already adds a partial row).
|
|
5155
|
+
const padding = contentHeight > 380 ? 28 : 36;
|
|
5140
5156
|
const totalHeight = contentHeight + headerHeight + padding;
|
|
5141
5157
|
// Check if content is loaded (reasonable height)
|
|
5142
5158
|
// For expanded view, we expect significant content
|
|
@@ -5146,13 +5162,12 @@ class RADashboardArea {
|
|
|
5146
5162
|
this.measureAndUpdateWidgetDimensions(gridsterItem, attempt + 1, maxAttempts);
|
|
5147
5163
|
return;
|
|
5148
5164
|
}
|
|
5149
|
-
// Calculate rows needed based on grid cell height
|
|
5150
|
-
//
|
|
5151
|
-
const
|
|
5152
|
-
|
|
5153
|
-
|
|
5154
|
-
const
|
|
5155
|
-
const newRows = Math.max(Math.ceil(bufferedRows), 4);
|
|
5165
|
+
// Calculate rows needed based on grid cell height.
|
|
5166
|
+
// Blend pixel + fractional cell buffer; keep a bit more for short content to avoid last-row clipping.
|
|
5167
|
+
const bufferPx = contentHeight > 380
|
|
5168
|
+
? Math.max(12, this.gridcellHeight * 0.35)
|
|
5169
|
+
: Math.max(16, this.gridcellHeight * 0.5);
|
|
5170
|
+
const newRows = Math.max(Math.ceil((totalHeight + bufferPx) / this.gridcellHeight), 2);
|
|
5156
5171
|
// For expanded view, use full available width (no spacing needed since widgets stack vertically)
|
|
5157
5172
|
const maxCols = this.responsiveService.maxColsDesktop || 12;
|
|
5158
5173
|
const newCols = maxCols; // Full width
|
|
@@ -5193,8 +5208,12 @@ class RADashboardArea {
|
|
|
5193
5208
|
}
|
|
5194
5209
|
if (el) {
|
|
5195
5210
|
const wcBody = el.querySelector('.wcBody');
|
|
5211
|
+
const tableContainer = el.querySelector('.table-container');
|
|
5212
|
+
const verifyTable = el.querySelector('table.ra-grid')
|
|
5213
|
+
?? el.querySelector('table');
|
|
5196
5214
|
const tbody = el.querySelector('tbody');
|
|
5197
|
-
|
|
5215
|
+
// ra-grid scrolls inside .table-container; measuring tbody alone can miss real overflow
|
|
5216
|
+
const contentEl = tableContainer || verifyTable || tbody || wcBody || el;
|
|
5198
5217
|
// Check if there's scrolling (scrollHeight > clientHeight)
|
|
5199
5218
|
if (contentEl && contentEl.scrollHeight > contentEl.clientHeight + 10) {
|
|
5200
5219
|
// Still has scrolling, need more height
|
|
@@ -5212,6 +5231,23 @@ class RADashboardArea {
|
|
|
5212
5231
|
setTimeout(() => this.setAreaHeight(), 100);
|
|
5213
5232
|
}
|
|
5214
5233
|
}
|
|
5234
|
+
else if (contentEl) {
|
|
5235
|
+
// If there is clear spare space, shrink one row to avoid oversized blank area.
|
|
5236
|
+
// Keep this conservative to prevent oscillation/flapping.
|
|
5237
|
+
const spareHeight = contentEl.clientHeight - contentEl.scrollHeight;
|
|
5238
|
+
const canShrink = spareHeight > (this.gridcellHeight * 0.8) && gridsterItem.rows > 2;
|
|
5239
|
+
if (canShrink) {
|
|
5240
|
+
gridsterItem.rows = gridsterItem.rows - 1;
|
|
5241
|
+
if (gridsterItem.widgetInfo) {
|
|
5242
|
+
gridsterItem.widgetInfo.height = gridsterItem.rows;
|
|
5243
|
+
}
|
|
5244
|
+
this.widgetList = [...this.widgetList];
|
|
5245
|
+
if (this.options && this.options.api) {
|
|
5246
|
+
this.options.api?.optionsChanged();
|
|
5247
|
+
}
|
|
5248
|
+
setTimeout(() => this.setAreaHeight(), 100);
|
|
5249
|
+
}
|
|
5250
|
+
}
|
|
5215
5251
|
}
|
|
5216
5252
|
// Continue with normal retry logic
|
|
5217
5253
|
this.measureAndUpdateWidgetDimensions(gridsterItem, attempt + 1, maxAttempts);
|
|
@@ -5743,12 +5779,12 @@ class RADashboardArea {
|
|
|
5743
5779
|
this.raDashboardEventBus.publish(RAEvent.ShowInapplicableFilterMessage, false);
|
|
5744
5780
|
}
|
|
5745
5781
|
}
|
|
5746
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
5747
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
5782
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: RADashboardArea, deps: [{ token: RaDashboardService }, { token: i0.NgZone }, { token: i2$1.NgxUiLoaderService }, { token: i3.RATranslateService }, { token: i4.NotifierService }, { token: i0.ChangeDetectorRef }, { token: RADashboardResponsiveService }, { token: i3.RAPermissionService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5783
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.7", type: RADashboardArea, isStandalone: false, selector: "ra-dashboard-area", inputs: { userDashboardId: ["user-dashboard-id", "userDashboardId"], areaKey: ["area-key", "areaKey"], downloadDatastreamLimit: ["download-datastream-limit", "downloadDatastreamLimit"], reportDatastreamLimit: ["report-datastream-limit", "reportDatastreamLimit"], globalFilter: ["global-filter", "globalFilter"], raDashboardEventBus: ["event-bus", "raDashboardEventBus"], widgetHeight: ["widget-height", "widgetHeight"], widgetWidth: ["widget-width", "widgetWidth"], appConfig: ["app-config", "appConfig"], dashboardInfo: ["dashboard-info", "dashboardInfo"], isIndicatorDashboard: "isIndicatorDashboard", templateConfig: "templateConfig", bulkActionData: ["bulk_Action_Data", "bulkActionData"], widgetCount: ["widget-count", "widgetCount"] }, outputs: { hideDashboardBanner: "hideDashboardBanner" }, host: { listeners: { "document:scroll": "scroll()" } }, viewQueries: [{ propertyName: "gridWrapper", first: true, predicate: ["gridWrapper"], descendants: true }, { propertyName: "gridItem", first: true, predicate: ["gridItem"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div #gridWrapper class=\"wrap gridster gridster-mobile\" [ngClass]=\"{'no-hover': isSiteDetailDashboard}\"\r\n [ngStyle]=\"{'height': (userWidgets.length > 0 && !showDownloadOnlyState) && !hasGrid ? ( gridheight + 'px') : 'unset'}\">\r\n <!-- <div #gridWrapper class=\"wrap gridster\"> -->\r\n @if (userWidgets.length > 0 && !showDownloadOnlyState) {\n<gridster [style.min-height]=\"gridsterHeight + '!important'\" [options]=\"options\" style=\"height:100%;\">\r\n @for (item of widgetList; track item) {\n<gridster-item #gridItem [item]=\"item\">\r\n @if (gridcellHeight && gridcellHeight > 0) {\n<ra-widget-container (widgetLoaded)=\"widgetLoaded($event, item)\" [canLoadData]=\"item.canLoadData\" (dataLoaded)=\"dataLoaded($event)\"\r\n [bulk-action-data]=\"bulkActionData\" [dashboard-info]=\"dashboardInfo\" [app-config]=\"appConfig\"\r\n [event-bus]=\"raDashboardEventBus\" (widgetDeleted)=\"deleteWidget($event)\" [data]=\"item\"\r\n [global-filter]=\"globalFilter\" [grid-cell-height]=\"gridcellHeight\"\r\n [widget-width]=\"item.cols\" [widget-height]=\"item.rows\" [widget-instance-id]=\"item.widgetInstanceId\"\r\n [dom-resized]=\"domResized\" (updateAppliedFilters)=\"updateAppliedFilters($event)\">\r\n </ra-widget-container>\n}\r\n </gridster-item>\n}\r\n </gridster>\n}\r\n\r\n @if (showEmptyDashboard) {\n<div class=\"empty-padding kiosk-hide\">\r\n <div class=\"empty-wrapper\">\r\n <div></div>\r\n <div class=\"empty-prefix\">\r\n <!-- <i class=\"fal fa-edit edit-icon\"></i> -->\r\n <span>{{emptyDashboardTitle}}</span>\r\n </div>\r\n <hr class=\"horizontalLine-solid\" />\r\n <div class=\"empty-content light\">\r\n <div>\r\n <div class=\"col-sm-12 empty-msg\">\r\n {{emptyDashboardMsg1}} <br />\r\n {{emptyDashboardMsg2}}\r\n </div>\r\n @if (isWidgetMgmnt) {\n<button class=\"btn btnLib btn-sm dashboard-button light\" (click)=\"buttonClick()\">\r\n <i class=\"{{emptyDashboardButtonIcon}}\"></i>{{emptyDashboardButtonText}}</button>\n}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\n}\r\n @if (showDownloadOnlyState) {\n<div class=\"empty-padding kiosk-hide\">\r\n <div class=\"empty-wrapper\">\r\n <div></div>\r\n <div class=\"empty-prefix\">\r\n <!-- <i class=\"fal fa-edit edit-icon\"></i> -->\r\n <span>{{DownloadOnlyStateTitle}}</span>\r\n </div>\r\n <hr class=\"horizontalLine-solid\" />\r\n <div class=\"empty-content light\">\r\n <div>\r\n <div class=\"col-sm-12 empty-msg\">\r\n {{DownloadOnlyStateMsg1}} <br />\r\n {{DownloadOnlyStateMsg2}}\r\n </div>\r\n @if (isWidgetMgmnt) {\n<button class=\"btn btnLib btn-sm dashboard-button light\" (click)=\"buttonActionClick(DownloadOnlyStateButtonAction1)\">\r\n <i class=\"{{DownloadOnlyStateButtonIcon1}}\"></i>{{DownloadOnlyStateButtonText1}}</button>\n}\r\n <button class=\"btn btnLib btn-sm dashboard-button light button-margin\" (click)=\"buttonActionClick(DownloadOnlyStateButtonAction2)\">\r\n <i class=\"{{DownloadOnlyStateButtonIcon2}}\"></i>{{DownloadOnlyStateButtonText2}}</button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\n}\r\n <notifier-container></notifier-container>\r\n</div>\r\n", styles: ["gridster{width:inherit;resize:height;display:flex;background-color:#fff;overflow-y:hidden!important;flex-direction:column}.dvheader{width:100%;height:35px;background:#000;color:#fff;padding:7px 3px 5px 6px;text-transform:uppercase}gridster-item{box-sizing:border-box;z-index:1;position:absolute;overflow:hidden;transition:.3s;display:none;background:#fff;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text;box-shadow:none}gridster-item:hover{box-shadow:0 1px 10px #00000026!important}.button-margin{margin-left:10px}@media screen and (max-width:685px){.gridster-mobile{height:auto!important;margin-bottom:50px!important}.gridster-mobile.no-hover{margin-bottom:0!important}}@media screen and (max-width:350px){.gridster-mobile{min-height:330px!important;margin-bottom:0!important}}.empty-padding{padding:15px 0;background-color:#fff;display:flex}.empty-wrapper{background-color:#fff;border:1px solid #9FA0A4;min-height:125px;width:100%}.empty-prefix{color:#32ad3c;font-size:18px;padding:15px}.empty-content{color:#626469;width:100%;padding:15px}.empty-msg{padding:0 0 15px;font-size:16px}.horizontalLine-solid{border-top:1px solid #cbcbcb;margin:0 15px}.dashboard-button{padding:5px 10px 5px 5px!important}.btnLib{background-color:#ededed;color:#333!important}.btn-sm,.btn-group-sm>.btn{padding:5px 20px 5px 5px}.edit-icon{color:#32ad3c;font-size:24px;margin-right:15px}.empty-title{margin-top:10px}@media screen and (max-width:600px){.empty-padding{padding:15px 0;background-color:#fff;width:100%;display:block}.empty-wrapper{display:flex;background-color:#fff;border:1px solid #9FA0A4;min-height:125px;width:100%}.empty-prefix{color:#32ad3c;font-size:16px;display:flex;height:40px;padding:15px}.empty-content{color:#333;display:flex;padding:15px}.empty-msg{padding:0 0 15px;font-size:14px}.edit-icon{color:#32ad3c;font-size:20px;margin-right:6px}.empty-title{margin-top:6px}}.gridster-h{min-height:50vh!important}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: GridsterComponent, selector: "gridster", inputs: ["options"] }, { kind: "component", type: GridsterItemComponent, selector: "gridster-item", inputs: ["item"], outputs: ["itemInit", "itemChange", "itemResize"] }, { kind: "component", type: i4.NotifierContainerComponent, selector: "notifier-container" }, { kind: "component", type: RAWidgetContainer, selector: "ra-widget-container", inputs: ["widget-instance-id", "global-filter", "dashboard-info", "data", "event-bus", "app-config", "widget-width", "widget-height", "grid-cell-height", "bulk-action-data", "canLoadData", "dom-resized"], outputs: ["widgetDeleted", "updateAppliedFilters", "dataLoaded", "widgetLoaded"] }], changeDetection: i0.ChangeDetectionStrategy.Eager }); }
|
|
5748
5784
|
}
|
|
5749
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
5785
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: RADashboardArea, decorators: [{
|
|
5750
5786
|
type: Component,
|
|
5751
|
-
args: [{ selector: 'ra-dashboard-area', standalone: false, template: "<div #gridWrapper class=\"wrap gridster gridster-mobile\" [ngClass]=\"{'no-hover': isSiteDetailDashboard}\"\r\n [ngStyle]=\"{'height': (userWidgets.length > 0 && !showDownloadOnlyState) && !hasGrid ? ( gridheight + 'px') : 'unset'}\">\r\n <!-- <div #gridWrapper class=\"wrap gridster\"> -->\r\n <gridster [style.min-height]=\"gridsterHeight + '!important'\" [options]=\"options\" style=\"height:100%;\"
|
|
5787
|
+
args: [{ selector: 'ra-dashboard-area', changeDetection: ChangeDetectionStrategy.Eager, standalone: false, template: "<div #gridWrapper class=\"wrap gridster gridster-mobile\" [ngClass]=\"{'no-hover': isSiteDetailDashboard}\"\r\n [ngStyle]=\"{'height': (userWidgets.length > 0 && !showDownloadOnlyState) && !hasGrid ? ( gridheight + 'px') : 'unset'}\">\r\n <!-- <div #gridWrapper class=\"wrap gridster\"> -->\r\n @if (userWidgets.length > 0 && !showDownloadOnlyState) {\n<gridster [style.min-height]=\"gridsterHeight + '!important'\" [options]=\"options\" style=\"height:100%;\">\r\n @for (item of widgetList; track item) {\n<gridster-item #gridItem [item]=\"item\">\r\n @if (gridcellHeight && gridcellHeight > 0) {\n<ra-widget-container (widgetLoaded)=\"widgetLoaded($event, item)\" [canLoadData]=\"item.canLoadData\" (dataLoaded)=\"dataLoaded($event)\"\r\n [bulk-action-data]=\"bulkActionData\" [dashboard-info]=\"dashboardInfo\" [app-config]=\"appConfig\"\r\n [event-bus]=\"raDashboardEventBus\" (widgetDeleted)=\"deleteWidget($event)\" [data]=\"item\"\r\n [global-filter]=\"globalFilter\" [grid-cell-height]=\"gridcellHeight\"\r\n [widget-width]=\"item.cols\" [widget-height]=\"item.rows\" [widget-instance-id]=\"item.widgetInstanceId\"\r\n [dom-resized]=\"domResized\" (updateAppliedFilters)=\"updateAppliedFilters($event)\">\r\n </ra-widget-container>\n}\r\n </gridster-item>\n}\r\n </gridster>\n}\r\n\r\n @if (showEmptyDashboard) {\n<div class=\"empty-padding kiosk-hide\">\r\n <div class=\"empty-wrapper\">\r\n <div></div>\r\n <div class=\"empty-prefix\">\r\n <!-- <i class=\"fal fa-edit edit-icon\"></i> -->\r\n <span>{{emptyDashboardTitle}}</span>\r\n </div>\r\n <hr class=\"horizontalLine-solid\" />\r\n <div class=\"empty-content light\">\r\n <div>\r\n <div class=\"col-sm-12 empty-msg\">\r\n {{emptyDashboardMsg1}} <br />\r\n {{emptyDashboardMsg2}}\r\n </div>\r\n @if (isWidgetMgmnt) {\n<button class=\"btn btnLib btn-sm dashboard-button light\" (click)=\"buttonClick()\">\r\n <i class=\"{{emptyDashboardButtonIcon}}\"></i>{{emptyDashboardButtonText}}</button>\n}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\n}\r\n @if (showDownloadOnlyState) {\n<div class=\"empty-padding kiosk-hide\">\r\n <div class=\"empty-wrapper\">\r\n <div></div>\r\n <div class=\"empty-prefix\">\r\n <!-- <i class=\"fal fa-edit edit-icon\"></i> -->\r\n <span>{{DownloadOnlyStateTitle}}</span>\r\n </div>\r\n <hr class=\"horizontalLine-solid\" />\r\n <div class=\"empty-content light\">\r\n <div>\r\n <div class=\"col-sm-12 empty-msg\">\r\n {{DownloadOnlyStateMsg1}} <br />\r\n {{DownloadOnlyStateMsg2}}\r\n </div>\r\n @if (isWidgetMgmnt) {\n<button class=\"btn btnLib btn-sm dashboard-button light\" (click)=\"buttonActionClick(DownloadOnlyStateButtonAction1)\">\r\n <i class=\"{{DownloadOnlyStateButtonIcon1}}\"></i>{{DownloadOnlyStateButtonText1}}</button>\n}\r\n <button class=\"btn btnLib btn-sm dashboard-button light button-margin\" (click)=\"buttonActionClick(DownloadOnlyStateButtonAction2)\">\r\n <i class=\"{{DownloadOnlyStateButtonIcon2}}\"></i>{{DownloadOnlyStateButtonText2}}</button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\n}\r\n <notifier-container></notifier-container>\r\n</div>\r\n", styles: ["gridster{width:inherit;resize:height;display:flex;background-color:#fff;overflow-y:hidden!important;flex-direction:column}.dvheader{width:100%;height:35px;background:#000;color:#fff;padding:7px 3px 5px 6px;text-transform:uppercase}gridster-item{box-sizing:border-box;z-index:1;position:absolute;overflow:hidden;transition:.3s;display:none;background:#fff;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text;box-shadow:none}gridster-item:hover{box-shadow:0 1px 10px #00000026!important}.button-margin{margin-left:10px}@media screen and (max-width:685px){.gridster-mobile{height:auto!important;margin-bottom:50px!important}.gridster-mobile.no-hover{margin-bottom:0!important}}@media screen and (max-width:350px){.gridster-mobile{min-height:330px!important;margin-bottom:0!important}}.empty-padding{padding:15px 0;background-color:#fff;display:flex}.empty-wrapper{background-color:#fff;border:1px solid #9FA0A4;min-height:125px;width:100%}.empty-prefix{color:#32ad3c;font-size:18px;padding:15px}.empty-content{color:#626469;width:100%;padding:15px}.empty-msg{padding:0 0 15px;font-size:16px}.horizontalLine-solid{border-top:1px solid #cbcbcb;margin:0 15px}.dashboard-button{padding:5px 10px 5px 5px!important}.btnLib{background-color:#ededed;color:#333!important}.btn-sm,.btn-group-sm>.btn{padding:5px 20px 5px 5px}.edit-icon{color:#32ad3c;font-size:24px;margin-right:15px}.empty-title{margin-top:10px}@media screen and (max-width:600px){.empty-padding{padding:15px 0;background-color:#fff;width:100%;display:block}.empty-wrapper{display:flex;background-color:#fff;border:1px solid #9FA0A4;min-height:125px;width:100%}.empty-prefix{color:#32ad3c;font-size:16px;display:flex;height:40px;padding:15px}.empty-content{color:#333;display:flex;padding:15px}.empty-msg{padding:0 0 15px;font-size:14px}.edit-icon{color:#32ad3c;font-size:20px;margin-right:6px}.empty-title{margin-top:6px}}.gridster-h{min-height:50vh!important}\n"] }]
|
|
5752
5788
|
}], ctorParameters: () => [{ type: RaDashboardService }, { type: i0.NgZone }, { type: i2$1.NgxUiLoaderService }, { type: i3.RATranslateService }, { type: i4.NotifierService }, { type: i0.ChangeDetectorRef }, { type: RADashboardResponsiveService }, { type: i3.RAPermissionService }], propDecorators: { userDashboardId: [{
|
|
5753
5789
|
type: Input,
|
|
5754
5790
|
args: ['user-dashboard-id']
|
|
@@ -5845,11 +5881,11 @@ const customNotifierOptions = {
|
|
|
5845
5881
|
};
|
|
5846
5882
|
|
|
5847
5883
|
class GridsterModule {
|
|
5848
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
5849
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
5850
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
5884
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: GridsterModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
5885
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.0.7", ngImport: i0, type: GridsterModule, imports: [GridsterComponent, GridsterItemComponent], exports: [GridsterComponent, GridsterItemComponent] }); }
|
|
5886
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: GridsterModule }); }
|
|
5851
5887
|
}
|
|
5852
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
5888
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: GridsterModule, decorators: [{
|
|
5853
5889
|
type: NgModule,
|
|
5854
5890
|
args: [{
|
|
5855
5891
|
imports: [GridsterComponent, GridsterItemComponent],
|
|
@@ -5858,15 +5894,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.1", ngImpor
|
|
|
5858
5894
|
}] });
|
|
5859
5895
|
|
|
5860
5896
|
class DashboardFrameworkModule {
|
|
5861
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
5862
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
5897
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: DashboardFrameworkModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
5898
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.0.7", ngImport: i0, type: DashboardFrameworkModule, bootstrap: [RADashboardArea], declarations: [RADashboardArea,
|
|
5863
5899
|
RAWidgetContainer,
|
|
5864
5900
|
LockTooltip], imports: [CommonModule,
|
|
5865
5901
|
GridsterModule,
|
|
5866
5902
|
HttpClientModule,
|
|
5867
5903
|
NgxUiLoaderModule, i4.NotifierModule, RACommonModule,
|
|
5868
5904
|
RACommonControlsModule], exports: [RADashboardArea] }); }
|
|
5869
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
5905
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: DashboardFrameworkModule, imports: [CommonModule,
|
|
5870
5906
|
GridsterModule,
|
|
5871
5907
|
HttpClientModule,
|
|
5872
5908
|
NgxUiLoaderModule,
|
|
@@ -5874,7 +5910,7 @@ class DashboardFrameworkModule {
|
|
|
5874
5910
|
RACommonModule,
|
|
5875
5911
|
RACommonControlsModule] }); }
|
|
5876
5912
|
}
|
|
5877
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
5913
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: DashboardFrameworkModule, decorators: [{
|
|
5878
5914
|
type: NgModule,
|
|
5879
5915
|
args: [{
|
|
5880
5916
|
declarations: [
|
|
@@ -5930,10 +5966,10 @@ class RADashboardEventBus {
|
|
|
5930
5966
|
return event.eventName == eventName && event.key == key && event.value == value;
|
|
5931
5967
|
}), map(event => event.data));
|
|
5932
5968
|
}
|
|
5933
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
5934
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
5969
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: RADashboardEventBus, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
5970
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: RADashboardEventBus, providedIn: 'root' }); }
|
|
5935
5971
|
}
|
|
5936
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
5972
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: RADashboardEventBus, decorators: [{
|
|
5937
5973
|
type: Injectable,
|
|
5938
5974
|
args: [{
|
|
5939
5975
|
providedIn: 'root'
|
|
@@ -5959,10 +5995,10 @@ class RaBaseDashboardTemplate {
|
|
|
5959
5995
|
var myEvent = new CustomEvent("event-template-initiated");
|
|
5960
5996
|
document.body.dispatchEvent(myEvent);
|
|
5961
5997
|
}
|
|
5962
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
5963
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
5998
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: RaBaseDashboardTemplate, deps: [{ token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
5999
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.7", type: RaBaseDashboardTemplate, isStandalone: true, inputs: { dashboardId: ["dashboard-id", "dashboardId"], globalFilter: ["global-filter", "globalFilter"], downloadDatastreamLimit: ["download-datastream-limit", "downloadDatastreamLimit"], reportDatastreamLimit: ["report-datastream-limit", "reportDatastreamLimit"], bulkActionData: ["bulk_Action_Data", "bulkActionData"], initialize: "initialize" }, ngImport: i0 }); }
|
|
5964
6000
|
}
|
|
5965
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
6001
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: RaBaseDashboardTemplate, decorators: [{
|
|
5966
6002
|
type: Directive
|
|
5967
6003
|
}], ctorParameters: () => [{ type: i0.NgZone }], propDecorators: { dashboardId: [{
|
|
5968
6004
|
type: Input,
|
|
@@ -6008,10 +6044,10 @@ class RaBaseDashboardFilter {
|
|
|
6008
6044
|
var myEvent = new CustomEvent("global-filter-initiated");
|
|
6009
6045
|
document.body.dispatchEvent(myEvent);
|
|
6010
6046
|
}
|
|
6011
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
6012
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
6047
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: RaBaseDashboardFilter, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
6048
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.7", type: RaBaseDashboardFilter, isStandalone: true, inputs: { getAllFilterConfig: "getAllFilterConfig", setInapplicableFilterMsg: "setInapplicableFilterMsg", isValidEntry: "isValidEntry", clearAllData: "clearAllData", setAllFilterConfig: "setAllFilterConfig", showOnlyDateRangeControl: "showOnlyDateRangeControl" }, ngImport: i0 }); }
|
|
6013
6049
|
}
|
|
6014
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
6050
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: RaBaseDashboardFilter, decorators: [{
|
|
6015
6051
|
type: Directive
|
|
6016
6052
|
}], propDecorators: { getAllFilterConfig: [{
|
|
6017
6053
|
type: Input
|