11import type { Metadata } from 'next'
22import Link from 'next/link'
3- import DomeGallery , { type ImageItem } from '@/components/DomeGallery '
3+ import InfiniteMenu , { type InfiniteMenuItem } from '@/components/InfiniteMenu '
44import { siteContent } from '@/lib/site-content'
55import { getAllPosts } from '@/lib/mdx'
66
@@ -24,13 +24,14 @@ export default function HomePage() {
2424
2525 const posts = allPosts . slice ( 0 , 5 )
2626
27- const coverImages : ImageItem [ ] = allPosts
27+ const menuItems : InfiniteMenuItem [ ] = allPosts
2828 . map ( ( post ) => ( {
29- src : post . metadata . image ?? '' ,
30- alt : post . metadata . title ,
31- href : `/blog/${ post . slug } ` ,
29+ image : post . metadata . image ?? '' ,
30+ title : post . metadata . title ,
31+ description : post . metadata . description ?? '' ,
32+ link : `/blog/${ post . slug } ` ,
3233 } ) )
33- . filter ( ( image ) => image . src . trim ( ) . length > 0 )
34+ . filter ( ( item ) => item . image . trim ( ) . length > 0 )
3435
3536 return (
3637 < div className = "max-w-4xl mx-auto px-4 sm:px-6 py-12 sm:py-16" >
@@ -115,20 +116,10 @@ export default function HomePage() {
115116 </ article >
116117 ) ) }
117118
118- { coverImages . length > 0 && (
119+ { menuItems . length > 0 && (
119120 < div className = "relative left-1/2 mt-8 w-screen -translate-x-1/2 overflow-hidden" >
120- < div className = "h-[320px] px-2 sm:h-[400px] sm:px-4 md:h-[480px]" >
121- < DomeGallery
122- images = { coverImages }
123- fit = { 0.42 }
124- minRadius = { 420 }
125- maxRadius = { 760 }
126- overlayBlurColor = "transparent"
127- imageBorderRadius = "10px"
128- openedImageBorderRadius = "12px"
129- openedImageWidth = "min(92vw, 820px)"
130- openedImageHeight = "calc(min(92vw, 820px) * 9 / 16)"
131- />
121+ < div className = "relative h-[420px] px-2 sm:h-[520px] sm:px-4 md:h-[600px]" >
122+ < InfiniteMenu items = { menuItems } scale = { 0.62 } />
132123 </ div >
133124 </ div >
134125 ) }
0 commit comments