@orderly.network/hooks 1.3.0-alpha.0 → 1.4.0-alpha.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 (355) hide show
  1. package/esm/dataProvider.d.ts.map +1 -1
  2. package/esm/dataProvider.js +0 -2
  3. package/esm/dataProvider.js.map +1 -1
  4. package/esm/index.d.ts +4 -3
  5. package/esm/index.d.ts.map +1 -1
  6. package/esm/index.js +4 -3
  7. package/esm/index.js.map +1 -1
  8. package/esm/orderly/orderlyHooks.d.ts +3 -2
  9. package/esm/orderly/orderlyHooks.d.ts.map +1 -1
  10. package/esm/orderly/orderlyHooks.js +3 -2
  11. package/esm/orderly/orderlyHooks.js.map +1 -1
  12. package/esm/orderly/useCollateral.js +2 -2
  13. package/esm/orderly/useCollateral.js.map +1 -1
  14. package/esm/orderly/useMarginRatio.js +1 -1
  15. package/esm/orderly/useMarginRatio.js.map +1 -1
  16. package/esm/orderly/useMaxQty.js +2 -2
  17. package/esm/orderly/useMaxQty.js.map +1 -1
  18. package/esm/orderly/useOrderEntry.d.ts.map +1 -1
  19. package/esm/orderly/useOrderEntry.js +15 -12
  20. package/esm/orderly/useOrderEntry.js.map +1 -1
  21. package/esm/orderly/useOrderEntryNext/index.d.ts +1 -0
  22. package/esm/orderly/useOrderEntryNext/index.d.ts.map +1 -0
  23. package/esm/orderly/useOrderEntryNext/index.js +2 -0
  24. package/esm/orderly/useOrderEntryNext/index.js.map +1 -0
  25. package/esm/orderly/{useOrderStream.d.ts → useOrderStream/useOrderStream.d.ts} +19 -12
  26. package/esm/orderly/useOrderStream/useOrderStream.d.ts.map +1 -0
  27. package/esm/orderly/{useOrderStream.js → useOrderStream/useOrderStream.js} +91 -26
  28. package/esm/orderly/useOrderStream/useOrderStream.js.map +1 -0
  29. package/esm/orderly/useOrderbookStream.d.ts.map +1 -1
  30. package/esm/orderly/useOrderbookStream.js +13 -6
  31. package/esm/orderly/useOrderbookStream.js.map +1 -1
  32. package/esm/orderly/{usePositionStream.d.ts → usePositionStream/usePositionStream.d.ts} +1 -1
  33. package/esm/orderly/usePositionStream/usePositionStream.d.ts.map +1 -0
  34. package/esm/orderly/{usePositionStream.js → usePositionStream/usePositionStream.js} +30 -22
  35. package/esm/orderly/usePositionStream/usePositionStream.js.map +1 -0
  36. package/esm/orderly/usePositionStream/utils.d.ts +8 -0
  37. package/esm/orderly/usePositionStream/utils.d.ts.map +1 -0
  38. package/esm/orderly/usePositionStream/utils.js +34 -0
  39. package/esm/orderly/usePositionStream/utils.js.map +1 -0
  40. package/esm/orderly/usePrivateDataObserver.d.ts.map +1 -1
  41. package/esm/orderly/usePrivateDataObserver.js +30 -43
  42. package/esm/orderly/usePrivateDataObserver.js.map +1 -1
  43. package/esm/orderly/useTakeProfitAndStopLoss/__test__/useTakeProfitAndStopLoss.test.d.ts +1 -0
  44. package/esm/orderly/useTakeProfitAndStopLoss/__test__/useTakeProfitAndStopLoss.test.d.ts.map +1 -0
  45. package/esm/orderly/useTakeProfitAndStopLoss/__test__/utils.test.d.ts +2 -0
  46. package/esm/orderly/useTakeProfitAndStopLoss/__test__/utils.test.d.ts.map +1 -0
  47. package/esm/orderly/useTakeProfitAndStopLoss/index.d.ts +32 -0
  48. package/esm/orderly/useTakeProfitAndStopLoss/index.d.ts.map +1 -0
  49. package/esm/orderly/useTakeProfitAndStopLoss/index.js +23 -0
  50. package/esm/orderly/useTakeProfitAndStopLoss/index.js.map +1 -0
  51. package/esm/orderly/useTakeProfitAndStopLoss/useTPSL.d.ts +59 -0
  52. package/esm/orderly/useTakeProfitAndStopLoss/useTPSL.d.ts.map +1 -0
  53. package/esm/orderly/useTakeProfitAndStopLoss/useTPSL.js +211 -0
  54. package/esm/orderly/useTakeProfitAndStopLoss/useTPSL.js.map +1 -0
  55. package/esm/orderly/useTakeProfitAndStopLoss/utils.d.ts +70 -0
  56. package/esm/orderly/useTakeProfitAndStopLoss/utils.d.ts.map +1 -0
  57. package/esm/orderly/useTakeProfitAndStopLoss/utils.js +226 -0
  58. package/esm/orderly/useTakeProfitAndStopLoss/utils.js.map +1 -0
  59. package/esm/services/orderCreator/__test__/limitOrderCreator.test.d.ts +2 -0
  60. package/esm/services/orderCreator/__test__/limitOrderCreator.test.d.ts.map +1 -0
  61. package/esm/services/orderCreator/__test__/orderCreator.test.d.ts +2 -0
  62. package/esm/services/orderCreator/__test__/orderCreator.test.d.ts.map +1 -0
  63. package/esm/services/orderCreator/__test__/stopLimitOrderCreator.test.d.ts +2 -0
  64. package/esm/services/orderCreator/__test__/stopLimitOrderCreator.test.d.ts.map +1 -0
  65. package/esm/services/orderCreator/__test__/stopMarketOrderCreator.test.d.ts +2 -0
  66. package/esm/services/orderCreator/__test__/stopMarketOrderCreator.test.d.ts.map +1 -0
  67. package/esm/services/orderCreator/__test__/tpslOrderCreator.test.d.ts +2 -0
  68. package/esm/services/orderCreator/__test__/tpslOrderCreator.test.d.ts.map +1 -0
  69. package/esm/services/orderCreator/__test__/tpslPositionOrderCreator.test.d.ts +2 -0
  70. package/esm/services/orderCreator/__test__/tpslPositionOrderCreator.test.d.ts.map +1 -0
  71. package/esm/services/orderCreator/baseAlgoCreator.d.ts +22 -0
  72. package/esm/services/orderCreator/baseAlgoCreator.d.ts.map +1 -0
  73. package/esm/services/orderCreator/baseAlgoCreator.js +57 -0
  74. package/esm/services/orderCreator/baseAlgoCreator.js.map +1 -0
  75. package/esm/services/orderCreator/baseCreator.d.ts +14 -0
  76. package/esm/services/orderCreator/baseCreator.d.ts.map +1 -0
  77. package/esm/services/orderCreator/baseCreator.js +92 -0
  78. package/esm/services/orderCreator/baseCreator.js.map +1 -0
  79. package/esm/services/orderCreator/factory.d.ts +7 -0
  80. package/esm/services/orderCreator/factory.d.ts.map +1 -0
  81. package/esm/services/orderCreator/factory.js +45 -0
  82. package/esm/services/orderCreator/factory.js.map +1 -0
  83. package/esm/services/orderCreator/fokCreator.d.ts +4 -0
  84. package/esm/services/orderCreator/fokCreator.d.ts.map +1 -0
  85. package/esm/services/orderCreator/fokCreator.js +5 -0
  86. package/esm/services/orderCreator/fokCreator.js.map +1 -0
  87. package/esm/services/orderCreator/generalCreator.d.ts +8 -0
  88. package/esm/services/orderCreator/generalCreator.d.ts.map +1 -0
  89. package/esm/services/orderCreator/generalCreator.js +15 -0
  90. package/esm/services/orderCreator/generalCreator.js.map +1 -0
  91. package/esm/services/orderCreator/interface.d.ts +23 -0
  92. package/esm/services/orderCreator/interface.d.ts.map +1 -0
  93. package/esm/services/orderCreator/interface.js +3 -0
  94. package/esm/services/orderCreator/interface.js.map +1 -0
  95. package/esm/services/orderCreator/iocCreator.d.ts +4 -0
  96. package/esm/services/orderCreator/iocCreator.d.ts.map +1 -0
  97. package/esm/services/orderCreator/iocCreator.js +5 -0
  98. package/esm/services/orderCreator/iocCreator.js.map +1 -0
  99. package/esm/services/orderCreator/limitOrderCreator.d.ts +8 -0
  100. package/esm/services/orderCreator/limitOrderCreator.d.ts.map +1 -0
  101. package/esm/services/orderCreator/limitOrderCreator.js +69 -0
  102. package/esm/services/orderCreator/limitOrderCreator.js.map +1 -0
  103. package/esm/services/orderCreator/marketOrderCreator.d.ts +24 -0
  104. package/esm/services/orderCreator/marketOrderCreator.d.ts.map +1 -0
  105. package/esm/services/orderCreator/marketOrderCreator.js +18 -0
  106. package/esm/services/orderCreator/marketOrderCreator.js.map +1 -0
  107. package/esm/services/orderCreator/postOnlyCreator.d.ts +4 -0
  108. package/esm/services/orderCreator/postOnlyCreator.d.ts.map +1 -0
  109. package/esm/services/orderCreator/postOnlyCreator.js +5 -0
  110. package/esm/services/orderCreator/postOnlyCreator.js.map +1 -0
  111. package/esm/services/orderCreator/stopLimitOrderCreator.d.ts +11 -0
  112. package/esm/services/orderCreator/stopLimitOrderCreator.d.ts.map +1 -0
  113. package/esm/services/orderCreator/stopLimitOrderCreator.js +84 -0
  114. package/esm/services/orderCreator/stopLimitOrderCreator.js.map +1 -0
  115. package/esm/services/orderCreator/stopMarketOrderCreator.d.ts +30 -0
  116. package/esm/services/orderCreator/stopMarketOrderCreator.d.ts.map +1 -0
  117. package/esm/services/orderCreator/stopMarketOrderCreator.js +46 -0
  118. package/esm/services/orderCreator/stopMarketOrderCreator.js.map +1 -0
  119. package/esm/services/orderCreator/tpslOrderCreator.d.ts +32 -0
  120. package/esm/services/orderCreator/tpslOrderCreator.d.ts.map +1 -0
  121. package/esm/services/orderCreator/tpslOrderCreator.js +88 -0
  122. package/esm/services/orderCreator/tpslOrderCreator.js.map +1 -0
  123. package/esm/services/orderCreator/tpslPositionOrderCreator.d.ts +33 -0
  124. package/esm/services/orderCreator/tpslPositionOrderCreator.d.ts.map +1 -0
  125. package/esm/services/orderCreator/tpslPositionOrderCreator.js +74 -0
  126. package/esm/services/orderCreator/tpslPositionOrderCreator.js.map +1 -0
  127. package/esm/services/orderMerge/algoOrderMergeHandler.d.ts +9 -0
  128. package/esm/services/orderMerge/algoOrderMergeHandler.d.ts.map +1 -0
  129. package/esm/services/orderMerge/algoOrderMergeHandler.js +38 -0
  130. package/esm/services/orderMerge/algoOrderMergeHandler.js.map +1 -0
  131. package/esm/services/orderMerge/baseMergeHandler.d.ts +22 -0
  132. package/esm/services/orderMerge/baseMergeHandler.d.ts.map +1 -0
  133. package/esm/services/orderMerge/baseMergeHandler.js +160 -0
  134. package/esm/services/orderMerge/baseMergeHandler.js.map +1 -0
  135. package/esm/services/orderMerge/interface.d.ts +8 -0
  136. package/esm/services/orderMerge/interface.d.ts.map +1 -0
  137. package/esm/services/orderMerge/interface.js +3 -0
  138. package/esm/services/orderMerge/interface.js.map +1 -0
  139. package/esm/services/orderMerge/regularOrderMergeHandler.d.ts +8 -0
  140. package/esm/services/orderMerge/regularOrderMergeHandler.d.ts.map +1 -0
  141. package/esm/services/orderMerge/regularOrderMergeHandler.js +15 -0
  142. package/esm/services/orderMerge/regularOrderMergeHandler.js.map +1 -0
  143. package/esm/usePoster.d.ts +3 -0
  144. package/esm/usePoster.d.ts.map +1 -1
  145. package/esm/usePoster.js +3 -1
  146. package/esm/usePoster.js.map +1 -1
  147. package/esm/utils/createOrder.d.ts +0 -55
  148. package/esm/utils/createOrder.d.ts.map +1 -1
  149. package/esm/utils/createOrder.js +0 -334
  150. package/esm/utils/createOrder.js.map +1 -1
  151. package/esm/utils/fokCreator.d.ts +1 -0
  152. package/esm/utils/fokCreator.d.ts.map +1 -0
  153. package/esm/utils/fokCreator.js +2 -0
  154. package/esm/utils/fokCreator.js.map +1 -0
  155. package/esm/utils/index.d.ts +5 -0
  156. package/esm/utils/index.d.ts.map +1 -0
  157. package/esm/utils/index.js +6 -0
  158. package/esm/utils/index.js.map +1 -0
  159. package/esm/utils/order.d.ts +2 -0
  160. package/esm/utils/order.d.ts.map +1 -0
  161. package/esm/utils/order.js +3 -0
  162. package/esm/utils/order.js.map +1 -0
  163. package/esm/utils/swr.d.ts +3 -1
  164. package/esm/utils/swr.d.ts.map +1 -1
  165. package/esm/utils/swr.js +123 -89
  166. package/esm/utils/swr.js.map +1 -1
  167. package/esm/utils/ws.d.ts +2 -0
  168. package/esm/utils/ws.d.ts.map +1 -0
  169. package/esm/utils/ws.js +9 -0
  170. package/esm/utils/ws.js.map +1 -0
  171. package/esm/version.d.ts +1 -1
  172. package/esm/version.js +2 -2
  173. package/esm/version.js.map +1 -1
  174. package/lib/dataProvider.d.ts.map +1 -1
  175. package/lib/dataProvider.js +0 -2
  176. package/lib/dataProvider.js.map +1 -1
  177. package/lib/index.d.ts +4 -3
  178. package/lib/index.d.ts.map +1 -1
  179. package/lib/index.js +10 -3
  180. package/lib/index.js.map +1 -1
  181. package/lib/orderly/orderlyHooks.d.ts +3 -2
  182. package/lib/orderly/orderlyHooks.d.ts.map +1 -1
  183. package/lib/orderly/orderlyHooks.js +6 -2
  184. package/lib/orderly/orderlyHooks.js.map +1 -1
  185. package/lib/orderly/useCollateral.js +2 -2
  186. package/lib/orderly/useCollateral.js.map +1 -1
  187. package/lib/orderly/useMarginRatio.js +1 -1
  188. package/lib/orderly/useMarginRatio.js.map +1 -1
  189. package/lib/orderly/useMaxQty.js +2 -2
  190. package/lib/orderly/useMaxQty.js.map +1 -1
  191. package/lib/orderly/useOrderEntry.d.ts.map +1 -1
  192. package/lib/orderly/useOrderEntry.js +14 -12
  193. package/lib/orderly/useOrderEntry.js.map +1 -1
  194. package/lib/orderly/useOrderEntryNext/index.d.ts +1 -0
  195. package/lib/orderly/useOrderEntryNext/index.d.ts.map +1 -0
  196. package/lib/orderly/useOrderEntryNext/index.js +3 -0
  197. package/lib/orderly/useOrderEntryNext/index.js.map +1 -0
  198. package/lib/orderly/{useOrderStream.d.ts → useOrderStream/useOrderStream.d.ts} +19 -12
  199. package/lib/orderly/useOrderStream/useOrderStream.d.ts.map +1 -0
  200. package/lib/orderly/{useOrderStream.js → useOrderStream/useOrderStream.js} +89 -25
  201. package/lib/orderly/useOrderStream/useOrderStream.js.map +1 -0
  202. package/lib/orderly/useOrderbookStream.d.ts.map +1 -1
  203. package/lib/orderly/useOrderbookStream.js +12 -5
  204. package/lib/orderly/useOrderbookStream.js.map +1 -1
  205. package/lib/orderly/{usePositionStream.d.ts → usePositionStream/usePositionStream.d.ts} +1 -1
  206. package/lib/orderly/usePositionStream/usePositionStream.d.ts.map +1 -0
  207. package/lib/orderly/{usePositionStream.js → usePositionStream/usePositionStream.js} +30 -22
  208. package/lib/orderly/usePositionStream/usePositionStream.js.map +1 -0
  209. package/lib/orderly/usePositionStream/utils.d.ts +8 -0
  210. package/lib/orderly/usePositionStream/utils.d.ts.map +1 -0
  211. package/lib/orderly/usePositionStream/utils.js +55 -0
  212. package/lib/orderly/usePositionStream/utils.js.map +1 -0
  213. package/lib/orderly/usePrivateDataObserver.d.ts.map +1 -1
  214. package/lib/orderly/usePrivateDataObserver.js +28 -41
  215. package/lib/orderly/usePrivateDataObserver.js.map +1 -1
  216. package/lib/orderly/useTakeProfitAndStopLoss/__test__/useTakeProfitAndStopLoss.test.d.ts +1 -0
  217. package/lib/orderly/useTakeProfitAndStopLoss/__test__/useTakeProfitAndStopLoss.test.d.ts.map +1 -0
  218. package/lib/orderly/useTakeProfitAndStopLoss/__test__/utils.test.d.ts +2 -0
  219. package/lib/orderly/useTakeProfitAndStopLoss/__test__/utils.test.d.ts.map +1 -0
  220. package/lib/orderly/useTakeProfitAndStopLoss/index.d.ts +32 -0
  221. package/lib/orderly/useTakeProfitAndStopLoss/index.d.ts.map +1 -0
  222. package/lib/orderly/useTakeProfitAndStopLoss/index.js +33 -0
  223. package/lib/orderly/useTakeProfitAndStopLoss/index.js.map +1 -0
  224. package/lib/orderly/useTakeProfitAndStopLoss/useTPSL.d.ts +59 -0
  225. package/lib/orderly/useTakeProfitAndStopLoss/useTPSL.d.ts.map +1 -0
  226. package/lib/orderly/useTakeProfitAndStopLoss/useTPSL.js +218 -0
  227. package/lib/orderly/useTakeProfitAndStopLoss/useTPSL.js.map +1 -0
  228. package/lib/orderly/useTakeProfitAndStopLoss/utils.d.ts +70 -0
  229. package/lib/orderly/useTakeProfitAndStopLoss/utils.d.ts.map +1 -0
  230. package/lib/orderly/useTakeProfitAndStopLoss/utils.js +252 -0
  231. package/lib/orderly/useTakeProfitAndStopLoss/utils.js.map +1 -0
  232. package/lib/services/orderCreator/__test__/limitOrderCreator.test.d.ts +2 -0
  233. package/lib/services/orderCreator/__test__/limitOrderCreator.test.d.ts.map +1 -0
  234. package/lib/services/orderCreator/__test__/orderCreator.test.d.ts +2 -0
  235. package/lib/services/orderCreator/__test__/orderCreator.test.d.ts.map +1 -0
  236. package/lib/services/orderCreator/__test__/stopLimitOrderCreator.test.d.ts +2 -0
  237. package/lib/services/orderCreator/__test__/stopLimitOrderCreator.test.d.ts.map +1 -0
  238. package/lib/services/orderCreator/__test__/stopMarketOrderCreator.test.d.ts +2 -0
  239. package/lib/services/orderCreator/__test__/stopMarketOrderCreator.test.d.ts.map +1 -0
  240. package/lib/services/orderCreator/__test__/tpslOrderCreator.test.d.ts +2 -0
  241. package/lib/services/orderCreator/__test__/tpslOrderCreator.test.d.ts.map +1 -0
  242. package/lib/services/orderCreator/__test__/tpslPositionOrderCreator.test.d.ts +2 -0
  243. package/lib/services/orderCreator/__test__/tpslPositionOrderCreator.test.d.ts.map +1 -0
  244. package/lib/services/orderCreator/baseAlgoCreator.d.ts +22 -0
  245. package/lib/services/orderCreator/baseAlgoCreator.d.ts.map +1 -0
  246. package/lib/services/orderCreator/baseAlgoCreator.js +67 -0
  247. package/lib/services/orderCreator/baseAlgoCreator.js.map +1 -0
  248. package/lib/services/orderCreator/baseCreator.d.ts +14 -0
  249. package/lib/services/orderCreator/baseCreator.d.ts.map +1 -0
  250. package/lib/services/orderCreator/baseCreator.js +102 -0
  251. package/lib/services/orderCreator/baseCreator.js.map +1 -0
  252. package/lib/services/orderCreator/factory.d.ts +7 -0
  253. package/lib/services/orderCreator/factory.d.ts.map +1 -0
  254. package/lib/services/orderCreator/factory.js +54 -0
  255. package/lib/services/orderCreator/factory.js.map +1 -0
  256. package/lib/services/orderCreator/fokCreator.d.ts +4 -0
  257. package/lib/services/orderCreator/fokCreator.d.ts.map +1 -0
  258. package/lib/services/orderCreator/fokCreator.js +15 -0
  259. package/lib/services/orderCreator/fokCreator.js.map +1 -0
  260. package/lib/services/orderCreator/generalCreator.d.ts +8 -0
  261. package/lib/services/orderCreator/generalCreator.d.ts.map +1 -0
  262. package/lib/services/orderCreator/generalCreator.js +25 -0
  263. package/lib/services/orderCreator/generalCreator.js.map +1 -0
  264. package/lib/services/orderCreator/interface.d.ts +23 -0
  265. package/lib/services/orderCreator/interface.d.ts.map +1 -0
  266. package/lib/services/orderCreator/interface.js +6 -0
  267. package/lib/services/orderCreator/interface.js.map +1 -0
  268. package/lib/services/orderCreator/iocCreator.d.ts +4 -0
  269. package/lib/services/orderCreator/iocCreator.d.ts.map +1 -0
  270. package/lib/services/orderCreator/iocCreator.js +15 -0
  271. package/lib/services/orderCreator/iocCreator.js.map +1 -0
  272. package/lib/services/orderCreator/limitOrderCreator.d.ts +8 -0
  273. package/lib/services/orderCreator/limitOrderCreator.d.ts.map +1 -0
  274. package/lib/services/orderCreator/limitOrderCreator.js +79 -0
  275. package/lib/services/orderCreator/limitOrderCreator.js.map +1 -0
  276. package/lib/services/orderCreator/marketOrderCreator.d.ts +24 -0
  277. package/lib/services/orderCreator/marketOrderCreator.d.ts.map +1 -0
  278. package/lib/services/orderCreator/marketOrderCreator.js +28 -0
  279. package/lib/services/orderCreator/marketOrderCreator.js.map +1 -0
  280. package/lib/services/orderCreator/postOnlyCreator.d.ts +4 -0
  281. package/lib/services/orderCreator/postOnlyCreator.d.ts.map +1 -0
  282. package/lib/services/orderCreator/postOnlyCreator.js +15 -0
  283. package/lib/services/orderCreator/postOnlyCreator.js.map +1 -0
  284. package/lib/services/orderCreator/stopLimitOrderCreator.d.ts +11 -0
  285. package/lib/services/orderCreator/stopLimitOrderCreator.d.ts.map +1 -0
  286. package/lib/services/orderCreator/stopLimitOrderCreator.js +93 -0
  287. package/lib/services/orderCreator/stopLimitOrderCreator.js.map +1 -0
  288. package/lib/services/orderCreator/stopMarketOrderCreator.d.ts +30 -0
  289. package/lib/services/orderCreator/stopMarketOrderCreator.d.ts.map +1 -0
  290. package/lib/services/orderCreator/stopMarketOrderCreator.js +56 -0
  291. package/lib/services/orderCreator/stopMarketOrderCreator.js.map +1 -0
  292. package/lib/services/orderCreator/tpslOrderCreator.d.ts +32 -0
  293. package/lib/services/orderCreator/tpslOrderCreator.d.ts.map +1 -0
  294. package/lib/services/orderCreator/tpslOrderCreator.js +94 -0
  295. package/lib/services/orderCreator/tpslOrderCreator.js.map +1 -0
  296. package/lib/services/orderCreator/tpslPositionOrderCreator.d.ts +33 -0
  297. package/lib/services/orderCreator/tpslPositionOrderCreator.d.ts.map +1 -0
  298. package/lib/services/orderCreator/tpslPositionOrderCreator.js +83 -0
  299. package/lib/services/orderCreator/tpslPositionOrderCreator.js.map +1 -0
  300. package/lib/services/orderMerge/algoOrderMergeHandler.d.ts +9 -0
  301. package/lib/services/orderMerge/algoOrderMergeHandler.d.ts.map +1 -0
  302. package/lib/services/orderMerge/algoOrderMergeHandler.js +48 -0
  303. package/lib/services/orderMerge/algoOrderMergeHandler.js.map +1 -0
  304. package/lib/services/orderMerge/baseMergeHandler.d.ts +22 -0
  305. package/lib/services/orderMerge/baseMergeHandler.d.ts.map +1 -0
  306. package/lib/services/orderMerge/baseMergeHandler.js +170 -0
  307. package/lib/services/orderMerge/baseMergeHandler.js.map +1 -0
  308. package/lib/services/orderMerge/interface.d.ts +8 -0
  309. package/lib/services/orderMerge/interface.d.ts.map +1 -0
  310. package/lib/services/orderMerge/interface.js +6 -0
  311. package/lib/services/orderMerge/interface.js.map +1 -0
  312. package/lib/services/orderMerge/regularOrderMergeHandler.d.ts +8 -0
  313. package/lib/services/orderMerge/regularOrderMergeHandler.d.ts.map +1 -0
  314. package/lib/services/orderMerge/regularOrderMergeHandler.js +25 -0
  315. package/lib/services/orderMerge/regularOrderMergeHandler.js.map +1 -0
  316. package/lib/usePoster.d.ts +3 -0
  317. package/lib/usePoster.d.ts.map +1 -1
  318. package/lib/usePoster.js +3 -1
  319. package/lib/usePoster.js.map +1 -1
  320. package/lib/utils/createOrder.d.ts +0 -55
  321. package/lib/utils/createOrder.d.ts.map +1 -1
  322. package/lib/utils/createOrder.js +3 -375
  323. package/lib/utils/createOrder.js.map +1 -1
  324. package/lib/utils/fokCreator.d.ts +1 -0
  325. package/lib/utils/fokCreator.d.ts.map +1 -0
  326. package/lib/utils/fokCreator.js +3 -0
  327. package/lib/utils/fokCreator.js.map +1 -0
  328. package/lib/utils/index.d.ts +5 -0
  329. package/lib/utils/index.d.ts.map +1 -0
  330. package/lib/utils/index.js +36 -0
  331. package/lib/utils/index.js.map +1 -0
  332. package/lib/utils/order.d.ts +2 -0
  333. package/lib/utils/order.d.ts.map +1 -0
  334. package/lib/utils/order.js +6 -0
  335. package/lib/utils/order.js.map +1 -0
  336. package/lib/utils/swr.d.ts +3 -1
  337. package/lib/utils/swr.d.ts.map +1 -1
  338. package/lib/utils/swr.js +128 -89
  339. package/lib/utils/swr.js.map +1 -1
  340. package/lib/utils/ws.d.ts +2 -0
  341. package/lib/utils/ws.d.ts.map +1 -0
  342. package/lib/utils/ws.js +19 -0
  343. package/lib/utils/ws.js.map +1 -0
  344. package/lib/version.d.ts +1 -1
  345. package/lib/version.js +2 -2
  346. package/lib/version.js.map +1 -1
  347. package/package.json +10 -8
  348. package/esm/orderly/useOrderStream.d.ts.map +0 -1
  349. package/esm/orderly/useOrderStream.js.map +0 -1
  350. package/esm/orderly/usePositionStream.d.ts.map +0 -1
  351. package/esm/orderly/usePositionStream.js.map +0 -1
  352. package/lib/orderly/useOrderStream.d.ts.map +0 -1
  353. package/lib/orderly/useOrderStream.js.map +0 -1
  354. package/lib/orderly/usePositionStream.d.ts.map +0 -1
  355. package/lib/orderly/usePositionStream.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utils/createOrder.ts"],"sourcesContent":["import { OrderType, type API, OrderEntity } from \"@orderly.network/types\";\nimport { Decimal } from \"@orderly.network/utils\";\nimport { order } from \"@orderly.network/perp\";\nimport { OrderSide } from \"@orderly.network/types\";\n\nexport type VerifyResult = {\n [P in keyof OrderEntity]?: { type: string; message: string };\n};\nexport type OrderFormEntity = Pick<\n OrderEntity,\n \"order_price\" | \"order_quantity\" | \"total\"\n>;\n\ntype ValuesDepConfig = {\n // token: API.TokenInfo;\n symbol: API.SymbolExt;\n maxQty: number;\n markPrice: number;\n};\n\nexport interface OrderCreator {\n create: (values: OrderEntity, configs: ValuesDepConfig) => OrderEntity;\n validate: (\n values: OrderFormEntity,\n configs: ValuesDepConfig\n ) => Promise<VerifyResult>;\n}\n\nconst { maxPrice, minPrice, scropePrice } = order;\n\nexport abstract class BaseOrderCreator implements OrderCreator {\n abstract create(values: OrderEntity, config: ValuesDepConfig): OrderEntity;\n abstract validate(\n values: OrderFormEntity,\n config: ValuesDepConfig\n ): Promise<VerifyResult>;\n\n baseOrder(data: OrderEntity): OrderEntity {\n const order: Partial<OrderEntity> = {\n symbol: data.symbol,\n order_type:\n data.order_type === OrderType.LIMIT\n ? !!data.order_type_ext\n ? data.order_type_ext\n : data.order_type\n : data.order_type,\n side: data.side,\n reduce_only: data.reduce_only,\n order_quantity: data.order_quantity,\n total: data.total,\n };\n\n if (data.visible_quantity === 0) {\n order.visible_quantity = data.visible_quantity;\n }\n\n return order as OrderEntity;\n }\n\n baseValidate(\n values: OrderFormEntity,\n configs: ValuesDepConfig\n ): Promise<VerifyResult> {\n const errors: {\n [P in keyof OrderEntity]?: { type: string; message: string };\n } = {};\n\n const { maxQty, symbol } = configs;\n\n // @ts-ignore\n let { order_quantity, total, order_price, reduce_only } = values;\n const { min_notional } = symbol;\n\n if (!order_quantity) {\n // calculate order_quantity from total\n if (total && order_price) {\n const { quote_dp } = configs.symbol;\n const totalNumber = new Decimal(total);\n const qty = totalNumber.dividedBy(order_price).toFixed(quote_dp);\n order_quantity = qty;\n }\n }\n\n if (!order_quantity) {\n errors.order_quantity = {\n type: \"required\",\n message: \"quantity is required\",\n };\n } else {\n // need to use MaxQty+base_max, base_min to compare\n const { base_min, quote_dp, base_dp } = configs.symbol;\n const qty = new Decimal(order_quantity);\n if (qty.lt(base_min)) {\n errors.order_quantity = {\n type: \"min\",\n message: `quantity must be greater than ${new Decimal(base_min).todp(\n base_dp\n )}`,\n };\n // errors.order_quantity = `quantity must be greater than ${base_min}`;\n } else if (qty.gt(maxQty)) {\n errors.order_quantity = {\n type: \"max\",\n message: `quantity must be less than ${new Decimal(maxQty).todp(\n base_dp\n )}`,\n };\n }\n }\n\n if (!!total) {\n const { quote_max, quote_min, quote_dp } = configs.symbol;\n const totalNumber = new Decimal(total);\n if (totalNumber.lt(quote_min)) {\n errors.total = {\n type: \"min\",\n message: `Quantity must be at least ${new Decimal(quote_min).todp(\n quote_dp\n )}`,\n };\n } else if (totalNumber.gt(quote_max)) {\n errors.total = {\n type: \"max\",\n message: `Quantity should be less or equal than ${new Decimal(\n quote_max\n ).todp(quote_dp)}`,\n };\n }\n }\n\n const notionalHintStr = checkNotional(order_price, order_quantity, min_notional);\n \n if (notionalHintStr !== undefined && reduce_only !== true) {\n errors.total = {\n type: \"min\",\n message: notionalHintStr,\n }\n }\n\n return Promise.resolve(errors);\n }\n\n fixOrderQuantity(\n order: Partial<OrderEntity>,\n config: ValuesDepConfig\n ): OrderEntity {\n // if order_quantity is not set but total is set, calculate order_quantity from total\n if (!order.order_quantity && order.total && order.order_price) {\n const { base_dp } = config.symbol;\n const totalNumber = new Decimal(order.total);\n const qty = totalNumber.div(order.order_price).toDecimalPlaces(base_dp);\n order.order_quantity = qty.toNumber();\n\n delete order.total;\n }\n\n return order as OrderEntity;\n }\n}\n\nexport function checkNotional(price?: string | number, qty?: string | number, minNotional?: number): string | undefined {\n\n \n \n if (price !== undefined && qty !== undefined && minNotional !== undefined) {\n \n try {\n const calcNotional = new Decimal(price).mul(new Decimal(qty)).toNumber();\n const notional = Number.parseFloat(`${minNotional}`);\n \n const str = calcNotional < notional ? `The order value should be greater or equal to ${minNotional} USDC` : undefined;\n return str;\n } catch (e) {\n return undefined;\n }\n }\n\n return undefined;\n}\n\nexport class LimitOrderCreator extends BaseOrderCreator {\n create(values: OrderEntity, config: ValuesDepConfig): OrderEntity {\n const order = {\n ...this.baseOrder(values),\n order_price: values.order_price,\n };\n\n this.fixOrderQuantity(order, config);\n\n delete order['total'];\n delete order['trigger_price'];\n delete order['isStopOrder'];\n\n const { quote_dp } = config.symbol;\n if (values.order_price) {\n order[\"order_price\"] = new Decimal(Number.parseFloat(values.order_price.toString())).toFixed(quote_dp, Decimal.ROUND_DOWN);\n }\n\n return order;\n }\n validate(\n values: OrderFormEntity,\n config: ValuesDepConfig\n ): Promise<VerifyResult> {\n return this.baseValidate(values, config).then((errors) => {\n // const errors = this.baseValidate(values, config);\n // @ts-ignore\n const { order_price, side } = values;\n\n if (!order_price) {\n errors.order_price = {\n type: \"required\",\n message: \"price is required\",\n };\n } else {\n const price = new Decimal(order_price);\n const { symbol } = config;\n const { price_range, price_scope } = symbol;\n const maxPriceNumber = maxPrice(config.markPrice, price_range);\n const minPriceNumber = minPrice(config.markPrice, price_range);\n const scropePriceNumbere = scropePrice(\n config.markPrice,\n price_scope,\n side\n );\n\n const priceRange = side === \"BUY\" ? {\n min: scropePriceNumbere,\n max: maxPriceNumber,\n } : {\n min: minPriceNumber,\n max: scropePriceNumbere\n };\n\n /// if side is 'buy', only check max price,\n /// if side is 'sell', only check min price,\n if (price.gt(priceRange?.max)) {\n errors.order_price = {\n type: \"max\",\n message: `Price must be less than ${new Decimal(\n priceRange.max\n ).todp(symbol.quote_dp)}`,\n };\n }\n if (price.lt(priceRange?.min)) {\n errors.order_price = {\n type: \"min\",\n message: `Price must be greater than ${new Decimal(\n priceRange.min\n ).todp(symbol.quote_dp)}`,\n };\n }\n\n }\n\n return errors;\n });\n }\n}\n\nexport class MarketOrderCreator extends BaseOrderCreator {\n create(values: OrderEntity): OrderEntity {\n const data = this.baseOrder(values);\n\n delete data[\"order_price\"];\n delete data['total'];\n delete data['trigger_price'];\n delete data['isStopOrder'];\n\n return {\n ...data,\n };\n }\n validate(\n values: OrderFormEntity,\n configs: ValuesDepConfig\n ): Promise<VerifyResult> {\n return this.baseValidate(values, configs);\n }\n}\n\nexport class PostOnlyOrderCreator extends LimitOrderCreator { }\n\nexport class FOKOrderCreator extends LimitOrderCreator { }\nexport class IOCOrderCreator extends LimitOrderCreator { }\n\nexport class StopLimitOrderCreator extends LimitOrderCreator {\n create(values: OrderEntity, config: ValuesDepConfig): OrderEntity {\n const order = {\n ...this.baseOrder(values),\n order_price: values.order_price,\n trigger_price: values.trigger_price,\n algo_type: \"STOP\",\n type: \"LIMIT\",\n quantity: values[\"order_quantity\"],\n price: values[\"order_price\"],\n trigger_price_type: \"MARK_PRICE\",\n };\n this.fixOrderQuantity(order, config);\n delete order[\"order_quantity\"];\n delete order[\"order_price\"];\n // @ts-ignore\n delete order[\"order_type\"];\n // @ts-ignore\n delete order[\"isStopOrder\"];\n delete order['total'];\n\n const { quote_dp } = config.symbol;\n if (values.order_price) {\n order[\"order_price\"] = new Decimal(Number.parseFloat(values.order_price.toString())).toFixed(quote_dp, Decimal.ROUND_DOWN);\n }\n \n if (values.trigger_price) {\n order[\"trigger_price\"] = new Decimal(Number.parseFloat(values.trigger_price.toString())).toFixed(quote_dp, Decimal.ROUND_DOWN);\n }\n\n return order;\n }\n validate(\n values: OrderFormEntity,\n config: ValuesDepConfig\n ): Promise<VerifyResult> {\n return this.baseValidate(values, config).then((errors) => {\n // const errors = this.baseValidate(values, config);\n // @ts-ignore\n const { order_price, trigger_price, side } = values;\n\n if (!order_price) {\n errors.order_price = {\n type: \"required\",\n message: \"price is required\",\n };\n }\n \n if (!trigger_price) {\n errors.trigger_price = {\n type: \"required\",\n message: \"Trigger price is required\",\n };\n } \n \n if (trigger_price && order_price) {\n const price = new Decimal(order_price);\n const { symbol } = config;\n const { price_range, price_scope } = symbol;\n const maxPriceNumber = maxPrice(trigger_price, price_range);\n const minPriceNumber = minPrice(trigger_price, price_range);\n const scropePriceNumbere = scropePrice(\n trigger_price,\n price_scope,\n side\n );\n\n const priceRange = side === \"BUY\" ? {\n min: scropePriceNumbere,\n max: maxPriceNumber,\n } : {\n min: minPriceNumber,\n max: scropePriceNumbere\n };\n\n /// if side is 'buy', only check max price,\n /// if side is 'sell', only check min price,\n if (price.gt(priceRange?.max)) {\n errors.order_price = {\n type: \"max\",\n message: `Price must be less than ${new Decimal(\n priceRange.max\n ).todp(symbol.quote_dp)}`,\n };\n }\n if (price.lt(priceRange?.min)) {\n errors.order_price = {\n type: \"min\",\n message: `Price must be greater than ${new Decimal(\n priceRange.min\n ).todp(symbol.quote_dp)}`,\n };\n }\n }\n\n return errors;\n });\n }\n}\nexport class StopMarketOrderCreator extends LimitOrderCreator {\n create(values: OrderEntity, _: ValuesDepConfig): OrderEntity {\n const result = {\n ...this.baseOrder(values),\n // order_price: values.order_price,\n trigger_price: values.trigger_price,\n algo_type: \"STOP\",\n type: \"MARKET\",\n quantity: values[\"order_quantity\"],\n // price: values[\"order_price\"],\n trigger_price_type: \"MARK_PRICE\",\n };\n delete result[\"order_quantity\"];\n delete result[\"order_price\"];\n // @ts-ignore\n delete result[\"order_type\"];\n // @ts-ignore\n delete result[\"isStopOrder\"];\n delete result['total'];\n\n console.log(\"result is\", result);\n return result;\n }\n validate(\n values: OrderFormEntity,\n config: ValuesDepConfig\n ): Promise<VerifyResult> {\n return this.baseValidate(values, config).then((errors) => {\n // const errors = this.baseValidate(values, config);\n // @ts-ignore\n const { order_price, trigger_price, side } = values;\n\n if (!trigger_price) {\n errors.trigger_price = {\n type: \"required\",\n message: \"Trigger price is required\",\n };\n }\n\n return errors;\n });\n }\n}\n\nexport class GeneralOrderCreator extends BaseOrderCreator {\n create(data: OrderEntity): OrderEntity {\n return {\n ...this.baseOrder(data),\n order_price: data.order_price,\n order_quantity: data.order_quantity,\n };\n }\n validate(\n values: OrderFormEntity,\n configs: ValuesDepConfig\n ): Promise<VerifyResult> {\n return super.baseValidate(values, configs);\n }\n}\n\nexport const availableOrderTypes = [\n OrderType.LIMIT,\n OrderType.MARKET,\n OrderType.IOC,\n OrderType.FOK,\n OrderType.POST_ONLY,\n OrderType.STOP_LIMIT,\n OrderType.STOP_MARKET,\n];\n\nexport class OrderFactory {\n static create(type: OrderType): OrderCreator | null {\n switch (type) {\n case OrderType.LIMIT:\n return new LimitOrderCreator();\n case OrderType.MARKET:\n return new MarketOrderCreator();\n // case OrderType.ASK:\n // return new AskOrderCreator();\n // case OrderType.BID:\n // return new BidOrderCreator();\n case OrderType.IOC:\n return new IOCOrderCreator();\n case OrderType.FOK:\n return new FOKOrderCreator();\n case OrderType.POST_ONLY:\n return new PostOnlyOrderCreator();\n\n case OrderType.STOP_LIMIT:\n return new StopLimitOrderCreator();\n case OrderType.STOP_MARKET:\n return new StopMarketOrderCreator();\n\n default:\n return new GeneralOrderCreator();\n }\n }\n}\n"],"names":["BaseOrderCreator","FOKOrderCreator","GeneralOrderCreator","IOCOrderCreator","LimitOrderCreator","MarketOrderCreator","OrderFactory","PostOnlyOrderCreator","StopLimitOrderCreator","StopMarketOrderCreator","availableOrderTypes","checkNotional","maxPrice","minPrice","scropePrice","order","baseOrder","data","symbol","order_type","OrderType","LIMIT","order_type_ext","side","reduce_only","order_quantity","total","visible_quantity","baseValidate","values","configs","errors","maxQty","order_price","min_notional","quote_dp","totalNumber","Decimal","qty","dividedBy","toFixed","type","message","base_min","base_dp","lt","todp","gt","quote_max","quote_min","notionalHintStr","undefined","Promise","resolve","fixOrderQuantity","config","div","toDecimalPlaces","toNumber","price","minNotional","calcNotional","mul","notional","Number","parseFloat","str","e","create","toString","ROUND_DOWN","validate","then","price_range","price_scope","maxPriceNumber","markPrice","minPriceNumber","scropePriceNumbere","priceRange","min","max","trigger_price","algo_type","quantity","trigger_price_type","_","result","MARKET","IOC","FOK","POST_ONLY","STOP_LIMIT","STOP_MARKET"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
1
+ {"version":3,"sources":["../../src/utils/createOrder.ts"],"sourcesContent":["import { Decimal } from \"@orderly.network/utils\";\n\nexport function checkNotional(\n price?: string | number,\n qty?: string | number,\n minNotional?: number\n): string | undefined {\n if (price !== undefined && qty !== undefined && minNotional !== undefined) {\n try {\n const calcNotional = new Decimal(price).mul(new Decimal(qty)).toNumber();\n const notional = Number.parseFloat(`${minNotional}`);\n\n const str =\n calcNotional < notional\n ? `The order value should be greater or equal to ${minNotional} USDC`\n : undefined;\n return str;\n } catch (e) {\n return undefined;\n }\n }\n\n return undefined;\n}\n"],"names":["checkNotional","price","qty","minNotional","undefined","calcNotional","Decimal","mul","toNumber","notional","Number","parseFloat","str","e"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;","mappings":";;;;+BAEgBA;;;eAAAA;;;uBAFQ;AAEjB,SAASA,cACdC,KAAuB,EACvBC,GAAqB,EACrBC,WAAoB;IAEpB,IAAIF,UAAUG,aAAaF,QAAQE,aAAaD,gBAAgBC,WAAW;QACzE,IAAI;YACF,MAAMC,eAAe,IAAIC,cAAO,CAACL,OAAOM,GAAG,CAAC,IAAID,cAAO,CAACJ,MAAMM,QAAQ;YACtE,MAAMC,WAAWC,OAAOC,UAAU,CAAC,CAAC,EAAER,YAAY,CAAC;YAEnD,MAAMS,MACJP,eAAeI,WACX,CAAC,8CAA8C,EAAEN,YAAY,KAAK,CAAC,GACnEC;YACN,OAAOQ;QACT,EAAE,OAAOC,GAAG;YACV,OAAOT;QACT;IACF;IAEA,OAAOA;AACT"}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=fokCreator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fokCreator.d.ts","sourceRoot":"","sources":["../../src/utils/fokCreator.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+
3
+ //# sourceMappingURL=fokCreator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/utils/fokCreator.ts"],"names":[],"rangeMappings":"","mappings":""}
@@ -0,0 +1,5 @@
1
+ export { findTPSLFromOrder, findTPSLFromOrders, findPositionTPSLFromOrders, } from "../orderly/usePositionStream/utils";
2
+ export { cleanStringStyle } from "./orderEntryHelper";
3
+ export { getPositionBySymbol } from "./swr";
4
+ export { priceToPnl } from "../orderly/useTakeProfitAndStopLoss/utils";
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,0BAA0B,GAC3B,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,OAAO,CAAC;AAE5C,OAAO,EAAE,UAAU,EAAE,MAAM,2CAA2C,CAAC"}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ cleanStringStyle: function() {
13
+ return _orderEntryHelper.cleanStringStyle;
14
+ },
15
+ findPositionTPSLFromOrders: function() {
16
+ return _utils.findPositionTPSLFromOrders;
17
+ },
18
+ findTPSLFromOrder: function() {
19
+ return _utils.findTPSLFromOrder;
20
+ },
21
+ findTPSLFromOrders: function() {
22
+ return _utils.findTPSLFromOrders;
23
+ },
24
+ getPositionBySymbol: function() {
25
+ return _swr.getPositionBySymbol;
26
+ },
27
+ priceToPnl: function() {
28
+ return _utils1.priceToPnl;
29
+ }
30
+ });
31
+ const _utils = require("../orderly/usePositionStream/utils");
32
+ const _orderEntryHelper = require("./orderEntryHelper");
33
+ const _swr = require("./swr");
34
+ const _utils1 = require("../orderly/useTakeProfitAndStopLoss/utils");
35
+
36
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/utils/index.ts"],"sourcesContent":["export {\n findTPSLFromOrder,\n findTPSLFromOrders,\n findPositionTPSLFromOrders,\n} from \"../orderly/usePositionStream/utils\";\n\nexport { cleanStringStyle } from \"./orderEntryHelper\";\n\nexport { getPositionBySymbol } from \"./swr\";\n\nexport { priceToPnl } from \"../orderly/useTakeProfitAndStopLoss/utils\";\n"],"names":["cleanStringStyle","findPositionTPSLFromOrders","findTPSLFromOrder","findTPSLFromOrders","getPositionBySymbol","priceToPnl"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";;;;;;;;;;;IAMSA,gBAAgB;eAAhBA,kCAAgB;;IAHvBC,0BAA0B;eAA1BA,iCAA0B;;IAF1BC,iBAAiB;eAAjBA,wBAAiB;;IACjBC,kBAAkB;eAAlBA,yBAAkB;;IAMXC,mBAAmB;eAAnBA,wBAAmB;;IAEnBC,UAAU;eAAVA,kBAAU;;;uBANZ;kCAE0B;qBAEG;wBAET"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=order.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"order.d.ts","sourceRoot":"","sources":["../../src/utils/order.ts"],"names":[],"mappings":""}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+
6
+ //# sourceMappingURL=order.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/utils/order.ts"],"names":[],"rangeMappings":"","mappings":""}
@@ -6,5 +6,7 @@ export declare const generateKeyFun: (args: {
6
6
  side?: string;
7
7
  size?: number;
8
8
  }) => (pageIndex: number, previousPageData: any) => string | null;
9
- export declare const updateOrdersHandler: (key: string, updatedOrder: WSMessage.AlgoOrder | WSMessage.Order, orders?: API.OrderResponse[]) => unknown[] | undefined;
9
+ export declare const updateOrdersHandler: (key: string, updatedOrder: WSMessage.Order, orders?: API.OrderResponse[]) => API.OrderResponse[] | undefined;
10
+ export declare function updateAlgoOrdersHandler(key: string, message: WSMessage.AlgoOrder[], orders: API.OrderResponse[]): API.OrderResponse[] | undefined;
11
+ export declare function getPositionBySymbol(symbol: string): void;
10
12
  //# sourceMappingURL=swr.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"swr.d.ts","sourceRoot":"","sources":["../../src/utils/swr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAInD,eAAO,MAAM,cAAc,SAClB;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,iBAC7D,MAAM,oBAAoB,GAAG,KAAG,MAAM,GAAG,IAyBpD,CAAC;AAEJ,eAAO,MAAM,mBAAmB,QACzB,MAAM,gBACG,UAAU,SAAS,GAAG,UAAU,KAAK,WAC1C,IAAI,aAAa,EAAE,0BA6H7B,CAAC"}
1
+ {"version":3,"file":"swr.d.ts","sourceRoot":"","sources":["../../src/utils/swr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAOnD,eAAO,MAAM,cAAc,SAClB;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,iBAC7D,MAAM,oBAAoB,GAAG,KAAG,MAAM,GAAG,IAyBpD,CAAC;AAEJ,eAAO,MAAM,mBAAmB,QACzB,MAAM,gBACG,UAAU,KAAK,WAEpB,IAAI,aAAa,EAAE,oCAsI7B,CAAC;AAEF,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,SAAS,CAAC,SAAS,EAAE,EAC9B,MAAM,EAAE,GAAG,CAAC,aAAa,EAAE,mCAW5B;AAuGD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,QAGjD"}
package/lib/utils/swr.js CHANGED
@@ -12,12 +12,19 @@ _export(exports, {
12
12
  generateKeyFun: function() {
13
13
  return generateKeyFun;
14
14
  },
15
+ getPositionBySymbol: function() {
16
+ return getPositionBySymbol;
17
+ },
18
+ updateAlgoOrdersHandler: function() {
19
+ return updateAlgoOrdersHandler;
20
+ },
15
21
  updateOrdersHandler: function() {
16
22
  return updateOrdersHandler;
17
23
  }
18
24
  });
19
- const _utils = require("@orderly.network/utils");
20
25
  const _ramda = require("ramda");
26
+ const _algoOrderMergeHandler = require("../services/orderMerge/algoOrderMergeHandler");
27
+ const _regularOrderMergeHandler = require("../services/orderMerge/regularOrderMergeHandler");
21
28
  const generateKeyFun = (args)=>(pageIndex, previousPageData)=>{
22
29
  // reached the end
23
30
  if (previousPageData && !previousPageData.rows?.length) return null;
@@ -47,93 +54,127 @@ const generateKeyFun = (args)=>(pageIndex, previousPageData)=>{
47
54
  }
48
55
  return `/v1/orders?${search.toString()}`;
49
56
  };
50
- const updateOrdersHandler = (key, updatedOrder, orders)=>{
57
+ const updateOrdersHandler = (key, updatedOrder, // isAlgoOrder:boolean,
58
+ orders)=>{
51
59
  if (!orders) {
52
60
  return;
53
61
  }
54
- // console.log(key);
55
- const isAlgoOrder = "algoOrderId" in updatedOrder;
56
- const underscoreOrder = object2underscore(updatedOrder);
57
- let formattedOrder = {
58
- ...underscoreOrder,
59
- updated_time: updatedOrder.timestamp,
60
- type: typeof underscoreOrder.type === 'string' ? updatedOrder.type.replace("_ORDER", "") : updatedOrder.type
61
- };
62
- if (typeof formattedOrder.visible_quantity === "undefined") {
63
- // check visible field;
64
- // @ts-ignore
65
- formattedOrder.visible_quantity = updatedOrder.visible;
66
- }
67
- // console.log(formattedOrder, updatedOrder);
68
- const hasCreateTime = "created_time" in formattedOrder;
69
- if (!hasCreateTime) {
70
- formattedOrder["created_time"] = updatedOrder.timestamp;
71
- }
72
- if (isAlgoOrder) {
73
- if (typeof updatedOrder.triggerTradePrice !== "undefined") {
74
- formattedOrder.trigger_price = updatedOrder.triggerTradePrice;
75
- }
76
- if (formattedOrder.type === "MARKET") {
77
- const { price, ...newObj } = formattedOrder;
78
- // @ts-ignore
79
- formattedOrder = newObj;
80
- }
81
- } else {
82
- // formattedOrder.created_time = updatedOrder.timestamp;
83
- }
84
- // const index = lensIndex(0);
85
- const orderId = updatedOrder.orderId || updatedOrder.algoOrderId;
86
- const isExisting = orderIsExisting(orders, orderId);
87
- const status = updatedOrder.status || updatedOrder.rootAlgoStatus;
88
- switch(status){
89
- case "NEW":
90
- {
91
- // chceck if the order is already in the list
92
- if (isExisting || key.startsWith("orders:CANCELLED") || key.startsWith("orders:FILLED") || key.startsWith("orders:REJECTED")) {
93
- return orders;
94
- }
95
- return insertOrders(orders, formattedOrder);
96
- }
97
- case "CANCELLED":
98
- {
99
- if (key.startsWith("orders:FILLED") || key.startsWith("orders:REJECTED")) {
100
- return orders;
101
- }
102
- if (key.startsWith("orders:NEW") || key.startsWith("orders:INCOMPLETE")) {
103
- return removeOrderIfExisting(orders, orderId);
104
- }
105
- if (key.startsWith("orders:CANCELLED")) {
106
- return insertOrders(orders, formattedOrder);
107
- }
108
- return updateOrders(orders, formattedOrder);
109
- }
110
- case "REPLACED":
111
- return updateOrders(orders, formattedOrder);
112
- case "FILLED":
113
- {
114
- if (isExisting) {
115
- // for new list, remove the order if it exists
116
- if (key.startsWith("orders:INCOMPLETE") || key.startsWith("orders:NEW")) {
117
- // if fullfilled, remove from the list
118
- if (updatedOrder.totalExecutedQuantity === updatedOrder.quantity) {
119
- return removeOrderIfExisting(orders, orderId);
120
- }
121
- // update
122
- return updateOrders(orders, formattedOrder);
123
- }
124
- } else {
125
- // for filled list, insert the order if it doesn't exist
126
- if (key.startsWith("orders:CANCELLED") || key.startsWith("orders:INCOMPLETE") || key.startsWith("orders:NEW")) {
127
- return orders;
128
- }
129
- // if filled/history list:
130
- return insertOrders(orders, formattedOrder);
131
- }
132
- }
133
- default:
134
- return orders;
135
- }
62
+ const handler = new _regularOrderMergeHandler.RegularOrderMergeHandler(updatedOrder);
63
+ return handler.merge(key, updatedOrder, orders);
64
+ // console.log(key);
65
+ // const isAlgoOrder = "algoOrderId" in updatedOrder;
66
+ // // if (isAlgoOrder) {
67
+ // // mergeHandler = new AlgoOrderMergeHandler();
68
+ // // } else {
69
+ // // mergeHandler = new RegularOrderMergeHandler();
70
+ // // }
71
+ // const underscoreOrder = object2underscore(updatedOrder);
72
+ // let formattedOrder: API.Order & API.AlgoOrder = {
73
+ // ...underscoreOrder,
74
+ // updated_time: updatedOrder.timestamp,
75
+ // type: updatedOrder.type?.replace("_ORDER", ""),
76
+ // //@ts-ignore
77
+ // // visible_quantity: updatedOrder.visibleQuantity || updatedOrder.visible,
78
+ // };
79
+ // if (typeof formattedOrder.visible_quantity === "undefined") {
80
+ // // check visible field;
81
+ // // @ts-ignore
82
+ // formattedOrder.visible_quantity = updatedOrder.visible;
83
+ // }
84
+ // // console.log(formattedOrder, updatedOrder);
85
+ // const hasCreateTime = "created_time" in formattedOrder;
86
+ // if (!hasCreateTime) {
87
+ // formattedOrder["created_time"] = updatedOrder.timestamp;
88
+ // }
89
+ // if (isAlgoOrder) {
90
+ // if (typeof updatedOrder.triggerTradePrice !== "undefined") {
91
+ // formattedOrder.trigger_price = updatedOrder.triggerTradePrice;
92
+ // }
93
+ // if (formattedOrder.type === "MARKET") {
94
+ // const { price, ...newObj } = formattedOrder;
95
+ // // @ts-ignore
96
+ // formattedOrder = newObj;
97
+ // }
98
+ // } else {
99
+ // // formattedOrder.created_time = updatedOrder.timestamp;
100
+ // }
101
+ // // const index = lensIndex(0);
102
+ // const orderId =
103
+ // (updatedOrder as WSMessage.Order).orderId ||
104
+ // (updatedOrder as WSMessage.AlgoOrder).algoOrderId;
105
+ // const isExisting = orderIsExisting(orders, orderId);
106
+ // const status =
107
+ // (updatedOrder as WSMessage.Order).status ||
108
+ // (updatedOrder as WSMessage.AlgoOrder).rootAlgoStatus;
109
+ // switch (status) {
110
+ // case "NEW": {
111
+ // // chceck if the order is already in the list
112
+ // if (
113
+ // isExisting ||
114
+ // key.startsWith("orders:CANCELLED") ||
115
+ // key.startsWith("orders:FILLED") ||
116
+ // key.startsWith("orders:REJECTED")
117
+ // ) {
118
+ // return orders;
119
+ // }
120
+ // return insertOrders(orders, formattedOrder);
121
+ // }
122
+ // case "CANCELLED": {
123
+ // if (
124
+ // key.startsWith("orders:FILLED") ||
125
+ // key.startsWith("orders:REJECTED")
126
+ // ) {
127
+ // return orders;
128
+ // }
129
+ // if (key.startsWith("orders:NEW") || key.startsWith("orders:INCOMPLETE")) {
130
+ // return removeOrderIfExisting(orders, orderId);
131
+ // }
132
+ // if (key.startsWith("orders:CANCELLED")) {
133
+ // return insertOrders(orders, formattedOrder);
134
+ // }
135
+ // return updateOrders(orders, formattedOrder);
136
+ // }
137
+ // case "REPLACED":
138
+ // return updateOrders(orders, formattedOrder);
139
+ // case "FILLED": {
140
+ // if (isExisting) {
141
+ // // for new list, remove the order if it exists
142
+ // if (
143
+ // key.startsWith("orders:INCOMPLETE") ||
144
+ // key.startsWith("orders:NEW")
145
+ // ) {
146
+ // // if fullfilled, remove from the list
147
+ // if (updatedOrder.totalExecutedQuantity === updatedOrder.quantity) {
148
+ // return removeOrderIfExisting(orders, orderId);
149
+ // }
150
+ // // update
151
+ // return updateOrders(orders, formattedOrder);
152
+ // }
153
+ // } else {
154
+ // // for filled list, insert the order if it doesn't exist
155
+ // if (
156
+ // key.startsWith("orders:CANCELLED") ||
157
+ // key.startsWith("orders:INCOMPLETE") ||
158
+ // key.startsWith("orders:NEW")
159
+ // ) {
160
+ // return orders;
161
+ // }
162
+ // // if filled/history list:
163
+ // return insertOrders(orders, formattedOrder);
164
+ // }
165
+ // }
166
+ // default:
167
+ // return orders;
168
+ // }
136
169
  };
170
+ function updateAlgoOrdersHandler(key, message, orders) {
171
+ if (!orders) {
172
+ return;
173
+ }
174
+ const mergeHandler = new _algoOrderMergeHandler.AlgoOrderMergeHandler(message);
175
+ const result = mergeHandler.merge(key, message, orders);
176
+ return result;
177
+ }
137
178
  function updateOrders(orders, formattedOrder) {
138
179
  return orders.map((item)=>{
139
180
  return {
@@ -213,11 +254,9 @@ function orderIsExisting(orders, orderId) {
213
254
  const index = findOrderIndex(orders, orderId);
214
255
  return Array.isArray(index);
215
256
  }
216
- function object2underscore(obj) {
217
- return Object.keys(obj).reduce((acc, key)=>{
218
- acc[(0, _utils.camelCaseToUnderscoreCase)(key)] = obj[key];
219
- return acc;
220
- }, {});
257
+ function getPositionBySymbol(symbol) {
258
+ // const config = useSWRConfig();
259
+ // console.log(config);
221
260
  }
222
261
 
223
262
  //# sourceMappingURL=swr.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utils/swr.ts"],"sourcesContent":["import { API } from \"@orderly.network/types\";\nimport { WSMessage } from \"@orderly.network/types\";\nimport { camelCaseToUnderscoreCase } from \"@orderly.network/utils\";\nimport { is, lensIndex, over, startsWith } from \"ramda\";\n\nexport const generateKeyFun =\n (args: { status?: string; symbol?: string; side?: string; size?: number }) =>\n (pageIndex: number, previousPageData: any): string | null => {\n // reached the end\n if (previousPageData && !previousPageData.rows?.length) return null;\n\n const { status, symbol, side, size = 100 } = args;\n\n const search = new URLSearchParams([\n [\"size\", size.toString()],\n [\"page\", `${pageIndex + 1}`],\n [\"source_type\", \"ALL\"],\n ]);\n\n if (status) {\n search.set(`status`, status);\n }\n\n if (symbol) {\n search.set(`symbol`, symbol);\n }\n\n if (side) {\n search.set(`side`, side);\n }\n\n return `/v1/orders?${search.toString()}`;\n };\n\nexport const updateOrdersHandler = (\n key: string,\n updatedOrder: WSMessage.AlgoOrder | WSMessage.Order,\n orders?: API.OrderResponse[]\n) => {\n if (!orders) {\n return;\n }\n\n // console.log(key);\n const isAlgoOrder = \"algoOrderId\" in updatedOrder;\n\n const underscoreOrder = object2underscore(updatedOrder);\n\n let formattedOrder: API.Order & API.AlgoOrder = {\n ...underscoreOrder,\n updated_time: updatedOrder.timestamp,\n type: typeof underscoreOrder.type ==='string'? updatedOrder.type.replace(\"_ORDER\", \"\"): updatedOrder.type,\n //@ts-ignore\n // visible_quantity: updatedOrder.visibleQuantity || updatedOrder.visible,\n };\n\n if (typeof formattedOrder.visible_quantity === \"undefined\") {\n // check visible field;\n // @ts-ignore\n formattedOrder.visible_quantity = updatedOrder.visible;\n }\n\n // console.log(formattedOrder, updatedOrder);\n\n const hasCreateTime = \"created_time\" in formattedOrder;\n if (!hasCreateTime) {\n formattedOrder[\"created_time\"] = updatedOrder.timestamp;\n }\n\n if (isAlgoOrder) {\n if (typeof updatedOrder.triggerTradePrice !== \"undefined\") {\n formattedOrder.trigger_price = updatedOrder.triggerTradePrice;\n }\n\n if (formattedOrder.type === \"MARKET\") {\n const {price, ...newObj} = formattedOrder;\n // @ts-ignore\n formattedOrder = newObj;\n }\n } else {\n // formattedOrder.created_time = updatedOrder.timestamp;\n }\n\n // const index = lensIndex(0);\n const orderId =\n (updatedOrder as WSMessage.Order).orderId ||\n (updatedOrder as WSMessage.AlgoOrder).algoOrderId;\n\n const isExisting = orderIsExisting(orders, orderId);\n\n const status =\n (updatedOrder as WSMessage.Order).status ||\n (updatedOrder as WSMessage.AlgoOrder).rootAlgoStatus;\n\n switch (status) {\n case \"NEW\": {\n // chceck if the order is already in the list\n if (\n isExisting ||\n key.startsWith(\"orders:CANCELLED\") ||\n key.startsWith(\"orders:FILLED\") ||\n key.startsWith(\"orders:REJECTED\")\n ) {\n return orders;\n }\n return insertOrders(orders, formattedOrder);\n }\n\n case \"CANCELLED\": {\n if (\n key.startsWith(\"orders:FILLED\") ||\n key.startsWith(\"orders:REJECTED\")\n ) {\n return orders;\n }\n if (key.startsWith(\"orders:NEW\") || key.startsWith(\"orders:INCOMPLETE\")) {\n return removeOrderIfExisting(orders, orderId);\n }\n\n if (key.startsWith(\"orders:CANCELLED\")) {\n return insertOrders(orders, formattedOrder);\n }\n\n return updateOrders(orders, formattedOrder);\n }\n\n case \"REPLACED\":\n return updateOrders(orders, formattedOrder);\n\n case \"FILLED\": {\n if (isExisting) {\n // for new list, remove the order if it exists\n if (\n key.startsWith(\"orders:INCOMPLETE\") ||\n key.startsWith(\"orders:NEW\")\n ) {\n // if fullfilled, remove from the list\n if (updatedOrder.totalExecutedQuantity === updatedOrder.quantity) {\n return removeOrderIfExisting(orders, orderId);\n }\n\n // update\n return updateOrders(orders, formattedOrder);\n }\n } else {\n // for filled list, insert the order if it doesn't exist\n\n if (\n key.startsWith(\"orders:CANCELLED\") ||\n key.startsWith(\"orders:INCOMPLETE\") ||\n key.startsWith(\"orders:NEW\")\n ) {\n return orders;\n }\n // if filled/history list:\n return insertOrders(orders, formattedOrder);\n }\n }\n\n default:\n return orders;\n }\n};\n\nfunction updateOrders(\n orders: API.OrderResponse[],\n formattedOrder: API.Order & API.AlgoOrder\n) {\n return orders.map((item) => {\n return {\n // ...item,\n meta: item.meta,\n rows: item.rows.map((order: API.Order | API.AlgoOrder) => {\n const isAlgoOrder = \"algo_order_id\" in order;\n\n if (\n isAlgoOrder &&\n formattedOrder?.algo_order_id === order?.algo_order_id\n ) {\n return { ...order, ...formattedOrder };\n }\n\n if (!isAlgoOrder && formattedOrder?.order_id === order?.order_id) {\n return { ...order, ...formattedOrder };\n }\n\n return order;\n }),\n };\n });\n}\n\nfunction insertOrders(\n orders: API.OrderResponse[],\n formattedOrder: API.Order & API.AlgoOrder\n) {\n const index = lensIndex(0);\n return over(\n index,\n (item: any) => ({\n meta: {\n ...item.meta,\n total: item.meta.total + 1,\n },\n rows: [formattedOrder, ...item.rows],\n }),\n orders\n );\n}\n\nfunction removeOrderIfExisting(\n orders: API.OrderResponse[],\n orderId: number\n): API.OrderResponse[] {\n const isExisting = orderIsExisting(orders, orderId);\n if (!isExisting) return orders;\n return orders.map((item) => {\n return {\n meta: { ...item.meta, total: item.meta.total - 1 },\n rows: item.rows.filter((order: API.Order | API.AlgoOrder) => {\n const isAlgoOrder = \"algo_order_id\" in order;\n return isAlgoOrder\n ? (order as API.AlgoOrder).algo_order_id !== orderId\n : (order as API.Order).order_id !== orderId;\n }),\n };\n });\n}\n\nfunction findOrderIndex(\n orders: API.OrderResponse[],\n orderId: number\n): number[] | undefined {\n let index: number = 0;\n let index2: number | undefined;\n\n for (let idx = 0; idx < orders.length; idx++) {\n index = idx;\n const item = orders[idx];\n\n for (let idx2 = 0; idx2 < item.rows.length; idx2++) {\n const element = item.rows[idx2];\n if (\n (element as API.AlgoOrder).algo_order_id === orderId ||\n (element as API.Order).order_id === orderId\n ) {\n index2 = idx2;\n\n break;\n }\n }\n }\n\n if (typeof index2 === \"undefined\") {\n return;\n }\n\n return [index, index2];\n}\n\nfunction orderIsExisting(orders: API.OrderResponse[], orderId: number) {\n const index = findOrderIndex(orders, orderId);\n return Array.isArray(index);\n}\n\nfunction object2underscore(obj: any) {\n return Object.keys(obj).reduce((acc, key) => {\n acc[camelCaseToUnderscoreCase(key)] = obj[key];\n return acc;\n }, {} as any);\n}\n"],"names":["generateKeyFun","updateOrdersHandler","args","pageIndex","previousPageData","rows","length","status","symbol","side","size","search","URLSearchParams","toString","set","key","updatedOrder","orders","isAlgoOrder","underscoreOrder","object2underscore","formattedOrder","updated_time","timestamp","type","replace","visible_quantity","visible","hasCreateTime","triggerTradePrice","trigger_price","price","newObj","orderId","algoOrderId","isExisting","orderIsExisting","rootAlgoStatus","startsWith","insertOrders","removeOrderIfExisting","updateOrders","totalExecutedQuantity","quantity","map","item","meta","order","algo_order_id","order_id","index","lensIndex","over","total","filter","findOrderIndex","index2","idx","idx2","element","Array","isArray","obj","Object","keys","reduce","acc","camelCaseToUnderscoreCase"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";;;;;;;;;;;IAKaA,cAAc;eAAdA;;IA6BAC,mBAAmB;eAAnBA;;;uBAhC6B;uBACM;AAEzC,MAAMD,iBACX,CAACE,OACD,CAACC,WAAmBC;QAClB,kBAAkB;QAClB,IAAIA,oBAAoB,CAACA,iBAAiBC,IAAI,EAAEC,QAAQ,OAAO;QAE/D,MAAM,EAAEC,MAAM,EAAEC,MAAM,EAAEC,IAAI,EAAEC,OAAO,GAAG,EAAE,GAAGR;QAE7C,MAAMS,SAAS,IAAIC,gBAAgB;YACjC;gBAAC;gBAAQF,KAAKG,QAAQ;aAAG;YACzB;gBAAC;gBAAQ,CAAC,EAAEV,YAAY,EAAE,CAAC;aAAC;YAC5B;gBAAC;gBAAe;aAAM;SACvB;QAED,IAAII,QAAQ;YACVI,OAAOG,GAAG,CAAC,CAAC,MAAM,CAAC,EAAEP;QACvB;QAEA,IAAIC,QAAQ;YACVG,OAAOG,GAAG,CAAC,CAAC,MAAM,CAAC,EAAEN;QACvB;QAEA,IAAIC,MAAM;YACRE,OAAOG,GAAG,CAAC,CAAC,IAAI,CAAC,EAAEL;QACrB;QAEA,OAAO,CAAC,WAAW,EAAEE,OAAOE,QAAQ,GAAG,CAAC;IAC1C;AAEK,MAAMZ,sBAAsB,CACjCc,KACAC,cACAC;IAEA,IAAI,CAACA,QAAQ;QACX;IACF;IAEA,oBAAoB;IACpB,MAAMC,cAAc,iBAAiBF;IAErC,MAAMG,kBAAkBC,kBAAkBJ;IAE1C,IAAIK,iBAA4C;QAC9C,GAAGF,eAAe;QAClBG,cAAcN,aAAaO,SAAS;QACpCC,MAAM,OAAOL,gBAAgBK,IAAI,KAAI,WAAUR,aAAaQ,IAAI,CAACC,OAAO,CAAC,UAAU,MAAKT,aAAaQ,IAAI;IAG3G;IAEA,IAAI,OAAOH,eAAeK,gBAAgB,KAAK,aAAa;QAC1D,uBAAuB;QACvB,aAAa;QACbL,eAAeK,gBAAgB,GAAGV,aAAaW,OAAO;IACxD;IAEA,6CAA6C;IAE7C,MAAMC,gBAAgB,kBAAkBP;IACxC,IAAI,CAACO,eAAe;QAClBP,cAAc,CAAC,eAAe,GAAGL,aAAaO,SAAS;IACzD;IAEA,IAAIL,aAAa;QACf,IAAI,OAAOF,aAAaa,iBAAiB,KAAK,aAAa;YACzDR,eAAeS,aAAa,GAAGd,aAAaa,iBAAiB;QAC/D;QAEA,IAAIR,eAAeG,IAAI,KAAK,UAAU;YACpC,MAAM,EAACO,KAAK,EAAE,GAAGC,QAAO,GAAGX;YAC3B,aAAa;YACbA,iBAAiBW;QACnB;IACF,OAAO;IACL,wDAAwD;IAC1D;IAEA,8BAA8B;IAC9B,MAAMC,UACJ,AAACjB,aAAiCiB,OAAO,IACzC,AAACjB,aAAqCkB,WAAW;IAEnD,MAAMC,aAAaC,gBAAgBnB,QAAQgB;IAE3C,MAAM1B,SACJ,AAACS,aAAiCT,MAAM,IACxC,AAACS,aAAqCqB,cAAc;IAEtD,OAAQ9B;QACN,KAAK;YAAO;gBACV,6CAA6C;gBAC7C,IACE4B,cACApB,IAAIuB,UAAU,CAAC,uBACfvB,IAAIuB,UAAU,CAAC,oBACfvB,IAAIuB,UAAU,CAAC,oBACf;oBACA,OAAOrB;gBACT;gBACA,OAAOsB,aAAatB,QAAQI;YAC9B;QAEA,KAAK;YAAa;gBAChB,IACEN,IAAIuB,UAAU,CAAC,oBACfvB,IAAIuB,UAAU,CAAC,oBACf;oBACA,OAAOrB;gBACT;gBACA,IAAIF,IAAIuB,UAAU,CAAC,iBAAiBvB,IAAIuB,UAAU,CAAC,sBAAsB;oBACvE,OAAOE,sBAAsBvB,QAAQgB;gBACvC;gBAEA,IAAIlB,IAAIuB,UAAU,CAAC,qBAAqB;oBACtC,OAAOC,aAAatB,QAAQI;gBAC9B;gBAEA,OAAOoB,aAAaxB,QAAQI;YAC9B;QAEA,KAAK;YACH,OAAOoB,aAAaxB,QAAQI;QAE9B,KAAK;YAAU;gBACb,IAAIc,YAAY;oBACd,8CAA8C;oBAC9C,IACEpB,IAAIuB,UAAU,CAAC,wBACfvB,IAAIuB,UAAU,CAAC,eACf;wBACA,sCAAsC;wBACtC,IAAItB,aAAa0B,qBAAqB,KAAK1B,aAAa2B,QAAQ,EAAE;4BAChE,OAAOH,sBAAsBvB,QAAQgB;wBACvC;wBAEA,SAAS;wBACT,OAAOQ,aAAaxB,QAAQI;oBAC9B;gBACF,OAAO;oBACL,wDAAwD;oBAExD,IACEN,IAAIuB,UAAU,CAAC,uBACfvB,IAAIuB,UAAU,CAAC,wBACfvB,IAAIuB,UAAU,CAAC,eACf;wBACA,OAAOrB;oBACT;oBACA,0BAA0B;oBAC1B,OAAOsB,aAAatB,QAAQI;gBAC9B;YACF;QAEA;YACE,OAAOJ;IACX;AACF;AAEA,SAASwB,aACPxB,MAA2B,EAC3BI,cAAyC;IAEzC,OAAOJ,OAAO2B,GAAG,CAAC,CAACC;QACjB,OAAO;YACL,WAAW;YACXC,MAAMD,KAAKC,IAAI;YACfzC,MAAMwC,KAAKxC,IAAI,CAACuC,GAAG,CAAC,CAACG;gBACnB,MAAM7B,cAAc,mBAAmB6B;gBAEvC,IACE7B,eACAG,gBAAgB2B,kBAAkBD,OAAOC,eACzC;oBACA,OAAO;wBAAE,GAAGD,KAAK;wBAAE,GAAG1B,cAAc;oBAAC;gBACvC;gBAEA,IAAI,CAACH,eAAeG,gBAAgB4B,aAAaF,OAAOE,UAAU;oBAChE,OAAO;wBAAE,GAAGF,KAAK;wBAAE,GAAG1B,cAAc;oBAAC;gBACvC;gBAEA,OAAO0B;YACT;QACF;IACF;AACF;AAEA,SAASR,aACPtB,MAA2B,EAC3BI,cAAyC;IAEzC,MAAM6B,QAAQC,IAAAA,gBAAS,EAAC;IACxB,OAAOC,IAAAA,WAAI,EACTF,OACA,CAACL,OAAe,CAAA;YACdC,MAAM;gBACJ,GAAGD,KAAKC,IAAI;gBACZO,OAAOR,KAAKC,IAAI,CAACO,KAAK,GAAG;YAC3B;YACAhD,MAAM;gBAACgB;mBAAmBwB,KAAKxC,IAAI;aAAC;QACtC,CAAA,GACAY;AAEJ;AAEA,SAASuB,sBACPvB,MAA2B,EAC3BgB,OAAe;IAEf,MAAME,aAAaC,gBAAgBnB,QAAQgB;IAC3C,IAAI,CAACE,YAAY,OAAOlB;IACxB,OAAOA,OAAO2B,GAAG,CAAC,CAACC;QACjB,OAAO;YACLC,MAAM;gBAAE,GAAGD,KAAKC,IAAI;gBAAEO,OAAOR,KAAKC,IAAI,CAACO,KAAK,GAAG;YAAE;YACjDhD,MAAMwC,KAAKxC,IAAI,CAACiD,MAAM,CAAC,CAACP;gBACtB,MAAM7B,cAAc,mBAAmB6B;gBACvC,OAAO7B,cACH,AAAC6B,MAAwBC,aAAa,KAAKf,UAC3C,AAACc,MAAoBE,QAAQ,KAAKhB;YACxC;QACF;IACF;AACF;AAEA,SAASsB,eACPtC,MAA2B,EAC3BgB,OAAe;IAEf,IAAIiB,QAAgB;IACpB,IAAIM;IAEJ,IAAK,IAAIC,MAAM,GAAGA,MAAMxC,OAAOX,MAAM,EAAEmD,MAAO;QAC5CP,QAAQO;QACR,MAAMZ,OAAO5B,MAAM,CAACwC,IAAI;QAExB,IAAK,IAAIC,OAAO,GAAGA,OAAOb,KAAKxC,IAAI,CAACC,MAAM,EAAEoD,OAAQ;YAClD,MAAMC,UAAUd,KAAKxC,IAAI,CAACqD,KAAK;YAC/B,IACE,AAACC,QAA0BX,aAAa,KAAKf,WAC7C,AAAC0B,QAAsBV,QAAQ,KAAKhB,SACpC;gBACAuB,SAASE;gBAET;YACF;QACF;IACF;IAEA,IAAI,OAAOF,WAAW,aAAa;QACjC;IACF;IAEA,OAAO;QAACN;QAAOM;KAAO;AACxB;AAEA,SAASpB,gBAAgBnB,MAA2B,EAAEgB,OAAe;IACnE,MAAMiB,QAAQK,eAAetC,QAAQgB;IACrC,OAAO2B,MAAMC,OAAO,CAACX;AACvB;AAEA,SAAS9B,kBAAkB0C,GAAQ;IACjC,OAAOC,OAAOC,IAAI,CAACF,KAAKG,MAAM,CAAC,CAACC,KAAKnD;QACnCmD,GAAG,CAACC,IAAAA,gCAAyB,EAACpD,KAAK,GAAG+C,GAAG,CAAC/C,IAAI;QAC9C,OAAOmD;IACT,GAAG,CAAC;AACN"}
1
+ {"version":3,"sources":["../../src/utils/swr.ts"],"sourcesContent":["import { API } from \"@orderly.network/types\";\nimport { WSMessage } from \"@orderly.network/types\";\nimport { is, lensIndex, over, startsWith } from \"ramda\";\nimport { AlgoOrderMergeHandler } from \"../services/orderMerge/algoOrderMergeHandler\";\nimport { RegularOrderMergeHandler } from \"../services/orderMerge/regularOrderMergeHandler\";\n\n// import { useSWRConfig, unstable_serialize } from \"swr\";\n\nexport const generateKeyFun =\n (args: { status?: string; symbol?: string; side?: string; size?: number }) =>\n (pageIndex: number, previousPageData: any): string | null => {\n // reached the end\n if (previousPageData && !previousPageData.rows?.length) return null;\n\n const { status, symbol, side, size = 100 } = args;\n\n const search = new URLSearchParams([\n [\"size\", size.toString()],\n [\"page\", `${pageIndex + 1}`],\n [\"source_type\", \"ALL\"],\n ]);\n\n if (status) {\n search.set(`status`, status);\n }\n\n if (symbol) {\n search.set(`symbol`, symbol);\n }\n\n if (side) {\n search.set(`side`, side);\n }\n\n return `/v1/orders?${search.toString()}`;\n };\n\nexport const updateOrdersHandler = (\n key: string,\n updatedOrder: WSMessage.Order,\n // isAlgoOrder:boolean,\n orders?: API.OrderResponse[]\n) => {\n if (!orders) {\n return;\n }\n const handler = new RegularOrderMergeHandler(updatedOrder);\n\n return handler.merge(key, updatedOrder, orders);\n\n // console.log(key);\n // const isAlgoOrder = \"algoOrderId\" in updatedOrder;\n\n // // if (isAlgoOrder) {\n // // mergeHandler = new AlgoOrderMergeHandler();\n // // } else {\n // // mergeHandler = new RegularOrderMergeHandler();\n // // }\n\n // const underscoreOrder = object2underscore(updatedOrder);\n\n // let formattedOrder: API.Order & API.AlgoOrder = {\n // ...underscoreOrder,\n // updated_time: updatedOrder.timestamp,\n // type: updatedOrder.type?.replace(\"_ORDER\", \"\"),\n // //@ts-ignore\n // // visible_quantity: updatedOrder.visibleQuantity || updatedOrder.visible,\n // };\n\n // if (typeof formattedOrder.visible_quantity === \"undefined\") {\n // // check visible field;\n // // @ts-ignore\n // formattedOrder.visible_quantity = updatedOrder.visible;\n // }\n\n // // console.log(formattedOrder, updatedOrder);\n\n // const hasCreateTime = \"created_time\" in formattedOrder;\n // if (!hasCreateTime) {\n // formattedOrder[\"created_time\"] = updatedOrder.timestamp;\n // }\n\n // if (isAlgoOrder) {\n // if (typeof updatedOrder.triggerTradePrice !== \"undefined\") {\n // formattedOrder.trigger_price = updatedOrder.triggerTradePrice;\n // }\n\n // if (formattedOrder.type === \"MARKET\") {\n // const { price, ...newObj } = formattedOrder;\n // // @ts-ignore\n // formattedOrder = newObj;\n // }\n // } else {\n // // formattedOrder.created_time = updatedOrder.timestamp;\n // }\n\n // // const index = lensIndex(0);\n // const orderId =\n // (updatedOrder as WSMessage.Order).orderId ||\n // (updatedOrder as WSMessage.AlgoOrder).algoOrderId;\n\n // const isExisting = orderIsExisting(orders, orderId);\n\n // const status =\n // (updatedOrder as WSMessage.Order).status ||\n // (updatedOrder as WSMessage.AlgoOrder).rootAlgoStatus;\n\n // switch (status) {\n // case \"NEW\": {\n // // chceck if the order is already in the list\n // if (\n // isExisting ||\n // key.startsWith(\"orders:CANCELLED\") ||\n // key.startsWith(\"orders:FILLED\") ||\n // key.startsWith(\"orders:REJECTED\")\n // ) {\n // return orders;\n // }\n // return insertOrders(orders, formattedOrder);\n // }\n\n // case \"CANCELLED\": {\n // if (\n // key.startsWith(\"orders:FILLED\") ||\n // key.startsWith(\"orders:REJECTED\")\n // ) {\n // return orders;\n // }\n // if (key.startsWith(\"orders:NEW\") || key.startsWith(\"orders:INCOMPLETE\")) {\n // return removeOrderIfExisting(orders, orderId);\n // }\n\n // if (key.startsWith(\"orders:CANCELLED\")) {\n // return insertOrders(orders, formattedOrder);\n // }\n\n // return updateOrders(orders, formattedOrder);\n // }\n\n // case \"REPLACED\":\n // return updateOrders(orders, formattedOrder);\n\n // case \"FILLED\": {\n // if (isExisting) {\n // // for new list, remove the order if it exists\n // if (\n // key.startsWith(\"orders:INCOMPLETE\") ||\n // key.startsWith(\"orders:NEW\")\n // ) {\n // // if fullfilled, remove from the list\n // if (updatedOrder.totalExecutedQuantity === updatedOrder.quantity) {\n // return removeOrderIfExisting(orders, orderId);\n // }\n\n // // update\n // return updateOrders(orders, formattedOrder);\n // }\n // } else {\n // // for filled list, insert the order if it doesn't exist\n\n // if (\n // key.startsWith(\"orders:CANCELLED\") ||\n // key.startsWith(\"orders:INCOMPLETE\") ||\n // key.startsWith(\"orders:NEW\")\n // ) {\n // return orders;\n // }\n // // if filled/history list:\n // return insertOrders(orders, formattedOrder);\n // }\n // }\n\n // default:\n // return orders;\n // }\n};\n\nexport function updateAlgoOrdersHandler(\n key: string,\n message: WSMessage.AlgoOrder[],\n orders: API.OrderResponse[]\n) {\n if (!orders) {\n return;\n }\n\n const mergeHandler = new AlgoOrderMergeHandler(message);\n\n const result = mergeHandler.merge(key, message, orders);\n\n return result;\n}\n\nfunction updateOrders(\n orders: API.OrderResponse[],\n formattedOrder: API.Order & API.AlgoOrder\n) {\n return orders.map((item) => {\n return {\n // ...item,\n meta: item.meta,\n rows: item.rows.map((order: API.Order | API.AlgoOrder) => {\n const isAlgoOrder = \"algo_order_id\" in order;\n\n if (\n isAlgoOrder &&\n formattedOrder?.algo_order_id === order?.algo_order_id\n ) {\n return { ...order, ...formattedOrder };\n }\n\n if (!isAlgoOrder && formattedOrder?.order_id === order?.order_id) {\n return { ...order, ...formattedOrder };\n }\n\n return order;\n }),\n };\n });\n}\n\nfunction insertOrders(\n orders: API.OrderResponse[],\n formattedOrder: API.Order & API.AlgoOrder\n) {\n const index = lensIndex(0);\n return over(\n index,\n (item: any) => ({\n meta: {\n ...item.meta,\n total: item.meta.total + 1,\n },\n rows: [formattedOrder, ...item.rows],\n }),\n orders\n );\n}\n\nfunction removeOrderIfExisting(\n orders: API.OrderResponse[],\n orderId: number\n): API.OrderResponse[] {\n const isExisting = orderIsExisting(orders, orderId);\n if (!isExisting) return orders;\n return orders.map((item) => {\n return {\n meta: { ...item.meta, total: item.meta.total - 1 },\n rows: item.rows.filter((order: API.Order | API.AlgoOrder) => {\n const isAlgoOrder = \"algo_order_id\" in order;\n return isAlgoOrder\n ? (order as API.AlgoOrder).algo_order_id !== orderId\n : (order as API.Order).order_id !== orderId;\n }),\n };\n });\n}\n\nfunction findOrderIndex(\n orders: API.OrderResponse[],\n orderId: number\n): number[] | undefined {\n let index: number = 0;\n let index2: number | undefined;\n\n for (let idx = 0; idx < orders.length; idx++) {\n index = idx;\n const item = orders[idx];\n\n for (let idx2 = 0; idx2 < item.rows.length; idx2++) {\n const element = item.rows[idx2];\n if (\n (element as API.AlgoOrder).algo_order_id === orderId ||\n (element as API.Order).order_id === orderId\n ) {\n index2 = idx2;\n\n break;\n }\n }\n }\n\n if (typeof index2 === \"undefined\") {\n return;\n }\n\n return [index, index2];\n}\n\nfunction orderIsExisting(orders: API.OrderResponse[], orderId: number) {\n const index = findOrderIndex(orders, orderId);\n return Array.isArray(index);\n}\n\nexport function getPositionBySymbol(symbol: string) {\n // const config = useSWRConfig();\n // console.log(config);\n}\n"],"names":["generateKeyFun","getPositionBySymbol","updateAlgoOrdersHandler","updateOrdersHandler","args","pageIndex","previousPageData","rows","length","status","symbol","side","size","search","URLSearchParams","toString","set","key","updatedOrder","orders","handler","RegularOrderMergeHandler","merge","message","mergeHandler","AlgoOrderMergeHandler","result","updateOrders","formattedOrder","map","item","meta","order","isAlgoOrder","algo_order_id","order_id","insertOrders","index","lensIndex","over","total","removeOrderIfExisting","orderId","isExisting","orderIsExisting","filter","findOrderIndex","index2","idx","idx2","element","Array","isArray"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";;;;;;;;;;;IAQaA,cAAc;eAAdA;;IA8RGC,mBAAmB;eAAnBA;;IArHAC,uBAAuB;eAAvBA;;IA5IHC,mBAAmB;eAAnBA;;;uBAnCmC;uCACV;0CACG;AAIlC,MAAMH,iBACX,CAACI,OACD,CAACC,WAAmBC;QAClB,kBAAkB;QAClB,IAAIA,oBAAoB,CAACA,iBAAiBC,IAAI,EAAEC,QAAQ,OAAO;QAE/D,MAAM,EAAEC,MAAM,EAAEC,MAAM,EAAEC,IAAI,EAAEC,OAAO,GAAG,EAAE,GAAGR;QAE7C,MAAMS,SAAS,IAAIC,gBAAgB;YACjC;gBAAC;gBAAQF,KAAKG,QAAQ;aAAG;YACzB;gBAAC;gBAAQ,CAAC,EAAEV,YAAY,EAAE,CAAC;aAAC;YAC5B;gBAAC;gBAAe;aAAM;SACvB;QAED,IAAII,QAAQ;YACVI,OAAOG,GAAG,CAAC,CAAC,MAAM,CAAC,EAAEP;QACvB;QAEA,IAAIC,QAAQ;YACVG,OAAOG,GAAG,CAAC,CAAC,MAAM,CAAC,EAAEN;QACvB;QAEA,IAAIC,MAAM;YACRE,OAAOG,GAAG,CAAC,CAAC,IAAI,CAAC,EAAEL;QACrB;QAEA,OAAO,CAAC,WAAW,EAAEE,OAAOE,QAAQ,GAAG,CAAC;IAC1C;AAEK,MAAMZ,sBAAsB,CACjCc,KACAC,cACA,uBAAuB;AACvBC;IAEA,IAAI,CAACA,QAAQ;QACX;IACF;IACA,MAAMC,UAAU,IAAIC,kDAAwB,CAACH;IAE7C,OAAOE,QAAQE,KAAK,CAACL,KAAKC,cAAcC;AAExC,oBAAoB;AACpB,qDAAqD;AAErD,wBAAwB;AACxB,mDAAmD;AACnD,cAAc;AACd,sDAAsD;AACtD,OAAO;AAEP,2DAA2D;AAE3D,oDAAoD;AACpD,wBAAwB;AACxB,0CAA0C;AAC1C,oDAAoD;AACpD,iBAAiB;AACjB,+EAA+E;AAC/E,KAAK;AAEL,gEAAgE;AAChE,4BAA4B;AAC5B,kBAAkB;AAClB,4DAA4D;AAC5D,IAAI;AAEJ,gDAAgD;AAEhD,0DAA0D;AAC1D,wBAAwB;AACxB,6DAA6D;AAC7D,IAAI;AAEJ,qBAAqB;AACrB,iEAAiE;AACjE,qEAAqE;AACrE,MAAM;AAEN,4CAA4C;AAC5C,mDAAmD;AACnD,oBAAoB;AACpB,+BAA+B;AAC/B,MAAM;AACN,WAAW;AACX,6DAA6D;AAC7D,IAAI;AAEJ,iCAAiC;AACjC,kBAAkB;AAClB,iDAAiD;AACjD,uDAAuD;AAEvD,uDAAuD;AAEvD,iBAAiB;AACjB,gDAAgD;AAChD,0DAA0D;AAE1D,oBAAoB;AACpB,kBAAkB;AAClB,oDAAoD;AACpD,WAAW;AACX,sBAAsB;AACtB,8CAA8C;AAC9C,2CAA2C;AAC3C,0CAA0C;AAC1C,UAAU;AACV,uBAAuB;AACvB,QAAQ;AACR,mDAAmD;AACnD,MAAM;AAEN,wBAAwB;AACxB,WAAW;AACX,2CAA2C;AAC3C,0CAA0C;AAC1C,UAAU;AACV,uBAAuB;AACvB,QAAQ;AACR,iFAAiF;AACjF,uDAAuD;AACvD,QAAQ;AAER,gDAAgD;AAChD,qDAAqD;AACrD,QAAQ;AAER,mDAAmD;AACnD,MAAM;AAEN,qBAAqB;AACrB,mDAAmD;AAEnD,qBAAqB;AACrB,wBAAwB;AACxB,uDAAuD;AACvD,aAAa;AACb,iDAAiD;AACjD,uCAAuC;AACvC,YAAY;AACZ,iDAAiD;AACjD,8EAA8E;AAC9E,2DAA2D;AAC3D,YAAY;AAEZ,oBAAoB;AACpB,uDAAuD;AACvD,UAAU;AACV,eAAe;AACf,iEAAiE;AAEjE,aAAa;AACb,gDAAgD;AAChD,iDAAiD;AACjD,uCAAuC;AACvC,YAAY;AACZ,yBAAyB;AACzB,UAAU;AACV,mCAAmC;AACnC,qDAAqD;AACrD,QAAQ;AACR,MAAM;AAEN,aAAa;AACb,qBAAqB;AACrB,IAAI;AACN;AAEO,SAASjB,wBACde,GAAW,EACXM,OAA8B,EAC9BJ,MAA2B;IAE3B,IAAI,CAACA,QAAQ;QACX;IACF;IAEA,MAAMK,eAAe,IAAIC,4CAAqB,CAACF;IAE/C,MAAMG,SAASF,aAAaF,KAAK,CAACL,KAAKM,SAASJ;IAEhD,OAAOO;AACT;AAEA,SAASC,aACPR,MAA2B,EAC3BS,cAAyC;IAEzC,OAAOT,OAAOU,GAAG,CAAC,CAACC;QACjB,OAAO;YACL,WAAW;YACXC,MAAMD,KAAKC,IAAI;YACfxB,MAAMuB,KAAKvB,IAAI,CAACsB,GAAG,CAAC,CAACG;gBACnB,MAAMC,cAAc,mBAAmBD;gBAEvC,IACEC,eACAL,gBAAgBM,kBAAkBF,OAAOE,eACzC;oBACA,OAAO;wBAAE,GAAGF,KAAK;wBAAE,GAAGJ,cAAc;oBAAC;gBACvC;gBAEA,IAAI,CAACK,eAAeL,gBAAgBO,aAAaH,OAAOG,UAAU;oBAChE,OAAO;wBAAE,GAAGH,KAAK;wBAAE,GAAGJ,cAAc;oBAAC;gBACvC;gBAEA,OAAOI;YACT;QACF;IACF;AACF;AAEA,SAASI,aACPjB,MAA2B,EAC3BS,cAAyC;IAEzC,MAAMS,QAAQC,IAAAA,gBAAS,EAAC;IACxB,OAAOC,IAAAA,WAAI,EACTF,OACA,CAACP,OAAe,CAAA;YACdC,MAAM;gBACJ,GAAGD,KAAKC,IAAI;gBACZS,OAAOV,KAAKC,IAAI,CAACS,KAAK,GAAG;YAC3B;YACAjC,MAAM;gBAACqB;mBAAmBE,KAAKvB,IAAI;aAAC;QACtC,CAAA,GACAY;AAEJ;AAEA,SAASsB,sBACPtB,MAA2B,EAC3BuB,OAAe;IAEf,MAAMC,aAAaC,gBAAgBzB,QAAQuB;IAC3C,IAAI,CAACC,YAAY,OAAOxB;IACxB,OAAOA,OAAOU,GAAG,CAAC,CAACC;QACjB,OAAO;YACLC,MAAM;gBAAE,GAAGD,KAAKC,IAAI;gBAAES,OAAOV,KAAKC,IAAI,CAACS,KAAK,GAAG;YAAE;YACjDjC,MAAMuB,KAAKvB,IAAI,CAACsC,MAAM,CAAC,CAACb;gBACtB,MAAMC,cAAc,mBAAmBD;gBACvC,OAAOC,cACH,AAACD,MAAwBE,aAAa,KAAKQ,UAC3C,AAACV,MAAoBG,QAAQ,KAAKO;YACxC;QACF;IACF;AACF;AAEA,SAASI,eACP3B,MAA2B,EAC3BuB,OAAe;IAEf,IAAIL,QAAgB;IACpB,IAAIU;IAEJ,IAAK,IAAIC,MAAM,GAAGA,MAAM7B,OAAOX,MAAM,EAAEwC,MAAO;QAC5CX,QAAQW;QACR,MAAMlB,OAAOX,MAAM,CAAC6B,IAAI;QAExB,IAAK,IAAIC,OAAO,GAAGA,OAAOnB,KAAKvB,IAAI,CAACC,MAAM,EAAEyC,OAAQ;YAClD,MAAMC,UAAUpB,KAAKvB,IAAI,CAAC0C,KAAK;YAC/B,IACE,AAACC,QAA0BhB,aAAa,KAAKQ,WAC7C,AAACQ,QAAsBf,QAAQ,KAAKO,SACpC;gBACAK,SAASE;gBAET;YACF;QACF;IACF;IAEA,IAAI,OAAOF,WAAW,aAAa;QACjC;IACF;IAEA,OAAO;QAACV;QAAOU;KAAO;AACxB;AAEA,SAASH,gBAAgBzB,MAA2B,EAAEuB,OAAe;IACnE,MAAML,QAAQS,eAAe3B,QAAQuB;IACrC,OAAOS,MAAMC,OAAO,CAACf;AACvB;AAEO,SAASpC,oBAAoBS,MAAc;AAChD,iCAAiC;AACjC,uBAAuB;AACzB"}
@@ -0,0 +1,2 @@
1
+ export declare function object2underscore(obj: any): any;
2
+ //# sourceMappingURL=ws.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ws.d.ts","sourceRoot":"","sources":["../../src/utils/ws.ts"],"names":[],"mappings":"AAEA,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,GAAG,OAKzC"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "object2underscore", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return object2underscore;
9
+ }
10
+ });
11
+ const _utils = require("@orderly.network/utils");
12
+ function object2underscore(obj) {
13
+ return Object.keys(obj).reduce((acc, key)=>{
14
+ acc[(0, _utils.camelCaseToUnderscoreCase)(key)] = obj[key];
15
+ return acc;
16
+ }, {});
17
+ }
18
+
19
+ //# sourceMappingURL=ws.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/utils/ws.ts"],"sourcesContent":["import { camelCaseToUnderscoreCase } from \"@orderly.network/utils\";\n\nexport function object2underscore(obj: any) {\n return Object.keys(obj).reduce((acc, key) => {\n acc[camelCaseToUnderscoreCase(key)] = obj[key];\n return acc;\n }, {} as any);\n}\n"],"names":["object2underscore","obj","Object","keys","reduce","acc","key","camelCaseToUnderscoreCase"],"rangeMappings":";;;;;;;;;;;;;;;;","mappings":";;;;+BAEgBA;;;eAAAA;;;uBAF0B;AAEnC,SAASA,kBAAkBC,GAAQ;IACxC,OAAOC,OAAOC,IAAI,CAACF,KAAKG,MAAM,CAAC,CAACC,KAAKC;QACnCD,GAAG,CAACE,IAAAA,gCAAyB,EAACD,KAAK,GAAGL,GAAG,CAACK,IAAI;QAC9C,OAAOD;IACT,GAAG,CAAC;AACN"}
package/lib/version.d.ts CHANGED
@@ -5,6 +5,6 @@ declare global {
5
5
  };
6
6
  }
7
7
  }
8
- declare const _default: "1.3.0-alpha.0";
8
+ declare const _default: "1.4.0-alpha.0";
9
9
  export default _default;
10
10
  //# sourceMappingURL=version.d.ts.map
package/lib/version.js CHANGED
@@ -10,8 +10,8 @@ Object.defineProperty(exports, "default", {
10
10
  });
11
11
  if (typeof window !== 'undefined') {
12
12
  window.__ORDERLY_VERSION__ = window.__ORDERLY_VERSION__ || {};
13
- window.__ORDERLY_VERSION__["@orderly.network/hooks"] = "1.3.0-alpha.0";
13
+ window.__ORDERLY_VERSION__["@orderly.network/hooks"] = "1.4.0-alpha.0";
14
14
  }
15
- const _default = "1.3.0-alpha.0";
15
+ const _default = "1.4.0-alpha.0";
16
16
 
17
17
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/version.ts"],"sourcesContent":["\ndeclare global {\n interface Window {\n __ORDERLY_VERSION__?: {\n [key: string]: string;\n };\n }\n}\nif(typeof window !== 'undefined') {\n window.__ORDERLY_VERSION__ = window.__ORDERLY_VERSION__ || {};\n window.__ORDERLY_VERSION__[\"@orderly.network/hooks\"] = \"1.3.0-alpha.0\";\n};\n\nexport default \"1.3.0-alpha.0\";\n"],"names":["window","__ORDERLY_VERSION__"],"rangeMappings":";;;;;;;;;;;;;;","mappings":";;;;+BAaA;;;eAAA;;;AALA,IAAG,OAAOA,WAAW,aAAa;IAC9BA,OAAOC,mBAAmB,GAAGD,OAAOC,mBAAmB,IAAI,CAAC;IAC5DD,OAAOC,mBAAmB,CAAC,yBAAyB,GAAG;AAC3D;MAEA,WAAe"}
1
+ {"version":3,"sources":["../src/version.ts"],"sourcesContent":["\ndeclare global {\n interface Window {\n __ORDERLY_VERSION__?: {\n [key: string]: string;\n };\n }\n}\nif(typeof window !== 'undefined') {\n window.__ORDERLY_VERSION__ = window.__ORDERLY_VERSION__ || {};\n window.__ORDERLY_VERSION__[\"@orderly.network/hooks\"] = \"1.4.0-alpha.0\";\n};\n\nexport default \"1.4.0-alpha.0\";\n"],"names":["window","__ORDERLY_VERSION__"],"rangeMappings":";;;;;;;;;;;;;;","mappings":";;;;+BAaA;;;eAAA;;;AALA,IAAG,OAAOA,WAAW,aAAa;IAC9BA,OAAOC,mBAAmB,GAAGD,OAAOC,mBAAmB,IAAI,CAAC;IAC5DD,OAAOC,mBAAmB,CAAC,yBAAyB,GAAG;AAC3D;MAEA,WAAe"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@orderly.network/hooks",
3
- "version": "1.3.0-alpha.0",
3
+ "version": "1.4.0-alpha.0",
4
4
  "description": "",
5
5
  "main": "lib/index.js",
6
6
  "module": "esm/index.js",
@@ -15,33 +15,35 @@
15
15
  },
16
16
  "devDependencies": {
17
17
  "@babel/preset-env": "^7.22.9",
18
+ "@babel/preset-react": "^7.22.5",
18
19
  "@babel/preset-typescript": "^7.22.5",
19
20
  "@swc/cli": "^0.3.12",
20
21
  "@swc/core": "^1.4.12",
21
22
  "@swc/plugin-remove-console": "^1.5.121",
22
23
  "@testing-library/react-hooks": "^8.0.1",
24
+ "@testing-library/react": "^14.2.1",
23
25
  "@types/jest": "^29.5.3",
24
26
  "@types/ramda": "^0.29.3",
25
27
  "@types/react": "^18.2.38",
28
+ "babel-jest": "^29.6.1",
26
29
  "jest": "^29.6.1",
27
- "react": "^18.2.0",
28
30
  "react-test-renderer": "^18.2.0",
29
31
  "rimraf": "^5.0.5",
30
32
  "tsup": "^7.1.0",
31
33
  "typedoc": "^0.24.8",
32
34
  "typescript": "^5.1.6",
33
- "tsconfig": "0.2.0-alpha.0"
35
+ "tsconfig": "0.2.2"
34
36
  },
35
37
  "dependencies": {
36
38
  "ramda": "^0.29.0",
37
39
  "swr": "^2.2.4",
38
40
  "use-constant": "^1.1.1",
39
41
  "use-debounce": "^9.0.4",
40
- "@orderly.network/core": "1.3.0-alpha.0",
41
- "@orderly.network/net": "1.3.0-alpha.0",
42
- "@orderly.network/perp": "3.1.0-alpha.0",
43
- "@orderly.network/types": "1.3.0-alpha.0",
44
- "@orderly.network/utils": "1.3.0-alpha.0"
42
+ "@orderly.network/core": "1.4.0-alpha.0",
43
+ "@orderly.network/net": "1.4.0-alpha.0",
44
+ "@orderly.network/types": "1.4.0-alpha.0",
45
+ "@orderly.network/perp": "3.2.0-alpha.0",
46
+ "@orderly.network/utils": "1.4.0-alpha.0"
45
47
  },
46
48
  "publishConfig": {
47
49
  "access": "public"
@@ -1 +0,0 @@
1
- {"version":3,"file":"useOrderStream.d.ts","sourceRoot":"","sources":["../../src/orderly/useOrderStream.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,SAAS,EACT,WAAW,EACX,WAAW,EAEZ,MAAM,wBAAwB,CAAC;AAUhC,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IAC7B,MAAM,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;CAC9B;AAID,KAAK,MAAM,GAAG;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,SAAS,CAAC;CAClB,CAAC;AAEF,eAAO,MAAM,cAAc,WAIjB,MAAM,YAEJ;IACR;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;;;;;;oCA+GyC,MAAM,SAAS,WAAW;oCA8D1B,MAAM,WAAW,MAAM;wCAvDnB,MAAM,SAAS,WAAW;wCA8D1B,MAAM,WAAW,MAAM;;;;;;;;;;;;;EAkCtE,CAAC"}