bluenevus commited on
Commit
d4e44f6
·
1 Parent(s): f79582d

Update app.py via AI Editor

Browse files
Files changed (1) hide show
  1. app.py +42 -31
app.py CHANGED
@@ -260,11 +260,7 @@ def get_right_col_content(selected_type, shred_doc, pink_doc, pink_review_doc, r
260
  },
261
  multiple=True
262
  ),
263
- file_list_component(),
264
- html.Div([
265
- html.Div("Loaded Shred Document:", className="mt-2 mb-1"),
266
- markdown_table_preview(shred_doc)
267
- ], style={'marginBottom': '12px'})
268
  ])
269
  )
270
  elif selected_type in doc_dependencies:
@@ -481,32 +477,35 @@ def combined_callback(
481
  loading_msg = ""
482
  generated_doc = dash.no_update
483
 
484
- if trigger == "upload-document":
485
- if upload_contents and upload_filenames:
486
- for content, name in zip(upload_contents, upload_filenames):
487
- file_content = process_document(content, name)
488
- uploaded_files[name] = file_content
489
- new_shred = file_content
490
- files_display.append(
491
- dbc.Row([
492
- dbc.Col(
493
- html.Button('×', id={'type': 'remove-file', 'index': name}, style={'marginRight': '5px', 'fontSize': '10px'}),
494
- width=1
495
- ),
496
- dbc.Col(
497
- html.Span(name, style={'wordBreak': 'break-all'}),
498
- width=11
499
- )
500
- ], id={'type': 'file-row', 'index': name}, align="center", className="mb-1")
501
- )
502
- logging.info("Shred document uploaded and stored.")
503
- preview = markdown_table_preview(new_shred)
504
- generated_doc = dash.no_update
505
- else:
506
- preview = markdown_table_preview(new_shred)
507
- generated_doc = dash.no_update
 
 
508
  return files_display, new_shred, preview, loading_msg, generated_doc
509
 
 
510
  if any(n_clicks):
511
  logging.info(f"Generating document for type: {selected_type}")
512
  inputs = {
@@ -542,15 +541,27 @@ def combined_callback(
542
  t.start()
543
  t.join(timeout=60)
544
  generated_doc = result_holder.get('result', 'Error: No document generated.')
 
545
  if selected_type in spreadsheet_types:
546
  preview = markdown_table_preview(generated_doc)
547
  else:
548
  preview = markdown_narrative_preview(generated_doc)
549
  logging.info("Document preview updated.")
550
- # Always update document-preview, even if file-list/store-shred do not change
551
  return files_display, new_shred, preview, "", generated_doc
552
 
553
- # Always show preview for current shred if nothing else triggered
 
 
 
 
 
 
 
 
 
 
 
 
554
  return files_display, new_shred, markdown_table_preview(new_shred), loading_msg, generated_doc
555
 
556
  @app.callback(
 
260
  },
261
  multiple=True
262
  ),
263
+ file_list_component()
 
 
 
 
264
  ])
265
  )
266
  elif selected_type in doc_dependencies:
 
477
  loading_msg = ""
478
  generated_doc = dash.no_update
479
 
480
+ # Only handle upload if upload-document is present in layout
481
+ if trigger == "upload-document" and upload_contents is not None and upload_filenames is not None:
482
+ for content, name in zip(upload_contents, upload_filenames):
483
+ file_content = process_document(content, name)
484
+ uploaded_files[name] = file_content
485
+ new_shred = file_content
486
+ files_display.append(
487
+ dbc.Row([
488
+ dbc.Col(
489
+ html.Button('×', id={'type': 'remove-file', 'index': name}, style={'marginRight': '5px', 'fontSize': '10px'}),
490
+ width=1
491
+ ),
492
+ dbc.Col(
493
+ html.Span(name, style={'wordBreak': 'break-all'}),
494
+ width=11
495
+ )
496
+ ], id={'type': 'file-row', 'index': name}, align="center", className="mb-1")
497
+ )
498
+ logging.info("Shred document uploaded and stored.")
499
+ preview = markdown_table_preview(new_shred)
500
+ generated_doc = dash.no_update
501
+ return files_display, new_shred, preview, loading_msg, generated_doc
502
+
503
+ # Always show preview for current shred if nothing else triggered, for Shred only
504
+ if selected_type == "Shred" and not any(n_clicks):
505
+ preview = markdown_table_preview(new_shred)
506
  return files_display, new_shred, preview, loading_msg, generated_doc
507
 
508
+ # Handle generate document
509
  if any(n_clicks):
510
  logging.info(f"Generating document for type: {selected_type}")
511
  inputs = {
 
541
  t.start()
542
  t.join(timeout=60)
543
  generated_doc = result_holder.get('result', 'Error: No document generated.')
544
+ # Always update preview for all doc types
545
  if selected_type in spreadsheet_types:
546
  preview = markdown_table_preview(generated_doc)
547
  else:
548
  preview = markdown_narrative_preview(generated_doc)
549
  logging.info("Document preview updated.")
 
550
  return files_display, new_shred, preview, "", generated_doc
551
 
552
+ # For all other doc types, show preview of generated doc if present
553
+ if selected_type != "Shred":
554
+ if generated_doc not in (None, "", dash.no_update):
555
+ if selected_type in spreadsheet_types:
556
+ preview = markdown_table_preview(generated_doc)
557
+ else:
558
+ preview = markdown_narrative_preview(generated_doc)
559
+ return files_display, new_shred, preview, loading_msg, generated_doc
560
+
561
+ # Default: clear preview for non-shred if nothing else
562
+ if selected_type != "Shred":
563
+ return files_display, new_shred, html.Div(), loading_msg, generated_doc
564
+
565
  return files_display, new_shred, markdown_table_preview(new_shred), loading_msg, generated_doc
566
 
567
  @app.callback(