extensionsKeyValueGenerator function

FigGenerator extensionsKeyValueGenerator({
  1. List<String>? values,
})

Implementation

FigGenerator extensionsKeyValueGenerator({List<String>? values}) {
  return FigGenerator(
    script: [
      'bash',
      '-c',
      "find . -depth 3 -type f -name '*.*' -not -path '*/node_modules/*' | sed 's/.*\\.//' | sort -u"
    ],
    postProcess: (String out, [List<String>? tokens]) {
      final lines = out.split('\n');
      final suggestions = <FigSuggestion>[];
      for (final line in lines) {
        final ext = line.trim();
        if (ext.isEmpty || ignoreExtensions.contains(ext)) continue;
        final key = '.$ext';
        if (values != null && values.isNotEmpty) {
          for (final val in values) {
            suggestions
                .add(FigSuggestion(name: '$key=$val', icon: esbuildIcon));
          }
        } else {
          suggestions.add(FigSuggestion(name: '$key=', icon: esbuildIcon));
        }
      }
      return suggestions;
    },
    cache: const FigCache(strategy: 'stale-while-revalidate'),
  );
}