loadPluginsFromDir function
Load plugins from a directory.
Implementation
Future<List<LoadedPlugin>> loadPluginsFromDir(String dirPath) async {
final dir = Directory(dirPath);
if (!await dir.exists()) return const [];
final plugins = <LoadedPlugin>[];
await for (final entity in dir.list()) {
if (entity is! Directory) continue;
try {
final plugin = await _loadPlugin(entity.path);
if (plugin != null) plugins.add(plugin);
} catch (_) {
// Skip invalid plugins
}
}
return plugins;
}