@mezo-org/passport 0.4.0-dev.81 → 0.4.0-dev.83

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 (187) hide show
  1. package/dist/src/api/auth.d.ts +1 -1
  2. package/dist/src/api/auth.d.ts.map +1 -1
  3. package/dist/src/components/Dropdown/Content.d.ts +0 -15
  4. package/dist/src/components/Dropdown/Content.d.ts.map +1 -1
  5. package/dist/src/components/Dropdown/Content.js +3 -3
  6. package/dist/src/components/Dropdown/Content.js.map +1 -1
  7. package/dist/src/components/Dropdown/Dropdown.d.ts +0 -4
  8. package/dist/src/components/Dropdown/Dropdown.d.ts.map +1 -1
  9. package/dist/src/components/Dropdown/Dropdown.js +10 -33
  10. package/dist/src/components/Dropdown/Dropdown.js.map +1 -1
  11. package/dist/src/components/Dropdown/ListingItem.d.ts +8 -7
  12. package/dist/src/components/Dropdown/ListingItem.d.ts.map +1 -1
  13. package/dist/src/components/Dropdown/ListingItem.js +36 -28
  14. package/dist/src/components/Dropdown/ListingItem.js.map +1 -1
  15. package/dist/src/components/Dropdown/NestedViewLayout.d.ts +2 -1
  16. package/dist/src/components/Dropdown/NestedViewLayout.d.ts.map +1 -1
  17. package/dist/src/components/Dropdown/NestedViewLayout.js +13 -15
  18. package/dist/src/components/Dropdown/NestedViewLayout.js.map +1 -1
  19. package/dist/src/components/Dropdown/Receive/Receive.d.ts +1 -4
  20. package/dist/src/components/Dropdown/Receive/Receive.d.ts.map +1 -1
  21. package/dist/src/components/Dropdown/Receive/Receive.js +36 -19
  22. package/dist/src/components/Dropdown/Receive/Receive.js.map +1 -1
  23. package/dist/src/components/Dropdown/Root/AccountAddressActions.d.ts +2 -5
  24. package/dist/src/components/Dropdown/Root/AccountAddressActions.d.ts.map +1 -1
  25. package/dist/src/components/Dropdown/Root/AccountAddressActions.js +28 -12
  26. package/dist/src/components/Dropdown/Root/AccountAddressActions.js.map +1 -1
  27. package/dist/src/components/Dropdown/Root/AccountBalance.d.ts +2 -4
  28. package/dist/src/components/Dropdown/Root/AccountBalance.d.ts.map +1 -1
  29. package/dist/src/components/Dropdown/Root/AccountBalance.js +24 -8
  30. package/dist/src/components/Dropdown/Root/AccountBalance.js.map +1 -1
  31. package/dist/src/components/Dropdown/Root/AccountBtcListing.d.ts +6 -0
  32. package/dist/src/components/Dropdown/Root/AccountBtcListing.d.ts.map +1 -0
  33. package/dist/src/components/Dropdown/Root/AccountBtcListing.js +27 -0
  34. package/dist/src/components/Dropdown/Root/AccountBtcListing.js.map +1 -0
  35. package/dist/src/components/Dropdown/Root/AccountError.d.ts +8 -0
  36. package/dist/src/components/Dropdown/Root/AccountError.d.ts.map +1 -0
  37. package/dist/src/components/Dropdown/Root/AccountError.js +17 -0
  38. package/dist/src/components/Dropdown/Root/AccountError.js.map +1 -0
  39. package/dist/src/components/Dropdown/Root/AccountMusdListing.d.ts +4 -0
  40. package/dist/src/components/Dropdown/Root/AccountMusdListing.d.ts.map +1 -0
  41. package/dist/src/components/Dropdown/Root/AccountMusdListing.js +21 -0
  42. package/dist/src/components/Dropdown/Root/AccountMusdListing.js.map +1 -0
  43. package/dist/src/components/Dropdown/Root/AccountOtherAssets.d.ts +2 -3
  44. package/dist/src/components/Dropdown/Root/AccountOtherAssets.d.ts.map +1 -1
  45. package/dist/src/components/Dropdown/Root/AccountOtherAssets.js +34 -39
  46. package/dist/src/components/Dropdown/Root/AccountOtherAssets.js.map +1 -1
  47. package/dist/src/components/Dropdown/Root/Root.d.ts +0 -15
  48. package/dist/src/components/Dropdown/Root/Root.d.ts.map +1 -1
  49. package/dist/src/components/Dropdown/Root/Root.js +22 -34
  50. package/dist/src/components/Dropdown/Root/Root.js.map +1 -1
  51. package/dist/src/components/Dropdown/Root/WalletAddress.d.ts +2 -6
  52. package/dist/src/components/Dropdown/Root/WalletAddress.d.ts.map +1 -1
  53. package/dist/src/components/Dropdown/Root/WalletAddress.js +43 -34
  54. package/dist/src/components/Dropdown/Root/WalletAddress.js.map +1 -1
  55. package/dist/src/components/Dropdown/Root/WelcomeBlock.d.ts +2 -4
  56. package/dist/src/components/Dropdown/Root/WelcomeBlock.d.ts.map +1 -1
  57. package/dist/src/components/Dropdown/Root/WelcomeBlock.js +60 -16
  58. package/dist/src/components/Dropdown/Root/WelcomeBlock.js.map +1 -1
  59. package/dist/src/components/Dropdown/SlotNumber.d.ts +19 -0
  60. package/dist/src/components/Dropdown/SlotNumber.d.ts.map +1 -0
  61. package/dist/src/components/Dropdown/SlotNumber.js +67 -0
  62. package/dist/src/components/Dropdown/SlotNumber.js.map +1 -0
  63. package/dist/src/config.d.ts +1 -11
  64. package/dist/src/config.d.ts.map +1 -1
  65. package/dist/src/config.js +3 -40
  66. package/dist/src/config.js.map +1 -1
  67. package/dist/src/constants.d.ts +0 -2
  68. package/dist/src/constants.d.ts.map +1 -1
  69. package/dist/src/constants.js +0 -2
  70. package/dist/src/constants.js.map +1 -1
  71. package/dist/src/hooks/useAssetsConversionRates.d.ts +8 -13
  72. package/dist/src/hooks/useAssetsConversionRates.d.ts.map +1 -1
  73. package/dist/src/hooks/useAssetsConversionRates.js +44 -67
  74. package/dist/src/hooks/useAssetsConversionRates.js.map +1 -1
  75. package/dist/src/hooks/useAuthenticateWithWallet.d.ts.map +1 -1
  76. package/dist/src/hooks/useAuthenticateWithWallet.js +1 -1
  77. package/dist/src/hooks/useAuthenticateWithWallet.js.map +1 -1
  78. package/dist/src/hooks/useBorrowData.d.ts +31 -5
  79. package/dist/src/hooks/useBorrowData.d.ts.map +1 -1
  80. package/dist/src/hooks/useBorrowData.js +53 -11
  81. package/dist/src/hooks/useBorrowData.js.map +1 -1
  82. package/dist/src/hooks/useCreateAccount.d.ts.map +1 -1
  83. package/dist/src/hooks/useCreateAccount.js +3 -3
  84. package/dist/src/hooks/useCreateAccount.js.map +1 -1
  85. package/dist/src/hooks/useGetCurrentAccount.d.ts +2 -2
  86. package/dist/src/hooks/useGetCurrentAccount.d.ts.map +1 -1
  87. package/dist/src/hooks/useGetCurrentAccount.js +4 -6
  88. package/dist/src/hooks/useGetCurrentAccount.js.map +1 -1
  89. package/dist/src/hooks/useLinkAccount.d.ts.map +1 -1
  90. package/dist/src/hooks/useLinkAccount.js +3 -3
  91. package/dist/src/hooks/useLinkAccount.js.map +1 -1
  92. package/dist/src/hooks/useTokensBalances.d.ts +36 -35
  93. package/dist/src/hooks/useTokensBalances.d.ts.map +1 -1
  94. package/dist/src/hooks/useTokensBalances.js +93 -52
  95. package/dist/src/hooks/useTokensBalances.js.map +1 -1
  96. package/dist/src/hooks/useWalletAccount.d.ts +8 -10
  97. package/dist/src/hooks/useWalletAccount.d.ts.map +1 -1
  98. package/dist/src/hooks/useWalletAccount.js +22 -19
  99. package/dist/src/hooks/useWalletAccount.js.map +1 -1
  100. package/dist/src/index.d.ts +1 -1
  101. package/dist/src/index.d.ts.map +1 -1
  102. package/dist/src/index.js +1 -1
  103. package/dist/src/index.js.map +1 -1
  104. package/dist/src/lib/contracts/index.d.ts +1 -1
  105. package/dist/src/lib/contracts/index.d.ts.map +1 -1
  106. package/dist/src/lib/contracts/index.js +4 -0
  107. package/dist/src/lib/contracts/index.js.map +1 -1
  108. package/dist/src/provider.d.ts +7 -1
  109. package/dist/src/provider.d.ts.map +1 -1
  110. package/dist/src/provider.js +4 -1
  111. package/dist/src/provider.js.map +1 -1
  112. package/dist/src/utils/assets.d.ts +145 -0
  113. package/dist/src/utils/assets.d.ts.map +1 -0
  114. package/dist/src/utils/assets.js +100 -0
  115. package/dist/src/utils/assets.js.map +1 -0
  116. package/dist/src/utils/assets.test.d.ts +2 -0
  117. package/dist/src/utils/assets.test.d.ts.map +1 -0
  118. package/dist/src/utils/assets.test.js +46 -0
  119. package/dist/src/utils/assets.test.js.map +1 -0
  120. package/dist/src/utils/currency.d.ts +6 -3
  121. package/dist/src/utils/currency.d.ts.map +1 -1
  122. package/dist/src/utils/currency.js +13 -10
  123. package/dist/src/utils/currency.js.map +1 -1
  124. package/dist/src/utils/currency.test.js +44 -2
  125. package/dist/src/utils/currency.test.js.map +1 -1
  126. package/dist/src/utils/numbers.d.ts +13 -53
  127. package/dist/src/utils/numbers.d.ts.map +1 -1
  128. package/dist/src/utils/numbers.js +16 -118
  129. package/dist/src/utils/numbers.js.map +1 -1
  130. package/dist/src/utils/numbers.test.js +24 -142
  131. package/dist/src/utils/numbers.test.js.map +1 -1
  132. package/package.json +2 -1
  133. package/src/api/auth.ts +1 -1
  134. package/src/components/Dropdown/Content.tsx +3 -48
  135. package/src/components/Dropdown/Dropdown.tsx +7 -55
  136. package/src/components/Dropdown/ListingItem.tsx +155 -59
  137. package/src/components/Dropdown/NestedViewLayout.tsx +32 -20
  138. package/src/components/Dropdown/Receive/Receive.tsx +69 -32
  139. package/src/components/Dropdown/Root/AccountAddressActions.tsx +64 -35
  140. package/src/components/Dropdown/Root/AccountBalance.tsx +54 -16
  141. package/src/components/Dropdown/Root/AccountBtcListing.tsx +52 -0
  142. package/src/components/Dropdown/Root/AccountError.tsx +34 -0
  143. package/src/components/Dropdown/Root/AccountMusdListing.tsx +45 -0
  144. package/src/components/Dropdown/Root/AccountOtherAssets.tsx +63 -46
  145. package/src/components/Dropdown/Root/Root.tsx +28 -98
  146. package/src/components/Dropdown/Root/WalletAddress.tsx +95 -89
  147. package/src/components/Dropdown/Root/WelcomeBlock.tsx +109 -29
  148. package/src/components/Dropdown/SlotNumber.tsx +131 -0
  149. package/src/config.ts +3 -59
  150. package/src/constants.ts +0 -6
  151. package/src/hooks/useAssetsConversionRates.ts +49 -67
  152. package/src/hooks/useAuthenticateWithWallet.ts +7 -5
  153. package/src/hooks/useBorrowData.ts +71 -12
  154. package/src/hooks/useCreateAccount.ts +5 -4
  155. package/src/hooks/useGetCurrentAccount.ts +5 -7
  156. package/src/hooks/useLinkAccount.ts +5 -4
  157. package/src/hooks/useTokensBalances.ts +152 -74
  158. package/src/hooks/useWalletAccount.ts +27 -36
  159. package/src/index.ts +0 -1
  160. package/src/lib/contracts/index.ts +8 -1
  161. package/src/provider.ts +11 -3
  162. package/src/utils/assets.test.ts +57 -0
  163. package/src/utils/assets.ts +103 -0
  164. package/src/utils/currency.test.ts +76 -2
  165. package/src/utils/currency.ts +20 -15
  166. package/src/utils/numbers.test.ts +29 -180
  167. package/src/utils/numbers.ts +22 -171
  168. package/dist/src/components/Dropdown/Root/AccountAssetItem.d.ts +0 -11
  169. package/dist/src/components/Dropdown/Root/AccountAssetItem.d.ts.map +0 -1
  170. package/dist/src/components/Dropdown/Root/AccountAssetItem.js +0 -9
  171. package/dist/src/components/Dropdown/Root/AccountAssetItem.js.map +0 -1
  172. package/dist/src/hooks/useDropdownData.d.ts +0 -47
  173. package/dist/src/hooks/useDropdownData.d.ts.map +0 -1
  174. package/dist/src/hooks/useDropdownData.js +0 -97
  175. package/dist/src/hooks/useDropdownData.js.map +0 -1
  176. package/dist/src/utils/cryptoAssets.d.ts +0 -44
  177. package/dist/src/utils/cryptoAssets.d.ts.map +0 -1
  178. package/dist/src/utils/cryptoAssets.js +0 -129
  179. package/dist/src/utils/cryptoAssets.js.map +0 -1
  180. package/dist/src/utils/cryptoAssets.test.d.ts +0 -2
  181. package/dist/src/utils/cryptoAssets.test.d.ts.map +0 -1
  182. package/dist/src/utils/cryptoAssets.test.js +0 -67
  183. package/dist/src/utils/cryptoAssets.test.js.map +0 -1
  184. package/src/components/Dropdown/Root/AccountAssetItem.tsx +0 -26
  185. package/src/hooks/useDropdownData.ts +0 -152
  186. package/src/utils/cryptoAssets.test.ts +0 -79
  187. package/src/utils/cryptoAssets.ts +0 -171
@@ -1,16 +1,20 @@
1
- import { useReadContracts } from "wagmi";
2
- import { useCallback, useMemo } from "react";
3
- import { useQueryClient } from "@tanstack/react-query";
4
- import { usePassportContext } from "./usePassportContext";
1
+ import { useConfig } from "wagmi";
2
+ import { formatUnits } from "viem";
3
+ import { useQuery, useQueryClient, } from "@tanstack/react-query";
4
+ import { getBalance, readContracts } from "wagmi/actions";
5
5
  import { mainnetTokenContracts, testnetTokenContracts, } from "../lib/contracts";
6
6
  import useWalletAccount from "./useWalletAccount";
7
+ import { getAsset, isBitcoinLikeCryptoAsset, isTTokenCryptoAsset, } from "../utils/assets";
8
+ import { convertToUsd } from "../utils/currency";
7
9
  import { CHAIN_ID } from "../constants";
10
+ import { useAssetsConversionRates } from "./useAssetsConversionRates";
11
+ import { normalizePrecision } from "../utils/numbers";
8
12
  // Wagmi handles typesafety with ABI const assertions. TypeScript doesn't
9
13
  // support importing JSON as const yet so types cannot be inferred from the
10
14
  // imported contract. As a workaround there is minimal ABI definition that can
11
15
  // be asserted types from.
12
16
  // Ref: https://wagmi.sh/core/typescript#const-assert-abis-typed-data
13
- const BALANCE_OF_ABI = [
17
+ export const BALANCE_OF_ABI = [
14
18
  {
15
19
  inputs: [
16
20
  {
@@ -44,6 +48,7 @@ const BALANCE_TOKENS = [
44
48
  "mxSolvBTC",
45
49
  "MUSD",
46
50
  ];
51
+ const TOKEN_BALANCES_QUERY_KEY = "passport.tokenBalances";
47
52
  /**
48
53
  * Hook to get the balance of a list of tokens for the current account
49
54
  * @param options.tokens The list of tokens to get the balance for. It will
@@ -53,67 +58,106 @@ const BALANCE_TOKENS = [
53
58
  * @returns Tanstack's `useQuery` returnings with balance of tokens for the
54
59
  * current account in form of typesafe object with token names as keys
55
60
  * and balances as values.
56
- * @dev In case of error data fallbacks to `0n`. To determine if an error
57
- * occurred, check the `isError` property.
58
61
  * @example
59
62
  * const mezoTokensBalance = useTokensBalances({
60
63
  * tokens: ["mT", "mxSolvBTC"],
61
64
  * })
62
- * console.log(mezoTokensBalance?.data.mT) // Eg. 0n
63
- * console.log(Object.keys(mezoTokensBalance?.data)) // ["mT", "mxSolvBTC"]
65
+ * // Assuming the status is "success"
66
+ * console.log(mezoTokensBalance.data.mT) // Eg. { value: 0n ... }
67
+ * console.log(Object.keys(mezoTokensBalance.data)) // ["mT", "mxSolvBTC"]
64
68
  */
65
69
  export function useTokensBalances(options = {}) {
66
- const { environment = "mainnet" } = usePassportContext();
67
- const { accountAddress } = useWalletAccount();
68
- const contractsMap = useMemo(() => {
69
- const contracts = environment === "mainnet" ? mainnetTokenContracts : testnetTokenContracts;
70
- const tokenContracts = Object.fromEntries(Object.entries(contracts).filter(([key]) => BALANCE_TOKENS.includes(key)));
71
- return tokenContracts;
72
- }, [environment]);
73
- const { tokens = Object.keys(contractsMap), queryOptions = {} } = options;
74
- const contracts = useMemo(() => {
75
- if (!accountAddress)
76
- return [];
77
- return tokens.map((token) => {
78
- const { address } = contractsMap[token];
79
- return {
80
- address,
81
- abi: BALANCE_OF_ABI,
82
- functionName: "balanceOf",
83
- args: [accountAddress],
84
- chainId: CHAIN_ID[environment],
85
- };
86
- });
87
- }, [accountAddress, tokens, contractsMap, environment]);
88
- return useReadContracts({
89
- contracts,
90
- query: {
91
- select: (data) => data.reduce((acc, item) => {
92
- const token = tokens[data.indexOf(item)];
70
+ const { tokens = BALANCE_TOKENS, ...restQueryOptions } = options;
71
+ const { data: walletAccountData } = useWalletAccount();
72
+ const config = useConfig();
73
+ const { data: conversionRatesData } = useAssetsConversionRates();
74
+ return useQuery({
75
+ queryKey: [
76
+ TOKEN_BALANCES_QUERY_KEY,
77
+ walletAccountData?.accountAddress,
78
+ options.tokens,
79
+ ],
80
+ enabled: !!walletAccountData?.accountAddress && !!conversionRatesData,
81
+ queryFn: async () => {
82
+ const isMainnet = config.state.chainId === CHAIN_ID.mainnet;
83
+ const contractsMap = isMainnet
84
+ ? mainnetTokenContracts
85
+ : testnetTokenContracts;
86
+ const accountAddress = walletAccountData?.accountAddress;
87
+ if (!accountAddress) {
88
+ throw new Error("Account address is not available.");
89
+ }
90
+ const tokenContracts = tokens.map((token) => {
91
+ const { address } = contractsMap[token];
93
92
  return {
94
- ...acc,
95
- [token]: item.result ?? 0n,
93
+ address,
94
+ abi: BALANCE_OF_ABI,
95
+ functionName: "balanceOf",
96
+ args: [accountAddress],
97
+ chainId: config.state.chainId,
98
+ };
99
+ });
100
+ return Promise.all([
101
+ getBalance(config, { address: accountAddress }),
102
+ readContracts(config, {
103
+ contracts: tokenContracts,
104
+ }),
105
+ ]);
106
+ },
107
+ select: (data) => {
108
+ const [btcBalance, tokensBalancesData] = data;
109
+ if (!conversionRatesData) {
110
+ throw new Error("Conversion rates data is not available.");
111
+ }
112
+ const parsedBtcBalance = {
113
+ ...btcBalance,
114
+ symbol: getAsset("BTC").symbol,
115
+ usd: convertToUsd(btcBalance.value, btcBalance.decimals, conversionRatesData.rates.BTC, conversionRatesData.decimals),
116
+ };
117
+ const parsedTokensBalances = tokensBalancesData.map((item, index) => {
118
+ const token = tokens[index];
119
+ const { decimals, symbol } = getAsset(token);
120
+ if (item.status === "failure") {
121
+ throw new Error(`Failed to fetch balance of ${token} for ${walletAccountData?.accountAddress}.`);
122
+ }
123
+ const tokenBalance = {
124
+ value: item.result,
125
+ decimals,
126
+ symbol,
127
+ formatted: formatUnits(item.result, decimals),
128
+ };
129
+ let usd = {
130
+ value: normalizePrecision(tokenBalance.value, tokenBalance.decimals, conversionRatesData.decimals),
131
+ formatted: formatUnits(tokenBalance.value, tokenBalance.decimals),
96
132
  };
97
- }, {}),
98
- ...queryOptions,
133
+ if (isBitcoinLikeCryptoAsset(tokenBalance.symbol)) {
134
+ usd = convertToUsd(tokenBalance.value, tokenBalance.decimals, conversionRatesData.rates.BTC, conversionRatesData.decimals);
135
+ }
136
+ if (isTTokenCryptoAsset(tokenBalance.symbol)) {
137
+ usd = convertToUsd(tokenBalance.value, tokenBalance.decimals, conversionRatesData.rates.mT, conversionRatesData.decimals);
138
+ }
139
+ return { ...tokenBalance, usd };
140
+ });
141
+ return [parsedBtcBalance, ...parsedTokensBalances].reduce((acc, token) => ({
142
+ ...acc,
143
+ [token.symbol]: token,
144
+ }), {});
99
145
  },
146
+ ...restQueryOptions,
100
147
  });
101
148
  }
102
149
  /**
103
150
  * Hook for invalidating current user's token balances. Can be used to
104
151
  * invalidate the balances manually, which forces the data to be re-fetched.
105
- * @param tokens The list of tokens (as string arrays) for which we want to
106
- * invalidate query for.
107
152
  * @returns Function `invalidateTokenBalances` that invalidates token balances
108
153
  * @example
109
- * const { invalidateTokenBalances } = useInvalidateTokensBalances(["mT", "mUSD"])
154
+ * const { invalidateTokenBalances } = useInvalidateTokensBalances()
110
155
  * (...)
111
156
  * await invalidateTokenBalances()
112
157
  */
113
- export function useInvalidateTokensBalances(tokens) {
158
+ export function useInvalidateTokensBalances() {
114
159
  const queryClient = useQueryClient();
115
- const { queryKey } = useTokensBalances({ tokens });
116
- const invalidateTokensBalancesHandler = useCallback(() => queryClient.invalidateQueries({ queryKey }), [queryClient, queryKey]);
160
+ const invalidateTokensBalancesHandler = () => queryClient.invalidateQueries({ queryKey: [TOKEN_BALANCES_QUERY_KEY] });
117
161
  return {
118
162
  invalidateTokensBalances: invalidateTokensBalancesHandler,
119
163
  };
@@ -121,18 +165,15 @@ export function useInvalidateTokensBalances(tokens) {
121
165
  /**
122
166
  * Hook for resetting current user's token balances. Can be used to reset the
123
167
  * balances manually, which forces the data to be re-fetched.
124
- * @param tokens The list of tokens (as string arrays) for which we want to
125
- * reset query for.
126
168
  * @returns Function `resetTokenBalances` that invalidates token balances
127
169
  * @example
128
- * const { resetTokenBalances } = useResetTokensBalances(["mT", "mUSD"])
170
+ * const { resetTokenBalances } = useResetTokensBalances()
129
171
  * (...)
130
172
  * await resetTokenBalances()
131
173
  */
132
- export function useResetTokensBalances(tokens) {
174
+ export function useResetTokensBalances() {
133
175
  const queryClient = useQueryClient();
134
- const { queryKey } = useTokensBalances({ tokens });
135
- const resetTokenBalancesHandler = useCallback(() => queryClient.resetQueries({ queryKey }), [queryClient, queryKey]);
176
+ const resetTokenBalancesHandler = () => queryClient.resetQueries({ queryKey: [TOKEN_BALANCES_QUERY_KEY] });
136
177
  return {
137
178
  resetTokenBalances: resetTokenBalancesHandler,
138
179
  };
@@ -1 +1 @@
1
- {"version":3,"file":"useTokensBalances.js","sourceRoot":"","sources":["../../../src/hooks/useTokensBalances.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useTokensBalances.js","sourceRoot":"","sources":["../../../src/hooks/useTokensBalances.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,11 @@
1
- import { Address } from "viem";
2
1
  import { Connector } from "wagmi";
3
- type UseWalletAccountReturn = {
4
- accountAddress?: Address;
5
- walletAddress?: string;
2
+ export declare const WALLET_ACCOUNT_QUERY_KEY = "passport.walletAccount";
3
+ export default function useWalletAccount(): import("@tanstack/react-query").UseQueryResult<{
4
+ accountAddress: `0x${string}`;
5
+ walletAddress: string;
6
6
  isConnected: boolean;
7
- networkFamily: "bitcoin" | "evm";
8
- connector?: Connector;
9
- chainId?: number;
10
- };
11
- export default function useWalletAccount(): UseWalletAccountReturn;
12
- export {};
7
+ networkFamily: "evm" | "bitcoin";
8
+ connector: Connector;
9
+ chainId: number;
10
+ }, Error>;
13
11
  //# sourceMappingURL=useWalletAccount.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useWalletAccount.d.ts","sourceRoot":"","sources":["../../../src/hooks/useWalletAccount.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAC9B,OAAO,EAAE,SAAS,EAAc,MAAM,OAAO,CAAA;AAE7C,KAAK,sBAAsB,GAAG;IAC5B,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,WAAW,EAAE,OAAO,CAAA;IACpB,aAAa,EAAE,SAAS,GAAG,KAAK,CAAA;IAChC,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,MAAM,CAAC,OAAO,UAAU,gBAAgB,IAAI,sBAAsB,CAmCjE"}
1
+ {"version":3,"file":"useWalletAccount.d.ts","sourceRoot":"","sources":["../../../src/hooks/useWalletAccount.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAc,MAAM,OAAO,CAAA;AAE7C,eAAO,MAAM,wBAAwB,2BAA2B,CAAA;AAShE,MAAM,CAAC,OAAO,UAAU,gBAAgB;;;;;;;UA4BvC"}
@@ -1,29 +1,32 @@
1
1
  import { useQuery } from "@tanstack/react-query";
2
- import { useMemo } from "react";
3
2
  import { useAccount } from "wagmi";
3
+ export const WALLET_ACCOUNT_QUERY_KEY = "passport.walletAccount";
4
+ const getBitcoinProviderFromConnector = (connector) => connector.type === "orangekit"
5
+ ? connector?.getBitcoinProvider()
6
+ : undefined;
7
+ // TODO: Rename to `usePassportAccount`
4
8
  export default function useWalletAccount() {
5
- const { address: evmAddress, connector, chainId } = useAccount();
6
- const networkFamily = useMemo(() => (connector?.type !== "orangekit" ? "evm" : "bitcoin"), [connector]);
7
- const { data: btcData } = useQuery({
8
- queryKey: [connector?.id],
9
+ const { address: evmAddress, connector, chainId, isConnected } = useAccount();
10
+ return useQuery({
11
+ queryKey: [WALLET_ACCOUNT_QUERY_KEY, evmAddress, chainId],
12
+ enabled: !!evmAddress,
9
13
  queryFn: async () => {
10
- const bitcoinProvider = connector.getBitcoinProvider();
11
- const address = await bitcoinProvider.getAddress();
12
- const balance = await bitcoinProvider.getBalance();
14
+ if (!evmAddress || !connector || !chainId) {
15
+ throw new Error("Failed to retrieve wallet account information");
16
+ }
17
+ const bitcoinProvider = getBitcoinProviderFromConnector(connector);
18
+ const btcAddress = await bitcoinProvider?.getAddress();
19
+ const walletAddress = btcAddress ?? evmAddress;
20
+ const networkFamily = connector.type !== "orangekit" ? "evm" : "bitcoin";
13
21
  return {
14
- address,
15
- balance,
22
+ accountAddress: evmAddress,
23
+ walletAddress,
24
+ isConnected,
25
+ networkFamily,
26
+ connector,
27
+ chainId,
16
28
  };
17
29
  },
18
30
  });
19
- const { address: btcAddress } = btcData || {};
20
- return {
21
- accountAddress: evmAddress,
22
- walletAddress: btcAddress ?? evmAddress,
23
- isConnected: networkFamily === "bitcoin" ? !!btcAddress : !!evmAddress,
24
- networkFamily,
25
- connector,
26
- chainId,
27
- };
28
31
  }
29
32
  //# sourceMappingURL=useWalletAccount.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useWalletAccount.js","sourceRoot":"","sources":["../../../src/hooks/useWalletAccount.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAE/B,OAAO,EAAa,UAAU,EAAE,MAAM,OAAO,CAAA;AAW7C,MAAM,CAAC,OAAO,UAAU,gBAAgB;IACtC,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,UAAU,EAAE,CAAA;IAEhE,MAAM,aAAa,GAAG,OAAO,CAC3B,GAAG,EAAE,CAAC,CAAC,SAAS,EAAE,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,EAC3D,CAAC,SAAS,CAAC,CACZ,CAAA;IAED,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,QAAQ,CAAC;QACjC,QAAQ,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC;QACzB,OAAO,EAAE,KAAK,IAAI,EAAE;YAClB,MAAM,eAAe,GACnB,SACD,CAAC,kBAAkB,EAAE,CAAA;YAEtB,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,UAAU,EAAE,CAAA;YAClD,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,UAAU,EAAE,CAAA;YAElD,OAAO;gBACL,OAAO;gBACP,OAAO;aACR,CAAA;QACH,CAAC;KACF,CAAC,CAAA;IAEF,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,OAAO,IAAI,EAAE,CAAA;IAE7C,OAAO;QACL,cAAc,EAAE,UAAU;QAC1B,aAAa,EAAE,UAAU,IAAI,UAAU;QACvC,WAAW,EAAE,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU;QACtE,aAAa;QACb,SAAS;QACT,OAAO;KACC,CAAA;AACZ,CAAC"}
1
+ {"version":3,"file":"useWalletAccount.js","sourceRoot":"","sources":["../../../src/hooks/useWalletAccount.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AAChD,OAAO,EAAa,UAAU,EAAE,MAAM,OAAO,CAAA;AAE7C,MAAM,CAAC,MAAM,wBAAwB,GAAG,wBAAwB,CAAA;AAEhE,MAAM,+BAA+B,GAAG,CAAC,SAAoB,EAAE,EAAE,CAC/D,SAAS,CAAC,IAAI,KAAK,WAAW;IAC5B,CAAC,CAAE,SAA2C,EAAE,kBAAkB,EAAE;IACpE,CAAC,CAAC,SAAS,CAAA;AAEf,uCAAuC;AAEvC,MAAM,CAAC,OAAO,UAAU,gBAAgB;IACtC,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,UAAU,EAAE,CAAA;IAE7E,OAAO,QAAQ,CAAC;QACd,QAAQ,EAAE,CAAC,wBAAwB,EAAE,UAAU,EAAE,OAAO,CAAC;QACzD,OAAO,EAAE,CAAC,CAAC,UAAU;QACrB,OAAO,EAAE,KAAK,IAAI,EAAE;YAClB,IAAI,CAAC,UAAU,IAAI,CAAC,SAAS,IAAI,CAAC,OAAO,EAAE,CAAC;gBAC1C,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAA;YAClE,CAAC;YAED,MAAM,eAAe,GAAG,+BAA+B,CAAC,SAAS,CAAC,CAAA;YAClE,MAAM,UAAU,GAAG,MAAM,eAAe,EAAE,UAAU,EAAE,CAAA;YAEtD,MAAM,aAAa,GAAG,UAAU,IAAI,UAAU,CAAA;YAC9C,MAAM,aAAa,GACjB,SAAS,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAA;YAEpD,OAAO;gBACL,cAAc,EAAE,UAAU;gBAC1B,aAAa;gBACb,WAAW;gBACX,aAAa;gBACb,SAAS;gBACT,OAAO;aACR,CAAA;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
@@ -1,5 +1,5 @@
1
1
  export * from "./components";
2
- export { defaultConfig, unisatWalletMezoMainnet, unisatWalletMezoTestnet, okxWalletMezoMainnet, okxWalletMezoTestnet, xverseWalletMezoMainnet, xverseWalletMezoTestnet, getDefaultWallets, getConfig, safeWalletConnectWallet, } from "./config";
2
+ export { defaultConfig, unisatWalletMezoMainnet, unisatWalletMezoTestnet, okxWalletMezoMainnet, okxWalletMezoTestnet, xverseWalletMezoMainnet, xverseWalletMezoTestnet, getDefaultWallets, getConfig, } from "./config";
3
3
  export * from "./constants";
4
4
  export * from "./hooks";
5
5
  export * from "./provider";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,OAAO,EACL,aAAa,EACb,uBAAuB,EACvB,uBAAuB,EACvB,oBAAoB,EACpB,oBAAoB,EACpB,uBAAuB,EACvB,uBAAuB,EACvB,iBAAiB,EACjB,SAAS,EACT,uBAAuB,GACxB,MAAM,UAAU,CAAA;AACjB,cAAc,aAAa,CAAA;AAC3B,cAAc,SAAS,CAAA;AACvB,cAAc,YAAY,CAAA;AAC1B,cAAc,UAAU,CAAA;AACxB,OAAO,EAAE,2BAA2B,EAAE,MAAM,gBAAgB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,OAAO,EACL,aAAa,EACb,uBAAuB,EACvB,uBAAuB,EACvB,oBAAoB,EACpB,oBAAoB,EACpB,uBAAuB,EACvB,uBAAuB,EACvB,iBAAiB,EACjB,SAAS,GACV,MAAM,UAAU,CAAA;AACjB,cAAc,aAAa,CAAA;AAC3B,cAAc,SAAS,CAAA;AACvB,cAAc,YAAY,CAAA;AAC1B,cAAc,UAAU,CAAA;AACxB,OAAO,EAAE,2BAA2B,EAAE,MAAM,gBAAgB,CAAA"}
package/dist/src/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  export * from "./components";
2
- export { defaultConfig, unisatWalletMezoMainnet, unisatWalletMezoTestnet, okxWalletMezoMainnet, okxWalletMezoTestnet, xverseWalletMezoMainnet, xverseWalletMezoTestnet, getDefaultWallets, getConfig, safeWalletConnectWallet, } from "./config";
2
+ export { defaultConfig, unisatWalletMezoMainnet, unisatWalletMezoTestnet, okxWalletMezoMainnet, okxWalletMezoTestnet, xverseWalletMezoMainnet, xverseWalletMezoTestnet, getDefaultWallets, getConfig, } from "./config";
3
3
  export * from "./constants";
4
4
  export * from "./hooks";
5
5
  export * from "./provider";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,OAAO,EACL,aAAa,EACb,uBAAuB,EACvB,uBAAuB,EACvB,oBAAoB,EACpB,oBAAoB,EACpB,uBAAuB,EACvB,uBAAuB,EACvB,iBAAiB,EACjB,SAAS,EACT,uBAAuB,GACxB,MAAM,UAAU,CAAA;AACjB,cAAc,aAAa,CAAA;AAC3B,cAAc,SAAS,CAAA;AACvB,cAAc,YAAY,CAAA;AAC1B,cAAc,UAAU,CAAA;AACxB,OAAO,EAAE,2BAA2B,EAAE,MAAM,gBAAgB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,OAAO,EACL,aAAa,EACb,uBAAuB,EACvB,uBAAuB,EACvB,oBAAoB,EACpB,oBAAoB,EACpB,uBAAuB,EACvB,uBAAuB,EACvB,iBAAiB,EACjB,SAAS,GACV,MAAM,UAAU,CAAA;AACjB,cAAc,aAAa,CAAA;AAC3B,cAAc,SAAS,CAAA;AACvB,cAAc,YAAY,CAAA;AAC1B,cAAc,UAAU,CAAA;AACxB,OAAO,EAAE,2BAA2B,EAAE,MAAM,gBAAgB,CAAA"}
@@ -1,6 +1,6 @@
1
1
  import { Abi, Address } from "viem";
2
2
  export type MezoChainToken = "mcbBTC" | "mDAI" | "mFBTC" | "mSolvBTC" | "mswBTC" | "mT" | "mUSDC" | "mUSDe" | "mUSDT" | "mxSolvBTC" | "MUSD";
3
- export type MezoBorrowContract = "TroveManager" | "BorrowerOperations";
3
+ export type MezoBorrowContract = "TroveManager" | "BorrowerOperations" | "PriceFeed";
4
4
  type ContractsMap<K extends string> = Record<K, {
5
5
  address: Address;
6
6
  abi: Abi;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/contracts/index.ts"],"names":[],"mappings":"AA4BA,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAEnC,MAAM,MAAM,cAAc,GACtB,QAAQ,GACR,MAAM,GACN,OAAO,GACP,UAAU,GACV,QAAQ,GACR,IAAI,GACJ,OAAO,GACP,OAAO,GACP,OAAO,GACP,WAAW,GACX,MAAM,CAAA;AAEV,MAAM,MAAM,kBAAkB,GAAG,cAAc,GAAG,oBAAoB,CAAA;AAEtE,KAAK,YAAY,CAAC,CAAC,SAAS,MAAM,IAAI,MAAM,CAC1C,CAAC,EACD;IACE,OAAO,EAAE,OAAO,CAAA;IAChB,GAAG,EAAE,GAAG,CAAA;CACT,CACF,CAAA;AAED,eAAO,MAAM,qBAAqB,EAYlB,YAAY,CAAC,cAAc,CAAC,CAAA;AAE5C,eAAO,MAAM,qBAAqB,EAYlB,YAAY,CAAC,cAAc,CAAC,CAAA;AAE5C,eAAO,MAAM,sBAAsB,EAGnB,YAAY,CAAC,kBAAkB,CAAC,CAAA;AAEhD,eAAO,MAAM,sBAAsB,EAGnB,YAAY,CAAC,kBAAkB,CAAC,CAAA;AAEhD,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,eAAe,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/contracts/index.ts"],"names":[],"mappings":"AA8BA,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAEnC,MAAM,MAAM,cAAc,GACtB,QAAQ,GACR,MAAM,GACN,OAAO,GACP,UAAU,GACV,QAAQ,GACR,IAAI,GACJ,OAAO,GACP,OAAO,GACP,OAAO,GACP,WAAW,GACX,MAAM,CAAA;AAEV,MAAM,MAAM,kBAAkB,GAC1B,cAAc,GACd,oBAAoB,GACpB,WAAW,CAAA;AAEf,KAAK,YAAY,CAAC,CAAC,SAAS,MAAM,IAAI,MAAM,CAC1C,CAAC,EACD;IACE,OAAO,EAAE,OAAO,CAAA;IAChB,GAAG,EAAE,GAAG,CAAA;CACT,CACF,CAAA;AAED,eAAO,MAAM,qBAAqB,EAYlB,YAAY,CAAC,cAAc,CAAC,CAAA;AAE5C,eAAO,MAAM,qBAAqB,EAYlB,YAAY,CAAC,cAAc,CAAC,CAAA;AAE5C,eAAO,MAAM,sBAAsB,EAInB,YAAY,CAAC,kBAAkB,CAAC,CAAA;AAEhD,eAAO,MAAM,sBAAsB,EAInB,YAAY,CAAC,kBAAkB,CAAC,CAAA;AAEhD,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,eAAe,CAAA"}
@@ -24,6 +24,8 @@ import xsolvbtcTestnet from "@mezo-org/mezod-contracts/deployments/testnet/mxSol
24
24
  import musdTestnet from "@mezo-org/musd-contracts/deployments/matsnet/MUSD.json";
25
25
  import troveManagerTestnet from "@mezo-org/musd-contracts/deployments/matsnet/TroveManager.json";
26
26
  import borrowerOperationsTestnet from "@mezo-org/musd-contracts/deployments/matsnet/BorrowerOperations.json";
27
+ import priceFeed from "@mezo-org/musd-contracts/deployments/mainnet/PriceFeed.json";
28
+ import priceFeedTestnet from "@mezo-org/musd-contracts/deployments/matsnet/PriceFeed.json";
27
29
  export const testnetTokenContracts = {
28
30
  mcbBTC: cbbtcTestnet,
29
31
  mDAI: daiTestnet,
@@ -53,10 +55,12 @@ export const mainnetTokenContracts = {
53
55
  export const mainnetBorrowContracts = {
54
56
  TroveManager: troveManagerMainnet,
55
57
  BorrowerOperations: borrowerOperationsMainnet,
58
+ PriceFeed: priceFeed,
56
59
  };
57
60
  export const testnetBorrowContracts = {
58
61
  TroveManager: troveManagerTestnet,
59
62
  BorrowerOperations: borrowerOperationsTestnet,
63
+ PriceFeed: priceFeedTestnet,
60
64
  };
61
65
  export { default as priceOracleContract } from "./priceOracle";
62
66
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/contracts/index.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,2DAA2D,CAAA;AACpF,OAAO,UAAU,MAAM,yDAAyD,CAAA;AAChF,OAAO,WAAW,MAAM,0DAA0D,CAAA;AAClF,OAAO,cAAc,MAAM,6DAA6D,CAAA;AACxF,OAAO,YAAY,MAAM,2DAA2D,CAAA;AACpF,OAAO,QAAQ,MAAM,uDAAuD,CAAA;AAC5E,OAAO,WAAW,MAAM,0DAA0D,CAAA;AAClF,OAAO,WAAW,MAAM,0DAA0D,CAAA;AAClF,OAAO,WAAW,MAAM,0DAA0D,CAAA;AAClF,OAAO,eAAe,MAAM,8DAA8D,CAAA;AAC1F,OAAO,WAAW,MAAM,wDAAwD,CAAA;AAChF,OAAO,mBAAmB,MAAM,gEAAgE,CAAA;AAChG,OAAO,yBAAyB,MAAM,sEAAsE,CAAA;AAE5G,OAAO,YAAY,MAAM,2DAA2D,CAAA;AACpF,OAAO,UAAU,MAAM,yDAAyD,CAAA;AAChF,OAAO,WAAW,MAAM,0DAA0D,CAAA;AAClF,OAAO,cAAc,MAAM,6DAA6D,CAAA;AACxF,OAAO,YAAY,MAAM,2DAA2D,CAAA;AACpF,OAAO,QAAQ,MAAM,uDAAuD,CAAA;AAC5E,OAAO,WAAW,MAAM,0DAA0D,CAAA;AAClF,OAAO,WAAW,MAAM,0DAA0D,CAAA;AAClF,OAAO,WAAW,MAAM,0DAA0D,CAAA;AAClF,OAAO,eAAe,MAAM,8DAA8D,CAAA;AAC1F,OAAO,WAAW,MAAM,wDAAwD,CAAA;AAChF,OAAO,mBAAmB,MAAM,gEAAgE,CAAA;AAChG,OAAO,yBAAyB,MAAM,sEAAsE,CAAA;AA2B5G,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,MAAM,EAAE,YAAY;IACpB,IAAI,EAAE,UAAU;IAChB,KAAK,EAAE,WAAW;IAClB,QAAQ,EAAE,cAAc;IACxB,MAAM,EAAE,YAAY;IACpB,EAAE,EAAE,QAAQ;IACZ,KAAK,EAAE,WAAW;IAClB,KAAK,EAAE,WAAW;IAClB,KAAK,EAAE,WAAW;IAClB,SAAS,EAAE,eAAe;IAC1B,IAAI,EAAE,WAAW;CACyB,CAAA;AAE5C,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,MAAM,EAAE,YAAY;IACpB,IAAI,EAAE,UAAU;IAChB,KAAK,EAAE,WAAW;IAClB,QAAQ,EAAE,cAAc;IACxB,MAAM,EAAE,YAAY;IACpB,EAAE,EAAE,QAAQ;IACZ,KAAK,EAAE,WAAW;IAClB,KAAK,EAAE,WAAW;IAClB,KAAK,EAAE,WAAW;IAClB,SAAS,EAAE,eAAe;IAC1B,IAAI,EAAE,WAAW;CACyB,CAAA;AAE5C,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,YAAY,EAAE,mBAAmB;IACjC,kBAAkB,EAAE,yBAAyB;CACC,CAAA;AAEhD,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,YAAY,EAAE,mBAAmB;IACjC,kBAAkB,EAAE,yBAAyB;CACC,CAAA;AAEhD,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,eAAe,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/contracts/index.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,2DAA2D,CAAA;AACpF,OAAO,UAAU,MAAM,yDAAyD,CAAA;AAChF,OAAO,WAAW,MAAM,0DAA0D,CAAA;AAClF,OAAO,cAAc,MAAM,6DAA6D,CAAA;AACxF,OAAO,YAAY,MAAM,2DAA2D,CAAA;AACpF,OAAO,QAAQ,MAAM,uDAAuD,CAAA;AAC5E,OAAO,WAAW,MAAM,0DAA0D,CAAA;AAClF,OAAO,WAAW,MAAM,0DAA0D,CAAA;AAClF,OAAO,WAAW,MAAM,0DAA0D,CAAA;AAClF,OAAO,eAAe,MAAM,8DAA8D,CAAA;AAC1F,OAAO,WAAW,MAAM,wDAAwD,CAAA;AAChF,OAAO,mBAAmB,MAAM,gEAAgE,CAAA;AAChG,OAAO,yBAAyB,MAAM,sEAAsE,CAAA;AAE5G,OAAO,YAAY,MAAM,2DAA2D,CAAA;AACpF,OAAO,UAAU,MAAM,yDAAyD,CAAA;AAChF,OAAO,WAAW,MAAM,0DAA0D,CAAA;AAClF,OAAO,cAAc,MAAM,6DAA6D,CAAA;AACxF,OAAO,YAAY,MAAM,2DAA2D,CAAA;AACpF,OAAO,QAAQ,MAAM,uDAAuD,CAAA;AAC5E,OAAO,WAAW,MAAM,0DAA0D,CAAA;AAClF,OAAO,WAAW,MAAM,0DAA0D,CAAA;AAClF,OAAO,WAAW,MAAM,0DAA0D,CAAA;AAClF,OAAO,eAAe,MAAM,8DAA8D,CAAA;AAC1F,OAAO,WAAW,MAAM,wDAAwD,CAAA;AAChF,OAAO,mBAAmB,MAAM,gEAAgE,CAAA;AAChG,OAAO,yBAAyB,MAAM,sEAAsE,CAAA;AAC5G,OAAO,SAAS,MAAM,6DAA6D,CAAA;AACnF,OAAO,gBAAgB,MAAM,6DAA6D,CAAA;AA8B1F,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,MAAM,EAAE,YAAY;IACpB,IAAI,EAAE,UAAU;IAChB,KAAK,EAAE,WAAW;IAClB,QAAQ,EAAE,cAAc;IACxB,MAAM,EAAE,YAAY;IACpB,EAAE,EAAE,QAAQ;IACZ,KAAK,EAAE,WAAW;IAClB,KAAK,EAAE,WAAW;IAClB,KAAK,EAAE,WAAW;IAClB,SAAS,EAAE,eAAe;IAC1B,IAAI,EAAE,WAAW;CACyB,CAAA;AAE5C,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,MAAM,EAAE,YAAY;IACpB,IAAI,EAAE,UAAU;IAChB,KAAK,EAAE,WAAW;IAClB,QAAQ,EAAE,cAAc;IACxB,MAAM,EAAE,YAAY;IACpB,EAAE,EAAE,QAAQ;IACZ,KAAK,EAAE,WAAW;IAClB,KAAK,EAAE,WAAW;IAClB,KAAK,EAAE,WAAW;IAClB,SAAS,EAAE,eAAe;IAC1B,IAAI,EAAE,WAAW;CACyB,CAAA;AAE5C,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,YAAY,EAAE,mBAAmB;IACjC,kBAAkB,EAAE,yBAAyB;IAC7C,SAAS,EAAE,SAAS;CAC0B,CAAA;AAEhD,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,YAAY,EAAE,mBAAmB;IACjC,kBAAkB,EAAE,yBAAyB;IAC7C,SAAS,EAAE,gBAAgB;CACmB,CAAA;AAEhD,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,eAAe,CAAA"}
@@ -3,6 +3,8 @@ export interface PassportContextValue {
3
3
  authApiClient: AuthApiClient;
4
4
  portalApiClient: PortalApiClient;
5
5
  environment?: Environment;
6
+ accountDataRefetchInterval: number;
7
+ nativeBalanceRefetchInterval: number;
6
8
  }
7
9
  export declare const PassportContext: import("react").Context<PassportContextValue | undefined>;
8
10
  type Environment = "mainnet" | "testnet";
@@ -11,7 +13,11 @@ type PassportProviderProps = {
11
13
  environment?: Environment;
12
14
  authApiUrl?: string;
13
15
  portalApiUrl?: string;
16
+ /** Time in milliseconds after which account data (like mats or mezo id) in dropdown should be re-fetched. Default is 90000 (90 secs) */
17
+ accountDataRefetchInterval?: number;
18
+ /** Time in milliseconds after which native balance in dropdown should be re-fetched. Default is 90000 (90 secs) */
19
+ nativeBalanceRefetchInterval?: number;
14
20
  };
15
- export declare function PassportProvider({ environment, authApiUrl, portalApiUrl, children, }: PassportProviderProps): import("react").FunctionComponentElement<import("react").ProviderProps<PassportContextValue | undefined>>;
21
+ export declare function PassportProvider({ environment, authApiUrl, portalApiUrl, children, accountDataRefetchInterval, nativeBalanceRefetchInterval, }: PassportProviderProps): import("react").FunctionComponentElement<import("react").ProviderProps<PassportContextValue | undefined>>;
16
22
  export {};
17
23
  //# sourceMappingURL=provider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/provider.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,OAAO,CAAA;AAEtD,MAAM,WAAW,oBAAoB;IACnC,aAAa,EAAE,aAAa,CAAA;IAC5B,eAAe,EAAE,eAAe,CAAA;IAChC,WAAW,CAAC,EAAE,WAAW,CAAA;CAC1B;AAED,eAAO,MAAM,eAAe,2DAE3B,CAAA;AAED,KAAK,WAAW,GAAG,SAAS,GAAG,SAAS,CAAA;AAExC,KAAK,qBAAqB,GAAG;IAC3B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IAEzB,WAAW,CAAC,EAAE,WAAW,CAAA;IAEzB,UAAU,CAAC,EAAE,MAAM,CAAA;IAEnB,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB,CAAA;AAED,wBAAgB,gBAAgB,CAAC,EAC/B,WAAW,EACX,UAAU,EACV,YAAY,EACZ,QAAQ,GACT,EAAE,qBAAqB,6GAmBvB"}
1
+ {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/provider.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,OAAO,CAAA;AAGtD,MAAM,WAAW,oBAAoB;IACnC,aAAa,EAAE,aAAa,CAAA;IAC5B,eAAe,EAAE,eAAe,CAAA;IAChC,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,0BAA0B,EAAE,MAAM,CAAA;IAClC,4BAA4B,EAAE,MAAM,CAAA;CACrC;AAED,eAAO,MAAM,eAAe,2DAE3B,CAAA;AAED,KAAK,WAAW,GAAG,SAAS,GAAG,SAAS,CAAA;AAExC,KAAK,qBAAqB,GAAG;IAC3B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,wIAAwI;IACxI,0BAA0B,CAAC,EAAE,MAAM,CAAA;IACnC,mHAAmH;IACnH,4BAA4B,CAAC,EAAE,MAAM,CAAA;CACtC,CAAA;AAED,wBAAgB,gBAAgB,CAAC,EAC/B,WAAW,EACX,UAAU,EACV,YAAY,EACZ,QAAQ,EACR,0BAA+C,EAC/C,4BAAiD,GAClD,EAAE,qBAAqB,6GAqBvB"}
@@ -1,7 +1,8 @@
1
1
  import { createContext, createElement } from "react";
2
2
  import { AuthApiClient, PortalApiClient } from "./api";
3
+ import { ONE_SECOND_MS } from "./utils/time";
3
4
  export const PassportContext = createContext(undefined);
4
- export function PassportProvider({ environment, authApiUrl, portalApiUrl, children, }) {
5
+ export function PassportProvider({ environment, authApiUrl, portalApiUrl, children, accountDataRefetchInterval = 90 * ONE_SECOND_MS, nativeBalanceRefetchInterval = 90 * ONE_SECOND_MS, }) {
5
6
  if (environment && !["mainnet", "testnet"].includes(environment)) {
6
7
  throw new Error("Wrong environment passed to PassportProvider.");
7
8
  }
@@ -10,6 +11,8 @@ export function PassportProvider({ environment, authApiUrl, portalApiUrl, childr
10
11
  authApiClient: new AuthApiClient(environment ?? "mainnet", authApiUrl),
11
12
  portalApiClient: new PortalApiClient(environment ?? "mainnet", portalApiUrl),
12
13
  environment,
14
+ accountDataRefetchInterval,
15
+ nativeBalanceRefetchInterval,
13
16
  },
14
17
  }, children);
15
18
  }
@@ -1 +1 @@
1
- {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AACpD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,OAAO,CAAA;AAQtD,MAAM,CAAC,MAAM,eAAe,GAAG,aAAa,CAC1C,SAAS,CACV,CAAA;AAcD,MAAM,UAAU,gBAAgB,CAAC,EAC/B,WAAW,EACX,UAAU,EACV,YAAY,EACZ,QAAQ,GACc;IACtB,IAAI,WAAW,IAAI,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;QACjE,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAA;IAClE,CAAC;IAED,OAAO,aAAa,CAClB,eAAe,CAAC,QAAQ,EACxB;QACE,KAAK,EAAE;YACL,aAAa,EAAE,IAAI,aAAa,CAAC,WAAW,IAAI,SAAS,EAAE,UAAU,CAAC;YACtE,eAAe,EAAE,IAAI,eAAe,CAClC,WAAW,IAAI,SAAS,EACxB,YAAY,CACb;YACD,WAAW;SACZ;KACF,EACD,QAAQ,CACT,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AACpD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,OAAO,CAAA;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAU5C,MAAM,CAAC,MAAM,eAAe,GAAG,aAAa,CAC1C,SAAS,CACV,CAAA;AAeD,MAAM,UAAU,gBAAgB,CAAC,EAC/B,WAAW,EACX,UAAU,EACV,YAAY,EACZ,QAAQ,EACR,0BAA0B,GAAG,EAAE,GAAG,aAAa,EAC/C,4BAA4B,GAAG,EAAE,GAAG,aAAa,GAC3B;IACtB,IAAI,WAAW,IAAI,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;QACjE,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAA;IAClE,CAAC;IAED,OAAO,aAAa,CAClB,eAAe,CAAC,QAAQ,EACxB;QACE,KAAK,EAAE;YACL,aAAa,EAAE,IAAI,aAAa,CAAC,WAAW,IAAI,SAAS,EAAE,UAAU,CAAC;YACtE,eAAe,EAAE,IAAI,eAAe,CAClC,WAAW,IAAI,SAAS,EACxB,YAAY,CACb;YACD,WAAW;YACX,0BAA0B;YAC1B,4BAA4B;SAC7B;KACF,EACD,QAAQ,CACT,CAAA;AACH,CAAC"}
@@ -0,0 +1,145 @@
1
+ declare const ASSETS: {
2
+ BTC: {
3
+ name: string;
4
+ symbol: string;
5
+ decimals: number;
6
+ };
7
+ ETH: {
8
+ name: string;
9
+ symbol: string;
10
+ decimals: number;
11
+ };
12
+ MUSD: {
13
+ name: string;
14
+ symbol: string;
15
+ decimals: number;
16
+ };
17
+ mDAI: {
18
+ name: string;
19
+ symbol: string;
20
+ decimals: number;
21
+ };
22
+ mFBTC: {
23
+ name: string;
24
+ symbol: string;
25
+ decimals: number;
26
+ };
27
+ mcbBTC: {
28
+ name: string;
29
+ symbol: string;
30
+ decimals: number;
31
+ };
32
+ mSolvBTC: {
33
+ name: string;
34
+ symbol: string;
35
+ decimals: number;
36
+ };
37
+ mswBTC: {
38
+ name: string;
39
+ symbol: string;
40
+ decimals: number;
41
+ };
42
+ mT: {
43
+ name: string;
44
+ symbol: string;
45
+ decimals: number;
46
+ };
47
+ mUSDC: {
48
+ name: string;
49
+ symbol: string;
50
+ decimals: number;
51
+ };
52
+ mUSDe: {
53
+ name: string;
54
+ symbol: string;
55
+ decimals: number;
56
+ };
57
+ mUSDT: {
58
+ name: string;
59
+ symbol: string;
60
+ decimals: number;
61
+ };
62
+ mxSolvBTC: {
63
+ name: string;
64
+ symbol: string;
65
+ decimals: number;
66
+ };
67
+ };
68
+ /**
69
+ * Gets details of given crypto asset
70
+ * @param key The key of crypto asset
71
+ * @returns The crypto asset details
72
+ */
73
+ export declare function getAsset(key: keyof typeof ASSETS): {
74
+ name: string;
75
+ symbol: string;
76
+ decimals: number;
77
+ } | {
78
+ name: string;
79
+ symbol: string;
80
+ decimals: number;
81
+ } | {
82
+ name: string;
83
+ symbol: string;
84
+ decimals: number;
85
+ } | {
86
+ name: string;
87
+ symbol: string;
88
+ decimals: number;
89
+ } | {
90
+ name: string;
91
+ symbol: string;
92
+ decimals: number;
93
+ } | {
94
+ name: string;
95
+ symbol: string;
96
+ decimals: number;
97
+ } | {
98
+ name: string;
99
+ symbol: string;
100
+ decimals: number;
101
+ } | {
102
+ name: string;
103
+ symbol: string;
104
+ decimals: number;
105
+ } | {
106
+ name: string;
107
+ symbol: string;
108
+ decimals: number;
109
+ } | {
110
+ name: string;
111
+ symbol: string;
112
+ decimals: number;
113
+ } | {
114
+ name: string;
115
+ symbol: string;
116
+ decimals: number;
117
+ } | {
118
+ name: string;
119
+ symbol: string;
120
+ decimals: number;
121
+ } | {
122
+ name: string;
123
+ symbol: string;
124
+ decimals: number;
125
+ };
126
+ /**
127
+ * Checks if given crypto asset is Bitcoin-like
128
+ * @param key The key of crypto asset
129
+ * @returns True if crypto asset is Bitcoin-like
130
+ */
131
+ export declare function isBitcoinLikeCryptoAsset(key: string): boolean;
132
+ /**
133
+ * Checks if given crypto asset is USD-like
134
+ * @param key The key of crypto asset
135
+ * @returns True if crypto asset is USD-like
136
+ */
137
+ export declare function isUsdLikeCryptoAsset(key: string): boolean;
138
+ /**
139
+ * Checks if given crypto asset is T token
140
+ * @param key The key of crypto asset
141
+ * @returns True if crypto asset is T token
142
+ */
143
+ export declare function isTTokenCryptoAsset(key: string): boolean;
144
+ export {};
145
+ //# sourceMappingURL=assets.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"assets.d.ts","sourceRoot":"","sources":["../../../src/utils/assets.ts"],"names":[],"mappings":"AAAA,QAAA,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkEX,CAAA;AAED;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,OAAO,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAEhD;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,WAEnD;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,WAE/C;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,WAE9C"}