fix: fallback defensivo para logo e sincronizacao de abas do dashboard dev

This commit is contained in:
2026-08-28 10:56:54 +00:00
parent 018be51ad5
commit 04b57de046
+4 -2
View File
@@ -24,6 +24,7 @@ export const DeveloperDashboard: React.FC = () => {
const [appName, setAppName] = useState('');
const [appSubtitle, setAppSubtitle] = useState('');
const [logoUrl, setLogoUrl] = useState('');
const [logoError, setLogoError] = useState(false);
const [isSaving, setIsSaving] = useState(false);
const [isUploading, setIsUploading] = useState(false);
const fileInputRef = useRef<HTMLInputElement>(null);
@@ -69,6 +70,7 @@ export const DeveloperDashboard: React.FC = () => {
setAppName(settings.appName);
setAppSubtitle(settings.appSubtitle);
setLogoUrl(settings.appLogoUrl || '');
setLogoError(false);
}
}, [settings]);
@@ -298,8 +300,8 @@ export const DeveloperDashboard: React.FC = () => {
<span className="text-xs font-bold text-text-muted uppercase tracking-wider mb-2 block">Preview</span>
<div className="flex items-center gap-3">
<div className="w-10 h-10 rounded-xl bg-gradient-to-br from-indigo-500 to-purple-600 flex items-center justify-center shrink-0 overflow-hidden shadow-lg">
{logoUrl ? (
<img src={logoUrl} alt="Preview" className="w-full h-full object-cover" />
{logoUrl && !logoError ? (
<img src={logoUrl} alt="Preview" onError={() => setLogoError(true)} className="w-full h-full object-cover" />
) : (
<span className="text-white font-black text-xl">{appName?.[0] || 'G'}</span>
)}