source method

  1. @override
String source(
  1. String className,
  2. String package,
  3. String? model
)

Implementation

@override
String source(String className, String package, String? model) =>
    model == null
    ? '''
import 'package:daravel_excel/daravel_excel.dart';

final class $className with WithHeadingRow implements ToCollection {
/// Every row, keyed by its heading: `rows.first['column_heading']`.
@override
Future<void> collection(List<Map<String, Object?>> rows) async {}
}
'''
    : '''
import 'package:daravel/daravel.dart';
import 'package:daravel_excel/daravel_excel.dart';
import 'package:$package/app/models/${Naming.snake(model)}.dart';

final class $className with WithHeadingRow implements ToModel, WithValidation {
@override
Model? model(Map<String, Object?> row) =>
    $model.definition.newInstance({'name': row['name']});

@override
Map<String, Object> rules() => {'name': 'required'};
}
''';