1import{K as e,r as t,o as l,w as a,c as i,e as n,h as o,$ as r,Q as s,a1 as u,O as c,V as d,Z as p,Y as v,af as g,W as b,U as m}from"./vendor-core-B_XRYw1x.js";import{E as h}from"./EditIntegration-BbRRg0du.js";import{C as f,S as k,l as y,d as x}from"./app-5vdzLte1.js";import{B as w}from"./BaseEditIntegration-BQ0Le-xa.js";import{R as C}from"./ReflectorField-Dqv2GMMC.js";import{R as T}from"./ReflectorCheckboxField-C-qKP96i.js";import{_ as I}from"./ReflectorSelectField-Ojlvwofw.js";import"./vendor-datetime-BsgW3Zgl.js";import"./vendor-charts-D0gtSNZr.js";import"./lm-capability-BG9qHfEZ.js";import"./ReflectorRadioField-BkmCfzmu.js";const S={key:0,class:"alert alert-warning",role:"alert"},M={class:"content-block"},E={class:"row align-items-center"},V={class:"col"},R={class:"text-muted small mb-0"},D={class:"col-auto"},P=["disabled"],A={key:0,class:"spinner-border spinner-border-sm me-2",role:"status","aria-hidden":"true"},$={key:0,class:"row pt-2"},j={class:"col-12"},F={class:"alert alert-warning mb-0",role:"alert"},O={class:"row pt-2"},U={class:"col-xs-12 col-md-8"},H={key:1,class:"row pt-2"},L={key:0,class:"col-xs-12 col-md-8"},N={key:1,class:"col-xs-12 col-md-8"},_={class:"row align-items-center"},W={class:"col-auto"},B={class:"content-block"},G={class:"row pt-2 align-items-center"},Y={class:"col-xs-12 col-md-8"},q={class:"col-xs-12 col-md-4"},z=["disabled"],J={key:0,class:"spinner-border spinner-border-sm me-2",role:"status","aria-hidden":"true"},K={class:"row pt-2"},Q={class:"col-xs-12 col-md-8"},Z={class:"row pt-2"},X={class:"col-xs-12 col-md-8"},ee={class:"row pt-2"},te={class:"col-xs-12 col-md-8"},le={class:"row pt-2"},ae={class:"col-xs-12 col-md-8"},ie={class:"row pt-2"},ne={class:"col-xs-12 col-md-8"},oe={class:"content-block"},re={class:"row"},se={class:"col-12"},ue={class:"text-muted small mb-0"},ce={key:0,class:"row pt-2"},de={key:1,class:"row pt-2"},pe={class:"col-12"},ve={class:"d-flex align-items-center flex-wrap gap-2 mb-2"},ge={key:0,class:"badge bg-warning text-dark"},be={key:1,class:"badge bg-warning text-dark"},me=["aria-label","onClick"],he={class:"col-auto text-muted small"},fe={class:"col-12 col-md-6"},ke=["value","aria-label","onChange"],ye=["value"],xe={class:"col-auto"},we=["aria-label","onClick"],Ce=["aria-label","onClick"],Te=["aria-label","onClick"],Ie=["onClick"],Se={__name:"TargetPlusEditIntegration",setup(Se){const Me=h(),Ee=f(),Ve=k(),Re=e(()=>({...Me.getMarketValues})),De=t(y(Me.getMarketValue("sellerToken"))),Pe=t(!1),Ae=t({oauthConnected:!1,tokenExpiresAt:null,refreshTokenExpiresAt:null,hasSellerToken:!1}),$e=e(()=>{if(!Ae.value.refreshTokenExpiresAt)return!1;return new Date(Ae.value.refreshTokenExpiresAt).getTime()-Date.now()<=2592e6}),je=e(()=>Ae.value.refreshTokenExpiresAt?new Date(Ae.value.refreshTokenExpiresAt).toLocaleDateString():"");const Fe=t(!1),Oe=t(""),Ue=t(!1);function He(){Ue.value=!0,x(`/svc/integration/targetplus/redirect-url?integration_config_id=${Me.integrationConfigId}`,{method:"GET"}).then(e=>{e&&e.url?window.location.assign(e.url):(Ee.errorToast("Target did not return a sign-in link. Please try again."),Ue.value=!1)}).catch(()=>{Ue.value=!1})}function Le(){Pe.value=!0,x(`/svc/integration/targetplus/${Me.integrationConfigId}/refresh-reference-data`,{method:"POST",data:{}}).then(e=>{Fe.value=!!e.notApprovedToList,Oe.value=e.approvalStatus||"";const t=e.distributionCenters?e.distributionCenters.length:0;return 0===t?Ee.warningToast("Target still reports no distribution centers for this seller. They are provisioned in the Target Marketplace Portal."):Ee.successToast(`Refreshed: ${t} distribution center(s), ${e.shippingMethodCount} shipping method(s).`),Promise.all([Me.loadFieldChoices(),Ke()])}).finally(()=>{Pe.value=!1})}const Ne=e(()=>`/svc/integration/targetplus/${Me.integrationConfigId}/distribution-center-sources`),_e=t([]),We=t([]),Be=t(!1);function Ge(e){return(e.distributionCenters||[]).map(e=>({distributionCenterId:e.distributionCenterId,label:e.label,hasShipNode:e.hasShipNode,onAccount:e.onAccount,inventorySourceIds:[...e.inventorySourceIds||[]]}))}function Ye(e){return JSON.stringify(e.map(e=>({distributionCenterId:e.distributionCenterId,inventorySourceIds:e.inventorySourceIds})))}const qe=e(()=>Ye(_e.value)!==Ye(We.value)),ze=e(()=>We.value.some(e=>e.inventorySourceIds.length>0)),Je=e(()=>ze.value&&We.value.some(e=>0===e.inventorySourceIds.length));function Ke(){return Be.value=!0,x(Ne.value,{method:"GET",errorDisplayFunction:Ee.errorToast}).then(e=>{_e.value=Ge(e),We.value=Ge(e)}).finally(()=>{Be.value=!1})}l(()=>{x(`/svc/integration/targetplus/${Me.integrationConfigId}/connection-state`,{method:"GET",errorDisplayFunction:Ee.errorToast}).then(e=>{e&&(Ae.value=e)}),Ke()}),a(qe,e=>{e&&Ve.setShowSaveChangesComponent(!0)});const Qe=e(()=>Ve.getShouldSave);function Ze(e,t,l){const a=_e.value[e].inventorySourceIds,i=t+l;if(i<0||i>=a.length)return;const[n]=a.splice(t,1);a.splice(i,0,n)}return a(Qe,e=>{e&&qe.value&&function(){const e={distributionCenters:_e.value.map(e=>({distributionCenterId:e.distributionCenterId,inventorySourceIds:e.inventorySourceIds.filter(e=>null!==e&&""!==e)}))};x(Ne.value,{method:"PUT",data:e,errorDisplayFunction:Ee.errorToast}).then(e=>{_e.value=Ge(e),We.value=Ge(e)}).catch(()=>{Ve.setShowSaveChangesComponent(!0)})}()}),(e,t)=>(i(),n("div",null,[o(w,{"market-initial-values":Re.value,"hide-warehouse-picker":ze.value},{warehousePickerReplacement:r(()=>[...t[9]||(t[9]=[c("Warehouses are chosen per distribution center above.",-1)])]),extraBlockLarge:r(()=>[Fe.value?(i(),n("div",S,[s("strong",null,"Target has not approved this seller to list items"+u(Oe.value?` (${Oe.value})`:"")+".",1),t[10]||(t[10]=c("\n Listings sent to Target will be rejected until onboarding is complete in the Target Marketplace Portal. Everything else on this connection works\n normally, so this is the only place it shows up.\n ",-1))])):d("",!0),t[48]||(t[48]=c()),s("div",M,[s("div",E,[s("div",V,[t[11]||(t[11]=s("h5",null,"Target+ credentials",-1)),t[12]||(t[12]=c()),s("p",R,[Ae.value.oauthConnected?(i(),n(p,{key:0},[c("Signed in with Target. Your access renews automatically.")],64)):(i(),n(p,{key:1},[c("Using a seller token from the Target Marketplace Portal.")],64))])]),t[14]||(t[14]=c()),s("div",D,[s("button",{type:"button",class:"btn btn-outline-primary btn-sm",onClick:He,disabled:Ue.value},[Ue.value?(i(),n("span",A)):d("",!0),t[13]||(t[13]=c("\n Reconnect with Target\n ",-1))],8,P)])]),t[19]||(t[19]=c()),$e.value?(i(),n("div",$,[s("div",j,[s("div",F,"\n Your Target sign-in expires on "+u(je.value)+'. Click "Reconnect with Target" above to renew it before then.\n ',1)])])):d("",!0),t[20]||(t[20]=c()),s("div",O,[s("div",U,[o(C,{type:"text",label:"Seller ID",name:"sellerId",initial:v(Me).getMarketValue("sellerId"),"onUpdate:modelValue":t[0]||(t[0]=e=>v(Me).setMarketValue("sellerId",e||null)),"field-popover-text":v(Me).getHelpText("sellerId"),"inline-label":!0,"aligned-label":!0},null,8,["initial","field-popover-text"])])]),t[21]||(t[21]=c()),Ae.value.oauthConnected?d("",!0):(i(),n("div",H,[De.value?(i(),n("div",L,[o(C,{type:"text",label:"Seller token",name:"sellerToken",initial:null,"onUpdate:modelValue":t[1]||(t[1]=e=>v(Me).setMarketValue("sellerToken",e||null)),"field-popover-text":v(Me).getHelpText("sellerToken"),"inline-label":!0,"aligned-label":!0},null,8,["field-popover-text"])])):(i(),n("div",N,[s("div",_,[t[15]||(t[15]=s("div",{class:"col-form-label text-bold-500 col-xs-12 col-sm-5 col-md-3 text-sm-end"}
1,"Seller token",-1)),t[16]||(t[16]=c()),t[17]||(t[17]=s("div",{class:"col-auto"},"*******",-1)),t[18]||(t[18]=c()),s("div",W,[s("a",{href:"#",onClick:t[2]||(t[2]=g(e=>De.value=!0,["prevent"]))},"Update Seller Token")])])]))]))]),t[49]||(t[49]=c()),s("div",B,[t[24]||(t[24]=s("div",{class:"row"},[s("div",{class:"col-12"},[s("h5",null,"Fulfillment")])],-1)),t[25]||(t[25]=c()),s("div",G,[s("div",Y,[o(I,{name:"defaultDistributionCenterId",options:v(Me).getFieldChoices("defaultDistributionCenterId"),label:"Fallback distribution center",initial:v(Me).getMarketValue("defaultDistributionCenterId")||"","onUpdate:modelValue":t[3]||(t[3]=e=>v(Me).setMarketValue("defaultDistributionCenterId",""===e?null:e)),"field-popover-text":"Receives your total available quantity when no warehouses are mapped below.","inline-label":!0,"aligned-label":!0},null,8,["options","initial"])]),t[23]||(t[23]=c()),s("div",q,[s("button",{type:"button",class:"btn btn-outline-primary btn-sm",onClick:Le,disabled:Pe.value},[Pe.value?(i(),n("span",J)):d("",!0),t[22]||(t[22]=c("\n Refresh from Target\n ",-1))],8,z)])]),t[26]||(t[26]=c()),s("div",K,[s("div",Q,[o(C,{type:"text",label:"Return policy",name:"defaultReturnPolicyId",initial:v(Me).getMarketValue("defaultReturnPolicyId"),"onUpdate:modelValue":t[4]||(t[4]=e=>v(Me).setMarketValue("defaultReturnPolicyId",e||null)),"field-popover-text":v(Me).getHelpText("defaultReturnPolicyId"),"inline-label":!0,"aligned-label":!0},null,8,["initial","field-popover-text"])])]),t[27]||(t[27]=c()),s("div",Z,[s("div",X,[o(T,{label:"Update price",name:"updatePrice",initial:v(Me).getMarketValue("updatePrice"),onChange:t[5]||(t[5]=e=>v(Me).setMarketValue("updatePrice",e)),"field-popover-text":v(Me).getHelpText("updatePrice")},null,8,["initial","field-popover-text"])])]),t[28]||(t[28]=c()),s("div",ee,[s("div",te,[o(T,{label:"Eligible for 2-day shipping",name:"twoDayShippingEligible",initial:v(Me).getMarketValue("twoDayShippingEligible"),onChange:t[6]||(t[6]=e=>v(Me).setMarketValue("twoDayShippingEligible",e)),"field-popover-text":v(Me).getHelpText("twoDayShippingEligible")},null,8,["initial","field-popover-text"])])]),t[29]||(t[29]=c()),s("div",le,[s("div",ae,[o(T,{label:"Only eligible as an add-on item",name:"isAddOn",initial:v(Me).getMarketValue("isAddOn"),onChange:t[7]||(t[7]=e=>v(Me).setMarketValue("isAddOn",e)),"field-popover-text":v(Me).getHelpText("isAddOn")},null,8,["initial","field-popover-text"])])]),t[30]||(t[30]=c()),s("div",ie,[s("div",ne,[o(T,{label:"Exclude from some shipping destinations",name:"shippingExclusion",initial:v(Me).getMarketValue("shippingExclusion"),onChange:t[8]||(t[8]=e=>v(Me).setMarketValue("shippingExclusion",e)),"field-popover-text":v(Me).getHelpText("shippingExclusion")},null,8,["initial","field-popover-text"])])])]),t[50]||(t[50]=c()),s("div",oe,[s("div",re,[s("div",se,[t[32]||(t[32]=s("h5",null,"Distribution centers â warehouses",-1)),t[33]||(t[33]=c()),s("p",ue,[t[31]||(t[31]=c("\n Map each distribution center to the Listing Mirror warehouse(s) that stock it.\n ",-1)),ze.value?d("",!0):(i(),n(p,{key:0},[c("The list below feeds the fallback distribution center until a mapping is saved.")],64))])])]),t[45]||(t[45]=c()),Je.value?(i(),n("div",ce,[...t[34]||(t[34]=[s("div",{class:"col-12"},[s("div",{class:"alert alert-warning mb-0",role:"alert"},"Unmapped distribution centers receive zero stock.")],-1)])])):d("",!0),t[46]||(t[46]=c()),Be.value?(i(),n("div",de,[...t[35]||(t[35]=[s("div",{class:"col-12"},[s("span",{class:"spinner-border spinner-border-sm me-2",role:"status","aria-hidden":"true"}),c("Loadingâ¦")],-1)])])):d("",!0),t[47]||(t[47]=c()),(i(!0),n(p,null,b(_e.value,(e,l)=>(i(),n("div",{key:e.distributionCenterId,class:"row pt-3"},[s("div",pe,[s("div",ve,[s("strong",null,u(e.label),1),t[36]||(t[36]=c()),e.hasShipNode?d("",!0):(i(),n("span",ge,"No ship node â cannot hold inventory")),t[37]||(t[37]=c()),e.onAccount?d("",!0):(i(),n("span",be,"No longer on your Target account")),t[38]||(t[38]=c()),e.onAccount?d("",!0):(i(),n("i",{key:2,class:"bi bi-trash3 cursor-pointer text-danger",role:"button","aria-label":`Remove ${e.label}`,onClick:e=>function(e){_e.value.splice(e,1)}(l)},null,8,me))]),t[43]||(t[43]=c()),(i(!0),n(p,null,b(e.inventorySourceIds,(a,o)=>(i(),n("div",{key:o,class:"row align-items-center mb-2"},[s("div",he,"#"+u(o+1),1),t[41]||(t[41]=c()),s("div",fe,[s("select",{class:"form-select form-select-sm",value:a,"aria-label":`Warehouse ${o+1} for ${e.label}`,onChange:e=>function(e,t,l){const a=l.target.value,i=""===a||"null"===a?null:parseInt(a,10);_e.value[e].inventorySourceIds.splice(t,1,i)}(l,o,e)},[(i(!0),n(p,null,b(v(Me).inventorySourceOptions,e=>(i(),n("option",{key:String(e.value),value:e.value},u(e.label),9,ye))),128))],40,ke)]),t[42]||(t[42]=c()),s("div",xe,[s("i",{class:m(["bi bi-arrow-up cursor-pointer",{"text-muted":0===o}]),role:"button","aria-label":`Move warehouse ${o+1} up`,onClick:e=>Ze(l,o,-1)},null,10,we),t[39]||(t[39]=c()),s("i",{class:m(["bi bi-arrow-down cursor-pointer ms-2",{"text-muted":o===e.inventorySourceIds.length-1}]),role:"button","aria-label":`Move warehouse ${o+1} down`,onClick:e=>Ze(l,o,1)},null,10,Ce),t[40]||(t[40]=c()),s("i",{class:"bi bi-trash3 cursor-pointer text-danger ms-2",role:"button","aria-label":`Remove warehouse ${o+1} from ${e.label}`,onClick:e=>function(e,t){_e.value[e].inventorySourceIds.splice(t,1)}(l,o)},null,8,Te)])]))),128)),t[44]||(t[44]=c()),s("button",{type:"button",class:"btn btn-sm btn-outline-primary",onClick:e=>function(e){const t=Me.inventorySourceOptions.filter(e=>null!==e.value);_e.value[e].inventorySourceIds.push(t.length>0?t[0].value:null)}(l)},"+ Add Warehouse",8,Ie)])]))),128))])]),_:1},8,["market-initial-values","hide-warehouse-picker"])]))}};export{Se as default}; 2//# sourceMappingURL=https://storage.cloud.google.com/listing-mirror-sourcemaps/TargetPlusEditIntegration-CYuGNkkY.js.map
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.