1import{c as is,n as Ps,r as n,t as b,a as A,j as s,T as Hs,H as Is,B as w,C as H,i as K,k as q,l as Q}from"./index-CZE7ptUD.js";import{a as Us}from"./index-CWZP4Ye1.js";import{I as Y}from"./input-Vep9kJkm.js";import{a as zs,S as Vs,L as ys,B as hs,P as Ls}from"./index-BaSB1II1.js";import{T as vs,a as Qs}from"./textarea-tBNHDM80.js";import{S as Ws}from"./switch-DyylbXny.js";import{L as as}from"./label-CV_oxjNr.js";import{S as cs,a as ds,b as ls,c as rs,d as ns,e as _,f as Js}from"./select-BmubZAcT.js";import{P as Zs,W as Gs}from"./PicraChatBot-DOmh4x87.js";import{R as C,C as Ks}from"./refresh-cw-CxQKIcMx.js";import{F as bs}from"./file-text-D5or8L-m.js";import{U as us}from"./users-DyiJbVNZ.js";import{L as qs}from"./layout-dashboard-vheJ6v4g.js";import{M as J}from"./mail-Bq9Wxw8b.js";import{A as Es}from"./activity-BJ82alU2.js";import{S as Xs}from"./shield-BvULoEtj.js";import{B as X}from"./bot-Cnj3rPCx.js";import{C as As}from"./chevron-right-C_aA1SG-.js";import{D as ws}from"./download-BcAGWAZy.js";import{S as js}from"./search-CQLcNv59.js";import{C as gs}from"./circle-check-big-DZ1L_O5o.js";import{C as Ys}from"./chevron-down-4xJIteQN.js";import{Z as se}from"./zap-DbtzdgMG.js";import{C as ee}from"./chevron-left-NRvP4zsR.js";import{L as ae}from"./loader-circle-wSCocstw.js";import{X as te}from"./x-B64YwYlD.js";import{P as Ss}from"./phone-DE_GB5Jp.js";import"./user-CRmH89rX.js";import"./send-CGy08POo.js";/** 2 * @license lucide-react v0.453.0 - ISC 3 * 4 * This source code is licensed under the ISC license. 5 * See the LICENSE file in the root directory of this source tree. 6 */const ce=is("ClipboardList",[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1",key:"tgr4d6"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2",key:"116196"}],["path",{d:"M12 11h4",key:"1jrz19"}],["path",{d:"M12 16h4",key:"n85exb"}],["path",{d:"M8 11h.01",key:"1dfujw"}],["path",{d:"M8 16h.01",key:"18s6g9"}]]);/** 7 * @license lucide-react v0.453.0 - ISC 8 * 9 * This source code is licensed under the ISC license. 10 * See the LICENSE file in the root directory of this source tree. 11 */const Cs=is("Lock",[["rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2",key:"1w4ew1"}],["path",{d:"M7 11V7a5 5 0 0 1 10 0v4",key:"fwvmzm"}]]);/** 12 * @license lucide-react v0.453.0 - ISC 13 * 14 * This source code is licensed under the ISC license. 15 * See the LICENSE file in the root directory of this source tree. 16 */const de=is("Pen",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}]]);/** 17 * @license lucide-react v0.453.0 - ISC 18 * 19 * This source code is licensed under the ISC license. 20 * See the LICENSE file in the root directory of this source tree. 21 */const le=is("UserPlus",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}],["line",{x1:"19",x2:"19",y1:"8",y2:"14",key:"1bvyxn"}],["line",{x1:"22",x2:"16",y1:"11",y2:"11",key:"1shjgl"}]]);function re(){const[l,m]=n.useState(30),{data:i,isLoading:t,refetch:h}=b.chat.analytics.useQuery({days:l}),o=i?.byContext??{},u=i?.totalMessages??0,r=i?.totalSessions??0,d=i?.avgMessagesPerSession??0;return s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:53",className:"space-y-6",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:54",className:"flex flex-wrap items-center gap-3",children:[s.jsx("h2",{"data-loc":"client/src/pages/AdminDashboard.tsx:55",className:"text-lg font-bold text-[#1B3A6B] flex-1",children:"Chat Analytics"}),s.jsxs("select",{"data-loc":"client/src/pages/AdminDashboard.tsx:56",value:l,onChange:j=>m(Number(j.target.value)),className:"border rounded-lg px-3 py-2 text-sm bg-white",children:[s.jsx("option",{"data-loc":"client/src/pages/AdminDashboard.tsx:61",value:7,children:"Last 7 days"}),s.jsx("option",{"data-loc":"client/src/pages/AdminDashboard.tsx:62",value:30,children:"Last 30 days"}),s.jsx("option",{"data-loc":"client/src/pages/AdminDashboard.tsx:63",value:90,children:"Last 90 days"})]}),s.jsxs("button",{"data-loc":"client/src/pages/AdminDashboard.tsx:65",onClick:()=>h(),className:"flex items-center gap-1.5 text-sm text-muted-foreground hover:text-foreground transition-colors",children:[s.jsx(C,{"data-loc":"client/src/pages/AdminDashboard.tsx:66",className:"w-4 h-4"})," Refresh"]})]}),t?s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:71",className:"flex items-center justify-center py-16 text-muted-foreground",children:[s.jsx(C,{"data-loc":"client/src/pages/AdminDashboard.tsx:72",className:"w-5 h-5 animate-spin mr-2"})," Loading..."]}):s.jsxs(s.Fragment,{children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:77",className:"grid grid-cols-1 sm:grid-cols-3 gap-4",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:78",className:"bg-white rounded-xl border p-5",children:[s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:79",className:"text-xs text-muted-foreground font-medium mb-1",children:"Total Sessions"}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:80",className:"text-3xl font-bold text-[#1B3A6B]",children:r})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:82",className:"bg-white rounded-xl border p-5",children:[s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:83",className:"text-xs text-muted-foreground font-medium mb-1",children:"Total Messages"}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:84",className:"text-3xl font-bold text-[#1B3A6B]",children:u})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:86",className:"bg-white rounded-xl border p-5",children:[s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:87",className:"text-xs text-muted-foreground font-medium mb-1",children:"Avg Messages / Session"}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:88",className:"text-3xl font-bold text-[#1B3A6B]",children:d})]})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:93",className:"bg-white rounded-xl border p-5",children:[s.jsx("h3",{"data-loc":"client/src/pages/AdminDashboard.tsx:94",className:"text-sm font-semibold text-gray-700 mb-4",children:"Messages by Context"}),Object.keys(o).length===0?s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:96",className:"text-sm text-muted-foreground",children:"No chat data for this period."}):s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:98",className:"space-y-3",children:Object.entries(o).map(([j,N])=>{const D=u>0?Math.round(Number(N)/u*100):0,k=j==="submit_form"?"Submit Form":j==="crm_dashboard"?"CRM Dashboard":j;return s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:103",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:104",className:"flex justify-between text-sm mb-1",children:[s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:105",className:"font-medium text-gray-700",children:k}),s.jsxs("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:106",className:"text-muted-foreground",children:[Number(N)," (",D,"%)"]})]}),s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:108",className:"h-2 bg-gray-100 rounded-full overflow-hidden",children:s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:109",className:"h-full bg-[#1B3A6B] rounded-full transition-all duration-500",style:{width:`${D}%`}})})]},j)})})]})]})]})}function ne(){const[l,m]=n.useState(""),[i,t]=n.useState(""),[h,o]=n.useState(0),u=50,{data:r,isLoading:d,refetch:j}=b.emailLog.list.useQuery({limit:u,offset:h*u,templateType:l||void 0,toEmail:i||void 0}),N=r?.items??[],D=r?.total??0,k={status_change:"Status Change",daily_digest:"Daily Digest",welcome_drip:"Welcome Drip",agent_notification:"Agent Notification"},P={sent:"bg-green-100 text-green-800",delivered:"bg-blue-100 text-blue-800",bounced:"bg-red-100 text-red-800",failed:"bg-red-100 text-red-800",opened:"bg-purple-100 text-purple-800",clicked:"bg-amber-100 text-amber-800"};return s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:160",className:"space-y-4",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:161",className:"flex flex-wrap items-center gap-3",children:[s.jsx("h2",{"data-loc":"client/src/pages/AdminDashboard.tsx:162",className:"text-lg font-bold text-[#1B3A6B] flex-1",children:"Email Delivery Log"}),s.jsxs("button",{"data-loc":"client/src/pages/AdminDashboard.tsx:163",onClick:()=>j(),className:"flex items-center gap-1.5 text-sm text-muted-foreground hover:text-foreground transition-colors",children:[s.jsx(C,{"data-loc":"client/src/pages/AdminDashboard.tsx:164",className:"w-4 h-4"})," Refresh"]})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:169",className:"flex flex-wrap gap-3",children:[s.jsxs("select",{"data-loc":"client/src/pages/AdminDashboard.tsx:170",value:l,onCh
21ange:g=>{m(g.target.value),o(0)},className:"border rounded-lg px-3 py-2 text-sm bg-white",children:[s.jsx("option",{"data-loc":"client/src/pages/AdminDashboard.tsx:175",value:"",children:"All types"}),Object.entries(k).map(([g,I])=>s.jsx("option",{"data-loc":"client/src/pages/AdminDashboard.tsx:177",value:g,children:I},g))]}),s.jsx("input",{"data-loc":"client/src/pages/AdminDashboard.tsx:180",type:"text",placeholder:"Filter by email...",value:i,onChange:g=>{t(g.target.value),o(0)},className:"border rounded-lg px-3 py-2 text-sm bg-white flex-1 min-w-[180px]"})]}),s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:190",className:"bg-white rounded-xl border overflow-hidden",children:d?s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:192",className:"flex items-center justify-center py-16 text-muted-foreground",children:[s.jsx(C,{"data-loc":"client/src/pages/AdminDashboard.tsx:193",className:"w-5 h-5 animate-spin mr-2"})," Loading..."]}):N.length===0?s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:196",className:"flex flex-col items-center justify-center py-16 text-muted-foreground gap-2",children:[s.jsx(J,{"data-loc":"client/src/pages/AdminDashboard.tsx:197",className:"w-8 h-8 opacity-30"}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:198",className:"text-sm",children:"No emails logged yet"})]}):s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:201",className:"overflow-x-auto",children:s.jsxs("table",{"data-loc":"client/src/pages/AdminDashboard.tsx:202",className:"w-full text-sm",children:[s.jsx("thead",{"data-loc":"client/src/pages/AdminDashboard.tsx:203",className:"bg-gray-50 border-b",children:s.jsxs("tr",{"data-loc":"client/src/pages/AdminDashboard.tsx:204",children:[s.jsx("th",{"data-loc":"client/src/pages/AdminDashboard.tsx:205",className:"text-left px-4 py-3 font-semibold text-gray-600",children:"Sent At"}),s.jsx("th",{"data-loc":"client/src/pages/AdminDashboard.tsx:206",className:"text-left px-4 py-3 font-semibold text-gray-600",children:"To"}),s.jsx("th",{"data-loc":"client/src/pages/AdminDashboard.tsx:207",className:"text-left px-4 py-3 font-semibold text-gray-600",children:"Subject"}),s.jsx("th",{"data-loc":"client/src/pages/AdminDashboard.tsx:208",className:"text-left px-4 py-3 font-semibold text-gray-600",children:"Type"}),s.jsx("th",{"data-loc":"client/src/pages/AdminDashboard.tsx:209",className:"text-left px-4 py-3 font-semibold text-gray-600",children:"Status"}),s.jsx("th",{"data-loc":"client/src/pages/AdminDashboard.tsx:210",className:"text-left px-4 py-3 font-semibold text-gray-600",children:"Resend ID"})]})}),s.jsx("tbody",{"data-loc":"client/src/pages/AdminDashboard.tsx:213",children:N.map(g=>s.jsxs("tr",{"data-loc":"client/src/pages/AdminDashboard.tsx:215",className:"border-b last:border-0 hover:bg-gray-50 transition-colors",children:[s.jsx("td",{"data-loc":"client/src/pages/AdminDashboard.tsx:216",className:"px-4 py-3 text-xs text-muted-foreground whitespace-nowrap",children:new Date(g.sentAt).toLocaleString()}),s.jsx("td",{"data-loc":"client/src/pages/AdminDashboard.tsx:219",className:"px-4 py-3 text-xs truncate max-w-[160px]",children:g.toEmail}),s.jsx("td",{"data-loc":"client/src/pages/AdminDashboard.tsx:220",className:"px-4 py-3 text-xs truncate max-w-[200px]",children:g.subject}),s.jsx("td",{"data-loc":"client/src/pages/AdminDashboard.tsx:221",className:"px-4 py-3",children:s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:222",className:"text-xs bg-gray-100 text-gray-700 px-2 py-0.5 rounded-full",children:k[g.templateType]??g.templateType})}),s.jsx("td",{"data-loc":"client/src/pages/AdminDashboard.tsx:226",className:"px-4 py-3",children:s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:227",className:`text-xs px-2 py-0.5 rounded-full font-medium ${P[g.status??""]??"bg-gray-100 text-gray-700"}`,children:g.status??"sent"})}),s.jsx("td",{"data-loc":"client/src/pages/AdminDashboard.tsx:231",className:"px-4 py-3 text-xs text-muted-foreground font-mono truncate max-w-[120px]",children:g.resendId??"â"})]},g.id))})]})})}),D>u&&s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:244",className:"flex items-center justify-between text-sm text-muted-foreground",children:[s.jsxs("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:245",children:["Showing ",h*u+1,"â",Math.min((h+1)*u,D)," of ",D]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:246",className:"flex gap-2",children:[s.jsx("button",{"data-loc":"client/src/pages/AdminDashboard.tsx:247",disabled:h===0,onClick:()=>o(g=>g-1),className:"px-3 py-1.5 border rounded-lg disabled:opacity-40 hover:bg-gray-50 transition-colors",children:s.jsx(ee,{"data-loc":"client/src/pages/AdminDashboard.tsx:248",className:"w-4 h-4"})}),s.jsx("button",{"data-loc":"client/src/pages/AdminDashboard.tsx:250",disabled:(h+1)*u>=D,onClick:()=>o(g=>g+1),className:"px-3 py-1.5 border rounded-lg disabled:opacity-40 hover:bg-gray-50 transition-colors",children:s.jsx(As,{"data-loc":"client/src/pages/AdminDashboard.tsx:251",className:"w-4 h-4"})})]})]})]})}function ie(){const[l,m]=n.useState(!1),{data:i,isLoading:t,refetch:h}=b.enrichment.statusSummary.useQuery(),o=b.enrichment.enrichAll.useMutation({onSuccess:d=>{m(!1),A.success(`Enrichment complete: ${d.succeeded} succeeded, ${d.failed} failed, ${d.skipped} skipped`),h()},onError:d=>{m(!1),A.error(`Bulk enrichment failed: ${d.message}`)}}),u=()=>{m(!0),o.mutate()},r=i?.total?Math.round(i.success/i.total*100):0;return s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:284",className:"space-y-6",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:285",className:"flex flex-wrap items-center gap-3",children:[s.jsxs("h2",{"data-loc":"client/src/pages/AdminDashboard.tsx:286",className:"text-lg font-bold text-[#1B3A6B] flex-1 flex items-center gap-2",children:[s.jsx(cs,{"data-loc":"client/src/pages/AdminDashboard.tsx:287",className:"h-5 w-5"}),"Agent Web Profile Enrichment"]}),s.jsxs("button",{"data-loc":"client/src/pages/AdminDashboard.tsx:290",onClick:()=>h(),className:"flex items-center gap-1.5 text-sm text-muted-foreground hover:text-foreground transition-colors",children:[s.jsx(C,{"data-loc":"client/src/pages/AdminDashboard.tsx:291",className:"h-4 w-4"})," Refresh"]}),s.jsxs(w,{"data-loc":"client/src/pages/AdminDashboard.tsx:293",onClick:u,disabled:l||t,size:"sm",children:[l?s.jsx(ae,{"data-loc":"client/src/pages/AdminDashboard.tsx:298",className:"h-4 w-4 animate-spin mr-2"}):s.jsx(cs,{"data-loc":"client/src/pages/AdminDashboard.tsx:298",className:"h-4 w-4 mr-2"}),"Enrich All Un-enriched"]})]}),t?s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:304",className:"text-center py-12 text-muted-foreground",children:"Loading..."}):i?s.jsxs(s.Fragment,{children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:308",className:"bg-white rounded-xl border p-5 space-y-3",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:309",className:"flex justify-between text-sm",children:[s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:310",className:"font-medium text-gray-700",children:"Enrichment Coverage"}),s.jsxs("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:311",className:"font-bold text-[#1B3A6B]",children:[r,"%"]})]}),s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:313",className:"h-3 bg-gray-100 rounded-full overflow-hidden",children:s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:314",className:"h-full bg-gradient-to-r from-[#1B3A6B] to-blue-400 rounded-full transition-all duration-700",style:{width:`${r}%`}})}),s.jsxs("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:319",className:"text-xs text-muted-foreground",children:[i.success," of ",i.total," agents enriched"]})]}),s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:323",className:"grid grid-cols-2 md:grid-cols-5 ga
21p-3",children:[{label:"Total Agents",value:i.total,color:"bg-gray-50 text-gray-700"},{label:"Enriched",value:i.success,color:"bg-green-50 text-green-700"},{label:"Not Started",value:i.notStarted,color:"bg-blue-50 text-blue-700"},{label:"Pending",value:i.pending,color:"bg-yellow-50 text-yellow-700"},{label:"Failed",value:i.failed,color:"bg-red-50 text-red-700"}].map(d=>s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:331",className:`rounded-xl border p-4 ${d.color}`,children:[s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:332",className:"text-2xl font-bold",children:d.value}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:333",className:"text-xs mt-1 opacity-80",children:d.label})]},d.label))}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:339",className:"bg-blue-50 border border-blue-200 rounded-xl p-4 text-sm text-blue-800",children:[s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:340",className:"font-semibold mb-1",children:"How enrichment works"}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:341",children:'When a new agent is added to the CRM, the system automatically searches the web (Zillow, Realtor.com, brokerage sites) and uses AI to extract their brokerage, production stats, awards, neighborhoods, and social links. Data is saved permanently â no repeat searches. Use "Re-enrich" on an individual agent profile to refresh their data.'})]})]}):null]})}const Bs="/manus-storage/fastpicras-logo_97716f2b.png",O={new:{label:"New",color:"bg-blue-100 text-blue-800",dot:"bg-blue-500",border:"border-l-blue-500"},in_review:{label:"In Review",color:"bg-amber-100 text-amber-800",dot:"bg-amber-500",border:"border-l-amber-500"},quoted:{label:"Quoted",color:"bg-purple-100 text-purple-800",dot:"bg-purple-500",border:"border-l-purple-500"},in_progress:{label:"In Progress",color:"bg-orange-100 text-orange-800",dot:"bg-orange-500",border:"border-l-orange-500"},complete:{label:"Complete",color:"bg-green-100 text-green-800",dot:"bg-green-500",border:"border-l-green-500"},cancelled:{label:"Cancelled",color:"bg-gray-100 text-gray-600",dot:"bg-gray-400",border:"border-l-gray-400"}};function ts({status:l}){const m=O[l]||{label:l,color:"bg-gray-100 text-gray-800",dot:"bg-gray-400"};return s.jsxs("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:364",className:`inline-flex items-center gap-1.5 px-2.5 py-1 rounded-full text-xs font-semibold ${m.color}`,children:[s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:365",className:`w-1.5 h-1.5 rounded-full ${m.dot} shrink-0`}),m.label]})}function ks({submissionId:l,onClose:m}){const[,i]=Ps(),{data:t,refetch:h}=b.submissions.getById.useQuery({id:l}),{data:o,refetch:u}=b.notes.list.useQuery({submissionId:l}),{data:r}=b.hcp.syncLog.useQuery({submissionId:l}),d=b.submissions.updateStatus.useMutation({onSuccess:()=>{h(),A.success("Status updated")},onError:x=>A.error("Failed to update status: "+x.message)}),j=b.notes.add.useMutation({onSuccess:()=>{u(),k(""),A.success("Note added")},onError:x=>A.error("Failed to add note: "+x.message)}),N=b.hcp.retryPush.useMutation({onSuccess:()=>{A.success("Pushed to Housecall Pro"),h()},onError:x=>A.error("HCP push failed: "+x.message)}),[D,k]=n.useState(""),[P,g]=n.useState(!1);if(!t)return s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:391",className:"flex items-center justify-center h-64",children:s.jsx(C,{"data-loc":"client/src/pages/AdminDashboard.tsx:392",className:"w-6 h-6 animate-spin text-[#1B3A6B]"})});const I=`${t.streetAddress||""}${t.town?", "+t.town:""}${t.state?", "+t.state:""} ${t.zipCode||""}`.trim(),B=r&&r.length>0&&r[0]?.syncStatus==="synced",y=r&&r.length>0&&r[0]?.syncStatus==="failed";return O[t.status]||O.new,s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:402",className:"flex flex-col h-full bg-white",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:404",className:"flex items-start justify-between px-4 md:px-6 py-4 bg-[#1B3A6B] text-white shrink-0",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:405",className:"min-w-0 flex-1 pr-3",children:[s.jsxs("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:406",className:"text-[#C8A84B] text-[10px] font-bold uppercase tracking-widest mb-1",children:["PICRA #",t.id]}),s.jsx("h2",{"data-loc":"client/src/pages/AdminDashboard.tsx:407",className:"text-base md:text-lg font-bold leading-tight",children:t.submissionType}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:408",className:"text-blue-200 text-xs mt-1 leading-relaxed",children:I})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:410",className:"flex items-center gap-2 shrink-0",children:[s.jsx(ts,{"data-loc":"client/src/pages/AdminDashboard.tsx:411",status:t.status}),s.jsx("button",{"data-loc":"client/src/pages/AdminDashboard.tsx:412",onClick:m,className:"w-8 h-8 rounded-full bg-white/10 hover:bg-white/20 flex items-center justify-center transition-colors",children:s.jsx(te,{"data-loc":"client/src/pages/AdminDashboard.tsx:416",className:"w-4 h-4"})})]})]}),s.jsx(Js,{"data-loc":"client/src/pages/AdminDashboard.tsx:421",className:"flex-1",children:s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:422",className:"p-4 md:p-6 space-y-4",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:425",children:[s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:426",className:"text-xs font-semibold text-gray-500 uppercase tracking-wide mb-2",children:"Update Status"}),s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:427",className:"flex flex-wrap gap-2",children:Object.entries(O).map(([x,F])=>s.jsx("button",{"data-loc":"client/src/pages/AdminDashboard.tsx:429",onClick:()=>d.mutate({id:t.id,status:x}),className:`px-3 py-1.5 rounded-full text-xs font-semibold border-2 transition-all active:scale-95 ${t.status===x?`${F.color} border-current`:"bg-white text-gray-500 border-gray-200 hover:border-gray-300"}`,children:F.label},x))})]}),t.aiSummary&&s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:446",className:"bg-amber-50 border border-amber-200 rounded-xl p-4",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:447",className:"flex items-center gap-2 mb-2",children:[s.jsx(X,{"data-loc":"client/src/pages/AdminDashboard.tsx:448",className:"w-4 h-4 text-amber-700"}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:449",className:"text-xs font-bold text-amber-800 uppercase tracking-wide",children:"AI Summary"})]}),s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:451",className:"text-amber-900 text-sm leading-relaxed prose prose-sm max-w-none prose-headings:text-amber-900 prose-strong:text-amber-900",children:s.jsx(Gs,{"data-loc":"client/src/pages/AdminDashboard.tsx:452",children:t.aiSummary})})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:458",className:"bg-gray-50 rounded-xl p-4 space-y-3",children:[s.jsxs("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:459",className:"text-xs font-bold text-[#1B3A6B] uppercase tracking-wide flex items-center gap-1.5",children:[s.jsx(Is,{"data-loc":"client/src/pages/AdminDashboard.tsx:460",className:"w-3.5 h-3.5"})," Property"]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:462",className:"grid grid-cols-2 gap-x-4 gap-y-2 text-sm",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:463",children:[s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:463",className:"text-gray-400 text-xs",children:"Address"}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:463",className:"font-medium text-gray-900 text-xs mt-0.5",children:I})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:464",children:[s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:464",className:"text-gray-400 text-xs",children:"Status"}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:464",className:"font-medium text-gray-900 text-xs mt-0.5",children:t.propertyStatus||"â"})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:465",children:[s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:465",className:"text-gray-400 text-xs",children:"Closing Date"}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:465",className:"font-medium text-gray-900 text-xs mt-0.5",children:t.closingDate||"TBD"})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:466",children:[s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:466",className:"text-gray-400 text-xs",children:"Paying at Close"}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:466",className:"font-medium text-gray-900 text-xs mt-0.5",children:t.payingAtClose||"â"})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:467",children:[s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:467",className:"text-gray-400 text-xs",children:"Schedule With"}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:467",className:"font-medium text-gray-900 text-xs mt-0.5",children:t.scheduleWith||"â"})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:468",children:[s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:468",className:"text-gray-400 text-xs",children:"Has Lockbox"}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:468",className:"font-medium text-gray-900 text-xs mt-0.5",children:t.hasLockbox||"â"})]}),t.lockboxCode&&s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:470",className:"col-span-2",children:[s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:471",className:"text-gray-400 text-xs",children:"Lockbox Code"}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:472",className:"font-mono font-bold text-[#1B3A6B] text-sm mt-0.5",children:t.lockboxCode})]})]})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:479",className:"grid grid-cols-1 sm:grid-cols-2 gap-3",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:480",className:"bg-blue-50 rounded-xl p-4",children:[s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:481",className:"text-xs font-bold text-[#1B3A6B] uppercase tracking-wide mb-2",children:"Property Owner"}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:482",className:"font-semibold text-gray-900 text-sm",children:t.homeOwnerName}),t.homeOwnerEmail&&s.jsxs("a",{"data-loc":"client/src/pages/AdminDashboard.tsx:483",href:`mailto:${t.homeOwnerEmail}`,className:"text-gray-500 text-xs flex items-center gap-1 mt-1 hover:text-[#1B3A6B] transition-colors",children:[s.jsx(J,{"data-loc":"client/src/pages/AdminDashboard.tsx:483",className:"w-3 h-3"}),t.homeOwnerEmail]}),t.homeOwnerPhone&&s.jsxs("a",{"data-loc":"client/src/pages/AdminDashboard.tsx:484",href:`tel:${t.homeOwnerPhone}`,className:"text-gray-500 text-xs flex items-center gap-1 mt-0.5 hover:text-[#1B3A6B] transition-colors",children:[s.jsx(Ss,{"data-loc":"client/src/pages/AdminDashboard.tsx:484",className:"w-3 h-3"}),t.homeOwnerPhone]})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:486",className:"bg-purple-50 rounded-xl p-4",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:487",className:"flex items-center justify-between mb-2",children:[s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:488",className:"text-xs font-bold text-[#1B3A6B] uppercase tracking-wide",children:"Agent"}),t.agentId&&s.jsx("button",{"data-loc":"client/src/pages/AdminDashboard.tsx:490",onClick:()=>i(`/admin/agents/${t.agentId}`),className:"text-[10px] font-semibold text-[#1B3A6B] bg-[#1B3A6B]/10 hover:bg-[#1B3A6B]/20 px-2 py-0.5 rounded-full transition-colors",children:"View Profile â"})]}),s.jsx("button",{"data-loc":"client/src/pages/AdminDashboard.tsx:498",onClick:()=>t.agentId&&i(`/admin/agents/${t.agentId}`),className:`font-semibold text-sm text-left ${t.agentId?"text-[#1B3A6B] hover:underline cursor-pointer":"text-gray-900 cursor-default"}`,children:t.agentName}),t.agentEmail&&s.jsxs("a",{"data-loc":"client/src/pages/AdminDashboard.tsx:504",href:`mailto:${t.agentEmail}`,className:"text-gray-500 text-xs flex items-center gap-1 mt-1 hover:text-[#1B3A6B] transition-colors",children:[s.jsx(J,{"data-loc":"client/src/pages/AdminDashboard.tsx:504",className:"w-3 h-3"}),t.agentEmail]}),t.agentPhone&&s.jsxs("a",{"data-loc":"client/src/pages/AdminDashboard.tsx:505",href:`tel:${t.agentPhone}`,className:"text-gray-500 text-xs flex items-center gap-1 mt-0.5 hover:text-[#1B3A6B] transition-colors",children:[s.jsx(Ss,{"data-loc":"client/src/pages/AdminDashboard.tsx:505",className:"w-3 h-3"}),t.agentPhone]})]})]}),(t.inspectionReportUrl||t.picraListUrl||t.legacyInspectionUrl||t.legacyPicraUrl)&&s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:511",children:[s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:512",className:"text-xs font-bold text-gray-500 uppercase tracking-wide mb-2",children:"Uploaded Files"}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:513",className:"flex gap-2 flex-wrap",children:[(t.inspectionReportUrl||t.legacyInspectionUrl)&&s.jsxs("a",{"data-loc":"client/src/pages/AdminDashboard.tsx:515",href:t.inspectionReportUrl||t.legacyInspectionUrl||"#",target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-2 bg-[#1B3A6B] text-white px-4 py-2.5 rounded-xl text-xs font-semibold hover:bg-[#162f58] transition-colors active:scale-95",children:[s.jsx(bs,{"data-loc":"client/src/pages/AdminDashboard.tsx:517",className:"w-3.5 h-3.5"})," Inspection Report"]}),(t.picraListUrl||t.legacyPicraUrl)&&s.jsxs("a",{"data-loc":"client/src/pages/AdminDashboard.tsx:521",href:t.picraListUrl||t.legacyPicraUrl||"#",target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-2 bg-[#C8A84B] text-[#1B3A6B] px-4 py-2.5 rounded-xl text-xs font-semibold hover:bg-[#b8943b] transition-colors active:scale-95",children:[s.jsx(ce,{"data-loc":"client/src/pages/AdminDashboard.tsx:523",className:"w-3.5 h-3.5"})," PICRA List"]})]})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:531",className:`rounded-xl p-4 border ${B?"bg-green-50 border-green-200":y?"bg-red-50 border-red-200":"bg-amber-50 border-amber-200"}`,children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:532",className:"flex items-center justify-between mb-2",children:[s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:533",className:`text-xs font-bold uppercase tracking-wide ${B?"text-green-800":y?"text-red-800":"text-amber-800"}`,children:B?"â Synced to HCP":y?"â HCP Sync Failed":"â³ Not Synced to HCP"}),s.jsxs("button",{"data-loc":"client/src/pages/AdminDashboard.tsx:536",onClick:()=>N.mutate({submissionId:t.id}),disabled:N.isPending,className:"flex items-center gap-1 text-xs bg-[#1B3A6B] text-white px-3 py-1.5 rounded-lg hover:bg-[#162f58] transition-colors disabled:opacity-50 active:scale-95",children:[N.isPending?s.jsx(C,{"data-loc":"client/src/pages/AdminDashboard.tsx:541",className:"w-3 h-3 animate-spin"}):s.jsx(C,{"data-loc":"client/src/pages/AdminDashboard.tsx:541",className:"w-3 h-3"}),B?"Re-sync":"Push to HCP"]})]}),r&&r.length>0?s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:546",className:"space-y-1",children:r.slice(0,5).map(x=>s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:548",className:"flex items-center justify-between py-1 border-b border-black/5 last:border-0 text-xs",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:549",className:"flex items-center gap-2",children:[s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:550",className:x.syncStatus==="synced"||x.syncStatus==="updated"?"text-green-700":"text-red-700",children:x.syncStatus==="synced"||x.syncStatus==="updated"?"â":"â"}),s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:553",className:"font-medium",children:x.lastEvent||x.syncStatus}),x.hcpJobId&&s.jsxs("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:554",className:"font-mono text-gray-400",children:["Job: ",x.hcpJobId]})]}),s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:556",className:"text-gray-400",children:new Date(x.createdAt).toLocaleStr
21ing()})]},x.id))}):s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:561",className:"text-xs text-gray-500 italic",children:"No HCP sync history yet."})]}),t.extraNotes&&s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:567",className:"bg-gray-50 rounded-xl p-4",children:[s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:568",className:"text-xs font-bold text-gray-500 uppercase tracking-wide mb-2",children:"Agent Notes"}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:569",className:"text-sm text-gray-700 whitespace-pre-wrap",children:t.extraNotes})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:574",children:[s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:575",className:"text-xs font-bold text-gray-500 uppercase tracking-wide mb-3",children:"Staff Notes"}),o&&o.length>0?s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:577",className:"space-y-2 mb-3",children:o.map(x=>s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:579",className:`p-3 rounded-xl text-sm ${x.isPrivate?"bg-red-50 border border-red-200":"bg-gray-50 border border-gray-200"}`,children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:580",className:"flex items-center justify-between mb-1",children:[s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:581",className:"font-semibold text-[#1B3A6B] text-xs",children:x.authorName}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:582",className:"flex items-center gap-2",children:[x.isPrivate&&s.jsxs("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:584",className:"flex items-center gap-1 text-red-600 text-[10px] font-semibold",children:[s.jsx(Cs,{"data-loc":"client/src/pages/AdminDashboard.tsx:585",className:"w-3 h-3"})," Private"]}),s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:588",className:"text-gray-400 text-[10px]",children:new Date(x.createdAt).toLocaleString()})]})]}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:591",className:"text-gray-700 whitespace-pre-wrap",children:x.content})]},x.id))}):s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:596",className:"text-gray-400 text-sm italic mb-3",children:"No notes yet."}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:598",className:"space-y-2 pt-2 border-t",children:[s.jsx(Qs,{"data-loc":"client/src/pages/AdminDashboard.tsx:599",placeholder:"Add a note...",value:D,onChange:x=>k(x.target.value),rows:3,className:"text-sm resize-none"}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:606",className:"flex items-center justify-between",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:607",className:"flex items-center gap-2",children:[s.jsx(Ws,{"data-loc":"client/src/pages/AdminDashboard.tsx:608",id:"private-note",checked:P,onCheckedChange:g}),s.jsxs(as,{"data-loc":"client/src/pages/AdminDashboard.tsx:609",htmlFor:"private-note",className:"text-xs flex items-center gap-1 cursor-pointer text-gray-600",children:[s.jsx(Cs,{"data-loc":"client/src/pages/AdminDashboard.tsx:610",className:"w-3 h-3"})," Private"]})]}),s.jsxs(w,{"data-loc":"client/src/pages/AdminDashboard.tsx:613",size:"sm",className:"bg-[#1B3A6B] text-white hover:bg-[#162f58] rounded-lg",onClick:()=>j.mutate({submissionId:t.id,content:D,isPrivate:P}),disabled:!D.trim()||j.isPending,children:[s.jsx(Ls,{"data-loc":"client/src/pages/AdminDashboard.tsx:619",className:"w-3 h-3 mr-1"})," Add Note"]})]})]})]})]})})]})}const ps=[{key:"view_all",label:"View All Submissions",desc:"See every agentâs submissions (not just their own)"},{key:"edit_status",label:"Edit Submission Status",desc:"Change status on any submission"},{key:"push_hcp",label:"Push to Housecall Pro",desc:"Sync submissions to HCP and retry failed pushes"},{key:"manage_agents",label:"Manage Agents",desc:"View agent profiles, add notes, send messages"},{key:"manage_staff",label:"Manage Staff",desc:"Add, remove, and edit staff members (admin only)"},{key:"import_csv",label:"Import CSV Data",desc:"Upload and import bulk submission CSV files"},{key:"view_settings",label:"View Settings & HCP Health",desc:"Access the Settings tab and integration status"}];function oe(){const{data:l,refetch:m}=b.admin.listStaff.useQuery(),i=b.admin.addStaff.useMutation({onSuccess:c=>{A.success(c.action==="reactivated"?"Staff member reactivated":"Staff member added"),m(),u(!1),d(""),N(""),k("staff")},onError:c=>A.error(c.message)}),t=b.admin.updateStaff.useMutation({onSuccess:()=>{A.success("Updated"),m()},onError:c=>A.error(c.message)}),h=b.admin.removeStaff.useMutation({onSuccess:()=>{A.success("Staff member deactivated"),m()},onError:c=>A.error(c.message)}
21),[o,u]=n.useState(!1),[r,d]=n.useState(""),[j,N]=n.useState(""),[D,k]=n.useState("staff"),[P,g]=n.useState(null),[I,B]=n.useState({}),y={owner:"bg-[#C8A84B] text-[#1B3A6B]",admin:"bg-[#1B3A6B] text-white",staff:"bg-gray-100 text-gray-700"};function x(c){if(I[c.id])return I[c.id];const f=c.permissions||{};return c.role==="owner"||c.role==="admin"?Object.fromEntries(ps.map(v=>[v.key,f[v.key]!==!1])):Object.fromEntries(ps.map(v=>[v.key,!!f[v.key]]))}function F(c,f,v){B(E=>({...E,[c]:{...M(c),[f]:!v}}))}function M(c){const f=(l||[]).find(v=>v.id===c);return f?x(f):{}}function Z(c){const f=I[c.id];f&&t.mutate({id:c.id,permissions:f},{onSuccess:()=>{B(v=>{const E={...v};return delete E[c.id],E}),m()}})}return s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:705",className:"space-y-5",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:706",className:"flex items-center justify-between",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:707",children:[s.jsx("h2",{"data-loc":"client/src/pages/AdminDashboard.tsx:708",className:"text-lg md:text-xl font-bold text-[#1B3A6B]",children:"Team Management"}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:709",className:"text-gray-500 text-sm mt-0.5",children:"Manage staff access to the CRM."})]}),s.jsxs(w,{"data-loc":"client/src/pages/AdminDashboard.tsx:711",className:"bg-[#1B3A6B] text-white hover:bg-[#162f58] rounded-xl h-10",onClick:()=>u(!o),children:[s.jsx(le,{"data-loc":"client/src/pages/AdminDashboard.tsx:712",className:"w-4 h-4 mr-2"})," Add Staff"]})]}),o&&s.jsxs(H,{"data-loc":"client/src/pages/AdminDashboard.tsx:718",className:"border-[#C8A84B]/40 bg-amber-50 rounded-2xl",children:[s.jsx(K,{"data-loc":"client/src/pages/AdminDashboard.tsx:719",className:"pb-3",children:s.jsx(q,{"data-loc":"client/src/pages/AdminDashboard.tsx:720",className:"text-sm font-bold text-[#1B3A6B] uppercase tracking-wide",children:"New Staff Member"})}),s.jsxs(Q,{"data-loc":"client/src/pages/AdminDashboard.tsx:722",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:723",className:"grid grid-cols-1 sm:grid-cols-3 gap-3",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:724",children:[s.jsx(as,{"data-loc":"client/src/pages/AdminDashboard.tsx:725",className:"text-xs text-gray-600 mb-1 block",children:"Email Address"}),s.jsx(Y,{"data-loc":"client/src/pages/AdminDashboard.tsx:726",placeholder:"[email protected]",value:r,onChange:c=>d(c.target.value),className:"rounded-xl"})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:728",children:[s.jsx(as,{"data-loc":"client/src/pages/AdminDashboard.tsx:729",className:"text-xs text-gray-600 mb-1 block",children:"Full Name"}),s.jsx(Y,{"data-loc":"client/src/pages/AdminDashboard.tsx:730",placeholder:"Jane Smith",value:j,onChange:c=>N(c.target.value),className:"rounded-xl"})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:732",children:[s.jsx(as,{"data-loc":"client/src/pages/AdminDashboard.tsx:733",className:"text-xs text-gray-600 mb-1 block",children:"Role"}),s.jsxs(ds,{"data-loc":"client/src/pages/AdminDashboard.tsx:734",value:D,onValueChange:c=>k(c),children:[s.jsx(ls,{"data-loc":"client/src/pages/AdminDashboard.tsx:735",className:"rounded-xl",children:s.jsx(rs,{"data-loc":"client/src/pages/AdminDashboard.tsx:735"})}),s.jsxs(ns,{"data-loc":"client/src/pages/AdminDashboard.tsx:736",children:[s.jsx(_,{"data-loc":"client/src/pages/AdminDashboard.tsx:737",value:"staff",children:"Staff â view & add notes"}),s.jsx(_,{"data-loc":"client/src/pages/AdminDashboard.tsx:738",value:"admin",children:"Admin â full access"}),s.jsx(_,{"data-loc":"client/src/pages/AdminDashboard.tsx:739",value:"owner",children:"Owner â all permissions"})]})]})]})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:744",className:"flex gap-2 mt-4",children:[s.jsxs(w,{"data-loc":"client/src/pages/AdminDashboard.tsx:745",className:"bg-[#1B3A6B] text-white hover:bg-[#162f58] rounded-xl",onClick:()=>i.mutate({email:r,name:j,role:D}),disabled:!r||!j||i.isPending,children:[i.isPending?s.jsx(C,{"data-loc":"client/src/pages/AdminDashboard.tsx:748",className:"w-4 h-4 animate-spin mr-2"}):s.jsx(Ls,{"data-loc":"client/src/pages/AdminDashboard.tsx:748",className:"w-4 h-4 mr-2"}),"Add Member"]}),s.jsx(w,{"data-loc":"client/src/pages/AdminDashboard.tsx:751",variant:"outline",onClick:()=>u(!1),className:"rounded-xl",children:"Cancel"})]})]})]}),s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:758",className:"grid grid-cols-1 sm:grid-cols-3 gap-3",children:[{role:"Staff",color:"bg-gray-50 border border-gray-200",desc:"View all submissions, add public notes, update status."},{role:"Admin",color:"bg-[#1B3A6B]/5 border border-[#1B3A6B]/20",desc:"Full CRM access, team management, HCP sync, settings."},{role:"Owner",color:"bg-[#C8A84B]/10 border border-[#C8A84B]/30",desc:"All admin permissions + manage other admins."}].map(c=>s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:764",className:`${c.color} rounded-xl p-3`,children:[s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:765",className:"font-bold text-sm text-[#1B3A6B] mb-1",children:c.role}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:766",className:"text-xs text-gray-600",children:c.desc})]},c.role))}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:772",className:"space-y-3",children:[(!l||l.length===0)&&s.jsx(H,{"data-loc":"client/src/pages/AdminDashboard.tsx:774",className:"rounded-2xl",children:s.jsx(Q,{"data-loc":"client/src/pages/AdminDashboard.tsx:774",className:"p-12 text-center text-gray-400 text-sm",children:"No staff members yet. Add your first team member above."})}),(l||[]).map(c=>{const f=P===c.id,v=x(c),E=!!I[c.id],T=c.role==="owner"||c.role==="admin";return s.jsxs(H,{"data-loc":"client/src/pages/AdminDashboard.tsx:782",className:`rounded-2xl overflow-hidden transition-all ${c.isActive?"":"opacity-60"}`,children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:784",className:"flex items-center gap-3 px-4 py-3.5 cursor-pointer hover:bg-gray-50 transition-colors",onClick:()=>g(f?null:c.id),children:[s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:788",className:"w-10 h-10 bg-[#1B3A6B] rounded-full flex items-center justify-center text-white font-bold text-sm shrink-0",children:(c.name||c.email).charAt(0).toUpperCase()}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:791",className:"flex-1 min-w-0",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:792",className:"flex items-center gap-2 flex-wrap",children:[s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:793",className:"font-semibold text-sm text-gray-900",children:c.name||"â"}),s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:794",className:`px-2 py-0.5 rounded-full text-[10px] font-bold ${y[c.role]||"bg-gray-100 text-gray-700"}`,children:c.role}),c.isActive?s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:796",className:"text-green-600 text-[10px] font-semibold",children:"â Active"}):s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:797",className:"text-red-500 text-[10px] font-semibold",children:"â Inactive"}),E&&s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:798",className:"text-amber-600 text-[10px] font-semibold",children:"â Unsaved changes"})]}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:800",className:"text-gray-500 text-xs mt-0.5 truncate",children:c.email})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:802",className:"flex items-center gap-2 shrink-0",children:[c.isActive?s.jsxs(w,{"data-loc":"client/src/pages/AdminDashboard.tsx:804",size:"sm",variant:"outline",className:"text-red-600 border-red-200 hover:bg-red-50 h-7 text-xs hidden sm:flex",onClick:S=>{S.stopPropagation(),h.mutate({id:c.id})},disabled:h.isPending,children:[s.jsx(vs,{"data-loc":"client/src/pages/AdminDashboard.tsx:807",className:"w-3 h-3 mr-1"})," Deactivate"]}):s.jsxs(w,{"data-loc":"client/src/pages/AdminDashboard.tsx:810",size:"sm",variant:"outline",className:"text-green-700 border-green-200 hover:bg-green-50 h-7 text-xs hidden sm:flex",onClick:S=>{S.stopPropagation(),t.mutate({id:c.id,isActive:!0})},disabled:t.isPending,children:[s.jsx(gs,{"data-loc":"client/src/pages/AdminDashboard.tsx:813",className:"w-3 h-3 mr-1"})," Reactivate"]}),s.jsx(Ys,{"data-loc":"client/src/pages/AdminDashboard.tsx:816",className:`w-4 h-4 text-gray-400 transition-transform duration-200 ${f?"rotate-180":""}`})]})]}),f&&s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:822",className:"border-t border-gray-100 px-4 pb-4 pt-3 bg-gray-50/50",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:823",className:"flex items-center justify-between mb-3",children:[s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:824",className:"text-xs font-bold text-[#1B3A6B] uppercase tracking-wide",children:"Permissions"}),T&&s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:826",className:"text-xs text-gray-500 italic",children:"Owner/Admin have all permissions by default"})]}),s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:829",className:"grid grid-cols-1 sm:grid-cols-2 gap-2 mb-4",children:ps.map(S=>{const R=v[S.key]??!1,a=T;return s.jsxs("label",{"data-loc":"client/src/pages/AdminDashboard.tsx:834",className:`flex items-start gap-3 p-2.5 rounded-xl border transition-all cursor-pointer 22 ${R?"bg-[#1B3A6B]/5 border-[#1B3A6B]/20":"bg-white border-gray-200"} 23 ${a?"opacity-60 cursor-not-allowed":"hover:border-[#1B3A6B]/30"}`,children:[s.jsx("input",{"data-loc":"client/src/pages/AdminDashboard.tsx:840",type:"checkbox",checked:R,disabled:a,onChange:()=>!a&&F(c.id,S.key,R),className:"mt-0.5 w-4 h-4 accent-[#1B3A6B] shrink-0"}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:847",className:"min-w-0",children:[s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:848",className:"text-xs font-semibold text-gray-900 leading-tight",children:S.label}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:849",className:"text-[11px] text-gray-500 mt-0.5 leading-tight",children:S.desc})]})]},S.key)})}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:855",className:"flex items-center gap-2 flex-wrap",children:[E&&!T&&s.jsxs(w,{"data-loc":"client/src/pages/AdminDashboard.tsx:857",size:"sm",className:"bg-[#1B3A6B] text-white hover:bg-[#162f58] h-8 text-xs",onClick:()=>Z(c),disabled:t.isPending,children:[t.isPending?s.jsx(C,{"data-loc":"client/src/pages/AdminDashboard.tsx:860",className:"w-3 h-3 mr-1.5 animate-spin"}):s.jsx(gs,{"data-loc":"client/src/pages/AdminDashboard.tsx:860",className:"w-3 h-3 mr-1.5"}),"Save Permissions"]}),E&&!T&&s.jsx(w,{"data-loc":"client/src/pages/AdminDashboard.tsx:865",size:"sm",variant:"outline",className:"h-8 text-xs",onClick:()=>B(S=>{const R={...S};return delete R[c.id],R}),children:"Discard Changes"}),c.isActive?s.jsxs(w,{"data-loc":"client/src/pages/AdminDashboard.tsx:872",size:"sm",variant:"outline",className:"text-red-600 border-red-200 hover:bg-red-50 h-8 text-xs sm:hidden",onClick:()=>h.mutate({id:c.id}),children:[s.jsx(vs,{"data-loc":"client/src/pages/AdminDashboard.tsx:874",className:"w-3 h-3 mr-1"})," Deactivate"]}):s.jsxs(w,{"data-loc":"client/src/pages/AdminDashboard.tsx:877",size:"sm",variant:"outline",className:"text-green-700 border-green-200 hover:bg-green-50 h-8 text-xs sm:hidden",onClick:()=>t.mutate({id:c.id,isActive:!0}),children:[s.jsx(gs,{"data-loc":"client/src/pages/AdminDashboard.tsx:879",className:"w-3 h-3 mr-1"})," Reactivate"]}),s.jsxs("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:882",className:"text-[11px] text-gray-400 ml-auto",children:["Added ",new Date(c.createdAt).toLocaleDateString()]})]})]})]},c.id)})]}),s.jsx(H,{"data-loc":"client/src/pages/AdminDashboard.tsx:891",className:"border-blue-200 bg-blue-50 rounded-2xl",children:s.jsx(Q,{"data-loc":"client/src/pages/AdminDashboard.tsx:892",className:"pt-4",children:s.jsxs("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:893",className:"text-blue-800 text-sm",children:[s.jsx("strong",{"data-loc":"client/src/pages/AdminDashboard.tsx:894",children:"How access works:"})," When a staff member logs in with their email code, the system checks this table. If their email is listed here as active, they get elevated access. The owner (",s.jsx("strong",{"data-loc":"client/src/pages/AdminDashboard.tsx:895",children:"[email protected]"}),") always has full access."]})})})]})}function xe(){const{data:l}=b.admin.hcpHealth.useQuery(),[m,i]=n.useState("idle"),[t,h]=n.useState([]),[o,u]=n.useState(0),[r,d]=n.useState(new Set),[j,N]=n.useState("new"),[D,k]=n.useState(""),[P,g]=n.useState(null),I=b.hcp.previewCustomers.useMutation({onSuccess:a=>{h(a.candidates),u(a.total),d(new Set(a.candidates.filter(p=>p.status==="new").map(p=>p.hcpId))),i("preview")},onError:a=>A.error(a.message)}),B=b.hcp.createSelected.useMutation({onSuccess:a=>{g(a),i("done"),A.success(`Created ${a.created} new agent${a.created!==1?"s":""} from HCP`)},onError:a=>A.error(a.message)}),y=t.filter(a=>{if(j!=="all"&&a.status!==j)return!1;if(D){const p=D.toLowerCase();return a.name.toLowerCase().includes(p)||a.email.toLowerCase().includes(p)||a.phone.includes(p)}return!0}),x=t.filter(a=>a.status==="new").length,F=t.filter(a=>a.status==="matched").length,M=Array.from(r).filter(a=>t.find(p=>p.hcpId===a)?.status==="new").length;function Z(){d(a=>
23{const p=new Set(a);return y.filter(L=>L.status==="new").forEach(L=>p.add(L.hcpId)),p})}function c(){d(a=>{const p=new Set(a);return y.filter(L=>L.status==="new").forEach(L=>p.delete(L.hcpId)),p})}const{data:f,refetch:v}=b.cms.getAll.useQuery(),E=b.cms.setMany.useMutation({onSuccess:()=>{v(),A.success("Site settings saved")},onError:a=>A.error("Save failed: "+a.message)}),[T,S]=n.useState({});n.useEffect(()=>{f&&S(f)},[f]);const R=[{key:"site_phone",label:"Business Phone",placeholder:"(555) 555-5555"},{key:"site_email",label:"Business Email",placeholder:"[email protected]"},{key:"site_address",label:"Business Address",placeholder:"123 Main St, City, ST 12345"},{key:"site_hours",label:"Business Hours",placeholder:"MonâFri 8amâ6pm"},{key:"site_tagline",label:"Site Tagline",placeholder:"Fast, Accurate PICRAs"},{key:"head_code_inject",label:"<head> Code Inject",placeholder:"<!-- Google Analytics, etc. -->"},{key:"body_code_inject",label:"<body> Code Inject",placeholder:"<!-- Chat widget, etc. -->"}];return s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:993",className:"max-w-3xl space-y-5",children:[s.jsxs(H,{"data-loc":"client/src/pages/AdminDashboard.tsx:995",className:"rounded-2xl border-[#1B3A6B]/20",children:[s.jsx(K,{"data-loc":"client/src/pages/AdminDashboard.tsx:996",children:s.jsxs(q,{"data-loc":"client/src/pages/AdminDashboard.tsx:997",className:"text-[#1B3A6B] flex items-center gap-2",children:[s.jsx(de,{"data-loc":"client/src/pages/AdminDashboard.tsx:998",className:"w-5 h-5 text-[#C8A84B]"})," Site Content & Code Injection"]})}),s.jsxs(Q,{"data-loc":"client/src/pages/AdminDashboard.tsx:1001",className:"space-y-4",children:[s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1002",className:"grid grid-cols-1 gap-3",children:R.map(a=>s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1004",children:[s.jsx("label",{"data-loc":"client/src/pages/AdminDashboard.tsx:1005",className:"text-xs font-semibold text-gray-600 block mb-1",children:a.label}),a.key.includes("inject")?s.jsx("textarea",{"data-loc":"client/src/pages/AdminDashboard.tsx:1007",className:"w-full border border-gray-200 rounded-xl px-3 py-2 text-xs font-mono resize-none focus:outline-none focus:ring-2 focus:ring-[#1B3A6B]/30",rows:4,placeholder:a.placeholder,value:T[a.key]??"",onChange:p=>S(L=>({...L,[a.key]:p.target.value}))}):s.jsx(Y,{"data-loc":"client/src/pages/AdminDashboard.tsx:1015",placeholder:a.placeholder,value:T[a.key]??"",onChange:p=>S(L=>({...L,[a.key]:p.target.value})),className:"rounded-xl border-gray-200 text-sm"})]},a.key))}),s.jsx(w,{"data-loc":"client/src/pages/AdminDashboard.tsx:1025",className:"bg-[#1B3A6B] text-white hover:bg-[#162f58] rounded-xl w-full",onClick:()=>E.mutate({settings:Object.entries(T).map(([a,p])=>({key:a,value:p}))}),disabled:E.isPending,children:E.isPending?s.jsxs(s.Fragment,{children:[s.jsx(C,{"data-loc":"client/src/pages/AdminDashboard.tsx:1030",className:"w-4 h-4 animate-spin mr-2"}),"Savingâ¦"]}):"Save Site Settings"})]})]}),s.jsxs(H,{"data-loc":"client/src/pages/AdminDashboard.tsx:1036",className:`rounded-2xl ${l?.connected?"border-green-200":"border-red-200"}`,children:[s.jsx(K,{"data-loc":"client/src/pages/AdminDashboard.tsx:1037",children:s.jsxs(q,{"data-loc":"client/src/pages/AdminDashboard.tsx:1038",className:"text-[#1B3A6B] flex items-center gap-2",children:[s.jsx(se,{"data-loc":"client/src/pages/AdminDashboard.tsx:1039",className:"w-5 h-5 text-[#C8A84B]"})," Housecall Pro Integration"]})}),s.jsxs(Q,{"data-loc":"client/src/pages/AdminDashboard.tsx:1042",className:"space-y-4",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1043",className:"grid grid-cols-3 gap-3",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1044",className:"bg-gray-50 rounded-xl p-3 text-center",children:[s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1045",className:"text-2xl font-bold text-[#1B3A6B]",children:l?.totalSynced??"â"}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1046",className:"text-xs text-gray-500 mt-1",children:"Jobs Synced"})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1048",className:"bg-gray-50 rounded-xl p-3 text-center",children:[s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1049",className:"text-2xl font-bold text-red-600",children:l?.totalFailed??"â"}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1050",className:"text-xs text-gray-500 mt-1",children:"Sync Failures"})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1052",className:`rounded-xl p-3 text-center ${l?.apiKeyConfigured?"bg-green-50":"bg-red-50"}`,children:[s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1053",className:`text-sm font-bold ${l?.apiKeyConfigured?"text-green-700":"text-red-700"}`,children:l?.apiKeyConfigured?"â API Key Set":"â No API Key"}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1056",className:"text-xs text-gray-500 mt-1",children:"HCP_API_KEY"})]})]}),l?.recentEvents&&l.recentEvents.length>0&&s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1061",children:[s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1062",className:"text-xs font-semibold text-gray-500 uppercase tracking-wide mb-2",children:"Recent HCP Events"}),s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1063",className:"space-y-1",children:l.recentEvents.slice(0,8).map(a=>s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1065",className:"flex items-center justify-between text-xs py-1.5 border-b border-gray-100 last:border-0",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1066",className:"flex items-center gap-2",children:[s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:1067",className:a.syncStatus==="synced"||a.syncStatus==="updated"?"text-green-600":"text-red-600",children:a.syncStatus==="synced"||a.syncStatus==="updated"?"â":"â"}),s.jsxs("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:1070",className:"font-medium",children:["Sub #",a.submissionId]}),s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:1071",className:"text-gray-500",children:a.lastEvent||a.syncStatus}),a.hcpJobId&&s.jsxs("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:1072",className:"font-mono text-gray-400",children:["Job: ",a.hcpJobId]})]}),s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:1074",className:"text-gray-400",children:new Date(a.updatedAt||a.createdAt).toLocaleStr
23ing()})]},a.id))})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1081",className:"p-3 bg-[#1B3A6B]/5 rounded-xl border border-[#1B3A6B]/20 text-xs text-gray-600",children:[s.jsx("strong",{"data-loc":"client/src/pages/AdminDashboard.tsx:1082",children:"Webhook URL:"})," ",s.jsx("code",{"data-loc":"client/src/pages/AdminDashboard.tsx:1082",className:"font-mono",children:"/api/webhooks/hcp"})," â configure this in Housecall Pro under Settings â Integrations â Webhooks."]})]})]}),s.jsxs(H,{"data-loc":"client/src/pages/AdminDashboard.tsx:1088",className:"rounded-2xl border-[#1B3A6B]/20",children:[s.jsx(K,{"data-loc":"client/src/pages/AdminDashboard.tsx:1089",children:s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1090",className:"flex items-center justify-between",children:[s.jsxs(q,{"data-loc":"client/src/pages/AdminDashboard.tsx:1091",className:"text-[#1B3A6B] flex items-center gap-2",children:[s.jsx(us,{"data-loc":"client/src/pages/AdminDashboard.tsx:1092",className:"w-5 h-5 text-[#C8A84B]"})," Import HCP Customers as Agents"]}),m!=="idle"&&s.jsx("button",{"data-loc":"client/src/pages/AdminDashboard.tsx:1095",onClick:()=>{i("idle"),h([]),g(null),k(""),N("new")},className:"text-xs text-gray-400 hover:text-gray-600 underline",children:"Start over"})]})}),s.jsxs(Q,{"data-loc":"client/src/pages/AdminDashboard.tsx:1100",className:"space-y-4",children:[m==="idle"&&s.jsxs(s.Fragment,{children:[s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1105",className:"text-sm text-gray-600",children:"First, preview all HCP customers and see which ones are already matched to agents. Then choose exactly which new customers to create as agent records."}),s.jsx("button",{"data-loc":"client/src/pages/AdminDashboard.tsx:1109",onClick:()=>I.mutate(),disabled:I.isPending,className:"w-full py-2.5 rounded-xl bg-[#1B3A6B] text-white text-sm font-semibold hover:bg-[#1B3A6B]/90 disabled:opacity-50 disabled:cursor-not-allowed transition-all active:scale-[0.98]",children:I.isPending?"Fetching all HCP customersâ¦":"Step 1 â Preview HCP Customers"}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1116",className:"text-xs text-gray-400 text-center",children:"Read-only â no agents will be created until Step 2."})]}),m==="preview"&&s.jsxs(s.Fragment,{children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1124",className:"grid grid-cols-3 gap-3 text-center",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1125",className:"bg-gray-50 rounded-xl p-3",children:[s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1126",className:"text-xl font-bold text-[#1B3A6B]",children:o}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1127",className:"text-xs text-gray-500 mt-1",children:"Total in HCP"})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1129",className:"bg-green-50 rounded-xl p-3",children:[s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1130",className:"text-xl font-bold text-green-700",children:F}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1131",className:"text-xs text-gray-500 mt-1",children:"Already Matched"})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1133",className:"bg-blue-50 rounded-xl p-3",children:[s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1134",className:"text-xl font-bold text-blue-700",children:x}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1135",className:"text-xs text-gray-500 mt-1",children:"New (not in system)"})]})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1140",className:"flex flex-col sm:flex-row gap-2",children:[s.jsx("input",{"data-loc":"client/src/pages/AdminDashboard.tsx:1141",type:"text",placeholder:"Search name, email, phoneâ¦",value:D,onChange:a=>k(a.target.value),className:"flex-1 text-sm border border-gray-200 rounded-xl px-3 py-2 focus:outline-none focus:ring-2 focus:ring-[#1B3A6B]/30"}),s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1148",className:"flex gap-1",children:["all","new","matched","skipped"].map(a=>s.jsx("button",{"data-loc":"client/src/pages/AdminDashboard.tsx:1150",onClick:()=>N(a),className:`px-3 py-1.5 rounded-xl text-xs font-semibold transition-all ${j===a?"bg-[#1B3A6B] text-white":"bg-gray-100 text-gray-600 hover:bg-gray-200"}`,children:a.charAt(0).toUpperCase()+a.slice(1)},a))})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1161",className:"flex items-center justify-between text-xs text-gray-500",children:[s.jsxs("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:1162",children:[y.length," shown · ",M," selected for creation"]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1163",className:"flex gap-3",children:[s.jsx("button",{"data-loc":"client/src/pages/AdminDashboard.tsx:1164",onClick:Z,className:"text-[#1B3A6B] hover:underline font-medium",children:"Select all new"}),s.jsx("button",{"data-loc":"client/src/pages/AdminDashboard.tsx:1165",onClick:c,className:"text-gray-400 hover:underline",children:"Deselect all"})]})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1170",className:"max-h-80 overflow-y-auto rounded-xl border border-gray-200 divide-y divide-gray-100",children:[y.length===0&&s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1172",className:"py-8 text-center text-sm text-gray-400",children:"No customers match this filter."}),y.map(a=>s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1175",className:`flex items-center gap-3 px-3 py-2.5 text-xs transition-colors ${a.status==="new"&&r.has(a.hcpId)?"bg-blue-50/60":""}`,children:[a.status==="new"?s.jsx("input",{"data-loc":"client/src/pages/AdminDashboard.tsx:1179",type:"checkbox",checked:r.has(a.hcpId),onChange:p=>d(L=>{const W=new Set(L);return p.target.checked?W.add(a.hcpId):W.delete(a.hcpId),W}),className:"w-4 h-4 rounded accent-[#1B3A6B] cursor-pointer flex-shrink-0"}):s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1183",className:"w-4 h-4 flex-shrink-0"}),s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:1185",className:`w-16 text-center rounded-full px-2 py-0.5 font-semibold flex-shrink-0 ${a.status==="new"?"bg-blue-100 text-blue-700":a.status==="matched"?"bg-green-100 text-green-700":"bg-gray-100 text-gray-500"}`,children:a.status}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1190",className:"flex-1 min-w-0",children:[s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1191",className:"font-medium text-gray-800 truncate",children:a.name||"(no name)"}),s.jsxs("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1192",className:"text-gray-400 truncate",children:[a.email||"(no email)",a.phone?` · ${a.phone}`:""]}),a.status==="matched"&&a.matchedAgentName&&s.jsxs("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1194",className:"text-green-600 truncate",children:["â ",a.matchedAgentName]})]})]},a.hcpId))]}),s.jsx("button",{"data-loc":"client/src/pages/AdminDashboard.tsx:1202",onClick:()=>B.mutate({hcpIds:Array.from(r)}),disabled:B.isPending||M===0,className:"w-full py-2.5 rounded-xl bg-[#C8A84B] text-white text-sm font-semibold hover:bg-[#C8A84B]/90 disabled:opacity-50 disabled:cursor-not-allowed transition-all active:scale-[0.98]",children:B.isPending?`Creating ${M} agentsâ¦`:M===0?"Select at least one new customer":`Step 2 â Create ${M} Selected Agent${M!==1?"s":""}`})]}),m==="done"&&P&&s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1219",className:"space-y-4",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1220",className:"grid grid-cols-2 gap-3 text-center",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1221",className:"bg-green-50 rounded-xl p-4",children:[s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1222",className:"text-3xl font-bold text-green-700",children:P.created}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1223",className:"text-xs text-gray-500 mt-1",children:"New Agents Created"})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1225",className:"bg-gray-50 rounded-xl p-4",children:[s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1226",className:"text-3xl font-bold text-gray-500",children:P.skipped}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1227",className:"text-xs text-gray-500 mt-1",children:"Already Existed (skipped)"})]})]}),P.errors.length>0&&s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1231",className:"bg-red-50 border border-red-200 rounded-xl p-3",children:[s.jsxs("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1232",className:"text-xs font-semibold text-red-700 mb-1",children:["Errors (",P.errors.length,")"]}),s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1233",className:"max-h-24 overflow-y-auto space-y-1",children:P.errors.map((a,p)=>s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1234",className:"text-xs text-red-600",children:a},p))})]}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1238",className:"text-xs text-gray-400 text-center",children:"New agents are now visible in the Agents tab. Run again anytime to import more."})]})]})]}),s.jsxs(H,{"data-loc":"client/src/pages/AdminDashboard.tsx:1246",className:"rounded-2xl",children:[s.jsx(K,{"data-loc":"client/src/pages/AdminDashboard.tsx:1247",children:s.jsx(q,{"data-loc":"client/src/pages/AdminDashboard.tsx:1248",className:"text-[#1B3A6B]",children:"System Configuration"})}),s.jsxs(Q,{"data-loc":"client/src/pages/AdminDashboard.tsx:1250",className:"space-y-3 text-sm",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1251",className:"flex items-center justify-between py-2 border-b",children:[s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:1252",className:"text-gray-600",children:"Platform"}),s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:1253",className:"font-medium",children:"Fast PICRAs CRM v1.0"})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1255",className:"flex items-center justify-between py-2 border-b",children:[s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:1256",className:"text-gray-600",children:"Database"}),s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:1257",className:"font-medium text-green-600",children:"â Connected"})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1259",className:"flex items-center justify-between py-2 border-b",children:[s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:1260",className:"text-gray-600",children:"HCP Webhook"}),s.jsx("code",{"data-loc":"client/src/pages/AdminDashboard.tsx:1261",className:"text-xs font-mono bg-gray-100 px-2 py-1 rounded",children:"/api/webhooks/hcp"})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1263",className:"flex items-center justify-between py-2",children:[s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:1264",className:"text-gray-600",children:"Session Duration"}),s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:1265",className:"font-medium",children:"90 days"})]})]})]})]})}function me(){const{data:l,refetch:m,isLoading:i}=b.leads.list.useQuery({limit:50}),t=b.leads.markRead.useMutation({onSuccess:()=>m()}),h=b.leads.markAllRead.useMutation({onSuccess:()=>{m(),A.success("All leads marked as read")}}),o=l?.items??[],u=l?.unreadCount??0;return s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1284",className:"max-w-3xl space-y-4",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1285",className:"flex items-center justify-between",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1286",children:[s.jsx("h2",{"data-loc":"client/src/pages/AdminDashboard.tsx:1287",className:"font-bold text-[#1B3A6B] text-lg",children:"Contact Leads"}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1288",className:"text-gray-500 text-sm",children:"Submissions from the public contact form"})]}),u>0&&s.jsxs(w,{"data-loc":"client/src/pages/AdminDashboard.tsx:1291",size:"sm",variant:"outline",className:"rounded-xl text-xs",onClick:()=>h.mutate(),children:["Mark all read (",u,")"]})]}),i?s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1297",className:"py-12 text-center",children:s.jsx(C,{"data-loc":"client/src/pages/AdminDashboard.tsx:1297",className:"animate-spin mx-auto text-[#1B3A6B]"})}):o.length===0?s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1299",className:"py-16 text-center text-gray-400",children:[s.jsx(J,{"data-loc":"client/src/pages/AdminDashboard.tsx:1300",className:"w-10 h-10 mx-auto mb-3 opacity-30"}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1301",className:"text-sm",children:"No contact leads yet"})]}):s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1304",className:"space-y-3",children:o.map(r=>s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1306",className:`bg-white rounded-2xl border p-4 cursor-pointer hover:shadow-sm transition-shadow ${r.isRead?"border-gray-100":"border-[#1B3A6B]/30 bg-blue-50/30"}`,onClick:()=>{r.isRead||t.mutate({id:r.id})},children:s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1313",className:"flex items-start justify-between gap-3",children:s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1314",className:"flex-1 min-w-0",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1315",className:"flex items-center gap-2 mb-1",children:[!r.isRead&&s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:1316",className:"w-2 h-2 rounded-full bg-[#1B3A6B] shrink-0"}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1317",className:"font-semibold text-gray-900 text-sm truncate",children:r.name}),s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:1318",className:"text-gray-400 text-xs shrink-0",children:new Date(r.createdAt).toLocaleDateString()})]}),s.jsxs("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1320",className:"text-xs text-gray-500 mb-1",children:[r.email,r.phone?` · ${r.phone}`:""]}),r.subject&&s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1321",className:"text-xs font-medium text-[#1B3A6B] mb-1",children:r.subject}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1322",className:"text-sm text-gray-700 line-clamp-3",children:r.message})]})})},r.id))})]})}function he(){const[l,m]=n.useState(""),[i,t]=n.useState("");n.useEffect(()=>{const d=setTimeout(()=>t(l),300);return()=>clearTimeout(d)},[l]);const{data:h,isLoading:o}=b.auditLog.list.useQuery({actorEmail:i||void 0,limit:100}),u=h?.items??[],r={status_change:"ð",note_added:"ð",hcp_push:"â¬ï¸",hcp_pull:"â¬ï¸",hcp_webhook:"ð",file_upload:"ð",ai_summary:"ð¤",assignment_change:"ð¤",created:"â¨"};return s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1354",className:"max-w-3xl space-y-4",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1355",children:[s.jsx("h2",{"data-loc":"client/src/pages/AdminDashboard.tsx:1356",className:"font-bold text-[#1B3A6B] text-lg",children:"Audit Log"}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1357",className:"text-gray-500 text-sm",children:"All staff actions across all submissions"})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1359",className:"relative",children:[s.jsx(js,{"data-loc":"client/src/pages/AdminDashboard.tsx:1360",className:"absolute left-3 top-1/2 -translate-y-1/2 w-4 h-4 text-gray-400"}),s.jsx(Y,{"data-loc":"client/src/pages/AdminDashboard.tsx:1361",placeholder:"Filter by staff email...",className:"pl-9 rounded-xl border-gray-200",value:l,onCh
23ange:d=>m(d.target.value)})]}),o?s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1369",className:"py-12 text-center",children:s.jsx(C,{"data-loc":"client/src/pages/AdminDashboard.tsx:1369",className:"animate-spin mx-auto text-[#1B3A6B]"})}):u.length===0?s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1371",className:"py-16 text-center text-gray-400",children:[s.jsx(Es,{"data-loc":"client/src/pages/AdminDashboard.tsx:1372",className:"w-10 h-10 mx-auto mb-3 opacity-30"}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1373",className:"text-sm",children:"No activity recorded yet"})]}):s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1376",className:"bg-white rounded-2xl border border-gray-100 overflow-hidden",children:s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1377",className:"divide-y divide-gray-50",children:u.map(d=>s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1379",className:"px-4 py-3 flex items-start gap-3",children:[s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:1380",className:"text-base shrink-0 mt-0.5",children:r[d.actionType]??"â¢"}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1381",className:"flex-1 min-w-0",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1382",className:"flex items-center justify-between gap-2 flex-wrap",children:[s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1383",className:"text-sm font-medium text-gray-800",children:d.detail||d.actionType.replace(/_/g," ")}),s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:1384",className:"text-xs text-gray-400 shrink-0",children:new Date(d.createdAt).toLocaleString()})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1386",className:"flex items-center gap-2 mt-0.5 flex-wrap",children:[s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:1387",className:"text-xs text-gray-500",children:d.actorName||d.actorEmail||"System"}),s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:1388",className:"text-gray-300",children:"·"}),s.jsxs("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:1389",className:"text-xs font-mono text-[#1B3A6B]",children:["Sub #",d.submissionId]})]})]})]},d.id))})})]})}function ge({agentId:l,current:m}){const[i,t]=n.useState(m),h=b.agentProfile.update.useMutation({onSuccess:()=>A.success("Membership updated"),onError:o=>A.error("Update failed: "+o.message)});return s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1409",className:"flex items-center gap-1.5 mt-1",onClick:o=>o.stopPropagation(),children:[s.jsxs(ds,{"data-loc":"client/src/pages/AdminDashboard.tsx:1410",value:i,onValueChange:o=>{t(o),h.mutate({agentId:l,membershipPlan:o})},children:[s.jsx(ls,{"data-loc":"client/src/pages/AdminDashboard.tsx:1417",className:"h-6 text-[10px] rounded-full border-gray-200 px-2 w-auto gap-1",children:s.jsx(rs,{"data-loc":"client/src/pages/AdminDashboard.tsx:1418"})}),s.jsxs(ns,{"data-loc":"client/src/pages/AdminDashboard.tsx:1420",children:[s.jsx(_,{"data-loc":"client/src/pages/AdminDashboard.tsx:1421",value:"basic",children:"Basic"}),s.jsx(_,{"data-loc":"client/src/pages/AdminDashboard.tsx:1422",value:"premium",children:"Premium"})]})]}),h.isPending&&s.jsx(C,{"data-loc":"client/src/pages/AdminDashboard.tsx:1425",className:"w-3 h-3 animate-spin text-gray-400"})]})}function Ve(){const{agentUser:l,loading:m,isAuthenticated:i,logout:t}=Us(),[h,o]=Ps(),u=zs(),r=()=>h.includes("/agents")?"agents":h.includes("/submissions")?"submissions":h.includes("/customers")?"customers":h.includes("/team")?"team":h.includes("/settings")?"settings":h.includes("/leads")?"leads":h.includes("/audit")?"audit":"overview",[d,j]=n.useState(r),[N,D]=n.useState(""),[k,P]=n.useState(""),[g,I]=n.useState(""),[B,y]=n.useState(null),[x,F]=n.useState(!1),[M,Z]=n.useState(""),[c,f]=n.useState(""),[v,E]=n.useState("newest"),[T,S]=n.useState(0),[R,a]=n.useState([]),[p,L]=n.useState(0),W=30;n.useEffect(()=>{const e=setTimeout(()=>P(N),300);return()=>clearTimeout(e)},[N]),n.useEffect(()=>{const e=setTimeout(()=>f(M),300);return()=>clearTimeout(e)},[M]);const{data:ss}=b.crm.stats.useQuery(),{data:es,refetch:Ms}=b.submissions.list.useQuery({search:k||void 0,status:g||void 0,limit:100,offset:0}),{data:U,isFetching:os}=b.crm.agents.useQuery({search:c||void 0,sortBy:v,limit:W,offset:T}),{data:G}=b.crm.customers.useQuery(),{data:Ds}=b.enrichment.pendingReviewAgentIds.useQuery(),Rs=n.useMemo(()=>new Set(Ds??[]),[Ds]);n.useEffect(()=>{U&&(a(T===0?U.items:e=>[...e,...U.items]),L(U.total))},[U]),n.useEffect(()=>{S(0),a([])},[c,v]);const xs=b.admin.importCsv.useMutation({onSuccess:e=>A.success(`Imported ${e.imported} records`),onError:e=>A.error(e.message)});if(n.useEffect(()=>{!m&&!i&&o("/login"),!m&&i&&!l?.isAdmin&&o("/crm")}
23,[m,i,l]),m)return s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1519",className:"min-h-screen bg-[#1B3A6B] flex items-center justify-center",children:s.jsx(C,{"data-loc":"client/src/pages/AdminDashboard.tsx:1520",className:"w-8 h-8 animate-spin text-[#C8A84B]"})});const z=es?.items||[],fs=[{id:"overview",icon:qs,label:"Overview"},{id:"submissions",icon:bs,label:"Submissions"},{id:"agents",icon:us,label:"Agents"},{id:"customers",icon:Is,label:"Customers"},{id:"leads",icon:J,label:"Leads"},{id:"audit",icon:Es,label:"Audit Log"},{id:"team",icon:Xs,label:"Team"},{id:"settings",icon:Vs,label:"Settings"},{id:"email_log",icon:J,label:"Email Log"},{id:"chat_analytics",icon:X,label:"Chat Analytics"},{id:"enrichment",icon:cs,label:"Agent Enrichment"}],Ts=[{label:"Total Submissions",value:ss?.totalSubmissions??"â",icon:bs,color:"bg-blue-50 text-blue-600",num:"text-[#1B3A6B]"},{label:"Active Agents",value:ss?.totalAgents??"â",icon:us,color:"bg-amber-50 text-amber-600",num:"text-[#C8A84B]"},{label:"New (Unreviewed)",value:ss?.pendingCount??"â",icon:Hs,color:"bg-orange-50 text-orange-600",num:"text-orange-500"},{label:"Completed",value:ss?.completedCount??"â",icon:Ks,color:"bg-green-50 text-green-600",num:"text-green-600"}];return s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1549",className:"min-h-screen bg-gray-50 flex",children:[s.jsxs("aside",{"data-loc":"client/src/pages/AdminDashboard.tsx:1552",className:"hidden md:flex w-64 bg-[#1B3A6B] text-white flex-col fixed h-full z-30",children:[s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1554",className:"px-5 py-5 border-b border-white/10",children:s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1555",className:"flex items-center gap-3",children:[s.jsx("img",{"data-loc":"client/src/pages/AdminDashboard.tsx:1556",src:Bs,alt:"Fast PICRAs",className:"h-9 w-9 object-contain"}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1557",children:[s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1558",className:"font-bold text-sm leading-none",children:"Fast PICRAs"}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1559",className:"text-[#C8A84B] text-xs font-semibold mt-0.5",children:"Admin Panel"})]})]})}),s.jsx("nav",{"data-loc":"client/src/pages/AdminDashboard.tsx:1565",className:"flex-1 px-3 py-4 space-y-0.5",children:fs.map(e=>s.jsxs("button",{"data-loc":"client/src/pages/AdminDashboard.tsx:1567",onClick:()=>j(e.id),className:`w-full flex items-center gap-3 px-3 py-2.5 rounded-xl text-sm font-medium transition-all ${d===e.id?"bg-[#C8A84B] text-[#1B3A6B] shadow-sm":"text-white/70 hover:bg-white/10 hover:text-white"}`,children:[s.jsx(e.icon,{"data-loc":"client/src/pages/AdminDashboard.tsx:1576",className:"w-4 h-4 shrink-0"})," ",e.label]},e.id))}),s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1582",className:"px-3 pb-2",children:s.jsxs("button",{"data-loc":"client/src/pages/AdminDashboard.tsx:1583",onClick:()=>o("/admin/ai-agent"),className:"w-full flex items-center gap-3 px-3 py-2.5 rounded-xl text-sm font-medium transition-all bg-violet-600/20 text-violet-200 hover:bg-violet-600/30 hover:text-white border border-violet-500/30",children:[s.jsx(X,{"data-loc":"client/src/pages/AdminDashboard.tsx:1587",className:"w-4 h-4 shrink-0 text-violet-300"}),s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:1588",children:"AI Agent Console"}),s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:1589",className:"ml-auto text-xs bg-violet-500/30 text-violet-200 px-1.5 py-0.5 rounded-full",children:"Live"})]})}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1594",className:"px-4 py-4 border-t border-white/10 space-y-1",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1595",className:"flex items-center gap-3 px-2 py-2 mb-1",children:[s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1596",className:"w-8 h-8 bg-[#C8A84B] rounded-full flex items-center justify-center text-[#1B3A6B] font-bold text-sm shrink-0",children:l?.name?.charAt(0)||"A"}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1599",className:"min-w-0",children:[s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1600",className:"text-sm font-semibold truncate",children:l?.name||"Admin"}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1601",className:"text-xs text-[#C8A84B] capitalize",children:l?.staffRole||"Administrator"})]})]}),s.jsxs("button",{"data-loc":"client/src/pages/AdminDashboard.tsx:1604",onClick:()=>o("/crm"),className:"w-full flex items-center gap-2 text-white/70 hover:text-white hover:bg-white/10 px-3 py-2 rounded-xl text-sm transition-all",children:[s.jsx(As,{"data-loc":"client/src/pages/AdminDashboard.tsx:1608",className:"w-4 h-4"})," Agent View"]}),s.jsxs("button",{"data-loc":"client/src/pages/AdminDashboard.tsx:1610",onClick:()=>t(),className:"w-full flex items-center gap-2 text-white/70 hover:text-white hover:bg-white/10 px-3 py-2 rounded-xl text-sm transition-all",children:[s.jsx(ys,{"data-loc":"client/src/pages/AdminDashboard.tsx:1614",className:"w-4 h-4"})," Sign Out"]})]})]}),s.jsxs("main",{"data-loc":"client/src/pages/AdminDashboard.tsx:1620",className:"md:ml-64 flex-1 min-h-screen flex flex-col",children:[s.jsxs("header",{"data-loc":"client/src/pages/AdminDashboard.tsx:1623",className:"md:hidden bg-[#1B3A6B] text-white px-4 py-3 flex items-center justify-between sticky top-0 z-40 shadow-lg",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1624",className:"flex items-center gap-2.5",children:[s.jsx("img",{"data-loc":"client/src/pages/AdminDashboard.tsx:1625",src:Bs,alt:"Fast PICRAs",className:"h-7 w-7 object-contain"}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1626",children:[s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:1627",className:"font-bold text-sm leading-none block",children:"Fast PICRAs"}),s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:1628",className:"text-[#C8A84B] text-xs font-medium",children:"Admin Panel"})]})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1631",className:"flex items-center gap-2",children:[s.jsx("button",{"data-loc":"client/src/pages/AdminDashboard.tsx:1632",onClick:()=>o("/crm"),className:"text-white/70 text-xs px-2.5 py-1.5 rounded-lg border border-white/20 hover:bg-white/10 active:scale-95 transition-all",children:"CRM View"}),s.jsx("button",{"data-loc":"client/src/pages/AdminDashboard.tsx:1638",onClick:()=>t(),className:"w-8 h-8 rounded-full bg-white/10 flex items-center justify-center hover:bg-white/20 active:scale-95 transition-all",children:s.jsx(ys,{"data-loc":"client/src/pages/AdminDashboard.tsx:1642",className:"w-4 h-4"})})]})]}),s.jsxs("header",{"data-loc":"client/src/pages/AdminDashboard.tsx:1648",className:"hidden md:flex bg-white border-b px-8 py-4 items-center justify-between sticky top-0 z-10",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1649",children:[s.jsx("h1",{"data-loc":"client/src/pages/AdminDashboard.tsx:1650",className:"text-xl font-bold text-[#1B3A6B] capitalize",children:d}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1651",className:"text-gray-500 text-sm",children:"Fast PICRAs Admin Dashboard"})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1653",className:"flex items-center gap-2",children:[s.jsxs(w,{"data-loc":"client/src/pages/AdminDashboard.tsx:1654",variant:"outline",size:"sm",onClick:()=>o("/admin/ai-agent"),className:"gap-1.5 border-violet-200 text-violet-700 hover:bg-violet-50",children:[s.jsx(X,{"data-loc":"client/src/pages/AdminDashboard.tsx:1655",className:"w-4 h-4"}),s.jsxs("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:1656",className:"relative flex h-2 w-2",children:[s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:1657",className:"animate-ping absolute inline-flex h-full w-full rounded-full bg-violet-400 opacity-75"}),s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:1658",className:"relative inline-flex rounded-full h-2 w-2 bg-violet-500"})]}),"AI Console"]}),s.jsxs(w,{"data-loc":"client/src/pages/AdminDashboard.tsx:1662",variant:"outline",size:"sm",onClick:()=>F(!x),children:[s.jsx(X,{"data-loc":"client/src/pages/AdminDashboard.tsx:1663",className:"w-4 h-4 mr-2"})," AI Assistant"]}),s.jsx(w,{"data-loc":"client/src/pages/AdminDashboard.tsx:1665",size:"sm",className:"bg-[#C8A84B] text-[#1B3A6B] hover:bg-[#b8943b] font-semibold",onClick:()=>o("/submit"),children:"+ New PICRA"})]})]}),s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1673",className:"md:hidden bg-white border-b sticky top-[60
23px] z-30 shadow-sm",children:s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1674",className:"flex overflow-x-auto scrollbar-none px-2 py-1 gap-1",children:fs.map(e=>s.jsxs("button",{"data-loc":"client/src/pages/AdminDashboard.tsx:1676",onClick:()=>j(e.id),className:`flex items-center gap-1.5 px-3 py-2 rounded-xl text-xs font-semibold whitespace-nowrap shrink-0 transition-all active:scale-95 ${d===e.id?"bg-[#1B3A6B] text-white shadow-sm":"text-gray-500 hover:bg-gray-100"}`,children:[s.jsx(e.icon,{"data-loc":"client/src/pages/AdminDashboard.tsx:1685",className:"w-3.5 h-3.5"}),e.label]},e.id))})}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1693",className:"flex-1 p-4 md:p-8 pb-6",children:[d==="overview"&&s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1697",className:"space-y-5",children:[s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1699",className:"grid grid-cols-2 md:grid-cols-4 gap-3",children:Ts.map(e=>s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1701",className:"bg-white rounded-2xl p-4 shadow-sm border border-gray-100",children:[s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1702",className:`w-9 h-9 rounded-xl flex items-center justify-center mb-3 ${e.color}`,children:s.jsx(e.icon,{"data-loc":"client/src/pages/AdminDashboard.tsx:1703",className:"w-4 h-4"})}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1705",className:`text-2xl md:text-3xl font-bold ${e.num}`,children:e.value}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1706",className:"text-gray-500 text-xs font-medium mt-1 leading-tight",children:e.label})]},e.label))}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1712",className:"bg-white rounded-2xl shadow-sm border border-gray-100 overflow-hidden",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1713",className:"px-4 md:px-5 py-4 border-b border-gray-100 flex items-center justify-between",children:[s.jsx("h2",{"data-loc":"client/src/pages/AdminDashboard.tsx:1714",className:"font-bold text-[#1B3A6B]",children:"Recent Submissions"}),s.jsx("button",{"data-loc":"client/src/pages/AdminDashboard.tsx:1715",onClick:()=>j("submissions"),className:"text-sm text-[#1B3A6B] font-medium hover:underline",children:"View All"})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1717",className:"divide-y divide-gray-50",children:[z.slice(0,8).map(e=>{const V=O[e.status]||O.new;return s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1721",className:`flex items-center gap-3 px-4 md:px-5 py-3.5 cursor-pointer hover:bg-gray-50 active:bg-gray-100 transition-colors border-l-4 ${V.border}`,onClick:()=>y(e.id),children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1726",className:"flex-1 min-w-0",children:[s.jsxs("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1727",className:"font-semibold text-sm text-gray-900 truncate",children:[e.streetAddress,e.town?`, ${e.town}`:""]}),s.jsxs("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1728",className:"text-gray-500 text-xs mt-0.5",children:[e.agentName," · ",e.homeOwnerName]})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1730",className:"flex items-center gap-2 shrink-0",children:[s.jsx(ts,{"data-loc":"client/src/pages/AdminDashboard.tsx:1731",status:e.status}),s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:1732",className:"text-gray-400 text-xs hidden sm:block",children:new Date(e.submittedAt||e.createdAt).toLocaleDateString()}),s.jsx(As,{"data-loc":"client/src/pages/AdminDashboard.tsx:1733",className:"w-4 h-4 text-gray-300"})]})]},e.id)}),z.length===0&&s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1739",className:"py-12 text-center text-gray-400 text-sm",children:"No submissions yet"})]})]}),s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1745",className:"bg-white rounded-2xl shadow-sm border border-[#C8A84B]/30 p-4 md:p-5",children:s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1746",className:"flex items-center justify-between",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1747",children:[s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1748",className:"font-semibold text-sm text-gray-900",children:"Import Historical CSV Data"}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1749",className:"text-gray-500 text-xs mt-0.5",children:"Import the 345-record historical submissions CSV into the CRM"})]}),s.jsxs(w,{"data-loc":"client/src/pages/AdminDashboard.tsx:1751",size:"sm",variant:"outline",onClick:()=>xs.mutate(),disabled:xs.isPending,className:"rounded-xl shrink-0",children:[xs.isPending?s.jsx(C,{"data-loc":"client/src/pages/AdminDashboard.tsx:1752",className:"w-4 h-4 animate-spin mr-2"}):s.jsx(ws,{"data-loc":"client/src/pages/AdminDashboard.tsx:1752",className:"w-4 h-4 mr-2"}),"Import CSV"]})]})})]}),d==="submissions"&&s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1762",className:"space-y-4",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1764",className:"flex flex-col sm:flex-row gap-2",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1765",className:"relative flex-1",children:[s.jsx(js,{"data-loc":"client/src/pages/AdminDashboard.tsx:1766",className:"absolute left-3 top-1/2 -translate-y-1/2 w-4 h-4 text-gray-400"}),s.jsx(Y,{"data-loc":"client/src/pages/AdminDashboard.tsx:1767",placeholder:"Search address, agent, homeowner...",className:"pl-9 text-base rounded-xl border-gray-200",value:N,onChange:e=>D(e.target.value)})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1774",className:"flex gap-2",children:[s.jsxs(ds,{"data-loc":"client/src/pages/AdminDashboard.tsx:1775",value:g||"all",onValueChange:e=>I(e==="all"?"":e),children:[s.jsx(ls,{"data-loc":"client/src/pages/AdminDashboard.tsx:1776",className:"flex-1 sm:w-44 rounded-xl border-gray-200",children:s.jsx(rs,{"data-loc":"client/src/pages/AdminDashboard.tsx:1777",placeholder:"All Statuses"})}),s.jsxs(ns,{"data-loc":"client/src/pages/AdminDashboard.tsx:1779",children:[s.jsx(_,{"data-loc":"client/src/pages/AdminDashboard.tsx:1780",value:"all",children:"All Statuses"}
23),Object.entries(O).map(([e,V])=>s.jsx(_,{"data-loc":"client/src/pages/AdminDashboard.tsx:1782",value:e,children:V.label},e))]})]}),s.jsx(w,{"data-loc":"client/src/pages/AdminDashboard.tsx:1786",variant:"outline",size:"sm",className:"shrink-0 rounded-xl",onClick:()=>Ms(),children:s.jsx(C,{"data-loc":"client/src/pages/AdminDashboard.tsx:1787",className:"w-4 h-4"})}),s.jsxs(w,{"data-loc":"client/src/pages/AdminDashboard.tsx:1789",variant:"outline",size:"sm",className:"shrink-0 rounded-xl",onClick:()=>{const e=es?.items||[];if(!e.length){A.error("No submissions to export");return}const V=["ID","Type","Status","Agent","Homeowner","Address","City","State","ZIP","Created"],$s=e.map($=>[$.id,$.submissionType,$.status,$.agentName||"",$.homeOwnerName||"",$.streetAddress||"",$.town||"",$.state||"",$.zipCode||"",$.createdAt?new Date($.createdAt).toLocaleDateString():""].map(Os=>`"${String(Os).replace(/"/g,'""')}"`).join(",")),_s=[V.join(","),...$s].join(` 24`),Fs=new Blob([_s],{type:"text/csv"}),Ns=URL.createObjectURL(Fs),ms=document.createElement("a");ms.href=Ns,ms.download=`picras-export-${new Date().toISOString().slice(0,10)}.csv`,ms.click(),URL.revokeObjectURL(Ns),A.success(`Exported ${e.length} submissions`)},children:[s.jsx(ws,{"data-loc":"client/src/pages/AdminDashboard.tsx:1807",className:"w-4 h-4 mr-1"})," CSV"]})]})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1812",className:"bg-white rounded-2xl shadow-sm border border-gray-100 overflow-hidden",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1814",className:"md:hidden divide-y divide-gray-100",children:[z.map(e=>{const V=O[e.status]||O.new;return s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1818",className:`px-4 py-4 flex items-start gap-3 cursor-pointer active:bg-gray-50 border-l-4 ${V.border}`,onClick:()=>y(e.id),children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1823",className:"flex-1 min-w-0",children:[s.jsxs("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1824",className:"font-semibold text-sm text-gray-900 truncate",children:[e.streetAddress,e.town?`, ${e.town}`:""]}),s.jsxs("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1825",className:"text-gray-500 text-xs mt-0.5",children:[e.agentName," · ",e.homeOwnerName]}),e.closingDate&&s.jsxs("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1826",className:"text-red-500 text-xs mt-0.5 font-medium",children:["Closes ",e.closingDate]})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1828",className:"shrink-0 flex flex-col items-end gap-1.5",children:[s.jsx(ts,{"data-loc":"client/src/pages/AdminDashboard.tsx:1829",status:e.status}),s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:1830",className:"text-xs text-gray-400",children:new Date(e.submittedAt||e.createdAt).toLocaleDateString()})]})]},e.id)}),z.length===0&&s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1836",className:"p-12 text-center text-gray-400 text-sm",children:"No submissions found"})]}),s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1840",className:"hidden md:block overflow-x-auto",children:s.jsxs("table",{"data-loc":"client/src/pages/AdminDashboard.tsx:1841",className:"w-full text-sm",children:[s.jsx("thead",{"data-loc":"client/src/pages/AdminDashboard.tsx:1842",children:s.jsxs("tr",{"data-loc":"client/src/pages/AdminDashboard.tsx:1843",className:"border-b bg-gray-50",children:[s.jsx("th",{"data-loc":"client/src/pages/AdminDashboard.tsx:1844",className:"text-left p-3 text-xs font-semibold text-gray-500 uppercase tracking-wide",children:"#"}),s.jsx("th",{"data-loc":"client/src/pages/AdminDashboard.tsx:1845",className:"text-left p-3 text-xs font-semibold text-gray-500 uppercase tracking-wide",children:"Property"}),s.jsx("th",{"data-loc":"client/src/pages/AdminDashboard.tsx:1846",className:"text-left p-3 text-xs font-semibold text-gray-500 uppercase tracking-wide",children:"Agent"}),s.jsx("th",{"data-loc":"client/src/pages/AdminDashboard.tsx:1847",className:"text-left p-3 text-xs font-semibold text-gray-500 uppercase tracking-wide",children:"Owner"}),s.jsx("th",{"data-loc":"client/src/pages/AdminDashboard.tsx:1848",className:"text-left p-3 text-xs font-semibold text-gray-500 uppercase tracking-wide",children:"Type"}),s.jsx("th",{"data-loc":"client/src/pages/AdminDashboard.tsx:1849",className:"text-left p-3 text-xs font-semibold text-gray-500 uppercase tracking-wide",children:"Closing"}),s.jsx("th",{"data-loc":"client/src/pages/AdminDashboard.tsx:1850",className:"text-left p-3 text-xs font-semibold text-gray-500 uppercase tracking-wide",children:"Status"}),s.jsx("th",{"data-loc":"client/src/pages/AdminDashboard.tsx:1851",className:"text-left p-3 text-xs font-semibold text-gray-500 uppercase tracking-wide",children:"Submitted"})]})}),s.jsxs("tbody",{"data-loc":"client/src/pages/AdminDashboard.tsx:1854",children:[z.map(e=>s.jsxs("tr",{"data-loc":"client/src/pages/AdminDashboard.tsx:1856",className:"border-b hover:bg-blue-50 cursor-pointer transition-colors",onClick:()=>y(e.id),children:[s.jsxs("td",{"data-loc":"client/src/pages/AdminDashboard.tsx:1858",className:"p-3 font-mono text-[#1B3A6B] font-bold",children:["#",e.id]}),s.jsxs("td",{"data-loc":"client/src/pages/AdminDashboard.tsx:1859",className:"p-3",children:[s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1860",className:"font-medium",children:e.streetAddress}),s.jsxs("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1861",className:"text-gray-400 text-xs",children:[e.town,e.state?`, ${e.state}`:""]})]}),s.jsxs("td",{"data-loc":"client/src/pages/AdminDashboard.tsx:1863",className:"p-3",children:[s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1864",children:e.agentName}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1865",className:"text-gray-400 text-xs",children:e.agentEmail})]}),s.jsx("td",{"data-loc":"client/src/pages/AdminDashboard.tsx:1867",className:"p-3",children:e.homeOwnerName}),s.jsx("td",{"data-loc":"client/src/pages/AdminDashboard.tsx:1868",className:"p-3",children:s.jsx(hs,{"data-loc":"client/src/pages/AdminDashboard.tsx:1869",variant:"outline",className:"text-xs",children:e.submissionType})}),s.jsx("td",{"data-loc":"client/src/pages/AdminDashboard.tsx:1871",className:"p-3 text-gray-600",children:e.closingDate||"â"}),s.jsx("td",{"data-loc":"client/src/pages/AdminDashboard.tsx:1872",className:"p-3",children:s.jsx(ts,{"data-loc":"client/src/pages/AdminDashboard.tsx:1872",status:e.status})}),s.jsx("td",{"data-loc":"client/src/pages/AdminDashboard.tsx:1873",className:"p-3 text-gray-400 text-xs",children:new Date(e.submittedAt||e.createdAt).toLocaleDateString()})]},e.id)),z.length===0&&s.jsx("tr",{"data-loc":"client/src/pages/AdminDashboard.tsx:1879",children:s.jsx("td",{"data-loc":"client/src/pages/AdminDashboard.tsx:1880",colSpan:8,className:"p-12 text-center text-gray-400",children:"No submissions foun
24d"})})]})]})})]}),es?.total!==void 0&&s.jsxs("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1888",className:"text-xs text-gray-400",children:["Showing ",z.length," of ",es.total," submissions"]})]}),d==="agents"&&s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1895",className:"space-y-4",children:[s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1897",className:"flex items-center justify-between",children:s.jsxs("h2",{"data-loc":"client/src/pages/AdminDashboard.tsx:1898",className:"text-lg md:text-xl font-bold text-[#1B3A6B]",children:["All Agents ",p>0&&s.jsxs("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:1899",className:"text-gray-400 font-normal text-sm ml-1",children:["(",p,")"]})]})}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1904",className:"flex flex-col sm:flex-row gap-2",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1905",className:"relative flex-1",children:[s.jsx(js,{"data-loc":"client/src/pages/AdminDashboard.tsx:1906",className:"absolute left-3 top-1/2 -translate-y-1/2 w-4 h-4 text-gray-400"}),s.jsx("input",{"data-loc":"client/src/pages/AdminDashboard.tsx:1907",type:"text",placeholder:"Search agents by name, email, company...",value:M,onChange:e=>Z(e.target.value),className:"w-full pl-9 pr-4 py-2.5 rounded-xl border border-gray-200 bg-white text-sm focus:outline-none focus:ring-2 focus:ring-[#1B3A6B]/20 focus:border-[#1B3A6B]"})]}),s.jsxs(ds,{"data-loc":"client/src/pages/AdminDashboard.tsx:1915",value:v,onValueChange:e=>E(e),children:[s.jsx(ls,{"data-loc":"client/src/pages/AdminDashboard.tsx:1916",className:"w-full sm:w-44 rounded-xl border-gray-200 text-sm",children:s.jsx(rs,{"data-loc":"client/src/pages/AdminDashboard.tsx:1917",placeholder:"Sort by"})}),s.jsxs(ns,{"data-loc":"client/src/pages/AdminDashboard.tsx:1919",children:[s.jsx(_,{"data-loc":"client/src/pages/AdminDashboard.tsx:1920",value:"newest",children:"Newest First"}),s.jsx(_,{"data-loc":"client/src/pages/AdminDashboard.tsx:1921",value:"most_active",children:"Most Active"}),s.jsx(_,{"data-loc":"client/src/pages/AdminDashboard.tsx:1922",value:"name_asc",children:"Name A â Z"}),s.jsx(_,{"data-loc":"client/src/pages/AdminDashboard.tsx:1923",value:"name_desc",children:"Name Z â A"})]})]})]}),s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1928",className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-3",children:R.map(e=>s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1930",className:"bg-white rounded-2xl shadow-sm border border-gray-100 p-4 hover:shadow-md transition-shadow cursor-pointer active:scale-[0.99] group",onClick:()=>o(`/admin/agents/${e.id}`),children:s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1935",className:"flex items-start gap-3",children:[s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1936",className:"w-11 h-11 bg-[#1B3A6B] rounded-full flex items-center justify-center text-white font-bold text-lg shrink-0",children:e.name?.charAt(0)||"?"}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1939",className:"flex-1 min-w-0",children:[s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1940",className:"font-bold text-[#1B3A6B] truncate group-hover:underline",children:e.name}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1941",className:"text-gray-500 text-xs truncate",children:e.email}),e.phone&&s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1942",className:"text-gray-500 text-xs",children:e.phone}),e.company&&s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1943",className:"text-gray-400 text-xs truncate",children:e.company}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1944",className:"flex items-center gap-2 mt-2 flex-wrap",children:[s.jsx(ge,{"data-loc":"client/src/pages/AdminDashboard.tsx:1945",agentId:e.id,current:e.membershipPlan}),s.jsxs("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:1946",className:"text-gray-400 text-xs font-medium",children:[e.submissionCount," PICRAs"]}),Rs.has(e.id)&&s.jsxs(hs,{"data-loc":"client/src/pages/AdminDashboard.tsx:1948",className:"text-[10px] bg-amber-100 text-amber-700 border-0 gap-0.5",children:[s.jsx(cs,{"data-loc":"client/src/pages/AdminDashboard.tsx:1949",className:"w-2.5 h-2.5"})," Review Pending"]})]})]}),s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1954",className:"text-gray-300 group-hover:text-[#1B3A6B] transition-colors shrink-0",children:s.jsx("svg",{"data-loc":"client/src/pages/AdminDashboard.tsx:1955",className:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:s.jsx("path",{"data-loc":"client/src/pages/AdminDashboard.tsx:1955",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9 5l7 7-7 7"})})})]})},e.id))}),U?.hasMore&&s.jsxs("button",{"data-loc":"client/src/pages/AdminDashboard.tsx:1964",onClick:()=>S(e=>e+W),disabled:os,className:"w-full py-3 rounded-2xl border border-gray-200 bg-white text-sm font-semibold text-[#1B3A6B] hover:bg-[#1B3A6B]/5 transition-colors flex items-center justify-center gap-2 disabled:opacity-50",children:[os?s.jsx(C,{"data-loc":"client/src/pages/AdminDashboard.tsx:1969",className:"w-4 h-4 animate-spin"}
24):null,os?"Loading...":`Load More (${p-R.length} remaining)`]}),R.length>0&&!U?.hasMore&&s.jsxs("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1974",className:"text-center text-xs text-gray-400 py-2",children:["All ",p," agents loaded"]})]}),d==="customers"&&s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1981",className:"space-y-4",children:[s.jsxs("h2",{"data-loc":"client/src/pages/AdminDashboard.tsx:1982",className:"text-lg md:text-xl font-bold text-[#1B3A6B]",children:["All Customers (",G?.items?.length??0,")"]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1983",className:"bg-white rounded-2xl shadow-sm border border-gray-100 overflow-hidden",children:[s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1985",className:"md:hidden divide-y divide-gray-100",children:[(G?.items||[]).map(e=>s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1987",className:"px-4 py-3.5 flex items-center gap-3",children:[s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1988",className:"w-10 h-10 bg-[#1B3A6B]/10 rounded-full flex items-center justify-center text-[#1B3A6B] font-bold text-sm shrink-0",children:(e.name||"?").charAt(0).toUpperCase()}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1991",className:"flex-1 min-w-0",children:[s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1992",className:"font-semibold text-sm text-gray-900",children:e.name}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1993",className:"text-gray-500 text-xs mt-0.5",children:e.agentName||"No agent"}),e.email&&s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1994",className:"text-gray-400 text-xs",children:e.email}),e.latestAddress&&s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1995",className:"text-gray-400 text-xs truncate",children:e.latestAddress})]}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:1997",className:"shrink-0 text-right",children:[s.jsx("span",{"data-loc":"client/src/pages/AdminDashboard.tsx:1998",className:"font-bold text-[#1B3A6B] text-sm",children:e.submissionCount}),s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:1999",className:"text-gray-400 text-[10px]",children:"jobs"})]})]},e.id)),(!G?.items||G.items.length===0)&&s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:2004",className:"p-12 text-center text-gray-400 text-sm",children:"No customers found"})]}),s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:2008",className:"hidden md:block overflow-x-auto",children:s.jsxs("table",{"data-loc":"client/src/pages/AdminDashboard.tsx:2009",className:"w-full text-sm",children:[s.jsx("thead",{"data-loc":"client/src/pages/AdminDashboard.tsx:2010",children:s.jsxs("tr",{"data-loc":"client/src/pages/AdminDashboard.tsx:2011",className:"border-b bg-gray-50",children:[s.jsx("th",{"data-loc":"client/src/pages/AdminDashboard.tsx:2012",className:"text-left p-3 text-xs font-semibold text-gray-500 uppercase tracking-wide",children:"Homeowner"}),s.jsx("th",{"data-loc":"client/src/pages/AdminDashboard.tsx:2013",className:"text-left p-3 text-xs font-semibold text-gray-500 uppercase tracking-wide",children:"Contact"}),s.jsx("th",{"data-loc":"client/src/pages/AdminDashboard.tsx:2014",className:"text-left p-3 text-xs font-semibold text-gray-500 uppercase tracking-wide",children:"Agent"}),s.jsx("th",{"data-loc":"client/src/pages/AdminDashboard.tsx:2015",className:"text-left p-3 text-xs font-semibold text-gray-500 uppercase tracking-wide",children:"Last Property"}),s.jsx("th",{"data-loc":"client/src/pages/AdminDashboard.tsx:2016",className:"text-left p-3 text-xs font-semibold text-gray-500 uppercase tracking-wide",children:"Submissions"})]})}),s.jsx("tbody",{"data-loc":"client/src/pages/AdminDashboard.tsx:2019",children:(G?.items||[]).map(e=>s.jsxs("tr",{"data-loc":"client/src/pages/AdminDashboard.tsx:2021",className:"border-b hover:bg-gray-50",children:[s.jsx("td",{"data-loc":"client/src/pages/AdminDashboard.tsx:2022",className:"p-3 font-medium",children:e.name}),s.jsxs("td",{"data-loc":"client/src/pages/AdminDashboard.tsx:2023",className:"p-3",children:[e.email&&s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:2024",className:"text-gray-500 text-xs",children:e.email}),e.phone&&s.jsx("p",{"data-loc":"client/src/pages/AdminDashboard.tsx:2025",className:"text-gray-500 text-xs",children:e.phone})]}),s.jsx("td",{"data-loc":"client/src/pages/AdminDashboard.tsx:2027",className:"p-3 text-gray-600",children:e.agentName||"â"}),s.jsx("td",{"data-loc":"client/src/pages/AdminDashboard.tsx:2028",className:"p-3 text-gray-600 text-xs",children:e.latestAddress||"â"}),s.jsx("td",{"data-loc":"client/src/pages/AdminDashboard.tsx:2029",className:"p-3",children:s.jsx(hs,{"data-loc":"client/src/pages/AdminDashboard.tsx:2030",variant:"outline",children:e.submissionCount})})]},e.id))})]})})]})]}),d==="leads"&&s.jsx(me,{"data-loc":"client/src/pages/AdminDashboard.tsx:2042"}),d==="audit"&&s.jsx(he,{"data-loc":"client/src/pages/AdminDashboard.tsx:2045"}),d==="team"&&s.jsx(oe,{"data-loc":"client/src/pages/AdminDashboard.tsx:2048"}),d==="settings"&&s.jsx(xe,{"data-loc":"client/src/pages/AdminDashboard.tsx:2051"}),d==="email_log"&&s.jsx(ne,{"data-loc":"client/src/pages/AdminDashboard.tsx:2054"}),d==="chat_analytics"&&s.jsx(re,{"data-loc":"client/src/pages/AdminDashboard.tsx:2057"}),d==="enrichment"&&s.jsx(ie,{"data-loc":"client/src/pages/AdminDashboard.tsx:2060"})]})]}),B&&s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:2066",className:"fixed inset-0 z-50 flex",children:[s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:2068",className:"flex-1 bg-black/40 hidden md:block",onClick:()=>y(null)}),s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:2069",className:"w-full md:w-[600px] bg-white shadow-2xl flex flex-col overflow-hidden h-full",children:s.jsx(ks,{"data-loc":"client/src/pages/AdminDashboard.tsx:2070",submissionId:B,onClose:()=>y(null)})})]}),B&&u&&s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:2080",className:"fixed inset-0 z-[60] flex flex-col",children:[s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:2081",className:"flex-1 bg-black/50",onClick:()=>y(null)}),s.jsxs("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:2082",className:"bg-white rounded-t-3xl shadow-2xl flex flex-col max-h-[92vh] overflow-hidden",children:[s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:2084",className:"flex justify-center pt-3 pb-1 shrink-0",children:s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:2085",className:"w-10 h-1 rounded-full bg-gray-300"})}),s.jsx(ks,{"data-loc":"client/src/pages/AdminDashboard.tsx:2087",submissionId:B,onClose:()=>y(null)})]})]}),x&&s.jsx("div",{"data-loc":"client/src/pages/AdminDashboard.tsx:2097",className:"fixed bottom-6 right-6 z-50 w-96 hidden md:block",children:s.jsx(Zs,{"data-loc":"client/src/pages/AdminDashboard.tsx:2098",context:"crm_dashboard",onClose:()=>F(!1)})})]})}export{Ve 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.