@symmio/trading-react 0.1.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 (545) hide show
  1. package/LICENSE +21 -0
  2. package/dist/account-layer/index.d.ts +29 -0
  3. package/dist/account-layer/index.d.ts.map +1 -0
  4. package/dist/account-layer/use-account-balance-info.d.ts +22 -0
  5. package/dist/account-layer/use-account-balance-info.d.ts.map +1 -0
  6. package/dist/account-layer/use-account-balance-info.js +23 -0
  7. package/dist/account-layer/use-account-balance-info.js.map +1 -0
  8. package/dist/account-layer/use-account-balance-of.d.ts +22 -0
  9. package/dist/account-layer/use-account-balance-of.d.ts.map +1 -0
  10. package/dist/account-layer/use-account-balance-of.js +23 -0
  11. package/dist/account-layer/use-account-balance-of.js.map +1 -0
  12. package/dist/account-layer/use-add-margin.d.ts +26 -0
  13. package/dist/account-layer/use-add-margin.d.ts.map +1 -0
  14. package/dist/account-layer/use-add-margin.js +40 -0
  15. package/dist/account-layer/use-add-margin.js.map +1 -0
  16. package/dist/account-layer/use-allocate.d.ts +25 -0
  17. package/dist/account-layer/use-allocate.d.ts.map +1 -0
  18. package/dist/account-layer/use-allocate.js +40 -0
  19. package/dist/account-layer/use-allocate.js.map +1 -0
  20. package/dist/account-layer/use-create-sub-accounts.d.ts +36 -0
  21. package/dist/account-layer/use-create-sub-accounts.d.ts.map +1 -0
  22. package/dist/account-layer/use-create-sub-accounts.js +41 -0
  23. package/dist/account-layer/use-create-sub-accounts.js.map +1 -0
  24. package/dist/account-layer/use-deallocate.d.ts +44 -0
  25. package/dist/account-layer/use-deallocate.d.ts.map +1 -0
  26. package/dist/account-layer/use-deallocate.js +44 -0
  27. package/dist/account-layer/use-deallocate.js.map +1 -0
  28. package/dist/account-layer/use-delete-sub-account.d.ts +30 -0
  29. package/dist/account-layer/use-delete-sub-account.d.ts.map +1 -0
  30. package/dist/account-layer/use-delete-sub-account.js +40 -0
  31. package/dist/account-layer/use-delete-sub-account.js.map +1 -0
  32. package/dist/account-layer/use-deposit-and-allocate.d.ts +27 -0
  33. package/dist/account-layer/use-deposit-and-allocate.d.ts.map +1 -0
  34. package/dist/account-layer/use-deposit-and-allocate.js +41 -0
  35. package/dist/account-layer/use-deposit-and-allocate.js.map +1 -0
  36. package/dist/account-layer/use-deposit.d.ts +27 -0
  37. package/dist/account-layer/use-deposit.d.ts.map +1 -0
  38. package/dist/account-layer/use-deposit.js +41 -0
  39. package/dist/account-layer/use-deposit.js.map +1 -0
  40. package/dist/account-layer/use-edit-account-name.d.ts +27 -0
  41. package/dist/account-layer/use-edit-account-name.d.ts.map +1 -0
  42. package/dist/account-layer/use-edit-account-name.js +40 -0
  43. package/dist/account-layer/use-edit-account-name.js.map +1 -0
  44. package/dist/account-layer/use-predicted-next-virtual-account.d.ts +38 -0
  45. package/dist/account-layer/use-predicted-next-virtual-account.d.ts.map +1 -0
  46. package/dist/account-layer/use-predicted-next-virtual-account.js +27 -0
  47. package/dist/account-layer/use-predicted-next-virtual-account.js.map +1 -0
  48. package/dist/account-layer/use-remove-margin.d.ts +43 -0
  49. package/dist/account-layer/use-remove-margin.d.ts.map +1 -0
  50. package/dist/account-layer/use-remove-margin.js +44 -0
  51. package/dist/account-layer/use-remove-margin.js.map +1 -0
  52. package/dist/account-layer/use-simulate-add-margin.d.ts +24 -0
  53. package/dist/account-layer/use-simulate-add-margin.d.ts.map +1 -0
  54. package/dist/account-layer/use-simulate-add-margin.js +29 -0
  55. package/dist/account-layer/use-simulate-add-margin.js.map +1 -0
  56. package/dist/account-layer/use-simulate-allocate.d.ts +25 -0
  57. package/dist/account-layer/use-simulate-allocate.d.ts.map +1 -0
  58. package/dist/account-layer/use-simulate-allocate.js +29 -0
  59. package/dist/account-layer/use-simulate-allocate.js.map +1 -0
  60. package/dist/account-layer/use-simulate-create-sub-accounts.d.ts +25 -0
  61. package/dist/account-layer/use-simulate-create-sub-accounts.d.ts.map +1 -0
  62. package/dist/account-layer/use-simulate-create-sub-accounts.js +29 -0
  63. package/dist/account-layer/use-simulate-create-sub-accounts.js.map +1 -0
  64. package/dist/account-layer/use-simulate-deallocate.d.ts +29 -0
  65. package/dist/account-layer/use-simulate-deallocate.d.ts.map +1 -0
  66. package/dist/account-layer/use-simulate-deallocate.js +29 -0
  67. package/dist/account-layer/use-simulate-deallocate.js.map +1 -0
  68. package/dist/account-layer/use-simulate-delete-sub-account.d.ts +25 -0
  69. package/dist/account-layer/use-simulate-delete-sub-account.d.ts.map +1 -0
  70. package/dist/account-layer/use-simulate-delete-sub-account.js +29 -0
  71. package/dist/account-layer/use-simulate-delete-sub-account.js.map +1 -0
  72. package/dist/account-layer/use-simulate-deposit-and-allocate.d.ts +25 -0
  73. package/dist/account-layer/use-simulate-deposit-and-allocate.d.ts.map +1 -0
  74. package/dist/account-layer/use-simulate-deposit-and-allocate.js +29 -0
  75. package/dist/account-layer/use-simulate-deposit-and-allocate.js.map +1 -0
  76. package/dist/account-layer/use-simulate-deposit.d.ts +25 -0
  77. package/dist/account-layer/use-simulate-deposit.d.ts.map +1 -0
  78. package/dist/account-layer/use-simulate-deposit.js +29 -0
  79. package/dist/account-layer/use-simulate-deposit.js.map +1 -0
  80. package/dist/account-layer/use-simulate-edit-account-name.d.ts +25 -0
  81. package/dist/account-layer/use-simulate-edit-account-name.d.ts.map +1 -0
  82. package/dist/account-layer/use-simulate-edit-account-name.js +29 -0
  83. package/dist/account-layer/use-simulate-edit-account-name.js.map +1 -0
  84. package/dist/account-layer/use-simulate-remove-margin.d.ts +30 -0
  85. package/dist/account-layer/use-simulate-remove-margin.d.ts.map +1 -0
  86. package/dist/account-layer/use-simulate-remove-margin.js +29 -0
  87. package/dist/account-layer/use-simulate-remove-margin.js.map +1 -0
  88. package/dist/account-layer/use-sub-account-virtual-nonce.d.ts +23 -0
  89. package/dist/account-layer/use-sub-account-virtual-nonce.d.ts.map +1 -0
  90. package/dist/account-layer/use-sub-account-virtual-nonce.js +27 -0
  91. package/dist/account-layer/use-sub-account-virtual-nonce.js.map +1 -0
  92. package/dist/account-layer/use-sub-account.d.ts +22 -0
  93. package/dist/account-layer/use-sub-account.d.ts.map +1 -0
  94. package/dist/account-layer/use-sub-account.js +27 -0
  95. package/dist/account-layer/use-sub-account.js.map +1 -0
  96. package/dist/account-layer/use-sub-accounts-count-of-user.d.ts +22 -0
  97. package/dist/account-layer/use-sub-accounts-count-of-user.d.ts.map +1 -0
  98. package/dist/account-layer/use-sub-accounts-count-of-user.js +27 -0
  99. package/dist/account-layer/use-sub-accounts-count-of-user.js.map +1 -0
  100. package/dist/account-layer/use-user-sub-accounts-addresses.d.ts +24 -0
  101. package/dist/account-layer/use-user-sub-accounts-addresses.d.ts.map +1 -0
  102. package/dist/account-layer/use-user-sub-accounts-addresses.js +27 -0
  103. package/dist/account-layer/use-user-sub-accounts-addresses.js.map +1 -0
  104. package/dist/account-layer/use-user-sub-accounts.d.ts +28 -0
  105. package/dist/account-layer/use-user-sub-accounts.d.ts.map +1 -0
  106. package/dist/account-layer/use-user-sub-accounts.js +27 -0
  107. package/dist/account-layer/use-user-sub-accounts.js.map +1 -0
  108. package/dist/account-layer/use-virtual-account.d.ts +35 -0
  109. package/dist/account-layer/use-virtual-account.d.ts.map +1 -0
  110. package/dist/account-layer/use-virtual-account.js +32 -0
  111. package/dist/account-layer/use-virtual-account.js.map +1 -0
  112. package/dist/account-layer/use-virtual-accounts-addresses-of-sub-account.d.ts +25 -0
  113. package/dist/account-layer/use-virtual-accounts-addresses-of-sub-account.d.ts.map +1 -0
  114. package/dist/account-layer/use-virtual-accounts-addresses-of-sub-account.js +27 -0
  115. package/dist/account-layer/use-virtual-accounts-addresses-of-sub-account.js.map +1 -0
  116. package/dist/balance-history/index.d.ts +4 -0
  117. package/dist/balance-history/index.d.ts.map +1 -0
  118. package/dist/balance-history/use-balance-history.d.ts +26 -0
  119. package/dist/balance-history/use-balance-history.d.ts.map +1 -0
  120. package/dist/balance-history/use-balance-history.js +27 -0
  121. package/dist/balance-history/use-balance-history.js.map +1 -0
  122. package/dist/balance-history/use-deposit-history.d.ts +19 -0
  123. package/dist/balance-history/use-deposit-history.d.ts.map +1 -0
  124. package/dist/balance-history/use-deposit-history.js +14 -0
  125. package/dist/balance-history/use-deposit-history.js.map +1 -0
  126. package/dist/balance-history/use-withdraw-history.d.ts +20 -0
  127. package/dist/balance-history/use-withdraw-history.d.ts.map +1 -0
  128. package/dist/balance-history/use-withdraw-history.js +14 -0
  129. package/dist/balance-history/use-withdraw-history.js.map +1 -0
  130. package/dist/collateral/index.d.ts +5 -0
  131. package/dist/collateral/index.d.ts.map +1 -0
  132. package/dist/collateral/use-approve-collateral.d.ts +27 -0
  133. package/dist/collateral/use-approve-collateral.d.ts.map +1 -0
  134. package/dist/collateral/use-approve-collateral.js +40 -0
  135. package/dist/collateral/use-approve-collateral.js.map +1 -0
  136. package/dist/collateral/use-collateral-allowance.d.ts +24 -0
  137. package/dist/collateral/use-collateral-allowance.d.ts.map +1 -0
  138. package/dist/collateral/use-collateral-allowance.js +27 -0
  139. package/dist/collateral/use-collateral-allowance.js.map +1 -0
  140. package/dist/collateral/use-collateral-balance.d.ts +22 -0
  141. package/dist/collateral/use-collateral-balance.d.ts.map +1 -0
  142. package/dist/collateral/use-collateral-balance.js +27 -0
  143. package/dist/collateral/use-collateral-balance.js.map +1 -0
  144. package/dist/collateral/use-simulate-approve-collateral.d.ts +26 -0
  145. package/dist/collateral/use-simulate-approve-collateral.d.ts.map +1 -0
  146. package/dist/collateral/use-simulate-approve-collateral.js +29 -0
  147. package/dist/collateral/use-simulate-approve-collateral.js.map +1 -0
  148. package/dist/error-codes/index.d.ts +3 -0
  149. package/dist/error-codes/index.d.ts.map +1 -0
  150. package/dist/error-codes/use-solver-error-codes.d.ts +27 -0
  151. package/dist/error-codes/use-solver-error-codes.d.ts.map +1 -0
  152. package/dist/error-codes/use-solver-error-codes.js +27 -0
  153. package/dist/error-codes/use-solver-error-codes.js.map +1 -0
  154. package/dist/error-codes/use-solver-error-message.d.ts +23 -0
  155. package/dist/error-codes/use-solver-error-message.d.ts.map +1 -0
  156. package/dist/error-codes/use-solver-error-message.js +11 -0
  157. package/dist/error-codes/use-solver-error-message.js.map +1 -0
  158. package/dist/errors/index.d.ts +4 -0
  159. package/dist/errors/index.d.ts.map +1 -0
  160. package/dist/errors/normalize-symm-error.d.ts +14 -0
  161. package/dist/errors/normalize-symm-error.d.ts.map +1 -0
  162. package/dist/errors/normalize-symm-error.js +86 -0
  163. package/dist/errors/normalize-symm-error.js.map +1 -0
  164. package/dist/errors/symmio-request-error.d.ts +54 -0
  165. package/dist/errors/symmio-request-error.d.ts.map +1 -0
  166. package/dist/errors/symmio-request-error.js +17 -0
  167. package/dist/errors/symmio-request-error.js.map +1 -0
  168. package/dist/errors/types.d.ts +21 -0
  169. package/dist/errors/types.d.ts.map +1 -0
  170. package/dist/fees/index.d.ts +2 -0
  171. package/dist/fees/index.d.ts.map +1 -0
  172. package/dist/fees/use-fee-for-user.d.ts +25 -0
  173. package/dist/fees/use-fee-for-user.d.ts.map +1 -0
  174. package/dist/fees/use-fee-for-user.js +27 -0
  175. package/dist/fees/use-fee-for-user.js.map +1 -0
  176. package/dist/index.d.ts +184 -0
  177. package/dist/index.d.ts.map +1 -0
  178. package/dist/index.js +122 -0
  179. package/dist/instant-layer/index.d.ts +14 -0
  180. package/dist/instant-layer/index.d.ts.map +1 -0
  181. package/dist/instant-layer/use-delegation-expiry.d.ts +22 -0
  182. package/dist/instant-layer/use-delegation-expiry.d.ts.map +1 -0
  183. package/dist/instant-layer/use-delegation-expiry.js +23 -0
  184. package/dist/instant-layer/use-delegation-expiry.js.map +1 -0
  185. package/dist/instant-layer/use-grant-delegation.d.ts +26 -0
  186. package/dist/instant-layer/use-grant-delegation.d.ts.map +1 -0
  187. package/dist/instant-layer/use-grant-delegation.js +38 -0
  188. package/dist/instant-layer/use-grant-delegation.js.map +1 -0
  189. package/dist/instant-layer/use-instant-close-auto.d.ts +29 -0
  190. package/dist/instant-layer/use-instant-close-auto.d.ts.map +1 -0
  191. package/dist/instant-layer/use-instant-close-auto.js +32 -0
  192. package/dist/instant-layer/use-instant-close-auto.js.map +1 -0
  193. package/dist/instant-layer/use-instant-close-bulk-auto.d.ts +26 -0
  194. package/dist/instant-layer/use-instant-close-bulk-auto.d.ts.map +1 -0
  195. package/dist/instant-layer/use-instant-close-bulk-auto.js +32 -0
  196. package/dist/instant-layer/use-instant-close-bulk-auto.js.map +1 -0
  197. package/dist/instant-layer/use-instant-close-bulk.d.ts +24 -0
  198. package/dist/instant-layer/use-instant-close-bulk.d.ts.map +1 -0
  199. package/dist/instant-layer/use-instant-close-bulk.js +32 -0
  200. package/dist/instant-layer/use-instant-close-bulk.js.map +1 -0
  201. package/dist/instant-layer/use-instant-close.d.ts +29 -0
  202. package/dist/instant-layer/use-instant-close.d.ts.map +1 -0
  203. package/dist/instant-layer/use-instant-close.js +32 -0
  204. package/dist/instant-layer/use-instant-close.js.map +1 -0
  205. package/dist/instant-layer/use-instant-closes.d.ts +25 -0
  206. package/dist/instant-layer/use-instant-closes.d.ts.map +1 -0
  207. package/dist/instant-layer/use-instant-closes.js +27 -0
  208. package/dist/instant-layer/use-instant-closes.js.map +1 -0
  209. package/dist/instant-layer/use-instant-open-auto.d.ts +31 -0
  210. package/dist/instant-layer/use-instant-open-auto.d.ts.map +1 -0
  211. package/dist/instant-layer/use-instant-open-auto.js +32 -0
  212. package/dist/instant-layer/use-instant-open-auto.js.map +1 -0
  213. package/dist/instant-layer/use-instant-open-quote-id.d.ts +28 -0
  214. package/dist/instant-layer/use-instant-open-quote-id.d.ts.map +1 -0
  215. package/dist/instant-layer/use-instant-open-quote-id.js +27 -0
  216. package/dist/instant-layer/use-instant-open-quote-id.js.map +1 -0
  217. package/dist/instant-layer/use-instant-open.d.ts +33 -0
  218. package/dist/instant-layer/use-instant-open.d.ts.map +1 -0
  219. package/dist/instant-layer/use-instant-open.js +32 -0
  220. package/dist/instant-layer/use-instant-open.js.map +1 -0
  221. package/dist/instant-layer/use-instant-opens.d.ts +25 -0
  222. package/dist/instant-layer/use-instant-opens.d.ts.map +1 -0
  223. package/dist/instant-layer/use-instant-opens.js +27 -0
  224. package/dist/instant-layer/use-instant-opens.js.map +1 -0
  225. package/dist/instant-layer/use-is-delegation-active.d.ts +22 -0
  226. package/dist/instant-layer/use-is-delegation-active.d.ts.map +1 -0
  227. package/dist/instant-layer/use-is-delegation-active.js +23 -0
  228. package/dist/instant-layer/use-is-delegation-active.js.map +1 -0
  229. package/dist/instant-layer/use-simulate-grant-delegation.d.ts +25 -0
  230. package/dist/instant-layer/use-simulate-grant-delegation.d.ts.map +1 -0
  231. package/dist/instant-layer/use-simulate-grant-delegation.js +29 -0
  232. package/dist/instant-layer/use-simulate-grant-delegation.js.map +1 -0
  233. package/dist/locked-params/index.d.ts +2 -0
  234. package/dist/locked-params/index.d.ts.map +1 -0
  235. package/dist/locked-params/use-locked-params.d.ts +23 -0
  236. package/dist/locked-params/use-locked-params.d.ts.map +1 -0
  237. package/dist/locked-params/use-locked-params.js +27 -0
  238. package/dist/locked-params/use-locked-params.js.map +1 -0
  239. package/dist/markets/index.d.ts +3 -0
  240. package/dist/markets/index.d.ts.map +1 -0
  241. package/dist/markets/use-markets.d.ts +26 -0
  242. package/dist/markets/use-markets.d.ts.map +1 -0
  243. package/dist/markets/use-markets.js +27 -0
  244. package/dist/markets/use-markets.js.map +1 -0
  245. package/dist/markets/use-onchain-contract-markets.d.ts +24 -0
  246. package/dist/markets/use-onchain-contract-markets.d.ts.map +1 -0
  247. package/dist/markets/use-onchain-contract-markets.js +27 -0
  248. package/dist/markets/use-onchain-contract-markets.js.map +1 -0
  249. package/dist/muon/index.d.ts +11 -0
  250. package/dist/muon/index.d.ts.map +1 -0
  251. package/dist/muon/use-deallocate-upnl-sig.d.ts +28 -0
  252. package/dist/muon/use-deallocate-upnl-sig.d.ts.map +1 -0
  253. package/dist/muon/use-deallocate-upnl-sig.js +27 -0
  254. package/dist/muon/use-deallocate-upnl-sig.js.map +1 -0
  255. package/dist/muon/use-muon-party-a-overview.d.ts +29 -0
  256. package/dist/muon/use-muon-party-a-overview.d.ts.map +1 -0
  257. package/dist/muon/use-muon-party-a-overview.js +27 -0
  258. package/dist/muon/use-muon-party-a-overview.js.map +1 -0
  259. package/dist/muon/use-muon-price-range.d.ts +35 -0
  260. package/dist/muon/use-muon-price-range.d.ts.map +1 -0
  261. package/dist/muon/use-muon-price-range.js +31 -0
  262. package/dist/muon/use-muon-price-range.js.map +1 -0
  263. package/dist/muon/use-muon-price.d.ts +28 -0
  264. package/dist/muon/use-muon-price.d.ts.map +1 -0
  265. package/dist/muon/use-muon-price.js +27 -0
  266. package/dist/muon/use-muon-price.js.map +1 -0
  267. package/dist/muon/use-muon-settle-upnl.d.ts +29 -0
  268. package/dist/muon/use-muon-settle-upnl.d.ts.map +1 -0
  269. package/dist/muon/use-muon-settle-upnl.js +28 -0
  270. package/dist/muon/use-muon-settle-upnl.js.map +1 -0
  271. package/dist/muon/use-muon-upnl-a-with-symbol-price.d.ts +29 -0
  272. package/dist/muon/use-muon-upnl-a-with-symbol-price.d.ts.map +1 -0
  273. package/dist/muon/use-muon-upnl-a-with-symbol-price.js +28 -0
  274. package/dist/muon/use-muon-upnl-a-with-symbol-price.js.map +1 -0
  275. package/dist/muon/use-muon-upnl-a.d.ts +28 -0
  276. package/dist/muon/use-muon-upnl-a.d.ts.map +1 -0
  277. package/dist/muon/use-muon-upnl-a.js +27 -0
  278. package/dist/muon/use-muon-upnl-a.js.map +1 -0
  279. package/dist/muon/use-muon-upnl-b.d.ts +29 -0
  280. package/dist/muon/use-muon-upnl-b.d.ts.map +1 -0
  281. package/dist/muon/use-muon-upnl-b.js +28 -0
  282. package/dist/muon/use-muon-upnl-b.js.map +1 -0
  283. package/dist/muon/use-muon-upnl-with-symbol-price.d.ts +28 -0
  284. package/dist/muon/use-muon-upnl-with-symbol-price.d.ts.map +1 -0
  285. package/dist/muon/use-muon-upnl-with-symbol-price.js +29 -0
  286. package/dist/muon/use-muon-upnl-with-symbol-price.js.map +1 -0
  287. package/dist/muon/use-muon-upnl.d.ts +28 -0
  288. package/dist/muon/use-muon-upnl.d.ts.map +1 -0
  289. package/dist/muon/use-muon-upnl.js +28 -0
  290. package/dist/muon/use-muon-upnl.js.map +1 -0
  291. package/dist/notifications/index.d.ts +2 -0
  292. package/dist/notifications/index.d.ts.map +1 -0
  293. package/dist/notifications/use-search-notifications.d.ts +29 -0
  294. package/dist/notifications/use-search-notifications.d.ts.map +1 -0
  295. package/dist/notifications/use-search-notifications.js +27 -0
  296. package/dist/notifications/use-search-notifications.js.map +1 -0
  297. package/dist/notional-cap/index.d.ts +4 -0
  298. package/dist/notional-cap/index.d.ts.map +1 -0
  299. package/dist/notional-cap/use-notional-cap-all.d.ts +32 -0
  300. package/dist/notional-cap/use-notional-cap-all.d.ts.map +1 -0
  301. package/dist/notional-cap/use-notional-cap-all.js +32 -0
  302. package/dist/notional-cap/use-notional-cap-all.js.map +1 -0
  303. package/dist/notional-cap/use-notional-cap-by-symbol-id.d.ts +36 -0
  304. package/dist/notional-cap/use-notional-cap-by-symbol-id.d.ts.map +1 -0
  305. package/dist/notional-cap/use-notional-cap-by-symbol-id.js +32 -0
  306. package/dist/notional-cap/use-notional-cap-by-symbol-id.js.map +1 -0
  307. package/dist/notional-cap/use-open-interest-by-symbol-id.d.ts +34 -0
  308. package/dist/notional-cap/use-open-interest-by-symbol-id.d.ts.map +1 -0
  309. package/dist/notional-cap/use-open-interest-by-symbol-id.js +32 -0
  310. package/dist/notional-cap/use-open-interest-by-symbol-id.js.map +1 -0
  311. package/dist/price-service/index.d.ts +9 -0
  312. package/dist/price-service/index.d.ts.map +1 -0
  313. package/dist/price-service/use-enigma-price-by-market-id.d.ts +42 -0
  314. package/dist/price-service/use-enigma-price-by-market-id.d.ts.map +1 -0
  315. package/dist/price-service/use-enigma-price-by-market-id.js +30 -0
  316. package/dist/price-service/use-enigma-price-by-market-id.js.map +1 -0
  317. package/dist/price-service/use-enigma-price-by-name.d.ts +41 -0
  318. package/dist/price-service/use-enigma-price-by-name.d.ts.map +1 -0
  319. package/dist/price-service/use-enigma-price-by-name.js +45 -0
  320. package/dist/price-service/use-enigma-price-by-name.js.map +1 -0
  321. package/dist/price-service/use-enigma-price-service-health.d.ts +20 -0
  322. package/dist/price-service/use-enigma-price-service-health.d.ts.map +1 -0
  323. package/dist/price-service/use-enigma-price-service-health.js +27 -0
  324. package/dist/price-service/use-enigma-price-service-health.js.map +1 -0
  325. package/dist/price-service/use-enigma-price-service-metadata.d.ts +20 -0
  326. package/dist/price-service/use-enigma-price-service-metadata.d.ts.map +1 -0
  327. package/dist/price-service/use-enigma-price-service-metadata.js +27 -0
  328. package/dist/price-service/use-enigma-price-service-metadata.js.map +1 -0
  329. package/dist/price-service/use-enigma-price-service-prices-by-addresses.d.ts +20 -0
  330. package/dist/price-service/use-enigma-price-service-prices-by-addresses.d.ts.map +1 -0
  331. package/dist/price-service/use-enigma-price-service-prices-by-addresses.js +27 -0
  332. package/dist/price-service/use-enigma-price-service-prices-by-addresses.js.map +1 -0
  333. package/dist/price-service/use-enigma-price-service-prices-by-names.d.ts +20 -0
  334. package/dist/price-service/use-enigma-price-service-prices-by-names.d.ts.map +1 -0
  335. package/dist/price-service/use-enigma-price-service-prices-by-names.js +27 -0
  336. package/dist/price-service/use-enigma-price-service-prices-by-names.js.map +1 -0
  337. package/dist/price-service/use-enigma-price-service-symbols-info.d.ts +20 -0
  338. package/dist/price-service/use-enigma-price-service-symbols-info.d.ts.map +1 -0
  339. package/dist/price-service/use-enigma-price-service-symbols-info.js +27 -0
  340. package/dist/price-service/use-enigma-price-service-symbols-info.js.map +1 -0
  341. package/dist/price-service/use-enigma-prices.d.ts +40 -0
  342. package/dist/price-service/use-enigma-prices.d.ts.map +1 -0
  343. package/dist/price-service/use-enigma-prices.js +47 -0
  344. package/dist/price-service/use-enigma-prices.js.map +1 -0
  345. package/dist/provider/index.d.ts +4 -0
  346. package/dist/provider/index.d.ts.map +1 -0
  347. package/dist/provider/symmio-config-context.d.ts +9 -0
  348. package/dist/provider/symmio-config-context.d.ts.map +1 -0
  349. package/dist/provider/symmio-config-context.js +8 -0
  350. package/dist/provider/symmio-config-context.js.map +1 -0
  351. package/dist/provider/symmio-provider.d.ts +49 -0
  352. package/dist/provider/symmio-provider.d.ts.map +1 -0
  353. package/dist/provider/symmio-provider.js +39 -0
  354. package/dist/provider/symmio-provider.js.map +1 -0
  355. package/dist/provider/use-symmio-chain-id.d.ts +14 -0
  356. package/dist/provider/use-symmio-chain-id.d.ts.map +1 -0
  357. package/dist/provider/use-symmio-chain-id.js +10 -0
  358. package/dist/provider/use-symmio-chain-id.js.map +1 -0
  359. package/dist/provider/use-symmio-config.d.ts +24 -0
  360. package/dist/provider/use-symmio-config.d.ts.map +1 -0
  361. package/dist/provider/use-symmio-config.js +13 -0
  362. package/dist/provider/use-symmio-config.js.map +1 -0
  363. package/dist/quotes/index.d.ts +16 -0
  364. package/dist/quotes/index.d.ts.map +1 -0
  365. package/dist/quotes/optimistic-quotes-store.d.ts +47 -0
  366. package/dist/quotes/optimistic-quotes-store.d.ts.map +1 -0
  367. package/dist/quotes/optimistic-quotes-store.js +27 -0
  368. package/dist/quotes/optimistic-quotes-store.js.map +1 -0
  369. package/dist/quotes/use-account-liquidation-price.d.ts +39 -0
  370. package/dist/quotes/use-account-liquidation-price.d.ts.map +1 -0
  371. package/dist/quotes/use-account-liquidation-price.js +57 -0
  372. package/dist/quotes/use-account-liquidation-price.js.map +1 -0
  373. package/dist/quotes/use-grouped-quotes.d.ts +55 -0
  374. package/dist/quotes/use-grouped-quotes.d.ts.map +1 -0
  375. package/dist/quotes/use-grouped-quotes.js +21 -0
  376. package/dist/quotes/use-grouped-quotes.js.map +1 -0
  377. package/dist/quotes/use-managed-quotes.d.ts +108 -0
  378. package/dist/quotes/use-managed-quotes.d.ts.map +1 -0
  379. package/dist/quotes/use-managed-quotes.js +314 -0
  380. package/dist/quotes/use-managed-quotes.js.map +1 -0
  381. package/dist/quotes/use-party-a-open-positions.d.ts +23 -0
  382. package/dist/quotes/use-party-a-open-positions.d.ts.map +1 -0
  383. package/dist/quotes/use-party-a-open-positions.js +27 -0
  384. package/dist/quotes/use-party-a-open-positions.js.map +1 -0
  385. package/dist/quotes/use-party-a-pending-quotes.d.ts +23 -0
  386. package/dist/quotes/use-party-a-pending-quotes.d.ts.map +1 -0
  387. package/dist/quotes/use-party-a-pending-quotes.js +27 -0
  388. package/dist/quotes/use-party-a-pending-quotes.js.map +1 -0
  389. package/dist/quotes/use-quote-events-by-type.d.ts +26 -0
  390. package/dist/quotes/use-quote-events-by-type.d.ts.map +1 -0
  391. package/dist/quotes/use-quote-events-by-type.js +27 -0
  392. package/dist/quotes/use-quote-events-by-type.js.map +1 -0
  393. package/dist/quotes/use-quote-funding.d.ts +35 -0
  394. package/dist/quotes/use-quote-funding.d.ts.map +1 -0
  395. package/dist/quotes/use-quote-funding.js +21 -0
  396. package/dist/quotes/use-quote-funding.js.map +1 -0
  397. package/dist/quotes/use-quote-history.d.ts +26 -0
  398. package/dist/quotes/use-quote-history.d.ts.map +1 -0
  399. package/dist/quotes/use-quote-history.js +27 -0
  400. package/dist/quotes/use-quote-history.js.map +1 -0
  401. package/dist/quotes/use-quote-platform-fee.d.ts +31 -0
  402. package/dist/quotes/use-quote-platform-fee.d.ts.map +1 -0
  403. package/dist/quotes/use-quote-platform-fee.js +31 -0
  404. package/dist/quotes/use-quote-platform-fee.js.map +1 -0
  405. package/dist/quotes/use-quote-price-history.d.ts +24 -0
  406. package/dist/quotes/use-quote-price-history.d.ts.map +1 -0
  407. package/dist/quotes/use-quote-price-history.js +14 -0
  408. package/dist/quotes/use-quote-price-history.js.map +1 -0
  409. package/dist/quotes/use-quote-upnl-and-pnl.d.ts +34 -0
  410. package/dist/quotes/use-quote-upnl-and-pnl.d.ts.map +1 -0
  411. package/dist/quotes/use-quote-upnl-and-pnl.js +61 -0
  412. package/dist/quotes/use-quote-upnl-and-pnl.js.map +1 -0
  413. package/dist/quotes/use-quote.d.ts +23 -0
  414. package/dist/quotes/use-quote.d.ts.map +1 -0
  415. package/dist/quotes/use-quote.js +27 -0
  416. package/dist/quotes/use-quote.js.map +1 -0
  417. package/dist/quotes/use-quotes-funding.d.ts +52 -0
  418. package/dist/quotes/use-quotes-funding.d.ts.map +1 -0
  419. package/dist/quotes/use-quotes-funding.js +80 -0
  420. package/dist/quotes/use-quotes-funding.js.map +1 -0
  421. package/dist/quotes/use-subgraph-query.d.ts +25 -0
  422. package/dist/quotes/use-subgraph-query.d.ts.map +1 -0
  423. package/dist/quotes/use-subgraph-query.js +27 -0
  424. package/dist/quotes/use-subgraph-query.js.map +1 -0
  425. package/dist/tpsl/index.d.ts +8 -0
  426. package/dist/tpsl/index.d.ts.map +1 -0
  427. package/dist/tpsl/to-quote-tpsl.d.ts +19 -0
  428. package/dist/tpsl/to-quote-tpsl.d.ts.map +1 -0
  429. package/dist/tpsl/to-quote-tpsl.js +46 -0
  430. package/dist/tpsl/to-quote-tpsl.js.map +1 -0
  431. package/dist/tpsl/tpsl-confirming.d.ts +36 -0
  432. package/dist/tpsl/tpsl-confirming.d.ts.map +1 -0
  433. package/dist/tpsl/tpsl-confirming.js +28 -0
  434. package/dist/tpsl/tpsl-confirming.js.map +1 -0
  435. package/dist/tpsl/use-quote-tpsl.d.ts +34 -0
  436. package/dist/tpsl/use-quote-tpsl.d.ts.map +1 -0
  437. package/dist/tpsl/use-quote-tpsl.js +73 -0
  438. package/dist/tpsl/use-quote-tpsl.js.map +1 -0
  439. package/dist/tpsl/use-set-quote-tpsl.d.ts +22 -0
  440. package/dist/tpsl/use-set-quote-tpsl.d.ts.map +1 -0
  441. package/dist/tpsl/use-set-quote-tpsl.js +43 -0
  442. package/dist/tpsl/use-set-quote-tpsl.js.map +1 -0
  443. package/dist/tpsl/use-tpsl-config.d.ts +14 -0
  444. package/dist/tpsl/use-tpsl-config.d.ts.map +1 -0
  445. package/dist/tpsl/use-tpsl-config.js +31 -0
  446. package/dist/tpsl/use-tpsl-config.js.map +1 -0
  447. package/dist/tpsl/use-tpsl-signing-spec.d.ts +13 -0
  448. package/dist/tpsl/use-tpsl-signing-spec.d.ts.map +1 -0
  449. package/dist/tpsl/use-tpsl-signing-spec.js +31 -0
  450. package/dist/tpsl/use-tpsl-signing-spec.js.map +1 -0
  451. package/dist/tpsl/use-watch-tpsl-notifications.d.ts +30 -0
  452. package/dist/tpsl/use-watch-tpsl-notifications.d.ts.map +1 -0
  453. package/dist/tpsl/use-watch-tpsl-notifications.js +44 -0
  454. package/dist/tpsl/use-watch-tpsl-notifications.js.map +1 -0
  455. package/dist/transactions/index.d.ts +4 -0
  456. package/dist/transactions/index.d.ts.map +1 -0
  457. package/dist/transactions/resolve-write-result.d.ts +40 -0
  458. package/dist/transactions/resolve-write-result.d.ts.map +1 -0
  459. package/dist/transactions/resolve-write-result.js +15 -0
  460. package/dist/transactions/resolve-write-result.js.map +1 -0
  461. package/dist/transactions/use-transactions-store.d.ts +52 -0
  462. package/dist/transactions/use-transactions-store.d.ts.map +1 -0
  463. package/dist/transactions/use-transactions-store.js +24 -0
  464. package/dist/transactions/use-transactions-store.js.map +1 -0
  465. package/dist/transactions/write-types.d.ts +28 -0
  466. package/dist/transactions/write-types.d.ts.map +1 -0
  467. package/dist/transfers/index.d.ts +2 -0
  468. package/dist/transfers/index.d.ts.map +1 -0
  469. package/dist/transfers/use-transfer-history.d.ts +26 -0
  470. package/dist/transfers/use-transfer-history.d.ts.map +1 -0
  471. package/dist/transfers/use-transfer-history.js +27 -0
  472. package/dist/transfers/use-transfer-history.js.map +1 -0
  473. package/dist/utils/index.d.ts +2 -0
  474. package/dist/utils/index.d.ts.map +1 -0
  475. package/dist/utils/predicate-match.d.ts +27 -0
  476. package/dist/utils/predicate-match.d.ts.map +1 -0
  477. package/dist/utils/predicate-match.js +18 -0
  478. package/dist/utils/predicate-match.js.map +1 -0
  479. package/dist/wallet/index.d.ts +5 -0
  480. package/dist/wallet/index.d.ts.map +1 -0
  481. package/dist/wallet/use-connect-wallet.d.ts +34 -0
  482. package/dist/wallet/use-connect-wallet.d.ts.map +1 -0
  483. package/dist/wallet/use-connect-wallet.js +24 -0
  484. package/dist/wallet/use-connect-wallet.js.map +1 -0
  485. package/dist/wallet/use-disconnect-wallet.d.ts +20 -0
  486. package/dist/wallet/use-disconnect-wallet.d.ts.map +1 -0
  487. package/dist/wallet/use-disconnect-wallet.js +21 -0
  488. package/dist/wallet/use-disconnect-wallet.js.map +1 -0
  489. package/dist/wallet/use-switch-to-symmio-chain.d.ts +29 -0
  490. package/dist/wallet/use-switch-to-symmio-chain.d.ts.map +1 -0
  491. package/dist/wallet/use-switch-to-symmio-chain.js +24 -0
  492. package/dist/wallet/use-switch-to-symmio-chain.js.map +1 -0
  493. package/dist/wallet/use-wallet-account.d.ts +32 -0
  494. package/dist/wallet/use-wallet-account.d.ts.map +1 -0
  495. package/dist/wallet/use-wallet-account.js +18 -0
  496. package/dist/wallet/use-wallet-account.js.map +1 -0
  497. package/dist/websocket/index.d.ts +2 -0
  498. package/dist/websocket/index.d.ts.map +1 -0
  499. package/dist/websocket/use-notifications.d.ts +48 -0
  500. package/dist/websocket/use-notifications.d.ts.map +1 -0
  501. package/dist/websocket/use-notifications.js +51 -0
  502. package/dist/websocket/use-notifications.js.map +1 -0
  503. package/dist/withdraw/index.d.ts +11 -0
  504. package/dist/withdraw/index.d.ts.map +1 -0
  505. package/dist/withdraw/use-finalize-withdraw-request.d.ts +26 -0
  506. package/dist/withdraw/use-finalize-withdraw-request.d.ts.map +1 -0
  507. package/dist/withdraw/use-finalize-withdraw-request.js +40 -0
  508. package/dist/withdraw/use-finalize-withdraw-request.js.map +1 -0
  509. package/dist/withdraw/use-initiate-withdraw.d.ts +28 -0
  510. package/dist/withdraw/use-initiate-withdraw.d.ts.map +1 -0
  511. package/dist/withdraw/use-initiate-withdraw.js +42 -0
  512. package/dist/withdraw/use-initiate-withdraw.js.map +1 -0
  513. package/dist/withdraw/use-last-withdraw-request-id.d.ts +22 -0
  514. package/dist/withdraw/use-last-withdraw-request-id.d.ts.map +1 -0
  515. package/dist/withdraw/use-last-withdraw-request-id.js +27 -0
  516. package/dist/withdraw/use-last-withdraw-request-id.js.map +1 -0
  517. package/dist/withdraw/use-pending-withdraw-requests.d.ts +21 -0
  518. package/dist/withdraw/use-pending-withdraw-requests.d.ts.map +1 -0
  519. package/dist/withdraw/use-pending-withdraw-requests.js +27 -0
  520. package/dist/withdraw/use-pending-withdraw-requests.js.map +1 -0
  521. package/dist/withdraw/use-request-cancel-withdraw.d.ts +25 -0
  522. package/dist/withdraw/use-request-cancel-withdraw.d.ts.map +1 -0
  523. package/dist/withdraw/use-request-cancel-withdraw.js +40 -0
  524. package/dist/withdraw/use-request-cancel-withdraw.js.map +1 -0
  525. package/dist/withdraw/use-simulate-finalize-withdraw-request.d.ts +25 -0
  526. package/dist/withdraw/use-simulate-finalize-withdraw-request.d.ts.map +1 -0
  527. package/dist/withdraw/use-simulate-finalize-withdraw-request.js +29 -0
  528. package/dist/withdraw/use-simulate-finalize-withdraw-request.js.map +1 -0
  529. package/dist/withdraw/use-simulate-initiate-withdraw.d.ts +26 -0
  530. package/dist/withdraw/use-simulate-initiate-withdraw.d.ts.map +1 -0
  531. package/dist/withdraw/use-simulate-initiate-withdraw.js +29 -0
  532. package/dist/withdraw/use-simulate-initiate-withdraw.js.map +1 -0
  533. package/dist/withdraw/use-simulate-request-cancel-withdraw.d.ts +25 -0
  534. package/dist/withdraw/use-simulate-request-cancel-withdraw.d.ts.map +1 -0
  535. package/dist/withdraw/use-simulate-request-cancel-withdraw.js +29 -0
  536. package/dist/withdraw/use-simulate-request-cancel-withdraw.js.map +1 -0
  537. package/dist/withdraw/use-withdraw-requests.d.ts +21 -0
  538. package/dist/withdraw/use-withdraw-requests.d.ts.map +1 -0
  539. package/dist/withdraw/use-withdraw-requests.js +27 -0
  540. package/dist/withdraw/use-withdraw-requests.js.map +1 -0
  541. package/dist/withdraw/use-withdrawable-time.d.ts +22 -0
  542. package/dist/withdraw/use-withdrawable-time.d.ts.map +1 -0
  543. package/dist/withdraw/use-withdrawable-time.js +27 -0
  544. package/dist/withdraw/use-withdrawable-time.js.map +1 -0
  545. package/package.json +112 -0
@@ -0,0 +1,27 @@
1
+ "use client";
2
+ import { useSymmioChainId as e } from "../provider/use-symmio-chain-id.js";
3
+ import { useSymmioConfig as t } from "../provider/use-symmio-config.js";
4
+ import { normalizeSymmError as n } from "../errors/normalize-symm-error.js";
5
+ import { getEnigmaPriceServiceSymbolsInfoQueryOptions as r } from "@symmio/trading-core";
6
+ import { useQuery as i } from "@tanstack/react-query";
7
+ //#region src/price-service/use-enigma-price-service-symbols-info.ts
8
+ function a(a = {}) {
9
+ let o = t(a), s = e(), c = r(o, {
10
+ ...a,
11
+ chainId: a.chainId ?? s
12
+ });
13
+ return i({
14
+ ...c,
15
+ queryFn: async () => {
16
+ try {
17
+ return await c.queryFn();
18
+ } catch (e) {
19
+ throw n(e);
20
+ }
21
+ }
22
+ });
23
+ }
24
+ //#endregion
25
+ export { a as useEnigmaPriceServiceSymbolsInfo };
26
+
27
+ //# sourceMappingURL=use-enigma-price-service-symbols-info.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-enigma-price-service-symbols-info.js","names":[],"sources":["../../src/price-service/use-enigma-price-service-symbols-info.ts"],"sourcesContent":["\"use client\";\n\nimport {\n getEnigmaPriceServiceSymbolsInfoQueryOptions,\n type ConfigParameter,\n type GetEnigmaPriceServiceSymbolsInfoOptions,\n type GetEnigmaPriceServiceSymbolsInfoReturnType,\n} from \"@symmio/trading-core\";\nimport { useQuery, type UseQueryResult } from \"@tanstack/react-query\";\nimport { normalizeSymmError } from \"../errors/normalize-symm-error\";\nimport type { SymmioRequestError } from \"../errors/symmio-request-error\";\nimport { useSymmioChainId } from \"../provider/use-symmio-chain-id\";\nimport { useSymmioConfig } from \"../provider/use-symmio-config\";\n\n/**\n * Parameters for {@link useEnigmaPriceServiceSymbolsInfo}: chain id, TanStack\n * `query` overrides, plus an optional `config`.\n */\nexport type UseEnigmaPriceServiceSymbolsInfoParameters = GetEnigmaPriceServiceSymbolsInfoOptions & ConfigParameter;\n\n/** Return type of {@link useEnigmaPriceServiceSymbolsInfo}. */\nexport type UseEnigmaPriceServiceSymbolsInfoReturnType = UseQueryResult<\n GetEnigmaPriceServiceSymbolsInfoReturnType,\n SymmioRequestError\n>;\n\n/**\n * Fetch symbol listings from the Enigma price service.\n *\n * @example\n * ```tsx\n * const query = useEnigmaPriceServiceSymbolsInfo();\n * ```\n */\nexport function useEnigmaPriceServiceSymbolsInfo(\n parameters: UseEnigmaPriceServiceSymbolsInfoParameters = {},\n): UseEnigmaPriceServiceSymbolsInfoReturnType {\n const config = useSymmioConfig(parameters);\n const chainId = useSymmioChainId();\n const options = getEnigmaPriceServiceSymbolsInfoQueryOptions(config, {\n ...parameters,\n chainId: parameters.chainId ?? chainId,\n });\n\n return useQuery({\n ...options,\n queryFn: async () => {\n try {\n return await options.queryFn();\n } catch (err) {\n throw normalizeSymmError(err);\n }\n },\n }) as UseEnigmaPriceServiceSymbolsInfoReturnType;\n}\n"],"mappings":";;;;;;;AAkCA,SAAgB,EACd,IAAyD,CAAC,GACd;CAC5C,IAAM,IAAS,EAAgB,CAAU,GACnC,IAAU,EAAiB,GAC3B,IAAU,EAA6C,GAAQ;EACnE,GAAG;EACH,SAAS,EAAW,WAAW;CACjC,CAAC;CAED,OAAO,EAAS;EACd,GAAG;EACH,SAAS,YAAY;GACnB,IAAI;IACF,OAAO,MAAM,EAAQ,QAAQ;GAC/B,SAAS,GAAK;IACZ,MAAM,EAAmB,CAAG;GAC9B;EACF;CACF,CAAC;AACH"}
@@ -0,0 +1,40 @@
1
+ import { ConfigParameter, EnigmaPriceTick, SocketStatus } from '@symmio/trading-core';
2
+ import { SymmioRequestError } from '../errors/symmio-request-error';
3
+ /**
4
+ * Parameters for {@link useEnigmaPrices}.
5
+ */
6
+ export interface UseEnigmaPricesParameters extends ConfigParameter {
7
+ /** Target chain id. Defaults to the SDK's active chain. */
8
+ chainId?: number;
9
+ /** Subscribe only when `true`. Default `true`. */
10
+ enabled?: boolean;
11
+ /** Imperative per-tick callback, invoked in addition to map updates. */
12
+ onTick?: (ticks: EnigmaPriceTick[]) => void;
13
+ }
14
+ /**
15
+ * Value returned by {@link useEnigmaPrices}.
16
+ */
17
+ export interface UseEnigmaPricesReturnType {
18
+ /** Latest mark price keyed by symbol name. */
19
+ prices: Record<string, string>;
20
+ /** Live socket status. */
21
+ status: SocketStatus;
22
+ /** Last transport/parse error, normalized, or `null`. */
23
+ error: SymmioRequestError | null;
24
+ }
25
+ /**
26
+ * Subscribe to the chain's Enigma lowcap price-service WebSocket.
27
+ *
28
+ * Accumulates the latest `markPrice` per symbol name; updates whenever a new
29
+ * tick arrives. Pass `onTick` to also react imperatively (e.g. push into a
30
+ * non-stateful sink). The subscription is shared across hook instances via the
31
+ * SDK socket pool — multiple `useEnigmaPrices()` mounts cost one connection.
32
+ *
33
+ * @example
34
+ * ```tsx
35
+ * const { prices, status } = useEnigmaPrices();
36
+ * return <span>BTC: {prices["BTCUSDT"] ?? "—"} ({status})</span>;
37
+ * ```
38
+ */
39
+ export declare function useEnigmaPrices(parameters?: UseEnigmaPricesParameters): UseEnigmaPricesReturnType;
40
+ //# sourceMappingURL=use-enigma-prices.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-enigma-prices.d.ts","sourceRoot":"","sources":["../../src/price-service/use-enigma-prices.ts"],"names":[],"mappings":"AAEA,OAAO,EAAqB,KAAK,eAAe,EAAE,KAAK,eAAe,EAAE,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAGxH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAIzE;;GAEG;AACH,MAAM,WAAW,yBAA0B,SAAQ,eAAe;IAChE,2DAA2D;IAC3D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kDAAkD;IAClD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,wEAAwE;IACxE,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,eAAe,EAAE,KAAK,IAAI,CAAC;CAC7C;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,8CAA8C;IAC9C,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,0BAA0B;IAC1B,MAAM,EAAE,YAAY,CAAC;IACrB,yDAAyD;IACzD,KAAK,EAAE,kBAAkB,GAAG,IAAI,CAAC;CAClC;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,eAAe,CAAC,UAAU,GAAE,yBAA8B,GAAG,yBAAyB,CAmDrG"}
@@ -0,0 +1,47 @@
1
+ "use client";
2
+ import { useSymmioChainId as e } from "../provider/use-symmio-chain-id.js";
3
+ import { useSymmioConfig as t } from "../provider/use-symmio-config.js";
4
+ import { normalizeSymmError as n } from "../errors/normalize-symm-error.js";
5
+ import { watchEnigmaPrices as r } from "@symmio/trading-core";
6
+ import { useEffect as i, useRef as a, useState as o } from "react";
7
+ //#region src/price-service/use-enigma-prices.ts
8
+ function s(s = {}) {
9
+ let { chainId: c, enabled: l = !0, onTick: u } = s, d = t(s), f = e(), p = c ?? f, [m, h] = o({}), [g, _] = o("closed"), [v, y] = o(null), b = a(u);
10
+ return b.current = u, i(() => {
11
+ if (!l) {
12
+ _("closed");
13
+ return;
14
+ }
15
+ y(null);
16
+ let e;
17
+ try {
18
+ e = r(d, {
19
+ chainId: p,
20
+ onPrices: (e) => {
21
+ h((t) => {
22
+ let n = !1, r = { ...t };
23
+ for (let t of e) r[t.name] !== t.markPrice && (r[t.name] = t.markPrice, n = !0);
24
+ return n ? r : t;
25
+ }), b.current?.(e);
26
+ },
27
+ onStatusChange: _,
28
+ onError: (e) => y(n(e))
29
+ });
30
+ } catch (e) {
31
+ y(n(e)), _("closed");
32
+ }
33
+ return () => e?.();
34
+ }, [
35
+ l,
36
+ d,
37
+ p
38
+ ]), {
39
+ prices: m,
40
+ status: g,
41
+ error: v
42
+ };
43
+ }
44
+ //#endregion
45
+ export { s as useEnigmaPrices };
46
+
47
+ //# sourceMappingURL=use-enigma-prices.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-enigma-prices.js","names":[],"sources":["../../src/price-service/use-enigma-prices.ts"],"sourcesContent":["\"use client\";\n\nimport { watchEnigmaPrices, type ConfigParameter, type EnigmaPriceTick, type SocketStatus } from \"@symmio/trading-core\";\nimport { useEffect, useRef, useState } from \"react\";\nimport { normalizeSymmError } from \"../errors/normalize-symm-error\";\nimport type { SymmioRequestError } from \"../errors/symmio-request-error\";\nimport { useSymmioChainId } from \"../provider/use-symmio-chain-id\";\nimport { useSymmioConfig } from \"../provider/use-symmio-config\";\n\n/**\n * Parameters for {@link useEnigmaPrices}.\n */\nexport interface UseEnigmaPricesParameters extends ConfigParameter {\n /** Target chain id. Defaults to the SDK's active chain. */\n chainId?: number;\n /** Subscribe only when `true`. Default `true`. */\n enabled?: boolean;\n /** Imperative per-tick callback, invoked in addition to map updates. */\n onTick?: (ticks: EnigmaPriceTick[]) => void;\n}\n\n/**\n * Value returned by {@link useEnigmaPrices}.\n */\nexport interface UseEnigmaPricesReturnType {\n /** Latest mark price keyed by symbol name. */\n prices: Record<string, string>;\n /** Live socket status. */\n status: SocketStatus;\n /** Last transport/parse error, normalized, or `null`. */\n error: SymmioRequestError | null;\n}\n\n/**\n * Subscribe to the chain's Enigma lowcap price-service WebSocket.\n *\n * Accumulates the latest `markPrice` per symbol name; updates whenever a new\n * tick arrives. Pass `onTick` to also react imperatively (e.g. push into a\n * non-stateful sink). The subscription is shared across hook instances via the\n * SDK socket pool — multiple `useEnigmaPrices()` mounts cost one connection.\n *\n * @example\n * ```tsx\n * const { prices, status } = useEnigmaPrices();\n * return <span>BTC: {prices[\"BTCUSDT\"] ?? \"—\"} ({status})</span>;\n * ```\n */\nexport function useEnigmaPrices(parameters: UseEnigmaPricesParameters = {}): UseEnigmaPricesReturnType {\n const { chainId, enabled = true, onTick } = parameters;\n const config = useSymmioConfig(parameters);\n const defaultChainId = useSymmioChainId();\n const resolvedChainId = chainId ?? defaultChainId;\n\n const [prices, setPrices] = useState<Record<string, string>>({});\n const [status, setStatus] = useState<SocketStatus>(\"closed\");\n const [error, setError] = useState<SymmioRequestError | null>(null);\n\n const onTickRef = useRef(onTick);\n onTickRef.current = onTick;\n\n useEffect(() => {\n if (!enabled) {\n setStatus(\"closed\");\n return;\n }\n\n setError(null);\n\n let unwatch: (() => void) | undefined;\n try {\n unwatch = watchEnigmaPrices(config, {\n chainId: resolvedChainId,\n onPrices: (ticks) => {\n setPrices((prev) => {\n let mutated = false;\n const next = { ...prev };\n for (const tick of ticks) {\n if (next[tick.name] !== tick.markPrice) {\n next[tick.name] = tick.markPrice;\n mutated = true;\n }\n }\n return mutated ? next : prev;\n });\n onTickRef.current?.(ticks);\n },\n onStatusChange: setStatus,\n onError: (err) => setError(normalizeSymmError(err)),\n });\n } catch (err) {\n setError(normalizeSymmError(err));\n setStatus(\"closed\");\n }\n\n return () => unwatch?.();\n }, [enabled, config, resolvedChainId]);\n\n return { prices, status, error };\n}\n"],"mappings":";;;;;;;AA+CA,SAAgB,EAAgB,IAAwC,CAAC,GAA8B;CACrG,IAAM,EAAE,YAAS,aAAU,IAAM,cAAW,GACtC,IAAS,EAAgB,CAAU,GACnC,IAAiB,EAAiB,GAClC,IAAkB,KAAW,GAE7B,CAAC,GAAQ,KAAa,EAAiC,CAAC,CAAC,GACzD,CAAC,GAAQ,KAAa,EAAuB,QAAQ,GACrD,CAAC,GAAO,KAAY,EAAoC,IAAI,GAE5D,IAAY,EAAO,CAAM;CAwC/B,OAvCA,EAAU,UAAU,GAEpB,QAAgB;EACd,IAAI,CAAC,GAAS;GACZ,EAAU,QAAQ;GAClB;EACF;EAEA,EAAS,IAAI;EAEb,IAAI;EACJ,IAAI;GACF,IAAU,EAAkB,GAAQ;IAClC,SAAS;IACT,WAAW,MAAU;KAYnB,AAXA,GAAW,MAAS;MAClB,IAAI,IAAU,IACR,IAAO,EAAE,GAAG,EAAK;MACvB,KAAK,IAAM,KAAQ,GACjB,AAAI,EAAK,EAAK,UAAU,EAAK,cAC3B,EAAK,EAAK,QAAQ,EAAK,WACvB,IAAU;MAGd,OAAO,IAAU,IAAO;KAC1B,CAAC,GACD,EAAU,UAAU,CAAK;IAC3B;IACA,gBAAgB;IAChB,UAAU,MAAQ,EAAS,EAAmB,CAAG,CAAC;GACpD,CAAC;EACH,SAAS,GAAK;GAEZ,AADA,EAAS,EAAmB,CAAG,CAAC,GAChC,EAAU,QAAQ;EACpB;EAEA,aAAa,IAAU;CACzB,GAAG;EAAC;EAAS;EAAQ;CAAe,CAAC,GAE9B;EAAE;EAAQ;EAAQ;CAAM;AACjC"}
@@ -0,0 +1,4 @@
1
+ export { SymmioProvider, type SymmioProviderProps } from './symmio-provider';
2
+ export { useSymmioChainId } from './use-symmio-chain-id';
3
+ export { useSymmioConfig, type UseSymmioConfigParameters } from './use-symmio-config';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/provider/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,KAAK,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,KAAK,yBAAyB,EAAE,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { Config } from '@symmio/trading-core';
2
+ /**
3
+ * React context holding the SYMMIO {@link Config}. Populated by
4
+ * {@link SymmioProvider}, read by {@link useSymmioConfig}.
5
+ *
6
+ * @internal
7
+ */
8
+ export declare const SymmioConfigContext: import('react').Context<Config | undefined>;
9
+ //# sourceMappingURL=symmio-config-context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"symmio-config-context.d.ts","sourceRoot":"","sources":["../../src/provider/symmio-config-context.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAGnD;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,6CAA+C,CAAC"}
@@ -0,0 +1,8 @@
1
+ "use client";
2
+ import { createContext as e } from "react";
3
+ //#region src/provider/symmio-config-context.ts
4
+ var t = e(void 0);
5
+ //#endregion
6
+ export { t as SymmioConfigContext };
7
+
8
+ //# sourceMappingURL=symmio-config-context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"symmio-config-context.js","names":[],"sources":["../../src/provider/symmio-config-context.ts"],"sourcesContent":["\"use client\";\n\nimport type { Config } from \"@symmio/trading-core\";\nimport { createContext } from \"react\";\n\n/**\n * React context holding the SYMMIO {@link Config}. Populated by\n * {@link SymmioProvider}, read by {@link useSymmioConfig}.\n *\n * @internal\n */\nexport const SymmioConfigContext = createContext<Config | undefined>(undefined);\n"],"mappings":";;;AAWA,IAAa,IAAsB,EAAkC,KAAA,CAAS"}
@@ -0,0 +1,49 @@
1
+ import { CreateConfigParameters, GetWalletClientFn } from '@symmio/trading-core';
2
+ import { ReactNode } from 'react';
3
+ /**
4
+ * Props for {@link SymmioProvider}.
5
+ */
6
+ export interface SymmioProviderProps {
7
+ /** React subtree that may use SYMMIO SDK hooks. */
8
+ children: ReactNode;
9
+ /**
10
+ * Per-chain Symmio overrides (addresses, subgraphs, solver) deep-merged onto
11
+ * the SDK's built-in defaults, keyed by chain id. Omit to use defaults.
12
+ */
13
+ chainOverrides?: CreateConfigParameters["chainOverrides"];
14
+ /** Chain used when a hook or action omits `chainId`. Defaults to the first supported chain. */
15
+ defaultChainId?: number;
16
+ /**
17
+ * Custom wallet-client resolver. Receives `{ chainId, from? }` from the SDK
18
+ * and returns the wallet client to sign with. Use this to plug in
19
+ * session-key, multi-signer, or any non-wagmi flow — the resolver decides.
20
+ *
21
+ * When omitted, the provider falls back to wagmi's connected wallet (ignores
22
+ * `from`).
23
+ */
24
+ getWalletClient?: GetWalletClientFn;
25
+ }
26
+ /**
27
+ * Provides the SYMMIO {@link Config} to descendant hooks. The config's viem
28
+ * clients are resolved from the host's wagmi config, so this is the only place
29
+ * the SDK touches wagmi.
30
+ *
31
+ * **Mount order matters**: this reads wagmi context and (transitively) the
32
+ * host's `@tanstack/react-query` `QueryClient`. Both must be mounted **outside**
33
+ * `SymmioProvider`:
34
+ *
35
+ * ```tsx
36
+ * <WagmiProvider config={wagmiConfig}>
37
+ * <QueryClientProvider client={queryClient}>
38
+ * <SymmioProvider>
39
+ * <App />
40
+ * </SymmioProvider>
41
+ * </QueryClientProvider>
42
+ * </WagmiProvider>
43
+ * ```
44
+ *
45
+ * The SDK never mounts wagmi or a `QueryClient` for the host — those (which
46
+ * connectors, which RPC URLs, which shared `QueryClient`) belong to the host.
47
+ */
48
+ export declare function SymmioProvider({ children, chainOverrides, defaultChainId, getWalletClient: getWalletClientProp, }: SymmioProviderProps): import("react").JSX.Element;
49
+ //# sourceMappingURL=symmio-provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"symmio-provider.d.ts","sourceRoot":"","sources":["../../src/provider/symmio-provider.tsx"],"names":[],"mappings":"AAEA,OAAO,EAIL,KAAK,sBAAsB,EAC3B,KAAK,iBAAiB,EACvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAW,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAMhD;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,mDAAmD;IACnD,QAAQ,EAAE,SAAS,CAAC;IACpB;;;OAGG;IACH,cAAc,CAAC,EAAE,sBAAsB,CAAC,gBAAgB,CAAC,CAAC;IAC1D,+FAA+F;IAC/F,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;;;OAOG;IACH,eAAe,CAAC,EAAE,iBAAiB,CAAC;CACrC;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,cAAc,CAAC,EAC7B,QAAQ,EACR,cAAc,EACd,cAAc,EACd,eAAe,EAAE,mBAAmB,GACrC,EAAE,mBAAmB,+BAsCrB"}
@@ -0,0 +1,39 @@
1
+ "use client";
2
+ import { SymmioConfigContext as e } from "./symmio-config-context.js";
3
+ import { SymmError as t, createConfig as n } from "@symmio/trading-core";
4
+ import { useMemo as r } from "react";
5
+ import { useConfig as i } from "wagmi";
6
+ import { getPublicClient as a, getWalletClient as o } from "wagmi/actions";
7
+ import { jsx as s } from "react/jsx-runtime";
8
+ //#region src/provider/symmio-provider.tsx
9
+ function c({ children: c, chainOverrides: l, defaultChainId: u, getWalletClient: d }) {
10
+ let f = i(), p = r(() => n({
11
+ chainOverrides: l,
12
+ defaultChainId: u,
13
+ getClient: ({ chainId: e } = {}) => {
14
+ let n = a(f, { chainId: e });
15
+ if (!n) throw new t("config", "NO_PUBLIC_CLIENT", `No public client available for chain ${e ?? "(default)"}.`);
16
+ return n;
17
+ },
18
+ getWalletClient: d ?? (async ({ chainId: e }) => {
19
+ try {
20
+ return await o(f, { chainId: e });
21
+ } catch (e) {
22
+ throw new t("config", "NO_WALLET_CONNECTED", "No connected wallet. Connect a wallet before sending transactions.", { cause: e instanceof Error ? e : void 0 });
23
+ }
24
+ })
25
+ }), [
26
+ l,
27
+ u,
28
+ d,
29
+ f
30
+ ]);
31
+ return /* @__PURE__ */ s(e.Provider, {
32
+ value: p,
33
+ children: c
34
+ });
35
+ }
36
+ //#endregion
37
+ export { c as SymmioProvider };
38
+
39
+ //# sourceMappingURL=symmio-provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"symmio-provider.js","names":[],"sources":["../../src/provider/symmio-provider.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n createConfig,\n SymmError,\n type Config,\n type CreateConfigParameters,\n type GetWalletClientFn,\n} from \"@symmio/trading-core\";\nimport { useMemo, type ReactNode } from \"react\";\nimport type { PublicClient } from \"viem\";\nimport { useConfig } from \"wagmi\";\nimport { getPublicClient, getWalletClient } from \"wagmi/actions\";\nimport { SymmioConfigContext } from \"./symmio-config-context\";\n\n/**\n * Props for {@link SymmioProvider}.\n */\nexport interface SymmioProviderProps {\n /** React subtree that may use SYMMIO SDK hooks. */\n children: ReactNode;\n /**\n * Per-chain Symmio overrides (addresses, subgraphs, solver) deep-merged onto\n * the SDK's built-in defaults, keyed by chain id. Omit to use defaults.\n */\n chainOverrides?: CreateConfigParameters[\"chainOverrides\"];\n /** Chain used when a hook or action omits `chainId`. Defaults to the first supported chain. */\n defaultChainId?: number;\n /**\n * Custom wallet-client resolver. Receives `{ chainId, from? }` from the SDK\n * and returns the wallet client to sign with. Use this to plug in\n * session-key, multi-signer, or any non-wagmi flow — the resolver decides.\n *\n * When omitted, the provider falls back to wagmi's connected wallet (ignores\n * `from`).\n */\n getWalletClient?: GetWalletClientFn;\n}\n\n/**\n * Provides the SYMMIO {@link Config} to descendant hooks. The config's viem\n * clients are resolved from the host's wagmi config, so this is the only place\n * the SDK touches wagmi.\n *\n * **Mount order matters**: this reads wagmi context and (transitively) the\n * host's `@tanstack/react-query` `QueryClient`. Both must be mounted **outside**\n * `SymmioProvider`:\n *\n * ```tsx\n * <WagmiProvider config={wagmiConfig}>\n * <QueryClientProvider client={queryClient}>\n * <SymmioProvider>\n * <App />\n * </SymmioProvider>\n * </QueryClientProvider>\n * </WagmiProvider>\n * ```\n *\n * The SDK never mounts wagmi or a `QueryClient` for the host — those (which\n * connectors, which RPC URLs, which shared `QueryClient`) belong to the host.\n */\nexport function SymmioProvider({\n children,\n chainOverrides,\n defaultChainId,\n getWalletClient: getWalletClientProp,\n}: SymmioProviderProps) {\n const wagmiConfig = useConfig();\n\n const config = useMemo<Config>(\n () =>\n createConfig({\n chainOverrides,\n defaultChainId,\n getClient: ({ chainId } = {}): PublicClient => {\n const client = getPublicClient(wagmiConfig, { chainId });\n\n if (!client)\n throw new SymmError(\n \"config\",\n \"NO_PUBLIC_CLIENT\",\n `No public client available for chain ${chainId ?? \"(default)\"}.`,\n );\n return client;\n },\n getWalletClient:\n getWalletClientProp ??\n (async ({ chainId }) => {\n try {\n return await getWalletClient(wagmiConfig, { chainId });\n } catch (err) {\n throw new SymmError(\n \"config\",\n \"NO_WALLET_CONNECTED\",\n \"No connected wallet. Connect a wallet before sending transactions.\",\n { cause: err instanceof Error ? err : undefined },\n );\n }\n }),\n }),\n [chainOverrides, defaultChainId, getWalletClientProp, wagmiConfig],\n );\n\n return <SymmioConfigContext.Provider value={config}>{children}</SymmioConfigContext.Provider>;\n}\n"],"mappings":";;;;;;;;AA6DA,SAAgB,EAAe,EAC7B,aACA,mBACA,mBACA,iBAAiB,KACK;CACtB,IAAM,IAAc,EAAU,GAExB,IAAS,QAEX,EAAa;EACX;EACA;EACA,YAAY,EAAE,eAAY,CAAC,MAAoB;GAC7C,IAAM,IAAS,EAAgB,GAAa,EAAE,WAAQ,CAAC;GAEvD,IAAI,CAAC,GACH,MAAM,IAAI,EACR,UACA,oBACA,wCAAwC,KAAW,YAAY,EACjE;GACF,OAAO;EACT;EACA,iBACE,MACC,OAAO,EAAE,iBAAc;GACtB,IAAI;IACF,OAAO,MAAM,EAAgB,GAAa,EAAE,WAAQ,CAAC;GACvD,SAAS,GAAK;IACZ,MAAM,IAAI,EACR,UACA,uBACA,sEACA,EAAE,OAAO,aAAe,QAAQ,IAAM,KAAA,EAAU,CAClD;GACF;EACF;CACJ,CAAC,GACH;EAAC;EAAgB;EAAgB;EAAqB;CAAW,CACnE;CAEA,OAAO,kBAAC,EAAoB,UAArB;EAA8B,OAAO;EAAS;CAAuC,CAAA;AAC9F"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * The chain id the connected wallet is currently on, read from wagmi. SDK hooks
3
+ * use it as the default `chainId` for reads and writes (a hook's explicit
4
+ * `chainId` parameter still wins). Mirrors wagmi's `useChainId`.
5
+ *
6
+ * @returns The active chain id.
7
+ *
8
+ * @example
9
+ * ```ts
10
+ * const chainId = useSymmioChainId();
11
+ * ```
12
+ */
13
+ export declare function useSymmioChainId(): number;
14
+ //# sourceMappingURL=use-symmio-chain-id.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-symmio-chain-id.d.ts","sourceRoot":"","sources":["../../src/provider/use-symmio-chain-id.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAEzC"}
@@ -0,0 +1,10 @@
1
+ "use client";
2
+ import { useChainId as e } from "wagmi";
3
+ //#region src/provider/use-symmio-chain-id.ts
4
+ function t() {
5
+ return e();
6
+ }
7
+ //#endregion
8
+ export { t as useSymmioChainId };
9
+
10
+ //# sourceMappingURL=use-symmio-chain-id.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-symmio-chain-id.js","names":[],"sources":["../../src/provider/use-symmio-chain-id.ts"],"sourcesContent":["\"use client\";\n\nimport { useChainId } from \"wagmi\";\n\n/**\n * The chain id the connected wallet is currently on, read from wagmi. SDK hooks\n * use it as the default `chainId` for reads and writes (a hook's explicit\n * `chainId` parameter still wins). Mirrors wagmi's `useChainId`.\n *\n * @returns The active chain id.\n *\n * @example\n * ```ts\n * const chainId = useSymmioChainId();\n * ```\n */\nexport function useSymmioChainId(): number {\n return useChainId();\n}\n"],"mappings":";;;AAgBA,SAAgB,IAA2B;CACzC,OAAO,EAAW;AACpB"}
@@ -0,0 +1,24 @@
1
+ import { Config } from '@symmio/trading-core';
2
+ /**
3
+ * Parameters for {@link useSymmioConfig}.
4
+ */
5
+ export interface UseSymmioConfigParameters {
6
+ /** Use this config instead of the one from {@link SymmioProvider}'s context. */
7
+ config?: Config;
8
+ }
9
+ /**
10
+ * Access the SYMMIO {@link Config}. Returns the explicit `parameters.config`
11
+ * when given, otherwise the one provided by {@link SymmioProvider}. Mirrors
12
+ * wagmi's `useConfig`.
13
+ *
14
+ * @throws Error when no config is available (called outside a `SymmioProvider`
15
+ * and no `config` override was passed).
16
+ *
17
+ * @example
18
+ * ```ts
19
+ * const config = useSymmioConfig();
20
+ * const markets = await getMarkets(config, {});
21
+ * ```
22
+ */
23
+ export declare function useSymmioConfig(parameters?: UseSymmioConfigParameters): Config;
24
+ //# sourceMappingURL=use-symmio-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-symmio-config.d.ts","sourceRoot":"","sources":["../../src/provider/use-symmio-config.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAInD;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,gFAAgF;IAChF,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,eAAe,CAAC,UAAU,GAAE,yBAA8B,GAAG,MAAM,CAOlF"}
@@ -0,0 +1,13 @@
1
+ "use client";
2
+ import { SymmioConfigContext as e } from "./symmio-config-context.js";
3
+ import { useContext as t } from "react";
4
+ //#region src/provider/use-symmio-config.ts
5
+ function n(n = {}) {
6
+ let r = t(e), i = n.config ?? r;
7
+ if (!i) throw Error("useSymmioConfig must be used within a SymmioProvider, or be passed an explicit `config`.");
8
+ return i;
9
+ }
10
+ //#endregion
11
+ export { n as useSymmioConfig };
12
+
13
+ //# sourceMappingURL=use-symmio-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-symmio-config.js","names":[],"sources":["../../src/provider/use-symmio-config.ts"],"sourcesContent":["\"use client\";\n\nimport type { Config } from \"@symmio/trading-core\";\nimport { useContext } from \"react\";\nimport { SymmioConfigContext } from \"./symmio-config-context\";\n\n/**\n * Parameters for {@link useSymmioConfig}.\n */\nexport interface UseSymmioConfigParameters {\n /** Use this config instead of the one from {@link SymmioProvider}'s context. */\n config?: Config;\n}\n\n/**\n * Access the SYMMIO {@link Config}. Returns the explicit `parameters.config`\n * when given, otherwise the one provided by {@link SymmioProvider}. Mirrors\n * wagmi's `useConfig`.\n *\n * @throws Error when no config is available (called outside a `SymmioProvider`\n * and no `config` override was passed).\n *\n * @example\n * ```ts\n * const config = useSymmioConfig();\n * const markets = await getMarkets(config, {});\n * ```\n */\nexport function useSymmioConfig(parameters: UseSymmioConfigParameters = {}): Config {\n const context = useContext(SymmioConfigContext);\n const config = parameters.config ?? context;\n if (!config) {\n throw new Error(\"useSymmioConfig must be used within a SymmioProvider, or be passed an explicit `config`.\");\n }\n return config;\n}\n"],"mappings":";;;;AA4BA,SAAgB,EAAgB,IAAwC,CAAC,GAAW;CAClF,IAAM,IAAU,EAAW,CAAmB,GACxC,IAAS,EAAW,UAAU;CACpC,IAAI,CAAC,GACH,MAAU,MAAM,0FAA0F;CAE5G,OAAO;AACT"}
@@ -0,0 +1,16 @@
1
+ export * from './optimistic-quotes-store';
2
+ export * from './use-account-liquidation-price';
3
+ export * from './use-grouped-quotes';
4
+ export * from './use-managed-quotes';
5
+ export * from './use-party-a-open-positions';
6
+ export * from './use-party-a-pending-quotes';
7
+ export * from './use-quote';
8
+ export * from './use-quote-events-by-type';
9
+ export * from './use-quote-funding';
10
+ export * from './use-quote-history';
11
+ export * from './use-quote-platform-fee';
12
+ export * from './use-quote-price-history';
13
+ export * from './use-quote-upnl-and-pnl';
14
+ export * from './use-quotes-funding';
15
+ export * from './use-subgraph-query';
16
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/quotes/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,iCAAiC,CAAC;AAChD,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,aAAa,CAAC;AAC5B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC"}
@@ -0,0 +1,47 @@
1
+ import { PendingInstantOpen } from '@symmio/trading-core';
2
+ /**
3
+ * Store state plus the mutators used to update it. Holds only optimistic
4
+ * instant-open records that a poll has not yet observed, keyed by their hedger
5
+ * `tempQuoteId`.
6
+ */
7
+ export interface OptimisticQuotesStoreState {
8
+ /**
9
+ * Optimistic instant-open records awaiting their first poll, keyed by `tempQuoteId`.
10
+ */
11
+ entries: Record<number, PendingInstantOpen>;
12
+ /**
13
+ * Wipe every optimistic entry.
14
+ */
15
+ clear: () => void;
16
+ /**
17
+ * Insert (or overwrite) an optimistic instant-open. Keyed by `entry.tempQuoteId`.
18
+ */
19
+ add: (entry: PendingInstantOpen) => void;
20
+ /**
21
+ * Drop every entry whose `tempQuoteId` now appears on-chain (so the poll owns
22
+ * it and the optimistic seed is no longer needed). No-op for unknown ids.
23
+ */
24
+ clearSettled: (seenTempQuoteIds: readonly number[]) => void;
25
+ }
26
+ /**
27
+ * Cross-component bridge for optimistic instant-opens. When a `useInstantOpen`
28
+ * mutation succeeds, the host seeds the freshly returned {@link PendingInstantOpen}
29
+ * here so {@link useManagedQuotes} can render the new row instantly — before the
30
+ * first hedger/on-chain poll observes it — then `clearSettled` removes the seed
31
+ * once the real row lands.
32
+ *
33
+ * Usage is identical to any zustand store — call `useOptimisticQuotesStore()`
34
+ * from a component to subscribe to the full state, or pass a selector for
35
+ * fine-grained subscriptions.
36
+ *
37
+ * @example
38
+ * const add = useOptimisticQuotesStore((s) => s.add);
39
+ * const pending = await instantOpen(variables);
40
+ * add(pending);
41
+ *
42
+ * @example
43
+ * const entries = useOptimisticQuotesStore((s) => s.entries);
44
+ * const seeds = Object.values(entries);
45
+ */
46
+ export declare const useOptimisticQuotesStore: import('zustand').UseBoundStore<import('zustand').StoreApi<OptimisticQuotesStoreState>>;
47
+ //# sourceMappingURL=optimistic-quotes-store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"optimistic-quotes-store.d.ts","sourceRoot":"","sources":["../../src/quotes/optimistic-quotes-store.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG/D;;;;GAIG;AACH,MAAM,WAAW,0BAA0B;IACzC;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IAC5C;;OAEG;IACH,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB;;OAEG;IACH,GAAG,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,IAAI,CAAC;IACzC;;;OAGG;IACH,YAAY,EAAE,CAAC,gBAAgB,EAAE,SAAS,MAAM,EAAE,KAAK,IAAI,CAAC;CAC7D;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,wBAAwB,yFAuBlC,CAAC"}
@@ -0,0 +1,27 @@
1
+ "use client";
2
+ import { create as e } from "zustand";
3
+ //#region src/quotes/optimistic-quotes-store.ts
4
+ var t = e((e) => ({
5
+ entries: {},
6
+ clear: () => e({ entries: {} }),
7
+ add: (t) => e((e) => ({ entries: {
8
+ ...e.entries,
9
+ [t.tempQuoteId]: t
10
+ } })),
11
+ clearSettled: (t) => e((e) => {
12
+ if (t.length === 0) return e;
13
+ let n = new Set(t), r = !1, i = {};
14
+ for (let [t, a] of Object.entries(e.entries)) {
15
+ if (n.has(Number(t))) {
16
+ r = !0;
17
+ continue;
18
+ }
19
+ i[Number(t)] = a;
20
+ }
21
+ return r ? { entries: i } : e;
22
+ })
23
+ }));
24
+ //#endregion
25
+ export { t as useOptimisticQuotesStore };
26
+
27
+ //# sourceMappingURL=optimistic-quotes-store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"optimistic-quotes-store.js","names":[],"sources":["../../src/quotes/optimistic-quotes-store.ts"],"sourcesContent":["\"use client\";\n\nimport type { PendingInstantOpen } from \"@symmio/trading-core\";\nimport { create } from \"zustand\";\n\n/**\n * Store state plus the mutators used to update it. Holds only optimistic\n * instant-open records that a poll has not yet observed, keyed by their hedger\n * `tempQuoteId`.\n */\nexport interface OptimisticQuotesStoreState {\n /**\n * Optimistic instant-open records awaiting their first poll, keyed by `tempQuoteId`.\n */\n entries: Record<number, PendingInstantOpen>;\n /**\n * Wipe every optimistic entry.\n */\n clear: () => void;\n /**\n * Insert (or overwrite) an optimistic instant-open. Keyed by `entry.tempQuoteId`.\n */\n add: (entry: PendingInstantOpen) => void;\n /**\n * Drop every entry whose `tempQuoteId` now appears on-chain (so the poll owns\n * it and the optimistic seed is no longer needed). No-op for unknown ids.\n */\n clearSettled: (seenTempQuoteIds: readonly number[]) => void;\n}\n\n/**\n * Cross-component bridge for optimistic instant-opens. When a `useInstantOpen`\n * mutation succeeds, the host seeds the freshly returned {@link PendingInstantOpen}\n * here so {@link useManagedQuotes} can render the new row instantly — before the\n * first hedger/on-chain poll observes it — then `clearSettled` removes the seed\n * once the real row lands.\n *\n * Usage is identical to any zustand store — call `useOptimisticQuotesStore()`\n * from a component to subscribe to the full state, or pass a selector for\n * fine-grained subscriptions.\n *\n * @example\n * const add = useOptimisticQuotesStore((s) => s.add);\n * const pending = await instantOpen(variables);\n * add(pending);\n *\n * @example\n * const entries = useOptimisticQuotesStore((s) => s.entries);\n * const seeds = Object.values(entries);\n */\nexport const useOptimisticQuotesStore = create<OptimisticQuotesStoreState>((set) => ({\n entries: {},\n clear: () => set({ entries: {} }),\n add: (entry) => set((state) => ({ entries: { ...state.entries, [entry.tempQuoteId]: entry } })),\n clearSettled: (seenTempQuoteIds) =>\n set((state) => {\n if (seenTempQuoteIds.length === 0) return state;\n\n const seen = new Set(seenTempQuoteIds);\n\n let changed = false;\n const next: Record<number, PendingInstantOpen> = {};\n\n for (const [id, entry] of Object.entries(state.entries)) {\n if (seen.has(Number(id))) {\n changed = true;\n continue;\n }\n next[Number(id)] = entry;\n }\n\n return changed ? { entries: next } : state;\n }),\n}));\n"],"mappings":";;;AAkDA,IAAa,IAA2B,GAAoC,OAAS;CACnF,SAAS,CAAC;CACV,aAAa,EAAI,EAAE,SAAS,CAAC,EAAE,CAAC;CAChC,MAAM,MAAU,GAAK,OAAW,EAAE,SAAS;EAAE,GAAG,EAAM;GAAU,EAAM,cAAc;CAAM,EAAE,EAAE;CAC9F,eAAe,MACb,GAAK,MAAU;EACb,IAAI,EAAiB,WAAW,GAAG,OAAO;EAE1C,IAAM,IAAO,IAAI,IAAI,CAAgB,GAEjC,IAAU,IACR,IAA2C,CAAC;EAElD,KAAK,IAAM,CAAC,GAAI,MAAU,OAAO,QAAQ,EAAM,OAAO,GAAG;GACvD,IAAI,EAAK,IAAI,OAAO,CAAE,CAAC,GAAG;IACxB,IAAU;IACV;GACF;GACA,EAAK,OAAO,CAAE,KAAK;EACrB;EAEA,OAAO,IAAU,EAAE,SAAS,EAAK,IAAI;CACvC,CAAC;AACL,EAAE"}
@@ -0,0 +1,39 @@
1
+ import { ConfigParameter } from '@symmio/trading-core';
2
+ import { Address } from 'viem';
3
+ /**
4
+ * Parameters for {@link useAccountLiquidationPrice}.
5
+ */
6
+ export interface UseAccountLiquidationPriceParameters extends ConfigParameter {
7
+ /** Account address (a sub-account for Majors, a virtual account for lowcap). */
8
+ account?: Address;
9
+ /** Optional override; defaults to the connected chain. */
10
+ chainId?: number;
11
+ }
12
+ /**
13
+ * Return type of {@link useAccountLiquidationPrice}.
14
+ */
15
+ export interface UseAccountLiquidationPriceReturnType {
16
+ /** Liquidation price in 18-decimal-wei collateral units. `0n` when unavailable. */
17
+ liquidationPrice: bigint;
18
+ /** `true` while the underlying balance / positions queries are loading. */
19
+ isLoading: boolean;
20
+ }
21
+ /**
22
+ * Compute the on-chain liquidation price for an account by reading its balance
23
+ * info and its open positions from the SYMMIO core and feeding them into
24
+ * {@link calculateLiquidationPrice}.
25
+ *
26
+ * Works for both a sub-account (Majors) and a virtual account (lowcap) — the
27
+ * formula is the same per-account; the only difference is the address you pass.
28
+ *
29
+ * Net position direction is taken from the first active position. lowcap VAs are
30
+ * single-direction by design; for a mixed-direction account the result reflects
31
+ * the first position's side only.
32
+ *
33
+ * @example
34
+ * ```tsx
35
+ * const { liquidationPrice, isLoading } = useAccountLiquidationPrice({ account: quote.partyA });
36
+ * ```
37
+ */
38
+ export declare function useAccountLiquidationPrice(parameters?: UseAccountLiquidationPriceParameters): UseAccountLiquidationPriceReturnType;
39
+ //# sourceMappingURL=use-account-liquidation-price.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-account-liquidation-price.d.ts","sourceRoot":"","sources":["../../src/quotes/use-account-liquidation-price.ts"],"names":[],"mappings":"AAEA,OAAO,EAIL,KAAK,eAAe,EACrB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAIpC;;GAEG;AACH,MAAM,WAAW,oCAAqC,SAAQ,eAAe;IAC3E,gFAAgF;IAChF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,0DAA0D;IAC1D,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,oCAAoC;IACnD,mFAAmF;IACnF,gBAAgB,EAAE,MAAM,CAAC;IACzB,2EAA2E;IAC3E,SAAS,EAAE,OAAO,CAAC;CACpB;AAID;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,0BAA0B,CACxC,UAAU,GAAE,oCAAyC,GACpD,oCAAoC,CAiCtC"}
@@ -0,0 +1,57 @@
1
+ "use client";
2
+ import { useAccountBalanceInfo as e } from "../account-layer/use-account-balance-info.js";
3
+ import { usePartyAOpenPositions as t } from "./use-party-a-open-positions.js";
4
+ import { PositionType as n, calculateLiquidationPrice as r } from "@symmio/trading-core";
5
+ import { useMemo as i } from "react";
6
+ //#region src/quotes/use-account-liquidation-price.ts
7
+ var a = {
8
+ liquidationPrice: 0n,
9
+ isLoading: !1
10
+ };
11
+ function o(o = {}) {
12
+ let { account: s, chainId: c, config: l } = o, u = e({
13
+ account: s,
14
+ chainId: c,
15
+ config: l
16
+ }), d = t({
17
+ partyA: s,
18
+ chainId: c,
19
+ config: l
20
+ });
21
+ return i(() => {
22
+ if (!s) return a;
23
+ let e = u.data, t = d.data;
24
+ if (!e || !t || t.length === 0) return {
25
+ liquidationPrice: 0n,
26
+ isLoading: u.isLoading || d.isLoading
27
+ };
28
+ let i = t[0];
29
+ return i ? {
30
+ liquidationPrice: r({
31
+ positions: t.map((e) => ({
32
+ quantity: e.quantity,
33
+ closedAmount: e.closedAmount,
34
+ openedPrice: e.openedPrice
35
+ })),
36
+ positionType: i.positionType ?? n.LONG,
37
+ allocatedBalance: e.allocatedBalance,
38
+ lockedCVA: e.lockedCVA,
39
+ lockedLF: e.lockedLF
40
+ }),
41
+ isLoading: !1
42
+ } : {
43
+ liquidationPrice: 0n,
44
+ isLoading: !1
45
+ };
46
+ }, [
47
+ s,
48
+ u.data,
49
+ u.isLoading,
50
+ d.data,
51
+ d.isLoading
52
+ ]);
53
+ }
54
+ //#endregion
55
+ export { o as useAccountLiquidationPrice };
56
+
57
+ //# sourceMappingURL=use-account-liquidation-price.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-account-liquidation-price.js","names":[],"sources":["../../src/quotes/use-account-liquidation-price.ts"],"sourcesContent":["\"use client\";\n\nimport {\n calculateLiquidationPrice,\n PositionType,\n type AccountPosition,\n type ConfigParameter,\n} from \"@symmio/trading-core\";\nimport { useMemo } from \"react\";\nimport type { Address } from \"viem\";\nimport { useAccountBalanceInfo } from \"../account-layer/use-account-balance-info\";\nimport { usePartyAOpenPositions } from \"./use-party-a-open-positions\";\n\n/**\n * Parameters for {@link useAccountLiquidationPrice}.\n */\nexport interface UseAccountLiquidationPriceParameters extends ConfigParameter {\n /** Account address (a sub-account for Majors, a virtual account for lowcap). */\n account?: Address;\n /** Optional override; defaults to the connected chain. */\n chainId?: number;\n}\n\n/**\n * Return type of {@link useAccountLiquidationPrice}.\n */\nexport interface UseAccountLiquidationPriceReturnType {\n /** Liquidation price in 18-decimal-wei collateral units. `0n` when unavailable. */\n liquidationPrice: bigint;\n /** `true` while the underlying balance / positions queries are loading. */\n isLoading: boolean;\n}\n\nconst EMPTY: UseAccountLiquidationPriceReturnType = { liquidationPrice: 0n, isLoading: false };\n\n/**\n * Compute the on-chain liquidation price for an account by reading its balance\n * info and its open positions from the SYMMIO core and feeding them into\n * {@link calculateLiquidationPrice}.\n *\n * Works for both a sub-account (Majors) and a virtual account (lowcap) — the\n * formula is the same per-account; the only difference is the address you pass.\n *\n * Net position direction is taken from the first active position. lowcap VAs are\n * single-direction by design; for a mixed-direction account the result reflects\n * the first position's side only.\n *\n * @example\n * ```tsx\n * const { liquidationPrice, isLoading } = useAccountLiquidationPrice({ account: quote.partyA });\n * ```\n */\nexport function useAccountLiquidationPrice(\n parameters: UseAccountLiquidationPriceParameters = {},\n): UseAccountLiquidationPriceReturnType {\n const { account, chainId, config } = parameters;\n\n const balanceQuery = useAccountBalanceInfo({ account, chainId, config });\n const positionsQuery = usePartyAOpenPositions({ partyA: account, chainId, config });\n\n return useMemo(() => {\n if (!account) return EMPTY;\n const balance = balanceQuery.data;\n const positions = positionsQuery.data;\n if (!balance || !positions || positions.length === 0) {\n return { liquidationPrice: 0n, isLoading: balanceQuery.isLoading || positionsQuery.isLoading };\n }\n\n const firstPosition = positions[0];\n if (!firstPosition) return { liquidationPrice: 0n, isLoading: false };\n\n const accountPositions: AccountPosition[] = positions.map((quote) => ({\n quantity: quote.quantity,\n closedAmount: quote.closedAmount,\n openedPrice: quote.openedPrice,\n }));\n\n const liquidationPrice = calculateLiquidationPrice({\n positions: accountPositions,\n positionType: firstPosition.positionType ?? PositionType.LONG,\n allocatedBalance: balance.allocatedBalance,\n lockedCVA: balance.lockedCVA,\n lockedLF: balance.lockedLF,\n });\n\n return { liquidationPrice, isLoading: false };\n }, [account, balanceQuery.data, balanceQuery.isLoading, positionsQuery.data, positionsQuery.isLoading]);\n}\n"],"mappings":";;;;;;AAiCA,IAAM,IAA8C;CAAE,kBAAkB;CAAI,WAAW;AAAM;AAmB7F,SAAgB,EACd,IAAmD,CAAC,GACd;CACtC,IAAM,EAAE,YAAS,YAAS,cAAW,GAE/B,IAAe,EAAsB;EAAE;EAAS;EAAS;CAAO,CAAC,GACjE,IAAiB,EAAuB;EAAE,QAAQ;EAAS;EAAS;CAAO,CAAC;CAElF,OAAO,QAAc;EACnB,IAAI,CAAC,GAAS,OAAO;EACrB,IAAM,IAAU,EAAa,MACvB,IAAY,EAAe;EACjC,IAAI,CAAC,KAAW,CAAC,KAAa,EAAU,WAAW,GACjD,OAAO;GAAE,kBAAkB;GAAI,WAAW,EAAa,aAAa,EAAe;EAAU;EAG/F,IAAM,IAAgB,EAAU;EAiBhC,OAhBK,IAgBE;GAAE,kBARgB,EAA0B;IACjD,WAP0C,EAAU,KAAK,OAAW;KACpE,UAAU,EAAM;KAChB,cAAc,EAAM;KACpB,aAAa,EAAM;IACrB,EAGa;IACX,cAAc,EAAc,gBAAgB,EAAa;IACzD,kBAAkB,EAAQ;IAC1B,WAAW,EAAQ;IACnB,UAAU,EAAQ;GACpB,CAES;GAAkB,WAAW;EAAM,IAhBjB;GAAE,kBAAkB;GAAI,WAAW;EAAM;CAiBtE,GAAG;EAAC;EAAS,EAAa;EAAM,EAAa;EAAW,EAAe;EAAM,EAAe;CAAS,CAAC;AACxG"}