"use client"; import { Link } from "@/components/navigation"; import { Card } from "@/components/ui/card"; import { Carousel, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious, } from "@/components/ui/carousel"; import { listCuratedContent } from "@/service/curated-content/curated-content"; import { getListContent } from "@/service/landing/landing"; import { formatDateToIndonesian, generateLocalizedPath, textEllipsis, } from "@/utils/globals"; import { Icon } from "@iconify/react/dist/iconify.js"; import { hasData } from "jquery"; import { useParams, usePathname, useRouter } from "next/navigation"; import React, { Component, useEffect, useState } from "react"; import { listDataTracking } from "@/service/media-tracking/media-tracking"; // sesuaikan path import { getCookiesDecrypt } from "@/lib/utils"; const AudioSliderPage = () => { const [audioData, setAudioData] = useState(); const [displayAudio, setDisplayAudio] = useState([]); const [page, setPage] = useState(1); const [limit, setLimit] = React.useState(10); const [search, setSearch] = React.useState(""); const [hasData, setHasData] = useState(false); useEffect(() => { initFetch(); }, [page, limit, search]); // const initFetch = async () => { // const response = await listCuratedContent(search, limit, page - 1, 4, "1"); // // console.log(response); // const data = response?.data?.data; // const contentData = data?.content; // setHasData(displayAudio && displayAudio.length > 0); // setDisplayAudio(contentData); // }; const initFetch = async () => { try { const levelName = (getCookiesDecrypt("levelName") || "").toUpperCase(); const res = await listDataTracking( limit, page - 1, search, "", // category "", // status levelName, "4", // ✅ AUDIO ); const data = res?.data?.data?.content || []; console.log("AUDIO DATA:", data); const mapped = data.map((item: any) => ({ id: item.id, title: item.title, createdAt: item.createdAt, timezone: item.timezone, clickCount: item.clickCount || 0, })); setDisplayAudio(mapped); setHasData(mapped.length > 0); } catch (error) { console.error("Error fetching audio:", error); } }; const shuffleArray = (array: any[]) => { for (let i = array.length - 1; i > 0; i--) { const j = Math.floor(Math.random() * (i + 1)); [array[i], array[j]] = [array[j], array[i]]; } return array; }; return (
{displayAudio.length > 0 && (

Audio

Lihat Semua
{displayAudio.map((audio, index) => (
{audio?.title}
))}
)}
); }; export default AudioSliderPage;