Mercurial Hosting > lang
comparison src/lib/Chat.luan @ 34:0fb3488a017d
show_text
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Mon, 04 Aug 2025 23:06:19 -0600 |
parents | d34d709a7a8e |
children | 3117876debca |
comparison
equal
deleted
inserted
replaced
33:7d9462ea03e3 | 34:0fb3488a017d |
---|---|
29 name = doc.name | 29 name = doc.name |
30 ai_thread = doc.ai_thread | 30 ai_thread = doc.ai_thread |
31 language = doc.language | 31 language = doc.language |
32 language_region = doc.language_region | 32 language_region = doc.language_region |
33 voice = doc.voice | 33 voice = doc.voice |
34 show_text = doc.show_text == "true" | |
34 } | 35 } |
35 end | 36 end |
36 | 37 |
37 local function to_doc(chat) | 38 local function to_doc(chat) |
38 return { | 39 return { |
44 name = chat.name or error() | 45 name = chat.name or error() |
45 ai_thread = chat.ai_thread | 46 ai_thread = chat.ai_thread |
46 language = chat.language or error() | 47 language = chat.language or error() |
47 language_region = chat.language_region or error() | 48 language_region = chat.language_region or error() |
48 voice = chat.voice or error() | 49 voice = chat.voice or error() |
50 show_text = chat.show_text and "true" or "false" | |
49 } | 51 } |
50 end | 52 end |
51 | 53 |
52 local function first_region(language) | 54 local function first_region(language) |
53 return languages[language].regions[1].code | 55 return languages[language].regions[1].code |
55 | 57 |
56 function Chat.new(chat) | 58 function Chat.new(chat) |
57 chat.updated = chat.updated or time_now() | 59 chat.updated = chat.updated or time_now() |
58 chat.language_region = chat.language_region or first_region(chat.language) | 60 chat.language_region = chat.language_region or first_region(chat.language) |
59 chat.voice = chat.voice or voices[1].code | 61 chat.voice = chat.voice or voices[1].code |
62 if chat.show_text==nil then chat.show_text = true end | |
60 | 63 |
61 function chat.save() | 64 function chat.save() |
62 local doc = to_doc(chat) | 65 local doc = to_doc(chat) |
63 Db.save(doc) | 66 Db.save(doc) |
64 chat.id = doc.id | 67 chat.id = doc.id |
76 return { | 79 return { |
77 id = chat.id | 80 id = chat.id |
78 language_region = chat.language_region | 81 language_region = chat.language_region |
79 voice = chat.voice | 82 voice = chat.voice |
80 name = chat.name | 83 name = chat.name |
84 show_text = chat.show_text | |
81 } | 85 } |
82 end | 86 end |
83 | 87 |
84 function chat.name_html() | 88 function chat.name_html() |
85 return html_encode(chat.name) | 89 return html_encode(chat.name) |
103 function chat.output_system_prompt() | 107 function chat.output_system_prompt() |
104 Ai_chat.output_system_prompt(chat.ai_thread) | 108 Ai_chat.output_system_prompt(chat.ai_thread) |
105 end | 109 end |
106 | 110 |
107 function chat.output_messages_html() | 111 function chat.output_messages_html() |
108 Ai_chat.output_messages_html(chat.ai_thread) | 112 Ai_chat.output_messages_html(chat.show_text,chat.ai_thread) |
109 end | 113 end |
110 | 114 |
111 function chat.ask(input) | 115 function chat.ask(input) |
112 local old_thread = chat.ai_thread | 116 local old_thread = chat.ai_thread |
113 local ai_thread = Ai_chat.ask_more(old_thread,input) | 117 local ai_thread = Ai_chat.ask_more(old_thread,input) |
114 run_in_transaction( function() | 118 run_in_transaction( function() |
115 chat = chat.reload() | 119 chat = chat.reload() |
116 chat.ai_thread = ai_thread | 120 chat.ai_thread = ai_thread |
117 chat.save() | 121 chat.save() |
118 end ) | 122 end ) |
119 return `Ai_chat.output_messages_html(ai_thread,old_thread)` | 123 return `Ai_chat.output_messages_html(chat.show_text,ai_thread,old_thread)` |
120 end | 124 end |
121 | 125 |
122 function chat.language_name() | 126 function chat.language_name() |
123 return languages[chat.language].name | 127 return languages[chat.language].name |
124 end | 128 end |