@orderly.network/hooks 1.2.0 → 1.3.2

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 (371) hide show
  1. package/esm/configProvider.d.ts +7 -1
  2. package/esm/configProvider.d.ts.map +1 -1
  3. package/esm/configProvider.js +44 -18
  4. package/esm/configProvider.js.map +1 -0
  5. package/esm/dataProvider.js +24 -19
  6. package/esm/dataProvider.js.map +1 -0
  7. package/esm/index.d.ts +1 -0
  8. package/esm/index.d.ts.map +1 -1
  9. package/esm/index.js +4 -1
  10. package/esm/index.js.map +1 -0
  11. package/esm/middleware/signatureMiddleware.js +9 -8
  12. package/esm/middleware/signatureMiddleware.js.map +1 -0
  13. package/esm/orderly/orderbook.service.js +39 -28
  14. package/esm/orderly/orderbook.service.js.map +1 -0
  15. package/esm/orderly/orderlyHooks.d.ts +3 -0
  16. package/esm/orderly/orderlyHooks.d.ts.map +1 -1
  17. package/esm/orderly/orderlyHooks.js +2 -0
  18. package/esm/orderly/orderlyHooks.js.map +1 -0
  19. package/esm/orderly/useAccountInfo.js +3 -1
  20. package/esm/orderly/useAccountInfo.js.map +1 -0
  21. package/esm/orderly/useChain.js +16 -9
  22. package/esm/orderly/useChain.js.map +1 -0
  23. package/esm/orderly/useChains.d.ts +11 -12
  24. package/esm/orderly/useChains.d.ts.map +1 -1
  25. package/esm/orderly/useChains.js +68 -46
  26. package/esm/orderly/useChains.js.map +1 -0
  27. package/esm/orderly/useCollateral.d.ts +3 -4
  28. package/esm/orderly/useCollateral.d.ts.map +1 -1
  29. package/esm/orderly/useCollateral.js +53 -20
  30. package/esm/orderly/useCollateral.js.map +1 -0
  31. package/esm/orderly/useDeposit.js +123 -125
  32. package/esm/orderly/useDeposit.js.map +1 -0
  33. package/esm/orderly/useFundingRate.js +14 -13
  34. package/esm/orderly/useFundingRate.js.map +1 -0
  35. package/esm/orderly/useFundingRates.js +6 -4
  36. package/esm/orderly/useFundingRates.js.map +1 -0
  37. package/esm/orderly/useHoldingStream.js +19 -15
  38. package/esm/orderly/useHoldingStream.js.map +1 -0
  39. package/esm/orderly/useIndexPrice.js +7 -5
  40. package/esm/orderly/useIndexPrice.js.map +1 -0
  41. package/esm/orderly/useLeverage.js +9 -12
  42. package/esm/orderly/useLeverage.js.map +1 -0
  43. package/esm/orderly/useMarginRatio.js +27 -13
  44. package/esm/orderly/useMarginRatio.js.map +1 -0
  45. package/esm/orderly/useMarkPrice.js +13 -7
  46. package/esm/orderly/useMarkPrice.js.map +1 -0
  47. package/esm/orderly/useMarkPricesStream.d.ts +1 -1
  48. package/esm/orderly/useMarkPricesStream.d.ts.map +1 -1
  49. package/esm/orderly/useMarkPricesStream.js +9 -8
  50. package/esm/orderly/useMarkPricesStream.js.map +1 -0
  51. package/esm/orderly/useMarketTradeStream.js +33 -18
  52. package/esm/orderly/useMarketTradeStream.js.map +1 -0
  53. package/esm/orderly/useMarkets.js +144 -81
  54. package/esm/orderly/useMarkets.js.map +1 -0
  55. package/esm/orderly/useMarketsStream.js +23 -28
  56. package/esm/orderly/useMarketsStream.js.map +1 -0
  57. package/esm/orderly/useMaxQty.d.ts +6 -0
  58. package/esm/orderly/useMaxQty.d.ts.map +1 -1
  59. package/esm/orderly/useMaxQty.js +26 -18
  60. package/esm/orderly/useMaxQty.js.map +1 -0
  61. package/esm/orderly/useOpenInterest.js +7 -5
  62. package/esm/orderly/useOpenInterest.js.map +1 -0
  63. package/esm/orderly/useOrderEntry.js +182 -160
  64. package/esm/orderly/useOrderEntry.js.map +1 -0
  65. package/esm/orderly/useOrderStream.js +85 -66
  66. package/esm/orderly/useOrderStream.js.map +1 -0
  67. package/esm/orderly/useOrderbookStream.d.ts +2 -3
  68. package/esm/orderly/useOrderbookStream.d.ts.map +1 -1
  69. package/esm/orderly/useOrderbookStream.js +173 -103
  70. package/esm/orderly/useOrderbookStream.js.map +1 -0
  71. package/esm/orderly/usePositionStream.js +82 -62
  72. package/esm/orderly/usePositionStream.js.map +1 -0
  73. package/esm/orderly/usePrivateDataObserver.js +55 -48
  74. package/esm/orderly/usePrivateDataObserver.js.map +1 -0
  75. package/esm/orderly/useSettleSubscription.js +8 -6
  76. package/esm/orderly/useSettleSubscription.js.map +1 -0
  77. package/esm/orderly/useSymbolPriceRange.js +14 -8
  78. package/esm/orderly/useSymbolPriceRange.js.map +1 -0
  79. package/esm/orderly/useSymbolsInfo.js +7 -5
  80. package/esm/orderly/useSymbolsInfo.js.map +1 -0
  81. package/esm/orderly/useTickerStream.d.ts +5 -1
  82. package/esm/orderly/useTickerStream.d.ts.map +1 -1
  83. package/esm/orderly/useTickerStream.js +26 -29
  84. package/esm/orderly/useTickerStream.js.map +1 -0
  85. package/esm/orderly/useWalletSubscription.js +8 -6
  86. package/esm/orderly/useWalletSubscription.js.map +1 -0
  87. package/esm/orderly/useWithdraw.js +19 -11
  88. package/esm/orderly/useWithdraw.js.map +1 -0
  89. package/esm/orderlyContext.d.ts +8 -1
  90. package/esm/orderlyContext.d.ts.map +1 -1
  91. package/esm/orderlyContext.js +2 -1
  92. package/esm/orderlyContext.js.map +1 -0
  93. package/esm/services/dataCenter.js +10 -8
  94. package/esm/services/dataCenter.js.map +1 -0
  95. package/esm/services/painter/backgroundPaint.js +11 -14
  96. package/esm/services/painter/backgroundPaint.js.map +1 -0
  97. package/esm/services/painter/basePaint.js +5 -1
  98. package/esm/services/painter/basePaint.js.map +1 -0
  99. package/esm/services/painter/dataPaint.js +53 -50
  100. package/esm/services/painter/dataPaint.js.map +1 -0
  101. package/esm/services/painter/layout.config.js +15 -13
  102. package/esm/services/painter/layout.config.js.map +1 -0
  103. package/esm/services/painter/painter.js +14 -13
  104. package/esm/services/painter/painter.js.map +1 -0
  105. package/esm/services/painter/resource.js +6 -4
  106. package/esm/services/painter/resource.js.map +1 -0
  107. package/esm/statusProvider.js +10 -3
  108. package/esm/statusProvider.js.map +1 -0
  109. package/esm/unuse/apiPrefixMiddleware.js +18 -16
  110. package/esm/unuse/apiPrefixMiddleware.js.map +1 -0
  111. package/esm/unuse/fn.js +3 -1
  112. package/esm/unuse/fn.js.map +1 -0
  113. package/esm/unuse/useBalance.js +6 -4
  114. package/esm/unuse/useBalance.js.map +1 -0
  115. package/esm/unuse/useFetures.js +26 -18
  116. package/esm/unuse/useFetures.js.map +1 -0
  117. package/esm/unuse/useRunOnce.js +10 -7
  118. package/esm/unuse/useRunOnce.js.map +1 -0
  119. package/esm/unuse/useSyncEnd.js +5 -4
  120. package/esm/unuse/useSyncEnd.js.map +1 -0
  121. package/esm/unuse/useTokenInfo.js +7 -5
  122. package/esm/unuse/useTokenInfo.js.map +1 -0
  123. package/esm/unuse/useUnsettlementPnL.js +7 -3
  124. package/esm/unuse/useUnsettlementPnL.js.map +1 -0
  125. package/esm/useAccount.js +18 -21
  126. package/esm/useAccount.js.map +1 -0
  127. package/esm/useAccountInstance.js +6 -7
  128. package/esm/useAccountInstance.js.map +1 -0
  129. package/esm/useBoolean.js +14 -5
  130. package/esm/useBoolean.js.map +1 -0
  131. package/esm/useConfig.js +3 -1
  132. package/esm/useConfig.js.map +1 -0
  133. package/esm/useEventEmitter.js +4 -2
  134. package/esm/useEventEmitter.js.map +1 -0
  135. package/esm/useLazyQuery.js +6 -7
  136. package/esm/useLazyQuery.js.map +1 -0
  137. package/esm/useLocalStorage.js +30 -20
  138. package/esm/useLocalStorage.js.map +1 -0
  139. package/esm/useMediaQuery.js +11 -9
  140. package/esm/useMediaQuery.js.map +1 -0
  141. package/esm/useMutation.js +26 -37
  142. package/esm/useMutation.js.map +1 -0
  143. package/esm/useObserve.js +4 -4
  144. package/esm/useObserve.js.map +1 -0
  145. package/esm/useParamsCheck.js +8 -10
  146. package/esm/useParamsCheck.js.map +1 -0
  147. package/esm/usePoster.js +56 -45
  148. package/esm/usePoster.js.map +1 -0
  149. package/esm/usePreloadData.js +9 -5
  150. package/esm/usePreloadData.js.map +1 -0
  151. package/esm/usePrivateInfiniteQuery.js +15 -9
  152. package/esm/usePrivateInfiniteQuery.js.map +1 -0
  153. package/esm/usePrivateQuery.js +15 -8
  154. package/esm/usePrivateQuery.js.map +1 -0
  155. package/esm/useQuery.js +6 -5
  156. package/esm/useQuery.js.map +1 -0
  157. package/esm/useSessionStorage.js +28 -19
  158. package/esm/useSessionStorage.js.map +1 -0
  159. package/esm/useWS.js +15 -13
  160. package/esm/useWS.js.map +1 -0
  161. package/esm/useWsStatus.js +12 -12
  162. package/esm/useWsStatus.js.map +1 -0
  163. package/esm/utils/createGetter.js +8 -8
  164. package/esm/utils/createGetter.js.map +1 -0
  165. package/esm/utils/createOrder.d.ts +1 -0
  166. package/esm/utils/createOrder.d.ts.map +1 -1
  167. package/esm/utils/createOrder.js +59 -43
  168. package/esm/utils/createOrder.js.map +1 -0
  169. package/esm/utils/dev.js +6 -4
  170. package/esm/utils/dev.js.map +1 -0
  171. package/esm/utils/fetcher.js +3 -1
  172. package/esm/utils/fetcher.js.map +1 -0
  173. package/esm/utils/json.js +3 -2
  174. package/esm/utils/json.js.map +1 -0
  175. package/esm/utils/orderEntryHelper.js +92 -63
  176. package/esm/utils/orderEntryHelper.js.map +1 -0
  177. package/esm/utils/parseHolding.js +10 -6
  178. package/esm/utils/parseHolding.js.map +1 -0
  179. package/esm/utils/swr.js +114 -104
  180. package/esm/utils/swr.js.map +1 -0
  181. package/esm/version.d.ts +1 -1
  182. package/esm/version.js +4 -3
  183. package/esm/version.js.map +1 -0
  184. package/esm/walletConnectorContext.js +4 -2
  185. package/esm/walletConnectorContext.js.map +1 -0
  186. package/lib/configProvider.d.ts +7 -1
  187. package/lib/configProvider.d.ts.map +1 -1
  188. package/lib/configProvider.js +108 -56
  189. package/lib/configProvider.js.map +1 -0
  190. package/lib/dataProvider.js +50 -29
  191. package/lib/dataProvider.js.map +1 -0
  192. package/lib/index.d.ts +1 -0
  193. package/lib/index.d.ts.map +1 -1
  194. package/lib/index.js +191 -88
  195. package/lib/index.js.map +1 -0
  196. package/lib/middleware/signatureMiddleware.js +22 -15
  197. package/lib/middleware/signatureMiddleware.js.map +1 -0
  198. package/lib/orderly/orderbook.service.js +59 -33
  199. package/lib/orderly/orderbook.service.js.map +1 -0
  200. package/lib/orderly/orderlyHooks.d.ts +3 -0
  201. package/lib/orderly/orderlyHooks.d.ts.map +1 -1
  202. package/lib/orderly/orderlyHooks.js +124 -57
  203. package/lib/orderly/orderlyHooks.js.map +1 -0
  204. package/lib/orderly/useAccountInfo.js +14 -6
  205. package/lib/orderly/useAccountInfo.js.map +1 -0
  206. package/lib/orderly/useChain.js +30 -17
  207. package/lib/orderly/useChain.js.map +1 -0
  208. package/lib/orderly/useChains.d.ts +11 -12
  209. package/lib/orderly/useChains.d.ts.map +1 -1
  210. package/lib/orderly/useChains.js +100 -59
  211. package/lib/orderly/useChains.js.map +1 -0
  212. package/lib/orderly/useCollateral.d.ts +3 -4
  213. package/lib/orderly/useCollateral.d.ts.map +1 -1
  214. package/lib/orderly/useCollateral.js +81 -42
  215. package/lib/orderly/useCollateral.js.map +1 -0
  216. package/lib/orderly/useDeposit.js +154 -150
  217. package/lib/orderly/useDeposit.js.map +1 -0
  218. package/lib/orderly/useFundingRate.js +29 -22
  219. package/lib/orderly/useFundingRate.js.map +1 -0
  220. package/lib/orderly/useFundingRates.js +19 -11
  221. package/lib/orderly/useFundingRates.js.map +1 -0
  222. package/lib/orderly/useHoldingStream.js +39 -27
  223. package/lib/orderly/useHoldingStream.js.map +1 -0
  224. package/lib/orderly/useIndexPrice.js +24 -14
  225. package/lib/orderly/useIndexPrice.js.map +1 -0
  226. package/lib/orderly/useLeverage.js +27 -24
  227. package/lib/orderly/useLeverage.js.map +1 -0
  228. package/lib/orderly/useMarginRatio.js +49 -29
  229. package/lib/orderly/useMarginRatio.js.map +1 -0
  230. package/lib/orderly/useMarkPrice.js +26 -15
  231. package/lib/orderly/useMarkPrice.js.map +1 -0
  232. package/lib/orderly/useMarkPricesStream.d.ts +1 -1
  233. package/lib/orderly/useMarkPricesStream.d.ts.map +1 -1
  234. package/lib/orderly/useMarkPricesStream.js +26 -17
  235. package/lib/orderly/useMarkPricesStream.js.map +1 -0
  236. package/lib/orderly/useMarketTradeStream.js +47 -26
  237. package/lib/orderly/useMarketTradeStream.js.map +1 -0
  238. package/lib/orderly/useMarkets.js +172 -95
  239. package/lib/orderly/useMarkets.js.map +1 -0
  240. package/lib/orderly/useMarketsStream.js +44 -41
  241. package/lib/orderly/useMarketsStream.js.map +1 -0
  242. package/lib/orderly/useMaxQty.d.ts +6 -0
  243. package/lib/orderly/useMaxQty.d.ts.map +1 -1
  244. package/lib/orderly/useMaxQty.js +52 -43
  245. package/lib/orderly/useMaxQty.js.map +1 -0
  246. package/lib/orderly/useOpenInterest.js +24 -14
  247. package/lib/orderly/useOpenInterest.js.map +1 -0
  248. package/lib/orderly/useOrderEntry.js +238 -210
  249. package/lib/orderly/useOrderEntry.js.map +1 -0
  250. package/lib/orderly/useOrderStream.js +111 -84
  251. package/lib/orderly/useOrderStream.js.map +1 -0
  252. package/lib/orderly/useOrderbookStream.d.ts +2 -3
  253. package/lib/orderly/useOrderbookStream.d.ts.map +1 -1
  254. package/lib/orderly/useOrderbookStream.js +227 -148
  255. package/lib/orderly/useOrderbookStream.js.map +1 -0
  256. package/lib/orderly/usePositionStream.js +134 -100
  257. package/lib/orderly/usePositionStream.js.map +1 -0
  258. package/lib/orderly/usePrivateDataObserver.js +76 -63
  259. package/lib/orderly/usePrivateDataObserver.js.map +1 -0
  260. package/lib/orderly/useSettleSubscription.js +25 -15
  261. package/lib/orderly/useSettleSubscription.js.map +1 -0
  262. package/lib/orderly/useSymbolPriceRange.js +29 -23
  263. package/lib/orderly/useSymbolPriceRange.js.map +1 -0
  264. package/lib/orderly/useSymbolsInfo.js +23 -15
  265. package/lib/orderly/useSymbolsInfo.js.map +1 -0
  266. package/lib/orderly/useTickerStream.d.ts +5 -1
  267. package/lib/orderly/useTickerStream.d.ts.map +1 -1
  268. package/lib/orderly/useTickerStream.js +51 -48
  269. package/lib/orderly/useTickerStream.js.map +1 -0
  270. package/lib/orderly/useWalletSubscription.js +25 -15
  271. package/lib/orderly/useWalletSubscription.js.map +1 -0
  272. package/lib/orderly/useWithdraw.js +36 -22
  273. package/lib/orderly/useWithdraw.js.map +1 -0
  274. package/lib/orderlyContext.d.ts +8 -1
  275. package/lib/orderlyContext.d.ts.map +1 -1
  276. package/lib/orderlyContext.js +22 -6
  277. package/lib/orderlyContext.js.map +1 -0
  278. package/lib/services/dataCenter.js +15 -11
  279. package/lib/services/dataCenter.js.map +1 -0
  280. package/lib/services/painter/backgroundPaint.js +21 -18
  281. package/lib/services/painter/backgroundPaint.js.map +1 -0
  282. package/lib/services/painter/basePaint.js +14 -4
  283. package/lib/services/painter/basePaint.js.map +1 -0
  284. package/lib/services/painter/dataPaint.js +67 -58
  285. package/lib/services/painter/dataPaint.js.map +1 -0
  286. package/lib/services/painter/layout.config.js +25 -16
  287. package/lib/services/painter/layout.config.js.map +1 -0
  288. package/lib/services/painter/painter.js +27 -20
  289. package/lib/services/painter/painter.js.map +1 -0
  290. package/lib/services/painter/resource.js +15 -7
  291. package/lib/services/painter/resource.js.map +1 -0
  292. package/lib/statusProvider.js +31 -10
  293. package/lib/statusProvider.js.map +1 -0
  294. package/lib/unuse/apiPrefixMiddleware.js +30 -22
  295. package/lib/unuse/apiPrefixMiddleware.js.map +1 -0
  296. package/lib/unuse/fn.js +14 -5
  297. package/lib/unuse/fn.js.map +1 -0
  298. package/lib/unuse/useBalance.js +23 -13
  299. package/lib/unuse/useBalance.js.map +1 -0
  300. package/lib/unuse/useFetures.js +41 -28
  301. package/lib/unuse/useFetures.js.map +1 -0
  302. package/lib/unuse/useRunOnce.js +61 -11
  303. package/lib/unuse/useRunOnce.js.map +1 -0
  304. package/lib/unuse/useSyncEnd.js +17 -10
  305. package/lib/unuse/useSyncEnd.js.map +1 -0
  306. package/lib/unuse/useTokenInfo.js +20 -12
  307. package/lib/unuse/useTokenInfo.js.map +1 -0
  308. package/lib/unuse/useUnsettlementPnL.js +21 -11
  309. package/lib/unuse/useUnsettlementPnL.js.map +1 -0
  310. package/lib/useAccount.js +32 -29
  311. package/lib/useAccount.js.map +1 -0
  312. package/lib/useAccountInstance.js +27 -20
  313. package/lib/useAccountInstance.js.map +1 -0
  314. package/lib/useBoolean.js +25 -10
  315. package/lib/useBoolean.js.map +1 -0
  316. package/lib/useConfig.js +15 -7
  317. package/lib/useConfig.js.map +1 -0
  318. package/lib/useEventEmitter.js +23 -13
  319. package/lib/useEventEmitter.js.map +1 -0
  320. package/lib/useLazyQuery.js +25 -23
  321. package/lib/useLazyQuery.js.map +1 -0
  322. package/lib/useLocalStorage.js +44 -28
  323. package/lib/useLocalStorage.js.map +1 -0
  324. package/lib/useMediaQuery.js +22 -14
  325. package/lib/useMediaQuery.js.map +1 -0
  326. package/lib/useMutation.js +47 -52
  327. package/lib/useMutation.js.map +1 -0
  328. package/lib/useObserve.js +22 -8
  329. package/lib/useObserve.js.map +1 -0
  330. package/lib/useParamsCheck.js +18 -14
  331. package/lib/useParamsCheck.js.map +1 -0
  332. package/lib/usePoster.js +80 -74
  333. package/lib/usePoster.js.map +1 -0
  334. package/lib/usePreloadData.js +21 -11
  335. package/lib/usePreloadData.js.map +1 -0
  336. package/lib/usePrivateInfiniteQuery.js +36 -22
  337. package/lib/usePrivateInfiniteQuery.js.map +1 -0
  338. package/lib/usePrivateQuery.js +35 -25
  339. package/lib/usePrivateQuery.js.map +1 -0
  340. package/lib/useQuery.js +24 -20
  341. package/lib/useQuery.js.map +1 -0
  342. package/lib/useSessionStorage.js +41 -26
  343. package/lib/useSessionStorage.js.map +1 -0
  344. package/lib/useWS.js +42 -32
  345. package/lib/useWS.js.map +1 -0
  346. package/lib/useWsStatus.js +34 -20
  347. package/lib/useWsStatus.js.map +1 -0
  348. package/lib/utils/createGetter.js +19 -14
  349. package/lib/utils/createGetter.js.map +1 -0
  350. package/lib/utils/createOrder.d.ts +1 -0
  351. package/lib/utils/createOrder.d.ts.map +1 -1
  352. package/lib/utils/createOrder.js +133 -82
  353. package/lib/utils/createOrder.js.map +1 -0
  354. package/lib/utils/dev.js +13 -9
  355. package/lib/utils/dev.js.map +1 -0
  356. package/lib/utils/fetcher.js +13 -5
  357. package/lib/utils/fetcher.js.map +1 -0
  358. package/lib/utils/json.js +12 -5
  359. package/lib/utils/json.js.map +1 -0
  360. package/lib/utils/orderEntryHelper.js +125 -82
  361. package/lib/utils/orderEntryHelper.js.map +1 -0
  362. package/lib/utils/parseHolding.js +19 -9
  363. package/lib/utils/parseHolding.js.map +1 -0
  364. package/lib/utils/swr.js +134 -111
  365. package/lib/utils/swr.js.map +1 -0
  366. package/lib/version.d.ts +1 -1
  367. package/lib/version.js +13 -4
  368. package/lib/version.js.map +1 -0
  369. package/lib/walletConnectorContext.js +23 -7
  370. package/lib/walletConnectorContext.js.map +1 -0
  371. package/package.json +17 -9
@@ -1,23 +1,64 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.OrderFactory = exports.availableOrderTypes = exports.GeneralOrderCreator = exports.StopMarketOrderCreator = exports.StopLimitOrderCreator = exports.IOCOrderCreator = exports.FOKOrderCreator = exports.PostOnlyOrderCreator = exports.MarketOrderCreator = exports.LimitOrderCreator = exports.BaseOrderCreator = void 0;
4
- const types_1 = require("@orderly.network/types");
5
- const utils_1 = require("@orderly.network/utils");
6
- const perp_1 = require("@orderly.network/perp");
7
- const { maxPrice, minPrice, scropePrice } = perp_1.order;
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
+ BaseOrderCreator: function() {
13
+ return BaseOrderCreator;
14
+ },
15
+ FOKOrderCreator: function() {
16
+ return FOKOrderCreator;
17
+ },
18
+ GeneralOrderCreator: function() {
19
+ return GeneralOrderCreator;
20
+ },
21
+ IOCOrderCreator: function() {
22
+ return IOCOrderCreator;
23
+ },
24
+ LimitOrderCreator: function() {
25
+ return LimitOrderCreator;
26
+ },
27
+ MarketOrderCreator: function() {
28
+ return MarketOrderCreator;
29
+ },
30
+ OrderFactory: function() {
31
+ return OrderFactory;
32
+ },
33
+ PostOnlyOrderCreator: function() {
34
+ return PostOnlyOrderCreator;
35
+ },
36
+ StopLimitOrderCreator: function() {
37
+ return StopLimitOrderCreator;
38
+ },
39
+ StopMarketOrderCreator: function() {
40
+ return StopMarketOrderCreator;
41
+ },
42
+ availableOrderTypes: function() {
43
+ return availableOrderTypes;
44
+ },
45
+ checkNotional: function() {
46
+ return checkNotional;
47
+ }
48
+ });
49
+ const _types = require("@orderly.network/types");
50
+ const _utils = require("@orderly.network/utils");
51
+ const _perp = require("@orderly.network/perp");
52
+ const { maxPrice, minPrice, scropePrice } = _perp.order;
8
53
  class BaseOrderCreator {
9
54
  baseOrder(data) {
10
55
  const order = {
11
56
  symbol: data.symbol,
12
- order_type: data.order_type === types_1.OrderType.LIMIT
13
- ? !!data.order_type_ext
14
- ? data.order_type_ext
15
- : data.order_type
16
- : data.order_type,
57
+ order_type: data.order_type === _types.OrderType.LIMIT ? !!data.order_type_ext ? data.order_type_ext : data.order_type : data.order_type,
17
58
  side: data.side,
18
59
  reduce_only: data.reduce_only,
19
60
  order_quantity: data.order_quantity,
20
- total: data.total,
61
+ total: data.total
21
62
  };
22
63
  if (data.visible_quantity === 0) {
23
64
  order.visible_quantity = data.visible_quantity;
@@ -26,13 +67,15 @@ class BaseOrderCreator {
26
67
  }
27
68
  baseValidate(values, configs) {
28
69
  const errors = {};
29
- const { maxQty } = configs;
30
- let { order_quantity, total, order_price } = values;
70
+ const { maxQty, symbol } = configs;
71
+ // @ts-ignore
72
+ let { order_quantity, total, order_price, reduce_only } = values;
73
+ const { min_notional } = symbol;
31
74
  if (!order_quantity) {
32
75
  // calculate order_quantity from total
33
76
  if (total && order_price) {
34
77
  const { quote_dp } = configs.symbol;
35
- const totalNumber = new utils_1.Decimal(total);
78
+ const totalNumber = new _utils.Decimal(total);
36
79
  const qty = totalNumber.dividedBy(order_price).toFixed(quote_dp);
37
80
  order_quantity = qty;
38
81
  }
@@ -40,50 +83,54 @@ class BaseOrderCreator {
40
83
  if (!order_quantity) {
41
84
  errors.order_quantity = {
42
85
  type: "required",
43
- message: "quantity is required",
86
+ message: "quantity is required"
44
87
  };
45
- }
46
- else {
88
+ } else {
47
89
  // need to use MaxQty+base_max, base_min to compare
48
90
  const { base_min, quote_dp, base_dp } = configs.symbol;
49
- const qty = new utils_1.Decimal(order_quantity);
91
+ const qty = new _utils.Decimal(order_quantity);
50
92
  if (qty.lt(base_min)) {
51
93
  errors.order_quantity = {
52
94
  type: "min",
53
- message: `quantity must be greater than ${new utils_1.Decimal(base_min).todp(base_dp)}`,
95
+ message: `quantity must be greater than ${new _utils.Decimal(base_min).todp(base_dp)}`
54
96
  };
55
- // errors.order_quantity = `quantity must be greater than ${base_min}`;
56
- }
57
- else if (qty.gt(maxQty)) {
97
+ // errors.order_quantity = `quantity must be greater than ${base_min}`;
98
+ } else if (qty.gt(maxQty)) {
58
99
  errors.order_quantity = {
59
100
  type: "max",
60
- message: `quantity must be less than ${new utils_1.Decimal(maxQty).todp(base_dp)}`,
101
+ message: `quantity must be less than ${new _utils.Decimal(maxQty).todp(base_dp)}`
61
102
  };
62
103
  }
63
104
  }
64
105
  if (!!total) {
65
106
  const { quote_max, quote_min, quote_dp } = configs.symbol;
66
- const totalNumber = new utils_1.Decimal(total);
107
+ const totalNumber = new _utils.Decimal(total);
67
108
  if (totalNumber.lt(quote_min)) {
68
109
  errors.total = {
69
110
  type: "min",
70
- message: `Quantity must be at least ${new utils_1.Decimal(quote_min).todp(quote_dp)}`,
111
+ message: `Quantity must be at least ${new _utils.Decimal(quote_min).todp(quote_dp)}`
71
112
  };
72
- }
73
- else if (totalNumber.gt(quote_max)) {
113
+ } else if (totalNumber.gt(quote_max)) {
74
114
  errors.total = {
75
115
  type: "max",
76
- message: `Quantity should be less or equal than ${new utils_1.Decimal(quote_max).todp(quote_dp)}`,
116
+ message: `Quantity should be less or equal than ${new _utils.Decimal(quote_max).todp(quote_dp)}`
77
117
  };
78
118
  }
79
119
  }
120
+ const notionalHintStr = checkNotional(order_price, order_quantity, min_notional);
121
+ if (notionalHintStr !== undefined && reduce_only !== true) {
122
+ errors.total = {
123
+ type: "min",
124
+ message: notionalHintStr
125
+ };
126
+ }
80
127
  return Promise.resolve(errors);
81
128
  }
82
129
  fixOrderQuantity(order, config) {
83
130
  // if order_quantity is not set but total is set, calculate order_quantity from total
84
131
  if (!order.order_quantity && order.total && order.order_price) {
85
132
  const { base_dp } = config.symbol;
86
- const totalNumber = new utils_1.Decimal(order.total);
133
+ const totalNumber = new _utils.Decimal(order.total);
87
134
  const qty = totalNumber.div(order.order_price).toDecimalPlaces(base_dp);
88
135
  order.order_quantity = qty.toNumber();
89
136
  delete order.total;
@@ -91,12 +138,24 @@ class BaseOrderCreator {
91
138
  return order;
92
139
  }
93
140
  }
94
- exports.BaseOrderCreator = BaseOrderCreator;
141
+ function checkNotional(price, qty, minNotional) {
142
+ if (price !== undefined && qty !== undefined && minNotional !== undefined) {
143
+ try {
144
+ const calcNotional = new _utils.Decimal(price).mul(new _utils.Decimal(qty)).toNumber();
145
+ const notional = Number.parseFloat(`${minNotional}`);
146
+ const str = calcNotional < notional ? `The order value should be greater or equal to ${minNotional} USDC` : undefined;
147
+ return str;
148
+ } catch (e) {
149
+ return undefined;
150
+ }
151
+ }
152
+ return undefined;
153
+ }
95
154
  class LimitOrderCreator extends BaseOrderCreator {
96
155
  create(values, config) {
97
156
  const order = {
98
157
  ...this.baseOrder(values),
99
- order_price: values.order_price,
158
+ order_price: values.order_price
100
159
  };
101
160
  this.fixOrderQuantity(order, config);
102
161
  delete order['total'];
@@ -104,23 +163,22 @@ class LimitOrderCreator extends BaseOrderCreator {
104
163
  delete order['isStopOrder'];
105
164
  const { quote_dp } = config.symbol;
106
165
  if (values.order_price) {
107
- order["order_price"] = new utils_1.Decimal(Number.parseFloat(values.order_price.toString())).toFixed(quote_dp, utils_1.Decimal.ROUND_DOWN);
166
+ order["order_price"] = new _utils.Decimal(Number.parseFloat(values.order_price.toString())).toFixed(quote_dp, _utils.Decimal.ROUND_DOWN);
108
167
  }
109
168
  return order;
110
169
  }
111
170
  validate(values, config) {
112
- return this.baseValidate(values, config).then((errors) => {
171
+ return this.baseValidate(values, config).then((errors)=>{
113
172
  // const errors = this.baseValidate(values, config);
114
173
  // @ts-ignore
115
174
  const { order_price, side } = values;
116
175
  if (!order_price) {
117
176
  errors.order_price = {
118
177
  type: "required",
119
- message: "price is required",
178
+ message: "price is required"
120
179
  };
121
- }
122
- else {
123
- const price = new utils_1.Decimal(order_price);
180
+ } else {
181
+ const price = new _utils.Decimal(order_price);
124
182
  const { symbol } = config;
125
183
  const { price_range, price_scope } = symbol;
126
184
  const maxPriceNumber = maxPrice(config.markPrice, price_range);
@@ -128,7 +186,7 @@ class LimitOrderCreator extends BaseOrderCreator {
128
186
  const scropePriceNumbere = scropePrice(config.markPrice, price_scope, side);
129
187
  const priceRange = side === "BUY" ? {
130
188
  min: scropePriceNumbere,
131
- max: maxPriceNumber,
189
+ max: maxPriceNumber
132
190
  } : {
133
191
  min: minPriceNumber,
134
192
  max: scropePriceNumbere
@@ -138,13 +196,13 @@ class LimitOrderCreator extends BaseOrderCreator {
138
196
  if (price.gt(priceRange?.max)) {
139
197
  errors.order_price = {
140
198
  type: "max",
141
- message: `Price must be less than ${new utils_1.Decimal(priceRange.max).todp(symbol.quote_dp)}`,
199
+ message: `Price must be less than ${new _utils.Decimal(priceRange.max).todp(symbol.quote_dp)}`
142
200
  };
143
201
  }
144
202
  if (price.lt(priceRange?.min)) {
145
203
  errors.order_price = {
146
204
  type: "min",
147
- message: `Price must be greater than ${new utils_1.Decimal(priceRange.min).todp(symbol.quote_dp)}`,
205
+ message: `Price must be greater than ${new _utils.Decimal(priceRange.min).todp(symbol.quote_dp)}`
148
206
  };
149
207
  }
150
208
  }
@@ -152,7 +210,6 @@ class LimitOrderCreator extends BaseOrderCreator {
152
210
  });
153
211
  }
154
212
  }
155
- exports.LimitOrderCreator = LimitOrderCreator;
156
213
  class MarketOrderCreator extends BaseOrderCreator {
157
214
  create(values) {
158
215
  const data = this.baseOrder(values);
@@ -161,23 +218,19 @@ class MarketOrderCreator extends BaseOrderCreator {
161
218
  delete data['trigger_price'];
162
219
  delete data['isStopOrder'];
163
220
  return {
164
- ...data,
221
+ ...data
165
222
  };
166
223
  }
167
224
  validate(values, configs) {
168
225
  return this.baseValidate(values, configs);
169
226
  }
170
227
  }
171
- exports.MarketOrderCreator = MarketOrderCreator;
172
228
  class PostOnlyOrderCreator extends LimitOrderCreator {
173
229
  }
174
- exports.PostOnlyOrderCreator = PostOnlyOrderCreator;
175
230
  class FOKOrderCreator extends LimitOrderCreator {
176
231
  }
177
- exports.FOKOrderCreator = FOKOrderCreator;
178
232
  class IOCOrderCreator extends LimitOrderCreator {
179
233
  }
180
- exports.IOCOrderCreator = IOCOrderCreator;
181
234
  class StopLimitOrderCreator extends LimitOrderCreator {
182
235
  create(values, config) {
183
236
  const order = {
@@ -188,7 +241,7 @@ class StopLimitOrderCreator extends LimitOrderCreator {
188
241
  type: "LIMIT",
189
242
  quantity: values["order_quantity"],
190
243
  price: values["order_price"],
191
- trigger_price_type: "MARK_PRICE",
244
+ trigger_price_type: "MARK_PRICE"
192
245
  };
193
246
  this.fixOrderQuantity(order, config);
194
247
  delete order["order_quantity"];
@@ -200,32 +253,32 @@ class StopLimitOrderCreator extends LimitOrderCreator {
200
253
  delete order['total'];
201
254
  const { quote_dp } = config.symbol;
202
255
  if (values.order_price) {
203
- order["order_price"] = new utils_1.Decimal(Number.parseFloat(values.order_price.toString())).toFixed(quote_dp, utils_1.Decimal.ROUND_DOWN);
256
+ order["order_price"] = new _utils.Decimal(Number.parseFloat(values.order_price.toString())).toFixed(quote_dp, _utils.Decimal.ROUND_DOWN);
204
257
  }
205
258
  if (values.trigger_price) {
206
- order["trigger_price"] = new utils_1.Decimal(Number.parseFloat(values.trigger_price.toString())).toFixed(quote_dp, utils_1.Decimal.ROUND_DOWN);
259
+ order["trigger_price"] = new _utils.Decimal(Number.parseFloat(values.trigger_price.toString())).toFixed(quote_dp, _utils.Decimal.ROUND_DOWN);
207
260
  }
208
261
  return order;
209
262
  }
210
263
  validate(values, config) {
211
- return this.baseValidate(values, config).then((errors) => {
264
+ return this.baseValidate(values, config).then((errors)=>{
212
265
  // const errors = this.baseValidate(values, config);
213
266
  // @ts-ignore
214
267
  const { order_price, trigger_price, side } = values;
215
268
  if (!order_price) {
216
269
  errors.order_price = {
217
270
  type: "required",
218
- message: "price is required",
271
+ message: "price is required"
219
272
  };
220
273
  }
221
274
  if (!trigger_price) {
222
275
  errors.trigger_price = {
223
276
  type: "required",
224
- message: "Trigger price is required",
277
+ message: "Trigger price is required"
225
278
  };
226
279
  }
227
280
  if (trigger_price && order_price) {
228
- const price = new utils_1.Decimal(order_price);
281
+ const price = new _utils.Decimal(order_price);
229
282
  const { symbol } = config;
230
283
  const { price_range, price_scope } = symbol;
231
284
  const maxPriceNumber = maxPrice(trigger_price, price_range);
@@ -233,7 +286,7 @@ class StopLimitOrderCreator extends LimitOrderCreator {
233
286
  const scropePriceNumbere = scropePrice(trigger_price, price_scope, side);
234
287
  const priceRange = side === "BUY" ? {
235
288
  min: scropePriceNumbere,
236
- max: maxPriceNumber,
289
+ max: maxPriceNumber
237
290
  } : {
238
291
  min: minPriceNumber,
239
292
  max: scropePriceNumbere
@@ -243,13 +296,13 @@ class StopLimitOrderCreator extends LimitOrderCreator {
243
296
  if (price.gt(priceRange?.max)) {
244
297
  errors.order_price = {
245
298
  type: "max",
246
- message: `Price must be less than ${new utils_1.Decimal(priceRange.max).todp(symbol.quote_dp)}`,
299
+ message: `Price must be less than ${new _utils.Decimal(priceRange.max).todp(symbol.quote_dp)}`
247
300
  };
248
301
  }
249
302
  if (price.lt(priceRange?.min)) {
250
303
  errors.order_price = {
251
304
  type: "min",
252
- message: `Price must be greater than ${new utils_1.Decimal(priceRange.min).todp(symbol.quote_dp)}`,
305
+ message: `Price must be greater than ${new _utils.Decimal(priceRange.min).todp(symbol.quote_dp)}`
253
306
  };
254
307
  }
255
308
  }
@@ -257,7 +310,6 @@ class StopLimitOrderCreator extends LimitOrderCreator {
257
310
  });
258
311
  }
259
312
  }
260
- exports.StopLimitOrderCreator = StopLimitOrderCreator;
261
313
  class StopMarketOrderCreator extends LimitOrderCreator {
262
314
  create(values, _) {
263
315
  const result = {
@@ -268,7 +320,7 @@ class StopMarketOrderCreator extends LimitOrderCreator {
268
320
  type: "MARKET",
269
321
  quantity: values["order_quantity"],
270
322
  // price: values["order_price"],
271
- trigger_price_type: "MARK_PRICE",
323
+ trigger_price_type: "MARK_PRICE"
272
324
  };
273
325
  delete result["order_quantity"];
274
326
  delete result["order_price"];
@@ -277,71 +329,70 @@ class StopMarketOrderCreator extends LimitOrderCreator {
277
329
  // @ts-ignore
278
330
  delete result["isStopOrder"];
279
331
  delete result['total'];
280
- console.log("result is", result);
332
+ ;
281
333
  return result;
282
334
  }
283
335
  validate(values, config) {
284
- return this.baseValidate(values, config).then((errors) => {
336
+ return this.baseValidate(values, config).then((errors)=>{
285
337
  // const errors = this.baseValidate(values, config);
286
338
  // @ts-ignore
287
339
  const { order_price, trigger_price, side } = values;
288
340
  if (!trigger_price) {
289
341
  errors.trigger_price = {
290
342
  type: "required",
291
- message: "Trigger price is required",
343
+ message: "Trigger price is required"
292
344
  };
293
345
  }
294
346
  return errors;
295
347
  });
296
348
  }
297
349
  }
298
- exports.StopMarketOrderCreator = StopMarketOrderCreator;
299
350
  class GeneralOrderCreator extends BaseOrderCreator {
300
351
  create(data) {
301
352
  return {
302
353
  ...this.baseOrder(data),
303
354
  order_price: data.order_price,
304
- order_quantity: data.order_quantity,
355
+ order_quantity: data.order_quantity
305
356
  };
306
357
  }
307
358
  validate(values, configs) {
308
359
  return super.baseValidate(values, configs);
309
360
  }
310
361
  }
311
- exports.GeneralOrderCreator = GeneralOrderCreator;
312
- exports.availableOrderTypes = [
313
- types_1.OrderType.LIMIT,
314
- types_1.OrderType.MARKET,
315
- types_1.OrderType.IOC,
316
- types_1.OrderType.FOK,
317
- types_1.OrderType.POST_ONLY,
318
- types_1.OrderType.STOP_LIMIT,
319
- types_1.OrderType.STOP_MARKET,
362
+ const availableOrderTypes = [
363
+ _types.OrderType.LIMIT,
364
+ _types.OrderType.MARKET,
365
+ _types.OrderType.IOC,
366
+ _types.OrderType.FOK,
367
+ _types.OrderType.POST_ONLY,
368
+ _types.OrderType.STOP_LIMIT,
369
+ _types.OrderType.STOP_MARKET
320
370
  ];
321
371
  class OrderFactory {
322
372
  static create(type) {
323
- switch (type) {
324
- case types_1.OrderType.LIMIT:
373
+ switch(type){
374
+ case _types.OrderType.LIMIT:
325
375
  return new LimitOrderCreator();
326
- case types_1.OrderType.MARKET:
376
+ case _types.OrderType.MARKET:
327
377
  return new MarketOrderCreator();
328
378
  // case OrderType.ASK:
329
379
  // return new AskOrderCreator();
330
380
  // case OrderType.BID:
331
381
  // return new BidOrderCreator();
332
- case types_1.OrderType.IOC:
382
+ case _types.OrderType.IOC:
333
383
  return new IOCOrderCreator();
334
- case types_1.OrderType.FOK:
384
+ case _types.OrderType.FOK:
335
385
  return new FOKOrderCreator();
336
- case types_1.OrderType.POST_ONLY:
386
+ case _types.OrderType.POST_ONLY:
337
387
  return new PostOnlyOrderCreator();
338
- case types_1.OrderType.STOP_LIMIT:
388
+ case _types.OrderType.STOP_LIMIT:
339
389
  return new StopLimitOrderCreator();
340
- case types_1.OrderType.STOP_MARKET:
390
+ case _types.OrderType.STOP_MARKET:
341
391
  return new StopMarketOrderCreator();
342
392
  default:
343
393
  return new GeneralOrderCreator();
344
394
  }
345
395
  }
346
396
  }
347
- exports.OrderFactory = OrderFactory;
397
+
398
+ //# sourceMappingURL=createOrder.js.map
@@ -0,0 +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":";;;;;;;;;;;IA8BsBA,gBAAgB;eAAhBA;;IA6PTC,eAAe;eAAfA;;IAkJAC,mBAAmB;eAAnBA;;IAjJAC,eAAe;eAAfA;;IAxGAC,iBAAiB;eAAjBA;;IAgFAC,kBAAkB;eAAlBA;;IAmMAC,YAAY;eAAZA;;IA9KAC,oBAAoB;eAApBA;;IAKAC,qBAAqB;eAArBA;;IAmGAC,sBAAsB;eAAtBA;;IA4DAC,mBAAmB;eAAnBA;;IA7RGC,aAAa;eAAbA;;;uBAhKiC;uBACzB;sBACF;AA0BtB,MAAM,EAAEC,QAAQ,EAAEC,QAAQ,EAAEC,WAAW,EAAE,GAAGC,WAAK;AAE1C,MAAef;IAOpBgB,UAAUC,IAAiB,EAAe;QACxC,MAAMF,QAA8B;YAClCG,QAAQD,KAAKC,MAAM;YACnBC,YACEF,KAAKE,UAAU,KAAKC,gBAAS,CAACC,KAAK,GAC/B,CAAC,CAACJ,KAAKK,cAAc,GACnBL,KAAKK,cAAc,GACnBL,KAAKE,UAAU,GACjBF,KAAKE,UAAU;YACrBI,MAAMN,KAAKM,IAAI;YACfC,aAAaP,KAAKO,WAAW;YAC7BC,gBAAgBR,KAAKQ,cAAc;YACnCC,OAAOT,KAAKS,KAAK;QACnB;QAEA,IAAIT,KAAKU,gBAAgB,KAAK,GAAG;YAC/BZ,MAAMY,gBAAgB,GAAGV,KAAKU,gBAAgB;QAChD;QAEA,OAAOZ;IACT;IAEAa,aACEC,MAAuB,EACvBC,OAAwB,EACD;QACvB,MAAMC,SAEF,CAAC;QAEL,MAAM,EAAEC,MAAM,EAAEd,MAAM,EAAE,GAAGY;QAE3B,aAAa;QACb,IAAI,EAAEL,cAAc,EAAEC,KAAK,EAAEO,WAAW,EAAET,WAAW,EAAE,GAAGK;QAC1D,MAAM,EAAEK,YAAY,EAAE,GAAGhB;QAEzB,IAAI,CAACO,gBAAgB;YACnB,sCAAsC;YACtC,IAAIC,SAASO,aAAa;gBACxB,MAAM,EAAEE,QAAQ,EAAE,GAAGL,QAAQZ,MAAM;gBACnC,MAAMkB,cAAc,IAAIC,cAAO,CAACX;gBAChC,MAAMY,MAAMF,YAAYG,SAAS,CAACN,aAAaO,OAAO,CAACL;gBACvDV,iBAAiBa;YACnB;QACF;QAEA,IAAI,CAACb,gBAAgB;YACnBM,OAAON,cAAc,GAAG;gBACtBgB,MAAM;gBACNC,SAAS;YACX;QACF,OAAO;YACL,mDAAmD;YACnD,MAAM,EAAEC,QAAQ,EAAER,QAAQ,EAAES,OAAO,EAAE,GAAGd,QAAQZ,MAAM;YACtD,MAAMoB,MAAM,IAAID,cAAO,CAACZ;YACxB,IAAIa,IAAIO,EAAE,CAACF,WAAW;gBACpBZ,OAAON,cAAc,GAAG;oBACtBgB,MAAM;oBACNC,SAAS,CAAC,8BAA8B,EAAE,IAAIL,cAAO,CAACM,UAAUG,IAAI,CAClEF,SACA,CAAC;gBACL;YACA,uEAAuE;YACzE,OAAO,IAAIN,IAAIS,EAAE,CAACf,SAAS;gBACzBD,OAAON,cAAc,GAAG;oBACtBgB,MAAM;oBACNC,SAAS,CAAC,2BAA2B,EAAE,IAAIL,cAAO,CAACL,QAAQc,IAAI,CAC7DF,SACA,CAAC;gBACL;YACF;QACF;QAEA,IAAI,CAAC,CAAClB,OAAO;YACX,MAAM,EAAEsB,SAAS,EAAEC,SAAS,EAAEd,QAAQ,EAAE,GAAGL,QAAQZ,MAAM;YACzD,MAAMkB,cAAc,IAAIC,cAAO,CAACX;YAChC,IAAIU,YAAYS,EAAE,CAACI,YAAY;gBAC7BlB,OAAOL,KAAK,GAAG;oBACbe,MAAM;oBACNC,SAAS,CAAC,0BAA0B,EAAE,IAAIL,cAAO,CAACY,WAAWH,IAAI,CAC/DX,UACA,CAAC;gBACL;YACF,OAAO,IAAIC,YAAYW,EAAE,CAACC,YAAY;gBACpCjB,OAAOL,KAAK,GAAG;oBACbe,MAAM;oBACNC,SAAS,CAAC,sCAAsC,EAAE,IAAIL,cAAO,CAC3DW,WACAF,IAAI,CAACX,UAAU,CAAC;gBACpB;YACF;QACF;QAEA,MAAMe,kBAAkBvC,cAAcsB,aAAaR,gBAAgBS;QAEnE,IAAIgB,oBAAoBC,aAAa3B,gBAAgB,MAAM;YACzDO,OAAOL,KAAK,GAAG;gBACbe,MAAM;gBACNC,SAASQ;YACX;QACF;QAEA,OAAOE,QAAQC,OAAO,CAACtB;IACzB;IAEAuB,iBACEvC,KAA2B,EAC3BwC,MAAuB,EACV;QACb,qFAAqF;QACrF,IAAI,CAACxC,MAAMU,cAAc,IAAIV,MAAMW,KAAK,IAAIX,MAAMkB,WAAW,EAAE;YAC7D,MAAM,EAAEW,OAAO,EAAE,GAAGW,OAAOrC,MAAM;YACjC,MAAMkB,cAAc,IAAIC,cAAO,CAACtB,MAAMW,KAAK;YAC3C,MAAMY,MAAMF,YAAYoB,GAAG,CAACzC,MAAMkB,WAAW,EAAEwB,eAAe,CAACb;YAC/D7B,MAAMU,cAAc,GAAGa,IAAIoB,QAAQ;YAEnC,OAAO3C,MAAMW,KAAK;QACpB;QAEA,OAAOX;IACT;AACF;AAEO,SAASJ,cAAcgD,KAAuB,EAAErB,GAAqB,EAAEsB,WAAoB;IAIhG,IAAID,UAAUR,aAAab,QAAQa,aAAaS,gBAAgBT,WAAW;QAEzE,IAAI;YACF,MAAMU,eAAe,IAAIxB,cAAO,CAACsB,OAAOG,GAAG,CAAC,IAAIzB,cAAO,CAACC,MAAMoB,QAAQ;YACtE,MAAMK,WAAWC,OAAOC,UAAU,CAAC,CAAC,EAAEL,YAAY,CAAC;YAEnD,MAAMM,MAAML,eAAeE,WAAW,CAAC,8CAA8C,EAAEH,YAAY,KAAK,CAAC,GAAGT;YAC5G,OAAOe;QACT,EAAE,OAAOC,GAAG;YACV,OAAOhB;QACT;IACF;IAEA,OAAOA;AACT;AAEO,MAAM/C,0BAA0BJ;IACrCoE,OAAOvC,MAAmB,EAAE0B,MAAuB,EAAe;QAChE,MAAMxC,QAAQ;YACZ,GAAG,IAAI,CAACC,SAAS,CAACa,OAAO;YACzBI,aAAaJ,OAAOI,WAAW;QACjC;QAEA,IAAI,CAACqB,gBAAgB,CAACvC,OAAOwC;QAE7B,OAAOxC,KAAK,CAAC,QAAQ;QACrB,OAAOA,KAAK,CAAC,gBAAgB;QAC7B,OAAOA,KAAK,CAAC,cAAc;QAE3B,MAAM,EAAEoB,QAAQ,EAAE,GAAGoB,OAAOrC,MAAM;QAClC,IAAIW,OAAOI,WAAW,EAAE;YACtBlB,KAAK,CAAC,cAAc,GAAG,IAAIsB,cAAO,CAAC2B,OAAOC,UAAU,CAACpC,OAAOI,WAAW,CAACoC,QAAQ,KAAK7B,OAAO,CAACL,UAAUE,cAAO,CAACiC,UAAU;QAC3H;QAEA,OAAOvD;IACT;IACAwD,SACE1C,MAAuB,EACvB0B,MAAuB,EACA;QACvB,OAAO,IAAI,CAAC3B,YAAY,CAACC,QAAQ0B,QAAQiB,IAAI,CAAC,CAACzC;YAC7C,oDAAoD;YACpD,aAAa;YACb,MAAM,EAAEE,WAAW,EAAEV,IAAI,EAAE,GAAGM;YAE9B,IAAI,CAACI,aAAa;gBAChBF,OAAOE,WAAW,GAAG;oBACnBQ,MAAM;oBACNC,SAAS;gBACX;YACF,OAAO;gBACL,MAAMiB,QAAQ,IAAItB,cAAO,CAACJ;gBAC1B,MAAM,EAAEf,MAAM,EAAE,GAAGqC;gBACnB,MAAM,EAAEkB,WAAW,EAAEC,WAAW,EAAE,GAAGxD;gBACrC,MAAMyD,iBAAiB/D,SAAS2C,OAAOqB,SAAS,EAAEH;gBAClD,MAAMI,iBAAiBhE,SAAS0C,OAAOqB,SAAS,EAAEH;gBAClD,MAAMK,qBAAqBhE,YACzByC,OAAOqB,SAAS,EAChBF,aACAnD;gBAGF,MAAMwD,aAAaxD,SAAS,QAAQ;oBAClCyD,KAAKF;oBACLG,KAAKN;gBACP,IAAI;oBACFK,KAAKH;oBACLI,KAAKH;gBACP;gBAEA,2CAA2C;gBAC3C,4CAA4C;gBAC5C,IAAInB,MAAMZ,EAAE,CAACgC,YAAYE,MAAM;oBAC7BlD,OAAOE,WAAW,GAAG;wBACnBQ,MAAM;wBACNC,SAAS,CAAC,wBAAwB,EAAE,IAAIL,cAAO,CAC7C0C,WAAWE,GAAG,EACdnC,IAAI,CAAC5B,OAAOiB,QAAQ,EAAE,CAAC;oBAC3B;gBACF;gBACA,IAAIwB,MAAMd,EAAE,CAACkC,YAAYC,MAAM;oBAC7BjD,OAAOE,WAAW,GAAG;wBACnBQ,MAAM;wBACNC,SAAS,CAAC,2BAA2B,EAAE,IAAIL,cAAO,CAChD0C,WAAWC,GAAG,EACdlC,IAAI,CAAC5B,OAAOiB,QAAQ,EAAE,CAAC;oBAC3B;gBACF;YAEF;YAEA,OAAOJ;QACT;IACF;AACF;AAEO,MAAM1B,2BAA2BL;IACtCoE,OAAOvC,MAAmB,EAAe;QACvC,MAAMZ,OAAO,IAAI,CAACD,SAAS,CAACa;QAE5B,OAAOZ,IAAI,CAAC,cAAc;QAC1B,OAAOA,IAAI,CAAC,QAAQ;QACpB,OAAOA,IAAI,CAAC,gBAAgB;QAC5B,OAAOA,IAAI,CAAC,cAAc;QAE1B,OAAO;YACL,GAAGA,IAAI;QACT;IACF;IACAsD,SACE1C,MAAuB,EACvBC,OAAwB,EACD;QACvB,OAAO,IAAI,CAACF,YAAY,CAACC,QAAQC;IACnC;AACF;AAEO,MAAMvB,6BAA6BH;AAAoB;AAEvD,MAAMH,wBAAwBG;AAAoB;AAClD,MAAMD,wBAAwBC;AAAoB;AAElD,MAAMI,8BAA8BJ;IACzCgE,OAAOvC,MAAmB,EAAE0B,MAAuB,EAAe;QAChE,MAAMxC,QAAQ;YACZ,GAAG,IAAI,CAACC,SAAS,CAACa,OAAO;YACzBI,aAAaJ,OAAOI,WAAW;YAC/BiD,eAAerD,OAAOqD,aAAa;YACnCC,WAAW;YACX1C,MAAM;YACN2C,UAAUvD,MAAM,CAAC,iBAAiB;YAClC8B,OAAO9B,MAAM,CAAC,cAAc;YAC5BwD,oBAAoB;QACtB;QACA,IAAI,CAAC/B,gBAAgB,CAACvC,OAAOwC;QAC7B,OAAOxC,KAAK,CAAC,iBAAiB;QAC9B,OAAOA,KAAK,CAAC,cAAc;QAC3B,aAAa;QACb,OAAOA,KAAK,CAAC,aAAa;QAC1B,aAAa;QACb,OAAOA,KAAK,CAAC,cAAc;QAC3B,OAAOA,KAAK,CAAC,QAAQ;QAErB,MAAM,EAAEoB,QAAQ,EAAE,GAAGoB,OAAOrC,MAAM;QAClC,IAAIW,OAAOI,WAAW,EAAE;YACtBlB,KAAK,CAAC,cAAc,GAAG,IAAIsB,cAAO,CAAC2B,OAAOC,UAAU,CAACpC,OAAOI,WAAW,CAACoC,QAAQ,KAAK7B,OAAO,CAACL,UAAUE,cAAO,CAACiC,UAAU;QAC3H;QAEA,IAAIzC,OAAOqD,aAAa,EAAE;YACxBnE,KAAK,CAAC,gBAAgB,GAAG,IAAIsB,cAAO,CAAC2B,OAAOC,UAAU,CAACpC,OAAOqD,aAAa,CAACb,QAAQ,KAAK7B,OAAO,CAACL,UAAUE,cAAO,CAACiC,UAAU;QAC/H;QAEA,OAAOvD;IACT;IACAwD,SACE1C,MAAuB,EACvB0B,MAAuB,EACA;QACvB,OAAO,IAAI,CAAC3B,YAAY,CAACC,QAAQ0B,QAAQiB,IAAI,CAAC,CAACzC;YAC7C,oDAAoD;YACpD,aAAa;YACb,MAAM,EAAEE,WAAW,EAAEiD,aAAa,EAAE3D,IAAI,EAAE,GAAGM;YAE7C,IAAI,CAACI,aAAa;gBAChBF,OAAOE,WAAW,GAAG;oBACnBQ,MAAM;oBACNC,SAAS;gBACX;YACF;YAEA,IAAI,CAACwC,eAAe;gBAClBnD,OAAOmD,aAAa,GAAG;oBACrBzC,MAAM;oBACNC,SAAS;gBACX;YACF;YAEA,IAAIwC,iBAAiBjD,aAAa;gBAChC,MAAM0B,QAAQ,IAAItB,cAAO,CAACJ;gBAC1B,MAAM,EAAEf,MAAM,EAAE,GAAGqC;gBACnB,MAAM,EAAEkB,WAAW,EAAEC,WAAW,EAAE,GAAGxD;gBACrC,MAAMyD,iBAAiB/D,SAASsE,eAAeT;gBAC/C,MAAMI,iBAAiBhE,SAASqE,eAAeT;gBAC/C,MAAMK,qBAAqBhE,YACzBoE,eACAR,aACAnD;gBAGF,MAAMwD,aAAaxD,SAAS,QAAQ;oBAClCyD,KAAKF;oBACLG,KAAKN;gBACP,IAAI;oBACFK,KAAKH;oBACLI,KAAKH;gBACP;gBAEA,2CAA2C;gBAC3C,4CAA4C;gBAC5C,IAAInB,MAAMZ,EAAE,CAACgC,YAAYE,MAAM;oBAC7BlD,OAAOE,WAAW,GAAG;wBACnBQ,MAAM;wBACNC,SAAS,CAAC,wBAAwB,EAAE,IAAIL,cAAO,CAC7C0C,WAAWE,GAAG,EACdnC,IAAI,CAAC5B,OAAOiB,QAAQ,EAAE,CAAC;oBAC3B;gBACF;gBACA,IAAIwB,MAAMd,EAAE,CAACkC,YAAYC,MAAM;oBAC7BjD,OAAOE,WAAW,GAAG;wBACnBQ,MAAM;wBACNC,SAAS,CAAC,2BAA2B,EAAE,IAAIL,cAAO,CAChD0C,WAAWC,GAAG,EACdlC,IAAI,CAAC5B,OAAOiB,QAAQ,EAAE,CAAC;oBAC3B;gBACF;YACF;YAEA,OAAOJ;QACT;IACF;AACF;AACO,MAAMtB,+BAA+BL;IAC1CgE,OAAOvC,MAAmB,EAAEyD,CAAkB,EAAe;QAC3D,MAAMC,SAAS;YACb,GAAG,IAAI,CAACvE,SAAS,CAACa,OAAO;YACzB,mCAAmC;YACnCqD,eAAerD,OAAOqD,aAAa;YACnCC,WAAW;YACX1C,MAAM;YACN2C,UAAUvD,MAAM,CAAC,iBAAiB;YAClC,gCAAgC;YAChCwD,oBAAoB;QACtB;QACA,OAAOE,MAAM,CAAC,iBAAiB;QAC/B,OAAOA,MAAM,CAAC,cAAc;QAC5B,aAAa;QACb,OAAOA,MAAM,CAAC,aAAa;QAC3B,aAAa;QACb,OAAOA,MAAM,CAAC,cAAc;QAC5B,OAAOA,MAAM,CAAC,QAAQ;;QAGtB,OAAOA;IACT;IACAhB,SACE1C,MAAuB,EACvB0B,MAAuB,EACA;QACvB,OAAO,IAAI,CAAC3B,YAAY,CAACC,QAAQ0B,QAAQiB,IAAI,CAAC,CAACzC;YAC7C,oDAAoD;YACpD,aAAa;YACb,MAAM,EAAEE,WAAW,EAAEiD,aAAa,EAAE3D,IAAI,EAAE,GAAGM;YAE7C,IAAI,CAACqD,eAAe;gBAClBnD,OAAOmD,aAAa,GAAG;oBACrBzC,MAAM;oBACNC,SAAS;gBACX;YACF;YAEA,OAAOX;QACT;IACF;AACF;AAEO,MAAM7B,4BAA4BF;IACvCoE,OAAOnD,IAAiB,EAAe;QACrC,OAAO;YACL,GAAG,IAAI,CAACD,SAAS,CAACC,KAAK;YACvBgB,aAAahB,KAAKgB,WAAW;YAC7BR,gBAAgBR,KAAKQ,cAAc;QACrC;IACF;IACA8C,SACE1C,MAAuB,EACvBC,OAAwB,EACD;QACvB,OAAO,KAAK,CAACF,aAAaC,QAAQC;IACpC;AACF;AAEO,MAAMpB,sBAAsB;IACjCU,gBAAS,CAACC,KAAK;IACfD,gBAAS,CAACoE,MAAM;IAChBpE,gBAAS,CAACqE,GAAG;IACbrE,gBAAS,CAACsE,GAAG;IACbtE,gBAAS,CAACuE,SAAS;IACnBvE,gBAAS,CAACwE,UAAU;IACpBxE,gBAAS,CAACyE,WAAW;CACtB;AAEM,MAAMvF;IACX,OAAO8D,OAAO3B,IAAe,EAAuB;QAClD,OAAQA;YACN,KAAKrB,gBAAS,CAACC,KAAK;gBAClB,OAAO,IAAIjB;YACb,KAAKgB,gBAAS,CAACoE,MAAM;gBACnB,OAAO,IAAInF;YACb,wBAAwB;YACxB,oCAAoC;YACpC,wBAAwB;YACxB,oCAAoC;YACpC,KAAKe,gBAAS,CAACqE,GAAG;gBAChB,OAAO,IAAItF;YACb,KAAKiB,gBAAS,CAACsE,GAAG;gBAChB,OAAO,IAAIzF;YACb,KAAKmB,gBAAS,CAACuE,SAAS;gBACtB,OAAO,IAAIpF;YAEb,KAAKa,gBAAS,CAACwE,UAAU;gBACvB,OAAO,IAAIpF;YACb,KAAKY,gBAAS,CAACyE,WAAW;gBACxB,OAAO,IAAIpF;YAEb;gBACE,OAAO,IAAIP;QACf;IACF;AACF"}
package/lib/utils/dev.js CHANGED
@@ -1,17 +1,19 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const core_1 = require("@orderly.network/core");
4
- const utils_1 = require("@orderly.network/utils");
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ const _core = require("@orderly.network/core");
6
+ const _utils = require("@orderly.network/utils");
5
7
  const __ORDERLY__DEBUGER_TAG = "__ORDERLY__DEBUGER";
6
8
  function debugPrint(msg, tag) {
7
9
  tag = `${__ORDERLY__DEBUGER_TAG}:${tag} `;
8
- if (!(0, utils_1.getGlobalObject)().__ORDERLY__DEBUGER) {
9
- console.log("${tag}${msg}");
10
- // console.info(
11
- // "You can add `DebugPrinter` component to see the data in your UI"
12
- // );
10
+ if (!(0, _utils.getGlobalObject)().__ORDERLY__DEBUGER) {
11
+ ;
12
+ // console.info(
13
+ // "You can add `DebugPrinter` component to see the data in your UI"
14
+ // );
13
15
  }
14
- let ee = core_1.SimpleDI.get("EE");
16
+ let ee = _core.SimpleDI.get("EE");
15
17
  if (ee && msg) {
16
18
  ee.emit("print:data", msg);
17
19
  }
@@ -19,3 +21,5 @@ function debugPrint(msg, tag) {
19
21
  if (typeof window !== "undefined") {
20
22
  window.debugPrint = debugPrint;
21
23
  }
24
+
25
+ //# sourceMappingURL=dev.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/utils/dev.ts"],"sourcesContent":["import { EventEmitter, SimpleDI } from \"@orderly.network/core\";\nimport { getGlobalObject } from \"@orderly.network/utils\";\n\nconst __ORDERLY__DEBUGER_TAG = \"__ORDERLY__DEBUGER\";\n\nfunction debugPrint(msg: any): void;\nfunction debugPrint(msg: any, tag?: string) {\n tag = `${__ORDERLY__DEBUGER_TAG}:${tag} `;\n if (!(getGlobalObject() as any).__ORDERLY__DEBUGER) {\n console.log(\"${tag}${msg}\");\n // console.info(\n // \"You can add `DebugPrinter` component to see the data in your UI\"\n // );\n }\n\n let ee = SimpleDI.get<EventEmitter>(\"EE\");\n\n if (ee && msg) {\n ee.emit(\"print:data\", msg);\n }\n}\n\nif (typeof window !== \"undefined\") {\n (window as any).debugPrint = debugPrint;\n}\n"],"names":["__ORDERLY__DEBUGER_TAG","debugPrint","msg","tag","getGlobalObject","__ORDERLY__DEBUGER","ee","SimpleDI","get","emit","window"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;","mappings":";;;;sBAAuC;uBACP;AAEhC,MAAMA,yBAAyB;AAG/B,SAASC,WAAWC,GAAQ,EAAEC,GAAY;IACxCA,MAAM,CAAC,EAAEH,uBAAuB,CAAC,EAAEG,IAAI,CAAC,CAAC;IACzC,IAAI,CAAC,AAACC,IAAAA,sBAAe,IAAWC,kBAAkB,EAAE;;IAElD,gBAAgB;IAChB,sEAAsE;IACtE,KAAK;IACP;IAEA,IAAIC,KAAKC,cAAQ,CAACC,GAAG,CAAe;IAEpC,IAAIF,MAAMJ,KAAK;QACbI,GAAGG,IAAI,CAAC,cAAcP;IACxB;AACF;AAEA,IAAI,OAAOQ,WAAW,aAAa;IAChCA,OAAeT,UAAU,GAAGA;AAC/B"}
@@ -1,6 +1,14 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.fetcher = void 0;
4
- const net_1 = require("@orderly.network/net");
5
- const fetcher = (url, init = {}, queryOptions) => (0, net_1.get)(url, init, queryOptions?.formatter);
6
- exports.fetcher = fetcher;
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "fetcher", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return fetcher;
9
+ }
10
+ });
11
+ const _net = require("@orderly.network/net");
12
+ const fetcher = (url, init = {}, queryOptions)=>(0, _net.get)(url, init, queryOptions?.formatter);
13
+
14
+ //# sourceMappingURL=fetcher.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/utils/fetcher.ts"],"sourcesContent":["import { get } from \"@orderly.network/net\";\nimport { type SWRConfiguration } from \"swr\";\n\nexport const fetcher = (\n url: string,\n init: RequestInit = {},\n queryOptions: useQueryOptions<any>\n) => get(url, init, queryOptions?.formatter);\n\nexport type useQueryOptions<T> = SWRConfiguration & {\n formatter?: (data: any) => T;\n};\n"],"names":["fetcher","url","init","queryOptions","get","formatter"],"rangeMappings":";;;;;;;;;;;","mappings":";;;;+BAGaA;;;eAAAA;;;qBAHO;AAGb,MAAMA,UAAU,CACrBC,KACAC,OAAoB,CAAC,CAAC,EACtBC,eACGC,IAAAA,QAAG,EAACH,KAAKC,MAAMC,cAAcE"}
package/lib/utils/json.js CHANGED
@@ -1,12 +1,19 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.parseJSON = void 0;
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "parseJSON", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return parseJSON;
9
+ }
10
+ });
4
11
  function parseJSON(value) {
5
12
  try {
6
13
  return value === "undefined" ? undefined : JSON.parse(value ?? "");
7
- }
8
- catch {
14
+ } catch {
9
15
  return undefined;
10
16
  }
11
17
  }
12
- exports.parseJSON = parseJSON;
18
+
19
+ //# sourceMappingURL=json.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/utils/json.ts"],"sourcesContent":["export function parseJSON<T>(value: string | null): T | undefined {\n try {\n return value === \"undefined\" ? undefined : JSON.parse(value ?? \"\");\n } catch {\n return undefined;\n }\n}\n"],"names":["parseJSON","value","undefined","JSON","parse"],"rangeMappings":";;;;;;;;;;;;;;;;","mappings":";;;;+BAAgBA;;;eAAAA;;;AAAT,SAASA,UAAaC,KAAoB;IAC/C,IAAI;QACF,OAAOA,UAAU,cAAcC,YAAYC,KAAKC,KAAK,CAACH,SAAS;IACjE,EAAE,OAAM;QACN,OAAOC;IACT;AACF"}