public static MeMarketOrderFeeModel ToMeModel(this MarketOrderFeeModel model)
 {
     return(MeMarketOrderFeeModel.Create(
                model.Type,
                model.Size,
                model.SourceClientId,
                model.TargetClientId,
                model.SizeType,
                model.AssetId.ToArray()));
 }
        public async Task <MarketOrderFeeModel[]> GetMarketOrderFees(string clientId, AssetPair assetPair,
                                                                     OrderAction orderAction)
        {
            var fee = await _feeCalculatorClient.GetMarketOrderAssetFee(clientId, assetPair.Id, assetPair.BaseAssetId,
                                                                        ToFeeOrderAction(orderAction));

            var model = new MarketOrderFeeModel
            {
                Size           = (double)fee.Amount,
                SizeType       = GetFeeSizeType(fee.Type),
                SourceClientId = clientId,
                TargetClientId = fee.TargetWalletId ?? _feeSettings.TargetClientId.Hft,
                Type           = fee.Amount == 0m
                    ? MeFeeType.NO_FEE
                    : MeFeeType.CLIENT_FEE,
                AssetId = string.IsNullOrEmpty(fee.TargetAssetId)
                    ? Array.Empty <string>()
                    : new[] { fee.TargetAssetId }
            };

            return(new[] { model });
        }