import React from "react" import { WalletStatementMapping, WalletStatementType } from "../types/WalletStatement"; import Divider from "./Divider"; import { CrossCircleSvg } from "../assets/svg/CrossCircleSvg"; import { AlertCircleSvg } from "../assets/svg/AlertCircleSvg"; interface WalletStatementProps { statementDataGrouped: WalletStatementType; /** translated "Wallet" label; English fallback used when omitted */ walletLabel?: string; } export const WalletStatement = ({ statementDataGrouped, walletLabel = 'Wallet' }: WalletStatementProps) => { return (
{Object.entries(statementDataGrouped).map(([date, statements], index) => { return (
{date}
{statements?.map((statement: WalletStatementMapping, i) => { const { description, title, status, isFailed, isPending, amount, walletBalance, displayErrorMessage, tripId, onClickDescription } = statement; const paymentStatusCheck = (isPending || isFailed) const walletRounded = Math.round(walletBalance ?? 0); return (

{title}

₹ {(amount)}

{tripId ? `#${tripId}` : ''}

{description}

{paymentStatusCheck &&
{isPending && } {isFailed && }

{status}

{(displayErrorMessage !== null && displayErrorMessage !== undefined) ?

{displayErrorMessage}

: null}
}
{(walletBalance !== null && walletBalance !== undefined) ?

{walletLabel}: {walletRounded}

: null}
{i !== statements.length - 1 && }
); })}
); })}
) }