diff --git a/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Prefabs/Web3Auth.prefab b/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Prefabs/Web3Auth.prefab
index bf66b059b..ad332e5f2 100644
--- a/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Prefabs/Web3Auth.prefab
+++ b/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Prefabs/Web3Auth.prefab
@@ -279,7 +279,7 @@ Canvas:
m_AdditionalShaderChannelsFlag: 25
m_UpdateRectTransformForStandalone: 0
m_SortingLayerID: 0
- m_SortingOrder: 0
+ m_SortingOrder: 30
m_TargetDisplay: 0
--- !u!114 &8895056018511876660
MonoBehaviour:
@@ -463,6 +463,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 7659d83bbcad93b4e9eae4bb0dfdeb48, type: 3}
m_Name:
m_EditorClassIdentifier:
+ loadingText: {fileID: 0}
spinnerTransform: {fileID: 2637764744379664249}
spinSpeed: 1
--- !u!222 &1963591674054450660
diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Prefabs/Connect.prefab b/Packages/io.chainsafe.web3-unity/Runtime/Prefabs/Connect.prefab
index 7da593223..1e88cdebc 100644
--- a/Packages/io.chainsafe.web3-unity/Runtime/Prefabs/Connect.prefab
+++ b/Packages/io.chainsafe.web3-unity/Runtime/Prefabs/Connect.prefab
@@ -455,7 +455,6 @@ RectTransform:
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- - {fileID: 5658499974514101114}
- {fileID: 7402727736623120682}
m_Father: {fileID: 6126508098153006505}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
@@ -774,81 +773,6 @@ CanvasRenderer:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2435058774571067995}
m_CullTransparentMesh: 1
---- !u!1 &2848399091128474601
-GameObject:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- serializedVersion: 6
- m_Component:
- - component: {fileID: 699057321551839701}
- - component: {fileID: 4321378254350993253}
- - component: {fileID: 8894999184897913203}
- m_Layer: 5
- m_Name: Spinner
- m_TagString: Untagged
- m_Icon: {fileID: 0}
- m_NavMeshLayer: 0
- m_StaticEditorFlags: 0
- m_IsActive: 1
---- !u!224 &699057321551839701
-RectTransform:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 2848399091128474601}
- m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
- m_LocalPosition: {x: 0, y: 0, z: 0}
- m_LocalScale: {x: 1, y: 1, z: 1}
- m_ConstrainProportionsScale: 0
- m_Children: []
- m_Father: {fileID: 5658499974514101114}
- m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
- m_AnchorMin: {x: 0.35, y: 0.35}
- m_AnchorMax: {x: 0.65, y: 0.65}
- m_AnchoredPosition: {x: 0, y: 0}
- m_SizeDelta: {x: -100, y: -100}
- m_Pivot: {x: 0.5, y: 0.5}
---- !u!222 &4321378254350993253
-CanvasRenderer:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 2848399091128474601}
- m_CullTransparentMesh: 1
---- !u!114 &8894999184897913203
-MonoBehaviour:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 2848399091128474601}
- m_Enabled: 1
- m_EditorHideFlags: 0
- m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
- m_Name:
- m_EditorClassIdentifier:
- m_Material: {fileID: 0}
- m_Color: {r: 1, g: 1, b: 0.28235295, a: 1}
- m_RaycastTarget: 1
- m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
- m_Maskable: 1
- m_OnCullStateChanged:
- m_PersistentCalls:
- m_Calls: []
- m_Sprite: {fileID: 21300000, guid: 42cfe2a53c45b954b9f91b5db202b300, type: 3}
- m_Type: 0
- m_PreserveAspect: 1
- m_FillCenter: 1
- m_FillMethod: 4
- m_FillAmount: 1
- m_FillClockwise: 1
- m_FillOrigin: 0
- m_UseSpriteMesh: 0
- m_PixelsPerUnitMultiplier: 1
--- !u!1 &2922682494248757570
GameObject:
m_ObjectHideFlags: 0
@@ -1134,81 +1058,6 @@ MonoBehaviour:
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
---- !u!1 &6633790788666939123
-GameObject:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- serializedVersion: 6
- m_Component:
- - component: {fileID: 820951878307977336}
- - component: {fileID: 2250762981425675227}
- - component: {fileID: 173910432137772528}
- m_Layer: 5
- m_Name: Background
- m_TagString: Untagged
- m_Icon: {fileID: 0}
- m_NavMeshLayer: 0
- m_StaticEditorFlags: 0
- m_IsActive: 1
---- !u!224 &820951878307977336
-RectTransform:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 6633790788666939123}
- m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
- m_LocalPosition: {x: 0, y: 0, z: 0}
- m_LocalScale: {x: 1, y: 1, z: 1}
- m_ConstrainProportionsScale: 0
- m_Children: []
- m_Father: {fileID: 5658499974514101114}
- m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
- m_AnchorMin: {x: 0, y: 0}
- m_AnchorMax: {x: 1, y: 1}
- m_AnchoredPosition: {x: 0, y: 0}
- m_SizeDelta: {x: 0, y: 0}
- m_Pivot: {x: 0.5, y: 0.5}
---- !u!222 &2250762981425675227
-CanvasRenderer:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 6633790788666939123}
- m_CullTransparentMesh: 1
---- !u!114 &173910432137772528
-MonoBehaviour:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 6633790788666939123}
- m_Enabled: 1
- m_EditorHideFlags: 0
- m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
- m_Name:
- m_EditorClassIdentifier:
- m_Material: {fileID: 0}
- m_Color: {r: 0, g: 0, b: 0, a: 0.5019608}
- m_RaycastTarget: 1
- m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
- m_Maskable: 1
- m_OnCullStateChanged:
- m_PersistentCalls:
- m_Calls: []
- m_Sprite: {fileID: 0}
- m_Type: 0
- m_PreserveAspect: 0
- m_FillCenter: 1
- m_FillMethod: 4
- m_FillAmount: 1
- m_FillClockwise: 1
- m_FillOrigin: 0
- m_UseSpriteMesh: 0
- m_PixelsPerUnitMultiplier: 1
--- !u!1 &6744825550368220818
GameObject:
m_ObjectHideFlags: 0
@@ -1527,58 +1376,6 @@ MonoBehaviour:
m_OnClick:
m_PersistentCalls:
m_Calls: []
---- !u!1 &7521736384250951132
-GameObject:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- serializedVersion: 6
- m_Component:
- - component: {fileID: 5658499974514101114}
- - component: {fileID: 5980002253212460427}
- m_Layer: 5
- m_Name: Loading
- m_TagString: Untagged
- m_Icon: {fileID: 0}
- m_NavMeshLayer: 0
- m_StaticEditorFlags: 0
- m_IsActive: 0
---- !u!224 &5658499974514101114
-RectTransform:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 7521736384250951132}
- m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
- m_LocalPosition: {x: 0, y: 0, z: 0}
- m_LocalScale: {x: 1, y: 1, z: 1}
- m_ConstrainProportionsScale: 0
- m_Children:
- - {fileID: 820951878307977336}
- - {fileID: 699057321551839701}
- m_Father: {fileID: 5410795088685671119}
- m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
- m_AnchorMin: {x: 0, y: 0}
- m_AnchorMax: {x: 1, y: 1}
- m_AnchoredPosition: {x: 0, y: 0}
- m_SizeDelta: {x: 0, y: 0}
- m_Pivot: {x: 0.5, y: 0.5}
---- !u!114 &5980002253212460427
-MonoBehaviour:
- m_ObjectHideFlags: 0
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 7521736384250951132}
- m_Enabled: 1
- m_EditorHideFlags: 0
- m_Script: {fileID: 11500000, guid: 7659d83bbcad93b4e9eae4bb0dfdeb48, type: 3}
- m_Name:
- m_EditorClassIdentifier:
- spinnerTransform: {fileID: 699057321551839701}
- spinSpeed: 1
--- !u!1 &8285523104754931762
GameObject:
m_ObjectHideFlags: 0
@@ -1677,7 +1474,7 @@ Canvas:
m_AdditionalShaderChannelsFlag: 25
m_UpdateRectTransformForStandalone: 0
m_SortingLayerID: 0
- m_SortingOrder: 0
+ m_SortingOrder: 5
m_TargetDisplay: 0
--- !u!114 &4832088867168672124
MonoBehaviour:
@@ -1732,7 +1529,6 @@ MonoBehaviour:
m_Name:
m_EditorClassIdentifier:
errorOverlay: {fileID: 954457909439498470}
- loadingOverlay: {fileID: 5980002253212460427}
closeButton: {fileID: 2179147160295533171}
closeFromBackgroundButton: {fileID: 4067841252476219871}
modalContainer: {fileID: 2582193404757431644}
diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Resources/LoadingOverlay.prefab b/Packages/io.chainsafe.web3-unity/Runtime/Resources/LoadingOverlay.prefab
new file mode 100644
index 000000000..06f5a46fe
--- /dev/null
+++ b/Packages/io.chainsafe.web3-unity/Runtime/Resources/LoadingOverlay.prefab
@@ -0,0 +1,382 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!1 &1937274908110930818
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 4325427751020018980}
+ - component: {fileID: 2341091693565170645}
+ - component: {fileID: 8571864695663712442}
+ - component: {fileID: 1766222373283303611}
+ m_Layer: 5
+ m_Name: LoadingOverlay
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &4325427751020018980
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1937274908110930818}
+ m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+ m_LocalPosition: {x: 0, y: 0, z: 0}
+ m_LocalScale: {x: 1, y: 1, z: 1}
+ m_ConstrainProportionsScale: 0
+ m_Children:
+ - {fileID: 8783318081338273318}
+ - {fileID: 8877591909320210315}
+ - {fileID: 7151187819112155920}
+ m_Father: {fileID: 0}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+ m_AnchorMin: {x: 0, y: 0}
+ m_AnchorMax: {x: 1, y: 1}
+ m_AnchoredPosition: {x: 0, y: 0}
+ m_SizeDelta: {x: 0, y: 0}
+ m_Pivot: {x: 0.5, y: 0.5}
+--- !u!114 &2341091693565170645
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1937274908110930818}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 7659d83bbcad93b4e9eae4bb0dfdeb48, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ loadingText: {fileID: 6993777934502701952}
+ spinnerTransform: {fileID: 8877591909320210315}
+ spinSpeed: 1
+--- !u!223 &8571864695663712442
+Canvas:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1937274908110930818}
+ m_Enabled: 1
+ serializedVersion: 3
+ m_RenderMode: 0
+ m_Camera: {fileID: 0}
+ m_PlaneDistance: 100
+ m_PixelPerfect: 0
+ m_ReceivesEvents: 1
+ m_OverrideSorting: 0
+ m_OverridePixelPerfect: 0
+ m_SortingBucketNormalizedSize: 0
+ m_VertexColorAlwaysGammaSpace: 0
+ m_AdditionalShaderChannelsFlag: 25
+ m_UpdateRectTransformForStandalone: 0
+ m_SortingLayerID: 0
+ m_SortingOrder: 20
+ m_TargetDisplay: 0
+--- !u!114 &1766222373283303611
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1937274908110930818}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_IgnoreReversedGraphics: 1
+ m_BlockingObjects: 0
+ m_BlockingMask:
+ serializedVersion: 2
+ m_Bits: 4294967295
+--- !u!1 &2692185900358363514
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 7151187819112155920}
+ - component: {fileID: 1286934212122269600}
+ - component: {fileID: 6993777934502701952}
+ m_Layer: 5
+ m_Name: Text (TMP)
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &7151187819112155920
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 2692185900358363514}
+ m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+ m_LocalPosition: {x: 0, y: 0, z: 0}
+ m_LocalScale: {x: 1, y: 1, z: 1}
+ m_ConstrainProportionsScale: 0
+ m_Children: []
+ m_Father: {fileID: 4325427751020018980}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+ m_AnchorMin: {x: 0.5, y: 0.5}
+ m_AnchorMax: {x: 0.5, y: 0.5}
+ m_AnchoredPosition: {x: 0, y: -137}
+ m_SizeDelta: {x: 476, y: 50}
+ m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &1286934212122269600
+CanvasRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 2692185900358363514}
+ m_CullTransparentMesh: 1
+--- !u!114 &6993777934502701952
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 2692185900358363514}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_Material: {fileID: 0}
+ m_Color: {r: 1, g: 1, b: 1, a: 1}
+ m_RaycastTarget: 1
+ m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+ m_Maskable: 1
+ m_OnCullStateChanged:
+ m_PersistentCalls:
+ m_Calls: []
+ m_text: Restoring user session...
+ m_isRightToLeft: 0
+ m_fontAsset: {fileID: 11400000, guid: b137a8f4bbcdafc439306c89bed89215, type: 2}
+ m_sharedMaterial: {fileID: 7077468325371864899, guid: b137a8f4bbcdafc439306c89bed89215, type: 2}
+ m_fontSharedMaterials: []
+ m_fontMaterial: {fileID: 0}
+ m_fontMaterials: []
+ m_fontColor32:
+ serializedVersion: 2
+ rgba: 4282974207
+ m_fontColor: {r: 1, g: 1, b: 0.28235295, a: 1}
+ m_enableVertexGradient: 0
+ m_colorMode: 3
+ m_fontColorGradient:
+ topLeft: {r: 1, g: 1, b: 1, a: 1}
+ topRight: {r: 1, g: 1, b: 1, a: 1}
+ bottomLeft: {r: 1, g: 1, b: 1, a: 1}
+ bottomRight: {r: 1, g: 1, b: 1, a: 1}
+ m_fontColorGradientPreset: {fileID: 0}
+ m_spriteAsset: {fileID: 0}
+ m_tintAllSprites: 0
+ m_StyleSheet: {fileID: 0}
+ m_TextStyleHashCode: -1183493901
+ m_overrideHtmlColors: 0
+ m_faceColor:
+ serializedVersion: 2
+ rgba: 4294967295
+ m_fontSize: 36
+ m_fontSizeBase: 36
+ m_fontWeight: 400
+ m_enableAutoSizing: 1
+ m_fontSizeMin: 18
+ m_fontSizeMax: 36
+ m_fontStyle: 1
+ m_HorizontalAlignment: 2
+ m_VerticalAlignment: 512
+ m_textAlignment: 65535
+ m_characterSpacing: 0
+ m_wordSpacing: 0
+ m_lineSpacing: 0
+ m_lineSpacingMax: 0
+ m_paragraphSpacing: 0
+ m_charWidthMaxAdj: 0
+ m_enableWordWrapping: 1
+ m_wordWrappingRatios: 0.4
+ m_overflowMode: 0
+ m_linkedTextComponent: {fileID: 0}
+ parentLinkedComponent: {fileID: 0}
+ m_enableKerning: 1
+ m_enableExtraPadding: 0
+ checkPaddingRequired: 0
+ m_isRichText: 1
+ m_parseCtrlCharacters: 1
+ m_isOrthographic: 1
+ m_isCullingEnabled: 0
+ m_horizontalMapping: 0
+ m_verticalMapping: 0
+ m_uvLineOffset: 0
+ m_geometrySortingOrder: 0
+ m_IsTextObjectScaleStatic: 0
+ m_VertexBufferAutoSizeReduction: 0
+ m_useMaxVisibleDescender: 1
+ m_pageToDisplay: 1
+ m_margin: {x: 0, y: 0, z: 0, w: 0}
+ m_isUsingLegacyAnimationComponent: 0
+ m_isVolumetricText: 0
+ m_hasFontAssetChanged: 0
+ m_baseMaterial: {fileID: 0}
+ m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
+--- !u!1 &3355168198739763373
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 8783318081338273318}
+ - component: {fileID: 7907290848661572997}
+ - component: {fileID: 8136276909032737710}
+ m_Layer: 5
+ m_Name: Background
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &8783318081338273318
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 3355168198739763373}
+ m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+ m_LocalPosition: {x: 0, y: 0, z: 0}
+ m_LocalScale: {x: 1, y: 1, z: 1}
+ m_ConstrainProportionsScale: 0
+ m_Children: []
+ m_Father: {fileID: 4325427751020018980}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+ m_AnchorMin: {x: 0, y: 0}
+ m_AnchorMax: {x: 1, y: 1}
+ m_AnchoredPosition: {x: 0, y: 0}
+ m_SizeDelta: {x: 0, y: 0}
+ m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &7907290848661572997
+CanvasRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 3355168198739763373}
+ m_CullTransparentMesh: 1
+--- !u!114 &8136276909032737710
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 3355168198739763373}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_Material: {fileID: 0}
+ m_Color: {r: 0, g: 0, b: 0, a: 0.5019608}
+ m_RaycastTarget: 1
+ m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+ m_Maskable: 1
+ m_OnCullStateChanged:
+ m_PersistentCalls:
+ m_Calls: []
+ m_Sprite: {fileID: 0}
+ m_Type: 0
+ m_PreserveAspect: 0
+ m_FillCenter: 1
+ m_FillMethod: 4
+ m_FillAmount: 1
+ m_FillClockwise: 1
+ m_FillOrigin: 0
+ m_UseSpriteMesh: 0
+ m_PixelsPerUnitMultiplier: 1
+--- !u!1 &6127021681116474807
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 8877591909320210315}
+ - component: {fileID: 5294149037931508027}
+ - component: {fileID: 716464325009131309}
+ m_Layer: 5
+ m_Name: Spinner
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &8877591909320210315
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 6127021681116474807}
+ m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+ m_LocalPosition: {x: 0, y: 0, z: 0}
+ m_LocalScale: {x: 1, y: 1, z: 1}
+ m_ConstrainProportionsScale: 0
+ m_Children: []
+ m_Father: {fileID: 4325427751020018980}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+ m_AnchorMin: {x: 0.35, y: 0.35}
+ m_AnchorMax: {x: 0.65, y: 0.65}
+ m_AnchoredPosition: {x: 0, y: 0}
+ m_SizeDelta: {x: -100, y: -100}
+ m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &5294149037931508027
+CanvasRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 6127021681116474807}
+ m_CullTransparentMesh: 1
+--- !u!114 &716464325009131309
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 6127021681116474807}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_Material: {fileID: 0}
+ m_Color: {r: 1, g: 1, b: 0.28235295, a: 1}
+ m_RaycastTarget: 1
+ m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+ m_Maskable: 1
+ m_OnCullStateChanged:
+ m_PersistentCalls:
+ m_Calls: []
+ m_Sprite: {fileID: 21300000, guid: 42cfe2a53c45b954b9f91b5db202b300, type: 3}
+ m_Type: 0
+ m_PreserveAspect: 1
+ m_FillCenter: 1
+ m_FillMethod: 4
+ m_FillAmount: 1
+ m_FillClockwise: 1
+ m_FillOrigin: 0
+ m_UseSpriteMesh: 0
+ m_PixelsPerUnitMultiplier: 1
diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Resources/LoadingOverlay.prefab.meta b/Packages/io.chainsafe.web3-unity/Runtime/Resources/LoadingOverlay.prefab.meta
new file mode 100644
index 000000000..b30d58647
--- /dev/null
+++ b/Packages/io.chainsafe.web3-unity/Runtime/Resources/LoadingOverlay.prefab.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: acccae1dc82f52a4192584acb56ff53c
+PrefabImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Connection/WalletConnectConnectionProvider.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Connection/WalletConnectConnectionProvider.cs
index c858b3760..c45fcd5d5 100644
--- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Connection/WalletConnectConnectionProvider.cs
+++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Connection/WalletConnectConnectionProvider.cs
@@ -64,7 +64,7 @@ public class WalletConnectConnectionProvider : RestorableConnectionProvider, IWa
public bool ForceNewSession { get; set; }
- public override bool IsAvailable => Application.isEditor || Application.platform != RuntimePlatform.WebGLPlayer;
+ public override bool IsAvailable => true;
private IConnectionBuilder _connectionBuilder;
diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/UI/ConnectModal.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/UI/ConnectModal.cs
index e205865bc..e881943e6 100644
--- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/UI/ConnectModal.cs
+++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/UI/ConnectModal.cs
@@ -12,7 +12,6 @@ namespace ChainSafe.Gaming.UnityPackage.UI
public class ConnectModal : MonoBehaviour
{
[SerializeField] private ErrorOverlay errorOverlay;
- [SerializeField] private LoadingOverlay loadingOverlay;
[SerializeField] private Button closeButton;
// Closes modal when background is clicked
[SerializeField] private Button closeFromBackgroundButton;
@@ -65,22 +64,27 @@ private async Task TryConnect(ConnectionProvider provider)
{
try
{
- ShowLoading();
+ if(provider is WalletConnectConnectionProvider)
+ ShowLoading("Connecting to the WalletConnect");
await (_connectionHandler as IConnectionHandler).Connect(provider);
+
}
catch (Exception e)
{
- HideLoading();
-
+
if (!(e is TaskCanceledException))
{
DisplayError(
"Connection failed, please try again.");
-
+
provider.HandleException(e);
}
}
+ finally
+ {
+ HideLoading();
+ }
}
public void Show()
@@ -100,9 +104,9 @@ private void DisplayError(string message)
///
/// Show Loading Overlay.
///
- private void ShowLoading()
+ private void ShowLoading(string text = "")
{
- loadingOverlay.gameObject.SetActive(true);
+ LoadingOverlay.ShowLoadingOverlay(text);
}
///
@@ -110,7 +114,7 @@ private void ShowLoading()
///
private void HideLoading()
{
- loadingOverlay.gameObject.SetActive(false);
+ LoadingOverlay.HideLoadingOverlay();
}
private void Close()
diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/UI/LoadingOverlay.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/UI/LoadingOverlay.cs
index cb1fb07cb..adf43b05a 100644
--- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/UI/LoadingOverlay.cs
+++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/UI/LoadingOverlay.cs
@@ -1,6 +1,7 @@
using System;
using System.Collections;
using System.Collections.Generic;
+using TMPro;
using UnityEngine;
using UnityEngine.UI;
@@ -11,9 +12,35 @@ namespace ChainSafe.Gaming.UnityPackage.UI
///
public class LoadingOverlay : MonoBehaviour
{
+ [SerializeField] private TMP_Text loadingText;
[SerializeField] private RectTransform spinnerTransform;
[SerializeField] private float spinSpeed = 1f;
+ private static LoadingOverlay _instance;
+ public static LoadingOverlay Instance
+ {
+ get
+ {
+ if (_instance != null)
+ return _instance;
+ _instance = Instantiate(Resources.Load("LoadingOverlay"));
+ DontDestroyOnLoad(_instance.gameObject);
+ return _instance;
+ }
+
+ }
+
+ public static void ShowLoadingOverlay(string loadingText = "")
+ {
+ Instance.loadingText.text = loadingText;
+ Instance.gameObject.SetActive(true);
+ }
+
+ public static void HideLoadingOverlay()
+ {
+ Instance.gameObject.SetActive(false);
+ }
+
private void Update()
{
spinnerTransform.rotation *= Quaternion.AngleAxis(spinSpeed, Vector3.forward);
diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/WalletConnect/NativeWebSocketConnectionBuilder.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/WalletConnect/NativeWebSocketConnectionBuilder.cs
index 1a44bf667..b42f49f63 100644
--- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/WalletConnect/NativeWebSocketConnectionBuilder.cs
+++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/WalletConnect/NativeWebSocketConnectionBuilder.cs
@@ -1,4 +1,4 @@
-#if !UNITY_2022_1_OR_NEWER
+
using System.Threading.Tasks;
using ChainSafe.Gaming.Evm.Unity;
using UnityEngine;
@@ -25,5 +25,3 @@ public Task CreateConnection(string url)
}
}
}
-
-#endif
\ No newline at end of file
diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/WalletConnect/WalletConnectConfigSO.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/WalletConnect/WalletConnectConfigSO.cs
index 9be236181..941effe5f 100644
--- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/WalletConnect/WalletConnectConfigSO.cs
+++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/WalletConnect/WalletConnectConfigSO.cs
@@ -38,7 +38,6 @@ public IConnectionBuilder ConnectionBuilder
{
get
{
-#if !UNITY_2022_1_OR_NEWER
if (connectionBuilder != null)
{
@@ -63,9 +62,6 @@ public IConnectionBuilder ConnectionBuilder
connectionBuilder = webSocketBuilderObj.GetComponent();
return connectionBuilder;
-#else
- return null;
-#endif
}
}
}
diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/WalletConnect/WebSocketConnection.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/WalletConnect/WebSocketConnection.cs
index 1b2803c48..ca967ee73 100644
--- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/WalletConnect/WebSocketConnection.cs
+++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/WalletConnect/WebSocketConnection.cs
@@ -1,4 +1,4 @@
-#if !UNITY_2022_1_OR_NEWER
+
using System;
using System.IO;
using System.Text;
@@ -277,4 +277,3 @@ public async void Dispose()
}
}
}
-#endif
\ No newline at end of file
diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Web3Accessor.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Web3Accessor.cs
index d13835a66..ff5c43e95 100644
--- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Web3Accessor.cs
+++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Web3Accessor.cs
@@ -1,5 +1,6 @@
using System;
using System.Threading.Tasks;
+using ChainSafe.Gaming.UnityPackage.UI;
using UnityEngine;
using UnityEngine.SceneManagement;
@@ -42,13 +43,28 @@ public static void Set(Web3.Web3 web3)
public static async Task TerminateAndClear(bool logout = false)
{
- if (!Instance)
+ try
{
- Debug.LogError("Instance was not set.");
+ if (!Instance)
+ {
+ Debug.LogError("Instance was not set.");
+ }
+
+ LoadingOverlay.ShowLoadingOverlay("Logging out...");
+ await Instance.web3.TerminateAsync(logout);
+ }
+ catch (Exception _)
+ {
+
+ }
+ finally
+ {
+
+ LoadingOverlay.HideLoadingOverlay();
+ Instance.web3 = null;
}
- await Instance.web3.TerminateAsync(logout);
- Instance.web3 = null;
+
}
}
}