2026-11-08 19:49:46 +01:00
namespace AIStudio.Assistants.BeyondFactsLab ;
/// <summary>
/// The texts of the fields and options of the BeyondFacts Lab, in the language of the app.
/// </summary>
public static class BflFieldTexts
{
private static string TB ( string fallbackEN ) => Tools . PluginSystem . I18N . I . T ( fallbackEN , typeof ( BflFieldTexts ). Namespace , nameof ( BflFieldTexts ));
2026-11-08 21:10:51 +01:00
private static string TA ( string fallbackEN ) => Tools . PluginSystem . I18N . I . TA ( fallbackEN , typeof ( BflFieldTexts ). Namespace , nameof ( BflFieldTexts ));
2026-11-08 19:49:46 +01:00
/// <param name="definition">The field.</param>
extension ( BflFieldDefinition definition )
{
/// <summary>
/// Gets the label of the field.
/// </summary>
public string Label => definition . Id switch
{
BflFieldCatalog . FORMAT => TB ( "Format of the event" ),
BflFieldCatalog . EVENT_TOPIC => TB ( "Topic of the event" ),
BflFieldCatalog . AUDIENCE => TB ( "Audience" ),
2026-11-08 21:10:51 +01:00
BflFieldCatalog . CONTRIBUTION_TOPIC => TA ( "Topic of your contribution or your specific assignment" ),
2026-11-08 19:49:46 +01:00
BflFieldCatalog . EVENT_DATE => TB ( "Date and time" ),
BflFieldCatalog . EVENT_LOCATION => TB ( "Place" ),
BflFieldCatalog . EVENT_DURATION => TB ( "Total duration of the event" ),
2026-11-08 21:10:51 +01:00
BflFieldCatalog . CONTRIBUTION_DURATION => TA ( "Duration of your contribution" ),
2026-11-08 19:49:46 +01:00
BflFieldCatalog . OTHER_PARTICIPANTS => TB ( "Other participants" ),
BflFieldCatalog . EVENT_LINK => TB ( "Link to the event" ),
2026-11-08 21:10:51 +01:00
BflFieldCatalog . CONTRIBUTION_SUMMARY => TA ( "Short description of your contribution" ),
2026-11-08 19:49:46 +01:00
BflFieldCatalog . CORE_THESES => TB ( "Core theses and arguments (if any)" ),
BflFieldCatalog . UNCERTAINTIES => TB ( "Uncertainties and controversies in content and science (if known)" ),
2026-11-08 21:10:51 +01:00
BflFieldCatalog . MATERIAL_NOTES => TA ( "Notes on how to use your materials" ),
2026-11-08 19:49:46 +01:00
2026-11-08 21:10:51 +01:00
BflFieldCatalog . GOALS => TA ( "What do you want to achieve with your contribution?" ),
2026-11-08 19:49:46 +01:00
BflFieldCatalog . GOAL_DIRECTIONS => TB ( "Suggestions" ),
2026-11-08 21:10:51 +01:00
BflFieldCatalog . VALUES_AND_CONCERNS => TA ( "Values and concerns: What matters most to you about this topic?" ),
BflFieldCatalog . PERSONAL_CONCERN => TA ( "Personal involvement: Where does the topic touch you personally? Which question or criticism could trigger a strong reaction?" ),
BflFieldCatalog . OTHER_PERSPECTIVES => TA ( "Other perspectives: Whose point of view would you like to understand better, or have you hardly considered so far?" ),
2026-11-08 19:49:46 +01:00
BflFieldCatalog . COMMUNICATION_WORRIES => TB ( "Uncertainties and worries about communicating" ),
BflFieldCatalog . QUESTION_TYPE => TB ( "Type of questions" ),
BflFieldCatalog . DIFFICULTY => TB ( "Difficulty at the start" ),
BflFieldCatalog . TEST_NOTES => TB ( "Special notes for the test" ),
2026-11-08 21:10:51 +01:00
BflFieldCatalog . POSITION_CHANGES => TA ( "What have you changed, kept, or left open compared to your initial position, and why?" ),
2026-11-08 19:49:46 +01:00
_ => string . Empty ,
};
/// <summary>
/// Gets the help text below the field, or an empty string when it needs none.
/// </summary>
public string Hint => definition . Id switch
{
BflFieldCatalog . FORMAT => TB ( "E.g., panel, keynote, or interview; online, on site, or hybrid" ),
BflFieldCatalog . EVENT_TOPIC => TB ( "The central question or the title" ),
BflFieldCatalog . AUDIENCE => TB ( "E.g., students, experts, or the general public" ),
2026-11-08 21:10:51 +01:00
BflFieldCatalog . CONTRIBUTION_TOPIC => TA ( "Stays in your preparation and never goes into the research on the web" ),
2026-11-08 19:49:46 +01:00
BflFieldCatalog . EVENT_DATE => TB ( "E.g., December 10, 2 pm" ),
BflFieldCatalog . EVENT_LOCATION => TB ( "E.g., the venue and the city, or online" ),
BflFieldCatalog . EVENT_DURATION => TB ( "E.g., 90 minutes" ),
BflFieldCatalog . CONTRIBUTION_DURATION => TB ( "E.g., 8 minutes" ),
2026-11-08 21:10:51 +01:00
BflFieldCatalog . OTHER_PARTICIPANTS => TA ( "Names and roles, as far as you know them" ),
2026-11-08 19:49:46 +01:00
BflFieldCatalog . EVENT_LINK => TB ( "The address of the event page, beginning with https://" ),
BflFieldCatalog . CONTRIBUTION_SUMMARY => TB ( "A few sentences are enough" ),
2026-11-09 20:00:01 +01:00
BflFieldCatalog . MATERIAL_NOTES => TA ( "E.g., use only paper X as the basis for the content. Add the material itself in the area 'Material'." ),
2026-11-08 19:49:46 +01:00
2026-11-08 21:10:51 +01:00
BflFieldCatalog . GOALS => TA ( "In your own words, with the suggestions below, or still open: the chat sharpens your goal and role with you." ),
2026-11-08 19:49:46 +01:00
2026-11-08 21:10:51 +01:00
BflFieldCatalog . PERSONAL_CONCERN => TA ( "Personal detail: it goes into exports and shared sessions only when you explicitly choose so." ),
2026-11-08 19:49:46 +01:00
BflFieldCatalog . COMMUNICATION_WORRIES => TB ( "E.g., aggressive moderation, time pressure, or a particular counterpart" ),
2026-11-08 21:10:51 +01:00
BflFieldCatalog . DIFFICULTY => TA ( "You can raise the difficulty after each question." ),
2026-11-08 19:49:46 +01:00
BflFieldCatalog . TEST_NOTES => TB ( "E.g., take up a confirmed conflict of values or a perspective from the step about values and perspectives" ),
_ => string . Empty ,
};
}
/// <param name="option">The option.</param>
extension ( BflFieldOption option )
{
/// <summary>
/// Gets the label of the option.
/// </summary>
public string Label => option . Id switch
{
BflFieldCatalog . GOAL_INFORM => TB ( "Inform" ),
BflFieldCatalog . GOAL_MODERATE => TB ( "Moderate the discussion" ),
BflFieldCatalog . GOAL_TAKE_POSITION => TB ( "Take a position in the debate" ),
BflFieldCatalog . GOAL_RAISE_AWARENESS => TB ( "Raise awareness" ),
BflFieldCatalog . GOAL_SHOW_OPTIONS => TB ( "Show options for action" ),
BflFieldCatalog . GOAL_INFLUENCE_POLICY => TB ( "Influence policy" ),
BflFieldCatalog . QUESTIONS_MIXED => TB ( "Mixed" ),
BflFieldCatalog . QUESTIONS_SCIENTIFIC_CRITICISM => TB ( "Scientific criticism" ),
BflFieldCatalog . QUESTIONS_EMOTIONAL_CRITICISM => TB ( "Emotionally charged criticism" ),
BflFieldCatalog . QUESTIONS_MANIPULATIVE => TB ( "Manipulative questions and straw men" ),
BflFieldCatalog . QUESTIONS_POLITICAL_INSTRUMENTALIZATION => TB ( "Political instrumentalization" ),
BflFieldCatalog . DIFFICULTY_MODERATE => TB ( "Moderate" ),
BflFieldCatalog . DIFFICULTY_DEMANDING => TB ( "Demanding" ),
BflFieldCatalog . DIFFICULTY_VERY_DEMANDING => TB ( "Very demanding" ),
_ => string . Empty ,
};
}
}