diff --git a/.github/workflows/activation.yml b/.github/workflows/activation.yml index 0f3702b18..062bad2f2 100644 --- a/.github/workflows/activation.yml +++ b/.github/workflows/activation.yml @@ -1,9 +1,9 @@ -name: Acquire activation file +name: Acquire Activation File Workflow on: workflow_dispatch: {} jobs: activation: - name: Request manual activation file 🔑 + name: Request manual activation file job 🔑 runs-on: ubuntu-latest steps: # Request manual activation file. diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index 671d825c4..704eda2e7 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -1,73 +1,32 @@ -# For most projects, this workflow file will not need changing; you simply need -# to commit it to your repository. -# -# You may wish to alter this file to override the set of languages analyzed, -# or to provide custom queries or build logic. -# -# ******** NOTE ******** -# We have attempted to detect the languages in your repository. Please check -# the `language` matrix defined below to confirm you have the correct set of -# supported CodeQL languages. -# -name: "CodeQL" +name: CodeQL Workflow on: - push: - branches: [ "main" ] pull_request: - # The branches below must be a subset of the branches above - branches: [ "main" ] - schedule: - - cron: '38 5 * * 4' + branches: [main] jobs: analyze: - name: Analyze - # Runner size impacts CodeQL analysis time. To learn more, please see: - # - https://gh.io/recommended-hardware-resources-for-running-codeql - # - https://gh.io/supported-runners-and-hardware-resources - # - https://gh.io/using-larger-runners - # Consider using larger runners for possible analysis time improvements. - runs-on: ${{ (matrix.language == 'swift' && 'macos-latest') || 'ubuntu-latest' }} - timeout-minutes: ${{ (matrix.language == 'swift' && 120) || 360 }} + name: Analyze 🧐 + runs-on: ${{ 'ubuntu-latest' }} permissions: actions: read contents: read security-events: write strategy: - fail-fast: false + fail-fast: true matrix: language: [ 'csharp' ] dotnet-version: [ '6.0.x' ] steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 - # Initializes the CodeQL tools for scanning. - name: Initialize CodeQL uses: github/codeql-action/init@v2 with: languages: ${{ matrix.language }} - # If you wish to specify custom queries, you can do so here or in a config file. - # By default, queries listed here will override any specified in a config file. - # Prefix the list here with "+" to use these queries and those in the config file. - - # For more details on CodeQL's query packs, refer to: https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-queries-in-ql-packs - # queries: security-extended,security-and-quality - - - # Autobuild attempts to build any compiled languages (C/C++, C#, Go, Java, or Swift). - # If this step fails, then you should remove it and run the build manually (see below) - # - name: Autobuild - # uses: github/codeql-action/autobuild@v2 - - # ℹ️ Command-line programs to run using the OS shell. - # 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun - - # If the Autobuild fails above, remove it and uncomment the following three lines. - # modify them (or add more) to build your code if your project, please refer to the EXAMPLE below for guidance. - name: Setup .NET Core SDK ${{ matrix.dotnet-version }} uses: actions/setup-dotnet@v3 diff --git a/.github/workflows/discord.yaml b/.github/workflows/discord.yaml index b5ea05c8b..17773a50e 100644 --- a/.github/workflows/discord.yaml +++ b/.github/workflows/discord.yaml @@ -1,6 +1,5 @@ # This workflow is used to automate the release of notifications to discord - -name: Notification on push +name: Notification on Push Workflow on: release: @@ -10,7 +9,7 @@ jobs: sending: runs-on: ubuntu-latest steps: - - name: Discord notification + - name: Discord notification job uses: LeGitHubDeTai/github-to-discord@main env: DISCORD_WEBHOOK: ${{ secrets.DISCORD_SECRET }} diff --git a/.github/workflows/duplicate_sample.yml b/.github/workflows/duplicate_sample.yml index 9149128f4..ed1ff2663 100644 --- a/.github/workflows/duplicate_sample.yml +++ b/.github/workflows/duplicate_sample.yml @@ -1,23 +1,26 @@ -name: Duplicate Package Sample +name: Duplicate Package Sample Workflow on: pull_request: - branches: - - main + branches: [main] jobs: duplicate: - name: duplicate package sample + name: Duplicate samples job 👯 runs-on: ubuntu-latest steps: - name: Checkout Repository - uses: actions/checkout@v2 + uses: actions/checkout@v4 with: ref: ${{ github.event.pull_request.head.ref }} - name: Run duplicate script file - run: bash ${GITHUB_WORKSPACE}/duplicate_package_sample.sh + run: | + export SOURCE_DIRECTORY="${GITHUB_WORKSPACE}/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/" + export DESTINATION_DIRECTORY="${GITHUB_WORKSPACE}/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/" + rm -r "$DESTINATION_DIRECTORY" + cp -r "$SOURCE_DIRECTORY" "$DESTINATION_DIRECTORY" - name: Commit and Push run: | diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index d987a31bc..c2492df38 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -1,4 +1,4 @@ -name: NUnit Tests +name: NUnit Tests Workflow on: pull_request: @@ -6,14 +6,14 @@ on: jobs: check: - name: Web3 Tests + name: Web3 tests job 🕸️ runs-on: ubuntu-latest strategy: matrix: dotnet-version: [ '6.0.x' ] steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: submodules: recursive - name: Install dependencies diff --git a/.github/workflows/unity_tests.yml b/.github/workflows/unity_tests.yml index 6bef62ff0..16e386726 100644 --- a/.github/workflows/unity_tests.yml +++ b/.github/workflows/unity_tests.yml @@ -1,13 +1,12 @@ -name: Test Package +name: Test Unity Package Workflow on: pull_request: - branches: - - main + branches: [main] jobs: testAllModes: - name: Test in ${{ matrix.testMode }} + name: Test Job for Unity Package in ${{ matrix.testMode }} 🕹️ runs-on: ubuntu-latest strategy: fail-fast: false @@ -15,14 +14,14 @@ jobs: projectPath: - Packages/io.chainsafe.web3-unity publishPath: - - ${GITHUB_WORKSPACE}/src/ChainSafe.GamingSdk.EVM.Unity/bin/Release/netstandard2.1/publish + - ${GITHUB_WORKSPACE}/src/ChainSafe.Gaming.Unity/bin/Release/netstandard2.1/publish packageLibraryPath: - ${GITHUB_WORKSPACE}/Packages/io.chainsafe.web3-unity/Runtime/Libraries testMode: - - playmode - - editmode + - PlayMode + - EditMode steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: lfs: true - name: update submodules @@ -38,7 +37,7 @@ jobs: run: dotnet restore - name: Publish run: | - dotnet publish --no-restore src/ChainSafe.GamingSdk.EVM.Unity/ChainSafe.GamingSdk.EVM.Unity.csproj -c Release /property:Unity=true + dotnet publish --no-restore src/ChainSafe.Gaming.Unity/ChainSafe.Gaming.Unity.csproj -c Release /property:Unity=true echo Generated DLLs ls ${{ matrix.publishPath }} - name: Publish to Unity Package @@ -64,12 +63,12 @@ jobs: checkName: ${{ matrix.testMode }} Test Results coverageOptions: 'generateAdditionalMetrics;generateHtmlReport;generateBadgeReport;' packageMode: true - - uses: actions/upload-artifact@v2 + - uses: actions/upload-artifact@v3 if: always() with: name: Test results for ${{ matrix.testMode }} path: ${{ steps.tests.outputs.artifactsPath }} - - uses: actions/upload-artifact@v2 + - uses: actions/upload-artifact@v3 if: always() with: name: Coverage results for ${{ matrix.testMode }} diff --git a/.gitignore b/.gitignore index 2024d3c5b..64f4123c0 100644 --- a/.gitignore +++ b/.gitignore @@ -398,3 +398,5 @@ FodyWeavers.xsd # VS Code files .vscode/ + +!/src/ChainSafe.Gaming/Web3/Core/Debug/ \ No newline at end of file diff --git a/ChainSafe.Gaming.sln b/ChainSafe.Gaming.sln index 60c53088c..5e05308ee 100644 --- a/ChainSafe.Gaming.sln +++ b/ChainSafe.Gaming.sln @@ -3,13 +3,13 @@ Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio Version 17 VisualStudioVersion = 17.5.33414.496 MinimumVisualStudioVersion = 10.0.40219.1 -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ChainSafe.GamingSDK.EVM", "src\ChainSafe.GamingSDK.EVM\ChainSafe.GamingSDK.EVM.csproj", "{E6CC674F-C552-412E-8272-692CE182AB7A}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ChainSafe.Gaming", "src\ChainSafe.Gaming\ChainSafe.Gaming.csproj", "{E6CC674F-C552-412E-8272-692CE182AB7A}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ChainSafe.GamingSDK.EVM.Tests", "src\ChainSafe.GamingSDK.EVM.Tests\ChainSafe.GamingSDK.EVM.Tests.csproj", "{D63ACB2E-71E2-49C1-AE55-92DFA723391E}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ChainSafe.Gaming.Tests", "src\ChainSafe.Gaming.Tests\ChainSafe.Gaming.Tests.csproj", "{D63ACB2E-71E2-49C1-AE55-92DFA723391E}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ChainSafe.GamingSdk.EVM.Unity", "src\ChainSafe.GamingSdk.EVM.Unity\ChainSafe.GamingSdk.EVM.Unity.csproj", "{14C3ACCB-285C-493C-AD59-73853386095E}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ChainSafe.Gaming.Unity", "src\ChainSafe.Gaming.Unity\ChainSafe.Gaming.Unity.csproj", "{14C3ACCB-285C-493C-AD59-73853386095E}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ChainSafe.GamingSdk.EVM.NetCore", "src\ChainSafe.GamingSdk.EVM.NetCore\ChainSafe.GamingSdk.EVM.NetCore.csproj", "{C1FA80C9-64F5-4213-9938-2CB5323A4823}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ChainSafe.Gaming.NetCore", "src\ChainSafe.Gaming.NetCore\ChainSafe.Gaming.NetCore.csproj", "{C1FA80C9-64F5-4213-9938-2CB5323A4823}" EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{3F500611-617F-413F-8607-2393B7493585}" ProjectSection(SolutionItems) = preProject @@ -17,17 +17,19 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution README.md = README.md setup.bat = setup.bat setup.sh = setup.sh + release-web3-auth.sh = release-web3-auth.sh + release-web3-unity.sh = release-web3-unity.sh EndProjectSection EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ChainSafe.GamingSdk.EVM.Unity.ThirdParty", "src\ChainSafe.GamingSdk.EVM.Unity.ThirdParty\ChainSafe.GamingSdk.EVM.Unity.ThirdParty.csproj", "{9EC71CB4-9401-4E02-AC63-FC13B3D1AA53}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ChainSafe.Gaming.Unity.ThirdParty", "src\ChainSafe.Gaming.Unity.ThirdParty\ChainSafe.Gaming.Unity.ThirdParty.csproj", "{9EC71CB4-9401-4E02-AC63-FC13B3D1AA53}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ChainSafe.GamingSDK.EVM.WebPageWallet", "src\ChainSafe.GamingSDK.EVM.WebPageWallet\ChainSafe.GamingSDK.EVM.WebPageWallet.csproj", "{99E7A645-CAC5-441B-848D-1253405D6400}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ChainSafe.Gaming.WebPageWallet", "src\ChainSafe.Gaming.WebPageWallet\ChainSafe.Gaming.WebPageWallet.csproj", "{99E7A645-CAC5-441B-848D-1253405D6400}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ChainSafe.GamingSdk.EVM.InProcessSigner", "src\ChainSafe.GamingSdk.EVM.InProcessSigner\ChainSafe.GamingSdk.EVM.InProcessSigner.csproj", "{3C01FD36-4D44-4886-A971-4786D99CBFCC}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ChainSafe.Gaming.InProcessSigner", "src\ChainSafe.Gaming.InProcessSigner\ChainSafe.Gaming.InProcessSigner.csproj", "{3C01FD36-4D44-4886-A971-4786D99CBFCC}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ChainSafe.GamingSdk.EVM.InProcessTransactionExecutor", "src\ChainSafe.GamingSdk.EVM.InProcessTransactionExecutor\ChainSafe.GamingSdk.EVM.InProcessTransactionExecutor.csproj", "{457E4582-4CC5-4D42-A0CB-5F48204328FE}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ChainSafe.Gaming.InProcessTransactionExecutor", "src\ChainSafe.Gaming.InProcessTransactionExecutor\ChainSafe.Gaming.InProcessTransactionExecutor.csproj", "{457E4582-4CC5-4D42-A0CB-5F48204328FE}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ChainSafe.GamingSdk.Gelato", "src\ChainSafe.GamingSdk.Gelato\ChainSafe.GamingSdk.Gelato.csproj", "{205BA2B5-B8B0-4860-B8D0-1AFA148D882E}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ChainSafe.Gaming.Gelato", "src\ChainSafe.Gaming.Gelato\ChainSafe.Gaming.Gelato.csproj", "{205BA2B5-B8B0-4860-B8D0-1AFA148D882E}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution diff --git a/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Web3AuthWallet.cs b/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Web3AuthWallet.cs index 9a79b506e..5d563f60b 100644 --- a/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Web3AuthWallet.cs +++ b/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Web3AuthWallet.cs @@ -1,18 +1,18 @@ -using System; -using ChainSafe.GamingSdk.EVM.InProcessSigner; -using ChainSafe.GamingSdk.EVM.InProcessTransactionExecutor; -using ChainSafe.GamingSDK.EVM.Web3.Core; -using ChainSafe.GamingSDK.EVM.Web3.Core.Evm; -using ChainSafe.GamingWeb3; + using Nethereum.ABI.EIP712; using Nethereum.Signer; using System.Collections.Generic; using System.Threading.Tasks; -using Org.BouncyCastle.Utilities.Encoders; +using ChainSafe.Gaming.Evm.Providers; +using ChainSafe.Gaming.Evm.Signers; +using ChainSafe.Gaming.Evm.Transactions; +using ChainSafe.Gaming.InProcessSigner; +using ChainSafe.Gaming.InProcessTransactionExecutor; +using ChainSafe.Gaming.Web3; +using ChainSafe.Gaming.Web3.Core; +using ChainSafe.Gaming.Web3.Core.Evm; using UnityEngine; -using Web3Unity.Scripts.Library.Ethers.Providers; -using Web3Unity.Scripts.Library.Ethers.Signers; -using Web3Unity.Scripts.Library.Ethers.Transactions; + using Object = UnityEngine.Object; using TWeb3Auth = Web3Auth; diff --git a/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Web3AuthWalletExtensions.cs b/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Web3AuthWalletExtensions.cs index d1ecb43b4..c761b0746 100644 --- a/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Web3AuthWalletExtensions.cs +++ b/Packages/io.chainsafe.web3-unity.web3auth/Runtime/Web3AuthWalletExtensions.cs @@ -1,10 +1,11 @@ +using ChainSafe.Gaming.Evm.Signers; +using ChainSafe.Gaming.Web3.Build; +using ChainSafe.Gaming.Web3.Core; +using ChainSafe.Gaming.Web3.Core.Evm; using ChainSafe.GamingSdk.Web3Auth; -using ChainSafe.GamingSDK.EVM.Web3.Core; -using ChainSafe.GamingSDK.EVM.Web3.Core.Evm; -using ChainSafe.GamingWeb3.Build; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection.Extensions; -using Web3Unity.Scripts.Library.Ethers.Signers; + public static class Web3AuthWalletExtensions { diff --git a/Packages/io.chainsafe.web3-unity/Editor/ServerSettings.cs b/Packages/io.chainsafe.web3-unity/Editor/ServerSettings.cs index 71cf913b6..0d606fec3 100644 --- a/Packages/io.chainsafe.web3-unity/Editor/ServerSettings.cs +++ b/Packages/io.chainsafe.web3-unity/Editor/ServerSettings.cs @@ -7,6 +7,7 @@ using ChainSafe.GamingSdk.Editor; using System.IO; using System.Text; +using ChainSafe.Gaming.UnityPackage; public class ChainSafeServerSettings : EditorWindow { diff --git a/Packages/io.chainsafe.web3-unity/Editor/Startup.cs b/Packages/io.chainsafe.web3-unity/Editor/Startup.cs index 24af549d7..9e63dc839 100644 --- a/Packages/io.chainsafe.web3-unity/Editor/Startup.cs +++ b/Packages/io.chainsafe.web3-unity/Editor/Startup.cs @@ -1,6 +1,7 @@ using UnityEngine; using UnityEditor; using System; +using ChainSafe.Gaming.UnityPackage; using PlasticPipe.PlasticProtocol.Messages; namespace ChainSafe.GamingSdk.Editor diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/ABI.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/ABI.cs index 9306e6409..117f754ea 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/ABI.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/ABI.cs @@ -1,14 +1,17 @@ -public class ABI +namespace ChainSafe.Gaming.UnityPackage { - public const string ERC_20 = - "[ { \"inputs\": [ { \"internalType\": \"string\", \"name\": \"name_\", \"type\": \"string\" }, { \"internalType\": \"string\", \"name\": \"symbol_\", \"type\": \"string\" } ], \"stateMutability\": \"nonpayable\", \"type\": \"constructor\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": true, \"internalType\": \"address\", \"name\": \"owner\", \"type\": \"address\" }, { \"indexed\": true, \"internalType\": \"address\", \"name\": \"spender\", \"type\": \"address\" }, { \"indexed\": false, \"internalType\": \"uint256\", \"name\": \"value\", \"type\": \"uint256\" } ], \"name\": \"Approval\", \"type\": \"event\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": true, \"internalType\": \"address\", \"name\": \"from\", \"type\": \"address\" }, { \"indexed\": true, \"internalType\": \"address\", \"name\": \"to\", \"type\": \"address\" }, { \"indexed\": false, \"internalType\": \"uint256\", \"name\": \"value\", \"type\": \"uint256\" } ], \"name\": \"Transfer\", \"type\": \"event\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"owner\", \"type\": \"address\" }, { \"internalType\": \"address\", \"name\": \"spender\", \"type\": \"address\" } ], \"name\": \"allowance\", \"outputs\": [ { \"internalType\": \"uint256\", \"name\": \"\", \"type\": \"uint256\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"spender\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"amount\", \"type\": \"uint256\" } ], \"name\": \"approve\", \"outputs\": [ { \"internalType\": \"bool\", \"name\": \"\", \"type\": \"bool\" } ], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"account\", \"type\": \"address\" } ], \"name\": \"balanceOf\", \"outputs\": [ { \"internalType\": \"uint256\", \"name\": \"\", \"type\": \"uint256\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"decimals\", \"outputs\": [ { \"internalType\": \"uint8\", \"name\": \"\", \"type\": \"uint8\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"spender\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"subtractedValue\", \"type\": \"uint256\" } ], \"name\": \"decreaseAllowance\", \"outputs\": [ { \"internalType\": \"bool\", \"name\": \"\", \"type\": \"bool\" } ], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"spender\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"addedValue\", \"type\": \"uint256\" } ], \"name\": \"increaseAllowance\", \"outputs\": [ { \"internalType\": \"bool\", \"name\": \"\", \"type\": \"bool\" } ], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"name\", \"outputs\": [ { \"internalType\": \"string\", \"name\": \"\", \"type\": \"string\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"symbol\", \"outputs\": [ { \"internalType\": \"string\", \"name\": \"\", \"type\": \"string\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"totalSupply\", \"outputs\": [ { \"internalType\": \"uint256\", \"name\": \"\", \"type\": \"uint256\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"recipient\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"amount\", \"type\": \"uint256\" } ], \"name\": \"transfer\", \"outputs\": [ { \"internalType\": \"bool\", \"name\": \"\", \"type\": \"bool\" } ], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"sender\", \"type\": \"address\" }, { \"internalType\": \"address\", \"name\": \"recipient\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"amount\", \"type\": \"uint256\" } ], \"name\": \"transferFrom\", \"outputs\": [ { \"internalType\": \"bool\", \"name\": \"\", \"type\": \"bool\" } ], \"stateMutability\": \"nonpayable\", \"type\": \"function\" } ]"; + public class ABI + { + public const string ERC_20 = + "[ { \"inputs\": [ { \"internalType\": \"string\", \"name\": \"name_\", \"type\": \"string\" }, { \"internalType\": \"string\", \"name\": \"symbol_\", \"type\": \"string\" } ], \"stateMutability\": \"nonpayable\", \"type\": \"constructor\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": true, \"internalType\": \"address\", \"name\": \"owner\", \"type\": \"address\" }, { \"indexed\": true, \"internalType\": \"address\", \"name\": \"spender\", \"type\": \"address\" }, { \"indexed\": false, \"internalType\": \"uint256\", \"name\": \"value\", \"type\": \"uint256\" } ], \"name\": \"Approval\", \"type\": \"event\" }, { \"anonymous\": false, \"inputs\": [ { \"indexed\": true, \"internalType\": \"address\", \"name\": \"from\", \"type\": \"address\" }, { \"indexed\": true, \"internalType\": \"address\", \"name\": \"to\", \"type\": \"address\" }, { \"indexed\": false, \"internalType\": \"uint256\", \"name\": \"value\", \"type\": \"uint256\" } ], \"name\": \"Transfer\", \"type\": \"event\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"owner\", \"type\": \"address\" }, { \"internalType\": \"address\", \"name\": \"spender\", \"type\": \"address\" } ], \"name\": \"allowance\", \"outputs\": [ { \"internalType\": \"uint256\", \"name\": \"\", \"type\": \"uint256\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"spender\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"amount\", \"type\": \"uint256\" } ], \"name\": \"approve\", \"outputs\": [ { \"internalType\": \"bool\", \"name\": \"\", \"type\": \"bool\" } ], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"account\", \"type\": \"address\" } ], \"name\": \"balanceOf\", \"outputs\": [ { \"internalType\": \"uint256\", \"name\": \"\", \"type\": \"uint256\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"decimals\", \"outputs\": [ { \"internalType\": \"uint8\", \"name\": \"\", \"type\": \"uint8\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"spender\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"subtractedValue\", \"type\": \"uint256\" } ], \"name\": \"decreaseAllowance\", \"outputs\": [ { \"internalType\": \"bool\", \"name\": \"\", \"type\": \"bool\" } ], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"spender\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"addedValue\", \"type\": \"uint256\" } ], \"name\": \"increaseAllowance\", \"outputs\": [ { \"internalType\": \"bool\", \"name\": \"\", \"type\": \"bool\" } ], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"name\", \"outputs\": [ { \"internalType\": \"string\", \"name\": \"\", \"type\": \"string\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"symbol\", \"outputs\": [ { \"internalType\": \"string\", \"name\": \"\", \"type\": \"string\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"totalSupply\", \"outputs\": [ { \"internalType\": \"uint256\", \"name\": \"\", \"type\": \"uint256\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"recipient\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"amount\", \"type\": \"uint256\" } ], \"name\": \"transfer\", \"outputs\": [ { \"internalType\": \"bool\", \"name\": \"\", \"type\": \"bool\" } ], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"sender\", \"type\": \"address\" }, { \"internalType\": \"address\", \"name\": \"recipient\", \"type\": \"address\" }, { \"internalType\": \"uint256\", \"name\": \"amount\", \"type\": \"uint256\" } ], \"name\": \"transferFrom\", \"outputs\": [ { \"internalType\": \"bool\", \"name\": \"\", \"type\": \"bool\" } ], \"stateMutability\": \"nonpayable\", \"type\": \"function\" } ]"; - public const string ERC_1155 = - "[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"mint\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"mintBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeBatchTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"values\",\"type\":\"uint256[]\"}],\"name\":\"TransferBatch\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"TransferSingle\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"value\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"}],\"name\":\"URI\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"accounts\",\"type\":\"address[]\"},{\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"}],\"name\":\"balanceOfBatch\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"uri\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"}]"; + public const string ERC_1155 = + "[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"mint\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"mintBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeBatchTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"values\",\"type\":\"uint256[]\"}],\"name\":\"TransferBatch\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"TransferSingle\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"value\",\"type\":\"string\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"}],\"name\":\"URI\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"accounts\",\"type\":\"address[]\"},{\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\"}],\"name\":\"balanceOfBatch\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"uri\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"}]"; - public const string ERC_721 = - "[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"approved\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"safeMint\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"getApproved\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"ownerOf\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"tokenURI\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"}]"; + public const string ERC_721 = + "[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"approved\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"safeMint\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"getApproved\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"ownerOf\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"tokenURI\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"}]"; - public const string ADD_TOTAL_ABI = - "[ { \"inputs\": [ { \"internalType\": \"uint8\", \"name\": \"_myArg\", \"type\": \"uint8\" } ], \"name\": \"addTotal\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"myTotal\", \"outputs\": [ { \"internalType\": \"uint256\", \"name\": \"\", \"type\": \"uint256\" } ], \"stateMutability\": \"view\", \"type\": \"function\" } ]"; + public const string ADD_TOTAL_ABI = + "[ { \"inputs\": [ { \"internalType\": \"uint8\", \"name\": \"_myArg\", \"type\": \"uint8\" } ], \"name\": \"addTotal\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"myTotal\", \"outputs\": [ { \"internalType\": \"uint256\", \"name\": \"\", \"type\": \"uint256\" } ], \"stateMutability\": \"view\", \"type\": \"function\" } ]"; + } } \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/CSServer.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/CSServer.cs index 6e8dc06a1..4f9993669 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/CSServer.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Remote/CSServer.cs @@ -1,8 +1,8 @@ using System.Collections.Generic; using System.Text; using System.Threading.Tasks; -using ChainSafe.GamingWeb3; -using Models; +using ChainSafe.Gaming.UnityPackage.Model; +using ChainSafe.Gaming.Web3; using Newtonsoft.Json; using UnityEngine; using UnityEngine.Networking; diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc1155.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc1155.cs index a9d31a106..c926dea80 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc1155.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc1155.cs @@ -1,7 +1,7 @@ using System.Collections.Generic; using System.Numerics; using System.Threading.Tasks; -using ChainSafe.GamingWeb3; +using ChainSafe.Gaming.Web3; namespace Scripts.EVM.Token { diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc20.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc20.cs index d72bc227f..842995699 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc20.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc20.cs @@ -1,6 +1,6 @@ using System.Numerics; using System.Threading.Tasks; -using ChainSafe.GamingWeb3; +using ChainSafe.Gaming.Web3; namespace Scripts.EVM.Token { diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc721.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc721.cs index 8a6da36dc..b3a09d4bd 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc721.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EVM/Token/Erc721.cs @@ -1,6 +1,6 @@ using System.Collections.Generic; using System.Threading.Tasks; -using ChainSafe.GamingWeb3; +using ChainSafe.Gaming.Web3; using Newtonsoft.Json; using UnityEngine; diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EthMethod.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EthMethod.cs index fd7325f4f..58e321df1 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EthMethod.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/EthMethod.cs @@ -1,14 +1,17 @@ -public static class EthMethod +namespace ChainSafe.Gaming.UnityPackage { - public const string BalanceOf = "balanceOf"; - public const string Name = "name"; - public const string Symbol = "symbol"; - public const string Decimals = "decimals"; - public const string TotalSupply = "totalSupply"; - public const string OwnerOf = "ownerOf"; - public const string TokenUri = "tokenURI"; - public const string Uri = "uri"; - public const string BalanceOfBatch = "balanceOfBatch"; - public const string Transfer = "transfer"; - public const string SafeTransferFrom = "safeTransferFrom"; + public static class EthMethod + { + public const string BalanceOf = "balanceOf"; + public const string Name = "name"; + public const string Symbol = "symbol"; + public const string Decimals = "decimals"; + public const string TotalSupply = "totalSupply"; + public const string OwnerOf = "ownerOf"; + public const string TokenUri = "tokenURI"; + public const string Uri = "uri"; + public const string BalanceOfBatch = "balanceOfBatch"; + public const string Transfer = "transfer"; + public const string SafeTransferFrom = "safeTransferFrom"; + } } \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/BuyNFT.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/BuyNFT.cs index 0895b3144..0d66e3ba3 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/BuyNFT.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/BuyNFT.cs @@ -1,9 +1,6 @@ using System; -using System.Collections; -using System.Collections.Generic; -using UnityEngine; -namespace Models +namespace ChainSafe.Gaming.UnityPackage.Model { public class BuyNFT { @@ -14,6 +11,7 @@ public class Connection public string chain; public string network; } + [Serializable] public class Response { @@ -21,11 +19,13 @@ public class Response public Connection connection; public Tx tx; } + [Serializable] public class Root { public Response response; } + [Serializable] public class Tx { @@ -37,4 +37,4 @@ public class Tx public string gasLimit; } } -} +} \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/CollectionsModel.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/CollectionsModel.cs index 1e549ef44..7d4d53ba1 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/CollectionsModel.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/CollectionsModel.cs @@ -1,7 +1,7 @@ using System; using System.Collections.Generic; -namespace Models +namespace ChainSafe.Gaming.UnityPackage.Model { public class CollectionModel { diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/CreateMintModel.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/CreateMintModel.cs index 61cb06382..3bd1795ef 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/CreateMintModel.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/CreateMintModel.cs @@ -1,5 +1,5 @@ using System; -namespace Models +namespace ChainSafe.Gaming.UnityPackage.Model { public class CreateMintModel { diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/CreateRedeemVoucherModel.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/CreateRedeemVoucherModel.cs index bb460c000..4513f7d77 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/CreateRedeemVoucherModel.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/CreateRedeemVoucherModel.cs @@ -1,6 +1,6 @@ using System; -namespace Models +namespace ChainSafe.Gaming.UnityPackage.Model { public class CreateRedeemVoucherModel { diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetNftListModel.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetNftListModel.cs index 2cd0cdb09..a19bf1075 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetNftListModel.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetNftListModel.cs @@ -1,7 +1,7 @@ using System; using System.Collections.Generic; -namespace Models +namespace ChainSafe.Gaming.UnityPackage.Model { public class GetNftListModel { diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetNftModel.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetNftModel.cs index a3f3809a2..dc054d743 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetNftModel.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetNftModel.cs @@ -1,7 +1,7 @@ using System; using System.Collections.Generic; -namespace Models +namespace ChainSafe.Gaming.UnityPackage.Model { public class GetNftModel { diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetRootNft.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetRootNft.cs index adf040da1..dfb1c3146 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetRootNft.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetRootNft.cs @@ -4,7 +4,7 @@ using UnityEngine; -namespace Models +namespace ChainSafe.Gaming.UnityPackage.Model { [Serializable] public class Properties diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetVoucherModel.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetVoucherModel.cs index 18b05962f..49bc6e487 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetVoucherModel.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/GetVoucherModel.cs @@ -1,7 +1,7 @@ using System; using System.Numerics; -namespace Models +namespace ChainSafe.Gaming.UnityPackage.Model { public class GetVoucherModel { diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/ListNFT.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/ListNFT.cs index a04023ff0..40ea3d964 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/ListNFT.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/ListNFT.cs @@ -4,7 +4,7 @@ using UnityEngine; -namespace Models +namespace ChainSafe.Gaming.UnityPackage.Model { public class ListNFT { diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/MintedNFT.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/MintedNFT.cs index ec05b653d..329c96de0 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/MintedNFT.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/MintedNFT.cs @@ -1,7 +1,7 @@ using System; using System.Collections.Generic; -namespace Models +namespace ChainSafe.Gaming.UnityPackage.Model { public class MintedNFT { diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/RedeemVoucherTxModel.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/RedeemVoucherTxModel.cs index 059ceb00f..e35d6a0b8 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/RedeemVoucherTxModel.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Model/RedeemVoucherTxModel.cs @@ -1,6 +1,6 @@ using System; -namespace Models +namespace ChainSafe.Gaming.UnityPackage.Model { public class RedeemVoucherTxModel { diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/ProjectConfigScriptableObject.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/ProjectConfigScriptableObject.cs index 8b51d3a87..8e19e2a0e 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/ProjectConfigScriptableObject.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/ProjectConfigScriptableObject.cs @@ -1,63 +1,65 @@ -using ChainSafe.GamingWeb3; +using ChainSafe.Gaming.Web3; using UnityEngine; -using UnityEngine.Serialization; -[CreateAssetMenu(fileName = "ProjectConfigData", menuName = "ScriptableObjects/ProjectConfigScriptableObject", - order = 1)] -public class ProjectConfigScriptableObject : ScriptableObject, ICompleteProjectConfig +namespace ChainSafe.Gaming.UnityPackage { - [SerializeField] private string projectID; - [SerializeField] private string chainID; - [SerializeField] private string chain; - [SerializeField] private string network; - [SerializeField] private string symbol; - [SerializeField] private string rpc; - - public string ProjectId + [CreateAssetMenu(fileName = "ProjectConfigData", menuName = "ScriptableObjects/ProjectConfigScriptableObject", + order = 1)] + public class ProjectConfigScriptableObject : ScriptableObject, ICompleteProjectConfig { - get => projectID; - set => projectID = value; - } + [SerializeField] private string projectID; + [SerializeField] private string chainID; + [SerializeField] private string chain; + [SerializeField] private string network; + [SerializeField] private string symbol; + [SerializeField] private string rpc; - public string ChainId - { - get => chainID; - set => chainID = value; - } + public string Symbol + { + get => symbol; + set => symbol = value; + } - public string Chain - { - get => chain; - set => chain = value; - } + public string ProjectId + { + get => projectID; + set => projectID = value; + } - public string Network - { - get => network; - set => network = value; - } + public string ChainId + { + get => chainID; + set => chainID = value; + } - public string Symbol - { - get => symbol; - set => symbol = value; - } + public string Chain + { + get => chain; + set => chain = value; + } - public string Rpc - { - get => rpc; - set => rpc = value; - } + public string Network + { + get => network; + set => network = value; + } - public string Ipc - { - get => rpc; - set => rpc = value; - } + public string Rpc + { + get => rpc; + set => rpc = value; + } - public string Ws - { - get => rpc; - set => rpc = value; + public string Ipc + { + get => rpc; + set => rpc = value; + } + + public string Ws + { + get => rpc; + set => rpc = value; + } } } \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/ProjectConfigUtilities.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/ProjectConfigUtilities.cs index f504403a2..784d9c56d 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/ProjectConfigUtilities.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/ProjectConfigUtilities.cs @@ -3,57 +3,60 @@ using System.IO; using UnityEngine; -public static class ProjectConfigUtilities +namespace ChainSafe.Gaming.UnityPackage { - private const string AssetName = "ProjectConfigData"; - - public static ProjectConfigScriptableObject Load() + public static class ProjectConfigUtilities { - var projectConfig = Resources.Load(AssetName); - return projectConfig ? projectConfig : null; - } + private const string AssetName = "ProjectConfigData"; - public static ProjectConfigScriptableObject Load(string projectId, string chainId, string chain, string network, - string symbol, string rpc) - { - var projectConfig = ScriptableObject.CreateInstance(); + public static ProjectConfigScriptableObject Load() + { + var projectConfig = Resources.Load(AssetName); + return projectConfig ? projectConfig : null; + } - projectConfig.ProjectId = projectId; - projectConfig.ChainId = chainId; - projectConfig.Chain = chain; - projectConfig.Network = network; - projectConfig.Symbol = symbol; - projectConfig.Rpc = rpc; + public static ProjectConfigScriptableObject Load(string projectId, string chainId, string chain, string network, + string symbol, string rpc) + { + var projectConfig = ScriptableObject.CreateInstance(); - return projectConfig; - } + projectConfig.ProjectId = projectId; + projectConfig.ChainId = chainId; + projectConfig.Chain = chain; + projectConfig.Network = network; + projectConfig.Symbol = symbol; + projectConfig.Rpc = rpc; -#if UNITY_EDITOR - public static ProjectConfigScriptableObject CreateOrLoad() - { - var projectConfig = Load(); + return projectConfig; + } - if (projectConfig == null) +#if UNITY_EDITOR + public static ProjectConfigScriptableObject CreateOrLoad() { - string assetDirectory = Path.Combine(Application.dataPath, nameof(Resources)); + var projectConfig = Load(); - if (!Directory.Exists(assetDirectory)) + if (projectConfig == null) { - Directory.CreateDirectory(assetDirectory); + string assetDirectory = Path.Combine(Application.dataPath, nameof(Resources)); + + if (!Directory.Exists(assetDirectory)) + { + Directory.CreateDirectory(assetDirectory); + } + + projectConfig = ScriptableObject.CreateInstance(); + UnityEditor.AssetDatabase.CreateAsset(projectConfig, + Path.Combine("Assets", nameof(Resources), $"{AssetName}.asset")); } - projectConfig = ScriptableObject.CreateInstance(); - UnityEditor.AssetDatabase.CreateAsset(projectConfig, - Path.Combine("Assets", nameof(Resources), $"{AssetName}.asset")); + return projectConfig; } - return projectConfig; - } - - public static void Save(ProjectConfigScriptableObject projectConfig) - { - UnityEditor.EditorUtility.SetDirty(projectConfig); - UnityEditor.AssetDatabase.SaveAssets(); - } + public static void Save(ProjectConfigScriptableObject projectConfig) + { + UnityEditor.EditorUtility.SetDirty(projectConfig); + UnityEditor.AssetDatabase.SaveAssets(); + } #endif + } } \ No newline at end of file diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Samples/ERC1155/ImportNFTTextureExample.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Samples/ERC1155/ImportNFTTextureExample.cs index 686e51e12..c44e5bde7 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Samples/ERC1155/ImportNFTTextureExample.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Samples/ERC1155/ImportNFTTextureExample.cs @@ -2,42 +2,49 @@ using UnityEngine; using UnityEngine.Networking; -public class ImportNFTTextureExample : MonoBehaviour +namespace ChainSafe.Gaming.UnityPackage { - public class Response + public class ImportNFTTextureExample : MonoBehaviour { - public string image; - } - - async void Start() - { - string contract = "0x0288B4F1389ED7b3d3f9C7B73d4408235c0CBbc6"; - string tokenId = "0"; - - // fetch uri from chain - string uri = await Erc1155.URI(Web3Accessor.Web3, contract, tokenId); - print("uri: " + uri); - - // fetch json from uri - UnityWebRequest webRequest = UnityWebRequest.Get(uri); - await webRequest.SendWebRequest(); - if (webRequest.result != UnityWebRequest.Result.Success) + public class Response { - throw new System.Exception(webRequest.error); + public string image; } - Response data = JsonUtility.FromJson(System.Text.Encoding.UTF8.GetString(webRequest.downloadHandler.data)); - // parse json to get image uri - string imageUri = data.image; - print("imageUri: " + imageUri); - if (imageUri.StartsWith("ipfs://")) + async void Start() { - imageUri = imageUri.Replace("ipfs://", "https://ipfs.io/ipfs/"); + string contract = "0x0288B4F1389ED7b3d3f9C7B73d4408235c0CBbc6"; + string tokenId = "0"; + + // fetch uri from chain + string uri = await Erc1155.URI(Web3Accessor.Web3, contract, tokenId); + print("uri: " + uri); + + // fetch json from uri + UnityWebRequest webRequest = UnityWebRequest.Get(uri); + await webRequest.SendWebRequest(); + if (webRequest.result != UnityWebRequest.Result.Success) + { + throw new System.Exception(webRequest.error); + } + + Response data = + JsonUtility.FromJson(System.Text.Encoding.UTF8.GetString(webRequest.downloadHandler.data)); + + // parse json to get image uri + string imageUri = data.image; + print("imageUri: " + imageUri); + if (imageUri.StartsWith("ipfs://")) + { + imageUri = imageUri.Replace("ipfs://", "https://ipfs.io/ipfs/"); + } + + Debug.Log("Revised URI: " + imageUri); + // fetch image and display in game + UnityWebRequest textureRequest = UnityWebRequestTexture.GetTexture(imageUri); + await textureRequest.SendWebRequest(); + gameObject.GetComponent().material.mainTexture = + ((DownloadHandlerTexture)textureRequest.downloadHandler).texture; } - Debug.Log("Revised URI: " + imageUri); - // fetch image and display in game - UnityWebRequest textureRequest = UnityWebRequestTexture.GetTexture(imageUri); - await textureRequest.SendWebRequest(); - gameObject.GetComponent().material.mainTexture = ((DownloadHandlerTexture)textureRequest.downloadHandler).texture; } } diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Samples/Erc1155Sample.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Samples/Erc1155Sample.cs index 766b9c339..4f033c43e 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Samples/Erc1155Sample.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Samples/Erc1155Sample.cs @@ -4,7 +4,7 @@ using System.Numerics; using System.Text; using System.Threading.Tasks; -using ChainSafe.GamingWeb3; +using ChainSafe.Gaming.Web3; using Newtonsoft.Json; using Scripts.EVM.Remote; using Scripts.EVM.Token; diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Samples/Erc20Sample.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Samples/Erc20Sample.cs index d648b79b6..1e32dc692 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Samples/Erc20Sample.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Samples/Erc20Sample.cs @@ -1,8 +1,8 @@ using System.Numerics; using System.Threading.Tasks; -using ChainSafe.GamingWeb3; +using ChainSafe.Gaming.Evm.Providers; +using ChainSafe.Gaming.Web3; using Scripts.EVM.Token; -using Web3Unity.Scripts.Library.Ethers.Providers; public class Erc20Sample { diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Samples/Erc721Sample.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Samples/Erc721Sample.cs index 8f0e577b6..b3f2a6dcf 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Samples/Erc721Sample.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Samples/Erc721Sample.cs @@ -1,9 +1,7 @@ using System; using System.Collections.Generic; using System.Threading.Tasks; -using ChainSafe.GamingWeb3; -using Newtonsoft.Json; -using UnityEngine; +using ChainSafe.Gaming.Web3; using Scripts.EVM.Remote; using Scripts.EVM.Token; diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Samples/GelatoSample.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Samples/GelatoSample.cs index 1572ed20d..1d22b2b1e 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Samples/GelatoSample.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Samples/GelatoSample.cs @@ -1,10 +1,11 @@ using System.Numerics; using System.Threading.Tasks; +using ChainSafe.Gaming.Web3; using ChainSafe.GamingSdk.Gelato; using ChainSafe.GamingSdk.Gelato.Dto; -using ChainSafe.GamingWeb3; using UnityEngine; + public class GelatoSample { private readonly Web3 _web3; diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Samples/UnsortedSample.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Samples/UnsortedSample.cs index fed10b4f5..122a35f02 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Samples/UnsortedSample.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Samples/UnsortedSample.cs @@ -3,12 +3,12 @@ using System.Numerics; using System.Text; using System.Threading.Tasks; -using ChainSafe.GamingWeb3; +using ChainSafe.Gaming.Evm.Providers; +using ChainSafe.Gaming.Evm.Transactions; +using ChainSafe.Gaming.Web3; using Nethereum.Hex.HexTypes; using Nethereum.Signer; using Nethereum.Util; -using Web3Unity.Scripts.Library.Ethers.Providers; -using Web3Unity.Scripts.Library.Ethers.Transactions; namespace Web3Unity.Scripts.Prefabs { diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Web3Accessor.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Web3Accessor.cs index 0a982204a..9de9813a7 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Web3Accessor.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/Web3Accessor.cs @@ -1,53 +1,56 @@ -using ChainSafe.GamingWeb3; using UnityEngine; using UnityEngine.SceneManagement; -public class Web3Accessor : MonoBehaviour +namespace ChainSafe.Gaming.UnityPackage { - static Web3Accessor instance; + public class Web3Accessor : MonoBehaviour + { + static Web3Accessor instance; - Web3 web3; + Web3.Web3 web3; - static Web3Accessor Instance - { - get + static Web3Accessor Instance { - if (!instance) + get { -#if UNITY_EDITOR - // Having to switch to the first scene while working is a pain. - // Instead, we refuse to create an instance if the editor is - // currently running in any other scene and load the first scene - // instead. - if (SceneManager.GetActiveScene().buildIndex != 0) + if (!instance) { - SceneManager.LoadScene(0); - // Throw exception to prevent rest of code from running - throw new System.Exception("Refusing to create Web3 instance since current scene is not first scene"); - } +#if UNITY_EDITOR + // Having to switch to the first scene while working is a pain. + // Instead, we refuse to create an instance if the editor is + // currently running in any other scene and load the first scene + // instead. + if (SceneManager.GetActiveScene().buildIndex != 0) + { + SceneManager.LoadScene(0); + // Throw exception to prevent rest of code from running + throw new System.Exception( + "Refusing to create Web3 instance since current scene is not first scene"); + } #endif - var go = new GameObject("Web3Accessor"); - DontDestroyOnLoad(go); - instance = go.AddComponent(); - } + var go = new GameObject("Web3Accessor"); + DontDestroyOnLoad(go); + instance = go.AddComponent(); + } - return instance; + return instance; + } } - } - public static Web3 Web3 => Instance.web3; + public static Web3.Web3 Web3 => Instance.web3; - public static Web3 TryWeb3 => instance ? instance.web3 : null; + public static Web3.Web3 TryWeb3 => instance ? instance.web3 : null; - public static void Set(Web3 web3) - { - if (Instance.web3 != null) + public static void Set(Web3.Web3 web3) { - throw new System.Exception("Web3 instance was already initialized"); + if (Instance.web3 != null) + { + throw new System.Exception("Web3 instance was already initialized"); + } + + Instance.web3 = web3; } - Instance.web3 = web3; + public static void Clear() => Instance.web3 = null; } - - public static void Clear() => Instance.web3 = null; } diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/WebGLWallet/WebGLWallet.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/WebGLWallet/WebGLWallet.cs index 9d6923469..70e2969ed 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/WebGLWallet/WebGLWallet.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/WebGLWallet/WebGLWallet.cs @@ -1,22 +1,21 @@ using System; -using System.Collections.Generic; using System.Runtime.InteropServices; using System.Threading.Tasks; -using ChainSafe.GamingSDK.EVM.Web3.Core; -using ChainSafe.GamingSDK.EVM.Web3.Core.Debug; -using ChainSafe.GamingSDK.EVM.Web3.Core.Evm; -using ChainSafe.GamingWeb3; +using ChainSafe.Gaming.Evm.Providers; +using ChainSafe.Gaming.Evm.Signers; +using ChainSafe.Gaming.Evm.Transactions; +using ChainSafe.Gaming.Web3; +using ChainSafe.Gaming.Web3.Core; +using ChainSafe.Gaming.Web3.Core.Debug; +using ChainSafe.Gaming.Web3.Core.Evm; using JetBrains.Annotations; using Nethereum.ABI.EIP712; using Newtonsoft.Json; using UnityEngine; -using Web3Unity.Scripts.Library.Ethers.Providers; -using Web3Unity.Scripts.Library.Ethers.Signers; -using Web3Unity.Scripts.Library.Ethers.Transactions; -namespace ChainSafe.GamingSDK.EVM.WebGLWallet +namespace ChainSafe.Gaming.Wallets { -#if UNITY_WEBGL && !UNITY_EDITOR +#if !UNITY_EDITOR && UNITY_WEBGL // todo: check if window.web3gl is bound during initialization public class WebGLWallet : ISigner, ITransactionExecutor, ILifecycleParticipant { @@ -36,7 +35,10 @@ public async ValueTask WillStartAsync() address = await PollJsSide(JS_getConnectAccount); } - public ValueTask WillStopAsync() => new(Task.CompletedTask); + public ValueTask WillStopAsync() + { + return new ValueTask(Task.CompletedTask); + } public Task GetAddress() { @@ -105,7 +107,8 @@ public async Task SignTypedData(SerializableDomain domain, { var types = MemberDescriptionFactory.GetTypesMemberDescription(typeof(TStructType)); JS_resetSignTypedMessageResponse(); - JS_signTypedMessage(JsonConvert.SerializeObject(domain), JsonConvert.SerializeObject(types), JsonConvert.SerializeObject(message)); + JS_signTypedMessage(JsonConvert.SerializeObject(domain), JsonConvert.SerializeObject(types), + JsonConvert.SerializeObject(message)); var signedTypedMessageResponse = await PollJsSide(JS_getSignTypedMessageResponse); AssertResponseSuccessful(signedTypedMessageResponse); return signedTypedMessageResponse; @@ -127,38 +130,47 @@ private static async Task PollJsSide(Func getMethod) jsResponse = getMethod(); await Task.Yield(); } while (string.IsNullOrEmpty(jsResponse)); + return jsResponse; } // Connect [DllImport("__Internal")] private static extern void JS_web3Connect(); + [DllImport("__Internal")] private static extern string JS_getConnectAccount(); + [DllImport("__Internal")] private static extern void JS_resetConnectAccount(); // SignMessage [DllImport("__Internal")] private static extern void JS_signMessage(string value); + [DllImport("__Internal")] private static extern string JS_getSignMessageResponse(); + [DllImport("__Internal")] private static extern void JS_resetSignMessageResponse(); // SignTypedMessage [DllImport("__Internal")] private static extern void JS_signTypedMessage(string domain, string types, string message); + [DllImport("__Internal")] private static extern string JS_getSignTypedMessageResponse(); + [DllImport("__Internal")] private static extern void JS_resetSignTypedMessageResponse(); // SendTransaction (no data) [DllImport("__Internal")] private static extern void JS_sendTransaction(string to, string value, string gasLimit, string gasPrice); + [DllImport("__Internal")] private static extern string JS_getSendTransactionResponse(); + [DllImport("__Internal")] private static extern void JS_resetSendTransactionResponse(); @@ -166,8 +178,10 @@ private static async Task PollJsSide(Func getMethod) [DllImport("__Internal")] private static extern void JS_sendTransactionData(string to, string value, string gasPrice, string gasLimit, string data); + [DllImport("__Internal")] private static extern string JS_getSendTransactionResponseData(); + [DllImport("__Internal")] private static extern void JS_resetSendTransactionResponseData(); } @@ -197,7 +211,8 @@ public Task SignTypedData(SerializableDomain domain, TStruc public ValueTask WillStartAsync() { - throw new Web3Exception($"{nameof(WebGLWallet)} can only be used on {RuntimePlatform.WebGLPlayer} platform"); + throw new Web3Exception( + $"{nameof(WebGLWallet)} can only be used on {RuntimePlatform.WebGLPlayer} platform"); } public ValueTask WillStopAsync() diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/WebGLWallet/WebGLWalletExtensions.cs b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/WebGLWallet/WebGLWalletExtensions.cs index 43714d2c8..2b2e1ce16 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/WebGLWallet/WebGLWalletExtensions.cs +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/WebGLWallet/WebGLWalletExtensions.cs @@ -1,9 +1,10 @@ -using ChainSafe.GamingSDK.EVM.Web3.Core; -using ChainSafe.GamingSDK.EVM.Web3.Core.Evm; -using ChainSafe.GamingWeb3.Build; -using Web3Unity.Scripts.Library.Ethers.Signers; + +using ChainSafe.Gaming.Evm.Signers; +using ChainSafe.Gaming.Web3.Build; +using ChainSafe.Gaming.Web3.Core; +using ChainSafe.Gaming.Web3.Core.Evm; -namespace ChainSafe.GamingSDK.EVM.WebGLWallet +namespace ChainSafe.Gaming.Wallets { public static class WebGLWalletExtensions { diff --git a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/WebGLWallet/link.xml b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/WebGLWallet/link.xml index 53bac8ca0..7f27960ac 100644 --- a/Packages/io.chainsafe.web3-unity/Runtime/Scripts/WebGLWallet/link.xml +++ b/Packages/io.chainsafe.web3-unity/Runtime/Scripts/WebGLWallet/link.xml @@ -1,6 +1,6 @@  - + diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Logout.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Logout.cs index c2b0dae98..9c4e129f3 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Logout.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Logout.cs @@ -1,3 +1,4 @@ +using ChainSafe.Gaming.UnityPackage; using Scenes; using UnityEngine; using UnityEngine.SceneManagement; diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/CreateApproval.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/CreateApproval.cs index fd2f1d263..b4998afad 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/CreateApproval.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/CreateApproval.cs @@ -1,9 +1,10 @@ using Nethereum.Hex.HexTypes; using Newtonsoft.Json; using System; +using ChainSafe.Gaming.Evm.Transactions; +using ChainSafe.Gaming.UnityPackage; using UnityEngine; using Scripts.EVM.Remote; -using Web3Unity.Scripts.Library.Ethers.Transactions; public class CreateApproval : MonoBehaviour { diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/GetListedCollections.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/GetListedCollections.cs index aa93503f4..d7ff43f5a 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/GetListedCollections.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/GetListedCollections.cs @@ -1,13 +1,14 @@ using System; using System.Collections; using System.Collections.Generic; -using Models; +using ChainSafe.Gaming.Evm.Transactions; +using ChainSafe.Gaming.UnityPackage; +using ChainSafe.Gaming.UnityPackage.Model; using Newtonsoft.Json; using UnityEngine; using UnityEngine.Networking; using UnityEngine.UI; using Scripts.EVM.Remote; -using Web3Unity.Scripts.Library.Ethers.Transactions; // using Web3Unity.Scripts.Library.Web3Wallet; public class GetListedCollections : MonoBehaviour diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/GetListedNFT.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/GetListedNFT.cs index 4bf9b1e02..5fff50f99 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/GetListedNFT.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/GetListedNFT.cs @@ -4,14 +4,15 @@ using System.Linq; using System.Numerics; using System.Threading.Tasks; -using Models; +using ChainSafe.Gaming.Evm.Transactions; +using ChainSafe.Gaming.UnityPackage; +using ChainSafe.Gaming.UnityPackage.Model; using Nethereum.Hex.HexTypes; using Newtonsoft.Json; using UnityEngine; using UnityEngine.Networking; using UnityEngine.UI; using Scripts.EVM.Remote; -using Web3Unity.Scripts.Library.Ethers.Transactions; // using Web3Unity.Scripts.Library.Web3Wallet; public class GetListedNFT : MonoBehaviour diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/ListCollections.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/ListCollections.cs index 1d2518ff6..72acdeafd 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/ListCollections.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/ListCollections.cs @@ -2,14 +2,15 @@ using System.Collections; using System.Collections.Generic; using System.Globalization; -using Models; +using ChainSafe.Gaming.Evm.Transactions; +using ChainSafe.Gaming.UnityPackage; +using ChainSafe.Gaming.UnityPackage.Model; using Nethereum.Hex.HexTypes; using Newtonsoft.Json; using UnityEngine; using UnityEngine.Networking; using UnityEngine.UI; using Scripts.EVM.Remote; -using Web3Unity.Scripts.Library.Ethers.Transactions; // using Web3Unity.Scripts.Library.Web3Wallet; public class ListCollections : MonoBehaviour diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/ListNft.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/ListNft.cs index 69eebb245..9db009603 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/ListNft.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/ListNft.cs @@ -2,14 +2,15 @@ using System.Collections; using System.Globalization; using System.Text; -using Models; +using ChainSafe.Gaming.Evm.Transactions; +using ChainSafe.Gaming.UnityPackage; +using ChainSafe.Gaming.UnityPackage.Model; using Nethereum.Hex.HexTypes; using Newtonsoft.Json; using UnityEngine; using UnityEngine.Networking; using UnityEngine.UI; using Scripts.EVM.Remote; -using Web3Unity.Scripts.Library.Ethers.Transactions; namespace Web3Unity.Scripts.Prefabs.Minter { diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/Mint1155.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/Mint1155.cs index 1659f091f..4be2c33e7 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/Mint1155.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/Mint1155.cs @@ -1,7 +1,8 @@ -using Models; +using ChainSafe.Gaming.Evm.Transactions; +using ChainSafe.Gaming.UnityPackage; +using ChainSafe.Gaming.UnityPackage.Model; using UnityEngine; using Scripts.EVM.Remote; -using Web3Unity.Scripts.Library.Ethers.Transactions; using Nethereum.Hex.HexTypes; using Newtonsoft.Json; diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/Mint721Voucher.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/Mint721Voucher.cs index 006c14b6b..16b4b6e41 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/Mint721Voucher.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Prefabs/Minter/Mint721Voucher.cs @@ -1,9 +1,10 @@ -using Models; +using ChainSafe.Gaming.Evm.Transactions; +using ChainSafe.Gaming.UnityPackage; +using ChainSafe.Gaming.UnityPackage.Model; using Nethereum.Hex.HexTypes; using Newtonsoft.Json; using UnityEngine; using Scripts.EVM.Remote; -using Web3Unity.Scripts.Library.Ethers.Transactions; public class Mint721Voucher : MonoBehaviour { diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/Login.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/Login.cs index 161b5e83f..a8935759d 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/Login.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/Login.cs @@ -2,19 +2,21 @@ using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; -using ChainSafe.GamingSDK.EVM.MetaMaskBrowserWallet; -using ChainSafe.GamingSDK.EVM.WebGLWallet; +using ChainSafe.Gaming.Evm.Contracts; +using ChainSafe.Gaming.Evm.JsonRpc; +using ChainSafe.Gaming.UnityPackage; +using ChainSafe.Gaming.Wallets; +using ChainSafe.Gaming.Web3; +using ChainSafe.Gaming.Web3.Build; +using ChainSafe.Gaming.Web3.Unity; using ChainSafe.GamingSdk.Gelato; using ChainSafe.GamingSdk.Web3Auth; -using ChainSafe.GamingWeb3; -using ChainSafe.GamingWeb3.Build; -using ChainSafe.GamingWeb3.Unity; + using UnityEngine; using UnityEngine.Assertions; using UnityEngine.SceneManagement; using UnityEngine.UI; -using Web3Unity.Scripts.Library.Ethers.Contracts; -using Web3Unity.Scripts.Library.Ethers.JsonRpc; + namespace Scenes { diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/AccountLabel.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/AccountLabel.cs index d9da36349..3ee3028e3 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/AccountLabel.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/AccountLabel.cs @@ -1,3 +1,4 @@ +using ChainSafe.Gaming.UnityPackage; using TMPro; using UnityEngine; diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc1155/Erc1155AllBehaviour.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc1155/Erc1155AllBehaviour.cs index ee03ef4b9..0b2eda5e9 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc1155/Erc1155AllBehaviour.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc1155/Erc1155AllBehaviour.cs @@ -1,5 +1,6 @@ using System.Linq; using System.Threading.Tasks; +using ChainSafe.Gaming.UnityPackage; using UnityEngine; using Web3Unity.Scripts.Prefabs; diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc1155/Erc1155BalanceOfBatchBehaviour.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc1155/Erc1155BalanceOfBatchBehaviour.cs index 0230624eb..a7cb43323 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc1155/Erc1155BalanceOfBatchBehaviour.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc1155/Erc1155BalanceOfBatchBehaviour.cs @@ -1,4 +1,5 @@ using System.Threading.Tasks; +using ChainSafe.Gaming.UnityPackage; using Web3Unity.Scripts.Prefabs; namespace Samples.Behaviours.Erc1155 diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc1155/Erc1155BalanceOfBehaviour.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc1155/Erc1155BalanceOfBehaviour.cs index e8339a92a..5e9a7d02e 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc1155/Erc1155BalanceOfBehaviour.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc1155/Erc1155BalanceOfBehaviour.cs @@ -1,4 +1,5 @@ using System.Threading.Tasks; +using ChainSafe.Gaming.UnityPackage; using Web3Unity.Scripts.Prefabs; namespace Samples.Behaviours.Erc1155 diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc1155/Erc1155UriBehaviour.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc1155/Erc1155UriBehaviour.cs index dc48eac35..aa2da9b86 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc1155/Erc1155UriBehaviour.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc1155/Erc1155UriBehaviour.cs @@ -1,5 +1,6 @@ using System; using System.Threading.Tasks; +using ChainSafe.Gaming.UnityPackage; using Web3Unity.Scripts.Prefabs; namespace Samples.Behaviours.Erc1155 diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc721/Erc721AllBehaviour.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc721/Erc721AllBehaviour.cs index 627a81578..0b3add117 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc721/Erc721AllBehaviour.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc721/Erc721AllBehaviour.cs @@ -1,5 +1,6 @@ using System.Linq; using System.Threading.Tasks; +using ChainSafe.Gaming.UnityPackage; using UnityEngine; using Web3Unity.Scripts.Prefabs; diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc721/Erc721BalanceOfBehaviour.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc721/Erc721BalanceOfBehaviour.cs index 262dacf20..e90fb6f17 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc721/Erc721BalanceOfBehaviour.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc721/Erc721BalanceOfBehaviour.cs @@ -1,4 +1,5 @@ using System.Threading.Tasks; +using ChainSafe.Gaming.UnityPackage; using Web3Unity.Scripts.Prefabs; namespace Samples.Behaviours.Erc721 diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc721/Erc721OwnerOfBatchBehaviour.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc721/Erc721OwnerOfBatchBehaviour.cs index 1fd980b0a..c8cf3f325 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc721/Erc721OwnerOfBatchBehaviour.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc721/Erc721OwnerOfBatchBehaviour.cs @@ -1,5 +1,6 @@ using System.Collections.Generic; using System.Threading.Tasks; +using ChainSafe.Gaming.UnityPackage; using UnityEngine; using Web3Unity.Scripts.Prefabs; diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc721/Erc721OwnerOfBehaviour.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc721/Erc721OwnerOfBehaviour.cs index 4b2506856..9628aacb7 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc721/Erc721OwnerOfBehaviour.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc721/Erc721OwnerOfBehaviour.cs @@ -1,4 +1,5 @@ using System.Threading.Tasks; +using ChainSafe.Gaming.UnityPackage; using Web3Unity.Scripts.Prefabs; namespace Samples.Behaviours.Erc721 diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc721/Erc721UriBehaviour.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc721/Erc721UriBehaviour.cs index 393fe8dd2..0b8318d51 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc721/Erc721UriBehaviour.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/Erc721/Erc721UriBehaviour.cs @@ -1,4 +1,5 @@ using System.Threading.Tasks; +using ChainSafe.Gaming.UnityPackage; using Web3Unity.Scripts.Prefabs; namespace Samples.Behaviours.Erc721 diff --git a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/SampleBehaviour.cs b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/SampleBehaviour.cs index 608058690..180d1fd2c 100644 --- a/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/SampleBehaviour.cs +++ b/Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/Scripts/Scenes/SampleMain/SampleBehaviour.cs @@ -1,6 +1,7 @@ using System; using System.Threading.Tasks; -using ChainSafe.GamingWeb3; +using ChainSafe.Gaming.UnityPackage; +using ChainSafe.Gaming.Web3; using UnityEngine; using UnityEngine.UI; diff --git a/Packages/io.chainsafe.web3-unity/Tests/Runtime/Erc1155Tests.cs b/Packages/io.chainsafe.web3-unity/Tests/Runtime/Erc1155Tests.cs index 8f08f3e4c..9a46b76e5 100644 --- a/Packages/io.chainsafe.web3-unity/Tests/Runtime/Erc1155Tests.cs +++ b/Packages/io.chainsafe.web3-unity/Tests/Runtime/Erc1155Tests.cs @@ -2,12 +2,13 @@ using System.Collections.Generic; using System.Linq; using System.Numerics; -using ChainSafe.GamingWeb3.Build; -using ChainSafe.GamingWeb3.Unity; +using ChainSafe.Gaming.Evm.JsonRpc; +using ChainSafe.Gaming.UnityPackage; +using ChainSafe.Gaming.Web3.Build; +using ChainSafe.Gaming.Web3.Unity; using NUnit.Framework; using UnityEngine; using UnityEngine.TestTools; -using Web3Unity.Scripts.Library.Ethers.JsonRpc; using Web3Unity.Scripts.Prefabs; public class Erc1155Tests diff --git a/Packages/io.chainsafe.web3-unity/Tests/Runtime/Erc20Tests.cs b/Packages/io.chainsafe.web3-unity/Tests/Runtime/Erc20Tests.cs index 52b935ff5..68492341c 100644 --- a/Packages/io.chainsafe.web3-unity/Tests/Runtime/Erc20Tests.cs +++ b/Packages/io.chainsafe.web3-unity/Tests/Runtime/Erc20Tests.cs @@ -1,11 +1,12 @@ using System.Collections; using System.Numerics; -using ChainSafe.GamingWeb3.Build; -using ChainSafe.GamingWeb3.Unity; +using ChainSafe.Gaming.Evm.JsonRpc; +using ChainSafe.Gaming.UnityPackage; +using ChainSafe.Gaming.Web3.Build; +using ChainSafe.Gaming.Web3.Unity; using NUnit.Framework; using UnityEngine; using UnityEngine.TestTools; -using Web3Unity.Scripts.Library.Ethers.JsonRpc; public class Erc20Tests { diff --git a/Packages/io.chainsafe.web3-unity/Tests/Runtime/Erc721Tests.cs b/Packages/io.chainsafe.web3-unity/Tests/Runtime/Erc721Tests.cs index 70e56b92d..1ec25c669 100644 --- a/Packages/io.chainsafe.web3-unity/Tests/Runtime/Erc721Tests.cs +++ b/Packages/io.chainsafe.web3-unity/Tests/Runtime/Erc721Tests.cs @@ -2,12 +2,13 @@ using System.Collections.Generic; using System.Linq; using System.Numerics; -using ChainSafe.GamingWeb3.Build; -using ChainSafe.GamingWeb3.Unity; +using ChainSafe.Gaming.Evm.JsonRpc; +using ChainSafe.Gaming.UnityPackage; +using ChainSafe.Gaming.Web3.Build; +using ChainSafe.Gaming.Web3.Unity; using NUnit.Framework; using UnityEngine; using UnityEngine.TestTools; -using Web3Unity.Scripts.Library.Ethers.JsonRpc; using Web3Unity.Scripts.Prefabs; public class Erc721Tests @@ -15,11 +16,11 @@ public class Erc721Tests private const string balanceOfContractAddress = "0x9123541E259125657F03D7AD2A7D1a8Ec79375BA"; private const string balanceOfAccount = "0xd25b827D92b0fd656A1c829933e9b0b836d5C3e2"; - + private const string ownerOfContractAddress = "0x06dc21f89f01409e7ed0e4c80eae1430962ae52c"; private const string ownerOfTokenId = "0x01559ae4021a565d5cc4740f1cefa95de8c1fb193949ecd32c337b03047da501"; private const string ownerOfExpected = "0x7Ea535884Ba8342bE7aDbef0Fa6822E629162375"; - + private const string ownerOfBatchContractAddress = "0x47381c5c948254e6e0E324F1AA54b7B24104D92D"; private string[] ownerOfBatchTokenIds = { "33", "29" }; public string multicall = "0x77dca2c955b15e9de4dbbcf1246b4b85b651e50e"; @@ -28,7 +29,7 @@ public class Erc721Tests { "0x5e8caec3a556cbb8a3cb689560ea811bdddc8d90", "0x80cc9a67ead304bbb3b6cfca804773ef51da872c" }; private const string allContractAddress = "0x2c1867BC3026178A47a677513746DCc6822A137A"; - + private const string uriContractAddress = "0x06dc21f89f01409e7ed0e4c80eae1430962ae52c"; private const string uriTokenId = "0x01559ae4021a565d5cc4740f1cefa95de8c1fb193949ecd32c337b03047da501"; private Erc721Sample _logic; @@ -82,7 +83,7 @@ public IEnumerator TestBalanceOf() Assert.AreEqual(2, getBalanceOf.Result); } - + [UnityTest] public IEnumerator TestOwnerOf() { @@ -91,7 +92,7 @@ public IEnumerator TestOwnerOf() Assert.AreEqual(ownerOfExpected, getOwnerOf.Result); } - + [UnityTest] public IEnumerator TestOwnerOfBatch() { diff --git a/Packages/io.chainsafe.web3-unity/Tests/Runtime/chainsafe.web3-unity.RuntimeTests.asmdef b/Packages/io.chainsafe.web3-unity/Tests/Runtime/chainsafe.web3-unity.RuntimeTests.asmdef index 99c19a5c1..0c5d8752b 100644 --- a/Packages/io.chainsafe.web3-unity/Tests/Runtime/chainsafe.web3-unity.RuntimeTests.asmdef +++ b/Packages/io.chainsafe.web3-unity/Tests/Runtime/chainsafe.web3-unity.RuntimeTests.asmdef @@ -12,9 +12,9 @@ "overrideReferences": true, "precompiledReferences": [ "nunit.framework.dll", - "ChainSafe.GamingSDK.EVM.dll", - "ChainSafe.GamingSdk.EVM.Unity.dll", - "Microsoft.Extensions.DependencyInjection.Abstractions.dll" + "Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "ChainSafe.Gaming.dll", + "ChainSafe.Gaming.Unity.dll" ], "autoReferenced": false, "defineConstraints": [ diff --git a/README.md b/README.md index e51c65b3b..98344b639 100644 --- a/README.md +++ b/README.md @@ -25,7 +25,7 @@ https://docs.gaming.chainsafe.io/ ## Building the code - Clone the repository and run the `setup` script. - You can now open `src/UnitySampleProject` in Unity and start hacking! -- Whenever you make changes to the code in the libraries, run the `src/ChainSafe.GamingSdk.EVM.Unity/publish-to-unity-package` script from within the folder it is in. This will build and publish the libraries to the UPM package's folder, thus making any new code accessible inside Unity. +- Whenever you make changes to the code in the libraries, run the `src/ChainSafe.Gaming.Unity/publish-to-unity-package` script from within the folder it is in. This will build and publish the libraries to the UPM package's folder, thus making any new code accessible inside Unity. ## ChainSafe Security Policy diff --git a/duplicate_package_sample.sh b/duplicate_package_sample.sh deleted file mode 100644 index 819bd7b9e..000000000 --- a/duplicate_package_sample.sh +++ /dev/null @@ -1,14 +0,0 @@ -#!/bin/bash - -# Specify the source directory and the destination directory -SOURCE_DIRECTORY="src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/" -DESTINATION_DIRECTORY="Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/" - -# clear destination directory first -rm -r "$DESTINATION_DIRECTORY" - -# Copy source to the destination -cp -r "$SOURCE_DIRECTORY" "$DESTINATION_DIRECTORY" - -#add all modified files -git add "Packages/io.chainsafe.web3-unity/Samples~/Web3.Unity/." -f \ No newline at end of file diff --git a/setup.bat b/setup.bat index 9392567f5..a880668c1 100644 --- a/setup.bat +++ b/setup.bat @@ -4,6 +4,6 @@ REM clone submodules git submodule update --init REM publish DLLs to unity package -pushd src\ChainSafe.GamingSdk.EVM.Unity +pushd src\ChainSafe.Gaming.Unity .\publish-to-unity-package.bat popd \ No newline at end of file diff --git a/setup.sh b/setup.sh index f5de1a242..65163b175 100755 --- a/setup.sh +++ b/setup.sh @@ -4,6 +4,6 @@ git submodule update --init # publish DLLs to unity package -pushd src/ChainSafe.GamingSdk.EVM.Unity +pushd src/ChainSafe.Gaming.Unity ./publish-to-unity-package.sh popd diff --git a/src/ChainSafe.GamingSdk.EVM.NetCore/ChainSafe.GamingSdk.EVM.NetCore.csproj b/src/ChainSafe.Gaming.Gelato/ChainSafe.Gaming.Gelato.csproj similarity index 66% rename from src/ChainSafe.GamingSdk.EVM.NetCore/ChainSafe.GamingSdk.EVM.NetCore.csproj rename to src/ChainSafe.Gaming.Gelato/ChainSafe.Gaming.Gelato.csproj index ada66bb90..0951528b2 100644 --- a/src/ChainSafe.GamingSdk.EVM.NetCore/ChainSafe.GamingSdk.EVM.NetCore.csproj +++ b/src/ChainSafe.Gaming.Gelato/ChainSafe.Gaming.Gelato.csproj @@ -11,7 +11,12 @@ - + + + + + + diff --git a/src/ChainSafe.GamingSdk.Gelato/Gelato.cs b/src/ChainSafe.Gaming.Gelato/Gelato.cs similarity index 97% rename from src/ChainSafe.GamingSdk.Gelato/Gelato.cs rename to src/ChainSafe.Gaming.Gelato/Gelato.cs index 473f9c960..1e00bba2c 100644 --- a/src/ChainSafe.GamingSdk.Gelato/Gelato.cs +++ b/src/ChainSafe.Gaming.Gelato/Gelato.cs @@ -2,15 +2,15 @@ using System.Linq; using System.Numerics; using System.Threading.Tasks; -using ChainSafe.GamingSDK.EVM.Web3.Core; -using ChainSafe.GamingSDK.EVM.Web3.Core.Evm; +using ChainSafe.Gaming.Evm.Contracts; +using ChainSafe.Gaming.Evm.Signers; +using ChainSafe.Gaming.Web3; +using ChainSafe.Gaming.Web3.Core; +using ChainSafe.Gaming.Web3.Core.Evm; +using ChainSafe.Gaming.Web3.Environment; using ChainSafe.GamingSdk.Gelato.Dto; using ChainSafe.GamingSdk.Gelato.Types; -using ChainSafe.GamingWeb3; -using ChainSafe.GamingWeb3.Environment; using Nethereum.Hex.HexTypes; -using Web3Unity.Scripts.Library.Ethers.Contracts; -using Web3Unity.Scripts.Library.Ethers.Signers; namespace ChainSafe.GamingSdk.Gelato { diff --git a/src/ChainSafe.GamingSdk.Gelato/GelatoClient.cs b/src/ChainSafe.Gaming.Gelato/GelatoClient.cs similarity index 98% rename from src/ChainSafe.GamingSdk.Gelato/GelatoClient.cs rename to src/ChainSafe.Gaming.Gelato/GelatoClient.cs index 7e03152c9..d4deca40d 100644 --- a/src/ChainSafe.GamingSdk.Gelato/GelatoClient.cs +++ b/src/ChainSafe.Gaming.Gelato/GelatoClient.cs @@ -1,9 +1,9 @@ using System; using System.Threading.Tasks; +using ChainSafe.Gaming.Web3; +using ChainSafe.Gaming.Web3.Environment; using ChainSafe.GamingSdk.Gelato.Dto; using ChainSafe.GamingSdk.Gelato.Types; -using ChainSafe.GamingWeb3; -using ChainSafe.GamingWeb3.Environment; using Nethereum.Hex.HexTypes; namespace ChainSafe.GamingSdk.Gelato diff --git a/src/ChainSafe.GamingSdk.Gelato/GelatoExtensions.cs b/src/ChainSafe.Gaming.Gelato/GelatoExtensions.cs similarity index 96% rename from src/ChainSafe.GamingSdk.Gelato/GelatoExtensions.cs rename to src/ChainSafe.Gaming.Gelato/GelatoExtensions.cs index 253817696..e1360aa21 100644 --- a/src/ChainSafe.GamingSdk.Gelato/GelatoExtensions.cs +++ b/src/ChainSafe.Gaming.Gelato/GelatoExtensions.cs @@ -1,7 +1,7 @@ -using ChainSafe.GamingSDK.EVM.Web3.Core; +using ChainSafe.Gaming.Web3; +using ChainSafe.Gaming.Web3.Build; +using ChainSafe.Gaming.Web3.Core; using ChainSafe.GamingSdk.Gelato.Types; -using ChainSafe.GamingWeb3; -using ChainSafe.GamingWeb3.Build; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection.Extensions; diff --git a/src/ChainSafe.GamingSdk.Gelato/Types/ApiKey.cs b/src/ChainSafe.Gaming.Gelato/Types/ApiKey.cs similarity index 100% rename from src/ChainSafe.GamingSdk.Gelato/Types/ApiKey.cs rename to src/ChainSafe.Gaming.Gelato/Types/ApiKey.cs diff --git a/src/ChainSafe.GamingSdk.Gelato/Types/BaseCallWithSyncFeeParams.cs b/src/ChainSafe.Gaming.Gelato/Types/BaseCallWithSyncFeeParams.cs similarity index 100% rename from src/ChainSafe.GamingSdk.Gelato/Types/BaseCallWithSyncFeeParams.cs rename to src/ChainSafe.Gaming.Gelato/Types/BaseCallWithSyncFeeParams.cs diff --git a/src/ChainSafe.GamingSdk.Gelato/Types/BaseRelayParams.cs b/src/ChainSafe.Gaming.Gelato/Types/BaseRelayParams.cs similarity index 100% rename from src/ChainSafe.GamingSdk.Gelato/Types/BaseRelayParams.cs rename to src/ChainSafe.Gaming.Gelato/Types/BaseRelayParams.cs diff --git a/src/ChainSafe.GamingSdk.Gelato/Types/Contract.cs b/src/ChainSafe.Gaming.Gelato/Types/Contract.cs similarity index 100% rename from src/ChainSafe.GamingSdk.Gelato/Types/Contract.cs rename to src/ChainSafe.Gaming.Gelato/Types/Contract.cs diff --git a/src/ChainSafe.GamingSdk.Gelato/Types/GelatoAbi.cs b/src/ChainSafe.Gaming.Gelato/Types/GelatoAbi.cs similarity index 100% rename from src/ChainSafe.GamingSdk.Gelato/Types/GelatoAbi.cs rename to src/ChainSafe.Gaming.Gelato/Types/GelatoAbi.cs diff --git a/src/ChainSafe.GamingSdk.Gelato/Types/GelatoConfig.cs b/src/ChainSafe.Gaming.Gelato/Types/GelatoConfig.cs similarity index 100% rename from src/ChainSafe.GamingSdk.Gelato/Types/GelatoConfig.cs rename to src/ChainSafe.Gaming.Gelato/Types/GelatoConfig.cs diff --git a/src/ChainSafe.GamingSdk.Gelato/Types/IGelato.cs b/src/ChainSafe.Gaming.Gelato/Types/IGelato.cs similarity index 95% rename from src/ChainSafe.GamingSdk.Gelato/Types/IGelato.cs rename to src/ChainSafe.Gaming.Gelato/Types/IGelato.cs index 1b3af809c..e7b7457df 100644 --- a/src/ChainSafe.GamingSdk.Gelato/Types/IGelato.cs +++ b/src/ChainSafe.Gaming.Gelato/Types/IGelato.cs @@ -1,7 +1,6 @@ using System.Threading.Tasks; using ChainSafe.GamingSdk.Gelato.Dto; using Nethereum.Hex.HexTypes; -using Web3Unity.Scripts.Library.Ethers.Signers; namespace ChainSafe.GamingSdk.Gelato.Types { diff --git a/src/ChainSafe.GamingSdk.Gelato/Types/RelayRequestOptions.cs b/src/ChainSafe.Gaming.Gelato/Types/RelayRequestOptions.cs similarity index 100% rename from src/ChainSafe.GamingSdk.Gelato/Types/RelayRequestOptions.cs rename to src/ChainSafe.Gaming.Gelato/Types/RelayRequestOptions.cs diff --git a/src/ChainSafe.GamingSdk.Gelato/Types/RelayResponse.cs b/src/ChainSafe.Gaming.Gelato/Types/RelayResponse.cs similarity index 100% rename from src/ChainSafe.GamingSdk.Gelato/Types/RelayResponse.cs rename to src/ChainSafe.Gaming.Gelato/Types/RelayResponse.cs diff --git a/src/ChainSafe.GamingSdk.Gelato/dto/CallWithErc2771Request.cs b/src/ChainSafe.Gaming.Gelato/dto/CallWithErc2771Request.cs similarity index 97% rename from src/ChainSafe.GamingSdk.Gelato/dto/CallWithErc2771Request.cs rename to src/ChainSafe.Gaming.Gelato/dto/CallWithErc2771Request.cs index 64e0b21ce..224f53c30 100644 --- a/src/ChainSafe.GamingSdk.Gelato/dto/CallWithErc2771Request.cs +++ b/src/ChainSafe.Gaming.Gelato/dto/CallWithErc2771Request.cs @@ -1,14 +1,12 @@ using System; using System.Numerics; using System.Threading.Tasks; +using ChainSafe.Gaming.Evm.Contracts; +using ChainSafe.Gaming.Web3; using ChainSafe.GamingSdk.Gelato.Types; -using ChainSafe.GamingWeb3; using Nethereum.Hex.HexConvertors.Extensions; using Nethereum.Hex.HexTypes; using Newtonsoft.Json; -using Web3Unity.Scripts.Library.Ethers.Contracts; -using Web3Unity.Scripts.Library.Ethers.Providers; -using Contract = Web3Unity.Scripts.Library.Ethers.Contracts.Contract; namespace ChainSafe.GamingSdk.Gelato.Dto { diff --git a/src/ChainSafe.GamingSdk.Gelato/dto/CallWithSyncFeeERC2771Request.cs b/src/ChainSafe.Gaming.Gelato/dto/CallWithSyncFeeERC2771Request.cs similarity index 100% rename from src/ChainSafe.GamingSdk.Gelato/dto/CallWithSyncFeeERC2771Request.cs rename to src/ChainSafe.Gaming.Gelato/dto/CallWithSyncFeeERC2771Request.cs diff --git a/src/ChainSafe.GamingSdk.Gelato/dto/CallWithSyncFeeErc2771Struct.cs b/src/ChainSafe.Gaming.Gelato/dto/CallWithSyncFeeErc2771Struct.cs similarity index 100% rename from src/ChainSafe.GamingSdk.Gelato/dto/CallWithSyncFeeErc2771Struct.cs rename to src/ChainSafe.Gaming.Gelato/dto/CallWithSyncFeeErc2771Struct.cs diff --git a/src/ChainSafe.GamingSdk.Gelato/dto/CallWithSyncFeeRequest.cs b/src/ChainSafe.Gaming.Gelato/dto/CallWithSyncFeeRequest.cs similarity index 100% rename from src/ChainSafe.GamingSdk.Gelato/dto/CallWithSyncFeeRequest.cs rename to src/ChainSafe.Gaming.Gelato/dto/CallWithSyncFeeRequest.cs diff --git a/src/ChainSafe.GamingSdk.Gelato/dto/Erc2771UserParams.cs b/src/ChainSafe.Gaming.Gelato/dto/Erc2771UserParams.cs similarity index 100% rename from src/ChainSafe.GamingSdk.Gelato/dto/Erc2771UserParams.cs rename to src/ChainSafe.Gaming.Gelato/dto/Erc2771UserParams.cs diff --git a/src/ChainSafe.GamingSdk.Gelato/dto/EstimatedFeeRequest.cs b/src/ChainSafe.Gaming.Gelato/dto/EstimatedFeeRequest.cs similarity index 100% rename from src/ChainSafe.GamingSdk.Gelato/dto/EstimatedFeeRequest.cs rename to src/ChainSafe.Gaming.Gelato/dto/EstimatedFeeRequest.cs diff --git a/src/ChainSafe.GamingSdk.Gelato/dto/EstimatedFeeResponse.cs b/src/ChainSafe.Gaming.Gelato/dto/EstimatedFeeResponse.cs similarity index 100% rename from src/ChainSafe.GamingSdk.Gelato/dto/EstimatedFeeResponse.cs rename to src/ChainSafe.Gaming.Gelato/dto/EstimatedFeeResponse.cs diff --git a/src/ChainSafe.GamingSdk.Gelato/dto/IErc2771StructTypes.cs b/src/ChainSafe.Gaming.Gelato/dto/IErc2771StructTypes.cs similarity index 100% rename from src/ChainSafe.GamingSdk.Gelato/dto/IErc2771StructTypes.cs rename to src/ChainSafe.Gaming.Gelato/dto/IErc2771StructTypes.cs diff --git a/src/ChainSafe.GamingSdk.Gelato/dto/OraclesResponse.cs b/src/ChainSafe.Gaming.Gelato/dto/OraclesResponse.cs similarity index 100% rename from src/ChainSafe.GamingSdk.Gelato/dto/OraclesResponse.cs rename to src/ChainSafe.Gaming.Gelato/dto/OraclesResponse.cs diff --git a/src/ChainSafe.GamingSdk.Gelato/dto/PaymentTokensResponse.cs b/src/ChainSafe.Gaming.Gelato/dto/PaymentTokensResponse.cs similarity index 100% rename from src/ChainSafe.GamingSdk.Gelato/dto/PaymentTokensResponse.cs rename to src/ChainSafe.Gaming.Gelato/dto/PaymentTokensResponse.cs diff --git a/src/ChainSafe.GamingSdk.Gelato/dto/SponsoredCallErc2771Request.cs b/src/ChainSafe.Gaming.Gelato/dto/SponsoredCallErc2771Request.cs similarity index 100% rename from src/ChainSafe.GamingSdk.Gelato/dto/SponsoredCallErc2771Request.cs rename to src/ChainSafe.Gaming.Gelato/dto/SponsoredCallErc2771Request.cs diff --git a/src/ChainSafe.GamingSdk.Gelato/dto/SponsoredCallErc2771Struct.cs b/src/ChainSafe.Gaming.Gelato/dto/SponsoredCallErc2771Struct.cs similarity index 100% rename from src/ChainSafe.GamingSdk.Gelato/dto/SponsoredCallErc2771Struct.cs rename to src/ChainSafe.Gaming.Gelato/dto/SponsoredCallErc2771Struct.cs diff --git a/src/ChainSafe.GamingSdk.Gelato/dto/SponsoredCallRequest.cs b/src/ChainSafe.Gaming.Gelato/dto/SponsoredCallRequest.cs similarity index 100% rename from src/ChainSafe.GamingSdk.Gelato/dto/SponsoredCallRequest.cs rename to src/ChainSafe.Gaming.Gelato/dto/SponsoredCallRequest.cs diff --git a/src/ChainSafe.GamingSdk.Gelato/dto/SupportedNetworksResponse.cs b/src/ChainSafe.Gaming.Gelato/dto/SupportedNetworksResponse.cs similarity index 100% rename from src/ChainSafe.GamingSdk.Gelato/dto/SupportedNetworksResponse.cs rename to src/ChainSafe.Gaming.Gelato/dto/SupportedNetworksResponse.cs diff --git a/src/ChainSafe.GamingSdk.Gelato/dto/TransactionStatusResponse.cs b/src/ChainSafe.Gaming.Gelato/dto/TransactionStatusResponse.cs similarity index 100% rename from src/ChainSafe.GamingSdk.Gelato/dto/TransactionStatusResponse.cs rename to src/ChainSafe.Gaming.Gelato/dto/TransactionStatusResponse.cs diff --git a/src/ChainSafe.GamingSdk.EVM.InProcessSigner/ChainSafe.GamingSdk.EVM.InProcessSigner.csproj b/src/ChainSafe.Gaming.InProcessSigner/ChainSafe.Gaming.InProcessSigner.csproj similarity index 69% rename from src/ChainSafe.GamingSdk.EVM.InProcessSigner/ChainSafe.GamingSdk.EVM.InProcessSigner.csproj rename to src/ChainSafe.Gaming.InProcessSigner/ChainSafe.Gaming.InProcessSigner.csproj index bee712bc3..0cd82bfd3 100644 --- a/src/ChainSafe.GamingSdk.EVM.InProcessSigner/ChainSafe.GamingSdk.EVM.InProcessSigner.csproj +++ b/src/ChainSafe.Gaming.InProcessSigner/ChainSafe.Gaming.InProcessSigner.csproj @@ -9,10 +9,11 @@ enable Debug;Release;Test AnyCPU + ChainSafe.Gaming.InProcessSigner - + @@ -20,4 +21,9 @@ + + + + + diff --git a/src/ChainSafe.GamingSdk.EVM.InProcessSigner/InProcessSigner.cs b/src/ChainSafe.Gaming.InProcessSigner/InProcessSigner.cs similarity index 90% rename from src/ChainSafe.GamingSdk.EVM.InProcessSigner/InProcessSigner.cs rename to src/ChainSafe.Gaming.InProcessSigner/InProcessSigner.cs index 217e91c40..20face371 100644 --- a/src/ChainSafe.GamingSdk.EVM.InProcessSigner/InProcessSigner.cs +++ b/src/ChainSafe.Gaming.InProcessSigner/InProcessSigner.cs @@ -1,13 +1,13 @@ using System.Threading.Tasks; -using ChainSafe.GamingSDK.EVM.Web3.Core.Evm; -using ChainSafe.GamingWeb3; +using ChainSafe.Gaming.Evm.Signers; +using ChainSafe.Gaming.Web3; +using ChainSafe.Gaming.Web3.Core.Evm; using Nethereum.ABI.EIP712; using Nethereum.ABI.FunctionEncoding.Attributes; using Nethereum.Signer; using Nethereum.Signer.EIP712; -using Web3Unity.Scripts.Library.Ethers.Signers; -namespace ChainSafe.GamingSdk.EVM.InProcessSigner +namespace ChainSafe.Gaming.InProcessSigner { public class InProcessSigner : ISigner { diff --git a/src/ChainSafe.GamingSdk.EVM.InProcessSigner/InProcessSignerConfig.cs b/src/ChainSafe.Gaming.InProcessSigner/InProcessSignerConfig.cs similarity index 72% rename from src/ChainSafe.GamingSdk.EVM.InProcessSigner/InProcessSignerConfig.cs rename to src/ChainSafe.Gaming.InProcessSigner/InProcessSignerConfig.cs index 63ce9ff23..59c4c04ee 100644 --- a/src/ChainSafe.GamingSdk.EVM.InProcessSigner/InProcessSignerConfig.cs +++ b/src/ChainSafe.Gaming.InProcessSigner/InProcessSignerConfig.cs @@ -1,6 +1,6 @@ using Nethereum.Signer; -namespace ChainSafe.GamingSdk.EVM.InProcessSigner +namespace ChainSafe.Gaming.InProcessSigner { public class InProcessSignerConfig { diff --git a/src/ChainSafe.GamingSdk.EVM.InProcessSigner/InProcessSignerExtensions.cs b/src/ChainSafe.Gaming.InProcessSigner/InProcessSignerExtensions.cs similarity index 88% rename from src/ChainSafe.GamingSdk.EVM.InProcessSigner/InProcessSignerExtensions.cs rename to src/ChainSafe.Gaming.InProcessSigner/InProcessSignerExtensions.cs index 121171e4d..a8bdefa9f 100644 --- a/src/ChainSafe.GamingSdk.EVM.InProcessSigner/InProcessSignerExtensions.cs +++ b/src/ChainSafe.Gaming.InProcessSigner/InProcessSignerExtensions.cs @@ -1,9 +1,9 @@ -using ChainSafe.GamingWeb3.Build; +using ChainSafe.Gaming.Evm.Signers; +using ChainSafe.Gaming.Web3.Build; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection.Extensions; -using Web3Unity.Scripts.Library.Ethers.Signers; -namespace ChainSafe.GamingSdk.EVM.InProcessSigner +namespace ChainSafe.Gaming.InProcessSigner { public static class InProcessSignerExtensions { diff --git a/src/ChainSafe.GamingSdk.EVM.InProcessTransactionExecutor/ChainSafe.GamingSdk.EVM.InProcessTransactionExecutor.csproj b/src/ChainSafe.Gaming.InProcessTransactionExecutor/ChainSafe.Gaming.InProcessTransactionExecutor.csproj similarity index 53% rename from src/ChainSafe.GamingSdk.EVM.InProcessTransactionExecutor/ChainSafe.GamingSdk.EVM.InProcessTransactionExecutor.csproj rename to src/ChainSafe.Gaming.InProcessTransactionExecutor/ChainSafe.Gaming.InProcessTransactionExecutor.csproj index 70010d72c..eeb9bd1d8 100644 --- a/src/ChainSafe.GamingSdk.EVM.InProcessTransactionExecutor/ChainSafe.GamingSdk.EVM.InProcessTransactionExecutor.csproj +++ b/src/ChainSafe.Gaming.InProcessTransactionExecutor/ChainSafe.Gaming.InProcessTransactionExecutor.csproj @@ -9,11 +9,17 @@ enable Debug;Release;Test AnyCPU + ChainSafe.Gaming.InProcessTransactionExecutor - - + + + + + + + diff --git a/src/ChainSafe.GamingSdk.EVM.InProcessTransactionExecutor/InProcessTransactionExecutor.cs b/src/ChainSafe.Gaming.InProcessTransactionExecutor/InProcessTransactionExecutor.cs similarity index 92% rename from src/ChainSafe.GamingSdk.EVM.InProcessTransactionExecutor/InProcessTransactionExecutor.cs rename to src/ChainSafe.Gaming.InProcessTransactionExecutor/InProcessTransactionExecutor.cs index 28869956d..8d5a803e1 100644 --- a/src/ChainSafe.GamingSdk.EVM.InProcessTransactionExecutor/InProcessTransactionExecutor.cs +++ b/src/ChainSafe.Gaming.InProcessTransactionExecutor/InProcessTransactionExecutor.cs @@ -1,18 +1,17 @@ using System; using System.Threading.Tasks; -using ChainSafe.GamingSDK.EVM.Web3.Core.Evm; -using ChainSafe.GamingWeb3; +using ChainSafe.Gaming.Evm.Providers; +using ChainSafe.Gaming.Evm.Signers; +using ChainSafe.Gaming.Evm.Transactions; +using ChainSafe.Gaming.Web3; +using ChainSafe.Gaming.Web3.Core.Evm; using Nethereum.Hex.HexTypes; using Nethereum.RPC.Eth.DTOs; using Nethereum.Web3.Accounts; -using Web3Unity.Scripts.Library.Ethers.Providers; -using Web3Unity.Scripts.Library.Ethers.Signers; -using Web3Unity.Scripts.Library.Ethers.Transactions; - using NIpcClient = Nethereum.JsonRpc.IpcClient.IpcClient; using NWeb3 = Nethereum.Web3.Web3; -namespace ChainSafe.GamingSdk.EVM.InProcessTransactionExecutor +namespace ChainSafe.Gaming.InProcessTransactionExecutor { public class InProcessTransactionExecutor : ITransactionExecutor { diff --git a/src/ChainSafe.GamingSdk.EVM.InProcessTransactionExecutor/InProcessTransactionExecutorExtensions.cs b/src/ChainSafe.Gaming.InProcessTransactionExecutor/InProcessTransactionExecutorExtensions.cs similarity index 75% rename from src/ChainSafe.GamingSdk.EVM.InProcessTransactionExecutor/InProcessTransactionExecutorExtensions.cs rename to src/ChainSafe.Gaming.InProcessTransactionExecutor/InProcessTransactionExecutorExtensions.cs index f40624640..44f7584e6 100644 --- a/src/ChainSafe.GamingSdk.EVM.InProcessTransactionExecutor/InProcessTransactionExecutorExtensions.cs +++ b/src/ChainSafe.Gaming.InProcessTransactionExecutor/InProcessTransactionExecutorExtensions.cs @@ -1,8 +1,8 @@ -using ChainSafe.GamingSDK.EVM.Web3.Core.Evm; -using ChainSafe.GamingWeb3.Build; +using ChainSafe.Gaming.Web3.Build; +using ChainSafe.Gaming.Web3.Core.Evm; using Microsoft.Extensions.DependencyInjection; -namespace ChainSafe.GamingSdk.EVM.InProcessTransactionExecutor +namespace ChainSafe.Gaming.InProcessTransactionExecutor { public static class InProcessTransactionExecutorExtensions { diff --git a/src/ChainSafe.GamingSdk.EVM.NetCore/ChainConfig.cs b/src/ChainSafe.Gaming.NetCore/ChainConfig.cs similarity index 79% rename from src/ChainSafe.GamingSdk.EVM.NetCore/ChainConfig.cs rename to src/ChainSafe.Gaming.NetCore/ChainConfig.cs index abdd9b7c1..2f2e5661e 100644 --- a/src/ChainSafe.GamingSdk.EVM.NetCore/ChainConfig.cs +++ b/src/ChainSafe.Gaming.NetCore/ChainConfig.cs @@ -1,6 +1,6 @@ -using ChainSafe.GamingWeb3; +using ChainSafe.Gaming.Web3; -namespace Web3Unity.Scripts.Library.Ethers.NetCore +namespace ChainSafe.Gaming.NetCore { public class ChainConfig : IChainConfig { diff --git a/src/ChainSafe.GamingSDK.EVM.WebPageWallet/ChainSafe.GamingSDK.EVM.WebPageWallet.csproj b/src/ChainSafe.Gaming.NetCore/ChainSafe.Gaming.NetCore.csproj similarity index 61% rename from src/ChainSafe.GamingSDK.EVM.WebPageWallet/ChainSafe.GamingSDK.EVM.WebPageWallet.csproj rename to src/ChainSafe.Gaming.NetCore/ChainSafe.Gaming.NetCore.csproj index affe4b56a..2853bd604 100644 --- a/src/ChainSafe.GamingSDK.EVM.WebPageWallet/ChainSafe.GamingSDK.EVM.WebPageWallet.csproj +++ b/src/ChainSafe.Gaming.NetCore/ChainSafe.Gaming.NetCore.csproj @@ -2,19 +2,22 @@ netstandard2.1 - enable 9.0 - ChainSafe.GamingSDK.EVM.WebPageWallet True True ../../global.ruleset - ChainSafe.GamingSDK.EVM.MetaMaskBrowserWallet Debug;Release;Test AnyCPU + ChainSafe.Gaming.NetCore - + + + + + + diff --git a/src/ChainSafe.GamingSdk.EVM.NetCore/NetCoreEnvironmentExtensions.cs b/src/ChainSafe.Gaming.NetCore/NetCoreEnvironmentExtensions.cs similarity index 78% rename from src/ChainSafe.GamingSdk.EVM.NetCore/NetCoreEnvironmentExtensions.cs rename to src/ChainSafe.Gaming.NetCore/NetCoreEnvironmentExtensions.cs index 6582451bb..7a3d24cdd 100644 --- a/src/ChainSafe.GamingSdk.EVM.NetCore/NetCoreEnvironmentExtensions.cs +++ b/src/ChainSafe.Gaming.NetCore/NetCoreEnvironmentExtensions.cs @@ -1,9 +1,9 @@ -using ChainSafe.GamingWeb3.Analytics; -using ChainSafe.GamingWeb3.Build; -using ChainSafe.GamingWeb3.Environment; +using ChainSafe.Gaming.Web3.Analytics; +using ChainSafe.Gaming.Web3.Build; +using ChainSafe.Gaming.Web3.Environment; using Microsoft.Extensions.DependencyInjection; -namespace Web3Unity.Scripts.Library.Ethers.NetCore +namespace ChainSafe.Gaming.NetCore { public static class NetCoreEnvironmentExtensions { diff --git a/src/ChainSafe.GamingSdk.EVM.NetCore/NetCoreHttpClient.cs b/src/ChainSafe.Gaming.NetCore/NetCoreHttpClient.cs similarity index 95% rename from src/ChainSafe.GamingSdk.EVM.NetCore/NetCoreHttpClient.cs rename to src/ChainSafe.Gaming.NetCore/NetCoreHttpClient.cs index befc19c70..986d43acd 100644 --- a/src/ChainSafe.GamingSdk.EVM.NetCore/NetCoreHttpClient.cs +++ b/src/ChainSafe.Gaming.NetCore/NetCoreHttpClient.cs @@ -2,10 +2,10 @@ using System.Net.Http; using System.Text; using System.Threading.Tasks; -using ChainSafe.GamingWeb3.Environment; +using ChainSafe.Gaming.Web3.Environment; using Newtonsoft.Json; -namespace Web3Unity.Scripts.Library.Ethers.NetCore +namespace ChainSafe.Gaming.NetCore { public class NetCoreHttpClient : IHttpClient { diff --git a/src/ChainSafe.GamingSdk.EVM.NetCore/NetCoreLogWriter.cs b/src/ChainSafe.Gaming.NetCore/NetCoreLogWriter.cs similarity index 84% rename from src/ChainSafe.GamingSdk.EVM.NetCore/NetCoreLogWriter.cs rename to src/ChainSafe.Gaming.NetCore/NetCoreLogWriter.cs index 3863f63eb..37a11ce09 100644 --- a/src/ChainSafe.GamingSdk.EVM.NetCore/NetCoreLogWriter.cs +++ b/src/ChainSafe.Gaming.NetCore/NetCoreLogWriter.cs @@ -1,7 +1,7 @@ using System; -using ChainSafe.GamingWeb3.Environment; +using ChainSafe.Gaming.Web3.Environment; -namespace Web3Unity.Scripts.Library.Ethers.NetCore +namespace ChainSafe.Gaming.NetCore { public class NetCoreLogWriter : ILogWriter { diff --git a/src/ChainSafe.GamingSdk.EVM.NetCore/NetCoreOperatingSystemMediator.cs b/src/ChainSafe.Gaming.NetCore/NetCoreOperatingSystemMediator.cs similarity index 79% rename from src/ChainSafe.GamingSdk.EVM.NetCore/NetCoreOperatingSystemMediator.cs rename to src/ChainSafe.Gaming.NetCore/NetCoreOperatingSystemMediator.cs index 05a0da458..ff30d493a 100644 --- a/src/ChainSafe.GamingSdk.EVM.NetCore/NetCoreOperatingSystemMediator.cs +++ b/src/ChainSafe.Gaming.NetCore/NetCoreOperatingSystemMediator.cs @@ -1,6 +1,6 @@ -using ChainSafe.GamingWeb3.Environment; +using ChainSafe.Gaming.Web3.Environment; -namespace Web3Unity.Scripts.Library.Ethers.NetCore +namespace ChainSafe.Gaming.NetCore { public class NetCoreOperatingSystemMediator : IOperatingSystemMediator { diff --git a/src/ChainSafe.GamingSdk.EVM.NetCore/ProjectConfig.cs b/src/ChainSafe.Gaming.NetCore/ProjectConfig.cs similarity index 58% rename from src/ChainSafe.GamingSdk.EVM.NetCore/ProjectConfig.cs rename to src/ChainSafe.Gaming.NetCore/ProjectConfig.cs index 8283f7dc1..96753b87d 100644 --- a/src/ChainSafe.GamingSdk.EVM.NetCore/ProjectConfig.cs +++ b/src/ChainSafe.Gaming.NetCore/ProjectConfig.cs @@ -1,6 +1,6 @@ -using ChainSafe.GamingWeb3; +using ChainSafe.Gaming.Web3; -namespace Web3Unity.Scripts.Library.Ethers.NetCore +namespace ChainSafe.Gaming.NetCore { public class ProjectConfig : IProjectConfig { diff --git a/src/ChainSafe.GamingSDK.EVM.Tests/AddressTests.cs b/src/ChainSafe.Gaming.Tests/AddressTests.cs similarity index 99% rename from src/ChainSafe.GamingSDK.EVM.Tests/AddressTests.cs rename to src/ChainSafe.Gaming.Tests/AddressTests.cs index 7573f7d0a..cadfc0cdb 100644 --- a/src/ChainSafe.GamingSDK.EVM.Tests/AddressTests.cs +++ b/src/ChainSafe.Gaming.Tests/AddressTests.cs @@ -1,7 +1,7 @@ using Nethereum.Util; using NUnit.Framework; -namespace ChainSafe.GamingSDK.EVM.Tests +namespace ChainSafe.Gaming.Tests { public class AddressTests { diff --git a/src/ChainSafe.GamingSDK.EVM.Tests/ChainSafe.GamingSDK.EVM.Tests.csproj b/src/ChainSafe.Gaming.Tests/ChainSafe.Gaming.Tests.csproj similarity index 68% rename from src/ChainSafe.GamingSDK.EVM.Tests/ChainSafe.GamingSDK.EVM.Tests.csproj rename to src/ChainSafe.Gaming.Tests/ChainSafe.Gaming.Tests.csproj index e26de09f0..648b9b0a1 100644 --- a/src/ChainSafe.GamingSDK.EVM.Tests/ChainSafe.GamingSDK.EVM.Tests.csproj +++ b/src/ChainSafe.Gaming.Tests/ChainSafe.Gaming.Tests.csproj @@ -8,11 +8,12 @@ ../../global.ruleset Debug;Release;Test AnyCPU + ChainSafe.Gaming.Tests - - + + @@ -23,4 +24,9 @@ + + + + + diff --git a/src/ChainSafe.Gaming.Tests/ChainsafeRPCTests.cs b/src/ChainSafe.Gaming.Tests/ChainsafeRPCTests.cs new file mode 100644 index 000000000..60258fdde --- /dev/null +++ b/src/ChainSafe.Gaming.Tests/ChainsafeRPCTests.cs @@ -0,0 +1,249 @@ +using System; +using System.Diagnostics; +using ChainSafe.Gaming.Evm.Providers; +using ChainSafe.Gaming.Evm.Transactions; +using ChainSafe.Gaming.Evm.Utils; +using ChainSafe.Gaming.Tests.Node; +using Nethereum.Hex.HexTypes; +using Nethereum.RPC.Eth.DTOs; +using NUnit.Framework; + +namespace ChainSafe.Gaming.Tests +{ + [TestFixture] + public class ChainSafeRpcTests + { + [OneTimeSetUp] + public void SetUp() + { + node = Emulator.CreateInstance(); + + // We shouldn't be relaying on a .Result from ValueTask + // that is why we need to explicitly wait for it to finish + var firstAccountTask = Web3Util.CreateWeb3().AsTask(); + firstAccountTask.Wait(); + firstAccount = firstAccountTask.Result; + + var secondAccountTask = Web3Util.CreateWeb3(1).AsTask(); + secondAccountTask.Wait(); + + var firstWalletAddressTask = firstAccount.Signer.GetAddress(); + firstWalletAddressTask.Wait(); + + firstWalletAddress = firstWalletAddressTask.Result; + var secondaryWalletAddressTask = secondAccountTask.Result.Signer.GetAddress(); + secondaryWalletAddressTask.Wait(); + secondaryWalletAddress = secondaryWalletAddressTask.Result; + + var amount = new HexBigInteger(1000000); + var txTask = firstAccount.TransactionExecutor.SendTransaction(new TransactionRequest + { + To = secondaryWalletAddress, + Value = amount, + }); + txTask.Wait(); + Console.Out.WriteLine("Setup Transaction Hash: {0}", txTask.Result.Hash); + + nft721Address = Web3Util.DeployContracts(firstAccount, Nft721ByteCode, Nft721ABI); + Console.Out.WriteLine("Smart Contract Address: {0}", nft721Address); + } + + [OneTimeTearDown] + public void Cleanup() + { + node?.Kill(); + } + +#pragma warning disable SA1201 + private const string Nft721ByteCode = +#pragma warning restore SA1201 + "60806040523480156200001157600080fd5b506040518060400160405280600881526020017f436f6e74726163740000000000000000000000000000000000000000000000008152506040518060400160405280600481526020017f4d4e46540000000000000000000000000000000000000000000000000000000081525081600090816200008f919062000412565b508060019081620000a1919062000412565b505050620000c4620000b8620000ca60201b60201c565b620000d260201b60201c565b620004f9565b600033905090565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200021a57607f821691505b60208210810362000230576200022f620001d2565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026200029a7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826200025b565b620002a686836200025b565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b6000620002f3620002ed620002e784620002be565b620002c8565b620002be565b9050919050565b6000819050919050565b6200030f83620002d2565b620003276200031e82620002fa565b84845462000268565b825550505050565b600090565b6200033e6200032f565b6200034b81848462000304565b505050565b5b8181101562000373576200036760008262000334565b60018101905062000351565b5050565b601f821115620003c2576200038c8162000236565b62000397846200024b565b81016020851015620003a7578190505b620003bf620003b6856200024b565b83018262000350565b50505b505050565b600082821c905092915050565b6000620003e760001984600802620003c7565b1980831691505092915050565b6000620004028383620003d4565b9150826002028217905092915050565b6200041d8262000198565b67ffffffffffffffff811115620004395762000438620001a3565b5b62000445825462000201565b6200045282828562000377565b600060209050601f8311600181146200048a576000841562000475578287015190505b620004818582620003f4565b865550620004f1565b601f1984166200049a8662000236565b60005b82811015620004c4578489015182556001820191506020850194506020810190506200049d565b86831015620004e45784890151620004e0601f891682620003d4565b8355505b6001600288020188555050505b505050505050565b61287f80620005096000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806370a08231116100a2578063a22cb46511610071578063a22cb465146102a4578063b88d4fde146102c0578063c87b56dd146102dc578063e985e9c51461030c578063f2fde38b1461033c5761010b565b806370a082311461022e578063715018a61461025e5780638da5cb5b1461026857806395d89b41146102865761010b565b806323b872dd116100de57806323b872dd146101aa57806340d097c3146101c657806342842e0e146101e25780636352211e146101fe5761010b565b806301ffc9a71461011057806306fdde0314610140578063081812fc1461015e578063095ea7b31461018e575b600080fd5b61012a60048036038101906101259190611a7d565b610358565b6040516101379190611ac5565b60405180910390f35b61014861043a565b6040516101559190611b70565b60405180910390f35b61017860048036038101906101739190611bc8565b6104cc565b6040516101859190611c36565b60405180910390f35b6101a860048036038101906101a39190611c7d565b610512565b005b6101c460048036038101906101bf9190611cbd565b610629565b005b6101e060048036038101906101db9190611d10565b610689565b005b6101fc60048036038101906101f79190611cbd565b6106b7565b005b61021860048036038101906102139190611bc8565b6106d7565b6040516102259190611c36565b60405180910390f35b61024860048036038101906102439190611d10565b61075d565b6040516102559190611d4c565b60405180910390f35b610266610814565b005b610270610828565b60405161027d9190611c36565b60405180910390f35b61028e610852565b60405161029b9190611b70565b60405180910390f35b6102be60048036038101906102b99190611d93565b6108e4565b005b6102da60048036038101906102d59190611f08565b6108fa565b005b6102f660048036038101906102f19190611bc8565b61095c565b6040516103039190611b70565b60405180910390f35b61032660048036038101906103219190611f8b565b6109c4565b6040516103339190611ac5565b60405180910390f35b61035660048036038101906103519190611d10565b610a58565b005b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061042357507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80610433575061043282610adb565b5b9050919050565b60606000805461044990611ffa565b80601f016020809104026020016040519081016040528092919081815260200182805461047590611ffa565b80156104c25780601f10610497576101008083540402835291602001916104c2565b820191906000526020600020905b8154815290600101906020018083116104a557829003601f168201915b5050505050905090565b60006104d782610b45565b6004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600061051d826106d7565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361058d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105849061209d565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166105ac610b90565b73ffffffffffffffffffffffffffffffffffffffff1614806105db57506105da816105d5610b90565b6109c4565b5b61061a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106119061212f565b60405180910390fd5b6106248383610b98565b505050565b61063a610634610b90565b82610c51565b610679576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610670906121c1565b60405180910390fd5b610684838383610ce6565b505050565b610691610fdf565b600061069d600761105d565b90506106a9600761106b565b6106b38282611081565b5050565b6106d2838383604051806020016040528060008152506108fa565b505050565b6000806106e38361109f565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610754576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161074b9061222d565b60405180910390fd5b80915050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036107cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107c4906122bf565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61081c610fdf565b61082660006110dc565b565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606001805461086190611ffa565b80601f016020809104026020016040519081016040528092919081815260200182805461088d90611ffa565b80156108da5780601f106108af576101008083540402835291602001916108da565b820191906000526020600020905b8154815290600101906020018083116108bd57829003601f168201915b5050505050905090565b6108f66108ef610b90565b83836111a2565b5050565b61090b610905610b90565b83610c51565b61094a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610941906121c1565b60405180910390fd5b6109568484848461130e565b50505050565b606061096782610b45565b600061097161136a565b9050600081511161099157604051806020016040528060008152506109bc565b8061099b84611381565b6040516020016109ac92919061231b565b6040516020818303038152906040525b915050919050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b610a60610fdf565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610acf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ac6906123b1565b60405180910390fd5b610ad8816110dc565b50565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b610b4e8161144f565b610b8d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b849061222d565b60405180910390fd5b50565b600033905090565b816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16610c0b836106d7565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b600080610c5d836106d7565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480610c9f5750610c9e81856109c4565b5b80610cdd57508373ffffffffffffffffffffffffffffffffffffffff16610cc5846104cc565b73ffffffffffffffffffffffffffffffffffffffff16145b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff16610d06826106d7565b73ffffffffffffffffffffffffffffffffffffffff1614610d5c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d5390612443565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610dcb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dc2906124d5565b60405180910390fd5b610dd88383836001611490565b8273ffffffffffffffffffffffffffffffffffffffff16610df8826106d7565b73ffffffffffffffffffffffffffffffffffffffff1614610e4e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e4590612443565b60405180910390fd5b6004600082815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4610fda8383836001611496565b505050565b610fe7610b90565b73ffffffffffffffffffffffffffffffffffffffff16611005610828565b73ffffffffffffffffffffffffffffffffffffffff161461105b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161105290612541565b60405180910390fd5b565b600081600001549050919050565b6001816000016000828254019250508190555050565b61109b82826040518060200160405280600081525061149c565b5050565b60006002600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611210576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611207906125ad565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31836040516113019190611ac5565b60405180910390a3505050565b611319848484610ce6565b611325848484846114f7565b611364576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161135b9061263f565b60405180910390fd5b50505050565b606060405180602001604052806000815250905090565b6060600060016113908461167e565b01905060008167ffffffffffffffff8111156113af576113ae611ddd565b5b6040519080825280601f01601f1916602001820160405280156113e15781602001600182028036833780820191505090505b509050600082602001820190505b600115611444578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a85816114385761143761265f565b5b049450600085036113ef575b819350505050919050565b60008073ffffffffffffffffffffffffffffffffffffffff166114718361109f565b73ffffffffffffffffffffffffffffffffffffffff1614159050919050565b50505050565b50505050565b6114a683836117d1565b6114b360008484846114f7565b6114f2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114e99061263f565b60405180910390fd5b505050565b60006115188473ffffffffffffffffffffffffffffffffffffffff166119ee565b15611671578373ffffffffffffffffffffffffffffffffffffffff1663150b7a02611541610b90565b8786866040518563ffffffff1660e01b815260040161156394939291906126e3565b6020604051808303816000875af192505050801561159f57506040513d601f19601f8201168201806040525081019061159c9190612744565b60015b611621573d80600081146115cf576040519150601f19603f3d011682016040523d82523d6000602084013e6115d4565b606091505b506000815103611619576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116109061263f565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050611676565b600190505b949350505050565b600080600090507a184f03e93ff9f4daa797ed6e38ed64bf6a1f01000000000000000083106116dc577a184f03e93ff9f4daa797ed6e38ed64bf6a1f01000000000000000083816116d2576116d161265f565b5b0492506040810190505b6d04ee2d6d415b85acef81000000008310611719576d04ee2d6d415b85acef8100000000838161170f5761170e61265f565b5b0492506020810190505b662386f26fc10000831061174857662386f26fc10000838161173e5761173d61265f565b5b0492506010810190505b6305f5e1008310611771576305f5e10083816117675761176661265f565b5b0492506008810190505b612710831061179657612710838161178c5761178b61265f565b5b0492506004810190505b606483106117b957606483816117af576117ae61265f565b5b0492506002810190505b600a83106117c8576001810190505b80915050919050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611840576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611837906127bd565b60405180910390fd5b6118498161144f565b15611889576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161188090612829565b60405180910390fd5b611897600083836001611490565b6118a08161144f565b156118e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118d790612829565b60405180910390fd5b6001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46119ea600083836001611496565b5050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b611a5a81611a25565b8114611a6557600080fd5b50565b600081359050611a7781611a51565b92915050565b600060208284031215611a9357611a92611a1b565b5b6000611aa184828501611a68565b91505092915050565b60008115159050919050565b611abf81611aaa565b82525050565b6000602082019050611ada6000830184611ab6565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611b1a578082015181840152602081019050611aff565b60008484015250505050565b6000601f19601f8301169050919050565b6000611b4282611ae0565b611b4c8185611aeb565b9350611b5c818560208601611afc565b611b6581611b26565b840191505092915050565b60006020820190508181036000830152611b8a8184611b37565b905092915050565b6000819050919050565b611ba581611b92565b8114611bb057600080fd5b50565b600081359050611bc281611b9c565b92915050565b600060208284031215611bde57611bdd611a1b565b5b6000611bec84828501611bb3565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611c2082611bf5565b9050919050565b611c3081611c15565b82525050565b6000602082019050611c4b6000830184611c27565b92915050565b611c5a81611c15565b8114611c6557600080fd5b50565b600081359050611c7781611c51565b92915050565b60008060408385031215611c9457611c93611a1b565b5b6000611ca285828601611c68565b9250506020611cb385828601611bb3565b9150509250929050565b600080600060608486031215611cd657611cd5611a1b565b5b6000611ce486828701611c68565b9350506020611cf586828701611c68565b9250506040611d0686828701611bb3565b9150509250925092565b600060208284031215611d2657611d25611a1b565b5b6000611d3484828501611c68565b91505092915050565b611d4681611b92565b82525050565b6000602082019050611d616000830184611d3d565b92915050565b611d7081611aaa565b8114611d7b57600080fd5b50565b600081359050611d8d81611d67565b92915050565b60008060408385031215611daa57611da9611a1b565b5b6000611db885828601611c68565b9250506020611dc985828601611d7e565b9150509250929050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b611e1582611b26565b810181811067ffffffffffffffff82111715611e3457611e33611ddd565b5b80604052505050565b6000611e47611a11565b9050611e538282611e0c565b919050565b600067ffffffffffffffff821115611e7357611e72611ddd565b5b611e7c82611b26565b9050602081019050919050565b82818337600083830152505050565b6000611eab611ea684611e58565b611e3d565b905082815260208101848484011115611ec757611ec6611dd8565b5b611ed2848285611e89565b509392505050565b600082601f830112611eef57611eee611dd3565b5b8135611eff848260208601611e98565b91505092915050565b60008060008060808587031215611f2257611f21611a1b565b5b6000611f3087828801611c68565b9450506020611f4187828801611c68565b9350506040611f5287828801611bb3565b925050606085013567ffffffffffffffff811115611f7357611f72611a20565b5b611f7f87828801611eda565b91505092959194509250565b60008060408385031215611fa257611fa1611a1b565b5b6000611fb085828601611c68565b9250506020611fc185828601611c68565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061201257607f821691505b60208210810361202557612024611fcb565b5b50919050565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b6000612087602183611aeb565b91506120928261202b565b604082019050919050565b600060208201905081810360008301526120b68161207a565b9050919050565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60008201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c000000602082015250565b6000612119603d83611aeb565b9150612124826120bd565b604082019050919050565b600060208201905081810360008301526121488161210c565b9050919050565b7f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560008201527f72206f7220617070726f76656400000000000000000000000000000000000000602082015250565b60006121ab602d83611aeb565b91506121b68261214f565b604082019050919050565b600060208201905081810360008301526121da8161219e565b9050919050565b7f4552433732313a20696e76616c696420746f6b656e2049440000000000000000600082015250565b6000612217601883611aeb565b9150612222826121e1565b602082019050919050565b600060208201905081810360008301526122468161220a565b9050919050565b7f4552433732313a2061646472657373207a65726f206973206e6f74206120766160008201527f6c6964206f776e65720000000000000000000000000000000000000000000000602082015250565b60006122a9602983611aeb565b91506122b48261224d565b604082019050919050565b600060208201905081810360008301526122d88161229c565b9050919050565b600081905092915050565b60006122f582611ae0565b6122ff81856122df565b935061230f818560208601611afc565b80840191505092915050565b600061232782856122ea565b915061233382846122ea565b91508190509392505050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b600061239b602683611aeb565b91506123a68261233f565b604082019050919050565b600060208201905081810360008301526123ca8161238e565b9050919050565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b600061242d602583611aeb565b9150612438826123d1565b604082019050919050565b6000602082019050818103600083015261245c81612420565b9050919050565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006124bf602483611aeb565b91506124ca82612463565b604082019050919050565b600060208201905081810360008301526124ee816124b2565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b600061252b602083611aeb565b9150612536826124f5565b602082019050919050565b6000602082019050818103600083015261255a8161251e565b9050919050565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b6000612597601983611aeb565b91506125a282612561565b602082019050919050565b600060208201905081810360008301526125c68161258a565b9050919050565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b6000612629603283611aeb565b9150612634826125cd565b604082019050919050565b600060208201905081810360008301526126588161261c565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600081519050919050565b600082825260208201905092915050565b60006126b58261268e565b6126bf8185612699565b93506126cf818560208601611afc565b6126d881611b26565b840191505092915050565b60006080820190506126f86000830187611c27565b6127056020830186611c27565b6127126040830185611d3d565b818103606083015261272481846126aa565b905095945050505050565b60008151905061273e81611a51565b92915050565b60006020828403121561275a57612759611a1b565b5b60006127688482850161272f565b91505092915050565b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b60006127a7602083611aeb565b91506127b282612771565b602082019050919050565b600060208201905081810360008301526127d68161279a565b9050919050565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b6000612813601c83611aeb565b915061281e826127dd565b602082019050919050565b6000602082019050818103600083015261284281612806565b905091905056fea264697066735822122033944bfb5e7f7bec6657be72915ae11109b3284fb985e16f7854dff14ce313fa64736f6c63430008120033"; + + private const string Nft721ABI = + "[{ \"inputs\": [ { \"internalType\": \"address\", \"name\": \"owner\", \"type\": \"address\" } ], \"name\": \"balanceOf\", \"outputs\": [ { \"internalType\": \"uint256\", \"name\": \"\", \"type\": \"uint256\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"name\", \"outputs\": [ { \"internalType\": \"string\", \"name\": \"\", \"type\": \"string\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"uint256\", \"name\": \"tokenId\", \"type\": \"uint256\" } ], \"name\": \"ownerOf\", \"outputs\": [ { \"internalType\": \"address\", \"name\": \"\", \"type\": \"address\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"to\", \"type\": \"address\" } ], \"name\": \"safeMint\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"symbol\", \"outputs\": [ { \"internalType\": \"string\", \"name\": \"\", \"type\": \"string\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"uint256\", \"name\": \"tokenId\", \"type\": \"uint256\" } ], \"name\": \"tokenURI\", \"outputs\": [ { \"internalType\": \"string\", \"name\": \"\", \"type\": \"string\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }]"; + + private ChainSafe.Gaming.Web3.Web3 firstAccount; + private string firstWalletAddress; + private string secondaryWalletAddress; + private string nft721Address; + private Process node; + + [Test] + public void GetNetworkTest() + { + var network = firstAccount.RpcProvider.LastKnownNetwork; + Assert.AreEqual("GoChain Testnet", network.Name); + Assert.AreEqual(31337, network.ChainId); + } + + [Test] + public void GetBalanceTest() + { + var balance = firstAccount.RpcProvider.GetBalance(firstWalletAddress).Result; + var balanceFormatted = Units.FormatEther(balance); + Assert.Greater(balanceFormatted, "9990"); + } + + [Test] + public void GetCodeTest() + { + var code = firstAccount.RpcProvider.GetCode(firstWalletAddress).Result; + Assert.AreEqual("0x", code); + + code = firstAccount.RpcProvider.GetCode(nft721Address).Result; + Assert.AreNotEqual("0x", code); + } + + [Test] + public void GetLastBlockTest() + { + var latestBlock = firstAccount.RpcProvider.GetBlock().Result; + Assert.AreEqual("0x0000000000000000", latestBlock.Nonce); + Assert.AreEqual("30000000", latestBlock.GasLimit.ToString()); + Assert.True(latestBlock.BlockHash.StartsWith("0x")); + Assert.True(latestBlock.ParentHash.StartsWith("0x")); + Assert.IsNotEmpty(latestBlock.Number.ToString()); + Assert.IsNotEmpty(latestBlock.Timestamp.ToString()); + } + + [Test] + public void GetBlockNumberTest() + { + var currentBlockNumber = firstAccount.RpcProvider.GetBlockNumber().Result; + Assert.Greater(currentBlockNumber.ToString(), "0"); + } + + [Test] + public void GetBlockByNumberTest() + { + var currentBlockNumber = firstAccount.RpcProvider.GetBlockNumber().Result; + var blockByNumber = firstAccount.RpcProvider.GetBlock(new BlockParameter(currentBlockNumber)).Result; + Assert.AreEqual(blockByNumber.Number, currentBlockNumber); + } + + [Test] + public void GetBlockWithTransactionsTest() + { + var currentBlockNumber = firstAccount.RpcProvider.GetBlockNumber().Result; + var blockParameter = new BlockParameter(currentBlockNumber.ToUlong()); + var blockWithTx = firstAccount.RpcProvider.GetBlockWithTransactions(blockParameter).Result; + + var firstTransaction = blockWithTx.Transactions[0]; + Assert.AreEqual(31337, firstTransaction.ChainId.ToUlong()); + Assert.AreEqual(currentBlockNumber, firstTransaction.BlockNumber); + } + + [Test] + public void GetPreviousBlockTest() + { + var currentBlockNumber = firstAccount.RpcProvider.GetBlockNumber().Result; + var previousBlockNumber = currentBlockNumber.ToUlong() - 1; + var previousBlock = firstAccount.RpcProvider.GetBlock(new BlockParameter(previousBlockNumber)).Result; + Assert.AreEqual(previousBlockNumber, previousBlock.Number.ToUlong()); + Assert.True(previousBlock.BlockHash.StartsWith("0x")); + } + + [Test] + public void GetTransactionCountTest() + { + var txCount = firstAccount.RpcProvider.GetTransactionCount(firstWalletAddress).Result; + Assert.Greater(txCount.ToUlong(), 0); + } + + [Test] + public void GetFeeDataTest() + { + var feeData = firstAccount.RpcProvider.GetFeeData().Result; + Assert.Greater(Units.FormatUnits(feeData.MaxFeePerGas, "gwei"), "0"); + Assert.Greater(Units.FormatUnits(feeData.GasPrice, "gwei"), "0"); + Assert.Greater(Units.FormatUnits(feeData.MaxPriorityFeePerGas, "gwei"), "0"); + } + + [Test] + public void GetGasPriceTest() + { + var gasPrice = firstAccount.RpcProvider.GetGasPrice().Result; + var gwei = Units.FormatUnits(gasPrice, "gwei"); + Assert.Greater(gasPrice.ToString(), "0"); + Assert.Greater(gasPrice.ToString(), gwei); + } + + [Test] + public void GetTransactionReceiptTest() + { + var latestBlockWithTx = firstAccount.RpcProvider.GetBlockWithTransactions().Result; + var firstTransactionInBlock = latestBlockWithTx.Transactions[0]; + var receipt = + firstAccount.RpcProvider.GetTransactionReceipt( + firstTransactionInBlock.Hash).Result; + Assert.AreEqual(firstTransactionInBlock.Hash, receipt.TransactionHash); + Assert.AreEqual(firstTransactionInBlock.BlockHash, receipt.BlockHash); + } + + [Test] + public void CallContractMethodTest() + { + var address = firstAccount.Signer.GetAddress().Result; + var contract = firstAccount.ContractBuilder.Build(Nft721ABI, nft721Address); + + var ret = contract.Send("safeMint", new object[] { address }).Result; + + var name = contract.Call("name").Result; + Assert.AreEqual("Contract", name[0]); + + var symbol = contract.Call("symbol").Result; + Assert.AreEqual("MNFT", symbol[0]); + + var tokenUri = contract.Call("tokenURI", new object[] { 0 }).Result; + Assert.AreEqual(string.Empty, tokenUri[0]); + + var ownerOf = contract.Call("ownerOf", new object[] { 0 }).Result; + StringAssert.AreEqualIgnoringCase(address, ownerOf[0].ToString()); + + var balanceOf = contract.Call("balanceOf", new[] { ownerOf[0] }).Result; + Assert.GreaterOrEqual(balanceOf[0].ToString(), "1"); + } + + [Test] + public void EstimateGasContractMethodTest() + { + var contract = firstAccount.ContractBuilder.Build(Nft721ABI, firstWalletAddress); + var result = contract.EstimateGas("ownerOf", new object[] { 1 }).Result; + Assert.AreEqual("21204", result.ToString()); + } + + [Test] + public void GetAccountsTest() + { + var accounts = firstAccount.RpcProvider.ListAccounts().Result; + Assert.AreEqual(10, accounts?.Length); + foreach (var account in accounts) + { + var accountBalance = firstAccount.RpcProvider.GetBalance(account).Result; + Assert.GreaterOrEqual(Units.FormatEther(accountBalance), "0"); + } + } + + [Test] + public void SendContractTest() + { + var contract = firstAccount.ContractBuilder.Build(Nft721ABI, nft721Address); + var ret = contract.Send("safeMint", new object[] { secondaryWalletAddress }).Result; + + Assert.IsNotNull(ret); + } + + [Test] + public void SendContractOverrideGasTest() + { + var contract = firstAccount.ContractBuilder.Build(Nft721ABI, nft721Address); + var ret = contract.Send("safeMint", new object[] { secondaryWalletAddress }, new TransactionRequest + { + GasLimit = new HexBigInteger("10000"), + GasPrice = new HexBigInteger("100000000"), + }).Result; + + Assert.IsNotNull(ret); + } + } +} \ No newline at end of file diff --git a/src/ChainSafe.GamingSDK.EVM.Tests/JsonRpcWallet.cs b/src/ChainSafe.Gaming.Tests/JsonRpcWallet.cs similarity index 90% rename from src/ChainSafe.GamingSDK.EVM.Tests/JsonRpcWallet.cs rename to src/ChainSafe.Gaming.Tests/JsonRpcWallet.cs index ffb08c005..9723c8337 100644 --- a/src/ChainSafe.GamingSDK.EVM.Tests/JsonRpcWallet.cs +++ b/src/ChainSafe.Gaming.Tests/JsonRpcWallet.cs @@ -1,17 +1,17 @@ using System; using System.Threading.Tasks; -using ChainSafe.GamingSDK.EVM.Web3.Core; -using ChainSafe.GamingSDK.EVM.Web3.Core.Evm; -using ChainSafe.GamingWeb3; +using ChainSafe.Gaming.Evm.Providers; +using ChainSafe.Gaming.Evm.Signers; +using ChainSafe.Gaming.Evm.Transactions; +using ChainSafe.Gaming.Web3; +using ChainSafe.Gaming.Web3.Core; +using ChainSafe.Gaming.Web3.Core.Evm; using Nethereum.ABI.EIP712; using Nethereum.Hex.HexConvertors.Extensions; using Nethereum.Hex.HexTypes; using Nethereum.Signer.EIP712; -using Web3Unity.Scripts.Library.Ethers.Providers; -using TransactionRequest = Web3Unity.Scripts.Library.Ethers.Transactions.TransactionRequest; -using TransactionResponse = Web3Unity.Scripts.Library.Ethers.Transactions.TransactionResponse; -namespace Web3Unity.Scripts.Library.Ethers.Signers +namespace ChainSafe.Gaming.Wallets { public class JsonRpcWallet : ISigner, ITransactionExecutor, ILifecycleParticipant { diff --git a/src/ChainSafe.GamingSDK.EVM.Tests/JsonRpcWalletConfiguration.cs b/src/ChainSafe.Gaming.Tests/JsonRpcWalletConfiguration.cs similarity index 78% rename from src/ChainSafe.GamingSDK.EVM.Tests/JsonRpcWalletConfiguration.cs rename to src/ChainSafe.Gaming.Tests/JsonRpcWalletConfiguration.cs index 11578991a..92d315e34 100644 --- a/src/ChainSafe.GamingSDK.EVM.Tests/JsonRpcWalletConfiguration.cs +++ b/src/ChainSafe.Gaming.Tests/JsonRpcWalletConfiguration.cs @@ -1,6 +1,6 @@ using System; -namespace Web3Unity.Scripts.Library.Ethers.Providers +namespace ChainSafe.Gaming.Wallets { [Serializable] public class JsonRpcWalletConfiguration diff --git a/src/ChainSafe.GamingSDK.EVM.Tests/Node/Emulator.cs b/src/ChainSafe.Gaming.Tests/Node/Emulator.cs similarity index 93% rename from src/ChainSafe.GamingSDK.EVM.Tests/Node/Emulator.cs rename to src/ChainSafe.Gaming.Tests/Node/Emulator.cs index aa92c441b..4591c8916 100644 --- a/src/ChainSafe.GamingSDK.EVM.Tests/Node/Emulator.cs +++ b/src/ChainSafe.Gaming.Tests/Node/Emulator.cs @@ -1,9 +1,9 @@ using System; using System.Diagnostics; using System.Threading; -using ChainSafe.GamingWeb3; +using ChainSafe.Gaming.Web3; -namespace ChainSafe.GamingSDK.EVM.Tests.Node +namespace ChainSafe.Gaming.Tests.Node { public static class Emulator { diff --git a/src/ChainSafe.GamingSDK.EVM.Tests/ProvidersSendTests.cs b/src/ChainSafe.Gaming.Tests/ProvidersSendTests.cs similarity index 93% rename from src/ChainSafe.GamingSDK.EVM.Tests/ProvidersSendTests.cs rename to src/ChainSafe.Gaming.Tests/ProvidersSendTests.cs index ce6bc34ad..14ce172d7 100644 --- a/src/ChainSafe.GamingSDK.EVM.Tests/ProvidersSendTests.cs +++ b/src/ChainSafe.Gaming.Tests/ProvidersSendTests.cs @@ -1,16 +1,16 @@ using System.Diagnostics; -using ChainSafe.GamingSDK.EVM.Tests.Node; -using ChainSafe.GamingWeb3; +using ChainSafe.Gaming.Evm.Providers; +using ChainSafe.Gaming.Evm.Transactions; +using ChainSafe.Gaming.Tests.Node; +using ChainSafe.Gaming.Web3; using Nethereum.Hex.HexTypes; using NUnit.Framework; -using Web3Unity.Scripts.Library.Ethers.Providers; -using Web3Unity.Scripts.Library.Ethers.Transactions; -using static ChainSafe.GamingSDK.EVM.Tests.Web3Util; +using static ChainSafe.Gaming.Tests.Web3Util; -namespace ChainSafe.GamingSDK.EVM.Tests +namespace ChainSafe.Gaming.Tests { using static RpcProviderExtensions; - using Web3 = ChainSafe.GamingWeb3.Web3; + using Web3 = ChainSafe.Gaming.Web3.Web3; [TestFixture] public class ProvidersSendTests diff --git a/src/ChainSafe.GamingSDK.EVM.Tests/RLPTests.cs b/src/ChainSafe.Gaming.Tests/RLPTests.cs similarity index 99% rename from src/ChainSafe.GamingSDK.EVM.Tests/RLPTests.cs rename to src/ChainSafe.Gaming.Tests/RLPTests.cs index aebed99f0..09e3b722d 100644 --- a/src/ChainSafe.GamingSDK.EVM.Tests/RLPTests.cs +++ b/src/ChainSafe.Gaming.Tests/RLPTests.cs @@ -1,10 +1,10 @@ using System; using System.Linq; +using ChainSafe.Gaming.Evm.RLP; using Nethereum.Hex.HexConvertors.Extensions; using NUnit.Framework; -using Web3Unity.Scripts.Library.Ethers.RLP; -namespace ChainSafe.GamingSDK.EVM.Tests +namespace ChainSafe.Gaming.Tests { public class RLPTests { diff --git a/src/ChainSafe.Gaming.Tests/Web3Util.cs b/src/ChainSafe.Gaming.Tests/Web3Util.cs new file mode 100644 index 000000000..3269c7af8 --- /dev/null +++ b/src/ChainSafe.Gaming.Tests/Web3Util.cs @@ -0,0 +1,59 @@ +using System.Threading.Tasks; +using ChainSafe.Gaming.Evm.Contracts.Builders; +using ChainSafe.Gaming.Evm.JsonRpc; +using ChainSafe.Gaming.Evm.Providers; +using ChainSafe.Gaming.Evm.Signers; +using ChainSafe.Gaming.NetCore; +using ChainSafe.Gaming.Wallets; +using ChainSafe.Gaming.Web3.Build; +using ChainSafe.Gaming.Web3.Core; +using ChainSafe.Gaming.Web3.Core.Evm; +using Microsoft.Extensions.DependencyInjection; + +namespace ChainSafe.Gaming.Tests +{ + internal static class Web3Util + { + public static ValueTask CreateWeb3(int accountIndex = 0) + { + return CreateWeb3(new JsonRpcWalletConfiguration { AccountIndex = accountIndex }); + } + + private static ValueTask CreateWeb3( + JsonRpcWalletConfiguration jsonRpcWalletConfiguration) + { + return new Web3Builder( + new ProjectConfig { ProjectId = string.Empty }, + new ChainConfig + { + Chain = "Anvil", + ChainId = "31337", + Network = "GoChain Testnet", + Rpc = "http://127.0.0.1:8545", + }) + .Configure(services => + { + services.UseNetCoreEnvironment(); + services.UseRpcProvider(); + + services.AddSingleton(jsonRpcWalletConfiguration); + services.AddSingleton(); + }) + .BuildAsync(); + } + + public static string DeployContracts(ChainSafe.Gaming.Web3.Web3 web3, string bytecode, string abi) + { + var builder = new DeployContractTransactionBuilder(); + var txReq = builder.BuildTransaction(bytecode, abi, null); + + var txTask = web3.TransactionExecutor.SendTransaction(txReq); + txTask.Wait(); + + var receiptTask = web3.RpcProvider.GetTransactionReceipt(txTask.Result.Hash); + receiptTask.Wait(); + + return receiptTask.Result.ContractAddress ?? string.Empty; + } + } +} \ No newline at end of file diff --git a/src/ChainSafe.GamingSDK.EVM.Tests/contracts/abi.json b/src/ChainSafe.Gaming.Tests/contracts/abi.json similarity index 100% rename from src/ChainSafe.GamingSDK.EVM.Tests/contracts/abi.json rename to src/ChainSafe.Gaming.Tests/contracts/abi.json diff --git a/src/ChainSafe.GamingSDK.EVM.Tests/contracts/erc721.sol b/src/ChainSafe.Gaming.Tests/contracts/erc721.sol similarity index 100% rename from src/ChainSafe.GamingSDK.EVM.Tests/contracts/erc721.sol rename to src/ChainSafe.Gaming.Tests/contracts/erc721.sol diff --git a/src/ChainSafe.GamingSdk.EVM.Unity.ThirdParty/ChainSafe.GamingSdk.EVM.Unity.ThirdParty.csproj b/src/ChainSafe.Gaming.Unity.ThirdParty/ChainSafe.Gaming.Unity.ThirdParty.csproj similarity index 92% rename from src/ChainSafe.GamingSdk.EVM.Unity.ThirdParty/ChainSafe.GamingSdk.EVM.Unity.ThirdParty.csproj rename to src/ChainSafe.Gaming.Unity.ThirdParty/ChainSafe.Gaming.Unity.ThirdParty.csproj index 046daa6fa..7e9a5ffa7 100644 --- a/src/ChainSafe.GamingSdk.EVM.Unity.ThirdParty/ChainSafe.GamingSdk.EVM.Unity.ThirdParty.csproj +++ b/src/ChainSafe.Gaming.Unity.ThirdParty/ChainSafe.Gaming.Unity.ThirdParty.csproj @@ -14,6 +14,7 @@ 1701;1702;CS0618 Debug;Release;Test AnyCPU + ChainSafe.Gaming.Unity.ThirdParty diff --git a/src/ChainSafe.GamingSdk.EVM.Unity.ThirdParty/Dispatcher.cs b/src/ChainSafe.Gaming.Unity.ThirdParty/Dispatcher.cs similarity index 99% rename from src/ChainSafe.GamingSdk.EVM.Unity.ThirdParty/Dispatcher.cs rename to src/ChainSafe.Gaming.Unity.ThirdParty/Dispatcher.cs index 769050aef..8c9ba9de1 100644 --- a/src/ChainSafe.GamingSdk.EVM.Unity.ThirdParty/Dispatcher.cs +++ b/src/ChainSafe.Gaming.Unity.ThirdParty/Dispatcher.cs @@ -20,7 +20,7 @@ limitations under the License. using System; using System.Threading.Tasks; -namespace Web3Unity.Scripts.Library.Ethers.Unity +namespace ChainSafe.Gaming.Evm.Unity { /// Author: Pim de Witte (pimdewitte.com) and contributors, https://github.com/PimDeWitte/UnityMainThreadDispatcher /// diff --git a/src/ChainSafe.GamingSdk.EVM.Unity/ChainSafe.GamingSdk.EVM.Unity.csproj b/src/ChainSafe.Gaming.Unity/ChainSafe.Gaming.Unity.csproj similarity index 54% rename from src/ChainSafe.GamingSdk.EVM.Unity/ChainSafe.GamingSdk.EVM.Unity.csproj rename to src/ChainSafe.Gaming.Unity/ChainSafe.Gaming.Unity.csproj index 4b9f462d9..80c5243d5 100644 --- a/src/ChainSafe.GamingSdk.EVM.Unity/ChainSafe.GamingSdk.EVM.Unity.csproj +++ b/src/ChainSafe.Gaming.Unity/ChainSafe.Gaming.Unity.csproj @@ -9,15 +9,16 @@ ../../global.ruleset Debug;Release;Test AnyCPU + ChainSafe.Gaming.Unity - - - - - - + + + + + + @@ -32,7 +33,7 @@ - ChainSafe.GamingSdk.EVM.Unity.xml + ChainSafe.Gaming.Unity.xml diff --git a/src/ChainSafe.GamingSdk.EVM.Unity/EnsureUnityBuild.cs b/src/ChainSafe.Gaming.Unity/EnsureUnityBuild.cs similarity index 79% rename from src/ChainSafe.GamingSdk.EVM.Unity/EnsureUnityBuild.cs rename to src/ChainSafe.Gaming.Unity/EnsureUnityBuild.cs index 2fe2e9dbc..aeed63e27 100644 --- a/src/ChainSafe.GamingSdk.EVM.Unity/EnsureUnityBuild.cs +++ b/src/ChainSafe.Gaming.Unity/EnsureUnityBuild.cs @@ -1,4 +1,4 @@ -namespace ChainSafe.GamingSdk.EVM.Unity +namespace ChainSafe.Gaming.Unity { internal class EnsureUnityBuild { @@ -9,7 +9,7 @@ internal class EnsureUnityBuild "CodeQuality", "IDE0051:Remove unused private members", Justification = "Included as a check, not meant to be used")] - private Web3Unity.Scripts.Library.Ethers.Utils.IsUnityBuild isUnityBuild; + private Gaming.Evm.Utils.IsUnityBuild isUnityBuild; #pragma warning restore CS0169 } } diff --git a/src/ChainSafe.GamingSdk.EVM.Unity/IMainThreadRunner.cs b/src/ChainSafe.Gaming.Unity/IMainThreadRunner.cs similarity index 86% rename from src/ChainSafe.GamingSdk.EVM.Unity/IMainThreadRunner.cs rename to src/ChainSafe.Gaming.Unity/IMainThreadRunner.cs index 894553daa..5b7e6a38b 100644 --- a/src/ChainSafe.GamingSdk.EVM.Unity/IMainThreadRunner.cs +++ b/src/ChainSafe.Gaming.Unity/IMainThreadRunner.cs @@ -1,7 +1,7 @@ using System; using System.Threading.Tasks; -namespace ChainSafe.GamingSdk.Evm.Unity +namespace ChainSafe.Gaming.Unity { public interface IMainThreadRunner { diff --git a/src/ChainSafe.GamingSdk.EVM.Unity/UnityDispatcherAdapter.cs b/src/ChainSafe.Gaming.Unity/UnityDispatcherAdapter.cs similarity index 80% rename from src/ChainSafe.GamingSdk.EVM.Unity/UnityDispatcherAdapter.cs rename to src/ChainSafe.Gaming.Unity/UnityDispatcherAdapter.cs index f54762996..671ff6cb4 100644 --- a/src/ChainSafe.GamingSdk.EVM.Unity/UnityDispatcherAdapter.cs +++ b/src/ChainSafe.Gaming.Unity/UnityDispatcherAdapter.cs @@ -1,9 +1,8 @@ using System; using System.Threading.Tasks; -using ChainSafe.GamingWeb3.Environment; -using Web3Unity.Scripts.Library.Ethers.Unity; +using ChainSafe.Gaming.Evm.Unity; -namespace ChainSafe.GamingSdk.Evm.Unity +namespace ChainSafe.Gaming.Unity { public class UnityDispatcherAdapter : IMainThreadRunner { diff --git a/src/ChainSafe.GamingSdk.EVM.Unity/UnityEnvironmentExtensions.cs b/src/ChainSafe.Gaming.Unity/UnityEnvironmentExtensions.cs similarity index 74% rename from src/ChainSafe.GamingSdk.EVM.Unity/UnityEnvironmentExtensions.cs rename to src/ChainSafe.Gaming.Unity/UnityEnvironmentExtensions.cs index 626038c60..411e975a0 100644 --- a/src/ChainSafe.GamingSdk.EVM.Unity/UnityEnvironmentExtensions.cs +++ b/src/ChainSafe.Gaming.Unity/UnityEnvironmentExtensions.cs @@ -1,11 +1,10 @@ -using ChainSafe.GamingSdk.Evm.Unity; -using ChainSafe.GamingSdk.EVM.Unity; -using ChainSafe.GamingWeb3.Analytics; -using ChainSafe.GamingWeb3.Build; -using ChainSafe.GamingWeb3.Environment; +using ChainSafe.Gaming.Unity; +using ChainSafe.Gaming.Web3.Analytics; +using ChainSafe.Gaming.Web3.Build; +using ChainSafe.Gaming.Web3.Environment; using Microsoft.Extensions.DependencyInjection; -namespace ChainSafe.GamingWeb3.Unity +namespace ChainSafe.Gaming.Web3.Unity { public static class UnityEnvironmentExtensions { diff --git a/src/ChainSafe.GamingSdk.EVM.Unity/UnityHttpClient.cs b/src/ChainSafe.Gaming.Unity/UnityHttpClient.cs similarity index 95% rename from src/ChainSafe.GamingSdk.EVM.Unity/UnityHttpClient.cs rename to src/ChainSafe.Gaming.Unity/UnityHttpClient.cs index 0fee2d49e..99a85b6f2 100644 --- a/src/ChainSafe.GamingSdk.EVM.Unity/UnityHttpClient.cs +++ b/src/ChainSafe.Gaming.Unity/UnityHttpClient.cs @@ -1,13 +1,13 @@ using System.IO; using System.Text; using System.Threading.Tasks; -using ChainSafe.GamingSdk.Evm.Unity; -using ChainSafe.GamingWeb3.Environment; +using ChainSafe.Gaming.Unity; +using ChainSafe.Gaming.Web3.Environment; using Newtonsoft.Json; using UnityEngine.Assertions; using UnityEngine.Networking; -namespace ChainSafe.GamingWeb3.Unity +namespace ChainSafe.Gaming.Web3.Unity { public class UnityHttpClient : IHttpClient { diff --git a/src/ChainSafe.GamingSdk.EVM.Unity/UnityLogWriter.cs b/src/ChainSafe.Gaming.Unity/UnityLogWriter.cs similarity index 85% rename from src/ChainSafe.GamingSdk.EVM.Unity/UnityLogWriter.cs rename to src/ChainSafe.Gaming.Unity/UnityLogWriter.cs index 1b53206b4..e92ed7f34 100644 --- a/src/ChainSafe.GamingSdk.EVM.Unity/UnityLogWriter.cs +++ b/src/ChainSafe.Gaming.Unity/UnityLogWriter.cs @@ -1,8 +1,8 @@ -using ChainSafe.GamingSdk.Evm.Unity; -using ChainSafe.GamingWeb3.Environment; +using ChainSafe.Gaming.Unity; +using ChainSafe.Gaming.Web3.Environment; using UnityEngine; -namespace ChainSafe.GamingWeb3.Unity +namespace ChainSafe.Gaming.Web3.Unity { public class UnityLogWriter : ILogWriter { diff --git a/src/ChainSafe.GamingSdk.EVM.Unity/UnityOperatingSystemMediator.cs b/src/ChainSafe.Gaming.Unity/UnityOperatingSystemMediator.cs similarity index 80% rename from src/ChainSafe.GamingSdk.EVM.Unity/UnityOperatingSystemMediator.cs rename to src/ChainSafe.Gaming.Unity/UnityOperatingSystemMediator.cs index 132374f7a..46870f9cc 100644 --- a/src/ChainSafe.GamingSdk.EVM.Unity/UnityOperatingSystemMediator.cs +++ b/src/ChainSafe.Gaming.Unity/UnityOperatingSystemMediator.cs @@ -1,7 +1,7 @@ -using ChainSafe.GamingWeb3.Environment; +using ChainSafe.Gaming.Web3.Environment; using UnityEngine; -namespace ChainSafe.GamingSdk.EVM.Unity +namespace ChainSafe.Gaming.Unity { public class UnityOperatingSystemMediator : IOperatingSystemMediator { diff --git a/src/ChainSafe.GamingSdk.EVM.Unity/build.bat b/src/ChainSafe.Gaming.Unity/build.bat similarity index 100% rename from src/ChainSafe.GamingSdk.EVM.Unity/build.bat rename to src/ChainSafe.Gaming.Unity/build.bat diff --git a/src/ChainSafe.GamingSdk.EVM.Unity/build.sh b/src/ChainSafe.Gaming.Unity/build.sh similarity index 100% rename from src/ChainSafe.GamingSdk.EVM.Unity/build.sh rename to src/ChainSafe.Gaming.Unity/build.sh diff --git a/src/ChainSafe.Gaming.Unity/debug-publish-to-unity-package.bat b/src/ChainSafe.Gaming.Unity/debug-publish-to-unity-package.bat new file mode 100644 index 000000000..a489298bc --- /dev/null +++ b/src/ChainSafe.Gaming.Unity/debug-publish-to-unity-package.bat @@ -0,0 +1,29 @@ +@ECHO OFF + +echo Building project... + +del obj /F /Q +del bin /F /Q +dotnet publish -c debug -f netstandard2.1 /property:Unity=true +if %errorlevel% neq 0 exit /b %errorlevel% + +echo Restoring non-Unity packages... + +pushd ..\.. +dotnet restore +popd + +echo Moving files to Unity package... + +pushd bin\debug\netstandard2.1\publish + +del Newtonsoft.Json.dll +del UnityEngine.dll +if not exist ..\..\..\..\..\..\Packages\io.chainsafe.web3-unity\Runtime\Libraries mkdir ..\..\..\..\..\..\Packages\io.chainsafe.web3-unity\Runtime\Libraries\ +del ..\..\..\..\..\..\Packages\io.chainsafe.web3-unity\Runtime\Libraries\* /F /Q +copy *.dll ..\..\..\..\..\..\Packages\io.chainsafe.web3-unity\Runtime\Libraries +copy *.pdb ..\..\..\..\..\..\Packages\io.chainsafe.web3-unity\Runtime\Libraries + +popd + +echo Done diff --git a/src/ChainSafe.GamingSdk.EVM.Unity/debug-publish-to-unity-package.sh b/src/ChainSafe.Gaming.Unity/debug-publish-to-unity-package.sh old mode 100755 new mode 100644 similarity index 100% rename from src/ChainSafe.GamingSdk.EVM.Unity/debug-publish-to-unity-package.sh rename to src/ChainSafe.Gaming.Unity/debug-publish-to-unity-package.sh diff --git a/src/ChainSafe.GamingSdk.EVM.Unity/link.xml b/src/ChainSafe.Gaming.Unity/link.xml similarity index 82% rename from src/ChainSafe.GamingSdk.EVM.Unity/link.xml rename to src/ChainSafe.Gaming.Unity/link.xml index b83271806..3b13f5409 100644 --- a/src/ChainSafe.GamingSdk.EVM.Unity/link.xml +++ b/src/ChainSafe.Gaming.Unity/link.xml @@ -14,10 +14,10 @@ --> - - - - + + + + diff --git a/src/ChainSafe.GamingSdk.EVM.Unity/publish-to-unity-package.bat b/src/ChainSafe.Gaming.Unity/publish-to-unity-package.bat similarity index 100% rename from src/ChainSafe.GamingSdk.EVM.Unity/publish-to-unity-package.bat rename to src/ChainSafe.Gaming.Unity/publish-to-unity-package.bat diff --git a/src/ChainSafe.GamingSdk.EVM.Unity/publish-to-unity-package.sh b/src/ChainSafe.Gaming.Unity/publish-to-unity-package.sh similarity index 100% rename from src/ChainSafe.GamingSdk.EVM.Unity/publish-to-unity-package.sh rename to src/ChainSafe.Gaming.Unity/publish-to-unity-package.sh diff --git a/src/ChainSafe.GamingSdk.EVM.Unity/publish.bat b/src/ChainSafe.Gaming.Unity/publish.bat similarity index 100% rename from src/ChainSafe.GamingSdk.EVM.Unity/publish.bat rename to src/ChainSafe.Gaming.Unity/publish.bat diff --git a/src/ChainSafe.GamingSdk.EVM.Unity/publish.sh b/src/ChainSafe.Gaming.Unity/publish.sh similarity index 100% rename from src/ChainSafe.GamingSdk.EVM.Unity/publish.sh rename to src/ChainSafe.Gaming.Unity/publish.sh diff --git a/src/ChainSafe.Gaming.WebPageWallet/ChainSafe.Gaming.WebPageWallet.csproj b/src/ChainSafe.Gaming.WebPageWallet/ChainSafe.Gaming.WebPageWallet.csproj new file mode 100644 index 000000000..2419a9997 --- /dev/null +++ b/src/ChainSafe.Gaming.WebPageWallet/ChainSafe.Gaming.WebPageWallet.csproj @@ -0,0 +1,29 @@ + + + + netstandard2.1 + enable + 9.0 + ChainSafe.Gaming.WebPageWallet + True + True + ../../global.ruleset + ChainSafe.Gaming.MetaMaskBrowserWallet + Debug;Release;Test + AnyCPU + + + + + + + + + + + + + + + + diff --git a/src/ChainSafe.GamingSDK.EVM.WebPageWallet/WebPageWallet.cs b/src/ChainSafe.Gaming.WebPageWallet/WebPageWallet.cs similarity index 88% rename from src/ChainSafe.GamingSDK.EVM.WebPageWallet/WebPageWallet.cs rename to src/ChainSafe.Gaming.WebPageWallet/WebPageWallet.cs index a70ce5464..e3ecedaf8 100644 --- a/src/ChainSafe.GamingSDK.EVM.WebPageWallet/WebPageWallet.cs +++ b/src/ChainSafe.Gaming.WebPageWallet/WebPageWallet.cs @@ -1,29 +1,33 @@ using System; using System.Text; using System.Threading.Tasks; -using ChainSafe.GamingSDK.EVM.Web3.Core; -using ChainSafe.GamingSDK.EVM.Web3.Core.Debug; -using ChainSafe.GamingSDK.EVM.Web3.Core.Evm; -using ChainSafe.GamingWeb3; -using ChainSafe.GamingWeb3.Environment; +using ChainSafe.Gaming.Evm.Providers; +using ChainSafe.Gaming.Evm.Signers; +using ChainSafe.Gaming.Evm.Transactions; +using ChainSafe.Gaming.Web3; +using ChainSafe.Gaming.Web3.Core; +using ChainSafe.Gaming.Web3.Core.Debug; +using ChainSafe.Gaming.Web3.Core.Evm; +using ChainSafe.Gaming.Web3.Environment; using Nethereum.ABI.EIP712; using Nethereum.Signer; using Nethereum.Util; using Newtonsoft.Json; -using Web3Unity.Scripts.Library.Ethers.Providers; -using Web3Unity.Scripts.Library.Ethers.Signers; -using Web3Unity.Scripts.Library.Ethers.Transactions; -using AddressExtensions = ChainSafe.GamingSDK.EVM.Web3.Core.Debug.AddressExtensions; +using AddressExtensions = ChainSafe.Gaming.Web3.Core.Debug.AddressExtensions; -namespace ChainSafe.GamingSDK.EVM.MetaMaskBrowserWallet +namespace ChainSafe.Gaming.Wallets { public class WebPageWallet : ISigner, ITransactionExecutor, ILifecycleParticipant { + public delegate string ConnectMessageBuildDelegate(DateTime expirationTime); + +#pragma warning disable SA1201 private static readonly TimeSpan MinClipboardCheckPeriod = TimeSpan.FromMilliseconds(10); +#pragma warning restore SA1201 + private readonly IChainConfig chainConfig; private readonly WebPageWalletConfig configuration; private readonly IOperatingSystemMediator operatingSystem; - private readonly IChainConfig chainConfig; private readonly IRpcProvider provider; private string? address; @@ -40,15 +44,16 @@ public WebPageWallet( this.configuration = configuration; } - public delegate string ConnectMessageBuildDelegate(DateTime expirationTime); - public async ValueTask WillStartAsync() { configuration.SavedUserAddress?.AssertIsPublicAddress(nameof(configuration.SavedUserAddress)); address = configuration.SavedUserAddress ?? await GetAccountVerifyUserOwns(); } - public ValueTask WillStopAsync() => new(Task.CompletedTask); + public ValueTask WillStopAsync() + { + return new ValueTask(Task.CompletedTask); + } public Task GetAddress() { @@ -72,7 +77,32 @@ string BuildUrl() } // TODO: validate with regex - bool ValidateResponse(string response) => response.StartsWith("0x") && response.Length == 132; + bool ValidateResponse(string response) + { + return response.StartsWith("0x") && response.Length == 132; + } + } + + public async Task SignTypedData(SerializableDomain domain, TStructType message) + { + var pageUrl = BuildUrl(); + return await OpenPageWaitResponse(pageUrl, ValidateResponse); + + string BuildUrl() + { + return $"{configuration.ServiceUrl}" + + "?action=sign-typed-data" + + "&domain=" + Uri.EscapeDataString(JsonConvert.SerializeObject(domain)) + + "&types=" + Uri.EscapeDataString(JsonConvert.SerializeObject( + MemberDescriptionFactory.GetTypesMemberDescription(typeof(TStructType)))) + + "&message=" + Uri.EscapeDataString(JsonConvert.SerializeObject(message)); + } + + // TODO: validate with regex + bool ValidateResponse(string response) + { + return response.StartsWith("0x") && response.Length == 132; + } } public async Task SendTransaction(TransactionRequest transaction) @@ -132,26 +162,10 @@ void AppendStringIfNotNullOrEmtpy(string name, string value) } // TODO: validate with regex - bool ValidateResponse(string response) => response.StartsWith("0x") && response.Length == 66; - } - - public async Task SignTypedData(SerializableDomain domain, TStructType message) - { - var pageUrl = BuildUrl(); - return await OpenPageWaitResponse(pageUrl, ValidateResponse); - - string BuildUrl() + bool ValidateResponse(string response) { - return $"{configuration.ServiceUrl}" + - "?action=sign-typed-data" + - "&domain=" + Uri.EscapeDataString(JsonConvert.SerializeObject(domain)) + - "&types=" + Uri.EscapeDataString(JsonConvert.SerializeObject( - MemberDescriptionFactory.GetTypesMemberDescription(typeof(TStructType)))) + - "&message=" + Uri.EscapeDataString(JsonConvert.SerializeObject(message)); + return response.StartsWith("0x") && response.Length == 66; } - - // TODO: validate with regex - bool ValidateResponse(string response) => response.StartsWith("0x") && response.Length == 132; } // TODO: extract hash from deeplink instead of clipboard @@ -191,7 +205,7 @@ private async Task GetAccountVerifyUserOwns() var signature = await SignMessage(message); var publicAddress = ExtractPublicAddress(signature, message); - if (!AddressExtensions.IsPublicAddress(publicAddress)) + if (!Web3.Core.Debug.AddressExtensions.IsPublicAddress(publicAddress)) { throw new Web3Exception( $"Public address recovered from signature is not valid. Public address: {publicAddress}"); diff --git a/src/ChainSafe.GamingSDK.EVM.WebPageWallet/WebPageWalletConfig.cs b/src/ChainSafe.Gaming.WebPageWallet/WebPageWalletConfig.cs similarity index 92% rename from src/ChainSafe.GamingSDK.EVM.WebPageWallet/WebPageWalletConfig.cs rename to src/ChainSafe.Gaming.WebPageWallet/WebPageWalletConfig.cs index 82fae1bb0..e972a9db1 100644 --- a/src/ChainSafe.GamingSDK.EVM.WebPageWallet/WebPageWalletConfig.cs +++ b/src/ChainSafe.Gaming.WebPageWallet/WebPageWalletConfig.cs @@ -1,6 +1,6 @@ using System; -namespace ChainSafe.GamingSDK.EVM.MetaMaskBrowserWallet +namespace ChainSafe.Gaming.Wallets { [Serializable] public class WebPageWalletConfig diff --git a/src/ChainSafe.GamingSDK.EVM.WebPageWallet/WebPageWalletExtensions.cs b/src/ChainSafe.Gaming.WebPageWallet/WebPageWalletExtensions.cs similarity index 89% rename from src/ChainSafe.GamingSDK.EVM.WebPageWallet/WebPageWalletExtensions.cs rename to src/ChainSafe.Gaming.WebPageWallet/WebPageWalletExtensions.cs index 128aea36e..3f027e091 100644 --- a/src/ChainSafe.GamingSDK.EVM.WebPageWallet/WebPageWalletExtensions.cs +++ b/src/ChainSafe.Gaming.WebPageWallet/WebPageWalletExtensions.cs @@ -1,11 +1,11 @@ -using ChainSafe.GamingSDK.EVM.Web3.Core; -using ChainSafe.GamingSDK.EVM.Web3.Core.Evm; -using ChainSafe.GamingWeb3.Build; +using ChainSafe.Gaming.Evm.Signers; +using ChainSafe.Gaming.Web3.Build; +using ChainSafe.Gaming.Web3.Core; +using ChainSafe.Gaming.Web3.Core.Evm; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection.Extensions; -using Web3Unity.Scripts.Library.Ethers.Signers; -namespace ChainSafe.GamingSDK.EVM.MetaMaskBrowserWallet +namespace ChainSafe.Gaming.Wallets { public static class WebPageWalletExtensions { diff --git a/src/ChainSafe.Gaming/AssemblyInfo.cs b/src/ChainSafe.Gaming/AssemblyInfo.cs new file mode 100644 index 000000000..0167a7618 --- /dev/null +++ b/src/ChainSafe.Gaming/AssemblyInfo.cs @@ -0,0 +1,4 @@ +using System.Runtime.CompilerServices; + +[assembly: InternalsVisibleTo("ChainSafe.Gaming.NetCore")] +[assembly: InternalsVisibleTo("ChainSafe.Gaming.Unity")] \ No newline at end of file diff --git a/src/ChainSafe.GamingSDK.EVM/ChainSafe.GamingSDK.EVM.csproj b/src/ChainSafe.Gaming/ChainSafe.Gaming.csproj similarity index 84% rename from src/ChainSafe.GamingSDK.EVM/ChainSafe.GamingSDK.EVM.csproj rename to src/ChainSafe.Gaming/ChainSafe.Gaming.csproj index f35063866..d4a23376a 100644 --- a/src/ChainSafe.GamingSDK.EVM/ChainSafe.GamingSDK.EVM.csproj +++ b/src/ChainSafe.Gaming/ChainSafe.Gaming.csproj @@ -8,12 +8,14 @@ ../../global.ruleset Debug;Release;Test AnyCPU + ChainSafe.Gaming - + + - + Unity + + + + + diff --git a/src/ChainSafe.GamingSDK.EVM/ChainSafe.GamingSDK.EVM.csproj.DotSettings b/src/ChainSafe.Gaming/ChainSafe.Gaming.csproj.DotSettings similarity index 100% rename from src/ChainSafe.GamingSDK.EVM/ChainSafe.GamingSDK.EVM.csproj.DotSettings rename to src/ChainSafe.Gaming/ChainSafe.Gaming.csproj.DotSettings diff --git a/src/ChainSafe.GamingSDK.EVM/README.md b/src/ChainSafe.Gaming/README.md similarity index 100% rename from src/ChainSafe.GamingSDK.EVM/README.md rename to src/ChainSafe.Gaming/README.md diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/Bytes/Bytes.cs b/src/ChainSafe.Gaming/RPC/Bytes/Bytes.cs similarity index 96% rename from src/ChainSafe.GamingSDK.EVM/RPC/Bytes/Bytes.cs rename to src/ChainSafe.Gaming/RPC/Bytes/Bytes.cs index 9012ffb27..c41845bf3 100644 --- a/src/ChainSafe.GamingSDK.EVM/RPC/Bytes/Bytes.cs +++ b/src/ChainSafe.Gaming/RPC/Bytes/Bytes.cs @@ -1,7 +1,7 @@ using System; using System.Text.RegularExpressions; -namespace Web3Unity.Scripts.Library.Ethers.Bytes +namespace ChainSafe.Gaming.Evm.Bytes { public class Bytes { diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/ABITypedRegistry.cs b/src/ChainSafe.Gaming/RPC/Contracts/Builders/ABITypedRegistry.cs similarity index 97% rename from src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/ABITypedRegistry.cs rename to src/ChainSafe.Gaming/RPC/Contracts/Builders/ABITypedRegistry.cs index f673220d1..6c22d2e5a 100644 --- a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/ABITypedRegistry.cs +++ b/src/ChainSafe.Gaming/RPC/Contracts/Builders/ABITypedRegistry.cs @@ -3,7 +3,7 @@ using Nethereum.ABI.FunctionEncoding.Attributes; using Nethereum.ABI.Model; -namespace Web3Unity.Scripts.Library.Ethers.Contracts.Builders +namespace ChainSafe.Gaming.Evm.Contracts.Builders { public static class ABITypedRegistry { diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/ContractBuilder.cs b/src/ChainSafe.Gaming/RPC/Contracts/Builders/ContractBuilder.cs similarity index 98% rename from src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/ContractBuilder.cs rename to src/ChainSafe.Gaming/RPC/Contracts/Builders/ContractBuilder.cs index a9c4144f5..c9e5fb5e0 100644 --- a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/ContractBuilder.cs +++ b/src/ChainSafe.Gaming/RPC/Contracts/Builders/ContractBuilder.cs @@ -6,7 +6,7 @@ using Nethereum.Hex.HexConvertors.Extensions; using Nethereum.RPC.Eth.DTOs; -namespace Web3Unity.Scripts.Library.Ethers.Contracts.Builders +namespace ChainSafe.Gaming.Evm.Contracts.Builders { public class ContractBuilder { diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/DeployContractTransactionBuilder.cs b/src/ChainSafe.Gaming/RPC/Contracts/Builders/DeployContractTransactionBuilder.cs similarity index 95% rename from src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/DeployContractTransactionBuilder.cs rename to src/ChainSafe.Gaming/RPC/Contracts/Builders/DeployContractTransactionBuilder.cs index f2db9a6c8..f05526fa2 100644 --- a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/DeployContractTransactionBuilder.cs +++ b/src/ChainSafe.Gaming/RPC/Contracts/Builders/DeployContractTransactionBuilder.cs @@ -1,9 +1,9 @@ using System; +using ChainSafe.Gaming.Evm.Transactions; using Nethereum.ABI.ABIDeserialisation; using Nethereum.ABI.FunctionEncoding; -using Web3Unity.Scripts.Library.Ethers.Transactions; -namespace Web3Unity.Scripts.Library.Ethers.Contracts.Builders +namespace ChainSafe.Gaming.Evm.Contracts.Builders { public class DeployContractTransactionBuilder { diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/EventBuilder.cs b/src/ChainSafe.Gaming/RPC/Contracts/Builders/EventBuilder.cs similarity index 96% rename from src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/EventBuilder.cs rename to src/ChainSafe.Gaming/RPC/Contracts/Builders/EventBuilder.cs index d0782118d..6df624dd4 100644 --- a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/EventBuilder.cs +++ b/src/ChainSafe.Gaming/RPC/Contracts/Builders/EventBuilder.cs @@ -1,12 +1,12 @@ using System; using System.Collections.Generic; +using ChainSafe.Gaming.Evm.Contracts.Extensions; using Nethereum.ABI.FunctionEncoding; using Nethereum.ABI.Model; using Nethereum.RPC.Eth.DTOs; using Newtonsoft.Json.Linq; -using Web3Unity.Scripts.Library.Ethers.Contracts.Extensions; -namespace Web3Unity.Scripts.Library.Ethers.Contracts.Builders +namespace ChainSafe.Gaming.Evm.Contracts.Builders { [Obsolete("Use the EventABI extensions instead")] public class EventBuilder diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/EventTopicBuilder.cs b/src/ChainSafe.Gaming/RPC/Contracts/Builders/EventTopicBuilder.cs similarity index 98% rename from src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/EventTopicBuilder.cs rename to src/ChainSafe.Gaming/RPC/Contracts/Builders/EventTopicBuilder.cs index b8e57c045..c5a2b706e 100644 --- a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/EventTopicBuilder.cs +++ b/src/ChainSafe.Gaming/RPC/Contracts/Builders/EventTopicBuilder.cs @@ -3,7 +3,7 @@ using Nethereum.ABI.Model; using Nethereum.Hex.HexConvertors.Extensions; -namespace Web3Unity.Scripts.Library.Ethers.Contracts.Builders +namespace ChainSafe.Gaming.Evm.Contracts.Builders { public class EventTopicBuilder { diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/FilterInput/BlockRange.cs b/src/ChainSafe.Gaming/RPC/Contracts/Builders/FilterInput/BlockRange.cs similarity index 95% rename from src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/FilterInput/BlockRange.cs rename to src/ChainSafe.Gaming/RPC/Contracts/Builders/FilterInput/BlockRange.cs index d2d71dc5d..c2877c50e 100644 --- a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/FilterInput/BlockRange.cs +++ b/src/ChainSafe.Gaming/RPC/Contracts/Builders/FilterInput/BlockRange.cs @@ -2,7 +2,7 @@ using System.Numerics; using Nethereum.Hex.HexTypes; -namespace Web3Unity.Scripts.Library.Ethers.Contracts.Builders.FilterInput +namespace ChainSafe.Gaming.Evm.Contracts.Builders.FilterInput { public readonly struct BlockRange : IEquatable diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/FilterInput/FilterExtensions.cs b/src/ChainSafe.Gaming/RPC/Contracts/Builders/FilterInput/FilterExtensions.cs similarity index 97% rename from src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/FilterInput/FilterExtensions.cs rename to src/ChainSafe.Gaming/RPC/Contracts/Builders/FilterInput/FilterExtensions.cs index 6a694e4ca..ad19058ef 100644 --- a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/FilterInput/FilterExtensions.cs +++ b/src/ChainSafe.Gaming/RPC/Contracts/Builders/FilterInput/FilterExtensions.cs @@ -5,7 +5,7 @@ using Nethereum.Hex.HexTypes; using Nethereum.RPC.Eth.DTOs; -namespace Web3Unity.Scripts.Library.Ethers.Contracts.Builders.FilterInput +namespace ChainSafe.Gaming.Evm.Contracts.Builders.FilterInput { public static class FilterExtensions { diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/FilterInput/FilterInputBuilder.cs b/src/ChainSafe.Gaming/RPC/Contracts/Builders/FilterInput/FilterInputBuilder.cs similarity index 96% rename from src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/FilterInput/FilterInputBuilder.cs rename to src/ChainSafe.Gaming/RPC/Contracts/Builders/FilterInput/FilterInputBuilder.cs index 45955e5a8..36e15ae85 100644 --- a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/FilterInput/FilterInputBuilder.cs +++ b/src/ChainSafe.Gaming/RPC/Contracts/Builders/FilterInput/FilterInputBuilder.cs @@ -2,11 +2,11 @@ using System.Collections.Generic; using System.Linq.Expressions; using System.Reflection; +using ChainSafe.Gaming.Evm.Contracts.Extensions; using Nethereum.ABI.Model; using Nethereum.RPC.Eth.DTOs; -using Web3Unity.Scripts.Library.Ethers.Contracts.Extensions; -namespace Web3Unity.Scripts.Library.Ethers.Contracts.Builders.FilterInput +namespace ChainSafe.Gaming.Evm.Contracts.Builders.FilterInput { /// /// Builds a filter based on indexed parameters on an event DTO query template. diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/FilterInput/TopicFilter.cs b/src/ChainSafe.Gaming/RPC/Contracts/Builders/FilterInput/TopicFilter.cs similarity index 92% rename from src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/FilterInput/TopicFilter.cs rename to src/ChainSafe.Gaming/RPC/Contracts/Builders/FilterInput/TopicFilter.cs index e01c14e07..6d0ebe5ef 100644 --- a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/FilterInput/TopicFilter.cs +++ b/src/ChainSafe.Gaming/RPC/Contracts/Builders/FilterInput/TopicFilter.cs @@ -2,7 +2,7 @@ using System.Reflection; using Nethereum.ABI.FunctionEncoding.Attributes; -namespace Web3Unity.Scripts.Library.Ethers.Contracts.Builders.FilterInput +namespace ChainSafe.Gaming.Evm.Contracts.Builders.FilterInput { internal class TopicFilter { diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/FilterInput/TopicFilterContainer.cs b/src/ChainSafe.Gaming/RPC/Contracts/Builders/FilterInput/TopicFilterContainer.cs similarity index 95% rename from src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/FilterInput/TopicFilterContainer.cs rename to src/ChainSafe.Gaming/RPC/Contracts/Builders/FilterInput/TopicFilterContainer.cs index 8a3cb2dd3..4a045bed3 100644 --- a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/FilterInput/TopicFilterContainer.cs +++ b/src/ChainSafe.Gaming/RPC/Contracts/Builders/FilterInput/TopicFilterContainer.cs @@ -3,7 +3,7 @@ using System.Reflection; using Nethereum.ABI.FunctionEncoding.Attributes; -namespace Web3Unity.Scripts.Library.Ethers.Contracts.Builders.FilterInput +namespace ChainSafe.Gaming.Evm.Contracts.Builders.FilterInput { internal class TopicFilterContainer where T : class diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/FilterInputBuilder.cs b/src/ChainSafe.Gaming/RPC/Contracts/Builders/FilterInputBuilder.cs similarity index 93% rename from src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/FilterInputBuilder.cs rename to src/ChainSafe.Gaming/RPC/Contracts/Builders/FilterInputBuilder.cs index 1d6c011ed..b88ddc1f9 100644 --- a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/FilterInputBuilder.cs +++ b/src/ChainSafe.Gaming/RPC/Contracts/Builders/FilterInputBuilder.cs @@ -1,6 +1,6 @@ using Nethereum.RPC.Eth.DTOs; -namespace Web3Unity.Scripts.Library.Ethers.Contracts.Builders +namespace ChainSafe.Gaming.Evm.Contracts.Builders { public class FilterInputBuilder { diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/FunctionBuilder.cs b/src/ChainSafe.Gaming/RPC/Contracts/Builders/FunctionBuilder.cs similarity index 99% rename from src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/FunctionBuilder.cs rename to src/ChainSafe.Gaming/RPC/Contracts/Builders/FunctionBuilder.cs index c1a827d13..59290dc84 100644 --- a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/FunctionBuilder.cs +++ b/src/ChainSafe.Gaming/RPC/Contracts/Builders/FunctionBuilder.cs @@ -4,7 +4,7 @@ using Nethereum.RPC.Eth.DTOs; using Nethereum.RPC.TransactionTypes; -namespace Web3Unity.Scripts.Library.Ethers.Contracts.Builders +namespace ChainSafe.Gaming.Evm.Contracts.Builders { public class FunctionBuilder : FunctionBuilderBase { diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/FunctionBuilderBase.cs b/src/ChainSafe.Gaming/RPC/Contracts/Builders/FunctionBuilderBase.cs similarity index 99% rename from src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/FunctionBuilderBase.cs rename to src/ChainSafe.Gaming/RPC/Contracts/Builders/FunctionBuilderBase.cs index 7adf5fc81..742bc5f3d 100644 --- a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Builders/FunctionBuilderBase.cs +++ b/src/ChainSafe.Gaming/RPC/Contracts/Builders/FunctionBuilderBase.cs @@ -7,7 +7,7 @@ using Nethereum.RPC.Eth.DTOs; using Newtonsoft.Json.Linq; -namespace Web3Unity.Scripts.Library.Ethers.Contracts.Builders +namespace ChainSafe.Gaming.Evm.Contracts.Builders { public abstract class FunctionBuilderBase { diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Contract.cs b/src/ChainSafe.Gaming/RPC/Contracts/Contract.cs similarity index 96% rename from src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Contract.cs rename to src/ChainSafe.Gaming/RPC/Contracts/Contract.cs index 9b95b3a69..80e22eb71 100644 --- a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Contract.cs +++ b/src/ChainSafe.Gaming/RPC/Contracts/Contract.cs @@ -1,13 +1,13 @@ using System; using System.Linq; using System.Threading.Tasks; -using ChainSafe.GamingSDK.EVM.Web3.Core.Evm; +using ChainSafe.Gaming.Evm.Providers; +using ChainSafe.Gaming.Evm.Signers; +using ChainSafe.Gaming.Evm.Transactions; +using ChainSafe.Gaming.Web3.Core.Evm; using Nethereum.Hex.HexTypes; -using Web3Unity.Scripts.Library.Ethers.Providers; -using Web3Unity.Scripts.Library.Ethers.Signers; -using Web3Unity.Scripts.Library.Ethers.Transactions; -namespace Web3Unity.Scripts.Library.Ethers.Contracts +namespace ChainSafe.Gaming.Evm.Contracts { public class Contract { diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/ContractBuilder.cs b/src/ChainSafe.Gaming/RPC/Contracts/ContractBuilder.cs similarity index 90% rename from src/ChainSafe.GamingSDK.EVM/RPC/Contracts/ContractBuilder.cs rename to src/ChainSafe.Gaming/RPC/Contracts/ContractBuilder.cs index c5f39661d..379a4b9bd 100644 --- a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/ContractBuilder.cs +++ b/src/ChainSafe.Gaming/RPC/Contracts/ContractBuilder.cs @@ -1,12 +1,12 @@ using System; using System.Collections.Generic; using System.Linq; -using ChainSafe.GamingSDK.EVM.Web3.Core.Evm; -using ChainSafe.GamingWeb3; -using Web3Unity.Scripts.Library.Ethers.Providers; -using Web3Unity.Scripts.Library.Ethers.Signers; +using ChainSafe.Gaming.Evm.Providers; +using ChainSafe.Gaming.Evm.Signers; +using ChainSafe.Gaming.Web3; +using ChainSafe.Gaming.Web3.Core.Evm; -namespace Web3Unity.Scripts.Library.Ethers.Contracts +namespace ChainSafe.Gaming.Evm.Contracts { public class ContractBuilder : IContractBuilder { diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/ContractBuilderConfig.cs b/src/ChainSafe.Gaming/RPC/Contracts/ContractBuilderConfig.cs similarity index 93% rename from src/ChainSafe.GamingSDK.EVM/RPC/Contracts/ContractBuilderConfig.cs rename to src/ChainSafe.Gaming/RPC/Contracts/ContractBuilderConfig.cs index 7bef54691..946e755b9 100644 --- a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/ContractBuilderConfig.cs +++ b/src/ChainSafe.Gaming/RPC/Contracts/ContractBuilderConfig.cs @@ -2,7 +2,7 @@ using System.Collections.Generic; using System.Text; -namespace Web3Unity.Scripts.Library.Ethers.Contracts +namespace ChainSafe.Gaming.Evm.Contracts { public class ContractBuilderConfig { diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/ContractBuilderExtensions.cs b/src/ChainSafe.Gaming/RPC/Contracts/ContractBuilderExtensions.cs similarity index 90% rename from src/ChainSafe.GamingSDK.EVM/RPC/Contracts/ContractBuilderExtensions.cs rename to src/ChainSafe.Gaming/RPC/Contracts/ContractBuilderExtensions.cs index 71e4a348c..8fa30d505 100644 --- a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/ContractBuilderExtensions.cs +++ b/src/ChainSafe.Gaming/RPC/Contracts/ContractBuilderExtensions.cs @@ -2,10 +2,10 @@ using System.Collections.Generic; using System.Linq; using System.Text; -using ChainSafe.GamingWeb3.Build; +using ChainSafe.Gaming.Web3.Build; using Microsoft.Extensions.DependencyInjection; -namespace Web3Unity.Scripts.Library.Ethers.Contracts +namespace ChainSafe.Gaming.Evm.Contracts { public static class ContractBuilderExtensions { diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/EventLog.cs b/src/ChainSafe.Gaming/RPC/Contracts/EventLog.cs similarity index 84% rename from src/ChainSafe.GamingSDK.EVM/RPC/Contracts/EventLog.cs rename to src/ChainSafe.Gaming/RPC/Contracts/EventLog.cs index bd12efce8..95f702497 100644 --- a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/EventLog.cs +++ b/src/ChainSafe.Gaming/RPC/Contracts/EventLog.cs @@ -1,6 +1,6 @@ using Nethereum.RPC.Eth.DTOs; -namespace Web3Unity.Scripts.Library.Ethers.Contracts +namespace ChainSafe.Gaming.Evm.Contracts { public class EventLog : IEventLog { diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Extensions/EventExtensions.cs b/src/ChainSafe.Gaming/RPC/Contracts/Extensions/EventExtensions.cs similarity index 99% rename from src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Extensions/EventExtensions.cs rename to src/ChainSafe.Gaming/RPC/Contracts/Extensions/EventExtensions.cs index 50f4feeb1..38d8dd988 100644 --- a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/Extensions/EventExtensions.cs +++ b/src/ChainSafe.Gaming/RPC/Contracts/Extensions/EventExtensions.cs @@ -1,5 +1,7 @@ using System.Collections.Generic; using System.Linq; +using ChainSafe.Gaming.Evm.Contracts.Builders; +using ChainSafe.Gaming.Evm.Contracts.Builders.FilterInput; using Nethereum.ABI.FunctionEncoding; using Nethereum.ABI.FunctionEncoding.Attributes; using Nethereum.ABI.Model; @@ -9,10 +11,8 @@ using Nethereum.Util; using Newtonsoft.Json; using Newtonsoft.Json.Linq; -using Web3Unity.Scripts.Library.Ethers.Contracts.Builders; -using Web3Unity.Scripts.Library.Ethers.Contracts.Builders.FilterInput; -namespace Web3Unity.Scripts.Library.Ethers.Contracts.Extensions +namespace ChainSafe.Gaming.Evm.Contracts.Extensions { public static class EventExtensions { diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/IContractBuilder.cs b/src/ChainSafe.Gaming/RPC/Contracts/IContractBuilder.cs similarity index 80% rename from src/ChainSafe.GamingSDK.EVM/RPC/Contracts/IContractBuilder.cs rename to src/ChainSafe.Gaming/RPC/Contracts/IContractBuilder.cs index 64071bd22..8e14ea6b9 100644 --- a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/IContractBuilder.cs +++ b/src/ChainSafe.Gaming/RPC/Contracts/IContractBuilder.cs @@ -2,7 +2,7 @@ using System.Collections.Generic; using System.Text; -namespace Web3Unity.Scripts.Library.Ethers.Contracts +namespace ChainSafe.Gaming.Evm.Contracts { public interface IContractBuilder { diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/IEventLog.cs b/src/ChainSafe.Gaming/RPC/Contracts/IEventLog.cs similarity index 67% rename from src/ChainSafe.GamingSDK.EVM/RPC/Contracts/IEventLog.cs rename to src/ChainSafe.Gaming/RPC/Contracts/IEventLog.cs index b1d8b332b..f892a658f 100644 --- a/src/ChainSafe.GamingSDK.EVM/RPC/Contracts/IEventLog.cs +++ b/src/ChainSafe.Gaming/RPC/Contracts/IEventLog.cs @@ -1,6 +1,6 @@ using Nethereum.RPC.Eth.DTOs; -namespace Web3Unity.Scripts.Library.Ethers.Contracts +namespace ChainSafe.Gaming.Evm.Contracts { public interface IEventLog { diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/HDNode/HDNode.cs b/src/ChainSafe.Gaming/RPC/HDNode/HDNode.cs similarity index 94% rename from src/ChainSafe.GamingSDK.EVM/RPC/HDNode/HDNode.cs rename to src/ChainSafe.Gaming/RPC/HDNode/HDNode.cs index 058773a56..121970862 100644 --- a/src/ChainSafe.GamingSDK.EVM/RPC/HDNode/HDNode.cs +++ b/src/ChainSafe.Gaming/RPC/HDNode/HDNode.cs @@ -3,12 +3,12 @@ using System.Linq; using System.Security.Cryptography; using System.Text; +using ChainSafe.Gaming.Evm.HDNode.Wordlists; using NBitcoin; using Nethereum.Hex.HexConvertors.Extensions; -using Web3Unity.Scripts.Library.Ethers.HDNode.Wordlists; -using Wordlist = Web3Unity.Scripts.Library.Ethers.HDNode.Wordlists.Wordlist; +using Wordlist = ChainSafe.Gaming.Evm.HDNode.Wordlists.Wordlist; -namespace Web3Unity.Scripts.Library.Ethers.HDNode +namespace ChainSafe.Gaming.Evm.HDNode { public class HDNode { @@ -111,7 +111,7 @@ public static string EntropyToMnemonic(byte[] entropy, string locale = "en") return string.Join(" ", indices.Select(index => wordlist.GetWord(index))); } - private static Wordlist GetWordlist(string locale) + private static Wordlists.Wordlist GetWordlist(string locale) { return locale switch { diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/HDNode/Wordlists/Wordlist.cs b/src/ChainSafe.Gaming/RPC/HDNode/Wordlists/Wordlist.cs similarity index 82% rename from src/ChainSafe.GamingSDK.EVM/RPC/HDNode/Wordlists/Wordlist.cs rename to src/ChainSafe.Gaming/RPC/HDNode/Wordlists/Wordlist.cs index 2a8ea708e..bb9b83934 100644 --- a/src/ChainSafe.GamingSDK.EVM/RPC/HDNode/Wordlists/Wordlist.cs +++ b/src/ChainSafe.Gaming/RPC/HDNode/Wordlists/Wordlist.cs @@ -1,4 +1,4 @@ -namespace Web3Unity.Scripts.Library.Ethers.HDNode.Wordlists +namespace ChainSafe.Gaming.Evm.HDNode.Wordlists { public abstract class Wordlist { diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/HDNode/Wordlists/WordlistEnglish.cs b/src/ChainSafe.Gaming/RPC/HDNode/Wordlists/WordlistEnglish.cs similarity index 99% rename from src/ChainSafe.GamingSDK.EVM/RPC/HDNode/Wordlists/WordlistEnglish.cs rename to src/ChainSafe.Gaming/RPC/HDNode/Wordlists/WordlistEnglish.cs index 8762de539..c653d7ab8 100644 --- a/src/ChainSafe.GamingSDK.EVM/RPC/HDNode/Wordlists/WordlistEnglish.cs +++ b/src/ChainSafe.Gaming/RPC/HDNode/Wordlists/WordlistEnglish.cs @@ -1,7 +1,7 @@ using System; using System.Text.RegularExpressions; -namespace Web3Unity.Scripts.Library.Ethers.HDNode.Wordlists +namespace ChainSafe.Gaming.Evm.HDNode.Wordlists { public class WordlistEnglish : Wordlist { diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/Providers/Event.cs b/src/ChainSafe.Gaming/RPC/Providers/Event.cs similarity index 97% rename from src/ChainSafe.GamingSDK.EVM/RPC/Providers/Event.cs rename to src/ChainSafe.Gaming/RPC/Providers/Event.cs index be7acc71f..c0f478b8e 100644 --- a/src/ChainSafe.GamingSDK.EVM/RPC/Providers/Event.cs +++ b/src/ChainSafe.Gaming/RPC/Providers/Event.cs @@ -2,7 +2,7 @@ using System.Collections.Generic; using System.Linq; -namespace Web3Unity.Scripts.Library.Ethers.Providers +namespace ChainSafe.Gaming.Evm.Providers { public abstract class Event { diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/Providers/FeeData.cs b/src/ChainSafe.Gaming/RPC/Providers/FeeData.cs similarity index 84% rename from src/ChainSafe.GamingSDK.EVM/RPC/Providers/FeeData.cs rename to src/ChainSafe.Gaming/RPC/Providers/FeeData.cs index 25335bdbd..bb504c020 100644 --- a/src/ChainSafe.GamingSDK.EVM/RPC/Providers/FeeData.cs +++ b/src/ChainSafe.Gaming/RPC/Providers/FeeData.cs @@ -1,6 +1,6 @@ using System.Numerics; -namespace Web3Unity.Scripts.Library.Ethers.Providers +namespace ChainSafe.Gaming.Evm.Providers { public class FeeData { diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/Providers/Formatter.cs b/src/ChainSafe.Gaming/RPC/Providers/Formatter.cs similarity index 71% rename from src/ChainSafe.GamingSDK.EVM/RPC/Providers/Formatter.cs rename to src/ChainSafe.Gaming/RPC/Providers/Formatter.cs index 7c86e930a..1c08cccff 100644 --- a/src/ChainSafe.GamingSDK.EVM/RPC/Providers/Formatter.cs +++ b/src/ChainSafe.Gaming/RPC/Providers/Formatter.cs @@ -1,4 +1,4 @@ -namespace Web3Unity.Scripts.Library.Ethers.Providers +namespace ChainSafe.Gaming.Evm.Providers { public class Formatter { diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/RLP/ConvertorForRLPEncodingExtensions.cs b/src/ChainSafe.Gaming/RPC/RLP/ConvertorForRLPEncodingExtensions.cs similarity index 98% rename from src/ChainSafe.GamingSDK.EVM/RPC/RLP/ConvertorForRLPEncodingExtensions.cs rename to src/ChainSafe.Gaming/RPC/RLP/ConvertorForRLPEncodingExtensions.cs index 42c026352..a5eda48cb 100644 --- a/src/ChainSafe.GamingSDK.EVM/RPC/RLP/ConvertorForRLPEncodingExtensions.cs +++ b/src/ChainSafe.Gaming/RPC/RLP/ConvertorForRLPEncodingExtensions.cs @@ -4,7 +4,7 @@ using System.Numerics; using System.Text; -namespace Web3Unity.Scripts.Library.Ethers.RLP +namespace ChainSafe.Gaming.Evm.RLP { public static class ConvertorForRLPEncodingExtensions { diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/RLP/IRLPElement.cs b/src/ChainSafe.Gaming/RPC/RLP/IRLPElement.cs similarity index 80% rename from src/ChainSafe.GamingSDK.EVM/RPC/RLP/IRLPElement.cs rename to src/ChainSafe.Gaming/RPC/RLP/IRLPElement.cs index 199271198..7614f6bc8 100644 --- a/src/ChainSafe.GamingSDK.EVM/RPC/RLP/IRLPElement.cs +++ b/src/ChainSafe.Gaming/RPC/RLP/IRLPElement.cs @@ -1,4 +1,4 @@ -namespace Web3Unity.Scripts.Library.Ethers.RLP +namespace ChainSafe.Gaming.Evm.RLP { /// /// Wrapper class for decoded elements from an RLP encoded byte array. diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/RLP/RLP.cs b/src/ChainSafe.Gaming/RPC/RLP/RLP.cs similarity index 99% rename from src/ChainSafe.GamingSDK.EVM/RPC/RLP/RLP.cs rename to src/ChainSafe.Gaming/RPC/RLP/RLP.cs index 23bc11213..dd3f6ca33 100644 --- a/src/ChainSafe.GamingSDK.EVM/RPC/RLP/RLP.cs +++ b/src/ChainSafe.Gaming/RPC/RLP/RLP.cs @@ -3,7 +3,7 @@ using System.Linq; using Nethereum.Hex.HexConvertors.Extensions; -namespace Web3Unity.Scripts.Library.Ethers.RLP +namespace ChainSafe.Gaming.Evm.RLP { /// /// Recursive Length Prefix (RLP) encoding. diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/RLP/RLPCollection.cs b/src/ChainSafe.Gaming/RPC/RLP/RLPCollection.cs similarity index 77% rename from src/ChainSafe.GamingSDK.EVM/RPC/RLP/RLPCollection.cs rename to src/ChainSafe.Gaming/RPC/RLP/RLPCollection.cs index a2debd671..7f5a00d9b 100644 --- a/src/ChainSafe.GamingSDK.EVM/RPC/RLP/RLPCollection.cs +++ b/src/ChainSafe.Gaming/RPC/RLP/RLPCollection.cs @@ -1,6 +1,6 @@ using System.Collections.Generic; -namespace Web3Unity.Scripts.Library.Ethers.RLP +namespace ChainSafe.Gaming.Evm.RLP { public class RLPCollection : List, IRLPElement { diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/RLP/RLPItem.cs b/src/ChainSafe.Gaming/RPC/RLP/RLPItem.cs similarity index 88% rename from src/ChainSafe.GamingSDK.EVM/RPC/RLP/RLPItem.cs rename to src/ChainSafe.Gaming/RPC/RLP/RLPItem.cs index 0688f3ced..43a0f7572 100644 --- a/src/ChainSafe.GamingSDK.EVM/RPC/RLP/RLPItem.cs +++ b/src/ChainSafe.Gaming/RPC/RLP/RLPItem.cs @@ -1,4 +1,4 @@ -namespace Web3Unity.Scripts.Library.Ethers.RLP +namespace ChainSafe.Gaming.Evm.RLP { public class RLPItem : IRLPElement { diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/RLP/RLPStringFormatter.cs b/src/ChainSafe.Gaming/RPC/RLP/RLPStringFormatter.cs similarity index 94% rename from src/ChainSafe.GamingSDK.EVM/RPC/RLP/RLPStringFormatter.cs rename to src/ChainSafe.Gaming/RPC/RLP/RLPStringFormatter.cs index 80b3e1ad6..f1fd2a680 100644 --- a/src/ChainSafe.GamingSDK.EVM/RPC/RLP/RLPStringFormatter.cs +++ b/src/ChainSafe.Gaming/RPC/RLP/RLPStringFormatter.cs @@ -2,7 +2,7 @@ using System.Text; using Nethereum.Hex.HexConvertors.Extensions; -namespace Web3Unity.Scripts.Library.Ethers.RLP +namespace ChainSafe.Gaming.Evm.RLP { public class RLPStringFormatter { diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/Signers/Wallet.cs b/src/ChainSafe.Gaming/RPC/Signers/Wallet.cs similarity index 100% rename from src/ChainSafe.GamingSDK.EVM/RPC/Signers/Wallet.cs rename to src/ChainSafe.Gaming/RPC/Signers/Wallet.cs diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/SigningKey/SigningKey.cs b/src/ChainSafe.Gaming/RPC/SigningKey/SigningKey.cs similarity index 96% rename from src/ChainSafe.GamingSDK.EVM/RPC/SigningKey/SigningKey.cs rename to src/ChainSafe.Gaming/RPC/SigningKey/SigningKey.cs index 9104dbae1..f4002ecec 100644 --- a/src/ChainSafe.GamingSDK.EVM/RPC/SigningKey/SigningKey.cs +++ b/src/ChainSafe.Gaming/RPC/SigningKey/SigningKey.cs @@ -5,7 +5,7 @@ using Org.BouncyCastle.Crypto.Generators; using Org.BouncyCastle.Crypto.Parameters; -namespace Web3Unity.Scripts.Library.Ethers.SigningKey +namespace ChainSafe.Gaming.Evm.SigningKey { public class SigningKey { diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/Transactions/Formatter.cs b/src/ChainSafe.Gaming/RPC/Transactions/Formatter.cs similarity index 98% rename from src/ChainSafe.GamingSDK.EVM/RPC/Transactions/Formatter.cs rename to src/ChainSafe.Gaming/RPC/Transactions/Formatter.cs index 55b9ef910..90c2e1482 100644 --- a/src/ChainSafe.GamingSDK.EVM/RPC/Transactions/Formatter.cs +++ b/src/ChainSafe.Gaming/RPC/Transactions/Formatter.cs @@ -1,10 +1,10 @@ using System; using System.Linq; +using ChainSafe.Gaming.Evm.RLP; using Nethereum.Hex.HexConvertors.Extensions; using Nethereum.Hex.HexTypes; -using Web3Unity.Scripts.Library.Ethers.RLP; -namespace Web3Unity.Scripts.Library.Ethers.Transactions +namespace ChainSafe.Gaming.Evm.Transactions { public class Formatter { diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/Utils/IsUnityBuild.cs b/src/ChainSafe.Gaming/RPC/Utils/IsUnityBuild.cs similarity index 57% rename from src/ChainSafe.GamingSDK.EVM/RPC/Utils/IsUnityBuild.cs rename to src/ChainSafe.Gaming/RPC/Utils/IsUnityBuild.cs index dc32b7e47..04d4004b6 100644 --- a/src/ChainSafe.GamingSDK.EVM/RPC/Utils/IsUnityBuild.cs +++ b/src/ChainSafe.Gaming/RPC/Utils/IsUnityBuild.cs @@ -1,5 +1,5 @@ #if Unity -namespace Web3Unity.Scripts.Library.Ethers.Utils +namespace ChainSafe.Gaming.Evm.Utils { public class IsUnityBuild { diff --git a/src/ChainSafe.GamingSDK.EVM/RPC/Utils/Units.cs b/src/ChainSafe.Gaming/RPC/Utils/Units.cs similarity index 97% rename from src/ChainSafe.GamingSDK.EVM/RPC/Utils/Units.cs rename to src/ChainSafe.Gaming/RPC/Utils/Units.cs index 1beaa06b0..0bf766b2a 100644 --- a/src/ChainSafe.GamingSDK.EVM/RPC/Utils/Units.cs +++ b/src/ChainSafe.Gaming/RPC/Utils/Units.cs @@ -2,7 +2,7 @@ using System.Numerics; using Nethereum.Util; -namespace Web3Unity.Scripts.Library.Ethers.Utils +namespace ChainSafe.Gaming.Evm.Utils { public class Units { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Analytics/AnalyticsEvent.cs b/src/ChainSafe.Gaming/Web3/Core/Analytics/AnalyticsEvent.cs similarity index 98% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/Analytics/AnalyticsEvent.cs rename to src/ChainSafe.Gaming/Web3/Core/Analytics/AnalyticsEvent.cs index a2e1aceb0..248bb32e1 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Analytics/AnalyticsEvent.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Analytics/AnalyticsEvent.cs @@ -3,7 +3,7 @@ using System.Text; using Nethereum.Model; -namespace ChainSafe.GamingWeb3.Analytics +namespace ChainSafe.Gaming.Web3.Analytics { public class AnalyticsEvent { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Analytics/ApiAnalyticsClient.cs b/src/ChainSafe.Gaming/Web3/Core/Analytics/ApiAnalyticsClient.cs similarity index 92% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/Analytics/ApiAnalyticsClient.cs rename to src/ChainSafe.Gaming/Web3/Core/Analytics/ApiAnalyticsClient.cs index 6f7a9c457..2c40a78cc 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Analytics/ApiAnalyticsClient.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Analytics/ApiAnalyticsClient.cs @@ -1,6 +1,6 @@ -using ChainSafe.GamingWeb3.Environment; +using ChainSafe.Gaming.Web3.Environment; -namespace ChainSafe.GamingWeb3.Analytics +namespace ChainSafe.Gaming.Web3.Analytics { public class ApiAnalyticsClient : IAnalyticsClient { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Analytics/ApiAnalyticsClientExtensions.cs b/src/ChainSafe.Gaming/Web3/Core/Analytics/ApiAnalyticsClientExtensions.cs similarity index 91% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/Analytics/ApiAnalyticsClientExtensions.cs rename to src/ChainSafe.Gaming/Web3/Core/Analytics/ApiAnalyticsClientExtensions.cs index e14f88b2f..0fa8458bb 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Analytics/ApiAnalyticsClientExtensions.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Analytics/ApiAnalyticsClientExtensions.cs @@ -1,9 +1,9 @@ using System.Linq; -using ChainSafe.GamingWeb3.Build; +using ChainSafe.Gaming.Web3.Build; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection.Extensions; -namespace ChainSafe.GamingWeb3.Analytics +namespace ChainSafe.Gaming.Web3.Analytics { public static class ApiAnalyticsClientExtensions { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Analytics/IAnalyticsClient.cs b/src/ChainSafe.Gaming/Web3/Core/Analytics/IAnalyticsClient.cs similarity index 70% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/Analytics/IAnalyticsClient.cs rename to src/ChainSafe.Gaming/Web3/Core/Analytics/IAnalyticsClient.cs index ef7ed70ec..bcf9c64af 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Analytics/IAnalyticsClient.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Analytics/IAnalyticsClient.cs @@ -1,4 +1,4 @@ -namespace ChainSafe.GamingWeb3.Analytics +namespace ChainSafe.Gaming.Web3.Analytics { public interface IAnalyticsClient { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Analytics/NoOpAnalyticsClient.cs b/src/ChainSafe.Gaming/Web3/Core/Analytics/NoOpAnalyticsClient.cs similarity index 80% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/Analytics/NoOpAnalyticsClient.cs rename to src/ChainSafe.Gaming/Web3/Core/Analytics/NoOpAnalyticsClient.cs index 02eca52d1..8be5bc50e 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Analytics/NoOpAnalyticsClient.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Analytics/NoOpAnalyticsClient.cs @@ -1,4 +1,4 @@ -namespace ChainSafe.GamingWeb3.Analytics +namespace ChainSafe.Gaming.Web3.Analytics { public class NoOpAnalyticsClient : IAnalyticsClient { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Analytics/NoOpAnalyticsClientExtensions.cs b/src/ChainSafe.Gaming/Web3/Core/Analytics/NoOpAnalyticsClientExtensions.cs similarity index 85% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/Analytics/NoOpAnalyticsClientExtensions.cs rename to src/ChainSafe.Gaming/Web3/Core/Analytics/NoOpAnalyticsClientExtensions.cs index dd03bb5fd..6dc12fe62 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Analytics/NoOpAnalyticsClientExtensions.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Analytics/NoOpAnalyticsClientExtensions.cs @@ -1,8 +1,8 @@ -using ChainSafe.GamingWeb3.Build; +using ChainSafe.Gaming.Web3.Build; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection.Extensions; -namespace ChainSafe.GamingWeb3.Analytics +namespace ChainSafe.Gaming.Web3.Analytics { public static class NoOpAnalyticsClientExtensions { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Build/IWeb3ServiceCollection.cs b/src/ChainSafe.Gaming/Web3/Core/Build/IWeb3ServiceCollection.cs similarity index 85% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/Build/IWeb3ServiceCollection.cs rename to src/ChainSafe.Gaming/Web3/Core/Build/IWeb3ServiceCollection.cs index b68bcac48..b5197a492 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Build/IWeb3ServiceCollection.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Build/IWeb3ServiceCollection.cs @@ -1,6 +1,6 @@ using Microsoft.Extensions.DependencyInjection; -namespace ChainSafe.GamingWeb3.Build +namespace ChainSafe.Gaming.Web3.Build { public interface IWeb3ServiceCollection : IServiceCollection { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Build/Web3BuildException.cs b/src/ChainSafe.Gaming/Web3/Core/Build/Web3BuildException.cs similarity index 89% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/Build/Web3BuildException.cs rename to src/ChainSafe.Gaming/Web3/Core/Build/Web3BuildException.cs index 16f26607f..e1c8deabe 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Build/Web3BuildException.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Build/Web3BuildException.cs @@ -1,6 +1,6 @@ using System; -namespace ChainSafe.GamingWeb3.Build +namespace ChainSafe.Gaming.Web3.Build { public class Web3BuildException : Web3Exception { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Build/Web3Builder.cs b/src/ChainSafe.Gaming/Web3/Core/Build/Web3Builder.cs similarity index 92% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/Build/Web3Builder.cs rename to src/ChainSafe.Gaming/Web3/Core/Build/Web3Builder.cs index 33753cf2c..783a1e030 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Build/Web3Builder.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Build/Web3Builder.cs @@ -1,12 +1,12 @@ using System; using System.Threading.Tasks; -using ChainSafe.GamingSDK.EVM.Web3.Evm.EventPoller; -using ChainSafe.GamingWeb3.Environment; +using ChainSafe.Gaming.Evm; +using ChainSafe.Gaming.Evm.Contracts; +using ChainSafe.Gaming.Web3.Environment; +using ChainSafe.Gaming.Web3.Evm.EventPoller; using Microsoft.Extensions.DependencyInjection; -using Web3Unity.Scripts.Library.Ethers; -using Web3Unity.Scripts.Library.Ethers.Contracts; -namespace ChainSafe.GamingWeb3.Build +namespace ChainSafe.Gaming.Web3.Build { /// /// Builder object for Web3. Used to configure set of services. diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Build/Web3ServiceCollectionExtensions.cs b/src/ChainSafe.Gaming/Web3/Core/Build/Web3ServiceCollectionExtensions.cs similarity index 99% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/Build/Web3ServiceCollectionExtensions.cs rename to src/ChainSafe.Gaming/Web3/Core/Build/Web3ServiceCollectionExtensions.cs index c9f75f87f..c5ed647bd 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Build/Web3ServiceCollectionExtensions.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Build/Web3ServiceCollectionExtensions.cs @@ -2,7 +2,7 @@ using System.Linq; using Microsoft.Extensions.DependencyInjection; -namespace ChainSafe.GamingWeb3.Build +namespace ChainSafe.Gaming.Web3.Build { public static class Web3ServiceCollectionExtensions { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Debug/AddressExtensions.cs b/src/ChainSafe.Gaming/Web3/Core/Debug/AddressExtensions.cs similarity index 86% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/Debug/AddressExtensions.cs rename to src/ChainSafe.Gaming/Web3/Core/Debug/AddressExtensions.cs index ee527e5f0..fc72050e3 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Debug/AddressExtensions.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Debug/AddressExtensions.cs @@ -1,6 +1,6 @@ -using ChainSafe.GamingWeb3; +using ChainSafe.Gaming.Web3; -namespace ChainSafe.GamingSDK.EVM.Web3.Core.Debug +namespace ChainSafe.Gaming.Web3.Core.Debug { public static class AddressExtensions { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Debug/AssertionException.cs b/src/ChainSafe.Gaming/Web3/Core/Debug/AssertionException.cs similarity index 77% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/Debug/AssertionException.cs rename to src/ChainSafe.Gaming/Web3/Core/Debug/AssertionException.cs index 42055c882..7d08f296e 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Debug/AssertionException.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Debug/AssertionException.cs @@ -1,6 +1,6 @@ using System; -namespace ChainSafe.GamingSDK.EVM.Web3.Core.Debug +namespace ChainSafe.Gaming.Web3.Core.Debug { public class AssertionException : Exception { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Debug/ObjectExtensions.cs b/src/ChainSafe.Gaming/Web3/Core/Debug/ObjectExtensions.cs similarity index 88% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/Debug/ObjectExtensions.cs rename to src/ChainSafe.Gaming/Web3/Core/Debug/ObjectExtensions.cs index 46b1d691c..a5fde8578 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Debug/ObjectExtensions.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Debug/ObjectExtensions.cs @@ -1,4 +1,4 @@ -namespace ChainSafe.GamingSDK.EVM.Web3.Core.Debug +namespace ChainSafe.Gaming.Web3.Core.Debug { public static class ObjectExtensions { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Environment/IHttpClient.cs b/src/ChainSafe.Gaming/Web3/Core/Environment/IHttpClient.cs similarity index 97% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/Environment/IHttpClient.cs rename to src/ChainSafe.Gaming/Web3/Core/Environment/IHttpClient.cs index 9f35ba735..628c9c532 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Environment/IHttpClient.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Environment/IHttpClient.cs @@ -1,7 +1,7 @@ using System; using System.Threading.Tasks; -namespace ChainSafe.GamingWeb3.Environment +namespace ChainSafe.Gaming.Web3.Environment { public interface IHttpClient { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Environment/ILogWriter.cs b/src/ChainSafe.Gaming/Web3/Core/Environment/ILogWriter.cs similarity index 74% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/Environment/ILogWriter.cs rename to src/ChainSafe.Gaming/Web3/Core/Environment/ILogWriter.cs index b035a3278..34114666e 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Environment/ILogWriter.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Environment/ILogWriter.cs @@ -1,4 +1,4 @@ -namespace ChainSafe.GamingWeb3.Environment +namespace ChainSafe.Gaming.Web3.Environment { public interface ILogWriter { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Environment/IOperatingSystemMediator.cs b/src/ChainSafe.Gaming/Web3/Core/Environment/IOperatingSystemMediator.cs similarity index 76% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/Environment/IOperatingSystemMediator.cs rename to src/ChainSafe.Gaming/Web3/Core/Environment/IOperatingSystemMediator.cs index 57a4ca37a..0273a079a 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Environment/IOperatingSystemMediator.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Environment/IOperatingSystemMediator.cs @@ -1,4 +1,4 @@ -namespace ChainSafe.GamingWeb3.Environment +namespace ChainSafe.Gaming.Web3.Environment { public interface IOperatingSystemMediator { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Environment/Web3Environment.cs b/src/ChainSafe.Gaming/Web3/Core/Environment/Web3Environment.cs similarity index 89% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/Environment/Web3Environment.cs rename to src/ChainSafe.Gaming/Web3/Core/Environment/Web3Environment.cs index a55101c0c..d938cd672 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Environment/Web3Environment.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Environment/Web3Environment.cs @@ -1,6 +1,6 @@ -using ChainSafe.GamingWeb3.Analytics; +using ChainSafe.Gaming.Web3.Analytics; -namespace ChainSafe.GamingWeb3.Environment +namespace ChainSafe.Gaming.Web3.Environment { /// /// The environment Web3 is being executed in. diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/ChainRegistryProvider.cs b/src/ChainSafe.Gaming/Web3/Core/Evm/ChainRegistryProvider.cs similarity index 88% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/ChainRegistryProvider.cs rename to src/ChainSafe.Gaming/Web3/Core/Evm/ChainRegistryProvider.cs index 68cd8254a..d91e65c7b 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/ChainRegistryProvider.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Evm/ChainRegistryProvider.cs @@ -2,10 +2,10 @@ using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; -using ChainSafe.GamingWeb3.Environment; -using Web3Unity.Scripts.Library.Ethers.Network; +using ChainSafe.Gaming.Evm.Network; +using ChainSafe.Gaming.Web3.Environment; -namespace Web3Unity.Scripts.Library.Ethers +namespace ChainSafe.Gaming.Evm { public class ChainRegistryProvider { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/Dto/Block.cs b/src/ChainSafe.Gaming/Web3/Core/Evm/Dto/Block.cs similarity index 98% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/Dto/Block.cs rename to src/ChainSafe.Gaming/Web3/Core/Evm/Dto/Block.cs index 219ff1796..fab6cec1d 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/Dto/Block.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Evm/Dto/Block.cs @@ -1,7 +1,7 @@ using Nethereum.Hex.HexTypes; using Newtonsoft.Json; -namespace Web3Unity.Scripts.Library.Ethers.Blocks +namespace ChainSafe.Gaming.Evm.Blocks { public class Block { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/Dto/BlockWithTransactionHashes.cs b/src/ChainSafe.Gaming/Web3/Core/Evm/Dto/BlockWithTransactionHashes.cs similarity index 88% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/Dto/BlockWithTransactionHashes.cs rename to src/ChainSafe.Gaming/Web3/Core/Evm/Dto/BlockWithTransactionHashes.cs index c2a9d603c..8003aac7e 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/Dto/BlockWithTransactionHashes.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Evm/Dto/BlockWithTransactionHashes.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; -namespace Web3Unity.Scripts.Library.Ethers.Blocks +namespace ChainSafe.Gaming.Evm.Blocks { /// /// Block including just the transaction hashes. diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/Dto/BlockWithTransactions.cs b/src/ChainSafe.Gaming/Web3/Core/Evm/Dto/BlockWithTransactions.cs similarity index 73% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/Dto/BlockWithTransactions.cs rename to src/ChainSafe.Gaming/Web3/Core/Evm/Dto/BlockWithTransactions.cs index ad711c05b..7683cb852 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/Dto/BlockWithTransactions.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Evm/Dto/BlockWithTransactions.cs @@ -1,7 +1,7 @@ -using Newtonsoft.Json; -using Web3Unity.Scripts.Library.Ethers.Transactions; +using ChainSafe.Gaming.Evm.Transactions; +using Newtonsoft.Json; -namespace Web3Unity.Scripts.Library.Ethers.Blocks +namespace ChainSafe.Gaming.Evm.Blocks { /// /// Block including transaction objects. diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/Dto/Chains.cs b/src/ChainSafe.Gaming/Web3/Core/Evm/Dto/Chains.cs similarity index 97% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/Dto/Chains.cs rename to src/ChainSafe.Gaming/Web3/Core/Evm/Dto/Chains.cs index 50a0ac1b3..47def408e 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/Dto/Chains.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Evm/Dto/Chains.cs @@ -2,10 +2,10 @@ using System.Collections.Generic; using System.Net.Http; using System.Threading.Tasks; -using ChainSafe.GamingWeb3.Environment; +using ChainSafe.Gaming.Web3.Environment; using Newtonsoft.Json; -namespace Web3Unity.Scripts.Library.Ethers.Network +namespace ChainSafe.Gaming.Evm.Network { public class Chains { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/Dto/DomainSeparator.cs b/src/ChainSafe.Gaming/Web3/Core/Evm/Dto/DomainSeparator.cs similarity index 91% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/Dto/DomainSeparator.cs rename to src/ChainSafe.Gaming/Web3/Core/Evm/Dto/DomainSeparator.cs index c23433979..ee3792e5f 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/Dto/DomainSeparator.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Evm/Dto/DomainSeparator.cs @@ -1,6 +1,6 @@ using Nethereum.ABI.EIP712; -namespace ChainSafe.GamingSDK.EVM.Web3.Core.Evm +namespace ChainSafe.Gaming.Web3.Core.Evm { public static class DomainSeparator { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/Dto/Network.cs b/src/ChainSafe.Gaming/Web3/Core/Evm/Dto/Network.cs similarity index 71% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/Dto/Network.cs rename to src/ChainSafe.Gaming/Web3/Core/Evm/Dto/Network.cs index 01c8e7bc2..0e0624d64 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/Dto/Network.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Evm/Dto/Network.cs @@ -1,4 +1,4 @@ -namespace Web3Unity.Scripts.Library.Ethers.Network +namespace ChainSafe.Gaming.Evm.Network { public class Network { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/Dto/SerializableDomain.cs b/src/ChainSafe.Gaming/Web3/Core/Evm/Dto/SerializableDomain.cs similarity index 95% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/Dto/SerializableDomain.cs rename to src/ChainSafe.Gaming/Web3/Core/Evm/Dto/SerializableDomain.cs index 2b707d33c..3bcf63ca1 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/Dto/SerializableDomain.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Evm/Dto/SerializableDomain.cs @@ -3,7 +3,7 @@ using Nethereum.ABI.FunctionEncoding.Attributes; using Newtonsoft.Json; -namespace ChainSafe.GamingSDK.EVM.Web3.Core.Evm +namespace ChainSafe.Gaming.Web3.Core.Evm { /// /// A variant of Nethereum's domain which has set JSON deserialization parameters. diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/Dto/Transaction.cs b/src/ChainSafe.Gaming/Web3/Core/Evm/Dto/Transaction.cs similarity index 98% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/Dto/Transaction.cs rename to src/ChainSafe.Gaming/Web3/Core/Evm/Dto/Transaction.cs index df6e88b00..784100fa0 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/Dto/Transaction.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Evm/Dto/Transaction.cs @@ -3,7 +3,7 @@ using Nethereum.RPC.Eth.DTOs; using Newtonsoft.Json; -namespace Web3Unity.Scripts.Library.Ethers.Transactions +namespace ChainSafe.Gaming.Evm.Transactions { public class Transaction { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/Dto/TransactionReceipt.cs b/src/ChainSafe.Gaming/Web3/Core/Evm/Dto/TransactionReceipt.cs similarity index 98% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/Dto/TransactionReceipt.cs rename to src/ChainSafe.Gaming/Web3/Core/Evm/Dto/TransactionReceipt.cs index 4a28a9361..ed4eb4ec8 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/Dto/TransactionReceipt.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Evm/Dto/TransactionReceipt.cs @@ -2,7 +2,7 @@ using Newtonsoft.Json; using Newtonsoft.Json.Linq; -namespace Web3Unity.Scripts.Library.Ethers.Transactions +namespace ChainSafe.Gaming.Evm.Transactions { public class TransactionReceipt { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/Dto/TransactionRequest.cs b/src/ChainSafe.Gaming/Web3/Core/Evm/Dto/TransactionRequest.cs similarity index 98% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/Dto/TransactionRequest.cs rename to src/ChainSafe.Gaming/Web3/Core/Evm/Dto/TransactionRequest.cs index c86f69f99..33f917819 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/Dto/TransactionRequest.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Evm/Dto/TransactionRequest.cs @@ -4,7 +4,7 @@ using Nethereum.RPC.Eth.DTOs; using Newtonsoft.Json; -namespace Web3Unity.Scripts.Library.Ethers.Transactions +namespace ChainSafe.Gaming.Evm.Transactions { public class TransactionRequest : ICloneable { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/Dto/TransactionResponse.cs b/src/ChainSafe.Gaming/Web3/Core/Evm/Dto/TransactionResponse.cs similarity index 96% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/Dto/TransactionResponse.cs rename to src/ChainSafe.Gaming/Web3/Core/Evm/Dto/TransactionResponse.cs index 3e85b11bd..77aa4f82f 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/Dto/TransactionResponse.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Evm/Dto/TransactionResponse.cs @@ -3,7 +3,7 @@ using Nethereum.Hex.HexTypes; using Newtonsoft.Json; -namespace Web3Unity.Scripts.Library.Ethers.Transactions +namespace ChainSafe.Gaming.Evm.Transactions { public class TransactionResponse : Transaction { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/IEvmEvents.cs b/src/ChainSafe.Gaming/Web3/Core/Evm/IEvmEvents.cs similarity index 92% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/IEvmEvents.cs rename to src/ChainSafe.Gaming/Web3/Core/Evm/IEvmEvents.cs index bbe344889..686dc0632 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/IEvmEvents.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Evm/IEvmEvents.cs @@ -2,7 +2,7 @@ using System.Collections.Generic; using System.Text; -namespace ChainSafe.GamingSDK.EVM.Web3.Core.Evm +namespace ChainSafe.Gaming.Web3.Core.Evm { public interface IEvmEvents { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/IRpcProvider.cs b/src/ChainSafe.Gaming/Web3/Core/Evm/IRpcProvider.cs similarity index 84% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/IRpcProvider.cs rename to src/ChainSafe.Gaming/Web3/Core/Evm/IRpcProvider.cs index 0272c2e0d..f530d3d8b 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/IRpcProvider.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Evm/IRpcProvider.cs @@ -1,6 +1,6 @@ using System.Threading.Tasks; -namespace Web3Unity.Scripts.Library.Ethers.Providers +namespace ChainSafe.Gaming.Evm.Providers { public interface IRpcProvider { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/ISigner.cs b/src/ChainSafe.Gaming/Web3/Core/Evm/ISigner.cs similarity index 84% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/ISigner.cs rename to src/ChainSafe.Gaming/Web3/Core/Evm/ISigner.cs index 814477619..5dfd59bd9 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/ISigner.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Evm/ISigner.cs @@ -1,7 +1,7 @@ using System.Threading.Tasks; -using ChainSafe.GamingSDK.EVM.Web3.Core.Evm; +using ChainSafe.Gaming.Web3.Core.Evm; -namespace Web3Unity.Scripts.Library.Ethers.Signers +namespace ChainSafe.Gaming.Evm.Signers { public interface ISigner { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/ITransactionExecutor.cs b/src/ChainSafe.Gaming/Web3/Core/Evm/ITransactionExecutor.cs similarity index 63% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/ITransactionExecutor.cs rename to src/ChainSafe.Gaming/Web3/Core/Evm/ITransactionExecutor.cs index 0b592382d..7903ebbc9 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/ITransactionExecutor.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Evm/ITransactionExecutor.cs @@ -1,7 +1,7 @@ using System.Threading.Tasks; -using Web3Unity.Scripts.Library.Ethers.Transactions; +using ChainSafe.Gaming.Evm.Transactions; -namespace ChainSafe.GamingSDK.EVM.Web3.Core.Evm +namespace ChainSafe.Gaming.Web3.Core.Evm { public interface ITransactionExecutor { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/RpcProviderExtensions.cs b/src/ChainSafe.Gaming/Web3/Core/Evm/RpcProviderExtensions.cs similarity index 83% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/RpcProviderExtensions.cs rename to src/ChainSafe.Gaming/Web3/Core/Evm/RpcProviderExtensions.cs index 94794a9b1..244e53c48 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Evm/RpcProviderExtensions.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Evm/RpcProviderExtensions.cs @@ -3,19 +3,18 @@ using System.Numerics; using System.Runtime.CompilerServices; using System.Threading.Tasks; -using ChainSafe.GamingWeb3; +using ChainSafe.Gaming.Evm.Transactions; +using ChainSafe.Gaming.Web3; using Nethereum.Hex.HexConvertors.Extensions; using Nethereum.Hex.HexTypes; using Nethereum.RPC.Eth.DTOs; using Org.BouncyCastle.Utilities.Encoders; -using Web3Unity.Scripts.Library.Ethers.Transactions; +using Block = ChainSafe.Gaming.Evm.Blocks.Block; +using BlockWithTransactions = ChainSafe.Gaming.Evm.Blocks.BlockWithTransactions; +using Transaction = ChainSafe.Gaming.Evm.Transactions.Transaction; +using TransactionReceipt = ChainSafe.Gaming.Evm.Transactions.TransactionReceipt; -using Block = Web3Unity.Scripts.Library.Ethers.Blocks.Block; -using BlockWithTransactions = Web3Unity.Scripts.Library.Ethers.Blocks.BlockWithTransactions; -using Transaction = Web3Unity.Scripts.Library.Ethers.Transactions.Transaction; -using TransactionReceipt = Web3Unity.Scripts.Library.Ethers.Transactions.TransactionReceipt; - -namespace Web3Unity.Scripts.Library.Ethers.Providers +namespace ChainSafe.Gaming.Evm.Providers { public static class RpcProviderExtensions { @@ -55,16 +54,16 @@ public static async Task GetTransactionCount(this IRpcProvider pr return new HexBigInteger(await provider.Perform("eth_getTransactionCount", parameters)); } - public static async Task GetBlock(this IRpcProvider provider, BlockParameter blockTag = null) + public static async Task GetBlock(this IRpcProvider provider, BlockParameter blockTag = null) { blockTag ??= new BlockParameter(); var parameters = new object[] { blockTag.GetRPCParam(), false }; - return await provider.Perform("eth_getBlockByNumber", parameters); + return await provider.Perform("eth_getBlockByNumber", parameters); } - public static async Task GetBlock(this IRpcProvider provider, string blockHash) + public static async Task GetBlock(this IRpcProvider provider, string blockHash) { if (!blockHash.HasHexPrefix() || blockHash.Length != 66) { @@ -73,19 +72,19 @@ public static async Task GetBlock(this IRpcProvider provider, string bloc var parameters = new object[] { blockHash, false }; - return await provider.Perform("eth_getBlockByHash", parameters); + return await provider.Perform("eth_getBlockByHash", parameters); } - public static async Task GetBlockWithTransactions(this IRpcProvider provider, BlockParameter blockTag = null) + public static async Task GetBlockWithTransactions(this IRpcProvider provider, BlockParameter blockTag = null) { blockTag ??= new BlockParameter(); var parameters = new object[] { blockTag.GetRPCParam(), true }; - return await provider.Perform("eth_getBlockByNumber", parameters); + return await provider.Perform("eth_getBlockByNumber", parameters); } - public static async Task GetBlockWithTransactions(this IRpcProvider provider, string blockHash) + public static async Task GetBlockWithTransactions(this IRpcProvider provider, string blockHash) { if (!blockHash.HasHexPrefix() || blockHash.Length != 66) { @@ -94,7 +93,7 @@ public static async Task GetBlockWithTransactions(this IR var parameters = new object[] { blockHash, true }; - return await provider.Perform("eth_getBlockByHash", parameters); + return await provider.Perform("eth_getBlockByHash", parameters); } public static async Task GetBlockNumber(this IRpcProvider provider) @@ -198,11 +197,11 @@ public static async Task GetTransaction(this IRpcProvider p return result; } - public static async Task GetTransactionReceipt(this IRpcProvider provider, string transactionHash) + public static async Task GetTransactionReceipt(this IRpcProvider provider, string transactionHash) { var parameters = new object[] { transactionHash }; - var result = await provider.Perform("eth_getTransactionReceipt", parameters); + var result = await provider.Perform("eth_getTransactionReceipt", parameters); if (result == null) { @@ -229,7 +228,7 @@ public static async Task GetTransactionReceipt(this IRpcProv return result; } - public static TransactionResponse WrapTransaction(this IRpcProvider provider, Transaction tx, string hash) + public static TransactionResponse WrapTransaction(this IRpcProvider provider, Transactions.Transaction tx, string hash) { if (hash != null && hash.Length != 66) { @@ -242,7 +241,7 @@ public static TransactionResponse WrapTransaction(this IRpcProvider provider, Tr return result; } - public static async Task WaitForTransactionReceipt( + public static async Task WaitForTransactionReceipt( this IRpcProvider provider, string transactionHash, uint confirmations = 1, @@ -251,7 +250,7 @@ public static async Task WaitForTransactionReceipt( return await provider.WaitForTransactionInternal(transactionHash, confirmations, timeout); } - private static async Task WaitForTransactionInternal( + private static async Task WaitForTransactionInternal( this IRpcProvider provider, string transactionHash, uint confirmations = 1, diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/IChainConfig.cs b/src/ChainSafe.Gaming/Web3/Core/IChainConfig.cs similarity index 89% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/IChainConfig.cs rename to src/ChainSafe.Gaming/Web3/Core/IChainConfig.cs index 9790877d7..7d08b4e73 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/IChainConfig.cs +++ b/src/ChainSafe.Gaming/Web3/Core/IChainConfig.cs @@ -1,4 +1,4 @@ -namespace ChainSafe.GamingWeb3 +namespace ChainSafe.Gaming.Web3 { public interface IChainConfig { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/ICompleteProjectConfig.cs b/src/ChainSafe.Gaming/Web3/Core/ICompleteProjectConfig.cs similarity index 73% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/ICompleteProjectConfig.cs rename to src/ChainSafe.Gaming/Web3/Core/ICompleteProjectConfig.cs index f54350c20..1302dd001 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/ICompleteProjectConfig.cs +++ b/src/ChainSafe.Gaming/Web3/Core/ICompleteProjectConfig.cs @@ -1,4 +1,4 @@ -namespace ChainSafe.GamingWeb3 +namespace ChainSafe.Gaming.Web3 { public interface ICompleteProjectConfig : IProjectConfig, IChainConfig { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/ILifecycleParticipant.cs b/src/ChainSafe.Gaming/Web3/Core/ILifecycleParticipant.cs similarity index 84% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/ILifecycleParticipant.cs rename to src/ChainSafe.Gaming/Web3/Core/ILifecycleParticipant.cs index 5f402f9c8..65d0e1f80 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/ILifecycleParticipant.cs +++ b/src/ChainSafe.Gaming/Web3/Core/ILifecycleParticipant.cs @@ -3,7 +3,7 @@ using System.Text; using System.Threading.Tasks; -namespace ChainSafe.GamingSDK.EVM.Web3.Core +namespace ChainSafe.Gaming.Web3.Core { public interface ILifecycleParticipant { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/IProjectConfig.cs b/src/ChainSafe.Gaming/Web3/Core/IProjectConfig.cs similarity index 74% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/IProjectConfig.cs rename to src/ChainSafe.Gaming/Web3/Core/IProjectConfig.cs index 372f65fd6..a79d0878f 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/IProjectConfig.cs +++ b/src/ChainSafe.Gaming/Web3/Core/IProjectConfig.cs @@ -1,4 +1,4 @@ -namespace ChainSafe.GamingWeb3 +namespace ChainSafe.Gaming.Web3 { public interface IProjectConfig { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Web3.cs b/src/ChainSafe.Gaming/Web3/Core/Web3.cs similarity index 93% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/Web3.cs rename to src/ChainSafe.Gaming/Web3/Core/Web3.cs index f099e7b8f..c30104991 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Web3.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Web3.cs @@ -1,14 +1,14 @@ #nullable enable using System; using System.Threading.Tasks; -using ChainSafe.GamingSDK.EVM.Web3.Core; -using ChainSafe.GamingSDK.EVM.Web3.Core.Evm; +using ChainSafe.Gaming.Evm.Contracts; +using ChainSafe.Gaming.Evm.Providers; +using ChainSafe.Gaming.Evm.Signers; +using ChainSafe.Gaming.Web3.Core; +using ChainSafe.Gaming.Web3.Core.Evm; using Microsoft.Extensions.DependencyInjection; -using Web3Unity.Scripts.Library.Ethers.Contracts; -using Web3Unity.Scripts.Library.Ethers.Providers; -using Web3Unity.Scripts.Library.Ethers.Signers; -namespace ChainSafe.GamingWeb3 +namespace ChainSafe.Gaming.Web3 { /// /// Facade for all Web3-related services. diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Web3Exception.cs b/src/ChainSafe.Gaming/Web3/Core/Web3Exception.cs similarity index 90% rename from src/ChainSafe.GamingSDK.EVM/Web3/Core/Web3Exception.cs rename to src/ChainSafe.Gaming/Web3/Core/Web3Exception.cs index 683802960..68ef3f953 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Core/Web3Exception.cs +++ b/src/ChainSafe.Gaming/Web3/Core/Web3Exception.cs @@ -1,6 +1,6 @@ using System; -namespace ChainSafe.GamingWeb3 +namespace ChainSafe.Gaming.Web3 { public class Web3Exception : Exception { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Evm/EventPoller/EventPoller.cs b/src/ChainSafe.Gaming/Web3/Evm/EventPoller/EventPoller.cs similarity index 96% rename from src/ChainSafe.GamingSDK.EVM/Web3/Evm/EventPoller/EventPoller.cs rename to src/ChainSafe.Gaming/Web3/Evm/EventPoller/EventPoller.cs index 21a94a1d9..c19b52c4f 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Evm/EventPoller/EventPoller.cs +++ b/src/ChainSafe.Gaming/Web3/Evm/EventPoller/EventPoller.cs @@ -2,13 +2,13 @@ using System.Linq; using System.Threading; using System.Threading.Tasks; -using ChainSafe.GamingSDK.EVM.Web3.Core.Evm; -using ChainSafe.GamingWeb3.Environment; +using ChainSafe.Gaming.Evm.Network; +using ChainSafe.Gaming.Evm.Providers; +using ChainSafe.Gaming.Web3.Core.Evm; +using ChainSafe.Gaming.Web3.Environment; using Nethereum.Hex.HexTypes; -using Web3Unity.Scripts.Library.Ethers.Network; -using Web3Unity.Scripts.Library.Ethers.Providers; -namespace ChainSafe.GamingSDK.EVM.Web3.Evm.EventPoller +namespace ChainSafe.Gaming.Web3.Evm.EventPoller { internal class EventPoller : IEvmEvents { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Evm/EventPoller/EventPollerConfiguration.cs b/src/ChainSafe.Gaming/Web3/Evm/EventPoller/EventPollerConfiguration.cs similarity index 79% rename from src/ChainSafe.GamingSDK.EVM/Web3/Evm/EventPoller/EventPollerConfiguration.cs rename to src/ChainSafe.Gaming/Web3/Evm/EventPoller/EventPollerConfiguration.cs index 1ac1df9a7..f46c9d030 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Evm/EventPoller/EventPollerConfiguration.cs +++ b/src/ChainSafe.Gaming/Web3/Evm/EventPoller/EventPollerConfiguration.cs @@ -2,7 +2,7 @@ using System.Collections.Generic; using System.Text; -namespace ChainSafe.GamingSDK.EVM.Web3.Evm.EventPoller +namespace ChainSafe.Gaming.Web3.Evm.EventPoller { public class EventPollerConfiguration { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Evm/EventPoller/EventPollerExtensions.cs b/src/ChainSafe.Gaming/Web3/Evm/EventPoller/EventPollerExtensions.cs similarity index 84% rename from src/ChainSafe.GamingSDK.EVM/Web3/Evm/EventPoller/EventPollerExtensions.cs rename to src/ChainSafe.Gaming/Web3/Evm/EventPoller/EventPollerExtensions.cs index e65f6aa3d..90fa8c8e5 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Evm/EventPoller/EventPollerExtensions.cs +++ b/src/ChainSafe.Gaming/Web3/Evm/EventPoller/EventPollerExtensions.cs @@ -1,9 +1,9 @@ -using ChainSafe.GamingSDK.EVM.Web3.Core.Evm; -using ChainSafe.GamingWeb3.Build; +using ChainSafe.Gaming.Web3.Build; +using ChainSafe.Gaming.Web3.Core.Evm; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection.Extensions; -namespace ChainSafe.GamingSDK.EVM.Web3.Evm.EventPoller +namespace ChainSafe.Gaming.Web3.Evm.EventPoller { public static class EventPollerExtensions { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Evm/JsonRpc/IpcClientConfig.cs b/src/ChainSafe.Gaming/Web3/Evm/JsonRpc/IpcClientConfig.cs similarity index 80% rename from src/ChainSafe.GamingSDK.EVM/Web3/Evm/JsonRpc/IpcClientConfig.cs rename to src/ChainSafe.Gaming/Web3/Evm/JsonRpc/IpcClientConfig.cs index af70e0b8f..838072f18 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Evm/JsonRpc/IpcClientConfig.cs +++ b/src/ChainSafe.Gaming/Web3/Evm/JsonRpc/IpcClientConfig.cs @@ -1,6 +1,6 @@ using System; -namespace Web3Unity.Scripts.Library.Ethers.Providers +namespace ChainSafe.Gaming.Evm.Providers { [Serializable] public class IpcClientConfig diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Evm/JsonRpc/IpcClientExtensions.cs b/src/ChainSafe.Gaming/Web3/Evm/JsonRpc/IpcClientExtensions.cs similarity index 91% rename from src/ChainSafe.GamingSDK.EVM/Web3/Evm/JsonRpc/IpcClientExtensions.cs rename to src/ChainSafe.Gaming/Web3/Evm/JsonRpc/IpcClientExtensions.cs index acab07d87..08c952e7d 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Evm/JsonRpc/IpcClientExtensions.cs +++ b/src/ChainSafe.Gaming/Web3/Evm/JsonRpc/IpcClientExtensions.cs @@ -1,10 +1,10 @@ -using ChainSafe.GamingSDK.EVM.Web3.Core; -using ChainSafe.GamingWeb3.Build; +using ChainSafe.Gaming.Evm.Providers; +using ChainSafe.Gaming.Web3.Build; +using ChainSafe.Gaming.Web3.Core; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection.Extensions; -using Web3Unity.Scripts.Library.Ethers.Providers; -namespace Web3Unity.Scripts.Library.Ethers.JsonRpc +namespace ChainSafe.Gaming.Evm.JsonRpc { public static class IpcClientExtensions { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Evm/JsonRpc/IpcClientProvider.cs b/src/ChainSafe.Gaming/Web3/Evm/JsonRpc/IpcClientProvider.cs similarity index 94% rename from src/ChainSafe.GamingSDK.EVM/Web3/Evm/JsonRpc/IpcClientProvider.cs rename to src/ChainSafe.Gaming/Web3/Evm/JsonRpc/IpcClientProvider.cs index a3f1f63c1..c57c7a5e4 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Evm/JsonRpc/IpcClientProvider.cs +++ b/src/ChainSafe.Gaming/Web3/Evm/JsonRpc/IpcClientProvider.cs @@ -1,14 +1,13 @@ using System; using System.Threading.Tasks; -using ChainSafe.GamingSDK.EVM.Web3.Core; -using ChainSafe.GamingWeb3; -using ChainSafe.GamingWeb3.Environment; +using ChainSafe.Gaming.Web3; +using ChainSafe.Gaming.Web3.Core; +using ChainSafe.Gaming.Web3.Environment; using Nethereum.Hex.HexTypes; using Nethereum.JsonRpc.Client; - using NJsonRpc = Nethereum.JsonRpc; -namespace Web3Unity.Scripts.Library.Ethers.Providers +namespace ChainSafe.Gaming.Evm.Providers { public class IpcClientProvider : IRpcProvider, ILifecycleParticipant { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Evm/JsonRpc/RpcClientConfig.cs b/src/ChainSafe.Gaming/Web3/Evm/JsonRpc/RpcClientConfig.cs similarity index 80% rename from src/ChainSafe.GamingSDK.EVM/Web3/Evm/JsonRpc/RpcClientConfig.cs rename to src/ChainSafe.Gaming/Web3/Evm/JsonRpc/RpcClientConfig.cs index e1ec62599..ec6d7da60 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Evm/JsonRpc/RpcClientConfig.cs +++ b/src/ChainSafe.Gaming/Web3/Evm/JsonRpc/RpcClientConfig.cs @@ -1,6 +1,6 @@ using System; -namespace Web3Unity.Scripts.Library.Ethers.Providers +namespace ChainSafe.Gaming.Evm.Providers { [Serializable] public class RpcClientConfig diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Evm/JsonRpc/RpcClientExtensions.cs b/src/ChainSafe.Gaming/Web3/Evm/JsonRpc/RpcClientExtensions.cs similarity index 90% rename from src/ChainSafe.GamingSDK.EVM/Web3/Evm/JsonRpc/RpcClientExtensions.cs rename to src/ChainSafe.Gaming/Web3/Evm/JsonRpc/RpcClientExtensions.cs index eec7e3053..6374350eb 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Evm/JsonRpc/RpcClientExtensions.cs +++ b/src/ChainSafe.Gaming/Web3/Evm/JsonRpc/RpcClientExtensions.cs @@ -1,10 +1,10 @@ -using ChainSafe.GamingSDK.EVM.Web3.Core; -using ChainSafe.GamingWeb3.Build; +using ChainSafe.Gaming.Evm.Providers; +using ChainSafe.Gaming.Web3.Build; +using ChainSafe.Gaming.Web3.Core; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection.Extensions; -using Web3Unity.Scripts.Library.Ethers.Providers; -namespace Web3Unity.Scripts.Library.Ethers.JsonRpc +namespace ChainSafe.Gaming.Evm.JsonRpc { public static class RpcClientExtensions { diff --git a/src/ChainSafe.GamingSDK.EVM/Web3/Evm/JsonRpc/RpcClientProvider.cs b/src/ChainSafe.Gaming/Web3/Evm/JsonRpc/RpcClientProvider.cs similarity index 95% rename from src/ChainSafe.GamingSDK.EVM/Web3/Evm/JsonRpc/RpcClientProvider.cs rename to src/ChainSafe.Gaming/Web3/Evm/JsonRpc/RpcClientProvider.cs index 089ded5c8..d7df02a25 100644 --- a/src/ChainSafe.GamingSDK.EVM/Web3/Evm/JsonRpc/RpcClientProvider.cs +++ b/src/ChainSafe.Gaming/Web3/Evm/JsonRpc/RpcClientProvider.cs @@ -1,14 +1,14 @@ using System; using System.Threading.Tasks; -using ChainSafe.GamingSDK.EVM.Web3.Core; -using ChainSafe.GamingWeb3; -using ChainSafe.GamingWeb3.Environment; +using ChainSafe.Gaming.Web3; +using ChainSafe.Gaming.Web3.Core; +using ChainSafe.Gaming.Web3.Environment; using Nethereum.Hex.HexTypes; using Nethereum.JsonRpc.Client.RpcMessages; using Newtonsoft.Json; using Newtonsoft.Json.Linq; -namespace Web3Unity.Scripts.Library.Ethers.Providers +namespace ChainSafe.Gaming.Evm.Providers { public class RpcClientProvider : IRpcProvider, ILifecycleParticipant { diff --git a/src/ChainSafe.GamingSDK.EVM.Tests/ChainsafeRPCTests.cs b/src/ChainSafe.GamingSDK.EVM.Tests/ChainsafeRPCTests.cs deleted file mode 100644 index 6377a57fe..000000000 --- a/src/ChainSafe.GamingSDK.EVM.Tests/ChainsafeRPCTests.cs +++ /dev/null @@ -1,246 +0,0 @@ -using System; -using System.Diagnostics; -using ChainSafe.GamingSDK.EVM.Tests.Node; -using Nethereum.Hex.HexTypes; -using Nethereum.RPC.Eth.DTOs; -using NUnit.Framework; -using Web3Unity.Scripts.Library.Ethers.Providers; -using Web3Unity.Scripts.Library.Ethers.Transactions; -using Web3Unity.Scripts.Library.Ethers.Utils; - -namespace ChainSafe.GamingSDK.EVM.Tests -{ - using Web3 = ChainSafe.GamingWeb3.Web3; - - [TestFixture] - public class ChainSafeRpcTests - { - private const string Nft721ByteCode = "60806040523480156200001157600080fd5b506040518060400160405280600881526020017f436f6e74726163740000000000000000000000000000000000000000000000008152506040518060400160405280600481526020017f4d4e46540000000000000000000000000000000000000000000000000000000081525081600090816200008f919062000412565b508060019081620000a1919062000412565b505050620000c4620000b8620000ca60201b60201c565b620000d260201b60201c565b620004f9565b600033905090565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200021a57607f821691505b60208210810362000230576200022f620001d2565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026200029a7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826200025b565b620002a686836200025b565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b6000620002f3620002ed620002e784620002be565b620002c8565b620002be565b9050919050565b6000819050919050565b6200030f83620002d2565b620003276200031e82620002fa565b84845462000268565b825550505050565b600090565b6200033e6200032f565b6200034b81848462000304565b505050565b5b8181101562000373576200036760008262000334565b60018101905062000351565b5050565b601f821115620003c2576200038c8162000236565b62000397846200024b565b81016020851015620003a7578190505b620003bf620003b6856200024b565b83018262000350565b50505b505050565b600082821c905092915050565b6000620003e760001984600802620003c7565b1980831691505092915050565b6000620004028383620003d4565b9150826002028217905092915050565b6200041d8262000198565b67ffffffffffffffff811115620004395762000438620001a3565b5b62000445825462000201565b6200045282828562000377565b600060209050601f8311600181146200048a576000841562000475578287015190505b620004818582620003f4565b865550620004f1565b601f1984166200049a8662000236565b60005b82811015620004c4578489015182556001820191506020850194506020810190506200049d565b86831015620004e45784890151620004e0601f891682620003d4565b8355505b6001600288020188555050505b505050505050565b61287f80620005096000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806370a08231116100a2578063a22cb46511610071578063a22cb465146102a4578063b88d4fde146102c0578063c87b56dd146102dc578063e985e9c51461030c578063f2fde38b1461033c5761010b565b806370a082311461022e578063715018a61461025e5780638da5cb5b1461026857806395d89b41146102865761010b565b806323b872dd116100de57806323b872dd146101aa57806340d097c3146101c657806342842e0e146101e25780636352211e146101fe5761010b565b806301ffc9a71461011057806306fdde0314610140578063081812fc1461015e578063095ea7b31461018e575b600080fd5b61012a60048036038101906101259190611a7d565b610358565b6040516101379190611ac5565b60405180910390f35b61014861043a565b6040516101559190611b70565b60405180910390f35b61017860048036038101906101739190611bc8565b6104cc565b6040516101859190611c36565b60405180910390f35b6101a860048036038101906101a39190611c7d565b610512565b005b6101c460048036038101906101bf9190611cbd565b610629565b005b6101e060048036038101906101db9190611d10565b610689565b005b6101fc60048036038101906101f79190611cbd565b6106b7565b005b61021860048036038101906102139190611bc8565b6106d7565b6040516102259190611c36565b60405180910390f35b61024860048036038101906102439190611d10565b61075d565b6040516102559190611d4c565b60405180910390f35b610266610814565b005b610270610828565b60405161027d9190611c36565b60405180910390f35b61028e610852565b60405161029b9190611b70565b60405180910390f35b6102be60048036038101906102b99190611d93565b6108e4565b005b6102da60048036038101906102d59190611f08565b6108fa565b005b6102f660048036038101906102f19190611bc8565b61095c565b6040516103039190611b70565b60405180910390f35b61032660048036038101906103219190611f8b565b6109c4565b6040516103339190611ac5565b60405180910390f35b61035660048036038101906103519190611d10565b610a58565b005b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061042357507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80610433575061043282610adb565b5b9050919050565b60606000805461044990611ffa565b80601f016020809104026020016040519081016040528092919081815260200182805461047590611ffa565b80156104c25780601f10610497576101008083540402835291602001916104c2565b820191906000526020600020905b8154815290600101906020018083116104a557829003601f168201915b5050505050905090565b60006104d782610b45565b6004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600061051d826106d7565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361058d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105849061209d565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166105ac610b90565b73ffffffffffffffffffffffffffffffffffffffff1614806105db57506105da816105d5610b90565b6109c4565b5b61061a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106119061212f565b60405180910390fd5b6106248383610b98565b505050565b61063a610634610b90565b82610c51565b610679576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610670906121c1565b60405180910390fd5b610684838383610ce6565b505050565b610691610fdf565b600061069d600761105d565b90506106a9600761106b565b6106b38282611081565b5050565b6106d2838383604051806020016040528060008152506108fa565b505050565b6000806106e38361109f565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610754576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161074b9061222d565b60405180910390fd5b80915050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036107cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107c4906122bf565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61081c610fdf565b61082660006110dc565b565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606001805461086190611ffa565b80601f016020809104026020016040519081016040528092919081815260200182805461088d90611ffa565b80156108da5780601f106108af576101008083540402835291602001916108da565b820191906000526020600020905b8154815290600101906020018083116108bd57829003601f168201915b5050505050905090565b6108f66108ef610b90565b83836111a2565b5050565b61090b610905610b90565b83610c51565b61094a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610941906121c1565b60405180910390fd5b6109568484848461130e565b50505050565b606061096782610b45565b600061097161136a565b9050600081511161099157604051806020016040528060008152506109bc565b8061099b84611381565b6040516020016109ac92919061231b565b6040516020818303038152906040525b915050919050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b610a60610fdf565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610acf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ac6906123b1565b60405180910390fd5b610ad8816110dc565b50565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b610b4e8161144f565b610b8d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b849061222d565b60405180910390fd5b50565b600033905090565b816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16610c0b836106d7565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b600080610c5d836106d7565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480610c9f5750610c9e81856109c4565b5b80610cdd57508373ffffffffffffffffffffffffffffffffffffffff16610cc5846104cc565b73ffffffffffffffffffffffffffffffffffffffff16145b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff16610d06826106d7565b73ffffffffffffffffffffffffffffffffffffffff1614610d5c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d5390612443565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610dcb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dc2906124d5565b60405180910390fd5b610dd88383836001611490565b8273ffffffffffffffffffffffffffffffffffffffff16610df8826106d7565b73ffffffffffffffffffffffffffffffffffffffff1614610e4e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e4590612443565b60405180910390fd5b6004600082815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4610fda8383836001611496565b505050565b610fe7610b90565b73ffffffffffffffffffffffffffffffffffffffff16611005610828565b73ffffffffffffffffffffffffffffffffffffffff161461105b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161105290612541565b60405180910390fd5b565b600081600001549050919050565b6001816000016000828254019250508190555050565b61109b82826040518060200160405280600081525061149c565b5050565b60006002600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611210576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611207906125ad565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31836040516113019190611ac5565b60405180910390a3505050565b611319848484610ce6565b611325848484846114f7565b611364576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161135b9061263f565b60405180910390fd5b50505050565b606060405180602001604052806000815250905090565b6060600060016113908461167e565b01905060008167ffffffffffffffff8111156113af576113ae611ddd565b5b6040519080825280601f01601f1916602001820160405280156113e15781602001600182028036833780820191505090505b509050600082602001820190505b600115611444578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a85816114385761143761265f565b5b049450600085036113ef575b819350505050919050565b60008073ffffffffffffffffffffffffffffffffffffffff166114718361109f565b73ffffffffffffffffffffffffffffffffffffffff1614159050919050565b50505050565b50505050565b6114a683836117d1565b6114b360008484846114f7565b6114f2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114e99061263f565b60405180910390fd5b505050565b60006115188473ffffffffffffffffffffffffffffffffffffffff166119ee565b15611671578373ffffffffffffffffffffffffffffffffffffffff1663150b7a02611541610b90565b8786866040518563ffffffff1660e01b815260040161156394939291906126e3565b6020604051808303816000875af192505050801561159f57506040513d601f19601f8201168201806040525081019061159c9190612744565b60015b611621573d80600081146115cf576040519150601f19603f3d011682016040523d82523d6000602084013e6115d4565b606091505b506000815103611619576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116109061263f565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050611676565b600190505b949350505050565b600080600090507a184f03e93ff9f4daa797ed6e38ed64bf6a1f01000000000000000083106116dc577a184f03e93ff9f4daa797ed6e38ed64bf6a1f01000000000000000083816116d2576116d161265f565b5b0492506040810190505b6d04ee2d6d415b85acef81000000008310611719576d04ee2d6d415b85acef8100000000838161170f5761170e61265f565b5b0492506020810190505b662386f26fc10000831061174857662386f26fc10000838161173e5761173d61265f565b5b0492506010810190505b6305f5e1008310611771576305f5e10083816117675761176661265f565b5b0492506008810190505b612710831061179657612710838161178c5761178b61265f565b5b0492506004810190505b606483106117b957606483816117af576117ae61265f565b5b0492506002810190505b600a83106117c8576001810190505b80915050919050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611840576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611837906127bd565b60405180910390fd5b6118498161144f565b15611889576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161188090612829565b60405180910390fd5b611897600083836001611490565b6118a08161144f565b156118e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118d790612829565b60405180910390fd5b6001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46119ea600083836001611496565b5050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b611a5a81611a25565b8114611a6557600080fd5b50565b600081359050611a7781611a51565b92915050565b600060208284031215611a9357611a92611a1b565b5b6000611aa184828501611a68565b91505092915050565b60008115159050919050565b611abf81611aaa565b82525050565b6000602082019050611ada6000830184611ab6565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611b1a578082015181840152602081019050611aff565b60008484015250505050565b6000601f19601f8301169050919050565b6000611b4282611ae0565b611b4c8185611aeb565b9350611b5c818560208601611afc565b611b6581611b26565b840191505092915050565b60006020820190508181036000830152611b8a8184611b37565b905092915050565b6000819050919050565b611ba581611b92565b8114611bb057600080fd5b50565b600081359050611bc281611b9c565b92915050565b600060208284031215611bde57611bdd611a1b565b5b6000611bec84828501611bb3565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611c2082611bf5565b9050919050565b611c3081611c15565b82525050565b6000602082019050611c4b6000830184611c27565b92915050565b611c5a81611c15565b8114611c6557600080fd5b50565b600081359050611c7781611c51565b92915050565b60008060408385031215611c9457611c93611a1b565b5b6000611ca285828601611c68565b9250506020611cb385828601611bb3565b9150509250929050565b600080600060608486031215611cd657611cd5611a1b565b5b6000611ce486828701611c68565b9350506020611cf586828701611c68565b9250506040611d0686828701611bb3565b9150509250925092565b600060208284031215611d2657611d25611a1b565b5b6000611d3484828501611c68565b91505092915050565b611d4681611b92565b82525050565b6000602082019050611d616000830184611d3d565b92915050565b611d7081611aaa565b8114611d7b57600080fd5b50565b600081359050611d8d81611d67565b92915050565b60008060408385031215611daa57611da9611a1b565b5b6000611db885828601611c68565b9250506020611dc985828601611d7e565b9150509250929050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b611e1582611b26565b810181811067ffffffffffffffff82111715611e3457611e33611ddd565b5b80604052505050565b6000611e47611a11565b9050611e538282611e0c565b919050565b600067ffffffffffffffff821115611e7357611e72611ddd565b5b611e7c82611b26565b9050602081019050919050565b82818337600083830152505050565b6000611eab611ea684611e58565b611e3d565b905082815260208101848484011115611ec757611ec6611dd8565b5b611ed2848285611e89565b509392505050565b600082601f830112611eef57611eee611dd3565b5b8135611eff848260208601611e98565b91505092915050565b60008060008060808587031215611f2257611f21611a1b565b5b6000611f3087828801611c68565b9450506020611f4187828801611c68565b9350506040611f5287828801611bb3565b925050606085013567ffffffffffffffff811115611f7357611f72611a20565b5b611f7f87828801611eda565b91505092959194509250565b60008060408385031215611fa257611fa1611a1b565b5b6000611fb085828601611c68565b9250506020611fc185828601611c68565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061201257607f821691505b60208210810361202557612024611fcb565b5b50919050565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b6000612087602183611aeb565b91506120928261202b565b604082019050919050565b600060208201905081810360008301526120b68161207a565b9050919050565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60008201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c000000602082015250565b6000612119603d83611aeb565b9150612124826120bd565b604082019050919050565b600060208201905081810360008301526121488161210c565b9050919050565b7f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560008201527f72206f7220617070726f76656400000000000000000000000000000000000000602082015250565b60006121ab602d83611aeb565b91506121b68261214f565b604082019050919050565b600060208201905081810360008301526121da8161219e565b9050919050565b7f4552433732313a20696e76616c696420746f6b656e2049440000000000000000600082015250565b6000612217601883611aeb565b9150612222826121e1565b602082019050919050565b600060208201905081810360008301526122468161220a565b9050919050565b7f4552433732313a2061646472657373207a65726f206973206e6f74206120766160008201527f6c6964206f776e65720000000000000000000000000000000000000000000000602082015250565b60006122a9602983611aeb565b91506122b48261224d565b604082019050919050565b600060208201905081810360008301526122d88161229c565b9050919050565b600081905092915050565b60006122f582611ae0565b6122ff81856122df565b935061230f818560208601611afc565b80840191505092915050565b600061232782856122ea565b915061233382846122ea565b91508190509392505050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b600061239b602683611aeb565b91506123a68261233f565b604082019050919050565b600060208201905081810360008301526123ca8161238e565b9050919050565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b600061242d602583611aeb565b9150612438826123d1565b604082019050919050565b6000602082019050818103600083015261245c81612420565b9050919050565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006124bf602483611aeb565b91506124ca82612463565b604082019050919050565b600060208201905081810360008301526124ee816124b2565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b600061252b602083611aeb565b9150612536826124f5565b602082019050919050565b6000602082019050818103600083015261255a8161251e565b9050919050565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b6000612597601983611aeb565b91506125a282612561565b602082019050919050565b600060208201905081810360008301526125c68161258a565b9050919050565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b6000612629603283611aeb565b9150612634826125cd565b604082019050919050565b600060208201905081810360008301526126588161261c565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600081519050919050565b600082825260208201905092915050565b60006126b58261268e565b6126bf8185612699565b93506126cf818560208601611afc565b6126d881611b26565b840191505092915050565b60006080820190506126f86000830187611c27565b6127056020830186611c27565b6127126040830185611d3d565b818103606083015261272481846126aa565b905095945050505050565b60008151905061273e81611a51565b92915050565b60006020828403121561275a57612759611a1b565b5b60006127688482850161272f565b91505092915050565b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b60006127a7602083611aeb565b91506127b282612771565b602082019050919050565b600060208201905081810360008301526127d68161279a565b9050919050565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b6000612813601c83611aeb565b915061281e826127dd565b602082019050919050565b6000602082019050818103600083015261284281612806565b905091905056fea264697066735822122033944bfb5e7f7bec6657be72915ae11109b3284fb985e16f7854dff14ce313fa64736f6c63430008120033"; - private const string Nft721ABI = "[{ \"inputs\": [ { \"internalType\": \"address\", \"name\": \"owner\", \"type\": \"address\" } ], \"name\": \"balanceOf\", \"outputs\": [ { \"internalType\": \"uint256\", \"name\": \"\", \"type\": \"uint256\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"name\", \"outputs\": [ { \"internalType\": \"string\", \"name\": \"\", \"type\": \"string\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"uint256\", \"name\": \"tokenId\", \"type\": \"uint256\" } ], \"name\": \"ownerOf\", \"outputs\": [ { \"internalType\": \"address\", \"name\": \"\", \"type\": \"address\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"address\", \"name\": \"to\", \"type\": \"address\" } ], \"name\": \"safeMint\", \"outputs\": [], \"stateMutability\": \"nonpayable\", \"type\": \"function\" }, { \"inputs\": [], \"name\": \"symbol\", \"outputs\": [ { \"internalType\": \"string\", \"name\": \"\", \"type\": \"string\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }, { \"inputs\": [ { \"internalType\": \"uint256\", \"name\": \"tokenId\", \"type\": \"uint256\" } ], \"name\": \"tokenURI\", \"outputs\": [ { \"internalType\": \"string\", \"name\": \"\", \"type\": \"string\" } ], \"stateMutability\": \"view\", \"type\": \"function\" }]"; - - private Web3 firstAccount; - private string firstWalletAddress; - private string secondaryWalletAddress; - private string nft721Address; - private Process node; - - [OneTimeSetUp] - public void SetUp() - { - node = Emulator.CreateInstance(); - - // We shouldn't be relaying on a .Result from ValueTask - // that is why we need to explicitly wait for it to finish - var firstAccountTask = Web3Util.CreateWeb3().AsTask(); - firstAccountTask.Wait(); - firstAccount = firstAccountTask.Result; - - var secondAccountTask = Web3Util.CreateWeb3(1).AsTask(); - secondAccountTask.Wait(); - - var firstWalletAddressTask = firstAccount.Signer.GetAddress(); - firstWalletAddressTask.Wait(); - - firstWalletAddress = firstWalletAddressTask.Result; - var secondaryWalletAddressTask = secondAccountTask.Result.Signer.GetAddress(); - secondaryWalletAddressTask.Wait(); - secondaryWalletAddress = secondaryWalletAddressTask.Result; - - var amount = new HexBigInteger(1000000); - var txTask = firstAccount.TransactionExecutor.SendTransaction(new TransactionRequest - { - To = secondaryWalletAddress, - Value = amount, - }); - txTask.Wait(); - Console.Out.WriteLine("Setup Transaction Hash: {0}", txTask.Result.Hash); - - nft721Address = Web3Util.DeployContracts(firstAccount, Nft721ByteCode, Nft721ABI); - Console.Out.WriteLine("Smart Contract Address: {0}", nft721Address); - } - - [OneTimeTearDown] - public void Cleanup() - { - node?.Kill(); - } - - [Test] - public void GetNetworkTest() - { - var network = firstAccount.RpcProvider.LastKnownNetwork; - Assert.AreEqual("GoChain Testnet", network.Name); - Assert.AreEqual(31337, network.ChainId); - } - - [Test] - public void GetBalanceTest() - { - var balance = firstAccount.RpcProvider.GetBalance(firstWalletAddress).Result; - var balanceFormatted = Units.FormatEther(balance); - Assert.Greater(balanceFormatted, "9990"); - } - - [Test] - public void GetCodeTest() - { - var code = firstAccount.RpcProvider.GetCode(firstWalletAddress).Result; - Assert.AreEqual("0x", code); - - code = firstAccount.RpcProvider.GetCode(nft721Address).Result; - Assert.AreNotEqual("0x", code); - } - - [Test] - public void GetLastBlockTest() - { - var latestBlock = firstAccount.RpcProvider.GetBlock().Result; - Assert.AreEqual("0x0000000000000000", latestBlock.Nonce); - Assert.AreEqual("30000000", latestBlock.GasLimit.ToString()); - Assert.True(latestBlock.BlockHash.StartsWith("0x")); - Assert.True(latestBlock.ParentHash.StartsWith("0x")); - Assert.IsNotEmpty(latestBlock.Number.ToString()); - Assert.IsNotEmpty(latestBlock.Timestamp.ToString()); - } - - [Test] - public void GetBlockNumberTest() - { - var currentBlockNumber = firstAccount.RpcProvider.GetBlockNumber().Result; - Assert.Greater(currentBlockNumber.ToString(), "0"); - } - - [Test] - public void GetBlockByNumberTest() - { - var currentBlockNumber = firstAccount.RpcProvider.GetBlockNumber().Result; - var blockByNumber = firstAccount.RpcProvider.GetBlock(new BlockParameter(currentBlockNumber)).Result; - Assert.AreEqual(blockByNumber.Number, currentBlockNumber); - } - - [Test] - public void GetBlockWithTransactionsTest() - { - var currentBlockNumber = firstAccount.RpcProvider.GetBlockNumber().Result; - var blockParameter = new BlockParameter(currentBlockNumber.ToUlong()); - var blockWithTx = firstAccount.RpcProvider.GetBlockWithTransactions(blockParameter).Result; - - var firstTransaction = blockWithTx.Transactions[0]; - Assert.AreEqual(31337, firstTransaction.ChainId.ToUlong()); - Assert.AreEqual(currentBlockNumber, firstTransaction.BlockNumber); - } - - [Test] - public void GetPreviousBlockTest() - { - var currentBlockNumber = firstAccount.RpcProvider.GetBlockNumber().Result; - var previousBlockNumber = currentBlockNumber.ToUlong() - 1; - var previousBlock = firstAccount.RpcProvider.GetBlock(new BlockParameter(previousBlockNumber)).Result; - Assert.AreEqual(previousBlockNumber, previousBlock.Number.ToUlong()); - Assert.True(previousBlock.BlockHash.StartsWith("0x")); - } - - [Test] - public void GetTransactionCountTest() - { - var txCount = firstAccount.RpcProvider.GetTransactionCount(firstWalletAddress).Result; - Assert.Greater(txCount.ToUlong(), 0); - } - - [Test] - public void GetFeeDataTest() - { - var feeData = firstAccount.RpcProvider.GetFeeData().Result; - Assert.Greater(Units.FormatUnits(feeData.MaxFeePerGas, "gwei"), "0"); - Assert.Greater(Units.FormatUnits(feeData.GasPrice, "gwei"), "0"); - Assert.Greater(Units.FormatUnits(feeData.MaxPriorityFeePerGas, "gwei"), "0"); - } - - [Test] - public void GetGasPriceTest() - { - var gasPrice = firstAccount.RpcProvider.GetGasPrice().Result; - var gwei = Units.FormatUnits(gasPrice, "gwei"); - Assert.Greater(gasPrice.ToString(), "0"); - Assert.Greater(gasPrice.ToString(), gwei); - } - - [Test] - public void GetTransactionReceiptTest() - { - var latestBlockWithTx = firstAccount.RpcProvider.GetBlockWithTransactions().Result; - var firstTransactionInBlock = latestBlockWithTx.Transactions[0]; - var receipt = - firstAccount.RpcProvider.GetTransactionReceipt( - firstTransactionInBlock.Hash).Result; - Assert.AreEqual(firstTransactionInBlock.Hash, receipt.TransactionHash); - Assert.AreEqual(firstTransactionInBlock.BlockHash, receipt.BlockHash); - } - - [Test] - public void CallContractMethodTest() - { - var address = firstAccount.Signer.GetAddress().Result; - var contract = firstAccount.ContractBuilder.Build(Nft721ABI, nft721Address); - - var ret = contract.Send("safeMint", new object[] { address }).Result; - - var name = contract.Call("name").Result; - Assert.AreEqual("Contract", name[0]); - - var symbol = contract.Call("symbol").Result; - Assert.AreEqual("MNFT", symbol[0]); - - var tokenUri = contract.Call("tokenURI", new object[] { 0 }).Result; - Assert.AreEqual(string.Empty, tokenUri[0]); - - var ownerOf = contract.Call("ownerOf", new object[] { 0 }).Result; - StringAssert.AreEqualIgnoringCase(address, ownerOf[0].ToString()); - - var balanceOf = contract.Call("balanceOf", new[] { ownerOf[0] }).Result; - Assert.GreaterOrEqual(balanceOf[0].ToString(), "1"); - } - - [Test] - public void EstimateGasContractMethodTest() - { - var contract = firstAccount.ContractBuilder.Build(Nft721ABI, firstWalletAddress); - var result = contract.EstimateGas("ownerOf", new object[] { 1 }).Result; - Assert.AreEqual("21204", result.ToString()); - } - - [Test] - public void GetAccountsTest() - { - var accounts = firstAccount.RpcProvider.ListAccounts().Result; - Assert.AreEqual(10, accounts?.Length); - foreach (var account in accounts) - { - var accountBalance = firstAccount.RpcProvider.GetBalance(account).Result; - Assert.GreaterOrEqual(Units.FormatEther(accountBalance), "0"); - } - } - - [Test] - public void SendContractTest() - { - var contract = firstAccount.ContractBuilder.Build(Nft721ABI, nft721Address); - var ret = contract.Send("safeMint", new object[] { secondaryWalletAddress }).Result; - - Assert.IsNotNull(ret); - } - - [Test] - public void SendContractOverrideGasTest() - { - var contract = firstAccount.ContractBuilder.Build(Nft721ABI, nft721Address); - var ret = contract.Send("safeMint", new object[] { secondaryWalletAddress }, new TransactionRequest - { - GasLimit = new HexBigInteger("10000"), - GasPrice = new HexBigInteger("100000000"), - }).Result; - - Assert.IsNotNull(ret); - } - } -} \ No newline at end of file diff --git a/src/ChainSafe.GamingSDK.EVM.Tests/Web3Util.cs b/src/ChainSafe.GamingSDK.EVM.Tests/Web3Util.cs deleted file mode 100644 index 927c7fe7b..000000000 --- a/src/ChainSafe.GamingSDK.EVM.Tests/Web3Util.cs +++ /dev/null @@ -1,58 +0,0 @@ -using System; -using System.Text.Json; -using System.Threading.Tasks; -using ChainSafe.GamingSDK.EVM.Web3.Core; -using ChainSafe.GamingSDK.EVM.Web3.Core.Evm; -using ChainSafe.GamingWeb3.Build; -using Microsoft.Extensions.DependencyInjection; -using Web3Unity.Scripts.Library.Ethers.Contracts.Builders; -using Web3Unity.Scripts.Library.Ethers.JsonRpc; -using Web3Unity.Scripts.Library.Ethers.NetCore; -using Web3Unity.Scripts.Library.Ethers.Providers; -using Web3Unity.Scripts.Library.Ethers.Signers; - -namespace ChainSafe.GamingSDK.EVM.Tests -{ - using Web3 = ChainSafe.GamingWeb3.Web3; - - internal static class Web3Util - { - public static ValueTask CreateWeb3(int accountIndex = 0) => CreateWeb3(new JsonRpcWalletConfiguration() { AccountIndex = accountIndex }); - - private static ValueTask CreateWeb3(JsonRpcWalletConfiguration jsonRpcWalletConfiguration) - { - return new Web3Builder( - new ProjectConfig { ProjectId = string.Empty }, - new ChainConfig - { - Chain = "Anvil", - ChainId = "31337", - Network = "GoChain Testnet", - Rpc = "http://127.0.0.1:8545", - }) - .Configure(services => - { - services.UseNetCoreEnvironment(); - services.UseRpcProvider(); - - services.AddSingleton(jsonRpcWalletConfiguration); - services.AddSingleton(); - }) - .BuildAsync(); - } - - public static string DeployContracts(Web3 web3, string bytecode, string abi) - { - var builder = new DeployContractTransactionBuilder(); - var txReq = builder.BuildTransaction(bytecode, abi, null); - - var txTask = web3.TransactionExecutor.SendTransaction(txReq); - txTask.Wait(); - - var receiptTask = web3.RpcProvider.GetTransactionReceipt(txTask.Result.Hash); - receiptTask.Wait(); - - return receiptTask.Result.ContractAddress ?? string.Empty; - } - } -} diff --git a/src/ChainSafe.GamingSDK.EVM/AssemblyInfo.cs b/src/ChainSafe.GamingSDK.EVM/AssemblyInfo.cs deleted file mode 100644 index 111071a09..000000000 --- a/src/ChainSafe.GamingSDK.EVM/AssemblyInfo.cs +++ /dev/null @@ -1,4 +0,0 @@ -using System.Runtime.CompilerServices; - -[assembly: InternalsVisibleTo("ChainSafe.GamingSdk.EVM.NetCore")] -[assembly: InternalsVisibleTo("ChainSafe.GamingSdk.EVM.Unity")] \ No newline at end of file diff --git a/src/ChainSafe.GamingSdk.Gelato/ChainSafe.GamingSdk.Gelato.csproj b/src/ChainSafe.GamingSdk.Gelato/ChainSafe.GamingSdk.Gelato.csproj deleted file mode 100644 index 625168e5d..000000000 --- a/src/ChainSafe.GamingSdk.Gelato/ChainSafe.GamingSdk.Gelato.csproj +++ /dev/null @@ -1,17 +0,0 @@ - - - - netstandard2.1 - 9.0 - True - True - ../../global.ruleset - Debug;Release;Test - AnyCPU - - - - - - - diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Prefabs/Logout.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Prefabs/Logout.cs index c2b0dae98..9c4e129f3 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Prefabs/Logout.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Prefabs/Logout.cs @@ -1,3 +1,4 @@ +using ChainSafe.Gaming.UnityPackage; using Scenes; using UnityEngine; using UnityEngine.SceneManagement; diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Prefabs/Minter/CreateApproval.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Prefabs/Minter/CreateApproval.cs index fd2f1d263..b4998afad 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Prefabs/Minter/CreateApproval.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Prefabs/Minter/CreateApproval.cs @@ -1,9 +1,10 @@ using Nethereum.Hex.HexTypes; using Newtonsoft.Json; using System; +using ChainSafe.Gaming.Evm.Transactions; +using ChainSafe.Gaming.UnityPackage; using UnityEngine; using Scripts.EVM.Remote; -using Web3Unity.Scripts.Library.Ethers.Transactions; public class CreateApproval : MonoBehaviour { diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Prefabs/Minter/GetListedCollections.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Prefabs/Minter/GetListedCollections.cs index aa93503f4..d7ff43f5a 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Prefabs/Minter/GetListedCollections.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Prefabs/Minter/GetListedCollections.cs @@ -1,13 +1,14 @@ using System; using System.Collections; using System.Collections.Generic; -using Models; +using ChainSafe.Gaming.Evm.Transactions; +using ChainSafe.Gaming.UnityPackage; +using ChainSafe.Gaming.UnityPackage.Model; using Newtonsoft.Json; using UnityEngine; using UnityEngine.Networking; using UnityEngine.UI; using Scripts.EVM.Remote; -using Web3Unity.Scripts.Library.Ethers.Transactions; // using Web3Unity.Scripts.Library.Web3Wallet; public class GetListedCollections : MonoBehaviour diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Prefabs/Minter/GetListedNFT.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Prefabs/Minter/GetListedNFT.cs index 4bf9b1e02..5fff50f99 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Prefabs/Minter/GetListedNFT.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Prefabs/Minter/GetListedNFT.cs @@ -4,14 +4,15 @@ using System.Linq; using System.Numerics; using System.Threading.Tasks; -using Models; +using ChainSafe.Gaming.Evm.Transactions; +using ChainSafe.Gaming.UnityPackage; +using ChainSafe.Gaming.UnityPackage.Model; using Nethereum.Hex.HexTypes; using Newtonsoft.Json; using UnityEngine; using UnityEngine.Networking; using UnityEngine.UI; using Scripts.EVM.Remote; -using Web3Unity.Scripts.Library.Ethers.Transactions; // using Web3Unity.Scripts.Library.Web3Wallet; public class GetListedNFT : MonoBehaviour diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Prefabs/Minter/ListCollections.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Prefabs/Minter/ListCollections.cs index 1d2518ff6..72acdeafd 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Prefabs/Minter/ListCollections.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Prefabs/Minter/ListCollections.cs @@ -2,14 +2,15 @@ using System.Collections; using System.Collections.Generic; using System.Globalization; -using Models; +using ChainSafe.Gaming.Evm.Transactions; +using ChainSafe.Gaming.UnityPackage; +using ChainSafe.Gaming.UnityPackage.Model; using Nethereum.Hex.HexTypes; using Newtonsoft.Json; using UnityEngine; using UnityEngine.Networking; using UnityEngine.UI; using Scripts.EVM.Remote; -using Web3Unity.Scripts.Library.Ethers.Transactions; // using Web3Unity.Scripts.Library.Web3Wallet; public class ListCollections : MonoBehaviour diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Prefabs/Minter/ListNft.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Prefabs/Minter/ListNft.cs index 69eebb245..9db009603 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Prefabs/Minter/ListNft.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Prefabs/Minter/ListNft.cs @@ -2,14 +2,15 @@ using System.Collections; using System.Globalization; using System.Text; -using Models; +using ChainSafe.Gaming.Evm.Transactions; +using ChainSafe.Gaming.UnityPackage; +using ChainSafe.Gaming.UnityPackage.Model; using Nethereum.Hex.HexTypes; using Newtonsoft.Json; using UnityEngine; using UnityEngine.Networking; using UnityEngine.UI; using Scripts.EVM.Remote; -using Web3Unity.Scripts.Library.Ethers.Transactions; namespace Web3Unity.Scripts.Prefabs.Minter { diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Prefabs/Minter/Mint1155.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Prefabs/Minter/Mint1155.cs index 1659f091f..4be2c33e7 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Prefabs/Minter/Mint1155.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Prefabs/Minter/Mint1155.cs @@ -1,7 +1,8 @@ -using Models; +using ChainSafe.Gaming.Evm.Transactions; +using ChainSafe.Gaming.UnityPackage; +using ChainSafe.Gaming.UnityPackage.Model; using UnityEngine; using Scripts.EVM.Remote; -using Web3Unity.Scripts.Library.Ethers.Transactions; using Nethereum.Hex.HexTypes; using Newtonsoft.Json; diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Prefabs/Minter/Mint721Voucher.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Prefabs/Minter/Mint721Voucher.cs index 006c14b6b..16b4b6e41 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Prefabs/Minter/Mint721Voucher.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Prefabs/Minter/Mint721Voucher.cs @@ -1,9 +1,10 @@ -using Models; +using ChainSafe.Gaming.Evm.Transactions; +using ChainSafe.Gaming.UnityPackage; +using ChainSafe.Gaming.UnityPackage.Model; using Nethereum.Hex.HexTypes; using Newtonsoft.Json; using UnityEngine; using Scripts.EVM.Remote; -using Web3Unity.Scripts.Library.Ethers.Transactions; public class Mint721Voucher : MonoBehaviour { diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/Login.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/Login.cs index 161b5e83f..a8935759d 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/Login.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/Login.cs @@ -2,19 +2,21 @@ using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; -using ChainSafe.GamingSDK.EVM.MetaMaskBrowserWallet; -using ChainSafe.GamingSDK.EVM.WebGLWallet; +using ChainSafe.Gaming.Evm.Contracts; +using ChainSafe.Gaming.Evm.JsonRpc; +using ChainSafe.Gaming.UnityPackage; +using ChainSafe.Gaming.Wallets; +using ChainSafe.Gaming.Web3; +using ChainSafe.Gaming.Web3.Build; +using ChainSafe.Gaming.Web3.Unity; using ChainSafe.GamingSdk.Gelato; using ChainSafe.GamingSdk.Web3Auth; -using ChainSafe.GamingWeb3; -using ChainSafe.GamingWeb3.Build; -using ChainSafe.GamingWeb3.Unity; + using UnityEngine; using UnityEngine.Assertions; using UnityEngine.SceneManagement; using UnityEngine.UI; -using Web3Unity.Scripts.Library.Ethers.Contracts; -using Web3Unity.Scripts.Library.Ethers.JsonRpc; + namespace Scenes { diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/AccountLabel.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/AccountLabel.cs index d9da36349..3ee3028e3 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/AccountLabel.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/AccountLabel.cs @@ -1,3 +1,4 @@ +using ChainSafe.Gaming.UnityPackage; using TMPro; using UnityEngine; diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc1155/Erc1155AllBehaviour.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc1155/Erc1155AllBehaviour.cs index ee03ef4b9..0b2eda5e9 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc1155/Erc1155AllBehaviour.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc1155/Erc1155AllBehaviour.cs @@ -1,5 +1,6 @@ using System.Linq; using System.Threading.Tasks; +using ChainSafe.Gaming.UnityPackage; using UnityEngine; using Web3Unity.Scripts.Prefabs; diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc1155/Erc1155BalanceOfBatchBehaviour.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc1155/Erc1155BalanceOfBatchBehaviour.cs index 0230624eb..a7cb43323 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc1155/Erc1155BalanceOfBatchBehaviour.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc1155/Erc1155BalanceOfBatchBehaviour.cs @@ -1,4 +1,5 @@ using System.Threading.Tasks; +using ChainSafe.Gaming.UnityPackage; using Web3Unity.Scripts.Prefabs; namespace Samples.Behaviours.Erc1155 diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc1155/Erc1155BalanceOfBehaviour.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc1155/Erc1155BalanceOfBehaviour.cs index e8339a92a..5e9a7d02e 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc1155/Erc1155BalanceOfBehaviour.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc1155/Erc1155BalanceOfBehaviour.cs @@ -1,4 +1,5 @@ using System.Threading.Tasks; +using ChainSafe.Gaming.UnityPackage; using Web3Unity.Scripts.Prefabs; namespace Samples.Behaviours.Erc1155 diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc1155/Erc1155UriBehaviour.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc1155/Erc1155UriBehaviour.cs index dc48eac35..aa2da9b86 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc1155/Erc1155UriBehaviour.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc1155/Erc1155UriBehaviour.cs @@ -1,5 +1,6 @@ using System; using System.Threading.Tasks; +using ChainSafe.Gaming.UnityPackage; using Web3Unity.Scripts.Prefabs; namespace Samples.Behaviours.Erc1155 diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc721/Erc721AllBehaviour.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc721/Erc721AllBehaviour.cs index 627a81578..0b3add117 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc721/Erc721AllBehaviour.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc721/Erc721AllBehaviour.cs @@ -1,5 +1,6 @@ using System.Linq; using System.Threading.Tasks; +using ChainSafe.Gaming.UnityPackage; using UnityEngine; using Web3Unity.Scripts.Prefabs; diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc721/Erc721BalanceOfBehaviour.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc721/Erc721BalanceOfBehaviour.cs index 262dacf20..e90fb6f17 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc721/Erc721BalanceOfBehaviour.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc721/Erc721BalanceOfBehaviour.cs @@ -1,4 +1,5 @@ using System.Threading.Tasks; +using ChainSafe.Gaming.UnityPackage; using Web3Unity.Scripts.Prefabs; namespace Samples.Behaviours.Erc721 diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc721/Erc721OwnerOfBatchBehaviour.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc721/Erc721OwnerOfBatchBehaviour.cs index 1fd980b0a..c8cf3f325 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc721/Erc721OwnerOfBatchBehaviour.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc721/Erc721OwnerOfBatchBehaviour.cs @@ -1,5 +1,6 @@ using System.Collections.Generic; using System.Threading.Tasks; +using ChainSafe.Gaming.UnityPackage; using UnityEngine; using Web3Unity.Scripts.Prefabs; diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc721/Erc721OwnerOfBehaviour.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc721/Erc721OwnerOfBehaviour.cs index 4b2506856..9628aacb7 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc721/Erc721OwnerOfBehaviour.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc721/Erc721OwnerOfBehaviour.cs @@ -1,4 +1,5 @@ using System.Threading.Tasks; +using ChainSafe.Gaming.UnityPackage; using Web3Unity.Scripts.Prefabs; namespace Samples.Behaviours.Erc721 diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc721/Erc721UriBehaviour.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc721/Erc721UriBehaviour.cs index 393fe8dd2..0b8318d51 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc721/Erc721UriBehaviour.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/Erc721/Erc721UriBehaviour.cs @@ -1,4 +1,5 @@ using System.Threading.Tasks; +using ChainSafe.Gaming.UnityPackage; using Web3Unity.Scripts.Prefabs; namespace Samples.Behaviours.Erc721 diff --git a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/SampleBehaviour.cs b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/SampleBehaviour.cs index 608058690..180d1fd2c 100644 --- a/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/SampleBehaviour.cs +++ b/src/UnitySampleProject/Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scripts/Scenes/SampleMain/SampleBehaviour.cs @@ -1,6 +1,7 @@ using System; using System.Threading.Tasks; -using ChainSafe.GamingWeb3; +using ChainSafe.Gaming.UnityPackage; +using ChainSafe.Gaming.Web3; using UnityEngine; using UnityEngine.UI; diff --git a/src/UnitySampleProject/Packages/packages-lock.json b/src/UnitySampleProject/Packages/packages-lock.json index b39608345..825f30a10 100644 --- a/src/UnitySampleProject/Packages/packages-lock.json +++ b/src/UnitySampleProject/Packages/packages-lock.json @@ -230,7 +230,7 @@ "url": "https://packages.unity.com" }, "io.chainsafe.web3-unity": { - "version": "file:../../UnityPackages/io.chainsafe.web3-unity", + "version": "file:../../../Packages/io.chainsafe.web3-unity", "depth": 0, "source": "local", "dependencies": { @@ -238,7 +238,7 @@ } }, "io.chainsafe.web3-unity.web3auth": { - "version": "file:../../UnityPackages/io.chainsafe.web3-unity.web3auth", + "version": "file:../../../Packages/io.chainsafe.web3-unity.web3auth", "depth": 0, "source": "local", "dependencies": { diff --git a/src/UnitySampleProject/ProjectSettings/EditorBuildSettings.asset b/src/UnitySampleProject/ProjectSettings/EditorBuildSettings.asset index f686e9451..41a6d504d 100644 --- a/src/UnitySampleProject/ProjectSettings/EditorBuildSettings.asset +++ b/src/UnitySampleProject/ProjectSettings/EditorBuildSettings.asset @@ -14,13 +14,4 @@ EditorBuildSettings: - enabled: 1 path: Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scenes/SampleImportNftTexture.Unity guid: d31091c4b9c13af48af91512a5127882 - - enabled: 1 - path: Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scenes/SampleLogin.unity - guid: 1c1af5c5662d105498b2412267dde0df - - enabled: 1 - path: Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scenes/SampleMain.unity - guid: 2cda990e2423bbf4892e6590ba056729 - - enabled: 1 - path: Assets/Samples/web3.unity SDK/2.5.0-pre001/Web3.Unity Samples/Scenes/SampleImportNftTexture.unity - guid: d31091c4b9c13af48af91512a5127882 m_configObjects: {} diff --git a/stylecop.json b/stylecop.json index 409a97ca6..91add5ddb 100644 --- a/stylecop.json +++ b/stylecop.json @@ -1,14 +1,8 @@ { - // ACTION REQUIRED: This file was automatically added to your project, but it - // will not take effect until additional steps are taken to enable it. See the - // following page for additional information: - // - // https://github.com/DotNetAnalyzers/StyleCopAnalyzers/blob/master/documentation/EnableConfiguration.md - "$schema": "https://raw.githubusercontent.com/DotNetAnalyzers/StyleCopAnalyzers/master/StyleCop.Analyzers/StyleCop.Analyzers/Settings/stylecop.schema.json", "settings": { "readabilityRules": { } } -} +} \ No newline at end of file