'use client'; import axios from 'axios'; import React, { useCallback, useEffect, useState } from 'react' import { SlEye } from 'react-icons/sl' function ViewCount({ video_id, viewCount }: { video_id: number, viewCount: number }) { const [view, setView] = useState(viewCount); const addView = useCallback(async () => { const materials = localStorage.getItem('MHB_MATERIALS_ID'); if (materials) { const materialsArray = materials.split(','); if (!materialsArray.includes(video_id.toString())) { const res = await axios.post(`https://turkmentv.gov.tm/v2/api/material/${video_id}/views/increment`); if (res.status === 200) { materialsArray.push(video_id.toString()); setView(res.data.view); } } localStorage.setItem('MHB_MATERIALS_ID', materialsArray.join(',')); } else { const res = await axios.post(`https://turkmentv.gov.tm/v2/api/material/${video_id}/views/increment`); if (res.status === 200) { localStorage.setItem('MHB_MATERIALS_ID', [video_id.toString()].join(',')); setView(res.data.view); } } }, [video_id]) useEffect(() => { addView(); }, []); return (
{view}
) } export default ViewCount