diff --git a/src/Packages/Passport/Documentation~/DOCUMENTATION.md b/src/Packages/Passport/Documentation~/DOCUMENTATION.md index cc3e4370b..fb47b4343 100644 --- a/src/Packages/Passport/Documentation~/DOCUMENTATION.md +++ b/src/Packages/Passport/Documentation~/DOCUMENTATION.md @@ -1,4 +1,3 @@ # Documentation -* [Immutable X](https://docs.immutable.com/docs/x/sdks/unity) -* [Immutable zkEVM](https://docs.immutable.com/docs/zkEVM/sdks/unity) \ No newline at end of file +[Immutable](https://docs.immutable.com/docs/immutable) \ No newline at end of file diff --git a/src/Packages/Passport/Private.meta b/src/Packages/Passport/Private.meta deleted file mode 100644 index 452470542..000000000 --- a/src/Packages/Passport/Private.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: c7a5ad71040aa964b890d5cc82c42217 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/src/Packages/Passport/Private/Helpers.meta b/src/Packages/Passport/Private/Helpers.meta deleted file mode 100644 index 8b02725b6..000000000 --- a/src/Packages/Passport/Private/Helpers.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: a6136de6bac990f40bd647693397e104 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/src/Packages/Passport/Runtime/Scripts/Private/Event/AnalyticsEvent.cs b/src/Packages/Passport/Runtime/Scripts/Private/Event/AnalyticsEvent.cs index 85da14af0..7914bfecb 100644 --- a/src/Packages/Passport/Runtime/Scripts/Private/Event/AnalyticsEvent.cs +++ b/src/Packages/Passport/Runtime/Scripts/Private/Event/AnalyticsEvent.cs @@ -11,7 +11,7 @@ namespace Immutable.Passport.Event public class PassportAnalytics { public const string TRACK = "track"; - public const string MODULE_NAME = "unitySdk"; + private const string MODULE_NAME = "unitySdk"; public static class EventName { @@ -26,7 +26,7 @@ public static class EventName public const string COMPLETE_LOGOUT_PKCE = "performedLogoutPkce"; } - public static class Properties + private static class Properties { public const string SUCCESS = "succeeded"; } @@ -36,15 +36,12 @@ public async UniTask Track(IBrowserCommunicationsManager communicationsManager, { try { - if (properties == null) - { - properties = new Dictionary(); - } + properties ??= new Dictionary(); if (success != null) { properties.Add(Properties.SUCCESS, success); } - string json = JsonUtility.ToJson(new TrackData() + var json = JsonUtility.ToJson(new TrackData { moduleName = MODULE_NAME, eventName = eventName, diff --git a/src/Packages/Passport/Runtime/Scripts/Private/Helpers/JsonHelpers.cs b/src/Packages/Passport/Runtime/Scripts/Private/Helpers/JsonHelpers.cs index 41d5c6c2d..9e76c07f9 100644 --- a/src/Packages/Passport/Runtime/Scripts/Private/Helpers/JsonHelpers.cs +++ b/src/Packages/Passport/Runtime/Scripts/Private/Helpers/JsonHelpers.cs @@ -25,24 +25,6 @@ public static class JsonExtensions } } - public static string ToJson(this T[] array) - { - // Need a wrapper to serialise arrays - var wrapper = new Wrapper { Items = array }; - var wrapped = JsonUtility.ToJson(wrapper); - - // Remove the wrapper - return wrapped.ReplaceFirst("{\"Items\":", "").TrimEnd('}'); - } - - private static string ReplaceFirst(this string source, string search, string replace) - { - var pos = source.IndexOf(search); - return pos < 0 - ? source - : source.Substring(0, pos) + replace + source.Substring(pos + search.Length); - } - public static string ToJson(this IDictionary dictionary) { // JsonUtility cannot serialise dictionary, but not using newtonsoft json as it doesn't diff --git a/src/Packages/Passport/Runtime/Scripts/Private/Helpers/UriHelpers.cs b/src/Packages/Passport/Runtime/Scripts/Private/Helpers/UriHelpers.cs index 1336915db..12baa6c50 100644 --- a/src/Packages/Passport/Runtime/Scripts/Private/Helpers/UriHelpers.cs +++ b/src/Packages/Passport/Runtime/Scripts/Private/Helpers/UriHelpers.cs @@ -12,11 +12,11 @@ public static class UriExtensions { try { - string query = uri.Query; - string[] queryParameters = query.Split(new char[] { '?', '&' }); - for (int i = 0; i < queryParameters.Length; i++) + var query = uri.Query; + var queryParameters = query.Split(new char[] { '?', '&' }); + foreach (var queryParameter in queryParameters) { - string[] keyValue = queryParameters[i].Split('='); + string[] keyValue = queryParameter.Split('='); if (keyValue[0] == key) { return keyValue[1]; diff --git a/src/Packages/Passport/Runtime/Scripts/Private/Model/Request/NftTransferDetails.cs b/src/Packages/Passport/Runtime/Scripts/Private/Model/Request/NftTransferDetails.cs deleted file mode 100644 index 2bd1b3eee..000000000 --- a/src/Packages/Passport/Runtime/Scripts/Private/Model/Request/NftTransferDetails.cs +++ /dev/null @@ -1,33 +0,0 @@ -using System; - -namespace Immutable.Passport.Model -{ - [Serializable] - public class NftTransferDetails - { - /** - * Ethereum address of the receiving user - */ - public string receiver; - /** - * The token ID - */ - public string tokenId; - - /** - * The token contract address - */ - public string tokenAddress; - - public NftTransferDetails( - string receiver, - string tokenId, - string tokenAddress - ) - { - this.receiver = receiver; - this.tokenId = tokenId; - this.tokenAddress = tokenAddress; - } - } -} \ No newline at end of file diff --git a/src/Packages/Passport/Runtime/Scripts/Private/Model/Request/NftTransferDetails.cs.meta b/src/Packages/Passport/Runtime/Scripts/Private/Model/Request/NftTransferDetails.cs.meta deleted file mode 100644 index c4c8d33ac..000000000 --- a/src/Packages/Passport/Runtime/Scripts/Private/Model/Request/NftTransferDetails.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: bc5fb702e698a423eb5e555633073bba -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/src/Packages/Passport/Runtime/Scripts/Private/Model/Request/UnsignedTransferRequest.cs b/src/Packages/Passport/Runtime/Scripts/Private/Model/Request/UnsignedTransferRequest.cs deleted file mode 100644 index 68852ca5d..000000000 --- a/src/Packages/Passport/Runtime/Scripts/Private/Model/Request/UnsignedTransferRequest.cs +++ /dev/null @@ -1,67 +0,0 @@ -using System; - -namespace Immutable.Passport.Model -{ - [Serializable] - public class UnsignedTransferRequest - { - /** - * Ethereum address of the receiving user - */ - public string receiver; - - /** - * The type of the token being transferred, either ETH, ERC20 or ERC721 - */ - public string type; - - /** - * The amount of tokens being transferred. For ETH the amount is in unit Wei. - */ - public string amount; - - /** - * The token ID - */ - public string? tokenId; - - /** - * The token address - */ - public string? tokenAddress; - - public UnsignedTransferRequest( - string type, - string amount, - string receiver, - string? tokenId = null, - string? tokenAddress = null - ) - { - this.type = type; - this.amount = amount; - this.tokenId = tokenId; - this.tokenAddress = tokenAddress; - this.receiver = receiver; - } - - - /** - * Receiver's ETH address and amount in unit Wei - */ - public static UnsignedTransferRequest ETH(string receiver, string amount) - { - return new UnsignedTransferRequest("ETH", amount, receiver); - } - - public static UnsignedTransferRequest ERC20(string receiver, int amount, string tokenAddress) - { - return new UnsignedTransferRequest("ERC20", $"{amount}", receiver, null, tokenAddress); - } - - public static UnsignedTransferRequest ERC721(string receiver, string tokenId, string tokenAddress) - { - return new UnsignedTransferRequest("ERC721", "1", receiver, tokenId, tokenAddress); - } - } -} \ No newline at end of file diff --git a/src/Packages/Passport/Runtime/Scripts/Private/Model/Request/UnsignedTransferRequest.cs.meta b/src/Packages/Passport/Runtime/Scripts/Private/Model/Request/UnsignedTransferRequest.cs.meta deleted file mode 100644 index 8cac1ea1e..000000000 --- a/src/Packages/Passport/Runtime/Scripts/Private/Model/Request/UnsignedTransferRequest.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: e775ede4a352549f5b655a1a9d914783 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/src/Packages/Passport/Runtime/Scripts/Private/PassportImpl.cs b/src/Packages/Passport/Runtime/Scripts/Private/PassportImpl.cs index df6fbd01e..ef80f876f 100644 --- a/src/Packages/Passport/Runtime/Scripts/Private/PassportImpl.cs +++ b/src/Packages/Passport/Runtime/Scripts/Private/PassportImpl.cs @@ -274,7 +274,7 @@ public async UniTask CompleteLoginPKCEFlow(string uriString) } else { - var request = new ConnectPKCERequest() + var request = new ConnectPKCERequest { authorizationCode = authCode, state = state diff --git a/src/Packages/Passport/Runtime/Scripts/Private/Uwb/UwbLogConfig.cs b/src/Packages/Passport/Runtime/Scripts/Private/Uwb/UwbLogConfig.cs index e53759019..ddc967103 100644 --- a/src/Packages/Passport/Runtime/Scripts/Private/Uwb/UwbLogConfig.cs +++ b/src/Packages/Passport/Runtime/Scripts/Private/Uwb/UwbLogConfig.cs @@ -7,7 +7,7 @@ namespace Immutable.Passport { internal static class UwbLogConfig { - internal static void ApplyTo(WebBrowserClient browserClient) + internal static void ApplyTo(WebBrowserClient? browserClient) { if (browserClient == null) { diff --git a/src/Packages/Passport/Runtime/ThirdParty/Gree/Assets/Plugins/unity-webview-webgl-plugin.jslib b/src/Packages/Passport/Runtime/ThirdParty/Gree/Assets/Plugins/unity-webview-webgl-plugin.jslib deleted file mode 100644 index 17d217258..000000000 --- a/src/Packages/Passport/Runtime/ThirdParty/Gree/Assets/Plugins/unity-webview-webgl-plugin.jslib +++ /dev/null @@ -1,26 +0,0 @@ -mergeInto(LibraryManager.library, { - _gree_unity_webview_init: function(name) { - var stringify = (UTF8ToString === undefined) ? Pointer_stringify : UTF8ToString; - unityWebView.init(stringify(name)); - }, - - _gree_unity_webview_loadURL: function(name, url) { - var stringify = (UTF8ToString === undefined) ? Pointer_stringify : UTF8ToString; - unityWebView.loadURL(stringify(name), stringify(url)); - }, - - _gree_unity_webview_evaluateJS: function(name, js) { - var stringify = (UTF8ToString === undefined) ? Pointer_stringify : UTF8ToString; - unityWebView.evaluateJS(stringify(name), stringify(js)); - }, - - _gree_unity_webview_destroy: function(name) { - var stringify = (UTF8ToString === undefined) ? Pointer_stringify : UTF8ToString; - unityWebView.destroy(stringify(name)); - }, - - _gree_unity_webview_launchAuthURL: function(name, url) { - var stringify = (UTF8ToString === undefined) ? Pointer_stringify : UTF8ToString; - unityWebView.launchAuthURL(stringify(name), stringify(url)); - }, -}); \ No newline at end of file diff --git a/src/Packages/Passport/Runtime/ThirdParty/Gree/Assets/Plugins/unity-webview-webgl-plugin.jslib.meta b/src/Packages/Passport/Runtime/ThirdParty/Gree/Assets/Plugins/unity-webview-webgl-plugin.jslib.meta deleted file mode 100644 index 7461bf627..000000000 --- a/src/Packages/Passport/Runtime/ThirdParty/Gree/Assets/Plugins/unity-webview-webgl-plugin.jslib.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: f147ed059f234b80a2b7e3144261d557 -timeCreated: 1725602488 \ No newline at end of file diff --git a/src/Packages/Passport/Tests/Runtime/Scripts/Helpers/JsonHelpersTests.cs b/src/Packages/Passport/Tests/Runtime/Scripts/Helpers/JsonHelpersTests.cs index bff306fd4..8476b6b7f 100644 --- a/src/Packages/Passport/Tests/Runtime/Scripts/Helpers/JsonHelpersTests.cs +++ b/src/Packages/Passport/Tests/Runtime/Scripts/Helpers/JsonHelpersTests.cs @@ -7,22 +7,6 @@ namespace Immutable.Passport.Core [TestFixture] public class JsonHelpersTests { - [Test] - public void ArrayToJson() - { - var array = new[] { "a", "b", "c" }; - Assert.AreEqual("[\"a\",\"b\",\"c\"]", array.ToJson()); - - array = new[] { "Items" }; - Assert.AreEqual("[\"Items\"]", array.ToJson()); - - array = new[] { "{Items:" }; - Assert.AreEqual("[\"{Items:\"]", array.ToJson()); - - array = new string[] { }; - Assert.AreEqual("[]", array.ToJson()); - } - [Test] public void DictionaryToJson() { diff --git a/src/Packages/Passport/WebGLTemplates~/callback.html b/src/Packages/Passport/WebGLTemplates~/callback.html deleted file mode 100644 index 12fc73f0d..000000000 --- a/src/Packages/Passport/WebGLTemplates~/callback.html +++ /dev/null @@ -1,24 +0,0 @@ - - - - - - Unity WebGL Player | Immutable SDK Sample App - - - - - - -
-
Logging in
-
- - - diff --git a/src/Packages/Passport/WebGLTemplates~/logout.html b/src/Packages/Passport/WebGLTemplates~/logout.html deleted file mode 100644 index b31bc36da..000000000 --- a/src/Packages/Passport/WebGLTemplates~/logout.html +++ /dev/null @@ -1,24 +0,0 @@ - - - - - - Unity WebGL Player | Immutable SDK Sample App - - - - - - -
-
Logging out
-
- - - diff --git a/src/Packages/Passport/WebGLTemplates~/unity-webview.js b/src/Packages/Passport/WebGLTemplates~/unity-webview.js deleted file mode 100644 index b7cb43929..000000000 --- a/src/Packages/Passport/WebGLTemplates~/unity-webview.js +++ /dev/null @@ -1,70 +0,0 @@ -var unityWebView = - { - loaded: [], - - init: function(name) { - $containers = $('.webviewContainer'); - if ($containers.length === 0) { - $('
') - .appendTo($('#unity-container')); - } - var $last = $('.webviewContainer:last'); - var clonedTop = parseInt($last.css('top')) - 100; - var $clone = $last.clone().insertAfter($last).css('top', clonedTop + '%'); - var $iframe = - $('') - .attr('id', 'webview_' + name) - .appendTo($last) - $iframe.on('load', function () { - $(this).attr('loaded', 'true'); - - var js = `window.Unity = { - call:function(msg) { - parent.unityWebView.sendMessage('${name}', msg); - } - };`; - - this.contentWindow.eval(js); - - window.addEventListener('message', function(event) { - if ((event.data.type === 'callback' || event.data.type === 'logout') && event.isTrusted) { - unityInstance.SendMessage(name, 'CallOnAuth', event.data.url); - } - }, false); - }); - return $iframe; - }, - - sendMessage: function (name, message) { - unityInstance.SendMessage(name, "CallFromJS", message); - }, - - loadURL: function(name, url) { - var baseUrl = window.location.origin + window.location.pathname.replace(/\/[^\/]*$/, ""); - const host = window.location.origin.includes('localhost') ? window.location.origin : baseUrl; - this.iframe(name).attr('loaded', 'false')[0].contentWindow.location.replace(host + url); - }, - - evaluateJS: function (name, js) { - $iframe = this.iframe(name); - if ($iframe.attr('loaded') === 'true') { - $iframe[0].contentWindow.eval(js); - } else { - $iframe.on('load', function(){ - $(this)[0].contentWindow.eval(js); - }); - } - }, - - destroy: function (name) { - this.iframe(name).parent().parent().remove(); - }, - - iframe: function (name) { - return $('#webview_' + name); - }, - - launchAuthURL: function(name, url) { - window.open(url, '_blank', 'width=460,height=660'); - }, - };