repositoryImpl static method
Implementation
static String repositoryImpl(String projectName, String feature) {
final pascal = StringUtils.toPascalCase(feature);
return '''
import 'package:dartz/dartz.dart';
import 'package:$projectName/core/error/failures.dart';
import 'package:$projectName/features/$feature/domain/entities/${feature}_entity.dart';
import 'package:$projectName/features/$feature/domain/repositories/${feature}_repository.dart';
class ${pascal}RepositoryImpl implements ${pascal}Repository {
@override
Future<Either<Failure, ${pascal}Entity>> get$pascal() async {
// TODO: replace this stub with a real data source (Dio, local DB, etc.).
try {
return const Right(${pascal}Entity(id: 'placeholder'));
} catch (e) {
return Left(ServerFailure(e.toString()));
}
}
}
''';
}