main function
Implementation
void main(List<String> arguments) {
final parser = ArgParser()..addOption(PATH_ARGUMENT_NAME, abbr: 'p');
var argResults = parser.parse(arguments);
String? path = argResults[PATH_ARGUMENT_NAME];
if (path != null) {
print(path);
var directory = Directory(path);
if (directory.existsSync()) {
var allLines = getAllLines(path);
allLines = removeComments(allLines);
var allLinesString = allLines.join('\n');
var flutterSdkWidgetProcessor = FlutterSdkWidgetProcessor(
sdkLocation: FLUTTER_SDK_LOCATION,
selfJsonSerialization: true,
);
var rawWidgets = flutterSdkWidgetProcessor.process();
var djNamesMap = getDjNamesMap(rawWidgets, includeVariants: true);
var allDjNames = djNamesMap.values.toList();
var requiredDjNames = <String>[];
allDjNames.forEach((djName) {
if (allLinesString.contains(djName)) {
requiredDjNames.add(djName);
}
});
print('requiredDjNames $requiredDjNames ${requiredDjNames.length}');
rawWidgets.removeWhere(
(rawWidget) => !requiredDjNames.contains(rawWidget.widgetDjName));
writeRawWidgets(rawWidgets, djNamesMap, path, DJS_DIRECTORY_NAME);
} else {
print('$path not found! Please make sure correct path is provided');
}
} else {
print('Please provide path Argument by -p or --path');
}
}