generateDataSource method
Implementation
String generateDataSource(String name) {
final className = toPascalCase(name);
return '''
import '../models/${toSnakeCase(name)}_model.dart';
abstract class ${className}RemoteDataSource {
Future<List<${className}Model>> getAll();
Future<${className}Model?> getById(String id);
Future<${className}Model> create(${className}Model model);
Future<${className}Model> update(${className}Model model);
Future<void> delete(String id);
}
class ${className}RemoteDataSourceImpl implements ${className}RemoteDataSource {
const ${className}RemoteDataSourceImpl();
@override
Future<List<${className}Model>> getAll() async {
// TODO: Implement API call
throw UnimplementedError('getAll() not implemented');
}
@override
Future<${className}Model?> getById(String id) async {
// TODO: Implement API call
throw UnimplementedError('getById() not implemented');
}
@override
Future<${className}Model> create(${className}Model model) async {
// TODO: Implement API call
throw UnimplementedError('create() not implemented');
}
@override
Future<${className}Model> update(${className}Model model) async {
// TODO: Implement API call
throw UnimplementedError('update() not implemented');
}
@override
Future<void> delete(String id) async {
// TODO: Implement API call
throw UnimplementedError('delete() not implemented');
}
}
''';
}