@nextblock-cms/ecom 0.19.0 → 0.19.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.
Files changed (144) 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.es.js +154 -381
  16. package/lib/components/CartDrawer.cjs.js +1 -1
  17. package/lib/components/CartDrawer.es.js +143 -297
  18. package/lib/components/CartIcon.cjs.js +1 -1
  19. package/lib/components/CartIcon.es.js +21 -47
  20. package/lib/components/Checkout.cjs.js +1 -1
  21. package/lib/components/Checkout.es.js +814 -1614
  22. package/lib/components/CouponForm.cjs.js +1 -1
  23. package/lib/components/CouponForm.es.js +104 -155
  24. package/lib/components/CurrencySwitcher.cjs.js +1 -1
  25. package/lib/components/CurrencySwitcher.es.js +14 -33
  26. package/lib/components/CustomerProfileForm.cjs.js +1 -1
  27. package/lib/components/CustomerProfileForm.es.js +264 -672
  28. package/lib/components/FeaturedProduct.cjs.js +1 -1
  29. package/lib/components/FeaturedProduct.es.js +46 -125
  30. package/lib/components/FreemiusLicensePanel.cjs.js +1 -1
  31. package/lib/components/FreemiusLicensePanel.es.js +45 -125
  32. package/lib/components/InvoiceDocument.cjs.js +1 -1
  33. package/lib/components/InvoiceDocument.es.js +148 -487
  34. package/lib/components/InvoiceViewerShell.cjs.js +2 -2
  35. package/lib/components/InvoiceViewerShell.d.ts +4 -1
  36. package/lib/components/InvoiceViewerShell.es.js +59 -142
  37. package/lib/components/ProductCard.cjs.js +1 -1
  38. package/lib/components/ProductCard.d.ts +3 -1
  39. package/lib/components/ProductCard.es.js +128 -242
  40. package/lib/components/ProductDetailsLayout.cjs.js +1 -1
  41. package/lib/components/ProductDetailsLayout.es.js +311 -652
  42. package/lib/components/ProductGallery.cjs.js +1 -1
  43. package/lib/components/ProductGallery.d.ts +2 -0
  44. package/lib/components/ProductGallery.es.js +37 -66
  45. package/lib/components/ProductGrid.cjs.js +1 -1
  46. package/lib/components/ProductGrid.es.js +23 -32
  47. package/lib/components/ShippingEstimator.cjs.js +1 -1
  48. package/lib/components/ShippingEstimator.es.js +118 -231
  49. package/lib/components/SimpleTiptapRenderer.cjs.js +1 -1
  50. package/lib/components/SimpleTiptapRenderer.es.js +111 -294
  51. package/lib/components/SubscriptionSelector.cjs.js +1 -1
  52. package/lib/components/SubscriptionSelector.es.js +120 -181
  53. package/lib/invoice.cjs.js +1 -1
  54. package/lib/invoice.d.ts +1 -1
  55. package/lib/invoice.es.js +6 -5
  56. package/lib/pages/cms/coupons/CouponEditorForm.cjs.js +1 -1
  57. package/lib/pages/cms/coupons/CouponEditorForm.es.js +115 -375
  58. package/lib/pages/cms/coupons/CouponsPage.cjs.js +2 -2
  59. package/lib/pages/cms/coupons/CouponsPage.es.js +116 -368
  60. package/lib/pages/cms/coupons/CreateCouponDialog.cjs.js +1 -1
  61. package/lib/pages/cms/coupons/CreateCouponDialog.es.js +26 -62
  62. package/lib/pages/cms/coupons/EditCouponPage.cjs.js +1 -1
  63. package/lib/pages/cms/coupons/EditCouponPage.es.js +35 -71
  64. package/lib/pages/cms/coupons/ProductScopePicker.cjs.js +1 -1
  65. package/lib/pages/cms/coupons/ProductScopePicker.es.js +72 -167
  66. package/lib/pages/cms/orders/ExportReportsDialog.cjs.js +1 -1
  67. package/lib/pages/cms/orders/ExportReportsDialog.es.js +87 -247
  68. package/lib/pages/cms/orders/OrderDetailPage.cjs.js +1 -1
  69. package/lib/pages/cms/orders/OrderDetailPage.es.js +95 -283
  70. package/lib/pages/cms/orders/OrderPrintButton.cjs.js +1 -1
  71. package/lib/pages/cms/orders/OrderPrintButton.es.js +9 -21
  72. package/lib/pages/cms/orders/OrderStatusForm.cjs.js +1 -1
  73. package/lib/pages/cms/orders/OrderStatusForm.es.js +46 -106
  74. package/lib/pages/cms/orders/OrdersPage.cjs.js +1 -1
  75. package/lib/pages/cms/orders/OrdersPage.es.js +78 -257
  76. package/lib/pages/cms/payments/PaymentsClient.cjs.js +1 -1
  77. package/lib/pages/cms/payments/PaymentsClient.es.js +192 -580
  78. package/lib/pages/cms/payments/PaymentsPage.cjs.js +1 -1
  79. package/lib/pages/cms/payments/PaymentsPage.es.js +14 -22
  80. package/lib/pages/cms/products/ProductsPage.cjs.js +1 -1
  81. package/lib/pages/cms/products/ProductsPage.es.js +47 -87
  82. package/lib/pages/cms/products/_id_/edit/EditProductPage.cjs.js +1 -1
  83. package/lib/pages/cms/products/_id_/edit/EditProductPage.es.js +97 -177
  84. package/lib/pages/cms/products/attributes/AttributeManagementPage.cjs.js +1 -1
  85. package/lib/pages/cms/products/attributes/AttributeManagementPage.es.js +40 -84
  86. package/lib/pages/cms/products/attributes/components/AttributeManager.cjs.js +1 -1
  87. package/lib/pages/cms/products/attributes/components/AttributeManager.es.js +192 -455
  88. package/lib/pages/cms/products/categories/CategoryManagementPage.cjs.js +1 -1
  89. package/lib/pages/cms/products/categories/CategoryManagementPage.es.js +28 -72
  90. package/lib/pages/cms/products/categories/components/CategoryManager.cjs.js +1 -1
  91. package/lib/pages/cms/products/categories/components/CategoryManager.es.js +183 -490
  92. package/lib/pages/cms/products/components/CopyProductFromLanguage.cjs.js +1 -1
  93. package/lib/pages/cms/products/components/CopyProductFromLanguage.es.js +69 -177
  94. package/lib/pages/cms/products/components/CurrencyPriceFields.cjs.js +1 -1
  95. package/lib/pages/cms/products/components/CurrencyPriceFields.es.js +102 -213
  96. package/lib/pages/cms/products/components/DeleteProductButton.cjs.js +1 -1
  97. package/lib/pages/cms/products/components/DeleteProductButton.es.js +25 -45
  98. package/lib/pages/cms/products/components/FreemiusPricingDashboard.cjs.js +1 -1
  99. package/lib/pages/cms/products/components/FreemiusPricingDashboard.es.js +58 -202
  100. package/lib/pages/cms/products/components/ProductCategorySelector.cjs.js +1 -1
  101. package/lib/pages/cms/products/components/ProductCategorySelector.es.js +89 -235
  102. package/lib/pages/cms/products/components/ProductForm.cjs.js +1 -1
  103. package/lib/pages/cms/products/components/ProductForm.es.js +526 -1110
  104. package/lib/pages/cms/products/components/ProductMediaManager.cjs.js +1 -1
  105. package/lib/pages/cms/products/components/ProductMediaManager.es.js +63 -154
  106. package/lib/pages/cms/products/components/ProductsBulkTable.cjs.js +1 -1
  107. package/lib/pages/cms/products/components/ProductsBulkTable.es.js +213 -544
  108. package/lib/pages/cms/products/components/SaleScheduleFields.cjs.js +1 -1
  109. package/lib/pages/cms/products/components/SaleScheduleFields.es.js +91 -207
  110. package/lib/pages/cms/products/components/SyncFreemiusButton.cjs.js +1 -1
  111. package/lib/pages/cms/products/components/SyncFreemiusButton.es.js +16 -28
  112. package/lib/pages/cms/products/components/SyncFreemiusPricingButton.cjs.js +2 -2
  113. package/lib/pages/cms/products/components/SyncFreemiusPricingButton.es.js +25 -37
  114. package/lib/pages/cms/products/components/VariationsEditor.cjs.js +1 -1
  115. package/lib/pages/cms/products/components/VariationsEditor.es.js +261 -492
  116. package/lib/pages/cms/products/inventory/InventoryPage.cjs.js +1 -1
  117. package/lib/pages/cms/products/inventory/InventoryPage.es.js +12 -32
  118. package/lib/pages/cms/products/inventory/InventoryTableClient.cjs.js +2 -2
  119. package/lib/pages/cms/products/inventory/InventoryTableClient.es.js +145 -365
  120. package/lib/pages/cms/products/new/NewProductPage.cjs.js +1 -1
  121. package/lib/pages/cms/products/new/NewProductPage.es.js +30 -42
  122. package/lib/pages/cms/shipping/ShippingPage.cjs.js +2 -2
  123. package/lib/pages/cms/shipping/ShippingPage.es.js +155 -507
  124. package/lib/pages/cms/shipping/components/RateForm.cjs.js +1 -1
  125. package/lib/pages/cms/shipping/components/RateForm.es.js +334 -717
  126. package/lib/pages/cms/shipping/components/ZoneForm.cjs.js +1 -1
  127. package/lib/pages/cms/shipping/components/ZoneForm.es.js +158 -392
  128. package/lib/pages/cms/taxes/TaxesPage.cjs.js +1 -1
  129. package/lib/pages/cms/taxes/TaxesPage.es.js +119 -447
  130. package/lib/pages/cms/taxes/components/TaxRateForm.cjs.js +1 -1
  131. package/lib/pages/cms/taxes/components/TaxRateForm.es.js +52 -156
  132. package/lib/product-context.cjs.js +1 -1
  133. package/lib/product-context.es.js +10 -14
  134. package/lib/trials.cjs.js +1 -1
  135. package/lib/trials.d.ts +10 -3
  136. package/lib/trials.es.js +28 -21
  137. package/lib/types.d.ts +2 -0
  138. package/lib/use-price-formatter.cjs.js +1 -0
  139. package/lib/use-price-formatter.d.ts +11 -0
  140. package/lib/use-price-formatter.es.js +13 -0
  141. package/lib/variation-utils.cjs.js +1 -1
  142. package/lib/variation-utils.d.ts +10 -0
  143. package/lib/variation-utils.es.js +139 -123
  144. package/package.json +4 -4
@@ -1,261 +1,148 @@
1
1
  'use client';
2
- import { jsxDEV as e } from "react/jsx-dev-runtime";
3
- import { useState as n } from "react";
4
- import { Button as y } from "@nextblock-cms/ui/button";
5
- import { Input as _ } from "@nextblock-cms/ui/input";
6
- import { Label as d } from "@nextblock-cms/ui/label";
7
- import { Truck as g, Loader2 as w, Calculator as F } from "lucide-react";
8
- import { countries as A } from "../countries.es.js";
9
- import { getShippingEstimates as P } from "../server-actions/shipping-actions.es.js";
10
- import { useTranslations as L, formatPrice as I } from "@nextblock-cms/utils";
11
- import { getStatesForCountry as k, countryUsesStructuredStates as K } from "../states.es.js";
12
- import { useCurrency as O } from "../CurrencyProvider.es.js";
13
- const Y = ({ physicalSubtotal: v }) => {
14
- const [r, C] = n("CA"), [o, u] = n(""), [p, S] = n(""), [N, b] = n(!1), [i, f] = n(null), [c, x] = n(null), { t, lang: E } = L(), { activeCurrencyCode: h } = O(), a = (s, m) => {
15
- const l = t(s);
16
- return l === s ? m : l;
17
- }, j = k(r), B = K(r), D = a("select_an_option", "Select an option"), R = a("state_province", "State / Province"), U = async () => {
18
- b(!0), x(null), f(null);
19
- const s = await P(
20
- v,
21
- {
22
- country: r,
23
- state: o || void 0,
24
- postal_code: p
25
- },
26
- E,
27
- h
28
- );
29
- s.success && s.methods ? f(s.methods) : x(
30
- s.errorKey ? a(
31
- s.errorKey,
32
- s.error || t("ecommerce.no_rates_found")
33
- ) : s.error || t("ecommerce.no_rates_found")
34
- ), b(!1);
2
+ import { jsxs as a, jsx as t } from "react/jsx-runtime";
3
+ import { useState as s } from "react";
4
+ import { Button as L } from "@nextblock-cms/ui/button";
5
+ import { Input as D } from "@nextblock-cms/ui/input";
6
+ import { Label as h } from "@nextblock-cms/ui/label";
7
+ import { Truck as b, Loader2 as I, Calculator as O } from "lucide-react";
8
+ import { countries as T } from "../countries.es.js";
9
+ import { getShippingEstimates as $ } from "../server-actions/shipping-actions.es.js";
10
+ import { useTranslations as z } from "@nextblock-cms/utils";
11
+ import { usePriceFormatter as B } from "../use-price-formatter.es.js";
12
+ import { getStatesForCountry as C, countryUsesStructuredStates as R } from "../states.es.js";
13
+ import { useCurrency as U } from "../CurrencyProvider.es.js";
14
+ const te = ({ physicalSubtotal: _ }) => {
15
+ const S = B(), [o, w] = s("CA"), [n, g] = s(""), [f, k] = s(""), [d, x] = s(!1), [c, v] = s(null), [u, p] = s(null), { t: r, lang: F } = z(), { activeCurrencyCode: y } = U(), l = (e, i) => {
16
+ const m = r(e);
17
+ return m === e ? i : m;
18
+ }, E = C(o), P = R(o), A = l("select_an_option", "Select an option"), j = l("state_province", "State / Province"), N = async () => {
19
+ x(!0), p(null), v(null);
20
+ try {
21
+ const e = await $(
22
+ _,
23
+ {
24
+ country: o,
25
+ state: n || void 0,
26
+ postal_code: f
27
+ },
28
+ F,
29
+ y
30
+ );
31
+ e.success && e.methods ? v(e.methods) : p(
32
+ e.errorKey ? l(
33
+ e.errorKey,
34
+ e.error || r("ecommerce.no_rates_found")
35
+ ) : e.error || r("ecommerce.no_rates_found")
36
+ );
37
+ } catch (e) {
38
+ console.error("[ShippingEstimator] Failed to load rates:", e), p(
39
+ l(
40
+ "ecommerce.shipping_calculation_failed",
41
+ "We couldn't calculate shipping right now. Please try again."
42
+ )
43
+ );
44
+ } finally {
45
+ x(!1);
46
+ }
35
47
  };
36
- return /* @__PURE__ */ e("div", { className: "space-y-4 rounded-lg border bg-muted/30 p-4 mt-6", children: [
37
- /* @__PURE__ */ e("div", { className: "flex items-center gap-2 font-semibold text-sm", children: [
38
- /* @__PURE__ */ e(g, { className: "h-4 w-4" }, void 0, !1, {
39
- fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/ShippingEstimator.tsx",
40
- lineNumber: 71,
41
- columnNumber: 9
42
- }, void 0),
43
- /* @__PURE__ */ e("span", { children: t("ecommerce.estimate_shipping") }, void 0, !1, {
44
- fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/ShippingEstimator.tsx",
45
- lineNumber: 72,
46
- columnNumber: 9
47
- }, void 0)
48
- ] }, void 0, !0, {
49
- fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/ShippingEstimator.tsx",
50
- lineNumber: 70,
51
- columnNumber: 7
52
- }, void 0),
53
- /* @__PURE__ */ e("div", { className: "grid gap-3", children: [
54
- /* @__PURE__ */ e("div", { className: "space-y-1.5", children: [
55
- /* @__PURE__ */ e(d, { htmlFor: "estimate-country", className: "text-xs uppercase tracking-wider text-muted-foreground", children: t("ecommerce.country") }, void 0, !1, {
56
- fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/ShippingEstimator.tsx",
57
- lineNumber: 77,
58
- columnNumber: 11
59
- }, void 0),
60
- /* @__PURE__ */ e(
48
+ return /* @__PURE__ */ a("div", { className: "space-y-4 rounded-lg border bg-muted/30 p-4 mt-6", children: [
49
+ /* @__PURE__ */ a("div", { className: "flex items-center gap-2 font-semibold text-sm", children: [
50
+ /* @__PURE__ */ t(b, { className: "h-4 w-4" }),
51
+ /* @__PURE__ */ t("span", { children: r("ecommerce.estimate_shipping") })
52
+ ] }),
53
+ /* @__PURE__ */ a("div", { className: "grid gap-3", children: [
54
+ /* @__PURE__ */ a("div", { className: "space-y-1.5", children: [
55
+ /* @__PURE__ */ t(h, { htmlFor: "estimate-country", className: "text-xs uppercase tracking-wider text-muted-foreground", children: r("ecommerce.country") }),
56
+ /* @__PURE__ */ t(
61
57
  "select",
62
58
  {
63
59
  id: "estimate-country",
64
- value: r,
65
- onChange: (s) => {
66
- const m = s.target.value, l = k(m);
67
- C(m), u(
68
- l.some((H) => H.code === o) ? o : ""
60
+ name: "estimate-country",
61
+ autoComplete: "shipping country",
62
+ value: o,
63
+ onChange: (e) => {
64
+ const i = e.target.value, m = C(i);
65
+ w(i), g(
66
+ m.some((K) => K.code === n) ? n : ""
69
67
  );
70
68
  },
71
69
  className: "flex h-9 w-full rounded-md border border-input bg-background px-3 py-2 text-sm",
72
- children: A.map((s) => /* @__PURE__ */ e("option", { value: s.code, children: s.name }, s.code, !1, {
73
- fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/ShippingEstimator.tsx",
74
- lineNumber: 94,
75
- columnNumber: 15
76
- }, void 0))
77
- },
78
- void 0,
79
- !1,
80
- {
81
- fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/ShippingEstimator.tsx",
82
- lineNumber: 80,
83
- columnNumber: 11
84
- },
85
- void 0
70
+ children: T.map((e) => /* @__PURE__ */ t("option", { value: e.code, children: e.name }, e.code))
71
+ }
86
72
  )
87
- ] }, void 0, !0, {
88
- fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/ShippingEstimator.tsx",
89
- lineNumber: 76,
90
- columnNumber: 9
91
- }, void 0),
92
- B && /* @__PURE__ */ e("div", { className: "space-y-1.5", children: [
93
- /* @__PURE__ */ e(d, { htmlFor: "estimate-state", className: "text-xs uppercase tracking-wider text-muted-foreground", children: t("state_province") }, void 0, !1, {
94
- fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/ShippingEstimator.tsx",
95
- lineNumber: 103,
96
- columnNumber: 13
97
- }, void 0),
98
- /* @__PURE__ */ e(
73
+ ] }),
74
+ P && /* @__PURE__ */ a("div", { className: "space-y-1.5", children: [
75
+ /* @__PURE__ */ t(h, { htmlFor: "estimate-state", className: "text-xs uppercase tracking-wider text-muted-foreground", children: r("state_province") }),
76
+ /* @__PURE__ */ a(
99
77
  "select",
100
78
  {
101
79
  id: "estimate-state",
102
- value: o,
103
- onChange: (s) => u(s.target.value),
80
+ name: "estimate-state",
81
+ autoComplete: "shipping address-level1",
82
+ value: n,
83
+ onChange: (e) => g(e.target.value),
104
84
  className: "flex h-9 w-full rounded-md border border-input bg-background px-3 py-2 text-sm",
105
85
  children: [
106
- /* @__PURE__ */ e("option", { value: "", children: `${D}: ${R}` }, void 0, !1, {
107
- fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/ShippingEstimator.tsx",
108
- lineNumber: 112,
109
- columnNumber: 15
110
- }, void 0),
111
- j.map((s) => /* @__PURE__ */ e("option", { value: s.code, children: s.name }, s.code, !1, {
112
- fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/ShippingEstimator.tsx",
113
- lineNumber: 114,
114
- columnNumber: 17
115
- }, void 0))
86
+ /* @__PURE__ */ t("option", { value: "", children: `${A}: ${j}` }),
87
+ E.map((e) => /* @__PURE__ */ t("option", { value: e.code, children: e.name }, e.code))
116
88
  ]
117
- },
118
- void 0,
119
- !0,
120
- {
121
- fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/ShippingEstimator.tsx",
122
- lineNumber: 106,
123
- columnNumber: 13
124
- },
125
- void 0
89
+ }
126
90
  )
127
- ] }, void 0, !0, {
128
- fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/ShippingEstimator.tsx",
129
- lineNumber: 102,
130
- columnNumber: 11
131
- }, void 0),
132
- /* @__PURE__ */ e("div", { className: "space-y-1.5", children: [
133
- /* @__PURE__ */ e(d, { htmlFor: "estimate-postal", className: "text-xs uppercase tracking-wider text-muted-foreground", children: t("ecommerce.postal_code") }, void 0, !1, {
134
- fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/ShippingEstimator.tsx",
135
- lineNumber: 123,
136
- columnNumber: 11
137
- }, void 0),
138
- /* @__PURE__ */ e("div", { className: "flex gap-2", children: [
139
- /* @__PURE__ */ e(
140
- _,
91
+ ] }),
92
+ /* @__PURE__ */ a("div", { className: "space-y-1.5", children: [
93
+ /* @__PURE__ */ t(h, { htmlFor: "estimate-postal", className: "text-xs uppercase tracking-wider text-muted-foreground", children: r("ecommerce.postal_code") }),
94
+ /* @__PURE__ */ a("div", { className: "flex gap-2", children: [
95
+ /* @__PURE__ */ t(
96
+ D,
141
97
  {
142
98
  id: "estimate-postal",
143
- placeholder: "A1A 1A1",
144
- value: p,
145
- onChange: (s) => S(s.target.value),
99
+ name: "estimate-postal",
100
+ autoComplete: "shipping postal-code",
101
+ placeholder: o === "CA" ? "A1A 1A1" : void 0,
102
+ value: f,
103
+ onChange: (e) => k(e.target.value),
104
+ onKeyDown: (e) => {
105
+ e.key === "Enter" && !d && (e.preventDefault(), N());
106
+ },
146
107
  className: "h-9 text-sm bg-background"
147
- },
148
- void 0,
149
- !1,
150
- {
151
- fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/ShippingEstimator.tsx",
152
- lineNumber: 127,
153
- columnNumber: 13
154
- },
155
- void 0
108
+ }
156
109
  ),
157
- /* @__PURE__ */ e(
158
- y,
110
+ /* @__PURE__ */ a(
111
+ L,
159
112
  {
160
113
  size: "sm",
161
114
  variant: "secondary",
162
- onClick: U,
163
- disabled: N,
115
+ onClick: N,
116
+ disabled: d,
164
117
  className: "shrink-0",
165
118
  children: [
166
- N ? /* @__PURE__ */ e(w, { className: "h-4 w-4 animate-spin" }, void 0, !1, {
167
- fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/ShippingEstimator.tsx",
168
- lineNumber: 141,
169
- columnNumber: 32
170
- }, void 0) : /* @__PURE__ */ e(F, { className: "h-4 w-4 mr-1.5" }, void 0, !1, {
171
- fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/ShippingEstimator.tsx",
172
- lineNumber: 141,
173
- columnNumber: 79
174
- }, void 0),
175
- t("ecommerce.calculate")
119
+ d ? /* @__PURE__ */ t(I, { className: "h-4 w-4 mr-1.5 animate-spin" }) : /* @__PURE__ */ t(O, { className: "h-4 w-4 mr-1.5" }),
120
+ r("ecommerce.calculate")
176
121
  ]
177
- },
178
- void 0,
179
- !0,
180
- {
181
- fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/ShippingEstimator.tsx",
182
- lineNumber: 134,
183
- columnNumber: 13
184
- },
185
- void 0
122
+ }
186
123
  )
187
- ] }, void 0, !0, {
188
- fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/ShippingEstimator.tsx",
189
- lineNumber: 126,
190
- columnNumber: 11
191
- }, void 0)
192
- ] }, void 0, !0, {
193
- fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/ShippingEstimator.tsx",
194
- lineNumber: 122,
195
- columnNumber: 9
196
- }, void 0)
197
- ] }, void 0, !0, {
198
- fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/ShippingEstimator.tsx",
199
- lineNumber: 75,
200
- columnNumber: 7
201
- }, void 0),
202
- c && /* @__PURE__ */ e("p", { className: "text-xs text-destructive mt-2", children: c }, void 0, !1, {
203
- fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/ShippingEstimator.tsx",
204
- lineNumber: 148,
205
- columnNumber: 17
206
- }, void 0),
207
- i && i.length > 0 && /* @__PURE__ */ e("div", { className: "mt-4 space-y-2 border-t pt-3", children: [
208
- /* @__PURE__ */ e("p", { className: "text-xs font-medium text-muted-foreground uppercase", children: [
209
- t("ecommerce.available_rates"),
210
- ":"
211
- ] }, void 0, !0, {
212
- fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/ShippingEstimator.tsx",
213
- lineNumber: 152,
214
- columnNumber: 11
215
- }, void 0),
216
- i.map((s) => /* @__PURE__ */ e("div", { className: "flex justify-between items-center p-3 border rounded-lg bg-muted/30", children: [
217
- /* @__PURE__ */ e("div", { className: "flex items-center gap-2", children: [
218
- /* @__PURE__ */ e(g, { className: "h-4 w-4 text-muted-foreground" }, void 0, !1, {
219
- fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/ShippingEstimator.tsx",
220
- lineNumber: 156,
221
- columnNumber: 17
222
- }, void 0),
223
- /* @__PURE__ */ e("span", { className: "text-sm font-medium", children: s.name }, void 0, !1, {
224
- fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/ShippingEstimator.tsx",
225
- lineNumber: 157,
226
- columnNumber: 17
227
- }, void 0)
228
- ] }, void 0, !0, {
229
- fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/ShippingEstimator.tsx",
230
- lineNumber: 155,
231
- columnNumber: 15
232
- }, void 0),
233
- /* @__PURE__ */ e("span", { className: "text-sm font-bold", children: s.amount === 0 ? t("ecommerce.free") : I(s.amount, h) }, void 0, !1, {
234
- fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/ShippingEstimator.tsx",
235
- lineNumber: 159,
236
- columnNumber: 15
237
- }, void 0)
238
- ] }, s.id, !0, {
239
- fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/ShippingEstimator.tsx",
240
- lineNumber: 154,
241
- columnNumber: 13
242
- }, void 0))
243
- ] }, void 0, !0, {
244
- fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/ShippingEstimator.tsx",
245
- lineNumber: 151,
246
- columnNumber: 9
247
- }, void 0),
248
- i && i.length === 0 && !c && /* @__PURE__ */ e("p", { className: "text-xs text-muted-foreground mt-2 italic", children: t("ecommerce.no_rates_found") }, void 0, !1, {
249
- fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/ShippingEstimator.tsx",
250
- lineNumber: 168,
251
- columnNumber: 9
252
- }, void 0)
253
- ] }, void 0, !0, {
254
- fileName: "C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/ShippingEstimator.tsx",
255
- lineNumber: 69,
256
- columnNumber: 5
257
- }, void 0);
124
+ ] })
125
+ ] })
126
+ ] }),
127
+ u && /* @__PURE__ */ t("p", { role: "alert", className: "text-xs text-destructive mt-2", children: u }),
128
+ /* @__PURE__ */ a("div", { "aria-live": "polite", children: [
129
+ c && c.length > 0 && /* @__PURE__ */ a("div", { className: "mt-4 space-y-2 border-t pt-3", children: [
130
+ /* @__PURE__ */ a("p", { className: "text-xs font-medium text-muted-foreground uppercase", children: [
131
+ r("ecommerce.available_rates"),
132
+ ":"
133
+ ] }),
134
+ c.map((e) => /* @__PURE__ */ a("div", { className: "flex justify-between items-center p-3 border rounded-lg bg-muted/30", children: [
135
+ /* @__PURE__ */ a("div", { className: "flex items-center gap-2", children: [
136
+ /* @__PURE__ */ t(b, { className: "h-4 w-4 text-muted-foreground" }),
137
+ /* @__PURE__ */ t("span", { className: "text-sm font-medium", children: e.name })
138
+ ] }),
139
+ /* @__PURE__ */ t("span", { className: "text-sm font-bold tabular-nums", children: e.amount === 0 ? r("ecommerce.free") : S(e.amount, y) })
140
+ ] }, e.id))
141
+ ] }),
142
+ c && c.length === 0 && !u && /* @__PURE__ */ t("p", { className: "text-xs text-muted-foreground mt-2 italic", children: r("ecommerce.no_rates_found") })
143
+ ] })
144
+ ] });
258
145
  };
259
146
  export {
260
- Y as ShippingEstimator
147
+ te as ShippingEstimator
261
148
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react/jsx-dev-runtime"),u=require("react"),b=(e,l)=>l.reduce((t,r)=>{switch(r.type){case"bold":return s.jsxDEV("strong",{children:t},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:26,columnNumber:16},void 0);case"italic":return s.jsxDEV("em",{children:t},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:28,columnNumber:16},void 0);case"underline":case"u":return s.jsxDEV("u",{children:t},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:31,columnNumber:16},void 0);case"strike":return s.jsxDEV("s",{children:t},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:33,columnNumber:16},void 0);case"code":return s.jsxDEV("code",{className:"bg-muted px-1.5 py-0.5 rounded text-[0.875em] font-mono",children:t},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:36,columnNumber:11},void 0);case"link":{const n=r.attrs?.href||"#",i=r.attrs?.target||"_blank";return s.jsxDEV("a",{href:n,target:i,rel:"noopener noreferrer",className:"underline text-primary hover:text-primary/80",children:t},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:44,columnNumber:11},void 0)}case"highlight":{const n=r.attrs?.color,i=n?{backgroundColor:n}:{};return s.jsxDEV("mark",{style:i,className:n?void 0:"bg-yellow-200 dark:bg-yellow-800/50",children:t},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:52,columnNumber:16},void 0)}case"subscript":return s.jsxDEV("sub",{children:t},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:55,columnNumber:16},void 0);case"superscript":return s.jsxDEV("sup",{children:t},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:57,columnNumber:16},void 0);case"textStyle":{const n={};return r.attrs?.color&&(n.color=r.attrs.color),r.attrs?.fontSize&&(n.fontSize=r.attrs.fontSize),r.attrs?.fontFamily&&(n.fontFamily=r.attrs.fontFamily),Object.keys(n).length>0?s.jsxDEV("span",{style:n,children:t},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:63,columnNumber:46},void 0):s.jsxDEV(s.Fragment,{children:t},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:63,columnNumber:83},void 0)}default:return t}},e),f=["h1","h2","h3","h4","h5","h6"],x=(e,l,t,r)=>{const n=Math.max(1,Math.min(6,e)),i=f[n-1],o=r?.id;return u.createElement(i,{key:t,className:"font-bold my-4",id:o},l)},d=e=>{const l={},t={},r=e?.colspan,n=e?.rowspan,i=e?.colwidth;return r&&r>1&&(l.colSpan=r),n&&n>1&&(l.rowSpan=n),i&&Array.isArray(i)&&i[0]&&(t.minWidth=i[0]),Object.keys(t).length>0&&(l.style=t),l},p=(e,l)=>{if(e.type==="text"){const r=e.text??"";return s.jsxDEV(u.Fragment,{children:e.marks?.length?b(r,e.marks):r},l,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:110,columnNumber:7},void 0)}const t=e.content?.map((r,n)=>p(r,n))??null;switch(e.type){case"doc":return s.jsxDEV("div",{children:t},l,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:121,columnNumber:14},void 0);case"paragraph":{if(!e.content?.length||e.content.every(o=>o.type==="text"&&(!o.text||!o.text.trim())))return null;const n=e.attrs?.textAlign,i=n?{textAlign:n}:{};return s.jsxDEV("p",{className:"mb-4",style:Object.keys(i).length?i:void 0,children:t},l,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:135,columnNumber:14},void 0)}case"heading":return x(e.attrs?.level||1,t,l,e.attrs??void 0);case"bulletList":return s.jsxDEV("ul",{className:"list-disc pl-5 mb-4",children:t},l,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:147,columnNumber:14},void 0);case"orderedList":{const r=e.attrs?.start??1;return s.jsxDEV("ol",{className:"list-decimal pl-5 mb-4",start:r!==1?r:void 0,children:t},l,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:150,columnNumber:14},void 0)}case"listItem":return s.jsxDEV("li",{children:t},l,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:153,columnNumber:14},void 0);case"taskList":return s.jsxDEV("ul",{className:"list-none pl-0 mb-4 space-y-1",children:t},l,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:155,columnNumber:14},void 0);case"taskItem":{const r=!!e.attrs?.checked;return s.jsxDEV("li",{className:"flex items-start gap-2",children:[s.jsxDEV("input",{type:"checkbox",checked:r,readOnly:!0,className:"mt-1.5 rounded"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:160,columnNumber:11},void 0),s.jsxDEV("div",{className:r?"line-through text-muted-foreground":"",children:t},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:161,columnNumber:11},void 0)]},l,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:159,columnNumber:9},void 0)}case"blockquote":return s.jsxDEV("blockquote",{className:"border-l-4 border-border pl-4 italic my-4",children:t},l,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:168,columnNumber:14},void 0);case"codeBlock":{const r=e.attrs?.language;return s.jsxDEV("pre",{className:"bg-muted rounded-lg p-4 mb-4 overflow-x-auto","data-language":r||void 0,children:s.jsxDEV("code",{className:"text-sm font-mono",children:t},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:173,columnNumber:11},void 0)},l,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:172,columnNumber:9},void 0)}case"horizontalRule":return s.jsxDEV("hr",{className:"my-6 border-border"},l,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:180,columnNumber:14},void 0);case"hardBreak":return s.jsxDEV("br",{},l,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:182,columnNumber:14},void 0);case"image":{const r=e.attrs?.src,n=e.attrs?.alt||"",i=e.attrs?.title,o=e.attrs?.width,c=e.attrs?.height,m={};return o&&(m.width=typeof o=="number"?`${o}px`:o),c&&(m.height=typeof c=="number"?`${c}px`:c),s.jsxDEV("img",{src:r,alt:n,title:i,style:Object.keys(m).length?m:void 0,className:"max-w-full h-auto rounded my-4"},l,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:193,columnNumber:9},void 0)}case"table":return s.jsxDEV("div",{className:"overflow-x-auto my-4",children:s.jsxDEV("table",{className:"w-full border-collapse border border-gray-300 dark:border-gray-700",style:{minWidth:500},children:s.jsxDEV("tbody",{children:t},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:209,columnNumber:13},void 0)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:208,columnNumber:11},void 0)},l,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:207,columnNumber:9},void 0);case"tableRow":return s.jsxDEV("tr",{className:"border-b border-gray-300 dark:border-gray-700",children:t},l,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:214,columnNumber:14},void 0);case"tableHeader":return s.jsxDEV("th",{...d(e.attrs??void 0),className:"bg-gray-100 dark:bg-gray-800 font-bold p-3 text-left border border-gray-300 dark:border-gray-700",children:t},l,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:217,columnNumber:9},void 0);case"tableCell":return s.jsxDEV("td",{...d(e.attrs??void 0),className:"p-3 border border-gray-300 dark:border-gray-700",children:t},l,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:227,columnNumber:9},void 0);case"details":return s.jsxDEV("details",{className:"my-4 border rounded-lg overflow-hidden",children:t},l,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:238,columnNumber:14},void 0);case"detailsSummary":return s.jsxDEV("summary",{className:"cursor-pointer p-3 font-semibold bg-muted/30 hover:bg-muted/50",children:t},l,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:240,columnNumber:14},void 0);case"detailsContent":return s.jsxDEV("div",{className:"p-3 border-t",children:t},l,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:242,columnNumber:14},void 0);case"youtube":{const r=a(e.attrs?.src),n=e.attrs?.width||640,i=e.attrs?.height||480;return s.jsxDEV("div",{className:"relative my-4 overflow-hidden rounded-lg",style:{aspectRatio:`${n}/${i}`,maxWidth:n},children:s.jsxDEV("iframe",{src:r,allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",allowFullScreen:!0,loading:"lazy",className:"absolute inset-0 w-full h-full"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:251,columnNumber:11},void 0)},l,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:250,columnNumber:9},void 0)}case"iframe":{const r=a(e.attrs?.src);return s.jsxDEV("div",{className:"my-4 overflow-hidden rounded-lg",style:{aspectRatio:"16/9"},children:s.jsxDEV("iframe",{src:r,allowFullScreen:!0,loading:"lazy",className:"w-full h-full border-0"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:265,columnNumber:11},void 0)},l,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:264,columnNumber:9},void 0)}case"mention":{const r=e.attrs?.label||e.attrs?.id||"";return s.jsxDEV("span",{className:"text-primary font-medium",children:["@",r]},l,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:273,columnNumber:14},void 0)}default:return s.jsxDEV("div",{children:t},l,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:279,columnNumber:14},void 0)}},a=e=>e?.replace(/(?:https?:)?\/\/(?:www\.|m\.|music\.)?youtube\.com\/embed\//gi,"https://www.youtube-nocookie.com/embed/"),N=({content:e,className:l})=>{if(!e)return null;if(typeof e=="string"){if(e.trim().startsWith("{")||e.trim().startsWith("["))try{const r=JSON.parse(e);return s.jsxDEV(N,{content:r,className:l},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:307,columnNumber:16},void 0)}catch{}return s.jsxDEV("div",{className:l,dangerouslySetInnerHTML:{__html:a(e)??e}},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:314,columnNumber:7},void 0)}const t=e;return!t.content||!Array.isArray(t.content)?null:s.jsxDEV("div",{className:l,children:t.content.map((r,n)=>p(r,n))},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/SimpleTiptapRenderer.tsx",lineNumber:326,columnNumber:5},void 0)};exports.SimpleTiptapRenderer=N;exports.toNoCookieEmbedSrc=a;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),m=require("react"),y=(t,a)=>a.reduce((s,r)=>{switch(r.type){case"bold":return e.jsx("strong",{children:s});case"italic":return e.jsx("em",{children:s});case"underline":case"u":return e.jsx("u",{children:s});case"strike":return e.jsx("s",{children:s});case"code":return e.jsx("code",{className:"bg-muted px-1.5 py-0.5 rounded text-[0.875em] font-mono",children:s});case"link":{const l=r.attrs?.href||"#",c=r.attrs?.target||"_blank";return e.jsx("a",{href:l,target:c,rel:"noopener noreferrer",className:"underline text-primary hover:text-primary/80",children:s})}case"highlight":{const l=r.attrs?.color,c=l?{backgroundColor:l}:{};return e.jsx("mark",{style:c,className:l?void 0:"bg-yellow-200 dark:bg-yellow-800/50",children:s})}case"subscript":return e.jsx("sub",{children:s});case"superscript":return e.jsx("sup",{children:s});case"textStyle":{const l={};return r.attrs?.color&&(l.color=r.attrs.color),r.attrs?.fontSize&&(l.fontSize=r.attrs.fontSize),r.attrs?.fontFamily&&(l.fontFamily=r.attrs.fontFamily),Object.keys(l).length>0?e.jsx("span",{style:l,children:s}):e.jsx(e.Fragment,{children:s})}default:return s}},t),g=["h1","h2","h3","h4","h5","h6"],f=(t,a,s,r)=>{const l=Math.max(1,Math.min(6,t)),c=g[l-1],o=r?.id;return m.createElement(c,{key:s,className:"font-bold my-4",id:o},a)},d=t=>{const a={},s={},r=t?.colspan,l=t?.rowspan,c=t?.colwidth;return r&&r>1&&(a.colSpan=r),l&&l>1&&(a.rowSpan=l),c&&Array.isArray(c)&&c[0]&&(s.minWidth=c[0]),Object.keys(s).length>0&&(a.style=s),a},h=(t,a)=>{if(t.type==="text"){const r=t.text??"";return e.jsx(m.Fragment,{children:t.marks?.length?y(r,t.marks):r},a)}const s=t.content?.map((r,l)=>h(r,l))??null;switch(t.type){case"doc":return e.jsx("div",{children:s},a);case"paragraph":{if(!t.content?.length||t.content.every(o=>o.type==="text"&&(!o.text||!o.text.trim())))return null;const l=t.attrs?.textAlign,c=l?{textAlign:l}:{};return e.jsx("p",{className:"mb-4",style:Object.keys(c).length?c:void 0,children:s},a)}case"heading":return f(t.attrs?.level||1,s,a,t.attrs??void 0);case"bulletList":return e.jsx("ul",{className:"list-disc pl-5 mb-4",children:s},a);case"orderedList":{const r=t.attrs?.start??1;return e.jsx("ol",{className:"list-decimal pl-5 mb-4",start:r!==1?r:void 0,children:s},a)}case"listItem":return e.jsx("li",{children:s},a);case"taskList":return e.jsx("ul",{className:"list-none pl-0 mb-4 space-y-1",children:s},a);case"taskItem":{const r=!!t.attrs?.checked;return e.jsxs("li",{className:"flex items-start gap-2",children:[e.jsx("input",{type:"checkbox",checked:r,readOnly:!0,className:"mt-1.5 rounded"}),e.jsx("div",{className:r?"line-through text-muted-foreground":"",children:s})]},a)}case"blockquote":return e.jsx("blockquote",{className:"border-l-4 border-border pl-4 italic my-4",children:s},a);case"codeBlock":{const r=t.attrs?.language;return e.jsx("pre",{className:"bg-muted rounded-lg p-4 mb-4 overflow-x-auto","data-language":r||void 0,children:e.jsx("code",{className:"text-sm font-mono",children:s})},a)}case"horizontalRule":return e.jsx("hr",{className:"my-6 border-border"},a);case"hardBreak":return e.jsx("br",{},a);case"image":{const r=t.attrs?.src,l=t.attrs?.alt||"",c=t.attrs?.title,o=t.attrs?.width,n=t.attrs?.height,i={};return o&&(i.width=typeof o=="number"?`${o}px`:o),n&&(i.height=typeof n=="number"?`${n}px`:n),e.jsx("img",{src:r,alt:l??"",title:c,width:typeof o=="number"?o:void 0,height:typeof n=="number"?n:void 0,loading:"lazy",decoding:"async",style:Object.keys(i).length?i:void 0,className:"max-w-full h-auto rounded my-4"},a)}case"table":return e.jsx("div",{className:"overflow-x-auto my-4",children:e.jsx("table",{className:"w-full border-collapse border border-gray-300 dark:border-gray-700",style:{minWidth:500},children:e.jsx("tbody",{children:s})})},a);case"tableRow":return e.jsx("tr",{className:"border-b border-gray-300 dark:border-gray-700",children:s},a);case"tableHeader":return e.jsx("th",{...d(t.attrs??void 0),className:"bg-gray-100 dark:bg-gray-800 font-bold p-3 text-left border border-gray-300 dark:border-gray-700",children:s},a);case"tableCell":return e.jsx("td",{...d(t.attrs??void 0),className:"p-3 border border-gray-300 dark:border-gray-700",children:s},a);case"details":return e.jsx("details",{className:"my-4 border rounded-lg overflow-hidden",children:s},a);case"detailsSummary":return e.jsx("summary",{className:"cursor-pointer p-3 font-semibold bg-muted/30 hover:bg-muted/50",children:s},a);case"detailsContent":return e.jsx("div",{className:"p-3 border-t",children:s},a);case"youtube":{const r=u(t.attrs?.src),l=t.attrs?.width||640,c=t.attrs?.height||480;return e.jsx("div",{className:"relative my-4 overflow-hidden rounded-lg",style:{aspectRatio:`${l}/${c}`,maxWidth:l},children:e.jsx("iframe",{src:r,title:t.attrs?.title||"Embedded video",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",allowFullScreen:!0,loading:"lazy",className:"absolute inset-0 w-full h-full"})},a)}case"iframe":{const r=u(t.attrs?.src);return e.jsx("div",{className:"my-4 overflow-hidden rounded-lg",style:{aspectRatio:"16/9"},children:e.jsx("iframe",{src:r,title:t.attrs?.title||"Embedded content",allowFullScreen:!0,loading:"lazy",className:"w-full h-full border-0"})},a)}case"mention":{const r=t.attrs?.label||t.attrs?.id||"";return e.jsxs("span",{className:"text-primary font-medium",children:["@",r]},a)}default:return e.jsx("div",{children:s},a)}},u=t=>t?.replace(/(?:https?:)?\/\/(?:www\.|m\.|music\.)?youtube\.com\/embed\//gi,"https://www.youtube-nocookie.com/embed/"),b=({content:t,className:a})=>{if(!t)return null;if(typeof t=="string"){if(t.trim().startsWith("{")||t.trim().startsWith("["))try{const r=JSON.parse(t);return e.jsx(b,{content:r,className:a})}catch{}return e.jsx("div",{className:a,dangerouslySetInnerHTML:{__html:u(t)??t}})}const s=t;return!s.content||!Array.isArray(s.content)?null:e.jsx("div",{className:a,children:s.content.map((r,l)=>h(r,l))})};exports.SimpleTiptapRenderer=b;exports.toNoCookieEmbedSrc=u;