1const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-BpLLe65f.js","assets/index-Cb_-3jXA.css"])))=>i.map(i=>d[i]); 2import{r as p,j as t,u as K,P as V,n as G,c as h,O,l as F,T as Kt,U as $t,V as oe,W as et,Y as Ft,X as Ut,f as Vt,C as De,t as kt,_ as Yt,Z as Ht,b as zt,$ as k,M as Ba,R as Da,a0 as xt,a1 as wa,a2 as Ma,a3 as Ga,a4 as Ka,a5 as Qt,h as re,a6 as we,a7 as tt,a8 as at,a9 as pe,aa as Ee,ab as Wt,ac as $a,ad as Fa,ae as qt,af as Xt,ag as Lt,ah as Me,ai as It,aj as I,ak as Ua,al as Va,am as Ya,an as Ha,ao as za,ap as Qa,aq as Wa,ar as qa,as as Xa,at as Za,au as es,av as le,aw as Nt,ax as ts,ay as Ot,az as Xe,aA as as,aB as ss,aC as ns,aD as Ze,aE as de,aF as Jt,aG as rs,aH as os,aI as cs,aJ as is,aK as ls,aL as ds,aM as ps,aN as Rt,aO as us,aP as gs,aQ as ms,aR as jt,aS as vt,aT as bs,aU as fs,aV as Bt,aW as Ps,aX as Dt,aY as wt,aZ as hs,a_ as Be,a$ as Es,b0 as Ts,H as As,b1 as _s,K as Ss,Q as ys,b2 as Cs,b3 as ks,G as xs,b4 as Ls}from"./index-BpLLe65f.js";import{g as Is}from"./_config-6u8F9oqz.js";import{V as Ns,P as Os,R as Js,M as Rs}from"./RcTab-CuDngB7U.js";import{P as Q}from"./types-DPEXXZeI.js";function Zt(s,r=null){const c=p.lazy(s);return S=>t.jsx(p.Suspense,{fallback:r,children:t.jsx(c,{...S})})}const js="_nM-J5",$={"card-button-container":"_tSp0s","remove-button":"_7EIUf",hide:js,"hide-option-button":"_-eHiF","text-badge":"_Z4v6f","min-h-12":"_SxSJg","flex-1":"_9BevR","w-8":"_lNnex","caret-button":"_S5jOn","caret-position":"_GHAjf","package-job-button-container":"_IMcaM"},ea=({id:s,isPackageJob:r,onGetParts:c})=>t.jsx(F,{id:`go-to-pdp-${s}`,className:h(`w-fit relative mr-2 ${r?"self-center":""}`,$["caret-button"]),onClick:()=>c(),children:t.jsx(G,{name:"caret",size:"16",className:h("absolute rotate-min-90",$["caret-position"])})}),vs=({id:s,isSelected:r,onManagePackageJob:c,onGetParts:l,pkgJobActionMode:S})=>{const{t:_}=K(),E=[{id:Kt,label:_(oe.EDIT),iconName:"edit",size:"14px"},{id:$t,label:_(oe.DELETE),iconName:"trash",size:"14px"}];return r&&!S?t.jsx(ea,{onGetParts:l,id:s,isPackageJob:!0}):t.jsx("div",{className:h("pointer grid gap-2 items-center",$["package-job-button-container"]),children:!S&&E.map(d=>t.jsx(et,{name:"package_job_access",mode:"ROLE",children:t.jsxs(F,{className:"text-sm flex font-normal mr-2",id:`button-${d.id}`,variant:"text",onClick:c,children:[t.jsx(G,{name:d.iconName,size:d.size,className:"self-center mr-1"}),d.label]})},d.id))})},Bs=({tabId:s,id:r,hasDrillDownFlag:c,name:l,kits:S,isSelected:_,onClick:E,onRemove:d,onManagePackageJob:y,pkgJobActionMode:T,onGetParts:x})=>{const{t:m}=K(V.CATALOG_LOOKUP),u=r.toString(),b=s===O.PACKAGE_JOBS,j=d?{onClick:d}:{};return t.jsxs("div",{className:h($["card-button-container"],b&&"flex",_&&"bg-gray"),children:[t.jsxs("div",{className:h("flex w-full items-center justify-between",!_&&"pointer"),...!_&&E?{onClick:E,role:"button"}:{},children:[!c&&t.jsx("button",{"data-testid":`catalog-remove-${u}`,className:h($["remove-button"],!_&&$.hide),..._&&{...j},type:"button","aria-label":"Remove",children:t.jsx(G,{name:"trash",size:"20"})}),t.jsxs("span",{id:u,"data-testid":`catalog-button-${u}`,className:h("border-none flex flex-wrap justify-between items-center w-full text-left",$["min-h-12"]),children:[c&&t.jsx("div",{className:h("flex justify-center items-center",$["w-8"]),children:t.jsx(G,{name:"chevron-circle",className:"mr-2",size:"16",color:"var(--color-med-green)"})}),t.jsxs("span",{className:$["flex-1"],children:[l,S&&t.jsx("span",{className:h("text-xs ml-1 inline-block",$["text-badge"]),children:m("save")})]})]},u),!b&&t.jsx("div",{className:h(!_&&$["hide-option-button"]),children:t.jsx(ea,{onGetParts:x,id:u})})]}),b&&t.jsx(vs,{isSelected:_,id:u,onManagePackageJob:y,pkgJobActionMode:T,onGetParts:x})]})},Mt={"selected-category":"_Z03X0","deleted-category-container":"_hdJ29"},Ds=Zt(()=>Yt(()=>import("./index-BpLLe65f.js").then(s=>s.cY),__vite__mapDeps([0,1]))),ws=({id:s,catalogData:r,width:c,category:l,selectedItem:S,itemToDelete:_,onClick:E,onClickCategory:d,onManagePackageJob:y,pkgJobActionMode:T,errorCode:x,refetch:m,onGetParts:u})=>{const{t:b}=K(V.CATALOG_LOOKUP),j={lg:12,md:12,sm:12},w=p.useMemo(()=>[{id:Ft,label:b(oe.YES)},{id:Ut,label:b(oe.NO)}],[b]),J=T?S.filter(A=>A.isFromPkgJobProcess):S,Y=A=>({id:A.partTypeId??A.packageJobIdAsString,name:A.description??A.packageJobName}),W=A=>J?.some(({partTypeId:R,packageJobIdAsString:N})=>A.partTypeId&&R===A.partTypeId||A.packageJobIdAsString&&N===A.packageJobIdAsString),q=A=>_?.some(({packageJobIdAsString:R})=>A.packageJobIdAsString&&R===A.packageJobIdAsString),X=(A,R,N)=>{A.preventDefault(),typeof d=="function"&&d(R,N)},B=(A,R)=>t.jsxs("div",{className:h("flex flex-wrap justify-between items-center pl-5 w-full bg-error-lite mt-half",Mt["deleted-category-container"]),children:[t.jsx("span",{tabIndex:0,children:b("wantToDelete")}),t.jsx("div",{className:"flex gap-2 mr-4",children:A.map(N=>t.jsx(F,{variant:"text",id:`button-${N.id}`,className:"w-fit",onClick:v=>y(v,R),children:N.label},`button-${N.id}`))})]});return t.jsx(t.Fragment,{children:x?t.jsx(Ds,{title:b("retryActionPanel.unavailableMessage"),description:b("retryActionPanel.partsUnavailableMessage"),refetch:m}):t.jsxs(Vt,{children:[l&&l.length>0&&t.jsx(De,{...j,className:h(Mt["selected-category"],"py-.5 px-2"),children:t.jsxs("ul",{"data-testid":"selcted-category",className:"list-none flex flex-wrap gap-2",children:[t.jsx("li",{children:t.jsx(kt,{className:"green-link-text text-sm",id:`${s}-category`,to:"#",onClick:A=>X(A,s),children:b("categories")})}),l.map(A=>t.jsx("li",{children:t.jsx(kt,{className:"green-link-text text-sm",id:`${A.id}-category-selected`,to:"#",onClick:R=>X(R,s,A),children:A.name})},`${A.id}-list`))]})}),r?.map((A,R)=>t.jsx(De,{...c,children:A.map(N=>{const{id:v,name:L}=Y(N),U=q(N),M=E?{onClick:()=>E(N,s),onRemove:()=>E(N,s)}:{};return U?B(w,N):t.jsx(Bs,{id:String(v),hasDrillDownFlag:N.hasDrillDownFlag,name:L,kits:N.kits,tabId:s,isSelected:W(N),onManagePackageJob:Z=>y(Z,N),...M,pkgJobActionMode:T,onGetParts:u},String(v))})},`${s}-${R}`))]})})},Ms=["TRR0"],Gs="_kE1MP",Ks="_LXcHC",$s="_3eTBn",C={"border-bottom-1":"_o36r7","button-container":"_Zi-Xv","side-panel-container":"_kQBLs",open:Gs,"catalog-mobile-container":"_LJcmM","title-bar":"_BwDnw","title-bar-secondary":"_fqxUK","title-bar-inverse":"_M20Tf","remove-button":"_eN6Zr","button-wrapper":"_F84TU","clear-all":"_Iij5O",cancel:Ks,"gift-icon":"_9r4--","catalog-section-body":"_4fsxE","body-container":"_enc
2Hh","mobile-body-container":"_Gkg3Y","brand-list-item-container":"_B0xSm",item:$s,"mobile-action-bar":"_aLuxM"},Fs=({context:s})=>{const{selectedPart:r,isMobile:c,onSectionBoxAction:l,pkgJobActionMode:S}=s,{t:_}=K(V.CATALOG_LOOKUP),E=_("clearAll");return t.jsxs(t.Fragment,{children:[t.jsx("ul",{...c&&{className:"p-4"},children:r.map(d=>{const y=d.partTypeId??d.packageJobIdAsString,T=d.description??d.packageJobName,x=!!d.packageJobId;return t.jsxs("li",{id:y,"data-testid":c?`selected-${y}-mobile`:`selected-${y}`,className:h("list-none border-solid border-light-gray p-1",C["border-bottom-1"]),children:[t.jsx("button",{"data-testid":c?`remove-${y}-mobile`:`remove-${y}`,onClick:()=>{l(k.REMOVE_ITEM,d),c&&r.length===1&&l(k.SIDE_PANEL_ACTION,!1)},className:h(C["remove-button"],"mr-2"),children:t.jsx(G,{name:"trash",size:"16"})}),t.jsx("span",{children:T}),x&&t.jsx("span",{className:h("absolute right-0",C["gift-icon"]),children:t.jsx(G,{name:"gift",color:"var(--color-med-green)"})})]},y)})}),t.jsxs("div",{className:h("flex mb-4 flex-wrap",c?"p-4":"mt-6",C["button-wrapper"]),children:[t.jsxs(F,{onClick:()=>s.onGetParts(),id:S?"packageJobName":"getParts",className:h(C["button-container"],"flex flex-row justify-center items-center gap-1 font-bold w-fit"),children:[_(S?"packageJobSection.button":"partTypeSelectedSection.button"),t.jsx(G,{name:"chevron"})]}),t.jsxs(F,{variant:"text",id:c?"clear-all-selected-mobile":"clear-all-selected",onClick:()=>{c&&l(k.SIDE_PANEL_ACTION,!1),l(k.CLEAR_DATA)},className:h("w-fit flex items-center",C["clear-all"]),disableHoverEffect:!0,children:[t.jsx(G,{name:"trash",size:"16",color:"var(--color-danger)",className:"mr-2"}),E]})]})]})},Us=({context:s})=>{const{t:r}=K(V.CATALOG_LOOKUP),{isMobile:c,onSectionBoxAction:l,selectedPart:S,openBrandList:_,checkedBrands:E,packageJobName:d,pkgJobActionMode:y}=s,T=r(oe.CANCEL),x=S.filter(u=>u.isFromPkgJobProcess),m=u=>{const b=u.partTypeId,j=u.description??u.partTypeName,w=u?.brandList&&u.brandList.length>0||u.selectedBrands&&u.selectedBrands.length>0;return t.jsxs(Da.Fragment,{children:[t.jsx("li",{id:`package-job-item-${b}`,"data-testid":c?"selected-item-mobile":"selected-item",className:h("list-none border-solid border-light-gray p-1",C["border-bottom-1"]),children:t.jsxs("div",{className:"flex justify-between items-start",children:[t.jsx("button",{id:b,"data-testid":c?"remove-item-mobile":"remove-item",onClick:()=>l(k.REMOVE_ITEM,u),className:h(C["remove-button"],"mr-2"),children:t.jsx(G,{name:"trash",size:"16"})}),t.jsx("span",{className:C.item,children:j}),w&&t.jsx(F,{id:"select-brand",variant:"text",className:"w-fit text-sm",onClick:()=>l(k.TOGGLE_BRAND_LIST,b),children:_.includes(b)?r("buttons.hideBrands"):r("buttons.selectBrands")})]})}),_.includes(b)&&u.brandList&&u.brandList.length>0&&t.jsxs("ul",{className:"mt-4 mb-4",children:[t.jsx("li",{className:C["brand-list-item-container"],children:t.jsx(xt,{id:`${b}-selectAll`,name:`${b}-selectAll`,label:r("packageJobSection.checkbox"),onChange:()=>l(k.SELECT_ALL_BRAND,b),checked:l(k.ALL_CHECKED_BRAND,b)})}),u.brandList.filter((J,Y,W)=>Y===W.findIndex(q=>q.brandName===J.brandName)&&!Ms.includes(J.brandCode)).map(J=>t.jsx("li",{className:C["brand-list-item-container"],children:t.jsx(xt,{id:`${J.brandCode}-${b}`,name:`${J.brandCode}-${b}`,label:J.brandName,checked:!!E[b]?.[J.brandCode],onChange:()=>l(k.BRAND_CHECK,{itemId:b,brandCode:J.brandCode,brandName:J.brandName})})},`${J.brandCode}-${b}`))]})]},b)};return t.jsxs("div",{className:h(C["body-container"],c&&C["mobile-body-container"]),children:[x.length>0&&t.jsx("ul",{...c?{className:"pt-4 pr-4 pl-4"}:{className:"pb-4"},children:x.map(u=>m(u))}),t.jsxs("div",{className:c?"pt-4 px-4":"",children:[x.length===0&&t.jsx("p",{className:"mb-4",children:r(y?"packageJobSection.emptyPlaceholder":"partTypeSelectedSection.emptyPlaceholder")}),t.jsx(Ba,{type:"text",label:r("packageJobSection.input.label"),id:"packageJobName",isRequired:!0,placeholder:r("packageJobSection.input.placeholder"),onChange:u=>l(k.UPDATE_NAME,u.target.value),value:d})]}),t.jsxs("div",{className:h("flex mb-4",c?"p-4":"mt-6",C["button-wrapper"]),children:[t.jsxs(F,{onClick:()=>l(k.SAVE_PACKAGE_JOB),id:y?"saveJob":"getParts",className:h(C["button-container"],"flex flex-row justify-center items-center gap-1 font-bold w-fit"),children:[r(y?"packageJobSection.button":"partTypeSelectedSection.button"),t.jsx(G,{name:"chevron"})]}),t.jsx(F,{id:c?"cancel-mobile":"cancel",onClick:()=>{c&&l(k.SIDE_PANEL_ACTION,!1),l(k.CLEAR_DATA)},className:h("w-fit flex items-center",C.cancel),variant:"text",children:T})]})]})},ta=({context:s})=>{const{t:r}=K(V.CATALOG_LOOKUP),{pkgJobActionMode:c}=s;return c?t.jsx(Us,{context:s}):s.selectedPart?.length>0?t.jsx(Fs,{context:s}):t.jsx("p",{children:r(c?"packageJobSection.emptyPlaceholder":"partTypeSelectedSection.emptyPlaceholder")})},Vs=({context:s})=>{const{t:r}=K(V.CATALOG_LOOKUP),c=l=>{l.target===l.currentTarget&&s.onSectionBoxAction(k.SIDE_PANEL_ACTION,!1)};return p.useEffect(()=>{if(s.isOpenSidePanel){const l=document.body.style.overflow;return document.body.style.overflow="hidden",()=>{document.body.style.overflow=l||""}}},[s.isOpenSidePanel]),s.isHydrated?t.jsx("section",{className:h("fixed top-0 left-0 w-full h-full z-50 bg-overlay none sm-md:block",C["side-panel-container"],s.isOpenSidePanel&&C.open),onClick:c,children:t.jsxs("div",{className:h("bg-white absolute",C["catalog-mobile-container"],s.isOpenSidePanel&&C.open),children:[t.jsxs("header",{className:"flex overflow-hidden bg-white",children:[t.jsx("h2",{className:h(C["title-bar"],"relative block w-auto z-1 flex-fill text-xl font-semibold my-none"),id:"modal-title",children:r("selectedPart",{count:s.selectedPart?.length})}),t.jsx("div",{className:h(C["title-bar"],C["title-bar-secondary"],C["title-bar-inverse"],"main-font"),children:t.jsx("button",{"data-testid":"cross-button","aria-label":"Close side panel",className:"bg-none border-none block",onClick:()=>s.onSectionBoxAction(k.SIDE_PANEL_ACTION,!1),children:t.jsx(G,{name:"cross",size:"24"})})})]}),t.jsx(ta,{context:{...s,isMobile:!0}})]})}):null},Ys=({context:s})=>{const{selectedPart:r,pkgJobActionMode:c,onSectionBoxAction:l}=s,{t:S}=K(V.CATALOG_LOOKUP),_=!!r&&r.length>0,E=r?.filter(T=>T.isFromPkgJobProcess);if(!_&&!c)return null;const d=h(C["mobile-action-bar"],"fixed bottom-0 left-0 w-full bg-gray p-4 flex gap-2 justify-between items-center shadow-top z-40");return t.jsxs("div",{className:d,children:[t.jsx(F,{id:"view-selected-part",variant:"secondary-reverse",className:"h-35 w-fit text-xs",onClick:()=>s.onSectionBoxAction(k.SIDE_PANEL_ACTION,!0),children:S("viewSelectedPart",{count:c?E.length:r?.length})}),t.jsxs(F,{id:c?"packageJobName":"getParts",className:"h-35 w-fit flex flex-row justify-center items-center text-xs",onClick:()=>c?l(k.SAVE_PACKAGE_JOB):s.onGetParts(),children:[S(c?"packageJobSection.button":"partTypeSelectedSection.button"),t.jsx(G,{name:"chevron"})]})]})},Hs=({pkgJobActionMode:s,selectedPart:r,onSectionBoxAction:c,openBrandList:l,checkedBrands:S,packageJobName:_,isOpenSidePanel:E,onGetParts:d,isHydrated:y})=>{const{t:T}=K(V.CATALOG_LOOKUP),{isSmMd:x}=Ht(),m={pkgJobActionMode:s,selectedPart:r,onSectionBoxAction:c,navigate:()=>{},isMobile:x,openBrandList:l,checkedBrands:S,packageJobName:_,isOpenSidePanel:E,onGetParts:d,isHydrated:y};return y?t.jsx(t.Fragment,{children:x?t.jsxs(t.Fragment,{children:[t.jsx(Vs,{context:m}),t.jsx(Ys,{context:m})]}):t.jsx(zt,{id:"selected-part-box",title:T(`${s||"part"}-section-title`),className:h("mb-6 sm-md:none",s?C["catalog-section-body"]:""),children:t.jsx(ta,{context:m})})}):null},zs=/^[\w\-,:'".?+#~!@#$&*() /*]*$/,Qs=(s,r)=>{const c=(s??"").trim(),l=(r??"").trim();return c?l?l.toUpperCase().startsWith(c.toUpperCase())?l:`${c} ${l}`:c:l},Ws=s=>Array.isArray(s.facets)?s.facets.map(r=>({brandCode:r.brandCode,brandName:Qs(r.manufacturerName,r.brandName)})).sort((r,c)=>r.brandName.localeCompare(c.brandName,void 0,{sensitivity:"base"})||r.brandCode.localeCompare(c.brandCode)):[],qs=async({partTypeId:s,marketId:r,platform:c,resultOffset:l=0,pageSize:S=0,storeNumber:_=0})=>{try{const E=wa({endpoint:Ka,body:{features:[{type:Ga}],resultOffset:l,pageSize:S,marketId:r,storeNumber:_,sorts:[],filters:[{type:"PART_TYPE",partTypeId:s}],platform:c,sessionId:Ma,requestContext:{}}}),d=await Qt(E);return Ws(d)}catch(E){throw E}},Xs=(s,r)=>{if(s.length>0&&r.length>0){const c=s[s.length-1];return r.find(l=>l.partTypeId===c)}},Zs="BRANDS",en=(s,r,c,l)=>{const{t:S}=K(),{showToast:_}=at(),E=p.useRef(s.length),d=p.useRef(l.length),[y,T]=p.useState({key:"",brandList:[]}),x=s.filter(Y=>Y.isFromPkgJobDetails),m=Xs(l,x),u=s[s.length-1]?.isFromPkgJobDetails?"":s[s.length-1]?.partTypeId,b=u||re(m?.partTypeId),{data:j,refetch:w,error:J}=we([Zs,b],()=>qs({partTypeId:b,marketId:r,platform:c}),{enabled:!1});return p.useEffect(()=>{J&&_({id:tt,message:S("catalog-lookup:validation.packageJobsPartsError")})},[J,_,S]),p.useEffect(()=>{s.length>E.current&&!s[s.length-1].isFromPkgJobDetails&&s[s.length-1].isFromPkgJobProcess&&w(),E.current=s.length},[s]),p.useEffect(()=>{m&&l.length>d.current&&w(),d.current=l.length},[m]),p.useEffect(()=>{j&&j.length>0&&T({key:b,brandList:j})},[j,b]),y},Te="/legacy/package-jobs",Ae="/v2",tn=async({shopId:s})=>{try{const{apiHosts:{packageJobEndpoint:r=Te}}=pe(),c=Ee({endpoint:r,params:{shopId:s},version:Ae});return await Wt(c)}catch(r){throw r}},an=async s=>{const{id:r,...c}=s;try{const{apiHosts:{packageJobEndpoint:l=Te}}=pe(),S=Ee({endpoint:`${l}/${r}`,params:c,version:Ae});return await Wt(S)}catch(l){throw l}},sn=async s=>{try{const{apiHosts:{packageJobEndpoint:r=Te}}=pe(),c=Ee({endpoint:r,body:s,version:Ae});return await Qt(c)}catch(r){throw r}},nn=async(s,r)=>{try{const{apiHosts:{packageJobEndpoint:c=Te}}=pe(),l=Ee({endpoint:`${c}/${s}`,body:r,version:Ae});return await $a(l)}catch(c){throw c}},rn=async s=>{try{const{apiHosts:{packageJobEndpoint:r=Te}}=pe(),c=Ee({endpoint:`${r}/${s}`,version:Ae});return await Fa(c)}catch(r){throw r}},on=(s,r,c,l,S,_)=>
2{const E="PACKAGE_JOB_LIST",d="PACKAGE_JOB_DETAILS",{langCode:y}=qt(),{t:T}=K("common"),{setter:x,state:m}=Xt(),{setSelectedPartTypes:u}=x,{selectedPartTypes:b}=m,{showToast:j}=at(),[w,J]=p.useState(""),Y=()=>{if(b){const v=b.filter(L=>!L.isFromPkgJobProcess);u(v)}},{data:W,error:q,refetch:X}=we([E,r,s,y],()=>tn({shopId:s}),{enabled:r===O.PACKAGE_JOBS,staleTime:Lt,meta:{spinner:!0}}),{data:B,error:A}=we([d,w],()=>an({id:w,shopId:s}),{enabled:!!w,staleTime:Lt,gcTime:0,meta:{spinner:!0}});p.useEffect(()=>{A&&Me(A?.status)&&j({id:tt,message:T("catalog-lookup:validation.packageJobsPartsError")})},[A,j,T]);const R=It({mutationFn:v=>w?nn(w,v):sn(v),meta:{spinner:!0},onSuccess:()=>{X(),_(!1),l({}),J(""),c(Q.None),S({name:"",partTypeList:[]}),setTimeout(()=>{Y()},300)},onError:v=>{Me(v?.status)&&j({id:Ua,message:T("catalog-lookup:validation.packageJobUpsertError")})}}),N=It({mutationFn:v=>rn(v),meta:{spinner:!0},onSuccess:()=>{X()},onError:()=>{j({id:"PACKAGE_JOB_DELETE_ERROR",message:T("validation.processingRequestError")})}});return p.useEffect(()=>{if(B){const U=[...(b||[]).filter(M=>!M.isFromPkgJobProcess),...B.partTypes.map(M=>{const Z=M.partTypeName||`Part ${M.partTypeId}`;return{partTypeId:M.partTypeId,platformId:M.platformId,parentPartTypeId:M.parentPartTypeId,selectedBrands:M.brands,description:Z,partTypeName:Z,isFromPkgJobDetails:!0,isFromPkgJobProcess:!0,leaf:I(M.leaf,!1)}})];u(U)}},[B]),{packageJobListData:q?void 0:W?.data||W,packageJobListError:q,setPackageJobId:J,removePackageJob:N,upsertPackageJob:R,refetchPackageJobList:X}},cn="_ycuBW",Pe={spinner:cn,"add-package-job-button":"_vGRcD","warning-modal":"_CLt40","modal-container":"_udtyg"},ln=Zt(()=>Yt(()=>import("./index-BpLLe65f.js").then(s=>s.cY),__vite__mapDeps([0,1]))),Gt="PART_TYPES",he=5,dn=({digitalPageList:s})=>{const{handleGetParts:r}=Va(),{startCatalogLookup:c}=Ya(),{isLoading:l}=Ha(),{state:S,setter:_}=Xt(),{selectedVehicle:E,selectedPartTypes:d}=S,[y]=za(),{setSelectedPartTypes:T,clearSelectedPartTypes:x}=_,{t:m}=K(V.CATALOG_LOOKUP),{langCode:u}=qt(),b=Qa(s),j=Wa({elements:I(b,[]),type:"path",value:qa.MARKETING_PROMOTIONS}),{state:{homeStore:w,user:J}}=Xa(),{resetActivityTracking:Y,setVehicleAddedFrom:W}=Za(),{isSm:q,isMdOnly:X}=Ht(),{showToast:B,clearToast:A}=at(),[R,N]=p.useState(!1),v=es(Nt,le),[L,U]=p.useState(Q.None),[M,Z]=p.useState({openModal:!1,nextTab:""}),[D,Ge]=p.useState(O.MOST_POPULAR);p.useEffect(()=>{y.get("edit")==="1"||x()},[y]),p.useEffect(()=>{const e=ts(le?.getData(Ot)),a=I(d,[]),n=I(Array.isArray(e?.partTypes)?e.partTypes:null,[]),o=I(Array.isArray(e?.originalSelections)?e.originalSelections:null,[]),i=ne=>{const be=new Set;return ne.filter(({packageJobId:fe})=>{if(!fe)return!0;const Ct=!be.has(fe);return Ct&&be.add(fe),Ct})},g=a.some(ne=>ne.kits);let P=a;a.length>1&&g&&(P=a.filter(ne=>!ne.kits),T(P));const f=i(n),ee=i(P).length>he,z=f.length>he;if(!ee&&!z)return;const ve=(ee?P:n).slice(0,he),qe=o.slice(0,he);T(ve),e&&le&&le.setData(Ot,{...e,partTypes:ve,...o.length>0?{originalSelections:qe}:{}}),A(Xe),B({id:Xe,message:m("validation.limitError",{totParts:String(he)})})},[]);const[_e,st]=p.useState({}),[aa,sa]=p.useState([]),[Se,te]=p.useState({}),[nt,Ke]=p.useState([]),[na,rt]=p.useState(!1),[ra,ot]=p.useState(!1),[oa,ct]=p.useState({[O.MOST_POPULAR]:[],[O.ALL_PARTS]:[],[O.PACKAGE_JOBS]:[]}),[it,ae]=p.useState({name:"",partTypeList:[]}),[ue,ye]=p.useState({}),Ce={KEEP_ITEM:!0,REMOVE_ITEM:!1},ge={LIMIT_REACHED:"LIMIT_REACHED",KITS_CONFLICT:"KITS_CONFLICT",NONE:null},ce=re(J?.currentShop?.id?.toString()),ca=I(w?.storeId,0),ke=Se[D],$e=ke?.[0]?.parentId,ia=ke?.length>0?ke[ke.length-1]?.id:"root",la=p.useMemo(()=>Se[D]?.reduce((e,a)=>({partTypeId:a.id,parent:e}),$e?{partTypeId:$e}:void 0),[Se,D,$e]),{partTypePlatform:{mostPopular:da,allParts:Fe,marketId:pa}}=pe(),{data:H,error:Ue,refetch:lt,isLoading:dt,isRefetching:ua,isPending:pt,error:xe}=we([Gt,D,ia,L,u,re(E?.vehicleId?.toString())],()=>{const e=E?.vehicleId!==void 0&&D!==O.PACKAGE_JOBS;return ss({platform:D===O.MOST_POPULAR?da:Fe,partType:la,...e&&{vehicle:{baseVehicleId:E.vehicleId}},language:Jt[u]})},{enabled:(D!==O.PACKAGE_JOBS||!!L)&&as()});p.useEffect(()=>{xe&&Me(xe?.status)&&!Je.current&&(Je.current=!0,B({id:tt,message:m("catalog-lookup:validation.packageJobsPartsError")})),!xe&&Je.current&&(Je.current=!1)},[xe]);const{packageJobListData:se,packageJobListError:Ve,setPackageJobId:Le,upsertPackageJob:ga,removePackageJob:ma,refetchPackageJobList:ba}=on(ce,D,U,te,ae,rt),ut=e=>e?rs(e?.status)||Me(e?.status):!1,Ye=p.useCallback((e,a)=>{st(n=>({...n,[a]:e}))},[]);p.useEffect(()=>{if(Ue){const e=ut(Ue);Ye(e,"catalogPartTypes")}else if(se||Ve){const e=ut(Ve);Ye(e,"packageJobList")}else Re()},[Ue,Ve,se,H,dt,pt,Ye]);const Ie=en(I(d,[]),pa,Fe,nt),gt=ns(),Ne=p.useRef(!1),He=p.useRef(void 0),Oe=p.useRef(void 0),Je=p.useRef(!1),ze=p.useRef(!0),Qe=p.useCallback(e=>{y.get("edit")==="1"?d&&T(d.filter(({isFromPkgJobProcess:n})=>!n)):x(),U(Q.None),te({}),Ge(e),Le(""),ae({name:"",partTypeList:[]}),Re()},[x,y,d,Le,T]),Re=()=>{st({})};p.useEffect(()=>{(async()=>{const{vehicleId:a=null}=E??{};if(ze.current&&a){He.current=a,ze.current=!1;return}if(ze.current=!1,He.current!==a&&(He.current=I(a,0),te({}),L&&Qe(O.PACKAGE_JOBS),!!a&&!Ne.current)){Ne.current=!0;try{const n=I(d,[]).filter(g=>!g.isFromPkgJobProcess&&!g.packageJobId);if(!n||n.length===0){Ne.current=!1,v&&E?.vehicleId&&await je();return}const i=(await Promise.all(n.map(async g=>{try{const P=await gt.fetchQuery({queryKey:["VALIDATE_PART",g.partTypeId,a,Fe,u],queryFn:()=>cs({platform:re(g.platformId),partType:{partTypeId:re(g.partTypeId)},language:Jt[u],vehicle:{baseVehicleId:a}}),staleTime:os}),f=!is(P);return{partTypeId:g.partTypeId,isValid:f}}catch{return{partTypeId:g.partTypeId,isValid:!1}}}))).filter(g=>!g.isValid).map(g=>g.partTypeId);if(i.length>0){const g=I(d,[]).filter(f=>f.isFromPkgJobProcess||f.packageJobId||!i.includes(f.partTypeId));T(g),n?.some(f=>f?.isFromCatalog)&&B({id:"PARTS_FILTERED_BY_VEHICLE",message:m("validation.filterPartByVehicle")})}v&&E?.vehicleId&&await je()}catch{B({messageType:"error",id:"filter-vehicle-by-part-error",message:m("common:genericErrorMessage")})}finally{Ne.current=!1}}})()},[E?.vehicleId]),p.useEffect(()=>{if(Oe.current===void 0){Oe.current=ce;return}Oe.current!==ce&&(Oe.current=ce,L?Qe(O.PACKAGE_JOBS):(y.get("edit")==="1"?d&&T(d.filter(({isFromPkgJobProcess:a})=>!a)):x(),te({})),gt.invalidateQueries({queryKey:[Gt]}))},[ce]);const fa=(e,a)=>e.some(n=>n===a),mt=p.useCallback((e,a)=>{const n={};return a.forEach(o=>{const i=o.partTypeId;o.brandList&&!e[i]?(n[i]={},o.brandList.forEach(g=>{if(o.selectedBrands){const P=o.selectedBrands,f=g.brandCode;n[i][f]=fa(P,f)}else n[i][g.brandCode]=!0})):o.brandList&&e[i]&&(n[i]=e[i])}),n},[]),We=p.useCallback(e=>e?Object.entries(e).filter(([,a])=>a).map(([a])=>a):[],[]),bt=p.useCallback((e,a)=>e.map(n=>{const o=n.partTypeId,i=n.brandList,g=n.selectedBrands,P=We(a[o]);return{...n,selectedBrands:i?P:g}}),[We]),ft=p.useCallback(e=>e.filter(a=>I(d,[]).some(n=>n.partTypeId===a)),[d]);p.useEffect(()=>{N(!0),Y(),W("Catalog Lookup")},[]),p.useEffect(()=>{if(R){const e=Ze?.getData(`${de}-active-tab`);e&&Ge(e)}},[R]),p.useEffect(()=>{if(Ie.key){const e=I(d,[]).map(a=>Ie.key===a.partTypeId?{...a,brandList:Ie.brandList}:a);T(e)}},[Ie]),p.useEffect(()=>{let e=[];L&&H?e=H.filter(n=>!n.kits&&!n.disabled):!L&&(H||se)&&(e=(H||se?.jobs||[]).filter(n=>
2!n.disabled||n.kits)),e.length>0?ct(a=>({...a,[D]:e})):ct(a=>({...a,[D]:[]}))},[H,D,se,L]),p.useEffect(()=>{ae(e=>({...e,partTypeList:I(d,[])})),ye(e=>mt(e,I(d,[]))),Ke(e=>ft(e))},[d,mt,ft]),p.useEffect(()=>{ae(o=>({...o,partTypeList:bt(o.partTypeList,ue)}));const e=I(d,[]);if(!e.length)return;let a=!1;const n=e.map(o=>{const i=o.partTypeId;if(!i||!o.brandList)return o;const g=ue[i];if(!g)return o;const P=We(g),f=I(o.selectedBrands,[]);return f.length===P.length&&f.every(ee=>P.includes(ee))?o:(a=!0,{...o,selectedBrands:P})});a&&T(n)},[ue,bt]),p.useEffect(()=>{const e=I(d,[]),a=[...Array.isArray(H)?H:[],...se?.jobs||[]];if(e.length===0||a.length===0)return;const n=e.map(o=>{const i=a.find(g=>o.partTypeId&&g.partTypeId===o.partTypeId||o.packageJobIdAsString&&g.packageJobIdAsString===o.packageJobIdAsString);return i&&i.description?{...o,description:i.description}:o});n.some((o,i)=>o.description!==e[i].description)&&T(n)},[H,se,u,T]);const Pt=p.useRef(u);p.useEffect(()=>{Pt.current!==u&&(Ke([]),Pt.current=u)},[u]);const ht=(e,a)=>a.partTypeId?e.partTypeId===a.partTypeId:e.packageJobIdAsString===a.packageJobIdAsString,Pa=(e,a,n)=>e.find(o=>ht(o,a)?n?o.isFromPkgJobProcess:!0:!1),ha=(e,a,n)=>{const o=e.filter(f=>!f.isFromPkgJobProcess),i=e.filter(f=>f.isFromPkgJobProcess),g=e.some(({kits:f})=>!!f);return(n?i.length>=wt:o.length>=Dt)?ge.LIMIT_REACHED:a.kits&&e.length>0||g?ge.KITS_CONFLICT:ge.NONE},Ea=(e,a,n)=>{switch(e){case ge.LIMIT_REACHED:n({id:Xe,message:m("validation.limitError",{totParts:String(a?wt:Dt)})});break;case ge.KITS_CONFLICT:n({id:hs,message:m("validation.kitError")});break}},Ta=(e,a,n)=>e.filter(o=>ht(o,a)?n?o.isFromPkgJobProcess?Ce.REMOVE_ITEM:Ce.KEEP_ITEM:Ce.REMOVE_ITEM:Ce.KEEP_ITEM),Aa=(e,a,n)=>[...e,{...a,isFromPkgJobProcess:!!n,isFromCatalog:!0}],_a=(e,a,n)=>{n(o=>a?{...o,[a]:[...o[a]||[],{id:e.partTypeId,parentId:e.parentPartTypeId,name:e.description}]}:o),window.scrollTo({top:0})},Et=(e,a)=>{if(e.hasDrillDownFlag){_a(e,a,te);return}let n=Be.POPULAR;a===O.MOST_POPULAR?n=Be.POPULAR:a===O.ALL_PARTS?n=Be.ALL:n=Be.PACKAGEJOBS;const o=I(d,[]);if(!Pa(o,e,L)){const P=ha(o,e,L);if(P)return Ea(P,L,B),o;const f=Aa(o,{...e,gaTabOrigin:n},L);return T(f)}const g=Ta(o,e,L);T(g)},Sa=async e=>{Re(),L&&e!==O.PACKAGE_JOBS?Z({openModal:!0,nextTab:e}):(Ge(e),await Ze?.setData(`${de}-active-tab`,e))},ya=(e,a)=>{te(n=>{if(a){const o=n[e].findIndex(({id:i})=>i===a.id);return{...n,[e]:n[e].filter((i,g)=>g<=o)}}else return{...n,[e]:[]}})},Tt=e=>{sa(a=>e(a))},Ca=(e,a)=>{const n=re(a.packageJobIdAsString);e.currentTarget.id===`button-${$t}`?Tt(o=>[...o,{...a}]):e.currentTarget.id===`button-${Ft}`?ma.mutate(n):e.currentTarget.id===`button-${Ut}`?Tt(o=>o.filter(i=>i.packageJobIdAsString!==a.packageJobIdAsString)):e.currentTarget.id===`button-${Kt}`&&(U(Q.Edit),ae(o=>({...o,name:re(a.packageJobName)})),Le(n))},ka=()=>{const{partTypeList:e,name:a}=it,n=(a||"").trim(),o=e.filter(i=>i.isFromPkgJobProcess);o.length===0?B({id:gs,message:m("validation.emptyPackageJob")}):o.some(i=>i.brandList&&(!i.selectedBrands||i.selectedBrands.length===0))?B({id:ms,message:m("validation.emptyBrand")}):n.length>jt?B({id:vt,message:m("validation.maxLength",{max:jt})}):!n||!zs.test(n)?B({id:vt,message:m("validation.invalidCharacters")}):ga.mutate({shopId:parseInt(ce),packageJobName:n,storeNumber:ca,marketId:bs(fs),partTypes:o.map(i=>{const{platformId:g=""}=I(i,{leaf:!1}),[,P=g]=g.split("_");return{platformId:P,parentPartTypeId:i.parentPartTypeId,partTypeId:i.partTypeId,brands:i.selectedBrands}})})},xa=e=>{e.target.id===Es.YES&&Qe(M.nextTab),Z({openModal:!1,nextTab:""})},La=()=>{ae({name:"",partTypeList:[]}),Le(""),L?(U(Q.None),te({}),T(I(d,[]).filter(e=>!e.isFromPkgJobProcess))):x()},At=e=>{const a=ue[e];return a&&Object.values(a).every(Boolean)},Ia=e=>{const a=!At(e);ye(n=>({...n,[e]:Object.fromEntries(Object.keys(n[e]||{}).map(o=>[o,a]))}))},Na=(e,a)=>{if(e===k.CLEAR_DATA)La();else if(e===k.SAVE_PACKAGE_JOB)ka();else if(e===k.UPDATE_NAME)ae(n=>({...n,name:a}));else if(e===k.REMOVE_ITEM)Et(a,D);else if(e===k.BRAND_CHECK){const{itemId:n,brandCode:o,brandName:i}=a,g=I(d,[]).find(P=>P.partTypeId===n);if(g?.brandList){const P=g.brandList.filter(f=>f.brandName===i).map(f=>f.brandCode);ye(f=>{const ee=!f[n]?.[o],z={...f[n]};return P.forEach(me=>{z[me]=ee}),{...f,[n]:z}})}else ye(P=>({...P,[n]:{...P[n],[o]:!P[n][o]}}))}else if(e===k.TOGGLE_BRAND_LIST){const n=a;Ke(o=>o.includes(n)?o.filter(i=>i!==n):[...o,n])}else if(e===k.SELECT_ALL_BRAND)Ia(a);else{if(e===k.ALL_CHECKED_BRAND)return At(a);e===k.SIDE_PANEL_ACTION&&rt(a)}},_t=e=>{le&&le.setData(Nt,e)},je=async()=>{c(),ot(!0);try{await r(),_t(!1)}catch{_t(!0)}finally{ot(!1)}},Oa=()=>{U(Q.Add)},St=async()=>{U(Q.None),ba()},yt=async e=>{if(Re(),e!==O.PACKAGE_JOBS){lt();return}if(L===Q.Add){const{isError:a}=await lt();a&&St()}else St()},Ja=(e,a)=>{const n={[O.MOST_POPULAR]:m("tabs.mostPopular"),[O.ALL_PARTS]:m("tabs.allPartTypes"),[O.PACKAGE_JOBS]:m("tabs.packageJobs")},o=[];
2return Object.entries(n).forEach(([i,g],P)=>{let f=[];const ie={sm:12,md:4,lg:4};if(P===ps)f=Rt(e[i],3),D||Ze?.setData(`${de}-active-tab`,i);else{const be=e[i].every(fe=>fe.packageJobId);f=Rt(e[i],2,be),ie.md=P===Bt?12:6,ie.lg=6}R&&q&&(g={[O.MOST_POPULAR]:m("tabs.mobile.mostPopular"),[O.ALL_PARTS]:m("tabs.mobile.allPartTypes"),[O.PACKAGE_JOBS]:m("tabs.mobile.packageJobs")}[i]);const ee=P===Ps?{buttonVariant:"medium"}:{},z=P===Bt,me=!a,ve=me&&z&&e[i].length===0,qe=me&&z&&!_e?.packageJobList&&!_e?.catalogPartTypes,ne=!l&&i===D&&(dt||ua||pt||ra)&&(!z||a);o.push({id:i,label:g,content:R&&t.jsxs(t.Fragment,{children:[ne?t.jsx(us,{className:h(Pe.spinner),position:"center",placement:"block"}):z&&_e.packageJobList?t.jsx(ln,{title:m("retryActionPanel.unavailableMessage"),description:m("retryActionPanel.partsUnavailableMessage"),refetch:()=>yt(i)}):ve?t.jsx("p",{className:"p-2",children:m("no-package-jobs-content")}):t.jsx(ws,{id:i,...ee,catalogData:f,selectedItem:I(d,[]),width:ie,category:Se[i],onClick:Et,onClickCategory:ya,onManagePackageJob:Ca,itemToDelete:aa,pkgJobActionMode:a,errorCode:_e?.catalogPartTypes,refetch:()=>yt(i),onGetParts:je}),t.jsx(et,{name:"add_package_job_button",mode:"ROLE",children:qe&&t.jsxs(F,{id:"button-addJob",className:h("w-fit clear-fix mt-4 py-2 rounded-sm",Pe["add-package-job-button"]),variant:"secondary-reverse",onClick:Oa,children:[m("buttons.addJob"),t.jsx(G,{name:"chevron",className:"ml-1"})]},"button-addJob")})]})})}),o},Ra="container-width pb-4 px-4 sm:row-percent md:row-percent sm-md:flex sm-md:flex-col-rev mt-4",ja=e=>t.jsx(zt,{id:`${ls(e.title)}-section-box`,title:e.title,className:h("mb-6","sm:none",Pe["content-section-box"]),children:t.jsx(Rs,{items:e.menuItems})}),va=e=>{const a=[{id:"no",label:m(oe.NO),variant:"secondary-reverse"},{id:"yes",label:m(oe.YES),variant:"primary"}];return t.jsx("div",{className:Pe["modal-container"],children:t.jsx(ds,{title:m("warningModal.title"),buttons:a,onClose:()=>Z({openModal:!1,nextTab:""}),onClickButton:e,className:Pe["warning-modal"],children:t.jsx("p",{className:"mb-4",children:m("warningModal.description")})})})};return t.jsxs(Vt,{className:h(Ra),children:[t.jsxs(De,{lg:3,md:12,sm:12,className:"relative",isAside:!0,children:[!X&&t.jsx(Ns,{}),L!==Q.Delete&&t.jsx(Hs,{onSectionBoxAction:Na,selectedPart:I(d,[]),pkgJobActionMode:L,openBrandList:nt,checkedBrands:ue,packageJobName:it.name,isOpenSidePanel:na,onGetParts:je,isHydrated:R}),t.jsx(et,{name:"current-promotions",mode:"ROLE",children:t.jsx(Os,{namespace:V.HOME})}),j&&ja(j)]}),t.jsxs(De,{lg:9,md:12,sm:12,className:"relative",isMain:!0,children:[M.openModal&&va(xa),t.jsx(Js,{tabList:Ja(oa,L),onClick:Sa,activeTab:D},"tab-content")]})]})},bn=Ts(()=>{ks(Ls.CATALOG);const s=xs(dn,de);return t.jsx(s,{})}),fn=async({locale:s=_s})=>{const r=Cs[s]??s,c=`${ys}_${de},${r}`;return await As({...Is(s),[c]:()=>Ss(de,r)})};export{bn as CatalogPage,fn as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.