@multiplatform.one/web3 7.25.0 → 7.28.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 (755) hide show
  1. package/README.md +157 -8
  2. package/dist/cjs/bridge/base58.cjs +48 -0
  3. package/dist/cjs/bridge/base58.native.js +51 -0
  4. package/dist/cjs/bridge/base58.native.js.map +1 -0
  5. package/dist/cjs/bridge/core.cjs +5 -1
  6. package/dist/cjs/bridge/core.native.js +5 -1
  7. package/dist/cjs/bridge/core.native.js.map +1 -1
  8. package/dist/cjs/bridge/drivers.cjs +141 -0
  9. package/dist/cjs/bridge/drivers.native.js +161 -0
  10. package/dist/cjs/bridge/drivers.native.js.map +1 -0
  11. package/dist/cjs/bridge/nativeHost.cjs +49 -9
  12. package/dist/cjs/bridge/nativeHost.native.js +56 -9
  13. package/dist/cjs/bridge/nativeHost.native.js.map +1 -1
  14. package/dist/cjs/clients/adapter.native.js.map +1 -1
  15. package/dist/cjs/clients/connector.native.js.map +1 -1
  16. package/dist/cjs/clients/evm.cjs +1 -0
  17. package/dist/cjs/clients/evm.native.js +1 -0
  18. package/dist/cjs/clients/evm.native.js.map +1 -1
  19. package/dist/cjs/clients/evmRead.cjs +104 -0
  20. package/dist/cjs/clients/evmRead.native.js +124 -0
  21. package/dist/cjs/clients/evmRead.native.js.map +1 -0
  22. package/dist/cjs/clients/hooks.cjs +37 -7
  23. package/dist/cjs/clients/hooks.native.js +43 -5
  24. package/dist/cjs/clients/hooks.native.js.map +1 -1
  25. package/dist/cjs/clients/index.cjs +5 -0
  26. package/dist/cjs/clients/index.native.js +5 -0
  27. package/dist/cjs/clients/index.native.js.map +1 -1
  28. package/dist/cjs/clients/types.cjs +7 -0
  29. package/dist/cjs/clients/types.native.js +14 -0
  30. package/dist/cjs/clients/types.native.js.map +1 -1
  31. package/dist/cjs/connectkit/adapters/BitcoinAdapter.cjs +44 -2
  32. package/dist/cjs/connectkit/adapters/BitcoinAdapter.native.js +73 -5
  33. package/dist/cjs/connectkit/adapters/BitcoinAdapter.native.js.map +1 -1
  34. package/dist/cjs/connectkit/adapters/SolanaAdapter.cjs +46 -0
  35. package/dist/cjs/connectkit/adapters/SolanaAdapter.native.js +55 -0
  36. package/dist/cjs/connectkit/adapters/SolanaAdapter.native.js.map +1 -1
  37. package/dist/cjs/connectkit/adapters/SuiAdapter.cjs +40 -0
  38. package/dist/cjs/connectkit/adapters/SuiAdapter.native.js +50 -0
  39. package/dist/cjs/connectkit/adapters/SuiAdapter.native.js.map +1 -1
  40. package/dist/cjs/connectkit/connectors/ensureWalletConnectors.cjs +4 -1
  41. package/dist/cjs/connectkit/connectors/ensureWalletConnectors.native.js +8 -1
  42. package/dist/cjs/connectkit/connectors/ensureWalletConnectors.native.js.map +1 -1
  43. package/dist/cjs/connectkit/connectors/getWalletConnectors.native.js.map +1 -1
  44. package/dist/cjs/connectkit/connectors/syntheticChains.native.js.map +1 -1
  45. package/dist/cjs/connectkit/connectors/walletAdapterConnector.native.js.map +1 -1
  46. package/dist/cjs/connectkit/defaultConfig.cjs +5 -2
  47. package/dist/cjs/connectkit/defaultConfig.native.js +9 -2
  48. package/dist/cjs/connectkit/defaultConfig.native.js.map +1 -1
  49. package/dist/cjs/connectkit/siwe/SIWEContext.native.js.map +1 -1
  50. package/dist/cjs/connectkit/siwe/SIWEProvider.cjs +6 -4
  51. package/dist/cjs/connectkit/siwe/SIWEProvider.native.js +8 -4
  52. package/dist/cjs/connectkit/siwe/SIWEProvider.native.js.map +1 -1
  53. package/dist/cjs/connectkit/siwe/connectIntent.cjs +56 -16
  54. package/dist/cjs/connectkit/siwe/connectIntent.native.js +100 -16
  55. package/dist/cjs/connectkit/siwe/connectIntent.native.js.map +1 -1
  56. package/dist/cjs/connectkit/siwe/useSIWE.native.js.map +1 -1
  57. package/dist/cjs/connectkit/web3Bridge.cjs +58 -12
  58. package/dist/cjs/connectkit/web3Bridge.native.js +64 -14
  59. package/dist/cjs/connectkit/web3Bridge.native.js.map +1 -1
  60. package/dist/cjs/core/family.cjs +105 -0
  61. package/dist/cjs/core/family.native.js +132 -0
  62. package/dist/cjs/core/family.native.js.map +1 -0
  63. package/dist/cjs/core/index.cjs +50 -0
  64. package/dist/cjs/core/index.native.js +53 -0
  65. package/dist/cjs/core/index.native.js.map +1 -0
  66. package/dist/cjs/core/lightDriver.cjs +182 -0
  67. package/dist/cjs/core/lightDriver.native.js +260 -0
  68. package/dist/cjs/core/lightDriver.native.js.map +1 -0
  69. package/dist/cjs/core/message.cjs +89 -0
  70. package/dist/cjs/core/message.native.js +104 -0
  71. package/dist/cjs/core/message.native.js.map +1 -0
  72. package/dist/cjs/core/names.cjs +51 -0
  73. package/dist/cjs/core/names.native.js +95 -0
  74. package/dist/cjs/core/names.native.js.map +1 -0
  75. package/dist/cjs/core/react.cjs +59 -0
  76. package/dist/cjs/core/react.native.js +67 -0
  77. package/dist/cjs/core/react.native.js.map +1 -0
  78. package/dist/cjs/core/signIn.cjs +201 -0
  79. package/dist/cjs/core/signIn.native.js +240 -0
  80. package/dist/cjs/core/signIn.native.js.map +1 -0
  81. package/dist/cjs/core/store.cjs +495 -0
  82. package/dist/cjs/core/store.native.js +684 -0
  83. package/dist/cjs/core/store.native.js.map +1 -0
  84. package/dist/cjs/core/types.cjs +18 -0
  85. package/dist/cjs/core/types.native.js +21 -0
  86. package/dist/cjs/core/types.native.js.map +1 -0
  87. package/dist/cjs/families/btc.cjs +44 -0
  88. package/dist/cjs/families/btc.native.js +49 -0
  89. package/dist/cjs/families/btc.native.js.map +1 -0
  90. package/dist/cjs/families/eth.cjs +57 -0
  91. package/dist/cjs/families/eth.native.js +61 -0
  92. package/dist/cjs/families/eth.native.js.map +1 -0
  93. package/dist/cjs/families/gpg.cjs +40 -0
  94. package/dist/cjs/families/gpg.native.js +43 -0
  95. package/dist/cjs/families/gpg.native.js.map +1 -0
  96. package/dist/cjs/families/host.cjs +38 -0
  97. package/dist/cjs/families/host.native.js +41 -0
  98. package/dist/cjs/families/host.native.js.map +1 -0
  99. package/dist/cjs/families/index.cjs +53 -0
  100. package/dist/cjs/families/index.native.js +56 -0
  101. package/dist/cjs/families/index.native.js.map +1 -0
  102. package/dist/cjs/families/messages.cjs +61 -0
  103. package/dist/cjs/families/messages.native.js +66 -0
  104. package/dist/cjs/families/messages.native.js.map +1 -0
  105. package/dist/cjs/families/sol.cjs +55 -0
  106. package/dist/cjs/families/sol.native.js +64 -0
  107. package/dist/cjs/families/sol.native.js.map +1 -0
  108. package/dist/cjs/families/sui.cjs +48 -0
  109. package/dist/cjs/families/sui.native.js +53 -0
  110. package/dist/cjs/families/sui.native.js.map +1 -0
  111. package/dist/cjs/index.cjs +23 -2
  112. package/dist/cjs/index.native.js +22 -1
  113. package/dist/cjs/index.native.js.map +1 -1
  114. package/dist/cjs/keycloak/keycloakWallet.cjs +13 -0
  115. package/dist/cjs/keycloak/keycloakWallet.native.js +15 -0
  116. package/dist/cjs/keycloak/keycloakWallet.native.js.map +1 -1
  117. package/dist/cjs/keycloak/useDirectLogin.cjs +10 -5
  118. package/dist/cjs/keycloak/useDirectLogin.native.js +12 -5
  119. package/dist/cjs/keycloak/useDirectLogin.native.js.map +1 -1
  120. package/dist/cjs/keycloak/useWalletLogin.cjs +16 -8
  121. package/dist/cjs/light/drivers.cjs +73 -0
  122. package/dist/cjs/light/drivers.native.js +97 -0
  123. package/dist/cjs/light/drivers.native.js.map +1 -0
  124. package/dist/cjs/light/index.cjs +30 -0
  125. package/dist/cjs/light/index.native.js +33 -0
  126. package/dist/cjs/light/index.native.js.map +1 -0
  127. package/dist/cjs/providers/WalletProvider.cjs +59 -17
  128. package/dist/cjs/providers/WalletProvider.native.js +99 -56
  129. package/dist/cjs/providers/WalletProvider.native.js.map +1 -1
  130. package/dist/cjs/providers/families.cjs +53 -0
  131. package/dist/cjs/providers/families.native.js +59 -0
  132. package/dist/cjs/providers/families.native.js.map +1 -0
  133. package/dist/cjs/providers/index.cjs +1 -0
  134. package/dist/cjs/providers/index.native.js +1 -0
  135. package/dist/cjs/providers/index.native.js.map +1 -1
  136. package/dist/cjs/providers/walletConfig.cjs +41 -0
  137. package/dist/cjs/providers/walletConfig.native.js +68 -0
  138. package/dist/cjs/providers/walletConfig.native.js.map +1 -1
  139. package/dist/cjs/wagmi/driver.cjs +257 -0
  140. package/dist/cjs/wagmi/driver.native.js +331 -0
  141. package/dist/cjs/wagmi/driver.native.js.map +1 -0
  142. package/dist/cjs/wagmi/host.cjs +239 -0
  143. package/dist/cjs/wagmi/host.native.js +320 -0
  144. package/dist/cjs/wagmi/host.native.js.map +1 -0
  145. package/dist/cjs/wagmi/index.cjs +28 -0
  146. package/dist/cjs/wagmi/index.native.js +31 -0
  147. package/dist/cjs/wagmi/index.native.js.map +1 -0
  148. package/dist/cjs/web.cjs +84 -0
  149. package/dist/esm/bridge/base58.mjs +23 -0
  150. package/dist/esm/bridge/base58.mjs.map +1 -0
  151. package/dist/esm/bridge/base58.native.js +23 -0
  152. package/dist/esm/bridge/base58.native.js.map +1 -0
  153. package/dist/esm/bridge/core.mjs +3 -2
  154. package/dist/esm/bridge/core.mjs.map +1 -1
  155. package/dist/esm/bridge/core.native.js +3 -2
  156. package/dist/esm/bridge/core.native.js.map +1 -1
  157. package/dist/esm/bridge/drivers.mjs +113 -0
  158. package/dist/esm/bridge/drivers.mjs.map +1 -0
  159. package/dist/esm/bridge/drivers.native.js +130 -0
  160. package/dist/esm/bridge/drivers.native.js.map +1 -0
  161. package/dist/esm/bridge/nativeHost.mjs +50 -11
  162. package/dist/esm/bridge/nativeHost.mjs.map +1 -1
  163. package/dist/esm/bridge/nativeHost.native.js +57 -11
  164. package/dist/esm/bridge/nativeHost.native.js.map +1 -1
  165. package/dist/esm/clients/adapter.mjs.map +1 -1
  166. package/dist/esm/clients/adapter.native.js.map +1 -1
  167. package/dist/esm/clients/connector.mjs.map +1 -1
  168. package/dist/esm/clients/connector.native.js.map +1 -1
  169. package/dist/esm/clients/evm.mjs +1 -0
  170. package/dist/esm/clients/evm.mjs.map +1 -1
  171. package/dist/esm/clients/evm.native.js +1 -0
  172. package/dist/esm/clients/evm.native.js.map +1 -1
  173. package/dist/esm/clients/evmRead.mjs +78 -0
  174. package/dist/esm/clients/evmRead.mjs.map +1 -0
  175. package/dist/esm/clients/evmRead.native.js +95 -0
  176. package/dist/esm/clients/evmRead.native.js.map +1 -0
  177. package/dist/esm/clients/hooks.mjs +38 -9
  178. package/dist/esm/clients/hooks.mjs.map +1 -1
  179. package/dist/esm/clients/hooks.native.js +44 -7
  180. package/dist/esm/clients/hooks.native.js.map +1 -1
  181. package/dist/esm/clients/index.mjs +4 -3
  182. package/dist/esm/clients/index.mjs.map +1 -1
  183. package/dist/esm/clients/index.native.js +4 -3
  184. package/dist/esm/clients/index.native.js.map +1 -1
  185. package/dist/esm/clients/types.mjs +7 -1
  186. package/dist/esm/clients/types.mjs.map +1 -1
  187. package/dist/esm/clients/types.native.js +14 -1
  188. package/dist/esm/clients/types.native.js.map +1 -1
  189. package/dist/esm/connectkit/adapters/BitcoinAdapter.mjs +44 -2
  190. package/dist/esm/connectkit/adapters/BitcoinAdapter.mjs.map +1 -1
  191. package/dist/esm/connectkit/adapters/BitcoinAdapter.native.js +73 -5
  192. package/dist/esm/connectkit/adapters/BitcoinAdapter.native.js.map +1 -1
  193. package/dist/esm/connectkit/adapters/SolanaAdapter.mjs +46 -0
  194. package/dist/esm/connectkit/adapters/SolanaAdapter.mjs.map +1 -1
  195. package/dist/esm/connectkit/adapters/SolanaAdapter.native.js +55 -0
  196. package/dist/esm/connectkit/adapters/SolanaAdapter.native.js.map +1 -1
  197. package/dist/esm/connectkit/adapters/SuiAdapter.mjs +40 -0
  198. package/dist/esm/connectkit/adapters/SuiAdapter.mjs.map +1 -1
  199. package/dist/esm/connectkit/adapters/SuiAdapter.native.js +50 -0
  200. package/dist/esm/connectkit/adapters/SuiAdapter.native.js.map +1 -1
  201. package/dist/esm/connectkit/connectors/ensureWalletConnectors.mjs +4 -1
  202. package/dist/esm/connectkit/connectors/ensureWalletConnectors.mjs.map +1 -1
  203. package/dist/esm/connectkit/connectors/ensureWalletConnectors.native.js +8 -1
  204. package/dist/esm/connectkit/connectors/ensureWalletConnectors.native.js.map +1 -1
  205. package/dist/esm/connectkit/connectors/getWalletConnectors.mjs.map +1 -1
  206. package/dist/esm/connectkit/connectors/getWalletConnectors.native.js.map +1 -1
  207. package/dist/esm/connectkit/connectors/syntheticChains.mjs.map +1 -1
  208. package/dist/esm/connectkit/connectors/syntheticChains.native.js.map +1 -1
  209. package/dist/esm/connectkit/connectors/walletAdapterConnector.mjs.map +1 -1
  210. package/dist/esm/connectkit/connectors/walletAdapterConnector.native.js.map +1 -1
  211. package/dist/esm/connectkit/defaultConfig.mjs +6 -3
  212. package/dist/esm/connectkit/defaultConfig.mjs.map +1 -1
  213. package/dist/esm/connectkit/defaultConfig.native.js +10 -3
  214. package/dist/esm/connectkit/defaultConfig.native.js.map +1 -1
  215. package/dist/esm/connectkit/siwe/SIWEContext.mjs.map +1 -1
  216. package/dist/esm/connectkit/siwe/SIWEContext.native.js.map +1 -1
  217. package/dist/esm/connectkit/siwe/SIWEProvider.mjs +6 -4
  218. package/dist/esm/connectkit/siwe/SIWEProvider.mjs.map +1 -1
  219. package/dist/esm/connectkit/siwe/SIWEProvider.native.js +8 -4
  220. package/dist/esm/connectkit/siwe/SIWEProvider.native.js.map +1 -1
  221. package/dist/esm/connectkit/siwe/connectIntent.mjs +54 -16
  222. package/dist/esm/connectkit/siwe/connectIntent.mjs.map +1 -1
  223. package/dist/esm/connectkit/siwe/connectIntent.native.js +98 -16
  224. package/dist/esm/connectkit/siwe/connectIntent.native.js.map +1 -1
  225. package/dist/esm/connectkit/siwe/useSIWE.mjs.map +1 -1
  226. package/dist/esm/connectkit/siwe/useSIWE.native.js.map +1 -1
  227. package/dist/esm/connectkit/web3Bridge.mjs +61 -16
  228. package/dist/esm/connectkit/web3Bridge.mjs.map +1 -1
  229. package/dist/esm/connectkit/web3Bridge.native.js +67 -18
  230. package/dist/esm/connectkit/web3Bridge.native.js.map +1 -1
  231. package/dist/esm/core/family.mjs +79 -0
  232. package/dist/esm/core/family.mjs.map +1 -0
  233. package/dist/esm/core/family.native.js +103 -0
  234. package/dist/esm/core/family.native.js.map +1 -0
  235. package/dist/esm/core/index.mjs +9 -0
  236. package/dist/esm/core/index.mjs.map +1 -0
  237. package/dist/esm/core/index.native.js +9 -0
  238. package/dist/esm/core/index.native.js.map +1 -0
  239. package/dist/esm/core/lightDriver.mjs +157 -0
  240. package/dist/esm/core/lightDriver.mjs.map +1 -0
  241. package/dist/esm/core/lightDriver.native.js +232 -0
  242. package/dist/esm/core/lightDriver.native.js.map +1 -0
  243. package/dist/esm/core/message.mjs +63 -0
  244. package/dist/esm/core/message.mjs.map +1 -0
  245. package/dist/esm/core/message.native.js +75 -0
  246. package/dist/esm/core/message.native.js.map +1 -0
  247. package/dist/esm/core/names.mjs +25 -0
  248. package/dist/esm/core/names.mjs.map +1 -0
  249. package/dist/esm/core/names.native.js +66 -0
  250. package/dist/esm/core/names.native.js.map +1 -0
  251. package/dist/esm/core/react.mjs +30 -0
  252. package/dist/esm/core/react.mjs.map +1 -0
  253. package/dist/esm/core/react.native.js +35 -0
  254. package/dist/esm/core/react.native.js.map +1 -0
  255. package/dist/esm/core/signIn.mjs +173 -0
  256. package/dist/esm/core/signIn.mjs.map +1 -0
  257. package/dist/esm/core/signIn.native.js +209 -0
  258. package/dist/esm/core/signIn.native.js.map +1 -0
  259. package/dist/esm/core/store.mjs +469 -0
  260. package/dist/esm/core/store.mjs.map +1 -0
  261. package/dist/esm/core/store.native.js +655 -0
  262. package/dist/esm/core/store.native.js.map +1 -0
  263. package/dist/esm/core/types.mjs +2 -0
  264. package/dist/esm/core/types.mjs.map +1 -0
  265. package/dist/esm/core/types.native.js +2 -0
  266. package/dist/esm/core/types.native.js.map +1 -0
  267. package/dist/esm/families/btc.mjs +19 -0
  268. package/dist/esm/families/btc.mjs.map +1 -0
  269. package/dist/esm/families/btc.native.js +21 -0
  270. package/dist/esm/families/btc.native.js.map +1 -0
  271. package/dist/esm/families/eth.mjs +32 -0
  272. package/dist/esm/families/eth.mjs.map +1 -0
  273. package/dist/esm/families/eth.native.js +33 -0
  274. package/dist/esm/families/eth.native.js.map +1 -0
  275. package/dist/esm/families/gpg.mjs +15 -0
  276. package/dist/esm/families/gpg.mjs.map +1 -0
  277. package/dist/esm/families/gpg.native.js +15 -0
  278. package/dist/esm/families/gpg.native.js.map +1 -0
  279. package/dist/esm/families/host.mjs +12 -0
  280. package/dist/esm/families/host.mjs.map +1 -0
  281. package/dist/esm/families/host.native.js +12 -0
  282. package/dist/esm/families/host.native.js.map +1 -0
  283. package/dist/esm/families/index.mjs +23 -0
  284. package/dist/esm/families/index.mjs.map +1 -0
  285. package/dist/esm/families/index.native.js +23 -0
  286. package/dist/esm/families/index.native.js.map +1 -0
  287. package/dist/esm/families/messages.mjs +32 -0
  288. package/dist/esm/families/messages.mjs.map +1 -0
  289. package/dist/esm/families/messages.native.js +34 -0
  290. package/dist/esm/families/messages.native.js.map +1 -0
  291. package/dist/esm/families/sol.mjs +30 -0
  292. package/dist/esm/families/sol.mjs.map +1 -0
  293. package/dist/esm/families/sol.native.js +36 -0
  294. package/dist/esm/families/sol.native.js.map +1 -0
  295. package/dist/esm/families/sui.mjs +23 -0
  296. package/dist/esm/families/sui.mjs.map +1 -0
  297. package/dist/esm/families/sui.native.js +25 -0
  298. package/dist/esm/families/sui.native.js.map +1 -0
  299. package/dist/esm/index.mjs +7 -3
  300. package/dist/esm/index.mjs.map +1 -1
  301. package/dist/esm/index.native.js +7 -3
  302. package/dist/esm/index.native.js.map +1 -1
  303. package/dist/esm/keycloak/keycloakWallet.mjs +13 -0
  304. package/dist/esm/keycloak/keycloakWallet.mjs.map +1 -1
  305. package/dist/esm/keycloak/keycloakWallet.native.js +15 -0
  306. package/dist/esm/keycloak/keycloakWallet.native.js.map +1 -1
  307. package/dist/esm/keycloak/useDirectLogin.mjs +10 -5
  308. package/dist/esm/keycloak/useDirectLogin.mjs.map +1 -1
  309. package/dist/esm/keycloak/useDirectLogin.native.js +12 -5
  310. package/dist/esm/keycloak/useDirectLogin.native.js.map +1 -1
  311. package/dist/esm/keycloak/useWalletLogin.mjs +16 -8
  312. package/dist/esm/keycloak/useWalletLogin.mjs.map +1 -1
  313. package/dist/esm/light/drivers.mjs +46 -0
  314. package/dist/esm/light/drivers.mjs.map +1 -0
  315. package/dist/esm/light/drivers.native.js +67 -0
  316. package/dist/esm/light/drivers.native.js.map +1 -0
  317. package/dist/esm/light/index.mjs +3 -0
  318. package/dist/esm/light/index.mjs.map +1 -0
  319. package/dist/esm/light/index.native.js +3 -0
  320. package/dist/esm/light/index.native.js.map +1 -0
  321. package/dist/esm/providers/WalletProvider.mjs +60 -19
  322. package/dist/esm/providers/WalletProvider.mjs.map +1 -1
  323. package/dist/esm/providers/WalletProvider.native.js +101 -59
  324. package/dist/esm/providers/WalletProvider.native.js.map +1 -1
  325. package/dist/esm/providers/families.mjs +27 -0
  326. package/dist/esm/providers/families.mjs.map +1 -0
  327. package/dist/esm/providers/families.native.js +30 -0
  328. package/dist/esm/providers/families.native.js.map +1 -0
  329. package/dist/esm/providers/index.mjs +2 -2
  330. package/dist/esm/providers/index.mjs.map +1 -1
  331. package/dist/esm/providers/index.native.js +2 -2
  332. package/dist/esm/providers/index.native.js.map +1 -1
  333. package/dist/esm/providers/walletConfig.mjs +40 -1
  334. package/dist/esm/providers/walletConfig.mjs.map +1 -1
  335. package/dist/esm/providers/walletConfig.native.js +67 -1
  336. package/dist/esm/providers/walletConfig.native.js.map +1 -1
  337. package/dist/esm/wagmi/driver.mjs +232 -0
  338. package/dist/esm/wagmi/driver.mjs.map +1 -0
  339. package/dist/esm/wagmi/driver.native.js +303 -0
  340. package/dist/esm/wagmi/driver.native.js.map +1 -0
  341. package/dist/esm/wagmi/host.mjs +213 -0
  342. package/dist/esm/wagmi/host.mjs.map +1 -0
  343. package/dist/esm/wagmi/host.native.js +291 -0
  344. package/dist/esm/wagmi/host.native.js.map +1 -0
  345. package/dist/esm/wagmi/index.mjs +3 -0
  346. package/dist/esm/wagmi/index.mjs.map +1 -0
  347. package/dist/esm/wagmi/index.native.js +3 -0
  348. package/dist/esm/wagmi/index.native.js.map +1 -0
  349. package/dist/esm/web.mjs +13 -0
  350. package/dist/esm/web.mjs.map +1 -0
  351. package/dist/jsx/bridge/base58.mjs +23 -0
  352. package/dist/jsx/bridge/base58.mjs.map +1 -0
  353. package/dist/jsx/bridge/base58.native.js +51 -0
  354. package/dist/jsx/bridge/base58.native.js.map +1 -0
  355. package/dist/jsx/bridge/core.mjs +3 -2
  356. package/dist/jsx/bridge/core.mjs.map +1 -1
  357. package/dist/jsx/bridge/core.native.js +5 -1
  358. package/dist/jsx/bridge/core.native.js.map +1 -1
  359. package/dist/jsx/bridge/drivers.mjs +113 -0
  360. package/dist/jsx/bridge/drivers.mjs.map +1 -0
  361. package/dist/jsx/bridge/drivers.native.js +161 -0
  362. package/dist/jsx/bridge/drivers.native.js.map +1 -0
  363. package/dist/jsx/bridge/nativeHost.mjs +50 -11
  364. package/dist/jsx/bridge/nativeHost.mjs.map +1 -1
  365. package/dist/jsx/bridge/nativeHost.native.js +56 -9
  366. package/dist/jsx/bridge/nativeHost.native.js.map +1 -1
  367. package/dist/jsx/clients/adapter.mjs.map +1 -1
  368. package/dist/jsx/clients/adapter.native.js.map +1 -1
  369. package/dist/jsx/clients/connector.mjs.map +1 -1
  370. package/dist/jsx/clients/connector.native.js.map +1 -1
  371. package/dist/jsx/clients/evm.mjs +1 -0
  372. package/dist/jsx/clients/evm.mjs.map +1 -1
  373. package/dist/jsx/clients/evm.native.js +1 -0
  374. package/dist/jsx/clients/evm.native.js.map +1 -1
  375. package/dist/jsx/clients/evmRead.mjs +78 -0
  376. package/dist/jsx/clients/evmRead.mjs.map +1 -0
  377. package/dist/jsx/clients/evmRead.native.js +124 -0
  378. package/dist/jsx/clients/evmRead.native.js.map +1 -0
  379. package/dist/jsx/clients/hooks.mjs +38 -9
  380. package/dist/jsx/clients/hooks.mjs.map +1 -1
  381. package/dist/jsx/clients/hooks.native.js +43 -5
  382. package/dist/jsx/clients/hooks.native.js.map +1 -1
  383. package/dist/jsx/clients/index.mjs +4 -3
  384. package/dist/jsx/clients/index.mjs.map +1 -1
  385. package/dist/jsx/clients/index.native.js +5 -0
  386. package/dist/jsx/clients/index.native.js.map +1 -1
  387. package/dist/jsx/clients/types.mjs +7 -1
  388. package/dist/jsx/clients/types.mjs.map +1 -1
  389. package/dist/jsx/clients/types.native.js +14 -0
  390. package/dist/jsx/clients/types.native.js.map +1 -1
  391. package/dist/jsx/connectkit/adapters/BitcoinAdapter.mjs +44 -2
  392. package/dist/jsx/connectkit/adapters/BitcoinAdapter.mjs.map +1 -1
  393. package/dist/jsx/connectkit/adapters/BitcoinAdapter.native.js +73 -5
  394. package/dist/jsx/connectkit/adapters/BitcoinAdapter.native.js.map +1 -1
  395. package/dist/jsx/connectkit/adapters/SolanaAdapter.mjs +46 -0
  396. package/dist/jsx/connectkit/adapters/SolanaAdapter.mjs.map +1 -1
  397. package/dist/jsx/connectkit/adapters/SolanaAdapter.native.js +55 -0
  398. package/dist/jsx/connectkit/adapters/SolanaAdapter.native.js.map +1 -1
  399. package/dist/jsx/connectkit/adapters/SuiAdapter.mjs +40 -0
  400. package/dist/jsx/connectkit/adapters/SuiAdapter.mjs.map +1 -1
  401. package/dist/jsx/connectkit/adapters/SuiAdapter.native.js +50 -0
  402. package/dist/jsx/connectkit/adapters/SuiAdapter.native.js.map +1 -1
  403. package/dist/jsx/connectkit/connectors/ensureWalletConnectors.mjs +4 -1
  404. package/dist/jsx/connectkit/connectors/ensureWalletConnectors.mjs.map +1 -1
  405. package/dist/jsx/connectkit/connectors/ensureWalletConnectors.native.js +8 -1
  406. package/dist/jsx/connectkit/connectors/ensureWalletConnectors.native.js.map +1 -1
  407. package/dist/jsx/connectkit/connectors/getWalletConnectors.mjs.map +1 -1
  408. package/dist/jsx/connectkit/connectors/getWalletConnectors.native.js.map +1 -1
  409. package/dist/jsx/connectkit/connectors/syntheticChains.mjs.map +1 -1
  410. package/dist/jsx/connectkit/connectors/syntheticChains.native.js.map +1 -1
  411. package/dist/jsx/connectkit/connectors/walletAdapterConnector.mjs.map +1 -1
  412. package/dist/jsx/connectkit/connectors/walletAdapterConnector.native.js.map +1 -1
  413. package/dist/jsx/connectkit/defaultConfig.mjs +6 -3
  414. package/dist/jsx/connectkit/defaultConfig.mjs.map +1 -1
  415. package/dist/jsx/connectkit/defaultConfig.native.js +9 -2
  416. package/dist/jsx/connectkit/defaultConfig.native.js.map +1 -1
  417. package/dist/jsx/connectkit/siwe/SIWEContext.mjs.map +1 -1
  418. package/dist/jsx/connectkit/siwe/SIWEContext.native.js.map +1 -1
  419. package/dist/jsx/connectkit/siwe/SIWEProvider.mjs +6 -4
  420. package/dist/jsx/connectkit/siwe/SIWEProvider.mjs.map +1 -1
  421. package/dist/jsx/connectkit/siwe/SIWEProvider.native.js +8 -4
  422. package/dist/jsx/connectkit/siwe/SIWEProvider.native.js.map +1 -1
  423. package/dist/jsx/connectkit/siwe/connectIntent.mjs +54 -16
  424. package/dist/jsx/connectkit/siwe/connectIntent.mjs.map +1 -1
  425. package/dist/jsx/connectkit/siwe/connectIntent.native.js +100 -16
  426. package/dist/jsx/connectkit/siwe/connectIntent.native.js.map +1 -1
  427. package/dist/jsx/connectkit/siwe/useSIWE.mjs.map +1 -1
  428. package/dist/jsx/connectkit/siwe/useSIWE.native.js.map +1 -1
  429. package/dist/jsx/connectkit/web3Bridge.mjs +61 -16
  430. package/dist/jsx/connectkit/web3Bridge.mjs.map +1 -1
  431. package/dist/jsx/connectkit/web3Bridge.native.js +64 -14
  432. package/dist/jsx/connectkit/web3Bridge.native.js.map +1 -1
  433. package/dist/jsx/core/family.mjs +79 -0
  434. package/dist/jsx/core/family.mjs.map +1 -0
  435. package/dist/jsx/core/family.native.js +132 -0
  436. package/dist/jsx/core/family.native.js.map +1 -0
  437. package/dist/jsx/core/index.mjs +9 -0
  438. package/dist/jsx/core/index.mjs.map +1 -0
  439. package/dist/jsx/core/index.native.js +53 -0
  440. package/dist/jsx/core/index.native.js.map +1 -0
  441. package/dist/jsx/core/lightDriver.mjs +157 -0
  442. package/dist/jsx/core/lightDriver.mjs.map +1 -0
  443. package/dist/jsx/core/lightDriver.native.js +260 -0
  444. package/dist/jsx/core/lightDriver.native.js.map +1 -0
  445. package/dist/jsx/core/message.mjs +63 -0
  446. package/dist/jsx/core/message.mjs.map +1 -0
  447. package/dist/jsx/core/message.native.js +104 -0
  448. package/dist/jsx/core/message.native.js.map +1 -0
  449. package/dist/jsx/core/names.mjs +25 -0
  450. package/dist/jsx/core/names.mjs.map +1 -0
  451. package/dist/jsx/core/names.native.js +95 -0
  452. package/dist/jsx/core/names.native.js.map +1 -0
  453. package/dist/jsx/core/react.mjs +30 -0
  454. package/dist/jsx/core/react.mjs.map +1 -0
  455. package/dist/jsx/core/react.native.js +67 -0
  456. package/dist/jsx/core/react.native.js.map +1 -0
  457. package/dist/jsx/core/signIn.mjs +173 -0
  458. package/dist/jsx/core/signIn.mjs.map +1 -0
  459. package/dist/jsx/core/signIn.native.js +240 -0
  460. package/dist/jsx/core/signIn.native.js.map +1 -0
  461. package/dist/jsx/core/store.mjs +469 -0
  462. package/dist/jsx/core/store.mjs.map +1 -0
  463. package/dist/jsx/core/store.native.js +684 -0
  464. package/dist/jsx/core/store.native.js.map +1 -0
  465. package/dist/jsx/core/types.mjs +2 -0
  466. package/dist/jsx/core/types.mjs.map +1 -0
  467. package/dist/jsx/core/types.native.js +21 -0
  468. package/dist/jsx/core/types.native.js.map +1 -0
  469. package/dist/jsx/families/btc.mjs +19 -0
  470. package/dist/jsx/families/btc.mjs.map +1 -0
  471. package/dist/jsx/families/btc.native.js +49 -0
  472. package/dist/jsx/families/btc.native.js.map +1 -0
  473. package/dist/jsx/families/eth.mjs +32 -0
  474. package/dist/jsx/families/eth.mjs.map +1 -0
  475. package/dist/jsx/families/eth.native.js +61 -0
  476. package/dist/jsx/families/eth.native.js.map +1 -0
  477. package/dist/jsx/families/gpg.mjs +15 -0
  478. package/dist/jsx/families/gpg.mjs.map +1 -0
  479. package/dist/jsx/families/gpg.native.js +43 -0
  480. package/dist/jsx/families/gpg.native.js.map +1 -0
  481. package/dist/jsx/families/host.mjs +12 -0
  482. package/dist/jsx/families/host.mjs.map +1 -0
  483. package/dist/jsx/families/host.native.js +41 -0
  484. package/dist/jsx/families/host.native.js.map +1 -0
  485. package/dist/jsx/families/index.mjs +23 -0
  486. package/dist/jsx/families/index.mjs.map +1 -0
  487. package/dist/jsx/families/index.native.js +56 -0
  488. package/dist/jsx/families/index.native.js.map +1 -0
  489. package/dist/jsx/families/messages.mjs +32 -0
  490. package/dist/jsx/families/messages.mjs.map +1 -0
  491. package/dist/jsx/families/messages.native.js +66 -0
  492. package/dist/jsx/families/messages.native.js.map +1 -0
  493. package/dist/jsx/families/sol.mjs +30 -0
  494. package/dist/jsx/families/sol.mjs.map +1 -0
  495. package/dist/jsx/families/sol.native.js +64 -0
  496. package/dist/jsx/families/sol.native.js.map +1 -0
  497. package/dist/jsx/families/sui.mjs +23 -0
  498. package/dist/jsx/families/sui.mjs.map +1 -0
  499. package/dist/jsx/families/sui.native.js +53 -0
  500. package/dist/jsx/families/sui.native.js.map +1 -0
  501. package/dist/jsx/index.js +7 -3
  502. package/dist/jsx/index.js.map +1 -1
  503. package/dist/jsx/index.mjs +7 -3
  504. package/dist/jsx/index.mjs.map +1 -1
  505. package/dist/jsx/index.native.js +22 -1
  506. package/dist/jsx/index.native.js.map +1 -1
  507. package/dist/jsx/keycloak/keycloakWallet.mjs +13 -0
  508. package/dist/jsx/keycloak/keycloakWallet.mjs.map +1 -1
  509. package/dist/jsx/keycloak/keycloakWallet.native.js +15 -0
  510. package/dist/jsx/keycloak/keycloakWallet.native.js.map +1 -1
  511. package/dist/jsx/keycloak/useDirectLogin.mjs +10 -5
  512. package/dist/jsx/keycloak/useDirectLogin.mjs.map +1 -1
  513. package/dist/jsx/keycloak/useDirectLogin.native.js +12 -5
  514. package/dist/jsx/keycloak/useDirectLogin.native.js.map +1 -1
  515. package/dist/jsx/keycloak/useWalletLogin.mjs +16 -8
  516. package/dist/jsx/keycloak/useWalletLogin.mjs.map +1 -1
  517. package/dist/jsx/light/drivers.mjs +46 -0
  518. package/dist/jsx/light/drivers.mjs.map +1 -0
  519. package/dist/jsx/light/drivers.native.js +97 -0
  520. package/dist/jsx/light/drivers.native.js.map +1 -0
  521. package/dist/jsx/light/index.mjs +3 -0
  522. package/dist/jsx/light/index.mjs.map +1 -0
  523. package/dist/jsx/light/index.native.js +33 -0
  524. package/dist/jsx/light/index.native.js.map +1 -0
  525. package/dist/jsx/providers/WalletProvider.mjs +60 -19
  526. package/dist/jsx/providers/WalletProvider.mjs.map +1 -1
  527. package/dist/jsx/providers/WalletProvider.native.js +99 -56
  528. package/dist/jsx/providers/WalletProvider.native.js.map +1 -1
  529. package/dist/jsx/providers/families.mjs +27 -0
  530. package/dist/jsx/providers/families.mjs.map +1 -0
  531. package/dist/jsx/providers/families.native.js +59 -0
  532. package/dist/jsx/providers/families.native.js.map +1 -0
  533. package/dist/jsx/providers/index.mjs +2 -2
  534. package/dist/jsx/providers/index.mjs.map +1 -1
  535. package/dist/jsx/providers/index.native.js +1 -0
  536. package/dist/jsx/providers/index.native.js.map +1 -1
  537. package/dist/jsx/providers/walletConfig.mjs +40 -1
  538. package/dist/jsx/providers/walletConfig.mjs.map +1 -1
  539. package/dist/jsx/providers/walletConfig.native.js +68 -0
  540. package/dist/jsx/providers/walletConfig.native.js.map +1 -1
  541. package/dist/jsx/wagmi/driver.mjs +232 -0
  542. package/dist/jsx/wagmi/driver.mjs.map +1 -0
  543. package/dist/jsx/wagmi/driver.native.js +331 -0
  544. package/dist/jsx/wagmi/driver.native.js.map +1 -0
  545. package/dist/jsx/wagmi/host.mjs +213 -0
  546. package/dist/jsx/wagmi/host.mjs.map +1 -0
  547. package/dist/jsx/wagmi/host.native.js +320 -0
  548. package/dist/jsx/wagmi/host.native.js.map +1 -0
  549. package/dist/jsx/wagmi/index.mjs +3 -0
  550. package/dist/jsx/wagmi/index.mjs.map +1 -0
  551. package/dist/jsx/wagmi/index.native.js +31 -0
  552. package/dist/jsx/wagmi/index.native.js.map +1 -0
  553. package/dist/jsx/web.mjs +13 -0
  554. package/dist/jsx/web.mjs.map +1 -0
  555. package/dist/keycloak/login.iife.js +449 -443
  556. package/docs/bridge-protocol.md +41 -14
  557. package/package.json +13 -6
  558. package/src/bridge/base58.spec.ts +18 -0
  559. package/src/bridge/base58.ts +25 -0
  560. package/src/bridge/core.ts +2 -0
  561. package/src/bridge/drivers.spec.ts +283 -0
  562. package/src/bridge/drivers.ts +155 -0
  563. package/src/bridge/index.spec.ts +3 -0
  564. package/src/bridge/nativeHost.spec.ts +139 -15
  565. package/src/bridge/nativeHost.ts +84 -14
  566. package/src/bundler/metaMaskConnectTimeouts.spec.ts +3 -0
  567. package/src/clients/adapter.ts +5 -1
  568. package/src/clients/connector.ts +2 -0
  569. package/src/clients/evm.spec.ts +8 -0
  570. package/src/clients/evm.ts +3 -0
  571. package/src/clients/evmRead.spec.ts +180 -0
  572. package/src/clients/evmRead.ts +140 -0
  573. package/src/clients/hooks.spec.tsx +58 -0
  574. package/src/clients/hooks.ts +73 -14
  575. package/src/clients/index.ts +11 -1
  576. package/src/clients/types.ts +15 -1
  577. package/src/clients/useEvmReadClient.spec.tsx +93 -0
  578. package/src/connectkit/adapters/BitcoinAdapter.ts +64 -4
  579. package/src/connectkit/adapters/SolanaAdapter.ts +49 -0
  580. package/src/connectkit/adapters/SuiAdapter.ts +47 -1
  581. package/src/connectkit/connectors/ensureWalletConnectors.ts +10 -1
  582. package/src/connectkit/connectors/getWalletConnectors.ts +2 -0
  583. package/src/connectkit/connectors/syntheticChains.ts +8 -0
  584. package/src/connectkit/connectors/walletAdapterConnector.ts +2 -0
  585. package/src/connectkit/defaultConfig.ts +21 -7
  586. package/src/connectkit/siwe/SIWEContext.tsx +3 -0
  587. package/src/connectkit/siwe/SIWEProvider.spec.tsx +109 -0
  588. package/src/connectkit/siwe/SIWEProvider.tsx +16 -7
  589. package/src/connectkit/siwe/connectIntent.spec.ts +100 -30
  590. package/src/connectkit/siwe/connectIntent.ts +99 -25
  591. package/src/connectkit/siwe/useSIWE.ts +4 -1
  592. package/src/connectkit/web3Bridge.tsx +75 -15
  593. package/src/core/family.spec.ts +136 -0
  594. package/src/core/family.ts +146 -0
  595. package/src/core/imports.spec.ts +82 -0
  596. package/src/core/index.ts +70 -0
  597. package/src/core/lightDriver.spec.ts +284 -0
  598. package/src/core/lightDriver.ts +235 -0
  599. package/src/core/message.spec.ts +178 -0
  600. package/src/core/message.ts +119 -0
  601. package/src/core/names.ts +29 -0
  602. package/src/core/react.spec.tsx +75 -0
  603. package/src/core/react.ts +52 -0
  604. package/src/core/signIn.spec.tsx +305 -0
  605. package/src/core/signIn.ts +282 -0
  606. package/src/core/store.spec.ts +973 -0
  607. package/src/core/store.ts +609 -0
  608. package/src/core/types.ts +110 -0
  609. package/src/families/btc.ts +16 -0
  610. package/src/families/eth.ts +35 -0
  611. package/src/families/families.spec.ts +180 -0
  612. package/src/families/gpg.ts +13 -0
  613. package/src/families/host.ts +34 -0
  614. package/src/families/index.ts +32 -0
  615. package/src/families/messages.ts +39 -0
  616. package/src/families/sol.ts +25 -0
  617. package/src/families/sui.ts +17 -0
  618. package/src/index.ts +42 -1
  619. package/src/keycloak/KeycloakWalletLogin.spec.tsx +211 -4
  620. package/src/keycloak/keycloakWallet.spec.ts +81 -1
  621. package/src/keycloak/keycloakWallet.ts +24 -2
  622. package/src/keycloak/useDirectLogin.spec.tsx +77 -4
  623. package/src/keycloak/useDirectLogin.ts +23 -11
  624. package/src/keycloak/useWalletLogin.spec.tsx +52 -0
  625. package/src/keycloak/useWalletLogin.ts +24 -6
  626. package/src/light/drivers.spec.ts +330 -0
  627. package/src/light/drivers.ts +54 -0
  628. package/src/light/index.ts +1 -0
  629. package/src/light/native.spec.ts +22 -0
  630. package/src/providers/WalletProvider.native.spec.tsx +288 -0
  631. package/src/providers/WalletProvider.native.tsx +132 -59
  632. package/src/providers/WalletProvider.spec.tsx +521 -0
  633. package/src/providers/WalletProvider.tsx +90 -19
  634. package/src/providers/families.tsx +39 -0
  635. package/src/providers/index.ts +3 -0
  636. package/src/providers/walletConfig.spec.ts +19 -1
  637. package/src/providers/walletConfig.ts +80 -2
  638. package/src/wagmi/driver.spec.ts +407 -0
  639. package/src/wagmi/driver.ts +303 -0
  640. package/src/wagmi/host.spec.tsx +416 -0
  641. package/src/wagmi/host.tsx +260 -0
  642. package/src/wagmi/index.ts +1 -0
  643. package/src/web.spec.ts +58 -0
  644. package/src/web.ts +82 -0
  645. package/types/bridge/base58.d.ts +2 -0
  646. package/types/bridge/base58.d.ts.map +1 -0
  647. package/types/bridge/core.d.ts +2 -1
  648. package/types/bridge/core.d.ts.map +1 -1
  649. package/types/bridge/drivers.d.ts +24 -0
  650. package/types/bridge/drivers.d.ts.map +1 -0
  651. package/types/bridge/nativeHost.d.ts +34 -4
  652. package/types/bridge/nativeHost.d.ts.map +1 -1
  653. package/types/clients/adapter.d.ts +5 -1
  654. package/types/clients/adapter.d.ts.map +1 -1
  655. package/types/clients/connector.d.ts +2 -0
  656. package/types/clients/connector.d.ts.map +1 -1
  657. package/types/clients/evm.d.ts +2 -0
  658. package/types/clients/evm.d.ts.map +1 -1
  659. package/types/clients/evmRead.d.ts +54 -0
  660. package/types/clients/evmRead.d.ts.map +1 -0
  661. package/types/clients/hooks.d.ts +23 -3
  662. package/types/clients/hooks.d.ts.map +1 -1
  663. package/types/clients/index.d.ts +4 -2
  664. package/types/clients/index.d.ts.map +1 -1
  665. package/types/clients/types.d.ts +11 -1
  666. package/types/clients/types.d.ts.map +1 -1
  667. package/types/connectkit/adapters/BitcoinAdapter.d.ts +9 -0
  668. package/types/connectkit/adapters/BitcoinAdapter.d.ts.map +1 -1
  669. package/types/connectkit/adapters/SolanaAdapter.d.ts +12 -0
  670. package/types/connectkit/adapters/SolanaAdapter.d.ts.map +1 -1
  671. package/types/connectkit/adapters/SuiAdapter.d.ts +8 -0
  672. package/types/connectkit/adapters/SuiAdapter.d.ts.map +1 -1
  673. package/types/connectkit/connectors/ensureWalletConnectors.d.ts +3 -0
  674. package/types/connectkit/connectors/ensureWalletConnectors.d.ts.map +1 -1
  675. package/types/connectkit/connectors/getWalletConnectors.d.ts +2 -0
  676. package/types/connectkit/connectors/getWalletConnectors.d.ts.map +1 -1
  677. package/types/connectkit/connectors/syntheticChains.d.ts +8 -0
  678. package/types/connectkit/connectors/syntheticChains.d.ts.map +1 -1
  679. package/types/connectkit/connectors/walletAdapterConnector.d.ts +2 -0
  680. package/types/connectkit/connectors/walletAdapterConnector.d.ts.map +1 -1
  681. package/types/connectkit/defaultConfig.d.ts +2 -1
  682. package/types/connectkit/defaultConfig.d.ts.map +1 -1
  683. package/types/connectkit/siwe/SIWEContext.d.ts.map +1 -1
  684. package/types/connectkit/siwe/SIWEProvider.d.ts +6 -0
  685. package/types/connectkit/siwe/SIWEProvider.d.ts.map +1 -1
  686. package/types/connectkit/siwe/connectIntent.d.ts +16 -5
  687. package/types/connectkit/siwe/connectIntent.d.ts.map +1 -1
  688. package/types/connectkit/siwe/useSIWE.d.ts +4 -0
  689. package/types/connectkit/siwe/useSIWE.d.ts.map +1 -1
  690. package/types/connectkit/web3Bridge.d.ts +2 -0
  691. package/types/connectkit/web3Bridge.d.ts.map +1 -1
  692. package/types/core/family.d.ts +70 -0
  693. package/types/core/family.d.ts.map +1 -0
  694. package/types/core/index.d.ts +9 -0
  695. package/types/core/index.d.ts.map +1 -0
  696. package/types/core/lightDriver.d.ts +52 -0
  697. package/types/core/lightDriver.d.ts.map +1 -0
  698. package/types/core/message.d.ts +44 -0
  699. package/types/core/message.d.ts.map +1 -0
  700. package/types/core/names.d.ts +7 -0
  701. package/types/core/names.d.ts.map +1 -0
  702. package/types/core/react.d.ts +18 -0
  703. package/types/core/react.d.ts.map +1 -0
  704. package/types/core/signIn.d.ts +85 -0
  705. package/types/core/signIn.d.ts.map +1 -0
  706. package/types/core/store.d.ts +73 -0
  707. package/types/core/store.d.ts.map +1 -0
  708. package/types/core/types.d.ts +101 -0
  709. package/types/core/types.d.ts.map +1 -0
  710. package/types/families/btc.d.ts +4 -0
  711. package/types/families/btc.d.ts.map +1 -0
  712. package/types/families/eth.d.ts +13 -0
  713. package/types/families/eth.d.ts.map +1 -0
  714. package/types/families/gpg.d.ts +4 -0
  715. package/types/families/gpg.d.ts.map +1 -0
  716. package/types/families/host.d.ts +24 -0
  717. package/types/families/host.d.ts.map +1 -0
  718. package/types/families/index.d.ts +14 -0
  719. package/types/families/index.d.ts.map +1 -0
  720. package/types/families/messages.d.ts +7 -0
  721. package/types/families/messages.d.ts.map +1 -0
  722. package/types/families/sol.d.ts +9 -0
  723. package/types/families/sol.d.ts.map +1 -0
  724. package/types/families/sui.d.ts +4 -0
  725. package/types/families/sui.d.ts.map +1 -0
  726. package/types/index.d.ts +6 -2
  727. package/types/index.d.ts.map +1 -1
  728. package/types/keycloak/keycloakWallet.d.ts +15 -2
  729. package/types/keycloak/keycloakWallet.d.ts.map +1 -1
  730. package/types/keycloak/useDirectLogin.d.ts +11 -6
  731. package/types/keycloak/useDirectLogin.d.ts.map +1 -1
  732. package/types/keycloak/useWalletLogin.d.ts +8 -1
  733. package/types/keycloak/useWalletLogin.d.ts.map +1 -1
  734. package/types/light/drivers.d.ts +13 -0
  735. package/types/light/drivers.d.ts.map +1 -0
  736. package/types/light/index.d.ts +2 -0
  737. package/types/light/index.d.ts.map +1 -0
  738. package/types/providers/WalletProvider.d.ts +37 -6
  739. package/types/providers/WalletProvider.d.ts.map +1 -1
  740. package/types/providers/WalletProvider.native.d.ts +32 -3
  741. package/types/providers/WalletProvider.native.d.ts.map +1 -1
  742. package/types/providers/families.d.ts +12 -0
  743. package/types/providers/families.d.ts.map +1 -0
  744. package/types/providers/index.d.ts +1 -1
  745. package/types/providers/index.d.ts.map +1 -1
  746. package/types/providers/walletConfig.d.ts +32 -2
  747. package/types/providers/walletConfig.d.ts.map +1 -1
  748. package/types/wagmi/driver.d.ts +44 -0
  749. package/types/wagmi/driver.d.ts.map +1 -0
  750. package/types/wagmi/host.d.ts +31 -0
  751. package/types/wagmi/host.d.ts.map +1 -0
  752. package/types/wagmi/index.d.ts +2 -0
  753. package/types/wagmi/index.d.ts.map +1 -0
  754. package/types/web.d.ts +13 -0
  755. package/types/web.d.ts.map +1 -0
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all) __defProp(target, name, {
9
+ get: all[name],
10
+ enumerable: true
11
+ });
12
+ };
13
+ var __copyProps = (to, from, except, desc) => {
14
+ if (from && typeof from === "object" || typeof from === "function") {
15
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
16
+ get: () => from[key],
17
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
18
+ });
19
+ }
20
+ return to;
21
+ };
22
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
23
+ value: true
24
+ }), mod);
25
+ var react_exports = {};
26
+ __export(react_exports, {
27
+ ConnectionProvider: () => ConnectionProvider,
28
+ useConnection: () => useConnection,
29
+ useConnectionStore: () => useConnectionStore,
30
+ useOptionalConnection: () => useOptionalConnection,
31
+ useOptionalConnectionStore: () => useOptionalConnectionStore
32
+ });
33
+ module.exports = __toCommonJS(react_exports);
34
+ var import_react = require("react");
35
+ var ConnectionStoreContext = (0, import_react.createContext)(null);
36
+ function ConnectionProvider(param) {
37
+ var {
38
+ store,
39
+ children
40
+ } = param;
41
+ return (0, import_react.createElement)(ConnectionStoreContext.Provider, {
42
+ value: store
43
+ }, children);
44
+ }
45
+ function useConnectionStore() {
46
+ var store = (0, import_react.useContext)(ConnectionStoreContext);
47
+ if (!store) throw new Error("useConnectionStore needs a ConnectionProvider above it");
48
+ return store;
49
+ }
50
+ function useOptionalConnectionStore() {
51
+ return (0, import_react.useContext)(ConnectionStoreContext);
52
+ }
53
+ function useConnection() {
54
+ var store = useConnectionStore();
55
+ return (0, import_react.useSyncExternalStore)(store.subscribe, store.getState, store.getState);
56
+ }
57
+ var unsubscribed = function unsubscribed2() {
58
+ return function () {};
59
+ };
60
+ var absent = function absent2() {
61
+ return null;
62
+ };
63
+ function useOptionalConnection() {
64
+ var store = useOptionalConnectionStore();
65
+ return (0, import_react.useSyncExternalStore)(store ? store.subscribe : unsubscribed, store ? store.getState : absent, store ? store.getState : absent);
66
+ }
67
+ //# sourceMappingURL=react.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","react_exports","ConnectionProvider","useConnection","useConnectionStore","useOptionalConnection","useOptionalConnectionStore","module","exports","import_react","require","ConnectionStoreContext","createContext","param","store","children","createElement","Provider"],"sources":["../../../src/core/react.ts"],"sourcesContent":[null],"mappings":"AAAA;;AAAA,IACEA,SAAA,GAAAC,MAAA,CAAAC,cAAA;AAAA,IACAC,gBAAA,GAAAF,MAAA,CAAAG,wBAAA;AAAA,IACAC,iBAAA,GAAAJ,MAAA,CAAAK,mBAAA;AAAA,IACAC,YAAA,GAAAN,MAAA,CAAAO,SAAA,CAAAC,cAAA;AAAA,IAAAC,QAEK,GAAAA,CAAAC,MAAA,EAAAC,GAAA;EAIP,KAAM,IAAAC,IAAA,IAAAD,GAAA,EAQCZ,SAAS,CAAAW,MAAA,EAAAE,IAAA,EAAmB;IAAEC,GAAA,EAAAF,GAAO,CAAAC,IAAA;IAASE,UAA4B;EAAA;AAC/E;AACF,IAAAC,WAAA,GAAAA,CAAAC,EAAA,EAAAC,IAAA,EAAAC,MAAA,EAAAC,IAAA;EAGO,IAAAF,IAAS,WAAAA,IAAA,KAAsC,mBAAAA,IAAA;IACpD,KAAM,IAAAG,GAAQ,IAAAhB,iBAAW,CAAAa,IAAA,GACrB,IAAC,CAAAX,YAAa,CAAIe,IAAA,CAAAL,EAAM,EAAAI,GAAA,KAAAA,GAAA,KAAAF,MAAA,EAC5BnB,SAAO,CAAAiB,EAAA,EAAAI,GAAA;MAAAP,GAAA,EAAAA,CAAA,KAAAI,IAAA,CAAAG,GAAA;MAAAN,UAAA,IAAAK,IAAA,GAAAjB,gBAAA,CAAAe,IAAA,EAAAG,GAAA,MAAAD,IAAA,CAAAL;IAAA;EACT;EAGO,OAASE,EAAA;AACd;AACF,IAAAM,YAAA,GAAAC,GAAA,IAAAR,WAAA,CAAAhB,SAAA;EAAAyB,KAAA;AAAA,IAAAD,GAAA;AAGO,IAAAE,aAAS;AACdhB,QAAM,CAAAgB,aAAQ;EACdC,kBAAO,EAAAA,CAAA,KAAAA,kBAA2B;EACpCC,aAAA,EAAAA,CAAA,KAAAA,aAAA;EAEAC,kBAAM,EAAeA,CAAA,KAAMA,kBAAM;EAACC,qBAAA,EAAAA,CAAA,KAAAA,qBAAA;EAClCC,0BAAqB,EAAAA,CAAA,KAAAA;AAGd;AACLC,MAAA,CAAAC,OAAM,GAAQV,YAAA,CAAAG,aAA2B;AACzC,IAAAQ,YAAO,GAAAC,OAAA;AAAA,IACLC,sBAAc,IAAY,GAAAF,YAAA,CAAAG,aAAA;AAAA,SAC1BV,kBAAcA,CAAAW,KAAW;EAAA,IACzB;IAAAC,KAAQ;IAAAC;EAAM,IAAAF,KAAW;EAC3B,WAAAJ,YAAA,CAAAO,aAAA,EAAAL,sBAAA,CAAAM,QAAA;IACFjB,KAAA,EAAAc","ignoreList":[]}
@@ -0,0 +1,173 @@
1
+ import { createContext, createElement, useCallback, useContext, useEffect, useMemo, useRef, useState } from "react";
2
+ import { useOptionalConnectionStore } from "./react.mjs";
3
+ const alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
4
+ function utf8Base64(text) {
5
+ const bytes = new TextEncoder().encode(text);
6
+ let out = "";
7
+ for (let i = 0; i < bytes.length; i += 3) {
8
+ const b0 = bytes[i];
9
+ const b1 = i + 1 < bytes.length ? bytes[i + 1] : 0;
10
+ const b2 = i + 2 < bytes.length ? bytes[i + 2] : 0;
11
+ out += alphabet[b0 >> 2];
12
+ out += alphabet[(b0 & 3) << 4 | b1 >> 4];
13
+ out += i + 1 < bytes.length ? alphabet[(b1 & 15) << 2 | b2 >> 6] : "=";
14
+ out += i + 2 < bytes.length ? alphabet[b2 & 63] : "=";
15
+ }
16
+ return out;
17
+ }
18
+ function isRejection(error) {
19
+ for (let e = error, depth = 0; e && typeof e === "object" && depth < 4; depth += 1) {
20
+ const code = e.code;
21
+ if (code === 4001 || code === -32e3 || code === "ACTION_REJECTED") return true;
22
+ e = e.cause;
23
+ }
24
+ return false;
25
+ }
26
+ const clientTimeout = 1e4;
27
+ function signable(store) {
28
+ const ready = state => state.status === "connected" && !!state.family && !!state.address && !!state.client;
29
+ const first = store.getState();
30
+ if (ready(first)) return Promise.resolve(first);
31
+ if (first.status !== "connected" || !first.family || !first.address) {
32
+ return Promise.reject(new Error("sign-in needs a connected wallet"));
33
+ }
34
+ const {
35
+ family,
36
+ address
37
+ } = first;
38
+ const noClient = () => new Error(`the ${family} connection has no client to sign with`);
39
+ const same = state => state.status === "connected" && state.family === family && state.address === address;
40
+ return new Promise((resolve, reject) => {
41
+ let done = false;
42
+ const finish = settle => {
43
+ if (done) return;
44
+ done = true;
45
+ clearTimeout(timer);
46
+ stop();
47
+ settle();
48
+ };
49
+ const timer = setTimeout(() => finish(() => reject(noClient())), clientTimeout);
50
+ const stop = store.subscribe(() => {
51
+ const state = store.getState();
52
+ if (ready(state) && same(state)) finish(() => resolve(state));else if (!same(state)) {
53
+ finish(() => reject(new Error("the wallet connection changed during sign-in")));
54
+ }
55
+ });
56
+ store.client().then(client => {
57
+ const state = store.getState();
58
+ if (!same(state)) {
59
+ finish(() => reject(new Error("the wallet connection changed during sign-in")));
60
+ } else if (client) finish(() => resolve({
61
+ ...state,
62
+ client
63
+ }));else finish(() => reject(noClient()));
64
+ }, error => finish(() => reject(error)));
65
+ });
66
+ }
67
+ async function signInWithConnection(store, config) {
68
+ const {
69
+ family,
70
+ address,
71
+ chainId,
72
+ client
73
+ } = await signable(store);
74
+ const nonce = await config.getNonce();
75
+ if (!nonce) throw new Error("sign-in: the nonce is empty");
76
+ const message = config.createMessage ? await config.createMessage({
77
+ family,
78
+ address,
79
+ chainId,
80
+ nonce
81
+ }) : store.registry.messages.build(family, {
82
+ address,
83
+ nonce,
84
+ ...(chainId === null ? {} : {
85
+ chainId
86
+ }),
87
+ domain: config.domain,
88
+ uri: config.uri,
89
+ ...(config.statement === void 0 ? {} : {
90
+ statement: config.statement
91
+ })
92
+ });
93
+ const now = store.getState();
94
+ if (now.status !== "connected" || now.family !== family || now.address !== address) {
95
+ throw new Error("the wallet connection changed during sign-in");
96
+ }
97
+ const signature = await client.signMessage(message);
98
+ const credential = {
99
+ username: signature,
100
+ password: utf8Base64(message),
101
+ message
102
+ };
103
+ if ((await config.onSign(credential)) === false) throw new Error("Sign-in was rejected");
104
+ return credential;
105
+ }
106
+ const SignInContext = createContext(null);
107
+ function SignInProvider({
108
+ children,
109
+ ...config
110
+ }) {
111
+ const store = useOptionalConnectionStore();
112
+ if (!store) {
113
+ throw new Error("SignInProvider needs a Web3Provider or ConnectionProvider above it");
114
+ }
115
+ const [status, setStatus] = useState("ready");
116
+ const [error, setError] = useState(null);
117
+ const configRef = useRef(config);
118
+ configRef.current = config;
119
+ const running = useRef(null);
120
+ const prefetch = useCallback(() => {
121
+ configRef.current.getNonce().catch(() => void 0);
122
+ }, []);
123
+ useEffect(prefetch, [prefetch]);
124
+ const {
125
+ subscribeNonceReset
126
+ } = config;
127
+ useEffect(() => subscribeNonceReset?.(prefetch), [subscribeNonceReset, prefetch]);
128
+ const signIn = useCallback(() => {
129
+ if (running.current) return running.current;
130
+ setStatus("loading");
131
+ setError(null);
132
+ const attempt = signInWithConnection(store, configRef.current).then(() => {
133
+ setStatus("success");
134
+ return true;
135
+ }, e => {
136
+ setError(e);
137
+ setStatus(isRejection(e) ? "rejected" : "error");
138
+ return false;
139
+ });
140
+ const settled = attempt.finally(() => {
141
+ if (running.current === settled) running.current = null;
142
+ });
143
+ running.current = settled;
144
+ return settled;
145
+ }, [store]);
146
+ const reset = useCallback(() => {
147
+ setStatus("ready");
148
+ setError(null);
149
+ }, []);
150
+ const {
151
+ onSign
152
+ } = config;
153
+ const value = useMemo(() => ({
154
+ status,
155
+ error,
156
+ signIn,
157
+ reset,
158
+ onSign
159
+ }), [status, error, signIn, reset, onSign]);
160
+ return createElement(SignInContext.Provider, {
161
+ value
162
+ }, children);
163
+ }
164
+ function useSignIn() {
165
+ const value = useContext(SignInContext);
166
+ if (!value) throw new Error("useSignIn needs a SignInProvider above it");
167
+ return value;
168
+ }
169
+ function useOptionalSignIn() {
170
+ return useContext(SignInContext);
171
+ }
172
+ export { SignInProvider, signInWithConnection, useOptionalSignIn, useSignIn };
173
+ //# sourceMappingURL=signIn.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createContext","createElement","useCallback","useContext","useEffect","useMemo","useRef","useState","useOptionalConnectionStore","alphabet","utf8Base64","text","bytes","TextEncoder","encode","out","i","length","b0","b1","b2","isRejection","error","e","depth","code","cause","clientTimeout","signable","store","ready","state","status","family","address","client","first","getState","Promise","resolve","reject","Error","noClient","same","done","finish","settle","clearTimeout","timer","stop","setTimeout","subscribe","then","signInWithConnection","config","chainId","nonce","getNonce","message","createMessage","registry","messages","build","domain","uri","statement","now","signature","signMessage","credential","username","password","onSign","SignInContext","SignInProvider","children","setStatus","setError","configRef","current","running","prefetch","catch","subscribeNonceReset","signIn","attempt","settled","finally","reset","value","Provider","useSignIn","useOptionalSignIn"],"sources":["../../../src/core/signIn.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,240 @@
1
+ "use strict";
2
+
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all) __defProp(target, name, {
9
+ get: all[name],
10
+ enumerable: true
11
+ });
12
+ };
13
+ var __copyProps = (to, from, except, desc) => {
14
+ if (from && typeof from === "object" || typeof from === "function") {
15
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
16
+ get: () => from[key],
17
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
18
+ });
19
+ }
20
+ return to;
21
+ };
22
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
23
+ value: true
24
+ }), mod);
25
+ var signIn_exports = {};
26
+ __export(signIn_exports, {
27
+ SignInProvider: () => SignInProvider,
28
+ signInWithConnection: () => signInWithConnection,
29
+ useOptionalSignIn: () => useOptionalSignIn,
30
+ useSignIn: () => useSignIn
31
+ });
32
+ module.exports = __toCommonJS(signIn_exports);
33
+ var import_react = require("react");
34
+ var import_react2 = require("./react.native.js");
35
+ function _type_of(obj) {
36
+ "@swc/helpers - typeof";
37
+
38
+ return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
39
+ }
40
+ var alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
41
+ function utf8Base64(text) {
42
+ var bytes = new TextEncoder().encode(text);
43
+ var out = "";
44
+ for (var i = 0; i < bytes.length; i += 3) {
45
+ var b0 = bytes[i];
46
+ var b1 = i + 1 < bytes.length ? bytes[i + 1] : 0;
47
+ var b2 = i + 2 < bytes.length ? bytes[i + 2] : 0;
48
+ out += alphabet[b0 >> 2];
49
+ out += alphabet[(b0 & 3) << 4 | b1 >> 4];
50
+ out += i + 1 < bytes.length ? alphabet[(b1 & 15) << 2 | b2 >> 6] : "=";
51
+ out += i + 2 < bytes.length ? alphabet[b2 & 63] : "=";
52
+ }
53
+ return out;
54
+ }
55
+ function isRejection(error) {
56
+ for (var e = error, depth = 0; e && (typeof e === "undefined" ? "undefined" : _type_of(e)) === "object" && depth < 4; depth += 1) {
57
+ var code = e.code;
58
+ if (code === 4001 || code === -32e3 || code === "ACTION_REJECTED") return true;
59
+ e = e.cause;
60
+ }
61
+ return false;
62
+ }
63
+ var clientTimeout = 1e4;
64
+ function signable(store) {
65
+ var ready = function ready2(state) {
66
+ return state.status === "connected" && !!state.family && !!state.address && !!state.client;
67
+ };
68
+ var first = store.getState();
69
+ if (ready(first)) return Promise.resolve(first);
70
+ if (first.status !== "connected" || !first.family || !first.address) {
71
+ return Promise.reject(new Error("sign-in needs a connected wallet"));
72
+ }
73
+ var {
74
+ family,
75
+ address
76
+ } = first;
77
+ var noClient = function noClient2() {
78
+ return new Error(`the ${family} connection has no client to sign with`);
79
+ };
80
+ var same = function same2(state) {
81
+ return state.status === "connected" && state.family === family && state.address === address;
82
+ };
83
+ return new Promise(function (resolve, reject) {
84
+ var done = false;
85
+ var finish = function finish2(settle) {
86
+ if (done) return;
87
+ done = true;
88
+ clearTimeout(timer);
89
+ stop();
90
+ settle();
91
+ };
92
+ var timer = setTimeout(function () {
93
+ return finish(function () {
94
+ return reject(noClient());
95
+ });
96
+ }, clientTimeout);
97
+ var stop = store.subscribe(function () {
98
+ var state = store.getState();
99
+ if (ready(state) && same(state)) finish(function () {
100
+ return resolve(state);
101
+ });else if (!same(state)) {
102
+ finish(function () {
103
+ return reject(new Error("the wallet connection changed during sign-in"));
104
+ });
105
+ }
106
+ });
107
+ store.client().then(function (client) {
108
+ var state = store.getState();
109
+ if (!same(state)) {
110
+ finish(function () {
111
+ return reject(new Error("the wallet connection changed during sign-in"));
112
+ });
113
+ } else if (client) finish(function () {
114
+ return resolve({
115
+ ...state,
116
+ client
117
+ });
118
+ });else finish(function () {
119
+ return reject(noClient());
120
+ });
121
+ }, function (error) {
122
+ return finish(function () {
123
+ return reject(error);
124
+ });
125
+ });
126
+ });
127
+ }
128
+ async function signInWithConnection(store, config) {
129
+ var {
130
+ family,
131
+ address,
132
+ chainId,
133
+ client
134
+ } = await signable(store);
135
+ var nonce = await config.getNonce();
136
+ if (!nonce) throw new Error("sign-in: the nonce is empty");
137
+ var message = config.createMessage ? await config.createMessage({
138
+ family,
139
+ address,
140
+ chainId,
141
+ nonce
142
+ }) : store.registry.messages.build(family, {
143
+ address,
144
+ nonce,
145
+ ...(chainId === null ? {} : {
146
+ chainId
147
+ }),
148
+ domain: config.domain,
149
+ uri: config.uri,
150
+ ...(config.statement === void 0 ? {} : {
151
+ statement: config.statement
152
+ })
153
+ });
154
+ var now = store.getState();
155
+ if (now.status !== "connected" || now.family !== family || now.address !== address) {
156
+ throw new Error("the wallet connection changed during sign-in");
157
+ }
158
+ var signature = await client.signMessage(message);
159
+ var credential = {
160
+ username: signature,
161
+ password: utf8Base64(message),
162
+ message
163
+ };
164
+ if ((await config.onSign(credential)) === false) throw new Error("Sign-in was rejected");
165
+ return credential;
166
+ }
167
+ var SignInContext = (0, import_react.createContext)(null);
168
+ function SignInProvider(param) {
169
+ var {
170
+ children,
171
+ ...config
172
+ } = param;
173
+ var store = (0, import_react2.useOptionalConnectionStore)();
174
+ if (!store) {
175
+ throw new Error("SignInProvider needs a Web3Provider or ConnectionProvider above it");
176
+ }
177
+ var [status, setStatus] = (0, import_react.useState)("ready");
178
+ var [error, setError] = (0, import_react.useState)(null);
179
+ var configRef = (0, import_react.useRef)(config);
180
+ configRef.current = config;
181
+ var running = (0, import_react.useRef)(null);
182
+ var prefetch = (0, import_react.useCallback)(function () {
183
+ configRef.current.getNonce().catch(function () {
184
+ return void 0;
185
+ });
186
+ }, []);
187
+ (0, import_react.useEffect)(prefetch, [prefetch]);
188
+ var {
189
+ subscribeNonceReset
190
+ } = config;
191
+ (0, import_react.useEffect)(function () {
192
+ return subscribeNonceReset === null || subscribeNonceReset === void 0 ? void 0 : subscribeNonceReset(prefetch);
193
+ }, [subscribeNonceReset, prefetch]);
194
+ var signIn = (0, import_react.useCallback)(function () {
195
+ if (running.current) return running.current;
196
+ setStatus("loading");
197
+ setError(null);
198
+ var attempt = signInWithConnection(store, configRef.current).then(function () {
199
+ setStatus("success");
200
+ return true;
201
+ }, function (e) {
202
+ setError(e);
203
+ setStatus(isRejection(e) ? "rejected" : "error");
204
+ return false;
205
+ });
206
+ var settled = attempt.finally(function () {
207
+ if (running.current === settled) running.current = null;
208
+ });
209
+ running.current = settled;
210
+ return settled;
211
+ }, [store]);
212
+ var reset = (0, import_react.useCallback)(function () {
213
+ setStatus("ready");
214
+ setError(null);
215
+ }, []);
216
+ var {
217
+ onSign
218
+ } = config;
219
+ var value = (0, import_react.useMemo)(function () {
220
+ return {
221
+ status,
222
+ error,
223
+ signIn,
224
+ reset,
225
+ onSign
226
+ };
227
+ }, [status, error, signIn, reset, onSign]);
228
+ return (0, import_react.createElement)(SignInContext.Provider, {
229
+ value
230
+ }, children);
231
+ }
232
+ function useSignIn() {
233
+ var value = (0, import_react.useContext)(SignInContext);
234
+ if (!value) throw new Error("useSignIn needs a SignInProvider above it");
235
+ return value;
236
+ }
237
+ function useOptionalSignIn() {
238
+ return (0, import_react.useContext)(SignInContext);
239
+ }
240
+ //# sourceMappingURL=signIn.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","signIn_exports","SignInProvider","signInWithConnection","useOptionalSignIn","useSignIn","module","exports","import_react","require","import_react2","_type_of","obj","Symbol","constructor","alphabet","utf8Base64","text","bytes","TextEncoder","encode","out","i","length","b0","b1","b2","isRejection","error","e","depth","code","cause","clientTimeout","signable","store","ready","ready2","state","status","family","address","client","first","getState","Promise","resolve","reject","Error","noClient","noClient2","same","same2","done","finish","finish2","settle","clearTimeout","timer","stop","setTimeout","subscribe","then","config","chainId","nonce","getNonce","message","createMessage","registry","messages","build","domain","uri","statement","now","signature","signMessage","credential","username","password","onSign","SignInContext","createContext","param","children"],"sources":["../../../src/core/signIn.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}