lib/search/kanji: make taughtIn into int?

This commit is contained in:
2025-05-19 20:05:38 +02:00
parent 2875f7a65f
commit 73640d01f6
2 changed files with 4 additions and 20 deletions

View File

@@ -7,7 +7,8 @@ class KanjiSearchResult extends Equatable {
final String kanji;
/// The school level that the kanji is taught in, if applicable.
final String? taughtIn;
/// Ranges from `1` to `10` (except 7)
final int? taughtIn;
/// The lowest JLPT exam that this kanji is likely to appear in, if applicable.
///
@@ -121,10 +122,6 @@ class KanjiSearchResult extends Equatable {
// 'kunyomiExamples': kunyomiExamples,
'radical': radical?.toJson(),
'parts': parts,
// 'strokeOrderDiagramUri': strokeOrderDiagramUri,
// 'strokeOrderSvgUri': strokeOrderSvgUri,
// 'strokeOrderGifUri': strokeOrderGifUri,
// 'uri': uri,
'codepoints': codepoints,
'nanori': nanori,
'alternativeLanguageReadings': alternativeLanguageReadings,
@@ -136,7 +133,7 @@ class KanjiSearchResult extends Equatable {
factory KanjiSearchResult.fromJson(Map<String, dynamic> json) {
return KanjiSearchResult(
kanji: json['kanji'] as String,
taughtIn: json['taughtIn'] as String?,
taughtIn: json['taughtIn'] as int?,
jlptLevel: json['jlptLevel'] as String?,
newspaperFrequencyRank: json['newspaperFrequencyRank'] as int?,
strokeCount: json['strokeCount'] as int,

View File

@@ -179,19 +179,6 @@ Future<KanjiSearchResult?> searchKanjiWithDbConnection(
entry['type'] as String: entry['ref'] as String,
};
final String? grade = {
1: 'grade 1',
2: 'grade 2',
3: 'grade 3',
4: 'grade 4',
5: 'grade 5',
6: 'grade 6',
7: 'grade 7',
8: 'grade 8',
9: 'grade 9',
10: 'grade 10',
}[entry['grade'] as int?];
final String? jlptLevel = {
5: 'N5',
4: 'N4',
@@ -202,7 +189,7 @@ Future<KanjiSearchResult?> searchKanjiWithDbConnection(
return KanjiSearchResult(
kanji: entry['literal']! as String,
taughtIn: grade,
taughtIn: entry['grade'] as int?,
jlptLevel: jlptLevel,
newspaperFrequencyRank: entry['frequency'] as int?,
strokeCount: entry['strokeCount'] as int,