@dropins/storefront-requisition-list 1.0.0-beta6 → 1.0.0

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.js CHANGED
@@ -1,4 +1,4 @@
1
- /*! Copyright 2025 Adobe
1
+ /*! Copyright 2026 Adobe
2
2
  All Rights Reserved. */
3
3
  import{f as o,h as r}from"./chunks/updateRequisitionList.js";import{e as R,g as y,r as F,s as L,a as b,b as E,u as G}from"./chunks/updateRequisitionList.js";import{events as a}from"@dropins/tools/event-bus.js";import{g as Q}from"./chunks/getRequisitionLists.js";import{a as x,d as O,b as w,g as z,u as H}from"./chunks/addRequisitionListItemsToCart.js";import{d as T}from"./chunks/deleteRequisitionList.js";import{Initializer as c}from"@dropins/tools/lib.js";import{s as t}from"./chunks/state.js";import"@dropins/tools/fetch-graphql.js";const f=`
4
4
  query STORE_CONFIG_QUERY {
@@ -1,4 +1,4 @@
1
- /*! Copyright 2025 Adobe
1
+ /*! Copyright 2026 Adobe
2
2
  All Rights Reserved. */
3
3
  import{jsxs as d,jsx as s}from"@dropins/tools/preact-jsx-runtime.js";import{Icon as p,Button as f,Picker as h}from"@dropins/tools/components.js";import{classes as P}from"@dropins/tools/lib.js";import"./RequisitionListView.js";import*as o from"@dropins/tools/preact-compat.js";import{useText as u}from"@dropins/tools/i18n.js";import{D as S}from"./RequisitionListForm.js";const E=e=>o.createElement("svg",{id:"Icon_Search_Base","data-name":"Icon \\u2013 Search \\u2013 Base",xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"none",viewBox:"0 0 24 24",...e},o.createElement("g",{id:"Large"},o.createElement("rect",{id:"Placement_area","data-name":"Placement area",width:24,height:24,fill:"#fff",opacity:0}),o.createElement("g",{id:"Search_icon","data-name":"Search icon",transform:"translate(3.75 3.75)"},o.createElement("circle",{vectorEffect:"non-scaling-stroke",id:"Ellipse_186","data-name":"Ellipse 186",cx:6,cy:6,r:6,fill:"none",stroke:"currentColor"}),o.createElement("line",{vectorEffect:"non-scaling-stroke",id:"Line_556","data-name":"Line 556",x2:6,y2:6,transform:"translate(10.5 10.5)",fill:"none",stroke:"currentColor"})))),C=({className:e,title:n="404 - Not Found",message:a="The requisition list you are looking for does not exist.",actionLabel:i,onAction:r,...c})=>d("div",{className:P(["not-found",e]),"data-testid":"not-found",...c,children:[s(p,{source:E,size:"64",stroke:"2"}),s("h2",{children:n}),a&&s("p",{children:a}),i&&r&&s(f,{variant:"primary",onClick:r,children:i})]}),y=({currentPageSize:e,onPageSizeChange:n,disabled:a=!1,pageSizeOptions:i=[10,25,50,100]})=>{const r=u({itemsPerPage:"RequisitionList.PageSizePicker.itemsPerPage"}),c=t=>{const m=t.target,g=parseInt(m.value,10);n(g)},l=i.map(t=>({value:t.toString(),text:t.toString()}));return s(h,{disabled:a,"data-testid":"page-size-picker",variant:"primary",size:"medium",value:e.toString(),options:l,handleSelect:c,"aria-label":r.itemsPerPage})},I=({pageInfo:e,totalCount:n,className:a=""})=>{const i=u({itemsCounter:"RequisitionList.PaginationItemsCounter.itemsCounter"});if(!e||!n)return null;const r=e.page_size??S,c=e.current_page??1,l=r*c,t=n,m=l-r+1,g=l>t?t:l;return s("span",{className:`pagination-items-counter ${a}`.trim(),children:i.itemsCounter.replace("{from}",m.toString()).replace("{to}",g.toString()).replace("{total}",t.toString())})};export{C as N,I as P,y as a};
4
4
  //# sourceMappingURL=PaginationItemsCounter.js.map
@@ -1,4 +1,4 @@
1
- /*! Copyright 2025 Adobe
1
+ /*! Copyright 2026 Adobe
2
2
  All Rights Reserved. */
3
3
  import{jsxs as o,jsx as n}from"@dropins/tools/preact-jsx-runtime.js";import{classes as r}from"@dropins/tools/lib.js";import{Icon as l}from"@dropins/tools/components.js";import"./RequisitionListView.js";import*as t from"@dropins/tools/preact-compat.js";import{useText as c}from"@dropins/tools/i18n.js";const d=e=>t.createElement("svg",{id:"Icon_Add_Base","data-name":"Icon \\u2013 Add \\u2013 Base",xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",...e},t.createElement("g",{id:"Large"},t.createElement("rect",{id:"Placement_area","data-name":"Placement area",width:24,height:24,fill:"#fff",opacity:0}),t.createElement("g",{id:"Add_icon","data-name":"Add icon",transform:"translate(9.734 9.737)"},t.createElement("line",{vectorEffect:"non-scaling-stroke",id:"Line_579","data-name":"Line 579",y2:12.7,transform:"translate(2.216 -4.087)",fill:"none",stroke:"currentColor"}),t.createElement("line",{vectorEffect:"non-scaling-stroke",id:"Line_580","data-name":"Line 580",x2:12.7,transform:"translate(-4.079 2.263)",fill:"none",stroke:"currentColor"})))),L=({selectable:e,className:a,onAddNew:s})=>{const i=c({addNewReqListBtn:"RequisitionList.AddNewReqList.addNewReqListBtn"});return o("button",{type:"button","aria-label":i.addNewReqListBtn,role:"button",className:r(["requisition-list-actions",["requisition-list-actions--selectable",e],a]),"data-testid":"requisition-list-actions-button",onClick:s,children:[n("span",{className:"requisition-list-actions__title","data-testid":"requisition-list-actions-button-text",children:i.addNewReqListBtn}),n(l,{source:d,size:"32"})]})};export{L as R};
4
4
  //# sourceMappingURL=RequisitionListActions.js.map
@@ -1,4 +1,4 @@
1
- /*! Copyright 2025 Adobe
1
+ /*! Copyright 2026 Adobe
2
2
  All Rights Reserved. */
3
3
  import{jsxs as o,jsx as e}from"@dropins/tools/preact-jsx-runtime.js";import{useState as m}from"@dropins/tools/preact-hooks.js";import{ProgressSpinner as M,InLineAlert as x,Field as f,Input as y,TextArea as D,Button as R}from"@dropins/tools/components.js";import{classes as c}from"@dropins/tools/lib.js";import{useText as B}from"@dropins/tools/i18n.js";const Z=10,g=3,G=40,H=255,P=/^[a-zA-Z0-9\s.,\-_!?'"()&]+$/,w=({className:l,mode:_,defaultValues:b={name:"",description:""},error:u=null,onSubmit:v,onCancel:F,...N})=>{const[s,T]=m(b),[E,d]=m({name:!1}),[r,p]=m(!1),i=B({actionCancel:"RequisitionList.RequisitionListForm.actionCancel",actionSave:"RequisitionList.RequisitionListForm.actionSave",requiredField:"RequisitionList.RequisitionListForm.requiredField",nameMinLength:"RequisitionList.RequisitionListForm.nameMinLength",nameInvalidCharacters:"RequisitionList.RequisitionListForm.nameInvalidCharacters",floatingLabel:"RequisitionList.RequisitionListForm.floatingLabel",placeholder:"RequisitionList.RequisitionListForm.placeholder",label:"RequisitionList.RequisitionListForm.label",updateTitle:"RequisitionList.RequisitionListForm.updateTitle",createTitle:"RequisitionList.RequisitionListForm.createTitle"}),q=n=>{const t=n.trim();return t?t.length<g?i.nameMinLength.replace("{min}",g.toString()):P.test(t)?"":i.nameInvalidCharacters:i.requiredField},L=n=>t=>{const a=t.target;T(I=>({...I,[n]:a.value}))},h=n=>()=>{d(t=>({...t,[n]:!0}))},S=async n=>{var a;if(n.preventDefault(),d({name:!0,description:!0}),!(q(s.name)||r)){p(!0);try{await v({name:s.name.trim(),description:((a=s.description)==null?void 0:a.trim())??""})}catch{p(!1)}}},A=E.name?q(s.name):"",C=_==="update"?i.updateTitle:i.createTitle;return o("div",{...N,className:c(["requisition-list-form",l]),children:[o("div",{className:"requisition-list-form__title",children:[C,r?e("div",{className:c(["requisition-list-form_progress-spinner",l]),"data-testid":"requisition-list-form-progress-spinner",children:e(M,{stroke:"4",size:"small"})}):null]}),u?e(x,{type:"error",className:"requisition-list-form__notification",variant:"secondary",heading:u,"data-testid":"requisition-list-alert"}):null,o("form",{className:c(["requisition-list-form__form",l]),onSubmit:S,children:[e(f,{error:A,disabled:r,children:e(y,{id:"requisition-list-form-name",name:"name",type:"text",floatingLabel:i.floatingLabel,placeholder:i.placeholder,maxLength:G,value:s.name,onChange:L("name"),onBlur:h("name")})}),e(f,{disabled:r,children:e(D,{id:"requisition-list-form-description",name:"description",label:i.label,placeholder:i.label,maxLength:H,value:s.description,onChange:L("description"),onBlur:h("description")})}),o("div",{className:"requisition-list-form__actions",children:[e(R,{type:"button",variant:"secondary",onClick:F,disabled:r,"data-testid":"requisition-list-form-cancel",children:i.actionCancel}),e(R,{type:"submit",disabled:r,"data-testid":"requisition-list-form-save",children:i.actionSave})]})]})]})};export{Z as D,w as R};
4
4
  //# sourceMappingURL=RequisitionListForm.js.map
@@ -1,4 +1,4 @@
1
- /*! Copyright 2025 Adobe
1
+ /*! Copyright 2026 Adobe
2
2
  All Rights Reserved. */
3
3
  import{jsx as c}from"@dropins/tools/preact-jsx-runtime.js";import{R}from"./RequisitionListForm.js";import{useState as p}from"@dropins/tools/preact-hooks.js";import{R as L,f as q,h as I,t as l,u as T}from"./updateRequisitionList.js";import{events as _}from"@dropins/tools/event-bus.js";const f=`
4
4
  mutation CREATE_REQUISITION_LIST_MUTATION(
@@ -1,4 +1,4 @@
1
- /*! Copyright 2025 Adobe
1
+ /*! Copyright 2026 Adobe
2
2
  All Rights Reserved. */
3
3
  import{jsxs as m,jsx as t,Fragment as C}from"@dropins/tools/preact-jsx-runtime.js";import{useState as R,useCallback as h}from"@dropins/tools/preact-hooks.js";import{R as q}from"./RequisitionListModal.js";import{R as b}from"./RequisitionListForm.js";import{u as N}from"./updateRequisitionList.js";import{d as k}from"./deleteRequisitionList.js";import{useText as M}from"@dropins/tools/i18n.js";const x=({name:i,description:n,backLink:s,actions:e,className:f,...r})=>m("div",{...r,className:`requisition-list-header ${f||""}`,children:[s&&t("div",{className:"requisition-list-header__back",children:m("a",{href:s.url,className:"requisition-list-header__back-link",onClick:s.onClick,children:[t("span",{className:"requisition-list-header__back-arrow",children:"<"}),s.label]})}),m("div",{className:"requisition-list-header__main",children:[m("div",{className:"requisition-list-header__title-section",children:[t("h1",{className:"requisition-list-header__title",children:i}),n&&t("p",{className:"requisition-list-header__description",children:n})]}),e&&(e.onRename||e.onDelete)&&m("div",{className:"requisition-list-header__actions",children:[e.onRename&&t("a",{href:"#",onClick:d=>{var a;d.preventDefault(),(a=e.onRename)==null||a.call(e)},className:"requisition-list-header__action-link","data-testid":"rename-list-btn",children:e.renameLabel}),e.onDelete&&t("a",{href:"#",onClick:d=>{var a;d.preventDefault(),(a=e.onDelete)==null||a.call(e)},className:"requisition-list-header__action-link","data-testid":"delete-list-btn",children:e.deleteLabel})]})]})]}),j=({requisitionList:i,routeRequisitionListGrid:n,onUpdate:s,onAlert:e})=>{const[f,r]=R(!1),[d,a]=R(!1),[_,L]=R(!1),l=M({actionBackToRequisitionLists:"RequisitionList.RequisitionListView.actionBackToRequisitionLists",actionRename:"RequisitionList.RequisitionListView.actionRename",actionDeleteList:"RequisitionList.RequisitionListView.actionDeleteList",deleteListTitle:"RequisitionList.RequisitionListView.deleteListTitle",deleteListMessage:"RequisitionList.RequisitionListView.deleteListMessage",confirmAction:"RequisitionList.RequisitionListWrapper.confirmAction",cancelAction:"RequisitionList.RequisitionListWrapper.cancelAction",updateTitle:"RequisitionList.RequisitionListForm.updateTitle"}),g=h(()=>{r(!0)},[]),w=h(async u=>{var o,c;try{const p=await N(i.uid,u.name,u.description,(o=i.page_info)==null?void 0:o.page_size,(c=i.page_info)==null?void 0:c.current_page);p?(s==null||s(p),r(!1),e==null||e({action:"update",type:"success",context:"requisitionList"})):e==null||e({action:"update",type:"error",context:"requisitionList"})}catch{e==null||e({action:"update",type:"error",context:"requisitionList"})}},[i.uid,i.page_info,s,e]),y=h(()=>{a(!0)},[]),D=h(async()=>{L(!0);try{if(await k(i.uid)){const o={action:"delete",type:"success",context:"requisitionList"};try{localStorage.setItem("requisitionListPendingAlert",JSON.stringify(o))}catch{}if(n){const c=n();c&&typeof c=="string"&&(window.location.href=c)}}else e==null||e({action:"delete",type:"error",context:"requisitionList"})}catch{e==null||e({action:"delete",type:"error",context:"requisitionList"})}finally{L(!1),a(!1)}},[i.uid,n,e]);return m(C,{children:[t(x,{name:i.name,description:i.description,backLink:n?{url:"#",label:l.actionBackToRequisitionLists,onClick:u=>{u.preventDefault();const o=n();o&&typeof o=="string"&&(window.location.href=o)}}:void 0,actions:{onRename:g,onDelete:y,renameLabel:l.actionRename,deleteLabel:l.actionDeleteList}}),f&&t(q,{isOpen:f,isLoading:!1,title:l.updateTitle,modalContent:t(b,{mode:"update",defaultValues:{name:i.name,description:i.description||""},onSubmit:w,onCancel:()=>r(!1)}),handleModalOnClose:()=>r(!1)}),d&&t(q,{isOpen:d,isLoading:_,title:l.deleteListTitle,modalContent:l.deleteListMessage,confirmBtnCaption:l.confirmAction,closeBtnCaption:l.cancelAction,handleModalOnClose:()=>a(!1),handleModalOnConfirm:D})]})};export{j as R};
4
4
  //# sourceMappingURL=RequisitionListHeader.js.map
@@ -1,4 +1,4 @@
1
- /*! Copyright 2025 Adobe
1
+ /*! Copyright 2026 Adobe
2
2
  All Rights Reserved. */
3
3
  import{jsx as i,jsxs as a}from"@dropins/tools/preact-jsx-runtime.js";import{Modal as c,ProgressSpinner as m,Button as d}from"@dropins/tools/components.js";const q=({isOpen:n,isLoading:s,title:t,modalContent:u,closeBtnCaption:r,confirmBtnCaption:l,handleModalOnClose:e,handleModalOnConfirm:o})=>n?i(c,{className:"requisition-list-modal--overlay","data-testid":"requisition-list-modal",size:"medium",centered:!1,title:t,onClose:e,backgroundDim:!0,clickToDismiss:!0,escapeToDismiss:!0,role:"dialog","aria-label":t,children:a("div",{className:"requisition-list-modal",children:[s?i("div",{className:"requisition-list-modal__spinner","data-testid":"progress-spinner",children:i(m,{stroke:"4",size:"large"})}):null,i("p",{children:u}),a("div",{className:"requisition-list-modal__buttons",children:[e&&r&&i(d,{"data-testid":"rl-modal-close-button",type:"button",onClick:e,variant:"secondary",disabled:s,children:r}),o&&l&&i(d,{"data-testid":"rl-modal-confirm-button",type:"button",onClick:o,disabled:s,children:l})]})]})}):null;export{q as R};
4
4
  //# sourceMappingURL=RequisitionListModal.js.map
@@ -1,4 +1,4 @@
1
- /*! Copyright 2025 Adobe
1
+ /*! Copyright 2026 Adobe
2
2
  All Rights Reserved. */
3
3
  import*as i from"@dropins/tools/preact-compat.js";import{useState as R,useEffect as x,useMemo as q,useCallback as C}from"@dropins/tools/preact-compat.js";import{s as u}from"./state.js";import{events as h}from"@dropins/tools/event-bus.js";import{useText as v}from"@dropins/tools/i18n.js";import{jsxs as E,jsx as L}from"@dropins/tools/preact-jsx-runtime.js";import{Icon as T}from"@dropins/tools/components.js";import{classes as g}from"@dropins/tools/lib.js";const Q=()=>{var s,o;const[t,r]=R(((s=u.config)==null?void 0:s.is_requisition_list_active)==="1"&&((o=u.config)==null?void 0:o.company_enabled)===!0);return x(()=>{const e=h.on("requisitionList/initialized",()=>{var c,n;r(((c=u.config)==null?void 0:c.is_requisition_list_active)==="1"&&((n=u.config)==null?void 0:n.company_enabled)===!0)});return()=>e==null?void 0:e.off()},[]),{isEnabled:t}},D=t=>i.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...t},i.createElement("rect",{x:4.89282,y:2.75,width:14.2143,height:18.5,rx:2.25,stroke:"currentColor",strokeWidth:1}),i.createElement("line",{x1:9.85718,y1:7.67871,x2:16.2857,y2:7.67871,stroke:"currentColor",strokeWidth:1}),i.createElement("line",{x1:9.85718,y1:11.9644,x2:16.2857,y2:11.9644,stroke:"currentColor",strokeWidth:1}),i.createElement("line",{x1:9.85718,y1:16.25,x2:16.2857,y2:16.25,stroke:"currentColor",strokeWidth:1}),i.createElement("circle",{cx:7.71429,cy:7.71429,r:.714286,fill:"currentColor"}),i.createElement("circle",{cx:7.71429,cy:11.9999,r:.714286,fill:"currentColor"}),i.createElement("circle",{cx:7.71429,cy:16.2856,r:.714286,fill:"currentColor"}));function W(t){const[r,s]=R(null),o=v({errorCreate:"RequisitionList.RequisitionListAlert.errorCreate",successCreate:"RequisitionList.RequisitionListAlert.successCreate",errorDeleteItem:"RequisitionList.RequisitionListAlert.errorDeleteItem",successDeleteItem:"RequisitionList.RequisitionListAlert.successDeleteItem",errorDeleteReqList:"RequisitionList.RequisitionListAlert.errorDeleteReqList",successDeleteReqList:"RequisitionList.RequisitionListAlert.successDeleteReqList",errorAddToCart:"RequisitionList.RequisitionListAlert.errorAddToCart",successAddToCart:"RequisitionList.RequisitionListAlert.successAddToCart",errorUpdateQuantity:"RequisitionList.RequisitionListAlert.errorUpdateQuantity",successUpdateQuantity:"RequisitionList.RequisitionListAlert.successUpdateQuantity",errorUpdate:"RequisitionList.RequisitionListAlert.errorUpdate",successUpdate:"RequisitionList.RequisitionListAlert.successUpdate",errorMove:"RequisitionList.RequisitionListAlert.errorMove",successMove:"RequisitionList.RequisitionListAlert.successMove",errorAddToRequisitionList:"RequisitionList.RequisitionListAlert.errorAddToRequisitionList",successAddToRequisitionList:"RequisitionList.RequisitionListAlert.successAddToRequisitionList"}),e=q(()=>({...o,...t}),[o,t]),c=q(()=>({create:{requisitionList:{success:e.successCreate,error:e.errorCreate}},add:{product:{success:e.successAddToRequisitionList,error:e.errorAddToRequisitionList}},update:{product:{success:e.successUpdateQuantity,error:e.errorUpdateQuantity},requisitionList:{success:e.successUpdate,error:e.errorUpdate}},delete:{product:{success:e.successDeleteItem,error:e.errorDeleteItem},requisitionList:{success:e.successDeleteReqList,error:e.errorDeleteReqList}},move:{product:{success:e.successMove,error:e.errorMove}}}),[e]),n=C(m=>{const{type:d,action:p,context:A,skus:l,message:a}=m,y=a&&a.length>0?a.join(". "):c[p][A][d];s({type:d,description:y,sku:l==null?void 0:l[0]});const f=setTimeout(()=>{s(null)},5e3);return()=>clearTimeout(f)},[c]);return{alert:r,setAlert:s,handleRequisitionListAlert:n}}const j=({className:t,textContent:r,...s})=>E("div",{className:g(["empty-list",t]),"data-testid":"empty-list",...s,children:[L(T,{source:D,size:"64",stroke:"2"}),r&&L("h4",{children:r})]});export{j as E,D as S,W as a,Q as u};
4
4
  //# sourceMappingURL=RequisitionListView.js.map
@@ -1,4 +1,4 @@
1
- /*! Copyright 2025 Adobe
1
+ /*! Copyright 2026 Adobe
2
2
  All Rights Reserved. */
3
3
  import{c as _,R as a,f as m,h as I,e as T,t as c}from"./updateRequisitionList.js";import{events as q}from"@dropins/tools/event-bus.js";function R(i){var r;return{sku:i.sku,parent_sku:i.sku,name:i.name,price:i.price,shortDescription:i.shortDescription||"",metaDescription:i.metaDescription||"",metaKeyword:i.metaKeyword||"",metaTitle:i.metaTitle||"",description:i.description||"",addToCartAllowed:i.addToCartAllowed,stock_status:i.inStock?"IN_STOCK":"OUT_OF_STOCK",only_x_left_in_stock:null,url:i.url||"",urlKey:i.urlKey||"",externalId:i.externalId||"",images:((r=i.images)==null?void 0:r.map(t=>({url:t.url,label:t.label||"",roles:t.roles||[]})))||[]}}function L(i){return i!=null&&i.length?i.map(R):[]}const E=`
4
4
  query GET_REQUISITION_LIST_QUERY(
@@ -1,4 +1,4 @@
1
- /*! Copyright 2025 Adobe
1
+ /*! Copyright 2026 Adobe
2
2
  All Rights Reserved. */
3
3
  import{R as L,f as T,h as q,t as R}from"./updateRequisitionList.js";import{events as E}from"@dropins/tools/event-bus.js";const a=`
4
4
  mutation DELETE_REQUISITION_LIST_MUTATION(
@@ -1,4 +1,4 @@
1
- /*! Copyright 2025 Adobe
1
+ /*! Copyright 2026 Adobe
2
2
  All Rights Reserved. */
3
3
  import{R as a,f as m,h as g,t as l}from"./updateRequisitionList.js";import{events as p}from"@dropins/tools/event-bus.js";const S=`
4
4
  query GET_REQUISITION_LISTS_QUERY(
package/chunks/state.js CHANGED
@@ -1,4 +1,4 @@
1
- /*! Copyright 2025 Adobe
1
+ /*! Copyright 2026 Adobe
2
2
  All Rights Reserved. */
3
3
  const n={authenticated:!1,config:void 0,requisitionLists:[],requisitionListsLoading:!1,requisitionListsVersion:0},s=new Proxy(n,{set(i,e,t){return Reflect.set(i,e,t)},get(i,e){return i[e]}}),o=i=>{s.requisitionLists=i,s.requisitionListsVersion++},u=i=>{s.requisitionLists.some(t=>t.uid===i.uid)?s.requisitionLists=s.requisitionLists.map(t=>t.uid===i.uid?i:t):s.requisitionLists=[...s.requisitionLists,i],s.requisitionListsVersion++},r=i=>{s.requisitionListsLoading=i};export{r as a,o as b,s,u};
4
4
  //# sourceMappingURL=state.js.map
@@ -1,4 +1,4 @@
1
- /*! Copyright 2025 Adobe
1
+ /*! Copyright 2026 Adobe
2
2
  All Rights Reserved. */
3
3
  import{events as c}from"@dropins/tools/event-bus.js";import{FetchGraphQL as p}from"@dropins/tools/fetch-graphql.js";const d=e=>{const i=e.map(o=>o.message).join(" ");throw Error(i)},{setEndpoint:E,setFetchGraphQlHeader:v,removeFetchGraphQlHeader:y,setFetchGraphQlHeaders:h,fetchGraphQl:l,getConfig:N}=new p().getMethods(),f=`
4
4
  query REFINE_PRODUCT(
@@ -1,4 +1,4 @@
1
- /*! Copyright 2025 Adobe
1
+ /*! Copyright 2026 Adobe
2
2
  All Rights Reserved. */
3
3
  import{R as u,R as d}from"../chunks/RequisitionListForm2.js";import"@dropins/tools/preact-jsx-runtime.js";import"../chunks/RequisitionListForm.js";import"@dropins/tools/preact-hooks.js";import"@dropins/tools/components.js";import"@dropins/tools/lib.js";import"@dropins/tools/i18n.js";import"../chunks/updateRequisitionList.js";import"@dropins/tools/event-bus.js";import"@dropins/tools/fetch-graphql.js";export{u as RequisitionListForm,d as default};
4
4
  //# sourceMappingURL=RequisitionListForm.js.map
@@ -1,4 +1,4 @@
1
- /*! Copyright 2025 Adobe
1
+ /*! Copyright 2026 Adobe
2
2
  All Rights Reserved. */
3
3
  import{jsxs as h,jsx as t,Fragment as z}from"@dropins/tools/preact-jsx-runtime.js";import{useState as M,useCallback as q,useMemo as S,useEffect as T}from"@dropins/tools/preact-compat.js";import{Button as N,Header as G,InLineAlert as U,Table as V,Pagination as B,Card as j}from"@dropins/tools/components.js";import{Slot as J,classes as v,VComponent as Z}from"@dropins/tools/lib.js";import{D,R as $}from"../chunks/RequisitionListForm.js";import"@dropins/tools/preact-hooks.js";import{R as I}from"../chunks/RequisitionListForm2.js";import{events as y}from"@dropins/tools/event-bus.js";import"../chunks/state.js";import"@dropins/tools/preact.js";import{u as K,a as Q,E as X}from"../chunks/RequisitionListView.js";import{R as Y}from"../chunks/RequisitionListActions.js";import{R as x}from"../chunks/RequisitionListModal.js";import{N as ii,P as ei,a as ti}from"../chunks/PaginationItemsCounter.js";import{useText as E}from"@dropins/tools/i18n.js";import{g as W}from"../chunks/getRequisitionLists.js";import{d as ni}from"../chunks/deleteRequisitionList.js";import{u as si}from"../chunks/updateRequisitionList.js";import"@dropins/tools/fetch-graphql.js";function oi(u,L,d){const R=E({actionRename:"RequisitionList.RequisitionListView.actionRename",actionDeleteList:"RequisitionList.RequisitionListView.actionDeleteList"}),[i,a]=M(null),[p,f]=M(!1),[w,_]=M(!1),C=q(()=>{d&&d(),f(!0)},[d]),A=q(()=>f(!1),[]),c=S(()=>{if(u)return{handleOpenRenameModal:e=>{f(s=>s&&!1),u.handleOpenRenameModal(e)},handleOpenDeleteModal:e=>{f(s=>s&&!1),u.handleOpenDeleteModal(e)}}},[u]),l=q(async(e,s)=>{var r,n,m;_(!0);try{const o=await W(e,s),O=((r=o==null?void 0:o.page_info)==null?void 0:r.current_page)??1,F=((n=o==null?void 0:o.page_info)==null?void 0:n.total_pages)??0;if(!((((m=o==null?void 0:o.items)==null?void 0:m.length)??0)>0)&&O>1&&F>=O-1){const k=O-1,H=await W(k,s);a(H)}else a(o)}finally{_(!1)}},[]);T(()=>{const e=y.on("requisitionLists/data",s=>{s&&s.items&&a(s)},{eager:!0});return()=>{e==null||e.off()}},[]),T(()=>{i||l(1,D)},[i,l]);const g=q(e=>{var n,m;const s=e??((n=i==null?void 0:i.page_info)==null?void 0:n.current_page)??1,r=((m=i==null?void 0:i.page_info)==null?void 0:m.page_size)??D;return l(s,r)},[l,i]),b=q(async e=>{await l(1,e)},[l]);return{rows:S(()=>((i==null?void 0:i.items)??[]).map(e=>({name:h("div",{className:"requisition-list-grid-wrapper__name",children:[t("div",{className:"requisition-list-grid-wrapper__name__title",children:t("a",{href:"#",onClick:s=>{if(s.preventDefault(),L){const r=L(e.uid);typeof r=="string"&&(window.location.href=r)}},children:e.name})}),e.description&&t("div",{className:"requisition-list-grid-wrapper__name__description",children:e.description})]}),items_count:e.items_count,last_updated:new Date(e.updated_at).toLocaleString(),actions:h("div",{className:"requisition-list-grid-wrapper__actions",children:[t(N,{variant:"tertiary",type:"button","data-testid":"rename-button",onClick:()=>c==null?void 0:c.handleOpenRenameModal(e),children:R.actionRename}),t(N,{variant:"tertiary",type:"button","data-testid":"delete-button",onClick:()=>c==null?void 0:c.handleOpenDeleteModal(e),children:R.actionDeleteList})]})})),[i==null?void 0:i.items,R.actionRename,R.actionDeleteList,c,L]),isLoading:w||!i,pageInfo:i==null?void 0:i.page_info,totalCount:i==null?void 0:i.total_count,handlePageChange:g,handlePageSizeChange:b,isAdding:p,handleAddNew:C,handleCancelCreate:A}}const Oi=({routeRequisitionListDetails:u,fallbackRoute:L="/customer/account",slots:d})=>{const{isEnabled:R}=K(),[i,a]=M({type:null,isOpen:!1,isLoading:!1,requisitionList:null}),p=q(()=>{a({type:null,isOpen:!1,isLoading:!1,requisitionList:null})},[]),f=q(o=>{a({type:"rename",isOpen:!0,isLoading:!1,requisitionList:o})},[]),w=q(o=>{a({type:"delete",isOpen:!0,isLoading:!1,requisitionList:o})},[]),{rows:_,isLoading:C,pageInfo:A,totalCount:c,handlePageChange:l,handlePageSizeChange:g,isAdding:b,handleAddNew:P,handleCancelCreate:e}=oi({handleOpenRenameModal:f,handleOpenDeleteModal:w},u,p),s=q(async o=>{if(i.requisitionList)try{await si(i.requisitionList.uid,o.name,o.description),y.emit("requisitionList/alert",{action:"update",type:"success",context:"requisitionList"}),await l(),p()}catch{y.emit("requisitionList/alert",{action:"update",type:"error",context:"requisitionList"})}},[i.requisitionList,l,p]),r=async()=>{i.requisitionList&&(a({...i,isLoading:!0}),await ni(i.requisitionList.uid).then(async()=>{y.emit("requisitionList/alert",{type:"success",action:"delete",context:"requisitionList"})}).catch(()=>{y.emit("requisitionList/alert",{type:"error",action:"delete",context:"requisitionList"})}).finally(async()=>{await l(),p()}))},n=E({containerTitle:"RequisitionList.containerTitle",updateTitle:"RequisitionList.RequisitionListForm.updateTitle",deleteRequisitionListTitle:"RequisitionList.RequisitionListWrapper.deleteRequisitionListTitle",deleteRequisitionListMessage:"RequisitionList.RequisitionListWrapper.deleteRequisitionListMessage",cancelAction:"RequisitionList.RequisitionListWrapper.cancelAction",confirmAction:"RequisitionList.RequisitionListWrapper.confirmAction",notEnabledTitle:"RequisitionList.RequisitionListsNotEnabled.title",notEnabledMessage:"RequisitionList.RequisitionListsNotEnabled.message",notEnabledActionLabel:"RequisitionList.RequisitionListsNotEnabled.actionLabel"}),m=q(()=>d!=null&&d.Header?t(J,{name:"Header","aria-label":n.containerTitle,title:n.containerTitle,slot:d.Header}):t(G,{"aria-label":n.containerTitle,role:"region",title:n.containerTitle}),[d,n.containerTitle]);return R===!1?t(ii,{title:n.notEnabledTitle,message:n.notEnabledMessage,actionLabel:n.notEnabledActionLabel,onAction:()=>{window.location.href=L}}):h(z,{children:[t(ai,{header:m(),rows:_,skeletonRowCount:10,isLoading:C,pageInfo:A,totalCount:c,handlePageChange:l,handlePageSizeChange:g,defaultPageSize:10,isAdding:b,handleAddNew:P,handleCancelCreate:e}),i.type==="rename"&&i.isOpen&&i.requisitionList&&t(x,{isOpen:i.isOpen,isLoading:i.isLoading,title:n.updateTitle,modalContent:t($,{mode:"update",defaultValues:{name:i.requisitionList.name,description:i.requisitionList.description||""},onSubmit:s,onCancel:p}),handleModalOnClose:p}),i.type==="delete"&&i.isOpen&&t(x,{isOpen:i.isOpen,isLoading:i.isLoading,title:n.deleteRequisitionListTitle,modalContent:n.deleteRequisitionListMessage,confirmBtnCaption:n.confirmAction,closeBtnCaption:n.cancelAction,handleModalOnClose:p,handleModalOnConfirm:r})]})},ai=({className:u,isLoading:L=!1,header:d,rows:R=[],skeletonRowCount:i=10,pageInfo:a,totalCount:p=0,handlePageChange:f,handlePageSizeChange:w,defaultPageSize:_=10,isAdding:C,handleAddNew:A,handleCancelCreate:c,...l})=>{const g=E({name:"RequisitionList.RequisitionListWrapper.name",itemsCount:"RequisitionList.RequisitionListWrapper.itemsCount",lastUpdated:"RequisitionList.RequisitionListWrapper.lastUpdated",actions:"RequisitionList.RequisitionListWrapper.actions",emptyList:"RequisitionList.RequisitionListWrapper.emptyList",show:"RequisitionList.PageSizePicker.show"}),b=((a==null?void 0:a.total_pages)??0)>0,P=!L&&R.length===0&&!b,{alert:e,setAlert:s,handleRequisitionListAlert:r}=Q();return T(()=>{const n=y.on("requisitionList/alert",r);try{const m=localStorage.getItem("requisitionListPendingAlert");if(m){const o=JSON.parse(m);r(o),localStorage.removeItem("requisitionListPendingAlert")}}catch{}return()=>{n==null||n.off()}},[r]),h("div",{...l,className:v(["requisition-list-grid-wrapper",u]),"data-testid":"requisition-list-grid-wrapper",children:[d&&t("div",{className:v(["requisition-list-grid-wrapper__header",u]),"data-testid":"requisition-list-grid-wrapper-header",children:t(Z,{node:d})}),e&&t("div",{className:"requisition-list__alert-wrapper",children:t(U,{heading:e.description,type:e.type,variant:"primary",onDismiss:()=>s(null)})}),P?t(X,{textContent:g.emptyList}):h(z,{children:[t(V,{columns:[{key:"name",label:g.name},{key:"items_count",label:g.itemsCount},{key:"last_updated",label:g.lastUpdated},{key:"actions",label:g.actions}],rowData:R,loading:L,skeletonRowCount:i}),a&&h("div",{className:v(["requisition-list-grid-wrapper__pagination",u]),children:[t(ei,{pageInfo:a,totalCount:p}),(a.total_pages||0)>1&&t(B,{totalPages:a.total_pages,currentPage:a.current_page||1,onChange:f,disabled:L}),h("div",{className:"requisition-list-grid-wrapper__pagination-picker",children:[t("span",{children:g.show}),t(ti,{currentPageSize:a.page_size||_,onPageSizeChange:w||(()=>Promise.resolve()),disabled:L})]})]})]}),t("div",{className:v(["requisition-list-grid-wrapper__add-new",u]),children:C?t(j,{variant:"secondary",children:t(I,{mode:"create",onSuccess:async()=>{await f(),c(),r({type:"success",action:"create",context:"requisitionList"})},onError:()=>{r({type:"error",action:"create",context:"requisitionList"})},onCancel:c})}):t(Y,{onAddNew:A})})]})};export{Oi as RequisitionListGrid,Oi as default};
4
4
  //# sourceMappingURL=RequisitionListGrid.js.map
@@ -1,4 +1,4 @@
1
- /*! Copyright 2025 Adobe
1
+ /*! Copyright 2026 Adobe
2
2
  All Rights Reserved. */
3
3
  import{R as q}from"../chunks/RequisitionListHeader.js";import"@dropins/tools/preact-jsx-runtime.js";import"@dropins/tools/preact-hooks.js";import"../chunks/RequisitionListModal.js";import"@dropins/tools/components.js";import"../chunks/RequisitionListForm.js";import"@dropins/tools/lib.js";import"@dropins/tools/i18n.js";import"../chunks/updateRequisitionList.js";import"@dropins/tools/event-bus.js";import"@dropins/tools/fetch-graphql.js";import"../chunks/deleteRequisitionList.js";export{q as RequisitionListHeader};
4
4
  //# sourceMappingURL=RequisitionListHeader.js.map
@@ -1,4 +1,4 @@
1
- /*! Copyright 2025 Adobe
1
+ /*! Copyright 2026 Adobe
2
2
  All Rights Reserved. */
3
3
  import{jsx as s,jsxs as q,Fragment as x}from"@dropins/tools/preact-jsx-runtime.js";import*as k from"@dropins/tools/preact-compat.js";import{useState as p,useEffect as v,useCallback as m,useMemo as D}from"@dropins/tools/preact-compat.js";import{Card as y,Icon as E,Button as F,InLineAlert as V}from"@dropins/tools/components.js";import{c as H,R as J,f as K,h as X,t as Y}from"../chunks/updateRequisitionList.js";import{events as A}from"@dropins/tools/event-bus.js";import"@dropins/tools/preact-hooks.js";import"@dropins/tools/lib.js";import"../chunks/RequisitionListForm.js";import{R as Z}from"../chunks/RequisitionListForm2.js";import{u as ii,a as ti,S as $,E as si}from"../chunks/RequisitionListView.js";import"@dropins/tools/preact.js";import{s as l,a as P,b as N,u as ei}from"../chunks/state.js";import{g as oi}from"../chunks/getRequisitionLists.js";import{R as ni}from"../chunks/RequisitionListActions.js";import{R as ri}from"../chunks/RequisitionListModal.js";import{useText as ai}from"@dropins/tools/i18n.js";import"@dropins/tools/fetch-graphql.js";const li=`
4
4
  mutation ADD_PRODUCTS_TO_REQUISITION_LIST_MUTATION(
@@ -1,4 +1,4 @@
1
- /*! Copyright 2025 Adobe
1
+ /*! Copyright 2026 Adobe
2
2
  All Rights Reserved. */
3
3
  import{jsxs as w,jsx as e,Fragment as bt}from"@dropins/tools/preact-jsx-runtime.js";import*as p from"@dropins/tools/preact-compat.js";import{useState as S,useEffect as lt,useCallback as M}from"@dropins/tools/preact-compat.js";import{b as kt,a as yt,d as vt,u as Ct,g as ct,i as Rt}from"../chunks/addRequisitionListItemsToCart.js";import{Button as pt,Icon as tt,Price as Lt,Field as St,Input as It,Image as At,Checkbox as Nt,Table as Pt,ProgressSpinner as Tt,InLineAlert as Et,Pagination as xt}from"@dropins/tools/components.js";import{events as O}from"@dropins/tools/event-bus.js";import{useState as et,useCallback as ut}from"@dropins/tools/preact-hooks.js";import{VComponent as Vt,classes as Mt}from"@dropins/tools/lib.js";import{D as dt}from"../chunks/RequisitionListForm.js";import{a as Dt,u as Ht,E as $t}from"../chunks/RequisitionListView.js";import{h as Ft}from"@dropins/tools/preact.js";import{useText as gt}from"@dropins/tools/i18n.js";import{R as Bt}from"../chunks/RequisitionListHeader.js";import"../chunks/state.js";import{R as zt}from"../chunks/RequisitionListModal.js";import{N as qt,P as Ot,a as Wt}from"../chunks/PaginationItemsCounter.js";import"../chunks/updateRequisitionList.js";import"@dropins/tools/fetch-graphql.js";import"../chunks/deleteRequisitionList.js";const Qt=l=>p.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...l},p.createElement("g",{clipPath:"url(#clip0_102_196)"},p.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M18.3601 18.16H6.5601L4.8801 3H2.3501M19.6701 19.59C19.6701 20.3687 19.0388 21 18.2601 21C17.4814 21 16.8501 20.3687 16.8501 19.59C16.8501 18.8113 17.4814 18.18 18.2601 18.18C19.0388 18.18 19.6701 18.8113 19.6701 19.59ZM7.42986 19.59C7.42986 20.3687 6.79858 21 6.01986 21C5.24114 21 4.60986 20.3687 4.60986 19.59C4.60986 18.8113 5.24114 18.18 6.01986 18.18C6.79858 18.18 7.42986 18.8113 7.42986 19.59Z",stroke:"currentColor",strokeLinejoin:"round"}),p.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M5.25 6.37L20.89 8.06L20.14 14.8H6.19",stroke:"currentColor",strokeLinejoin:"round"})),p.createElement("defs",null,p.createElement("clipPath",{id:"clip0_102_196"},p.createElement("rect",{vectorEffect:"non-scaling-stroke",width:19.29,height:19.5,fill:"white",transform:"translate(2.3501 2.25)"})))),jt=l=>p.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...l},p.createElement("path",{d:"M17.3332 11.75H6.6665",strokeWidth:1,strokeLinecap:"square",strokeLinejoin:"round",vectorEffect:"non-scaling-stroke",fill:"none",stroke:"currentColor"})),wt=l=>p.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",...l},p.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M1 5H23",stroke:"currentColor",strokeWidth:1,strokeMiterlimit:10}),p.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M17.3674 22H6.63446C5.67952 22 4.88992 21.2688 4.8379 20.3338L4 5H20L19.1621 20.3338C19.1119 21.2688 18.3223 22 17.3655 22H17.3674Z",stroke:"currentColor",strokeWidth:1,strokeMiterlimit:10}),p.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M9.87189 2H14.1281C14.6085 2 15 2.39766 15 2.88889V5H9V2.88889C9 2.39912 9.39006 2 9.87189 2Z",stroke:"currentColor",strokeWidth:1,strokeMiterlimit:10}),p.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M8.87402 8.58057L9.39348 17.682",stroke:"currentColor",strokeWidth:1,strokeMiterlimit:10}),p.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M14.6673 8.58057L14.146 17.682",stroke:"currentColor",strokeWidth:1,strokeMiterlimit:10}));function Zt(){const[l,P]=et(null),[k,g]=et(new Set),D=ut((y,L)=>{g(f=>{const m=new Set(f);return L?m.add(y):m.delete(y),m})},[]),I=ut(()=>{var L;const y=(L=l==null?void 0:l.items)==null?void 0:L.map(f=>f.uid);g(new Set(y))},[l]),A=ut(()=>{g(new Set)},[]);return{currentRequisitionList:l,setCurrentRequisitionList:P,selectedItems:k,setSelectedItems:g,handleItemSelection:D,handleSelectAll:I,handleSelectNone:A}}const Kt=({className:l,items:P,selectedItems:k,currentPage:g,pageSize:D,canEdit:I=!0,handleItemSelection:A,handleUpdateQuantity:y,onAddToCart:L,onDeleteItem:f,...m})=>{const[N,F]=et({}),[it,W]=et({}),h=gt({productNameHeader:"RequisitionList.RequisitionListView.productListTable.headers.productName",skuHeader:"RequisitionList.RequisitionListView.productListTable.headers.sku",priceHeader:"RequisitionList.RequisitionListView.productListTable.headers.price",quantityHeader:"RequisitionList.RequisitionListView.productListTable.headers.quantity",subtotalHeader:"RequisitionList.RequisitionListView.productListTable.headers.subtotal",actionsHeader:"RequisitionList.RequisitionListView.productListTable.headers.actions",actionAddToCart:"RequisitionList.RequisitionListView.actionAddToCart",actionDelete:"RequisitionList.RequisitionListView.actionDelete",actionSelect:"RequisitionList.RequisitionListView.actionSelect",itemQuantity:"RequisitionList.RequisitionListView.productListTable.itemQuantity",outOfStock:"RequisitionList.RequisitionListView.productListTable.outOfStock",onlyXLeftInStock:"RequisitionList.RequisitionListView.productListTable.onlyXLeftInStock"}),T=[{label:"#",key:"index"},{label:"item",key:"item"},{label:h.priceHeader,key:"price"},{label:h.quantityHeader,key:"quantity"},{label:h.subtotalHeader,key:"subtotal"}];I&&(T.unshift({label:h.actionSelect,key:"selector"}),T.push({label:h.actionsHeader,key:"actions"}));const E=(t,s)=>{const r=t.target.checked;A(s.uid,r)},X=t=>(g-1)*D+t+1,nt=t=>{var s,r;return((s=t.configured_product)==null?void 0:s.name)||((r=t.product)==null?void 0:r.name)||t.sku},Q=t=>{var s,r,a,R,c,v;return(r=(s=t.configured_product)==null?void 0:s.images)!=null&&r.length?((a=t.configured_product.images[0])==null?void 0:a.url)||"":(c=(R=t.product)==null?void 0:R.images)!=null&&c.length&&((v=t.product.images[0])==null?void 0:v.url)||""},x=t=>{var s;return((s=t.product)==null?void 0:s.name)||t.sku},j=t=>{var s;return(s=t.configured_product)==null?void 0:s.name},B=t=>t.bundle_options?t.bundle_options.map((r,a)=>w("span",{className:"requisition-list-view-product-list-table__product-configurable-name",children:[r.values[0].label," x ",r.values[0].quantity]},r.values[0].label||a)):void 0,Z=t=>{var s;return((s=t.configured_product)==null?void 0:s.sku)||t.sku},n=t=>{var s,r,a,R,c,v,V,H;return Array.isArray(t.bundle_options)&&t.bundle_options.length>0?t.bundle_options.reduce((rt,Y)=>{var G,U,K;return rt+(((U=(G=Y.values[0])==null?void 0:G.priceV2)==null?void 0:U.value)||0)*(((K=Y.values[0])==null?void 0:K.quantity)||0)},0):((R=(a=(r=(s=t.configured_product)==null?void 0:s.price)==null?void 0:r.final)==null?void 0:a.amount)==null?void 0:R.value)||((H=(V=(v=(c=t.product)==null?void 0:c.price)==null?void 0:v.final)==null?void 0:V.amount)==null?void 0:H.value)||0},d=t=>{var s,r,a,R,c,v,V,H;return((R=(a=(r=(s=t.configured_product)==null?void 0:s.price)==null?void 0:r.final)==null?void 0:a.amount)==null?void 0:R.currency)||((H=(V=(v=(c=t.product)==null?void 0:c.price)==null?void 0:v.final)==null?void 0:V.amount)==null?void 0:H.currency)},z=t=>n(t)*t.quantity,J=(t,s)=>{const r=+t.target.value;r>0&&!Number.isNaN(t.target.value)&&W(a=>({...a,[s.uid]:r}))},st=async(t,s)=>{let r=+t.target.value;if(!(r>0&&r!==s.quantity)){W(a=>({...a,[s.uid]:s.quantity}));return}F(a=>({...a,[s.uid]:!0}));try{await y(s.uid,r)}finally{F(a=>({...a,[s.uid]:!1}))}},ot=P.map((t,s)=>({selector:e("label",{id:`item-selector-${t.sku}-label`,children:e(Nt,{className:"requisition-list-view-product-list-table__checkbox",name:`item-selector-${t.sku}`,"aria-label":`${h.actionSelect} ${x(t)}`,"data-testid":`item-checkbox-${t.sku}`,onChange:r=>E(r,t),value:t.sku,checked:k.has(t.uid)})}),index:e("div",{className:"requisition-list-view-product-list-table__index-container",children:X(s)}),item:w("div",{className:"requisition-list-view-product-list-table__item-container",children:[e(At,{className:"requisition-list-view-product-list-table__thumbnail",alt:nt(t),src:Q(t)}),w("div",{className:"requisition-list-view-product-list-table__item-details",children:[e("div",{className:"requisition-list-view-product-list-table__product-name",children:x(t)}),t.stock_status==="OUT_OF_STOCK"&&e("div",{className:"requisition-list-view-product-list-table__out-of-stock",children:h.outOfStock}),t.stock_status!=="OUT_OF_STOCK"&&t.only_x_left_in_stock!==null&&t.only_x_left_in_stock<t.quantity&&e("div",{className:"requisition-list-view-product-list-table__low-stock",children:h.onlyXLeftInStock.replace("{count}",String(t.only_x_left_in_stock))}),e("span",{className:"requisition-list-view-product-list-table__product-configurable-name",children:j(t)}),e("div",{className:"requisition-list-view-product-list-table__sku",children:Z(t)}),B(t)]})]}),price:e(Lt,{className:"requisition-list-view-product-list-table__price",amount:n(t),currency:d(t)}),quantity:e("span",{className:"requisition-list-view-product-list-table__quantity",children:e(St,{disabled:!!N[t.uid],children:e(It,{id:`requisition-list-item-quantity-${t.sku}`,"data-testid":`requisition-list-item-quantity-${t.sku}`,name:"quantity",type:"text","aria-label":`${h.itemQuantity} - ${x(t)}`,value:it[t.uid]??t.quantity,onChange:r=>J(r,t),onBlur:r=>st(r,t)})})}),subtotal:e(Lt,{className:"requisition-list-view-product-list-table__price",amount:z(t),currency:d(t)}),actions:w("div",{className:"requisition-list-view__bulk-actions",children:[e(pt,{type:"button",onClick:()=>L([t.uid]),icon:e(tt,{source:Qt}),"aria-label":`${h.actionAddToCart} - ${x(t)}`,"data-testid":"product-list-table-add-to-cart-button"}),e(pt,{type:"button",variant:"secondary",icon:e(tt,{source:wt}),onClick:()=>f([t.uid]),"aria-label":`${h.actionDelete} - ${x(t)}`,"data-testid":"product-list-table-delete-button"})]})})),at=e(Pt,{columns:T,rowData:ot,"data-testid":"product-list-table",mobileLayout:"stacked"});return e(Vt,{node:Ft("div",{}),className:Mt(["requisition-list-view-product-list-table-container",l]),"data-testid":"product-list-table-container",...m,children:at})},Xt=({selectedItems:l,deletingItemId:P,addingToCartItemId:k,bulkAddingToCart:g,updatingQuantityItemId:D,onSelectAll:I,onSelectNone:A,onBulkAddToCart:y,onBulkDelete:L})=>{const f=gt({statusDeleting:"RequisitionList.RequisitionListView.statusDeleting",actionSelectAll:"RequisitionList.RequisitionListView.actionSelectAll",actionSelectNone:"RequisitionList.RequisitionListView.actionSelectNone",actionAddToCart:"RequisitionList.RequisitionListView.actionAddToCart",actionDeleteSelectedItems:"RequisitionList.RequisitionListView.actionDeleteSelectedItems",statusBulkAddingToCart:"RequisitionList.RequisitionListView.statusBulkAddingToCart"}),m=P!==null||k!==null||g||D!==null,N=l.size>0;return w("div",{className:"requisition-list-view__batch-actions",children:[w("div",{className:"requisition-list-view__batch-actions-left",children:[e("button",{"data-testid":"bulk-actions-select-toggle-btn",type:"button",className:`requisition-list-view__batch-actions-select-toggle ${N?"requisition-list-view__batch-actions-select-toggle--active":""}`,onClick:N?A:I,disabled:m,"aria-label":N?f.actionSelectNone:f.actionSelectAll,children:e(tt,{source:jt})}),e("button",{type:"button",className:"requisition-list-view__batch-actions-select-label",onClick:N?A:I,disabled:m,children:f.actionSelectAll})]}),N&&w("div",{className:"requisition-list-view__batch-actions-buttons",children:[e("span",{className:"requisition-list-view__batch-actions-count-badge","aria-label":`${l.size} items selected`,children:l.size}),e(pt,{"data-testid":"bulk-actions-add-to-cart-btn",type:"button",variant:"secondary",onClick:y,disabled:m,children:g?f.statusBulkAddingToCart:f.actionAddToCart}),e("button",{"data-testid":"bulk-actions-delete-btn",type:"button",className:"requisition-list-view__batch-actions-delete-icon",onClick:L,disabled:m,"aria-label":f.actionDeleteSelectedItems,children:e(tt,{source:wt})})]})]})},fe=({requisitionListUid:l,skipProductLoading:P=!1,pageSize:k=dt,routeRequisitionListGrid:g,fallbackRoute:D="/customer/account"})=>{var K,ft,mt,ht,_t;const[I,A]=S(!1),[y,L]=S(null),[f,m]=S(null),[N,F]=S(!1),[it,W]=S(null),[h,T]=S(!1),[E,X]=S(k),[nt,Q]=S(!0),[x,j]=S(!1),[B,Z]=S([]),{currentRequisitionList:n,setCurrentRequisitionList:d,selectedItems:z,setSelectedItems:J,handleItemSelection:st,handleSelectAll:ot,handleSelectNone:at}=Zt(),t=gt({emptyRequisitionList:"RequisitionList.RequisitionListView.emptyRequisitionList",errorLoadingProducts:"RequisitionList.RequisitionListView.errorLoadingProducts",errorLoadPage:"RequisitionList.RequisitionListView.errorLoadPage",notFoundTitle:"RequisitionList.RequisitionListView.notFoundTitle",notFoundMessage:"RequisitionList.RequisitionListView.notFoundMessage",notFoundActionLabel:"RequisitionList.RequisitionListView.notFoundActionLabel",notEnabledTitle:"RequisitionList.RequisitionListsNotEnabled.title",notEnabledMessage:"RequisitionList.RequisitionListsNotEnabled.message",partialMoveSuccess:"RequisitionList.RequisitionListAlert.partialMoveSuccess",notEnabledActionLabel:"RequisitionList.RequisitionListsNotEnabled.actionLabel",show:"RequisitionList.PageSizePicker.show",deleteItemsTitle:"RequisitionList.RequisitionListView.deleteItemsTitle",deleteItemsMessage:"RequisitionList.RequisitionListView.deleteItemsMessage",confirmAction:"RequisitionList.RequisitionListView.confirmAction",cancelAction:"RequisitionList.RequisitionListView.cancelAction"}),{alert:s,setAlert:r,handleRequisitionListAlert:a}=Dt(),{isEnabled:R}=Ht();lt(()=>{const i=O.on("requisitionList/data",u=>{(u==null?void 0:u.uid)===l&&(d(u),J(new Set))}),o=O.on("requisitionList/alert",a);return()=>{i==null||i.off(),o==null||o.off()}},[a,l,d,J]),lt(()=>{X(k)},[k]);const c=M(async i=>{var u,C;const o=((u=i.items)==null?void 0:u.map(q=>q.sku))||[];if(o.length===0)return i;A(!0);try{const q=await kt(o);if(q){const _=new Map;return q.forEach(b=>{_.set(b.sku,b)}),{...i,items:(C=i.items)==null?void 0:C.map(b=>{const $=_.get(b.sku);return{...b,product:$||b.product,stock_status:b.stock_status||($==null?void 0:$.stock_status)||"IN_STOCK",only_x_left_in_stock:b.only_x_left_in_stock??($==null?void 0:$.only_x_left_in_stock)??null}})}}return console.warn("No products found"),i}catch(q){return console.warn(q instanceof Error?q.message:t.errorLoadingProducts),i}finally{A(!1)}},[t.errorLoadingProducts]);lt(()=>{if(!l){Q(!1);return}if(n&&n.uid===l)return;Q(!0),(async()=>{try{const o=await ct(l,1,k);if(o)if(P)d(o);else{const u=await c(o);d(u)}}catch(o){console.error("Failed to initialize requisition list from UID:",o)}finally{Q(!1)}})()},[l,k,P,c,d,n]);const v=M(async i=>{i&&i.length===1?(F(!1),m(i)):(F(!0),m(null));try{const o=await yt(n.uid,i),u=(i==null?void 0:i.length)||0,C=(o==null?void 0:o.length)||0,q=u-C;if(o&&o.length>0&&q>0){const _={action:"move",type:"error",context:"product",message:[t.partialMoveSuccess.replace("{successCount}",String(q)).replace("{failedCount}",String(C))]};a(_),O.emit("requisitionList/alert",_)}else if(o&&o.length>0){const _={action:"move",type:"error",context:"product",message:o.map(b=>b.message)};a(_),O.emit("requisitionList/alert",_)}else{const _={action:"move",type:"success",context:"product"};a(_),O.emit("requisitionList/alert",_)}}catch{const u={action:"move",type:"error",context:"product"};a(u),O.emit("requisitionList/alert",u)}finally{m(null),F(!1)}},[n,a,t]),V=M(i=>{i&&i.length>0&&(Z(i),j(!0))},[]),H=M(async()=>{B.length===1?L(B[0]):L("bulk");try{const i=await vt(n.uid,B,E,n.page_info.current_page);if(i){const o=await c(i);d(o),a({action:"delete",type:"success",context:"product"})}else a({action:"delete",type:"error",context:"product"})}catch{a({action:"delete",type:"error",context:"product"})}finally{L(null),j(!1),Z([])}},[B,n,E,c,d,a]),rt=M(async(i,o)=>{var u;W(i);try{const C=(u=n.items)==null?void 0:u.find(b=>b.uid===i);if(!C){a({action:"update",type:"error",context:"product"});return}const q={item_id:C.uid,entered_options:C.entered_options,selected_options:C.selected_options,quantity:o},_=await Ct(n.uid,[q],E,n.page_info.current_page);if(_){const b=await c(_);d(b),a({action:"update",type:"success",context:"product"})}else a({action:"update",type:"error",context:"product"})}catch{a({action:"update",type:"error",context:"product"})}finally{W(null)}},[n,c,d,E,a]),Y=M(async i=>{T(!0);try{const o=await ct(n.uid,i,E);if(o){const u=await c(o);d(u)}else console.warn(t.errorLoadPage)}catch(o){console.warn(o instanceof Error?o.message:t.errorLoadPage)}finally{T(!1)}},[n==null?void 0:n.uid,c,E,t,d]),G=M(async i=>{X(i),T(!0);try{const o=await ct(n.uid,1,i);if(o){const u=await c(o);d(u)}else console.warn(t.errorLoadPage)}catch{console.warn(t.errorLoadPage)}finally{T(!1)}},[n==null?void 0:n.uid,c,t,d]),U=M(async i=>{const o=await c(i);d(o)},[d,c]);return w("div",{className:"requisition-list-view__container",children:[nt?e("div",{className:"requisition-list-view__loading",children:e(Tt,{stroke:"4",size:"large"})}):R===!1?e(qt,{title:t.notEnabledTitle,message:t.notEnabledMessage,actionLabel:t.notEnabledActionLabel,onAction:()=>{window.location.href=D}}):!n||!Rt(n==null?void 0:n.uid)?e(qt,{title:t.notFoundTitle,message:t.notFoundMessage,actionLabel:g?t.notFoundActionLabel:void 0,onAction:g?()=>{const i=g();i&&typeof i=="string"&&(window.location.href=i)}:void 0}):w(bt,{children:[e(Bt,{requisitionList:n,routeRequisitionListGrid:g,onUpdate:U,onAlert:a}),s&&e("div",{className:"requisition-list__alert-wrapper",children:e(Et,{heading:s.description,type:s.type,variant:"primary",onDismiss:()=>r(null)})}),n.items_count===0?e($t,{textContent:`${n.name} ${t.emptyRequisitionList}`}):w(bt,{children:[e(Xt,{selectedItems:z,deletingItemId:y,addingToCartItemId:f,bulkAddingToCart:N,updatingQuantityItemId:it,onSelectAll:ot,onSelectNone:at,onBulkAddToCart:()=>v(Array.from(z)),onBulkDelete:()=>V(Array.from(z))}),e(Kt,{items:n.items,selectedItems:z,currentPage:((K=n.page_info)==null?void 0:K.current_page)||1,pageSize:((ft=n.page_info)==null?void 0:ft.page_size)||dt,handleItemSelection:st,handleUpdateQuantity:rt,onAddToCart:v,onDeleteItem:V}),n.page_info&&w("div",{className:"requisition-list-view__pagination",children:[e(Ot,{pageInfo:n.page_info,totalCount:n.items_count}),(((mt=n.page_info)==null?void 0:mt.total_pages)||0)>1&&e(xt,{totalPages:n.page_info.total_pages,currentPage:((ht=n.page_info)==null?void 0:ht.current_page)||1,onChange:Y,disabled:h||I}),w("div",{className:"requisition-list-view__pagination-picker",children:[e("span",{children:t.show}),e(Wt,{currentPageSize:((_t=n.page_info)==null?void 0:_t.page_size)||dt,onPageSizeChange:G,disabled:h||I})]})]})]})]}),x&&e(zt,{isOpen:x,isLoading:y!==null,title:t.deleteItemsTitle,modalContent:t.deleteItemsMessage,confirmBtnCaption:t.confirmAction,closeBtnCaption:t.cancelAction,handleModalOnClose:()=>{j(!1),Z([])},handleModalOnConfirm:H})]})};export{fe as RequisitionListView,fe as default};
4
4
  //# sourceMappingURL=RequisitionListView.js.map
package/package.json CHANGED
@@ -1 +1 @@
1
- {"name": "@dropins/storefront-requisition-list", "version": "1.0.0-beta6", "@dropins/tools": "~1.6.0-beta3", "license": "SEE LICENSE IN LICENSE.md"}
1
+ {"name": "@dropins/storefront-requisition-list", "version": "1.0.0", "@dropins/tools": "~1.6.0", "license": "SEE LICENSE IN LICENSE.md"}
package/render.js CHANGED
@@ -1,4 +1,4 @@
1
- /*! Copyright 2025 Adobe
1
+ /*! Copyright 2026 Adobe
2
2
  All Rights Reserved. */
3
3
  (function(o,e){try{if(typeof document<"u"){const t=document.createElement("style"),r=e.styleId;for(const i in e.attributes)t.setAttribute(i,e.attributes[i]);t.setAttribute("data-dropin",r),t.appendChild(document.createTextNode(o));const a=document.querySelector('style[data-dropin="sdk"]');if(a)a.after(t);else{const i=document.querySelector('link[rel="stylesheet"], style');i?i.before(t):document.head.append(t)}}}catch(t){console.error("dropin-styles (injectCodeFunction)",t)}})(`.requisition-list-header{margin-bottom:var(--spacing-large)}.requisition-list-header__back{margin-bottom:var(--spacing-medium)}.requisition-list-header__back-link{display:inline-block;color:var(--color-neutral-800);font-size:var(--type-body-1-font-size);font-weight:var(--type-body-1-font-weight);line-height:var(--type-body-1-line-height);text-decoration:none!important;cursor:pointer;transition:color .2s ease;position:relative;padding-bottom:1px}.requisition-list-header__back-link *{text-decoration:none!important}.requisition-list-header__back-link:hover{color:var(--color-neutral-600);text-decoration:none!important}.requisition-list-header__back-link:hover:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background-color:var(--color-neutral-800)}.requisition-list-header__back-arrow{margin-right:var(--spacing-xsmall);text-decoration:none!important}.requisition-list-header__main{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-medium);flex-wrap:wrap}.requisition-list-header__title-section{flex:1;min-width:0}.requisition-list-header__title{margin:0;padding:0;font:var(--type-headline-1-font);letter-spacing:var(--type-headline-1-letter-spacing);color:var(--color-neutral-900)}.requisition-list-header__description{margin:var(--spacing-xsmall) 0 0;padding:0;font-size:var(--type-body-1-font-size);font-weight:var(--type-body-1-font-weight);line-height:var(--type-body-1-line-height);color:var(--color-neutral-700)}.requisition-list-header__actions{display:flex;gap:var(--spacing-medium);flex-wrap:wrap;align-items:center}.requisition-list-header__action-link{color:var(--color-neutral-800);font-size:var(--type-body-2-font-size);font-style:normal;font-weight:var(--type-body-2-font-weight);line-height:var(--type-body-2-line-height);letter-spacing:var(--type-body-2-letter-spacing);text-decoration:underline;cursor:pointer;transition:color .2s ease}.requisition-list-header__action-link:hover{color:var(--color-neutral-600)}@media (max-width: 768px){.requisition-list-header__main{flex-direction:column;align-items:stretch}.requisition-list-header__actions{justify-content:flex-start}}@supports (height: 100dvh){.requisition-list-modal .dropin-modal{height:100dvh}}.dropin-modal__body--medium>.dropin-modal__header-title,.dropin-modal__body--full>.dropin-modal__header-title,.requisition-list-modal .dropin-modal__content{align-items:center;margin:0}.requisition-list-modal .dropin-modal__header-title-content h3{font:var(--type-headline-1-font);letter-spacing:var(--type-headline-1-letter-spacing);margin:0;padding:0}.requisition-list-modal .requisition-list-modal__spinner{align-items:center;background-color:var(--color-neutral-200);display:flex;height:100%;left:0;justify-content:center;opacity:var(--color-opacity-24);position:absolute;top:0;width:100%;z-index:1}.requisition-list-modal p{margin:var(--spacing-small) 0}.requisition-list-modal .requisition-list-modal__buttons{align-items:center;display:flex;gap:0 var(--spacing-small);justify-content:right}.requisition-list-modal--overlay{margin:auto;max-width:375px;padding:var(--spacing-small);position:relative;width:100%}@media (min-width: 768px){.requisition-list-modal--overlay{margin:auto;max-width:768px;padding:var(--spacing-xxbig);position:relative;width:100%}.requisition-list-modal p{color:var(--color-neutral-800);font:var(--type-body-2-strong-font);letter-spacing:var(--type-body-2-strong-letter-spacing);margin-bottom:var(--spacing-medium)}}
4
4
  .requisition-list-form{background-color:var(--color-neutral-50);box-sizing:border-box}.requisition-list-form__title{color:var(--color-neutral-800);font:var(--type-headline-2-strong-font);letter-spacing:var(--type-headline-2-strong-letter-spacing);margin-bottom:var(--spacing-medium)}.requisition-list-form__notification{margin-bottom:var(--spacing-medium)}.requisition-list-form__form{display:grid;gap:var(--spacing-medium);grid-template-columns:1fr}.requisition-list-form__actions{align-items:center;display:flex;gap:0 var(--grid-2-gutters);justify-content:flex-end}.requisition-list-form_progress-spinner{float:right}