@mezo-org/passport 0.4.0-dev.4 → 0.4.0-dev.41

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 (303) hide show
  1. package/README.md +18 -22
  2. package/dist/src/api/auth.d.ts +36 -59
  3. package/dist/src/api/auth.d.ts.map +1 -1
  4. package/dist/src/api/auth.js +21 -49
  5. package/dist/src/api/auth.js.map +1 -1
  6. package/dist/src/api/client.d.ts +24 -0
  7. package/dist/src/api/client.d.ts.map +1 -0
  8. package/dist/src/api/client.js +54 -0
  9. package/dist/src/api/client.js.map +1 -0
  10. package/dist/src/api/fetch-error.d.ts +5 -0
  11. package/dist/src/api/fetch-error.d.ts.map +1 -0
  12. package/dist/src/api/fetch-error.js +8 -0
  13. package/dist/src/api/fetch-error.js.map +1 -0
  14. package/dist/src/api/index.d.ts +3 -0
  15. package/dist/src/api/index.d.ts.map +1 -0
  16. package/dist/src/api/index.js +3 -0
  17. package/dist/src/api/index.js.map +1 -0
  18. package/dist/src/api/portal.d.ts +33 -0
  19. package/dist/src/api/portal.d.ts.map +1 -0
  20. package/dist/src/api/portal.js +23 -0
  21. package/dist/src/api/portal.js.map +1 -0
  22. package/dist/src/assets/DefaultAvatar.d.ts +5 -0
  23. package/dist/src/assets/DefaultAvatar.d.ts.map +1 -0
  24. package/dist/src/assets/DefaultAvatar.js +21 -0
  25. package/dist/src/assets/DefaultAvatar.js.map +1 -0
  26. package/dist/src/components/Dropdown/ConnectedTrigger.d.ts +8 -0
  27. package/dist/src/components/Dropdown/ConnectedTrigger.d.ts.map +1 -0
  28. package/dist/src/components/Dropdown/ConnectedTrigger.js +39 -0
  29. package/dist/src/components/Dropdown/ConnectedTrigger.js.map +1 -0
  30. package/dist/src/components/Dropdown/Content.d.ts +23 -0
  31. package/dist/src/components/Dropdown/Content.d.ts.map +1 -0
  32. package/dist/src/components/Dropdown/Content.js +27 -0
  33. package/dist/src/components/Dropdown/Content.js.map +1 -0
  34. package/dist/src/components/Dropdown/DisconnectedTrigger.d.ts +7 -0
  35. package/dist/src/components/Dropdown/DisconnectedTrigger.d.ts.map +1 -0
  36. package/dist/src/components/Dropdown/DisconnectedTrigger.js +13 -0
  37. package/dist/src/components/Dropdown/DisconnectedTrigger.js.map +1 -0
  38. package/dist/src/components/Dropdown/Dropdown.d.ts +27 -0
  39. package/dist/src/components/Dropdown/Dropdown.d.ts.map +1 -0
  40. package/dist/src/components/Dropdown/Dropdown.js +68 -0
  41. package/dist/src/components/Dropdown/Dropdown.js.map +1 -0
  42. package/dist/src/components/Dropdown/ListingItem.d.ts +13 -0
  43. package/dist/src/components/Dropdown/ListingItem.d.ts.map +1 -0
  44. package/dist/src/components/Dropdown/ListingItem.js +34 -0
  45. package/dist/src/components/Dropdown/ListingItem.js.map +1 -0
  46. package/dist/src/components/Dropdown/NestedViewLayout.d.ts +7 -0
  47. package/dist/src/components/Dropdown/NestedViewLayout.d.ts.map +1 -0
  48. package/dist/src/components/Dropdown/NestedViewLayout.js +34 -0
  49. package/dist/src/components/Dropdown/NestedViewLayout.js.map +1 -0
  50. package/dist/src/components/Dropdown/Receive/Receive.d.ts +7 -0
  51. package/dist/src/components/Dropdown/Receive/Receive.d.ts.map +1 -0
  52. package/dist/src/components/Dropdown/Receive/Receive.js +53 -0
  53. package/dist/src/components/Dropdown/Receive/Receive.js.map +1 -0
  54. package/dist/src/components/Dropdown/Root/AccountAddressActions.d.ts +7 -0
  55. package/dist/src/components/Dropdown/Root/AccountAddressActions.d.ts.map +1 -0
  56. package/dist/src/components/Dropdown/Root/AccountAddressActions.js +48 -0
  57. package/dist/src/components/Dropdown/Root/AccountAddressActions.js.map +1 -0
  58. package/dist/src/components/Dropdown/Root/AccountAssetItem.d.ts +11 -0
  59. package/dist/src/components/Dropdown/Root/AccountAssetItem.d.ts.map +1 -0
  60. package/dist/src/components/Dropdown/Root/AccountAssetItem.js +9 -0
  61. package/dist/src/components/Dropdown/Root/AccountAssetItem.js.map +1 -0
  62. package/dist/src/components/Dropdown/Root/AccountBalance.d.ts +8 -0
  63. package/dist/src/components/Dropdown/Root/AccountBalance.d.ts.map +1 -0
  64. package/dist/src/components/Dropdown/Root/AccountBalance.js +15 -0
  65. package/dist/src/components/Dropdown/Root/AccountBalance.js.map +1 -0
  66. package/dist/src/components/Dropdown/Root/AccountOtherAssets.d.ts +9 -0
  67. package/dist/src/components/Dropdown/Root/AccountOtherAssets.d.ts.map +1 -0
  68. package/dist/src/components/Dropdown/Root/AccountOtherAssets.js +48 -0
  69. package/dist/src/components/Dropdown/Root/AccountOtherAssets.js.map +1 -0
  70. package/dist/src/components/Dropdown/Root/Root.d.ts +23 -0
  71. package/dist/src/components/Dropdown/Root/Root.d.ts.map +1 -0
  72. package/dist/src/components/Dropdown/Root/Root.js +57 -0
  73. package/dist/src/components/Dropdown/Root/Root.js.map +1 -0
  74. package/dist/src/components/Dropdown/Root/WalletAddress.d.ts +8 -0
  75. package/dist/src/components/Dropdown/Root/WalletAddress.d.ts.map +1 -0
  76. package/dist/src/components/Dropdown/Root/WalletAddress.js +64 -0
  77. package/dist/src/components/Dropdown/Root/WalletAddress.js.map +1 -0
  78. package/dist/src/components/Dropdown/Root/WelcomeBlock.d.ts +8 -0
  79. package/dist/src/components/Dropdown/Root/WelcomeBlock.d.ts.map +1 -0
  80. package/dist/src/components/Dropdown/Root/WelcomeBlock.js +44 -0
  81. package/dist/src/components/Dropdown/Root/WelcomeBlock.js.map +1 -0
  82. package/dist/src/components/Dropdown/TestnetTopBanner.d.ts +3 -0
  83. package/dist/src/components/Dropdown/TestnetTopBanner.d.ts.map +1 -0
  84. package/dist/src/components/Dropdown/TestnetTopBanner.js +14 -0
  85. package/dist/src/components/Dropdown/TestnetTopBanner.js.map +1 -0
  86. package/dist/src/components/Dropdown/index.d.ts +3 -0
  87. package/dist/src/components/Dropdown/index.d.ts.map +1 -0
  88. package/dist/src/components/Dropdown/index.js +2 -0
  89. package/dist/src/components/Dropdown/index.js.map +1 -0
  90. package/dist/src/components/index.d.ts +2 -0
  91. package/dist/src/components/index.d.ts.map +1 -0
  92. package/dist/src/components/index.js +2 -0
  93. package/dist/src/components/index.js.map +1 -0
  94. package/dist/src/config.d.ts +41 -0
  95. package/dist/src/config.d.ts.map +1 -1
  96. package/dist/src/config.js +20 -5
  97. package/dist/src/config.js.map +1 -1
  98. package/dist/src/constants.d.ts +6 -2
  99. package/dist/src/constants.d.ts.map +1 -1
  100. package/dist/src/constants.js +8 -4
  101. package/dist/src/constants.js.map +1 -1
  102. package/dist/src/hooks/constants.d.ts +1 -0
  103. package/dist/src/hooks/constants.d.ts.map +1 -1
  104. package/dist/src/hooks/constants.js +1 -0
  105. package/dist/src/hooks/constants.js.map +1 -1
  106. package/dist/src/hooks/index.d.ts +4 -1
  107. package/dist/src/hooks/index.d.ts.map +1 -1
  108. package/dist/src/hooks/index.js +4 -1
  109. package/dist/src/hooks/index.js.map +1 -1
  110. package/dist/src/hooks/useAssetsConversionRates.d.ts +7 -0
  111. package/dist/src/hooks/useAssetsConversionRates.d.ts.map +1 -0
  112. package/dist/src/hooks/useAssetsConversionRates.js +24 -0
  113. package/dist/src/hooks/useAssetsConversionRates.js.map +1 -0
  114. package/dist/src/hooks/useAuthApiClient.d.ts +1 -1
  115. package/dist/src/hooks/useAuthApiClient.d.ts.map +1 -1
  116. package/dist/src/hooks/useAuthenticateWithWallet.d.ts +73 -0
  117. package/dist/src/hooks/useAuthenticateWithWallet.d.ts.map +1 -0
  118. package/dist/src/hooks/useAuthenticateWithWallet.js +69 -0
  119. package/dist/src/hooks/useAuthenticateWithWallet.js.map +1 -0
  120. package/dist/src/hooks/useBorrowData.d.ts +60 -0
  121. package/dist/src/hooks/useBorrowData.d.ts.map +1 -0
  122. package/dist/src/hooks/useBorrowData.js +122 -0
  123. package/dist/src/hooks/useBorrowData.js.map +1 -0
  124. package/dist/src/hooks/useCreateAccount.d.ts +23 -173
  125. package/dist/src/hooks/useCreateAccount.d.ts.map +1 -1
  126. package/dist/src/hooks/useCreateAccount.js +7 -4
  127. package/dist/src/hooks/useCreateAccount.js.map +1 -1
  128. package/dist/src/hooks/useCreateSession.d.ts +12 -101
  129. package/dist/src/hooks/useCreateSession.d.ts.map +1 -1
  130. package/dist/src/hooks/useCreateSession.js +10 -8
  131. package/dist/src/hooks/useCreateSession.js.map +1 -1
  132. package/dist/src/hooks/useDropdownData.d.ts +47 -0
  133. package/dist/src/hooks/useDropdownData.d.ts.map +1 -0
  134. package/dist/src/hooks/useDropdownData.js +95 -0
  135. package/dist/src/hooks/useDropdownData.js.map +1 -0
  136. package/dist/src/hooks/useEnsureNoSessionAndFetchNonce.d.ts.map +1 -1
  137. package/dist/src/hooks/useEnsureNoSessionAndFetchNonce.js +1 -0
  138. package/dist/src/hooks/useEnsureNoSessionAndFetchNonce.js.map +1 -1
  139. package/dist/src/hooks/useGetAccountByAddress.d.ts +2 -2
  140. package/dist/src/hooks/useGetAccountByAddress.d.ts.map +1 -1
  141. package/dist/src/hooks/useGetAccountByMezoId.d.ts +2 -2
  142. package/dist/src/hooks/useGetAccountByMezoId.d.ts.map +1 -1
  143. package/dist/src/hooks/useGetCurrentAccount.d.ts +16 -2
  144. package/dist/src/hooks/useGetCurrentAccount.d.ts.map +1 -1
  145. package/dist/src/hooks/useGetCurrentAccount.js +25 -3
  146. package/dist/src/hooks/useGetCurrentAccount.js.map +1 -1
  147. package/dist/src/hooks/useGetSession.d.ts +1 -1
  148. package/dist/src/hooks/useGetSession.d.ts.map +1 -1
  149. package/dist/src/hooks/useLinkAccount.d.ts +15 -175
  150. package/dist/src/hooks/useLinkAccount.d.ts.map +1 -1
  151. package/dist/src/hooks/useLinkAccount.js +7 -4
  152. package/dist/src/hooks/useLinkAccount.js.map +1 -1
  153. package/dist/src/hooks/usePortalApiClient.d.ts +2 -0
  154. package/dist/src/hooks/usePortalApiClient.d.ts.map +1 -0
  155. package/dist/src/hooks/usePortalApiClient.js +6 -0
  156. package/dist/src/hooks/usePortalApiClient.js.map +1 -0
  157. package/dist/src/hooks/useRefreshPassport.d.ts +19 -0
  158. package/dist/src/hooks/useRefreshPassport.d.ts.map +1 -0
  159. package/dist/src/hooks/useRefreshPassport.js +44 -0
  160. package/dist/src/hooks/useRefreshPassport.js.map +1 -0
  161. package/dist/src/hooks/useSignInWithDiscord.d.ts +12 -100
  162. package/dist/src/hooks/useSignInWithDiscord.d.ts.map +1 -1
  163. package/dist/src/hooks/useSignInWithDiscord.js +6 -3
  164. package/dist/src/hooks/useSignInWithDiscord.js.map +1 -1
  165. package/dist/src/hooks/useSignInWithWallet.d.ts +12 -100
  166. package/dist/src/hooks/useSignInWithWallet.d.ts.map +1 -1
  167. package/dist/src/hooks/useSignInWithWallet.js +6 -34
  168. package/dist/src/hooks/useSignInWithWallet.js.map +1 -1
  169. package/dist/src/hooks/useSignOut.d.ts +12 -28
  170. package/dist/src/hooks/useSignOut.d.ts.map +1 -1
  171. package/dist/src/hooks/useSignOut.js +7 -4
  172. package/dist/src/hooks/useSignOut.js.map +1 -1
  173. package/dist/src/hooks/useSignUpWithWallet.d.ts +73 -0
  174. package/dist/src/hooks/useSignUpWithWallet.d.ts.map +1 -0
  175. package/dist/src/hooks/useSignUpWithWallet.js +11 -0
  176. package/dist/src/hooks/useSignUpWithWallet.js.map +1 -0
  177. package/dist/src/hooks/useTokensBalances.d.ts +74 -0
  178. package/dist/src/hooks/useTokensBalances.d.ts.map +1 -0
  179. package/dist/src/hooks/useTokensBalances.js +140 -0
  180. package/dist/src/hooks/useTokensBalances.js.map +1 -0
  181. package/dist/src/hooks/useUpdateMezoId.d.ts +30 -136
  182. package/dist/src/hooks/useUpdateMezoId.d.ts.map +1 -1
  183. package/dist/src/hooks/useUpdateMezoId.js +7 -4
  184. package/dist/src/hooks/useUpdateMezoId.js.map +1 -1
  185. package/dist/src/hooks/useWalletAccount.d.ts +13 -0
  186. package/dist/src/hooks/useWalletAccount.d.ts.map +1 -0
  187. package/dist/src/hooks/useWalletAccount.js +29 -0
  188. package/dist/src/hooks/useWalletAccount.js.map +1 -0
  189. package/dist/src/hooks/useWatchTransferEvents.d.ts +5 -0
  190. package/dist/src/hooks/useWatchTransferEvents.d.ts.map +1 -0
  191. package/dist/src/hooks/useWatchTransferEvents.js +63 -0
  192. package/dist/src/hooks/useWatchTransferEvents.js.map +1 -0
  193. package/dist/src/index.d.ts +2 -1
  194. package/dist/src/index.d.ts.map +1 -1
  195. package/dist/src/index.js +2 -1
  196. package/dist/src/index.js.map +1 -1
  197. package/dist/src/lib/contracts/index.d.ts +13 -0
  198. package/dist/src/lib/contracts/index.d.ts.map +1 -0
  199. package/dist/src/lib/contracts/index.js +57 -0
  200. package/dist/src/lib/contracts/index.js.map +1 -0
  201. package/dist/src/provider.d.ts +10 -13
  202. package/dist/src/provider.d.ts.map +1 -1
  203. package/dist/src/provider.js +11 -20
  204. package/dist/src/provider.js.map +1 -1
  205. package/dist/src/stores/dropdownStore.d.ts +12 -0
  206. package/dist/src/stores/dropdownStore.d.ts.map +1 -0
  207. package/dist/src/stores/dropdownStore.js +13 -0
  208. package/dist/src/stores/dropdownStore.js.map +1 -0
  209. package/dist/src/utils/address.d.ts +15 -0
  210. package/dist/src/utils/address.d.ts.map +1 -0
  211. package/dist/src/utils/address.js +37 -0
  212. package/dist/src/utils/address.js.map +1 -0
  213. package/dist/src/utils/address.test.d.ts +2 -0
  214. package/dist/src/utils/address.test.d.ts.map +1 -0
  215. package/dist/src/utils/address.test.js +40 -0
  216. package/dist/src/utils/address.test.js.map +1 -0
  217. package/dist/src/utils/cryptoAssets.d.ts +44 -0
  218. package/dist/src/utils/cryptoAssets.d.ts.map +1 -0
  219. package/dist/src/utils/cryptoAssets.js +131 -0
  220. package/dist/src/utils/cryptoAssets.js.map +1 -0
  221. package/dist/src/utils/cryptoAssets.test.d.ts +2 -0
  222. package/dist/src/utils/cryptoAssets.test.d.ts.map +1 -0
  223. package/dist/src/utils/cryptoAssets.test.js +67 -0
  224. package/dist/src/utils/cryptoAssets.test.js.map +1 -0
  225. package/dist/src/utils/currency.d.ts +14 -0
  226. package/dist/src/utils/currency.d.ts.map +1 -0
  227. package/dist/src/utils/currency.js +27 -0
  228. package/dist/src/utils/currency.js.map +1 -0
  229. package/dist/src/utils/currency.test.d.ts +2 -0
  230. package/dist/src/utils/currency.test.d.ts.map +1 -0
  231. package/dist/src/utils/currency.test.js +34 -0
  232. package/dist/src/utils/currency.test.js.map +1 -0
  233. package/dist/src/utils/numbers.d.ts +58 -0
  234. package/dist/src/utils/numbers.d.ts.map +1 -0
  235. package/dist/src/utils/numbers.js +132 -0
  236. package/dist/src/utils/numbers.js.map +1 -0
  237. package/dist/src/utils/numbers.test.d.ts +2 -0
  238. package/dist/src/utils/numbers.test.d.ts.map +1 -0
  239. package/dist/src/utils/numbers.test.js +170 -0
  240. package/dist/src/utils/numbers.test.js.map +1 -0
  241. package/package.json +13 -5
  242. package/src/api/auth.ts +72 -129
  243. package/src/api/client.ts +78 -0
  244. package/src/api/fetch-error.ts +8 -0
  245. package/src/api/index.ts +2 -0
  246. package/src/api/portal.ts +57 -0
  247. package/src/assets/DefaultAvatar.tsx +74 -0
  248. package/src/components/Dropdown/ConnectedTrigger.tsx +76 -0
  249. package/src/components/Dropdown/Content.tsx +98 -0
  250. package/src/components/Dropdown/DisconnectedTrigger.tsx +36 -0
  251. package/src/components/Dropdown/Dropdown.tsx +148 -0
  252. package/src/components/Dropdown/ListingItem.tsx +80 -0
  253. package/src/components/Dropdown/NestedViewLayout.tsx +75 -0
  254. package/src/components/Dropdown/README.md +41 -0
  255. package/src/components/Dropdown/Receive/Receive.tsx +119 -0
  256. package/src/components/Dropdown/Root/AccountAddressActions.tsx +101 -0
  257. package/src/components/Dropdown/Root/AccountAssetItem.tsx +26 -0
  258. package/src/components/Dropdown/Root/AccountBalance.tsx +30 -0
  259. package/src/components/Dropdown/Root/AccountOtherAssets.tsx +68 -0
  260. package/src/components/Dropdown/Root/Root.tsx +147 -0
  261. package/src/components/Dropdown/Root/WalletAddress.tsx +128 -0
  262. package/src/components/Dropdown/Root/WelcomeBlock.tsx +91 -0
  263. package/src/components/Dropdown/TestnetTopBanner.tsx +32 -0
  264. package/src/components/Dropdown/index.ts +2 -0
  265. package/src/components/index.ts +1 -0
  266. package/src/config.ts +27 -6
  267. package/src/constants.ts +8 -4
  268. package/src/hooks/constants.ts +1 -0
  269. package/src/hooks/index.ts +7 -1
  270. package/src/hooks/useAssetsConversionRates.ts +32 -0
  271. package/src/hooks/useAuthenticateWithWallet.ts +102 -0
  272. package/src/hooks/useBorrowData.ts +143 -0
  273. package/src/hooks/useCreateAccount.ts +19 -5
  274. package/src/hooks/useCreateSession.ts +22 -9
  275. package/src/hooks/useDropdownData.ts +139 -0
  276. package/src/hooks/useEnsureNoSessionAndFetchNonce.ts +1 -0
  277. package/src/hooks/useGetAccountByAddress.ts +2 -2
  278. package/src/hooks/useGetAccountByMezoId.ts +2 -2
  279. package/src/hooks/useGetCurrentAccount.ts +46 -6
  280. package/src/hooks/useGetSession.ts +1 -1
  281. package/src/hooks/useLinkAccount.ts +18 -5
  282. package/src/hooks/usePortalApiClient.ts +6 -0
  283. package/src/hooks/useRefreshPassport.ts +56 -0
  284. package/src/hooks/useSignInWithDiscord.ts +14 -5
  285. package/src/hooks/useSignInWithWallet.ts +14 -42
  286. package/src/hooks/useSignOut.ts +18 -4
  287. package/src/hooks/useSignUpWithWallet.ts +21 -0
  288. package/src/hooks/useTokensBalances.ts +187 -0
  289. package/src/hooks/useUpdateMezoId.ts +19 -4
  290. package/src/hooks/useWalletAccount.ts +55 -0
  291. package/src/hooks/useWatchTransferEvents.ts +74 -0
  292. package/src/index.ts +9 -1
  293. package/src/lib/contracts/index.ts +88 -0
  294. package/src/provider.ts +30 -37
  295. package/src/stores/dropdownStore.ts +20 -0
  296. package/src/utils/address.test.ts +48 -0
  297. package/src/utils/address.ts +45 -0
  298. package/src/utils/cryptoAssets.test.ts +79 -0
  299. package/src/utils/cryptoAssets.ts +173 -0
  300. package/src/utils/currency.test.ts +38 -0
  301. package/src/utils/currency.ts +32 -0
  302. package/src/utils/numbers.test.ts +220 -0
  303. package/src/utils/numbers.ts +188 -0
package/README.md CHANGED
@@ -96,12 +96,12 @@ Mezo Passport provides a `getConfig` method, which returns a default
96
96
  configuration for Mezo Matsnet. We just have to pass it further to
97
97
  `WagmiProvider`:
98
98
 
99
- ```
99
+ ```tsx
100
100
  import { RainbowKitProvider } from "@rainbow-me/rainbowkit"
101
101
  import { QueryClient, QueryClientProvider } from "@tanstack/react-query"
102
102
  import { WagmiProvider } from "wagmi"
103
103
  import "@rainbow-me/rainbowkit/styles.css"
104
- import { getConfig, mezoMatsnetTestnet } from "@mezo-org/passport"
104
+ import { getConfig, mezoTestnet } from "@mezo-org/passport"
105
105
 
106
106
  const queryClient = new QueryClient()
107
107
 
@@ -109,7 +109,7 @@ ReactDOM.createRoot(document.getElementById("root")!).render(
109
109
  <React.StrictMode>
110
110
  <WagmiProvider config={getConfig({ appName: "Your app name" })}>
111
111
  <QueryClientProvider client={queryClient}>
112
- <RainbowKitProvider initialChain={mezoMatsnetTestnet}>
112
+ <RainbowKitProvider initialChain={mezoTestnet}>
113
113
  {/* Your App component */}
114
114
  </RainbowKitProvider>
115
115
  </QueryClientProvider>
@@ -127,7 +127,7 @@ support. By default, the lib supports Unisat, OKX and Xverse wallets. If you
127
127
  want to include Unisat wallet only, you can pass it through `bitcoinWallet`
128
128
  property to `getConfig` function:
129
129
 
130
- ```
130
+ ```tsx
131
131
  import { getConfig, unisatWallet } from "@mezo-org/passport"
132
132
 
133
133
  const customBitcoinWallets = [
@@ -169,11 +169,8 @@ There are two ways to connect the Mezo Passport wallet:
169
169
 
170
170
  We can connect to the specific wallet directly through `wagmi`:
171
171
 
172
- ```
173
- import {
174
- useChainId,
175
- useConnect,
176
- } from "wagmi"
172
+ ```tsx
173
+ import { useChainId, useConnect } from "wagmi"
177
174
 
178
175
  export const YourApp = () => {
179
176
  const chainId = useChainId()
@@ -194,8 +191,7 @@ export const YourApp = () => {
194
191
  ))}
195
192
  </div>
196
193
  )
197
-
198
- };
194
+ }
199
195
  ```
200
196
 
201
197
  This will render a button for each wallet that we've added to the rainbowKit
@@ -208,12 +204,12 @@ We can also implement wallet connection through RainbowKit, where we import the
208
204
  `ConnectButton` component, which will handle the connection process under the
209
205
  hood:
210
206
 
211
- ```
207
+ ```tsx
212
208
  import { ConnectButton } from "@rainbow-me/rainbowkit"
213
209
 
214
210
  export const YourApp = () => {
215
- return <ConnectButton label="Connect wallet"/>;
216
- };
211
+ return <ConnectButton label="Connect wallet" />
212
+ }
217
213
  ```
218
214
 
219
215
  ### Getting addresses and wallet balances
@@ -224,7 +220,7 @@ For bitcoin account Mezo Passport exports a helper hook -
224
220
  `useBitcoinAccount()` - which can be used to obtain address and balance of the
225
221
  connected bitcoin account:
226
222
 
227
- ```
223
+ ```ts
228
224
  import { useBitcoinAccount } from "@mezo-org/passport"
229
225
 
230
226
  const { btcAddress, btcBalance } = useBitcoinAccount()
@@ -237,7 +233,7 @@ useEffect(() => {
237
233
 
238
234
  This hook returns the bitcoin balance in satoshis, in the following format:
239
235
 
240
- ```
236
+ ```ts
241
237
  {
242
238
  confirmed: number,
243
239
  unconfirmed: number,
@@ -250,7 +246,7 @@ This hook returns the bitcoin balance in satoshis, in the following format:
250
246
  To get an address and a balance of the underlying Mezo Matsnet account, we can
251
247
  use `wagmi` hooks:
252
248
 
253
- ```
249
+ ```ts
254
250
  const { address } = useAccount()
255
251
  const { data } = useBalance({ address })
256
252
 
@@ -265,14 +261,14 @@ useEffect(() => {
265
261
  The Mezo Passport wallets supports message signing from `wagmi` lib, so signing
266
262
  functions the same way as it does in `wagmi`:
267
263
 
268
- ```
269
- import { useSignMessage } from 'wagmi'
264
+ ```tsx
265
+ import { useSignMessage } from "wagmi"
270
266
 
271
267
  function App() {
272
268
  const { signMessage } = useSignMessage()
273
269
 
274
270
  return (
275
- <button onClick={() => signMessage({ message: 'hello world' })}>
271
+ <button onClick={() => signMessage({ message: "hello world" })}>
276
272
  Sign message
277
273
  </button>
278
274
  )
@@ -286,7 +282,7 @@ Contracts integrations are handled the same way as in RainbowKit and Wagmi.
286
282
  To send a specific Mezo Matsnet transaction from the underlying Mezo Matsnet
287
283
  account, we can use a `useSendTransaction` hook from `@mezo-org/passport`:
288
284
 
289
- ```
285
+ ```ts
290
286
  import { useSendTransaction } from "@mezo-org/passport"
291
287
 
292
288
  const { sendTransaction } = useSendTransaction()
@@ -314,7 +310,7 @@ With `@mezo-org/passport` it's also possible to send BTC transactions from your
314
310
  original Bitcoin account (not the underlying Mezo Matsnet account). For that, we
315
311
  can use `useSendBitcoin` hook:
316
312
 
317
- ```
313
+ ```ts
318
314
  import { useSendBitcoin } from "@mezo-org/passport"
319
315
 
320
316
  const { sendBitcoin } = useSendBitcoin()
@@ -1,101 +1,78 @@
1
- type RequestHandlerOptions = Omit<RequestInit, "credentials" | "body"> & {
2
- body?: Record<string, unknown>;
3
- queryParams?: Record<string, string | undefined>;
4
- };
5
- type PassportIdentityProvider = "wallet" | "discord" | "email";
6
- type AccountPublicData = {
7
- mezoId?: string;
8
- btcAddress: string;
9
- evmAddress: string;
10
- };
11
- type AuthUser = {
12
- id: string;
13
- app_metadata: {
14
- provider: PassportIdentityProvider;
15
- providers: PassportIdentityProvider[];
16
- };
17
- user_metadata: AccountPublicData;
18
- };
1
+ import { ApiClient } from "./client";
19
2
  type AuthProvider = "discord";
20
- export type LinkedAccount = {
3
+ export type LinkedWalletAccount = {
21
4
  type: "wallet";
22
5
  btcAddress?: string;
23
6
  evmAddress: string;
24
- } | {
7
+ };
8
+ export type LinkedProviderAccount = {
25
9
  type: AuthProvider;
26
10
  name: string;
27
11
  id: string;
28
12
  avatarUrl: string;
29
13
  };
14
+ export type LinkedAccount = LinkedWalletAccount | LinkedProviderAccount;
30
15
  type Account = {
31
16
  mezoId: string;
32
17
  hasModifiedMezoId: boolean;
33
18
  linkedAccounts: LinkedAccount[];
34
- authUser: AuthUser;
35
19
  };
36
- type Session = {
20
+ export type Session = {
37
21
  expiresIn: number;
38
22
  expiresAt: number;
39
23
  sessionLinks: {
40
24
  _links: {
41
- account: "/session/account";
25
+ account: string;
42
26
  };
43
27
  };
44
28
  };
45
- type AuthenticationProviderRedirectResponse = {
29
+ export type AuthenticationProviderRedirectResponse = {
46
30
  redirectTo: string;
47
31
  };
48
- type WalletAccountCredentials = {
49
- type: "wallet";
32
+ type SignatureData = {
50
33
  message: string;
51
34
  signature: string;
52
35
  };
53
- export type CreateSessionRequest = WalletAccountCredentials | {
54
- type: "discord";
55
- };
56
- export type LinkAccountRequest = CreateSessionRequest;
57
- export type CreateAccountRequest = WalletAccountCredentials;
58
36
  export type GetSessionResponse = Session | {
59
37
  nonce: string;
60
38
  };
39
+ export type CreateSessionRequest = ({
40
+ type: "wallet";
41
+ } & SignatureData) | {
42
+ type: "discord";
43
+ };
44
+ export type CreateSessionResponse = Session | AuthenticationProviderRedirectResponse;
45
+ export type DeleteSessionResponse = {
46
+ message: string;
47
+ };
61
48
  export type GetCurrentAccountResponse = Partial<Account> | null;
62
49
  export type GetAccountByMezoIdOrAddressResponse = {
63
50
  mezoId?: string;
64
- linkedAccounts?: LinkedAccount[];
51
+ linkedAccounts?: Extract<LinkedAccount, {
52
+ type: "wallet";
53
+ }>[];
65
54
  };
66
- export declare const API_ENDPOINTS_BY_ENV: {
55
+ export type LinkAccountRequest = CreateSessionRequest;
56
+ export type LinkAccountResponse = Account | AuthenticationProviderRedirectResponse;
57
+ export type CreateAccountRequest = {
58
+ type: "wallet";
59
+ } & SignatureData;
60
+ export type CreateAccountResponse = Account;
61
+ export type UpdateMezoIdResponse = Account;
62
+ export declare const AUTH_API_ENDPOINTS_BY_ENV: {
67
63
  mainnet: string;
68
64
  testnet: string;
69
65
  };
70
- export declare class AuthApiClient {
71
- private apiUrl;
72
- constructor(apiUrl?: string);
73
- /**
74
- * The request handler for the Passport API. It accepts an API endpoint and
75
- * request options.
76
- * @dev Generic type `D` is a type of returned object from the function
77
- * @dev WARNING: This function hardcodes `credentials: "include"`, meaning
78
- * cookies and authentication headers will be sent with every request. Ensure
79
- * this is safe if you plan to use it in other contexts than auth api worker.
80
- * @param endpoint - The API endpoint to request. Should start with
81
- * forward slash ("/")
82
- * @param options - The request options, the `RequestInit` type with
83
- * additional type-safe properties
84
- * @returns The promise of the API response
85
- */
86
- protected handleRequest<D>(endpoint: `/${string}`, options: RequestHandlerOptions): Promise<D>;
66
+ export declare class AuthApiClient extends ApiClient {
67
+ constructor(environment?: keyof typeof AUTH_API_ENDPOINTS_BY_ENV, apiUrl?: string);
87
68
  getSession(code?: string): Promise<GetSessionResponse>;
88
- createSession(createSessionRequest: CreateSessionRequest): Promise<Session | {
89
- redirectTo: string;
90
- }>;
91
- deleteSession(): Promise<{
92
- message: string;
93
- }>;
69
+ createSession(createSessionRequest: CreateSessionRequest): Promise<CreateSessionResponse>;
70
+ deleteSession(): Promise<DeleteSessionResponse>;
94
71
  getCurrentAccount(): Promise<GetCurrentAccountResponse>;
95
- getAccountByMezoIdOrAddress(mezoIdOrAddress: string): Promise<GetAccountByMezoIdOrAddressResponse>;
96
- linkAccount(linkAccountRequest: LinkAccountRequest): Promise<Account | AuthenticationProviderRedirectResponse>;
72
+ getAccountByMezoIdOrAddress(mezoIdOrAddress: string): Promise<GetAccountByMezoIdOrAddressResponse | null>;
73
+ linkAccount(linkAccountRequest: LinkAccountRequest): Promise<LinkAccountResponse>;
97
74
  createAccount(createAccountRequest: CreateAccountRequest): Promise<Account>;
98
- updateMezoId(newMezoId: string): Promise<Partial<Account> | null>;
75
+ updateMezoId(newMezoId: string): Promise<Account>;
99
76
  }
100
77
  export {};
101
78
  //# sourceMappingURL=auth.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../src/api/auth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../src/api/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAGpC,KAAK,YAAY,GAAG,SAAS,CAAA;AAE7B,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,QAAQ,CAAA;IACd,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,qBAAqB,GAAG;IAClC,IAAI,EAAE,YAAY,CAAA;IAClB,IAAI,EAAE,MAAM,CAAA;IACZ,EAAE,EAAE,MAAM,CAAA;IACV,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,MAAM,MAAM,aAAa,GAAG,mBAAmB,GAAG,qBAAqB,CAAA;AAEvE,KAAK,OAAO,GAAG;IACb,MAAM,EAAE,MAAM,CAAA;IACd,iBAAiB,EAAE,OAAO,CAAA;IAC1B,cAAc,EAAE,aAAa,EAAE,CAAA;CAChC,CAAA;AAED,MAAM,MAAM,OAAO,GAAG;IACpB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,YAAY,EAAE;QACZ,MAAM,EAAE;YACN,OAAO,EAAE,MAAM,CAAA;SAChB,CAAA;KACF,CAAA;CACF,CAAA;AAED,MAAM,MAAM,sCAAsC,GAAG;IACnD,UAAU,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,KAAK,aAAa,GAAG;IACnB,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAGD,MAAM,MAAM,kBAAkB,GAAG,OAAO,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAA;AAE5D,MAAM,MAAM,oBAAoB,GAC5B,CAAC;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,GAAG,aAAa,CAAC,GACpC;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,CAAA;AACvB,MAAM,MAAM,qBAAqB,GAC7B,OAAO,GACP,sCAAsC,CAAA;AAE1C,MAAM,MAAM,qBAAqB,GAAG;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,CAAA;AAEvD,MAAM,MAAM,yBAAyB,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,CAAA;AAE/D,MAAM,MAAM,mCAAmC,GAAG;IAChD,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,cAAc,CAAC,EAAE,OAAO,CAAC,aAAa,EAAE;QAAE,IAAI,EAAE,QAAQ,CAAA;KAAE,CAAC,EAAE,CAAA;CAC9D,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG,oBAAoB,CAAA;AACrD,MAAM,MAAM,mBAAmB,GAC3B,OAAO,GACP,sCAAsC,CAAA;AAE1C,MAAM,MAAM,oBAAoB,GAAG;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,GAAG,aAAa,CAAA;AACrE,MAAM,MAAM,qBAAqB,GAAG,OAAO,CAAA;AAE3C,MAAM,MAAM,oBAAoB,GAAG,OAAO,CAAA;AAE1C,eAAO,MAAM,yBAAyB;;;CAGrC,CAAA;AAED,qBAAa,aAAc,SAAQ,SAAS;gBAExC,WAAW,GAAE,MAAM,OAAO,yBAAqC,EAC/D,MAAM,CAAC,EAAE,MAAM;IAKX,UAAU,CAAC,IAAI,CAAC,EAAE,MAAM;IASxB,aAAa,CAAC,oBAAoB,EAAE,oBAAoB;IASxD,aAAa;IAQb,iBAAiB;IAWjB,2BAA2B,CAAC,eAAe,EAAE,MAAM;IAqBnD,WAAW,CAAC,kBAAkB,EAAE,kBAAkB;IAYlD,aAAa,CAAC,oBAAoB,EAAE,oBAAoB;IASxD,YAAY,CAAC,SAAS,EAAE,MAAM;CAWrC"}
@@ -1,52 +1,12 @@
1
- export const API_ENDPOINTS_BY_ENV = {
1
+ import { ApiClient } from "./client";
2
+ import { FetchError } from "./fetch-error";
3
+ export const AUTH_API_ENDPOINTS_BY_ENV = {
2
4
  mainnet: "https://api.mezo.org",
3
5
  testnet: "https://api.test.mezo.org",
4
6
  };
5
- export class AuthApiClient {
6
- apiUrl;
7
- constructor(apiUrl) {
8
- this.apiUrl = apiUrl ?? API_ENDPOINTS_BY_ENV.mainnet;
9
- }
10
- /**
11
- * The request handler for the Passport API. It accepts an API endpoint and
12
- * request options.
13
- * @dev Generic type `D` is a type of returned object from the function
14
- * @dev WARNING: This function hardcodes `credentials: "include"`, meaning
15
- * cookies and authentication headers will be sent with every request. Ensure
16
- * this is safe if you plan to use it in other contexts than auth api worker.
17
- * @param endpoint - The API endpoint to request. Should start with
18
- * forward slash ("/")
19
- * @param options - The request options, the `RequestInit` type with
20
- * additional type-safe properties
21
- * @returns The promise of the API response
22
- */
23
- async handleRequest(endpoint, options) {
24
- const { method, headers, body, queryParams = {}, ...restOptions } = options || {};
25
- // If last character in apiUrl is forward slash we are removing it
26
- const authApiUrlRoute = this.apiUrl.replace(/\/$/, "");
27
- const url = new URL(`${authApiUrlRoute}${endpoint}`);
28
- // Removes falsy values (e.g. null, undefined etc.) from query params and
29
- // appends remaining ones to the URL
30
- Object.entries(queryParams)
31
- .filter(([, value]) => value) // Remove falsy values
32
- .forEach(([key, value]) => url.searchParams.append(key, value));
33
- const response = await fetch(url, {
34
- method,
35
- credentials: "include",
36
- headers: {
37
- "Content-Type": "application/json",
38
- ...headers,
39
- },
40
- body: body ? JSON.stringify(body) : undefined,
41
- ...restOptions,
42
- });
43
- const data = await response.json();
44
- if (!response.ok || data?.error) {
45
- const error = data?.error ||
46
- `An error occurred when handling API request: ${JSON.stringify(data)}`;
47
- throw new Error(`Error [${response.status}]: ${error}`);
48
- }
49
- return data;
7
+ export class AuthApiClient extends ApiClient {
8
+ constructor(environment = "mainnet", apiUrl) {
9
+ super(apiUrl ?? AUTH_API_ENDPOINTS_BY_ENV[environment]);
50
10
  }
51
11
  async getSession(code) {
52
12
  const data = await this.handleRequest("/session", {
@@ -75,9 +35,21 @@ export class AuthApiClient {
75
35
  return data;
76
36
  }
77
37
  async getAccountByMezoIdOrAddress(mezoIdOrAddress) {
78
- const data = await this.handleRequest(`/accounts/${mezoIdOrAddress}`, {
79
- method: "GET",
80
- });
38
+ let data;
39
+ try {
40
+ data = await this.handleRequest(`/accounts/${mezoIdOrAddress}`, {
41
+ method: "GET",
42
+ });
43
+ }
44
+ catch (error) {
45
+ // Return null if account is not found instead of throwing an error
46
+ if (error instanceof FetchError && error.status === 404) {
47
+ data = null;
48
+ }
49
+ else {
50
+ throw error;
51
+ }
52
+ }
81
53
  return data;
82
54
  }
83
55
  async linkAccount(linkAccountRequest) {
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../src/api/auth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../src/api/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAyE1C,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,OAAO,EAAE,sBAAsB;IAC/B,OAAO,EAAE,2BAA2B;CACrC,CAAA;AAED,MAAM,OAAO,aAAc,SAAQ,SAAS;IAC1C,YACE,cAAsD,SAAS,EAC/D,MAAe;QAEf,KAAK,CAAC,MAAM,IAAI,yBAAyB,CAAC,WAAW,CAAC,CAAC,CAAA;IACzD,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,IAAa;QAC5B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAqB,UAAU,EAAE;YACpE,MAAM,EAAE,KAAK;YACb,WAAW,EAAE,EAAE,IAAI,EAAE;SACtB,CAAC,CAAA;QAEF,OAAO,IAAI,CAAA;IACb,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,oBAA0C;QAC5D,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAwB,UAAU,EAAE;YACvE,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,oBAAoB;SAC3B,CAAC,CAAA;QAEF,OAAO,IAAI,CAAA;IACb,CAAC;IAED,KAAK,CAAC,aAAa;QACjB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAwB,UAAU,EAAE;YACvE,MAAM,EAAE,QAAQ;SACjB,CAAC,CAAA;QAEF,OAAO,IAAI,CAAA;IACb,CAAC;IAED,KAAK,CAAC,iBAAiB;QACrB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CACnC,kBAAkB,EAClB;YACE,MAAM,EAAE,KAAK;SACd,CACF,CAAA;QAED,OAAO,IAAI,CAAA;IACb,CAAC;IAED,KAAK,CAAC,2BAA2B,CAAC,eAAuB;QACvD,IAAI,IAAI,CAAA;QACR,IAAI,CAAC;YACH,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAC7B,aAAa,eAAe,EAAE,EAC9B;gBACE,MAAM,EAAE,KAAK;aACd,CACF,CAAA;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,mEAAmE;YACnE,IAAI,KAAK,YAAY,UAAU,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBACxD,IAAI,GAAG,IAAI,CAAA;YACb,CAAC;iBAAM,CAAC;gBACN,MAAM,KAAK,CAAA;YACb,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAA;IACb,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,kBAAsC;QACtD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CACnC,kCAAkC,EAClC;YACE,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,kBAAkB;SACzB,CACF,CAAA;QAED,OAAO,IAAI,CAAA;IACb,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,oBAA0C;QAC5D,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAwB,WAAW,EAAE;YACxE,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,oBAAoB;SAC3B,CAAC,CAAA;QAEF,OAAO,IAAI,CAAA;IACb,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,SAAiB;QAClC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CACnC,kBAAkB,EAClB;YACE,MAAM,EAAE,OAAO;YACf,IAAI,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE;SAC5B,CACF,CAAA;QAED,OAAO,IAAI,CAAA;IACb,CAAC;CACF"}
@@ -0,0 +1,24 @@
1
+ type RequestHandlerOptions = Omit<RequestInit, "credentials" | "body"> & {
2
+ body?: Record<string, unknown>;
3
+ queryParams?: Record<string, string | undefined>;
4
+ };
5
+ export declare abstract class ApiClient {
6
+ private apiUrl;
7
+ constructor(apiUrl: string);
8
+ /**
9
+ * The request handler for the Passport API. It accepts an API endpoint and
10
+ * request options.
11
+ * @dev Generic type `D` is a type of returned object from the function
12
+ * @dev WARNING: This function hardcodes `credentials: "include"`, meaning
13
+ * cookies and authentication headers will be sent with every request. Ensure
14
+ * this is safe if you plan to use it in other contexts than auth api worker.
15
+ * @param endpoint - The API endpoint to request. Should start with
16
+ * forward slash ("/")
17
+ * @param options - The request options, the `RequestInit` type with
18
+ * additional type-safe properties
19
+ * @returns The promise of the API response
20
+ */
21
+ protected handleRequest<D>(endpoint: `/${string}`, options?: RequestHandlerOptions): Promise<D>;
22
+ }
23
+ export {};
24
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/api/client.ts"],"names":[],"mappings":"AAEA,KAAK,qBAAqB,GAAG,IAAI,CAAC,WAAW,EAAE,aAAa,GAAG,MAAM,CAAC,GAAG;IACvE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAA;CACjD,CAAA;AAED,8BAAsB,SAAS;IAC7B,OAAO,CAAC,MAAM,CAAQ;gBAEV,MAAM,EAAE,MAAM;IAI1B;;;;;;;;;;;;OAYG;cACa,aAAa,CAAC,CAAC,EAC7B,QAAQ,EAAE,IAAI,MAAM,EAAE,EACtB,OAAO,GAAE,qBAA0B,GAClC,OAAO,CAAC,CAAC,CAAC;CA+Cd"}
@@ -0,0 +1,54 @@
1
+ import { FetchError } from "./fetch-error";
2
+ export class ApiClient {
3
+ apiUrl;
4
+ constructor(apiUrl) {
5
+ this.apiUrl = apiUrl;
6
+ }
7
+ /**
8
+ * The request handler for the Passport API. It accepts an API endpoint and
9
+ * request options.
10
+ * @dev Generic type `D` is a type of returned object from the function
11
+ * @dev WARNING: This function hardcodes `credentials: "include"`, meaning
12
+ * cookies and authentication headers will be sent with every request. Ensure
13
+ * this is safe if you plan to use it in other contexts than auth api worker.
14
+ * @param endpoint - The API endpoint to request. Should start with
15
+ * forward slash ("/")
16
+ * @param options - The request options, the `RequestInit` type with
17
+ * additional type-safe properties
18
+ * @returns The promise of the API response
19
+ */
20
+ async handleRequest(endpoint, options = {}) {
21
+ try {
22
+ const { method, body, queryParams = {}, ...restOptions } = options;
23
+ // If last character in apiUrl is forward slash we are removing it
24
+ const authApiUrlRoute = this.apiUrl.replace(/\/$/, "");
25
+ const url = new URL(`${authApiUrlRoute}${endpoint}`);
26
+ // Removes falsy values (e.g. null, undefined etc.) from query params and
27
+ // appends remaining ones to the URL
28
+ Object.entries(queryParams)
29
+ .filter(([, value]) => value) // Remove falsy values
30
+ .forEach(([key, value]) => url.searchParams.append(key, value));
31
+ const response = await fetch(url, {
32
+ method,
33
+ credentials: "include",
34
+ body: body ? JSON.stringify(body) : undefined,
35
+ ...restOptions,
36
+ });
37
+ const data = await response.json();
38
+ if (!response.ok || data?.error) {
39
+ const error = data?.error ||
40
+ `An error occurred when handling API request: ${JSON.stringify(data)}`;
41
+ throw new FetchError(response.status, `Error [${response.status}]: ${error}`);
42
+ }
43
+ return data;
44
+ }
45
+ catch (error) {
46
+ if (error instanceof FetchError) {
47
+ throw error;
48
+ }
49
+ const errorMessage = error instanceof Error ? error.message : JSON.stringify(error);
50
+ throw new FetchError(500, `Error [500]: An error occurred when handling API request: ${errorMessage}`);
51
+ }
52
+ }
53
+ }
54
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/api/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAO1C,MAAM,OAAgB,SAAS;IACrB,MAAM,CAAQ;IAEtB,YAAY,MAAc;QACxB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IACtB,CAAC;IAED;;;;;;;;;;;;OAYG;IACO,KAAK,CAAC,aAAa,CAC3B,QAAsB,EACtB,UAAiC,EAAE;QAEnC,IAAI,CAAC;YACH,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,EAAE,EAAE,GAAG,WAAW,EAAE,GAAG,OAAO,CAAA;YAElE,kEAAkE;YAClE,MAAM,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;YACtD,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,eAAe,GAAG,QAAQ,EAAE,CAAC,CAAA;YAEpD,yEAAyE;YACzE,oCAAoC;YACpC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC;iBACxB,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,sBAAsB;iBACnD,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,EAAE,KAAM,CAAC,CAAC,CAAA;YAElE,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;gBAChC,MAAM;gBACN,WAAW,EAAE,SAAS;gBACtB,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;gBAC7C,GAAG,WAAW;aACf,CAAC,CAAA;YAEF,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;YAElC,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,IAAI,EAAE,KAAK,EAAE,CAAC;gBAChC,MAAM,KAAK,GACT,IAAI,EAAE,KAAK;oBACX,gDAAgD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAA;gBACxE,MAAM,IAAI,UAAU,CAClB,QAAQ,CAAC,MAAM,EACf,UAAU,QAAQ,CAAC,MAAM,MAAM,KAAK,EAAE,CACvC,CAAA;YACH,CAAC;YAED,OAAO,IAAS,CAAA;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,UAAU,EAAE,CAAC;gBAChC,MAAM,KAAK,CAAA;YACb,CAAC;YAED,MAAM,YAAY,GAChB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;YAChE,MAAM,IAAI,UAAU,CAClB,GAAG,EACH,6DAA6D,YAAY,EAAE,CAC5E,CAAA;QACH,CAAC;IACH,CAAC;CACF"}
@@ -0,0 +1,5 @@
1
+ export declare class FetchError extends Error {
2
+ status: number;
3
+ constructor(status: number, message?: string);
4
+ }
5
+ //# sourceMappingURL=fetch-error.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetch-error.d.ts","sourceRoot":"","sources":["../../../src/api/fetch-error.ts"],"names":[],"mappings":"AAAA,qBAAa,UAAW,SAAQ,KAAK;IAE1B,MAAM,EAAE,MAAM;gBAAd,MAAM,EAAE,MAAM,EACrB,OAAO,CAAC,EAAE,MAAM;CAInB"}
@@ -0,0 +1,8 @@
1
+ export class FetchError extends Error {
2
+ status;
3
+ constructor(status, message) {
4
+ super(message);
5
+ this.status = status;
6
+ }
7
+ }
8
+ //# sourceMappingURL=fetch-error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetch-error.js","sourceRoot":"","sources":["../../../src/api/fetch-error.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,UAAW,SAAQ,KAAK;IAE1B;IADT,YACS,MAAc,EACrB,OAAgB;QAEhB,KAAK,CAAC,OAAO,CAAC,CAAA;QAHP,WAAM,GAAN,MAAM,CAAQ;IAIvB,CAAC;CACF"}
@@ -0,0 +1,3 @@
1
+ export * from "./auth";
2
+ export * from "./portal";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/api/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAA;AACtB,cAAc,UAAU,CAAA"}
@@ -0,0 +1,3 @@
1
+ export * from "./auth";
2
+ export * from "./portal";
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAA;AACtB,cAAc,UAAU,CAAA"}
@@ -0,0 +1,33 @@
1
+ import { ApiClient } from "./client";
2
+ type PortalStatistics = {
3
+ hodlers: number;
4
+ depositedBitcoin: string;
5
+ tvl: number;
6
+ currentUsdPerBtc: string;
7
+ currentUsdPerEth: string;
8
+ currentUsdPerTToken: string;
9
+ usdPerBtc24hChange: string;
10
+ };
11
+ type PortalMats = {
12
+ address: string;
13
+ totalMats: number;
14
+ matsFromDeposits: number;
15
+ matsFromReferrals: number;
16
+ matsFromSecondaryReferrals: number;
17
+ netMatsTransferred: number;
18
+ dailyMats: number;
19
+ dailyMatsFromDeposits: number;
20
+ dailyMatsFromReferrals: number;
21
+ dailyMatsFromSecondaryReferrals: number;
22
+ };
23
+ export declare const PORTAL_API_ENDPOINTS_BY_ENV: {
24
+ mainnet: string;
25
+ testnet: string;
26
+ };
27
+ export declare class PortalApiClient extends ApiClient {
28
+ constructor(environment?: keyof typeof PORTAL_API_ENDPOINTS_BY_ENV, apiUrl?: string);
29
+ getPortalStatistics(): Promise<PortalStatistics>;
30
+ getPortalMats(address: string): Promise<PortalMats>;
31
+ }
32
+ export {};
33
+ //# sourceMappingURL=portal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"portal.d.ts","sourceRoot":"","sources":["../../../src/api/portal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAEpC,KAAK,gBAAgB,GAAG;IACtB,OAAO,EAAE,MAAM,CAAA;IACf,gBAAgB,EAAE,MAAM,CAAA;IACxB,GAAG,EAAE,MAAM,CAAA;IACX,gBAAgB,EAAE,MAAM,CAAA;IACxB,gBAAgB,EAAE,MAAM,CAAA;IACxB,mBAAmB,EAAE,MAAM,CAAA;IAC3B,kBAAkB,EAAE,MAAM,CAAA;CAC3B,CAAA;AAED,KAAK,UAAU,GAAG;IAChB,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,gBAAgB,EAAE,MAAM,CAAA;IACxB,iBAAiB,EAAE,MAAM,CAAA;IACzB,0BAA0B,EAAE,MAAM,CAAA;IAClC,kBAAkB,EAAE,MAAM,CAAA;IAC1B,SAAS,EAAE,MAAM,CAAA;IACjB,qBAAqB,EAAE,MAAM,CAAA;IAC7B,sBAAsB,EAAE,MAAM,CAAA;IAC9B,+BAA+B,EAAE,MAAM,CAAA;CACxC,CAAA;AAED,eAAO,MAAM,2BAA2B;;;CAGvC,CAAA;AAED,qBAAa,eAAgB,SAAQ,SAAS;gBAE1C,WAAW,GAAE,MAAM,OAAO,2BAAuC,EACjE,MAAM,CAAC,EAAE,MAAM;IAKX,mBAAmB;IAQnB,aAAa,CAAC,OAAO,EAAE,MAAM;CAUpC"}
@@ -0,0 +1,23 @@
1
+ import { ApiClient } from "./client";
2
+ export const PORTAL_API_ENDPOINTS_BY_ENV = {
3
+ mainnet: "https://api.mezo.org/api/v1",
4
+ testnet: "https://api.test.mezo.org/api/v1",
5
+ };
6
+ export class PortalApiClient extends ApiClient {
7
+ constructor(environment = "mainnet", apiUrl) {
8
+ super(apiUrl ?? PORTAL_API_ENDPOINTS_BY_ENV[environment]);
9
+ }
10
+ async getPortalStatistics() {
11
+ const data = await this.handleRequest("/statistics", {
12
+ method: "GET",
13
+ });
14
+ return data;
15
+ }
16
+ async getPortalMats(address) {
17
+ const data = await this.handleRequest(`/accounts/${address}/mats`, {
18
+ method: "GET",
19
+ });
20
+ return data;
21
+ }
22
+ }
23
+ //# sourceMappingURL=portal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"portal.js","sourceRoot":"","sources":["../../../src/api/portal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAyBpC,MAAM,CAAC,MAAM,2BAA2B,GAAG;IACzC,OAAO,EAAE,6BAA6B;IACtC,OAAO,EAAE,kCAAkC;CAC5C,CAAA;AAED,MAAM,OAAO,eAAgB,SAAQ,SAAS;IAC5C,YACE,cAAwD,SAAS,EACjE,MAAe;QAEf,KAAK,CAAC,MAAM,IAAI,2BAA2B,CAAC,WAAW,CAAC,CAAC,CAAA;IAC3D,CAAC;IAED,KAAK,CAAC,mBAAmB;QACvB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAmB,aAAa,EAAE;YACrE,MAAM,EAAE,KAAK;SACd,CAAC,CAAA;QAEF,OAAO,IAAI,CAAA;IACb,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,OAAe;QACjC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CACnC,aAAa,OAAO,OAAO,EAC3B;YACE,MAAM,EAAE,KAAK;SACd,CACF,CAAA;QAED,OAAO,IAAI,CAAA;IACb,CAAC;CACF"}
@@ -0,0 +1,5 @@
1
+ import { BlockProps } from "@mezo-org/mezo-clay";
2
+ import React from "react";
3
+ declare function DefaultAvatarComponent(props: BlockProps): React.JSX.Element;
4
+ export default DefaultAvatarComponent;
5
+ //# sourceMappingURL=DefaultAvatar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DefaultAvatar.d.ts","sourceRoot":"","sources":["../../../src/assets/DefaultAvatar.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAS,UAAU,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,KAAmB,MAAM,OAAO,CAAA;AAoEvC,iBAAS,sBAAsB,CAAC,KAAK,EAAE,UAAU,qBAEhD;AAED,eAAe,sBAAsB,CAAA"}
@@ -0,0 +1,21 @@
1
+ import { Block } from "@mezo-org/mezo-clay";
2
+ import React from "react";
3
+ function DefaultAvatar(props) {
4
+ return (React.createElement("svg", { viewBox: "0 0 214 214", fill: "none", ...props },
5
+ React.createElement("rect", { y: "-0.478027", width: "166.379", height: "81.7091", fill: "#FF004D" }),
6
+ React.createElement("rect", { x: "166", y: "-0.478027", width: "48", height: "82", fill: "black" }),
7
+ React.createElement("rect", { x: "166.379", y: "81.231", width: "24.1044", height: "132.291", fill: "#DFFF80" }),
8
+ React.createElement("rect", { x: "118.758", y: "81.231", width: "24.1044", height: "132.291", fill: "#FF5500" }),
9
+ React.createElement("rect", { x: "71.1372", y: "81.231", width: "24.1044", height: "132.291", fill: "#5A59A7" }),
10
+ React.createElement("rect", { x: "23.5166", y: "81.231", width: "24.1044", height: "132.291", fill: "#47B5FF" }),
11
+ React.createElement("rect", { y: "81.231", width: "23.5165", height: "132.291", fill: "#A3C238" }),
12
+ React.createElement("rect", { x: "190.483", y: "81.231", width: "23.5165", height: "132.291", fill: "#6E6E70" }),
13
+ React.createElement("rect", { x: "142.863", y: "81.231", width: "23.5165", height: "132.291", fill: "#0A3C01" }),
14
+ React.createElement("rect", { x: "95.2417", y: "81.231", width: "23.5165", height: "132.291", fill: "#F2A91F" }),
15
+ React.createElement("rect", { x: "47.6211", y: "81.231", width: "23.5165", height: "132.291", fill: "#6B3D01" })));
16
+ }
17
+ function DefaultAvatarComponent(props) {
18
+ return React.createElement(Block, { as: DefaultAvatar, ...props });
19
+ }
20
+ export default DefaultAvatarComponent;
21
+ //# sourceMappingURL=DefaultAvatar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DefaultAvatar.js","sourceRoot":"","sources":["../../../src/assets/DefaultAvatar.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAc,MAAM,qBAAqB,CAAA;AACvD,OAAO,KAAmB,MAAM,OAAO,CAAA;AAEvC,SAAS,aAAa,CAAC,KAA8B;IACnD,OAAO,CACL,6BAAK,OAAO,EAAC,aAAa,EAAC,IAAI,EAAC,MAAM,KAAK,KAAK;QAC9C,8BAAM,CAAC,EAAC,WAAW,EAAC,KAAK,EAAC,SAAS,EAAC,MAAM,EAAC,SAAS,EAAC,IAAI,EAAC,SAAS,GAAG;QACtE,8BAAM,CAAC,EAAC,KAAK,EAAC,CAAC,EAAC,WAAW,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,IAAI,EAAC,OAAO,GAAG;QAClE,8BACE,CAAC,EAAC,SAAS,EACX,CAAC,EAAC,QAAQ,EACV,KAAK,EAAC,SAAS,EACf,MAAM,EAAC,SAAS,EAChB,IAAI,EAAC,SAAS,GACd;QACF,8BACE,CAAC,EAAC,SAAS,EACX,CAAC,EAAC,QAAQ,EACV,KAAK,EAAC,SAAS,EACf,MAAM,EAAC,SAAS,EAChB,IAAI,EAAC,SAAS,GACd;QACF,8BACE,CAAC,EAAC,SAAS,EACX,CAAC,EAAC,QAAQ,EACV,KAAK,EAAC,SAAS,EACf,MAAM,EAAC,SAAS,EAChB,IAAI,EAAC,SAAS,GACd;QACF,8BACE,CAAC,EAAC,SAAS,EACX,CAAC,EAAC,QAAQ,EACV,KAAK,EAAC,SAAS,EACf,MAAM,EAAC,SAAS,EAChB,IAAI,EAAC,SAAS,GACd;QACF,8BAAM,CAAC,EAAC,QAAQ,EAAC,KAAK,EAAC,SAAS,EAAC,MAAM,EAAC,SAAS,EAAC,IAAI,EAAC,SAAS,GAAG;QACnE,8BACE,CAAC,EAAC,SAAS,EACX,CAAC,EAAC,QAAQ,EACV,KAAK,EAAC,SAAS,EACf,MAAM,EAAC,SAAS,EAChB,IAAI,EAAC,SAAS,GACd;QACF,8BACE,CAAC,EAAC,SAAS,EACX,CAAC,EAAC,QAAQ,EACV,KAAK,EAAC,SAAS,EACf,MAAM,EAAC,SAAS,EAChB,IAAI,EAAC,SAAS,GACd;QACF,8BACE,CAAC,EAAC,SAAS,EACX,CAAC,EAAC,QAAQ,EACV,KAAK,EAAC,SAAS,EACf,MAAM,EAAC,SAAS,EAChB,IAAI,EAAC,SAAS,GACd;QACF,8BACE,CAAC,EAAC,SAAS,EACX,CAAC,EAAC,QAAQ,EACV,KAAK,EAAC,SAAS,EACf,MAAM,EAAC,SAAS,EAChB,IAAI,EAAC,SAAS,GACd,CACE,CACP,CAAA;AACH,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAiB;IAC/C,OAAO,oBAAC,KAAK,IAAC,EAAE,EAAE,aAAa,KAAM,KAAK,GAAI,CAAA;AAChD,CAAC;AAED,eAAe,sBAAsB,CAAA"}
@@ -0,0 +1,8 @@
1
+ import { ButtonProps } from "@mezo-org/mezo-clay";
2
+ import React, { ReactNode } from "react";
3
+ declare const ConnectedTrigger: React.ForwardRefExoticComponent<Omit<ButtonProps, "size" | "children"> & {
4
+ avatar: ReactNode;
5
+ size?: "medium" | "large";
6
+ } & React.RefAttributes<HTMLButtonElement>>;
7
+ export default ConnectedTrigger;
8
+ //# sourceMappingURL=ConnectedTrigger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConnectedTrigger.d.ts","sourceRoot":"","sources":["../../../../src/components/Dropdown/ConnectedTrigger.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAiB,WAAW,EAAgB,MAAM,qBAAqB,CAAA;AAC9E,OAAO,KAAK,EAAE,EAAc,SAAS,EAAW,MAAM,OAAO,CAAA;AAO7D,QAAA,MAAM,gBAAgB;YAJZ,SAAS;WACV,QAAQ,GAAG,OAAO;2CAoE1B,CAAA;AAED,eAAe,gBAAgB,CAAA"}