PageSourceSearch

https://admin.cartstack.com/build/assets/SearchTool-DqnBjHYX.js

js cartstack.com collected 2026-09-24 17:44:36 UTC 8,187 bytes, 1 lines download raw bytes

1import{e as l,j as e,H as $,L as N,t as U}from"./app-D5Bf_dbH.js";import{S as Y}from"./SuperAdminLayout-Df3A_GmM.js";import{B as z}from"./Breadcrumbs-DxtGVYP8.js";import{C as D,a as G,b as q,d as J}from"./card-CUwjT2hB.js";import{T as K,a as Q,b as T,c as i,d as W,e as n}from"./table-Dn41ev5Z.js";import{S as d,a as o,b as c,c as m,d as t}from"./select-Ckvsxj-Q.js";import{B as _}from"./button-BooRjUAf.js";import{C as X}from"./checkbox-BZSy-2BQ.js";import{S as Z}from"./spinner-CoXWKYJB.js";import{d as ee}from"./super-admin-api-Bx81v1-Y.js";import"./dropdown-menu-DXUwCH2H.js";import"./react-icons.esm-CCm293eC.js";import"./index-D4lci4mZ.js";import"./index-eCYNzz1C.js";import"./index-Cn72dBP_.js";import"./index-DI8WOxmI.js";import"./index-rimmKLID.js";import"./avatar-CQYHhkys.js";import"./useGlobalShortcuts-C3mPQ3zf.js";import"./react-BPWwdghM.js";import"./chevron-right-Ba0gC1l7.js";import"./createLucideIcon-CyKN5i_O.js";import"./sheet-lU-qfqG8.js";import"./index-B02_DhYT.js";import"./scroll-area-CnV8vZPq.js";import"./index-D17hSi50.js";import"./rotate-ccw-hNqG30TC.js";import"./eye-jUg7xQoe.js";import"./user-CODNnX9U.js";import"./CSLOGO_lghtbg-12-DL8MB5gQ.js";import"./dialog-BgEHdzUT.js";import"./input-DqZbbFgj.js";import"./popover-CBJwT1Kl.js";import"./badge-BdtyRZeW.js";import"./shopping-cart-BYHhTvfT.js";import"./users-jvAb0Hsa.js";import"./lock-_lQojS3k.js";import"./search-F-2nffFh.js";import"./settings-x0uW8CTG.js";import"./log-out-Cqz61TM3.js";import"./sonner-CJXwkPTZ.js";import"./file-text-Bn6-_gGR.js";import"./index-D2PwZ_9r.js";import"./loader-circle-CNDCpqRX.js";const a="__any",se=[{value:"all",label:"All Accounts"},{value:"active",label:"Active"},{value:"freetrial",label:"Free Trial"},{value:"inactive",label:"Inactive"},{value:"payingcustomers",label:"Paying Customers"},{value:"pendingtrial",label:"Pending Trial"},{value:"trialended",label:"Trial Ended"}],le=[{value:"0-100",label:"0 - 100"},{value:"100-300",label:"100 - 300"},{value:"300-1000",label:"300 - 1000"},{value:"1000-5000",label:"1000 - 5000"},{value:"5000+",label:"5000+"},{value:"NA",label:"Not Sure"}],ae=[{value:"ecommerce",label:"Ecommerce"},{value:"hotel",label:"Hotels, Resorts & B&B"},{value:"ticketing",label:"Ticketing"},{value:"other",label:"Other"}],re=[{value:"one",label:"One Site"},{value:"multiple",label:"Multiple Sites"},{value:"agency",label:"Agency"}],te=u=>{switch(u){case"paying":return"bg-green-100 text-green-700";case"free_trial":return"bg-blue-100 text-blue-700";case"trial_ended":return"bg-yellow-100 text-yellow-800";case"cancelled":return"bg-gray-200 text-gray-700";case"errored":return"bg-red-100 text-red-700";default:return"bg-gray-100 text-gray-600"}},Qe=({platforms:u})=>{const[g,C]=l.useState("active"),[h,A]=l.useState(a),[x,O]=l.useState(a),[p,w]=l.useState(a),[j,P]=l.useState(a),[v,B]=l.useState(!1),[b,f]=l.useState(!1),[k,E]=l.useState(!1),[S,I]=l.useState([]),[R,H]=l.useState(""),[F,L]=l.useState(0),[y,M]=l.useState(!1),V=async()=>{f(!0);try{const s=await ee({status:g,platform_id:h===a?null:Number(h),estimated_opm:x===a?null:x,business_type:p===a?null:p,subcategory:j===a?null:j,recovered_amt:v});I(s.accounts),H(s.mrr_total),L(s.site_count),M(v),E(!0)}catch(s){U.error(s instanceof Error?s.message:"There was an issue getting the account list")}finally{f(!1)}};return e.jsxs(Y,{header:e.jsx(z,{items:[{name:"Dashboard",link:route("sa.dashboard"),
1current:!1},{name:"Customers",link:route("sa.customers.index"),current:!1},{name:"Search Tool",link:route("sa.customers.search-tool"),current:!0}]}),children:[e.jsx($,{title:"Accounts - Search Tool"}),e.jsxs(D,{children:[e.jsx(G,{children:e.jsx(q,{children:"Accounts - Search Tool"})}),e.jsxs(J,{children:[e.jsxs("div",{className:"grid grid-cols-2 md:grid-cols-3 lg:grid-cols-6 gap-3",children:[e.jsxs(d,{value:g,onValueChange:C,children:[e.jsx(o,{children:e.jsx(c,{placeholder:"Status"})}),e.jsx(m,{children:se.map(s=>e.jsx(t,{value:s.value,children:s.label},s.value))})]}),e.jsxs(d,{value:h,onValueChange:A,children:[e.jsx(o,{children:e.jsx(c,{placeholder:"Platform"})}),e.jsxs(m,{children:[e.jsx(t,{value:a,children:"-- All Platforms --"}),u.map(s=>e.jsx(t,{value:String(s.id),children:s.name},s.id))]})]}),e.jsxs(d,{value:x,onValueChange:O,children:[e.jsx(o,{children:e.jsx(c,{placeholder:"Estimated OPM"})}),e.jsxs(m,{children:[e.jsx(t,{value:a,children:"-- Any OPM --"}),le.map(s=>e.jsx(t,{value:s.value,children:s.label},s.value))]})]}),e.jsxs(d,{value:p,onValueChange:w,children:[e.jsx(o,{children:e.jsx(c,{placeholder:"Business Type"})}),e.jsxs(m,{children:[e.jsx(t,{value:a,children:"-- Any Business Type --"}),ae.map(s=>e.jsx(t,{value:s.value,children:s.label},s.value))]})]}),e.jsxs(d,{value:j,onValueChange:P,children:[e.jsx(o,{children:e.jsx(c,{placeholder:"Subcategory"})}),e.jsxs(m,{children:[e.jsx(t,{value:a,children:"-- Any Subcategory --"}),re.map(s=>e.jsx(t,{value:s.value,children:s.label},s.value))]})]}),e.jsx("div",{className:"flex items-center",children:e.jsx(_,{onClick:V,disabled:b,className:"w-full",children:b?e.jsxs(e.Fragment,{children:[e.jsx(Z,{className:"mr-2"})," Filtering..."]}):"Filter"})})]}),e.jsxs("label",{className:"flex items-center gap-2 mt-3 text-sm",children:[e.jsx(X,{checked:v,onCheckedChange:s=>B(s===!0)}),"Include recovered rev, last 30 days"]}),k&&e.jsxs("div",{className:"mt-6",children:[e.jsxs("div",{className:"flex items-center justify-between flex-wrap gap-2",children:[e.jsx("h3",{className:"text-lg font-semibold",children:"Account List"}),e.jsxs("div",{className:"flex gap-6 text-sm",children:[e.jsxs("span",{children:["Site Count: ",e.jsx("strong",{children:F})]}),e.jsxs("span",{children:["MRR Total: ",e.jsx("strong",{children:R})]})]})]}),S.length===0?e.jsx("p",{className:"text-center text-muted-foreground py-8",children:"Filter combination did not yield any results..."}):e.jsxs(K,{className:"mt-3",children:[e.jsx(Q,{children:e.jsxs(T,{children:[e.jsx(i,{children:"Account #"}),e.jsx(i,{children:"Primary Email / Organization"}),e.jsx(i,{children:"Site"}),e.jsx(i,{children:"Signup Date"}),e.jsx(i,{children:"Status"}),y&&e.jsx(i,{children:"Recovered Last 30"}),e.jsx(i,{className:"text-right",children:"Actions"})]})}),e.jsx(W,{children:S.map(s=>e.jsxs(T,{className:"align-top",children:[e.jsx(n,{className:s.disabled?"text-red-600":"",children:e.jsx(N,{href:route("sa.customers.profile",{id:s.native_id}),className:"hover:underline",children:s.account_number||s.native_id})}),e.jsxs(n,{className:s.disabled?"text-red-600":"",children:[s.email&&e.jsx("a",{href:`mailto:${s.email}`,className:"hover:underline",children:s.email}),s.company&&e.jsx("div",{children:s.company}),s.name&&e.jsxs("div",{className:"text-xs text-muted-foreground",children:["(",s.name,")"]}),e.jsxs("div",{className:"pt-2 text-xs text-muted-foreground space-y-0.5",children:[e.jsxs("div",{children:[e.jsx("strong",{children:"Business Type:"})," ",s.business_type]}),e.jsxs("div",{children:[e.jsx("strong",{children:"Sub Category:"})," ",s.subcategory]}),e.jsxs("div",{children:[e.jsx("strong",{children:"Estimated Orders:"})," ",s.orders_per_month]})]})]}),e.jsx(n,{className:"text-xs",children:s.sites.length===0?s.abandoned_note?e.jsx("span",{className:"text-muted-foreground italic",children:s.abandoned_note}):null:s.sites.map(r=>e.jsxs("div",{className:r.active?"":"text-red-600",children:[r.id," | ",r.url?e.jsx("a",{href:r.url,target:"_blank",rel:"noopener noreferrer",className:`hover:underline ${r.active?"":"text-red-600"}`,children:r.name}):r.name," | step ",r.step,r.platform?` | ${r.platform}`:""]},r.id))}),e.jsx(n,{className:"whitespace-nowrap",children:s.signup_date}),e.jsxs(n,{children:[e.jsx("span",{className:`inline-block rounded px-2 py-1 text-xs font-medium ${te(s.plan.variant)}`,children:s.plan.label}),s.plan.detail&&e.jsx("div",{className:"text-xs text-green-700 font-medium mt
1-1",children:s.plan.detail})]}),y&&e.jsx(n,{className:"whitespace-nowrap",children:s.recovered_last_30}),e.jsx(n,{className:"text-right",children:e.jsx(_,{asChild:!0,variant:"outline",size:"sm",children:e.jsx(N,{href:route("sa.customers.profile",{id:s.native_id}),children:"Profile"})})})]},s.native_id))})]})]})]})]})]})};export{Qe 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.