File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 2020 settings ,
2121 showFileNavPath ,
2222 selectedTerminalId ,
23+ pyodideActive ,
2324 user
2425 } from ' $lib/stores' ;
2526
7677 (($terminalServers ?? []).some ((t ) => t .id && t .id === $selectedTerminalId ) ||
7778 $user ?.role === ' admin' ||
7879 ($user ?.permissions ?.features ?.direct_tool_servers ?? true ))) ||
79- (codeInterpreterEnabled && $config ?.code ?.interpreter_engine !== ' jupyter' );
80+ (codeInterpreterEnabled && $config ?.code ?.interpreter_engine !== ' jupyter' ) ||
81+ $pyodideActive ;
8082 $ : showOverviewTab = hasMessages ;
8183
8284 // Tab fallback: if active tab becomes hidden, switch to next available
375377 />
376378 {:else if activeTab === ' files' && $selectedTerminalId }
377379 <FileNav onAttach ={handleTerminalAttach } {chatId } />
378- {:else if activeTab === ' files' && codeInterpreterEnabled }
380+ {:else if activeTab === ' files' && ( codeInterpreterEnabled || $pyodideActive ) }
379381 <PyodideFileNav />
380382 {:else }
381383 <Controls embed ={true } {models } bind:chatFiles bind:params />
526528 />
527529 {:else if activeTab === ' files' && $selectedTerminalId }
528530 <FileNav onAttach ={handleTerminalAttach } overlay ={dragged } {chatId } />
529- {:else if activeTab === ' files' && codeInterpreterEnabled }
531+ {:else if activeTab === ' files' && ( codeInterpreterEnabled || $pyodideActive ) }
530532 <PyodideFileNav overlay ={dragged } />
531533 {:else }
532534 <Controls embed ={true } {models } bind:chatFiles bind:params />
Original file line number Diff line number Diff line change @@ -78,6 +78,8 @@ export const terminalServers = writable([]);
7878
7979// Persistent Pyodide worker for code interpreter FS
8080export const pyodideWorker : Writable < Worker | null > = writable ( null ) ;
81+ // Decouples the Files panel from the code-interpreter toggle.
82+ export const pyodideActive = writable ( false ) ;
8183
8284export const banners : Writable < Banner [ ] > = writable ( [ ] ) ;
8385
Original file line number Diff line number Diff line change 3737 showFileNavPath ,
3838 showFileNavDir ,
3939 pyodideWorker ,
40+ pyodideActive ,
4041 desktopEvent
4142 } from ' $lib/stores' ;
4243 import { getFileContentById } from ' $lib/apis/files' ;
266267 ].filter (Boolean );
267268
268269 const worker = getOrCreateWorker ();
270+ pyodideActive .set (true );
269271
270272 // Fetch file content from the server and prepare for the worker
271273 let filePayloads = [];
353355 );
354356 }
355357
358+ window .dispatchEvent (new Event (' pyodide:files' )); // IDBFS may have changed — refresh the Files panel.
356359 executing = false ;
357360 };
358361
You can’t perform that action at this time.
0 commit comments