enh: offline mode

This commit is contained in:
Timothy Jaeryang Baek
2025-06-30 15:20:41 +04:00
parent 2748fc1e4d
commit 71d550dd26
4 changed files with 29 additions and 20 deletions
+1
View File
@@ -1546,6 +1546,7 @@ async def get_app_config(request: Request):
"name": app.state.WEBUI_NAME,
"version": VERSION,
"default_locale": str(DEFAULT_LOCALE),
"offline_mode": OFFLINE_MODE,
"oauth": {
"providers": {
name: config.get("name", name)
@@ -90,7 +90,9 @@
};
onMount(async () => {
checkForVersionUpdates();
if (!$config?.offline_mode) {
checkForVersionUpdates();
}
await Promise.all([
(async () => {
@@ -160,15 +162,17 @@
</button>
</div>
<button
class=" text-xs px-3 py-1.5 bg-gray-50 hover:bg-gray-100 dark:bg-gray-850 dark:hover:bg-gray-800 transition rounded-lg font-medium"
type="button"
on:click={() => {
checkForVersionUpdates();
}}
>
{$i18n.t('Check for updates')}
</button>
{#if !$config?.offline_mode}
<button
class=" text-xs px-3 py-1.5 bg-gray-50 hover:bg-gray-100 dark:bg-gray-850 dark:hover:bg-gray-800 transition rounded-lg font-medium"
type="button"
on:click={() => {
checkForVersionUpdates();
}}
>
{$i18n.t('Check for updates')}
</button>
{/if}
</div>
</div>
+13 -9
View File
@@ -38,7 +38,9 @@
return '';
});
checkForVersionUpdates();
if (!$config?.offline_mode) {
checkForVersionUpdates();
}
});
</script>
@@ -80,14 +82,16 @@
</button>
</div>
<button
class=" text-xs px-3 py-1.5 bg-gray-100 hover:bg-gray-200 dark:bg-gray-850 dark:hover:bg-gray-800 transition rounded-lg font-medium"
on:click={() => {
checkForVersionUpdates();
}}
>
{$i18n.t('Check for updates')}
</button>
{#if $config?.offline_mode}
<button
class=" text-xs px-3 py-1.5 bg-gray-100 hover:bg-gray-200 dark:bg-gray-850 dark:hover:bg-gray-800 transition rounded-lg font-medium"
on:click={() => {
checkForVersionUpdates();
}}
>
{$i18n.t('Check for updates')}
</button>
{/if}
</div>
</div>
+1 -1
View File
@@ -228,7 +228,7 @@
}
// Check for version updates
if ($user?.role === 'admin') {
if ($user?.role === 'admin' && !$config?.offline_mode) {
// Check if the user has dismissed the update toast in the last 24 hours
if (localStorage.dismissedUpdateToast) {
const dismissedUpdateToast = new Date(Number(localStorage.dismissedUpdateToast));