import type { LoaderFunctionArgs } from "@remix-run/node"; import { Link, useLoaderData } from "@remix-run/react"; import { User2 } from "lucide-react"; import { useState } from "react"; import BackButton from "~/components/back-button"; import PageContainer from "~/components/page-container"; import { Badge } from "~/components/ui/badge"; import { Separator } from "~/components/ui/separator"; import { httpClient } from "~/lib/http"; import type { Proyek, TokenResponse } from "~/types/api/proyek"; import type { BaseResponse } from "~/types/constants/base-response"; import { StatusProject } from "~/types/constants/status-project"; import toRupiah from "~/utils/to-rupiah"; import FirstSection from "./components/first-section"; import LaporanModal from "./components/modal/laba-rugi/laporan"; import MutasiModal from "./components/modal/mutasi/mutasi"; import SecondSection from "./components/second-section"; type LoaderData = { data: Proyek; investors: TokenResponse[]; }; export async function loader({ params }: LoaderFunctionArgs) { try { const [projectResponse, investorsResponse] = await Promise.all([ httpClient.get>(`/project/${params.id}`), httpClient.get>(`/project/${params.id}/user`), ]); return { data: projectResponse.data.data || {}, investors: investorsResponse.data.data || [], } as LoaderData; } catch (error) { console.error("Error fetching data:", error); return { data: {} as Proyek, investors: [], }; } } export default function DetailPengajuanProyekPage() { const { data, investors } = useLoaderData(); const [phase, setPhase] = useState(1); function handleChangePhase() { setPhase((prev) => (prev === 1 ? 2 : 1)); } return (

Detail Proyek

{phase === 1 ? ( ) : ( )}
{data.status}

{data.judul}

{data.user?.nama}

Modal Kerja {toRupiah(data.nominal)}
Aset Jaminan {data.asset_jaminan}
Nominal Jaminan {toRupiah(data.nilai_jaminan)}

Model dan Rencana Bisnis

Pendapatan/{data.report_progress} bulan {toRupiah(data.pendapatan_perbulan)}
Pengeluaran/{data.report_progress} bulan {toRupiah(data.pengeluaran_perbulan)}

Kontak Pemilik Proyek

No.Whatsapp {data.user?.no_hp}
vector-1

Laba Rugi Persiklus

Riwayat Laporan
vector-1

Rekap Laba Rugi

Riwayat Laporan
); }