Skip to content

Commit 9f6976e

Browse files
committed
refactor(api): removed undefined from json response
1 parent b401f38 commit 9f6976e

File tree

8 files changed

+19
-18
lines changed

8 files changed

+19
-18
lines changed

backend/pkg/api/data_access/dummy.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -379,8 +379,8 @@ func (*DummyService) GetValidatorDashboardGroupSummary(ctx context.Context, dash
379379
return getDummyStruct[t.VDBGroupSummaryData](ctx)
380380
}
381381

382-
func (*DummyService) GetValidatorDashboardSummaryChart(ctx context.Context, dashboardId t.VDBId, groupIds []int64, efficiency enums.VDBSummaryChartEfficiencyType, aggregation enums.ChartAggregation, afterTs uint64, beforeTs uint64) (*t.ChartData[int, *float64], error) {
383-
return getDummyStruct[t.ChartData[int, *float64]](ctx)
382+
func (*DummyService) GetValidatorDashboardSummaryChart(ctx context.Context, dashboardId t.VDBId, groupIds []int64, efficiency enums.VDBSummaryChartEfficiencyType, aggregation enums.ChartAggregation, afterTs uint64, beforeTs uint64) (*t.ChartData[int, float64], error) {
383+
return getDummyStruct[t.ChartData[int, float64]](ctx)
384384
}
385385

386386
func (*DummyService) GetValidatorDashboardSummaryValidators(ctx context.Context, dashboardId t.VDBId, groupId int64) (*t.VDBGeneralSummaryValidators, error) {

backend/pkg/api/data_access/vdb.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ type ValidatorDashboardRepository interface {
4848

4949
GetValidatorDashboardSummary(ctx context.Context, dashboardId t.VDBId, period enums.TimePeriod, cursor string, colSort t.Sort[enums.VDBSummaryColumn], search string, limit uint64, protocolModes t.VDBProtocolModes) ([]t.VDBSummaryTableRow, *t.Paging, error)
5050
GetValidatorDashboardGroupSummary(ctx context.Context, dashboardId t.VDBId, groupId int64, period enums.TimePeriod, protocolModes t.VDBProtocolModes) (*t.VDBGroupSummaryData, error)
51-
GetValidatorDashboardSummaryChart(ctx context.Context, dashboardId t.VDBId, groupIds []int64, efficiencyType enums.VDBSummaryChartEfficiencyType, aggregation enums.ChartAggregation, afterTs uint64, beforeTs uint64) (*t.ChartData[int, *float64], error)
51+
GetValidatorDashboardSummaryChart(ctx context.Context, dashboardId t.VDBId, groupIds []int64, efficiencyType enums.VDBSummaryChartEfficiencyType, aggregation enums.ChartAggregation, afterTs uint64, beforeTs uint64) (*t.ChartData[int, float64], error)
5252
GetValidatorDashboardSummaryValidators(ctx context.Context, dashboardId t.VDBId, groupId int64) (*t.VDBGeneralSummaryValidators, error)
5353
GetValidatorDashboardSyncSummaryValidators(ctx context.Context, dashboardId t.VDBId, groupId int64, period enums.TimePeriod) (*t.VDBSyncSummaryValidators, error)
5454
GetValidatorDashboardSlashingsSummaryValidators(ctx context.Context, dashboardId t.VDBId, groupId int64, period enums.TimePeriod) (*t.VDBSlashingsSummaryValidators, error)

backend/pkg/api/data_access/vdb_rewards.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -855,10 +855,11 @@ func (d *DataAccessService) GetValidatorDashboardRewardsChart(ctx context.Contex
855855
for _, epoch := range epochList {
856856
result.Categories = append(result.Categories, epoch)
857857
for idx, series := range result.Series {
858+
d := epochData[epoch][uint64(series.Id)]
858859
if series.Property == "el" {
859-
result.Series[idx].Data = append(result.Series[idx].Data, epochData[epoch][uint64(series.Id)].El)
860+
result.Series[idx].Data = append(result.Series[idx].Data, &d.El)
860861
} else if series.Property == "cl" {
861-
result.Series[idx].Data = append(result.Series[idx].Data, epochData[epoch][uint64(series.Id)].Cl)
862+
result.Series[idx].Data = append(result.Series[idx].Data, &d.Cl)
862863
} else {
863864
return nil, fmt.Errorf("unknown series property: %s", series.Property)
864865
}

backend/pkg/api/data_access/vdb_summary.go

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -838,8 +838,8 @@ func calcEfficiency(dividend, divisor decimal.Decimal) float64 {
838838

839839
// for summary charts: series id is group id, no stack
840840

841-
func (d *DataAccessService) GetValidatorDashboardSummaryChart(ctx context.Context, dashboardId t.VDBId, groupIds []int64, efficiency enums.VDBSummaryChartEfficiencyType, aggregation enums.ChartAggregation, afterTs uint64, beforeTs uint64) (*t.ChartData[int, *float64], error) {
842-
ret := &t.ChartData[int, *float64]{}
841+
func (d *DataAccessService) GetValidatorDashboardSummaryChart(ctx context.Context, dashboardId t.VDBId, groupIds []int64, efficiency enums.VDBSummaryChartEfficiencyType, aggregation enums.ChartAggregation, afterTs uint64, beforeTs uint64) (*t.ChartData[int, float64], error) {
842+
ret := &t.ChartData[int, float64]{}
843843

844844
if len(groupIds) == 0 { // short circuit if no groups are selected
845845
return ret, nil
@@ -1018,11 +1018,11 @@ func (d *DataAccessService) GetValidatorDashboardSummaryChart(ctx context.Contex
10181018
for _, ts := range tsArray {
10191019
ret.Categories = append(ret.Categories, uint64(ts.Unix()))
10201020
}
1021-
ret.Series = make([]t.ChartSeries[int, *float64], 0, len(groupsArray))
1021+
ret.Series = make([]t.ChartSeries[int, float64], 0, len(groupsArray))
10221022

1023-
seriesMap := make(map[int64]*t.ChartSeries[int, *float64])
1023+
seriesMap := make(map[int64]*t.ChartSeries[int, float64])
10241024
for _, group := range groupsArray {
1025-
series := t.ChartSeries[int, *float64]{
1025+
series := t.ChartSeries[int, float64]{
10261026
Id: int(group),
10271027
Data: make([]*float64, 0, len(tsMap)),
10281028
}

backend/pkg/api/types/common.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -72,13 +72,13 @@ type PercentageDetails[T any] struct {
7272
MaxValue T `json:"max_value"`
7373
}
7474

75-
type ChartSeries[I int | string, D *float64 | float64 | decimal.Decimal] struct {
75+
type ChartSeries[I int | string, D float64 | decimal.Decimal] struct {
7676
Id I `json:"id"` // id may be a string or an int
7777
Property string `json:"property,omitempty" tstype:"'el' | 'cl'"` // for stacking bar charts
78-
Data []D `json:"data"` // y-axis values
78+
Data []*D `json:"data" tstype:"(D | null)[]"` // y-axis values
7979
}
8080

81-
type ChartData[I int | string, D *float64 | float64 | decimal.Decimal] struct {
81+
type ChartData[I int | string, D float64 | decimal.Decimal] struct {
8282
Categories []uint64 `json:"categories"` // x-axis
8383
Series []ChartSeries[I, D] `json:"series"`
8484
}

backend/pkg/api/types/validator_dashboard.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,7 @@ type VDBGroupSummaryData struct {
114114
}
115115
type GetValidatorDashboardGroupSummaryResponse ApiDataResponse[VDBGroupSummaryData]
116116

117-
type GetValidatorDashboardSummaryChartResponse ApiDataResponse[ChartData[int, *float64]] // line chart, series id is group id
117+
type GetValidatorDashboardSummaryChartResponse ApiDataResponse[ChartData[int, float64]] // line chart, series id is group id
118118

119119
// ------------------------------------------------------------
120120
// Summary Validators

frontend/types/api/common.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -59,12 +59,12 @@ export interface PercentageDetails<T extends any> {
5959
min_value: T;
6060
max_value: T;
6161
}
62-
export interface ChartSeries<I extends number /* int */ | string, D extends number /* float64 */ | undefined | number /* float64 */ | string /* decimal.Decimal */> {
62+
export interface ChartSeries<I extends number /* int */ | string, D extends number /* float64 */ | string /* decimal.Decimal */> {
6363
id: I; // id may be a string or an int
6464
property?: 'el' | 'cl'; // for stacking bar charts
65-
data: D[]; // y-axis values
65+
data: (D | null)[]; // y-axis values
6666
}
67-
export interface ChartData<I extends number /* int */ | string, D extends number /* float64 */ | undefined | number /* float64 */ | string /* decimal.Decimal */> {
67+
export interface ChartData<I extends number /* int */ | string, D extends number /* float64 */ | string /* decimal.Decimal */> {
6868
categories: number /* uint64 */[]; // x-axis
6969
series: ChartSeries<I, D>[];
7070
}

frontend/types/api/validator_dashboard.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ export interface VDBGroupSummaryData {
9494
};
9595
}
9696
export type GetValidatorDashboardGroupSummaryResponse = ApiDataResponse<VDBGroupSummaryData>;
97-
export type GetValidatorDashboardSummaryChartResponse = ApiDataResponse<ChartData<number /* int */, number /* float64 */ | undefined>>; // line chart, series id is group id
97+
export type GetValidatorDashboardSummaryChartResponse = ApiDataResponse<ChartData<number /* int */, number /* float64 */>>; // line chart, series id is group id
9898
/**
9999
* ------------------------------------------------------------
100100
* Summary Validators

0 commit comments

Comments
 (0)