mirror of
https://github.com/open-webui/open-webui.git
synced 2026-08-26 23:44:48 -06:00
refac
This commit is contained in:
@@ -114,6 +114,9 @@ for file_path in (FRONTEND_BUILD_DIR / 'static').glob('**/*'):
|
||||
except Exception as e:
|
||||
logging.error(f'An error occurred: {e}')
|
||||
|
||||
# LICENSE covers copied Open WebUI logo/favicon assets.
|
||||
# Do not alter, remove, obscure, or replace them except as LICENSE permits:
|
||||
# https://docs.openwebui.com/license.
|
||||
frontend_favicon = FRONTEND_BUILD_DIR / 'static' / 'favicon.png'
|
||||
|
||||
if frontend_favicon.exists():
|
||||
@@ -181,6 +184,9 @@ CACHE_DIR.mkdir(parents=True, exist_ok=True)
|
||||
# CUSTOM_NAME (Legacy)
|
||||
####################################
|
||||
|
||||
# LICENSE covers this legacy Open WebUI branding path.
|
||||
# Do not alter, remove, obscure, or replace it except as LICENSE permits:
|
||||
# https://docs.openwebui.com/license.
|
||||
CUSTOM_NAME = os.getenv('CUSTOM_NAME', '')
|
||||
|
||||
if CUSTOM_NAME:
|
||||
|
||||
@@ -888,10 +888,16 @@ if LICENSE_PUBLIC_KEY:
|
||||
# WEBUI Identity
|
||||
####################################
|
||||
|
||||
# LICENSE covers this Open WebUI name/logo/identifier.
|
||||
# Do not alter, remove, obscure, or replace it except as LICENSE permits:
|
||||
# https://docs.openwebui.com/license.
|
||||
WEBUI_NAME = os.getenv('WEBUI_NAME', 'Open WebUI')
|
||||
if WEBUI_NAME != 'Open WebUI':
|
||||
WEBUI_NAME += ' (Open WebUI)'
|
||||
|
||||
# LICENSE covers this Open WebUI favicon identifier.
|
||||
# Do not alter, remove, obscure, or replace it except as LICENSE permits:
|
||||
# https://docs.openwebui.com/license.
|
||||
WEBUI_FAVICON_URL = 'https://openwebui.com/favicon.png'
|
||||
WEBUI_BUILD_HASH = os.getenv('WEBUI_BUILD_HASH', 'dev-build')
|
||||
TRUSTED_SIGNATURE_KEY = os.getenv('TRUSTED_SIGNATURE_KEY', '')
|
||||
@@ -948,6 +954,9 @@ except ValueError:
|
||||
# Progressive Web App
|
||||
####################################
|
||||
|
||||
# LICENSE covers install-time Open WebUI branding.
|
||||
# Do not alter, remove, obscure, or replace it except as LICENSE permits:
|
||||
# https://docs.openwebui.com/license.
|
||||
EXTERNAL_PWA_MANIFEST_URL = os.getenv('EXTERNAL_PWA_MANIFEST_URL', None)
|
||||
|
||||
####################################
|
||||
|
||||
@@ -483,6 +483,9 @@ app.state.oauth_client_manager = oauth_client_manager
|
||||
app.state.instance_id = None
|
||||
app.state.redis = None
|
||||
|
||||
# LICENSE covers this Open WebUI name/logo/identifier.
|
||||
# Do not alter, remove, obscure, or replace it except as LICENSE permits:
|
||||
# https://docs.openwebui.com/license.
|
||||
app.state.WEBUI_NAME = WEBUI_NAME
|
||||
app.state.LICENSE_METADATA = None
|
||||
app.state.USER_COUNT = None
|
||||
@@ -2688,6 +2691,9 @@ async def oauth_backchannel_logout(
|
||||
async def get_manifest_json():
|
||||
external_pwa_manifest_url = getattr(app.state, 'EXTERNAL_PWA_MANIFEST_URL', None)
|
||||
if external_pwa_manifest_url:
|
||||
# LICENSE covers install-time Open WebUI branding.
|
||||
# Do not alter, remove, obscure, or replace it except as LICENSE permits:
|
||||
# https://docs.openwebui.com/license.
|
||||
session = await get_session()
|
||||
async with session.get(
|
||||
external_pwa_manifest_url,
|
||||
@@ -2696,6 +2702,9 @@ async def get_manifest_json():
|
||||
r.raise_for_status()
|
||||
return await r.json()
|
||||
else:
|
||||
# LICENSE covers generated Open WebUI install branding.
|
||||
# Do not alter, remove, obscure, or replace it except as LICENSE permits:
|
||||
# https://docs.openwebui.com/license.
|
||||
return {
|
||||
'name': app.state.WEBUI_NAME,
|
||||
'short_name': app.state.WEBUI_NAME,
|
||||
@@ -2704,6 +2713,9 @@ async def get_manifest_json():
|
||||
'display': 'standalone',
|
||||
'background_color': '#343541',
|
||||
'icons': [
|
||||
# LICENSE covers this Open WebUI install icon.
|
||||
# Do not alter, remove, obscure, or replace it except as LICENSE permits:
|
||||
# https://docs.openwebui.com/license.
|
||||
{
|
||||
'src': '/static/logo.png',
|
||||
'type': 'image/png',
|
||||
@@ -2728,6 +2740,9 @@ async def get_manifest_json():
|
||||
@app.get('/opensearch.xml')
|
||||
async def get_opensearch_xml():
|
||||
webui_url = await Config.get('webui.url')
|
||||
# LICENSE covers this Open WebUI search identifier.
|
||||
# Do not alter, remove, obscure, or replace it except as LICENSE permits:
|
||||
# https://docs.openwebui.com/license.
|
||||
xml_content = rf"""
|
||||
<OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/" xmlns:moz="http://www.mozilla.org/2006/browser/search/">
|
||||
<ShortName>{app.state.WEBUI_NAME}</ShortName>
|
||||
|
||||
@@ -86,11 +86,17 @@ def get_license_data(app, key):
|
||||
def data_handler(data):
|
||||
for k, v in data.items():
|
||||
if k == 'resources':
|
||||
# LICENSE covers these Open WebUI branding assets.
|
||||
# Do not alter, remove, obscure, or replace them except as LICENSE permits:
|
||||
# https://docs.openwebui.com/license.
|
||||
for p, c in v.items():
|
||||
globals().get('override_static', lambda a, b: None)(p, c)
|
||||
elif k == 'count':
|
||||
setattr(app.state, 'USER_COUNT', v)
|
||||
elif k == 'name':
|
||||
# LICENSE covers this Open WebUI product name.
|
||||
# Do not alter, remove, obscure, or replace it except as LICENSE permits:
|
||||
# https://docs.openwebui.com/license.
|
||||
setattr(app.state, 'WEBUI_NAME', v)
|
||||
elif k == 'metadata':
|
||||
setattr(app.state, 'LICENSE_METADATA', v)
|
||||
|
||||
@@ -2,6 +2,9 @@
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<!-- LICENSE covers this Open WebUI name/logo/identifier.
|
||||
Do not alter, remove, obscure, or replace it except as LICENSE permits:
|
||||
https://docs.openwebui.com/license. -->
|
||||
<link rel="icon" type="image/png" href="/static/favicon.png" crossorigin="use-credentials" />
|
||||
<link
|
||||
rel="icon"
|
||||
|
||||
@@ -93,6 +93,9 @@
|
||||
class="flex shrink-0 items-start justify-between gap-4 px-4 pb-2.5 pt-3.5 dark:text-white text-black"
|
||||
>
|
||||
<div class="min-w-0">
|
||||
<!-- LICENSE covers this Open WebUI release identifier.
|
||||
Do not alter, remove, obscure, or replace it except as LICENSE permits:
|
||||
https://docs.openwebui.com/license. -->
|
||||
<h2 class="m-0 truncate text-base font-normal">
|
||||
{$i18n.t("What's New in")}
|
||||
{$WEBUI_NAME}
|
||||
|
||||
@@ -109,6 +109,9 @@
|
||||
</button>
|
||||
|
||||
<div class="shrink-0 self-top -translate-y-0.5">
|
||||
<!-- LICENSE covers this Open WebUI notification logo.
|
||||
Do not alter, remove, obscure, or replace it except as LICENSE permits:
|
||||
https://docs.openwebui.com/license. -->
|
||||
<img src="{WEBUI_BASE_URL}/static/favicon.png" alt="favicon" class="size-6 rounded-full" />
|
||||
</div>
|
||||
|
||||
|
||||
@@ -40,6 +40,9 @@
|
||||
{#if show}
|
||||
<div class="relative h-screen max-h-[100dvh] w-full overflow-hidden text-white">
|
||||
<div class="fixed top-6 left-6 z-50 sm:top-10 sm:left-10">
|
||||
<!-- LICENSE covers this Open WebUI onboarding logo.
|
||||
Do not alter, remove, obscure, or replace it except as LICENSE permits:
|
||||
https://docs.openwebui.com/license. -->
|
||||
<img
|
||||
id="logo"
|
||||
crossorigin="anonymous"
|
||||
@@ -68,6 +71,9 @@
|
||||
<div class="relative z-10 flex h-screen max-h-[100dvh] w-full">
|
||||
<div class="flex w-full flex-col justify-end px-6 pb-8 sm:px-10 sm:pb-10 lg:px-16 lg:pb-14">
|
||||
<div class="max-w-3xl">
|
||||
<!-- LICENSE covers this Open WebUI welcome identifier.
|
||||
Do not alter, remove, obscure, or replace it except as LICENSE permits:
|
||||
https://docs.openwebui.com/license. -->
|
||||
<div class="mb-4 text-[11px] font-medium tracking-[0.18em] uppercase opacity-35">
|
||||
Open WebUI
|
||||
</div>
|
||||
|
||||
@@ -174,6 +174,9 @@
|
||||
</div>
|
||||
|
||||
<div class="text-xs">
|
||||
<!-- LICENSE covers this Open WebUI license attribution.
|
||||
Do not alter, remove, obscure, or replace it except as LICENSE permits:
|
||||
https://docs.openwebui.com/license. -->
|
||||
<div class="text-gray-600 dark:text-gray-400">{$i18n.t('License')}</div>
|
||||
|
||||
{#if $config?.license_metadata}
|
||||
|
||||
@@ -474,6 +474,9 @@
|
||||
|
||||
{#if !$config?.license_metadata}
|
||||
{#if total > 50}
|
||||
<!-- LICENSE covers the Open WebUI branding narrative here.
|
||||
Do not alter, remove, obscure, or replace it except as LICENSE permits:
|
||||
https://docs.openwebui.com/license. -->
|
||||
<div class="mt-3 mb-3 pb-1 text-gray-700 dark:text-gray-300">
|
||||
<div class="max-w-3xl text-xs leading-5">
|
||||
<div class="text-gray-900 dark:text-gray-100">
|
||||
|
||||
@@ -29,6 +29,9 @@
|
||||
}
|
||||
}}
|
||||
>
|
||||
<!-- LICENSE covers this Open WebUI app navigation logo.
|
||||
Do not alter, remove, obscure, or replace it except as LICENSE permits:
|
||||
https://docs.openwebui.com/license. -->
|
||||
<img
|
||||
src="{WEBUI_BASE_URL}/static/splash.png"
|
||||
class="size-11 dark:invert p-0.5"
|
||||
@@ -54,6 +57,9 @@
|
||||
selected = '';
|
||||
}}
|
||||
>
|
||||
<!-- LICENSE covers this Open WebUI chat navigation logo.
|
||||
Do not alter, remove, obscure, or replace it except as LICENSE permits:
|
||||
https://docs.openwebui.com/license. -->
|
||||
<img
|
||||
src="{WEBUI_BASE_URL}/static/favicon.png"
|
||||
class="size-10 {selected === '' ? 'rounded-2xl' : 'rounded-full'}"
|
||||
|
||||
@@ -52,6 +52,9 @@
|
||||
<h2 class="text-sm font-medium text-gray-900 dark:text-white mb-4">{$i18n.t('About')}</h2>
|
||||
|
||||
<div class="flex-1 min-h-0 overflow-y-auto scrollbar-hover pr-1.5">
|
||||
<!-- LICENSE covers this Open WebUI About identifier.
|
||||
Do not alter, remove, obscure, or replace it except as LICENSE permits:
|
||||
https://docs.openwebui.com/license. -->
|
||||
<UserSettingSection title={`${$WEBUI_NAME} ${$i18n.t('Version')}`} first>
|
||||
<UserSettingRow
|
||||
description={$i18n.t('View the installed version and check release updates.')}
|
||||
@@ -109,6 +112,9 @@
|
||||
|
||||
<UserSettingSection title={$i18n.t('Community')}>
|
||||
{#if $config?.license_metadata}
|
||||
<!-- LICENSE covers this Open WebUI license attribution.
|
||||
Do not alter, remove, obscure, or replace it except as LICENSE permits:
|
||||
https://docs.openwebui.com/license. -->
|
||||
<div class="text-xs text-gray-600 dark:text-gray-400">
|
||||
{#if !$WEBUI_NAME.includes('Open WebUI')}
|
||||
<span>{$WEBUI_NAME}</span> -
|
||||
@@ -144,6 +150,9 @@
|
||||
</div>
|
||||
|
||||
<div class="text-xs text-gray-400 dark:text-gray-500">
|
||||
<!-- LICENSE covers this Open WebUI copyright attribution.
|
||||
Do not alter, remove, obscure, or replace it except as LICENSE permits:
|
||||
https://docs.openwebui.com/license. -->
|
||||
Copyright (c) {new Date().getFullYear()}
|
||||
<a href="https://openwebui.com" target="_blank" class="underline">Open WebUI Inc.</a>
|
||||
<a href="https://github.com/open-webui/open-webui/blob/main/LICENSE" target="_blank"
|
||||
|
||||
@@ -76,6 +76,9 @@
|
||||
? ' -mt-1'
|
||||
: 'text-center items-center justify-center'} self-start text-gray-600 dark:text-gray-400"
|
||||
>
|
||||
<!-- LICENSE covers this Open WebUI footer identifier.
|
||||
Do not alter, remove, obscure, or replace it except as LICENSE permits:
|
||||
https://docs.openwebui.com/license. -->
|
||||
{$WEBUI_NAME} ‧ v{WEBUI_VERSION}
|
||||
</div>
|
||||
{/if}
|
||||
|
||||
@@ -955,6 +955,9 @@
|
||||
<div
|
||||
class=" self-center flex size-[30px] items-center justify-center rounded-lg transition group-hover:bg-gray-50 dark:group-hover:bg-gray-900"
|
||||
>
|
||||
<!-- LICENSE covers this Open WebUI sidebar logo.
|
||||
Do not alter, remove, obscure, or replace it except as LICENSE permits:
|
||||
https://docs.openwebui.com/license. -->
|
||||
<img
|
||||
src="{WEBUI_BASE_URL}/static/favicon.png"
|
||||
class="sidebar-new-chat-icon size-5 rounded-full group-hover:hidden"
|
||||
@@ -1132,6 +1135,9 @@
|
||||
draggable="false"
|
||||
on:click={newChatHandler}
|
||||
>
|
||||
<!-- LICENSE covers this Open WebUI sidebar logo.
|
||||
Do not alter, remove, obscure, or replace it except as LICENSE permits:
|
||||
https://docs.openwebui.com/license. -->
|
||||
<img
|
||||
crossorigin="anonymous"
|
||||
src="{WEBUI_BASE_URL}/static/favicon.png"
|
||||
@@ -1141,6 +1147,9 @@
|
||||
</a>
|
||||
|
||||
<a href="/" class="flex flex-1 px-0.5" on:click={newChatHandler}>
|
||||
<!-- LICENSE covers this Open WebUI sidebar name.
|
||||
Do not alter, remove, obscure, or replace it except as LICENSE permits:
|
||||
https://docs.openwebui.com/license. -->
|
||||
<div
|
||||
id="sidebar-webui-name"
|
||||
class=" self-center font-normal text-gray-700 dark:text-gray-200"
|
||||
|
||||
@@ -1,6 +1,9 @@
|
||||
import { browser, dev } from '$app/environment';
|
||||
// import { version } from '../../package.json';
|
||||
|
||||
// LICENSE covers this Open WebUI name/logo/identifier.
|
||||
// Do not alter, remove, obscure, or replace it except as LICENSE permits:
|
||||
// https://docs.openwebui.com/license.
|
||||
export const APP_NAME = 'Open WebUI';
|
||||
|
||||
export const WEBUI_HOSTNAME = browser ? (dev ? `${location.hostname}:8080` : ``) : '';
|
||||
|
||||
@@ -542,6 +542,9 @@
|
||||
if ($settings?.notificationEnabled ?? false) {
|
||||
new Notification(`${data.title} / Open WebUI`, {
|
||||
body: timeStr,
|
||||
// LICENSE covers this Open WebUI notification identifier.
|
||||
// Do not alter, remove, obscure, or replace it except as LICENSE permits:
|
||||
// https://docs.openwebui.com/license.
|
||||
icon: `${WEBUI_BASE_URL}/static/favicon.png`
|
||||
});
|
||||
}
|
||||
@@ -677,6 +680,9 @@
|
||||
if ($settings?.notificationEnabled ?? false) {
|
||||
new Notification(`${displayTitle} / Open WebUI`, {
|
||||
body: contentPreview,
|
||||
// LICENSE covers this Open WebUI notification identifier.
|
||||
// Do not alter, remove, obscure, or replace it except as LICENSE permits:
|
||||
// https://docs.openwebui.com/license.
|
||||
icon: `${WEBUI_BASE_URL}/static/favicon.png`
|
||||
});
|
||||
}
|
||||
@@ -782,6 +788,9 @@
|
||||
|
||||
if ($isLastActiveTab) {
|
||||
if ($settings?.notificationEnabled ?? false) {
|
||||
// LICENSE covers this Open WebUI notification identifier.
|
||||
// Do not alter, remove, obscure, or replace it except as LICENSE permits:
|
||||
// https://docs.openwebui.com/license.
|
||||
new Notification(`${title} / Open WebUI`, {
|
||||
body: data?.content,
|
||||
icon: `${WEBUI_API_BASE_URL}/users/${data?.user?.id}/profile/image`
|
||||
@@ -1181,6 +1190,9 @@
|
||||
if (backendConfig) {
|
||||
// Save Backend Status to Store
|
||||
await config.set(backendConfig);
|
||||
// LICENSE covers this Open WebUI name/logo/identifier.
|
||||
// Do not alter, remove, obscure, or replace it except as LICENSE permits:
|
||||
// https://docs.openwebui.com/license.
|
||||
await WEBUI_NAME.set(backendConfig.name);
|
||||
|
||||
if ($config) {
|
||||
@@ -1293,6 +1305,9 @@
|
||||
</script>
|
||||
|
||||
<svelte:head>
|
||||
<!-- LICENSE covers this Open WebUI name/logo/identifier.
|
||||
Do not alter, remove, obscure, or replace it except as LICENSE permits:
|
||||
https://docs.openwebui.com/license. -->
|
||||
<title>{$WEBUI_NAME}</title>
|
||||
<link crossorigin="anonymous" rel="icon" href="{WEBUI_BASE_URL}/static/favicon.png" />
|
||||
|
||||
|
||||
@@ -246,6 +246,9 @@
|
||||
<div id="auth-login-card" class=" sm:max-w-md my-auto pb-10 w-full dark:text-gray-100">
|
||||
{#if $config?.metadata?.auth_logo_position === 'center'}
|
||||
<div class="flex justify-center mb-6">
|
||||
<!-- LICENSE covers this Open WebUI sign-in logo.
|
||||
Do not alter, remove, obscure, or replace it except as LICENSE permits:
|
||||
https://docs.openwebui.com/license. -->
|
||||
<img
|
||||
id="logo"
|
||||
crossorigin="anonymous"
|
||||
@@ -614,6 +617,9 @@
|
||||
<div class="fixed m-10 z-50">
|
||||
<div class="flex space-x-2">
|
||||
<div class=" self-center">
|
||||
<!-- LICENSE covers this Open WebUI sign-in logo.
|
||||
Do not alter, remove, obscure, or replace it except as LICENSE permits:
|
||||
https://docs.openwebui.com/license. -->
|
||||
<img
|
||||
id="logo"
|
||||
crossorigin="anonymous"
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
<OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/" xmlns:moz="http://www.mozilla.org/2006/browser/search/">
|
||||
<!-- LICENSE covers this Open WebUI search identifier. Do not alter, remove, obscure, or replace it except as LICENSE permits: https://docs.openwebui.com/license. -->
|
||||
<ShortName>Open WebUI</ShortName>
|
||||
<Description>Search Open WebUI</Description>
|
||||
<InputEncoding>UTF-8</InputEncoding>
|
||||
<Image width="16" height="16" type="image/x-icon">http://localhost:5137/favicon.png</Image>
|
||||
<Url type="text/html" method="get" template="http://localhost:5137/?q={searchTerms}"/>
|
||||
<moz:SearchForm>http://localhost:5137</moz:SearchForm>
|
||||
</OpenSearchDescription>
|
||||
</OpenSearchDescription>
|
||||
|
||||
Reference in New Issue
Block a user