generateDictionary function

void generateDictionary()

Implementation

void generateDictionary() {
  final file = File('./lume_icons.dart');
  final lines = file.readAsLinesSync();
  final regex = RegExp(r'static const IconData (\w+) = IconData');

  final buffer = StringBuffer();
  buffer.writeln('import \'package:flutter/material.dart\';');

  buffer.writeln('import \'lume_icons.dart\';');
  buffer.writeln();

  buffer.writeln('const Map<String, IconData> dictionary = {');

  for (var line in lines) {
    final match = regex.firstMatch(line);
    if (match != null) {
      final iconName = match.group(1);
      buffer.writeln("  '$iconName': LumeIcons.$iconName,");
    }
  }

  buffer.writeln('};');

  final outputFile = File('./list.dart');
  outputFile.writeAsStringSync(buffer.toString());
}