@nextblock-cms/ecom 0.13.3 → 0.13.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/CurrencyProvider.cjs.js +1 -1
- package/lib/CurrencyProvider.es.js +31 -27
- package/lib/components/AccountNavigationMenu.cjs.js +1 -1
- package/lib/components/AccountNavigationMenu.es.js +53 -26
- package/lib/components/AddToCartButton.cjs.js +1 -1
- package/lib/components/AddToCartButton.es.js +49 -25
- package/lib/components/Cart.cjs.js +1 -1
- package/lib/components/Cart.es.js +367 -115
- package/lib/components/CartDrawer.cjs.js +1 -1
- package/lib/components/CartDrawer.es.js +272 -88
- package/lib/components/CartIcon.cjs.js +1 -1
- package/lib/components/CartIcon.es.js +44 -16
- package/lib/components/Checkout.cjs.js +1 -1
- package/lib/components/Checkout.es.js +1601 -694
- package/lib/components/CouponForm.cjs.js +1 -1
- package/lib/components/CouponForm.es.js +160 -96
- package/lib/components/CurrencySwitcher.cjs.js +1 -1
- package/lib/components/CurrencySwitcher.es.js +32 -12
- package/lib/components/CustomerProfileForm.cjs.js +1 -1
- package/lib/components/CustomerProfileForm.es.js +666 -250
- package/lib/components/FeaturedProduct.cjs.js +1 -1
- package/lib/components/FeaturedProduct.es.js +126 -42
- package/lib/components/FreemiusLicensePanel.cjs.js +1 -1
- package/lib/components/FreemiusLicensePanel.es.js +125 -45
- package/lib/components/InvoiceDocument.cjs.js +1 -1
- package/lib/components/InvoiceDocument.es.js +485 -146
- package/lib/components/InvoiceViewerShell.cjs.js +2 -2
- package/lib/components/InvoiceViewerShell.es.js +142 -54
- package/lib/components/ProductCard.cjs.js +1 -1
- package/lib/components/ProductCard.es.js +224 -81
- package/lib/components/ProductDetailsLayout.cjs.js +1 -1
- package/lib/components/ProductDetailsLayout.es.js +629 -275
- package/lib/components/ProductGallery.cjs.js +1 -1
- package/lib/components/ProductGallery.es.js +64 -21
- package/lib/components/ProductGrid.cjs.js +1 -1
- package/lib/components/ProductGrid.es.js +28 -12
- package/lib/components/ShippingEstimator.cjs.js +1 -1
- package/lib/components/ShippingEstimator.es.js +226 -90
- package/lib/components/SimpleTiptapRenderer.cjs.js +1 -1
- package/lib/components/SimpleTiptapRenderer.es.js +286 -93
- package/lib/components/SubscriptionSelector.cjs.js +1 -1
- package/lib/components/SubscriptionSelector.es.js +168 -92
- package/lib/pages/cms/coupons/CouponEditorForm.cjs.js +1 -1
- package/lib/pages/cms/coupons/CouponEditorForm.es.js +370 -110
- package/lib/pages/cms/coupons/CouponsPage.cjs.js +2 -2
- package/lib/pages/cms/coupons/CouponsPage.es.js +368 -116
- package/lib/pages/cms/coupons/CreateCouponDialog.cjs.js +1 -1
- package/lib/pages/cms/coupons/CreateCouponDialog.es.js +61 -25
- package/lib/pages/cms/coupons/EditCouponPage.cjs.js +1 -1
- package/lib/pages/cms/coupons/EditCouponPage.es.js +71 -35
- package/lib/pages/cms/coupons/ProductScopePicker.cjs.js +1 -1
- package/lib/pages/cms/coupons/ProductScopePicker.es.js +167 -72
- package/lib/pages/cms/orders/ExportReportsDialog.cjs.js +1 -1
- package/lib/pages/cms/orders/ExportReportsDialog.es.js +247 -87
- package/lib/pages/cms/orders/OrderDetailPage.cjs.js +1 -1
- package/lib/pages/cms/orders/OrderDetailPage.es.js +283 -95
- package/lib/pages/cms/orders/OrderPrintButton.cjs.js +1 -1
- package/lib/pages/cms/orders/OrderPrintButton.es.js +21 -9
- package/lib/pages/cms/orders/OrderStatusForm.cjs.js +1 -1
- package/lib/pages/cms/orders/OrderStatusForm.es.js +106 -46
- package/lib/pages/cms/orders/OrdersPage.cjs.js +1 -1
- package/lib/pages/cms/orders/OrdersPage.es.js +257 -78
- package/lib/pages/cms/payments/PaymentsClient.cjs.js +1 -1
- package/lib/pages/cms/payments/PaymentsClient.es.js +551 -155
- package/lib/pages/cms/payments/PaymentsPage.cjs.js +1 -1
- package/lib/pages/cms/payments/PaymentsPage.es.js +24 -16
- package/lib/pages/cms/products/ProductsPage.cjs.js +1 -1
- package/lib/pages/cms/products/ProductsPage.es.js +77 -37
- package/lib/pages/cms/products/_id_/edit/EditProductPage.cjs.js +1 -1
- package/lib/pages/cms/products/_id_/edit/EditProductPage.es.js +176 -96
- package/lib/pages/cms/products/attributes/AttributeManagementPage.cjs.js +1 -1
- package/lib/pages/cms/products/attributes/AttributeManagementPage.es.js +85 -41
- package/lib/pages/cms/products/attributes/components/AttributeManager.cjs.js +1 -1
- package/lib/pages/cms/products/attributes/components/AttributeManager.es.js +455 -192
- package/lib/pages/cms/products/categories/CategoryManagementPage.cjs.js +1 -1
- package/lib/pages/cms/products/categories/CategoryManagementPage.es.js +72 -28
- package/lib/pages/cms/products/categories/components/CategoryManager.cjs.js +1 -1
- package/lib/pages/cms/products/categories/components/CategoryManager.es.js +490 -183
- package/lib/pages/cms/products/components/CopyProductFromLanguage.cjs.js +1 -1
- package/lib/pages/cms/products/components/CopyProductFromLanguage.es.js +175 -67
- package/lib/pages/cms/products/components/CurrencyPriceFields.cjs.js +1 -1
- package/lib/pages/cms/products/components/CurrencyPriceFields.es.js +211 -100
- package/lib/pages/cms/products/components/DeleteProductButton.cjs.js +1 -1
- package/lib/pages/cms/products/components/DeleteProductButton.es.js +45 -25
- package/lib/pages/cms/products/components/FreemiusPricingDashboard.cjs.js +1 -1
- package/lib/pages/cms/products/components/FreemiusPricingDashboard.es.js +202 -58
- package/lib/pages/cms/products/components/ProductCategorySelector.cjs.js +1 -1
- package/lib/pages/cms/products/components/ProductCategorySelector.es.js +234 -88
- package/lib/pages/cms/products/components/ProductForm.cjs.js +1 -1
- package/lib/pages/cms/products/components/ProductForm.es.js +1199 -551
- package/lib/pages/cms/products/components/ProductMediaManager.cjs.js +1 -1
- package/lib/pages/cms/products/components/ProductMediaManager.es.js +154 -63
- package/lib/pages/cms/products/components/ProductsBulkTable.cjs.js +1 -1
- package/lib/pages/cms/products/components/ProductsBulkTable.es.js +391 -144
- package/lib/pages/cms/products/components/SaleScheduleFields.cjs.js +1 -1
- package/lib/pages/cms/products/components/SaleScheduleFields.es.js +203 -87
- package/lib/pages/cms/products/components/SyncFreemiusButton.cjs.js +1 -1
- package/lib/pages/cms/products/components/SyncFreemiusButton.es.js +30 -18
- package/lib/pages/cms/products/components/SyncFreemiusPricingButton.cjs.js +2 -2
- package/lib/pages/cms/products/components/SyncFreemiusPricingButton.es.js +35 -23
- package/lib/pages/cms/products/components/VariationsEditor.cjs.js +1 -1
- package/lib/pages/cms/products/components/VariationsEditor.es.js +492 -261
- package/lib/pages/cms/products/inventory/InventoryPage.cjs.js +1 -1
- package/lib/pages/cms/products/inventory/InventoryPage.es.js +33 -13
- package/lib/pages/cms/products/inventory/InventoryTableClient.cjs.js +2 -2
- package/lib/pages/cms/products/inventory/InventoryTableClient.es.js +365 -145
- package/lib/pages/cms/products/new/NewProductPage.cjs.js +1 -1
- package/lib/pages/cms/products/new/NewProductPage.es.js +46 -34
- package/lib/pages/cms/shipping/ShippingPage.cjs.js +2 -2
- package/lib/pages/cms/shipping/ShippingPage.es.js +507 -155
- package/lib/pages/cms/shipping/components/RateForm.cjs.js +1 -1
- package/lib/pages/cms/shipping/components/RateForm.es.js +717 -334
- package/lib/pages/cms/shipping/components/ZoneForm.cjs.js +1 -1
- package/lib/pages/cms/shipping/components/ZoneForm.es.js +392 -158
- package/lib/pages/cms/taxes/TaxesPage.cjs.js +1 -1
- package/lib/pages/cms/taxes/TaxesPage.es.js +448 -120
- package/lib/pages/cms/taxes/components/TaxRateForm.cjs.js +1 -1
- package/lib/pages/cms/taxes/components/TaxRateForm.es.js +159 -55
- package/lib/product-context.cjs.js +1 -1
- package/lib/product-context.es.js +14 -10
- package/package.json +4 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),i=require("react"),r=require("@nextblock-cms/ui"),C=require("lucide-react"),Z=require("../server-actions.cjs.js"),p=require("@nextblock-cms/utils"),T=require("../../../../currency.cjs.js"),$=require("../../../../shipping-rate-currency.cjs.js");function A(h,m){if(typeof h!="number")return"";const d=p.minorUnitAmountToMajor(h,m);return p.getCurrencyMinorUnitFactor(m)===1?d.toFixed(0):d.toFixed(2)}function te(h){return h.reduce((m,d)=>(m[d.code]=p.getCurrencyMinorUnitFactor(d.code)===1?"0":"0.00",m),{})}function N(h,m){const d=String(h||"").trim();if(!d)return null;const g=Number(d);return!Number.isFinite(g)||g<0?null:p.majorUnitAmountToMinor(g,m)}function J(h){return h.currencies.reduce((m,d)=>(m[d.code]=A(h.amounts[d.code],d.code),m),{})}function re({zoneId:h,zoneName:m,languages:d,currencies:g=[],defaultCurrencyCode:K="USD",mode:Q="create",initialData:l}){const[z,I]=i.useState(!1),S=Q==="edit",U=i.useMemo(()=>d.find(s=>s.is_default)||d[0]||null,[d]),B=i.useMemo(()=>d.filter(s=>!s.is_default),[d]),M=p.normalizeCurrencyCode(K),a=i.useMemo(()=>{const s=T.normalizeCurrencyRecord({code:M,symbol:M,exchange_rate:1,is_default:!0,is_active:!0}),n=(g.length>0?g:[s]).map(t=>T.normalizeCurrencyRecord(t)).filter(t=>t.is_active!==!1).sort((t,c)=>t.is_default!==c.is_default?t.is_default?-1:1:t.code.localeCompare(c.code));return n.length>0?n:[s]},[g,M]),f=i.useMemo(()=>a.find(s=>s.is_default)||a[0],[a]),[F,P]=i.useState(l?.name||""),[V,D]=i.useState(l?.name_translations||{}),[j,G]=i.useState(l?.method_type||"flat_rate"),[u,H]=i.useState($.normalizeShippingRateCurrencyMode(l?.currency_pricing_mode)),[o,O]=i.useState(p.normalizeCurrencyCode(l?.cost_currency||f?.code||M)),[b,_]=i.useState({}),[v,w]=i.useState({}),[E,k]=i.useState(!1),L=i.useMemo(()=>{if(u==="manual")return a.reduce((t,c)=>(t[c.code]=b[c.code]??"",t),{});const s=a.reduce((t,c)=>(t[c.code]=b[c.code]??(c.code===o,""),t),{}),n=N(b[o],o);if(n===null)return s;for(const t of a){if(t.code===o){s[t.code]=b[t.code]??A(n,t.code);continue}s[t.code]=A(T.convertMinorUnitAmount({amount:n,fromCurrencyCode:o,toCurrencyCode:t.code,currencies:a}),t.code)}return s},[a,b,u,o]),q=i.useMemo(()=>{if(u==="manual")return a.reduce((t,c)=>(t[c.code]=v[c.code]??"",t),{});const s=a.reduce((t,c)=>(t[c.code]=v[c.code]??"",t),{}),n=N(v[o],o);if(n===null)return s;for(const t of a){if(t.code===o){s[t.code]=v[t.code]??A(n,t.code);continue}s[t.code]=A(T.convertMinorUnitAmount({amount:n,fromCurrencyCode:o,toCurrencyCode:t.code,currencies:a}),t.code)}return s},[a,v,u,o]);i.useEffect(()=>{f&&(a.some(s=>s.code===o)||O(f.code))},[a,f,o]),i.useEffect(()=>{if(!z||!f)return;const s=$.normalizeShippingRateCurrencyMode(l?.currency_pricing_mode),n=$.sanitizeShippingRateAmountMaps({currencies:a,mode:s,sourceCurrencyCode:l?.cost_currency||f.code,costAmounts:l?.cost_amounts||void 0,minOrderAmounts:l?.min_order_amounts||void 0,fallbackCostAmount:l?.cost_amount,fallbackMinOrderAmount:l?.min_order_amount});P(l?.name||""),D(l?.name_translations||{}),G(l?.method_type||"flat_rate"),H(s),O(n.sourceCurrencyCode),_(J({amounts:n.costAmounts,currencies:a})),w(J({amounts:n.minOrderAmounts,currencies:a}))},[a,f,l,z]);const W=s=>{s!==u&&(s==="manual"&&(_(L),w(q)),H(s))},Y=s=>{const n=p.normalizeCurrencyCode(s);_(t=>({...t,[n]:L[n]??t[n]??""})),w(t=>({...t,[n]:q[n]??t[n]??""})),O(n)},ee=s=>{G(s),s==="free_shipping"&&_(te(a))},se=async s=>{s.preventDefault(),k(!0);const n={},t={};if(u==="manual")for(const R of a){const x=R.code;if(j==="free_shipping")n[x]=0;else{const X=N(b[x],x);if(X===null){k(!1),alert(`Enter a valid shipping cost for ${x}.`);return}n[x]=X}t[x]=N(v[x],x)??0}else{const R=j==="free_shipping"?0:N(b[o],o);if(R===null){k(!1),alert(`Enter a valid shipping cost for ${o}.`);return}n[o]=R,t[o]=N(v[o],o)??0}const c={name:F,nameTranslations:V,type:j,currencyPricingMode:u,sourceCurrencyCode:o,costAmounts:n,minOrderAmounts:t},y=S&&l?.id?await Z.updateShippingRate(l.id,c):await Z.createShippingRate(h,c);k(!1),y.success?I(!1):y.error&&alert(y.error)};return e.jsxs(r.Dialog,{open:z,onOpenChange:I,children:[e.jsx(r.DialogTrigger,{asChild:!0,children:S?e.jsx(r.Button,{variant:"ghost",size:"icon",className:"h-7 w-7 text-slate-400 hover:text-primary",children:e.jsx(C.Edit2,{className:"h-3 w-3"})}):e.jsxs(r.Button,{variant:"outline",size:"sm",className:"h-8 gap-1.5 border-dashed hover:border-solid shadow-sm",children:[e.jsx(C.Plus,{className:"h-3.5 w-3.5"}),"Add Rate"]})}),e.jsx(r.DialogContent,{className:"max-h-[85vh] max-w-4xl overflow-y-auto",children:e.jsxs("form",{onSubmit:se,children:[e.jsxs(r.DialogHeader,{children:[e.jsx(r.DialogTitle,{children:S?"Edit Shipping Rate":"Add Shipping Rate"}),e.jsxs(r.DialogDescription,{children:["Configure shipping costs and localized labels for matching orders in ",e.jsx("strong",{children:m}),"."]})]}),e.jsxs("div",{className:"grid gap-5 py-6",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsxs(r.Label,{htmlFor:"rate-name",children:["Rate Name",U?` (${U.name})`:""]}),e.jsx(r.Input,{id:"rate-name",value:F,onChange:s=>P(s.target.value),placeholder:"e.g. Standard, Express, Free Shipping",required:!0})]}),B.length>0&&e.jsxs("div",{className:"space-y-4 rounded-xl border bg-slate-50/70 p-4 dark:bg-slate-900/40",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(C.Languages,{className:"h-4 w-4 text-slate-500"}),e.jsxs("div",{children:[e.jsx("p",{className:"text-sm font-medium",children:"Translations"}),e.jsx("p",{className:"text-xs text-muted-foreground",children:"Add translated shipping rate labels for the active storefront languages."})]})]}),e.jsx("div",{className:"grid gap-4 md:grid-cols-2",children:B.map(s=>e.jsxs("div",{className:"space-y-2",children:[e.jsx(r.Label,{htmlFor:`rate-name-${s.code}`,children:s.name}),e.jsx(r.Input,{id:`rate-name-${s.code}`,value:V[s.code]||"",onChange:n=>D(t=>({...t,[s.code]:n.target.value})),placeholder:F||"Translated label"})]},s.code))})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(r.Label,{htmlFor:"type",children:"Method Type"}),e.jsxs(r.Select,{value:j,onValueChange:ee,children:[e.jsx(r.SelectTrigger,{id:"type",className:"bg-slate-50/50 dark:bg-slate-900/50",children:e.jsx(r.SelectValue,{placeholder:"Select type"})}),e.jsxs(r.SelectContent,{children:[e.jsx(r.SelectItem,{value:"flat_rate",children:e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("div",{className:"p-1 min-w-5 h-5 rounded bg-emerald-100 dark:bg-emerald-900/30 text-emerald-600",children:e.jsx(C.DollarSign,{className:"h-3 w-3"})}),e.jsx("span",{children:"Flat Rate"})]})}),e.jsx(r.SelectItem,{value:"free_shipping",children:e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("div",{className:"p-1 min-w-5 h-5 rounded bg-amber-100 dark:bg-amber-900/30 text-amber-600",children:e.jsx(C.Gift,{className:"h-3 w-3"})}),e.jsx("span",{children:"Free Shipping"})]})})]})]})]}),e.jsxs("div",{className:"space-y-3 rounded-xl border bg-slate-50/70 p-4 dark:bg-slate-900/40",children:[e.jsxs("label",{className:"flex items-start gap-3",children:[e.jsx("input",{type:"checkbox",checked:u==="auto",onChange:s=>W(s.target.checked?"auto":"manual"),className:"mt-1 h-4 w-4 rounded border-slate-300 text-primary focus:ring-primary"}),e.jsxs("span",{className:"space-y-1",children:[e.jsx("span",{className:"block text-sm font-medium text-slate-900 dark:text-slate-100",children:"Auto-sync all currency rates from one source amount"}),e.jsx("span",{className:"block text-xs text-muted-foreground",children:"Turn this off to set exact shipping costs and free-shipping thresholds for every active currency manually."})]})]}),u==="auto"?e.jsxs("div",{className:"space-y-2",children:[e.jsx(r.Label,{htmlFor:"rate-currency",children:"Sync From Currency"}),e.jsxs(r.Select,{value:o,onValueChange:Y,children:[e.jsx(r.SelectTrigger,{id:"rate-currency",className:"bg-background",children:e.jsx(r.SelectValue,{placeholder:"Select currency"})}),e.jsx(r.SelectContent,{children:a.map(s=>e.jsxs(r.SelectItem,{value:s.code,children:[s.code,s.is_default?" (Default)":""]},s.code))})]}),e.jsx("p",{className:"text-[10px] text-slate-500",children:"Enter the source amount once and the other currencies will be derived automatically using the current FX rates."})]}):e.jsx("p",{className:"text-[10px] text-slate-500",children:"Manual mode stores exact values per currency. This is the best choice when shipping should not follow exchange-rate math directly."})]}),e.jsxs("div",{className:"space-y-3",children:[e.jsxs("div",{children:[e.jsx("p",{className:"text-sm font-medium",children:"Currency Rates"}),e.jsx("p",{className:"text-xs text-muted-foreground",children:j==="free_shipping"?"Free-shipping methods keep cost at zero, but you can still control the threshold per currency.":u==="auto"?`Only ${o} is editable. The rest are derived automatically.`:"Set the exact shopper-facing shipping price for each active currency."})]}),e.jsx("div",{className:"grid gap-4 md:grid-cols-2 xl:grid-cols-3",children:a.map(s=>{const n=u==="auto"&&s.code!==o,t=p.getCurrencyMinorUnitFactor(s.code)===1?"1":"0.01";return e.jsxs("div",{className:"space-y-4 rounded-xl border bg-card/70 p-4 shadow-sm",children:[e.jsxs("div",{className:"flex items-center justify-between gap-2",children:[e.jsxs("div",{children:[e.jsx("p",{className:"font-medium",children:s.code}),e.jsxs("p",{className:"text-xs text-muted-foreground",children:["Rate ",s.exchange_rate]})]}),e.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[s.is_default?e.jsx(r.Badge,{variant:"outline",children:"Default"}):null,u==="auto"&&s.code===o?e.jsx(r.Badge,{children:"Source"}):null,n?e.jsx(r.Badge,{variant:"outline",children:"Derived"}):null]})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsxs(r.Label,{htmlFor:`rate-cost-${s.code}`,children:["Cost (",s.code,")"]}),e.jsxs("div",{className:"relative",children:[e.jsx(C.DollarSign,{className:"absolute left-2.5 top-2.5 h-4 w-4 text-slate-400"}),e.jsx(r.Input,{id:`rate-cost-${s.code}`,type:"number",step:t,min:"0",value:L[s.code]??"",onChange:c=>_(y=>({...y,[s.code]:c.target.value})),className:"pl-9 bg-slate-50/50 dark:bg-slate-900/50 disabled:opacity-70",disabled:j==="free_shipping"||n,required:j!=="free_shipping"&&u==="manual"})]})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsxs(r.Label,{htmlFor:`rate-threshold-${s.code}`,children:["Free-Shipping Threshold (",s.code,")"]}),e.jsxs("div",{className:"relative",children:[e.jsx(C.DollarSign,{className:"absolute left-2.5 top-2.5 h-4 w-4 text-slate-400"}),e.jsx(r.Input,{id:`rate-threshold-${s.code}`,type:"number",step:t,min:"0",value:q[s.code]??"",onChange:c=>w(y=>({...y,[s.code]:c.target.value})),className:"pl-9 bg-slate-50/50 dark:bg-slate-900/50 disabled:opacity-70",disabled:n,placeholder:p.getCurrencyMinorUnitFactor(s.code)===1?"0":"0.00"})]})]}),n?e.jsxs("p",{className:"text-[10px] text-muted-foreground",children:["This currency is synced automatically from ",o,"."]}):u==="manual"?e.jsx("p",{className:"text-[10px] text-muted-foreground",children:"Enter the exact amount shoppers should see in this currency."}):null]},s.code)})})]})]}),e.jsxs(r.DialogFooter,{className:"bg-slate-50 dark:bg-slate-900/50 -mx-6 -mb-6 p-4 border-t dark:border-slate-800",children:[e.jsx(r.Button,{type:"button",variant:"ghost",onClick:()=>I(!1),disabled:E,children:"Cancel"}),e.jsx(r.Button,{type:"submit",disabled:E||!F.trim(),children:E?S?"Saving...":"Adding...":S?"Save Changes":"Add Rate"})]})]})})]})}exports.RateForm=re;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-dev-runtime"),a=require("react"),r=require("@nextblock-cms/ui"),D=require("lucide-react"),Z=require("../server-actions.cjs.js"),b=require("@nextblock-cms/utils"),_=require("../../../../currency.cjs.js"),O=require("../../../../shipping-rate-currency.cjs.js");function R(u,p){if(typeof u!="number")return"";const c=b.minorUnitAmountToMajor(u,p);return b.getCurrencyMinorUnitFactor(p)===1?c.toFixed(0):c.toFixed(2)}function ne(u){return u.reduce((p,c)=>(p[c.code]=b.getCurrencyMinorUnitFactor(c.code)===1?"0":"0.00",p),{})}function v(u,p){const c=String(u||"").trim();if(!c)return null;const x=Number(c);return!Number.isFinite(x)||x<0?null:b.majorUnitAmountToMinor(x,p)}function J(u){return u.currencies.reduce((p,c)=>(p[c.code]=R(u.amounts[c.code],c.code),p),{})}function re({zoneId:u,zoneName:p,languages:c,currencies:x=[],defaultCurrencyCode:K="USD",mode:Q="create",initialData:l}){const[A,M]=a.useState(!1),C=Q==="edit",L=a.useMemo(()=>c.find(s=>s.is_default)||c[0]||null,[c]),q=a.useMemo(()=>c.filter(s=>!s.is_default),[c]),E=b.normalizeCurrencyCode(K),t=a.useMemo(()=>{const s=_.normalizeCurrencyRecord({code:E,symbol:E,exchange_rate:1,is_default:!0,is_active:!0}),i=(x.length>0?x:[s]).map(n=>_.normalizeCurrencyRecord(n)).filter(n=>n.is_active!==!1).sort((n,m)=>n.is_default!==m.is_default?n.is_default?-1:1:n.code.localeCompare(m.code));return i.length>0?i:[s]},[x,E]),N=a.useMemo(()=>t.find(s=>s.is_default)||t[0],[t]),[U,$]=a.useState(l?.name||""),[B,P]=a.useState(l?.name_translations||{}),[g,G]=a.useState(l?.method_type||"flat_rate"),[d,H]=a.useState(O.normalizeShippingRateCurrencyMode(l?.currency_pricing_mode)),[o,w]=a.useState(b.normalizeCurrencyCode(l?.cost_currency||N?.code||E)),[f,F]=a.useState({}),[k,V]=a.useState({}),[T,y]=a.useState(!1),z=a.useMemo(()=>{if(d==="manual")return t.reduce((n,m)=>(n[m.code]=f[m.code]??"",n),{});const s=t.reduce((n,m)=>(n[m.code]=f[m.code]??(m.code===o,""),n),{}),i=v(f[o],o);if(i===null)return s;for(const n of t){if(n.code===o){s[n.code]=f[n.code]??R(i,n.code);continue}s[n.code]=R(_.convertMinorUnitAmount({amount:i,fromCurrencyCode:o,toCurrencyCode:n.code,currencies:t}),n.code)}return s},[t,f,d,o]),I=a.useMemo(()=>{if(d==="manual")return t.reduce((n,m)=>(n[m.code]=k[m.code]??"",n),{});const s=t.reduce((n,m)=>(n[m.code]=k[m.code]??"",n),{}),i=v(k[o],o);if(i===null)return s;for(const n of t){if(n.code===o){s[n.code]=k[n.code]??R(i,n.code);continue}s[n.code]=R(_.convertMinorUnitAmount({amount:i,fromCurrencyCode:o,toCurrencyCode:n.code,currencies:t}),n.code)}return s},[t,k,d,o]);a.useEffect(()=>{N&&(t.some(s=>s.code===o)||w(N.code))},[t,N,o]),a.useEffect(()=>{if(!A||!N)return;const s=O.normalizeShippingRateCurrencyMode(l?.currency_pricing_mode),i=O.sanitizeShippingRateAmountMaps({currencies:t,mode:s,sourceCurrencyCode:l?.cost_currency||N.code,costAmounts:l?.cost_amounts||void 0,minOrderAmounts:l?.min_order_amounts||void 0,fallbackCostAmount:l?.cost_amount,fallbackMinOrderAmount:l?.min_order_amount});$(l?.name||""),P(l?.name_translations||{}),G(l?.method_type||"flat_rate"),H(s),w(i.sourceCurrencyCode),F(J({amounts:i.costAmounts,currencies:t})),V(J({amounts:i.minOrderAmounts,currencies:t}))},[t,N,l,A]);const W=s=>{s!==d&&(s==="manual"&&(F(z),V(I)),H(s))},Y=s=>{const i=b.normalizeCurrencyCode(s);F(n=>({...n,[i]:z[i]??n[i]??""})),V(n=>({...n,[i]:I[i]??n[i]??""})),w(i)},ee=s=>{G(s),s==="free_shipping"&&F(ne(t))},se=async s=>{s.preventDefault(),y(!0);const i={},n={};if(d==="manual")for(const S of t){const h=S.code;if(g==="free_shipping")i[h]=0;else{const X=v(f[h],h);if(X===null){y(!1),alert(`Enter a valid shipping cost for ${h}.`);return}i[h]=X}n[h]=v(k[h],h)??0}else{const S=g==="free_shipping"?0:v(f[o],o);if(S===null){y(!1),alert(`Enter a valid shipping cost for ${o}.`);return}i[o]=S,n[o]=v(k[o],o)??0}const m={name:U,nameTranslations:B,type:g,currencyPricingMode:d,sourceCurrencyCode:o,costAmounts:i,minOrderAmounts:n},j=C&&l?.id?await Z.updateShippingRate(l.id,m):await Z.createShippingRate(u,m);y(!1),j.success?M(!1):j.error&&alert(j.error)};return e.jsxDEV(r.Dialog,{open:A,onOpenChange:M,children:[e.jsxDEV(r.DialogTrigger,{asChild:!0,children:C?e.jsxDEV(r.Button,{variant:"ghost",size:"icon",className:"h-7 w-7 text-slate-400 hover:text-primary",children:e.jsxDEV(D.Edit2,{className:"h-3 w-3"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:450,columnNumber:25},this)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:449,columnNumber:21},this):e.jsxDEV(r.Button,{variant:"outline",size:"sm",className:"h-8 gap-1.5 border-dashed hover:border-solid shadow-sm",children:[e.jsxDEV(D.Plus,{className:"h-3.5 w-3.5"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:454,columnNumber:25},this),"Add Rate"]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:453,columnNumber:21},this)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:447,columnNumber:13},this),e.jsxDEV(r.DialogContent,{className:"max-h-[85vh] max-w-4xl overflow-y-auto",children:e.jsxDEV("form",{onSubmit:se,children:[e.jsxDEV(r.DialogHeader,{children:[e.jsxDEV(r.DialogTitle,{children:C?"Edit Shipping Rate":"Add Shipping Rate"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:462,columnNumber:25},this),e.jsxDEV(r.DialogDescription,{children:["Configure shipping costs and localized labels for matching orders in ",e.jsxDEV("strong",{children:p},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:464,columnNumber:98},this),"."]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:463,columnNumber:25},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:461,columnNumber:21},this),e.jsxDEV("div",{className:"grid gap-5 py-6",children:[e.jsxDEV("div",{className:"space-y-2",children:[e.jsxDEV(r.Label,{htmlFor:"rate-name",children:["Rate Name",L?` (${L.name})`:""]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:470,columnNumber:29},this),e.jsxDEV(r.Input,{id:"rate-name",value:U,onChange:s=>$(s.target.value),placeholder:"e.g. Standard, Express, Free Shipping",required:!0},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:473,columnNumber:29},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:469,columnNumber:25},this),q.length>0&&e.jsxDEV("div",{className:"space-y-4 rounded-xl border bg-slate-50/70 p-4 dark:bg-slate-900/40",children:[e.jsxDEV("div",{className:"flex items-center gap-2",children:[e.jsxDEV(D.Languages,{className:"h-4 w-4 text-slate-500"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:485,columnNumber:31},this),e.jsxDEV("div",{children:[e.jsxDEV("p",{className:"text-sm font-medium",children:"Translations"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:487,columnNumber:33},this),e.jsxDEV("p",{className:"text-xs text-muted-foreground",children:"Add translated shipping rate labels for the active storefront languages."},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:488,columnNumber:33},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:486,columnNumber:31},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:484,columnNumber:29},this),e.jsxDEV("div",{className:"grid gap-4 md:grid-cols-2",children:q.map(s=>e.jsxDEV("div",{className:"space-y-2",children:[e.jsxDEV(r.Label,{htmlFor:`rate-name-${s.code}`,children:s.name},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:497,columnNumber:35},this),e.jsxDEV(r.Input,{id:`rate-name-${s.code}`,value:B[s.code]||"",onChange:i=>P(n=>({...n,[s.code]:i.target.value})),placeholder:U||"Translated label"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:500,columnNumber:35},this)]},s.code,!0,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:496,columnNumber:33},this))},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:494,columnNumber:29},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:483,columnNumber:27},this),e.jsxDEV("div",{className:"space-y-2",children:[e.jsxDEV(r.Label,{htmlFor:"type",children:"Method Type"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:518,columnNumber:29},this),e.jsxDEV(r.Select,{value:g,onValueChange:ee,children:[e.jsxDEV(r.SelectTrigger,{id:"type",className:"bg-slate-50/50 dark:bg-slate-900/50",children:e.jsxDEV(r.SelectValue,{placeholder:"Select type"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:527,columnNumber:37},this)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:523,columnNumber:33},this),e.jsxDEV(r.SelectContent,{children:[e.jsxDEV(r.SelectItem,{value:"flat_rate",children:e.jsxDEV("div",{className:"flex items-center gap-2",children:[e.jsxDEV("div",{className:"p-1 min-w-5 h-5 rounded bg-emerald-100 dark:bg-emerald-900/30 text-emerald-600",children:e.jsxDEV(D.DollarSign,{className:"h-3 w-3"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:533,columnNumber:49},this)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:532,columnNumber:45},this),e.jsxDEV("span",{children:"Flat Rate"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:535,columnNumber:45},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:531,columnNumber:41},this)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:530,columnNumber:37},this),e.jsxDEV(r.SelectItem,{value:"free_shipping",children:e.jsxDEV("div",{className:"flex items-center gap-2",children:[e.jsxDEV("div",{className:"p-1 min-w-5 h-5 rounded bg-amber-100 dark:bg-amber-900/30 text-amber-600",children:e.jsxDEV(D.Gift,{className:"h-3 w-3"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:541,columnNumber:49},this)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:540,columnNumber:45},this),e.jsxDEV("span",{children:"Free Shipping"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:543,columnNumber:45},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:539,columnNumber:41},this)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:538,columnNumber:37},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:529,columnNumber:33},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:519,columnNumber:29},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:517,columnNumber:25},this),e.jsxDEV("div",{className:"space-y-3 rounded-xl border bg-slate-50/70 p-4 dark:bg-slate-900/40",children:[e.jsxDEV("label",{className:"flex items-start gap-3",children:[e.jsxDEV("input",{type:"checkbox",checked:d==="auto",onChange:s=>W(s.target.checked?"auto":"manual"),className:"mt-1 h-4 w-4 rounded border-slate-300 text-primary focus:ring-primary"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:552,columnNumber:33},this),e.jsxDEV("span",{className:"space-y-1",children:[e.jsxDEV("span",{className:"block text-sm font-medium text-slate-900 dark:text-slate-100",children:"Auto-sync all currency rates from one source amount"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:563,columnNumber:37},this),e.jsxDEV("span",{className:"block text-xs text-muted-foreground",children:"Turn this off to set exact shipping costs and free-shipping thresholds for every active currency manually."},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:566,columnNumber:37},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:562,columnNumber:33},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:551,columnNumber:29},this),d==="auto"?e.jsxDEV("div",{className:"space-y-2",children:[e.jsxDEV(r.Label,{htmlFor:"rate-currency",children:"Sync From Currency"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:574,columnNumber:37},this),e.jsxDEV(r.Select,{value:o,onValueChange:Y,children:[e.jsxDEV(r.SelectTrigger,{id:"rate-currency",className:"bg-background",children:e.jsxDEV(r.SelectValue,{placeholder:"Select currency"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:583,columnNumber:45},this)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:579,columnNumber:41},this),e.jsxDEV(r.SelectContent,{children:t.map(s=>e.jsxDEV(r.SelectItem,{value:s.code,children:[s.code,s.is_default?" (Default)":""]},s.code,!0,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:587,columnNumber:49},this))},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:585,columnNumber:41},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:575,columnNumber:37},this),e.jsxDEV("p",{className:"text-[10px] text-slate-500",children:"Enter the source amount once and the other currencies will be derived automatically using the current FX rates."},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:594,columnNumber:37},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:573,columnNumber:33},this):e.jsxDEV("p",{className:"text-[10px] text-slate-500",children:"Manual mode stores exact values per currency. This is the best choice when shipping should not follow exchange-rate math directly."},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:599,columnNumber:33},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:550,columnNumber:25},this),e.jsxDEV("div",{className:"space-y-3",children:[e.jsxDEV("div",{children:[e.jsxDEV("p",{className:"text-sm font-medium",children:"Currency Rates"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:607,columnNumber:33},this),e.jsxDEV("p",{className:"text-xs text-muted-foreground",children:g==="free_shipping"?"Free-shipping methods keep cost at zero, but you can still control the threshold per currency.":d==="auto"?`Only ${o} is editable. The rest are derived automatically.`:"Set the exact shopper-facing shipping price for each active currency."},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:608,columnNumber:33},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:606,columnNumber:29},this),e.jsxDEV("div",{className:"grid gap-4 md:grid-cols-2 xl:grid-cols-3",children:t.map(s=>{const i=d==="auto"&&s.code!==o,n=b.getCurrencyMinorUnitFactor(s.code)===1?"1":"0.01";return e.jsxDEV("div",{className:"space-y-4 rounded-xl border bg-card/70 p-4 shadow-sm",children:[e.jsxDEV("div",{className:"flex items-center justify-between gap-2",children:[e.jsxDEV("div",{children:[e.jsxDEV("p",{className:"font-medium",children:s.code},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:634,columnNumber:53},this),e.jsxDEV("p",{className:"text-xs text-muted-foreground",children:["Rate ",s.exchange_rate]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:635,columnNumber:53},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:633,columnNumber:49},this),e.jsxDEV("div",{className:"flex flex-wrap items-center gap-2",children:[s.is_default?e.jsxDEV(r.Badge,{variant:"outline",children:"Default"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:641,columnNumber:57},this):null,d==="auto"&&s.code===o?e.jsxDEV(r.Badge,{children:"Source"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:645,columnNumber:57},this):null,i?e.jsxDEV(r.Badge,{variant:"outline",children:"Derived"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:648,columnNumber:57},this):null]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:639,columnNumber:49},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:632,columnNumber:45},this),e.jsxDEV("div",{className:"space-y-2",children:[e.jsxDEV(r.Label,{htmlFor:`rate-cost-${s.code}`,children:["Cost (",s.code,")"]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:654,columnNumber:49},this),e.jsxDEV("div",{className:"relative",children:[e.jsxDEV(D.DollarSign,{className:"absolute left-2.5 top-2.5 h-4 w-4 text-slate-400"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:658,columnNumber:53},this),e.jsxDEV(r.Input,{id:`rate-cost-${s.code}`,type:"number",step:n,min:"0",value:z[s.code]??"",onChange:m=>F(j=>({...j,[s.code]:m.target.value})),className:"pl-9 bg-slate-50/50 dark:bg-slate-900/50 disabled:opacity-70",disabled:g==="free_shipping"||i,required:g!=="free_shipping"&&d==="manual"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:659,columnNumber:53},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:657,columnNumber:49},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:653,columnNumber:45},this),e.jsxDEV("div",{className:"space-y-2",children:[e.jsxDEV(r.Label,{htmlFor:`rate-threshold-${s.code}`,children:["Free-Shipping Threshold (",s.code,")"]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:682,columnNumber:49},this),e.jsxDEV("div",{className:"relative",children:[e.jsxDEV(D.DollarSign,{className:"absolute left-2.5 top-2.5 h-4 w-4 text-slate-400"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:686,columnNumber:53},this),e.jsxDEV(r.Input,{id:`rate-threshold-${s.code}`,type:"number",step:n,min:"0",value:I[s.code]??"",onChange:m=>V(j=>({...j,[s.code]:m.target.value})),className:"pl-9 bg-slate-50/50 dark:bg-slate-900/50 disabled:opacity-70",disabled:i,placeholder:b.getCurrencyMinorUnitFactor(s.code)===1?"0":"0.00"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:687,columnNumber:53},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:685,columnNumber:49},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:681,columnNumber:45},this),i?e.jsxDEV("p",{className:"text-[10px] text-muted-foreground",children:["This currency is synced automatically from ",o,"."]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:711,columnNumber:49},this):d==="manual"?e.jsxDEV("p",{className:"text-[10px] text-muted-foreground",children:"Enter the exact amount shoppers should see in this currency."},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:715,columnNumber:49},this):null]},s.code,!0,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:628,columnNumber:41},this)})},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:617,columnNumber:29},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:605,columnNumber:25},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:468,columnNumber:21},this),e.jsxDEV(r.DialogFooter,{className:"bg-slate-50 dark:bg-slate-900/50 -mx-6 -mb-6 p-4 border-t dark:border-slate-800",children:[e.jsxDEV(r.Button,{type:"button",variant:"ghost",onClick:()=>M(!1),disabled:T,children:"Cancel"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:727,columnNumber:25},this),e.jsxDEV(r.Button,{type:"submit",disabled:T||!U.trim(),children:T?C?"Saving...":"Adding...":C?"Save Changes":"Add Rate"},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:728,columnNumber:25},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:726,columnNumber:21},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:460,columnNumber:17},this)},void 0,!1,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:459,columnNumber:13},this)]},void 0,!0,{fileName:"C:/Users/desjardinsn/Desktop/nextblock/libs/ecommerce/src/lib/pages/cms/shipping/components/RateForm.tsx",lineNumber:446,columnNumber:9},this)}exports.RateForm=re;
|