Skip to content

Commit 0ec21e0

Browse files
authored
Merge pull request #395 from immutable/chore/update-version-1.30.0
chore: update version
2 parents 659c64e + 856dee8 commit 0ec21e0

33 files changed

+22424
-43
lines changed

src/Packages/Marketplace/Samples~/SamplesScenesScripts/Scenes/Marketplace/BridgeScene.unity

Lines changed: 5006 additions & 0 deletions
Large diffs are not rendered by default.

src/Packages/Marketplace/Samples~/SamplesScenesScripts/Scenes/Marketplace/MarketplaceScene.unity

Lines changed: 1649 additions & 0 deletions
Large diffs are not rendered by default.

src/Packages/Marketplace/Samples~/SamplesScenesScripts/Scenes/Marketplace/OnRampScene.unity

Lines changed: 6041 additions & 0 deletions
Large diffs are not rendered by default.

src/Packages/Marketplace/Samples~/SamplesScenesScripts/Scenes/Marketplace/SwapScene.unity

Lines changed: 4489 additions & 0 deletions
Large diffs are not rendered by default.
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
using System;
2+
using AltWebSocketSharp;
3+
using Immutable.Marketplace;
4+
using UnityEngine;
5+
using UnityEngine.SceneManagement;
6+
using UnityEngine.UI;
7+
using Environment = Immutable.Marketplace.Environment;
8+
9+
public class BridgeScript : MonoBehaviour
10+
{
11+
[SerializeField] private Dropdown EnvironmentDropdown;
12+
13+
[SerializeField] private InputField FromTokenAddress;
14+
[SerializeField] private InputField FromChain;
15+
[SerializeField] private InputField ToTokenAddress;
16+
[SerializeField] private InputField ToChain;
17+
18+
[SerializeField] private Button OpenButton;
19+
20+
/// <summary>
21+
/// Opens the bridge widget with specified inputs, defaulting to pre-set values when fields are empty.
22+
/// </summary>
23+
public void OpenWidget()
24+
{
25+
var environments = (Environment[])Enum.GetValues(typeof(Environment));
26+
var environment = environments[EnvironmentDropdown.value];
27+
28+
var link = LinkFactory.GenerateBridgeLink(
29+
environment: environment,
30+
queryParams: new BridgeQueryParams
31+
{
32+
FromTokenAddress = FromTokenAddress.text.IsNullOrEmpty() ? null : FromTokenAddress.text,
33+
FromChainID = FromChain.text.IsNullOrEmpty() ? null : FromChain.text,
34+
ToTokenAddress = ToTokenAddress.text.IsNullOrEmpty() ? null : ToTokenAddress.text,
35+
ToChainID = ToChain.text.IsNullOrEmpty() ? null : ToChain.text
36+
}
37+
);
38+
39+
Application.OpenURL(link);
40+
}
41+
42+
/// <summary>
43+
/// Returns to the marketplace scene.
44+
/// </summary>
45+
public void Cancel()
46+
{
47+
SceneManager.LoadScene("MarketplaceScene");
48+
}
49+
50+
}
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
using UnityEngine;
2+
using UnityEngine.SceneManagement;
3+
4+
public class MarketplaceScript : MonoBehaviour
5+
{
6+
public void OnRamp()
7+
{
8+
SceneManager.LoadScene("OnRampScene");
9+
}
10+
11+
public void Swap()
12+
{
13+
SceneManager.LoadScene("SwapScene");
14+
}
15+
16+
public void Bridge()
17+
{
18+
SceneManager.LoadScene("BridgeScene");
19+
}
20+
21+
}
Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
using System;
2+
using System.Collections.Generic;
3+
using AltWebSocketSharp;
4+
using Immutable.Marketplace;
5+
using UnityEngine;
6+
using UnityEngine.SceneManagement;
7+
using UnityEngine.UI;
8+
using Environment = Immutable.Marketplace.Environment;
9+
10+
public class OnRampScript : MonoBehaviour
11+
{
12+
[SerializeField] private Dropdown EnvironmentDropdown;
13+
[SerializeField] private InputField EmailInput;
14+
[SerializeField] private InputField AddressInput;
15+
16+
[SerializeField] private InputField FiatCurrencyInput;
17+
[SerializeField] private InputField FiatAmountInput;
18+
[SerializeField] private InputField CryptoCurrency;
19+
[SerializeField] private InputField CryptoCurrencyList;
20+
21+
[SerializeField] private Button OpenButton;
22+
23+
private void Start()
24+
{
25+
OpenButton.interactable = false;
26+
27+
// Enable the button when email and wallet address fields are populated
28+
EmailInput.onValueChanged.AddListener(_ => ValidateInputFields());
29+
AddressInput.onValueChanged.AddListener(_ => ValidateInputFields());
30+
}
31+
32+
/// <summary>
33+
/// Validates input fields and enables the open button if both email and address are entered.
34+
/// </summary>
35+
private void ValidateInputFields()
36+
{
37+
OpenButton.interactable = !EmailInput.text.IsNullOrEmpty() && !AddressInput.text.IsNullOrEmpty();
38+
}
39+
40+
/// <summary>
41+
/// Opens the on-ramp widget with specified inputs, defaulting to pre-set values when fields are empty.
42+
/// </summary>
43+
public void OpenWidget()
44+
{
45+
var environments = (Environment[])Enum.GetValues(typeof(Environment));
46+
var environment = environments[EnvironmentDropdown.value];
47+
var email = EmailInput.text;
48+
var walletAddress = AddressInput.text;
49+
50+
var link = LinkFactory.GenerateOnRampLink(
51+
environment: environment,
52+
email: email,
53+
walletAddress: walletAddress,
54+
queryParams: new OnRampQueryParams
55+
{
56+
DefaultFiatCurrency = FiatCurrencyInput.text.IsNullOrEmpty() ? "USD" : FiatCurrencyInput.text,
57+
DefaultFiatAmount = FiatAmountInput.text.IsNullOrEmpty() ? "50" : FiatAmountInput.text,
58+
DefaultCryptoCurrency = CryptoCurrency.text.IsNullOrEmpty() ? "IMX" : CryptoCurrency.text,
59+
CryptoCurrencyList = CryptoCurrencyList.text.IsNullOrEmpty() ? "imx,eth,usdc" : CryptoCurrencyList.text
60+
},
61+
extraQueryParams: new Dictionary<string, string> {
62+
{"themeColor", "000000"}
63+
}
64+
);
65+
66+
Application.OpenURL(link);
67+
}
68+
69+
/// <summary>
70+
/// Returns to the marketplace scene.
71+
/// </summary>
72+
public void Cancel()
73+
{
74+
SceneManager.LoadScene("MarketplaceScene");
75+
}
76+
}
Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
using System;
2+
using AltWebSocketSharp;
3+
using Immutable.Marketplace;
4+
using UnityEngine;
5+
using UnityEngine.SceneManagement;
6+
using UnityEngine.UI;
7+
using Environment = Immutable.Marketplace.Environment;
8+
9+
public class SwapScript : MonoBehaviour
10+
{
11+
[SerializeField] private Dropdown EnvironmentDropdown;
12+
[SerializeField] private InputField KeyInput;
13+
14+
[SerializeField] private InputField FromTokenAddress;
15+
[SerializeField] private InputField ToTokenAddress;
16+
17+
[SerializeField] private Button OpenButton;
18+
19+
private void Start()
20+
{
21+
OpenButton.interactable = false;
22+
23+
// Enable the button when publishable key field is populated
24+
KeyInput.onValueChanged.AddListener(_ => ValidateInputFields());
25+
}
26+
27+
/// <summary>
28+
/// Validates input field and enables the open button if publishable key is entered.
29+
/// </summary>
30+
private void ValidateInputFields()
31+
{
32+
OpenButton.interactable = !KeyInput.text.IsNullOrEmpty();
33+
}
34+
35+
/// <summary>
36+
/// Opens the swap widget with specified inputs, defaulting to pre-set values when fields are empty.
37+
/// </summary>
38+
public void OpenWidget()
39+
{
40+
var environments = (Environment[])Enum.GetValues(typeof(Environment));
41+
var environment = environments[EnvironmentDropdown.value];
42+
var publishableKey = KeyInput.text;
43+
44+
var link = LinkFactory.GenerateSwapLink(
45+
environment: environment,
46+
publishableKey: publishableKey,
47+
queryParams: new SwapQueryParams
48+
{
49+
FromTokenAddress = FromTokenAddress.text.IsNullOrEmpty() ? null : FromTokenAddress.text,
50+
ToTokenAddress = ToTokenAddress.text.IsNullOrEmpty() ? null : ToTokenAddress.text
51+
}
52+
);
53+
54+
Application.OpenURL(link);
55+
}
56+
57+
/// <summary>
58+
/// Returns to the marketplace scene.
59+
/// </summary>
60+
public void Cancel()
61+
{
62+
SceneManager.LoadScene("MarketplaceScene");
63+
}
64+
65+
}

src/Packages/Marketplace/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "com.immutable.marketplace",
3-
"version": "1.29.1",
3+
"version": "1.30.0",
44
"description": "Marketplace package for the Immutable SDK for Unity",
55
"displayName": "Immutable Marketplace",
66
"author": {

src/Packages/Passport/Runtime/Scripts/Private/Helpers/SdkVersionInfoHelpers.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ public class SdkVersionInfoHelpers
44
{
55
public static string GetSdkVersionInfo()
66
{
7-
return "1.29.1";
7+
return "1.30.0";
88
}
99
}
1010
}

0 commit comments

Comments
 (0)