mgbam commited on
Commit
e33fbba
·
verified ·
1 Parent(s): c740495

Update api_clients.py

Browse files
Files changed (1) hide show
  1. api_clients.py +17 -29
api_clients.py CHANGED
@@ -129,39 +129,27 @@ This will help me create a better design for you."""
129
  clean_code = remove_code_block(content)
130
  if has_existing_html:
131
  # Fallback: If the model returns a full HTML file, use it directly
132
- if clean_code.strip().startswith("<!DOCTYPE html>") or clean_code.strip().startswith("<html"):
133
- yield {
134
- "code_output": gr.update(value=clean_code, language=get_gradio_language(language)),
135
- "history_output": history_to_chatbot_messages(_history),
136
- "sandbox": send_to_sandbox(clean_code) if language == "html" else "<div style='padding:1em;color:#888;text-align:center;'>Preview is only available for HTML. Please download your code using the download button above.</div>",
137
- }
138
- else:
139
  last_html = _history[-1][1] if _history else ""
140
  modified_html = apply_search_replace_changes(last_html, clean_code)
141
- clean_html = remove_code_block(modified_html)
142
- yield {
143
- "code_output": gr.update(value=clean_html, language=get_gradio_language(language)),
144
- "history_output": history_to_chatbot_messages(_history),
145
- "sandbox": send_to_sandbox(clean_html) if language == "html" else "<div style='padding:1em;color:#888;text-align:center;'>Preview is only available for HTML. Please download your code using the download button above.</div>",
146
- }
147
- else:
148
- yield {
149
- "code_output": gr.update(value=clean_code, language=get_gradio_language(language)),
150
- "history_output": history_to_chatbot_messages(_history),
151
- "sandbox": send_to_sandbox(clean_code) if language == "html" else "<div style='padding:1em;color:#888;text-align:center;'>Preview is only available for HTML. Please download your code using the download button above.</div>",
152
- }
153
  # Final update
154
  _history = messages_to_history(messages + [{'role': 'assistant', 'content': content}])
155
- yield {
156
- "code_output": remove_code_block(content),
157
- "history": _history,
158
- "sandbox": send_to_sandbox(remove_code_block(content)),
159
- "history_output": history_to_chatbot_messages(_history),
160
- }
 
161
 
162
  except Exception as e:
163
  error_message = f"Error: {str(e)}"
164
- yield {
165
- "code_output": error_message,
166
- "history_output": history_to_chatbot_messages(_history),
167
- }
 
129
  clean_code = remove_code_block(content)
130
  if has_existing_html:
131
  # Fallback: If the model returns a full HTML file, use it directly
132
+ if not (clean_code.strip().startswith("<!DOCTYPE html>") or clean_code.strip().startswith("<html")):
 
 
 
 
 
 
133
  last_html = _history[-1][1] if _history else ""
134
  modified_html = apply_search_replace_changes(last_html, clean_code)
135
+ clean_code = remove_code_block(modified_html)
136
+
137
+ yield (
138
+ gr.update(value=clean_code, language=get_gradio_language(language)),
139
+ _history,
140
+ send_to_sandbox(clean_code) if language == "html" else "<div style='padding:1em;color:#888;text-align:center;'>Preview is only available for HTML.</div>",
141
+ history_to_chatbot_messages(_history)
142
+ )
 
 
 
 
143
  # Final update
144
  _history = messages_to_history(messages + [{'role': 'assistant', 'content': content}])
145
+ final_code = remove_code_block(content)
146
+ yield (
147
+ final_code,
148
+ _history,
149
+ send_to_sandbox(final_code),
150
+ history_to_chatbot_messages(_history),
151
+ )
152
 
153
  except Exception as e:
154
  error_message = f"Error: {str(e)}"
155
+ yield (error_message, _history, None, history_to_chatbot_messages(_history))