You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
74 lines
2.4 KiB
Dart
74 lines
2.4 KiB
Dart
// import 'dart:convert';
|
|
// import 'dart:io';
|
|
//
|
|
// void main() async {
|
|
// final file = File('assets/json/body_symptoms_data.json');
|
|
// final content = await file.readAsString();
|
|
//
|
|
// print('File size: ${content.length} characters');
|
|
//
|
|
// // Split into two parts
|
|
// final parts = content.split('export const SymptomsData = [');
|
|
// if (parts.length != 2) {
|
|
// print('ERROR: Could not split file properly');
|
|
// exit(1);
|
|
// }
|
|
//
|
|
// print('Split into ${parts.length} parts');
|
|
//
|
|
// // Process BodySymptomsData
|
|
// var bodyPart = parts[0]
|
|
// .replaceAll('export const BodySymptomsData = ', '')
|
|
// .trim()
|
|
// .replaceAll(RegExp(r';$'), '');
|
|
//
|
|
// print('Parsing body symptoms...');
|
|
// Map<String, dynamic> bodySymptomsData;
|
|
// try {
|
|
// bodySymptomsData = json.decode(bodyPart);
|
|
// print('✅ Body symptoms parsed: ${bodySymptomsData.length} body parts');
|
|
// } catch (e) {
|
|
// print('❌ Error parsing body symptoms: $e');
|
|
// exit(1);
|
|
// }
|
|
//
|
|
// // Process SymptomsData
|
|
// print('Processing symptoms data...');
|
|
// var symptomsPart = parts[1]
|
|
// .trim()
|
|
// .replaceAll(RegExp(r'\];$'), '')
|
|
// .replaceAllMapped(RegExp(r'\n(\s*)id:'), (m) => '\n${m.group(1)}"id":')
|
|
// .replaceAllMapped(RegExp(r'\n(\s*)type:'), (m) => '\n${m.group(1)}"type":')
|
|
// .replaceAllMapped(RegExp(r'\n(\s*)name:'), (m) => '\n${m.group(1)}"name":')
|
|
// .replaceAllMapped(RegExp(r'\n(\s*)common_name:'), (m) => '\n${m.group(1)}"common_name":');
|
|
//
|
|
// print('Parsing symptoms...');
|
|
// List<dynamic> symptomsData;
|
|
// try {
|
|
// symptomsData = json.decode('[$symptomsPart]');
|
|
// print('✅ Symptoms parsed: ${symptomsData.length} symptoms');
|
|
// } catch (e) {
|
|
// print('❌ Error parsing symptoms: $e');
|
|
// print('First 1000 chars:');
|
|
// print('[$symptomsPart]'.substring(0, 1000));
|
|
// exit(1);
|
|
// }
|
|
//
|
|
// // Create final JSON
|
|
// print('Creating final JSON structure...');
|
|
// final jsonStructure = {
|
|
// 'bodySymptoms': bodySymptomsData,
|
|
// 'symptoms': symptomsData,
|
|
// };
|
|
//
|
|
// // Write to file
|
|
// print('Writing to file...');
|
|
// final encoder = JsonEncoder.withIndent(' ');
|
|
// await file.writeAsString(encoder.convert(jsonStructure));
|
|
//
|
|
// print('\n✅ SUCCESS! File converted to proper JSON');
|
|
// print('✅ Body parts: ${bodySymptomsData.length}');
|
|
// print('✅ Symptoms: ${symptomsData.length}');
|
|
// }
|
|
//
|