@multiplatform.one/web3 7.23.2 → 7.25.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 (1028) hide show
  1. package/README.md +183 -11
  2. package/dist/cjs/bridge/AuthBridge.cjs +124 -0
  3. package/dist/cjs/bridge/AuthBridge.native.js +186 -0
  4. package/dist/cjs/bridge/AuthBridge.native.js.map +1 -0
  5. package/dist/cjs/bridge/BridgeClient.cjs +12 -9
  6. package/dist/cjs/bridge/BridgeClient.native.js +17 -12
  7. package/dist/cjs/bridge/BridgeClient.native.js.map +1 -1
  8. package/dist/cjs/bridge/BridgeHost.cjs +11 -3
  9. package/dist/cjs/bridge/BridgeHost.native.js +11 -3
  10. package/dist/cjs/bridge/BridgeHost.native.js.map +1 -1
  11. package/dist/cjs/bridge/GpgBridge.cjs +61 -0
  12. package/dist/cjs/bridge/GpgBridge.native.js +111 -0
  13. package/dist/cjs/bridge/GpgBridge.native.js.map +1 -0
  14. package/dist/cjs/bridge/SolanaBridge.native.js.map +1 -1
  15. package/dist/cjs/bridge/SuiBridge.cjs +51 -0
  16. package/dist/cjs/bridge/SuiBridge.native.js +99 -0
  17. package/dist/cjs/bridge/SuiBridge.native.js.map +1 -0
  18. package/dist/cjs/bridge/authTypes.cjs +28 -0
  19. package/dist/cjs/bridge/authTypes.native.js +31 -0
  20. package/dist/cjs/bridge/authTypes.native.js.map +1 -0
  21. package/dist/cjs/bridge/base64.native.js.map +1 -1
  22. package/dist/cjs/bridge/bridgeConnector.native.js.map +1 -1
  23. package/dist/cjs/bridge/core.cjs +65 -0
  24. package/dist/cjs/bridge/core.native.js +68 -0
  25. package/dist/cjs/bridge/core.native.js.map +1 -0
  26. package/dist/cjs/bridge/eip1193.native.js.map +1 -1
  27. package/dist/cjs/bridge/hosting.cjs +91 -0
  28. package/dist/cjs/bridge/hosting.native.js +117 -0
  29. package/dist/cjs/bridge/hosting.native.js.map +1 -0
  30. package/dist/cjs/bridge/index.cjs +3 -17
  31. package/dist/cjs/bridge/index.native.js +2 -16
  32. package/dist/cjs/bridge/index.native.js.map +1 -1
  33. package/dist/cjs/bridge/nativeHost.cjs +91 -0
  34. package/dist/cjs/bridge/nativeHost.native.js +118 -0
  35. package/dist/cjs/bridge/nativeHost.native.js.map +1 -0
  36. package/dist/cjs/bridge/postMessageTransport.native.js.map +1 -1
  37. package/dist/cjs/bridge/protocol.cjs +30 -1
  38. package/dist/cjs/bridge/protocol.native.js +147 -1
  39. package/dist/cjs/bridge/protocol.native.js.map +1 -1
  40. package/dist/cjs/bridge/transport.native.js.map +1 -1
  41. package/dist/cjs/bundler/metaMaskConnectTimeouts.native.js.map +1 -1
  42. package/dist/cjs/clients/adapter.native.js.map +1 -1
  43. package/dist/cjs/clients/bitcoin.native.js.map +1 -1
  44. package/dist/cjs/clients/connector.native.js.map +1 -1
  45. package/dist/cjs/clients/evm.cjs +299 -11
  46. package/dist/cjs/clients/evm.native.js +500 -12
  47. package/dist/cjs/clients/evm.native.js.map +1 -1
  48. package/dist/cjs/clients/gpg.native.js.map +1 -1
  49. package/dist/cjs/clients/hooks.native.js.map +1 -1
  50. package/dist/cjs/clients/index.cjs +5 -0
  51. package/dist/cjs/clients/index.native.js +5 -0
  52. package/dist/cjs/clients/index.native.js.map +1 -1
  53. package/dist/cjs/clients/solana.cjs +39 -21
  54. package/dist/cjs/clients/solana.native.js +48 -23
  55. package/dist/cjs/clients/solana.native.js.map +1 -1
  56. package/dist/cjs/clients/solanaMessage.native.js.map +1 -1
  57. package/dist/cjs/clients/sui.native.js.map +1 -1
  58. package/dist/cjs/clients/types.native.js.map +1 -1
  59. package/dist/cjs/clients/useSolanaClient.native.js.map +1 -1
  60. package/dist/cjs/clients/walletStandard.native.js.map +1 -1
  61. package/dist/cjs/components/NetworkSwitcher.native.js.map +1 -1
  62. package/dist/cjs/components/TransactionStatus.native.js.map +1 -1
  63. package/dist/cjs/components/index.native.js.map +1 -1
  64. package/dist/cjs/connectkit/GpgProvider.cjs +44 -0
  65. package/dist/cjs/connectkit/GpgProvider.native.js +51 -0
  66. package/dist/cjs/connectkit/GpgProvider.native.js.map +1 -0
  67. package/dist/cjs/connectkit/adapters/BitcoinAdapter.cjs +5 -14
  68. package/dist/cjs/connectkit/adapters/BitcoinAdapter.native.js +5 -15
  69. package/dist/cjs/connectkit/adapters/BitcoinAdapter.native.js.map +1 -1
  70. package/dist/cjs/connectkit/adapters/EthereumAdapter.cjs +6 -15
  71. package/dist/cjs/connectkit/adapters/EthereumAdapter.native.js +7 -16
  72. package/dist/cjs/connectkit/adapters/EthereumAdapter.native.js.map +1 -1
  73. package/dist/cjs/connectkit/adapters/SolanaAdapter.cjs +5 -14
  74. package/dist/cjs/connectkit/adapters/SolanaAdapter.native.js +5 -15
  75. package/dist/cjs/connectkit/adapters/SolanaAdapter.native.js.map +1 -1
  76. package/dist/cjs/connectkit/adapters/SuiAdapter.cjs +5 -14
  77. package/dist/cjs/connectkit/adapters/SuiAdapter.native.js +5 -15
  78. package/dist/cjs/connectkit/adapters/SuiAdapter.native.js.map +1 -1
  79. package/dist/cjs/connectkit/adapters/discover.native.js.map +1 -1
  80. package/dist/cjs/connectkit/adapters/index.native.js.map +1 -1
  81. package/dist/cjs/connectkit/adapters/types.native.js.map +1 -1
  82. package/dist/cjs/connectkit/assets/chains.native.js.map +1 -1
  83. package/dist/cjs/connectkit/components/BalanceButton/index.native.js +1 -1
  84. package/dist/cjs/connectkit/components/BalanceButton/index.native.js.map +1 -1
  85. package/dist/cjs/connectkit/components/Common/Avatar/index.native.js.map +1 -1
  86. package/dist/cjs/connectkit/components/Common/Avatar/styles.native.js.map +1 -1
  87. package/dist/cjs/connectkit/components/Common/Chain/index.native.js.map +1 -1
  88. package/dist/cjs/connectkit/components/Common/Chain/styles.native.js.map +1 -1
  89. package/dist/cjs/connectkit/components/Common/ChainSelect/index.native.js +2 -2
  90. package/dist/cjs/connectkit/components/Common/ChainSelect/index.native.js.map +1 -1
  91. package/dist/cjs/connectkit/components/Common/ChainSelectDropdown/index.native.js +1 -1
  92. package/dist/cjs/connectkit/components/Common/ChainSelectDropdown/index.native.js.map +1 -1
  93. package/dist/cjs/connectkit/components/Common/ChainSelectDropdown/styles.native.js.map +1 -1
  94. package/dist/cjs/connectkit/components/Common/ChainSelectList/index.native.js.map +1 -1
  95. package/dist/cjs/connectkit/components/Common/ChainSelectList/styles.native.js.map +1 -1
  96. package/dist/cjs/connectkit/components/Common/ConnectorList/index.native.js.map +1 -1
  97. package/dist/cjs/connectkit/components/Common/ConnectorList/styles.native.js.map +1 -1
  98. package/dist/cjs/connectkit/components/ConnectButton/index.native.js +4 -4
  99. package/dist/cjs/connectkit/components/ConnectButton/index.native.js.map +1 -1
  100. package/dist/cjs/connectkit/components/ConnectButton/styles.native.js.map +1 -1
  101. package/dist/cjs/connectkit/components/ConnectModal/ConnectUsing.native.js +1 -1
  102. package/dist/cjs/connectkit/components/ConnectModal/ConnectUsing.native.js.map +1 -1
  103. package/dist/cjs/connectkit/components/ConnectModal/ConnectWithInjector/CircleSpinner/index.native.js.map +1 -1
  104. package/dist/cjs/connectkit/components/ConnectModal/ConnectWithInjector/CircleSpinner/styles.native.js.map +1 -1
  105. package/dist/cjs/connectkit/components/ConnectModal/ConnectWithInjector/SquircleSpinner/index.native.js.map +1 -1
  106. package/dist/cjs/connectkit/components/ConnectModal/ConnectWithInjector/SquircleSpinner/styles.native.js.map +1 -1
  107. package/dist/cjs/connectkit/components/ConnectModal/ConnectWithInjector/index.native.js +3 -3
  108. package/dist/cjs/connectkit/components/ConnectModal/ConnectWithInjector/index.native.js.map +1 -1
  109. package/dist/cjs/connectkit/components/ConnectModal/ConnectWithInjector/styles.native.js.map +1 -1
  110. package/dist/cjs/connectkit/components/ConnectModal/demo.native.js +9 -9
  111. package/dist/cjs/connectkit/components/ConnectModal/demo.native.js.map +1 -1
  112. package/dist/cjs/connectkit/components/NetworkButton/index.native.js +2 -2
  113. package/dist/cjs/connectkit/components/NetworkButton/index.native.js.map +1 -1
  114. package/dist/cjs/connectkit/components/Pages/About/graphics.native.js.map +1 -1
  115. package/dist/cjs/connectkit/components/Pages/About/index.native.js.map +1 -1
  116. package/dist/cjs/connectkit/components/Pages/About/styles.native.js.map +1 -1
  117. package/dist/cjs/connectkit/components/Pages/Connectors/index.native.js +1 -1
  118. package/dist/cjs/connectkit/components/Pages/Connectors/index.native.js.map +1 -1
  119. package/dist/cjs/connectkit/components/Pages/Connectors/styles.native.js.map +1 -1
  120. package/dist/cjs/connectkit/components/Pages/DownloadApp/index.native.js.map +1 -1
  121. package/dist/cjs/connectkit/components/Pages/Onboarding/index.native.js.map +1 -1
  122. package/dist/cjs/connectkit/components/Pages/Onboarding/styles.native.js.map +1 -1
  123. package/dist/cjs/connectkit/components/Pages/Profile/index.native.js +2 -2
  124. package/dist/cjs/connectkit/components/Pages/Profile/index.native.js.map +1 -1
  125. package/dist/cjs/connectkit/components/Pages/Profile/styles.native.js.map +1 -1
  126. package/dist/cjs/connectkit/components/Pages/SignInWithEthereum/index.native.js +3 -3
  127. package/dist/cjs/connectkit/components/Pages/SignInWithEthereum/index.native.js.map +1 -1
  128. package/dist/cjs/connectkit/components/Pages/SignInWithEthereum/styles.native.js.map +1 -1
  129. package/dist/cjs/connectkit/components/Pages/SwitchNetworks/index.native.js +1 -1
  130. package/dist/cjs/connectkit/components/Pages/SwitchNetworks/index.native.js.map +1 -1
  131. package/dist/cjs/connectkit/components/Standard/SIWE/index.native.js +1 -1
  132. package/dist/cjs/connectkit/components/Standard/SIWE/index.native.js.map +1 -1
  133. package/dist/cjs/connectkit/components/Standard/SIWE/styles.native.js.map +1 -1
  134. package/dist/cjs/connectkit/components/contexts/web3/index.native.js.map +1 -1
  135. package/dist/cjs/connectkit/connectors/aaveAccountConnector.native.js.map +1 -1
  136. package/dist/cjs/connectkit/connectors/createWalletMessage.cjs +2 -2
  137. package/dist/cjs/connectkit/connectors/createWalletMessage.native.js +2 -2
  138. package/dist/cjs/connectkit/connectors/createWalletMessage.native.js.map +1 -1
  139. package/dist/cjs/connectkit/connectors/embeddedDesktop.native.js.map +1 -1
  140. package/dist/cjs/connectkit/connectors/ensureWalletConnectors.native.js.map +1 -1
  141. package/dist/cjs/connectkit/connectors/getWalletConnectors.native.js.map +1 -1
  142. package/dist/cjs/connectkit/connectors/metaMaskConnectConnector.native.js.map +1 -1
  143. package/dist/cjs/connectkit/connectors/syntheticChains.native.js.map +1 -1
  144. package/dist/cjs/connectkit/connectors/walletAdapterConnector.native.js.map +1 -1
  145. package/dist/cjs/connectkit/constants/chainConfigs.native.js.map +1 -1
  146. package/dist/cjs/connectkit/defaultConfig.native.js.map +1 -1
  147. package/dist/cjs/connectkit/defaultConnectors.native.js.map +1 -1
  148. package/dist/cjs/connectkit/defaultTransports.native.js.map +1 -1
  149. package/dist/cjs/connectkit/hooks/useChainIsSupported.native.js.map +1 -1
  150. package/dist/cjs/connectkit/hooks/useChains.native.js.map +1 -1
  151. package/dist/cjs/connectkit/hooks/useConnect.native.js.map +1 -1
  152. package/dist/cjs/connectkit/hooks/useConnectCallback.native.js.map +1 -1
  153. package/dist/cjs/connectkit/hooks/useConnectors.native.js.map +1 -1
  154. package/dist/cjs/connectkit/hooks/useEnsFallbackConfig.native.js.map +1 -1
  155. package/dist/cjs/connectkit/hooks/useLastConnector.native.js.map +1 -1
  156. package/dist/cjs/connectkit/index.cjs +4 -3
  157. package/dist/cjs/connectkit/index.native.js +12 -11
  158. package/dist/cjs/connectkit/index.native.js.map +1 -1
  159. package/dist/cjs/connectkit/openConnector/context.native.js.map +1 -1
  160. package/dist/cjs/connectkit/openConnector/device.native.js.map +1 -1
  161. package/dist/cjs/connectkit/openConnector/index.native.js.map +1 -1
  162. package/dist/cjs/connectkit/openConnector/launcher.native.js.map +1 -1
  163. package/dist/cjs/connectkit/profileHeaderAction.native.js +1 -1
  164. package/dist/cjs/connectkit/profileHeaderAction.native.js.map +1 -1
  165. package/dist/cjs/connectkit/screens.native.js +7 -7
  166. package/dist/cjs/connectkit/screens.native.js.map +1 -1
  167. package/dist/cjs/connectkit/siwe/SIWEContext.native.js.map +1 -1
  168. package/dist/cjs/connectkit/siwe/SIWEProvider.cjs +18 -3
  169. package/dist/cjs/connectkit/siwe/SIWEProvider.native.js +18 -3
  170. package/dist/cjs/connectkit/siwe/SIWEProvider.native.js.map +1 -1
  171. package/dist/cjs/connectkit/siwe/connectIntent.native.js.map +1 -1
  172. package/dist/cjs/connectkit/siwe/index.native.js.map +1 -1
  173. package/dist/cjs/connectkit/siwe/useSIWE.native.js.map +1 -1
  174. package/dist/cjs/connectkit/useWeb3Modal.native.js +2 -2
  175. package/dist/cjs/connectkit/useWeb3Modal.native.js.map +1 -1
  176. package/dist/cjs/connectkit/wallets/index.native.js.map +1 -1
  177. package/dist/cjs/connectkit/wallets/useWallets.native.js.map +1 -1
  178. package/dist/cjs/connectkit/wallets/walletConfigs.native.js.map +1 -1
  179. package/dist/cjs/connectkit/web3Bridge.native.js +2 -2
  180. package/dist/cjs/connectkit/web3Bridge.native.js.map +1 -1
  181. package/dist/cjs/connectkit/web3Provider.native.js.map +1 -1
  182. package/dist/cjs/esbuild.native.js.map +1 -1
  183. package/dist/cjs/examples/LockContract.native.js.map +1 -1
  184. package/dist/cjs/examples/index.native.js.map +1 -1
  185. package/dist/cjs/hooks/index.native.js.map +1 -1
  186. package/dist/cjs/hooks/useContractRead.native.js.map +1 -1
  187. package/dist/cjs/hooks/useContractWrite.native.js.map +1 -1
  188. package/dist/cjs/hooks/useWallet.native.js.map +1 -1
  189. package/dist/cjs/index.cjs +2 -0
  190. package/dist/cjs/index.native.js +8 -6
  191. package/dist/cjs/index.native.js.map +1 -1
  192. package/dist/cjs/keycloak/KeycloakWalletLogin.cjs +255 -0
  193. package/dist/cjs/keycloak/KeycloakWalletLogin.native.js +33 -0
  194. package/dist/cjs/keycloak/KeycloakWalletLogin.native.js.map +1 -0
  195. package/dist/cjs/keycloak/browserFlow.cjs +83 -0
  196. package/dist/cjs/keycloak/browserFlow.native.js +90 -0
  197. package/dist/cjs/keycloak/browserFlow.native.js.map +1 -0
  198. package/dist/cjs/keycloak/device.cjs +36 -0
  199. package/dist/cjs/keycloak/device.native.js +45 -0
  200. package/dist/cjs/keycloak/device.native.js.map +1 -0
  201. package/dist/cjs/keycloak/directGrant.cjs +189 -0
  202. package/dist/cjs/keycloak/directGrant.native.js +233 -0
  203. package/dist/cjs/keycloak/directGrant.native.js.map +1 -0
  204. package/dist/cjs/keycloak/iife.cjs +4 -0
  205. package/dist/cjs/keycloak/iife.native.js +7 -0
  206. package/dist/cjs/keycloak/iife.native.js.map +1 -0
  207. package/dist/cjs/keycloak/index.cjs +53 -0
  208. package/dist/cjs/keycloak/index.native.js +56 -0
  209. package/dist/cjs/keycloak/index.native.js.map +1 -0
  210. package/dist/cjs/keycloak/keycloakWallet.cjs +214 -0
  211. package/dist/cjs/keycloak/keycloakWallet.native.js +285 -0
  212. package/dist/cjs/keycloak/keycloakWallet.native.js.map +1 -0
  213. package/dist/cjs/keycloak/mount.cjs +53 -0
  214. package/dist/cjs/keycloak/mount.native.js +33 -0
  215. package/dist/cjs/keycloak/mount.native.js.map +1 -0
  216. package/dist/cjs/keycloak/registerWallet.cjs +74 -0
  217. package/dist/cjs/keycloak/registerWallet.native.js +81 -0
  218. package/dist/cjs/keycloak/registerWallet.native.js.map +1 -0
  219. package/dist/cjs/keycloak/types.cjs +46 -0
  220. package/dist/cjs/keycloak/types.native.js +179 -0
  221. package/dist/cjs/keycloak/types.native.js.map +1 -0
  222. package/dist/cjs/keycloak/useDirectLogin.cjs +57 -0
  223. package/dist/cjs/keycloak/useDirectLogin.native.js +77 -0
  224. package/dist/cjs/keycloak/useDirectLogin.native.js.map +1 -0
  225. package/dist/cjs/keycloak/useWalletLogin.cjs +97 -0
  226. package/dist/cjs/keycloak/useWalletLogin.native.js +33 -0
  227. package/dist/cjs/keycloak/useWalletLogin.native.js.map +1 -0
  228. package/dist/cjs/message/buildWalletMessage.cjs +113 -0
  229. package/dist/cjs/message/buildWalletMessage.native.js +121 -0
  230. package/dist/cjs/message/buildWalletMessage.native.js.map +1 -0
  231. package/dist/cjs/message/index.cjs +29 -0
  232. package/dist/cjs/message/index.native.js +32 -0
  233. package/dist/cjs/message/index.native.js.map +1 -0
  234. package/dist/cjs/providers/WalletProvider.cjs +10 -2
  235. package/dist/cjs/providers/WalletProvider.native.js +123 -90
  236. package/dist/cjs/providers/WalletProvider.native.js.map +1 -1
  237. package/dist/cjs/providers/index.cjs +1 -0
  238. package/dist/cjs/providers/index.native.js +1 -0
  239. package/dist/cjs/providers/index.native.js.map +1 -1
  240. package/dist/cjs/providers/mockConnector.native.js.map +1 -1
  241. package/dist/cjs/providers/native/deepLink.cjs +40 -23
  242. package/dist/cjs/providers/native/deepLink.native.js +43 -25
  243. package/dist/cjs/providers/native/deepLink.native.js.map +1 -1
  244. package/dist/cjs/providers/native/inject.cjs +2 -4
  245. package/dist/cjs/providers/native/inject.native.js +2 -4
  246. package/dist/cjs/providers/native/inject.native.js.map +1 -1
  247. package/dist/cjs/providers/native/visibility.native.js.map +1 -1
  248. package/dist/cjs/providers/walletBridge.cjs +35 -0
  249. package/dist/cjs/providers/walletBridge.native.js +38 -0
  250. package/dist/cjs/providers/walletBridge.native.js.map +1 -0
  251. package/dist/cjs/providers/walletConfig.native.js.map +1 -1
  252. package/dist/cjs/siws/index.native.js.map +1 -1
  253. package/dist/cjs/siws/message.cjs +5 -16
  254. package/dist/cjs/siws/message.native.js +6 -16
  255. package/dist/cjs/siws/message.native.js.map +1 -1
  256. package/dist/cjs/siws/signWithBridge.native.js.map +1 -1
  257. package/dist/cjs/siws/verify.native.js.map +1 -1
  258. package/dist/cjs/solana.native.js.map +1 -1
  259. package/dist/cjs/vite.native.js.map +1 -1
  260. package/dist/esm/bridge/AuthBridge.mjs +99 -0
  261. package/dist/esm/bridge/AuthBridge.mjs.map +1 -0
  262. package/dist/esm/bridge/AuthBridge.native.js +158 -0
  263. package/dist/esm/bridge/AuthBridge.native.js.map +1 -0
  264. package/dist/esm/bridge/BridgeClient.mjs +13 -10
  265. package/dist/esm/bridge/BridgeClient.mjs.map +1 -1
  266. package/dist/esm/bridge/BridgeClient.native.js +18 -13
  267. package/dist/esm/bridge/BridgeClient.native.js.map +1 -1
  268. package/dist/esm/bridge/BridgeHost.mjs +12 -4
  269. package/dist/esm/bridge/BridgeHost.mjs.map +1 -1
  270. package/dist/esm/bridge/BridgeHost.native.js +12 -4
  271. package/dist/esm/bridge/BridgeHost.native.js.map +1 -1
  272. package/dist/esm/bridge/GpgBridge.mjs +36 -0
  273. package/dist/esm/bridge/GpgBridge.mjs.map +1 -0
  274. package/dist/esm/bridge/GpgBridge.native.js +83 -0
  275. package/dist/esm/bridge/GpgBridge.native.js.map +1 -0
  276. package/dist/esm/bridge/SolanaBridge.native.js.map +1 -1
  277. package/dist/esm/bridge/SuiBridge.mjs +26 -0
  278. package/dist/esm/bridge/SuiBridge.mjs.map +1 -0
  279. package/dist/esm/bridge/SuiBridge.native.js +71 -0
  280. package/dist/esm/bridge/SuiBridge.native.js.map +1 -0
  281. package/dist/esm/bridge/authTypes.mjs +3 -0
  282. package/dist/esm/bridge/authTypes.mjs.map +1 -0
  283. package/dist/esm/bridge/authTypes.native.js +3 -0
  284. package/dist/esm/bridge/authTypes.native.js.map +1 -0
  285. package/dist/esm/bridge/base64.native.js.map +1 -1
  286. package/dist/esm/bridge/bridgeConnector.native.js.map +1 -1
  287. package/dist/esm/bridge/core.mjs +17 -0
  288. package/dist/esm/bridge/core.mjs.map +1 -0
  289. package/dist/esm/bridge/core.native.js +17 -0
  290. package/dist/esm/bridge/core.native.js.map +1 -0
  291. package/dist/esm/bridge/eip1193.native.js.map +1 -1
  292. package/dist/esm/bridge/hosting.mjs +62 -0
  293. package/dist/esm/bridge/hosting.mjs.map +1 -0
  294. package/dist/esm/bridge/hosting.native.js +85 -0
  295. package/dist/esm/bridge/hosting.native.js.map +1 -0
  296. package/dist/esm/bridge/index.mjs +2 -9
  297. package/dist/esm/bridge/index.mjs.map +1 -1
  298. package/dist/esm/bridge/index.native.js +2 -9
  299. package/dist/esm/bridge/index.native.js.map +1 -1
  300. package/dist/esm/bridge/nativeHost.mjs +65 -0
  301. package/dist/esm/bridge/nativeHost.mjs.map +1 -0
  302. package/dist/esm/bridge/nativeHost.native.js +89 -0
  303. package/dist/esm/bridge/nativeHost.native.js.map +1 -0
  304. package/dist/esm/bridge/postMessageTransport.native.js.map +1 -1
  305. package/dist/esm/bridge/protocol.mjs +28 -2
  306. package/dist/esm/bridge/protocol.mjs.map +1 -1
  307. package/dist/esm/bridge/protocol.native.js +145 -2
  308. package/dist/esm/bridge/protocol.native.js.map +1 -1
  309. package/dist/esm/bridge/transport.native.js.map +1 -1
  310. package/dist/esm/bundler/metaMaskConnectTimeouts.native.js.map +1 -1
  311. package/dist/esm/clients/adapter.native.js.map +1 -1
  312. package/dist/esm/clients/bitcoin.native.js.map +1 -1
  313. package/dist/esm/clients/connector.native.js.map +1 -1
  314. package/dist/esm/clients/evm.mjs +295 -12
  315. package/dist/esm/clients/evm.mjs.map +1 -1
  316. package/dist/esm/clients/evm.native.js +496 -13
  317. package/dist/esm/clients/evm.native.js.map +1 -1
  318. package/dist/esm/clients/gpg.native.js.map +1 -1
  319. package/dist/esm/clients/hooks.native.js.map +1 -1
  320. package/dist/esm/clients/index.mjs +2 -2
  321. package/dist/esm/clients/index.mjs.map +1 -1
  322. package/dist/esm/clients/index.native.js +2 -2
  323. package/dist/esm/clients/index.native.js.map +1 -1
  324. package/dist/esm/clients/solana.mjs +39 -21
  325. package/dist/esm/clients/solana.mjs.map +1 -1
  326. package/dist/esm/clients/solana.native.js +48 -23
  327. package/dist/esm/clients/solana.native.js.map +1 -1
  328. package/dist/esm/clients/solanaMessage.native.js.map +1 -1
  329. package/dist/esm/clients/sui.native.js.map +1 -1
  330. package/dist/esm/clients/types.native.js.map +1 -1
  331. package/dist/esm/clients/useSolanaClient.native.js.map +1 -1
  332. package/dist/esm/clients/walletStandard.native.js.map +1 -1
  333. package/dist/esm/components/NetworkSwitcher.native.js.map +1 -1
  334. package/dist/esm/components/TransactionStatus.native.js.map +1 -1
  335. package/dist/esm/components/index.native.js.map +1 -1
  336. package/dist/esm/connectkit/GpgProvider.mjs +19 -0
  337. package/dist/esm/connectkit/GpgProvider.mjs.map +1 -0
  338. package/dist/esm/connectkit/GpgProvider.native.js +23 -0
  339. package/dist/esm/connectkit/GpgProvider.native.js.map +1 -0
  340. package/dist/esm/connectkit/adapters/BitcoinAdapter.mjs +5 -14
  341. package/dist/esm/connectkit/adapters/BitcoinAdapter.mjs.map +1 -1
  342. package/dist/esm/connectkit/adapters/BitcoinAdapter.native.js +5 -15
  343. package/dist/esm/connectkit/adapters/BitcoinAdapter.native.js.map +1 -1
  344. package/dist/esm/connectkit/adapters/EthereumAdapter.mjs +6 -15
  345. package/dist/esm/connectkit/adapters/EthereumAdapter.mjs.map +1 -1
  346. package/dist/esm/connectkit/adapters/EthereumAdapter.native.js +7 -16
  347. package/dist/esm/connectkit/adapters/EthereumAdapter.native.js.map +1 -1
  348. package/dist/esm/connectkit/adapters/SolanaAdapter.mjs +5 -14
  349. package/dist/esm/connectkit/adapters/SolanaAdapter.mjs.map +1 -1
  350. package/dist/esm/connectkit/adapters/SolanaAdapter.native.js +5 -15
  351. package/dist/esm/connectkit/adapters/SolanaAdapter.native.js.map +1 -1
  352. package/dist/esm/connectkit/adapters/SuiAdapter.mjs +5 -14
  353. package/dist/esm/connectkit/adapters/SuiAdapter.mjs.map +1 -1
  354. package/dist/esm/connectkit/adapters/SuiAdapter.native.js +5 -15
  355. package/dist/esm/connectkit/adapters/SuiAdapter.native.js.map +1 -1
  356. package/dist/esm/connectkit/adapters/discover.native.js.map +1 -1
  357. package/dist/esm/connectkit/adapters/index.native.js.map +1 -1
  358. package/dist/esm/connectkit/adapters/types.native.js.map +1 -1
  359. package/dist/esm/connectkit/assets/chains.native.js.map +1 -1
  360. package/dist/esm/connectkit/components/BalanceButton/index.native.js.map +1 -1
  361. package/dist/esm/connectkit/components/Common/Avatar/index.native.js.map +1 -1
  362. package/dist/esm/connectkit/components/Common/Avatar/styles.native.js.map +1 -1
  363. package/dist/esm/connectkit/components/Common/Chain/index.native.js.map +1 -1
  364. package/dist/esm/connectkit/components/Common/Chain/styles.native.js.map +1 -1
  365. package/dist/esm/connectkit/components/Common/ChainSelect/index.native.js.map +1 -1
  366. package/dist/esm/connectkit/components/Common/ChainSelectDropdown/index.native.js.map +1 -1
  367. package/dist/esm/connectkit/components/Common/ChainSelectDropdown/styles.native.js.map +1 -1
  368. package/dist/esm/connectkit/components/Common/ChainSelectList/index.native.js.map +1 -1
  369. package/dist/esm/connectkit/components/Common/ChainSelectList/styles.native.js.map +1 -1
  370. package/dist/esm/connectkit/components/Common/ConnectorList/index.native.js.map +1 -1
  371. package/dist/esm/connectkit/components/Common/ConnectorList/styles.native.js.map +1 -1
  372. package/dist/esm/connectkit/components/ConnectButton/index.native.js.map +1 -1
  373. package/dist/esm/connectkit/components/ConnectButton/styles.native.js.map +1 -1
  374. package/dist/esm/connectkit/components/ConnectModal/ConnectUsing.native.js.map +1 -1
  375. package/dist/esm/connectkit/components/ConnectModal/ConnectWithInjector/CircleSpinner/index.native.js.map +1 -1
  376. package/dist/esm/connectkit/components/ConnectModal/ConnectWithInjector/CircleSpinner/styles.native.js.map +1 -1
  377. package/dist/esm/connectkit/components/ConnectModal/ConnectWithInjector/SquircleSpinner/index.native.js.map +1 -1
  378. package/dist/esm/connectkit/components/ConnectModal/ConnectWithInjector/SquircleSpinner/styles.native.js.map +1 -1
  379. package/dist/esm/connectkit/components/ConnectModal/ConnectWithInjector/index.native.js.map +1 -1
  380. package/dist/esm/connectkit/components/ConnectModal/ConnectWithInjector/styles.native.js.map +1 -1
  381. package/dist/esm/connectkit/components/ConnectModal/demo.native.js.map +1 -1
  382. package/dist/esm/connectkit/components/NetworkButton/index.native.js.map +1 -1
  383. package/dist/esm/connectkit/components/Pages/About/graphics.native.js.map +1 -1
  384. package/dist/esm/connectkit/components/Pages/About/index.native.js.map +1 -1
  385. package/dist/esm/connectkit/components/Pages/About/styles.native.js.map +1 -1
  386. package/dist/esm/connectkit/components/Pages/Connectors/index.native.js.map +1 -1
  387. package/dist/esm/connectkit/components/Pages/Connectors/styles.native.js.map +1 -1
  388. package/dist/esm/connectkit/components/Pages/DownloadApp/index.native.js.map +1 -1
  389. package/dist/esm/connectkit/components/Pages/Onboarding/index.native.js.map +1 -1
  390. package/dist/esm/connectkit/components/Pages/Onboarding/styles.native.js.map +1 -1
  391. package/dist/esm/connectkit/components/Pages/Profile/index.native.js.map +1 -1
  392. package/dist/esm/connectkit/components/Pages/Profile/styles.native.js.map +1 -1
  393. package/dist/esm/connectkit/components/Pages/SignInWithEthereum/index.native.js.map +1 -1
  394. package/dist/esm/connectkit/components/Pages/SignInWithEthereum/styles.native.js.map +1 -1
  395. package/dist/esm/connectkit/components/Pages/SwitchNetworks/index.native.js.map +1 -1
  396. package/dist/esm/connectkit/components/Standard/SIWE/index.native.js.map +1 -1
  397. package/dist/esm/connectkit/components/Standard/SIWE/styles.native.js.map +1 -1
  398. package/dist/esm/connectkit/components/contexts/web3/index.native.js.map +1 -1
  399. package/dist/esm/connectkit/connectors/aaveAccountConnector.native.js.map +1 -1
  400. package/dist/esm/connectkit/connectors/createWalletMessage.mjs +1 -1
  401. package/dist/esm/connectkit/connectors/createWalletMessage.native.js +1 -1
  402. package/dist/esm/connectkit/connectors/createWalletMessage.native.js.map +1 -1
  403. package/dist/esm/connectkit/connectors/embeddedDesktop.native.js.map +1 -1
  404. package/dist/esm/connectkit/connectors/ensureWalletConnectors.native.js.map +1 -1
  405. package/dist/esm/connectkit/connectors/getWalletConnectors.native.js.map +1 -1
  406. package/dist/esm/connectkit/connectors/metaMaskConnectConnector.native.js.map +1 -1
  407. package/dist/esm/connectkit/connectors/syntheticChains.native.js.map +1 -1
  408. package/dist/esm/connectkit/connectors/walletAdapterConnector.native.js.map +1 -1
  409. package/dist/esm/connectkit/constants/chainConfigs.native.js.map +1 -1
  410. package/dist/esm/connectkit/defaultConfig.native.js.map +1 -1
  411. package/dist/esm/connectkit/defaultConnectors.native.js.map +1 -1
  412. package/dist/esm/connectkit/defaultTransports.native.js.map +1 -1
  413. package/dist/esm/connectkit/hooks/useChainIsSupported.native.js.map +1 -1
  414. package/dist/esm/connectkit/hooks/useChains.native.js.map +1 -1
  415. package/dist/esm/connectkit/hooks/useConnect.native.js.map +1 -1
  416. package/dist/esm/connectkit/hooks/useConnectCallback.native.js.map +1 -1
  417. package/dist/esm/connectkit/hooks/useConnectors.native.js.map +1 -1
  418. package/dist/esm/connectkit/hooks/useEnsFallbackConfig.native.js.map +1 -1
  419. package/dist/esm/connectkit/hooks/useLastConnector.native.js.map +1 -1
  420. package/dist/esm/connectkit/index.mjs +3 -2
  421. package/dist/esm/connectkit/index.mjs.map +1 -1
  422. package/dist/esm/connectkit/index.native.js +3 -2
  423. package/dist/esm/connectkit/index.native.js.map +1 -1
  424. package/dist/esm/connectkit/openConnector/context.native.js.map +1 -1
  425. package/dist/esm/connectkit/openConnector/device.native.js.map +1 -1
  426. package/dist/esm/connectkit/openConnector/index.native.js.map +1 -1
  427. package/dist/esm/connectkit/openConnector/launcher.native.js.map +1 -1
  428. package/dist/esm/connectkit/profileHeaderAction.native.js.map +1 -1
  429. package/dist/esm/connectkit/screens.native.js.map +1 -1
  430. package/dist/esm/connectkit/siwe/SIWEContext.mjs.map +1 -1
  431. package/dist/esm/connectkit/siwe/SIWEContext.native.js.map +1 -1
  432. package/dist/esm/connectkit/siwe/SIWEProvider.mjs +19 -4
  433. package/dist/esm/connectkit/siwe/SIWEProvider.mjs.map +1 -1
  434. package/dist/esm/connectkit/siwe/SIWEProvider.native.js +19 -4
  435. package/dist/esm/connectkit/siwe/SIWEProvider.native.js.map +1 -1
  436. package/dist/esm/connectkit/siwe/connectIntent.native.js.map +1 -1
  437. package/dist/esm/connectkit/siwe/index.native.js.map +1 -1
  438. package/dist/esm/connectkit/siwe/useSIWE.native.js.map +1 -1
  439. package/dist/esm/connectkit/useWeb3Modal.native.js.map +1 -1
  440. package/dist/esm/connectkit/wallets/index.native.js.map +1 -1
  441. package/dist/esm/connectkit/wallets/useWallets.native.js.map +1 -1
  442. package/dist/esm/connectkit/wallets/walletConfigs.native.js.map +1 -1
  443. package/dist/esm/connectkit/web3Bridge.native.js.map +1 -1
  444. package/dist/esm/connectkit/web3Provider.native.js.map +1 -1
  445. package/dist/esm/esbuild.native.js.map +1 -1
  446. package/dist/esm/examples/LockContract.native.js.map +1 -1
  447. package/dist/esm/examples/index.native.js.map +1 -1
  448. package/dist/esm/hooks/index.native.js.map +1 -1
  449. package/dist/esm/hooks/useContractRead.native.js.map +1 -1
  450. package/dist/esm/hooks/useContractWrite.native.js.map +1 -1
  451. package/dist/esm/hooks/useWallet.native.js.map +1 -1
  452. package/dist/esm/index.mjs +3 -2
  453. package/dist/esm/index.mjs.map +1 -1
  454. package/dist/esm/index.native.js +3 -2
  455. package/dist/esm/index.native.js.map +1 -1
  456. package/dist/esm/keycloak/KeycloakWalletLogin.mjs +218 -0
  457. package/dist/esm/keycloak/KeycloakWalletLogin.mjs.map +1 -0
  458. package/dist/esm/keycloak/KeycloakWalletLogin.native.js +5 -0
  459. package/dist/esm/keycloak/KeycloakWalletLogin.native.js.map +1 -0
  460. package/dist/esm/keycloak/browserFlow.mjs +58 -0
  461. package/dist/esm/keycloak/browserFlow.mjs.map +1 -0
  462. package/dist/esm/keycloak/browserFlow.native.js +62 -0
  463. package/dist/esm/keycloak/browserFlow.native.js.map +1 -0
  464. package/dist/esm/keycloak/device.mjs +10 -0
  465. package/dist/esm/keycloak/device.mjs.map +1 -0
  466. package/dist/esm/keycloak/device.native.js +16 -0
  467. package/dist/esm/keycloak/device.native.js.map +1 -0
  468. package/dist/esm/keycloak/directGrant.mjs +164 -0
  469. package/dist/esm/keycloak/directGrant.mjs.map +1 -0
  470. package/dist/esm/keycloak/directGrant.native.js +205 -0
  471. package/dist/esm/keycloak/directGrant.native.js.map +1 -0
  472. package/dist/esm/keycloak/iife.mjs +5 -0
  473. package/dist/esm/keycloak/iife.mjs.map +1 -0
  474. package/dist/esm/keycloak/iife.native.js +5 -0
  475. package/dist/esm/keycloak/iife.native.js.map +1 -0
  476. package/dist/esm/keycloak/index.mjs +13 -0
  477. package/dist/esm/keycloak/index.mjs.map +1 -0
  478. package/dist/esm/keycloak/index.native.js +13 -0
  479. package/dist/esm/keycloak/index.native.js.map +1 -0
  480. package/dist/esm/keycloak/keycloakWallet.mjs +186 -0
  481. package/dist/esm/keycloak/keycloakWallet.mjs.map +1 -0
  482. package/dist/esm/keycloak/keycloakWallet.native.js +254 -0
  483. package/dist/esm/keycloak/keycloakWallet.native.js.map +1 -0
  484. package/dist/esm/keycloak/mount.mjs +28 -0
  485. package/dist/esm/keycloak/mount.mjs.map +1 -0
  486. package/dist/esm/keycloak/mount.native.js +5 -0
  487. package/dist/esm/keycloak/mount.native.js.map +1 -0
  488. package/dist/esm/keycloak/registerWallet.mjs +49 -0
  489. package/dist/esm/keycloak/registerWallet.mjs.map +1 -0
  490. package/dist/esm/keycloak/registerWallet.native.js +53 -0
  491. package/dist/esm/keycloak/registerWallet.native.js.map +1 -0
  492. package/dist/esm/keycloak/types.mjs +20 -0
  493. package/dist/esm/keycloak/types.mjs.map +1 -0
  494. package/dist/esm/keycloak/types.native.js +150 -0
  495. package/dist/esm/keycloak/types.native.js.map +1 -0
  496. package/dist/esm/keycloak/useDirectLogin.mjs +32 -0
  497. package/dist/esm/keycloak/useDirectLogin.mjs.map +1 -0
  498. package/dist/esm/keycloak/useDirectLogin.native.js +49 -0
  499. package/dist/esm/keycloak/useDirectLogin.native.js.map +1 -0
  500. package/dist/esm/keycloak/useWalletLogin.mjs +72 -0
  501. package/dist/esm/keycloak/useWalletLogin.mjs.map +1 -0
  502. package/dist/esm/keycloak/useWalletLogin.native.js +5 -0
  503. package/dist/esm/keycloak/useWalletLogin.native.js.map +1 -0
  504. package/dist/esm/message/buildWalletMessage.mjs +87 -0
  505. package/dist/esm/message/buildWalletMessage.mjs.map +1 -0
  506. package/dist/esm/message/buildWalletMessage.native.js +92 -0
  507. package/dist/esm/message/buildWalletMessage.native.js.map +1 -0
  508. package/dist/esm/message/index.mjs +3 -0
  509. package/dist/esm/message/index.mjs.map +1 -0
  510. package/dist/esm/message/index.native.js +3 -0
  511. package/dist/esm/message/index.native.js.map +1 -0
  512. package/dist/esm/providers/WalletProvider.mjs +11 -4
  513. package/dist/esm/providers/WalletProvider.mjs.map +1 -1
  514. package/dist/esm/providers/WalletProvider.native.js +125 -93
  515. package/dist/esm/providers/WalletProvider.native.js.map +1 -1
  516. package/dist/esm/providers/index.mjs +2 -2
  517. package/dist/esm/providers/index.mjs.map +1 -1
  518. package/dist/esm/providers/index.native.js +2 -2
  519. package/dist/esm/providers/index.native.js.map +1 -1
  520. package/dist/esm/providers/mockConnector.native.js.map +1 -1
  521. package/dist/esm/providers/native/deepLink.mjs +36 -24
  522. package/dist/esm/providers/native/deepLink.mjs.map +1 -1
  523. package/dist/esm/providers/native/deepLink.native.js +39 -26
  524. package/dist/esm/providers/native/deepLink.native.js.map +1 -1
  525. package/dist/esm/providers/native/inject.mjs +1 -3
  526. package/dist/esm/providers/native/inject.mjs.map +1 -1
  527. package/dist/esm/providers/native/inject.native.js +1 -3
  528. package/dist/esm/providers/native/inject.native.js.map +1 -1
  529. package/dist/esm/providers/native/visibility.native.js.map +1 -1
  530. package/dist/esm/providers/walletBridge.mjs +9 -0
  531. package/dist/esm/providers/walletBridge.mjs.map +1 -0
  532. package/dist/esm/providers/walletBridge.native.js +9 -0
  533. package/dist/esm/providers/walletBridge.native.js.map +1 -0
  534. package/dist/esm/providers/walletConfig.mjs.map +1 -1
  535. package/dist/esm/providers/walletConfig.native.js.map +1 -1
  536. package/dist/esm/siws/index.native.js.map +1 -1
  537. package/dist/esm/siws/message.mjs +5 -16
  538. package/dist/esm/siws/message.mjs.map +1 -1
  539. package/dist/esm/siws/message.native.js +6 -16
  540. package/dist/esm/siws/message.native.js.map +1 -1
  541. package/dist/esm/siws/signWithBridge.native.js.map +1 -1
  542. package/dist/esm/siws/verify.native.js.map +1 -1
  543. package/dist/esm/solana.mjs.map +1 -1
  544. package/dist/esm/solana.native.js.map +1 -1
  545. package/dist/esm/vite.native.js.map +1 -1
  546. package/dist/jsx/bridge/AuthBridge.mjs +99 -0
  547. package/dist/jsx/bridge/AuthBridge.mjs.map +1 -0
  548. package/dist/jsx/bridge/AuthBridge.native.js +186 -0
  549. package/dist/jsx/bridge/AuthBridge.native.js.map +1 -0
  550. package/dist/jsx/bridge/BridgeClient.mjs +13 -10
  551. package/dist/jsx/bridge/BridgeClient.mjs.map +1 -1
  552. package/dist/jsx/bridge/BridgeClient.native.js +17 -12
  553. package/dist/jsx/bridge/BridgeClient.native.js.map +1 -1
  554. package/dist/jsx/bridge/BridgeHost.mjs +12 -4
  555. package/dist/jsx/bridge/BridgeHost.mjs.map +1 -1
  556. package/dist/jsx/bridge/BridgeHost.native.js +11 -3
  557. package/dist/jsx/bridge/BridgeHost.native.js.map +1 -1
  558. package/dist/jsx/bridge/GpgBridge.mjs +36 -0
  559. package/dist/jsx/bridge/GpgBridge.mjs.map +1 -0
  560. package/dist/jsx/bridge/GpgBridge.native.js +111 -0
  561. package/dist/jsx/bridge/GpgBridge.native.js.map +1 -0
  562. package/dist/jsx/bridge/SolanaBridge.native.js.map +1 -1
  563. package/dist/jsx/bridge/SuiBridge.mjs +26 -0
  564. package/dist/jsx/bridge/SuiBridge.mjs.map +1 -0
  565. package/dist/jsx/bridge/SuiBridge.native.js +99 -0
  566. package/dist/jsx/bridge/SuiBridge.native.js.map +1 -0
  567. package/dist/jsx/bridge/authTypes.mjs +3 -0
  568. package/dist/jsx/bridge/authTypes.mjs.map +1 -0
  569. package/dist/jsx/bridge/authTypes.native.js +31 -0
  570. package/dist/jsx/bridge/authTypes.native.js.map +1 -0
  571. package/dist/jsx/bridge/base64.native.js.map +1 -1
  572. package/dist/jsx/bridge/bridgeConnector.native.js.map +1 -1
  573. package/dist/jsx/bridge/core.mjs +17 -0
  574. package/dist/jsx/bridge/core.mjs.map +1 -0
  575. package/dist/jsx/bridge/core.native.js +68 -0
  576. package/dist/jsx/bridge/core.native.js.map +1 -0
  577. package/dist/jsx/bridge/eip1193.native.js.map +1 -1
  578. package/dist/jsx/bridge/hosting.mjs +62 -0
  579. package/dist/jsx/bridge/hosting.mjs.map +1 -0
  580. package/dist/jsx/bridge/hosting.native.js +117 -0
  581. package/dist/jsx/bridge/hosting.native.js.map +1 -0
  582. package/dist/jsx/bridge/index.mjs +2 -9
  583. package/dist/jsx/bridge/index.mjs.map +1 -1
  584. package/dist/jsx/bridge/index.native.js +2 -16
  585. package/dist/jsx/bridge/index.native.js.map +1 -1
  586. package/dist/jsx/bridge/nativeHost.mjs +65 -0
  587. package/dist/jsx/bridge/nativeHost.mjs.map +1 -0
  588. package/dist/jsx/bridge/nativeHost.native.js +118 -0
  589. package/dist/jsx/bridge/nativeHost.native.js.map +1 -0
  590. package/dist/jsx/bridge/postMessageTransport.native.js.map +1 -1
  591. package/dist/jsx/bridge/protocol.mjs +28 -2
  592. package/dist/jsx/bridge/protocol.mjs.map +1 -1
  593. package/dist/jsx/bridge/protocol.native.js +147 -1
  594. package/dist/jsx/bridge/protocol.native.js.map +1 -1
  595. package/dist/jsx/bridge/transport.native.js.map +1 -1
  596. package/dist/jsx/bundler/metaMaskConnectTimeouts.native.js.map +1 -1
  597. package/dist/jsx/clients/adapter.native.js.map +1 -1
  598. package/dist/jsx/clients/bitcoin.native.js.map +1 -1
  599. package/dist/jsx/clients/connector.native.js.map +1 -1
  600. package/dist/jsx/clients/evm.mjs +295 -12
  601. package/dist/jsx/clients/evm.mjs.map +1 -1
  602. package/dist/jsx/clients/evm.native.js +500 -12
  603. package/dist/jsx/clients/evm.native.js.map +1 -1
  604. package/dist/jsx/clients/gpg.native.js.map +1 -1
  605. package/dist/jsx/clients/hooks.native.js.map +1 -1
  606. package/dist/jsx/clients/index.mjs +2 -2
  607. package/dist/jsx/clients/index.mjs.map +1 -1
  608. package/dist/jsx/clients/index.native.js +5 -0
  609. package/dist/jsx/clients/index.native.js.map +1 -1
  610. package/dist/jsx/clients/solana.mjs +39 -21
  611. package/dist/jsx/clients/solana.mjs.map +1 -1
  612. package/dist/jsx/clients/solana.native.js +48 -23
  613. package/dist/jsx/clients/solana.native.js.map +1 -1
  614. package/dist/jsx/clients/solanaMessage.native.js.map +1 -1
  615. package/dist/jsx/clients/sui.native.js.map +1 -1
  616. package/dist/jsx/clients/types.native.js.map +1 -1
  617. package/dist/jsx/clients/useSolanaClient.native.js.map +1 -1
  618. package/dist/jsx/clients/walletStandard.native.js.map +1 -1
  619. package/dist/jsx/components/NetworkSwitcher.native.js.map +1 -1
  620. package/dist/jsx/components/TransactionStatus.native.js.map +1 -1
  621. package/dist/jsx/components/index.native.js.map +1 -1
  622. package/dist/jsx/connectkit/GpgProvider.mjs +19 -0
  623. package/dist/jsx/connectkit/GpgProvider.mjs.map +1 -0
  624. package/dist/jsx/connectkit/GpgProvider.native.js +51 -0
  625. package/dist/jsx/connectkit/GpgProvider.native.js.map +1 -0
  626. package/dist/jsx/connectkit/adapters/BitcoinAdapter.mjs +5 -14
  627. package/dist/jsx/connectkit/adapters/BitcoinAdapter.mjs.map +1 -1
  628. package/dist/jsx/connectkit/adapters/BitcoinAdapter.native.js +5 -15
  629. package/dist/jsx/connectkit/adapters/BitcoinAdapter.native.js.map +1 -1
  630. package/dist/jsx/connectkit/adapters/EthereumAdapter.mjs +6 -15
  631. package/dist/jsx/connectkit/adapters/EthereumAdapter.mjs.map +1 -1
  632. package/dist/jsx/connectkit/adapters/EthereumAdapter.native.js +7 -16
  633. package/dist/jsx/connectkit/adapters/EthereumAdapter.native.js.map +1 -1
  634. package/dist/jsx/connectkit/adapters/SolanaAdapter.mjs +5 -14
  635. package/dist/jsx/connectkit/adapters/SolanaAdapter.mjs.map +1 -1
  636. package/dist/jsx/connectkit/adapters/SolanaAdapter.native.js +5 -15
  637. package/dist/jsx/connectkit/adapters/SolanaAdapter.native.js.map +1 -1
  638. package/dist/jsx/connectkit/adapters/SuiAdapter.mjs +5 -14
  639. package/dist/jsx/connectkit/adapters/SuiAdapter.mjs.map +1 -1
  640. package/dist/jsx/connectkit/adapters/SuiAdapter.native.js +5 -15
  641. package/dist/jsx/connectkit/adapters/SuiAdapter.native.js.map +1 -1
  642. package/dist/jsx/connectkit/adapters/discover.native.js.map +1 -1
  643. package/dist/jsx/connectkit/adapters/index.native.js.map +1 -1
  644. package/dist/jsx/connectkit/adapters/types.native.js.map +1 -1
  645. package/dist/jsx/connectkit/assets/chains.native.js.map +1 -1
  646. package/dist/jsx/connectkit/components/BalanceButton/index.native.js +1 -1
  647. package/dist/jsx/connectkit/components/BalanceButton/index.native.js.map +1 -1
  648. package/dist/jsx/connectkit/components/Common/Avatar/index.native.js.map +1 -1
  649. package/dist/jsx/connectkit/components/Common/Avatar/styles.native.js.map +1 -1
  650. package/dist/jsx/connectkit/components/Common/Chain/index.native.js.map +1 -1
  651. package/dist/jsx/connectkit/components/Common/Chain/styles.native.js.map +1 -1
  652. package/dist/jsx/connectkit/components/Common/ChainSelect/index.native.js +2 -2
  653. package/dist/jsx/connectkit/components/Common/ChainSelect/index.native.js.map +1 -1
  654. package/dist/jsx/connectkit/components/Common/ChainSelectDropdown/index.native.js +1 -1
  655. package/dist/jsx/connectkit/components/Common/ChainSelectDropdown/index.native.js.map +1 -1
  656. package/dist/jsx/connectkit/components/Common/ChainSelectDropdown/styles.native.js.map +1 -1
  657. package/dist/jsx/connectkit/components/Common/ChainSelectList/index.native.js.map +1 -1
  658. package/dist/jsx/connectkit/components/Common/ChainSelectList/styles.native.js.map +1 -1
  659. package/dist/jsx/connectkit/components/Common/ConnectorList/index.native.js.map +1 -1
  660. package/dist/jsx/connectkit/components/Common/ConnectorList/styles.native.js.map +1 -1
  661. package/dist/jsx/connectkit/components/ConnectButton/index.native.js +4 -4
  662. package/dist/jsx/connectkit/components/ConnectButton/index.native.js.map +1 -1
  663. package/dist/jsx/connectkit/components/ConnectButton/styles.native.js.map +1 -1
  664. package/dist/jsx/connectkit/components/ConnectModal/ConnectUsing.native.js +1 -1
  665. package/dist/jsx/connectkit/components/ConnectModal/ConnectUsing.native.js.map +1 -1
  666. package/dist/jsx/connectkit/components/ConnectModal/ConnectWithInjector/CircleSpinner/index.native.js.map +1 -1
  667. package/dist/jsx/connectkit/components/ConnectModal/ConnectWithInjector/CircleSpinner/styles.native.js.map +1 -1
  668. package/dist/jsx/connectkit/components/ConnectModal/ConnectWithInjector/SquircleSpinner/index.native.js.map +1 -1
  669. package/dist/jsx/connectkit/components/ConnectModal/ConnectWithInjector/SquircleSpinner/styles.native.js.map +1 -1
  670. package/dist/jsx/connectkit/components/ConnectModal/ConnectWithInjector/index.native.js +3 -3
  671. package/dist/jsx/connectkit/components/ConnectModal/ConnectWithInjector/index.native.js.map +1 -1
  672. package/dist/jsx/connectkit/components/ConnectModal/ConnectWithInjector/styles.native.js.map +1 -1
  673. package/dist/jsx/connectkit/components/ConnectModal/demo.native.js +9 -9
  674. package/dist/jsx/connectkit/components/ConnectModal/demo.native.js.map +1 -1
  675. package/dist/jsx/connectkit/components/NetworkButton/index.native.js +2 -2
  676. package/dist/jsx/connectkit/components/NetworkButton/index.native.js.map +1 -1
  677. package/dist/jsx/connectkit/components/Pages/About/graphics.native.js.map +1 -1
  678. package/dist/jsx/connectkit/components/Pages/About/index.native.js.map +1 -1
  679. package/dist/jsx/connectkit/components/Pages/About/styles.native.js.map +1 -1
  680. package/dist/jsx/connectkit/components/Pages/Connectors/index.native.js +1 -1
  681. package/dist/jsx/connectkit/components/Pages/Connectors/index.native.js.map +1 -1
  682. package/dist/jsx/connectkit/components/Pages/Connectors/styles.native.js.map +1 -1
  683. package/dist/jsx/connectkit/components/Pages/DownloadApp/index.native.js.map +1 -1
  684. package/dist/jsx/connectkit/components/Pages/Onboarding/index.native.js.map +1 -1
  685. package/dist/jsx/connectkit/components/Pages/Onboarding/styles.native.js.map +1 -1
  686. package/dist/jsx/connectkit/components/Pages/Profile/index.native.js +2 -2
  687. package/dist/jsx/connectkit/components/Pages/Profile/index.native.js.map +1 -1
  688. package/dist/jsx/connectkit/components/Pages/Profile/styles.native.js.map +1 -1
  689. package/dist/jsx/connectkit/components/Pages/SignInWithEthereum/index.native.js +3 -3
  690. package/dist/jsx/connectkit/components/Pages/SignInWithEthereum/index.native.js.map +1 -1
  691. package/dist/jsx/connectkit/components/Pages/SignInWithEthereum/styles.native.js.map +1 -1
  692. package/dist/jsx/connectkit/components/Pages/SwitchNetworks/index.native.js +1 -1
  693. package/dist/jsx/connectkit/components/Pages/SwitchNetworks/index.native.js.map +1 -1
  694. package/dist/jsx/connectkit/components/Standard/SIWE/index.native.js +1 -1
  695. package/dist/jsx/connectkit/components/Standard/SIWE/index.native.js.map +1 -1
  696. package/dist/jsx/connectkit/components/Standard/SIWE/styles.native.js.map +1 -1
  697. package/dist/jsx/connectkit/components/contexts/web3/index.native.js.map +1 -1
  698. package/dist/jsx/connectkit/connectors/aaveAccountConnector.native.js.map +1 -1
  699. package/dist/jsx/connectkit/connectors/createWalletMessage.mjs +1 -1
  700. package/dist/jsx/connectkit/connectors/createWalletMessage.native.js +2 -2
  701. package/dist/jsx/connectkit/connectors/createWalletMessage.native.js.map +1 -1
  702. package/dist/jsx/connectkit/connectors/embeddedDesktop.native.js.map +1 -1
  703. package/dist/jsx/connectkit/connectors/ensureWalletConnectors.native.js.map +1 -1
  704. package/dist/jsx/connectkit/connectors/getWalletConnectors.native.js.map +1 -1
  705. package/dist/jsx/connectkit/connectors/metaMaskConnectConnector.native.js.map +1 -1
  706. package/dist/jsx/connectkit/connectors/syntheticChains.native.js.map +1 -1
  707. package/dist/jsx/connectkit/connectors/walletAdapterConnector.native.js.map +1 -1
  708. package/dist/jsx/connectkit/constants/chainConfigs.native.js.map +1 -1
  709. package/dist/jsx/connectkit/defaultConfig.native.js.map +1 -1
  710. package/dist/jsx/connectkit/defaultConnectors.native.js.map +1 -1
  711. package/dist/jsx/connectkit/defaultTransports.native.js.map +1 -1
  712. package/dist/jsx/connectkit/hooks/useChainIsSupported.native.js.map +1 -1
  713. package/dist/jsx/connectkit/hooks/useChains.native.js.map +1 -1
  714. package/dist/jsx/connectkit/hooks/useConnect.native.js.map +1 -1
  715. package/dist/jsx/connectkit/hooks/useConnectCallback.native.js.map +1 -1
  716. package/dist/jsx/connectkit/hooks/useConnectors.native.js.map +1 -1
  717. package/dist/jsx/connectkit/hooks/useEnsFallbackConfig.native.js.map +1 -1
  718. package/dist/jsx/connectkit/hooks/useLastConnector.native.js.map +1 -1
  719. package/dist/jsx/connectkit/index.mjs +3 -2
  720. package/dist/jsx/connectkit/index.mjs.map +1 -1
  721. package/dist/jsx/connectkit/index.native.js +12 -11
  722. package/dist/jsx/connectkit/index.native.js.map +1 -1
  723. package/dist/jsx/connectkit/openConnector/context.native.js.map +1 -1
  724. package/dist/jsx/connectkit/openConnector/device.native.js.map +1 -1
  725. package/dist/jsx/connectkit/openConnector/index.native.js.map +1 -1
  726. package/dist/jsx/connectkit/openConnector/launcher.native.js.map +1 -1
  727. package/dist/jsx/connectkit/profileHeaderAction.native.js +1 -1
  728. package/dist/jsx/connectkit/profileHeaderAction.native.js.map +1 -1
  729. package/dist/jsx/connectkit/screens.native.js +7 -7
  730. package/dist/jsx/connectkit/screens.native.js.map +1 -1
  731. package/dist/jsx/connectkit/siwe/SIWEContext.mjs.map +1 -1
  732. package/dist/jsx/connectkit/siwe/SIWEContext.native.js.map +1 -1
  733. package/dist/jsx/connectkit/siwe/SIWEProvider.mjs +19 -4
  734. package/dist/jsx/connectkit/siwe/SIWEProvider.mjs.map +1 -1
  735. package/dist/jsx/connectkit/siwe/SIWEProvider.native.js +18 -3
  736. package/dist/jsx/connectkit/siwe/SIWEProvider.native.js.map +1 -1
  737. package/dist/jsx/connectkit/siwe/connectIntent.native.js.map +1 -1
  738. package/dist/jsx/connectkit/siwe/index.native.js.map +1 -1
  739. package/dist/jsx/connectkit/siwe/useSIWE.native.js.map +1 -1
  740. package/dist/jsx/connectkit/useWeb3Modal.native.js +2 -2
  741. package/dist/jsx/connectkit/useWeb3Modal.native.js.map +1 -1
  742. package/dist/jsx/connectkit/wallets/index.native.js.map +1 -1
  743. package/dist/jsx/connectkit/wallets/useWallets.native.js.map +1 -1
  744. package/dist/jsx/connectkit/wallets/walletConfigs.native.js.map +1 -1
  745. package/dist/jsx/connectkit/web3Bridge.native.js +2 -2
  746. package/dist/jsx/connectkit/web3Bridge.native.js.map +1 -1
  747. package/dist/jsx/connectkit/web3Provider.native.js.map +1 -1
  748. package/dist/jsx/esbuild.native.js.map +1 -1
  749. package/dist/jsx/examples/LockContract.native.js.map +1 -1
  750. package/dist/jsx/examples/index.native.js.map +1 -1
  751. package/dist/jsx/hooks/index.native.js.map +1 -1
  752. package/dist/jsx/hooks/useContractRead.native.js.map +1 -1
  753. package/dist/jsx/hooks/useContractWrite.native.js.map +1 -1
  754. package/dist/jsx/hooks/useWallet.native.js.map +1 -1
  755. package/dist/jsx/index.js +3 -2
  756. package/dist/jsx/index.js.map +1 -1
  757. package/dist/jsx/index.mjs +3 -2
  758. package/dist/jsx/index.mjs.map +1 -1
  759. package/dist/jsx/index.native.js +8 -6
  760. package/dist/jsx/index.native.js.map +1 -1
  761. package/dist/jsx/keycloak/KeycloakWalletLogin.mjs +218 -0
  762. package/dist/jsx/keycloak/KeycloakWalletLogin.mjs.map +1 -0
  763. package/dist/jsx/keycloak/KeycloakWalletLogin.native.js +33 -0
  764. package/dist/jsx/keycloak/KeycloakWalletLogin.native.js.map +1 -0
  765. package/dist/jsx/keycloak/browserFlow.mjs +58 -0
  766. package/dist/jsx/keycloak/browserFlow.mjs.map +1 -0
  767. package/dist/jsx/keycloak/browserFlow.native.js +90 -0
  768. package/dist/jsx/keycloak/browserFlow.native.js.map +1 -0
  769. package/dist/jsx/keycloak/device.mjs +10 -0
  770. package/dist/jsx/keycloak/device.mjs.map +1 -0
  771. package/dist/jsx/keycloak/device.native.js +45 -0
  772. package/dist/jsx/keycloak/device.native.js.map +1 -0
  773. package/dist/jsx/keycloak/directGrant.mjs +164 -0
  774. package/dist/jsx/keycloak/directGrant.mjs.map +1 -0
  775. package/dist/jsx/keycloak/directGrant.native.js +233 -0
  776. package/dist/jsx/keycloak/directGrant.native.js.map +1 -0
  777. package/dist/jsx/keycloak/iife.mjs +5 -0
  778. package/dist/jsx/keycloak/iife.mjs.map +1 -0
  779. package/dist/jsx/keycloak/iife.native.js +7 -0
  780. package/dist/jsx/keycloak/iife.native.js.map +1 -0
  781. package/dist/jsx/keycloak/index.mjs +13 -0
  782. package/dist/jsx/keycloak/index.mjs.map +1 -0
  783. package/dist/jsx/keycloak/index.native.js +56 -0
  784. package/dist/jsx/keycloak/index.native.js.map +1 -0
  785. package/dist/jsx/keycloak/keycloakWallet.mjs +186 -0
  786. package/dist/jsx/keycloak/keycloakWallet.mjs.map +1 -0
  787. package/dist/jsx/keycloak/keycloakWallet.native.js +285 -0
  788. package/dist/jsx/keycloak/keycloakWallet.native.js.map +1 -0
  789. package/dist/jsx/keycloak/mount.mjs +28 -0
  790. package/dist/jsx/keycloak/mount.mjs.map +1 -0
  791. package/dist/jsx/keycloak/mount.native.js +33 -0
  792. package/dist/jsx/keycloak/mount.native.js.map +1 -0
  793. package/dist/jsx/keycloak/registerWallet.mjs +49 -0
  794. package/dist/jsx/keycloak/registerWallet.mjs.map +1 -0
  795. package/dist/jsx/keycloak/registerWallet.native.js +81 -0
  796. package/dist/jsx/keycloak/registerWallet.native.js.map +1 -0
  797. package/dist/jsx/keycloak/types.mjs +20 -0
  798. package/dist/jsx/keycloak/types.mjs.map +1 -0
  799. package/dist/jsx/keycloak/types.native.js +179 -0
  800. package/dist/jsx/keycloak/types.native.js.map +1 -0
  801. package/dist/jsx/keycloak/useDirectLogin.mjs +32 -0
  802. package/dist/jsx/keycloak/useDirectLogin.mjs.map +1 -0
  803. package/dist/jsx/keycloak/useDirectLogin.native.js +77 -0
  804. package/dist/jsx/keycloak/useDirectLogin.native.js.map +1 -0
  805. package/dist/jsx/keycloak/useWalletLogin.mjs +72 -0
  806. package/dist/jsx/keycloak/useWalletLogin.mjs.map +1 -0
  807. package/dist/jsx/keycloak/useWalletLogin.native.js +33 -0
  808. package/dist/jsx/keycloak/useWalletLogin.native.js.map +1 -0
  809. package/dist/jsx/message/buildWalletMessage.mjs +87 -0
  810. package/dist/jsx/message/buildWalletMessage.mjs.map +1 -0
  811. package/dist/jsx/message/buildWalletMessage.native.js +121 -0
  812. package/dist/jsx/message/buildWalletMessage.native.js.map +1 -0
  813. package/dist/jsx/message/index.mjs +3 -0
  814. package/dist/jsx/message/index.mjs.map +1 -0
  815. package/dist/jsx/message/index.native.js +32 -0
  816. package/dist/jsx/message/index.native.js.map +1 -0
  817. package/dist/jsx/providers/WalletProvider.mjs +11 -4
  818. package/dist/jsx/providers/WalletProvider.mjs.map +1 -1
  819. package/dist/jsx/providers/WalletProvider.native.js +123 -90
  820. package/dist/jsx/providers/WalletProvider.native.js.map +1 -1
  821. package/dist/jsx/providers/index.mjs +2 -2
  822. package/dist/jsx/providers/index.mjs.map +1 -1
  823. package/dist/jsx/providers/index.native.js +1 -0
  824. package/dist/jsx/providers/index.native.js.map +1 -1
  825. package/dist/jsx/providers/mockConnector.native.js.map +1 -1
  826. package/dist/jsx/providers/native/deepLink.mjs +36 -24
  827. package/dist/jsx/providers/native/deepLink.mjs.map +1 -1
  828. package/dist/jsx/providers/native/deepLink.native.js +43 -25
  829. package/dist/jsx/providers/native/deepLink.native.js.map +1 -1
  830. package/dist/jsx/providers/native/inject.mjs +1 -3
  831. package/dist/jsx/providers/native/inject.mjs.map +1 -1
  832. package/dist/jsx/providers/native/inject.native.js +2 -4
  833. package/dist/jsx/providers/native/inject.native.js.map +1 -1
  834. package/dist/jsx/providers/native/visibility.native.js.map +1 -1
  835. package/dist/jsx/providers/walletBridge.mjs +9 -0
  836. package/dist/jsx/providers/walletBridge.mjs.map +1 -0
  837. package/dist/jsx/providers/walletBridge.native.js +38 -0
  838. package/dist/jsx/providers/walletBridge.native.js.map +1 -0
  839. package/dist/jsx/providers/walletConfig.mjs.map +1 -1
  840. package/dist/jsx/providers/walletConfig.native.js.map +1 -1
  841. package/dist/jsx/siws/index.native.js.map +1 -1
  842. package/dist/jsx/siws/message.mjs +5 -16
  843. package/dist/jsx/siws/message.mjs.map +1 -1
  844. package/dist/jsx/siws/message.native.js +6 -16
  845. package/dist/jsx/siws/message.native.js.map +1 -1
  846. package/dist/jsx/siws/signWithBridge.native.js.map +1 -1
  847. package/dist/jsx/siws/verify.native.js.map +1 -1
  848. package/dist/jsx/solana.mjs.map +1 -1
  849. package/dist/jsx/solana.native.js.map +1 -1
  850. package/dist/jsx/vite.native.js.map +1 -1
  851. package/dist/keycloak/login.iife.js +3604 -0
  852. package/docs/bridge-protocol.md +485 -0
  853. package/package.json +35 -8
  854. package/src/bridge/AuthBridge.ts +146 -0
  855. package/src/bridge/BridgeClient.spec.ts +12 -0
  856. package/src/bridge/BridgeClient.ts +15 -10
  857. package/src/bridge/BridgeHost.spec.ts +20 -4
  858. package/src/bridge/BridgeHost.ts +16 -5
  859. package/src/bridge/GpgBridge.ts +49 -0
  860. package/src/bridge/SuiBridge.ts +34 -0
  861. package/src/bridge/authTypes.ts +76 -0
  862. package/src/bridge/core.ts +42 -0
  863. package/src/bridge/hosting.spec.ts +98 -0
  864. package/src/bridge/hosting.ts +99 -0
  865. package/src/bridge/index.ts +1 -8
  866. package/src/bridge/nativeHost.spec.ts +165 -0
  867. package/src/bridge/nativeHost.ts +120 -0
  868. package/src/bridge/protocol.spec.ts +24 -1
  869. package/src/bridge/protocol.ts +44 -1
  870. package/src/clients/evm.spec.ts +644 -10
  871. package/src/clients/evm.ts +498 -10
  872. package/src/clients/index.ts +8 -0
  873. package/src/clients/solana.spec.ts +116 -0
  874. package/src/clients/solana.ts +51 -31
  875. package/src/connectkit/GpgProvider.tsx +16 -0
  876. package/src/connectkit/adapters/BitcoinAdapter.ts +5 -16
  877. package/src/connectkit/adapters/EthereumAdapter.ts +6 -17
  878. package/src/connectkit/adapters/SolanaAdapter.ts +5 -16
  879. package/src/connectkit/adapters/SuiAdapter.ts +5 -16
  880. package/src/connectkit/connectors/createWalletMessage.ts +1 -1
  881. package/src/connectkit/index.ts +2 -6
  882. package/src/connectkit/openConnector/modal.spec.tsx +1 -1
  883. package/src/connectkit/siwe/SIWEContext.tsx +6 -2
  884. package/src/connectkit/siwe/SIWEProvider.tsx +22 -5
  885. package/src/index.ts +5 -0
  886. package/src/keycloak/KeycloakWalletLogin.native.tsx +7 -0
  887. package/src/keycloak/KeycloakWalletLogin.spec.tsx +168 -0
  888. package/src/keycloak/KeycloakWalletLogin.tsx +251 -0
  889. package/src/keycloak/browserFlow.spec.ts +108 -0
  890. package/src/keycloak/browserFlow.ts +84 -0
  891. package/src/keycloak/device.ts +17 -0
  892. package/src/keycloak/directGrant.spec.ts +331 -0
  893. package/src/keycloak/directGrant.ts +214 -0
  894. package/src/keycloak/iife.ts +3 -0
  895. package/src/keycloak/index.ts +44 -0
  896. package/src/keycloak/keycloakWallet.spec.ts +216 -0
  897. package/src/keycloak/keycloakWallet.ts +275 -0
  898. package/src/keycloak/mount.native.ts +11 -0
  899. package/src/keycloak/mount.tsx +45 -0
  900. package/src/keycloak/nonceReset.spec.tsx +205 -0
  901. package/src/keycloak/registerWallet.spec.ts +88 -0
  902. package/src/keycloak/registerWallet.ts +59 -0
  903. package/src/keycloak/types.ts +66 -0
  904. package/src/keycloak/useDirectLogin.spec.tsx +112 -0
  905. package/src/keycloak/useDirectLogin.ts +74 -0
  906. package/src/keycloak/useWalletLogin.native.ts +7 -0
  907. package/src/keycloak/useWalletLogin.ts +99 -0
  908. package/src/message/buildWalletMessage.spec.ts +291 -0
  909. package/src/message/buildWalletMessage.ts +150 -0
  910. package/src/message/index.ts +8 -0
  911. package/src/providers/WalletProvider.native.tsx +139 -85
  912. package/src/providers/WalletProvider.tsx +16 -3
  913. package/src/providers/index.ts +2 -0
  914. package/src/providers/native/deepLink.spec.ts +73 -1
  915. package/src/providers/native/deepLink.ts +76 -28
  916. package/src/providers/native/inject.ts +1 -9
  917. package/src/providers/walletBridge.ts +24 -0
  918. package/src/providers/walletConfig.ts +15 -1
  919. package/src/siws/message.ts +3 -22
  920. package/src/solana.ts +1 -0
  921. package/types/bridge/AuthBridge.d.ts +58 -0
  922. package/types/bridge/AuthBridge.d.ts.map +1 -0
  923. package/types/bridge/BridgeClient.d.ts +3 -1
  924. package/types/bridge/BridgeClient.d.ts.map +1 -1
  925. package/types/bridge/BridgeHost.d.ts +1 -1
  926. package/types/bridge/BridgeHost.d.ts.map +1 -1
  927. package/types/bridge/GpgBridge.d.ts +23 -0
  928. package/types/bridge/GpgBridge.d.ts.map +1 -0
  929. package/types/bridge/SuiBridge.d.ts +18 -0
  930. package/types/bridge/SuiBridge.d.ts.map +1 -0
  931. package/types/bridge/authTypes.d.ts +71 -0
  932. package/types/bridge/authTypes.d.ts.map +1 -0
  933. package/types/bridge/core.d.ts +16 -0
  934. package/types/bridge/core.d.ts.map +1 -0
  935. package/types/bridge/hosting.d.ts +34 -0
  936. package/types/bridge/hosting.d.ts.map +1 -0
  937. package/types/bridge/index.d.ts +1 -8
  938. package/types/bridge/index.d.ts.map +1 -1
  939. package/types/bridge/nativeHost.d.ts +55 -0
  940. package/types/bridge/nativeHost.d.ts.map +1 -0
  941. package/types/bridge/protocol.d.ts +34 -1
  942. package/types/bridge/protocol.d.ts.map +1 -1
  943. package/types/clients/evm.d.ts +144 -2
  944. package/types/clients/evm.d.ts.map +1 -1
  945. package/types/clients/index.d.ts +1 -1
  946. package/types/clients/index.d.ts.map +1 -1
  947. package/types/clients/solana.d.ts +14 -5
  948. package/types/clients/solana.d.ts.map +1 -1
  949. package/types/connectkit/GpgProvider.d.ts +10 -0
  950. package/types/connectkit/GpgProvider.d.ts.map +1 -0
  951. package/types/connectkit/adapters/BitcoinAdapter.d.ts.map +1 -1
  952. package/types/connectkit/adapters/EthereumAdapter.d.ts.map +1 -1
  953. package/types/connectkit/adapters/SolanaAdapter.d.ts.map +1 -1
  954. package/types/connectkit/adapters/SuiAdapter.d.ts.map +1 -1
  955. package/types/connectkit/connectors/createWalletMessage.d.ts +1 -1
  956. package/types/connectkit/connectors/createWalletMessage.d.ts.map +1 -1
  957. package/types/connectkit/index.d.ts +3 -2
  958. package/types/connectkit/index.d.ts.map +1 -1
  959. package/types/connectkit/siwe/SIWEContext.d.ts +2 -1
  960. package/types/connectkit/siwe/SIWEContext.d.ts.map +1 -1
  961. package/types/connectkit/siwe/SIWEProvider.d.ts.map +1 -1
  962. package/types/index.d.ts +2 -1
  963. package/types/index.d.ts.map +1 -1
  964. package/types/keycloak/KeycloakWalletLogin.d.ts +45 -0
  965. package/types/keycloak/KeycloakWalletLogin.d.ts.map +1 -0
  966. package/types/keycloak/KeycloakWalletLogin.native.d.ts +4 -0
  967. package/types/keycloak/KeycloakWalletLogin.native.d.ts.map +1 -0
  968. package/types/keycloak/browserFlow.d.ts +27 -0
  969. package/types/keycloak/browserFlow.d.ts.map +1 -0
  970. package/types/keycloak/device.d.ts +14 -0
  971. package/types/keycloak/device.d.ts.map +1 -0
  972. package/types/keycloak/directGrant.d.ts +43 -0
  973. package/types/keycloak/directGrant.d.ts.map +1 -0
  974. package/types/keycloak/iife.d.ts +2 -0
  975. package/types/keycloak/iife.d.ts.map +1 -0
  976. package/types/keycloak/index.d.ts +12 -0
  977. package/types/keycloak/index.d.ts.map +1 -0
  978. package/types/keycloak/keycloakWallet.d.ts +120 -0
  979. package/types/keycloak/keycloakWallet.d.ts.map +1 -0
  980. package/types/keycloak/mount.d.ts +16 -0
  981. package/types/keycloak/mount.d.ts.map +1 -0
  982. package/types/keycloak/mount.native.d.ts +5 -0
  983. package/types/keycloak/mount.native.d.ts.map +1 -0
  984. package/types/keycloak/registerWallet.d.ts +22 -0
  985. package/types/keycloak/registerWallet.d.ts.map +1 -0
  986. package/types/keycloak/types.d.ts +50 -0
  987. package/types/keycloak/types.d.ts.map +1 -0
  988. package/types/keycloak/useDirectLogin.d.ts +29 -0
  989. package/types/keycloak/useDirectLogin.d.ts.map +1 -0
  990. package/types/keycloak/useWalletLogin.d.ts +26 -0
  991. package/types/keycloak/useWalletLogin.d.ts.map +1 -0
  992. package/types/keycloak/useWalletLogin.native.d.ts +4 -0
  993. package/types/keycloak/useWalletLogin.native.d.ts.map +1 -0
  994. package/types/message/buildWalletMessage.d.ts +46 -0
  995. package/types/message/buildWalletMessage.d.ts.map +1 -0
  996. package/types/message/index.d.ts +2 -0
  997. package/types/message/index.d.ts.map +1 -0
  998. package/types/providers/WalletProvider.d.ts +9 -1
  999. package/types/providers/WalletProvider.d.ts.map +1 -1
  1000. package/types/providers/WalletProvider.native.d.ts +2 -1
  1001. package/types/providers/WalletProvider.native.d.ts.map +1 -1
  1002. package/types/providers/index.d.ts +1 -1
  1003. package/types/providers/index.d.ts.map +1 -1
  1004. package/types/providers/native/deepLink.d.ts +29 -4
  1005. package/types/providers/native/deepLink.d.ts.map +1 -1
  1006. package/types/providers/native/inject.d.ts +1 -7
  1007. package/types/providers/native/inject.d.ts.map +1 -1
  1008. package/types/providers/walletBridge.d.ts +17 -0
  1009. package/types/providers/walletBridge.d.ts.map +1 -0
  1010. package/types/providers/walletConfig.d.ts +18 -1
  1011. package/types/providers/walletConfig.d.ts.map +1 -1
  1012. package/types/siws/message.d.ts.map +1 -1
  1013. package/types/solana.d.ts +1 -1
  1014. package/types/solana.d.ts.map +1 -1
  1015. package/dist/cjs/connectkit/adapters/messages.cjs +0 -73
  1016. package/dist/cjs/connectkit/adapters/messages.native.js +0 -79
  1017. package/dist/cjs/connectkit/adapters/messages.native.js.map +0 -1
  1018. package/dist/esm/connectkit/adapters/messages.mjs +0 -48
  1019. package/dist/esm/connectkit/adapters/messages.mjs.map +0 -1
  1020. package/dist/esm/connectkit/adapters/messages.native.js +0 -51
  1021. package/dist/esm/connectkit/adapters/messages.native.js.map +0 -1
  1022. package/dist/jsx/connectkit/adapters/messages.mjs +0 -48
  1023. package/dist/jsx/connectkit/adapters/messages.mjs.map +0 -1
  1024. package/dist/jsx/connectkit/adapters/messages.native.js +0 -79
  1025. package/dist/jsx/connectkit/adapters/messages.native.js.map +0 -1
  1026. package/src/connectkit/adapters/messages.ts +0 -84
  1027. package/types/connectkit/adapters/messages.d.ts +0 -16
  1028. package/types/connectkit/adapters/messages.d.ts.map +0 -1
@@ -0,0 +1,120 @@
1
+ import type { SIWEConfig } from "../connectkit/siwe/SIWEContext";
2
+ import { type BrowserFlowOptions } from "./browserFlow";
3
+ import { type DirectGrant, type DirectGrantOptions } from "./directGrant";
4
+ import { type RegisterWalletOptions, type WalletRegistration } from "./registerWallet";
5
+ import { type KeycloakWalletResource, type OnSign } from "./types";
6
+ export interface KeycloakWalletOptions {
7
+ /** Keycloak base URL, e.g. `https://account.example.com` or `http://localhost:8080/auth`. */
8
+ baseUrl: string;
9
+ realm: string;
10
+ /** Defaults to `siww` (SHC Keycloak); mpo's own SPI mounts `wallet`. */
11
+ resource?: KeycloakWalletResource;
12
+ /**
13
+ * Domain written into every sign-in message. Defaults to the page host. A
14
+ * WebView or native caller passes the hosted page's host the realm allows.
15
+ */
16
+ domain?: string;
17
+ /** URI written into every sign-in message. Defaults to the page origin or `https://<domain>`. */
18
+ uri?: string;
19
+ fetch?: typeof fetch;
20
+ }
21
+ export interface BrowserLoginUrlOptions {
22
+ /**
23
+ * A public client with `standardFlowEnabled` and `redirectUri` registered
24
+ * exactly, no wildcard. A direct-grant client such as mpo's `siwe-public`
25
+ * or `siws-public` (`standardFlowEnabled: false`) is refused; mpo's realm
26
+ * carries `wallet-onboarding` for this.
27
+ */
28
+ clientId: string;
29
+ /** Where Keycloak sends the browser back: the app's deep link or page. */
30
+ redirectUri: string;
31
+ /** Default `openid`. */
32
+ scope?: string | string[];
33
+ }
34
+ export interface BrowserLogin {
35
+ url: string;
36
+ /** Keep it, and accept the redirect back only when its `state` matches. */
37
+ state: string;
38
+ /** The PKCE S256 verifier behind the URL's `code_challenge`, for the code exchange. */
39
+ codeVerifier: string;
40
+ }
41
+ export interface KeycloakWallet {
42
+ readonly baseUrl: string;
43
+ readonly realm: string;
44
+ readonly resource: KeycloakWalletResource;
45
+ readonly realmUrl: string;
46
+ readonly resourceUrl: string;
47
+ readonly tokenUrl: string;
48
+ /**
49
+ * A server nonce, shared by every caller until `resetNonce()`. Each `/nonce`
50
+ * call replaces the previous nonce server side (and rotates its cookie), so
51
+ * two flows fetching their own would leave one signing a dead nonce.
52
+ */
53
+ getNonce(): Promise<string>;
54
+ /** Drop the shared nonce (the server consumed or rotated it) and tell every subscriber. */
55
+ resetNonce(): void;
56
+ /**
57
+ * Call `listener` on every `resetNonce()`. SIWEProvider and GpgProvider
58
+ * subscribe through the configs below and refetch their cached copy, so a
59
+ * second sign-in never signs a nonce the server has already dropped.
60
+ */
61
+ subscribeNonceReset(listener: () => void): () => void;
62
+ /** `SIWEConfig.createMessage`, with this wallet's domain and uri. */
63
+ createMessage(args: {
64
+ nonce: string;
65
+ address: string;
66
+ chainId: number;
67
+ }): string;
68
+ /** `GpgConfig.buildMessage`, with this wallet's domain and uri. */
69
+ gpgMessage(args: {
70
+ nonce: string;
71
+ }): string;
72
+ /** Props for `<SIWEProvider>` that sign through `onSign` (a browser flow, direct grant or registration). */
73
+ siweConfig(onSign: OnSign): SIWEConfig;
74
+ /** Props for `<GpgProvider>` that sign through `onSign`. */
75
+ gpgConfig(onSign: OnSign): {
76
+ getNonce: () => Promise<string>;
77
+ buildMessage: (args: {
78
+ nonce: string;
79
+ }) => string;
80
+ onSign: OnSign;
81
+ subscribeNonceReset: (listener: () => void) => () => void;
82
+ };
83
+ browserFlow(opts?: BrowserFlowOptions): OnSign;
84
+ directGrant(opts: DirectGrantOptions): DirectGrant;
85
+ /**
86
+ * The realm's authorization-code login, with a fresh `state` and PKCE S256
87
+ * pair. Open `url` in the system browser or a WebView when a direct grant
88
+ * rejects with `ProfileIncompleteError`: Keycloak's own login runs the
89
+ * pending required actions (the profile form), and the next direct grant
90
+ * succeeds.
91
+ */
92
+ browserLoginUrl(opts: BrowserLoginUrlOptions): BrowserLogin;
93
+ registerWallet(opts: RegisterWalletOptions): WalletRegistration;
94
+ /** `fetch` against Keycloak carrying the nonce session cookie. */
95
+ request(url: string, init?: RequestInit): Promise<Response>;
96
+ }
97
+ /** RFC 7636 S256: base64url(SHA-256(ASCII(verifier))). */
98
+ export declare function pkceChallenge(codeVerifier: string): string;
99
+ /** `username`/`password` for a signature over `message`, base64 done without btoa so it runs on Hermes. */
100
+ export declare function toCredentials(args: {
101
+ signature: string;
102
+ message: string;
103
+ }): {
104
+ username: string;
105
+ password: string;
106
+ message: string;
107
+ };
108
+ export declare function keycloakWallet(options: KeycloakWalletOptions): KeycloakWallet;
109
+ /**
110
+ * Keycloak base URL and realm of a page Keycloak serves (`<base>/realms/<realm>/...`),
111
+ * or undefined off such a page.
112
+ */
113
+ export declare function deriveKeycloakFromLocation(location?: {
114
+ origin: string;
115
+ pathname: string;
116
+ } | undefined): {
117
+ baseUrl: string;
118
+ realm: string;
119
+ } | undefined;
120
+ //# sourceMappingURL=keycloakWallet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"keycloakWallet.d.ts","sourceRoot":"","sources":["../../src/keycloak/keycloakWallet.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAEjE,OAAO,EAAe,KAAK,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACrE,OAAO,EAAqB,KAAK,WAAW,EAAE,KAAK,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAC7F,OAAO,EAEL,KAAK,qBAAqB,EAC1B,KAAK,kBAAkB,EACxB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAuB,KAAK,sBAAsB,EAAE,KAAK,MAAM,EAAE,MAAM,SAAS,CAAC;AAExF,MAAM,WAAW,qBAAqB;IACpC,6FAA6F;IAC7F,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,wEAAwE;IACxE,QAAQ,CAAC,EAAE,sBAAsB,CAAC;IAClC;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iGAAiG;IACjG,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;CACtB;AAED,MAAM,WAAW,sBAAsB;IACrC;;;;;OAKG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB,0EAA0E;IAC1E,WAAW,EAAE,MAAM,CAAC;IACpB,wBAAwB;IACxB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,2EAA2E;IAC3E,KAAK,EAAE,MAAM,CAAC;IACd,uFAAuF;IACvF,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,EAAE,sBAAsB,CAAC;IAC1C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B;;;;OAIG;IACH,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5B,2FAA2F;IAC3F,UAAU,IAAI,IAAI,CAAC;IACnB;;;;OAIG;IACH,mBAAmB,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC;IACtD,qEAAqE;IACrE,aAAa,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,MAAM,CAAC;IACjF,mEAAmE;IACnE,UAAU,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,MAAM,CAAC;IAC5C,4GAA4G;IAC5G,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,CAAC;IACvC,4DAA4D;IAC5D,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG;QACzB,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;QAChC,YAAY,EAAE,CAAC,IAAI,EAAE;YAAE,KAAK,EAAE,MAAM,CAAA;SAAE,KAAK,MAAM,CAAC;QAClD,MAAM,EAAE,MAAM,CAAC;QACf,mBAAmB,EAAE,CAAC,QAAQ,EAAE,MAAM,IAAI,KAAK,MAAM,IAAI,CAAC;KAC3D,CAAC;IACF,WAAW,CAAC,IAAI,CAAC,EAAE,kBAAkB,GAAG,MAAM,CAAC;IAC/C,WAAW,CAAC,IAAI,EAAE,kBAAkB,GAAG,WAAW,CAAC;IACnD;;;;;;OAMG;IACH,eAAe,CAAC,IAAI,EAAE,sBAAsB,GAAG,YAAY,CAAC;IAC5D,cAAc,CAAC,IAAI,EAAE,qBAAqB,GAAG,kBAAkB,CAAC;IAChE,kEAAkE;IAClE,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;CAC7D;AA2BD,0DAA0D;AAC1D,wBAAgB,aAAa,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAE1D;AAED,2GAA2G;AAC3G,wBAAgB,aAAa,CAAC,IAAI,EAAE;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE;;;;EAMzE;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,cAAc,CAwH7E;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CACxC,QAAQ,GAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAAG,SAEvC,GACT;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAIhD"}
@@ -0,0 +1,16 @@
1
+ import type { Config } from "wagmi";
2
+ import { type KeycloakWalletLoginProps } from "./KeycloakWalletLogin";
3
+ export interface MountedKeycloakWalletLogin {
4
+ /** The wagmi config the login signs with. */
5
+ readonly config: Config;
6
+ unmount(): void;
7
+ }
8
+ /**
9
+ * Render `<KeycloakWalletLogin>` into `target` under its own React root, so a
10
+ * Keycloak theme on another React (or none) can host it. Mounting an element
11
+ * that already holds one returns that one: a second root would fetch a second
12
+ * nonce and rotate the session cookie under the first. `unmount()` frees the
13
+ * element for a fresh mount.
14
+ */
15
+ export declare function mount(target: string | Element, opts?: KeycloakWalletLoginProps): MountedKeycloakWalletLogin;
16
+ //# sourceMappingURL=mount.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mount.d.ts","sourceRoot":"","sources":["../../src/keycloak/mount.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,EAEL,KAAK,wBAAwB,EAE9B,MAAM,uBAAuB,CAAC;AAE/B,MAAM,WAAW,0BAA0B;IACzC,6CAA6C;IAC7C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,OAAO,IAAI,IAAI,CAAC;CACjB;AAID;;;;;;GAMG;AACH,wBAAgB,KAAK,CACnB,MAAM,EAAE,MAAM,GAAG,OAAO,EACxB,IAAI,GAAE,wBAA6B,GAClC,0BAA0B,CAkB5B"}
@@ -0,0 +1,5 @@
1
+ import type { KeycloakWalletLoginProps } from "./KeycloakWalletLogin";
2
+ import type { MountedKeycloakWalletLogin } from "./mount";
3
+ export type { MountedKeycloakWalletLogin };
4
+ export declare function mount(_target: string | Element, _opts?: KeycloakWalletLoginProps): MountedKeycloakWalletLogin;
5
+ //# sourceMappingURL=mount.native.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mount.native.d.ts","sourceRoot":"","sources":["../../src/keycloak/mount.native.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,SAAS,CAAC;AAE1D,YAAY,EAAE,0BAA0B,EAAE,CAAC;AAE3C,wBAAgB,KAAK,CACnB,OAAO,EAAE,MAAM,GAAG,OAAO,EACzB,KAAK,CAAC,EAAE,wBAAwB,GAC/B,0BAA0B,CAE5B"}
@@ -0,0 +1,22 @@
1
+ import type { KeycloakWallet } from "./keycloakWallet";
2
+ import { type OnSign } from "./types";
3
+ export interface RegisterWalletOptions {
4
+ /** The signed-in user's access token, or a getter such as `directGrant(...).getAccessToken`. */
5
+ accessToken: string | (() => string | null | Promise<string | null>);
6
+ }
7
+ export interface WalletRegistration {
8
+ /** `onSign` for `<SIWEProvider>`: proves the connected wallet and binds it to the signed-in user. */
9
+ onSign: OnSign;
10
+ /**
11
+ * POST `<resource>/register`. `registered` is false when the wallet was
12
+ * already this user's; another user's wallet is a 409.
13
+ */
14
+ register(args: {
15
+ message: string;
16
+ signature: string;
17
+ }): Promise<{
18
+ registered: boolean;
19
+ }>;
20
+ }
21
+ export declare function createWalletRegistration(kc: KeycloakWallet, opts: RegisterWalletOptions): WalletRegistration;
22
+ //# sourceMappingURL=registerWallet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registerWallet.d.ts","sourceRoot":"","sources":["../../src/keycloak/registerWallet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAuB,KAAK,MAAM,EAAE,MAAM,SAAS,CAAC;AAE3D,MAAM,WAAW,qBAAqB;IACpC,gGAAgG;IAChG,WAAW,EAAE,MAAM,GAAG,CAAC,MAAM,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC;CACtE;AAED,MAAM,WAAW,kBAAkB;IACjC,qGAAqG;IACrG,MAAM,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,QAAQ,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,UAAU,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;CAC1F;AAED,wBAAgB,wBAAwB,CACtC,EAAE,EAAE,cAAc,EAClB,IAAI,EAAE,qBAAqB,GAC1B,kBAAkB,CAqCpB"}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * The REST resource the Keycloak wallet SPI mounts under `/realms/<realm>/`:
3
+ * `siww` on the SHC Keycloak, `wallet` on mpo's own SPI.
4
+ */
5
+ export type KeycloakWalletResource = "siww" | "wallet";
6
+ /**
7
+ * What SIWEProvider and GpgProvider hand their `onSign`: `username` is the raw
8
+ * signature (or the GPG blob), `password` is base64(message).
9
+ */
10
+ export interface WalletSignIn {
11
+ username: string;
12
+ password: string;
13
+ message: string;
14
+ }
15
+ export type OnSign = (credentials: WalletSignIn) => Promise<boolean>;
16
+ export interface KeycloakTokens {
17
+ accessToken: string;
18
+ refreshToken?: string;
19
+ idToken?: string;
20
+ tokenType: string;
21
+ scope?: string;
22
+ /** Epoch ms after which the access token is expired. */
23
+ expiresAt: number;
24
+ /** Epoch ms after which the refresh token is expired; absent for offline or non-expiring tokens. */
25
+ refreshExpiresAt?: number;
26
+ }
27
+ export declare class KeycloakWalletError extends Error {
28
+ readonly status: number;
29
+ readonly error?: string;
30
+ readonly errorDescription?: string;
31
+ constructor(message: string, status: number, details?: {
32
+ error?: string;
33
+ errorDescription?: string;
34
+ });
35
+ }
36
+ /**
37
+ * Keycloak accepted the wallet but the account has required actions left (a
38
+ * new user's profile form, terms, a verified email), which a direct grant
39
+ * cannot run: Keycloak answers 400 invalid_grant "Account is not fully set
40
+ * up". Send the user through the browser login once
41
+ * (`kc.browserLoginUrl(...)` in the system browser or a WebView) so Keycloak
42
+ * shows its own forms; the direct grant succeeds after that.
43
+ */
44
+ export declare class ProfileIncompleteError extends KeycloakWalletError {
45
+ constructor(message: string, status: number, details?: {
46
+ error?: string;
47
+ errorDescription?: string;
48
+ });
49
+ }
50
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/keycloak/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,MAAM,sBAAsB,GAAG,MAAM,GAAG,QAAQ,CAAC;AAEvD;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,MAAM,MAAM,GAAG,CAAC,WAAW,EAAE,YAAY,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AAErE,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wDAAwD;IACxD,SAAS,EAAE,MAAM,CAAC;IAClB,oGAAoG;IACpG,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,qBAAa,mBAAoB,SAAQ,KAAK;IAC5C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;gBAGjC,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,EACd,OAAO,GAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,gBAAgB,CAAC,EAAE,MAAM,CAAA;KAAO;CAQ9D;AAED;;;;;;;GAOG;AACH,qBAAa,sBAAuB,SAAQ,mBAAmB;gBAE3D,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,EACd,OAAO,GAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,gBAAgB,CAAC,EAAE,MAAM,CAAA;KAAO;CAK9D"}
@@ -0,0 +1,29 @@
1
+ import type { DirectGrant } from "./directGrant";
2
+ import { type KeycloakTokens } from "./types";
3
+ export type DirectLoginStatus = "idle" | "signing" | "signed-in" | "profile-incomplete" | "error";
4
+ export interface UseDirectLoginResult {
5
+ /**
6
+ * `profile-incomplete`: Keycloak took the wallet but the account has
7
+ * required actions left, and `error` is the `ProfileIncompleteError`. Open
8
+ * `kc.browserLoginUrl(...)` (system browser or WebView) so Keycloak's own
9
+ * forms run, then `signIn()` again.
10
+ */
11
+ status: DirectLoginStatus;
12
+ tokens: KeycloakTokens | null;
13
+ error: Error | null;
14
+ /**
15
+ * Sign in with the connected wallet through SIWEProvider and exchange the
16
+ * signature for tokens. Resolves null when the wallet or Keycloak refused.
17
+ */
18
+ signIn(): Promise<KeycloakTokens | null>;
19
+ refresh(): Promise<KeycloakTokens>;
20
+ signOut(): Promise<void>;
21
+ }
22
+ /**
23
+ * Direct (browserless) wallet login: SIWEProvider signs, the grant trades the
24
+ * signature for Keycloak tokens. Mount it under
25
+ * `<SIWEProvider {...kc.siweConfig(grant.onSign)}>`; every login attempt resets
26
+ * the kc nonce, which refetches it in SIWEProvider and GpgProvider alike.
27
+ */
28
+ export declare function useDirectLogin(grant: DirectGrant): UseDirectLoginResult;
29
+ //# sourceMappingURL=useDirectLogin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDirectLogin.d.ts","sourceRoot":"","sources":["../../src/keycloak/useDirectLogin.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAA0B,KAAK,cAAc,EAAE,MAAM,SAAS,CAAC;AAEtE,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,SAAS,GAAG,WAAW,GAAG,oBAAoB,GAAG,OAAO,CAAC;AAElG,MAAM,WAAW,oBAAoB;IACnC;;;;;OAKG;IACH,MAAM,EAAE,iBAAiB,CAAC;IAC1B,MAAM,EAAE,cAAc,GAAG,IAAI,CAAC;IAC9B,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB;;;OAGG;IACH,MAAM,IAAI,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACzC,OAAO,IAAI,OAAO,CAAC,cAAc,CAAC,CAAC;IACnC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1B;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,WAAW,GAAG,oBAAoB,CAyCvE"}
@@ -0,0 +1,26 @@
1
+ import { StatusState } from "../connectkit/siwe/SIWEContext";
2
+ export interface UseWalletLoginOptions {
3
+ /** sessionStorage key of the pending-login mark. One per button on a page. */
4
+ intentKey?: string;
5
+ /** How long a connect started by `login()` may still drive the signature. Default 90 s. */
6
+ intentTtlMs?: number;
7
+ }
8
+ export interface UseWalletLoginResult {
9
+ /** Connect if needed, then sign through SIWEProvider. One press, no Continue step. */
10
+ login(): Promise<void>;
11
+ status: StatusState;
12
+ isConnected: boolean;
13
+ address?: string;
14
+ }
15
+ /**
16
+ * A wallet login button's behaviour. Pressing it while disconnected opens the
17
+ * connect modal, or on a phone with ConnectKit's `mobile.preferredConnector`
18
+ * that wallet straight away, so call `login()` synchronously in the click
19
+ * handler. The press is marked in sessionStorage (the wallet bounce can reload
20
+ * the page); once the wallet connects the signature starts by itself.
21
+ * Only a fresh mark drives it, so a wallet that reconnects on a later visit
22
+ * never signs unasked. A phone browser opens the wallet for a signature only
23
+ * from a tap, so without one the user presses again.
24
+ */
25
+ export declare function useWalletLogin(opts?: UseWalletLoginOptions): UseWalletLoginResult;
26
+ //# sourceMappingURL=useWalletLogin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useWalletLogin.d.ts","sourceRoot":"","sources":["../../src/keycloak/useWalletLogin.ts"],"names":[],"mappings":"AAIA,OAAO,EAAe,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAG1E,MAAM,WAAW,qBAAqB;IACpC,8EAA8E;IAC9E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,2FAA2F;IAC3F,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,oBAAoB;IACnC,sFAAsF;IACtF,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,MAAM,EAAE,WAAW,CAAC;IACpB,WAAW,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAuBD;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,IAAI,GAAE,qBAA0B,GAAG,oBAAoB,CA6CrF"}
@@ -0,0 +1,4 @@
1
+ import type { UseWalletLoginOptions, UseWalletLoginResult } from "./useWalletLogin";
2
+ export type { UseWalletLoginOptions, UseWalletLoginResult };
3
+ export declare function useWalletLogin(_opts?: UseWalletLoginOptions): UseWalletLoginResult;
4
+ //# sourceMappingURL=useWalletLogin.native.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useWalletLogin.native.d.ts","sourceRoot":"","sources":["../../src/keycloak/useWalletLogin.native.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAEpF,YAAY,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,CAAC;AAE5D,wBAAgB,cAAc,CAAC,KAAK,CAAC,EAAE,qBAAqB,GAAG,oBAAoB,CAElF"}
@@ -0,0 +1,46 @@
1
+ /**
2
+ * The signer families a wallet sign-in message can be built for. The Keycloak
3
+ * SPIs (SHC `siww`, mpo `wallet`) content-sniff exactly these headers.
4
+ */
5
+ export type WalletMessageFamily = "eth" | "sol" | "sui" | "btc" | "gpg";
6
+ /** Ecosystem names the connectors use; accepted as aliases of the short family. */
7
+ export type WalletMessageEcosystem = "evm" | "solana" | "sui" | "bitcoin";
8
+ export type SignerFamily = WalletMessageFamily | WalletMessageEcosystem;
9
+ export interface WalletMessageOptions {
10
+ nonce: string;
11
+ /** Signer address. Required for every family except `gpg`, whose identity comes from the key. */
12
+ address?: string;
13
+ /**
14
+ * Host the user signs in to, checked against the realm's frontend host and
15
+ * `siww.allowedDomains` / `wallet.allowedDomains`. Defaults to
16
+ * `window.location.host`; pass it explicitly from a WebView or native page,
17
+ * where that host is empty or not the one the realm allows.
18
+ */
19
+ domain?: string;
20
+ /** Defaults to `window.location.origin`, or `https://<domain>` when the page has no origin. */
21
+ uri?: string;
22
+ /**
23
+ * Defaults to the family's statement; `null` or `""` omits it. `eth` then
24
+ * keeps the empty line EIP-4361 puts in its place.
25
+ */
26
+ statement?: string | null;
27
+ /** Defaults to now. */
28
+ issuedAt?: string;
29
+ /**
30
+ * `eth`: the chain id (default 1). Other families keep their fixed `Chain ID:`
31
+ * value (`solana:mainnet`, ...) unless given a string; a number there is a
32
+ * connector's synthetic chain id and is ignored.
33
+ */
34
+ chainId?: number | string;
35
+ version?: string;
36
+ }
37
+ /** Map an ecosystem name (`evm`, `solana`, `bitcoin`) or a short family to the short family. */
38
+ export declare function toWalletMessageFamily(family: SignerFamily): WalletMessageFamily;
39
+ /**
40
+ * Build the sign-in message for one signer family. This is the only builder in
41
+ * mpo web3: EIP-4361 for `eth` (EIP-55 address, no optional fields), SIWS for
42
+ * `sol`, and the same envelope for `sui`, `btc` and `gpg`, in the exact bytes
43
+ * the Keycloak verifiers parse.
44
+ */
45
+ export declare function buildWalletMessage(family: SignerFamily, opts: WalletMessageOptions): string;
46
+ //# sourceMappingURL=buildWalletMessage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildWalletMessage.d.ts","sourceRoot":"","sources":["../../src/message/buildWalletMessage.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;AAExE,mFAAmF;AACnF,MAAM,MAAM,sBAAsB,GAAG,KAAK,GAAG,QAAQ,GAAG,KAAK,GAAG,SAAS,CAAC;AAE1E,MAAM,MAAM,YAAY,GAAG,mBAAmB,GAAG,sBAAsB,CAAC;AAExE,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,iGAAiG;IACjG,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,+FAA+F;IAC/F,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,uBAAuB;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAiDD,gGAAgG;AAChG,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,YAAY,GAAG,mBAAmB,CAI/E;AAaD;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,oBAAoB,GAAG,MAAM,CAoC3F"}
@@ -0,0 +1,2 @@
1
+ export { buildWalletMessage, toWalletMessageFamily, type SignerFamily, type WalletMessageEcosystem, type WalletMessageFamily, type WalletMessageOptions, } from "./buildWalletMessage";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/message/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,qBAAqB,EACrB,KAAK,YAAY,EACjB,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,GAC1B,MAAM,sBAAsB,CAAC"}
@@ -1,11 +1,19 @@
1
1
  import { QueryClient } from "@tanstack/react-query";
2
+ import { type SIWEConfig } from "../connectkit";
2
3
  import type { PropsWithChildren } from "react";
3
4
  import { type Web3Config } from "./walletConfig";
4
5
  export interface WalletProviderProps extends PropsWithChildren {
5
6
  config: Web3Config;
6
7
  queryClient?: QueryClient;
8
+ /**
9
+ * Mounts a SIWEProvider around the ConnectKit modal, e.g.
10
+ * `kc.siweConfig(grant.onSign)` for `useDirectLogin`. It has to sit outside
11
+ * ConnectKitProvider, so a child cannot add its own.
12
+ */
13
+ siwe?: SIWEConfig;
7
14
  }
8
- export declare function WalletProvider({ children, config: web3Config, queryClient, }: WalletProviderProps): import("react/jsx-runtime").JSX.Element;
15
+ export declare function WalletProvider({ children, config: web3Config, queryClient, siwe, }: WalletProviderProps): import("react/jsx-runtime").JSX.Element;
16
+ export { useWalletBridge, type WalletBridgeContextValue } from "./walletBridge";
9
17
  export { defaultChains } from "./walletConfig";
10
18
  export { useWeb3Config, type Web3Config } from "./walletConfig";
11
19
  //# sourceMappingURL=WalletProvider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"WalletProvider.d.ts","sourceRoot":"","sources":["../../src/providers/WalletProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAuB,MAAM,uBAAuB,CAAC;AAGzE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAK/C,OAAO,EAAE,KAAK,UAAU,EAAoC,MAAM,gBAAgB,CAAC;AAEnF,MAAM,WAAW,mBAAoB,SAAQ,iBAAiB;IAC5D,MAAM,EAAE,UAAU,CAAC;IACnB,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B;AAWD,wBAAgB,cAAc,CAAC,EAC7B,QAAQ,EACR,MAAM,EAAE,UAAU,EAClB,WAAgC,GACjC,EAAE,mBAAmB,2CAmErB;AAED,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"WalletProvider.d.ts","sourceRoot":"","sources":["../../src/providers/WalletProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAuB,MAAM,uBAAuB,CAAC;AACzE,OAAO,EAAoC,KAAK,UAAU,EAAoB,MAAM,eAAe,CAAC;AAEpG,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAI/C,OAAO,EAAE,KAAK,UAAU,EAAoC,MAAM,gBAAgB,CAAC;AAEnF,MAAM,WAAW,mBAAoB,SAAQ,iBAAiB;IAC5D,MAAM,EAAE,UAAU,CAAC;IACnB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B;;;;OAIG;IACH,IAAI,CAAC,EAAE,UAAU,CAAC;CACnB;AAWD,wBAAgB,cAAc,CAAC,EAC7B,QAAQ,EACR,MAAM,EAAE,UAAU,EAClB,WAAgC,EAChC,IAAI,GACL,EAAE,mBAAmB,2CAyErB;AAED,OAAO,EAAE,eAAe,EAAE,KAAK,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAChF,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC"}
@@ -7,7 +7,7 @@ type WebViewSource = NonNullable<WebViewProps["source"]>;
7
7
  export interface WalletProviderProps extends PropsWithChildren {
8
8
  config: Web3Config;
9
9
  queryClient?: QueryClient;
10
- /** Override the WebView content (defaults to `config.webViewUrl`). */
10
+ /** Override the WebView content (defaults to `config.webViewUrl`); must be a hosted `{ uri }`. */
11
11
  webViewSource?: WebViewSource;
12
12
  }
13
13
  /** Native Solana surface, mirroring the operations web's wallet-adapter exposes. */
@@ -18,6 +18,7 @@ export interface SolanaWalletContextValue {
18
18
  }
19
19
  export declare function useSolanaWallet(): SolanaWalletContextValue;
20
20
  export declare function WalletProvider({ children, config: web3Config, queryClient, webViewSource, }: WalletProviderProps): import("react/jsx-runtime").JSX.Element;
21
+ export { useWalletBridge, type WalletBridgeContextValue } from "./walletBridge";
21
22
  export { defaultChains } from "./walletConfig";
22
23
  export { useWeb3Config, type Web3Config } from "./walletConfig";
23
24
  //# sourceMappingURL=WalletProvider.native.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"WalletProvider.native.d.ts","sourceRoot":"","sources":["../../src/providers/WalletProvider.native.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAuB,MAAM,uBAAuB,CAAC;AACzE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAG/C,OAAO,EAAqC,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAG5F,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAMtD,OAAO,EAAE,KAAK,UAAU,EAAoC,MAAM,gBAAgB,CAAC;AAEnF,KAAK,aAAa,GAAG,WAAW,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC;AAMzD,MAAM,WAAW,mBAAoB,SAAQ,iBAAiB;IAC5D,MAAM,EAAE,UAAU,CAAC;IACnB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,sEAAsE;IACtE,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B;AAED,oFAAoF;AACpF,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,YAAY,CAAC;IACrB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,EAAE,OAAO,CAAC;CACpB;AAID,wBAAgB,eAAe,IAAI,wBAAwB,CAI1D;AAID,wBAAgB,cAAc,CAAC,EAC7B,QAAQ,EACR,MAAM,EAAE,UAAU,EAClB,WAAgC,EAChC,aAAa,GACd,EAAE,mBAAmB,2CA+IrB;AAUD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"WalletProvider.native.d.ts","sourceRoot":"","sources":["../../src/providers/WalletProvider.native.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAuB,MAAM,uBAAuB,CAAC;AACzE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAG/C,OAAO,EAAqC,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAK5F,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAetD,OAAO,EAAE,KAAK,UAAU,EAAoC,MAAM,gBAAgB,CAAC;AAEnF,KAAK,aAAa,GAAG,WAAW,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC;AAMzD,MAAM,WAAW,mBAAoB,SAAQ,iBAAiB;IAC5D,MAAM,EAAE,UAAU,CAAC;IACnB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,kGAAkG;IAClG,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B;AAED,oFAAoF;AACpF,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,YAAY,CAAC;IACrB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,EAAE,OAAO,CAAC;CACpB;AAID,wBAAgB,eAAe,IAAI,wBAAwB,CAI1D;AAeD,wBAAgB,cAAc,CAAC,EAC7B,QAAQ,EACR,MAAM,EAAE,UAAU,EAClB,WAAgC,EAChC,aAAa,GACd,EAAE,mBAAmB,2CA8KrB;AAUD,OAAO,EAAE,eAAe,EAAE,KAAK,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAChF,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC"}
@@ -1,2 +1,2 @@
1
- export { WalletProvider, useWeb3Config, defaultChains, type WalletProviderProps, type Web3Config, } from "./WalletProvider";
1
+ export { WalletProvider, useWeb3Config, defaultChains, useWalletBridge, type WalletBridgeContextValue, type WalletProviderProps, type Web3Config, } from "./WalletProvider";
2
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,aAAa,EACb,aAAa,EACb,KAAK,mBAAmB,EACxB,KAAK,UAAU,GAChB,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,aAAa,EACb,aAAa,EACb,eAAe,EACf,KAAK,wBAAwB,EAC7B,KAAK,mBAAmB,EACxB,KAAK,UAAU,GAChB,MAAM,kBAAkB,CAAC"}
@@ -1,11 +1,36 @@
1
1
  /**
2
- * Wallet hand-off URL classification for the native WebView. The WebView loads
3
- * trusted local content (file://); when its ConnectKit flow tries to
4
- * open a wallet app it navigates to a wallet custom-scheme or universal link —
5
- * those must be handed to the OS via Linking.openURL, not loaded in the WebView.
2
+ * Wallet hand-off for the native WebView. The WebView shows the hosted wallet
3
+ * page; when its flow opens a wallet app it navigates to a wallet custom
4
+ * scheme or universal link, or opens one in a new window. Those go to the OS
5
+ * through Linking.openURL and are never loaded in the WebView.
6
6
  */
7
+ /** Custom schemes that open a wallet app. docs/bridge-protocol.md lists the same. */
8
+ export declare const WALLET_SCHEMES: readonly string[];
9
+ /** Hosts (and subdomains) of wallet universal links. docs/bridge-protocol.md lists the same. */
10
+ export declare const WALLET_UNIVERSAL_HOSTS: readonly string[];
7
11
  /** True when a WebView navigation should be opened in an external wallet app. */
8
12
  export declare function shouldOpenExternally(url: string): boolean;
13
+ /** `load` in the WebView, hand to the OS (`external`), or drop (`block`). */
14
+ export type NavigationDecision = "load" | "external" | "block";
15
+ /**
16
+ * Decide a navigation in the wallet WebView (`onShouldStartLoadWithRequest`).
17
+ * The top frame never leaves the hosted page's origin: the bridge would
18
+ * otherwise hand its messages, tokens included, to whatever page loaded next.
19
+ * Other http(s) pages open in the system browser; frames are the page's own
20
+ * business.
21
+ */
22
+ export declare function decideNavigation(url: string, pageOrigin: string, isTopFrame?: boolean): NavigationDecision;
23
+ /**
24
+ * Decide a `window.open` / `target=_blank` navigation (`onOpenWindow`). A new
25
+ * window never opens inside the app: wallet links and web pages go to the OS.
26
+ */
27
+ export declare function decideNewWindow(url: string): NavigationDecision;
9
28
  /** Parse the query params of an inbound app-link return (e.g. from a wallet redirect). */
10
29
  export declare function parseWalletReturn(url: string): Record<string, string> | null;
30
+ /**
31
+ * True when `url` is `base` or below it: `myapp://wallet-return?x=1` and
32
+ * `myapp://wallet-return/done` are under `myapp://wallet-return`,
33
+ * `myapp://wallet-returned` is not.
34
+ */
35
+ export declare function isUnderUrl(url: string, base: string): boolean;
11
36
  //# sourceMappingURL=deepLink.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"deepLink.d.ts","sourceRoot":"","sources":["../../../src/providers/native/deepLink.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AA2BH,iFAAiF;AACjF,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAazD;AAED,0FAA0F;AAC1F,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAW5E"}
1
+ {"version":3,"file":"deepLink.d.ts","sourceRoot":"","sources":["../../../src/providers/native/deepLink.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AAEH,qFAAqF;AACrF,eAAO,MAAM,cAAc,EAAE,SAAS,MAAM,EAgB3C,CAAC;AAEF,gGAAgG;AAChG,eAAO,MAAM,sBAAsB,EAAE,SAAS,MAAM,EASnD,CAAC;AAIF,iFAAiF;AACjF,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAQzD;AAED,6EAA6E;AAC7E,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,UAAU,GAAG,OAAO,CAAC;AAE/D;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,MAAM,EAClB,UAAU,UAAO,GAChB,kBAAkB,CAWpB;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB,CAQ/D;AAED,0FAA0F;AAC1F,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAE5E;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAI7D"}
@@ -1,11 +1,5 @@
1
1
  import type { Web3Config } from "../walletConfig";
2
- /**
3
- * Build the JS the native side runs inside the WebView (via `injectJavaScript`)
4
- * to deliver one inbound bridge message. The raw string is embedded with
5
- * JSON.stringify so quotes/newlines/backslashes survive intact. The trailing
6
- * `true;` is required by react-native-webview's injectJavaScript contract.
7
- */
8
- export declare function buildInjectScript(raw: string): string;
2
+ export { buildInjectScript } from "../../bridge/nativeHost";
9
3
  /**
10
4
  * Build the JS injected *before* the WebView content loads
11
5
  * (`injectedJavaScriptBeforeContentLoaded`) to publish the host config as
@@ -1 +1 @@
1
- {"version":3,"file":"inject.d.ts","sourceRoot":"","sources":["../../../src/providers/native/inject.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAElD;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAErD;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,UAAU,GAAG;IAAE,UAAU,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,MAAM,CAE1F"}
1
+ {"version":3,"file":"inject.d.ts","sourceRoot":"","sources":["../../../src/providers/native/inject.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAElD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAE5D;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,UAAU,GAAG;IAAE,UAAU,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,MAAM,CAE1F"}
@@ -0,0 +1,17 @@
1
+ import type { AuthBridge } from "../bridge/AuthBridge";
2
+ import type { BridgeClient } from "../bridge/BridgeClient";
3
+ import type { GpgBridge } from "../bridge/GpgBridge";
4
+ import type { SolanaBridge } from "../bridge/SolanaBridge";
5
+ import type { SuiBridge } from "../bridge/SuiBridge";
6
+ /** Every bridge namespace of the native WalletProvider's hosted wallet page. */
7
+ export interface WalletBridgeContextValue {
8
+ client: BridgeClient;
9
+ solana: SolanaBridge;
10
+ sui: SuiBridge;
11
+ gpg: GpgBridge;
12
+ auth: AuthBridge;
13
+ }
14
+ export declare const WalletBridgeContext: import("react").Context<WalletBridgeContextValue | null>;
15
+ /** Native only: on web the wallet runs in the page itself and there is no bridge. */
16
+ export declare function useWalletBridge(): WalletBridgeContextValue;
17
+ //# sourceMappingURL=walletBridge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"walletBridge.d.ts","sourceRoot":"","sources":["../../src/providers/walletBridge.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAErD,gFAAgF;AAChF,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,YAAY,CAAC;IACrB,GAAG,EAAE,SAAS,CAAC;IACf,GAAG,EAAE,SAAS,CAAC;IACf,IAAI,EAAE,UAAU,CAAC;CAClB;AAED,eAAO,MAAM,mBAAmB,0DAAuD,CAAC;AAExF,qFAAqF;AACrF,wBAAgB,eAAe,IAAI,wBAAwB,CAI1D"}
@@ -1,4 +1,5 @@
1
1
  import type { Chain } from "viem";
2
+ import type { AuthKeycloakConfig, AuthOnboardingConfig } from "../bridge/authTypes";
2
3
  /**
3
4
  * Shared config seam for both platform variants of WalletProvider. Keeping the
4
5
  * type + context here (rather than in either variant) means web and native share
@@ -32,8 +33,24 @@ export interface Web3Config {
32
33
  suiRpcUrl?: string;
33
34
  /** E2E only (native): route connect through the in-WebView mock wallet. */
34
35
  mockWallet?: boolean;
35
- /** Native: URL serving the wallet WebView HTML (preferred over the inline string). */
36
+ /**
37
+ * Native: https URL serving `assets/webview.html`. Its host is the sign-in
38
+ * message's domain, so it must be in the realm's `siww.allowedDomains` /
39
+ * `wallet.allowedDomains` and in the client's web origins. Plain http is
40
+ * accepted only on loopback and 10.0.2.2, in development builds.
41
+ */
36
42
  webViewUrl?: string;
43
+ /**
44
+ * Native: the app link wallets send the user back to, e.g.
45
+ * `myapp://wallet-return`. Returns under it reach the page as
46
+ * `sys.deepLinkReturn`; no other app link does.
47
+ */
48
+ walletReturnUrl?: string;
49
+ /** Native: the Keycloak client `useWalletBridge().auth` signs in with when a call names none. */
50
+ auth?: {
51
+ keycloak?: AuthKeycloakConfig;
52
+ onboarding?: AuthOnboardingConfig;
53
+ };
37
54
  }
38
55
  /**
39
56
  * Resolve the active chain list for a Web3Config: apply the testnet filter,
@@ -1 +1 @@
1
- {"version":3,"file":"walletConfig.d.ts","sourceRoot":"","sources":["../../src/providers/walletConfig.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,MAAM,CAAC;AAGlC;;;;;GAKG;AACH,eAAO,MAAM,aAAa,EAAE,SAAS,CAAC,KAAK,EAAE,GAAG,KAAK,EAAE,CAOtD,CAAC;AAEF,MAAM,WAAW,UAAU;IACzB,uFAAuF;IACvF,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,SAAS,CAAC,KAAK,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC;IACtC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,sDAAsD;IACtD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mDAAmD;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,2EAA2E;IAC3E,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,sFAAsF;IACtF,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,UAAU,GAAG,SAAS,CAAC,KAAK,EAAE,GAAG,KAAK,EAAE,CAAC,CAgB9E;AAED,eAAO,MAAM,iBAAiB,4CAAyC,CAAC;AAExE,wBAAgB,aAAa,IAAI,UAAU,CAM1C"}
1
+ {"version":3,"file":"walletConfig.d.ts","sourceRoot":"","sources":["../../src/providers/walletConfig.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,MAAM,CAAC;AAElC,OAAO,KAAK,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAEpF;;;;;GAKG;AACH,eAAO,MAAM,aAAa,EAAE,SAAS,CAAC,KAAK,EAAE,GAAG,KAAK,EAAE,CAOtD,CAAC;AAEF,MAAM,WAAW,UAAU;IACzB,uFAAuF;IACvF,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,SAAS,CAAC,KAAK,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC;IACtC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,sDAAsD;IACtD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mDAAmD;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,2EAA2E;IAC3E,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iGAAiG;IACjG,IAAI,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,kBAAkB,CAAC;QAAC,UAAU,CAAC,EAAE,oBAAoB,CAAA;KAAE,CAAC;CAC7E;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,UAAU,GAAG,SAAS,CAAC,KAAK,EAAE,GAAG,KAAK,EAAE,CAAC,CAgB9E;AAED,eAAO,MAAM,iBAAiB,4CAAyC,CAAC;AAExE,wBAAgB,aAAa,IAAI,UAAU,CAM1C"}
@@ -1 +1 @@
1
- {"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../src/siws/message.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,iBAAiB;IAChC,gEAAgE;IAChE,MAAM,EAAE,MAAM,CAAC;IACf,wDAAwD;IACxD,OAAO,EAAE,MAAM,CAAC;IAChB,kDAAkD;IAClD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,2CAA2C;IAC3C,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,2DAA2D;IAC3D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,mFAAmF;IACnF,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,iBAAiB,GAAG,MAAM,CAuBnE"}
1
+ {"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../src/siws/message.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,iBAAiB;IAChC,gEAAgE;IAChE,MAAM,EAAE,MAAM,CAAC;IACf,wDAAwD;IACxD,OAAO,EAAE,MAAM,CAAC;IAChB,kDAAkD;IAClD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,2CAA2C;IAC3C,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,2DAA2D;IAC3D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,mFAAmF;IACnF,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,iBAAiB,GAAG,MAAM,CAEnE"}
package/types/solana.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export { connectSolanaWallet, findSolanaSigner, injectedSolanaSigner, solanaChainFromRpcUrl, solanaClient, solanaRpcUrls, standardSolanaSigner, transferSolInstruction, SolanaConfirmationError, type SolanaChain, type SolanaClient, type SolanaClientConfig, type SolanaCluster, type SolanaConfirmationFailure, type SolanaConfirmOptions, type SolanaSigner, type SolanaSubmission, } from "./clients/solana";
1
+ export { connectSolanaWallet, findSolanaSigner, injectedSolanaSigner, solanaChainFromRpcUrl, solanaClient, solanaRpcUrls, standardSolanaSigner, transferSolInstruction, SolanaConfirmationError, type SolanaChain, type SolanaClient, type SolanaClientConfig, type SolanaCluster, type SolanaCommitmentStatus, type SolanaConfirmationFailure, type SolanaConfirmOptions, type SolanaSigner, type SolanaSubmission, } from "./clients/solana";
2
2
  export { useSolanaClient } from "./clients/useSolanaClient";
3
3
  export { getSolanaWallets, getStandardWallets, type StandardWallet, type StandardWalletAccount, } from "./clients/walletStandard";
4
4
  //# sourceMappingURL=solana.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"solana.d.ts","sourceRoot":"","sources":["../src/solana.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,oBAAoB,EACpB,qBAAqB,EACrB,YAAY,EACZ,aAAa,EACb,oBAAoB,EACpB,sBAAsB,EACtB,uBAAuB,EACvB,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,aAAa,EAClB,KAAK,yBAAyB,EAC9B,KAAK,oBAAoB,EACzB,KAAK,YAAY,EACjB,KAAK,gBAAgB,GACtB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,KAAK,cAAc,EACnB,KAAK,qBAAqB,GAC3B,MAAM,0BAA0B,CAAC"}
1
+ {"version":3,"file":"solana.d.ts","sourceRoot":"","sources":["../src/solana.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,oBAAoB,EACpB,qBAAqB,EACrB,YAAY,EACZ,aAAa,EACb,oBAAoB,EACpB,sBAAsB,EACtB,uBAAuB,EACvB,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,aAAa,EAClB,KAAK,sBAAsB,EAC3B,KAAK,yBAAyB,EAC9B,KAAK,oBAAoB,EACzB,KAAK,YAAY,EACjB,KAAK,gBAAgB,GACtB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,KAAK,cAAc,EACnB,KAAK,qBAAqB,GAC3B,MAAM,0BAA0B,CAAC"}