headless_lms_models/
cms_ai.rs1use crate::prelude::*;
2use utoipa::ToSchema;
3
4#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize, ToSchema)]
5
6pub enum ParagraphSuggestionAction {
7 #[serde(rename = "moocfi/ai/generate-draft-from-notes")]
8 GenerateDraftFromNotes,
9 #[serde(rename = "moocfi/ai/generate-continue-paragraph")]
10 GenerateContinueParagraph,
11 #[serde(rename = "moocfi/ai/generate-add-example")]
12 GenerateAddExample,
13 #[serde(rename = "moocfi/ai/generate-add-counterpoint")]
14 GenerateAddCounterpoint,
15 #[serde(rename = "moocfi/ai/generate-add-concluding-sentence")]
16 GenerateAddConcludingSentence,
17 #[serde(rename = "moocfi/fix-spelling")]
18 FixSpelling,
19 #[serde(rename = "moocfi/ai/improve-clarity")]
20 ImproveClarity,
21 #[serde(rename = "moocfi/ai/improve-flow")]
22 ImproveFlow,
23 #[serde(rename = "moocfi/ai/improve-concise")]
24 ImproveConcise,
25 #[serde(rename = "moocfi/ai/improve-expand-detail")]
26 ImproveExpandDetail,
27 #[serde(rename = "moocfi/ai/improve-academic-style")]
28 ImproveAcademicStyle,
29 #[serde(rename = "moocfi/ai/structure-create-topic-sentence")]
30 StructureCreateTopicSentence,
31 #[serde(rename = "moocfi/ai/structure-reorder-sentences")]
32 StructureReorderSentences,
33 #[serde(rename = "moocfi/ai/structure-split-into-paragraphs")]
34 StructureSplitIntoParagraphs,
35 #[serde(rename = "moocfi/ai/structure-combine-into-one")]
36 StructureCombineIntoOne,
37 #[serde(rename = "moocfi/ai/structure-to-bullets")]
38 StructureToBullets,
39 #[serde(rename = "moocfi/ai/structure-from-bullets")]
40 StructureFromBullets,
41 #[serde(rename = "moocfi/ai/learning-simplify-beginners")]
42 LearningSimplifyBeginners,
43 #[serde(rename = "moocfi/ai/learning-add-definitions")]
44 LearningAddDefinitions,
45 #[serde(rename = "moocfi/ai/learning-add-analogy")]
46 LearningAddAnalogy,
47 #[serde(rename = "moocfi/ai/learning-add-practice-question")]
48 LearningAddPracticeQuestion,
49 #[serde(rename = "moocfi/ai/learning-add-check-understanding")]
50 LearningAddCheckUnderstanding,
51 #[serde(rename = "moocfi/ai/summaries-one-sentence")]
52 SummariesOneSentence,
53 #[serde(rename = "moocfi/ai/summaries-two-three-sentences")]
54 SummariesTwoThreeSentences,
55 #[serde(rename = "moocfi/ai/summaries-key-takeaway")]
56 SummariesKeyTakeaway,
57 #[serde(rename = "moocfi/ai/tone-academic-formal")]
58 ToneAcademicFormal,
59 #[serde(rename = "moocfi/ai/tone-friendly-conversational")]
60 ToneFriendlyConversational,
61 #[serde(rename = "moocfi/ai/tone-encouraging-supportive")]
62 ToneEncouragingSupportive,
63 #[serde(rename = "moocfi/ai/tone-neutral-objective")]
64 ToneNeutralObjective,
65 #[serde(rename = "moocfi/ai/tone-confident")]
66 ToneConfident,
67 #[serde(rename = "moocfi/ai/tone-serious")]
68 ToneSerious,
69 #[serde(rename = "moocfi/ai/translate-english")]
70 TranslateEnglish,
71 #[serde(rename = "moocfi/ai/translate-finnish")]
72 TranslateFinnish,
73 #[serde(rename = "moocfi/ai/translate-norwegian")]
74 TranslateNorwegian,
75 #[serde(rename = "moocfi/ai/translate-swedish")]
76 TranslateSwedish,
77}
78
79impl ParagraphSuggestionAction {
80 pub fn as_str(self) -> &'static str {
82 match self {
83 Self::GenerateDraftFromNotes => "moocfi/ai/generate-draft-from-notes",
84 Self::GenerateContinueParagraph => "moocfi/ai/generate-continue-paragraph",
85 Self::GenerateAddExample => "moocfi/ai/generate-add-example",
86 Self::GenerateAddCounterpoint => "moocfi/ai/generate-add-counterpoint",
87 Self::GenerateAddConcludingSentence => "moocfi/ai/generate-add-concluding-sentence",
88 Self::FixSpelling => "moocfi/fix-spelling",
89 Self::ImproveClarity => "moocfi/ai/improve-clarity",
90 Self::ImproveFlow => "moocfi/ai/improve-flow",
91 Self::ImproveConcise => "moocfi/ai/improve-concise",
92 Self::ImproveExpandDetail => "moocfi/ai/improve-expand-detail",
93 Self::ImproveAcademicStyle => "moocfi/ai/improve-academic-style",
94 Self::StructureCreateTopicSentence => "moocfi/ai/structure-create-topic-sentence",
95 Self::StructureReorderSentences => "moocfi/ai/structure-reorder-sentences",
96 Self::StructureSplitIntoParagraphs => "moocfi/ai/structure-split-into-paragraphs",
97 Self::StructureCombineIntoOne => "moocfi/ai/structure-combine-into-one",
98 Self::StructureToBullets => "moocfi/ai/structure-to-bullets",
99 Self::StructureFromBullets => "moocfi/ai/structure-from-bullets",
100 Self::LearningSimplifyBeginners => "moocfi/ai/learning-simplify-beginners",
101 Self::LearningAddDefinitions => "moocfi/ai/learning-add-definitions",
102 Self::LearningAddAnalogy => "moocfi/ai/learning-add-analogy",
103 Self::LearningAddPracticeQuestion => "moocfi/ai/learning-add-practice-question",
104 Self::LearningAddCheckUnderstanding => "moocfi/ai/learning-add-check-understanding",
105 Self::SummariesOneSentence => "moocfi/ai/summaries-one-sentence",
106 Self::SummariesTwoThreeSentences => "moocfi/ai/summaries-two-three-sentences",
107 Self::SummariesKeyTakeaway => "moocfi/ai/summaries-key-takeaway",
108 Self::ToneAcademicFormal => "moocfi/ai/tone-academic-formal",
109 Self::ToneFriendlyConversational => "moocfi/ai/tone-friendly-conversational",
110 Self::ToneEncouragingSupportive => "moocfi/ai/tone-encouraging-supportive",
111 Self::ToneNeutralObjective => "moocfi/ai/tone-neutral-objective",
112 Self::ToneConfident => "moocfi/ai/tone-confident",
113 Self::ToneSerious => "moocfi/ai/tone-serious",
114 Self::TranslateEnglish => "moocfi/ai/translate-english",
115 Self::TranslateFinnish => "moocfi/ai/translate-finnish",
116 Self::TranslateNorwegian => "moocfi/ai/translate-norwegian",
117 Self::TranslateSwedish => "moocfi/ai/translate-swedish",
118 }
119 }
120}