@orderly.network/hooks 1.1.4-alpha.8 → 1.1.4-alpha.9

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.
package/dist/index.d.mts CHANGED
@@ -25,7 +25,7 @@ declare global {
25
25
  };
26
26
  }
27
27
  }
28
- declare const _default: "1.1.4-alpha.8";
28
+ declare const _default: "1.1.4-alpha.9";
29
29
 
30
30
  type useQueryOptions<T> = SWRConfiguration & {
31
31
  formatter?: (data: any) => T;
@@ -181,8 +181,15 @@ type OrderbookData = {
181
181
  asks: OrderBookItem[];
182
182
  bids: OrderBookItem[];
183
183
  };
184
+ /**
185
+ * Configuration for the Order Book
186
+ * @level Indicates the number of data entries to return for ask/bid, default is 10
187
+ * @padding Whether to fill in when the actual data entries are less than the level. If filled, it will add [nan, nan, nan, nan]
188
+ * default is true
189
+ */
184
190
  type OrderbookOptions = {
185
191
  level?: number;
192
+ padding?: boolean;
186
193
  };
187
194
  /**
188
195
  * @name useOrderbookStream
package/dist/index.d.ts CHANGED
@@ -25,7 +25,7 @@ declare global {
25
25
  };
26
26
  }
27
27
  }
28
- declare const _default: "1.1.4-alpha.8";
28
+ declare const _default: "1.1.4-alpha.9";
29
29
 
30
30
  type useQueryOptions<T> = SWRConfiguration & {
31
31
  formatter?: (data: any) => T;
@@ -181,8 +181,15 @@ type OrderbookData = {
181
181
  asks: OrderBookItem[];
182
182
  bids: OrderBookItem[];
183
183
  };
184
+ /**
185
+ * Configuration for the Order Book
186
+ * @level Indicates the number of data entries to return for ask/bid, default is 10
187
+ * @padding Whether to fill in when the actual data entries are less than the level. If filled, it will add [nan, nan, nan, nan]
188
+ * default is true
189
+ */
184
190
  type OrderbookOptions = {
185
191
  level?: number;
192
+ padding?: boolean;
186
193
  };
187
194
  /**
188
195
  * @name useOrderbookStream
package/dist/index.js CHANGED
@@ -28,9 +28,9 @@ var useSWRSubscription__default = /*#__PURE__*/_interopDefault(useSWRSubscriptio
28
28
  // src/version.ts
29
29
  if (typeof window !== "undefined") {
30
30
  window.__ORDERLY_VERSION__ = window.__ORDERLY_VERSION__ || {};
31
- window.__ORDERLY_VERSION__["@orderly.network/hooks"] = "1.1.4-alpha.8";
31
+ window.__ORDERLY_VERSION__["@orderly.network/hooks"] = "1.1.4-alpha.9";
32
32
  }
33
- var version_default = "1.1.4-alpha.8";
33
+ var version_default = "1.1.4-alpha.9";
34
34
  var fetcher = (url, init = {}, queryOptions) => net.get(url, init, queryOptions?.formatter);
35
35
  var OrderlyContext = React.createContext({
36
36
  // configStore: new MemoryConfigStore(),
@@ -916,7 +916,7 @@ var useSymbolsInfo = () => {
916
916
  });
917
917
  return createGetter(data);
918
918
  };
919
- var paddingFn = (len) => Array(len).fill([Number.NaN, Number.NaN, Number.NaN]);
919
+ var paddingFn = (len) => Array(len).fill([Number.NaN, Number.NaN, Number.NaN, Number.NaN]);
920
920
  var asksSortFn = (a, b) => a[0] - b[0];
921
921
  var bidsSortFn = (a, b) => b[0] - a[0];
922
922
  var reduceItems = (depth, level, data, asks = false) => {
@@ -967,7 +967,7 @@ var reduceItems = (depth, level, data, asks = false) => {
967
967
  }
968
968
  return result;
969
969
  };
970
- var reduceOrderbook = (depth, level, data) => {
970
+ var reduceOrderbook = (depth, level, padding, data) => {
971
971
  let asks = reduceItems(depth, level, data.asks, true);
972
972
  let bids = reduceItems(depth, level, data.bids);
973
973
  if (asks.length !== 0 && bids.length !== 0 && asks[0][0] <= bids[0][0]) {
@@ -998,8 +998,10 @@ var reduceOrderbook = (depth, level, data) => {
998
998
  }
999
999
  }
1000
1000
  asks = asks.reverse();
1001
- asks = asks.length < level ? paddingFn(level - asks.length).concat(asks) : asks;
1002
- bids = bids.length < level ? bids.concat(paddingFn(level - bids.length)) : bids;
1001
+ if (padding) {
1002
+ asks = asks.length < level ? paddingFn(level - asks.length).concat(asks) : asks;
1003
+ bids = bids.length < level ? bids.concat(paddingFn(level - bids.length)) : bids;
1004
+ }
1003
1005
  return {
1004
1006
  asks,
1005
1007
  bids
@@ -1045,6 +1047,7 @@ var useOrderbookStream = (symbol, initial = INIT_DATA, options) => {
1045
1047
  throw new types.SDKError("useOrderbookStream requires a symbol");
1046
1048
  }
1047
1049
  const level = options?.level ?? 10;
1050
+ const padding = options?.padding ?? true;
1048
1051
  const [requestData, setRequestData] = React.useState(null);
1049
1052
  const [data, setData] = React.useState(initial);
1050
1053
  const [isLoading, setIsLoading] = React.useState(true);
@@ -1097,7 +1100,7 @@ var useOrderbookStream = (symbol, initial = INIT_DATA, options) => {
1097
1100
  ignore = true;
1098
1101
  setData(INIT_DATA);
1099
1102
  };
1100
- }, [symbol, depth]);
1103
+ }, [symbol]);
1101
1104
  const { data: markPrice } = useMarkPrice(symbol);
1102
1105
  React.useEffect(() => {
1103
1106
  if (!requestData)
@@ -1146,16 +1149,16 @@ var useOrderbookStream = (symbol, initial = INIT_DATA, options) => {
1146
1149
  React.useEffect(() => {
1147
1150
  prevMiddlePrice.current = middlePrice;
1148
1151
  }, [middlePrice]);
1149
- const reducedData = reduceOrderbook(depth, level, {
1152
+ const reducedData = reduceOrderbook(depth, level, padding, {
1150
1153
  asks: [...data.asks],
1151
1154
  bids: [...data.bids]
1152
1155
  });
1153
1156
  React.useEffect(() => {
1154
1157
  eventEmitter.emit("orderbook:update", [
1155
- reducedData.asks[0][0],
1156
- reducedData.bids[0][0]
1158
+ reducedData.asks?.[0]?.[0],
1159
+ reducedData.bids?.[0]?.[0]
1157
1160
  ]);
1158
- }, [reducedData.asks[0][0], reducedData.bids[0][0]]);
1161
+ }, [reducedData.asks?.[0]?.[0], reducedData.bids?.[0]?.[0]]);
1159
1162
  return [
1160
1163
  {
1161
1164
  asks: reducedData.asks.slice(-level),
@@ -2212,6 +2215,7 @@ var StopLimitOrderCreator = class extends LimitOrderCreator {
2212
2215
  this.fixOrderQuantity(order3, config);
2213
2216
  delete order3["order_quantity"];
2214
2217
  delete order3["order_price"];
2218
+ delete order3["order_type"];
2215
2219
  delete order3["isStopOrder"];
2216
2220
  delete order3["total"];
2217
2221
  return order3;
@@ -2274,16 +2278,17 @@ var StopMarketOrderCreator = class extends LimitOrderCreator {
2274
2278
  create(values, _) {
2275
2279
  const result = {
2276
2280
  ...this.baseOrder(values),
2277
- order_price: values.order_price,
2281
+ // order_price: values.order_price,
2278
2282
  trigger_price: values.trigger_price,
2279
2283
  algo_type: "STOP",
2280
2284
  type: "MARKET",
2281
2285
  quantity: values["order_quantity"],
2282
- price: values["order_price"],
2286
+ // price: values["order_price"],
2283
2287
  trigger_price_type: "MARK_PRICE"
2284
2288
  };
2285
2289
  delete result["order_quantity"];
2286
2290
  delete result["order_price"];
2291
+ delete result["order_type"];
2287
2292
  delete result["isStopOrder"];
2288
2293
  delete result["total"];
2289
2294
  return result;
@@ -2361,7 +2366,6 @@ function useOrderEntry(symbolOrOrder, sideOrOptions, reduceOnly, options) {
2361
2366
  const prevOrderData = React.useRef(null);
2362
2367
  const orderDataCache = React.useRef(null);
2363
2368
  const notSupportData = React.useRef({});
2364
- const [doCreateOrder, { data, error, reset, isMutating }] = useMutation(orderDataCache?.current?.isStopOrder ? "/v1/algo/order" : "/v1/order");
2365
2369
  const [errors, setErrors] = React.useState(null);
2366
2370
  const ee = useEventEmitter();
2367
2371
  const fieldDirty = React.useRef({});
@@ -2491,6 +2495,8 @@ function useOrderEntry(symbolOrOrder, sideOrOptions, reduceOnly, options) {
2491
2495
  needParse?.side,
2492
2496
  needParse?.visible_quantity
2493
2497
  ]);
2498
+ const isStopOrder = parsedData?.order_type === types.OrderType.STOP_LIMIT || parsedData?.order_type === types.OrderType.STOP_MARKET;
2499
+ const [doCreateOrder, { data, error, reset, isMutating }] = useMutation(isStopOrder ? "/v1/algo/order" : "/v1/order");
2494
2500
  const createOrder = (values) => {
2495
2501
  if (!values.symbol) {
2496
2502
  throw new types.SDKError("symbol is error");