@orderly.network/hooks 1.4.0 → 1.4.3

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 (149) hide show
  1. package/esm/index.d.ts +1 -0
  2. package/esm/index.d.ts.map +1 -1
  3. package/esm/index.js +1 -0
  4. package/esm/index.js.map +1 -1
  5. package/esm/orderly/useAccountInfo.d.ts +1 -1
  6. package/esm/orderly/useAccountInfo.d.ts.map +1 -1
  7. package/esm/orderly/useIndexPrice.d.ts +1 -1
  8. package/esm/orderly/useIndexPrice.d.ts.map +1 -1
  9. package/esm/orderly/useMarkPricesStream.d.ts +1 -1
  10. package/esm/orderly/useMarkPricesStream.d.ts.map +1 -1
  11. package/esm/orderly/useOpenInterest.d.ts +1 -1
  12. package/esm/orderly/useOpenInterest.d.ts.map +1 -1
  13. package/esm/orderly/useOrderStream/useOrderStream.d.ts +1 -1
  14. package/esm/orderly/usePositionStream/usePositionStream.d.ts +1 -1
  15. package/esm/orderly/useSettleSubscription.d.ts +1 -1
  16. package/esm/orderly/useSettleSubscription.d.ts.map +1 -1
  17. package/esm/orderly/useTakeProfitAndStopLoss/index.d.ts +4 -4
  18. package/esm/orderly/useTakeProfitAndStopLoss/useTPSL.d.ts +4 -4
  19. package/esm/orderly/useTakeProfitAndStopLoss/useTPSL.d.ts.map +1 -1
  20. package/esm/orderly/useTakeProfitAndStopLoss/useTPSL.js.map +1 -1
  21. package/esm/orderly/useWalletSubscription.d.ts +1 -1
  22. package/esm/orderly/useWalletSubscription.d.ts.map +1 -1
  23. package/esm/referral/api.d.ts +87 -0
  24. package/esm/referral/api.d.ts.map +1 -0
  25. package/esm/referral/api.js +3 -0
  26. package/esm/referral/api.js.map +1 -0
  27. package/esm/referral/format.d.ts +2 -0
  28. package/esm/referral/format.d.ts.map +1 -0
  29. package/esm/referral/format.js +8 -0
  30. package/esm/referral/format.js.map +1 -0
  31. package/esm/referral/index.d.ts +9 -0
  32. package/esm/referral/index.d.ts.map +1 -0
  33. package/esm/referral/index.js +10 -0
  34. package/esm/referral/index.js.map +1 -0
  35. package/esm/referral/swr.d.ts +7 -0
  36. package/esm/referral/swr.d.ts.map +1 -0
  37. package/esm/referral/swr.js +24 -0
  38. package/esm/referral/swr.js.map +1 -0
  39. package/esm/referral/useCommission.d.ts +4 -0
  40. package/esm/referral/useCommission.d.ts.map +1 -0
  41. package/esm/referral/useCommission.js +59 -0
  42. package/esm/referral/useCommission.js.map +1 -0
  43. package/esm/referral/useDaily.d.ts +9 -0
  44. package/esm/referral/useDaily.d.ts.map +1 -0
  45. package/esm/referral/useDaily.js +19 -0
  46. package/esm/referral/useDaily.js.map +1 -0
  47. package/esm/referral/useDistribution.d.ts +9 -0
  48. package/esm/referral/useDistribution.d.ts.map +1 -0
  49. package/esm/referral/useDistribution.js +53 -0
  50. package/esm/referral/useDistribution.js.map +1 -0
  51. package/esm/referral/useRefereeHistory.d.ts +9 -0
  52. package/esm/referral/useRefereeHistory.d.ts.map +1 -0
  53. package/esm/referral/useRefereeHistory.js +47 -0
  54. package/esm/referral/useRefereeHistory.js.map +1 -0
  55. package/esm/referral/useRefereeInfo.d.ts +9 -0
  56. package/esm/referral/useRefereeInfo.d.ts.map +1 -0
  57. package/esm/referral/useRefereeInfo.js +47 -0
  58. package/esm/referral/useRefereeInfo.js.map +1 -0
  59. package/esm/referral/useRefereeRebateSummary.d.ts +12 -0
  60. package/esm/referral/useRefereeRebateSummary.d.ts.map +1 -0
  61. package/esm/referral/useRefereeRebateSummary.js +31 -0
  62. package/esm/referral/useRefereeRebateSummary.js.map +1 -0
  63. package/esm/referral/useReferralRebateSummary.d.ts +9 -0
  64. package/esm/referral/useReferralRebateSummary.d.ts.map +1 -0
  65. package/esm/referral/useReferralRebateSummary.js +47 -0
  66. package/esm/referral/useReferralRebateSummary.js.map +1 -0
  67. package/esm/services/orderCreator/baseCreator.d.ts.map +1 -1
  68. package/esm/services/orderCreator/baseCreator.js +5 -3
  69. package/esm/services/orderCreator/baseCreator.js.map +1 -1
  70. package/esm/usePrivateInfiniteQuery.d.ts +2 -2
  71. package/esm/usePrivateInfiniteQuery.d.ts.map +1 -1
  72. package/esm/version.d.ts +1 -1
  73. package/esm/version.js +2 -2
  74. package/esm/version.js.map +1 -1
  75. package/lib/index.d.ts +1 -0
  76. package/lib/index.d.ts.map +1 -1
  77. package/lib/index.js +1 -0
  78. package/lib/index.js.map +1 -1
  79. package/lib/orderly/useAccountInfo.d.ts +1 -1
  80. package/lib/orderly/useAccountInfo.d.ts.map +1 -1
  81. package/lib/orderly/useIndexPrice.d.ts +1 -1
  82. package/lib/orderly/useIndexPrice.d.ts.map +1 -1
  83. package/lib/orderly/useMarkPricesStream.d.ts +1 -1
  84. package/lib/orderly/useMarkPricesStream.d.ts.map +1 -1
  85. package/lib/orderly/useOpenInterest.d.ts +1 -1
  86. package/lib/orderly/useOpenInterest.d.ts.map +1 -1
  87. package/lib/orderly/useOrderStream/useOrderStream.d.ts +1 -1
  88. package/lib/orderly/usePositionStream/usePositionStream.d.ts +1 -1
  89. package/lib/orderly/useSettleSubscription.d.ts +1 -1
  90. package/lib/orderly/useSettleSubscription.d.ts.map +1 -1
  91. package/lib/orderly/useTakeProfitAndStopLoss/index.d.ts +4 -4
  92. package/lib/orderly/useTakeProfitAndStopLoss/useTPSL.d.ts +4 -4
  93. package/lib/orderly/useTakeProfitAndStopLoss/useTPSL.d.ts.map +1 -1
  94. package/lib/orderly/useTakeProfitAndStopLoss/useTPSL.js.map +1 -1
  95. package/lib/orderly/useWalletSubscription.d.ts +1 -1
  96. package/lib/orderly/useWalletSubscription.d.ts.map +1 -1
  97. package/lib/referral/api.d.ts +87 -0
  98. package/lib/referral/api.d.ts.map +1 -0
  99. package/lib/referral/api.js +6 -0
  100. package/lib/referral/api.js.map +1 -0
  101. package/lib/referral/format.d.ts +2 -0
  102. package/lib/referral/format.d.ts.map +1 -0
  103. package/lib/referral/format.js +18 -0
  104. package/lib/referral/format.js.map +1 -0
  105. package/lib/referral/index.d.ts +9 -0
  106. package/lib/referral/index.d.ts.map +1 -0
  107. package/lib/referral/index.js +56 -0
  108. package/lib/referral/index.js.map +1 -0
  109. package/lib/referral/swr.d.ts +7 -0
  110. package/lib/referral/swr.d.ts.map +1 -0
  111. package/lib/referral/swr.js +34 -0
  112. package/lib/referral/swr.js.map +1 -0
  113. package/lib/referral/useCommission.d.ts +4 -0
  114. package/lib/referral/useCommission.d.ts.map +1 -0
  115. package/lib/referral/useCommission.js +69 -0
  116. package/lib/referral/useCommission.js.map +1 -0
  117. package/lib/referral/useDaily.d.ts +9 -0
  118. package/lib/referral/useDaily.d.ts.map +1 -0
  119. package/lib/referral/useDaily.js +29 -0
  120. package/lib/referral/useDaily.js.map +1 -0
  121. package/lib/referral/useDistribution.d.ts +9 -0
  122. package/lib/referral/useDistribution.d.ts.map +1 -0
  123. package/lib/referral/useDistribution.js +63 -0
  124. package/lib/referral/useDistribution.js.map +1 -0
  125. package/lib/referral/useRefereeHistory.d.ts +9 -0
  126. package/lib/referral/useRefereeHistory.d.ts.map +1 -0
  127. package/lib/referral/useRefereeHistory.js +57 -0
  128. package/lib/referral/useRefereeHistory.js.map +1 -0
  129. package/lib/referral/useRefereeInfo.d.ts +9 -0
  130. package/lib/referral/useRefereeInfo.d.ts.map +1 -0
  131. package/lib/referral/useRefereeInfo.js +57 -0
  132. package/lib/referral/useRefereeInfo.js.map +1 -0
  133. package/lib/referral/useRefereeRebateSummary.d.ts +12 -0
  134. package/lib/referral/useRefereeRebateSummary.d.ts.map +1 -0
  135. package/lib/referral/useRefereeRebateSummary.js +41 -0
  136. package/lib/referral/useRefereeRebateSummary.js.map +1 -0
  137. package/lib/referral/useReferralRebateSummary.d.ts +9 -0
  138. package/lib/referral/useReferralRebateSummary.d.ts.map +1 -0
  139. package/lib/referral/useReferralRebateSummary.js +57 -0
  140. package/lib/referral/useReferralRebateSummary.js.map +1 -0
  141. package/lib/services/orderCreator/baseCreator.d.ts.map +1 -1
  142. package/lib/services/orderCreator/baseCreator.js +5 -3
  143. package/lib/services/orderCreator/baseCreator.js.map +1 -1
  144. package/lib/usePrivateInfiniteQuery.d.ts +2 -2
  145. package/lib/usePrivateInfiniteQuery.d.ts.map +1 -1
  146. package/lib/version.d.ts +1 -1
  147. package/lib/version.js +2 -2
  148. package/lib/version.js.map +1 -1
  149. package/package.json +7 -7
@@ -31,7 +31,7 @@ export declare const usePositionStream: (symbol?: string, options?: SWRConfigura
31
31
  }, {
32
32
  readonly loading: false;
33
33
  readonly error: any;
34
- readonly refresh: import("swr/_internal").KeyedMutator<API.PositionInfo>;
34
+ readonly refresh: import("swr/dist/_internal").KeyedMutator<API.PositionInfo>;
35
35
  }];
36
36
  export declare const pathOr_unsettledPnLPathOr: (obj: any) => number;
37
37
  export {};
@@ -1,4 +1,4 @@
1
1
  export declare const useSettleSubscription: (options?: {
2
2
  onMessage?: ((data: any) => void) | undefined;
3
- } | undefined) => import("swr/subscription").SWRSubscriptionResponse<any, any>;
3
+ } | undefined) => import("swr/dist/subscription").SWRSubscriptionResponse<any, any>;
4
4
  //# sourceMappingURL=useSettleSubscription.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useSettleSubscription.d.ts","sourceRoot":"","sources":["../../src/orderly/useSettleSubscription.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,qBAAqB;wBACb,GAAG,KAAK,IAAI;8EAuBhC,CAAC"}
1
+ {"version":3,"file":"useSettleSubscription.d.ts","sourceRoot":"","sources":["../../src/orderly/useSettleSubscription.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,qBAAqB;wBACb,GAAG,KAAK,IAAI;mFAuBhC,CAAC"}
@@ -5,23 +5,23 @@ export declare const useTPSLOrder: (position: Partial<API.PositionTPSLExt> & Pic
5
5
  * it is usually used when editing order
6
6
  */
7
7
  defaultOrder?: API.AlgoOrder;
8
- }) => [Partial<import("@orderly.network/types").Optional<import("@orderly.network/types").BaseAlgoOrderEntity<import("@orderly.network/types").AlgoOrderRootType.TP_SL & {
8
+ }) => [Partial<Omit<import("@orderly.network/types").BaseAlgoOrderEntity<import("@orderly.network/types").AlgoOrderRootType.TP_SL>, "type" | "side" | "order_type" | "trigger_price"> & Partial<Pick<import("@orderly.network/types").BaseAlgoOrderEntity<import("@orderly.network/types").AlgoOrderRootType.TP_SL>, "type" | "side" | "order_type" | "trigger_price">> & {
9
9
  tp_pnl: number;
10
10
  tp_offset: number;
11
11
  tp_offset_percentage: number;
12
12
  sl_pnl: number;
13
13
  sl_offset: number;
14
14
  sl_offset_percentage: number;
15
- }>, "type" | "side" | "order_type" | "trigger_price">>, {
15
+ }>, {
16
16
  setValue: (key: string, value: string | number) => void;
17
- setValues: (values: Partial<Partial<import("@orderly.network/types").Optional<import("@orderly.network/types").BaseAlgoOrderEntity<import("@orderly.network/types").AlgoOrderRootType.TP_SL & {
17
+ setValues: (values: Partial<Partial<Omit<import("@orderly.network/types").BaseAlgoOrderEntity<import("@orderly.network/types").AlgoOrderRootType.TP_SL>, "type" | "side" | "order_type" | "trigger_price"> & Partial<Pick<import("@orderly.network/types").BaseAlgoOrderEntity<import("@orderly.network/types").AlgoOrderRootType.TP_SL>, "type" | "side" | "order_type" | "trigger_price">> & {
18
18
  tp_pnl: number;
19
19
  tp_offset: number;
20
20
  tp_offset_percentage: number;
21
21
  sl_pnl: number;
22
22
  sl_offset: number;
23
23
  sl_offset_percentage: number;
24
- }>, "type" | "side" | "order_type" | "trigger_price">>>) => void;
24
+ }>>) => void;
25
25
  submit: () => Promise<void>;
26
26
  errors: import("./useTPSL").ValidateError | null;
27
27
  validate: () => Promise<import("@orderly.network/types").AlgoOrderEntity<import("@orderly.network/types").AlgoOrderRootType.TP_SL | import("@orderly.network/types").AlgoOrderRootType.POSITIONAL_TP_SL>>;
@@ -1,6 +1,6 @@
1
1
  import { API, AlgoOrderEntity } from "@orderly.network/types";
2
2
  import { AlgoOrderRootType } from "@orderly.network/types";
3
- export type ComputedAlgoOrder = Partial<AlgoOrderEntity<AlgoOrderRootType.TP_SL & {
3
+ export type ComputedAlgoOrder = Partial<AlgoOrderEntity<AlgoOrderRootType.TP_SL> & {
4
4
  /**
5
5
  * Computed take profit
6
6
  */
@@ -13,7 +13,7 @@ export type ComputedAlgoOrder = Partial<AlgoOrderEntity<AlgoOrderRootType.TP_SL
13
13
  sl_pnl: number;
14
14
  sl_offset: number;
15
15
  sl_offset_percentage: number;
16
- }>>;
16
+ }>;
17
17
  export type ValidateError = {
18
18
  [P in keyof ComputedAlgoOrder]?: {
19
19
  type: string;
@@ -25,7 +25,7 @@ export type ValidateError = {
25
25
  */
26
26
  export declare const useTaskProfitAndStopLossInternal: (position: Partial<API.PositionTPSLExt> & Pick<API.PositionTPSLExt, "symbol" | "average_open_price" | "position_qty">, options?: {
27
27
  defaultOrder?: API.AlgoOrder;
28
- }) => [Partial<import("@orderly.network/types").Optional<import("@orderly.network/types").BaseAlgoOrderEntity<AlgoOrderRootType.TP_SL & {
28
+ }) => [Partial<Omit<import("@orderly.network/types").BaseAlgoOrderEntity<AlgoOrderRootType.TP_SL>, "type" | "side" | "order_type" | "trigger_price"> & Partial<Pick<import("@orderly.network/types").BaseAlgoOrderEntity<AlgoOrderRootType.TP_SL>, "type" | "side" | "order_type" | "trigger_price">> & {
29
29
  /**
30
30
  * Computed take profit
31
31
  */
@@ -38,7 +38,7 @@ export declare const useTaskProfitAndStopLossInternal: (position: Partial<API.Po
38
38
  sl_pnl: number;
39
39
  sl_offset: number;
40
40
  sl_offset_percentage: number;
41
- }>, "type" | "side" | "order_type" | "trigger_price">>, {
41
+ }>, {
42
42
  /**
43
43
  * Update the take profit and stop loss order, this will merge the new data with the old one
44
44
  */
@@ -1 +1 @@
1
- {"version":3,"file":"useTPSL.d.ts","sourceRoot":"","sources":["../../../src/orderly/useTakeProfitAndStopLoss/useTPSL.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,GAAG,EACH,eAAe,EAGhB,MAAM,wBAAwB,CAAC;AAIhC,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAO3D,MAAM,MAAM,iBAAiB,GAAG,OAAO,CACrC,eAAe,CACb,iBAAiB,CAAC,KAAK,GAAG;IACxB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,oBAAoB,EAAE,MAAM,CAAC;IAE7B;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,oBAAoB,EAAE,MAAM,CAAC;CAC9B,CACF,CACF,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;KACzB,CAAC,IAAI,MAAM,iBAAiB,CAAC,CAAC,EAAE;QAC/B,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;KACjB;CACF,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gCAAgC,aACjC,QAAQ,IAAI,eAAe,CAAC,GACpC,KAAK,IAAI,eAAe,EAAE,QAAQ,GAAG,oBAAoB,GAAG,cAAc,CAAC,YACnE;IACR,YAAY,CAAC,EAAE,IAAI,SAAS,CAAC;CAC9B;IAhCG;;OAEG;YACK,MAAM;eACH,MAAM;0BACK,MAAM;IAE5B;;OAEG;YACK,MAAM;eACH,MAAM;0BACK,MAAM;;IA2B9B;;OAEG;oBACa,MAAM,SAAS,MAAM,GAAG,MAAM,KAAK,IAAI;wBACnC,QAAQ,iBAAiB,CAAC,KAAK,IAAI;IAEvD;;OAEG;YACK,MAAM,QAAQ,IAAI,CAAC;YAMnB,aAAa,GAAG,IAAI;IAC5B;;OAEG;cACO,MAAM,QACd,gBACE,kBAAkB,gBAAgB,GAAG,kBAAkB,KAAK,CAC7D,CACF;EAmSJ,CAAC"}
1
+ {"version":3,"file":"useTPSL.d.ts","sourceRoot":"","sources":["../../../src/orderly/useTakeProfitAndStopLoss/useTPSL.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,GAAG,EACH,eAAe,EAGhB,MAAM,wBAAwB,CAAC;AAIhC,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAO3D,MAAM,MAAM,iBAAiB,GAAG,OAAO,CACrC,eAAe,CAAC,iBAAiB,CAAC,KAAK,CAAC,GAAG;IACzC;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,oBAAoB,EAAE,MAAM,CAAC;IAE7B;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,oBAAoB,EAAE,MAAM,CAAC;CAC9B,CACF,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;KACzB,CAAC,IAAI,MAAM,iBAAiB,CAAC,CAAC,EAAE;QAC/B,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;KACjB;CACF,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gCAAgC,aACjC,QAAQ,IAAI,eAAe,CAAC,GACpC,KAAK,IAAI,eAAe,EAAE,QAAQ,GAAG,oBAAoB,GAAG,cAAc,CAAC,YACnE;IACR,YAAY,CAAC,EAAE,IAAI,SAAS,CAAC;CAC9B;IA/BC;;OAEG;YACK,MAAM;eACH,MAAM;0BACK,MAAM;IAE5B;;OAEG;YACK,MAAM;eACH,MAAM;0BACK,MAAM;;IA0B5B;;OAEG;oBACa,MAAM,SAAS,MAAM,GAAG,MAAM,KAAK,IAAI;wBACnC,QAAQ,iBAAiB,CAAC,KAAK,IAAI;IAEvD;;OAEG;YACK,MAAM,QAAQ,IAAI,CAAC;YAMnB,aAAa,GAAG,IAAI;IAC5B;;OAEG;cACO,MAAM,QACd,gBACE,kBAAkB,gBAAgB,GAAG,kBAAkB,KAAK,CAC7D,CACF;EAmSJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/orderly/useTakeProfitAndStopLoss/useTPSL.ts"],"sourcesContent":["import { useEffect, useState } from \"react\";\n\nimport {\n API,\n AlgoOrderEntity,\n OrderSide,\n SDKError,\n} from \"@orderly.network/types\";\nimport { UpdateOrderKey, calculateHelper } from \"./utils\";\nimport { useMutation } from \"../../useMutation\";\nimport { OrderFactory } from \"../../services/orderCreator/factory\";\nimport { AlgoOrderRootType } from \"@orderly.network/types\";\nimport { TPSLPositionOrderCreator } from \"../../services/orderCreator/tpslPositionOrderCreator\";\nimport { findTPSLFromOrder } from \"../usePositionStream/utils\";\nimport { useSymbolsInfo } from \"../useSymbolsInfo\";\nimport { useMarkPrice } from \"../useMarkPrice\";\nimport { omit } from \"ramda\";\n\nexport type ComputedAlgoOrder = Partial<\n AlgoOrderEntity<\n AlgoOrderRootType.TP_SL & {\n /**\n * Computed take profit\n */\n tp_pnl: number;\n tp_offset: number;\n tp_offset_percentage: number;\n\n /**\n * Computed stop loss\n */\n sl_pnl: number;\n sl_offset: number;\n sl_offset_percentage: number;\n }\n >\n>;\n\nexport type ValidateError = {\n [P in keyof ComputedAlgoOrder]?: {\n type: string;\n message: string;\n };\n};\n\n/**\n * @hidden\n */\nexport const useTaskProfitAndStopLossInternal = (\n position: Partial<API.PositionTPSLExt> &\n Pick<API.PositionTPSLExt, \"symbol\" | \"average_open_price\" | \"position_qty\">,\n options?: {\n defaultOrder?: API.AlgoOrder;\n }\n): [\n /**\n * return the computed & formatted order\n */\n ComputedAlgoOrder,\n {\n /**\n * Update the take profit and stop loss order, this will merge the new data with the old one\n */\n setValue: (key: string, value: number | string) => void;\n setValues: (values: Partial<ComputedAlgoOrder>) => void;\n // getOrderEntity: () => AlgoOrderEntity<AlgoOrderRootType.TP_SL|AlgoOrderRootType.POSITIONAL_TP_SL>;\n /**\n * Submit the TP/SL order\n */\n submit: () => Promise<void>;\n // /**\n // * Create the take profit and stop loss order, auto-detect the order type\n // */\n // create: () => Promise<void>;\n // update: (orderId: number) => Promise<any>;\n errors: ValidateError | null;\n /**\n *\n */\n validate: () => Promise<\n AlgoOrderEntity<\n AlgoOrderRootType.POSITIONAL_TP_SL | AlgoOrderRootType.TP_SL\n >\n >;\n }\n] => {\n const [order, setOrder] = useState<\n ComputedAlgoOrder & {\n ignoreValidate?: boolean;\n }\n >({\n algo_order_id: options?.defaultOrder?.algo_order_id,\n symbol: position.symbol as string,\n side: Number(position.position_qty) > 0 ? OrderSide.BUY : OrderSide.SELL,\n quantity:\n options?.defaultOrder?.quantity || Math.abs(position.position_qty),\n algo_type: options?.defaultOrder?.algo_type as AlgoOrderRootType,\n });\n\n const symbolInfo = useSymbolsInfo()[position.symbol!]();\n const { data: markPrice } = useMarkPrice(order.symbol!);\n\n const [doCreateOrder] = useMutation(\"/v1/algo/order\");\n const [doUpdateOrder] = useMutation(\"/v1/algo/order\", \"PUT\");\n const [doDeleteOrder] = useMutation(\"/v1/algo/order\", \"DELETE\");\n\n const [errors, setErrors] = useState<ValidateError | null>(null);\n\n useEffect(() => {\n if (!options?.defaultOrder) return;\n const trigger_prices = findTPSLFromOrder(options.defaultOrder!);\n if (trigger_prices.tp_trigger_price) {\n setOrderValue(\"tp_trigger_price\", trigger_prices.tp_trigger_price, {\n ignoreValidate: true,\n });\n }\n if (trigger_prices.sl_trigger_price) {\n setOrderValue(\"sl_trigger_price\", trigger_prices.sl_trigger_price, {\n ignoreValidate: true,\n });\n }\n }, []);\n\n const _setOrderValue = (\n key: string,\n value: number | string,\n options?: {\n ignoreValidate?: boolean;\n }\n ) => {\n // console.log(\"[updateOrder:]\", key, value, order.quantity);\n\n setOrder((prev) => {\n const side = position.position_qty! > 0 ? OrderSide.BUY : OrderSide.SELL;\n\n if (key === \"sl_pnl\") {\n value = value ? `-${value}` : \"\";\n }\n\n const newValue = calculateHelper(\n key,\n {\n key,\n value,\n entryPrice: position.average_open_price!,\n qty:\n side === OrderSide.BUY\n ? Number(prev.quantity)!\n : -Number(prev.quantity)!,\n orderSide: side,\n },\n {\n symbol: symbolInfo,\n }\n );\n\n return {\n ...prev,\n ...newValue,\n ignoreValidate: options?.ignoreValidate,\n };\n });\n };\n\n const setOrderValue = async (\n key: string,\n value: number | string,\n options?: {\n ignoreValidate?: boolean;\n }\n ) => {\n if (key === \"quantity\") {\n setOrder((prev) => ({ ...prev, quantity: value }));\n\n if (typeof order.sl_trigger_price !== \"undefined\") {\n _setOrderValue(\"sl_trigger_price\", order.sl_trigger_price, {\n ignoreValidate: true,\n });\n }\n\n if (typeof order.tp_trigger_price !== \"undefined\") {\n _setOrderValue(\"tp_trigger_price\", order.tp_trigger_price, {\n ignoreValidate: true,\n });\n }\n\n return;\n }\n\n _setOrderValue(key, value, options);\n };\n\n /**\n * calculate value config\n */\n const valueConfig = {\n symbol: symbolInfo,\n maxQty: Math.abs(position.position_qty),\n markPrice,\n };\n\n // auto validate when order changed\n useEffect(() => {\n requestAnimationFrame(() => {\n if (order.ignoreValidate) return;\n const orderCreator = getOrderCreator();\n orderCreator\n .validate(order as AlgoOrderEntity, valueConfig)\n .then((errors) => {\n setErrors(errors);\n });\n });\n }, [order, valueConfig.markPrice, order.quantity]);\n\n const setValues = (values: Partial<ComputedAlgoOrder>) => {\n const keys = Object.keys(values);\n keys.forEach((key) => {\n setOrderValue(\n key as UpdateOrderKey,\n values[key as keyof ComputedAlgoOrder] as number | string\n );\n });\n };\n\n const validate = (): Promise<\n AlgoOrderEntity<\n AlgoOrderRootType.POSITIONAL_TP_SL | AlgoOrderRootType.TP_SL\n >\n > => {\n const orderCreator = getOrderCreator();\n\n return new Promise((resolve, reject) => {\n return orderCreator\n .validate(\n order as AlgoOrderEntity<AlgoOrderRootType.TP_SL>,\n valueConfig\n )\n .then((errors) => {\n console.log(\"errors::\", errors);\n\n if (errors) {\n setErrors(errors);\n return reject(errors);\n }\n\n resolve(\n orderCreator.create(\n order as AlgoOrderEntity<AlgoOrderRootType.TP_SL>,\n valueConfig\n )\n );\n });\n });\n };\n\n // useEffect(() => {\n // // setError(validate());\n // }, [order]);\n\n const compare = (): boolean => {\n const quantityNum = Number(order.quantity);\n if (isNaN(quantityNum)) return false;\n return quantityNum === Math.abs(Number(position.position_qty));\n };\n\n const getOrderCreator = () => {\n // if the order is existed, and the order type is POSITIONAL_TP_SL, always return POSITIONAL_TP_SL\n // else use qty to determine the order type\n if (options?.defaultOrder?.algo_type === AlgoOrderRootType.TP_SL) {\n return OrderFactory.create(AlgoOrderRootType.TP_SL);\n }\n return OrderFactory.create(\n compare() ? AlgoOrderRootType.POSITIONAL_TP_SL : AlgoOrderRootType.TP_SL\n );\n };\n\n const submit = async () => {\n const defaultOrder = options?.defaultOrder;\n const orderId = defaultOrder?.algo_order_id;\n const algoType = defaultOrder?.algo_type;\n\n // if algo_order_id is not existed, create new order\n if (!orderId) {\n return createOrder();\n }\n\n // if algo_order_id is existed and algoType = POSITION_TP_SL\n if (algoType === AlgoOrderRootType.POSITIONAL_TP_SL) {\n // if order.qty = position.qty, update order\n if (compare()) {\n return updateOrder(orderId!);\n }\n // if order.qty != position.qty, create new tp/sl order\n return createOrder();\n }\n\n // if algo_order_id is existed and algoType = TP_SL, delete order and create new order\n\n return updateOrder(orderId!);\n };\n\n const createOrder = () => {\n const orderCreator = getOrderCreator();\n\n const orderBody = orderCreator.create(\n order as AlgoOrderEntity<AlgoOrderRootType.TP_SL>,\n valueConfig\n );\n\n if (orderBody.child_orders.length === 0) {\n throw new SDKError(\"No child orders\");\n }\n\n // filter the order that is not activated\n orderBody.child_orders = orderBody.child_orders.filter(\n (order: API.AlgoOrderExt) => order.is_activated\n );\n\n return doCreateOrder(orderBody);\n };\n\n const deleteOrder = (orderId: number, symbol: string): Promise<any> => {\n return doDeleteOrder(null, {\n order_id: orderId,\n symbol,\n });\n };\n\n const updateOrder = (orderId: number): Promise<any> => {\n const orderCreator = getOrderCreator() as TPSLPositionOrderCreator;\n\n const [updatedOrderEntity, orderEntity] = orderCreator.crateUpdateOrder(\n // @ts-ignore\n order,\n options?.defaultOrder,\n valueConfig\n );\n\n if (updatedOrderEntity.child_orders.length === 0) {\n return Promise.resolve(\"Not any order needs to update\");\n }\n\n const needDelete =\n orderEntity.child_orders.filter(\n (order) =>\n typeof order.is_activated === \"boolean\" && !order.is_activated\n ).length === orderEntity.child_orders.length;\n\n if (needDelete) {\n return deleteOrder(orderId, order.symbol!);\n }\n\n return doUpdateOrder({\n order_id: orderId,\n ...updatedOrderEntity,\n });\n };\n\n return [\n omit([\"ignoreValidate\"], order) as ComputedAlgoOrder,\n {\n submit,\n\n // create: submit,\n\n // update: updateOrder,/\n setValue: setOrderValue,\n setValues,\n // createPositionTPSL: submit,\n // createTPSL: submit,\n validate,\n errors,\n },\n ];\n};\n"],"names":["useTaskProfitAndStopLossInternal","position","options","order","setOrder","useState","algo_order_id","defaultOrder","symbol","side","Number","position_qty","OrderSide","BUY","SELL","quantity","Math","abs","algo_type","symbolInfo","useSymbolsInfo","data","markPrice","useMarkPrice","doCreateOrder","useMutation","doUpdateOrder","doDeleteOrder","errors","setErrors","useEffect","trigger_prices","findTPSLFromOrder","tp_trigger_price","setOrderValue","ignoreValidate","sl_trigger_price","_setOrderValue","key","value","prev","newValue","calculateHelper","entryPrice","average_open_price","qty","orderSide","valueConfig","maxQty","requestAnimationFrame","orderCreator","getOrderCreator","validate","then","setValues","values","keys","Object","forEach","Promise","resolve","reject","create","compare","quantityNum","isNaN","AlgoOrderRootType","TP_SL","OrderFactory","POSITIONAL_TP_SL","submit","orderId","algoType","createOrder","updateOrder","orderBody","child_orders","length","SDKError","filter","is_activated","deleteOrder","order_id","updatedOrderEntity","orderEntity","crateUpdateOrder","needDelete","omit","setValue"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";;;;+BAgDaA;;;eAAAA;;;uBAhDuB;uBAO7B;uBACyC;6BACpB;yBACC;wBAGK;gCACH;8BACF;uBACR;AAgCd,MAAMA,mCAAmC,CAC9CC,UAEAC;IAmCA,MAAM,CAACC,OAAOC,SAAS,GAAGC,IAAAA,eAAQ,EAIhC;QACAC,eAAeJ,SAASK,cAAcD;QACtCE,QAAQP,SAASO,MAAM;QACvBC,MAAMC,OAAOT,SAASU,YAAY,IAAI,IAAIC,gBAAS,CAACC,GAAG,GAAGD,gBAAS,CAACE,IAAI;QACxEC,UACEb,SAASK,cAAcQ,YAAYC,KAAKC,GAAG,CAAChB,SAASU,YAAY;QACnEO,WAAWhB,SAASK,cAAcW;IACpC;IAEA,MAAMC,aAAaC,IAAAA,8BAAc,GAAE,CAACnB,SAASO,MAAM,CAAE;IACrD,MAAM,EAAEa,MAAMC,SAAS,EAAE,GAAGC,IAAAA,0BAAY,EAACpB,MAAMK,MAAM;IAErD,MAAM,CAACgB,cAAc,GAAGC,IAAAA,wBAAW,EAAC;IACpC,MAAM,CAACC,cAAc,GAAGD,IAAAA,wBAAW,EAAC,kBAAkB;IACtD,MAAM,CAACE,cAAc,GAAGF,IAAAA,wBAAW,EAAC,kBAAkB;IAEtD,MAAM,CAACG,QAAQC,UAAU,GAAGxB,IAAAA,eAAQ,EAAuB;IAE3DyB,IAAAA,gBAAS,EAAC;QACR,IAAI,CAAC5B,SAASK,cAAc;QAC5B,MAAMwB,iBAAiBC,IAAAA,yBAAiB,EAAC9B,QAAQK,YAAY;QAC7D,IAAIwB,eAAeE,gBAAgB,EAAE;YACnCC,cAAc,oBAAoBH,eAAeE,gBAAgB,EAAE;gBACjEE,gBAAgB;YAClB;QACF;QACA,IAAIJ,eAAeK,gBAAgB,EAAE;YACnCF,cAAc,oBAAoBH,eAAeK,gBAAgB,EAAE;gBACjED,gBAAgB;YAClB;QACF;IACF,GAAG,EAAE;IAEL,MAAME,iBAAiB,CACrBC,KACAC,OACArC;QAIA,6DAA6D;QAE7DE,SAAS,CAACoC;YACR,MAAM/B,OAAOR,SAASU,YAAY,GAAI,IAAIC,gBAAS,CAACC,GAAG,GAAGD,gBAAS,CAACE,IAAI;YAExE,IAAIwB,QAAQ,UAAU;gBACpBC,QAAQA,QAAQ,CAAC,CAAC,EAAEA,MAAM,CAAC,GAAG;YAChC;YAEA,MAAME,WAAWC,IAAAA,sBAAe,EAC9BJ,KACA;gBACEA;gBACAC;gBACAI,YAAY1C,SAAS2C,kBAAkB;gBACvCC,KACEpC,SAASG,gBAAS,CAACC,GAAG,GAClBH,OAAO8B,KAAKzB,QAAQ,IACpB,CAACL,OAAO8B,KAAKzB,QAAQ;gBAC3B+B,WAAWrC;YACb,GACA;gBACED,QAAQW;YACV;YAGF,OAAO;gBACL,GAAGqB,IAAI;gBACP,GAAGC,QAAQ;gBACXN,gBAAgBjC,SAASiC;YAC3B;QACF;IACF;IAEA,MAAMD,gBAAgB,OACpBI,KACAC,OACArC;QAIA,IAAIoC,QAAQ,YAAY;YACtBlC,SAAS,CAACoC,OAAU,CAAA;oBAAE,GAAGA,IAAI;oBAAEzB,UAAUwB;gBAAM,CAAA;YAE/C,IAAI,OAAOpC,MAAMiC,gBAAgB,KAAK,aAAa;gBACjDC,eAAe,oBAAoBlC,MAAMiC,gBAAgB,EAAE;oBACzDD,gBAAgB;gBAClB;YACF;YAEA,IAAI,OAAOhC,MAAM8B,gBAAgB,KAAK,aAAa;gBACjDI,eAAe,oBAAoBlC,MAAM8B,gBAAgB,EAAE;oBACzDE,gBAAgB;gBAClB;YACF;YAEA;QACF;QAEAE,eAAeC,KAAKC,OAAOrC;IAC7B;IAEA;;GAEC,GACD,MAAM6C,cAAc;QAClBvC,QAAQW;QACR6B,QAAQhC,KAAKC,GAAG,CAAChB,SAASU,YAAY;QACtCW;IACF;IAEA,mCAAmC;IACnCQ,IAAAA,gBAAS,EAAC;QACRmB,sBAAsB;YACpB,IAAI9C,MAAMgC,cAAc,EAAE;YAC1B,MAAMe,eAAeC;YACrBD,aACGE,QAAQ,CAACjD,OAA0B4C,aACnCM,IAAI,CAAC,CAACzB;gBACLC,UAAUD;YACZ;QACJ;IACF,GAAG;QAACzB;QAAO4C,YAAYzB,SAAS;QAAEnB,MAAMY,QAAQ;KAAC;IAEjD,MAAMuC,YAAY,CAACC;QACjB,MAAMC,OAAOC,OAAOD,IAAI,CAACD;QACzBC,KAAKE,OAAO,CAAC,CAACpB;YACZJ,cACEI,KACAiB,MAAM,CAACjB,IAA+B;QAE1C;IACF;IAEA,MAAMc,WAAW;QAKf,MAAMF,eAAeC;QAErB,OAAO,IAAIQ,QAAQ,CAACC,SAASC;YAC3B,OAAOX,aACJE,QAAQ,CACPjD,OACA4C,aAEDM,IAAI,CAAC,CAACzB;;gBAGL,IAAIA,QAAQ;oBACVC,UAAUD;oBACV,OAAOiC,OAAOjC;gBAChB;gBAEAgC,QACEV,aAAaY,MAAM,CACjB3D,OACA4C;YAGN;QACJ;IACF;IAEA,oBAAoB;IACpB,6BAA6B;IAC7B,eAAe;IAEf,MAAMgB,UAAU;QACd,MAAMC,cAActD,OAAOP,MAAMY,QAAQ;QACzC,IAAIkD,MAAMD,cAAc,OAAO;QAC/B,OAAOA,gBAAgBhD,KAAKC,GAAG,CAACP,OAAOT,SAASU,YAAY;IAC9D;IAEA,MAAMwC,kBAAkB;QACtB,kGAAkG;QAClG,2CAA2C;QAC3C,IAAIjD,SAASK,cAAcW,cAAcgD,wBAAiB,CAACC,KAAK,EAAE;YAChE,OAAOC,qBAAY,CAACN,MAAM,CAACI,wBAAiB,CAACC,KAAK;QACpD;QACA,OAAOC,qBAAY,CAACN,MAAM,CACxBC,YAAYG,wBAAiB,CAACG,gBAAgB,GAAGH,wBAAiB,CAACC,KAAK;IAE5E;IAEA,MAAMG,SAAS;QACb,MAAM/D,eAAeL,SAASK;QAC9B,MAAMgE,UAAUhE,cAAcD;QAC9B,MAAMkE,WAAWjE,cAAcW;QAE/B,oDAAoD;QACpD,IAAI,CAACqD,SAAS;YACZ,OAAOE;QACT;QAEA,4DAA4D;QAC5D,IAAID,aAAaN,wBAAiB,CAACG,gBAAgB,EAAE;YACnD,4CAA4C;YAC5C,IAAIN,WAAW;gBACb,OAAOW,YAAYH;YACrB;YACA,uDAAuD;YACvD,OAAOE;QACT;QAEA,sFAAsF;QAEtF,OAAOC,YAAYH;IACrB;IAEA,MAAME,cAAc;QAClB,MAAMvB,eAAeC;QAErB,MAAMwB,YAAYzB,aAAaY,MAAM,CACnC3D,OACA4C;QAGF,IAAI4B,UAAUC,YAAY,CAACC,MAAM,KAAK,GAAG;YACvC,MAAM,IAAIC,eAAQ,CAAC;QACrB;QAEA,yCAAyC;QACzCH,UAAUC,YAAY,GAAGD,UAAUC,YAAY,CAACG,MAAM,CACpD,CAAC5E,QAA4BA,MAAM6E,YAAY;QAGjD,OAAOxD,cAAcmD;IACvB;IAEA,MAAMM,cAAc,CAACV,SAAiB/D;QACpC,OAAOmB,cAAc,MAAM;YACzBuD,UAAUX;YACV/D;QACF;IACF;IAEA,MAAMkE,cAAc,CAACH;QACnB,MAAMrB,eAAeC;QAErB,MAAM,CAACgC,oBAAoBC,YAAY,GAAGlC,aAAamC,gBAAgB,CACrE,aAAa;QACblF,OACAD,SAASK,cACTwC;QAGF,IAAIoC,mBAAmBP,YAAY,CAACC,MAAM,KAAK,GAAG;YAChD,OAAOlB,QAAQC,OAAO,CAAC;QACzB;QAEA,MAAM0B,aACJF,YAAYR,YAAY,CAACG,MAAM,CAC7B,CAAC5E,QACC,OAAOA,MAAM6E,YAAY,KAAK,aAAa,CAAC7E,MAAM6E,YAAY,EAChEH,MAAM,KAAKO,YAAYR,YAAY,CAACC,MAAM;QAE9C,IAAIS,YAAY;YACd,OAAOL,YAAYV,SAASpE,MAAMK,MAAM;QAC1C;QAEA,OAAOkB,cAAc;YACnBwD,UAAUX;YACV,GAAGY,kBAAkB;QACvB;IACF;IAEA,OAAO;QACLI,IAAAA,WAAI,EAAC;YAAC;SAAiB,EAAEpF;QACzB;YACEmE;YAEA,kBAAkB;YAElB,wBAAwB;YACxBkB,UAAUtD;YACVoB;YACA,8BAA8B;YAC9B,sBAAsB;YACtBF;YACAxB;QACF;KACD;AACH"}
1
+ {"version":3,"sources":["../../../src/orderly/useTakeProfitAndStopLoss/useTPSL.ts"],"sourcesContent":["import { useEffect, useState } from \"react\";\n\nimport {\n API,\n AlgoOrderEntity,\n OrderSide,\n SDKError,\n} from \"@orderly.network/types\";\nimport { UpdateOrderKey, calculateHelper } from \"./utils\";\nimport { useMutation } from \"../../useMutation\";\nimport { OrderFactory } from \"../../services/orderCreator/factory\";\nimport { AlgoOrderRootType } from \"@orderly.network/types\";\nimport { TPSLPositionOrderCreator } from \"../../services/orderCreator/tpslPositionOrderCreator\";\nimport { findTPSLFromOrder } from \"../usePositionStream/utils\";\nimport { useSymbolsInfo } from \"../useSymbolsInfo\";\nimport { useMarkPrice } from \"../useMarkPrice\";\nimport { omit } from \"ramda\";\n\nexport type ComputedAlgoOrder = Partial<\n AlgoOrderEntity<AlgoOrderRootType.TP_SL> & {\n /**\n * Computed take profit\n */\n tp_pnl: number;\n tp_offset: number;\n tp_offset_percentage: number;\n\n /**\n * Computed stop loss\n */\n sl_pnl: number;\n sl_offset: number;\n sl_offset_percentage: number;\n }\n>;\n\nexport type ValidateError = {\n [P in keyof ComputedAlgoOrder]?: {\n type: string;\n message: string;\n };\n};\n\n/**\n * @hidden\n */\nexport const useTaskProfitAndStopLossInternal = (\n position: Partial<API.PositionTPSLExt> &\n Pick<API.PositionTPSLExt, \"symbol\" | \"average_open_price\" | \"position_qty\">,\n options?: {\n defaultOrder?: API.AlgoOrder;\n }\n): [\n /**\n * return the computed & formatted order\n */\n ComputedAlgoOrder,\n {\n /**\n * Update the take profit and stop loss order, this will merge the new data with the old one\n */\n setValue: (key: string, value: number | string) => void;\n setValues: (values: Partial<ComputedAlgoOrder>) => void;\n // getOrderEntity: () => AlgoOrderEntity<AlgoOrderRootType.TP_SL|AlgoOrderRootType.POSITIONAL_TP_SL>;\n /**\n * Submit the TP/SL order\n */\n submit: () => Promise<void>;\n // /**\n // * Create the take profit and stop loss order, auto-detect the order type\n // */\n // create: () => Promise<void>;\n // update: (orderId: number) => Promise<any>;\n errors: ValidateError | null;\n /**\n *\n */\n validate: () => Promise<\n AlgoOrderEntity<\n AlgoOrderRootType.POSITIONAL_TP_SL | AlgoOrderRootType.TP_SL\n >\n >;\n }\n] => {\n const [order, setOrder] = useState<\n ComputedAlgoOrder & {\n ignoreValidate?: boolean;\n }\n >({\n algo_order_id: options?.defaultOrder?.algo_order_id,\n symbol: position.symbol as string,\n side: Number(position.position_qty) > 0 ? OrderSide.BUY : OrderSide.SELL,\n quantity:\n options?.defaultOrder?.quantity || Math.abs(position.position_qty),\n algo_type: options?.defaultOrder?.algo_type as AlgoOrderRootType,\n });\n\n const symbolInfo = useSymbolsInfo()[position.symbol!]();\n const { data: markPrice } = useMarkPrice(order.symbol!);\n\n const [doCreateOrder] = useMutation(\"/v1/algo/order\");\n const [doUpdateOrder] = useMutation(\"/v1/algo/order\", \"PUT\");\n const [doDeleteOrder] = useMutation(\"/v1/algo/order\", \"DELETE\");\n\n const [errors, setErrors] = useState<ValidateError | null>(null);\n\n useEffect(() => {\n if (!options?.defaultOrder) return;\n const trigger_prices = findTPSLFromOrder(options.defaultOrder!);\n if (trigger_prices.tp_trigger_price) {\n setOrderValue(\"tp_trigger_price\", trigger_prices.tp_trigger_price, {\n ignoreValidate: true,\n });\n }\n if (trigger_prices.sl_trigger_price) {\n setOrderValue(\"sl_trigger_price\", trigger_prices.sl_trigger_price, {\n ignoreValidate: true,\n });\n }\n }, []);\n\n const _setOrderValue = (\n key: string,\n value: number | string,\n options?: {\n ignoreValidate?: boolean;\n }\n ) => {\n // console.log(\"[updateOrder:]\", key, value, order.quantity);\n\n setOrder((prev) => {\n const side = position.position_qty! > 0 ? OrderSide.BUY : OrderSide.SELL;\n\n if (key === \"sl_pnl\") {\n value = value ? `-${value}` : \"\";\n }\n\n const newValue = calculateHelper(\n key,\n {\n key,\n value,\n entryPrice: position.average_open_price!,\n qty:\n side === OrderSide.BUY\n ? Number(prev.quantity)!\n : -Number(prev.quantity)!,\n orderSide: side,\n },\n {\n symbol: symbolInfo,\n }\n );\n\n return {\n ...prev,\n ...newValue,\n ignoreValidate: options?.ignoreValidate,\n };\n });\n };\n\n const setOrderValue = async (\n key: string,\n value: number | string,\n options?: {\n ignoreValidate?: boolean;\n }\n ) => {\n if (key === \"quantity\") {\n setOrder((prev) => ({ ...prev, quantity: value }));\n\n if (typeof order.sl_trigger_price !== \"undefined\") {\n _setOrderValue(\"sl_trigger_price\", order.sl_trigger_price, {\n ignoreValidate: true,\n });\n }\n\n if (typeof order.tp_trigger_price !== \"undefined\") {\n _setOrderValue(\"tp_trigger_price\", order.tp_trigger_price, {\n ignoreValidate: true,\n });\n }\n\n return;\n }\n\n _setOrderValue(key, value, options);\n };\n\n /**\n * calculate value config\n */\n const valueConfig = {\n symbol: symbolInfo,\n maxQty: Math.abs(position.position_qty),\n markPrice,\n };\n\n // auto validate when order changed\n useEffect(() => {\n requestAnimationFrame(() => {\n if (order.ignoreValidate) return;\n const orderCreator = getOrderCreator();\n orderCreator\n .validate(order as AlgoOrderEntity, valueConfig)\n .then((errors) => {\n setErrors(errors);\n });\n });\n }, [order, valueConfig.markPrice, order.quantity]);\n\n const setValues = (values: Partial<ComputedAlgoOrder>) => {\n const keys = Object.keys(values);\n keys.forEach((key) => {\n setOrderValue(\n key as UpdateOrderKey,\n values[key as keyof ComputedAlgoOrder] as number | string\n );\n });\n };\n\n const validate = (): Promise<\n AlgoOrderEntity<\n AlgoOrderRootType.POSITIONAL_TP_SL | AlgoOrderRootType.TP_SL\n >\n > => {\n const orderCreator = getOrderCreator();\n\n return new Promise((resolve, reject) => {\n return orderCreator\n .validate(\n order as AlgoOrderEntity<AlgoOrderRootType.TP_SL>,\n valueConfig\n )\n .then((errors) => {\n console.log(\"errors::\", errors);\n\n if (errors) {\n setErrors(errors);\n return reject(errors);\n }\n\n resolve(\n orderCreator.create(\n order as AlgoOrderEntity<AlgoOrderRootType.TP_SL>,\n valueConfig\n )\n );\n });\n });\n };\n\n // useEffect(() => {\n // // setError(validate());\n // }, [order]);\n\n const compare = (): boolean => {\n const quantityNum = Number(order.quantity);\n if (isNaN(quantityNum)) return false;\n return quantityNum === Math.abs(Number(position.position_qty));\n };\n\n const getOrderCreator = () => {\n // if the order is existed, and the order type is POSITIONAL_TP_SL, always return POSITIONAL_TP_SL\n // else use qty to determine the order type\n if (options?.defaultOrder?.algo_type === AlgoOrderRootType.TP_SL) {\n return OrderFactory.create(AlgoOrderRootType.TP_SL);\n }\n return OrderFactory.create(\n compare() ? AlgoOrderRootType.POSITIONAL_TP_SL : AlgoOrderRootType.TP_SL\n );\n };\n\n const submit = async () => {\n const defaultOrder = options?.defaultOrder;\n const orderId = defaultOrder?.algo_order_id;\n const algoType = defaultOrder?.algo_type;\n\n // if algo_order_id is not existed, create new order\n if (!orderId) {\n return createOrder();\n }\n\n // if algo_order_id is existed and algoType = POSITION_TP_SL\n if (algoType === AlgoOrderRootType.POSITIONAL_TP_SL) {\n // if order.qty = position.qty, update order\n if (compare()) {\n return updateOrder(orderId!);\n }\n // if order.qty != position.qty, create new tp/sl order\n return createOrder();\n }\n\n // if algo_order_id is existed and algoType = TP_SL, delete order and create new order\n\n return updateOrder(orderId!);\n };\n\n const createOrder = () => {\n const orderCreator = getOrderCreator();\n\n const orderBody = orderCreator.create(\n order as AlgoOrderEntity<AlgoOrderRootType.TP_SL>,\n valueConfig\n );\n\n if (orderBody.child_orders.length === 0) {\n throw new SDKError(\"No child orders\");\n }\n\n // filter the order that is not activated\n orderBody.child_orders = orderBody.child_orders.filter(\n (order: API.AlgoOrderExt) => order.is_activated\n );\n\n return doCreateOrder(orderBody);\n };\n\n const deleteOrder = (orderId: number, symbol: string): Promise<any> => {\n return doDeleteOrder(null, {\n order_id: orderId,\n symbol,\n });\n };\n\n const updateOrder = (orderId: number): Promise<any> => {\n const orderCreator = getOrderCreator() as TPSLPositionOrderCreator;\n\n const [updatedOrderEntity, orderEntity] = orderCreator.crateUpdateOrder(\n // @ts-ignore\n order,\n options?.defaultOrder,\n valueConfig\n );\n\n if (updatedOrderEntity.child_orders.length === 0) {\n return Promise.resolve(\"Not any order needs to update\");\n }\n\n const needDelete =\n orderEntity.child_orders.filter(\n (order) =>\n typeof order.is_activated === \"boolean\" && !order.is_activated\n ).length === orderEntity.child_orders.length;\n\n if (needDelete) {\n return deleteOrder(orderId, order.symbol!);\n }\n\n return doUpdateOrder({\n order_id: orderId,\n ...updatedOrderEntity,\n });\n };\n\n return [\n omit([\"ignoreValidate\"], order) as ComputedAlgoOrder,\n {\n submit,\n\n // create: submit,\n\n // update: updateOrder,/\n setValue: setOrderValue,\n setValues,\n // createPositionTPSL: submit,\n // createTPSL: submit,\n validate,\n errors,\n },\n ];\n};\n"],"names":["useTaskProfitAndStopLossInternal","position","options","order","setOrder","useState","algo_order_id","defaultOrder","symbol","side","Number","position_qty","OrderSide","BUY","SELL","quantity","Math","abs","algo_type","symbolInfo","useSymbolsInfo","data","markPrice","useMarkPrice","doCreateOrder","useMutation","doUpdateOrder","doDeleteOrder","errors","setErrors","useEffect","trigger_prices","findTPSLFromOrder","tp_trigger_price","setOrderValue","ignoreValidate","sl_trigger_price","_setOrderValue","key","value","prev","newValue","calculateHelper","entryPrice","average_open_price","qty","orderSide","valueConfig","maxQty","requestAnimationFrame","orderCreator","getOrderCreator","validate","then","setValues","values","keys","Object","forEach","Promise","resolve","reject","create","compare","quantityNum","isNaN","AlgoOrderRootType","TP_SL","OrderFactory","POSITIONAL_TP_SL","submit","orderId","algoType","createOrder","updateOrder","orderBody","child_orders","length","SDKError","filter","is_activated","deleteOrder","order_id","updatedOrderEntity","orderEntity","crateUpdateOrder","needDelete","omit","setValue"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
@@ -1,4 +1,4 @@
1
1
  export declare const useWalletSubscription: (options?: {
2
2
  onMessage?: ((data: any) => void) | undefined;
3
- } | undefined) => import("swr/subscription").SWRSubscriptionResponse<any, any>;
3
+ } | undefined) => import("swr/dist/subscription").SWRSubscriptionResponse<any, any>;
4
4
  //# sourceMappingURL=useWalletSubscription.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useWalletSubscription.d.ts","sourceRoot":"","sources":["../../src/orderly/useWalletSubscription.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,qBAAqB;wBACb,GAAG,KAAK,IAAI;8EAuBhC,CAAC"}
1
+ {"version":3,"file":"useWalletSubscription.d.ts","sourceRoot":"","sources":["../../src/orderly/useWalletSubscription.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,qBAAqB;wBACb,GAAG,KAAK,IAAI;mFAuBhC,CAAC"}
@@ -0,0 +1,87 @@
1
+ export declare namespace RefferalAPI {
2
+ interface ReferralInfo {
3
+ referrer_info: Referrer;
4
+ referee_info: Referee;
5
+ }
6
+ type ReferralCode = {
7
+ "code": string;
8
+ "max_rebate_rate": number;
9
+ "referee_rebate_rate": number;
10
+ "referrer_rebate_rate": number;
11
+ "total_invites": number;
12
+ "total_traded": number;
13
+ };
14
+ type Referrer = {
15
+ "total_invites": number;
16
+ "total_traded": number;
17
+ "total_referee_volume": number;
18
+ "total_referee_fee": number;
19
+ "referral_codes": ReferralCode[];
20
+ "total_referrer_rebate": number;
21
+ "1d_invites": number;
22
+ "7d_invites": number;
23
+ "30d_invites": number;
24
+ "1d_traded": number;
25
+ "7d_traded": number;
26
+ "30d_traded": number;
27
+ "1d_referee_volume": number;
28
+ "7d_referee_volume": number;
29
+ "30d_referee_volume": number;
30
+ "1d_referee_fee": number;
31
+ "7d_referee_fee": number;
32
+ "30d_referee_fee": number;
33
+ "1d_referrer_rebate": number;
34
+ "7d_referrer_rebate": number;
35
+ "30d_referrer_rebate": number;
36
+ };
37
+ type Referee = {
38
+ "referer_code"?: string;
39
+ "referee_rebate_rate"?: number;
40
+ "1d_referee_rebate": number;
41
+ "7d_referee_rebate": number;
42
+ "30d_referee_rebate": number;
43
+ "total_referee_rebate": number;
44
+ };
45
+ type RefereeInfoItem = {
46
+ "account_id": string;
47
+ "code_binding_time": number;
48
+ "fee": number;
49
+ "referral_code": string;
50
+ "referral_rebate": number;
51
+ "register_time": number;
52
+ "trade_status": string;
53
+ "user_address": string;
54
+ "volume": number;
55
+ };
56
+ type UserVolStats = {
57
+ "perp_volume_last_30_days": number;
58
+ "perp_volume_last_7_days": number;
59
+ "perp_volume_ltd": number;
60
+ "perp_volume_ytd": number;
61
+ };
62
+ type Distribution = {
63
+ "amount": number;
64
+ "created_time": number;
65
+ "id": number;
66
+ "status": string;
67
+ "token": string;
68
+ "type": string;
69
+ "updated_time": number;
70
+ };
71
+ type ReferralRebateSummary = {
72
+ "referral_rebate": number;
73
+ "volume": number;
74
+ "fee": number;
75
+ "date": string;
76
+ };
77
+ type RefereeRebateSummary = {
78
+ "referee_rebate": number;
79
+ "fee": number;
80
+ "date": string;
81
+ };
82
+ type DayliVolume = {
83
+ date: string;
84
+ perp_volume: number;
85
+ };
86
+ }
87
+ //# sourceMappingURL=api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/referral/api.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,WAAW,WAAW,CAAC;IAEnC,UAAiB,YAAY;QAC3B,aAAa,EAAE,QAAQ,CAAC;QACxB,YAAY,EAAE,OAAO,CAAC;KACvB;IAED,KAAY,YAAY,GAAG;QACzB,MAAM,EAAE,MAAM,CAAC;QACf,iBAAiB,EAAE,MAAM,CAAC;QAC1B,qBAAqB,EAAE,MAAM,CAAC;QAC9B,sBAAsB,EAAE,MAAM,CAAC;QAC/B,eAAe,EAAE,MAAM,CAAC;QACxB,cAAc,EAAE,MAAM,CAAA;KACvB,CAAC;IAEF,KAAY,QAAQ,GAAG;QACrB,eAAe,EAAE,MAAM,CAAC;QACxB,cAAc,EAAE,MAAM,CAAC;QACvB,sBAAsB,EAAE,MAAM,CAAC;QAC/B,mBAAmB,EAAE,MAAM,CAAC;QAC5B,gBAAgB,EAAE,YAAY,EAAE,CAAC;QACjC,uBAAuB,EAAE,MAAM,CAAC;QAChC,YAAY,EAAE,MAAM,CAAC;QACrB,YAAY,EAAE,MAAM,CAAC;QACrB,aAAa,EAAE,MAAM,CAAC;QACtB,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,EAAE,MAAM,CAAC;QACpB,YAAY,EAAE,MAAM,CAAC;QACrB,mBAAmB,EAAE,MAAM,CAAC;QAC5B,mBAAmB,EAAE,MAAM,CAAC;QAC5B,oBAAoB,EAAE,MAAM,CAAC;QAC7B,gBAAgB,EAAE,MAAM,CAAC;QACzB,gBAAgB,EAAE,MAAM,CAAC;QACzB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,oBAAoB,EAAE,MAAM,CAAC;QAC7B,oBAAoB,EAAE,MAAM,CAAC;QAC7B,qBAAqB,EAAE,MAAM,CAAA;KAC9B,CAAC;IAEF,KAAY,OAAO,GAAG;QACpB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,qBAAqB,CAAC,EAAE,MAAM,CAAC;QAC/B,mBAAmB,EAAE,MAAM,CAAC;QAC5B,mBAAmB,EAAE,MAAM,CAAC;QAC5B,oBAAoB,EAAE,MAAM,CAAC;QAC7B,sBAAsB,EAAE,MAAM,CAAA;KAC/B,CAAC;IAEF,KAAY,eAAe,GAAG;QAC5B,YAAY,EAAE,MAAM,CAAC;QACrB,mBAAmB,EAAE,MAAM,CAAC;QAC5B,KAAK,EAAE,MAAM,CAAC;QACd,eAAe,EAAE,MAAM,CAAC;QACxB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,eAAe,EAAE,MAAM,CAAC;QACxB,cAAc,EAAE,MAAM,CAAC;QACvB,cAAc,EAAE,MAAM,CAAC;QACvB,QAAQ,EAAE,MAAM,CAAA;KACjB,CAAC;IAGF,KAAY,YAAY,GAAG;QACzB,0BAA0B,EAAE,MAAM,CAAC;QACnC,yBAAyB,EAAE,MAAM,CAAC;QAClC,iBAAiB,EAAE,MAAM,CAAC;QAC1B,iBAAiB,EAAE,MAAM,CAAA;KAC1B,CAAC;IAEF,KAAY,YAAY,GAAG;QACzB,QAAQ,EAAE,MAAM,CAAC;QACjB,cAAc,EAAE,MAAM,CAAC;QACvB,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,cAAc,EAAE,MAAM,CAAC;KACxB,CAAC;IAEF,KAAY,qBAAqB,GAAG;QAClC,iBAAiB,EAAE,MAAM,CAAC;QAC1B,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IAEF,KAAY,oBAAoB,GAAG;QACjC,gBAAgB,EAAE,MAAM,CAAC;QACzB,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IAEF,KAAY,WAAW,GAAG;QACxB,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAA;KACpB,CAAC;CACH"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+
6
+ //# sourceMappingURL=api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/referral/api.ts"],"names":[],"rangeMappings":"","mappings":""}
@@ -0,0 +1,2 @@
1
+ export declare function formatDate(date: Date): string;
2
+ //# sourceMappingURL=format.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../src/referral/format.ts"],"names":[],"mappings":"AAAA,wBAAgB,UAAU,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,CAM3C"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "formatDate", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return formatDate;
9
+ }
10
+ });
11
+ function formatDate(date) {
12
+ const year = date.getFullYear();
13
+ const month = String(date.getMonth() + 1).padStart(2, '0');
14
+ const day = String(date.getDate()).padStart(2, '0');
15
+ return `${year}-${month}-${day}`;
16
+ }
17
+
18
+ //# sourceMappingURL=format.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/referral/format.ts"],"sourcesContent":["export function formatDate(date: Date): string {\n const year = date.getFullYear();\n const month = String(date.getMonth() + 1).padStart(2, '0');\n const day = String(date.getDate()).padStart(2, '0');\n \n return `${year}-${month}-${day}`;\n }\n "],"names":["formatDate","date","year","getFullYear","month","String","getMonth","padStart","day","getDate"],"rangeMappings":";;;;;;;;;;;;;;;","mappings":";;;;+BAAgBA;;;eAAAA;;;AAAT,SAASA,WAAWC,IAAU;IACjC,MAAMC,OAAOD,KAAKE,WAAW;IAC7B,MAAMC,QAAQC,OAAOJ,KAAKK,QAAQ,KAAK,GAAGC,QAAQ,CAAC,GAAG;IACtD,MAAMC,MAAMH,OAAOJ,KAAKQ,OAAO,IAAIF,QAAQ,CAAC,GAAG;IAE/C,OAAO,CAAC,EAAEL,KAAK,CAAC,EAAEE,MAAM,CAAC,EAAEI,IAAI,CAAC;AAClC"}
@@ -0,0 +1,9 @@
1
+ export { useCommission } from "./useCommission";
2
+ export { useDaily } from "./useDaily";
3
+ export { useDistribution } from "./useDistribution";
4
+ export { useReferralRebateSummary } from "./useReferralRebateSummary";
5
+ export { useRefereeHistory } from "./useRefereeHistory";
6
+ export { useRefereeInfo } from "./useRefereeInfo";
7
+ export { useRefereeRebateSummary } from "./useRefereeRebateSummary";
8
+ export * from "./api";
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/referral/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,cAAc,OAAO,CAAC"}
@@ -0,0 +1,56 @@
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
+ useCommission: function() {
13
+ return _useCommission.useCommission;
14
+ },
15
+ useDaily: function() {
16
+ return _useDaily.useDaily;
17
+ },
18
+ useDistribution: function() {
19
+ return _useDistribution.useDistribution;
20
+ },
21
+ useRefereeHistory: function() {
22
+ return _useRefereeHistory.useRefereeHistory;
23
+ },
24
+ useRefereeInfo: function() {
25
+ return _useRefereeInfo.useRefereeInfo;
26
+ },
27
+ useRefereeRebateSummary: function() {
28
+ return _useRefereeRebateSummary.useRefereeRebateSummary;
29
+ },
30
+ useReferralRebateSummary: function() {
31
+ return _useReferralRebateSummary.useReferralRebateSummary;
32
+ }
33
+ });
34
+ const _useCommission = require("./useCommission");
35
+ const _useDaily = require("./useDaily");
36
+ const _useDistribution = require("./useDistribution");
37
+ const _useReferralRebateSummary = require("./useReferralRebateSummary");
38
+ const _useRefereeHistory = require("./useRefereeHistory");
39
+ const _useRefereeInfo = require("./useRefereeInfo");
40
+ const _useRefereeRebateSummary = require("./useRefereeRebateSummary");
41
+ _export_star(require("./api"), exports);
42
+ function _export_star(from, to) {
43
+ Object.keys(from).forEach(function(k) {
44
+ if (k !== "default" && !Object.prototype.hasOwnProperty.call(to, k)) {
45
+ Object.defineProperty(to, k, {
46
+ enumerable: true,
47
+ get: function() {
48
+ return from[k];
49
+ }
50
+ });
51
+ }
52
+ });
53
+ return from;
54
+ }
55
+
56
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/referral/index.ts"],"sourcesContent":["export { useCommission } from \"./useCommission\";\nexport { useDaily } from \"./useDaily\";\nexport { useDistribution } from \"./useDistribution\";\nexport { useReferralRebateSummary } from \"./useReferralRebateSummary\";\nexport { useRefereeHistory } from \"./useRefereeHistory\";\nexport { useRefereeInfo } from \"./useRefereeInfo\";\nexport { useRefereeRebateSummary } from \"./useRefereeRebateSummary\";\nexport * from \"./api\";\n"],"names":["useCommission","useDaily","useDistribution","useRefereeHistory","useRefereeInfo","useRefereeRebateSummary","useReferralRebateSummary"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";;;;;;;;;;;IAASA,aAAa;eAAbA,4BAAa;;IACbC,QAAQ;eAARA,kBAAQ;;IACRC,eAAe;eAAfA,gCAAe;;IAEfC,iBAAiB;eAAjBA,oCAAiB;;IACjBC,cAAc;eAAdA,8BAAc;;IACdC,uBAAuB;eAAvBA,gDAAuB;;IAHvBC,wBAAwB;eAAxBA,kDAAwB;;;+BAHH;0BACL;iCACO;0CACS;mCACP;gCACH;yCACS;qBAC1B"}
@@ -0,0 +1,7 @@
1
+ export declare const generateKeyFun: (args: {
2
+ path: string;
3
+ startDate?: string;
4
+ endDate?: string;
5
+ size?: number;
6
+ }) => (pageIndex: number, previousPageData: any) => string | null;
7
+ //# sourceMappingURL=swr.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"swr.d.ts","sourceRoot":"","sources":["../../src/referral/swr.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,cAAc,SAChB;IACH,IAAI,EAAE,MAAM,CAAC;IAEb,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,IAAI,CAAC,EAAE,MAAM,CAAA;CAChB,iBACe,MAAM,oBAAoB,GAAG,KAAG,MAAM,GAAG,IAoBpD,CAAC"}
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "generateKeyFun", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return generateKeyFun;
9
+ }
10
+ });
11
+ const generateKeyFun = (args)=>(pageIndex, previousPageData)=>{
12
+ // reached the end
13
+ if (previousPageData && !previousPageData.rows?.length) return null;
14
+ const { path, startDate, endDate, size = 100 } = args;
15
+ const search = new URLSearchParams([
16
+ [
17
+ "size",
18
+ size.toString()
19
+ ],
20
+ [
21
+ "page",
22
+ `${pageIndex + 1}`
23
+ ]
24
+ ]);
25
+ if (startDate) {
26
+ search.set(`start_date`, startDate);
27
+ }
28
+ if (endDate) {
29
+ search.set(`end_date`, endDate);
30
+ }
31
+ return `${path}?${search.toString()}`;
32
+ };
33
+
34
+ //# sourceMappingURL=swr.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/referral/swr.ts"],"sourcesContent":["\nexport const generateKeyFun =\n (args: {\n path: string,\n //** YYYY-MM-dd */\n startDate?: string;\n //** YYYY-MM-dd */\n endDate?: string;\n //** default is 100 */\n size?: number\n }) =>\n (pageIndex: number, previousPageData: any): string | null => {\n // reached the end\n if (previousPageData && !previousPageData.rows?.length) return null;\n\n const { path, startDate, endDate, size = 100 } = args;\n\n const search = new URLSearchParams([\n [\"size\", size.toString()],\n [\"page\", `${pageIndex + 1}`],\n ]);\n\n if (startDate) {\n search.set(`start_date`, startDate);\n }\n\n if (endDate) {\n search.set(`end_date`, endDate);\n }\n\n return `${path}?${search.toString()}`;\n };"],"names":["generateKeyFun","args","pageIndex","previousPageData","rows","length","path","startDate","endDate","size","search","URLSearchParams","toString","set"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";;;;+BACaA;;;eAAAA;;;AAAN,MAAMA,iBACT,CAACC,OASG,CAACC,WAAmBC;QAChB,kBAAkB;QAClB,IAAIA,oBAAoB,CAACA,iBAAiBC,IAAI,EAAEC,QAAQ,OAAO;QAE/D,MAAM,EAAEC,IAAI,EAAEC,SAAS,EAAEC,OAAO,EAAEC,OAAO,GAAG,EAAE,GAAGR;QAEjD,MAAMS,SAAS,IAAIC,gBAAgB;YAC/B;gBAAC;gBAAQF,KAAKG,QAAQ;aAAG;YACzB;gBAAC;gBAAQ,CAAC,EAAEV,YAAY,EAAE,CAAC;aAAC;SAC/B;QAED,IAAIK,WAAW;YACXG,OAAOG,GAAG,CAAC,CAAC,UAAU,CAAC,EAAEN;QAC7B;QAEA,IAAIC,SAAS;YACTE,OAAOG,GAAG,CAAC,CAAC,QAAQ,CAAC,EAAEL;QAC3B;QAEA,OAAO,CAAC,EAAEF,KAAK,CAAC,EAAEI,OAAOE,QAAQ,GAAG,CAAC;IACzC"}
@@ -0,0 +1,4 @@
1
+ export declare const useCommission: (options?: {
2
+ size?: number;
3
+ }) => any[];
4
+ //# sourceMappingURL=useCommission.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useCommission.d.ts","sourceRoot":"","sources":["../../src/referral/useCommission.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,aAAa,aAAc;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,UA4CxD,CAAA"}
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "useCommission", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return useCommission;
9
+ }
10
+ });
11
+ const _react = require("react");
12
+ const _useDistribution = require("./useDistribution");
13
+ const _useRefereeHistory = require("./useRefereeHistory");
14
+ const useCommission = (options)=>{
15
+ const [referee, { refresh: refreshReferee, loadMore: loadMoreReferee }] = (0, _useRefereeHistory.useRefereeHistory)({
16
+ size: options?.size
17
+ });
18
+ const [distribution, { refresh: refreshDistribution, loadMore: loadMoreDistribution, isLoading }] = (0, _useDistribution.useDistribution)({
19
+ size: options?.size
20
+ });
21
+ const commissionData = (0, _react.useMemo)(()=>{
22
+ return distribution?.map((item)=>{
23
+ if ("updated_time" in item) {
24
+ const updateTime = new Date(item.updated_time);
25
+ const index = referee?.findIndex((e)=>{
26
+ if ("date" in e) {
27
+ return compareDate(updateTime, new Date(e.date));
28
+ }
29
+ return false;
30
+ });
31
+ if (index !== -1) {
32
+ return {
33
+ ...item,
34
+ volume: referee?.[index].volume
35
+ };
36
+ }
37
+ }
38
+ return {
39
+ ...item
40
+ };
41
+ });
42
+ }, [
43
+ referee,
44
+ distribution
45
+ ]);
46
+ const loadMore = ()=>{
47
+ loadMoreReferee();
48
+ loadMoreDistribution();
49
+ };
50
+ const refresh = ()=>{
51
+ refreshReferee();
52
+ refreshDistribution();
53
+ };
54
+ return [
55
+ commissionData,
56
+ {
57
+ loadMore,
58
+ refresh,
59
+ isLoading
60
+ }
61
+ ];
62
+ };
63
+ //** compare two date, yyyy-mm-dd */
64
+ function compareDate(d1, d2) {
65
+ const isEqual = d1 && d2 && d1.getDay() === d2.getDay() && d1.getMonth() === d2.getMonth() && d1.getFullYear() === d2.getFullYear();
66
+ return isEqual;
67
+ }
68
+
69
+ //# sourceMappingURL=useCommission.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/referral/useCommission.ts"],"sourcesContent":["import { useMemo } from \"react\";\nimport { useDistribution } from \"./useDistribution\";\nimport { useRefereeHistory } from \"./useRefereeHistory\";\n\nexport const useCommission = (options?: { size?: number }) => {\n\n const [referee, { refresh: refreshReferee, loadMore: loadMoreReferee, }] = useRefereeHistory({ size: options?.size });\n\n const [distribution, { refresh: refreshDistribution, loadMore: loadMoreDistribution, isLoading }] = useDistribution({ size: options?.size });\n\n const commissionData = useMemo(() => {\n\n return distribution?.map((item: any) => {\n\n if (\"updated_time\" in item) {\n const updateTime = new Date(item.updated_time);\n\n const index = referee?.findIndex((e: any) => {\n if (\"date\" in e) {\n return compareDate(updateTime, new Date(e.date));\n }\n return false;\n });\n if (index !== -1) {\n return { ...item, volume: referee?.[index].volume };\n }\n }\n return { ...item };\n\n });\n\n }, [referee, distribution]);\n\n const loadMore = () => {\n loadMoreReferee();\n loadMoreDistribution();\n }\n\n const refresh = () => {\n refreshReferee();\n refreshDistribution();\n }\n\n return [commissionData, {\n loadMore,\n refresh,\n isLoading\n }];\n}\n\n//** compare two date, yyyy-mm-dd */\nfunction compareDate(d1?: Date, d2?: Date) {\n const isEqual = d1 && d2 &&\n d1.getDay() === d2.getDay()\n && d1.getMonth() === d2.getMonth()\n && d1.getFullYear() === d2.getFullYear();\n\n\n return isEqual;\n}"],"names":["useCommission","options","referee","refresh","refreshReferee","loadMore","loadMoreReferee","useRefereeHistory","size","distribution","refreshDistribution","loadMoreDistribution","isLoading","useDistribution","commissionData","useMemo","map","item","updateTime","Date","updated_time","index","findIndex","e","compareDate","date","volume","d1","d2","isEqual","getDay","getMonth","getFullYear"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";;;;+BAIaA;;;eAAAA;;;uBAJW;iCACQ;mCACE;AAE3B,MAAMA,gBAAgB,CAACC;IAE1B,MAAM,CAACC,SAAS,EAAEC,SAASC,cAAc,EAAEC,UAAUC,eAAe,EAAG,CAAC,GAAGC,IAAAA,oCAAiB,EAAC;QAAEC,MAAMP,SAASO;IAAK;IAEnH,MAAM,CAACC,cAAc,EAAEN,SAASO,mBAAmB,EAAEL,UAAUM,oBAAoB,EAAEC,SAAS,EAAE,CAAC,GAAGC,IAAAA,gCAAe,EAAC;QAAEL,MAAMP,SAASO;IAAK;IAE1I,MAAMM,iBAAiBC,IAAAA,cAAO,EAAC;QAE3B,OAAON,cAAcO,IAAI,CAACC;YAEtB,IAAI,kBAAkBA,MAAM;gBACxB,MAAMC,aAAa,IAAIC,KAAKF,KAAKG,YAAY;gBAE7C,MAAMC,QAAQnB,SAASoB,UAAU,CAACC;oBAC9B,IAAI,UAAUA,GAAG;wBACb,OAAOC,YAAYN,YAAY,IAAIC,KAAKI,EAAEE,IAAI;oBAClD;oBACA,OAAO;gBACX;gBACA,IAAIJ,UAAU,CAAC,GAAG;oBACd,OAAO;wBAAE,GAAGJ,IAAI;wBAAES,QAAQxB,SAAS,CAACmB,MAAM,CAACK;oBAAO;gBACtD;YACJ;YACA,OAAO;gBAAE,GAAGT,IAAI;YAAC;QAErB;IAEJ,GAAG;QAACf;QAASO;KAAa;IAE1B,MAAMJ,WAAW;QACbC;QACAK;IACJ;IAEA,MAAMR,UAAU;QACZC;QACAM;IACJ;IAEA,OAAO;QAACI;QAAgB;YACpBT;YACAF;YACAS;QACJ;KAAE;AACN;AAEA,oCAAoC;AACpC,SAASY,YAAYG,EAAS,EAAEC,EAAS;IACrC,MAAMC,UAAUF,MAAMC,MAClBD,GAAGG,MAAM,OAAOF,GAAGE,MAAM,MACtBH,GAAGI,QAAQ,OAAOH,GAAGG,QAAQ,MAC7BJ,GAAGK,WAAW,OAAOJ,GAAGI,WAAW;IAG1C,OAAOH;AACX"}
@@ -0,0 +1,9 @@
1
+ import { RefferalAPI } from "./api";
2
+ export declare const useDaily: (options?: {
3
+ startDate?: Date;
4
+ endDate?: Date;
5
+ }) => {
6
+ data?: RefferalAPI.DayliVolume[] | undefined;
7
+ mutate: any;
8
+ };
9
+ //# sourceMappingURL=useDaily.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDaily.d.ts","sourceRoot":"","sources":["../../src/referral/useDaily.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAEpC,eAAO,MAAM,QAAQ,aAAc;IAE/B,SAAS,CAAC,EAAE,IAAI,CAAC;IAEjB,OAAO,CAAC,EAAE,IAAI,CAAA;CACjB;;YAEW,GAAG;CAsBd,CAAA"}
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "useDaily", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return useDaily;
9
+ }
10
+ });
11
+ const _usePrivateQuery = require("../usePrivateQuery");
12
+ const _format = require("./format");
13
+ const useDaily = (options)=>{
14
+ const path = "/v1/volume/user/daily";
15
+ const endDate = options?.startDate || new Date();
16
+ const startDate = options?.endDate || new Date(Date.now() - 86400000 * 30);
17
+ const start_date = (0, _format.formatDate)(startDate);
18
+ const end_date = (0, _format.formatDate)(endDate);
19
+ const url = `${path}?start_date=${start_date}&end_date=${end_date}`;
20
+ const { data: dailyVolume, mutate } = (0, _usePrivateQuery.usePrivateQuery)(url, {
21
+ revalidateOnFocus: true
22
+ });
23
+ return {
24
+ data: dailyVolume,
25
+ mutate
26
+ };
27
+ };
28
+
29
+ //# sourceMappingURL=useDaily.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/referral/useDaily.ts"],"sourcesContent":["\nimport { usePrivateQuery } from \"../usePrivateQuery\";\nimport { RefferalAPI } from \"./api\";\nimport { formatDate } from \"./format\";\nexport const useDaily = (options?: {\n //** default Date() - 30d */\n startDate?: Date,\n //** default Date() */\n endDate?: Date\n}): {\n data?: RefferalAPI.DayliVolume[],\n mutate: any,\n} => {\n\n const path = \"/v1/volume/user/daily\";\n const endDate = options?.startDate || new Date();\n const startDate = options?.endDate || new Date(Date.now() - 86400000 * 30);\n\n const start_date = formatDate(startDate);\n const end_date = formatDate(endDate);\n\n const url = `${path}?start_date=${start_date}&end_date=${end_date}`;\n const {\n data: dailyVolume,\n mutate,\n } = usePrivateQuery<RefferalAPI.DayliVolume[]>(url, {\n revalidateOnFocus: true\n });\n\n return {\n data: dailyVolume,\n mutate,\n }\n}\n\n\n\n"],"names":["useDaily","options","path","endDate","startDate","Date","now","start_date","formatDate","end_date","url","data","dailyVolume","mutate","usePrivateQuery","revalidateOnFocus"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";;;;+BAIaA;;;eAAAA;;;iCAHmB;wBAEL;AACpB,MAAMA,WAAW,CAACC;IAUrB,MAAMC,OAAO;IACb,MAAMC,UAAUF,SAASG,aAAa,IAAIC;IAC1C,MAAMD,YAAYH,SAASE,WAAW,IAAIE,KAAKA,KAAKC,GAAG,KAAK,WAAW;IAEvE,MAAMC,aAAaC,IAAAA,kBAAU,EAACJ;IAC9B,MAAMK,WAAWD,IAAAA,kBAAU,EAACL;IAE5B,MAAMO,MAAM,CAAC,EAAER,KAAK,YAAY,EAAEK,WAAW,UAAU,EAAEE,SAAS,CAAC;IACnE,MAAM,EACFE,MAAMC,WAAW,EACjBC,MAAM,EACT,GAAGC,IAAAA,gCAAe,EAA4BJ,KAAK;QAChDK,mBAAmB;IACvB;IAEA,OAAO;QACHJ,MAAMC;QACNC;IACJ;AACJ"}
@@ -0,0 +1,9 @@
1
+ type Params = {
2
+ size?: number;
3
+ startDate?: string;
4
+ endDate?: string;
5
+ initialSize?: number;
6
+ };
7
+ export declare const useDistribution: (params: Params) => any;
8
+ export {};
9
+ //# sourceMappingURL=useDistribution.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDistribution.d.ts","sourceRoot":"","sources":["../../src/referral/useDistribution.ts"],"names":[],"mappings":"AAKA,KAAK,MAAM,GAAG;IAEV,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB,CAAA;AAED,eAAO,MAAM,eAAe,WAAY,MAAM,KAAG,GA+ChD,CAAA"}