POLRAMBORA commited on
Commit
cd61ae0
·
verified ·
1 Parent(s): c331c08

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +11 -22
app.py CHANGED
@@ -120,6 +120,7 @@ def render_message(history):
120
  user_message_html = markdown.markdown(
121
  user_message, extensions=["fenced_code", CodeHiliteExtension()]
122
  )
 
123
  messages_html += f"""
124
  <div style='display: flex; align-items: center; margin-bottom: 10px;'>
125
  <img src='{user_pic}' style='width: 40px; height: 40px; border-radius: 50%; margin-right: 10px;'>
@@ -130,34 +131,13 @@ def render_message(history):
130
  assistant_message_html = markdown.markdown(
131
  assistant_message, extensions=["fenced_code", CodeHiliteExtension()]
132
  )
 
133
  messages_html += f"""
134
  <div style='display: flex; align-items: center; margin-bottom: 10px;'>
135
  <img src='{assistant_pic}' style='width: 40px; height: 40px; border-radius: 50%; margin-right: 10px;'>
136
  <span style='color: white;'>{assistant_message_html}</span>
137
  </div>"""
138
 
139
- messages_html += """
140
- </div>
141
- </div>
142
-
143
-
144
- <script>
145
- function escapeHtml(unsafe) {
146
- return unsafe
147
- .replace(/&/g, "&amp;")
148
- .replace(/</g, "&lt;")
149
- .replace(/>/g, "&gt;")
150
- .replace(/"/g, "&quot;")
151
- .replace(/'/g, "&#039;");
152
- }
153
- let messages = document.querySelectorAll('#message-content');
154
- messages.forEach((message) => {
155
- message.innerHTML = DOMPurify.sanitize(message.innerHTML); // Sanitize HTML content
156
- });
157
- MathJax.typeset();
158
- </script>
159
- """
160
-
161
  return messages_html
162
 
163
  def escape_html(unsafe_text):
@@ -188,6 +168,15 @@ with gr.Blocks(css=css) as demo:
188
  <script type="text/javascript" id="MathJax-script" async
189
  src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/3.2.2/es5/tex-mml-chtml.js">
190
  </script>
 
 
 
 
 
 
 
 
 
191
  """)
192
  gr.Markdown("## P-MSQ Chat Interface")
193
  chatbot_output = gr.HTML(elem_id="chatbox-container")
 
120
  user_message_html = markdown.markdown(
121
  user_message, extensions=["fenced_code", CodeHiliteExtension()]
122
  )
123
+ user_message_html = markdown.markdown(escape_html(user_message), extensions=["fenced_code", "codehilite"])
124
  messages_html += f"""
125
  <div style='display: flex; align-items: center; margin-bottom: 10px;'>
126
  <img src='{user_pic}' style='width: 40px; height: 40px; border-radius: 50%; margin-right: 10px;'>
 
131
  assistant_message_html = markdown.markdown(
132
  assistant_message, extensions=["fenced_code", CodeHiliteExtension()]
133
  )
134
+ assistant_message_html = markdown.markdown(escape_html(assistant_message), extensions=["fenced_code", "codehilite"])
135
  messages_html += f"""
136
  <div style='display: flex; align-items: center; margin-bottom: 10px;'>
137
  <img src='{assistant_pic}' style='width: 40px; height: 40px; border-radius: 50%; margin-right: 10px;'>
138
  <span style='color: white;'>{assistant_message_html}</span>
139
  </div>"""
140
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
141
  return messages_html
142
 
143
  def escape_html(unsafe_text):
 
168
  <script type="text/javascript" id="MathJax-script" async
169
  src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/3.2.2/es5/tex-mml-chtml.js">
170
  </script>
171
+ <script>
172
+ if (typeof MathJax !== 'undefined') {
173
+ MathJax.typesetPromise()
174
+ .then(() => console.log("MathJax typesetting complete."))
175
+ .catch((err) => console.error("MathJax typesetting error:", err));
176
+ } else {
177
+ console.error("MathJax is not loaded.");
178
+ }
179
+ </script>
180
  """)
181
  gr.Markdown("## P-MSQ Chat Interface")
182
  chatbot_output = gr.HTML(elem_id="chatbox-container")