resolve method
Resolves the imports required by the provided configuration.
Implementation
Future<List<String>> resolve(
{required GeneratorContext context, required String outputFile}) async {
final imports = <String>{};
final di = context.template.di;
for (final folder in di.imports) {
final directory = Directory('${context.featurePath}/$folder');
if (!directory.existsSync()) continue;
final files = directory
.listSync(recursive: false)
.whereType<File>()
.where((file) => _isValid(file, di.ignore))
.toList()
..sort((a, b) => a.path.compareTo(b.path));
for (final file in files) {
imports.add(PathUtils.relativeImport(from: outputFile, to: file.path));
}
}
return imports.toList()..sort();
}