import React, { useEffect, useState } from "react"; // import authProfilePic from "../../assets/images/auth-profile-picture.png"; // import profileBanner from "../../assets/images/profile-cover.png"; // import collections from "../../data/collectionplan_data.json"; Should this be cleaned off? // import marketPlace from "../../data/marketplace_data.json"; import { useSelector } from "react-redux"; import LoadingSpinner from "../../components/Spinners/LoadingSpinner"; import products from "../../data/product_data.json"; import usersService from "../../services/UsersService"; import Layout from "../Partials/Layout"; import { ActivitiesTab, BlogTab, CollectionTab, HiddenProductsTab, MyUploadedFiles, OwnTab, QuestionsTab, } from "./tabs"; //import MyUploadedFiles from "./tabs/MyUploadedFiles"; export default function Resources(props) { // console.log("RESOURCES=>", props); const ownProducts = products.datas; // Resource Props const __resources = props.MyResourceData; //debugger; // Collection Items const CreatedSell = __resources?.marketdata?.data; // const tab_categories = __resources?.tab_categories?.data?.sort((a, b) => b.name.localeCompare(a.name)) // SORT REMOVED const tab_categories = __resources?.tab_categories?.data const collectionProducts = __resources?.collectiondata?.data; const onSaleProducts = __resources?.marketdata?.data; const CreatedBits = __resources?.productdata?.datas; const blogItems = __resources?.blogdata?.payload; console.log(__resources); console.log("Blog data >> ", blogItems); // My Items Data const [uploadedFiles, setUploadedFiles] = useState({ loading: false, msg: "", data: null, }); const { uploadsTable } = useSelector((state) => state.tableReload); const apiCall = new usersService(); const getUploadedFiles = async () => { setUploadedFiles((prev) => ({ ...prev, loading: true })); let res; try { res = await apiCall.getUploadedList(); res = res.data; if (res?.internal_return < 0) { setUploadedFiles((prev) => ({ ...prev, loading: false, msg: "something went wrong", })); } setUploadedFiles((prev) => ({ ...prev, loading: false, msg: "success", data: res?.result_list, image: res?.session_image_server, })); } catch (error) { setUploadedFiles((prev) => ({ ...prev, loading: false, msg: "An error occurred", })); } }; // const [tab, setTab] = useState(tab_categories ? tab_categories[0]?.name : ""); const [tab, setTab] = useState( props.activeTab ? props.activeTab : "onsale" ); const tabHandler = (value) => { setTab(value); }; useEffect(() => { getUploadedFiles(); }, [uploadsTable]); // Category Components const tabComponents = { blog: , onsale: , owned: , created: , hidden: ( ), collection: , activity: , }; // const defaultTabComponent = ; // const selectedTabComponent = tabComponents[tab] || defaultTabComponent; const defaultTabComponent = props.activeTab ? ( tabComponents[props.activeTab] ) : ( ); const selectedTabComponent = tabComponents[tab] || defaultTabComponent; // Tab Item Component const TabItem = ({ tabValue, isActive }) => { let countNumber = (name) => { // FUNCTION TO DETERMINE THE COUNT NUMBER if (name == "blog") { return blogItems?.blogdata?.length; } else if (name == "onsale") { return onSaleProducts?.length; // return null } else if (name == "owned") { return ownProducts?.length; } else if (name == "created") { return uploadedFiles?.data?.length; } else { return 0; } }; return (
  • tabHandler(tabValue.name)} > {tabValue.content} {tabValue.name != "onsale" && ( {countNumber(tabValue.name)} )}
  • ); }; // Tab List Component const TabList = ({ tabCategories }) => { return (
      {tabCategories?.length > 0 && tabCategories?.map((tabValue, idx) => { if (tabValue.enabled) { return ( ); } })}
    ); }; return ( <>
    {__resources.length == 0 || Object.keys(__resources).length == 0 ? (
    ) : (
    {selectedTabComponent}
    )}
    ); }