@burdenoff/microfe-store 2026.830.1 → 2026.830.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,12 +1,13 @@
1
1
  import { useStore as e } from "../providers/StoreProvider.js";
2
2
  import { useOrderStatusUpdatedSubscription as t } from "../generated/global-operations.js";
3
3
  import { formatPrice as n } from "../utils/index.js";
4
- import { InstallAppModal as r } from "../components/InstallAppModal.js";
5
- import { useInstallations as i } from "../hooks/useInstallations.js";
6
- import { useOrders as a } from "../hooks/useOrders.js";
7
- import { useCallback as o, useMemo as s, useState as c } from "react";
8
- import { useNavigate as l } from "react-router";
9
- import { useI18n as ee } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
4
+ import { useTr as r } from "../shared/hooks/useTr.js";
5
+ import { InstallAppModal as i } from "../components/InstallAppModal.js";
6
+ import { useInstallations as ee } from "../hooks/useInstallations.js";
7
+ import { useOrders as te } from "../hooks/useOrders.js";
8
+ import { useCallback as a, useMemo as o, useState as s } from "react";
9
+ import { useNavigate as c } from "react-router";
10
+ import { useI18n as l } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
10
11
  import { ArrowLeft as u, CheckCircle as d, ChevronRight as f, Clock as p, Download as m, Loader2 as h, Package as g, RefreshCw as _, ShoppingBag as v, XCircle as y } from "lucide-react";
11
12
  import { jsx as b, jsxs as x } from "react/jsx-runtime";
12
13
  import { GlassCard as S, IllustratedEmptyState as C, PagePurpose as w } from "@burdenoff/fe-libs/ui";
@@ -15,39 +16,39 @@ var T = [
15
16
  "COMPLETED",
16
17
  "FULFILLED",
17
18
  "PROCESSED"
18
- ], E = (e) => {
19
+ ], E = (e, t) => {
19
20
  switch (e) {
20
21
  case "COMPLETED":
21
22
  case "FULFILLED":
22
23
  case "PROCESSED": return {
23
24
  icon: d,
24
25
  classes: "bg-status-success-bg-subtle/15 text-status-success-text border-status-success-text/20",
25
- label: "Completed"
26
+ label: t("pages.orders.statusCompleted", "Completed")
26
27
  };
27
28
  case "PROCESSING": return {
28
29
  icon: p,
29
30
  classes: "bg-status-warning-bg-subtle/15 text-status-warning-text border-status-warning-text/20",
30
- label: "Processing"
31
+ label: t("pages.orders.statusProcessing", "Processing")
31
32
  };
32
33
  case "PENDING": return {
33
34
  icon: p,
34
35
  classes: "bg-status-warning-bg-subtle/15 text-status-warning-text border-status-warning-text/20",
35
- label: "Pending"
36
+ label: t("pages.orders.statusPending", "Pending")
36
37
  };
37
38
  case "FAILED": return {
38
39
  icon: y,
39
40
  classes: "bg-status-error-bg-subtle/15 text-status-error-text border-status-error-text/20",
40
- label: "Failed"
41
+ label: t("pages.orders.statusFailed", "Failed")
41
42
  };
42
43
  case "REFUNDED": return {
43
44
  icon: _,
44
45
  classes: "bg-status-warning-bg-subtle/15 text-status-warning-text border-status-warning-text/20",
45
- label: "Refunded"
46
+ label: t("pages.orders.statusRefunded", "Refunded")
46
47
  };
47
48
  case "CANCELLED": return {
48
49
  icon: _,
49
50
  classes: "bg-bg-sunken text-text-muted border-border-default",
50
- label: "Cancelled"
51
+ label: t("pages.orders.statusCancelled", "Cancelled")
51
52
  };
52
53
  default: return {
53
54
  icon: p,
@@ -55,23 +56,23 @@ var T = [
55
56
  label: e
56
57
  };
57
58
  }
58
- }, D = ({ status: e }) => {
59
- let t = E(e), n = t.icon;
59
+ }, D = ({ status: e, tr: t }) => {
60
+ let n = E(e, t), r = n.icon;
60
61
  return /* @__PURE__ */ x("span", {
61
- className: `inline-flex items-center gap-1.5 rounded-full border px-2.5 py-1 text-xs font-semibold ${t.classes}`,
62
- children: [/* @__PURE__ */ b(n, { className: "size-3.5" }), t.label]
62
+ className: `inline-flex items-center gap-1.5 rounded-full border px-2.5 py-1 text-xs font-semibold ${n.classes}`,
63
+ children: [/* @__PURE__ */ b(r, { className: "size-3.5" }), n.label]
63
64
  });
64
65
  }, O = () => {
65
- let p = l(), { basePath: _ } = e(), { t: E } = ee(), { orders: O, loading: k, error: A, refetchOrders: j, hasMore: M, loadMore: N } = a(), { installations: P, refetch: te } = i();
66
+ let p = c(), { basePath: _ } = e(), { t: E } = l(), O = r(), { orders: k, loading: A, error: j, refetchOrders: ne, hasMore: re, loadMore: ie } = te(), { installations: M, refetch: ae } = ee();
66
67
  t({
67
68
  onData: () => {
68
- j();
69
+ ne();
69
70
  },
70
71
  onError: (e) => {
71
72
  console.warn("OrderStatusUpdated subscription error:", e.message);
72
73
  }
73
74
  });
74
- let [ne, re] = c(/* @__PURE__ */ new Set()), [F, I] = c("completed"), [L, R] = c(!1), [z, B] = c(null), [V, H] = c(null), [ie, U] = c(null), W = s(() => new Set(P.flatMap((e) => e.status === "ACTIVE" ? [e.productId] : [])), [P]), G = O.map((e) => {
75
+ let [N, P] = s(/* @__PURE__ */ new Set()), [F, I] = s("completed"), [L, R] = s(!1), [z, B] = s(null), [V, H] = s(null), [oe, U] = s(null), W = o(() => new Set(M.flatMap((e) => e.status === "ACTIVE" ? [e.productId] : [])), [M]), G = k.map((e) => {
75
76
  let t = e.lineItems || [], n = t.reduce((e, t) => e + t.subtotal, 0), r = e.total - n, i = t.map((t, n) => ({
76
77
  id: `${e.id}-${n}`,
77
78
  productId: t.productId,
@@ -95,12 +96,12 @@ var T = [
95
96
  createdAt: e.createdAt,
96
97
  fulfillment: e.fulfillment ?? null
97
98
  };
98
- }), K = s(() => G.filter((e) => T.includes(e.status)), [G]), q = s(() => G.filter((e) => !T.includes(e.status)), [G]), J = F === "completed" ? K : q, Y = o((e) => {
99
- re((t) => {
99
+ }), K = o(() => G.filter((e) => T.includes(e.status)), [G]), q = o(() => G.filter((e) => !T.includes(e.status)), [G]), J = F === "completed" ? K : q, se = a((e) => {
100
+ P((t) => {
100
101
  let n = new Set(t);
101
102
  return n.has(e) ? n.delete(e) : n.add(e), n;
102
103
  });
103
- }, []), ae = (e, t) => {
104
+ }, []), ce = (e, t) => {
104
105
  B(e), U(t.id), H({
105
106
  id: t.productId,
106
107
  name: t.productName,
@@ -108,11 +109,11 @@ var T = [
108
109
  type: t.productType,
109
110
  version: t.version
110
111
  }), R(!0);
111
- }, X = () => {
112
+ }, Y = () => {
112
113
  R(!1), B(null), H(null), U(null);
113
- }, oe = (e, t) => {
114
- X(), te();
115
- }, se = (e) => {}, Z = () => {
114
+ }, le = (e, t) => {
115
+ Y(), ae();
116
+ }, X = (e) => {}, Z = () => {
116
117
  p(`${_}/marketplace`);
117
118
  }, Q = "px-4 py-3 text-sm", $ = "px-4 py-3 text-left text-xs font-semibold uppercase tracking-wider text-text-muted";
118
119
  return /* @__PURE__ */ x("div", {
@@ -156,17 +157,17 @@ var T = [
156
157
  className: "mx-auto max-w-6xl p-6",
157
158
  children: [/* @__PURE__ */ b(w, {
158
159
  className: "mb-6",
159
- children: "A record of everything you've purchased from the marketplace. Track each order's status, review what you paid, and — once an order is complete — install the apps you bought into a workspace right from here. Come back to re-install on a new workspace or check a past receipt."
160
- }), k && G.length === 0 ? /* @__PURE__ */ x("div", {
160
+ children: O("pages.orders.purpose", "A record of everything you've purchased from the marketplace. Track each order's status, review what you paid, and — once an order is complete — install the apps you bought into a workspace right from here. Come back to re-install on a new workspace or check a past receipt.")
161
+ }), A && G.length === 0 ? /* @__PURE__ */ x("div", {
161
162
  className: "flex flex-col items-center justify-center py-24",
162
163
  children: [/* @__PURE__ */ b(h, {
163
164
  className: "size-12 animate-spin text-text-muted mb-4",
164
165
  "aria-hidden": "true"
165
166
  }), /* @__PURE__ */ b("p", {
166
167
  className: "text-text-muted",
167
- children: "Loading your orders…"
168
+ children: O("pages.orders.loading", "Loading your orders…")
168
169
  })]
169
- }) : A ? /* @__PURE__ */ x("div", {
170
+ }) : j ? /* @__PURE__ */ x("div", {
170
171
  className: "flex flex-col items-center justify-center py-24 text-center",
171
172
  children: [
172
173
  /* @__PURE__ */ b("div", {
@@ -179,24 +180,24 @@ var T = [
179
180
  }),
180
181
  /* @__PURE__ */ b("p", {
181
182
  className: "mb-6 max-w-md text-text-muted",
182
- children: A.message || "An error occurred while loading your orders. Please try again."
183
+ children: j.message || O("pages.orders.errorDescription", "An error occurred while loading your orders. Please try again.")
183
184
  }),
184
185
  /* @__PURE__ */ x("button", {
185
186
  type: "button",
186
187
  onClick: Z,
187
188
  className: "cursor-pointer flex items-center gap-2 rounded-lg bg-action-primary-bg px-6 py-3 font-semibold text-action-primary-text transition-opacity hover:opacity-90",
188
- children: [/* @__PURE__ */ b(v, { className: "size-5" }), "Browse Marketplace"]
189
+ children: [/* @__PURE__ */ b(v, { className: "size-5" }), O("pages.orders.browseMarketplace", "Browse Marketplace")]
189
190
  })
190
191
  ]
191
192
  }) : G.length === 0 ? /* @__PURE__ */ b(C, {
192
193
  illustration: "empty-data",
193
194
  title: E("pages.orders.emptyTitle", { defaultValue: "No orders yet" }),
194
- description: "You have not placed any orders yet. Browse the marketplace to discover apps and products!",
195
+ description: O("pages.orders.emptyDescription", "You have not placed any orders yet. Browse the marketplace to discover apps and products!"),
195
196
  action: /* @__PURE__ */ x("button", {
196
197
  type: "button",
197
198
  onClick: Z,
198
199
  className: "cursor-pointer flex items-center gap-2 rounded-lg bg-action-primary-bg px-6 py-3 font-semibold text-action-primary-text transition-opacity hover:opacity-90",
199
- children: [/* @__PURE__ */ b(v, { className: "size-5" }), "Browse Marketplace"]
200
+ children: [/* @__PURE__ */ b(v, { className: "size-5" }), O("pages.orders.browseMarketplace", "Browse Marketplace")]
200
201
  })
201
202
  }) : /* @__PURE__ */ x("div", {
202
203
  className: "space-y-4",
@@ -206,7 +207,7 @@ var T = [
206
207
  type: "button",
207
208
  onClick: () => I("completed"),
208
209
  className: `rounded-lg px-4 py-2 text-sm font-medium transition-colors ${F === "completed" ? "bg-action-primary-bg text-action-primary-text" : "text-text-muted hover:bg-bg-sunken hover:text-text-primary"}`,
209
- children: ["Completed", /* @__PURE__ */ b("span", {
210
+ children: [O("pages.orders.tabCompleted", "Completed"), /* @__PURE__ */ b("span", {
210
211
  className: "ml-2 rounded-full bg-black/10 px-2 py-0.5 text-xs",
211
212
  children: K.length
212
213
  })]
@@ -214,7 +215,7 @@ var T = [
214
215
  type: "button",
215
216
  onClick: () => I("pending"),
216
217
  className: `rounded-lg px-4 py-2 text-sm font-medium transition-colors ${F === "pending" ? "bg-action-primary-bg text-action-primary-text" : "text-text-muted hover:bg-bg-sunken hover:text-text-primary"}`,
217
- children: ["Pending", /* @__PURE__ */ b("span", {
218
+ children: [O("pages.orders.tabPending", "Pending"), /* @__PURE__ */ b("span", {
218
219
  className: "ml-2 rounded-full bg-black/10 px-2 py-0.5 text-xs",
219
220
  children: q.length
220
221
  })]
@@ -228,11 +229,11 @@ var T = [
228
229
  }),
229
230
  /* @__PURE__ */ b("h2", {
230
231
  className: "mb-2 text-lg font-semibold text-text-primary",
231
- children: F === "completed" ? "No completed orders yet" : "No pending orders"
232
+ children: F === "completed" ? O("pages.orders.noCompletedTitle", "No completed orders yet") : O("pages.orders.noPendingTitle", "No pending orders")
232
233
  }),
233
234
  /* @__PURE__ */ b("p", {
234
235
  className: "text-sm text-text-muted",
235
- children: F === "completed" ? "Completed purchases will appear here once payment is successful." : "Orders that are pending, processing, failed, refunded, or cancelled will appear here."
236
+ children: F === "completed" ? O("pages.orders.noCompletedDescription", "Completed purchases will appear here once payment is successful.") : O("pages.orders.noPendingDescription", "Orders that are pending, processing, failed, refunded, or cancelled will appear here.")
236
237
  })
237
238
  ]
238
239
  }) : /* @__PURE__ */ x("div", {
@@ -244,33 +245,33 @@ var T = [
244
245
  /* @__PURE__ */ b("div", { className: $ }),
245
246
  /* @__PURE__ */ b("div", {
246
247
  className: $,
247
- children: "Order"
248
+ children: O("pages.orders.colOrder", "Order")
248
249
  }),
249
250
  /* @__PURE__ */ b("div", {
250
251
  className: $,
251
- children: "Date"
252
+ children: O("pages.orders.colDate", "Date")
252
253
  }),
253
254
  /* @__PURE__ */ b("div", {
254
255
  className: $,
255
- children: "Items"
256
+ children: O("pages.orders.colItems", "Items")
256
257
  }),
257
258
  /* @__PURE__ */ b("div", {
258
259
  className: `${$} text-right`,
259
- children: "Total"
260
+ children: O("pages.orders.colTotal", "Total")
260
261
  }),
261
262
  /* @__PURE__ */ b("div", {
262
263
  className: `${$} text-center`,
263
- children: "Status"
264
+ children: O("pages.orders.colStatus", "Status")
264
265
  })
265
266
  ]
266
267
  }),
267
268
  J.map((e) => {
268
- let t = ne.has(e.id), r = e.status === "COMPLETED" || e.status === "FULFILLED" || e.status === "PROCESSED";
269
+ let t = N.has(e.id), r = e.status === "COMPLETED" || e.status === "FULFILLED" || e.status === "PROCESSED";
269
270
  return /* @__PURE__ */ x("div", {
270
271
  className: "border-b border-border-seam last:border-b-0",
271
272
  children: [/* @__PURE__ */ x("button", {
272
273
  type: "button",
273
- onClick: () => Y(e.id),
274
+ onClick: () => se(e.id),
274
275
  className: "grid w-full cursor-pointer grid-cols-[40px_1fr_180px_140px_120px_160px] items-center transition-colors hover:bg-bg-sunken/50 md:grid",
275
276
  children: [
276
277
  /* @__PURE__ */ b("div", {
@@ -294,7 +295,7 @@ var T = [
294
295
  children: [
295
296
  e.items.length,
296
297
  " ",
297
- e.items.length === 1 ? "item" : "items",
298
+ e.items.length === 1 ? O("pages.orders.item", "item") : O("pages.orders.items", "items"),
298
299
  /* @__PURE__ */ b("span", {
299
300
  className: "block text-xs text-text-muted/70",
300
301
  children: e.items.map((e) => e.productName).join(", ")
@@ -307,7 +308,10 @@ var T = [
307
308
  }),
308
309
  /* @__PURE__ */ b("div", {
309
310
  className: `${Q} flex justify-center`,
310
- children: /* @__PURE__ */ b(D, { status: e.status })
311
+ children: /* @__PURE__ */ b(D, {
312
+ status: e.status,
313
+ tr: O
314
+ })
311
315
  })
312
316
  ]
313
317
  }), t && /* @__PURE__ */ x("div", {
@@ -319,32 +323,25 @@ var T = [
319
323
  className: "flex flex-col gap-3 md:flex-row md:items-center md:justify-between",
320
324
  children: [/* @__PURE__ */ x("div", { children: [/* @__PURE__ */ b("div", {
321
325
  className: "text-sm font-semibold text-text-primary",
322
- children: "Order tracking"
326
+ children: O("pages.orders.orderTracking", "Order tracking")
323
327
  }), /* @__PURE__ */ x("div", {
324
328
  className: "mt-1 text-xs text-text-muted",
325
329
  children: [
326
- e.fulfillment.status || "PENDING",
330
+ e.fulfillment.status || O("pages.orders.statusPending", "Pending"),
327
331
  e.fulfillment.carrier ? ` · ${e.fulfillment.carrier}` : "",
328
- e.fulfillment.estimatedDeliveryDate ? ` · Est. delivery ${new Date(e.fulfillment.estimatedDeliveryDate).toLocaleDateString()}` : ""
332
+ e.fulfillment.estimatedDeliveryDate ? ` · ${O("pages.orders.estimatedDelivery", "Est. delivery {{date}}", { date: new Date(e.fulfillment.estimatedDeliveryDate).toLocaleDateString() })}` : ""
329
333
  ]
330
334
  })] }), /* @__PURE__ */ x("div", {
331
335
  className: "flex flex-col items-start gap-2 md:items-end",
332
- children: [e.fulfillment.trackingNumber && /* @__PURE__ */ x("div", {
336
+ children: [e.fulfillment.trackingNumber && /* @__PURE__ */ b("div", {
333
337
  className: "text-xs text-text-muted",
334
- children: [
335
- "Tracking #:",
336
- " ",
337
- /* @__PURE__ */ b("span", {
338
- className: "font-medium text-text-primary",
339
- children: e.fulfillment.trackingNumber
340
- })
341
- ]
338
+ children: O("pages.orders.trackingNumber", "Tracking #: {{number}}", { number: e.fulfillment.trackingNumber })
342
339
  }), e.fulfillment.trackingUrl && /* @__PURE__ */ x("a", {
343
340
  href: e.fulfillment.trackingUrl,
344
341
  target: "_blank",
345
342
  rel: "noreferrer",
346
343
  className: "inline-flex items-center gap-1 rounded-md border border-border-default px-3 py-1.5 text-xs font-medium text-text-primary hover:bg-bg-sunken",
347
- children: ["Track package", /* @__PURE__ */ b(f, { className: "size-3.5" })]
344
+ children: [O("pages.orders.trackPackage", "Track package"), /* @__PURE__ */ b(f, { className: "size-3.5" })]
348
345
  })]
349
346
  })]
350
347
  }), /* @__PURE__ */ b("div", {
@@ -352,19 +349,19 @@ var T = [
352
349
  children: [
353
350
  {
354
351
  key: "PROCESSING",
355
- label: "Processing"
352
+ label: O("pages.orders.stepProcessing", "Processing")
356
353
  },
357
354
  {
358
355
  key: "SHIPPED",
359
- label: "Shipped"
356
+ label: O("pages.orders.stepShipped", "Shipped")
360
357
  },
361
358
  {
362
359
  key: "OUT_FOR_DELIVERY",
363
- label: "Out for delivery"
360
+ label: O("pages.orders.stepOutForDelivery", "Out for delivery")
364
361
  },
365
362
  {
366
363
  key: "DELIVERED",
367
- label: "Delivered"
364
+ label: O("pages.orders.stepDelivered", "Delivered")
368
365
  }
369
366
  ].map((t) => {
370
367
  let n = e.fulfillment?.status || "PENDING";
@@ -392,19 +389,19 @@ var T = [
392
389
  children: [
393
390
  /* @__PURE__ */ b("span", {
394
391
  className: "text-xs font-medium text-text-muted",
395
- children: "Product"
392
+ children: O("pages.orders.colProduct", "Product")
396
393
  }),
397
394
  /* @__PURE__ */ b("span", {
398
395
  className: "text-xs font-medium text-text-muted text-right",
399
- children: "Qty"
396
+ children: O("pages.orders.colQty", "Qty")
400
397
  }),
401
398
  /* @__PURE__ */ b("span", {
402
399
  className: "text-xs font-medium text-text-muted text-right",
403
- children: "Price"
400
+ children: O("pages.orders.colPrice", "Price")
404
401
  }),
405
402
  /* @__PURE__ */ b("span", {
406
403
  className: "text-xs font-medium text-text-muted text-center",
407
- children: "Action"
404
+ children: O("pages.orders.colAction", "Action")
408
405
  })
409
406
  ]
410
407
  }),
@@ -444,28 +441,28 @@ var T = [
444
441
  className: "hidden text-right text-sm font-semibold tabular-nums text-text-primary md:block",
445
442
  children: n(t.totalPrice)
446
443
  }),
447
- /* @__PURE__ */ x("div", {
444
+ /* @__PURE__ */ b("div", {
448
445
  className: "text-right text-sm text-text-muted md:hidden",
449
- children: [/* @__PURE__ */ x("span", {
446
+ children: /* @__PURE__ */ b("span", {
450
447
  className: "tabular-nums",
451
- children: [t.quantity, " × "]
452
- }), /* @__PURE__ */ b("span", {
453
- className: "font-semibold text-text-primary tabular-nums",
454
- children: n(t.unitPrice)
455
- })]
448
+ children: O("pages.orders.qtyTimesPrice", "{{qty}} × {{price}}", {
449
+ qty: t.quantity,
450
+ price: n(t.unitPrice)
451
+ })
452
+ })
456
453
  }),
457
454
  /* @__PURE__ */ b("div", {
458
455
  className: "flex justify-end md:justify-center",
459
456
  children: t.installed ? /* @__PURE__ */ x("span", {
460
457
  className: "inline-flex items-center gap-1 rounded-lg px-3 py-1.5 text-xs font-medium text-status-success-text",
461
- children: [/* @__PURE__ */ b(d, { className: "size-3.5" }), "Installed"]
458
+ children: [/* @__PURE__ */ b(d, { className: "size-3.5" }), O("pages.orders.installed", "Installed")]
462
459
  }) : r && i ? /* @__PURE__ */ x("button", {
463
460
  type: "button",
464
461
  onClick: (n) => {
465
- n.stopPropagation(), ae(e.id, t);
462
+ n.stopPropagation(), ce(e.id, t);
466
463
  },
467
464
  className: "inline-flex cursor-pointer items-center gap-1.5 rounded-lg bg-action-primary-bg px-3 py-1.5 text-xs font-medium text-action-primary-text transition-all hover:opacity-90 active:scale-95",
468
- children: [/* @__PURE__ */ b(m, { className: "size-3.5" }), "Install App"]
465
+ children: [/* @__PURE__ */ b(m, { className: "size-3.5" }), O("pages.orders.installApp", "Install App")]
469
466
  }) : null
470
467
  })
471
468
  ]
@@ -477,7 +474,7 @@ var T = [
477
474
  className: "flex justify-end gap-6 text-xs text-text-muted",
478
475
  children: [
479
476
  /* @__PURE__ */ x("span", { children: [
480
- "Subtotal:",
477
+ O("pages.orders.subtotal", "Subtotal:"),
481
478
  " ",
482
479
  /* @__PURE__ */ b("span", {
483
480
  className: "tabular-nums text-text-primary",
@@ -485,7 +482,7 @@ var T = [
485
482
  })
486
483
  ] }),
487
484
  /* @__PURE__ */ x("span", { children: [
488
- "Tax:",
485
+ O("pages.orders.tax", "Tax:"),
489
486
  " ",
490
487
  /* @__PURE__ */ b("span", {
491
488
  className: "tabular-nums text-text-primary",
@@ -495,7 +492,7 @@ var T = [
495
492
  /* @__PURE__ */ x("span", {
496
493
  className: "font-semibold",
497
494
  children: [
498
- "Total:",
495
+ O("pages.orders.total", "Total:"),
499
496
  " ",
500
497
  /* @__PURE__ */ b("span", {
501
498
  className: "tabular-nums text-text-primary",
@@ -510,15 +507,15 @@ var T = [
510
507
  })]
511
508
  }, e.id);
512
509
  }),
513
- M && /* @__PURE__ */ b("div", {
510
+ re && /* @__PURE__ */ b("div", {
514
511
  className: "flex justify-center px-4 py-5",
515
512
  children: /* @__PURE__ */ x("button", {
516
513
  type: "button",
517
- onClick: N,
518
- disabled: k,
514
+ onClick: ie,
515
+ disabled: A,
519
516
  className: "flex items-center gap-2 rounded-lg border border-border-default px-6 py-2.5 text-sm font-medium text-text-primary transition-colors hover:bg-bg-subtle disabled:opacity-50",
520
517
  "aria-label": E("common.loadMore", { defaultValue: "Load more" }),
521
- children: [k ? /* @__PURE__ */ b(h, {
518
+ children: [A ? /* @__PURE__ */ b(h, {
522
519
  className: "size-4 animate-spin",
523
520
  "aria-hidden": "true"
524
521
  }) : null, E("common.loadMore", { defaultValue: "Load more" })]
@@ -529,13 +526,13 @@ var T = [
529
526
  })]
530
527
  })
531
528
  }),
532
- V && /* @__PURE__ */ b(r, {
529
+ V && /* @__PURE__ */ b(i, {
533
530
  isOpen: L,
534
- onClose: X,
531
+ onClose: Y,
535
532
  app: V,
536
533
  orderId: z,
537
- onInstallSuccess: oe,
538
- onInstallError: se
534
+ onInstallSuccess: le,
535
+ onInstallError: X
539
536
  })
540
537
  ]
541
538
  });