diff --git a/.changeset/update-relayer-client.md b/.changeset/update-relayer-client.md new file mode 100644 index 0000000000..5475bf3aa1 --- /dev/null +++ b/.changeset/update-relayer-client.md @@ -0,0 +1,5 @@ +--- +'@0xsequence/relayer': patch +--- + +Update generated relayer RPC client to the latest relayer schema, adding a `GetMetaTxnStatus` method diff --git a/packages/relayer/src/rpc-relayer/relayer.gen.ts b/packages/relayer/src/rpc-relayer/relayer.gen.ts index 109620ebc4..9b51b9e79a 100644 --- a/packages/relayer/src/rpc-relayer/relayer.gen.ts +++ b/packages/relayer/src/rpc-relayer/relayer.gen.ts @@ -1,18 +1,18 @@ /* eslint-disable */ -// sequence-relayer v0.4.1 b5902e32e652488166fc44a95f5cda0c67e10d82 +// sequence-relayer v0.4.1 3f3835f4f866bc9b4938e84a81ed8081dce1414d // -- // Code generated by Webrpc-gen@v0.32.2 with typescript generator. DO NOT EDIT. // // webrpc-gen -schema=relayer.ridl -target=typescript -client -out=./clients/relayer.gen.ts -compat // Webrpc description and code-gen version -export const WebrpcVersion = "v1" +export const WebrpcVersion = 'v1' // Schema version of your RIDL schema -export const WebrpcSchemaVersion = "v0.4.1" +export const WebrpcSchemaVersion = 'v0.4.1' // Schema hash generated from your RIDL schema -export const WebrpcSchemaHash = "b5902e32e652488166fc44a95f5cda0c67e10d82" +export const WebrpcSchemaHash = '3f3835f4f866bc9b4938e84a81ed8081dce1414d' // // Client interface @@ -30,9 +30,9 @@ export interface RelayerClient { getChainID(headers?: object, signal?: AbortSignal): Promise /** - * + * * Transactions - * + * * TODO (future): rename this to just, 'SendTransaction(txn: MetaTransaction)' or 'SendTransaction(txn: SignedTransaction)', or something.. * Project ID is only used by service and admin calls. Other clients must have projectID passed via the context * TODO: rename return txnHash: string to metaTxnID: string @@ -42,15 +42,16 @@ export interface RelayerClient { getMetaTxnNonce(req: GetMetaTxnNonceArgs, headers?: object, signal?: AbortSignal): Promise /** - * TODO: one day, make GetMetaTxnReceipt respond immediately with receipt or not - * and add WaitTransactionReceipt method, which will block and wait, similar to how GetMetaTxnReceipt - * is implemented now. - * For backwards compat, we can leave the current GetMetaTxnReceipt how it is, an deprecate it, and introduce - * new, GetTransactionReceipt and WaitTransactionReceipt methods - * we can also accept metaTxnId and txnHash .. so can take either or.. I wonder if ERC-4337 has any convention on this? + * GetMetaTxnReceipt blocks (up to ~25s) waiting for the receipt. For a non-blocking variant, use GetMetaTxnStatus. */ getMetaTxnReceipt(req: GetMetaTxnReceiptArgs, headers?: object, signal?: AbortSignal): Promise + /** + * GetMetaTxnStatus returns the current status of a meta-transaction without waiting. + * receipt is set iff status is SUCCEEDED, FAILED or PARTIALLY_FAILED. + */ + getMetaTxnStatus(req: GetMetaTxnStatusArgs, headers?: object, signal?: AbortSignal): Promise + simulate(req: SimulateArgs, headers?: object, signal?: AbortSignal): Promise simulateV3(req: SimulateV3Args, headers?: object, signal?: AbortSignal): Promise @@ -58,7 +59,11 @@ export interface RelayerClient { /** * TODO: deprecated, to be removed by https://github.com/0xsequence/stack/pull/356 at a later date */ - updateMetaTxnGasLimits(req: UpdateMetaTxnGasLimitsArgs, headers?: object, signal?: AbortSignal): Promise + updateMetaTxnGasLimits( + req: UpdateMetaTxnGasLimitsArgs, + headers?: object, + signal?: AbortSignal + ): Promise feeTokens(headers?: object, signal?: AbortSignal): Promise @@ -69,19 +74,31 @@ export interface RelayerClient { * Used for bridge fees (e.g., LayerZero messaging fees) that require msg.value to be fronted at runtime. * bridgeGas will be included in fee calculation so the relayer gets reimbursed. */ - sendMetaTxnWithBridgeGas(req: SendMetaTxnWithBridgeGasArgs, headers?: object, signal?: AbortSignal): Promise - - feeOptionsWithBridgeGas(req: FeeOptionsWithBridgeGasArgs, headers?: object, signal?: AbortSignal): Promise + sendMetaTxnWithBridgeGas( + req: SendMetaTxnWithBridgeGasArgs, + headers?: object, + signal?: AbortSignal + ): Promise + + feeOptionsWithBridgeGas( + req: FeeOptionsWithBridgeGasArgs, + headers?: object, + signal?: AbortSignal + ): Promise /** * TODO: deprecated, to be removed by https://github.com/0xsequence/stack/pull/356 at a later date */ - getMetaTxnNetworkFeeOptions(req: GetMetaTxnNetworkFeeOptionsArgs, headers?: object, signal?: AbortSignal): Promise + getMetaTxnNetworkFeeOptions( + req: GetMetaTxnNetworkFeeOptionsArgs, + headers?: object, + signal?: AbortSignal + ): Promise /** - * + * * Sender administration - * + * */ startSender(req: StartSenderArgs, headers?: object, signal?: AbortSignal): Promise @@ -105,13 +122,25 @@ export interface RelayerClient { /** * Legacy Gas Adjustment */ - nextGasTankBalanceAdjustmentNonce(req: NextGasTankBalanceAdjustmentNonceArgs, headers?: object, signal?: AbortSignal): Promise + nextGasTankBalanceAdjustmentNonce( + req: NextGasTankBalanceAdjustmentNonceArgs, + headers?: object, + signal?: AbortSignal + ): Promise adjustGasTankBalance(req: AdjustGasTankBalanceArgs, headers?: object, signal?: AbortSignal): Promise - getGasTankBalanceAdjustment(req: GetGasTankBalanceAdjustmentArgs, headers?: object, signal?: AbortSignal): Promise + getGasTankBalanceAdjustment( + req: GetGasTankBalanceAdjustmentArgs, + headers?: object, + signal?: AbortSignal + ): Promise - listGasTankBalanceAdjustments(req: ListGasTankBalanceAdjustmentsArgs, headers?: object, signal?: AbortSignal): Promise + listGasTankBalanceAdjustments( + req: ListGasTankBalanceAdjustmentsArgs, + headers?: object, + signal?: AbortSignal + ): Promise /** * Project-Level Gas Sponsorship @@ -129,15 +158,35 @@ export interface RelayerClient { /** * Ecosystem-level Gas Sponsorship */ - listEcosystemGasSponsors(req: ListEcosystemGasSponsorsArgs, headers?: object, signal?: AbortSignal): Promise - - getEcosystemGasSponsor(req: GetEcosystemGasSponsorArgs, headers?: object, signal?: AbortSignal): Promise - - addEcosystemGasSponsor(req: AddEcosystemGasSponsorArgs, headers?: object, signal?: AbortSignal): Promise - - updateEcosystemGasSponsor(req: UpdateEcosystemGasSponsorArgs, headers?: object, signal?: AbortSignal): Promise - - removeEcosystemGasSponsor(req: RemoveEcosystemGasSponsorArgs, headers?: object, signal?: AbortSignal): Promise + listEcosystemGasSponsors( + req: ListEcosystemGasSponsorsArgs, + headers?: object, + signal?: AbortSignal + ): Promise + + getEcosystemGasSponsor( + req: GetEcosystemGasSponsorArgs, + headers?: object, + signal?: AbortSignal + ): Promise + + addEcosystemGasSponsor( + req: AddEcosystemGasSponsorArgs, + headers?: object, + signal?: AbortSignal + ): Promise + + updateEcosystemGasSponsor( + req: UpdateEcosystemGasSponsorArgs, + headers?: object, + signal?: AbortSignal + ): Promise + + removeEcosystemGasSponsor( + req: RemoveEcosystemGasSponsorArgs, + headers?: object, + signal?: AbortSignal + ): Promise /** * Gas Sponsor Lookup @@ -152,7 +201,6 @@ export interface RelayerClient { adjustProjectBalance(req: AdjustProjectBalanceArgs, headers?: object, signal?: AbortSignal): Promise } - // // Schema types // @@ -255,8 +303,7 @@ export interface TransactionStatus { error?: string } -export interface RuntimeChecks { -} +export interface RuntimeChecks {} export interface SequenceContext { factory: string @@ -344,8 +391,8 @@ export interface MetaTxnLog { target: string input: string bridgeGas?: string - txnArgs: {[key: string]: any} - txnReceipt?: {[key: string]: any} + txnArgs: { [key: string]: any } + txnReceipt?: { [key: string]: any } walletAddress: string metaTxnNonce: string gasLimit: number @@ -465,36 +512,31 @@ export interface Sort { order: Order } -export interface PingArgs { -} +export interface PingArgs {} export interface PingReturn { status: boolean } -export interface VersionArgs { -} +export interface VersionArgs {} export interface VersionReturn { version: Version } -export interface RuntimeStatusArgs { -} +export interface RuntimeStatusArgs {} export interface RuntimeStatusReturn { status: RuntimeStatus } -export interface GetSequenceContextArgs { -} +export interface GetSequenceContextArgs {} export interface GetSequenceContextReturn { data: SequenceContext } -export interface GetChainIDArgs { -} +export interface GetChainIDArgs {} export interface GetChainIDReturn { chainID: number @@ -530,6 +572,16 @@ export interface GetMetaTxnReceiptReturn { metaTxnEnqueued: boolean } +export interface GetMetaTxnStatusArgs { + metaTxID: string +} + +export interface GetMetaTxnStatusReturn { + status: ETHTxnStatus + metaTxnEnqueued: boolean + receipt?: MetaTxnReceipt +} + export interface SimulateArgs { wallet: string transactions: string @@ -558,8 +610,7 @@ export interface UpdateMetaTxnGasLimitsReturn { payload: string } -export interface FeeTokensArgs { -} +export interface FeeTokensArgs {} export interface FeeTokensReturn { isFeeRequired: boolean @@ -622,15 +673,13 @@ export interface StartSenderArgs { sender: number } -export interface StartSenderReturn { -} +export interface StartSenderReturn {} export interface StopSenderArgs { sender: number } -export interface StopSenderReturn { -} +export interface StopSenderReturn {} export interface RepairSenderArgs { sender: number @@ -638,8 +687,7 @@ export interface RepairSenderArgs { operation: RepairOperation } -export interface RepairSenderReturn { -} +export interface RepairSenderReturn {} export interface GetMetaTransactionsArgs { projectId: number @@ -871,8 +919,6 @@ export interface AdjustProjectBalanceReturn { balance: number } - - // // Client // @@ -890,7 +936,7 @@ export class Relayer implements RelayerClient { private url(name: string): string { return this.hostname + this.path + name } - + queryKey = { ping: () => ['Relayer', 'ping'] as const, version: () => ['Relayer', 'version'] as const, @@ -900,6 +946,7 @@ export class Relayer implements RelayerClient { sendMetaTxn: (req: SendMetaTxnArgs) => ['Relayer', 'sendMetaTxn', req] as const, getMetaTxnNonce: (req: GetMetaTxnNonceArgs) => ['Relayer', 'getMetaTxnNonce', req] as const, getMetaTxnReceipt: (req: GetMetaTxnReceiptArgs) => ['Relayer', 'getMetaTxnReceipt', req] as const, + getMetaTxnStatus: (req: GetMetaTxnStatusArgs) => ['Relayer', 'getMetaTxnStatus', req] as const, simulate: (req: SimulateArgs) => ['Relayer', 'simulate', req] as const, simulateV3: (req: SimulateV3Args) => ['Relayer', 'simulateV3', req] as const, updateMetaTxnGasLimits: (req: UpdateMetaTxnGasLimitsArgs) => ['Relayer', 'updateMetaTxnGasLimits', req] as const, @@ -907,7 +954,8 @@ export class Relayer implements RelayerClient { feeOptions: (req: FeeOptionsArgs) => ['Relayer', 'feeOptions', req] as const, sendMetaTxnWithBridgeGas: (req: SendMetaTxnWithBridgeGasArgs) => ['Relayer', 'sendMetaTxnWithBridgeGas', req] as const, feeOptionsWithBridgeGas: (req: FeeOptionsWithBridgeGasArgs) => ['Relayer', 'feeOptionsWithBridgeGas', req] as const, - getMetaTxnNetworkFeeOptions: (req: GetMetaTxnNetworkFeeOptionsArgs) => ['Relayer', 'getMetaTxnNetworkFeeOptions', req] as const, + getMetaTxnNetworkFeeOptions: (req: GetMetaTxnNetworkFeeOptionsArgs) => + ['Relayer', 'getMetaTxnNetworkFeeOptions', req] as const, startSender: (req: StartSenderArgs) => ['Relayer', 'startSender', req] as const, stopSender: (req: StopSenderArgs) => ['Relayer', 'stopSender', req] as const, repairSender: (req: RepairSenderArgs) => ['Relayer', 'repairSender', req] as const, @@ -916,10 +964,13 @@ export class Relayer implements RelayerClient { getGasTank: (req: GetGasTankArgs) => ['Relayer', 'getGasTank', req] as const, addGasTank: (req: AddGasTankArgs) => ['Relayer', 'addGasTank', req] as const, updateGasTank: (req: UpdateGasTankArgs) => ['Relayer', 'updateGasTank', req] as const, - nextGasTankBalanceAdjustmentNonce: (req: NextGasTankBalanceAdjustmentNonceArgs) => ['Relayer', 'nextGasTankBalanceAdjustmentNonce', req] as const, + nextGasTankBalanceAdjustmentNonce: (req: NextGasTankBalanceAdjustmentNonceArgs) => + ['Relayer', 'nextGasTankBalanceAdjustmentNonce', req] as const, adjustGasTankBalance: (req: AdjustGasTankBalanceArgs) => ['Relayer', 'adjustGasTankBalance', req] as const, - getGasTankBalanceAdjustment: (req: GetGasTankBalanceAdjustmentArgs) => ['Relayer', 'getGasTankBalanceAdjustment', req] as const, - listGasTankBalanceAdjustments: (req: ListGasTankBalanceAdjustmentsArgs) => ['Relayer', 'listGasTankBalanceAdjustments', req] as const, + getGasTankBalanceAdjustment: (req: GetGasTankBalanceAdjustmentArgs) => + ['Relayer', 'getGasTankBalanceAdjustment', req] as const, + listGasTankBalanceAdjustments: (req: ListGasTankBalanceAdjustmentsArgs) => + ['Relayer', 'listGasTankBalanceAdjustments', req] as const, listGasSponsors: (req: ListGasSponsorsArgs) => ['Relayer', 'listGasSponsors', req] as const, getGasSponsor: (req: GetGasSponsorArgs) => ['Relayer', 'getGasSponsor', req] as const, addGasSponsor: (req: AddGasSponsorArgs) => ['Relayer', 'addGasSponsor', req] as const, @@ -932,505 +983,630 @@ export class Relayer implements RelayerClient { removeEcosystemGasSponsor: (req: RemoveEcosystemGasSponsorArgs) => ['Relayer', 'removeEcosystemGasSponsor', req] as const, addressGasSponsors: (req: AddressGasSponsorsArgs) => ['Relayer', 'addressGasSponsors', req] as const, getProjectBalance: (req: GetProjectBalanceArgs) => ['Relayer', 'getProjectBalance', req] as const, - adjustProjectBalance: (req: AdjustProjectBalanceArgs) => ['Relayer', 'adjustProjectBalance', req] as const, + adjustProjectBalance: (req: AdjustProjectBalanceArgs) => ['Relayer', 'adjustProjectBalance', req] as const } ping = (headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('Ping'), - createHttpRequest('{}', headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'PingReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) + return this.fetch(this.url('Ping'), createHttpRequest('{}', headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'PingReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) } version = (headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('Version'), - createHttpRequest('{}', headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'VersionReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) + return this.fetch(this.url('Version'), createHttpRequest('{}', headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'VersionReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) } runtimeStatus = (headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('RuntimeStatus'), - createHttpRequest('{}', headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'RuntimeStatusReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) + return this.fetch(this.url('RuntimeStatus'), createHttpRequest('{}', headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'RuntimeStatusReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) } getSequenceContext = (headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('GetSequenceContext'), - createHttpRequest('{}', headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'GetSequenceContextReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) + return this.fetch(this.url('GetSequenceContext'), createHttpRequest('{}', headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'GetSequenceContextReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) } getChainID = (headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('GetChainID'), - createHttpRequest('{}', headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'GetChainIDReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) + return this.fetch(this.url('GetChainID'), createHttpRequest('{}', headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'GetChainIDReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) } sendMetaTxn = (req: SendMetaTxnArgs, headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('SendMetaTxn'), - createHttpRequest(JsonEncode(req), headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'SendMetaTxnReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) + return this.fetch(this.url('SendMetaTxn'), createHttpRequest(JsonEncode(req), headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'SendMetaTxnReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) } getMetaTxnNonce = (req: GetMetaTxnNonceArgs, headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('GetMetaTxnNonce'), - createHttpRequest(JsonEncode(req), headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'GetMetaTxnNonceReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) + return this.fetch(this.url('GetMetaTxnNonce'), createHttpRequest(JsonEncode(req), headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'GetMetaTxnNonceReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) } getMetaTxnReceipt = (req: GetMetaTxnReceiptArgs, headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('GetMetaTxnReceipt'), - createHttpRequest(JsonEncode(req), headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'GetMetaTxnReceiptReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) + return this.fetch(this.url('GetMetaTxnReceipt'), createHttpRequest(JsonEncode(req), headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'GetMetaTxnReceiptReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) + } + + getMetaTxnStatus = (req: GetMetaTxnStatusArgs, headers?: object, signal?: AbortSignal): Promise => { + return this.fetch(this.url('GetMetaTxnStatus'), createHttpRequest(JsonEncode(req), headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'GetMetaTxnStatusReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) } simulate = (req: SimulateArgs, headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('Simulate'), - createHttpRequest(JsonEncode(req), headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'SimulateReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) + return this.fetch(this.url('Simulate'), createHttpRequest(JsonEncode(req), headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'SimulateReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) } simulateV3 = (req: SimulateV3Args, headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('SimulateV3'), - createHttpRequest(JsonEncode(req), headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'SimulateV3Return') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) - } - - updateMetaTxnGasLimits = (req: UpdateMetaTxnGasLimitsArgs, headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('UpdateMetaTxnGasLimits'), - createHttpRequest(JsonEncode(req), headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'UpdateMetaTxnGasLimitsReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) + return this.fetch(this.url('SimulateV3'), createHttpRequest(JsonEncode(req), headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'SimulateV3Return') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) + } + + updateMetaTxnGasLimits = ( + req: UpdateMetaTxnGasLimitsArgs, + headers?: object, + signal?: AbortSignal + ): Promise => { + return this.fetch(this.url('UpdateMetaTxnGasLimits'), createHttpRequest(JsonEncode(req), headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'UpdateMetaTxnGasLimitsReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) } feeTokens = (headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('FeeTokens'), - createHttpRequest('{}', headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'FeeTokensReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) + return this.fetch(this.url('FeeTokens'), createHttpRequest('{}', headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'FeeTokensReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) } feeOptions = (req: FeeOptionsArgs, headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('FeeOptions'), - createHttpRequest(JsonEncode(req), headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'FeeOptionsReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) - } - - sendMetaTxnWithBridgeGas = (req: SendMetaTxnWithBridgeGasArgs, headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('SendMetaTxnWithBridgeGas'), - createHttpRequest(JsonEncode(req), headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'SendMetaTxnWithBridgeGasReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) - } - - feeOptionsWithBridgeGas = (req: FeeOptionsWithBridgeGasArgs, headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('FeeOptionsWithBridgeGas'), - createHttpRequest(JsonEncode(req), headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'FeeOptionsWithBridgeGasReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) - } - - getMetaTxnNetworkFeeOptions = (req: GetMetaTxnNetworkFeeOptionsArgs, headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('GetMetaTxnNetworkFeeOptions'), - createHttpRequest(JsonEncode(req), headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'GetMetaTxnNetworkFeeOptionsReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) + return this.fetch(this.url('FeeOptions'), createHttpRequest(JsonEncode(req), headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'FeeOptionsReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) + } + + sendMetaTxnWithBridgeGas = ( + req: SendMetaTxnWithBridgeGasArgs, + headers?: object, + signal?: AbortSignal + ): Promise => { + return this.fetch(this.url('SendMetaTxnWithBridgeGas'), createHttpRequest(JsonEncode(req), headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'SendMetaTxnWithBridgeGasReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) + } + + feeOptionsWithBridgeGas = ( + req: FeeOptionsWithBridgeGasArgs, + headers?: object, + signal?: AbortSignal + ): Promise => { + return this.fetch(this.url('FeeOptionsWithBridgeGas'), createHttpRequest(JsonEncode(req), headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'FeeOptionsWithBridgeGasReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) + } + + getMetaTxnNetworkFeeOptions = ( + req: GetMetaTxnNetworkFeeOptionsArgs, + headers?: object, + signal?: AbortSignal + ): Promise => { + return this.fetch(this.url('GetMetaTxnNetworkFeeOptions'), createHttpRequest(JsonEncode(req), headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'GetMetaTxnNetworkFeeOptionsReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) } startSender = (req: StartSenderArgs, headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('StartSender'), - createHttpRequest(JsonEncode(req), headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'StartSenderReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) + return this.fetch(this.url('StartSender'), createHttpRequest(JsonEncode(req), headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'StartSenderReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) } stopSender = (req: StopSenderArgs, headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('StopSender'), - createHttpRequest(JsonEncode(req), headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'StopSenderReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) + return this.fetch(this.url('StopSender'), createHttpRequest(JsonEncode(req), headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'StopSenderReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) } repairSender = (req: RepairSenderArgs, headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('RepairSender'), - createHttpRequest(JsonEncode(req), headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'RepairSenderReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) - } - - getMetaTransactions = (req: GetMetaTransactionsArgs, headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('GetMetaTransactions'), - createHttpRequest(JsonEncode(req), headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'GetMetaTransactionsReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) - } - - getTransactionCost = (req: GetTransactionCostArgs, headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('GetTransactionCost'), - createHttpRequest(JsonEncode(req), headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'GetTransactionCostReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) + return this.fetch(this.url('RepairSender'), createHttpRequest(JsonEncode(req), headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'RepairSenderReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) + } + + getMetaTransactions = ( + req: GetMetaTransactionsArgs, + headers?: object, + signal?: AbortSignal + ): Promise => { + return this.fetch(this.url('GetMetaTransactions'), createHttpRequest(JsonEncode(req), headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'GetMetaTransactionsReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) + } + + getTransactionCost = ( + req: GetTransactionCostArgs, + headers?: object, + signal?: AbortSignal + ): Promise => { + return this.fetch(this.url('GetTransactionCost'), createHttpRequest(JsonEncode(req), headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'GetTransactionCostReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) } getGasTank = (req: GetGasTankArgs, headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('GetGasTank'), - createHttpRequest(JsonEncode(req), headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'GetGasTankReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) + return this.fetch(this.url('GetGasTank'), createHttpRequest(JsonEncode(req), headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'GetGasTankReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) } addGasTank = (req: AddGasTankArgs, headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('AddGasTank'), - createHttpRequest(JsonEncode(req), headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'AddGasTankReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) + return this.fetch(this.url('AddGasTank'), createHttpRequest(JsonEncode(req), headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'AddGasTankReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) } updateGasTank = (req: UpdateGasTankArgs, headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('UpdateGasTank'), - createHttpRequest(JsonEncode(req), headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'UpdateGasTankReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) - } - - nextGasTankBalanceAdjustmentNonce = (req: NextGasTankBalanceAdjustmentNonceArgs, headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('NextGasTankBalanceAdjustmentNonce'), - createHttpRequest(JsonEncode(req), headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'NextGasTankBalanceAdjustmentNonceReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) - } - - adjustGasTankBalance = (req: AdjustGasTankBalanceArgs, headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('AdjustGasTankBalance'), - createHttpRequest(JsonEncode(req), headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'AdjustGasTankBalanceReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) - } - - getGasTankBalanceAdjustment = (req: GetGasTankBalanceAdjustmentArgs, headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('GetGasTankBalanceAdjustment'), - createHttpRequest(JsonEncode(req), headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'GetGasTankBalanceAdjustmentReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) - } - - listGasTankBalanceAdjustments = (req: ListGasTankBalanceAdjustmentsArgs, headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('ListGasTankBalanceAdjustments'), - createHttpRequest(JsonEncode(req), headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'ListGasTankBalanceAdjustmentsReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) + return this.fetch(this.url('UpdateGasTank'), createHttpRequest(JsonEncode(req), headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'UpdateGasTankReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) + } + + nextGasTankBalanceAdjustmentNonce = ( + req: NextGasTankBalanceAdjustmentNonceArgs, + headers?: object, + signal?: AbortSignal + ): Promise => { + return this.fetch(this.url('NextGasTankBalanceAdjustmentNonce'), createHttpRequest(JsonEncode(req), headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'NextGasTankBalanceAdjustmentNonceReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) + } + + adjustGasTankBalance = ( + req: AdjustGasTankBalanceArgs, + headers?: object, + signal?: AbortSignal + ): Promise => { + return this.fetch(this.url('AdjustGasTankBalance'), createHttpRequest(JsonEncode(req), headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'AdjustGasTankBalanceReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) + } + + getGasTankBalanceAdjustment = ( + req: GetGasTankBalanceAdjustmentArgs, + headers?: object, + signal?: AbortSignal + ): Promise => { + return this.fetch(this.url('GetGasTankBalanceAdjustment'), createHttpRequest(JsonEncode(req), headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'GetGasTankBalanceAdjustmentReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) + } + + listGasTankBalanceAdjustments = ( + req: ListGasTankBalanceAdjustmentsArgs, + headers?: object, + signal?: AbortSignal + ): Promise => { + return this.fetch(this.url('ListGasTankBalanceAdjustments'), createHttpRequest(JsonEncode(req), headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'ListGasTankBalanceAdjustmentsReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) } listGasSponsors = (req: ListGasSponsorsArgs, headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('ListGasSponsors'), - createHttpRequest(JsonEncode(req), headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'ListGasSponsorsReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) + return this.fetch(this.url('ListGasSponsors'), createHttpRequest(JsonEncode(req), headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'ListGasSponsorsReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) } getGasSponsor = (req: GetGasSponsorArgs, headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('GetGasSponsor'), - createHttpRequest(JsonEncode(req), headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'GetGasSponsorReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) + return this.fetch(this.url('GetGasSponsor'), createHttpRequest(JsonEncode(req), headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'GetGasSponsorReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) } addGasSponsor = (req: AddGasSponsorArgs, headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('AddGasSponsor'), - createHttpRequest(JsonEncode(req), headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'AddGasSponsorReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) + return this.fetch(this.url('AddGasSponsor'), createHttpRequest(JsonEncode(req), headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'AddGasSponsorReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) } updateGasSponsor = (req: UpdateGasSponsorArgs, headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('UpdateGasSponsor'), - createHttpRequest(JsonEncode(req), headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'UpdateGasSponsorReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) + return this.fetch(this.url('UpdateGasSponsor'), createHttpRequest(JsonEncode(req), headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'UpdateGasSponsorReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) } removeGasSponsor = (req: RemoveGasSponsorArgs, headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('RemoveGasSponsor'), - createHttpRequest(JsonEncode(req), headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'RemoveGasSponsorReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) - } - - listEcosystemGasSponsors = (req: ListEcosystemGasSponsorsArgs, headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('ListEcosystemGasSponsors'), - createHttpRequest(JsonEncode(req), headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'ListEcosystemGasSponsorsReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) - } - - getEcosystemGasSponsor = (req: GetEcosystemGasSponsorArgs, headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('GetEcosystemGasSponsor'), - createHttpRequest(JsonEncode(req), headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'GetEcosystemGasSponsorReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) - } - - addEcosystemGasSponsor = (req: AddEcosystemGasSponsorArgs, headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('AddEcosystemGasSponsor'), - createHttpRequest(JsonEncode(req), headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'AddEcosystemGasSponsorReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) - } - - updateEcosystemGasSponsor = (req: UpdateEcosystemGasSponsorArgs, headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('UpdateEcosystemGasSponsor'), - createHttpRequest(JsonEncode(req), headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'UpdateEcosystemGasSponsorReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) - } - - removeEcosystemGasSponsor = (req: RemoveEcosystemGasSponsorArgs, headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('RemoveEcosystemGasSponsor'), - createHttpRequest(JsonEncode(req), headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'RemoveEcosystemGasSponsorReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) - } - - addressGasSponsors = (req: AddressGasSponsorsArgs, headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('AddressGasSponsors'), - createHttpRequest(JsonEncode(req), headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'AddressGasSponsorsReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) + return this.fetch(this.url('RemoveGasSponsor'), createHttpRequest(JsonEncode(req), headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'RemoveGasSponsorReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) + } + + listEcosystemGasSponsors = ( + req: ListEcosystemGasSponsorsArgs, + headers?: object, + signal?: AbortSignal + ): Promise => { + return this.fetch(this.url('ListEcosystemGasSponsors'), createHttpRequest(JsonEncode(req), headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'ListEcosystemGasSponsorsReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) + } + + getEcosystemGasSponsor = ( + req: GetEcosystemGasSponsorArgs, + headers?: object, + signal?: AbortSignal + ): Promise => { + return this.fetch(this.url('GetEcosystemGasSponsor'), createHttpRequest(JsonEncode(req), headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'GetEcosystemGasSponsorReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) + } + + addEcosystemGasSponsor = ( + req: AddEcosystemGasSponsorArgs, + headers?: object, + signal?: AbortSignal + ): Promise => { + return this.fetch(this.url('AddEcosystemGasSponsor'), createHttpRequest(JsonEncode(req), headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'AddEcosystemGasSponsorReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) + } + + updateEcosystemGasSponsor = ( + req: UpdateEcosystemGasSponsorArgs, + headers?: object, + signal?: AbortSignal + ): Promise => { + return this.fetch(this.url('UpdateEcosystemGasSponsor'), createHttpRequest(JsonEncode(req), headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'UpdateEcosystemGasSponsorReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) + } + + removeEcosystemGasSponsor = ( + req: RemoveEcosystemGasSponsorArgs, + headers?: object, + signal?: AbortSignal + ): Promise => { + return this.fetch(this.url('RemoveEcosystemGasSponsor'), createHttpRequest(JsonEncode(req), headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'RemoveEcosystemGasSponsorReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) + } + + addressGasSponsors = ( + req: AddressGasSponsorsArgs, + headers?: object, + signal?: AbortSignal + ): Promise => { + return this.fetch(this.url('AddressGasSponsors'), createHttpRequest(JsonEncode(req), headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'AddressGasSponsorsReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) } getProjectBalance = (req: GetProjectBalanceArgs, headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('GetProjectBalance'), - createHttpRequest(JsonEncode(req), headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'GetProjectBalanceReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) - } - - adjustProjectBalance = (req: AdjustProjectBalanceArgs, headers?: object, signal?: AbortSignal): Promise => { - return this.fetch( - this.url('AdjustProjectBalance'), - createHttpRequest(JsonEncode(req), headers, signal)).then((res) => { - return buildResponse(res).then(_data => { - return JsonDecode(_data, 'AdjustProjectBalanceReturn') - }) - }, (error) => { - throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) - }) + return this.fetch(this.url('GetProjectBalance'), createHttpRequest(JsonEncode(req), headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'GetProjectBalanceReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) + } + + adjustProjectBalance = ( + req: AdjustProjectBalanceArgs, + headers?: object, + signal?: AbortSignal + ): Promise => { + return this.fetch(this.url('AdjustProjectBalance'), createHttpRequest(JsonEncode(req), headers, signal)).then( + res => { + return buildResponse(res).then(_data => { + return JsonDecode(_data, 'AdjustProjectBalanceReturn') + }) + }, + error => { + throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` }) + } + ) } - } const createHttpRequest = (body: string = '{}', headers: object = {}, signal: AbortSignal | null = null): object => { - const reqHeaders: { [key: string]: string } = { ...headers, 'Content-Type': 'application/json', [WebrpcHeader]: WebrpcHeaderValue } + const reqHeaders: { [key: string]: string } = { + ...headers, + 'Content-Type': 'application/json', + [WebrpcHeader]: WebrpcHeaderValue + } return { method: 'POST', headers: reqHeaders, body, signal } } @@ -1439,14 +1615,14 @@ const buildResponse = (res: Response): Promise => { let data try { data = JSON.parse(text) - } catch(error) { + } catch (error) { throw WebrpcBadResponseError.new({ status: res.status, - cause: `JSON.parse(): ${error instanceof Error ? error.message : String(error)}: response text: ${text}`}, - ) + cause: `JSON.parse(): ${error instanceof Error ? error.message : String(error)}: response text: ${text}` + }) } if (!res.ok) { - const code: number = (typeof data.code === 'number') ? data.code : 0 + const code: number = typeof data.code === 'number' ? data.code : 0 throw (webrpcErrorByCode[code] || WebrpcError).new(data) } return data @@ -1455,10 +1631,6 @@ const buildResponse = (res: Response): Promise => { export type Fetch = (input: RequestInfo, init?: RequestInit) => Promise - - - - // // BigInt helpers // @@ -1505,7 +1677,11 @@ function decodeType(typ: string, obj: any): any { for (let i = 0; i < arr.length; i++) { const v = arr[i] if (typeof v === 'string') { - try { arr[i] = BigInt(v) } catch (e) { throw WebrpcBadResponseError.new({ cause: `Invalid bigint value for ${base}[${i}]: ${v}` }) } + try { + arr[i] = BigInt(v) + } catch (e) { + throw WebrpcBadResponseError.new({ cause: `Invalid bigint value for ${base}[${i}]: ${v}` }) + } } } } @@ -1513,7 +1689,11 @@ function decodeType(typ: string, obj: any): any { } const v = obj[d] if (typeof v === 'string') { - try { obj[d] = BigInt(v) } catch (e) { throw WebrpcBadResponseError.new({ cause: `Invalid bigint value for ${d}: ${v}` }) } + try { + obj[d] = BigInt(v) + } catch (e) { + throw WebrpcBadResponseError.new({ cause: `Invalid bigint value for ${d}: ${v}` }) + } } } return obj @@ -1521,28 +1701,27 @@ function decodeType(typ: string, obj: any): any { // Encode object to JSON with BigInts converted to decimal strings. export const JsonEncode = (obj: T): string => { - return JSON.stringify(obj, (key, value) => - typeof value === 'bigint' ? value.toString() : value - ) + return JSON.stringify(obj, (key, value) => (typeof value === 'bigint' ? value.toString() : value)) } // Decode data (JSON string or already-parsed object) and convert declared BigInt string fields back to BigInt. export const JsonDecode = (data: string | any, typ: string = ''): T => { let parsed: any = data if (typeof data === 'string') { - try { parsed = JSON.parse(data) } catch (err) { + try { + parsed = JSON.parse(data) + } catch (err) { throw WebrpcBadResponseError.new({ cause: `JsonDecode: JSON.parse failed: ${(err as Error).message}` }) } } return decodeType(typ, parsed) as T } - // // Errors // -type WebrpcErrorParams = { name?: string, code?: number, message?: string, status?: number, cause?: string } +type WebrpcErrorParams = { name?: string; code?: number; message?: string; status?: number; cause?: string } export class WebrpcError extends Error { code: number @@ -1563,7 +1742,6 @@ export class WebrpcError extends Error { } } - export class WebrpcEndpointError extends WebrpcError { constructor(error: WebrpcErrorParams = {}) { super(error) @@ -1696,7 +1874,6 @@ export class WebrpcStreamFinishedError extends WebrpcError { } } - // // Schema errors // @@ -2037,7 +2214,6 @@ export class SimulationFailedError extends WebrpcError { } } - export enum errors { WebrpcEndpoint = 'WebrpcEndpoint', WebrpcRequestFailed = 'WebrpcRequestFailed', @@ -2077,7 +2253,7 @@ export enum errors { NotFound = 'NotFound', InsufficientFee = 'InsufficientFee', NotEnoughBalance = 'NotEnoughBalance', - SimulationFailed = 'SimulationFailed', + SimulationFailed = 'SimulationFailed' } export enum WebrpcErrorCodes { @@ -2119,7 +2295,7 @@ export enum WebrpcErrorCodes { NotFound = 3000, InsufficientFee = 3004, NotEnoughBalance = 3005, - SimulationFailed = 3006, + SimulationFailed = 3006 } export const webrpcErrorByCode: { [code: number]: any } = { @@ -2161,64 +2337,61 @@ export const webrpcErrorByCode: { [code: number]: any } = { [3000]: NotFoundError, [3004]: InsufficientFeeError, [3005]: NotEnoughBalanceError, - [3006]: SimulationFailedError, + [3006]: SimulationFailedError } - - // // Webrpc // -export const WebrpcHeader = "Webrpc" +export const WebrpcHeader = 'Webrpc' -export const WebrpcHeaderValue = "webrpc@v0.32.2;gen-typescript@v0.23.1;sequence-relayer@v0.4.1" +export const WebrpcHeaderValue = 'webrpc@v0.32.2;gen-typescript@v0.23.1;sequence-relayer@v0.4.1' type WebrpcGenVersions = { - WebrpcGenVersion: string; - codeGenName: string; - codeGenVersion: string; - schemaName: string; - schemaVersion: string; -}; + WebrpcGenVersion: string + codeGenName: string + codeGenVersion: string + schemaName: string + schemaVersion: string +} export function VersionFromHeader(headers: Headers): WebrpcGenVersions { const headerValue = headers.get(WebrpcHeader) if (!headerValue) { return { - WebrpcGenVersion: "", - codeGenName: "", - codeGenVersion: "", - schemaName: "", - schemaVersion: "", - }; + WebrpcGenVersion: '', + codeGenName: '', + codeGenVersion: '', + schemaName: '', + schemaVersion: '' + } } return parseWebrpcGenVersions(headerValue) } function parseWebrpcGenVersions(header: string): WebrpcGenVersions { - const versions = header.split(";") + const versions = header.split(';') if (versions.length < 3) { return { - WebrpcGenVersion: "", - codeGenName: "", - codeGenVersion: "", - schemaName: "", - schemaVersion: "", - }; + WebrpcGenVersion: '', + codeGenName: '', + codeGenVersion: '', + schemaName: '', + schemaVersion: '' + } } - const [_, WebrpcGenVersion] = versions[0]!.split("@") - const [codeGenName, codeGenVersion] = versions[1]!.split("@") - const [schemaName, schemaVersion] = versions[2]!.split("@") + const [_, WebrpcGenVersion] = versions[0]!.split('@') + const [codeGenName, codeGenVersion] = versions[1]!.split('@') + const [schemaName, schemaVersion] = versions[2]!.split('@') return { - WebrpcGenVersion: WebrpcGenVersion ?? "", - codeGenName: codeGenName ?? "", - codeGenVersion: codeGenVersion ?? "", - schemaName: schemaName ?? "", - schemaVersion: schemaVersion ?? "", - }; + WebrpcGenVersion: WebrpcGenVersion ?? '', + codeGenName: codeGenName ?? '', + codeGenVersion: codeGenVersion ?? '', + schemaName: schemaName ?? '', + schemaVersion: schemaVersion ?? '' + } } -