Skip to content

Commit a6f6fad

Browse files
feat: set time range option added
1 parent dbca607 commit a6f6fad

File tree

3 files changed

+19
-7
lines changed

3 files changed

+19
-7
lines changed

projects/common/src/time/time-range.service.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -112,8 +112,7 @@ export class TimeRangeService {
112112
}
113113

114114
public toQueryParams(startTime: Date, endTime: Date): QueryParamObject {
115-
const newTimeRange = TimeRangeService.toFixedTimeRange(startTime, endTime);
116-
this.timeRangeSubject$.next(newTimeRange);
115+
const newTimeRange = new FixedTimeRange(startTime, endTime);
117116

118117
return {
119118
[TimeRangeService.TIME_RANGE_QUERY_PARAM]: newTimeRange.toUrlString()

projects/observability/src/shared/dashboard/widgets/charts/cartesian-widget/interactions/cartesian-explorer-context-menu/cartesian-explorer-context-menu.component.test.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,9 @@ describe('Sheet Overlay component', () => {
8383
providers: [
8484
mockProvider(CartesainExplorerNavigationService, {
8585
navigateToExplorer: jest.fn()
86+
}),
87+
mockProvider(TimeRangeService, {
88+
toQueryParams: jest.fn()
8689
})
8790
]
8891
});

projects/observability/src/shared/dashboard/widgets/charts/cartesian-widget/interactions/cartesian-explorer-context-menu/cartesian-explorer-context-menu.component.ts

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import { ChangeDetectionStrategy, Component, Inject } from '@angular/core';
22
import { IconType } from '@hypertrace/assets-library';
3+
import { TimeRangeService } from '@hypertrace/common';
34
import { ButtonStyle, POPOVER_DATA } from '@hypertrace/components';
45
import { CartesianSelectedData } from '../../../../../../components/cartesian/chart-interactivty';
56
import { CartesainExplorerNavigationService } from '../cartesian-explorer-navigation.service';
@@ -27,6 +28,10 @@ import { CartesainExplorerNavigationService } from '../cartesian-explorer-naviga
2728
})
2829
export class CartesianExplorerContextMenuComponent<TData> {
2930
public menus?: ContextMenu[] = [
31+
{
32+
name: 'Set Time Range',
33+
icon: IconType.Alarm
34+
},
3035
{
3136
name: 'Explore',
3237
icon: IconType.ArrowUpRight
@@ -38,16 +43,21 @@ export class CartesianExplorerContextMenuComponent<TData> {
3843

3944
public constructor(
4045
@Inject(POPOVER_DATA) data: CartesianSelectedData<TData>,
41-
private readonly cartesainExplorerNavigationService: CartesainExplorerNavigationService
46+
private readonly cartesainExplorerNavigationService: CartesainExplorerNavigationService,
47+
private readonly timeRangeService: TimeRangeService
4248
) {
4349
this.selectionData = data;
4450
}
4551

4652
public menuSelectHandler = (_menu: ContextMenu): void => {
47-
this.cartesainExplorerNavigationService.navigateToExplorer(
48-
this.selectionData.timeRange.startTime,
49-
this.selectionData.timeRange.endTime
50-
);
53+
this.timeRangeService.setFixedRange(this.selectionData.timeRange.startTime, this.selectionData.timeRange.endTime);
54+
55+
if (_menu.name === 'Explore') {
56+
this.cartesainExplorerNavigationService.navigateToExplorer(
57+
this.selectionData.timeRange.startTime,
58+
this.selectionData.timeRange.endTime
59+
);
60+
}
5161
};
5262
}
5363

0 commit comments

Comments
 (0)