getGlobalPackagesGenerator top-level property
Implementation
final FigGenerator getGlobalPackagesGenerator = FigGenerator(
script: ['bash', '-c', 'cat "\$(yarn global dir)/package.json"'],
postProcess: (String out, [List<String>? tokens]) {
if (out.trim().isEmpty) return <FigSuggestion>[];
try {
final packageContent = jsonDecode(out) as Map<String, dynamic>;
final dependencyScripts =
packageContent['dependencies'] as Map<String, dynamic>? ?? {};
final devDependencyScripts =
packageContent['devDependencies'] as Map<String, dynamic>? ?? {};
final dependencies = <String>[];
dependencies.addAll(dependencyScripts.keys);
dependencies.addAll(devDependencyScripts.keys);
final tokenSet = tokens ?? [];
final filteredDependencies = dependencies
.where((dependency) => !tokenSet.contains(dependency))
.toList();
return filteredDependencies
.map((dependencyName) => FigSuggestion(
name: dependencyName,
icon: '📦',
))
.toList();
} catch (e) {
return <FigSuggestion>[];
}
},
);