diff --git a/.changeset/light-mangos-search.md b/.changeset/violet-bottles-double.md similarity index 100% rename from .changeset/light-mangos-search.md rename to .changeset/violet-bottles-double.md diff --git a/package-lock.json b/package-lock.json index 393978cc..20fdeca6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -17110,7 +17110,7 @@ }, "packages/abstract-chain": { "name": "@rosen-chains/abstract-chain", - "version": "10.0.0", + "version": "11.0.0", "license": "CC0-1.0", "dependencies": { "@rosen-bridge/abstract-logger": "^2.0.1", @@ -17143,13 +17143,13 @@ }, "packages/chains/binance": { "name": "@rosen-chains/binance", - "version": "0.1.2", + "version": "0.2.0", "license": "CC0-1.0", "dependencies": { "@rosen-bridge/abstract-logger": "^2.0.1", "@rosen-bridge/tokens": "^1.2.1", - "@rosen-chains/abstract-chain": "^10.0.0", - "@rosen-chains/evm": "^5.0.0" + "@rosen-chains/abstract-chain": "^11.0.0", + "@rosen-chains/evm": "^5.1.0" }, "devDependencies": { "@types/node": "^20.11.9", @@ -17452,7 +17452,7 @@ }, "packages/chains/bitcoin": { "name": "@rosen-chains/bitcoin", - "version": "6.0.0", + "version": "6.1.0", "license": "CC0-1.0", "dependencies": { "@rosen-bridge/abstract-logger": "^2.0.1", @@ -17460,7 +17460,7 @@ "@rosen-bridge/json-bigint": "^0.1.0", "@rosen-bridge/rosen-extractor": "^6.2.2", "@rosen-bridge/tokens": "^1.2.1", - "@rosen-chains/abstract-chain": "^10.0.0", + "@rosen-chains/abstract-chain": "^11.0.0", "bitcoinjs-lib": "^6.1.5" }, "devDependencies": { @@ -18228,7 +18228,7 @@ }, "packages/chains/cardano": { "name": "@rosen-chains/cardano", - "version": "10.0.0", + "version": "10.1.0", "license": "CC0-1.0", "dependencies": { "@emurgo/cardano-serialization-lib-nodejs": "^11.3.1", @@ -18236,7 +18236,7 @@ "@rosen-bridge/json-bigint": "^0.1.0", "@rosen-bridge/rosen-extractor": "^6.2.2", "@rosen-bridge/tokens": "^1.2.1", - "@rosen-chains/abstract-chain": "^10.0.0", + "@rosen-chains/abstract-chain": "^11.0.0", "bech32": "^2.0.0" }, "devDependencies": { @@ -18263,14 +18263,14 @@ }, "packages/chains/ergo": { "name": "@rosen-chains/ergo", - "version": "10.0.0", + "version": "10.1.0", "license": "CC0-1.0", "dependencies": { "@rosen-bridge/abstract-logger": "^2.0.1", "@rosen-bridge/json-bigint": "^0.1.0", "@rosen-bridge/rosen-extractor": "^6.2.2", "@rosen-bridge/tokens": "^1.2.1", - "@rosen-chains/abstract-chain": "^10.0.0", + "@rosen-chains/abstract-chain": "^11.0.0", "ergo-lib-wasm-nodejs": "^0.24.1" }, "devDependencies": { @@ -18296,13 +18296,13 @@ }, "packages/chains/ethereum": { "name": "@rosen-chains/ethereum", - "version": "0.1.10", + "version": "0.2.0", "license": "CC0-1.0", "dependencies": { "@rosen-bridge/abstract-logger": "^2.0.1", "@rosen-bridge/tokens": "^1.2.1", - "@rosen-chains/abstract-chain": "^10.0.0", - "@rosen-chains/evm": "^5.0.0" + "@rosen-chains/abstract-chain": "^11.0.0", + "@rosen-chains/evm": "^5.1.0" }, "devDependencies": { "@types/node": "^20.11.9", @@ -18599,14 +18599,14 @@ }, "packages/chains/evm": { "name": "@rosen-chains/evm", - "version": "5.0.0", + "version": "5.1.0", "license": "CC0-1.0", "dependencies": { "@rosen-bridge/abstract-logger": "^2.0.1", "@rosen-bridge/json-bigint": "^0.1.0", "@rosen-bridge/rosen-extractor": "^6.2.2", "@rosen-bridge/tokens": "^1.2.1", - "@rosen-chains/abstract-chain": "^10.0.0", + "@rosen-chains/abstract-chain": "^11.0.0", "ethers": "^6.11.1" }, "devDependencies": { @@ -19374,13 +19374,13 @@ }, "packages/networks/bitcoin-esplora": { "name": "@rosen-chains/bitcoin-esplora", - "version": "4.0.4", + "version": "4.0.5", "license": "CC0-1.0", "dependencies": { "@rosen-bridge/abstract-logger": "^2.0.1", "@rosen-bridge/json-bigint": "^0.1.0", - "@rosen-chains/abstract-chain": "^10.0.0", - "@rosen-chains/bitcoin": "^6.0.0", + "@rosen-chains/abstract-chain": "^11.0.0", + "@rosen-chains/bitcoin": "^6.1.0", "axios": "^1.6.7", "bitcoinjs-lib": "^6.1.5" }, @@ -20149,14 +20149,14 @@ }, "packages/networks/cardano-blockfrost": { "name": "@rosen-chains/cardano-blockfrost-network", - "version": "7.0.3", + "version": "7.0.4", "license": "CC0-1.0", "dependencies": { "@blockfrost/blockfrost-js": "^5.4.0", "@emurgo/cardano-serialization-lib-nodejs": "^11.3.1", "@rosen-bridge/abstract-logger": "^2.0.1", - "@rosen-chains/abstract-chain": "^10.0.0", - "@rosen-chains/cardano": "^10.0.0" + "@rosen-chains/abstract-chain": "^11.0.0", + "@rosen-chains/cardano": "^10.1.0" }, "devDependencies": { "@types/node": "^18.11.18", @@ -21144,14 +21144,14 @@ }, "packages/networks/cardano-graphql": { "name": "@rosen-chains/cardano-graphql-network", - "version": "6.0.3", + "version": "6.0.4", "license": "CC0-1.0", "dependencies": { "@apollo/client": "^3.8.7", "@emurgo/cardano-serialization-lib-nodejs": "^11.3.1", "@rosen-bridge/abstract-logger": "^2.0.1", - "@rosen-chains/abstract-chain": "^10.0.0", - "@rosen-chains/cardano": "^10.0.0" + "@rosen-chains/abstract-chain": "^11.0.0", + "@rosen-chains/cardano": "^10.1.0" }, "devDependencies": { "@graphql-codegen/cli": "^5.0.0", @@ -22142,14 +22142,14 @@ }, "packages/networks/cardano-koios": { "name": "@rosen-chains/cardano-koios-network", - "version": "10.0.3", + "version": "10.0.4", "license": "CC0-1.0", "dependencies": { "@emurgo/cardano-serialization-lib-nodejs": "^11.3.1", "@rosen-bridge/abstract-logger": "^2.0.1", "@rosen-bridge/json-bigint": "^0.1.0", - "@rosen-chains/abstract-chain": "^10.0.0", - "@rosen-chains/cardano": "^10.0.0", + "@rosen-chains/abstract-chain": "^11.0.0", + "@rosen-chains/cardano": "^10.1.0", "@rosen-clients/cardano-koios": "^2.0.3" }, "devDependencies": { @@ -22192,13 +22192,13 @@ }, "packages/networks/ergo-explorer": { "name": "@rosen-chains/ergo-explorer-network", - "version": "9.0.3", + "version": "9.0.4", "license": "CC0-1.0", "dependencies": { "@rosen-bridge/abstract-logger": "^2.0.1", "@rosen-bridge/json-bigint": "^0.1.0", - "@rosen-chains/abstract-chain": "^10.0.0", - "@rosen-chains/ergo": "^10.0.0", + "@rosen-chains/abstract-chain": "^11.0.0", + "@rosen-chains/ergo": "^10.1.0", "@rosen-clients/ergo-explorer": "^1.1.1", "ergo-lib-wasm-nodejs": "^0.24.1", "it-all": "^3.0.1" @@ -22991,13 +22991,13 @@ }, "packages/networks/ergo-node": { "name": "@rosen-chains/ergo-node-network", - "version": "9.0.3", + "version": "9.0.4", "license": "CC0-1.0", "dependencies": { "@rosen-bridge/abstract-logger": "^2.0.1", "@rosen-bridge/json-bigint": "^0.1.0", - "@rosen-chains/abstract-chain": "^10.0.0", - "@rosen-chains/ergo": "^10.0.0", + "@rosen-chains/abstract-chain": "^11.0.0", + "@rosen-chains/ergo": "^10.1.0", "@rosen-clients/ergo-node": "^1.1.1", "ergo-lib-wasm-nodejs": "^0.24.1", "it-all": "^3.0.1" @@ -23774,13 +23774,13 @@ }, "packages/networks/evm-rpc": { "name": "@rosen-chains/evm-rpc", - "version": "2.1.7", + "version": "2.1.8", "license": "CC0-1.0", "dependencies": { "@rosen-bridge/abstract-logger": "^2.0.1", "@rosen-bridge/evm-address-tx-extractor": "^1.0.3", - "@rosen-chains/abstract-chain": "^10.0.0", - "@rosen-chains/evm": "^5.0.0", + "@rosen-chains/abstract-chain": "^11.0.0", + "@rosen-chains/evm": "^5.1.0", "typeorm": "^0.3.20" }, "devDependencies": { diff --git a/packages/abstract-chain/CHANGELOG.md b/packages/abstract-chain/CHANGELOG.md index c4baf624..953282c5 100644 --- a/packages/abstract-chain/CHANGELOG.md +++ b/packages/abstract-chain/CHANGELOG.md @@ -1,5 +1,11 @@ # @rosen-chains/abstract-chain +## 11.0.0 + +### Major Changes + +- Add signingStatus to verifyTransactionExtraConditions function arguments + ## 10.0.0 ### Major Changes diff --git a/packages/abstract-chain/lib/AbstractChain.ts b/packages/abstract-chain/lib/AbstractChain.ts index 9e895320..140cd9a4 100644 --- a/packages/abstract-chain/lib/AbstractChain.ts +++ b/packages/abstract-chain/lib/AbstractChain.ts @@ -145,10 +145,12 @@ abstract class AbstractChain { /** * verifies additional conditions for a PaymentTransaction * @param transaction the PaymentTransaction + * @param signingStatus the signing status of transaction * @returns true if the transaction is verified */ abstract verifyTransactionExtraConditions: ( - transaction: PaymentTransaction + transaction: PaymentTransaction, + signingStatus: SigningStatus ) => boolean; /** diff --git a/packages/abstract-chain/package.json b/packages/abstract-chain/package.json index 9d17d53d..30ed6b1f 100644 --- a/packages/abstract-chain/package.json +++ b/packages/abstract-chain/package.json @@ -1,6 +1,6 @@ { "name": "@rosen-chains/abstract-chain", - "version": "10.0.0", + "version": "11.0.0", "description": "this project contains abstract classes to implement any chain for Rosen-bridge", "main": "dist/lib/index.js", "types": "dist/lib/index.d.ts", diff --git a/packages/chains/binance/CHANGELOG.md b/packages/chains/binance/CHANGELOG.md index ae2ebed4..34225e2b 100644 --- a/packages/chains/binance/CHANGELOG.md +++ b/packages/chains/binance/CHANGELOG.md @@ -1,5 +1,17 @@ # @rosen-chains/binance +## 0.2.0 + +### Minor Changes + +- Add signingStatus to verifyTransactionExtraConditions function arguments + +### Patch Changes + +- Update dependencies + - @rosen-chains/abstract-chain@11.0.0 + - @rosen-chains/evm@5.1.0 + ## 0.1.2 ### Patch Changes diff --git a/packages/chains/binance/package.json b/packages/chains/binance/package.json index c7ea8245..b8be3bf6 100644 --- a/packages/chains/binance/package.json +++ b/packages/chains/binance/package.json @@ -1,6 +1,6 @@ { "name": "@rosen-chains/binance", - "version": "0.1.2", + "version": "0.2.0", "description": "this project contains binance chain for Rosen-bridge", "repository": "https://github.com/rosen-bridge/rosen-chains", "license": "CC0-1.0", @@ -30,7 +30,7 @@ "dependencies": { "@rosen-bridge/abstract-logger": "^2.0.1", "@rosen-bridge/tokens": "^1.2.1", - "@rosen-chains/abstract-chain": "^10.0.0", - "@rosen-chains/evm": "^5.0.0" + "@rosen-chains/abstract-chain": "^11.0.0", + "@rosen-chains/evm": "^5.1.0" } } diff --git a/packages/chains/bitcoin/CHANGELOG.md b/packages/chains/bitcoin/CHANGELOG.md index 4a106042..c734cbae 100644 --- a/packages/chains/bitcoin/CHANGELOG.md +++ b/packages/chains/bitcoin/CHANGELOG.md @@ -1,5 +1,16 @@ # @rosen-chains/bitcoin +## 6.1.0 + +### Minor Changes + +- Add signingStatus to verifyTransactionExtraConditions function arguments + +### Patch Changes + +- Update dependencies + - @rosen-chains/abstract-chain@11.0.0 + ## 6.0.0 ### Major Changes diff --git a/packages/chains/bitcoin/lib/BitcoinChain.ts b/packages/chains/bitcoin/lib/BitcoinChain.ts index 192ec0ff..fee74f07 100644 --- a/packages/chains/bitcoin/lib/BitcoinChain.ts +++ b/packages/chains/bitcoin/lib/BitcoinChain.ts @@ -341,10 +341,12 @@ class BitcoinChain extends AbstractUtxoChain { * verifies additional conditions for a BitcoinTransaction * - check change box * @param transaction the PaymentTransaction + * @param signingStatus the signing status of transaction * @returns true if the transaction is verified */ verifyTransactionExtraConditions = ( - transaction: PaymentTransaction + transaction: PaymentTransaction, + signingStatus: SigningStatus = SigningStatus.UnSigned ): boolean => { const tx = Serializer.deserialize(transaction.txBytes); diff --git a/packages/chains/bitcoin/package.json b/packages/chains/bitcoin/package.json index 8dd4106e..f46d80be 100644 --- a/packages/chains/bitcoin/package.json +++ b/packages/chains/bitcoin/package.json @@ -1,6 +1,6 @@ { "name": "@rosen-chains/bitcoin", - "version": "6.0.0", + "version": "6.1.0", "description": "this project contains bitcoin chain for Rosen-bridge", "repository": "https://github.com/rosen-bridge/rosen-chains", "license": "CC0-1.0", @@ -38,7 +38,7 @@ "@rosen-bridge/json-bigint": "^0.1.0", "@rosen-bridge/rosen-extractor": "^6.2.2", "@rosen-bridge/tokens": "^1.2.1", - "@rosen-chains/abstract-chain": "^10.0.0", + "@rosen-chains/abstract-chain": "^11.0.0", "bitcoinjs-lib": "^6.1.5" } } diff --git a/packages/chains/cardano/CHANGELOG.md b/packages/chains/cardano/CHANGELOG.md index 2b32bcf9..8b55318a 100644 --- a/packages/chains/cardano/CHANGELOG.md +++ b/packages/chains/cardano/CHANGELOG.md @@ -1,5 +1,16 @@ # @rosen-chains/cardano +## 10.1.0 + +### Minor Changes + +- Add signingStatus to verifyTransactionExtraConditions function arguments + +### Patch Changes + +- Update dependencies + - @rosen-chains/abstract-chain@11.0.0 + ## 10.0.0 ### Major Changes diff --git a/packages/chains/cardano/lib/CardanoChain.ts b/packages/chains/cardano/lib/CardanoChain.ts index 933d54f6..ae1caefb 100644 --- a/packages/chains/cardano/lib/CardanoChain.ts +++ b/packages/chains/cardano/lib/CardanoChain.ts @@ -580,10 +580,12 @@ class CardanoChain extends AbstractUtxoChain { /** * verifies PaymentTransaction extra conditions like metadata and change box address * @param transaction to verify + * @param signingStatus the signing status of transaction * @returns true if all conditions are met */ verifyTransactionExtraConditions = ( - transaction: PaymentTransaction + transaction: PaymentTransaction, + signingStatus: SigningStatus = SigningStatus.UnSigned ): boolean => { const tx = Serializer.deserialize(transaction.txBytes); diff --git a/packages/chains/cardano/package.json b/packages/chains/cardano/package.json index 5b92a058..0d815697 100644 --- a/packages/chains/cardano/package.json +++ b/packages/chains/cardano/package.json @@ -1,6 +1,6 @@ { "name": "@rosen-chains/cardano", - "version": "10.0.0", + "version": "10.1.0", "description": "this project contains cardano chain for Rosen-bridge", "main": "dist/lib/index.js", "types": "dist/lib/index.d.ts", @@ -25,7 +25,7 @@ "@rosen-bridge/rosen-extractor": "^6.2.2", "@rosen-bridge/json-bigint": "^0.1.0", "@rosen-bridge/tokens": "^1.2.1", - "@rosen-chains/abstract-chain": "^10.0.0", + "@rosen-chains/abstract-chain": "^11.0.0", "bech32": "^2.0.0" }, "devDependencies": { diff --git a/packages/chains/ergo/CHANGELOG.md b/packages/chains/ergo/CHANGELOG.md index dbbc554d..3c5bbbc4 100644 --- a/packages/chains/ergo/CHANGELOG.md +++ b/packages/chains/ergo/CHANGELOG.md @@ -1,5 +1,16 @@ # @rosen-chains/ergo +## 10.1.0 + +### Minor Changes + +- Add signingStatus to verifyTransactionExtraConditions function arguments + +### Patch Changes + +- Update dependencies + - @rosen-chains/abstract-chain@11.0.0 + ## 10.0.0 ### Major Changes diff --git a/packages/chains/ergo/lib/ErgoChain.ts b/packages/chains/ergo/lib/ErgoChain.ts index a20a3366..1f4ff45d 100644 --- a/packages/chains/ergo/lib/ErgoChain.ts +++ b/packages/chains/ergo/lib/ErgoChain.ts @@ -560,17 +560,28 @@ class ErgoChain extends AbstractUtxoChain { * verifies additional conditions for a PaymentTransaction * 1. change boxes should not have register * @param transaction the PaymentTransaction + * @param signingStatus the signing status of transaction * @returns true if the transaction verified */ verifyTransactionExtraConditions = ( - transaction: PaymentTransaction + transaction: PaymentTransaction, + signingStatus: SigningStatus = SigningStatus.UnSigned ): boolean => { - const tx = Serializer.deserialize(transaction.txBytes).unsigned_tx(); + // deserialize transaction + let tx: wasm.Transaction | wasm.UnsignedTransaction; + try { + tx = + signingStatus === SigningStatus.Signed + ? Serializer.signedDeserialize(transaction.txBytes) + : Serializer.deserialize(transaction.txBytes).unsigned_tx(); + } catch (e) { + tx = Serializer.deserialize(transaction.txBytes).unsigned_tx(); + } + const outputBoxes = tx.output_candidates(); const lockErgoTree = wasm.Address.from_base58(this.configs.addresses.lock) .to_ergo_tree() .to_base16_bytes(); - for (let i = outputBoxes.len() - 1; i >= 0; i--) { const output = outputBoxes.get(i); // skip fee box diff --git a/packages/chains/ergo/package.json b/packages/chains/ergo/package.json index 9ff64259..417d1171 100644 --- a/packages/chains/ergo/package.json +++ b/packages/chains/ergo/package.json @@ -1,6 +1,6 @@ { "name": "@rosen-chains/ergo", - "version": "10.0.0", + "version": "10.1.0", "description": "this project contains ergo chain for Rosen-bridge", "main": "dist/lib/index.js", "types": "dist/lib/index.d.ts", @@ -24,7 +24,7 @@ "@rosen-bridge/json-bigint": "^0.1.0", "@rosen-bridge/rosen-extractor": "^6.2.2", "@rosen-bridge/tokens": "^1.2.1", - "@rosen-chains/abstract-chain": "^10.0.0", + "@rosen-chains/abstract-chain": "^11.0.0", "ergo-lib-wasm-nodejs": "^0.24.1" }, "devDependencies": { diff --git a/packages/chains/ergo/tests/ErgoChain.spec.ts b/packages/chains/ergo/tests/ErgoChain.spec.ts index f95a1775..eaf3c592 100644 --- a/packages/chains/ergo/tests/ErgoChain.spec.ts +++ b/packages/chains/ergo/tests/ErgoChain.spec.ts @@ -9,6 +9,7 @@ import { CoveringBoxes, NotEnoughAssetsError, NotEnoughValidBoxesError, + SigningStatus, TransactionType, } from '@rosen-chains/abstract-chain'; import TestErgoNetwork from './network/TestErgoNetwork'; @@ -1153,6 +1154,111 @@ describe('ErgoChain', () => { expect(result).toEqual(true); }); + /** + * @target ErgoChain.verifyTransactionExtraConditions should return true + * event when signing status is wrong + * @dependencies + * @scenario + * - mock valid PaymentTransaction + * - mock a config with valid lockAddress + * - run test with signing status as signed + * - check returned value + * @expected + * - it should return true + */ + it('should return true event when signing status is wrong', async () => { + // mock PaymentTransaction + const paymentTx = ErgoTransaction.fromJson( + transactionTestData.transaction3PaymentTransaction + ); + + // mock a config with valid lockAddress + const config: ErgoConfigs = { + fee: 1200000n, + confirmations: ergoTestUtils.defaultConfirmations, + addresses: { + lock: 'nB3L2PD3LG4ydEj62n9aymRyPCEbkBdzaubgvCWDH2oxHxFBfAUy9GhWDvteDbbUh5qhXxnW8R46qmEiZfkej8gt4kZYvbeobZJADMrWXwFJTsZ17euEcoAp3KDk31Q26okFpgK9SKdi4', + cold: 'cold_addr', + permit: 'permit_addr', + fraud: 'fraud_addr', + }, + rwtId: ergoTestUtils.rwtId, + minBoxValue: 1000000n, + eventTxConfirmation: 18, + }; + + // run test + const ergoChain = new ErgoChain( + network, + config, + ergoTestUtils.testTokenMap, + ergoTestUtils.defaultSignFunction + ); + const result = await ergoChain.verifyTransactionExtraConditions( + paymentTx, + SigningStatus.Signed + ); + + // check returned value + expect(result).toEqual(true); + }); + + /** + * @target ErgoChain.verifyTransactionExtraConditions should return true + * when change box conditions are met for signed transaction + * @dependencies + * @scenario + * - mock PaymentTransaction of signed transaction + * - mock a config with valid lockAddress + * - run test + * - check returned value + * @expected + * - it should return true + */ + it('should return true when change box conditions are met for signed transaction', async () => { + // mock PaymentTransaction of signed transaction + const paymentTx = new ErgoTransaction( + 'txId', + 'eventId', + wasm.Transaction.sigma_parse_bytes( + Buffer.from(transactionTestData.transaction2SignedSerialized, 'hex') + ).sigma_serialize_bytes(), + TransactionType.payment, + [], + [] + ); + + // mock a config with valid lockAddress + const config: ErgoConfigs = { + fee: 1200000n, + confirmations: ergoTestUtils.defaultConfirmations, + addresses: { + lock: 'nB3L2PD3LG4ydEj62n9aymRyPCEbkBdzaubgvCWDH2oxHxFBfAUy9GhWDvteDbbUh5qhXxnW8R46qmEiZfkej8gt4kZYvbeobZJADMrWXwFJTsZ17euEcoAp3KDk31Q26okFpgK9SKdi4', + cold: 'cold_addr', + permit: 'permit_addr', + fraud: 'fraud_addr', + }, + rwtId: ergoTestUtils.rwtId, + minBoxValue: 1000000n, + eventTxConfirmation: 18, + }; + + // run test + const ergoChain = new ErgoChain( + network, + config, + ergoTestUtils.testTokenMap, + ergoTestUtils.defaultSignFunction + ); + const result = await ergoChain.verifyTransactionExtraConditions( + paymentTx, + SigningStatus.Signed + ); + + // check returned value + expect(result).toEqual(true); + }); + /** * @target ErgoChain.verifyTransactionExtraConditions should return false * when change box has value in R4 diff --git a/packages/chains/ethereum/CHANGELOG.md b/packages/chains/ethereum/CHANGELOG.md index b0b4cb3b..597b5f06 100644 --- a/packages/chains/ethereum/CHANGELOG.md +++ b/packages/chains/ethereum/CHANGELOG.md @@ -1,5 +1,17 @@ # @rosen-chains/ethereum +## 0.2.0 + +### Minor Changes + +- Add signingStatus to verifyTransactionExtraConditions function arguments + +### Patch Changes + +- Update dependencies + - @rosen-chains/abstract-chain@11.0.0 + - @rosen-chains/evm@5.1.0 + ## 0.1.10 ### Patch Changes diff --git a/packages/chains/ethereum/package.json b/packages/chains/ethereum/package.json index cada0ab4..a199ce21 100644 --- a/packages/chains/ethereum/package.json +++ b/packages/chains/ethereum/package.json @@ -1,6 +1,6 @@ { "name": "@rosen-chains/ethereum", - "version": "0.1.10", + "version": "0.2.0", "description": "this project contains ethereum chain for Rosen-bridge", "repository": "https://github.com/rosen-bridge/rosen-chains", "license": "CC0-1.0", @@ -30,7 +30,7 @@ "dependencies": { "@rosen-bridge/abstract-logger": "^2.0.1", "@rosen-bridge/tokens": "^1.2.1", - "@rosen-chains/abstract-chain": "^10.0.0", - "@rosen-chains/evm": "^5.0.0" + "@rosen-chains/abstract-chain": "^11.0.0", + "@rosen-chains/evm": "^5.1.0" } } diff --git a/packages/chains/evm/CHANGELOG.md b/packages/chains/evm/CHANGELOG.md index 19882031..654598e9 100644 --- a/packages/chains/evm/CHANGELOG.md +++ b/packages/chains/evm/CHANGELOG.md @@ -1,5 +1,16 @@ # @rosen-chains/evm +## 5.1.0 + +### Minor Changes + +- Add signingStatus to verifyTransactionExtraConditions function arguments + +### Patch Changes + +- Update dependencies + - @rosen-chains/abstract-chain@11.0.0 + ## 5.0.0 ### Major Changes diff --git a/packages/chains/evm/lib/EvmChain.ts b/packages/chains/evm/lib/EvmChain.ts index 53ea8fbe..4cf9fdf0 100644 --- a/packages/chains/evm/lib/EvmChain.ts +++ b/packages/chains/evm/lib/EvmChain.ts @@ -724,12 +724,22 @@ abstract class EvmChain extends AbstractChain { * - multiple payments are not allowed in one transaction * - in case of erc-20 transfer, `data` must be appropriately parsed with the `transfer` ABI * @param transaction the PaymentTransaction + * @param signingStatus the signing status of transaction * @returns true if the transaction is verified */ verifyTransactionExtraConditions = ( - transaction: PaymentTransaction + transaction: PaymentTransaction, + signingStatus: SigningStatus = SigningStatus.UnSigned ): boolean => { - const tx = Serializer.deserialize(transaction.txBytes); + let tx: Transaction; + try { + tx = Serializer.deserialize(transaction.txBytes); + } catch (error) { + this.logger.warn( + `Tx [${transaction.txId}] is not verified: failed to deserialized due to error: ${error}` + ); + return false; + } if (tx.to === null) { this.logger.warn( diff --git a/packages/chains/evm/package.json b/packages/chains/evm/package.json index e5b314da..210385b5 100644 --- a/packages/chains/evm/package.json +++ b/packages/chains/evm/package.json @@ -1,6 +1,6 @@ { "name": "@rosen-chains/evm", - "version": "5.0.0", + "version": "5.1.0", "description": "this project contains evm chains for Rosen-bridge", "repository": "https://github.com/rosen-bridge/rosen-chains", "license": "CC0-1.0", @@ -37,7 +37,7 @@ "@rosen-bridge/json-bigint": "^0.1.0", "@rosen-bridge/rosen-extractor": "^6.2.2", "@rosen-bridge/tokens": "^1.2.1", - "@rosen-chains/abstract-chain": "^10.0.0", + "@rosen-chains/abstract-chain": "^11.0.0", "ethers": "^6.11.1" } } diff --git a/packages/networks/bitcoin-esplora/CHANGELOG.md b/packages/networks/bitcoin-esplora/CHANGELOG.md index ce94f687..d19423aa 100644 --- a/packages/networks/bitcoin-esplora/CHANGELOG.md +++ b/packages/networks/bitcoin-esplora/CHANGELOG.md @@ -1,5 +1,13 @@ # @rosen-chains/bitcoin-esplora +## 4.0.5 + +### Patch Changes + +- Update dependencies + - @rosen-chains/abstract-chain@11.0.0 + - @rosen-chains/bitcoin@6.1.0 + ## 4.0.4 ### Patch Changes diff --git a/packages/networks/bitcoin-esplora/package.json b/packages/networks/bitcoin-esplora/package.json index 6d349a10..8a4e14a9 100644 --- a/packages/networks/bitcoin-esplora/package.json +++ b/packages/networks/bitcoin-esplora/package.json @@ -1,6 +1,6 @@ { "name": "@rosen-chains/bitcoin-esplora", - "version": "4.0.4", + "version": "4.0.5", "description": "A package to be used as network api provider for @rosen-chains/bitcoin package", "repository": "https://github.com/rosen-bridge/rosen-chains", "license": "CC0-1.0", @@ -35,8 +35,8 @@ "dependencies": { "@rosen-bridge/abstract-logger": "^2.0.1", "@rosen-bridge/json-bigint": "^0.1.0", - "@rosen-chains/abstract-chain": "^10.0.0", - "@rosen-chains/bitcoin": "^6.0.0", + "@rosen-chains/abstract-chain": "^11.0.0", + "@rosen-chains/bitcoin": "^6.1.0", "axios": "^1.6.7", "bitcoinjs-lib": "^6.1.5" } diff --git a/packages/networks/cardano-blockfrost/CHANGELOG.md b/packages/networks/cardano-blockfrost/CHANGELOG.md index cc431e82..d55886f9 100644 --- a/packages/networks/cardano-blockfrost/CHANGELOG.md +++ b/packages/networks/cardano-blockfrost/CHANGELOG.md @@ -1,5 +1,13 @@ # @rosen-chains/cardano-blockfrost-network +## 7.0.4 + +### Patch Changes + +- Update dependencies + - @rosen-chains/abstract-chain@11.0.0 + - @rosen-chains/cardano@10.1.0 + ## 7.0.3 ### Patch Changes diff --git a/packages/networks/cardano-blockfrost/package.json b/packages/networks/cardano-blockfrost/package.json index ac798f6c..3a98b68e 100644 --- a/packages/networks/cardano-blockfrost/package.json +++ b/packages/networks/cardano-blockfrost/package.json @@ -1,6 +1,6 @@ { "name": "@rosen-chains/cardano-blockfrost-network", - "version": "7.0.3", + "version": "7.0.4", "description": "a package to be used as network api provider for @rosen-chains/cardano package", "repository": "@rosen-chains/cardano-blockfrost-network", "license": "CC0-1.0", @@ -36,7 +36,7 @@ "@blockfrost/blockfrost-js": "^5.4.0", "@emurgo/cardano-serialization-lib-nodejs": "^11.3.1", "@rosen-bridge/abstract-logger": "^2.0.1", - "@rosen-chains/abstract-chain": "^10.0.0", - "@rosen-chains/cardano": "^10.0.0" + "@rosen-chains/abstract-chain": "^11.0.0", + "@rosen-chains/cardano": "^10.1.0" } } diff --git a/packages/networks/cardano-graphql/CHANGELOG.md b/packages/networks/cardano-graphql/CHANGELOG.md index a16be8ab..47cb806c 100644 --- a/packages/networks/cardano-graphql/CHANGELOG.md +++ b/packages/networks/cardano-graphql/CHANGELOG.md @@ -1,5 +1,13 @@ # @rosen-chains/cardano-graphql-network +## 6.0.4 + +### Patch Changes + +- Update dependencies + - @rosen-chains/abstract-chain@11.0.0 + - @rosen-chains/cardano@10.1.0 + ## 6.0.3 ### Patch Changes diff --git a/packages/networks/cardano-graphql/package.json b/packages/networks/cardano-graphql/package.json index c5e60d2d..9428d8f6 100644 --- a/packages/networks/cardano-graphql/package.json +++ b/packages/networks/cardano-graphql/package.json @@ -1,6 +1,6 @@ { "name": "@rosen-chains/cardano-graphql-network", - "version": "6.0.3", + "version": "6.0.4", "description": "a package to be used as network api provider for @rosen-chains/cardano package", "repository": "@rosen-chains/cardano-graphql-network", "license": "CC0-1.0", @@ -40,7 +40,7 @@ "@apollo/client": "^3.8.7", "@emurgo/cardano-serialization-lib-nodejs": "^11.3.1", "@rosen-bridge/abstract-logger": "^2.0.1", - "@rosen-chains/abstract-chain": "^10.0.0", - "@rosen-chains/cardano": "^10.0.0" + "@rosen-chains/abstract-chain": "^11.0.0", + "@rosen-chains/cardano": "^10.1.0" } } diff --git a/packages/networks/cardano-koios/CHANGELOG.md b/packages/networks/cardano-koios/CHANGELOG.md index e4af8b12..54e4b2ca 100644 --- a/packages/networks/cardano-koios/CHANGELOG.md +++ b/packages/networks/cardano-koios/CHANGELOG.md @@ -1,5 +1,13 @@ # @rosen-chains/cardano-koios-network +## 10.0.4 + +### Patch Changes + +- Update dependencies + - @rosen-chains/abstract-chain@11.0.0 + - @rosen-chains/cardano@10.1.0 + ## 10.0.3 ### Patch Changes diff --git a/packages/networks/cardano-koios/package.json b/packages/networks/cardano-koios/package.json index 5d071919..36345a88 100644 --- a/packages/networks/cardano-koios/package.json +++ b/packages/networks/cardano-koios/package.json @@ -1,6 +1,6 @@ { "name": "@rosen-chains/cardano-koios-network", - "version": "10.0.3", + "version": "10.0.4", "description": "cardano koios network package for rosen cardano chain", "main": "dist/lib/index.js", "types": "dist/lib/index.d.ts", @@ -23,8 +23,8 @@ "@emurgo/cardano-serialization-lib-nodejs": "^11.3.1", "@rosen-bridge/json-bigint": "^0.1.0", "@rosen-bridge/abstract-logger": "^2.0.1", - "@rosen-chains/abstract-chain": "^10.0.0", - "@rosen-chains/cardano": "^10.0.0", + "@rosen-chains/abstract-chain": "^11.0.0", + "@rosen-chains/cardano": "^10.1.0", "@rosen-clients/cardano-koios": "^2.0.3" }, "devDependencies": { diff --git a/packages/networks/ergo-explorer/CHANGELOG.md b/packages/networks/ergo-explorer/CHANGELOG.md index 9a254f10..248b812a 100644 --- a/packages/networks/ergo-explorer/CHANGELOG.md +++ b/packages/networks/ergo-explorer/CHANGELOG.md @@ -1,5 +1,13 @@ # @rosen-chains/ergo-explorer-network +## 9.0.4 + +### Patch Changes + +- Update dependencies + - @rosen-chains/abstract-chain@11.0.0 + - @rosen-chains/ergo@10.1.0 + ## 9.0.3 ### Patch Changes diff --git a/packages/networks/ergo-explorer/package.json b/packages/networks/ergo-explorer/package.json index 724e3c70..0757d06b 100644 --- a/packages/networks/ergo-explorer/package.json +++ b/packages/networks/ergo-explorer/package.json @@ -1,6 +1,6 @@ { "name": "@rosen-chains/ergo-explorer-network", - "version": "9.0.3", + "version": "9.0.4", "description": "ergo explorer network package for rosen ergo chain", "main": "dist/lib/index.js", "types": "dist/lib/index.d.ts", @@ -22,8 +22,8 @@ "dependencies": { "@rosen-bridge/abstract-logger": "^2.0.1", "@rosen-bridge/json-bigint": "^0.1.0", - "@rosen-chains/abstract-chain": "^10.0.0", - "@rosen-chains/ergo": "^10.0.0", + "@rosen-chains/abstract-chain": "^11.0.0", + "@rosen-chains/ergo": "^10.1.0", "@rosen-clients/ergo-explorer": "^1.1.1", "ergo-lib-wasm-nodejs": "^0.24.1", "it-all": "^3.0.1" diff --git a/packages/networks/ergo-node/CHANGELOG.md b/packages/networks/ergo-node/CHANGELOG.md index b1914730..cab95afd 100644 --- a/packages/networks/ergo-node/CHANGELOG.md +++ b/packages/networks/ergo-node/CHANGELOG.md @@ -1,5 +1,13 @@ # @rosen-chains/ergo-node-network +## 9.0.4 + +### Patch Changes + +- Update dependencies + - @rosen-chains/abstract-chain@11.0.0 + - @rosen-chains/ergo@10.1.0 + ## 9.0.3 ### Patch Changes diff --git a/packages/networks/ergo-node/package.json b/packages/networks/ergo-node/package.json index 9ae6676c..5bab4416 100644 --- a/packages/networks/ergo-node/package.json +++ b/packages/networks/ergo-node/package.json @@ -1,6 +1,6 @@ { "name": "@rosen-chains/ergo-node-network", - "version": "9.0.3", + "version": "9.0.4", "description": "ergo node network package for rosen ergo chain", "main": "dist/lib/index.js", "types": "dist/lib/index.d.ts", @@ -22,8 +22,8 @@ "dependencies": { "@rosen-bridge/json-bigint": "^0.1.0", "@rosen-bridge/abstract-logger": "^2.0.1", - "@rosen-chains/abstract-chain": "^10.0.0", - "@rosen-chains/ergo": "^10.0.0", + "@rosen-chains/abstract-chain": "^11.0.0", + "@rosen-chains/ergo": "^10.1.0", "@rosen-clients/ergo-node": "^1.1.1", "ergo-lib-wasm-nodejs": "^0.24.1", "it-all": "^3.0.1" diff --git a/packages/networks/evm-rpc/CHANGELOG.md b/packages/networks/evm-rpc/CHANGELOG.md index cee7b402..411613e8 100644 --- a/packages/networks/evm-rpc/CHANGELOG.md +++ b/packages/networks/evm-rpc/CHANGELOG.md @@ -1,5 +1,13 @@ # @rosen-chains/evm-rpc +## 2.1.8 + +### Patch Changes + +- Update dependencies + - @rosen-chains/abstract-chain@11.0.0 + - @rosen-chains/evm@5.1.0 + ## 2.1.7 ### Patch Changes diff --git a/packages/networks/evm-rpc/package.json b/packages/networks/evm-rpc/package.json index 7b2d0814..fbd42356 100644 --- a/packages/networks/evm-rpc/package.json +++ b/packages/networks/evm-rpc/package.json @@ -1,6 +1,6 @@ { "name": "@rosen-chains/evm-rpc", - "version": "2.1.7", + "version": "2.1.8", "description": "A package to be used as network api provider for @rosen-chains/evm package", "repository": "https://github.com/rosen-bridge/rosen-chains", "license": "CC0-1.0", @@ -35,8 +35,8 @@ "dependencies": { "@rosen-bridge/abstract-logger": "^2.0.1", "@rosen-bridge/evm-address-tx-extractor": "^1.0.3", - "@rosen-chains/abstract-chain": "^10.0.0", - "@rosen-chains/evm": "^5.0.0", + "@rosen-chains/abstract-chain": "^11.0.0", + "@rosen-chains/evm": "^5.1.0", "typeorm": "^0.3.20" } }