solana/explorer/src/components/instruction/serum/CancelOrderDetails.tsx

78 lines
1.9 KiB
TypeScript

import React from "react";
import { SignatureResult, TransactionInstruction } from "@solana/web3.js";
import { InstructionCard } from "../InstructionCard";
import { Address } from "components/common/Address";
import { CancelOrder } from "./types";
export function CancelOrderDetailsCard(props: {
ix: TransactionInstruction;
index: number;
result: SignatureResult;
info: CancelOrder;
innerCards?: JSX.Element[];
childIndex?: number;
}) {
const { ix, index, result, info, innerCards, childIndex } = props;
return (
<InstructionCard
ix={ix}
index={index}
result={result}
title="Serum Program: Cancel Order"
innerCards={innerCards}
childIndex={childIndex}
>
<tr>
<td>Program</td>
<td className="text-lg-right">
<Address pubkey={info.programId} alignRight link />
</td>
</tr>
<tr>
<td>Market</td>
<td className="text-lg-right">
<Address pubkey={info.accounts.market} alignRight link />
</td>
</tr>
<tr>
<td>Open Orders</td>
<td className="text-lg-right">
<Address pubkey={info.accounts.openOrders} alignRight link />
</td>
</tr>
<tr>
<td>Open Orders Owner</td>
<td className="text-lg-right">
<Address pubkey={info.accounts.openOrdersOwner} alignRight link />
</td>
</tr>
<tr>
<td>Request Queue</td>
<td className="text-lg-right">
<Address pubkey={info.accounts.requestQueue} alignRight link />
</td>
</tr>
<tr>
<td>Side</td>
<td className="text-lg-right">{info.data.side}</td>
</tr>
<tr>
<td>Open Orders Slot</td>
<td className="text-lg-right">{info.data.openOrdersSlot}</td>
</tr>
<tr>
<td>Order Id</td>
<td className="text-lg-right">{info.data.orderId.toString(10)}</td>
</tr>
</InstructionCard>
);
}