🚀 feat: Use Model Specs + Specific Endpoints, Limit Providers for Agents (#6650)

* 🔧 refactor: Remove modelSpecs prop from ModelSelector and related components

* fix: Update submission.conversationId references in SSE hooks and data types as was incorrectly typed

* feat: Allow showing specific endpoints alongside model specs via `addedEndpoints` field

* feat: allowed agents providers via `agents.allowedProviders` field

* fix: bump dicebear/sharp dependencies to resolve CVE-2024-12905 and improve avatar gen logic

* fix: rename variable for clarity in loadDefaultInterface function

* fix: add keepAddedConvos option to newConversation calls for modular chat support

* fix: include model information in endpoint selection for improved context

* fix: update data-provider version to 0.7.78 and increment config version to 1.2.4
This commit is contained in:
Danny Avila 2025-04-01 03:50:32 -04:00 committed by GitHub
parent cd7cdaa703
commit 90b8769ef3
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
27 changed files with 905 additions and 777 deletions

View file

@ -7,36 +7,35 @@ const avatarCache: Record<string, string> = {};
const useAvatar = (user: TUser | undefined) => {
return useMemo(() => {
if (!user?.username) {
const { username, name } = user ?? {};
const seed = name || username;
if (!seed) {
return '';
}
if (user.avatar) {
if (user?.avatar && user?.avatar !== '') {
return user.avatar;
}
const { username } = user;
if (avatarCache[username]) {
return avatarCache[username];
if (avatarCache[seed]) {
return avatarCache[seed];
}
const avatar = createAvatar(initials, {
seed: username,
seed,
fontFamily: ['Verdana'],
fontSize: 36,
});
let avatarDataUri = '';
avatar
.toDataUri()
.then((dataUri) => {
avatarDataUri = dataUri;
avatarCache[username] = dataUri; // Store in cache
})
.catch((error) => {
console.error('Failed to generate avatar:', error);
});
try {
avatarDataUri = avatar.toDataUri();
if (avatarDataUri) {
avatarCache[seed] = avatarDataUri;
}
} catch (error) {
console.error('Failed to generate avatar:', error);
}
return avatarDataUri;
}, [user]);