bluenevus commited on
Commit
dabf044
·
1 Parent(s): 7e236fd

Update app.py via AI Editor

Browse files
Files changed (1) hide show
  1. app.py +20 -28
app.py CHANGED
@@ -342,7 +342,7 @@ def get_right_col_content(selected_type, store_data):
342
  },
343
  multiple=False
344
  ),
345
- html.Div(id=doc_name_id),
346
  dbc.RadioItems(
347
  id={'type': 'radio-doc-source', 'subtype': src, 'index': selected_type},
348
  options=[
@@ -491,14 +491,6 @@ def update_right_col(selected_type):
491
  Output('store-virtual-board', 'data'),
492
  Output('file-list', 'children'),
493
  Output('uploaded-doc-name-shred', 'children'),
494
- Output('uploaded-doc-name-pink', 'children'),
495
- Output('uploaded-doc-name-pink_review', 'children'),
496
- Output('uploaded-doc-name-red', 'children'),
497
- Output('uploaded-doc-name-red_review', 'children'),
498
- Output('uploaded-doc-name-gold', 'children'),
499
- Output('uploaded-doc-name-gold_review', 'children'),
500
- Output('uploaded-doc-name-loe', 'children'),
501
- Output('uploaded-doc-name-virtual_board', 'children'),
502
  Output('document-preview', 'children'),
503
  Output('store-generated-doc', 'data'),
504
  Output('download-document', 'data'),
@@ -529,7 +521,7 @@ def unified_handler(contents_lists, n_clicks_generate_list, n_clicks_download, s
529
  filenames_lists, shred, pink, pink_review, red, red_review, gold, gold_review, loe, virtual_board, prev_generated):
530
  stores = [shred, pink, pink_review, red, red_review, gold, gold_review, loe, virtual_board]
531
  file_list = []
532
- doc_names = [None]*9
533
  preview = dash.no_update
534
  generated_doc = dash.no_update
535
  download_data = dash.no_update
@@ -539,15 +531,15 @@ def unified_handler(contents_lists, n_clicks_generate_list, n_clicks_download, s
539
  trigger = ctx.triggered[0]['prop_id'] if ctx.triggered else ""
540
 
541
  subtype_map = {
542
- "shred": (0, 0),
543
- "pink": (1, 1),
544
- "pink_review": (2, 2),
545
- "red": (3, 3),
546
- "red_review": (4, 4),
547
- "gold": (5, 5),
548
- "gold_review": (6, 6),
549
- "loe": (7, 7),
550
- "virtual_board": (8, 8)
551
  }
552
 
553
  # Handle upload
@@ -556,7 +548,7 @@ def unified_handler(contents_lists, n_clicks_generate_list, n_clicks_download, s
556
  if contents and filenames:
557
  id_dict = ctx.inputs_list[0][i]['id']
558
  subtype = id_dict['subtype']
559
- idx, doc_name_idx = subtype_map[subtype]
560
  if isinstance(contents, str):
561
  contents = [contents]
562
  filenames = [filenames]
@@ -565,7 +557,6 @@ def unified_handler(contents_lists, n_clicks_generate_list, n_clicks_download, s
565
  file_text = process_document(content, name)
566
  set_uploaded_doc(subtype, file_text, name)
567
  stores[idx] = file_text
568
- doc_names[doc_name_idx] = name
569
  if subtype == "shred":
570
  file_list = [
571
  dbc.Row([
@@ -579,6 +570,7 @@ def unified_handler(contents_lists, n_clicks_generate_list, n_clicks_download, s
579
  )
580
  ], id={'type': 'file-row', 'index': name}, align="center", className="mb-1")
581
  ]
 
582
  progress = "progress"
583
  # Set preview for this upload
584
  if subtype == "shred":
@@ -589,7 +581,7 @@ def unified_handler(contents_lists, n_clicks_generate_list, n_clicks_download, s
589
  preview = markdown_table_preview(file_text)
590
  generated_doc = dash.no_update
591
  download_data = dash.no_update
592
- return stores + [file_list] + doc_names + [preview, generated_doc, download_data, progress]
593
 
594
  # Handle Generate
595
  if any(n_clicks_generate_list):
@@ -634,7 +626,7 @@ def unified_handler(contents_lists, n_clicks_generate_list, n_clicks_download, s
634
  preview = markdown_narrative_preview(generated_doc)
635
  progress = "progress"
636
  download_data = dash.no_update
637
- return stores + [file_list] + doc_names + [preview, generated_doc, download_data, progress]
638
 
639
  # Handle Download
640
  if "btn-download" in trigger:
@@ -662,19 +654,19 @@ def unified_handler(contents_lists, n_clicks_generate_list, n_clicks_download, s
662
  doc = stores[8]
663
  if not doc:
664
  logging.warning("No generated document to download.")
665
- return stores + [file_list] + doc_names + [dash.no_update, dash.no_update, dash.no_update, dash.no_update]
666
  if selected_type in spreadsheet_types:
667
  xlsx_io = markdown_tables_to_xlsx(doc)
668
  logging.info("Spreadsheet document prepared for download.")
669
  download_data = dcc.send_bytes(xlsx_io.getvalue(), filename=f"{selected_type}_output.xlsx")
670
  progress = "progress"
671
- return stores + [file_list] + doc_names + [dash.no_update, dash.no_update, download_data, progress]
672
  else:
673
  content = doc.encode('utf-8')
674
  logging.info("Narrative document prepared for download.")
675
  download_data = dcc.send_bytes(content, filename=f"{selected_type}_output.md")
676
  progress = "progress"
677
- return stores + [file_list] + doc_names + [dash.no_update, dash.no_update, download_data, progress]
678
 
679
  # Handle Doc Type Change/Preview
680
  doc = get_generated_doc(selected_type)
@@ -701,12 +693,12 @@ def unified_handler(contents_lists, n_clicks_generate_list, n_clicks_download, s
701
  preview = markdown_narrative_preview(doc)
702
  else:
703
  preview = html.Div("No document loaded.")
704
- return stores + [file_list] + doc_names + [preview, dash.no_update, dash.no_update, dash.no_update]
705
  if selected_type in spreadsheet_types:
706
  preview = markdown_table_preview(doc)
707
  else:
708
  preview = markdown_narrative_preview(doc)
709
- return stores + [file_list] + doc_names + [preview, doc, dash.no_update, dash.no_update]
710
 
711
  @app.callback(
712
  Output("main-progress-dot-output", "children"),
 
342
  },
343
  multiple=False
344
  ),
345
+ # Only the 'shred' one is present in layout, so don't add for others
346
  dbc.RadioItems(
347
  id={'type': 'radio-doc-source', 'subtype': src, 'index': selected_type},
348
  options=[
 
491
  Output('store-virtual-board', 'data'),
492
  Output('file-list', 'children'),
493
  Output('uploaded-doc-name-shred', 'children'),
 
 
 
 
 
 
 
 
494
  Output('document-preview', 'children'),
495
  Output('store-generated-doc', 'data'),
496
  Output('download-document', 'data'),
 
521
  filenames_lists, shred, pink, pink_review, red, red_review, gold, gold_review, loe, virtual_board, prev_generated):
522
  stores = [shred, pink, pink_review, red, red_review, gold, gold_review, loe, virtual_board]
523
  file_list = []
524
+ uploaded_doc_name_shred = dash.no_update
525
  preview = dash.no_update
526
  generated_doc = dash.no_update
527
  download_data = dash.no_update
 
531
  trigger = ctx.triggered[0]['prop_id'] if ctx.triggered else ""
532
 
533
  subtype_map = {
534
+ "shred": 0,
535
+ "pink": 1,
536
+ "pink_review": 2,
537
+ "red": 3,
538
+ "red_review": 4,
539
+ "gold": 5,
540
+ "gold_review": 6,
541
+ "loe": 7,
542
+ "virtual_board": 8
543
  }
544
 
545
  # Handle upload
 
548
  if contents and filenames:
549
  id_dict = ctx.inputs_list[0][i]['id']
550
  subtype = id_dict['subtype']
551
+ idx = subtype_map[subtype]
552
  if isinstance(contents, str):
553
  contents = [contents]
554
  filenames = [filenames]
 
557
  file_text = process_document(content, name)
558
  set_uploaded_doc(subtype, file_text, name)
559
  stores[idx] = file_text
 
560
  if subtype == "shred":
561
  file_list = [
562
  dbc.Row([
 
570
  )
571
  ], id={'type': 'file-row', 'index': name}, align="center", className="mb-1")
572
  ]
573
+ uploaded_doc_name_shred = name
574
  progress = "progress"
575
  # Set preview for this upload
576
  if subtype == "shred":
 
581
  preview = markdown_table_preview(file_text)
582
  generated_doc = dash.no_update
583
  download_data = dash.no_update
584
+ return stores + [file_list, uploaded_doc_name_shred, preview, generated_doc, download_data, progress]
585
 
586
  # Handle Generate
587
  if any(n_clicks_generate_list):
 
626
  preview = markdown_narrative_preview(generated_doc)
627
  progress = "progress"
628
  download_data = dash.no_update
629
+ return stores + [file_list, uploaded_doc_name_shred, preview, generated_doc, download_data, progress]
630
 
631
  # Handle Download
632
  if "btn-download" in trigger:
 
654
  doc = stores[8]
655
  if not doc:
656
  logging.warning("No generated document to download.")
657
+ return stores + [file_list, uploaded_doc_name_shred, dash.no_update, dash.no_update, dash.no_update, dash.no_update]
658
  if selected_type in spreadsheet_types:
659
  xlsx_io = markdown_tables_to_xlsx(doc)
660
  logging.info("Spreadsheet document prepared for download.")
661
  download_data = dcc.send_bytes(xlsx_io.getvalue(), filename=f"{selected_type}_output.xlsx")
662
  progress = "progress"
663
+ return stores + [file_list, uploaded_doc_name_shred, dash.no_update, dash.no_update, download_data, progress]
664
  else:
665
  content = doc.encode('utf-8')
666
  logging.info("Narrative document prepared for download.")
667
  download_data = dcc.send_bytes(content, filename=f"{selected_type}_output.md")
668
  progress = "progress"
669
+ return stores + [file_list, uploaded_doc_name_shred, dash.no_update, dash.no_update, download_data, progress]
670
 
671
  # Handle Doc Type Change/Preview
672
  doc = get_generated_doc(selected_type)
 
693
  preview = markdown_narrative_preview(doc)
694
  else:
695
  preview = html.Div("No document loaded.")
696
+ return stores + [file_list, uploaded_doc_name_shred, preview, dash.no_update, dash.no_update, dash.no_update]
697
  if selected_type in spreadsheet_types:
698
  preview = markdown_table_preview(doc)
699
  else:
700
  preview = markdown_narrative_preview(doc)
701
+ return stores + [file_list, uploaded_doc_name_shred, preview, doc, dash.no_update, dash.no_update]
702
 
703
  @app.callback(
704
  Output("main-progress-dot-output", "children"),