bluenevus commited on
Commit
41fc30d
·
1 Parent(s): 9a9c35a

Update app.py via AI Editor

Browse files
Files changed (1) hide show
  1. app.py +4 -5
app.py CHANGED
@@ -617,7 +617,7 @@ def update_preview_window_style(state):
617
  State('chat-input', 'value'),
618
  Input('cancel-action-btn', 'n_clicks'),
619
  State('preview-window-state', 'data'),
620
- Input('session-cleanup', 'data')
621
  ],
622
  prevent_initial_call=True
623
  )
@@ -625,7 +625,7 @@ def master_callback(
625
  shred_clicks, proposal_clicks, compliance_clicks, recover_clicks, board_clicks, loe_clicks,
626
  rfp_content, rfp_filename, doc_delete_clicks, selected_doc,
627
  proposal_content, proposal_filename, proposal_delete_clicks, selected_proposal,
628
- chat_input, cancel_clicks, preview_window_state, session_cleanup_data
629
  ):
630
  ctx = callback_context
631
  triggered_id = ctx.triggered[0]['prop_id'].split('.')[0] if ctx.triggered else None
@@ -642,8 +642,8 @@ def master_callback(
642
  proposal_delete_clicks = safe_get_n_clicks(ctx, 12)
643
  uploaded_rfp_decoded_bytes = None
644
 
645
- # Session cleanup: on session end, clear all data and temp dir
646
- if triggered_id == 'session-cleanup':
647
  sid = get_session_id()
648
  cleanup_session_tmpdir(sid)
649
  if sid in SESSION_DATA:
@@ -801,7 +801,6 @@ def master_callback(
801
  output_data_upload = dcc.Markdown(result, style={"whiteSpace": "pre-wrap", "wordWrap": "break-word"})
802
  finally:
803
  lock.release()
804
- # Update dropdowns and lists after action (in case doc/proposal was auto-created)
805
  doc_options = [{'label': fn, 'value': fn} for fn in session_dict['uploaded_documents'].keys()]
806
  doc_value = doc_value if doc_value in session_dict['uploaded_documents'] else (next(iter(session_dict['uploaded_documents']), None) if session_dict['uploaded_documents'] else None)
807
  proposal_options = [{'label': fn, 'value': fn} for fn in session_dict['proposals'].keys()]
 
617
  State('chat-input', 'value'),
618
  Input('cancel-action-btn', 'n_clicks'),
619
  State('preview-window-state', 'data'),
620
+ Input('session-cleanup', 'clear_data')
621
  ],
622
  prevent_initial_call=True
623
  )
 
625
  shred_clicks, proposal_clicks, compliance_clicks, recover_clicks, board_clicks, loe_clicks,
626
  rfp_content, rfp_filename, doc_delete_clicks, selected_doc,
627
  proposal_content, proposal_filename, proposal_delete_clicks, selected_proposal,
628
+ chat_input, cancel_clicks, preview_window_state, session_cleanup_clear
629
  ):
630
  ctx = callback_context
631
  triggered_id = ctx.triggered[0]['prop_id'].split('.')[0] if ctx.triggered else None
 
642
  proposal_delete_clicks = safe_get_n_clicks(ctx, 12)
643
  uploaded_rfp_decoded_bytes = None
644
 
645
+ # Session cleanup: only clear all data and temp dir if session-cleanup's clear_data is triggered (i.e., browser close)
646
+ if triggered_id == 'session-cleanup' and session_cleanup_clear:
647
  sid = get_session_id()
648
  cleanup_session_tmpdir(sid)
649
  if sid in SESSION_DATA:
 
801
  output_data_upload = dcc.Markdown(result, style={"whiteSpace": "pre-wrap", "wordWrap": "break-word"})
802
  finally:
803
  lock.release()
 
804
  doc_options = [{'label': fn, 'value': fn} for fn in session_dict['uploaded_documents'].keys()]
805
  doc_value = doc_value if doc_value in session_dict['uploaded_documents'] else (next(iter(session_dict['uploaded_documents']), None) if session_dict['uploaded_documents'] else None)
806
  proposal_options = [{'label': fn, 'value': fn} for fn in session_dict['proposals'].keys()]