remoteSourceTemplate function

String remoteSourceTemplate(
  1. String feature,
  2. String pascal
)

Implementation

String remoteSourceTemplate(String feature, String pascal) => '''
import '../../../../core/network/api_client.dart';
import '../${feature}_repository_impl.dart';

class ${pascal}RemoteSourceImpl implements ${pascal}RemoteSource {
  final ApiClient _client;
  ${pascal}RemoteSourceImpl({required ApiClient client}) : _client = client;

  @override
  Future<Map<String, dynamic>> fetchById(String id) async {
    final json = await _client.get('/${feature}s/\$id');
    return json as Map<String, dynamic>;
  }

  @override
  Future<List<Map<String, dynamic>>> fetchAll() async {
    final json = await _client.get('/${feature}s');
    return (json as List).map((e) => e as Map<String, dynamic>).toList();
  }
}
''';