Skip to content

Commit f73ff5e

Browse files
committed
- Fixed bugs in ShowMetaData, GetMetaData & ManageMetaData methods in MetaDataHelper in OASIS.API.Core.
- Fixed bugs in MintNFTInternalAsync & FormatSuccessMessage in NFTManager in OASIS.API.ONODE.Core. - Fixed bugs in LightWizardAsync & CreateOAPPComponentsOnSTARNETAsync in OAPPs in STARNET.CLI.Lib.
1 parent c984d33 commit f73ff5e

4 files changed

Lines changed: 205 additions & 186 deletions

File tree

OASIS Architecture/NextGenSoftware.OASIS.API.Core/Helpers/MetaDataHelper.cs

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,10 @@ public static void ShowMetaData(Dictionary<string, object> metaData, int display
1515
CLIEngine.ShowMessage($"MetaData:", false);
1616

1717
foreach (string key in metaData.Keys)
18-
CLIEngine.ShowMessage(string.Concat("".PadRight(displayFieldLength), key, " = ", GetMetaValue(metaData[key])), false);
18+
{
19+
if (key != "WEB5STARNFTId" && key != "{{{newnft}}}")
20+
CLIEngine.ShowMessage(string.Concat("".PadRight(displayFieldLength), key, " = ", GetMetaValue(metaData[key])), false);
21+
}
1922
//CLIEngine.ShowMessage(string.Concat(" ", key, " = ", GetMetaValue(metaData[key])), false);
2023
}
2124
else
@@ -29,7 +32,10 @@ public static string GetMetaData(Dictionary<string, object> metaData)
2932
if (metaData != null && metaData.Keys.Count > 0)
3033
{
3134
foreach (string key in metaData.Keys)
32-
metaDataString = string.Concat(metaDataString, key, " = ", GetMetaValue(metaData[key]), ",");
35+
{
36+
if (key != "WEB5STARNFTId" && key != "{{{newnft}}}")
37+
metaDataString = string.Concat(metaDataString, key, " = ", GetMetaValue(metaData[key]), ",");
38+
}
3339

3440
if (metaDataString.Length > 2)
3541
metaDataString = metaDataString.Substring(0, metaDataString.Length - 2);
@@ -134,8 +140,11 @@ public static Dictionary<string, object> ManageMetaData(Dictionary<string, objec
134140
int i = 1;
135141
foreach (var kv in metaData)
136142
{
137-
CLIEngine.ShowMessage($" {i}. {kv.Key} = {GetMetaValue(kv.Value)}");
138-
i++;
143+
if (kv.Key != "WEB5STARNFTId" && kv.Key != "{{{newnft}}}")
144+
{
145+
CLIEngine.ShowMessage($" {i}. {kv.Key} = {GetMetaValue(kv.Value)}");
146+
i++;
147+
}
139148
}
140149
}
141150

ONODE/NextGenSoftware.OASIS.API.ONODE.Core/Managers/NFTManager.cs

Lines changed: 28 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -3681,8 +3681,8 @@ private async Task<OASISResult<IWeb4NFT>> MintNFTInternalAsync(OASISResult<IWeb4
36813681

36823682
foreach (IWeb3NFT web3NFT in existingWeb4NFT.Web3NFTs)
36833683
{
3684-
if (web3NFT.MetaData != null && web3NFT.MetaData.ContainsKey("new"))
3685-
web3NFT.MetaData.Remove("new");
3684+
if (web3NFT.MetaData != null && web3NFT.MetaData.ContainsKey("{{{newnft}}}"))
3685+
web3NFT.MetaData.Remove("{{{newnft}}}");
36863686
}
36873687
}
36883688
}
@@ -3760,11 +3760,11 @@ private string FormatSuccessMessage(IMintWeb4NFTRequest request, OASISResult<IWe
37603760

37613761
foreach (IWeb3NFT web3NFT in response.Result.Web3NFTs)
37623762
{
3763-
if (web3NFT.MetaData != null && web3NFT.MetaData.ContainsKey("new"))
3763+
if (web3NFT.MetaData != null && web3NFT.MetaData.ContainsKey("{{{newnft}}}"))
37643764
{
37653765
string sendNFTMessage = GenerateSendMessage(response.Result, request, web3NFT.SendNFTTransactionHash, "", 2);
37663766
message = string.Concat(message, $"Successfully minted the Web3 NFT on the {web3NFT.OnChainProvider.Name} provider with hash {web3NFT.MintTransactionHash} and title '{web3NFT.Title}' by AvatarId {request.MintedByAvatarId} using OASIS Minting Account {web3NFT.OASISMintWalletAddress} for price {web3NFT.Price}. NFT Address: {web3NFT.NFTTokenAddress}. The OASIS metadata is stored on the {web3NFT.OffChainProvider.Name} provider with the id {web3NFT.Id} and JSON URL {web3NFT.JSONMetaDataURL}. JSON MetaData URI Holon Id: ", response.Result.JSONMetaDataURLHolonId, ", Image URL: ", web3NFT.ImageUrl, ", Mint Date: ", web3NFT.MintedOn, ". ", sendNFTMessage, lineBreak);
3767-
web3NFT.MetaData.Remove("new");
3767+
web3NFT.MetaData.Remove("{{{newnft}}}");
37683768
}
37693769
}
37703770

@@ -3778,14 +3778,14 @@ private string FormatSuccessMessage(IMintWeb4NFTRequest request, OASISResult<IWe
37783778

37793779
foreach (IWeb3NFT web3NFT in response.Result.Web3NFTs)
37803780
{
3781-
if (web3NFT.MetaData != null && web3NFT.MetaData.ContainsKey("new"))
3781+
if (web3NFT.MetaData != null && web3NFT.MetaData.ContainsKey("{{{newnft}}}"))
37823782
message = string.Concat(message, GenerateWeb3NFTSummary(web3NFT, request, lineBreak, colWidth));
37833783
}
37843784

37853785
foreach (IWeb3NFT web3NFT in response.Result.Web3NFTs)
37863786
{
3787-
if (web3NFT.MetaData != null && web3NFT.MetaData.ContainsKey("new"))
3788-
web3NFT.MetaData.Remove("new");
3787+
if (web3NFT.MetaData != null && web3NFT.MetaData.ContainsKey("{{{newnft}}}"))
3788+
web3NFT.MetaData.Remove("{{{newnft}}}");
37893789
}
37903790

37913791
if (response.IsWarning || response.IsError)
@@ -3808,11 +3808,11 @@ private string FormatSuccessMessage(IMintWeb4NFTRequest request, OASISResult<IWe
38083808

38093809
foreach (IWeb3NFT web3NFT in response.Result.Web3NFTs)
38103810
{
3811-
if (web3NFT.MetaData != null && web3NFT.MetaData.ContainsKey("new"))
3811+
if (web3NFT.MetaData != null && web3NFT.MetaData.ContainsKey("{{{newnft}}}"))
38123812
{
38133813
string sendNFTMessage = GenerateSendMessage(response.Result, request, web3NFT.SendNFTTransactionHash, "", 2);
38143814
message = string.Concat(message, $"Successfully minted the Web3 NFT on the {web3NFT.OnChainProvider.Name} provider with hash {web3NFT.MintTransactionHash} and title '{web3NFT.Title}' by AvatarId {request.MintedByAvatarId} using OASIS Minting Account {web3NFT.OASISMintWalletAddress} for price {web3NFT.Price}. NFT Address: {web3NFT.NFTTokenAddress}. The OASIS metadata is stored on the {web3NFT.OffChainProvider.Name} provider with the id {web3NFT.Id} and JSON URL {web3NFT.JSONMetaDataURL}. JSON MetaData URI Holon Id: ", response.Result.JSONMetaDataURLHolonId, ", Image URL: ", web3NFT.ImageUrl, ", Mint Date: ", web3NFT.MintedOn, ". The GeoNFT meta data is stored on the GeoNFTMetaDataProvider ", response.Result.GeoNFTMetaDataProvider.Name, " with id ", response.Result.Id, " and was placed by the avatar with id ", response.Result.PlacedByAvatarId, sendNFTMessage, lineBreak);
3815-
web3NFT.MetaData.Remove("new");
3815+
web3NFT.MetaData.Remove("{{{newnft}}}");
38163816
}
38173817
}
38183818

@@ -3826,10 +3826,10 @@ private string FormatSuccessMessage(IMintWeb4NFTRequest request, OASISResult<IWe
38263826

38273827
foreach (IWeb3NFT web3NFT in response.Result.Web3NFTs)
38283828
{
3829-
if (web3NFT.MetaData != null && web3NFT.MetaData.ContainsKey("new"))
3829+
if (web3NFT.MetaData != null && web3NFT.MetaData.ContainsKey("{{{newnft}}}"))
38303830
{
38313831
message = string.Concat(message, GenerateWeb3NFTSummary(web3NFT, request, lineBreak, colWidth));
3832-
web3NFT.MetaData.Remove("new");
3832+
web3NFT.MetaData.Remove("{{{newnft}}}");
38333833
}
38343834
}
38353835

@@ -3855,10 +3855,10 @@ private string FormatSuccessMessage(OASISResult<IWeb4GeoSpatialNFT> response, Re
38553855

38563856
foreach (IWeb3NFT web3NFT in response.Result.Web3NFTs)
38573857
{
3858-
if (web3NFT.MetaData != null && web3NFT.MetaData.ContainsKey("new"))
3858+
if (web3NFT.MetaData != null && web3NFT.MetaData.ContainsKey("{{{newnft}}}"))
38593859
{
38603860
message = string.Concat(message, $"{summary} The meta data is stored on the GeoNFTMetaDataProvider {response.Result.GeoNFTMetaDataProvider.Name} with id {response.Result.Id} and was placed by the avatar with id {response.Result.PlacedByAvatarId}. The NFT was originally minted on the {web3NFT.OnChainProvider.Name} onchain provider with hash {web3NFT.MintTransactionHash} and title '{web3NFT.Title}' by the avatar with id {web3NFT.MintedByAvatarId} for the price of {web3NFT.Price} using OASIS Minting Account {web3NFT.OASISMintWalletAddress}. NFT Address: {web3NFT.NFTTokenAddress}. The OASIS metadata for the original NFT is stored on the {web3NFT.OffChainProvider.Name} offchain provider with the id {response.Result.OriginalWeb4OASISNFTId} and JSON URL {web3NFT.JSONMetaDataURL}. JSON MetaData URL Holon Id: ", web3NFT.JSONMetaDataURLHolonId, ", Image URL: {web3NFT.ImageUrl}, Mint Date: {web3NFT.MintedOn}.");
3861-
web3NFT.MetaData.Remove("new");
3861+
web3NFT.MetaData.Remove("{{{newnft}}}");
38623862
}
38633863
}
38643864

@@ -3873,10 +3873,10 @@ private string FormatSuccessMessage(OASISResult<IWeb4GeoSpatialNFT> response, Re
38733873

38743874
foreach (IWeb3NFT web3NFT in response.Result.Web3NFTs)
38753875
{
3876-
if (web3NFT.MetaData != null && web3NFT.MetaData.ContainsKey("new"))
3876+
if (web3NFT.MetaData != null && web3NFT.MetaData.ContainsKey("{{{newnft}}}"))
38773877
{
38783878
message = string.Concat(message, GenerateWeb3NFTSummary(web3NFT, null, lineBreak, colWidth));
3879-
web3NFT.MetaData.Remove("new");
3879+
web3NFT.MetaData.Remove("{{{newnft}}}");
38803880
}
38813881
}
38823882

@@ -3903,10 +3903,10 @@ private string FormatSuccessMessage(IImportWeb3NFTRequest request, OASISResult<I
39033903

39043904
foreach (IWeb3NFT web3NFT in response.Result.Web3NFTs)
39053905
{
3906-
if (web3NFT.MetaData != null && web3NFT.MetaData.ContainsKey("new"))
3906+
if (web3NFT.MetaData != null && web3NFT.MetaData.ContainsKey("{{{newnft}}}"))
39073907
{
39083908
message = string.Concat(message, $"Web3 NFT OnChain Provider: {web3NFT.OnChainProvider.Name}, NFTTokenAddress {web3NFT.NFTTokenAddress}, title '{web3NFT.Title}', Imported By Avatar Id: {web3NFT.ImportedByAvatarId}. NFT minted using wallet address: {web3NFT.NFTMintedUsingWalletAddress}. Price: {web3NFT.Price}. The OASIS metadata is stored on the {web3NFT.OnChainProvider.Name} provider with the id {web3NFT.Id} and JSON URL {web3NFT.JSONMetaDataURL}. JSON MetaData URI Holon Id: ", response.Result.JSONMetaDataURLHolonId, ", Image URL: ", web3NFT.ImageUrl, ", Imported Date: ", web3NFT.ImportedOn, lineBreak);
3909-
web3NFT.MetaData.Remove("new");
3909+
web3NFT.MetaData.Remove("{{{newnft}}}");
39103910
}
39113911
}
39123912
}
@@ -3918,10 +3918,10 @@ private string FormatSuccessMessage(IImportWeb3NFTRequest request, OASISResult<I
39183918

39193919
foreach (IWeb3NFT web3NFT in response.Result.Web3NFTs)
39203920
{
3921-
if (web3NFT.MetaData != null && web3NFT.MetaData.ContainsKey("new"))
3921+
if (web3NFT.MetaData != null && web3NFT.MetaData.ContainsKey("{{{newnft}}}"))
39223922
{
39233923
message = string.Concat(message, GenerateWeb3NFTSummary(web3NFT, lineBreak, colWidth));
3924-
web3NFT.MetaData.Remove("new");
3924+
web3NFT.MetaData.Remove("{{{newnft}}}");
39253925
}
39263926
}
39273927

@@ -3947,10 +3947,10 @@ private string FormatSuccessMessage(OASISResult<IWeb4NFT> response, Guid importe
39473947

39483948
foreach (IWeb3NFT web3NFT in response.Result.Web3NFTs)
39493949
{
3950-
if (web3NFT.MetaData != null && web3NFT.MetaData.ContainsKey("new"))
3950+
if (web3NFT.MetaData != null && web3NFT.MetaData.ContainsKey("{{{newnft}}}"))
39513951
{
39523952
message = string.Concat(message, $"Web3 NFT OnChain Provider: {web3NFT.OnChainProvider.Name}, NFTTokenAddress {web3NFT.NFTTokenAddress}, title '{web3NFT.Title}', Imported By Avatar Id: {web3NFT.ImportedByAvatarId}. NFT minted using wallet address: {web3NFT.NFTMintedUsingWalletAddress}. Price: {web3NFT.Price}. The OASIS metadata is stored on the {web3NFT.OnChainProvider.Name} provider with the id {web3NFT.Id} and JSON URL {web3NFT.JSONMetaDataURL}. JSON MetaData URI Holon Id: ", response.Result.JSONMetaDataURLHolonId, ", Image URL: ", web3NFT.ImageUrl, ", Imported Date: ", web3NFT.ImportedOn, lineBreak);
3953-
web3NFT.MetaData.Remove("new");
3953+
web3NFT.MetaData.Remove("{{{newnft}}}");
39543954
}
39553955
}
39563956

@@ -3964,10 +3964,10 @@ private string FormatSuccessMessage(OASISResult<IWeb4NFT> response, Guid importe
39643964

39653965
foreach (IWeb3NFT web3NFT in response.Result.Web3NFTs)
39663966
{
3967-
if (web3NFT.MetaData != null && web3NFT.MetaData.ContainsKey("new"))
3967+
if (web3NFT.MetaData != null && web3NFT.MetaData.ContainsKey("{{{newnft}}}"))
39683968
{
39693969
message = string.Concat(message, GenerateWeb3NFTSummary(web3NFT, lineBreak, colWidth));
3970-
web3NFT.MetaData.Remove("new");
3970+
web3NFT.MetaData.Remove("{{{newnft}}}");
39713971
}
39723972
}
39733973

@@ -3991,10 +3991,10 @@ private string FormatSuccessMessage(OASISResult<IWeb4GeoSpatialNFT> response, Gu
39913991

39923992
foreach (IWeb3NFT web3NFT in response.Result.Web3NFTs)
39933993
{
3994-
if (web3NFT.MetaData != null && web3NFT.MetaData.ContainsKey("new"))
3994+
if (web3NFT.MetaData != null && web3NFT.MetaData.ContainsKey("{{{newnft}}}"))
39953995
{
39963996
message = string.Concat(message, $"Web3 NFT OnChain Provider: {web3NFT.OnChainProvider.Name}, NFTTokenAddress {web3NFT.NFTTokenAddress}, title '{web3NFT.Title}', Imported By Avatar Id: {web3NFT.ImportedByAvatarId}. NFT minted using wallet address: {web3NFT.NFTMintedUsingWalletAddress}. Price: {web3NFT.Price}. The OASIS metadata is stored on the {web3NFT.OnChainProvider.Name} provider with the id {web3NFT.Id} and JSON URL {web3NFT.JSONMetaDataURL}. JSON MetaData URI Holon Id: ", response.Result.JSONMetaDataURLHolonId, ", Image URL: ", web3NFT.ImageUrl, ", Imported Date: ", web3NFT.ImportedOn, lineBreak);
3997-
web3NFT.MetaData.Remove("new");
3997+
web3NFT.MetaData.Remove("{{{newnft}}}");
39983998
}
39993999
}
40004000

@@ -4009,10 +4009,10 @@ private string FormatSuccessMessage(OASISResult<IWeb4GeoSpatialNFT> response, Gu
40094009

40104010
foreach (IWeb3NFT web3NFT in response.Result.Web3NFTs)
40114011
{
4012-
if (web3NFT.MetaData != null && web3NFT.MetaData.ContainsKey("new"))
4012+
if (web3NFT.MetaData != null && web3NFT.MetaData.ContainsKey("{{{newnft}}}"))
40134013
{
40144014
message = string.Concat(message, GenerateWeb3NFTSummary(web3NFT, lineBreak, colWidth));
4015-
web3NFT.MetaData.Remove("new");
4015+
web3NFT.MetaData.Remove("{{{newnft}}}");
40164016
}
40174017
}
40184018

@@ -4279,7 +4279,7 @@ private IWeb3NFT UpdateWeb3NFT(IWeb3NFT web3NFT, IMintWeb3NFTRequest request)
42794279
web3NFT.SaleEndDate = request.SaleEndDate;
42804280
web3NFT.Tags = request.Tags;
42814281
web3NFT.MetaData = request.MetaData;
4282-
web3NFT.MetaData["new"] = true;
4282+
web3NFT.MetaData["{{{newnft}}}"] = true;
42834283

42844284
return web3NFT;
42854285
}

ONODE/NextGenSoftware.OASIS.API.ONODE.Core/Objects/STARNET/STARNET System/STARNETCreateOptions.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ public class STARNETCreateOptions<T1, T2> : ISTARNETCreateOptions<T1, T2>
1111
{
1212
public T1 STARNETHolon { get; set; }
1313
public T2 STARNETDNA { get; set; }
14+
//public string DefaultSTARNETCategory { get; set; }
1415
public MetaTagMappings MetaTagMappings { get; set; }
1516
public bool CheckIfSourcePathExists { get; set; }
1617
public Dictionary<string, object> CustomCreateParams { get; set; }

0 commit comments

Comments
 (0)