build method
Generates the outputs for a given BuildStep.
Implementation
@override
Future<void> build(BuildStep buildStep) async {
final now = DateTime.now();
await initAssets(buildStep);
options.config.entries
.where((element) => element.value is String)
.forEach((e) {
map[e.key] = e.value as String;
});
var g = GLParser(
typeMap: map,
generateAllFieldsFragments:
options.config["generateAllFieldsFragments"] as bool? ?? false,
nullableFieldsRequired:
options.config["nullableFieldsRequired"] as bool? ?? false,
autoGenerateQueries:
options.config["autoGenerateQueries"] as bool? ?? false,
defaultAlias: options.config["defaultAlias"],
operationNameAsParameter:
options.config["operationNameAsParameter"] as bool? ?? false,
identityFields:
(options.config["identityFields"] as YamlList?)?.cast<String>() ?? [],
);
var schema = await readSchema(buildStep);
g.parse(schema);
await generateDartClientClasses(
g,
GeneratorConfig(
schemaPaths: [],
mode: "client",
identityFields: g.identityFields,
typeMappings: map,
outputDir: outputDir),
now);
}