Skip to content

Instantly share code, notes, and snippets.

@VB10
Last active December 1, 2024 12:12
Show Gist options
  • Save VB10/0698c7dd8f24234bdf18082b109cc343 to your computer and use it in GitHub Desktop.
Save VB10/0698c7dd8f24234bdf18082b109cc343 to your computer and use it in GitHub Desktop.
class BaseFirebaseModel<T> {
final String id;
final T? data;
BaseFirebaseModel({
required this.id,
required this.data,
});
}
mixin FirebaseServiceManager {
Future<List<BaseFirebaseModel<T>>?> getResponseList<T>(
Future<FirestoreQuerySnapshot<FirestoreDocumentSnapshot>> reference) async {
try {
final response = await reference;
return response.docs.map((e) {
return BaseFirebaseModel<T>(id: e.id, data: e.data is T ? (e.data as T) : null);
}).toList();
} catch (e) {
LoggerUtility.error('$e');
return null;
}
}
}
//example getResponseList<VotCategoryModel>(categoryFirebaseReferance.get());
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment