Skip to content

Commit 4fc6b06

Browse files
committed
Merge branch 'Fix/all-capture-clause' into ecosystem-wallets
2 parents fd62c5f + 3baaa93 commit 4fc6b06

12 files changed

Lines changed: 70 additions & 39 deletions

File tree

Plugins/SequencePlugin/Source/SequencePlugin/Private/Marketplace/SequenceMarketplace.cpp

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -285,18 +285,18 @@ void USequenceMarketplace::ListListingsForCollectible(const FString ChainID, con
285285

286286
void USequenceMarketplace::ListAllListingsForCollectible(const FString ChainID,
287287
const FString& ContractAddress, const FString& TokenID, const FSeqCollectiblesFilter& Filter,
288-
TSuccessCallback<TArray<FSeqCollectibleOrder>> OnSuccess, const FFailureCallback& OnFailure)
288+
TSuccessCallback<TArray<FSeqOrder>> OnSuccess, const FFailureCallback& OnFailure)
289289
{
290290
const FString Args = BuildArgs<FSeqListCollectibleListingsArgs>(FSeqListCollectibleListingsArgs{ ContractAddress, TokenID, Filter, FSeqMarketplacePage::Empty()});
291-
OrderArray.Empty();
291+
RawOrderArray.Empty();
292292

293-
return ListAllListingsForCollectibleHelper(ChainID, ContractAddress, TokenID, Filter, FSeqMarketplacePage::Empty(), [this, OnSuccess](const TArray<FSeqCollectibleOrder>& Orders, const bool IsDone)
293+
return ListAllListingsForCollectibleHelper(ChainID, ContractAddress, TokenID, Filter, FSeqMarketplacePage::Empty(), [this, OnSuccess](const TArray<FSeqOrder>& Orders, const bool IsDone)
294294
{
295-
OrderArray.Append(Orders);
295+
RawOrderArray.Append(Orders);
296296

297297
if(IsDone)
298298
{
299-
OnSuccess(OrderArray);
299+
OnSuccess(RawOrderArray);
300300
}
301301
}, OnFailure);
302302
}
@@ -314,18 +314,18 @@ void USequenceMarketplace::ListOffersForCollectible(const FString ChainID, const
314314
}, OnFailure);
315315
}
316316

317-
void USequenceMarketplace::ListAllOffersForCollectible(const FString ChainID, const FString& ContractAddress, const FString& TokenID, const FSeqCollectiblesFilter& Filter, TSuccessCallback<TArray<FSeqCollectibleOrder>> OnSuccess, const FFailureCallback& OnFailure)
317+
void USequenceMarketplace::ListAllOffersForCollectible(const FString ChainID, const FString& ContractAddress, const FString& TokenID, const FSeqCollectiblesFilter& Filter, TSuccessCallback<TArray<FSeqOrder>> OnSuccess, const FFailureCallback& OnFailure)
318318
{
319319
const FString Args = BuildArgs<FSeqListCollectibleListingsArgs>(FSeqListCollectibleListingsArgs{ ContractAddress, TokenID, Filter, FSeqMarketplacePage::Empty()});
320-
OrderArray.Empty();
320+
RawOrderArray.Empty();
321321

322-
return ListAllOffersForCollectibleHelper(ChainID, ContractAddress, TokenID, Filter, FSeqMarketplacePage::Empty(), [this, OnSuccess](const TArray<FSeqCollectibleOrder>& Orders, bool IsDone)
322+
return ListAllOffersForCollectibleHelper(ChainID, ContractAddress, TokenID, Filter, FSeqMarketplacePage::Empty(), [this, OnSuccess](const TArray<FSeqOrder>& Orders, bool IsDone)
323323
{
324-
OrderArray.Append(Orders);
324+
RawOrderArray.Append(Orders);
325325

326326
if(IsDone)
327327
{
328-
OnSuccess(OrderArray);
328+
OnSuccess(RawOrderArray);
329329
}
330330
}, OnFailure);
331331
}
@@ -403,7 +403,7 @@ void USequenceMarketplace::GetCollectibleOrder(const FString ChainID, const FStr
403403

404404
void USequenceMarketplace::ListAllListingsForCollectibleHelper(const FString ChainID, const FString& ContractAddress,
405405
const FString& TokenID, const FSeqCollectiblesFilter& Filter, const FSeqMarketplacePage& Page,
406-
TFunction<void(TArray<FSeqCollectibleOrder>, bool)> OnSuccess, const FFailureCallback& OnFailure)
406+
TFunction<void(TArray<FSeqOrder>, bool)> OnSuccess, const FFailureCallback& OnFailure)
407407
{
408408
ListListingsForCollectible(ChainID, ContractAddress, TokenID, Filter, Page, [ChainID, ContractAddress, Filter, TokenID, this, OnSuccess, OnFailure](const FSeqListCollectibleListingsReturn& CollectiblesReturn)
409409
{
@@ -423,7 +423,7 @@ void USequenceMarketplace::ListAllListingsForCollectibleHelper(const FString Cha
423423

424424
void USequenceMarketplace::ListAllOffersForCollectibleHelper(const FString ChainID, const FString& ContractAddress,
425425
const FString& TokenID, const FSeqCollectiblesFilter& Filter, const FSeqMarketplacePage& Page,
426-
TFunction<void(TArray<FSeqCollectibleOrder>, bool)> OnSuccess, const FFailureCallback& OnFailure)
426+
TFunction<void(TArray<FSeqOrder>, bool)> OnSuccess, const FFailureCallback& OnFailure)
427427
{
428428
ListOffersForCollectible(ChainID, ContractAddress, TokenID, Filter, Page, [ChainID, ContractAddress, Filter, TokenID, this, OnSuccess, OnFailure](const FSeqListCollectibleOffersReturn& CollectiblesReturn)
429429
{

Plugins/SequencePlugin/Source/SequencePlugin/Private/ObjectHandler.cpp

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -170,11 +170,41 @@ bool UObjectHandler::RequestRawBase(FString URL)
170170
http_post_req->SetVerb("GET");
171171
http_post_req->SetURL(URL);
172172
http_post_req->SetTimeout(15);
173+
http_post_req->SetHeader(TEXT("Accept"), GetImageMimeType(URL));
173174
http_post_req->OnProcessRequestComplete().BindUObject(this, &UObjectHandler::HandleRequestRaw);
174175
http_post_req->ProcessRequest();
175176
return http_post_req.Get().GetStatus() == EHttpRequestStatus::Processing || http_post_req.Get().GetStatus() == EHttpRequestStatus::Succeeded;
176177
}
177178

179+
FString UObjectHandler::GetImageMimeType(const FString& URL)
180+
{
181+
FString Extension;
182+
if (URL.Split(TEXT("."), nullptr, &Extension, ESearchCase::IgnoreCase, ESearchDir::FromEnd))
183+
{
184+
Extension = Extension.ToLower();
185+
186+
if (Extension.StartsWith(TEXT("jpg")) || Extension.StartsWith(TEXT("jpeg")))
187+
return TEXT("image/jpeg");
188+
if (Extension == TEXT("png"))
189+
return TEXT("image/png");
190+
if (Extension == TEXT("bmp"))
191+
return TEXT("image/bmp");
192+
if (Extension == TEXT("gif"))
193+
return TEXT("image/gif");
194+
if (Extension == TEXT("tga"))
195+
return TEXT("image/x-tga");
196+
if (Extension == TEXT("webp"))
197+
return TEXT("image/webp");
198+
if (Extension == TEXT("heic") || Extension == TEXT("heif"))
199+
return TEXT("image/heic");
200+
if (Extension == TEXT("avif"))
201+
return TEXT("image/avif");
202+
}
203+
204+
// Default fallback if unknown or missing extension
205+
return TEXT("application/octet-stream");
206+
}
207+
178208
void UObjectHandler::RequestImage(FString URL)
179209
{
180210
this->Syncer->Increment();

Plugins/SequencePlugin/Source/SequencePlugin/Private/ObjectHandler.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -105,6 +105,8 @@ class UObjectHandler : public UObject
105105
*/
106106
bool RequestRawBase(FString URL);
107107

108+
static FString GetImageMimeType(const FString& URL);
109+
108110
public:
109111

110112
/*

Plugins/SequencePlugin/Source/SequencePlugin/Private/Provider.cpp

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -270,13 +270,13 @@ void UProvider::DeployContractWithHash(const FString& Bytecode, const FPrivateKe
270270
{
271271
const FAddress From = GetAddress(GetPublicKey(PrivKey));
272272

273-
TransactionCount(From, EBlockTag::ELatest, [=](uint64 Count)
273+
TransactionCount(From, EBlockTag::ELatest, [this, From, Bytecode, PrivKey, ChainId, OnSuccess, OnFailure](uint64 Count)
274274
{
275275
const FBlockNonce Nonce = FBlockNonce::From(IntToHexString(Count));
276276

277-
this->GetGasPrice([=](const FUnsizedData& GasPrice)
277+
this->GetGasPrice([this, From, Bytecode, PrivKey, ChainId, Nonce, OnSuccess, OnFailure](const FUnsizedData& GasPrice)
278278
{
279-
this->EstimateDeploymentGas(From, Bytecode, [=](const FUnsizedData& GasLimit)
279+
this->EstimateDeploymentGas(From, Bytecode, [this, From, Bytecode, PrivKey, ChainId, Nonce, GasPrice, OnSuccess, OnFailure](const FUnsizedData& GasLimit)
280280
{
281281
const FAddress To = FAddress::From("");
282282
const FUnsizedData Value = HexStringToBinary("");
@@ -286,7 +286,7 @@ void UProvider::DeployContractWithHash(const FString& Bytecode, const FPrivateKe
286286
const FAddress DeployedAddress = GetContractAddress(From, Nonce);
287287
const FUnsizedData SignedTransaction = Transaction.GetSignedTransaction(PrivKey, ChainId);
288288

289-
this->SendRawTransaction("0x" + SignedTransaction.ToHex(), [=](const FUnsizedData& Hash)
289+
this->SendRawTransaction("0x" + SignedTransaction.ToHex(), [OnSuccess, DeployedAddress](const FUnsizedData& Hash)
290290
{
291291
OnSuccess(DeployedAddress, Hash);
292292
}, OnFailure);
@@ -297,7 +297,7 @@ void UProvider::DeployContractWithHash(const FString& Bytecode, const FPrivateKe
297297

298298
void UProvider::DeployContract(const FString& Bytecode, const FPrivateKey& PrivKey, const int64 ChainId, const TSuccessCallback<FAddress>& OnSuccess, const FFailureCallback& OnFailure)
299299
{
300-
DeployContractWithHash(Bytecode, PrivKey, ChainId, [=](const FAddress& Address, FUnsizedData Hash)
300+
DeployContractWithHash(Bytecode, PrivKey, ChainId, [OnSuccess](const FAddress& Address, FUnsizedData Hash)
301301
{
302302
OnSuccess(Address);
303303
}, OnFailure);

Plugins/SequencePlugin/Source/SequencePlugin/Private/Subsystems/SequenceMarketplaceBP.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -172,7 +172,7 @@ void USequenceMarketplaceBP::ListListingsForCollectible(const FString& ContractA
172172

173173
void USequenceMarketplaceBP::ListAllListingsForCollectible(const FString& ContractAddress, const FString& TokenID, const FSeqCollectiblesFilter Filter, FOnListAllListingsForCollectible OnSuccess, FOnFailure OnFailure)
174174
{
175-
const TSuccessCallback<TArray<FSeqCollectibleOrder>> OnApiSuccess = [this, OnSuccess](const TArray<FSeqCollectibleOrder>& Listings)
175+
const TSuccessCallback<TArray<FSeqOrder>> OnApiSuccess = [this, OnSuccess](const TArray<FSeqOrder>& Listings)
176176
{
177177
OnSuccess.ExecuteIfBound(Listings);
178178
};
@@ -204,7 +204,7 @@ void USequenceMarketplaceBP::ListOffersForCollectible(const FString& ContractAdd
204204

205205
void USequenceMarketplaceBP::ListAllOffersForCollectible(const FString& ContractAddress, const FString& TokenID, const FSeqCollectiblesFilter Filter, FOnListAllOffersForCollectible OnSuccess, FOnFailure OnFailure)
206206
{
207-
const TSuccessCallback<TArray<FSeqCollectibleOrder>> OnApiSuccess = [this, OnSuccess](const TArray<FSeqCollectibleOrder>& Offers)
207+
const TSuccessCallback<TArray<FSeqOrder>> OnApiSuccess = [this, OnSuccess](const TArray<FSeqOrder>& Offers)
208208
{
209209
OnSuccess.ExecuteIfBound(Offers);
210210
};

Plugins/SequencePlugin/Source/SequencePlugin/Public/Marketplace/SequenceMarketplace.h

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ class SEQUENCEPLUGIN_API USequenceMarketplace : public UObject
1919
const FString PATH = "/rpc/Marketplace/";
2020

2121
TArray<FSeqCollectibleOrder> OrderArray;
22+
TArray<FSeqOrder> RawOrderArray;
2223

2324
//private functions
2425

@@ -37,8 +38,8 @@ class SEQUENCEPLUGIN_API USequenceMarketplace : public UObject
3738
void ListAllCollectibleOffersWithHighestPricedOfferFirstHelper(const FString ChainID, const FString& ContractAddress, const FSeqCollectiblesFilter& Filter, const FSeqMarketplacePage& Page, TFunction<void(TArray<FSeqCollectibleOrder>, bool)> OnSuccess, const FFailureCallback& OnFailure);
3839
void GetCollectibleOrder(FString ChainID, const FString& Endpoint, const FSeqGetCollectibleOrderArgs& Args,
3940
TSuccessCallback<FSeqCollectibleOrder> OnSuccess, const FFailureCallback& OnFailure);
40-
void ListAllListingsForCollectibleHelper(const FString ChainID, const FString& ContractAddress, const FString& TokenID, const FSeqCollectiblesFilter& Filter, const FSeqMarketplacePage& Page, TFunction<void(TArray<FSeqCollectibleOrder>, bool)> OnSuccess, const FFailureCallback& OnFailure);
41-
void ListAllOffersForCollectibleHelper(const FString ChainID, const FString& ContractAddress, const FString& TokenID, const FSeqCollectiblesFilter& Filter, const FSeqMarketplacePage& Page, TFunction<void(TArray<FSeqCollectibleOrder>, bool)> OnSuccess, const FFailureCallback& OnFailure);
41+
void ListAllListingsForCollectibleHelper(const FString ChainID, const FString& ContractAddress, const FString& TokenID, const FSeqCollectiblesFilter& Filter, const FSeqMarketplacePage& Page, TFunction<void(TArray<FSeqOrder>, bool)> OnSuccess, const FFailureCallback& OnFailure);
42+
void ListAllOffersForCollectibleHelper(const FString ChainID, const FString& ContractAddress, const FString& TokenID, const FSeqCollectiblesFilter& Filter, const FSeqMarketplacePage& Page, TFunction<void(TArray<FSeqOrder>, bool)> OnSuccess, const FFailureCallback& OnFailure);
4243

4344
public:
4445

Plugins/SequencePlugin/Source/SequencePlugin/Public/Marketplace/Structs/SeqListCollectibleListingsReturn.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ struct SEQUENCEPLUGIN_API FSeqListCollectibleListingsReturn
1414
public:
1515

1616
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Collectibles")
17-
TArray<FSeqCollectibleOrder> Listings;
17+
TArray<FSeqOrder> Listings;
1818

1919
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Collectibles")
2020
FSeqMarketplacePage Page;
@@ -36,7 +36,7 @@ struct SEQUENCEPLUGIN_API FSeqListCollectibleListingsReturn
3636

3737
// Convert CollectibleOrders array to JSON
3838
TArray<TSharedPtr<FJsonObject>> collectibleOrdersList;
39-
for (FSeqCollectibleOrder order : Listings)
39+
for (FSeqOrder order : Listings)
4040
{
4141
collectibleOrdersList.Add(order.GetJson());
4242
}

Plugins/SequencePlugin/Source/SequencePlugin/Public/Marketplace/Structs/SeqListCollectibleOffersReturn.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ struct SEQUENCEPLUGIN_API FSeqListCollectibleOffersReturn
1414
public:
1515

1616
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Collectibles")
17-
TArray<FSeqCollectibleOrder> Offers;
17+
TArray<FSeqOrder> Offers;
1818

1919
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Collectibles")
2020
FSeqMarketplacePage Page;
@@ -36,7 +36,7 @@ struct SEQUENCEPLUGIN_API FSeqListCollectibleOffersReturn
3636

3737
// Convert CollectibleOrders array to JSON
3838
TArray<TSharedPtr<FJsonObject>> collectibleOrdersList;
39-
for (FSeqCollectibleOrder order : Offers)
39+
for (FSeqOrder order : Offers)
4040
{
4141
collectibleOrdersList.Add(order.GetJson());
4242
}

Plugins/SequencePlugin/Source/SequencePlugin/Public/Subsystems/SequenceMarketplaceBP.h

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,10 @@ class SEQUENCEPLUGIN_API USequenceMarketplaceBP : public UGameInstanceSubsystem
2121
DECLARE_DYNAMIC_DELEGATE_TwoParams(FOnGetHighestPriceOfferForCollectible, FSeqTokenMetaData, TokenMetadata, FSeqOrder, Order);
2222
DECLARE_DYNAMIC_DELEGATE_TwoParams(FOnGetLowestPriceListingForCollectible, FSeqTokenMetaData, TokenMetadata, FSeqOrder, Order);
2323
DECLARE_DYNAMIC_DELEGATE_TwoParams(FOnGetHighestPriceListingForCollectible, FSeqTokenMetaData, TokenMetadata, FSeqOrder, Order);
24-
DECLARE_DYNAMIC_DELEGATE_TwoParams(FOnListListingsForCollectible, const TArray<FSeqCollectibleOrder>&, Orders, FSeqMarketplacePage, Page);
25-
DECLARE_DYNAMIC_DELEGATE_OneParam(FOnListAllListingsForCollectible, const TArray<FSeqCollectibleOrder>&, Orders);
26-
DECLARE_DYNAMIC_DELEGATE_TwoParams(FOnListOffersForCollectible, const TArray<FSeqCollectibleOrder>&, Orders, FSeqMarketplacePage, Page);
27-
DECLARE_DYNAMIC_DELEGATE_OneParam(FOnListAllOffersForCollectible, const TArray<FSeqCollectibleOrder>&, Orders);
24+
DECLARE_DYNAMIC_DELEGATE_TwoParams(FOnListListingsForCollectible, const TArray<FSeqOrder>&, Orders, FSeqMarketplacePage, Page);
25+
DECLARE_DYNAMIC_DELEGATE_OneParam(FOnListAllListingsForCollectible, const TArray<FSeqOrder>&, Orders);
26+
DECLARE_DYNAMIC_DELEGATE_TwoParams(FOnListOffersForCollectible, const TArray<FSeqOrder>&, Orders, FSeqMarketplacePage, Page);
27+
DECLARE_DYNAMIC_DELEGATE_OneParam(FOnListAllOffersForCollectible, const TArray<FSeqOrder>&, Orders);
2828
DECLARE_DYNAMIC_DELEGATE_TwoParams(FOnGetFloorOrder, FSeqTokenMetaData, TokenMetadata, FSeqOrder, Order);
2929
DECLARE_DYNAMIC_DELEGATE_OneParam(FOnFailure, FString, Error);
3030

Plugins/SequencePlugin/Source/SequencePlugin/Public/Util/Structs/BE_Enums.h

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -32,14 +32,14 @@ enum ENetwork
3232
Avalanche UMETA(DisplayName = "Avalanche"),
3333
Blast UMETA(DisplayName = "Blast"),
3434
Xai UMETA(DisplayName = "Xai"),
35-
LAOS UMETA(DisplayName = "LAOS"),
36-
Root UMETA(DisplayName = "Root Network"),
3735
Soneium UMETA(DisplayName = "Soneium"),
3836
Telos UMETA(DisplayName = "Telos"),
3937
Moonbeam UMETA(DisplayName = "Moonbeam"),
4038
Etherlink UMETA(DisplayName = "Etherlink"),
4139
XR1 UMETA(DisplayName = "XR1"),
4240
Somnia UMETA(DisplayName = "Somnia"),
41+
Monad UMETA(DisplayName = "Monad"),
42+
Incentiv UMETA(DisplayName = "Incentiv"),
4343

4444
ImmutableTestnet UMETA(DisplayName = "Immutable Testnet"),
4545
BNBSmartChainTestnet UMETA(DisplayName = "BNB Smart Chain Testnet"),
@@ -58,15 +58,13 @@ enum ENetwork
5858
SKALENebulaGamingHubTestnet UMETA(DisplayName = "SKALE Nebula Gaming Hub Testnet"),
5959
BlastSepolia UMETA(DisplayName = "Blast Sepolia"),
6060
XaiSepolia UMETA(DisplayName = "XAI Sepolia"),
61-
LAOSSigma UMETA(DisplayName = "LAOS Sigma Testnet"),
62-
RootPorcini UMETA(DisplayName = "Root Network Porcini Testnet"),
6361
TelosTestnet UMETA(DisplayName = "Telos Testnet"),
6462
MoonbaseAlpha UMETA(DisplayName = "Moonbase Alpha"),
6563
EtherlinkTestnet UMETA(DisplayName = "Etherlink Testnet"),
64+
EtherlinkShadownetTestnet UMETA(DisplayName = "Etherlink Shadownet Testnet"),
6665
MonadTestnet UMETA(DisplayName = "Monad Testnet"),
6766
SomniaTestnet UMETA(DisplayName = "Somnia Testnet"),
68-
FrequencyTestnet UMETA(DisplayName = "Frequency Testnet"),
69-
IncentivTestnet UMETA(DisplayName = "Incentiv Testnet"),
7067
IncentivTestnetV2 UMETA(DisplayName = "Incentiv Testnet v2"),
7168
SandboxTestnet UMETA(DisplayName = "Sandbox Testnet"),
69+
ArcTestnet UMETA(DisplayName = "Arc Testnet"),
7270
};

0 commit comments

Comments
 (0)