1!function(){try{var e="u">typeof window?window:"u">typeof global?global:"u">typeof globalThis?globalThis:"u">typeof self?self:{},t=(new e.Error).stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="7f1387ba-54da-46e7-9a95-3241f1dc01b9",e._sentryDebugIdIdentifier="sentry-dbid-7f1387ba-54da-46e7-9a95-3241f1dc01b9")}catch(e){}}(),(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7970],{1627:(e,t,i)=>{"use strict";i.d(t,{A:()=>o});var n=i(37876),a=i(36902),r=i(64382),l=i(82851),s=i.n(l);function o(e){let{loading:t,...i}=e;return t?(0,n.jsx)(a.A,{...s().omit(i,"key"),disabled:!0,children:(0,n.jsx)(r.A,{size:18,color:"inherit"})}):(0,n.jsx)(a.A,{...s().omit(i,"key"),children:e.children})}},5283:(e,t,i)=>{"use strict";i.d(t,{A:()=>l});var n=i(37876),a=i(90748),r=i(22208);function l({value:e,onChange:t,options:i,size:s="small",fullWidth:o,color:c="secondary",mutedUnselected:d}){return(0,n.jsx)(a.A,{color:c,size:s,fullWidth:o,sx:d?{"& .MuiButtonGroup-grouped.MuiButton-outlined":{borderColor:"divider",color:"grey.400"},"& .MuiButtonGroup-grouped.MuiButton-outlined:not(:last-of-type)":{borderRightColor:"divider"},"& .MuiButtonGroup-grouped.MuiButton-outlined:not(:first-of-type)":{borderLeftColor:"divider"}}:void 0,children:i.map(i=>{let a=e===i.value,l=!!i.disabled;return(0,n.jsx)(r.A,{color:c,variant:a?"contained":"outlined","aria-disabled":l,tabIndex:l?-1:void 0,onClick:()=>{l||t(i.value)},sx:a?{fontWeight:d?600:"normal"}:d?{"&&":{borderColor:"divider",color:"grey.400"},color:"text.disabled",borderColor:"divider",fontWeight:400,"&:hover":{borderColor:"divider",color:"grey.500"},...l?{cursor:"not-allowed",color:"text.disabled",borderColor:"divider","&:hover":{borderColor:"divider",color:"text.disabled"}}:{}}:{fontWeight:"normal"},children:i.label},i.value.toString())})})}},7746:(e,t,i)=>{"use strict";i.d(t,{A:()=>x});var n=i(37876),a=i(39224),r=i(93708),l=i(95239),s=i(55189),o=i(31941),c=i(8600),d=i(36902),u=i(67660),h=i(14232),m=i(37101),p=i(86692),g=i(43702);function x({onAttachFile:e,onError:t,accept:i=p.QO,showSizeLimit:v=!0,disabled:f=!1,tip:y="Drag 'n' drop some files here, or click to select files",overrideStyles:b={},selectedFile:j,selectedFileDescription:A,onRemoveFile:C}){let w=(0,h.useCallback)(t=>{let i=t[0];i&&e(i)},[e]),{getRootProps:S,getInputProps:k,isDragActive:I}=(0,m.VB)({onDrop:w,accept:i,maxSize:g._x,multiple:!1,disabled:f,onDropRejected:e=>{let n=e[0];n?.errors[0]?.code==="file-too-large"?t?.(`File size should not exceed ${p.Yl}MB.`):n?.errors[0]?.code==="file-invalid-type"&&t?.(`Please upload a ${i.replaceAll(".","").split(",").join(", ")} file.`)}}),T="primary.main";return j?(0,n.jsxs)(s.A,{...S(),direction:"column",spacing:1,alignItems:"center",justifyContent:"center",sx:{border:"2px dashed",borderColor:"grey.400",borderRadius:2,p:4,width:"100%",maxWidth:600,textAlign:"center",cursor:f?"default":"pointer",backgroundColor:"background.neutral",transition:"all 0.2s ease-in-out",opacity:f?.6:1,pointerEvents:f?"none":"auto","&:hover":{borderColor:f?"grey.400":T,backgroundColor:f?"background.neutral":"action.hover"},...b},children:[(0,n.jsx)("input",{...k()}),(0,n.jsxs)(s.A,{direction:"row",spacing:1,alignItems:"center",justifyContent:"center",sx:{maxWidth:"100%",minWidth:0},children:[(0,n.jsx)(l.A,{sx:{fontSize:28,color:"grey.500",flexShrink:0}}),(0,n.jsx)(o.A,{variant:"body1",color:"text.primary",noWrap:!0,sx:{minWidth:0},children:j.name}),C&&(0,n.jsx)(c.A,{title:"Remove file",children:(0,n.jsx)("span",{children:(0,n.jsx)(d.A,{size:"small","aria-label":"Remove file",onClick:e=>{e.stopPropagation(),C()},disabled:f,children:(0,n.jsx)(a.A,{fontSize:"small"})})})})]}),A&&(0,n.jsx)(o.A,{variant:"caption",color:"text.secondary",children:A})]}):(0,n.jsxs)(u.A,{...S(),sx:{border:"2px dashed",borderColor:I?T:"grey.400",borderRadius:2,p:4,width:"100%",maxWidth:600,textAlign:"center",cursor:"pointer",backgroundColor:I?"action.hover":"background.neutral",transition:"all 0.2s ease-in-out",opacity:f?.6:1,pointerEvents:f?"none":"auto","&:hover":{borderColor:f?"grey.400":T,backgroundColor:f?"background.neutral":"action.hover"},...b},children:[(0,n.jsx)("input",{...k()}),I?(0,n.jsx)(o.A,{variant:"h6",color:"primary",children:"Drop the files here ..."}):(0,n.jsxs)(s.A,{direction:"column",alignItems:"center",spacing:1,children:[(0,n.jsxs)(s.A,{direction:"row",alignItems:"center",spacing:1,children:[(0,n.jsx)(r.A,{sx:{fontSize:28,color:"grey.500"}}),(0,n.jsx)(o.A,{variant:"body1",color:"text.primary",children:y})]}),v&&(0,n.jsxs)(o.A,{variant:"caption",color:"grey.600",children:["Max size: ",p.Yl,"MB."]})]})]})}},13630:(e,t,i)=>{"use strict";i.d(t,{H:()=>x});var n=i(37876),a=i(80868),r=i(49822),l=i(44384),s=i(8600),o=i(55189),c=i(31941),d=i(
156305),u=i(82851),h=i.n(u),m=i(14232),p=i(31777),g=i(54568);function x({rows:e,exceptions:t=[],showToolbar:i,processedRowIds:u=[],ignoredRowIds:v=[],ignoredRowHoverText:f}){let{locale:y}=(0,p.d4)(e=>e.user),b=h()(t).reduce((e,t)=>{if(h().isNil(t.rowId)||!t.column)return e;let i=e[t.rowId]??(e[t.rowId]={});return(i[t.column]??(i[t.column]=[])).push(t),e},{}),j=(0,m.useMemo)(()=>h()(e).flatMap(e=>h().keys(e)).uniq().value(),[e]),A=h()(j).map(e=>{let i=(t,i)=>{let a=b[t.id]||{},d=h()(a).get(e,[]);return h().isEmpty(d)?i:(0,n.jsx)(s.A,{title:(0,n.jsx)(o.A,{children:h()(d).map("message").value()}),children:(0,n.jsxs)(o.A,{direction:"row",spacing:1,alignItems:"center",children:[h()(d).map("severity").uniq().map(e=>"error"===e?(0,n.jsx)(r.A,{color:e,sx:{fontSize:"16px"}},e):(0,n.jsx)(l.A,{color:e,sx:{fontSize:"16px"}},e)).value(),(0,n.jsx)(c.A,{variant:"body2",children:i})]})})};return"id"===e?{key:e,label:"Row",renderCell:e=>{let i=Number.parseInt(e.id),s=h().find(t,t=>t.rowId===e.id);if(s){let e="error"===s.severity?r.A:l.A,t=s.severity;return(0,n.jsxs)(o.A,{direction:"row",spacing:.5,alignItems:"center",children:[(0,n.jsx)(e,{color:t,sx:{fontSize:"16px"}}),(0,n.jsx)(c.A,{children:i+1})]})}return u.includes(e.id)?(0,n.jsxs)(o.A,{direction:"row",spacing:.5,alignItems:"center",children:[(0,n.jsx)(a.A,{color:"success",sx:{fontSize:"16px"}}),(0,n.jsx)(c.A,{children:i+1})]}):e._isIgnored?(0,n.jsx)(c.A,{variant:"body2",sx:{color:"text.disabled",opacity:.6},children:i+1}):(i+1).toString()},getOrderByValue:e=>h().find(t,t=>t.rowId===e.id)?0-1/Number.parseInt(e.id):Number.parseInt(e.id)}:"effectivePalletCount"===e?{key:e,align:"right",label:"Effective Pallet Count",renderCell:t=>i(t,(0,g.kT)(y).format(t[e]))}:{key:e,label:e,renderCell:t=>{let a=i(t,t[e]?.toString()??"");return t._isIgnored?(0,n.jsx)(c.A,{variant:"body2",sx:{color:"text.disabled",opacity:.6},children:a}):a}}}).value(),C=(0,m.useMemo)(()=>e.map(e=>({...e,_isIgnored:v.includes(e.id)}
1)),[e,v]);return(0,n.jsx)(d.A,{columns:A,rows:C,initialOrderByColumnKey:"id",initialOrder:"asc",showToolbar:i,getRowHoverText:e=>e._isIgnored?f??"This row was ignored (no contact data provided)":void 0})}},16015:(e,t,i)=>{"use strict";i.d(t,{A:()=>r});var n=i(38884),a=i(37876);let r=(0,n.A)((0,a.jsx)("path",{d:"m20.55 5.22-1.39-1.68C18.88 3.21 18.47 3 18 3H6c-.47 0-.88.21-1.15.55L3.46 5.22C3.17 5.57 3 6.01 3 6.5V19c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V6.5c0-.49-.17-.93-.45-1.28M12 9.5l5.5 5.5H14v2h-4v-2H6.5zM5.12 5l.82-1h12l.93 1z"}),"Unarchive")},18267:(e,t,i)=>{"use strict";function n(e){if("mappings"===e[0]&&"number"==typeof e[1]&&("code"===e[2]||"descriptionRegex"===e[2]||"category"===e[2]))return`mappings.${e[1]}.${e[2]}`}function a(e){return"variantInventoryItemId"===e[0]?"inventoryItem":"profileIds"===e[0]?"facilityOrganizationId":"quantityUnit"===e[0]?"quantityUnit":"sameUnitConversion"===e[0]?"sameUnitConversion":void 0}function r(e,t){if("items"!==e[0])return;if("number"!=typeof e[1])return"Inventory items";let i=t[e[1]]?`Inventory item ${t[e[1]]}`:`Inventory item ${e[1]+1}`;return"packaging"===e[2]&&"number"==typeof e[3]?`${i} â Packaging row ${e[3]+1}`:i}function l(e){return 3===e.length&&"integrationSettings"===e[0]&&"edi"===e[1]&&"gsVersionId"===e[2]?"edi.gsVersionId":void 0}i.d(t,{Q3:()=>r,UQ:()=>n,WR:()=>l,XK:()=>a})},19575:(e,t,i)=>{"use strict";i.d(t,{A:()=>r});var n=i(37876),a=i(84400);function r({value:e,...t}){return e?(0,n.jsx)(a.A,{...t}):null}},20499:(e,t,i)=>{"use strict";var n=i(29563);t.A=void 0;var a=n(i(60065)),r=i(37876);t.A=(0,a.default)((0,r.jsx)("path",{d:"M17.65 6.35C16.2 4.9 14.21 4 12 4c-4.42 0-7.99 3.58-7.99 8s3.57 8 7.99 8c3.73 0 6.84-2.55 7.73-6h-2.08c-.82 2.33-3.04 4-5.65 4-3.31 0-6-2.69-6-6s2.69-6 6-6c1.66 0 3.14.69 4.22 1.78L13 11h7V4z"}),"Refresh")},25523:(e,t,i)=>{"use strict";i.d(t,{A:()=>s});var n=i(37876),a=i(41919),r=i(38993);let l=(0,r.i7)` 2 0% { 3 transform: rotate(360deg); 4 } 5 100% { 6 transform: rotate(0deg); 7 } 8`;function s({isLoading:e,iconProps:t,mr:i=1}){return(0,n.jsx)(a.A,{...t??{},sx:{mr:i,animation:e?`${l} 1s linear infinite`:"none"}})}},28194:(e,t,i)=>{"use strict";i.d(t,{Q:()=>y});var n=i(37876),a=i(67660),r=i(31941),l=i(9988),s=i(622),o=i(64713),c=i(46987),d=i(82851),u=i.n(d),h=i(14232);let m=["length","width","height"],p={"& .MuiInputBase-input":{textAlign:"center",padding:"0",width:"6ch"},"& .MuiInputBase-root":{padding:0,"&:before, &:after":{display:"none"}}},g=(0,o.Ay)("div",{name:"MuiFilledInput",slot:"Root",overridesResolver:(e,t)=>t.root,skipVariantsResolver:!0})({});function x(e,t){let i=e?.[t];return u().isNil(i)?"":i.toString()}function v(e,t,i){return{length:"length"===t?i:e.length,width:"width"===t?i:e.width,height:"height"===t?i:e.height}}function f(e,t,i){let n={};return u().isNil(e?.length)||(n.length=e.length),u().isNil(e?.width)||(n.width=e.width),u().isNil(e?.height)||(n.height=e.height),u().isNil(e?.unit)||(n.unit=e.unit),n[t]=i,n}let y=({value:e={},onChange:t,error:i,label:o="Dimensions",helperText:d,unit:y="in",disabled:b,size:j="medium",allowDecimals:A=!1,onCommit:C,...w})=>{let S="small"===j,k=(0,h.useRef)(null),I=(0,h.useRef)(null),T=(0,h.useRef)(null),U=(0,h.useRef)(null),[P,E]=(0,h.useState)(()=>({length:x(e,"length"),width:x(e,"width"),height:x(e,"height")}));(0,h.useEffect)(()=>{E(t=>{let i=t;return m.forEach(t=>{U.current!==t&&(i=v(i,t,x(e,t)))}),i})},[e?.length,e?.width,e?.height]);let N=(i,n)=>a=>{let r=function(e,t){if(!t){let[t=""]=e.split(".");return t.replace(/\D/g,"").slice(0,3)}let[i="",...n]=e.replace(/[^\d.]/g,"").split("."),a=i.slice(0,3);return 0===n.length?a:`${a}.${n.join("").slice(0,3)}`}(a.target.value,A),l=parseFloat(r);E(e=>v(e,i,r)),t?.(f(e,i,u().isFinite(l)?l:void 0)),/^\d{3}$/.test(r)&&n&&setTimeout(()=>n.current?.focus(),0)},z=e=>{U.current=e},$=t=>{U.current=null,E(i=>v(i,t,x(e,t)))},V=(i,n,a)=>async r=>{if("Enter"===r.key){r.preventDefault();let e=r.currentTarget;await C?.(),e.blur()}else if("Tab"===r.key&&!r.shiftKey&&n)r.preventDefault(),n.current?.focus();else if("Tab"===r.key&&r.shiftKey&&a)r.preventDefault(),a.current?.focus();else if("Backspace"===r.key&&u().isEmpty(P[i])&&a){r.preventDefault();let n="width"===i?"length":"height"===i?"width":null;if(n){let i=P[n];if(!u().isEmpty(i)){let r=i.slice(0,-1),l=parseFloat(r);E(e=>v(e,n,r)),t?.(f(e,n,u().isFinite(l)?l:void 0)),a.current?.focus()}}}};return(0,n.jsxs)(a.A,{sx:{display:"inline-flex",flexDirection:"column"},...w,children:[(0,n.jsxs)(g,{className:b?s.A.disabled:void 0,sx:{position:"relative",display:"inline-flex",alignItems:"center",borderRadius:1,borderBottomLeftRadius:0,borderBottomRightRadius:0,paddingTop:S?"16px":"25px",paddingBottom:S?"6px":"8px",paddingLeft:"12px",paddingRight:"12px",minHeight:S?40:56,transition:"background-color 200ms cubic-bezier(0.0, 0, 0.2, 1) 0ms","&::before":{borderBottom:e=>i?`1px solid ${e.palette.error.main}`:`1px solid ${e.palette.grey[50056]}`,left:0,bottom:0,content:'"\\00a0"',position:"absolute",right:0,transition:"border-bottom-color 200ms cubic-bezier(0.4, 0, 0.2, 1) 0ms",pointerEvents:"none"}
8,"&::after":{borderBottom:"2px solid",borderColor:i?"error.main":"primary.main",left:0,bottom:0,content:'""',position:"absolute",right:0,transform:"scaleX(0)",transition:"transform 200ms cubic-bezier(0.0, 0, 0.2, 1) 0ms",pointerEvents:"none"},"&:hover::before":{borderBottom:e=>i?`1px solid ${e.palette.error.main}`:b?`1px solid ${e.palette.grey[50056]}`:`2px solid ${e.palette.text.primary}`},"&:focus-within::after":{transform:"scaleX(1)"},"&:focus-within label":{color:i?"error.main":"primary.main"}},children:[(0,n.jsx)(r.A,{component:"label",variant:"caption",sx:{position:"absolute",top:S?"2px":"6px",left:"12px",color:i?"error.main":"text.secondary",transition:"color 200ms cubic-bezier(0.0, 0, 0.2, 1) 0ms",pointerEvents:"none"},children:o}),(0,n.jsx)(c.P,{inputRef:k,value:P.length,onChange:N("length",I),onFocus:()=>z("length"),onBlur:()=>$("length"),onKeyDown:V("length",I,null),placeholder:"L",disabled:b,inputProps:{"aria-label":"Length"},variant:"standard",sx:p}),(0,n.jsx)(a.A,{component:"span",sx:{color:"text.primary",padding:"0 6px",userSelect:"none",fontSize:"16px",fontWeight:400},children:"\xd7"}),(0,n.jsx)(c.P,{inputRef:I,value:P.width,onChange:N("width",T),onFocus:()=>z("width"),onBlur:()=>$("width"),onKeyDown:V("width",T,k),placeholder:"W",disabled:b,inputProps:{"aria-label":"Width"},variant:"standard",sx:p}),(0,n.jsx)(a.A,{component:"span",sx:{color:"text.primary",padding:"0 6px",userSelect:"none",fontSize:"16px",fontWeight:400},children:"\xd7"}),(0,n.jsx)(c.P,{inputRef:T,value:P.height,onChange:N("height",null),onFocus:()=>z("height"),onBlur:()=>$("height"),onKeyDown:V("height",null,I),placeholder:"H",disabled:b,inputProps:{"aria-label":"Height"},variant:"standard",sx:p}),(0,n.jsx)(l.A,{position:"end",sx:{marginLeft:"8px"},children:(0,n.jsx)(r.A,{variant:"body2",color:"text.secondary",children:y})})]}),d&&(0,n.jsx)(r.A,{variant:"caption",sx:{color:i?"error.main":"rgba(0, 0, 0, 0.6)",fontSize:"0.75rem",marginLeft:"14px",marginTop:"3px"},children:d})]})}},35967:(e,t,i)=>{"use strict";i.d(t,{A:()=>c});var n=i(37876),a=i(79378),r=i(30766),l=i(82851),s=i.n(l),o=i(98923);function c({archivedAtInMs:e,archivedBy:t,archivedById:i,guidance:l,locale:d,recordLabel:u}){if(s().isNil(e))return null;let h=s().trim(t?.name)||t?.email,m=new Date(e).toLocaleString(d,o.Qu),p=h?`${u} was archived by ${h} on ${m}.`:i?`${u} was archived on ${m}; we couldn't identify the recorded person.`:`${u} was archived on ${m}; the person who archived it wasn't recorded.`;return(0,n.jsxs)(a.A,{"data-testid":"archived-record-alert",severity:"warning",sx:{mb:2},children:[(0,n.jsx)(r.A,{children:"Archived"}),p," ",l]})}},41646:(e,t,i)=>{"use strict";var n=i(29563);t.A=void 0;var a=n(i(60065)),r=i(37876);t.A=(0,a.default)((0,r.jsx)("path",{d:"M20 2H4c-1 0-2 .9-2 2v3.01c0 .72.43 1.34 1 1.69V20c0 1.1 1.1 2 2 2h14c.9 0 2-.9 2-2V8.7c.57-.35 1-.97 1-1.69V4c0-1.1-1-2-2-2m-5 12H9v-2h6zm5-7H4V4h16z"}),"Inventory2")},41919:(e,t,i)=>{"use strict";i.d(t,{A:()=>r});var n=i(38884),a=i(37876);let r=(0,n.A)((0,a.jsx)("path",{d:"M12 4V1L8 5l4 4V6c3.31 0 6 2.69 6 6 0 1.01-.25 1.97-.7 2.8l1.46 1.46C19.54 15.03 20 13.57 20 12c0-4.42-3.58-8-8-8m0 14c-3.31 0-6-2.69-6-6 0-1.01.25-1.97.7-2.8L5.24 7.74C4.46 8.97 4 10.43 4 12c0 4.42 3.58 8 8 8v3l4-4-4-4z"}),"Sync")},46987:(e,t,i)=>{"use strict";i.d(t,{P:()=>r,s:()=>l});var n=i(37876),a=i(60072);function r(e){return(0,n.jsx)(a.A,{...e,type:"number",onWheel:e=>e.target instanceof HTMLElement&&e.target.blur()})}function l(e){return(0,n.jsx)(r,{...e,inputProps:{min:1,...e.inputProps}})}},48508:(e,t,i)=>{"use strict";var n=i(29563);t.A=void 0;var a=n(i(60065)),r=i(37876);t.A=(0,a.default)((0,r.jsx)("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m1 15h-2v-6h2zm0-8h-2V7h2z"}),"Info")},49822:(e,t,i)=>{"use strict";var n=i(29563);t.A=void 0;var a=n(i(60065)),r=i(37876);t.A=(0,a.default)((0,r.jsx)("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m1 15h-2v-2h2zm0-4h-2V7h2z"}),"Error")},54568:(e,t,i)=>{"use strict";function n(e){return new Intl.NumberFormat(e??"en-US",{minimumFractionDigits:0,maximumFractionDigits:2})}i.d(t,{kT:()=>n})}
8,60724:(e,t,i)=>{"use strict";i.d(t,{w:()=>s,I:()=>l});var n=i(6381);let a=n.z.string().regex(/^[a-f\d]{24}$/i);n.z.object({organizationId:a.optional(),inventoryItemIdToKeep:a,inventoryItemIdsToDelete:n.z.array(a),restoreInventoryItemToKeep:n.z.boolean().optional(),mappingConfirmation:n.z.string().optional()});let r=n.z.object({message:n.z.string(),detail:n.z.object({existingItemId:n.z.string(),existingItemArchived:n.z.boolean(),mappingConfirmation:n.z.string().optional(),shipperInventoryItemConflicts:n.z.array(n.z.object({sourceMappingId:n.z.string(),retainedMappingId:n.z.string(),targetShipperProfileName:n.z.string().optional(),buyerCatalogIdToKeep:n.z.string(),buyerCatalogIdToDelete:n.z.string()}).transform(e=>({...e,targetShipperProfileName:e.targetShipperProfileName})))})});function l(e){let t=n.z.object({data:r}).safeParse(e);if(t.success)return t.data.data;let i=n.z.object({response:n.z.object({data:r})}).safeParse(e);return i.success?i.data.response.data:void 0}async function s(e,t){try{return await t(e),!0}catch(r){let i=l(r);if(!i?.detail.mappingConfirmation)throw r;let{detail:n}=i,a=n.shipperInventoryItemConflicts.map(e=>`${e.targetShipperProfileName??"Customer"}: replace ${e.buyerCatalogIdToDelete} with ${e.buyerCatalogIdToKeep}`);if(!window.confirm([i.message,...a,"Continue with these changes?"].join("\n")))return!1;return s({...e,mappingConfirmation:n.mappingConfirmation,restoreInventoryItemToKeep:n.existingItemArchived},t)}}},66938:(e,t,i)=>{"use strict";i.d(t,{A:()=>c});var n=i(37876),a=i(15512),r=i(80315),l=i(10266),s=i(88917),o=i(14232);function c({options:e,onSelect:t,disabled:i,anchorText:d,color:u,variant:h,formatOptionLabel:m,onBlur:p}){let[g,x]=(0,o.useState)(null),v=e=>{x(null),e&&t(e)};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)(a.A,{variant:h||"inherit",underline:i?"none":"always",color:u||"inherit",onClick:e=>{i||x(e.currentTarget)},sx:{textDecorationStyle:i?void 0:"dotted",cursor:i?void 0:"pointer"},children:[d,!i&&(0,n.jsx)(s.iV,{fontSize:"inherit"})]}),(0,n.jsx)(r.A,{anchorEl:g,open:!!g,onClose:()=>v(),onBlur:p,children:e.map((e,t)=>(0,n.jsx)(l.A,{sx:{color:u||"inherit"},onClick:()=>v(e),children:m(e)},t))})]})}},67626:(e,t,i)=>{"use strict";i.d(t,{A:()=>r});var n=i(38884),a=i(37876);let r=(0,n.A)((0,a.jsx)("path",{d:"m12 4-1.41 1.41L16.17 11H4v2h12.17l-5.58 5.59L12 20l8-8z"}),"ArrowForward")},73899:(e,t,i)=>{"use strict";i.d(t,{A:()=>b,t:()=>y});var n=i(37876),a=i(91176),r=i(67626),l=i(95204),s=i(19789),o=i(26190),c=i(8600),d=i(22208),u=i(55189),h=i(31941),m=i(9423),p=i(74592),g=i(99854),x=i(43638),v=i(14232);let f=(0,v.createContext)(void 0);function y({label:e,continuationLabel:t,children:i,disabled:l,onClick:s,onSelectionStart:o,tooltip:u,color:h,showLabel:m,...p}){let g=(0,v.useContext)(f);if(!g)throw Error("BulkActionButton must be inside BulkSelectionToolbar");if(g.isSelecting&&g.selectedAction!==e)return null;let x=m||g.isCompact||g.isSelecting;return(0,n.jsx)(c.A,{title:u||e,children:(0,n.jsx)("span",{"data-bulk-action":!0,"data-bulk-primary":g.isPrimaryAction?"true":void 0,children:(0,n.jsx)(d.A,{...p,color:h??(g.isSelecting?"primary":"inherit"),variant:g.isSelecting?"contained":p.variant,"aria-label":g.isSelecting?t:p["aria-label"]??e,fullWidth:g.isCompact&&!g.isSelecting,size:"small",startIcon:g.isSelecting?"Confirm"===t?(0,n.jsx)(a.A,{fontSize:"small"}):void 0:x?i:void 0,endIcon:g.isSelecting&&"Next"===t?(0,n.jsx)(r.A,{fontSize:"small"}):void 0,disabled:l||g.isSelecting&&0===g.selectedCount,onClick:t=>{if(!g.isSelecting){g.onActionSelect(e),(o??g.onSelect)(),g.closeActions();return}s?.(t)},sx:[{textTransform:"none",whiteSpace:"nowrap",minWidth:x?void 0:32,justifyContent:g.isCompact&&!g.isSelecting?"flex-start":void 0},...Array.isArray(p.sx)?p.sx:[p.sx]],children:g.isSelecting?t:x?e:i})})})}function b({children:e,inactiveElements:t,primaryActions:i,isSelecting:a,selectedAction:r,onActionSelect:c,onCancel:y,onSelect:j,actionsRef:A,selectedCount:C}){let w=(0,v.useRef)(null),S=(0,v.useRef)(null),k=(0,p.A)(e=>{w.current=e,A?.(e)}),[I,T]=(0,v.useState)(void 0),U=(0,g.A)(()=>w.current?.closest(".MuiDataGrid-toolbar")??w.current),[P,E]=(0,v.useState)(!1),N=v.Children.count(e);(0,x.A)(()=>{I||E(!1)},[U?.width,a,I,N]),(0,x.A)(()=>
8{if(P||a||I)return;let e=w.current?.closest("[data-toolbar-controls]");if(!e||0===e.clientWidth||e.scrollWidth<=e.clientWidth+1)return;let t=Array.from(w.current?.querySelectorAll('[data-bulk-action]:not([data-bulk-primary="true"])')??[]);if(void 0!==i&&t.length<4)return;let n=w.current&&parseFloat(getComputedStyle(w.current).columnGap)||0,r=t.reduce((e,t)=>e+t.getBoundingClientRect().width,0)+Math.max(0,t.length-1)*n,l=S.current?.getBoundingClientRect().width??0;l>0&&r>l&&E(!0)});let z=(0,v.useId)(),$=()=>T(void 0);return(0,n.jsx)(f.Provider,{value:{isSelecting:a,selectedAction:r,onActionSelect:c,onSelect:j,selectedCount:C,isCompact:P,closeActions:$},children:(0,n.jsxs)(u.A,{"data-bulk-compact":P&&!a?"true":void 0,ref:k,direction:"row",alignItems:"center",sx:{position:"relative",flexWrap:"nowrap",gap:a?1.5:.5,flexShrink:0,minWidth:0,maxWidth:"100%"},children:[a&&(0,n.jsxs)(h.A,{role:"status",variant:"body2",color:"text.secondary",sx:{fontWeight:500,mx:.5,whiteSpace:"nowrap",flexShrink:0},children:[C," selected"]}),void 0!==i&&(0,n.jsx)(f.Provider,{value:{isSelecting:a,selectedAction:r,onActionSelect:c,onSelect:j,selectedCount:C,isCompact:!1,isPrimaryAction:!0,closeActions:$},children:i}),(0,n.jsx)(d.A,{ref:S,"aria-hidden":!P||!!a||void 0,tabIndex:P&&!a?0:-1,size:"small",variant:"outlined",color:"inherit",startIcon:(0,n.jsx)(l.A,{}),endIcon:(0,n.jsx)(s.A,{}),"aria-haspopup":"dialog","aria-expanded":!!I,"aria-controls":I?z:void 0,onClick:e=>T(e.currentTarget),sx:{textTransform:"none",whiteSpace:"nowrap",...!P||a?{position:"absolute",visibility:"hidden",pointerEvents:"none",top:0,right:0}:{}},children:"Bulk"}),P&&!a?(0,n.jsx)(m.Ay,{open:!!I,anchorEl:I,onClose:$,anchorOrigin:{vertical:"bottom",horizontal:"left"},keepMounted:!0,disableScrollLock:!0,children:(0,n.jsxs)(u.A,{id:z,role:"dialog","aria-label":"Bulk actions",spacing:.5,sx:{p:1,minWidth:200},children:[(0,n.jsx)(h.A,{variant:"caption",color:"text.secondary",sx:{px:1},children:"Choose an action to select rows"}),e]})}):e,a?(0,n.jsx)(d.A,{size:"small",variant:"text",color:"inherit",startIcon:(0,n.jsx)(o.A,{fontSize:"small"}),onClick:y,sx:{textTransform:"none"},children:"Cancel"}):t]})})}},75334:(e,t,i)=>{"use strict";let n;i.r(t),i.d(t,{default:()=>t5});var a,r=i(37876),l=i(58624),s=i(48508),o=i(78274),c=i(41646),d=i(85204),u=i(55189),h=i(60072),m=i(22208),p=i(31941),g=i(8600),x=i(36902),v=i(24261),f=i(79378),y=i(25523),b=i(35967),j=i(40203),A=i(39224),C=i(3801),w=i(53448),S=i(19270),k=i(1930),I=i(67660),T=i(86761),U=i(48530),P=i(67358),E=i(74743),N=i(10266),z=i(87774),$=i(17478),V=i(25875),M=i(74086),R=i(9988),O=i(1094),F=i(21347),K=i(88224),q=i(5283),B=i(28194),W=i(46987),L=i(66938),D=i(82851),H=i.n(D),_=i(99427),Y=i(14232),G=i(88992),Q=i(64360),X=i(31777),J=i(4964),Z=i(9618);function ee(e){return e.map(e=>{let{weight:t,parentPackaging:i,unitsPerParent:n,...a}=e,r=e.type!==J.al.pallet&&!!i;return{...a,...r?{parentPackaging:i}:{},...r&&H().isFinite(n)?{unitsPerParent:n}:{},...H().isFinite(t?.value)?{weight:t}:{}}})}function et(e,t){return H().isEmpty(e)?void 0===t?void 0:null:e||void 0}let ei=new Set(["description","name","sku"]),en=new Set(["calculatePalletHeight","dedicatedPalletOnly","excludeFromPackagingCalculations","hsCode","isAlcohol","isHazmat","isStackable","isTurnable","nmfcCode","packaging","preferredBolUom","preferredUom","reeferSettings"]),ea=new Set(["gtin8","gtin12","gtin13"]);var er=i(51271),el=i(86194),es=i(49118),eo=i(15589);let ec=[{label:"Frozen (-10\xb0F)",minTemperature:-10,maxTemperature:-10,preCoolTemperature:-10,sentryMode:J.TJ.Continuous},{label:"Chilled (34\xb0F)",minTemperature:34,maxTemperature:34,preCoolTemperature:34,sentryMode:J.TJ.Continuous}],ed={sku:"",name:"",description:"",gtin8:"",gtin12:"",gtin13:"",nmfcCode:{action:"keep"},hsCode:{action:"keep"},preferredBolUom:{action:"keep"},preferredUom:{action:"keep"},isStackable:{action:"keep"},isTurnable:{action:"keep"},dedicatedPalletOnly:{action:"keep"},excludeFromPackagingCalculations:{action:"keep"},calculatePalletHeight:{action:"keep"},isAlcohol:{action:"keep"},isHazmat:{action:"keep"},reeferSettings:{action:"keep"},packaging:{action:"keep"}};function eu(e){return H().isString(e)&&!H().isEmpty(e)?H().startCase(e):""}let eh={sku:"",name:"",description:"",gtin8:"",gtin12:"",gtin13:"",nmfcCode:{action:"set",value:void 0},hsCode:{action:"set",value:void 0},preferredBolUom:{action:"set",value:void 0},preferredUom:{action:"set",value:void 0},isStackable:{action:"set",value:!1},isTurnable:{action:"set",value:!1},dedicatedPalletOnly:{action:"set",value:!1},excludeFromPackagingCalculations:{action:"set",value:!1},calculatePalletHeight:{action:"set",value:!1},isAlcohol:{action:"set",value:!1}
8,isHazmat:{action:"set",value:!1},reeferSettings:{action:"clear"},packaging:{action:"clear",value:[]}};function em({open:e,mode:t,inventoryItem:i,bulkEditItems:n,onClose:a}){let{useMetricSystem:l,shipperProfile:s}=(0,X.d4)(e=>e.user),[o,{isLoading:c}]=(0,Z.O)(),[d,{isLoading:g}]=(0,Z.NL)(),[x,{isLoading:v}]=(0,Z.Wz)(),[y,b]=(0,Y.useState)(),A="create"===t?c:"bulkEdit"===t?v:g,B=(0,Y.useMemo)(()=>{let e=s?.settings?.defaultReeferSettings;if(e){let{minTemperature:t,maxTemperature:i,preCoolTemperature:n,sentryMode:a,unit:r}=e;if(t&&i)return[{label:`Default (${(0,es.UT)(e)})`,minTemperature:t,maxTemperature:i,preCoolTemperature:n,sentryMode:a,unit:r},...ec]}return ec},[s]),D=()=>{if("create"===t)return eh;if("bulkEdit"===t||!i)return ed;let e=!H().isNil(i.reeferSettings),n=i.packaging?Object.values(i.packaging).filter(Boolean).map(e=>({type:e.type,parentPackaging:e?.parentPackaging,unitsPerParent:e?.unitsPerParent,dimensions:e?.dimensions,weight:e?.weight})):[],a=n.length>0;return{sku:i.sku||"",name:i.name||"",description:i.description||"",gtin8:i.gtinCodes?.gtin8||"",gtin12:i.gtinCodes?.gtin12||"",gtin13:i.gtinCodes?.gtin13||"",nmfcCode:{action:"set",value:i.nmfcCode},hsCode:{action:"set",value:i.hsCode},preferredBolUom:{action:"set",value:i.preferredBolUom},preferredUom:{action:"set",value:i.preferredUom},isStackable:{action:"set",value:i.isStackable},isTurnable:{action:"set",value:i.isTurnable},dedicatedPalletOnly:{action:"set",value:i.dedicatedPalletOnly},excludeFromPackagingCalculations:{action:"set",value:i.excludeFromPackagingCalculations},calculatePalletHeight:{action:"set",value:i.calculatePalletHeight},isAlcohol:{action:"set",value:i.isAlcohol},isHazmat:{action:"set",value:!!i.hazmatSettings},reeferSettings:{action:e?"set":"clear",value:i.reeferSettings},packaging:{action:a?"set":"clear",value:n}}},{control:el,handleSubmit:ev,reset:ef,setValue:ey,watch:eb}=(0,G.mN)({defaultValues:D(),mode:"onChange"}),{fields:ej,append:eA,remove:eC}=(0,G.jz)({control:el,name:"packaging.value"}),ew=e=>{b(e)},eS=(0,Y.useRef)(null);(0,Y.useEffect)(()=>{if(e)if(ef(D()),b(void 0),"edit"===t&&i?.packaging){let e=Object.values(i.packaging).filter(Boolean).map(e=>({type:e.type,parentPackaging:e?.parentPackaging,unitsPerParent:e?.unitsPerParent,dimensions:e?.dimensions,weight:e?.weight}));eS.current=e.length>0?[...e]:null}else eS.current=null},[e,ef,t,i?.id,i?.packaging]);let ek=(0,G.FH)({control:el}),eI=(0,Y.useMemo)(()=>{if("create"===t)return[];let e=[];
8if("edit"===t&&i){void 0!==ek.name&&ek.name!==(i.name||"")&&e.push(`Set name to "${ek.name||""}"`),void 0!==ek.description&&ek.description!==(i.description||"")&&e.push(`Set description to "${ek.description||""}"`);let t=ek.nmfcCode?.value||"";t!==(i.nmfcCode||"")&&e.push(`Set NMFC code to "${t}"`);let n=ek.hsCode?.value||"";n!==(i.hsCode||"")&&e.push(`Set HS code to "${n}"`);let a=ek.preferredBolUom?.value;a!==i.preferredBolUom&&e.push(`Set preferred BOL UOM to "${a||""}"`);let r=ek.preferredUom?.value;r!==i.preferredUom&&e.push(`Set preferred ASN UOM to "${r||""}"`)}if("bulkEdit"===t&&(ek.nmfcCode?.action==="set"?e.push(`Set NMFC code to "${ek.nmfcCode.value||""}"`):ek.nmfcCode?.action==="clear"&&e.push("Clear NMFC code"),ek.hsCode?.action==="set"?e.push(`Set HS code to "${ek.hsCode.value||""}"`):ek.hsCode?.action==="clear"&&e.push("Clear HS code"),ek.preferredBolUom?.action==="set"?e.push(`Set preferred BOL UOM to "${ek.preferredBolUom.value||""}"`):ek.preferredBolUom?.action==="clear"&&e.push("Clear preferred BOL UOM"),ek.preferredUom?.action==="set"?e.push(`Set preferred ASN UOM to "${ek.preferredUom.value||""}"`):ek.preferredUom?.action==="clear"&&e.push("Clear preferred ASN UOM")),"edit"===t&&i){let t=ek.isStackable?.value??!1;t!==(i.isStackable??!1)&&e.push(`Set stackable to ${t?"Yes":"No"}`);let n=ek.isTurnable?.value??!1;n!==(i.isTurnable??!1)&&e.push(`Set turnable to ${n?"Yes":"No"}`);let a=ek.dedicatedPalletOnly?.value??!1;a!==(i.dedicatedPalletOnly??!1)&&e.push(`Set dedicated pallet to ${a?"Yes":"No"}`);let r=ek.excludeFromPackagingCalculations?.value??!1;r!==(i.excludeFromPackagingCalculations??!1)&&e.push(`Set packaging calculation exclusion to ${r?"Yes":"No"}`);let l=ek.calculatePalletHeight?.value??!1;l!==(i.calculatePalletHeight??!1)&&e.push(`Set calculate pallet height to ${l?"Yes":"No"}`);let s=ek.isAlcohol?.value??!1;s!==(i.isAlcohol??!1)&&e.push(`Set alcohol to ${s?"Yes":"No"}`);let o=ek.isHazmat?.value??!1;o!==(!!i.hazmatSettings??!1)&&e.push(`Set hazmat to ${o?"Yes":"No"}`)}else"bulkEdit"===t&&(ek.isStackable?.action==="set"?e.push(`Set stackable to ${ek.isStackable.value?"Yes":"No"}`):ek.isStackable?.action==="clear"&&e.push("Clear stackable"),ek.isTurnable?.action==="set"?e.push(`Set turnable to ${ek.isTurnable.value?"Yes":"No"}`):ek.isTurnable?.action==="clear"&&e.push("Clear turnable"),ek.dedicatedPalletOnly?.action==="set"?e.push(`Set dedicated pallet to ${ek.dedicatedPalletOnly.value?"Yes":"No"}`):ek.dedicatedPalletOnly?.action==="clear"&&e.push("Clear dedicated pallet"),ek.excludeFromPackagingCalculations?.action==="set"?e.push(`Set packaging calculation exclusion to ${ek.excludeFromPackagingCalculations.value?"Yes":"No"}`):ek.excludeFromPackagingCalculations?.action==="clear"&&e.push("Clear packaging calculation exclusion"),ek.calculatePalletHeight?.action==="set"?e.push(`Set calculate pallet height to ${ek.calculatePalletHeight.value?"Yes":"No"}`):ek.calculatePalletHeight?.action==="clear"&&e.push("Clear calculate pallet height"),ek.isAlcohol?.action==="set"?e.push(`Set alcohol to ${ek.isAlcohol.value?"Yes":"No"}`):ek.isAlcohol?.action==="clear"&&e.push("Clear alcohol"),ek.isHazmat?.action==="set"?e.push(`Set hazmat to ${ek.isHazmat.value?"Yes":"No"}`):ek.isHazmat?.action==="clear"&&e.push("Clear hazmat settings"));if("edit"===t&&i){let t=ek.reeferSettings?.action,n=ek.reeferSettings?.value,a=i.reeferSettings,r=null!=a;"set"===t&&n?r&&n.minTemperature===a?.minTemperature&&n.maxTemperature===a?.maxTemperature&&n.preCoolTemperature===a?.preCoolTemperature&&n.sentryMode===a?.sentryMode&&n.unit===a?.unit||e.push(`Set reefer settings (${n.minTemperature}\xb0${n.unit} - ${n.maxTemperature}\xb0${n.unit})`):"clear"===t&&r&&e.push("Clear reefer settings")}else if(ek.reeferSettings?.action==="set"){let t=ek.reeferSettings.value;t&&e.push(`Set reefer settings (${t.minTemperature}\xb0${t.unit} - ${t.maxTemperature}\xb0${t.unit})`)}else ek.reeferSettings?.action==="clear"&&e.push("Clear reefer settings");if("edit"===t&&i){let t,n=ek.packaging?.value??[],a=i.packaging?Object.values(i.packaging).filter(
8Boolean).map(e=>({type:e.type,parentPackaging:e?.parentPackaging,unitsPerParent:e?.unitsPerParent,dimensions:e?.dimensions,weight:e?.weight})):[];t=e=>H().sortBy(ee(e).map(({type:e,parentPackaging:t,unitsPerParent:i,dimensions:n,weight:a})=>({type:e,parentPackaging:t,unitsPerParent:i,dimensions:n?{length:n.length,width:n.width,height:n.height,unit:n.unit}:void 0,weight:a?{value:a.value,unit:a.unit}:void 0})),e=>e.type),H().isEqual(t(n),t(a))||(n.length>0?e.push(`Set packaging information (${n.length} unit${n.length>1?"s":""})`):e.push("Clear packaging information"))}else if(ek.packaging?.action==="set"){let t=ek.packaging.value;t&&t.length>0&&e.push(`Set packaging information (${t.length} unit${t.length>1?"s":""})`)}else ek.packaging?.action==="clear"&&e.push("Clear packaging information");return e},[ek,t,i]),eT=eI.length>0;(0,Y.useEffect)(()=>{if(ek.reeferSettings?.action==="set"){let e=ek.reeferSettings.value;e&&!e.unit&&ey("reeferSettings.value.unit",(0,eo.iX)(l))}},[ek.reeferSettings?.action,ey,l]);let eU=async e=>{try{if(b(void 0),"bulkEdit"===t){if(!n||0===n.length)return void b("No inventory items are selected. Close this form and select items, then reopen Bulk Edit to save your changes.");let t=n.map(e=>e.id),i={ids:t,nmfcCode:e.nmfcCode,hsCode:e.hsCode,preferredBolUom:e.preferredBolUom,preferredUom:e.preferredUom,isStackable:e.isStackable,isTurnable:e.isTurnable,dedicatedPalletOnly:e.dedicatedPalletOnly,excludeFromPackagingCalculations:e.excludeFromPackagingCalculations,calculatePalletHeight:e.calculatePalletHeight,isAlcohol:e.isAlcohol,hazmatSettings:{action:"set"===e.isHazmat.action&&!1===e.isHazmat.value?"clear":e.isHazmat.action,value:"set"===e.isHazmat.action&&!0===e.isHazmat.value?{hazardClass:J.QO.Unknown}:void 0},reeferSettings:e.reeferSettings,packaging:"set"===e.packaging.action?{...e.packaging,value:ee(e.packaging.value??[])}:e.packaging};try{let{data:e,error:n}=await x(i);e&&((0,_.M8)(`Successfully updated ${t.length} items`,{variant:"success"}),a()),n&&ew(n)}catch(e){ew(e)}return}if("create"===t){let t={sku:e.sku,name:e.name,description:e.description};H().isNil(e.nmfcCode.value)||(t.nmfcCode=e.nmfcCode.value),H().isNil(e.hsCode.value)||(t.hsCode=e.hsCode.value),H().isNil(e.preferredBolUom.value)||(t.preferredBolUom=e.preferredBolUom.value),H().isNil(e.preferredUom.value)||(t.preferredUom=e.preferredUom.value),e.isStackable?.action!=="set"||H().isNil(e.isStackable.value)||(t.isStackable=e.isStackable.value),e.isTurnable?.action!=="set"||H().isNil(e.isTurnable.value)||(t.isTurnable=e.isTurnable.value),e.dedicatedPalletOnly?.action!=="set"||H().isNil(e.dedicatedPalletOnly.value)||(t.dedicatedPalletOnly=e.dedicatedPalletOnly.value),e.excludeFromPackagingCalculations?.action!=="set"||H().isNil(e.excludeFromPackagingCalculations.value)||(t.excludeFromPackagingCalculations=e.excludeFromPackagingCalculations.value),e.calculatePalletHeight?.action!=="set"||H().isNil(e.calculatePalletHeight.value)||(t.calculatePalletHeight=e.calculatePalletHeight.value),e.isAlcohol?.action!=="set"||H().isNil(e.isAlcohol.value)||(t.isAlcohol=e.isAlcohol.value),e.isHazmat?.action==="set"&&!0===e.isHazmat.value&&(t.hazmatSettings={hazardClass:J.QO.Unknown}),e.reeferSettings?.action==="set"&&e.reeferSettings.value&&(t.reeferSettings=e.reeferSettings.value),e.packaging?.action==="set"&&e.packaging.value&&e.packaging.value.length>0&&(t.packaging=ee(e.packaging.value)),(e.gtin8||e.gtin12||e.gtin13)&&(t.gtinCodes={...e.gtin8&&{gtin8:e.gtin8},...e.gtin12&&{gtin12:e.gtin12},...e.gtin13&&{gtin13:e.gtin13}});try{await o({items:[t],checkDuplicates:!0}).unwrap(),(0,_.M8)("Inventory item created successfully",{variant:"success"}),a()}catch(e){ew(e)}}else{if(!i)return void b("This inventory item is unavailable. Close this form and reopen the item from Inventory, then try saving again.");let n={id:i.id};void 0!==e.nmfcCode&&(n.nmfcCode=e.nmfcCode.value||null),void 0!==e.hsCode&&(n.hsCode=e.hsCode.value||null);let r=et(e.preferredBolUom?.value,i.preferredBolUom);void 0!==r&&(n.preferredBolUom=r);let l=et(e.preferredUom?.value,i.preferredUom);if(void 0!==l&&(n.preferredUom=l),"edit"===t?(n.isStackable=e.isStackable?.value??null,n.isTurnable=e.isTurnable?.value??null,n.dedicatedPalletOnly=e.dedicatedPalletOnly?.value??null,n.excludeFromPackagingCalculations=e.excludeFromPackagingCalculations?.value??null,n.calculatePalletHeight=e.calculatePalletHeight?.value??null,n.isAlcohol=e.isAlcohol?.value??null,e.isHazmat?.value===!0?n.hazmatSettings={hazardClass:J.QO.Unknown}:n.hazmatSettings=null):(e.isStackable?.action==="set"?n.isStackable=e.isStackable.value??null:e.isStackable?.action==="clear"&&(n.isStackable=null),e.isTurnable?.action==="set"?n.isTurnable=e.isTurnable.value??null:e.isTurnable?.action==="clear"&&(n.isTurnable=null),e.dedicatedPalletOnly?.action==="set"?n.dedicatedPalletOnly=e.dedicatedPalletOnly.value??null:e.dedicatedPalletOnly?.action==="clear"&&(n.dedicatedPalletOnly=null),e.excludeFromPackagingCalculations?.action==="set"?n.excludeFromPackagingCalculations=e.excludeFromPackagingCalculations.value??null:e.excludeFromPackagingCalculations?.action==="clear"&&(n.excludeFromPackagingCalculations=null),e.calculatePalletHeight?.action==="set"?n.calculatePalletHeight=e.calculatePalletHeight.value??null:e.calculatePalletHeight?.action==="clear"&&(n.calculatePalletHeight=null),e.isAlcohol?.action==="set"?n.isAlcohol=e.isAlcohol.value??null:e.isAlcohol?.action==="clear"&&(n.isAlcohol=null),e.isHazmat?.action==="set"&&!0===e.isHazmat.value?n.hazmatSettings={hazardClass:J.QO.Unknown}:e.isHazmat?.action==="clear"&&(n.hazmatSettings=null)),e.reeferSettings?.action==="set"?n.reeferSettings=e.reeferSettings.value||null:e.reeferSettings?.action==="clear"&&(n.reeferSettings=null),e.packaging?.action==="set"?n.packaging=ee(e.packaging.value??[]):e.packaging?.action==="clear"&&(n.packaging=[]),void 0!==e.name&&null!==e.name&&(n.name=e.name),void 0!==e.description&&null!==e.description&&(n.description=e.description),"edit"===t){let t=e.gtin8||e.gtin12||e.gtin13,a=i.gtinCodes?.gtin14s;t||a?.length?n.gtinCodes={gtin8:e.gtin8||void 0,gtin12:e.gtin12||void 0,gtin13:e.gtin13||void 0,...a?.length&&{gtin14s:a}}:n.gtinCodes=null}try{await d(n).unwrap(),(0,_.M8)("Inventory item updated successfully",{variant:"success"}),a()}catch(e){ew(e)}}}catch(e){ew(e)}},eP=(e,t,i=!0,n=!0)=>i&&"keep"===e?"keep":"set"===e?!0===t?"yes":"no":"clear"===e&&n?"none":"clear"!==e||n?i?"keep":"set":"keep",eE="edit"===t||"bulkEdit"===t,eN="create"===t?"None":"Clear",ez="bulkEdit"===t,e$="bulkEdit"===t,eV="bulkEdit"===t,eM="bulkEdit"===t?"Set":"Custom",eR="bulkEdit"===t?"Clear":"None",eO="bulkEdit"===t?"Set":"Custom",eF="bulkEdit"===t?"Clear":"None",eK=eb("reeferSettings.action"),eq=eb("packaging.action");return(0,r.jsx)(Q.CY,{isSubmitting:A,error:y,resetKey:[ek,e,t,i?.id],pathAdapter:e=>(function(e,t){let i=[...e];if("create"===t){if("items"!==i[0]||0!==i[1])return;i.splice(0,2)}
8"hazmat"===i[0]&&(i[0]="isHazmat");let n=i[0];return"string"!=typeof n?void 0:ei.has(n)?i.join("."):"gtinCodes"===n&&"string"==typeof i[1]&&ea.has(i[1])?i.slice(1).join("."):en.has(n)?("bulkEdit"!==t&&"value"!==i[1]&&i.splice(1,0,"value"),i.join(".")):void 0})(e,t),children:(0,r.jsx)(w.A,{open:e,onClose:a,maxWidth:"md",fullWidth:!0,children:(0,r.jsxs)("form",{onSubmit:ev(eU),children:[(0,r.jsx)(S.A,{sx:{position:"sticky",top:0,zIndex:1,bgcolor:"background.paper"},children:"create"===t?"Create Inventory Item":"bulkEdit"===t?`Bulk Edit ${n?.length||0} Items`:`Edit Inventory Item: ${i?.sku}`}),(0,r.jsx)(k.A,{dividers:!0,children:(0,r.jsxs)(u.A,{spacing:3,children:[(0,r.jsx)(Q.PU,{fallbackMessage:y?(0,er.tz)(y):void 0}),(0,r.jsxs)(I.A,{children:[(0,r.jsx)(p.A,{variant:"subtitle1",fontWeight:600,gutterBottom:!0,children:"Basic Info"}),(0,r.jsxs)(u.A,{spacing:2,sx:{pl:2},children:["create"===t&&(0,r.jsx)(Q.pq,{name:"sku",control:el,rules:{required:"SKU is required"},render:({field:e,fieldState:t})=>(0,r.jsx)(h.A,{...e,label:"SKU",fullWidth:!0,size:"small",variant:"filled",error:!!t.error,helperText:t.error?.message,required:!0})}),"bulkEdit"!==t&&(0,r.jsx)(Q.pq,{name:"name",control:el,render:({field:e})=>(0,r.jsx)(h.A,{...e,label:"Name",fullWidth:!0,size:"small",variant:"filled",placeholder:"Enter name..."})}),"bulkEdit"!==t&&(0,r.jsx)(Q.pq,{name:"description",control:el,render:({field:e})=>(0,r.jsx)(h.A,{...e,label:"Description",fullWidth:!0,size:"small",variant:"filled",multiline:!0,rows:2,placeholder:"Enter description..."})}),(0,r.jsxs)(T.Ay,{container:!0,spacing:2,children:[(0,r.jsx)(T.Ay,{item:!0,xs:12,sm:6,children:"edit"===t||"create"===t?(0,r.jsx)(Q.pq,{name:"nmfcCode.value",control:el,render:({field:e})=>(0,r.jsx)(h.A,{...e,value:e.value||"",label:"NMFC Code",fullWidth:!0,size:"small",variant:"filled",placeholder:"Enter NMFC code..."})}):(0,r.jsx)(ep,{name:"nmfcCode",label:"NMFC Code",control:el,showKeep:eE,clearLabel:eN})}),(0,r.jsx)(T.Ay,{item:!0,xs:12,sm:6,children:"edit"===t||"create"===t?(0,r.jsx)(Q.pq,{name:"hsCode.value",control:el,render:({field:e})=>(0,r.jsx)(h.A,{...e,value:e.value||"",label:"HS Code",fullWidth:!0,size:"small",variant:"filled",placeholder:"Enter HS code..."})}):(0,r.jsx)(ep,{name:"hsCode",label:"HS Code",control:el,showKeep:eE,clearLabel:eN})})]}),(0,r.jsxs)(T.Ay,{container:!0,spacing:2,children:[(0,r.jsx)(T.Ay,{item:!0,xs:12,sm:6,children:"edit"===t||"create"===t?(0,r.jsx)(Q.pq,{name:"preferredBolUom.value",control:el,render:({field:e})=>(0,r.jsxs)(U.A,{variant:"filled",fullWidth:!0,size:"small",children:[(0,r.jsx)(P.A,{children:"Preferred BOL UOM"}),(0,r.jsxs)(E.A,{...e,value:e.value||"",displayEmpty:!0,renderValue:eu,children:[(0,r.jsx)(N.A,{value:"",children:(0,r.jsx)("em",{children:"None"})}),Object.values(J.al).map(e=>(0,r.jsx)(N.A,{value:e,children:H().startCase(e)},e))]})]})}):(0,r.jsx)(eg,{name:"preferredBolUom",label:"Preferred BOL UOM",control:el,options:Object.values(J.al).map(e=>({value:e,label:H().startCase(e)})),showKeep:eE,clearLabel:eN})}),(0,r.jsx)(T.Ay,{item:!0,xs:12,sm:6,children:"edit"===t||"create"===t?(0,r.jsx)(Q.pq,{name:"preferredUom.value",control:el,render:({field:e})=>(0,r.jsxs)(U.A,{variant:"filled",fullWidth:!0,size:"small",children:[(0,r.jsx)(P.A,{children:"Preferred ASN UOM"}),(0,r.jsxs)(E.A,{...e,value:e.value||"",displayEmpty:!0,renderValue:eu,children:[(0,r.jsx)(N.A,{value:"",children:(0,r.jsx)("em",{children:"None"})}),Object.values(J.al).map(e=>(0,r.jsx)(N.A,{value:e,children:H().startCase(e)},e))]})]})}):(0,r.jsx)(eg,{name:"preferredUom",label:"Preferred ASN UOM",control:el,options:Object.values(J.al).map(e=>({value:e,label:H().startCase(e)})),showKeep:eE,clearLabel:eN})})]})]})]}),"bulkEdit"!==t&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(z.A,{}),(0,r.jsxs)(I.A,{children:[(0,r.jsx)(p.A,{variant:"subtitle1",fontWeight:600,gutterBottom:!0,children:"GTIN Codes"}),(0,r.jsx)(u.A,{spacing:2,sx:{pl:2},children:(0,r.jsxs)(I.A,{sx:{display:"grid",gap:2,gridTemplateColumns:{xs:"1fr",sm:"repeat(3, minmax(0, 1fr))"}},children:[(0,r.jsx)(I.A,{children:(0,r.jsx)(Q.pq,{name:"gtin8",control:el,rules:{validate:e=>!e||!!/^\d{8}$/.test(e)||"GTIN-8 must be exactly 8 digits"},render:({field:e,fieldState:t})=>(0,r.jsx)(h.A,{...e,label:"GTIN-8 (EAN-8)",fullWidth:!0,size:"small",variant:"filled",placeholder:"12345678",error:!!t.error,helperText:t.error?.message})})}),(0,r.jsx)(I.A,{children:(0,r.jsx)(Q.pq,{name:"gtin12",control:el,rules:{validate:e=>!e||!!/^\d{12}$/.test(e)||"GTIN-12 must be exactly 12 digits"},render:({field:e,fieldState:t})=>(0,r.jsx)(h.A,{...e,label:"GTIN-12",fullWidth:!0,size:"small",variant:"filled",placeholder:"012345678901",error:!!t.error,helperText:t.error?.message})})}),(0,r.jsx)(I.A,{children:(0,r.jsx)(Q.pq,{name:"gtin13",control:el,rules:{validate:e=>!e||!!/^\d{13}$/.test(e)||"GTIN-13 must be exactly 13 digits"},render:({field:e,fieldState:t})=>(0,r.jsx)(h.A,{...e,label:"GTIN-13 (EAN-13)",fullWidth:!0,size:"small",variant:"filled",placeholder:"0123456789012",error:!!t.error,helperText:t.error?.message})})})]})})]})]}),(0,r.jsx)(z.A,{}),(0,r.jsxs)(I.A,{children:[(0,r.jsx)(p.A,{variant:"subtitle1",fontWeight:600,gutterBottom:!0,children:"Handling Properties"}),(0,r.jsxs)(u.A,{spacing:2,sx:{pl:2},children:[(0,r.jsxs)(I.A,{children:[(0,r.jsxs)(u.A,{direction:"row",alignItems:"center",justifyContent:"space-between",mb:1,children:[(0,r.jsx)(p.A,{variant:"body2",children:"Stackable"}),"bulkEdit"===t?(0,r.jsx)(I.A,{sx:{width:180},children:(0,r.jsx)(Q.pq,{name:"isStackable",control:el,render:({field:e})=>(0,r.jsx)(q.A,{value:eP(e.value.action,e.value.value,ez,!1),onChange:t=>{"keep"===t?e.onChange({action:"keep",value:void 0}):"yes"===t?e.onChange({action:"set",value:!0}):"no"===t?e.onChange({action:"set",value:!1}):"none"===t&&e.onChange({action:"clear",value:void 0})},options:[...ez?[{label:"Keep",value:"keep"}]:[],{label:"Yes",value:"yes"},{label:"No",value:"no"}],fullWidth:!0})})}):(0,r.jsx)(Q.pq,{name:"isStackable.value",control:el,render:({field:e})=>(0,r.jsx)($.A,{control:(0,r.jsx)(V.A,{checked:e.value??!1,onChange:t=>e.onChange(t.target.checked),size:"small"}),label:""})})]}),(0,r.jsx)(p.A,{variant:"caption",color:"text.secondary",children:"Allow double-stacking when estimating trailer capacity. The higher capacity is used only when every item in the load is stackable."})]}),(0,r.jsxs)(I.A,{children:[(0,r.jsxs)(u.A,{direction:"row",alignItems:"center",justifyContent:"space-between",mb:1,children:[(0,r.jsx)(p.A,{variant:"body2",children:"Turnable"}),"bulkEdit"===t?(0,r.jsx)(I.A,{sx:{width:180},children:(0,r.jsx)(Q.pq,{name:"isTurnable",control:el,render:({field:e})=>(0,r.jsx)(q.A,{value:eP(e.value.action,e.value.value,ez,!1),onChange:t=>{"keep"===t?e.onChange({action:"keep",value:void 0}):"yes"===t?e.onChange({action:"set",value:!0}):"no"===t?e.onChange({action:"set",value:!1}):"none"===t&&e.onChange({action:"clear",value:void 0})},options:[...ez?[{label:"Keep",value:"keep"}]:[],{label:"Yes",value:"yes"},{label:"No",value:"no"}],fullWidth:!0})})}):(0,r.jsx)(Q.pq,{name:"isTurnable.value",control:el,render:({field:e})=>(0,r.jsx)($.A,{control:(0,r.jsx)(V.A,{checked:e.value??!1,onChange:t=>e.onChange(t.target.checked),size:"small"}),label:""})})]}),(0,r.jsx)(p.A,{variant:"caption",color:"text.secondary",children:"Allow pallets to be turned to fit more pallets in a trailer. The higher capacity is used only when every item in the load is turnable."})]}),(0,r.jsxs)(I.A,{children:[(0,r.jsxs)(u.A,{direction:"row",alignItems:"center",justifyContent:"space-between",mb:1,children:[(0,r.jsx)(p.A,{variant:"body2",children:"Dedicated Pallet Only"}),"bulkEdit"===t?(0,r.jsx)(I.A,{sx:{width:180},children:(0,r.jsx)(Q.pq,{name:"dedicatedPalletOnly",control:el,render:({field:e})=>(0,r.jsx)(q.A,{value:eP(e.value.action,e.value.value,ez,!1),onChange:t=>{"keep"===t?e.onChange({action:"keep",value:void 0}):"yes"===t?e.onChange({action:"set",value:!0}):"no"===t?e.onChange({action:"set",value:!1}):"none"===t&&e.onChange({action:"clear",value:void 0})},options:[...ez?[{label:"Keep",value:"keep"}]:[],{label:"Yes",value:"yes"},{label:"No",value:"no"}],fullWidth:!0})})}):(0,r.jsx)(Q.pq,{name:"dedicatedPalletOnly.value",control:el,render:({field:e})=>(0,r.jsx)($.A,{control:(0,r.jsx)(V.A,{checked:e.value??!1,onChange:t=>e.onChange(t.target.checked),size:"small"}),label:""})})]}),(0,r.jsx)(p.A,{variant:"caption",color:"text.secondary",children:"Calculate pallets separately for each order line containing this item when preparing a quote."})]}),(0,r.jsxs)(I.A,{children:[(0,r.jsxs)(u.A,{direction:"row",alignItems:"center",justifyContent:"space-between",mb:1,children:[(0,r.jsx)(p.A,{variant:"body2",children:"Exclude from packaging calculations"}),"bulkEdit"===t?(0,r.jsx)(I.A,{sx:{width:180},children:(0,r.jsx)(Q.pq,{name:"excludeFromPackagingCalculations",control:el,render:({field:e})=>(0,r.jsx)(q.A,{value:eP(e.value.action,e.value.value,ez,!1),onChange:t=>{"keep"===t?e.onChange({action:"keep",value:void 0}):"yes"===t?e.onChange({action:"set",value:!0}):"no"===t?e.onChange({action:"set",value:!1}):"none"===t&&e.onChange({action:"clear",value:void 0})},options:[...ez?[{label:"Keep",value:"keep"}]:[],{label:"Yes",value:"yes"},{label:"No",value:"no"}],fullWidth:!0})})}):(0,r.jsx)(Q.pq,{name:"excludeFromPackagingCalculations.value",control:el,render:({field:e})=>(0,r.jsx)($.A,{control:(0,r.jsx)(V.A,{checked:e.value??!1,onChange:t=>e.onChange(t.target.checked),size:"small",inputProps:{"aria-label":"Exclude from packaging calculations"}}),label:""})})]}),(0,r.jsx)(p.A,{variant:"caption",color:"text.secondary",children:"When quoting an order, keep SKU details and cargo value, but exclude this item from calculated weight and pallet counts."})]}),(0,r.jsxs)(I.A,{children:[(0,r.jsxs)(u.A,{direction:"row",alignItems:"center",justifyContent:"space-between",mb:1,children:[(0,r.jsx)(p.A,{variant:"body2",children:"Calculate Pallet Height"}),"bulkEdit"===t?(0,r.jsx)(I.A,{sx:{width:180},children:(0,r.jsx)(Q.pq,{name:"calculatePalletHeight",control:el,render:({field:e})=>(0,r.jsx)(q.A,{value:eP(e.value.action,e.value.value,ez,!1),onChange:t=>{"keep"===t?e.onChange({action:"keep",value:void 0}):"yes"===t?e.onChange({action:"set",value:!0}):"no"===t?e.onChange({action:"set",value:!1}):"none"===t&&e.onChange({action:"clear",value:void 0})},options:[...ez?[{label:"Keep",value:"keep"}]:[],{label:"Yes",value:"yes"},{label:"No",value:"no"}],fullWidth:!0})})}):(0,r.jsx)(Q.pq,{name:"calculatePalletHeight.value",control:el,render:({field:e})=>(0,r.jsx)($.A,{control:(0,r.jsx)(V.A,{checked:e.value??!1,onChange:t=>e.onChange(t.target.checked),size:"small"}),label:""})})]}),(0,r.jsx)(p.A,{variant:"caption",color:"text.secondary",children:"Estimate a partial palletâs height from the calculated pallet fraction and full-pallet height, including configured height padding."})]}),(0,r.jsxs)(I.A,{children:[(0,r.jsxs)(u.A,{direction:"row",alignItems:"center",justifyContent:"space-between",mb:1,children:[(0,r.jsx)(p.A,{variant:"body2",children:"Alcohol"}),"bulkEdit"===t?(0,r.jsx)(I.A,{sx:{width:180},children:(0,r.jsx)(Q.pq,{name:"isAlcohol",control:el,render:({field:e})=>(0,r.jsx)(q.A,{value:eP(e.value.action,e.value.value,ez,!1),onChange:t=>{"keep"===t?e.onChange({action:"keep",value:void 0}):"yes"===t?e.onChange({action:"set",value:!0}):"no"===t?e.onChange({action:"set",value:!1}):"none"===t&&e.onChange({action:"clear",value:void 0})},options:[...ez?[{label:"Keep",value:"keep"}]:[],{label:"Yes",value:"yes"},{label:"No",value:"no"}],fullWidth:!0})})}):(0,r.jsx)(Q.pq,{name:"isAlcohol.value",control:el,render:({field:e})=>(0,r.jsx)($.A,{control:(0,r.jsx)(V.A,{checked:e.value??!1,onChange:t=>e.onChange(t.target.checked),size:"small"}),label:""})})]}),(0,r.jsx)(p.A,{variant:"caption",color:"text.secondary",children:"Identify this item as alcohol for applicable carrier service requests."})]}),(0,r.jsxs)(I.A,{children:[(0,r.jsxs)(u.A,{direction:"row",alignItems:"center",justifyContent:"space-between",mb:1,children:[(0,r.jsx)(p.A,{variant:"body2",children:"Hazmat"}),"bulkEdit"===t?(0,r.jsx)(I.A,{sx:{width:180},children:(0,r.jsx)(Q.pq,{name:"isHazmat",control:el,render:({field:e})=>(0,r.jsx)(q.A,{value:eP(e.value.action,e.value.value,ez,!1),onChange:t=>{"keep"===t?e.onChange({action:"keep",value:void 0}):"yes"===t?e.onChange({action:"set",value:!0}):"no"===t?e.onChange({action:"set",value:!1}):"none"===t&&e.onChange({action:"clear",value:void 0})},options:[...ez?[{label:"Keep",value:"keep"}]:[],{label:"Yes",value:"yes"},{label:"No",value:"no"}],fullWidth:!0})})}):(0,r.jsx)(Q.pq,{name:"isHazmat.value",control:el,render:({field:e})=>(0,r.jsx)($.A,{control:(0,r.jsx)(V.A,{checked:e.value??!1,onChange:t=>e.onChange(t.target.checked),size:"small"}),label:""})})]}),(0,r.jsx)(p.A,{variant:"caption",color:"text.secondary",children:"Mark this item as hazardous on bills of lading. Saving with this enabled sets its hazard class to Unknown."})]})]})]}),(0,r.jsx)(z.A,{}),(0,r.jsxs)(I.A,{children:[(0,r.jsxs)(u.A,{direction:"row",alignItems:"center",justifyContent:"space-between",mb:1,children:[(0,r.jsx)(p.A,{variant:"subtitle1",fontWeight:600,children:"Reefer Settings"}),"bulkEdit"===t?(0,r.jsx)(I.A,{sx:{width:180},children:(0,r.jsx)(Q.pq,{name:"reeferSettings.action",control:el,render:({field:e})=>(0,r.jsx)(q.A,{value:e.value,onChange:e.onChange,options:[...e$?[{label:"Keep",value:"keep"}]:[],{label:eM,value:"set"},{label:eR,value:"clear"}],fullWidth:!0})})}):(0,r.jsx)(Q.pq,{name:"reeferSettings.action",control:el,render:({field:e})=>(0,r.jsx)($.A,{control:(0,r.jsx)(V.A,{checked:"set"===e.value,sx:{mr:3},onChange:t=>e.onChange(t.target.checked?"set":"clear"),size:"small"}),labelPlacement:"start",label:"Enabled"})})]}),(0,r.jsxs)(p.A,{variant:"caption",color:"text.secondary",children:["Save temperature limits, precooling temperature and cooling mode for quote defaults."," ","bulkEdit"===t?"Clear removes":"Turning this off removes"," these saved temperature settings when you save."]}
8),(0,r.jsx)(M.A,{in:"set"===eK,unmountOnExit:!0,children:(0,r.jsxs)(u.A,{spacing:2,sx:{pt:1},children:[(0,r.jsxs)(u.A,{direction:"row",spacing:2,alignItems:"center",children:[(0,r.jsx)(p.A,{variant:"body2",color:"text.secondary",children:"Temperature settings"}),(0,r.jsx)(L.A,{options:B,onSelect:e=>{ey("reeferSettings.value",{minTemperature:e.minTemperature,maxTemperature:e.maxTemperature,preCoolTemperature:e.preCoolTemperature,sentryMode:e.sentryMode??J.TJ.Continuous,unit:(0,eo.iX)(l)})},anchorText:"Use a default",formatOptionLabel:e=>e.label})]}),(0,r.jsxs)(u.A,{direction:"row",spacing:2,children:[(0,r.jsx)(Q.pq,{name:"reeferSettings.value.minTemperature",control:el,render:({field:e})=>(0,r.jsx)(W.P,{variant:"filled",label:"Min temp",size:"small",value:e.value??"",onChange:t=>{let i=parseInt(t.target.value);e.onChange(H().isFinite(i)?i:null)},InputProps:{endAdornment:(0,r.jsxs)(R.A,{position:"end",children:["\xb0",l?"C":"F"]})},sx:{width:120}})}),(0,r.jsx)(Q.pq,{name:"reeferSettings.value.maxTemperature",control:el,render:({field:e})=>(0,r.jsx)(W.P,{variant:"filled",label:"Max temp",size:"small",value:e.value??"",onChange:t=>{let i=parseInt(t.target.value);e.onChange(H().isFinite(i)?i:null)},InputProps:{endAdornment:(0,r.jsxs)(R.A,{position:"end",children:["\xb0",l?"C":"F"]})},sx:{width:120}})}),(0,r.jsx)(Q.pq,{name:"reeferSettings.value.preCoolTemperature",control:el,render:({field:e})=>(0,r.jsx)(W.P,{variant:"filled",label:"Precooling temp",size:"small",value:e.value??"",onChange:t=>{let i=parseInt(t.target.value);e.onChange(H().isFinite(i)?i:null)},InputProps:{endAdornment:(0,r.jsxs)(R.A,{position:"end",children:["\xb0",l?"C":"F"]})},sx:{width:150}})})]}),(0,r.jsxs)(u.A,{direction:"row",spacing:2,alignItems:"center",children:[(0,r.jsx)(p.A,{variant:"body2",color:"text.secondary",children:"Cooling mode"}),(0,r.jsx)(Q.pq,{name:"reeferSettings.value.sentryMode",control:el,render:({field:e})=>(0,r.jsx)(O.A,{row:!0,value:e.value||"",onChange:t=>e.onChange(t.target.value),children:H().map(J.TJ,e=>(0,r.jsx)($.A,{value:e,control:(0,r.jsx)(F.A,{size:"small"}),label:e},e))})})]})]})})]}),(0,r.jsx)(z.A,{}),(0,r.jsxs)(I.A,{children:[(0,r.jsxs)(u.A,{direction:"row",alignItems:"center",justifyContent:"space-between",mb:1,children:[(0,r.jsx)(p.A,{variant:"subtitle1",fontWeight:600,children:"Packaging Information"}),"bulkEdit"===t?(0,r.jsx)(I.A,{sx:{width:180},children:(0,r.jsx)(Q.pq,{name:"packaging.action",control:el,render:({field:e})=>(0,r.jsx)(q.A,{value:e.value,onChange:t=>{e.onChange(t),"set"===t&&0===ej.length?eA({type:J.al.pallet,weight:{value:0,unit:(0,eo.Gq)(l)},unitsPerParent:1}):"clear"===t&&ej.length>0&&ey("packaging.value",[])},options:[...eV?[{label:"Keep",value:"keep"}]:[],{label:eO,value:"set"},{label:eF,value:"clear"}],fullWidth:!0})})}):(0,r.jsx)(Q.pq,{name:"packaging.action",control:el,render:({field:e})=>(0,r.jsx)($.A,{control:(0,r.jsx)(V.A,{checked:"set"===e.value,sx:{mr:3},onChange:t=>{let i=t.target.checked?"set":"clear";e.onChange(i),"set"===i&&0===ej.length?eA({type:J.al.pallet,weight:{value:0,unit:(0,eo.Gq)(l)},unitsPerParent:1}):"clear"===i&&ej.length>0&&ey("packaging.value",[])},size:"small"}),labelPlacement:"start",label:"Enabled"})})]}),(0,r.jsxs)(p.A,{variant:"caption",color:"text.secondary",children:["Define packaging units, weights, dimensions and conversions used in quantity and weight calculations."," ","bulkEdit"===t?"Clear removes":"Turning this off removes"," the saved packaging units and their settings when you save."]}),"set"===eq&&(0,r.jsxs)(u.A,{spacing:2,sx:{pt:1,pl:2},children:[0===ej.length?(0,r.jsx)(p.A,{variant:"body2",color:"text.secondary",children:'No packaging items. Click "Add Packaging Unit" to add one.'}):(0,r.jsx)(u.A,{spacing:1.25,children:ej.map((e,t)=>(0,r.jsx)(ex,{index:t,control:el,setValue:ey,removeItem:eC,useMetricSystem:l},e.id))}),(0,r.jsx)(m.A,{color:"inherit",startIcon:(0,r.jsx)(j.A,{}),size:"small",onClick:()=>{let e=ej.map(e=>e.type),t=Object.values(J.al).filter(t=>!e.includes(t))[0];t?eA({type:t,weight:{value:0,unit:(0,eo.Gq)(l)},unitsPerParent:1}):(0,_.M8)("All packaging types are already in use",{variant:"warning"})},children:"Packaging Unit"})]})]}),("edit"===t||"bulkEdit"===t)&&eT&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(z.A,{}),(0,r.jsxs)(f.A,{severity:"info",children:[(0,r.jsx)(p.A,{variant:"body2",fontWeight:600,gutterBottom:!0,children:"Changes to apply:"}),(0,r.jsx)(I.A,{component:"ul",sx:{m:0,pl:2},children:eI.map((e,t)=>(0,r.jsx)("li",{children:(0,r.jsx)(p.A,{variant:"body2",children:e})},t))})]})]})]})}
8),(0,r.jsxs)(K.A,{sx:{px:3,py:2},children:[(0,r.jsx)(m.A,{color:"inherit",variant:"text",onClick:a,children:"Cancel"}),(0,r.jsx)(C.A,{type:"submit",variant:"contained",loading:A,disabled:"bulkEdit"===t&&!eT,children:"create"===t?"Create":"bulkEdit"===t?`Apply to ${n?.length||0} Items`:"Update"})]})]})})})}function ep({name:e,label:t,control:i,multiline:n,showKeep:a,clearLabel:l}){let s=(0,G.FH)({name:`${e}.action`,control:i});return(0,r.jsxs)(I.A,{children:[(0,r.jsxs)(u.A,{direction:"row",alignItems:"center",justifyContent:"space-between",mb:1,children:[(0,r.jsx)(p.A,{variant:"body2",children:t}),(0,r.jsx)(I.A,{sx:{width:180},children:(0,r.jsx)(Q.pq,{name:`${e}.action`,control:i,render:({field:e})=>(0,r.jsx)(q.A,{value:e.value,onChange:e.onChange,options:[...a?[{label:"Keep",value:"keep"}]:[],{label:"Set",value:"set"},{label:l,value:"clear"}],fullWidth:!0})})})]}),(0,r.jsx)(M.A,{in:"set"===s,unmountOnExit:!0,children:(0,r.jsx)(Q.pq,{name:`${e}.value`,control:i,render:({field:e})=>(0,r.jsx)(h.A,{...e,value:e.value||"",fullWidth:!0,size:"small",variant:"filled",placeholder:`Enter ${t.toLowerCase()}...`,multiline:n,rows:n?2:1})})})]})}function eg({name:e,label:t,control:i,options:n,showKeep:a,clearLabel:l}){let s=(0,G.FH)({name:`${e}.action`,control:i});return(0,r.jsxs)(I.A,{children:[(0,r.jsxs)(u.A,{direction:"row",alignItems:"center",justifyContent:"space-between",mb:1,children:[(0,r.jsx)(p.A,{variant:"body2",children:t}),(0,r.jsx)(I.A,{sx:{width:180},children:(0,r.jsx)(Q.pq,{name:`${e}.action`,control:i,render:({field:e})=>(0,r.jsx)(q.A,{value:e.value,onChange:e.onChange,options:[...a?[{label:"Keep",value:"keep"}]:[],{label:"Set",value:"set"},{label:l,value:"clear"}],fullWidth:!0})})})]}),(0,r.jsx)(M.A,{in:"set"===s,unmountOnExit:!0,children:(0,r.jsx)(Q.pq,{name:`${e}.value`,control:i,render:({field:e})=>(0,r.jsxs)(E.A,{...e,value:e.value||"",fullWidth:!0,size:"small",variant:"filled",displayEmpty:!0,children:[(0,r.jsxs)(N.A,{value:"",disabled:!0,children:["Select ",t.toLowerCase(),"..."]}),n.map(e=>(0,r.jsx)(N.A,{value:e.value,children:e.label},e.value))]})})})]})}function ex({index:e,control:t,setValue:i,removeItem:n,useMetricSystem:a}){let l=(0,G.FH)({control:t,name:`packaging.value.${e}.type`}),s=(0,G.FH)({control:t,name:`packaging.value.${e}.weight`}),o=(0,G.FH)({control:t,name:`packaging.value.${e}.parentPackaging`}),c=(0,G.FH)({control:t,name:"packaging.value"})||[],{errors:d}=(0,G.lN)({control:t,name:`packaging.value.${e}.unitsPerParent`}),u=d.packaging?.value?.[e]?.unitsPerParent,h=`packaging-${e}-quantity-error`,m=l===J.al.pallet,g=H().values(J.al),y=H()(c).filter((t,i)=>i!==e).map("type").compact().value();return(0,Y.useEffect)(()=>{s&&!s.unit&&i(`packaging.value.${e}.weight.unit`,(0,eo.Gq)(a))},[s,e,a,i]),(0,Y.useEffect)(()=>{m&&(i(`packaging.value.${e}.parentPackaging`,void 0),i(`packaging.value.${e}.unitsPerParent`,void 0))},[m,e,i]),(0,r.jsxs)(I.A,{sx:{position:"relative",border:"1px solid",borderColor:"divider",borderRadius:1,p:1.5},children:[(0,r.jsx)(p.A,{variant:"subtitle2",sx:{mb:1.5},children:"Packaging Item"}),(0,r.jsx)(x.A,{size:"small",onClick:()=>n(e),sx:{position:"absolute",top:8,right:8},children:(0,r.jsx)(A.A,{fontSize:"small",color:"disabled"})}),(0,r.jsxs)(T.Ay,{container:!0,spacing:1,sx:{alignItems:"flex-end"},children:[(0,r.jsx)(T.Ay,{item:!0,xs:4,sm:2,children:(0,r.jsx)(I.A,{children:(0,r.jsx)(Q.pq,{name:`packaging.value.${e}.type`,control:t,rules:{required:"Required",validate:{noDuplicate:e=>!H().includes(y,e)||"This type already exists"}},render:({field:e,fieldState:t})=>(0,r.jsxs)(U.A,{variant:"filled",error:!!t.error,fullWidth:!0,size:"small",children:[(0,r.jsx)(P.A,{children:"Type"}),(0,r.jsx)(E.A,{...e,children:g.map(e=>(0,r.jsx)(N.A,{value:e,children:H().startCase(e)},e))}),t.error&&(0,r.jsx)(v.A,{children:t.error.message})]})})})}),(0,r.jsx)(T.Ay,{item:!0,xs:4,sm:2,children:m?(0,r.jsx)(I.A,{}):(0,r.jsx)(I.A,{children:(0,r.jsx)(Q.pq,{name:`packaging.value.${e}.parentPackaging`,control:t,render:({field:e,fieldState:t})=>(0,r.jsxs)(U.A,{variant:"filled",error:!!t.error,fullWidth:!0,size:"small",children:[(0,r.jsx)(P.A,{children:"Parent Packaging"}),(0,r.jsx)(E.A,{...e,value:e.value||"",children:H().filter(g,e=>e!==l).map(e=>(0,r.jsx)(N.A,{value:e,children:H().startCase(e)},e))}),t.error&&(0,r.jsx)(v.A,{children:t.error.message})]})})})}),(0,r.jsx)(T.Ay,{item:!0,xs:4,sm:2,children:!m&&(0,r.jsx)(I.A,{children:(0,r.jsx)(Q.pq,{name:`packaging.value.${e}.unitsPerParent`,control:t,rules:{validate:(t,i)=>{var n,a;let r=i.packaging?.value?.[e];return r?.type===J.al.pallet||(!H().isNumber(t)&&H().isEmpty(t)?!r?.parentPackaging||(n=r.type,a=r.parentPackaging,`${H().startCase(n)} packaging has ${H().startCase(a)} as its parent. Enter a value, then save again.`):"number"==typeof t&&Number.isFinite(t)&&t>0||"Enter a number greater than 0. Decimal values are allowed.")}},render:({field:e,fieldState:t})=>(0,r.jsx)(W.P,{...e,label:"Units Per Parent",required:!!o,disabled:!o,variant:"filled",fullWidth:!0,size:"small",value:e.value??"",onChange:t=>{let i=(0,el.ay)(t.target.value);e.onChange(H().isFinite(i)?i:"")},error:!!t.error,inputProps:{step:"any","aria-describedby":t.error?h:void 0}})})})}),(0,r.jsx)(T.Ay,{item:!0,xs:4,sm:2,children:(0,r.jsx)(I.A,{children:(0,r.jsx)(Q.pq,{name:`packaging.value.${e}.weight.value`,control:t,render:({field:e,fieldState:t})=>(0,r.jsx)(W.P,{...e,label:"Weight",variant:"filled",fullWidth:!0,size:"small",value:e.value??"",onChange:t=>{let i=parseFloat(t.target.value);e.onChange(H().isFinite(i)?i:null)},error:!!t.error,helperText:t.error?.message,InputProps:{endAdornment:(0,r.jsx)(R.A,{position:"end",children:(0,eo.Gq)(a)})}})})})}),(0,r.jsx)(T.Ay,{item:!0,xs:4,sm:4,children:(0,r.jsx)(I.A,{children:(0,r.jsx)(Q.pq,{name:`packaging.value.${e}.dimensions`,control:t,render:({field:e,fieldState:t})=>(0,r.jsx)(B.Q,{value:e.value,onChange:t=>{e.onChange({...t,unit:(0,eo.wL)(a)})},unit:(0,eo.wL)(a),error:!!t.error,helperText:t.error?.message,label:"Dimensions (L \xd7 W \xd7 H)",size:"small",allowDecimals:!m})})})})]}),!m&&o&&u?.message&&(0,r.jsx)(f.A,{id:h,severity:"error",sx:{mt:1.5},children:u.message})]})}var ev=i(50655),ef=i(16015),ey=i(52020),eb=i(95782),ej=i(78221),eA=i(93708),eC=i(18664),ew=i(9236),eS=i(38388),ek=i(4862
81),eI=i(63809),eT=i(79219),eU=i(3221),eP=i(62727),eE=i(1508),eN=i(24868),ez=i(4454),e$=i(74725),eV=i(93212),eM=i(26086),eR=i(30766),eO=i(64382),eF=i(27874),eK=i(7746),eq=i(13630);let eB=Object.values(J.al).join(", "),eW=Object.values(J.se).join(", "),eL="Yes/No, True/False, or 1/0",eD=[{column:"SKU",required:!0,meaning:"Unique item identifier. Existing SKUs are updated; new SKUs are created.",format:"Text; one row per SKU"},{column:"Name",required:!1,meaning:"Display name for the item.",format:"Text"},{column:"Description",required:!1,meaning:"Description of the item.",format:"Text"},{column:"NMFC",required:!1,meaning:"National Motor Freight Classification item code.",format:"Text"},{column:"HS Code",required:!1,meaning:"Harmonized System tariff code.",format:"Text"},{column:"GTIN-12",required:!1,meaning:"Global Trade Item Number used as the item UPC.",format:"11, 12, or 14 digits"},{column:"<Unit> per <Parent Unit>",required:!1,meaning:"Packaging conversion, such as Each per Case or Case per Pallet.",format:`Positive number; units: ${eB}`},{column:"<Unit> Weight",required:!1,meaning:"Weight of one packaging unit, such as Case Weight.",format:`Non-negative number; ${J.kw.lb} for US settings or ${J.kw.kg} for metric settings`},{column:"Preferred BOL UOM",required:!1,meaning:"Unit of measure shown for this item on bills of lading.",format:eB},{column:"Min Temperature",required:!1,meaning:"Lowest allowed item temperature.",format:"Number without a unit suffix, for example 10"},{column:"Max Temperature",required:!1,meaning:"Highest allowed item temperature.",format:"Number without a unit suffix, for example 40"},{column:"Pre Cool Temperature",required:!1,meaning:"Required trailer pre-cool temperature.",format:"Number without a unit suffix, for example 10"},{column:"Temperature Unit",required:!1,meaning:"Unit applied to all uploaded temperature values. Defaults to the organization measurement setting.",format:eW},{column:"Pallet Length",required:!1,meaning:"Pallet length in the organization measurement system.",format:"Positive number; inches for US settings or centimeters for metric settings"},{column:"Pallet Width",required:!1,meaning:"Pallet width in the organization measurement system.",format:"Positive number; required with pallet length and height"},{column:"Pallet Height",required:!1,meaning:"Pallet height in the organization measurement system.",format:"Positive number; required with pallet length and width"},{column:"Hazmat",required:!1,meaning:"Marks the item as hazardous material.",format:"True to mark as hazmat; leave blank otherwise"},{column:"Is Stackable",required:!1,meaning:"Whether freight can be stacked on this item.",format:eL},{column:"Is Turnable",required:!1,meaning:"Whether the item can be turned when loaded.",format:eL},{column:"Dedicated Pallet Only",required:!1,meaning:"Whether this item must use its own pallet.",format:eL},{column:"Exclude from packaging calculations",required:!1,meaning:"Exclude from calculated quote weight and pallets while retaining SKU details and cargo value. Blank preserves the existing setting.",format:eL},{column:"Calculate Pallet Height",required:!1,meaning:"Whether Owlery calculates pallet height from the packaging hierarchy.",format:eL}];function eH(){return(0,r.jsxs)(I.A,{sx:{mt:1},children:[(0,r.jsx)(p.A,{variant:"caption",color:"text.secondary",children:"Scroll the column guide to see all template fields."}),(0,r.jsx)(eE.A,{sx:{maxHeight:280,border:"1px solid",borderColor:"divider",borderRadius:1,mt:.5},children:(0,r.jsxs)(eN.A,{size:"small",stickyHeader:!0,children:[(0,r.jsx)(ez.A,{children:(0,r.jsxs)(e$.A,{children:[(0,r.jsx)(eV.A,{children:"Column"}),(0,r.jsx)(eV.A,{children:"Required"}),(0,r.jsx)(eV.A,{children:"Meaning"}),(0,r.jsx)(eV.A,{children:"Accepted values / format"})]})}),(0,r.jsx)(eM.A,{children:eD.map(e=>(0,r.jsxs)(e$.A,{children:[(0,r.jsx)(eV.A,{sx:{whiteSpace:"nowrap"},children:e.column}),(0,r.jsx)(eV.A,{children:e.required?"Yes":"No"}),(0,r.jsx)(eV.A,{children:e.meaning}),(0,r.jsx)(eV.A,{children:e.format})]},e.column))})]})})]})}function e_({open:e,onClose:t,rows:i,filename:n,result:a,isValidating:l,clearEmptyFields:s,onClearEmptyFieldsChange:c,onConfirm:d,onAttachFile:u,onRemoveFile:h,uploadError:g,onUploadError:v}){let[y,b]=Y.useState("validation"),[j,C]=Y.useState(),[T,P]=Y.useState(!1);Y.useEffect(()=>{e&&!n&&(b("validation"),C(void 0))},[n,e]),Y.useEffect(()=>{a&&P(!1)},[a]);let E=Y.useMemo(()=>a?.errors?a.errors.map(e=>({severity:"error",message:e.error,rowId:(e.row-1).toString(),column:e.field,itemName:`Error in row ${e.row}${e.field?`, column ${e.field}`:""}`})):[],[a?.errors]),N=Y.useMemo(()=>a?.validRowNumbers&&i.length?a.validRowNumbers.map(e=>(e-1).toString()):[],[a?.validRowNumbers,i.length]),z=Y.useMemo(()=>a?.ignoredRowNumbers&&i.length?a.ignoredRowNumbers.map(e=>(e-1).toString()):[],[a?.ignoredRowNumbers,i.length]),V=(a?.errors?.length??0)>0,M=(a?.processedCount??0)>0,R=a?.ignoredRowNumbers?.length??0,q=Y.useMemo(()=>(function(e){let t=/^Duplicate SKU \(also appears in row (\d+)\)$/,i={},n=e=>{if("string"==typeof e)return e;if(e&&"object"==typeof e&&"message"in e){let t=e.message;if("string"==typeof t&&t)return t}return"Unknown CSV validation error"},a=(e,t,n,a,r)=>{i[e]||(i[e]={title:t,description:n,count:0,firstRow:a,lines:[]}),i[e].count++,i[e].lines.push(r)};for(let i of e){let e=n(i.error),r=e.match(t);if(r){let[,e]=r;a("duplicate-sku","Duplicate SKUs in this CSV","This upload updates item details, so each row is treated as the update for one SKU. If the same SKU appears on multiple item-detail rows, those rows could send conflicting values for the same item. Combine those item-detail changes into one row per SKU. Variant mappings are different: one base SKU can have multiple variant rows.",i.row,`${i.identifier||"SKU"} in rows ${e} and ${i.row}`);continue}a(e,e,void 0,i.row,`Row ${i.row||"N/A"}${i.identifier?` (SKU: ${i.identifier})`:""}`)}return Object.values(i)})(a?.errors??[]),[a?.errors]),B=!!a&&M,W=q.some(e=>e.lines.length>5),L=q.length>5||W;return(0,r.jsxs)(w.A,{open:e,onClose:t,maxWidth:"lg",fullWidth:!0,children:[(0,r.jsxs)(S.A,{s
8x:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[(0,r.jsxs)(I.A,{children:[(0,r.jsx)(p.A,{variant:"h6",children:"Upload Item Master CSV"}),n&&(0,r.jsx)(p.A,{variant:"caption",color:"text.secondary",children:n})]}),(0,r.jsx)(x.A,{"aria-label":"close",onClick:t,sx:{color:e=>e.palette.grey[500]},children:(0,r.jsx)(A.A,{})})]}),(0,r.jsxs)(k.A,{children:[(0,r.jsxs)(f.A,{icon:(0,r.jsx)(o.A,{}),sx:{mb:2,backgroundColor:"background.neutral","& .MuiAlert-icon":{color:"grey.600"}},children:[(0,r.jsx)(eR.A,{children:"CSV Format Requirements"}),(0,r.jsxs)(I.A,{component:"ul",sx:{m:0,pl:2.5},children:[(0,r.jsx)(p.A,{component:"li",variant:"body2",color:"text.secondary",children:"SKU is required and must appear only once in the file; all other fields are optional."}),(0,r.jsx)(p.A,{component:"li",variant:"body2",color:"text.secondary",children:"Download the Item Master template first so column names match the units and optional settings you need."}),(0,r.jsx)(p.A,{component:"li",variant:"body2",color:"text.secondary",children:"Blank cells keep existing values unless you choose Erase existing data after validation."})]}),(0,r.jsx)(eH,{})]}),(0,r.jsxs)(I.A,{sx:{mb:2},children:[(0,r.jsx)(eK.A,{onAttachFile:u,onError:v,accept:".csv",showSizeLimit:!1,disabled:l,tip:"Drag 'n' drop an Item Master CSV here, or click to select a file",overrideStyles:{maxWidth:"none",p:3,borderRadius:1},selectedFile:n?{name:n}:void 0,selectedFileDescription:i.length>0?`${i.length} row${1===i.length?"":"s"} ready to validate.`:void 0,onRemoveFile:n?h:void 0}),g&&(0,r.jsx)(p.A,{variant:"body2",color:"error",sx:{mt:1},children:g})]}),l?(0,r.jsxs)(I.A,{display:"flex",justifyContent:"center",alignItems:"center",minHeight:"200px",children:[(0,r.jsx)(eO.A,{}),(0,r.jsx)(p.A,{variant:"body1",sx:{ml:2},children:"Validating CSV file..."})]}):a?(0,r.jsxs)(eT.Ay,{value:y,children:[(0,r.jsx)(I.A,{sx:{borderBottom:1,borderColor:"divider"},children:(0,r.jsxs)(eU.A,{onChange:(e,t)=>
8b(t),"aria-label":"CSV upload tabs",children:[(0,r.jsx)(eF.A,{value:"validation",label:`Validation (${a.processedCount}/${a.totalRows})`}),(0,r.jsx)(eF.A,{value:"csv",label:`CSV Preview (${i.length} rows)`})]})}),(0,r.jsxs)(eP.A,{value:"validation",sx:{marginTop:2},children:[(0,r.jsx)(p.A,{variant:"body1",gutterBottom:!0,children:a.message}),(0,r.jsxs)(p.A,{variant:"body2",color:"text.secondary",gutterBottom:!0,children:["Total Rows: ",a.totalRows]}),M&&(0,r.jsx)(f.A,{severity:"success",variant:"outlined",sx:{mb:3},children:(0,r.jsxs)(p.A,{variant:"body2",children:[a.processedCount," item",1===a.processedCount?"":"s"," ",1===a.processedCount?"is":"are"," valid and will be processed."]})}),R>0&&(0,r.jsx)(f.A,{severity:"info",variant:"outlined",sx:{mb:3},children:(0,r.jsxs)(p.A,{variant:"body2",children:[R," row",1===R?"":"s"," ",1===R?"has":"have"," a SKU but no update data and will be skipped."]})}),V&&(0,r.jsxs)(I.A,{mb:3,children:[(0,r.jsx)(p.A,{variant:"subtitle1",gutterBottom:!0,children:"Errors"}),(0,r.jsxs)(f.A,{severity:"error",variant:"outlined",children:[(0,r.jsx)(eR.A,{children:"These rows with invalid data will be skipped."}),(T?q:q.slice(0,5)).map((e,t)=>(0,r.jsxs)(I.A,{mb:1,children:[(0,r.jsxs)(p.A,{variant:"body2",fontWeight:"medium",children:[e.title," (",e.count,")"]}),e.description&&(0,r.jsx)(p.A,{variant:"body2",sx:{mb:.5},children:e.description}),e.lines.slice(0,T?e.lines.length:5).map((e,t)=>(0,r.jsx)(p.A,{variant:"body2",sx:{ml:1},children:e},t)),!T&&e.lines.length>5&&(0,r.jsxs)(p.A,{variant:"caption",sx:{ml:1},children:[e.lines.length-5," more"]}),e.firstRow&&(0,r.jsx)(m.A,{size:"small",variant:"text",onClick:()=>{b("csv"),C((e.firstRow-1).toString())},sx:{minWidth:"auto",p:.5,textDecoration:"underline","&:hover":{textDecoration:"underline",backgroundColor:"transparent"}},children:"View in CSV"})]},t)),L&&(0,r.jsx)(I.A,{mt:1,children:(0,r.jsx)(m.A,{size:"small",variant:"text",color:"error",onClick:()=>P(!T),sx:{ml:2},children:T?"Show less":"Show all errors"})})]})]}),(0,r.jsxs)(I.A,{mt:2,children:[(0,r.jsx)(p.A,{variant:"subtitle1",gutterBottom:!0,children:"How should we handle empty fields in the CSV?"}),(0,r.jsx)(U.A,{component:"fieldset",sx:{mb:2},children:(0,r.jsxs)(O.A,{value:s.toString(),onChange:e=>c("true"===e.target.value),children:[(0,r.jsx)($.A,{value:"false",control:(0,r.jsx)(F.A,{}),label:(0,r.jsxs)(I.A,{children:[(0,r.jsx)(p.A,{variant:"body2",fontWeight:"medium",children:"Keep existing data"}),(0,r.jsx)(p.A,{variant:"caption",color:"text.secondary",children:"If a cell is blank in your CSV, we will leave whatever was there before. Nothing changes."})]})}),(0,r.jsx)($.A,{value:"true",control:(0,r.jsx)(F.A,{}),label:(0,r.jsxs)(I.A,{children:[(0,r.jsx)(p.A,{variant:"body2",fontWeight:"medium",children:"Erase existing data"}),(0,r.jsx)(p.A,{variant:"caption",color:"text.secondary",children:"If a cell is blank in your CSV, we will delete whatever was saved there before."})]})})]})})]})]}),(0,r.jsxs)(eP.A,{value:"csv",sx:{marginTop:2},children:[(0,r.jsx)(eq.H,{rows:i,exceptions:E,processedRowIds:N,ignoredRowIds:z,ignoredRowHoverText:"This row was ignored (no update data provided)"}),j?(0,r.jsx)(I.A,{mt:1,children:(0,r.jsxs)(p.A,{variant:"caption",color:"text.secondary",children:["Focused row: ",Number.parseInt(j)+1]})}):null]})]}):null]}),(0,r.jsxs)(K.A,{children:[(0,r.jsx)(m.A,{onClick:t,variant:"text",color:"inherit",children:"Cancel"}),(0,r.jsx)(m.A,{onClick:d,color:"primary",variant:"contained",disabled:l||!B||!n,children:l?"Validating...":`Submit Items (${a?.processedCount??0} items)`})]})]})}function eY({open:e,onClose:t,rows:i,filename:n,result:a,isValidating:l,onConfirm:s}){let[c,d]=Y.useState("validation"),[u,h]=Y.useState(),[g,v]=Y.useState(!1);Y.useEffect(()=>{a&&v(!1)},[a]);let y=(a?.errors?.length??0)>0,b=(a?.processedCount??0)>0,j=!!a&&b&&!l,C=Y.useMemo(()=>a?.errors?a.errors.map(e=>({severity:"error",message:e.error,rowId:(e.row-1).toString(),column:e.field,itemName:`Error in row ${e.row}${e.field?`, column ${e.field}`:""}`})):[],[a?.errors]),T=Y.useMemo(()=>a?.validRowNumbers&&i.length?a.validRowNumbers.map(e=>(e-1).toString()):[],[a?.validRowNumbers,i.length]),U=Y.useMemo(()=>a?.preview?a.preview.map((e,t)=>({id:t.toString(),rowNumber:e.rowNumber,inventoryItemId:e.inventoryItemId,oldSku:e.oldSku,newSku:e.newSku,currentName:e.currentName??"",newName:e.newName??"",currentDescription:e.currentDescription??"",newDescription:e.newDescription??""})):[],[a?.preview]);return(0,r.jsxs)(w.A,{open:e,onClose:t,maxWidth:"lg",fullWidth:!0,children:[(0,r.jsxs)(S.A,{s
8x:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[(0,r.jsxs)(I.A,{children:[(0,r.jsx)(p.A,{variant:"h6",children:"Confirm Bulk Re-SKU"}),(0,r.jsx)(p.A,{variant:"caption",color:"text.secondary",children:n})]}),(0,r.jsx)(x.A,{"aria-label":"close",onClick:t,sx:{color:e=>e.palette.grey[500]},children:(0,r.jsx)(A.A,{})})]}),(0,r.jsx)(k.A,{children:l?(0,r.jsxs)(I.A,{display:"flex",justifyContent:"center",alignItems:"center",minHeight:"200px",children:[(0,r.jsx)(eO.A,{}),(0,r.jsx)(p.A,{variant:"body1",sx:{ml:2},children:"Validating CSV file..."})]}):a?(0,r.jsxs)(eT.Ay,{value:c,children:[(0,r.jsx)(I.A,{sx:{borderBottom:1,borderColor:"divider"},children:(0,r.jsxs)(eU.A,{onChange:(e,t)=>d(t),"aria-label":"CSV upload tabs",children:[(0,r.jsx)(eF.A,{value:"validation",label:`Validation (${a.processedCount}/${a.totalRows})`}),(0,r.jsx)(eF.A,{value:"preview",label:`Will Update (${U.length})`}),(0,r.jsx)(eF.A,{value:"csv",label:`CSV Preview (${i.length} rows)`})]})}),(0,r.jsxs)(eP.A,{value:"validation",sx:{marginTop:2},children:[(0,r.jsx)(p.A,{variant:"body1",gutterBottom:!0,children:a.message}),(0,r.jsxs)(p.A,{variant:"body2",color:"text.secondary",gutterBottom:!0,children:["Total Rows: ",a.totalRows]}),b&&(0,r.jsx)(f.A,{severity:"success",variant:"outlined",sx:{mb:3},children:(0,r.jsxs)(p.A,{variant:"body2",children:[a.processedCount," item",1===a.processedCount?"":"s"," ",1===a.processedCount?"is":"are"," valid and will be updated on confirm."]})}),y&&(0,r.jsxs)(I.A,{mb:3,children:[(0,r.jsx)(p.A,{variant:"subtitle1",gutterBottom:!0,children:"Issues"}),(0,r.jsxs)(f.A,{severity:"error",variant:"outlined",children:[(0,r.jsx)(eR.A,{children:"These rows will be skipped."}),(0,r.jsx)("ul",{style:{margin:0,paddingLeft:"20px"},children:(g?a.errors:a.errors.slice(0,5)).map((e,t)=>(0,r.jsx)("li",{children:(0,r.jsxs)(p.A,{variant:"body2",component:"span",children:["Row ",e.row||"N/A",": ",e.error,e.identifier&&` (SKU: ${e.identifier})`,e.field&&(0,r.jsx)(m.A,{size:"small",variant:"text",onClick:()=>{d("csv"),h((e.row-1).toString())},sx:{ml:1,minWidth:"auto",p:.5,verticalAlign:"baseline",fontSize:"inherit",lineHeight:"inherit",color:"inherit",textDecoration:"underline","&:hover":{textDecoration:"underline",backgroundColor:"transparent"}},children:"View in CSV"})]})},t))}),a.errors.length>5&&(0,r.jsx)(I.A,{mt:1,children:(0,r.jsx)(m.A,{size:"small",variant:"text",color:"error",onClick:()=>v(!g),sx:{ml:2},children:g?"Show less":`Show all ${a.errors.length} issues`})})]})]}),(0,r.jsxs)(f.A,{icon:(0,r.jsx)(o.A,{}),sx:{backgroundColor:"background.neutral","& .MuiAlert-icon":{color:"grey.600"}},children:[(0,r.jsx)(eR.A,{children:"CSV Format Requirements"}),(0,r.jsx)(I.A,{children:(0,r.jsxs)("ul",{style:{margin:0,paddingLeft:"20px"},children:[(0,r.jsx)("li",{children:(0,r.jsx)(p.A,{variant:"body2",color:"text.secondary",component:"span",children:"Column 1: Old SKU (required)"})}),(0,r.jsx)("li",{children:(0,r.jsx)(p.A,{variant:"body2",color:"text.secondary",component:"span",children:"Column 2: New SKU (required)"})}),(0,r.jsx)("li",{children:(0,r.jsx)(p.A,{variant:"body2",color:"text.secondary",component:"span",children:"Column 3: Name (optional, only updates if provided)"})}),(0,r.jsx)("li",{children:(0,r.jsx)(p.A,{variant:"body2",color:"text.secondary",component:"span",children:"Column 4: Description (optional, only updates if provided)"})})]})})]})]}),(0,r.jsx)(eP.A,{value:"preview",sx:{marginTop:2},children:(0,r.jsx)(eq.H,{rows:U,showToolbar:H().size(U)>1})}),(0,r.jsxs)(eP.A,{value:"csv",sx:{marginTop:2},children:[(0,r.jsx)(eq.H,{rows:i,exceptions:C,processedRowIds:T}),u?(0,r.jsx)(I.A,{mt:1,children:(0,r.jsxs)(p.A,{variant:"caption",color:"text.secondary",children:["Focused row: ",Number.parseInt(u)+1]})}):null]})]}):(0,r.jsx)(I.A,{py:2,children:(0,r.jsx)(p.A,{variant:"body2",color:"text.secondary",children:"No validation result available."})})}),(0,r.jsxs)(K.A,{children:[(0,r.jsx)(m.A,{onClick:t,variant:"text",color:"inherit",children:"Cancel"}),(0,r.jsx)(m.A,{onClick:s,color:"primary",variant:"contained",disabled:!j,children:`Confirm (${a?.processedCount??0} items)`})]})]})}var eG=i(61768),eQ=i(27153);function eX({open:e,onClose:t,rows:i,filename:n,result:a,isValidating:l,isSubmitting:s=!1,onConfirm:c}){let[d,u]=(0,Y.useState)("validation"),[h,g]=(0,Y.useState)(),[v,y]=(0,Y.useState)(!1),[b,j]=(0,Y.useState)(eG.OE.Add);(0,Y.useEffect)(()=>{e&&(u("validation"),j(eG.OE.Add))},[e]),(0,Y.useEffect)(()=>{a&&y(!1)},[a]);let T=(0,Y.useMemo)(()=>!a?.errors||H().isEmpty(i)?[]:H()(a.errors).filter(e=>b!==eG.OE.Replace||e.errorType!==eG.KO.Duplicate).map(e=>({severity:"error",message:e.error,rowId:(e.row-1).toString(),row:e.row,column:e.field,identifier:e.identifier,itemName:`Error in row ${e.row}${e.field?`, column ${e.field}`:""}`}
8)).value(),[a?.errors,i,b]),P=(0,Y.useMemo)(()=>!a?.warnings||H().isEmpty(i)?[]:H()(a.warnings).map(e=>({severity:"warning",message:e.error,rowId:(e.row-1).toString(),row:e.row,column:e.field,identifier:e.identifier,itemName:`Warning in row ${e.row}${e.field?`, column ${e.field}`:""}`})).value(),[a?.warnings,i]),E=(0,Y.useMemo)(()=>(function(e){let t=/^Variant SKU (.+) is used for multiple base SKUs: (.+) in row (\d+) and (.+) in this row$/,i=/^Duplicate variant config found for the same facility email domain in row (\d+)$/,n=/^Duplicate variant config found in row (\d+)$/,a=/^Variant SKU (.+) already has a conversion for facility email domain (.+)\. Choose Replace existing variants to overwrite the existing conversion, or remove this row to keep the current setup\.$/,r=/^Variant SKU is already linked to another base SKU$/,l=/^SKU (.+) is already used as a variant SKU and cannot be used as a base SKU$/,s=/^SKU (.+) is already used as a base SKU and cannot be used as a variant SKU$/,o=/^(.+) does not have a facility profile$/,c={},d=(e,t,i,n,a,r)=>{c[e]||(c[e]={title:t,description:i,action:n,count:0,firstRowId:a,lines:[]}),c[e].count++,c[e].lines.push(r)};for(let c of e){let e=c.message.match(t);if(e){let[,t,i,n,a]=e;d("variant-multiple-base-skus","Variant SKUs assigned to multiple base SKUs","A variant SKU can only belong to one base SKU. The same variant cannot represent different base items in the same upload.","Choose the correct base SKU for each listed variant SKU, then remove or update the rows that point that variant SKU at another base SKU.",c.rowId,`${t}: ${i} in row ${n}; ${a} in row ${c.row}`);continue}let u=c.message.match(i);if(u){let[,e]=u;d("duplicate-facility-email-domain","Multiple variant rows for the same base SKU and facility email domain","For a given base SKU and facility email domain, Owlery can only use one facility-specific variant configuration.","Keep the one row that should apply for that base SKU and facility email domain, or split the rows by using different facility email domains.",c.rowId,`Rows ${e} and ${c.row}${c.identifier?` (${c.identifier})`:""}`);continue}let h=c.message.match(n);if(h){let[,e]=h;d("duplicate-variant-config","Duplicate variant rows","These rows repeat the same base SKU, variant SKU, and facility email domain combination.","Keep one copy of each repeated variant row and remove the duplicates.",c.rowId,`Rows ${e} and ${c.row}${c.identifier?` (${c.identifier})`:""}`);continue}let m=c.message.match(a);if(m){let[,e,t]=m;d("existing-facility-conversion","Variant conversions already exist","These rows would add a facility-specific conversion that already exists in Owlery. Add mode will not overwrite existing conversions.","Choose Replace existing variants to overwrite the existing conversion, or remove these rows to keep the current setup.",c.rowId,`${e}: existing conversion for ${t} in row ${c.row}`);continue}if(r.test(c.message)){d("variant-linked-to-other-base","Variant SKUs already linked to another base SKU","These variant SKUs are already connected to a different base item in Owlery.","Use Replace existing variants if you intend to move them to the base SKU in this file, or remove these rows to leave the existing links unchanged.",c.rowId,`Row ${c.row}${c.identifier?` (${c.identifier})`:""}`);continue}let p=c.message.match(l);if(p){let[,e]=p;d("sku-used-as-base-and-variant","SKUs used as both base and variant items","A SKU cannot be both a base item and a variant item in the same variant hierarchy.","Decide whether each listed SKU should be a base SKU or a variant SKU, then update the rows so it only appears in that one role.",c.rowId,`${e}: used as a base SKU in row ${c.row}, but also appears as a variant SKU elsewhere`);continue}let g=c.message.match(s);if(g){let[,e]=g;d("sku-used-as-base-and-variant","SKUs used as both base and variant items","A SKU cannot be both a base item and a variant item in the same variant hierarchy.","Decide whether each listed SKU should be a base SKU or a variant SKU, then update the rows so it only appears in that one role.",c.rowId,`${e}: used as a variant SKU in row ${c.row}, but also appears as a base SKU elsewhere`);continue}if("Base SKU is already a variant item"===c.message){d("base-sku-is-variant","Base SKUs are already variant items","These rows use a SKU as the base item, but that SKU is already configured as a variant of another item.","Choose a true base SKU for these rows, or change the existing item hierarchy before importing.",c.rowId,`Row ${c.row}${c.identifier?` (${c.identifier})`:""}`);continue}if("Base SKU already has a conversion"===c.message){d("base-sku-has-conversion","Base SKUs already have conversions","These rows use a SKU as the base item, but that SKU already has conversion records and cannot also act as a base in this import.","Use a different base SKU or clean up the existing conversions before importing these rows.",c.rowId,`Row ${c.row}${c.identifier?` (${c.identifier})`:""}`);continue}if("Base SKU and variant SKU are the same"===c.message){d("same-base-and-variant-sku","Base SKU and variant SKU are the same","A variant row must map one base SKU to a different variant SKU.","Change the Variant SKU to the alternate SKU, or remove the row if no variant mapping is needed.",c.rowId,`Row ${c.row}${c.identifier?` (${c.identifier})`:""}`);continue}let x=c.message.match(o);if(x){let[,e]=x;d("missing-facility-profile","Facility email domains are not configured","These facility email domains do not match an organization with a facility profile in Owlery.","Fix the facility email domain value in the CSV, or create/configure the facility profile before importing.",c.rowId,`${e}: row ${c.row}${c.identifier?` (${c.identifier})`:""}`);continue}if("Facility email domain conversion variant unit of measure is not able to convert to a valid unit of measure"===c.message||"Facility email domain conversion original sku quantity must be a positive integer"===c.message||"Facility email domain conversion variant sku quantity must be a positive integer"===c.message||"Unit of measure is required because conversion quantity fields are not empty"===c.message||"Facility email domain is required because unit of measure or conversion quantity fields are not empty"===c.message){d("facility-conversion-fields","Facility conversion fields need correction","These rows have incomplete or invalid facility-specific conversion values.","If you include conversion quantities, provide both positive integer quantities, a valid variant unit of measure, and the facility email domain. Otherwise clear all facility conversion fields on that row.",c.rowId,`Row ${c.row}: ${c.message}${c.identifier?` (${c.identifier})`:""}`);continue}d(c.message,c.message,void 0,void 0,c.rowId,`Row ${c.row}${c.identifier?` (${c.identifier})`:""}`)}return H().values(c)})(T),[T]),N=(0,Y.useMemo)(()=>
8H()(P).map("identifier").uniq().value(),[P]),z=(0,Y.useMemo)(()=>{if(!a?.validRowNumbers||H().isEmpty(i))return[];let e=H()(a.errors).filter(e=>b===eG.OE.Replace&&e.errorType===eG.KO.Duplicate).map(e=>e.row).value();return H()(a.validRowNumbers).concat(e).uniq().map(e=>(e-1).toString()).sort().value()},[a?.validRowNumbers,a?.errors,i,b]),V=async()=>{let e=H().filter(i,e=>z.includes(e.id));await c(e,b)},M=(0,Y.useMemo)(()=>a?.ignoredRowNumbers&&i.length?a.ignoredRowNumbers.map(e=>(e-1).toString()):[],[a?.ignoredRowNumbers,i.length]),R=H().size(z),q=!H().isEmpty(T),B=!H().isEmpty(P),W=H().size(a?.ignoredRowNumbers)??0,L=!!a&&R>0,D=E.some(e=>H().size(e.lines)>3),_=H().size(E)>5||D;return(0,r.jsxs)(w.A,{open:e,onClose:t,maxWidth:"md",fullWidth:!0,children:[(0,r.jsxs)(S.A,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[(0,r.jsxs)(I.A,{children:[(0,r.jsx)(p.A,{variant:"h6",children:"Confirm Variant Upload"}),(0,r.jsx)(p.A,{variant:"caption",color:"text.secondary",children:n})]}),(0,r.jsx)(x.A,{"aria-label":"close",onClick:t,sx:{color:e=>e.palette.grey[500]},children:(0,r.jsx)(A.A,{})})]}),(0,r.jsx)(k.A,{children:l?(0,r.jsxs)(I.A,{display:"flex",justifyContent:"center",alignItems:"center",minHeight:"200px",children:[(0,r.jsx)(eO.A,{}),(0,r.jsx)(p.A,{variant:"body1",sx:{ml:2},children:"Validating CSV file..."})]}):a?(0,r.jsxs)(eT.Ay,{value:d,children:[(0,r.jsx)(I.A,{sx:{borderBottom:1,borderColor:"divider"},children:(0,r.jsxs)(eU.A,{onChange:(e,t)=>
8u(t),"aria-label":"CSV upload tabs",children:[(0,r.jsx)(eF.A,{value:"validation",label:`Validation (${R}/${H().size(i)})`}),(0,r.jsx)(eF.A,{value:"csv",label:`CSV Preview (${H().size(i)} rows)`})]})}),(0,r.jsxs)(eP.A,{value:"validation",sx:{marginTop:2},children:[(0,r.jsxs)(I.A,{mt:2,children:[(0,r.jsx)(p.A,{variant:"subtitle1",gutterBottom:!0,children:"Import Strategy"}),(0,r.jsx)(p.A,{variant:"caption",color:"text.secondary",display:"block",sx:{mb:1},children:"Changing the strategy can change which rows are valid. Add keeps existing variants and rejects rows that conflict with current mappings. Replace overwrites existing mappings for the SKUs in this file, but missing base SKUs and CSV conflicts like one variant SKU mapped to multiple base SKUs still need to be fixed."}),(0,r.jsx)(U.A,{disabled:s,component:"fieldset",sx:{mb:2},children:(0,r.jsxs)(O.A,{value:b,onChange:e=>{j(e.target.value)},children:[(0,r.jsx)($.A,{value:eG.OE.Add,control:(0,r.jsx)(F.A,{}),label:(0,r.jsxs)(I.A,{children:[(0,r.jsx)(p.A,{variant:"body2",fontWeight:"medium",children:"Add to existing variants"}),(0,r.jsx)(p.A,{variant:"caption",color:"text.secondary",children:"The listed variants are being added to the current variants for each SKU."})]})}),(0,r.jsx)($.A,{value:eG.OE.Replace,control:(0,r.jsx)(F.A,{}),label:(0,r.jsxs)(I.A,{children:[(0,r.jsx)(p.A,{variant:"body2",fontWeight:"medium",children:"Replace existing variants"}),(0,r.jsx)(p.A,{variant:"caption",color:"text.secondary",children:"The listed variants are replacing all current variants for each SKU"})]})})]})})]}),L&&(0,r.jsx)(I.A,{mb:2,children:(0,r.jsxs)(f.A,{severity:"success",children:[(0,r.jsx)(eR.A,{children:"Rows ready to be processed"}),(0,r.jsxs)(p.A,{variant:"body2",children:[R," item",R>1?"s are":" is"," are valid.\xa0",b===eG.OE.Replace&&a.impactCount&&a.impactCount.remove>0&&(0,r.jsxs)(r.Fragment,{children:["This will replace the existing data with these ",a.impactCount.remove," variant ",(0,eQ.hY)(a.impactCount.remove,"item")," in the CSV"]})]})]})}),q&&(0,r.jsx)(I.A,{mb:2,children:(0,r.jsxs)(f.A,{severity:"error",children:[(0,r.jsx)(eR.A,{children:"These rows with invalid data will be skipped"}),(0,r.jsxs)(I.A,{mt:1,children:[(v?E:E.slice(0,5)).map((e,t)=>(0,r.jsxs)(I.A,{mb:1,children:[(0,r.jsxs)(p.A,{variant:"body2",color:"error",fontWeight:"medium",children:[e.title," (",e.count,")"]}),e.description&&(0,r.jsx)(p.A,{variant:"body2",color:"error",sx:{mb:.5},children:e.description}),e.action&&(0,r.jsxs)(p.A,{variant:"body2",color:"error",sx:{mb:.5},children:["Action: ",e.action]}),e.lines.slice(0,v?H().size(e.lines):3).map((e,t)=>(0,r.jsx)(p.A,{variant:"body2",color:"error",sx:{ml:1},children:e},t)),!v&&H().size(e.lines)>3&&(0,r.jsxs)(p.A,{variant:"caption",color:"error",sx:{ml:1},children:[H().size(e.lines)-3," more"]}),e.firstRowId&&(0,r.jsx)(m.A,{size:"small",variant:"text",color:"error",onClick:()=>{u("csv"),g(e.firstRowId)},sx:{minWidth:"auto",p:.5,textDecoration:"underline"},children:"View in CSV"})]},t)),_&&(0,r.jsx)(I.A,{mt:1,children:(0,r.jsx)(m.A,{size:"small",variant:"text",color:"error",onClick:()=>y(!v),sx:{ml:2},children:v?"Show less":"Show all errors"})})]})]})}),B&&(0,r.jsx)(I.A,{mb:2,children:(0,r.jsxs)(f.A,{severity:"warning",children:[(0,r.jsx)(eR.A,{children:"Missing base SKUs that will be created"}),(0,r.jsxs)(p.A,{variant:"body2",color:"text.primary",children:[H().size(P)," row",1!==H().size(P)?"s":"",". Examples: ",N.slice(0,5).join(", "),"."]}),(0,r.jsx)(p.A,{variant:"body2",color:"text.primary",children:"These SKUs will be created with basic item records. Add packaging and other item details later."})]})}),W>0&&(0,r.jsx)(I.A,{mb:2,children:(0,r.jsxs)(f.A,{severity:"info",children:[(0,r.jsx)(eR.A,{children:"Ignored rows"}),(0,r.jsxs)(p.A,{variant:"body2",children:[W," row",1!==W?"s were":" was"," ignored because No variant configuration was found in the uploaded file"]})]})}),(0,r.jsxs)(f.A,{icon:(0,r.jsx)(o.A,{}),sx:{backgroundColor:"background.neutral","& .MuiAlert-icon":{color:"grey.600"}},children:[(0,r.jsx)(eR.A,{children:"CSV Format Requirements"}),(0,r.jsx)(I.A,{children:(0,r.jsxs)("ul",{style:{margin:0,paddingLeft:"20px"},children:[(0,r.jsx)("li",{children:(0,r.jsx)(p.A,{variant:"body2",color:"text.secondary",component:"span",children:"Base SKU is required"})}),(0,r.jsx)("li",{children:(0,r.jsx)(p.A,{variant:"body2",color:"text.secondary",component:"span",children:"Variant SKU is optional for a facility conversion that uses the base SKU; rows without a Variant SKU or facility configuration are ignored"})}),(0,r.jsx)("li",{children:(0,r.jsx)(p.A,{variant:"body2",color:"text.secondary",component:"span",children:"Facility Email Domain is optional; when present, Facility Email Domain Variant Unit of Measure is required"})}),(0,r.jsx)("li",{children:(0,r.jsx)(p.A,{variant:"body2",color:"text.secondary",component:"span",children:"Facility Email Domain Original SKU Quantity and Facility Email Domain Variant SKU Quantity must be both present or both empty"})})]})})]})]}),(0,r.jsxs)(eP.A,{value:"csv",sx:{marginTop:2},children:[(0,r.jsx)(eq.H,{rows:i,exceptions:[...T,...P],processedRowIds:z,ignoredRowIds:M,ignoredRowHoverText:"This row was ignored (missing Variant SKU)"}),h?(0,r.jsx)(I.A,{mt:1,children:(0,r.jsxs)(p.A,{variant:"caption",color:"text.secondary",children:["Focused row: ",Number.parseInt(h)+1]})}):null]})]}):(0,r.jsx)(I.A,{py:2,children:(0,r.jsx)(p.A,{variant:"body2",color:"text.secondary",children:"No validation result available."})})}),(0,r.jsxs)(K.A,{children:[(0,r.jsx)(m.A,{onClick:t,variant:"text",color:"inherit",disabled:s,children:"Cancel"}),(0,r.jsxs)(C.A,{loading:s,onClick:V,color:"primary",variant:"contained",disabled:l||!L,children:["Apply Variant Config (",H().size(z)," rows)"]})]})]})}var eJ=i(14664),eZ=i(34159),e0=i(54287),e1=i(67626),e2=i(53176),e8=i(80315),e4=i(19610),e5=i(63727),e6=i(4135);function e3({id:e,unit:t,levelNumber:i,conversionText:n,isEach:a,isPallet:l,onRemove:s,disabled:o,showDragHandle:c}){let{attributes:d,listeners:h,setNodeRef:m,transform:g,transition:v,isDragging:f}=(0,e0.gl)({id:e,disabled:o}),y={transform:e5.Ks.Transform.toString(g),transition:v,opacity:f?.5:1};return(0,r.jsxs)(e4.A,{ref:m,style:y,sx:{p:2,bgcolor:l||a?"background.neutral":"background.paper",display:"flex",flexDirection:"row",gap:1,position:"relative"},children:[c&&(0,r.jsx)(I.A,{...d,...h,sx:{display:"flex",alignItems:"center",cursor:"grab","&:active":{cursor:"grabbing"},borderRight:"1px solid",borderColor:"divider",ml:-2,my:-2,px:.5,bgcolor:"action.hover"},children:(0,r.jsx)(e6.A,{fontSize:"small",sx:{color:"action.active"}}
8)}),(0,r.jsxs)(u.A,{spacing:1,sx:{flex:1},children:[!l&&!a&&(0,r.jsx)(I.A,{sx:{position:"absolute",top:4,right:4},children:(0,r.jsx)(x.A,{size:"small",onClick:e=>{e.stopPropagation(),s()},children:(0,r.jsx)(A.A,{fontSize:"small"})})}),(0,r.jsxs)(I.A,{children:[(0,r.jsxs)(p.A,{variant:"caption",color:"text.secondary",children:["Level ",i]}),(0,r.jsx)(p.A,{variant:"h6",sx:{mt:.5},children:H().startCase(t)}),l&&(0,r.jsx)(eC.A,{label:"Always included",color:"primary",size:"small",sx:{mt:1}}),a&&(0,r.jsx)(eC.A,{label:"Smallest unit",color:"default",size:"small",sx:{mt:1}}),!l&&!a&&n&&(0,r.jsx)(p.A,{variant:"caption",color:"text.secondary",sx:{display:"block",mt:.5},children:n})]})]})]})}let e9=Object.values(J.al).filter(e=>e!==J.al.pallet),e7=[J.al.each,J.al.case];function te({open:e,onClose:t,onConfirm:i}){let[n,a]=(0,Y.useState)(e7),[l,s]=(0,Y.useState)(null),[o,c]=(0,Y.useState)(null),[d,h]=(0,Y.useState)(!1),[g,x]=(0,Y.useState)(!1),v=(0,eJ.MS)(eJ.AN),f=(0,eJ.FR)(v),y=(0,Y.useMemo)(()=>[...n,J.al.pallet],[n]),b=(0,Y.useMemo)(()=>e9.filter(e=>!n.includes(e)),[n]),j=()=>{a(e7),h(!1),x(!1),t()};return(0,r.jsxs)(w.A,{open:e,onClose:j,maxWidth:"md",fullWidth:!0,PaperProps:{sx:{minHeight:"500px"}},children:[(0,r.jsxs)(S.A,{children:[(0,r.jsx)(p.A,{variant:"h6",component:"div",children:"Quantity Unit Hierarchy"}),(0,r.jsx)(p.A,{variant:"body2",color:"text.secondary",sx:{mt:.5},children:"Define your packaging hierarchy from smallest to largest unit. Drag to reorder."})]}),(0,r.jsx)(k.A,{dividers:!0,children:(0,r.jsxs)(u.A,{spacing:3,children:[(0,r.jsxs)(I.A,{children:[(0,r.jsx)(p.A,{variant:"subtitle2",sx:{mb:2},children:"Hierarchy"}),(0,r.jsx)(eJ.Mp,{sensors:f,collisionDetection:eJ.fp,onDragEnd:e=>{let{active:t,over:i}=e;if(!i||t.id===i.id||t.id===J.al.each||i.id===J.al.pallet)return;let r=n.findIndex(e=>e===t.id),l=n.findIndex(e=>e===i.id);if(-1!==r&&-1!==l){if(n.includes(J.al.each)&&0===l)return;let e=[...n],[t]=e.splice(r,1);t&&e.splice(l,0,t);let i=e.findIndex(e=>e===J.al.each);if(i>0){let[t]=e.splice(i,1);t&&e.unshift(t)}a(e)}},modifiers:[eZ.Q_],children:(0,r.jsxs)(e0.gB,{items:n,strategy:e0.kL,children:[(0,r.jsx)(I.A,{sx:{display:"flex",flexDirection:"row",alignItems:"center",flexWrap:"wrap",gap:1,pb:2},children:y.map((e,t)=>{let i=e===J.al.each,l=e===J.al.pallet,d=t===y.length-1,h=t===y.length-2,p=y.length-2,g=!i&&!l&&p>1,x=o===e;return(0,r.jsxs)(Y.Fragment,{children:[(0,r.jsx)(e2.A,{in:!x,timeout:300,children:(0,r.jsx)(u.A,{direction:"row",alignItems:"center",spacing:1,children:(0,r.jsx)(I.A,{sx:{minWidth:160,maxWidth:160},children:(0,r.jsx)(e3,{id:e,unit:e,levelNumber:t+1,conversionText:(e=>{if(e===y.length-1)return"Top level unit";let t=y[e],i=y[e+1];return`${H().toLower(t)}s per ${H().toLower(i)}`})(t),isEach:i,isPallet:l,onRemove:()=>{c(e),setTimeout(()=>{a(n.filter(t=>t!==e)),c(null)},300)},disabled:!g,showDragHandle:g})})})}),!d&&(0,r.jsx)(e1.A,{sx:{color:"action.active",flexShrink:0}}),b.length>0&&h&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(m.A,{variant:"outlined",onClick:e=>s(e.currentTarget),sx:{minWidth:56,width:56,height:56,p:0,border:"2px dashed",borderColor:"divider","&:hover":{borderColor:"primary.main",bgcolor:"primary.lighter",border:"2px dashed"}},children:(0,r.jsx)(ev.A,{sx:{fontSize:32}})}),(0,r.jsx)(e1.A,{sx:{color:"action.active",flexShrink:0}})]})]},e)})}),(0,r.jsx)(e8.A,{anchorEl:l,open:!!l,onClose:()=>s(null),children:b.map(e=>(0,r.jsx)(N.A,{onClick:()=>{e===J.al.each?a([e,...n]):a([...n,e]),s(null)},children:H().startCase(e)},e))})]})})]}),(0,r.jsx)(I.A,{children:(0,r.jsxs)(e4.A,{variant:"outlined",sx:{p:2,bgcolor:"background.neutral"},children:[(0,r.jsx)(p.A,{variant:"subtitle2",sx:{mb:1},children:"Summary"}),(0,r.jsx)(p.A,{variant:"body2",color:"text.secondary",sx:{mb:1.5},children:"Your CSV template will include columns for:"}),(0,r.jsxs)(I.A,{children:[(0,r.jsxs)(I.A,{sx:{mb:2},children:[(0,r.jsx)(p.A,{variant:"caption",color:"text.secondary",sx:{fontWeight:600,display:"block",mb:.5},children:"Unit Conversions"}),(0,r.jsx)(u.A,{direction:"row",spacing:.5,sx:{flexWrap:"wrap",gap:.5},children:y.slice(0,-1).map((e,t)=>{let i=y[t+1];return(0,r.jsx)(eC.A,{label:`${H().startCase(e)} per ${H().startCase(i)}`,size:"small",variant:"outlined",color:"secondary"},`${e}-${i}`)})})]}),(0,r.jsxs)(u.A,{direction:"row",spacing:3,children:[(0,r.jsxs)(I.A,{sx:{flex:1},children:[(0,r.jsx)(p.A,{variant:"caption",color:"text.secondary",sx:{fontWeight:600,display:"block",mb:.5},children:"Weights - Optional"}),(0,r.jsx)(u.A,{direction:"row",spacing:.5,sx:{flexWrap:"wrap",gap:.5},children:y.map(e=>(0,r.jsx)(eC.A,{label:`${H().startCase(e)} Weight`,size:"small",variant:"outlined",sx:{borderColor:"grey.400",color:"text.disabled",bgcolor:"action.hover"}},`${e}-weight`))})]}),(0,r.jsxs)(I.A,{sx:{flex:1},children:[(0,r.jsx)(p.A,{variant:"caption",color:"text.secondary",sx:{fontWeight:600,display:"block",mb:.5},children:"Pallet Dimensions - Optional"}),(0,r.jsxs)(u.A,{direction:"row",spacing:.5,sx:{flexWrap:"wrap",gap:.5},children:[(0,r.jsx)(eC.A,{label:"Pallet Length",size:"small",variant:"outlined",sx:{borderColor:"grey.400",color:"text.disabled",bgcolor:"action.hover"}}),(0,r.jsx)(eC.A,{label:"Pallet Width",size:"small",variant:"outlined",sx:{borderColor:"grey.400",color:"text.disabled",bgcolor:"action.hover"}}),(0,r.jsx)(eC.A,{label:"Pallet Height",size:"small",variant:"outlined",sx:{borderColor:"grey.400",color:"text.disabled",bgcolor:"action.hover"}})]})]})]})]})]})}),(0,r.jsx)(I.A,{children:(0,r.jsxs)(e4.A,{variant:"outlined",sx:{p:2,bgcolor:"background.neutral"},children:[(0,r.jsx)(p.A,{variant:"subtitle2",sx:{mb:1.5},children:"Optional Settings"}),(0,r.jsxs)(u.A,{spacing:1.5,children:[(0,r.jsx)($.A,{control:(0,r.jsx)(V.A,{checked:d,onChange:e=>h(e.target.checked)}),label:(0,r.jsxs)(I.A,{children:[(0,r.jsx)(p.A,{variant:"body2",fontWeight:500,children:"Include Reefer Temperature Settings"}),(0,r.jsx)(p.A,{variant:"caption",color:"text.secondary",children:"Add columns for min temperature, max temperature, and pre-cool temperature"})]})}),(0,r.jsx)($.A,{control:(0,r.jsx)(V.A,{checked:g,onChange:e=>x(e.target.checked)}),label:(0,r.jsxs)(I.A,{children:[(0,r.jsx)(p.A,{variant:"body2",fontWeight:500,children:"Include Hazmat Settings"}),(0,r.jsx)(p.A,{variant:"caption",color:"text.secondary",children:"Add column for hazmat classification"})]})})]})]})})]})}
8),(0,r.jsxs)(K.A,{sx:{px:3,py:2},children:[(0,r.jsx)(m.A,{color:"inherit",onClick:j,variant:"text",children:"Cancel"}),(0,r.jsx)(m.A,{onClick:()=>{i({selectedUnits:y,includeReeferSettings:d,includeHazmatSettings:g}),t()},variant:"contained",children:"Download Template"})]})]})}var tt=i(73844);let ti={comma:", ",dot:" \xb7 "};function tn({variantSkus:e,separator:t="comma",isMatched:i=!1}){let a=(0,Y.useRef)(null),[l,s]=(0,Y.useState)(void 0),o=ti[t];if((0,Y.useLayoutEffect)(()=>{let t=a.current;if(!t||i||H().isEmpty(e))return void s(void 0);let r=()=>{let i=t.clientWidth;if(i<=0)return;let a=window.getComputedStyle(t),r=(n||((n=document.createElement("span")).style.cssText="position:absolute;visibility:hidden;white-space:nowrap;left:-9999px;top:-9999px;",document.body.appendChild(n)),n);r.style.font=`${a.fontStyle} ${a.fontWeight} ${a.fontSize} ${a.fontFamily}`,r.style.letterSpacing=a.letterSpacing,s(function(e,t,i,n){let a,r=e.join(i);if(n(r)<=t)return{visibleText:r,hiddenCount:0,truncated:!1};let l=Math.max(0,t-(n(`+${e.length}`)+6)),s=n(i),o=0,c=0;for(let t=0;t<e.length;t++){let i=n(e[t])+(t>0?s:0);if(o+i<=l)o+=i,c++;else break}if(c<e.length){let t=l-o-(c>0?s:0);t>n("â¦")+12&&(a=function(e,t,i){let n=1,a=e.length,r="";for(;n<=a;){let l=n+a>>1,s=e.slice(0,l)+"â¦";i(s)<=t?(r=s,n=l+1):a=l-1}return r||void 0}(e[c],t,n))}let d=e.slice(0,c);a&&d.push(a);let u=e.length-c-!!a;return{visibleText:d.join(i),hiddenCount:u,truncated:!!a}}(e,i,o,e=>(r.textContent=e,r.getBoundingClientRect().width)))};r();let l=new ResizeObserver(r);return l.observe(t),()=>l.disconnect()},[e,o,i]),H().isEmpty(e))return null;let c=l?l.visibleText:e.join(o),d=l?.hiddenCount??0,u=!i&&!!l&&(d>0||l.truncated),h=(0,r.jsxs)(p.A,{ref:a,variant:"body2",component:"div",sx:{width:"100%",minWidth:0,whiteSpace:"nowrap",overflow:"hidden"},children:[c,d>0&&(0,r.jsxs)(p.A,{component:"span",variant:"body2",color:e=>e.palette.text.secondary,children:[" ","+",d]})]});return u?(0,r.jsx)(g.A,{title:H().map(e,e=>(0,r.jsx)("div",{children:e},e)),onOpen:()=>tt.A.track("variant sku tooltip opened",{variantSkus:e}),onClose:()=>tt.A.track("variant sku tooltip closed",{variantSkus:e}),children:h}):h}var ta=i(73899),tr=i(7170),tl=i(19575),ts=i(16),to=i(40897),tc=i(88933),td=i.n(tc),tu=i(3729),th=i(20697);i(63937);var tm=i(61077),tp=i(13543),tg=i(47391);let tx=e=>H()(e.packaging).map((e,t)=>e?.dimensions?.length&&e?.dimensions?.width&&e?.dimensions?.height?`${H().startCase(t)}: ${(0,tp.t6)(e.dimensions)}`:null).compact().value(),tv=e=>H()(e.packaging).map((e,t)=>{let i=(0,tp.sb)(e?.weight);return i?{unit:t,weight:i}:null}).compact().value(),tf=[{label:(0,th.nV)(th.Tm.SKU),key:(0,th.Uj)(th.Tm.SKU),required:!0},{label:(0,th.nV)(th.Q9.INVENTORY_ITEM_NAME),key:(0,th.Uj)(th.Tm.INVENTORY_ITEM_NAME),required:!1},{label:(0,th.nV)(th.Q9.INVENTORY_ITEM_DESCRIPTION),key:(0,th.Uj)(th.Tm.INVENTORY_ITEM_DESCRIPTION),required:!1},{label:(0,th.nV)(th.Q9.INVENTORY_ITEM_NMFC_CODE),key:(0,th.Uj)(th.Tm.INVENTORY_ITEM_NMFC_CODE),getCSVValue:e=>e.nmfcCode,required:!1},{label:(0,th.nV)(th.Q9.INVENTORY_ITEM_HS_CODE),key:(0,th.Uj)(th.Tm.INVENTORY_ITEM_HS_CODE),getCSVValue:e=>e.hsCode,required:!1},{label:"GTIN-12",key:(0,th.Uj)(th.Tm.UPC_CODE),getCSVValue:e=>e.gtinCodes?.gtin12,required:!1},{label:(0,th.nV)(th.Q9.INVENTORY_ITEM_PREFERRED_BOL_UOM),key:(0,th.Uj)(th.Tm.INVENTORY_ITEM_PREFERRED_BOL_UOM),getCSVValue:e=>e.preferredBolUom,required:!1},{label:(0,th.nV)(th.Q9.INVENTORY_ITEM_PALLET_WEIGHT),key:(0,th.Uj)(th.Tm.INVENTORY_ITEM_PALLET_WEIGHT),getCSVValue:e=>e.packaging?.pallet?.weight?.value,required:!1},{label:(0,th.nV)(th.Tm.MIN_TEMPERATURE),key:(0,th.Uj)(th.Tm.MIN_TEMPERATURE),getCSVValue:e=>e.reeferSettings?.minTemperature,required:!1},{label:(0,th.nV)(th.Tm.MAX_TEMPERATURE),key:(0,th.Uj)(th.Tm.MAX_TEMPERATURE),getCSVValue:e=>e.reeferSettings?.maxTemperature,required:!1},{label:(0,th.nV)(th.Tm.PRE_COOL_TEMPERATURE),key:(0,th.Uj)(th.Tm.PRE_COOL_TEMPERATURE),getCSVValue:e=>e.reeferSettings?.preCoolTemperature,required:!1},{label:(0,th.nV)(th.Tm.TEMPERATURE_UNIT),key:(0,th.Uj)(th.Tm.TEMPERATURE_UNIT),getCSVValue:e=>e.reeferSettings?.unit,required:!1},{label:(0,th.nV)(th.Tm.PALLET_LENGTH),key:(0,th.Uj)(th.Tm.PALLET_LENGTH),getCSVValue:e=>e.packaging?.pallet?.dimensions?.length,required:!1},{label:(0,th.nV)(th.Tm.PALLET_WIDTH),key:(0,th.Uj)(th.Tm.PALLET_WIDTH),getCSVValue:e=>e.packaging?.pallet?.dimensions?.width,required:!1},{label:(0,th.nV)(th.Tm.PALLET_HEIGHT),key:(0,th.Uj)(th.Tm.PALLET_HEIGHT),getCSVValue:e=>e.packaging?.pallet?.dimensions?.height,required:!1},{label:(0,th.nV)(th.Tm.INVENTORY_ITEM_IS_HAZMAT),key:(0,th.Uj)(th.Tm.INVENTORY_ITEM_IS_HAZMAT),getCSVValue:e=>e.hazmatSettings?.hazardClass,required:!1},{label:(0,th.nV)(th.Tm.INVENTORY_ITEM_IS_STACKABLE),key:(0,th.Uj)(th.Tm.INVENTORY_ITEM_IS_STACKABLE),getCSVValue:e=>e.isStackable?"Yes":"No",required:!1},{label:(0,th.nV)(th.Tm.INVENTORY_ITEM_IS_TURNABLE),key:(0,th.Uj)(th.Tm.INVENTORY_ITEM_IS_TURNABLE),getCSVValue:e=>e.isTurnable?"Yes":"No",required:!1},{label:(0,th.nV)(th.Tm.INVENTORY_ITEM_DEDICATED_PALLET_ONLY),key:(0,th.Uj)(th.Tm.INVENTORY_ITEM_DEDICATED_PALLET_ONLY),getCSVValue:e=>e.dedicatedPalletOnly?"Yes":"No",required:!1},{label:(0,th.nV)(th.Tm.INVENTORY_ITEM_EXCLUDE_FROM_PACKAGING_CALCULATIONS),key:(0,th.Uj)(th.Tm.INVENTORY_ITEM_EXCLUDE_FROM_PACKAGING_CALCULATIONS),getCSVValue:e=>e.excludeFromPackagingCalculations?"Yes":"No",required:!1},{label:(0,th.nV)(th.Q9.INVENTORY_ITEM_CALCULATE_PALLET_HEIGHT),key:(0,th.Uj)(th.Q9.INVENTORY_ITEM_CALCULATE_PALLET_HEIGHT),getCSVValue:e=>e.calculatePalletHeight?"Yes":"No",required:!1}],ty=[{sku:"OWL-001",name:"Coffee Box",description:"Customised Coffee",nmfcCode:"73260",hsCode:"090121",gtinCodes:{gtin12:"012345678901"},packaging:{pallet:{type:"pallet",dimensions:{length:3,width:2,height:1,unit:"in"},weight:{unit:"oz",value:450}},case:{type:"case",dimensions:{unit:"in"},weight:{unit:"oz",value:150},parentPackaging:"pallet",unitsPerParent:3},each:{type:"each",dimensions:{unit:"in"},weight:{unit:"oz",value:15},parentPackaging:"case",unitsPerParent:10}},reeferSettings:{minTemperature:-10,maxTemperature:45,preCoolTemperature:5,unit:"C",sentryMode:"Continuous"},preferredBolUom:J.al.case}];function tb({inventoryItems:e,isLoading:t,isArchivedItems:i=!1,onSelect:n,onCreate:a,tableKey:l}){let[s,o]=(0,Y.useState)([]),[c,d]=(0,Y.useState)(""),[h,v]=(0,Y.useState)(!1),[f,y]=(0,Y.useState)(!1),[b,j]=(0,Y.useState)(!1),[A,C]=(0,Y.useState)(!1),[w,S]=(0,Y.useState)(),[k,T]=(0,Y.useState)([]),[U,P]=(0,Y.useState)(""),[E,$]=(0,Y.useState)(),[V,M]=(0,Y.useState)({open:!1,validationResult:void 0,isValidating:!1}),[R,O]=(0,Y.useState)([]),[F,K]=(0,Y.useState)(""),[q,B]=(0,Y.useState)({open:!1,validationResult:void 0,isValidating:!1}),[W,L]=(0,Y.useState)([]),[D,G]=(0,Y.useState)(""),[Q,ee]=(0,Y.useState)({open:!1,validationResult:void 0,isValidating:!1}),[et,ei]=(0,Y.useState)(!1),[en,ea]=(0,Y.useState)(!1),[el,es]=(0,Y.useState)(!1),{user:eo,hideAdmin:ec}=(0,X.d4)(e=>e.user),ed=(0,X.d4)(tu.A.selectors.conversionByInventoryItemId),eu=(0,X.d4)(tu.A.selectors.variantInventoryItemByBaseInventoryItemId),[eh,{isFetching:ep}]=(0,Z.Wc)(),[eg,{isLoading:ex}]=(0,Z.iZ)(),[eT]=(0,Z.tj)(),[eU]=(0,Z.Nj)(),[eP]=(0,Z.g3)(),[eE]=(0,Z.xc)(),[eN]=(0,Z.Xz)(),[ez,{isLoading:e$}]=(0,Z.JY)(),[eV,{isLoading:eM}]=(0,Z.Cg)(),[eR,{isLoading:eO}]=(0,Z.XN)(),[eF,{isLoading:eK}]=(0,Z.BS)(),[eq]=(0,Z.Gy)(),eB=(0,Y.useRef)(null),eW=(0,Y.useRef)(null),eL=(0,Y.useRef)(null),eD=t||ep||ex||e$,eH=async e=>{let t=e?.target?.files?.[0];t&&w&&ez({file:t,source:w})},eG=()=>{T([]),P(""),$(void 0),es(!1),M(e=>({...e,validationResult:void 0,isValidating:!1}))},eJ=async e=>{eG();try{let{rows:t,filename:i}=await (0,th.mt)(e,void 0),n=t.map(e=>{let t=e.id;return{...H().mapKeys(e,(e,t)=>t.replace("(optional)","").trim()),id:t}}
8);e2(n,i)}catch(e){$((0,er.tz)(e))}},eZ=async e=>{let t=e.target,{rows:i,filename:n}=await (0,th.OM)(e,void 0);e8(i.map(e=>{let t=e.id;return{...H().mapKeys(e,(e,t)=>t.replace("(optional)","").trim()),id:t}}),n),t&&(t.value="")},e0=async e=>{let t=e.target,{rows:i,filename:n}=await (0,th.OM)(e,void 0),a=i.map(e=>{let t=e.id;return{...H().mapKeys(e,(e,t)=>t.replace("(optional)","").trim()),id:t}});await e4(a,n),t&&(t.value="")},e1=H().filter(e,e=>H().includes(s,e.id)),e2=(e,t)=>{T(e),P(t),es(!1),M({open:!0,validationResult:void 0,isValidating:!0}),eT({data:e}).unwrap().then(e=>{M(t=>({...t,validationResult:e,isValidating:!1}))}).catch(t=>{let i=(0,er.tz)(t);M(t=>({...t,validationResult:{success:!1,message:`Validation failed: ${i}`,totalRows:e.length,processedCount:0,errorCount:1,errors:[{row:1,identifier:"",error:i}]},isValidating:!1}))})},e8=(e,t)=>{O(e),K(t),B({open:!0,validationResult:void 0,isValidating:!0}),eU({data:e}).unwrap().then(e=>{B(t=>({...t,validationResult:e,isValidating:!1}))}).catch(t=>{let i=(0,er.tz)(t);B(t=>({...t,validationResult:{success:!1,message:`Validation failed: ${i}`,totalRows:e.length,processedCount:0,errorCount:1,errors:[{row:1,identifier:"",error:i}],preview:[]},isValidating:!1}))})},e4=(e,t)=>(L(e),G(t),ee({open:!0,validationResult:void 0,isValidating:!0}),eP({data:e}).unwrap().then(e=>{ee(t=>({...t,validationResult:e,isValidating:!1}))}).catch(t=>{let i=(0,er.tz)(t);ee(t=>({...t,validationResult:{success:!1,message:`Validation failed: ${i}`,totalRows:e.length,processedCount:0,errorCount:1,impactCount:void 0,errors:[{row:1,identifier:"",error:i}]},isValidating:!1}))})),e5=async()=>{ei(!0);try{B(e=>({...e,open:!1}));let{data:e,error:t}=await eE({data:R});if(e){let t=`Updated ${e.processedCount} item${1===e.processedCount?"":"s"}${e.errorCount>0?` (${e.errorCount} skipped)`:""}`;(0,_.M8)(t,{variant:"success"});return}t&&(0,_.M8)((0,er.tz)(t),{variant:"error"})}catch(e){(0,_.M8)((0,er.tz)(e),{variant:"error"})}finally{ei(!1)}},e6=async()=>{ei(!0);try{M(e=>({...e,open:!1}));let{data:e,error:t}=await eg({data:k,clearEmptyFields:el});if(e){let e=V.validationResult?.processedCount,t=V.validationResult?.ignoredRowNumbers?.length??0,i=V.validationResult?.errors?.length??0,n=H().isNil(e)?"Upload inventory items succeeded":`Uploaded ${e} item${1===e?"":"s"}${t+i>0?` (${t} ignored, ${i} invalid)`:""}`;(0,_.M8)(n,{variant:"success"});return}t&&(0,_.M8)((0,er.tz)(t),{variant:"error"})}catch(e){(0,_.M8)((0,er.tz)(e),{variant:"error"})}finally{ei(!1)}},e3=async(e,t)=>{try{let{error:i}=await eF({validRows:e,importVariantStrategy:t});i?(0,_.M8)((0,er.tz)(i),{variant:"error"}):(ee(e=>({...e,open:!1})),(0,_.M8)("Variant uploaded successfully",{variant:"success"}))}catch(e){(0,_.M8)((0,er.tz)(e),{variant:"error"})}},e9=async()=>{try{if(H().isEmpty(s))throw Error("No items selected for restore");await eV({ids:s}).unwrap(),(0,_.M8)("Items restored successfully",{variant:"success"})}catch(e){(0,_.M8)((0,er.tz)(e),{variant:"error"})}},e7=async()=>{try{if(H().isEmpty(s))throw Error("No items selected for archive");await eR({ids:s}).unwrap(),(0,_.M8)(`${s.length} items archived successfully`,{variant:"success"})}catch(e){(0,_.M8)((0,er.tz)(e),{variant:"error"})}},tt=async()=>{try{let e=await eq().unwrap();td()(e,"Variant Item Template.csv")}catch(e){(0,_.M8)((0,er.tz)(e),{variant:"error"})}},ti=async t=>{try{let{selectedUnits:i,includeReeferSettings:n,includeHazmatSettings:a}=t,r=[...i,J.al.pallet],l=function(e){let t=[];for(let i=0;i<e.length-1;i++){let n=e[i],a=e[i+1];t.push({label:`${H().startCase(n)} per ${H().startCase(a)}`,key:`${n}Per${H().upperFirst(a)}`,getCSVValue:e=>H().find(e.packaging,e=>e?.type===n&&e?.parentPackaging===a)?.unitsPerParent,required:!1})}return t}(i),s=function(e){let t=[];for(let i of e)t.push({label:`${H().startCase(i)} Weight`,key:`${i}Weight`,getCSVValue:e=>e.packaging?.[i]?.weight?.value,required:!1});return t}(r),o=tf.filter(e=>!e.key.includes("PerCase")&&!e.key.includes("PerPallet")).filter(e=>{let t=e.key.toLowerCase();return!(!n&&t.includes("temperature")||!a&&t.includes("hazmat"))}),c=[...o.slice(0,6),...l,...s,...o.slice(6)],d=await (0,ts.h6)(c,H().isEmpty(e)?ty:e);td()(d,"Item Master Template.csv")}catch(e){(0,_.M8)((0,er.tz)(e),{variant:"error"})}},tc=(0,Y.useMemo)(()=>{let e,t,i;return e=e=>{let t=eu[e.id];return H().isEmpty(t)?[]:H()(t).map(e=>
8e.sku).compact().value()},t=e=>!H().isEmpty(ed[e.id]),i=!H().isEmpty(eu)||!H().isEmpty(ed),H().compact([{key:"sku",label:"SKU",align:"left"},{key:"name",label:"Name",align:"left",renderCell:e=>(0,r.jsx)(g.A,{title:e.name,children:(0,r.jsx)(p.A,{noWrap:!0,width:"100%",variant:"body2",children:e.name})}),getCSVValue:e=>e.name,getOrderByValue:e=>e.name},i?{key:"variantSku",label:"Variant SKU",align:"left",renderCell:t=>{let i=H().some(t.metadata,({column:e,matches:t})=>"variantSku"===e.key&&!H().isEmpty(t)),n=e(t);return(0,r.jsx)(tn,{variantSkus:n,isMatched:i})},getCSVValue:t=>e(t).join(", "),getOrderByValue:t=>e(t).join(", "),getStringsToMatchFilter:t=>e(t)}:void 0,H().isEmpty(ed)?void 0:{key:"facilityUomConversion",label:"Facility UOM Conversion",align:"center",renderCell:e=>(0,r.jsx)(tl.A,{value:t(e),fontSize:"small"}),getBooleanToMatchFilter:e=>t(e),getOrderByValue:e=>+!!t(e),getCSVValue:e=>t(e)?"Yes":"No"},{key:"nmfcCode",label:"NMFC",align:"left",getOrderByValue:e=>e.nmfcCode,renderCell:e=>e.nmfcCode,getCSVValue:e=>e.nmfcCode},{key:"hsCode",label:"HS Code",align:"left",getOrderByValue:e=>e.hsCode,renderCell:e=>e.hsCode,getCSVValue:e=>e.hsCode},{key:"gtin12",label:"GTIN-12",align:"left",getOrderByValue:e=>e.gtinCodes?.gtin12,renderCell:e=>e.gtinCodes?.gtin12,getCSVValue:e=>e.gtinCodes?.gtin12},{key:"description",label:"Description",align:"left",renderCell:e=>H().trim(e.name)===H().trim(e.description)?null:(0,r.jsx)(g.A,{title:e.description,children:(0,r.jsx)(p.A,{noWrap:!0,width:"100%",variant:"body2",children:e.description})}),getCSVValue:e=>e.description,getOrderByValue:e=>H().trim(e.name)===H().trim(e.description)?null:e.description},{key:"dimensions",label:"Dimensions",align:"left",renderCell:e=>(0,r.jsx)(u.A,{children:tx(e).map(e=>(0,r.jsx)(p.A,{noWrap:!0,variant:"body2",children:e},e))}),getCSVValue:e=>tx(e).join("\n"),getOrderByValue:e=>{let t=H().find(e.packaging,e=>!H().isNil(e?.dimensions))?.dimensions;return(t?.width||1)*(t?.length||1)*(t?.height||1)},disableFilter:!0},{key:"quantityPerPallet",label:"Qty/Pallet",align:"right",renderCell:e=>{let t=H().find(e.packaging,e=>e?.parentPackaging===J.al.pallet);return t?.unitsPerParent?`${t.unitsPerParent} ${(0,eQ.aL)(t.type)}`:void 0},getCSVValue:e=>{let t=H().find(e.packaging,e=>e?.parentPackaging===J.al.pallet);return t?.unitsPerParent?`${t.unitsPerParent} ${(0,eQ.aL)(t.type)}`:void 0},getOrderByValue:e=>H().find(e.packaging,e=>e?.parentPackaging===J.al.pallet)?.unitsPerParent,disableFilter:!0},{key:"notes",label:"Notes",align:"left"},{key:"weight",label:"Weight",align:"left",renderCell:e=>(0,r.jsx)(u.A,{direction:"row",spacing:1,children:tv(e).map(({unit:e,weight:t})=>(0,r.jsx)(eC.A,{label:`${H().capitalize(e)}: ${t}`,sx:{minWidth:0}},`${e}-${t}`))}),getCSVValue:e=>tv(e).map(e=>`${e.unit}: ${e.weight}`),getOrderByValue:e=>H().find(e.packaging,e=>!H().isNil(e?.weight?.value))?.weight?.value,disableFilter:!0},{key:"isStackable",label:"Stackable",align:"center",renderCell:e=>(0,r.jsx)(tl.A,{value:e.isStackable,fontSize:"small"}),getBooleanToMatchFilter:e=>!!e.isStackable,getCSVValue:e=>e.isStackable?"Yes":"No"},{key:"isTurnable",label:"Turnable",align:"center",renderCell:e=>(0,r.jsx)(tl.A,{value:e.isTurnable,fontSize:"small"}),getBooleanToMatchFilter:e=>!!e.isTurnable,getCSVValue:e=>e.isTurnable?"Yes":"No"},{key:"dedicatedPalletOnly",label:"Dedicated Pallet",align:"center",renderCell:e=>(0,r.jsx)(tl.A,{value:e.dedicatedPalletOnly,fontSize:"small"}),getBooleanToMatchFilter:e=>!!e.dedicatedPalletOnly,getCSVValue:e=>e.dedicatedPalletOnly?"Yes":"No"},{key:"excludeFromPackagingCalculations",label:(0,th.nV)(th.Q9.INVENTORY_ITEM_EXCLUDE_FROM_PACKAGING_CALCULATIONS),align:"center",renderCell:e=>(0,r.jsx)(tl.A,{value:e.excludeFromPackagingCalculations,fontSize:"small"}),getBooleanToMatchFilter:e=>!!e.excludeFromPackagingCalculations,getCSVValue:e=>e.excludeFromPackagingCalculations?"Yes":"No"},{key:"calculatePalletHeight",label:"Calc Pallet Height",align:"center",renderCell:e=>(0,r.jsx)(tl.A,{value:e.calculatePalletHeight,fontSize:"small"}),getBooleanToMatchFilter:e=>!!e.calculatePalletHeight,getCSVValue:e=>e.calculatePalletHeight?"Yes":"No"}])},[eu,ed]),tp=(0,Y.useMemo)(()=>[...tc.map(e=>({field:e.key,headerName:e.label,minWidth:"description"===e.key?220:120,flex:"name"===e.key||"description"===e.key?1:void 0,align:e.align,headerAlign:e.align,filterable:!e.disableFilter,type:e.getBooleanToMatchFilter?"boolean":void 0,valueGetter:(t,i)=>e.getBooleanToMatchFilter?e.getBooleanToMatchFilter(i):H().isFunction(e.getOrderByValue)?e.getOrderByValue(i):e.getOrderByValue?H().get(i,e.getOrderByValue):e.getStringsToMatchFilter?.(i)??H().get(i,e.key),renderCell:({row:t,value:i})=>{let n=e.renderCell?e.renderCell(t):"boolean"==typeof i?(0,r.jsx)(tl.A,{value:i,fontSize:"small"}):H().isNil(i)?null:String(i);return(0,r.jsx)(I.A,{sx:{width:"100%",minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",textAlign:e.align},children:n})}})),{field:"actions",type:"actions",headerName:"Actions",width:72,getActions:({row:e})=>[i?(0,r.jsx)(to.Z,{icon:(0,r.jsx)(ef.A,{}),label:"Unarchive",onClick:()=>
8eV({ids:[e.id]}),showInMenu:!0},"unarchive"):(0,r.jsx)(to.Z,{icon:(0,r.jsx)(eb.A,{}),label:"Archive",onClick:()=>eN(e.id),showInMenu:!0},"archive")]}],[eV,eN,i,tc]),tj=async()=>{td()(await (0,ts.h6)(tc,e),"inventory-items.csv")};return(0,r.jsxs)(r.Fragment,{children:[f&&(0,r.jsx)(em,{open:f,mode:"bulkEdit",bulkEditItems:e1,onClose:()=>{y(!1),o([]),v(!1)}}),b&&(0,r.jsx)(eI.h,{title:`Unarchive ${e1.length} Items`,subtitle:`Are you sure you want to unarchive these ${e1.length} items? `,open:b,isLoadingConfirm:eM,onCancel:()=>{j(!1)},onConfirm:()=>{e9(),j(!1),o([]),v(!1)}}),A&&(0,r.jsx)(eI.h,{title:`Archive ${e1.length} Items`,subtitle:`Press confirm to archive these ${e1.length} items. They can be restored later from the archived items view.`,open:A,isLoadingConfirm:eO,onCancel:()=>{C(!1)},onConfirm:()=>{e7(),C(!1),o([]),v(!1)}}),(0,r.jsx)(tr.A,{columns:tp,rows:e,loading:t,minHeight:"maxHeight",tableKey:l,showToolbar:!0,checkboxSelection:h,disableRowSelectionOnClick:!0,onRowSelectionModelChange:h?e=>{o(H()(e.ids).toArray().map(String).value())}:void 0,onRowClick:({row:e})=>n(e),initialState:{sorting:{sortModel:[{field:"sku",sort:"asc"}]}},toolbarProps:{additionalElements:(()=>{let e;if(!i){let t=(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(m.A,{variant:"contained",startIcon:(0,r.jsx)(eA.A,{fontSize:"small"}),onClick:()=>{$(void 0),M({open:!0,validationResult:void 0,isValidating:!1})},children:"Upload"}),(0,r.jsx)("input",{ref:eW,style:{display:"none"},id:"upload-resku-input",name:"upload-resku-input",accept:".csv",onChange:eZ,onClick:e=>{e.currentTarget.value=""},type:"file"}),(0,r.jsx)("input",{ref:eL,style:{display:"none"},id:"upload-variant-config-input",name:"upload-variant-config-input",accept:".csv",onChange:e0,onClick:e=>{e.currentTarget.value=""},type:"file"})]}),i=[(0,r.jsxs)(N.A,{onClick:()=>ea(!0),children:[(0,r.jsx)(ew.A,{children:(0,r.jsx)(ej.A,{fontSize:"small"})}),(0,r.jsx)(eS.A,{children:"Download Template"})]},"download-template"),(0,r.jsx)(z.A,{},"divider-2"),(0,r.jsxs)(N.A,{onClick:()=>{eW.current?.click()},children:[(0,r.jsx)(ew.A,{children:(0,r.jsx)(eA.A,{fontSize:"small"})}),(0,r.jsx)(eS.A,{children:"Bulk Re-SKU"})]},"bulk-resku"),(0,r.jsxs)(N.A,{onClick:()=>td()("Old SKU,New SKU,Name (optional),Description (optional)\n","Inventory Items Re-SKU Template.csv"),children:[(0,r.jsx)(ew.A,{children:(0,r.jsx)(ej.A,{fontSize:"small"})}),(0,r.jsx)(eS.A,{children:"Download Re-SKU Template"})]},"download-resku-template"),(0,r.jsx)(z.A,{},"divider-1"),(0,r.jsxs)(N.A,{onClick:()=>{eL.current?.click()},children:[(0,r.jsx)(ew.A,{children:(0,r.jsx)(eA.A,{fontSize:"small"})}),(0,r.jsx)(eS.A,{children:"Upload Variant"})]},"upload-variant"),(0,r.jsxs)(N.A,{onClick:()=>tt(),children:[(0,r.jsx)(ew.A,{children:(0,r.jsx)(ej.A,{fontSize:"small"})}),(0,r.jsx)(eS.A,{children:"Download Variant Template"})]},"download-variant-template")],n=(0,r.jsx)(ek.A,{mainButton:t,itemList:i,isLoading:ex,variant:"contained"},"upload-dropdown-button"),l=(0,tg.ax)(eo,ec)?(0,r.jsx)(ek.A,{mainButton:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(m.A,{startIcon:(0,r.jsx)(eA.A,{fontSize:"small"}),children:"Custom Upload"}),(0,r.jsx)("input",{ref:eB,style:{display:"none"},type:"file",onChange:eH,onClick:e=>{e.currentTarget.value=""}})]}),itemList:tm.cX.map(e=>(0,r.jsxs)(N.A,{onClick:()=>{S(e),eB.current?.click()},children:["Upload to ",e]},e)),isLoading:!1,variant:"contained"}):void 0,s=(0,r.jsx)(g.A,{title:"Create item",children:(0,r.jsx)(x.A,{onClick:a,children:(0,r.jsx)(ev.A,{})})});e=(0,r.jsxs)(r.Fragment,{children:[n,l,s]})}return[(0,r.jsx)(ta.A,{selectedAction:c,onActionSelect:d,actionsRef:void 0,inactiveElements:e,isSelecting:h,onCancel:()=>{v(!1),o([])},onSelect:()=>v(!0),selectedCount:s.length,children:i?(0,r.jsx)(ta.t,{label:"Unarchive",continuationLabel:"Next",disabled:eM,onClick:()=>j(!0),children:(0,r.jsx)(ef.A,{})}):(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(ta.t,{label:"Edit",continuationLabel:"Next",onClick:()=>y(!0),children:(0,r.jsx)(ey.A,{})}),(0,r.jsx)(ta.t,{label:"Archive",continuationLabel:"Next",disabled:eO,onClick:()=>C(!0),children:(0,r.jsx)(eb.A,{})})]})},"bulk-actions")]})(),onAdminResync:(0,tg.ax)(eo,ec)?e=>eh({source:e}):void 0,isAdminResyncing:eD,onDownloadCSV:tj},sx:{"& .MuiDataGrid-row":{cursor:"pointer"},"& .MuiDataGrid-cell":{display:"flex",alignItems:"center"}}}),(0,r.jsx)(e_,{open:V.open,onClose:()=>{M({open:!1,validationResult:void 0,isValidating:!1}),T([]),P(""),$(void 0),es(!1)},rows:k,filename:U,result:V.validationResult,isValidating:V.isValidating,clearEmptyFields:el,onClearEmptyFieldsChange:es,onConfirm:e6,onAttachFile:eJ,onRemoveFile:eG,uploadError:E,onUploadError:$}),(0,r.jsx)(eY,{open:q.open,onClose:()=>{B({open:!1,validationResult:void 0,isValidating:!1}),O([]),K("")},rows:R,filename:F,result:q.validationResult,isValidating:q.isValidating,onConfirm:e5}),(0,r.jsx)(eX,{open:Q.open,onClose:()=>{ee({open:!1,validationResult:void 0,isValidating:!1}),L([]),G("")}
8,rows:W,filename:D,result:Q.validationResult,isValidating:Q.isValidating,isSubmitting:eK,onConfirm:e3}),(0,r.jsx)(te,{open:en,onClose:()=>ea(!1),onConfirm:ti})]})}var tj=i(52825),tA=i(1627),tC=i(93927),tw=i(11784),tS=i(92133),tk=i(47347),tI=i(89099),tT=i(58297),tU=i(92556),tP=i(60724),tE=((a={}).Cancel="cancel",a.Renamed="renamed",a.Merged="merged",a);let tN=()=>(0,r.jsx)(S.A,{sx:{bgcolor:"#FFFBEB",borderBottom:"1px solid #FEECA7",mb:2},children:(0,r.jsxs)(u.A,{direction:"row",alignItems:"center",spacing:1,children:[(0,r.jsx)(I.A,{sx:{color:"#F59E0B",display:"flex",alignItems:"center"},children:(0,r.jsx)(tU.A,{fontSize:"large"})}),(0,r.jsx)(p.A,{variant:"h4",component:"span",sx:{color:"#92400D",display:"flex",alignItems:"center"},children:"Change SKU?"})]})}),tz=()=>(0,r.jsx)(S.A,{sx:{bgcolor:"#EF4444",borderBottom:"1px solid #EF4444",mb:2},children:(0,r.jsxs)(u.A,{spacing:.5,children:[(0,r.jsxs)(u.A,{direction:"row",alignItems:"center",spacing:1,children:[(0,r.jsx)(I.A,{sx:{color:"#FFFFFF",display:"flex",alignItems:"center"},children:(0,r.jsx)(tU.A,{fontSize:"large"})}),(0,r.jsx)(p.A,{variant:"h4",fontWeight:"bold",sx:{color:"#FFFFFF"},children:"Merge SKU?"})]}),(0,r.jsx)(p.A,{variant:"body2",sx:{color:"#FFFFFF"},children:"This action cannot be undone"})]})}),t$=({inventoryItem:e,initialSku:t,errorState:i})=>(0,r.jsxs)(u.A,{spacing:3,children:[(0,r.jsx)(p.A,{variant:"body1",color:"text.secondary",children:"This SKU will be updated across all orders in Owlery. However, if external systems send data with the previous SKU, it will be re-added automatically."}),(0,r.jsxs)(p.A,{variant:"body1",color:"text.secondary",children:["SKU changes are rarely necessary. If you're sure you want to proceed, click ",(0,r.jsx)("strong",{children:"Confirm"}),"."]}),(0,r.jsx)(I.A,{sx:{bgcolor:"#F5F5F5",p:2,borderRadius:1},children:(0,r.jsxs)(I.A,{sx:{display:"grid",gridTemplateColumns:"auto 1fr",rowGap:1,columnGap:2},children:[(0,r.jsx)(p.A,{variant:"body2",color:"text.secondary",sx:{fontFamily:"monospace"},children:"Previous:"}),(0,r.jsx)(p.A,{variant:"body2",color:"text.disabled",children:e.sku}),(0,r.jsx)(p.A,{variant:"body2",color:"text.secondary",sx:{fontFamily:"monospace"},children:"New:"}),(0,r.jsx)(p.A,{variant:"body2",color:"text.primary",fontWeight:"medium",children:t})]})}),i&&!i.isDuplicate&&(0,r.jsx)(f.A,{severity:"error",children:i.message})]}),tV=({inventoryItem:e,initialSku:t,confirmSkuInput:i,setConfirmSkuInput:n,errorState:a})=>(0,r.jsxs)(u.A,{spacing:3,children:[(0,r.jsxs)(p.A,{variant:"body1",children:["The SKU ",(0,r.jsx)("strong",{children:t})," already exists."]}),(0,r.jsxs)(p.A,{variant:"body1",children:["Merging will permanently combine ",(0,r.jsx)("strong",{children:e.sku})," into ",(0,r.jsx)("strong",{children:t}),". All orders, inventory records, and history associated with the current SKU will be transferred to the target SKU."]}),(0,r.jsxs)(p.A,{variant:"body1",children:[(0,r.jsx)("strong",{children:"Warning:"})," If external systems continue sending data with the old SKU, this may cause data inconsistencies or create duplicate records. Ensure all integrations are updated before proceeding."]}),(0,r.jsx)(f.A,{severity:"error",children:"This action is irreversible"}),a?.existingItemArchived&&(0,r.jsxs)(f.A,{severity:"warning",children:[(0,r.jsx)("strong",{children:t})," is archived. Confirming this merge will restore it, and the combined SKU will appear in the active inventory list."]}),(a?.shipperInventoryItemConflicts?.length??0)>0&&(0,r.jsx)(f.A,{severity:"warning",children:(0,r.jsxs)(u.A,{spacing:1,children:[(0,r.jsx)(p.A,{variant:"body2",children:"These SKUs have different buyer catalog IDs for the same customer. Merging will keep the target SKU's mappings:"}),a?.shipperInventoryItemConflicts?.map((e,t)=>(0,r.jsxs)(p.A,{variant:"body2",children:[(0,r.jsx)("strong",{children:e.targetShipperProfileName??"Customer"}),": replace ",e.buyerCatalogIdToDelete," with ",e.buyerCatalogIdToKeep]},`${e.targetShipperProfileName}:${e.buyerCatalogIdToDelete}:${e.buyerCatalogIdToKeep}:${t}`)),(0,r.jsx)(p.A,{variant:"body2",children:"Confirm below only if these are the mappings you want to retain."})]})}),(0,r.jsx)(I.A,{sx:{bgcolor:"#F5F5F5",p:2,borderRadius:1},children:(0,r.jsxs)(I.A,{sx:{display:"grid",gridTemplateColumns:"auto 1fr",rowGap:1,columnGap:2},children:[(0,r.jsx)(p.A,{variant:"body2",color:"text.secondary",sx:{fontFamily:"monospace"},children:"Current SKU:"}),(0,r.jsx)(p.A,{variant:"body2",color:"text.disabled",children:e.sku}),(0,r.jsx)(p.A,{variant:"body2",color:"text.secondary",sx:{fontFamily:"monospace"},children:"Merge into:"}),(0,r.jsxs)(u.A,{direction:"row",spacing:1,alignItems:"center",children:[(0,r.jsx)(p.A,{variant:"body2",color:"text.primary",fontWeight:"medium",children:t}),a?.existingItemArchived&&(0,r.jsx)(eC.A,{label:"Archived",color:"warning",size:"small"})]})]})}),(0,r.jsxs)(u.A,{spacing:1,children:[(0,r.jsxs)(p.A,{variant:"body2",children:["Type ",(0,r.jsx)(I.A,{component:"span",sx:{bgcolor:"action.selected",px:.5,borderRadius:.5,fontFamily:"monospace"},children:t})," to confirm:"]}),(0,r.jsx)(h.A,{value:i,onChange:e=>n(e.target.value),placeholder:"Enter SKU to confirm",fullWidth:!0,size:"small"})]}),a&&a.isDuplicate&&a.message&&!a.message.includes("already exists")&&(0,r.jsx)(f.A,{severity:"error",children:a.message})]});function tM({open:e,onClose:t,inventoryItem:i,initialSku:n}){let[a,{isLoading:l}]=(0,Z._j)(),[s,{isLoading:o}]=(0,Z.gP)(),[c,d]=(0,Y.useState)(""),[u,h]=(0,Y.useState)(null),[p,g]=(0,Y.useState)(!1),x=async()=>{h(null);try{await a({id:i.id,newSku:n}).unwrap(),(0,_.M8)(`Successfully updated SKU ${i.sku} to ${n}`,{variant:"success"}),t("renamed",void 0)}catch(t){let e=(0,tP.I)(t);
8e?(h({isDuplicate:!0,existingItemId:e?.detail?.existingItemId,existingItemArchived:e?.detail?.existingItemArchived===!0,message:e?.message||`The SKU ${n} already exists.`,shipperInventoryItemConflicts:e?.detail?.shipperInventoryItemConflicts}),g(!0)):h({isDuplicate:!1,existingItemId:void 0,existingItemArchived:!1,message:`We couldn't update ${i.sku} to ${n}. ${(0,er.tz)(t)} Try again to complete the change.`,shipperInventoryItemConflicts:void 0})}},v=async()=>{if(u?.existingItemId)try{if(!await (0,tP.w)({inventoryItemIdToKeep:u.existingItemId,inventoryItemIdsToDelete:[i.id],restoreInventoryItemToKeep:u.existingItemArchived,mappingConfirmation:void 0},e=>s(e).unwrap()))return;(0,_.M8)("Items merged successfully",{variant:"success"}),t("merged",u.existingItemId)}catch(e){h({isDuplicate:!0,existingItemId:u.existingItemId,existingItemArchived:u.existingItemArchived,message:`We couldn't merge ${i.sku} into ${n}. ${(0,er.tz)(e)} Try again to complete the merge.`,shipperInventoryItemConflicts:u.shipperInventoryItemConflicts})}};return(0,r.jsxs)(w.A,{open:e,onClose:()=>t("cancel",void 0),maxWidth:"sm",fullWidth:!0,children:[p?(0,r.jsx)(tz,{}):(0,r.jsx)(tN,{}),(0,r.jsx)(k.A,{children:p?(0,r.jsx)(tV,{inventoryItem:i,initialSku:n,confirmSkuInput:c,setConfirmSkuInput:d,errorState:u}):(0,r.jsx)(t$,{inventoryItem:i,initialSku:n,errorState:u})}),(0,r.jsxs)(K.A,{children:[(0,r.jsx)(m.A,{onClick:()=>t("cancel",void 0),disabled:l||o,variant:"text",color:"inherit",sx:{whiteSpace:"nowrap"},children:"Cancel"}),p?(0,r.jsx)(m.A,{onClick:v,disabled:l||o||c!==n,color:"error",variant:"outlined",children:"Merge"}):(0,r.jsx)(m.A,{onClick:x,disabled:l||o,variant:"contained",sx:{whiteSpace:"nowrap"},children:"Confirm"})]})]})}var tR=i(20499),tO=i(44824);let tF="targetShipperProfileName";function tK({sku:e}){return(0,r.jsxs)(u.A,{alignItems:"center",justifyContent:"center",spacing:1,sx:{height:"100%",p:4,textAlign:"center"},children:[(0,r.jsxs)(p.A,{variant:"subtitle1",children:["No customer item IDs are linked to ",e]}),(0,r.jsxs)(p.A,{variant:"body2",color:"text.secondary",sx:{maxWidth:480},children:["Customer item IDs are recorded when an incoming customer order maps ",e," to the customer's catalog. Once a mapping is received, it will appear here automatically."]})]})}function tq({inventoryItemId:e,sku:t}){let{locale:i}=(0,X.d4)(e=>e.user),{data:n,isFetching:a,isError:l,refetch:s}=(0,Z.J1)({inventoryItemId:e},{refetchOnMountOrArgChange:!1}),o=n?.items.filter(e=>!e.shipperProfileName||!e.targetShipperProfileName)??[],c=[{field:"shipperProfileName",headerName:"Shipper",renderCell:({row:e})=>e.shipperProfileName||"Unavailable",flex:1,minWidth:180},{field:tF,headerName:"Customer",renderCell:({row:e})=>e.targetShipperProfileName||"Unavailable",flex:1,minWidth:180},{field:"buyerCatalogId",headerName:"Buyer Catalog ID",flex:1,minWidth:180},{field:"updatedAtInMs",headerName:"Updated",minWidth:150,valueFormatter:e=>tO.c9.fromMillis(e).setLocale(i).toLocaleString(tO.c9.DATE_MED)}];return l?(0,r.jsxs)(f.A,{severity:"error",action:(0,r.jsx)(m.A,{color:"inherit",size:"small",startIcon:(0,r.jsx)(tR.A,{}),onClick:()=>void s(),children:"Retry"}),sx:{m:2},children:["We couldn't load customer item IDs for ",t,". Retry the request; once it succeeds, the linked customer IDs will appear here."]}):(0,r.jsxs)(I.A,{sx:{p:2},children:[o.length>0&&(0,r.jsxs)(f.A,{severity:"warning",sx:{mb:2},children:["We couldn't find linked shipper or customer names for SKU ",t," with customer item IDs:"," ",o.map(e=>e.buyerCatalogId).join(", "),"."," ","Contact support with these IDs to repair the mappings. Reopen this tab after they are fixed to see the names."]}),(0,r.jsx)(tr.A,{"aria-label":`Customer item IDs for ${t}`,columns:c,rows:n?.items??[],loading:a,minHeight:480,maxHeight:720,tableKey:"inventory-item-customer-ids-table",csvFileName:`inventory-item-${t}-customer-ids`,showToolbar:!0,disableRowSelectionOnClick:!0,rowSelection:!1,initialState:{sorting:{sortModel:[{field:tF,sort:"asc"}]}},slots:{noRowsOverlay:()=>(0,r.jsx)(tK,{sku:t})},sx:{"& .MuiDataGrid-cell":{display:"flex",alignItems:"center"}}})]})}var tB=i(56305),tW=i(13679),tL=i(19999),tD=i(80336),tH=i(8054),t_=i(98611),tY=i(62846),tG=i(84374),tQ=i(18267);function tX(e){return H().isNil(e)||!(H().isNil(e)||(0,tD.NF)(e))?"Enter positive whole-number quantities":e.from===e.to?"This is a 1 to 1 conversion. Turn off this switch instead.":void 0}function tJ(e,t,i,n){let a=""===e?void 0:parseInt(e,10),r={from:"from"===i?a:t?.from,to:"to"===i?a:t?.to};n(void 0===r.from&&void 0===r.to?void 0:r)}function tZ({open:e,onClose:t,onSubmit:i,options:n=[],loading:a=!1,baseInventoryItem:l,conversionData:s}){let{facilities:o,facilityOrganizations:c}=(0,X.d4)(e=>e.facilities),d=(0,X.d4)(tG.Tp.organizationFacilitySettingByFacilityProfileId),m=H().keyBy(c,e=>e.id),g=H().keyBy(n,e=>e.id),x=(0,Y.useMemo)(()=>{let e=H()(o).filter(e=>!H().isNil(e.organizationId)).groupBy(e=>
8e.organizationId).value(),t=[];return H().forEach(e,(e,i)=>{let n=m[i];t.push({id:i,orgEmailDomain:n?.companyEmailDomain,orgName:n?.name,facilityProfiles:H().map(e,e=>({...e,name:d[e.id]?.name??e.name}))})}),t},[o,m,d]),v=(0,Y.useMemo)(()=>(0,tH.Z)({stringify:e=>{let t=e.orgName||"",i=e.orgEmailDomain||"",n=e.facilityProfiles.map(e=>e.name||"").join(" ");return`${t} ${i} ${n}`.toLowerCase()}}),[]),f=(0,G.mN)({values:{inventoryItem:s?.inventoryItemId?g[s.inventoryItemId]:void 0,showFacilityConversion:!H().isNil(s?.profileType),facilityOrganizationId:s?.profileId?[s.profileId]:[],quantityUnit:s?.quantityUOM,enableSameUnitConversion:!H().isNil(s?.sameUnitConversion),sameUnitConversion:s?.sameUnitConversion}}),{handleSubmit:y,control:b,reset:j}=f,[A,C]=(0,Y.useState)(),w=(0,G.FH)({control:b,name:"quantityUnit"}),S=(0,G.FH)({control:b,name:"inventoryItem"}),k=(0,G.FH)({control:b,name:"showFacilityConversion"}),I=(0,G.FH)({control:b,name:"enableSameUnitConversion"}),T=()=>{C(void 0),j({inventoryItem:void 0,showFacilityConversion:!1,facilityOrganizationId:[],quantityUnit:void 0,enableSameUnitConversion:!1,sameUnitConversion:void 0}),t()},U=async e=>{if(C(void 0),!e.inventoryItem||!l)return;if(k&&e.enableSameUnitConversion){let t=tX(e.sameUnitConversion);if(t)return void f.setError("sameUnitConversion",{message:t})}let t={baseInventoryItemId:l.id,variantInventoryItemId:e.inventoryItem.id};k&&(t={...t,profileType:eG.Kr.FacilityOrganizationId,profileIds:e.facilityOrganizationId,quantityUnit:e.quantityUnit,sameUnitConversion:e.quantityUnit&&e.enableSameUnitConversion?e.sameUnitConversion:void 0});let n=await i(t);n?C(n):T()};return l?(0,r.jsx)(Q.CY,{isSubmitting:a,error:A,resetKey:[f.watch(),e,l.id],pathAdapter:tQ.XK,children:(0,r.jsx)(eI.h,{dialogProps:{maxWidth:"md",fullWidth:!0},isLoadingConfirm:a,onConfirm:y(U),open:e,onCancel:T,title:(0,r.jsxs)(u.A,{children:[(0,r.jsxs)(u.A,{children:[H().isNil(s)?"Add":"Edit"," SKU Mapping"]}),(0,r.jsxs)(p.A,{variant:"body2",children:["Your Item: ",l.sku]})]}),children:(0,r.jsx)(G.Op,{...f,children:(0,r.jsx)("form",{children:(0,r.jsxs)(u.A,{spacing:2,sx:{mt:1},children:[(0,r.jsx)(Q.PU,{fallbackMessage:A?(0,er.tz)(A):void 0}),(0,r.jsx)(Q.pq,{name:"inventoryItem",control:b,rules:{required:"SKU is required"},render:({field:e,fieldState:t})=>(0,r.jsx)(tY.A,{disabled:!H().isNil(s?.inventoryItemId),renderInput:i=>(0,r.jsx)(h.A,{...i,inputRef:e.ref,label:"Select a variant SKU",variant:"filled",error:!!t.error,helperText:t.error?.message||`This SKU will be treated as equivalent to ${l.sku}`,fullWidth:!0}),isOptionEqualToValue:(e,t)=>e.id===t.id,getOptionLabel:e=>e.sku,getOptionKey:e=>e.id,options:n,loading:a,value:e.value??null,onChange:(t,i)=>{e.onChange(i)},onBlur:e.onBlur})}),!H().isNil(S)&&(0,r.jsx)(t_.A,{children:(0,r.jsx)(Q.pq,{name:"showFacilityConversion",control:b,render:({field:e})=>(0,r.jsxs)(u.A,{direction:"row",alignItems:"start",spacing:1,children:[(0,r.jsx)(V.A,{checked:e.value,onChange:(t,i)=>{e.onChange(i),i||(f.setValue("facilityOrganizationId",[]),f.setValue("quantityUnit",void 0),f.setValue("enableSameUnitConversion",!1),f.setValue("sameUnitConversion",void 0),f.clearErrors(["facilityOrganizationId","sameUnitConversion"]))},name:"toFacility"}),(0,r.jsxs)(u.A,{sx:{pointerEvents:"none",userSelect:"none"},children:[(0,r.jsx)(p.A,{variant:"body2",children:"Add facility-specific conversion"}),(0,r.jsxs)(p.A,{variant:"caption",color:"text.secondary",children:["We will convert ",l.sku," to ",S.sku," before sending to the selected facilities."]})]})]})})}),k&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(Q.pq,{name:"facilityOrganizationId",control:b,rules:{required:!!k&&"Facility is required",validate:e=>!k||(H().isNil(s)?0!==e.length||"At least one facility must be selected":1===e.length||"Exactly one facility must be selected")},render:({field:e,fieldState:t})=>{let i=!H().isNil(s),n=i?x.find(t=>e.value.includes(t.id))||null:x.filter(t=>e.value.includes(t.id));return(0,r.jsx)(tY.A,{multiple:!i,disableCloseOnSelect:!i,filterSelectedOptions:!i,renderInput:i=>(0,r.jsx)(h.A,{...i,inputRef:e.ref,label:"Facility",variant:"filled",error:!!t.error,helperText:t.error?.message,fullWidth:!0}),isOptionEqualToValue:(e,t)=>
8e.id===t?.id,getOptionLabel:e=>e.orgName||e.orgEmailDomain||e.id,getOptionKey:e=>e.id,options:x,value:n,onChange:(t,n)=>{i?e.onChange(n?[n.id]:[]):e.onChange(n.map(e=>e.id))},onBlur:e.onBlur,filterOptions:v,renderOption:(e,t)=>(0,Y.createElement)("li",{...e,key:t.id},(0,r.jsxs)(u.A,{spacing:.5,sx:{py:.5},children:[(0,r.jsx)(p.A,{variant:"subtitle2",children:t.orgName||t.orgEmailDomain}),(0,r.jsx)(u.A,{direction:"row",spacing:1,flexWrap:"wrap",sx:{gap:1},children:t.facilityProfiles.map((e,t)=>(0,r.jsx)(p.A,{variant:"caption",sx:{px:1,py:.5,bgcolor:"primary.main",borderRadius:1,color:"primary.contrastText"},children:e.name},e.id||t))})]}))})}}),(0,r.jsx)(Q.pq,{name:"quantityUnit",control:b,render:({field:e,fieldState:t})=>(0,r.jsx)(tY.A,{fullWidth:!0,fitContentWidth:!1,renderInput:i=>(0,r.jsx)(h.A,{...i,inputRef:e.ref,label:"Preferred Unit",variant:"filled",error:!!t.error,helperText:t.error?.message,fullWidth:!0}),isOptionEqualToValue:(e,t)=>e===t,getOptionLabel:e=>H().startCase(e),getOptionKey:e=>e,options:Object.values(J.al),value:e.value,onChange:(t,i)=>{e.onChange(i??void 0),f.setValue("enableSameUnitConversion",!1),f.setValue("sameUnitConversion",void 0),f.clearErrors("sameUnitConversion")},onBlur:e.onBlur})}),w&&S&&(0,r.jsx)(t_.A,{children:(0,r.jsx)(Q.pq,{name:"enableSameUnitConversion",control:b,render:({field:e})=>(0,r.jsxs)(u.A,{direction:"row",alignItems:"start",spacing:1,children:[(0,r.jsx)(V.A,{checked:e.value,onChange:(t,i)=>{e.onChange(i),i||(f.setValue("sameUnitConversion",void 0),f.clearErrors("sameUnitConversion"))},name:"enableSameUnitConversion"}),(0,r.jsxs)(u.A,{sx:{pointerEvents:"none",userSelect:"none"},children:[(0,r.jsxs)(p.A,{variant:"body2",children:["Does this facility use the same UOM name as ",l.sku,", but with a different conversion ratio for ",S.sku,"?"]}),(0,r.jsx)(p.A,{variant:"caption",color:"text.secondary",children:'This is not common. For example, turn this on if a facility calls both SKUs "Case", but 1 Case of BASE-123 equals 24 eaches while 1 Case of VARIANT-456 equals 12 eaches.'})]})]})})}),w&&S&&I&&(0,r.jsx)(Q.pq,{name:"sameUnitConversion",control:b,rules:{validate:e=>tX(e)||!0},render:({field:e,fieldState:t})=>(0,r.jsxs)(u.A,{direction:"row",spacing:2,alignItems:"baseline",children:[(0,r.jsx)(h.A,{type:"number",variant:"filled",size:"small",error:!!t.error,helperText:t.error?.message,inputProps:{min:1,step:1},placeholder:"Original Qty",onChange:t=>{tJ(t.target.value,e.value,"from",e.onChange)},value:e.value?.from??"",sx:{width:150}}),(0,r.jsxs)(p.A,{variant:"body2",sx:{minWidth:"fit-content"},children:[H().startCase(w)," of ",l.sku," equals"]}),(0,r.jsx)(h.A,{type:"number",variant:"filled",size:"small",error:!!t.error,inputProps:{min:1,step:1},placeholder:"Converted Qty",onChange:t=>{tJ(t.target.value,e.value,"to",e.onChange)},value:e.value?.to??"",sx:{width:150}}),(0,r.jsxs)(p.A,{variant:"body2",sx:{minWidth:"fit-content"},children:[H().startCase(w)," of ",S.sku]})]})})]})]})})})})}):null}let t0=function({inventoryItem:e}){let{inventoryItems:t}=(0,X.d4)(e=>e.inventories),i=(0,X.d4)(tu.A.selectors.conversionByInventoryItemId),n=(0,X.d4)(tu.A.selectors.facilityProfileInConversionByOrganizationId),a=(0,X.d4)(tu.A.selectors.variantInventoryItemByBaseInventoryItemId),l=(0,X.d4)(tu.A.selectors.inventoryItemById),[s,o]=(0,Y.useState)(),[c,d]=(0,Y.useState)(!1),{isLoading:h}=(0,tL.vq)({includeArchived:!1,includeSources:!1,includeFacilityOrganizations:!0}),[m,{isLoading:g}]=(0,Z.kG)(),[x,{isLoading:v}]=(0,Z.Lv)(),[f,{isLoading:y}]=(0,Z.$k)(),[b,j]=(0,Y.useState)(!1),[A,w]=(0,Y.useState)(),S=function(e,t,i,n,a){if(!e)return[];let{variantInventoryItems:r,conversions:l}=(0,tD.p9)(e,i,t),s=[...l,...H()(r).map(e=>t[e.id]||[{inventoryItemId:e.id}]).flatten().value()];if(H().isEmpty(s))return[];let o=H()(s).map((e,t)=>{let i={id:`${e.id||e.inventoryItemId}-${t}`,sku:a[e.inventoryItemId]?.sku||"",inventoryItemId:e.inventoryItemId,conversionId:e.id,quantityUOM:e.quantityUOM,sameUnitConversion:e.sameUnitConversion,profiles:[],profileId:e.profileId,profileType:e.profileType};if(e.profileType&&e.profileId&&e.profileType===eG.Kr.FacilityOrganizationId){let t=n[e.profileId],a=H().groupBy(t,e=>e.organizationId);return H().map(a,(e,t)=>({...i,profiles:H().map(e,e=>({name:e.name,orgName:e.organization.name,orgCompanyEmailDomain:e.organization.companyEmailDomain}))}))}return[i]}
8).compact().flatten().value();return H()(o).orderBy([e=>e.profiles.length||"",e=>+(e.profileType===eG.Kr.FacilityOrganizationId),e=>e.profiles[0]?.name||""],["desc","desc","asc"]).map((e,t)=>({sortKey:t,...e})).value()}(e,i,a,n,l),k=(0,Y.useMemo)(()=>(0,tD.Vf)(e,t),[e,t]),I=[{key:"sku",label:"SKU",align:"left"},{key:"target",label:"Target",align:"left",renderCell:e=>(0,r.jsx)(u.A,{spacing:.5,children:e.profileType===eG.Kr.FacilityOrganizationId?H().map(e.profiles,e=>(0,r.jsxs)(p.A,{variant:"body2",children:[e.name," (",e.orgName||e.orgCompanyEmailDomain,")"]})):(0,r.jsx)(p.A,{variant:"body2",children:e.profiles[0]?.name})})},{key:"unit",label:"Preferred Unit",renderCell:e=>(0,r.jsxs)(r.Fragment,{children:[H().upperFirst(e.quantityUOM),e.sameUnitConversion&&(0,r.jsxs)(p.A,{variant:"body2",children:[e.sameUnitConversion.from," / ",e.sameUnitConversion.to]})]})}],T=async t=>{if(!e)return"Inventory item not found";return A?(await f({...t,conversionId:A?.conversionId})).error:(await x(t)).error};(0,tW.A)(()=>{s&&(s.conversionId?d(!0):P())},[s]);let U=()=>{o(void 0),d(!1)},P=async()=>{if(e&&s){let{error:t}=await m({baseInventoryItemId:e.id,variantInventoryItemId:s.inventoryItemId,conversionId:s.conversionId});if(t)return void(0,_.M8)((0,er.tz)(t),{variant:"error"});U()}else(0,_.M8)("inventoryItem or waitToDeleteVariantItem is not found",{variant:"error"})};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(tB.A,{columns:I,rows:S,initialOrderByColumnKey:"sortKey",additionalToolbarButtons:[(0,r.jsx)(C.A,{variant:"outlined",size:"small",loading:h,onClick:()=>{j(!0)},children:"Add Variant Item"},"suggest-lanes-rfp")],rowMoreMenu:h?void 0:{onDelete:async(t,i)=>{i&&e?.id?o({inventoryItemId:i.inventoryItemId,conversionId:i.conversionId}):(0,_.M8)("Invalid row or inventory item",{variant:"error"})},onEdit:(e,t)=>{w(t),j(!0)}}}),(0,r.jsx)(tZ,{baseInventoryItem:e,conversionData:A,open:b,onClose:()=>{w(void 0),j(!1)},onSubmit:T,options:k,loading:v||y}),(0,r.jsx)(eI.h,{open:c,title:"Confirm Delete",subtitle:"This variant item has conversion information configured. Deleting it will also remove the associated conversion data. Are you sure you want to proceed?",isLoadingConfirm:g,onConfirm:P,onCancel:U})]})};var t1=i(54510),t2=i(59757);function t8(e){return!H().isNil(e.deletedAtInMs)}let t4=({initialSku:e,onSave:t,onCancel:i,disabled:n})=>{let[a,l]=(0,Y.useState)(e);return(0,r.jsxs)(u.A,{spacing:1,sx:{pr:1},children:[(0,r.jsx)(h.A,{value:a,onChange:e=>l(e.target.value),disabled:n,variant:"outlined",size:"small",fullWidth:!0}),(0,r.jsxs)(u.A,{direction:"row",spacing:1,justifyContent:"flex-end",children:[(0,r.jsx)(m.A,{size:"small",variant:"text",color:"inherit",sx:{whiteSpace:"nowrap"},onClick:i,children:"Cancel"}),(0,r.jsx)(m.A,{size:"small",variant:"contained",sx:{whiteSpace:"nowrap"},onClick:()=>t(a),disabled:n||!a.trim()||a.trim()===(e||""),children:"Save"})]})]},"sku-field")};function t5(){let e=(0,tI.useRouter)(),[t,i]=(0,Y.useState)("active"),{isFetching:n}=(0,Z.o5)({deletedItemOnly:"archived"===t}),[a,{isLoading:h}]=(0,Z.NL)(),{locale:j}=(0,X.d4)(e=>e.user),{baseInventoryItems:A,inventoryItems:C}=(0,X.d4)(e=>e.inventories),w=(0,X.d4)(tu.A.selectors.variantInventoryItemByBaseInventoryItemId),S=(0,X.d4)(tu.A.selectors.conversionByInventoryItemId),{selected:k,setSelected:I,setMergedTargetItemId:T}=function(e,t){let[i,n]=(0,Y.useState)(null),[a,r]=(0,Y.useState)(void 0);return(0,t1.A)(()=>{let l=e.filter(e=>null==e.deletedAtInMs);if(a){let e=l.find(e=>e.id===a);if(!e)return;n(e),r(void 0);return}let s=l.find(e=>e.id===i?.id)??l.find(e=>e.id===t);s&&n(s)},[e,a,t]),{selected:i,setSelected:n,setMergedTargetItemId:r}}(C,e.query.id),[U,P]=(0,Y.useState)("Details"),{currentData:E,isError:N,refetch:z}=(0,Z.J1)(k?{inventoryItemId:k.id}:tk.hT),$=(E?.items.length??0)>0,V="Customer IDs"!==U||$?U:"Details",[M,R]=(0,Y.useState)(!1),[O,F]=(0,Y.useState)(!1),[K,q]=(0,Y.useState)(!1),[B,W]=(0,Y.useState)(!1);(0,Y.useRef)(null);let[L,D]=(0,Y.useState)("");(0,Y.useMemo)(()=>k?(0,tD.Gr)(k,w,S):0,[k,w,S]);let _=(0,Y.useMemo)(()=>H().reject(A,t8),[A]),G=(0,Y.useMemo)(()=>H().filter(A,t8),[A]);(0,Y.useEffect)(()=>{k&&(D(k.sku||""),W(!1))},[k?.id,k?.sku]);let Q=H()(k?.packaging).map((e,t)=>{if(!e?.parentPackaging)return;let i=(0,eQ.aL)(H().startCase(e.type)),n=H().startCase(e.parentPackaging);return(0,tj.lo)(`${i} Per ${n}`,[e.unitsPerParent?.toString()])}
8).compact().value();if(k?.packaging?.each?.parentPackaging!==J.al.pallet){let e,t=k?.packaging?.each?.parentPackaging===J.al.case?k.packaging.each.unitsPerParent:void 0,i=k?.packaging?.case?.parentPackaging===J.al.pallet?k.packaging.case.unitsPerParent:void 0;if(t&&i&&(e=t*i),e){let t=(0,tj.lo)("Units Per Pallet",[e.toString()]);t&&Q.push(t)}}let ee=H()(k?.packaging).map((e,t)=>{if(!e?.weight&&e?.dimensions?.height||!e?.type)return;let i=H().startCase(e?.type),n=2;return e?.weight?.value&&e?.weight.value<.1&&(n=(0,el.FZ)(e?.weight.value)),(0,tj.lo)(`${i} Weight`,[e?.weight?(0,tp.sb)(e.weight,n):"-"])}).compact().value(),et=H()(k?.packaging).map((e,t)=>{if(!e?.dimensions)return;let i=H().startCase(e.type);return(0,tj.lo)(`${i} Dimensions`,[(0,tp.t6)(e.dimensions)])}).compact().value(),ei=(0,Y.useMemo)(()=>{let e=new Map;H()([...ee,...et]).forEach(t=>{if(!t||!t.title)return;let i=(t.title.toString().split(" ")[0]??"").toLowerCase();e.has(i)||e.set(i,[]),e.get(i)?.push(t)});let t=new Set;H()(Q).forEach(e=>{if(!e||!e.title)return;let i=e.title.toString(),n="";if("Units Per Pallet"===i)n="pallet",t.add(n);else{let e=i.match(/^(\w+)\s+Per\s+(\w+)$/);if(e&&e.length>=3){let i=(e[1]??"").toLowerCase();i.endsWith("s")&&(i=i.slice(0,-1)),n=i,t.add(n);let a=(e[2]??"").toLowerCase();a.endsWith("s")&&(a=a.slice(0,-1)),t.add(a)}}}),H()([...ee,...et]).forEach(e=>{if(!e||!e.title)return;let i=(e.title.toString().split(" ")[0]??"").toLowerCase();t.add(i)});let i=[];H()(Q).forEach(t=>{if(!t||!t.title)return;let n=t.title.toString(),a="";if("Units Per Pallet"===n)a="pallet";else{let e=n.match(/^(\w+)\s+Per\s+(\w+)$/);if(e&&e.length>=3){let t=(e[1]??"").toLowerCase();t.endsWith("s")&&(t=t.slice(0,-1)),a=t}}if(a){let t=e.get(a)||[],n=H()(t).find(e=>!!e&&!!e.title&&e.title.toString().toLowerCase().includes("weight"));n&&(i.push(n),e.set(a,H()(t).reject(e=>e===n).value()))}});let n=[...e.entries()];return H()(n).forEach(([e,t])=>{let n=H()(t).filter(e=>!!e&&!!e.title&&e.title.toString().toLowerCase().includes("weight")).value();i.push(...n)}),H().concat(i,et)},[Q,ee,et]),en=null;if(k?.reeferSettings){let e=(0,es.$n)(k.reeferSettings);en=(0,r.jsx)(u.A,{spacing:.5,children:H().map(e,e=>(0,r.jsx)(p.A,{variant:"body2",children:e}))})}let ea=!!k&&t8(k),er=[{title:"Details",column1Items:[(0,tj.lo)("SKU",[B?(0,r.jsx)(t4,{initialSku:k?.sku||"",disabled:h||ea,onCancel:()=>W(!1),onSave:e=>{e===(k?.sku||"")?W(!1):(D(e),q(!0))}},"sku-editor"):(0,r.jsxs)(u.A,{direction:"row",alignItems:"center",spacing:1,children:[(0,r.jsx)(p.A,{variant:"body2",children:k?.sku}),!ea&&(0,r.jsx)(g.A,{title:"Edit SKU",children:(0,r.jsx)(x.A,{size:"small",onClick:()=>W(!0),children:(0,r.jsx)(l.A,{fontSize:"small"})})})]},"sku-display")]),(0,tj.lo)("Description",[k?.description]),(0,tj.lo)((0,r.jsxs)(u.A,{direction:"row",alignItems:"center",spacing:.7,children:[(0,r.jsx)(p.A,{variant:"subtitle1",color:"text.secondary",children:"Stackable"}),(0,r.jsx)(g.A,{title:"Whether or not this item can be stacked on top of other items.",arrow:!0,children:(0,r.jsx)(o.A,{fontSize:"inherit",color:"disabled"})})]}),[k?.isStackable?"Yes":"No"]),(0,tj.lo)((0,r.jsxs)(u.A,{direction:"row",alignItems:"center",spacing:.7,children:[(0,r.jsx)(p.A,{variant:"subtitle1",color:"text.secondary",children:"Turnable"}),(0,r.jsx)(g.A,{title:"Whether or not this item can be turned or rotated during loading.",arrow:!0,children:(0,r.jsx)(o.A,{fontSize:"inherit",color:"disabled"})})]}),[k?.isTurnable?"Yes":"No",(0,r.jsx)(v.A,{children:k?.isTurnable?`${k?.sku} can be turned.`:`${k?.sku} cannot be turned.`},"turnable-helper-text")]),(0,tj.lo)((0,r.jsxs)(u.A,{direction:"row",alignItems:"center",spacing:.7,children:[(0,r.jsx)(p.A,{variant:"subtitle1",color:"text.secondary",children:"Dedicated Pallet Only"}),(0,r.jsx)(g.A,{title:"Whether or not this item can be combined with other items having the same pallet dimension.",arrow:!0,children:(0,r.jsx)(o.A,{fontSize:"inherit",color:"disabled"})})]}),[k?.dedicatedPalletOnly?"Required":"Optional"])],column2Items:[(0,tj.lo)("Equipment Type",[k?.reeferSettings?"Reefer":"Dryvan"]),(0,tj.lo)("Hazmat",[k?.hazmatSettings?"Yes":null]),(0,tj.lo)("Reefer Settings",[en]),(0,tj.lo)("NMFC Code",[k?.nmfcCode]),(0,tj.lo)("HS Code",[k?.hsCode]),(0,tj.lo)("Exclude from packaging calculations",[k?.excludeFromPackagingCalculations?"Yes":"No"]),(0,tj.lo)("Preferred BOL UOM",[k?.preferredBolUom?H().startCase(k.preferredBolUom):null]),(0,tj.lo)("Preferred ASN UOM",[k?.preferredUom?H().startCase(k.preferredUom):null]),(0,tj.lo)((0,r.jsxs)(u.A,{direction:"row",alignItems:"center",spacing:.7,children:[(0,r.jsx)(p.A,{variant:"subtitle1",color:"text.secondary",children:"Calculate Pallet Height"}),(0,r.jsx)(g.A,{title:"Whether or not we derive the pallet height based off of the pallet fraction. i.e. 0.5 pallets of 48x40x56 will convert to 1 pallet of 48x40x28.",arrow:!0,children:(0,r.jsx)(o.A,{fontSize:"inherit",color:"disabled"})})]}),[k?.calculatePalletHeight?"Yes":"No"]),(0,tj.lo)("GTIN (8/12/13)",H().compact([k?.gtinCodes?.gtin8?`8: ${k.gtinCodes.gtin8}`:void 0,k?.gtinCodes?.gtin12?`12: ${k.gtinCodes.gtin12}`:void 0,k?.gtinCodes?.gtin13?`13: ${k.gtinCodes.gtin13}`:void 0]))]}
8,{title:"Packaging",alertProps:H().isEmpty(Q)&&H().isEmpty(ei)?{severity:"info",children:"No packaging info."}:void 0,column1Items:Q,column2Items:ei}],eo=[{value:"active",label:"Inventory Items",table:(0,r.jsx)(tb,{inventoryItems:_,isLoading:n,isArchivedItems:!1,onSelect:I,onCreate:()=>F(!0),tableKey:"inventory-items-table"}),rowCount:0,isLoading:n},{value:"archived",label:"Archived Items",table:(0,r.jsx)(tb,{inventoryItems:G||[],isLoading:n,isArchivedItems:!0,onSelect:I,tableKey:"inventory-items-table"}),rowCount:0,isLoading:n}],[ec,ed]=(0,Y.useState)(!1),[eu,eh]=(0,Y.useState)(null),[ep,{isFetching:eg}]=(0,Z.tr)(),ex=async()=>{if(k?.id)try{await ep({id:k.id}).unwrap(),ed(!0)}catch(e){eh(H().get(e,"data.message","Failed to resync item."))}},ev=(0,r.jsx)(g.A,{title:"Sync the latest data.",children:(0,r.jsx)("span",{children:(0,r.jsx)(x.A,{color:"secondary",onClick:ex,children:(0,r.jsx)(y.A,{isLoading:eg})})})},"sync-button"),ef=[];return k&&ef.push((0,r.jsx)(tA.A,{color:"secondary",loading:n,onClick:()=>{R(!0)},children:(0,r.jsx)(l.A,{})})),(0,r.jsx)(t2.A,{children:(0,r.jsxs)(tT.A,{title:"Owlery.ai | Inventory Items",children:[k&&(0,r.jsxs)(tw.Ay,{drawerHeaderProps:{title:`Inventory Item ${ea?"(Archived)":""}`,subtitle1:`SKU ${k?.sku}`,subtitle2:k.name,actions:[...ef,ev]},tabs:H().compact([{icon:s.A,label:"Details"},{icon:c.A,label:"Variants"},$&&{icon:d.A,label:"Customer IDs"}]),selectedTab:V,onSelectTab:P,open:!!k,onClose:()=>I(null),urlParams:{id:k.id},isLoading:h,children:[N&&!$&&(0,r.jsxs)(f.A,{severity:"error",action:(0,r.jsx)(m.A,{color:"inherit",size:"small",onClick:()=>void z(),children:"Retry"}),sx:{mb:2},children:["We couldn't check customer IDs for SKU ",k.sku,". Retry the request; the Customer IDs tab will appear if mappings are available."]}),(0,r.jsx)(b.A,{archivedAtInMs:k.deletedAtInMs,archivedBy:k.deletedByUser,archivedById:k.deletedBy,guidance:"Restore it from Archived Items; once restored, it will return to the active inventory list.",locale:j,recordLabel:"This inventory item"}),(0,r.jsx)(tw.I4,{label:"Details",value:V,children:(0,r.jsx)(tC.A,{sections:er})}),(0,r.jsx)(tw.I4,{label:"Variants",value:V,children:(0,r.jsx)(t0,{inventoryItem:k})}),(0,r.jsx)(tw.I4,{label:"Customer IDs",value:V,children:(0,r.jsx)(tq,{inventoryItemId:k.id,sku:k.sku})})]}),(0,r.jsx)(tS.A,{tabs:eo,analyticsTableName:"inventory-items",tab:t,onTabSelected:e=>i(e),tabListProps:{sx:{ml:1.25}}}),M&&k&&(0,r.jsx)(em,{mode:"edit",inventoryItem:k,open:!!M,onClose:()=>R(!1)}),(0,r.jsx)(em,{mode:"create",open:O,onClose:()=>F(!1)}),K&&k&&(0,r.jsx)(tM,{open:K,onClose:(e,t)=>{q(!1),e===tE.Renamed?W(!1):e===tE.Merged&&(W(!1),I(null),P("Details"),i("active"),T(t))},inventoryItem:k,initialSku:L})]})})}},80868:(e,t,i)=>{"use strict";var n=i(29563);t.A=void 0;var a=n(i(60065)),r=i(37876);t.A=(0,a.default)((0,r.jsx)("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m-2 15-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8z"}),"CheckCircle")},84400:(e,t,i)=>{"use strict";i.d(t,{A:()=>l});var n=i(37876),a=i(67050),r=i(97800);function l({sx:e,...t}){return(0,n.jsx)(a.A,{...t,sx:(0,r.I)("success",e)})}},85204:(e,t,i)=>{"use strict";var n=i(29563);t.A=void 0;var a=n(i(60065)),r=i(37876);t.A=(0,a.default)((0,r.jsx)("path",{d:"m21.9 8.89-1.05-4.37c-.22-.9-1-1.52-1.91-1.52H5.05c-.9 0-1.69.63-1.9 1.52L2.1 8.89c-.24 1.02-.02 2.06.62 2.88.08.11.19.19.28.29V19c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2v-6.94c.09-.09.2-.18.28-.28.64-.82.87-1.87.62-2.89m-2.99-3.9 1.05 4.37c.1.42.01.84-.25 1.17-.14.18-.44.47-.94.47-.61 0-1.14-.49-1.21-1.14L16.98 5zM13 5h1.96l.54 4.52c.05.39-.07.78-.33 1.07-.22.26-.54.41-.95.41-.67 0-1.22-.59-1.22-1.31zM8.49 9.52 9.04 5H11v4.69c0 .72-.55 1.31-1.29 1.31-.34 0-.65-.15-.89-.41-.25-.29-.37-.68-.33-1.07m-4.45-.16L5.05 5h1.97l-.58 4.86c-.08.65-.6 1.14-1.21 1.14-.49 0-.8-.29-.93-.47-.27-.32-.36-.75-.26-1.17M5 19v-6.03c.08.01.15.03.23.03.87 0 1.66-.36 2.24-.95.6.6 1.4.95 2.31.95.87 0 1.65-.36 2.23-.93.59.57 1.39.93 2.29.93.84 0 1.64-.35 2.24-.95.58.59 1.37.95 2.24.95.08 0 .15-.02.23-.03V19z"}),"Storefront")},92556:(e,t,i)=>{"use strict";var n=i(29563);t.A=void 0;var a=n(i(60065)),r=i(37876);t.A=(0,a.default)((0,r.jsx)("path",{d:"M11 15h2v2h-2zm0-8h2v6h-2zm.99-5C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2M12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8"}),"ErrorOutline")},93820:(e,t,i)=>{(window.__NEXT_P=window.__NEXT_P||[]).push(["/dashboard/inventory-items",function(){return i(75334)}])},95204:(e,t,i)=>{"use strict";i.d(t,{A:()=>r});var n=i(38884),a=i(37876);let r=(0,n.A)((0,a.jsx)("path",{d:"M22 7h-9v2h9zm0 8h-9v2h9zM5.54 11 2 7.46l1.41-1.41 2.12 2.12 4.24-4.24 1.41 1.41zm0 8L2 15.46l1.41-1.41 2.12 2.12 4.24-4.24 1.41 1.41z"}),"Checklist")},95782:(e,t,i)=>{"use strict";i.d(t,{A:()=>r});var n=i(38884),a=i(37876);let r=(0,n.A)((0,a.jsx)("path",{d:"m20.54 5.23-1.39-1.68C18.88 3.21 18.47 3 18 3H6c-.47 0-.88.21-1.16.55L3.46 5.23C3.17 5.57 3 6.02 3 6.5V19c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V6.5c0-.48-.17-.93-.46-1.27M12 17.5 6.5 12H10v-2h4v2h3.5zM5.12 5l.81-1h12l.94 1z"}),"Archive")}},e=>{e.O(0,[8779,6603,6542,2835,1470,8138,636,6593,8792],()=>e(e.s=93820)),_N_E=e.O()}]);
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.