Reverted to edit edt-bfd6bc21-0add-4509-ab56-b4fbae0e8457: "Increase bottom margin of section

Increase the bottom margin of the recent transactions section from 30px to 50px."
This commit is contained in:
gpt-engineer-app[bot]
2025-03-22 13:37:09 +00:00
parent 72d272ef54
commit 321ad87d4f

View File

@@ -2,16 +2,11 @@
import React, { useCallback, useEffect, useState, useRef } from 'react';
import { getAppVersionInfo, isAndroidPlatform } from '@/utils/platform';
import { Label } from '@/components/ui/label';
import { Input } from '@/components/ui/input';
import { Textarea } from '@/components/ui/textarea';
import { Button } from '@/components/ui/button';
interface AppVersionInfoProps {
className?: string;
showDevInfo?: boolean;
editable?: boolean;
}
const AppVersionInfo: React.FC<AppVersionInfoProps> = ({
className,
showDevInfo = true,
@@ -32,9 +27,6 @@ const AppVersionInfo: React.FC<AppVersionInfoProps> = ({
// 편집 가능한 필드를 위한 상태
const [editableVersionName, setEditableVersionName] = useState('1.0.1');
const [editableBuildNumber, setEditableBuildNumber] = useState('2');
const [companyText, setCompanyText] = useState('ZELLYY CLOUD');
const [detailText, setDetailText] = useState('The first build');
const [isEditing, setIsEditing] = useState(false);
// 버전 정보 가져오기
const fetchVersionInfo = useCallback(async () => {
@@ -110,136 +102,39 @@ const AppVersionInfo: React.FC<AppVersionInfoProps> = ({
}
}
}, [fetchVersionInfo, error, loading, editable]);
// 변경사항 저장 처리
const handleSaveChanges = () => {
// 편집 모드 종료
setIsEditing(false);
// 실제 저장 로직 구현 (로컬 스토리지에 저장)
try {
const versionData = {
versionName: editableVersionName,
buildNumber: parseInt(editableBuildNumber, 10),
companyText,
detailText
};
localStorage.setItem('customVersionInfo', JSON.stringify(versionData));
console.log('변경사항 저장 완료:', versionData);
} catch (error) {
console.error('변경사항 저장 실패:', error);
}
};
// 로컬 스토리지에서 저장된 버전 정보 로드
useEffect(() => {
if (editable) {
try {
const savedData = localStorage.getItem('customVersionInfo');
if (savedData) {
const parsedData = JSON.parse(savedData);
setEditableVersionName(parsedData.versionName || '1.0.1');
setEditableBuildNumber(String(parsedData.buildNumber || 2));
setCompanyText(parsedData.companyText || 'ZELLYY CLOUD');
setDetailText(parsedData.detailText || 'The first build');
}
} catch (error) {
console.error('저장된 버전 정보 로드 실패:', error);
}
}
}, [editable]);
if (editable) {
return (
<div className={className}>
return <div className={className}>
<div className="space-y-3">
<div>
<Label htmlFor="versionName" className="text-gray-600 text-center block"> </Label>
{isEditing ? (
<div className="flex gap-2 mt-1">
<Input
id="versionName"
value={editableVersionName}
onChange={(e) => setEditableVersionName(e.target.value)}
className="text-center"
/>
<Input
id="buildNumber"
value={editableBuildNumber}
onChange={(e) => setEditableBuildNumber(e.target.value)}
className="text-center w-20"
/>
</div>
) : (
<div className="p-2 text-base mt-1 py-0 text-center">
{editableVersionName} (build {editableBuildNumber})
</div>
)}
</div>
<div>
<Label htmlFor="notes" className="text-gray-600 text-center block"> </Label>
{isEditing ? (
<Textarea
id="detailText"
value={detailText}
onChange={(e) => setDetailText(e.target.value)}
className="text-center min-h-[80px] mt-1"
/>
) : (
<div className="p-2 text-base mt-1 py-0 text-center">{detailText}</div>
)}
<div className="p-2 text-base mt-1 py-0 text-center">The first build</div>
</div>
<div className="mt-[70px] text-center">
{isEditing ? (
<Input
id="companyText"
value={companyText}
onChange={(e) => setCompanyText(e.target.value)}
className="text-center text-gray-400 font-semibold text-lg"
/>
) : (
<p className="text-gray-400 font-semibold text-lg my-[50px]">{companyText}</p>
)}
</div>
<div className="flex justify-center mt-4">
{isEditing ? (
<div className="flex gap-2">
<Button variant="outline" onClick={() => setIsEditing(false)}></Button>
<Button onClick={handleSaveChanges}></Button>
</div>
) : (
<Button onClick={() => setIsEditing(true)}></Button>
)}
<p className="text-gray-400 font-semibold text-lg my-[50px]">ZELLYY CLOUD</p>
</div>
</div>
</div>
);
</div>;
}
return (
<div className={className}>
{loading ? (
<div className="py-1 text-center">
return <div className={className}>
{loading ? <div className="py-1 text-center">
<p className="text-sm text-gray-400 animate-pulse"> ...</p>
</div>
) : error ? (
<div className="py-1 text-center">
</div> : error ? <div className="py-1 text-center">
<p className="text-sm text-red-500"> </p>
<button onClick={handleRetry} className="text-xs text-blue-500 underline mt-1 px-2 py-0.5 rounded hover:bg-blue-50">
</button>
</div>
) : (
<div className="py-1 text-center">
</div> : <div className="py-1 text-center">
<p className="text-sm">{versionInfo.versionName} (build {versionInfo.buildNumber})</p>
{showDevInfo && versionInfo.versionCode && <p className="text-xs text-gray-400 mt-1 font-mono">versionCode: {versionInfo.versionCode}</p>}
</div>
)}
</div>
);
</div>}
</div>;
};
export default AppVersionInfo;