@nextblock-cms/ecom 0.14.0 → 0.14.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.
- package/lib/CurrencyProvider.cjs.js +1 -1
- package/lib/CurrencyProvider.es.js +24 -24
- package/lib/components/AccountNavigationMenu.cjs.js +1 -1
- package/lib/components/AccountNavigationMenu.es.js +28 -28
- package/lib/components/AddToCartButton.cjs.js +1 -1
- package/lib/components/AddToCartButton.es.js +39 -39
- package/lib/components/Cart.cjs.js +1 -1
- package/lib/components/Cart.es.js +141 -141
- package/lib/components/CartDrawer.cjs.js +1 -1
- package/lib/components/CartDrawer.es.js +96 -96
- package/lib/components/CartIcon.cjs.js +1 -1
- package/lib/components/CartIcon.es.js +17 -17
- package/lib/components/Checkout.cjs.js +1 -1
- package/lib/components/Checkout.es.js +596 -596
- package/lib/components/CouponForm.cjs.js +1 -1
- package/lib/components/CouponForm.es.js +89 -89
- package/lib/components/CurrencySwitcher.cjs.js +1 -1
- package/lib/components/CurrencySwitcher.es.js +16 -16
- package/lib/components/CustomerProfileForm.cjs.js +1 -1
- package/lib/components/CustomerProfileForm.es.js +230 -230
- package/lib/components/FeaturedProduct.cjs.js +1 -1
- package/lib/components/FeaturedProduct.es.js +33 -33
- package/lib/components/FreemiusLicensePanel.cjs.js +1 -1
- package/lib/components/FreemiusLicensePanel.es.js +43 -43
- package/lib/components/InvoiceDocument.cjs.js +1 -1
- package/lib/components/InvoiceDocument.es.js +161 -161
- package/lib/components/InvoiceViewerShell.cjs.js +2 -2
- package/lib/components/InvoiceViewerShell.es.js +53 -53
- package/lib/components/ProductCard.cjs.js +1 -1
- package/lib/components/ProductCard.es.js +72 -72
- package/lib/components/ProductDetailsLayout.cjs.js +1 -1
- package/lib/components/ProductDetailsLayout.es.js +263 -263
- package/lib/components/ProductGallery.cjs.js +1 -1
- package/lib/components/ProductGallery.es.js +24 -24
- package/lib/components/ProductGrid.cjs.js +1 -1
- package/lib/components/ProductGrid.es.js +11 -11
- package/lib/components/ShippingEstimator.cjs.js +1 -1
- package/lib/components/ShippingEstimator.es.js +74 -74
- package/lib/components/SimpleTiptapRenderer.cjs.js +1 -1
- package/lib/components/SimpleTiptapRenderer.es.js +61 -61
- package/lib/components/SubscriptionSelector.cjs.js +1 -1
- package/lib/components/SubscriptionSelector.es.js +82 -82
- package/lib/pages/cms/coupons/CouponEditorForm.cjs.js +1 -1
- package/lib/pages/cms/coupons/CouponEditorForm.es.js +104 -104
- package/lib/pages/cms/coupons/CouponsPage.cjs.js +2 -2
- package/lib/pages/cms/coupons/CouponsPage.es.js +100 -100
- package/lib/pages/cms/coupons/CreateCouponDialog.cjs.js +1 -1
- package/lib/pages/cms/coupons/CreateCouponDialog.es.js +19 -19
- package/lib/pages/cms/coupons/EditCouponPage.cjs.js +1 -1
- package/lib/pages/cms/coupons/EditCouponPage.es.js +22 -22
- package/lib/pages/cms/coupons/ProductScopePicker.cjs.js +1 -1
- package/lib/pages/cms/coupons/ProductScopePicker.es.js +57 -57
- package/lib/pages/cms/orders/ExportReportsDialog.cjs.js +1 -1
- package/lib/pages/cms/orders/ExportReportsDialog.es.js +71 -71
- package/lib/pages/cms/orders/OrderDetailPage.cjs.js +1 -1
- package/lib/pages/cms/orders/OrderDetailPage.es.js +57 -57
- package/lib/pages/cms/orders/OrderPrintButton.cjs.js +1 -1
- package/lib/pages/cms/orders/OrderPrintButton.es.js +4 -4
- package/lib/pages/cms/orders/OrderStatusForm.cjs.js +1 -1
- package/lib/pages/cms/orders/OrderStatusForm.es.js +30 -30
- package/lib/pages/cms/orders/OrdersPage.cjs.js +1 -1
- package/lib/pages/cms/orders/OrdersPage.es.js +50 -50
- package/lib/pages/cms/payments/PaymentsClient.cjs.js +1 -1
- package/lib/pages/cms/payments/PaymentsClient.es.js +164 -164
- package/lib/pages/cms/payments/PaymentsPage.cjs.js +1 -1
- package/lib/pages/cms/payments/PaymentsPage.es.js +11 -11
- package/lib/pages/cms/products/ProductsPage.cjs.js +1 -1
- package/lib/pages/cms/products/ProductsPage.es.js +31 -31
- package/lib/pages/cms/products/_id_/edit/EditProductPage.cjs.js +1 -1
- package/lib/pages/cms/products/_id_/edit/EditProductPage.es.js +57 -57
- package/lib/pages/cms/products/attributes/AttributeManagementPage.cjs.js +1 -1
- package/lib/pages/cms/products/attributes/AttributeManagementPage.es.js +18 -18
- package/lib/pages/cms/products/attributes/components/AttributeManager.cjs.js +1 -1
- package/lib/pages/cms/products/attributes/components/AttributeManager.es.js +123 -123
- package/lib/pages/cms/products/categories/CategoryManagementPage.cjs.js +1 -1
- package/lib/pages/cms/products/categories/CategoryManagementPage.es.js +18 -18
- package/lib/pages/cms/products/categories/components/CategoryManager.cjs.js +1 -1
- package/lib/pages/cms/products/categories/components/CategoryManager.es.js +132 -132
- package/lib/pages/cms/products/components/CopyProductFromLanguage.cjs.js +1 -1
- package/lib/pages/cms/products/components/CopyProductFromLanguage.es.js +75 -75
- package/lib/pages/cms/products/components/CurrencyPriceFields.cjs.js +1 -1
- package/lib/pages/cms/products/components/CurrencyPriceFields.es.js +66 -66
- package/lib/pages/cms/products/components/DeleteProductButton.cjs.js +1 -1
- package/lib/pages/cms/products/components/DeleteProductButton.es.js +11 -11
- package/lib/pages/cms/products/components/FreemiusPricingDashboard.cjs.js +1 -1
- package/lib/pages/cms/products/components/FreemiusPricingDashboard.es.js +59 -59
- package/lib/pages/cms/products/components/ProductCategorySelector.cjs.js +1 -1
- package/lib/pages/cms/products/components/ProductCategorySelector.es.js +85 -85
- package/lib/pages/cms/products/components/ProductForm.cjs.js +1 -1
- package/lib/pages/cms/products/components/ProductForm.es.js +451 -451
- package/lib/pages/cms/products/components/ProductMediaManager.cjs.js +1 -1
- package/lib/pages/cms/products/components/ProductMediaManager.es.js +49 -49
- package/lib/pages/cms/products/components/ProductsBulkTable.cjs.js +1 -1
- package/lib/pages/cms/products/components/ProductsBulkTable.es.js +147 -147
- package/lib/pages/cms/products/components/SaleScheduleFields.cjs.js +1 -1
- package/lib/pages/cms/products/components/SaleScheduleFields.es.js +60 -60
- package/lib/pages/cms/products/components/SyncFreemiusButton.cjs.js +1 -1
- package/lib/pages/cms/products/components/SyncFreemiusButton.es.js +2 -2
- package/lib/pages/cms/products/components/SyncFreemiusPricingButton.cjs.js +2 -2
- package/lib/pages/cms/products/components/SyncFreemiusPricingButton.es.js +12 -12
- package/lib/pages/cms/products/components/VariationsEditor.cjs.js +1 -1
- package/lib/pages/cms/products/components/VariationsEditor.es.js +228 -228
- package/lib/pages/cms/products/inventory/InventoryPage.cjs.js +1 -1
- package/lib/pages/cms/products/inventory/InventoryPage.es.js +7 -7
- package/lib/pages/cms/products/inventory/InventoryTableClient.cjs.js +2 -2
- package/lib/pages/cms/products/inventory/InventoryTableClient.es.js +125 -125
- package/lib/pages/cms/products/new/NewProductPage.cjs.js +1 -1
- package/lib/pages/cms/products/new/NewProductPage.es.js +30 -30
- package/lib/pages/cms/shipping/ShippingPage.cjs.js +2 -2
- package/lib/pages/cms/shipping/ShippingPage.es.js +168 -168
- package/lib/pages/cms/shipping/components/RateForm.cjs.js +1 -1
- package/lib/pages/cms/shipping/components/RateForm.es.js +291 -291
- package/lib/pages/cms/shipping/components/ZoneForm.cjs.js +1 -1
- package/lib/pages/cms/shipping/components/ZoneForm.es.js +140 -140
- package/lib/pages/cms/taxes/TaxesPage.cjs.js +1 -1
- package/lib/pages/cms/taxes/TaxesPage.es.js +132 -132
- package/lib/pages/cms/taxes/components/TaxRateForm.cjs.js +1 -1
- package/lib/pages/cms/taxes/components/TaxRateForm.es.js +49 -49
- package/lib/product-context.cjs.js +1 -1
- package/lib/product-context.es.js +8 -8
- package/package.json +4 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-dev-runtime"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-dev-runtime"),t=require("react"),a=require("@nextblock-cms/ui/button"),s=require("@nextblock-cms/ui/dialog"),c=require("lucide-react"),u=require("./CouponEditorForm.cjs.js");function m({action:o,products:r,currencyCode:i}){const[l,n]=t.useState(!1);return e.jsxDEV(s.Dialog,{open:l,onOpenChange:n,children:[e.jsxDEV(s.DialogTrigger,{asChild:!0,children:e.jsxDEV(a.Button,{type:"button",className:"gap-2",children:[e.jsxDEV(c.Plus,{className:"h-4 w-4"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/CreateCouponDialog.tsx",lineNumber:32,columnNumber:11},this),"Create Coupon"]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/CreateCouponDialog.tsx",lineNumber:31,columnNumber:9},this)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/CreateCouponDialog.tsx",lineNumber:30,columnNumber:7},this),e.jsxDEV(s.DialogContent,{className:"max-h-[90vh] overflow-y-auto sm:max-w-[92vw] lg:max-w-5xl xl:max-w-6xl",children:[e.jsxDEV(s.DialogHeader,{children:e.jsxDEV(s.DialogTitle,{className:"sr-only",children:"Create Coupon"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/CreateCouponDialog.tsx",lineNumber:38,columnNumber:11},this)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/CreateCouponDialog.tsx",lineNumber:37,columnNumber:9},this),e.jsxDEV(u.CouponEditorForm,{action:o,products:r,submitLabel:"Create Coupon",currencyCode:i},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/CreateCouponDialog.tsx",lineNumber:40,columnNumber:9},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/CreateCouponDialog.tsx",lineNumber:36,columnNumber:7},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/CreateCouponDialog.tsx",lineNumber:29,columnNumber:5},this)}exports.CreateCouponDialog=m;
|
|
@@ -1,67 +1,67 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { jsxDEV as e } from "react/jsx-dev-runtime";
|
|
3
|
-
import { useState as
|
|
3
|
+
import { useState as m } from "react";
|
|
4
4
|
import { Button as a } from "@nextblock-cms/ui/button";
|
|
5
|
-
import { Dialog as n, DialogTrigger as t, DialogContent as c, DialogHeader as
|
|
6
|
-
import { Plus as
|
|
7
|
-
import { CouponEditorForm as
|
|
5
|
+
import { Dialog as n, DialogTrigger as t, DialogContent as c, DialogHeader as u, DialogTitle as p } from "@nextblock-cms/ui/dialog";
|
|
6
|
+
import { Plus as N } from "lucide-react";
|
|
7
|
+
import { CouponEditorForm as C } from "./CouponEditorForm.es.js";
|
|
8
8
|
function h({
|
|
9
9
|
action: o,
|
|
10
10
|
products: s,
|
|
11
|
-
currencyCode:
|
|
11
|
+
currencyCode: r
|
|
12
12
|
}) {
|
|
13
|
-
const [
|
|
14
|
-
return /* @__PURE__ */ e(n, { open:
|
|
13
|
+
const [i, l] = m(!1);
|
|
14
|
+
return /* @__PURE__ */ e(n, { open: i, onOpenChange: l, children: [
|
|
15
15
|
/* @__PURE__ */ e(t, { asChild: !0, children: /* @__PURE__ */ e(a, { type: "button", className: "gap-2", children: [
|
|
16
|
-
/* @__PURE__ */ e(
|
|
17
|
-
fileName: "
|
|
16
|
+
/* @__PURE__ */ e(N, { className: "h-4 w-4" }, void 0, !1, {
|
|
17
|
+
fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/CreateCouponDialog.tsx",
|
|
18
18
|
lineNumber: 32,
|
|
19
19
|
columnNumber: 11
|
|
20
20
|
}, this),
|
|
21
21
|
"Create Coupon"
|
|
22
22
|
] }, void 0, !0, {
|
|
23
|
-
fileName: "
|
|
23
|
+
fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/CreateCouponDialog.tsx",
|
|
24
24
|
lineNumber: 31,
|
|
25
25
|
columnNumber: 9
|
|
26
26
|
}, this) }, void 0, !1, {
|
|
27
|
-
fileName: "
|
|
27
|
+
fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/CreateCouponDialog.tsx",
|
|
28
28
|
lineNumber: 30,
|
|
29
29
|
columnNumber: 7
|
|
30
30
|
}, this),
|
|
31
31
|
/* @__PURE__ */ e(c, { className: "max-h-[90vh] overflow-y-auto sm:max-w-[92vw] lg:max-w-5xl xl:max-w-6xl", children: [
|
|
32
|
-
/* @__PURE__ */ e(
|
|
33
|
-
fileName: "
|
|
32
|
+
/* @__PURE__ */ e(u, { children: /* @__PURE__ */ e(p, { className: "sr-only", children: "Create Coupon" }, void 0, !1, {
|
|
33
|
+
fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/CreateCouponDialog.tsx",
|
|
34
34
|
lineNumber: 38,
|
|
35
35
|
columnNumber: 11
|
|
36
36
|
}, this) }, void 0, !1, {
|
|
37
|
-
fileName: "
|
|
37
|
+
fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/CreateCouponDialog.tsx",
|
|
38
38
|
lineNumber: 37,
|
|
39
39
|
columnNumber: 9
|
|
40
40
|
}, this),
|
|
41
41
|
/* @__PURE__ */ e(
|
|
42
|
-
|
|
42
|
+
C,
|
|
43
43
|
{
|
|
44
44
|
action: o,
|
|
45
45
|
products: s,
|
|
46
46
|
submitLabel: "Create Coupon",
|
|
47
|
-
currencyCode:
|
|
47
|
+
currencyCode: r
|
|
48
48
|
},
|
|
49
49
|
void 0,
|
|
50
50
|
!1,
|
|
51
51
|
{
|
|
52
|
-
fileName: "
|
|
52
|
+
fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/CreateCouponDialog.tsx",
|
|
53
53
|
lineNumber: 40,
|
|
54
54
|
columnNumber: 9
|
|
55
55
|
},
|
|
56
56
|
this
|
|
57
57
|
)
|
|
58
58
|
] }, void 0, !0, {
|
|
59
|
-
fileName: "
|
|
59
|
+
fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/CreateCouponDialog.tsx",
|
|
60
60
|
lineNumber: 36,
|
|
61
61
|
columnNumber: 7
|
|
62
62
|
}, this)
|
|
63
63
|
] }, void 0, !0, {
|
|
64
|
-
fileName: "
|
|
64
|
+
fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/CreateCouponDialog.tsx",
|
|
65
65
|
lineNumber: 29,
|
|
66
66
|
columnNumber: 5
|
|
67
67
|
}, this);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-dev-runtime"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-dev-runtime"),l=require("next/link"),m=require("next/navigation"),p=require("@nextblock-cms/ui"),N=require("@nextblock-cms/db/server"),b=require("./actions.cjs.js"),x=require("./CouponEditorForm.cjs.js"),f=require("./product-options.cjs.js");async function g({params:c}){const{id:o}=await c,s=N.getServiceRoleSupabaseClient(),[{data:t},{data:n},{data:u},{data:r}]=await Promise.all([s.from("coupons").select("*").eq("id",o).single(),s.from("products").select("id, title, sku, payment_provider, freemius_product_id, language:languages(code, name), product_media(sort_order, media(file_path, object_key))").order("title",{ascending:!0}),s.from("coupon_products").select("product_id").eq("coupon_id",o),s.from("currencies").select("code, is_default").eq("is_active",!0)]);t||m.notFound();const a=(u||[]).map(i=>i.product_id),d=r?.find(i=>i.is_default)?.code||r?.[0]?.code||"USD";return e.jsxDEV("div",{className:"mx-auto w-full max-w-5xl space-y-6 px-6 py-8",children:[e.jsxDEV("div",{className:"flex items-center justify-between",children:[e.jsxDEV("div",{children:[e.jsxDEV("h1",{className:"text-3xl font-bold tracking-tight",children:"Edit Coupon"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/EditCouponPage.tsx",lineNumber:50,columnNumber:11},this),e.jsxDEV("p",{className:"text-sm text-muted-foreground",children:"Changes are resynced to Freemius after saving."},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/EditCouponPage.tsx",lineNumber:51,columnNumber:11},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/EditCouponPage.tsx",lineNumber:49,columnNumber:9},this),e.jsxDEV(p.Button,{asChild:!0,variant:"outline",children:e.jsxDEV(l,{href:"/cms/coupons",children:"Back to coupons"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/EditCouponPage.tsx",lineNumber:56,columnNumber:11},this)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/EditCouponPage.tsx",lineNumber:55,columnNumber:9},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/EditCouponPage.tsx",lineNumber:48,columnNumber:7},this),e.jsxDEV(x.CouponEditorForm,{action:b.updateCouponAction.bind(null,o),products:f.normalizeCouponProductOptions(n),coupon:t,selectedProductIds:a,submitLabel:"Save Coupon",currencyCode:d},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/EditCouponPage.tsx",lineNumber:60,columnNumber:7},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/EditCouponPage.tsx",lineNumber:47,columnNumber:5},this)}exports.EditCouponPage=g;
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import { jsxDEV as e } from "react/jsx-dev-runtime";
|
|
2
|
-
import
|
|
3
|
-
import { notFound as
|
|
2
|
+
import d from "next/link";
|
|
3
|
+
import { notFound as l } from "next/navigation";
|
|
4
4
|
import { Button as p } from "@nextblock-cms/ui";
|
|
5
|
-
import { getServiceRoleSupabaseClient as
|
|
6
|
-
import { updateCouponAction as
|
|
7
|
-
import { CouponEditorForm as
|
|
5
|
+
import { getServiceRoleSupabaseClient as N } from "@nextblock-cms/db/server";
|
|
6
|
+
import { updateCouponAction as b } from "./actions.es.js";
|
|
7
|
+
import { CouponEditorForm as f } from "./CouponEditorForm.es.js";
|
|
8
8
|
import { normalizeCouponProductOptions as g } from "./product-options.es.js";
|
|
9
|
-
async function
|
|
10
|
-
const { id: s } = await
|
|
9
|
+
async function j({ params: c }) {
|
|
10
|
+
const { id: s } = await c, o = N(), [
|
|
11
11
|
{ data: t },
|
|
12
12
|
{ data: n },
|
|
13
13
|
{ data: m },
|
|
14
|
-
{ data:
|
|
14
|
+
{ data: r }
|
|
15
15
|
] = await Promise.all([
|
|
16
16
|
o.from("coupons").select("*").eq("id", s).single(),
|
|
17
17
|
o.from("products").select(
|
|
@@ -20,44 +20,44 @@ async function D({ params: r }) {
|
|
|
20
20
|
o.from("coupon_products").select("product_id").eq("coupon_id", s),
|
|
21
21
|
o.from("currencies").select("code, is_default").eq("is_active", !0)
|
|
22
22
|
]);
|
|
23
|
-
t ||
|
|
24
|
-
const a = (m || []).map((i) => i.product_id), u =
|
|
23
|
+
t || l();
|
|
24
|
+
const a = (m || []).map((i) => i.product_id), u = r?.find((i) => i.is_default)?.code || r?.[0]?.code || "USD";
|
|
25
25
|
return /* @__PURE__ */ e("div", { className: "mx-auto w-full max-w-5xl space-y-6 px-6 py-8", children: [
|
|
26
26
|
/* @__PURE__ */ e("div", { className: "flex items-center justify-between", children: [
|
|
27
27
|
/* @__PURE__ */ e("div", { children: [
|
|
28
28
|
/* @__PURE__ */ e("h1", { className: "text-3xl font-bold tracking-tight", children: "Edit Coupon" }, void 0, !1, {
|
|
29
|
-
fileName: "
|
|
29
|
+
fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/EditCouponPage.tsx",
|
|
30
30
|
lineNumber: 50,
|
|
31
31
|
columnNumber: 11
|
|
32
32
|
}, this),
|
|
33
33
|
/* @__PURE__ */ e("p", { className: "text-sm text-muted-foreground", children: "Changes are resynced to Freemius after saving." }, void 0, !1, {
|
|
34
|
-
fileName: "
|
|
34
|
+
fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/EditCouponPage.tsx",
|
|
35
35
|
lineNumber: 51,
|
|
36
36
|
columnNumber: 11
|
|
37
37
|
}, this)
|
|
38
38
|
] }, void 0, !0, {
|
|
39
|
-
fileName: "
|
|
39
|
+
fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/EditCouponPage.tsx",
|
|
40
40
|
lineNumber: 49,
|
|
41
41
|
columnNumber: 9
|
|
42
42
|
}, this),
|
|
43
|
-
/* @__PURE__ */ e(p, { asChild: !0, variant: "outline", children: /* @__PURE__ */ e(
|
|
44
|
-
fileName: "
|
|
43
|
+
/* @__PURE__ */ e(p, { asChild: !0, variant: "outline", children: /* @__PURE__ */ e(d, { href: "/cms/coupons", children: "Back to coupons" }, void 0, !1, {
|
|
44
|
+
fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/EditCouponPage.tsx",
|
|
45
45
|
lineNumber: 56,
|
|
46
46
|
columnNumber: 11
|
|
47
47
|
}, this) }, void 0, !1, {
|
|
48
|
-
fileName: "
|
|
48
|
+
fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/EditCouponPage.tsx",
|
|
49
49
|
lineNumber: 55,
|
|
50
50
|
columnNumber: 9
|
|
51
51
|
}, this)
|
|
52
52
|
] }, void 0, !0, {
|
|
53
|
-
fileName: "
|
|
53
|
+
fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/EditCouponPage.tsx",
|
|
54
54
|
lineNumber: 48,
|
|
55
55
|
columnNumber: 7
|
|
56
56
|
}, this),
|
|
57
57
|
/* @__PURE__ */ e(
|
|
58
|
-
|
|
58
|
+
f,
|
|
59
59
|
{
|
|
60
|
-
action:
|
|
60
|
+
action: b.bind(null, s),
|
|
61
61
|
products: g(n),
|
|
62
62
|
coupon: t,
|
|
63
63
|
selectedProductIds: a,
|
|
@@ -67,18 +67,18 @@ async function D({ params: r }) {
|
|
|
67
67
|
void 0,
|
|
68
68
|
!1,
|
|
69
69
|
{
|
|
70
|
-
fileName: "
|
|
70
|
+
fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/EditCouponPage.tsx",
|
|
71
71
|
lineNumber: 60,
|
|
72
72
|
columnNumber: 7
|
|
73
73
|
},
|
|
74
74
|
this
|
|
75
75
|
)
|
|
76
76
|
] }, void 0, !0, {
|
|
77
|
-
fileName: "
|
|
77
|
+
fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/EditCouponPage.tsx",
|
|
78
78
|
lineNumber: 47,
|
|
79
79
|
columnNumber: 5
|
|
80
80
|
}, this);
|
|
81
81
|
}
|
|
82
82
|
export {
|
|
83
|
-
|
|
83
|
+
j as EditCouponPage
|
|
84
84
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-dev-runtime"),m=require("react"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-dev-runtime"),m=require("react"),p=require("@nextblock-cms/ui/button"),h=require("@nextblock-cms/ui/input"),k=require("lucide-react");function P(c){const r=c.sku?.trim();return r?r.toUpperCase():`PRODUCT:${c.id}`}function j(c){const r=new Map;for(const t of c){const l=P(t),n=r.get(l);if(n){n.productIds.push(t.id);continue}r.set(l,{key:l,title:t.title,sku:t.sku?.trim()||"No SKU",thumbnailUrl:t.thumbnailUrl??null,productIds:[t.id]})}return[...r.values()]}function D({products:c,selectedProductIds:r=[]}){const t=m.useMemo(()=>new Set(r),[r]),[l,n]=m.useState(t),[u,f]=m.useState(""),a=m.useMemo(()=>j(c),[c]),N=m.useMemo(()=>{const s=u.trim().toLowerCase();return s?a.filter(o=>[o.title,o.sku].some(i=>i.toLowerCase().includes(s))):a},[a,u]),b=s=>{n(new Set(c.filter(o=>o.payment_provider===s).map(o=>o.id)))};return e.jsxDEV("div",{className:"space-y-3",children:[e.jsxDEV("div",{className:"flex flex-wrap items-center gap-2",children:[e.jsxDEV(p.Button,{type:"button",variant:"outline",size:"sm",onClick:()=>n(new Set(c.map(s=>s.id))),children:"Select All"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/ProductScopePicker.tsx",lineNumber:94,columnNumber:9},this),e.jsxDEV(p.Button,{type:"button",variant:"outline",size:"sm",onClick:()=>b("stripe"),children:"Stripe"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/ProductScopePicker.tsx",lineNumber:102,columnNumber:9},this),e.jsxDEV(p.Button,{type:"button",variant:"outline",size:"sm",onClick:()=>b("freemius"),children:"Freemius"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/ProductScopePicker.tsx",lineNumber:105,columnNumber:9},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/ProductScopePicker.tsx",lineNumber:93,columnNumber:7},this),e.jsxDEV("div",{className:"relative",children:[e.jsxDEV(k.Search,{className:"pointer-events-none absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-muted-foreground"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/ProductScopePicker.tsx",lineNumber:111,columnNumber:9},this),e.jsxDEV(h.Input,{type:"search",value:u,onChange:s=>f(s.target.value),placeholder:"Search products by title or SKU",className:"pl-9"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/ProductScopePicker.tsx",lineNumber:112,columnNumber:9},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/ProductScopePicker.tsx",lineNumber:110,columnNumber:7},this),e.jsxDEV("div",{className:"grid max-h-[420px] gap-2 overflow-y-auto rounded-lg border p-3 md:grid-cols-2",children:[N.map(s=>{const o=s.productIds.some(i=>l.has(i));return e.jsxDEV("label",{className:"flex cursor-pointer items-center gap-3 rounded-md px-2 py-2 hover:bg-muted/40",children:[e.jsxDEV("input",{type:"checkbox",checked:o,onChange:i=>{const d=new Set(l);for(const x of s.productIds)i.target.checked?d.add(x):d.delete(x);n(d)},className:"mt-0.5 h-4 w-4 rounded border-slate-300 text-primary focus:ring-primary"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/ProductScopePicker.tsx",lineNumber:130,columnNumber:15},this),o?s.productIds.map(i=>e.jsxDEV("input",{type:"hidden",name:"product_ids",value:i},i,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/ProductScopePicker.tsx",lineNumber:150,columnNumber:21},this)):null,e.jsxDEV("span",{className:"flex h-12 w-12 shrink-0 items-center justify-center overflow-hidden rounded-md border bg-muted",children:s.thumbnailUrl?e.jsxDEV("img",{src:s.thumbnailUrl,alt:"",loading:"lazy",className:"h-full w-full object-cover"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/ProductScopePicker.tsx",lineNumber:155,columnNumber:19},this):e.jsxDEV(k.ImageIcon,{className:"h-5 w-5 text-muted-foreground","aria-hidden":"true"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/ProductScopePicker.tsx",lineNumber:162,columnNumber:19},this)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/ProductScopePicker.tsx",lineNumber:153,columnNumber:15},this),e.jsxDEV("span",{className:"min-w-0 flex-1",children:[e.jsxDEV("span",{className:"block whitespace-normal break-words text-sm font-medium",children:s.title},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/ProductScopePicker.tsx",lineNumber:166,columnNumber:17},this),e.jsxDEV("span",{className:"block font-mono text-xs text-muted-foreground",children:s.sku},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/ProductScopePicker.tsx",lineNumber:169,columnNumber:17},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/ProductScopePicker.tsx",lineNumber:165,columnNumber:15},this)]},s.key,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/ProductScopePicker.tsx",lineNumber:126,columnNumber:13},this)}),N.length===0?e.jsxDEV("div",{className:"px-2 py-8 text-center text-sm text-muted-foreground md:col-span-2",children:"No matching products."},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/ProductScopePicker.tsx",lineNumber:175,columnNumber:11},this):null]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/ProductScopePicker.tsx",lineNumber:121,columnNumber:7},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/ProductScopePicker.tsx",lineNumber:92,columnNumber:5},this)}exports.ProductScopePicker=D;
|
|
@@ -1,90 +1,90 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { jsxDEV as e } from "react/jsx-dev-runtime";
|
|
3
|
-
import { useMemo as
|
|
4
|
-
import { Button as
|
|
5
|
-
import { Input as
|
|
3
|
+
import { useMemo as d, useState as f } from "react";
|
|
4
|
+
import { Button as p } from "@nextblock-cms/ui/button";
|
|
5
|
+
import { Input as x } from "@nextblock-cms/ui/input";
|
|
6
6
|
import { Search as P, ImageIcon as v } from "lucide-react";
|
|
7
|
-
function g(
|
|
8
|
-
const
|
|
9
|
-
return
|
|
7
|
+
function g(r) {
|
|
8
|
+
const c = r.sku?.trim();
|
|
9
|
+
return c ? c.toUpperCase() : `PRODUCT:${r.id}`;
|
|
10
10
|
}
|
|
11
|
-
function S(
|
|
12
|
-
const
|
|
13
|
-
for (const
|
|
14
|
-
const l = g(
|
|
11
|
+
function S(r) {
|
|
12
|
+
const c = /* @__PURE__ */ new Map();
|
|
13
|
+
for (const t of r) {
|
|
14
|
+
const l = g(t), n = c.get(l);
|
|
15
15
|
if (n) {
|
|
16
|
-
n.productIds.push(
|
|
16
|
+
n.productIds.push(t.id);
|
|
17
17
|
continue;
|
|
18
18
|
}
|
|
19
|
-
|
|
19
|
+
c.set(l, {
|
|
20
20
|
key: l,
|
|
21
|
-
title:
|
|
22
|
-
sku:
|
|
23
|
-
thumbnailUrl:
|
|
24
|
-
productIds: [
|
|
21
|
+
title: t.title,
|
|
22
|
+
sku: t.sku?.trim() || "No SKU",
|
|
23
|
+
thumbnailUrl: t.thumbnailUrl ?? null,
|
|
24
|
+
productIds: [t.id]
|
|
25
25
|
});
|
|
26
26
|
}
|
|
27
|
-
return [...
|
|
27
|
+
return [...c.values()];
|
|
28
28
|
}
|
|
29
|
-
function
|
|
30
|
-
products:
|
|
31
|
-
selectedProductIds:
|
|
29
|
+
function B({
|
|
30
|
+
products: r,
|
|
31
|
+
selectedProductIds: c = []
|
|
32
32
|
}) {
|
|
33
|
-
const
|
|
33
|
+
const t = d(() => new Set(c), [c]), [l, n] = f(t), [m, h] = f(""), u = d(() => S(r), [r]), N = d(() => {
|
|
34
34
|
const s = m.trim().toLowerCase();
|
|
35
35
|
return s ? u.filter(
|
|
36
|
-
(
|
|
36
|
+
(o) => [o.title, o.sku].some((i) => i.toLowerCase().includes(s))
|
|
37
37
|
) : u;
|
|
38
|
-
}, [u, m]),
|
|
38
|
+
}, [u, m]), b = (s) => {
|
|
39
39
|
n(
|
|
40
40
|
new Set(
|
|
41
|
-
|
|
41
|
+
r.filter((o) => o.payment_provider === s).map((o) => o.id)
|
|
42
42
|
)
|
|
43
43
|
);
|
|
44
44
|
};
|
|
45
45
|
return /* @__PURE__ */ e("div", { className: "space-y-3", children: [
|
|
46
46
|
/* @__PURE__ */ e("div", { className: "flex flex-wrap items-center gap-2", children: [
|
|
47
47
|
/* @__PURE__ */ e(
|
|
48
|
-
|
|
48
|
+
p,
|
|
49
49
|
{
|
|
50
50
|
type: "button",
|
|
51
51
|
variant: "outline",
|
|
52
52
|
size: "sm",
|
|
53
|
-
onClick: () => n(new Set(
|
|
53
|
+
onClick: () => n(new Set(r.map((s) => s.id))),
|
|
54
54
|
children: "Select All"
|
|
55
55
|
},
|
|
56
56
|
void 0,
|
|
57
57
|
!1,
|
|
58
58
|
{
|
|
59
|
-
fileName: "
|
|
59
|
+
fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/ProductScopePicker.tsx",
|
|
60
60
|
lineNumber: 94,
|
|
61
61
|
columnNumber: 9
|
|
62
62
|
},
|
|
63
63
|
this
|
|
64
64
|
),
|
|
65
|
-
/* @__PURE__ */ e(
|
|
66
|
-
fileName: "
|
|
65
|
+
/* @__PURE__ */ e(p, { type: "button", variant: "outline", size: "sm", onClick: () => b("stripe"), children: "Stripe" }, void 0, !1, {
|
|
66
|
+
fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/ProductScopePicker.tsx",
|
|
67
67
|
lineNumber: 102,
|
|
68
68
|
columnNumber: 9
|
|
69
69
|
}, this),
|
|
70
|
-
/* @__PURE__ */ e(
|
|
71
|
-
fileName: "
|
|
70
|
+
/* @__PURE__ */ e(p, { type: "button", variant: "outline", size: "sm", onClick: () => b("freemius"), children: "Freemius" }, void 0, !1, {
|
|
71
|
+
fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/ProductScopePicker.tsx",
|
|
72
72
|
lineNumber: 105,
|
|
73
73
|
columnNumber: 9
|
|
74
74
|
}, this)
|
|
75
75
|
] }, void 0, !0, {
|
|
76
|
-
fileName: "
|
|
76
|
+
fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/ProductScopePicker.tsx",
|
|
77
77
|
lineNumber: 93,
|
|
78
78
|
columnNumber: 7
|
|
79
79
|
}, this),
|
|
80
80
|
/* @__PURE__ */ e("div", { className: "relative", children: [
|
|
81
81
|
/* @__PURE__ */ e(P, { className: "pointer-events-none absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-muted-foreground" }, void 0, !1, {
|
|
82
|
-
fileName: "
|
|
82
|
+
fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/ProductScopePicker.tsx",
|
|
83
83
|
lineNumber: 111,
|
|
84
84
|
columnNumber: 9
|
|
85
85
|
}, this),
|
|
86
86
|
/* @__PURE__ */ e(
|
|
87
|
-
|
|
87
|
+
x,
|
|
88
88
|
{
|
|
89
89
|
type: "search",
|
|
90
90
|
value: m,
|
|
@@ -95,20 +95,20 @@ function C({
|
|
|
95
95
|
void 0,
|
|
96
96
|
!1,
|
|
97
97
|
{
|
|
98
|
-
fileName: "
|
|
98
|
+
fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/ProductScopePicker.tsx",
|
|
99
99
|
lineNumber: 112,
|
|
100
100
|
columnNumber: 9
|
|
101
101
|
},
|
|
102
102
|
this
|
|
103
103
|
)
|
|
104
104
|
] }, void 0, !0, {
|
|
105
|
-
fileName: "
|
|
105
|
+
fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/ProductScopePicker.tsx",
|
|
106
106
|
lineNumber: 110,
|
|
107
107
|
columnNumber: 7
|
|
108
108
|
}, this),
|
|
109
109
|
/* @__PURE__ */ e("div", { className: "grid max-h-[420px] gap-2 overflow-y-auto rounded-lg border p-3 md:grid-cols-2", children: [
|
|
110
|
-
|
|
111
|
-
const
|
|
110
|
+
N.map((s) => {
|
|
111
|
+
const o = s.productIds.some((i) => l.has(i));
|
|
112
112
|
return /* @__PURE__ */ e(
|
|
113
113
|
"label",
|
|
114
114
|
{
|
|
@@ -118,11 +118,11 @@ function C({
|
|
|
118
118
|
"input",
|
|
119
119
|
{
|
|
120
120
|
type: "checkbox",
|
|
121
|
-
checked:
|
|
122
|
-
onChange: (
|
|
121
|
+
checked: o,
|
|
122
|
+
onChange: (i) => {
|
|
123
123
|
const a = new Set(l);
|
|
124
|
-
for (const
|
|
125
|
-
|
|
124
|
+
for (const k of s.productIds)
|
|
125
|
+
i.target.checked ? a.add(k) : a.delete(k);
|
|
126
126
|
n(a);
|
|
127
127
|
},
|
|
128
128
|
className: "mt-0.5 h-4 w-4 rounded border-slate-300 text-primary focus:ring-primary"
|
|
@@ -130,14 +130,14 @@ function C({
|
|
|
130
130
|
void 0,
|
|
131
131
|
!1,
|
|
132
132
|
{
|
|
133
|
-
fileName: "
|
|
133
|
+
fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/ProductScopePicker.tsx",
|
|
134
134
|
lineNumber: 130,
|
|
135
135
|
columnNumber: 15
|
|
136
136
|
},
|
|
137
137
|
this
|
|
138
138
|
),
|
|
139
|
-
|
|
140
|
-
fileName: "
|
|
139
|
+
o ? s.productIds.map((i) => /* @__PURE__ */ e("input", { type: "hidden", name: "product_ids", value: i }, i, !1, {
|
|
140
|
+
fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/ProductScopePicker.tsx",
|
|
141
141
|
lineNumber: 150,
|
|
142
142
|
columnNumber: 21
|
|
143
143
|
}, this)) : null,
|
|
@@ -152,33 +152,33 @@ function C({
|
|
|
152
152
|
void 0,
|
|
153
153
|
!1,
|
|
154
154
|
{
|
|
155
|
-
fileName: "
|
|
155
|
+
fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/ProductScopePicker.tsx",
|
|
156
156
|
lineNumber: 155,
|
|
157
157
|
columnNumber: 19
|
|
158
158
|
},
|
|
159
159
|
this
|
|
160
160
|
) : /* @__PURE__ */ e(v, { className: "h-5 w-5 text-muted-foreground", "aria-hidden": "true" }, void 0, !1, {
|
|
161
|
-
fileName: "
|
|
161
|
+
fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/ProductScopePicker.tsx",
|
|
162
162
|
lineNumber: 162,
|
|
163
163
|
columnNumber: 19
|
|
164
164
|
}, this) }, void 0, !1, {
|
|
165
|
-
fileName: "
|
|
165
|
+
fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/ProductScopePicker.tsx",
|
|
166
166
|
lineNumber: 153,
|
|
167
167
|
columnNumber: 15
|
|
168
168
|
}, this),
|
|
169
169
|
/* @__PURE__ */ e("span", { className: "min-w-0 flex-1", children: [
|
|
170
170
|
/* @__PURE__ */ e("span", { className: "block whitespace-normal break-words text-sm font-medium", children: s.title }, void 0, !1, {
|
|
171
|
-
fileName: "
|
|
171
|
+
fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/ProductScopePicker.tsx",
|
|
172
172
|
lineNumber: 166,
|
|
173
173
|
columnNumber: 17
|
|
174
174
|
}, this),
|
|
175
175
|
/* @__PURE__ */ e("span", { className: "block font-mono text-xs text-muted-foreground", children: s.sku }, void 0, !1, {
|
|
176
|
-
fileName: "
|
|
176
|
+
fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/ProductScopePicker.tsx",
|
|
177
177
|
lineNumber: 169,
|
|
178
178
|
columnNumber: 17
|
|
179
179
|
}, this)
|
|
180
180
|
] }, void 0, !0, {
|
|
181
|
-
fileName: "
|
|
181
|
+
fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/ProductScopePicker.tsx",
|
|
182
182
|
lineNumber: 165,
|
|
183
183
|
columnNumber: 15
|
|
184
184
|
}, this)
|
|
@@ -187,29 +187,29 @@ function C({
|
|
|
187
187
|
s.key,
|
|
188
188
|
!0,
|
|
189
189
|
{
|
|
190
|
-
fileName: "
|
|
190
|
+
fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/ProductScopePicker.tsx",
|
|
191
191
|
lineNumber: 126,
|
|
192
192
|
columnNumber: 13
|
|
193
193
|
},
|
|
194
194
|
this
|
|
195
195
|
);
|
|
196
196
|
}),
|
|
197
|
-
|
|
198
|
-
fileName: "
|
|
197
|
+
N.length === 0 ? /* @__PURE__ */ e("div", { className: "px-2 py-8 text-center text-sm text-muted-foreground md:col-span-2", children: "No matching products." }, void 0, !1, {
|
|
198
|
+
fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/ProductScopePicker.tsx",
|
|
199
199
|
lineNumber: 175,
|
|
200
200
|
columnNumber: 11
|
|
201
201
|
}, this) : null
|
|
202
202
|
] }, void 0, !0, {
|
|
203
|
-
fileName: "
|
|
203
|
+
fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/ProductScopePicker.tsx",
|
|
204
204
|
lineNumber: 121,
|
|
205
205
|
columnNumber: 7
|
|
206
206
|
}, this)
|
|
207
207
|
] }, void 0, !0, {
|
|
208
|
-
fileName: "
|
|
208
|
+
fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/coupons/ProductScopePicker.tsx",
|
|
209
209
|
lineNumber: 92,
|
|
210
210
|
columnNumber: 5
|
|
211
211
|
}, this);
|
|
212
212
|
}
|
|
213
213
|
export {
|
|
214
|
-
|
|
214
|
+
B as ProductScopePicker
|
|
215
215
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-dev-runtime"),o=require("react"),s=require("@nextblock-cms/ui"),t=require("lucide-react"),l=require("sonner"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-dev-runtime"),o=require("react"),s=require("@nextblock-cms/ui"),t=require("lucide-react"),l=require("sonner"),R=require("./export-actions.cjs.js"),m=require("../../../export-helpers.cjs.js");function f(){const[u,p]=o.useState(!1),[N,n]=o.useState(!1),[i,x]=o.useState(""),[a,b]=o.useState(""),[d,g]=o.useState("general_ledger"),D=async()=>{if(!i||!a){l.toast.error("Please select both start and end dates");return}n(!0);try{l.toast.info("Generating report...");const r=await R.fetchOrderReportData(i,a);if(!r||r.length===0){l.toast.error("No orders found for the selected date range"),n(!1);return}let c=[];const h=`report_${d}_${i}_to_${a}`;switch(d){case"general_ledger":c=m.mapGeneralSalesLedger(r);break;case"tax_liability":c=m.mapTaxLiabilitySummary(r);break;case"currency_summary":c=m.mapMultiCurrencyRevenue(r);break}m.generateCSV(c,`${h}.csv`),l.toast.success("Download complete!"),p(!1)}catch(r){console.error("Export error:",r),l.toast.error("Failed to generate report")}finally{n(!1)}};return e.jsxDEV(s.Dialog,{open:u,onOpenChange:p,children:[e.jsxDEV(s.DialogTrigger,{asChild:!0,children:e.jsxDEV(s.Button,{variant:"outline",className:"flex items-center gap-2",children:[e.jsxDEV(t.Download,{className:"h-4 w-4"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/orders/ExportReportsDialog.tsx",lineNumber:88,columnNumber:11},this),"Export Reports"]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/orders/ExportReportsDialog.tsx",lineNumber:87,columnNumber:9},this)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/orders/ExportReportsDialog.tsx",lineNumber:86,columnNumber:7},this),e.jsxDEV(s.DialogContent,{className:"sm:max-w-[425px]",children:[e.jsxDEV(s.DialogHeader,{children:[e.jsxDEV(s.DialogTitle,{className:"flex items-center gap-2",children:[e.jsxDEV(t.FileDown,{className:"h-5 w-5 text-blue-600"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/orders/ExportReportsDialog.tsx",lineNumber:95,columnNumber:13},this),"Accounting Reports"]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/orders/ExportReportsDialog.tsx",lineNumber:94,columnNumber:11},this),e.jsxDEV(s.DialogDescription,{children:"Generate and download accountant-friendly order reports."},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/orders/ExportReportsDialog.tsx",lineNumber:98,columnNumber:11},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/orders/ExportReportsDialog.tsx",lineNumber:93,columnNumber:9},this),e.jsxDEV("div",{className:"grid gap-6 py-4",children:[e.jsxDEV("div",{className:"grid grid-cols-2 gap-4",children:[e.jsxDEV("div",{className:"grid gap-2",children:[e.jsxDEV(s.Label,{htmlFor:"start-date",className:"text-xs font-semibold uppercase text-gray-500 tracking-wider",children:"Start Date"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/orders/ExportReportsDialog.tsx",lineNumber:106,columnNumber:15},this),e.jsxDEV("div",{className:"relative",children:[e.jsxDEV(s.Input,{id:"start-date",type:"date",value:i,onChange:r=>x(r.target.value),className:"pl-8"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/orders/ExportReportsDialog.tsx",lineNumber:110,columnNumber:17},this),e.jsxDEV(t.Calendar,{className:"absolute left-2.5 top-2.5 h-4 w-4 text-gray-400"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/orders/ExportReportsDialog.tsx",lineNumber:117,columnNumber:17},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/orders/ExportReportsDialog.tsx",lineNumber:109,columnNumber:15},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/orders/ExportReportsDialog.tsx",lineNumber:105,columnNumber:13},this),e.jsxDEV("div",{className:"grid gap-2",children:[e.jsxDEV(s.Label,{htmlFor:"end-date",className:"text-xs font-semibold uppercase text-gray-500 tracking-wider",children:"End Date"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/orders/ExportReportsDialog.tsx",lineNumber:121,columnNumber:15},this),e.jsxDEV("div",{className:"relative",children:[e.jsxDEV(s.Input,{id:"end-date",type:"date",value:a,onChange:r=>b(r.target.value),className:"pl-8"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/orders/ExportReportsDialog.tsx",lineNumber:125,columnNumber:17},this),e.jsxDEV(t.Calendar,{className:"absolute left-2.5 top-2.5 h-4 w-4 text-gray-400"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/orders/ExportReportsDialog.tsx",lineNumber:132,columnNumber:17},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/orders/ExportReportsDialog.tsx",lineNumber:124,columnNumber:15},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/orders/ExportReportsDialog.tsx",lineNumber:120,columnNumber:13},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/orders/ExportReportsDialog.tsx",lineNumber:104,columnNumber:11},this),e.jsxDEV("div",{className:"grid gap-2",children:[e.jsxDEV(s.Label,{htmlFor:"report-type",className:"text-xs font-semibold uppercase text-gray-500 tracking-wider",children:"Report Type"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/orders/ExportReportsDialog.tsx",lineNumber:138,columnNumber:13},this),e.jsxDEV(s.Select,{value:d,onValueChange:r=>g(r),children:[e.jsxDEV(s.SelectTrigger,{id:"report-type",className:"w-full",children:e.jsxDEV(s.SelectValue,{placeholder:"Select report type"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/orders/ExportReportsDialog.tsx",lineNumber:146,columnNumber:17},this)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/orders/ExportReportsDialog.tsx",lineNumber:145,columnNumber:15},this),e.jsxDEV(s.SelectContent,{children:[e.jsxDEV(s.SelectItem,{value:"general_ledger",children:"General Sales Ledger"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/orders/ExportReportsDialog.tsx",lineNumber:149,columnNumber:17},this),e.jsxDEV(s.SelectItem,{value:"tax_liability",children:"Tax Liability Summary"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/orders/ExportReportsDialog.tsx",lineNumber:150,columnNumber:17},this),e.jsxDEV(s.SelectItem,{value:"currency_summary",children:"Multi-Currency Revenue Summary"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/orders/ExportReportsDialog.tsx",lineNumber:151,columnNumber:17},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/orders/ExportReportsDialog.tsx",lineNumber:148,columnNumber:15},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/orders/ExportReportsDialog.tsx",lineNumber:141,columnNumber:13},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/orders/ExportReportsDialog.tsx",lineNumber:137,columnNumber:11},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/orders/ExportReportsDialog.tsx",lineNumber:103,columnNumber:9},this),e.jsxDEV(s.DialogFooter,{children:e.jsxDEV(s.Button,{onClick:D,disabled:N,className:"w-full bg-blue-600 hover:bg-blue-700 text-white",children:N?e.jsxDEV(e.Fragment,{children:[e.jsxDEV(t.Loader2,{className:"mr-2 h-4 w-4 animate-spin"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/orders/ExportReportsDialog.tsx",lineNumber:165,columnNumber:17},this),"Generating..."]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/orders/ExportReportsDialog.tsx",lineNumber:164,columnNumber:15},this):e.jsxDEV(e.Fragment,{children:[e.jsxDEV(t.Download,{className:"mr-2 h-4 w-4"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/orders/ExportReportsDialog.tsx",lineNumber:170,columnNumber:17},this),"Download Report"]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/orders/ExportReportsDialog.tsx",lineNumber:169,columnNumber:15},this)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/orders/ExportReportsDialog.tsx",lineNumber:158,columnNumber:11},this)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/orders/ExportReportsDialog.tsx",lineNumber:157,columnNumber:9},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/orders/ExportReportsDialog.tsx",lineNumber:92,columnNumber:7},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/orders/ExportReportsDialog.tsx",lineNumber:85,columnNumber:5},this)}exports.ExportReportsDialog=f;
|