@nextblock-cms/ecom 0.13.4 → 0.13.6

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 (123) hide show
  1. package/lib/CurrencyProvider.cjs.js +1 -1
  2. package/lib/CurrencyProvider.es.js +31 -27
  3. package/lib/components/AccountNavigationMenu.cjs.js +1 -1
  4. package/lib/components/AccountNavigationMenu.es.js +53 -26
  5. package/lib/components/AddToCartButton.cjs.js +1 -1
  6. package/lib/components/AddToCartButton.es.js +49 -25
  7. package/lib/components/Cart.cjs.js +1 -1
  8. package/lib/components/Cart.es.js +367 -115
  9. package/lib/components/CartDrawer.cjs.js +1 -1
  10. package/lib/components/CartDrawer.es.js +272 -88
  11. package/lib/components/CartIcon.cjs.js +1 -1
  12. package/lib/components/CartIcon.es.js +44 -16
  13. package/lib/components/Checkout.cjs.js +1 -1
  14. package/lib/components/Checkout.es.js +1601 -694
  15. package/lib/components/CouponForm.cjs.js +1 -1
  16. package/lib/components/CouponForm.es.js +160 -96
  17. package/lib/components/CurrencySwitcher.cjs.js +1 -1
  18. package/lib/components/CurrencySwitcher.es.js +32 -12
  19. package/lib/components/CustomerProfileForm.cjs.js +1 -1
  20. package/lib/components/CustomerProfileForm.es.js +666 -250
  21. package/lib/components/FeaturedProduct.cjs.js +1 -1
  22. package/lib/components/FeaturedProduct.es.js +126 -42
  23. package/lib/components/FreemiusLicensePanel.cjs.js +1 -1
  24. package/lib/components/FreemiusLicensePanel.es.js +125 -45
  25. package/lib/components/InvoiceDocument.cjs.js +1 -1
  26. package/lib/components/InvoiceDocument.es.js +485 -146
  27. package/lib/components/InvoiceViewerShell.cjs.js +2 -2
  28. package/lib/components/InvoiceViewerShell.es.js +142 -54
  29. package/lib/components/ProductCard.cjs.js +1 -1
  30. package/lib/components/ProductCard.es.js +224 -81
  31. package/lib/components/ProductDetailsLayout.cjs.js +1 -1
  32. package/lib/components/ProductDetailsLayout.es.js +629 -275
  33. package/lib/components/ProductGallery.cjs.js +1 -1
  34. package/lib/components/ProductGallery.es.js +64 -21
  35. package/lib/components/ProductGrid.cjs.js +1 -1
  36. package/lib/components/ProductGrid.es.js +28 -12
  37. package/lib/components/ShippingEstimator.cjs.js +1 -1
  38. package/lib/components/ShippingEstimator.es.js +226 -90
  39. package/lib/components/SimpleTiptapRenderer.cjs.js +1 -1
  40. package/lib/components/SimpleTiptapRenderer.es.js +286 -93
  41. package/lib/components/SubscriptionSelector.cjs.js +1 -1
  42. package/lib/components/SubscriptionSelector.es.js +168 -92
  43. package/lib/pages/cms/coupons/CouponEditorForm.cjs.js +1 -1
  44. package/lib/pages/cms/coupons/CouponEditorForm.es.js +370 -110
  45. package/lib/pages/cms/coupons/CouponsPage.cjs.js +2 -2
  46. package/lib/pages/cms/coupons/CouponsPage.es.js +368 -116
  47. package/lib/pages/cms/coupons/CreateCouponDialog.cjs.js +1 -1
  48. package/lib/pages/cms/coupons/CreateCouponDialog.es.js +61 -25
  49. package/lib/pages/cms/coupons/EditCouponPage.cjs.js +1 -1
  50. package/lib/pages/cms/coupons/EditCouponPage.es.js +71 -35
  51. package/lib/pages/cms/coupons/ProductScopePicker.cjs.js +1 -1
  52. package/lib/pages/cms/coupons/ProductScopePicker.es.js +167 -72
  53. package/lib/pages/cms/orders/ExportReportsDialog.cjs.js +1 -1
  54. package/lib/pages/cms/orders/ExportReportsDialog.es.js +247 -87
  55. package/lib/pages/cms/orders/OrderDetailPage.cjs.js +1 -1
  56. package/lib/pages/cms/orders/OrderDetailPage.es.js +283 -95
  57. package/lib/pages/cms/orders/OrderPrintButton.cjs.js +1 -1
  58. package/lib/pages/cms/orders/OrderPrintButton.es.js +21 -9
  59. package/lib/pages/cms/orders/OrderStatusForm.cjs.js +1 -1
  60. package/lib/pages/cms/orders/OrderStatusForm.es.js +106 -46
  61. package/lib/pages/cms/orders/OrdersPage.cjs.js +1 -1
  62. package/lib/pages/cms/orders/OrdersPage.es.js +257 -78
  63. package/lib/pages/cms/payments/PaymentsClient.cjs.js +1 -1
  64. package/lib/pages/cms/payments/PaymentsClient.es.js +551 -155
  65. package/lib/pages/cms/payments/PaymentsPage.cjs.js +1 -1
  66. package/lib/pages/cms/payments/PaymentsPage.es.js +24 -16
  67. package/lib/pages/cms/products/ProductsPage.cjs.js +1 -1
  68. package/lib/pages/cms/products/ProductsPage.es.js +77 -37
  69. package/lib/pages/cms/products/_id_/edit/EditProductPage.cjs.js +1 -1
  70. package/lib/pages/cms/products/_id_/edit/EditProductPage.es.js +176 -96
  71. package/lib/pages/cms/products/attributes/AttributeManagementPage.cjs.js +1 -1
  72. package/lib/pages/cms/products/attributes/AttributeManagementPage.es.js +85 -41
  73. package/lib/pages/cms/products/attributes/components/AttributeManager.cjs.js +1 -1
  74. package/lib/pages/cms/products/attributes/components/AttributeManager.es.js +455 -192
  75. package/lib/pages/cms/products/categories/CategoryManagementPage.cjs.js +1 -1
  76. package/lib/pages/cms/products/categories/CategoryManagementPage.es.js +72 -28
  77. package/lib/pages/cms/products/categories/components/CategoryManager.cjs.js +1 -1
  78. package/lib/pages/cms/products/categories/components/CategoryManager.es.js +490 -183
  79. package/lib/pages/cms/products/components/CopyProductFromLanguage.cjs.js +1 -1
  80. package/lib/pages/cms/products/components/CopyProductFromLanguage.es.js +175 -67
  81. package/lib/pages/cms/products/components/CurrencyPriceFields.cjs.js +1 -1
  82. package/lib/pages/cms/products/components/CurrencyPriceFields.es.js +211 -100
  83. package/lib/pages/cms/products/components/DeleteProductButton.cjs.js +1 -1
  84. package/lib/pages/cms/products/components/DeleteProductButton.es.js +45 -25
  85. package/lib/pages/cms/products/components/FreemiusPricingDashboard.cjs.js +1 -1
  86. package/lib/pages/cms/products/components/FreemiusPricingDashboard.es.js +202 -58
  87. package/lib/pages/cms/products/components/ProductCategorySelector.cjs.js +1 -1
  88. package/lib/pages/cms/products/components/ProductCategorySelector.es.js +234 -88
  89. package/lib/pages/cms/products/components/ProductForm.cjs.js +1 -1
  90. package/lib/pages/cms/products/components/ProductForm.es.js +1199 -551
  91. package/lib/pages/cms/products/components/ProductMediaManager.cjs.js +1 -1
  92. package/lib/pages/cms/products/components/ProductMediaManager.es.js +154 -63
  93. package/lib/pages/cms/products/components/ProductsBulkTable.cjs.js +1 -1
  94. package/lib/pages/cms/products/components/ProductsBulkTable.es.js +391 -144
  95. package/lib/pages/cms/products/components/SaleScheduleFields.cjs.js +1 -1
  96. package/lib/pages/cms/products/components/SaleScheduleFields.es.js +203 -87
  97. package/lib/pages/cms/products/components/SyncFreemiusButton.cjs.js +1 -1
  98. package/lib/pages/cms/products/components/SyncFreemiusButton.es.js +30 -18
  99. package/lib/pages/cms/products/components/SyncFreemiusPricingButton.cjs.js +2 -2
  100. package/lib/pages/cms/products/components/SyncFreemiusPricingButton.es.js +35 -23
  101. package/lib/pages/cms/products/components/VariationsEditor.cjs.js +1 -1
  102. package/lib/pages/cms/products/components/VariationsEditor.es.js +492 -261
  103. package/lib/pages/cms/products/inventory/InventoryPage.cjs.js +1 -1
  104. package/lib/pages/cms/products/inventory/InventoryPage.es.js +33 -13
  105. package/lib/pages/cms/products/inventory/InventoryTableClient.cjs.js +2 -2
  106. package/lib/pages/cms/products/inventory/InventoryTableClient.es.js +365 -145
  107. package/lib/pages/cms/products/new/NewProductPage.cjs.js +1 -1
  108. package/lib/pages/cms/products/new/NewProductPage.es.js +46 -34
  109. package/lib/pages/cms/products/server-actions.cjs.js +1 -1
  110. package/lib/pages/cms/products/server-actions.es.js +163 -139
  111. package/lib/pages/cms/shipping/ShippingPage.cjs.js +2 -2
  112. package/lib/pages/cms/shipping/ShippingPage.es.js +507 -155
  113. package/lib/pages/cms/shipping/components/RateForm.cjs.js +1 -1
  114. package/lib/pages/cms/shipping/components/RateForm.es.js +717 -334
  115. package/lib/pages/cms/shipping/components/ZoneForm.cjs.js +1 -1
  116. package/lib/pages/cms/shipping/components/ZoneForm.es.js +392 -158
  117. package/lib/pages/cms/taxes/TaxesPage.cjs.js +1 -1
  118. package/lib/pages/cms/taxes/TaxesPage.es.js +448 -120
  119. package/lib/pages/cms/taxes/components/TaxRateForm.cjs.js +1 -1
  120. package/lib/pages/cms/taxes/components/TaxRateForm.es.js +159 -55
  121. package/lib/product-context.cjs.js +1 -1
  122. package/lib/product-context.es.js +14 -10
  123. package/package.json +4 -4
@@ -1,82 +1,82 @@
1
1
  'use client';
2
- import { jsxs as s, jsx as t } from "react/jsx-runtime";
3
- import K from "next/image";
4
- import S from "next/link";
5
- import { useRouter as W } from "next/navigation";
6
- import { useState as b, useTransition as X, useMemo as x, useEffect as q } from "react";
7
- import { Search as F, Archive as G, Trash2 as J } from "lucide-react";
8
- import { Input as O, Button as v, Table as Y, TableHeader as Z, TableRow as p, TableHead as c, Checkbox as C, TableBody as ee, TableCell as a, Badge as te } from "@nextblock-cms/ui";
9
- import { formatPrice as I } from "@nextblock-cms/utils";
10
- import { DeleteProductButton as le } from "./DeleteProductButton.es.js";
11
- const $ = process.env.NEXT_PUBLIC_R2_BASE_URL || "";
12
- function re(n) {
13
- return n ? n.startsWith("http") || !$ ? n : `${$.replace(/\/+$/, "")}/${n.replace(/^\/+/, "")}` : null;
2
+ import { jsxDEV as s } from "react/jsx-dev-runtime";
3
+ import H from "next/image";
4
+ import v from "next/link";
5
+ import { useRouter as K } from "next/navigation";
6
+ import { useState as N, useTransition as W, useMemo as k, useEffect as X } from "react";
7
+ import { Search as q, Archive as F, Trash2 as G } from "lucide-react";
8
+ import { Input as J, Button as f, Table as O, TableHeader as Y, TableRow as B, TableHead as n, Checkbox as w, TableBody as Z, TableCell as o, Badge as ee } from "@nextblock-cms/ui";
9
+ import { formatPrice as y } from "@nextblock-cms/utils";
10
+ import { DeleteProductButton as se } from "./DeleteProductButton.es.js";
11
+ const S = process.env.NEXT_PUBLIC_R2_BASE_URL || "";
12
+ function le(t) {
13
+ return t ? t.startsWith("http") || !S ? t : `${S.replace(/\/+$/, "")}/${t.replace(/^\/+/, "")}` : null;
14
14
  }
15
- function fe({
16
- products: n,
17
- languageLabels: w,
18
- defaultCurrencyCode: k,
19
- deleteProductAction: E,
20
- bulkDeleteProductsAction: j,
21
- bulkDraftProductsAction: L
15
+ function be({
16
+ products: t,
17
+ languageLabels: h,
18
+ defaultCurrencyCode: P,
19
+ deleteProductAction: _,
20
+ bulkDeleteProductsAction: A,
21
+ bulkDraftProductsAction: E
22
22
  }) {
23
- const z = W(), [o, m] = b(() => /* @__PURE__ */ new Set()), [N, D] = b(""), [_, u] = b(null), [f, y] = b(null), [B, R] = X(), g = x(() => {
24
- const e = N.trim().toLowerCase();
25
- return e ? n.filter((l) => {
26
- const i = w[String(l.language_id)] || "";
23
+ const I = K(), [i, u] = N(() => /* @__PURE__ */ new Set()), [x, $] = N(""), [T, d] = N(null), [b, g] = N(null), [C, L] = W(), p = k(() => {
24
+ const e = x.trim().toLowerCase();
25
+ return e ? t.filter((l) => {
26
+ const c = h[String(l.language_id)] || "";
27
27
  return [
28
28
  l.title,
29
29
  l.sku,
30
30
  l.slug,
31
31
  l.status,
32
- i
32
+ c
33
33
  ].filter(Boolean).join(" ").toLowerCase().includes(e);
34
- }) : n;
35
- }, [w, n, N]), P = x(() => n.map((e) => e.id), [n]), h = x(
36
- () => g.map((e) => e.id),
37
- [g]
38
- ), d = x(
39
- () => n.filter((e) => o.has(e.id)),
40
- [n, o]
41
- ).length, U = d > 1, V = h.filter(
42
- (e) => o.has(e)
43
- ).length, A = h.length > 0 && h.every((e) => o.has(e)), M = V > 0 && !A;
44
- q(() => {
45
- const e = new Set(P);
46
- m((l) => {
47
- const i = new Set(
34
+ }) : t;
35
+ }, [h, t, x]), j = k(() => t.map((e) => e.id), [t]), a = k(
36
+ () => p.map((e) => e.id),
37
+ [p]
38
+ ), m = k(
39
+ () => t.filter((e) => i.has(e.id)),
40
+ [t, i]
41
+ ).length, z = m > 1, V = a.filter(
42
+ (e) => i.has(e)
43
+ ).length, D = a.length > 0 && a.every((e) => i.has(e)), R = V > 0 && !D;
44
+ X(() => {
45
+ const e = new Set(j);
46
+ u((l) => {
47
+ const c = new Set(
48
48
  Array.from(l).filter((r) => e.has(r))
49
49
  );
50
- return i.size === l.size ? l : i;
50
+ return c.size === l.size ? l : c;
51
51
  });
52
- }, [P]);
53
- const Q = (e) => {
54
- m((l) => {
55
- const i = new Set(l);
56
- return e ? h.forEach((r) => i.add(r)) : h.forEach((r) => i.delete(r)), i;
52
+ }, [j]);
53
+ const M = (e) => {
54
+ u((l) => {
55
+ const c = new Set(l);
56
+ return e ? a.forEach((r) => c.add(r)) : a.forEach((r) => c.delete(r)), c;
57
57
  });
58
- }, H = (e, l) => {
59
- m((i) => {
60
- const r = new Set(i);
58
+ }, Q = (e, l) => {
59
+ u((c) => {
60
+ const r = new Set(c);
61
61
  return l ? r.add(e) : r.delete(e), r;
62
62
  });
63
- }, T = (e, l, i) => {
64
- if (d === 0) {
65
- u("Select at least one product first.");
63
+ }, U = (e, l, c) => {
64
+ if (m === 0) {
65
+ d("Select at least one product first.");
66
66
  return;
67
67
  }
68
- window.confirm(l) && (u(null), y(e), R(async () => {
68
+ window.confirm(l) && (d(null), g(e), L(async () => {
69
69
  try {
70
- const r = await i(Array.from(o));
70
+ const r = await c(Array.from(i));
71
71
  if (!r.success) {
72
- u(r.error || "Bulk action failed. Please try again."), y(null);
72
+ d(r.error || "Bulk action failed. Please try again."), g(null);
73
73
  return;
74
74
  }
75
- m(/* @__PURE__ */ new Set()), z.refresh();
75
+ u(/* @__PURE__ */ new Set()), I.refresh();
76
76
  } catch (r) {
77
- console.error("Bulk product action failed:", r), u("Bulk action failed. Please try again.");
77
+ console.error("Bulk product action failed:", r), d("Bulk action failed. Please try again.");
78
78
  } finally {
79
- y(null);
79
+ g(null);
80
80
  }
81
81
  }));
82
82
  };
@@ -84,145 +84,392 @@ function fe({
84
84
  /* @__PURE__ */ s("div", { className: "flex min-h-14 flex-wrap items-center justify-between gap-3 border-b bg-muted/20 px-4 py-3", children: [
85
85
  /* @__PURE__ */ s("div", { className: "flex min-w-[260px] flex-1 flex-wrap items-center gap-3", children: [
86
86
  /* @__PURE__ */ s("div", { className: "relative w-full max-w-sm", children: [
87
- /* @__PURE__ */ t(F, { className: "pointer-events-none absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-muted-foreground" }),
88
- /* @__PURE__ */ t(
89
- O,
87
+ /* @__PURE__ */ s(q, { className: "pointer-events-none absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-muted-foreground" }, void 0, !1, {
88
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
89
+ lineNumber: 214,
90
+ columnNumber: 13
91
+ }, this),
92
+ /* @__PURE__ */ s(
93
+ J,
90
94
  {
91
- value: N,
92
- onChange: (e) => D(e.target.value),
95
+ value: x,
96
+ onChange: (e) => $(e.target.value),
93
97
  placeholder: "Search products...",
94
98
  className: "h-9 pl-9",
95
99
  "aria-label": "Search products"
96
- }
100
+ },
101
+ void 0,
102
+ !1,
103
+ {
104
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
105
+ lineNumber: 215,
106
+ columnNumber: 13
107
+ },
108
+ this
97
109
  )
98
- ] }),
99
- d > 0 ? /* @__PURE__ */ s("span", { className: "text-sm font-medium text-foreground", children: [
100
- d,
110
+ ] }, void 0, !0, {
111
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
112
+ lineNumber: 213,
113
+ columnNumber: 11
114
+ }, this),
115
+ m > 0 ? /* @__PURE__ */ s("span", { className: "text-sm font-medium text-foreground", children: [
116
+ m,
101
117
  " selected"
102
- ] }) : null,
103
- _ ? /* @__PURE__ */ t("span", { className: "text-sm text-destructive", children: _ }) : null
104
- ] }),
105
- U ? /* @__PURE__ */ s("div", { className: "flex flex-wrap items-center gap-2", children: [
118
+ ] }, void 0, !0, {
119
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
120
+ lineNumber: 224,
121
+ columnNumber: 13
122
+ }, this) : null,
123
+ T ? /* @__PURE__ */ s("span", { className: "text-sm text-destructive", children: T }, void 0, !1, {
124
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
125
+ lineNumber: 229,
126
+ columnNumber: 13
127
+ }, this) : null
128
+ ] }, void 0, !0, {
129
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
130
+ lineNumber: 212,
131
+ columnNumber: 9
132
+ }, this),
133
+ z ? /* @__PURE__ */ s("div", { className: "flex flex-wrap items-center gap-2", children: [
106
134
  /* @__PURE__ */ s(
107
- v,
135
+ f,
108
136
  {
109
137
  variant: "outline",
110
138
  size: "sm",
111
- disabled: B,
112
- onClick: () => T(
139
+ disabled: C,
140
+ onClick: () => U(
113
141
  "Moving to draft...",
114
- `Move ${d} selected products to draft?`,
115
- L
142
+ `Move ${m} selected products to draft?`,
143
+ E
116
144
  ),
117
145
  children: [
118
- /* @__PURE__ */ t(G, { className: "mr-2 h-4 w-4" }),
119
- f === "Moving to draft..." ? f : "Set Draft"
146
+ /* @__PURE__ */ s(F, { className: "mr-2 h-4 w-4" }, void 0, !1, {
147
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
148
+ lineNumber: 246,
149
+ columnNumber: 15
150
+ }, this),
151
+ b === "Moving to draft..." ? b : "Set Draft"
120
152
  ]
121
- }
153
+ },
154
+ void 0,
155
+ !0,
156
+ {
157
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
158
+ lineNumber: 234,
159
+ columnNumber: 13
160
+ },
161
+ this
122
162
  ),
123
163
  /* @__PURE__ */ s(
124
- v,
164
+ f,
125
165
  {
126
166
  variant: "destructive",
127
167
  size: "sm",
128
- disabled: B,
129
- onClick: () => T(
168
+ disabled: C,
169
+ onClick: () => U(
130
170
  "Deleting...",
131
- `Delete ${d} selected products? This action cannot be undone.`,
132
- j
171
+ `Delete ${m} selected products? This action cannot be undone.`,
172
+ A
133
173
  ),
134
174
  children: [
135
- /* @__PURE__ */ t(J, { className: "mr-2 h-4 w-4" }),
136
- f === "Deleting..." ? f : "Delete"
175
+ /* @__PURE__ */ s(G, { className: "mr-2 h-4 w-4" }, void 0, !1, {
176
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
177
+ lineNumber: 261,
178
+ columnNumber: 15
179
+ }, this),
180
+ b === "Deleting..." ? b : "Delete"
137
181
  ]
138
- }
182
+ },
183
+ void 0,
184
+ !0,
185
+ {
186
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
187
+ lineNumber: 249,
188
+ columnNumber: 13
189
+ },
190
+ this
139
191
  )
140
- ] }) : null
141
- ] }),
142
- /* @__PURE__ */ s(Y, { children: [
143
- /* @__PURE__ */ t(Z, { children: /* @__PURE__ */ s(p, { children: [
144
- /* @__PURE__ */ t(c, { className: "w-12", children: /* @__PURE__ */ t(
145
- C,
192
+ ] }, void 0, !0, {
193
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
194
+ lineNumber: 233,
195
+ columnNumber: 11
196
+ }, this) : null
197
+ ] }, void 0, !0, {
198
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
199
+ lineNumber: 211,
200
+ columnNumber: 7
201
+ }, this),
202
+ /* @__PURE__ */ s(O, { children: [
203
+ /* @__PURE__ */ s(Y, { children: /* @__PURE__ */ s(B, { children: [
204
+ /* @__PURE__ */ s(n, { className: "w-12", children: /* @__PURE__ */ s(
205
+ w,
146
206
  {
147
- checked: A ? !0 : M ? "indeterminate" : !1,
148
- onCheckedChange: (e) => Q(e === !0),
207
+ checked: D ? !0 : R ? "indeterminate" : !1,
208
+ onCheckedChange: (e) => M(e === !0),
149
209
  "aria-label": "Select all products on this page"
150
- }
151
- ) }),
152
- /* @__PURE__ */ t(c, { children: "Image" }),
153
- /* @__PURE__ */ t(c, { children: "Title" }),
154
- /* @__PURE__ */ t(c, { children: "SKU" }),
155
- /* @__PURE__ */ t(c, { children: "Price" }),
156
- /* @__PURE__ */ t(c, { children: "Language" }),
157
- /* @__PURE__ */ t(c, { children: "Stock" }),
158
- /* @__PURE__ */ t(c, { children: "Status" }),
159
- /* @__PURE__ */ t(c, { className: "text-right", children: "Actions" })
160
- ] }) }),
161
- /* @__PURE__ */ t(ee, { children: g.length > 0 ? g.map((e) => {
162
- const l = re(
210
+ },
211
+ void 0,
212
+ !1,
213
+ {
214
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
215
+ lineNumber: 271,
216
+ columnNumber: 15
217
+ },
218
+ this
219
+ ) }, void 0, !1, {
220
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
221
+ lineNumber: 270,
222
+ columnNumber: 13
223
+ }, this),
224
+ /* @__PURE__ */ s(n, { children: "Image" }, void 0, !1, {
225
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
226
+ lineNumber: 283,
227
+ columnNumber: 13
228
+ }, this),
229
+ /* @__PURE__ */ s(n, { children: "Title" }, void 0, !1, {
230
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
231
+ lineNumber: 284,
232
+ columnNumber: 13
233
+ }, this),
234
+ /* @__PURE__ */ s(n, { children: "SKU" }, void 0, !1, {
235
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
236
+ lineNumber: 285,
237
+ columnNumber: 13
238
+ }, this),
239
+ /* @__PURE__ */ s(n, { children: "Price" }, void 0, !1, {
240
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
241
+ lineNumber: 286,
242
+ columnNumber: 13
243
+ }, this),
244
+ /* @__PURE__ */ s(n, { children: "Language" }, void 0, !1, {
245
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
246
+ lineNumber: 287,
247
+ columnNumber: 13
248
+ }, this),
249
+ /* @__PURE__ */ s(n, { children: "Stock" }, void 0, !1, {
250
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
251
+ lineNumber: 288,
252
+ columnNumber: 13
253
+ }, this),
254
+ /* @__PURE__ */ s(n, { children: "Status" }, void 0, !1, {
255
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
256
+ lineNumber: 289,
257
+ columnNumber: 13
258
+ }, this),
259
+ /* @__PURE__ */ s(n, { className: "text-right", children: "Actions" }, void 0, !1, {
260
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
261
+ lineNumber: 290,
262
+ columnNumber: 13
263
+ }, this)
264
+ ] }, void 0, !0, {
265
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
266
+ lineNumber: 269,
267
+ columnNumber: 11
268
+ }, this) }, void 0, !1, {
269
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
270
+ lineNumber: 268,
271
+ columnNumber: 9
272
+ }, this),
273
+ /* @__PURE__ */ s(Z, { children: p.length > 0 ? p.map((e) => {
274
+ const l = le(
163
275
  e.product_media?.[0]?.media?.file_path || e.product_media?.[0]?.media?.object_key
164
276
  );
165
277
  return /* @__PURE__ */ s(
166
- p,
278
+ B,
167
279
  {
168
- "data-state": o.has(e.id) ? "selected" : void 0,
280
+ "data-state": i.has(e.id) ? "selected" : void 0,
169
281
  children: [
170
- /* @__PURE__ */ t(a, { children: /* @__PURE__ */ t(
171
- C,
282
+ /* @__PURE__ */ s(o, { children: /* @__PURE__ */ s(
283
+ w,
172
284
  {
173
- checked: o.has(e.id),
174
- onCheckedChange: (i) => H(e.id, i === !0),
285
+ checked: i.has(e.id),
286
+ onCheckedChange: (c) => Q(e.id, c === !0),
175
287
  "aria-label": `Select ${e.title}`
176
- }
177
- ) }),
178
- /* @__PURE__ */ t(a, { children: l ? /* @__PURE__ */ t(
179
- K,
288
+ },
289
+ void 0,
290
+ !1,
291
+ {
292
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
293
+ lineNumber: 307,
294
+ columnNumber: 21
295
+ },
296
+ this
297
+ ) }, void 0, !1, {
298
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
299
+ lineNumber: 306,
300
+ columnNumber: 19
301
+ }, this),
302
+ /* @__PURE__ */ s(o, { children: l ? /* @__PURE__ */ s(
303
+ H,
180
304
  {
181
305
  src: l,
182
306
  alt: e.title,
183
307
  width: 40,
184
308
  height: 40,
185
309
  className: "w-10 h-10 object-cover rounded"
186
- }
187
- ) : /* @__PURE__ */ t("div", { className: "w-10 h-10 bg-gray-200 rounded flex items-center justify-center text-xs text-gray-500", children: "No Img" }) }),
188
- /* @__PURE__ */ t(a, { className: "font-medium", children: /* @__PURE__ */ t(S, { href: `/cms/products/${e.id}/edit`, className: "hover:underline", children: e.title }) }),
189
- /* @__PURE__ */ t(a, { children: e.sku }),
190
- /* @__PURE__ */ t(a, { children: /* @__PURE__ */ s("div", { className: "flex items-baseline gap-2", children: [
191
- /* @__PURE__ */ t("span", { className: e.sale_price ? "font-semibold text-primary" : "", children: typeof (e.sale_price ?? e.price) == "number" ? I(
310
+ },
311
+ void 0,
312
+ !1,
313
+ {
314
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
315
+ lineNumber: 317,
316
+ columnNumber: 23
317
+ },
318
+ this
319
+ ) : /* @__PURE__ */ s("div", { className: "w-10 h-10 bg-gray-200 rounded flex items-center justify-center text-xs text-gray-500", children: "No Img" }, void 0, !1, {
320
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
321
+ lineNumber: 325,
322
+ columnNumber: 23
323
+ }, this) }, void 0, !1, {
324
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
325
+ lineNumber: 315,
326
+ columnNumber: 19
327
+ }, this),
328
+ /* @__PURE__ */ s(o, { className: "font-medium", children: /* @__PURE__ */ s(v, { href: `/cms/products/${e.id}/edit`, className: "hover:underline", children: e.title }, void 0, !1, {
329
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
330
+ lineNumber: 331,
331
+ columnNumber: 21
332
+ }, this) }, void 0, !1, {
333
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
334
+ lineNumber: 330,
335
+ columnNumber: 19
336
+ }, this),
337
+ /* @__PURE__ */ s(o, { children: e.sku }, void 0, !1, {
338
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
339
+ lineNumber: 335,
340
+ columnNumber: 19
341
+ }, this),
342
+ /* @__PURE__ */ s(o, { children: /* @__PURE__ */ s("div", { className: "flex items-baseline gap-2", children: [
343
+ /* @__PURE__ */ s("span", { className: e.sale_price ? "font-semibold text-primary" : "", children: typeof (e.sale_price ?? e.price) == "number" ? y(
192
344
  e.sale_price ?? e.price ?? 0,
193
- k
194
- ) : "N/A" }),
195
- e.sale_price ? /* @__PURE__ */ t("span", { className: "text-sm text-muted-foreground line-through", children: I(e.price ?? 0, k) }) : null
196
- ] }) }),
197
- /* @__PURE__ */ t(a, { children: /* @__PURE__ */ t(te, { variant: "outline", children: w[String(e.language_id)] || "N/A" }) }),
198
- /* @__PURE__ */ t(a, { children: e.stock }),
199
- /* @__PURE__ */ t(a, { children: /* @__PURE__ */ t(
345
+ P
346
+ ) : "N/A" }, void 0, !1, {
347
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
348
+ lineNumber: 338,
349
+ columnNumber: 23
350
+ }, this),
351
+ e.sale_price ? /* @__PURE__ */ s("span", { className: "text-sm text-muted-foreground line-through", children: y(e.price ?? 0, P) }, void 0, !1, {
352
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
353
+ lineNumber: 347,
354
+ columnNumber: 25
355
+ }, this) : null
356
+ ] }, void 0, !0, {
357
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
358
+ lineNumber: 337,
359
+ columnNumber: 21
360
+ }, this) }, void 0, !1, {
361
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
362
+ lineNumber: 336,
363
+ columnNumber: 19
364
+ }, this),
365
+ /* @__PURE__ */ s(o, { children: /* @__PURE__ */ s(ee, { variant: "outline", children: h[String(e.language_id)] || "N/A" }, void 0, !1, {
366
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
367
+ lineNumber: 354,
368
+ columnNumber: 21
369
+ }, this) }, void 0, !1, {
370
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
371
+ lineNumber: 353,
372
+ columnNumber: 19
373
+ }, this),
374
+ /* @__PURE__ */ s(o, { children: e.stock }, void 0, !1, {
375
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
376
+ lineNumber: 358,
377
+ columnNumber: 19
378
+ }, this),
379
+ /* @__PURE__ */ s(o, { children: /* @__PURE__ */ s(
200
380
  "span",
201
381
  {
202
382
  className: `px-2 py-1 rounded text-xs ${e.status === "active" ? "bg-green-100 text-green-800" : e.status === "archived" ? "bg-gray-100 text-gray-800" : "bg-yellow-100 text-yellow-800"}`,
203
383
  children: e.status
204
- }
205
- ) }),
206
- /* @__PURE__ */ s(a, { className: "text-right flex justify-end gap-2 items-center", children: [
207
- e.slug ? /* @__PURE__ */ t(S, { href: `/product/${e.slug}`, target: "_blank", rel: "noopener noreferrer", children: /* @__PURE__ */ t(v, { variant: "outline", size: "sm", children: "View Product" }) }) : null,
208
- /* @__PURE__ */ t(S, { href: `/cms/products/${e.id}/edit`, children: /* @__PURE__ */ t(v, { variant: "ghost", size: "sm", children: "Edit" }) }),
209
- /* @__PURE__ */ t(
210
- le,
384
+ },
385
+ void 0,
386
+ !1,
387
+ {
388
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
389
+ lineNumber: 360,
390
+ columnNumber: 21
391
+ },
392
+ this
393
+ ) }, void 0, !1, {
394
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
395
+ lineNumber: 359,
396
+ columnNumber: 19
397
+ }, this),
398
+ /* @__PURE__ */ s(o, { className: "text-right flex justify-end gap-2 items-center", children: [
399
+ e.slug ? /* @__PURE__ */ s(v, { href: `/product/${e.slug}`, target: "_blank", rel: "noopener noreferrer", children: /* @__PURE__ */ s(f, { variant: "outline", size: "sm", children: "View Product" }, void 0, !1, {
400
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
401
+ lineNumber: 375,
402
+ columnNumber: 25
403
+ }, this) }, void 0, !1, {
404
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
405
+ lineNumber: 374,
406
+ columnNumber: 23
407
+ }, this) : null,
408
+ /* @__PURE__ */ s(v, { href: `/cms/products/${e.id}/edit`, children: /* @__PURE__ */ s(f, { variant: "ghost", size: "sm", children: "Edit" }, void 0, !1, {
409
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
410
+ lineNumber: 381,
411
+ columnNumber: 23
412
+ }, this) }, void 0, !1, {
413
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
414
+ lineNumber: 380,
415
+ columnNumber: 21
416
+ }, this),
417
+ /* @__PURE__ */ s(
418
+ se,
211
419
  {
212
420
  productName: e.title,
213
421
  isIcon: !0,
214
- deleteAction: () => E(e.id)
215
- }
422
+ deleteAction: () => _(e.id)
423
+ },
424
+ void 0,
425
+ !1,
426
+ {
427
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
428
+ lineNumber: 385,
429
+ columnNumber: 21
430
+ },
431
+ this
216
432
  )
217
- ] })
433
+ ] }, void 0, !0, {
434
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
435
+ lineNumber: 372,
436
+ columnNumber: 19
437
+ }, this)
218
438
  ]
219
439
  },
220
- e.id
440
+ e.id,
441
+ !0,
442
+ {
443
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
444
+ lineNumber: 302,
445
+ columnNumber: 17
446
+ },
447
+ this
221
448
  );
222
- }) : /* @__PURE__ */ t(p, { children: /* @__PURE__ */ t(a, { colSpan: 9, className: "text-center py-10", children: n.length === 0 ? "No products found." : "No products match your search." }) }) })
223
- ] })
224
- ] });
449
+ }) : /* @__PURE__ */ s(B, { children: /* @__PURE__ */ s(o, { colSpan: 9, className: "text-center py-10", children: t.length === 0 ? "No products found." : "No products match your search." }, void 0, !1, {
450
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
451
+ lineNumber: 396,
452
+ columnNumber: 15
453
+ }, this) }, void 0, !1, {
454
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
455
+ lineNumber: 395,
456
+ columnNumber: 13
457
+ }, this) }, void 0, !1, {
458
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
459
+ lineNumber: 293,
460
+ columnNumber: 9
461
+ }, this)
462
+ ] }, void 0, !0, {
463
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
464
+ lineNumber: 267,
465
+ columnNumber: 7
466
+ }, this)
467
+ ] }, void 0, !0, {
468
+ fileName: "C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/products/components/ProductsBulkTable.tsx",
469
+ lineNumber: 210,
470
+ columnNumber: 5
471
+ }, this);
225
472
  }
226
473
  export {
227
- fe as ProductsBulkTable
474
+ be as ProductsBulkTable
228
475
  };