Files
nguyencongpc_nextjs/src/features/Home/ArticleVideo/index.tsx

43 lines
1.3 KiB
TypeScript
Raw Normal View History

2026-03-13 13:54:45 +07:00
'use client';
2025-12-23 15:29:31 +07:00
import { FaCaretRight } from 'react-icons/fa';
import Link from 'next/link';
import ItemArticleVideo from './ItemArticleVideo';
2026-03-13 13:54:45 +07:00
import { getArticleVideos } from '@/lib/api/article';
import { useApiData } from '@/hooks/useApiData';
import type { Article } from '@/types';
2025-12-23 15:29:31 +07:00
const BoxArticleVideo: React.FC = () => {
2026-03-13 13:54:45 +07:00
const { data: videos } = useApiData(
() => getArticleVideos(),
[],
{ initialData: [] as Article[] },
);
2025-12-23 15:29:31 +07:00
return (
<div className="box-videos-group box-article-group boder-radius-10 relative">
<div className="flex items-center justify-between">
<div className="title-box">
<h2 className="title-box font-[600]">Youtube Channel</h2>
</div>
<Link
href="https://www.youtube.com/NguyenCongPC"
target="_blank"
rel="nofollow"
className="btn-article-group flex items-center gap-2"
>
2026-03-13 13:54:45 +07:00
<span>Xem tất cả</span>
2025-12-23 15:29:31 +07:00
<FaCaretRight size={16} />
</Link>
</div>
<div className="list-videos-group list-article-group flex items-center gap-10">
2026-03-13 13:54:45 +07:00
{videos.slice(0, 4).map((item) => (
<ItemArticleVideo item={item} key={item.id} />
2025-12-23 15:29:31 +07:00
))}
</div>
</div>
);
};
export default BoxArticleVideo;