@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 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-dev-runtime"),Ae=require("@nextblock-cms/ui/badge"),pe=require("@nextblock-cms/ui/button"),p=require("@nextblock-cms/ui/card"),ss=require("@nextblock-cms/ui/checkbox"),H=require("@nextblock-cms/ui/input"),D=require("@nextblock-cms/ui/label"),ns=require("@nextblock-cms/ui/separator"),xe=require("@nextblock-cms/ui/radio-group"),os=require("@freemius/checkout"),ke=require("../cart-store.cjs.js"),cs=require("../use-cart.cjs.js"),m=require("react"),B=require("lucide-react"),f=require("@nextblock-cms/utils"),Fe=require("../countries.cjs.js"),ts=require("../PaymentReadinessProvider.cjs.js"),rs=require("../server-actions/shipping-actions.cjs.js"),is=require("../server-actions/tax-actions.cjs.js"),fe=require("../types.cjs.js"),Q=require("../states.cjs.js"),q=require("../customer.cjs.js"),ls=require("../CurrencyProvider.cjs.js"),we=require("../trials.cjs.js"),ms=require("./CouponForm.cjs.js"),ds=process.env.NEXT_PUBLIC_IS_SANDBOX==="true",te="nextblock-checkout-draft-v1";function re(n,k){return{...q.emptyCustomerAddress(),company_name:n?.company_name||"",recipient_name:n?.recipient_name||k||"",line1:n?.line1||"",line2:n?.line2||"",city:n?.city||"",state:n?.state||"",postal_code:n?.postal_code||"",country_code:Fe.normalizeCountryCode(n?.country_code)||"CA"}}function us(n){const k=q.normalizeCustomerAddress(n);return!(!k?.country_code||!k.postal_code||Q.countryUsesStructuredStates(k.country_code)&&!k.state)}function he(n,k,V){return n.reduce((t,x)=>{const{price:b,sale_price:S}=ke.getCartItemActivePrice(x,{currencyCode:k,currencies:V});return t+(S??b)*x.quantity},0)}function Pe({idPrefix:n,title:k,description:V,value:t,onChange:x}){const{t:b}=f.useTranslations(),S=b("company_name")==="company_name"?"Company name":b("company_name"),w=b("select_an_option")==="select_an_option"?"Select an option":b("select_an_option"),X=b("state_province")==="state_province"?"State / Province":b("state_province"),M=Q.getStatesForCountry(t.country_code),z=Q.countryUsesStructuredStates(t.country_code);return e.jsxDEV(p.Card,{children:[e.jsxDEV(p.CardHeader,{children:[e.jsxDEV(p.CardTitle,{className:"flex items-center gap-2",children:[e.jsxDEV(B.MapPin,{className:"w-5 h-5"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:135,columnNumber:11},this),k]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:134,columnNumber:9},this),e.jsxDEV("p",{className:"text-sm text-muted-foreground",children:V},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:138,columnNumber:9},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:133,columnNumber:7},this),e.jsxDEV(p.CardContent,{className:"space-y-4",children:[e.jsxDEV("div",{className:"grid gap-4 sm:grid-cols-3",children:[e.jsxDEV("div",{className:"space-y-2",children:[e.jsxDEV(D.Label,{htmlFor:`${n}-company`,children:S},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:143,columnNumber:13},this),e.jsxDEV(H.Input,{id:`${n}-company`,value:t.company_name,onChange:l=>x({...t,company_name:l.target.value})},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:144,columnNumber:13},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:142,columnNumber:11},this),e.jsxDEV("div",{className:"space-y-2",children:[e.jsxDEV(D.Label,{htmlFor:`${n}-name`,children:b("full_name")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:151,columnNumber:13},this),e.jsxDEV(H.Input,{id:`${n}-name`,value:t.recipient_name,onChange:l=>x({...t,recipient_name:l.target.value})},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:152,columnNumber:13},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:150,columnNumber:11},this),e.jsxDEV("div",{className:"space-y-2",children:[e.jsxDEV(D.Label,{htmlFor:`${n}-country`,children:b("country")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:159,columnNumber:13},this),e.jsxDEV("select",{id:`${n}-country`,className:"flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-sm",value:t.country_code,onChange:l=>{const O=l.target.value,ie=Q.getStatesForCountry(O);x({...t,country_code:O,state:ie.some(Y=>Y.code===t.state)?t.state:""})},children:Fe.countries.map(l=>e.jsxDEV("option",{value:l.code,children:l.name},l.code,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:175,columnNumber:17},this))},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:160,columnNumber:13},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:158,columnNumber:11},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:141,columnNumber:9},this),e.jsxDEV("div",{className:"space-y-2",children:[e.jsxDEV(D.Label,{htmlFor:`${n}-line1`,children:b("address_line_1")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:184,columnNumber:11},this),e.jsxDEV(H.Input,{id:`${n}-line1`,value:t.line1,onChange:l=>x({...t,line1:l.target.value})},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:185,columnNumber:11},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:183,columnNumber:9},this),e.jsxDEV("div",{className:"space-y-2",children:[e.jsxDEV(D.Label,{htmlFor:`${n}-line2`,children:b("address_line_2")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:193,columnNumber:11},this),e.jsxDEV(H.Input,{id:`${n}-line2`,value:t.line2,onChange:l=>x({...t,line2:l.target.value})},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:194,columnNumber:11},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:192,columnNumber:9},this),e.jsxDEV("div",{className:"grid gap-4 sm:grid-cols-3",children:[e.jsxDEV("div",{className:"space-y-2",children:[e.jsxDEV(D.Label,{htmlFor:`${n}-city`,children:b("city")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:203,columnNumber:13},this),e.jsxDEV(H.Input,{id:`${n}-city`,value:t.city,onChange:l=>x({...t,city:l.target.value})},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:204,columnNumber:13},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:202,columnNumber:11},this),e.jsxDEV("div",{className:"space-y-2",children:[e.jsxDEV(D.Label,{htmlFor:`${n}-state`,children:b("state_province")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:211,columnNumber:13},this),z?e.jsxDEV("select",{id:`${n}-state`,className:"flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-sm",value:t.state,onChange:l=>x({...t,state:l.target.value}),children:[e.jsxDEV("option",{value:"",children:`${w}: ${X}`},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:219,columnNumber:17},this),M.map(l=>e.jsxDEV("option",{value:l.code,children:l.name},l.code,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:221,columnNumber:19},this))]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:213,columnNumber:15},this):e.jsxDEV(H.Input,{id:`${n}-state`,value:t.state,onChange:l=>x({...t,state:l.target.value})},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:227,columnNumber:15},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:210,columnNumber:11},this),e.jsxDEV("div",{className:"space-y-2",children:[e.jsxDEV(D.Label,{htmlFor:`${n}-postal`,children:b("postal_zip_code")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:235,columnNumber:13},this),e.jsxDEV(H.Input,{id:`${n}-postal`,value:t.postal_code,onChange:l=>x({...t,postal_code:l.target.value})},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:236,columnNumber:13},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:234,columnNumber:11},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:201,columnNumber:9},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:140,columnNumber:7},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:132,columnNumber:5},this)}function Te({title:n,description:k,badgeLabel:V,children:t}){return e.jsxDEV(p.Card,{children:[e.jsxDEV(p.CardHeader,{children:e.jsxDEV("div",{className:"flex items-center justify-between gap-3 flex-wrap",children:[e.jsxDEV("div",{children:[e.jsxDEV(p.CardTitle,{children:n},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:264,columnNumber:13},this),e.jsxDEV("p",{className:"mt-1 text-sm text-muted-foreground",children:k},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:265,columnNumber:13},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:263,columnNumber:11},this),V?e.jsxDEV(Ae.Badge,{variant:"secondary",children:V},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:267,columnNumber:25},this):null]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:262,columnNumber:9},this)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:261,columnNumber:7},this),e.jsxDEV(p.CardContent,{className:"space-y-4",children:t},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:270,columnNumber:7},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:260,columnNumber:5},this)}const as=({initialCustomer:n})=>{const[k,V]=m.useState({}),[t,x]=m.useState(null),[b,S]=m.useState({}),[w,X]=m.useState(n?.email||""),[M,z]=m.useState(""),[l,O]=m.useState(n?.phone||""),[ie,Y]=m.useState(!1),[Ie,Ce]=m.useState(null),[je,W]=m.useState(!1),[qe,Z]=m.useState(!1),[K,ee]=m.useState([]),[C,$]=m.useState(null),[_,se]=m.useState(null),[P,$e]=m.useState(null),[y,De]=m.useState(()=>re(n?.billingAddress,n?.fullName)),[L,ve]=m.useState(()=>re(n?.shippingAddress??n?.billingAddress,n?.fullName)),[A,ge]=m.useState(!n?.shippingAddress||q.addressesMatch(n?.billingAddress,n?.shippingAddress)),G=cs.useCart(s=>s),{t:c,lang:le}=f.useTranslations(),{activeCurrencyCode:i,currencies:T}=ls.useCurrency(),_e=ts.usePaymentReadiness(),j=G?.items??[],v=m.useMemo(()=>j.filter(s=>!fe.isDigitalItem(s)),[j]),E=m.useMemo(()=>j.filter(s=>fe.isDigitalItem(s)),[j]),F=n?.isAuthenticated??!1,o=(s,r,a)=>{const u=c(s,a);if(u!==s)return u;if(!a)return r;let h=r;return Object.entries(a).forEach(([N,d])=>{h=h.replace(new RegExp(`\\{${N}\\}`,"g"),String(d))}),h},g=v.length>0,Le=m.useMemo(()=>he(j,i,T),[i,T,j]),me=m.useMemo(()=>he(v,i,T),[i,T,v]),de=m.useMemo(()=>he(E,i,T),[i,T,E]),ue=P?.providerDiscounts.stripe??0,ae=P?.providerDiscounts.freemius??0,ne=Math.max(0,me-ue),Me=Math.max(0,de-ae),R=m.useMemo(()=>A?y:L,[y,L,A]),I=m.useMemo(()=>g?R:y,[y,g,R]),oe=!g||us(R),ce=m.useMemo(()=>K.find(s=>s.id===C),[K,C]),Ee=m.useMemo(()=>ne+(ce?.amount??0)+(_&&!_.isPendingExternalCalculation?_.amount:0),[ne,ce,_]),ze=Ee+Me;if(m.useEffect(()=>{if(!(F||typeof window>"u"))try{const s=window.localStorage.getItem(te);if(!s)return;const r=JSON.parse(s);r.email&&X(r.email),r.phone&&O(r.phone),r.billingAddress&&De(re(r.billingAddress)),r.shippingAddress&&ve(re(r.shippingAddress)),typeof r.useBillingForShipping=="boolean"&&ge(r.useBillingForShipping),(typeof r.selectedMethodId=="string"||r.selectedMethodId===null)&&$(r.selectedMethodId)}catch(s){console.error("[Checkout] Failed to restore checkout draft:",s)}},[F]),m.useEffect(()=>{if(!(typeof window>"u")){if(F){window.localStorage.removeItem(te);return}window.localStorage.setItem(te,JSON.stringify({email:w,phone:l,billingAddress:y,shippingAddress:L,useBillingForShipping:A,selectedMethodId:C}))}},[y,w,F,l,C,L,A]),m.useEffect(()=>{if(!g){ee([]),$(null),W(!1);return}if(!oe){ee([]),$(null),W(!1);return}let s=!1;const a=setTimeout(async()=>{if(!R.country_code)return;W(!0);const u=await rs.getShippingEstimates(ne,{country:R.country_code,state:R.state,postal_code:R.postal_code},le,i);s||(u.success&&u.methods?(ee(u.methods),u.methods.length>0&&(!C||!u.methods.find(h=>h.id===C))&&$(u.methods[0].id)):(ee([]),$(null)),W(!1))},400);return()=>{s=!0,clearTimeout(a)}},[i,g,oe,le,C,R.country_code,R.postal_code,R.state,ne]),m.useEffect(()=>{const r=setTimeout(async()=>{if(!g||!I.country_code){Z(!1),se(null);return}if(Q.countryUsesStructuredStates(I.country_code)&&!I.state){Z(!1),se(null);return}Z(!0);const a=await is.getTaxEstimate(v,{country_code:I.country_code,state:I.state},i,P?.code??null,j);a.success&&a.tax?se(a.tax):se(null),Z(!1)},300);return()=>clearTimeout(r)},[i,g,v,I.country_code,I.state,P?.code,j]),!G)return null;const Re=()=>{Y(!1),Ce(null)},Be=ie?e.jsxDEV("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/60 backdrop-blur-sm",onClick:Re,children:e.jsxDEV("div",{className:"relative bg-background border rounded-xl shadow-2xl p-8 max-w-md mx-4",onClick:s=>s.stopPropagation(),children:[e.jsxDEV("button",{onClick:Re,className:"absolute top-4 right-4 text-muted-foreground hover:text-foreground transition-colors",children:e.jsxDEV(B.X,{className:"w-5 h-5"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:604,columnNumber:11},void 0)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:600,columnNumber:9},void 0),e.jsxDEV("div",{className:"flex items-center gap-3 mb-4",children:[e.jsxDEV("div",{className:"p-2 rounded-full bg-amber-100 dark:bg-amber-900/20",children:e.jsxDEV(B.FlaskConical,{className:"h-6 w-6 text-amber-600 dark:text-amber-400"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:608,columnNumber:13},void 0)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:607,columnNumber:11},void 0),e.jsxDEV("h2",{className:"text-xl font-semibold",children:c("ecommerce.checkout_successful")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:610,columnNumber:11},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:606,columnNumber:9},void 0),e.jsxDEV("p",{className:"text-muted-foreground mb-2",children:c("ecommerce.sandbox_notice")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:612,columnNumber:9},void 0),e.jsxDEV("p",{className:"text-muted-foreground mb-2",children:Ie==="stripe"?o("ecommerce.sandbox_checkout_stripe_description","This simulated step represents the Stripe checkout for physical products."):o("ecommerce.sandbox_checkout_freemius_description","This simulated step represents the Freemius checkout for digital products.")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:613,columnNumber:9},void 0),e.jsxDEV("p",{className:"text-muted-foreground mb-6",children:c("ecommerce.license_notice")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:624,columnNumber:9},void 0),e.jsxDEV("a",{href:"https://nextblock.dev",target:"_blank",rel:"noopener noreferrer",className:"block w-full text-center py-3 px-4 rounded-lg bg-primary text-primary-foreground font-semibold hover:opacity-90 transition-opacity",children:c("ecommerce.purchase_at")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:625,columnNumber:9},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:596,columnNumber:7},void 0)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:592,columnNumber:5},void 0):null,Oe=s=>{if(!F&&(!w||!/^\S+@\S+\.\S+$/.test(w)))return z(c("ecommerce.invalid_email")),null;const r=q.normalizeCustomerAddress(y);if(!q.isCustomerAddressComplete(r))return alert(c("checkout_complete_billing_address")),null;const a=g?q.normalizeCustomerAddress(A?y:L):null;if(s==="stripe"){if(!q.isCustomerAddressComplete(a))return alert(c("checkout_complete_shipping_address")),null;if(!C)return alert(o("ecommerce.shipping_method_required","Please select a shipping method before continuing.")),null}return z(""),{normalizedBillingAddress:r,normalizedShippingAddress:a}},ye=async(s,r,a)=>{S(h=>({...h,[s]:""}));const u=Oe(s);if(u){if(ds){const h=new Set(r.map(d=>d.id)),N=j.filter(d=>!h.has(d.id));G.setItems(N),N.length===0&&G.removeCoupon(),Ce(s),Y(!0),typeof window<"u"&&N.length===0&&window.localStorage.removeItem(te);return}x(a);try{const h=await fetch("/api/checkout",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({items:r,customerEmail:F?void 0:w,customerPhone:l||null,billingAddress:u.normalizedBillingAddress,shippingAddress:s==="stripe"?u.normalizedShippingAddress:null,shippingMethodId:s==="stripe"?C:null,locale:le,currencyCode:i,couponCode:P?.code??G.appliedCoupon?.code??null,couponContextItems:j})}),N=await h.json();if(!h.ok){const d=N?.errorKey&&typeof N.errorKey=="string"?o(N.errorKey,N?.error||o("ecommerce.generic_error","Something went wrong."),N.errorParams):N?.error||c("ecommerce.generic_error");S(J=>({...J,[s]:d})),x(null);return}if(N.customProps&&N.customProps.provider==="freemius"){const d=N.customProps;let J=null;const Ye=()=>{window.location.href=`/checkout/success?session_id=${d.order_id}`},Ve=U=>(J||(J=fetch("/api/checkout/freemius/sync",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({orderId:d.order_id,checkoutResponse:U})}).then(async Se=>{if(!Se.ok){const es=await Se.json().catch(()=>null);console.error("Freemius checkout sync failed:",es)}})),J),We={product_id:d.plugin_id,public_key:d.public_key,sandbox:d.sandbox},Ze={name:c("ecommerce.checkout_overlay_title"),plan_id:d.plan_id,...d.billing_cycle?{billing_cycle:d.billing_cycle}:{},...d.trial?{trial:d.trial}:{},...d.coupon?{coupon:d.coupon}:{},user_email:d.user_email,user_firstname:d.user_firstname,user_lastname:d.user_lastname,sandbox:d.sandbox,purchaseCompleted:function(U){Ve(U)},success:function(U){(async()=>{try{await Ve(U)}finally{Ye()}})()}};try{new os.Checkout(We).open(Ze),x(null)}catch(U){alert(c("ecommerce.checkout_popup_blocked")+" "+(U.message||String(U))),N.url&&(window.location.href=N.url),x(null)}}else N.url?window.location.href=N.url:(S(d=>({...d,[s]:c("ecommerce.checkout_failed")+(N.error||o("ecommerce.unknown_error","Unknown error"))})),x(null))}catch(h){console.error(h),S(N=>({...N,[s]:c("ecommerce.generic_error")})),x(null)}}};if(j.length===0)return e.jsxDEV(e.Fragment,{children:[Be,e.jsxDEV("div",{className:"container mx-auto flex min-h-[50vh] flex-col items-center justify-center p-8 text-center",children:[e.jsxDEV("h1",{className:"mb-4 text-2xl font-bold",children:c("ecommerce.cart_empty")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:846,columnNumber:11},void 0),e.jsxDEV("p",{className:"mb-8 text-muted-foreground",children:c("ecommerce.cart_empty_description")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:847,columnNumber:11},void 0),e.jsxDEV(pe.Button,{asChild:!0,children:e.jsxDEV("a",{href:"/shop",children:c("ecommerce.go_to_shop")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:849,columnNumber:13},void 0)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:848,columnNumber:11},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:845,columnNumber:9},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:843,columnNumber:7},void 0);const Ue=o("ecommerce.checkout_payments_unavailable","This store is not able to take payments right now. Please contact the seller to complete your purchase."),He=_e.stripe?null:Ue,Ne=_e.freemius?null:Ue,be=He||(g?oe?je?o("ecommerce.calculating_shipping","Calculating shipping..."):C?null:K.length>0?c("ecommerce.select_rate"):c("ecommerce.no_rates_for_region"):o("ecommerce.waiting_on_address_info","Complete your shipping address to view available shipping options."):null),Ke=t!==null||be!==null,Ge=v.length===1?o("ecommerce.item_count_one","{count} item",{count:v.length}):o("ecommerce.item_count_other","{count} items",{count:v.length}),Je=E.length===1?o("ecommerce.license_count_one","{count} license",{count:E.length}):o("ecommerce.license_count_other","{count} licenses",{count:E.length}),Qe=s=>fe.isDigitalItem(s)?o("ecommerce.digital_label","Digital"):o("ecommerce.physical_label","Physical"),Xe=s=>s==="monthly"?o("ecommerce.checkout_billing_cycle_monthly","Monthly subscription"):s==="annual"?o("ecommerce.checkout_billing_cycle_annual","Annual subscription"):s==="lifetime"?o("ecommerce.checkout_billing_cycle_lifetime","Lifetime subscription"):null;return e.jsxDEV("div",{className:"container mx-auto px-4 py-12 md:px-6",children:[Be,e.jsxDEV("div",{className:"mx-auto max-w-6xl",children:[e.jsxDEV("h1",{className:"mb-8 text-3xl font-bold",children:c("ecommerce.checkout")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:941,columnNumber:9},void 0),e.jsxDEV("div",{className:"grid gap-8 lg:grid-cols-12 lg:items-start",children:[e.jsxDEV("div",{className:"lg:col-span-8 space-y-6",children:[e.jsxDEV(p.Card,{children:[e.jsxDEV(p.CardHeader,{children:e.jsxDEV(p.CardTitle,{className:"flex items-center gap-2",children:[e.jsxDEV(B.CreditCard,{className:"w-5 h-5"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:948,columnNumber:19},void 0),c("ecommerce.contact_information")]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:947,columnNumber:17},void 0)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:946,columnNumber:15},void 0),e.jsxDEV(p.CardContent,{className:"space-y-4",children:[F?e.jsxDEV("div",{className:"rounded-xl border bg-muted/20 p-4 text-sm text-muted-foreground",children:c("checkout_prefill_notice",{email:n?.email||""})},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:954,columnNumber:19},void 0):e.jsxDEV("div",{className:"space-y-2",children:[e.jsxDEV(D.Label,{htmlFor:"checkout-email",children:[c("ecommerce.email_address")," ",e.jsxDEV("span",{className:"text-destructive",children:"*"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:960,columnNumber:54},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:959,columnNumber:21},void 0),e.jsxDEV(H.Input,{id:"checkout-email",type:"email",placeholder:c("ecommerce.email_placeholder"),value:w,onChange:s=>{X(s.target.value),M&&z("")},required:!0},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:962,columnNumber:21},void 0),M?e.jsxDEV("p",{className:"text-xs text-destructive mt-1",children:M},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:975,columnNumber:35},void 0):null]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:958,columnNumber:19},void 0),e.jsxDEV("div",{className:"space-y-2",children:[e.jsxDEV(D.Label,{htmlFor:"checkout-phone",children:c("phone_number")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:980,columnNumber:19},void 0),e.jsxDEV(H.Input,{id:"checkout-phone",placeholder:c("optional"),value:l,onChange:s=>O(s.target.value)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:981,columnNumber:19},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:979,columnNumber:17},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:952,columnNumber:15},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:945,columnNumber:13},void 0),e.jsxDEV(Pe,{idPrefix:"billing",title:c("billing_address"),description:c("checkout_billing_address_help"),value:y,onChange:De},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:991,columnNumber:13},void 0),g?e.jsxDEV("div",{className:"flex items-center space-x-3 rounded-xl border bg-muted/20 p-4",children:[e.jsxDEV(ss.Checkbox,{id:"use-billing-for-shipping",checked:A,onCheckedChange:s=>ge(!!s)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1001,columnNumber:17},void 0),e.jsxDEV("div",{className:"space-y-1",children:[e.jsxDEV(D.Label,{htmlFor:"use-billing-for-shipping",className:"cursor-pointer",children:c("use_billing_for_shipping")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1007,columnNumber:19},void 0),e.jsxDEV("p",{className:"text-sm text-muted-foreground",children:c("checkout_use_billing_for_shipping_help")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1010,columnNumber:19},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1006,columnNumber:17},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1e3,columnNumber:15},void 0):null,g&&!A?e.jsxDEV(Pe,{idPrefix:"shipping",title:c("shipping_address"),description:c("checkout_shipping_address_help"),value:L,onChange:ve},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1018,columnNumber:15},void 0):null,g?e.jsxDEV(p.Card,{children:[e.jsxDEV(p.CardHeader,{children:e.jsxDEV(p.CardTitle,{className:"flex items-center gap-2",children:[e.jsxDEV(B.ChevronRight,{className:"w-5 h-5 text-primary"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1031,columnNumber:21},void 0),c("ecommerce.shipping_method")]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1030,columnNumber:19},void 0)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1029,columnNumber:17},void 0),e.jsxDEV(p.CardContent,{children:je?e.jsxDEV("div",{className:"flex items-center justify-center py-6",children:e.jsxDEV(B.Loader2,{className:"w-6 h-6 animate-spin text-muted-foreground"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1038,columnNumber:23},void 0)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1037,columnNumber:21},void 0):K.length>0?e.jsxDEV("div",{className:"space-y-3",children:K.map(s=>e.jsxDEV("div",{onClick:()=>$(s.id),className:`flex items-center justify-between p-4 rounded-lg border-2 cursor-pointer transition-all ${C===s.id?"border-primary bg-primary/5":"border-neutral-100 hover:border-neutral-200"}`,children:[e.jsxDEV("div",{className:"flex items-center gap-3",children:[e.jsxDEV("div",{className:`w-4 h-4 rounded-full border flex items-center justify-center ${C===s.id?"border-primary":"border-neutral-300"}`,children:C===s.id?e.jsxDEV("div",{className:"w-2 h-2 rounded-full bg-primary"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1059,columnNumber:33},void 0):null},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1053,columnNumber:29},void 0),e.jsxDEV("span",{className:"font-medium",children:s.name},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1062,columnNumber:29},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1052,columnNumber:27},void 0),e.jsxDEV("span",{className:"font-bold",children:f.formatPrice(s.amount,i)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1064,columnNumber:27},void 0)]},s.id,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1043,columnNumber:25},void 0))},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1041,columnNumber:21},void 0):e.jsxDEV("div",{className:"py-4 text-center text-muted-foreground bg-muted/30 rounded-lg italic",children:oe?c("ecommerce.no_rates_for_region"):o("ecommerce.waiting_on_address_info","Complete your shipping address to view available shipping options.")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1071,columnNumber:21},void 0)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1035,columnNumber:17},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1028,columnNumber:15},void 0):null]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:944,columnNumber:11},void 0),e.jsxDEV("div",{className:"lg:col-span-4 space-y-6",children:[e.jsxDEV(p.Card,{className:"top-6",children:[e.jsxDEV(p.CardHeader,{children:e.jsxDEV(p.CardTitle,{children:c("ecommerce.order_summary")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1088,columnNumber:17},void 0)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1087,columnNumber:15},void 0),e.jsxDEV(p.CardContent,{className:"space-y-4",children:[e.jsxDEV("div",{className:"space-y-3 max-h-[260px] overflow-y-auto pr-2",children:j.map(s=>{const r=ke.getCartItemActivePrice(s,{currencyCode:i,currencies:T}),a=we.getTrialSummary(s);return e.jsxDEV("div",{className:"flex items-start justify-between gap-4",children:[e.jsxDEV("div",{className:"flex gap-3",children:[s.image_url?e.jsxDEV("div",{className:"h-10 w-10 shrink-0 overflow-hidden rounded border bg-neutral-100",children:e.jsxDEV("img",{src:s.image_url,alt:s.title,className:"h-full w-full object-cover"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1104,columnNumber:31},void 0)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1103,columnNumber:29},void 0):null,e.jsxDEV("div",{className:"grid gap-0.5",children:[e.jsxDEV("div",{className:"flex items-center gap-2",children:[e.jsxDEV("span",{className:"font-medium text-xs line-clamp-1",children:s.title},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1109,columnNumber:31},void 0),e.jsxDEV(Ae.Badge,{variant:"outline",className:"text-[9px] uppercase",children:Qe(s)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1110,columnNumber:31},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1108,columnNumber:29},void 0),s.variant_label?e.jsxDEV("span",{className:"text-[10px] text-muted-foreground line-clamp-1",children:s.variant_label},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1115,columnNumber:31},void 0):null,e.jsxDEV("span",{className:"text-[10px] text-muted-foreground",children:[c("ecommerce.qty"),": ",s.quantity]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1119,columnNumber:29},void 0),a?e.jsxDEV("span",{className:"text-[10px] font-medium text-emerald-700",children:[a.label," - ",a.paymentRequirementLabel]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1123,columnNumber:31},void 0):null]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1107,columnNumber:27},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1101,columnNumber:25},void 0),e.jsxDEV("div",{className:"flex flex-col items-end gap-0.5 shrink-0",children:[e.jsxDEV("span",{className:"font-medium text-xs",children:f.formatPrice((r.sale_price??r.price)*s.quantity,i)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1130,columnNumber:27},void 0),r.sale_price?e.jsxDEV("span",{className:"text-[9px] text-muted-foreground line-through",children:f.formatPrice(r.price*s.quantity,i)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1137,columnNumber:29},void 0):null]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1129,columnNumber:25},void 0)]},`${s.id}-${s.variant_id||"base"}`,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1100,columnNumber:23},void 0)})},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1091,columnNumber:17},void 0),e.jsxDEV(ns.Separator,{},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1147,columnNumber:17},void 0),e.jsxDEV(ms.CouponForm,{items:j,currencyCode:i,onQuoteChange:$e},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1149,columnNumber:17},void 0),e.jsxDEV("div",{className:"space-y-2 text-sm",children:[e.jsxDEV("div",{className:"flex justify-between",children:[e.jsxDEV("span",{children:c("ecommerce.subtotal")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1157,columnNumber:21},void 0),e.jsxDEV("span",{children:f.formatPrice(Le,i)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1158,columnNumber:21},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1156,columnNumber:19},void 0),v.length>0?e.jsxDEV("div",{className:"flex justify-between text-muted-foreground",children:[e.jsxDEV("span",{children:o("ecommerce.physical_products","Physical products")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1162,columnNumber:23},void 0),e.jsxDEV("span",{children:f.formatPrice(me,i)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1168,columnNumber:23},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1161,columnNumber:21},void 0):null,E.length>0?e.jsxDEV("div",{className:"flex justify-between text-muted-foreground",children:[e.jsxDEV("span",{children:o("ecommerce.digital_products","Digital products")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1173,columnNumber:23},void 0),e.jsxDEV("span",{children:f.formatPrice(de,i)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1179,columnNumber:23},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1172,columnNumber:21},void 0):null,P?e.jsxDEV("div",{className:"flex justify-between text-emerald-600",children:[e.jsxDEV("span",{children:[o("ecommerce.discount","Discount")," (",P.code,")"]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1184,columnNumber:23},void 0),e.jsxDEV("span",{children:["-",f.formatPrice(P.discountTotal,i)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1187,columnNumber:23},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1183,columnNumber:21},void 0):null,(v.length>0||E.length>0)&&e.jsxDEV("div",{className:"flex justify-between font-bold text-lg pt-2 border-t mt-2",children:[e.jsxDEV("span",{children:o("ecommerce.estimated_total","Estimated total")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1192,columnNumber:23},void 0),e.jsxDEV("span",{className:"text-primary",children:f.formatPrice(ze,i)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1198,columnNumber:23},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1191,columnNumber:21},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1155,columnNumber:17},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1090,columnNumber:15},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1086,columnNumber:13},void 0),v.length>0?e.jsxDEV(Te,{title:o("ecommerce.stripe_checkout_title","Stripe Checkout"),description:o("ecommerce.stripe_checkout_description","Pay for physical products in one Stripe checkout session."),badgeLabel:Ge,children:[e.jsxDEV("div",{className:"space-y-2 text-sm",children:[e.jsxDEV("div",{className:"flex justify-between",children:[e.jsxDEV("span",{children:o("ecommerce.physical_subtotal","Physical subtotal")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1221,columnNumber:21},void 0),e.jsxDEV("span",{children:f.formatPrice(me,i)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1227,columnNumber:21},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1220,columnNumber:19},void 0),ue>0?e.jsxDEV("div",{className:"flex justify-between text-emerald-600",children:[e.jsxDEV("span",{children:o("ecommerce.discount","Discount")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1231,columnNumber:23},void 0),e.jsxDEV("span",{children:["-",f.formatPrice(ue,i)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1234,columnNumber:23},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1230,columnNumber:21},void 0):null,e.jsxDEV("div",{className:"flex justify-between",children:[e.jsxDEV("span",{children:c("ecommerce.shipping")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1238,columnNumber:21},void 0),e.jsxDEV("span",{children:ce?f.formatPrice(ce.amount,i):"-"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1239,columnNumber:21},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1237,columnNumber:19},void 0),e.jsxDEV("div",{className:"flex justify-between",children:[e.jsxDEV("span",{children:o("ecommerce.tax","Tax")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1242,columnNumber:21},void 0),e.jsxDEV("span",{children:qe?"...":_?.isPendingExternalCalculation?o("ecommerce.tax_calculated_on_stripe","Calculated on Stripe"):_?f.formatPrice(_.amount,i):"-"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1243,columnNumber:21},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1241,columnNumber:19},void 0),_&&_.lines.length>0?e.jsxDEV("div",{className:"rounded-lg bg-muted/20 px-3 py-2 text-xs text-muted-foreground",children:_.lines.map(s=>e.jsxDEV("div",{className:"flex justify-between gap-3",children:[e.jsxDEV("span",{children:[s.name," (",s.rate.toFixed(4),"%)"]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1262,columnNumber:27},void 0),e.jsxDEV("span",{children:f.formatPrice(s.amount,i)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1265,columnNumber:27},void 0)]},s.id||`${s.name}-${s.rate}`,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1261,columnNumber:25},void 0))},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1259,columnNumber:21},void 0):null,e.jsxDEV("div",{className:"flex justify-between font-semibold pt-2 border-t",children:[e.jsxDEV("span",{children:o("ecommerce.total_on_stripe","Total on Stripe")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1271,columnNumber:21},void 0),e.jsxDEV("span",{children:f.formatPrice(Ee,i)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1277,columnNumber:21},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1270,columnNumber:19},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1219,columnNumber:17},void 0),e.jsxDEV(pe.Button,{className:"w-full",size:"lg",onClick:()=>ye("stripe",v,"stripe"),disabled:Ke,children:[t==="stripe"?e.jsxDEV(B.Loader2,{className:"mr-2 h-4 w-4 animate-spin"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1288,columnNumber:21},void 0):e.jsxDEV(B.Package,{className:"mr-2 h-4 w-4"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1290,columnNumber:21},void 0),t==="stripe"?c("ecommerce.processing"):o("ecommerce.checkout_physical_products","Checkout Physical Products")]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1281,columnNumber:17},void 0),be&&t===null?e.jsxDEV("p",{className:"text-[11px] text-muted-foreground",children:be},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1301,columnNumber:19},void 0):null,b.stripe?e.jsxDEV("div",{className:"rounded-lg border border-destructive/20 bg-destructive/10 px-3 py-2 text-xs text-destructive",children:b.stripe},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1307,columnNumber:19},void 0):null,e.jsxDEV("p",{className:"text-[11px] text-muted-foreground",children:_?.isPendingExternalCalculation?o("checkout_stripe_tax_finalized_notice","Tax will be finalized by Stripe Tax on the payment step."):o("ecommerce.shipping_taxes_collected_on_stripe","Shipping and taxes are only collected during the Stripe step for physical products.")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1312,columnNumber:17},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1208,columnNumber:15},void 0):null,E.length>0?e.jsxDEV(Te,{title:o("ecommerce.freemius_checkout_title","Freemius Checkout"),description:o("ecommerce.freemius_checkout_description","Digital products use the Freemius checkout flow."),badgeLabel:Je,children:[e.jsxDEV("div",{className:"space-y-3",children:E.map(s=>{const r=ke.getCartItemActivePrice(s,{currencyCode:i,currencies:T}),a=we.getTrialSummary(s),u=`freemius:${s.id}`,h=a?k[u]||"paid":void 0;return e.jsxDEV("div",{className:"rounded-lg border p-3 space-y-3",children:[e.jsxDEV("div",{className:"flex items-start justify-between gap-3",children:[e.jsxDEV("div",{children:[e.jsxDEV("p",{className:"font-medium",children:s.title},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1354,columnNumber:29},void 0),s.billing_cycle?e.jsxDEV("p",{className:"text-xs text-muted-foreground capitalize",children:Xe(s.billing_cycle)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1356,columnNumber:31},void 0):null,a?e.jsxDEV("p",{className:"text-xs font-medium text-emerald-700",children:[a.label," - ",a.paymentRequirementLabel]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1361,columnNumber:31},void 0):null]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1353,columnNumber:27},void 0),e.jsxDEV("span",{className:"font-medium",children:f.formatPrice(r.sale_price??r.price,i)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1366,columnNumber:27},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1352,columnNumber:25},void 0),a&&!s.trial_requires_payment_method&&e.jsxDEV("div",{className:"bg-muted/30 p-3 rounded-md border text-sm mt-2 mb-3",children:[e.jsxDEV("p",{className:"font-medium mb-3",children:o("ecommerce.freemius_trial_preference_title","How would you like to start your trial?")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1373,columnNumber:29},void 0),e.jsxDEV(xe.RadioGroup,{value:k[u]||"paid",onValueChange:N=>V(d=>({...d,[u]:N})),className:"gap-3",children:[e.jsxDEV("div",{className:"flex items-start space-x-3",children:[e.jsxDEV(xe.RadioGroupItem,{value:"paid",id:`${u}-paid`,className:"mt-1"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1385,columnNumber:33},void 0),e.jsxDEV("div",{className:"grid gap-1.5",children:[e.jsxDEV(D.Label,{htmlFor:`${u}-paid`,className:"font-medium leading-none cursor-pointer",children:o("ecommerce.freemius_trial_with_card","Enter Payment Details Now (Still get full trial length free)")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1387,columnNumber:35},void 0),e.jsxDEV("p",{className:"text-xs text-muted-foreground",children:o("ecommerce.freemius_trial_with_card_help","You will not be billed until the trial ends. Cancel anytime.")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1393,columnNumber:35},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1386,columnNumber:33},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1384,columnNumber:31},void 0),e.jsxDEV("div",{className:"flex items-start space-x-3",children:[e.jsxDEV(xe.RadioGroupItem,{value:"free",id:`${u}-free`,className:"mt-1"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1402,columnNumber:33},void 0),e.jsxDEV("div",{className:"grid gap-1.5",children:e.jsxDEV(D.Label,{htmlFor:`${u}-free`,className:"font-medium leading-none cursor-pointer",children:o("ecommerce.freemius_trial_no_card","Start Free Trial (No card required)")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1404,columnNumber:35},void 0)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1403,columnNumber:33},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1401,columnNumber:31},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1379,columnNumber:29},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1372,columnNumber:27},void 0),e.jsxDEV(pe.Button,{className:"w-full h-auto min-h-[2.75rem] py-2",onClick:()=>ye("freemius",[{...s,...h?{trial_preference:h}:{}}],u),disabled:t!==null||Ne!==null,children:[t===u?e.jsxDEV(B.Loader2,{className:"mr-2 h-4 w-4 shrink-0 animate-spin"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1435,columnNumber:29},void 0):e.jsxDEV(B.Download,{className:"mr-2 h-4 w-4 shrink-0"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1437,columnNumber:29},void 0),e.jsxDEV("span",{className:"whitespace-normal text-left",children:t===u?c("ecommerce.processing"):E.length>1?o("ecommerce.checkout_product","Checkout {title}",{title:s.title}):o("ecommerce.checkout_digital_product","Checkout Digital Product")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1439,columnNumber:27},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1416,columnNumber:25},void 0)]},u,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1351,columnNumber:23},void 0)})},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1338,columnNumber:17},void 0),e.jsxDEV("div",{className:"flex justify-between text-sm font-semibold border-t pt-3",children:[e.jsxDEV("span",{children:o("ecommerce.digital_subtotal","Digital subtotal")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1460,columnNumber:19},void 0),e.jsxDEV("span",{children:f.formatPrice(de,i)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1466,columnNumber:19},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1459,columnNumber:17},void 0),ae>0?e.jsxDEV("div",{className:"flex justify-between text-sm font-semibold text-emerald-600",children:[e.jsxDEV("span",{children:o("ecommerce.discount","Discount")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1470,columnNumber:21},void 0),e.jsxDEV("span",{children:["-",f.formatPrice(ae,i)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1471,columnNumber:21},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1469,columnNumber:19},void 0):null,Ne?e.jsxDEV("div",{className:"rounded-lg border border-amber-500/40 bg-amber-500/10 px-3 py-2 text-xs",children:Ne},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1476,columnNumber:19},void 0):null,b.freemius?e.jsxDEV("div",{className:"rounded-lg border border-destructive/20 bg-destructive/10 px-3 py-2 text-xs text-destructive",children:b.freemius},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1482,columnNumber:19},void 0):null,e.jsxDEV("p",{className:"text-[11px] text-muted-foreground",children:E.length>1?o("ecommerce.freemius_multi_checkout_notice","Freemius licenses are completed one at a time, so each digital product gets its own checkout action."):o("ecommerce.freemius_tax_notice","Taxes and compliance for digital products are handled inside the Freemius checkout.")},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1487,columnNumber:17},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1327,columnNumber:15},void 0):null]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:1085,columnNumber:11},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:943,columnNumber:9},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:940,columnNumber:7},void 0)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/NRH-NextBlock/libs/ecommerce/src/lib/components/Checkout.tsx",lineNumber:937,columnNumber:5},void 0)};exports.Checkout=as;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),ze=require("@nextblock-cms/ui/badge"),je=require("@nextblock-cms/ui/button"),f=require("@nextblock-cms/ui/card"),lt=require("@nextblock-cms/ui/checkbox"),T=require("@nextblock-cms/ui/input"),y=require("@nextblock-cms/ui/label"),at=require("@nextblock-cms/ui/separator"),Y=require("@nextblock-cms/ui/radio-group"),it=require("@freemius/checkout"),Ce=require("../cart-store.cjs.js"),ot=require("../use-cart.cjs.js"),l=require("react"),S=require("lucide-react"),Oe=require("@nextblock-cms/utils"),dt=require("../use-price-formatter.cjs.js"),Ue=require("../countries.cjs.js"),ut=require("../PaymentReadinessProvider.cjs.js"),mt=require("../server-actions/shipping-actions.cjs.js"),pt=require("../server-actions/tax-actions.cjs.js"),ve=require("../types.cjs.js"),G=require("../states.cjs.js"),U=require("../customer.cjs.js"),ht=require("../CurrencyProvider.cjs.js"),De=require("../trials.cjs.js"),xt=require("./CouponForm.cjs.js"),gt=process.env.NEXT_PUBLIC_IS_SANDBOX==="true",oe="nextblock-checkout-draft-v1";function de(s,o){return{...U.emptyCustomerAddress(),company_name:s?.company_name||"",recipient_name:s?.recipient_name||o||"",line1:s?.line1||"",line2:s?.line2||"",city:s?.city||"",state:s?.state||"",postal_code:s?.postal_code||"",country_code:Ue.normalizeCountryCode(s?.country_code)||"CA"}}function ft(s){const o=U.normalizeCustomerAddress(s);return!(!o?.country_code||!o.postal_code||G.countryUsesStructuredStates(o.country_code)&&!o.state)}function Ne(s,o,$){return s.reduce((m,g)=>{const{price:x,sale_price:F}=Ce.getCartItemActivePrice(g,{currencyCode:o,currencies:$});return m+(F??x)*g.quantity},0)}function Pe({idPrefix:s,title:o,description:$,value:m,onChange:g}){const{t:x,lang:F}=Oe.useTranslations(),q=l.useMemo(()=>{try{return new Intl.DisplayNames([F],{type:"region"})}catch{return null}},[F]),I=x("company_name")==="company_name"?"Company name":x("company_name"),W=x("select_an_option")==="select_an_option"?"Select an option":x("select_an_option"),D=x("state_province")==="state_province"?"State / Province":x("state_province"),H=G.getStatesForCountry(m.country_code),K=G.countryUsesStructuredStates(m.country_code);return e.jsxs(f.Card,{children:[e.jsxs(f.CardHeader,{children:[e.jsxs(f.CardTitle,{role:"heading","aria-level":2,className:"flex items-center gap-2",children:[e.jsx(S.MapPin,{className:"w-5 h-5"}),o]}),e.jsx("p",{className:"text-sm text-muted-foreground",children:$})]}),e.jsxs(f.CardContent,{className:"space-y-4",children:[e.jsxs("div",{className:"grid gap-4 sm:grid-cols-3",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(y.Label,{htmlFor:`${s}-company`,children:I}),e.jsx(T.Input,{id:`${s}-company`,name:`${s}-company`,autoComplete:`${s} organization`,value:m.company_name,onChange:u=>g({...m,company_name:u.target.value})})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y.Label,{htmlFor:`${s}-name`,children:x("full_name")}),e.jsx(T.Input,{id:`${s}-name`,name:`${s}-name`,autoComplete:`${s} name`,required:!0,value:m.recipient_name,onChange:u=>g({...m,recipient_name:u.target.value})})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y.Label,{htmlFor:`${s}-country`,children:x("country")}),e.jsx("select",{id:`${s}-country`,name:`${s}-country`,autoComplete:`${s} country`,required:!0,className:"flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-sm focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",value:m.country_code,onChange:u=>{const Z=u.target.value,ee=G.getStatesForCountry(Z);g({...m,country_code:Z,state:ee.some(ue=>ue.code===m.state)?m.state:""})},children:Ue.countries.map(u=>e.jsx("option",{value:u.code,children:q?.of(u.code)??u.name},u.code))})]})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y.Label,{htmlFor:`${s}-line1`,children:x("address_line_1")}),e.jsx(T.Input,{id:`${s}-line1`,name:`${s}-line1`,autoComplete:`${s} address-line1`,required:!0,value:m.line1,onChange:u=>g({...m,line1:u.target.value})})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y.Label,{htmlFor:`${s}-line2`,children:x("address_line_2")}),e.jsx(T.Input,{id:`${s}-line2`,name:`${s}-line2`,autoComplete:`${s} address-line2`,value:m.line2,onChange:u=>g({...m,line2:u.target.value})})]}),e.jsxs("div",{className:"grid gap-4 sm:grid-cols-3",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(y.Label,{htmlFor:`${s}-city`,children:x("city")}),e.jsx(T.Input,{id:`${s}-city`,name:`${s}-city`,autoComplete:`${s} address-level2`,required:!0,value:m.city,onChange:u=>g({...m,city:u.target.value})})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y.Label,{htmlFor:`${s}-state`,children:x("state_province")}),K?e.jsxs("select",{id:`${s}-state`,name:`${s}-state`,autoComplete:`${s} address-level1`,required:!0,className:"flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-sm focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",value:m.state,onChange:u=>g({...m,state:u.target.value}),children:[e.jsx("option",{value:"",children:`${W}: ${D}`}),H.map(u=>e.jsx("option",{value:u.code,children:u.name},u.code))]}):e.jsx(T.Input,{id:`${s}-state`,name:`${s}-state`,autoComplete:`${s} address-level1`,value:m.state,onChange:u=>g({...m,state:u.target.value})})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y.Label,{htmlFor:`${s}-postal`,children:x("postal_zip_code")}),e.jsx(T.Input,{id:`${s}-postal`,name:`${s}-postal`,autoComplete:`${s} postal-code`,required:!0,value:m.postal_code,onChange:u=>g({...m,postal_code:u.target.value})})]})]})]})]})}function Be({title:s,description:o,badgeLabel:$,children:m}){return e.jsxs(f.Card,{children:[e.jsx(f.CardHeader,{children:e.jsxs("div",{className:"flex items-center justify-between gap-3 flex-wrap",children:[e.jsxs("div",{children:[e.jsx(f.CardTitle,{role:"heading","aria-level":2,children:s}),e.jsx("p",{className:"mt-1 text-sm text-muted-foreground",children:o})]}),$?e.jsx(ze.Badge,{variant:"secondary",children:$}):null]})}),e.jsx(f.CardContent,{className:"space-y-4",children:m})]})}const _t=({initialCustomer:s})=>{const o=dt.usePriceFormatter(),[$,m]=l.useState({}),[g,x]=l.useState(null),[F,q]=l.useState({}),[I,W]=l.useState(s?.email||""),[D,H]=l.useState(""),[K,u]=l.useState(s?.phone||""),[Z,ee]=l.useState(!1),[ue,ke]=l.useState(null),[we,te]=l.useState(!1),[Ke,Se]=l.useState(!1),[Ge,se]=l.useState(!1),[J,Q]=l.useState([]),[A,P]=l.useState(null),[N,re]=l.useState(null),[L,He]=l.useState(null),[C,$e]=l.useState(()=>de(s?.billingAddress,s?.fullName)),[B,Fe]=l.useState(()=>de(s?.shippingAddress??s?.billingAddress,s?.fullName)),[M,Ae]=l.useState(!s?.shippingAddress||U.addressesMatch(s?.billingAddress,s?.shippingAddress)),V=ot.useCart(t=>t),{t:n,lang:me}=Oe.useTranslations(),{activeCurrencyCode:i,currencies:E}=ht.useCurrency(),Te=ut.usePaymentReadiness(),b=V?.items??[],j=l.useMemo(()=>b.filter(t=>!ve.isDigitalItem(t)),[b]),k=l.useMemo(()=>b.filter(t=>ve.isDigitalItem(t)),[b]),z=s?.isAuthenticated??!1,r=(t,c,h)=>{const a=n(t,h);if(a!==t)return a;if(!h)return c;let _=c;return Object.entries(h).forEach(([p,d])=>{_=_.replace(new RegExp(`\\{${p}\\}`,"g"),String(d))}),_},v=j.length>0,Je=l.useMemo(()=>Ne(b,i,E),[i,E,b]),pe=l.useMemo(()=>Ne(j,i,E),[i,E,j]),he=l.useMemo(()=>Ne(k,i,E),[i,E,k]),xe=L?.providerDiscounts.stripe??0,ge=L?.providerDiscounts.freemius??0,ne=Math.max(0,pe-xe),Qe=Math.max(0,he-ge),w=l.useMemo(()=>M?C:B,[C,B,M]),O=l.useMemo(()=>v?w:C,[C,v,w]),ce=!v||ft(w),le=l.useMemo(()=>J.find(t=>t.id===A),[J,A]),qe=l.useMemo(()=>ne+(le?.amount??0)+(N&&!N.isPendingExternalCalculation?N.amount:0),[ne,le,N]),Ve=qe+Qe;if(l.useEffect(()=>{if(!(z||typeof window>"u"))try{const t=window.localStorage.getItem(oe);if(!t)return;const c=JSON.parse(t);c.email&&W(c.email),c.phone&&u(c.phone),c.billingAddress&&$e(de(c.billingAddress)),c.shippingAddress&&Fe(de(c.shippingAddress)),typeof c.useBillingForShipping=="boolean"&&Ae(c.useBillingForShipping),(typeof c.selectedMethodId=="string"||c.selectedMethodId===null)&&P(c.selectedMethodId)}catch(t){console.error("[Checkout] Failed to restore checkout draft:",t)}},[z]),l.useEffect(()=>{if(!(typeof window>"u"))try{if(z){window.localStorage.removeItem(oe);return}window.localStorage.setItem(oe,JSON.stringify({email:I,phone:K,billingAddress:C,shippingAddress:B,useBillingForShipping:M,selectedMethodId:A}))}catch{}},[C,I,z,K,A,B,M]),l.useEffect(()=>{if(!v){Q([]),P(null),te(!1);return}if(!ce){Q([]),P(null),te(!1);return}let t=!1;const h=setTimeout(async()=>{if(w.country_code){te(!0),Se(!1);try{const a=await mt.getShippingEstimates(ne,{country:w.country_code,state:w.state,postal_code:w.postal_code},me,i);if(t)return;if(a.success&&a.methods){const _=a.methods;Q(_),P(p=>p&&_.some(d=>d.id===p)?p:_[0]?.id??null)}else Q([]),P(null)}catch(a){if(t)return;console.error("[Checkout] Failed to load shipping rates:",a),Q([]),P(null),Se(!0)}finally{t||te(!1)}}},400);return()=>{t=!0,clearTimeout(h)}},[i,v,ce,me,w.country_code,w.postal_code,w.state,ne]),l.useEffect(()=>{let t=!1;const h=setTimeout(async()=>{if(!v||!O.country_code){se(!1),re(null);return}if(G.countryUsesStructuredStates(O.country_code)&&!O.state){se(!1),re(null);return}se(!0);try{const a=await pt.getTaxEstimate(j,{country_code:O.country_code,state:O.state},i,L?.code??null,b);if(t)return;re(a.success&&a.tax?a.tax:null)}catch(a){if(t)return;console.error("[Checkout] Failed to load the tax estimate:",a),re(null)}finally{t||se(!1)}},300);return()=>{t=!0,clearTimeout(h)}},[i,v,j,O.country_code,O.state,L?.code,b]),l.useEffect(()=>{const t=c=>{c.persisted&&x(null)};return window.addEventListener("pageshow",t),()=>window.removeEventListener("pageshow",t)},[]),!V)return null;const fe=()=>{ee(!1),ke(null)},Ie=Z?e.jsx("div",{className:"fixed inset-0 z-50 flex items-center justify-center overscroll-contain bg-black/60 backdrop-blur-sm",onClick:fe,onKeyDown:t=>{t.key==="Escape"&&fe()},children:e.jsxs("div",{role:"dialog","aria-modal":"true","aria-labelledby":"sandbox-checkout-title",className:"relative bg-background border rounded-xl shadow-2xl p-8 max-w-md mx-4",onClick:t=>t.stopPropagation(),children:[e.jsx("button",{type:"button",autoFocus:!0,onClick:fe,"aria-label":r("close","Close"),className:"absolute top-4 right-4 inline-flex h-8 w-8 items-center justify-center rounded-md text-muted-foreground hover:text-foreground transition-colors focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring",children:e.jsx(S.X,{className:"w-5 h-5"})}),e.jsxs("div",{className:"flex items-center gap-3 mb-4",children:[e.jsx("div",{className:"p-2 rounded-full bg-amber-100 dark:bg-amber-900/20",children:e.jsx(S.FlaskConical,{className:"h-6 w-6 text-amber-600 dark:text-amber-400"})}),e.jsx("h2",{id:"sandbox-checkout-title",className:"text-xl font-semibold",children:n("ecommerce.checkout_successful")})]}),e.jsx("p",{className:"text-muted-foreground mb-2",children:n("ecommerce.sandbox_notice")}),e.jsx("p",{className:"text-muted-foreground mb-2",children:ue==="stripe"?r("ecommerce.sandbox_checkout_stripe_description","This simulated step represents the Stripe checkout for physical products."):r("ecommerce.sandbox_checkout_freemius_description","This simulated step represents the Freemius checkout for digital products.")}),e.jsx("p",{className:"text-muted-foreground mb-6",children:n("ecommerce.license_notice")}),e.jsx("a",{href:"https://nextblock.dev",target:"_blank",rel:"noopener noreferrer",className:"block w-full text-center py-3 px-4 rounded-lg bg-primary text-primary-foreground font-semibold hover:opacity-90 transition-opacity",children:n("ecommerce.purchase_at")})]})}):null,ae=(t,c,h)=>(q(a=>({...a,[t]:c})),h&&document.getElementById(h)?.focus(),null),_e=(t,c)=>c.recipient_name.trim()?c.line1.trim()?c.city.trim()?G.countryUsesStructuredStates(c.country_code)&&!c.state?`${t}-state`:c.postal_code.trim()?`${t}-line1`:`${t}-postal`:`${t}-city`:`${t}-line1`:`${t}-name`,Xe=t=>{if(!z&&(!I||!/^\S+@\S+\.\S+$/.test(I)))return H(n("ecommerce.invalid_email")),ae(t,n("ecommerce.invalid_email"),"checkout-email");const c=U.normalizeCustomerAddress(C);if(!U.isCustomerAddressComplete(c))return ae(t,n("checkout_complete_billing_address"),_e("billing",C));const h=v?U.normalizeCustomerAddress(M?C:B):null;if(t==="stripe"){if(!U.isCustomerAddressComplete(h))return ae(t,n("checkout_complete_shipping_address"),M?_e("billing",C):_e("shipping",B));if(!A)return ae(t,r("ecommerce.shipping_method_required","Please select a shipping method before continuing."))}return H(""),{normalizedBillingAddress:c,normalizedShippingAddress:h}},Le=async(t,c,h)=>{q(_=>({..._,[t]:""}));const a=Xe(t);if(a){if(gt){const _=new Set(c.map(d=>d.id)),p=b.filter(d=>!_.has(d.id));if(V.setItems(p),p.length===0&&V.removeCoupon(),ke(t),ee(!0),typeof window<"u"&&p.length===0)try{window.localStorage.removeItem(oe)}catch{}return}x(h);try{const _=await fetch("/api/checkout",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({items:c,customerEmail:z?void 0:I,customerPhone:K||null,billingAddress:a.normalizedBillingAddress,shippingAddress:t==="stripe"?a.normalizedShippingAddress:null,shippingMethodId:t==="stripe"?A:null,locale:me,currencyCode:i,couponCode:L?.code??V.appliedCoupon?.code??null,couponContextItems:b})}),p=await _.json();if(!_.ok){const d=p?.errorKey&&typeof p.errorKey=="string"?r(p.errorKey,p?.error||r("ecommerce.generic_error","Something went wrong."),p.errorParams):p?.error||n("ecommerce.generic_error");q(X=>({...X,[t]:d})),x(null);return}if(p.customProps&&p.customProps.provider==="freemius"){const d=p.customProps;let X=null;const st=()=>{window.location.href=`/checkout/success?session_id=${d.order_id}`},Re=R=>(X||(X=fetch("/api/checkout/freemius/sync",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({orderId:d.order_id,checkoutResponse:R})}).then(async ie=>{if(!ie.ok){const ct=await ie.json().catch(()=>null);console.error("Freemius checkout sync failed:",ct)}})),X),rt={product_id:d.plugin_id,public_key:d.public_key,sandbox:d.sandbox},nt={name:n("ecommerce.checkout_overlay_title"),plan_id:d.plan_id,...d.billing_cycle?{billing_cycle:d.billing_cycle}:{},...d.trial?{trial:d.trial}:{},...d.coupon?{coupon:d.coupon}:{},user_email:d.user_email,user_firstname:d.user_firstname,user_lastname:d.user_lastname,sandbox:d.sandbox,purchaseCompleted:function(R){Re(R)},success:function(R){(async()=>{try{await Re(R)}finally{st()}})()}};try{new it.Checkout(rt).open(nt),x(null)}catch(R){console.error("[Checkout] Freemius overlay failed to open:",R),q(ie=>({...ie,[t]:n("ecommerce.checkout_popup_blocked")})),p.url&&(window.location.href=p.url),x(null)}}else p.url?window.location.href=p.url:(q(d=>({...d,[t]:n("ecommerce.checkout_failed")+(p.error||r("ecommerce.unknown_error","Unknown error"))})),x(null))}catch(_){console.error(_),q(p=>({...p,[t]:n("ecommerce.generic_error")})),x(null)}}};if(b.length===0)return e.jsxs(e.Fragment,{children:[Ie,e.jsxs("div",{className:"container mx-auto flex min-h-[50vh] flex-col items-center justify-center p-8 text-center",children:[e.jsx("h1",{className:"mb-4 text-2xl font-bold",children:n("ecommerce.cart_empty")}),e.jsx("p",{className:"mb-8 text-muted-foreground",children:n("ecommerce.cart_empty_description")}),e.jsx(je.Button,{asChild:!0,children:e.jsx("a",{href:"/shop",children:n("ecommerce.go_to_shop")})})]})]});const Me=r("ecommerce.checkout_payments_unavailable","This store is not able to take payments right now. Please contact the seller to complete your purchase."),Ee=Te.stripe?null:Me,ye=Te.freemius?null:Me,be=Ee||(v?ce?we?r("ecommerce.calculating_shipping","Calculating shipping..."):A?null:J.length>0?n("ecommerce.select_rate"):n("ecommerce.no_rates_for_region"):r("ecommerce.waiting_on_address_info","Complete your shipping address to view available shipping options."):null),Ye=g!==null||be!==null,We=j.length===1?r("ecommerce.item_count_one","{count} item",{count:j.length}):r("ecommerce.item_count_other","{count} items",{count:j.length}),Ze=k.length===1?r("ecommerce.license_count_one","{count} license",{count:k.length}):r("ecommerce.license_count_other","{count} licenses",{count:k.length}),et=t=>ve.isDigitalItem(t)?r("ecommerce.digital_label","Digital"):r("ecommerce.physical_label","Physical"),tt=t=>t==="monthly"?r("ecommerce.checkout_billing_cycle_monthly","Monthly subscription"):t==="annual"?r("ecommerce.checkout_billing_cycle_annual","Annual subscription"):t==="lifetime"?r("ecommerce.checkout_billing_cycle_lifetime","Lifetime subscription"):null;return e.jsxs("div",{className:"container mx-auto px-4 py-12 md:px-6",children:[Ie,e.jsxs("div",{className:"mx-auto max-w-6xl",children:[e.jsx("h1",{className:"mb-8 text-3xl font-bold",children:n("ecommerce.checkout")}),e.jsxs("div",{className:"grid gap-8 lg:grid-cols-12 lg:items-start",children:[e.jsxs("div",{className:"lg:col-span-8 space-y-6",children:[e.jsxs(f.Card,{children:[e.jsx(f.CardHeader,{children:e.jsxs(f.CardTitle,{role:"heading","aria-level":2,className:"flex items-center gap-2",children:[e.jsx(S.CreditCard,{className:"w-5 h-5"}),n("ecommerce.contact_information")]})}),e.jsxs(f.CardContent,{className:"space-y-4",children:[z?e.jsx("div",{className:"rounded-xl border bg-muted/20 p-4 text-sm text-muted-foreground",children:n("checkout_prefill_notice",{email:s?.email||""})}):e.jsxs("div",{className:"space-y-2",children:[e.jsxs(y.Label,{htmlFor:"checkout-email",children:[n("ecommerce.email_address")," ",e.jsx("span",{className:"text-destructive",children:"*"})]}),e.jsx(T.Input,{id:"checkout-email",name:"email",type:"email",autoComplete:"email",spellCheck:!1,"aria-invalid":D?!0:void 0,"aria-describedby":D?"checkout-email-error":void 0,placeholder:n("ecommerce.email_placeholder"),value:I,onChange:t=>{W(t.target.value),D&&H("")},required:!0}),D?e.jsx("p",{id:"checkout-email-error",role:"alert",className:"text-xs text-destructive mt-1",children:D}):null]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(y.Label,{htmlFor:"checkout-phone",children:n("phone_number")}),e.jsx(T.Input,{id:"checkout-phone",name:"phone",type:"tel",inputMode:"tel",autoComplete:"tel",placeholder:n("optional"),value:K,onChange:t=>u(t.target.value)})]})]})]}),e.jsx(Pe,{idPrefix:"billing",title:n("billing_address"),description:n("checkout_billing_address_help"),value:C,onChange:$e}),v?e.jsxs("div",{className:"flex items-center space-x-3 rounded-xl border bg-muted/20 p-4",children:[e.jsx(lt.Checkbox,{id:"use-billing-for-shipping",checked:M,onCheckedChange:t=>Ae(!!t)}),e.jsxs("div",{className:"space-y-1",children:[e.jsx(y.Label,{htmlFor:"use-billing-for-shipping",className:"cursor-pointer",children:n("use_billing_for_shipping")}),e.jsx("p",{className:"text-sm text-muted-foreground",children:n("checkout_use_billing_for_shipping_help")})]})]}):null,v&&!M?e.jsx(Pe,{idPrefix:"shipping",title:n("shipping_address"),description:n("checkout_shipping_address_help"),value:B,onChange:Fe}):null,v?e.jsxs(f.Card,{children:[e.jsx(f.CardHeader,{children:e.jsxs(f.CardTitle,{role:"heading","aria-level":2,className:"flex items-center gap-2",children:[e.jsx(S.ChevronRight,{className:"w-5 h-5 text-primary"}),n("ecommerce.shipping_method")]})}),e.jsx(f.CardContent,{children:we?e.jsxs("div",{role:"status",className:"flex items-center justify-center py-6",children:[e.jsx(S.Loader2,{className:"w-6 h-6 animate-spin text-muted-foreground"}),e.jsx("span",{className:"sr-only",children:r("ecommerce.calculating_shipping","Calculating shipping…")})]}):Ke?e.jsx("div",{role:"alert",className:"rounded-lg bg-destructive/10 px-4 py-3 text-center text-sm text-destructive",children:r("ecommerce.shipping_calculation_failed","We couldn't calculate shipping right now. Please try again.")}):J.length>0?e.jsx(Y.RadioGroup,{value:A??"",onValueChange:P,"aria-label":n("ecommerce.shipping_method"),className:"space-y-3",children:J.map(t=>e.jsxs(y.Label,{htmlFor:`shipping-method-${t.id}`,className:`flex items-center justify-between gap-3 p-4 rounded-lg border-2 cursor-pointer transition-colors ${A===t.id?"border-primary bg-primary/5":"border-border hover:border-muted-foreground/40"}`,children:[e.jsxs("span",{className:"flex min-w-0 items-center gap-3",children:[e.jsx(Y.RadioGroupItem,{id:`shipping-method-${t.id}`,value:t.id}),e.jsx("span",{className:"font-medium break-words",children:t.name})]}),e.jsx("span",{className:"font-bold tabular-nums",children:o(t.amount,i)})]},t.id))}):e.jsx("div",{className:"py-4 text-center text-muted-foreground bg-muted/30 rounded-lg italic",children:ce?n("ecommerce.no_rates_for_region"):r("ecommerce.waiting_on_address_info","Complete your shipping address to view available shipping options.")})})]}):null]}),e.jsxs("div",{className:"lg:col-span-4 space-y-6",children:[e.jsxs(f.Card,{className:"top-6",children:[e.jsx(f.CardHeader,{children:e.jsx(f.CardTitle,{role:"heading","aria-level":2,children:n("ecommerce.order_summary")})}),e.jsxs(f.CardContent,{className:"space-y-4",children:[e.jsx("div",{className:"space-y-3 max-h-[260px] overflow-y-auto pr-2",children:b.map(t=>{const c=Ce.getCartItemActivePrice(t,{currencyCode:i,currencies:E}),h=De.getTrialSummary(t,n);return e.jsxs("div",{className:"flex items-start justify-between gap-4",children:[e.jsxs("div",{className:"flex gap-3",children:[t.image_url?e.jsx("div",{className:"h-10 w-10 shrink-0 overflow-hidden rounded border bg-neutral-100",children:e.jsx("img",{src:t.image_url,alt:t.title,className:"h-full w-full object-cover"})}):null,e.jsxs("div",{className:"grid gap-0.5",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("span",{className:"font-medium text-xs line-clamp-1",children:t.title}),e.jsx(ze.Badge,{variant:"outline",className:"text-[9px] uppercase",children:et(t)})]}),t.variant_label?e.jsx("span",{className:"text-[10px] text-muted-foreground line-clamp-1",children:t.variant_label}):null,e.jsxs("span",{className:"text-[10px] text-muted-foreground",children:[n("ecommerce.qty"),": ",t.quantity]}),h?e.jsxs("span",{className:"text-[10px] font-medium text-emerald-700",children:[h.label," - ",h.paymentRequirementLabel]}):null]})]}),e.jsxs("div",{className:"flex flex-col items-end gap-0.5 shrink-0",children:[e.jsx("span",{className:"font-medium text-xs",children:o((c.sale_price??c.price)*t.quantity,i)}),c.sale_price?e.jsx("span",{className:"text-[9px] text-muted-foreground line-through",children:o(c.price*t.quantity,i)}):null]})]},`${t.id}-${t.variant_id||"base"}`)})}),e.jsx(at.Separator,{}),e.jsx(xt.CouponForm,{items:b,currencyCode:i,onQuoteChange:He}),e.jsxs("div",{className:"space-y-2 text-sm",children:[e.jsxs("div",{className:"flex justify-between",children:[e.jsx("span",{children:n("ecommerce.subtotal")}),e.jsx("span",{children:o(Je,i)})]}),j.length>0?e.jsxs("div",{className:"flex justify-between text-muted-foreground",children:[e.jsx("span",{children:r("ecommerce.physical_products","Physical products")}),e.jsx("span",{children:o(pe,i)})]}):null,k.length>0?e.jsxs("div",{className:"flex justify-between text-muted-foreground",children:[e.jsx("span",{children:r("ecommerce.digital_products","Digital products")}),e.jsx("span",{children:o(he,i)})]}):null,L?e.jsxs("div",{className:"flex justify-between text-emerald-600",children:[e.jsxs("span",{children:[r("ecommerce.discount","Discount")," (",L.code,")"]}),e.jsxs("span",{children:["-",o(L.discountTotal,i)]})]}):null,(j.length>0||k.length>0)&&e.jsxs("div",{className:"flex justify-between font-bold text-lg pt-2 border-t mt-2",children:[e.jsx("span",{children:r("ecommerce.estimated_total","Estimated total")}),e.jsx("span",{className:"text-primary",children:o(Ve,i)})]})]})]})]}),j.length>0?e.jsxs(Be,{title:r("ecommerce.stripe_checkout_title","Stripe Checkout"),description:r("ecommerce.stripe_checkout_description","Pay for physical products in one Stripe checkout session."),badgeLabel:We,children:[e.jsxs("div",{className:"space-y-2 text-sm",children:[e.jsxs("div",{className:"flex justify-between",children:[e.jsx("span",{children:r("ecommerce.physical_subtotal","Physical subtotal")}),e.jsx("span",{children:o(pe,i)})]}),xe>0?e.jsxs("div",{className:"flex justify-between text-emerald-600",children:[e.jsx("span",{children:r("ecommerce.discount","Discount")}),e.jsxs("span",{children:["-",o(xe,i)]})]}):null,e.jsxs("div",{className:"flex justify-between",children:[e.jsx("span",{children:n("ecommerce.shipping")}),e.jsx("span",{children:le?o(le.amount,i):"-"})]}),e.jsxs("div",{className:"flex justify-between",children:[e.jsx("span",{children:r("ecommerce.tax","Tax")}),e.jsx("span",{children:Ge?"...":N?.isPendingExternalCalculation?r("ecommerce.tax_calculated_on_stripe","Calculated on Stripe"):N?o(N.amount,i):"-"})]}),N&&N.lines.length>0?e.jsx("div",{className:"rounded-lg bg-muted/20 px-3 py-2 text-xs text-muted-foreground",children:N.lines.map(t=>e.jsxs("div",{className:"flex justify-between gap-3",children:[e.jsxs("span",{children:[t.name," (",t.rate.toFixed(4),"%)"]}),e.jsx("span",{children:o(t.amount,i)})]},t.id||`${t.name}-${t.rate}`))}):null,e.jsxs("div",{className:"flex justify-between font-semibold pt-2 border-t",children:[e.jsx("span",{children:r("ecommerce.total_on_stripe","Total on Stripe")}),e.jsx("span",{children:o(qe,i)})]})]}),e.jsxs(je.Button,{className:"w-full",size:"lg",onClick:()=>Le("stripe",j,"stripe"),disabled:Ye,children:[g==="stripe"?e.jsx(S.Loader2,{className:"mr-2 h-4 w-4 animate-spin"}):e.jsx(S.Package,{className:"mr-2 h-4 w-4"}),g==="stripe"?n("ecommerce.processing"):r("ecommerce.checkout_physical_products","Checkout Physical Products")]}),be&&g===null?e.jsx("p",{className:"text-[11px] text-muted-foreground",children:be}):null,F.stripe?e.jsx("div",{role:"alert",className:"rounded-lg border border-destructive/20 bg-destructive/10 px-3 py-2 text-xs text-destructive",children:F.stripe}):null,e.jsx("p",{className:"text-[11px] text-muted-foreground",children:N?.isPendingExternalCalculation?r("checkout_stripe_tax_finalized_notice","Tax will be finalized by Stripe Tax on the payment step."):r("ecommerce.shipping_taxes_collected_on_stripe","Shipping and taxes are only collected during the Stripe step for physical products.")})]}):null,k.length>0?e.jsxs(Be,{title:r("ecommerce.freemius_checkout_title","Freemius Checkout"),description:r("ecommerce.freemius_checkout_description","Digital products use the Freemius checkout flow."),badgeLabel:Ze,children:[e.jsx("div",{className:"space-y-3",children:k.map(t=>{const c=Ce.getCartItemActivePrice(t,{currencyCode:i,currencies:E}),h=De.getTrialSummary(t,n),a=`freemius:${t.id}`,_=h?$[a]||"paid":void 0;return e.jsxs("div",{className:"rounded-lg border p-3 space-y-3",children:[e.jsxs("div",{className:"flex items-start justify-between gap-3",children:[e.jsxs("div",{children:[e.jsx("p",{className:"font-medium",children:t.title}),t.billing_cycle?e.jsx("p",{className:"text-xs text-muted-foreground capitalize",children:tt(t.billing_cycle)}):null,h?e.jsxs("p",{className:"text-xs font-medium text-emerald-700",children:[h.label," - ",h.paymentRequirementLabel]}):null]}),e.jsx("span",{className:"font-medium",children:o(c.sale_price??c.price,i)})]}),h&&!t.trial_requires_payment_method&&e.jsxs("div",{className:"bg-muted/30 p-3 rounded-md border text-sm mt-2 mb-3",children:[e.jsx("p",{className:"font-medium mb-3",children:r("ecommerce.freemius_trial_preference_title","How would you like to start your trial?")}),e.jsxs(Y.RadioGroup,{value:$[a]||"paid",onValueChange:p=>m(d=>({...d,[a]:p})),className:"gap-3",children:[e.jsxs("div",{className:"flex items-start space-x-3",children:[e.jsx(Y.RadioGroupItem,{value:"paid",id:`${a}-paid`,className:"mt-1"}),e.jsxs("div",{className:"grid gap-1.5",children:[e.jsx(y.Label,{htmlFor:`${a}-paid`,className:"font-medium leading-none cursor-pointer",children:r("ecommerce.freemius_trial_with_card","Enter Payment Details Now (Still get full trial length free)")}),e.jsx("p",{className:"text-xs text-muted-foreground",children:r("ecommerce.freemius_trial_with_card_help","You will not be billed until the trial ends. Cancel anytime.")})]})]}),e.jsxs("div",{className:"flex items-start space-x-3",children:[e.jsx(Y.RadioGroupItem,{value:"free",id:`${a}-free`,className:"mt-1"}),e.jsx("div",{className:"grid gap-1.5",children:e.jsx(y.Label,{htmlFor:`${a}-free`,className:"font-medium leading-none cursor-pointer",children:r("ecommerce.freemius_trial_no_card","Start Free Trial (No card required)")})})]})]})]}),e.jsxs(je.Button,{className:"w-full h-auto min-h-[2.75rem] py-2",onClick:()=>Le("freemius",[{...t,..._?{trial_preference:_}:{}}],a),disabled:g!==null||ye!==null,children:[g===a?e.jsx(S.Loader2,{className:"mr-2 h-4 w-4 shrink-0 animate-spin"}):e.jsx(S.Download,{className:"mr-2 h-4 w-4 shrink-0"}),e.jsx("span",{className:"whitespace-normal text-left",children:g===a?n("ecommerce.processing"):k.length>1?r("ecommerce.checkout_product","Checkout {title}",{title:t.title}):r("ecommerce.checkout_digital_product","Checkout Digital Product")})]})]},a)})}),e.jsxs("div",{className:"flex justify-between text-sm font-semibold border-t pt-3",children:[e.jsx("span",{children:r("ecommerce.digital_subtotal","Digital subtotal")}),e.jsx("span",{children:o(he,i)})]}),ge>0?e.jsxs("div",{className:"flex justify-between text-sm font-semibold text-emerald-600",children:[e.jsx("span",{children:r("ecommerce.discount","Discount")}),e.jsxs("span",{children:["-",o(ge,i)]})]}):null,ye?e.jsx("div",{className:"rounded-lg border border-amber-500/40 bg-amber-500/10 px-3 py-2 text-xs",children:ye}):null,F.freemius?e.jsx("div",{role:"alert",className:"rounded-lg border border-destructive/20 bg-destructive/10 px-3 py-2 text-xs text-destructive",children:F.freemius}):null,e.jsx("p",{className:"text-[11px] text-muted-foreground",children:k.length>1?r("ecommerce.freemius_multi_checkout_notice","Freemius licenses are completed one at a time, so each digital product gets its own checkout action."):r("ecommerce.freemius_tax_notice","Taxes and compliance for digital products are handled inside the Freemius checkout.")})]}):null]})]})]})]})};exports.Checkout=_t;