UNPKG

@kusto/language-service

Version:

Azure Data Explorer (a.k.a Kusto) language service for javascript (legacy code)

1 lines 1.34 MB
Bridge.assembly("Kusto.JavaScript.Client",function($asm,globals){"use strict";Bridge.define("Kusto.Charting.AnomalyDataHelper2",{statics:{props:{TimestampColumnName:null,ValueColumnName:null,SeriesColumnName:null,AnomalySerieSuffix:null},ctors:{init:function(){this.TimestampColumnName="Timestamp";this.ValueColumnName="Value";this.SeriesColumnName="Series";this.AnomalySerieSuffix="(anomaly)"}},methods:{EnchanceDataWithAnomalyDataFromServiceAsync:function(kustoContext,data){var $step=0,$task1,$taskResult1,$jumpFromFinally,$tcs=new System.Threading.Tasks.TaskCompletionSource,$returnValue,res,dataAsCsl,query,results,$t,$async_e,$asyncBody=Bridge.fn.bind(this,function(){try{for(;;){$step=System.Array.min([0,1],$step);switch($step){case 0:if(res=new Kusto.Charting.AnomalyDataHelper2.AnomalyDataFromServiceResult,kustoContext==null){res.Data=data;res.HasErrors=!0;res.Message="Failed sending the request for anomalies to the service";$tcs.setResult(res);return}if(dataAsCsl=Kusto.Charting.AnomalyDataHelper2.DataItemsToDataTableLiteral(data),query=(dataAsCsl||"")+(System.String.format("| summarize dt = makelist({0}, 100000), y=makelist({1}, 100000) by {2}\r\n| extend (anomalies, scores, baseline)=series_decompose_anomalies(y)\r\n| project dt, y, anomalies, Series\r\n| mvexpand dt to typeof(datetime), y to typeof(double), anomalies to typeof(double) limit 1000000\r\n| where anomalies != 0\r\n| project dt, anomaly_value = (anomalies * anomalies)*y, Series",Kusto.Charting.AnomalyDataHelper2.TimestampColumnName,Kusto.Charting.AnomalyDataHelper2.ValueColumnName,Kusto.Charting.AnomalyDataHelper2.SeriesColumnName)||""),System.Text.Encoding.UTF8.GetByteCount$2(query)>2e6){res.Data=data;res.HasErrors=!0;res.Message="The anomalies request to the service exceeds the 2MB limit, consider adding more filters";$tcs.setResult(res);return}if($task1=kustoContext.Kusto$Charting$IKustoClientContext$ExecuteQueryAsync(Kusto.Charting.AnomalyDataHelper2.AnomalyInputOutputRecord,query),$step=1,$task1.isCompleted())continue;$task1.continue($asyncBody);return;case 1:if($taskResult1=$task1.getAwaitedResult(),results=$taskResult1,results=($t=Kusto.Charting.AnomalyDataHelper2.AnomalyInputOutputRecord,System.Linq.Enumerable.from(results,$t).ToArray($t)),results==null||!System.Linq.Enumerable.from(results,Kusto.Charting.AnomalyDataHelper2.AnomalyInputOutputRecord).any()){res.Data=data;res.HasErrors=!0;res.Message="Failed retrieving the anomalies result from the service";$tcs.setResult(res);return}data.AddRange(System.Linq.Enumerable.from(results,Kusto.Charting.AnomalyDataHelper2.AnomalyInputOutputRecord).select($asm.$.Kusto.Charting.AnomalyDataHelper2.f1));res.Data=data;res.HasErrors=!1;res.Message="";$tcs.setResult(res);return;default:$tcs.setResult(null);return}}}catch($async_e1){$async_e=System.Exception.create($async_e1);$tcs.setException($async_e)}},arguments);return $asyncBody(),$tcs.task},DataItemsToDataTableLiteral:function(items){var $t,result=new System.Text.StringBuilder,item,seriesName;result.append("datatable");result.appendLine(System.String.format("({0}:datetime,{1}:double,{2}:string)",Kusto.Charting.AnomalyDataHelper2.TimestampColumnName,Kusto.Charting.AnomalyDataHelper2.ValueColumnName,Kusto.Charting.AnomalyDataHelper2.SeriesColumnName));result.append("[");$t=Bridge.getEnumerator(items,Kusto.Charting.DataItem);try{while($t.moveNext())item=$t.Current,result.append("datetime("),result.append(System.DateTime.format(item.ArgumentDateTime,"o")),result.append("),"),result.append("double("),result.append(System.Double.format(item.ValueData)),result.append("),"),seriesName=Kusto.Cloud.Platform.Text.StringLiteral.GetLiteral(item.SeriesName),result.append(seriesName),result.appendLine(",")}finally{Bridge.is($t,System.IDisposable)&&$t.System$IDisposable$Dispose()}return result.appendLine("]"),result.toString()},EnchanceDataWithAnomalyDataFromColumns:function(data,yColumns,anomalyColumns,anomalySeriesMap){var $t,c,anomalyPointsCount,i,valuePoint,anomalyPoint,seriesName,a,a1;anomalySeriesMap.v=new(System.Collections.Generic.Dictionary$2(System.String,System.String).ctor);var result=new(System.Collections.Generic.List$1(Kusto.Charting.DataItem).ctor),anomalyColumnsHashset=new(System.Collections.Generic.HashSet$1(System.String).$ctor1)(anomalyColumns),valueColumns=yColumns;if(Kusto.Cloud.Platform.Utils.ExtendedEnumerable.SafeFastNone$1(System.String,valueColumns)&&(valueColumns=System.Linq.Enumerable.from(data,Kusto.Charting.DataItem).where(function(d){return!anomalyColumnsHashset.contains(d.ValueName)}).select($asm.$.Kusto.Charting.AnomalyDataHelper2.f2).distinct().ToArray(System.String)),valueColumns.length===0)return data;for(result.AddRange(System.Linq.Enumerable.from(data,Kusto.Charting.DataItem).where(function(d){return!anomalyColumnsHashset.contains(d.ValueName)})),c=0;c<anomalyColumns.length&&c<valueColumns.length;c=c+1|0){var anomalyColumn={v:anomalyColumns[System.Array.index(c,anomalyColumns)]},valueColumn={v:c<valueColumns.length?valueColumns[System.Array.index(c,valueColumns)]:System.Linq.Enumerable.from(valueColumns,System.String).last()},valueData=System.Linq.Enumerable.from(data,Kusto.Charting.DataItem).where(function($me,valueColumn){return function(d){return System.String.equals(d.ValueName,valueColumn.v)}}(this,valueColumn)).ToArray(Kusto.Charting.DataItem),anomalyData=System.Linq.Enumerable.from(data,Kusto.Charting.DataItem).where(function($me,anomalyColumn){return function(d){return System.String.equals(d.ValueName,anomalyColumn.v)}}(this,anomalyColumn)).ToArray(Kusto.Charting.DataItem);if(!(valueData.length<anomalyData.length)){for(anomalyPointsCount=0,i=0;i<anomalyData.length;i=i+1|0)valuePoint=valueData[System.Array.index(i,valueData)],anomalyPoint=anomalyData[System.Array.index(i,anomalyData)],anomalyPoint.ValueData!==0&&(anomalyPointsCount=anomalyPointsCount+1|0,seriesName=(anomalyPoint.SeriesName||"")+(Kusto.Charting.AnomalyDataHelper2.AnomalySerieSuffix||""),a=($t=new Kusto.Charting.DataItem.ctor,$t.ArgumentDateTime=anomalyPoint.ArgumentDateTime,$t.ArgumentData=anomalyPoint.ArgumentData,$t.SeriesName=seriesName,$t.ValueData=valuePoint.ValueData,$t.PrefferredChartKind=Kusto.Charting.ChartKind.Point,$t),result.add(a),anomalySeriesMap.v.containsKey(seriesName)||anomalySeriesMap.v.add(seriesName,valuePoint.SeriesName));anomalyPointsCount===0&&anomalyData.length>0&&(a1=($t=new Kusto.Charting.DataItem.ctor,$t.ArgumentDateTime=anomalyData[System.Array.index(0,anomalyData)].ArgumentDateTime,$t.ArgumentData=null,$t.SeriesName=(anomalyData[System.Array.index(0,anomalyData)].SeriesName||"")+(Kusto.Charting.AnomalyDataHelper2.AnomalySerieSuffix||""),$t.ValueData=Number.NaN,$t.PrefferredChartKind=Kusto.Charting.ChartKind.Point,$t),result.add(a1))}}return result}}}});Bridge.ns("Kusto.Charting.AnomalyDataHelper2",$asm.$);Bridge.apply($asm.$.Kusto.Charting.AnomalyDataHelper2,{f1:function(r){var $t1;return $t1=new Kusto.Charting.DataItem.ctor,$t1.ArgumentDateTime=r.Timestamp,$t1.ArgumentData=System.DateTime.format(r.Timestamp,"o"),$t1.SeriesName=(r.Series||"")+(Kusto.Charting.AnomalyDataHelper2.AnomalySerieSuffix||""),$t1.ValueData=r.Value,$t1.PrefferredChartKind=Kusto.Charting.ChartKind.Point,$t1},f2:function(d){return d.ValueName}});Bridge.define("Kusto.Charting.AnomalyDataHelper2.AnomalyDataFromServiceResult",{$kind:"nested class",fields:{Data:null,HasErrors:!1,Message:null}});Bridge.define("Kusto.Charting.AnomalyDataHelper2.AnomalyInputOutputRecord",{$kind:"nested class",fields:{Timestamp:null,Value:0,Series:null},ctors:{init:function(){this.Timestamp=System.DateTime.getDefaultValue()}}});Bridge.define("Kusto.Charting.ArgumentColumnType",{$kind:"enum",statics:{fields:{None:0,Numeric:2,DateTime:4,TimeSpan:8,String:16,Object:32,Geospatial:64,DateTimeOrTimeSpan:12,StringOrDateTimeOrTimeSpan:28,NumericOrDateTimeOrTimeSpan:14,StringOrObject:48,AllExceptGeospatial:62}},$flags:!0});Bridge.define("Kusto.Charting.ArgumentRestrictions",{$kind:"enum",statics:{fields:{None:0,MustHave:1,NotIncludedInSeries:2,GeospatialAsSeries:4,PreferLast:8,NumericAsSeries:16}},$flags:!0});Bridge.define("Kusto.Charting.BaseArgumentData",{fields:{Value:null,DateTime:null,TimeSpan:null,NumericValue:0},ctors:{init:function(){this.DateTime=System.DateTime.getDefaultValue()}}});Bridge.define("Kusto.Charting.ChartKind",{$kind:"enum",statics:{fields:{Unspecified:0,Line:1,Point:2,Bar:3}}});Bridge.define("Kusto.Charting.ChartLimitsPolicy",{props:{MaxPointsPerChartError:0,MaxPointsPerChartWarning:0,MaxSeriesPerChartError:0,MaxSeriesPerChartWarning:0,MaxDatetimePeriodError:null,ChartType:null},ctors:{init:function(){this.MaxDatetimePeriodError=new System.TimeSpan},ctor:function(chartType,maxPointsPerChartError,maxPointsPerChartWarning,maxSeriesPerChartError,maxSeriesPerChartWarning,maxDatetimePeriodError){this.$initialize();this.ChartType=chartType;this.MaxPointsPerChartError=maxPointsPerChartError;this.MaxPointsPerChartWarning=maxPointsPerChartWarning;this.MaxSeriesPerChartError=maxSeriesPerChartError;this.MaxSeriesPerChartWarning=maxSeriesPerChartWarning;this.MaxDatetimePeriodError=maxDatetimePeriodError}},methods:{Equals:function(other){return other==null?!1:Bridge.referenceEquals(this.ChartType,other.ChartType)&&this.MaxPointsPerChartError===other.MaxPointsPerChartError&&this.MaxPointsPerChartWarning===other.MaxPointsPerChartWarning&&this.MaxSeriesPerChartError===other.MaxSeriesPerChartError&&this.MaxSeriesPerChartWarning===other.MaxSeriesPerChartWarning&&System.TimeSpan.eq(this.MaxDatetimePeriodError,other.MaxDatetimePeriodError)},equals:function(obj){return this.Equals(Bridge.as(obj,Kusto.Charting.ChartLimitsPolicy))},getHashCode:function(){return Bridge.getHashCode(this.ChartType)^this.MaxPointsPerChartError^this.MaxPointsPerChartWarning^this.MaxSeriesPerChartError^this.MaxSeriesPerChartWarning^Bridge.getHashCode(this.MaxDatetimePeriodError)}}});Bridge.define("Kusto.Charting.ColumnDesc",{fields:{Name:null,Type:0,Index:0},ctors:{ctor:function(name,type,index){this.$initialize();this.Name=name;this.Type=type;this.Index=index}}});Bridge.define("Kusto.Charting.DataChartsHelper",{statics:{fields:{c_minFractionOfIntervalsToDetectDistribution:0,c_minElementsAmountToFillGapsWithNans:0,c_decimalRoundingPrecision:0,c_doubleAcceptableApproximation:0,c_defaultArgumentNumeric:0,c_defaultArgumentString:null,c_defaultArgumentDatetime:null},ctors:{init:function(){this.c_defaultArgumentDatetime=System.DateTime.getDefaultValue();this.c_minFractionOfIntervalsToDetectDistribution=.8;this.c_minElementsAmountToFillGapsWithNans=4;this.c_decimalRoundingPrecision=8;this.c_doubleAcceptableApproximation=1e-8;this.c_defaultArgumentNumeric=Number.NaN;this.c_defaultArgumentString="<empty>";this.c_defaultArgumentDatetime=Bridge.getDefaultValue(System.DateTime)}},methods:{GetData:function(table,argumentColumnType,argumentRestrictions,seriesColumns,accumulateResults,xColumn,yColumns){argumentColumnType===void 0&&(argumentColumnType=16);argumentRestrictions===void 0&&(argumentRestrictions=0);seriesColumns===void 0&&(seriesColumns=null);accumulateResults===void 0&&(accumulateResults=!1);xColumn===void 0&&(xColumn=null);yColumns===void 0&&(yColumns=null);var chartProps=Kusto.Charting.DataChartsHelper.GetMetaData(table,argumentColumnType,argumentRestrictions,seriesColumns,xColumn,yColumns);return Kusto.Charting.DataChartsHelper.GetData$1(table,chartProps,accumulateResults)},GetData$1:function(table,metaData,accumulateResults){var i,baseSeriesName;if(accumulateResults===void 0&&(accumulateResults=!1),table==null||metaData==null)return System.Linq.Enumerable.empty();var tableSchema=table.Kusto$Charting$IChartingDataSource$GetSchema(),allColumns=System.Linq.Enumerable.from(tableSchema,System.Tuple$2(System.String,Kusto.Charting.ArgumentColumnType)).select($asm.$.Kusto.Charting.DataChartsHelper.f1).toList(Kusto.Charting.ColumnDesc),seriesList=System.Linq.Enumerable.from(metaData.Kusto$Charting$IChartMetaData$SeriesIndexes,System.Int32).any()?System.Linq.Enumerable.from(allColumns,Kusto.Charting.ColumnDesc).where(function(col){return System.Linq.Enumerable.from(metaData.Kusto$Charting$IChartMetaData$SeriesIndexes,System.Int32).contains(col.Index)}).ToArray(Kusto.Charting.ColumnDesc):null,dataColumns=System.Linq.Enumerable.from(allColumns,Kusto.Charting.ColumnDesc).where(function(col){return System.Linq.Enumerable.from(metaData.Kusto$Charting$IChartMetaData$DataIndexes,System.Int32).contains(col.Index)}).ToArray(Kusto.Charting.ColumnDesc),unusedColumns=System.Linq.Enumerable.from(allColumns,Kusto.Charting.ColumnDesc).where(function(col){return System.Linq.Enumerable.from(metaData.Kusto$Charting$IChartMetaData$UnusedIndexes,System.Int32).contains(col.Index)}).ToArray(Kusto.Charting.ColumnDesc),argumentData=new Kusto.Charting.DataChartsHelper.ArgumentData(metaData.Kusto$Charting$IChartMetaData$ArgumentDataColumnIndex,metaData.Kusto$Charting$IChartMetaData$ArgumentDataColumnIndex>=0?allColumns.getItem(metaData.Kusto$Charting$IChartMetaData$ArgumentDataColumnIndex).Name:"",metaData.Kusto$Charting$IChartMetaData$ArgumentDataColumnIndex>=0?System.Linq.Enumerable.from(tableSchema,System.Tuple$2(System.String,Kusto.Charting.ArgumentColumnType)).elementAt(metaData.Kusto$Charting$IChartMetaData$ArgumentDataColumnIndex).Item2:Kusto.Charting.ArgumentColumnType.None,metaData.Kusto$Charting$IChartMetaData$ArgumentColumnType,metaData.Kusto$Charting$IChartMetaData$GeospatialColumnIndexes),result=new(System.Collections.Generic.List$1(Kusto.Charting.DataItem).ctor),lastValues=new(System.Collections.Generic.Dictionary$2(System.String,System.Double).ctor),isDataFormedAsSeries=metaData.Kusto$Charting$IChartMetaData$IsDataFormedAsSeries;for(i=0;i<table.Kusto$Charting$IChartingDataSource$RowsCount;i=i+1|0)baseSeriesName=Kusto.Charting.DataChartsHelper.GetBaseSeriesName(table,seriesList,i),isDataFormedAsSeries?Kusto.Charting.DataChartsHelper.ResolveDataSeriesFromDataRow(result,table,dataColumns,unusedColumns,i,baseSeriesName,metaData.Kusto$Charting$IChartMetaData$ArgumentColumnType,accumulateResults,metaData.Kusto$Charting$IChartMetaData$ArgumentDataColumnIndex):(argumentData.ResolveArgumentFromRow(table,i),Kusto.Charting.DataChartsHelper.ResolveDataItemsFromDataRow(result,table,dataColumns,unusedColumns,i,baseSeriesName,argumentData,lastValues,accumulateResults));return metaData.Kusto$Charting$IChartMetaData$ArgumentColumnType!==Kusto.Charting.ArgumentColumnType.Geospatial?Kusto.Charting.DataChartsHelper.RemoveNaNPointsIfNeeded(result,lastValues):result},GetMetaData:function(table,argumentColumnType,argumentRestrictions,seriesColumns,xColumn,yColumns){var tableSchema,metaData,isTableValidForCharting,tempDataIndex,firstDataIndex;return(argumentColumnType===void 0&&(argumentColumnType=16),argumentRestrictions===void 0&&(argumentRestrictions=0),seriesColumns===void 0&&(seriesColumns=null),xColumn===void 0&&(xColumn=null),yColumns===void 0&&(yColumns=null),tableSchema=table.Kusto$Charting$IChartingDataSource$GetSchema(),table.Kusto$Charting$IChartingDataSource$SetupDefaultValues(Kusto.Charting.DataChartsHelper.c_defaultArgumentString,Kusto.Charting.DataChartsHelper.c_defaultArgumentNumeric,Kusto.Charting.DataChartsHelper.c_defaultArgumentDatetime,null),tableSchema==null||!System.Linq.Enumerable.from(tableSchema,System.Tuple$2(System.String,Kusto.Charting.ArgumentColumnType)).any())?null:(seriesColumns==null&&(seriesColumns=new(System.Collections.Generic.List$1(System.String).ctor)),yColumns==null&&(yColumns=new(System.Collections.Generic.List$1(System.String).ctor)),metaData={v:new Kusto.Charting.DataChartsHelper.ChartMetaData(argumentColumnType)},Kusto.Charting.DataChartsHelper.ResolvePredefinedColumnsIndexes(table,seriesColumns,yColumns,xColumn,argumentRestrictions,metaData),isTableValidForCharting=!1,metaData.v.IsDataFormedAsSeries||(isTableValidForCharting=Kusto.Charting.DataChartsHelper.DetectChartDimensionsUsingColumnTypesAndData(tableSchema,table,argumentRestrictions,metaData),metaData.v.IsDataFormedAsSeries=!isTableValidForCharting),metaData.v.IsDataFormedAsSeries&&(isTableValidForCharting=Kusto.Charting.DataChartsHelper.DetectChartDimensionsUsingData(tableSchema,table,seriesColumns,argumentRestrictions,metaData)),!isTableValidForCharting)?null:(tempDataIndex=metaData.v.DataIndexes,metaData.v.DataIndexesList=System.Linq.Enumerable.from(tableSchema,System.Tuple$2(System.String,Kusto.Charting.ArgumentColumnType)).select(function(col,index){return index!==metaData.v.ArgumentDataColumnIndex&&!metaData.v.GeospatiaColumnlIndexesList.contains(index)&&(!System.Linq.Enumerable.from(tempDataIndex,System.Int32).any()||System.Linq.Enumerable.from(tempDataIndex,System.Int32).contains(index))&&!System.Linq.Enumerable.from(metaData.v.SeriesIndexes,System.Int32).contains(index)&&(!metaData.v.IsDataFormedAsSeries&&System.Enum.hasFlag(Kusto.Charting.ArgumentColumnType.NumericOrDateTimeOrTimeSpan,Bridge.box(col.Item2,Kusto.Charting.ArgumentColumnType,System.Enum.toStringFn(Kusto.Charting.ArgumentColumnType)))||metaData.v.IsDataFormedAsSeries&&System.Enum.hasFlag(Kusto.Charting.ArgumentColumnType.StringOrObject,Bridge.box(col.Item2,Kusto.Charting.ArgumentColumnType,System.Enum.toStringFn(Kusto.Charting.ArgumentColumnType))))?index:-1}).where($asm.$.Kusto.Charting.DataChartsHelper.f2).toList(System.Int32),metaData.v.ArgumentColumnType===Kusto.Charting.ArgumentColumnType.Geospatial&&(metaData.v.DataIndexesList.Count>1&&(firstDataIndex=System.Linq.Enumerable.from(metaData.v.DataIndexesList,System.Int32).first(),metaData.v.DataIndexesList.clear(),metaData.v.DataIndexesList.add(firstDataIndex)),argumentRestrictions===Kusto.Charting.ArgumentRestrictions.GeospatialAsSeries&&(metaData.v.ArgumentDataColumnIndex===-1||!System.Linq.Enumerable.from(metaData.v.DataIndexesList,System.Int32).any())))?null:(metaData.v.UnusedIndexes=System.Linq.Enumerable.range(0,System.Linq.Enumerable.from(tableSchema,System.Tuple$2(System.String,Kusto.Charting.ArgumentColumnType)).count()).except(metaData.v.DataIndexes).except(metaData.v.GeospatialColumnIndexes).except(metaData.v.SeriesIndexes).except(System.Array.init([metaData.v.ArgumentDataColumnIndex],System.Int32)).toList(System.Int32),metaData.v)},RemoveNaNPointsIfNeeded:function(result,lastValues){var $t,emptySeries=System.Linq.Enumerable.from(lastValues,System.Collections.Generic.KeyValuePair$2(System.String,System.Double)).where($asm.$.Kusto.Charting.DataChartsHelper.f3).toDictionary($asm.$.Kusto.Charting.DataChartsHelper.f4,$asm.$.Kusto.Charting.DataChartsHelper.f5,System.String,System.Boolean),seriesStatistics,r,stats,partialEmptySeries;emptySeries.Count>0&&(result=System.Linq.Enumerable.from(result,Kusto.Charting.DataItem).where(function(d){return!emptySeries.containsKey(d.SeriesName)}));seriesStatistics=new(System.Collections.Generic.Dictionary$2(System.String,Kusto.Charting.DataChartsHelper.SeriesStatsCounters).ctor);$t=Bridge.getEnumerator(result,Kusto.Charting.DataItem);try{while($t.moveNext())r=$t.Current,stats={},seriesStatistics.tryGetValue(r.SeriesName,stats)||(stats.v=new Kusto.Charting.DataChartsHelper.SeriesStatsCounters),stats.v.TotalPoints=stats.v.TotalPoints+1|0,Kusto.Charting.ExtendedDouble.IsFinite(r.ValueData)&&(stats.v.NonNanPoints=stats.v.NonNanPoints+1|0),seriesStatistics.setItem(r.SeriesName,stats.v)}finally{Bridge.is($t,System.IDisposable)&&$t.System$IDisposable$Dispose()}return partialEmptySeries=System.Linq.Enumerable.from(seriesStatistics,System.Collections.Generic.KeyValuePair$2(System.String,Kusto.Charting.DataChartsHelper.SeriesStatsCounters)).where($asm.$.Kusto.Charting.DataChartsHelper.f6).toDictionary($asm.$.Kusto.Charting.DataChartsHelper.f4,$asm.$.Kusto.Charting.DataChartsHelper.f5,System.String,System.Boolean),partialEmptySeries.Count>0&&(result=System.Linq.Enumerable.from(result,Kusto.Charting.DataItem).where(function(r1){return!partialEmptySeries.containsKey(r1.SeriesName)||Kusto.Charting.ExtendedDouble.IsFinite(r1.ValueData)})),result},GetDataForLineChart:function(options,dataSource,data,yColumnsToResolve,argumentType){var $t,$t1,isTimechart=options.Visualization===Kusto.Data.Utils.VisualizationKind.TimeLineChart||options.Visualization===Kusto.Data.Utils.VisualizationKind.TimeLineWithAnomalyChart,isLinechart=options.Visualization===Kusto.Data.Utils.VisualizationKind.LineChart,isLikelyTimechart=options.Visualization===Kusto.Data.Utils.VisualizationKind.ScatterChart||options.Visualization===Kusto.Data.Utils.VisualizationKind.AreaChart||options.Visualization===Kusto.Data.Utils.VisualizationKind.StackedAreaChart,expectedArgTypes=null,expectedArgType;expectedArgTypes=isTimechart?System.Array.init([Kusto.Charting.ArgumentColumnType.DateTime,Kusto.Charting.ArgumentColumnType.TimeSpan],Kusto.Charting.ArgumentColumnType):isLinechart?System.Array.init([Kusto.Charting.ArgumentColumnType.Numeric,Kusto.Charting.ArgumentColumnType.DateTime,Kusto.Charting.ArgumentColumnType.TimeSpan],Kusto.Charting.ArgumentColumnType):isLikelyTimechart?System.Array.init([Kusto.Charting.ArgumentColumnType.DateTime,Kusto.Charting.ArgumentColumnType.TimeSpan,Kusto.Charting.ArgumentColumnType.Numeric],Kusto.Charting.ArgumentColumnType):System.Array.init([Kusto.Charting.ArgumentColumnType.Numeric,Kusto.Charting.ArgumentColumnType.DateTime,Kusto.Charting.ArgumentColumnType.TimeSpan],Kusto.Charting.ArgumentColumnType);$t=Bridge.getEnumerator(expectedArgTypes);try{while($t.moveNext())if(expectedArgType=$t.Current,data=($t1=Kusto.Charting.DataItem,System.Linq.Enumerable.from(Kusto.Charting.DataChartsHelper.GetData(dataSource,expectedArgType,18,options.Series,options.Accumulate,options.XColumn,yColumnsToResolve),$t1).toList($t1)),data!=null&&data.Count!==0)break}finally{Bridge.is($t,System.IDisposable)&&$t.System$IDisposable$Dispose()}return argumentType.v=Kusto.Charting.DataChartsHelper.ResolveArgumentType(data),data},IsNumericType:function(type,considerDateTimeAndTimeSpanAsNumeric){if(considerDateTimeAndTimeSpanAsNumeric===void 0&&(considerDateTimeAndTimeSpanAsNumeric=!0),type==null)return!1;else if(Bridge.referenceEquals(type,System.TimeSpan)||Bridge.referenceEquals(type,System.DateTime))return considerDateTimeAndTimeSpanAsNumeric;else if(Bridge.referenceEquals(type,System.Byte)||Bridge.referenceEquals(type,System.Decimal)||Bridge.referenceEquals(type,System.Double)||Bridge.referenceEquals(type,System.Int16)||Bridge.referenceEquals(type,System.Int32)||Bridge.referenceEquals(type,System.Int64)||Bridge.referenceEquals(type,System.SByte)||Bridge.referenceEquals(type,System.UInt16)||Bridge.referenceEquals(type,System.UInt32)||Bridge.referenceEquals(type,System.UInt64))return!0;else if(Bridge.referenceEquals(type,System.Object)&&Bridge.Reflection.isGenericType(type)&&Bridge.referenceEquals(Bridge.Reflection.getGenericTypeDefinition(type),System.Nullable$1))return Kusto.Charting.DataChartsHelper.IsNumericType(System.Nullable.getUnderlyingType(type),considerDateTimeAndTimeSpanAsNumeric);return!1},GetAllArgumentColumns:function(table,columnsToExclude){var i,columnName;columnsToExclude===void 0&&(columnsToExclude=null);var result=new(System.Collections.Generic.List$1(System.String).ctor),schema=table.Kusto$Charting$IChartingDataSource$GetSchema(),n=System.Linq.Enumerable.from(table.Kusto$Charting$IChartingDataSource$GetSchema(),System.Tuple$2(System.String,Kusto.Charting.ArgumentColumnType)).count(),columnsToExcludeDefined=columnsToExclude!=null&&System.Linq.Enumerable.from(columnsToExclude,System.String).any();if(n>1)for(i=0;i<n;i=i+1|0)(columnName=System.Linq.Enumerable.from(schema,System.Tuple$2(System.String,Kusto.Charting.ArgumentColumnType)).elementAt(i).Item1,columnsToExcludeDefined&&System.Linq.Enumerable.from(columnsToExclude,System.String).contains(columnName))||result.add(columnName);return result},GetFirstStringColumnName:function(table,amountToSkip){var schema,n,i;for(amountToSkip===void 0&&(amountToSkip=0),schema=table.Kusto$Charting$IChartingDataSource$GetSchema(),n=System.Linq.Enumerable.from(table.Kusto$Charting$IChartingDataSource$GetSchema(),System.Tuple$2(System.String,Kusto.Charting.ArgumentColumnType)).count(),i=0;i<n;i=i+1|0)if(System.Linq.Enumerable.from(schema,System.Tuple$2(System.String,Kusto.Charting.ArgumentColumnType)).elementAt(i).Item2===Kusto.Charting.ArgumentColumnType.String)if(amountToSkip===0)return System.Linq.Enumerable.from(schema,System.Tuple$2(System.String,Kusto.Charting.ArgumentColumnType)).elementAt(i).Item1;else amountToSkip=amountToSkip-1|0;return null},FillGapsWithNaNs:function(data,argType){var $t,dataGroups,result,dg,serieDataItems;if(data==null||!System.Linq.Enumerable.from(data,Kusto.Charting.DataItem).any()||data.Count<Kusto.Charting.DataChartsHelper.c_minElementsAmountToFillGapsWithNans)return data;dataGroups=System.Linq.Enumerable.from(data,Kusto.Charting.DataItem).groupBy($asm.$.Kusto.Charting.DataChartsHelper.f7);result=new(System.Collections.Generic.List$1(Kusto.Charting.DataItem).$ctor2)(data.Count);$t=Bridge.getEnumerator(dataGroups);try{while($t.moveNext())dg=$t.Current,serieDataItems=Kusto.Charting.DataChartsHelper.FillGapsWithNaNs$1(dg.select($asm.$.Kusto.Charting.DataChartsHelper.f8),argType),result.AddRange(serieDataItems)}finally{Bridge.is($t,System.IDisposable)&&$t.System$IDisposable$Dispose()}return result},FillGapsWithNaNs$1:function(data,argType){var $t,argData,result,prevItem,item,currentDistance,gapLength,mod,j,newItem;if(System.Linq.Enumerable.from(data,Kusto.Charting.DataItem).count()<Kusto.Charting.DataChartsHelper.c_minElementsAmountToFillGapsWithNans)return data;switch(argType){case Kusto.Charting.ArgumentColumnType.TimeSpan:case Kusto.Charting.ArgumentColumnType.DateTime:data=System.Linq.Enumerable.from(data,Kusto.Charting.DataItem).orderBy($asm.$.Kusto.Charting.DataChartsHelper.f9);argData=System.Linq.Enumerable.from(data,Kusto.Charting.DataItem).select($asm.$.Kusto.Charting.DataChartsHelper.f10).ToArray(System.Double);break;case Kusto.Charting.ArgumentColumnType.Numeric:data=System.Linq.Enumerable.from(data,Kusto.Charting.DataItem).orderBy($asm.$.Kusto.Charting.DataChartsHelper.f11);argData=System.Linq.Enumerable.from(data,Kusto.Charting.DataItem).select($asm.$.Kusto.Charting.DataChartsHelper.f11).ToArray(System.Double);break;default:return data}if(argData==null||!System.Linq.Enumerable.from(argData,System.Double).any())return data;var distances=Kusto.Charting.DataChartsHelper.SelectSuccessivePairs(argData),maxGroup=Kusto.Charting.DataChartsHelper.GetTopGroupByCount(distances,argType),initialDistance=maxGroup.Item1;if(maxGroup==null||System.Convert.toDouble(Bridge.box(maxGroup.Item2,System.Int32))/System.Linq.Enumerable.from(distances,System.Double).count()<Kusto.Charting.DataChartsHelper.c_minFractionOfIntervalsToDetectDistribution)return data;result=new(System.Collections.Generic.List$1(Kusto.Charting.DataItem).$ctor2)(System.Linq.Enumerable.from(data,Kusto.Charting.DataItem).count());prevItem=null;$t=Bridge.getEnumerator(data,Kusto.Charting.DataItem);try{while($t.moveNext()){if(item=$t.Current,prevItem==null){result.add(item);prevItem=item;continue}if(currentDistance=Kusto.Charting.DataChartsHelper.GetDistance(prevItem,item,argType),currentDistance-initialDistance>Kusto.Charting.DataChartsHelper.c_doubleAcceptableApproximation){gapLength=0;try{gapLength=System.Convert.toInt32(Bridge.box(Bridge.Math.round(currentDistance/initialDistance,0,6),System.Double,System.Double.format,System.Double.getHashCode))}catch($e1){return $e1=System.Exception.create($e1),data}if(mod=currentDistance-gapLength*initialDistance,mod>Kusto.Charting.DataChartsHelper.c_doubleAcceptableApproximation)return data;for(j=1;j<gapLength;j=j+1|0){newItem=prevItem.Clone();newItem.ValueData=Number.NaN;switch(argType){case Kusto.Charting.ArgumentColumnType.Numeric:newItem.ArgumentNumeric+=initialDistance*j;newItem.ArgumentData=System.Double.format(newItem.ArgumentNumeric);break;case Kusto.Charting.ArgumentColumnType.DateTime:newItem.ArgumentDateTime=System.DateTime.addTicks(newItem.ArgumentDateTime,System.Convert.toInt64(Bridge.box(initialDistance,System.Double,System.Double.format,System.Double.getHashCode)).mul(System.Int64(j)));newItem.ArgumentData=System.DateTime.format(newItem.ArgumentDateTime);break;case Kusto.Charting.ArgumentColumnType.TimeSpan:newItem.ArgumentDateTime=System.DateTime.addTicks(newItem.ArgumentDateTime,System.Convert.toInt64(Bridge.box(initialDistance,System.Double,System.Double.format,System.Double.getHashCode)).mul(System.Int64(j)));newItem.ArgumentData=Bridge.toString(System.TimeSpan.fromTicks(System.DateTime.getTicks(newItem.ArgumentDateTime)));break}result.add(newItem)}}result.add(item);prevItem=item}}finally{Bridge.is($t,System.IDisposable)&&$t.System$IDisposable$Dispose()}return result},ResolveArgumentType:function(data){return data==null||!System.Linq.Enumerable.from(data,Kusto.Charting.DataItem).any()?Kusto.Charting.ArgumentColumnType.None:System.Linq.Enumerable.from(data,Kusto.Charting.DataItem).all($asm.$.Kusto.Charting.DataChartsHelper.f12)?Kusto.Charting.ArgumentColumnType.TimeSpan:System.Linq.Enumerable.from(data,Kusto.Charting.DataItem).all($asm.$.Kusto.Charting.DataChartsHelper.f13)?Kusto.Charting.ArgumentColumnType.DateTime:System.Linq.Enumerable.from(data,Kusto.Charting.DataItem).any($asm.$.Kusto.Charting.DataChartsHelper.f14)?Kusto.Charting.ArgumentColumnType.Numeric:Kusto.Charting.ArgumentColumnType.String},ValidateData:function(data,argType,limits,error){var $t,minValue,maxValue,item,seriesCount,dataPoints;if(error.v="",data==null||!System.Linq.Enumerable.from(data,Kusto.Charting.DataItem).any())return error.v="Data was not provided",Kusto.Charting.ValidationStatus.PolicyViolationError;if(System.Linq.Enumerable.from(data,Kusto.Charting.DataItem).where($asm.$.Kusto.Charting.DataChartsHelper.f15).any())return error.v="Data includes non-finite values",Kusto.Charting.ValidationStatus.PolicyViolationError;if(argType===Kusto.Charting.ArgumentColumnType.Geospatial&&System.Linq.Enumerable.from(data,Kusto.Charting.DataItem).any($asm.$.Kusto.Charting.DataChartsHelper.f16))return error.v="Data includes invalid geospatial coordinates. Longitude values must be in range [-180,180]. Latitude values must be in range [-90,90].",Kusto.Charting.ValidationStatus.PolicyViolationError;if(argType===Kusto.Charting.ArgumentColumnType.DateTime&&System.TimeSpan.neq(limits.MaxDatetimePeriodError,Bridge.getDefaultValue(System.TimeSpan))){minValue=System.DateTime.getMaxValue();maxValue=System.DateTime.getMinValue();$t=Bridge.getEnumerator(data,Kusto.Charting.DataItem);try{while($t.moveNext())item=$t.Current,System.DateTime.lt(maxValue,item.ArgumentDateTime)&&(maxValue=item.ArgumentDateTime),System.DateTime.gt(minValue,item.ArgumentDateTime)&&(minValue=item.ArgumentDateTime)}finally{Bridge.is($t,System.IDisposable)&&$t.System$IDisposable$Dispose()}if(System.DateTime.gt(minValue,maxValue)||System.TimeSpan.gt(System.DateTime.subdd(maxValue,minValue),limits.MaxDatetimePeriodError))return error.v="Input time range is too wide to fit into chart",Kusto.Charting.ValidationStatus.PolicyViolationError}return(seriesCount=System.Linq.Enumerable.from(data,Kusto.Charting.DataItem).select($asm.$.Kusto.Charting.DataChartsHelper.f7).distinct().count(),dataPoints=System.Linq.Enumerable.from(data,Kusto.Charting.DataItem).count(),seriesCount>limits.MaxSeriesPerChartError)?(error.v="Too many series\n"+(System.String.format("Provided data contains {0} series which exceeds allowed amount for the chart: {1}",Bridge.box(seriesCount,System.Int32),Bridge.box(limits.MaxSeriesPerChartError,System.Int32))||""),Kusto.Charting.ValidationStatus.PolicyViolationError):dataPoints>limits.MaxPointsPerChartError?(error.v="Too many points\n"+(System.String.format("Provided data contains {0} points which exceeds allowed amount for the chart: {1}",Bridge.box(dataPoints,System.Int32),Bridge.box(limits.MaxPointsPerChartError,System.Int32))||""),Kusto.Charting.ValidationStatus.PolicyViolationError):seriesCount>limits.MaxSeriesPerChartWarning||dataPoints>limits.MaxPointsPerChartWarning?(error.v="Too many series or data points\nChart can perform badly when large amount of data is used.\n"+(System.String.format("You are about to plot {0} series with {1} points.",Bridge.box(seriesCount,System.Int32),Bridge.box(dataPoints,System.Int32))||""),Kusto.Charting.ValidationStatus.PolicyViolationWarning):Kusto.Charting.ValidationStatus.Valid},ResolveJsonArrayType:function(value){var arr;try{arr=Newtonsoft.Json.JsonConvert.DeserializeObject(value,System.Array.type(System.String))}catch($e1){return $e1=System.Exception.create($e1),Kusto.Charting.ArgumentColumnType.None}return arr==null||System.Linq.Enumerable.from(arr,System.String).count()===0?Kusto.Charting.ArgumentColumnType.None:System.Linq.Enumerable.from(arr,System.String).all($asm.$.Kusto.Charting.DataChartsHelper.f17)?Kusto.Charting.ArgumentColumnType.Object:Kusto.Charting.DataChartsHelper.ArrayIsDouble(arr)?Kusto.Charting.ArgumentColumnType.Numeric:Kusto.Charting.DataChartsHelper.ArrayIsTimespan(arr)?Kusto.Charting.ArgumentColumnType.TimeSpan:Kusto.Charting.DataChartsHelper.ArrayIsDatetime(arr)?Kusto.Charting.ArgumentColumnType.DateTime:Kusto.Charting.ArgumentColumnType.String},SelectSuccessivePairs:function(collection){var $t,item;if(collection==null||System.Linq.Enumerable.from(collection,System.Double).count()<=1)return null;var result=System.Array.init(System.Linq.Enumerable.from(collection,System.Double).count()-1|0,0,System.Double),isFirstElement=!0,prev=Bridge.getDefaultValue(System.Double),idx=0;$t=Bridge.getEnumerator(collection);try{while($t.moveNext()){if(item=$t.Current,isFirstElement){isFirstElement=!1;prev=item;continue}result[System.Array.index(idx,result)]=Math.abs(item-prev);idx=idx+1|0;prev=item}}finally{Bridge.is($t,System.IDisposable)&&$t.System$IDisposable$Dispose()}return result},GetTopGroupByCount:function(data,sequenceType){var $t,sorted=System.Linq.Enumerable.from(data,System.Double).orderBy($asm.$.Kusto.Charting.DataChartsHelper.f8),currentGroup=new(System.Collections.Generic.List$1(System.Double).$ctor2)(System.Linq.Enumerable.from(data,System.Double).count()),maxGroupCount=0,maxGroupValue=0,prevNum=null,num,diff;$t=Bridge.getEnumerator(sorted);try{while($t.moveNext()){if(num=$t.Current,!System.Nullable.hasValue(prevNum)){prevNum=num;currentGroup.add(num);continue}diff=num-System.Nullable.getValue(prevNum);diff>Kusto.Charting.DataChartsHelper.c_doubleAcceptableApproximation&&(System.Linq.Enumerable.from(currentGroup,System.Double).count()>maxGroupCount&&(maxGroupCount=System.Linq.Enumerable.from(currentGroup,System.Double).count(),maxGroupValue=Bridge.Math.round(System.Linq.Enumerable.from(currentGroup,System.Double).average(),Kusto.Charting.DataChartsHelper.c_decimalRoundingPrecision,6)),currentGroup.clear());currentGroup.add(num);prevNum=num}}finally{Bridge.is($t,System.IDisposable)&&$t.System$IDisposable$Dispose()}return{Item1:maxGroupValue,Item2:maxGroupCount}},GetDistance:function(start,end,sequenceType){if(start==null||end==null)return-1;var distance=-1;switch(sequenceType){case Kusto.Charting.ArgumentColumnType.TimeSpan:case Kusto.Charting.ArgumentColumnType.DateTime:distance=System.Int64.toNumber(System.DateTime.getTicks(end.ArgumentDateTime).sub(System.DateTime.getTicks(start.ArgumentDateTime)));break;case Kusto.Charting.ArgumentColumnType.Numeric:distance=end.ArgumentNumeric-start.ArgumentNumeric;break}return Bridge.Math.round(Math.abs(distance),Kusto.Charting.DataChartsHelper.c_decimalRoundingPrecision,6)},ResolvePredefinedColumnsIndexes:function(data,seriesColumns,yColumns,xColumn,argumentRestrictions,metaData){var dataIsSeries=null,columns=data.Kusto$Charting$IChartingDataSource$GetSchema(),i,column,columnName,isY,isX,columnType,isSeries,value,type;if(argumentRestrictions===Kusto.Charting.ArgumentRestrictions.GeospatialAsSeries&&System.Linq.Enumerable.from(seriesColumns,System.String).any()&&(System.Linq.Enumerable.from(yColumns,System.String).any()||!System.String.isNullOrWhiteSpace(xColumn)))throw new Kusto.Charting.SeriesCreationException("GeospatialAsSeries: it's not possible to set both series and x/y columns.");for(i=0;i<System.Linq.Enumerable.from(columns,System.Tuple$2(System.String,Kusto.Charting.ArgumentColumnType)).count();i=i+1|0){if(column=System.Linq.Enumerable.from(columns,System.Tuple$2(System.String,Kusto.Charting.ArgumentColumnType)).elementAt(i),columnName=column.Item1,System.Linq.Enumerable.from(seriesColumns,System.String).any()&&System.Linq.Enumerable.from(seriesColumns,System.String).contains(columnName)){metaData.v.SeriesIndexesList.add(i);argumentRestrictions===Kusto.Charting.ArgumentRestrictions.GeospatialAsSeries&&metaData.v.GeospatiaColumnlIndexesList.add(i);continue}if(isY=System.Linq.Enumerable.from(yColumns,System.String).any()&&System.Linq.Enumerable.from(yColumns,System.String).contains(columnName),isX=!System.String.isNullOrWhiteSpace(xColumn)&&Bridge.referenceEquals(xColumn,columnName),isY||isX){if(columnType=column.Item2,isSeries=!1,System.Enum.hasFlag(Kusto.Charting.ArgumentColumnType.StringOrObject,Bridge.box(columnType,Kusto.Charting.ArgumentColumnType,System.Enum.toStringFn(Kusto.Charting.ArgumentColumnType)))&&metaData.v.ArgumentColumnType!==Kusto.Charting.ArgumentColumnType.Geospatial&&(value=data.Kusto$Charting$IChartingDataSource$GetStringValue(0,i),System.String.isNullOrEmpty(value)?(columnType=Kusto.Charting.ArgumentColumnType.None,isSeries=!0):(type=Kusto.Charting.DataChartsHelper.ResolveJsonArrayType(value),type!==Kusto.Charting.ArgumentColumnType.None&&(columnType=type,isSeries=!0))),System.Nullable.hasValue(dataIsSeries)){if(System.Nullable.getValue(dataIsSeries)!==isSeries)throw new Kusto.Charting.SeriesCreationException("Y-Axes and X-Axis both should be defined as scalars or as series");}else dataIsSeries=isSeries;if(metaData.v.ArgumentColumnType===Kusto.Charting.ArgumentColumnType.Geospatial)metaData.v.GeospatiaColumnlIndexesList.Count>0&&isX?metaData.v.GeospatiaColumnlIndexesList.insert(0,i):metaData.v.GeospatiaColumnlIndexesList.add(i),argumentRestrictions===Kusto.Charting.ArgumentRestrictions.GeospatialAsSeries&&(metaData.v.SeriesIndexesList.Count>0&&isX?metaData.v.SeriesIndexesList.insert(0,i):metaData.v.SeriesIndexesList.add(i));else if(isX)if(System.Enum.hasFlag(metaData.v.ArgumentColumnType,Bridge.box(columnType,Kusto.Charting.ArgumentColumnType,System.Enum.toStringFn(Kusto.Charting.ArgumentColumnType))))metaData.v.ArgumentDataColumnIndex=i;else throw new Kusto.Charting.SeriesCreationException(System.String.format("Type of column {0}, provided as X-Axis, does not match required by chart type",[columnName]));else if(isY)if(System.Enum.hasFlag(Kusto.Charting.ArgumentColumnType.NumericOrDateTimeOrTimeSpan,Bridge.box(columnType,Kusto.Charting.ArgumentColumnType,System.Enum.toStringFn(Kusto.Charting.ArgumentColumnType))))metaData.v.DataIndexesList.add(i);else throw new Kusto.Charting.SeriesCreationException(System.String.format("Column {0}, provided as Y-Axis, should be one of types: Numeric, DateTime, Timespan",[columnName]));}}if(metaData.v.IsDataFormedAsSeries=System.Nullable.hasValue(dataIsSeries)?System.Nullable.getValue(dataIsSeries):!1,!System.Linq.Enumerable.from(metaData.v.DataIndexesList,System.Int32).any()&&System.Linq.Enumerable.from(yColumns,System.String).any()&&metaData.v.ArgumentColumnType!==Kusto.Charting.ArgumentColumnType.Geospatial)throw new Kusto.Charting.SeriesCreationException("Any of columns defined as Y-Axes were not found in data, not of an appropriate type or used as argument or series");if(!System.String.isNullOrWhiteSpace(xColumn)&&metaData.v.ArgumentDataColumnIndex<0&&metaData.v.ArgumentColumnType!==Kusto.Charting.ArgumentColumnType.Geospatial)throw new Kusto.Charting.SeriesCreationException(System.String.format("Column {0}, provided as X-Axis, was not found in data",[xColumn]));if(System.Linq.Enumerable.from(seriesColumns,System.String).any()&&!System.Linq.Enumerable.from(metaData.v.SeriesIndexesList,System.Int32).any())throw new Kusto.Charting.SeriesCreationException("Any of columns, provided as Series, were not found in data");},ResolveDataSeriesFromDataRow:function(result,table,columns,propertyColumns,rowIdx,baseSeriesName,argumentColumnType,accumulate,argumentDataColumnIndex){var $t,$t1,argumentValue=table.Kusto$Charting$IChartingDataSource$GetStringValue(rowIdx,argumentDataColumnIndex),argumentActualType=Kusto.Charting.DataChartsHelper.ResolveJsonArrayType(argumentValue),values,j,argumentData,dataItem;$t=Bridge.getEnumerator(columns,Kusto.Charting.ColumnDesc);try{while($t.moveNext()){var column=$t.Current,value=table.Kusto$Charting$IChartingDataSource$GetStringValue(rowIdx,column.Index),type=Kusto.Charting.DataChartsHelper.ResolveJsonArrayType(value);if(type!==Kusto.Charting.ArgumentColumnType.None&&type!==Kusto.Charting.ArgumentColumnType.Object&&System.Enum.hasFlag(Kusto.Charting.ArgumentColumnType.NumericOrDateTimeOrTimeSpan,Bridge.box(type,Kusto.Charting.ArgumentColumnType,System.Enum.toStringFn(Kusto.Charting.ArgumentColumnType)))){if(values=Kusto.Charting.DataChartsHelper.ParseJsonArrayAsDouble(value,!0),values==null||value.length===0)continue;var seriesName=System.String.isNullOrEmpty(baseSeriesName)?column.Name:(baseSeriesName||"")+":"+(column.Name||""),lastValue=0,argumentDateTime=Kusto.Charting.DataChartsHelper.GetArgumentDateTimeArray(argumentValue,argumentActualType,argumentDataColumnIndex,values.length),argumentTimeSpan=Kusto.Charting.DataChartsHelper.GetArgumentTimeSpanArray(argumentValue,argumentActualType,argumentDataColumnIndex,values.length),argumentNumeric=Kusto.Charting.DataChartsHelper.GetArgumentNumericArray(argumentValue,argumentActualType,argumentDataColumnIndex,values.length),argumentString=Kusto.Charting.DataChartsHelper.GetArgumentStringArray(argumentValue,argumentActualType,argumentDataColumnIndex,values.length),argumentProperties=System.Linq.Enumerable.from(propertyColumns,Kusto.Charting.ColumnDesc).select(function(p){return table.Kusto$Charting$IChartingDataSource$GetStringValue(rowIdx,p.Index)}).select($asm.$.Kusto.Charting.DataChartsHelper.f18).ToArray(System.Object),len=Math.min(Math.min(Math.min(argumentDateTime.length,argumentNumeric.length),values.length),argumentString.length);for(j=0;j<len;j=j+1|0)argumentData="",System.Enum.hasFlag(Kusto.Charting.ArgumentColumnType.DateTimeOrTimeSpan,Bridge.box(argumentColumnType,Kusto.Charting.ArgumentColumnType,System.Enum.toStringFn(Kusto.Charting.ArgumentColumnType)))&&System.Enum.hasFlag(Kusto.Charting.ArgumentColumnType.DateTimeOrTimeSpan,Bridge.box(argumentActualType,Kusto.Charting.ArgumentColumnType,System.Enum.toStringFn(Kusto.Charting.ArgumentColumnType)))?argumentData=System.DateTime.format(argumentDateTime[System.Array.index(j,argumentDateTime)]):System.Enum.hasFlag(argumentColumnType,Bridge.box(Kusto.Charting.ArgumentColumnType.Numeric,Kusto.Charting.ArgumentColumnType,System.Enum.toStringFn(Kusto.Charting.ArgumentColumnType)))&&argumentActualType===Kusto.Charting.ArgumentColumnType.Numeric?argumentData=System.Double.format(argumentNumeric[System.Array.index(j,argumentNumeric)]):System.Enum.hasFlag(argumentColumnType,Bridge.box(Kusto.Charting.ArgumentColumnType.String,Kusto.Charting.ArgumentColumnType,System.Enum.toStringFn(Kusto.Charting.ArgumentColumnType)))&&(argumentData=argumentString[System.Array.index(j,argumentString)],System.String.isNullOrEmpty(argumentData)&&(argumentData=argumentValue)),dataItem=($t1=new Kusto.Charting.DataItem.ctor,$t1.ArgumentData=argumentData,$t1.ArgumentDateTime=argumentDateTime[System.Array.index(j,argumentDateTime)],$t1.ArgumentNumeric=argumentNumeric[System.Array.index(j,argumentNumeric)],$t1.ArgumentTimeSpan=argumentTimeSpan[System.Array.index(j,argumentTimeSpan)],$t1.ValueData=accumulate?values[System.Array.index(j,values)]+lastValue:values[System.Array.index(j,values)],$t1.ValueName=column.Name,$t1.SeriesName=seriesName,$t1.Properties=Kusto.Charting.DataChartsHelper.ResolvePropertiesFromMultiValue(table,argumentProperties,propertyColumns,j),$t1),System.String.isNullOrEmpty(dataItem.ArgumentData)&&(dataItem.ArgumentData=Kusto.Charting.DataChartsHelper.c_defaultArgumentString),result.add(dataItem),lastValue=dataItem.ValueData}}}finally{Bridge.is($t,System.IDisposable)&&$t.System$IDisposable$Dispose()}},ResolveProperties:function(table,rowIdx,propertyColumns){return propertyColumns==null||propertyColumns.length===0?"":Bridge.toArray(System.Linq.Enumerable.from(propertyColumns,Kusto.Charting.ColumnDesc).select(function(column){var value=table.Kusto$Charting$IChartingDataSource$GetStringValue(rowIdx,column.Index);return System.String.format("{0}:{1}",column.Name,value)})).join(", ")},ResolvePropertiesFromMultiValue:function(table,properties,propertyColumns,j){return Kusto.Cloud.Platform.Utils.ExtendedEnumerable.SafeFastNone$2(Kusto.Charting.ColumnDesc,propertyColumns)?"":Bridge.toArray(System.Linq.Enumerable.from(propertyColumns,Kusto.Charting.ColumnDesc).zip(properties,$asm.$.Kusto.Charting.DataChartsHelper.f19).select(function(kvp){var value,arr;return value=(arr=Bridge.as(kvp.Item2,System.Array.type(System.String)))!=null?arr[System.Array.index(j,arr)]:Kusto.Charting.DataChartsHelper.ObjectToStringOrEmpty(kvp.Item2),System.String.format("{0}:{1}",kvp.Item1.Name,value)})).join(", ")},ObjectToStringOrEmpty:function(o){var s,d;return o==null?"":(s=Bridge.as(o,System.String))!=null?s:Bridge.equals(d=Bridge.is(o,System.DateTime)?System.Nullable.getValue(Bridge.cast(Bridge.unbox(o,System.DateTime),System.DateTime)):null,null)?Bridge.toString(o):Kusto.Cloud.Platform.Utils.ExtendedDateTime.ToUtcString(d)},GetArgumentStringArray:function(value,argumentColumnType,argumentDataColumnIndex,count){if(!System.Enum.hasFlag(argumentColumnType,Bridge.box(Kusto.Charting.ArgumentColumnType.String,Kusto.Charting.ArgumentColumnType,System.Enum.toStringFn(Kusto.Charting.ArgumentColumnType)))||argumentDataColumnIndex<0)return System.Array.init(count,null,System.String);var result=Kusto.Charting.DataChartsHelper.ParseJsonArrayAsString(Bridge.toString(value));return result==null?System.Array.init(count,null,System.String):result},GetArgumentNumericArray:function(value,argumentColumnType,argumentDataColumnIndex,count){if(argumentColumnType!==Kusto.Charting.ArgumentColumnType.Numeric||argumentDataColumnIndex<0)return System.Linq.Enumerable.repeat(Kusto.Charting.DataChartsHelper.c_defaultArgumentNumeric,count).ToArray(System.Double);var result=Kusto.Charting.DataChartsHelper.ParseJsonArrayAsDouble(Bridge.toString(value));return result==null?System.Linq.Enumerable.repeat(Kusto.Charting.DataChartsHelper.c_defaultArgumentNumeric,count).ToArray(System.Double):result},GetArgumentDateTimeArray:function(value,argumentColumnType,argumentDataColumnIndex,count){if(!System.Enum.hasFlag(Kusto.Charting.ArgumentColumnType.DateTimeOrTimeSpan,Bridge.box(argumentColumnType,Kusto.Charting.ArgumentColumnType,System.Enum.toStringFn(Kusto.Charting.ArgumentColumnType)))||argumentDataColumnIndex<0)return System.Linq.Enumerable.repeat(Kusto.Charting.DataChartsHelper.c_defaultArgumentDatetime,count).ToArray(System.DateTime);var result=Kusto.Charting.DataChartsHelper.ParseJsonArrayAsDateTime(Bridge.toString(value),argumentColumnType);return result==null?System.Linq.Enumerable.repeat(Kusto.Charting.DataChartsHelper.c_defaultArgumentDatetime,count).ToArray(System.DateTime):result},GetArgumentTimeSpanArray:function(value,argumentColumnType,argumentDataColumnIndex,count){if(argumentColumnType!==Kusto.Charting.ArgumentColumnType.TimeSpan||argumentDataColumnIndex<0)return System.Linq.Enumerable.repeat(null,count).ToArray(System.TimeSpan);var result=Kusto.Charting.DataChartsHelper.ParseJsonArrayAsTimeSpan(Bridge.toString(value),argumentColumnType);return result==null?System.Linq.Enumerable.repeat(null,count).ToArray(System.TimeSpan):result},ResolveDataItemsFromDataRow:function(result,table,columns,propertyColumns,rowIdx,baseSeriesName,argumentData,lastValues,accumulate){var $t,columnIndex,lastValue,hasPrevValue;for(columns.length===0&&argumentData.GeospatialArgumentDataType===Kusto.Charting.ArgumentColumnType.Geospatial&&result.add(($t=new Kusto.Charting.DataItem.ctor,$t.GeoCoordinates=argumentData.GeoCoordinates,$t.SeriesName=System.String.isNullOrWhiteSpace(baseSeriesName)?"":baseSeriesName,$t.Properties=Kusto.Charting.DataChartsHelper.ResolveProperties(table,rowIdx,propertyColumns),$t)),columnIndex=0;columnIndex<columns.length;columnIndex=columnIndex+1|0){var column=columns[System.Array.index(columnIndex,columns)],value=table.Kusto$Charting$IChartingDataSource$GetNumericValue(rowIdx,column.Index),dataItem=($t=new Kusto.Charting.DataItem.ctor,$t.ArgumentData=argumentData.Value,$t.ArgumentDateTime=argumentData.DateTime,$t.ArgumentTimeSpan=argumentData.TimeSpan,$t.ArgumentNumeric=argumentData.NumericValue,$t.ValueName=column.Name,$t.Properties=Kusto.Charting.DataChartsHelper.ResolveProperties(table,rowIdx,propertyColumns),$t);argumentData.GeospatialArgumentDataType===Kusto.Charting.ArgumentColumnType.Geospatial?(dataItem.SeriesName=System.String.isNullOrWhiteSpace(baseSeriesName)?"":baseSeriesName,dataItem.GeoCoordinates=argumentData.GeoCoordinates):dataItem.SeriesName=System.String.isNullOrEmpty(baseSeriesName)?column.Name:(baseSeriesName||"")+":"+(column.Name||"");accumulate?(lastValue={},hasPrevValue=lastValues.tryGetValue(dataItem.SeriesName,lastValue),dataItem.ValueData=hasPrevValue?value+lastValue.v:value,lastValues.setItem(dataItem.SeriesName,dataItem.ValueData)):dataItem.ValueData=value;result.add(dataItem)}},GetBaseSeriesName:function(table,seriesColumns,rowIdx){var $t,baseSeriesName="",baseSeriesNameBuilder,column,columnValue;if(seriesColumns!=null){baseSeriesNameBuilder=new System.Text.StringBuilder;$t=Bridge.getEnumerator(seriesColumns,Kusto.Charting.ColumnDesc);try{while($t.moveNext())column=$t.Current,baseSeriesNameBuilder.getLength()>0&&baseSeriesNameBuilder.append(", "),columnValue=table.Kusto$Charting$IChartingDataSource$GetStringValue(rowIdx,column.Index),columnValue=System.String