38 lines
941 B
Dart
38 lines
941 B
Dart
import '../models/common_model.dart';
|
|
|
|
List<T> convertList<T>(
|
|
dynamic data,
|
|
T Function(Map<String, dynamic>) fromJson,
|
|
) {
|
|
if (data is List) {
|
|
return data.map((item) => fromJson(item as Map<String, dynamic>)).toList();
|
|
}
|
|
throw FormatException(
|
|
'Expected a list of items for conversion, but got ${data.runtimeType}',
|
|
);
|
|
}
|
|
|
|
List<String> convertStringList(dynamic data) {
|
|
if (data is List) {
|
|
return data.map((item) => item.toString()).toList();
|
|
}
|
|
throw FormatException(
|
|
'Expected a list of items for conversion, but got ${data.runtimeType}',
|
|
);
|
|
}
|
|
|
|
PageResult<T> convertPage<T>(
|
|
dynamic data,
|
|
T Function(Map<String, dynamic>) fromJson,
|
|
) {
|
|
if (data is Map<String, dynamic>) {
|
|
return PageResult<T>.fromJson(
|
|
data,
|
|
(json) => fromJson(json as Map<String, dynamic>),
|
|
);
|
|
}
|
|
throw FormatException(
|
|
'Expected a Map for page response conversion, but got ${data.runtimeType}',
|
|
);
|
|
}
|