@0xsequence/hooks 5.0.9 → 5.1.1

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.
Files changed (133) hide show
  1. package/dist/cjs/contexts/ConfigContext.d.ts +3 -0
  2. package/dist/cjs/contexts/ConfigContext.d.ts.map +1 -1
  3. package/dist/cjs/contexts/ConfigContext.js +4 -1
  4. package/dist/cjs/contexts/ConfigContext.js.map +1 -1
  5. package/dist/cjs/hooks/API/useAPIClient.d.ts +37 -0
  6. package/dist/cjs/hooks/API/useAPIClient.d.ts.map +1 -1
  7. package/dist/cjs/hooks/API/useAPIClient.js +40 -4
  8. package/dist/cjs/hooks/API/useAPIClient.js.map +1 -1
  9. package/dist/cjs/hooks/API/useGetCoinPrices.d.ts +43 -1
  10. package/dist/cjs/hooks/API/useGetCoinPrices.d.ts.map +1 -1
  11. package/dist/cjs/hooks/API/useGetCoinPrices.js +51 -1
  12. package/dist/cjs/hooks/API/useGetCoinPrices.js.map +1 -1
  13. package/dist/cjs/hooks/API/useGetCollectiblePrices.d.ts +48 -1
  14. package/dist/cjs/hooks/API/useGetCollectiblePrices.d.ts.map +1 -1
  15. package/dist/cjs/hooks/API/useGetCollectiblePrices.js +56 -1
  16. package/dist/cjs/hooks/API/useGetCollectiblePrices.js.map +1 -1
  17. package/dist/cjs/hooks/API/useGetExchangeRate.d.ts +37 -1
  18. package/dist/cjs/hooks/API/useGetExchangeRate.d.ts.map +1 -1
  19. package/dist/cjs/hooks/API/useGetExchangeRate.js +37 -1
  20. package/dist/cjs/hooks/API/useGetExchangeRate.js.map +1 -1
  21. package/dist/cjs/hooks/Combination/useGetSwapPrices.d.ts +69 -1
  22. package/dist/cjs/hooks/Combination/useGetSwapPrices.d.ts.map +1 -1
  23. package/dist/cjs/hooks/Combination/useGetSwapPrices.js +70 -14
  24. package/dist/cjs/hooks/Combination/useGetSwapPrices.js.map +1 -1
  25. package/dist/cjs/hooks/Combination/useGetSwapQuote.d.ts +74 -3
  26. package/dist/cjs/hooks/Combination/useGetSwapQuote.d.ts.map +1 -1
  27. package/dist/cjs/hooks/Combination/useGetSwapQuote.js +76 -5
  28. package/dist/cjs/hooks/Combination/useGetSwapQuote.js.map +1 -1
  29. package/dist/cjs/hooks/Indexer/useGetTransactionHistory.d.ts +1 -1
  30. package/dist/cjs/hooks/Indexer/useGetTransactionHistory.js +1 -1
  31. package/dist/cjs/hooks/Indexer/useGetTransactionHistorySummary.d.ts +66 -1
  32. package/dist/cjs/hooks/Indexer/useGetTransactionHistorySummary.d.ts.map +1 -1
  33. package/dist/cjs/hooks/Indexer/useGetTransactionHistorySummary.js +66 -1
  34. package/dist/cjs/hooks/Indexer/useGetTransactionHistorySummary.js.map +1 -1
  35. package/dist/cjs/hooks/Indexer/useIndexerClient.d.ts +98 -0
  36. package/dist/cjs/hooks/Indexer/useIndexerClient.d.ts.map +1 -1
  37. package/dist/cjs/hooks/Indexer/useIndexerClient.js +104 -6
  38. package/dist/cjs/hooks/Indexer/useIndexerClient.js.map +1 -1
  39. package/dist/cjs/hooks/IndexerGateway/useIndexerGatewayClient.d.ts.map +1 -1
  40. package/dist/cjs/hooks/IndexerGateway/useIndexerGatewayClient.js +3 -4
  41. package/dist/cjs/hooks/IndexerGateway/useIndexerGatewayClient.js.map +1 -1
  42. package/dist/cjs/hooks/Metadata/useGetContractInfo.d.ts +61 -1
  43. package/dist/cjs/hooks/Metadata/useGetContractInfo.d.ts.map +1 -1
  44. package/dist/cjs/hooks/Metadata/useGetContractInfo.js +61 -1
  45. package/dist/cjs/hooks/Metadata/useGetContractInfo.js.map +1 -1
  46. package/dist/cjs/hooks/Metadata/useGetMultipleContractsInfo.d.ts +89 -1
  47. package/dist/cjs/hooks/Metadata/useGetMultipleContractsInfo.d.ts.map +1 -1
  48. package/dist/cjs/hooks/Metadata/useGetMultipleContractsInfo.js +89 -1
  49. package/dist/cjs/hooks/Metadata/useGetMultipleContractsInfo.js.map +1 -1
  50. package/dist/cjs/hooks/Metadata/useGetTokenMetadata.d.ts +83 -1
  51. package/dist/cjs/hooks/Metadata/useGetTokenMetadata.d.ts.map +1 -1
  52. package/dist/cjs/hooks/Metadata/useGetTokenMetadata.js +83 -1
  53. package/dist/cjs/hooks/Metadata/useGetTokenMetadata.js.map +1 -1
  54. package/dist/cjs/hooks/Metadata/useMetadataClient.d.ts +36 -0
  55. package/dist/cjs/hooks/Metadata/useMetadataClient.d.ts.map +1 -1
  56. package/dist/cjs/hooks/Metadata/useMetadataClient.js +39 -4
  57. package/dist/cjs/hooks/Metadata/useMetadataClient.js.map +1 -1
  58. package/dist/cjs/hooks/useConfig.d.ts +45 -0
  59. package/dist/cjs/hooks/useConfig.d.ts.map +1 -1
  60. package/dist/cjs/hooks/useConfig.js +45 -0
  61. package/dist/cjs/hooks/useConfig.js.map +1 -1
  62. package/dist/cjs/tests/Combination/useGetSwapQuote.test.js +3 -3
  63. package/dist/cjs/tests/Combination/useGetSwapQuote.test.js.map +1 -1
  64. package/dist/cjs/tests/handlers.d.ts.map +1 -1
  65. package/dist/cjs/tests/handlers.js +14 -0
  66. package/dist/cjs/tests/handlers.js.map +1 -1
  67. package/dist/esm/contexts/ConfigContext.d.ts +3 -0
  68. package/dist/esm/contexts/ConfigContext.d.ts.map +1 -1
  69. package/dist/esm/contexts/ConfigContext.js +5 -2
  70. package/dist/esm/contexts/ConfigContext.js.map +1 -1
  71. package/dist/esm/hooks/API/useAPIClient.d.ts +37 -0
  72. package/dist/esm/hooks/API/useAPIClient.d.ts.map +1 -1
  73. package/dist/esm/hooks/API/useAPIClient.js +40 -4
  74. package/dist/esm/hooks/API/useAPIClient.js.map +1 -1
  75. package/dist/esm/hooks/API/useGetCoinPrices.d.ts +43 -1
  76. package/dist/esm/hooks/API/useGetCoinPrices.d.ts.map +1 -1
  77. package/dist/esm/hooks/API/useGetCoinPrices.js +51 -1
  78. package/dist/esm/hooks/API/useGetCoinPrices.js.map +1 -1
  79. package/dist/esm/hooks/API/useGetCollectiblePrices.d.ts +48 -1
  80. package/dist/esm/hooks/API/useGetCollectiblePrices.d.ts.map +1 -1
  81. package/dist/esm/hooks/API/useGetCollectiblePrices.js +56 -1
  82. package/dist/esm/hooks/API/useGetCollectiblePrices.js.map +1 -1
  83. package/dist/esm/hooks/API/useGetExchangeRate.d.ts +37 -1
  84. package/dist/esm/hooks/API/useGetExchangeRate.d.ts.map +1 -1
  85. package/dist/esm/hooks/API/useGetExchangeRate.js +37 -1
  86. package/dist/esm/hooks/API/useGetExchangeRate.js.map +1 -1
  87. package/dist/esm/hooks/Combination/useGetSwapPrices.d.ts +69 -1
  88. package/dist/esm/hooks/Combination/useGetSwapPrices.d.ts.map +1 -1
  89. package/dist/esm/hooks/Combination/useGetSwapPrices.js +71 -15
  90. package/dist/esm/hooks/Combination/useGetSwapPrices.js.map +1 -1
  91. package/dist/esm/hooks/Combination/useGetSwapQuote.d.ts +74 -3
  92. package/dist/esm/hooks/Combination/useGetSwapQuote.d.ts.map +1 -1
  93. package/dist/esm/hooks/Combination/useGetSwapQuote.js +77 -6
  94. package/dist/esm/hooks/Combination/useGetSwapQuote.js.map +1 -1
  95. package/dist/esm/hooks/Indexer/useGetTransactionHistory.d.ts +1 -1
  96. package/dist/esm/hooks/Indexer/useGetTransactionHistory.js +1 -1
  97. package/dist/esm/hooks/Indexer/useGetTransactionHistorySummary.d.ts +66 -1
  98. package/dist/esm/hooks/Indexer/useGetTransactionHistorySummary.d.ts.map +1 -1
  99. package/dist/esm/hooks/Indexer/useGetTransactionHistorySummary.js +66 -1
  100. package/dist/esm/hooks/Indexer/useGetTransactionHistorySummary.js.map +1 -1
  101. package/dist/esm/hooks/Indexer/useIndexerClient.d.ts +98 -0
  102. package/dist/esm/hooks/Indexer/useIndexerClient.d.ts.map +1 -1
  103. package/dist/esm/hooks/Indexer/useIndexerClient.js +104 -6
  104. package/dist/esm/hooks/Indexer/useIndexerClient.js.map +1 -1
  105. package/dist/esm/hooks/IndexerGateway/useIndexerGatewayClient.d.ts.map +1 -1
  106. package/dist/esm/hooks/IndexerGateway/useIndexerGatewayClient.js +3 -4
  107. package/dist/esm/hooks/IndexerGateway/useIndexerGatewayClient.js.map +1 -1
  108. package/dist/esm/hooks/Metadata/useGetContractInfo.d.ts +61 -1
  109. package/dist/esm/hooks/Metadata/useGetContractInfo.d.ts.map +1 -1
  110. package/dist/esm/hooks/Metadata/useGetContractInfo.js +61 -1
  111. package/dist/esm/hooks/Metadata/useGetContractInfo.js.map +1 -1
  112. package/dist/esm/hooks/Metadata/useGetMultipleContractsInfo.d.ts +89 -1
  113. package/dist/esm/hooks/Metadata/useGetMultipleContractsInfo.d.ts.map +1 -1
  114. package/dist/esm/hooks/Metadata/useGetMultipleContractsInfo.js +89 -1
  115. package/dist/esm/hooks/Metadata/useGetMultipleContractsInfo.js.map +1 -1
  116. package/dist/esm/hooks/Metadata/useGetTokenMetadata.d.ts +83 -1
  117. package/dist/esm/hooks/Metadata/useGetTokenMetadata.d.ts.map +1 -1
  118. package/dist/esm/hooks/Metadata/useGetTokenMetadata.js +83 -1
  119. package/dist/esm/hooks/Metadata/useGetTokenMetadata.js.map +1 -1
  120. package/dist/esm/hooks/Metadata/useMetadataClient.d.ts +36 -0
  121. package/dist/esm/hooks/Metadata/useMetadataClient.d.ts.map +1 -1
  122. package/dist/esm/hooks/Metadata/useMetadataClient.js +39 -4
  123. package/dist/esm/hooks/Metadata/useMetadataClient.js.map +1 -1
  124. package/dist/esm/hooks/useConfig.d.ts +45 -0
  125. package/dist/esm/hooks/useConfig.d.ts.map +1 -1
  126. package/dist/esm/hooks/useConfig.js +45 -0
  127. package/dist/esm/hooks/useConfig.js.map +1 -1
  128. package/dist/esm/tests/Combination/useGetSwapQuote.test.js +4 -4
  129. package/dist/esm/tests/Combination/useGetSwapQuote.test.js.map +1 -1
  130. package/dist/esm/tests/handlers.d.ts.map +1 -1
  131. package/dist/esm/tests/handlers.js +14 -0
  132. package/dist/esm/tests/handlers.js.map +1 -1
  133. package/package.json +3 -3
@@ -24,7 +24,89 @@ const getTokenMetadata = async (metadataClient, args, imageProxyUrl) => {
24
24
  return data;
25
25
  };
26
26
  /**
27
- * @description Gets the token metadata for a given chainId and contractAddress (optional tokenIds for a more granular search)
27
+ * Hook to fetch token-specific metadata for individual tokens within a contract.
28
+ * This differs from {@link useGetContractInfo} which returns contract-level information.
29
+ * This hook is specifically for getting metadata about individual token IDs (like NFT attributes,
30
+ * images, etc).
31
+ *
32
+ * Optimized for batch fetching with automatic chunking of token IDs to respect
33
+ * rate limits (50 tokens per request).
34
+ *
35
+ * @see {@link https://docs.sequence.xyz/sdk/web/hooks/useGetTokenMetadata} for more detailed documentation.
36
+ *
37
+ * @param getTokenMetadataArgs - Arguments for fetching token metadata
38
+ * @param getTokenMetadataArgs.chainID - Chain ID as string (e.g., "1" for Ethereum mainnet)
39
+ * @param getTokenMetadataArgs.contractAddress - Contract address of the token/NFT
40
+ * @param getTokenMetadataArgs.tokenIDs - Array of token IDs to fetch metadata for. Each ID represents a specific token
41
+ * @param options - Optional configuration for the query behavior
42
+ * @param options.disabled - If true, disables the query from automatically running
43
+ * @param options.retry - If true (default), retries failed queries
44
+ *
45
+ * Query configuration:
46
+ * - Marks data as stale after 1 hour
47
+ * - Retries failed requests by default
48
+ * - Only enabled when chainID and contractAddress are present and not explicitly disabled
49
+ * - Automatically chunks requests into batches of 50 tokens to respect API limits
50
+ *
51
+ * @returns Query result containing an array of token metadata objects, each containing:
52
+ * - `name`: Name of the specific token (e.g., "Bored Ape #1234")
53
+ * - `description`: Description of the specific token
54
+ * - `image`: Token-specific image URL (proxied through image service)
55
+ * - `attributes`: Token-specific attributes/traits (for NFTs)
56
+ * - `decimals`: Token decimals (for ERC1155 tokens)
57
+ * - Additional token-specific metadata
58
+ *
59
+ * @example
60
+ * ```tsx
61
+ * // Fetch metadata for a specific NFT
62
+ * function NFTDetails() {
63
+ * const { data: tokensMetadata } = useGetTokenMetadata({
64
+ * chainID: "1",
65
+ * contractAddress: "0xbc4ca0...",
66
+ * tokenIDs: ["1234"]
67
+ * })
68
+ *
69
+ * const nft = tokensMetadata?.[0]
70
+ *
71
+ * return (
72
+ * <div>
73
+ * <img src={nft?.image} alt={nft?.name} />
74
+ * <h2>{nft?.name}</h2>
75
+ * <p>{nft?.description}</p>
76
+ * {nft?.attributes?.map(attr => (
77
+ * <div key={attr.trait_type}>
78
+ * {attr.trait_type}: {attr.value}
79
+ * </div>
80
+ * ))}
81
+ * </div>
82
+ * )
83
+ * }
84
+ *
85
+ * // Fetch metadata for multiple tokens in a transaction
86
+ * function TransactionDetails() {
87
+ * const { data: tokenMetadata } = useGetTokenMetadata({
88
+ * chainID: String(chainId),
89
+ * contractAddress,
90
+ * tokenIDs: transferProps.tokenIds // Array of transferred token IDs
91
+ * })
92
+ *
93
+ * return (
94
+ * <div>
95
+ * {tokenMetadata?.map(token => (
96
+ * <div key={token.id} className="token-transfer">
97
+ * <CollectibleTileImage imageUrl={token.image} />
98
+ * <Text>{token.name}</Text>
99
+ * {token.attributes && (
100
+ * <div className="attributes">
101
+ * Token attributes here
102
+ * </div>
103
+ * )}
104
+ * </div>
105
+ * ))}
106
+ * </div>
107
+ * )
108
+ * }
109
+ * ```
28
110
  */
29
111
  const useGetTokenMetadata = (getTokenMetadataArgs, options) => {
30
112
  const { env } = (0, useConfig_1.useConfig)();
@@ -1 +1 @@
1
- {"version":3,"file":"useGetTokenMetadata.js","sourceRoot":"","sources":["../../../../src/hooks/Metadata/useGetTokenMetadata.ts"],"names":[],"mappings":";;;AACA,uDAAgD;AAEhD,+CAAkD;AAElD,iDAAgD;AAChD,4CAAwC;AAExC,2DAAuD;AAEvD,MAAM,gBAAgB,GAAG,KAAK,EAAE,cAAgC,EAAE,IAA0B,EAAE,aAAqB,EAAE,EAAE;IACrH,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAA;IAEnD,wEAAwE;IACxE,MAAM,aAAa,GAAG,IAAA,oBAAU,EAAC,EAAE,EAAE,QAAQ,CAAC,CAAA;IAE9C,MAAM,eAAe,GAAG,MAAM,OAAO,CAAC,GAAG,CACvC,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAC3B,cAAc,CAAC,gBAAgB,CAAC;QAC9B,OAAO,EAAE,OAAO;QAChB,eAAe,EAAE,eAAe;QAChC,QAAQ,EAAE,QAAQ;KACnB,CAAC,CACH,CACF,CAAA;IAED,MAAM,IAAI,GAAG,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,IAAI,EAAE,CAAA;IAE/D,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;QACf,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC;YACb,CAAC,CAAC,KAAK,GAAG,GAAG,aAAa,GAAG,CAAC,CAAC,KAAK,EAAE,CAAA;QACxC,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAED;;GAEG;AACI,MAAM,mBAAmB,GAAG,CAAC,oBAA0C,EAAE,OAAsB,EAAE,EAAE;IACxG,MAAM,EAAE,GAAG,EAAE,GAAG,IAAA,qBAAS,GAAE,CAAA;IAC3B,MAAM,cAAc,GAAG,IAAA,qCAAiB,GAAE,CAAA;IAE1C,OAAO,IAAA,sBAAQ,EAAC;QACd,QAAQ,EAAE,CAAC,sBAAU,CAAC,mBAAmB,EAAE,oBAAoB,EAAE,OAAO,CAAC;QACzE,OAAO,EAAE,GAAG,EAAE,CAAC,gBAAgB,CAAC,cAAc,EAAE,oBAAoB,EAAE,GAAG,CAAC,aAAa,CAAC;QACxF,KAAK,EAAE,OAAO,EAAE,KAAK,IAAI,IAAI;QAC7B,SAAS,EAAE,gBAAI,CAAC,OAAO;QACvB,OAAO,EAAE,CAAC,CAAC,oBAAoB,CAAC,OAAO,IAAI,CAAC,CAAC,oBAAoB,CAAC,eAAe,IAAI,CAAC,OAAO,EAAE,QAAQ;KACxG,CAAC,CAAA;AACJ,CAAC,CAAA;AAXY,QAAA,mBAAmB,uBAW/B"}
1
+ {"version":3,"file":"useGetTokenMetadata.js","sourceRoot":"","sources":["../../../../src/hooks/Metadata/useGetTokenMetadata.ts"],"names":[],"mappings":";;;AACA,uDAAgD;AAEhD,+CAAkD;AAElD,iDAAgD;AAChD,4CAAwC;AAExC,2DAAuD;AAEvD,MAAM,gBAAgB,GAAG,KAAK,EAAE,cAAgC,EAAE,IAA0B,EAAE,aAAqB,EAAE,EAAE;IACrH,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAA;IAEnD,wEAAwE;IACxE,MAAM,aAAa,GAAG,IAAA,oBAAU,EAAC,EAAE,EAAE,QAAQ,CAAC,CAAA;IAE9C,MAAM,eAAe,GAAG,MAAM,OAAO,CAAC,GAAG,CACvC,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAC3B,cAAc,CAAC,gBAAgB,CAAC;QAC9B,OAAO,EAAE,OAAO;QAChB,eAAe,EAAE,eAAe;QAChC,QAAQ,EAAE,QAAQ;KACnB,CAAC,CACH,CACF,CAAA;IAED,MAAM,IAAI,GAAG,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,IAAI,EAAE,CAAA;IAE/D,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;QACf,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC;YACb,CAAC,CAAC,KAAK,GAAG,GAAG,aAAa,GAAG,CAAC,CAAC,KAAK,EAAE,CAAA;QACxC,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoFG;AACI,MAAM,mBAAmB,GAAG,CAAC,oBAA0C,EAAE,OAAsB,EAAE,EAAE;IACxG,MAAM,EAAE,GAAG,EAAE,GAAG,IAAA,qBAAS,GAAE,CAAA;IAC3B,MAAM,cAAc,GAAG,IAAA,qCAAiB,GAAE,CAAA;IAE1C,OAAO,IAAA,sBAAQ,EAAC;QACd,QAAQ,EAAE,CAAC,sBAAU,CAAC,mBAAmB,EAAE,oBAAoB,EAAE,OAAO,CAAC;QACzE,OAAO,EAAE,GAAG,EAAE,CAAC,gBAAgB,CAAC,cAAc,EAAE,oBAAoB,EAAE,GAAG,CAAC,aAAa,CAAC;QACxF,KAAK,EAAE,OAAO,EAAE,KAAK,IAAI,IAAI;QAC7B,SAAS,EAAE,gBAAI,CAAC,OAAO;QACvB,OAAO,EAAE,CAAC,CAAC,oBAAoB,CAAC,OAAO,IAAI,CAAC,CAAC,oBAAoB,CAAC,eAAe,IAAI,CAAC,OAAO,EAAE,QAAQ;KACxG,CAAC,CAAA;AACJ,CAAC,CAAA;AAXY,QAAA,mBAAmB,uBAW/B"}
@@ -1,3 +1,39 @@
1
1
  import { SequenceMetadata } from '@0xsequence/metadata';
2
+ /**
3
+ * Hook that provides a memoized instance of the Sequence Metadata client.
4
+ * This client is used to fetch token and contract metadata
5
+ * from Sequence's metadata service.
6
+ *
7
+ * Provides access to many other methods in the Sequence Metadata API.
8
+ *
9
+ * The client is configured using the project's environment settings and access key.
10
+ * It's memoized to prevent unnecessary re-instantiation when dependencies haven't changed.
11
+ *
12
+ * Used internally in {@link @0xsequence/hooks} by hooks such as:
13
+ * - {@link useGetTokenMetadata} for fetching token-specific metadata
14
+ * - {@link useGetContractInfo} for fetching contract information
15
+ * - {@link useGetMultipleContractsInfo} for batch fetching contract information
16
+ *
17
+ * @see {@link https://docs.sequence.xyz/sdk/web/hooks/useMetadataClient} for more detailed documentation.
18
+ *
19
+ * @returns A configured instance of SequenceMetadata client
20
+ *
21
+ * @example
22
+ * ```tsx
23
+ * function CustomMetadataFetch() {
24
+ * const metadataClient = useMetadataClient()
25
+ *
26
+ * const fetchCustomMetadata = async () => {
27
+ * const response = await metadataClient.getContractInfo({
28
+ * chainID: "1",
29
+ * contractAddress: "0x123..."
30
+ * })
31
+ * // Handle response
32
+ * }
33
+ *
34
+ * return <button onClick={fetchCustomMetadata}>Fetch Metadata</button>
35
+ * }
36
+ * ```
37
+ */
2
38
  export declare const useMetadataClient: () => SequenceMetadata;
3
39
  //# sourceMappingURL=useMetadataClient.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useMetadataClient.d.ts","sourceRoot":"","sources":["../../../../src/hooks/Metadata/useMetadataClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAKvD,eAAO,MAAM,iBAAiB,wBAU7B,CAAA"}
1
+ {"version":3,"file":"useMetadataClient.d.ts","sourceRoot":"","sources":["../../../../src/hooks/Metadata/useMetadataClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAKvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,eAAO,MAAM,iBAAiB,wBAQ7B,CAAA"}
@@ -4,12 +4,47 @@ exports.useMetadataClient = void 0;
4
4
  const metadata_1 = require("@0xsequence/metadata");
5
5
  const react_1 = require("react");
6
6
  const useConfig_1 = require("../useConfig");
7
+ /**
8
+ * Hook that provides a memoized instance of the Sequence Metadata client.
9
+ * This client is used to fetch token and contract metadata
10
+ * from Sequence's metadata service.
11
+ *
12
+ * Provides access to many other methods in the Sequence Metadata API.
13
+ *
14
+ * The client is configured using the project's environment settings and access key.
15
+ * It's memoized to prevent unnecessary re-instantiation when dependencies haven't changed.
16
+ *
17
+ * Used internally in {@link @0xsequence/hooks} by hooks such as:
18
+ * - {@link useGetTokenMetadata} for fetching token-specific metadata
19
+ * - {@link useGetContractInfo} for fetching contract information
20
+ * - {@link useGetMultipleContractsInfo} for batch fetching contract information
21
+ *
22
+ * @see {@link https://docs.sequence.xyz/sdk/web/hooks/useMetadataClient} for more detailed documentation.
23
+ *
24
+ * @returns A configured instance of SequenceMetadata client
25
+ *
26
+ * @example
27
+ * ```tsx
28
+ * function CustomMetadataFetch() {
29
+ * const metadataClient = useMetadataClient()
30
+ *
31
+ * const fetchCustomMetadata = async () => {
32
+ * const response = await metadataClient.getContractInfo({
33
+ * chainID: "1",
34
+ * contractAddress: "0x123..."
35
+ * })
36
+ * // Handle response
37
+ * }
38
+ *
39
+ * return <button onClick={fetchCustomMetadata}>Fetch Metadata</button>
40
+ * }
41
+ * ```
42
+ */
7
43
  const useMetadataClient = () => {
8
- const { projectAccessKey, env } = (0, useConfig_1.useConfig)();
44
+ const { env, projectAccessKey, jwt } = (0, useConfig_1.useConfig)();
9
45
  const metadataClient = (0, react_1.useMemo)(() => {
10
- const clientUrl = env.metadataUrl;
11
- return new metadata_1.SequenceMetadata(clientUrl, projectAccessKey);
12
- }, [projectAccessKey]);
46
+ return new metadata_1.SequenceMetadata(env.metadataUrl, projectAccessKey);
47
+ }, [projectAccessKey, jwt]);
13
48
  return metadataClient;
14
49
  };
15
50
  exports.useMetadataClient = useMetadataClient;
@@ -1 +1 @@
1
- {"version":3,"file":"useMetadataClient.js","sourceRoot":"","sources":["../../../../src/hooks/Metadata/useMetadataClient.ts"],"names":[],"mappings":";;;AAAA,mDAAuD;AACvD,iCAA+B;AAE/B,4CAAwC;AAEjC,MAAM,iBAAiB,GAAG,GAAG,EAAE;IACpC,MAAM,EAAE,gBAAgB,EAAE,GAAG,EAAE,GAAG,IAAA,qBAAS,GAAE,CAAA;IAE7C,MAAM,cAAc,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE;QAClC,MAAM,SAAS,GAAG,GAAG,CAAC,WAAW,CAAA;QAEjC,OAAO,IAAI,2BAAgB,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAA;IAC1D,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAA;IAEtB,OAAO,cAAc,CAAA;AACvB,CAAC,CAAA;AAVY,QAAA,iBAAiB,qBAU7B"}
1
+ {"version":3,"file":"useMetadataClient.js","sourceRoot":"","sources":["../../../../src/hooks/Metadata/useMetadataClient.ts"],"names":[],"mappings":";;;AAAA,mDAAuD;AACvD,iCAA+B;AAE/B,4CAAwC;AAExC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACI,MAAM,iBAAiB,GAAG,GAAG,EAAE;IACpC,MAAM,EAAE,GAAG,EAAE,gBAAgB,EAAE,GAAG,EAAE,GAAG,IAAA,qBAAS,GAAE,CAAA;IAElD,MAAM,cAAc,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE;QAClC,OAAO,IAAI,2BAAgB,CAAC,GAAG,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAA;IAChE,CAAC,EAAE,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC,CAAA;IAE3B,OAAO,cAAc,CAAA;AACvB,CAAC,CAAA;AARY,QAAA,iBAAiB,qBAQ7B"}
@@ -1,2 +1,47 @@
1
+ /**
2
+ * Hook to access the Sequence configuration context.
3
+ * Must be used within a {@link SequenceHooksProvider} component.
4
+ *
5
+ * Provides access to global configuration values used across Sequence hooks, including:
6
+ * - `env`: Environment configuration (API URLs, metadata URLs, etc.)
7
+ * - `projectAccessKey`: Project-specific access key
8
+ * - `jwt`: JSON Web Token for authentication
9
+ *
10
+ * @see {@link https://docs.sequence.xyz/sdk/web/hooks/useConfig} for more detailed documentation.
11
+ *
12
+ * @throws {Error} If used outside of a SequenceHooksProvider
13
+ *
14
+ * @example
15
+ * ```tsx
16
+ * function MyComponent() {
17
+ * const { env, projectAccessKey } = useConfig()
18
+ *
19
+ * return (
20
+ * <div>
21
+ * <div>API URL: {env.apiUrl}</div>
22
+ * <div>Project Key: {projectAccessKey}</div>
23
+ * </div>
24
+ * )
25
+ * }
26
+ * ```
27
+ *
28
+ * @example
29
+ * ```tsx
30
+ * // Usage with provider
31
+ * function App() {
32
+ * return (
33
+ * <SequenceHooksProvider config={{
34
+ * env: {
35
+ * apiUrl: '...',
36
+ * metadataUrl: '...',
37
+ * imageProxyUrl: '...'
38
+ * },
39
+ * projectAccessKey: 'your-project-key'
40
+ * }}>
41
+ * <MyComponent />
42
+ * </SequenceHooksProvider>
43
+ * )
44
+ * }
45
+ */
1
46
  export declare const useConfig: () => import("../contexts/ConfigContext").SequenceHooksConfig;
2
47
  //# sourceMappingURL=useConfig.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useConfig.d.ts","sourceRoot":"","sources":["../../../src/hooks/useConfig.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,SAAS,+DAQrB,CAAA"}
1
+ {"version":3,"file":"useConfig.d.ts","sourceRoot":"","sources":["../../../src/hooks/useConfig.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,eAAO,MAAM,SAAS,+DAQrB,CAAA"}
@@ -3,6 +3,51 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.useConfig = void 0;
4
4
  const react_1 = require("react");
5
5
  const ConfigContext_1 = require("../contexts/ConfigContext");
6
+ /**
7
+ * Hook to access the Sequence configuration context.
8
+ * Must be used within a {@link SequenceHooksProvider} component.
9
+ *
10
+ * Provides access to global configuration values used across Sequence hooks, including:
11
+ * - `env`: Environment configuration (API URLs, metadata URLs, etc.)
12
+ * - `projectAccessKey`: Project-specific access key
13
+ * - `jwt`: JSON Web Token for authentication
14
+ *
15
+ * @see {@link https://docs.sequence.xyz/sdk/web/hooks/useConfig} for more detailed documentation.
16
+ *
17
+ * @throws {Error} If used outside of a SequenceHooksProvider
18
+ *
19
+ * @example
20
+ * ```tsx
21
+ * function MyComponent() {
22
+ * const { env, projectAccessKey } = useConfig()
23
+ *
24
+ * return (
25
+ * <div>
26
+ * <div>API URL: {env.apiUrl}</div>
27
+ * <div>Project Key: {projectAccessKey}</div>
28
+ * </div>
29
+ * )
30
+ * }
31
+ * ```
32
+ *
33
+ * @example
34
+ * ```tsx
35
+ * // Usage with provider
36
+ * function App() {
37
+ * return (
38
+ * <SequenceHooksProvider config={{
39
+ * env: {
40
+ * apiUrl: '...',
41
+ * metadataUrl: '...',
42
+ * imageProxyUrl: '...'
43
+ * },
44
+ * projectAccessKey: 'your-project-key'
45
+ * }}>
46
+ * <MyComponent />
47
+ * </SequenceHooksProvider>
48
+ * )
49
+ * }
50
+ */
6
51
  const useConfig = () => {
7
52
  const config = (0, react_1.useContext)(ConfigContext_1.SequenceHooksContext);
8
53
  if (!config) {
@@ -1 +1 @@
1
- {"version":3,"file":"useConfig.js","sourceRoot":"","sources":["../../../src/hooks/useConfig.ts"],"names":[],"mappings":";;;AAAA,iCAAkC;AAElC,6DAAgE;AAEzD,MAAM,SAAS,GAAG,GAAG,EAAE;IAC5B,MAAM,MAAM,GAAG,IAAA,kBAAU,EAAC,oCAAoB,CAAC,CAAA;IAE/C,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAA;IAC1E,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AARY,QAAA,SAAS,aAQrB"}
1
+ {"version":3,"file":"useConfig.js","sourceRoot":"","sources":["../../../src/hooks/useConfig.ts"],"names":[],"mappings":";;;AAAA,iCAAkC;AAElC,6DAAgE;AAEhE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACI,MAAM,SAAS,GAAG,GAAG,EAAE;IAC5B,MAAM,MAAM,GAAG,IAAA,kBAAU,EAAC,oCAAoB,CAAC,CAAA;IAE/C,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAA;IAC1E,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AARY,QAAA,SAAS,aAQrB"}
@@ -9,13 +9,13 @@ const createWrapper_1 = require("../createWrapper");
9
9
  const setup_1 = require("../setup");
10
10
  const getSwapQuoteArgs = {
11
11
  userAddress: constants_1.ACCOUNT_ADDRESS,
12
- buyCurrencyAddress: constants_1.NATIVE_TOKEN_ADDRESS_0X_SWAP,
13
- sellCurrencyAddress: constants_1.NATIVE_TOKEN_ADDRESS_0X_SWAP,
12
+ buyCurrencyAddress: constants_1.ZERO_ADDRESS,
13
+ sellCurrencyAddress: constants_1.ZERO_ADDRESS,
14
14
  buyAmount: '20000',
15
15
  chainId: 1,
16
16
  includeApprove: true
17
17
  };
18
- (0, vitest_1.describe)('useGetSwapQuote', () => {
18
+ (0, vitest_1.describe)('useGetSwapQuoteV2', () => {
19
19
  (0, vitest_1.it)('should return data with a balance', async () => {
20
20
  const { result } = (0, react_1.renderHook)(() => (0, useGetSwapQuote_1.useGetSwapQuote)(getSwapQuoteArgs), {
21
21
  wrapper: (0, createWrapper_1.createWrapper)()
@@ -1 +1 @@
1
- {"version":3,"file":"useGetSwapQuote.test.js","sourceRoot":"","sources":["../../../../src/tests/Combination/useGetSwapQuote.test.ts"],"names":[],"mappings":";;AAAA,kDAA4D;AAC5D,6BAAwC;AACxC,mCAA6C;AAE7C,+CAA+E;AAC/E,6EAAyE;AACzE,oDAAgD;AAChD,oCAAiC;AAEjC,MAAM,gBAAgB,GAAG;IACvB,WAAW,EAAE,2BAAe;IAC5B,kBAAkB,EAAE,wCAA4B;IAChD,mBAAmB,EAAE,wCAA4B;IACjD,SAAS,EAAE,OAAO;IAClB,OAAO,EAAE,CAAC;IACV,cAAc,EAAE,IAAI;CACrB,CAAA;AAED,IAAA,iBAAQ,EAAC,iBAAiB,EAAE,GAAG,EAAE;IAC/B,IAAA,WAAE,EAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;QACjD,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,kBAAU,EAAC,GAAG,EAAE,CAAC,IAAA,iCAAe,EAAC,gBAAgB,CAAC,EAAE;YACrE,OAAO,EAAE,IAAA,6BAAa,GAAE;SACzB,CAAC,CAAA;QAEF,MAAM,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,IAAA,eAAM,EAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QAEhE,IAAA,eAAM,EAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAA;QAEzC,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,IAAK,CAAC,eAAe,IAAI,CAAC,CAAC,CAAA;QAE/D,IAAA,eAAM,EAAC,KAAK,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAA;IAClC,CAAC,CAAC,CAAA;IAEF,IAAA,WAAE,EAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;QAC5D,cAAM,CAAC,GAAG,CACR,UAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE;YAClB,OAAO,kBAAY,CAAC,KAAK,EAAE,CAAA;QAC7B,CAAC,CAAC,CACH,CAAA;QAED,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,kBAAU,EAAC,GAAG,EAAE,CAAC,IAAA,iCAAe,EAAC,gBAAgB,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE;YACvF,OAAO,EAAE,IAAA,6BAAa,GAAE;SACzB,CAAC,CAAA;QAEF,MAAM,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,IAAA,eAAM,EAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;IAChE,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"useGetSwapQuote.test.js","sourceRoot":"","sources":["../../../../src/tests/Combination/useGetSwapQuote.test.ts"],"names":[],"mappings":";;AAAA,kDAA4D;AAC5D,6BAAwC;AACxC,mCAA6C;AAE7C,+CAA+D;AAC/D,6EAAyE;AACzE,oDAAgD;AAChD,oCAAiC;AAEjC,MAAM,gBAAgB,GAAG;IACvB,WAAW,EAAE,2BAAe;IAC5B,kBAAkB,EAAE,wBAAY;IAChC,mBAAmB,EAAE,wBAAY;IACjC,SAAS,EAAE,OAAO;IAClB,OAAO,EAAE,CAAC;IACV,cAAc,EAAE,IAAI;CACrB,CAAA;AAED,IAAA,iBAAQ,EAAC,mBAAmB,EAAE,GAAG,EAAE;IACjC,IAAA,WAAE,EAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;QACjD,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,kBAAU,EAAC,GAAG,EAAE,CAAC,IAAA,iCAAe,EAAC,gBAAgB,CAAC,EAAE;YACrE,OAAO,EAAE,IAAA,6BAAa,GAAE;SACzB,CAAC,CAAA;QAEF,MAAM,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,IAAA,eAAM,EAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QAEhE,IAAA,eAAM,EAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAA;QAEzC,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,IAAK,CAAC,eAAe,IAAI,CAAC,CAAC,CAAA;QAE/D,IAAA,eAAM,EAAC,KAAK,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAA;IAClC,CAAC,CAAC,CAAA;IAEF,IAAA,WAAE,EAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;QAC5D,cAAM,CAAC,GAAG,CACR,UAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE;YAClB,OAAO,kBAAY,CAAC,KAAK,EAAE,CAAA;QAC7B,CAAC,CAAC,CACH,CAAA;QAED,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,kBAAU,EAAC,GAAG,EAAE,CAAC,IAAA,iCAAe,EAAC,gBAAgB,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE;YACvF,OAAO,EAAE,IAAA,6BAAa,GAAE;SACzB,CAAC,CAAA;QAEF,MAAM,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,IAAA,eAAM,EAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;IAChE,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../../src/tests/handlers.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,QAAQ,6BA6TpB,CAAA"}
1
+ {"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../../src/tests/handlers.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,QAAQ,6BA+UpB,CAAA"}
@@ -271,6 +271,20 @@ exports.handlers = [
271
271
  approveData: '0x0000000000000000000000000000000000000000000000000000000000000000'
272
272
  }
273
273
  }, { status: 200 });
274
+ }),
275
+ msw_1.http.post('*/GetSwapQuoteV2', async () => {
276
+ return msw_1.HttpResponse.json({
277
+ swapQuote: {
278
+ currencyAddress: '0x7ceb23fd6bc0add59e62ac25578270cff1b9f619',
279
+ currencyBalance: '180000000000000',
280
+ price: '7351402238115',
281
+ maxPrice: '7718972350021',
282
+ to: '0x0000000000000000000000000000000000000000',
283
+ transactionData: '0x0000000000000000000000000000000000000000000000000000000000000000',
284
+ transactionValue: '0',
285
+ approveData: '0x0000000000000000000000000000000000000000000000000000000000000000'
286
+ }
287
+ }, { status: 200 });
274
288
  })
275
289
  ];
276
290
  //# sourceMappingURL=handlers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../../src/tests/handlers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../../src/tests/handlers.ts"],"names":[],"mappings":";;;AAAA,6BAAwC;AAE3B,QAAA,QAAQ,GAAG;IACtB,UAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,EAAE;QACtB,OAAO,kBAAY,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAA;IACjD,CAAC,CAAC;IAEF,UAAI,CAAC,IAAI,CAAC,yBAAyB,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QACzD,MAAM,IAAI,GAAG,CAAC,MAAM,OAAO,CAAC,IAAI,EAAE,CAAQ,CAAA;QAE1C,OAAO,kBAAY,CAAC,IAAI,CACtB;YACE,QAAQ,EAAE;gBACR;oBACE,MAAM,EAAE;wBACN,cAAc,EAAE,IAAI,CAAC,cAAc;wBACnC,OAAO,EAAE,oBAAoB;qBAC9B;iBACF;aACF;SACF,EACD,EAAE,MAAM,EAAE,GAAG,EAAE,CAChB,CAAA;IACH,CAAC,CAAC;IAEF,UAAI,CAAC,IAAI,CAAC,2BAA2B,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QAC3D,MAAM,IAAI,GAAG,CAAC,MAAM,OAAO,CAAC,IAAI,EAAE,CAAQ,CAAA;QAE1C,OAAO,kBAAY,CAAC,IAAI,CACtB;YACE,IAAI,EAAE;gBACJ,IAAI,EAAE,CAAC;aACR;YACD,QAAQ,EAAE;gBACR;oBACE,OAAO,EAAE,CAAC;oBACV,KAAK,EAAE,MAAM;oBACb,OAAO,EAAE;wBACP;4BACE,YAAY,EAAE,QAAQ;4BACtB,eAAe,EAAE,4CAA4C;4BAC7D,cAAc,EAAE,IAAI,CAAC,cAAc;4BACnC,OAAO,EAAE,GAAG;4BACZ,OAAO,EAAE,GAAG;4BACZ,SAAS,EAAE,oEAAoE;4BAC/E,WAAW,EAAE,CAAC;4BACd,OAAO,EAAE,CAAC;4BACV,kBAAkB,EAAE,GAAG;4BACvB,SAAS,EAAE,IAAI;yBAChB;wBACD;4BACE,YAAY,EAAE,QAAQ;4BACtB,eAAe,EAAE,4CAA4C;4BAC7D,cAAc,EAAE,IAAI,CAAC,cAAc;4BACnC,OAAO,EAAE,GAAG;4BACZ,OAAO,EAAE,GAAG;4BACZ,SAAS,EAAE,oEAAoE;4BAC/E,WAAW,EAAE,CAAC;4BACd,OAAO,EAAE,CAAC;4BACV,kBAAkB,EAAE,GAAG;4BACvB,SAAS,EAAE,IAAI;yBAChB;qBACF;iBACF;aACF;YACD,cAAc,EAAE;gBACd;oBACE,OAAO,EAAE,CAAC;oBACV,KAAK,EAAE,MAAM;oBACb,OAAO,EAAE;wBACP;4BACE,cAAc,EAAE,IAAI,CAAC,cAAc;4BACnC,OAAO,EAAE,oBAAoB;4BAC7B,KAAK,EAAE,MAAM;yBACd;qBACF;iBACF;aACF;SACF,EACD,EAAE,MAAM,EAAE,GAAG,EAAE,CAChB,CAAA;IACH,CAAC,CAAC;IAEF,UAAI,CAAC,IAAI,CAAC,2BAA2B,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QAC3D,MAAM,IAAI,GAAG,CAAC,MAAM,OAAO,CAAC,IAAI,EAAE,CAAQ,CAAA;QAE1C,OAAO,kBAAY,CAAC,IAAI,CACtB;YACE,IAAI,EAAE;gBACJ,IAAI,EAAE,CAAC;aACR;YACD,QAAQ,EAAE;gBACR;oBACE,OAAO,EAAE,CAAC;oBACV,KAAK,EAAE,MAAM;oBACb,OAAO,EAAE;wBACP;4BACE,YAAY,EAAE,QAAQ;4BACtB,eAAe,EAAE,4CAA4C;4BAC7D,cAAc,EAAE,IAAI,CAAC,cAAc;4BACnC,OAAO,EAAE,GAAG;4BACZ,OAAO,EAAE,GAAG;4BACZ,SAAS,EAAE,oEAAoE;4BAC/E,WAAW,EAAE,CAAC;4BACd,OAAO,EAAE,CAAC;4BACV,kBAAkB,EAAE,GAAG;4BACvB,SAAS,EAAE,IAAI;yBAChB;qBACF;iBACF;aACF;YACD,cAAc,EAAE;gBACd;oBACE,OAAO,EAAE,CAAC;oBACV,KAAK,EAAE,MAAM;oBACb,OAAO,EAAE;wBACP;4BACE,cAAc,EAAE,IAAI,CAAC,cAAc;4BACnC,OAAO,EAAE,oBAAoB;4BAC7B,KAAK,EAAE,MAAM;yBACd;qBACF;iBACF;aACF;SACF,EACD,EAAE,MAAM,EAAE,GAAG,EAAE,CAChB,CAAA;IACH,CAAC,CAAC;IAEF,UAAI,CAAC,IAAI,CAAC,8BAA8B,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QAC9D,MAAM,IAAI,GAAG,CAAC,MAAM,OAAO,CAAC,IAAI,EAAE,CAAQ,CAAA;QAE1C,OAAO,kBAAY,CAAC,IAAI,CACtB;YACE,IAAI,EAAE;gBACJ,IAAI,EAAE,CAAC;aACR;YACD,QAAQ,EAAE;gBACR;oBACE,OAAO,EAAE,CAAC;oBACV,KAAK,EAAE,MAAM;oBACb,OAAO,EAAE;wBACP;4BACE,YAAY,EAAE,QAAQ;4BACtB,eAAe,EAAE,4CAA4C;4BAC7D,cAAc,EAAE,IAAI,CAAC,cAAc;4BACnC,OAAO,EAAE,GAAG;4BACZ,OAAO,EAAE,GAAG;4BACZ,SAAS,EAAE,oEAAoE;4BAC/E,WAAW,EAAE,CAAC;4BACd,OAAO,EAAE,CAAC;4BACV,kBAAkB,EAAE,GAAG;4BACvB,SAAS,EAAE,IAAI;yBAChB;qBACF;iBACF;aACF;SACF,EACD,EAAE,MAAM,EAAE,GAAG,EAAE,CAChB,CAAA;IACH,CAAC,CAAC;IAEF,UAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QACpD,MAAM,IAAI,GAAG,CAAC,MAAM,OAAO,CAAC,IAAI,EAAE,CAAQ,CAAA;QAE1C,OAAO,kBAAY,CAAC,IAAI,CACtB;YACE,IAAI,EAAE;gBACJ,IAAI,EAAE,CAAC;aACR;YACD,aAAa,EAAE;gBACb;oBACE,YAAY,EAAE,QAAQ;oBACtB,eAAe,EAAE,4CAA4C;oBAC7D,cAAc,EAAE,IAAI,CAAC,cAAc;oBACnC,OAAO,EAAE,GAAG;oBACZ,IAAI,EAAE,MAAM;oBACZ,MAAM,EAAE,MAAM;oBACd,KAAK,EAAE,+BAA+B;oBACtC,WAAW,EAAE,kBAAkB;oBAC/B,OAAO,EAAE,CAAC;oBACV,kBAAkB,EAAE,GAAG;oBACvB,SAAS,EAAE,IAAI;iBAChB;aACF;SACF,EACD,EAAE,MAAM,EAAE,GAAG,EAAE,CAChB,CAAA;IACH,CAAC,CAAC;IAEF,UAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,KAAK,IAAI,EAAE;QACxC,OAAO,kBAAY,CAAC,IAAI,CACtB;YACE,YAAY,EAAE;gBACZ,OAAO,EAAE,CAAC;gBACV,OAAO,EAAE,4CAA4C;gBACrD,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,MAAM;gBACd,QAAQ,EAAE,EAAE;gBACZ,OAAO,EAAE,4DAA4D;gBACrE,QAAQ,EAAE,IAAI;gBACd,YAAY,EAAE,UAAU;gBACxB,UAAU,EAAE;oBACV,IAAI,EAAE,0BAA0B;oBAChC,WAAW,EAAE,kBAAkB;oBAC/B,OAAO,EAAE,6BAA6B;oBACtC,MAAM,EAAE,MAAM;oBACd,aAAa,EAAE,CAAC;oBAChB,aAAa,EAAE,EAAE;oBACjB,SAAS,EAAE,KAAK;oBAChB,QAAQ,EAAE,IAAI;oBACd,UAAU,EAAE,MAAM;oBAClB,QAAQ,EAAE,IAAI;oBACd,OAAO,EAAE,KAAK;iBACf;gBACD,SAAS,EAAE,YAAY;aACxB;SACF,EACD,EAAE,MAAM,EAAE,GAAG,EAAE,CAChB,CAAA;IACH,CAAC,CAAC;IAEF,UAAI,CAAC,IAAI,CAAC,yBAAyB,EAAE,KAAK,IAAI,EAAE;QAC9C,OAAO,kBAAY,CAAC,IAAI,CACtB;YACE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE;YACjB,YAAY,EAAE;gBACZ;oBACE,OAAO,EAAE,oEAAoE;oBAC7E,WAAW,EAAE,CAAC;oBACd,SAAS,EAAE,oEAAoE;oBAC/E,OAAO,EAAE,CAAC;oBACV,SAAS,EAAE,YAAY;iBACxB;aACF;SACF,EACD,EAAE,MAAM,EAAE,GAAG,EAAE,CAChB,CAAA;IACH,CAAC,CAAC;IAEF,UAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,KAAK,IAAI,EAAE;QACxC,OAAO,kBAAY,CAAC,IAAI,CACtB;YACE,YAAY,EAAE;gBACZ,KAAK,EAAE,GAAG;aACX;SACF,EACD,EAAE,MAAM,EAAE,GAAG,EAAE,CAChB,CAAA;IACH,CAAC,CAAC;IAEF,UAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,KAAK,IAAI,EAAE;QACtC,OAAO,kBAAY,CAAC,IAAI,CAAC;YACvB,WAAW,EAAE;gBACX;oBACE,KAAK,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,eAAe,EAAE,4CAA4C,EAAE;oBACpF,UAAU,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE;oBAC1C,QAAQ,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE;oBACxC,SAAS,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE;iBAC1C;aACF;SACF,CAAC,CAAA;IACJ,CAAC,CAAC;IAEF,UAAI,CAAC,IAAI,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE;QAC7C,OAAO,kBAAY,CAAC,IAAI,CAAC;YACvB,WAAW,EAAE;gBACX;oBACE,KAAK,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,eAAe,EAAE,4CAA4C,EAAE;oBACpF,UAAU,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE;oBAC1C,QAAQ,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE;oBACxC,SAAS,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE;iBAC1C;aACF;SACF,CAAC,CAAA;IACJ,CAAC,CAAC;IAEF,UAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,KAAK,IAAI,EAAE;QACtC,OAAO,kBAAY,CAAC,IAAI,CACtB;YACE,UAAU,EAAE;gBACV;oBACE,eAAe,EAAE,4CAA4C;oBAC7D,eAAe,EAAE,iBAAiB;oBAClC,KAAK,EAAE,eAAe;oBACtB,QAAQ,EAAE,eAAe;oBACzB,gBAAgB,EAAE,GAAG;iBACtB;gBACD;oBACE,eAAe,EAAE,4CAA4C;oBAC7D,eAAe,EAAE,qBAAqB;oBACtC,KAAK,EAAE,mBAAmB;oBAC1B,QAAQ,EAAE,mBAAmB;oBAC7B,gBAAgB,EAAE,mBAAmB;iBACtC;aACF;SACF,EACD,EAAE,MAAM,EAAE,GAAG,EAAE,CAChB,CAAA;IACH,CAAC,CAAC;IAEF,UAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,KAAK,IAAI,EAAE;QACrC,OAAO,kBAAY,CAAC,IAAI,CACtB;YACE,SAAS,EAAE;gBACT,eAAe,EAAE,4CAA4C;gBAC7D,eAAe,EAAE,iBAAiB;gBAClC,KAAK,EAAE,eAAe;gBACtB,QAAQ,EAAE,eAAe;gBACzB,EAAE,EAAE,4CAA4C;gBAChD,eAAe,EAAE,oEAAoE;gBACrF,gBAAgB,EAAE,GAAG;gBACrB,WAAW,EAAE,oEAAoE;aAClF;SACF,EACD,EAAE,MAAM,EAAE,GAAG,EAAE,CAChB,CAAA;IACH,CAAC,CAAC;IAEF,UAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,KAAK,IAAI,EAAE;QACvC,OAAO,kBAAY,CAAC,IAAI,CACtB;YACE,SAAS,EAAE;gBACT,eAAe,EAAE,4CAA4C;gBAC7D,eAAe,EAAE,iBAAiB;gBAClC,KAAK,EAAE,eAAe;gBACtB,QAAQ,EAAE,eAAe;gBACzB,EAAE,EAAE,4CAA4C;gBAChD,eAAe,EAAE,oEAAoE;gBACrF,gBAAgB,EAAE,GAAG;gBACrB,WAAW,EAAE,oEAAoE;aAClF;SACF,EACD,EAAE,MAAM,EAAE,GAAG,EAAE,CAChB,CAAA;IACH,CAAC,CAAC;CACH,CAAA"}
@@ -8,10 +8,13 @@ export interface SequenceHooksEnv {
8
8
  export interface SequenceHooksConfigProviderValue {
9
9
  projectAccessKey: string;
10
10
  env?: Partial<SequenceHooksEnv>;
11
+ jwt?: string;
11
12
  }
12
13
  export interface SequenceHooksConfig {
13
14
  projectAccessKey: string;
14
15
  env: Required<SequenceHooksEnv>;
16
+ jwt: string | undefined;
17
+ setJWT: React.Dispatch<React.SetStateAction<string | undefined>>;
15
18
  }
16
19
  export declare const SequenceHooksContext: import("react").Context<SequenceHooksConfig | null>;
17
20
  interface SequenceHooksProviderProps {
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigContext.d.ts","sourceRoot":"","sources":["../../../src/contexts/ConfigContext.tsx"],"names":[],"mappings":"AAIA,MAAM,WAAW,gBAAgB;IAC/B,iBAAiB,EAAE,MAAM,CAAA;IACzB,WAAW,EAAE,MAAM,CAAA;IACnB,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,aAAa,EAAE,MAAM,CAAA;CACtB;AAED,MAAM,WAAW,gCAAgC;IAC/C,gBAAgB,EAAE,MAAM,CAAA;IACxB,GAAG,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAA;CAChC;AAED,MAAM,WAAW,mBAAmB;IAClC,gBAAgB,EAAE,MAAM,CAAA;IACxB,GAAG,EAAE,QAAQ,CAAC,gBAAgB,CAAC,CAAA;CAChC;AAUD,eAAO,MAAM,oBAAoB,qDAAkD,CAAA;AAEnF,UAAU,0BAA0B;IAClC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,MAAM,EAAE,gCAAgC,CAAA;CACzC;AAED,eAAO,MAAM,qBAAqB,GAAI,OAAO,0BAA0B,4CAUtE,CAAA"}
1
+ {"version":3,"file":"ConfigContext.d.ts","sourceRoot":"","sources":["../../../src/contexts/ConfigContext.tsx"],"names":[],"mappings":"AAIA,MAAM,WAAW,gBAAgB;IAC/B,iBAAiB,EAAE,MAAM,CAAA;IACzB,WAAW,EAAE,MAAM,CAAA;IACnB,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,aAAa,EAAE,MAAM,CAAA;CACtB;AAED,MAAM,WAAW,gCAAgC;IAC/C,gBAAgB,EAAE,MAAM,CAAA;IACxB,GAAG,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAA;IAC/B,GAAG,CAAC,EAAE,MAAM,CAAA;CACb;AAED,MAAM,WAAW,mBAAmB;IAClC,gBAAgB,EAAE,MAAM,CAAA;IACxB,GAAG,EAAE,QAAQ,CAAC,gBAAgB,CAAC,CAAA;IAC/B,GAAG,EAAE,MAAM,GAAG,SAAS,CAAA;IACvB,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC,CAAA;CACjE;AAUD,eAAO,MAAM,oBAAoB,qDAAkD,CAAA;AAEnF,UAAU,0BAA0B;IAClC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,MAAM,EAAE,gCAAgC,CAAA;CACzC;AAED,eAAO,MAAM,qBAAqB,GAAI,OAAO,0BAA0B,4CActE,CAAA"}
@@ -1,6 +1,6 @@
1
1
  'use client';
2
2
  import { jsx as _jsx } from "react/jsx-runtime";
3
- import { createContext } from 'react';
3
+ import { createContext, useState } from 'react';
4
4
  const defaultEnv = {
5
5
  indexerGatewayUrl: 'https://indexer.sequence.app',
6
6
  metadataUrl: 'https://metadata.sequence.app',
@@ -10,12 +10,15 @@ const defaultEnv = {
10
10
  };
11
11
  export const SequenceHooksContext = createContext(null);
12
12
  export const SequenceHooksProvider = (props) => {
13
+ const [jwt, setJWT] = useState(props.config.jwt);
13
14
  const config = {
14
15
  ...props.config,
15
16
  env: {
16
17
  ...defaultEnv,
17
18
  ...props.config.env
18
- }
19
+ },
20
+ jwt,
21
+ setJWT
19
22
  };
20
23
  return _jsx(SequenceHooksContext.Provider, { value: config, children: props.children });
21
24
  };
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigContext.js","sourceRoot":"","sources":["../../../src/contexts/ConfigContext.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAoBrC,MAAM,UAAU,GAA+B;IAC7C,iBAAiB,EAAE,8BAA8B;IACjD,WAAW,EAAE,+BAA+B;IAC5C,MAAM,EAAE,0BAA0B;IAClC,UAAU,EAAE,8BAA8B;IAC1C,aAAa,EAAE,gCAAgC;CAChD,CAAA;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAG,aAAa,CAA6B,IAAI,CAAC,CAAA;AAOnF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,KAAiC,EAAE,EAAE;IACzE,MAAM,MAAM,GAAG;QACb,GAAG,KAAK,CAAC,MAAM;QACf,GAAG,EAAE;YACH,GAAG,UAAU;YACb,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG;SACpB;KACF,CAAA;IAED,OAAO,KAAC,oBAAoB,CAAC,QAAQ,IAAC,KAAK,EAAE,MAAM,YAAG,KAAK,CAAC,QAAQ,GAAiC,CAAA;AACvG,CAAC,CAAA"}
1
+ {"version":3,"file":"ConfigContext.js","sourceRoot":"","sources":["../../../src/contexts/ConfigContext.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAuB/C,MAAM,UAAU,GAA+B;IAC7C,iBAAiB,EAAE,8BAA8B;IACjD,WAAW,EAAE,+BAA+B;IAC5C,MAAM,EAAE,0BAA0B;IAClC,UAAU,EAAE,8BAA8B;IAC1C,aAAa,EAAE,gCAAgC;CAChD,CAAA;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAG,aAAa,CAA6B,IAAI,CAAC,CAAA;AAOnF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,KAAiC,EAAE,EAAE;IACzE,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAqB,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;IAEpE,MAAM,MAAM,GAAwB;QAClC,GAAG,KAAK,CAAC,MAAM;QACf,GAAG,EAAE;YACH,GAAG,UAAU;YACb,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG;SACpB;QACD,GAAG;QACH,MAAM;KACP,CAAA;IAED,OAAO,KAAC,oBAAoB,CAAC,QAAQ,IAAC,KAAK,EAAE,MAAM,YAAG,KAAK,CAAC,QAAQ,GAAiC,CAAA;AACvG,CAAC,CAAA"}
@@ -1,3 +1,40 @@
1
1
  import { SequenceAPIClient } from '@0xsequence/api';
2
+ /**
3
+ * Hook to access the Sequence API client instance.
4
+ *
5
+ * This hook provides a memoized instance of the Sequence API client that can be used
6
+ * to interact with Sequence services. The client is configured with the project's
7
+ * access key and environment-specific API URL.
8
+ *
9
+ * The API client provides access to various Sequence services including:
10
+ * - Exchange rates and pricing
11
+ * - Token swaps and quotes
12
+ * - Wallet linking and management
13
+ * - Token metadata and balances
14
+ *
15
+ * The client instance is memoized based on the project access key, meaning a new
16
+ * instance is only created when the access key changes.
17
+ *
18
+ * @see {@link https://docs.sequence.xyz/sdk/web/hooks/useAPIClient} for more detailed documentation.
19
+ *
20
+ * @returns {SequenceAPIClient} A configured instance of the Sequence API client
21
+ *
22
+ * @example
23
+ * ```tsx
24
+ * const apiClient = useAPIClient()
25
+ *
26
+ * // Get exchange rates
27
+ * const rate = await apiClient.getExchangeRate({ toCurrency: 'EUR' })
28
+ *
29
+ * // Get swap quote
30
+ * const quote = await apiClient.getSwapQuote({
31
+ * chainId: 1,
32
+ * userAddress: '0x...',
33
+ * sellCurrencyAddress: '0x...',
34
+ * buyCurrencyAddress: '0x...',
35
+ * sellAmount: '1000000000000000000'
36
+ * })
37
+ * ```
38
+ */
2
39
  export declare const useAPIClient: () => SequenceAPIClient;
3
40
  //# sourceMappingURL=useAPIClient.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useAPIClient.d.ts","sourceRoot":"","sources":["../../../../src/hooks/API/useAPIClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AAKnD,eAAO,MAAM,YAAY,yBAUxB,CAAA"}
1
+ {"version":3,"file":"useAPIClient.d.ts","sourceRoot":"","sources":["../../../../src/hooks/API/useAPIClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AAKnD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,eAAO,MAAM,YAAY,yBAQxB,CAAA"}
@@ -1,12 +1,48 @@
1
1
  import { SequenceAPIClient } from '@0xsequence/api';
2
2
  import { useMemo } from 'react';
3
3
  import { useConfig } from '../useConfig';
4
+ /**
5
+ * Hook to access the Sequence API client instance.
6
+ *
7
+ * This hook provides a memoized instance of the Sequence API client that can be used
8
+ * to interact with Sequence services. The client is configured with the project's
9
+ * access key and environment-specific API URL.
10
+ *
11
+ * The API client provides access to various Sequence services including:
12
+ * - Exchange rates and pricing
13
+ * - Token swaps and quotes
14
+ * - Wallet linking and management
15
+ * - Token metadata and balances
16
+ *
17
+ * The client instance is memoized based on the project access key, meaning a new
18
+ * instance is only created when the access key changes.
19
+ *
20
+ * @see {@link https://docs.sequence.xyz/sdk/web/hooks/useAPIClient} for more detailed documentation.
21
+ *
22
+ * @returns {SequenceAPIClient} A configured instance of the Sequence API client
23
+ *
24
+ * @example
25
+ * ```tsx
26
+ * const apiClient = useAPIClient()
27
+ *
28
+ * // Get exchange rates
29
+ * const rate = await apiClient.getExchangeRate({ toCurrency: 'EUR' })
30
+ *
31
+ * // Get swap quote
32
+ * const quote = await apiClient.getSwapQuote({
33
+ * chainId: 1,
34
+ * userAddress: '0x...',
35
+ * sellCurrencyAddress: '0x...',
36
+ * buyCurrencyAddress: '0x...',
37
+ * sellAmount: '1000000000000000000'
38
+ * })
39
+ * ```
40
+ */
4
41
  export const useAPIClient = () => {
5
- const { projectAccessKey, env } = useConfig();
42
+ const { projectAccessKey, jwt, env } = useConfig();
6
43
  const apiClient = useMemo(() => {
7
- const clientUrl = env.apiUrl;
8
- return new SequenceAPIClient(clientUrl, projectAccessKey);
9
- }, [projectAccessKey]);
44
+ return new SequenceAPIClient(env.apiUrl, projectAccessKey, jwt);
45
+ }, [projectAccessKey, jwt]);
10
46
  return apiClient;
11
47
  };
12
48
  //# sourceMappingURL=useAPIClient.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useAPIClient.js","sourceRoot":"","sources":["../../../../src/hooks/API/useAPIClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAE/B,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAExC,MAAM,CAAC,MAAM,YAAY,GAAG,GAAG,EAAE;IAC/B,MAAM,EAAE,gBAAgB,EAAE,GAAG,EAAE,GAAG,SAAS,EAAE,CAAA;IAE7C,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,EAAE;QAC7B,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,CAAA;QAE5B,OAAO,IAAI,iBAAiB,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAA;IAC3D,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAA;IAEtB,OAAO,SAAS,CAAA;AAClB,CAAC,CAAA"}
1
+ {"version":3,"file":"useAPIClient.js","sourceRoot":"","sources":["../../../../src/hooks/API/useAPIClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAE/B,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAExC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,GAAG,EAAE;IAC/B,MAAM,EAAE,gBAAgB,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,SAAS,EAAE,CAAA;IAElD,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,EAAE;QAC7B,OAAO,IAAI,iBAAiB,CAAC,GAAG,CAAC,MAAM,EAAE,gBAAgB,EAAE,GAAG,CAAC,CAAA;IACjE,CAAC,EAAE,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC,CAAA;IAE3B,OAAO,SAAS,CAAA;AAClB,CAAC,CAAA"}
@@ -1,7 +1,49 @@
1
1
  import { Token } from '@0xsequence/api';
2
2
  import { HooksOptions } from '../../types';
3
3
  /**
4
- * @description Gets the prices of a list of tokens
4
+ * Hook to fetch current prices for a list of tokens.
5
+ *
6
+ * This hook uses React Query to fetch and cache token prices from the Sequence API.
7
+ * Prices are automatically refreshed every minute to ensure they stay current.
8
+ *
9
+ * @see {@link https://docs.sequence.xyz/sdk/web/hooks/useGetCoinPrices} for more detailed documentation.
10
+ *
11
+ * @param tokens - Array of tokens to get prices for. Each token must include:
12
+ * - chainId: The chain ID where the token exists
13
+ * - contractAddress: The token's contract address (use ZERO_ADDRESS for native tokens)
14
+ *
15
+ * @param options - Optional configuration options:
16
+ * - retry: Whether to retry failed requests (defaults to true)
17
+ * - disabled: Whether to disable the query
18
+ *
19
+ * @returns React Query result object containing:
20
+ * - data: Array of token prices when available
21
+ * - isLoading: Whether the initial request is in progress
22
+ * - error: Any error that occurred
23
+ * - isError: Whether an error occurred
24
+ * - isSuccess: Whether the request was successful
25
+ *
26
+ * @example
27
+ * ```tsx
28
+ * const { data: prices, isLoading, error } = useGetCoinPrices([
29
+ * {
30
+ * chainId: 1,
31
+ * contractAddress: ZERO_ADDRESS // ETH
32
+ * },
33
+ * {
34
+ * chainId: 137,
35
+ * contractAddress: '0x...' // USDC on Polygon
36
+ * }
37
+ * ])
38
+ *
39
+ * if (isLoading) {
40
+ * return <div>Loading prices...</div>
41
+ * }
42
+ *
43
+ * if (prices) {
44
+ * console.log('ETH price:', prices[0].price.value)
45
+ * }
46
+ * ```
5
47
  */
6
48
  export declare const useGetCoinPrices: (tokens: Token[], options?: HooksOptions) => import("@tanstack/react-query").UseQueryResult<import("@0xsequence/api").TokenPrice[], Error>;
7
49
  //# sourceMappingURL=useGetCoinPrices.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useGetCoinPrices.d.ts","sourceRoot":"","sources":["../../../../src/hooks/API/useGetCoinPrices.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAI1D,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAc1C;;GAEG;AACH,eAAO,MAAM,gBAAgB,GAAI,QAAQ,KAAK,EAAE,EAAE,UAAU,YAAY,kGAUvE,CAAA"}
1
+ {"version":3,"file":"useGetCoinPrices.d.ts","sourceRoot":"","sources":["../../../../src/hooks/API/useGetCoinPrices.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAI1D,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAsB1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,eAAO,MAAM,gBAAgB,GAAI,QAAQ,KAAK,EAAE,EAAE,UAAU,YAAY,kGAUvE,CAAA"}