Skip to content

Commit 892f9ef

Browse files
Add logic to prefer axiosRepsonse.data.rowCount over resultObject.length if available in paged result, otherwise, retains default behavior of using length property
1 parent 1f898fb commit 892f9ef

1 file changed

Lines changed: 9 additions & 4 deletions

File tree

src/utilities/service-utils.ts

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -123,19 +123,24 @@ const _mapPagedAxiosResponse = <TRecord>(
123123
if (axiosResponse == null) {
124124
return null!;
125125
}
126-
const data = axiosResponse.data;
126+
const { data } = axiosResponse;
127127

128128
// Ensure result data is wrapped within records
129129
let resultObjects;
130+
let rowCount = 0;
130131
if (data?.resultObject?.length != null && data.resultObject.length > 0) {
131-
resultObjects = data.resultObject.map((r) => new recordType(r));
132-
data.resultObject = resultObjects;
132+
resultObjects = data.resultObject.map((r: any) => new recordType(r));
133+
rowCount = resultObjects.length;
134+
}
135+
136+
if (data.rowCount != null) {
137+
rowCount = data.rowCount;
133138
}
134139

135140
return {
136141
results: new ResultRecord<TRecord[]>(data),
137142
resultObjects: resultObjects,
138-
rowCount: data?.resultObject?.length ?? 0,
143+
rowCount: rowCount,
139144
status: axiosResponse.status,
140145
};
141146
};

0 commit comments

Comments
 (0)