@loafmarkets/ui 0.1.430 → 0.1.431

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
@@ -1167,9 +1167,9 @@ type PropertyInspectionTimesProps = {
1167
1167
  declare function PropertyInspectionTimes({ isAuthenticated, slots, loading, error, bookingSlotId, bookingStatus, bookingError, onBook, onRetry, onSignIn, }: PropertyInspectionTimesProps): react_jsx_runtime.JSX.Element;
1168
1168
 
1169
1169
  type OrderSide = 'BUY' | 'SELL';
1170
- type OrderType = 'MARKET' | 'LIMIT';
1170
+ type OrderType = 'MARKET' | 'LIMIT' | 'STOP_LIMIT' | 'STOP_MARKET' | 'TAKE_LIMIT' | 'TAKE_MARKET';
1171
1171
  type TimeInForce = 'GTC' | 'IOC' | 'FOK' | 'GTD';
1172
- type OrderStatus = 'OPEN' | 'PARTIALLY_FILLED' | 'FILLED' | 'CANCELLED' | 'REJECTED';
1172
+ type OrderStatus = 'OPEN' | 'PARTIALLY_FILLED' | 'FILLED' | 'CANCELLED' | 'REJECTED' | 'PENDING' | 'ARMED' | 'PLACED' | 'FAILED';
1173
1173
  interface OfferingOrder {
1174
1174
  readonly ipoOrderId?: number;
1175
1175
  readonly tokenName: string;
@@ -1193,10 +1193,13 @@ interface OrderHistoryItem {
1193
1193
  readonly quantity: number;
1194
1194
  readonly price: number | null;
1195
1195
  readonly status: OrderStatus;
1196
- readonly filledQuantity: number;
1196
+ /** Absent on a conditional order — its fills belong to the order it places (shared-types src/index.ts:308). */
1197
+ readonly filledQuantity?: number;
1197
1198
  readonly rejectionReason: string | null;
1198
1199
  readonly deadline: number;
1199
- readonly filledAt: number | null;
1200
+ readonly filledAt?: number | null;
1201
+ /** Stop/take and TP/SL legs only. */
1202
+ readonly triggerPrice?: number;
1200
1203
  readonly cancelledAt: number | null;
1201
1204
  readonly createdAt: number;
1202
1205
  readonly isOfferingOrder?: boolean;
package/dist/index.d.ts CHANGED
@@ -1167,9 +1167,9 @@ type PropertyInspectionTimesProps = {
1167
1167
  declare function PropertyInspectionTimes({ isAuthenticated, slots, loading, error, bookingSlotId, bookingStatus, bookingError, onBook, onRetry, onSignIn, }: PropertyInspectionTimesProps): react_jsx_runtime.JSX.Element;
1168
1168
 
1169
1169
  type OrderSide = 'BUY' | 'SELL';
1170
- type OrderType = 'MARKET' | 'LIMIT';
1170
+ type OrderType = 'MARKET' | 'LIMIT' | 'STOP_LIMIT' | 'STOP_MARKET' | 'TAKE_LIMIT' | 'TAKE_MARKET';
1171
1171
  type TimeInForce = 'GTC' | 'IOC' | 'FOK' | 'GTD';
1172
- type OrderStatus = 'OPEN' | 'PARTIALLY_FILLED' | 'FILLED' | 'CANCELLED' | 'REJECTED';
1172
+ type OrderStatus = 'OPEN' | 'PARTIALLY_FILLED' | 'FILLED' | 'CANCELLED' | 'REJECTED' | 'PENDING' | 'ARMED' | 'PLACED' | 'FAILED';
1173
1173
  interface OfferingOrder {
1174
1174
  readonly ipoOrderId?: number;
1175
1175
  readonly tokenName: string;
@@ -1193,10 +1193,13 @@ interface OrderHistoryItem {
1193
1193
  readonly quantity: number;
1194
1194
  readonly price: number | null;
1195
1195
  readonly status: OrderStatus;
1196
- readonly filledQuantity: number;
1196
+ /** Absent on a conditional order — its fills belong to the order it places (shared-types src/index.ts:308). */
1197
+ readonly filledQuantity?: number;
1197
1198
  readonly rejectionReason: string | null;
1198
1199
  readonly deadline: number;
1199
- readonly filledAt: number | null;
1200
+ readonly filledAt?: number | null;
1201
+ /** Stop/take and TP/SL legs only. */
1202
+ readonly triggerPrice?: number;
1200
1203
  readonly cancelledAt: number | null;
1201
1204
  readonly createdAt: number;
1202
1205
  readonly isOfferingOrder?: boolean;
package/dist/index.js CHANGED
@@ -16717,12 +16717,22 @@ var TickerTag = styled10__default.default.span`
16717
16717
  margin-left: 0.3rem;
16718
16718
  `;
16719
16719
  var sideLabel = (side) => side?.toUpperCase() === "SELL" ? "Sell" : "Buy";
16720
+ var isLiveOrder = (o) => o.status === "OPEN" || o.status === "PARTIALLY_FILLED" || o.status === "PENDING" || o.status === "ARMED";
16721
+ var isMarketType = (type) => type === "MARKET" || type.endsWith("_MARKET");
16722
+ var filledLabel = (order) => order.filledQuantity == null ? "\u2014" : `${order.quantity > 0 ? Math.round(order.filledQuantity / order.quantity * 100) : 0}%`;
16723
+ var TriggerText = styled10__default.default.span`
16724
+ display: block;
16725
+ font-size: 0.68rem;
16726
+ color: rgba(255, 255, 255, 0.5);
16727
+ font-variant-numeric: tabular-nums;
16728
+ margin-top: 0.1rem;
16729
+ `;
16720
16730
  var getOrderStatusMeta = (statusRaw) => {
16721
16731
  const status = statusRaw.toUpperCase();
16722
- if (status === "FILLED" || status === "CONFIRMED" || status === "ALLOCATED") {
16732
+ if (status === "FILLED" || status === "CONFIRMED" || status === "ALLOCATED" || status === "PLACED") {
16723
16733
  return { color: "#0ecb81", bg: "rgba(14,203,129,0.1)" };
16724
16734
  }
16725
- if (status === "CANCELLED" || status === "CANCELED" || status === "REJECTED") {
16735
+ if (status === "CANCELLED" || status === "CANCELED" || status === "REJECTED" || status === "FAILED") {
16726
16736
  return { color: "#f6465d", bg: "rgba(246,70,93,0.12)" };
16727
16737
  }
16728
16738
  return { color: "#E6C87E", bg: "rgba(240,185,11,0.15)" };
@@ -16937,14 +16947,12 @@ function PortfolioActivityPanel({
16937
16947
  [transfers]
16938
16948
  );
16939
16949
  const positionsCount = positions.length;
16940
- const openOrdersCount = React9.useMemo(
16941
- () => openOrders.filter((o) => o.status === "OPEN" || o.status === "PARTIALLY_FILLED").length,
16950
+ const openOrdersCount = React9.useMemo(() => openOrders.filter(isLiveOrder).length, [openOrders]);
16951
+ const cancellableOrdersCount = React9.useMemo(
16952
+ () => openOrders.filter((o) => !o.isOfferingOrder && isLiveOrder(o)).length,
16942
16953
  [openOrders]
16943
16954
  );
16944
- const pendingHistoryCount = React9.useMemo(
16945
- () => mergedOrderHistory.filter((o) => o.status === "OPEN" || o.status === "PARTIALLY_FILLED").length,
16946
- [mergedOrderHistory]
16947
- );
16955
+ const pendingHistoryCount = React9.useMemo(() => mergedOrderHistory.filter(isLiveOrder).length, [mergedOrderHistory]);
16948
16956
  const pendingOfferingsCount = React9.useMemo(
16949
16957
  () => offeringOrders.filter((o) => {
16950
16958
  const s = o.status.toUpperCase();
@@ -17269,7 +17277,7 @@ function PortfolioActivityPanel({
17269
17277
  /* @__PURE__ */ jsxRuntime.jsx(CDValue, { children: formatTimestamp(order.createdAt) })
17270
17278
  ] })
17271
17279
  ] }),
17272
- order.status === "REJECTED" && order.rejectionReason && /* @__PURE__ */ jsxRuntime.jsx(CDValue, { style: { marginTop: "0.4rem", color: "#f6465d", fontSize: "0.7rem" }, children: order.rejectionReason })
17280
+ order.rejectionReason && /* @__PURE__ */ jsxRuntime.jsx(CDValue, { style: { marginTop: "0.4rem", color: "#f6465d", fontSize: "0.7rem" }, children: order.rejectionReason })
17273
17281
  ] })
17274
17282
  ] }, rowKey);
17275
17283
  }),
@@ -17295,7 +17303,7 @@ function PortfolioActivityPanel({
17295
17303
  /* @__PURE__ */ jsxRuntime.jsx(GridCell, { children: /* @__PURE__ */ jsxRuntime.jsx(CellText, { children: formatCurrency4(order.price * order.quantity) }) }),
17296
17304
  /* @__PURE__ */ jsxRuntime.jsxs(GridCell, { children: [
17297
17305
  /* @__PURE__ */ jsxRuntime.jsx(ActivityTag, { $color: meta.color, $bg: meta.bg, title: order.status === "REJECTED" && order.rejectionReason ? order.rejectionReason : void 0, children: prettyLabel(order.status) }),
17298
- order.status === "REJECTED" && order.rejectionReason && /* @__PURE__ */ jsxRuntime.jsx(CellText, { $muted: true, style: { fontSize: "0.62rem", marginTop: "0.2rem", maxWidth: "120px", overflow: "hidden", textOverflow: "ellipsis", whiteSpace: "nowrap" }, title: order.rejectionReason, children: order.rejectionReason })
17306
+ order.rejectionReason && /* @__PURE__ */ jsxRuntime.jsx(CellText, { $muted: true, style: { fontSize: "0.62rem", marginTop: "0.2rem", maxWidth: "120px", overflow: "hidden", textOverflow: "ellipsis", whiteSpace: "nowrap" }, title: order.rejectionReason, children: order.rejectionReason })
17299
17307
  ] }),
17300
17308
  /* @__PURE__ */ jsxRuntime.jsx(GridCell, { children: /* @__PURE__ */ jsxRuntime.jsx(CellText, { $muted: true, children: formatTimestamp(order.createdAt) }) }),
17301
17309
  /* @__PURE__ */ jsxRuntime.jsx(GridCell, { children: order.txHash && /* @__PURE__ */ jsxRuntime.jsx(TxLink, { href: `${_blockExplorerBaseUrl}/${order.txHash}`, target: "_blank", rel: "noopener noreferrer", title: "View on Arbiscan", children: /* @__PURE__ */ jsxRuntime.jsxs("svg", { width: "15", height: "15", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [
@@ -17310,10 +17318,10 @@ function PortfolioActivityPanel({
17310
17318
  activeTab === "open-orders" && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
17311
17319
  openOrders.length === 0 && /* @__PURE__ */ jsxRuntime.jsx(EmptyState, { children: "Open orders will appear here while they are working in the market." }),
17312
17320
  openOrders.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
17313
- compactPositions && onCancelAllOrders && openOrdersCount > 0 && /* @__PURE__ */ jsxRuntime.jsx(CancelAllRow, { children: /* @__PURE__ */ jsxRuntime.jsx(CancelAllBtn, { type: "button", disabled: cancellingAll, onClick: () => setCancelAllConfirmOpen(true), children: "Cancel All" }) }),
17321
+ compactPositions && onCancelAllOrders && cancellableOrdersCount > 0 && /* @__PURE__ */ jsxRuntime.jsx(CancelAllRow, { children: /* @__PURE__ */ jsxRuntime.jsx(CancelAllBtn, { type: "button", disabled: cancellingAll, onClick: () => setCancelAllConfirmOpen(true), children: "Cancel All" }) }),
17314
17322
  compactPositions ? sortedOpenOrders.map((order) => {
17315
17323
  const meta = getOrderStatusMeta(order.status);
17316
- const filledPercent = order.quantity > 0 ? Math.round(order.filledQuantity / order.quantity * 100) : 0;
17324
+ const filledPercent = filledLabel(order);
17317
17325
  const isCancelling = cancellingOrderId === order.id;
17318
17326
  const ordExpanded = expandedOpenOrders.has(order.id);
17319
17327
  const sideColor = sideLabel(order.side) === "Buy" ? "#0ecb81" : "#f6465d";
@@ -17328,8 +17336,7 @@ function PortfolioActivityPanel({
17328
17336
  ] }),
17329
17337
  /* @__PURE__ */ jsxRuntime.jsxs(CUnitsCell, { children: [
17330
17338
  /* @__PURE__ */ jsxRuntime.jsx(CCellLabel, { children: "Filled" }),
17331
- filledPercent,
17332
- "%"
17339
+ filledPercent
17333
17340
  ] }),
17334
17341
  /* @__PURE__ */ jsxRuntime.jsxs(CUnitsCell, { children: [
17335
17342
  /* @__PURE__ */ jsxRuntime.jsx(CCellLabel, { children: "Qty" }),
@@ -17352,7 +17359,13 @@ function PortfolioActivityPanel({
17352
17359
  ] }),
17353
17360
  /* @__PURE__ */ jsxRuntime.jsxs(CDetailItem, { children: [
17354
17361
  /* @__PURE__ */ jsxRuntime.jsx(CDLabel, { children: "Price" }),
17355
- /* @__PURE__ */ jsxRuntime.jsx(CDValue, { children: order.type === "MARKET" || !order.price ? "Market" : formatCurrency4(order.price) })
17362
+ /* @__PURE__ */ jsxRuntime.jsxs(CDValue, { children: [
17363
+ isMarketType(order.type) || !order.price ? "Market" : formatCurrency4(order.price),
17364
+ order.triggerPrice != null && /* @__PURE__ */ jsxRuntime.jsxs(TriggerText, { children: [
17365
+ "Trigger ",
17366
+ formatCurrency4(order.triggerPrice)
17367
+ ] })
17368
+ ] })
17356
17369
  ] }),
17357
17370
  /* @__PURE__ */ jsxRuntime.jsxs(CDetailItem, { children: [
17358
17371
  /* @__PURE__ */ jsxRuntime.jsx(CDLabel, { children: "Status" }),
@@ -17383,12 +17396,12 @@ function PortfolioActivityPanel({
17383
17396
  /* @__PURE__ */ jsxRuntime.jsx(GridHeaderCell, { children: "Price" }),
17384
17397
  /* @__PURE__ */ jsxRuntime.jsx(GridHeaderCell, { children: "Filled" }),
17385
17398
  /* @__PURE__ */ jsxRuntime.jsx(GridHeaderCell, { children: "Status" }),
17386
- onCancelOrder && /* @__PURE__ */ jsxRuntime.jsx(GridHeaderCell, { children: onCancelAllOrders && openOrdersCount > 0 && /* @__PURE__ */ jsxRuntime.jsx(CancelButton, { type: "button", disabled: cancellingAll, onClick: () => setCancelAllConfirmOpen(true), children: "Cancel All" }) })
17399
+ onCancelOrder && /* @__PURE__ */ jsxRuntime.jsx(GridHeaderCell, { children: onCancelAllOrders && cancellableOrdersCount > 0 && /* @__PURE__ */ jsxRuntime.jsx(CancelButton, { type: "button", disabled: cancellingAll, onClick: () => setCancelAllConfirmOpen(true), children: "Cancel All" }) })
17387
17400
  ] }),
17388
17401
  pagedOpenOrders.map((order) => {
17389
17402
  const meta = getOrderStatusMeta(order.status);
17390
- const isMarket = order.type === "MARKET";
17391
- const filledPercent = order.quantity > 0 ? Math.round(order.filledQuantity / order.quantity * 100) : 0;
17403
+ const isMarket = isMarketType(order.type);
17404
+ const filledPercent = filledLabel(order);
17392
17405
  const isCancelling = cancellingOrderId === order.id;
17393
17406
  const sideColor = sideLabel(order.side) === "Buy" ? "#0ecb81" : "#f6465d";
17394
17407
  return /* @__PURE__ */ jsxRuntime.jsxs(GridRow, { $columns: onCancelOrder ? "0.5fr 1.2fr 0.6fr 0.7fr 0.8fr 1fr 0.8fr 0.8fr 82px" : "0.5fr 1.2fr 0.6fr 0.7fr 0.8fr 1fr 0.8fr 0.8fr", children: [
@@ -17400,12 +17413,18 @@ function PortfolioActivityPanel({
17400
17413
  formatNumber2(order.quantity),
17401
17414
  order.ticker && /* @__PURE__ */ jsxRuntime.jsx(TickerTag, { children: order.ticker.toUpperCase() })
17402
17415
  ] }) }),
17403
- /* @__PURE__ */ jsxRuntime.jsx(GridCell, { children: /* @__PURE__ */ jsxRuntime.jsx(CellText, { children: isMarket || !order.price ? "Market" : formatCurrency4(order.price) }) }),
17404
- /* @__PURE__ */ jsxRuntime.jsx(GridCell, { children: /* @__PURE__ */ jsxRuntime.jsxs(CellText, { $muted: true, children: [
17405
- filledPercent,
17406
- "%"
17407
- ] }) }),
17408
- /* @__PURE__ */ jsxRuntime.jsx(GridCell, { children: /* @__PURE__ */ jsxRuntime.jsx(ActivityTag, { $color: meta.color, $bg: meta.bg, children: prettyLabel(order.status) }) }),
17416
+ /* @__PURE__ */ jsxRuntime.jsxs(GridCell, { children: [
17417
+ /* @__PURE__ */ jsxRuntime.jsx(CellText, { children: isMarket || !order.price ? "Market" : formatCurrency4(order.price) }),
17418
+ order.triggerPrice != null && /* @__PURE__ */ jsxRuntime.jsxs(TriggerText, { children: [
17419
+ "Trigger ",
17420
+ formatCurrency4(order.triggerPrice)
17421
+ ] })
17422
+ ] }),
17423
+ /* @__PURE__ */ jsxRuntime.jsx(GridCell, { children: /* @__PURE__ */ jsxRuntime.jsx(CellText, { $muted: true, children: filledPercent }) }),
17424
+ /* @__PURE__ */ jsxRuntime.jsxs(GridCell, { children: [
17425
+ /* @__PURE__ */ jsxRuntime.jsx(ActivityTag, { $color: meta.color, $bg: meta.bg, children: prettyLabel(order.status) }),
17426
+ order.triggerPrice != null && order.rejectionReason && /* @__PURE__ */ jsxRuntime.jsx(TriggerText, { title: order.rejectionReason, children: order.rejectionReason })
17427
+ ] }),
17409
17428
  onCancelOrder && /* @__PURE__ */ jsxRuntime.jsx(GridCell, { children: /* @__PURE__ */ jsxRuntime.jsx(
17410
17429
  CancelButton,
17411
17430
  {
@@ -17427,7 +17446,7 @@ function PortfolioActivityPanel({
17427
17446
  mergedOrderHistory.length === 0 && /* @__PURE__ */ jsxRuntime.jsx(EmptyState, { children: "No orders yet. Place a trade to see it appear here." }),
17428
17447
  mergedOrderHistory.length > 0 && compactPositions && pagedOrderHistory.map((order) => {
17429
17448
  const meta = getOrderStatusMeta(order.status);
17430
- const filledPercent = order.quantity > 0 ? Math.round(order.filledQuantity / order.quantity * 100) : 0;
17449
+ const filledPercent = filledLabel(order);
17431
17450
  const typeLabel = order.isOfferingOrder ? "Initial Offering" : prettyLabel(order.type);
17432
17451
  const sideColor = sideLabel(order.side) === "Buy" ? "#0ecb81" : "#f6465d";
17433
17452
  const rowKey = `oh-${order.id}`;
@@ -17466,21 +17485,24 @@ function PortfolioActivityPanel({
17466
17485
  ] }),
17467
17486
  /* @__PURE__ */ jsxRuntime.jsxs(CDetailItem, { children: [
17468
17487
  /* @__PURE__ */ jsxRuntime.jsx(CDLabel, { children: "Price" }),
17469
- /* @__PURE__ */ jsxRuntime.jsx(CDValue, { children: order.type === "MARKET" || !order.price ? "Market" : formatCurrency4(order.price) })
17488
+ /* @__PURE__ */ jsxRuntime.jsxs(CDValue, { children: [
17489
+ isMarketType(order.type) || !order.price ? "Market" : formatCurrency4(order.price),
17490
+ order.triggerPrice != null && /* @__PURE__ */ jsxRuntime.jsxs(TriggerText, { children: [
17491
+ "Trigger ",
17492
+ formatCurrency4(order.triggerPrice)
17493
+ ] })
17494
+ ] })
17470
17495
  ] }),
17471
17496
  /* @__PURE__ */ jsxRuntime.jsxs(CDetailItem, { children: [
17472
17497
  /* @__PURE__ */ jsxRuntime.jsx(CDLabel, { children: "Filled" }),
17473
- /* @__PURE__ */ jsxRuntime.jsxs(CDValue, { children: [
17474
- filledPercent,
17475
- "%"
17476
- ] })
17498
+ /* @__PURE__ */ jsxRuntime.jsx(CDValue, { children: filledPercent })
17477
17499
  ] }),
17478
17500
  /* @__PURE__ */ jsxRuntime.jsxs(CDetailItem, { children: [
17479
17501
  /* @__PURE__ */ jsxRuntime.jsx(CDLabel, { children: "Date" }),
17480
17502
  /* @__PURE__ */ jsxRuntime.jsx(CDValue, { children: formatTimestamp(order.createdAt) })
17481
17503
  ] })
17482
17504
  ] }),
17483
- order.status === "REJECTED" && order.rejectionReason && /* @__PURE__ */ jsxRuntime.jsx(CDValue, { style: { marginTop: "0.4rem", color: "#f6465d", fontSize: "0.7rem" }, children: order.rejectionReason })
17505
+ order.rejectionReason && /* @__PURE__ */ jsxRuntime.jsx(CDValue, { style: { marginTop: "0.4rem", color: "#f6465d", fontSize: "0.7rem" }, children: order.rejectionReason })
17484
17506
  ] })
17485
17507
  ] }, rowKey);
17486
17508
  }),
@@ -17498,8 +17520,8 @@ function PortfolioActivityPanel({
17498
17520
  ] }),
17499
17521
  pagedOrderHistory.map((order) => {
17500
17522
  const meta = getOrderStatusMeta(order.status);
17501
- const isMarket = order.type === "MARKET";
17502
- const filledPercent = order.quantity > 0 ? Math.round(order.filledQuantity / order.quantity * 100) : 0;
17523
+ const isMarket = isMarketType(order.type);
17524
+ const filledPercent = filledLabel(order);
17503
17525
  const typeLabel = order.isOfferingOrder ? "Initial Offering" : prettyLabel(order.type);
17504
17526
  const sideColor = sideLabel(order.side) === "Buy" ? "#0ecb81" : "#f6465d";
17505
17527
  return /* @__PURE__ */ jsxRuntime.jsxs(GridRow, { $columns: "0.5fr 1.2fr 0.6fr 0.7fr 0.8fr 1fr 0.8fr 0.8fr 1fr", children: [
@@ -17511,12 +17533,18 @@ function PortfolioActivityPanel({
17511
17533
  formatNumber2(order.quantity),
17512
17534
  order.ticker && /* @__PURE__ */ jsxRuntime.jsx(TickerTag, { children: order.ticker.toUpperCase() })
17513
17535
  ] }) }),
17514
- /* @__PURE__ */ jsxRuntime.jsx(GridCell, { children: /* @__PURE__ */ jsxRuntime.jsx(CellText, { children: isMarket || !order.price ? "Market" : formatCurrency4(order.price) }) }),
17515
- /* @__PURE__ */ jsxRuntime.jsx(GridCell, { children: /* @__PURE__ */ jsxRuntime.jsxs(CellText, { $muted: true, children: [
17516
- filledPercent,
17517
- "%"
17518
- ] }) }),
17519
- /* @__PURE__ */ jsxRuntime.jsx(GridCell, { children: /* @__PURE__ */ jsxRuntime.jsx(ActivityTag, { $color: meta.color, $bg: meta.bg, children: prettyLabel(order.status) }) }),
17536
+ /* @__PURE__ */ jsxRuntime.jsxs(GridCell, { children: [
17537
+ /* @__PURE__ */ jsxRuntime.jsx(CellText, { children: isMarket || !order.price ? "Market" : formatCurrency4(order.price) }),
17538
+ order.triggerPrice != null && /* @__PURE__ */ jsxRuntime.jsxs(TriggerText, { children: [
17539
+ "Trigger ",
17540
+ formatCurrency4(order.triggerPrice)
17541
+ ] })
17542
+ ] }),
17543
+ /* @__PURE__ */ jsxRuntime.jsx(GridCell, { children: /* @__PURE__ */ jsxRuntime.jsx(CellText, { $muted: true, children: filledPercent }) }),
17544
+ /* @__PURE__ */ jsxRuntime.jsxs(GridCell, { children: [
17545
+ /* @__PURE__ */ jsxRuntime.jsx(ActivityTag, { $color: meta.color, $bg: meta.bg, children: prettyLabel(order.status) }),
17546
+ order.triggerPrice != null && order.rejectionReason && /* @__PURE__ */ jsxRuntime.jsx(TriggerText, { title: order.rejectionReason, children: order.rejectionReason })
17547
+ ] }),
17520
17548
  /* @__PURE__ */ jsxRuntime.jsx(GridCell, { children: /* @__PURE__ */ jsxRuntime.jsx(CellText, { $muted: true, children: formatTimestamp(order.createdAt) }) })
17521
17549
  ] }, order.id);
17522
17550
  })
@@ -17720,7 +17748,7 @@ function PortfolioActivityPanel({
17720
17748
  /* @__PURE__ */ jsxRuntime.jsx(CancelConfirmTitle, { children: "Cancel All Orders" }),
17721
17749
  /* @__PURE__ */ jsxRuntime.jsxs(CancelConfirmBody, { children: [
17722
17750
  "Are you sure you want to cancel all ",
17723
- openOrdersCount,
17751
+ cancellableOrdersCount,
17724
17752
  " open orders? This action cannot be undone."
17725
17753
  ] }),
17726
17754
  /* @__PURE__ */ jsxRuntime.jsxs(CancelConfirmActions, { children: [