From 391e708a352105eea87d83d3ac0e7a6fec538530 Mon Sep 17 00:00:00 2001 From: KimByeongHun Date: Sat, 16 May 2026 15:18:55 +0900 Subject: [PATCH 1/5] =?UTF-8?q?design:=20=ED=99=88=20=EB=B0=8F=20=ED=8F=B4?= =?UTF-8?q?=EB=8D=94=20=EC=84=B9=EC=85=98=20=ED=83=80=EC=9D=B4=ED=8B=80=20?= =?UTF-8?q?=ED=81=AC=EA=B8=B0=20=ED=86=B5=EC=9D=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/(tabs)/(folder)/index.tsx | 19 +++++-------------- components/ui/section-header.tsx | 10 ++++++---- constants/theme.ts | 2 ++ 3 files changed, 13 insertions(+), 18 deletions(-) diff --git a/app/(tabs)/(folder)/index.tsx b/app/(tabs)/(folder)/index.tsx index 01d6329..0c6dc46 100644 --- a/app/(tabs)/(folder)/index.tsx +++ b/app/(tabs)/(folder)/index.tsx @@ -16,6 +16,7 @@ import { useRouter } from 'expo-router'; import { AddFolderButton } from '@/components/ui/add-folder-button'; import { FolderCard } from '@/components/ui/folder-card'; import { FolderContextMenu } from '@/components/ui/folder-context-menu'; +import { SectionHeader } from '@/components/ui/section-header'; import { Colors, Typography } from '@/constants/theme'; import type { AnchorPosition } from '@/components/ui/folder-card'; import { useSavedLinks } from '@/context/saved-links-context'; @@ -97,10 +98,10 @@ export default function FolderScreen() { {/* 폴더 캔버스 */} - - 내 폴더 - - + } + /> {folders.length > 0 ? ( @@ -226,16 +227,6 @@ const styles = StyleSheet.create({ padding: 16, gap: 16, }, - canvasHeader: { - flexDirection: 'row', - alignItems: 'center', - justifyContent: 'space-between', - }, - canvasTitle: { - ...Typography.title, - color: Colors.brand.text, - }, - grid: { flexDirection: 'row', flexWrap: 'wrap', diff --git a/components/ui/section-header.tsx b/components/ui/section-header.tsx index a0a23f5..daabe63 100644 --- a/components/ui/section-header.tsx +++ b/components/ui/section-header.tsx @@ -1,3 +1,4 @@ +import type { ReactNode } from 'react'; import { StyleSheet, Text, TouchableOpacity, View } from 'react-native'; import { Colors, Typography } from '@/constants/theme'; @@ -5,17 +6,18 @@ interface SectionHeaderProps { label: string; onViewAll?: () => void; viewAllLabel?: string; + rightSlot?: ReactNode; } -export function SectionHeader({ label, onViewAll, viewAllLabel = '전체보기' }: SectionHeaderProps) { +export function SectionHeader({ label, onViewAll, viewAllLabel = '전체보기', rightSlot }: SectionHeaderProps) { return ( {label} - {onViewAll && ( + {rightSlot ?? (onViewAll && ( {viewAllLabel} - )} + ))} ); } @@ -27,7 +29,7 @@ const styles = StyleSheet.create({ alignItems: 'center', }, label: { - ...Typography.section, + ...Typography.sectionTitle, color: Colors.brand.text, }, viewAll: { diff --git a/constants/theme.ts b/constants/theme.ts index f6c6fba..93472f7 100644 --- a/constants/theme.ts +++ b/constants/theme.ts @@ -135,6 +135,7 @@ export const Fonts = { const fontSizeDisplay = 32; const fontSizeDisplayMedium = 30; const fontSizeTitle = 22; +const fontSizeSectionTitle = 20; const fontSizeSection = 18; const fontSizeProfile = 17; const fontSizeBody = 16; @@ -152,6 +153,7 @@ export const Typography = { display: { fontSize: fontSizeDisplay, fontWeight: fontWeightBold }, displayMedium: { fontSize: fontSizeDisplayMedium, fontWeight: fontWeightBold }, title: { fontSize: fontSizeTitle, fontWeight: fontWeightBold }, + sectionTitle: { fontSize: fontSizeSectionTitle, fontWeight: fontWeightBold }, section: { fontSize: fontSizeSection, fontWeight: fontWeightBold }, profile: { fontSize: fontSizeProfile, fontWeight: fontWeightBold }, body: { fontSize: fontSizeBody, fontWeight: fontWeightRegular }, From 68b153cffbd11057197b3dc98027329c3a94d9e4 Mon Sep 17 00:00:00 2001 From: KimByeongHun Date: Sat, 16 May 2026 15:39:16 +0900 Subject: [PATCH 2/5] =?UTF-8?q?design:=20=ED=99=88=20=EB=B8=8C=EB=9E=9C?= =?UTF-8?q?=EB=93=9C=20=EB=A1=9C=EA=B3=A0=20=ED=81=AC=EA=B8=B0=20=EC=A1=B0?= =?UTF-8?q?=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/(tabs)/(home)/index.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/(tabs)/(home)/index.tsx b/app/(tabs)/(home)/index.tsx index 0282262..1e74d9d 100644 --- a/app/(tabs)/(home)/index.tsx +++ b/app/(tabs)/(home)/index.tsx @@ -36,7 +36,7 @@ export default function HomeScreen() { LinClean @@ -129,7 +129,7 @@ const styles = StyleSheet.create({ gap: 6, }, brandText: { - ...Typography.title, + ...Typography.displayMedium, color: Colors.brand.primary, }, From a95e00abbe1981a8360214f4a5cf3244f80447d3 Mon Sep 17 00:00:00 2001 From: KimByeongHun Date: Sat, 16 May 2026 15:59:58 +0900 Subject: [PATCH 3/5] =?UTF-8?q?design:=20=ED=8F=B4=EB=8D=94=20=ED=99=94?= =?UTF-8?q?=EB=A9=B4=20=EC=A0=9C=EB=AA=A9=20=EC=9C=84=EA=B3=84=20=EC=A1=B0?= =?UTF-8?q?=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/(tabs)/(folder)/[id].tsx | 15 +++++++++++++-- app/(tabs)/(folder)/index.tsx | 2 +- constants/theme.ts | 2 ++ 3 files changed, 16 insertions(+), 3 deletions(-) diff --git a/app/(tabs)/(folder)/[id].tsx b/app/(tabs)/(folder)/[id].tsx index f1ab934..21f6725 100644 --- a/app/(tabs)/(folder)/[id].tsx +++ b/app/(tabs)/(folder)/[id].tsx @@ -73,7 +73,10 @@ export default function FolderDetailScreen() { {/* 폴더명 + URL 추가 버튼 */} - {folderName} + + 현재 폴더 + {folderName} + Date: Sat, 16 May 2026 17:07:41 +0900 Subject: [PATCH 4/5] =?UTF-8?q?fix:=20toast=20=EB=AC=B8=EA=B5=AC=20?= =?UTF-8?q?=EC=9E=98=EB=A6=BC=20=EB=B3=B4=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- components/ui/toast.tsx | 1 + 1 file changed, 1 insertion(+) diff --git a/components/ui/toast.tsx b/components/ui/toast.tsx index f6c8a05..b41b1b2 100644 --- a/components/ui/toast.tsx +++ b/components/ui/toast.tsx @@ -58,6 +58,7 @@ const styles = StyleSheet.create({ }, message: { ...Typography.summary, + lineHeight: 20, fontWeight: '700', color: Colors.brand.onPrimary, }, From 3b553d7d6762e4b91853e46e2763289612837ee8 Mon Sep 17 00:00:00 2001 From: KimByeongHun Date: Sun, 17 May 2026 18:41:24 +0900 Subject: [PATCH 5/5] =?UTF-8?q?fix:=20=ED=8F=B4=EB=8D=94=20=EC=83=81?= =?UTF-8?q?=EC=84=B8=20=ED=97=A4=EB=8D=94=20=EA=B8=B4=20=EC=9D=B4=EB=A6=84?= =?UTF-8?q?=20=EB=A7=90=EC=A4=84=EC=9E=84=20=EC=B2=98=EB=A6=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/(tabs)/(folder)/[id].tsx | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/app/(tabs)/(folder)/[id].tsx b/app/(tabs)/(folder)/[id].tsx index 21f6725..41863c2 100644 --- a/app/(tabs)/(folder)/[id].tsx +++ b/app/(tabs)/(folder)/[id].tsx @@ -75,7 +75,9 @@ export default function FolderDetailScreen() { 현재 폴더 - {folderName} + + {folderName} + @@ -181,9 +183,12 @@ const styles = StyleSheet.create({ flexDirection: 'row', alignItems: 'center', justifyContent: 'space-between', + gap: 12, paddingVertical: 4, }, folderTitleGroup: { + flex: 1, + minWidth: 0, gap: 4, marginLeft: 10, },