
โ Clipping ํ์์ด๋?
์ฝ๊ฒ ๋งํด ๋ถ๋ชจ ์์ญ ๋ฐ์ผ๋ก ๋๊ฐ๋ ๋ถ๋ถ์ด ์๋ ค ๋ณด์ด๋ ๊ฒ.
(์ด๋ค ์์ญ์ด ์๋ ค์ ์ ๋ณด์ด๋ ํ์)

์ ์ฌ์ง์ Card component์ border๋ฅผ ์์ธํ ๋ณด๋ฉด ๊ทธ๋ ค์ง๋ค๋ง ๋ถ๋ถ๋ค์ด ๋ณด์ธ๋ค.
<SidebarProvider className="flex h-[calc(100vh-14rem)] max-h-[calc(100vh-14rem)] min-h-full overflow-hidden">
ํ์ฌ Provider์ overflow-hidden ์์ฑ์ด ์กด์ฌํ๊ธฐ ๋๋ฌธ์ ์์ ์์๊ฐ Provider์ ์์ญ์ ๋์ด๊ฐ๊ฑฐ๋ ๊ฒฝ๊ณ์ ์กด์ฌํ ์ ๋ณด์ด์ง ์๊ฒ ํ๋ค.
๊ทธ๋์ ์ด๋ด ๋๋ ์จ์ ํ border๊ฐ ๋ณด์ด๊ธฐ ์ํด ์์ ์์์ padding์ ์ฃผ๋ฉด border๊ฐ ์ ๋ณด์ด๊ฒ ๋๋ค.
export default function MessagesLayout() {
return (
<SidebarProvider className="flex h-[calc(100vh-14rem)] max-h-[calc(100vh-14rem)] min-h-full overflow-hidden">
<Sidebar className="pt-16" variant="floating">
<SidebarContent>
<SidebarGroup>
<SidebarMenu>
{Array.from({ length: 20 }).map((_, index) => (
<MessagesCard
key={index}
id={index.toString()}
name={`User ${index}`}
avatarUrl="https://github.com/serranoarevalo.png"
lastMessage={`Last message ${index}`}
/>
))}
</SidebarMenu>
</SidebarGroup>
</SidebarContent>
</Sidebar>
<div className="flex-1 p-4">
<Outlet />
</div>
</SidebarProvider>
);
}
p-4๋ฅผ ์ฃผ์ด์ ์์ ์์ ๊ณต๊ฐ์ ์ฌ์ ๋ฅผ ์ฃผ์๋ค.

