@nextblock-cms/ecom 0.19.0 → 0.19.3

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 (161) hide show
  1. package/index.cjs.js +1 -1
  2. package/index.es.js +26 -25
  3. package/lib/CurrencyProvider.cjs.js +1 -1
  4. package/lib/CurrencyProvider.es.js +41 -45
  5. package/lib/PaymentReadinessProvider.cjs.js +1 -1
  6. package/lib/PaymentReadinessProvider.es.js +15 -19
  7. package/lib/cart-store.cjs.js +1 -1
  8. package/lib/cart-store.d.ts +4 -0
  9. package/lib/cart-store.es.js +77 -69
  10. package/lib/components/AccountNavigationMenu.cjs.js +1 -1
  11. package/lib/components/AccountNavigationMenu.es.js +44 -62
  12. package/lib/components/AddToCartButton.cjs.js +1 -1
  13. package/lib/components/AddToCartButton.es.js +50 -78
  14. package/lib/components/Cart.cjs.js +1 -1
  15. package/lib/components/Cart.d.ts +1 -1
  16. package/lib/components/Cart.es.js +158 -377
  17. package/lib/components/CartDrawer.cjs.js +1 -1
  18. package/lib/components/CartDrawer.es.js +143 -297
  19. package/lib/components/CartIcon.cjs.js +1 -1
  20. package/lib/components/CartIcon.es.js +21 -47
  21. package/lib/components/Checkout.cjs.js +1 -1
  22. package/lib/components/Checkout.d.ts +1 -1
  23. package/lib/components/Checkout.es.js +839 -1627
  24. package/lib/components/CouponForm.cjs.js +1 -1
  25. package/lib/components/CouponForm.es.js +104 -155
  26. package/lib/components/CurrencySwitcher.cjs.js +1 -1
  27. package/lib/components/CurrencySwitcher.es.js +14 -33
  28. package/lib/components/CustomerProfileForm.cjs.js +1 -1
  29. package/lib/components/CustomerProfileForm.d.ts +1 -1
  30. package/lib/components/CustomerProfileForm.es.js +264 -672
  31. package/lib/components/FeaturedProduct.cjs.js +1 -1
  32. package/lib/components/FeaturedProduct.es.js +54 -126
  33. package/lib/components/FreemiusLicensePanel.cjs.js +1 -1
  34. package/lib/components/FreemiusLicensePanel.es.js +45 -125
  35. package/lib/components/InvoiceDocument.cjs.js +1 -1
  36. package/lib/components/InvoiceDocument.es.js +148 -487
  37. package/lib/components/InvoiceViewerShell.cjs.js +2 -2
  38. package/lib/components/InvoiceViewerShell.d.ts +4 -1
  39. package/lib/components/InvoiceViewerShell.es.js +59 -142
  40. package/lib/components/ProductCard.cjs.js +1 -1
  41. package/lib/components/ProductCard.d.ts +3 -1
  42. package/lib/components/ProductCard.es.js +128 -242
  43. package/lib/components/ProductDetailsLayout.cjs.js +1 -1
  44. package/lib/components/ProductDetailsLayout.es.js +315 -657
  45. package/lib/components/ProductGallery.cjs.js +1 -1
  46. package/lib/components/ProductGallery.d.ts +2 -0
  47. package/lib/components/ProductGallery.es.js +37 -66
  48. package/lib/components/ProductGrid.cjs.js +1 -1
  49. package/lib/components/ProductGrid.es.js +23 -32
  50. package/lib/components/ShippingEstimator.cjs.js +1 -1
  51. package/lib/components/ShippingEstimator.es.js +124 -231
  52. package/lib/components/ShortDescription.cjs.js +1 -0
  53. package/lib/components/ShortDescription.d.ts +19 -0
  54. package/lib/components/ShortDescription.es.js +18 -0
  55. package/lib/components/SimpleTiptapRenderer.cjs.js +1 -1
  56. package/lib/components/SimpleTiptapRenderer.es.js +111 -294
  57. package/lib/components/SubscriptionSelector.cjs.js +1 -1
  58. package/lib/components/SubscriptionSelector.es.js +120 -181
  59. package/lib/components/media/MediaPickerDialog.d.ts +1 -1
  60. package/lib/components/media/MediaUploadForm.d.ts +1 -1
  61. package/lib/invoice.cjs.js +1 -1
  62. package/lib/invoice.d.ts +1 -1
  63. package/lib/invoice.es.js +6 -5
  64. package/lib/order-inventory.d.ts +1 -1
  65. package/lib/pages/cms/coupons/CouponEditorForm.cjs.js +1 -1
  66. package/lib/pages/cms/coupons/CouponEditorForm.es.js +115 -375
  67. package/lib/pages/cms/coupons/CouponsPage.cjs.js +2 -2
  68. package/lib/pages/cms/coupons/CouponsPage.es.js +116 -368
  69. package/lib/pages/cms/coupons/CreateCouponDialog.cjs.js +1 -1
  70. package/lib/pages/cms/coupons/CreateCouponDialog.es.js +26 -62
  71. package/lib/pages/cms/coupons/EditCouponPage.cjs.js +1 -1
  72. package/lib/pages/cms/coupons/EditCouponPage.es.js +35 -71
  73. package/lib/pages/cms/coupons/ProductScopePicker.cjs.js +1 -1
  74. package/lib/pages/cms/coupons/ProductScopePicker.es.js +72 -167
  75. package/lib/pages/cms/orders/ExportReportsDialog.cjs.js +1 -1
  76. package/lib/pages/cms/orders/ExportReportsDialog.es.js +87 -247
  77. package/lib/pages/cms/orders/OrderDetailPage.cjs.js +1 -1
  78. package/lib/pages/cms/orders/OrderDetailPage.es.js +95 -283
  79. package/lib/pages/cms/orders/OrderPrintButton.cjs.js +1 -1
  80. package/lib/pages/cms/orders/OrderPrintButton.es.js +9 -21
  81. package/lib/pages/cms/orders/OrderStatusForm.cjs.js +1 -1
  82. package/lib/pages/cms/orders/OrderStatusForm.es.js +46 -106
  83. package/lib/pages/cms/orders/OrdersPage.cjs.js +1 -1
  84. package/lib/pages/cms/orders/OrdersPage.es.js +78 -257
  85. package/lib/pages/cms/payments/PaymentsClient.cjs.js +1 -1
  86. package/lib/pages/cms/payments/PaymentsClient.es.js +192 -580
  87. package/lib/pages/cms/payments/PaymentsPage.cjs.js +1 -1
  88. package/lib/pages/cms/payments/PaymentsPage.es.js +14 -22
  89. package/lib/pages/cms/products/ProductsPage.cjs.js +1 -1
  90. package/lib/pages/cms/products/ProductsPage.es.js +47 -87
  91. package/lib/pages/cms/products/_id_/edit/EditProductPage.cjs.js +1 -1
  92. package/lib/pages/cms/products/_id_/edit/EditProductPage.es.js +97 -177
  93. package/lib/pages/cms/products/actions.d.ts +20 -20
  94. package/lib/pages/cms/products/attributes/AttributeManagementPage.cjs.js +1 -1
  95. package/lib/pages/cms/products/attributes/AttributeManagementPage.es.js +40 -84
  96. package/lib/pages/cms/products/attributes/components/AttributeManager.cjs.js +1 -1
  97. package/lib/pages/cms/products/attributes/components/AttributeManager.d.ts +1 -1
  98. package/lib/pages/cms/products/attributes/components/AttributeManager.es.js +192 -455
  99. package/lib/pages/cms/products/categories/CategoryManagementPage.cjs.js +1 -1
  100. package/lib/pages/cms/products/categories/CategoryManagementPage.es.js +28 -72
  101. package/lib/pages/cms/products/categories/components/CategoryManager.cjs.js +1 -1
  102. package/lib/pages/cms/products/categories/components/CategoryManager.es.js +183 -490
  103. package/lib/pages/cms/products/components/CopyProductFromLanguage.cjs.js +1 -1
  104. package/lib/pages/cms/products/components/CopyProductFromLanguage.es.js +69 -177
  105. package/lib/pages/cms/products/components/CurrencyPriceFields.cjs.js +1 -1
  106. package/lib/pages/cms/products/components/CurrencyPriceFields.es.js +102 -213
  107. package/lib/pages/cms/products/components/DeleteProductButton.cjs.js +1 -1
  108. package/lib/pages/cms/products/components/DeleteProductButton.es.js +25 -45
  109. package/lib/pages/cms/products/components/FreemiusPricingDashboard.cjs.js +1 -1
  110. package/lib/pages/cms/products/components/FreemiusPricingDashboard.es.js +58 -202
  111. package/lib/pages/cms/products/components/ProductCategorySelector.cjs.js +1 -1
  112. package/lib/pages/cms/products/components/ProductCategorySelector.es.js +89 -235
  113. package/lib/pages/cms/products/components/ProductForm.cjs.js +1 -1
  114. package/lib/pages/cms/products/components/ProductForm.es.js +526 -1110
  115. package/lib/pages/cms/products/components/ProductMediaManager.cjs.js +1 -1
  116. package/lib/pages/cms/products/components/ProductMediaManager.es.js +63 -154
  117. package/lib/pages/cms/products/components/ProductsBulkTable.cjs.js +1 -1
  118. package/lib/pages/cms/products/components/ProductsBulkTable.es.js +213 -544
  119. package/lib/pages/cms/products/components/SaleScheduleFields.cjs.js +1 -1
  120. package/lib/pages/cms/products/components/SaleScheduleFields.es.js +91 -207
  121. package/lib/pages/cms/products/components/SyncFreemiusButton.cjs.js +1 -1
  122. package/lib/pages/cms/products/components/SyncFreemiusButton.es.js +16 -28
  123. package/lib/pages/cms/products/components/SyncFreemiusPricingButton.cjs.js +2 -2
  124. package/lib/pages/cms/products/components/SyncFreemiusPricingButton.es.js +25 -37
  125. package/lib/pages/cms/products/components/VariationsEditor.cjs.js +1 -1
  126. package/lib/pages/cms/products/components/VariationsEditor.es.js +261 -492
  127. package/lib/pages/cms/products/inventory/InventoryPage.cjs.js +1 -1
  128. package/lib/pages/cms/products/inventory/InventoryPage.es.js +12 -32
  129. package/lib/pages/cms/products/inventory/InventoryTableClient.cjs.js +2 -2
  130. package/lib/pages/cms/products/inventory/InventoryTableClient.es.js +145 -365
  131. package/lib/pages/cms/products/new/NewProductPage.cjs.js +1 -1
  132. package/lib/pages/cms/products/new/NewProductPage.es.js +30 -42
  133. package/lib/pages/cms/shipping/ShippingPage.cjs.js +2 -2
  134. package/lib/pages/cms/shipping/ShippingPage.es.js +155 -507
  135. package/lib/pages/cms/shipping/components/RateForm.cjs.js +1 -1
  136. package/lib/pages/cms/shipping/components/RateForm.d.ts +1 -1
  137. package/lib/pages/cms/shipping/components/RateForm.es.js +334 -717
  138. package/lib/pages/cms/shipping/components/ZoneForm.cjs.js +1 -1
  139. package/lib/pages/cms/shipping/components/ZoneForm.es.js +158 -392
  140. package/lib/pages/cms/taxes/TaxesPage.cjs.js +1 -1
  141. package/lib/pages/cms/taxes/TaxesPage.es.js +119 -447
  142. package/lib/pages/cms/taxes/components/TaxRateForm.cjs.js +1 -1
  143. package/lib/pages/cms/taxes/components/TaxRateForm.es.js +52 -156
  144. package/lib/product-actions.d.ts +31 -31
  145. package/lib/product-context.cjs.js +1 -1
  146. package/lib/product-context.es.js +10 -14
  147. package/lib/shared-inventory.d.ts +1 -1
  148. package/lib/states.cjs.js +1 -1
  149. package/lib/states.d.ts +2 -0
  150. package/lib/states.es.js +63 -29
  151. package/lib/trials.cjs.js +1 -1
  152. package/lib/trials.d.ts +10 -3
  153. package/lib/trials.es.js +28 -21
  154. package/lib/types.d.ts +2 -0
  155. package/lib/use-price-formatter.cjs.js +1 -0
  156. package/lib/use-price-formatter.d.ts +11 -0
  157. package/lib/use-price-formatter.es.js +13 -0
  158. package/lib/variation-utils.cjs.js +1 -1
  159. package/lib/variation-utils.d.ts +10 -0
  160. package/lib/variation-utils.es.js +139 -123
  161. package/package.json +4 -4
@@ -1,29 +1,29 @@
1
- import { jsxDEV as c } from "react/jsx-dev-runtime";
2
- import { ProductForm as h } from "../components/ProductForm.es.js";
3
- import { getGlobalProductAttributes as w } from "../actions.es.js";
4
- import { mapRawVariantRelations as A } from "../../../../variation-utils.es.js";
5
- import { createProductAction as R } from "../server-actions.es.js";
1
+ import { jsx as c } from "react/jsx-runtime";
2
+ import { ProductForm as x } from "../components/ProductForm.es.js";
3
+ import { getGlobalProductAttributes as R } from "../actions.es.js";
4
+ import { mapRawVariantRelations as y } from "../../../../variation-utils.es.js";
5
+ import { createProductAction as S } from "../server-actions.es.js";
6
6
  import { getEnabledPaymentProviders as j, getStoreConfigStatus as v } from "../../payments/queries.es.js";
7
- import { getServiceRoleSupabaseClient as y } from "@nextblock-cms/db/server";
7
+ import { getServiceRoleSupabaseClient as w } from "@nextblock-cms/db/server";
8
8
  import { minorUnitAmountToMajor as m } from "@nextblock-cms/utils";
9
- import { normalizeCurrencyRecord as S } from "../../../../currency.es.js";
10
- async function q({
9
+ import { normalizeCurrencyRecord as z } from "../../../../currency.es.js";
10
+ async function U({
11
11
  mediaPickerNode: d,
12
- availableLanguagesProp: o,
12
+ availableLanguagesProp: i,
13
13
  translationGroupId: a,
14
- targetLanguageId: n,
14
+ targetLanguageId: s,
15
15
  initialData: t
16
16
  }) {
17
- const [u, l, p, _] = await Promise.all([
17
+ const [u, _, l, p] = await Promise.all([
18
18
  j(),
19
19
  v(),
20
- w(),
21
- y().from("currencies").select(
20
+ R(),
21
+ w().from("currencies").select(
22
22
  "code, symbol, exchange_rate, is_default, is_active, auto_sync_product_prices, auto_update_exchange_rate, exchange_rate_source, exchange_rate_updated_at, rounding_mode, rounding_increment, rounding_charm_amount"
23
23
  ).eq("is_active", !0).order("code", { ascending: !0 }).then((e) => e.data || [])
24
- ]), f = (_ || []).map(
25
- (e) => S(e)
26
- ), b = (p || []).map((e) => ({
24
+ ]), f = (p || []).map(
25
+ (e) => z(e)
26
+ ), b = (l || []).map((e) => ({
27
27
  id: e.id,
28
28
  name: e.name,
29
29
  name_translations: e.name_translations || {},
@@ -32,12 +32,12 @@ async function q({
32
32
  ...r,
33
33
  value_translations: r.value_translations || {}
34
34
  }))
35
- })), g = o.find((e) => e.id === t?.language_id)?.code || o.find((e) => e.id === (n ? parseInt(n, 10) : void 0))?.code || o.find((e) => e.is_default)?.code, { attributes: N, variants: P } = A(
35
+ })), g = i.find((e) => e.id === t?.language_id)?.code || i.find((e) => e.id === (s ? parseInt(s, 10) : void 0))?.code || i.find((e) => e.is_default)?.code, { attributes: A, variants: P } = y(
36
36
  t?.product_variants || [],
37
37
  g
38
- ), x = t && {
38
+ ), h = t && {
39
39
  ...t,
40
- variation_attributes: t.variation_attributes || N.map((e) => ({
40
+ variation_attributes: t.variation_attributes || A.map((e) => ({
41
41
  attribute_id: e.id,
42
42
  term_ids: e.terms.map((r) => r.id)
43
43
  })),
@@ -46,43 +46,31 @@ async function q({
46
46
  upc: e.upc ?? null,
47
47
  price: e.price / 100,
48
48
  prices: Object.entries(e.prices || {}).reduce(
49
- (r, [s, i]) => (r[s] = m(i, s), r),
49
+ (r, [o, n]) => (r[o] = m(n, o), r),
50
50
  {}
51
51
  ),
52
52
  sale_price: typeof e.sale_price == "number" ? e.sale_price / 100 : null,
53
- sale_prices: Object.entries(e.sale_prices || {}).reduce((r, [s, i]) => (r[s] = typeof i == "number" ? m(i, s) : null, r), {}),
53
+ sale_prices: Object.entries(e.sale_prices || {}).reduce((r, [o, n]) => (r[o] = typeof n == "number" ? m(n, o) : null, r), {}),
54
54
  main_media_id: e.main_media_id ?? null,
55
55
  main_image_url: e.image_url ?? null
56
56
  }))
57
57
  };
58
58
  return /* @__PURE__ */ c("div", { className: "p-8", children: /* @__PURE__ */ c(
59
- h,
59
+ x,
60
60
  {
61
61
  mediaPickerNode: d,
62
- availableLanguagesProp: o,
62
+ availableLanguagesProp: i,
63
63
  globalAttributesProp: b,
64
64
  currenciesProp: f,
65
65
  translationGroupId: a,
66
- targetLanguageId: n,
67
- initialData: x,
66
+ targetLanguageId: s,
67
+ initialData: h,
68
68
  enabledProviders: u,
69
- configStatus: l,
70
- createAction: R
71
- },
72
- void 0,
73
- !1,
74
- {
75
- fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/products/new/NewProductPage.tsx",
76
- lineNumber: 104,
77
- columnNumber: 7
78
- },
79
- this
80
- ) }, void 0, !1, {
81
- fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/products/new/NewProductPage.tsx",
82
- lineNumber: 103,
83
- columnNumber: 5
84
- }, this);
69
+ configStatus: _,
70
+ createAction: S
71
+ }
72
+ ) });
85
73
  }
86
74
  export {
87
- q as NewProductPage
75
+ U as NewProductPage
88
76
  };
@@ -1,5 +1,5 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-dev-runtime"),h=require("@nextblock-cms/db/server"),i=require("@nextblock-cms/ui"),l=require("lucide-react"),g=require("./components/ZoneForm.cjs.js"),u=require("./components/RateForm.cjs.js"),m=require("./server-actions.cjs.js"),x=require("../../../currency.cjs.js"),k=require("../../../inventory-settings.cjs.js"),f=require("../../../states.cjs.js"),o=require("@nextblock-cms/utils");async function j({searchParams:p}){const n=h.getServiceRoleSupabaseClient(),[{data:t},b,{data:d},{data:c}]=await Promise.all([n.from("shipping_zones").select(`
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),j=require("@nextblock-cms/db/server"),a=require("@nextblock-cms/ui"),r=require("lucide-react"),h=require("./components/ZoneForm.cjs.js"),u=require("./components/RateForm.cjs.js"),l=require("./server-actions.cjs.js"),f=require("../../../currency.cjs.js"),v=require("../../../inventory-settings.cjs.js"),b=require("../../../states.cjs.js"),o=require("@nextblock-cms/utils");async function N({searchParams:m}){const n=j.getServiceRoleSupabaseClient(),[{data:c},g,{data:x},{data:d}]=await Promise.all([n.from("shipping_zones").select(`
2
2
  *,
3
3
  shipping_zone_locations (*),
4
4
  shipping_zone_methods (*)
5
- `).order("priority_order",{ascending:!0}),k.getEcommerceInventorySettings(n),n.from("languages").select("code, name, is_default").eq("is_active",!0).order("name",{ascending:!0}),n.from("currencies").select("code, symbol, exchange_rate, is_default, is_active, auto_sync_product_prices, auto_update_exchange_rate, exchange_rate_source, exchange_rate_updated_at, rounding_mode, rounding_increment, rounding_charm_amount").eq("is_active",!0).order("is_default",{ascending:!1}).order("code",{ascending:!0})]),a=c?.find(r=>r.is_default)?.code||c?.[0]?.code||"USD",N=(c||[]).map(r=>x.normalizeCurrencyRecord(r));return e.jsxDEV(i.TooltipProvider,{children:e.jsxDEV("div",{className:"space-y-6",children:[p?.success?e.jsxDEV("div",{className:"rounded-lg border border-emerald-200 bg-emerald-50 px-4 py-3 text-sm text-emerald-700",children:p.success},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:58,columnNumber:21},this):null,e.jsxDEV(i.Card,{className:"overflow-hidden border-slate-200 dark:border-slate-800 shadow-sm",children:e.jsxDEV(i.CardContent,{className:"p-4 sm:p-5",children:e.jsxDEV("form",{action:m.updateInventoryTrackingAction,className:"space-y-3",children:[e.jsxDEV("div",{className:"flex flex-col gap-3 lg:flex-row lg:items-start lg:justify-between",children:[e.jsxDEV("div",{className:"flex items-start gap-3 min-w-0",children:[e.jsxDEV("div",{className:"p-2 bg-primary/10 rounded-lg text-primary shadow-inner shrink-0",children:e.jsxDEV(l.Boxes,{className:"h-4 w-4"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:69,columnNumber:41},this)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:68,columnNumber:37},this),e.jsxDEV("div",{className:"min-w-0",children:[e.jsxDEV(i.CardTitle,{className:"text-base font-semibold leading-none",children:"Inventory Tracking"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:72,columnNumber:41},this),e.jsxDEV(i.CardDescription,{className:"mt-1 text-sm",children:"Control whether checkout enforces stock counts and paid orders deduct inventory."},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:75,columnNumber:41},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:71,columnNumber:37},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:67,columnNumber:33},this),e.jsxDEV("div",{className:"flex justify-end lg:justify-start shrink-0",children:e.jsxDEV(i.Button,{type:"submit",size:"sm",className:"w-full sm:w-auto",children:"Save Inventory Settings"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:81,columnNumber:37},this)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:80,columnNumber:33},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:66,columnNumber:29},this),e.jsxDEV("div",{className:"rounded-lg border bg-muted/20 px-4 py-3",children:[e.jsxDEV("input",{type:"hidden",name:"trackQuantities",value:"false"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:88,columnNumber:33},this),e.jsxDEV("label",{htmlFor:"track-quantities",className:"flex cursor-pointer items-start gap-3",children:[e.jsxDEV("input",{id:"track-quantities",name:"trackQuantities",type:"checkbox",value:"true",defaultChecked:b.trackQuantities,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/shipping/ShippingPage.tsx",lineNumber:90,columnNumber:37},this),e.jsxDEV("span",{className:"space-y-0.5",children:[e.jsxDEV("span",{className:"block text-sm font-medium text-slate-900 dark:text-slate-100",children:"Track product quantities"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:99,columnNumber:41},this),e.jsxDEV("span",{className:"block text-sm text-muted-foreground",children:"Prevent overselling by checking stock during checkout and decrementing quantities after payment is confirmed."},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:102,columnNumber:41},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:98,columnNumber:37},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:89,columnNumber:33},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:87,columnNumber:29},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:65,columnNumber:25},this)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:64,columnNumber:21},this)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:63,columnNumber:17},this),e.jsxDEV("div",{className:"flex justify-between items-center",children:[e.jsxDEV("div",{children:[e.jsxDEV("h2",{className:"text-2xl font-bold tracking-tight text-slate-900 dark:text-slate-100",children:"Shipping Zones"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:114,columnNumber:25},this),e.jsxDEV("p",{className:"text-slate-500 dark:text-slate-400 text-sm",children:"Manage geographical delivery areas and their associated shipping rates."},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:115,columnNumber:25},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:113,columnNumber:21},this),e.jsxDEV(g.ZoneForm,{},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:117,columnNumber:21},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:112,columnNumber:17},this),e.jsxDEV("div",{className:"grid gap-6",children:!t||t.length===0?e.jsxDEV(i.Card,{className:"bg-slate-50/50 dark:bg-slate-900/10 border-dashed",children:e.jsxDEV(i.CardContent,{className:"flex flex-col items-center justify-center py-12",children:[e.jsxDEV(l.Truck,{className:"h-12 w-12 text-slate-300 dark:text-slate-700 mb-4"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:124,columnNumber:33},this),e.jsxDEV("p",{className:"text-slate-600 dark:text-slate-400 font-medium",children:"No shipping zones defined yet."},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:125,columnNumber:33},this),e.jsxDEV("p",{className:"text-xs text-slate-500 mb-6 text-center max-w-xs",children:"Create a zone to start defining shipping rates for specific regions (e.g., North America, Europe)."},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:126,columnNumber:33},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:123,columnNumber:29},this)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:122,columnNumber:25},this):t.map(r=>e.jsxDEV(i.Card,{className:"overflow-hidden border-slate-200 dark:border-slate-800 shadow-sm hover:shadow-md transition-shadow",children:[e.jsxDEV(i.CardHeader,{className:"bg-slate-50/50 dark:bg-slate-900/50 border-b dark:border-slate-800 py-4",children:e.jsxDEV("div",{className:"flex justify-between items-start md:items-center",children:[e.jsxDEV("div",{className:"flex items-center gap-3",children:[e.jsxDEV("div",{className:"p-2 bg-primary/10 rounded-lg text-primary shadow-inner",children:e.jsxDEV(l.Globe,{className:"h-5 w-5"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:136,columnNumber:49},this)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:135,columnNumber:45},this),e.jsxDEV("div",{children:[e.jsxDEV("div",{className:"flex items-center gap-2",children:[e.jsxDEV(i.CardTitle,{className:"text-lg font-bold",children:r.name},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:140,columnNumber:53},this),e.jsxDEV(i.Badge,{variant:"outline",className:"text-[10px] uppercase font-bold py-0 h-4 border-slate-200 bg-white/50 dark:bg-black/20",children:["Prio: ",r.priority_order]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:141,columnNumber:53},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:139,columnNumber:49},this),e.jsxDEV(i.CardDescription,{className:"text-xs",children:[r.shipping_zone_locations?.length||0," regions covered"]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:145,columnNumber:49},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:138,columnNumber:45},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:134,columnNumber:41},this),e.jsxDEV("div",{className:"flex gap-1",children:[e.jsxDEV(g.ZoneForm,{mode:"edit",initialData:{id:r.id,name:r.name,priority_order:r.priority_order,locations:r.shipping_zone_locations?.map(s=>({country_code:s.country_code,state_code:s.state_code}))||[]}},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:151,columnNumber:45},this),e.jsxDEV("form",{action:async()=>{"use server";await m.deleteShippingZone(r.id)},children:e.jsxDEV(i.Button,{type:"submit",variant:"ghost",size:"icon",className:"h-8 w-8 text-slate-400 hover:text-red-500 hover:bg-red-50 dark:hover:bg-red-900/20",children:e.jsxDEV(l.Trash2,{className:"h-4 w-4"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:169,columnNumber:53},this)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:168,columnNumber:49},this)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:164,columnNumber:45},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:150,columnNumber:41},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:133,columnNumber:37},this)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:132,columnNumber:33},this),e.jsxDEV(i.CardContent,{className:"p-0",children:e.jsxDEV("div",{className:"grid md:grid-cols-2 divide-y md:divide-y-0 md:divide-x divide-slate-100 dark:divide-slate-800",children:[e.jsxDEV("div",{className:"p-6",children:[e.jsxDEV("h4",{className:"text-[10px] font-bold uppercase tracking-widest text-slate-500 mb-4 flex items-center gap-1.5",children:[e.jsxDEV(l.Globe,{className:"h-3 w-3"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:180,columnNumber:49},this)," Target Regions"]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:179,columnNumber:45},this),e.jsxDEV("div",{className:"flex flex-wrap gap-1.5",children:r.shipping_zone_locations?.length>0?r.shipping_zone_locations.map(s=>e.jsxDEV(i.Badge,{variant:"secondary",className:"bg-slate-100 dark:bg-slate-800/80 text-slate-700 dark:text-slate-300 hover:bg-slate-200 border-none px-2 py-0.5 text-[11px] font-medium",children:[s.country_code,s.state_code?e.jsxDEV("span",{className:"text-slate-400 ml-1",children:["(",f.resolveSubdivisionName(s.country_code,s.state_code),")"]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:188,columnNumber:63},this):""]},s.id,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:185,columnNumber:57},this)):e.jsxDEV("p",{className:"text-sm text-slate-400 italic",children:"No specific locations assigned."},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:195,columnNumber:53},this)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:182,columnNumber:45},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:178,columnNumber:41},this),e.jsxDEV("div",{className:"p-6",children:[e.jsxDEV("div",{className:"flex justify-between items-center mb-4",children:[e.jsxDEV("h4",{className:"text-[10px] font-bold uppercase tracking-widest text-slate-500 flex items-center gap-1.5",children:[e.jsxDEV(l.Truck,{className:"h-3 w-3"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:204,columnNumber:53},this)," Shipping Methods"]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:203,columnNumber:49},this),e.jsxDEV(u.RateForm,{zoneId:r.id,zoneName:r.name,languages:d||[],currencies:N,defaultCurrencyCode:a},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:206,columnNumber:49},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:202,columnNumber:45},this),e.jsxDEV("div",{className:"space-y-2",children:r.shipping_zone_methods?.length>0?r.shipping_zone_methods.map(s=>e.jsxDEV("div",{className:"flex justify-between items-center group p-2 hover:bg-slate-50/80 dark:hover:bg-slate-800/30 rounded-lg transition-all border border-transparent hover:border-slate-100 dark:hover:border-slate-800",children:[e.jsxDEV("div",{className:"flex-1 min-w-0",children:[e.jsxDEV("div",{className:"flex items-center gap-2",children:[e.jsxDEV("p",{className:"text-sm font-semibold text-slate-900 dark:text-slate-100 truncate",children:s.name},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:220,columnNumber:69},this),e.jsxDEV(i.Badge,{variant:"outline",className:"h-4 px-1 text-[9px]",children:s.currency_pricing_mode==="manual"?"Manual FX":"Auto FX"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:221,columnNumber:69},this),(s.min_order_amount||0)>0&&e.jsxDEV(i.Tooltip,{children:[e.jsxDEV(i.TooltipTrigger,{asChild:!0,children:e.jsxDEV(i.Badge,{variant:"outline",className:"h-4 px-1 text-[9px] bg-emerald-50 text-emerald-700 dark:bg-emerald-900/20 dark:text-emerald-400 border-emerald-100 dark:border-emerald-900/50",children:[e.jsxDEV(l.Info,{className:"h-2 w-2 mr-0.5"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:228,columnNumber:85},this),o.formatPrice(s.min_order_amount,s.cost_currency?.toUpperCase()||a)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:227,columnNumber:81},this)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:226,columnNumber:77},this),e.jsxDEV(i.TooltipContent,{children:["Available for orders over ",o.formatPrice(s.min_order_amount,s.cost_currency?.toUpperCase()||a)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:235,columnNumber:77},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:225,columnNumber:73},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:219,columnNumber:65},this),e.jsxDEV("p",{className:"text-[10px] text-slate-500 uppercase tracking-tighter mix-blend-multiply dark:mix-blend-normal",children:s.method_type.replace("_"," ")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:244,columnNumber:65},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:218,columnNumber:61},this),e.jsxDEV("div",{className:"flex items-center gap-1",children:[e.jsxDEV("p",{className:"text-sm font-black text-primary px-2",children:s.method_type==="free_shipping"?"FREE":o.formatPrice(s.cost_amount,s.cost_currency?.toUpperCase()||a)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:249,columnNumber:65},this),e.jsxDEV("div",{className:"flex opacity-0 group-hover:opacity-100 transition-opacity",children:[e.jsxDEV(u.RateForm,{zoneId:r.id,zoneName:r.name,languages:d||[],currencies:N,defaultCurrencyCode:a,mode:"edit",initialData:s},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:258,columnNumber:69},this),e.jsxDEV("form",{action:async()=>{"use server";await m.deleteShippingRate(s.id)},children:e.jsxDEV(i.Button,{type:"submit",variant:"ghost",size:"icon",className:"h-7 w-7 text-slate-400 hover:text-red-500",children:e.jsxDEV(l.Trash2,{className:"h-3 w-3"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:277,columnNumber:77},this)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:271,columnNumber:73},this)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:267,columnNumber:69},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:257,columnNumber:65},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:248,columnNumber:61},this)]},s.id,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:217,columnNumber:57},this)):e.jsxDEV("p",{className:"text-xs text-slate-400 italic",children:"No methods defined for this zone."},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:285,columnNumber:53},this)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:214,columnNumber:45},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:201,columnNumber:41},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:176,columnNumber:37},this)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:175,columnNumber:33},this)]},r.id,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:131,columnNumber:29},this))},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:120,columnNumber:17},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:56,columnNumber:13},this)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/pages/cms/shipping/ShippingPage.tsx",lineNumber:55,columnNumber:9},this)}exports.ShippingPage=j;
5
+ `).order("priority_order",{ascending:!0}),v.getEcommerceInventorySettings(n),n.from("languages").select("code, name, is_default").eq("is_active",!0).order("name",{ascending:!0}),n.from("currencies").select("code, symbol, exchange_rate, is_default, is_active, auto_sync_product_prices, auto_update_exchange_rate, exchange_rate_source, exchange_rate_updated_at, rounding_mode, rounding_increment, rounding_charm_amount").eq("is_active",!0).order("is_default",{ascending:!1}).order("code",{ascending:!0})]),i=d?.find(t=>t.is_default)?.code||d?.[0]?.code||"USD",p=(d||[]).map(t=>f.normalizeCurrencyRecord(t));return e.jsx(a.TooltipProvider,{children:e.jsxs("div",{className:"space-y-6",children:[m?.success?e.jsx("div",{className:"rounded-lg border border-emerald-200 bg-emerald-50 px-4 py-3 text-sm text-emerald-700",children:m.success}):null,e.jsx(a.Card,{className:"overflow-hidden border-slate-200 dark:border-slate-800 shadow-sm",children:e.jsx(a.CardContent,{className:"p-4 sm:p-5",children:e.jsxs("form",{action:l.updateInventoryTrackingAction,className:"space-y-3",children:[e.jsxs("div",{className:"flex flex-col gap-3 lg:flex-row lg:items-start lg:justify-between",children:[e.jsxs("div",{className:"flex items-start gap-3 min-w-0",children:[e.jsx("div",{className:"p-2 bg-primary/10 rounded-lg text-primary shadow-inner shrink-0",children:e.jsx(r.Boxes,{className:"h-4 w-4"})}),e.jsxs("div",{className:"min-w-0",children:[e.jsx(a.CardTitle,{className:"text-base font-semibold leading-none",children:"Inventory Tracking"}),e.jsx(a.CardDescription,{className:"mt-1 text-sm",children:"Control whether checkout enforces stock counts and paid orders deduct inventory."})]})]}),e.jsx("div",{className:"flex justify-end lg:justify-start shrink-0",children:e.jsx(a.Button,{type:"submit",size:"sm",className:"w-full sm:w-auto",children:"Save Inventory Settings"})})]}),e.jsxs("div",{className:"rounded-lg border bg-muted/20 px-4 py-3",children:[e.jsx("input",{type:"hidden",name:"trackQuantities",value:"false"}),e.jsxs("label",{htmlFor:"track-quantities",className:"flex cursor-pointer items-start gap-3",children:[e.jsx("input",{id:"track-quantities",name:"trackQuantities",type:"checkbox",value:"true",defaultChecked:g.trackQuantities,className:"mt-0.5 h-4 w-4 rounded border-slate-300 text-primary focus:ring-primary"}),e.jsxs("span",{className:"space-y-0.5",children:[e.jsx("span",{className:"block text-sm font-medium text-slate-900 dark:text-slate-100",children:"Track product quantities"}),e.jsx("span",{className:"block text-sm text-muted-foreground",children:"Prevent overselling by checking stock during checkout and decrementing quantities after payment is confirmed."})]})]})]})]})})}),e.jsxs("div",{className:"flex justify-between items-center",children:[e.jsxs("div",{children:[e.jsx("h2",{className:"text-2xl font-bold tracking-tight text-slate-900 dark:text-slate-100",children:"Shipping Zones"}),e.jsx("p",{className:"text-slate-500 dark:text-slate-400 text-sm",children:"Manage geographical delivery areas and their associated shipping rates."})]}),e.jsx(h.ZoneForm,{})]}),e.jsx("div",{className:"grid gap-6",children:!c||c.length===0?e.jsx(a.Card,{className:"bg-slate-50/50 dark:bg-slate-900/10 border-dashed",children:e.jsxs(a.CardContent,{className:"flex flex-col items-center justify-center py-12",children:[e.jsx(r.Truck,{className:"h-12 w-12 text-slate-300 dark:text-slate-700 mb-4"}),e.jsx("p",{className:"text-slate-600 dark:text-slate-400 font-medium",children:"No shipping zones defined yet."}),e.jsx("p",{className:"text-xs text-slate-500 mb-6 text-center max-w-xs",children:"Create a zone to start defining shipping rates for specific regions (e.g., North America, Europe)."})]})}):c.map(t=>e.jsxs(a.Card,{className:"overflow-hidden border-slate-200 dark:border-slate-800 shadow-sm hover:shadow-md transition-shadow",children:[e.jsx(a.CardHeader,{className:"bg-slate-50/50 dark:bg-slate-900/50 border-b dark:border-slate-800 py-4",children:e.jsxs("div",{className:"flex justify-between items-start md:items-center",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("div",{className:"p-2 bg-primary/10 rounded-lg text-primary shadow-inner",children:e.jsx(r.Globe,{className:"h-5 w-5"})}),e.jsxs("div",{children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(a.CardTitle,{className:"text-lg font-bold",children:t.name}),e.jsxs(a.Badge,{variant:"outline",className:"text-[10px] uppercase font-bold py-0 h-4 border-slate-200 bg-white/50 dark:bg-black/20",children:["Prio: ",t.priority_order]})]}),e.jsxs(a.CardDescription,{className:"text-xs",children:[t.shipping_zone_locations?.length||0," regions covered"]})]})]}),e.jsxs("div",{className:"flex gap-1",children:[e.jsx(h.ZoneForm,{mode:"edit",initialData:{id:t.id,name:t.name,priority_order:t.priority_order,locations:t.shipping_zone_locations?.map(s=>({country_code:s.country_code,state_code:s.state_code}))||[]}}),e.jsx("form",{action:async()=>{"use server";await l.deleteShippingZone(t.id)},children:e.jsx(a.Button,{type:"submit",variant:"ghost",size:"icon",className:"h-8 w-8 text-slate-400 hover:text-red-500 hover:bg-red-50 dark:hover:bg-red-900/20",children:e.jsx(r.Trash2,{className:"h-4 w-4"})})})]})]})}),e.jsx(a.CardContent,{className:"p-0",children:e.jsxs("div",{className:"grid md:grid-cols-2 divide-y md:divide-y-0 md:divide-x divide-slate-100 dark:divide-slate-800",children:[e.jsxs("div",{className:"p-6",children:[e.jsxs("h4",{className:"text-[10px] font-bold uppercase tracking-widest text-slate-500 mb-4 flex items-center gap-1.5",children:[e.jsx(r.Globe,{className:"h-3 w-3"})," Target Regions"]}),e.jsx("div",{className:"flex flex-wrap gap-1.5",children:t.shipping_zone_locations?.length>0?t.shipping_zone_locations.map(s=>e.jsxs(a.Badge,{variant:"secondary",className:"bg-slate-100 dark:bg-slate-800/80 text-slate-700 dark:text-slate-300 hover:bg-slate-200 border-none px-2 py-0.5 text-[11px] font-medium",children:[s.country_code,s.state_code?e.jsxs("span",{className:"text-slate-400 ml-1",children:["(",b.resolveSubdivisionName(s.country_code,s.state_code),")"]}):""]},s.id)):e.jsx("p",{className:"text-sm text-slate-400 italic",children:"No specific locations assigned."})})]}),e.jsxs("div",{className:"p-6",children:[e.jsxs("div",{className:"flex justify-between items-center mb-4",children:[e.jsxs("h4",{className:"text-[10px] font-bold uppercase tracking-widest text-slate-500 flex items-center gap-1.5",children:[e.jsx(r.Truck,{className:"h-3 w-3"})," Shipping Methods"]}),e.jsx(u.RateForm,{zoneId:t.id,zoneName:t.name,languages:x||[],currencies:p,defaultCurrencyCode:i})]}),e.jsx("div",{className:"space-y-2",children:t.shipping_zone_methods?.length>0?t.shipping_zone_methods.map(s=>e.jsxs("div",{className:"flex justify-between items-center group p-2 hover:bg-slate-50/80 dark:hover:bg-slate-800/30 rounded-lg transition-all border border-transparent hover:border-slate-100 dark:hover:border-slate-800",children:[e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("p",{className:"text-sm font-semibold text-slate-900 dark:text-slate-100 truncate",children:s.name}),e.jsx(a.Badge,{variant:"outline",className:"h-4 px-1 text-[9px]",children:s.currency_pricing_mode==="manual"?"Manual FX":"Auto FX"}),(s.min_order_amount||0)>0&&e.jsxs(a.Tooltip,{children:[e.jsx(a.TooltipTrigger,{asChild:!0,children:e.jsxs(a.Badge,{variant:"outline",className:"h-4 px-1 text-[9px] bg-emerald-50 text-emerald-700 dark:bg-emerald-900/20 dark:text-emerald-400 border-emerald-100 dark:border-emerald-900/50",children:[e.jsx(r.Info,{className:"h-2 w-2 mr-0.5"}),o.formatPrice(s.min_order_amount,s.cost_currency?.toUpperCase()||i)]})}),e.jsxs(a.TooltipContent,{children:["Available for orders over ",o.formatPrice(s.min_order_amount,s.cost_currency?.toUpperCase()||i)]})]})]}),e.jsx("p",{className:"text-[10px] text-slate-500 uppercase tracking-tighter mix-blend-multiply dark:mix-blend-normal",children:s.method_type.replace("_"," ")})]}),e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsx("p",{className:"text-sm font-black text-primary px-2",children:s.method_type==="free_shipping"?"FREE":o.formatPrice(s.cost_amount,s.cost_currency?.toUpperCase()||i)}),e.jsxs("div",{className:"flex opacity-0 group-hover:opacity-100 transition-opacity",children:[e.jsx(u.RateForm,{zoneId:t.id,zoneName:t.name,languages:x||[],currencies:p,defaultCurrencyCode:i,mode:"edit",initialData:s}),e.jsx("form",{action:async()=>{"use server";await l.deleteShippingRate(s.id)},children:e.jsx(a.Button,{type:"submit",variant:"ghost",size:"icon",className:"h-7 w-7 text-slate-400 hover:text-red-500",children:e.jsx(r.Trash2,{className:"h-3 w-3"})})})]})]})]},s.id)):e.jsx("p",{className:"text-xs text-slate-400 italic",children:"No methods defined for this zone."})})]})]})})]},t.id))})]})})}exports.ShippingPage=N;