namespace HSchool.Content;
/// Leisure actions that form talk circles. Names match ActionDef ids in core.
public static class TalkActions
{
public const string Chat = "Chat";
public const string StaffChat = "StaffChat";
public const string PhoneChat = "PhoneChat";
public const string Whisper = "Whisper";
public const string TeacherTalk = "TeacherTalk";
public static bool IsTalk(string? actionId) =>
actionId is not null
&& (actionId.Equals(Chat, StringComparison.Ordinal)
|| actionId.Equals(StaffChat, StringComparison.Ordinal)
|| actionId.Equals(PhoneChat, StringComparison.Ordinal)
|| actionId.Equals(Whisper, StringComparison.Ordinal)
|| actionId.Equals(TeacherTalk, StringComparison.Ordinal));
public static bool IsWhisper(string? actionId) =>
actionId is not null && actionId.Equals(Whisper, StringComparison.Ordinal);
public static bool IsTeacherTalk(string? actionId) =>
actionId is not null && actionId.Equals(TeacherTalk, StringComparison.Ordinal);
}
/// Vanilla topic tags from the social slice design doc.
public static class TopicTags
{
public const string Study = "study";
public const string Games = "games";
public const string Food = "food";
public const string Family = "family";
public const string Sport = "sport";
public const string Gossip = "gossip";
public const string Rude = "rude";
public const string Appearance = "appearance";
}
/// Teacher-after-lesson and reprimand topics in core. Names match TopicDef ids.
public static class TeacherTopics
{
public const string Question = "TopicQuestion";
public const string Praise = "TopicPraise";
public const string Discipline = "TopicDiscipline";
}