@schneideress/dashboardframework 20.0.24 → 20.0.26

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.
@@ -3894,7 +3894,7 @@ class RAWidgetContainer {
3894
3894
  this.lockIconFooter = this.translateService.translate('Common.lockedfieldseditinfo');
3895
3895
  this.inapplicableIconTitle = this.translateService.translate('Common.InapplicableFilters');
3896
3896
  this.inapplicableIconFooter = this.translateService.translate('Common.InapplicableFiltersDesc');
3897
- if (this.dashboardInfo.templateName == 'Emission Report' || this.dashboardInfo.templateName == 'CostUsage Report' || this.dashboardInfo.templateName == 'Savings Report') {
3897
+ if (this.dashboardInfo.templateName == 'Emission Report' || this.dashboardInfo.templateName == 'CostUsage Report' || this.dashboardInfo.templateName == 'Savings Report' || this.dashboardInfo.templateName == 'Invoice Checklist') {
3898
3898
  this.hideTitle = true;
3899
3899
  this.showOnlyDropdown = true;
3900
3900
  }
@@ -3914,8 +3914,7 @@ class RAWidgetContainer {
3914
3914
  /** True when the inline Download icon should be shown (hidden when Statistics tab is selected). */
3915
3915
  get showInlineDownloadIcon() {
3916
3916
  return this.hideEllipses
3917
- && this.downloadIconType !== RADownloadType.Statistics
3918
- && this.isDownloadIconVisible;
3917
+ && this.widgetElement?.selectedTabIndex !== 1;
3919
3918
  }
3920
3919
  ngOnChanges(changes) {
3921
3920
  this.isWidgetMgmnt = this.raPermissionService.hasPermission('ra.widgetmanagement');
@@ -3931,7 +3930,6 @@ class RAWidgetContainer {
3931
3930
  if (typeof this.widgetElement.bulkActionClicked === "function") {
3932
3931
  this.widgetElement.bulkActionClicked(this.bulkActionData);
3933
3932
  }
3934
- this.setDownloadIcon();
3935
3933
  }
3936
3934
  if (changes['globalFilter'] && changes['globalFilter'].currentValue != changes['globalFilter'].previousValue) {
3937
3935
  if (!this.dashboardInfo.curatedFilters) {
@@ -3981,12 +3979,6 @@ class RAWidgetContainer {
3981
3979
  }
3982
3980
  }
3983
3981
  }
3984
- /** Refresh download icon state when user clicks inside widget (e.g. tab change). */
3985
- onWidgetBodyClick() {
3986
- if (this.hideEllipses && this.widgetElement) {
3987
- this.setDownloadIcon();
3988
- }
3989
- }
3990
3982
  ngAfterViewInit() {
3991
3983
  setTimeout(() => {
3992
3984
  this.widgetLoaded.emit(this.wcWrapper.nativeElement);
@@ -4149,7 +4141,6 @@ class RAWidgetContainer {
4149
4141
  me.data.dataLoaded = true;
4150
4142
  me.dataLoaded.emit(widgetInfo);
4151
4143
  }
4152
- me.setDownloadIcon();
4153
4144
  break;
4154
4145
  case 'onConfigEditClicked':
4155
4146
  me.editWidget();
@@ -4175,9 +4166,6 @@ class RAWidgetContainer {
4175
4166
  case 'onGlobalFilterApplicableCheck':
4176
4167
  me.setInapplicableFilters(e.detail.data, widgetInfo.widgetInstanceId);
4177
4168
  break;
4178
- case 'onDownloadViewChanged':
4179
- me.setDownloadIcon();
4180
- break;
4181
4169
  default:
4182
4170
  break;
4183
4171
  }
@@ -4226,9 +4214,6 @@ class RAWidgetContainer {
4226
4214
  widgetConfigFilter.widgetInfo.widgetName = widgetInfo.widgetName;
4227
4215
  widgetConfigFilter.globalFilter = me.globalFilter;
4228
4216
  widgetConfigFilter.dashboardInfo = me.dashboardInfo;
4229
- if (me.hideEllipses) {
4230
- widgetConfigFilter.onDownloadViewReady = () => me.setDownloadIcon();
4231
- }
4232
4217
  me.widgetElement.loadContent(widgetConfigFilter);
4233
4218
  await me.setLock(widgetConfigFilter.config);
4234
4219
  await me.setDownloadIcon();
@@ -4275,7 +4260,6 @@ class RAWidgetContainer {
4275
4260
  me.data.dataLoaded = true;
4276
4261
  me.dataLoaded.emit(me.widgetElement);
4277
4262
  }
4278
- me.setDownloadIcon();
4279
4263
  break;
4280
4264
  case 'onConfigEditClicked':
4281
4265
  me.editWidget();
@@ -4301,9 +4285,6 @@ class RAWidgetContainer {
4301
4285
  case 'onGlobalFilterApplicableCheck':
4302
4286
  me.setInapplicableFilters(e.data, widgetInfo.widgetInstanceId);
4303
4287
  break;
4304
- case 'onDownloadViewChanged':
4305
- me.setDownloadIcon();
4306
- break;
4307
4288
  default:
4308
4289
  break;
4309
4290
  }
@@ -4352,9 +4333,6 @@ class RAWidgetContainer {
4352
4333
  widgetConfigFilter.widgetInfo.widgetName = widgetInfo.widgetName;
4353
4334
  widgetConfigFilter.globalFilter = me.globalFilter;
4354
4335
  widgetConfigFilter.dashboardInfo = me.dashboardInfo;
4355
- if (me.hideEllipses) {
4356
- widgetConfigFilter.onDownloadViewReady = () => me.setDownloadIcon();
4357
- }
4358
4336
  me.widgetElement.loadContent(widgetConfigFilter);
4359
4337
  await me.setLock(widgetConfigFilter.config);
4360
4338
  await me.setDownloadIcon();
@@ -4499,7 +4477,6 @@ class RAWidgetContainer {
4499
4477
  this.isGridDownloadVisible = true;
4500
4478
  this.showExcell = false;
4501
4479
  }
4502
- this.cdr.detectChanges();
4503
4480
  }
4504
4481
  downloadIconClicked(type) {
4505
4482
  if (!this.widgetElement || typeof this.widgetElement.downloadClicked !== 'function')
@@ -4749,11 +4726,11 @@ class RAWidgetContainer {
4749
4726
  return translatedString.toLowerCase() === rKey.toLowerCase() ? item : translatedString;
4750
4727
  }
4751
4728
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.1", 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 }); }
4752
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.2.1", 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 <div class=\"wcheader widget-move\" *ngIf=\"!hideTitle && !showOnlyDropdown\"\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 <ng-container *ngIf=\"!hideEllipses\">\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 </ng-container>\r\n <div *ngIf=\"hideEllipses\" class=\"widget-action-icons-card\">\r\n <div class=\"widget-menu-trend-report\" style=\"display: flex;\">\r\n <div *ngIf=\"showInlineDownloadIcon\" 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>\r\n <div class=\"title-bar-action-icon\" *ngIf=\"isWidgetMgmnt && (!data.widgetInfo.templateWidgetSettings || !data.widgetInfo.templateWidgetSettings.hideEdit)\" title=\"{{'Common.edit' | translate}}\" aria-label=\"{{'Common.edit' | translate}}\">\r\n <i (click)=\"editWidget()\" class=\"fal fa-edit\"></i>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"hideTitle && !showOnlyDropdown\" class=\"wcheader widget-move\"\r\n style=\"height: 45px;width: 95%;cursor: move;z-index: 99;opacity: 0;\">\r\n </div>\r\n <ng-container *ngIf=\"hideTitle && !showOnlyDropdown && !hideEllipses\">\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 </ng-container>\r\n <div *ngIf=\"hideTitle && !showOnlyDropdown && hideEllipses\" class=\"widget-menu-title-hidden widget-action-icons-card\">\r\n <div class=\"widget-menu-trend-report\" style=\"display: flex;\">\r\n <div *ngIf=\"showInlineDownloadIcon\" 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>\r\n <div class=\"title-bar-action-icon\" *ngIf=\"isWidgetMgmnt && (!data.widgetInfo.templateWidgetSettings || !data.widgetInfo.templateWidgetSettings.hideEdit)\" title=\"{{'Common.edit' | translate}}\" aria-label=\"{{'Common.edit' | translate}}\">\r\n <i (click)=\"editWidget()\" class=\"fal fa-edit\"></i>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"wcBody\" (click)=\"onWidgetBodyClick()\" [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 <div *ngIf=\"isWidgetStateApplicable\" 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>\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.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { 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" }] }); }
4729
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.2.1", 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 <div class=\"wcheader widget-move\" *ngIf=\"!hideTitle && !showOnlyDropdown\"\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 <ng-container *ngIf=\"!hideEllipses\">\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 </ng-container>\r\n <div *ngIf=\"hideEllipses\" class=\"widget-action-icons-card\">\r\n <div class=\"widget-menu-trend-report\" style=\"display: flex;\">\r\n <div *ngIf=\"showInlineDownloadIcon\" 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>\r\n <div class=\"title-bar-action-icon\" *ngIf=\"isWidgetMgmnt && (!data.widgetInfo.templateWidgetSettings || !data.widgetInfo.templateWidgetSettings.hideEdit)\" title=\"{{'Common.edit' | translate}}\" aria-label=\"{{'Common.edit' | translate}}\">\r\n <i (click)=\"editWidget()\" class=\"fal fa-edit\"></i>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"hideTitle && !showOnlyDropdown\" class=\"wcheader widget-move\"\r\n style=\"height: 45px;width: 95%;cursor: move;z-index: 99;opacity: 0;\">\r\n </div>\r\n <ng-container *ngIf=\"hideTitle && !showOnlyDropdown && !hideEllipses\">\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 </ng-container>\r\n <div *ngIf=\"hideTitle && !showOnlyDropdown && hideEllipses\" class=\"widget-menu-title-hidden widget-action-icons-card\">\r\n <div class=\"widget-menu-trend-report\" style=\"display: flex;\">\r\n <div *ngIf=\"showInlineDownloadIcon\" 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>\r\n <div class=\"title-bar-action-icon\" *ngIf=\"isWidgetMgmnt && (!data.widgetInfo.templateWidgetSettings || !data.widgetInfo.templateWidgetSettings.hideEdit)\" title=\"{{'Common.edit' | translate}}\" aria-label=\"{{'Common.edit' | translate}}\">\r\n <i (click)=\"editWidget()\" class=\"fal fa-edit\"></i>\r\n </div>\r\n </div>\r\n </div>\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 <div *ngIf=\"isWidgetStateApplicable\" 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>\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.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { 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" }] }); }
4753
4730
  }
4754
4731
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: RAWidgetContainer, decorators: [{
4755
4732
  type: Component,
4756
- 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\" *ngIf=\"!hideTitle && !showOnlyDropdown\"\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 <ng-container *ngIf=\"!hideEllipses\">\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 </ng-container>\r\n <div *ngIf=\"hideEllipses\" class=\"widget-action-icons-card\">\r\n <div class=\"widget-menu-trend-report\" style=\"display: flex;\">\r\n <div *ngIf=\"showInlineDownloadIcon\" 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>\r\n <div class=\"title-bar-action-icon\" *ngIf=\"isWidgetMgmnt && (!data.widgetInfo.templateWidgetSettings || !data.widgetInfo.templateWidgetSettings.hideEdit)\" title=\"{{'Common.edit' | translate}}\" aria-label=\"{{'Common.edit' | translate}}\">\r\n <i (click)=\"editWidget()\" class=\"fal fa-edit\"></i>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"hideTitle && !showOnlyDropdown\" class=\"wcheader widget-move\"\r\n style=\"height: 45px;width: 95%;cursor: move;z-index: 99;opacity: 0;\">\r\n </div>\r\n <ng-container *ngIf=\"hideTitle && !showOnlyDropdown && !hideEllipses\">\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 </ng-container>\r\n <div *ngIf=\"hideTitle && !showOnlyDropdown && hideEllipses\" class=\"widget-menu-title-hidden widget-action-icons-card\">\r\n <div class=\"widget-menu-trend-report\" style=\"display: flex;\">\r\n <div *ngIf=\"showInlineDownloadIcon\" 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>\r\n <div class=\"title-bar-action-icon\" *ngIf=\"isWidgetMgmnt && (!data.widgetInfo.templateWidgetSettings || !data.widgetInfo.templateWidgetSettings.hideEdit)\" title=\"{{'Common.edit' | translate}}\" aria-label=\"{{'Common.edit' | translate}}\">\r\n <i (click)=\"editWidget()\" class=\"fal fa-edit\"></i>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"wcBody\" (click)=\"onWidgetBodyClick()\" [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 <div *ngIf=\"isWidgetStateApplicable\" 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>\r\n <div>\r\n </div>\r\n </div>\r\n</div>" }]
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\" *ngIf=\"!hideTitle && !showOnlyDropdown\"\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 <ng-container *ngIf=\"!hideEllipses\">\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 </ng-container>\r\n <div *ngIf=\"hideEllipses\" class=\"widget-action-icons-card\">\r\n <div class=\"widget-menu-trend-report\" style=\"display: flex;\">\r\n <div *ngIf=\"showInlineDownloadIcon\" 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>\r\n <div class=\"title-bar-action-icon\" *ngIf=\"isWidgetMgmnt && (!data.widgetInfo.templateWidgetSettings || !data.widgetInfo.templateWidgetSettings.hideEdit)\" title=\"{{'Common.edit' | translate}}\" aria-label=\"{{'Common.edit' | translate}}\">\r\n <i (click)=\"editWidget()\" class=\"fal fa-edit\"></i>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"hideTitle && !showOnlyDropdown\" class=\"wcheader widget-move\"\r\n style=\"height: 45px;width: 95%;cursor: move;z-index: 99;opacity: 0;\">\r\n </div>\r\n <ng-container *ngIf=\"hideTitle && !showOnlyDropdown && !hideEllipses\">\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 </ng-container>\r\n <div *ngIf=\"hideTitle && !showOnlyDropdown && hideEllipses\" class=\"widget-menu-title-hidden widget-action-icons-card\">\r\n <div class=\"widget-menu-trend-report\" style=\"display: flex;\">\r\n <div *ngIf=\"showInlineDownloadIcon\" 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>\r\n <div class=\"title-bar-action-icon\" *ngIf=\"isWidgetMgmnt && (!data.widgetInfo.templateWidgetSettings || !data.widgetInfo.templateWidgetSettings.hideEdit)\" title=\"{{'Common.edit' | translate}}\" aria-label=\"{{'Common.edit' | translate}}\">\r\n <i (click)=\"editWidget()\" class=\"fal fa-edit\"></i>\r\n </div>\r\n </div>\r\n </div>\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 <div *ngIf=\"isWidgetStateApplicable\" 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>\r\n <div>\r\n </div>\r\n </div>\r\n</div>" }]
4757
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: [{
4758
4735
  type: ViewChild,
4759
4736
  args: ['ctlWidget', { static: false }]
@@ -4866,7 +4843,7 @@ class RADashboardArea {
4866
4843
  this.setEmptyDashboardConfig();
4867
4844
  this.setDownloadOnlyStateConfig();
4868
4845
  this.lastViewType = this.responsiveService.IsDesktopView ? 'desktop' : 'mobile';
4869
- const gridTemplates = ['Emission Report', 'CostUsage Report', 'Site Detail', 'Savings Report'];
4846
+ const gridTemplates = ['Emission Report', 'CostUsage Report', 'Site Detail', 'Savings Report', 'Invoice Checklist'];
4870
4847
  this.hasGrid = gridTemplates.includes(this.dashboardInfo.templateName);
4871
4848
  this.responsiveService.resized.subscribe((isDesktop) => {
4872
4849
  if (this.lastViewType != (isDesktop ? 'desktop' : 'mobile') || !isDesktop) {