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;
|
signature: TransactionSignature;
|
||||||
}>;
|
}>;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This type represents all transaction confirmation strategies
|
||||||
|
*/
|
||||||
|
export type TransactionConfirmationStrategy =
|
||||||
|
| BlockheightBasedTransactionConfirmationStrategy
|
||||||
|
| DurableNonceTransactionConfirmationStrategy;
|
||||||
|
|
||||||
/* @internal */
|
/* @internal */
|
||||||
function assertEndpointUrl(putativeUrl: string) {
|
function assertEndpointUrl(putativeUrl: string) {
|
||||||
if (/^https?:/.test(putativeUrl) === false) {
|
if (/^https?:/.test(putativeUrl) === false) {
|
||||||
|
@ -3603,13 +3610,11 @@ export class Connection {
|
||||||
}
|
}
|
||||||
|
|
||||||
confirmTransaction(
|
confirmTransaction(
|
||||||
strategy:
|
strategy: TransactionConfirmationStrategy,
|
||||||
| BlockheightBasedTransactionConfirmationStrategy
|
|
||||||
| DurableNonceTransactionConfirmationStrategy,
|
|
||||||
commitment?: Commitment,
|
commitment?: Commitment,
|
||||||
): Promise<RpcResponseAndContext<SignatureResult>>;
|
): 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
|
// eslint-disable-next-line no-dupe-class-members
|
||||||
confirmTransaction(
|
confirmTransaction(
|
||||||
strategy: TransactionSignature,
|
strategy: TransactionSignature,
|
||||||
|
@ -3618,10 +3623,7 @@ export class Connection {
|
||||||
|
|
||||||
// eslint-disable-next-line no-dupe-class-members
|
// eslint-disable-next-line no-dupe-class-members
|
||||||
async confirmTransaction(
|
async confirmTransaction(
|
||||||
strategy:
|
strategy: TransactionConfirmationStrategy | TransactionSignature,
|
||||||
| BlockheightBasedTransactionConfirmationStrategy
|
|
||||||
| DurableNonceTransactionConfirmationStrategy
|
|
||||||
| TransactionSignature,
|
|
||||||
commitment?: Commitment,
|
commitment?: Commitment,
|
||||||
): Promise<RpcResponseAndContext<SignatureResult>> {
|
): Promise<RpcResponseAndContext<SignatureResult>> {
|
||||||
let rawSignature: string;
|
let rawSignature: string;
|
||||||
|
@ -3629,9 +3631,8 @@ export class Connection {
|
||||||
if (typeof strategy == 'string') {
|
if (typeof strategy == 'string') {
|
||||||
rawSignature = strategy;
|
rawSignature = strategy;
|
||||||
} else {
|
} else {
|
||||||
const config = strategy as
|
const config = strategy as TransactionConfirmationStrategy;
|
||||||
| BlockheightBasedTransactionConfirmationStrategy
|
|
||||||
| DurableNonceTransactionConfirmationStrategy;
|
|
||||||
if (config.abortSignal?.aborted) {
|
if (config.abortSignal?.aborted) {
|
||||||
return Promise.reject(config.abortSignal.reason);
|
return Promise.reject(config.abortSignal.reason);
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,6 +4,7 @@ import {
|
||||||
BlockheightBasedTransactionConfirmationStrategy,
|
BlockheightBasedTransactionConfirmationStrategy,
|
||||||
Connection,
|
Connection,
|
||||||
DurableNonceTransactionConfirmationStrategy,
|
DurableNonceTransactionConfirmationStrategy,
|
||||||
|
TransactionConfirmationStrategy,
|
||||||
} from '../connection';
|
} from '../connection';
|
||||||
import type {TransactionSignature} from '../transaction';
|
import type {TransactionSignature} from '../transaction';
|
||||||
import type {ConfirmOptions} from '../connection';
|
import type {ConfirmOptions} from '../connection';
|
||||||
|
@ -15,14 +16,14 @@ import type {ConfirmOptions} from '../connection';
|
||||||
*
|
*
|
||||||
* @param {Connection} connection
|
* @param {Connection} connection
|
||||||
* @param {Buffer} rawTransaction
|
* @param {Buffer} rawTransaction
|
||||||
* @param {BlockheightBasedTransactionConfirmationStrategy} confirmationStrategy
|
* @param {TransactionConfirmationStrategy} confirmationStrategy
|
||||||
* @param {ConfirmOptions} [options]
|
* @param {ConfirmOptions} [options]
|
||||||
* @returns {Promise<TransactionSignature>}
|
* @returns {Promise<TransactionSignature>}
|
||||||
*/
|
*/
|
||||||
export async function sendAndConfirmRawTransaction(
|
export async function sendAndConfirmRawTransaction(
|
||||||
connection: Connection,
|
connection: Connection,
|
||||||
rawTransaction: Buffer,
|
rawTransaction: Buffer,
|
||||||
confirmationStrategy: BlockheightBasedTransactionConfirmationStrategy,
|
confirmationStrategy: TransactionConfirmationStrategy,
|
||||||
options?: ConfirmOptions,
|
options?: ConfirmOptions,
|
||||||
): Promise<TransactionSignature>;
|
): Promise<TransactionSignature>;
|
||||||
|
|
||||||
|
@ -42,16 +43,12 @@ export async function sendAndConfirmRawTransaction(
|
||||||
connection: Connection,
|
connection: Connection,
|
||||||
rawTransaction: Buffer,
|
rawTransaction: Buffer,
|
||||||
confirmationStrategyOrConfirmOptions:
|
confirmationStrategyOrConfirmOptions:
|
||||||
| BlockheightBasedTransactionConfirmationStrategy
|
| TransactionConfirmationStrategy
|
||||||
| DurableNonceTransactionConfirmationStrategy
|
|
||||||
| ConfirmOptions
|
| ConfirmOptions
|
||||||
| undefined,
|
| undefined,
|
||||||
maybeConfirmOptions?: ConfirmOptions,
|
maybeConfirmOptions?: ConfirmOptions,
|
||||||
): Promise<TransactionSignature> {
|
): Promise<TransactionSignature> {
|
||||||
let confirmationStrategy:
|
let confirmationStrategy: TransactionConfirmationStrategy | undefined;
|
||||||
| BlockheightBasedTransactionConfirmationStrategy
|
|
||||||
| DurableNonceTransactionConfirmationStrategy
|
|
||||||
| undefined;
|
|
||||||
let options: ConfirmOptions | undefined;
|
let options: ConfirmOptions | undefined;
|
||||||
if (
|
if (
|
||||||
confirmationStrategyOrConfirmOptions &&
|
confirmationStrategyOrConfirmOptions &&
|
||||||
|
|
Loading…
Reference in New Issue