resolveGenerator method
ResolvedGeneratorConfig
resolveGenerator(
- LoadedSchemaDocument loaded, {
- String? generatorName,
- String expectedProvider = 'comon_orm',
- String fallbackOutputPath = 'lib/generated/comon_orm_client.dart',
Resolves generator settings for a loaded schema.
Implementation
ResolvedGeneratorConfig resolveGenerator(
LoadedSchemaDocument loaded, {
String? generatorName,
String expectedProvider = 'comon_orm',
String fallbackOutputPath = 'lib/generated/comon_orm_client.dart',
}) {
final generator = _selectGenerator(loaded.schema, generatorName);
if (generator == null) {
return ResolvedGeneratorConfig(
name: generatorName ?? 'client',
provider: expectedProvider,
outputPath: _resolveRelativePath(loaded.filePath, fallbackOutputPath),
wasDeclared: false,
);
}
final provider = _resolveScalarValue(
generator.properties['provider'],
propertyName: 'generator ${generator.name}.provider',
);
if (provider != expectedProvider) {
throw FormatException(
'Generator "${generator.name}" uses provider "$provider", expected "$expectedProvider".',
);
}
final rawOutput = generator.properties['output'];
final outputPath = rawOutput == null || rawOutput.trim().isEmpty
? _resolveRelativePath(loaded.filePath, fallbackOutputPath)
: _resolveGeneratorOutputPath(loaded.filePath, rawOutput);
return ResolvedGeneratorConfig(
name: generator.name,
provider: provider,
outputPath: outputPath,
wasDeclared: true,
);
}