@heyanon/sdk 2.3.5 → 2.3.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -56,7 +56,9 @@ export declare enum Chain {
|
|
|
56
56
|
/** HyperEVM blockchain */
|
|
57
57
|
HYPEREVM = "hyperevm",
|
|
58
58
|
/** Plasma blockchain */
|
|
59
|
-
PLASMA = "plasma"
|
|
59
|
+
PLASMA = "plasma",
|
|
60
|
+
/** Monad blockchain */
|
|
61
|
+
MONAD = "monad"
|
|
60
62
|
}
|
|
61
63
|
/**
|
|
62
64
|
* Type representing EVM-compatible chains (excludes Solana and TON)
|
|
@@ -112,4 +114,4 @@ export declare const allChains: Chain[];
|
|
|
112
114
|
* };
|
|
113
115
|
* ```
|
|
114
116
|
*/
|
|
115
|
-
export declare const allEvmChains: (Chain.ETHEREUM | Chain.OPTIMISM | Chain.BSC | Chain.GNOSIS | Chain.POLYGON | Chain.SONIC | Chain.ZKSYNC | Chain.METIS | Chain.KAVA_EVM | Chain.BASE | Chain.AVALANCHE | Chain.ARBITRUM | Chain.SCROLL | Chain.HYPEREVM | Chain.PLASMA)[];
|
|
117
|
+
export declare const allEvmChains: (Chain.ETHEREUM | Chain.OPTIMISM | Chain.BSC | Chain.GNOSIS | Chain.POLYGON | Chain.SONIC | Chain.ZKSYNC | Chain.METIS | Chain.KAVA_EVM | Chain.BASE | Chain.AVALANCHE | Chain.ARBITRUM | Chain.SCROLL | Chain.HYPEREVM | Chain.PLASMA | Chain.MONAD)[];
|
package/dist/index.js
CHANGED
|
@@ -136,6 +136,7 @@ var Chain = /* @__PURE__ */ ((Chain2) => {
|
|
|
136
136
|
Chain2["TON"] = "ton";
|
|
137
137
|
Chain2["HYPEREVM"] = "hyperevm";
|
|
138
138
|
Chain2["PLASMA"] = "plasma";
|
|
139
|
+
Chain2["MONAD"] = "monad";
|
|
139
140
|
return Chain2;
|
|
140
141
|
})(Chain || {});
|
|
141
142
|
var allChains = Object.values(Chain);
|
|
@@ -180,7 +181,9 @@ var ChainIds = {
|
|
|
180
181
|
/** HyperEVM - Chain ID: 999 */
|
|
181
182
|
["hyperevm" /* HYPEREVM */]: 999,
|
|
182
183
|
/** Plasma - Chain ID: 9745 */
|
|
183
|
-
["plasma" /* PLASMA */]: 9745
|
|
184
|
+
["plasma" /* PLASMA */]: 9745,
|
|
185
|
+
/** Monad - Chain ID: 143 */
|
|
186
|
+
["monad" /* MONAD */]: 143
|
|
184
187
|
};
|
|
185
188
|
|
|
186
189
|
// src/blockchain/evm/constants/weth9.ts
|
|
@@ -214,7 +217,9 @@ var WETH9 = {
|
|
|
214
217
|
/** Wrapped HYPE (WHYPE) on HyperEVM */
|
|
215
218
|
["hyperevm" /* HYPEREVM */]: new sdk.Token(ChainIds["hyperevm" /* HYPEREVM */], "0x5555555555555555555555555555555555555555", 18, "WHYPE", "Wrapped HYPE"),
|
|
216
219
|
/** Wrapped XPL (WXPL) on Plasma */
|
|
217
|
-
["plasma" /* PLASMA */]: new sdk.Token(ChainIds["plasma" /* PLASMA */], "0x6100E367285b01F48D07953803A2d8dCA5D19873", 18, "WXPL", "Wrapped XPL")
|
|
220
|
+
["plasma" /* PLASMA */]: new sdk.Token(ChainIds["plasma" /* PLASMA */], "0x6100E367285b01F48D07953803A2d8dCA5D19873", 18, "WXPL", "Wrapped XPL"),
|
|
221
|
+
/** Wrapped MON (WMON) on Monad */
|
|
222
|
+
["monad" /* MONAD */]: new sdk.Token(ChainIds["monad" /* MONAD */], "0x3bd359C1119dA7Da1D913D1C4D2B7c461115433A", 18, "WMON", "Wrapped MON")
|
|
218
223
|
};
|
|
219
224
|
|
|
220
225
|
// src/blockchain/evm/utils/getChainFromName.ts
|
|
@@ -580,20 +585,20 @@ function isAddress(value) {
|
|
|
580
585
|
try {
|
|
581
586
|
result.valid = viem.isAddress(value);
|
|
582
587
|
if (result.valid) {
|
|
583
|
-
result.
|
|
588
|
+
result.type = "evm" /* EVM */;
|
|
584
589
|
}
|
|
585
590
|
} catch (_error) {
|
|
586
591
|
}
|
|
587
592
|
try {
|
|
588
593
|
solana_exports.utils.toPublicKey(value);
|
|
589
594
|
result.valid = true;
|
|
590
|
-
result.
|
|
595
|
+
result.type = "solana" /* SOLANA */;
|
|
591
596
|
} catch (_error) {
|
|
592
597
|
}
|
|
593
598
|
try {
|
|
594
599
|
ton.Address.parse(value);
|
|
595
600
|
result.valid = true;
|
|
596
|
-
result.
|
|
601
|
+
result.type = "ton" /* TON */;
|
|
597
602
|
} catch (_error) {
|
|
598
603
|
}
|
|
599
604
|
return result;
|
package/dist/index.mjs
CHANGED
|
@@ -134,6 +134,7 @@ var Chain = /* @__PURE__ */ ((Chain2) => {
|
|
|
134
134
|
Chain2["TON"] = "ton";
|
|
135
135
|
Chain2["HYPEREVM"] = "hyperevm";
|
|
136
136
|
Chain2["PLASMA"] = "plasma";
|
|
137
|
+
Chain2["MONAD"] = "monad";
|
|
137
138
|
return Chain2;
|
|
138
139
|
})(Chain || {});
|
|
139
140
|
var allChains = Object.values(Chain);
|
|
@@ -178,7 +179,9 @@ var ChainIds = {
|
|
|
178
179
|
/** HyperEVM - Chain ID: 999 */
|
|
179
180
|
["hyperevm" /* HYPEREVM */]: 999,
|
|
180
181
|
/** Plasma - Chain ID: 9745 */
|
|
181
|
-
["plasma" /* PLASMA */]: 9745
|
|
182
|
+
["plasma" /* PLASMA */]: 9745,
|
|
183
|
+
/** Monad - Chain ID: 143 */
|
|
184
|
+
["monad" /* MONAD */]: 143
|
|
182
185
|
};
|
|
183
186
|
|
|
184
187
|
// src/blockchain/evm/constants/weth9.ts
|
|
@@ -212,7 +215,9 @@ var WETH9 = {
|
|
|
212
215
|
/** Wrapped HYPE (WHYPE) on HyperEVM */
|
|
213
216
|
["hyperevm" /* HYPEREVM */]: new Token(ChainIds["hyperevm" /* HYPEREVM */], "0x5555555555555555555555555555555555555555", 18, "WHYPE", "Wrapped HYPE"),
|
|
214
217
|
/** Wrapped XPL (WXPL) on Plasma */
|
|
215
|
-
["plasma" /* PLASMA */]: new Token(ChainIds["plasma" /* PLASMA */], "0x6100E367285b01F48D07953803A2d8dCA5D19873", 18, "WXPL", "Wrapped XPL")
|
|
218
|
+
["plasma" /* PLASMA */]: new Token(ChainIds["plasma" /* PLASMA */], "0x6100E367285b01F48D07953803A2d8dCA5D19873", 18, "WXPL", "Wrapped XPL"),
|
|
219
|
+
/** Wrapped MON (WMON) on Monad */
|
|
220
|
+
["monad" /* MONAD */]: new Token(ChainIds["monad" /* MONAD */], "0x3bd359C1119dA7Da1D913D1C4D2B7c461115433A", 18, "WMON", "Wrapped MON")
|
|
216
221
|
};
|
|
217
222
|
|
|
218
223
|
// src/blockchain/evm/utils/getChainFromName.ts
|
|
@@ -578,20 +583,20 @@ function isAddress(value) {
|
|
|
578
583
|
try {
|
|
579
584
|
result.valid = isAddress$1(value);
|
|
580
585
|
if (result.valid) {
|
|
581
|
-
result.
|
|
586
|
+
result.type = "evm" /* EVM */;
|
|
582
587
|
}
|
|
583
588
|
} catch (_error) {
|
|
584
589
|
}
|
|
585
590
|
try {
|
|
586
591
|
solana_exports.utils.toPublicKey(value);
|
|
587
592
|
result.valid = true;
|
|
588
|
-
result.
|
|
593
|
+
result.type = "solana" /* SOLANA */;
|
|
589
594
|
} catch (_error) {
|
|
590
595
|
}
|
|
591
596
|
try {
|
|
592
597
|
Address.parse(value);
|
|
593
598
|
result.valid = true;
|
|
594
|
-
result.
|
|
599
|
+
result.type = "ton" /* TON */;
|
|
595
600
|
} catch (_error) {
|
|
596
601
|
}
|
|
597
602
|
return result;
|
|
@@ -7,7 +7,7 @@ interface IsAddressResult {
|
|
|
7
7
|
/** Whether the address is valid for any supported blockchain */
|
|
8
8
|
valid: boolean;
|
|
9
9
|
/** The type of wallet/blockchain the address belongs to (EVM, Solana, or TON) */
|
|
10
|
-
|
|
10
|
+
type?: WalletType;
|
|
11
11
|
}
|
|
12
12
|
/**
|
|
13
13
|
* Validates a blockchain address and determines its type across multiple blockchain networks
|
|
@@ -23,15 +23,15 @@ interface IsAddressResult {
|
|
|
23
23
|
* ```typescript
|
|
24
24
|
* // EVM address validation
|
|
25
25
|
* const evmResult = isAddress('0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb0');
|
|
26
|
-
* // Returns: { valid: true,
|
|
26
|
+
* // Returns: { valid: true, type: WalletType.EVM }
|
|
27
27
|
*
|
|
28
28
|
* // Solana address validation
|
|
29
29
|
* const solanaResult = isAddress('DYw8jCTfwHNRJhhmFcbXvVDTqWMEVFBX6ZKUmG5CNSKK');
|
|
30
|
-
* // Returns: { valid: true,
|
|
30
|
+
* // Returns: { valid: true, type: WalletType.SOLANA }
|
|
31
31
|
*
|
|
32
32
|
* // TON address validation
|
|
33
33
|
* const tonResult = isAddress('EQD4FPq-PRDieyQKkizFTRtSDyucUIqrj0v_zXJmqaDp6_0t');
|
|
34
|
-
* // Returns: { valid: true,
|
|
34
|
+
* // Returns: { valid: true, type: WalletType.TON }
|
|
35
35
|
*
|
|
36
36
|
* // Invalid address
|
|
37
37
|
* const invalidResult = isAddress('invalid-address');
|
|
@@ -39,24 +39,24 @@ interface IsAddressResult {
|
|
|
39
39
|
*
|
|
40
40
|
* // Routing transactions based on address type
|
|
41
41
|
* async function sendTokens(recipientAddress: string, amount: bigint) {
|
|
42
|
-
* const { valid,
|
|
42
|
+
* const { valid, type } = isAddress(recipientAddress);
|
|
43
43
|
*
|
|
44
44
|
* if (!valid) {
|
|
45
45
|
* throw new Error('Invalid recipient address');
|
|
46
46
|
* }
|
|
47
47
|
*
|
|
48
|
-
* switch (
|
|
49
|
-
* case
|
|
48
|
+
* switch (type) {
|
|
49
|
+
* case type.EVM:
|
|
50
50
|
* return await options.evm.sendTransactions({
|
|
51
51
|
* transactions: [{ to: recipientAddress, value: amount }]
|
|
52
52
|
* });
|
|
53
53
|
*
|
|
54
|
-
* case
|
|
54
|
+
* case type.SOLANA:
|
|
55
55
|
* return await options.solana.sendTransactions({
|
|
56
56
|
* transactions: [{ instructions: [...] }]
|
|
57
57
|
* });
|
|
58
58
|
*
|
|
59
|
-
* case
|
|
59
|
+
* case type.TON:
|
|
60
60
|
* return await options.ton.sendTransactions({
|
|
61
61
|
* transactions: [{ to: recipientAddress, value: amount }]
|
|
62
62
|
* });
|
|
@@ -65,13 +65,13 @@ interface IsAddressResult {
|
|
|
65
65
|
*
|
|
66
66
|
* // User input validation
|
|
67
67
|
* function validateUserInput(userAddress: string) {
|
|
68
|
-
* const { valid,
|
|
68
|
+
* const { valid, type } = isAddress(userAddress);
|
|
69
69
|
*
|
|
70
70
|
* if (!valid) {
|
|
71
71
|
* return { success: false, error: 'Invalid address format' };
|
|
72
72
|
* }
|
|
73
73
|
*
|
|
74
|
-
* return { success: true,
|
|
74
|
+
* return { success: true, type, address: userAddress };
|
|
75
75
|
* }
|
|
76
76
|
* ```
|
|
77
77
|
*/
|