getHeader method
Implementation
Future<List<FieldDefinition>> getHeader() async {
final cancellationSignal = Completer();
final stream = streamRecordsThroughFile(
resourceFile,
fieldDefinitions,
LoadCriterion.passAll(),
cancellationSignal: cancellationSignal,
);
final rawHeader = await stream.first;
cancellationSignal.complete();
return rawHeader
.map(
(e) => fieldDefinitions.firstWhere(
(element) => element.name == e,
orElse: () => FieldDefinition<Object>(
e ?? 'unnamed_field',
(dataset, header, records) => null,
type: TextFieldType(),
),
),
)
.toList(growable: false);
}