@hot-labs/kit 1.2.0-alpha.1 → 1.2.0

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 (368) hide show
  1. package/README.md +2 -9
  2. package/build/HotConnector.d.ts +105 -0
  3. package/build/HotConnector.js +303 -0
  4. package/build/HotConnector.js.map +1 -0
  5. package/build/OmniConnector.d.ts +90 -0
  6. package/build/OmniConnector.js +121 -0
  7. package/build/OmniConnector.js.map +1 -0
  8. package/build/OmniWallet.d.ts +35 -0
  9. package/build/OmniWallet.js +56 -0
  10. package/build/OmniWallet.js.map +1 -0
  11. package/build/activity.d.ts +18 -0
  12. package/build/activity.js +87 -0
  13. package/build/activity.js.map +1 -0
  14. package/build/core/Intents.d.ts +100 -0
  15. package/build/core/Intents.js +472 -0
  16. package/build/core/Intents.js.map +1 -0
  17. package/build/core/api.d.ts +60 -0
  18. package/build/core/api.js +108 -0
  19. package/build/core/api.js.map +1 -0
  20. package/build/core/bridge.d.ts +3 -0
  21. package/build/core/bridge.js +36 -0
  22. package/build/core/bridge.js.map +1 -0
  23. package/build/core/chains.d.ts +115 -0
  24. package/build/core/chains.js +381 -0
  25. package/build/core/chains.js.map +1 -0
  26. package/build/core/defaultTokens.d.ts +17 -0
  27. package/build/core/defaultTokens.js +1079 -0
  28. package/build/core/defaultTokens.js.map +1 -0
  29. package/build/core/events.d.ts +42 -0
  30. package/build/core/events.js +64 -0
  31. package/build/core/events.js.map +1 -0
  32. package/build/core/index.d.ts +10 -0
  33. package/build/core/index.js +11 -0
  34. package/build/core/index.js.map +1 -0
  35. package/build/core/recipient.d.ts +10 -0
  36. package/build/core/recipient.js +40 -0
  37. package/build/core/recipient.js.map +1 -0
  38. package/build/core/telemetry.d.ts +13 -0
  39. package/build/core/telemetry.js +27 -0
  40. package/build/core/telemetry.js.map +1 -0
  41. package/build/core/token.d.ts +37 -0
  42. package/build/core/token.js +106 -0
  43. package/build/core/token.js.map +1 -0
  44. package/build/core/tokens.d.ts +14 -0
  45. package/build/core/tokens.js +51 -0
  46. package/build/core/tokens.js.map +1 -0
  47. package/build/core/types.d.ts +60 -0
  48. package/build/core/types.js +2 -0
  49. package/build/core/types.js.map +1 -0
  50. package/build/core/utils.d.ts +25 -0
  51. package/build/core/utils.js +170 -0
  52. package/build/core/utils.js.map +1 -0
  53. package/build/cosmos/connector.d.ts +36 -0
  54. package/build/cosmos/connector.js +211 -0
  55. package/build/cosmos/connector.js.map +1 -0
  56. package/build/cosmos/helpers.d.ts +2 -0
  57. package/build/cosmos/helpers.js +29 -0
  58. package/build/cosmos/helpers.js.map +1 -0
  59. package/build/cosmos/index.d.ts +6 -0
  60. package/build/cosmos/index.js +5 -0
  61. package/build/cosmos/index.js.map +1 -0
  62. package/build/cosmos/wallet.d.ts +26 -0
  63. package/build/cosmos/wallet.js +51 -0
  64. package/build/cosmos/wallet.js.map +1 -0
  65. package/build/defaults.d.ts +1 -0
  66. package/build/defaults.js +7 -0
  67. package/build/defaults.js.map +1 -0
  68. package/build/evm/abi.d.ts +17 -0
  69. package/build/evm/abi.js +38 -0
  70. package/build/evm/abi.js.map +1 -0
  71. package/build/evm/connector.d.ts +29 -0
  72. package/build/evm/connector.js +118 -0
  73. package/build/evm/connector.js.map +1 -0
  74. package/build/evm/index.d.ts +6 -0
  75. package/build/evm/index.js +5 -0
  76. package/build/evm/index.js.map +1 -0
  77. package/build/evm/injected.d.ts +1 -0
  78. package/build/evm/injected.js +33 -0
  79. package/build/evm/injected.js.map +1 -0
  80. package/build/evm/wallet.d.ts +42 -0
  81. package/build/evm/wallet.js +130 -0
  82. package/build/evm/wallet.js.map +1 -0
  83. package/build/exchange.d.ts +68 -0
  84. package/build/exchange.js +384 -0
  85. package/build/exchange.js.map +1 -0
  86. package/build/hot-wallet/google.d.ts +25 -0
  87. package/build/hot-wallet/google.js +117 -0
  88. package/build/hot-wallet/google.js.map +1 -0
  89. package/build/hot-wallet/iframe.d.ts +36 -0
  90. package/build/hot-wallet/iframe.js +140 -0
  91. package/build/hot-wallet/iframe.js.map +1 -0
  92. package/build/hot-wallet/index.d.ts +5 -0
  93. package/build/hot-wallet/index.js +4 -0
  94. package/build/hot-wallet/index.js.map +1 -0
  95. package/build/hot-wallet/proxy.d.ts +8 -0
  96. package/build/hot-wallet/proxy.js +45 -0
  97. package/build/hot-wallet/proxy.js.map +1 -0
  98. package/build/index.d.ts +6 -0
  99. package/build/index.js +7 -0
  100. package/build/index.js.map +1 -0
  101. package/build/near/connector.d.ts +18 -0
  102. package/build/near/connector.js +58 -0
  103. package/build/near/connector.js.map +1 -0
  104. package/build/near/index.d.ts +7 -0
  105. package/build/near/index.js +5 -0
  106. package/build/near/index.js.map +1 -0
  107. package/build/near/rpc.d.ts +23 -0
  108. package/build/near/rpc.js +153 -0
  109. package/build/near/rpc.js.map +1 -0
  110. package/build/near/wallet.d.ts +55 -0
  111. package/build/near/wallet.js +201 -0
  112. package/build/near/wallet.js.map +1 -0
  113. package/build/solana/WalletStandard.d.ts +25 -0
  114. package/build/solana/WalletStandard.js +56 -0
  115. package/build/solana/WalletStandard.js.map +1 -0
  116. package/build/solana/connector.d.ts +30 -0
  117. package/build/solana/connector.js +139 -0
  118. package/build/solana/connector.js.map +1 -0
  119. package/build/solana/index.d.ts +6 -0
  120. package/build/solana/index.js +5 -0
  121. package/build/solana/index.js.map +1 -0
  122. package/build/solana/injected/account.d.ts +11 -0
  123. package/build/solana/injected/account.js +41 -0
  124. package/build/solana/injected/account.js.map +1 -0
  125. package/build/solana/injected/index.d.ts +1 -0
  126. package/build/solana/injected/index.js +82 -0
  127. package/build/solana/injected/index.js.map +1 -0
  128. package/build/solana/injected/register.d.ts +2 -0
  129. package/build/solana/injected/register.js +41 -0
  130. package/build/solana/injected/register.js.map +1 -0
  131. package/build/solana/injected/solana-wallet.d.ts +34 -0
  132. package/build/solana/injected/solana-wallet.js +223 -0
  133. package/build/solana/injected/solana-wallet.js.map +1 -0
  134. package/build/solana/injected/utils.d.ts +32 -0
  135. package/build/solana/injected/utils.js +36 -0
  136. package/build/solana/injected/utils.js.map +1 -0
  137. package/build/solana/wallet.d.ts +40 -0
  138. package/build/solana/wallet.js +181 -0
  139. package/build/solana/wallet.js.map +1 -0
  140. package/build/solana/walletStandartList.d.ts +102 -0
  141. package/build/solana/walletStandartList.js +150 -0
  142. package/build/solana/walletStandartList.js.map +1 -0
  143. package/build/stellar/connector.d.ts +29 -0
  144. package/build/stellar/connector.js +64 -0
  145. package/build/stellar/connector.js.map +1 -0
  146. package/build/stellar/freigher.d.ts +46 -0
  147. package/build/stellar/freigher.js +110 -0
  148. package/build/stellar/freigher.js.map +1 -0
  149. package/build/stellar/hotWallet.d.ts +33 -0
  150. package/build/stellar/hotWallet.js +28 -0
  151. package/build/stellar/hotWallet.js.map +1 -0
  152. package/build/stellar/index.d.ts +6 -0
  153. package/build/stellar/index.js +5 -0
  154. package/build/stellar/index.js.map +1 -0
  155. package/build/stellar/wallet.d.ts +67 -0
  156. package/build/stellar/wallet.js +212 -0
  157. package/build/stellar/wallet.js.map +1 -0
  158. package/build/storage.d.ts +10 -0
  159. package/build/storage.js +12 -0
  160. package/build/storage.js.map +1 -0
  161. package/build/ton/connector.d.ts +24 -0
  162. package/build/ton/connector.js +111 -0
  163. package/build/ton/connector.js.map +1 -0
  164. package/build/ton/index.d.ts +7 -0
  165. package/build/ton/index.js +5 -0
  166. package/build/ton/index.js.map +1 -0
  167. package/build/ton/injected.d.ts +1 -0
  168. package/build/ton/injected.js +49 -0
  169. package/build/ton/injected.js.map +1 -0
  170. package/build/ton/utils.d.ts +45 -0
  171. package/build/ton/utils.js +63 -0
  172. package/build/ton/utils.js.map +1 -0
  173. package/build/ton/wallet.d.ts +54 -0
  174. package/build/ton/wallet.js +138 -0
  175. package/build/ton/wallet.js.map +1 -0
  176. package/build/tron/connector.d.ts +51 -0
  177. package/build/tron/connector.js +65 -0
  178. package/build/tron/connector.js.map +1 -0
  179. package/build/tron/index.d.ts +6 -0
  180. package/build/tron/index.js +5 -0
  181. package/build/tron/index.js.map +1 -0
  182. package/build/tron/wallet.d.ts +52 -0
  183. package/build/tron/wallet.js +122 -0
  184. package/build/tron/wallet.js.map +1 -0
  185. package/build/ui/Popup.d.ts +12 -0
  186. package/build/ui/Popup.js +43 -0
  187. package/build/ui/Popup.js.map +1 -0
  188. package/build/ui/bridge/Bridge.d.ts +29 -0
  189. package/build/ui/bridge/Bridge.js +389 -0
  190. package/build/ui/bridge/Bridge.js.map +1 -0
  191. package/build/ui/bridge/SelectRecipient.d.ts +14 -0
  192. package/build/ui/bridge/SelectRecipient.js +68 -0
  193. package/build/ui/bridge/SelectRecipient.js.map +1 -0
  194. package/build/ui/bridge/SelectSender.d.ts +13 -0
  195. package/build/ui/bridge/SelectSender.js +23 -0
  196. package/build/ui/bridge/SelectSender.js.map +1 -0
  197. package/build/ui/bridge/SelectToken.d.ts +13 -0
  198. package/build/ui/bridge/SelectToken.js +93 -0
  199. package/build/ui/bridge/SelectToken.js.map +1 -0
  200. package/build/ui/bridge/TokenCard.d.ts +21 -0
  201. package/build/ui/bridge/TokenCard.js +65 -0
  202. package/build/ui/bridge/TokenCard.js.map +1 -0
  203. package/build/ui/connect/AuthPopup.d.ts +2 -0
  204. package/build/ui/connect/AuthPopup.js +48 -0
  205. package/build/ui/connect/AuthPopup.js.map +1 -0
  206. package/build/ui/connect/ConnectWallet.d.ts +14 -0
  207. package/build/ui/connect/ConnectWallet.js +22 -0
  208. package/build/ui/connect/ConnectWallet.js.map +1 -0
  209. package/build/ui/connect/LogoutPopup.d.ts +10 -0
  210. package/build/ui/connect/LogoutPopup.js +8 -0
  211. package/build/ui/connect/LogoutPopup.js.map +1 -0
  212. package/build/ui/connect/PrimaryWallet.d.ts +6 -0
  213. package/build/ui/connect/PrimaryWallet.js +18 -0
  214. package/build/ui/connect/PrimaryWallet.js.map +1 -0
  215. package/build/ui/connect/WCPopup.d.ts +13 -0
  216. package/build/ui/connect/WCPopup.js +81 -0
  217. package/build/ui/connect/WCPopup.js.map +1 -0
  218. package/build/ui/connect/WCRequest.d.ts +9 -0
  219. package/build/ui/connect/WCRequest.js +13 -0
  220. package/build/ui/connect/WCRequest.js.map +1 -0
  221. package/build/ui/connect/WalletPicker.d.ts +11 -0
  222. package/build/ui/connect/WalletPicker.js +48 -0
  223. package/build/ui/connect/WalletPicker.js.map +1 -0
  224. package/build/ui/icons/arrow-right.d.ts +3 -0
  225. package/build/ui/icons/arrow-right.js +5 -0
  226. package/build/ui/icons/arrow-right.js.map +1 -0
  227. package/build/ui/icons/close.d.ts +1 -0
  228. package/build/ui/icons/close.js +5 -0
  229. package/build/ui/icons/close.js.map +1 -0
  230. package/build/ui/icons/exchange.d.ts +5 -0
  231. package/build/ui/icons/exchange.js +6 -0
  232. package/build/ui/icons/exchange.js.map +1 -0
  233. package/build/ui/icons/logout.d.ts +1 -0
  234. package/build/ui/icons/logout.js +3 -0
  235. package/build/ui/icons/logout.js.map +1 -0
  236. package/build/ui/icons/pending.d.ts +1 -0
  237. package/build/ui/icons/pending.js +5 -0
  238. package/build/ui/icons/pending.js.map +1 -0
  239. package/build/ui/icons/plus.d.ts +2 -0
  240. package/build/ui/icons/plus.js +6 -0
  241. package/build/ui/icons/plus.js.map +1 -0
  242. package/build/ui/icons/qr.d.ts +1 -0
  243. package/build/ui/icons/qr.js +5 -0
  244. package/build/ui/icons/qr.js.map +1 -0
  245. package/build/ui/icons/refresh.d.ts +2 -0
  246. package/build/ui/icons/refresh.js +6 -0
  247. package/build/ui/icons/refresh.js.map +1 -0
  248. package/build/ui/icons/search.d.ts +1 -0
  249. package/build/ui/icons/search.js +5 -0
  250. package/build/ui/icons/search.js.map +1 -0
  251. package/build/ui/icons/switch.d.ts +1 -0
  252. package/build/ui/icons/switch.js +5 -0
  253. package/build/ui/icons/switch.js.map +1 -0
  254. package/build/ui/icons/wallet.d.ts +1 -0
  255. package/build/ui/icons/wallet.js +5 -0
  256. package/build/ui/icons/wallet.js.map +1 -0
  257. package/build/ui/profile/DepositQR.d.ts +9 -0
  258. package/build/ui/profile/DepositQR.js +56 -0
  259. package/build/ui/profile/DepositQR.js.map +1 -0
  260. package/build/ui/profile/Payment.d.ts +23 -0
  261. package/build/ui/profile/Payment.js +150 -0
  262. package/build/ui/profile/Payment.js.map +1 -0
  263. package/build/ui/profile/Profile.d.ts +7 -0
  264. package/build/ui/profile/Profile.js +135 -0
  265. package/build/ui/profile/Profile.js.map +1 -0
  266. package/build/ui/router.d.ts +51 -0
  267. package/build/ui/router.js +68 -0
  268. package/build/ui/router.js.map +1 -0
  269. package/build/ui/styles.d.ts +13 -0
  270. package/build/ui/styles.js +281 -0
  271. package/build/ui/styles.js.map +1 -0
  272. package/build/ui/uikit/Stepper.d.ts +13 -0
  273. package/build/ui/uikit/Stepper.js +22 -0
  274. package/build/ui/uikit/Stepper.js.map +1 -0
  275. package/build/ui/uikit/Toast.d.ts +4 -0
  276. package/build/ui/uikit/Toast.js +33 -0
  277. package/build/ui/uikit/Toast.js.map +1 -0
  278. package/build/ui/uikit/button.d.ts +2 -0
  279. package/build/ui/uikit/button.js +52 -0
  280. package/build/ui/uikit/button.js.map +1 -0
  281. package/build/ui/uikit/image.d.ts +6 -0
  282. package/build/ui/uikit/image.js +38 -0
  283. package/build/ui/uikit/image.js.map +1 -0
  284. package/build/ui/uikit/loader.d.ts +2 -0
  285. package/build/ui/uikit/loader.js +50 -0
  286. package/build/ui/uikit/loader.js.map +1 -0
  287. package/build/ui/uikit/tabs.d.ts +12 -0
  288. package/build/ui/uikit/tabs.js +35 -0
  289. package/build/ui/uikit/tabs.js.map +1 -0
  290. package/build/ui/uikit/text.d.ts +6 -0
  291. package/build/ui/uikit/text.js +59 -0
  292. package/build/ui/uikit/text.js.map +1 -0
  293. package/build/ui/utils.d.ts +1 -0
  294. package/build/ui/utils.js +20 -0
  295. package/build/ui/utils.js.map +1 -0
  296. package/package.json +8 -4
  297. package/src/HotConnector.ts +24 -31
  298. package/src/OmniConnector.ts +10 -9
  299. package/src/OmniWallet.ts +24 -25
  300. package/src/core/Intents.ts +222 -151
  301. package/src/core/api.ts +56 -10
  302. package/src/core/bridge.ts +3 -2
  303. package/src/core/index.ts +1 -1
  304. package/src/core/telemetry.ts +28 -0
  305. package/src/core/token.ts +4 -0
  306. package/src/core/tokens.ts +0 -9
  307. package/src/core/types.ts +21 -0
  308. package/src/core/utils.ts +17 -1
  309. package/src/cosmos/connector.ts +22 -26
  310. package/src/cosmos/wallet.ts +3 -8
  311. package/src/evm/connector.ts +5 -0
  312. package/src/evm/wallet.ts +9 -6
  313. package/src/exchange.ts +24 -30
  314. package/src/hot-wallet/google.ts +12 -5
  315. package/src/hot-wallet/proxy.ts +2 -2
  316. package/src/index.ts +3 -1
  317. package/src/near/connector.ts +2 -2
  318. package/src/{core/nearRpc.ts → near/rpc.ts} +9 -23
  319. package/src/near/wallet.ts +39 -31
  320. package/src/solana/{protocol.ts → WalletStandard.ts} +2 -4
  321. package/src/solana/connector.ts +9 -8
  322. package/src/solana/injected/solana-wallet.ts +6 -6
  323. package/src/solana/wallet.ts +11 -20
  324. package/src/stellar/connector.ts +1 -6
  325. package/src/stellar/wallet.ts +17 -17
  326. package/src/ton/connector.ts +1 -5
  327. package/src/ton/wallet.ts +3 -3
  328. package/src/tron/connector.ts +89 -0
  329. package/src/tron/index.ts +7 -0
  330. package/src/tron/wallet.ts +146 -0
  331. package/src/ui/Popup.tsx +12 -4
  332. package/src/ui/{payment → bridge}/Bridge.tsx +266 -212
  333. package/src/ui/{payment → bridge}/SelectRecipient.tsx +5 -4
  334. package/src/ui/{payment → bridge}/SelectSender.tsx +5 -5
  335. package/src/ui/{payment → bridge}/SelectToken.tsx +6 -4
  336. package/src/ui/bridge/TokenCard.tsx +99 -0
  337. package/src/ui/connect/AuthPopup.tsx +1 -1
  338. package/src/ui/connect/ConnectWallet.tsx +16 -10
  339. package/src/ui/connect/PrimaryWallet.tsx +65 -0
  340. package/src/ui/connect/WCRequest.tsx +1 -1
  341. package/src/ui/connect/WalletPicker.tsx +1 -1
  342. package/src/ui/icons/arrow-right.tsx +3 -4
  343. package/src/ui/icons/close.tsx +1 -1
  344. package/src/ui/icons/exchange.tsx +4 -11
  345. package/src/ui/icons/logout.tsx +4 -13
  346. package/src/ui/icons/pending.tsx +2 -4
  347. package/src/ui/icons/plus.tsx +12 -0
  348. package/src/ui/icons/qr.tsx +1 -2
  349. package/src/ui/icons/refresh.tsx +20 -0
  350. package/src/ui/icons/search.tsx +4 -4
  351. package/src/ui/icons/switch.tsx +4 -4
  352. package/src/ui/icons/wallet.tsx +2 -4
  353. package/src/ui/profile/Payment.tsx +309 -0
  354. package/src/ui/{payment → profile}/Profile.tsx +110 -70
  355. package/src/ui/router.tsx +57 -17
  356. package/src/ui/styles.ts +4 -11
  357. package/src/ui/uikit/Stepper.tsx +50 -0
  358. package/src/ui/uikit/Toast.tsx +45 -0
  359. package/src/ui/uikit/button.tsx +53 -0
  360. package/src/ui/uikit/image.tsx +45 -0
  361. package/src/ui/uikit/loader.tsx +52 -0
  362. package/src/ui/uikit/tabs.tsx +56 -0
  363. package/src/ui/uikit/text.tsx +64 -0
  364. package/src/ui/utils.ts +14 -0
  365. package/src/ui/payment/Payment.tsx +0 -79
  366. package/src/ui/payment/TokenCard.tsx +0 -98
  367. /package/src/solana/{wallets.ts → walletStandartList.ts} +0 -0
  368. /package/src/ui/{payment → profile}/DepositQR.tsx +0 -0
@@ -0,0 +1,23 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { observer } from "mobx-react-lite";
3
+ import { QRIcon } from "../icons/qr";
4
+ import { ArrowRightIcon } from "../icons/arrow-right";
5
+ import { PopupOption, PopupOptionInfo } from "../styles";
6
+ import { ConnectorType } from "../../OmniConnector";
7
+ import { ImageView } from "../uikit/image";
8
+ import { WalletType } from "../../core/chains";
9
+ import { formatter } from "../../core/utils";
10
+ import { openWalletPicker } from "../router";
11
+ import Popup from "../Popup";
12
+ export const SelectSender = observer(({ hot, type, onSelect, onClose }) => {
13
+ const connectors = hot.connectors.filter((t) => t.walletTypes.includes(type) && t.type !== ConnectorType.SOCIAL);
14
+ const noExternal = type === WalletType.OMNI || type === WalletType.COSMOS;
15
+ const selectWallet = async (t) => {
16
+ if (!t.wallets[0])
17
+ return openWalletPicker(t, (w) => (onSelect(w), onClose()));
18
+ onSelect(t.wallets[0]);
19
+ onClose();
20
+ };
21
+ return (_jsxs(Popup, { header: _jsx("p", { children: "Select sender" }), onClose: onClose, children: [!noExternal && (_jsxs(PopupOption, { onClick: () => (onSelect("qr"), onClose()), children: [_jsx("div", { style: { width: 44, height: 44, borderRadius: 16, background: "#000", display: "flex", alignItems: "center", justifyContent: "center" }, children: _jsx(QRIcon, {}) }), _jsxs(PopupOptionInfo, { children: [_jsx("p", { style: { fontSize: 20, fontWeight: "bold" }, children: "Send via QR code" }), _jsx("span", { className: "wallet-address", children: "From CEX or external wallet" })] })] })), connectors.map((t) => (_jsxs(PopupOption, { onClick: () => selectWallet(t), children: [_jsx(ImageView, { src: t.icon, alt: t.name, size: 44 }), _jsxs(PopupOptionInfo, { children: [_jsx("p", { style: { fontSize: 20, fontWeight: "bold" }, children: t.name }), t.wallets[0]?.address && _jsx("span", { className: "wallet-address", children: formatter.truncateAddress(t.wallets[0].address) })] }), !t.wallets[0]?.address ? _jsx("p", { children: "Connect" }) : _jsx(ArrowRightIcon, { style: { flexShrink: 0 } })] }, t.id)))] }));
22
+ });
23
+ //# sourceMappingURL=SelectSender.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelectSender.js","sourceRoot":"","sources":["../../../src/ui/bridge/SelectSender.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import { HotConnector } from "../../HotConnector";
2
+ import { OmniWallet } from "../../OmniWallet";
3
+ import { Token } from "../../core/token";
4
+ interface SelectTokenPopupProps {
5
+ hot: HotConnector;
6
+ initialChain?: number;
7
+ onClose: () => void;
8
+ onSelect: (token: Token, wallet?: OmniWallet) => void;
9
+ }
10
+ export declare const SelectTokenPopup: (({ hot, initialChain, onClose, onSelect }: SelectTokenPopupProps) => import("react/jsx-runtime").JSX.Element) & {
11
+ displayName: string;
12
+ };
13
+ export {};
@@ -0,0 +1,93 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useState } from "react";
3
+ import { observer } from "mobx-react-lite";
4
+ import styled from "styled-components";
5
+ import { Network, OmniToken } from "../../core/chains";
6
+ import { formatter } from "../../core/utils";
7
+ import { tokens } from "../../core/tokens";
8
+ import { PopupOption } from "../styles";
9
+ import Popup from "../Popup";
10
+ import { ImageView } from "../uikit/image";
11
+ import { TokenCard } from "./TokenCard";
12
+ export const SelectTokenPopup = observer(({ hot, initialChain, onClose, onSelect }) => {
13
+ const [chain, setChain] = useState(initialChain || null);
14
+ const [search, setSearch] = useState("");
15
+ if (chain == null) {
16
+ const chains = {};
17
+ tokens.list.forEach((token) => {
18
+ if (!chains[token.chain])
19
+ chains[token.chain] = {
20
+ chain: token.chain,
21
+ name: token.chainName,
22
+ icon: token.chainIcon,
23
+ balance: 0,
24
+ };
25
+ hot.wallets.forEach((wallet) => {
26
+ const balance = hot.balance(wallet, token);
27
+ chains[token.chain].balance += token.float(balance) * token.usd;
28
+ });
29
+ });
30
+ const sorted = Object.values(chains).sort((a, b) => {
31
+ if (a.chain === Network.Hot)
32
+ return -1;
33
+ return b.balance - a.balance;
34
+ });
35
+ return (_jsxs(Popup, { onClose: onClose, header: _jsx("p", { children: "Select chain" }), style: { minHeight: 300 }, children: [_jsx(SearchInput, { type: "text", placeholder: "Search chain", onChange: (e) => setSearch(e.target.value) }), sorted.map(({ chain, balance, name, icon }) => {
36
+ if (search && !name.toLowerCase().includes(search.toLowerCase()))
37
+ return;
38
+ return (_jsxs(PopupOption, { onClick: () => (setChain(chain), setSearch("")), children: [_jsx(ImageView, { src: icon, alt: name, size: 24 }), _jsx("p", { style: { fontSize: 24, fontWeight: "bold" }, children: name }), balance > 0 && _jsxs("p", { style: { marginLeft: "auto", fontSize: 20, color: "#c6c6c6" }, children: ["$", formatter.amount(balance)] })] }));
39
+ })] }));
40
+ }
41
+ if (chain !== -4) {
42
+ return (_jsxs(Popup, { onClose: onClose, header: _jsx("p", { children: "Select token" }), style: { minHeight: 300 }, children: [_jsx(SearchInput, { type: "text", placeholder: "Search token", onChange: (e) => setSearch(e.target.value) }), tokens.list
43
+ .filter((token) => token.chain === chain)
44
+ .sort((a, b) => {
45
+ const wallet = hot.wallets.find((w) => w.type === a.type);
46
+ const aBalance = a.float(hot.balance(wallet, a)) * a.usd;
47
+ const bBalance = b.float(hot.balance(wallet, b)) * b.usd;
48
+ return bBalance - aBalance;
49
+ })
50
+ .map((token) => {
51
+ const wallet = hot.wallets.find((w) => w.type === token.type);
52
+ if (search && !token.symbol.toLowerCase().includes(search.toLowerCase()))
53
+ return;
54
+ return _jsx(TokenCard, { token: token, onSelect: onSelect, hot: hot, wallet: wallet }, token.id);
55
+ })] }));
56
+ }
57
+ let used = new Set();
58
+ return (_jsxs(Popup, { onClose: onClose, header: _jsx("p", { children: "Select token" }), children: [_jsx(SearchInput, { type: "text", placeholder: "Search token", onChange: (e) => setSearch(e.target.value) }), hot.walletsTokens
59
+ .filter(({ token, balance }) => {
60
+ if (token.chain !== Network.Hot)
61
+ return false;
62
+ if (token.float(balance) < 0.0001)
63
+ return false;
64
+ if (!token.symbol.toLowerCase().includes(search.toLowerCase()))
65
+ return false;
66
+ used.add(token.address);
67
+ return true;
68
+ })
69
+ .sort((a, b) => {
70
+ const aBalance = a.token.float(a.balance) * a.token.usd;
71
+ const bBalance = b.token.float(b.balance) * b.token.usd;
72
+ return bBalance - aBalance;
73
+ })
74
+ .map(({ token, wallet }) => (_jsx(TokenCard, { token: token, onSelect: onSelect, hot: hot, wallet: wallet }, token.id))), Object.values(OmniToken)
75
+ .filter((token) => !used.has(token))
76
+ .map((token) => (_jsx(TokenCard, { token: hot.omni(token), onSelect: onSelect, hot: hot, wallet: hot.priorityWallet }, token)))] }));
77
+ });
78
+ const SearchInput = styled.input `
79
+ width: 100%;
80
+ padding: 12px 16px;
81
+ border-radius: 16px;
82
+ border: 1px solid #282c30;
83
+ background: #282c30;
84
+ color: #fff;
85
+ outline: none;
86
+ font-size: 20px;
87
+ font-weight: 500;
88
+ line-height: 24px;
89
+ letter-spacing: -0.32px;
90
+ text-align: left;
91
+ margin-bottom: 8px;
92
+ `;
93
+ //# sourceMappingURL=SelectToken.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelectToken.js","sourceRoot":"","sources":["../../../src/ui/bridge/SelectToken.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import { Token } from "../../core/token";
2
+ import { HotConnector } from "../../HotConnector";
3
+ import { OmniWallet } from "../../OmniWallet";
4
+ export declare const TokenIcon: (({ token, wallet, withoutChain, size }: {
5
+ token: Token;
6
+ wallet?: OmniWallet;
7
+ withoutChain?: boolean;
8
+ size?: number;
9
+ }) => import("react/jsx-runtime").JSX.Element) & {
10
+ displayName: string;
11
+ };
12
+ export declare const TokenCard: (({ token, onSelect, amount, hot, wallet, rightControl }: {
13
+ rightControl?: React.ReactNode;
14
+ token: Token;
15
+ onSelect?: (token: Token, wallet?: OmniWallet) => void;
16
+ amount?: bigint;
17
+ hot: HotConnector;
18
+ wallet?: OmniWallet;
19
+ }) => import("react/jsx-runtime").JSX.Element) & {
20
+ displayName: string;
21
+ };
@@ -0,0 +1,65 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { observer } from "mobx-react-lite";
3
+ import styled from "styled-components";
4
+ import { chains } from "../../core/chains";
5
+ import { formatter } from "../../core/utils";
6
+ import { ImageView } from "../uikit/image";
7
+ export const TokenIcon = observer(({ token, wallet, withoutChain, size = 40 }) => {
8
+ return (_jsxs("div", { style: { position: "relative", width: size, height: size, flexShrink: 0 }, children: [_jsx(ImageView, { src: token.icon, alt: token.symbol, size: size }), !withoutChain && _jsx(ImageView, { src: token.chainIcon, alt: token.symbol, size: size / 2 - 6, style: { position: "absolute", bottom: 0, right: 0 } }), token.chain === -4 && wallet?.type && _jsx(ImageView, { src: wallet.icon, alt: chains.getByType(wallet.type)?.[0]?.name || "", size: size / 2 - 6, style: { position: "absolute", bottom: 0, left: 0 } })] }));
9
+ });
10
+ export const TokenCard = observer(({ token, onSelect, amount, hot, wallet, rightControl }) => {
11
+ const balance = amount || hot.balance(wallet, token);
12
+ const symbol = token.chain === -4 && !token.isMainOmni ? `${token.symbol} (${token.originalChainSymbol})` : token.symbol;
13
+ return (_jsxs(Card, { onClick: () => onSelect?.(token, wallet), children: [_jsx(TokenIcon, { token: token, wallet: wallet }), _jsxs(TokenWrap, { children: [_jsx(Text, { style: { textAlign: "left" }, children: symbol }), _jsxs(PSmall, { style: { textAlign: "left" }, children: ["$", formatter.amount(token.usd)] })] }), rightControl || (_jsxs(TokenWrap, { style: { textAlign: "right", paddingRight: 4, marginLeft: "auto", alignItems: "flex-end" }, children: [_jsx(Text, { children: token.readable(balance) }), _jsxs(PSmall, { children: ["$", token.readable(balance, token.usd)] })] }))] }, token.id));
14
+ });
15
+ const Card = styled.div `
16
+ display: flex;
17
+ padding: 12px;
18
+ padding-bottom: 10px;
19
+ gap: 10px;
20
+ border-radius: 16px;
21
+ border: 1px solid #323232;
22
+ background: #272727;
23
+ cursor: pointer;
24
+ transition: background 0.2s ease-in-out;
25
+ width: 100%;
26
+ align-items: center;
27
+
28
+ &:hover {
29
+ background: rgba(255, 255, 255, 0.04);
30
+ }
31
+ `;
32
+ const PSmall = styled.p `
33
+ color: #bfbfbf;
34
+ font-family: "Golos Text";
35
+ font-size: 12px;
36
+ font-style: normal;
37
+ line-height: 16px;
38
+ letter-spacing: -0.12px;
39
+ text-align: left;
40
+ font-weight: bold;
41
+ `;
42
+ const Text = styled.p `
43
+ color: #fff;
44
+ text-align: right;
45
+ font-family: "Golos Text";
46
+ font-size: 16px;
47
+ font-style: normal;
48
+ line-height: 22px;
49
+ letter-spacing: -0.16px;
50
+ font-weight: bold;
51
+ `;
52
+ const TokenWrap = styled.div `
53
+ display: flex;
54
+ flex-direction: column;
55
+ gap: 2px;
56
+ margin-top: -1px;
57
+
58
+ &,
59
+ p {
60
+ white-space: nowrap;
61
+ overflow: hidden;
62
+ text-overflow: ellipsis;
63
+ }
64
+ `;
65
+ //# sourceMappingURL=TokenCard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TokenCard.js","sourceRoot":"","sources":["../../../src/ui/bridge/TokenCard.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { OmniWallet } from "../../OmniWallet";
2
+ export declare const openAuthPopup: <T>(wallet: OmniWallet, then: () => Promise<T>) => Promise<T>;
@@ -0,0 +1,48 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useState } from "react";
3
+ import Popup, { present } from "../Popup";
4
+ import { PopupButton } from "../styles";
5
+ const Loader = () => {
6
+ return (_jsx("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 100 100", preserveAspectRatio: "xMidYMid", width: "48", height: "48", style: { shapeRendering: "auto", display: "block", background: "transparent" }, children: _jsx("circle", { strokeDasharray: "75.39822368615503 27.132741228718345", r: "16", strokeWidth: "4", stroke: "#000", fill: "none", cy: "50", cx: "50", children: _jsx("animateTransform", { keyTimes: "0;1", values: "0 50 50;360 50 50", dur: "1.408450704225352s", repeatCount: "indefinite", type: "rotate", attributeName: "transform" }) }) }));
7
+ };
8
+ const AuthIntentPopupComponent = ({ wallet, onApprove, onReject }) => {
9
+ const [loading, setLoading] = useState(false);
10
+ const handleApprove = async () => {
11
+ try {
12
+ setLoading(true);
13
+ await onApprove();
14
+ setLoading(false);
15
+ }
16
+ catch (e) {
17
+ setLoading(false);
18
+ throw e;
19
+ }
20
+ };
21
+ return (_jsxs(Popup, { header: _jsx("p", { children: "Authorize wallet" }), onClose: onReject, children: [_jsx("p", { style: { textAlign: "center", color: "#fff" }, children: "To verify your account, you need to sign a message, this action is safe, the platform does not have access to your assets." }), _jsx(PopupButton, { disabled: loading, onClick: handleApprove, style: {
22
+ marginTop: "16px",
23
+ display: "flex",
24
+ alignItems: "center",
25
+ justifyContent: "center",
26
+ height: "48px",
27
+ opacity: loading ? 0.5 : 1,
28
+ }, children: loading ? _jsx(Loader, {}) : "Sign message" })] }));
29
+ };
30
+ export const openAuthPopup = (wallet, then) => {
31
+ return new Promise((resolve, reject) => {
32
+ present((close) => {
33
+ return (_jsx(AuthIntentPopupComponent, { wallet: wallet, onReject: () => (close(), reject()), onApprove: async () => {
34
+ try {
35
+ const result = await then();
36
+ resolve(result);
37
+ }
38
+ catch (e) {
39
+ reject(e);
40
+ }
41
+ finally {
42
+ close();
43
+ }
44
+ } }));
45
+ });
46
+ });
47
+ };
48
+ //# sourceMappingURL=AuthPopup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AuthPopup.js","sourceRoot":"","sources":["../../../src/ui/connect/AuthPopup.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import { OmniWallet } from "../../OmniWallet";
2
+ import { HotConnector } from "../../HotConnector";
3
+ import { WalletType } from "../../core";
4
+ interface MultichainPopupProps {
5
+ hot: HotConnector;
6
+ onClose: (wallet?: OmniWallet) => void;
7
+ title?: string;
8
+ walletType?: WalletType;
9
+ widget?: boolean;
10
+ }
11
+ export declare const Connector: (({ hot, onClose, title, walletType, widget }: MultichainPopupProps) => import("react/jsx-runtime").JSX.Element) & {
12
+ displayName: string;
13
+ };
14
+ export {};
@@ -0,0 +1,22 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { observer } from "mobx-react-lite";
3
+ import { ConnectorType } from "../../OmniConnector";
4
+ import { formatter } from "../../core/utils";
5
+ import { openWalletPicker } from "../router";
6
+ import { PopupOption, PopupOptionInfo } from "../styles";
7
+ import { LogoutIcon } from "../icons/logout";
8
+ import { ImageView } from "../uikit/image";
9
+ import Popup from "../Popup";
10
+ export const Connector = observer(({ hot, onClose, title, walletType, widget }) => {
11
+ const onechain = hot.connectors.filter((t) => t.type === ConnectorType.WALLET && (walletType == null || t.walletTypes.includes(walletType)));
12
+ const social = hot.connectors.filter((t) => t.type === ConnectorType.SOCIAL && (walletType == null || t.walletTypes.includes(walletType)));
13
+ const selectConnector = async (t) => {
14
+ if (t.wallets[0])
15
+ return t.disconnect();
16
+ if (t.options.length > 0)
17
+ return openWalletPicker(t, (w) => onClose(w));
18
+ await t.connect().finally(() => onClose());
19
+ };
20
+ return (_jsxs(Popup, { header: _jsx("p", { children: title || "Connect wallet" }), onClose: onClose, widget: widget, children: [onechain.map((t) => (_jsxs(PopupOption, { onClick: () => selectConnector(t), children: [_jsx(ImageView, { src: t.icon, alt: t.name, size: 44 }), _jsxs(PopupOptionInfo, { children: [_jsx("p", { children: t.name }), t.wallets[0]?.address && _jsx("span", { className: "wallet-address", children: formatter.truncateAddress(t.wallets[0].address, 24) })] }), t.wallets[0]?.address && _jsx(LogoutIcon, { width: 32, height: 32 })] }, t.id))), social.length > 0 && (_jsxs(_Fragment, { children: [_jsxs("div", { style: { margin: "4px 0", display: "flex", width: "100%", alignItems: "center", justifyContent: "center", gap: "8px" }, children: [_jsx("div", { style: { height: "1px", flex: 1, background: "rgba(255,255,255,0.1)" } }), _jsx("div", { children: "or" }), _jsx("div", { style: { height: "1px", flex: 1, background: "rgba(255,255,255,0.1)" } })] }), social.map((t) => (_jsxs(PopupOption, { onClick: () => selectConnector(t), children: [_jsx(ImageView, { src: t.icon, alt: t.name, size: 44 }), _jsxs(PopupOptionInfo, { children: [_jsx("p", { children: t.name }), t.wallets[0]?.address && _jsx("span", { className: "wallet-address", children: "Multichain connected" })] }), t.wallets[0]?.address && _jsx(LogoutIcon, { width: 32, height: 32 })] }, t.id)))] }))] }));
21
+ });
22
+ //# sourceMappingURL=ConnectWallet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConnectWallet.js","sourceRoot":"","sources":["../../../src/ui/connect/ConnectWallet.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import { OmniConnector } from "../../OmniConnector";
2
+ interface LogoutPopupProps {
3
+ connector: OmniConnector;
4
+ onApprove: () => void;
5
+ onReject: () => void;
6
+ }
7
+ export declare const LogoutPopup: (({ connector, onApprove, onReject }: LogoutPopupProps) => import("react/jsx-runtime").JSX.Element) & {
8
+ displayName: string;
9
+ };
10
+ export {};
@@ -0,0 +1,8 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { observer } from "mobx-react-lite";
3
+ import Popup from "../Popup";
4
+ import { PopupButton } from "../styles";
5
+ export const LogoutPopup = observer(({ connector, onApprove, onReject }) => {
6
+ return (_jsxs(Popup, { header: _jsxs("p", { children: ["Disconnect ", connector.name] }), onClose: onReject, children: [_jsx("p", { style: { textAlign: "center", color: "#fff" }, children: "Your local session will be cleared, see you there!" }), _jsx(PopupButton, { onClick: onApprove, children: "Bye-bye" })] }));
7
+ });
8
+ //# sourceMappingURL=LogoutPopup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LogoutPopup.js","sourceRoot":"","sources":["../../../src/ui/connect/LogoutPopup.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE3C,OAAO,KAAK,MAAM,UAAU,CAAC;AAE7B,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAQxC,MAAM,CAAC,MAAM,WAAW,GAAG,QAAQ,CAAC,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAoB,EAAE,EAAE;IAC3F,OAAO,CACL,MAAC,KAAK,IAAC,MAAM,EAAE,uCAAe,SAAS,CAAC,IAAI,IAAK,EAAE,OAAO,EAAE,QAAQ,aAClE,YAAG,KAAK,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,mEAAwD,EACxG,KAAC,WAAW,IAAC,OAAO,EAAE,SAAS,wBAAuB,IAChD,CACT,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { HotConnector } from "../../HotConnector";
2
+ declare const ConnectPrimaryWallet: ({ hot, onClose }: {
3
+ hot: HotConnector;
4
+ onClose: () => void;
5
+ }) => import("react/jsx-runtime").JSX.Element;
6
+ export default ConnectPrimaryWallet;
@@ -0,0 +1,18 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useState } from "react";
3
+ import Popup from "../Popup";
4
+ import { PopupButton } from "../styles";
5
+ import { Connector } from "./ConnectWallet";
6
+ import { chains, WalletType } from "../../core";
7
+ const ConnectPrimaryWallet = ({ hot, onClose }) => {
8
+ const [openConnect, setOpenConnect] = useState(false);
9
+ return (_jsx(Popup, { onClose: onClose, header: _jsx("p", { children: "Connect main wallet" }), children: openConnect ? (_jsx(Connector, { widget: true, walletType: WalletType.OMNI, hot: hot, onClose: onClose })) : (_jsxs("div", { style: { display: "flex", flexDirection: "column", alignItems: "center", justifyContent: "center", width: "100%", height: 300 }, children: [_jsxs("div", { style: { display: "flex", alignItems: "center", justifyContent: "center", gap: 24, marginTop: 48 }, children: [_jsx(WalletIcon, {}), _jsx(BindIcon, {}), _jsx("img", { src: chains.get(-4).logo, style: { marginLeft: -4, width: 64, height: 64, borderRadius: "50%" } })] }), _jsx("p", { style: { marginTop: 24, fontSize: 20, fontWeight: "bold" }, children: "Connect your primary wallet" }), _jsx("p", { style: { marginTop: 8, fontSize: 16, color: "#c6c6c6" }, children: "Your HEX Balance will be tied to this wallet." }), _jsx(PopupButton, { style: { marginTop: "auto" }, onClick: () => setOpenConnect(true), children: "Connect wallet" })] })) }));
10
+ };
11
+ const WalletIcon = () => {
12
+ return (_jsxs("svg", { width: "56", height: "56", viewBox: "0 0 64 64", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [_jsx("path", { d: "M45.333 6C48.6467 6 51.333 8.68629 51.333 12V15.333H52C55.3136 15.333 57.9998 18.0195 58 21.333V30.1826C60.191 31.2759 62 33.3016 62 35.5244V39.333C62 41.9566 60.3157 44.1858 57.9697 45.001C57.9878 45.1091 58 45.2197 58 45.333V53.333C58 56.6467 55.3137 59.333 52 59.333H12C8.68629 59.333 6 56.6467 6 53.333V12C6 8.68629 8.68629 6 12 6H45.333ZM10 53.333C10 54.4376 10.8954 55.333 12 55.333H52C53.1046 55.333 54 54.4376 54 53.333V45.333C54 45.2208 54.0115 45.1111 54.0293 45.0039L48 44C43.9499 44 41.333 42.0501 41.333 38C41.333 33.9499 43.9499 30.667 48 30.667L54 29.4658V21.333C53.9998 20.2286 53.1045 19.333 52 19.333H10V53.333ZM48 33.333C46.159 33.333 44 36.1591 44 38C44 39.8409 46.159 41.333 48 41.333H56C57.1046 41.333 58 40.4376 58 39.333V36.667C58 35.9442 57.0444 34.7412 56.0752 33.9951C56.0502 33.996 56.0252 34 56 34C55.4082 34 54.8779 33.7416 54.5117 33.333H48ZM12 10C10.8954 10 10 10.8954 10 12V15.333H47.333V12C47.333 10.8954 46.4376 10 45.333 10H12Z", fill: "#EBDEDC" }), _jsx("path", { d: "M42.9756 6.00781C46.1457 6.16859 48.667 8.7899 48.667 12V15.333H49.333C52.6466 15.333 55.3328 18.0195 55.333 21.333V30.0371C58.3331 30.3686 60.667 32.9115 60.667 36V38.667C60.6668 41.7553 58.3329 44.2973 55.333 44.6289V50.667C55.3328 53.9806 52.6466 56.667 49.333 56.667H12C8.6864 56.667 6.00018 53.9805 6 50.667V12C6 8.68629 8.6863 6 12 6H42.667L42.9756 6.00781ZM10 50.667C10.0002 51.7714 10.8955 52.667 12 52.667H49.333C50.4375 52.667 51.3328 51.7714 51.333 50.667V44.667H48C43.9501 44.6668 40.667 41.383 40.667 37.333C40.6672 33.2832 43.9502 30.0002 48 30H51.333V21.333C51.3328 20.2286 50.4375 19.333 49.333 19.333H10V50.667ZM48 34C46.1593 34.0002 44.6672 35.4923 44.667 37.333C44.667 39.1738 46.1592 40.6668 48 40.667H54.667C55.7713 40.6668 56.6668 39.7713 56.667 38.667V36C56.667 34.8955 55.7714 34.0002 54.667 34H48ZM12 10C10.8954 10 10 10.8954 10 12V15.333H44.667V12C44.667 10.9645 43.8796 10.1132 42.8711 10.0107L42.667 10H12Z", fill: "#EBDEDC" })] }));
13
+ };
14
+ const BindIcon = () => {
15
+ return (_jsxs("svg", { width: "32", height: "32", viewBox: "0 0 32 32", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [_jsx("path", { d: "M10.5552 12.5981C12.2474 10.9059 14.9908 10.9059 16.6831 12.5981L17.6597 13.5737C18.0501 13.9641 18.0499 14.5972 17.6597 14.9878C17.2691 15.3778 16.636 15.3781 16.2456 14.9878L15.269 14.0122C14.3578 13.101 12.8805 13.101 11.9692 14.0122L5.3501 20.6313C4.43935 21.5426 4.43903 23.0201 5.3501 23.9312L7.30225 25.8833C8.21331 26.7944 9.69079 26.794 10.6021 25.8833L13.5786 22.9077C13.9691 22.5172 14.6022 22.5172 14.9927 22.9077C15.383 23.2983 15.3831 23.9313 14.9927 24.3218L12.0161 27.2974C10.3238 28.9892 7.5803 28.9895 5.88818 27.2974L3.93604 25.3452C2.24392 23.6531 2.24424 20.9096 3.93604 19.2173L10.5552 12.5981ZM19.2153 3.97217C20.9038 2.25827 23.6655 2.24848 25.3667 3.94971L27.3013 5.88428C28.9935 7.57655 28.9935 10.3199 27.3013 12.0122L20.6821 18.6313C18.9898 20.3231 16.2463 20.3235 14.5542 18.6313L13.5776 17.6558C13.1874 17.2655 13.1879 16.6323 13.5776 16.2417C13.9682 15.8512 14.6012 15.8512 14.9917 16.2417L15.9683 17.2173C16.8793 18.1283 18.3568 18.128 19.2681 17.2173L25.8872 10.5981C26.7984 9.68692 26.7984 8.20956 25.8872 7.29834L23.9526 5.36377C23.0366 4.44774 21.5493 4.45268 20.6401 5.37549L16.7114 9.36377C16.3238 9.75672 15.6906 9.76194 15.2974 9.37451C14.9042 8.98707 14.8995 8.35389 15.2866 7.96045L19.2153 3.97217Z", fill: "#EBDEDC" }), _jsx("path", { d: "M10.5571 12.6016C12.2494 10.9094 14.9928 10.9093 16.6851 12.6016L17.6616 13.5771C18.0517 13.9675 18.0516 14.6008 17.6616 14.9912C17.2712 15.3816 16.6381 15.3814 16.2476 14.9912L15.271 14.0156C14.3598 13.1044 12.8824 13.1045 11.9712 14.0156L5.35205 20.6348C4.44083 21.546 4.44083 23.0233 5.35205 23.9346L8.03174 26.6143C8.9261 27.5083 10.3702 27.5276 11.2876 26.6572L13.6665 24.3984C13.637 24.375 13.6079 24.3505 13.5806 24.3232C13.1901 23.9327 13.1901 23.2997 13.5806 22.9092C14.1232 22.3666 14.8184 22.1462 15.4761 22.332C16.0272 22.488 16.6206 22.997 16.6206 23.7529C16.6206 23.7809 16.618 23.8085 16.6157 23.8359C16.6413 24.1291 16.539 24.4311 16.3091 24.6494L12.6646 28.1084C10.9608 29.7249 8.27866 29.6897 6.61768 28.0293L3.93799 25.3486C2.24572 23.6564 2.24572 20.913 3.93799 19.2207L10.5571 12.6016ZM19.2183 3.97266C20.9066 2.25916 23.6684 2.24938 25.3696 3.9502L28.1753 6.75586C29.8672 8.44789 29.868 11.1914 28.1763 12.8838L21.5581 19.5039C19.8663 21.1962 17.1218 21.1964 15.4292 19.5049L13.9614 18.0371C13.5709 17.6467 13.571 17.0136 13.9614 16.623C14.3519 16.2329 14.985 16.2327 15.3755 16.623L16.8433 18.0908C17.7547 19.0015 19.2321 19.001 20.1431 18.0898L26.7622 11.4697C27.6729 10.5585 27.6721 9.08097 26.7612 8.16992L23.9556 5.36426C23.0395 4.44844 21.5522 4.45431 20.6431 5.37695L16.7134 9.36523C16.3259 9.75836 15.6927 9.76319 15.2993 9.37598C14.906 8.98837 14.902 8.35531 15.2896 7.96191L19.2183 3.97266Z", fill: "#EBDEDC" })] }));
16
+ };
17
+ export default ConnectPrimaryWallet;
18
+ //# sourceMappingURL=PrimaryWallet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PrimaryWallet.js","sourceRoot":"","sources":["../../../src/ui/connect/PrimaryWallet.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,KAAK,MAAM,UAAU,CAAC;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAEhD,MAAM,oBAAoB,GAAG,CAAC,EAAE,GAAG,EAAE,OAAO,EAA8C,EAAE,EAAE;IAC5F,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEtD,OAAO,CACL,KAAC,KAAK,IAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,8CAA0B,YACxD,WAAW,CAAC,CAAC,CAAC,CACb,KAAC,SAAS,IAAC,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,GAAI,CACrF,CAAC,CAAC,CAAC,CACF,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,aAClI,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,aACrG,KAAC,UAAU,KAAG,EACd,KAAC,QAAQ,KAAG,EACZ,cAAK,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,GAAI,IACpG,EAEN,YAAG,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,4CAAiC,EAC9F,YAAG,KAAK,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,8DAAmD,EAE7G,KAAC,WAAW,IAAC,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,+BAEhE,IACV,CACP,GACK,CACT,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,GAAG,EAAE;IACtB,OAAO,CACL,eAAK,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAC,IAAI,EAAC,MAAM,EAAC,KAAK,EAAC,4BAA4B,aAC5F,eACE,CAAC,EAAC,q8BAAq8B,EACv8B,IAAI,EAAC,SAAS,GACd,EACF,eACE,CAAC,EAAC,w6BAAw6B,EAC16B,IAAI,EAAC,SAAS,GACd,IACE,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,QAAQ,GAAG,GAAG,EAAE;IACpB,OAAO,CACL,eAAK,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAC,IAAI,EAAC,MAAM,EAAC,KAAK,EAAC,4BAA4B,aAC5F,eACE,CAAC,EAAC,0tCAA0tC,EAC5tC,IAAI,EAAC,SAAS,GACd,EACF,eACE,CAAC,EAAC,g5CAAg5C,EACl5C,IAAI,EAAC,SAAS,GACd,IACE,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,oBAAoB,CAAC"}
@@ -0,0 +1,13 @@
1
+ interface WCPopupProps {
2
+ title: string;
3
+ uri: string;
4
+ icon?: string;
5
+ deeplink?: string;
6
+ onClose: () => void;
7
+ }
8
+ export declare const WCPopup: (({ title, uri, icon, deeplink, onClose }: WCPopupProps) => import("react/jsx-runtime").JSX.Element) & {
9
+ displayName: string;
10
+ };
11
+ export declare const QrCode: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
12
+ export declare const CopyButton: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
13
+ export {};
@@ -0,0 +1,81 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useEffect, useRef, useState } from "react";
3
+ import { observer } from "mobx-react-lite";
4
+ import QRCodeStyling from "qr-code-styling";
5
+ import styled from "styled-components";
6
+ import Popup from "../Popup";
7
+ import { WC_ICON } from "../../OmniConnector";
8
+ export const WCPopup = observer(({ title, uri, icon, deeplink, onClose }) => {
9
+ const [copyText, setCopyText] = useState("Copy Link");
10
+ const [iconUrl, setIconUrl] = useState(WC_ICON);
11
+ const qrCodeRef = useRef(null);
12
+ const [qrCode] = useState(new QRCodeStyling({
13
+ data: uri,
14
+ dotsOptions: { color: "#eeeeee", type: "dots" },
15
+ backgroundOptions: { color: "transparent" },
16
+ shape: "square",
17
+ width: 340,
18
+ height: 340,
19
+ type: "svg",
20
+ }));
21
+ useEffect(() => {
22
+ qrCode.update({ data: uri });
23
+ qrCode.append(qrCodeRef.current);
24
+ }, [uri, qrCode]);
25
+ useEffect(() => {
26
+ if (!iconUrl)
27
+ return;
28
+ qrCode.update({ image: iconUrl, imageOptions: { margin: 8, imageSize: 0.2 } });
29
+ }, [iconUrl]);
30
+ useEffect(() => {
31
+ fetch(icon || WC_ICON)
32
+ .then((res) => res.blob())
33
+ .then(() => setIconUrl(icon || WC_ICON));
34
+ }, [icon]);
35
+ const handleCopy = async () => {
36
+ if (uri && uri !== "LOADING") {
37
+ await navigator.clipboard.writeText(uri);
38
+ setCopyText("Link Copied");
39
+ setTimeout(() => {
40
+ setCopyText("Copy Link");
41
+ }, 2000);
42
+ }
43
+ };
44
+ return (_jsx(Popup, { header: _jsx("p", { children: title }), onClose: onClose, children: _jsxs("div", { style: { width: "100%", display: "flex", flexDirection: "column", alignItems: "center", gap: 16 }, children: [_jsx("div", { ref: qrCodeRef, style: { width: 340, height: 340 } }), _jsxs("div", { style: { display: "flex", alignItems: "center", justifyContent: "center", gap: 8 }, children: [_jsxs(CopyButton, { onClick: handleCopy, children: [_jsx("svg", { xmlns: "http://www.w3.org/2000/svg", width: "16", height: "16", fill: "currentColor", className: "bi bi-copy", viewBox: "0 0 16 16", children: _jsx("path", { fillRule: "evenodd", d: "M4 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2zm2-1a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 5a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1v-1h1v1a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h1v1z" }) }), _jsx("p", { children: copyText })] }), !!deeplink && (_jsx(CopyButton, { onClick: () => window.open(deeplink, "_blank"), children: _jsxs("p", { children: ["Open in ", title] }) }))] })] }) }));
45
+ });
46
+ export const QrCode = styled.div `
47
+ background: url("https://app.hot-labs.org/assets/QR.svg") center center / cover no-repeat;
48
+ position: relative;
49
+ display: flex;
50
+ align-items: center;
51
+ justify-content: center;
52
+ margin: 0 auto;
53
+ width: 400px;
54
+ height: 400px;
55
+ flex-shrink: 0;
56
+
57
+ canvas {
58
+ transform: translate(1px, 22px);
59
+ }
60
+ `;
61
+ export const CopyButton = styled.div `
62
+ display: flex;
63
+ align-items: center;
64
+ justify-content: center;
65
+ gap: 8px;
66
+ border: 1px solid #505357;
67
+ transition: background 0.2s ease-in-out;
68
+ background: #282c30;
69
+ padding: 8px;
70
+ border-radius: 16px;
71
+ font-size: 14px;
72
+ font-weight: 500;
73
+ cursor: pointer;
74
+ margin: auto;
75
+ flex-shrink: 0;
76
+
77
+ &:hover {
78
+ background: #383c40;
79
+ }
80
+ `;
81
+ //# sourceMappingURL=WCPopup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WCPopup.js","sourceRoot":"","sources":["../../../src/ui/connect/WCPopup.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ export declare const WCRequest: (({ deeplink, name, icon, onClose, task }: {
2
+ deeplink?: string;
3
+ name: string;
4
+ icon: string;
5
+ onClose: () => void;
6
+ task: Promise<any>;
7
+ }) => import("react/jsx-runtime").JSX.Element) & {
8
+ displayName: string;
9
+ };
@@ -0,0 +1,13 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { observer } from "mobx-react-lite";
3
+ import { useEffect } from "react";
4
+ import { ImageView } from "../uikit/image";
5
+ import { PopupButton } from "../styles";
6
+ import Popup from "../Popup";
7
+ export const WCRequest = observer(({ deeplink, name, icon, onClose, task }) => {
8
+ useEffect(() => {
9
+ task.finally(onClose);
10
+ }, [task]);
11
+ return (_jsx(Popup, { onClose: onClose, children: _jsxs("div", { style: { width: "100%", display: "flex", flexDirection: "column", alignItems: "center", gap: 16 }, children: [_jsx(ImageView, { style: { marginTop: 32 }, src: icon, alt: name, size: 100 }), _jsx("p", { style: { fontSize: 24, fontWeight: "bold" }, children: name }), _jsxs("p", { style: { fontSize: 16, color: "rgba(255, 255, 255, 0.7)" }, children: ["Application request you", _jsx("br", {}), "to approve some action in your wallet"] }), !!deeplink && _jsx(PopupButton, { onClick: () => window.open(deeplink, "_blank"), children: "Open wallet" })] }) }));
12
+ });
13
+ //# sourceMappingURL=WCRequest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WCRequest.js","sourceRoot":"","sources":["../../../src/ui/connect/WCRequest.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,KAAK,MAAM,UAAU,CAAC;AAE7B,MAAM,CAAC,MAAM,SAAS,GAAG,QAAQ,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAA8F,EAAE,EAAE;IACxK,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACxB,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAEX,OAAO,CACL,KAAC,KAAK,IAAC,OAAO,EAAE,OAAO,YACrB,eAAK,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,EAAE,aACpG,KAAC,SAAS,IAAC,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,GAAI,EACxE,YAAG,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,YAAG,IAAI,GAAK,EAC1D,aAAG,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,0BAA0B,EAAE,wCAE3D,cAAM,6CAEJ,EAEH,CAAC,CAAC,QAAQ,IAAI,KAAC,WAAW,IAAC,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,4BAA2B,IACjG,GACA,CACT,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { OmniWallet } from "../../OmniWallet";
2
+ import { OmniConnector } from "../../OmniConnector";
3
+ interface WalletPickerProps {
4
+ initialConnector: OmniConnector | null;
5
+ onSelect?: (wallet: OmniWallet) => void;
6
+ onClose: () => void;
7
+ }
8
+ export declare const WalletPicker: (({ initialConnector, onSelect, onClose }: WalletPickerProps) => import("react/jsx-runtime").JSX.Element | undefined) & {
9
+ displayName: string;
10
+ };
11
+ export {};