{ "version": 3, "sources": ["projects/shared-lib/src/lib/components/gs-equipment-not-used-last/gs-equipment-not-used-last.component.ts", "projects/shared-lib/src/lib/components/gs-equipment-not-used-last/gs-equipment-not-used-last.component.html"], "sourcesContent": ["import { AfterViewInit, Component, ElementRef, EventEmitter, Input, OnInit, ViewChild, ViewChildren } from '@angular/core';\r\n\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { MatDialog } from '@angular/material/dialog';\r\n\r\nimport { groupBy, GroupResult } from '@progress/kendo-data-query';\r\nimport { ResizeResult } from 'ngxtension/resize';\r\nimport { ToastrService } from 'ngx-toastr';\r\n\r\nimport _ from 'lodash';\r\n\r\nimport { TacticalDashboardOverviewGaugeComponent } from '../../components/tactical-dashboard-overview-gauge/tactical-dashboard-overview-gauge.component';\r\nimport { TacticalWidgetSummaryTilePopupComponent } from '../../components/tactical-widget-summary-tile-popup/tactical-widget-summary-tile-popup.component';\r\n\r\nimport { Global } from '../../_constants/global.variables';\r\n\r\nimport { DashboardService } from '../../services/dashboard.service';\r\nimport { DataService } from '../../services/data.service';\r\nimport { IGlobal } from '../../_models/global.model';\r\nimport { UtilityService } from '../../services/utility.service';\r\n\r\nimport { DialogModalParentComponent } from '../dialog-modal-parent/dialog-modal-parent.component';\r\nimport {IStepOption, TourAnchorMatMenuDirective, TourMatMenuModule, TourService} from 'ngx-ui-tour-md-menu';\r\nimport { v4 as uuidv4 } from 'uuid';\r\n\r\n@Component({\r\n\tselector: 'lib-gs-equipment-not-used-last',\r\n\ttemplateUrl: './gs-equipment-not-used-last.component.html',\r\n\tstyleUrls: ['./gs-equipment-not-used-last.component.scss'],\r\n})\r\nexport class GsEquipmentNotUsedLastComponent implements AfterViewInit, OnInit {\r\n\t@ViewChildren('seriesItems')\r\n\tpublic series: any;\r\n\r\n\t@ViewChild('chart')\r\n\tpublic chart: any;\r\n\tpublic graphType: any = {\r\n\t\tname: 'area',\r\n\t\tdescription:\r\n\t\t\t'An area chart or area graph displays graphically quantitative data. It is based on the line chart. The area between axis and line are commonly emphasized with colors, textures and hatchings. Commonly one compares two or more quantities with an area chart.',\r\n\t\tproperName: 'Area',\r\n\t};\r\n\r\n\t@ViewChild('childOverviewGauge')\r\n\tchildOverviewGauge: TacticalDashboardOverviewGaugeComponent;\r\n\r\n\t@Input() widgetObject: any;\r\n\t@Input() private dashboardTimeScopeChanged: EventEmitter;\r\n\t@Input() private dashboardUpdateIntervalChanged: EventEmitter;\r\n\t@Input() private widgetResizedEvent: EventEmitter;\r\n\tpublic global: IGlobal = Global;\r\n\r\n\tfullDataCacheSubscription: any;\r\n\tcolorChangedSubscription: any;\r\n\tdashboardUpdateIntervalSubscription: any;\r\n\tdashboardTimeScopeChangedSubscription: any;\r\n\tselectedMatTabLabel: string;\r\n\tupdateInterval: any;\r\n\tdisplayNoTimeScopeMessage: boolean = false;\r\n\tdisplayNoUpdateIntervalMessage: boolean = false;\r\n\tsecondsAgoInterval: any;\r\n\tlastUpdatedDate: Date;\r\n\tdisplayTimeAgoMessage: any;\r\n\tupdateControllerInterval: any;\r\n\tparentContainerSize: any;\r\n\twidgetTabsChartConfigurations: any;\r\n\ttheme: string;\r\n\tchartBackgroundColor: string = '#27304C';\r\n\tchartLabelColors: string = 'white';\r\n\tgridLineColor: string = 'white';\r\n\taxisItemColor: string = 'white';\r\n\th1Number: number = undefined;\r\n\th4Percent: number = undefined;\r\n\ttotalAssetLength: any;\r\n\tpercentCalculated: boolean = false;\r\n\tgaugeDisplayData: any;\r\n\tchartDataFinalIsReady: boolean = false;\r\n\twidgetTabConfigurationsFinishedMapping: boolean = false;\r\n\tsummaryArray = [];\r\n\tsummaryArray1 = [];\r\n\tsummaryArray2 = [];\r\n\tsummaryArray3 = [];\r\n\tsparklineData = [];\r\n\tfontSize1 = 'medium';\r\n\tfontSize2 = 'small';\r\n\tcardClass1 = 'card-tile-md';\r\n\tcardClass2 = 'card-tile-md';\r\n\tcardWideClass2 = 'card-wide-tile-md';\r\n\tcardTileCenterTitleClass = 'grid-card-title-center-sm';\r\n\tcardWideTileCenterTitleClass = 'grid-wide-card-title-center-sm';\r\n\theaderGridTitle = 'grid-title-lg';\r\n\tpublic graphTypes: string[] = ['area', 'bar', 'column', 'donut', 'horizontalWaterfall', 'line', 'verticalArea', 'verticalLine', 'waterfall'];\r\n\r\n\twidgetResizedSubscription: any;\r\n\tpublic label = {\r\n\t\tvisible: false,\r\n\t};\r\n\tpublic progressStyles: { [key: string]: any } = {\r\n\t\tbackground: 'limegreen',\r\n\t};\r\n\twidgetNavigateToFirstTabSubscription: Subscription;\r\n\twidgetToggleLegendHiddenSubscription: Subscription;\r\n\tisLoading: boolean;\r\n\tcontentHeight: any;\r\n\tpublic timeScopeObject: any;\r\n\tpublic tab: any;\r\n\tpublic options: any = [];\r\n\tpublic optionsSettingsOnly: any = [];\r\n\tpublic navigationOpened: any;\r\n\r\n\tpublic widgetTabs: any = [\r\n\t\t{\r\n\t\t\tisLoading: false,\r\n\t\t\ttabHasBeenLoaded: false,\r\n\t\t\ttextLabel: 'Summary',\r\n\t\t\ttooltip:\r\n\t\t\t\t'Summary showing within the current scope settings (Site) the total amount of assets that are currently not being used.',\r\n\t\t\tdownloadableData: true,\r\n\t\t\tgroupable: true,\r\n\t\t\tgroupColumns: [{ field: 'OnDuringTimeScopeBoolean' }],\r\n\t\t\ttableStructure: [\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'LastEquipmentWasOnDateTime',\r\n\t\t\t\t\ttitle: 'Last Time Asset Was On',\r\n\t\t\t\t\tfilter: 'date',\r\n\t\t\t\t\t_width: 300,\r\n\t\t\t\t\t// formatOption: 'longDate'\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'OnDuringTimeScopeBoolean',\r\n\t\t\t\t\ttitle: 'On During Time Scope',\r\n\t\t\t\t\t_width: 100,\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'SiteName',\r\n\t\t\t\t\ttitle: 'Site',\r\n\t\t\t\t\t_width: 100,\r\n\t\t\t\t},\r\n\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'GateName',\r\n\t\t\t\t\ttitle: 'Gate Name',\r\n\t\t\t\t\t_width: 100,\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'AssetName',\r\n\t\t\t\t\ttitle: 'Asset Name',\r\n\t\t\t\t\t_width: 100,\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'ProperAssetName',\r\n\t\t\t\t\ttitle: 'Asset Name',\r\n\t\t\t\t\t_width: 200,\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'UnitWasNotOnSinceDays',\r\n\t\t\t\t\ttitle: 'Unit Last Time On Before Timescope',\r\n\t\t\t\t\t_width: 100,\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t},\r\n\t\t{\r\n\t\t\tisLoading: false,\r\n\t\t\ttabHasBeenLoaded: false,\r\n\t\t\ttextLabel: 'Total Minutes Off For Day',\r\n\t\t\tgraphType: this.graphTypes[5],\r\n\t\t\ttooltip:\r\n\t\t\t\t'Detailed line chart showing within the current scope settings (site, asset type) the total amount of minutes an asset was not used during the 24 hour period of the date shown. ',\r\n\t\t\tdownloadableData: true,\r\n\t\t\tgroupable: true,\r\n\t\t\tlegendVisible: true,\r\n\t\t\tgroupColumns: [{ field: 'ProperAssetName' }],\r\n\t\t\ttableStructure: [\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'DateOfObservationDateObject',\r\n\t\t\t\t\ttitle: 'Date',\r\n\t\t\t\t\tfilter: 'date',\r\n\t\t\t\t\t_width: 300,\r\n\t\t\t\t\tformatOption: 'shortDate',\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'SiteName',\r\n\t\t\t\t\ttitle: 'Site',\r\n\t\t\t\t\t_width: 100,\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'AssetName',\r\n\t\t\t\t\ttitle: 'Asset Name',\r\n\t\t\t\t\t_width: 300,\r\n\t\t\t\t},\r\n\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'GateName',\r\n\t\t\t\t\ttitle: 'Gate Name',\r\n\t\t\t\t\t_width: 300,\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'ProperAssetName',\r\n\t\t\t\t\ttitle: 'Asset Name',\r\n\t\t\t\t\t_width: 300,\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'AssetNotUsedMinutes',\r\n\t\t\t\t\ttitle: 'Asset Not Used Minutes',\r\n\t\t\t\t\t_width: 300,\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t},\r\n\t\t{\r\n\t\t\tisLoading: false,\r\n\t\t\ttabHasBeenLoaded: false,\r\n\t\t\ttextLabel: 'Assets Used/Not Used Each Day',\r\n\t\t\ttooltip:\r\n\t\t\t\t'Stacked area chart showing how many assets were used and not used over the timescope selected. ',\r\n\t\t\tdownloadableData: true,\r\n\t\t\tgroupable: true,\r\n\t\t\tlegendVisible: true,\r\n\t\t\tgroupColumns: [\r\n\t\t\t\t{ field: 'DateOfObservationDateObject' },\r\n\t\t\t\t{ field: 'used' },\r\n\t\t\t],\r\n\t\t\ttableStructure: [\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'DateOfObservationDateObject',\r\n\t\t\t\t\ttitle: 'Date',\r\n\t\t\t\t\tfilter: 'date',\r\n\t\t\t\t\t_width: 300,\r\n\t\t\t\t\tformatOption: 'shortDate',\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'SiteName',\r\n\t\t\t\t\ttitle: 'Site',\r\n\t\t\t\t\t_width: 100,\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'GateName',\r\n\t\t\t\t\ttitle: 'Gate',\r\n\t\t\t\t\t_width: 100,\r\n\t\t\t\t},\r\n\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'AssetName',\r\n\t\t\t\t\ttitle: 'Asset Name',\r\n\t\t\t\t\t_width: 300,\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'ProperAssetName',\r\n\t\t\t\t\ttitle: 'Proper Asset Name',\r\n\t\t\t\t\t_width: 300,\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'used',\r\n\t\t\t\t\ttitle: 'Was Asset Used',\r\n\t\t\t\t\t_width: 100,\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'AssetOnCount',\r\n\t\t\t\t\ttitle: 'Times Used',\r\n\t\t\t\t\t_width: 100,\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'AssetOnDurationMinutes',\r\n\t\t\t\t\ttitle: 'Minutes Used',\r\n\t\t\t\t\t_width: 100,\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t},\r\n\t\t{\r\n\t\t\tisLoading: false,\r\n\t\t\ttabHasBeenLoaded: false,\r\n\t\t\ttextLabel: 'Assets Used Each Day by Equipment',\r\n\t\t\tgraphType: this.graphTypes[2],\r\n\t\t\ttooltip:\r\n\t\t\t\t'Stacked column chart showing how many assets were used over the timescope selected by asset type.',\r\n\t\t\tdownloadableData: true,\r\n\t\t\tgroupable: true,\r\n\t\t\tlegendVisible: true,\r\n\t\t\tgroupColumns: [\r\n\t\t\t\t{ field: 'DateOfObservationDateObject' },\r\n\t\t\t\t{ field: 'used' },\r\n\t\t\t],\r\n\t\t\ttableStructure: [\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'DateOfObservationDateObject',\r\n\t\t\t\t\ttitle: 'Date',\r\n\t\t\t\t\tfilter: 'date',\r\n\t\t\t\t\t_width: 300,\r\n\t\t\t\t\tformatOption: 'shortDate',\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'SiteName',\r\n\t\t\t\t\ttitle: 'Site',\r\n\t\t\t\t\t_width: 100,\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'GateName',\r\n\t\t\t\t\ttitle: 'Gate',\r\n\t\t\t\t\t_width: 100,\r\n\t\t\t\t},\r\n\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'AssetName',\r\n\t\t\t\t\ttitle: 'Asset Name',\r\n\t\t\t\t\t_width: 300,\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'ProperAssetName',\r\n\t\t\t\t\ttitle: 'Proper Asset Name',\r\n\t\t\t\t\t_width: 300,\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'used',\r\n\t\t\t\t\ttitle: 'Was Asset Used',\r\n\t\t\t\t\t_width: 100,\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'AssetOnCount',\r\n\t\t\t\t\ttitle: 'Times Used',\r\n\t\t\t\t\t_width: 100,\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'AssetOnDurationMinutes',\r\n\t\t\t\t\ttitle: 'Minutes Used',\r\n\t\t\t\t\t_width: 100,\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t},\r\n\t\t{\r\n\t\t\tisLoading: false,\r\n\t\t\ttabHasBeenLoaded: false,\r\n\t\t\ttextLabel: 'Assets Not Used Each Day by Equipment',\r\n\t\t\tgraphType: this.graphTypes[2],\r\n\t\t\ttooltip:\r\n\t\t\t\t'Stacked column chart showing how many assets were not used over the timescope selected by asset type.',\r\n\t\t\tdownloadableData: true,\r\n\t\t\tgroupable: true,\r\n\t\t\tlegendVisible: true,\r\n\t\t\tgroupColumns: [\r\n\t\t\t\t{ field: 'DateOfObservationDateObject' },\r\n\t\t\t\t{ field: 'used' },\r\n\t\t\t],\r\n\t\t\ttableStructure: [\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'DateOfObservationDateObject',\r\n\t\t\t\t\ttitle: 'Date',\r\n\t\t\t\t\tfilter: 'date',\r\n\t\t\t\t\t_width: 300,\r\n\t\t\t\t\tformatOption: 'shortDate',\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'SiteName',\r\n\t\t\t\t\ttitle: 'Site',\r\n\t\t\t\t\t_width: 100,\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'GateName',\r\n\t\t\t\t\ttitle: 'Gate',\r\n\t\t\t\t\t_width: 100,\r\n\t\t\t\t},\r\n\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'AssetName',\r\n\t\t\t\t\ttitle: 'Asset Name',\r\n\t\t\t\t\t_width: 300,\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'ProperAssetName',\r\n\t\t\t\t\ttitle: 'Proper Asset Name',\r\n\t\t\t\t\t_width: 300,\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'used',\r\n\t\t\t\t\ttitle: 'Was Asset Used',\r\n\t\t\t\t\t_width: 100,\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'AssetOnCount',\r\n\t\t\t\t\ttitle: 'Times Used',\r\n\t\t\t\t\t_width: 100,\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'AssetOnDurationMinutes',\r\n\t\t\t\t\ttitle: 'Minutes Used',\r\n\t\t\t\t\t_width: 100,\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t},\r\n\t\t{\r\n\t\t\tisLoading: false,\r\n\t\t\ttabHasBeenLoaded: false,\r\n\t\t\ttextLabel: 'Assets Used Detail',\r\n\t\t\tgraphType: this.graphTypes[2],\r\n\t\t\ttooltip:\r\n\t\t\t\t'Bar chart showing the amount of times an asset was In Use total over the timescope selected.',\r\n\t\t\tdownloadableData: true,\r\n\t\t\tgroupable: true,\r\n\t\t\tlegendVisible: true,\r\n\t\t\tgroupColumns: [],\r\n\t\t\ttableStructure: [\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'SiteName',\r\n\t\t\t\t\ttitle: 'Site',\r\n\t\t\t\t\t_width: 100,\r\n\t\t\t\t},\r\n\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'ProperAssetName',\r\n\t\t\t\t\ttitle: 'Asset Name',\r\n\t\t\t\t\t_width: 300,\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'DurationInSeconds',\r\n\t\t\t\t\ttitle: 'Seconds In Use',\r\n\t\t\t\t\t_width: 100,\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'DurationInMinutes',\r\n\t\t\t\t\ttitle: 'Minutes In Use',\r\n\t\t\t\t\t_width: 100,\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'StartDate',\r\n\t\t\t\t\ttitle: 'Start Date',\r\n\t\t\t\t\tfilter: 'date',\r\n\t\t\t\t\t_width: 300,\r\n\t\t\t\t\t// formatOption: 'shortDate'\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: 'EndDate',\r\n\t\t\t\t\ttitle: 'End Date',\r\n\t\t\t\t\tfilter: 'date',\r\n\t\t\t\t\t_width: 300,\r\n\t\t\t\t\t// formatOption: 'shortDate'\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t},\r\n\t];\r\n\r\n\tnoDataForSite: boolean = false;\r\n\ttimeoutToExpire: any;\r\n\tselectedTabIndex: number = 0;\r\n\tWidgetTabSettings: any = [];\r\n\r\n\tConditionalShadingRecord: any;\r\n\tpercentTextColor: any = [];\r\n\tconditionalColorPercentAmount: any = [];\r\n\r\n\tholeSize = 30;\r\n\tholeCenterTextClass = 'donut-center-text-md';\r\n\tdonutClass = 'donut-md';\r\n\tpublic percentAssetsNotInUse = [];\r\n\r\n\r\n\tconstructor(\r\n\t\tpublic dataService: DataService,\r\n\t\tprivate dashboardService: DashboardService,\r\n\t\tprivate dialog: MatDialog,\r\n\t\tpublic toastr: ToastrService,\r\n\t\tprivate utilityService: UtilityService,\r\n\t\tprivate elem: ElementRef,\r\n\t\tpublic tourService: TourService,\r\n\t) {}\r\n\tpublic labelContent(e: any): string {\r\n\t\treturn e.category + ': ' + e.value;\r\n\t}\r\n\r\n\tngOnInit() {\r\n\t\tthis.tab = this.widgetTabs[0];\r\n\t\tthis.updateInterval =\r\n\t\t\tthis.dashboardService.determineProperTacticalDashboardUpdateIntervalForWidget(\r\n\t\t\t\tthis.widgetObject\r\n\t\t\t);\r\n\t\tthis.timeScopeObject =\r\n\t\tthis.dashboardService.determineProperTimeScopeForWidget({\r\n\t\t\twidgetObject: this.widgetObject,\r\n\t\t\tUTCConfiguration: false,\r\n\t\t});\r\n\t\tthis.buildNavigationOptionsArray();\r\n\t}\r\n\r\n\tngAfterViewInit(): void {\r\n\r\n\t\tvar bounds = this.elem.nativeElement.getBoundingClientRect();\r\n\t\tthis.cardResize(bounds);\r\n\r\n\t\tif(Global.isMobile == true) {\r\n\t\t\tthis.contentHeight = 'calc(100% - 20px)';\r\n\t\t}\r\n\t\telse {\r\n\t\t\tthis.contentHeight = 'calc(100% - 120px)';\r\n\t\t}\r\n\r\n\t\tlet statement =\r\n\t\t\t'API.GetWidgetTabSettings @WidgetId = ' +\r\n\t\t\tthis.widgetObject.WidgetId;\r\n\t\tthis.dataService.SQLActionAsPromise(statement).then((data: any) => {\r\n\t\t\tthis.WidgetTabSettings = data;\r\n\t\t\tthis.WidgetTabSettings.forEach((tabSetting) => {\r\n\t\t\t\tthis.widgetTabs[tabSetting.TabIndex].legendVisible =\r\n\t\t\t\t\t!tabSetting.IsLegendHidden;\r\n\t\t\t});\r\n\t\t\tconsole.log(this);\r\n\t\t});\r\n\r\n\t\tthis.ConditionalShadingRecord = this.dataService.cache.tacticalDashboardWidgetConditionalShadings.filter((p: any) => {\r\n\t\t\treturn p.WidgetId == this.widgetObject.WidgetId;\r\n\t\t});\r\n\r\n\t\tif (this.ConditionalShadingRecord.length > 0) {\r\n\t\t\tthis.ConditionalShadingRecord.sort((a, b) => parseFloat(a.Value) - parseFloat(b.Value));\r\n\t\t}\r\n\r\n\t\tif (this.widgetResizedEvent) {\r\n\t\t\tthis.widgetResizedSubscription = this.widgetResizedEvent.subscribe((data) => {\r\n\t\t\t\tif (this.widgetObject.WidgetId == data.item.WidgetId) {\r\n\t\t\t\t\tthis.cardResize(data);\r\n\t\t\t\t\tthis.fontResize(data);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\r\n\t\tthis.widgetNavigateToFirstTabSubscription = this.dashboardService._widgetNavigateToFirstTab.subscribe((widgetObject: any) => {\r\n\t\t\tif (widgetObject && parseInt(this.widgetObject.WidgetId) === parseInt(widgetObject.WidgetId)) {\r\n\t\t\t\tthis.selectedTabIndex = 0\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tthis.widgetToggleLegendHiddenSubscription = this.dashboardService._widgetToggleLegendHidden.subscribe((widgetObject: any) => {\r\n\t\t\tif (widgetObject && parseInt(this.widgetObject.WidgetId) === parseInt(widgetObject.WidgetId)) {\r\n\t\t\t\tthis.toggleLegendHidden(this.tab ,this.selectedTabIndex);\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tthis.isLoading = true;\r\n\t\tif (!Global.FullDataCacheExists) {\r\n\t\t\tthis.fullDataCacheSubscription =\r\n\t\t\t\tthis.dataService.fullDataCacheExists$.subscribe((data: any) => {\r\n\t\t\t\t\tif (data === true) {\r\n\t\t\t\t\t\tthis.initialize();\r\n\t\t\t\t\t\tthis.fullDataCacheSubscription.unsubscribe();\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t} else {\r\n\t\t\tthis.initialize();\r\n\t\t}\r\n\r\n\t\tthis.colorChangedSubscription =\r\n\t\t\tthis.dataService.colorChanged$.subscribe((data: any) => {\r\n\t\t\t\tif (data === 'light') {\r\n\t\t\t\t\tthis.CreateTheme('light');\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.CreateTheme('dark');\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\tif (Global.Theme === 'light') {\r\n\t\t\tthis.CreateTheme('light');\r\n\t\t} else {\r\n\t\t\tthis.CreateTheme('dark');\r\n\t\t}\r\n\r\n\t\tif (this.dashboardUpdateIntervalChanged) {\r\n\t\t\tthis.dashboardUpdateIntervalSubscription =\r\n\t\t\t\tthis.dashboardUpdateIntervalChanged.subscribe((data) => {\r\n\t\t\t\t\tconsole.log(data);\r\n\t\t\t\t\tlet foundWidgetWithSameWidgetId = data.find(\r\n\t\t\t\t\t\t(widgetThatWasChanged) => {\r\n\t\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\t\twidgetThatWasChanged.WidgetId ===\r\n\t\t\t\t\t\t\t\tthis.widgetObject.WidgetId\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t);\r\n\r\n\t\t\t\t\tif (!_.isNil(foundWidgetWithSameWidgetId)) {\r\n\t\t\t\t\t\t//if data (which is list of widgets that had the time zone changed as an array of widgets includes a widget with this widget id, we can assume this widget needs to be updated. needs to initialize with new selected time zone in mind. )\r\n\t\t\t\t\t\tthis.initialize();\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t}\r\n\t\tif (this.dashboardTimeScopeChanged) {\r\n\t\t\tthis.dashboardTimeScopeChangedSubscription =\r\n\t\t\t\tthis.dashboardTimeScopeChanged.subscribe((data) => {\r\n\t\t\t\t\tlet foundWidgetWithSameWidgetId = data.find(\r\n\t\t\t\t\t\t(widgetThatWasChanged) => {\r\n\t\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\t\twidgetThatWasChanged.WidgetId ===\r\n\t\t\t\t\t\t\t\tthis.widgetObject.WidgetId\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t);\r\n\r\n\t\t\t\t\tif (!_.isNil(foundWidgetWithSameWidgetId)) {\r\n\t\t\t\t\t\tconsole.log('Widget Time Zone Changed');\r\n\t\t\t\t\t\tthis.initialize();\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t}\r\n\t\t// this.chartDataIsReady = true;\r\n\t\tthis.tab = this.widgetTabs[0];\r\n\t}\r\n\r\n\tfontResize(data: any) {\r\n\r\n\t\tif (data.height < 400 || data.width < 400) {\r\n\t\t\tthis.fontSize1 = 'small';\r\n\t\t\tthis.fontSize2 = 'x-small';\r\n\t\t}\r\n\r\n\t\telse if ((data.height > 400 && data.height < 500) || (data.width > 400 && data.width < 600)) {\r\n\t\t\tthis.fontSize1 = 'medium';\r\n\t\t\tthis.fontSize2 = 'small';\r\n\t\t}\r\n\r\n\t\telse if ((data.height > 500 && data.height < 700) || (data.width > 600 && data.width < 800)) {\r\n\t\t\tthis.fontSize1 = 'large';\r\n\t\t\tthis.fontSize2 = 'medium';\r\n\t\t}\r\n\t\telse if (data.height > 700 || data.width > 800) {\r\n\t\t\tthis.fontSize1 = 'x-large';\r\n\t\t\tthis.fontSize2 = 'large';\r\n\t }\r\n }\r\n\r\n\r\n\tcardResize(data: any) {\r\n\r\n\t\tif (data.height < 400 || data.width < 400) {\r\n\t\t\tthis.cardClass2 = 'card-tile-sm';\r\n\t\t\tthis.cardWideClass2 = 'card-wide-tile-sm';\r\n\r\n\t\t\tthis.cardTileCenterTitleClass = 'grid-card-title-center-sm';\r\n\t\t\tthis.cardWideTileCenterTitleClass = 'grid-wide-card-title-center-sm';\r\n\r\n\t\t\tthis.holeSize = 55;\r\n\t\t\tthis.holeCenterTextClass = 'donut-center-text-xs';\r\n\t\t\tthis.donutClass = 'donut-sm';\r\n\t\t}\r\n\r\n\t\telse if ((data.height > 400 && data.height < 500) || (data.width > 400 && data.width < 600)) {\r\n\t\t\tthis.cardClass2 = 'card-tile-md';\r\n\t\t\tthis.cardWideClass2 = 'card-wide-tile-md';\r\n\r\n\t\t\tthis.cardTileCenterTitleClass = 'grid-card-title-center-sm';\r\n\t\t\tthis.cardWideTileCenterTitleClass = 'grid-wide-card-title-center-md';\r\n\r\n\t\t\tthis.holeSize = 60;\r\n\t\t\tthis.holeCenterTextClass = 'donut-center-text-sm';\r\n\t\t\tthis.donutClass = 'donut-sm';\r\n\t\t}\r\n\r\n\t\telse if ((data.height > 500 && data.height < 700) || (data.width > 600 && data.width < 800)) {\r\n\t\t\tthis.cardClass2 = 'card-tile-md';\r\n\t\t\tthis.cardWideClass2 = 'card-wide-tile-md';\r\n\r\n\t\t\tthis.cardTileCenterTitleClass = 'grid-card-title-center-md';\r\n\t\t\tthis.cardWideTileCenterTitleClass = 'grid-wide-card-title-center-md';\r\n\r\n\t\t\tthis.holeSize = 60;\r\n\t\t\tthis.holeCenterTextClass = 'donut-center-text-sm';\r\n\t\t\tthis.donutClass = 'donut-sm';\r\n\t\t}\r\n\t\telse if (data.height > 700 || data.width > 800) {\r\n\t\t\tthis.cardClass2 = 'card-tile-lg';\r\n\t\t\tthis.cardWideClass2 = 'card-wide-tile-lg';\r\n\r\n\t\t\tthis.cardTileCenterTitleClass = 'grid-card-title-center-md';\r\n\t\t\tthis.cardWideTileCenterTitleClass = 'grid-wide-card-title-center-md';\r\n\r\n\t\t\tthis.holeSize = 60;\r\n\t\t\tthis.holeCenterTextClass = 'donut-center-text-sm';\r\n\t\t\tthis.donutClass = 'donut-sm';\r\n\t\t}\r\n\r\n\t\tif (data.width < 400) {\r\n\t\t\tthis.headerGridTitle = 'grid-title-sm';\r\n\t\t}\r\n\t\telse if (data.width > 400 && data.width < 600) {\r\n\t\t\tthis.headerGridTitle = 'grid-title-sm';\r\n\t\t}\r\n\t\telse if (data.width > 600 && data.width < 800) {\r\n\t\t\tthis.headerGridTitle = 'grid-title-lg';\r\n\t\t}\r\n\t\telse if (data.width > 800) {\r\n\t\t\tthis.headerGridTitle = 'grid-title-lg';\r\n\t\t}\r\n\t}\r\n\r\n\tstartIntervals() {\r\n\t\tthis.updateInterval =\r\n\t\t\tthis.dashboardService.determineProperTacticalDashboardUpdateIntervalForWidget(\r\n\t\t\t\tthis.widgetObject\r\n\t\t\t);\r\n\r\n\t\tif (this.updateInterval === undefined) {\r\n\t\t\tthis.isLoading = false;\r\n\t\t\tthis.displayNoUpdateIntervalMessage = true;\r\n\t\t\treturn;\r\n\t\t} else {\r\n\t\t\tthis.isLoading = true;\r\n\t\t\tthis.displayNoUpdateIntervalMessage = false;\r\n\t\t}\r\n\t\tlet intervalUpdate = this.updateInterval.UpdateInterval * 60000;\r\n\t\tif (this.secondsAgoInterval !== undefined) {\r\n\t\t\tclearInterval(this.secondsAgoInterval);\r\n\t\t\tthis.secondsAgoInterval = undefined;\r\n\t\t}\r\n\t\tthis.retrieveData();\r\n\r\n\t\tthis.secondsAgoInterval = setInterval(() => {\r\n\t\t\tif (this.lastUpdatedDate !== undefined) {\r\n\t\t\t\tthis.displayTimeAgoMessage =\r\n\t\t\t\t\tthis.dashboardService.calculateTimeAgo(\r\n\t\t\t\t\t\tthis.lastUpdatedDate\r\n\t\t\t\t\t);\r\n\t\t\t\tthis.widgetObject.displayTimeAgoMessage =\r\n\t\t\t\t\tthis.displayTimeAgoMessage;\r\n\t\t\t}\r\n\t\t}, 1000);\r\n\t\tif (this.updateControllerInterval !== undefined) {\r\n\t\t\tclearInterval(this.updateControllerInterval);\r\n\t\t\tthis.updateControllerInterval = undefined;\r\n\t\t}\r\n\t\tthis.updateControllerInterval = setInterval(() => {\r\n\t\t\tthis.retrieveData();\r\n\t\t}, intervalUpdate);\r\n\t}\r\n\r\n\tdestroyIntervals() {\r\n\t\tif (this.updateControllerInterval) {\r\n\t\t\tclearInterval(this.updateControllerInterval);\r\n\t\t\tthis.updateControllerInterval = undefined;\r\n\t\t}\r\n\t\tif (this.secondsAgoInterval) {\r\n\t\t\tclearInterval(this.secondsAgoInterval);\r\n\t\t\tthis.secondsAgoInterval = undefined;\r\n\t\t}\r\n\t}\r\n\r\n\tinitialize() {\r\n\t\tif (_.isNil(this.widgetObject.SiteList)) {\r\n\t\t\tthis.isLoading = false;\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tlet statement =\r\n\t\t\t'API.TacticalDashboardsRetrieveAllRecordsForWidgetId @widgetId = ' +\r\n\t\t\tthis.widgetObject.WidgetId +\r\n\t\t\t', @userId = ' +\r\n\t\t\tGlobal.User.currentUser.Id;\r\n\t\tthis.dataService.SQLActionAsPromise(statement).then((data: any) => {\r\n\t\t\tthis.widgetTabsChartConfigurations = data;\r\n\t\t\tthis.widgetTabs.forEach((tab, index) => {\r\n\t\t\t\tif (this.widgetTabsChartConfigurations.length > 0) {\r\n\t\t\t\t\tlet foundWidgetTabConfiguration =\r\n\t\t\t\t\t\tthis.widgetTabsChartConfigurations.find(\r\n\t\t\t\t\t\t\t(configurationrecord) => {\r\n\t\t\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\t\t\tconfigurationrecord.WidgetTabIndex === index\r\n\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t);\r\n\t\t\t\t\tif (foundWidgetTabConfiguration !== undefined) {\r\n\t\t\t\t\t\ttab.graphType = Global.tacticalDashboardGraphTypes.find(\r\n\t\t\t\t\t\t\t(graphType) =>\r\n\t\t\t\t\t\t\t\tgraphType.id ==\r\n\t\t\t\t\t\t\t\tfoundWidgetTabConfiguration.ChartTypeId\r\n\t\t\t\t\t\t);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t\tthis.widgetTabConfigurationsFinishedMapping = true;\r\n\r\n\t\t\tthis.selectedTabIndex =\r\n\t\t\t\tthis.widgetObject.SelectedTabIndex !== undefined\r\n\t\t\t\t\t? this.widgetObject.SelectedTabIndex\r\n\t\t\t\t\t: 0;\r\n\t\t\tthis.selectedMatTabLabel =\r\n\t\t\t\tthis.widgetTabs[\r\n\t\t\t\t\tthis.widgetObject.SelectedTabIndex !== undefined\r\n\t\t\t\t\t\t? this.widgetObject.SelectedTabIndex\r\n\t\t\t\t\t\t: 0\r\n\t\t\t\t].textLabel;\r\n\t\t\tthis.widgetTabs[\r\n\t\t\t\tthis.widgetObject.SelectedTabIndex !== undefined\r\n\t\t\t\t\t? this.widgetObject.SelectedTabIndex\r\n\t\t\t\t\t: 0\r\n\t\t\t].tabHasBeenLoaded = true;\r\n\r\n\t\t\tthis.tab = this.widgetTabs[this.selectedTabIndex];\r\n\r\n\t\t\tthis.startIntervals();\r\n\t\t});\r\n\t}\r\n\r\n\tshowDialogModalPopupGrid(tab) {\r\n\t\tconst cuSummaryModal = this.dialog.open(DialogModalParentComponent, {\r\n\t\t\twidth: Global.isMobile ? '100%' : '60%',\r\n\t\t\theight: Global.isMobile ? '90%' : '80%',\r\n\t\t\tdata: {\r\n\t\t\t\tgraphId: uuidv4(),\r\n\t\t\t\tgroupable: tab.groupable,\r\n\t\t\t\tgroupColumns: tab.groupable === true ? tab.groupColumns : [],\r\n\t\t\t\tpopupTitle: 'Raw Data: ' + tab.textLabel,\r\n\t\t\t\tWidgetName: 'Kendo-Grid',\r\n\t\t\t\ttableStructure: tab.tableStructure,\r\n\t\t\t\ttableData: tab.tableData,\r\n\t\t\t\tcanCreateDashboardWidgetFromPopup: false,\r\n\t\t\t},\r\n\t\t\tmaxWidth: '100vw',\r\n\t\t\tmaxHeight: '100vh',\r\n\t\t});\r\n\t}\r\n\r\n\r\n\r\n\r\n\topenConditionalShadingSettingsPopup(tileNumber) {\r\n\t\tlet tileConditionalShadingRecord =\r\n\t\t\tthis.dataService.cache.tacticalDashboardWidgetConditionalShadings.filter((p: any) => {\r\n\t\t\t\treturn p.WidgetId == this.widgetObject.WidgetId && p.SummaryTileIndex == tileNumber;\r\n\t\t\t});\r\n\t\tif(tileConditionalShadingRecord.length == 0) {\r\n\t\t\ttileConditionalShadingRecord.WidgetId = this.widgetObject.WidgetId;\r\n\t\t\ttileConditionalShadingRecord.SummaryTileIndex = tileNumber;\r\n\t\t}\r\n\r\n\t\tvar DialogRef = this.dialog.open(TacticalWidgetSummaryTilePopupComponent, {\r\n\t\t\twidth: '50%',\r\n\t\t\theight: '40%',\r\n\t\t\tdata: tileConditionalShadingRecord,\r\n\t\t});\r\n\r\n\r\n\t\tDialogRef.afterClosed().subscribe((result) => {\r\n\t\t\tlet tileConditionalShadingRecordLatest =\r\n\t\t\t\tthis.dataService.cache.tacticalDashboardWidgetConditionalShadings.filter((p: any) => {\r\n\t\t\t\t\treturn p.WidgetId == this.widgetObject.WidgetId;\r\n\t\t\t\t});\r\n\t\t\tthis.ConditionalShadingRecord = [];\r\n\t\t\ttileConditionalShadingRecordLatest.forEach((r) => {\r\n\t\t\t\tthis.ConditionalShadingRecord.push(r);\r\n\t\t\t});\r\n\r\n\t\t\tthis.ConditionalShadingRecord.sort((a, b) => parseFloat(a.Value) - parseFloat(b.Value));\r\n\t\t\tthis.ConditionalColorSummaryTiles();\r\n\r\n\t\t});\r\n\r\n\t}\r\n\r\n\r\n\tprivate ConditionalColorSummaryTiles() {\r\n\t\tthis.percentTextColor[1] = \"lightseagreen\";\r\n\r\n\t\tthis.conditionalColorPercentAmount[1] = this.summaryArray[2] * 100;\r\n\r\n\r\n\t\tif (this.ConditionalShadingRecord.length > 0) {\r\n\t\t\tthis.ConditionalShadingRecord.forEach((r) => {\r\n\r\n\t\t\t\tswitch (r.Operator) {\r\n\t\t\t\t\tcase 'Is greater than' :\r\n\t\t\t\t\t\tif(this.conditionalColorPercentAmount[r.SummaryTileIndex] > r.Value) {\r\n\t\t\t\t\t\t\tthis.percentTextColor[r.SummaryTileIndex] = r.HexColor;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase 'Is less than' :\r\n\t\t\t\t\t\tif(this.conditionalColorPercentAmount[r.SummaryTileIndex] < r.Value) {\r\n\t\t\t\t\t\t\tthis.percentTextColor[r.SummaryTileIndex] = r.HexColor;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase 'Is equal to' :\r\n\t\t\t\t\t\tvar conditionalColorPercentAmountRounded = Math.round(this.conditionalColorPercentAmount[r.SummaryTileIndex]);\r\n\t\t\t\t\t\tif(conditionalColorPercentAmountRounded == r.Value) {\r\n\t\t\t\t\t\t\tthis.percentTextColor[r.SummaryTileIndex] = r.HexColor;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase 'Is not equal to' :\r\n\t\t\t\t\t\tvar conditionalColorPercentAmountRounded = Math.round(this.conditionalColorPercentAmount[r.SummaryTileIndex]);\r\n\t\t\t\t\t\tif(conditionalColorPercentAmountRounded != r.Value) {\r\n\t\t\t\t\t\t\tthis.percentTextColor[r.SummaryTileIndex] = r.HexColor;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\r\n\t\tthis.percentAssetsNotInUse = [\r\n\t\t\t{\r\n\t\t\t\tkind: \"assets in use\",\r\n\t\t\t\tshare: this.summaryArray[2] * 100,\r\n\t\t\t\tcolor: this.percentTextColor[1],\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tkind: \"other\",\r\n\t\t\t\tshare: (1 - this.summaryArray[2]) * 100,\r\n\t\t\t\tcolor: \"grey\",\r\n\t\t\t},\r\n\t\t];\r\n\r\n\t}\r\n\r\n\r\n\tretrieveData() {\r\n\t\tthis.timeScopeObject =\r\n\t\tthis.dashboardService.determineProperTimeScopeForWidget({\r\n\t\t\twidgetObject: this.widgetObject,\r\n\t\t\tUTCConfiguration: false,\r\n\t\t});\r\n\t\tif (this.timeScopeObject === undefined) {\r\n\t\t\tthis.displayNoTimeScopeMessage = true;\r\n\t\t\tthis.isLoading = false;\r\n\t\t} else {\r\n\t\t\tthis.displayNoTimeScopeMessage = false;\r\n\t\t\tif (\r\n\t\t\t\tthis.widgetTabs[0].tabHasBeenLoaded === true ||\r\n\t\t\t\tthis.widgetTabs[1].tabHasBeenLoaded === true\r\n\t\t\t) {\r\n\t\t\t\tthis.widgetTabs[0].isLoading = this.widgetTabs[1].isLoading =\r\n\t\t\t\t\ttrue;\r\n\t\t\t\tlet statement =\r\n\t\t\t\t\t\"API.TacticalDashboard_GS_Equipment_NotUsed @accessToken= '\" +\r\n\t\t\t\t\tGlobal.User.currentUser.ODataAccessToken +\r\n\t\t\t\t\t\"'\";\r\n\t\t\t\tif (!_.isNil(this.widgetObject.SiteList)) {\r\n\t\t\t\t\tstatement =\r\n\t\t\t\t\t\tstatement +\r\n\t\t\t\t\t\t\", @siteIdList = '\" +\r\n\t\t\t\t\t\tthis.widgetObject.SiteList +\r\n\t\t\t\t\t\t\"'\";\r\n\t\t\t\t}\r\n\r\n\t\t\t\tstatement =\r\n\t\t\t\t\tstatement +\r\n\t\t\t\t\t', @startDateTimeMS=' +\r\n\t\t\t\t\tthis.timeScopeObject.queryStartDate +\r\n\t\t\t\t\t', @endDateTimeMS= ' +\r\n\t\t\t\t\tthis.timeScopeObject.queryEndDate;\r\n\r\n\t\t\t\tif (\r\n\t\t\t\t\t!_.isNil(this.widgetObject.WidgetAssetTypeId) &&\r\n\t\t\t\t\tthis.widgetObject.WidgetAssetTypeId !== 0\r\n\t\t\t\t) {\r\n\t\t\t\t\tstatement =\r\n\t\t\t\t\t\tstatement +\r\n\t\t\t\t\t\t', @assetTypeId = ' +\r\n\t\t\t\t\t\tthis.widgetObject.WidgetAssetTypeId;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.dataService\r\n\t\t\t\t\t.SQLActionAsPromise(statement)\r\n\t\t\t\t\t.then((data: any) => {\r\n\t\t\t\t\t\tconsole.log(data);\r\n\r\n\t\t\t\t\t\tif (data.length === 0) {\r\n\t\t\t\t\t\t\tthis.widgetTabs[0].tableData = data;\r\n\t\t\t\t\t\t\tthis.widgetTabs[1].tableData = data;\r\n\t\t\t\t\t\t\tthis.widgetTabs[0].isLoading =\r\n\t\t\t\t\t\t\t\tthis.widgetTabs[1].isLoading = false;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tlet h1Number = 0;\r\n\t\t\t\t\t\t\tdata.forEach((asset) => {\r\n\t\t\t\t\t\t\t\tasset.OnDuringTimeScopeBoolean =\r\n\t\t\t\t\t\t\t\t\t!!asset.OnDuringTimeScope;\r\n\t\t\t\t\t\t\t\tasset.ProperAssetName =\r\n\t\t\t\t\t\t\t\t\tasset.SiteName +\r\n\t\t\t\t\t\t\t\t\t' ' +\r\n\t\t\t\t\t\t\t\t\tasset.GateName +\r\n\t\t\t\t\t\t\t\t\t' ' +\r\n\t\t\t\t\t\t\t\t\tasset.AssetName;\r\n\r\n\t\t\t\t\t\t\t\tif (asset.OnDuringTimeScope !== 1) {\r\n\t\t\t\t\t\t\t\t\th1Number = h1Number + 1;\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\t\tthis.summaryArray[0] = h1Number; // Count of Equipment Not Used for the selected timescope\r\n\t\t\t\t\t\t\tthis.summaryArray[1] = data.length;\r\n\t\t\t\t\t\t\tthis.summaryArray[2] = this.summaryArray[0] / this.summaryArray[1];\r\n\r\n\t\t\t\t\t\t\tthis.widgetTabs[0].tableData = data;\r\n\t\t\t\t\t\t\tthis.widgetTabs[1].tableData = data;\r\n\r\n\t\t\t\t\t\t\tthis.percentCalculated = true;\r\n\r\n\t\t\t\t\t\t\tthis.ConditionalColorSummaryTiles();\r\n\r\n\t\t\t\t\t\t\tthis.widgetTabs[0].isLoading =\r\n\t\t\t\t\t\t\t\tthis.widgetTabs[1].isLoading = false;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\tif (\r\n\t\t\t\tthis.widgetTabs[0].tabHasBeenLoaded === true ||\r\n\t\t\t\tthis.widgetTabs[1].tabHasBeenLoaded === true\r\n\t\t\t) {\r\n\t\t\t\tthis.widgetTabs[0].isLoading = this.widgetTabs[1].isLoading =\r\n\t\t\t\t\ttrue;\r\n\t\t\t\tlet statement2 =\r\n\t\t\t\t\t'API.TacticalDashboard_GS_Asset_NotUsed_Duration ' +\r\n\t\t\t\t\t'@startDateTimeMS=' +\r\n\t\t\t\t\tthis.timeScopeObject.queryStartDate +\r\n\t\t\t\t\t', @endDateTimeMS= ' +\r\n\t\t\t\t\tthis.timeScopeObject.queryEndDate +\r\n\t\t\t\t\t\" , @accessToken='\" +\r\n\t\t\t\t\tGlobal.User.currentUser.ODataAccessToken +\r\n\t\t\t\t\t\"'\";\r\n\t\t\t\tif (!_.isNil(this.widgetObject.SiteList)) {\r\n\t\t\t\t\tstatement2 =\r\n\t\t\t\t\t\tstatement2 +\r\n\t\t\t\t\t\t\", @siteIdList = '\" +\r\n\t\t\t\t\t\tthis.widgetObject.SiteList +\r\n\t\t\t\t\t\t\"'\";\r\n\t\t\t\t}\r\n\t\t\t\tif (\r\n\t\t\t\t\t!_.isNil(this.widgetObject.WidgetAssetTypeId) &&\r\n\t\t\t\t\tthis.widgetObject.WidgetAssetTypeId !== 0\r\n\t\t\t\t) {\r\n\t\t\t\t\tstatement2 =\r\n\t\t\t\t\t\tstatement2 +\r\n\t\t\t\t\t\t', @assetTypeId = ' +\r\n\t\t\t\t\t\tthis.widgetObject.WidgetAssetTypeId;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.dataService\r\n\t\t\t\t\t.SQLActionAsPromise(statement2)\r\n\t\t\t\t\t.then((data: any) => {\r\n\t\t\t\t\t\tif (data.length === 0) {\r\n\t\t\t\t\t\t\tthis.widgetTabs[1].tableData = data;\r\n\t\t\t\t\t\t\tthis.widgetTabs[1].chartData = data;\r\n\t\t\t\t\t\t\tthis.widgetTabs[0].isLoading =\r\n\t\t\t\t\t\t\t\tthis.widgetTabs[1].isLoading = false;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tthis.chartDataFinalIsReady = false;\r\n\t\t\t\t\t\t\tconsole.log(data);\r\n\t\t\t\t\t\t\tdata.forEach((record) => {\r\n\t\t\t\t\t\t\t\trecord.ProperAssetName =\r\n\t\t\t\t\t\t\t\t\trecord.SiteName +\r\n\t\t\t\t\t\t\t\t\t' ' +\r\n\t\t\t\t\t\t\t\t\trecord.GateName +\r\n\t\t\t\t\t\t\t\t\t' ' +\r\n\t\t\t\t\t\t\t\t\trecord.AssetName;\r\n\t\t\t\t\t\t\t\trecord.DateOfObservationDateObject = new Date(\r\n\t\t\t\t\t\t\t\t\trecord.DateOfObservation\r\n\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\tthis.widgetTabs[1].tableData = data;\r\n\t\t\t\t\t\t\tthis.widgetTabs[1].chartData = groupBy(data, [\r\n\t\t\t\t\t\t\t\t{ field: 'ProperAssetName' },\r\n\t\t\t\t\t\t\t]) as GroupResult[];\r\n\t\t\t\t\t\t\tif (this.widgetTabs[1].chartData.length > 0) {\r\n\t\t\t\t\t\t\t\tthis.widgetTabs[1].chartData.push({\r\n\t\t\t\t\t\t\t\t\tvalue: 'Toggle All Series',\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\tlet sortByAssetNotUsedMinutes = data;\r\n\t\t\t\t\t\t\tsortByAssetNotUsedMinutes.sort(\r\n\t\t\t\t\t\t\t\t(a, b) =>\r\n\t\t\t\t\t\t\t\t\tb.AssetNotUsedMinutes -\r\n\t\t\t\t\t\t\t\t\ta.AssetNotUsedMinutes\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\tif (sortByAssetNotUsedMinutes.length > 0) {\r\n\t\t\t\t\t\t\t\tthis.summaryArray1[0] =\r\n\t\t\t\t\t\t\t\t\tsortByAssetNotUsedMinutes[\r\n\t\t\t\t\t\t\t\t\t\tsortByAssetNotUsedMinutes.length - 1\r\n\t\t\t\t\t\t\t\t\t].AssetNotUsedMinutes; //Least AssetNotUsedMinutes\r\n\t\t\t\t\t\t\t\tthis.summaryArray1[1] =\r\n\t\t\t\t\t\t\t\t\tsortByAssetNotUsedMinutes[\r\n\t\t\t\t\t\t\t\t\t\tsortByAssetNotUsedMinutes.length - 1\r\n\t\t\t\t\t\t\t\t\t].DateOfObservation; //Least AssetNotUsedMinutes DateOfObservation\r\n\t\t\t\t\t\t\t\tthis.summaryArray1[2] =\r\n\t\t\t\t\t\t\t\t\tsortByAssetNotUsedMinutes[\r\n\t\t\t\t\t\t\t\t\t\tsortByAssetNotUsedMinutes.length - 1\r\n\t\t\t\t\t\t\t\t\t].ProperAssetName; //Least AssetNotUsedMinutes Asset Name\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\tthis.widgetTabs[1].chartDataIsReady = true;\r\n\t\t\t\t\t\t\tthis.widgetTabs[0].isLoading =\r\n\t\t\t\t\t\t\t\tthis.widgetTabs[1].isLoading = false;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t}\r\n\t\t\tif (\r\n\t\t\t\tthis.widgetTabs[0].tabHasBeenLoaded === true ||\r\n\t\t\t\tthis.widgetTabs[2].tabHasBeenLoaded === true ||\r\n\t\t\t\tthis.widgetTabs[3].tabHasBeenLoaded === true ||\r\n\t\t\t\tthis.widgetTabs[4].tabHasBeenLoaded === true\r\n\t\t\t) {\r\n\t\t\t\tthis.widgetTabs[0].isLoading =\r\n\t\t\t\t\tthis.widgetTabs[2].isLoading =\r\n\t\t\t\t\tthis.widgetTabs[3].isLoading =\r\n\t\t\t\t\tthis.widgetTabs[4].isLoading =\r\n\t\t\t\t\t\ttrue;\r\n\t\t\t\tlet statement3 =\r\n\t\t\t\t\t'API.TacticalDashboard_GS_Asset_PoweredOn_Duration ' +\r\n\t\t\t\t\t'@startDateTimeMS=' +\r\n\t\t\t\t\tthis.timeScopeObject.queryStartDate +\r\n\t\t\t\t\t', @endDateTimeMS= ' +\r\n\t\t\t\t\tthis.timeScopeObject.queryEndDate +\r\n\t\t\t\t\t\" , @accessToken='\" +\r\n\t\t\t\t\tGlobal.User.currentUser.ODataAccessToken +\r\n\t\t\t\t\t\"'\";\r\n\t\t\t\tif (!_.isNil(this.widgetObject.SiteList)) {\r\n\t\t\t\t\tstatement3 =\r\n\t\t\t\t\t\tstatement3 +\r\n\t\t\t\t\t\t\", @siteIdList = '\" +\r\n\t\t\t\t\t\tthis.widgetObject.SiteList +\r\n\t\t\t\t\t\t\"'\";\r\n\t\t\t\t}\r\n\t\t\t\tif (\r\n\t\t\t\t\t!_.isNil(this.widgetObject.WidgetAssetTypeId) &&\r\n\t\t\t\t\tthis.widgetObject.WidgetAssetTypeId !== 0\r\n\t\t\t\t) {\r\n\t\t\t\t\tstatement3 =\r\n\t\t\t\t\t\tstatement3 +\r\n\t\t\t\t\t\t', @assetTypeId = ' +\r\n\t\t\t\t\t\tthis.widgetObject.WidgetAssetTypeId;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.dataService\r\n\t\t\t\t\t.SQLActionAsPromise(statement3)\r\n\t\t\t\t\t.then((data: any) => {\r\n\t\t\t\t\t\tif (data.length === 0) {\r\n\t\t\t\t\t\t\tthis.widgetTabs[2].tableData = data;\r\n\t\t\t\t\t\t\tthis.widgetTabs[2].chartData = data;\r\n\t\t\t\t\t\t\tthis.widgetTabs[2].isLoading = false;\r\n\t\t\t\t\t\t\tthis.widgetTabs[3].tableData = data;\r\n\t\t\t\t\t\t\tthis.widgetTabs[3].chartData = data;\r\n\t\t\t\t\t\t\tthis.widgetTabs[3].isLoading = false;\r\n\t\t\t\t\t\t\tthis.widgetTabs[4].tableData = data;\r\n\t\t\t\t\t\t\tthis.widgetTabs[4].chartData = data;\r\n\t\t\t\t\t\t\tthis.widgetTabs[4].isLoading = false;\r\n\t\t\t\t\t\t\tthis.widgetTabs[0].isLoading = false;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tthis.chartDataFinalIsReady = false;\r\n\t\t\t\t\t\t\tconsole.log(data);\r\n\t\t\t\t\t\t\tdata.forEach((record) => {\r\n\t\t\t\t\t\t\t\trecord.count = 1;\r\n\t\t\t\t\t\t\t\trecord.ProperAssetName =\r\n\t\t\t\t\t\t\t\t\trecord.SiteName +\r\n\t\t\t\t\t\t\t\t\t' ' +\r\n\t\t\t\t\t\t\t\t\trecord.GateName +\r\n\t\t\t\t\t\t\t\t\t' ' +\r\n\t\t\t\t\t\t\t\t\trecord.AssetName;\r\n\r\n\t\t\t\t\t\t\t\trecord.DateOfObservationDateObject = new Date(\r\n\t\t\t\t\t\t\t\t\trecord.DateOfObservation\r\n\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\tthis.widgetTabs[2].tableData = data;\r\n\t\t\t\t\t\t\tthis.widgetTabs[2].chartData = [];\r\n\t\t\t\t\t\t\tthis.widgetTabs[2].chartData.used = [];\r\n\t\t\t\t\t\t\tthis.widgetTabs[2].chartData.notused = [];\r\n\t\t\t\t\t\t\tdata.forEach((record) => {\r\n\t\t\t\t\t\t\t\trecord.properDate = new Date(\r\n\t\t\t\t\t\t\t\t\trecord.DateOfObservation\r\n\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\tif (record.AssetOnCount == null)\r\n\t\t\t\t\t\t\t\t\trecord.AssetOnCount = 0;\r\n\t\t\t\t\t\t\t\tif (record.AssetOnCount !== 0) {\r\n\t\t\t\t\t\t\t\t\trecord.used = true;\r\n\t\t\t\t\t\t\t\t\tthis.widgetTabs[2].chartData.used.push(\r\n\t\t\t\t\t\t\t\t\t\trecord\r\n\t\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\trecord.used = false;\r\n\t\t\t\t\t\t\t\t\tthis.widgetTabs[2].chartData.notused.push(\r\n\t\t\t\t\t\t\t\t\t\trecord\r\n\t\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\t\tlet used = this.widgetTabs[2].chartData.used;\r\n\t\t\t\t\t\t\tlet notused = this.widgetTabs[2].chartData.notused;\r\n\t\t\t\t\t\t\tthis.widgetTabs[3].tableData = used;\r\n\t\t\t\t\t\t\tthis.widgetTabs[4].tableData = notused;\r\n\r\n\t\t\t\t\t\t\tlet sparkLineData = groupBy(notused, [\r\n\t\t\t\t\t\t\t\t{ field: 'DateOfObservation' },\r\n\t\t\t\t\t\t\t]) as any[];\r\n\t\t\t\t\t\t\tsparkLineData.sort(\r\n\t\t\t\t\t\t\t\t(a, b) =>\r\n\t\t\t\t\t\t\t\t\tnew Date(b.value).getTime() -\r\n\t\t\t\t\t\t\t\t\tnew Date(a.value).getTime()\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\tthis.createSparkLineChart(sparkLineData); //Sparkline Data\r\n\t\t\t\t\t\t\tlet sortByAssetOnCount = data;\r\n\t\t\t\t\t\t\tsortByAssetOnCount.sort(\r\n\t\t\t\t\t\t\t\t(a, b) => b.AssetOnCount - a.AssetOnCount\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\tif (used.length > 0) {\r\n\t\t\t\t\t\t\t\tlet groupByDateUsed = groupBy(used, [\r\n\t\t\t\t\t\t\t\t\t{ field: 'DateOfObservation' },\r\n\t\t\t\t\t\t\t\t]) as any[];\r\n\t\t\t\t\t\t\t\tgroupByDateUsed.sort(\r\n\t\t\t\t\t\t\t\t\t(a, b) => b.items.length - a.items.length\r\n\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\tthis.summaryArray2[0] =\r\n\t\t\t\t\t\t\t\t\tgroupByDateUsed[0].items.length; // Highest Assets Used\r\n\t\t\t\t\t\t\t\tthis.summaryArray2[1] =\r\n\t\t\t\t\t\t\t\t\tgroupByDateUsed[0].value; // Highest Assets Used Date\r\n\t\t\t\t\t\t\t\tthis.summaryArray2[2] =\r\n\t\t\t\t\t\t\t\t\tsortByAssetOnCount[0].AssetOnCount; //Highest Times An Asset was turned On\r\n\t\t\t\t\t\t\t\tthis.summaryArray2[3] =\r\n\t\t\t\t\t\t\t\t\tsortByAssetOnCount[0].DateOfObservation; //Date Highest Times An Asset was turned On\r\n\t\t\t\t\t\t\t\tthis.summaryArray2[4] =\r\n\t\t\t\t\t\t\t\t\tsortByAssetOnCount[0].ProperAssetName; //Name of Asset that was turned on Highest No. of times\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\tif (notused.length > 0) {\r\n\t\t\t\t\t\t\t\tlet groupByDateNotUsed = groupBy(notused, [\r\n\t\t\t\t\t\t\t\t\t{ field: 'DateOfObservation' },\r\n\t\t\t\t\t\t\t\t]) as any[];\r\n\t\t\t\t\t\t\t\tgroupByDateNotUsed.sort(\r\n\t\t\t\t\t\t\t\t\t(a, b) => b.items.length - a.items.length\r\n\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\tthis.summaryArray3[0] =\r\n\t\t\t\t\t\t\t\t\tgroupByDateNotUsed[0].items.length; // Highest Assets Not Used\r\n\t\t\t\t\t\t\t\tthis.summaryArray3[1] =\r\n\t\t\t\t\t\t\t\t\tgroupByDateNotUsed[0].value; // Highest Assets Not Used Date\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\tused = groupBy(used, [{ field: 'AssetName' }]);\r\n\t\t\t\t\t\t\tnotused = groupBy(notused, [\r\n\t\t\t\t\t\t\t\t{ field: 'AssetName' },\r\n\t\t\t\t\t\t\t]);\r\n\t\t\t\t\t\t\tthis.widgetTabs[3].chartData = used;\r\n\t\t\t\t\t\t\tthis.widgetTabs[4].chartData = notused;\r\n\r\n\t\t\t\t\t\t\tthis.widgetTabs[2].chartDataIsReady =\r\n\t\t\t\t\t\t\t\tthis.widgetTabs[3].chartDataIsReady =\r\n\t\t\t\t\t\t\t\tthis.widgetTabs[4].chartDataIsReady =\r\n\t\t\t\t\t\t\t\t\ttrue;\r\n\t\t\t\t\t\t\tthis.widgetTabs[0].isLoading =\r\n\t\t\t\t\t\t\t\tthis.widgetTabs[2].isLoading =\r\n\t\t\t\t\t\t\t\tthis.widgetTabs[3].isLoading =\r\n\t\t\t\t\t\t\t\tthis.widgetTabs[4].isLoading =\r\n\t\t\t\t\t\t\t\t\tfalse;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t}\r\n\t\t\tif (this.widgetTabs[5].tabHasBeenLoaded === true) {\r\n\t\t\t\tthis.widgetTabs[5].isLoading = true;\r\n\t\t\t\tlet statement3 =\r\n\t\t\t\t\t'API.TacticalDashboard_GS_Asset_InUse_Detail ' +\r\n\t\t\t\t\t'@startDateTimeMS=' +\r\n\t\t\t\t\tthis.timeScopeObject.queryStartDate +\r\n\t\t\t\t\t', @endDateTimeMS= ' +\r\n\t\t\t\t\tthis.timeScopeObject.queryEndDate +\r\n\t\t\t\t\t\" , @accessToken='\" +\r\n\t\t\t\t\tGlobal.User.currentUser.ODataAccessToken +\r\n\t\t\t\t\t\"'\";\r\n\t\t\t\tif (!_.isNil(this.widgetObject.SiteList)) {\r\n\t\t\t\t\tstatement3 =\r\n\t\t\t\t\t\tstatement3 +\r\n\t\t\t\t\t\t\", @siteIdList = '\" +\r\n\t\t\t\t\t\tthis.widgetObject.SiteList +\r\n\t\t\t\t\t\t\"'\";\r\n\t\t\t\t}\r\n\t\t\t\tif (\r\n\t\t\t\t\t!_.isNil(this.widgetObject.WidgetAssetTypeId) &&\r\n\t\t\t\t\tthis.widgetObject.WidgetAssetTypeId !== 0\r\n\t\t\t\t) {\r\n\t\t\t\t\tstatement3 =\r\n\t\t\t\t\t\tstatement3 +\r\n\t\t\t\t\t\t', @assetTypeId = ' +\r\n\t\t\t\t\t\tthis.widgetObject.WidgetAssetTypeId;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.dataService\r\n\t\t\t\t\t.SQLActionAsPromise(statement3)\r\n\t\t\t\t\t.then((data: any) => {\r\n\t\t\t\t\t\tif (data.length === 0) {\r\n\t\t\t\t\t\t\tthis.widgetTabs[5].tableData = data;\r\n\t\t\t\t\t\t\tthis.widgetTabs[5].chartData = data;\r\n\t\t\t\t\t\t\tthis.widgetTabs[5].isLoading = false;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tdata.forEach((record) => {\r\n\t\t\t\t\t\t\t\trecord.ProperAssetName =\r\n\t\t\t\t\t\t\t\t\trecord.SiteName +\r\n\t\t\t\t\t\t\t\t\t' ' +\r\n\t\t\t\t\t\t\t\t\trecord.GateName +\r\n\t\t\t\t\t\t\t\t\t' ' +\r\n\t\t\t\t\t\t\t\t\trecord.AssetName;\r\n\r\n\t\t\t\t\t\t\t\trecord.DateOfObservationDateObject = new Date(\r\n\t\t\t\t\t\t\t\t\trecord.DateOfObservation\r\n\t\t\t\t\t\t\t\t);\r\n\r\n\t\t\t\t\t\t\t\trecord.DurationInMinutes = (\r\n\t\t\t\t\t\t\t\t\trecord.DurationInSeconds / 60\r\n\t\t\t\t\t\t\t\t).toFixed(2);\r\n\t\t\t\t\t\t\t\trecord.count = 1;\r\n\t\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\t\tlet assetAggregated = groupBy(data, [\r\n\t\t\t\t\t\t\t\t{ field: 'ProperAssetName' },\r\n\t\t\t\t\t\t\t]) as any[];\r\n\t\t\t\t\t\t\tassetAggregated.forEach((group) => {\r\n\t\t\t\t\t\t\t\tgroup.inUseLength = group.items.length;\r\n\t\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\t\tthis.widgetTabs[5].chartData = assetAggregated;\r\n\t\t\t\t\t\t\tthis.widgetTabs[5].chartDataIsReady = true;\r\n\t\t\t\t\t\t\tthis.widgetTabs[5].tableData = data;\r\n\r\n\t\t\t\t\t\t\tthis.widgetTabs[5].isLoading = false;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\tthis.lastUpdatedDate = new Date();\r\n\r\n\t\t\tthis.isLoading = false;\r\n\r\n\t\t\tvar bounds = this.elem.nativeElement.getBoundingClientRect();\r\n\t\t\tthis.cardResize(bounds);\r\n\r\n\t\t}\r\n\t}\r\n\r\n\tprivate buildNavigationOptionsArray() {\r\n\t\tvar service = this;\r\n\r\n\t\tvar navigationWidth = Global.isMobile ? \"115px\" : \"160px\";\r\n\r\n\t\tservice.options = [\r\n\t\t\t{\r\n\t\t\t\tid: 1,\r\n\t\t\t\twidth: navigationWidth,\r\n\t\t\t\tname: \"Navigation\",\r\n\t\t\t\tchildren: [\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tid: 10,\r\n\t\t\t\t\t\twidth: navigationWidth,\r\n\t\t\t\t\t\tname: \"Summary\",\r\n\t\t\t\t\t\taction: () => { service.navigateToTab(0, \"Summary\"); this.navigationOpened=false; }\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tid: 10,\r\n\t\t\t\t\t\twidth: navigationWidth,\r\n\t\t\t\t\t\tname: \"Minutes Off / Day\",\r\n\t\t\t\t\t\taction: () => { service.navigateToTab(1, \"Total Minutes Off For Day\"); this.navigationOpened=false; }\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tid: 10,\r\n\t\t\t\t\t\twidth: navigationWidth,\r\n\t\t\t\t\t\tname: \"Status / Day\",\r\n\t\t\t\t\t\taction: () => { service.navigateToTab(2, \"Assets Used/Not Used Each Day\"); this.navigationOpened=false; }\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tid: 10,\r\n\t\t\t\t\t\twidth: navigationWidth,\r\n\t\t\t\t\t\tname: \"Used / Type\",\r\n\t\t\t\t\t\taction: () => { service.navigateToTab(3, \"Assets Used Each Day by Equipment\"); this.navigationOpened=false; }\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tid: 10,\r\n\t\t\t\t\t\twidth: navigationWidth,\r\n\t\t\t\t\t\tname: \"NOT Used / Type\",\r\n\t\t\t\t\t\taction: () => { service.navigateToTab(4, \"Assets Not Used Each Day by Equipment\"); this.navigationOpened=false; }\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tid: 10,\r\n\t\t\t\t\t\twidth: navigationWidth,\r\n\t\t\t\t\t\tname: \"Total Used\",\r\n\t\t\t\t\t\taction: () => { service.navigateToTab(5, \"Assets Used Detail\"); this.navigationOpened=false; }\r\n\t\t\t\t\t},\r\n\r\n\t\t\t\t\t// {\r\n\t\t\t\t\t// \tid: 11,\r\n\t\t\t\t\t// \twidth: navigationWidth,\r\n\t\t\t\t\t// \tname: \"Raw Data\",\r\n\t\t\t\t\t// \tchildren: [\r\n\t\t\t\t\t// \t\t{\r\n\t\t\t\t\t// \t\t\tid: 12,\r\n\t\t\t\t\t// \t\t\twidth: navigationWidth,\r\n\t\t\t\t\t// \t\t\tname: \"Minutes Off / Day\",\r\n\t\t\t\t\t// \t\t\taction: () => { service.showDialogModalPopupGrid(service.widgetTabs[1]); this.navigationOpened=false; }\r\n\t\t\t\t\t// \t\t},\r\n\t\t\t\t\t// \t\t{\r\n\t\t\t\t\t// \t\t\tid: 12,\r\n\t\t\t\t\t// \t\t\twidth: navigationWidth,\r\n\t\t\t\t\t// \t\t\tname: \"Status / Day\",\r\n\t\t\t\t\t// \t\t\taction: () => { service.showDialogModalPopupGrid(service.widgetTabs[2]); this.navigationOpened=false; }\r\n\t\t\t\t\t// \t\t},\r\n\t\t\t\t\t// \t\t{\r\n\t\t\t\t\t// \t\t\tid: 12,\r\n\t\t\t\t\t// \t\t\twidth: navigationWidth,\r\n\t\t\t\t\t// \t\t\tname: \"Used / Type\",\r\n\t\t\t\t\t// \t\t\taction: () => { service.showDialogModalPopupGrid(service.widgetTabs[3]); this.navigationOpened=false; }\r\n\t\t\t\t\t// \t\t},\r\n\t\t\t\t\t// \t\t{\r\n\t\t\t\t\t// \t\t\tid: 12,\r\n\t\t\t\t\t// \t\t\twidth: navigationWidth,\r\n\t\t\t\t\t// \t\t\tname: \"NOT Used / Type\",\r\n\t\t\t\t\t// \t\t\taction: () => { service.showDialogModalPopupGrid(service.widgetTabs[4]); this.navigationOpened=false; }\r\n\t\t\t\t\t// \t\t},\r\n\t\t\t\t\t// \t\t{\r\n\t\t\t\t\t// \t\t\tid: 12,\r\n\t\t\t\t\t// \t\t\twidth: navigationWidth,\r\n\t\t\t\t\t// \t\t\tname: \"Total Used\",\r\n\t\t\t\t\t// \t\t\taction: () => { service.showDialogModalPopupGrid(service.widgetTabs[5]); this.navigationOpened=false; }\r\n\t\t\t\t\t// \t\t},\r\n\r\n\t\t\t\t\t// \t],\r\n\r\n\r\n\t\t\t\t\t// }\r\n\r\n\t\t\t\t],\r\n\t\t\t\troot: true,\r\n\t\t\t\topened: false\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tid: 2,\r\n\t\t\t\twidth: navigationWidth,\r\n\t\t\t\tname: \"Settings\",\r\n\t\t\t\tchildren: [\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tid: 10,\r\n\t\t\t\t\t\twidth: navigationWidth,\r\n\t\t\t\t\t\tname: \"Site\",\r\n\t\t\t\t\t\taction: () => { service.widgetObject.editWidgetSettings(service.widgetObject); this.navigationOpened=false; }\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tid: 10,\r\n\t\t\t\t\t\twidth: navigationWidth,\r\n\t\t\t\t\t\tname: \"Edit Name\",\r\n\t\t\t\t\t\taction: () => { service.widgetObject.editWidgetName(service.widgetObject); this.navigationOpened=false; }\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tid: 10,\r\n\t\t\t\t\t\twidth: navigationWidth,\r\n\t\t\t\t\t\tname: \"Reload\",\r\n\t\t\t\t\t\taction: () => { service.dashboardService._reloadedWidget.next(service.widgetObject); this.navigationOpened=false; }\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tid: 10,\r\n\t\t\t\t\t\twidth: navigationWidth,\r\n\t\t\t\t\t\tname: \"Delete\",\r\n\t\t\t\t\t\taction: () => { service.widgetObject.deleteFunction(); this.navigationOpened=false; }\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tid: 10,\r\n\t\t\t\t\t\twidth: navigationWidth,\r\n\t\t\t\t\t\tname: \"Timescope\",\r\n\t\t\t\t\t\taction: () => { service.widgetObject.editTimeScopeSettings(service.widgetObject); this.navigationOpened=false; }\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tid: 10,\r\n\t\t\t\t\t\twidth: navigationWidth,\r\n\t\t\t\t\t\tname: \"Interval\",\r\n\t\t\t\t\t\taction: () => { service.widgetObject.editIntervalSettings(service.widgetObject); this.navigationOpened=false; }\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tid: 10,\r\n\t\t\t\t\t\twidth: navigationWidth,\r\n\t\t\t\t\t\tname: \"Legend\",\r\n\t\t\t\t\t\taction: () => { service.toggleLegendHidden(service.tab, service.selectedTabIndex); this.navigationOpened=false; }\r\n\t\t\t\t\t},\r\n\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tid: 23,\t\t// id has to match id in toggle method below\r\n\t\t\t\t\t\twidth: navigationWidth,\r\n\t\t\t\t\t\tname: service.widgetObject.RememberSelectedTabIndex == 0 ? \"Remember Nav\" : \"Forget Nav\",\r\n\t\t\t\t\t\taction: () => { service.widgetObject.invertRememberingOfSelectedTabIndex(service.widgetObject); this.toggleRememberingOfSelectedTabIndexName(); this.navigationOpened=false; }\r\n\t\t\t\t\t},\r\n\r\n\t\t\t\t],\r\n\t\t\t\troot: true,\r\n\t\t\t\topened: false\r\n\t\t\t}\r\n\t\t];\r\n\r\n\t\tlet optionsDesktop = [\r\n\t\t\t{\r\n\t\t\t\tid: 22,\t\t// id has to match id in toggle method below\r\n\t\t\t\twidth: navigationWidth,\r\n\t\t\t\tname: service.widgetObject.dragEnabled ? \"Disable Drag\" : \"Allow Drag\",\r\n\t\t\t\taction: () => { service.widgetObject.invertDraggableSetting(service.widgetObject); this.toggleDragName(); this.navigationOpened=false;}\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tid: 21,\t\t// id has to match id in toggle method below\r\n\t\t\t\twidth: navigationWidth,\r\n\t\t\t\tname: service.widgetObject.resizeEnabled ? \"Disable Resize\" : \"Allow Resize\",\r\n\t\t\t\taction: () => { service.widgetObject.invertResizeSetting(service.widgetObject); this.toggleResizeName(); this.navigationOpened=false;}\r\n\t\t\t},\r\n\t\t];\r\n\r\n\t\tif(Global.isMobile == false) {\r\n\t\t\tservice.options[1].children = service.options[1].children.concat(optionsDesktop);\r\n\t\t}\r\n\r\n\t\tservice.optionsSettingsOnly = service.options.where((item:any) => { return item.id == 2 }).toArray(); //- Settings tab only when no Site selected.\r\n\r\n\t\tconsole.log(\"options built\", service.options);\r\n\r\n\t}\r\n\r\n\r\n\r\n\tpublic editWidgetSettings() {\r\n\t\tthis.widgetObject.editWidgetSettings(this.widgetObject)\r\n\t}\r\n\r\n\tpublic refreshWidget() {\r\n\t\tthis.dashboardService._reloadedWidget.next(this.widgetObject);\r\n\t}\r\n\r\n\tpublic changeWidgetInterval() {\r\n\t\tthis.widgetObject.editIntervalSettings(this.widgetObject);\r\n\t}\r\n\r\n\tpublic changeWidgetTimescope() {\r\n\t\tthis.widgetObject.editTimeScopeSettings(this.widgetObject);\r\n\t}\r\n\r\n\r\n\r\n\tprivate toggleRememberingOfSelectedTabIndexName() {\r\n\t\t//console.log(\"options:\", this.options)\r\n\r\n\t\tvar settings = this.options.where((item:any) => { return item.id == 2 }).firstOrDefault();\r\n\t\tvar rememberTabSetting = settings.children.where((item:any) => { return item.id == 23 }).firstOrDefault();\r\n\r\n\t\trememberTabSetting.name = this.widgetObject.RememberSelectedTabIndex == 0 ? \"Remember Nav\" : \"Forget Nav\";\r\n\r\n\t}\r\n\r\n\tprivate toggleDragName() {\r\n\t\t//console.log(\"options:\", this.options)\r\n\r\n\t\tvar settings = this.options.where((item:any) => { return item.id == 2 }).firstOrDefault();\r\n\t\tvar dragSetting = settings.children.where((item:any) => { return item.id == 22 }).firstOrDefault();\r\n\r\n\t\tdragSetting.name = this.widgetObject.dragEnabled ? \"Disable Drag\" : \"Enable Drag\";\r\n\r\n\t}\r\n\r\n\tprivate toggleResizeName() {\r\n\t\t//console.log(\"options:\", this.options)\r\n\r\n\t\tvar settings = this.options.where((item:any) => { return item.id == 2 }).firstOrDefault();\r\n\t\tvar resizeSetting = settings.children.where((item:any) => { return item.id == 21 }).firstOrDefault();\r\n\r\n\t\tresizeSetting.name = this.widgetObject.resizeEnabled ? \"Disable Resize\" : \"Allow Resize\";\r\n\r\n\t}\r\n\r\n\tpublic checkNavigation(opened: any) {\r\n\t\tGlobal.User.DebugMode && console.log(\"checkNavigation opened = %O\", opened);\r\n\t\tthis.navigationOpened = opened;\r\n\t\tthis.isLoading = false;\r\n\t}\r\n\r\n\tpublic checkSelectedItem(selected: any) {\r\n\t\tGlobal.User.DebugMode && console.log(\"checkSelectedItem invoked. selected = %O\", selected);\r\n\t}\r\n\r\n\tpublic openCloseNavigation() {\r\n\t\tGlobal.User.DebugMode && console.log(\"openCloseNavigation invoked. navigationOpened current status: = \" + this.navigationOpened);\r\n\t\tthis.navigationOpened = !this.navigationOpened; //--whatever it was set to, set it to the opposite.\r\n\t\tGlobal.User.DebugMode && console.log(\"openCloseNavigation invoked. navigationOpened changed status: = \" + this.navigationOpened);\r\n\t}\r\n\r\n\ttoggleLegendHidden(tab, index) {\r\n\t\ttab.legendVisible = !tab.legendVisible;\r\n\t\tlet foundSetting = this.WidgetTabSettings.find((widgetTabSetting) => {\r\n\t\t\treturn widgetTabSetting.TabIndex === index;\r\n\t\t});\r\n\r\n\t\tlet statement =\r\n\t\t\t'API.EditWidgetTabSettings @WidgetId = ' +\r\n\t\t\tthis.widgetObject.WidgetId +\r\n\t\t\t', @TabIndex = ' +\r\n\t\t\tindex +\r\n\t\t\t', @IsHidden = ' +\r\n\t\t\t!tab.legendVisible;\r\n\t\tif (!_.isNil(foundSetting)) {\r\n\t\t\tstatement = statement + ', @Id = ' + foundSetting.Id;\r\n\t\t}\r\n\t\tthis.dataService.SQLActionAsPromise(statement).then((data: any) => {\r\n\t\t\tthis.WidgetTabSettings = data;\r\n\t\t\tthis.WidgetTabSettings.forEach((tabSetting) => {\r\n\t\t\t\tthis.widgetTabs[tabSetting.TabIndex].legendVisible =\r\n\t\t\t\t\t!tabSetting.IsLegendHidden;\r\n\t\t\t});\r\n\t\t});\r\n\t}\r\n\r\n\tanimationRedraw() {\r\n\t\t// if (this.selectedMatTabLabel === \"Map\") {\r\n\t\t// \tthis.loadCorrectTabData(true)\r\n\t\t// }\r\n\t}\r\n\r\n\tcreateSparkLineChart(chartData: any) {\r\n\t\tthis.sparklineData = [\r\n\t\t\t{\r\n\t\t\t\tfield: 'y',\r\n\t\t\t\twidth: 0.75,\r\n\t\t\t\tcolor: 'limegreen',\r\n\t\t\t\tdata: chartData.map((a) => ({\r\n\t\t\t\t\ty: a.items.length,\r\n\t\t\t\t\tdateOfObs: a.value,\r\n\t\t\t\t})),\r\n\t\t\t},\r\n\t\t];\r\n\t}\r\n\r\n\tnavigateToTab(index, textLabel) {\r\n\t\tthis.tab = this.widgetTabs[index];\r\n\t\tif (this.tab.graphType != undefined && this.tab.graphType.name == undefined)\r\n\t\t\tthis.tab.graphType = Global.tacticalDashboardGraphTypes.find((graphType) => graphType.name == this.tab.graphType);\r\n\r\n\r\n\t\tclearTimeout(this.timeoutToExpire);\r\n\t\tthis.selectedMatTabLabel = textLabel;\r\n\t\tthis.selectedTabIndex = index;\r\n\t\tif (this.widgetTabs[this.selectedTabIndex].tabHasBeenLoaded === false) {\r\n\t\t\tthis.widgetTabs[this.selectedTabIndex].tabHasBeenLoaded = true;\r\n\t\t\tthis.destroyIntervals();\r\n\t\t\tthis.startIntervals();\r\n\t\t}\r\n\t\tthis.timeoutToExpire = setTimeout(() => {\r\n\t\t\tthis.widgetObject.SelectedTabIndex = this.selectedTabIndex;\r\n\t\t\tif (this.widgetObject.RememberSelectedTabIndex) {\r\n\t\t\t\tlet returnedWidgetAsArray =\r\n\t\t\t\t\tthis.dataService.updateTacticalDashboardWidgetRecord(\r\n\t\t\t\t\t\tthis.widgetObject\r\n\t\t\t\t\t);\r\n\t\t\t}\r\n\r\n\t\t}, 5000);\r\n\t}\r\n\r\n\ttabHasChanged(event) {\r\n\t\tclearTimeout(this.timeoutToExpire);\r\n\t\tthis.selectedMatTabLabel = event.tab.textLabel;\r\n\t\tthis.selectedTabIndex = event.index;\r\n\t\tif (this.widgetTabs[this.selectedTabIndex].tabHasBeenLoaded === false) {\r\n\t\t\tthis.widgetTabs[this.selectedTabIndex].tabHasBeenLoaded = true;\r\n\t\t\tthis.destroyIntervals();\r\n\t\t\tthis.startIntervals();\r\n\t\t}\r\n\t\tthis.timeoutToExpire = setTimeout(() => {\r\n\t\t\tthis.widgetObject.SelectedTabIndex = this.selectedTabIndex;\r\n\t\t\tif (this.widgetObject.RememberSelectedTabIndex) {\r\n\t\t\t\tlet returnedWidgetAsArray =\r\n\t\t\t\t\tthis.dataService.updateTacticalDashboardWidgetRecord(\r\n\t\t\t\t\t\tthis.widgetObject\r\n\t\t\t\t\t);\r\n\t\t\t}\r\n\r\n\t\t}, 5000);\r\n\t}\r\n\r\n\tonResized(event: ResizeResult): void {\r\n\t\tthis.parentContainerSize = event.height;\r\n\t\tif (this.childOverviewGauge !== undefined) {\r\n\t\t\tthis.childOverviewGauge.reFlow();\r\n\t\t}\r\n\t}\r\n\r\n\tngOnDestroy() {\r\n\t\tthis.destroyIntervals();\r\n\t}\r\n\r\n\tchangeGraphType(event) {\r\n\t\tlet i = this.selectedTabIndex;\r\n\t\tthis.widgetTabs[i].graphType = event;\r\n\t\tlet existingRecord = this.widgetTabsChartConfigurations.find(\r\n\t\t\t(record) => {\r\n\t\t\t\treturn record.WidgetTabIndex === i;\r\n\t\t\t}\r\n\t\t);\r\n\r\n\t\tlet statement =\r\n\t\t\t'API.TacticalDashboardAddOrUpdateWidgetChartIndexRecord @widgetId = ' +\r\n\t\t\tthis.widgetObject.WidgetId +\r\n\t\t\t', @userId = ' +\r\n\t\t\tGlobal.User.currentUser.Id +\r\n\t\t\t', @chartTypeId = ' +\r\n\t\t\tevent.id +\r\n\t\t\t', @widgetTabIndex = ' +\r\n\t\t\ti;\r\n\t\tif (existingRecord !== undefined) {\r\n\t\t\tstatement = statement + ', @id = ' + existingRecord.Id;\r\n\t\t}\r\n\t\tthis.dataService.SQLActionAsPromise(statement).then((data: any) => {\r\n\t\t\tthis.widgetTabsChartConfigurations = data;\r\n\t\t\tthis.utilityService.showToastMessageShared({\r\n\t\t\t\ttype: 'success',\r\n\t\t\t\tmessage: 'Chart type changed to ' + event.properName,\r\n\t\t\t});\r\n\t\t\t// this.toastr.success(\"Chart type changed to \" + event.properName);\r\n\t\t});\r\n\t}\r\n\r\n\tshowChartAsPopup(tab) {\r\n\t\tvar popupData;\r\n\t\tif (tab.textLabel === 'Assets Used Detail') {\r\n\t\t\tpopupData = {\r\n\t\t\t\tcategoryField: 'value',\r\n\t\t\t\tfield: 'inUseLength',\r\n\t\t\t\tpopupTitle: 'Raw Chart: ' + tab.textLabel,\r\n\t\t\t\tchartTitle: tab.textLabel,\r\n\t\t\t\tWidgetName: 'Kendo-Chart',\r\n\t\t\t\tchartData: tab.chartData,\r\n\t\t\t\tcanCreateDashboardWidgetFromPopup: false,\r\n\t\t\t\tgraphType: tab.graphType?.name,\r\n\t\t\t\tlegendVisible: tab.legendVisible,\r\n\t\t\t}\r\n\t\t}\r\n\t\telse if (tab.textLabel === 'Total Minutes Off For Day') {\r\n\t\t\tpopupData = {\r\n\t\t\t\tcategoryField: 'DateOfObservationDateObject',\r\n\t\t\t\tfield: 'AssetNotUsedMinutes',\r\n\t\t\t\tpopupTitle: 'Raw Chart: ' + tab.textLabel,\r\n\t\t\t\ttitleXAxis: 'Minutes Not Used 24 Hours',\r\n\t\t\t\tchartTitle: tab.textLabel,\r\n\t\t\t\tWidgetName: 'Kendo-Chart',\r\n\t\t\t\tchartData: tab.chartData,\r\n\t\t\t\tcanCreateDashboardWidgetFromPopup: false,\r\n\t\t\t\tgraphType: tab.graphType?.name,\r\n\t\t\t\tlegendVisible: tab.legendVisible,\r\n\t\t\t\tcanIterate: true,\r\n\t\t\t}\r\n\t\t}\r\n\t\telse if (tab.textLabel === 'Assets Not Used Each Day by Equipment' || tab.textLabel === 'Assets Used Each Day by Equipment') {\r\n\t\t\tpopupData = {\r\n\t\t\t\tcategoryField: 'DateOfObservationDateObject',\r\n\t\t\t\tfield: 'count',\r\n\t\t\t\tpopupTitle: 'Raw Chart: ' + tab.textLabel,\r\n\t\t\t\tchartTitle: tab.textLabel,\r\n\t\t\t\tWidgetName: 'Kendo-Chart',\r\n\t\t\t\tchartData: tab.chartData,\r\n\t\t\t\tcanCreateDashboardWidgetFromPopup: false,\r\n\t\t\t\tgraphType: tab.graphType?.name,\r\n\t\t\t\tlegendVisible: tab.legendVisible,\r\n\t\t\t\tcanIterate: true,\r\n\t\t\t\taggregate: \"count\",\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tconst cuSummaryModal = this.dialog.open(DialogModalParentComponent, {\r\n\t\t\twidth: Global.isMobile ? '90%' : '90%',\r\n\t\t\theight: Global.isMobile ? '90%' : '90%',\r\n\t\t\tdata: popupData,\r\n\t\t\tmaxWidth: '100vw',\r\n\t\t\tmaxHeight: '100vh',\r\n\t\t});\r\n\t}\r\n\r\n\tpublic toggleLegendChange(event: any) {\r\n\t\tthis.toggleLegendHidden(this.tab, this.selectedTabIndex);\r\n\t}\r\n\r\n\tCreateTheme(theme: string) {\r\n\t\tif (theme === 'light') {\r\n\t\t\tthis.theme = 'light';\r\n\t\t\tthis.chartBackgroundColor = 'white';\r\n\t\t\tthis.chartLabelColors = 'grey';\r\n\t\t\tthis.gridLineColor = 'grey';\r\n\t\t\tthis.axisItemColor = 'grey';\r\n\t\t} else {\r\n\t\t\tthis.theme = 'dark';\r\n\t\t\tthis.chartBackgroundColor = '#27304C';\r\n\t\t\tthis.chartLabelColors = 'white';\r\n\t\t\tthis.gridLineColor = 'white';\r\n\t\t\tthis.axisItemColor = 'white';\r\n\t\t}\r\n\t}\r\n\r\n\tpublic toggleSeries(item: any): void {\r\n\t\tlet i = item.series.index;\r\n\r\n\t\tthis.series._results[i].toggleVisibility();\r\n\t}\r\n\r\n\tpublic toggleAllSeries(e) {\r\n\t\tif (e.text === 'Toggle All Series') {\r\n\t\t\tthis.series._results.forEach((series, index) => {\r\n\t\t\t\tthis.series._results[index].toggleVisibility();\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\tpublic labelContentShort(e: any): string {\r\n\t\treturn e.value;\r\n\t}\r\n\r\n\tinitializeTour(): void {\r\n\t\tthis.tourService.initialize([\r\n\t\t\t{\r\n anchorId: this.widgetObject.WidgetId + '-1',\r\n content: 'Here you can click on the Site, Update Interval and Timescope areas to change the settings for this widget',\r\n title: 'Settings',\r\n },\r\n {\r\n anchorId: this.widgetObject.WidgetId + '-2',\r\n content: 'Navigate to different tabs & Widget Settings',\r\n title: 'Navigation',\r\n },\r\n {\r\n anchorId: this.widgetObject.WidgetId + '-3',\r\n content: 'Click on various tiles for more information',\r\n title: 'Summary Info',\r\n },\r\n\t\t]);\r\n\r\n\t\tthis.tourService.start();\r\n\t}\r\n\r\n}\r\n", "\r\n\t\r\n\t\r\n\r\n\r\n\t\r\n\t\r\n\r\n\r\n\t\r\n\t\r\n\r\n\r\n
\r\n\r\n\t
\r\n\t\t\r\n\t\t\t{{ widgetObject.WidgetName }}\r\n\t\t\r\n\t
\r\n\r\n
\r\n\t\r\n\t
\r\n\t\t \r\n\t
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n
\r\n\t\r\n\t\t{{ widgetObject.WidgetName }} {{ tab.textLabel }}\r\n\r\n\t\t\r\n\t\t\tinfo\r\n\t\t\r\n\t\r\n
\r\n\r\n \r\n\t
\r\n\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t{{ (dataService.returnSiteListAsArrayOfNames(widgetObject.SiteList).length > 6)?\r\n\t\t\t\t\t(dataService.returnSiteListAsArrayOfNames(widgetObject.SiteList) | slice:0:6)+'...':\r\n\t\t\t\t\t(dataService.returnSiteListAsArrayOfNames(widgetObject.SiteList)) }}\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t

site

\r\n\t\t\t
\r\n\r\n\t\t
\r\n\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t{{widgetObject.WidgetAssetTypeName}}\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t

asset type

\r\n\t\t\t
\r\n\r\n\t\t
\r\n\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t{{widgetObject.WidgetAssetName}}\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t

asset

\r\n\t\t\t
\r\n\r\n\t\t
\r\n\r\n\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t{{displayTimeAgoMessage}}\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t

last update

\r\n\t\t\t
\r\n\r\n\t\t
\r\n\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t{{ updateInterval.Description }}\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t

update interval

\r\n\t\t\t
\r\n\r\n\t\t
\r\n\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t{{ timeScopeObject.queryStartDate | date :'shortDate' }} - {{ timeScopeObject.queryEndDate | date :'shortDate' }}\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t

timescope

\r\n\t\t\t
\r\n\r\n\t\t
\r\n
\r\n\r\n
\r\n\r\n\r\n\r\n\t\r\n\r\n\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t
\r\n\t\t\r\n\r\n\t\t
\r\n\r\n\t\t\t\r\n\t\t\r\n\r\n\t\t\r\n\t\t\r\n\r\n\t\t
0 \" style=\"height: 50px !important; display: block\">\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\r\n\r\n\t\t\t\t\t
0\" class=\"tactical-equipment-not-used-last-grid-container\" [tourAnchor]=\"widgetObject.WidgetId + '-3'\">\r\n\r\n\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{{ (summaryArray[0] / summaryArray[1]) | percent }}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t

{{summaryArray[0]}} out of {{summaryArray[1]}} not Used

\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\r\n\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t{{summaryArray3[1]}}\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t

highest not used

\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\r\n\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t{{summaryArray2[1]}}\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t

highest used

\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\r\n\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t{{summaryArray1[2]}}\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t

least not used

\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\r\n\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t{{summaryArray2[4]}}\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t

most used

\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\r\n\r\n\r\n\r\n\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t 0\r\n\t\t\t\t\t\t\"\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tAsset Name:\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tdataItem.ProperAssetName\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}
\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tMinutes Not Used:\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tdataItem.AssetNotUsedMinutes\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tminutes
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tAsset Type:\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tdataItem.AssetName\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}
\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tNumber of Assets Used\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{{ dataItem.count }}
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tAsset Type:\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tdataItem.AssetName\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}
\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tNumber of Assets Not Used\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{{ dataItem.count }}
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t 0\r\n\t\t\t\t\t\t\"\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t Asset Name: {{ dataItem.value }}
\r\n\t\t\t\t\t\t\t\t\t Docked Count: {{ dataItem.inUseLength }}
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\r\n\t\r\n\r\n"], "mappings": "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", "names": ["import_lodash", "\u0275\u0275elementStart", "\u0275\u0275element", "\u0275\u0275elementEnd", "\u0275\u0275text", "\u0275\u0275advance", "\u0275\u0275textInterpolate1", "ctx_r1", "widgetObject", "WidgetName", "\u0275\u0275template", "GsEquipmentNotUsedLastComponent_div_3_span_2_Template", "\u0275\u0275listener", "$event", "\u0275\u0275restoreView", "_r1", "\u0275\u0275nextContext", "\u0275\u0275resetView", "checkNavigation", "checkSelectedItem", "\u0275\u0275property", "global", "isMobile", "optionsSettingsOnly", "navigationOpened", "_r5", "initializeTour", "\u0275\u0275textInterpolate2", "tab", "textLabel", "_r6", "editWidgetSettings", "headerGridTitle", "\u0275\u0275textInterpolate", "WidgetAssetTypeName", "_r7", "WidgetAssetName", "GsEquipmentNotUsedLastComponent_div_4_div_1_span_2_Template", "_r4", "GsEquipmentNotUsedLastComponent_div_4_div_1_div_13_Template", "GsEquipmentNotUsedLastComponent_div_4_div_1_div_14_Template", "refreshWidget", "changeWidgetInterval", "changeWidgetTimescope", "WidgetId", "dataService", "returnSiteListAsArrayOfNames", "SiteList", "length", "\u0275\u0275pipeBind3", "displayTimeAgoMessage", "updateInterval", "Description", "\u0275\u0275pipeBind2", "timeScopeObject", "queryStartDate", "queryEndDate", "_r8", "showDialogModalPopupGrid", "_r9", "changeGraphType", "toggleLegendChange", "graphType", "legendVisible", "GsEquipmentNotUsedLastComponent_div_4_div_10_lib_chart_type_slider_1_Template", "widgetTabConfigurationsFinishedMapping", "\u0275\u0275pureFunction1", "_c3", "percentTextColor", "holeCenterTextClass", "\u0275\u0275pipeBind1", "summaryArray", "_r10", "openConditionalShadingSettingsPopup", "navigateToTab", "GsEquipmentNotUsedLastComponent_div_4_div_11_div_2_ng_template_11_Template", "cardTileCenterTitleClass", "donutClass", "holeSize", "percentAssetsNotInUse", "\u0275\u0275styleProp", "fontSize2", "summaryArray3", "fontSize1", "summaryArray2", "cardWideTileCenterTitleClass", "summaryArray1", "GsEquipmentNotUsedLastComponent_div_4_div_11_div_1_Template", "GsEquipmentNotUsedLastComponent_div_4_div_11_div_2_Template", "tableData", "isLoading", "dataItem_r13", "ProperAssetName", "AssetNotUsedMinutes", "GsEquipmentNotUsedLastComponent_div_4_div_12_kendo_chart_2_kendo_chart_series_item_6_ng_template_3_Template", "item_r14", "items", "value", "name", "_r12", "toggleAllSeries", "toggleSeries", "GsEquipmentNotUsedLastComponent_div_4_div_12_kendo_chart_2_kendo_chart_series_item_6_Template", "\u0275\u0275pureFunction0", "_c4", "axisItemColor", "chartBackgroundColor", "chartData", "_c5", "gridLineColor", "_c6", "_r11", "showChartAsPopup", "GsEquipmentNotUsedLastComponent_div_4_div_12_div_1_Template", "GsEquipmentNotUsedLastComponent_div_4_div_12_kendo_chart_2_Template", "chartDataIsReady", "_c7", "_c8", "used", "_c9", "notused", "_c10", "_c12", "_c11", "_c14", "_c13", "_c15", "_c16", "GsEquipmentNotUsedLastComponent_div_4_div_13_kendo_chart_1_Template", "dataItem_r16", "AssetName", "count", "GsEquipmentNotUsedLastComponent_div_4_div_14_kendo_chart_1_kendo_chart_series_item_5_ng_template_2_Template", "item_r17", "GsEquipmentNotUsedLastComponent_div_4_div_14_kendo_chart_1_kendo_chart_series_item_5_Template", "_r15", "GsEquipmentNotUsedLastComponent_div_4_div_14_kendo_chart_1_Template", "dataItem_r19", "GsEquipmentNotUsedLastComponent_div_4_div_15_kendo_chart_1_kendo_chart_series_item_5_ng_template_2_Template", "item_r20", "GsEquipmentNotUsedLastComponent_div_4_div_15_kendo_chart_1_kendo_chart_series_item_5_Template", "_r18", "GsEquipmentNotUsedLastComponent_div_4_div_15_kendo_chart_1_Template", "dataItem_r22", "inUseLength", "labelContentShort", "GsEquipmentNotUsedLastComponent_div_4_div_16_kendo_chart_2_ng_template_7_Template", "GsEquipmentNotUsedLastComponent_div_4_div_16_kendo_chart_2_kendo_chart_series_item_labels_8_Template", "_r21", "GsEquipmentNotUsedLastComponent_div_4_div_16_div_1_Template", "GsEquipmentNotUsedLastComponent_div_4_div_16_kendo_chart_2_Template", "displayNoUpdateIntervalMessage", "GsEquipmentNotUsedLastComponent_div_4_div_1_Template", "_r3", "onResized", "GsEquipmentNotUsedLastComponent_div_4_i_8_Template", "GsEquipmentNotUsedLastComponent_div_4_lib_loading_spinner_9_Template", "GsEquipmentNotUsedLastComponent_div_4_div_10_Template", "GsEquipmentNotUsedLastComponent_div_4_div_11_Template", "GsEquipmentNotUsedLastComponent_div_4_div_12_Template", "GsEquipmentNotUsedLastComponent_div_4_div_13_Template", "GsEquipmentNotUsedLastComponent_div_4_div_14_Template", "GsEquipmentNotUsedLastComponent_div_4_div_15_Template", "GsEquipmentNotUsedLastComponent_div_4_div_16_Template", "displayNoTimeScopeMessage", "options", "GsEquipmentNotUsedLastComponent", "constructor", "dashboardService", "dialog", "toastr", "utilityService", "elem", "tourService", "description", "properName", "Global", "chartLabelColors", "h1Number", "undefined", "h4Percent", "percentCalculated", "chartDataFinalIsReady", "sparklineData", "cardClass1", "cardClass2", "cardWideClass2", "graphTypes", "label", "visible", "progressStyles", "background", "widgetTabs", "tabHasBeenLoaded", "tooltip", "downloadableData", "groupable", "groupColumns", "field", "tableStructure", "title", "filter", "_width", "formatOption", "noDataForSite", "selectedTabIndex", "WidgetTabSettings", "conditionalColorPercentAmount", "labelContent", "e", "category", "ngOnInit", "determineProperTacticalDashboardUpdateIntervalForWidget", "determineProperTimeScopeForWidget", "UTCConfiguration", "buildNavigationOptionsArray", "ngAfterViewInit", "bounds", "nativeElement", "getBoundingClientRect", "cardResize", "contentHeight", "statement", "SQLActionAsPromise", "then", "data", "forEach", "tabSetting", "TabIndex", "IsLegendHidden", "console", "log", "ConditionalShadingRecord", "cache", "tacticalDashboardWidgetConditionalShadings", "p", "sort", "a", "b", "parseFloat", "Value", "widgetResizedEvent", "widgetResizedSubscription", "subscribe", "item", "fontResize", "widgetNavigateToFirstTabSubscription", "_widgetNavigateToFirstTab", "parseInt", "widgetToggleLegendHiddenSubscription", "_widgetToggleLegendHidden", "toggleLegendHidden", "FullDataCacheExists", "initialize", "fullDataCacheSubscription", "fullDataCacheExists$", "unsubscribe", "colorChangedSubscription", "colorChanged$", "CreateTheme", "Theme", "dashboardUpdateIntervalChanged", "dashboardUpdateIntervalSubscription", "foundWidgetWithSameWidgetId", "find", "widgetThatWasChanged", "_", "isNil", "dashboardTimeScopeChanged", "dashboardTimeScopeChangedSubscription", "height", "width", "startIntervals", "intervalUpdate", "UpdateInterval", "secondsAgoInterval", "clearInterval", "retrieveData", "setInterval", "lastUpdatedDate", "calculateTimeAgo", "updateControllerInterval", "destroyIntervals", "User", "currentUser", "Id", "widgetTabsChartConfigurations", "index", "foundWidgetTabConfiguration", "configurationrecord", "WidgetTabIndex", "tacticalDashboardGraphTypes", "id", "ChartTypeId", "SelectedTabIndex", "selectedMatTabLabel", "cuSummaryModal", "open", "DialogModalParentComponent", "graphId", "uuidv4", "popupTitle", "canCreateDashboardWidgetFromPopup", "maxWidth", "maxHeight", "tileNumber", "tileConditionalShadingRecord", "SummaryTileIndex", "DialogRef", "TacticalWidgetSummaryTilePopupComponent", "afterClosed", "result", "tileConditionalShadingRecordLatest", "r", "push", "ConditionalColorSummaryTiles", "Operator", "HexColor", "conditionalColorPercentAmountRounded", "Math", "round", "kind", "share", "color", "ODataAccessToken", "WidgetAssetTypeId", "asset", "OnDuringTimeScopeBoolean", "OnDuringTimeScope", "SiteName", "GateName", "statement2", "record", "DateOfObservationDateObject", "Date", "DateOfObservation", "groupBy", "sortByAssetNotUsedMinutes", "statement3", "properDate", "AssetOnCount", "sparkLineData", "getTime", "createSparkLineChart", "sortByAssetOnCount", "groupByDateUsed", "groupByDateNotUsed", "DurationInMinutes", "DurationInSeconds", "toFixed", "assetAggregated", "group", "service", "navigationWidth", "children", "action", "root", "opened", "editWidgetName", "_reloadedWidget", "next", "deleteFunction", "editTimeScopeSettings", "editIntervalSettings", "RememberSelectedTabIndex", "invertRememberingOfSelectedTabIndex", "toggleRememberingOfSelectedTabIndexName", "optionsDesktop", "dragEnabled", "invertDraggableSetting", "toggleDragName", "resizeEnabled", "invertResizeSetting", "toggleResizeName", "concat", "where", "toArray", "settings", "firstOrDefault", "rememberTabSetting", "dragSetting", "resizeSetting", "DebugMode", "selected", "openCloseNavigation", "foundSetting", "widgetTabSetting", "animationRedraw", "map", "y", "dateOfObs", "clearTimeout", "timeoutToExpire", "setTimeout", "returnedWidgetAsArray", "updateTacticalDashboardWidgetRecord", "tabHasChanged", "event", "parentContainerSize", "childOverviewGauge", "reFlow", "ngOnDestroy", "i", "existingRecord", "showToastMessageShared", "type", "message", "popupData", "categoryField", "chartTitle", "titleXAxis", "canIterate", "aggregate", "theme", "series", "_results", "toggleVisibility", "text", "anchorId", "content", "start", "\u0275\u0275directiveInject", "DataService", "DashboardService", "MatDialog", "ToastrService", "UtilityService", "ElementRef", "TourService", "selectors", "viewQuery", "rf", "ctx", "GsEquipmentNotUsedLastComponent_div_0_Template", "GsEquipmentNotUsedLastComponent_div_1_Template", "GsEquipmentNotUsedLastComponent_div_2_Template", "GsEquipmentNotUsedLastComponent_div_3_Template", "GsEquipmentNotUsedLastComponent_div_4_Template"] }