@dropins/storefront-order 0.1.0-alpha4 → 0.1.0-alpha5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. package/api/getGuestOrder/getGuestOrder.d.ts +2 -2
  2. package/api/getOrderDetailsById/getOrderDetailsById.d.ts +1 -2
  3. package/api/getOrderDetailsById/graphql/orderItemsFragment.graphql.d.ts +1 -1
  4. package/api/guestOrderByToken/guestOrderByToken.d.ts +2 -2
  5. package/api.js +130 -29
  6. package/chunks/OrderActions.js +1 -0
  7. package/chunks/OrderLoaders.js +1 -0
  8. package/chunks/getGuestOrder.js +75 -31
  9. package/components/OrderActions/OrderActions.d.ts +5 -0
  10. package/components/OrderActions/index.d.ts +3 -0
  11. package/components/OrderLoaders/OrderLoaders.d.ts +6 -0
  12. package/components/OrderLoaders/index.d.ts +3 -0
  13. package/components/OrderStatusContent/OrderStatusContent.d.ts +5 -0
  14. package/components/OrderStatusContent/index.d.ts +3 -0
  15. package/components/ShippingStatusCard/ShippingStatusCard.d.ts +5 -0
  16. package/components/ShippingStatusCard/index.d.ts +3 -0
  17. package/components/index.d.ts +4 -0
  18. package/configs/mock.config.d.ts +720 -0
  19. package/containers/OrderSearch.js +1 -1
  20. package/containers/OrderStatus/OrderStatus.d.ts +5 -0
  21. package/containers/OrderStatus/index.d.ts +3 -0
  22. package/containers/OrderStatus.d.ts +3 -0
  23. package/containers/OrderStatus.js +1 -0
  24. package/containers/ShippingStatus/ShippingStatus.d.ts +5 -0
  25. package/containers/ShippingStatus/index.d.ts +3 -0
  26. package/containers/ShippingStatus.d.ts +3 -0
  27. package/containers/ShippingStatus.js +1 -0
  28. package/containers/index.d.ts +2 -0
  29. package/data/models/index.d.ts +0 -1
  30. package/data/models/order-details.d.ts +109 -32
  31. package/data/transforms/transform-guest-order.d.ts +3 -3
  32. package/data/transforms/transform-order-details.d.ts +4 -2
  33. package/hooks/containers/useOrderSearch.d.ts +1 -1
  34. package/hooks/containers/useOrderStatus.d.ts +8 -0
  35. package/hooks/containers/useShippingStatus.d.ts +7 -0
  36. package/hooks/index.d.ts +2 -0
  37. package/i18n/en_US.json.d.ts +50 -2
  38. package/lib/convertCase.d.ts +4 -0
  39. package/lib/convertToInputDateFormat.d.ts +1 -0
  40. package/package.json +1 -1
  41. package/render.js +2 -2
  42. package/types/api/getOrderDetails.types.d.ts +54 -28
  43. package/types/form.types.d.ts +5 -5
  44. package/types/index.d.ts +4 -2
  45. package/types/orderSearch.types.d.ts +5 -5
  46. package/types/orderStatus.types.d.ts +41 -0
  47. package/types/shippingStatus.types.d.ts +18 -0
  48. package/data/models/guest-order.d.ts +0 -21
@@ -1 +1 @@
1
- import{jsxs as M,jsx as c,Fragment as C}from"@dropins/tools/preact-jsx-runtime.js";import{classes as S}from"@dropins/tools/lib.js";import{Card as L,InLineAlert as R,Icon as k,Button as q,Field as D,Picker as w,Input as V,InputDate as g,Checkbox as F,TextArea as U}from"@dropins/tools/components.js";import{useRef as H,useState as N,useEffect as G,useCallback as A,useMemo as X}from"@dropins/tools/preact-hooks.js";import{Text as _,useText as v}from"@dropins/tools/i18n.js";import*as I from"@dropins/tools/preact-compat.js";import{memo as x,useCallback as O}from"@dropins/tools/preact-compat.js";import{events as P}from"@dropins/tools/event-bus.js";import{e as W}from"../chunks/getGuestOrder.js";import"@dropins/tools/fetch-graphql.js";const z=r=>I.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...r},I.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M11.8052 14.4968C10.8552 14.4968 9.9752 14.0268 9.4452 13.2368L9.4152 13.1868L9.3852 13.1268C8.1352 11.2268 7.5352 8.96681 7.6852 6.68681C7.7552 4.42681 9.6052 2.61681 11.8652 2.60681H12.0052C14.2752 2.47681 16.2152 4.21681 16.3452 6.47681C16.3452 6.55681 16.3452 6.62681 16.3452 6.70681C16.4852 8.94681 15.9052 11.1768 14.6852 13.0568L14.6052 13.1768C14.0552 13.9868 13.1352 14.4668 12.1652 14.4768H12.0052C11.9352 14.4768 11.8652 14.4868 11.7952 14.4868L11.8052 14.4968Z",stroke:"currentColor"}),I.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M4.3252 21.5469C4.3552 20.4169 4.4752 19.2869 4.6752 18.1769C4.8952 17.1669 6.4752 16.0269 8.9052 15.1569C9.2352 15.0369 9.4852 14.7869 9.5952 14.4569L9.8052 14.0269",stroke:"currentColor"}),I.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M14.425 14.4069L14.165 14.1569C14.375 14.5969 14.725 14.9569 15.155 15.1869C16.945 15.7969 19.125 16.9569 19.375 18.2069C19.585 19.3069 19.685 20.4269 19.675 21.5369",stroke:"currentColor"})),Z=r=>I.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...r},I.createElement("path",{vectorEffect:"non-scaling-stroke",fillRule:"evenodd",clipRule:"evenodd",d:"M1 20.8953L12.1922 1.5L23.395 20.8953H1ZM13.0278 13.9638L13.25 10.0377V9H11.25V10.0377L11.4722 13.9638H13.0278ZM11.2994 16V17.7509H13.2253V16H11.2994Z",fill:"currentColor"})),j=({onSubmit:r,loading:t,inLineAlert:i,fieldsConfig:n})=>M(L,{variant:"secondary",className:"dropin-order-search-form",children:[c("h2",{className:"dropin-order-search-form__title",children:c(_,{id:"Order.OrderSearchForm.title"})}),c("p",{children:c(_,{id:"Order.OrderSearchForm.description"})}),i.text?c(R,{"data-testid":"orderAlert",className:"dropin-order-search-form__alert",type:i.type,variant:"secondary",heading:i.text,icon:c(k,{source:Z})}):null,c(K,{className:"dropin-order-search-form__wrapper",name:"orderSearchForm",loading:t,fieldsConfig:n,onSubmit:r,children:c("div",{className:"dropin-order-search-form__button-container",children:c(q,{className:"dropin-order-search-form__button",size:"medium",variant:"primary",type:"submit",disabled:t,children:c(_,{id:"Order.OrderSearchForm.button"})},"logIn")})})]}),Y=r=>r.reduce((t,{code:i,required:n,defaultValue:d})=>(n&&(t[i]=d),t),{}),J=({fieldsConfig:r,onSubmit:t})=>{const{requiredFieldError:i}=v({requiredFieldError:"Order.Form.notifications.requiredFieldError"}),n=H(null),[d,s]=N({}),[f,l]=N({});G(()=>{if(!r||!r.length)return;const h=Y(r);s(h)},[r==null?void 0:r.length]);const p=A((h,e)=>{const a=r.find(u=>u.code===h);return a!=null&&a.required&&!e?i:""},[r,i]),T=A(h=>{const{name:e,value:a,type:o,checked:u}=h==null?void 0:h.target,b=o==="checkbox"?u:a;s(m=>({...m,[e]:b}))},[]),$=A(h=>{const{name:e,value:a,type:o,checked:u}=h==null?void 0:h.target,b=o==="checkbox"?u:a;l(m=>({...m,[e]:p(e,b)}))},[p]),E=A(h=>{h.preventDefault();let e=!0,a={},o=null;for(const[u,b]of Object.entries(d)){const m=p(u,b);m&&(a[u]=m,e=!1,o||(o=u))}if(l(a),o&&n.current){const u=n.current.elements.namedItem(o);u==null||u.focus()}t==null||t(h,e)},[d,p,t]);return{formData:d,errors:f,formRef:n,handleChange:T,handleBlur:$,handleSubmit:E}},B=x(({loading:r,values:t,fields:i=[],errors:n,className:d="",onChange:s,onBlur:f})=>{const l=`${d}__item`,p=O((e,a,o)=>{const u=e.options.map(b=>({text:b.label,value:b.value}));return c(D,{error:o,className:S([l,`${l}--${e.id}`,[`${l}--${e.id}-hidden`,e.is_hidden],e.className]),"data-testid":`${d}--${e.id}`,disabled:r,children:c(w,{name:e.id,floatingLabel:`${e.label} ${e.required?"*":""}`,placeholder:e.label,"aria-label":e.label,options:u,onBlur:f,handleSelect:s,value:a||e.defaultValue})},e.id)},[d,r,l,f,s]),T=O((e,a,o)=>{const u=e.id==="email",b=u?c(z,{}):void 0,m=u?"username":"";return c(D,{error:o,className:S([l,`${l}--${e.id}`,[`${l}--${e.id}-hidden`,e==null?void 0:e.is_hidden],e.className]),"data-testid":`${d}--${e.id}`,disabled:r,children:c(V,{"aria-label":e.label,"aria-required":e.required,autoComplete:m,icon:b,type:"text",name:e.id,value:a||e.defaultValue,placeholder:e.label,floatingLabel:`${e.label} ${e.required?"*":""}`,onBlur:f,onChange:s})},e.id)},[d,r,l,f,s]),$=O((e,a,o)=>c(D,{error:o,className:S([l,`${l}--${e.id}`,[`${l}--${e.id}-hidden`,e.is_hidden],e.className]),"data-testid":`${d}--${e.id}`,disabled:r,children:c(g,{type:"text",name:e.id,value:a||e.defaultValue,placeholder:e.label,floatingLabel:`${e.label} ${e.required?"*":""}`,onBlur:f,onChange:s})},e.id),[d,r,l,f,s]),E=O((e,a,o)=>c(D,{error:o,className:S([l,`${l}--${e.id}`,[`${l}--${e.id}-hidden`,e.is_hidden],e.className]),"data-testid":`${d}--${e.id}`,disabled:r,children:c(F,{name:e.id,checked:a||e.defaultValue,placeholder:e.label,label:`${e.label} ${e.required?"*":""}`,onBlur:f,onChange:s})},e.id),[d,r,l,f,s]),h=O((e,a,o)=>c(D,{error:o,className:S([l,`${l}--${e.id}`,[`${l}--${e.id}-hidden`,e.is_hidden],e.className]),"data-testid":`${d}--${e.id}`,disabled:r,children:c(U,{type:"text",name:e.id,value:a===void 0?e.defaultValue:a,label:`${e.label} ${e.required?"*":""}`,onBlur:f,onChange:s})},e.id),[d,r,l,f,s]);return i.length?c(C,{children:i.map(e=>{var u;const a=(n==null?void 0:n[e.id])??"",o=(t==null?void 0:t[e.id])??"";switch(e.fieldType){case"TEXT":return(u=e==null?void 0:e.options)!=null&&u.length?p(e,o,a):T(e,o,a);case"MULTILINE":return T(e,o,a);case"SELECT":return p(e,o,a);case"DATE":return $(e,o,a);case"BOOLEAN":return E(e,o,a);case"TEXTAREA":return h(e,o,a);default:return null}})}):null}),K=x(({name:r,loading:t,children:i,className:n="defaultForm",fieldsConfig:d,onSubmit:s})=>{const{formData:f,errors:l,formRef:p,handleChange:T,handleBlur:$,handleSubmit:E}=J({fieldsConfig:d,onSubmit:s});return M("form",{className:S(["dropin-form",n]),onSubmit:E,name:r,ref:p,children:[c(B,{className:n,loading:t,fields:d,onChange:T,onBlur:$,errors:l,values:f}),i]})});var y=(r=>(r.BOOLEAN="BOOLEAN",r.DATE="DATE",r.DATETIME="DATETIME",r.DROPDOWN="DROPDOWN",r.FILE="FILE",r.GALLERY="GALLERY",r.HIDDEN="HIDDEN",r.IMAGE="IMAGE",r.MEDIA_IMAGE="MEDIA_IMAGE",r.MULTILINE="MULTILINE",r.MULTISELECT="MULTISELECT",r.PRICE="PRICE",r.SELECT="SELECT",r.TEXT="TEXT",r.TEXTAREA="TEXTAREA",r.UNDEFINED="UNDEFINED",r.VISUAL="VISUAL",r.WEIGHT="WEIGHT",r.EMPTY="",r))(y||{});const Q=r=>{if(!r)return null;const t=new FormData(r);if(r.querySelectorAll('input[type="checkbox"]').forEach(n=>{t.has(n.name)||t.set(n.name,"false"),n.checked&&t.set(n.name,"true")}),t&&typeof t.entries=="function"){const n=t.entries();if(n&&typeof n[Symbol.iterator]=="function")return JSON.parse(JSON.stringify(Object.fromEntries(n)))||{}}return{}},ee=({onError:r})=>{const[t,i]=N({text:"",type:"success"}),[n,d]=N(!1),s=v({invalidSearch:"Order.Errors.invalidSearch",email:"Order.OrderSearchForm.email",postcode:"Order.OrderSearchForm.postcode",number:"Order.OrderSearchForm.orderNumber"}),f=X(()=>[{entity_type:"CUSTOMER_ADDRESS",is_unique:!1,label:s.email,options:[],defaultValue:"",fieldType:y.TEXT,className:"",required:!0,orderNumber:1,name:"email",id:"email",code:"email"},{entity_type:"CUSTOMER_ADDRESS",is_unique:!1,label:s.postcode,options:[],defaultValue:"",fieldType:y.TEXT,className:"",required:!0,orderNumber:2,name:"postcode",id:"postcode",code:"postcode"},{entity_type:"CUSTOMER_ADDRESS",is_unique:!1,label:s.number,options:[],defaultValue:"",fieldType:y.TEXT,className:"",required:!0,orderNumber:3,name:"number",id:"number",code:"number"}],[s]);return{onSubmit:A(async(p,T)=>{if(!T)return null;d(!0);const $=Q(p.target);await W($).then(E=>{E||i({text:s.invalidSearch,type:"warning"}),P.emit("order/data",E)}).catch(E=>{r==null||r({error:E.message,formValues:$}),i({text:E.message,type:"warning"})}).finally(()=>{d(!1)})},[r,s]),inLineAlert:t,loading:n,normalizeFieldsConfig:f}},ue=({className:r,onError:t})=>{const{onSubmit:i,loading:n,inLineAlert:d,normalizeFieldsConfig:s}=ee({onError:t});return c("div",{className:S(["dropin-order-search",r]),children:c(j,{onSubmit:i,loading:n,inLineAlert:d,fieldsConfig:s})})};export{ue as OrderSearch,ue as default};
1
+ import{jsxs as h,jsx as a}from"@dropins/tools/preact-jsx-runtime.js";import{classes as E}from"@dropins/tools/lib.js";import{Card as S,InLineAlert as I,Icon as O,Button as N}from"@dropins/tools/components.js";import{F as y}from"../chunks/OrderActions.js";import{useState as m,useMemo as A,useCallback as D}from"@dropins/tools/preact-hooks.js";import*as f from"@dropins/tools/preact-compat.js";import{Text as d,useText as b}from"@dropins/tools/i18n.js";import{events as g}from"@dropins/tools/event-bus.js";import{i as M}from"../chunks/getGuestOrder.js";import"@dropins/tools/fetch-graphql.js";const _=e=>f.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e},f.createElement("path",{vectorEffect:"non-scaling-stroke",fillRule:"evenodd",clipRule:"evenodd",d:"M1 20.8953L12.1922 1.5L23.395 20.8953H1ZM13.0278 13.9638L13.25 10.0377V9H11.25V10.0377L11.4722 13.9638H13.0278ZM11.2994 16V17.7509H13.2253V16H11.2994Z",fill:"currentColor"})),v=({onSubmit:e,loading:t,inLineAlert:o,fieldsConfig:r})=>h(S,{variant:"secondary",className:"dropin-order-search-form",children:[a("h2",{className:"dropin-order-search-form__title",children:a(d,{id:"Order.OrderSearchForm.title"})}),a("p",{children:a(d,{id:"Order.OrderSearchForm.description"})}),o.text?a(I,{"data-testid":"orderAlert",className:"dropin-order-search-form__alert",type:o.type,variant:"secondary",heading:o.text,icon:a(O,{source:_})}):null,a(y,{className:"dropin-order-search-form__wrapper",name:"orderSearchForm",loading:t,fieldsConfig:r,onSubmit:e,children:a("div",{className:"dropin-order-search-form__button-container",children:a(N,{className:"dropin-order-search-form__button",size:"medium",variant:"primary",type:"submit",disabled:t,children:a(d,{id:"Order.OrderSearchForm.button"})},"logIn")})})]});var c=(e=>(e.BOOLEAN="BOOLEAN",e.DATE="DATE",e.DATETIME="DATETIME",e.DROPDOWN="DROPDOWN",e.FILE="FILE",e.GALLERY="GALLERY",e.HIDDEN="HIDDEN",e.IMAGE="IMAGE",e.MEDIA_IMAGE="MEDIA_IMAGE",e.MULTILINE="MULTILINE",e.MULTISELECT="MULTISELECT",e.PRICE="PRICE",e.SELECT="SELECT",e.TEXT="TEXT",e.TEXTAREA="TEXTAREA",e.UNDEFINED="UNDEFINED",e.VISUAL="VISUAL",e.WEIGHT="WEIGHT",e.EMPTY="",e))(c||{});const R=e=>{if(!e)return null;const t=new FormData(e);if(e.querySelectorAll('input[type="checkbox"]').forEach(r=>{t.has(r.name)||t.set(r.name,"false"),r.checked&&t.set(r.name,"true")}),t&&typeof t.entries=="function"){const r=t.entries();if(r&&typeof r[Symbol.iterator]=="function")return JSON.parse(JSON.stringify(Object.fromEntries(r)))||{}}return{}},C=({onError:e})=>{const[t,o]=m({text:"",type:"success"}),[r,i]=m(!1),n=b({invalidSearch:"Order.Errors.invalidSearch",email:"Order.OrderSearchForm.email",postcode:"Order.OrderSearchForm.postcode",number:"Order.OrderSearchForm.orderNumber"}),p=A(()=>[{entityType:"CUSTOMER_ADDRESS",is_unique:!1,label:n.email,options:[],defaultValue:"",fieldType:c.TEXT,className:"",required:!0,orderNumber:1,name:"email",id:"email",code:"email"},{entityType:"CUSTOMER_ADDRESS",is_unique:!1,label:n.postcode,options:[],defaultValue:"",fieldType:c.TEXT,className:"",required:!0,orderNumber:2,name:"postcode",id:"postcode",code:"postcode"},{entityType:"CUSTOMER_ADDRESS",is_unique:!1,label:n.number,options:[],defaultValue:"",fieldType:c.TEXT,className:"",required:!0,orderNumber:3,name:"number",id:"number",code:"number"}],[n]);return{onSubmit:D(async(u,T)=>{if(!T)return null;i(!0);const l=R(u.target);await M(l).then(s=>{s||o({text:n.invalidSearch,type:"warning"}),g.emit("order/data",s)}).catch(async s=>{(await(e==null?void 0:e({error:s.message,formValues:l}))??!0)&&o({text:s.message,type:"warning"})}).finally(()=>{i(!1)})},[e,n]),inLineAlert:t,loading:r,normalizeFieldsConfig:p}},B=({className:e,onError:t})=>{const{onSubmit:o,loading:r,inLineAlert:i,normalizeFieldsConfig:n}=C({onError:t});return a("div",{className:E(["dropin-order-search",e]),children:a(v,{onSubmit:o,loading:r,inLineAlert:i,fieldsConfig:n})})};export{B as OrderSearch,B as default};
@@ -0,0 +1,5 @@
1
+ import { OrderStatusProps } from '../../types';
2
+ import { Container } from '@dropins/tools/types/elsie/src/lib';
3
+
4
+ export declare const OrderStatus: Container<OrderStatusProps>;
5
+ //# sourceMappingURL=OrderStatus.d.ts.map
@@ -0,0 +1,3 @@
1
+ export * from './OrderStatus';
2
+ export { OrderStatus as default } from './OrderStatus';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,3 @@
1
+ export * from './OrderStatus/index'
2
+ import _default from './OrderStatus/index'
3
+ export default _default
@@ -0,0 +1 @@
1
+ import{jsx as t,jsxs as O,Fragment as S}from"@dropins/tools/preact-jsx-runtime.js";import{Card as v,Header as E,Button as p}from"@dropins/tools/components.js";import"../chunks/OrderActions.js";import{Slot as g,classes as m}from"@dropins/tools/lib.js";import{useState as C,useEffect as N}from"@dropins/tools/preact-hooks.js";import{useMemo as w}from"@dropins/tools/preact-compat.js";import{useText as l}from"@dropins/tools/i18n.js";import{C as y}from"../chunks/OrderLoaders.js";import{events as A}from"@dropins/tools/event-bus.js";const f={pending:"orderPending",shiping:"orderShipped",complete:"orderComplete",processing:"orderProcessing","on hold":"orderOnHold",canceled:"orderCanceled","suspected fraud":"orderSuspectedFraud","payment Review":"orderPaymentReview","order received":"orderReceived"},_=({slots:r,title:a,status:n,orderData:e})=>{var s;const c=String(n).toLocaleLowerCase(),d=l(`Order.OrderStatusContent.${f[c]}.title`),o=l(`Order.OrderStatusContent.${f[c]}.message`);return n?O(v,{className:"dropin-order-status-content",variant:"secondary",children:[t(E,{title:a??d.title}),O("div",{className:"dropin-order-status-content__wrapper",children:[t("div",{className:"dropin-order-status-content__wrapper-description",children:t("p",{children:(s=o.message)==null?void 0:s.replace("{DATE}","01.01.1900")})}),t(T,{orderData:e,slots:r})]})]}):t("div",{})};var i=(r=>(r.CANCEL="CANCEL",r.RETURN="RETURN",r.REORDER="REORDER",r))(i||{});const T=({className:r,children:a,orderData:n,slots:e,...c})=>{const d=l({cancel:"Order.OrderStatusContent.actions.cancel",return:"Order.OrderStatusContent.actions.return",reorder:"Order.OrderStatusContent.actions.reorder"}),o=w(()=>{const s=n==null?void 0:n.availableActions,h=!!(s!=null&&s.length);return t(S,{children:e!=null&&e.OrderActions?t(g,{"data-testid":"OrderActionsSlot",name:"OrderCanceledActions",slot:e==null?void 0:e.OrderActions,context:n}):t("div",{"data-testid":"availableActionsList",className:m(["dropin-order-actions__wrapper",["dropin-order-actions__wrapper--empty",!h]]),children:s==null?void 0:s.map((R,u)=>{switch(R){case i.CANCEL:return t(p,{variant:"secondary",children:d.cancel},u);case i.RETURN:return t(p,{variant:"secondary",children:d.return},u);case i.REORDER:return t(p,{variant:"secondary",children:d.reorder},u)}})})})},[n,e==null?void 0:e.OrderActions,d]);return t("div",{...c,className:m(["dropin-order-actions",r]),children:o})},L=({orderData:r})=>{const[a,n]=C(r),[e,c]=C(r==null?void 0:r.status);return N(()=>{const d=A.on("order/data",o=>{n(o),c(o.status)},{eager:!0});return()=>{d&&d.off()}},[]),{orderStatus:e,order:a}},k=({slots:r,orderData:a,className:n,statusTitle:e,status:c})=>{const{orderStatus:d,order:o}=L({orderData:a});return t("div",{className:m(["dropin-order-status",n]),children:o?t(_,{title:e,status:c||d,slots:r,orderData:o}):t(y,{withCard:!1})})};export{k as OrderStatus,k as default};
@@ -0,0 +1,5 @@
1
+ import { ShippingStatusProps } from '../../types';
2
+ import { Container } from '@dropins/tools/types/elsie/src/lib';
3
+
4
+ export declare const ShippingStatus: Container<ShippingStatusProps>;
5
+ //# sourceMappingURL=ShippingStatus.d.ts.map
@@ -0,0 +1,3 @@
1
+ export * from './ShippingStatus';
2
+ export { ShippingStatus as default } from './ShippingStatus';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,3 @@
1
+ export * from './ShippingStatus/index'
2
+ import _default from './ShippingStatus/index'
3
+ export default _default
@@ -0,0 +1 @@
1
+ import{jsx as e,jsxs as h,Fragment as $}from"@dropins/tools/preact-jsx-runtime.js";import{Slot as A,classes as G}from"@dropins/tools/lib.js";import{Image as E,Card as m,Header as C,Accordion as b,AccordionSection as x}from"@dropins/tools/components.js";import"../chunks/OrderActions.js";import{useCallback as H,useState as M,useEffect as R}from"@dropins/tools/preact-hooks.js";import{useText as U}from"@dropins/tools/i18n.js";import{C as Y}from"../chunks/OrderLoaders.js";import"@dropins/tools/preact-compat.js";import{events as j}from"@dropins/tools/event-bus.js";var f=(i=>(i.PENDING="pending",i.SHIPPING="shipping",i.COMPLETE="complete",i.PROCESSING="processing",i.HOLD="on hold",i.CANCELED="Canceled",i.SUSPECTED_FRAUD="suspected fraud",i.PAYMENT_REVIEW="payment review",i))(f||{});const F=({slots:i,orderData:n,collapseThreshold:o=0})=>{var T,S,v,I,O;const c=U({carrier:"Order.ShippingStatusCard.carrier",prepositionOf:"Order.ShippingStatusCard.prepositionOf",shippingCardTitle:"Order.ShippingStatusCard.shippingCardTitle",shippingInfoTitle:"Order.ShippingStatusCard.shippingInfoTitle",notYetShippedTitle:"Order.ShippingStatusCard.notYetShippedTitle",notYetShippedImagesTitle:"Order.ShippingStatusCard.notYetShippedImagesTitle",noInfoTitle:"Order.OrderStatusContent.noInfoTitle"}),r=H(t=>t==null?void 0:t.map(p=>{var l,g,_,y,L,N;const a=(_=(g=(l=p==null?void 0:p.orderItem)==null?void 0:l.product)==null?void 0:g.thumbnail)==null?void 0:_.label,u=(N=(L=(y=p==null?void 0:p.orderItem)==null?void 0:y.product)==null?void 0:L.thumbnail)==null?void 0:N.url;return e(E,{alt:a,src:u,width:85,height:114},p.id)}),[]),d=(T=n==null?void 0:n.status)==null?void 0:T.toLocaleLowerCase(),w=((S=n==null?void 0:n.shipments)==null?void 0:S.length)===1&&(d==null?void 0:d.includes(f.COMPLETE)),s=(v=n==null?void 0:n.items)==null?void 0:v.filter(t=>(t==null?void 0:t.quantityShipped)===0);return!n||d!=null&&d.includes(f.CANCELED)?null:(I=n==null?void 0:n.shipments)!=null&&I.length?h($,{children:[(O=n==null?void 0:n.shipments)==null?void 0:O.map(({tracking:t,items:p,id:a},u)=>h(m,{variant:"secondary",className:"dropin-shipping-status-card",children:[e(C,{title:`${c.shippingCardTitle} ${u+1}`}),t==null?void 0:t.map(l=>{var g;return h("div",{className:"dropin-shipping-status-card__header",children:[h("div",{className:"dropin-shipping-status-card__header--content",children:[h("p",{children:[c.carrier," ",(g=l==null?void 0:l.carrier)==null?void 0:g.toLocaleUpperCase()," | ",l==null?void 0:l.number]}),e("p",{children:l==null?void 0:l.title})]}),i!=null&&i.DeliveryTrackActions?e(A,{"data-testid":"deliverySlotActions",name:"DeliveryTrackActions",slot:i==null?void 0:i.DeliveryTrackActions,context:{trackInformation:l}}):null]},l.number)}),w?null:e(b,{actionIconPosition:"right","data-testid":"dropinAccordion",children:e(x,{defaultOpen:o>=(p==null?void 0:p.length),title:`Package contents (${p==null?void 0:p.length} items)`,children:e("div",{className:"dropin-shipping-status-card__images",children:r(p)})})}),i!=null&&i.DeliveryTimeLine?e(A,{"data-testid":"deliverySlotTimeLine",name:"DeliveryTimeLine",slot:i==null?void 0:i.DeliveryTimeLine,context:{}}):null]},a)),s!=null&&s.length?h(m,{variant:"secondary",className:"dropin-shipping-status-card","data-testid":"dropinAccordionNotYetShipped2",children:[e(C,{title:c.notYetShippedTitle}),e(b,{actionIconPosition:"right",children:e(x,{title:`${c.notYetShippedImagesTitle} ${s==null?void 0:s.length}`,children:e("div",{className:"dropin-shipping-status-card__images",children:s==null?void 0:s.map(({id:t,thumbnail:{url:p,label:a}})=>e(E,{alt:a,src:p,width:85,height:114},t))})})})]}):null]}):h(m,{variant:"secondary",className:"dropin-shipping-status-card",children:[e(C,{title:c.shippingInfoTitle}),e("div",{className:"dropin-shipping-status-card__header",children:h("div",{className:"dropin-shipping-status-card__header--content",children:[n!=null&&n.carrier?e("p",{children:n==null?void 0:n.carrier}):null,e("p",{children:c.noInfoTitle})]})})]})},q=({orderData:i})=>{const[n,o]=M(i);return R(()=>{const c=j.on("order/data",r=>{o(r)},{eager:!0});return()=>{c&&c.off()}},[]),{order:n}},k=({slots:i,className:n,collapseThreshold:o,orderData:c})=>{const{order:r}=q({orderData:c});return e("div",{className:G(["dropin-shipping-status",n]),children:r?e(F,{slots:i,orderData:r,collapseThreshold:o}):e(Y,{withCard:!1})})};export{k as ShippingStatus,k as default};
@@ -1,2 +1,4 @@
1
1
  export * from './OrderSearch';
2
+ export * from './OrderStatus';
3
+ export * from './ShippingStatus';
2
4
  //# sourceMappingURL=index.d.ts.map
@@ -1,3 +1,2 @@
1
1
  export * from './order-details';
2
- export * from './guest-order';
3
2
  //# sourceMappingURL=index.d.ts.map
@@ -1,38 +1,115 @@
1
- import { DiscountProps, GiftMessageProps, GiftWrappingProps, MoneyProps, OrderItemProps, paymentMethodsProps, QueryType, TotalProps, UserAddressesProps } from '../../types';
1
+ import { AvailableActionsProps, MoneyProps, QueryType } from '../../types';
2
2
 
3
- export interface OrderData {
4
- giftWrapping: GiftWrappingProps;
5
- giftMessage: GiftMessageProps;
6
- defaultShipping: UserAddressesProps;
7
- defaultBulling: UserAddressesProps;
8
- paymentMethods: paymentMethodsProps[];
9
- giftReceiptIncluded: boolean;
10
- orderDate: string;
11
- shippingMethod: string;
12
- items: OrderItemProps[];
13
- total: {
14
- discount: DiscountProps[];
15
- subtotal: MoneyProps;
16
- totalTax: MoneyProps;
17
- totalShipping: MoneyProps;
18
- grandTotal: MoneyProps;
3
+ export type OrderAddressModel = {
4
+ city: string;
5
+ company: string;
6
+ country: string;
7
+ firstName: string;
8
+ middleName: string;
9
+ lastName: string;
10
+ postCode: string;
11
+ region: string;
12
+ regionId: string;
13
+ street: string[];
14
+ telephone: string;
15
+ customAttributes: {
16
+ code: string;
17
+ value: string;
18
+ }[];
19
+ } | null;
20
+ export type OrderItemProductModel = {
21
+ canonicalUrl?: string;
22
+ id: string;
23
+ image?: string;
24
+ imageAlt?: string;
25
+ name: string;
26
+ productType: string;
27
+ sku: string;
28
+ thumbnail: {
29
+ url: string;
30
+ label: string;
31
+ };
32
+ };
33
+ export type OrderItemModel = {
34
+ type: string;
35
+ discounted: boolean;
36
+ id: string;
37
+ productName: string;
38
+ regularPrice: MoneyProps;
39
+ price: MoneyProps;
40
+ product: OrderItemProductModel;
41
+ selectedOptions?: Array<{
42
+ label: string;
43
+ value: any;
44
+ }>;
45
+ totalQuantity: number;
46
+ thumbnail: {
47
+ label: string;
48
+ url: string;
49
+ };
50
+ giftCard?: {
51
+ senderName: string;
52
+ senderEmail: string;
53
+ recipientEmail: string;
54
+ recipientName: string;
19
55
  };
20
- }
21
- export interface OrderSummary {
22
- orderSummary: TotalProps;
23
- }
24
- export interface OrderStatus {
56
+ quantityCanceled: number;
57
+ quantityInvoiced: number;
58
+ quantityOrdered: number;
59
+ quantityRefunded: number;
60
+ quantityReturned: number;
61
+ quantityShipped: number;
62
+ };
63
+ export type ShipmentItemsModel = {
64
+ id: string;
65
+ productSku: string;
66
+ productName: string;
67
+ orderItem: OrderItemModel;
68
+ };
69
+ export type ShipmentsTracingModel = {
25
70
  carrier: string;
71
+ number: string;
72
+ title: string;
73
+ };
74
+ export type ShipmentsModel = {
26
75
  id: string;
27
- items: any;
28
76
  number: string;
29
- orderDate: string;
30
- paymentMethods: any;
31
- shippingMethod: string;
32
- }
33
- export interface OrderCustomerInformation {
34
- defaultShipping: UserAddressesProps;
35
- defaultBulling: UserAddressesProps;
36
- }
37
- export type TransformedData<T extends QueryType> = T extends 'orderData' ? OrderData : T extends 'orderSummary' ? OrderSummary : T extends 'orderStatus' ? OrderStatus : T extends 'orderCustomerInformation' ? OrderCustomerInformation : null;
77
+ tracking: ShipmentsTracingModel[];
78
+ comments: {
79
+ message: string;
80
+ timestamp: string;
81
+ }[];
82
+ items: ShipmentItemsModel[];
83
+ };
84
+ export type OrderDataModel = {
85
+ number: string;
86
+ email?: string;
87
+ token?: string;
88
+ status: string;
89
+ isVirtual: boolean;
90
+ totalQuantity: number;
91
+ shippingMethod?: string;
92
+ carrier?: string;
93
+ coupons: {
94
+ code: string;
95
+ }[];
96
+ payments: {
97
+ code: string;
98
+ name: string;
99
+ }[];
100
+ shipping?: {
101
+ code: string;
102
+ amount: number;
103
+ currency: string;
104
+ };
105
+ shipments: ShipmentsModel[];
106
+ items: OrderItemModel[];
107
+ grandTotal: MoneyProps;
108
+ subtotal: MoneyProps;
109
+ totalTax: MoneyProps;
110
+ shippingAddress: OrderAddressModel;
111
+ billingAddress: OrderAddressModel;
112
+ availableActions: AvailableActionsProps[];
113
+ };
114
+ export type TransformedData<T extends QueryType> = T extends 'orderData' ? OrderDataModel : null;
38
115
  //# sourceMappingURL=order-details.d.ts.map
@@ -1,6 +1,6 @@
1
1
  import { GuestOrderByTokenResponse, GuestOrderResponse } from '../../types';
2
- import { GuestOrderModelResponse } from '../models';
2
+ import { OrderDataModel } from '../models';
3
3
 
4
- export declare const transformGuestOrder: (response: GuestOrderResponse) => GuestOrderModelResponse;
5
- export declare const transformGuestOrderByToken: (response: GuestOrderByTokenResponse) => GuestOrderModelResponse;
4
+ export declare const transformGuestOrder: (response: GuestOrderResponse) => OrderDataModel | null;
5
+ export declare const transformGuestOrderByToken: (response: GuestOrderByTokenResponse) => OrderDataModel | null;
6
6
  //# sourceMappingURL=transform-guest-order.d.ts.map
@@ -1,5 +1,7 @@
1
- import { QueryType, ResponseData } from '../../types';
1
+ import { QueryType, ResponseData, OrderProps, OrderItemProps } from '../../types';
2
2
  import { TransformedData } from '../models';
3
3
 
4
- export declare const transformOrderDetails: <T extends QueryType>(queryType: QueryType, response: ResponseData<T>) => TransformedData<T>;
4
+ export declare const transformConfigurableOptions: (item: OrderItemProps) => Record<string, string> | undefined;
5
+ export declare const transformOrderData: (orderData: OrderProps) => any;
6
+ export declare const transformOrderDetails: <T extends "orderData">(queryType: QueryType, response: ResponseData<T>) => TransformedData<T>;
5
7
  //# sourceMappingURL=transform-order-details.d.ts.map
@@ -5,7 +5,7 @@ export declare const useOrderSearch: ({ onError }: useOrderSearchProps) => {
5
5
  inLineAlert: inLineAlertProps;
6
6
  loading: boolean;
7
7
  normalizeFieldsConfig: {
8
- entity_type: string;
8
+ entityType: string;
9
9
  is_unique: boolean;
10
10
  label: string;
11
11
  options: never[];
@@ -0,0 +1,8 @@
1
+ import { OrderDataModel } from '../../data/models';
2
+ import { StatusEnumProps, UseOrderStatusProps } from '../../types';
3
+
4
+ export declare const useOrderStatus: ({ orderData }: UseOrderStatusProps) => {
5
+ orderStatus: StatusEnumProps;
6
+ order: OrderDataModel | undefined;
7
+ };
8
+ //# sourceMappingURL=useOrderStatus.d.ts.map
@@ -0,0 +1,7 @@
1
+ import { OrderDataModel } from '../../data/models';
2
+ import { UseShippingStatusProps } from '../../types';
3
+
4
+ export declare const useShippingStatus: ({ orderData }: UseShippingStatusProps) => {
5
+ order: OrderDataModel | undefined;
6
+ };
7
+ //# sourceMappingURL=useShippingStatus.d.ts.map
package/hooks/index.d.ts CHANGED
@@ -1,2 +1,4 @@
1
1
  export * from './containers/useOrderSearch';
2
+ export * from './containers/useOrderStatus';
3
+ export * from './containers/useShippingStatus';
2
4
  //# sourceMappingURL=index.d.ts.map
@@ -13,12 +13,60 @@ declare const _default: {
13
13
  "requiredFieldError": "This is a required field."
14
14
  }
15
15
  },
16
+ "ShippingStatusCard": {
17
+ "trackButton": "Track package",
18
+ "carrier": "Carrier:",
19
+ "prepositionOf": "of",
20
+ "shippingCardTitle": "Package",
21
+ "shippingInfoTitle": "Shipping info",
22
+ "notYetShippedTitle": "Not yet shipped",
23
+ "notYetShippedImagesTitle": "Package contents"
24
+ },
25
+ "OrderStatusContent": {
26
+ "noInfoTitle": "Check back later for more details.",
27
+ "actions": {
28
+ "cancel": "Cancel order",
29
+ "return": "Return or replace",
30
+ "reorder": "Reorder"
31
+ },
32
+ "orderPending": {
33
+ "title": "Pending",
34
+ "message": "The order was successfully placed on {DATE} and your order is processing. Check back for more details when your order ships."
35
+ },
36
+ "orderProcessing": {
37
+ "title": "Processing",
38
+ "message": "The order was successfully placed on {DATE} and your order is processing. Check back for more details when your order ships."
39
+ },
40
+ "orderOnHold": {
41
+ "title": "On hold",
42
+ "message": "We’ve run into an issue while processing your order on {DATE}. Please check back later or contact us at support@adobe.com for more information."
43
+ },
44
+ "orderReceived": {
45
+ "title": "Order received",
46
+ "message": "The order was successfully placed on {DATE} and your order is processing. Check back for more details when your order ships."
47
+ },
48
+ "orderComplete": {
49
+ "title": "Complete",
50
+ "message": "Your order is complete. Need help with your order? Contact us at support@adobe.com"
51
+ },
52
+ "orderCanceled": {
53
+ "title": "Canceled",
54
+ "message": "This order was cancelled by you. You should see a refund to your original payment method with 5-7 business days."
55
+ },
56
+ "orderSuspectedFraud": {
57
+ "title": "Suspected fraud",
58
+ "message": "We’ve run into an issue while processing your order on {DATE}. Please check back later or contact us at support@adobe.com for more information."
59
+ },
60
+ "orderPaymentReview": {
61
+ "title": "Payment Review",
62
+ "message": "The order was successfully placed on {DATE} and your order is processing. Check back for more details when your order ships."
63
+ }
64
+ },
16
65
  "Errors": {
17
66
  "invalidOrder": "Invalid order. Please try again.",
18
67
  "invalidSearch": "No order found with these order details."
19
68
  }
20
69
  }
21
- }
22
- ;
70
+ };
23
71
 
24
72
  export default _default;
@@ -0,0 +1,4 @@
1
+ export declare const convertToCamelCase: (key: string) => string;
2
+ export declare const convertToSnakeCase: (key: string) => string;
3
+ export declare const convertKeysCase: (data: any, type: 'snakeCase' | 'camelCase', dictionary?: Record<string, string>) => any;
4
+ //# sourceMappingURL=convertCase.d.ts.map
@@ -1,2 +1,3 @@
1
1
  export declare const convertToInputDateFormat: (dateTimeString: string) => string;
2
+ export declare const converDeliveryOrderDate: (dateTimeString: string) => string;
2
3
  //# sourceMappingURL=convertToInputDateFormat.d.ts.map
package/package.json CHANGED
@@ -1 +1 @@
1
- {"name": "@dropins/storefront-order", "version": "0.1.0-alpha4", "@dropins/elsie": "0.28.2-alpha592"}
1
+ {"name": "@dropins/storefront-order", "version": "0.1.0-alpha5", "@dropins/elsie": "0.30.0-alpha620"}
package/render.js CHANGED
@@ -1,2 +1,2 @@
1
- (function(a,t){try{if(typeof document<"u"){const e=document.createElement("style"),n=t.styleId;for(const r in t.attributes)e.setAttribute(r,t.attributes[r]);e.setAttribute("data-dropin",n),e.appendChild(document.createTextNode(a));const o=document.querySelector('style[data-dropin="sdk"]');if(o)o.after(e);else{const r=document.querySelector('link[rel="stylesheet"], style');r?r.before(e):document.head.append(e)}}}catch(e){console.error("dropin-styles (injectCodeFunction)",e)}})('.dropin-order-search-form{gap:var(--spacing-small);border-color:transparent}.dropin-order-search-form .dropin-card__content{padding:var(--spacing-big) var(--spacing-xxbig) var(--spacing-xxbig) var(--spacing-xxbig)}.dropin-order-search-form p{color:var(--color-neutral-700);font:var(--type-body-2-default-font);letter-spacing:var(--type-body-2-default-letter-spacing);margin:0}.dropin-order-search-form__title{color:var(--color-neutral-800);font:var(--type-headline-2-strong-font);letter-spacing:var(--type-headline-2-strong-letter-spacing);margin:0}.dropin-order-search-form__wrapper{display:grid;grid-template-columns:1fr;grid-template-rows:auto;grid-template-areas:"email" "postcode" "number" "button";gap:var(--spacing-medium)}.dropin-order-search-form__wrapper__item--email{grid-area:email}.dropin-order-search-form__wrapper__item--postcode{grid-area:postcode}.dropin-order-search-form__wrapper__item--number{grid-area:number}.dropin-order-search-form__button-container{display:flex;justify-content:flex-end;grid-area:button}.dropin-order-search-form form button{align-self:flex-end;justify-self:flex-end;margin-top:var(--spacing-small)}@media (min-width: 768px){.dropin-order-search-form__wrapper{grid-template-columns:1fr 1fr;grid-template-rows:auto auto auto;grid-template-areas:"email postcode" "number number" "button button"}}',{styleId:"order"});
2
- import{jsx as e}from"@dropins/tools/preact-jsx-runtime.js";import{Render as d}from"@dropins/tools/lib.js";import{useState as a,useEffect as s}from"@dropins/tools/preact-hooks.js";import{UIProvider as m}from"@dropins/tools/components.js";import{events as u}from"@dropins/tools/event-bus.js";const c={OrderSearchForm:{title:"Enter your information to view order details",description:"You can find your order number in the receipt you received via email.",button:"View Order",email:"Email",postcode:"Zip Code",orderNumber:"Order Number"},Form:{notifications:{requiredFieldError:"This is a required field."}},Errors:{invalidOrder:"Invalid order. Please try again.",invalidSearch:"No order found with these order details."}},f={Order:c},l={default:f},p=({children:o})=>{const[i,t]=a("en_US");return s(()=>{const r=u.on("locale",n=>{t(n)},{eager:!0});return()=>{r==null||r.off()}},[]),e(m,{lang:i,langDefinitions:l,children:o})},b=new d(e(p,{}));export{b as render};
1
+ (function(o,t){try{if(typeof document<"u"){const r=document.createElement("style"),n=t.styleId;for(const e in t.attributes)r.setAttribute(e,t.attributes[e]);r.setAttribute("data-dropin",n),r.appendChild(document.createTextNode(o));const a=document.querySelector('style[data-dropin="sdk"]');if(a)a.after(r);else{const e=document.querySelector('link[rel="stylesheet"], style');e?e.before(r):document.head.append(r)}}}catch(r){console.error("dropin-styles (injectCodeFunction)",r)}})('.dropin-order-search-form{gap:var(--spacing-small);border-color:transparent}.dropin-order-search-form .dropin-card__content{padding:var(--spacing-big) var(--spacing-xxbig) var(--spacing-xxbig) var(--spacing-xxbig)}.dropin-order-search-form p{color:var(--color-neutral-700);font:var(--type-body-2-default-font);letter-spacing:var(--type-body-2-default-letter-spacing);margin:0}.dropin-order-search-form__title{color:var(--color-neutral-800);font:var(--type-headline-2-strong-font);letter-spacing:var(--type-headline-2-strong-letter-spacing);margin:0}.dropin-order-search-form__wrapper{display:grid;grid-template-columns:1fr;grid-template-rows:auto;grid-template-areas:"email" "postcode" "number" "button";gap:var(--spacing-medium)}.dropin-order-search-form__wrapper__item--email{grid-area:email}.dropin-order-search-form__wrapper__item--postcode{grid-area:postcode}.dropin-order-search-form__wrapper__item--number{grid-area:number}.dropin-order-search-form__button-container{display:flex;justify-content:flex-end;grid-area:button}.dropin-order-search-form form button{align-self:flex-end;justify-self:flex-end;margin-top:var(--spacing-small)}@media (min-width: 768px){.dropin-order-search-form__wrapper{grid-template-columns:1fr 1fr;grid-template-rows:auto auto auto;grid-template-areas:"email postcode" "number number" "button button"}}.dropin-order-status-content{margin-bottom:var(--spacing-small)}.dropin-order-status-content.dropin-card--secondary{border:var(--shape-border-width-1) solid var(--color-neutral-400);border-radius:var(--shape-border-radius-1)}.dropin-order-status-content .dropin-card__content{gap:0}.dropin-order-status-content__wrapper p{padding:0;margin:0;box-sizing:border-box;font:var(--type-body-1-strong-font);letter-spacing:var(--type-body-1-default-letter-spacing)}.dropin-order-status-content__wrapper-description{margin-bottom:var(--spacing-medium)}.dropin-shipping-status-card{margin-bottom:var(--spacing-small)}.dropin-shipping-status-card .dropin-card__content{gap:0}.dropin-shipping-status-card.dropin-card--secondary{border:var(--shape-border-width-1) solid var(--color-neutral-400);border-radius:var(--shape-border-radius-1)}.dropin-shipping-status-card--count-steper{font:var(--type-headline-2-strong-font);letter-spacing:var(--type-headline-2-strong-letter-spacing)}.dropin-shipping-status-card__header{display:grid;grid-template-columns:1fr auto;justify-items:self-start;align-items:center;margin-bottom:var(--spacing-xsmall)}.dropin-shipping-status-card__header button{max-height:40px}.dropin-shipping-status-card__header--content p{margin:0;padding:0;margin-bottom:var(--spacing-xsmall)}.dropin-shipping-status-card .dropin-shipping-status-card__images{max-width:580px;display:grid;grid-template-columns:repeat(auto-fill,85px);grid-template-rows:114px;gap:7px;overflow:hidden}.dropin-shipping-status-card .dropin-shipping-status-card__images img{object-fit:contain}.dropin-order-loaders--card-loader{margin-bottom:var(--spacing-small);border:var(--shape-border-width-1) solid var(--color-neutral-400);border-radius:var(--shape-border-radius-1)}.dropin-order-actions__wrapper{display:flex;justify-content:space-between;gap:0 var(--spacing-small);margin-bottom:var(--spacing-small);margin-top:var(--spacing-medium)}.dropin-order-actions__wrapper button{width:100%;font:var(--type-body-1-strong-font);letter-spacing:var(--type-body-1-default-letter-spacing)}.dropin-order-actions__wrapper--empty{display:none}',{styleId:"order"});
2
+ import{jsx as r}from"@dropins/tools/preact-jsx-runtime.js";import{Render as n}from"@dropins/tools/lib.js";import{useState as a,useEffect as d}from"@dropins/tools/preact-hooks.js";import{UIProvider as c}from"@dropins/tools/components.js";import{events as l}from"@dropins/tools/event-bus.js";const u={OrderSearchForm:{title:"Enter your information to view order details",description:"You can find your order number in the receipt you received via email.",button:"View Order",email:"Email",postcode:"Zip Code",orderNumber:"Order Number"},Form:{notifications:{requiredFieldError:"This is a required field."}},ShippingStatusCard:{trackButton:"Track package",carrier:"Carrier:",prepositionOf:"of",shippingCardTitle:"Package",shippingInfoTitle:"Shipping info",notYetShippedTitle:"Not yet shipped",notYetShippedImagesTitle:"Package contents"},OrderStatusContent:{noInfoTitle:"Check back later for more details.",actions:{cancel:"Cancel order",return:"Return or replace",reorder:"Reorder"},orderPending:{title:"Pending",message:"The order was successfully placed on {DATE} and your order is processing. Check back for more details when your order ships."},orderProcessing:{title:"Processing",message:"The order was successfully placed on {DATE} and your order is processing. Check back for more details when your order ships."},orderOnHold:{title:"On hold",message:"We’ve run into an issue while processing your order on {DATE}. Please check back later or contact us at support@adobe.com for more information."},orderReceived:{title:"Order received",message:"The order was successfully placed on {DATE} and your order is processing. Check back for more details when your order ships."},orderComplete:{title:"Complete",message:"Your order is complete. Need help with your order? Contact us at support@adobe.com"},orderCanceled:{title:"Canceled",message:"This order was cancelled by you. You should see a refund to your original payment method with 5-7 business days."},orderSuspectedFraud:{title:"Suspected fraud",message:"We’ve run into an issue while processing your order on {DATE}. Please check back later or contact us at support@adobe.com for more information."},orderPaymentReview:{title:"Payment Review",message:"The order was successfully placed on {DATE} and your order is processing. Check back for more details when your order ships."}},Errors:{invalidOrder:"Invalid order. Please try again.",invalidSearch:"No order found with these order details."}},p={Order:u},m={default:p},h=({children:o})=>{const[s,i]=a("en_US");return d(()=>{const e=l.on("locale",t=>{i(t)},{eager:!0});return()=>{e==null||e.off()}},[]),r(c,{lang:s,langDefinitions:m,children:o})},T=new n(r(h,{}));export{T as render};
@@ -1,4 +1,4 @@
1
- export type QueryType = 'orderData' | 'orderSummary' | 'orderStatus' | 'orderCustomerInformation';
1
+ export type QueryType = 'orderData';
2
2
  export interface UserAddressesProps {
3
3
  city?: string;
4
4
  company?: string;
@@ -16,17 +16,23 @@ export interface UserAddressesProps {
16
16
  telephone?: string;
17
17
  vat_id?: string;
18
18
  }
19
- interface SmallImageProps {
19
+ interface ThumbnailImageProps {
20
20
  url?: string;
21
+ label?: string;
21
22
  }
22
- interface ProductProps {
23
- small_image?: SmallImageProps;
24
- }
25
- export interface OrderItemProps {
26
- status?: string;
27
- product_name?: string;
28
- id?: string;
29
- product?: ProductProps;
23
+ export interface ProductProps {
24
+ thumbnail?: ThumbnailImageProps;
25
+ image: ThumbnailImageProps;
26
+ canonical_url: string;
27
+ uid: string;
28
+ name: string;
29
+ __typename: string;
30
+ sku: string;
31
+ price_range: {
32
+ maximum_price: {
33
+ regular_price: MoneyProps;
34
+ };
35
+ };
30
36
  }
31
37
  export interface MoneyProps {
32
38
  value?: number;
@@ -89,7 +95,14 @@ export interface GiftWrappingProps {
89
95
  };
90
96
  };
91
97
  }
92
- interface OrderItemInterface {
98
+ export interface giftCardProps {
99
+ sender_name: string;
100
+ sender_email: string;
101
+ recipient_email: string;
102
+ recipient_name: string;
103
+ }
104
+ export interface OrderItemProps {
105
+ __typename: string;
93
106
  discounts: DiscountProps[];
94
107
  eligible_for_return: boolean;
95
108
  entered_options: {
@@ -116,8 +129,9 @@ interface OrderItemInterface {
116
129
  value: string;
117
130
  }[];
118
131
  status: string;
132
+ gift_card?: giftCardProps;
119
133
  }
120
- export interface paymentMethodsProps {
134
+ export interface PaymentMethodsProps {
121
135
  name: string;
122
136
  type: string;
123
137
  additional_data: {
@@ -125,7 +139,31 @@ export interface paymentMethodsProps {
125
139
  value: string;
126
140
  }[];
127
141
  }
142
+ export interface ShipmentsProps {
143
+ id: string;
144
+ number: string;
145
+ tracking: {
146
+ carrier: string;
147
+ number: string;
148
+ title: string;
149
+ }[];
150
+ comments: {
151
+ message: string;
152
+ timestamp: string;
153
+ }[];
154
+ items: {
155
+ id: string;
156
+ product_sku: string;
157
+ product_name: string;
158
+ };
159
+ }
160
+ export declare enum AvailableActionsProps {
161
+ CANCEL = "CANCEL",
162
+ RETURN = "RETURN",
163
+ REORDER = "REORDER"
164
+ }
128
165
  export interface OrderProps {
166
+ available_actions: AvailableActionsProps[];
129
167
  shipping_method: string;
130
168
  status: string;
131
169
  token: string;
@@ -139,29 +177,17 @@ export interface OrderProps {
139
177
  applied_coupons: {
140
178
  code: string;
141
179
  }[];
142
- shipments: {
143
- id: string;
144
- number: string;
145
- tracking: {
146
- carrier: string;
147
- number: string;
148
- title: string;
149
- }[];
150
- comments: {
151
- message: string;
152
- timestamp: string;
153
- }[];
154
- }[];
155
180
  returns: {
156
181
  pageSize: number;
157
182
  currentPage: number;
158
183
  };
159
- items_eligible_for_return: OrderItemInterface[];
184
+ shipments: ShipmentsProps[];
185
+ items_eligible_for_return: OrderItemProps[];
186
+ items: OrderItemProps[];
160
187
  gift_wrapping: GiftWrappingProps;
161
188
  gift_message: GiftMessageProps;
162
- payment_methods: paymentMethodsProps[];
189
+ payment_methods: PaymentMethodsProps[];
163
190
  invoices: InvoiceProps[];
164
- items: OrderItemProps[];
165
191
  shipping_address: UserAddressesProps;
166
192
  billing_address: UserAddressesProps;
167
193
  total?: TotalProps;
@@ -26,15 +26,15 @@ export interface FieldsProps {
26
26
  code: string;
27
27
  name: string;
28
28
  defaultValue: string | boolean | number;
29
- entity_type: string;
29
+ entityType: string;
30
30
  required: boolean;
31
31
  is_unique: boolean;
32
32
  label: string;
33
33
  orderNumber: number;
34
- options: {
35
- is_default: boolean;
36
- label: string;
37
- value: string;
34
+ options?: {
35
+ is_default?: boolean;
36
+ label?: string;
37
+ value?: string;
38
38
  }[];
39
39
  }
40
40
  export interface FormProps {
package/types/index.d.ts CHANGED
@@ -1,6 +1,8 @@
1
- export * from './api/getOrderDetails.types';
2
- export * from './api/getGuestOrder.types';
3
1
  export * from './orderSearch.types';
4
2
  export * from './form.types';
3
+ export * from './orderStatus.types';
4
+ export * from './shippingStatus.types';
5
5
  export * from './api/guestOrderByToken.types';
6
+ export * from './api/getOrderDetails.types';
7
+ export * from './api/getGuestOrder.types';
6
8
  //# sourceMappingURL=index.d.ts.map
@@ -14,16 +14,16 @@ export interface inLineAlertProps {
14
14
  }
15
15
  export interface OrderSearchProps {
16
16
  className?: string;
17
- onError?: (errorInformation: errorInformationProps) => void;
17
+ onError?: (errorInformation: errorInformationProps) => boolean | Promise<boolean> | undefined;
18
18
  }
19
19
  export interface useOrderSearchProps {
20
- onError?: (errorInformation: errorInformationProps) => void;
20
+ onError?: (errorInformation: errorInformationProps) => boolean | Promise<boolean> | undefined;
21
21
  }
22
- export interface OrderSearchFormProps extends Omit<OrderSearchProps, 'className' | 'onError'> {
22
+ export interface OrderSearchFormProps {
23
23
  onSubmit?: (event: SubmitEvent, isValid: boolean) => Promise<void | null | undefined>;
24
- loading: boolean;
24
+ loading?: boolean;
25
25
  inLineAlert: inLineAlertProps;
26
- fieldsConfig: FieldsProps[];
26
+ fieldsConfig?: FieldsProps[];
27
27
  }
28
28
  export interface useOrderSearch extends Omit<OrderSearchProps, 'className'> {
29
29
  }