Spaces:
Paused
Paused
Update app.py
Browse files
app.py
CHANGED
@@ -40,17 +40,22 @@ def get_deployment_update(code_md: str):
|
|
40 |
result = deploy_to_vercel(clean)
|
41 |
|
42 |
m = re.search(r"https?://[\\w-]+\\.vercel\\.app", result)
|
43 |
-
if m:
|
44 |
url = m.group(0)
|
45 |
-
|
46 |
-
f"<div class='deploy-success'
|
47 |
-
f"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
48 |
)
|
49 |
-
#
|
50 |
-
|
51 |
-
return (
|
52 |
-
f"<div class='deploy-error'>❌ 배포 실패<br>{safe}</div>"
|
53 |
-
)
|
54 |
|
55 |
|
56 |
# ------------------------
|
@@ -879,10 +884,9 @@ with gr.Blocks(css_paths=["app.css"], theme=theme) as demo:
|
|
879 |
gr.HTML('<div class="help-text">💡 원하는 게임의 설명을 입력하세요. 예: "테트리스 게임 제작해줘."</div>')
|
880 |
|
881 |
|
882 |
-
|
883 |
deploy_result_container = gr.HTML(
|
884 |
-
value="
|
885 |
-
visible=
|
886 |
elem_id="deploy_result_container",
|
887 |
)
|
888 |
|
|
|
40 |
result = deploy_to_vercel(clean)
|
41 |
|
42 |
m = re.search(r"https?://[\\w-]+\\.vercel\\.app", result)
|
43 |
+
if m: # ── 성공 ──
|
44 |
url = m.group(0)
|
45 |
+
html_box = (
|
46 |
+
f"<div class='deploy-success'>"
|
47 |
+
f"✅ 배포 완료!<br>"
|
48 |
+
f"<a href='{url}' target='_blank'>{url}</a>"
|
49 |
+
f"</div>"
|
50 |
+
)
|
51 |
+
else: # ── 실패 ──
|
52 |
+
html_box = (
|
53 |
+
"<div class='deploy-error'>"
|
54 |
+
f"❌ {html.escape(result)}"
|
55 |
+
"</div>"
|
56 |
)
|
57 |
+
# ▲▲▲ 반드시 visible=True 로 돌려준다 ▲▲▲
|
58 |
+
return gr.HTML.update(value=html_box, visible=True, sanitize=False)
|
|
|
|
|
|
|
59 |
|
60 |
|
61 |
# ------------------------
|
|
|
884 |
gr.HTML('<div class="help-text">💡 원하는 게임의 설명을 입력하세요. 예: "테트리스 게임 제작해줘."</div>')
|
885 |
|
886 |
|
|
|
887 |
deploy_result_container = gr.HTML(
|
888 |
+
value="", # 첫 화면은 비워 두기
|
889 |
+
visible=False, # 처음엔 숨김
|
890 |
elem_id="deploy_result_container",
|
891 |
)
|
892 |
|