added some missing grammar copy
This commit is contained in:
parent
d904c59d6a
commit
e7e5367595
5 changed files with 272 additions and 8 deletions
127
lib/pangea/enum/analytics/morph_categories_enum.dart
Normal file
127
lib/pangea/enum/analytics/morph_categories_enum.dart
Normal file
|
|
@ -0,0 +1,127 @@
|
||||||
|
// ignore_for_file: constant_identifier_names
|
||||||
|
|
||||||
|
import 'package:collection/collection.dart';
|
||||||
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:flutter_gen/gen_l10n/l10n.dart';
|
||||||
|
|
||||||
|
enum MorphologicalCategories {
|
||||||
|
Pos,
|
||||||
|
AdvType,
|
||||||
|
Aspect,
|
||||||
|
Case,
|
||||||
|
ConjType,
|
||||||
|
Definite,
|
||||||
|
Degree,
|
||||||
|
Evident,
|
||||||
|
Foreign,
|
||||||
|
Gender,
|
||||||
|
Mood,
|
||||||
|
NounType,
|
||||||
|
NumForm,
|
||||||
|
NumType,
|
||||||
|
Number,
|
||||||
|
NumberPsor,
|
||||||
|
Person,
|
||||||
|
Polarity,
|
||||||
|
Polite,
|
||||||
|
Poss,
|
||||||
|
PrepCase,
|
||||||
|
PronType,
|
||||||
|
PunctSide,
|
||||||
|
PunctType,
|
||||||
|
Reflex,
|
||||||
|
Tense,
|
||||||
|
VerbForm,
|
||||||
|
VerbType,
|
||||||
|
Voice,
|
||||||
|
}
|
||||||
|
|
||||||
|
extension MorphologicalCategoriesExtension on MorphologicalCategories {
|
||||||
|
/// Convert enum to string
|
||||||
|
String toShortString() {
|
||||||
|
return toString().split('.').last;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// Convert string to enum
|
||||||
|
static MorphologicalCategories? fromString(String category) {
|
||||||
|
return MorphologicalCategories.values.firstWhereOrNull(
|
||||||
|
(e) => e.toShortString() == category,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
String getDisplayCopy(BuildContext context) {
|
||||||
|
switch (this) {
|
||||||
|
case MorphologicalCategories.Pos:
|
||||||
|
return L10n.of(context)!.grammarCopyPOS;
|
||||||
|
case MorphologicalCategories.AdvType:
|
||||||
|
return L10n.of(context)!.grammarCopyADVTYPE;
|
||||||
|
case MorphologicalCategories.Aspect:
|
||||||
|
return L10n.of(context)!.grammarCopyASPECT;
|
||||||
|
case MorphologicalCategories.Case:
|
||||||
|
return L10n.of(context)!.grammarCopyCASE;
|
||||||
|
case MorphologicalCategories.ConjType:
|
||||||
|
return L10n.of(context)!.grammarCopyCONJTYPE;
|
||||||
|
case MorphologicalCategories.Definite:
|
||||||
|
return L10n.of(context)!.grammarCopyDEFINITE;
|
||||||
|
case MorphologicalCategories.Degree:
|
||||||
|
return L10n.of(context)!.grammarCopyDEGREE;
|
||||||
|
case MorphologicalCategories.Evident:
|
||||||
|
return L10n.of(context)!.grammarCopyEVIDENT;
|
||||||
|
case MorphologicalCategories.Foreign:
|
||||||
|
return L10n.of(context)!.grammarCopyFOREIGN;
|
||||||
|
case MorphologicalCategories.Gender:
|
||||||
|
return L10n.of(context)!.grammarCopyGENDER;
|
||||||
|
case MorphologicalCategories.Mood:
|
||||||
|
return L10n.of(context)!.grammarCopyMOOD;
|
||||||
|
case MorphologicalCategories.NounType:
|
||||||
|
return L10n.of(context)!.grammarCopyNOUNTYPE;
|
||||||
|
case MorphologicalCategories.NumForm:
|
||||||
|
return L10n.of(context)!.grammarCopyNUMFORM;
|
||||||
|
case MorphologicalCategories.NumType:
|
||||||
|
return L10n.of(context)!.grammarCopyNUMTYPE;
|
||||||
|
case MorphologicalCategories.Number:
|
||||||
|
return L10n.of(context)!.grammarCopyNUMBER;
|
||||||
|
case MorphologicalCategories.NumberPsor:
|
||||||
|
return L10n.of(context)!.grammarCopyNUMBERPSOR;
|
||||||
|
case MorphologicalCategories.Person:
|
||||||
|
return L10n.of(context)!.grammarCopyPERSON;
|
||||||
|
case MorphologicalCategories.Polarity:
|
||||||
|
return L10n.of(context)!.grammarCopyPOLARITY;
|
||||||
|
case MorphologicalCategories.Polite:
|
||||||
|
return L10n.of(context)!.grammarCopyPOLITE;
|
||||||
|
case MorphologicalCategories.Poss:
|
||||||
|
return L10n.of(context)!.grammarCopyPOSS;
|
||||||
|
case MorphologicalCategories.PrepCase:
|
||||||
|
return L10n.of(context)!.grammarCopyPREPCASE;
|
||||||
|
case MorphologicalCategories.PronType:
|
||||||
|
return L10n.of(context)!.grammarCopyPRONTYPE;
|
||||||
|
case MorphologicalCategories.PunctSide:
|
||||||
|
return L10n.of(context)!.grammarCopyPUNCTSIDE;
|
||||||
|
case MorphologicalCategories.PunctType:
|
||||||
|
return L10n.of(context)!.grammarCopyPUNCTTYPE;
|
||||||
|
case MorphologicalCategories.Reflex:
|
||||||
|
return L10n.of(context)!.grammarCopyREFLEX;
|
||||||
|
case MorphologicalCategories.Tense:
|
||||||
|
return L10n.of(context)!.grammarCopyTENSE;
|
||||||
|
case MorphologicalCategories.VerbForm:
|
||||||
|
return L10n.of(context)!.grammarCopyVERBFORM;
|
||||||
|
case MorphologicalCategories.VerbType:
|
||||||
|
return L10n.of(context)!.grammarCopyVERBTYPE;
|
||||||
|
case MorphologicalCategories.Voice:
|
||||||
|
return L10n.of(context)!.grammarCopyVOICE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
String? getMorphologicalCategoryCopy(
|
||||||
|
String categoryName,
|
||||||
|
BuildContext context,
|
||||||
|
) {
|
||||||
|
final MorphologicalCategories? category =
|
||||||
|
MorphologicalCategoriesExtension.fromString(categoryName);
|
||||||
|
|
||||||
|
if (category == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
return category.getDisplayCopy(context);
|
||||||
|
}
|
||||||
87
lib/pangea/enum/analytics/parts_of_speech_enum.dart
Normal file
87
lib/pangea/enum/analytics/parts_of_speech_enum.dart
Normal file
|
|
@ -0,0 +1,87 @@
|
||||||
|
import 'package:collection/collection.dart';
|
||||||
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:flutter_gen/gen_l10n/l10n.dart';
|
||||||
|
|
||||||
|
enum GrammarCopyPOS {
|
||||||
|
sconj,
|
||||||
|
num,
|
||||||
|
verb,
|
||||||
|
affix,
|
||||||
|
part,
|
||||||
|
adj,
|
||||||
|
cconj,
|
||||||
|
punct,
|
||||||
|
adv,
|
||||||
|
aux,
|
||||||
|
space,
|
||||||
|
sym,
|
||||||
|
det,
|
||||||
|
pron,
|
||||||
|
adp,
|
||||||
|
propn,
|
||||||
|
noun,
|
||||||
|
intj,
|
||||||
|
x,
|
||||||
|
}
|
||||||
|
|
||||||
|
extension GrammarCopyPOSExtension on GrammarCopyPOS {
|
||||||
|
/// Convert enum to string
|
||||||
|
String toShortString() {
|
||||||
|
return toString().split('.').last.toLowerCase();
|
||||||
|
}
|
||||||
|
|
||||||
|
GrammarCopyPOS? fromString(String categoryName) {
|
||||||
|
return GrammarCopyPOS.values.firstWhereOrNull(
|
||||||
|
(pos) => pos.toShortString() == categoryName.toLowerCase(),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
String getDisplayCopy(BuildContext context) {
|
||||||
|
switch (this) {
|
||||||
|
case GrammarCopyPOS.sconj:
|
||||||
|
return L10n.of(context)!.grammarCopyPOSsconj;
|
||||||
|
case GrammarCopyPOS.num:
|
||||||
|
return L10n.of(context)!.grammarCopyPOSnum;
|
||||||
|
case GrammarCopyPOS.verb:
|
||||||
|
return L10n.of(context)!.grammarCopyPOSverb;
|
||||||
|
case GrammarCopyPOS.affix:
|
||||||
|
return L10n.of(context)!.grammarCopyPOSaffix;
|
||||||
|
case GrammarCopyPOS.part:
|
||||||
|
return L10n.of(context)!.grammarCopyPOSpart;
|
||||||
|
case GrammarCopyPOS.adj:
|
||||||
|
return L10n.of(context)!.grammarCopyPOSadj;
|
||||||
|
case GrammarCopyPOS.cconj:
|
||||||
|
return L10n.of(context)!.grammarCopyPOScconj;
|
||||||
|
case GrammarCopyPOS.punct:
|
||||||
|
return L10n.of(context)!.grammarCopyPOSpunct;
|
||||||
|
case GrammarCopyPOS.adv:
|
||||||
|
return L10n.of(context)!.grammarCopyPOSadv;
|
||||||
|
case GrammarCopyPOS.aux:
|
||||||
|
return L10n.of(context)!.grammarCopyPOSaux;
|
||||||
|
case GrammarCopyPOS.space:
|
||||||
|
return L10n.of(context)!.grammarCopyPOSspace;
|
||||||
|
case GrammarCopyPOS.sym:
|
||||||
|
return L10n.of(context)!.grammarCopyPOSsym;
|
||||||
|
case GrammarCopyPOS.det:
|
||||||
|
return L10n.of(context)!.grammarCopyPOSdet;
|
||||||
|
case GrammarCopyPOS.pron:
|
||||||
|
return L10n.of(context)!.grammarCopyPOSpron;
|
||||||
|
case GrammarCopyPOS.adp:
|
||||||
|
return L10n.of(context)!.grammarCopyPOSadp;
|
||||||
|
case GrammarCopyPOS.propn:
|
||||||
|
return L10n.of(context)!.grammarCopyPOSpropn;
|
||||||
|
case GrammarCopyPOS.noun:
|
||||||
|
return L10n.of(context)!.grammarCopyPOSnoun;
|
||||||
|
case GrammarCopyPOS.intj:
|
||||||
|
return L10n.of(context)!.grammarCopyPOSintj;
|
||||||
|
case GrammarCopyPOS.x:
|
||||||
|
return L10n.of(context)!.grammarCopyPOSx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
String? getVocabCategoryName(String category, BuildContext context) {
|
||||||
|
return GrammarCopyPOS.values
|
||||||
|
.firstWhereOrNull((pos) => pos.toShortString() == category.toLowerCase())
|
||||||
|
?.getDisplayCopy(context);
|
||||||
|
}
|
||||||
|
|
@ -1,4 +1,7 @@
|
||||||
import 'package:fluffychat/pangea/constants/analytics_constants.dart';
|
import 'package:fluffychat/pangea/constants/analytics_constants.dart';
|
||||||
|
import 'package:fluffychat/pangea/enum/analytics/morph_categories_enum.dart';
|
||||||
|
import 'package:fluffychat/pangea/enum/analytics/parts_of_speech_enum.dart';
|
||||||
|
import 'package:flutter/material.dart';
|
||||||
|
|
||||||
enum ConstructTypeEnum {
|
enum ConstructTypeEnum {
|
||||||
grammar,
|
grammar,
|
||||||
|
|
@ -28,6 +31,17 @@ extension ConstructExtension on ConstructTypeEnum {
|
||||||
return AnalyticsConstants.morphUseMaxXP;
|
return AnalyticsConstants.morphUseMaxXP;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
String? getDisplayCopy(String category, BuildContext context) {
|
||||||
|
switch (this) {
|
||||||
|
case ConstructTypeEnum.morph:
|
||||||
|
return getMorphologicalCategoryCopy(category, context);
|
||||||
|
case ConstructTypeEnum.vocab:
|
||||||
|
return getVocabCategoryName(category, context);
|
||||||
|
default:
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class ConstructTypeUtil {
|
class ConstructTypeUtil {
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,5 @@
|
||||||
|
// ignore_for_file: constant_identifier_names
|
||||||
|
|
||||||
import 'dart:developer';
|
import 'dart:developer';
|
||||||
|
|
||||||
import 'package:fluffychat/pangea/utils/error_handler.dart';
|
import 'package:fluffychat/pangea/utils/error_handler.dart';
|
||||||
|
|
@ -6,15 +8,19 @@ import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_gen/gen_l10n/l10n.dart';
|
import 'package:flutter_gen/gen_l10n/l10n.dart';
|
||||||
|
|
||||||
/// Used on morph constructs
|
/// Used on morph constructs
|
||||||
String getGrammarCopy({
|
String? getGrammarCopy({
|
||||||
required String category,
|
required String category,
|
||||||
|
|
||||||
/// This is the tag / feature
|
/// This is the tag / feature
|
||||||
required String lemma,
|
required String lemma,
|
||||||
required BuildContext context,
|
required BuildContext context,
|
||||||
}) {
|
}) {
|
||||||
|
if (category.toLowerCase() == 'other') {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
final String key =
|
final String key =
|
||||||
'grammarCopy${category.toUpperCase()}${lemma.toLowerCase()}';
|
'grammarCopy${category.toUpperCase()}${lemma.replaceAll(",", "").toLowerCase()}';
|
||||||
|
|
||||||
switch (key) {
|
switch (key) {
|
||||||
case 'grammarCopyPOSsconj':
|
case 'grammarCopyPOSsconj':
|
||||||
|
|
@ -119,8 +125,16 @@ String getGrammarCopy({
|
||||||
return L10n.of(context)!.grammarCopyNUMBERplur;
|
return L10n.of(context)!.grammarCopyNUMBERplur;
|
||||||
case 'grammarCopyPRONTYPEnpr':
|
case 'grammarCopyPRONTYPEnpr':
|
||||||
return L10n.of(context)!.grammarCopyPRONTYPEnpr;
|
return L10n.of(context)!.grammarCopyPRONTYPEnpr;
|
||||||
|
case 'grammarCopyPRONTYPEprs':
|
||||||
|
return L10n.of(context)!.grammarCopyPRONTYPEprs;
|
||||||
|
case 'grammarCopyPRONTYPEind':
|
||||||
|
return L10n.of(context)!.grammarCopyPRONTYPEind;
|
||||||
case 'grammarCopyPRONTYPEinterrogative':
|
case 'grammarCopyPRONTYPEinterrogative':
|
||||||
return L10n.of(context)!.grammarCopyPRONTYPEinterrogative;
|
return L10n.of(context)!.grammarCopyPRONTYPEinterrogative;
|
||||||
|
case 'grammarCopyPRONTYPEart':
|
||||||
|
return L10n.of(context)!.grammarCopyPRONTYPEart;
|
||||||
|
case 'grammarCopyPRONTYPEtot':
|
||||||
|
return L10n.of(context)!.grammarCopyPRONTYPEtot;
|
||||||
case 'grammarCopyPOLITEinfm':
|
case 'grammarCopyPOLITEinfm':
|
||||||
return L10n.of(context)!.grammarCopyPOLITEinfm;
|
return L10n.of(context)!.grammarCopyPOLITEinfm;
|
||||||
case 'grammarCopyADVTYPEtim':
|
case 'grammarCopyADVTYPEtim':
|
||||||
|
|
@ -155,6 +169,8 @@ String getGrammarCopy({
|
||||||
return L10n.of(context)!.grammarCopyPRONTYPEdem;
|
return L10n.of(context)!.grammarCopyPRONTYPEdem;
|
||||||
case 'grammarCopyPREPCASEpre':
|
case 'grammarCopyPREPCASEpre':
|
||||||
return L10n.of(context)!.grammarCopyPREPCASEpre;
|
return L10n.of(context)!.grammarCopyPREPCASEpre;
|
||||||
|
case 'grammarCopyPREPCASEnpr':
|
||||||
|
return L10n.of(context)!.grammarCopyPREPCASEnpr;
|
||||||
case 'grammarCopyVERBFORMfin':
|
case 'grammarCopyVERBFORMfin':
|
||||||
return L10n.of(context)!.grammarCopyVERBFORMfin;
|
return L10n.of(context)!.grammarCopyVERBFORMfin;
|
||||||
case 'grammarCopyDEGREEpos':
|
case 'grammarCopyDEGREEpos':
|
||||||
|
|
@ -171,6 +187,8 @@ String getGrammarCopy({
|
||||||
return L10n.of(context)!.grammarCopyTENSEprs;
|
return L10n.of(context)!.grammarCopyTENSEprs;
|
||||||
case 'grammarCopyDEFINITEdef':
|
case 'grammarCopyDEFINITEdef':
|
||||||
return L10n.of(context)!.grammarCopyDEFINITEdef;
|
return L10n.of(context)!.grammarCopyDEFINITEdef;
|
||||||
|
case 'grammarCopyDEFINITEind':
|
||||||
|
return L10n.of(context)!.grammarCopyDEFINITEind;
|
||||||
case 'grammarCopyNUMTYPEord':
|
case 'grammarCopyNUMTYPEord':
|
||||||
return L10n.of(context)!.grammarCopyNUMTYPEord;
|
return L10n.of(context)!.grammarCopyNUMTYPEord;
|
||||||
case 'grammarCopyCASEins':
|
case 'grammarCopyCASEins':
|
||||||
|
|
@ -189,10 +207,14 @@ String getGrammarCopy({
|
||||||
return L10n.of(context)!.grammarCopyCASErelativeCase;
|
return L10n.of(context)!.grammarCopyCASErelativeCase;
|
||||||
case 'grammarCopyPUNCTTYPEexcl':
|
case 'grammarCopyPUNCTTYPEexcl':
|
||||||
return L10n.of(context)!.grammarCopyPUNCTTYPEexcl;
|
return L10n.of(context)!.grammarCopyPUNCTTYPEexcl;
|
||||||
|
case 'rammarCopyPUNCTTYPEperi':
|
||||||
|
return L10n.of(context)!.grammarCopyPUNCTTYPEperi;
|
||||||
case 'grammarCopyPERSON1':
|
case 'grammarCopyPERSON1':
|
||||||
return L10n.of(context)!.grammarCopyPERSON1;
|
return L10n.of(context)!.grammarCopyPERSON1;
|
||||||
case 'grammarCopyPUNCTSIDEini':
|
case 'grammarCopyPUNCTSIDEini':
|
||||||
return L10n.of(context)!.grammarCopyPUNCTSIDEini;
|
return L10n.of(context)!.grammarCopyPUNCTSIDEini;
|
||||||
|
case 'grammarCopyPUNCTSIDEfin':
|
||||||
|
return L10n.of(context)!.grammarCopyPUNCTSIDEfin;
|
||||||
case 'grammarCopyGENDERperson':
|
case 'grammarCopyGENDERperson':
|
||||||
return L10n.of(context)!.grammarCopyGENDERperson;
|
return L10n.of(context)!.grammarCopyGENDERperson;
|
||||||
case 'grammarCopyFOREIGNyes':
|
case 'grammarCopyFOREIGNyes':
|
||||||
|
|
@ -203,6 +225,8 @@ String getGrammarCopy({
|
||||||
return L10n.of(context)!.grammarCopyVERBTYPEverbType;
|
return L10n.of(context)!.grammarCopyVERBTYPEverbType;
|
||||||
case 'grammarCopyPOSSpass':
|
case 'grammarCopyPOSSpass':
|
||||||
return L10n.of(context)!.grammarCopyPOSSpass;
|
return L10n.of(context)!.grammarCopyPOSSpass;
|
||||||
|
case 'grammarCopyPOSSyes':
|
||||||
|
return L10n.of(context)!.grammarCopyPOSSyes;
|
||||||
case 'grammarCopyPREPCASEprepCase':
|
case 'grammarCopyPREPCASEprepCase':
|
||||||
return L10n.of(context)!.grammarCopyPREPCASEprepCase;
|
return L10n.of(context)!.grammarCopyPREPCASEprepCase;
|
||||||
case 'grammarCopyNUMTYPEnumType':
|
case 'grammarCopyNUMTYPEnumType':
|
||||||
|
|
@ -259,6 +283,8 @@ String getGrammarCopy({
|
||||||
return L10n.of(context)!.grammarCopyGENDERcom;
|
return L10n.of(context)!.grammarCopyGENDERcom;
|
||||||
case 'grammarCopyREFLEXrflx':
|
case 'grammarCopyREFLEXrflx':
|
||||||
return L10n.of(context)!.grammarCopyREFLEXrflx;
|
return L10n.of(context)!.grammarCopyREFLEXrflx;
|
||||||
|
case 'grammarCopyREFLEXyes':
|
||||||
|
return L10n.of(context)!.grammarCopyREFLEXyes;
|
||||||
case 'grammarCopyPARTTYPEpar':
|
case 'grammarCopyPARTTYPEpar':
|
||||||
return L10n.of(context)!.grammarCopyPARTTYPEpar;
|
return L10n.of(context)!.grammarCopyPARTTYPEpar;
|
||||||
case 'grammarCopySPCspc':
|
case 'grammarCopySPCspc':
|
||||||
|
|
@ -377,6 +403,8 @@ String getGrammarCopy({
|
||||||
return L10n.of(context)!.grammarCopyPRONTYPEexc;
|
return L10n.of(context)!.grammarCopyPRONTYPEexc;
|
||||||
case 'grammarCopyPRONTYPErcp':
|
case 'grammarCopyPRONTYPErcp':
|
||||||
return L10n.of(context)!.grammarCopyPRONTYPErcp;
|
return L10n.of(context)!.grammarCopyPRONTYPErcp;
|
||||||
|
case 'grammarCopyPRONTYPEintrel':
|
||||||
|
return L10n.of(context)!.grammarCopyPRONTYPEintrel;
|
||||||
case 'grammarCopyPRONTYPEintRelPronType':
|
case 'grammarCopyPRONTYPEintRelPronType':
|
||||||
return L10n.of(context)!.grammarCopyPRONTYPEintRelPronType;
|
return L10n.of(context)!.grammarCopyPRONTYPEintRelPronType;
|
||||||
case 'grammarCopyTENSEaor':
|
case 'grammarCopyTENSEaor':
|
||||||
|
|
@ -385,6 +413,8 @@ String getGrammarCopy({
|
||||||
return L10n.of(context)!.grammarCopyTENSEeps;
|
return L10n.of(context)!.grammarCopyTENSEeps;
|
||||||
case 'grammarCopyTENSEprosp':
|
case 'grammarCopyTENSEprosp':
|
||||||
return L10n.of(context)!.grammarCopyTENSEprosp;
|
return L10n.of(context)!.grammarCopyTENSEprosp;
|
||||||
|
case 'grammarCopyTENSEimp':
|
||||||
|
return L10n.of(context)!.grammarCopyTENSEimp;
|
||||||
case 'grammarCopyVERBFORMpart':
|
case 'grammarCopyVERBFORMpart':
|
||||||
return L10n.of(context)!.grammarCopyVERBFORMpart;
|
return L10n.of(context)!.grammarCopyVERBFORMpart;
|
||||||
case 'grammarCopyVERBFORMconv':
|
case 'grammarCopyVERBFORMconv':
|
||||||
|
|
|
||||||
|
|
@ -66,8 +66,13 @@ class AnalyticsPopup extends StatelessWidget {
|
||||||
return Column(
|
return Column(
|
||||||
children: [
|
children: [
|
||||||
ExpansionTile(
|
ExpansionTile(
|
||||||
// GABBY TODO switch back to getGrammarCopy once it's updated
|
title: Text(
|
||||||
title: Text(category.key),
|
category.value.first.constructType.getDisplayCopy(
|
||||||
|
category.key,
|
||||||
|
context,
|
||||||
|
) ??
|
||||||
|
category.key,
|
||||||
|
),
|
||||||
children: category.value.map((constructUses) {
|
children: category.value.map((constructUses) {
|
||||||
return ConstructUsesXPTile(
|
return ConstructUsesXPTile(
|
||||||
indicator: indicator,
|
indicator: indicator,
|
||||||
|
|
@ -131,10 +136,11 @@ class ConstructUsesXPTile extends StatelessWidget {
|
||||||
title: Text(
|
title: Text(
|
||||||
constructsModel.type == ConstructTypeEnum.morph
|
constructsModel.type == ConstructTypeEnum.morph
|
||||||
? getGrammarCopy(
|
? getGrammarCopy(
|
||||||
category: constructUses.category,
|
category: constructUses.category,
|
||||||
lemma: constructUses.lemma,
|
lemma: constructUses.lemma,
|
||||||
context: context,
|
context: context,
|
||||||
)
|
) ??
|
||||||
|
constructUses.lemma
|
||||||
: constructUses.lemma,
|
: constructUses.lemma,
|
||||||
),
|
),
|
||||||
subtitle: Row(
|
subtitle: Row(
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue