From cc5fb78cf84f79f643a485ccd2b9b873689d7c9b Mon Sep 17 00:00:00 2001 From: danielailie Date: Wed, 26 Feb 2025 13:35:00 +0200 Subject: [PATCH 1/2] Remove relayed v1 and v2 --- src/entrypoints/entrypoints.spec.ts | 41 --- src/entrypoints/entrypoints.ts | 10 - src/relayed/index.ts | 2 - src/relayed/relayedController.ts | 48 ---- .../relayedTransactionsFactory.spec.ts | 260 ------------------ src/relayed/relayedTransactionsFactory.ts | 116 -------- src/relayed/resources.ts | 7 - 7 files changed, 484 deletions(-) delete mode 100644 src/relayed/index.ts delete mode 100644 src/relayed/relayedController.ts delete mode 100644 src/relayed/relayedTransactionsFactory.spec.ts delete mode 100644 src/relayed/relayedTransactionsFactory.ts delete mode 100644 src/relayed/resources.ts diff --git a/src/entrypoints/entrypoints.spec.ts b/src/entrypoints/entrypoints.spec.ts index 742bb3cd8..cd37de76f 100644 --- a/src/entrypoints/entrypoints.spec.ts +++ b/src/entrypoints/entrypoints.spec.ts @@ -103,47 +103,6 @@ describe("TestEntrypoint", function () { assert.equal(queryResult[0], 7); }); - it("create relayed transaction", async function () { - const transferController = entrypoint.createTransfersController(); - const filePath = path.join("src", "testdata", "testwallets", "alice.pem"); - const sender = await Account.newFromPem(filePath); - sender.nonce = 77777n; - - const bobPath = path.join("src", "testdata", "testwallets", "alice.pem"); - const relayer = await Account.newFromPem(bobPath); - relayer.nonce = 7n; - - const transaction = await transferController.createTransactionForTransfer( - sender, - BigInt(sender.getNonceThenIncrement().valueOf()), - { - receiver: sender.address, - data: Buffer.from("hello"), - }, - ); - const innerTransactionGasLimit = transaction.gasLimit; - transaction.gasLimit = BigInt(0); - transaction.signature = await sender.signTransaction(transaction); - - const relayedController = entrypoint.createRelayedController(); - const relayedTransaction = await relayedController.createRelayedV2Transaction( - relayer, - BigInt(relayer.getNonceThenIncrement().valueOf()), - { - innerTransaction: transaction, - innerTransactionGasLimit, - }, - ); - assert.equal(relayedTransaction.chainID, "D"); - assert.deepEqual( - Buffer.from(relayedTransaction.data), - Buffer.from( - "relayedTxV2@0139472eff6886771a982f3083da5d421f24c29181e63888228dc81ca60d69e1@012fd1@68656c6c6f@c1eed3ac766d6b94aa53a1348d38eac8db60be0a1b2d0873247b61b8b25bbcb45bf9c1518227bcadd5044d4c027bdb935e0164243b2b2df9a5b250a10aca260e", - ), - ); - assert.equal(relayedTransaction.gasLimit, 442000n); - }); - it("create account", async () => { const account = await entrypoint.createAccount(); assert.isNotNull(account); diff --git a/src/entrypoints/entrypoints.ts b/src/entrypoints/entrypoints.ts index d15f3302e..73f1b95d6 100644 --- a/src/entrypoints/entrypoints.ts +++ b/src/entrypoints/entrypoints.ts @@ -12,8 +12,6 @@ import { TransactionWatcher } from "../core/transactionWatcher"; import { DelegationController, DelegationTransactionsFactory } from "../delegation"; import { ApiNetworkProvider, ProxyNetworkProvider } from "../networkProviders"; import { INetworkProvider } from "../networkProviders/interface"; -import { RelayedTransactionsFactory } from "../relayed"; -import { RelayedController } from "../relayed/relayedController"; import { SmartContractTransactionsFactory } from "../smartContracts"; import { SmartContractController } from "../smartContracts/smartContractController"; import { TokenManagementController, TokenManagementTransactionsFactory } from "../tokenManagement"; @@ -108,14 +106,6 @@ class NetworkEntrypoint { return new AccountTransactionsFactory({ config: new TransactionsFactoryConfig({ chainID: this.chainId }) }); } - createRelayedController(): RelayedController { - return new RelayedController({ chainID: this.chainId }); - } - - createRelayedTransactionsFactory(): RelayedTransactionsFactory { - return new RelayedTransactionsFactory({ config: new TransactionsFactoryConfig({ chainID: this.chainId }) }); - } - createSmartContractController(abi?: AbiRegistry): SmartContractController { return new SmartContractController({ chainID: this.chainId, networkProvider: this.networkProvider, abi }); } diff --git a/src/relayed/index.ts b/src/relayed/index.ts deleted file mode 100644 index fbf0c51f0..000000000 --- a/src/relayed/index.ts +++ /dev/null @@ -1,2 +0,0 @@ -export * from "./relayedController"; -export * from "./relayedTransactionsFactory"; diff --git a/src/relayed/relayedController.ts b/src/relayed/relayedController.ts deleted file mode 100644 index 43c9979d3..000000000 --- a/src/relayed/relayedController.ts +++ /dev/null @@ -1,48 +0,0 @@ -import { IAccount } from "../accounts/interfaces"; -import { Transaction } from "../core/transaction"; -import { TransactionComputer } from "../core/transactionComputer"; -import { TransactionsFactoryConfig } from "../core/transactionsFactoryConfig"; -import { RelayedTransactionsFactory } from "./relayedTransactionsFactory"; -import { RelayedV1TransactionInput, RelayedV2TransactionInput } from "./resources"; - -export class RelayedController { - private factory: RelayedTransactionsFactory; - private txComputer: TransactionComputer; - - /** - * The transactions are created from the perspective of the relayer. - * The 'sender' represents the relayer. - */ - constructor(options: { chainID: string }) { - this.factory = new RelayedTransactionsFactory({ - config: new TransactionsFactoryConfig(options), - }); - this.txComputer = new TransactionComputer(); - } - - async createRelayedV1Transaction( - sender: IAccount, - nonce: bigint, - options: RelayedV1TransactionInput, - ): Promise { - const transaction = this.factory.createRelayedV1Transaction(sender.address, options); - - transaction.nonce = nonce; - transaction.signature = await sender.sign(this.txComputer.computeBytesForSigning(transaction)); - - return transaction; - } - - async createRelayedV2Transaction( - sender: IAccount, - nonce: bigint, - options: RelayedV2TransactionInput, - ): Promise { - const transaction = this.factory.createRelayedV2Transaction(sender.address, options); - - transaction.nonce = nonce; - transaction.signature = await sender.sign(this.txComputer.computeBytesForSigning(transaction)); - - return transaction; - } -} diff --git a/src/relayed/relayedTransactionsFactory.spec.ts b/src/relayed/relayedTransactionsFactory.spec.ts deleted file mode 100644 index 9757de44b..000000000 --- a/src/relayed/relayedTransactionsFactory.spec.ts +++ /dev/null @@ -1,260 +0,0 @@ -import { assert } from "chai"; -import { Account } from "../accounts"; -import { Address, Transaction, TransactionsFactoryConfig } from "../core"; -import { getTestWalletsPath } from "../testutils"; -import { RelayedTransactionsFactory } from "./relayedTransactionsFactory"; - -describe("test relayed transactions factory", function () { - const config = new TransactionsFactoryConfig({ chainID: "T" }); - const factory = new RelayedTransactionsFactory({ config: config }); - let alice: Account, bob: Account, carol: Account, grace: Account, frank: Account; - - before(async function () { - alice = await Account.newFromPem(`${getTestWalletsPath()}/alice.pem`); - bob = await Account.newFromPem(`${getTestWalletsPath()}/bob.pem`); - carol = await Account.newFromPem(`${getTestWalletsPath()}/carol.pem`); - grace = await Account.newFromPem(`${getTestWalletsPath()}/grace.pem`); - frank = await Account.newFromPem(`${getTestWalletsPath()}/frank.pem`); - }); - - it("should throw exception when creating relayed v1 transaction with invalid inner transaction", async function () { - let innerTransaction = new Transaction({ - sender: alice.address, - receiver: Address.newFromBech32("erd1qqqqqqqqqqqqqqqpqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqzllls8a5w6u"), - gasLimit: 10000000n, - data: Buffer.from("getContractConfig"), - chainID: config.chainID, - }); - - assert.throws(() => { - factory.createRelayedV1Transaction(bob.address, { innerTransaction: innerTransaction }), - "The inner transaction is not signed"; - }); - - innerTransaction.gasLimit = 0n; - innerTransaction.signature = Buffer.from("invalidsignature"); - - assert.throws(() => { - factory.createRelayedV1Transaction(bob.address, { innerTransaction: innerTransaction }), - "The gas limit is not set for the inner transaction"; - }); - }); - - it("should create relayed v1 transaction", async function () { - let innerTransaction = new Transaction({ - sender: bob.address, - receiver: Address.newFromBech32("erd1qqqqqqqqqqqqqqqpqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqzllls8a5w6u"), - gasLimit: 60000000n, - data: Buffer.from("getContractConfig"), - chainID: config.chainID, - nonce: 198n, - }); - - innerTransaction.signature = await bob.signTransaction(innerTransaction); - - const relayedTransaction = factory.createRelayedV1Transaction(alice.address, { - innerTransaction: innerTransaction, - }); - relayedTransaction.nonce = 2627n; - - relayedTransaction.signature = await alice.signTransaction(relayedTransaction); - - assert.equal( - Buffer.from(relayedTransaction.data).toString(), - "relayedTx@7b226e6f6e6365223a3139382c2273656e646572223a2267456e574f65576d6d413063306a6b71764d354241707a61644b46574e534f69417643575163776d4750673d222c227265636569766572223a22414141414141414141414141415141414141414141414141414141414141414141414141414141432f2f383d222c2276616c7565223a302c226761735072696365223a313030303030303030302c226761734c696d6974223a36303030303030302c2264617461223a225a3256305132397564484a68593352446232356d6157633d222c227369676e6174757265223a2272525455544858677a4273496e4f6e454b6b7869642b354e66524d486e33534948314673746f577352434c434b3258514c41614f4e704449346531476173624c5150616130566f364144516d4f2b52446b6f364a43413d3d222c22636861696e4944223a2256413d3d222c2276657273696f6e223a327d", - ); - assert.equal( - Buffer.from(relayedTransaction.signature).toString("hex"), - "128e7cdc14c2b9beee2f3ff7a7fa5d1f5ef31a654a0c92e223c90ab28265fa277d306f23a06536248cf9573e828017004fb639617fade4d68a37524aafca710d", - ); - }); - - it("should create relayed v1 transaction with usernames", async function () { - let innerTransaction = new Transaction({ - sender: carol.address, - receiver: alice.address, - gasLimit: 50000n, - chainID: config.chainID, - nonce: 208n, - senderUsername: "carol", - receiverUsername: "alice", - value: 1000000000000000000n, - }); - - innerTransaction.signature = await carol.signTransaction(innerTransaction); - - const relayedTransaction = factory.createRelayedV1Transaction(frank.address, { - innerTransaction: innerTransaction, - }); - relayedTransaction.nonce = 715n; - - relayedTransaction.signature = await frank.signTransaction(relayedTransaction); - - assert.equal( - Buffer.from(relayedTransaction.data).toString(), - "relayedTx@7b226e6f6e6365223a3230382c2273656e646572223a227371455656633553486b6c45344a717864556e59573068397a536249533141586f3534786f32634969626f3d222c227265636569766572223a2241546c484c76396f686e63616d433877673970645168386b77704742356a6949496f3349484b594e6165453d222c2276616c7565223a313030303030303030303030303030303030302c226761735072696365223a313030303030303030302c226761734c696d6974223a35303030302c2264617461223a22222c227369676e6174757265223a226a33427a6469554144325963517473576c65707663664a6f75657a48573063316b735a424a4d6339573167435450512b6870636759457858326f6f367a4b5654347464314b4b6f79783841526a346e336474576c44413d3d222c22636861696e4944223a2256413d3d222c2276657273696f6e223a322c22736e64557365724e616d65223a22593246796232773d222c22726376557365724e616d65223a22595778705932553d227d", - ); - assert.equal( - Buffer.from(relayedTransaction.signature).toString("hex"), - "3787d640e5a579e7977a4a1bcdd435ad11855632fa4a414a06fbf8355692d1a58d76ef0adbdd6ccd6bd3c329f36bd53c180d4873ec1a6c558e659aeb9ab92d00", - ); - }); - - it("should create relayed v1 transaction with big value", async function () { - let innerTransaction = new Transaction({ - sender: carol.address, - receiver: alice.address, - gasLimit: 50000n, - chainID: config.chainID, - nonce: 208n, - senderUsername: "carol", - receiverUsername: "alice", - value: 1999999000000000000000000n, - }); - - innerTransaction.signature = await carol.signTransaction(innerTransaction); - - const relayedTransaction = factory.createRelayedV1Transaction(frank.address, { - innerTransaction: innerTransaction, - }); - relayedTransaction.nonce = 715n; - - relayedTransaction.signature = await frank.signTransaction(relayedTransaction); - - assert.equal( - Buffer.from(relayedTransaction.data).toString(), - "relayedTx@7b226e6f6e6365223a3230382c2273656e646572223a227371455656633553486b6c45344a717864556e59573068397a536249533141586f3534786f32634969626f3d222c227265636569766572223a2241546c484c76396f686e63616d433877673970645168386b77704742356a6949496f3349484b594e6165453d222c2276616c7565223a313939393939393030303030303030303030303030303030302c226761735072696365223a313030303030303030302c226761734c696d6974223a35303030302c2264617461223a22222c227369676e6174757265223a22594661677972512f726d614c7333766e7159307657553858415a7939354b4e31725738347a4f764b62376c7a3773576e2f566a546d68704378774d682b7261314e444832574d6f3965507648304f79427453776a44773d3d222c22636861696e4944223a2256413d3d222c2276657273696f6e223a322c22736e64557365724e616d65223a22593246796232773d222c22726376557365724e616d65223a22595778705932553d227d", - ); - assert.equal( - Buffer.from(relayedTransaction.signature).toString("hex"), - "c0fb5cf8c0a413d6988ba35dc279c63f8849572c5f23b1cab36dcc50952dc3ed9da01068d6ac0cbde7e14167bfc2eca5164d5c2154c89eb313c9c596e3f8b801", - ); - }); - - it("should create relayed v1 transaction with guarded inner transaction", async function () { - let innerTransaction = new Transaction({ - sender: bob.address, - receiver: Address.newFromBech32("erd1qqqqqqqqqqqqqpgq54tsxmej537z9leghvp69hfu4f8gg5eu396q83gnnz"), - gasLimit: 60000000n, - chainID: config.chainID, - data: Buffer.from("getContractConfig"), - nonce: 198n, - version: 2, - options: 2, - guardian: grace.address, - }); - - innerTransaction.signature = await bob.signTransaction(innerTransaction); - innerTransaction.guardianSignature = await grace.signTransaction(innerTransaction); - - const relayedTransaction = factory.createRelayedV1Transaction(alice.address, { - innerTransaction: innerTransaction, - }); - relayedTransaction.nonce = 2627n; - - relayedTransaction.signature = await alice.signTransaction(relayedTransaction); - - assert.equal( - Buffer.from(relayedTransaction.data).toString(), - "relayedTx@7b226e6f6e6365223a3139382c2273656e646572223a2267456e574f65576d6d413063306a6b71764d354241707a61644b46574e534f69417643575163776d4750673d222c227265636569766572223a22414141414141414141414146414b565841323879704877692f79693741364c64504b704f68464d386958513d222c2276616c7565223a302c226761735072696365223a313030303030303030302c226761734c696d6974223a36303030303030302c2264617461223a225a3256305132397564484a68593352446232356d6157633d222c227369676e6174757265223a224b4b78324f33383655725135416b4f465258307578327933446a384853334b373038487174344668377161557669424550716c45614e746e6158706a6f2f333651476d4a456934784435457a6c6f4f677a634d4442773d3d222c22636861696e4944223a2256413d3d222c2276657273696f6e223a322c226f7074696f6e73223a322c22677561726469616e223a22486f714c61306e655733766843716f56696c70715372744c5673774939535337586d7a563868477450684d3d222c22677561726469616e5369676e6174757265223a222b5431526f4833625a792f54423177342b6a365155477258645637457577553073753948646551626453515269463953757a686d634b705463526d58595252366c534c6652394931624d7134674730436538363741513d3d227d", - ); - assert.equal( - Buffer.from(relayedTransaction.signature).toString("hex"), - "39cff9d5100e290fbc7361cb6e2402261caf864257b4116f150e0c61e7869155dff8361fa5449431eb7a8ed847c01ba9b3b5ebafe5fac1a3d40c64829d827e00", - ); - }); - - it("should create guarded relayed v1 transaction with guarded inner transaction", async function () { - let innerTransaction = new Transaction({ - sender: bob.address, - receiver: Address.newFromBech32("erd1qqqqqqqqqqqqqpgq54tsxmej537z9leghvp69hfu4f8gg5eu396q83gnnz"), - gasLimit: 60000000n, - chainID: config.chainID, - data: Buffer.from("addNumber"), - nonce: 198n, - version: 2, - options: 2, - guardian: grace.address, - }); - - innerTransaction.signature = await bob.signTransaction(innerTransaction); - innerTransaction.guardianSignature = await grace.signTransaction(innerTransaction); - - const relayedTransaction = factory.createRelayedV1Transaction(alice.address, { - innerTransaction: innerTransaction, - }); - relayedTransaction.nonce = 2627n; - relayedTransaction.options = 2; - relayedTransaction.guardian = frank.address; - - relayedTransaction.signature = await alice.signTransaction(relayedTransaction); - relayedTransaction.guardianSignature = await frank.signTransaction(relayedTransaction); - - assert.equal( - Buffer.from(relayedTransaction.data).toString(), - "relayedTx@7b226e6f6e6365223a3139382c2273656e646572223a2267456e574f65576d6d413063306a6b71764d354241707a61644b46574e534f69417643575163776d4750673d222c227265636569766572223a22414141414141414141414146414b565841323879704877692f79693741364c64504b704f68464d386958513d222c2276616c7565223a302c226761735072696365223a313030303030303030302c226761734c696d6974223a36303030303030302c2264617461223a225957526b546e5674596d5679222c227369676e6174757265223a223469724d4b4a656d724d375174344e7635487633544c44683775654779487045564c4371674a3677652f7a662b746a4933354975573452633458543451533433475333356158386c6a533834324a38426854645043673d3d222c22636861696e4944223a2256413d3d222c2276657273696f6e223a322c226f7074696f6e73223a322c22677561726469616e223a22486f714c61306e655733766843716f56696c70715372744c5673774939535337586d7a563868477450684d3d222c22677561726469616e5369676e6174757265223a2270424754394e674a78307539624c56796b654d78786a454865374269696c37764932324a46676f32787a6e2f496e3032463769546563356b44395045324f747065386c475335412b532f4a36417762576834446744673d3d227d", - ); - assert.equal( - Buffer.from(relayedTransaction.signature).toString("hex"), - "8ede1bbeed96b102344dffeac12c2592c62b7313cdeb132e8c8bf11d2b1d3bb8189d257a6dbcc99e222393d9b9ec77656c349dae97a32e68bdebd636066bf706", - ); - }); - - it("should throw exception when creating relayed v2 transaction with invalid inner transaction", async function () { - let innerTransaction = new Transaction({ - sender: bob.address, - receiver: bob.address, - gasLimit: 50000n, - chainID: config.chainID, - }); - - assert.throws(() => { - factory.createRelayedV2Transaction(carol.address, { - innerTransaction: innerTransaction, - innerTransactionGasLimit: 50000n, - }), - "The gas limit should not be set for the inner transaction"; - }); - - innerTransaction.gasLimit = 0n; - - assert.throws(() => { - factory.createRelayedV2Transaction(carol.address, { - innerTransaction: innerTransaction, - innerTransactionGasLimit: 50000n, - }), - "The inner transaction is not signed"; - }); - }); - - it("should create relayed v2 transaction", async function () { - let innerTransaction = new Transaction({ - sender: bob.address, - receiver: Address.newFromBech32("erd1qqqqqqqqqqqqqqqpqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqzllls8a5w6u"), - gasLimit: 0n, - chainID: config.chainID, - data: Buffer.from("getContractConfig"), - nonce: 15n, - version: 2, - options: 0, - }); - - innerTransaction.signature = await bob.signTransaction(innerTransaction); - - const relayedTransaction = factory.createRelayedV2Transaction(alice.address, { - innerTransaction: innerTransaction, - innerTransactionGasLimit: 60000000n, - }); - relayedTransaction.nonce = 37n; - - relayedTransaction.signature = await alice.signTransaction(relayedTransaction); - - assert.equal(relayedTransaction.version, 2); - assert.equal(relayedTransaction.options, 0); - assert.equal(relayedTransaction.gasLimit.toString(), "60414500"); - assert.equal( - Buffer.from(relayedTransaction.data).toString(), - "relayedTxV2@000000000000000000010000000000000000000000000000000000000002ffff@0f@676574436f6e7472616374436f6e666967@fc3ed87a51ee659f937c1a1ed11c1ae677e99629fae9cc289461f033e6514d1a8cfad1144ae9c1b70f28554d196bd6ba1604240c1c1dc19c959e96c1c3b62d0c", - ); - }); -}); diff --git a/src/relayed/relayedTransactionsFactory.ts b/src/relayed/relayedTransactionsFactory.ts deleted file mode 100644 index 8e14eee1b..000000000 --- a/src/relayed/relayedTransactionsFactory.ts +++ /dev/null @@ -1,116 +0,0 @@ -import BigNumber from "bignumber.js"; -import { AddressValue, ArgSerializer, BytesValue, U64Value } from "../abi"; -import { Address } from "../core/address"; -import { ErrInvalidInnerTransaction } from "../core/errors"; -import { Transaction } from "../core/transaction"; - -const JSONbig = require("json-bigint"); - -interface IConfig { - chainID: string; - minGasLimit: bigint; - gasLimitPerByte: bigint; -} - -/** - * Use this class to create both RelayedV1 and RelayedV2 transactions. - */ -export class RelayedTransactionsFactory { - private readonly config: IConfig; - - constructor(options: { config: IConfig }) { - this.config = options.config; - } - - createRelayedV1Transaction(relayerAddress: Address, options: { innerTransaction: Transaction }): Transaction { - if (!options.innerTransaction.gasLimit) { - throw new ErrInvalidInnerTransaction("The gas limit is not set for the inner transaction"); - } - - if (!options.innerTransaction.signature.length) { - throw new ErrInvalidInnerTransaction("The inner transaction is not signed"); - } - - const serializedTransaction = this.prepareInnerTransactionForRelayedV1(options.innerTransaction); - const data = `relayedTx@${Buffer.from(serializedTransaction).toString("hex")}`; - - const additionalGasForDataLength = this.config.gasLimitPerByte * BigInt(data.length); - const gasLimit = this.config.minGasLimit + additionalGasForDataLength + options.innerTransaction.gasLimit; - - return new Transaction({ - chainID: this.config.chainID, - sender: relayerAddress, - receiver: options.innerTransaction.sender, - gasLimit: gasLimit, - data: Buffer.from(data), - }); - } - - createRelayedV2Transaction( - relayerAddress: Address, - options: { - innerTransaction: Transaction; - innerTransactionGasLimit: bigint; - }, - ): Transaction { - if (options.innerTransaction.gasLimit) { - throw new ErrInvalidInnerTransaction("The gas limit should not be set for the inner transaction"); - } - - if (!options.innerTransaction.signature.length) { - throw new ErrInvalidInnerTransaction("The inner transaction is not signed"); - } - - const { argumentsString } = new ArgSerializer().valuesToString([ - new AddressValue(options.innerTransaction.receiver), - new U64Value(new BigNumber(options.innerTransaction.nonce.toString())), - new BytesValue(Buffer.from(options.innerTransaction.data)), - new BytesValue(Buffer.from(options.innerTransaction.signature)), - ]); - - const data = `relayedTxV2@${argumentsString}`; - - const additionalGasForDataLength = this.config.gasLimitPerByte * BigInt(data.length); - const gasLimit = options.innerTransactionGasLimit + this.config.minGasLimit + additionalGasForDataLength; - - return new Transaction({ - sender: relayerAddress, - receiver: options.innerTransaction.sender, - value: 0n, - gasLimit: gasLimit, - chainID: this.config.chainID, - data: Buffer.from(data), - version: options.innerTransaction.version, - options: options.innerTransaction.options, - }); - } - - private prepareInnerTransactionForRelayedV1(innerTransaction: Transaction): string { - const txObject = { - nonce: innerTransaction.nonce, - sender: innerTransaction.sender.getPublicKey().toString("base64"), - receiver: innerTransaction.receiver.getPublicKey().toString("base64"), - value: innerTransaction.value, - gasPrice: innerTransaction.gasPrice, - gasLimit: innerTransaction.gasLimit, - data: Buffer.from(innerTransaction.data).toString("base64"), - signature: Buffer.from(innerTransaction.signature).toString("base64"), - chainID: Buffer.from(innerTransaction.chainID).toString("base64"), - version: innerTransaction.version, - options: innerTransaction.options == 0 ? undefined : innerTransaction.options, - guardian: innerTransaction.guardian.isEmpty() - ? undefined - : innerTransaction.guardian.getPublicKey().toString("base64"), - guardianSignature: innerTransaction.guardianSignature.length - ? Buffer.from(innerTransaction.guardianSignature).toString("base64") - : undefined, - sndUserName: innerTransaction.senderUsername - ? Buffer.from(innerTransaction.senderUsername).toString("base64") - : undefined, - rcvUserName: innerTransaction.receiverUsername - ? Buffer.from(innerTransaction.receiverUsername).toString("base64") - : undefined, - }; - return JSONbig.stringify(txObject); - } -} diff --git a/src/relayed/resources.ts b/src/relayed/resources.ts deleted file mode 100644 index 62e4ecc9b..000000000 --- a/src/relayed/resources.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { Transaction } from "../core/transaction"; - -export type RelayedV1TransactionInput = { innerTransaction: Transaction }; -export type RelayedV2TransactionInput = { - innerTransaction: Transaction; - innerTransactionGasLimit: bigint; -}; From e7971994ff459722e22926d7671f2d0f06bc3a40 Mon Sep 17 00:00:00 2001 From: danielailie Date: Wed, 26 Feb 2025 13:37:01 +0200 Subject: [PATCH 2/2] Commit missing files --- src/core/errors.ts | 27 --------------------------- src/index.ts | 1 - 2 files changed, 28 deletions(-) diff --git a/src/core/errors.ts b/src/core/errors.ts index 9eb4d610f..489d0ff1b 100644 --- a/src/core/errors.ts +++ b/src/core/errors.ts @@ -299,33 +299,6 @@ export class ErrNotImplemented extends Err { } } -/** - * Signals invalid arguments when using the relayed v1 builder - */ -export class ErrInvalidRelayedV1BuilderArguments extends Err { - public constructor() { - super("invalid arguments for relayed v1 builder"); - } -} - -/** - * Signals invalid arguments when using the relayed v2 builder - */ -export class ErrInvalidRelayedV2BuilderArguments extends Err { - public constructor() { - super("invalid arguments for relayed v2 builder"); - } -} - -/** - * Signals that Gas Limit isn't 0 for an inner tx when using relayed v2 builder - */ -export class ErrGasLimitShouldBe0ForInnerTransaction extends Err { - public constructor() { - super("gas limit must be 0 for the inner transaction for relayed v2"); - } -} - /** * Signals that the `isCompleted` property is missing on the transaction obect and is needed for the Transaction Watcher */ diff --git a/src/index.ts b/src/index.ts index 4229e47be..8226037c3 100644 --- a/src/index.ts +++ b/src/index.ts @@ -11,7 +11,6 @@ export * from "./core"; export * from "./delegation"; export * from "./entrypoints"; export * from "./networkProviders"; -export * from "./relayed"; export * from "./tokenManagement"; export * from "./transactionsOutcomeParsers"; export * from "./transfers";