Commit f22c11c5 by Arjun Jhukal

updated the new fixes for site setting and banner image removal case

parent d9e80ef7
...@@ -31,7 +31,7 @@ const CreditCard = ({ game }: { game: any }) => { ...@@ -31,7 +31,7 @@ const CreditCard = ({ game }: { game: any }) => {
}, },
]; ];
console.log(game)
return ( return (
<div className=" rounded-lg p-3 border border-gray"> <div className=" rounded-lg p-3 border border-gray">
<Image src={game?.logo || "/assets/images/auth-image.png"} alt='' width={32} height={32} className='aspect-square rounded-sm' /> <Image src={game?.logo || "/assets/images/auth-image.png"} alt='' width={32} height={32} className='aspect-square rounded-sm' />
......
...@@ -110,7 +110,7 @@ export default function PlayerDetailPage({ id }: { id: number }) { ...@@ -110,7 +110,7 @@ export default function PlayerDetailPage({ id }: { id: number }) {
<div className="col-span-1 bg-light-gray rounded-[14px] p-4 lg:py-6"> <div className="col-span-1 bg-light-gray rounded-[14px] p-4 lg:py-6">
<Image src={"/assets/images/withdrawn.svg"} alt='' width={48} height={48} className='mx-auto' /> <Image src={"/assets/images/withdrawn.svg"} alt='' width={48} height={48} className='mx-auto' />
<div className="content mt-3"> <div className="content mt-3">
<strong className="text-[12px] leading-[120%] font-[700] text-primary block ">${userBalance?.data?.total_withdrawl || 0}</strong> <strong className="text-[12px] leading-[120%] font-[700] text-primary block ">${userBalance?.data?.total_withdrawn || 0}</strong>
<span className="text-para-light text-[9px]">Total Withdrawn</span> <span className="text-para-light text-[9px]">Total Withdrawn</span>
</div> </div>
</div> </div>
......
...@@ -77,9 +77,8 @@ export default function BannerSlider() { ...@@ -77,9 +77,8 @@ export default function BannerSlider() {
if (banner.image) { if (banner.image) {
formData.append(`banners[${index}][image]`, banner.image); formData.append(`banners[${index}][image]`, banner.image);
} else if (banner.image_url) {
formData.append(`banners[${index}][image_url]`, banner.image_url);
} }
formData.append(`banners[${index}][image_url]`, banner.image_url || "");
}); });
const response = await updateBanner(formData).unwrap(); const response = await updateBanner(formData).unwrap();
dispatch( dispatch(
...@@ -217,7 +216,16 @@ export default function BannerSlider() { ...@@ -217,7 +216,16 @@ export default function BannerSlider() {
onBlur={() => onBlur={() =>
formik.setFieldTouched(`banners[${index}].image`, true) formik.setFieldTouched(`banners[${index}].image`, true)
} }
serverFile={data?.data[index]?.image_url} serverFile={typeof banner.image_url === "string" ? banner.image_url : ""}
// handle remove icon (server file)
onRemoveServerFile={() => {
const updatedUSPs = [...formik.values.banners];
updatedUSPs[index] = {
...updatedUSPs[index],
image_url: "",
};
formik.setFieldValue("banners", updatedUSPs);
}}
/> />
<span className="error"> <span className="error">
{formik.touched.banners?.[index]?.image && {formik.touched.banners?.[index]?.image &&
...@@ -247,7 +255,7 @@ export default function BannerSlider() { ...@@ -247,7 +255,7 @@ export default function BannerSlider() {
variant="text" variant="text"
color="primary" color="primary"
onClick={handleAddBanner} onClick={handleAddBanner}
className="!p-0" className="!p-0 !text-secondary !text-left hover:!bg-transparent !justify-start"
> >
+ Add More Banner + Add More Banner
</Button> </Button>
......
...@@ -40,7 +40,7 @@ export default function SiteSetting() { ...@@ -40,7 +40,7 @@ export default function SiteSetting() {
title: usp.title, title: usp.title,
description: usp.description, description: usp.description,
icon: null, icon: null,
icon_url: usp.icon icon_url: usp.icon_url
})) }))
} : SiteInitialRequest, } : SiteInitialRequest,
enableReinitialize: true, enableReinitialize: true,
...@@ -81,9 +81,8 @@ export default function SiteSetting() { ...@@ -81,9 +81,8 @@ export default function SiteSetting() {
if (usp.icon) { if (usp.icon) {
formData.append(`unique_selling_points[${index}][icon]`, usp.icon); formData.append(`unique_selling_points[${index}][icon]`, usp.icon);
} }
if (usp.icon_url) { formData.append(`unique_selling_points[${index}][icon_url]`, usp.icon_url || "");
formData.append(`unique_selling_points[${index}][icon_url]`, usp.icon_url);
}
}); });
......
...@@ -7,9 +7,12 @@ import GoldCoinIcon from '@/icons/GoldCoinIcon'; ...@@ -7,9 +7,12 @@ import GoldCoinIcon from '@/icons/GoldCoinIcon';
import { useDepositMutation } from '@/services/transaction'; import { useDepositMutation } from '@/services/transaction';
import { showToast, ToastVariant } from '@/slice/toastSlice'; import { showToast, ToastVariant } from '@/slice/toastSlice';
import { Box, Button } from '@mui/material'; import { Box, Button } from '@mui/material';
import { BitcoinRefresh, Check, TickCircle } from '@wandersonalwes/iconsax-react';
import Image from 'next/image'; import Image from 'next/image';
import { useRouter } from 'next/navigation'; import { useRouter } from 'next/navigation';
import React from 'react' import React from 'react'
type PaymentModeProps = "crypto" | "idem"
export default function CheckoutPage({ amount, slug, bonus }: { export default function CheckoutPage({ amount, slug, bonus }: {
amount: number; amount: number;
slug: string; slug: string;
...@@ -18,6 +21,8 @@ export default function CheckoutPage({ amount, slug, bonus }: { ...@@ -18,6 +21,8 @@ export default function CheckoutPage({ amount, slug, bonus }: {
const dispatch = useAppDispatch(); const dispatch = useAppDispatch();
const router = useRouter(); const router = useRouter();
const [getPaymentLink, { isLoading: gettingLink }] = useDepositMutation(); const [getPaymentLink, { isLoading: gettingLink }] = useDepositMutation();
const [currentPaymentMode, setCurrentPaymentMode] = React.useState("crypto");
return ( return (
<section className="checkout__root"> <section className="checkout__root">
<div className="grid grid-cols-12 gap-4 lg:gap-10 xl:gap-12"> <div className="grid grid-cols-12 gap-4 lg:gap-10 xl:gap-12">
...@@ -73,11 +78,21 @@ export default function CheckoutPage({ amount, slug, bonus }: { ...@@ -73,11 +78,21 @@ export default function CheckoutPage({ amount, slug, bonus }: {
<p className='text-[11px] lg:text-[13px]'>To start playing and cashing out your winnings, you’ll need a crypto wallet to purchase E-Credits and receive payouts. Don't worry—it’s quick and easy!</p> <p className='text-[11px] lg:text-[13px]'>To start playing and cashing out your winnings, you’ll need a crypto wallet to purchase E-Credits and receive payouts. Don't worry—it’s quick and easy!</p>
<h2 className='text-[20px] lg:text-[24px] mt-8 mb-4'>Select payment method</h2> <h2 className='text-[20px] lg:text-[24px] mt-8 mb-4'>Select payment method</h2>
<div className="grid sm:grid-cols-2 mb-8"> <div className="grid sm:grid-cols-2 mb-8 gap-6">
<div className="col-span-1"> <div className="col-span-1">
<GlassWrapper> <GlassWrapper>
<div className="py-5 px-4 " > <div className="py-5 px-4 flex justify-between items-center cursor-pointer" onClick={() => setCurrentPaymentMode("crypto")} >
<span className="text-[14px] flex items-center justify-start gap-2"><BitCoinIcon />Crypto Currency</span> <span className="text-[14px] flex items-center justify-start gap-2"><BitCoinIcon />Crypto Currency</span>
{currentPaymentMode === "crypto" ? <TickCircle /> : ""}
</div>
</GlassWrapper>
</div>
<div className="col-sl">
<GlassWrapper>
<div className="py-5 px-4 flex justify-between items-center cursor-pointer" onClick={() => setCurrentPaymentMode("idem")}>
<span className="text-[14px] flex items-center justify-start gap-2"><BitcoinRefresh />IDEM</span>
{currentPaymentMode === "idem" ? <TickCircle /> : ""}
</div> </div>
</GlassWrapper> </GlassWrapper>
</div> </div>
...@@ -85,12 +100,25 @@ export default function CheckoutPage({ amount, slug, bonus }: { ...@@ -85,12 +100,25 @@ export default function CheckoutPage({ amount, slug, bonus }: {
<Button type='submit' variant='contained' color='primary' className='!mt-3' onClick={async () => { <Button type='submit' variant='contained' color='primary' className='!mt-3' onClick={async () => {
try { try {
const response = await getPaymentLink({ if (currentPaymentMode === "crypto") {
id: slug, const response = await getPaymentLink({
amount, id: slug,
}).unwrap(); amount,
}).unwrap();
router.replace(response?.data?.payment_url)
}
else if (currentPaymentMode === "idem") {
console.log("payment mode is idem");
}
else {
dispatch(
showToast({
message: "Please select prefered mode of payment.",
variant: ToastVariant.INFO
})
)
}
router.replace(response?.data?.payment_url)
} }
catch (e: any) { catch (e: any) {
dispatch( dispatch(
......
...@@ -51,7 +51,7 @@ export interface PlayerItem extends CommonPlayerProps { ...@@ -51,7 +51,7 @@ export interface PlayerItem extends CommonPlayerProps {
registered_date: string | Date; registered_date: string | Date;
current_credit?: string, current_credit?: string,
current_balance?: string, current_balance?: string,
total_withdrawl?: string, total_withdrawn?: string,
total_deposited?: string total_deposited?: string
profile_image_file?: string; profile_image_file?: string;
is_suspended?: boolean; is_suspended?: boolean;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment