exportToJson function

void exportToJson(
  1. Map<String, ConstInfo> constants,
  2. List<UiStringInfo> uiStrings
)

/////////////////////////////////////////////////////////// EXPORT ///////////////////////////////////////////////////////////

Implementation

void exportToJson(
    Map<String, ConstInfo> constants,
    List<UiStringInfo> uiStrings,
    ) {
  final data = {
    "constants": constants.map((k, v) => MapEntry(k, {
      "value": v.value,
      "declaredIn": v.declaredIn,
      "usages": v.usages.toSet().toList(),
    })),
    "ui_strings": uiStrings
        .map((e) => {
      "value": e.value,
      "file": e.file,
      "line": e.line,
      "column": e.column,
    })
        .toList(),
  };

  File('analysis_output.json')
      .writeAsStringSync(JsonEncoder.withIndent('  ').convert(data));

  print("📁 Exported to analysis_output.json");
}