@multiplatform.one/web3 7.24.0 → 7.26.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 (363) hide show
  1. package/README.md +33 -0
  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/SuiBridge.cjs +51 -0
  15. package/dist/cjs/bridge/SuiBridge.native.js +99 -0
  16. package/dist/cjs/bridge/SuiBridge.native.js.map +1 -0
  17. package/dist/cjs/bridge/authTypes.cjs +28 -0
  18. package/dist/cjs/bridge/authTypes.native.js +31 -0
  19. package/dist/cjs/bridge/authTypes.native.js.map +1 -0
  20. package/dist/cjs/bridge/core.cjs +65 -0
  21. package/dist/cjs/bridge/core.native.js +68 -0
  22. package/dist/cjs/bridge/core.native.js.map +1 -0
  23. package/dist/cjs/bridge/hosting.cjs +91 -0
  24. package/dist/cjs/bridge/hosting.native.js +117 -0
  25. package/dist/cjs/bridge/hosting.native.js.map +1 -0
  26. package/dist/cjs/bridge/index.cjs +3 -17
  27. package/dist/cjs/bridge/index.native.js +2 -16
  28. package/dist/cjs/bridge/index.native.js.map +1 -1
  29. package/dist/cjs/bridge/nativeHost.cjs +91 -0
  30. package/dist/cjs/bridge/nativeHost.native.js +118 -0
  31. package/dist/cjs/bridge/nativeHost.native.js.map +1 -0
  32. package/dist/cjs/bridge/protocol.cjs +30 -1
  33. package/dist/cjs/bridge/protocol.native.js +147 -1
  34. package/dist/cjs/bridge/protocol.native.js.map +1 -1
  35. package/dist/cjs/core/family.cjs +88 -0
  36. package/dist/cjs/core/family.native.js +115 -0
  37. package/dist/cjs/core/family.native.js.map +1 -0
  38. package/dist/cjs/core/index.cjs +41 -0
  39. package/dist/cjs/core/index.native.js +44 -0
  40. package/dist/cjs/core/index.native.js.map +1 -0
  41. package/dist/cjs/core/message.cjs +89 -0
  42. package/dist/cjs/core/message.native.js +104 -0
  43. package/dist/cjs/core/message.native.js.map +1 -0
  44. package/dist/cjs/core/names.cjs +51 -0
  45. package/dist/cjs/core/names.native.js +95 -0
  46. package/dist/cjs/core/names.native.js.map +1 -0
  47. package/dist/cjs/core/react.cjs +48 -0
  48. package/dist/cjs/core/react.native.js +52 -0
  49. package/dist/cjs/core/react.native.js.map +1 -0
  50. package/dist/cjs/core/store.cjs +450 -0
  51. package/dist/cjs/core/store.native.js +637 -0
  52. package/dist/cjs/core/store.native.js.map +1 -0
  53. package/dist/cjs/core/types.cjs +18 -0
  54. package/dist/cjs/core/types.native.js +21 -0
  55. package/dist/cjs/core/types.native.js.map +1 -0
  56. package/dist/cjs/index.cjs +3 -1
  57. package/dist/cjs/index.native.js +2 -0
  58. package/dist/cjs/index.native.js.map +1 -1
  59. package/dist/cjs/providers/WalletProvider.cjs +2 -0
  60. package/dist/cjs/providers/WalletProvider.native.js +123 -90
  61. package/dist/cjs/providers/WalletProvider.native.js.map +1 -1
  62. package/dist/cjs/providers/index.cjs +1 -0
  63. package/dist/cjs/providers/index.native.js +1 -0
  64. package/dist/cjs/providers/index.native.js.map +1 -1
  65. package/dist/cjs/providers/native/deepLink.cjs +40 -23
  66. package/dist/cjs/providers/native/deepLink.native.js +43 -25
  67. package/dist/cjs/providers/native/deepLink.native.js.map +1 -1
  68. package/dist/cjs/providers/native/inject.cjs +2 -4
  69. package/dist/cjs/providers/native/inject.native.js +2 -4
  70. package/dist/cjs/providers/native/inject.native.js.map +1 -1
  71. package/dist/cjs/providers/walletBridge.cjs +35 -0
  72. package/dist/cjs/providers/walletBridge.native.js +38 -0
  73. package/dist/cjs/providers/walletBridge.native.js.map +1 -0
  74. package/dist/cjs/providers/walletConfig.native.js.map +1 -1
  75. package/dist/esm/bridge/AuthBridge.mjs +99 -0
  76. package/dist/esm/bridge/AuthBridge.mjs.map +1 -0
  77. package/dist/esm/bridge/AuthBridge.native.js +158 -0
  78. package/dist/esm/bridge/AuthBridge.native.js.map +1 -0
  79. package/dist/esm/bridge/BridgeClient.mjs +13 -10
  80. package/dist/esm/bridge/BridgeClient.mjs.map +1 -1
  81. package/dist/esm/bridge/BridgeClient.native.js +18 -13
  82. package/dist/esm/bridge/BridgeClient.native.js.map +1 -1
  83. package/dist/esm/bridge/BridgeHost.mjs +12 -4
  84. package/dist/esm/bridge/BridgeHost.mjs.map +1 -1
  85. package/dist/esm/bridge/BridgeHost.native.js +12 -4
  86. package/dist/esm/bridge/BridgeHost.native.js.map +1 -1
  87. package/dist/esm/bridge/GpgBridge.mjs +36 -0
  88. package/dist/esm/bridge/GpgBridge.mjs.map +1 -0
  89. package/dist/esm/bridge/GpgBridge.native.js +83 -0
  90. package/dist/esm/bridge/GpgBridge.native.js.map +1 -0
  91. package/dist/esm/bridge/SuiBridge.mjs +26 -0
  92. package/dist/esm/bridge/SuiBridge.mjs.map +1 -0
  93. package/dist/esm/bridge/SuiBridge.native.js +71 -0
  94. package/dist/esm/bridge/SuiBridge.native.js.map +1 -0
  95. package/dist/esm/bridge/authTypes.mjs +3 -0
  96. package/dist/esm/bridge/authTypes.mjs.map +1 -0
  97. package/dist/esm/bridge/authTypes.native.js +3 -0
  98. package/dist/esm/bridge/authTypes.native.js.map +1 -0
  99. package/dist/esm/bridge/core.mjs +17 -0
  100. package/dist/esm/bridge/core.mjs.map +1 -0
  101. package/dist/esm/bridge/core.native.js +17 -0
  102. package/dist/esm/bridge/core.native.js.map +1 -0
  103. package/dist/esm/bridge/hosting.mjs +62 -0
  104. package/dist/esm/bridge/hosting.mjs.map +1 -0
  105. package/dist/esm/bridge/hosting.native.js +85 -0
  106. package/dist/esm/bridge/hosting.native.js.map +1 -0
  107. package/dist/esm/bridge/index.mjs +2 -9
  108. package/dist/esm/bridge/index.mjs.map +1 -1
  109. package/dist/esm/bridge/index.native.js +2 -9
  110. package/dist/esm/bridge/index.native.js.map +1 -1
  111. package/dist/esm/bridge/nativeHost.mjs +65 -0
  112. package/dist/esm/bridge/nativeHost.mjs.map +1 -0
  113. package/dist/esm/bridge/nativeHost.native.js +89 -0
  114. package/dist/esm/bridge/nativeHost.native.js.map +1 -0
  115. package/dist/esm/bridge/protocol.mjs +28 -2
  116. package/dist/esm/bridge/protocol.mjs.map +1 -1
  117. package/dist/esm/bridge/protocol.native.js +145 -2
  118. package/dist/esm/bridge/protocol.native.js.map +1 -1
  119. package/dist/esm/core/family.mjs +62 -0
  120. package/dist/esm/core/family.mjs.map +1 -0
  121. package/dist/esm/core/family.native.js +86 -0
  122. package/dist/esm/core/family.native.js.map +1 -0
  123. package/dist/esm/core/index.mjs +7 -0
  124. package/dist/esm/core/index.mjs.map +1 -0
  125. package/dist/esm/core/index.native.js +7 -0
  126. package/dist/esm/core/index.native.js.map +1 -0
  127. package/dist/esm/core/message.mjs +63 -0
  128. package/dist/esm/core/message.mjs.map +1 -0
  129. package/dist/esm/core/message.native.js +75 -0
  130. package/dist/esm/core/message.native.js.map +1 -0
  131. package/dist/esm/core/names.mjs +25 -0
  132. package/dist/esm/core/names.mjs.map +1 -0
  133. package/dist/esm/core/names.native.js +66 -0
  134. package/dist/esm/core/names.native.js.map +1 -0
  135. package/dist/esm/core/react.mjs +21 -0
  136. package/dist/esm/core/react.mjs.map +1 -0
  137. package/dist/esm/core/react.native.js +22 -0
  138. package/dist/esm/core/react.native.js.map +1 -0
  139. package/dist/esm/core/store.mjs +424 -0
  140. package/dist/esm/core/store.mjs.map +1 -0
  141. package/dist/esm/core/store.native.js +608 -0
  142. package/dist/esm/core/store.native.js.map +1 -0
  143. package/dist/esm/core/types.mjs +2 -0
  144. package/dist/esm/core/types.mjs.map +1 -0
  145. package/dist/esm/core/types.native.js +2 -0
  146. package/dist/esm/core/types.native.js.map +1 -0
  147. package/dist/esm/index.mjs +3 -2
  148. package/dist/esm/index.mjs.map +1 -1
  149. package/dist/esm/index.native.js +3 -2
  150. package/dist/esm/index.native.js.map +1 -1
  151. package/dist/esm/providers/WalletProvider.mjs +2 -1
  152. package/dist/esm/providers/WalletProvider.mjs.map +1 -1
  153. package/dist/esm/providers/WalletProvider.native.js +125 -93
  154. package/dist/esm/providers/WalletProvider.native.js.map +1 -1
  155. package/dist/esm/providers/index.mjs +2 -2
  156. package/dist/esm/providers/index.mjs.map +1 -1
  157. package/dist/esm/providers/index.native.js +2 -2
  158. package/dist/esm/providers/index.native.js.map +1 -1
  159. package/dist/esm/providers/native/deepLink.mjs +36 -24
  160. package/dist/esm/providers/native/deepLink.mjs.map +1 -1
  161. package/dist/esm/providers/native/deepLink.native.js +39 -26
  162. package/dist/esm/providers/native/deepLink.native.js.map +1 -1
  163. package/dist/esm/providers/native/inject.mjs +1 -3
  164. package/dist/esm/providers/native/inject.mjs.map +1 -1
  165. package/dist/esm/providers/native/inject.native.js +1 -3
  166. package/dist/esm/providers/native/inject.native.js.map +1 -1
  167. package/dist/esm/providers/walletBridge.mjs +9 -0
  168. package/dist/esm/providers/walletBridge.mjs.map +1 -0
  169. package/dist/esm/providers/walletBridge.native.js +9 -0
  170. package/dist/esm/providers/walletBridge.native.js.map +1 -0
  171. package/dist/esm/providers/walletConfig.mjs.map +1 -1
  172. package/dist/esm/providers/walletConfig.native.js.map +1 -1
  173. package/dist/jsx/bridge/AuthBridge.mjs +99 -0
  174. package/dist/jsx/bridge/AuthBridge.mjs.map +1 -0
  175. package/dist/jsx/bridge/AuthBridge.native.js +186 -0
  176. package/dist/jsx/bridge/AuthBridge.native.js.map +1 -0
  177. package/dist/jsx/bridge/BridgeClient.mjs +13 -10
  178. package/dist/jsx/bridge/BridgeClient.mjs.map +1 -1
  179. package/dist/jsx/bridge/BridgeClient.native.js +17 -12
  180. package/dist/jsx/bridge/BridgeClient.native.js.map +1 -1
  181. package/dist/jsx/bridge/BridgeHost.mjs +12 -4
  182. package/dist/jsx/bridge/BridgeHost.mjs.map +1 -1
  183. package/dist/jsx/bridge/BridgeHost.native.js +11 -3
  184. package/dist/jsx/bridge/BridgeHost.native.js.map +1 -1
  185. package/dist/jsx/bridge/GpgBridge.mjs +36 -0
  186. package/dist/jsx/bridge/GpgBridge.mjs.map +1 -0
  187. package/dist/jsx/bridge/GpgBridge.native.js +111 -0
  188. package/dist/jsx/bridge/GpgBridge.native.js.map +1 -0
  189. package/dist/jsx/bridge/SuiBridge.mjs +26 -0
  190. package/dist/jsx/bridge/SuiBridge.mjs.map +1 -0
  191. package/dist/jsx/bridge/SuiBridge.native.js +99 -0
  192. package/dist/jsx/bridge/SuiBridge.native.js.map +1 -0
  193. package/dist/jsx/bridge/authTypes.mjs +3 -0
  194. package/dist/jsx/bridge/authTypes.mjs.map +1 -0
  195. package/dist/jsx/bridge/authTypes.native.js +31 -0
  196. package/dist/jsx/bridge/authTypes.native.js.map +1 -0
  197. package/dist/jsx/bridge/core.mjs +17 -0
  198. package/dist/jsx/bridge/core.mjs.map +1 -0
  199. package/dist/jsx/bridge/core.native.js +68 -0
  200. package/dist/jsx/bridge/core.native.js.map +1 -0
  201. package/dist/jsx/bridge/hosting.mjs +62 -0
  202. package/dist/jsx/bridge/hosting.mjs.map +1 -0
  203. package/dist/jsx/bridge/hosting.native.js +117 -0
  204. package/dist/jsx/bridge/hosting.native.js.map +1 -0
  205. package/dist/jsx/bridge/index.mjs +2 -9
  206. package/dist/jsx/bridge/index.mjs.map +1 -1
  207. package/dist/jsx/bridge/index.native.js +2 -16
  208. package/dist/jsx/bridge/index.native.js.map +1 -1
  209. package/dist/jsx/bridge/nativeHost.mjs +65 -0
  210. package/dist/jsx/bridge/nativeHost.mjs.map +1 -0
  211. package/dist/jsx/bridge/nativeHost.native.js +118 -0
  212. package/dist/jsx/bridge/nativeHost.native.js.map +1 -0
  213. package/dist/jsx/bridge/protocol.mjs +28 -2
  214. package/dist/jsx/bridge/protocol.mjs.map +1 -1
  215. package/dist/jsx/bridge/protocol.native.js +147 -1
  216. package/dist/jsx/bridge/protocol.native.js.map +1 -1
  217. package/dist/jsx/core/family.mjs +62 -0
  218. package/dist/jsx/core/family.mjs.map +1 -0
  219. package/dist/jsx/core/family.native.js +115 -0
  220. package/dist/jsx/core/family.native.js.map +1 -0
  221. package/dist/jsx/core/index.mjs +7 -0
  222. package/dist/jsx/core/index.mjs.map +1 -0
  223. package/dist/jsx/core/index.native.js +44 -0
  224. package/dist/jsx/core/index.native.js.map +1 -0
  225. package/dist/jsx/core/message.mjs +63 -0
  226. package/dist/jsx/core/message.mjs.map +1 -0
  227. package/dist/jsx/core/message.native.js +104 -0
  228. package/dist/jsx/core/message.native.js.map +1 -0
  229. package/dist/jsx/core/names.mjs +25 -0
  230. package/dist/jsx/core/names.mjs.map +1 -0
  231. package/dist/jsx/core/names.native.js +95 -0
  232. package/dist/jsx/core/names.native.js.map +1 -0
  233. package/dist/jsx/core/react.mjs +21 -0
  234. package/dist/jsx/core/react.mjs.map +1 -0
  235. package/dist/jsx/core/react.native.js +52 -0
  236. package/dist/jsx/core/react.native.js.map +1 -0
  237. package/dist/jsx/core/store.mjs +424 -0
  238. package/dist/jsx/core/store.mjs.map +1 -0
  239. package/dist/jsx/core/store.native.js +637 -0
  240. package/dist/jsx/core/store.native.js.map +1 -0
  241. package/dist/jsx/core/types.mjs +2 -0
  242. package/dist/jsx/core/types.mjs.map +1 -0
  243. package/dist/jsx/core/types.native.js +21 -0
  244. package/dist/jsx/core/types.native.js.map +1 -0
  245. package/dist/jsx/index.js +3 -2
  246. package/dist/jsx/index.js.map +1 -1
  247. package/dist/jsx/index.mjs +3 -2
  248. package/dist/jsx/index.mjs.map +1 -1
  249. package/dist/jsx/index.native.js +2 -0
  250. package/dist/jsx/index.native.js.map +1 -1
  251. package/dist/jsx/providers/WalletProvider.mjs +2 -1
  252. package/dist/jsx/providers/WalletProvider.mjs.map +1 -1
  253. package/dist/jsx/providers/WalletProvider.native.js +123 -90
  254. package/dist/jsx/providers/WalletProvider.native.js.map +1 -1
  255. package/dist/jsx/providers/index.mjs +2 -2
  256. package/dist/jsx/providers/index.mjs.map +1 -1
  257. package/dist/jsx/providers/index.native.js +1 -0
  258. package/dist/jsx/providers/index.native.js.map +1 -1
  259. package/dist/jsx/providers/native/deepLink.mjs +36 -24
  260. package/dist/jsx/providers/native/deepLink.mjs.map +1 -1
  261. package/dist/jsx/providers/native/deepLink.native.js +43 -25
  262. package/dist/jsx/providers/native/deepLink.native.js.map +1 -1
  263. package/dist/jsx/providers/native/inject.mjs +1 -3
  264. package/dist/jsx/providers/native/inject.mjs.map +1 -1
  265. package/dist/jsx/providers/native/inject.native.js +2 -4
  266. package/dist/jsx/providers/native/inject.native.js.map +1 -1
  267. package/dist/jsx/providers/walletBridge.mjs +9 -0
  268. package/dist/jsx/providers/walletBridge.mjs.map +1 -0
  269. package/dist/jsx/providers/walletBridge.native.js +38 -0
  270. package/dist/jsx/providers/walletBridge.native.js.map +1 -0
  271. package/dist/jsx/providers/walletConfig.mjs.map +1 -1
  272. package/dist/jsx/providers/walletConfig.native.js.map +1 -1
  273. package/docs/bridge-protocol.md +485 -0
  274. package/package.json +14 -6
  275. package/src/bridge/AuthBridge.ts +146 -0
  276. package/src/bridge/BridgeClient.spec.ts +12 -0
  277. package/src/bridge/BridgeClient.ts +15 -10
  278. package/src/bridge/BridgeHost.spec.ts +20 -4
  279. package/src/bridge/BridgeHost.ts +16 -5
  280. package/src/bridge/GpgBridge.ts +49 -0
  281. package/src/bridge/SuiBridge.ts +34 -0
  282. package/src/bridge/authTypes.ts +76 -0
  283. package/src/bridge/core.ts +42 -0
  284. package/src/bridge/hosting.spec.ts +98 -0
  285. package/src/bridge/hosting.ts +99 -0
  286. package/src/bridge/index.ts +1 -8
  287. package/src/bridge/nativeHost.spec.ts +165 -0
  288. package/src/bridge/nativeHost.ts +120 -0
  289. package/src/bridge/protocol.spec.ts +24 -1
  290. package/src/bridge/protocol.ts +44 -1
  291. package/src/core/family.spec.ts +117 -0
  292. package/src/core/family.ts +103 -0
  293. package/src/core/imports.spec.ts +82 -0
  294. package/src/core/index.ts +47 -0
  295. package/src/core/message.spec.ts +178 -0
  296. package/src/core/message.ts +119 -0
  297. package/src/core/names.ts +29 -0
  298. package/src/core/react.spec.tsx +75 -0
  299. package/src/core/react.ts +34 -0
  300. package/src/core/store.spec.ts +890 -0
  301. package/src/core/store.ts +558 -0
  302. package/src/core/types.ts +96 -0
  303. package/src/index.ts +6 -0
  304. package/src/providers/WalletProvider.native.tsx +139 -85
  305. package/src/providers/WalletProvider.tsx +1 -1
  306. package/src/providers/index.ts +2 -0
  307. package/src/providers/native/deepLink.spec.ts +73 -1
  308. package/src/providers/native/deepLink.ts +76 -28
  309. package/src/providers/native/inject.ts +1 -9
  310. package/src/providers/walletBridge.ts +24 -0
  311. package/src/providers/walletConfig.ts +15 -1
  312. package/types/bridge/AuthBridge.d.ts +58 -0
  313. package/types/bridge/AuthBridge.d.ts.map +1 -0
  314. package/types/bridge/BridgeClient.d.ts +3 -1
  315. package/types/bridge/BridgeClient.d.ts.map +1 -1
  316. package/types/bridge/BridgeHost.d.ts +1 -1
  317. package/types/bridge/BridgeHost.d.ts.map +1 -1
  318. package/types/bridge/GpgBridge.d.ts +23 -0
  319. package/types/bridge/GpgBridge.d.ts.map +1 -0
  320. package/types/bridge/SuiBridge.d.ts +18 -0
  321. package/types/bridge/SuiBridge.d.ts.map +1 -0
  322. package/types/bridge/authTypes.d.ts +71 -0
  323. package/types/bridge/authTypes.d.ts.map +1 -0
  324. package/types/bridge/core.d.ts +16 -0
  325. package/types/bridge/core.d.ts.map +1 -0
  326. package/types/bridge/hosting.d.ts +34 -0
  327. package/types/bridge/hosting.d.ts.map +1 -0
  328. package/types/bridge/index.d.ts +1 -8
  329. package/types/bridge/index.d.ts.map +1 -1
  330. package/types/bridge/nativeHost.d.ts +55 -0
  331. package/types/bridge/nativeHost.d.ts.map +1 -0
  332. package/types/bridge/protocol.d.ts +34 -1
  333. package/types/bridge/protocol.d.ts.map +1 -1
  334. package/types/core/family.d.ts +44 -0
  335. package/types/core/family.d.ts.map +1 -0
  336. package/types/core/index.d.ts +7 -0
  337. package/types/core/index.d.ts.map +1 -0
  338. package/types/core/message.d.ts +44 -0
  339. package/types/core/message.d.ts.map +1 -0
  340. package/types/core/names.d.ts +7 -0
  341. package/types/core/names.d.ts.map +1 -0
  342. package/types/core/react.d.ts +14 -0
  343. package/types/core/react.d.ts.map +1 -0
  344. package/types/core/store.d.ts +64 -0
  345. package/types/core/store.d.ts.map +1 -0
  346. package/types/core/types.d.ts +88 -0
  347. package/types/core/types.d.ts.map +1 -0
  348. package/types/index.d.ts +2 -1
  349. package/types/index.d.ts.map +1 -1
  350. package/types/providers/WalletProvider.d.ts +1 -0
  351. package/types/providers/WalletProvider.d.ts.map +1 -1
  352. package/types/providers/WalletProvider.native.d.ts +2 -1
  353. package/types/providers/WalletProvider.native.d.ts.map +1 -1
  354. package/types/providers/index.d.ts +1 -1
  355. package/types/providers/index.d.ts.map +1 -1
  356. package/types/providers/native/deepLink.d.ts +29 -4
  357. package/types/providers/native/deepLink.d.ts.map +1 -1
  358. package/types/providers/native/inject.d.ts +1 -7
  359. package/types/providers/native/inject.d.ts.map +1 -1
  360. package/types/providers/walletBridge.d.ts +17 -0
  361. package/types/providers/walletBridge.d.ts.map +1 -0
  362. package/types/providers/walletConfig.d.ts +18 -1
  363. package/types/providers/walletConfig.d.ts.map +1 -1
@@ -0,0 +1,62 @@
1
+ import { createMessageRegistry } from "./message.mjs";
2
+ import { assertName, nameTable } from "./names.mjs";
3
+ function defineWalletFamily(definition) {
4
+ assertName("wallet family id", definition.id);
5
+ const aliases = [...(definition.aliases ?? [])];
6
+ for (const alias of aliases) {
7
+ assertName(`wallet family ${definition.id} alias`, alias);
8
+ if (alias === definition.id) {
9
+ throw new Error(`wallet family ${definition.id} lists its own id as an alias`);
10
+ }
11
+ }
12
+ if (typeof definition.label !== "string" || !definition.label.trim()) {
13
+ throw new Error(`wallet family ${definition.id} needs a label`);
14
+ }
15
+ const {
16
+ message
17
+ } = definition;
18
+ if (!message || typeof message.header !== "string" || !message.header) {
19
+ throw new Error(`wallet family ${definition.id} needs a message spec with a header`);
20
+ }
21
+ const connectionless = definition.connectionless === true;
22
+ if (connectionless && definition.driver) {
23
+ throw new Error(`wallet family ${definition.id} is connectionless and cannot have a driver`);
24
+ }
25
+ if (!connectionless && typeof definition.driver !== "function") {
26
+ throw new Error(`wallet family ${definition.id} needs a driver, or connectionless: true`);
27
+ }
28
+ return Object.freeze({
29
+ ...definition,
30
+ aliases: Object.freeze(aliases),
31
+ connectionless,
32
+ message: Object.freeze({
33
+ ...message
34
+ }),
35
+ ...(definition.screens ? {
36
+ screens: Object.freeze([...definition.screens])
37
+ } : {})
38
+ });
39
+ }
40
+ function createFamilyRegistry(families) {
41
+ const list = Object.freeze([...families]);
42
+ const names = nameTable(list);
43
+ const byId = new Map(list.map(family => [family.id, family]));
44
+ const get = family => {
45
+ const id = names.get(family);
46
+ return id === void 0 ? void 0 : byId.get(id);
47
+ };
48
+ return {
49
+ families: list,
50
+ get,
51
+ require(family) {
52
+ const found = get(family);
53
+ if (found === void 0) {
54
+ throw new Error(`wallet family ${family} is not registered; registered: ${list.map(entry => entry.id).join(", ") || "none"}`);
55
+ }
56
+ return found;
57
+ },
58
+ messages: createMessageRegistry(list)
59
+ };
60
+ }
61
+ export { createFamilyRegistry, defineWalletFamily };
62
+ //# sourceMappingURL=family.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createMessageRegistry","assertName","nameTable","defineWalletFamily","definition","id","aliases","alias","Error","label","trim","message","header","connectionless","driver","Object","freeze","screens","createFamilyRegistry","families","list","names","byId","Map","map","family","get","require","found","entry","join","messages"],"sources":["../../../src/core/family.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,115 @@
1
+ "use strict";
2
+
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all) __defProp(target, name, {
9
+ get: all[name],
10
+ enumerable: true
11
+ });
12
+ };
13
+ var __copyProps = (to, from, except, desc) => {
14
+ if (from && typeof from === "object" || typeof from === "function") {
15
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
16
+ get: () => from[key],
17
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
18
+ });
19
+ }
20
+ return to;
21
+ };
22
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
23
+ value: true
24
+ }), mod);
25
+ var family_exports = {};
26
+ __export(family_exports, {
27
+ createFamilyRegistry: () => createFamilyRegistry,
28
+ defineWalletFamily: () => defineWalletFamily
29
+ });
30
+ module.exports = __toCommonJS(family_exports);
31
+ var import_message = require("./message.native.js");
32
+ var import_names = require("./names.native.js");
33
+ function defineWalletFamily(definition) {
34
+ var _definition_aliases;
35
+ (0, import_names.assertName)("wallet family id", definition.id);
36
+ var aliases = [...((_definition_aliases = definition.aliases) !== null && _definition_aliases !== void 0 ? _definition_aliases : [])];
37
+ var _iteratorNormalCompletion = true,
38
+ _didIteratorError = false,
39
+ _iteratorError = void 0;
40
+ try {
41
+ for (var _iterator = aliases[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
42
+ var alias = _step.value;
43
+ (0, import_names.assertName)(`wallet family ${definition.id} alias`, alias);
44
+ if (alias === definition.id) {
45
+ throw new Error(`wallet family ${definition.id} lists its own id as an alias`);
46
+ }
47
+ }
48
+ } catch (err) {
49
+ _didIteratorError = true;
50
+ _iteratorError = err;
51
+ } finally {
52
+ try {
53
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
54
+ _iterator.return();
55
+ }
56
+ } finally {
57
+ if (_didIteratorError) {
58
+ throw _iteratorError;
59
+ }
60
+ }
61
+ }
62
+ if (typeof definition.label !== "string" || !definition.label.trim()) {
63
+ throw new Error(`wallet family ${definition.id} needs a label`);
64
+ }
65
+ var {
66
+ message
67
+ } = definition;
68
+ if (!message || typeof message.header !== "string" || !message.header) {
69
+ throw new Error(`wallet family ${definition.id} needs a message spec with a header`);
70
+ }
71
+ var connectionless = definition.connectionless === true;
72
+ if (connectionless && definition.driver) {
73
+ throw new Error(`wallet family ${definition.id} is connectionless and cannot have a driver`);
74
+ }
75
+ if (!connectionless && typeof definition.driver !== "function") {
76
+ throw new Error(`wallet family ${definition.id} needs a driver, or connectionless: true`);
77
+ }
78
+ return Object.freeze({
79
+ ...definition,
80
+ aliases: Object.freeze(aliases),
81
+ connectionless,
82
+ message: Object.freeze({
83
+ ...message
84
+ }),
85
+ ...(definition.screens ? {
86
+ screens: Object.freeze([...definition.screens])
87
+ } : {})
88
+ });
89
+ }
90
+ function createFamilyRegistry(families) {
91
+ var list = Object.freeze([...families]);
92
+ var names = (0, import_names.nameTable)(list);
93
+ var byId = new Map(list.map(function (family) {
94
+ return [family.id, family];
95
+ }));
96
+ var get = function get2(family) {
97
+ var id = names.get(family);
98
+ return id === void 0 ? void 0 : byId.get(id);
99
+ };
100
+ return {
101
+ families: list,
102
+ get,
103
+ require(family) {
104
+ var found = get(family);
105
+ if (found === void 0) {
106
+ throw new Error(`wallet family ${family} is not registered; registered: ${list.map(function (entry) {
107
+ return entry.id;
108
+ }).join(", ") || "none"}`);
109
+ }
110
+ return found;
111
+ },
112
+ messages: (0, import_message.createMessageRegistry)(list)
113
+ };
114
+ }
115
+ //# sourceMappingURL=family.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","family_exports","createFamilyRegistry","defineWalletFamily","module","exports","import_message","require","import_names","definition","_definition_aliases","assertName","id","aliases","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","alias","Error","err","return","label","trim"],"sources":["../../../src/core/family.ts"],"sourcesContent":[null],"mappings":"AAEA;;AAAA,IACEA,SAAA,GAAAC,MAAA,CAAAC,cAAA;AAAA,IAAAC,gBAGK,GAAAF,MAAA,CAAAG,wBAAA;AACP,IAAAC,iBAAqB,GAAAJ,MAAA,CAAAK,mBAAiB;AA8B/B,IAAAC,YAAS,GAAAN,MAAA,CAAAO,SAAmB,CAAAC,cAAkD;AACnF,IAAAC,QAAA,GAAWA,CAAAC,MAAA,EAAAC,GAAA;EACX,SAAMC,IAAA,IAAWD,GAAI,EACrBZ,SAAW,CAAAW,MAAA,EAASE,IAAA;IAAAC,GAAS,EAAAF,GAAA,CAAAC,IAAA;IAAAE,UAAA;EAAA;AAC3B;AACA,IAAAC,WAAI,GAAUA,CAAAC,EAAA,EAAAC,IAAA,EAAWC,MAAI,EAAAC,IAAA;EAC3B,IAAAF,IAAA,IAAM,OAAIA,IAAM,iBAAiB,OAAAA,IAAa;IAChD,SAAAG,GAAA,IAAAhB,iBAAA,CAAAa,IAAA,GACF,KAAAX,YAAA,CAAAe,IAAA,CAAAL,EAAA,EAAAI,GAAA,KAAAA,GAAA,KAAAF,MAAA,EACInB,SAAO,CAAAiB,EAAA,EAAAI,GAAW;MAAAP,GAAA,EAAUA,CAAA,KAAAI,IAAA,CAAAG,GAAa;MAAAN,UAAW,IAAMK,IAAK,GAAGjB,gBAAA,CAAAe,IAAA,EAAAG,GAAA,MAAAD,IAAA,CAAAL;IAAA;EACpE;EACF,OAAAE,EAAA;AACA;AACA,IAAAM,YAAK,GAAWC,GAAA,IAAOR,WAAQ,CAAAhB,SAAW,iBAAqB;EAAAyB,KAAQ;AAAA,IAAAD,GAAA;AACrE,IAAAE,cAAU,GAAM;AAAmEhB,QACrF,CAAAgB,cAAA;EACAC,oBAAM,EAAAA,CAAA,KAAiBA,oBAAW;EAClCC,kBAAI,EAAAA,CAAA,KAAkBA;AACpB;AAA2FC,MAC7F,CAAAC,OAAA,GAAAP,YAAA,CAAAG,cAAA;AACA,IAAAK,cAAK,GAAAC,OAAkB,sBAAO;AAC5B,IAAAC,YAAU,GAAAD,OAAM,qBAAiB;AAAuD,SAC1FJ,mBAAAM,UAAA;EACA,IAAAC,mBAAqB;EAAA,EACnB,EAAAF,YAAG,CAAAG,UAAA,sBAAAF,UAAA,CAAAG,EAAA;EAAA,IACHC,OAAS,IACT,KAAAH,mBAAA,GAAAD,UAAA,CAAAI,OAAA,cAAAH,mBAAA,cAAAA,mBAAA;EACqC,IACrCI,yBAA2B;IAASC,iBAAkB;IAAAC,cAAqB,GAAK;EAClF,IAAC;IACH,SAAAC,SAAA,GAAAJ,OAAA,CAAAK,MAAA,CAAAC,QAAA,KAAAC,KAAA,IAAAN,yBAAA,IAAAM,KAAA,GAAAH,SAAA,CAAAI,IAAA,IAAAC,IAAA,GAAAR,yBAAA;MAaO,IAASS,KAAA,GAAAH,KAAA,CAAApB,KAAA;MACd,EAAM,EAAAQ,YAAc,CAAAG,UAAW,mBAASF,UAAA,CAAAG,EAAA,UAAAW,KAAA;MACxC,IAAMA,KAAA,KAAQd,UAAc,CAAAG,EAAA;QACtB,UAAOY,KAAQ,kBAAUf,UAAY,CAAOG,EAAA,+BAAY;MAC9D;IACE;EACA,SAAOa,GAAA;IACTV,iBAAA;IACAC,cAAO,GAAAS,GAAA;EAAA,UACL;IACA;MACA,KAAAX,yBAAgB,IAAAG,SAAA,CAAAS,MAAA;QACdT,SAAM,CAAAS,MAAY;MAClB;IACE,UAAM;MAAI,IACRX,iBAAiB;QACnB,MAAAC,cAAA;MACF;IACA;EAAO;EACT,IACA,OAAAP,UAAU,CAAAkB,KAAA,aAA0B,KAAAlB,UAAA,CAAAkB,KAAA,CAAAC,IAAA;IACtC,UAAAJ,KAAA,kBAAAf,UAAA,CAAAG,EAAA;EACF","ignoreList":[]}
@@ -0,0 +1,7 @@
1
+ import { createFamilyRegistry, defineWalletFamily } from "./family.mjs";
2
+ import { createMessageRegistry, formatWalletMessage } from "./message.mjs";
3
+ import { createConnectionStore, defaultConnectionStorageKey } from "./store.mjs";
4
+ import { ConnectionProvider, useConnection, useConnectionStore } from "./react.mjs";
5
+ import { UnsupportedClientMethodError } from "../clients/types.mjs";
6
+ export { ConnectionProvider, UnsupportedClientMethodError, createConnectionStore, createFamilyRegistry, createMessageRegistry, defaultConnectionStorageKey, defineWalletFamily, formatWalletMessage, useConnection, useConnectionStore };
7
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createFamilyRegistry","defineWalletFamily","createMessageRegistry","formatWalletMessage","createConnectionStore","defaultConnectionStorageKey","ConnectionProvider","useConnection","useConnectionStore","UnsupportedClientMethodError"],"sources":["../../../src/core/index.ts"],"sourcesContent":[null],"mappings":"AAGA,SACEA,oBAAA,EACAC,kBAAA,QAIK;AACP,SACEC,qBAAA,EACAC,mBAAA,QAIK;AACP,SACEC,qBAAA,EACAC,2BAAA,QAIK;AACP,SACEC,kBAAA,EACAC,aAAA,EACAC,kBAAA,QAEK;AAYP,SACEC,4BAAA,QAIK","ignoreList":[]}
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all) __defProp(target, name, {
9
+ get: all[name],
10
+ enumerable: true
11
+ });
12
+ };
13
+ var __copyProps = (to, from, except, desc) => {
14
+ if (from && typeof from === "object" || typeof from === "function") {
15
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
16
+ get: () => from[key],
17
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
18
+ });
19
+ }
20
+ return to;
21
+ };
22
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
23
+ value: true
24
+ }), mod);
25
+ var core_exports = {};
26
+ __export(core_exports, {
27
+ ConnectionProvider: () => import_react.ConnectionProvider,
28
+ UnsupportedClientMethodError: () => import_types.UnsupportedClientMethodError,
29
+ createConnectionStore: () => import_store.createConnectionStore,
30
+ createFamilyRegistry: () => import_family.createFamilyRegistry,
31
+ createMessageRegistry: () => import_message.createMessageRegistry,
32
+ defaultConnectionStorageKey: () => import_store.defaultConnectionStorageKey,
33
+ defineWalletFamily: () => import_family.defineWalletFamily,
34
+ formatWalletMessage: () => import_message.formatWalletMessage,
35
+ useConnection: () => import_react.useConnection,
36
+ useConnectionStore: () => import_react.useConnectionStore
37
+ });
38
+ module.exports = __toCommonJS(core_exports);
39
+ var import_family = require("./family.native.js");
40
+ var import_message = require("./message.native.js");
41
+ var import_store = require("./store.native.js");
42
+ var import_react = require("./react.native.js");
43
+ var import_types = require("../clients/types.native.js");
44
+ //# sourceMappingURL=index.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","core_exports"],"sources":["../../../src/core/index.ts"],"sourcesContent":[null],"mappings":"AAGA;;AAAA,IACEA,SAAA,GAAAC,MAAA,CAAAC,cAAA;AAAA,IACAC,gBAAA,GAAAF,MAAA,CAAAG,wBAAA;AAAA,IAAAC,iBAIK,GAAAJ,MAAA,CAAAK,mBAAA;AACP,IAAAC,YAAA,GAAAN,MAAA,CAAAO,SAAA,CAAAC,cAAA;AAAA,IACEC,QAAA,GAAAA,CAAAC,MAAA,EAAAC,GAAA;EACA,SAAAC,IAAA,IAAAD,GAAA,EAAAZ,SAIK,CAAAW,MAAA,EAAAE,IAAA;IAAAC,GAAA,EAAAF,GAAA,CAAAC,IAAA;IAAAE,UAAA;EAAA;AACP;AAAA,IACEC,WAAA,GAAAA,CAAAC,EAAA,EAAAC,IAAA,EAAAC,MAAA,EAAAC,IAAA;EACA,IAAAF,IAAA,WAAAA,IAAA,wBAAAA,IAAA;IAAA,KAIK,IAAAG,GAAA,IAAAhB,iBAAA,CAAAa,IAAA,GACP,KAAAX,YAAA,CAAAe,IAAA,CAAAL,EAAA,EAAAI,GAAA,KAAAA,GAAA,KAAAF,MAAA,EACEnB,SAAA,CAAAiB,EAAA,EAAAI,GAAA;MAAAP,GAAA,EAAAA,CAAA,KAAAI,IAAA,CAAAG,GAAA;MAAAN,UAAA,IAAAK,IAAA,GAAAjB,gBAAA,CAAAe,IAAA,EAAAG,GAAA,MAAAD,IAAA,CAAAL;IAAA;EACA;EACA,OAAAE,EAAA;AAAA;AAcF,IAAAM,YAAA,GAAAC,GAAA,IAAAR,WAAA,CAAAhB,SAAA;EAAAyB,KAAA;AAAA,IAAAD,GAAA;AAAA,IACEE,YAAA;AAAAhB,QAIK,CAAAgB,YAAA","ignoreList":[]}
@@ -0,0 +1,63 @@
1
+ import { nameTable } from "./names.mjs";
2
+ function singleLine(field, value) {
3
+ if (value && /[\r\n]/.test(value)) {
4
+ throw new Error(`wallet message: ${field} must be a single line`);
5
+ }
6
+ }
7
+ function pageLocation() {
8
+ const location = globalThis.location;
9
+ return {
10
+ host: location?.host ?? "",
11
+ origin: location?.origin ?? ""
12
+ };
13
+ }
14
+ function formatWalletMessage(spec, opts, family = "wallet") {
15
+ const page = pageLocation();
16
+ const domain = opts.domain ?? page.host;
17
+ if (!domain) {
18
+ throw new Error("wallet message: no domain. Pass opts.domain; a file:// or native page has no host.");
19
+ }
20
+ const pageOrigin = page.origin && page.origin !== "null" ? page.origin : "";
21
+ const uri = opts.uri ?? (pageOrigin || `https://${domain}`);
22
+ const statement = opts.statement === void 0 ? spec.statement : opts.statement;
23
+ singleLine("domain", domain);
24
+ singleLine("uri", uri);
25
+ singleLine("statement", statement);
26
+ const lines = [`${domain} ${spec.header}`];
27
+ if (spec.address !== false) {
28
+ if (!opts.address) throw new Error(`wallet message: ${family} needs an address`);
29
+ lines.push(spec.normalizeAddress ? spec.normalizeAddress(opts.address) : opts.address);
30
+ }
31
+ lines.push("");
32
+ if (statement) lines.push(statement, "");else if (spec.keepStatementLine) lines.push("");
33
+ lines.push(`URI: ${uri}`, `Version: ${opts.version ?? "1"}`);
34
+ if (spec.chainId !== null) {
35
+ const chainId = spec.numericChainId ? opts.chainId ?? spec.chainId : typeof opts.chainId === "string" ? opts.chainId : spec.chainId;
36
+ lines.push(`Chain ID: ${chainId}`);
37
+ }
38
+ lines.push(`Nonce: ${opts.nonce}`, `Issued At: ${opts.issuedAt ?? (/* @__PURE__ */new Date()).toISOString()}`);
39
+ return lines.join("\n");
40
+ }
41
+ function createMessageRegistry(families) {
42
+ const list = [...families];
43
+ const names = nameTable(list);
44
+ const specs = new Map(list.map(family => [family.id, family.message]));
45
+ const spec = family => {
46
+ const id = names.get(family);
47
+ return id === void 0 ? void 0 : specs.get(id);
48
+ };
49
+ return {
50
+ families: list.map(family => family.id),
51
+ resolve: family => names.get(family),
52
+ spec,
53
+ build(family, opts) {
54
+ const found = spec(family);
55
+ if (found === void 0) {
56
+ throw new Error(`no wallet message for family ${family}; registered: ${list.map(entry => entry.id).join(", ") || "none"}`);
57
+ }
58
+ return formatWalletMessage(found, opts, names.get(family));
59
+ }
60
+ };
61
+ }
62
+ export { createMessageRegistry, formatWalletMessage };
63
+ //# sourceMappingURL=message.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["nameTable","singleLine","field","value","test","Error","pageLocation","location","globalThis","host","origin","formatWalletMessage","spec","opts","family","page","domain","pageOrigin","uri","statement","lines","header","address","push","normalizeAddress","keepStatementLine","version","chainId","numericChainId","nonce","issuedAt","Date","toISOString","join","createMessageRegistry","families","list","names","specs","Map","map","id","message","get","resolve","build","found","entry"],"sources":["../../../src/core/message.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,104 @@
1
+ "use strict";
2
+
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all) __defProp(target, name, {
9
+ get: all[name],
10
+ enumerable: true
11
+ });
12
+ };
13
+ var __copyProps = (to, from, except, desc) => {
14
+ if (from && typeof from === "object" || typeof from === "function") {
15
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
16
+ get: () => from[key],
17
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
18
+ });
19
+ }
20
+ return to;
21
+ };
22
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
23
+ value: true
24
+ }), mod);
25
+ var message_exports = {};
26
+ __export(message_exports, {
27
+ createMessageRegistry: () => createMessageRegistry,
28
+ formatWalletMessage: () => formatWalletMessage
29
+ });
30
+ module.exports = __toCommonJS(message_exports);
31
+ var import_names = require("./names.native.js");
32
+ function singleLine(field, value) {
33
+ if (value && /[\r\n]/.test(value)) {
34
+ throw new Error(`wallet message: ${field} must be a single line`);
35
+ }
36
+ }
37
+ function pageLocation() {
38
+ var _ref, _ref1;
39
+ var location = globalThis.location;
40
+ return {
41
+ host: (_ref = location === null || location === void 0 ? void 0 : location.host) !== null && _ref !== void 0 ? _ref : "",
42
+ origin: (_ref1 = location === null || location === void 0 ? void 0 : location.origin) !== null && _ref1 !== void 0 ? _ref1 : ""
43
+ };
44
+ }
45
+ function formatWalletMessage(spec, opts) {
46
+ var family = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : "wallet";
47
+ var _opts_domain, _opts_uri, _opts_version, _opts_issuedAt;
48
+ var page = pageLocation();
49
+ var domain = (_opts_domain = opts.domain) !== null && _opts_domain !== void 0 ? _opts_domain : page.host;
50
+ if (!domain) {
51
+ throw new Error("wallet message: no domain. Pass opts.domain; a file:// or native page has no host.");
52
+ }
53
+ var pageOrigin = page.origin && page.origin !== "null" ? page.origin : "";
54
+ var uri = (_opts_uri = opts.uri) !== null && _opts_uri !== void 0 ? _opts_uri : pageOrigin || `https://${domain}`;
55
+ var statement = opts.statement === void 0 ? spec.statement : opts.statement;
56
+ singleLine("domain", domain);
57
+ singleLine("uri", uri);
58
+ singleLine("statement", statement);
59
+ var lines = [`${domain} ${spec.header}`];
60
+ if (spec.address !== false) {
61
+ if (!opts.address) throw new Error(`wallet message: ${family} needs an address`);
62
+ lines.push(spec.normalizeAddress ? spec.normalizeAddress(opts.address) : opts.address);
63
+ }
64
+ lines.push("");
65
+ if (statement) lines.push(statement, "");else if (spec.keepStatementLine) lines.push("");
66
+ lines.push(`URI: ${uri}`, `Version: ${(_opts_version = opts.version) !== null && _opts_version !== void 0 ? _opts_version : "1"}`);
67
+ if (spec.chainId !== null) {
68
+ var _opts_chainId;
69
+ var chainId = spec.numericChainId ? (_opts_chainId = opts.chainId) !== null && _opts_chainId !== void 0 ? _opts_chainId : spec.chainId : typeof opts.chainId === "string" ? opts.chainId : spec.chainId;
70
+ lines.push(`Chain ID: ${chainId}`);
71
+ }
72
+ lines.push(`Nonce: ${opts.nonce}`, `Issued At: ${(_opts_issuedAt = opts.issuedAt) !== null && _opts_issuedAt !== void 0 ? _opts_issuedAt : (/* @__PURE__ */new Date()).toISOString()}`);
73
+ return lines.join("\n");
74
+ }
75
+ function createMessageRegistry(families) {
76
+ var list = [...families];
77
+ var names = (0, import_names.nameTable)(list);
78
+ var specs = new Map(list.map(function (family) {
79
+ return [family.id, family.message];
80
+ }));
81
+ var spec = function spec2(family) {
82
+ var id = names.get(family);
83
+ return id === void 0 ? void 0 : specs.get(id);
84
+ };
85
+ return {
86
+ families: list.map(function (family) {
87
+ return family.id;
88
+ }),
89
+ resolve: function resolve(family) {
90
+ return names.get(family);
91
+ },
92
+ spec,
93
+ build(family, opts) {
94
+ var found = spec(family);
95
+ if (found === void 0) {
96
+ throw new Error(`no wallet message for family ${family}; registered: ${list.map(function (entry) {
97
+ return entry.id;
98
+ }).join(", ") || "none"}`);
99
+ }
100
+ return formatWalletMessage(found, opts, names.get(family));
101
+ }
102
+ };
103
+ }
104
+ //# sourceMappingURL=message.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","message_exports","createMessageRegistry","formatWalletMessage","module","exports","import_names","require","singleLine","field","test","Error","pageLocation","_ref","_ref1","location","globalThis","host","origin","spec","opts","family","arguments","length","_opts_domain","_opts_uri","_opts_version","_opts_issuedAt","page","domain","pageOrigin","uri","statement","lines","header","address","push","normalizeAddress","keepStatementLine","version"],"sources":["../../../src/core/message.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,25 @@
1
+ const pattern = /^[a-z][a-z0-9-]*$/;
2
+ function assertName(kind, name) {
3
+ if (typeof name !== "string" || !pattern.test(name)) {
4
+ throw new Error(`${kind} must be lowercase letters, digits and dashes: ${String(name)}`);
5
+ }
6
+ }
7
+ function nameTable(entries) {
8
+ const table = /* @__PURE__ */new Map();
9
+ const claim = (name, id) => {
10
+ const owner = table.get(name);
11
+ if (owner === void 0) table.set(name, id);else if (owner !== id) {
12
+ throw new Error(`wallet family name "${name}" is claimed by ${owner} and ${id}`);
13
+ }
14
+ };
15
+ for (const entry of entries) {
16
+ if (table.get(entry.id) === entry.id) {
17
+ throw new Error(`wallet family ${entry.id} is registered twice`);
18
+ }
19
+ claim(entry.id, entry.id);
20
+ for (const alias of entry.aliases ?? []) claim(alias, entry.id);
21
+ }
22
+ return table;
23
+ }
24
+ export { assertName, nameTable };
25
+ //# sourceMappingURL=names.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["pattern","assertName","kind","name","test","Error","String","nameTable","entries","table","Map","claim","id","owner","get","set","entry","alias","aliases"],"sources":["../../../src/core/names.ts"],"sourcesContent":[null],"mappings":"AAAA,MAAMA,OAAA,GAAU;AAET,SAASC,WAAWC,IAAA,EAAcC,IAAA,EAAuC;EAC9E,IAAI,OAAOA,IAAA,KAAS,YAAY,CAACH,OAAA,CAAQI,IAAA,CAAKD,IAAI,GAAG;IACnD,MAAM,IAAIE,KAAA,CAAM,GAAGH,IAAI,kDAAkDI,MAAA,CAAOH,IAAI,CAAC,EAAE;EACzF;AACF;AAGO,SAASI,UACdC,OAAA,EACqB;EACrB,MAAMC,KAAA,GAAQ,mBAAIC,GAAA,CAAoB;EACtC,MAAMC,KAAA,GAAQA,CAACR,IAAA,EAAcS,EAAA,KAAe;IAC1C,MAAMC,KAAA,GAAQJ,KAAA,CAAMK,GAAA,CAAIX,IAAI;IAC5B,IAAIU,KAAA,KAAU,QAAWJ,KAAA,CAAMM,GAAA,CAAIZ,IAAA,EAAMS,EAAE,WAClCC,KAAA,KAAUD,EAAA,EAAI;MACrB,MAAM,IAAIP,KAAA,CAAM,uBAAuBF,IAAI,mBAAmBU,KAAK,QAAQD,EAAE,EAAE;IACjF;EACF;EACA,WAAWI,KAAA,IAASR,OAAA,EAAS;IAC3B,IAAIC,KAAA,CAAMK,GAAA,CAAIE,KAAA,CAAMJ,EAAE,MAAMI,KAAA,CAAMJ,EAAA,EAAI;MACpC,MAAM,IAAIP,KAAA,CAAM,iBAAiBW,KAAA,CAAMJ,EAAE,sBAAsB;IACjE;IACAD,KAAA,CAAMK,KAAA,CAAMJ,EAAA,EAAII,KAAA,CAAMJ,EAAE;IACxB,WAAWK,KAAA,IAASD,KAAA,CAAME,OAAA,IAAW,EAAC,EAAGP,KAAA,CAAMM,KAAA,EAAOD,KAAA,CAAMJ,EAAE;EAChE;EACA,OAAOH,KAAA;AACT","ignoreList":[]}
@@ -0,0 +1,95 @@
1
+ "use strict";
2
+
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all) __defProp(target, name, {
9
+ get: all[name],
10
+ enumerable: true
11
+ });
12
+ };
13
+ var __copyProps = (to, from, except, desc) => {
14
+ if (from && typeof from === "object" || typeof from === "function") {
15
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
16
+ get: () => from[key],
17
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
18
+ });
19
+ }
20
+ return to;
21
+ };
22
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
23
+ value: true
24
+ }), mod);
25
+ var names_exports = {};
26
+ __export(names_exports, {
27
+ assertName: () => assertName,
28
+ nameTable: () => nameTable
29
+ });
30
+ module.exports = __toCommonJS(names_exports);
31
+ var pattern = /^[a-z][a-z0-9-]*$/;
32
+ function assertName(kind, name) {
33
+ if (typeof name !== "string" || !pattern.test(name)) {
34
+ throw new Error(`${kind} must be lowercase letters, digits and dashes: ${String(name)}`);
35
+ }
36
+ }
37
+ function nameTable(entries) {
38
+ var table = /* @__PURE__ */new Map();
39
+ var claim = function claim2(name, id) {
40
+ var owner = table.get(name);
41
+ if (owner === void 0) table.set(name, id);else if (owner !== id) {
42
+ throw new Error(`wallet family name "${name}" is claimed by ${owner} and ${id}`);
43
+ }
44
+ };
45
+ var _iteratorNormalCompletion = true,
46
+ _didIteratorError = false,
47
+ _iteratorError = void 0;
48
+ try {
49
+ for (var _iterator = entries[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
50
+ var entry = _step.value;
51
+ var _entry_aliases;
52
+ if (table.get(entry.id) === entry.id) {
53
+ throw new Error(`wallet family ${entry.id} is registered twice`);
54
+ }
55
+ claim(entry.id, entry.id);
56
+ var _iteratorNormalCompletion1 = true,
57
+ _didIteratorError1 = false,
58
+ _iteratorError1 = void 0;
59
+ try {
60
+ for (var _iterator1 = ((_entry_aliases = entry.aliases) !== null && _entry_aliases !== void 0 ? _entry_aliases : [])[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {
61
+ var alias = _step1.value;
62
+ claim(alias, entry.id);
63
+ }
64
+ } catch (err) {
65
+ _didIteratorError1 = true;
66
+ _iteratorError1 = err;
67
+ } finally {
68
+ try {
69
+ if (!_iteratorNormalCompletion1 && _iterator1.return != null) {
70
+ _iterator1.return();
71
+ }
72
+ } finally {
73
+ if (_didIteratorError1) {
74
+ throw _iteratorError1;
75
+ }
76
+ }
77
+ }
78
+ }
79
+ } catch (err) {
80
+ _didIteratorError = true;
81
+ _iteratorError = err;
82
+ } finally {
83
+ try {
84
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
85
+ _iterator.return();
86
+ }
87
+ } finally {
88
+ if (_didIteratorError) {
89
+ throw _iteratorError;
90
+ }
91
+ }
92
+ }
93
+ return table;
94
+ }
95
+ //# sourceMappingURL=names.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","names_exports","assertName","nameTable","module","exports"],"sources":["../../../src/core/names.ts"],"sourcesContent":[null],"mappings":"AAAA,YAAM;;AAEC,IAAAA,SAAS,GAAAC,MAAW,CAAAC,cAAqD;AAC9E,IAAAC,gBAAW,GAASF,MAAA,CAAAG,wBAA8B;AAChD,IAAAC,iBAAgB,GAAGJ,MAAI,CAAAK,mBAAA;AAAgE,IACzFC,YAAA,GAAAN,MAAA,CAAAO,SAAA,CAAAC,cAAA;AACF,IAAAC,QAAA,GAAAA,CAAAC,MAAA,EAAAC,GAAA;EAGO,SAASC,IAAA,IACdD,GAAA,EAEAZ,SAAM,CAAAW,MAAQ,EAAAE,IAAA;IAAAC,GAAA,EAAAF,GAAI,CAAAC,IAAoB;IAAAE,UAAA;EAAA;AACtC;AACE,IAAAC,WAAM,GAAQA,CAAAC,EAAA,EAAAC,IAAM,EAAIC,MAAI,EAAAC,IAAA;EAC5B,IAAAF,IAAI,WAAUA,IAAW,aAAU,IAAM,OAAEA,IAAA;IAAA,SAClCG,GAAA,IAAAhB,iBAAc,CAAAa,IAAA,GACrB,KAAAX,YAAgB,CAAAe,IAAA,CAAAL,EAAA,EAAAI,GAAA,KAAAA,GAAA,KAA2BF,MAAA,EAC7CnB,SAAA,CAAAiB,EAAA,EAAAI,GAAA;MAAAP,GAAA,EAAAA,CAAA,KAAAI,IAAA,CAAAG,GAAA;MAAAN,UAAA,IAAAK,IAAA,GAAAjB,gBAAA,CAAAe,IAAA,EAAAG,GAAA,MAAAD,IAAA,CAAAL;IAAA;EACF;EACA,OAAAE,EAAA;AACE;AACE,IAAAM,YAAU,GAAAC,GAAM,IAAAR,WAAiB,CAAAhB,SAAQ;EAAsByB,KAAA;AAAA,IAAAD,GAAA;AAAA,IACjEE,aAAA;AACAhB,QAAA,CAAAgB,aAAgB;EAChBC,UAAA,EAAAA,CAAA,KAAWA,UAAe;EAC5BC,SAAA,EAAAA,CAAA,KAAAA;AACA;AACFC,MAAA,CAAAC,OAAA,GAAAP,YAAA,CAAAG,aAAA","ignoreList":[]}
@@ -0,0 +1,21 @@
1
+ import { createContext, createElement, useContext, useSyncExternalStore } from "react";
2
+ const ConnectionStoreContext = createContext(null);
3
+ function ConnectionProvider({
4
+ store,
5
+ children
6
+ }) {
7
+ return createElement(ConnectionStoreContext.Provider, {
8
+ value: store
9
+ }, children);
10
+ }
11
+ function useConnectionStore() {
12
+ const store = useContext(ConnectionStoreContext);
13
+ if (!store) throw new Error("useConnectionStore needs a ConnectionProvider above it");
14
+ return store;
15
+ }
16
+ function useConnection() {
17
+ const store = useConnectionStore();
18
+ return useSyncExternalStore(store.subscribe, store.getState, store.getState);
19
+ }
20
+ export { ConnectionProvider, useConnection, useConnectionStore };
21
+ //# sourceMappingURL=react.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createContext","createElement","useContext","useSyncExternalStore","ConnectionStoreContext","ConnectionProvider","store","children","Provider","value","useConnectionStore","Error","useConnection","subscribe","getState"],"sources":["../../../src/core/react.ts"],"sourcesContent":[null],"mappings":"AAAA,SACEA,aAAA,EACAC,aAAA,EACAC,UAAA,EACAC,oBAAA,QAEK;AAIP,MAAMC,sBAAA,GAAyBJ,aAAA,CAAsC,IAAI;AAQlE,SAASK,mBAAmB;EAAEC,KAAA;EAAOC;AAAS,GAA4B;EAC/E,OAAON,aAAA,CAAcG,sBAAA,CAAuBI,QAAA,EAAU;IAAEC,KAAA,EAAOH;EAAM,GAAGC,QAAQ;AAClF;AAGO,SAASG,mBAAA,EAAsC;EACpD,MAAMJ,KAAA,GAAQJ,UAAA,CAAWE,sBAAsB;EAC/C,IAAI,CAACE,KAAA,EAAO,MAAM,IAAIK,KAAA,CAAM,wDAAwD;EACpF,OAAOL,KAAA;AACT;AAGO,SAASM,cAAA,EAAiC;EAC/C,MAAMN,KAAA,GAAQI,kBAAA,CAAmB;EACjC,OAAOP,oBAAA,CAAqBG,KAAA,CAAMO,SAAA,EAAWP,KAAA,CAAMQ,QAAA,EAAUR,KAAA,CAAMQ,QAAQ;AAC7E","ignoreList":[]}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all) __defProp(target, name, {
9
+ get: all[name],
10
+ enumerable: true
11
+ });
12
+ };
13
+ var __copyProps = (to, from, except, desc) => {
14
+ if (from && typeof from === "object" || typeof from === "function") {
15
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
16
+ get: () => from[key],
17
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
18
+ });
19
+ }
20
+ return to;
21
+ };
22
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
23
+ value: true
24
+ }), mod);
25
+ var react_exports = {};
26
+ __export(react_exports, {
27
+ ConnectionProvider: () => ConnectionProvider,
28
+ useConnection: () => useConnection,
29
+ useConnectionStore: () => useConnectionStore
30
+ });
31
+ module.exports = __toCommonJS(react_exports);
32
+ var import_react = require("react");
33
+ var ConnectionStoreContext = (0, import_react.createContext)(null);
34
+ function ConnectionProvider(param) {
35
+ var {
36
+ store,
37
+ children
38
+ } = param;
39
+ return (0, import_react.createElement)(ConnectionStoreContext.Provider, {
40
+ value: store
41
+ }, children);
42
+ }
43
+ function useConnectionStore() {
44
+ var store = (0, import_react.useContext)(ConnectionStoreContext);
45
+ if (!store) throw new Error("useConnectionStore needs a ConnectionProvider above it");
46
+ return store;
47
+ }
48
+ function useConnection() {
49
+ var store = useConnectionStore();
50
+ return (0, import_react.useSyncExternalStore)(store.subscribe, store.getState, store.getState);
51
+ }
52
+ //# sourceMappingURL=react.native.js.map