1"use strict";(self.webpackChunksalesfire_dashboard=self.webpackChunksalesfire_dashboard||[]).push([[3619],{75147(e,t,a){a.r(t),a.d(t,{default:()=>Z});var i=a(20641),s=a(50953),n=a(53751),l=a(90033),r=a(38221),u=a.n(r),o=a(35937),d=a(23241),c=a(96031),_=a(22139),p=a(12415),m=a(45675),g=a(86270),b=a(75220),h=a(40834);const v={class:"main main--padded"},y={class:"page-header"},f={class:"page-header__left"},k={class:"curate__actions"},C={key:1},L={class:"table table--striped table--wide"},A={class:"table__header table__header--top"},w={class:"table__col__center"},R={class:"table__col"},X={class:"curation-manage__campaign-title"},E={class:"curation-manage__query"},x={key:0,class:"curation-manage__terms"},q={key:0,class:"curation-manage__results"},F={"aria-label":"Curated results list",class:"curation-manage__results-list"},W={key:0},K={class:"curation-manage__highlight"},S={class:"curation-manage__highlight"},D={class:"curation-manage__highlight"},N={class:"curation-manage__highlight"},Q={class:"curation-manage__highlight"},I={class:"curation-manage__highlight"},V={key:1},B={class:"curation-manage__highlight"},O={key:2},U={class:"curation-manage__highlight"},$={class:"table__col table__col--fit text-center"},j={class:"table__col table__col--fit curation-manage__date"},P={class:"table__col table__col--fit curation-manage__date"},H={class:"table__col"},J={class:"curation-manage__table-actions"},M={class:"dropdown__menu__item"},z=["onClick"],T={key:2,class:"curation-manage__empty"},Y={__name:"Campaigns",props:{site_uuid:{type:String,required:!0}},setup(e){const t=(0,b.rd)(),a=(0,h.Pj)(),r=e,Y=(0,s.KR)([]),Z=(0,s.KR)([]),G=(0,s.KR)(null),ee=(0,s.KR)({query:"",page:{size:10,number:1}}),te=(0,s.KR)(!1),ae=(0,s.KR)(!1),ie=(0,s.KR)({}),se=(0,s.KR)(0),ne=(0,s.KR)(!1),le=(0,s.KR)(!1),re=(0,s.KR)(!1),ue=e=>{ee.value.page.number=e,Ce()},oe=()=>{ne.value=!0},de=()=>{G.value=null,le.value=!1},ce=u()(()=>{Ce()},300),_e=e=>{t.push({name:"sites.search-v3.campaigns.edit",params:{site_uuid:r.site_uuid,campaign_uuid:e.id}})},pe=(0,i.EW)(()=>{if(!G.value)return{};const e=Z.value.find(e=>e.id===G.value)||{},t=e?.attributes?.name||e?.attributes?.query||"",a=t?`the "${t}"`:"this";return{id:e.id||"",name:t,title:"Delete Campaign?",message:`Are you sure you want to delete ${a}? This action cannot be undone.`}}),me=async()=>{const{site_uuid:e}=r;if(G.value)try{te.value=!0,await(0,m.lM)(e,G.value),ee.value.page.number=1,await Ce()}catch(t){}finally{te.value=!1,de()}},ge=async(e,t)=>{const{site_uuid:i}=r;if(!e||Y.value.includes(e))return;const s=Z.value.find(t=>t.id===e);if(!s)return;const n={...s.attributes||{},is_enabled:t,queries:Array.isArray(s.queries)?s.queries:[]};try{se.value++,Y.value.push(e);const t=await(0,m.HU)(i,e,n),a=t?.data??null;if(a?.id){const e=Z.value.findIndex(e=>e.id===a.id);if(-1!==e){const i=be(a,t),s=he(a,t),n=ve(a,t),l=ye(a,t),r=fe(a,t);Z.value[e]={...a,queries:i,includes:s.includes,excludes:s.excludes,promotions:n,brands:l,categories:r}}}}catch(l){const e=l?.errors||{};let t=l?.message||"Unable to update this campaign.";if(Object.keys(e).length>0){const a=Object.values(e)[0];t=Array.isArray(a)?a[0]:a}a.dispatch("SHOW_BANNER",{type:"error",text:t})}finally{se.value--,Y.value=Y.value.filter(t=>t!==e)}},be=(e,t)=>{const a=Array.isArray(e?.relationships?.queries)?e.relationships.queries:[];if(a.some(e=>e&&e.attributes))return a.map(e=>e?.attributes?.query||null).filter(e=>"string"==typeof e&&e.length>0);const i=ke(t,"search_v3_curation_queries").reduce((e,t)=>{const a=t?.id;return null==a||(e[String(a)]=t),e},{});return a.map(e=>e?.data?.id).map(e=>null==e?null:i[String(e)]).map(e=>e?.attributes?.query||null).filter(e=>"string"==typeof e&&e.length>0)},he=(e,t)=>{const a=Array.isArray(e?.relationships?.items)?e.relationships.items:[],i=(a.some(e=>e&&e.attributes)?a:(()=>{const e=ke(t,"search_v3_curation_items").reduce((e,t)=>{const a=t?.id;return null==a||(e[String(a)]=t),e},{});return a.map(e=>e?.data?.id).map(t=>null==t?null:e[String(t)]).filter(Boolean)})()).reduce((e,t)=>{const a=t?.attributes;if(!a)return e;const i=a.document_id,s=a.action;return i?("include"===s&&e.includes.push({id:t.id,product_id:i,position:a.position}),"exclude"===s&&e.excludes.push({id:t.id,product_id:i}),e):e},{includes:[],excludes:[]});return i.includes=(e=>{const t=Array.isArray(e)?[...e]:[];return t.sort((e,t)=>
1("number"!=typeof e?.position||Number.isNaN(e.position)?0:e.position)-("number"!=typeof t?.position||Number.isNaN(t.position)?0:t.position)),t.map((e,t)=>({...e,position:t+1}))})(i.includes),i},ve=(e,t)=>{const a=Array.isArray(e?.relationships?.promotions)?e.relationships.promotions:[];return(a.some(e=>e&&e.attributes)?a:(()=>{const e=ke(t,"search_v3_promotions").reduce((e,t)=>{const a=t?.id;return null==a||(e[String(a)]=t),e},{});return a.map(e=>e?.data?.id).map(t=>null==t?null:e[String(t)]).filter(Boolean)})()).map(e=>({id:e.id,name:e?.attributes?.name,position:e?.attributes?.position}))},ye=(e,t)=>{const a=Array.isArray(e?.relationships?.brands)?e.relationships.brands:[];return(a.some(e=>e&&e.attributes)?a:(()=>{const e=ke(t,"search_v3_curation_brands").reduce((e,t)=>{const a=t?.id;return null==a||(e[String(a)]=t),e},{});return a.map(e=>e?.data?.id).map(t=>null==t?null:e[String(t)]).filter(Boolean)})()).filter(e=>e?.attributes?.document_id).map(e=>({id:e.id,document_id:e.attributes.document_id,weight:e.attributes.weight}))},fe=(e,t)=>{const a=Array.isArray(e?.relationships?.categories)?e.relationships.categories:[];return(a.some(e=>e&&e.attributes)?a:(()=>{const e=ke(t,"search_v3_curation_categories").reduce((e,t)=>{const a=t?.id;return null==a||(e[String(a)]=t),e},{});return a.map(e=>e?.data?.id).map(t=>null==t?null:e[String(t)]).filter(Boolean)})()).filter(e=>e?.attributes?.document_id).map(e=>({id:e.id,document_id:e.attributes.document_id,weight:e.attributes.weight}))},ke=(e,t)=>(Array.isArray(e?.includes)?e.includes:[]).filter(e=>e&&e.type===t),Ce=async()=>{const{site_uuid:e}=r;try{ae.value=!0;const t=await(0,m.n9)(e,ee.value,["queries","items","promotions","brands","categories"]);ie.value=t.meta.pagination||{},ee.value.page.number=t?.meta?.pagination?.current_page||ie.value.current_page;const a=Array.isArray(t.data)?t.data:[];Z.value=a.map(e=>{const a=be(e,t),i=he(e,t),s=ve(e,t),n=ye(e,t),l=fe(e,t);return{...e,queries:a,includes:i.includes,excludes:i.excludes,promotions:s,brands:n,categories:l}})}catch(t){}finally{ae.value=!1}},Le=e=>{if(!e)return!1;return new Date>new Date(e)},Ae=e=>{if(!e)return!0;const t=new Date;return new Date(e)<t},we=(e=null,t=null)=>!Ae(e)||Le(t),Re=e=>{const t=e?.attributes?.match_type??"exact",a=Array.isArray(e?.queries)?e.queries:[];return"global"===t?{label:"Applies to all queries",terms:[]}:"empty"===t?{label:"Applies when the query is empty",terms:[]}:{label:"exact"===t?"Query is exact:":"Query contains:",terms:a}},Xe=e=>!!e&&Boolean(e?.attributes?.redirect_url||e.includes?.length||e.excludes?.length||e.promotions?.length||e.brands?.length||e.categories?.length),Ee=e=>{if(!e)return 0;return(e.includes?.length||0)+(e.excludes?.length||0)+(e.promotions?.length||e?.relationships?.promotions?.length||0)+(e.brands?.length||e?.relationships?.brands?.length||0)+(e.categories?.length||e?.relationships?.categories?.length||0)+(e?.attributes?.redirect_url?1:0)},xe=(e="")=>{ee.value.query=e,ee.value.page.number=1,ce()},qe=()=>{ne.value=!ne.value},Fe=e=>{re.value=e};return(0,i.sV)(()=>{Ce()}),(t,a)=>((0,i.uX)(),(0,i.CE)(i.FK,null,[(0,i.Lk)("div",v,[(0,i.Lk)("div",y,[(0,i.Lk)("div",f,[a[0]||(a[0]=(0,i.Lk)("h1",{class:"page-header__title"}," Search ",-1)),(0,i.bF)(_.default)]),(0,i.Lk)("div",k,[(0,i.bF)((0,s.R1)(d.$nd),{variant:"primary",onClick:oe},{default:(0,i.k6)(()=>[...a[1]||(a[1]=[(0,i.eW)(" Create Campaign ",-1)])]),_:1})])]),(0,i.bF)((0,s.R1)(d.Zkm),{class:"curation-manage__panel",padding:"none"},{header:(0,i.k6)(()=>[(0,i.bF)((0,s.R1)(d.aOn),{subtitle:"View and manage your search campaigns.",title:"Campaigns","flush-mode":!ae.value&&Z.value.length>0},{default:(0,i.k6)(()=>[(0,i.bF)((0,s.R1)(d.NJT),{class:"curation-manage__search",placeholder:"Find...","model-value":ee.value.query,"onUpdate:modelValue":xe},null,8,["model-value"])]),_:1},8,["flush-mode"])]),default:(0,i.k6)(()=>[ae.value?((0,i.uX)(),(0,i.Wv)((0,s.R1)(d.Rhj),{key:0,style:{display:"block",margin:"0 auto",padding:"30px"}})):Z.value.length>0?((0,i.uX)(),(0,i.CE)("div",C,[(0,i.bF)((0,s.R1)(d.dVJ),null,{default:(0,i.k6)(()=>[(0,i.Lk)("table",L,[(0,i.Lk)("thead",A,[(0,i.Lk)("tr",null,[(0,i.Lk)("th",w,[a[2]||(a[2]=(0,i.Lk)("div",{class:"curation-manage__title"}," Campaigns ",-1)),(0,i.bF)((0,s.R1)(d.VI0),{"model-value":re.value,"onUpdate:modelValue":Fe},null,8,["model-value"])]),a[3]||(a[3]=(0,i.Lk)("th",{class:"text-right"}," Enabled ",-1)),a[4]||(a[4]=(0,i.Lk)("th",{class:"text-nowrap"}," Start Date ",-1)),a[5]||(a[5]=(0,i.Lk)("th",{class:"text-nowrap"}," End Date ",-1)),a[6]||(a[6]=(0,i.Lk)("th",{class:"text-center table__col--fit",colspan:"2"}," Actions ",-1))])]),(0,i.bF)(n.F,{class:"table__body",name:"table__row--with-transition",tag:"tbody"},{default:(0,i.k6)(()=>[((0,i.uX)(!0),(0,i.CE)(i.FK,null,(0,i.pI)(Z.value,t=>((0,i.uX)(),(0,i.CE)("tr",{key:t.id,class:(0,l.C4)(["table__row",{"curation-manage__expired":Le(t.attributes?.effective_to_ts),"curation-manage__not-started":!Ae(t.attributes?.effective_from_ts)}])},[(0,i.Lk)("td",R,[(0,i.Lk)("p",X,[(0,i.Lk)("span",{"aria-hidden":"true",class:(0,l.C4)(["status-label status-label--dot",{"is-active":t.attributes?.is_enabled,has_warning:t.attributes?.is_enabled&&(!Ae(t.attributes?.effective_from_ts)||Le(t.attributes?.effective_to_ts))}])},null,2),(0,i.eW)(" "+(0,l.v_)(t.attributes.name),1)]),(0,i.Lk)("p",E,[(0,i.eW)((0,l.v_)(Re(t).label)+" ",1),Re(t).terms.length?((0,i.uX)(),(0,i.CE)("span",x,[((0,i.uX)(!0),(0,i.CE)(i.FK,null,(0,i.pI)(Re(t).terms,(e,a)=>((0,i.uX)(),(0,i.CE)("span",{key:`${t.id}_term_${a}`,class:"curation-manage__highlight"},(0,l.v_)(e),1))),128))])):(0,i.Q3)("",!0),(0,i.eW)(" and has "+(0,l.v_)(Ee(t))+" modification(s). ",1)]),re.value&&Xe(t)?((0,i.uX)(),(0,i.CE)("div",q,[a[13]||(a[13]=(0,i.Lk)("p",null,"Results:",-1)),(0,i.Lk)("ul",F,[t?.attributes?.redirect_url?((0,i.uX)(),(0,i.CE)("li",W,[a[7]||(a[7]=(0,i.eW)(" Redirect ",-1)),(0,i.Lk)("span",K,(0,l.v_)(t?.attributes?.redirect_url),1)])):(0,i.Q3)("",!0),((0,i.uX)(!0),(0,i.CE)(i.FK,null,(0,i.pI)(t.includes,e=>((0,i.uX)(),(0,i.CE)("li",{key:e.id},[a[8]||(a[8]=(0,i.eW)(" Pin product ",-1)),(0,i.Lk)("span",S,(0,l.v_)(e.product_id),1),a[9]||(a[9]=(0,i.eW)(" to position ",-1)),(0,i.Lk)("span",D,(0,l.v_)(e.position),1)]))),128)),((0,i.uX)(!0),(0,i.CE)(i.FK,null,(0,i.pI)(t.excludes,e=>((0,i.uX)(),(0,i.CE)("li",{key:e.id},[a[10]||(a[10]=(0,i.eW)(" Hide product ",-1)),(0,i.Lk)("span",N,(0,l.v_)(e.product_id),1)]))),128)),((0,i.uX)(!0),(0,i.CE)(i.FK,null,(0,i.pI)(t.promotions,e=>((0,i.uX)(),(0,i.CE)("li",{key:e.id},[a[11]||(a[11]=(0,i.eW)(" Pin promotion ",-1)),(0,i.Lk)("span",Q,(0,l.v_)(e.name),1),a[12]||(a[12]=(0,i.eW)(" to position ",-1)),(0,i.Lk)("span",I,(0,l.v_)(e.position),1)]))),128)),t.brands?.length?((0,i.uX)(),(0,i.CE)("li",V,[(0,i.Lk)("span",B,(0,l.v_)(t.brands.length),1),(0,i.eW)(" boosted brand"+(0,l.v_)(1===t.brands.length?"":"s"),1)])):(0,i.Q3)("",!0),t.categories?.length?((0,i.uX)(),(0,i.CE)("li",O,[(0,i.Lk)("span",U,(0,l.v_)(t.categories.length),1),(0,i.eW)(" boosted categor"+(0,l.v_)(1===t.categories.length?"y":"ies"),1)])):(0,i.Q3)("",!0)])])):(0,i.Q3)("",!0)]),(0,i.Lk)("td",$,[(0,i.bF)((0,s.R1)(d.Nzr),{disabled:Y.value.includes(t.id),"model-value":t.attributes.is_enabled,paused:we(t.attributes?.effective_from_ts,t.attributes?.effective_to_ts),saving:Y.value.includes(t.id),"onUpdate:modelValue":e=>ge(t.id,e)},null,8,["disabled","model-value","paused","saving","onUpdate:modelValue"])]),(0,i.Lk)("td",j,(0,l.v_)(t.attributes?.effective_from_ts?(0,s.R1)(o.cX)(t.attributes.effective_from_ts):"Always"),
11),(0,i.Lk)("td",P,(0,l.v_)(t.attributes?.effective_to_ts?(0,s.R1)(o.cX)(t.attributes.effective_to_ts):"Continuous"),1),(0,i.Lk)("td",H,[(0,i.Lk)("div",J,[(0,i.bF)((0,s.R1)(d.$nd),{variant:"secondary",to:{name:"sites.search-v3.campaigns.edit",params:{site_uuid:e.site_uuid,campaign_uuid:t.id}}},{default:(0,i.k6)(()=>[...a[14]||(a[14]=[(0,i.eW)(" Edit ",-1)])]),_:1},8,["to"]),(0,i.bF)(c.A,{label:"More"},{default:(0,i.k6)(()=>[(0,i.Lk)("div",M,[(0,i.Lk)("button",{class:"dropdown__menu__link dropdown__menu__link--danger",type:"button",onClick:e=>{var a;(a=t.id)&&(G.value=a,le.value=!0)}},[(0,i.bF)((0,s.R1)(d.Int),{type:"iconDelete"}),a[15]||(a[15]=(0,i.eW)(" Delete ",-1))],8,z)])]),_:2},1024)])])],2))),128))]),_:1})])]),_:1})])):((0,i.uX)(),(0,i.CE)("p",T," You have no campaigns. "))]),_:1}),ie.value&&ie.value.total_pages>1&&!ae.value?((0,i.uX)(),(0,i.Wv)(p.A,{key:0,pagination:ie.value,onPage:ue},null,8,["pagination"])):(0,i.Q3)("",!0)]),ne.value?((0,i.uX)(),(0,i.Wv)(g.default,{key:0,site_uuid:e.site_uuid,onClose:qe,onCreate:_e},null,8,["site_uuid"])):(0,i.Q3)("",!0),le.value?((0,i.uX)(),(0,i.Wv)((0,s.R1)(d.JXK),{key:1,loading:te.value,message:pe.value.message,title:pe.value.title,onOnAlertModalDelete:me,onOnClose:de},null,8,["loading","message","title"])):(0,i.Q3)("",!0)],64))}};const Z=(0,a(66262).A)(Y,[["__scopeId","data-v-541f44c0"]])}}]);
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.