merge upstream/dev: add user_id to configs, provider icons, i18n

This commit is contained in:
CREDO23 2026-02-11 20:05:00 +02:00
commit 78127243e2
87 changed files with 10445 additions and 5029 deletions

View file

@ -9,7 +9,7 @@ import { useEffect, useState } from "react";
import { toast } from "sonner";
import { loginMutationAtom } from "@/atoms/auth/auth-mutation.atoms";
import { Spinner } from "@/components/ui/spinner";
import { getAuthErrorDetails, isNetworkError, shouldRetry } from "@/lib/auth-errors";
import { getAuthErrorDetails, isNetworkError } from "@/lib/auth-errors";
import { AUTH_TYPE } from "@/lib/env-config";
import { ValidationError } from "@/lib/error";
import { trackLoginAttempt, trackLoginFailure, trackLoginSuccess } from "@/lib/posthog/events";
@ -65,10 +65,6 @@ export function LocalLoginForm() {
if (err instanceof ValidationError) {
trackLoginFailure("local", err.message);
setError({ title: err.name, message: err.message });
toast.error(err.name, {
description: err.message,
duration: 6000,
});
return;
}
@ -92,22 +88,6 @@ export function LocalLoginForm() {
title: errorDetails.title,
message: errorDetails.description,
});
// Show error toast with conditional retry action
const toastOptions: any = {
description: errorDetails.description,
duration: 6000,
};
// Add retry action if the error is retryable
if (shouldRetry(errorCode)) {
toastOptions.action = {
label: "Retry",
onClick: () => handleSubmit(e),
};
}
toast.error(errorDetails.title, toastOptions);
}
};

View file

@ -203,5 +203,24 @@ button {
animation: pulse-subtle 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}
/* Integrations section — vertical column auto-scroll */
@keyframes integrations-scroll-up {
0% {
transform: translateY(0);
}
100% {
transform: translateY(-50%);
}
}
@keyframes integrations-scroll-down {
0% {
transform: translateY(-50%);
}
100% {
transform: translateY(0);
}
}
@source '../node_modules/@llamaindex/chat-ui/**/*.{ts,tsx}';
@source '../node_modules/streamdown/dist/*.js';