Skip to content

Commit cd1d59d

Browse files
committed
Make ThirdwebTransactionInput properties public and auto-implemented
Updated ThirdwebTransactionInput to use public auto-implemented properties for From, To, Data, and ChainId, improving accessibility and simplifying the class. Also changed ThirdwebTransaction.Input from a read-only property to a settable property. Updated README to clarify and update feature descriptions.
1 parent 602e6eb commit cd1d59d

File tree

3 files changed

+15
-21
lines changed

3 files changed

+15
-21
lines changed

README.md

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -9,23 +9,21 @@
99

1010
The Thirdweb .NET SDK is a comprehensive and easy to use library that allows developers to interact with the blockchain using the .NET framework. It simplifies the integration of all [thirdweb](https://thirdweb.com/) functionality with a minimal set of dependencies.
1111

12-
## Features
12+
## Core Features
1313

14-
- **Connect to any EVM network:** Easily connect to Ethereum and other EVM-compatible networks.
15-
- **Query blockchain data:** Use Thirdweb RPC to fetch blockchain data efficiently.
14+
- **Connect to any EVM network:** Easily connect to blockchain network with its chain id alone.
1615
- **Interact with smart contracts:** Simplified read and write operations for smart contracts, with various out-of-the-box extensions provided.
17-
- **In-App Wallets:** Integrate user-friendly wallets within your applications, supporting email, phone, and OAuth login.
16+
- **In-App Wallets:** Integrate user-friendly wallets within your applications, supporting email, phone, OAuth login or plug your own auth in.
1817
- **Ecosystem Wallets:** Basically In-App Wallets functionality wise, with the added benefit of being able to securely share your wallets with third party partners.
19-
- **Account Abstraction:** Simplify complex account management tasks with smart wallets.
20-
- **Gasless Transactions:** Enable transactions without requiring users to pay gas fees.
21-
- **Storage Solutions:** Download and upload files using IPFS.
18+
- **Account Abstraction:** Turn any wallet into a programmable smart wallet (EIP-4337 or EIP-7702) with built-in gas sponsorship and granular session key features.
19+
- **Storage Solutions:** Download and upload files using IPFS or HTTPS.
2220
- **Transaction Builder:** Create, manipulate and send low level transactions.
2321
- **Session Keys:** Advanced control for smart wallets to manage permissions and session durations.
2422
- **Thirdweb Bridge:** Universal interface to use any asset onchain.
2523
- **Thirdweb Nebula:** Create blockchain-powered AI Agents.
2624
- **Thirdweb Insight:** Query blockchain data at the speed of light.
2725
- **Thirdweb Engine:** Interact in creative ways from your backend.
28-
- **Unity Compatibility**: This SDK has been tested successfully in [Unity 2021.3+](https://portal.thirdweb.com/unity/v5) (Standalone, Mobile and WebGL).
26+
- **Unity Compatibility**: This SDK has been tested successfully in [Unity 2022.3+](https://portal.thirdweb.com/unity/v5) (All build targets).
2927
- **Godot Compatibility**: This SDK has been tested successfully in [Godot .NET](https://portal.thirdweb.com/dotnet/godot)
3028
- **MAUI Compatibility**: This SDK has been tested successfully in [MAUI](https://portal.thirdweb.com/dotnet/maui)
3129

Thirdweb/Thirdweb.Transactions/ThirdwebTransaction.Types.cs

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -53,18 +53,14 @@ public ThirdwebTransactionInput(
5353
[JsonProperty(PropertyName = "nonce")]
5454
public HexBigInteger Nonce { get; set; }
5555

56-
private string _from;
57-
private string _to;
58-
private string _data;
59-
6056
/// <summary>
6157
/// Gets or sets the sender address of the transaction.
6258
/// </summary>
6359
[JsonProperty(PropertyName = "from")]
64-
internal string From
60+
public string From
6561
{
66-
get => this._from.EnsureHexPrefix();
67-
set => this._from = value;
62+
get => field.EnsureHexPrefix();
63+
set;
6864
}
6965

7066
/// <summary>
@@ -73,8 +69,8 @@ internal string From
7369
[JsonProperty(PropertyName = "to")]
7470
public string To
7571
{
76-
get => this._to.EnsureHexPrefix();
77-
set => this._to = value;
72+
get => field.EnsureHexPrefix();
73+
set;
7874
}
7975

8076
/// <summary>
@@ -101,8 +97,8 @@ public string To
10197
[JsonProperty(PropertyName = "data")]
10298
public string Data
10399
{
104-
get => this._data.EnsureHexPrefix();
105-
set => this._data = value;
100+
get => field.EnsureHexPrefix();
101+
set;
106102
}
107103

108104
/// <summary>
@@ -121,7 +117,7 @@ public string Data
121117
/// Gets or sets the chain ID for the transaction.
122118
/// </summary>
123119
[JsonProperty(PropertyName = "chainId")]
124-
internal HexBigInteger ChainId { get; set; }
120+
public HexBigInteger ChainId { get; set; }
125121

126122
/// <summary>
127123
/// Gets or sets the zkSync options for the transaction.

Thirdweb/Thirdweb.Transactions/ThirdwebTransaction.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ public struct TotalCosts
2727
/// </summary>
2828
public class ThirdwebTransaction
2929
{
30-
public ThirdwebTransactionInput Input { get; }
30+
public ThirdwebTransactionInput Input { get; set; }
3131

3232
internal readonly IThirdwebWallet Wallet;
3333

0 commit comments

Comments
 (0)