diff --git a/app/component/ItemDoctor.js b/app/component/ItemDoctor.js index 938d9eb..64ee0ed 100644 --- a/app/component/ItemDoctor.js +++ b/app/component/ItemDoctor.js @@ -1,3 +1,4 @@ +import { memo } from "react"; import Image from "next/image"; import { Button } from "@mui/material"; import Link from "next/link"; @@ -109,4 +110,4 @@ function ItemDoctor({ doctor, loading, setDoctors, priority = false }) { ); } -export default ItemDoctor; +export default memo(ItemDoctor); diff --git a/app/panel/(layout)/layout.js b/app/panel/(layout)/layout.js index 7423622..d793db7 100644 --- a/app/panel/(layout)/layout.js +++ b/app/panel/(layout)/layout.js @@ -4,6 +4,7 @@ import { getUser } from "@/lib/auth"; import { redirect } from "next/navigation"; import { cookies } from "next/headers"; import { fetchReq } from "@/lib/req"; +import { safeJsonParse } from "@/lib/sanitize"; async function LayoutPanel({ children }) { const user = await getUser(); @@ -22,7 +23,8 @@ async function LayoutPanel({ children }) { const accessToken = cookieStore.get("access_token"); if (userInfo && accessToken) { - const parsedUserInfo = JSON.parse(userInfo.value); + const parsedUserInfo = safeJsonParse(userInfo.value); + if (!parsedUserInfo) return; const representationUuid = parsedUserInfo?.representation_uuid; if (representationUuid) { diff --git a/app/payment/[uuid]/page.js b/app/payment/[uuid]/page.js index 68e2c90..28f09da 100644 --- a/app/payment/[uuid]/page.js +++ b/app/payment/[uuid]/page.js @@ -199,8 +199,13 @@ export default function PaymentDetailsPage() { <>