docs: make the comments on using the new confirmTransaction clearer (#29251)
* docs: make the comments on using the new connection.confirmTransaction clearer * docs: add TransactionConfirmataionStrategy type * refactor: change param type in sendAndConfirmRawTransaction * docs: fix typo
This commit is contained in:
parent
456a81982e
commit
710ac01ef7
|
@ -349,6 +349,13 @@ export type BaseTransactionConfirmationStrategy = Readonly<{
|
|||
signature: TransactionSignature;
|
||||
}>;
|
||||
|
||||
/**
|
||||
* This type represents all transaction confirmation strategies
|
||||
*/
|
||||
export type TransactionConfirmationStrategy =
|
||||
| BlockheightBasedTransactionConfirmationStrategy
|
||||
| DurableNonceTransactionConfirmationStrategy;
|
||||
|
||||
/* @internal */
|
||||
function assertEndpointUrl(putativeUrl: string) {
|
||||
if (/^https?:/.test(putativeUrl) === false) {
|
||||
|
@ -3603,13 +3610,11 @@ export class Connection {
|
|||
}
|
||||
|
||||
confirmTransaction(
|
||||
strategy:
|
||||
| BlockheightBasedTransactionConfirmationStrategy
|
||||
| DurableNonceTransactionConfirmationStrategy,
|
||||
strategy: TransactionConfirmationStrategy,
|
||||
commitment?: Commitment,
|
||||
): Promise<RpcResponseAndContext<SignatureResult>>;
|
||||
|
||||
/** @deprecated Instead, call `confirmTransaction` using a `TransactionConfirmationConfig` */
|
||||
/** @deprecated Instead, call `confirmTransaction` and pass in {@link TransactionConfirmationStrategy} */
|
||||
// eslint-disable-next-line no-dupe-class-members
|
||||
confirmTransaction(
|
||||
strategy: TransactionSignature,
|
||||
|
@ -3618,10 +3623,7 @@ export class Connection {
|
|||
|
||||
// eslint-disable-next-line no-dupe-class-members
|
||||
async confirmTransaction(
|
||||
strategy:
|
||||
| BlockheightBasedTransactionConfirmationStrategy
|
||||
| DurableNonceTransactionConfirmationStrategy
|
||||
| TransactionSignature,
|
||||
strategy: TransactionConfirmationStrategy | TransactionSignature,
|
||||
commitment?: Commitment,
|
||||
): Promise<RpcResponseAndContext<SignatureResult>> {
|
||||
let rawSignature: string;
|
||||
|
@ -3629,9 +3631,8 @@ export class Connection {
|
|||
if (typeof strategy == 'string') {
|
||||
rawSignature = strategy;
|
||||
} else {
|
||||
const config = strategy as
|
||||
| BlockheightBasedTransactionConfirmationStrategy
|
||||
| DurableNonceTransactionConfirmationStrategy;
|
||||
const config = strategy as TransactionConfirmationStrategy;
|
||||
|
||||
if (config.abortSignal?.aborted) {
|
||||
return Promise.reject(config.abortSignal.reason);
|
||||
}
|
||||
|
|
|
@ -4,6 +4,7 @@ import {
|
|||
BlockheightBasedTransactionConfirmationStrategy,
|
||||
Connection,
|
||||
DurableNonceTransactionConfirmationStrategy,
|
||||
TransactionConfirmationStrategy,
|
||||
} from '../connection';
|
||||
import type {TransactionSignature} from '../transaction';
|
||||
import type {ConfirmOptions} from '../connection';
|
||||
|
@ -15,14 +16,14 @@ import type {ConfirmOptions} from '../connection';
|
|||
*
|
||||
* @param {Connection} connection
|
||||
* @param {Buffer} rawTransaction
|
||||
* @param {BlockheightBasedTransactionConfirmationStrategy} confirmationStrategy
|
||||
* @param {TransactionConfirmationStrategy} confirmationStrategy
|
||||
* @param {ConfirmOptions} [options]
|
||||
* @returns {Promise<TransactionSignature>}
|
||||
*/
|
||||
export async function sendAndConfirmRawTransaction(
|
||||
connection: Connection,
|
||||
rawTransaction: Buffer,
|
||||
confirmationStrategy: BlockheightBasedTransactionConfirmationStrategy,
|
||||
confirmationStrategy: TransactionConfirmationStrategy,
|
||||
options?: ConfirmOptions,
|
||||
): Promise<TransactionSignature>;
|
||||
|
||||
|
@ -42,16 +43,12 @@ export async function sendAndConfirmRawTransaction(
|
|||
connection: Connection,
|
||||
rawTransaction: Buffer,
|
||||
confirmationStrategyOrConfirmOptions:
|
||||
| BlockheightBasedTransactionConfirmationStrategy
|
||||
| DurableNonceTransactionConfirmationStrategy
|
||||
| TransactionConfirmationStrategy
|
||||
| ConfirmOptions
|
||||
| undefined,
|
||||
maybeConfirmOptions?: ConfirmOptions,
|
||||
): Promise<TransactionSignature> {
|
||||
let confirmationStrategy:
|
||||
| BlockheightBasedTransactionConfirmationStrategy
|
||||
| DurableNonceTransactionConfirmationStrategy
|
||||
| undefined;
|
||||
let confirmationStrategy: TransactionConfirmationStrategy | undefined;
|
||||
let options: ConfirmOptions | undefined;
|
||||
if (
|
||||
confirmationStrategyOrConfirmOptions &&
|
||||
|
|
Loading…
Reference in New Issue