mirror of
https://github.com/open-webui/open-webui.git
synced 2026-08-13 01:02:25 -06:00
refac
This commit is contained in:
@@ -729,6 +729,10 @@
|
||||
);
|
||||
};
|
||||
|
||||
$: if ($terminalServers !== null && $selectedTerminalId && !isTerminalAvailable($selectedTerminalId)) {
|
||||
selectedTerminalId.set(null);
|
||||
}
|
||||
|
||||
let settingDefaults = false;
|
||||
const setDefaults = async () => {
|
||||
if (settingDefaults) return;
|
||||
@@ -1286,11 +1290,6 @@
|
||||
});
|
||||
}
|
||||
|
||||
// Clear stale selectedTerminalId if the referenced terminal no longer exists
|
||||
if ($selectedTerminalId && !isTerminalAvailable($selectedTerminalId)) {
|
||||
selectedTerminalId.set(null);
|
||||
}
|
||||
|
||||
const pageSubscribe = page.subscribe(async (p) => {
|
||||
if (p.url.pathname === '/' || p.url.pathname.startsWith('/folders/')) {
|
||||
await tick();
|
||||
|
||||
@@ -110,6 +110,7 @@
|
||||
// Clear selected direct terminal if user lost permission
|
||||
$: if (
|
||||
$selectedTerminalId &&
|
||||
$terminalServers !== null &&
|
||||
!($terminalServers ?? []).some((t) => t.id && t.id === $selectedTerminalId) &&
|
||||
!($user?.role === 'admin' || ($user?.permissions?.features?.direct_tool_servers ?? true))
|
||||
) {
|
||||
|
||||
@@ -696,7 +696,7 @@
|
||||
}
|
||||
|
||||
// Clear selected terminal when model doesn't support terminal
|
||||
$: if ($selectedTerminalId && terminalCapableModels.length === 0) {
|
||||
$: if ($selectedTerminalId && selectedModelIds.length > 0 && terminalCapableModels.length === 0) {
|
||||
selectedTerminalId.set(null);
|
||||
}
|
||||
|
||||
|
||||
@@ -94,7 +94,7 @@ export const adminLeaderboardCount: Writable<number | null> = writable(null);
|
||||
export const adminFeedbackCount: Writable<number | null> = writable(null);
|
||||
|
||||
export const toolServers = writable([]);
|
||||
export const terminalServers = writable([]);
|
||||
export const terminalServers: Writable<any[] | null> = writable(null);
|
||||
|
||||
// Persistent Pyodide worker for code interpreter FS
|
||||
export const pyodideWorker: Writable<Worker | null> = writable(null);
|
||||
|
||||
@@ -184,7 +184,7 @@
|
||||
name: t.name,
|
||||
key: localStorage.token
|
||||
}));
|
||||
terminalServers.update((existing) => [...existing, ...terminalEntries]);
|
||||
terminalServers.update((existing) => [...(existing ?? []), ...terminalEntries]);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -264,9 +264,10 @@
|
||||
}).catch((e) => console.error('Failed to load user settings:', e))
|
||||
]);
|
||||
|
||||
const loadToolServers = setToolServers().catch((e) =>
|
||||
console.error('Failed to load tool servers:', e)
|
||||
);
|
||||
const loadToolServers = setToolServers().catch((e) => {
|
||||
console.error('Failed to load tool servers:', e);
|
||||
terminalServers.set([]);
|
||||
});
|
||||
if (
|
||||
$page.url.searchParams.get('q') &&
|
||||
($page.url.searchParams.get('submit') ?? 'true') === 'true'
|
||||
|
||||
Reference in New Issue
Block a user