/* eslint-disable react-hooks/exhaustive-deps */ import { BadgeCustom, BaseBox, BoxButtonOnFooter, ButtonCustom, StackCustom, TextCustom, ViewWrapper, } from "@/components"; import AdminBackButtonAntTitle from "@/components/_ShareComponent/Admin/BackButtonAntTitle"; import { GridDetail_4_8 } from "@/components/_ShareComponent/GridDetail_4_8"; import { apiAdminInvestmentGetOneInvoiceById } from "@/service/api-admin/api-admin-investment"; import { colorBadgeTransaction } from "@/utils/colorBadge"; import { dateTimeView } from "@/utils/dateTimeView"; import { formatCurrencyDisplay } from "@/utils/formatCurrencyDisplay"; import { router, useFocusEffect, useLocalSearchParams } from "expo-router"; import { useCallback, useState } from "react"; export default function AdminInvestmentTransactionDetail() { const { id } = useLocalSearchParams(); console.log("[ID]", id); const [data, setData] = useState(null); useFocusEffect( useCallback(() => { onLoadData(); }, [id]) ); const onLoadData = async () => { try { const response = await apiAdminInvestmentGetOneInvoiceById({ id: id as string, }); console.log("[RESPONSE]", JSON.stringify(response, null, 2)); if (response.success) { setData(response.data); } } catch (error) { console.log("[ERROR]", error); } }; const buttonAction = ( router.back()}>Terima ); const listData = [ { label: "Investor", value: data?.Author?.username || "-", }, { label: "Bank", value: data?.MasterBank?.namaBank || "-", }, { label: "Jumlah Investasi", value: `Rp. ${formatCurrencyDisplay(data?.nominal) || "-"}`, }, { label: "Status", value: data && data?.StatusInvoice?.name ? ( {data?.StatusInvoice?.name} ) : ( "-" ), }, { label: "Tanggal", value: data && dateTimeView({ date: data?.createdAt }) || "-", }, { label: "Bukti Transfer", value: ( router.push(`/(application)/(image)/preview-image/${data?.imageId}`) } > Cek ), }, ]; return ( <> } footerComponent={buttonAction} > {listData.map((item, index) => ( {item.label}} value={{item.value}} /> ))} ); }