Skip to content

Commit 2751e65

Browse files
authored
Merge pull request #225 from 0xsequence/Fix/contract-wrappers-compiler
Fixed ABIElement and GetStringField compiler issues
2 parents f7d5174 + b4da9bf commit 2751e65

9 files changed

Lines changed: 82 additions & 70 deletions

File tree

Plugins/SequencePlugin/SequencePlugin.uplugin

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
{
2-
"EngineVersion":"5.4",
2+
"EngineVersion": "5.4",
33
"FileVersion": 3,
44
"Version": 3,
5-
"VersionName": "1.3",
5+
"VersionName": "1.4.0",
66
"FriendlyName": "SequencePlugin",
77
"Description": "",
88
"Category": "Sequence",
@@ -26,7 +26,7 @@
2626
"Name": "SequencePlugin",
2727
"Type": "Runtime",
2828
"LoadingPhase": "Default",
29-
"WhitelistPlatforms": [
29+
"PlatformAllowList": [
3030
"Mac",
3131
"Win64",
3232
"Android",

Plugins/SequencePlugin/Source/SequencePlugin/Private/ABI/ABI.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
#include "ABI/ABI.h"
44
#include "ABI/ABIElement.h"
55
#include "Eth/Crypto.h"
6+
#include "Internationalization/Regex.h"
67
#include "Types/BinaryData.h"
78

89
TFixedABIData ABI::UInt32(uint32 Input)

Plugins/SequencePlugin/Source/SequencePlugin/Private/Sequence/SequenceWalletQrCode.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
#include "../../Public/Sequence/SequenceWalletQrCode.h"
44

55
#include "ObjectHandler.h"
6+
#include "Misc/Base64.h"
67
#include "Util/Log.h"
78
#include "Sequence/SequenceAPI.h"
89

Plugins/SequencePlugin/Source/SequencePlugin/Private/Types/ERC1155.cpp

Lines changed: 19 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ FRawTransaction UERC1155::MakeGrantRoleTransaction(const FString& role, const FS
2929

3030
TFixedABIData ABIAccount = ABI::Address(WalletAddressBytes);
3131

32-
TArray<ABIEncodeable*> Arr;
32+
TArray<ABIElement*> Arr;
3333

3434
Arr.Add(&ABIProof);
3535
Arr.Add(&ABIAccount);
@@ -55,8 +55,7 @@ FRawTransaction UERC1155::MakeSetApprovalForAllTransaction(const FString& Oppera
5555
TFixedABIData ABIAccount = ABI::Address(WalletAddressBytes);
5656
TFixedABIData ABIApproval = ABI::Bool(Approved);
5757

58-
59-
TArray<ABIEncodeable*> Arr;
58+
TArray<ABIElement*> Arr;
6059
Arr.Add(&ABIAccount);
6160
Arr.Add(&ABIApproval);
6261

@@ -84,7 +83,7 @@ FRawTransaction UERC1155::MakeMintTransaction(const FString& ToAddress, const in
8483
TFixedABIData ABIAmount = ABI::Int32(Amount);
8584
TDynamicABIData ABIData = ABI::String(Data);
8685

87-
TArray<ABIEncodeable*> Arr;
86+
TArray<ABIElement*> Arr;
8887
Arr.Add(&ABIAccount);
8988
Arr.Add(&ABITokenId);
9089
Arr.Add(&ABIAmount);
@@ -110,23 +109,25 @@ FRawTransaction UERC1155::MakeBatchMintTransaction(const FString& ToAddress, con
110109

111110
TFixedABIData ABIAccount = ABI::Address(WalletAddressBytes);
112111

113-
TArray<ABIEncodeable*> TokenIdsArray;
112+
TArray<TSharedPtr<ABIElement>> TokenIdsArray;
114113
for (uint32 TokenId : TokenIds)
115114
{
116-
TokenIdsArray.Add(new TFixedABIData(ABI::Int32(TokenId)));
115+
const TFixedABIData* TokenIdData = new TFixedABIData(ABI::Int32(TokenId));
116+
TokenIdsArray.Add(MakeShared<TFixedABIData>(*TokenIdData));
117117
}
118118
TDynamicABIArray ABIArrayTokenIds(TokenIdsArray);
119119

120-
TArray<ABIEncodeable*> AmountsArray;
120+
TArray<TSharedPtr<ABIElement>> AmountsArray;
121121
for (uint32 Amount : Amounts)
122122
{
123-
AmountsArray.Add(new TFixedABIData(ABI::Int32(Amount)));
123+
const TFixedABIData* AmountData = new TFixedABIData(ABI::Int32(Amount));
124+
AmountsArray.Add(MakeShared<TFixedABIData>(*AmountData));
124125
}
126+
125127
TDynamicABIArray ABIArrayAmounts(AmountsArray);
126-
127128
TDynamicABIData ABIData = ABI::String(Data);
128129

129-
TArray<ABIEncodeable*> Arr;
130+
TArray<ABIElement*> Arr;
130131
Arr.Add(&ABIAccount);
131132
Arr.Add(&ABIArrayTokenIds);
132133
Arr.Add(&ABIArrayAmounts);
@@ -150,7 +151,7 @@ FRawTransaction UERC1155::MakeBurnTransaction(int32 TokenId, int32 Amount)
150151

151152
TFixedABIData ABIFixedAmount = ABI::Int32(Amount);
152153

153-
TArray<ABIEncodeable*> Arr;
154+
TArray<ABIElement*> Arr;
154155

155156
Arr.Add(&ABITokenId);
156157
Arr.Add(&ABIFixedAmount);
@@ -169,21 +170,23 @@ FRawTransaction UERC1155::MakeBatchBurnTransaction(const TArray<int32>& TokenIds
169170
{
170171
FString FunctionSignature = "burn(uint256[],uint256[])";
171172

172-
TArray<ABIEncodeable*> TokenIdsArray;
173+
TArray<TSharedPtr<ABIElement>> TokenIdsArray;
173174
for (uint32 TokenId : TokenIds)
174175
{
175-
TokenIdsArray.Add(new TFixedABIData(ABI::Int32(TokenId)));
176+
const TFixedABIData* TokenIdData = new TFixedABIData(ABI::Int32(TokenId));
177+
TokenIdsArray.Add(MakeShared<TFixedABIData>(*TokenIdData));
176178
}
177179
TDynamicABIArray ABIArrayTokenIds(TokenIdsArray);
178180

179-
TArray<ABIEncodeable*> AmountsArray;
181+
TArray<TSharedPtr<ABIElement>> AmountsArray;
180182
for (uint32 Amount : Amounts)
181183
{
182-
AmountsArray.Add(new TFixedABIData(ABI::Int32(Amount)));
184+
const TFixedABIData* AmountData = new TFixedABIData(ABI::Int32(Amount));
185+
AmountsArray.Add(MakeShared<TFixedABIData>(*AmountData));
183186
}
184187
TDynamicABIArray ABIArrayAmounts(AmountsArray);
185188

186-
TArray<ABIEncodeable*> Arr;
189+
TArray<ABIElement*> Arr;
187190
Arr.Add(&ABIArrayTokenIds);
188191
Arr.Add(&ABIArrayAmounts);
189192

Plugins/SequencePlugin/Source/SequencePlugin/Private/Types/ERC1155SaleContract.cpp

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -23,27 +23,31 @@ FRawTransaction UERC1155SaleContract::MakePurchaseTransaction(const FString& ToA
2323

2424
TFixedABIData ABIAccount = ABI::Address(WalletAddressBytes);
2525

26-
TArray<ABIEncodeable*> TokenIdsArray;
26+
TArray<TSharedPtr<ABIElement>> TokenIdsArray;
2727
for (uint32 TokenId : TokenIds)
2828
{
29-
TokenIdsArray.Add(new TFixedABIData(ABI::Int32(TokenId)));
29+
const TFixedABIData* TokenIdData = new TFixedABIData(ABI::Int32(TokenId));
30+
TokenIdsArray.Add(MakeShared<TFixedABIData>(*TokenIdData));
3031
}
3132
TDynamicABIArray ABIArrayTokenIds(TokenIdsArray);
3233

33-
TArray<ABIEncodeable*> AmountsArray;
34+
TArray<TSharedPtr<ABIElement>> AmountsArray;
3435
for (uint32 Amount : Amounts)
3536
{
36-
AmountsArray.Add(new TFixedABIData(ABI::Int32(Amount)));
37+
const TFixedABIData* AmountData = new TFixedABIData(ABI::Int32(Amount));
38+
AmountsArray.Add(MakeShared<TFixedABIData>(*AmountData));
3739
}
3840
TDynamicABIArray ABIArrayAmounts(AmountsArray);
3941

40-
TArray<ABIEncodeable*> ProofArray;
42+
TArray<TSharedPtr<ABIElement>> ProofArray;
4143
for (const FString& ProofEntry : Proof)
4244
{
4345
TArray<uint8> ProofBytes;
4446
ProofBytes.SetNumUninitialized(32);
4547
FMemory::Memcpy(ProofBytes.GetData(), TCHAR_TO_UTF8(*ProofEntry), FMath::Min(ProofEntry.Len(), 32));
46-
ProofArray.Add(new TFixedABIData(ProofBytes));
48+
49+
const TFixedABIData* ProofData = new TFixedABIData(ProofBytes);
50+
ProofArray.Add(MakeShared<TFixedABIData>(*ProofData));
4751
}
4852
TDynamicABIArray ABIArrayProof(ProofArray);
4953

@@ -52,7 +56,7 @@ FRawTransaction UERC1155SaleContract::MakePurchaseTransaction(const FString& ToA
5256
TFixedABIData ABIAmount = ABI::UInt32(MaxTotal);
5357

5458

55-
TArray<ABIEncodeable*> Arr;
59+
TArray<ABIElement*> Arr;
5660
Arr.Add(&ABIAccount);
5761
Arr.Add(&ABIArrayTokenIds);
5862
Arr.Add(&ABIArrayAmounts);
@@ -74,7 +78,7 @@ FRawTransaction UERC1155SaleContract::MakePurchaseTransaction(const FString& ToA
7478
FContractCall UERC1155SaleContract::GetPaymentToken()
7579
{
7680
FString FunctionSignature = "paymentToken()";
77-
TArray<ABIEncodeable*> Arr;
81+
TArray<ABIElement*> Arr;
7882
FUnsizedData EncodedData = ABI::Encode(FunctionSignature, Arr);
7983

8084
FContractCall CallData;
@@ -87,7 +91,7 @@ FContractCall UERC1155SaleContract::GetPaymentToken()
8791
FContractCall UERC1155SaleContract::GetGlobalSaleDetails()
8892
{
8993
FString FunctionSignature = "globalSaleDetails()";
90-
TArray<ABIEncodeable*> Arr;
94+
TArray<ABIElement*> Arr;
9195
FUnsizedData EncodedData = ABI::Encode(FunctionSignature, Arr);
9296

9397
FContractCall CallData;

Plugins/SequencePlugin/Source/SequencePlugin/Private/Types/ERC20.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ FRawTransaction UERC20::MakeGrantRoleTransaction(const FString& role,const FStri
2828

2929
TFixedABIData ABIAccount = ABI::Address(WalletAddressBytes);
3030

31-
TArray<ABIEncodeable*> Arr;
31+
TArray<ABIElement*> Arr;
3232

3333
Arr.Add(&ABIProof);
3434
Arr.Add(&ABIAccount);
@@ -56,7 +56,7 @@ FRawTransaction UERC20::MakeApproveTransaction(const FString& Spender, const int
5656

5757
TFixedABIData ABITokenId = ABI::Int32(Amount);
5858

59-
TArray<ABIEncodeable*> Arr;
59+
TArray<ABIElement*> Arr;
6060
Arr.Add(&ABIAccount);
6161
Arr.Add(&ABITokenId);
6262

@@ -82,7 +82,7 @@ FRawTransaction UERC20::MakeMintTransaction(const FString& ToAddress, const int3
8282

8383
TFixedABIData ABIAmount = ABI::Int32(Amount);
8484

85-
TArray<ABIEncodeable*> Arr;
85+
TArray<ABIElement*> Arr;
8686
Arr.Add(&ABIAccount);
8787
Arr.Add(&ABIAmount);
8888

@@ -103,7 +103,7 @@ FRawTransaction UERC20::MakeBurnTransaction(const int32 Amount)
103103

104104
TFixedABIData ABIAmount = ABI::Int32(Amount);
105105

106-
TArray<ABIEncodeable*> Arr;
106+
TArray<ABIElement*> Arr;
107107
Arr.Add(&ABIAmount);
108108

109109
FUnsizedData EncodedData = ABI::Encode(FunctionSignature, Arr);

Plugins/SequencePlugin/Source/SequencePlugin/Private/Types/ERC721.cpp

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ FRawTransaction UERC721::MakeGrantRoleTransaction(const FString& role, const FSt
2828

2929
TFixedABIData ABIAccount = ABI::Address(WalletAddressBytes);
3030

31-
TArray<ABIEncodeable*> Arr;
31+
TArray<ABIElement*> Arr;
3232

3333
Arr.Add(&ABIProof);
3434
Arr.Add(&ABIAccount);
@@ -55,7 +55,7 @@ FRawTransaction UERC721::MakeApproveTransaction(const FString& ToAddress, const
5555

5656
TFixedABIData ABITokenId = ABI::Int32(TokenId);
5757

58-
TArray<ABIEncodeable*> Arr;
58+
TArray<ABIElement*> Arr;
5959
Arr.Add(&ABIAccount);
6060
Arr.Add(&ABITokenId);
6161

@@ -81,7 +81,7 @@ FRawTransaction UERC721::MakeMintTransaction(const FString& ToAddress, const int
8181

8282
TFixedABIData ABITokenId = ABI::Int32(TokenId);
8383

84-
TArray<ABIEncodeable*> Arr;
84+
TArray<ABIElement*> Arr;
8585
Arr.Add(&ABIAccount);
8686
Arr.Add(&ABITokenId);
8787

@@ -101,7 +101,7 @@ FRawTransaction UERC721::MakeBurnTransaction(const int32 TokenId)
101101

102102
TFixedABIData ABITokenId = ABI::Int32(TokenId);
103103

104-
TArray<ABIEncodeable*> Arr;
104+
TArray<ABIElement*> Arr;
105105
Arr.Add(&ABITokenId);
106106

107107
FUnsizedData EncodedData = ABI::Encode(FunctionSignature, Arr);
@@ -119,14 +119,15 @@ FRawTransaction UERC721::MakeBatchBurnTransaction(const TArray<int32>& TokenIds)
119119
{
120120
FString FunctionSignature = "burn(uint256[])";
121121

122-
TArray<ABIEncodeable*> TokenIdsArray;
122+
TArray<TSharedPtr<ABIElement>> TokenIdsArray;
123123
for (uint32 TokenId : TokenIds)
124124
{
125-
TokenIdsArray.Add(new TFixedABIData(ABI::Int32(TokenId)));
125+
const TFixedABIData* TokenIdData = new TFixedABIData(ABI::Int32(TokenId));
126+
TokenIdsArray.Add(MakeShared<TFixedABIData>(*TokenIdData));
126127
}
127128
TDynamicABIArray ABIArrayTokenIds(TokenIdsArray);
128129

129-
TArray<ABIEncodeable*> Arr;
130+
TArray<ABIElement*> Arr;
130131
Arr.Add(&ABIArrayTokenIds);
131132

132133
FUnsizedData EncodedData = ABI::Encode(FunctionSignature, Arr);

Plugins/SequencePlugin/Source/SequencePlugin/Private/Types/ERC721SaleContract.cpp

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,17 +29,19 @@ FRawTransaction UERC721SaleContract::MakePurchaseTransaction(const FString& ToAd
2929

3030
TFixedABIData ABIMaxTotal = ABI::Int32(MaxTotal);
3131

32-
TArray<ABIEncodeable*> ProofArray;
32+
TArray<TSharedPtr<ABIElement>> ProofArray;
3333
for (const FString& ProofEntry : Proof)
3434
{
3535
TArray<uint8> ProofBytes;
3636
ProofBytes.SetNumUninitialized(32);
3737
FMemory::Memcpy(ProofBytes.GetData(), TCHAR_TO_UTF8(*ProofEntry), FMath::Min(ProofEntry.Len(), 32));
38-
ProofArray.Add(new TFixedABIData(ProofBytes));
38+
39+
const TFixedABIData* ProofData = new TFixedABIData(ProofBytes);
40+
ProofArray.Add(MakeShared<TFixedABIData>(*ProofData));
3941
}
4042
TDynamicABIArray ABIArrayProof(ProofArray);
4143

42-
TArray<ABIEncodeable*> Arr;
44+
TArray<ABIElement*> Arr;
4345
Arr.Add(&ABIAccountTo);
4446
Arr.Add(&ABIAmount);
4547
Arr.Add(&ABIAddressPayment);
@@ -60,7 +62,7 @@ FRawTransaction UERC721SaleContract::MakePurchaseTransaction(const FString& ToAd
6062
FContractCall UERC721SaleContract::GetSaleDetails()
6163
{
6264
FString FunctionSignature = "saleDetails()";
63-
TArray<ABIEncodeable*> Arr;
65+
TArray<ABIElement*> Arr;
6466
FUnsizedData EncodedData = ABI::Encode(FunctionSignature, Arr);
6567

6668
FContractCall CallData;

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

Lines changed: 27 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -156,7 +156,7 @@ struct SEQUENCEPLUGIN_API FSeqOrder
156156

157157
void Setup(FJsonObject& json_in)
158158
{
159-
OrderId = json_in.GetStringField("orderId");
159+
OrderId = json_in.GetStringField(TEXT("orderId"));
160160

161161
if (!json_in.TryGetField(TEXT("marketplace")))
162162
Marketplace = EMarketplaceKind(json_in.GetIntegerField(TEXT("marketplace")));
@@ -167,25 +167,25 @@ struct SEQUENCEPLUGIN_API FSeqOrder
167167
if (!json_in.TryGetField(TEXT("status")))
168168
Status = EOrderStatus(json_in.GetIntegerField(TEXT("Status")));
169169

170-
ChainId = json_in.GetNumberField("chainId");
171-
CollectionContractAddress = json_in.GetStringField("collectionContractAddress");
172-
TokenId = json_in.GetStringField("tokenId");
173-
CreatedBy = json_in.GetStringField("createdBy");
174-
PriceAmount = json_in.GetStringField("priceAmount");
175-
PriceAmountFormatted = json_in.GetStringField("priceAmountFormatted");
176-
PriceAmountNet = json_in.GetStringField("priceAmountNet");
177-
PriceAmountNetFormatted = json_in.GetStringField("priceAmountNetFormatted");
178-
PriceCurrencyAddress = json_in.GetStringField("priceCurrencyAddress");
179-
PriceDecimals = json_in.GetNumberField("priceDecimals");
180-
PriceUSD = json_in.GetNumberField("priceUSD");
181-
QuantityInitial = json_in.GetStringField("quantityInitial");
182-
QuantityInitialFormatted = json_in.GetStringField("quantityInitialFormatted");
183-
QuantityRemaining = json_in.GetStringField("quantityRemaining");
184-
QuantityRemainingFormatted = json_in.GetStringField("quantityRemainingFormatted");
185-
QuantityAvailable = json_in.GetStringField("quantityAvailable");
186-
QuantityAvailableFormatted = json_in.GetStringField("quantityAvailableFormatted");
187-
QuantityDecimals = json_in.GetNumberField("quantityDecimals");
188-
FeeBps = json_in.GetNumberField("feeBps");
170+
ChainId = json_in.GetNumberField(TEXT("chainId"));
171+
CollectionContractAddress = json_in.GetStringField(TEXT("collectionContractAddress"));
172+
TokenId = json_in.GetStringField(TEXT("tokenId"));
173+
CreatedBy = json_in.GetStringField(TEXT("createdBy"));
174+
PriceAmount = json_in.GetStringField(TEXT("priceAmount"));
175+
PriceAmountFormatted = json_in.GetStringField(TEXT("priceAmountFormatted"));
176+
PriceAmountNet = json_in.GetStringField(TEXT("priceAmountNet"));
177+
PriceAmountNetFormatted = json_in.GetStringField(TEXT("priceAmountNetFormatted"));
178+
PriceCurrencyAddress = json_in.GetStringField(TEXT("priceCurrencyAddress"));
179+
PriceDecimals = json_in.GetNumberField(TEXT("priceDecimals"));
180+
PriceUSD = json_in.GetNumberField(TEXT("priceUSD"));
181+
QuantityInitial = json_in.GetStringField(TEXT("quantityInitial"));
182+
QuantityInitialFormatted = json_in.GetStringField(TEXT("quantityInitialFormatted"));
183+
QuantityRemaining = json_in.GetStringField(TEXT("quantityRemaining"));
184+
QuantityRemainingFormatted = json_in.GetStringField(TEXT("quantityRemainingFormatted"));
185+
QuantityAvailable = json_in.GetStringField(TEXT("quantityAvailable"));
186+
QuantityAvailableFormatted = json_in.GetStringField(TEXT("quantityAvailableFormatted"));
187+
QuantityDecimals = json_in.GetNumberField(TEXT("quantityDecimals"));
188+
FeeBps = json_in.GetNumberField(TEXT("feeBps"));
189189

190190
if (json_in.HasField(TEXT("feeBreakdown")))
191191
{
@@ -204,12 +204,12 @@ struct SEQUENCEPLUGIN_API FSeqOrder
204204
}
205205
}
206206

207-
ValidFrom = json_in.GetStringField("validFrom");
208-
ValidUntil = json_in.GetStringField("validUntil");
209-
OrderCreatedAt = json_in.GetStringField("orderCreatedAt");
210-
OrderUpdatedAt = json_in.GetStringField("orderUpdatedAt");
211-
CreatedAt = json_in.GetStringField("createdAt");
212-
UpdatedAt = json_in.GetStringField("updatedAt");
213-
DeletedAt = json_in.GetStringField("deletedAt");
207+
ValidFrom = json_in.GetStringField(TEXT("validFrom"));
208+
ValidUntil = json_in.GetStringField(TEXT("validUntil"));
209+
OrderCreatedAt = json_in.GetStringField(TEXT("orderCreatedAt"));
210+
OrderUpdatedAt = json_in.GetStringField(TEXT("orderUpdatedAt"));
211+
CreatedAt = json_in.GetStringField(TEXT("createdAt"));
212+
UpdatedAt = json_in.GetStringField(TEXT("updatedAt"));
213+
DeletedAt = json_in.GetStringField(TEXT("deletedAt"));
214214
}
215215
};

0 commit comments

Comments
 (0)