import 'dart:io'; import 'package:jadb/table_names/radkfile.dart'; import 'package:sqflite_common/sqlite_api.dart'; Future seedRADKFILEData(Iterable blocks, Database db) async { final b = db.batch(); if (Platform.environment['RADKFILE_VERSION'] != null && Platform.environment['RADKFILE_DATE'] != null && Platform.environment['RADKFILE_HASH'] != null) { b.insert(RADKFILETableNames.version, { 'version': Platform.environment['RADKFILE_VERSION']!, 'date': Platform.environment['RADKFILE_DATE']!, 'hash': Platform.environment['RADKFILE_HASH']!, }); } else { print( 'WARNING: RADKFILE version information not found in environment variables. ' 'This may cause issues with future updates.', ); } for (final block in blocks) { final String radical = block[1]; final List kanjiList = block.replaceFirst(RegExp(r'.*\n'), '').split('') ..removeWhere((e) => e == '' || e == '\n'); for (final kanji in kanjiList.toSet()) { b.insert(RADKFILETableNames.radkfile, { 'radical': radical, 'kanji': kanji, }); } } await b.commit(noResult: true); }