Commit c1a57457 by Arjun Jhukal

updated the meta for site dynamic

parent d64c3642
......@@ -5,15 +5,36 @@ import ProviderWrapper from "./ProviderWrapper";
import { AgeChecker } from "./AgeChecker";
import TopLoader from "./TopLoader";
import React from "react";
import { pageSEO } from "@/serverApi/game";
export const metadata: Metadata = {
const metadata: Metadata = {
title: "Sweepstake",
description: "Sweepstake - Online Gaming Platform",
icons: {
icon: "/assets/images/logo.png",
},
};
export async function generateMetadata(): Promise<Metadata> {
try {
const response = await pageSEO();
const seoData = response;
console.log(response);
return {
title: seoData?.data?.site_name || metadata.title,
description: seoData?.data?.description || metadata.description,
openGraph: {
title: seoData?.data?.site_name || seoData?.data?.site_name || metadata.title,
description: seoData?.data?.description || seoData?.data?.description || metadata.description,
images: seoData?.data?.logo ? [seoData.logo] : ["/assets/images/logo.png"],
},
icons: seoData?.favicon || metadata.icons,
};
} catch (error) {
console.error("SEO metadata fetch failed:", error);
return metadata;
}
}
const inter = Inter({
subsets: ['latin'],
fallback: ['sans-serif'],
......
......@@ -37,7 +37,7 @@ export default function SiteSetting() {
title: usp.title,
description: usp.description,
icon: null,
icon_url: usp.icon_url
icon_url: usp.icon
}))
} : SiteInitialRequest,
enableReinitialize: true,
......@@ -106,7 +106,7 @@ export default function SiteSetting() {
const handleAddUSP = () => {
formik.setFieldValue("unique_selling_points", [
...formik.values.unique_selling_points,
{ title: "", description: "", icon: null },
{ title: "", description: "", icon: null, icon_url: "" },
]);
};
......@@ -192,7 +192,9 @@ export default function SiteSetting() {
</div>
<div className="form__fields p-6 lg:p-10 space-y-6">
{formik.values.unique_selling_points.map((usp, index) => (
{formik.values.unique_selling_points.map((usp, index) => {
console.log(usp);
return (
<div
key={index}
className="grid gap-4 lg:gap-6 md:grid-cols-2 lg:grid-cols-3 items-start relative border border-gray rounded-lg p-4"
......@@ -254,7 +256,16 @@ export default function SiteSetting() {
formik.setFieldValue(`unique_selling_points[${index}].icon`, file)
}
onBlur={() => formik.setFieldTouched(`unique_selling_points[${index}].icon`, true)}
serverFile={data?.data?.unique_selling_points[index]?.icon}
serverFile={typeof usp.icon_url === "string" ? usp.icon_url : ""}
// handle remove icon (server file)
onRemoveServerFile={() => {
const updatedUSPs = [...formik.values.unique_selling_points];
updatedUSPs[index] = {
...updatedUSPs[index],
icon_url: "",
};
formik.setFieldValue("unique_selling_points", updatedUSPs);
}}
/>
<span className="error">
{formik.touched.unique_selling_points?.[index]?.icon &&
......@@ -264,9 +275,10 @@ export default function SiteSetting() {
</span>
</div>
</div>
))}
)
})}
<Button variant="text" color="primary" onClick={handleAddUSP} className="!p-0">
<Button variant="text" color="primary" onClick={handleAddUSP} className="!p-0 !text-title !max-w-fit">
+ Add More USP
</Button>
</div>
......
......@@ -8,6 +8,9 @@ export async function getAllGames(): Promise<GameResponseProps> {
export async function getSubGames(): Promise<any> {
return serverBaseQuery("/api/general/home/sub-games");
}
export async function pageSEO(): Promise<any> {
return serverBaseQuery("/api/general/home/seo");
}
export async function getUsp(): Promise<any> {
return serverBaseQuery("/api/general/home/usp");
}
......@@ -31,6 +34,7 @@ export async function getUserGameCredentials(): Promise<CredentialsResponseProps
withAuth: true,
});
}
export async function getUserGameBalance(): Promise<CredentialsResponseProps> {
const cookieStore = await cookies();
const access_token = cookieStore.get("access_token")?.value;
......
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