listTidbDataServicePages function
Future<List<Map<String, dynamic> > >
listTidbDataServicePages(
- TidbCloudManagementApi api,
- String path,
- String listKey
Lists every page from a TiDB Data Service collection.
Implementation
Future<List<Map<String, dynamic>>> listTidbDataServicePages(
TidbCloudManagementApi api,
String path,
String listKey,
) async {
final items = <Map<String, dynamic>>[];
String? pageToken;
do {
final response = await api.dataService(
"GET",
path,
query: {
"pageSize": "100",
if (pageToken != null) "pageToken": pageToken,
},
);
final values = response[listKey];
if (values is List) {
items.addAll(
values.whereType<Map>().map(
(value) => value.map(
(key, item) => MapEntry(key.toString(), item),
),
),
);
}
final next = response["nextPageToken"]?.toString() ?? "";
pageToken = next.isEmpty ? null : next;
} while (pageToken != null);
return items;
}