diff --git a/csharp/src/Workflow.Solana/Activities/SolanaBlockchainActivities.cs b/csharp/src/Workflow.Solana/Activities/SolanaBlockchainActivities.cs index 4ec09a28..853f56a4 100644 --- a/csharp/src/Workflow.Solana/Activities/SolanaBlockchainActivities.cs +++ b/csharp/src/Workflow.Solana/Activities/SolanaBlockchainActivities.cs @@ -506,6 +506,7 @@ private static async Task GetTransactionReceiptAsync( return result; } + [Activity] public async Task SignTransactionAsync(SolanaSignTransactionRequest request) { var signedTransaction = await privateKeyProvider.SignAsync( diff --git a/csharp/src/Workflow.Solana/Helpers/EventDecoder.cs b/csharp/src/Workflow.Solana/Helpers/EventDecoder.cs index ef91c6db..a6fdf5b5 100644 --- a/csharp/src/Workflow.Solana/Helpers/EventDecoder.cs +++ b/csharp/src/Workflow.Solana/Helpers/EventDecoder.cs @@ -78,15 +78,6 @@ public static async Task GetBlockEventsAsync( continue; } - var destinationCurrency = currencies - .FirstOrDefault(x => x.Symbol == commitEvent.DestinationAsset - && network.Name == commitEvent.DestinationNetwork); - - if (destinationCurrency is null) - { - continue; - } - var sourceCurrency = network.Tokens .FirstOrDefault(x => x.Symbol == commitEvent.SourceAsset); diff --git a/csharp/src/Workflow.Solana/Helpers/SolanaTransactionBuilder.cs b/csharp/src/Workflow.Solana/Helpers/SolanaTransactionBuilder.cs index 85b4c84f..f320022d 100644 --- a/csharp/src/Workflow.Solana/Helpers/SolanaTransactionBuilder.cs +++ b/csharp/src/Workflow.Solana/Helpers/SolanaTransactionBuilder.cs @@ -11,6 +11,7 @@ using System.Text.Json; using Train.Solver.Blockchain.Solana.Programs.HTLCProgram; using Train.Solver.Blockchain.Solana.Programs.HTLCProgram.Models; +using Train.Solver.Common.Extensions; using Train.Solver.Data.Abstractions.Entities; using Train.Solver.Infrastructure.Abstractions.Models; using Train.Solver.Workflow.Abstractions.Models; @@ -24,7 +25,7 @@ public static async Task BuildHTLCLockTransactionAsync( string solverAccount, string args) { - var request = JsonSerializer.Deserialize(args); + var request = args.FromJson(); if (request is null) { @@ -117,7 +118,7 @@ public static async Task BuildHTLCRedeemTransactionAsync( string solverAccount, string args) { - var request = JsonSerializer.Deserialize(args); + var request = args.FromJson(); if (request is null) { @@ -208,7 +209,7 @@ public static async Task BuildHTLCRefundTransactionAsync( string solverAccount, string args) { - var request = JsonSerializer.Deserialize(args); + var request = args.FromJson(); if (request is null) { @@ -287,7 +288,7 @@ public static async Task BuildTransferTransactionAsync( DetailedNetworkDto network, string args) { - var request = JsonSerializer.Deserialize(args); + var request = args.FromJson(); if (request is null) { @@ -355,7 +356,7 @@ public static async Task BuildHTLCAddlockSigTransactionAs string solverAccount, string args) { - var request = JsonSerializer.Deserialize(args); + var request = args.FromJson(); if (request is null) { diff --git a/csharp/src/Workflow.Solana/Workflows/SolanaTransactionProcessor.cs b/csharp/src/Workflow.Solana/Workflows/SolanaTransactionProcessor.cs index 7b447220..1a89c5ef 100644 --- a/csharp/src/Workflow.Solana/Workflows/SolanaTransactionProcessor.cs +++ b/csharp/src/Workflow.Solana/Workflows/SolanaTransactionProcessor.cs @@ -22,7 +22,8 @@ public async Task RunAsync(TransactionRequest request, Tran { Network = request.Network, PrepareArgs = request.PrepareArgs, - Type = request.Type + Type = request.Type, + FromAddress = request.FromAddress, }), TemporalHelper.DefaultActivityOptions(request.Network.Type)); diff --git a/treasury/src/treasury/treasury.module.ts b/treasury/src/treasury/treasury.module.ts index e8415085..80d5f2cd 100644 --- a/treasury/src/treasury/treasury.module.ts +++ b/treasury/src/treasury/treasury.module.ts @@ -19,8 +19,8 @@ import { SolanaTreasuryService } from './solana/solana.service'; SolanaTreasuryService, { provide: TREASURIES, - useFactory: (evm, starknet, fuel) => [evm, starknet, fuel], - inject: [EvmTreasuryService, StarknetTreasuryService, FuelTreasuryService], + useFactory: (evm, starknet, fuel, solana) => [evm, starknet, fuel, solana], + inject: [EvmTreasuryService, StarknetTreasuryService, FuelTreasuryService, SolanaTreasuryService], }, ], exports: [TREASURIES],