skallewag commited on
Commit
04778a5
·
verified ·
1 Parent(s): 2dac313

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +37 -8
app.py CHANGED
@@ -147,21 +147,49 @@ with gr.Blocks(title="Prepperoni - Premiere Pro to XML Converter", css=css) as a
147
  sequences = []
148
  error_msg = ""
149
 
 
 
 
150
  try:
151
- if isinstance(result, (list, tuple)) and len(result) >= 1:
152
- sequences = result[0]
153
- if len(result) >= 2:
154
- error_msg = result[1]
 
 
 
 
 
 
 
 
155
  elif isinstance(result, dict):
156
  if 'choices' in result:
157
  sequences = result['choices']
158
- elif 'data' in result and isinstance(result['data'], (list, tuple)) and len(result['data']) >= 1:
159
- sequences = result['data'][0]
 
 
 
 
 
160
 
161
  if 'error' in result:
162
  error_msg = result['error']
 
 
 
 
 
 
 
 
 
 
 
 
163
 
164
- logger.info(f"Loaded sequences: {sequences}")
165
  except Exception as e:
166
  logger.exception(f"Error processing sequences result: {e}")
167
  return gr.Dropdown(choices=[], value=None, visible=False), [], f"Error processing sequences: {str(e)}"
@@ -170,7 +198,8 @@ with gr.Blocks(title="Prepperoni - Premiere Pro to XML Converter", css=css) as a
170
  return gr.Dropdown(choices=[], value=None, visible=False), [], "No sequences found in the project."
171
 
172
  # Update the dropdown with sequence names
173
- return gr.Dropdown(choices=sequences, value=sequences[0] if sequences else None, visible=True), sequences, f"Found {len(sequences)} sequences. Select one to convert."
 
174
 
175
  except Exception as e:
176
  logger.exception("Error in update_sequence_dropdown")
 
147
  sequences = []
148
  error_msg = ""
149
 
150
+ # Log the raw result for debugging
151
+ logger.info(f"Raw sequence result: {result}")
152
+
153
  try:
154
+ # Handle different result formats
155
+ if isinstance(result, (list, tuple)):
156
+ if len(result) > 0:
157
+ if isinstance(result[0], (list, tuple)):
158
+ # It's a list of sequences
159
+ sequences = result[0]
160
+ else:
161
+ # The result itself is the list of sequences
162
+ sequences = result
163
+
164
+ if len(result) >= 2 and isinstance(result[1], str):
165
+ error_msg = result[1]
166
  elif isinstance(result, dict):
167
  if 'choices' in result:
168
  sequences = result['choices']
169
+ elif 'data' in result:
170
+ if isinstance(result['data'], (list, tuple)) and len(result['data']) >= 1:
171
+ sequences = result['data'][0]
172
+ else:
173
+ sequences = result['data']
174
+ elif 'sequences' in result:
175
+ sequences = result['sequences']
176
 
177
  if 'error' in result:
178
  error_msg = result['error']
179
+
180
+ # Ensure sequences is a list
181
+ if not isinstance(sequences, (list, tuple)):
182
+ # Try to convert to a list if it's something else
183
+ if hasattr(sequences, 'items'): # It's a dictionary-like object
184
+ sequences = list(sequences.values())
185
+ else:
186
+ # Try to make it a list with a single item
187
+ sequences = [sequences]
188
+
189
+ # Convert any non-string items to strings
190
+ sequences = [str(seq) for seq in sequences]
191
 
192
+ logger.info(f"Processed sequences: {sequences}")
193
  except Exception as e:
194
  logger.exception(f"Error processing sequences result: {e}")
195
  return gr.Dropdown(choices=[], value=None, visible=False), [], f"Error processing sequences: {str(e)}"
 
198
  return gr.Dropdown(choices=[], value=None, visible=False), [], "No sequences found in the project."
199
 
200
  # Update the dropdown with sequence names
201
+ first_value = sequences[0] if sequences and len(sequences) > 0 else None
202
+ return gr.Dropdown(choices=sequences, value=first_value, visible=True), sequences, f"Found {len(sequences)} sequences. Select one to convert."
203
 
204
  except Exception as e:
205
  logger.exception("Error in update_sequence_dropdown")