1import{_ as R,b as S,r as m,i as D,o as t,c as s,d as I,w as _,a as e,e as f,f as c,g as p,F as v,l as g,n as k,t as d,j as w,h as M}from"./app-996d7a72.js";import"./lodash-6f92f450.js";const H={data(){return{alertStatus:"",alertMessage:"",sort:{by:"sent_at",order:"DESC"},eventsModal:!1,loading:!1,issues:[],pagination:{},fetchIssuesUrl:"/api/email-issues",tableHeadings:{email:{label:"Recipient"},event:{label:"Event"},sender:{label:"Sender"},subject:{label:"Subject"},sent_at:{label:"Date"},bounce_description:{label:"Bounce Reason"},emailed_purchaser:{label:"Purchaser Notified?"},action:{label:" "}}}},computed:{hasPagination:function(){return this.pagination&&this.pagination.last_page&&this.pagination.last_page>1}},methods:{showEventsModal(){this.eventsModal=!0},onSortTable(n){this.sort.by===n?this.sort.order=this.sort.order==="ASC"?"DESC":"ASC":(this.sort.by=n,this.sort.order="ASC"),this.fetchIssues()},getOrderBy(n){var l=this.tableHeadings[n].orderby?this.tableHeadings[n].orderby:n;return l},async onResolveIssue(n){if(confirm('Are you sure you want to resolve the issue with "'+n.email+'"? This cannot be undone.')){this.loading=!0;try{const{data:h}=await S.delete("/api/email-issues/"+n.id);h.success&&(this.alertStatus="success",this.alertMessage=h.message,this.fetchIssues())}catch{this.alertStatus="error",this.alertMessage="Something went wrong. Please refresh the page or try again later."}this.loading=!1}},async fetchIssues(n){var l=this;this.loading=!0;const h=this.fetchIssuesUrl;let x={page:n||1,order_by:this.sort.by,order_direction:this.sort.order};try{const{data:o}=await S.get(h,{params:x});this.pagination=o,this.issues=o.data}catch(o){console.log("err",o),l.status="",l.errorMessage="Sorry, an error occurred. Please refresh the page and try again."}this.loading=!1}},mounted(){this.fetchIssues()}},P={class:"lg:pb-10"},A={class:"flex flex-row items-center"},F=["innerHTML"],V={class:"max-w-full rounded t-border-default bg-white overflow-x-auto relative mb-4"},L={key:0,class:"stretch flex justify-center items-center"},z={class:"t-table text-sm mb-0 t-table-border-y"},O={class:"bg-dark-50 text-left"},U={key:0},q={key:0},W={key:1},G=["onClick"],J={key:0},K={key:1},Q={key:0},X={key:0},Y={key:1},Z=["href"],N={key:2},$={key:0},ee={key:3},te={key:0,class:"whitespace-nowrap"},se={key:2},ae=e("div",{class:"prose"},[e("h3",null,"Event/Bounce Types"),e("h4",null,"Hard Bounce"),e("p",null,"A hard bounce indicates a permanent reason an email cannot be delivered. In most cases, bounced email addresses are cleaned from your audience automatically and immediately. Cleaned addresses will be excluded from all future campaign sends. Here are some common reasons an email may hard bounce."),e("ul",null,[e("li",null,"Recipient email address doesn't exist."),e("li",null,"Domain name doesn't exist."),e("li",null,"Recipient email server has completely blocked delivery.")]),e("h4",null,"Soft Bounce"),e("p",null,"Soft bounces typically indicate a temporary delivery issue and are handled differently than hard bounces. While there are many reasons an email address may soft bounce, these are some common reasons this could happen."),e("ul",null,[e("li",null,"Mailbox is full (over quota)."),e("li",null,"Recipient email server is down or offline."),e("li",null,"Email message is too large.")]),e("h4",null,"Bounce Reason"),e("p",null,"When an email bounces, Mandrill often provides a brief code that explains the reason for the bounce."),e("h4",null,"Reject"),e("p",null,"Recipient email addresses are rejected when one of the following events occurs:"),e("ul",null,[e("li",null,"The message was sent from a domain that hasn't been fully configured for Mandrill."),e("li",null,"The recipient address has bounced in the past."),e("li",null,"The recipient address has registered a spam complaint for an email sent to that address through the Mandrill account in the past."),e("li",null,"The recipient address has registered an unsubscribe for an email sent to that address through the Mandrill account."),e("li",null,"The recipient address was manually added to the rejection blacklist.")]),e("h4",null,"Spam"),e("p",null,"A spam complaint occurs when a re
1cipient clicks on the 'report spam' button in their email program. If their ISP has a Feedback Loop (FBL), that action passes back to Mandrill, the recipient is moved to the Rejection Blacklist, and will no longer receive messages from you."),e("p",null,"Spam complaints do not occur when an ISP has filtered an email to the spam or junk folder automatically. If the ISP does not provide a Feedback Loop, the complaint will not be recorded in your account, but future emails from you may be sent to the spam folder from that point forward unless the recipient takes action to remove the email from the spam folder."),e("p",null,"Mandrill also tracks direct complaints. A direct complaint occurs when a recipient contacts Mandrill's abuse department, directly reporting an email as spam. Direct complaints are considered very serious as the recipient has gone to great lengths to reach out to Mandrill and report a message as unwanted or unsolicited.")],-1),oe={class:"mt-6"};function ne(n,l,h,x,o,u){const b=m("font-awesome-icon"),B=m("t-alert"),E=m("loading"),C=m("t-button"),T=m("pagination"),j=m("Modal"),y=D("tooltip");return t(),s("div",P,[o.alertMessage?(t(),I(B,{key:0,class:"mb-4",variant:o.alertStatus=="error"?"danger":"success"},{default:_(()=>[e("div",A,[e("span",{innerHTML:o.alertMessage},null,8,F),e("button",{class:"ms-auto px-3 py-1",type:"button",onClick:l[0]||(l[0]=f(a=>o.alertMessage="",["prevent"]))},[c(b,{icon:"fa-solid fa-xmark"})])])]),_:1},8,["variant"])):p("",!0),e("div",V,[o.loading?(t(),s("div",L,[c(E,{class:"dark"})])):p("",!0),e("table",z,[e("thead",O,[e("tr",null,[(t(!0),s(v,null,g(o.tableHeadings,(a,i)=>(t(),s("th",{class:k([a.class?a.class:"","whitespace-nowrap"])},[typeof a.orderby<"u"&&a.orderby===!1?(t(),s("span",U,[a.label?(t(),s("span",q,d(a.label),1)):(t(),s("span",W,d(n.capitalize(i)),1))])):(t(),s("a",{key:1,class:k({"text-primary-500":o.sort.by==u.getOrderBy(i)}),href:"#",onClick:f(r=>u.onSortTable(i),["prevent"])},[a.label?(t(),s("span",J,d(a.label),1)):(t(),s("span",K,d(n.capitalize(i)),1)),o.sort.by==u.getOrderBy(i)?(t(),I(b,{key:2,icon:o.sort.order=="DESC"?"fa-solid fa-caret-down":"fa-solid fa-caret-up",class:"ms-1"},null,8,["icon"])):p("",!0)],10,G)),i=="event"?w((t(),s("a",{key:2,href:"#",onClick:l[1]||(l[1]=f((...r)=>u.showEventsModal&&u.showEventsModal(...r),["prevent"])),class:"text-info-500 ms-1"},[c(b,{icon:"fa-solid fa-info-circle"})])),[[y,{html:"Click for more info on Events",align:"bottom",innerClass:"w-32 text-center"}]]):p("",!0),i=="emailed_purchaser"?w((t(),s("button",{key:3,href:"#",onClick:l[2]||(l[2]=f((...r)=>n.showPurchaserModal&&n.showPurchaserModal(...r),["prevent"])),class:"text-info-500 ms-1"},[c(b,{icon:"fa-solid fa-info-circle"})])),[[y,{html:"The purchaser was notified of the issue and requested to update the participant's email address.",align:"bottom",innerClass:"w-40 text-left"}]]):p("",!0)],2))),256))])]),o.issues.length?(t(),s("tbody",Q,[(t(!0),s(v,null,g(o.issues,a=>(t(),s("tr",null,[(t(!0),s(v,null,g(o.tableHeadings,(i,r)=>(t(),s("td",{class:k([i.class||"",""])},[r=="action"?(t(),s("span",X,[c(C,{onClick:f(le=>u.onResolveIssue(a),["prevent"]),size:"xs",variant:"outline-primary",class:"whitespace-nowrap"},{default:_(()=>[M(" Mark as resolved ")]),_:2},1032,["onClick"])])):r=="email"&&a.related_user_link?(t(),s("span",Y,[e("a",{href:a.related_user_link,class:"t-link-default"},d(a.email),9,Z)])):r=="emailed_purchaser"?(t(),s("span",N,[a.emailed_purchaser?(t(),s("span",$,[c(b,{icon:"fa-solid fa-circle-check",size:"lg"})])):p("",!0)])):(t(),s("span",ee,[r=="sent_at"?(t(),s("span",te,d(a[r]),1)):r=="subject"?w((t(),s("span",{class:"line-clamp-3 cursor-pointer",key:a.id},[M(d(a[r]),1)])),[[y,{html:a[r],align:"bottom",innerClass:"w-60 text-left"}]]):(t(),s("span",se,d(a[r]),1))]))],2))),256))]))),256))])):p("",!0)])]),c(T,{pagination:o.pagination,"item-name":"issues",onFetch:u.fetchIssues},null,8,["pagination","onFetch"]),c(j,{modelValue:o.eventsModal,"onUpdate:modelValue":l[4]||(l[4]=a=>o.eventsModal=a),"body-classes":"p-4 sm:p-6","wrapper-classes":"max-w-screen-md"},{default:_(()=>[ae,e("p",oe,[c(C,{variant:"outline-dark",onClick:l[3]||(l[3]=f(a=>o.eventsModal=!1,["prevent"]))},{default:_(()=>[M("Close")]),_:1})])]),_:1},8,["modelValue"])])}const ce=R(H,[["render",ne],["__file","EmailIssues.vue"]]);export{ce as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.