Compare commits

...

3 Commits

3 changed files with 48 additions and 24 deletions
+5 -5
View File
@@ -58,15 +58,15 @@ export default function MyJobTable({ className, ActiveJobList }) {
<LoadingSpinner size="16" color="sky-blue" /> <LoadingSpinner size="16" color="sky-blue" />
</div> </div>
) : ( ) : (
<div className="relative w-full overflow-x-auto sm:rounded-lg"> <div className="relative w-full sm:rounded-lg">
<div className="overflow-y-auto h-auto w-full"> <div className="h-auto w-full">
{ActiveJobList?.data?.length > 0 ? ( {ActiveJobList?.data?.length > 0 ? (
currentTask?.map((task, idx) => ( currentTask?.map((task, idx) => (
<div <div
className="bg-white dark:bg-dark-white border-b dark:border-[#5356fb29] w-full flex justify-between items-center hover:bg-gray-50" className="bg-white dark:bg-dark-white border-b dark:border-[#5356fb29] w-full flex justify-between items-center hover:bg-gray-50"
key={idx} key={idx}
> >
<div className=" py-4"> <div className="py-4 max-w-[80%]">
<div className="flex space-x-2 items-center"> <div className="flex space-x-2 items-center">
<div className="w-full min-w-[60px] max-w-[60px] flex-[0.1] h-[60px] rounded-full overflow-hidden flex justify-center items-center"> <div className="w-full min-w-[60px] max-w-[60px] flex-[0.1] h-[60px] rounded-full overflow-hidden flex justify-center items-center">
<img <img
@@ -76,7 +76,7 @@ export default function MyJobTable({ className, ActiveJobList }) {
/> />
</div> </div>
<div className="flex flex-col flex-[0.9]"> <div className="flex flex-col flex-[0.9]">
<h1 className="font-bold text-xl text-dark-gray dark:text-white whitespace-nowrap"> <h1 className="font-bold text-xl text-dark-gray dark:text-white">
{task?.title} {task?.title}
</h1> </h1>
<span className="text-base text-gray-600"> <span className="text-base text-gray-600">
@@ -112,7 +112,7 @@ export default function MyJobTable({ className, ActiveJobList }) {
</div> </div>
</div> </div>
<div className="text-right py-4 px-2"> <div className="flex justify-center items-center py-4 px-2">
<button <button
type="button" type="button"
onClick={() => { onClick={() => {
+39 -17
View File
@@ -7,6 +7,7 @@ import Icons from "../Helpers/Icons";
import SliderCom from "../Helpers/SliderCom"; import SliderCom from "../Helpers/SliderCom";
import OfferJobPopout from '../jobPopout/OfferJobPopout' import OfferJobPopout from '../jobPopout/OfferJobPopout'
import LoadingSpinner from "../Spinners/LoadingSpinner";
export default function MyOffersTable({ className, MyActiveOffersList}) { export default function MyOffersTable({ className, MyActiveOffersList}) {
@@ -49,9 +50,9 @@ export default function MyOffersTable({ className, MyActiveOffersList}) {
// } // }
}; };
if ( !MyActiveOffersList || MyActiveOffersList?.result_list?.length == 0 ){ // if ( !MyActiveOffersList || MyActiveOffersList?.result_list?.length == 0 ){
return(''); // want blank or no appear when no items // return(''); // want blank or no appear when no items
} // }
return ( return (
<> <>
@@ -112,37 +113,40 @@ export default function MyOffersTable({ className, MyActiveOffersList}) {
</div> </div>
<div className="slider-content"> <div className="slider-content">
<SliderCom settings={settings} selector={sellSlider}> <SliderCom settings={settings} selector={sellSlider}>
{ MyActiveOffersList.loading ?
{MyActiveOffersList && <LoadingSpinner size={16} color='sky-blue' />
MyActiveOffersList?.result_list?.length > 0 && :
MyActiveOffersList.result_list.map((value, index) => ( MyActiveOffersList?.data?.length > 0 ?
MyActiveOffersList.data.map((value, index) => (
<div className="item" key={index}> <div className="item" key={index}>
<div className="offer-slide-item" > <div className="offer-slide-item flex flex-col justify-between items-center">
{/* title */} {/* title */}
<div className="flex justify-center"> <div className="flex justify-center">
<p className="text-2xl text-dark-gray dark:text-white font-bold mb-2"> <p className="text-xl text-dark-gray dark:text-white font-bold mb-2">
{value.title} {value.title}
</p> </p>
</div> </div>
{/* username */} {/* username */}
<div className="flex justify-center mb-1"> <div className="flex flex-col justify-center my-1">
<p className="text-xs text-thin-light-gray"> <p className="text-xs text-thin-light-gray">
{value.timeline_days} Days {value.timeline_days} Days
</p> </p>
</div> <div className="my-2 flex space-x-1 items-center text-purple text-xs">
{/* items */}
<div className="flex justify-center">
<div className="flex space-x-1 items-center text-purple text-xs">
<span>{value.price*0.01} {value.currency}</span> <span>{value.price*0.01} {value.currency}</span>
</div> </div>
</div> </div>
{/* items */}
{/* <div className="flex justify-center">
<div className="flex space-x-1 items-center text-purple text-xs">
<span>{value.price*0.01} {value.currency}</span>
</div>
</div> */}
<button <button
type="button" type="button"
onClick={() => { onClick={() => {
setOfferPopout({ show: true, data: value }); setOfferPopout({ show: true, data: value });
}} }}
className="w-20 h-11 flex justify-center items-center btn-gradient text-base rounded-full text-white" className="w-20 h-11 self-center btn-gradient text-base rounded-full text-white"
> >
Start Task Start Task
</button> </button>
@@ -150,7 +154,25 @@ export default function MyOffersTable({ className, MyActiveOffersList}) {
</div> </div>
</div> </div>
))} ))
:
MyActiveOffersList.status ?
(
<div className="font-bold text-xl text-dark-gray dark:text-white whitespace-nowrap">
<div className="p-2">
No Tasks!
</div>
</div>
)
:
(
<div className="font-bold text-xl text-dark-gray dark:text-white whitespace-nowrap">
<p className="p-2">
Error Occurred! Unable to display Tasks!
</p>
</div>
)
}
+4 -2
View File
@@ -9,7 +9,7 @@ export default function MyTaskPage() {
const {jobListTable} = useSelector((state) => state.tableReload) const {jobListTable} = useSelector((state) => state.tableReload)
const [MyActiveJobList, setMyActiveJobList] = useState({loading: true, status:false, data:[]}); const [MyActiveJobList, setMyActiveJobList] = useState({loading: true, status:false, data:[]});
const [MyActiveOffersList, setMyActiveOffersList] = useState([]); const [MyActiveOffersList, setMyActiveOffersList] = useState({loading: true, status:false, data:[]});
const api = new usersService(); const api = new usersService();
const commonHeadData =()=>{ const commonHeadData =()=>{
console.log("COMMON HEAD DATA ----------------=====---------------------"); console.log("COMMON HEAD DATA ----------------=====---------------------");
@@ -26,10 +26,12 @@ export default function MyTaskPage() {
} }
}; };
const getMyActiveOffersList = async () => { const getMyActiveOffersList = async () => {
setMyActiveOffersList({loading: true, status:false, data:[]});
try { try {
const res = await api.getOffersList(); const res = await api.getOffersList();
setMyActiveOffersList(res.data); setMyActiveOffersList({loading: false, status:true, data:res.data.result_list});
} catch (error) { } catch (error) {
setMyActiveOffersList({loading: false, status:false, data:[]});
console.log("Error getting offers"); console.log("Error getting offers");
} }
}; };