unnastyle commited on
Commit
b491e64
ยท
verified ยท
1 Parent(s): a4c6481

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +27 -14
app.py CHANGED
@@ -136,7 +136,7 @@ with gr.Blocks() as demo:
136
  remove_timeline_button = gr.Button("ํƒ€์ž„๋ผ์ธ ์ œ๊ฑฐ")
137
 
138
  # ์ถœ๋ ฅ์ฐฝ 3๊ฐœ: ๊ฐ•์˜1 ํƒ€์ž„๋ผ์ธ ์ œ๊ฑฐ, ๊ฐ•์˜2 ํƒ€์ž„๋ผ์ธ ์ œ๊ฑฐ, ๊ฐ•์˜3 ํƒ€์ž„๋ผ์ธ ์ œ๊ฑฐ (๊ฐ€๋กœ๋กœ ๋‚˜์—ด)
139
- # ๊ฐ Textbox์— elem_id๋ฅผ ๋ถ€์—ฌํ•˜์—ฌ JavaScript๋กœ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•จ.
140
  with gr.Row():
141
  cleaned1 = gr.Textbox(label="๊ฐ•์˜1 ํƒ€์ž„๋ผ์ธ ์ œ๊ฑฐ", lines=10, elem_id="cleaned1")
142
  cleaned2 = gr.Textbox(label="๊ฐ•์˜2 ํƒ€์ž„๋ผ์ธ ์ œ๊ฑฐ", lines=10, elem_id="cleaned2")
@@ -172,28 +172,41 @@ with gr.Blocks() as demo:
172
  # ํด๋ฆฝ๋ณด๋“œ ๋ณต์‚ฌ ๊ธฐ๋Šฅ์„ ์œ„ํ•œ JavaScript ์ฝ”๋“œ๋ฅผ ํฌํ•จํ•˜๋Š” HTML ์ปดํฌ๋„ŒํŠธ
173
  custom_script = """
174
  <script>
175
- function setupClipboard(copyButtonId, textBoxId, resultBoxId) {
176
  const copyButton = document.getElementById(copyButtonId);
177
- if(copyButton){
178
- copyButton.addEventListener('click', function() {
179
- const textBox = document.getElementById(textBoxId);
180
- const resultBox = document.getElementById(resultBoxId);
181
- if (textBox && resultBox) {
182
- var text = textBox.value;
 
 
 
 
 
 
 
 
183
  if (text.trim() === "") {
184
- resultBox.value = "๋ณต์‚ฌํ•  ๋‚ด์šฉ์ด ์—†์Šต๋‹ˆ๋‹ค.";
185
  } else {
186
  navigator.clipboard.writeText(text).then(function() {
187
- resultBox.value = "๋ณต์‚ฌ์™„๋ฃŒ";
 
188
  }, function(err) {
189
- resultBox.value = "๋ณต์‚ฌ ์‹คํŒจ";
 
190
  });
191
  }
 
 
192
  }
193
- });
194
- }
 
 
195
  }
196
- // DOMContentLoaded ์ดํ›„์— ์ด๋ฒคํŠธ ์„ค์ •
197
  document.addEventListener("DOMContentLoaded", function(){
198
  setupClipboard("copy1", "cleaned1", "copy_result1");
199
  setupClipboard("copy2", "cleaned2", "copy_result2");
 
136
  remove_timeline_button = gr.Button("ํƒ€์ž„๋ผ์ธ ์ œ๊ฑฐ")
137
 
138
  # ์ถœ๋ ฅ์ฐฝ 3๊ฐœ: ๊ฐ•์˜1 ํƒ€์ž„๋ผ์ธ ์ œ๊ฑฐ, ๊ฐ•์˜2 ํƒ€์ž„๋ผ์ธ ์ œ๊ฑฐ, ๊ฐ•์˜3 ํƒ€์ž„๋ผ์ธ ์ œ๊ฑฐ (๊ฐ€๋กœ๋กœ ๋‚˜์—ด)
139
+ # ๊ฐ Textbox์— elem_id๋ฅผ ๋ถ€์—ฌํ•˜์—ฌ JavaScript์—์„œ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•จ.
140
  with gr.Row():
141
  cleaned1 = gr.Textbox(label="๊ฐ•์˜1 ํƒ€์ž„๋ผ์ธ ์ œ๊ฑฐ", lines=10, elem_id="cleaned1")
142
  cleaned2 = gr.Textbox(label="๊ฐ•์˜2 ํƒ€์ž„๋ผ์ธ ์ œ๊ฑฐ", lines=10, elem_id="cleaned2")
 
172
  # ํด๋ฆฝ๋ณด๋“œ ๋ณต์‚ฌ ๊ธฐ๋Šฅ์„ ์œ„ํ•œ JavaScript ์ฝ”๋“œ๋ฅผ ํฌํ•จํ•˜๋Š” HTML ์ปดํฌ๋„ŒํŠธ
173
  custom_script = """
174
  <script>
175
+ function setupClipboard(copyButtonId, textContainerId, resultContainerId) {
176
  const copyButton = document.getElementById(copyButtonId);
177
+ if (!copyButton) {
178
+ console.error("๋ฒ„ํŠผ " + copyButtonId + "๋ฅผ ์ฐพ์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.");
179
+ return;
180
+ }
181
+ copyButton.addEventListener('click', function() {
182
+ console.log(copyButtonId + " ํด๋ฆญ๋จ");
183
+ // ํ…์ŠคํŠธ๋ฐ•์Šค ์ปจํ…Œ์ด๋„ˆ ๋‚ด๋ถ€์˜ textarea ์š”์†Œ๋ฅผ ์ฐพ์Œ
184
+ const textContainer = document.getElementById(textContainerId);
185
+ const resultContainer = document.getElementById(resultContainerId);
186
+ if (textContainer && resultContainer) {
187
+ const textarea = textContainer.querySelector("textarea");
188
+ const resultArea = resultContainer.querySelector("textarea");
189
+ if (textarea && resultArea) {
190
+ var text = textarea.value;
191
  if (text.trim() === "") {
192
+ resultArea.value = "๋ณต์‚ฌํ•  ๋‚ด์šฉ์ด ์—†์Šต๋‹ˆ๋‹ค.";
193
  } else {
194
  navigator.clipboard.writeText(text).then(function() {
195
+ console.log("ํด๋ฆฝ๋ณด๋“œ์— ๋ณต์‚ฌ๋จ: " + text);
196
+ resultArea.value = "๋ณต์‚ฌ์™„๋ฃŒ";
197
  }, function(err) {
198
+ console.error("๋ณต์‚ฌ ์‹คํŒจ: " + err);
199
+ resultArea.value = "๋ณต์‚ฌ ์‹คํŒจ";
200
  });
201
  }
202
+ } else {
203
+ console.error("textarea ์š”์†Œ๋ฅผ ์ฐพ์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค.");
204
  }
205
+ } else {
206
+ console.error("ํ…์ŠคํŠธ ๋˜๋Š” ๊ฒฐ๊ณผ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์ฐพ์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค.");
207
+ }
208
+ });
209
  }
 
210
  document.addEventListener("DOMContentLoaded", function(){
211
  setupClipboard("copy1", "cleaned1", "copy_result1");
212
  setupClipboard("copy2", "cleaned2", "copy_result2");