1+ import moment = require( "moment" ) ;
12import { IListViewItem , IListViewItemBase , ListViewGroupItem } from "../../ListView/IListViewItem" ;
23import { CodeObjectInfo } from "../codeAnalyticsView" ;
34import { Duration } from "./EndpointInsight" ;
@@ -99,8 +100,9 @@ export interface SpanDurationsInsight extends CodeObjectInsight{
99100 span : string ,
100101 percentiles : {
101102 percentile : number ,
102- change : number ,
103- latestDuration : Duration
103+ currentDuration : Duration ,
104+ previousDuration : Duration
105+ changeTime : moment . Moment ,
104106 } [ ]
105107}
106108export class SpanDurationsListViewItemsCreator implements IInsightListViewItemsCreator {
@@ -123,15 +125,13 @@ export class SpanDurationsListViewItemsCreator implements IInsightListViewItemsC
123125 {
124126 const percentileHtmls = [ ]
125127 for ( const item of insight . percentiles ) {
126- const changeHtml = Math . abs ( item . change * 100 ) . toFixed ( 0 ) ;
128+ percentileHtmls . push ( /*html*/ `<span>P${ item . percentile * 100 } </span>` ) ;
129+ percentileHtmls . push ( /*html*/ `<span>${ item . currentDuration . value } ${ item . currentDuration . unit } </span>` ) ;
127130
128- percentileHtmls . push ( /*html*/ `<span>P${ item . percentile } </span>` ) ;
129- percentileHtmls . push ( /*html*/ `<span>${ item . latestDuration . value } ${ item . latestDuration . unit } </span>` ) ;
130-
131- if ( item . change > 0.1 )
132- percentileHtmls . push ( /*html*/ `<span class="bad-change">increased by ${ changeHtml } %</span>` ) ;
133- else if ( item . change < - 0.1 )
134- percentileHtmls . push ( /*html*/ `<span class="good-change">decreased by ${ changeHtml } %</span>` ) ;
131+ if ( item . previousDuration && item . changeTime ) {
132+ let verb = item . previousDuration . raw > item . currentDuration . raw ? 'dropped' : 'raised' ;
133+ percentileHtmls . push ( /*html*/ `<span class="change">${ verb } from ${ item . previousDuration . value } ${ item . previousDuration . unit } , ${ item . changeTime . fromNow ( ) } </span>` ) ;
134+ }
135135 else
136136 percentileHtmls . push ( /*html*/ `<span></span>` ) ;
137137 }
0 commit comments