thirdweb 5.102.2 → 5.102.3
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.
- package/dist/cjs/bridge/Buy.js +7 -1
- package/dist/cjs/bridge/Buy.js.map +1 -1
- package/dist/cjs/bridge/Token.js +153 -0
- package/dist/cjs/bridge/Token.js.map +1 -0
- package/dist/cjs/bridge/index.js +3 -1
- package/dist/cjs/bridge/index.js.map +1 -1
- package/dist/cjs/extensions/erc1155/read/getNFTs.js +9 -2
- package/dist/cjs/extensions/erc1155/read/getNFTs.js.map +1 -1
- package/dist/cjs/extensions/erc721/read/getNFTs.js +9 -2
- package/dist/cjs/extensions/erc721/read/getNFTs.js.map +1 -1
- package/dist/cjs/pay/convert/cryptoToFiat.js +6 -38
- package/dist/cjs/pay/convert/cryptoToFiat.js.map +1 -1
- package/dist/cjs/pay/convert/fiatToCrypto.js +6 -38
- package/dist/cjs/pay/convert/fiatToCrypto.js.map +1 -1
- package/dist/cjs/pay/convert/get-token.js +19 -0
- package/dist/cjs/pay/convert/get-token.js.map +1 -0
- package/dist/cjs/react/core/hooks/transaction/useSendTransaction.js +2 -2
- package/dist/cjs/react/core/hooks/transaction/useSendTransaction.js.map +1 -1
- package/dist/cjs/react/core/utils/wallet.js +0 -48
- package/dist/cjs/react/core/utils/wallet.js.map +1 -1
- package/dist/cjs/react/native/ui/connect/ConnectedModal.js +5 -5
- package/dist/cjs/react/native/ui/connect/ConnectedModal.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/Details.js +7 -7
- package/dist/cjs/react/web/ui/ConnectWallet/Details.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/TransactionModeScreen.js +2 -2
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/TransactionModeScreen.js.map +1 -1
- package/dist/cjs/react/web/ui/TransactionButton/DepositScreen.js +2 -2
- package/dist/cjs/react/web/ui/TransactionButton/DepositScreen.js.map +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/wallets/manager/index.js +1 -2
- package/dist/cjs/wallets/manager/index.js.map +1 -1
- package/dist/cjs/wallets/smart/is-smart-wallet.js +62 -5
- package/dist/cjs/wallets/smart/is-smart-wallet.js.map +1 -1
- package/dist/esm/bridge/Buy.js +7 -1
- package/dist/esm/bridge/Buy.js.map +1 -1
- package/dist/esm/bridge/Token.js +150 -0
- package/dist/esm/bridge/Token.js.map +1 -0
- package/dist/esm/bridge/index.js +1 -0
- package/dist/esm/bridge/index.js.map +1 -1
- package/dist/esm/extensions/erc1155/read/getNFTs.js +9 -2
- package/dist/esm/extensions/erc1155/read/getNFTs.js.map +1 -1
- package/dist/esm/extensions/erc721/read/getNFTs.js +9 -2
- package/dist/esm/extensions/erc721/read/getNFTs.js.map +1 -1
- package/dist/esm/pay/convert/cryptoToFiat.js +6 -38
- package/dist/esm/pay/convert/cryptoToFiat.js.map +1 -1
- package/dist/esm/pay/convert/fiatToCrypto.js +6 -38
- package/dist/esm/pay/convert/fiatToCrypto.js.map +1 -1
- package/dist/esm/pay/convert/get-token.js +16 -0
- package/dist/esm/pay/convert/get-token.js.map +1 -0
- package/dist/esm/react/core/hooks/transaction/useSendTransaction.js +1 -1
- package/dist/esm/react/core/hooks/transaction/useSendTransaction.js.map +1 -1
- package/dist/esm/react/core/utils/wallet.js +0 -47
- package/dist/esm/react/core/utils/wallet.js.map +1 -1
- package/dist/esm/react/native/ui/connect/ConnectedModal.js +5 -5
- package/dist/esm/react/native/ui/connect/ConnectedModal.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/Details.js +7 -7
- package/dist/esm/react/web/ui/ConnectWallet/Details.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/TransactionModeScreen.js +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/TransactionModeScreen.js.map +1 -1
- package/dist/esm/react/web/ui/TransactionButton/DepositScreen.js +1 -1
- package/dist/esm/react/web/ui/TransactionButton/DepositScreen.js.map +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/esm/wallets/manager/index.js +1 -2
- package/dist/esm/wallets/manager/index.js.map +1 -1
- package/dist/esm/wallets/smart/is-smart-wallet.js +61 -5
- package/dist/esm/wallets/smart/is-smart-wallet.js.map +1 -1
- package/dist/types/bridge/Buy.d.ts +7 -1
- package/dist/types/bridge/Buy.d.ts.map +1 -1
- package/dist/types/bridge/Token.d.ts +140 -0
- package/dist/types/bridge/Token.d.ts.map +1 -0
- package/dist/types/bridge/index.d.ts +1 -0
- package/dist/types/bridge/index.d.ts.map +1 -1
- package/dist/types/extensions/erc1155/read/getNFTs.d.ts.map +1 -1
- package/dist/types/pay/convert/cryptoToFiat.d.ts.map +1 -1
- package/dist/types/pay/convert/fiatToCrypto.d.ts.map +1 -1
- package/dist/types/pay/convert/get-token.d.ts +3 -0
- package/dist/types/pay/convert/get-token.d.ts.map +1 -0
- package/dist/types/react/core/hooks/transaction/useSendTransaction.d.ts.map +1 -1
- package/dist/types/react/core/utils/wallet.d.ts +1 -5
- package/dist/types/react/core/utils/wallet.d.ts.map +1 -1
- package/dist/types/react/native/ui/connect/ConnectedModal.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/Details.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/TransactionModeScreen.d.ts.map +1 -1
- package/dist/types/version.d.ts +1 -1
- package/dist/types/wallets/manager/index.d.ts.map +1 -1
- package/dist/types/wallets/smart/is-smart-wallet.d.ts +5 -1
- package/dist/types/wallets/smart/is-smart-wallet.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/bridge/Buy.ts +7 -1
- package/src/bridge/Token.test.ts +90 -0
- package/src/bridge/Token.ts +184 -0
- package/src/bridge/index.ts +1 -0
- package/src/extensions/erc1155/read/getNFTs.ts +8 -2
- package/src/extensions/erc721/read/getNFTs.ts +8 -2
- package/src/pay/convert/cryptoToFiat.test.ts +1 -18
- package/src/pay/convert/cryptoToFiat.ts +6 -52
- package/src/pay/convert/fiatToCrypto.test.ts +1 -18
- package/src/pay/convert/fiatToCrypto.ts +6 -51
- package/src/pay/convert/get-token.ts +24 -0
- package/src/react/core/hooks/transaction/useSendTransaction.ts +1 -1
- package/src/react/core/utils/wallet.ts +1 -49
- package/src/react/native/ui/connect/ConnectedModal.tsx +5 -5
- package/src/react/web/ui/ConnectWallet/Details.tsx +7 -7
- package/src/react/web/ui/ConnectWallet/screens/Buy/TransactionModeScreen.tsx +1 -1
- package/src/react/web/ui/TransactionButton/DepositScreen.tsx +1 -1
- package/src/version.ts +1 -1
- package/src/wallets/manager/index.ts +1 -2
- package/src/wallets/smart/is-smart-wallet.test.ts +163 -1
- package/src/wallets/smart/is-smart-wallet.ts +62 -5
- package/dist/cjs/react/core/utils/isSmartWallet.js +0 -12
- package/dist/cjs/react/core/utils/isSmartWallet.js.map +0 -1
- package/dist/cjs/wallets/smart/get-smart-wallet-config.js +0 -23
- package/dist/cjs/wallets/smart/get-smart-wallet-config.js.map +0 -1
- package/dist/esm/react/core/utils/isSmartWallet.js +0 -9
- package/dist/esm/react/core/utils/isSmartWallet.js.map +0 -1
- package/dist/esm/wallets/smart/get-smart-wallet-config.js +0 -20
- package/dist/esm/wallets/smart/get-smart-wallet-config.js.map +0 -1
- package/dist/types/react/core/utils/isSmartWallet.d.ts +0 -3
- package/dist/types/react/core/utils/isSmartWallet.d.ts.map +0 -1
- package/dist/types/wallets/smart/get-smart-wallet-config.d.ts +0 -13
- package/dist/types/wallets/smart/get-smart-wallet-config.d.ts.map +0 -1
- package/src/react/core/utils/isSmartWallet.test.ts +0 -19
- package/src/react/core/utils/isSmartWallet.ts +0 -12
- package/src/react/core/utils/wallet.test.ts +0 -77
- package/src/wallets/smart/get-smart-wallet-config.test.ts +0 -67
- package/src/wallets/smart/get-smart-wallet-config.ts +0 -24
package/dist/cjs/bridge/Buy.js
CHANGED
@@ -156,6 +156,8 @@ async function quote(options) {
|
|
156
156
|
* destinationChainId: 10,
|
157
157
|
* destinationTokenAddress: NATIVE_TOKEN_ADDRESS,
|
158
158
|
* amount: toWei("0.01"),
|
159
|
+
* sender: "0x...",
|
160
|
+
* receiver: "0x...",
|
159
161
|
* client: thirdwebClient,
|
160
162
|
* });
|
161
163
|
* ```
|
@@ -241,6 +243,8 @@ async function quote(options) {
|
|
241
243
|
* destinationChainId: 10,
|
242
244
|
* destinationTokenAddress: NATIVE_TOKEN_ADDRESS,
|
243
245
|
* amount: toWei("0.01"),
|
246
|
+
* sender: "0x...",
|
247
|
+
* receiver: "0x...",
|
244
248
|
* purchaseData: {
|
245
249
|
* size: "large",
|
246
250
|
* shippingAddress: "123 Main St, New York, NY 10001",
|
@@ -258,6 +262,8 @@ async function quote(options) {
|
|
258
262
|
* destinationChainId: 10,
|
259
263
|
* destinationTokenAddress: NATIVE_TOKEN_ADDRESS,
|
260
264
|
* amount: toWei("0.01"),
|
265
|
+
* sender: "0x...",
|
266
|
+
* receiver: "0x...",
|
261
267
|
* maxSteps: 2, // Will only return a quote for routes with 2 or fewer steps
|
262
268
|
* client: thirdwebClient,
|
263
269
|
* });
|
@@ -271,7 +277,7 @@ async function quote(options) {
|
|
271
277
|
* @param options.amount - The amount of the destination token to receive.
|
272
278
|
* @param options.sender - The address of the sender.
|
273
279
|
* @param options.receiver - The address of the recipient.
|
274
|
-
* @param options.purchaseData - Arbitrary data to be passed to the purchase function and included with any webhooks or status calls.
|
280
|
+
* @param [options.purchaseData] - Arbitrary data to be passed to the purchase function and included with any webhooks or status calls.
|
275
281
|
* @param [options.maxSteps] - Limit the number of total steps in the route.
|
276
282
|
* @param options.client - Your thirdweb client.
|
277
283
|
*
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Buy.js","sourceRoot":"","sources":["../../../src/bridge/Buy.ts"],"names":[],"mappings":";;AAuGA,sBAoDC;
|
1
|
+
{"version":3,"file":"Buy.js","sourceRoot":"","sources":["../../../src/bridge/Buy.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,153 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.tokens = tokens;
|
4
|
+
const domains_js_1 = require("../utils/domains.js");
|
5
|
+
const fetch_js_1 = require("../utils/fetch.js");
|
6
|
+
const Errors_js_1 = require("./types/Errors.js");
|
7
|
+
/**
|
8
|
+
* Retrieves supported Universal Bridge tokens based on the provided filters.
|
9
|
+
*
|
10
|
+
* When multiple filters are specified, a token must satisfy all filters to be included (it acts as an AND operator).
|
11
|
+
*
|
12
|
+
* @example
|
13
|
+
* ```typescript
|
14
|
+
* import { Bridge } from "thirdweb";
|
15
|
+
*
|
16
|
+
* const tokens = await Bridge.tokens({
|
17
|
+
* client: thirdwebClient,
|
18
|
+
* });
|
19
|
+
* ```
|
20
|
+
*
|
21
|
+
* Returned tokens might look something like:
|
22
|
+
* ```typescript
|
23
|
+
* [
|
24
|
+
* {
|
25
|
+
* chainId: 1,
|
26
|
+
* address: "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",
|
27
|
+
* decimals: 18,
|
28
|
+
* symbol: "ETH",
|
29
|
+
* name: "Ethereum",
|
30
|
+
* iconUri: "https://assets.relay.link/icons/1/light.png",
|
31
|
+
* priceUsd: 2000.50
|
32
|
+
* },
|
33
|
+
* {
|
34
|
+
* chainId: 1,
|
35
|
+
* address: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
|
36
|
+
* decimals: 6,
|
37
|
+
* symbol: "USDC",
|
38
|
+
* name: "USD Coin",
|
39
|
+
* iconUri: "https://assets.coingecko.com/coins/images/6319/large/USD_Coin_icon.png",
|
40
|
+
* priceUsd: 1.00
|
41
|
+
* }
|
42
|
+
* ]
|
43
|
+
* ```
|
44
|
+
*
|
45
|
+
* You can filter for specific chains or tokens:
|
46
|
+
* ```typescript
|
47
|
+
* import { Bridge } from "thirdweb";
|
48
|
+
*
|
49
|
+
* // Get all tokens on Ethereum mainnet
|
50
|
+
* const ethTokens = await Bridge.tokens({
|
51
|
+
* chainId: 1,
|
52
|
+
* client: thirdwebClient,
|
53
|
+
* });
|
54
|
+
* ```
|
55
|
+
*
|
56
|
+
* You can search for tokens by symbol or name:
|
57
|
+
* ```typescript
|
58
|
+
* import { Bridge } from "thirdweb";
|
59
|
+
*
|
60
|
+
* // Search for USDC tokens
|
61
|
+
* const usdcTokens = await Bridge.tokens({
|
62
|
+
* symbol: "USDC",
|
63
|
+
* client: thirdwebClient,
|
64
|
+
* });
|
65
|
+
*
|
66
|
+
* // Search for tokens by name
|
67
|
+
* const ethereumTokens = await Bridge.tokens({
|
68
|
+
* name: "Ethereum",
|
69
|
+
* client: thirdwebClient,
|
70
|
+
* });
|
71
|
+
* ```
|
72
|
+
*
|
73
|
+
* You can filter by a specific token address:
|
74
|
+
* ```typescript
|
75
|
+
* import { Bridge } from "thirdweb";
|
76
|
+
*
|
77
|
+
* // Get a specific token
|
78
|
+
* const token = await Bridge.tokens({
|
79
|
+
* tokenAddress: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
|
80
|
+
* client: thirdwebClient,
|
81
|
+
* });
|
82
|
+
* ```
|
83
|
+
*
|
84
|
+
* The returned tokens will be limited based on the API. You can paginate through the results using the `limit` and `offset` parameters:
|
85
|
+
* ```typescript
|
86
|
+
* import { Bridge } from "thirdweb";
|
87
|
+
*
|
88
|
+
* // Get the first 50 tokens
|
89
|
+
* const tokens = await Bridge.tokens({
|
90
|
+
* limit: 50,
|
91
|
+
* offset: 0,
|
92
|
+
* client: thirdwebClient,
|
93
|
+
* });
|
94
|
+
*
|
95
|
+
* // Get the next 50 tokens
|
96
|
+
* const nextTokens = await Bridge.tokens({
|
97
|
+
* limit: 50,
|
98
|
+
* offset: 50,
|
99
|
+
* client: thirdwebClient,
|
100
|
+
* });
|
101
|
+
* ```
|
102
|
+
*
|
103
|
+
* @param options - The options for retrieving tokens.
|
104
|
+
* @param options.client - Your thirdweb client.
|
105
|
+
* @param options.chainId - Filter by a specific chain ID.
|
106
|
+
* @param options.tokenAddress - Filter by a specific token address.
|
107
|
+
* @param options.symbol - Filter by token symbol.
|
108
|
+
* @param options.name - Filter by token name.
|
109
|
+
* @param options.limit - Number of tokens to return (min: 1, default: 100).
|
110
|
+
* @param options.offset - Number of tokens to skip (min: 0, default: 0).
|
111
|
+
*
|
112
|
+
* @returns A promise that resolves to an array of tokens.
|
113
|
+
*
|
114
|
+
* @throws Will throw an error if there is an issue fetching the tokens.
|
115
|
+
* @bridge
|
116
|
+
* @beta
|
117
|
+
*/
|
118
|
+
async function tokens(options) {
|
119
|
+
const { client, chainId, tokenAddress, symbol, name, limit, offset } = options;
|
120
|
+
const clientFetch = (0, fetch_js_1.getClientFetch)(client);
|
121
|
+
const url = new URL(`${(0, domains_js_1.getThirdwebBaseUrl)("bridge")}/v1/tokens`);
|
122
|
+
if (chainId !== null && chainId !== undefined) {
|
123
|
+
url.searchParams.set("chainId", chainId.toString());
|
124
|
+
}
|
125
|
+
if (tokenAddress) {
|
126
|
+
url.searchParams.set("tokenAddress", tokenAddress);
|
127
|
+
}
|
128
|
+
if (symbol) {
|
129
|
+
url.searchParams.set("symbol", symbol);
|
130
|
+
}
|
131
|
+
if (name) {
|
132
|
+
url.searchParams.set("name", name);
|
133
|
+
}
|
134
|
+
if (limit !== undefined) {
|
135
|
+
url.searchParams.set("limit", limit.toString());
|
136
|
+
}
|
137
|
+
if (offset !== null && offset !== undefined) {
|
138
|
+
url.searchParams.set("offset", offset.toString());
|
139
|
+
}
|
140
|
+
const response = await clientFetch(url.toString());
|
141
|
+
if (!response.ok) {
|
142
|
+
const errorJson = await response.json();
|
143
|
+
throw new Errors_js_1.ApiError({
|
144
|
+
code: errorJson.code || "UNKNOWN_ERROR",
|
145
|
+
message: errorJson.message || response.statusText,
|
146
|
+
correlationId: errorJson.correlationId || undefined,
|
147
|
+
statusCode: response.status,
|
148
|
+
});
|
149
|
+
}
|
150
|
+
const { data } = await response.json();
|
151
|
+
return data;
|
152
|
+
}
|
153
|
+
//# sourceMappingURL=Token.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"Token.js","sourceRoot":"","sources":["../../../src/bridge/Token.ts"],"names":[],"mappings":";;AAqHA,wBAuCC;AA3JD,oDAAyD;AACzD,gDAAmD;AACnD,iDAA6C;AAG7C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8GG;AACI,KAAK,UAAU,MAAM,CAAC,OAAuB;IAClD,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,GAClE,OAAO,CAAC;IAEV,MAAM,WAAW,GAAG,IAAA,yBAAc,EAAC,MAAM,CAAC,CAAC;IAC3C,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,IAAA,+BAAkB,EAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IAEjE,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC9C,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IACtD,CAAC;IACD,IAAI,YAAY,EAAE,CAAC;QACjB,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;IACrD,CAAC;IACD,IAAI,MAAM,EAAE,CAAC;QACX,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACzC,CAAC;IACD,IAAI,IAAI,EAAE,CAAC;QACT,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC;IACD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;IAClD,CAAC;IACD,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QAC5C,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;IACpD,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;IACnD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACxC,MAAM,IAAI,oBAAQ,CAAC;YACjB,IAAI,EAAE,SAAS,CAAC,IAAI,IAAI,eAAe;YACvC,OAAO,EAAE,SAAS,CAAC,OAAO,IAAI,QAAQ,CAAC,UAAU;YACjD,aAAa,EAAE,SAAS,CAAC,aAAa,IAAI,SAAS;YACnD,UAAU,EAAE,QAAQ,CAAC,MAAM;SAC5B,CAAC,CAAC;IACL,CAAC;IAED,MAAM,EAAE,IAAI,EAAE,GAAsB,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IAC1D,OAAO,IAAI,CAAC;AACd,CAAC"}
|
package/dist/cjs/bridge/index.js
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.parse = exports.chains = exports.routes = exports.status = exports.Webhook = exports.Onramp = exports.Transfer = exports.Sell = exports.Buy = void 0;
|
3
|
+
exports.parse = exports.tokens = exports.chains = exports.routes = exports.status = exports.Webhook = exports.Onramp = exports.Transfer = exports.Sell = exports.Buy = void 0;
|
4
4
|
exports.Buy = require("./Buy.js");
|
5
5
|
exports.Sell = require("./Sell.js");
|
6
6
|
exports.Transfer = require("./Transfer.js");
|
@@ -12,6 +12,8 @@ var Routes_js_1 = require("./Routes.js");
|
|
12
12
|
Object.defineProperty(exports, "routes", { enumerable: true, get: function () { return Routes_js_1.routes; } });
|
13
13
|
var Chains_js_1 = require("./Chains.js");
|
14
14
|
Object.defineProperty(exports, "chains", { enumerable: true, get: function () { return Chains_js_1.chains; } });
|
15
|
+
var Token_js_1 = require("./Token.js");
|
16
|
+
Object.defineProperty(exports, "tokens", { enumerable: true, get: function () { return Token_js_1.tokens; } });
|
15
17
|
var Webhook_js_1 = require("./Webhook.js");
|
16
18
|
Object.defineProperty(exports, "parse", { enumerable: true, get: function () { return Webhook_js_1.parse; } });
|
17
19
|
//# sourceMappingURL=index.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/bridge/index.ts"],"names":[],"mappings":";;;AAAA,kCAAgC;AAChC,oCAAkC;AAClC,4CAA0C;AAC1C,wCAAsC;AACtC,0CAAwC;AACxC,yCAAqC;AAA5B,mGAAA,MAAM,OAAA;AACf,yCAAqC;AAA5B,mGAAA,MAAM,OAAA;AACf,yCAAqC;AAA5B,mGAAA,MAAM,OAAA;AACf,2CAAqC;AAA5B,mGAAA,KAAK,OAAA"}
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/bridge/index.ts"],"names":[],"mappings":";;;AAAA,kCAAgC;AAChC,oCAAkC;AAClC,4CAA0C;AAC1C,wCAAsC;AACtC,0CAAwC;AACxC,yCAAqC;AAA5B,mGAAA,MAAM,OAAA;AACf,yCAAqC;AAA5B,mGAAA,MAAM,OAAA;AACf,yCAAqC;AAA5B,mGAAA,MAAM,OAAA;AACf,uCAAoC;AAA3B,kGAAA,MAAM,OAAA;AACf,2CAAqC;AAA5B,mGAAA,KAAK,OAAA"}
|
@@ -52,8 +52,15 @@ async function getNFTsFromInsight(options) {
|
|
52
52
|
const currentOffset = start ?? 0;
|
53
53
|
const expectedResultLength = Math.min(count, Math.max(0, Number(supply) - currentOffset));
|
54
54
|
if (result.length < expectedResultLength) {
|
55
|
-
|
56
|
-
|
55
|
+
try {
|
56
|
+
// fresh contracts might be delayed in indexing, so we fallback to RPC
|
57
|
+
// must use await here
|
58
|
+
return await getNFTsFromRPC(options);
|
59
|
+
}
|
60
|
+
catch {
|
61
|
+
// if RPC fails, we return the result from insight
|
62
|
+
return result;
|
63
|
+
}
|
57
64
|
}
|
58
65
|
return result;
|
59
66
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"getNFTs.js","sourceRoot":"","sources":["../../../../../src/extensions/erc1155/read/getNFTs.ts"],"names":[],"mappings":";;AAgDA,0BAYC;
|
1
|
+
{"version":3,"file":"getNFTs.js","sourceRoot":"","sources":["../../../../../src/extensions/erc1155/read/getNFTs.ts"],"names":[],"mappings":"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"}
|
@@ -77,8 +77,15 @@ async function getNFTsFromInsight(options) {
|
|
77
77
|
Number(supplyInfo.startTokenId) -
|
78
78
|
currentOffset));
|
79
79
|
if (result.length < expectedResultLength) {
|
80
|
-
|
81
|
-
|
80
|
+
try {
|
81
|
+
// fresh contracts might be delayed in indexing, so we fallback to RPC
|
82
|
+
// must use await here
|
83
|
+
return await getNFTsFromRPC(options);
|
84
|
+
}
|
85
|
+
catch {
|
86
|
+
// if RPC fails, we return the result from insight
|
87
|
+
return result;
|
88
|
+
}
|
82
89
|
}
|
83
90
|
return result;
|
84
91
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"getNFTs.js","sourceRoot":"","sources":["../../../../../src/extensions/erc721/read/getNFTs.ts"],"names":[],"mappings":";;AAmEA,0BAYC;AAcD,gDAMC;AAnGD,wDAA4D;AAE5D,wDAA+C;AAE/C,oFAA8E;AAC9E,kFAGuD;AACvD,uGAGsE;AACtE,2CAAwD;AAExD,MAAM,uBAAuB,GAAG,IAAI,CAAC;AAoCrC;;;;;;;;;;;;;;;GAeG;AACI,KAAK,UAAU,OAAO,CAC3B,OAA8C;IAE9C,MAAM,EAAE,UAAU,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;IACtC,IAAI,UAAU,EAAE,CAAC;QACf,IAAI,CAAC;YACH,OAAO,MAAM,kBAAkB,CAAC,OAAO,CAAC,CAAC;QAC3C,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,MAAM,cAAc,CAAC,OAAO,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IACD,OAAO,MAAM,cAAc,CAAC,OAAO,CAAC,CAAC;AACvC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAgB,kBAAkB,CAAC,kBAA4B;IAC7D,OAAO,CACL,IAAA,6BAAiB,EAAC,kBAAkB,CAAC;QACrC,CAAC,IAAA,uCAAsB,EAAC,kBAAkB,CAAC;YACzC,IAAA,mDAA4B,EAAC,kBAAkB,CAAC,CAAC,CACpD,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,kBAAkB,CAC/B,OAA8C;IAE9C,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,GAAG,MAAM,CAAC,uBAAuB,CAAC,EAAE,GAAG,OAAO,CAAC;IAE7E,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC7C,IAAA,0BAAe,EAAC;YACd,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,MAAM,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC;YACxB,eAAe,EAAE,QAAQ,CAAC,OAAO;YACjC,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,KAAK;YAC7C,YAAY,EAAE;gBACZ,KAAK,EAAE,KAAK;gBACZ,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;aACpD;SACF,CAAC;QACF,aAAa,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;YAClC,SAAS,EAAE,CAAC;YACZ,YAAY,EAAE,CAAC;SAChB,CAAC,CAAC;KACJ,CAAC,CAAC;IAEH,MAAM,aAAa,GAAG,KAAK,IAAI,CAAC,CAAC;IACjC,MAAM,oBAAoB,GAAG,IAAI,CAAC,GAAG,CACnC,KAAK,EACL,IAAI,CAAC,GAAG,CACN,CAAC,EACD,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC;QAC1B,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC;QAC/B,aAAa,CAChB,CACF,CAAC;IACF,IAAI,MAAM,CAAC,MAAM,GAAG,oBAAoB,EAAE,CAAC;QACzC,sEAAsE;
|
1
|
+
{"version":3,"file":"getNFTs.js","sourceRoot":"","sources":["../../../../../src/extensions/erc721/read/getNFTs.ts"],"names":[],"mappings":"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"}
|
@@ -1,15 +1,8 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
3
|
exports.convertCryptoToFiat = convertCryptoToFiat;
|
4
|
-
const insight_1 = require("@thirdweb-dev/insight");
|
5
|
-
const addresses_js_1 = require("../../constants/addresses.js");
|
6
|
-
const get_bytecode_js_1 = require("../../contract/actions/get-bytecode.js");
|
7
|
-
const contract_js_1 = require("../../contract/contract.js");
|
8
4
|
const address_js_1 = require("../../utils/address.js");
|
9
|
-
const
|
10
|
-
const fetch_js_1 = require("../../utils/fetch.js");
|
11
|
-
const json_js_1 = require("../../utils/json.js");
|
12
|
-
const withCache_js_1 = require("../../utils/promise/withCache.js");
|
5
|
+
const get_token_js_1 = require("./get-token.js");
|
13
6
|
/**
|
14
7
|
* Get a price of a token (using tokenAddress + chainId) in fiat.
|
15
8
|
* Only USD is supported at the moment.
|
@@ -33,7 +26,7 @@ const withCache_js_1 = require("../../utils/promise/withCache.js");
|
|
33
26
|
* @returns a number representing the price (in selected fiat) of "x" token, with "x" being the `fromAmount`.
|
34
27
|
*/
|
35
28
|
async function convertCryptoToFiat(options) {
|
36
|
-
const { client, fromTokenAddress,
|
29
|
+
const { client, fromTokenAddress, chain, fromAmount } = options;
|
37
30
|
if (Number(fromAmount) === 0) {
|
38
31
|
return { result: 0 };
|
39
32
|
}
|
@@ -47,35 +40,10 @@ async function convertCryptoToFiat(options) {
|
|
47
40
|
if (!(0, address_js_1.isAddress)(fromTokenAddress)) {
|
48
41
|
throw new Error("Invalid fromTokenAddress. Expected a valid EVM contract address");
|
49
42
|
}
|
50
|
-
|
51
|
-
if (
|
52
|
-
|
53
|
-
address: fromTokenAddress,
|
54
|
-
chain,
|
55
|
-
client,
|
56
|
-
})).catch(() => undefined);
|
57
|
-
if (!bytecode || bytecode === "0x") {
|
58
|
-
throw new Error(`Error: ${fromTokenAddress} on chainId: ${chain.id} is not a valid contract address.`);
|
59
|
-
}
|
43
|
+
const price = await (0, get_token_js_1.getTokenPrice)(client, fromTokenAddress, chain.id);
|
44
|
+
if (!price) {
|
45
|
+
throw new Error(`Error: Failed to fetch price for token ${fromTokenAddress} on chainId: ${chain.id}`);
|
60
46
|
}
|
61
|
-
|
62
|
-
baseUrl: `https://${(0, domains_js_1.getThirdwebDomains)().insight}`,
|
63
|
-
fetch: (0, fetch_js_1.getClientFetch)(client),
|
64
|
-
query: {
|
65
|
-
address: fromTokenAddress,
|
66
|
-
chain_id: [chain.id],
|
67
|
-
},
|
68
|
-
}), {
|
69
|
-
cacheKey: `convert-fiat-to-crypto-${to}-${chain.id}`,
|
70
|
-
cacheTime: 1000 * 60, // 1 minute cache
|
71
|
-
});
|
72
|
-
if (result.error) {
|
73
|
-
throw new Error(`Failed to fetch ${to} value for token (${fromTokenAddress}) on chainId: ${chain.id} - ${result.response.status} ${result.response.statusText} - ${result.error ? (0, json_js_1.stringify)(result.error) : "Unknown error"}`);
|
74
|
-
}
|
75
|
-
const firstResult = result.data?.data[0];
|
76
|
-
if (!firstResult) {
|
77
|
-
throw new Error(`Failed to fetch ${to} value for token (${fromTokenAddress}) on chainId: ${chain.id}`);
|
78
|
-
}
|
79
|
-
return { result: firstResult.price_usd * fromAmount };
|
47
|
+
return { result: price * fromAmount };
|
80
48
|
}
|
81
49
|
//# sourceMappingURL=cryptoToFiat.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"cryptoToFiat.js","sourceRoot":"","sources":["../../../../src/pay/convert/cryptoToFiat.ts"],"names":[],"mappings":";;
|
1
|
+
{"version":3,"file":"cryptoToFiat.js","sourceRoot":"","sources":["../../../../src/pay/convert/cryptoToFiat.ts"],"names":[],"mappings":";;AAuDA,kDA2BC;AA/ED,uDAAmD;AACnD,iDAA+C;AA6B/C;;;;;;;;;;;;;;;;;;;;;GAqBG;AACI,KAAK,UAAU,mBAAmB,CACvC,OAAkC;IAElC,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;IAChE,IAAI,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;IACvB,CAAC;IACD,wDAAwD;IACxD,IAAI,KAAK,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,8CAA8C,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC;IAC7E,CAAC;IACD,wEAAwE;IACxE,0EAA0E;IAE1E,qCAAqC;IACrC,IAAI,CAAC,IAAA,sBAAS,EAAC,gBAAgB,CAAC,EAAE,CAAC;QACjC,MAAM,IAAI,KAAK,CACb,iEAAiE,CAClE,CAAC;IACJ,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,IAAA,4BAAa,EAAC,MAAM,EAAE,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;IACtE,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CACb,0CAA0C,gBAAgB,gBAAgB,KAAK,CAAC,EAAE,EAAE,CACrF,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,KAAK,GAAG,UAAU,EAAE,CAAC;AACxC,CAAC"}
|
@@ -1,15 +1,8 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
3
|
exports.convertFiatToCrypto = convertFiatToCrypto;
|
4
|
-
const insight_1 = require("@thirdweb-dev/insight");
|
5
|
-
const addresses_js_1 = require("../../constants/addresses.js");
|
6
|
-
const get_bytecode_js_1 = require("../../contract/actions/get-bytecode.js");
|
7
|
-
const contract_js_1 = require("../../contract/contract.js");
|
8
4
|
const address_js_1 = require("../../utils/address.js");
|
9
|
-
const
|
10
|
-
const fetch_js_1 = require("../../utils/fetch.js");
|
11
|
-
const json_js_1 = require("../../utils/json.js");
|
12
|
-
const withCache_js_1 = require("../../utils/promise/withCache.js");
|
5
|
+
const get_token_js_1 = require("./get-token.js");
|
13
6
|
/**
|
14
7
|
* Convert a fiat value to a token.
|
15
8
|
* Currently only USD is supported.
|
@@ -33,7 +26,7 @@ const withCache_js_1 = require("../../utils/promise/withCache.js");
|
|
33
26
|
* @buyCrypto
|
34
27
|
*/
|
35
28
|
async function convertFiatToCrypto(options) {
|
36
|
-
const { client,
|
29
|
+
const { client, to, chain, fromAmount } = options;
|
37
30
|
if (Number(fromAmount) === 0) {
|
38
31
|
return { result: 0 };
|
39
32
|
}
|
@@ -47,35 +40,10 @@ async function convertFiatToCrypto(options) {
|
|
47
40
|
if (!(0, address_js_1.isAddress)(to)) {
|
48
41
|
throw new Error("Invalid `to`. Expected a valid EVM contract address");
|
49
42
|
}
|
50
|
-
|
51
|
-
if (
|
52
|
-
|
53
|
-
address: to,
|
54
|
-
chain,
|
55
|
-
client,
|
56
|
-
})).catch(() => undefined);
|
57
|
-
if (!bytecode || bytecode === "0x") {
|
58
|
-
throw new Error(`Error: ${to} on chainId: ${chain.id} is not a valid contract address.`);
|
59
|
-
}
|
43
|
+
const price = await (0, get_token_js_1.getTokenPrice)(client, to, chain.id);
|
44
|
+
if (!price || price === 0) {
|
45
|
+
throw new Error(`Error: Failed to fetch price for token ${to} on chainId: ${chain.id}`);
|
60
46
|
}
|
61
|
-
|
62
|
-
baseUrl: `https://${(0, domains_js_1.getThirdwebDomains)().insight}`,
|
63
|
-
fetch: (0, fetch_js_1.getClientFetch)(client),
|
64
|
-
query: {
|
65
|
-
address: to,
|
66
|
-
chain_id: [chain.id],
|
67
|
-
},
|
68
|
-
}), {
|
69
|
-
cacheKey: `convert-fiat-to-crypto-${to}-${chain.id}`,
|
70
|
-
cacheTime: 1000 * 60, // 1 minute cache
|
71
|
-
});
|
72
|
-
if (result.error) {
|
73
|
-
throw new Error(`Failed to fetch ${from} value for token (${to}) on chainId: ${chain.id} - ${result.response.status} ${result.response.statusText} - ${result.error ? (0, json_js_1.stringify)(result.error) : "Unknown error"}`);
|
74
|
-
}
|
75
|
-
const firstResult = result.data?.data[0];
|
76
|
-
if (!firstResult || firstResult.price_usd === 0) {
|
77
|
-
throw new Error(`Failed to fetch ${from} value for token (${to}) on chainId: ${chain.id}`);
|
78
|
-
}
|
79
|
-
return { result: fromAmount / firstResult.price_usd };
|
47
|
+
return { result: fromAmount / price };
|
80
48
|
}
|
81
49
|
//# sourceMappingURL=fiatToCrypto.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"fiatToCrypto.js","sourceRoot":"","sources":["../../../../src/pay/convert/fiatToCrypto.ts"],"names":[],"mappings":";;
|
1
|
+
{"version":3,"file":"fiatToCrypto.js","sourceRoot":"","sources":["../../../../src/pay/convert/fiatToCrypto.ts"],"names":[],"mappings":";;AAwDA,kDAyBC;AA9ED,uDAAmD;AACnD,iDAA+C;AA8B/C;;;;;;;;;;;;;;;;;;;;;GAqBG;AACI,KAAK,UAAU,mBAAmB,CACvC,OAAkC;IAElC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;IAClD,IAAI,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;IACvB,CAAC;IACD,wDAAwD;IACxD,IAAI,KAAK,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,8CAA8C,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC;IAC7E,CAAC;IACD,wEAAwE;IACxE,0EAA0E;IAE1E,qCAAqC;IACrC,IAAI,CAAC,IAAA,sBAAS,EAAC,EAAE,CAAC,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;IACzE,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,IAAA,4BAAa,EAAC,MAAM,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;IACxD,IAAI,CAAC,KAAK,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CACb,0CAA0C,EAAE,gBAAgB,KAAK,CAAC,EAAE,EAAE,CACvE,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,UAAU,GAAG,KAAK,EAAE,CAAC;AACxC,CAAC"}
|
@@ -0,0 +1,19 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.getTokenPrice = getTokenPrice;
|
4
|
+
const Token_js_1 = require("../../bridge/Token.js");
|
5
|
+
const withCache_js_1 = require("../../utils/promise/withCache.js");
|
6
|
+
async function getTokenPrice(client, tokenAddress, chainId) {
|
7
|
+
return (0, withCache_js_1.withCache)(async () => {
|
8
|
+
const result = await (0, Token_js_1.tokens)({
|
9
|
+
client,
|
10
|
+
tokenAddress,
|
11
|
+
chainId,
|
12
|
+
});
|
13
|
+
return result[0]?.priceUsd;
|
14
|
+
}, {
|
15
|
+
cacheKey: `get-token-price-${tokenAddress}-${chainId}`,
|
16
|
+
cacheTime: 1000 * 60, // 1 minute
|
17
|
+
});
|
18
|
+
}
|
19
|
+
//# sourceMappingURL=get-token.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"get-token.js","sourceRoot":"","sources":["../../../../src/pay/convert/get-token.ts"],"names":[],"mappings":";;AAIA,sCAmBC;AAvBD,oDAA+C;AAE/C,mEAA6D;AAEtD,KAAK,UAAU,aAAa,CACjC,MAAsB,EACtB,YAAoB,EACpB,OAAe;IAEf,OAAO,IAAA,wBAAS,EACd,KAAK,IAAI,EAAE;QACT,MAAM,MAAM,GAAG,MAAM,IAAA,iBAAM,EAAC;YAC1B,MAAM;YACN,YAAY;YACZ,OAAO;SACR,CAAC,CAAC;QACH,OAAO,MAAM,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC;IAC7B,CAAC,EACD;QACE,QAAQ,EAAE,mBAAmB,YAAY,IAAI,OAAO,EAAE;QACtD,SAAS,EAAE,IAAI,GAAG,EAAE,EAAE,WAAW;KAClC,CACF,CAAC;AACJ,CAAC"}
|
@@ -7,9 +7,9 @@ const Bridge = require("../../../../bridge/index.js");
|
|
7
7
|
const send_transaction_js_1 = require("../../../../transaction/actions/send-transaction.js");
|
8
8
|
const utils_js_1 = require("../../../../transaction/utils.js");
|
9
9
|
const resolve_promised_value_js_1 = require("../../../../utils/promise/resolve-promised-value.js");
|
10
|
+
const is_smart_wallet_js_1 = require("../../../../wallets/smart/is-smart-wallet.js");
|
10
11
|
const getTokenBalance_js_1 = require("../../../../wallets/utils/getTokenBalance.js");
|
11
12
|
const getWalletBalance_js_1 = require("../../../../wallets/utils/getWalletBalance.js");
|
12
|
-
const wallet_js_1 = require("../../utils/wallet.js");
|
13
13
|
/**
|
14
14
|
* A hook to send a transaction.
|
15
15
|
* @returns A mutation object to send a transaction.
|
@@ -90,7 +90,7 @@ function useSendTransactionCore(args) {
|
|
90
90
|
: undefined,
|
91
91
|
(0, utils_js_1.getTransactionGasCost)(tx, account.address),
|
92
92
|
]);
|
93
|
-
const gasSponsored = (0,
|
93
|
+
const gasSponsored = (0, is_smart_wallet_js_1.hasSponsoredTransactionsEnabled)(wallet);
|
94
94
|
const txGasCost = gasSponsored ? 0n : gasCost;
|
95
95
|
const nativeCost = nativeValue + txGasCost;
|
96
96
|
const shouldShowModal = (erc20Value > 0n &&
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"useSendTransaction.js","sourceRoot":"","sources":["../../../../../../src/react/core/hooks/transaction/useSendTransaction.ts"],"names":[],"mappings":";;AA8HA,wDAqKC;AAnSD,uDAA4E;AAC5E,+DAAmE;AACnE,sDAAsD;AAMtD,6FAAsF;AAGtF,+DAAyE;AAEzE,mGAA2F;AAE3F,qFAA+E;AAC/E,uFAAiF;
|
1
|
+
{"version":3,"file":"useSendTransaction.js","sourceRoot":"","sources":["../../../../../../src/react/core/hooks/transaction/useSendTransaction.ts"],"names":[],"mappings":"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"}
|
@@ -5,7 +5,6 @@ exports.useEnsAvatar = useEnsAvatar;
|
|
5
5
|
exports.useConnectedWalletDetails = useConnectedWalletDetails;
|
6
6
|
exports.useWalletInfo = useWalletInfo;
|
7
7
|
exports.useWalletImage = useWalletImage;
|
8
|
-
exports.hasSponsoredTransactionsEnabled = hasSponsoredTransactionsEnabled;
|
9
8
|
const react_query_1 = require("@tanstack/react-query");
|
10
9
|
const ethereum_js_1 = require("../../../chains/chain-definitions/ethereum.js");
|
11
10
|
const resolve_avatar_js_1 = require("../../../extensions/ens/resolve-avatar.js");
|
@@ -13,7 +12,6 @@ const resolve_name_js_1 = require("../../../extensions/ens/resolve-name.js");
|
|
13
12
|
const address_js_1 = require("../../../utils/address.js");
|
14
13
|
const avatar_js_1 = require("../../../utils/ens/avatar.js");
|
15
14
|
const getWalletInfo_js_1 = require("../../../wallets/__generated__/getWalletInfo.js");
|
16
|
-
const is_ecosystem_wallet_js_1 = require("../../../wallets/ecosystem/is-ecosystem-wallet.js");
|
17
15
|
const useWalletBalance_js_1 = require("../hooks/others/useWalletBalance.js");
|
18
16
|
const useSocialProfiles_js_1 = require("../social/useSocialProfiles.js");
|
19
17
|
/**
|
@@ -186,50 +184,4 @@ function useWalletImage(id) {
|
|
186
184
|
enabled: !!id,
|
187
185
|
});
|
188
186
|
}
|
189
|
-
/**
|
190
|
-
* @internal
|
191
|
-
*/
|
192
|
-
function hasSponsoredTransactionsEnabled(wallet) {
|
193
|
-
if (!wallet) {
|
194
|
-
return false;
|
195
|
-
}
|
196
|
-
let sponsoredTransactionsEnabled = false;
|
197
|
-
if (wallet && wallet.id === "smart") {
|
198
|
-
const options = wallet.getConfig();
|
199
|
-
if ("sponsorGas" in options) {
|
200
|
-
sponsoredTransactionsEnabled = options.sponsorGas;
|
201
|
-
}
|
202
|
-
if ("gasless" in options) {
|
203
|
-
sponsoredTransactionsEnabled = options.gasless;
|
204
|
-
}
|
205
|
-
}
|
206
|
-
if (wallet && (wallet.id === "inApp" || (0, is_ecosystem_wallet_js_1.isEcosystemWallet)(wallet))) {
|
207
|
-
const options = wallet.getConfig();
|
208
|
-
if (options && "smartAccount" in options && options.smartAccount) {
|
209
|
-
const smartOptions = options.smartAccount;
|
210
|
-
if ("sponsorGas" in smartOptions) {
|
211
|
-
sponsoredTransactionsEnabled = smartOptions.sponsorGas;
|
212
|
-
}
|
213
|
-
if ("gasless" in smartOptions) {
|
214
|
-
sponsoredTransactionsEnabled = smartOptions.gasless;
|
215
|
-
}
|
216
|
-
}
|
217
|
-
if (options?.executionMode) {
|
218
|
-
const execMode = options.executionMode;
|
219
|
-
if (execMode.mode === "EIP4337") {
|
220
|
-
const smartOptions = execMode.smartAccount;
|
221
|
-
if (smartOptions && "sponsorGas" in smartOptions) {
|
222
|
-
sponsoredTransactionsEnabled = smartOptions.sponsorGas;
|
223
|
-
}
|
224
|
-
if (smartOptions && "gasless" in smartOptions) {
|
225
|
-
sponsoredTransactionsEnabled = smartOptions.gasless;
|
226
|
-
}
|
227
|
-
}
|
228
|
-
if (execMode.mode === "EIP7702") {
|
229
|
-
sponsoredTransactionsEnabled = execMode.sponsorGas || false;
|
230
|
-
}
|
231
|
-
}
|
232
|
-
}
|
233
|
-
return sponsoredTransactionsEnabled;
|
234
|
-
}
|
235
187
|
//# sourceMappingURL=wallet.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../../../../src/react/core/utils/wallet.ts"],"names":[],"mappings":";;
|
1
|
+
{"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../../../../src/react/core/utils/wallet.ts"],"names":[],"mappings":"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"}
|