UX.SOL

Component

Transaction Progress Timeline

Renders provider-neutral transaction milestones with observed timestamps, details, current progress, skipped events, failures, and optional retry.

Preview

Records only milestones observed from a real 1-lamport devnet self-transfer. The wallet pays the network fee.

No transaction history yet

Observed milestones will appear here after a transaction starts.

Installation

terminal
$npx shadcn@latest add https://uxdotsol.xyz/r/transaction-progress-timeline.json

Usage

transaction-progress-timeline.tsx
import {
TransactionProgressTimeline,
type TransactionProgressStep,
} from "@/components/uxdotsol/components/transaction-progress-timeline";
 
export function PaymentProgress({
steps,
}: {
steps: readonly TransactionProgressStep[];
}) {
return <TransactionProgressTimeline steps={steps} />;
}

Props / Arguments

NameTypeDefaultDescription
stepsreadonly TransactionProgressStep[][]Ordered provider-neutral milestones. An empty array renders the honest empty state.
title / description / emptyTitle / emptyDescriptionstringtimeline guidanceAccessible headings and guidance for populated and empty timelines.
showTimestamps / compactboolean / booleantrue / falseControls observed UTC timestamps and vertical spacing.
retryLabel / onRetrystring / () => void'Recheck transaction' / undefinedOptional action shown only when at least one milestone has failed.
classNamestring''Optional classes applied to the outer timeline card.

Types

NameTypeDefaultDescription
TransactionProgressStep{ id; title; description?; detail?; timestamp?; status }-One normalized milestone and its observed evidence.
TransactionProgressStepStatus'pending' | 'active' | 'complete' | 'failed' | 'skipped'-Provider-neutral milestone state vocabulary.