+
+ 제1조 목적
+
+
+ 이 약관은 WorLabel(이하 "회사")이 제공하는 모든 서비스(이하 "서비스")의 이용과 관련된 사항을 규정하는 것을
+ 목적으로 합니다.
+
+
+
+ 제2조 정의
+
+
+ 1. "서비스"란 회사가 제공하는 모든 온라인 콘텐츠와 기능을 의미합니다.
+
+ 2. "회원"이란 회사의 서비스에 접속하여 본 약관에 동의한 자를 말합니다.
+
+
+
+ 제3조 약관의 효력 및 변경
+
+
+ 1. 본 약관은 서비스 화면에 공지되며, 회원이 약관에 동의한 시점부터 효력이 발생합니다.
+
+ 2. 회사는 필요에 따라 본 약관을 변경할 수 있으며, 변경된 약관은 서비스 화면에 공지됩니다.
+
+
+
+ 제4조 서비스 이용
+
+
+ 1. 회원은 회사가 제공하는 서비스를 본 약관에 따라 이용할 수 있습니다.
+
+ 2. 회사는 서비스의 운영 또는 기술적 필요에 따라 서비스의 전부 또는 일부를 변경할 수 있습니다.
+
+
+
+ 제5조 회원의 의무
+
+
+ 1. 회원은 서비스 이용 시 본 약관을 준수해야 하며, 법령을 위반하는 행위를 해서는 안 됩니다.
+
+ 2. 회원은 타인의 개인정보를 침해하거나, 서비스의 안정적 운영을 방해하는 행위를 해서는 안 됩니다.
+
+ >
+ }
+ open={isTermsOpen}
+ onClose={() => setIsTermsOpen(false)}
+ />
+ {/* Privacy Policy Modal */}
+
+
+ 제1조 수집하는 개인정보의 항목
+
+
+ 1. 회사는 서비스 제공을 위해 필요한 최소한의 개인정보를 수집합니다.
+
+ 2. 수집하는 개인정보 항목은 다음과 같습니다: 이름, 이메일, 서비스 이용 기록, 접속 로그, 쿠키 등.
+
+
+
+ 제2조 개인정보의 수집 및 이용 목적
+
+
+ 1. 회사는 다음의 목적을 위해 개인정보를 수집 및 이용합니다:
+
+ - 회원관리, 서비스 제공, 계약 이행 및 요금 정산.
+
+ 2. 서비스 개선 및 맞춤형 서비스 제공을 위해 활용될 수 있습니다.
+
+
+
+ 제3조 개인정보의 보유 및 이용 기간
+
+
+ 1. 회원의 개인정보는 회원 탈퇴 시 지체 없이 파기됩니다.
+
+ 2. 단, 관계 법령에 따라 일정 기간 보관해야 하는 경우 해당 기간 동안 보유합니다.
+
+
+
+ 제4조 개인정보의 제3자 제공
+
+
+ 1. 회사는 원칙적으로 회원의 동의 없이 개인정보를 외부에 제공하지 않습니다.
+
+ 2. 다만, 법령에 의해 요구되는 경우나 회원의 사전 동의를 받은 경우에 한해 제공됩니다.
+
+
+
+ 제5조 회원의 권리와 행사 방법
+
+
+ 1. 회원은 언제든지 자신의 개인정보를 조회하거나 수정할 수 있으며, 개인정보의 삭제를 요청할 수 있습니다.
+
+ 2. 회원은 개인정보의 처리에 관한 동의를 철회할 수 있습니다.
+
+ >
+ }
+ open={isPrivacyOpen}
+ onClose={() => setIsPrivacyOpen(false)}
+ />
);
}
diff --git a/frontend/src/components/ImagePreSignedForm/index.tsx b/frontend/src/components/ImagePreSignedForm/index.tsx
index 4705f6a..daace94 100644
--- a/frontend/src/components/ImagePreSignedForm/index.tsx
+++ b/frontend/src/components/ImagePreSignedForm/index.tsx
@@ -148,8 +148,7 @@ export default function ImagePreSignedForm({
onProgress: (progress) => {
setUploadStatus((prevStatus) => {
const completedFiles = Math.round((progress / 100) * files.length);
- const newStatus = prevStatus.map((status, index) => (index < completedFiles ? 'success' : status));
- return newStatus;
+ return prevStatus.map((status, index) => (index < completedFiles ? 'success' : status));
});
},
useSingleUpload: uploadType === 'file',
@@ -166,7 +165,7 @@ export default function ImagePreSignedForm({
}
};
- const totalProgress = Math.round((uploadStatus.filter((status) => status !== null).length / files.length) * 100);
+ const totalProgress = Math.round((uploadStatus.filter((status) => status === 'success').length / files.length) * 100);
useEffect(() => {
onFileCount(files.length);
diff --git a/frontend/src/pages/Home.tsx b/frontend/src/pages/Home.tsx
index 46e5b3b..240b9b5 100644
--- a/frontend/src/pages/Home.tsx
+++ b/frontend/src/pages/Home.tsx
@@ -42,7 +42,6 @@ export default function Home() {
asChild
variant="blue"
size="lg"
- className="mt-8"
>
시작하기