@dropins/storefront-order 1.5.0-beta1 → 3.0.0-beta2
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/api/initialize/initialize.d.ts +1 -0
- package/api.js.map +1 -1
- package/chunks/CartSummaryItem.js +1 -1
- package/chunks/CartSummaryItem.js.map +1 -1
- package/chunks/OrderCancelForm.js.map +1 -1
- package/chunks/OrderLoaders.js +1 -1
- package/chunks/OrderLoaders.js.map +1 -1
- package/chunks/ReturnsListContent.js.map +1 -1
- package/chunks/ShippingStatusCard.js.map +1 -1
- package/chunks/capitalizeFirst.js.map +1 -1
- package/chunks/confirmCancelOrder.js.map +1 -1
- package/chunks/fetch-graphql.js.map +1 -1
- package/chunks/formatDateToLocale.js.map +1 -1
- package/chunks/getAttributesForm.js.map +1 -1
- package/chunks/getCustomerOrdersReturn.js.map +1 -1
- package/chunks/getFormValues.js.map +1 -1
- package/chunks/getGuestOrder.js.map +1 -1
- package/chunks/getQueryParam.js.map +1 -1
- package/chunks/getStoreConfig.js.map +1 -1
- package/chunks/initialize.js +7 -7
- package/chunks/initialize.js.map +1 -1
- package/chunks/network-error.js.map +1 -1
- package/chunks/requestGuestOrderCancel.js.map +1 -1
- package/chunks/requestGuestReturn.js.map +1 -1
- package/chunks/returnOrdersHelper.js.map +1 -1
- package/chunks/setTaxStatus.js.map +1 -1
- package/chunks/transform-attributes-form.js.map +1 -1
- package/chunks/useGetStoreConfig.js.map +1 -1
- package/chunks/useIsMobile.js.map +1 -1
- package/containers/CreateReturn.js +1 -1
- package/containers/CreateReturn.js.map +1 -1
- package/containers/CustomerDetails.js +1 -1
- package/containers/CustomerDetails.js.map +1 -1
- package/containers/OrderCostSummary.js +1 -1
- package/containers/OrderCostSummary.js.map +1 -1
- package/containers/OrderHeader.js +1 -1
- package/containers/OrderHeader.js.map +1 -1
- package/containers/OrderProductList.js.map +1 -1
- package/containers/OrderReturns.js.map +1 -1
- package/containers/OrderSearch.js +1 -1
- package/containers/OrderSearch.js.map +1 -1
- package/containers/OrderStatus.js +1 -1
- package/containers/OrderStatus.js.map +1 -1
- package/containers/ReturnsList.js.map +1 -1
- package/containers/ShippingStatus.js +1 -1
- package/containers/ShippingStatus.js.map +1 -1
- package/fragments.js.map +1 -1
- package/package.json +1 -1
- package/render.js.map +1 -1
- package/chunks/redirectTo.js +0 -4
- package/chunks/redirectTo.js.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*! Copyright 2025 Adobe
|
|
2
2
|
All Rights Reserved. */
|
|
3
|
-
import{jsx as a,jsxs as N}from"@dropins/tools/preact-jsx-runtime.js";import{classes as B,Slot as T}from"@dropins/tools/lib.js";import{Icon as H,Header as $,InLineAlert as W,Button as M,Checkbox as j,CartItem as G,Image as V}from"@dropins/tools/components.js";import{useState as w,useRef as Z,useEffect as q,useCallback as Q}from"@dropins/tools/preact-hooks.js";import{u as D,a as U}from"../chunks/ShippingStatusCard.js";import*as _ from"@dropins/tools/preact-compat.js";import{u as z}from"../chunks/useGetStoreConfig.js";import{createRef as J,Fragment as K}from"@dropins/tools/preact.js";import{s as X,p as Y,r as I,m as ee}from"../chunks/returnOrdersHelper.js";import{events as te}from"@dropins/tools/event-bus.js";import{g as A}from"../chunks/getQueryParam.js";import{g as re,r as ne,a as ae}from"../chunks/requestGuestReturn.js";import{s as se}from"../chunks/setTaxStatus.js";import{S as ce,C as ie}from"../chunks/CartSummaryItem.js";import{a as ue}from"../chunks/OrderLoaders.js";import{useText as oe}from"@dropins/tools/i18n.js";import"../chunks/getStoreConfig.js";import"../chunks/fetch-graphql.js";import"@dropins/tools/fetch-graphql.js";import"../chunks/getFormValues.js";import"../chunks/network-error.js";import"../chunks/transform-attributes-form.js";import"../fragments.js";import"../chunks/initialize.js";const le=s=>_.createElement("svg",{id:"Icon_Warning_Base",width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...s},_.createElement("g",{clipPath:"url(#clip0_841_1324)"},_.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M11.9949 2.30237L0.802734 21.6977H23.1977L11.9949 2.30237Z",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),_.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M12.4336 10.5504L12.3373 14.4766H11.6632L11.5669 10.5504V9.51273H12.4336V10.5504ZM11.5883 18.2636V17.2687H12.4229V18.2636H11.5883Z",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"})),_.createElement("defs",null,_.createElement("clipPath",{id:"clip0_841_1324"},_.createElement("rect",{width:24,height:21,fill:"white",transform:"translate(0 1.5)"})))),de=s=>_.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...s},_.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M0.75 12C0.75 5.78421 5.78421 0.75 12 0.75C18.2158 0.75 23.25 5.78421 23.25 12C23.25 18.2158 18.2158 23.25 12 23.25C5.78421 23.25 0.75 18.2158 0.75 12Z",stroke:"currentColor"}),_.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M6.75 12.762L10.2385 15.75L17.25 9",stroke:"currentColor"})),pe=({onSuccess:s,onError:n,handleSetInLineAlert:c,orderData:l})=>{const[R,L]=w(!1),[u,b]=w({id:"",email:"",...l}),[v,x]=w("products"),[h,d]=w(!0),[g,f]=w([]),[C,e]=w([]),[m,t]=w([]),o=Z([]);o.current.length!==g.length&&(o.current=g.map((r,p)=>o.current[p]||J())),q(()=>{const r=te.on("order/data",p=>{var i;b(p);const O=X(p);t(O),L(((i=A("orderRef"))==null?void 0:i.length)>20),d(!1)},{eager:!0});return()=>{r==null||r.off()}},[]),q(()=>{re("RMA_ITEM").then(r=>{r!=null&&r.length&&(e(r),d(!1))})},[]);const y=Q(r=>{f(p=>p.findIndex(i=>(i==null?void 0:i.productSku)===(r==null?void 0:r.productSku))>-1?p.filter(i=>(i==null?void 0:i.productSku)!==(r==null?void 0:r.productSku)):[...p,r])},[]),S=Q(r=>{x(r),c(),r==="products"&&f([])},[c]),E=Q((r,p)=>{const O=g.map(i=>i.productSku===p?{...i,currentReturnOrderQuantity:r}:i);f(O)},[g]),F=Q(async(r,p)=>{if(!p)return;d(!0);const O={orderUid:u.id,contactEmail:u.email},i=Y(o);R?ae({token:A("orderRef"),contactEmail:O.contactEmail,items:i,commentText:"."}).then(k=>{s==null||s(k),S("success"),c()}).catch(k=>{n==null||n(k.message),c({type:"error",heading:k.message})}):ne({...O,items:i}).then(k=>{s==null||s(k),S("success"),c()}).catch(k=>{n==null||n(k.message),c({type:"error",heading:k.message})}),d(!1)},[S,n,s,c,u,R]);return{order:u,steps:v,loading:h,formsRef:o,attributesList:C,selectedProductList:g,itemsEligibleForReturn:m,handleSelectedProductList:y,handleSetQuantity:E,handleChangeStep:S,onSubmit:F}},me={success:de,warning:le,error:ce},he=()=>{const[s,n]=w({type:"success",heading:""}),c=Q(l=>{if(!(l!=null&&l.type)){n({type:"success",heading:""});return}const R=a(H,{source:me[l.type]});n({...l,icon:R})},[]);return{inLineAlertProps:s,handleSetInLineAlert:c}},We=({className:s,orderData:n,slots:c,onSuccess:l,onError:R,routeReturnSuccess:L,showConfigurableOptions:u})=>{const b=oe({headerText:"Order.CreateReturn.headerText",successTitle:"Order.CreateReturn.success.title",successMessage:"Order.CreateReturn.success.message",sender:"Order.CreateReturn.giftCard.sender",recipient:"Order.CreateReturn.giftCard.recipient",message:"Order.CreateReturn.giftCard.message",outOfStock:"Order.CreateReturn.stockStatus.outOfStock",nextStep:"Order.CreateReturn.buttons.nextStep",backStep:"Order.CreateReturn.buttons.backStep",submit:"Order.CreateReturn.buttons.submit",backStore:"Order.CreateReturn.buttons.backStore",downloadableCount:"Order.CreateReturn.downloadableCount",returnedItems:"Order.CreateReturn.returnedItems",configurationsListQuantity:"Order.CreateReturn.configurationsList.quantity"}),{inLineAlertProps:v,handleSetInLineAlert:x}=he(),h=z(),{order:d,itemsEligibleForReturn:g,formsRef:f,attributesList:C,steps:e,loading:m,selectedProductList:t,handleSelectedProductList:o,handleSetQuantity:y,handleChangeStep:S,onSubmit:E}=pe({orderData:n,onSuccess:l,onError:R,handleSetInLineAlert:x});if(m)return a("div",{children:a(ue,{})});if(!m&&!C.length)return a("div",{});const F=(h==null?void 0:h.baseMediaUrl)??"",r={products:a(fe,{itemsEligibleForReturn:g,placeholderImage:F,taxConfig:se((h==null?void 0:h.shoppingOrderDisplayPrice)??0),slots:c,translations:b,loading:m,selectedProductList:t,handleSelectedProductList:o,showConfigurableOptions:u,handleSetQuantity:y,handleChangeStep:S}),attributes:a(ke,{placeholderImage:F,slots:c,formsRef:f,loading:m,fieldsConfig:C,selectedProductList:t,handleChangeStep:S,translations:b,onSubmit:E}),success:a(ge,{translations:b,routeReturnSuccess:L,orderData:d}),error:null};return N("div",{className:B(["order-create-return",s]),children:[a($,{title:b.headerText}),v.heading?a(W,{className:"order-create-return_notification",variant:"secondary","data-testid":"orderCreateReturnNotification",...v}):null,r[e]]})},ge=({routeReturnSuccess:s,translations:n,orderData:c})=>N("div",{className:"order-return-order-message",children:[a("p",{className:"order-return-order-message__title",children:n.successTitle}),a("p",{className:"order-return-order-message__subtitle",children:n.successMessage}),a(M,{href:(s==null?void 0:s(c))??"#",children:n.backStore})]}),fe=({placeholderImage:s,itemsEligibleForReturn:n,slots:c,loading:l,taxConfig:R,translations:L,selectedProductList:u,handleSelectedProductList:b,showConfigurableOptions:v,handleSetQuantity:x,handleChangeStep:h})=>N("ul",{className:"order-return-order-product-list",children:[n==null?void 0:n.map((d,g)=>{const{quantityReturnRequested:f,quantityShipped:C,eligibleForReturn:e}=d,m=u.some(y=>(y==null?void 0:y.productSku)===d.productSku&&d.eligibleForReturn),t=C===f&&e||!e,o=C-f===0?f:C-f;return N("li",{className:B(["order-return-order-product-list__item",["order-return-order-product-list__item--blur",t]]),children:[a(j,{"data-testid":`key_${g}`,name:`key_${g}`,checked:m,disabled:t,onChange:()=>{b({...d,currentReturnOrderQuantity:1})}}),a(ie,{slots:c,placeholderImage:s,loading:l,product:{...d,totalQuantity:o||1},itemType:"",taxConfig:R,translations:L,showConfigurableOptions:v,disabledIncrementer:!m,onQuantity:o>1?y=>{x(y,d.productSku)}:void 0}),a(T,{"data-testid":"returnOrderItem",name:"ReturnOrderItem",slot:c==null?void 0:c.ReturnOrderItem})]},d.id)}),a("li",{className:"order-return-order-product-list__item",children:a(M,{type:"button",onClick:()=>h("attributes"),disabled:!u.length,children:L.nextStep})})]}),ke=({placeholderImage:s,slots:n,formsRef:c,selectedProductList:l,loading:R,fieldsConfig:L,translations:u,handleChangeStep:b,onSubmit:v})=>{const{formData:x,errors:h,formRef:d,handleChange:g,handleBlur:f,handleSubmit:C}=D({fieldsConfig:I(L,l==null?void 0:l.length),onSubmit:v});return N("form",{className:"order-return-reason-form",ref:d,onSubmit:C,name:"returnReasonForm",children:[l.map((e,m)=>{var O,i,k,P;const t=e==null?void 0:e.giftCard,o=e==null?void 0:e.product,y=ee(L,m),S=`${e==null?void 0:e.id}_${m}`,E=(e==null?void 0:e.currentReturnOrderQuantity)??1,F={...e!=null&&e.currentReturnOrderQuantity?{[u.configurationsListQuantity]:E}:{},...e.configurableOptions||{},...e.bundleOptions||{},...t!=null&&t.senderName?{[u.sender]:t==null?void 0:t.senderName}:{},...t!=null&&t.senderEmail?{[u.sender]:t==null?void 0:t.senderEmail}:{},...t!=null&&t.recipientName?{[u.recipient]:t==null?void 0:t.recipientName}:{},...t!=null&&t.recipientEmail?{[u.recipient]:t==null?void 0:t.recipientEmail}:{},...t!=null&&t.message?{[u.message]:t==null?void 0:t.message}:{},...e!=null&&e.downloadableLinks?{[`${(O=e==null?void 0:e.downloadableLinks)==null?void 0:O.count} ${u.downloadableCount}`]:(i=e==null?void 0:e.downloadableLinks)==null?void 0:i.result}:{}},r=(k=e==null?void 0:e.product)==null?void 0:k.name,p={title:r,src:((P=o==null?void 0:o.thumbnail)==null?void 0:P.url)??s,alt:r,width:90,height:120,loading:"lazy"};return N(K,{children:[a(G,{loading:R,title:a("div",{"data-testid":"product-name",children:r}),sku:a("div",{children:o==null?void 0:o.sku}),image:a(T,{name:"ReturnReasonFormImage",slot:n==null?void 0:n.ReturnReasonFormImage,context:{data:e,defaultImageProps:p},children:a(V,{...p})}),configurations:F}),a("form",{name:S,ref:c==null?void 0:c.current[m],"data-quantity":E,children:a(U,{className:"className",loading:R,fields:y,onChange:g,onBlur:f,errors:h,values:x})})]},e.id)}),a(T,{"data-testid":"returnFormActions",name:"ReturnFormActions",slot:n==null?void 0:n.ReturnFormActions,context:{handleChangeStep:b},children:N("div",{className:"order-return-reason-form__actions",children:[a(M,{variant:"secondary",type:"button",onClick:()=>{b("products")},children:u.backStep}),a(M,{children:u.submit})]})})]})};export{We as CreateReturn,We as default};
|
|
3
|
+
import{jsx as a,jsxs as N}from"@dropins/tools/preact-jsx-runtime.js";import{classes as A,Slot as T}from"@dropins/tools/lib.js";import{Icon as B,Header as H,InLineAlert as $,Button as M,Checkbox as j,CartItem as G,Image as V}from"@dropins/tools/components.js";import{useState as w,useRef as Z,useEffect as q,useCallback as Q}from"@dropins/tools/preact-hooks.js";import{u as D,a as U}from"../chunks/ShippingStatusCard.js";import*as _ from"@dropins/tools/preact-compat.js";import{u as z}from"../chunks/useGetStoreConfig.js";import{createRef as J,Fragment as K}from"@dropins/tools/preact.js";import{s as X,p as Y,r as I,m as ee}from"../chunks/returnOrdersHelper.js";import{events as te}from"@dropins/tools/event-bus.js";import{g as W}from"../chunks/getQueryParam.js";import{g as re,r as ne,a as ae}from"../chunks/requestGuestReturn.js";import{s as se}from"../chunks/setTaxStatus.js";import{S as ie,C as ce}from"../chunks/CartSummaryItem.js";import{a as ue}from"../chunks/OrderLoaders.js";import{useText as oe}from"@dropins/tools/i18n.js";import"../chunks/getStoreConfig.js";import"../chunks/fetch-graphql.js";import"@dropins/tools/fetch-graphql.js";import"../chunks/getFormValues.js";import"../chunks/network-error.js";import"../chunks/transform-attributes-form.js";import"../fragments.js";import"../chunks/initialize.js";const le=s=>_.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...s},_.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M0.75 12C0.75 5.78421 5.78421 0.75 12 0.75C18.2158 0.75 23.25 5.78421 23.25 12C23.25 18.2158 18.2158 23.25 12 23.25C5.78421 23.25 0.75 18.2158 0.75 12Z",stroke:"currentColor"}),_.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M6.75 12.762L10.2385 15.75L17.25 9",stroke:"currentColor"})),de=s=>_.createElement("svg",{id:"Icon_Warning_Base",width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...s},_.createElement("g",{clipPath:"url(#clip0_841_1324)"},_.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M11.9949 2.30237L0.802734 21.6977H23.1977L11.9949 2.30237Z",stroke:"currentColor",strokeWidth:1,strokeLinecap:"round",strokeLinejoin:"round"}),_.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M12.4336 10.5504L12.3373 14.4766H11.6632L11.5669 10.5504V9.51273H12.4336V10.5504ZM11.5883 18.2636V17.2687H12.4229V18.2636H11.5883Z",stroke:"currentColor",strokeWidth:1,strokeLinecap:"round",strokeLinejoin:"round"})),_.createElement("defs",null,_.createElement("clipPath",{id:"clip0_841_1324"},_.createElement("rect",{width:24,height:21,fill:"white",transform:"translate(0 1.5)",strokeWidth:1})))),pe=({onSuccess:s,onError:n,handleSetInLineAlert:i,orderData:l})=>{const[R,L]=w(!1),[u,b]=w({id:"",email:"",...l}),[v,x]=w("products"),[h,d]=w(!0),[g,f]=w([]),[C,e]=w([]),[m,t]=w([]),o=Z([]);o.current.length!==g.length&&(o.current=g.map((r,p)=>o.current[p]||J())),q(()=>{const r=te.on("order/data",p=>{var c;b(p);const O=X(p);t(O),L(((c=W("orderRef"))==null?void 0:c.length)>20),d(!1)},{eager:!0});return()=>{r==null||r.off()}},[]),q(()=>{re("RMA_ITEM").then(r=>{r!=null&&r.length&&(e(r),d(!1))})},[]);const y=Q(r=>{f(p=>p.findIndex(c=>(c==null?void 0:c.productSku)===(r==null?void 0:r.productSku))>-1?p.filter(c=>(c==null?void 0:c.productSku)!==(r==null?void 0:r.productSku)):[...p,r])},[]),S=Q(r=>{x(r),i(),r==="products"&&f([])},[i]),E=Q((r,p)=>{const O=g.map(c=>c.productSku===p?{...c,currentReturnOrderQuantity:r}:c);f(O)},[g]),F=Q(async(r,p)=>{if(!p)return;d(!0);const O={orderUid:u.id,contactEmail:u.email},c=Y(o);R?ae({token:W("orderRef"),contactEmail:O.contactEmail,items:c,commentText:"."}).then(k=>{s==null||s(k),S("success"),i()}).catch(k=>{n==null||n(k.message),i({type:"error",heading:k.message})}):ne({...O,items:c}).then(k=>{s==null||s(k),S("success"),i()}).catch(k=>{n==null||n(k.message),i({type:"error",heading:k.message})}),d(!1)},[S,n,s,i,u,R]);return{order:u,steps:v,loading:h,formsRef:o,attributesList:C,selectedProductList:g,itemsEligibleForReturn:m,handleSelectedProductList:y,handleSetQuantity:E,handleChangeStep:S,onSubmit:F}},me={success:le,warning:de,error:ie},he=()=>{const[s,n]=w({type:"success",heading:""}),i=Q(l=>{if(!(l!=null&&l.type)){n({type:"success",heading:""});return}const R=a(B,{source:me[l.type]});n({...l,icon:R})},[]);return{inLineAlertProps:s,handleSetInLineAlert:i}},$e=({className:s,orderData:n,slots:i,onSuccess:l,onError:R,routeReturnSuccess:L,showConfigurableOptions:u})=>{const b=oe({headerText:"Order.CreateReturn.headerText",successTitle:"Order.CreateReturn.success.title",successMessage:"Order.CreateReturn.success.message",sender:"Order.CreateReturn.giftCard.sender",recipient:"Order.CreateReturn.giftCard.recipient",message:"Order.CreateReturn.giftCard.message",outOfStock:"Order.CreateReturn.stockStatus.outOfStock",nextStep:"Order.CreateReturn.buttons.nextStep",backStep:"Order.CreateReturn.buttons.backStep",submit:"Order.CreateReturn.buttons.submit",backStore:"Order.CreateReturn.buttons.backStore",downloadableCount:"Order.CreateReturn.downloadableCount",returnedItems:"Order.CreateReturn.returnedItems",configurationsListQuantity:"Order.CreateReturn.configurationsList.quantity"}),{inLineAlertProps:v,handleSetInLineAlert:x}=he(),h=z(),{order:d,itemsEligibleForReturn:g,formsRef:f,attributesList:C,steps:e,loading:m,selectedProductList:t,handleSelectedProductList:o,handleSetQuantity:y,handleChangeStep:S,onSubmit:E}=pe({orderData:n,onSuccess:l,onError:R,handleSetInLineAlert:x});if(m)return a("div",{children:a(ue,{})});if(!m&&!C.length)return a("div",{});const F=(h==null?void 0:h.baseMediaUrl)??"",r={products:a(fe,{itemsEligibleForReturn:g,placeholderImage:F,taxConfig:se((h==null?void 0:h.shoppingOrderDisplayPrice)??0),slots:i,translations:b,loading:m,selectedProductList:t,handleSelectedProductList:o,showConfigurableOptions:u,handleSetQuantity:y,handleChangeStep:S}),attributes:a(ke,{placeholderImage:F,slots:i,formsRef:f,loading:m,fieldsConfig:C,selectedProductList:t,handleChangeStep:S,translations:b,onSubmit:E}),success:a(ge,{translations:b,routeReturnSuccess:L,orderData:d}),error:null};return N("div",{className:A(["order-create-return",s]),children:[a(H,{title:b.headerText}),v.heading?a($,{className:"order-create-return_notification",variant:"secondary","data-testid":"orderCreateReturnNotification",...v}):null,r[e]]})},ge=({routeReturnSuccess:s,translations:n,orderData:i})=>N("div",{className:"order-return-order-message",children:[a("p",{className:"order-return-order-message__title",children:n.successTitle}),a("p",{className:"order-return-order-message__subtitle",children:n.successMessage}),a(M,{href:(s==null?void 0:s(i))??"#",children:n.backStore})]}),fe=({placeholderImage:s,itemsEligibleForReturn:n,slots:i,loading:l,taxConfig:R,translations:L,selectedProductList:u,handleSelectedProductList:b,showConfigurableOptions:v,handleSetQuantity:x,handleChangeStep:h})=>N("ul",{className:"order-return-order-product-list",children:[n==null?void 0:n.map((d,g)=>{const{quantityReturnRequested:f,quantityShipped:C,eligibleForReturn:e}=d,m=u.some(y=>(y==null?void 0:y.productSku)===d.productSku&&d.eligibleForReturn),t=C===f&&e||!e,o=C-f===0?f:C-f;return N("li",{className:A(["order-return-order-product-list__item",["order-return-order-product-list__item--blur",t]]),children:[a(j,{"data-testid":`key_${g}`,name:`key_${g}`,checked:m,disabled:t,onChange:()=>{b({...d,currentReturnOrderQuantity:1})}}),a(ce,{slots:i,placeholderImage:s,loading:l,product:{...d,totalQuantity:o||1},itemType:"",taxConfig:R,translations:L,showConfigurableOptions:v,disabledIncrementer:!m,onQuantity:o>1?y=>{x(y,d.productSku)}:void 0}),a(T,{"data-testid":"returnOrderItem",name:"ReturnOrderItem",slot:i==null?void 0:i.ReturnOrderItem})]},d.id)}),a("li",{className:"order-return-order-product-list__item",children:a(M,{type:"button",onClick:()=>h("attributes"),disabled:!u.length,children:L.nextStep})})]}),ke=({placeholderImage:s,slots:n,formsRef:i,selectedProductList:l,loading:R,fieldsConfig:L,translations:u,handleChangeStep:b,onSubmit:v})=>{const{formData:x,errors:h,formRef:d,handleChange:g,handleBlur:f,handleSubmit:C}=D({fieldsConfig:I(L,l==null?void 0:l.length),onSubmit:v});return N("form",{className:"order-return-reason-form",ref:d,onSubmit:C,name:"returnReasonForm",children:[l.map((e,m)=>{var O,c,k,P;const t=e==null?void 0:e.giftCard,o=e==null?void 0:e.product,y=ee(L,m),S=`${e==null?void 0:e.id}_${m}`,E=(e==null?void 0:e.currentReturnOrderQuantity)??1,F={...e!=null&&e.currentReturnOrderQuantity?{[u.configurationsListQuantity]:E}:{},...e.configurableOptions||{},...e.bundleOptions||{},...t!=null&&t.senderName?{[u.sender]:t==null?void 0:t.senderName}:{},...t!=null&&t.senderEmail?{[u.sender]:t==null?void 0:t.senderEmail}:{},...t!=null&&t.recipientName?{[u.recipient]:t==null?void 0:t.recipientName}:{},...t!=null&&t.recipientEmail?{[u.recipient]:t==null?void 0:t.recipientEmail}:{},...t!=null&&t.message?{[u.message]:t==null?void 0:t.message}:{},...e!=null&&e.downloadableLinks?{[`${(O=e==null?void 0:e.downloadableLinks)==null?void 0:O.count} ${u.downloadableCount}`]:(c=e==null?void 0:e.downloadableLinks)==null?void 0:c.result}:{}},r=(k=e==null?void 0:e.product)==null?void 0:k.name,p={title:r,src:((P=o==null?void 0:o.thumbnail)==null?void 0:P.url)??s,alt:r,width:90,height:120,loading:"lazy"};return N(K,{children:[a(G,{loading:R,title:a("div",{"data-testid":"product-name",children:r}),sku:a("div",{children:o==null?void 0:o.sku}),image:a(T,{name:"ReturnReasonFormImage",slot:n==null?void 0:n.ReturnReasonFormImage,context:{data:e,defaultImageProps:p},children:a(V,{...p})}),configurations:F}),a("form",{name:S,ref:i==null?void 0:i.current[m],"data-quantity":E,children:a(U,{className:"className",loading:R,fields:y,onChange:g,onBlur:f,errors:h,values:x})})]},e.id)}),a(T,{"data-testid":"returnFormActions",name:"ReturnFormActions",slot:n==null?void 0:n.ReturnFormActions,context:{handleChangeStep:b},children:N("div",{className:"order-return-reason-form__actions",children:[a(M,{variant:"secondary",type:"button",onClick:()=>{b("products")},children:u.backStep}),a(M,{children:u.submit})]})})]})};export{$e as CreateReturn,$e as default};
|
|
4
4
|
//# sourceMappingURL=CreateReturn.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CreateReturn.js","sources":["../../node_modules/@adobe-commerce/elsie/src/icons/Warning.svg","../../node_modules/@adobe-commerce/elsie/src/icons/CheckWithCircle.svg","/@dropins/storefront-order/src/hooks/containers/useCreateReturn.tsx","/@dropins/storefront-order/src/hooks/useInLineAlert.tsx","/@dropins/storefront-order/src/containers/CreateReturn/CreateReturn.tsx","/@dropins/storefront-order/src/components/ReturnOrderMessage/ReturnOrderMessage.tsx","/@dropins/storefront-order/src/components/ReturnOrderProductList/ReturnOrderProductList.tsx","/@dropins/storefront-order/src/components/ReturnReasonForm/ReturnReasonForm.tsx"],"sourcesContent":["import * as React from \"react\";\nconst SvgWarning = (props) => /* @__PURE__ */ React.createElement(\"svg\", { id: \"Icon_Warning_Base\", width: 24, height: 24, viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\", ...props }, /* @__PURE__ */ React.createElement(\"g\", { clipPath: \"url(#clip0_841_1324)\" }, /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M11.9949 2.30237L0.802734 21.6977H23.1977L11.9949 2.30237Z\", stroke: \"currentColor\", strokeLinecap: \"round\", strokeLinejoin: \"round\" }), /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M12.4336 10.5504L12.3373 14.4766H11.6632L11.5669 10.5504V9.51273H12.4336V10.5504ZM11.5883 18.2636V17.2687H12.4229V18.2636H11.5883Z\", stroke: \"currentColor\", strokeLinecap: \"round\", strokeLinejoin: \"round\" })), /* @__PURE__ */ React.createElement(\"defs\", null, /* @__PURE__ */ React.createElement(\"clipPath\", { id: \"clip0_841_1324\" }, /* @__PURE__ */ React.createElement(\"rect\", { width: 24, height: 21, fill: \"white\", transform: \"translate(0 1.5)\" }))));\nexport default SvgWarning;\n","import * as React from \"react\";\nconst SvgCheckWithCircle = (props) => /* @__PURE__ */ React.createElement(\"svg\", { width: 24, height: 24, viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M0.75 12C0.75 5.78421 5.78421 0.75 12 0.75C18.2158 0.75 23.25 5.78421 23.25 12C23.25 18.2158 18.2158 23.25 12 23.25C5.78421 23.25 0.75 18.2158 0.75 12Z\", stroke: \"currentColor\" }), /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M6.75 12.762L10.2385 15.75L17.25 9\", stroke: \"currentColor\" }));\nexport default SvgCheckWithCircle;\n","/********************************************************************\n * ADOBE CONFIDENTIAL\n *\n * Copyright 2024 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\n\nimport {\n getAttributesList,\n requestGuestReturn,\n requestReturn,\n} from '@/order/api';\nimport {\n AttributesFormModel,\n OrderDataModel,\n OrderItemModel,\n} from '@/order/data/models';\nimport { StepsTypes, UseCreateReturn } from '@/order/types';\nimport { useState, useCallback, useEffect, useRef } from 'preact/hooks';\nimport { createRef, RefObject } from 'preact';\nimport {\n processFormElement,\n sortItemsByCondition,\n} from '@/order/lib/returnOrdersHelper';\nimport { events } from '@adobe-commerce/event-bus';\nimport { getQueryParam } from '@/order/lib/getQueryParam';\n\nexport const useCreateReturn = ({\n onSuccess,\n onError,\n handleSetInLineAlert,\n orderData,\n}: UseCreateReturn) => {\n const [isGuestCreateReturn, setIsGuestCreateReturn] = useState(false);\n const [order, setOrder] = useState({ id: '', email: '', ...orderData });\n const [steps, setSteps] = useState<StepsTypes>('products');\n const [loading, setLoading] = useState(true);\n const [selectedProductList, setSelectedProductList] = useState<\n OrderItemModel[] | []\n >([]);\n const [attributesList, setAttributesList] = useState<\n AttributesFormModel[] | []\n >([]);\n const [itemsEligibleForReturn, setItemsEligibleForReturn] = useState<\n OrderItemModel[]\n >([]);\n\n const formsRef = useRef<RefObject<HTMLFormElement>[]>([]);\n\n if (formsRef.current.length !== selectedProductList.length) {\n formsRef.current = selectedProductList.map(\n (_, i) => formsRef.current[i] || createRef<HTMLFormElement>()\n );\n }\n\n useEffect(() => {\n const event = events.on(\n 'order/data',\n (order: OrderDataModel) => {\n setOrder(order);\n const sortedReturnItems = sortItemsByCondition(order);\n setItemsEligibleForReturn(sortedReturnItems);\n setIsGuestCreateReturn(getQueryParam('orderRef')?.length > 20);\n setLoading(false);\n },\n { eager: true }\n );\n\n return () => {\n event?.off();\n };\n }, []);\n\n useEffect(() => {\n getAttributesList('RMA_ITEM').then((response) => {\n if (!response?.length) return;\n\n setAttributesList(response);\n setLoading(false);\n });\n }, []);\n\n const handleSelectedProductList = useCallback((orderItem: OrderItemModel) => {\n setSelectedProductList((currentList) => {\n const index = currentList.findIndex(\n (item) => item?.productSku === orderItem?.productSku\n );\n\n if (index > -1) {\n return currentList.filter(\n (item) => item?.productSku !== orderItem?.productSku\n );\n }\n\n return [...currentList, orderItem];\n });\n }, []);\n\n const handleChangeStep = useCallback(\n (value: StepsTypes) => {\n setSteps(value);\n handleSetInLineAlert();\n if (value === 'products') {\n setSelectedProductList([]);\n }\n },\n [handleSetInLineAlert]\n );\n\n const handleSetQuantity = useCallback(\n (value: number, productSku: string) => {\n const result = selectedProductList.map((el) =>\n el.productSku === productSku\n ? { ...el, currentReturnOrderQuantity: value }\n : el\n );\n setSelectedProductList(result);\n },\n [selectedProductList]\n );\n\n const onSubmit = useCallback(\n async (\n _: SubmitEvent,\n isValid: boolean\n ): Promise<void | null | undefined> => {\n if (!isValid) return;\n\n setLoading(true);\n const orderReturnInfo = {\n orderUid: order.id,\n contactEmail: order.email,\n };\n const items = processFormElement(formsRef);\n\n if (!isGuestCreateReturn) {\n requestReturn({ ...orderReturnInfo, items })\n .then((response) => {\n onSuccess?.(response);\n handleChangeStep('success');\n handleSetInLineAlert();\n })\n .catch((error) => {\n onError?.(error.message);\n handleSetInLineAlert({ type: 'error', heading: error.message });\n });\n } else {\n requestGuestReturn({\n token: getQueryParam('orderRef'),\n contactEmail: orderReturnInfo.contactEmail,\n items,\n commentText: '.',\n })\n .then((response) => {\n onSuccess?.(response);\n handleChangeStep('success');\n handleSetInLineAlert();\n })\n .catch((error) => {\n onError?.(error.message);\n handleSetInLineAlert({ type: 'error', heading: error.message });\n });\n }\n\n setLoading(false);\n },\n [\n handleChangeStep,\n onError,\n onSuccess,\n handleSetInLineAlert,\n order,\n isGuestCreateReturn,\n ]\n );\n\n return {\n order,\n steps,\n loading,\n formsRef,\n attributesList,\n selectedProductList,\n itemsEligibleForReturn,\n handleSelectedProductList,\n handleSetQuantity,\n handleChangeStep,\n onSubmit,\n };\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\n *\n * Copyright 2024 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\n\nimport { useState, useCallback } from 'preact/hooks';\nimport { InLineAlertProps } from '../types';\nimport {\n CheckWithCircle as Success,\n Warning,\n WarningWithCircle as Error,\n} from '@adobe-commerce/elsie/icons';\nimport { Icon } from '@adobe-commerce/elsie/components';\n\nconst iconsList = {\n success: Success,\n warning: Warning,\n error: Error,\n};\n\nexport const useInLineAlert = () => {\n const [inLineAlertProps, setInLineAlertProps] = useState<InLineAlertProps>({\n type: 'success',\n heading: '',\n });\n\n const handleSetInLineAlert = useCallback(\n (notification: InLineAlertProps | undefined) => {\n if (!notification?.type) {\n setInLineAlertProps({ type: 'success', heading: '' });\n return;\n }\n\n const icon = <Icon source={iconsList[notification.type]} />;\n\n setInLineAlertProps({\n ...notification,\n icon,\n });\n },\n []\n );\n\n return { inLineAlertProps, handleSetInLineAlert };\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\n *\n * Copyright 2024 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\n\nimport { Container, classes } from '@adobe-commerce/elsie/lib';\nimport { CreateReturnProps } from '@/order/types/createReturn.types';\nimport {\n OrderProductListSkeleton,\n ReturnOrderMessage,\n ReturnOrderProductList,\n ReturnReasonForm,\n} from '@/order/components';\nimport { StepsTypes } from '@/order/types';\nimport {\n useCreateReturn,\n useInLineAlert,\n useGetStoreConfig,\n} from '@/order/hooks';\nimport { useText } from '@adobe-commerce/elsie/i18n';\nimport { Header, InLineAlert } from '@adobe-commerce/elsie/components';\nimport { h } from 'preact';\nimport { setTaxStatus } from '@/order/lib/setTaxStatus';\nimport { OrderDataModel } from '@/order/data/models';\n\nexport const CreateReturn: Container<CreateReturnProps> = ({\n className,\n orderData,\n slots,\n onSuccess,\n onError,\n routeReturnSuccess,\n showConfigurableOptions,\n}) => {\n const translations = useText({\n headerText: 'Order.CreateReturn.headerText',\n successTitle: 'Order.CreateReturn.success.title',\n successMessage: 'Order.CreateReturn.success.message',\n sender: 'Order.CreateReturn.giftCard.sender',\n recipient: 'Order.CreateReturn.giftCard.recipient',\n message: 'Order.CreateReturn.giftCard.message',\n outOfStock: 'Order.CreateReturn.stockStatus.outOfStock',\n nextStep: 'Order.CreateReturn.buttons.nextStep',\n backStep: 'Order.CreateReturn.buttons.backStep',\n submit: 'Order.CreateReturn.buttons.submit',\n backStore: 'Order.CreateReturn.buttons.backStore',\n downloadableCount: 'Order.CreateReturn.downloadableCount',\n returnedItems: 'Order.CreateReturn.returnedItems',\n configurationsListQuantity:\n 'Order.CreateReturn.configurationsList.quantity',\n });\n\n const { inLineAlertProps, handleSetInLineAlert } = useInLineAlert();\n const storeConfig = useGetStoreConfig();\n\n const {\n order,\n itemsEligibleForReturn,\n formsRef,\n attributesList,\n steps,\n loading,\n selectedProductList,\n handleSelectedProductList,\n handleSetQuantity,\n handleChangeStep,\n onSubmit,\n } = useCreateReturn({\n orderData,\n onSuccess,\n onError,\n handleSetInLineAlert,\n });\n\n if (loading)\n return (\n <div>\n <OrderProductListSkeleton />\n </div>\n );\n\n if (!loading && !attributesList.length) return <div />;\n\n const placeholderImage = storeConfig?.baseMediaUrl ?? '';\n\n const renderList: Record<StepsTypes, h.JSX.Element | null> = {\n products: (\n <ReturnOrderProductList\n itemsEligibleForReturn={itemsEligibleForReturn}\n placeholderImage={placeholderImage}\n taxConfig={setTaxStatus(storeConfig?.shoppingOrderDisplayPrice ?? 0)}\n slots={slots}\n translations={translations}\n loading={loading}\n selectedProductList={selectedProductList}\n handleSelectedProductList={handleSelectedProductList}\n showConfigurableOptions={showConfigurableOptions}\n handleSetQuantity={handleSetQuantity}\n handleChangeStep={handleChangeStep}\n />\n ),\n attributes: (\n <ReturnReasonForm\n placeholderImage={placeholderImage}\n slots={slots}\n formsRef={formsRef}\n loading={loading}\n fieldsConfig={attributesList}\n selectedProductList={selectedProductList}\n handleChangeStep={handleChangeStep}\n translations={translations}\n onSubmit={onSubmit}\n />\n ),\n success: (\n <ReturnOrderMessage\n translations={translations}\n routeReturnSuccess={routeReturnSuccess}\n orderData={order as OrderDataModel}\n />\n ),\n error: null,\n };\n\n return (\n <div className={classes(['order-create-return', className])}>\n <Header title={translations.headerText} />\n {inLineAlertProps.heading ? (\n <InLineAlert\n className=\"order-create-return_notification\"\n variant=\"secondary\"\n data-testid=\"orderCreateReturnNotification\"\n {...inLineAlertProps}\n />\n ) : null}\n {renderList[steps]}\n </div>\n );\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\n *\n * Copyright 2024 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\n\nimport { FunctionComponent } from 'preact';\nimport { ReturnOrderMessageProps } from '@/order/types/createReturn.types';\nimport '@/order/components/ReturnOrderMessage/ReturnOrderMessage.css';\nimport { Button } from '@adobe-commerce/elsie/components';\n\nexport const ReturnOrderMessage: FunctionComponent<ReturnOrderMessageProps> = ({\n routeReturnSuccess,\n translations,\n orderData,\n}) => {\n return (\n <div className={'order-return-order-message'}>\n <p className={'order-return-order-message__title'}>\n {translations.successTitle}\n </p>\n <p className={'order-return-order-message__subtitle'}>\n {translations.successMessage}\n </p>\n <Button href={routeReturnSuccess?.(orderData) ?? '#'}>\n {translations.backStore}\n </Button>\n </div>\n );\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\n *\n * Copyright 2024 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\n\nimport { FunctionComponent } from 'preact';\nimport { Button, Checkbox } from '@adobe-commerce/elsie/components';\nimport { ReturnOrderProductListProps } from '@/order/types/createReturn.types';\nimport { CartSummaryItem } from '@/order/components';\nimport { OrderItemModel } from '@/order/data/models';\nimport { classes, Slot } from '@adobe-commerce/elsie/lib';\nimport '@/order/components/ReturnOrderProductList/ReturnOrderProductList.css';\n\nexport const ReturnOrderProductList: FunctionComponent<\n ReturnOrderProductListProps\n> = ({\n placeholderImage,\n itemsEligibleForReturn,\n slots,\n loading,\n taxConfig,\n translations,\n selectedProductList,\n handleSelectedProductList,\n showConfigurableOptions,\n handleSetQuantity,\n handleChangeStep,\n}) => {\n return (\n <ul className={'order-return-order-product-list'}>\n {itemsEligibleForReturn?.map((item, index) => {\n const { quantityReturnRequested, quantityShipped, eligibleForReturn } =\n item;\n\n const checked = selectedProductList.some(\n (el: OrderItemModel) =>\n el?.productSku === item.productSku && item.eligibleForReturn\n );\n const disabled =\n (quantityShipped === quantityReturnRequested && eligibleForReturn) ||\n !eligibleForReturn;\n\n const totalQuantity =\n quantityShipped - quantityReturnRequested === 0\n ? quantityReturnRequested\n : quantityShipped - quantityReturnRequested;\n\n return (\n <li\n key={item.id}\n className={classes([\n 'order-return-order-product-list__item',\n ['order-return-order-product-list__item--blur', disabled],\n ])}\n >\n <Checkbox\n data-testid={`key_${index}`}\n name={`key_${index}`}\n checked={checked}\n disabled={disabled}\n onChange={() => {\n handleSelectedProductList({\n ...item,\n currentReturnOrderQuantity: 1,\n });\n }}\n />\n <CartSummaryItem\n slots={slots}\n placeholderImage={placeholderImage}\n loading={loading}\n product={{ ...item, totalQuantity: totalQuantity || 1 }}\n itemType={''}\n taxConfig={taxConfig}\n translations={translations}\n showConfigurableOptions={showConfigurableOptions}\n disabledIncrementer={!checked}\n onQuantity={\n totalQuantity > 1\n ? (value) => {\n handleSetQuantity(value, item.productSku!);\n }\n : undefined\n }\n />\n <Slot\n data-testid=\"returnOrderItem\"\n name=\"ReturnOrderItem\"\n slot={slots?.ReturnOrderItem}\n />\n </li>\n );\n })}\n <li className=\"order-return-order-product-list__item\">\n <Button\n type=\"button\"\n onClick={() => handleChangeStep('attributes')}\n disabled={!selectedProductList.length}\n >\n {translations.nextStep}\n </Button>\n </li>\n </ul>\n );\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\n *\n * Copyright 2024 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\n\nimport { Fragment, FunctionComponent } from 'preact';\nimport { Button, CartItem, Image } from '@adobe-commerce/elsie/components';\nimport { useForm } from '@/order/hooks/components/useForm';\nimport FormInputs from '../Form/FormInputs';\nimport {\n modifyFieldsConfig,\n replicateEntries,\n} from '@/order/lib/returnOrdersHelper';\nimport '@/order/components/ReturnReasonForm/ReturnReasonForm.css';\nimport { Slot } from '@adobe-commerce/elsie/lib';\nimport { ReturnReasonFormProps } from '@/order/types';\n\nexport const ReturnReasonForm: FunctionComponent<ReturnReasonFormProps> = ({\n placeholderImage,\n slots,\n formsRef,\n selectedProductList,\n loading,\n fieldsConfig,\n translations,\n handleChangeStep,\n onSubmit,\n}) => {\n const { formData, errors, formRef, handleChange, handleBlur, handleSubmit } =\n useForm({\n fieldsConfig: replicateEntries(fieldsConfig, selectedProductList?.length),\n onSubmit,\n });\n\n return (\n <form\n className=\"order-return-reason-form\"\n ref={formRef}\n onSubmit={handleSubmit}\n name={'returnReasonForm'}\n >\n {selectedProductList.map((orderItem, index) => {\n const giftCard = orderItem?.giftCard;\n const product = orderItem?.product;\n const fieldsList = modifyFieldsConfig(fieldsConfig, index);\n const formName = `${orderItem?.id}_${index}`;\n const quantity = orderItem?.currentReturnOrderQuantity! ?? 1;\n\n const configurations = {\n ...(orderItem?.currentReturnOrderQuantity\n ? { [translations.configurationsListQuantity]: quantity }\n : {}),\n ...(orderItem.configurableOptions || {}),\n ...(orderItem.bundleOptions || {}),\n ...(giftCard?.senderName\n ? { [translations.sender]: giftCard?.senderName }\n : {}),\n ...(giftCard?.senderEmail\n ? { [translations.sender]: giftCard?.senderEmail }\n : {}),\n ...(giftCard?.recipientName\n ? { [translations.recipient]: giftCard?.recipientName }\n : {}),\n ...(giftCard?.recipientEmail\n ? { [translations.recipient]: giftCard?.recipientEmail }\n : {}),\n ...(giftCard?.message\n ? { [translations.message]: giftCard?.message }\n : {}),\n ...(orderItem?.downloadableLinks\n ? {\n [`${orderItem?.downloadableLinks?.count} ${translations.downloadableCount}`]:\n orderItem?.downloadableLinks?.result,\n }\n : {}),\n };\n\n const productName = orderItem?.product?.name;\n\n const defaultImageProps = {\n title: productName,\n src: product?.thumbnail?.url ?? placeholderImage,\n alt: productName,\n width: 90,\n height: 120,\n loading: 'lazy',\n } as const;\n\n return (\n <Fragment key={orderItem.id}>\n <CartItem\n loading={loading}\n title={<div data-testid=\"product-name\">{productName}</div>}\n sku={<div>{product?.sku}</div>}\n image={\n <Slot\n name=\"ReturnReasonFormImage\"\n slot={slots?.ReturnReasonFormImage}\n context={{\n data: orderItem,\n defaultImageProps,\n }}\n >\n <Image {...defaultImageProps} />\n </Slot>\n }\n configurations={configurations}\n />\n <form\n name={formName}\n ref={formsRef?.current[index]}\n data-quantity={quantity}\n >\n <FormInputs\n className={'className'}\n loading={loading}\n fields={fieldsList}\n onChange={handleChange}\n onBlur={handleBlur}\n errors={errors}\n values={formData}\n />\n </form>\n </Fragment>\n );\n })}\n <Slot\n data-testid=\"returnFormActions\"\n name=\"ReturnFormActions\"\n slot={slots?.ReturnFormActions}\n context={{\n handleChangeStep,\n }}\n >\n <div className=\"order-return-reason-form__actions\">\n <Button\n variant=\"secondary\"\n type=\"button\"\n onClick={() => {\n handleChangeStep('products');\n }}\n >\n {translations.backStep}\n </Button>\n <Button>{translations.submit}</Button>\n </div>\n </Slot>\n </form>\n );\n};\n"],"names":["SvgWarning","props","React","SvgCheckWithCircle","useCreateReturn","onSuccess","onError","handleSetInLineAlert","orderData","isGuestCreateReturn","setIsGuestCreateReturn","useState","order","setOrder","steps","setSteps","loading","setLoading","selectedProductList","setSelectedProductList","attributesList","setAttributesList","itemsEligibleForReturn","setItemsEligibleForReturn","formsRef","useRef","_","i","createRef","useEffect","event","events","sortedReturnItems","sortItemsByCondition","_a","getQueryParam","getAttributesList","response","handleSelectedProductList","useCallback","orderItem","currentList","item","handleChangeStep","value","handleSetQuantity","productSku","result","el","onSubmit","isValid","orderReturnInfo","items","processFormElement","requestGuestReturn","error","requestReturn","iconsList","Success","Warning","Error","useInLineAlert","inLineAlertProps","setInLineAlertProps","notification","icon","jsx","Icon","CreateReturn","className","slots","routeReturnSuccess","showConfigurableOptions","translations","useText","storeConfig","useGetStoreConfig","OrderProductListSkeleton","placeholderImage","renderList","ReturnOrderProductList","setTaxStatus","ReturnReasonForm","ReturnOrderMessage","jsxs","classes","Header","InLineAlert","Button","taxConfig","index","quantityReturnRequested","quantityShipped","eligibleForReturn","checked","disabled","totalQuantity","Checkbox","CartSummaryItem","Slot","fieldsConfig","formData","errors","formRef","handleChange","handleBlur","handleSubmit","useForm","replicateEntries","giftCard","product","fieldsList","modifyFieldsConfig","formName","quantity","configurations","_b","productName","_c","defaultImageProps","_d","Fragment","CartItem","Image","FormInputs"],"mappings":"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","x_google_ignoreList":[0,1]}
|
|
1
|
+
{"version":3,"file":"CreateReturn.js","sources":["../../node_modules/@adobe-commerce/elsie/src/icons/CheckWithCircle.svg","../../node_modules/@adobe-commerce/elsie/src/icons/Warning.svg","/@dropins/storefront-order/src/hooks/containers/useCreateReturn.tsx","/@dropins/storefront-order/src/hooks/useInLineAlert.tsx","/@dropins/storefront-order/src/containers/CreateReturn/CreateReturn.tsx","/@dropins/storefront-order/src/components/ReturnOrderMessage/ReturnOrderMessage.tsx","/@dropins/storefront-order/src/components/ReturnOrderProductList/ReturnOrderProductList.tsx","/@dropins/storefront-order/src/components/ReturnReasonForm/ReturnReasonForm.tsx"],"sourcesContent":["import * as React from \"react\";\nconst SvgCheckWithCircle = (props) => /* @__PURE__ */ React.createElement(\"svg\", { width: 24, height: 24, viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M0.75 12C0.75 5.78421 5.78421 0.75 12 0.75C18.2158 0.75 23.25 5.78421 23.25 12C23.25 18.2158 18.2158 23.25 12 23.25C5.78421 23.25 0.75 18.2158 0.75 12Z\", stroke: \"currentColor\" }), /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M6.75 12.762L10.2385 15.75L17.25 9\", stroke: \"currentColor\" }));\nexport default SvgCheckWithCircle;\n","import * as React from \"react\";\nconst SvgWarning = (props) => /* @__PURE__ */ React.createElement(\"svg\", { id: \"Icon_Warning_Base\", width: 24, height: 24, viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\", ...props }, /* @__PURE__ */ React.createElement(\"g\", { clipPath: \"url(#clip0_841_1324)\" }, /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M11.9949 2.30237L0.802734 21.6977H23.1977L11.9949 2.30237Z\", stroke: \"currentColor\", strokeWidth: 1, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M12.4336 10.5504L12.3373 14.4766H11.6632L11.5669 10.5504V9.51273H12.4336V10.5504ZM11.5883 18.2636V17.2687H12.4229V18.2636H11.5883Z\", stroke: \"currentColor\", strokeWidth: 1, strokeLinecap: \"round\", strokeLinejoin: \"round\" })), /* @__PURE__ */ React.createElement(\"defs\", null, /* @__PURE__ */ React.createElement(\"clipPath\", { id: \"clip0_841_1324\" }, /* @__PURE__ */ React.createElement(\"rect\", { width: 24, height: 21, fill: \"white\", transform: \"translate(0 1.5)\", strokeWidth: 1 }))));\nexport default SvgWarning;\n","/********************************************************************\n * ADOBE CONFIDENTIAL\n *\n * Copyright 2024 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\n\nimport {\n getAttributesList,\n requestGuestReturn,\n requestReturn,\n} from '@/order/api';\nimport {\n AttributesFormModel,\n OrderDataModel,\n OrderItemModel,\n} from '@/order/data/models';\nimport { StepsTypes, UseCreateReturn } from '@/order/types';\nimport { useState, useCallback, useEffect, useRef } from 'preact/hooks';\nimport { createRef, RefObject } from 'preact';\nimport {\n processFormElement,\n sortItemsByCondition,\n} from '@/order/lib/returnOrdersHelper';\nimport { events } from '@adobe-commerce/event-bus';\nimport { getQueryParam } from '@/order/lib/getQueryParam';\n\nexport const useCreateReturn = ({\n onSuccess,\n onError,\n handleSetInLineAlert,\n orderData,\n}: UseCreateReturn) => {\n const [isGuestCreateReturn, setIsGuestCreateReturn] = useState(false);\n const [order, setOrder] = useState({ id: '', email: '', ...orderData });\n const [steps, setSteps] = useState<StepsTypes>('products');\n const [loading, setLoading] = useState(true);\n const [selectedProductList, setSelectedProductList] = useState<\n OrderItemModel[] | []\n >([]);\n const [attributesList, setAttributesList] = useState<\n AttributesFormModel[] | []\n >([]);\n const [itemsEligibleForReturn, setItemsEligibleForReturn] = useState<\n OrderItemModel[]\n >([]);\n\n const formsRef = useRef<RefObject<HTMLFormElement>[]>([]);\n\n if (formsRef.current.length !== selectedProductList.length) {\n formsRef.current = selectedProductList.map(\n (_, i) => formsRef.current[i] || createRef<HTMLFormElement>()\n );\n }\n\n useEffect(() => {\n const event = events.on(\n 'order/data',\n (order: OrderDataModel) => {\n setOrder(order);\n const sortedReturnItems = sortItemsByCondition(order);\n setItemsEligibleForReturn(sortedReturnItems);\n setIsGuestCreateReturn(getQueryParam('orderRef')?.length > 20);\n setLoading(false);\n },\n { eager: true }\n );\n\n return () => {\n event?.off();\n };\n }, []);\n\n useEffect(() => {\n getAttributesList('RMA_ITEM').then((response) => {\n if (!response?.length) return;\n\n setAttributesList(response);\n setLoading(false);\n });\n }, []);\n\n const handleSelectedProductList = useCallback((orderItem: OrderItemModel) => {\n setSelectedProductList((currentList) => {\n const index = currentList.findIndex(\n (item) => item?.productSku === orderItem?.productSku\n );\n\n if (index > -1) {\n return currentList.filter(\n (item) => item?.productSku !== orderItem?.productSku\n );\n }\n\n return [...currentList, orderItem];\n });\n }, []);\n\n const handleChangeStep = useCallback(\n (value: StepsTypes) => {\n setSteps(value);\n handleSetInLineAlert();\n if (value === 'products') {\n setSelectedProductList([]);\n }\n },\n [handleSetInLineAlert]\n );\n\n const handleSetQuantity = useCallback(\n (value: number, productSku: string) => {\n const result = selectedProductList.map((el) =>\n el.productSku === productSku\n ? { ...el, currentReturnOrderQuantity: value }\n : el\n );\n setSelectedProductList(result);\n },\n [selectedProductList]\n );\n\n const onSubmit = useCallback(\n async (\n _: SubmitEvent,\n isValid: boolean\n ): Promise<void | null | undefined> => {\n if (!isValid) return;\n\n setLoading(true);\n const orderReturnInfo = {\n orderUid: order.id,\n contactEmail: order.email,\n };\n const items = processFormElement(formsRef);\n\n if (!isGuestCreateReturn) {\n requestReturn({ ...orderReturnInfo, items })\n .then((response) => {\n onSuccess?.(response);\n handleChangeStep('success');\n handleSetInLineAlert();\n })\n .catch((error) => {\n onError?.(error.message);\n handleSetInLineAlert({ type: 'error', heading: error.message });\n });\n } else {\n requestGuestReturn({\n token: getQueryParam('orderRef'),\n contactEmail: orderReturnInfo.contactEmail,\n items,\n commentText: '.',\n })\n .then((response) => {\n onSuccess?.(response);\n handleChangeStep('success');\n handleSetInLineAlert();\n })\n .catch((error) => {\n onError?.(error.message);\n handleSetInLineAlert({ type: 'error', heading: error.message });\n });\n }\n\n setLoading(false);\n },\n [\n handleChangeStep,\n onError,\n onSuccess,\n handleSetInLineAlert,\n order,\n isGuestCreateReturn,\n ]\n );\n\n return {\n order,\n steps,\n loading,\n formsRef,\n attributesList,\n selectedProductList,\n itemsEligibleForReturn,\n handleSelectedProductList,\n handleSetQuantity,\n handleChangeStep,\n onSubmit,\n };\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\n *\n * Copyright 2024 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\n\nimport { useState, useCallback } from 'preact/hooks';\nimport { InLineAlertProps } from '../types';\nimport {\n CheckWithCircle as Success,\n Warning,\n WarningWithCircle as Error,\n} from '@adobe-commerce/elsie/icons';\nimport { Icon } from '@adobe-commerce/elsie/components';\n\nconst iconsList = {\n success: Success,\n warning: Warning,\n error: Error,\n};\n\nexport const useInLineAlert = () => {\n const [inLineAlertProps, setInLineAlertProps] = useState<InLineAlertProps>({\n type: 'success',\n heading: '',\n });\n\n const handleSetInLineAlert = useCallback(\n (notification: InLineAlertProps | undefined) => {\n if (!notification?.type) {\n setInLineAlertProps({ type: 'success', heading: '' });\n return;\n }\n\n const icon = <Icon source={iconsList[notification.type]} />;\n\n setInLineAlertProps({\n ...notification,\n icon,\n });\n },\n []\n );\n\n return { inLineAlertProps, handleSetInLineAlert };\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\n *\n * Copyright 2024 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\n\nimport { Container, classes } from '@adobe-commerce/elsie/lib';\nimport { CreateReturnProps } from '@/order/types/createReturn.types';\nimport {\n OrderProductListSkeleton,\n ReturnOrderMessage,\n ReturnOrderProductList,\n ReturnReasonForm,\n} from '@/order/components';\nimport { StepsTypes } from '@/order/types';\nimport {\n useCreateReturn,\n useInLineAlert,\n useGetStoreConfig,\n} from '@/order/hooks';\nimport { useText } from '@adobe-commerce/elsie/i18n';\nimport { Header, InLineAlert } from '@adobe-commerce/elsie/components';\nimport { h } from 'preact';\nimport { setTaxStatus } from '@/order/lib/setTaxStatus';\nimport { OrderDataModel } from '@/order/data/models';\n\nexport const CreateReturn: Container<CreateReturnProps> = ({\n className,\n orderData,\n slots,\n onSuccess,\n onError,\n routeReturnSuccess,\n showConfigurableOptions,\n}) => {\n const translations = useText({\n headerText: 'Order.CreateReturn.headerText',\n successTitle: 'Order.CreateReturn.success.title',\n successMessage: 'Order.CreateReturn.success.message',\n sender: 'Order.CreateReturn.giftCard.sender',\n recipient: 'Order.CreateReturn.giftCard.recipient',\n message: 'Order.CreateReturn.giftCard.message',\n outOfStock: 'Order.CreateReturn.stockStatus.outOfStock',\n nextStep: 'Order.CreateReturn.buttons.nextStep',\n backStep: 'Order.CreateReturn.buttons.backStep',\n submit: 'Order.CreateReturn.buttons.submit',\n backStore: 'Order.CreateReturn.buttons.backStore',\n downloadableCount: 'Order.CreateReturn.downloadableCount',\n returnedItems: 'Order.CreateReturn.returnedItems',\n configurationsListQuantity:\n 'Order.CreateReturn.configurationsList.quantity',\n });\n\n const { inLineAlertProps, handleSetInLineAlert } = useInLineAlert();\n const storeConfig = useGetStoreConfig();\n\n const {\n order,\n itemsEligibleForReturn,\n formsRef,\n attributesList,\n steps,\n loading,\n selectedProductList,\n handleSelectedProductList,\n handleSetQuantity,\n handleChangeStep,\n onSubmit,\n } = useCreateReturn({\n orderData,\n onSuccess,\n onError,\n handleSetInLineAlert,\n });\n\n if (loading)\n return (\n <div>\n <OrderProductListSkeleton />\n </div>\n );\n\n if (!loading && !attributesList.length) return <div />;\n\n const placeholderImage = storeConfig?.baseMediaUrl ?? '';\n\n const renderList: Record<StepsTypes, h.JSX.Element | null> = {\n products: (\n <ReturnOrderProductList\n itemsEligibleForReturn={itemsEligibleForReturn}\n placeholderImage={placeholderImage}\n taxConfig={setTaxStatus(storeConfig?.shoppingOrderDisplayPrice ?? 0)}\n slots={slots}\n translations={translations}\n loading={loading}\n selectedProductList={selectedProductList}\n handleSelectedProductList={handleSelectedProductList}\n showConfigurableOptions={showConfigurableOptions}\n handleSetQuantity={handleSetQuantity}\n handleChangeStep={handleChangeStep}\n />\n ),\n attributes: (\n <ReturnReasonForm\n placeholderImage={placeholderImage}\n slots={slots}\n formsRef={formsRef}\n loading={loading}\n fieldsConfig={attributesList}\n selectedProductList={selectedProductList}\n handleChangeStep={handleChangeStep}\n translations={translations}\n onSubmit={onSubmit}\n />\n ),\n success: (\n <ReturnOrderMessage\n translations={translations}\n routeReturnSuccess={routeReturnSuccess}\n orderData={order as OrderDataModel}\n />\n ),\n error: null,\n };\n\n return (\n <div className={classes(['order-create-return', className])}>\n <Header title={translations.headerText} />\n {inLineAlertProps.heading ? (\n <InLineAlert\n className=\"order-create-return_notification\"\n variant=\"secondary\"\n data-testid=\"orderCreateReturnNotification\"\n {...inLineAlertProps}\n />\n ) : null}\n {renderList[steps]}\n </div>\n );\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\n *\n * Copyright 2024 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\n\nimport { FunctionComponent } from 'preact';\nimport { ReturnOrderMessageProps } from '@/order/types/createReturn.types';\nimport '@/order/components/ReturnOrderMessage/ReturnOrderMessage.css';\nimport { Button } from '@adobe-commerce/elsie/components';\n\nexport const ReturnOrderMessage: FunctionComponent<ReturnOrderMessageProps> = ({\n routeReturnSuccess,\n translations,\n orderData,\n}) => {\n return (\n <div className={'order-return-order-message'}>\n <p className={'order-return-order-message__title'}>\n {translations.successTitle}\n </p>\n <p className={'order-return-order-message__subtitle'}>\n {translations.successMessage}\n </p>\n <Button href={routeReturnSuccess?.(orderData) ?? '#'}>\n {translations.backStore}\n </Button>\n </div>\n );\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\n *\n * Copyright 2024 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\n\nimport { FunctionComponent } from 'preact';\nimport { Button, Checkbox } from '@adobe-commerce/elsie/components';\nimport { ReturnOrderProductListProps } from '@/order/types/createReturn.types';\nimport { CartSummaryItem } from '@/order/components';\nimport { OrderItemModel } from '@/order/data/models';\nimport { classes, Slot } from '@adobe-commerce/elsie/lib';\nimport '@/order/components/ReturnOrderProductList/ReturnOrderProductList.css';\n\nexport const ReturnOrderProductList: FunctionComponent<\n ReturnOrderProductListProps\n> = ({\n placeholderImage,\n itemsEligibleForReturn,\n slots,\n loading,\n taxConfig,\n translations,\n selectedProductList,\n handleSelectedProductList,\n showConfigurableOptions,\n handleSetQuantity,\n handleChangeStep,\n}) => {\n return (\n <ul className={'order-return-order-product-list'}>\n {itemsEligibleForReturn?.map((item, index) => {\n const { quantityReturnRequested, quantityShipped, eligibleForReturn } =\n item;\n\n const checked = selectedProductList.some(\n (el: OrderItemModel) =>\n el?.productSku === item.productSku && item.eligibleForReturn\n );\n const disabled =\n (quantityShipped === quantityReturnRequested && eligibleForReturn) ||\n !eligibleForReturn;\n\n const totalQuantity =\n quantityShipped - quantityReturnRequested === 0\n ? quantityReturnRequested\n : quantityShipped - quantityReturnRequested;\n\n return (\n <li\n key={item.id}\n className={classes([\n 'order-return-order-product-list__item',\n ['order-return-order-product-list__item--blur', disabled],\n ])}\n >\n <Checkbox\n data-testid={`key_${index}`}\n name={`key_${index}`}\n checked={checked}\n disabled={disabled}\n onChange={() => {\n handleSelectedProductList({\n ...item,\n currentReturnOrderQuantity: 1,\n });\n }}\n />\n <CartSummaryItem\n slots={slots}\n placeholderImage={placeholderImage}\n loading={loading}\n product={{ ...item, totalQuantity: totalQuantity || 1 }}\n itemType={''}\n taxConfig={taxConfig}\n translations={translations}\n showConfigurableOptions={showConfigurableOptions}\n disabledIncrementer={!checked}\n onQuantity={\n totalQuantity > 1\n ? (value) => {\n handleSetQuantity(value, item.productSku!);\n }\n : undefined\n }\n />\n <Slot\n data-testid=\"returnOrderItem\"\n name=\"ReturnOrderItem\"\n slot={slots?.ReturnOrderItem}\n />\n </li>\n );\n })}\n <li className=\"order-return-order-product-list__item\">\n <Button\n type=\"button\"\n onClick={() => handleChangeStep('attributes')}\n disabled={!selectedProductList.length}\n >\n {translations.nextStep}\n </Button>\n </li>\n </ul>\n );\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\n *\n * Copyright 2024 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\n\nimport { Fragment, FunctionComponent } from 'preact';\nimport { Button, CartItem, Image } from '@adobe-commerce/elsie/components';\nimport { useForm } from '@/order/hooks/components/useForm';\nimport FormInputs from '../Form/FormInputs';\nimport {\n modifyFieldsConfig,\n replicateEntries,\n} from '@/order/lib/returnOrdersHelper';\nimport '@/order/components/ReturnReasonForm/ReturnReasonForm.css';\nimport { Slot } from '@adobe-commerce/elsie/lib';\nimport { ReturnReasonFormProps } from '@/order/types';\n\nexport const ReturnReasonForm: FunctionComponent<ReturnReasonFormProps> = ({\n placeholderImage,\n slots,\n formsRef,\n selectedProductList,\n loading,\n fieldsConfig,\n translations,\n handleChangeStep,\n onSubmit,\n}) => {\n const { formData, errors, formRef, handleChange, handleBlur, handleSubmit } =\n useForm({\n fieldsConfig: replicateEntries(fieldsConfig, selectedProductList?.length),\n onSubmit,\n });\n\n return (\n <form\n className=\"order-return-reason-form\"\n ref={formRef}\n onSubmit={handleSubmit}\n name={'returnReasonForm'}\n >\n {selectedProductList.map((orderItem, index) => {\n const giftCard = orderItem?.giftCard;\n const product = orderItem?.product;\n const fieldsList = modifyFieldsConfig(fieldsConfig, index);\n const formName = `${orderItem?.id}_${index}`;\n const quantity = orderItem?.currentReturnOrderQuantity! ?? 1;\n\n const configurations = {\n ...(orderItem?.currentReturnOrderQuantity\n ? { [translations.configurationsListQuantity]: quantity }\n : {}),\n ...(orderItem.configurableOptions || {}),\n ...(orderItem.bundleOptions || {}),\n ...(giftCard?.senderName\n ? { [translations.sender]: giftCard?.senderName }\n : {}),\n ...(giftCard?.senderEmail\n ? { [translations.sender]: giftCard?.senderEmail }\n : {}),\n ...(giftCard?.recipientName\n ? { [translations.recipient]: giftCard?.recipientName }\n : {}),\n ...(giftCard?.recipientEmail\n ? { [translations.recipient]: giftCard?.recipientEmail }\n : {}),\n ...(giftCard?.message\n ? { [translations.message]: giftCard?.message }\n : {}),\n ...(orderItem?.downloadableLinks\n ? {\n [`${orderItem?.downloadableLinks?.count} ${translations.downloadableCount}`]:\n orderItem?.downloadableLinks?.result,\n }\n : {}),\n };\n\n const productName = orderItem?.product?.name;\n\n const defaultImageProps = {\n title: productName,\n src: product?.thumbnail?.url ?? placeholderImage,\n alt: productName,\n width: 90,\n height: 120,\n loading: 'lazy',\n } as const;\n\n return (\n <Fragment key={orderItem.id}>\n <CartItem\n loading={loading}\n title={<div data-testid=\"product-name\">{productName}</div>}\n sku={<div>{product?.sku}</div>}\n image={\n <Slot\n name=\"ReturnReasonFormImage\"\n slot={slots?.ReturnReasonFormImage}\n context={{\n data: orderItem,\n defaultImageProps,\n }}\n >\n <Image {...defaultImageProps} />\n </Slot>\n }\n configurations={configurations}\n />\n <form\n name={formName}\n ref={formsRef?.current[index]}\n data-quantity={quantity}\n >\n <FormInputs\n className={'className'}\n loading={loading}\n fields={fieldsList}\n onChange={handleChange}\n onBlur={handleBlur}\n errors={errors}\n values={formData}\n />\n </form>\n </Fragment>\n );\n })}\n <Slot\n data-testid=\"returnFormActions\"\n name=\"ReturnFormActions\"\n slot={slots?.ReturnFormActions}\n context={{\n handleChangeStep,\n }}\n >\n <div className=\"order-return-reason-form__actions\">\n <Button\n variant=\"secondary\"\n type=\"button\"\n onClick={() => {\n handleChangeStep('products');\n }}\n >\n {translations.backStep}\n </Button>\n <Button>{translations.submit}</Button>\n </div>\n </Slot>\n </form>\n );\n};\n"],"names":["SvgCheckWithCircle","props","React","SvgWarning","useCreateReturn","onSuccess","onError","handleSetInLineAlert","orderData","isGuestCreateReturn","setIsGuestCreateReturn","useState","order","setOrder","steps","setSteps","loading","setLoading","selectedProductList","setSelectedProductList","attributesList","setAttributesList","itemsEligibleForReturn","setItemsEligibleForReturn","formsRef","useRef","_","i","createRef","useEffect","event","events","sortedReturnItems","sortItemsByCondition","_a","getQueryParam","getAttributesList","response","handleSelectedProductList","useCallback","orderItem","currentList","item","handleChangeStep","value","handleSetQuantity","productSku","result","el","onSubmit","isValid","orderReturnInfo","items","processFormElement","requestGuestReturn","error","requestReturn","iconsList","Success","Warning","Error","useInLineAlert","inLineAlertProps","setInLineAlertProps","notification","icon","jsx","Icon","CreateReturn","className","slots","routeReturnSuccess","showConfigurableOptions","translations","useText","storeConfig","useGetStoreConfig","OrderProductListSkeleton","placeholderImage","renderList","ReturnOrderProductList","setTaxStatus","ReturnReasonForm","ReturnOrderMessage","jsxs","classes","Header","InLineAlert","Button","taxConfig","index","quantityReturnRequested","quantityShipped","eligibleForReturn","checked","disabled","totalQuantity","Checkbox","CartSummaryItem","Slot","fieldsConfig","formData","errors","formRef","handleChange","handleBlur","handleSubmit","useForm","replicateEntries","giftCard","product","fieldsList","modifyFieldsConfig","formName","quantity","configurations","_b","productName","_c","defaultImageProps","_d","Fragment","CartItem","Image","FormInputs"],"mappings":"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","x_google_ignoreList":[0,1]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*! Copyright 2025 Adobe
|
|
2
2
|
All Rights Reserved. */
|
|
3
|
-
import{jsx as r,jsxs as a,Fragment as T}from"@dropins/tools/preact-jsx-runtime.js";import{Slot as E,classes as g}from"@dropins/tools/lib.js";import{useMemo as w,useState as k,useEffect as O,useCallback as z}from"@dropins/tools/preact-hooks.js";import"@dropins/tools/preact.js";import{events as F}from"@dropins/tools/event-bus.js";import{c as q}from"../chunks/transform-attributes-form.js";import{g as K}from"../chunks/getAttributesForm.js";import{Icon as G,Price as J,Card as Q,Header as U}from"@dropins/tools/components.js";import{f as X}from"../chunks/returnOrdersHelper.js";import{f as Y}from"../chunks/formatDateToLocale.js";import"../chunks/ShippingStatusCard.js";import*as h from"@dropins/tools/preact-compat.js";import{D as ee}from"../chunks/OrderLoaders.js";import{Text as te,useText as re}from"@dropins/tools/i18n.js";import"../chunks/network-error.js";import"../chunks/fetch-graphql.js";import"@dropins/tools/fetch-graphql.js";import"../chunks/getFormValues.js";const ne=s=>h.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...s},h.createElement("path",{vectorEffect:"non-scaling-stroke",d:"
|
|
3
|
+
import{jsx as r,jsxs as a,Fragment as T}from"@dropins/tools/preact-jsx-runtime.js";import{Slot as E,classes as g}from"@dropins/tools/lib.js";import{useMemo as w,useState as k,useEffect as O,useCallback as z}from"@dropins/tools/preact-hooks.js";import"@dropins/tools/preact.js";import{events as F}from"@dropins/tools/event-bus.js";import{c as q}from"../chunks/transform-attributes-form.js";import{g as K}from"../chunks/getAttributesForm.js";import{Icon as G,Price as J,Card as Q,Header as U}from"@dropins/tools/components.js";import{f as X}from"../chunks/returnOrdersHelper.js";import{f as Y}from"../chunks/formatDateToLocale.js";import"../chunks/ShippingStatusCard.js";import*as h from"@dropins/tools/preact-compat.js";import{D as ee}from"../chunks/OrderLoaders.js";import{Text as te,useText as re}from"@dropins/tools/i18n.js";import"../chunks/network-error.js";import"../chunks/fetch-graphql.js";import"@dropins/tools/fetch-graphql.js";import"../chunks/getFormValues.js";const ne=s=>h.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...s},h.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M2.00718 5H22.1507C22.7047 5 23.1579 5.45323 23.1579 6.00718V7.51794C23.1579 7.51794 1.01007 7.58844 1 7.55823V6.00718C1 5.45323 1.45323 5 2.00718 5Z",stroke:"currentColor",strokeWidth:1}),h.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M23.1579 9.78409V18.3451C23.1579 18.899 22.7047 19.3523 22.1507 19.3523H2.00718C1.45323 19.3523 1 18.899 1 18.3451V9.78409H23.1579Z",stroke:"currentColor",strokeWidth:1}),h.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M3.01465 15.9682H8.40305",stroke:"currentColor",strokeWidth:1,strokeLinecap:"round"}),h.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M17.6192 17.5897C18.4535 17.5897 19.1299 16.9133 19.1299 16.0789C19.1299 15.2446 18.4535 14.5682 17.6192 14.5682C16.7848 14.5682 16.1084 15.2446 16.1084 16.0789C16.1084 16.9133 16.7848 17.5897 17.6192 17.5897Z",stroke:"currentColor",strokeWidth:1}),h.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M19.8848 17.5897C20.7192 17.5897 21.3956 16.9133 21.3956 16.0789C21.3956 15.2446 20.7192 14.5682 19.8848 14.5682C19.0504 14.5682 18.374 15.2446 18.374 16.0789C18.374 16.9133 19.0504 17.5897 19.8848 17.5897Z",stroke:"currentColor",strokeWidth:1})),ie=s=>h.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...s},h.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M17.93 14.8V18.75H5.97C4.75 18.75 3.75 17.97 3.75 17V6.5M3.75 6.5C3.75 5.53 4.74 4.75 5.97 4.75H15.94V8.25H5.97C4.75 8.25 3.75 7.47 3.75 6.5Z",stroke:"currentColor",strokeWidth:1,strokeLinecap:"round",strokeLinejoin:"round"}),h.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M19.35 11.64H14.04V14.81H19.35V11.64Z",stroke:"currentColor",strokeWidth:1,strokeLinecap:"round",strokeLinejoin:"round"}),h.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M17.9304 11.64V8.25H15.1504",stroke:"currentColor",strokeWidth:1,strokeLinecap:"round",strokeLinejoin:"round"})),S=(s,e)=>{var c;const u=n=>{const o=Array.isArray(n.value)?n.value.join(" "):n==null?void 0:n.value;return n.label?`${n.label}: ${o}`:o};return(c=s[e])==null?void 0:c.map((n,o)=>r("p",{children:u(n)},`${n.value}${o}`))},se=s=>{var o,t;const e=s&&s.length>0,u=e?(o=s[0])==null?void 0:o.name:"",c=e?(t=s[0])==null?void 0:t.code:"";return{selectedPaymentMethod:u,selectedPaymentMethodCode:c,hasToDisplayPaymentMethod:e&&u!==""}},oe=({loading:s,order:e,withHeader:u=!0,title:c,paymentIconsMap:n={},normalizeAddress:o,translations:t,slots:m})=>{var M,A,N,L;const p=!!(e!=null&&e.returnNumber),d=!!(e!=null&&e.isVirtual),i=(M=e==null?void 0:e.returns)==null?void 0:M[0],l=w(()=>({checkmo:ie,card:ne,...n}),[n]);if(!e||s)return r(ee,{});const _=(e==null?void 0:e.email)??"",f=(A=e==null?void 0:e.shipping)==null?void 0:A.code,y=(N=e==null?void 0:e.shipping)==null?void 0:N.amount,x=(L=e==null?void 0:e.shipping)==null?void 0:L.currency,P=e==null?void 0:e.payments,{selectedPaymentMethod:V,selectedPaymentMethodCode:D,hasToDisplayPaymentMethod:H}=se(P),v=l[D],C=S(o,"shippingAddress")??[],b=S(o,"billingAddress")??[],I=a("div",{className:"order-customer-details-content__container-email",children:[r("div",{className:"order-customer-details-content__container-title",children:t==null?void 0:t.emailTitle}),r("p",{children:_})]}),W=p?a("div",{className:"order-customer-details-content__container-return-information","data-testid":"returnDetailsBlock",children:[r("div",{className:"order-customer-details-content__container-title",children:t==null?void 0:t.returnInformationTitle}),r("div",{className:"order-customer-details-content__container-description",children:r(E,{"data-testid":"OrderReturnInformation",name:"OrderReturnInformation",slot:m==null?void 0:m.OrderReturnInformation,context:i,children:a(T,{children:[a("p",{children:[t.createdReturnAt,r("span",{children:Y(i==null?void 0:i.createdReturnAt)})]}),a("p",{children:[t.returnStatusLabel,r(te,{id:`Order.CustomerDetails.returnStatus.${X(i==null?void 0:i.returnStatus)}`})]}),a("p",{children:[t.orderNumberLabel,r("span",{children:i==null?void 0:i.orderNumber})]})]})})})]}):null,j=!d&&C.length?a("div",{className:"order-customer-details-content__container-shipping_address",children:[r("div",{className:"order-customer-details-content__container-title",children:t.shippingAddressTitle}),r("div",{className:"order-customer-details-content__container-description",children:C})]}):null,R=b.length?a("div",{className:g(["order-customer-details-content__container-billing_address",["order-customer-details-content__container-billing_address--fullwidth",!C.length||d]]),children:[r("div",{className:"order-customer-details-content__container-title",children:t.billingAddressTitle}),r("div",{className:"order-customer-details-content__container-description",children:b})]}):null,Z=H?a("div",{className:g(["order-customer-details-content__container-payment_methods",["order-customer-details-content__container-payment_methods--fullwidth",!f]]),children:[r("div",{className:"order-customer-details-content__container-title",children:t==null?void 0:t.paymentMethodsTitle}),a("p",{"data-testid":"payment_methods_description",className:g([["order-customer-details-content__container-payment_methods--icon",!!v]]),children:[r(E,{"data-testid":"PaymentMethodIcon",name:"PaymentMethodIcon",slot:m==null?void 0:m.PaymentMethodIcon,context:{selectedPaymentMethodCode:D},children:v?r(G,{source:v}):null}),V]})]}):null,$=f?a("div",{className:"order-customer-details-content__container-shipping_methods",children:[r("div",{className:"order-customer-details-content__container-title",children:t==null?void 0:t.shippingMethodsTitle}),y?a("p",{"data-testid":"shipping_methods_price",children:[r(J,{amount:y,currency:x})," ",f]}):r("p",{"data-testid":"shipping_methods_placeholder",children:t==null?void 0:t.freeShipping})]}):null,B=p?W:a(T,{children:[R,$,Z]});return a(Q,{"data-testid":"order-details",variant:"secondary",className:g(["order-customer-details-content"]),children:[u?r(U,{title:c??(t==null?void 0:t.headerText)}):null,a("div",{className:g(["order-customer-details-content__container",["order-customer-details-content__container--no-margin",C.length||b.length]]),children:[I,j,B]})]})},ce=["firstname","lastname","city","company","country_code","region","region_code","region_id","telephone","id","vat_id","postcode","street","street_2","default_shipping","default_billing"],ae=({orderData:s})=>{const[e,u]=k(!0),[c,n]=k(s),[o,t]=k([]);O(()=>{const d=F.on("order/data",i=>{n(i)},{eager:!0});return()=>{d==null||d.off()}},[]),O(()=>{K("shortRequest").then(d=>{if(d){const i=d.map(({name:l,orderNumber:_,label:f})=>({name:q(l),orderNumber:_,label:ce.includes(l)?null:f}));t(i)}}).finally(()=>{u(!1)})},[]);const m=z(d=>{if(!o.length||!c||!c[d])return[];const i=c[d]?Object.fromEntries(Object.entries(c[d]).map(([l,_])=>[l.toLowerCase(),_])):{};return o.filter(({name:l})=>i[l.toLowerCase()]).map(l=>({name:l.name,orderNumber:l.orderNumber,value:i[l.name.toLowerCase()],label:l.label}))},[o,c]),p=w(()=>({billingAddress:m("billingAddress"),shippingAddress:m("shippingAddress")}),[m]);return{order:c,normalizeAddress:p,loading:e}},Ne=({paymentIconsMap:s,orderData:e,title:u,className:c,slots:n})=>{const o=re({emailTitle:"Order.CustomerDetails.email.title",shippingAddressTitle:"Order.CustomerDetails.shippingAddress.title",shippingMethodsTitle:"Order.CustomerDetails.shippingMethods.title",billingAddressTitle:"Order.CustomerDetails.billingAddress.title",paymentMethodsTitle:"Order.CustomerDetails.paymentMethods.title",returnInformationTitle:"Order.CustomerDetails.returnInformation.title",headerText:"Order.CustomerDetails.headerText",freeShipping:"Order.CustomerDetails.freeShipping",createdReturnAt:"Order.CustomerDetails.orderReturnLabels.createdReturnAt",orderNumberLabel:"Order.CustomerDetails.orderReturnLabels.orderNumberLabel",returnStatusLabel:"Order.CustomerDetails.orderReturnLabels.returnStatusLabel"}),{order:t,normalizeAddress:m,loading:p}=ae({orderData:e});return r("div",{className:g(["order-customer-details",c]),children:r(oe,{slots:n,loading:p,order:t,title:u,paymentIconsMap:s,normalizeAddress:m,translations:o})})};export{Ne as CustomerDetails,Ne as default};
|
|
4
4
|
//# sourceMappingURL=CustomerDetails.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CustomerDetails.js","sources":["../../node_modules/@adobe-commerce/elsie/src/icons/Wallet.svg","../../node_modules/@adobe-commerce/elsie/src/icons/Card.svg","/@dropins/storefront-order/src/components/CustomerDetailsContent/CustomerDetailsContent.tsx","/@dropins/storefront-order/src/configs/defaultAttributePreset.config.ts","/@dropins/storefront-order/src/hooks/containers/useCustomerDetails.tsx","/@dropins/storefront-order/src/containers/CustomerDetails/CustomerDetails.tsx"],"sourcesContent":["import * as React from \"react\";\nconst SvgWallet = (props) => /* @__PURE__ */ React.createElement(\"svg\", { width: 24, height: 24, viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M17.93 14.8V18.75H5.97C4.75 18.75 3.75 17.97 3.75 17V6.5M3.75 6.5C3.75 5.53 4.74 4.75 5.97 4.75H15.94V8.25H5.97C4.75 8.25 3.75 7.47 3.75 6.5Z\", stroke: \"currentColor\", strokeWidth: 1, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M19.35 11.64H14.04V14.81H19.35V11.64Z\", stroke: \"currentColor\", strokeWidth: 1, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M17.9304 11.64V8.25H15.1504\", stroke: \"currentColor\", strokeWidth: 1, strokeLinecap: \"round\", strokeLinejoin: \"round\" }));\nexport default SvgWallet;\n","import * as React from \"react\";\nconst SvgCard = (props) => /* @__PURE__ */ React.createElement(\"svg\", { width: 24, height: 24, viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M2.00718 5H22.1507C22.7047 5 23.1579 5.45323 23.1579 6.00718V7.51794C23.1579 7.51794 1.01007 7.58844 1 7.55823V6.00718C1 5.45323 1.45323 5 2.00718 5Z\", stroke: \"currentColor\", strokeWidth: 1 }), /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M23.1579 9.78409V18.3451C23.1579 18.899 22.7047 19.3523 22.1507 19.3523H2.00718C1.45323 19.3523 1 18.899 1 18.3451V9.78409H23.1579Z\", stroke: \"currentColor\", strokeWidth: 1 }), /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M3.01465 15.9682H8.40305\", stroke: \"currentColor\", strokeWidth: 1, strokeLinecap: \"round\" }), /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M17.6192 17.5897C18.4535 17.5897 19.1299 16.9133 19.1299 16.0789C19.1299 15.2446 18.4535 14.5682 17.6192 14.5682C16.7848 14.5682 16.1084 15.2446 16.1084 16.0789C16.1084 16.9133 16.7848 17.5897 17.6192 17.5897Z\", stroke: \"currentColor\", strokeWidth: 1 }), /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M19.8848 17.5897C20.7192 17.5897 21.3956 16.9133 21.3956 16.0789C21.3956 15.2446 20.7192 14.5682 19.8848 14.5682C19.0504 14.5682 18.374 15.2446 18.374 16.0789C18.374 16.9133 19.0504 17.5897 19.8848 17.5897Z\", stroke: \"currentColor\", strokeWidth: 1 }));\nexport default SvgCard;\n","/********************************************************************\n * ADOBE CONFIDENTIAL\n *\n * Copyright 2024 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\n\nimport { FunctionComponent } from 'preact';\nimport { classes, Slot } from '@adobe-commerce/elsie/lib';\nimport {\n Card,\n Header,\n Icon,\n IconNode,\n IconType,\n Price,\n} from '@adobe-commerce/elsie/components';\nimport { Text } from '@adobe-commerce/elsie/i18n';\nimport {\n CustomerDetailsContentProps,\n NormalizeAddressProps,\n} from '@/order/types';\nimport { DetailsSkeleton } from '@/order/components';\nimport { Card as CreditCard, Wallet } from '@adobe-commerce/elsie/icons';\nimport { useMemo } from 'preact/hooks';\nimport { formatReturnStatus } from '@/order/lib/returnOrdersHelper';\nimport { formatDateToLocale } from '@/order/lib/formatDateToLocale';\nimport '@/order/components/CustomerDetailsContent/CustomerDetailsContent.css';\n\nconst renderAddressData = (\n normalizeAddress: {\n billingAddress: NormalizeAddressProps[][];\n shippingAddress: NormalizeAddressProps[][];\n },\n type: 'shippingAddress' | 'billingAddress'\n) => {\n const getFieldContent = (field: any) => {\n const value = Array.isArray(field.value)\n ? field.value.join(' ')\n : field?.value;\n return field.label ? `${field.label}: ${value}` : value;\n };\n\n return normalizeAddress[type]?.map((field: any, fieldIndex: number) => {\n return <p key={`${field.value}${fieldIndex}`}>{getFieldContent(field)}</p>;\n });\n};\n\nconst extractPaymentMethodsData = (\n paymentMethods: { code: string; name: string }[]\n) => {\n const hasPaymentMethod = paymentMethods && paymentMethods.length > 0;\n const selectedPaymentMethod = hasPaymentMethod ? paymentMethods[0]?.name : '';\n const selectedPaymentMethodCode = hasPaymentMethod\n ? paymentMethods[0]?.code\n : '';\n const hasToDisplayPaymentMethod =\n hasPaymentMethod && selectedPaymentMethod !== '';\n return {\n selectedPaymentMethod,\n selectedPaymentMethodCode,\n hasToDisplayPaymentMethod,\n };\n};\n\nexport const CustomerDetailsContent: FunctionComponent<\n CustomerDetailsContentProps\n> = ({\n loading,\n order,\n withHeader = true,\n title,\n paymentIconsMap = {},\n normalizeAddress,\n translations,\n slots,\n}) => {\n const isReturnPage = !!order?.returnNumber;\n const isVirtual = !!order?.isVirtual;\n const orderReturn = order?.returns?.[0];\n\n const iconsList: Record<string, IconType | IconNode> = useMemo(\n () => ({\n checkmo: Wallet,\n card: CreditCard,\n ...paymentIconsMap,\n }),\n [paymentIconsMap]\n );\n\n if (!order || loading) return <DetailsSkeleton />;\n\n const emailAddress = order?.email ?? '';\n const shippingMethod = order?.shipping?.code;\n const shippingCost = order?.shipping?.amount;\n const shippingCurrency = order?.shipping?.currency;\n const paymentMethods = order?.payments;\n const {\n selectedPaymentMethod,\n selectedPaymentMethodCode,\n hasToDisplayPaymentMethod,\n } = extractPaymentMethodsData(paymentMethods);\n const paymentMethodIconSource = iconsList[selectedPaymentMethodCode];\n const shippingAddress =\n renderAddressData(normalizeAddress, 'shippingAddress') ?? [];\n const billingAddress =\n renderAddressData(normalizeAddress, 'billingAddress') ?? [];\n\n const contactDetails = (\n <div className=\"order-customer-details-content__container-email\">\n <div className={'order-customer-details-content__container-title'}>\n {translations?.emailTitle}\n </div>\n <p>{emailAddress}</p>\n </div>\n );\n\n const returnDetails = isReturnPage ? (\n <div\n className=\"order-customer-details-content__container-return-information\"\n data-testid=\"returnDetailsBlock\"\n >\n <div className={'order-customer-details-content__container-title'}>\n {translations?.returnInformationTitle}\n </div>\n <div className=\"order-customer-details-content__container-description\">\n <Slot\n data-testid=\"OrderReturnInformation\"\n name=\"OrderReturnInformation\"\n slot={slots?.OrderReturnInformation}\n context={orderReturn}\n >\n <>\n <p>\n {translations.createdReturnAt}\n <span>{formatDateToLocale(orderReturn?.createdReturnAt!)}</span>\n </p>\n <p>\n {translations.returnStatusLabel}\n <Text\n id={`Order.CustomerDetails.returnStatus.${formatReturnStatus(\n orderReturn?.returnStatus!\n )}`}\n />\n </p>\n <p>\n {translations.orderNumberLabel}\n <span>{orderReturn?.orderNumber}</span>\n </p>\n </>\n </Slot>\n </div>\n </div>\n ) : null;\n\n const shippingAddressDetails =\n !isVirtual && shippingAddress.length ? (\n <div className=\"order-customer-details-content__container-shipping_address\">\n <div className={'order-customer-details-content__container-title'}>\n {translations.shippingAddressTitle}\n </div>\n <div className=\"order-customer-details-content__container-description\">\n {shippingAddress}\n </div>\n </div>\n ) : null;\n\n const billingAddressDetails = billingAddress.length ? (\n <div\n className={classes([\n 'order-customer-details-content__container-billing_address',\n [\n 'order-customer-details-content__container-billing_address--fullwidth',\n !shippingAddress.length || isVirtual,\n ],\n ])}\n >\n <div className={'order-customer-details-content__container-title'}>\n {translations.billingAddressTitle}\n </div>\n <div className=\"order-customer-details-content__container-description\">\n {billingAddress}\n </div>\n </div>\n ) : null;\n\n const paymentMethodDetails = hasToDisplayPaymentMethod ? (\n <div\n className={classes([\n 'order-customer-details-content__container-payment_methods',\n [\n 'order-customer-details-content__container-payment_methods--fullwidth',\n !shippingMethod,\n ],\n ])}\n >\n <div className={'order-customer-details-content__container-title'}>\n {translations?.paymentMethodsTitle}\n </div>\n <p\n data-testid=\"payment_methods_description\"\n className={classes([\n [\n 'order-customer-details-content__container-payment_methods--icon',\n !!paymentMethodIconSource,\n ],\n ])}\n >\n <Slot\n data-testid=\"PaymentMethodIcon\"\n name=\"PaymentMethodIcon\"\n slot={slots?.PaymentMethodIcon}\n context={{ selectedPaymentMethodCode }}\n >\n {paymentMethodIconSource ? (\n <Icon source={paymentMethodIconSource} />\n ) : null}\n </Slot>\n {selectedPaymentMethod}\n </p>\n </div>\n ) : null;\n\n const shippingMethodDetails = shippingMethod ? (\n <div className=\"order-customer-details-content__container-shipping_methods\">\n <div className={'order-customer-details-content__container-title'}>\n {translations?.shippingMethodsTitle}\n </div>\n {shippingCost ? (\n <p data-testid=\"shipping_methods_price\">\n <Price amount={shippingCost} currency={shippingCurrency} />{' '}\n {shippingMethod}\n </p>\n ) : (\n <p data-testid=\"shipping_methods_placeholder\">\n {translations?.freeShipping}\n </p>\n )}\n </div>\n ) : null;\n\n const pageSpecificDetails = isReturnPage ? (\n returnDetails\n ) : (\n <>\n {billingAddressDetails}\n {shippingMethodDetails}\n {paymentMethodDetails}\n </>\n );\n\n return (\n <Card\n data-testid=\"order-details\"\n variant={'secondary'}\n className={classes(['order-customer-details-content'])}\n >\n {withHeader ? <Header title={title ?? translations?.headerText} /> : null}\n\n <div\n className={classes([\n 'order-customer-details-content__container',\n [\n 'order-customer-details-content__container--no-margin',\n shippingAddress.length || billingAddress.length,\n ],\n ])}\n >\n {contactDetails}\n {shippingAddressDetails}\n {pageSpecificDetails}\n </div>\n </Card>\n );\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\n *\n * Copyright 2024 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\n\nexport const defaultAttributePreset = [\n 'firstname',\n 'lastname',\n 'city',\n 'company',\n 'country_code',\n 'region',\n 'region_code',\n 'region_id',\n 'telephone',\n 'id',\n 'vat_id',\n 'postcode',\n 'street',\n 'street_2',\n 'default_shipping',\n 'default_billing',\n];\n","/********************************************************************\n * ADOBE CONFIDENTIAL\n *\n * Copyright 2024 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\n\nimport { getAttributesForm } from '@/order/api';\nimport { defaultAttributePreset } from '@/order/configs/defaultAttributePreset.config';\nimport { OrderDataModel } from '@/order/data/models';\nimport { convertToCamelCase } from '@/order/lib/convertCase';\nimport {\n KeysSortOrderProps,\n NormalizeAddressProps,\n UseCustomerDetails,\n} from '@/order/types';\nimport { events } from '@adobe-commerce/event-bus';\nimport { useState, useEffect, useMemo, useCallback } from 'preact/hooks';\n\nexport const useCustomerDetails = ({ orderData }: UseCustomerDetails) => {\n const [loading, setLoading] = useState<boolean>(true);\n const [order, setOrder] = useState(orderData);\n const [keysSortOrder, setKeysSortOrder] = useState<KeysSortOrderProps[] | []>(\n []\n );\n\n useEffect(() => {\n const event = events.on(\n 'order/data',\n (order: OrderDataModel) => {\n setOrder(order);\n },\n { eager: true }\n );\n\n return () => {\n event?.off();\n };\n }, []);\n\n useEffect(() => {\n getAttributesForm('shortRequest')\n .then((attributesFormResponse) => {\n if (attributesFormResponse) {\n const result: KeysSortOrderProps[] = attributesFormResponse.map(\n ({ name, orderNumber, label }) => ({\n name: convertToCamelCase(name as string),\n orderNumber,\n label: !defaultAttributePreset.includes(name as string)\n ? label\n : null,\n })\n );\n\n setKeysSortOrder(result);\n }\n })\n .finally(() => {\n setLoading(false);\n });\n }, []);\n\n const getNormalizeAddress = useCallback(\n (\n type: 'billingAddress' | 'shippingAddress'\n ): NormalizeAddressProps[] | [] => {\n if (!keysSortOrder.length || !order || !order[type]) return [];\n\n const address: Record<string, unknown> = order[type]\n ? Object.fromEntries(\n Object.entries(order[type] as Record<string, unknown>).map(\n ([key, value]) => [key.toLowerCase(), value]\n )\n )\n : {};\n\n // @ts-ignore\n return keysSortOrder\n .filter(({ name }) => address[name.toLowerCase()])\n .map((item) => {\n return {\n name: item.name,\n orderNumber: item.orderNumber,\n value: address[item.name.toLowerCase()],\n label: item.label,\n };\n });\n },\n [keysSortOrder, order]\n );\n\n const normalizeAddress = useMemo(\n () => ({\n billingAddress: getNormalizeAddress('billingAddress'),\n shippingAddress: getNormalizeAddress('shippingAddress'),\n }),\n [getNormalizeAddress]\n );\n\n return { order, normalizeAddress, loading };\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\n *\n * Copyright 2024 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\n\nimport { Container, classes } from '@adobe-commerce/elsie/lib';\nimport { useCustomerDetails } from '@/order/hooks';\nimport { CustomerDetailsContent } from '@/order/components';\nimport { CustomerDetailsProps, NormalizeAddressProps } from '@/order/types';\nimport { useText } from '@adobe-commerce/elsie/i18n';\n\nexport const CustomerDetails: Container<CustomerDetailsProps> = ({\n paymentIconsMap,\n orderData,\n title,\n className,\n slots,\n}) => {\n const translations = useText({\n emailTitle: 'Order.CustomerDetails.email.title',\n shippingAddressTitle: 'Order.CustomerDetails.shippingAddress.title',\n shippingMethodsTitle: 'Order.CustomerDetails.shippingMethods.title',\n billingAddressTitle: 'Order.CustomerDetails.billingAddress.title',\n paymentMethodsTitle: 'Order.CustomerDetails.paymentMethods.title',\n returnInformationTitle: 'Order.CustomerDetails.returnInformation.title',\n headerText: 'Order.CustomerDetails.headerText',\n freeShipping: 'Order.CustomerDetails.freeShipping',\n createdReturnAt: 'Order.CustomerDetails.orderReturnLabels.createdReturnAt',\n orderNumberLabel:\n 'Order.CustomerDetails.orderReturnLabels.orderNumberLabel',\n returnStatusLabel:\n 'Order.CustomerDetails.orderReturnLabels.returnStatusLabel',\n });\n\n const { order, normalizeAddress, loading } = useCustomerDetails({\n orderData,\n });\n\n return (\n <div className={classes(['order-customer-details', className])}>\n <CustomerDetailsContent\n slots={slots}\n loading={loading}\n order={order}\n title={title}\n paymentIconsMap={paymentIconsMap}\n normalizeAddress={\n normalizeAddress as {\n billingAddress: [] | NormalizeAddressProps[][];\n shippingAddress: [] | NormalizeAddressProps[][];\n }\n }\n translations={translations}\n />\n </div>\n );\n};\n"],"names":["SvgWallet","props","React","SvgCard","renderAddressData","normalizeAddress","type","getFieldContent","field","value","_a","fieldIndex","jsx","extractPaymentMethodsData","paymentMethods","hasPaymentMethod","selectedPaymentMethod","selectedPaymentMethodCode","_b","CustomerDetailsContent","loading","order","withHeader","title","paymentIconsMap","translations","slots","isReturnPage","isVirtual","orderReturn","iconsList","useMemo","Wallet","CreditCard","DetailsSkeleton","emailAddress","shippingMethod","shippingCost","_c","shippingCurrency","_d","hasToDisplayPaymentMethod","paymentMethodIconSource","shippingAddress","billingAddress","contactDetails","jsxs","returnDetails","Slot","Fragment","formatDateToLocale","Text","formatReturnStatus","shippingAddressDetails","billingAddressDetails","classes","paymentMethodDetails","Icon","shippingMethodDetails","Price","pageSpecificDetails","Card","Header","defaultAttributePreset","useCustomerDetails","orderData","setLoading","useState","setOrder","keysSortOrder","setKeysSortOrder","useEffect","event","events","getAttributesForm","attributesFormResponse","result","name","orderNumber","label","convertToCamelCase","getNormalizeAddress","useCallback","address","key","item","CustomerDetails","className","useText"],"mappings":"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","x_google_ignoreList":[0,1]}
|
|
1
|
+
{"version":3,"file":"CustomerDetails.js","sources":["../../node_modules/@adobe-commerce/elsie/src/icons/Card.svg","../../node_modules/@adobe-commerce/elsie/src/icons/Wallet.svg","/@dropins/storefront-order/src/components/CustomerDetailsContent/CustomerDetailsContent.tsx","/@dropins/storefront-order/src/configs/defaultAttributePreset.config.ts","/@dropins/storefront-order/src/hooks/containers/useCustomerDetails.tsx","/@dropins/storefront-order/src/containers/CustomerDetails/CustomerDetails.tsx"],"sourcesContent":["import * as React from \"react\";\nconst SvgCard = (props) => /* @__PURE__ */ React.createElement(\"svg\", { width: 24, height: 24, viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M2.00718 5H22.1507C22.7047 5 23.1579 5.45323 23.1579 6.00718V7.51794C23.1579 7.51794 1.01007 7.58844 1 7.55823V6.00718C1 5.45323 1.45323 5 2.00718 5Z\", stroke: \"currentColor\", strokeWidth: 1 }), /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M23.1579 9.78409V18.3451C23.1579 18.899 22.7047 19.3523 22.1507 19.3523H2.00718C1.45323 19.3523 1 18.899 1 18.3451V9.78409H23.1579Z\", stroke: \"currentColor\", strokeWidth: 1 }), /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M3.01465 15.9682H8.40305\", stroke: \"currentColor\", strokeWidth: 1, strokeLinecap: \"round\" }), /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M17.6192 17.5897C18.4535 17.5897 19.1299 16.9133 19.1299 16.0789C19.1299 15.2446 18.4535 14.5682 17.6192 14.5682C16.7848 14.5682 16.1084 15.2446 16.1084 16.0789C16.1084 16.9133 16.7848 17.5897 17.6192 17.5897Z\", stroke: \"currentColor\", strokeWidth: 1 }), /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M19.8848 17.5897C20.7192 17.5897 21.3956 16.9133 21.3956 16.0789C21.3956 15.2446 20.7192 14.5682 19.8848 14.5682C19.0504 14.5682 18.374 15.2446 18.374 16.0789C18.374 16.9133 19.0504 17.5897 19.8848 17.5897Z\", stroke: \"currentColor\", strokeWidth: 1 }));\nexport default SvgCard;\n","import * as React from \"react\";\nconst SvgWallet = (props) => /* @__PURE__ */ React.createElement(\"svg\", { width: 24, height: 24, viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M17.93 14.8V18.75H5.97C4.75 18.75 3.75 17.97 3.75 17V6.5M3.75 6.5C3.75 5.53 4.74 4.75 5.97 4.75H15.94V8.25H5.97C4.75 8.25 3.75 7.47 3.75 6.5Z\", stroke: \"currentColor\", strokeWidth: 1, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M19.35 11.64H14.04V14.81H19.35V11.64Z\", stroke: \"currentColor\", strokeWidth: 1, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M17.9304 11.64V8.25H15.1504\", stroke: \"currentColor\", strokeWidth: 1, strokeLinecap: \"round\", strokeLinejoin: \"round\" }));\nexport default SvgWallet;\n","/********************************************************************\n * ADOBE CONFIDENTIAL\n *\n * Copyright 2024 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\n\nimport { FunctionComponent } from 'preact';\nimport { classes, Slot } from '@adobe-commerce/elsie/lib';\nimport {\n Card,\n Header,\n Icon,\n IconNode,\n IconType,\n Price,\n} from '@adobe-commerce/elsie/components';\nimport { Text } from '@adobe-commerce/elsie/i18n';\nimport {\n CustomerDetailsContentProps,\n NormalizeAddressProps,\n} from '@/order/types';\nimport { DetailsSkeleton } from '@/order/components';\nimport { Card as CreditCard, Wallet } from '@adobe-commerce/elsie/icons';\nimport { useMemo } from 'preact/hooks';\nimport { formatReturnStatus } from '@/order/lib/returnOrdersHelper';\nimport { formatDateToLocale } from '@/order/lib/formatDateToLocale';\nimport '@/order/components/CustomerDetailsContent/CustomerDetailsContent.css';\n\nconst renderAddressData = (\n normalizeAddress: {\n billingAddress: NormalizeAddressProps[][];\n shippingAddress: NormalizeAddressProps[][];\n },\n type: 'shippingAddress' | 'billingAddress'\n) => {\n const getFieldContent = (field: any) => {\n const value = Array.isArray(field.value)\n ? field.value.join(' ')\n : field?.value;\n return field.label ? `${field.label}: ${value}` : value;\n };\n\n return normalizeAddress[type]?.map((field: any, fieldIndex: number) => {\n return <p key={`${field.value}${fieldIndex}`}>{getFieldContent(field)}</p>;\n });\n};\n\nconst extractPaymentMethodsData = (\n paymentMethods: { code: string; name: string }[]\n) => {\n const hasPaymentMethod = paymentMethods && paymentMethods.length > 0;\n const selectedPaymentMethod = hasPaymentMethod ? paymentMethods[0]?.name : '';\n const selectedPaymentMethodCode = hasPaymentMethod\n ? paymentMethods[0]?.code\n : '';\n const hasToDisplayPaymentMethod =\n hasPaymentMethod && selectedPaymentMethod !== '';\n return {\n selectedPaymentMethod,\n selectedPaymentMethodCode,\n hasToDisplayPaymentMethod,\n };\n};\n\nexport const CustomerDetailsContent: FunctionComponent<\n CustomerDetailsContentProps\n> = ({\n loading,\n order,\n withHeader = true,\n title,\n paymentIconsMap = {},\n normalizeAddress,\n translations,\n slots,\n}) => {\n const isReturnPage = !!order?.returnNumber;\n const isVirtual = !!order?.isVirtual;\n const orderReturn = order?.returns?.[0];\n\n const iconsList: Record<string, IconType | IconNode> = useMemo(\n () => ({\n checkmo: Wallet,\n card: CreditCard,\n ...paymentIconsMap,\n }),\n [paymentIconsMap]\n );\n\n if (!order || loading) return <DetailsSkeleton />;\n\n const emailAddress = order?.email ?? '';\n const shippingMethod = order?.shipping?.code;\n const shippingCost = order?.shipping?.amount;\n const shippingCurrency = order?.shipping?.currency;\n const paymentMethods = order?.payments;\n const {\n selectedPaymentMethod,\n selectedPaymentMethodCode,\n hasToDisplayPaymentMethod,\n } = extractPaymentMethodsData(paymentMethods);\n const paymentMethodIconSource = iconsList[selectedPaymentMethodCode];\n const shippingAddress =\n renderAddressData(normalizeAddress, 'shippingAddress') ?? [];\n const billingAddress =\n renderAddressData(normalizeAddress, 'billingAddress') ?? [];\n\n const contactDetails = (\n <div className=\"order-customer-details-content__container-email\">\n <div className={'order-customer-details-content__container-title'}>\n {translations?.emailTitle}\n </div>\n <p>{emailAddress}</p>\n </div>\n );\n\n const returnDetails = isReturnPage ? (\n <div\n className=\"order-customer-details-content__container-return-information\"\n data-testid=\"returnDetailsBlock\"\n >\n <div className={'order-customer-details-content__container-title'}>\n {translations?.returnInformationTitle}\n </div>\n <div className=\"order-customer-details-content__container-description\">\n <Slot\n data-testid=\"OrderReturnInformation\"\n name=\"OrderReturnInformation\"\n slot={slots?.OrderReturnInformation}\n context={orderReturn}\n >\n <>\n <p>\n {translations.createdReturnAt}\n <span>{formatDateToLocale(orderReturn?.createdReturnAt!)}</span>\n </p>\n <p>\n {translations.returnStatusLabel}\n <Text\n id={`Order.CustomerDetails.returnStatus.${formatReturnStatus(\n orderReturn?.returnStatus!\n )}`}\n />\n </p>\n <p>\n {translations.orderNumberLabel}\n <span>{orderReturn?.orderNumber}</span>\n </p>\n </>\n </Slot>\n </div>\n </div>\n ) : null;\n\n const shippingAddressDetails =\n !isVirtual && shippingAddress.length ? (\n <div className=\"order-customer-details-content__container-shipping_address\">\n <div className={'order-customer-details-content__container-title'}>\n {translations.shippingAddressTitle}\n </div>\n <div className=\"order-customer-details-content__container-description\">\n {shippingAddress}\n </div>\n </div>\n ) : null;\n\n const billingAddressDetails = billingAddress.length ? (\n <div\n className={classes([\n 'order-customer-details-content__container-billing_address',\n [\n 'order-customer-details-content__container-billing_address--fullwidth',\n !shippingAddress.length || isVirtual,\n ],\n ])}\n >\n <div className={'order-customer-details-content__container-title'}>\n {translations.billingAddressTitle}\n </div>\n <div className=\"order-customer-details-content__container-description\">\n {billingAddress}\n </div>\n </div>\n ) : null;\n\n const paymentMethodDetails = hasToDisplayPaymentMethod ? (\n <div\n className={classes([\n 'order-customer-details-content__container-payment_methods',\n [\n 'order-customer-details-content__container-payment_methods--fullwidth',\n !shippingMethod,\n ],\n ])}\n >\n <div className={'order-customer-details-content__container-title'}>\n {translations?.paymentMethodsTitle}\n </div>\n <p\n data-testid=\"payment_methods_description\"\n className={classes([\n [\n 'order-customer-details-content__container-payment_methods--icon',\n !!paymentMethodIconSource,\n ],\n ])}\n >\n <Slot\n data-testid=\"PaymentMethodIcon\"\n name=\"PaymentMethodIcon\"\n slot={slots?.PaymentMethodIcon}\n context={{ selectedPaymentMethodCode }}\n >\n {paymentMethodIconSource ? (\n <Icon source={paymentMethodIconSource} />\n ) : null}\n </Slot>\n {selectedPaymentMethod}\n </p>\n </div>\n ) : null;\n\n const shippingMethodDetails = shippingMethod ? (\n <div className=\"order-customer-details-content__container-shipping_methods\">\n <div className={'order-customer-details-content__container-title'}>\n {translations?.shippingMethodsTitle}\n </div>\n {shippingCost ? (\n <p data-testid=\"shipping_methods_price\">\n <Price amount={shippingCost} currency={shippingCurrency} />{' '}\n {shippingMethod}\n </p>\n ) : (\n <p data-testid=\"shipping_methods_placeholder\">\n {translations?.freeShipping}\n </p>\n )}\n </div>\n ) : null;\n\n const pageSpecificDetails = isReturnPage ? (\n returnDetails\n ) : (\n <>\n {billingAddressDetails}\n {shippingMethodDetails}\n {paymentMethodDetails}\n </>\n );\n\n return (\n <Card\n data-testid=\"order-details\"\n variant={'secondary'}\n className={classes(['order-customer-details-content'])}\n >\n {withHeader ? <Header title={title ?? translations?.headerText} /> : null}\n\n <div\n className={classes([\n 'order-customer-details-content__container',\n [\n 'order-customer-details-content__container--no-margin',\n shippingAddress.length || billingAddress.length,\n ],\n ])}\n >\n {contactDetails}\n {shippingAddressDetails}\n {pageSpecificDetails}\n </div>\n </Card>\n );\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\n *\n * Copyright 2024 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\n\nexport const defaultAttributePreset = [\n 'firstname',\n 'lastname',\n 'city',\n 'company',\n 'country_code',\n 'region',\n 'region_code',\n 'region_id',\n 'telephone',\n 'id',\n 'vat_id',\n 'postcode',\n 'street',\n 'street_2',\n 'default_shipping',\n 'default_billing',\n];\n","/********************************************************************\n * ADOBE CONFIDENTIAL\n *\n * Copyright 2024 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\n\nimport { getAttributesForm } from '@/order/api';\nimport { defaultAttributePreset } from '@/order/configs/defaultAttributePreset.config';\nimport { OrderDataModel } from '@/order/data/models';\nimport { convertToCamelCase } from '@/order/lib/convertCase';\nimport {\n KeysSortOrderProps,\n NormalizeAddressProps,\n UseCustomerDetails,\n} from '@/order/types';\nimport { events } from '@adobe-commerce/event-bus';\nimport { useState, useEffect, useMemo, useCallback } from 'preact/hooks';\n\nexport const useCustomerDetails = ({ orderData }: UseCustomerDetails) => {\n const [loading, setLoading] = useState<boolean>(true);\n const [order, setOrder] = useState(orderData);\n const [keysSortOrder, setKeysSortOrder] = useState<KeysSortOrderProps[] | []>(\n []\n );\n\n useEffect(() => {\n const event = events.on(\n 'order/data',\n (order: OrderDataModel) => {\n setOrder(order);\n },\n { eager: true }\n );\n\n return () => {\n event?.off();\n };\n }, []);\n\n useEffect(() => {\n getAttributesForm('shortRequest')\n .then((attributesFormResponse) => {\n if (attributesFormResponse) {\n const result: KeysSortOrderProps[] = attributesFormResponse.map(\n ({ name, orderNumber, label }) => ({\n name: convertToCamelCase(name as string),\n orderNumber,\n label: !defaultAttributePreset.includes(name as string)\n ? label\n : null,\n })\n );\n\n setKeysSortOrder(result);\n }\n })\n .finally(() => {\n setLoading(false);\n });\n }, []);\n\n const getNormalizeAddress = useCallback(\n (\n type: 'billingAddress' | 'shippingAddress'\n ): NormalizeAddressProps[] | [] => {\n if (!keysSortOrder.length || !order || !order[type]) return [];\n\n const address: Record<string, unknown> = order[type]\n ? Object.fromEntries(\n Object.entries(order[type] as Record<string, unknown>).map(\n ([key, value]) => [key.toLowerCase(), value]\n )\n )\n : {};\n\n // @ts-ignore\n return keysSortOrder\n .filter(({ name }) => address[name.toLowerCase()])\n .map((item) => {\n return {\n name: item.name,\n orderNumber: item.orderNumber,\n value: address[item.name.toLowerCase()],\n label: item.label,\n };\n });\n },\n [keysSortOrder, order]\n );\n\n const normalizeAddress = useMemo(\n () => ({\n billingAddress: getNormalizeAddress('billingAddress'),\n shippingAddress: getNormalizeAddress('shippingAddress'),\n }),\n [getNormalizeAddress]\n );\n\n return { order, normalizeAddress, loading };\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\n *\n * Copyright 2024 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\n\nimport { Container, classes } from '@adobe-commerce/elsie/lib';\nimport { useCustomerDetails } from '@/order/hooks';\nimport { CustomerDetailsContent } from '@/order/components';\nimport { CustomerDetailsProps, NormalizeAddressProps } from '@/order/types';\nimport { useText } from '@adobe-commerce/elsie/i18n';\n\nexport const CustomerDetails: Container<CustomerDetailsProps> = ({\n paymentIconsMap,\n orderData,\n title,\n className,\n slots,\n}) => {\n const translations = useText({\n emailTitle: 'Order.CustomerDetails.email.title',\n shippingAddressTitle: 'Order.CustomerDetails.shippingAddress.title',\n shippingMethodsTitle: 'Order.CustomerDetails.shippingMethods.title',\n billingAddressTitle: 'Order.CustomerDetails.billingAddress.title',\n paymentMethodsTitle: 'Order.CustomerDetails.paymentMethods.title',\n returnInformationTitle: 'Order.CustomerDetails.returnInformation.title',\n headerText: 'Order.CustomerDetails.headerText',\n freeShipping: 'Order.CustomerDetails.freeShipping',\n createdReturnAt: 'Order.CustomerDetails.orderReturnLabels.createdReturnAt',\n orderNumberLabel:\n 'Order.CustomerDetails.orderReturnLabels.orderNumberLabel',\n returnStatusLabel:\n 'Order.CustomerDetails.orderReturnLabels.returnStatusLabel',\n });\n\n const { order, normalizeAddress, loading } = useCustomerDetails({\n orderData,\n });\n\n return (\n <div className={classes(['order-customer-details', className])}>\n <CustomerDetailsContent\n slots={slots}\n loading={loading}\n order={order}\n title={title}\n paymentIconsMap={paymentIconsMap}\n normalizeAddress={\n normalizeAddress as {\n billingAddress: [] | NormalizeAddressProps[][];\n shippingAddress: [] | NormalizeAddressProps[][];\n }\n }\n translations={translations}\n />\n </div>\n );\n};\n"],"names":["SvgCard","props","React","SvgWallet","renderAddressData","normalizeAddress","type","getFieldContent","field","value","_a","fieldIndex","jsx","extractPaymentMethodsData","paymentMethods","hasPaymentMethod","selectedPaymentMethod","selectedPaymentMethodCode","_b","CustomerDetailsContent","loading","order","withHeader","title","paymentIconsMap","translations","slots","isReturnPage","isVirtual","orderReturn","iconsList","useMemo","Wallet","CreditCard","DetailsSkeleton","emailAddress","shippingMethod","shippingCost","_c","shippingCurrency","_d","hasToDisplayPaymentMethod","paymentMethodIconSource","shippingAddress","billingAddress","contactDetails","jsxs","returnDetails","Slot","Fragment","formatDateToLocale","Text","formatReturnStatus","shippingAddressDetails","billingAddressDetails","classes","paymentMethodDetails","Icon","shippingMethodDetails","Price","pageSpecificDetails","Card","Header","defaultAttributePreset","useCustomerDetails","orderData","setLoading","useState","setOrder","keysSortOrder","setKeysSortOrder","useEffect","event","events","getAttributesForm","attributesFormResponse","result","name","orderNumber","label","convertToCamelCase","getNormalizeAddress","useCallback","address","key","item","CustomerDetails","className","useText"],"mappings":"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","x_google_ignoreList":[0,1]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/*! Copyright 2025 Adobe
|
|
2
2
|
All Rights Reserved. */
|
|
3
|
-
import{jsx as t,jsxs as r,Fragment as _}from"@dropins/tools/preact-jsx-runtime.js";import{classes as b}from"@dropins/tools/lib.js";import{useState as v,useEffect as E}from"@dropins/tools/preact-hooks.js";import"@dropins/tools/preact.js";import{events as Z}from"@dropins/tools/event-bus.js";import{s as g}from"../chunks/setTaxStatus.js";import{Price as m,Icon as H,Accordion as I,AccordionSection as G,Card as W,Header as k}from"@dropins/tools/components.js";import{u as z}from"../chunks/useGetStoreConfig.js";import"../chunks/ShippingStatusCard.js";import*as T from"@dropins/tools/preact-compat.js";import{O as D}from"../chunks/OrderLoaders.js";import{useText as F,Text as A}from"@dropins/tools/i18n.js";import"../chunks/getStoreConfig.js";import"../chunks/fetch-graphql.js";import"@dropins/tools/fetch-graphql.js";const j=c=>T.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...c},T.createElement("path",{d:"M7.74512 9.87701L12.0001 14.132L16.2551 9.87701",stroke:"currentColor",strokeWidth:1.5,strokeLinecap:"square",strokeLinejoin:"round"})),B=c=>T.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...c},T.createElement("path",{d:"M7.74512 14.132L12.0001 9.87701L16.2551 14.132",stroke:"currentColor",strokeWidth:1.5,strokeLinecap:"square",strokeLinejoin:"round"})),q=c=>T.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...c},T.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M22 6.25H22.75C22.75 5.83579 22.4142 5.5 22 5.5V6.25ZM22 9.27L22.2514 9.97663C22.5503 9.87029 22.75 9.58731 22.75 9.27H22ZM20.26 12.92L19.5534 13.1714L19.5539 13.1728L20.26 12.92ZM22 14.66H22.75C22.75 14.3433 22.551 14.0607 22.2528 13.9539L22 14.66ZM22 17.68V18.43C22.4142 18.43 22.75 18.0942 22.75 17.68H22ZM2 17.68H1.25C1.25 18.0942 1.58579 18.43 2 18.43V17.68ZM2 14.66L1.74865 13.9534C1.44969 14.0597 1.25 14.3427 1.25 14.66H2ZM3.74 11.01L4.44663 10.7586L4.44611 10.7572L3.74 11.01ZM2 9.27H1.25C1.25 9.58675 1.44899 9.86934 1.7472 9.97611L2 9.27ZM2 6.25V5.5C1.58579 5.5 1.25 5.83579 1.25 6.25H2ZM21.25 6.25V9.27H22.75V6.25H21.25ZM21.7486 8.56337C19.8706 9.23141 18.8838 11.2889 19.5534 13.1714L20.9666 12.6686C20.5762 11.5711 21.1494 10.3686 22.2514 9.97663L21.7486 8.56337ZM19.5539 13.1728C19.9195 14.1941 20.7259 15.0005 21.7472 15.3661L22.2528 13.9539C21.6541 13.7395 21.1805 13.2659 20.9661 12.6672L19.5539 13.1728ZM21.25 14.66V17.68H22.75V14.66H21.25ZM22 16.93H2V18.43H22V16.93ZM2.75 17.68V14.66H1.25V17.68H2.75ZM2.25135 15.3666C4.12941 14.6986 5.11623 12.6411 4.44663 10.7586L3.03337 11.2614C3.42377 12.3589 2.85059 13.5614 1.74865 13.9534L2.25135 15.3666ZM4.44611 10.7572C4.08045 9.73588 3.27412 8.92955 2.2528 8.56389L1.7472 9.97611C2.34588 10.1905 2.81955 10.6641 3.03389 11.2628L4.44611 10.7572ZM2.75 9.27V6.25H1.25V9.27H2.75ZM2 7H22V5.5H2V7ZM7.31 6.74V18.17H8.81V6.74H7.31ZM17.0997 8.39967L11.0397 14.4597L12.1003 15.5203L18.1603 9.46033L17.0997 8.39967ZM12.57 9.67C12.57 9.87231 12.4159 10 12.27 10V11.5C13.2839 11.5 14.07 10.6606 14.07 9.67H12.57ZM12.27 10C12.1241 10 11.97 9.87231 11.97 9.67H10.47C10.47 10.6606 11.2561 11.5 12.27 11.5V10ZM11.97 9.67C11.97 9.46769 12.1241 9.34 12.27 9.34V7.84C11.2561 7.84 10.47 8.67938 10.47 9.67H11.97ZM12.27 9.34C12.4159 9.34 12.57 9.46769 12.57 9.67H14.07C14.07 8.67938 13.2839 7.84 12.27 7.84V9.34ZM17.22 14.32C17.22 14.5223 17.0659 14.65 16.92 14.65V16.15C17.9339 16.15 18.72 15.3106 18.72 14.32H17.22ZM16.92 14.65C16.7741 14.65 16.62 14.5223 16.62 14.32H15.12C15.12 15.3106 15.9061 16.15 16.92 16.15V14.65ZM16.62 14.32C16.62 14.1177 16.7741 13.99 16.92 13.99V12.49C15.9061 12.49 15.12 13.3294 15.12 14.32H16.62ZM16.92 13.99C17.0659 13.99 17.22 14.1177 17.22 14.32H18.72C18.72 13.3294 17.9339 12.49 16.92 12.49V13.99Z",fill:"currentColor"})),$=c=>T.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...c},T.createElement("path",{d:"M22 12.8571V6.75774C22 6.33761 21.5848 6 21.0884 6H2.91155C2.40614 6 2 6.34511 2 6.75774V12.8571M22 12.8571H2M22 12.8571V17.0049C22 17.5468 21.5939 18 21.0884 18H2.91155C2.41516 18 2 17.5567 2 17.0049V12.8571M5.18182 16.0886L8.64545 12.8229M8.64545 12.8229L12.1087 16.0886M8.64545 12.8229C8.64545 12.8229 8.09964 10.4743 7.56328 9.96857C7.02692 9.46286 6.15419 9.46286 5.61783 9.96857C5.08146 10.4743 5.08146 11.2971 5.61783 11.8029C6.15419 12.3086 8.64545 12.8229 8.64545 12.8229ZM8.64545 12.8229C8.64545 12.8229 11.1542 12.2914 11.6905 11.7857C12.2269 11.28 12.2269 10.4571 11.6905 9.95141C11.1542 9.4457 10.2814 9.4457 9.74507 9.95141C9.2087 10.4571 8.64545 12.8229 8.64545 12.8229ZM8.64506 17.2886V6.70286",stroke:"currentColor",strokeWidth:1,strokeLinecap:"round"})),R=({orderData:c,config:a})=>{const[e,n]=v(!0),[i,s]=v(c),[l,o]=v(null);return E(()=>{if(a){const{shoppingOrderDisplayPrice:u,shoppingOrdersDisplayShipping:d,shoppingOrdersDisplaySubtotal:p,...x}=a;o(h=>({...h,...x,shoppingOrderDisplayPrice:g(u),shoppingOrdersDisplayShipping:g(d),shoppingOrdersDisplaySubtotal:g(p),salesPrintedCard:g(a.salesPrintedCard),salesGiftWrapping:g(a.salesGiftWrapping)})),n(!1)}},[a]),E(()=>{const u=Z.on("order/data",d=>{s(d)},{eager:!0});return()=>{u==null||u.off()}},[]),{loading:e,storeConfig:l,order:i}},xt=({withHeader:c,orderData:a,children:e,className:n,...i})=>{const s=z(),{loading:l,storeConfig:o,order:u}=R({orderData:a,config:s}),d=F({subtotal:"Order.OrderCostSummary.subtotal.title",shipping:"Order.OrderCostSummary.shipping.title",freeShipping:"Order.OrderCostSummary.shipping.freeShipping",tax:"Order.OrderCostSummary.tax.title",incl:"Order.OrderCostSummary.tax.incl",excl:"Order.OrderCostSummary.tax.excl",discount:"Order.OrderCostSummary.discount.title",discountSubtitle:"Order.OrderCostSummary.discount.subtitle",total:"Order.OrderCostSummary.total.title",totalFree:"Order.OrderCostSummary.totalFree",accordionTitle:"Order.OrderCostSummary.tax.accordionTitle",accordionTotalTax:"Order.OrderCostSummary.tax.accordionTotalTax",totalExcludingTaxes:"Order.OrderCostSummary.tax.totalExcludingTaxes",headerText:"Order.OrderCostSummary.headerText",printedCardTitle:"Order.OrderCostSummary.giftOptionsTax.printedCard.title",printedCardTitleInclTax:"Order.OrderCostSummary.giftOptionsTax.printedCard.inclTax",printedCardTitleExclTax:"Order.OrderCostSummary.giftOptionsTax.printedCard.exclTax",itemGiftWrappingTitle:"Order.OrderCostSummary.giftOptionsTax.itemGiftWrapping.title",itemGiftWrappingInclTax:"Order.OrderCostSummary.giftOptionsTax.itemGiftWrapping.inclTax",itemGiftWrappingExclTax:"Order.OrderCostSummary.giftOptionsTax.itemGiftWrapping.exclTax",orderGiftWrappingTitle:"Order.OrderCostSummary.giftOptionsTax.orderGiftWrapping.title",orderGiftWrappingInclTax:"Order.OrderCostSummary.giftOptionsTax.orderGiftWrapping.inclTax",orderGiftWrappingExclTax:"Order.OrderCostSummary.giftOptionsTax.orderGiftWrapping.exclTax"});return t("div",{...i,className:b(["order-cost-summary",n]),children:t(tt,{order:u,withHeader:c,loading:l,storeConfig:o,translations:d})})},M=({salesGiftWrapping:c,giftWrappingPrice:a,giftWrappingPriceInclTax:e,giftWrappingTitle:n,giftWrappingExclTaxText:i,giftWrappingInclTaxText:s})=>{const l=c==null?void 0:c.taxIncluded,o=c==null?void 0:c.taxExcluded,u=l&&!o,d=o&&!l,p=o&&l;if(a.value===0||e.value===0)return null;const x=u?r(_,{children:[r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:s}),t(m,{className:"order-cost-summary-content__description--normal-price",weight:"normal",currency:e.currency,amount:e.value})]}),t("div",{className:"order-cost-summary-content__description--subheader",children:t("span",{children:s})})]}):null,h=d?r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:n}),t("span",{children:t(m,{weight:"normal",currency:a.currency,amount:a.value})})]}):null,y=p?r(_,{children:[r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:n}),t("span",{children:t(m,{className:"order-cost-summary-content__description--normal-price",weight:"normal",currency:e.currency,amount:e.value})})]}),r("div",{className:"order-cost-summary-content__description--subheader",children:[t(m,{currency:a.currency,amount:a.value,size:"small",weight:"bold"})," ",t("span",{children:i})]})]}):null;return r("div",{className:"order-cost-summary-content__description order-cost-summary-content__description--gift-wrapping",children:[x,h,y]})},U=({translations:c,order:a,salesPrintedCard:e})=>{const n=a==null?void 0:a.totalGiftOptions,{printedCard:i,printedCardInclTax:s}=n,l=e==null?void 0:e.taxIncluded,o=e==null?void 0:e.taxExcluded;if(i.value===0||s.value===0)return null;const u=l&&!o?r(_,{children:[r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:c.printedCardTitle}),t("span",{children:t(m,{className:"order-cost-summary-content__description--normal-price",weight:"normal",currency:s.currency,amount:s.value})})]}),t("div",{className:"order-cost-summary-content__description--subheader",children:t("span",{children:t("span",{children:c.printedCardTitleInclTax})})})]}):null,d=o&&!l?r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:c.printedCardTitle}),t("span",{children:t(m,{weight:"normal",currency:i.currency,amount:i.value})})]}):null,p=o&&l?r(_,{children:[r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:c.printedCardTitle}),t("span",{children:t(m,{className:"order-cost-summary-content__description--normal-price",weight:"normal",currency:s.currency,amount:s.value})})]}),r("div",{className:"order-cost-summary-content__description--subheader",children:[t(m,{currency:i.currency,amount:i.value,size:"small",weight:"bold"})," ",t("span",{children:c.printedCardTitleExclTax})]})]}):null;return r("div",{className:"order-cost-summary-content__description order-cost-summary-content__description--printed-card",children:[u,d,p]})},J=({translations:c,order:a,subtotalInclTax:e,subtotalExclTax:n,shoppingOrdersDisplaySubtotal:i})=>{var p,x,h,y;const s=i.taxIncluded,l=i.taxExcluded,o=s&&!l?r(_,{children:[r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:c.subtotal}),t(m,{className:"order-cost-summary-content__description--normal-price",weight:"normal",currency:(p=a==null?void 0:a.subtotalInclTax)==null?void 0:p.currency,amount:e})]}),t("div",{className:"order-cost-summary-content__description--subheader",children:t("span",{children:c.incl})})]}):null,u=l&&!s?r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:c.subtotal}),t(m,{className:"order-cost-summary-content__description--normal-price",weight:"normal",currency:(x=a==null?void 0:a.subtotalExclTax)==null?void 0:x.currency,amount:n})]}):null,d=l&&s?r(_,{children:[r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:c.subtotal}),t(m,{className:"order-cost-summary-content__description--normal-price",weight:"normal",currency:(h=a==null?void 0:a.subtotalInclTax)==null?void 0:h.currency,amount:e})]}),r("div",{className:"order-cost-summary-content__description--subheader",children:[t(m,{currency:(y=a==null?void 0:a.subtotalExclTax)==null?void 0:y.currency,amount:n,size:"small",weight:"bold"})," ",t("span",{children:c.excl})]})]}):null;return r("div",{className:"order-cost-summary-content__description order-cost-summary-content__description--subtotal",children:[o,u,d]})},K=({translations:c,shoppingOrdersDisplayShipping:a,order:e,totalShipping:n})=>{var i,s,l,o;return e!=null&&e.isVirtual?null:r("div",{className:"order-cost-summary-content__description order-cost-summary-content__description--shipping",children:[r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:c.shipping}),(i=e==null?void 0:e.totalShipping)!=null&&i.value?t(m,{weight:"normal",currency:(s=e==null?void 0:e.totalShipping)==null?void 0:s.currency,amount:n}):t("span",{children:c.freeShipping})]}),r("div",{className:"order-cost-summary-content__description--subheader",children:[a.taxIncluded&&a.taxExcluded?r(_,{children:[t(m,{weight:"normal",currency:(l=e==null?void 0:e.totalShipping)==null?void 0:l.currency,amount:(o=e==null?void 0:e.totalShipping)==null?void 0:o.value,size:"small"}),r("span",{children:[" ",c.excl]})]}):null,a.taxIncluded&&!a.taxExcluded?t("span",{children:c.incl}):null]})]})},Q=({translations:c,order:a})=>{var s,l;const e=a==null?void 0:a.coupons,n=a==null?void 0:a.discounts,i=(n==null?void 0:n.reduce((o,u)=>o+(u.amount.value??0),0))||0;return!((s=a==null?void 0:a.discounts)!=null&&s.length)&&i===0?null:r("div",{className:"order-cost-summary-content__description order-cost-summary-content__description--discount",children:[r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:c.discount}),t("span",{children:t(m,{weight:"normal",sale:!0,currency:(l=n[0])==null?void 0:l.amount.currency,amount:-i})})]}),e.map(o=>t("div",{className:"order-cost-summary-content__description--subheader",children:r("span",{children:[t(H,{source:q,size:"16",className:"order-cost-summary-content__description--coupon-icon"}),t("span",{children:o.code})]})},o.code))]})},X=({translations:c,shoppingOrdersDisplaySubtotal:a,order:e})=>{var i,s,l,o,u;const n=((i=e==null?void 0:e.grandTotal)==null?void 0:i.value)===0;return r("div",{className:"order-cost-summary-content__description order-cost-summary-content__description--total",children:[r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:c.total}),n?t("span",{className:"order-cost-summary-content__description--total-free",children:c.totalFree}):t(m,{currency:(s=e==null?void 0:e.grandTotal)==null?void 0:s.currency,amount:(l=e==null?void 0:e.grandTotal)==null?void 0:l.value,weight:"bold",size:"medium"})]}),a.taxExcluded&&a.taxIncluded&&!n?r("div",{className:"order-cost-summary-content__description--subheader",children:[t("span",{children:c.totalExcludingTaxes}),t(m,{currency:(o=e==null?void 0:e.grandTotalExclTax)==null?void 0:o.currency,amount:(u=e==null?void 0:e.grandTotalExclTax)==null?void 0:u.value,weight:"normal",size:"small"})]}):null]})},Y=({translations:c,renderTaxAccordion:a,totalAccordionTaxValue:e,order:n})=>{var l,o,u;const[i,s]=v(!1);return a?t(I,{"data-testid":"tax-accordionTaxes",className:"order-cost-summary-content__accordion",iconOpen:j,iconClose:B,children:r(G,{onStateChange:s,title:c.accordionTitle,secondaryText:t(_,{children:i?null:t(m,{weight:"normal",amount:e,currency:(o=n==null?void 0:n.totalTax)==null?void 0:o.currency})}),renderContentWhenClosed:!1,children:[(u=n==null?void 0:n.taxes)==null?void 0:u.map((d,p)=>{var x,h,y;return r("div",{className:"order-cost-summary-content__accordion-row",children:[t("p",{children:d==null?void 0:d.title}),t("p",{children:t(m,{weight:"normal",amount:(x=d==null?void 0:d.amount)==null?void 0:x.value,currency:(h=d==null?void 0:d.amount)==null?void 0:h.currency})})]},`${(y=d==null?void 0:d.amount)==null?void 0:y.value}${p}`)}),r("div",{className:"order-cost-summary-content__accordion-row order-cost-summary-content__accordion-total",children:[t("p",{children:c.accordionTotalTax}),t("p",{children:t(m,{weight:"normal",amount:e,currency:n.totalTax.currency,size:"medium"})})]})]})}):t("div",{className:"order-cost-summary-content__description order-cost-summary-content__description--tax",children:r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:c.tax}),t(m,{currency:(l=n==null?void 0:n.totalTax)==null?void 0:l.currency,amount:n==null?void 0:n.totalTax.value,weight:"normal",size:"small"})]})})},P=({totalGiftCardValue:c,totalGiftCardCurrency:a,order:e})=>{const n=e==null?void 0:e.appliedGiftCards;return c?r("div",{className:"order-cost-summary-content__description order-cost-summary-content__description--discount",children:[r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:t(A,{id:"Order.OrderCostSummary.appliedGiftCards.label",plural:n==null?void 0:n.length,fields:{count:n==null?void 0:n.length}})}),t("span",{children:t(m,{weight:"normal",sale:!0,currency:a,amount:-c})})]}),n.map(i=>t("div",{className:"order-cost-summary-content__description--subheader",children:r("span",{children:[t(H,{source:$,size:"16",className:"order-cost-summary-content__description--giftcard-icon"}),t("span",{children:i.code})]})},i.code))]}):null},tt=({translations:c,loading:a,storeConfig:e,order:n,withHeader:i=!0})=>{var h,y,C,w,S,f,N;if(a||!n)return t(D,{});const s=((h=n==null?void 0:n.totalGiftCard)==null?void 0:h.value)??0,l=((y=n.totalGiftCard)==null?void 0:y.currency)??"",o=((C=n.subtotalInclTax)==null?void 0:C.value)??0,u=((w=n.subtotalExclTax)==null?void 0:w.value)??0,d=((S=n.totalShipping)==null?void 0:S.value)??0,p=!!((f=n==null?void 0:n.taxes)!=null&&f.length)&&(e==null?void 0:e.shoppingOrdersDisplayFullSummary),x=p?(N=n==null?void 0:n.taxes)==null?void 0:N.reduce((L,O)=>{var V;return+((V=O==null?void 0:O.amount)==null?void 0:V.value)+L},0):0;return r(W,{variant:"secondary",className:b(["order-cost-summary-content"]),children:[i?t(k,{title:c.headerText}):null,r("div",{className:"order-cost-summary-content__wrapper",children:[t(J,{translations:c,order:n,subtotalInclTax:o,subtotalExclTax:u,shoppingOrdersDisplaySubtotal:e==null?void 0:e.shoppingOrdersDisplaySubtotal}),t(K,{translations:c,order:n,totalShipping:d,shoppingOrdersDisplayShipping:e==null?void 0:e.shoppingOrdersDisplayShipping}),t(U,{order:n,translations:c,salesPrintedCard:e==null?void 0:e.salesPrintedCard}),t(M,{salesGiftWrapping:e==null?void 0:e.salesGiftWrapping,giftWrappingPrice:n.totalGiftOptions.giftWrappingForItems,giftWrappingPriceInclTax:n.totalGiftOptions.giftWrappingForItemsInclTax,giftWrappingTitle:c.itemGiftWrappingTitle,giftWrappingExclTaxText:c.itemGiftWrappingExclTax,giftWrappingInclTaxText:c.itemGiftWrappingInclTax}),t(M,{salesGiftWrapping:e==null?void 0:e.salesGiftWrapping,giftWrappingPrice:n.totalGiftOptions.giftWrappingForOrder,giftWrappingPriceInclTax:n.totalGiftOptions.giftWrappingForOrderInclTax,giftWrappingTitle:c.orderGiftWrappingTitle,giftWrappingExclTaxText:c.orderGiftWrappingExclTax,giftWrappingInclTaxText:c.orderGiftWrappingInclTax}),t(Q,{translations:c,order:n}),t(P,{order:n,totalGiftCardValue:s,totalGiftCardCurrency:l}),t(Y,{order:n,translations:c,renderTaxAccordion:p,totalAccordionTaxValue:x}),t(X,{translations:c,shoppingOrdersDisplaySubtotal:e==null?void 0:e.shoppingOrdersDisplaySubtotal,order:n})]})]})};export{xt as OrderCostSummary,xt as default};
|
|
3
|
+
import{jsx as t,jsxs as r,Fragment as _}from"@dropins/tools/preact-jsx-runtime.js";import{classes as b}from"@dropins/tools/lib.js";import{useState as v,useEffect as V}from"@dropins/tools/preact-hooks.js";import"@dropins/tools/preact.js";import{events as Z}from"@dropins/tools/event-bus.js";import{s as T}from"../chunks/setTaxStatus.js";import{Price as m,Icon as H,Accordion as I,AccordionSection as G,Card as W,Header as k}from"@dropins/tools/components.js";import{u as z}from"../chunks/useGetStoreConfig.js";import"../chunks/ShippingStatusCard.js";import*as g from"@dropins/tools/preact-compat.js";import{O as D}from"../chunks/OrderLoaders.js";import{useText as F,Text as A}from"@dropins/tools/i18n.js";import"../chunks/getStoreConfig.js";import"../chunks/fetch-graphql.js";import"@dropins/tools/fetch-graphql.js";const j=c=>g.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...c},g.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M7.74512 9.87701L12.0001 14.132L16.2551 9.87701",stroke:"currentColor",strokeWidth:1,strokeLinecap:"square",strokeLinejoin:"round"})),B=c=>g.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...c},g.createElement("path",{d:"M7.74512 14.132L12.0001 9.87701L16.2551 14.132",stroke:"currentColor",strokeWidth:1,strokeLinecap:"square",strokeLinejoin:"round"})),q=c=>g.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...c},g.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M22 6.25H22.75C22.75 5.83579 22.4142 5.5 22 5.5V6.25ZM22 9.27L22.2514 9.97663C22.5503 9.87029 22.75 9.58731 22.75 9.27H22ZM20.26 12.92L19.5534 13.1714L19.5539 13.1728L20.26 12.92ZM22 14.66H22.75C22.75 14.3433 22.551 14.0607 22.2528 13.9539L22 14.66ZM22 17.68V18.43C22.4142 18.43 22.75 18.0942 22.75 17.68H22ZM2 17.68H1.25C1.25 18.0942 1.58579 18.43 2 18.43V17.68ZM2 14.66L1.74865 13.9534C1.44969 14.0597 1.25 14.3427 1.25 14.66H2ZM3.74 11.01L4.44663 10.7586L4.44611 10.7572L3.74 11.01ZM2 9.27H1.25C1.25 9.58675 1.44899 9.86934 1.7472 9.97611L2 9.27ZM2 6.25V5.5C1.58579 5.5 1.25 5.83579 1.25 6.25H2ZM21.25 6.25V9.27H22.75V6.25H21.25ZM21.7486 8.56337C19.8706 9.23141 18.8838 11.2889 19.5534 13.1714L20.9666 12.6686C20.5762 11.5711 21.1494 10.3686 22.2514 9.97663L21.7486 8.56337ZM19.5539 13.1728C19.9195 14.1941 20.7259 15.0005 21.7472 15.3661L22.2528 13.9539C21.6541 13.7395 21.1805 13.2659 20.9661 12.6672L19.5539 13.1728ZM21.25 14.66V17.68H22.75V14.66H21.25ZM22 16.93H2V18.43H22V16.93ZM2.75 17.68V14.66H1.25V17.68H2.75ZM2.25135 15.3666C4.12941 14.6986 5.11623 12.6411 4.44663 10.7586L3.03337 11.2614C3.42377 12.3589 2.85059 13.5614 1.74865 13.9534L2.25135 15.3666ZM4.44611 10.7572C4.08045 9.73588 3.27412 8.92955 2.2528 8.56389L1.7472 9.97611C2.34588 10.1905 2.81955 10.6641 3.03389 11.2628L4.44611 10.7572ZM2.75 9.27V6.25H1.25V9.27H2.75ZM2 7H22V5.5H2V7ZM7.31 6.74V18.17H8.81V6.74H7.31ZM17.0997 8.39967L11.0397 14.4597L12.1003 15.5203L18.1603 9.46033L17.0997 8.39967ZM12.57 9.67C12.57 9.87231 12.4159 10 12.27 10V11.5C13.2839 11.5 14.07 10.6606 14.07 9.67H12.57ZM12.27 10C12.1241 10 11.97 9.87231 11.97 9.67H10.47C10.47 10.6606 11.2561 11.5 12.27 11.5V10ZM11.97 9.67C11.97 9.46769 12.1241 9.34 12.27 9.34V7.84C11.2561 7.84 10.47 8.67938 10.47 9.67H11.97ZM12.27 9.34C12.4159 9.34 12.57 9.46769 12.57 9.67H14.07C14.07 8.67938 13.2839 7.84 12.27 7.84V9.34ZM17.22 14.32C17.22 14.5223 17.0659 14.65 16.92 14.65V16.15C17.9339 16.15 18.72 15.3106 18.72 14.32H17.22ZM16.92 14.65C16.7741 14.65 16.62 14.5223 16.62 14.32H15.12C15.12 15.3106 15.9061 16.15 16.92 16.15V14.65ZM16.62 14.32C16.62 14.1177 16.7741 13.99 16.92 13.99V12.49C15.9061 12.49 15.12 13.3294 15.12 14.32H16.62ZM16.92 13.99C17.0659 13.99 17.22 14.1177 17.22 14.32H18.72C18.72 13.3294 17.9339 12.49 16.92 12.49V13.99Z",fill:"currentColor"})),$=c=>g.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...c},g.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M22 12.8571V6.75774C22 6.33761 21.5848 6 21.0884 6H2.91155C2.40614 6 2 6.34511 2 6.75774V12.8571M22 12.8571H2M22 12.8571V17.0049C22 17.5468 21.5939 18 21.0884 18H2.91155C2.41516 18 2 17.5567 2 17.0049V12.8571M5.18182 16.0886L8.64545 12.8229M8.64545 12.8229L12.1087 16.0886M8.64545 12.8229C8.64545 12.8229 8.09964 10.4743 7.56328 9.96857C7.02692 9.46286 6.15419 9.46286 5.61783 9.96857C5.08146 10.4743 5.08146 11.2971 5.61783 11.8029C6.15419 12.3086 8.64545 12.8229 8.64545 12.8229ZM8.64545 12.8229C8.64545 12.8229 11.1542 12.2914 11.6905 11.7857C12.2269 11.28 12.2269 10.4571 11.6905 9.95141C11.1542 9.4457 10.2814 9.4457 9.74507 9.95141C9.2087 10.4571 8.64545 12.8229 8.64545 12.8229ZM8.64506 17.2886V6.70286",stroke:"currentColor",strokeWidth:1,strokeLinecap:"round"})),R=({orderData:c,config:a})=>{const[e,n]=v(!0),[i,s]=v(c),[l,o]=v(null);return V(()=>{if(a){const{shoppingOrderDisplayPrice:u,shoppingOrdersDisplayShipping:d,shoppingOrdersDisplaySubtotal:p,...x}=a;o(h=>({...h,...x,shoppingOrderDisplayPrice:T(u),shoppingOrdersDisplayShipping:T(d),shoppingOrdersDisplaySubtotal:T(p),salesPrintedCard:T(a.salesPrintedCard),salesGiftWrapping:T(a.salesGiftWrapping)})),n(!1)}},[a]),V(()=>{const u=Z.on("order/data",d=>{s(d)},{eager:!0});return()=>{u==null||u.off()}},[]),{loading:e,storeConfig:l,order:i}},xt=({withHeader:c,orderData:a,children:e,className:n,...i})=>{const s=z(),{loading:l,storeConfig:o,order:u}=R({orderData:a,config:s}),d=F({subtotal:"Order.OrderCostSummary.subtotal.title",shipping:"Order.OrderCostSummary.shipping.title",freeShipping:"Order.OrderCostSummary.shipping.freeShipping",tax:"Order.OrderCostSummary.tax.title",incl:"Order.OrderCostSummary.tax.incl",excl:"Order.OrderCostSummary.tax.excl",discount:"Order.OrderCostSummary.discount.title",discountSubtitle:"Order.OrderCostSummary.discount.subtitle",total:"Order.OrderCostSummary.total.title",totalFree:"Order.OrderCostSummary.totalFree",accordionTitle:"Order.OrderCostSummary.tax.accordionTitle",accordionTotalTax:"Order.OrderCostSummary.tax.accordionTotalTax",totalExcludingTaxes:"Order.OrderCostSummary.tax.totalExcludingTaxes",headerText:"Order.OrderCostSummary.headerText",printedCardTitle:"Order.OrderCostSummary.giftOptionsTax.printedCard.title",printedCardTitleInclTax:"Order.OrderCostSummary.giftOptionsTax.printedCard.inclTax",printedCardTitleExclTax:"Order.OrderCostSummary.giftOptionsTax.printedCard.exclTax",itemGiftWrappingTitle:"Order.OrderCostSummary.giftOptionsTax.itemGiftWrapping.title",itemGiftWrappingInclTax:"Order.OrderCostSummary.giftOptionsTax.itemGiftWrapping.inclTax",itemGiftWrappingExclTax:"Order.OrderCostSummary.giftOptionsTax.itemGiftWrapping.exclTax",orderGiftWrappingTitle:"Order.OrderCostSummary.giftOptionsTax.orderGiftWrapping.title",orderGiftWrappingInclTax:"Order.OrderCostSummary.giftOptionsTax.orderGiftWrapping.inclTax",orderGiftWrappingExclTax:"Order.OrderCostSummary.giftOptionsTax.orderGiftWrapping.exclTax"});return t("div",{...i,className:b(["order-cost-summary",n]),children:t(tt,{order:u,withHeader:c,loading:l,storeConfig:o,translations:d})})},M=({salesGiftWrapping:c,giftWrappingPrice:a,giftWrappingPriceInclTax:e,giftWrappingTitle:n,giftWrappingExclTaxText:i,giftWrappingInclTaxText:s})=>{const l=c==null?void 0:c.taxIncluded,o=c==null?void 0:c.taxExcluded,u=l&&!o,d=o&&!l,p=o&&l;if(a.value===0||e.value===0)return null;const x=u?r(_,{children:[r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:s}),t(m,{className:"order-cost-summary-content__description--normal-price",weight:"normal",currency:e.currency,amount:e.value})]}),t("div",{className:"order-cost-summary-content__description--subheader",children:t("span",{children:s})})]}):null,h=d?r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:n}),t("span",{children:t(m,{weight:"normal",currency:a.currency,amount:a.value})})]}):null,y=p?r(_,{children:[r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:n}),t("span",{children:t(m,{className:"order-cost-summary-content__description--normal-price",weight:"normal",currency:e.currency,amount:e.value})})]}),r("div",{className:"order-cost-summary-content__description--subheader",children:[t(m,{currency:a.currency,amount:a.value,size:"small",weight:"bold"})," ",t("span",{children:i})]})]}):null;return r("div",{className:"order-cost-summary-content__description order-cost-summary-content__description--gift-wrapping",children:[x,h,y]})},U=({translations:c,order:a,salesPrintedCard:e})=>{const n=a==null?void 0:a.totalGiftOptions,{printedCard:i,printedCardInclTax:s}=n,l=e==null?void 0:e.taxIncluded,o=e==null?void 0:e.taxExcluded;if(i.value===0||s.value===0)return null;const u=l&&!o?r(_,{children:[r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:c.printedCardTitle}),t("span",{children:t(m,{className:"order-cost-summary-content__description--normal-price",weight:"normal",currency:s.currency,amount:s.value})})]}),t("div",{className:"order-cost-summary-content__description--subheader",children:t("span",{children:t("span",{children:c.printedCardTitleInclTax})})})]}):null,d=o&&!l?r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:c.printedCardTitle}),t("span",{children:t(m,{weight:"normal",currency:i.currency,amount:i.value})})]}):null,p=o&&l?r(_,{children:[r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:c.printedCardTitle}),t("span",{children:t(m,{className:"order-cost-summary-content__description--normal-price",weight:"normal",currency:s.currency,amount:s.value})})]}),r("div",{className:"order-cost-summary-content__description--subheader",children:[t(m,{currency:i.currency,amount:i.value,size:"small",weight:"bold"})," ",t("span",{children:c.printedCardTitleExclTax})]})]}):null;return r("div",{className:"order-cost-summary-content__description order-cost-summary-content__description--printed-card",children:[u,d,p]})},J=({translations:c,order:a,subtotalInclTax:e,subtotalExclTax:n,shoppingOrdersDisplaySubtotal:i})=>{var p,x,h,y;const s=i.taxIncluded,l=i.taxExcluded,o=s&&!l?r(_,{children:[r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:c.subtotal}),t(m,{className:"order-cost-summary-content__description--normal-price",weight:"normal",currency:(p=a==null?void 0:a.subtotalInclTax)==null?void 0:p.currency,amount:e})]}),t("div",{className:"order-cost-summary-content__description--subheader",children:t("span",{children:c.incl})})]}):null,u=l&&!s?r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:c.subtotal}),t(m,{className:"order-cost-summary-content__description--normal-price",weight:"normal",currency:(x=a==null?void 0:a.subtotalExclTax)==null?void 0:x.currency,amount:n})]}):null,d=l&&s?r(_,{children:[r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:c.subtotal}),t(m,{className:"order-cost-summary-content__description--normal-price",weight:"normal",currency:(h=a==null?void 0:a.subtotalInclTax)==null?void 0:h.currency,amount:e})]}),r("div",{className:"order-cost-summary-content__description--subheader",children:[t(m,{currency:(y=a==null?void 0:a.subtotalExclTax)==null?void 0:y.currency,amount:n,size:"small",weight:"bold"})," ",t("span",{children:c.excl})]})]}):null;return r("div",{className:"order-cost-summary-content__description order-cost-summary-content__description--subtotal",children:[o,u,d]})},K=({translations:c,shoppingOrdersDisplayShipping:a,order:e,totalShipping:n})=>{var i,s,l,o;return e!=null&&e.isVirtual?null:r("div",{className:"order-cost-summary-content__description order-cost-summary-content__description--shipping",children:[r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:c.shipping}),(i=e==null?void 0:e.totalShipping)!=null&&i.value?t(m,{weight:"normal",currency:(s=e==null?void 0:e.totalShipping)==null?void 0:s.currency,amount:n}):t("span",{children:c.freeShipping})]}),r("div",{className:"order-cost-summary-content__description--subheader",children:[a.taxIncluded&&a.taxExcluded?r(_,{children:[t(m,{weight:"normal",currency:(l=e==null?void 0:e.totalShipping)==null?void 0:l.currency,amount:(o=e==null?void 0:e.totalShipping)==null?void 0:o.value,size:"small"}),r("span",{children:[" ",c.excl]})]}):null,a.taxIncluded&&!a.taxExcluded?t("span",{children:c.incl}):null]})]})},Q=({translations:c,order:a})=>{var s,l;const e=a==null?void 0:a.coupons,n=a==null?void 0:a.discounts,i=(n==null?void 0:n.reduce((o,u)=>o+(u.amount.value??0),0))||0;return!((s=a==null?void 0:a.discounts)!=null&&s.length)&&i===0?null:r("div",{className:"order-cost-summary-content__description order-cost-summary-content__description--discount",children:[r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:c.discount}),t("span",{children:t(m,{weight:"normal",sale:!0,currency:(l=n[0])==null?void 0:l.amount.currency,amount:-i})})]}),e.map(o=>t("div",{className:"order-cost-summary-content__description--subheader",children:r("span",{children:[t(H,{source:q,size:"16",className:"order-cost-summary-content__description--coupon-icon"}),t("span",{children:o.code})]})},o.code))]})},X=({translations:c,shoppingOrdersDisplaySubtotal:a,order:e})=>{var i,s,l,o,u;const n=((i=e==null?void 0:e.grandTotal)==null?void 0:i.value)===0;return r("div",{className:"order-cost-summary-content__description order-cost-summary-content__description--total",children:[r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:c.total}),n?t("span",{className:"order-cost-summary-content__description--total-free",children:c.totalFree}):t(m,{currency:(s=e==null?void 0:e.grandTotal)==null?void 0:s.currency,amount:(l=e==null?void 0:e.grandTotal)==null?void 0:l.value,weight:"bold",size:"medium"})]}),a.taxExcluded&&a.taxIncluded&&!n?r("div",{className:"order-cost-summary-content__description--subheader",children:[t("span",{children:c.totalExcludingTaxes}),t(m,{currency:(o=e==null?void 0:e.grandTotalExclTax)==null?void 0:o.currency,amount:(u=e==null?void 0:e.grandTotalExclTax)==null?void 0:u.value,weight:"normal",size:"small"})]}):null]})},Y=({translations:c,renderTaxAccordion:a,totalAccordionTaxValue:e,order:n})=>{var l,o,u;const[i,s]=v(!1);return a?t(I,{"data-testid":"tax-accordionTaxes",className:"order-cost-summary-content__accordion",iconOpen:j,iconClose:B,children:r(G,{onStateChange:s,title:c.accordionTitle,secondaryText:t(_,{children:i?null:t(m,{weight:"normal",amount:e,currency:(o=n==null?void 0:n.totalTax)==null?void 0:o.currency})}),renderContentWhenClosed:!1,children:[(u=n==null?void 0:n.taxes)==null?void 0:u.map((d,p)=>{var x,h,y;return r("div",{className:"order-cost-summary-content__accordion-row",children:[t("p",{children:d==null?void 0:d.title}),t("p",{children:t(m,{weight:"normal",amount:(x=d==null?void 0:d.amount)==null?void 0:x.value,currency:(h=d==null?void 0:d.amount)==null?void 0:h.currency})})]},`${(y=d==null?void 0:d.amount)==null?void 0:y.value}${p}`)}),r("div",{className:"order-cost-summary-content__accordion-row order-cost-summary-content__accordion-total",children:[t("p",{children:c.accordionTotalTax}),t("p",{children:t(m,{weight:"normal",amount:e,currency:n.totalTax.currency,size:"medium"})})]})]})}):t("div",{className:"order-cost-summary-content__description order-cost-summary-content__description--tax",children:r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:c.tax}),t(m,{currency:(l=n==null?void 0:n.totalTax)==null?void 0:l.currency,amount:n==null?void 0:n.totalTax.value,weight:"normal",size:"small"})]})})},P=({totalGiftCardValue:c,totalGiftCardCurrency:a,order:e})=>{const n=e==null?void 0:e.appliedGiftCards;return c?r("div",{className:"order-cost-summary-content__description order-cost-summary-content__description--discount",children:[r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:t(A,{id:"Order.OrderCostSummary.appliedGiftCards.label",plural:n==null?void 0:n.length,fields:{count:n==null?void 0:n.length}})}),t("span",{children:t(m,{weight:"normal",sale:!0,currency:a,amount:-c})})]}),n.map(i=>t("div",{className:"order-cost-summary-content__description--subheader",children:r("span",{children:[t(H,{source:$,size:"16",className:"order-cost-summary-content__description--giftcard-icon"}),t("span",{children:i.code})]})},i.code))]}):null},tt=({translations:c,loading:a,storeConfig:e,order:n,withHeader:i=!0})=>{var h,y,C,w,S,f,N;if(a||!n)return t(D,{});const s=((h=n==null?void 0:n.totalGiftCard)==null?void 0:h.value)??0,l=((y=n.totalGiftCard)==null?void 0:y.currency)??"",o=((C=n.subtotalInclTax)==null?void 0:C.value)??0,u=((w=n.subtotalExclTax)==null?void 0:w.value)??0,d=((S=n.totalShipping)==null?void 0:S.value)??0,p=!!((f=n==null?void 0:n.taxes)!=null&&f.length)&&(e==null?void 0:e.shoppingOrdersDisplayFullSummary),x=p?(N=n==null?void 0:n.taxes)==null?void 0:N.reduce((L,O)=>{var E;return+((E=O==null?void 0:O.amount)==null?void 0:E.value)+L},0):0;return r(W,{variant:"secondary",className:b(["order-cost-summary-content"]),children:[i?t(k,{title:c.headerText}):null,r("div",{className:"order-cost-summary-content__wrapper",children:[t(J,{translations:c,order:n,subtotalInclTax:o,subtotalExclTax:u,shoppingOrdersDisplaySubtotal:e==null?void 0:e.shoppingOrdersDisplaySubtotal}),t(K,{translations:c,order:n,totalShipping:d,shoppingOrdersDisplayShipping:e==null?void 0:e.shoppingOrdersDisplayShipping}),t(U,{order:n,translations:c,salesPrintedCard:e==null?void 0:e.salesPrintedCard}),t(M,{salesGiftWrapping:e==null?void 0:e.salesGiftWrapping,giftWrappingPrice:n.totalGiftOptions.giftWrappingForItems,giftWrappingPriceInclTax:n.totalGiftOptions.giftWrappingForItemsInclTax,giftWrappingTitle:c.itemGiftWrappingTitle,giftWrappingExclTaxText:c.itemGiftWrappingExclTax,giftWrappingInclTaxText:c.itemGiftWrappingInclTax}),t(M,{salesGiftWrapping:e==null?void 0:e.salesGiftWrapping,giftWrappingPrice:n.totalGiftOptions.giftWrappingForOrder,giftWrappingPriceInclTax:n.totalGiftOptions.giftWrappingForOrderInclTax,giftWrappingTitle:c.orderGiftWrappingTitle,giftWrappingExclTaxText:c.orderGiftWrappingExclTax,giftWrappingInclTaxText:c.orderGiftWrappingInclTax}),t(Q,{translations:c,order:n}),t(P,{order:n,totalGiftCardValue:s,totalGiftCardCurrency:l}),t(Y,{order:n,translations:c,renderTaxAccordion:p,totalAccordionTaxValue:x}),t(X,{translations:c,shoppingOrdersDisplaySubtotal:e==null?void 0:e.shoppingOrdersDisplaySubtotal,order:n})]})]})};export{xt as OrderCostSummary,xt as default};
|
|
4
4
|
//# sourceMappingURL=OrderCostSummary.js.map
|