PageSourceSearch

https://portal.timetoreply.com/build/assets/Index-CVWqWIga.js

js timetoreply.com collected 2026-09-24 11:55:38 UTC 9,182 bytes, 1 lines download raw bytes

1import{d as h,C as j,p as O,q as A,o as d,c as g,a as t,b as e,i as k,j as N,r as B,m as Y,f as a,w as m,v as G,x as b,t as H,k as U,h as J,e as K,T as Q,F as W}from"./app-BhrmwYl7.js";import{_ as X,a as Z}from"./AppLayout.vue_vue_type_script_setup_true_lang-Bn0DfIjE.js";import{u as ee}from"./useInertiaPagination-B0747H3v.js";import{u as I}from"./useInertiaRouterLoading-BYXrIEpy.js";import{s as C}from"./index-DDp3mSYh.js";import{_ as R}from"./TtrFormSuccessMessage.vue_vue_type_script_setup_true_lang-ChVNr1rU.js";import{_ as te}from"./TtrLoading.vue_vue_type_script_setup_true_lang-RL6c5__W.js";import{_ as oe}from"./TtrSearchInput.vue_vue_type_script_setup_true_lang-Dlaqt8kT.js";import{a0 as v,a1 as D,a2 as _,a3 as u}from"./formRequests-obmzPvTp.js";import{a as se,s as y}from"./index-ByoFHTx5.js";import{_ as ae}from"./AnchorTextLink.vue_vue_type_script_setup_true_lang-mI8bEXGz.js";import{_ as re}from"./TtrFileUpload.vue_vue_type_script_setup_true_lang-UCnvMlCG.js";import{_ as ie}from"./TtrInputGroup.vue_vue_type_script_setup_true_lang-CXSXmj0U.js";import{i as le}from"./functions-Nk_HSqWA.js";import{_ as ne}from"./HeadingSmall.vue_vue_type_script_setup_true_lang-DkuQ-iOh.js";import{_ as ce}from"./InputError.vue_vue_type_script_setup_true_lang-BArgHK94.js";import{_ as me}from"./TtrSubmitButton.vue_vue_type_script_setup_true_lang-Dw0FnuRu.js";import{_ as ue}from"./EntitiesLayout.vue_vue_type_script_setup_true_lang-BC4PnCUG.js";import{s as de}from"./index-BxCYObgv.js";import{s as pe}from"./index-D-rvQwcY.js";import{s as fe}from"./index-DYZjizED.js";import{s as ve}from"./index-Cqt96xeh.js";import"./index-BoF-Udzi.js";import"./index-BP-PWU25.js";import"./index-s65M6HeK.js";import"./StatLogModal.vue_vue_type_script_setup_true_lang-rqjem4TL.js";import"./eventTracker-BZOcuCq8.js";import"./index-CVG6z0gu.js";import"./index-Dr7VGy0a.js";import"./ConversationModal.vue_vue_type_script_setup_true_lang-CnDqRMde.js";import"./index-D_SAXoAX.js";import"./index-BR8YZ14P.js";import"./index-ZCl0lyWq.js";import"./index-1XI5ECkV.js";import"./index-B2Lda71_.js";import"./index-DT1b7J_7.js";import"./index-BLKfHN5T.js";import"./index-9-N7EY21.js";import"./index-DvAYVpV9.js";import"./index-DT-q1fsr.js";import"./TtrTooltip.vue_vue_type_script_setup_true_lang-C0jsSUq7.js";import"./laravelValidation-Dwp_tg-W.js";import"./index-DZURjM60.js";import"./TtrTableColumnLabels.vue_vue_type_script_setup_true_lang-D2q3OahE.js";import"./TtrTableColumnRecipients.vue_vue_type_script_setup_true_lang-BPSiLeYr.js";import"./overview-C9fsuABj.js";import"./useFlashToast-BTEdArH6.js";import"./_baseFindIndex-Cj99RmFE.js";import"./TtrTableOptions.vue_vue_type_script_setup_true_lang-Dnsgyhw6.js";import"./useLazyDialogFetch-BAWjIKpu.js";import"./TtrIntlNumberFormat.vue_vue_type_script_setup_true_lang-csZ1DISa.js";import"./general-C_nISr-f.js";import"./index-PTzL6I_N.js";import"./index-6OMmZnv_.js";import"./brand-BWYa65kg.js";import"./threadFilters-Drj6UR55.js";import"./index-qo_VO41H.js";import"./index-DAqCblyg.js";import"./index-DtbzOJ00.js";import"./index-CytL2POL.js";import"./useSidebarMenuItems-D5IUE-9T.js";const _e=h({__name:"TtrDeleteCustomerButton",props:{customer:{}},setup(p){const s=p,i=j(),r=N(()=>typeof s.customer.crm_type=="string"),n=()=>{B.delete(route("contacts.destroy",{contact:s.customer.id}))},f=()=>{r.value||i.require({header:"Deleting Contact",message:"Are you sure you want to delete this contact? This action cannot be undone.",acceptProps:{label:"Delete Contact",severity:"success"},rejectProps:{label:"Cancel",severity:"secondary",outlined:!0},icon:"fa-light fa-check",accept:()=>{n()}})};return(o,c)=>{const $=O("tooltip");return A((d(),g("div",null,[t(e(C),{id:"TtrDeleteCustomerButton",disabled:r.value,icon:"fa-light fa-trash-can",rounded:"",severity:"danger",text:"",onClick:k(f,["prevent"])},null,8,["disabled"])])),[[$,{triggers:r.value?["hover"]:[],value:r.value?"You cannot delete contacts that have been synced from your CRM":""}]])}}}),ge={id:"TtrCustomersList",class:"relative"},be={class:"mb-10 rounded-lg border border-gray-300 bg-white p-5 dark:border-gray-700 dark:bg-gray-800"},ye={class:"flex items-center justify-between"},he={class:"flex items-center gap-2"},Ce={class:"flex items-center justify-end"},$e={class:"bg-primary-200 mx-2 my-5 rounded-sm p-5"},xe={key:0},De={key:1},Se=h({__name:"TtrCustomersList",props:{customers:{}},setup(p){const s=p,i=b([]),r=b(!1),n=b(""),f=l=>{n.value=l.search??"",F.value=l.sort_by,T.value=l.sort_direction,w.value=l.page,V.value=l.per_page},o=Y(()=>{v.sort_by=F.value,v.direction=T.value,v.page=w.value,v.per_page=V.value,v.search=n.value,v.get(route("contacts.index"),{preserveState:!0,preserveScroll:!0})},500,{leading:!1,trailing:!0}),c=l=>{n.value=l,o()},{onPage:$,onSort:E,pageNumber:w,perPage:V,sortField:F,sortOrder:T}=ee(),L=j(),z=()=>{L.require({header:"Deleting Contacts",message:"Are you sure you want to delete these contacts? This action cannot be undone.",acceptProps:{label:"Delete Contacts",severity:"success"},rejectProps:{label:"Cancel",severity:"secondary",outlined:!0},icon:"fa-light fa-check",accept:()=>{M()}})},{isLoading:P}=I(),M=()=>{r.value=!0,D.ids=i.value.map(l=>l.id).filter(l=>typeof l=="number"),D.post(route("contacts.destroy-multi"),{preserveScroll:!0})};return f(s.customers.filters),(l,q)=>(d(),g("div",ge,[t(te,{active:e(P),"full-page":!1},null,8,["active"]),a("div",be,[t(e(se),{selection:i.value,"onUpdate:selection":q[0]||(q[0]=x=>
1i.value=x),"always-show-paginator":!1,lazy:"",loading:e(P),paginator:!0,rows:s.customers.data.per_page,"rows-per-page-options":[15,50,100],scrollable:"","total-records":s.customers.data.total,value:s.customers.data.data,onPage:e($),onSort:e(E)},{header:m(()=>[a("div",ye,[t(oe,{"model-value":n.value,"onUpdate:modelValue":c},null,8,["model-value"]),A(a("div",he,[t(e(C),{disabled:i.value.length===0,icon:"fa-light fa-trash-can",label:"Delete selected",loading:r.value,severity:"danger",onClick:k(z,["prevent"])},null,8,["disabled","loading"]),t(R,{form:e(D),label:"Deleted."},null,8,["form"])],512),[[G,i.value.length>0]])])]),empty:m(()=>[a("div",$e,[n.value===""?(d(),g("span",xe," It looks like you don't have any contacts yet. Add some using the links above, or switch an existing contact by toggling your product type. ")):(d(),g("span",De," No contacts match your search. "))])]),default:m(()=>[t(e(y),{"header-style":"width: 3rem","selection-mode":"multiple"}),t(e(y),{class:"capitalize",field:"type",header:"Type",sortable:!0}),t(e(y),{field:"name",header:"Domain/Email",sortable:!0}),t(e(y),{field:"actions"},{body:m(x=>[a("div",Ce,[t(_e,{customer:x.data},null,8,["customer"])])]),_:1})]),_:1},8,["selection","loading","rows","total-records","value","onPage","onSort"])])]))}}),ke={class:"space-y-6"},we={class:"flex items-center gap-3"},Ve=h({__name:"TtrUploadContactsCsv",setup(p){const s=b(null),i=N(()=>
1"Contacts"),{isLoading:r}=I(),n=()=>{le(s.value)||(_.upload=s.value,_.post(route("contacts.create-from-csv"),{preserveScroll:!0}))};return(f,o)=>(d(),g("div",ke,[a("p",null,[a("small",null,[a("i",null,"Alternatively, you can also upload a CSV of "+H(i.value),1),o[2]||(o[2]=U(" - ",-1)),t(ae,{href:f.route("examples.emails-and-domains")},{default:m(()=>[...o[1]||(o[1]=[U("Download Example File ",-1)])]),_:1},8,["href"])])]),t(ie,{feedback:e(_).errors.upload,severity:{error:e(_).errors.upload!==void 0}},{default:m(()=>[t(re,{modelValue:s.value,"onUpdate:modelValue":o[0]||(o[0]=c=>s.value=c),accept:".csv",invalid:e(_).errors.upload!==void 0},null,8,["modelValue","invalid"])]),_:1},8,["feedback","severity"]),a("div",we,[t(e(C),{disabled:!s.value,label:"Create "+i.value+" From CSV",loading:e(r),onClick:n},null,8,["disabled","label","loading"]),t(R,{form:e(_),label:"Contacts added."},null,8,["form"])])]))}}),Fe={class:"mb-4 flex items-center justify-between gap-2"},Te={class:"flex items-center gap-2"},Pe={class:"grid ga
1p-2"},S="Contacts",Rt=h({layout:[X,ue],__name:"Index",props:{customers:{}},setup(p){const s=p,i=[{label:"Entities",command:()=>{B.visit(route("entities.index"))}},{label:S}],r=b(!1),n=()=>{u.post(route("contacts.store"),{preserveScroll:!0,onSuccess:()=>{u.reset()}})};return(f,o)=>(d(),g(W,null,[t(e(J),{title:S}),(d(),K(Q,{defer:"",to:"#breadcrumbs"},[t(Z,{breadcrumbs:i,class:"bg-transparent"})])),a("div",Fe,[t(ne,{title:S,description:"Individual email address or domain contacts"}),a("div",Te,[t(e(C),{label:"Add a contact",size:"small",onClick:o[0]||(o[0]=c=>r.value=!0)})])]),t(Se,{customers:s.customers},null,8,["customers"]),t(e(de),{visible:r.value,"onUpdate:visible":o[2]||(o[2]=c=>r.value=c),header:"Add a contact",maximizable:""},{default:m(()=>[a("form",{class:"mb-6 space-y-6",onSubmit:k(n,["prevent"])},[a("div",Pe,[t(e(fe),{variant:"on"},{default:m(()=>[t(e(ve),{id:"name",modelValue:e(u).name,"onUpdate:modelValue":o[1]||(o[1]=c=>e(u).name=c),required:"",fluid:"",invalid:e(u).errors.name!==void 0},null,8,["modelValue","invalid"]),o[3]||(o[3]=a("label",{for:"name"},"Contact Email/Domain",-1))]),_:1}),t(ce,{message:e(u).errors.name},null,8,["message"])]),t(me,{form:e(u)},null,8,["form"])],32),t(e(pe)),t(Ve)]),_:1},8,["visible"])],64))}});export{Rt 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.