@0xsquid/react-hooks 1.0.41 → 1.0.43

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.
@@ -1,6 +1,6 @@
1
1
  import { ChainType } from "@0xsquid/squid-types";
2
2
  import { CoinbaseWalletConnector } from "@wagmi/connectors/coinbaseWallet";
3
- import { InjectedConnector } from "@wagmi/connectors/injected";
3
+ import { InjectedConnector as WagmiInjectedConnector } from "@wagmi/connectors/injected";
4
4
  import { MetaMaskConnector } from "@wagmi/connectors/metaMask";
5
5
  import { WalletConnectConnector } from "@wagmi/connectors/walletConnect";
6
6
  import { walletIcons } from "../assets/images/icons/wallets";
@@ -54,7 +54,34 @@ export var PriorityConnectors;
54
54
  PriorityConnectors["Safe"] = "safe";
55
55
  PriorityConnectors["LedgerLive"] = "ledgerLive";
56
56
  })(PriorityConnectors || (PriorityConnectors = {}));
57
- export const wallets = [
57
+ function definedInWindow(path) {
58
+ if (!path)
59
+ return false;
60
+ const parts = path.split(".");
61
+ let obj = window;
62
+ for (let part of parts) {
63
+ if (!obj[part]) {
64
+ return false;
65
+ }
66
+ obj = obj[part];
67
+ }
68
+ return Boolean(obj);
69
+ }
70
+ // create a wrapper class that overrides the connector id
71
+ class InjectedConnector extends WagmiInjectedConnector {
72
+ constructor({ chains, options, id, }) {
73
+ super({
74
+ chains,
75
+ options,
76
+ });
77
+ this.id = id;
78
+ }
79
+ }
80
+ // Mark isInstalled as optional
81
+ // wallets here can define a custom check for isInstalled
82
+ // for example Metamask snaps or WalletConnect.
83
+ // If no custom check is provided, we will use the default one
84
+ const _wallets = [
58
85
  {
59
86
  name: "Trust Wallet",
60
87
  type: ChainType.EVM,
@@ -62,6 +89,7 @@ export const wallets = [
62
89
  connectorName: "Trust Wallet",
63
90
  windowFlag: WindowWalletFlag.TrustWallet,
64
91
  connector: (chains) => new InjectedConnector({
92
+ id: "trustwallet",
65
93
  chains,
66
94
  options: {
67
95
  name: "Trust Wallet",
@@ -109,6 +137,7 @@ export const wallets = [
109
137
  connectorName: "XDefi",
110
138
  windowFlag: WindowWalletFlag.Xdefi,
111
139
  connector: (chains) => new InjectedConnector({
140
+ id: "xdefi",
112
141
  chains,
113
142
  options: {
114
143
  name: "XDefi",
@@ -130,6 +159,7 @@ export const wallets = [
130
159
  connectorName: "Rabby",
131
160
  windowFlag: WindowWalletFlag.Rabby,
132
161
  connector: (chains) => new InjectedConnector({
162
+ id: "rabby",
133
163
  chains,
134
164
  options: {
135
165
  name: "Rabby",
@@ -152,6 +182,7 @@ export const wallets = [
152
182
  connectorName: "Injected",
153
183
  windowFlag: WindowWalletFlag.Injected,
154
184
  connector: (chains) => new InjectedConnector({
185
+ id: "injected",
155
186
  chains,
156
187
  }),
157
188
  icon: walletIcons.injected,
@@ -164,6 +195,7 @@ export const wallets = [
164
195
  connectorName: "Zerion",
165
196
  windowFlag: WindowWalletFlag.Zerion,
166
197
  connector: (chains) => new InjectedConnector({
198
+ id: "zerion",
167
199
  chains,
168
200
  options: {
169
201
  name: "Zerion",
@@ -181,6 +213,9 @@ export const wallets = [
181
213
  },
182
214
  {
183
215
  name: "WalletConnect",
216
+ isInstalled() {
217
+ return false;
218
+ },
184
219
  type: ChainType.EVM,
185
220
  connectorId: "walletConnect",
186
221
  connectorName: "WalletConnect",
@@ -198,6 +233,10 @@ export const wallets = [
198
233
  },
199
234
  {
200
235
  name: "Blockchain.com",
236
+ isInstalled() {
237
+ // Uses WalletConnect under the hood, so cannot be installed
238
+ return false;
239
+ },
201
240
  type: ChainType.EVM,
202
241
  connectorId: "blockchaindotcom",
203
242
  connectorName: "Blockchain.com",
@@ -220,6 +259,7 @@ export const wallets = [
220
259
  connectorName: "Cosmostation",
221
260
  windowFlag: WindowWalletFlag.CosmostationEVM,
222
261
  connector: (chains) => new InjectedConnector({
262
+ id: "cosmostation",
223
263
  chains,
224
264
  options: {
225
265
  name: "Cosmostation",
@@ -240,6 +280,7 @@ export const wallets = [
240
280
  connectorName: "BitGet Wallet",
241
281
  windowFlag: WindowWalletFlag.BitGet,
242
282
  connector: (chains) => new InjectedConnector({
283
+ id: "bitget",
243
284
  chains,
244
285
  options: {
245
286
  name: "BitGet Wallet",
@@ -262,6 +303,7 @@ export const wallets = [
262
303
  connectorName: "okx",
263
304
  windowFlag: WindowWalletFlag.OKX,
264
305
  connector: (chains) => new InjectedConnector({
306
+ id: "okx",
265
307
  chains,
266
308
  options: {
267
309
  name: "OKX",
@@ -284,6 +326,7 @@ export const wallets = [
284
326
  connectorName: "Coin98",
285
327
  windowFlag: WindowWalletFlag.Coin98,
286
328
  connector: (chains) => new InjectedConnector({
329
+ id: "coin98",
287
330
  chains,
288
331
  options: {
289
332
  name: "Coin98",
@@ -304,6 +347,7 @@ export const wallets = [
304
347
  connectorName: "Defi Connect",
305
348
  windowFlag: WindowWalletFlag.DefiConnect,
306
349
  connector: (chains) => new InjectedConnector({
350
+ id: "deficonnect",
307
351
  chains,
308
352
  options: {
309
353
  name: "Defi Connect",
@@ -354,6 +398,7 @@ export const wallets = [
354
398
  connectorName: "Cosmostation Cosmos",
355
399
  windowFlag: WindowWalletFlag.CosmostationCosmos,
356
400
  connector: (chains) => new InjectedConnector({
401
+ id: "cosmostationCosmos",
357
402
  chains,
358
403
  options: {
359
404
  name: "Cosmostation",
@@ -379,6 +424,10 @@ export const wallets = [
379
424
  },
380
425
  {
381
426
  name: "Cosmos Extension",
427
+ isInstalled() {
428
+ // we need to check if the snap is installed
429
+ return false;
430
+ },
382
431
  type: ChainType.COSMOS,
383
432
  connectorId: "snapper",
384
433
  connectorName: "Cosmos Extension",
@@ -409,6 +458,18 @@ export const wallets = [
409
458
  isMobile: true,
410
459
  },
411
460
  ];
461
+ export const wallets = _wallets.map((wallet) => {
462
+ // if no custom check is provided, we use the default one
463
+ if (!wallet.isInstalled) {
464
+ return {
465
+ ...wallet,
466
+ isInstalled() {
467
+ return definedInWindow(wallet.windowFlag);
468
+ },
469
+ };
470
+ }
471
+ return wallet;
472
+ });
412
473
  export const axelarSuccessStatuses = [
413
474
  "destination_executed",
414
475
  "executed",
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/core/constants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/core/constants.ts"],"names":[],"mappings":"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"}
@@ -5,8 +5,8 @@ export type TypedWindow = Window & typeof globalThis & {
5
5
  };
6
6
  export declare enum WindowWalletFlag {
7
7
  Binance = "bbcSignTx",
8
- Coinbase = "isCoinbaseWallet",
9
- MetaMask = "isMetaMask",
8
+ Coinbase = "coinbaseWalletExtension",
9
+ MetaMask = "ethereum.isMetaMask",
10
10
  WalletConnect = "walletConnect",
11
11
  CosmostationEVM = "cosmostation",
12
12
  BlockchainDotCom = "blockchaindotcom",
@@ -19,11 +19,11 @@ export declare enum WindowWalletFlag {
19
19
  TrustWallet = "trustwallet",
20
20
  FetchAi = "keplr",
21
21
  Coin98 = "coin98",
22
- Rabby = "isRabby",
22
+ Rabby = "ethereum.isRabby",
23
23
  OKX = "okxwallet",
24
24
  Injected = "injected",
25
25
  DefiConnect = "deficonnectProvider",
26
- Zerion = "isZerion",
26
+ Zerion = "zerionWallet",
27
27
  Snapper = "cosmos",
28
28
  Exodus = "exodus"
29
29
  }
@@ -40,6 +40,7 @@ export interface Wallet {
40
40
  direction?: "from" | "to";
41
41
  connectedAddress?: string;
42
42
  isMobile?: boolean;
43
+ isInstalled: () => boolean;
43
44
  }
44
45
  export interface AddEthereumChainParameter {
45
46
  chainId: string;
@@ -1,8 +1,8 @@
1
1
  export var WindowWalletFlag;
2
2
  (function (WindowWalletFlag) {
3
3
  WindowWalletFlag["Binance"] = "bbcSignTx";
4
- WindowWalletFlag["Coinbase"] = "isCoinbaseWallet";
5
- WindowWalletFlag["MetaMask"] = "isMetaMask";
4
+ WindowWalletFlag["Coinbase"] = "coinbaseWalletExtension";
5
+ WindowWalletFlag["MetaMask"] = "ethereum.isMetaMask";
6
6
  WindowWalletFlag["WalletConnect"] = "walletConnect";
7
7
  WindowWalletFlag["CosmostationEVM"] = "cosmostation";
8
8
  WindowWalletFlag["BlockchainDotCom"] = "blockchaindotcom";
@@ -15,11 +15,11 @@ export var WindowWalletFlag;
15
15
  WindowWalletFlag["TrustWallet"] = "trustwallet";
16
16
  WindowWalletFlag["FetchAi"] = "keplr";
17
17
  WindowWalletFlag["Coin98"] = "coin98";
18
- WindowWalletFlag["Rabby"] = "isRabby";
18
+ WindowWalletFlag["Rabby"] = "ethereum.isRabby";
19
19
  WindowWalletFlag["OKX"] = "okxwallet";
20
20
  WindowWalletFlag["Injected"] = "injected";
21
21
  WindowWalletFlag["DefiConnect"] = "deficonnectProvider";
22
- WindowWalletFlag["Zerion"] = "isZerion";
22
+ WindowWalletFlag["Zerion"] = "zerionWallet";
23
23
  WindowWalletFlag["Snapper"] = "cosmos";
24
24
  WindowWalletFlag["Exodus"] = "exodus";
25
25
  })(WindowWalletFlag || (WindowWalletFlag = {}));
@@ -1 +1 @@
1
- {"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../../src/core/types/wallet.ts"],"names":[],"mappings":"AASA,MAAM,CAAN,IAAY,gBAuBX;AAvBD,WAAY,gBAAgB;IAC1B,yCAAqB,CAAA;IACrB,iDAA6B,CAAA;IAC7B,2CAAuB,CAAA;IACvB,mDAA+B,CAAA;IAC/B,oDAAgC,CAAA;IAChC,yDAAqC,CAAA;IACrC,uEAAmD,CAAA;IACnD,mCAAe,CAAA;IACf,iCAAa,CAAA;IACb,iCAAa,CAAA;IACb,6CAAyB,CAAA;IACzB,sCAAkB,CAAA;IAClB,+CAA2B,CAAA;IAC3B,qCAAiB,CAAA;IACjB,qCAAiB,CAAA;IACjB,qCAAiB,CAAA;IACjB,qCAAiB,CAAA;IACjB,yCAAqB,CAAA;IACrB,uDAAmC,CAAA;IACnC,uCAAmB,CAAA;IACnB,sCAAkB,CAAA;IAClB,qCAAiB,CAAA;AACnB,CAAC,EAvBW,gBAAgB,KAAhB,gBAAgB,QAuB3B"}
1
+ {"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../../src/core/types/wallet.ts"],"names":[],"mappings":"AASA,MAAM,CAAN,IAAY,gBAuBX;AAvBD,WAAY,gBAAgB;IAC1B,yCAAqB,CAAA;IACrB,wDAAoC,CAAA;IACpC,oDAAgC,CAAA;IAChC,mDAA+B,CAAA;IAC/B,oDAAgC,CAAA;IAChC,yDAAqC,CAAA;IACrC,uEAAmD,CAAA;IACnD,mCAAe,CAAA;IACf,iCAAa,CAAA;IACb,iCAAa,CAAA;IACb,6CAAyB,CAAA;IACzB,sCAAkB,CAAA;IAClB,+CAA2B,CAAA;IAC3B,qCAAiB,CAAA;IACjB,qCAAiB,CAAA;IACjB,8CAA0B,CAAA;IAC1B,qCAAiB,CAAA;IACjB,yCAAqB,CAAA;IACrB,uDAAmC,CAAA;IACnC,2CAAuB,CAAA;IACvB,sCAAkB,CAAA;IAClB,qCAAiB,CAAA;AACnB,CAAC,EAvBW,gBAAgB,KAAhB,gBAAgB,QAuB3B"}
@@ -5,6 +5,7 @@ export * from "./internal/errorService";
5
5
  export * from "./internal/eventService";
6
6
  export * from "./internal/numberService";
7
7
  export * from "./internal/priceService";
8
+ export * from "./internal/searchService";
8
9
  export * from "./internal/transactionService";
9
10
  export * from "./internal/transactionStatusService";
10
11
  export * from "./internal/walletService";
@@ -5,6 +5,7 @@ export * from "./internal/errorService";
5
5
  export * from "./internal/eventService";
6
6
  export * from "./internal/numberService";
7
7
  export * from "./internal/priceService";
8
+ export * from "./internal/searchService";
8
9
  export * from "./internal/transactionService";
9
10
  export * from "./internal/transactionStatusService";
10
11
  export * from "./internal/walletService";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qCAAqC,CAAC;AACpD,cAAc,0BAA0B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qCAAqC,CAAC;AACpD,cAAc,0BAA0B,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { ChainData, Token } from "@0xsquid/squid-types";
2
+ /**
3
+ * Searches for tokens based on a query string, prioritizing results in the following order:
4
+ * 1. Exact address
5
+ * 2. ETH on Ethereum mainnet (chainId 1)
6
+ * 3. Native tokens of chains matching the query (e.g., BNB when searching for "binance")
7
+ * 4. Exact matches for native tokens (e.g., native FTM when searching for "FTM")
8
+ * 5. Other exact matches for token names or symbols
9
+ * 6. Other native tokens that partially match the query
10
+ * 7. Remaining tokens that partially match the query
11
+ *
12
+ * @param query - The search query string
13
+ * @param tokens - Array of all available tokens
14
+ * @param chains - Array of chain data
15
+ * @returns An array of tokens sorted according to the priority described above
16
+ */
17
+ export declare const searchTokens: (query: string, tokens: Token[], chains: ChainData[]) => Token[];
@@ -0,0 +1,84 @@
1
+ import Fuse from "fuse.js";
2
+ import { nativeEvmTokenAddress } from "../../core/constants";
3
+ const fuseSearchOptions = {
4
+ isCaseSensitive: false,
5
+ threshold: 0.1,
6
+ findAllMatches: false,
7
+ includeMatches: true,
8
+ keys: [
9
+ { name: "symbol", weight: 1 },
10
+ { name: "name", weight: 0.8 },
11
+ ],
12
+ };
13
+ /**
14
+ * Searches for tokens based on a query string, prioritizing results in the following order:
15
+ * 1. Exact address
16
+ * 2. ETH on Ethereum mainnet (chainId 1)
17
+ * 3. Native tokens of chains matching the query (e.g., BNB when searching for "binance")
18
+ * 4. Exact matches for native tokens (e.g., native FTM when searching for "FTM")
19
+ * 5. Other exact matches for token names or symbols
20
+ * 6. Other native tokens that partially match the query
21
+ * 7. Remaining tokens that partially match the query
22
+ *
23
+ * @param query - The search query string
24
+ * @param tokens - Array of all available tokens
25
+ * @param chains - Array of chain data
26
+ * @returns An array of tokens sorted according to the priority described above
27
+ */
28
+ export const searchTokens = (query, tokens, chains) => {
29
+ // Query must at least be 2 characters long
30
+ if (query.length <= 1)
31
+ return tokens;
32
+ // Check for exact address match first
33
+ const exactAddressMatch = tokens.find((token) => token.address.toLowerCase() === query.toLowerCase());
34
+ if (exactAddressMatch) {
35
+ return [exactAddressMatch];
36
+ }
37
+ // Init fuse.js
38
+ const fuse = new Fuse(tokens, fuseSearchOptions);
39
+ // Perform the search with fuse
40
+ const searchResults = fuse.search(query);
41
+ // Find native tokens that match the query or related chain names
42
+ const nativeTokens = chains
43
+ .filter((chain) => chain.nativeCurrency.symbol.toLowerCase() === query.toLowerCase() ||
44
+ chain.nativeCurrency.name.toLowerCase().includes(query.toLowerCase()) ||
45
+ chain.networkName.toLowerCase().includes(query.toLowerCase()) ||
46
+ chain.axelarChainName.toLowerCase().includes(query.toLowerCase()))
47
+ .map((chain) => tokens.find((token) => token.chainId === chain.chainId &&
48
+ token.address.toLowerCase() === nativeEvmTokenAddress))
49
+ .filter((token) => token !== undefined);
50
+ // Separate ETH on Ethereum mainnet (chainId 1) for top priority
51
+ const ethMainnet = nativeTokens.find((token) => token.symbol === "ETH" && token.chainId === "1");
52
+ const otherNativeTokens = nativeTokens.filter((token) => !(token.symbol === "ETH" && token.chainId === "1"));
53
+ // Find exact matches for token name or symbol
54
+ const exactMatches = searchResults
55
+ .map((result) => result.item)
56
+ .filter((token) => token.name.toLowerCase() === query.toLowerCase() ||
57
+ token.symbol.toLowerCase() === query.toLowerCase());
58
+ // Prioritize native tokens within exact matches
59
+ const prioritizedExactMatches = exactMatches.sort((a, b) => {
60
+ const aIsNative = a.address.toLowerCase() === nativeEvmTokenAddress;
61
+ const bIsNative = b.address.toLowerCase() === nativeEvmTokenAddress;
62
+ if (aIsNative && !bIsNative)
63
+ return -1;
64
+ if (!aIsNative && bIsNative)
65
+ return 1;
66
+ return 0;
67
+ });
68
+ // Collect remaining search results that aren't exact matches
69
+ const otherResults = searchResults
70
+ .map((result) => result.item)
71
+ .filter((token) => !(token.name.toLowerCase() === query.toLowerCase() ||
72
+ token.symbol.toLowerCase() === query.toLowerCase()));
73
+ // Combine all results in the desired priority order
74
+ const combinedResults = [
75
+ ...(ethMainnet ? [ethMainnet] : []),
76
+ ...otherNativeTokens,
77
+ ...prioritizedExactMatches,
78
+ ...otherResults,
79
+ ];
80
+ // Remove any duplicate tokens from the results
81
+ const uniqueResults = Array.from(new Set(combinedResults));
82
+ return uniqueResults;
83
+ };
84
+ //# sourceMappingURL=searchService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"searchService.js","sourceRoot":"","sources":["../../../src/services/internal/searchService.ts"],"names":[],"mappings":"AACA,OAAO,IAAI,MAAM,SAAS,CAAC;AAC3B,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAE7D,MAAM,iBAAiB,GAA6B;IAClD,eAAe,EAAE,KAAK;IACtB,SAAS,EAAE,GAAG;IACd,cAAc,EAAE,KAAK;IACrB,cAAc,EAAE,IAAI;IACpB,IAAI,EAAE;QACJ,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE;QAC7B,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE;KAC9B;CACF,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAC1B,KAAa,EACb,MAAe,EACf,MAAmB,EACV,EAAE;IACX,2CAA2C;IAC3C,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC;QAAE,OAAO,MAAM,CAAC;IAErC,sCAAsC;IACtC,MAAM,iBAAiB,GAAG,MAAM,CAAC,IAAI,CACnC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,WAAW,EAAE,CAC/D,CAAC;IACF,IAAI,iBAAiB,EAAE;QACrB,OAAO,CAAC,iBAAiB,CAAC,CAAC;KAC5B;IAED,eAAe;IACf,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;IAEjD,+BAA+B;IAC/B,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAEzC,iEAAiE;IACjE,MAAM,YAAY,GAAG,MAAM;SACxB,MAAM,CACL,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,WAAW,EAAE;QACjE,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QACrE,KAAK,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QAC7D,KAAK,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CACpE;SACA,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CACb,MAAM,CAAC,IAAI,CACT,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO;QAC/B,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,qBAAqB,CACxD,CACF;SACA,MAAM,CAAC,CAAC,KAAK,EAAkB,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC;IAE1D,gEAAgE;IAChE,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,CAClC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,KAAK,IAAI,KAAK,CAAC,OAAO,KAAK,GAAG,CAC3D,CAAC;IACF,MAAM,iBAAiB,GAAG,YAAY,CAAC,MAAM,CAC3C,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,KAAK,IAAI,KAAK,CAAC,OAAO,KAAK,GAAG,CAAC,CAC9D,CAAC;IAEF,8CAA8C;IAC9C,MAAM,YAAY,GAAG,aAAa;SAC/B,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC;SAC5B,MAAM,CACL,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,WAAW,EAAE;QAChD,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,WAAW,EAAE,CACrD,CAAC;IAEJ,gDAAgD;IAChD,MAAM,uBAAuB,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACzD,MAAM,SAAS,GAAG,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,qBAAqB,CAAC;QACpE,MAAM,SAAS,GAAG,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,qBAAqB,CAAC;QACpE,IAAI,SAAS,IAAI,CAAC,SAAS;YAAE,OAAO,CAAC,CAAC,CAAC;QACvC,IAAI,CAAC,SAAS,IAAI,SAAS;YAAE,OAAO,CAAC,CAAC;QACtC,OAAO,CAAC,CAAC;IACX,CAAC,CAAC,CAAC;IAEH,6DAA6D;IAC7D,MAAM,YAAY,GAAG,aAAa;SAC/B,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC;SAC5B,MAAM,CACL,CAAC,KAAK,EAAE,EAAE,CACR,CAAC,CACC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,WAAW,EAAE;QAChD,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,WAAW,EAAE,CACnD,CACJ,CAAC;IAEJ,oDAAoD;IACpD,MAAM,eAAe,GAAG;QACtB,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACnC,GAAG,iBAAiB;QACpB,GAAG,uBAAuB;QAC1B,GAAG,YAAY;KAChB,CAAC;IAEF,+CAA+C;IAC/C,MAAM,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC;IAE3D,OAAO,aAAa,CAAC;AACvB,CAAC,CAAC"}
@@ -12,7 +12,6 @@ export declare const isCosmosAddressValid: (chainPrefix: string, address: string
12
12
  export declare const isWalletAddressValid: (chainData?: ChainData, address?: string) => boolean;
13
13
  export declare const getWalletByConnectorID: (connectorID: ConnectorID) => Wallet | undefined;
14
14
  export declare const getCosmosChainInfosObject: (chain: ChainData) => ChainInfo;
15
- export declare const isWalletExtensionInstalled: (wallet: Wallet) => boolean;
16
15
  export declare const redirectExtensionStoreIfNotInstalled: (wallet: Wallet) => void;
17
16
  /**
18
17
  * Get the value of an object property using a string path
@@ -50,4 +49,18 @@ export declare const getAllKeysForSupportedCosmosChains: (chainIds: string[], ke
50
49
  }[]>;
51
50
  export declare const metamaskIcon: string | undefined;
52
51
  export declare const EVMnetworkNotSupportedErrorCode = 4902;
52
+ /**
53
+ * Sort order:
54
+ * 1. Connected wallet
55
+ * 2. Installed wallets
56
+ * 3. The rest
57
+ *
58
+ * On mobile, WalletConnect is always on top
59
+ *
60
+ * @returns The sorted wallets
61
+ */
62
+ export declare function sortWallets(a: Wallet, b: Wallet, { isMobile, connectedWallet, }: {
63
+ isMobile: boolean;
64
+ connectedWallet?: Wallet;
65
+ }): 1 | 0 | -1;
53
66
  export {};
@@ -71,27 +71,10 @@ export const getCosmosChainInfosObject = (chain) => {
71
71
  rpc: cosmosChain.rpc.split("?chain")[0],
72
72
  };
73
73
  };
74
- export const isWalletExtensionInstalled = (wallet) => {
75
- if ((wallet.connectorId === "metaMask" && !window.ethereum) ||
76
- (wallet.connectorId === "keplr" && !window.keplr) ||
77
- (wallet.connectorId === "leap" && !window.leap) ||
78
- // Cosmostation has two different connectors for different extensions
79
- ((wallet.connectorId === "cosmostationCosmos" ||
80
- wallet.connectorId === "cosmostation") &&
81
- !window.cosmostation) ||
82
- (wallet.connectorId === "xdefi" && !window.xfi) ||
83
- (wallet.connectorId === "bitget" && !window.bitkeep) ||
84
- (wallet.connectorId === "exodus" && !window.exodus) ||
85
- (wallet.connectorId === "trustwallet" &&
86
- !window.trustwallet)) {
87
- return false;
88
- }
89
- return true;
90
- };
91
74
  export const redirectExtensionStoreIfNotInstalled = (wallet) => {
92
75
  const { userAgent } = navigator;
93
76
  let link;
94
- if (!isWalletExtensionInstalled(wallet)) {
77
+ if (!wallet.isInstalled()) {
95
78
  if (userAgent.indexOf("Firefox") > -1) {
96
79
  link = walletStoreLinks[wallet.connectorId].firefox;
97
80
  }
@@ -185,4 +168,37 @@ export const getAllKeysForSupportedCosmosChains = async (chainIds, keplrTypeWall
185
168
  };
186
169
  export const metamaskIcon = getWalletByConnectorID("metaMask")?.icon;
187
170
  export const EVMnetworkNotSupportedErrorCode = 4902;
171
+ /**
172
+ * Sort order:
173
+ * 1. Connected wallet
174
+ * 2. Installed wallets
175
+ * 3. The rest
176
+ *
177
+ * On mobile, WalletConnect is always on top
178
+ *
179
+ * @returns The sorted wallets
180
+ */
181
+ export function sortWallets(a, b, { isMobile, connectedWallet, }) {
182
+ if (connectedWallet?.connectorId === a.connectorId) {
183
+ return -1;
184
+ }
185
+ if (a.isInstalled() && !b.isInstalled()) {
186
+ return -1;
187
+ }
188
+ if (!a.isInstalled() && b.isInstalled()) {
189
+ return 1;
190
+ }
191
+ if (isMobile) {
192
+ if (a.connectorId === "walletConnect" &&
193
+ b.connectorId !== "walletConnect") {
194
+ return -1;
195
+ }
196
+ if (a.connectorId !== "walletConnect" &&
197
+ b.connectorId === "walletConnect") {
198
+ return 1;
199
+ }
200
+ return 0;
201
+ }
202
+ return 0;
203
+ }
188
204
  //# sourceMappingURL=walletService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"walletService.js","sourceRoot":"","sources":["../../../src/services/internal/walletService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"walletService.js","sourceRoot":"","sources":["../../../src/services/internal/walletService.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,8 @@
1
+ import { Squid } from "@0xsquid/sdk";
1
2
  import { ChainData, Token } from "@0xsquid/squid-types";
2
3
  export interface OnlineSquidData {
3
4
  tokens: Record<string, Record<string, Token>>;
4
5
  chains: Record<string, ChainData>;
5
6
  }
6
7
  export declare const fetchSquidData: () => Promise<OnlineSquidData>;
8
+ export declare const fetchNativeSquidData: () => Promise<Squid>;
@@ -24,4 +24,12 @@ export const fetchSquidData = async () => {
24
24
  await squid.init();
25
25
  return remapSquidData(squid);
26
26
  };
27
+ export const fetchNativeSquidData = async () => {
28
+ const squid = new Squid({
29
+ integratorId: INTEGRATOR_ID,
30
+ baseUrl: "https://v2.api.squidrouter.com",
31
+ });
32
+ await squid.init();
33
+ return squid;
34
+ };
27
35
  //# sourceMappingURL=fetchSquidData.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fetchSquidData.js","sourceRoot":"","sources":["../../src/tests/fetchSquidData.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAGrC,MAAM,aAAa,GAAG,mBAAmB,CAAC;AAO1C,MAAM,cAAc,GAAG,CAAC,SAAgB,EAAE,EAAE;IAC1C,MAAM,MAAM,GAA0C,EAAE,CAAC;IACzD,MAAM,MAAM,GAA8B,EAAE,CAAC;IAE7C,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QACjC,MAAM,SAAS,GAAG,KAAK,CAAC,iBAAiB,CAAC,WAAW,EAAE,CAAC;QAExD,MAAM,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC,MAAM;aACjC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO,CAAC;aAClD,MAAM,CACL,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;YACb,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC;YACjC,GAAG,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC;YACzB,OAAO,GAAG,CAAC;QACb,CAAC,EACD,EAA2B,CAC5B,CAAC;QAEJ,MAAM,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC;IAC5B,CAAC,CAAC,CAAC;IAEH,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;AAC5B,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,IAA8B,EAAE;IACjE,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC;QACtB,YAAY,EAAE,aAAa;QAC3B,OAAO,EAAE,gCAAgC;KAC1C,CAAC,CAAC;IACH,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC;IAEnB,OAAO,cAAc,CAAC,KAAK,CAAC,CAAC;AAC/B,CAAC,CAAC"}
1
+ {"version":3,"file":"fetchSquidData.js","sourceRoot":"","sources":["../../src/tests/fetchSquidData.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAGrC,MAAM,aAAa,GAAG,mBAAmB,CAAC;AAO1C,MAAM,cAAc,GAAG,CAAC,SAAgB,EAAE,EAAE;IAC1C,MAAM,MAAM,GAA0C,EAAE,CAAC;IACzD,MAAM,MAAM,GAA8B,EAAE,CAAC;IAE7C,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QACjC,MAAM,SAAS,GAAG,KAAK,CAAC,iBAAiB,CAAC,WAAW,EAAE,CAAC;QAExD,MAAM,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC,MAAM;aACjC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO,CAAC;aAClD,MAAM,CACL,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;YACb,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC;YACjC,GAAG,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC;YACzB,OAAO,GAAG,CAAC;QACb,CAAC,EACD,EAA2B,CAC5B,CAAC;QAEJ,MAAM,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC;IAC5B,CAAC,CAAC,CAAC;IAEH,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;AAC5B,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,IAA8B,EAAE;IACjE,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC;QACtB,YAAY,EAAE,aAAa;QAC3B,OAAO,EAAE,gCAAgC;KAC1C,CAAC,CAAC;IACH,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC;IAEnB,OAAO,cAAc,CAAC,KAAK,CAAC,CAAC;AAC/B,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,IAAoB,EAAE;IAC7D,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC;QACtB,YAAY,EAAE,aAAa;QAC3B,OAAO,EAAE,gCAAgC;KAC1C,CAAC,CAAC;IACH,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC;IACnB,OAAO,KAAK,CAAC;AACf,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,86 @@
1
+ import { nativeEvmTokenAddress } from "../core/constants";
2
+ import { searchTokens } from "../services/internal/searchService";
3
+ import { fetchNativeSquidData } from "./fetchSquidData";
4
+ let squid = undefined;
5
+ let CHAINS = [];
6
+ let TOKENS = [];
7
+ describe("searchService", () => {
8
+ beforeAll(async () => {
9
+ squid = await fetchNativeSquidData();
10
+ CHAINS = squid?.chains ?? [];
11
+ TOKENS = squid?.tokens ?? [];
12
+ });
13
+ describe("searchTokens", () => {
14
+ it("should prioritize ETH on chainId 1", () => {
15
+ const result = searchTokens("ETH", TOKENS, CHAINS);
16
+ expect(result[0].symbol).toBe("ETH");
17
+ expect(result[0].chainId).toBe("1");
18
+ });
19
+ it("should handle native token search (FTM case)", () => {
20
+ const result = searchTokens("FTM", TOKENS, CHAINS);
21
+ expect(result[0].symbol).toBe("FTM");
22
+ expect(result[0].address.toLowerCase()).toBe(nativeEvmTokenAddress);
23
+ });
24
+ it("should return results for token address search", () => {
25
+ const testAddress = TOKENS[0].address;
26
+ const result = searchTokens(testAddress, TOKENS, CHAINS);
27
+ expect(result[0].address).toBe(testAddress);
28
+ });
29
+ it("should prioritize native token based on chain name, instead of full match of token name", () => {
30
+ const result = searchTokens("binance", TOKENS, CHAINS);
31
+ //There's one token named "Binance" but we need to return the native token on bsc first
32
+ expect(result[0].symbol).toBe("BNB");
33
+ expect(result[0].chainId).toBe("56");
34
+ // Then the token named "Binance"
35
+ expect(result[1].name.toLocaleLowerCase()).toBe("binance");
36
+ });
37
+ it("should handle case-insensitive search", () => {
38
+ const result = searchTokens("eth", TOKENS, CHAINS);
39
+ expect(result[0].symbol).toBe("ETH");
40
+ });
41
+ it("should return native ETH tokens in correct order", () => {
42
+ const result = searchTokens("ETH", TOKENS, CHAINS);
43
+ expect(result[0].symbol).toBe("ETH");
44
+ expect(result[0].chainId).toBe("1");
45
+ const nextFewResults = result.slice(1, 5);
46
+ nextFewResults.forEach((token) => {
47
+ expect(token.symbol).toBe("ETH");
48
+ expect(token.address.toLowerCase()).toBe(nativeEvmTokenAddress);
49
+ expect(token.chainId).not.toBe("1");
50
+ });
51
+ });
52
+ it("should prioritize native ETH tokens over wrapped or bridged versions", () => {
53
+ const result = searchTokens("ETH", TOKENS, CHAINS);
54
+ const nativeEthTokens = result.filter((token) => token.symbol === "ETH" &&
55
+ token.address.toLowerCase() === nativeEvmTokenAddress);
56
+ const wrappedOrBridgedEthIndex = result.findIndex((token) => ["WETH", "axlWETH"].includes(token.symbol) ||
57
+ (token.symbol === "ETH" &&
58
+ token.address.toLowerCase() !== nativeEvmTokenAddress));
59
+ expect(wrappedOrBridgedEthIndex).toBeGreaterThan(nativeEthTokens.length - 1);
60
+ });
61
+ it("should return non-ETH tokens after all native ETH tokens", () => {
62
+ const result = searchTokens("ETH", TOKENS, CHAINS);
63
+ const lastNativeEthIndex = result.findIndex((token) => token.symbol !== "ETH" ||
64
+ token.address.toLowerCase() !== nativeEvmTokenAddress);
65
+ expect(lastNativeEthIndex).toBeGreaterThan(0);
66
+ const nonEthTokens = result.slice(lastNativeEthIndex);
67
+ nonEthTokens.forEach((token) => {
68
+ expect(token.symbol !== "ETH" ||
69
+ token.address.toLowerCase() !== nativeEvmTokenAddress).toBeTruthy();
70
+ });
71
+ });
72
+ // it should return the right token for the right address
73
+ it("should return the right token for the right address", () => {
74
+ const ARB_ADDRESS = "0x912CE59144191C1204E64559FE8253a0e49E6548";
75
+ const result = searchTokens(ARB_ADDRESS, TOKENS, CHAINS);
76
+ expect(result[0].symbol).toBe("ARB");
77
+ expect(result[0].chainId).toBe("42161");
78
+ });
79
+ it("should only return the token if address is full", () => {
80
+ const PARTIAL_ARB_ADDRESS = "0x912C";
81
+ const result = searchTokens(PARTIAL_ARB_ADDRESS, TOKENS, CHAINS);
82
+ expect(result).toHaveLength(0);
83
+ });
84
+ });
85
+ });
86
+ //# sourceMappingURL=searchService.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"searchService.test.js","sourceRoot":"","sources":["../../src/tests/searchService.test.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAExD,IAAI,KAAK,GAAsB,SAAS,CAAC;AACzC,IAAI,MAAM,GAAgB,EAAE,CAAC;AAC7B,IAAI,MAAM,GAAY,EAAE,CAAC;AAEzB,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC7B,SAAS,CAAC,KAAK,IAAI,EAAE;QACnB,KAAK,GAAG,MAAM,oBAAoB,EAAE,CAAC;QACrC,MAAM,GAAG,KAAK,EAAE,MAAM,IAAI,EAAE,CAAC;QAC7B,MAAM,GAAG,KAAK,EAAE,MAAM,IAAI,EAAE,CAAC;IAC/B,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;QAC5B,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;YAC5C,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;YACnD,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACrC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;YACtD,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;YACnD,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACrC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QACtE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gDAAgD,EAAE,GAAG,EAAE;YACxD,MAAM,WAAW,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;YACtC,MAAM,MAAM,GAAG,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;YACzD,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,yFAAyF,EAAE,GAAG,EAAE;YACjG,MAAM,MAAM,GAAG,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;YACvD,uFAAuF;YACvF,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACrC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACrC,iCAAiC;YACjC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;YAC/C,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;YACnD,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;YAC1D,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;YACnD,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACrC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACpC,MAAM,cAAc,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAC1C,cAAc,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;gBAC/B,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACjC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;gBAChE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACtC,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sEAAsE,EAAE,GAAG,EAAE;YAC9E,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;YAEnD,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CACnC,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,MAAM,KAAK,KAAK;gBACtB,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,qBAAqB,CACxD,CAAC;YAEF,MAAM,wBAAwB,GAAG,MAAM,CAAC,SAAS,CAC/C,CAAC,KAAK,EAAE,EAAE,CACR,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC;gBAC1C,CAAC,KAAK,CAAC,MAAM,KAAK,KAAK;oBACrB,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,qBAAqB,CAAC,CAC3D,CAAC;YAEF,MAAM,CAAC,wBAAwB,CAAC,CAAC,eAAe,CAC9C,eAAe,CAAC,MAAM,GAAG,CAAC,CAC3B,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0DAA0D,EAAE,GAAG,EAAE;YAClE,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;YAEnD,MAAM,kBAAkB,GAAG,MAAM,CAAC,SAAS,CACzC,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,MAAM,KAAK,KAAK;gBACtB,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,qBAAqB,CACxD,CAAC;YAEF,MAAM,CAAC,kBAAkB,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;YAE9C,MAAM,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;YACtD,YAAY,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;gBAC7B,MAAM,CACJ,KAAK,CAAC,MAAM,KAAK,KAAK;oBACpB,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,qBAAqB,CACxD,CAAC,UAAU,EAAE,CAAC;YACjB,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,yDAAyD;QACzD,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;YAC7D,MAAM,WAAW,GAAG,4CAA4C,CAAC;YACjE,MAAM,MAAM,GAAG,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;YACzD,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACrC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;YACzD,MAAM,mBAAmB,GAAG,QAAQ,CAAC;YACrC,MAAM,MAAM,GAAG,YAAY,CAAC,mBAAmB,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;YACjE,MAAM,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@0xsquid/react-hooks",
3
- "version": "1.0.41",
3
+ "version": "1.0.43",
4
4
  "description": "Squid hooks monorepo",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -42,7 +42,8 @@
42
42
  "lodash": "4.17.21",
43
43
  "secretjs": "1.12.4",
44
44
  "wagmi": "^0.12.13",
45
- "zustand": "4.5.0"
45
+ "zustand": "4.5.0",
46
+ "fuse.js": "6.6.2"
46
47
  },
47
48
  "peerDependencies": {
48
49
  "ethers": "^5.7.2 || ^4.0.49",