"use client"; import React from "react"; import Link from "next/link"; import { useQuery } from "@tanstack/react-query"; import newsApi from "@/shared/services/news"; import { Button } from "@/shared/components/button/button"; import { NewsMainCard } from "./news-main-card"; import { NewsSecondaryCard } from "./news-secondary-card"; import { NewsMainCardSketelon, NewsSecondaryCardSkeleton, } from "./_components/news-card-skeleton"; import Image from "next/image"; import { ErrorState } from "@/shared/components/error-state"; export function NewsSection() { const { data: news, isLoading, isError, error, isSuccess, refetch, isFetching, } = useQuery({ queryKey: ["news"], queryFn: () => newsApi .getNewsList( { limit: 5, filter: ["is_active=true"], }, { skipAuth: true }, ) .then((res) => res.items), staleTime: 5000, retry: 1, }); const showSkeleton = isLoading || (isFetching && !isSuccess); return ( <>
ornament

Berita & Pengumuman

Informasi terbaru seputar perkembangan data geospasial Jawa Timur

{(() => { if (showSkeleton) { return (
); } if (isError) { return ; } if (isSuccess && (!news || news.length === 0)) { return (
Belum ada berita untuk ditampilkan.
); } if (isSuccess && news && news.length > 0) { return (
); } })()}
); }