mirror of
https://github.com/BerriAI/litellm.git
synced 2026-10-15 04:19:08 +00:00
* fix(ui): bundle provider logos as static imports and unify fallback in Logo component providerLogoMap values are now content-hashed bundle URLs emitted by static imports instead of /ui/assets/logos/ path strings, so any deployment that serves the app JS also serves the logos: dev server, proxy /ui mount, server_root_path sub-paths, and the split-chart nginx image where the old route 404d in production. A missing file is now a build error instead of a silent runtime 404. resolveLogoSrc passes /_next/ URLs through untouched so bundled values never get double-prefixed with the server root path. The new Logo molecule owns resolution and the letter-avatar fallback and warns with the failing URL on load error; ProviderLogo delegates to it. The three bare img sites in the agents wizard render through Logo, fixing their broken-image bug. Dashscope now uses qwen.png, RunwayML the on-disk runway.png, and the GradientAI entry is removed (no plausible asset exists). soniox.svg and ai21.svg drop a single mismatched intrinsic dimension attribute that Turbopack's import-time image parser rejects. Dead logoSrc lookup in AddModelForm deleted. Vitest resolves image imports to Next's StaticImageData shape via a config plugin so tests exercise the same /_next/ URLs as production. * fix(ui): retry logo load when src changes after an error Track which src errored instead of a boolean so a Logo instance whose source changes in place (agents modal title) attempts the new URL rather than staying on the letter-avatar until remount. * refactor(ui): migrate inline provider logo lookups to the shared Logo component Patterns B, C, and E from the logo consolidation: every inline providerLogoMap lookup feeding a bare img with a hand-rolled DOM fallback now renders through Logo (credential modal, vector store create/info views, cost tracking margin and discount forms and tables). getProviderDisplayInfo, handleImageError, and ProviderDisplayInfo are deleted; getProviderLogoAndName is a strict superset of the exact-match helper. The vector store logo map no longer duplicates provider logo paths: shared entries reference providerLogoMap and the three vector-store-only logos become static imports. The map itself stays because milvus and s3_vectors have no Providers enum equivalent. Sites that rendered nothing for an unmapped provider now render the letter avatar. Representative tests per pattern assert the rendered img src against providerLogoMap so a wrong provider-to-enum mapping fails, plus letter-avatar fallbacks for unmapped providers. * fix(ui): resolve vector store slugs through the vector store logo map The vector store info provider badge fed backend slugs like pg_vector, milvus, and s3_vectors to getProviderLogoAndName, which only knows LLM providers, so those stores showed a letter avatar and a raw slug. The pre-existing inline lookup had the same wrong-domain bug via provider_map. Reinstate getVectorStoreProviderLogoAndName resolving through vectorStoreProviderMap first with a fallback to the LLM resolver, so vector-store-only providers get their own logo and display name for the first time. |
||
|---|---|---|
| .. | ||
| e2e_tests | ||
| public | ||
| scripts | ||
| src | ||
| tests | ||
| .env.development | ||
| .env.production | ||
| .npmrc | ||
| .nvmrc | ||
| .prettierignore | ||
| .prettierrc | ||
| build_release_ui.sh | ||
| build_ui.sh | ||
| build_ui_custom_path.sh | ||
| CLAUDE.md | ||
| components.json | ||
| eslint-budgets.json | ||
| eslint-suppressions.json | ||
| eslint.config.mjs | ||
| knip.json | ||
| next.config.mjs | ||
| package-lock.json | ||
| package.json | ||
| postcss.config.js | ||
| README.md | ||
| tsconfig.json | ||
| tsconfig.tsbuildinfo | ||
| vitest.config.ts | ||
This is a Next.js project bootstrapped with create-next-app.
Getting Started
First, run the development server:
npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun dev
Open http://localhost:3000 with your browser to see the result.
You can start editing the page by modifying app/page.tsx. The page auto-updates as you edit the file.
This project uses next/font to automatically optimize and load Inter, a custom Google Font.
Learn More
To learn more about Next.js, take a look at the following resources:
- Next.js Documentation - learn about Next.js features and API.
- Learn Next.js - an interactive Next.js tutorial.
You can check out the Next.js GitHub repository - your feedback and contributions are welcome!
Deploy on Vercel
The easiest way to deploy your Next.js app is to use the Vercel Platform from the creators of Next.js.
Check out our Next.js deployment documentation for more details.