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.
fluffychat/lib/pangea/utils/grammar/get_grammar_copy.dart

468 lines
19 KiB
Dart

// ignore_for_file: constant_identifier_names
import 'dart:developer';
import 'package:fluffychat/pangea/utils/error_handler.dart';
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
import 'package:flutter_gen/gen_l10n/l10n.dart';
/// Used on morph constructs
String? getGrammarCopy({
required String category,
/// This is the tag / feature
required String lemma,
required BuildContext context,
}) {
if (category.toLowerCase() == "other") {
return null;
}
final String key =
'grammarCopy${category.replaceAll(RegExp(r'[,\[\]]'), '').toUpperCase()}${lemma.replaceAll(RegExp(r'[,\[\]]'), '').toLowerCase()}';
switch (key) {
case 'grammarCopyPOSsconj':
return L10n.of(context)!.grammarCopyPOSsconj;
case 'grammarCopyPOSnum':
return L10n.of(context)!.grammarCopyPOSnum;
case 'grammarCopyPOSverb':
return L10n.of(context)!.grammarCopyPOSverb;
case 'grammarCopyPOSaffix':
return L10n.of(context)!.grammarCopyPOSaffix;
case 'grammarCopyPOSpart':
return L10n.of(context)!.grammarCopyPOSpart;
case 'grammarCopyPOSadj':
return L10n.of(context)!.grammarCopyPOSadj;
case 'grammarCopyPOScconj':
return L10n.of(context)!.grammarCopyPOScconj;
case 'grammarCopyPOSpunct':
return L10n.of(context)!.grammarCopyPOSpunct;
case 'grammarCopyPOSadv':
return L10n.of(context)!.grammarCopyPOSadv;
case 'grammarCopyPOSaux':
return L10n.of(context)!.grammarCopyPOSaux;
case 'grammarCopyPOSspace':
return L10n.of(context)!.grammarCopyPOSspace;
case 'grammarCopyPOSsym':
return L10n.of(context)!.grammarCopyPOSsym;
case 'grammarCopyPOSdet':
return L10n.of(context)!.grammarCopyPOSdet;
case 'grammarCopyPOSpron':
return L10n.of(context)!.grammarCopyPOSpron;
case 'grammarCopyPOSadp':
return L10n.of(context)!.grammarCopyPOSadp;
case 'grammarCopyPOSpropn':
return L10n.of(context)!.grammarCopyPOSpropn;
case 'grammarCopyPOSnoun':
return L10n.of(context)!.grammarCopyPOSnoun;
case 'grammarCopyPOSintj':
return L10n.of(context)!.grammarCopyPOSintj;
case 'grammarCopyPOSx':
return L10n.of(context)!.grammarCopyPOSx;
case 'grammarCopyGENDERfem':
return L10n.of(context)!.grammarCopyGENDERfem;
case 'grammarCopyPERSON2':
return L10n.of(context)!.grammarCopyPERSON2;
case 'grammarCopyMOODimp':
return L10n.of(context)!.grammarCopyMOODimp;
case 'grammarCopyPUNCTTYPEqest':
return L10n.of(context)!.grammarCopyPUNCTTYPEqest;
case 'grammarCopyASPECTperf':
return L10n.of(context)!.grammarCopyASPECTperf;
case 'grammarCopyCASEaccnom':
return L10n.of(context)!.grammarCopyCASEaccnom;
case 'grammarCopyCASEobl':
return L10n.of(context)!.grammarCopyCASEobl;
case 'grammarCopyVOICEact':
return L10n.of(context)!.grammarCopyVOICEact;
case 'grammarCopyPUNCTTYPEbrck':
return L10n.of(context)!.grammarCopyPUNCTTYPEbrck;
case 'grammarCopyNOUNTYPEart':
return L10n.of(context)!.grammarCopyNOUNTYPEart;
case 'grammarCopyNUMBERPSORsing':
return L10n.of(context)!.grammarCopyNUMBERPSORsing;
case 'grammarCopyNUMBERPSORplur':
return L10n.of(context)!.grammarCopyNUMBERPSORplur;
case 'grammarCopyNUMBERPSORdual':
return L10n.of(context)!.grammarCopyNUMBERPSORdual;
case 'grammarCopyNUMBERsing':
return L10n.of(context)!.grammarCopyNUMBERsing;
case 'grammarCopyGENDERmasc':
return L10n.of(context)!.grammarCopyGENDERmasc;
case 'grammarCopyVERBTYPEmod':
return L10n.of(context)!.grammarCopyVERBTYPEmod;
case 'grammarCopyADVTYPEadverbial':
return L10n.of(context)!.grammarCopyADVTYPEadverbial;
case 'grammarCopyTENSEperi':
return L10n.of(context)!.grammarCopyTENSEperi;
case 'grammarCopyNUMFORMdigit':
return L10n.of(context)!.grammarCopyNUMFORMdigit;
case 'grammarCopyNOUNTYPEnot_proper':
return L10n.of(context)!.grammarCopyNOUNTYPEnot_proper;
case 'grammarCopyNUMTYPEcard':
return L10n.of(context)!.grammarCopyNUMTYPEcard;
case 'grammarCopyNOUNTYPEprop':
return L10n.of(context)!.grammarCopyNOUNTYPEprop;
case 'grammarCopyPUNCTTYPEdash':
return L10n.of(context)!.grammarCopyPUNCTTYPEdash;
case 'grammarCopyPUNCTTYPEyes':
return L10n.of(context)!.grammarCopyPUNCTTYPEyes;
case 'grammarCopyPUNCTTYPEsemi':
return L10n.of(context)!.grammarCopyPUNCTTYPEsemi;
case 'grammarCopyPUNCTTYPEcomm':
return L10n.of(context)!.grammarCopyPUNCTTYPEcomm;
case 'grammarCopyMOODcnd':
return L10n.of(context)!.grammarCopyMOODcnd;
case 'grammarCopyCASEacc':
return L10n.of(context)!.grammarCopyCASEacc;
case 'grammarCopyPARTTYPEpart':
return L10n.of(context)!.grammarCopyPARTTYPEpart;
case 'grammarCopyTENSEpast':
return L10n.of(context)!.grammarCopyTENSEpast;
case 'grammarCopyDEGREEsup':
return L10n.of(context)!.grammarCopyDEGREEsup;
case 'grammarCopyPUNCTTYPEcolo':
return L10n.of(context)!.grammarCopyPUNCTTYPEcolo;
case 'grammarCopyPERSON3':
return L10n.of(context)!.grammarCopyPERSON3;
case 'grammarCopyNUMBERplur':
return L10n.of(context)!.grammarCopyNUMBERplur;
case 'grammarCopyPRONTYPEnpr':
return L10n.of(context)!.grammarCopyPRONTYPEnpr;
case 'grammarCopyPRONTYPEprs':
return L10n.of(context)!.grammarCopyPRONTYPEprs;
case 'grammarCopyPRONTYPEind':
return L10n.of(context)!.grammarCopyPRONTYPEind;
case 'grammarCopyPRONTYPEinterrogative':
return L10n.of(context)!.grammarCopyPRONTYPEinterrogative;
case 'grammarCopyPRONTYPEart':
return L10n.of(context)!.grammarCopyPRONTYPEart;
case 'grammarCopyPRONTYPEtot':
return L10n.of(context)!.grammarCopyPRONTYPEtot;
case 'grammarCopyPRONTYPEneg':
return L10n.of(context)!.grammarCopyPRONTYPEneg;
case 'grammarCopyPOLITEinfm':
return L10n.of(context)!.grammarCopyPOLITEinfm;
case 'grammarCopyADVTYPEtim':
return L10n.of(context)!.grammarCopyADVTYPEtim;
case 'grammarCopyPOLARITYneg':
return L10n.of(context)!.grammarCopyPOLARITYneg;
case 'grammarCopyNUMTYPEtot':
return L10n.of(context)!.grammarCopyNUMTYPEtot;
case 'grammarCopyADVTYPEadnomial':
return L10n.of(context)!.grammarCopyADVTYPEadnomial;
case 'grammarCopyASPECTprog':
return L10n.of(context)!.grammarCopyASPECTprog;
case 'grammarCopyMOODsub':
return L10n.of(context)!.grammarCopyMOODsub;
case 'grammarCopyVERBFORMcomplementive':
return L10n.of(context)!.grammarCopyVERBFORMcomplementive;
case 'grammarCopyCASEnom':
return L10n.of(context)!.grammarCopyCASEnom;
case 'grammarCopyTENSEfut':
return L10n.of(context)!.grammarCopyTENSEfut;
case 'grammarCopyCASEdat':
return L10n.of(context)!.grammarCopyCASEdat;
case 'grammarCopyTENSEpres':
return L10n.of(context)!.grammarCopyTENSEpres;
case 'grammarCopyGENDERneut':
return L10n.of(context)!.grammarCopyGENDERneut;
case 'grammarCopyPRONTYPErel':
return L10n.of(context)!.grammarCopyPRONTYPErel;
case 'grammarCopyVERBFORMfinalEnding':
return L10n.of(context)!.grammarCopyVERBFORMfinalEnding;
case 'grammarCopyPRONTYPEdem':
return L10n.of(context)!.grammarCopyPRONTYPEdem;
case 'grammarCopyPREPCASEpre':
return L10n.of(context)!.grammarCopyPREPCASEpre;
case 'grammarCopyPREPCASEnpr':
return L10n.of(context)!.grammarCopyPREPCASEnpr;
case 'grammarCopyVERBFORMfin':
return L10n.of(context)!.grammarCopyVERBFORMfin;
case 'grammarCopyDEGREEpos':
return L10n.of(context)!.grammarCopyDEGREEpos;
case 'grammarCopyPUNCTTYPEquot':
return L10n.of(context)!.grammarCopyPUNCTTYPEquot;
case 'grammarCopyVERBFORMger':
return L10n.of(context)!.grammarCopyVERBFORMger;
case 'grammarCopyVOICEpass':
return L10n.of(context)!.grammarCopyVOICEpass;
case 'grammarCopyCASEgen':
return L10n.of(context)!.grammarCopyCASEgen;
case 'grammarCopyTENSEprs':
return L10n.of(context)!.grammarCopyTENSEprs;
case 'grammarCopyDEFINITEdef':
return L10n.of(context)!.grammarCopyDEFINITEdef;
case 'grammarCopyDEFINITEind':
return L10n.of(context)!.grammarCopyDEFINITEind;
case 'grammarCopyNUMTYPEord':
return L10n.of(context)!.grammarCopyNUMTYPEord;
case 'grammarCopyCASEins':
return L10n.of(context)!.grammarCopyCASEins;
case 'grammarCopyVERBFORMinf':
return L10n.of(context)!.grammarCopyVERBFORMinf;
case 'grammarCopyNUMFORMlong':
return L10n.of(context)!.grammarCopyNUMFORMlong;
case 'grammarCopyCASEloc':
return L10n.of(context)!.grammarCopyCASEloc;
case 'grammarCopyMOODind':
return L10n.of(context)!.grammarCopyMOODind;
case 'grammarCopyDEGREEcmp':
return L10n.of(context)!.grammarCopyDEGREEcmp;
case 'grammarCopyCASErelativeCase':
return L10n.of(context)!.grammarCopyCASErelativeCase;
case 'grammarCopyPUNCTTYPEexcl':
return L10n.of(context)!.grammarCopyPUNCTTYPEexcl;
case 'grammarCopyPUNCTTYPEperi':
return L10n.of(context)!.grammarCopyPUNCTTYPEperi;
case 'grammarCopyPERSON1':
return L10n.of(context)!.grammarCopyPERSON1;
case 'grammarCopyPUNCTSIDEini':
return L10n.of(context)!.grammarCopyPUNCTSIDEini;
case 'grammarCopyPUNCTSIDEfin':
return L10n.of(context)!.grammarCopyPUNCTSIDEfin;
case 'grammarCopyGENDERperson':
return L10n.of(context)!.grammarCopyGENDERperson;
case 'grammarCopyFOREIGNyes':
return L10n.of(context)!.grammarCopyFOREIGNyes;
case 'grammarCopyVOICEvoice':
return L10n.of(context)!.grammarCopyVOICEvoice;
case 'grammarCopyVERBTYPEverbType':
return L10n.of(context)!.grammarCopyVERBTYPEverbType;
case 'grammarCopyPOSSpass':
return L10n.of(context)!.grammarCopyPOSSpass;
case 'grammarCopyPOSSyes':
return L10n.of(context)!.grammarCopyPOSSyes;
case 'grammarCopyPREPCASEprepCase':
return L10n.of(context)!.grammarCopyPREPCASEprepCase;
case 'grammarCopyNUMTYPEnumType':
return L10n.of(context)!.grammarCopyNUMTYPEnumType;
case 'grammarCopyNOUNTYPEnounType':
return L10n.of(context)!.grammarCopyNOUNTYPEnounType;
case 'grammarCopyREFLEXreflex':
return L10n.of(context)!.grammarCopyREFLEXreflex;
case 'grammarCopyPRONTYPEpronType':
return L10n.of(context)!.grammarCopyPRONTYPEpronType;
case 'grammarCopyPUNCTSIDEpunctSide':
return L10n.of(context)!.grammarCopyPUNCTSIDEpunctSide;
case 'grammarCopyVERBFORMverbForm':
return L10n.of(context)!.grammarCopyVERBFORMverbForm;
case 'grammarCopyGENDERgender':
return L10n.of(context)!.grammarCopyGENDERgender;
case 'grammarCopyMOODmood':
return L10n.of(context)!.grammarCopyMOODmood;
case 'grammarCopyASPECTaspect':
return L10n.of(context)!.grammarCopyASPECTaspect;
case 'grammarCopyPUNCTTYPEpunctType':
return L10n.of(context)!.grammarCopyPUNCTTYPEpunctType;
case 'grammarCopyTENSEtense':
return L10n.of(context)!.grammarCopyTENSEtense;
case 'grammarCopyDEGREEdegree':
return L10n.of(context)!.grammarCopyDEGREEdegree;
case 'grammarCopyPOLITEpolite':
return L10n.of(context)!.grammarCopyPOLITEpolite;
case 'grammarCopyADVTYPEadvType':
return L10n.of(context)!.grammarCopyADVTYPEadvType;
case 'grammarCopyNUMFORMnumber':
return L10n.of(context)!.grammarCopyNUMFORMnumber;
case 'grammarCopyCONJTYPEconjType':
return L10n.of(context)!.grammarCopyCONJTYPEconjType;
case 'grammarCopyPOLARITYpolarity':
return L10n.of(context)!.grammarCopyPOLARITYpolarity;
case 'grammarCopyCASEcase':
return L10n.of(context)!.grammarCopyCASEcase;
case 'grammarCopyDEFINITEdefinite':
return L10n.of(context)!.grammarCopyDEFINITEdefinite;
case 'grammarCopyNUMFORMnumForm':
return L10n.of(context)!.grammarCopyNUMFORMnumForm;
case 'grammarCopyPRONTYPEadn':
return L10n.of(context)!.grammarCopyPRONTYPEadn;
case 'grammarCopyVOCvoc':
return L10n.of(context)!.grammarCopyVOCvoc;
case 'grammarCopyCMPLcmpl':
return L10n.of(context)!.grammarCopyCMPLcmpl;
case 'grammarCopyADVadv':
return L10n.of(context)!.grammarCopyADVadv;
case 'grammarCopyMOODjus':
return L10n.of(context)!.grammarCopyMOODjus;
case 'grammarCopyGENDERcom':
return L10n.of(context)!.grammarCopyGENDERcom;
case 'grammarCopyREFLEXrflx':
return L10n.of(context)!.grammarCopyREFLEXrflx;
case 'grammarCopyREFLEXyes':
return L10n.of(context)!.grammarCopyREFLEXyes;
case 'grammarCopyPARTTYPEpar':
return L10n.of(context)!.grammarCopyPARTTYPEpar;
case 'grammarCopySPCspc':
return L10n.of(context)!.grammarCopySPCspc;
case 'grammarCopyTENSEpqp':
return L10n.of(context)!.grammarCopyTENSEpqp;
case 'grammarCopyREFLEXref':
return L10n.of(context)!.grammarCopyREFLEXref;
case 'grammarCopyPUNCTTYPEnshrt':
return L10n.of(context)!.grammarCopyPUNCTTYPEnshrt;
case 'grammarCopyNUMBERdual':
return L10n.of(context)!.grammarCopyNUMBERdual;
case 'grammarCopyNUMFORMlng':
return L10n.of(context)!.grammarCopyNUMFORMlng;
case 'grammarCopyVOICEmid':
return L10n.of(context)!.grammarCopyVOICEmid;
case 'grammarCopyINTRELintRel':
return L10n.of(context)!.grammarCopyINTRELintRel;
case 'grammarCopyINTint':
return L10n.of(context)!.grammarCopyINTint;
case 'grammarCopyVOICEcaus':
return L10n.of(context)!.grammarCopyVOICEcaus;
case 'grammarCopyUNKNOWNunknown':
return L10n.of(context)!.grammarCopyUnknown;
case 'grammarCopyEVIDENTevident':
return L10n.of(context)!.grammarCopyEVIDENTevident;
case 'grammarCopyNUMFORMnumberPsor':
return L10n.of(context)!.grammarCopyNUMFORMnumberPsor;
case 'grammarCopyASPECThab':
return L10n.of(context)!.grammarCopyASPECThab;
case 'grammarCopyCASEabl':
return L10n.of(context)!.grammarCopyCASEabl;
case 'grammarCopyCASEall':
return L10n.of(context)!.grammarCopyCASEall;
case 'grammarCopyCASEess':
return L10n.of(context)!.grammarCopyCASEess;
case 'grammarCopyCASEtra':
return L10n.of(context)!.grammarCopyCASEtra;
case 'grammarCopyCASEequ':
return L10n.of(context)!.grammarCopyCASEequ;
case 'grammarCopyCASEdis':
return L10n.of(context)!.grammarCopyCASEdis;
case 'grammarCopyCASEabs':
return L10n.of(context)!.grammarCopyCASEabs;
case 'grammarCopyCASEerg':
return L10n.of(context)!.grammarCopyCASEerg;
case 'grammarCopyCASEcau':
return L10n.of(context)!.grammarCopyCASEcau;
case 'grammarCopyCASEben':
return L10n.of(context)!.grammarCopyCASEben;
case 'grammarCopyCASEtem':
return L10n.of(context)!.grammarCopyCASEtem;
case 'grammarCopyCONJTYPEcoord':
return L10n.of(context)!.grammarCopyCONJTYPEcoord;
case 'grammarCopyDEFINITEcons':
return L10n.of(context)!.grammarCopyDEFINITEcons;
case 'grammarCopyDEGREEabs':
return L10n.of(context)!.grammarCopyDEGREEabs;
case 'grammarCopyEVIDENTfh':
return L10n.of(context)!.grammarCopyEVIDENTfh;
case 'grammarCopyEVIDENTnfh':
return L10n.of(context)!.grammarCopyEVIDENTnfh;
case 'grammarCopyMOODopt':
return L10n.of(context)!.grammarCopyMOODopt;
case 'grammarCopyMOODadm':
return L10n.of(context)!.grammarCopyMOODadm;
case 'grammarCopyMOODdes':
return L10n.of(context)!.grammarCopyMOODdes;
case 'grammarCopyMOODnec':
return L10n.of(context)!.grammarCopyMOODnec;
case 'grammarCopyMOODpot':
return L10n.of(context)!.grammarCopyMOODpot;
case 'grammarCopyMOODprp':
return L10n.of(context)!.grammarCopyMOODprp;
case 'grammarCopyMOODqot':
return L10n.of(context)!.grammarCopyMOODqot;
case 'grammarCopyNUMFORMword':
return L10n.of(context)!.grammarCopyNUMFORMword;
case 'grammarCopyNUMFORMroman':
return L10n.of(context)!.grammarCopyNUMFORMroman;
case 'grammarCopyNUMFORMletter':
return L10n.of(context)!.grammarCopyNUMFORMletter;
case 'grammarCopyNUMTYPEmult':
return L10n.of(context)!.grammarCopyNUMTYPEmult;
case 'grammarCopyNUMTYPEfrac':
return L10n.of(context)!.grammarCopyNUMTYPEfrac;
case 'grammarCopyNUMTYPEsets':
return L10n.of(context)!.grammarCopyNUMTYPEsets;
case 'grammarCopyNUMTYPErange':
return L10n.of(context)!.grammarCopyNUMTYPErange;
case 'grammarCopyNUMTYPEdist':
return L10n.of(context)!.grammarCopyNUMTYPEdist;
case 'grammarCopyNUMBERtri':
return L10n.of(context)!.grammarCopyNUMBERtri;
case 'grammarCopyNUMBERpauc':
return L10n.of(context)!.grammarCopyNUMBERpauc;
case 'grammarCopyNUMBERgrpa':
return L10n.of(context)!.grammarCopyNUMBERgrpa;
case 'grammarCopyNUMBERgrpl':
return L10n.of(context)!.grammarCopyNUMBERgrpl;
case 'grammarCopyNUMBERinv':
return L10n.of(context)!.grammarCopyNUMBERinv;
case 'grammarCopyPERSON0':
return L10n.of(context)!.grammarCopyPERSON0;
case 'grammarCopyPERSON4':
return L10n.of(context)!.grammarCopyPERSON4;
case 'grammarCopyPOLITEform':
return L10n.of(context)!.grammarCopyPOLITEform;
case 'grammarCopyPOLITEelev':
return L10n.of(context)!.grammarCopyPOLITEelev;
case 'grammarCopyPOLITEhumb':
return L10n.of(context)!.grammarCopyPOLITEhumb;
case 'grammarCopyPRONTYPEemp':
return L10n.of(context)!.grammarCopyPRONTYPEemp;
case 'grammarCopyPRONTYPEexc':
return L10n.of(context)!.grammarCopyPRONTYPEexc;
case 'grammarCopyPRONTYPErcp':
return L10n.of(context)!.grammarCopyPRONTYPErcp;
case 'grammarCopyPRONTYPEint':
return L10n.of(context)!.grammarCopyPRONTYPEint;
case 'grammarCopyPRONTYPEintrel':
return L10n.of(context)!.grammarCopyPRONTYPEintrel;
case 'grammarCopyPRONTYPEintRelPronType':
return L10n.of(context)!.grammarCopyPRONTYPEintRelPronType;
case 'grammarCopyTENSEaor':
return L10n.of(context)!.grammarCopyTENSEaor;
case 'grammarCopyTENSEeps':
return L10n.of(context)!.grammarCopyTENSEeps;
case 'grammarCopyTENSEprosp':
return L10n.of(context)!.grammarCopyTENSEprosp;
case 'grammarCopyTENSEimp':
return L10n.of(context)!.grammarCopyTENSEimp;
case 'grammarCopyVERBFORMpart':
return L10n.of(context)!.grammarCopyVERBFORMpart;
case 'grammarCopyVERBFORMconv':
return L10n.of(context)!.grammarCopyVERBFORMconv;
case 'grammarCopyVERBFORMvnoun':
return L10n.of(context)!.grammarCopyVERBFORMvnoun;
case 'grammarCopyVOICEantip':
return L10n.of(context)!.grammarCopyVOICEantip;
case 'grammarCopyVOICEcauVoice':
return L10n.of(context)!.grammarCopyVOICEcauVoice;
case 'grammarCopyVOICedir':
return L10n.of(context)!.grammarCopyVOICedir;
case 'grammarCopyVOICEinvVoice':
return L10n.of(context)!.grammarCopyVOICEinvVoice;
case 'grammarCopyVOICErcpVoice':
return L10n.of(context)!.grammarCopyVOICErcpVoice;
case "grammarCopyCASEaccdat":
return L10n.of(context)!.grammarCopyCASEaccdat;
// Handle empty tag
case '':
ErrorHandler.logError(
e: Exception('Empty tag'),
m: 'Empty tag in getGrammarCopy',
data: {
'context': context,
},
);
return L10n.of(context)!.grammarCopyUnknown;
default:
debugger(when: kDebugMode);
ErrorHandler.logError(
e: 'Need to add copy to intl_en.arb',
data: {
'tag': key,
'context': context,
},
);
return lemma; // Fallback to the lemma itself if no match is found
}
}