(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7492],{4464:function(e,t,a){(window.__NEXT_P=window.__NEXT_P||[]).push(["/find-practitioners",function(){return a(475)}])},3950:function(e,t,a){"use strict";var s=a(5893),i=a(9008),n=a.n(i),l=a(1163);t.Z=e=>{let{title:t="Virtual Triage - Online Doctor Appointments & Healthcare Services UK",description:a="Book online doctor appointments, find GPs, and access healthcare services across the UK. Virtual consultations with licensed practitioners. Book your appointment today.",keywords:i="online doctor UK, GP near me, family doctor UK, virtual consultations, telehealth UK, book doctor appointment, NHS alternative, private GP UK",canonical:r,ogImage:c="https://virtualtriage.ai/assets/og/default.jpg",ogType:o="website",structuredData:d,noindex:p=!1,location:u="UK"}=e,m=(0,l.useRouter)(),h="https://virtualtriage.ai",f=t.includes("Virtual Triage")?t:"".concat(t," | Virtual Triage"),x=r||"".concat(h).concat(m.asPath.split("?")[0]),v=d||{"@context":"https://schema.org","@type":"MedicalBusiness",name:"Virtual Triage",description:"Online healthcare platform connecting patients with licensed medical practitioners across the UK",url:h,logo:"".concat(h,"/assets/Virtual%20Triage.png"),address:{"@type":"PostalAddress",addressCountry:"GB",addressLocality:u},areaServed:{"@type":"Country",name:"United Kingdom"},sameAs:["https://www.facebook.com/virtualtriage","https://www.instagram.com/virtualtriage","https://www.linkedin.com/company/virtualtriage","https://twitter.com/virtualtriage"]};return(0,s.jsxs)(n(),{children:[(0,s.jsx)("title",{children:f}),(0,s.jsx)("meta",{name:"title",content:f}),(0,s.jsx)("meta",{name:"description",content:a}),(0,s.jsx)("meta",{name:"keywords",content:i}),(0,s.jsx)("meta",{name:"robots",content:p?"noindex,nofollow":"index,follow"}),(0,s.jsx)("meta",{name:"language",content:"English"}),(0,s.jsx)("meta",{name:"revisit-after",content:"7 days"}),(0,s.jsx)("meta",{name:"author",content:"Virtual Triage"}),(0,s.jsx)("meta",{name:"geo.region",content:"GB"}),(0,s.jsx)("meta",{name:"geo.placename",content:u}),(0,s.jsx)("link",{rel:"canonical",href:x}),(0,s.jsx)("meta",{property:"og:type",content:o}),(0,s.jsx)("meta",{property:"og:url",content:x}),(0,s.jsx)("meta",{property:"og:title",content:f}),(0,s.jsx)("meta",{property:"og:description",content:a}),(0,s.jsx)("meta",{property:"og:image",content:c}),(0,s.jsx)("meta",{property:"og:site_name",content:"Virtual Triage"}),(0,s.jsx)("meta",{property:"og:locale",content:"en_GB"}),(0,s.jsx)("meta",{name:"twitter:card",content:"summary_large_image"}),(0,s.jsx)("meta",{name:"twitter:url",content:x}),(0,s.jsx)("meta",{name:"twitter:title",content:f}),(0,s.jsx)("meta",{name:"twitter:description",content:a}),(0,s.jsx)("meta",{name:"twitter:image",content:c}),(0,s.jsx)("meta",{name:"twitter:site",content:"@virtualtriage"}),(0,s.jsx)("script",{type:"application/ld+json",dangerouslySetInnerHTML:{__html:JSON.stringify(v)}})]})}},475:function(e,t,a){"use strict";a.r(t);var s=a(5893),i=a(7294),n=a(1163),l=a(7317),r=a(3950),c=a(2194),o=a(141),d=a(2217),p=a(7089),u=a(9442),m=a(3645),h=a(2126),f=a(9176),x=a(2171),v=a(6127),j=a(4919),g=a(2190),y=a(88),N=a(39),w=a(3346),b=a(3350),_=a(4307),S=a(2917),k=a(2984),C=a(1376);a(3109);let P=["London","Manchester","Birmingham","Leeds","Glasgow","Liverpool","Newcastle","Sheffield","Bristol","Edinburgh"],A=[{label:"GP",value:"General Practitioner",Icon:o.Z},{label:"Dermatology",value:"Dermatologist",Icon:d.Z},{label:"Psychiatry",value:"Psychiatrist",Icon:p.Z},{label:"Paediatric",value:"Paediatrics",Icon:u.Z}],T=["GPs","Dermatologists","Psychiatrists","Paediatricians","Cardiologists"],z=["Skin Rash","Anxiety","Acne","Hypertension","Back Pain"];t.default=()=>{var e,t;let[a,o]=(0,i.useState)([]),[d,p]=(0,i.useState)(!0),[u,Z]=(0,i.useState)(!1),[U,G]=(0,i.useState)(""),L=(0,n.useRouter)(),[K,F]=(0,i.useState)({total_count:0,page:1,page_size:12,total_pages:0,has_next:!1,has_previous:!1,offset:0,limit:12}),[,I]=(0,i.useState)(1),[B,R]=(0,i.useState)(!1),[D,V]=(0,i.useState)(null),[E,O]=(0,i.useState)(null),[M,H]=(0,i.useState)(null),[q,W]=(0,i.useState)(!1),[X,J]=(0,i.useState)({specialties:[],languages:[]}),[Y,Q]=(0,i.useState)("GPs"),[$,ee]=(0,i.useState)(0),[et,ea]=(0,i.useState)(!1),[es,ei]=(0,i.useState)("Find Verified"),[en,el]=(0,i.useState)(!0),er=(0,i.useRef)({phase:0,index:0}),[ec,eo]=(0,i.useState)(!1);(0,i.useEffect)(()=>{let e=()=>eo(window.scrollY>40);return window.addEventListener("scroll",e,{passive:!0}),e(),()=>window.removeEventListener("scroll",e)},[]),(0,i.useEffect)(()=>{let e,t;let a=setInterval(()=>{ea(!0),e=setTimeout(()=>{let{phase:e,index:a}=er.current,s=0===e?T:z,i=a+1;if(i>=s.length){let a=(e+1)%2;er.current={phase:a,index:0},el(!1),t=setTimeout(()=>{ei(0===a?"Find Verified":"Helping With"),Q((0===a?T:z)[0]),ee(e=>e+1),ea(!1),el(!0)},380)}else er.current.index=i,Q(s[i]),ee(e=>e+1),ea(!1)},320)},2820);return()=>{clearInterval(a),clearTimeout(e),clearTimeout(t)}},[]);let[ed,ep]=(0,i.useState)(!1),[eu,em]=(0,i.useState)(null),[eh,ef]=(0,i.useState)(!1),[ex,ev]=(0,i.useState)(null),[ej,eg]=(0,i.useState)(null),[ey,eN]=(0,i.useState)(!1),ew=(0,i.useRef)(null),eb=e=>({total_count:(null==e?void 0:e.total)||0,page:(null==e?void 0:e.page)||1,page_size:(null==e?void 0:e.page_size)||20,total_pages:(null==e?void 0:e.pages)||0,has_next:((null==e?void 0:e.page)||1)<((null==e?void 0:e.pages)||1),has_previous:((null==e?void 0:e.page)||1)>1,offset:0,limit:(null==e?void 0:e.page_size)||20}),e_=async()=>{Z(!0);try{let e=await fetch("".concat(C.sN,"/doctor/directory-profile/public/?page_size=20&page=1")),t=await e.json(),a=(null==t?void 0:t.data)||[];o(a),F(eb(t)),I(1)}catch(e){console.error("API error:",e)}finally{Z(!1),p(!1)}};(0,i.useEffect)(()=>{e_()},[]),(0,i.useEffect)(()=>{(async()=>{try{let e=await fetch("".concat(C.CT,"/patient/doctor-filter-options/")),t=await e.json();(null==t?void 0:t.status)&&(null==t?void 0:t.data)&&J({specialties:t.data.specialities||[],languages:t.data.languages||[]})}catch(e){console.error("Failed to load filter options:",e)}})()},[]),(0,i.useEffect)(()=>{if(!E&&!D&&!M&&!q){if(ew.current&&clearTimeout(ew.current),!U.trim()){e_();return}return ew.current=setTimeout(()=>{eT(U)},400),()=>{ew.current&&clearTimeout(ew.current)}}},[U,E,D,M,q]);let eS=async function(e){let{append:t=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=new URLSearchParams({page_size:20,page:1,...e}),s="".concat(C.sN,"/doctor/directory-profile/public/?").concat(a),i=await fetch(s),n=await i.json(),l=(null==n?void 0:n.data)||[];return t?o(e=>[...e,...l]):(o(l),I(1)),F(eb(n)),l},ek=async e=>{if(E===e){O(null),e_();return}O(e),V(null),H(null),W(!1),Z(!0);try{await eS({speciality:e})}catch(e){o([])}finally{Z(!1)}},eC=async e=>{if(D===e){V(null),e_();return}V(e),O(null),H(null),W(!1),Z(!0);try{await eS({location:e})}catch(e){o([])}finally{Z(!1)}},eP=async e=>{if(M===e){H(null),e_();return}H(e),V(null),O(null),W(!1),Z(!0);try{await eS({language:e})}catch(e){o([])}finally{Z(!1)}},eA=async()=>{if(q){W(!1),e_();return}W(!0),V(null),O(null),H(null),Z(!0);try{let e=new URLSearchParams({page_size:100,page:1}),t=await fetch("".concat(C.sN,"/doctor/directory-profile/public/?").concat(e)),a=await t.json(),s=((null==a?void 0:a.data)||[]).filter(e=>Array.isArray(e.insurers)&&e.insurers.length>0);o(s),F({...eb(a),has_next:!1}),I(1)}catch(e){o([])}finally{Z(!1)}},eT=async e=>{Z(!0);try{await eS({search:e})}catch(e){o([])}finally{Z(!1)}},ez=()=>{V(null),O(null),H(null),W(!1),G(""),e_()},eZ=D||E||M||q,eU=async()=>{if(ey||!K.has_next)return;eN(!0);let e=(K.page||1)+1;try{let t={page:e,page_size:K.page_size||20};if(E&&(t.speciality=E),D&&(t.location=D),M&&(t.language=M),q){eN(!1);return}await eS(t,{append:!0})}catch(e){console.error("Load more error:",e)}finally{eN(!1)}},eG=async e=>{let t=(null==e?void 0:e.doctor_id)||(null==e?void 0:e._id)||(null==e?void 0:e.id);if(t){eg(t);try{var a;let s=await fetch("".concat(C.CT,"/patient/public/doctor-schedule/?doctor_id=").concat(encodeURIComponent(t))),i=await s.json();(null==i?void 0:i.status)&&Array.isArray(null===(a=i.data)||void 0===a?void 0:a.available_dates)&&i.data.available_dates.length>0?(em({...e,Health_Professional_Id:t}),ep(!0)):(ev(e),ef(!0))}catch(t){ev(e),ef(!0)}finally{eg(null)}}},eL=e=>{if(!((null==e?void 0:e.username)||(null==e?void 0:e._id)||(null==e?void 0:e.id)))return;let t=e.username?"/profile/".concat(encodeURIComponent(e.username)):"/profile/".concat(encodeURIComponent(e._id||e.id));window.scrollTo(0,0),L.push(t)},eK=a.filter(e=>{var t;if(!eZ||!U)return!0;let a=U.toLowerCase(),s=(e.full_name||e.name||"").toLowerCase(),i=(e.speciality||(null===(t=e.primary_specialty)||void 0===t?void 0:t.description)||"").toLowerCase(),n=(e.subspecialties||[]).map(e=>(e.name||"").toLowerCase());return s.includes(a)||i.includes(a)||n.some(e=>e.includes(a))}),eF=e=>{var t;if(e.isAvailable&&(null===(t=e.nextSlot)||void 0===t?void 0:t.day)){let t=(e.nextSlot.day||"").toLowerCase();return"today"===t||"monday"===t||"tuesday"===t||"wednesday"===t||"thursday"===t||"friday"===t?{dotClass:"fp-status-dot-green",textClass:"fp-status-text-green",label:e.nextSlot.start?"".concat(e.nextSlot.day,", ").concat(e.nextSlot.start):e.nextSlot.day}:{dotClass:"fp-status-dot-teal",textClass:"fp-status-text-teal",label:"".concat(e.nextSlot.day,", ").concat(e.nextSlot.start||"").trim()}}return e.appointmentFee?{dotClass:"fp-status-dot-teal",textClass:"fp-status-text-teal",label:"From \xa3".concat(e.appointmentFee)}:{dotClass:"fp-status-dot-gray",textClass:"fp-status-text-gray",label:"Request Slot"}};return(0,s.jsxs)("div",{className:"fp-container",children:[(0,s.jsxs)("div",{className:"fp-ambient","aria-hidden":"true",children:[(0,s.jsx)("div",{className:"fp-ambient-blob-1"}),(0,s.jsx)("div",{className:"fp-ambient-blob-2"})]}),(0,s.jsx)(r.Z,{title:"Find a Private GP or Specialist UK | Browse & Book Online | Virtual Triage",description:"Search and book private GPs, psychiatrists, dermatologists & specialists across the UK. Filter by specialty, location, experience & availability. GMC-verified, video consultations, same-day appointments.",keywords:"find private gp uk, online doctor uk, book gp appointment online, private gp near me, find gp uk, doctor booking online uk, healthcare practitioners uk, gp appointment booking, private psychiatrist, online dermatologist",canonical:"https://virtualtriage.ai/find-practitioners",structuredData:{"@context":"https://schema.org","@graph":[{"@type":"WebPage","@id":"https://virtualtriage.ai/find-practitioners",url:"https://virtualtriage.ai/find-practitioners",name:"Find Doctors & GPs in the UK | Book Appointments Online",description:"Search and book appointments with private GPs and online doctors across the UK.",isPartOf:{"@id":"https://virtualtriage.ai/"},inLanguage:"en-GB"},{"@type":"SearchResultsPage","@id":"https://virtualtriage.ai/find-practitioners",url:"https://virtualtriage.ai/find-practitioners",name:"Find Doctors and GPs in the UK",description:"Search for private GPs, online doctors, and healthcare practitioners in the UK.",potentialAction:{"@type":"SearchAction",target:"https://virtualtriage.ai/find-practitioners?search={search_term_string}","query-input":"required name=search_term_string"}},{"@type":"MedicalBusiness","@id":"https://virtualtriage.ai/find-practitioners",name:"Virtual Triage Doctor Search",description:"Find and book appointments with certified healthcare professionals across the UK.",serviceArea:{"@type":"Place",name:"United Kingdom"},provider:{"@id":"https://virtualtriage.ai/"},offers:{"@type":"Offer",priceCurrency:"GBP",url:"https://virtualtriage.ai/find-practitioners"}}]},location:"UK"}),(0,s.jsx)(l.Z,{}),(0,s.jsx)("section",{className:"fp-trust-banner",style:{position:"relative",zIndex:10},children:(0,s.jsxs)("div",{className:"fp-trust-inner",children:[(0,s.jsxs)("p",{className:"fp-trust-item",children:[(0,s.jsx)(m.Z,{size:14})," All Doctors GMC Verified"]}),(0,s.jsxs)("p",{className:"fp-trust-item",children:[(0,s.jsx)(h.Z,{size:14})," DSPT & GDPR Compliant"]}),(0,s.jsxs)("p",{className:"fp-trust-item",children:[(0,s.jsx)(f.Z,{size:14})," 20+ Specialists Across 15 Specialties"]}),(0,s.jsxs)("p",{className:"fp-trust-item",children:[(0,s.jsx)(x.Z,{size:14})," UK Registered Platform"]})]})}),(0,s.jsxs)("main",{className:"fp-main",children:[(0,s.jsxs)("section",{className:"fp-hero",children:[(0,s.jsxs)("h1",{className:"fp-hero-title",children:[(0,s.jsx)("span",{className:"fp-hero-static".concat(en?" fp-hero-visible":""),children:es}),(0,s.jsx)("span",{className:"fp-hero-word-wrap".concat(et?" fp-hero-word-exit":" fp-hero-word-enter"),children:(0,s.jsx)("span",{className:"fp-hero-word-text",children:Y})},$)]}),(0,s.jsx)("p",{className:"fp-hero-desc",children:"Advanced triage routing connects you with top-tier practitioners instantly. Search by name, specialty, or symptom to begin."})]}),(0,s.jsx)("div",{className:"fp-search-dock".concat(ec?" fp-search-dock-stuck":""),children:(0,s.jsxs)("div",{className:"fp-search-dock-inner",children:[(0,s.jsxs)("div",{className:"fp-search-wrapper",children:[(0,s.jsx)("div",{className:"fp-search-glow"}),(0,s.jsxs)("div",{className:"fp-search-bar",children:[(0,s.jsx)("span",{className:"fp-search-icon",children:(0,s.jsx)(v.Z,{size:20})}),(0,s.jsx)("input",{className:"fp-search-input",placeholder:"Search conditions, symptoms, or doctors...",value:U,onChange:e=>G(e.target.value)}),(0,s.jsx)("button",{className:"fp-search-btn",children:"Search"})]})]}),(0,s.jsxs)("div",{className:"fp-filter-chips",children:[A.map(e=>{let{label:t,value:a,Icon:i}=e;return(0,s.jsxs)("button",{className:"fp-chip".concat(E===a?" fp-chip-active":""),onClick:()=>ek(a),children:[(0,s.jsx)(i,{size:14}),t]},a)}),(0,s.jsxs)("button",{className:"fp-chip".concat(eZ&&!A.find(e=>e.value===E)?" fp-chip-active":""),onClick:()=>R(!0),children:[(0,s.jsx)(j.Z,{size:14}),"All Filters",eZ&&(0,s.jsx)("span",{className:"fp-chip-dot-indicator"})]})]}),eZ&&(0,s.jsxs)("div",{className:"fp-active-chips",children:[E&&(0,s.jsxs)("span",{className:"fp-active-chip",children:[E,(0,s.jsx)("button",{onClick:()=>{O(null),e_()},children:(0,s.jsx)(g.Z,{size:11})})]}),D&&(0,s.jsxs)("span",{className:"fp-active-chip",children:[D,(0,s.jsx)("button",{onClick:()=>{V(null),e_()},children:(0,s.jsx)(g.Z,{size:11})})]}),M&&(0,s.jsxs)("span",{className:"fp-active-chip",children:[M,(0,s.jsx)("button",{onClick:()=>{H(null),e_()},children:(0,s.jsx)(g.Z,{size:11})})]}),q&&(0,s.jsxs)("span",{className:"fp-active-chip",children:["Accepts Insurance",(0,s.jsx)("button",{onClick:()=>{W(!1),e_()},children:(0,s.jsx)(g.Z,{size:11})})]}),(0,s.jsx)("button",{className:"fp-clear-all",onClick:ez,children:"Clear all"})]})]})}),(0,s.jsx)("section",{className:"fp-grid",children:d||u?[...Array(6)].map((e,t)=>(0,s.jsxs)("div",{className:"fp-skeleton-card",children:[(0,s.jsx)("div",{className:"fp-skeleton-avatar"}),(0,s.jsxs)("div",{className:"fp-skeleton-lines",children:[(0,s.jsx)("div",{className:"fp-skeleton-line fp-skeleton-line-lg"}),(0,s.jsx)("div",{className:"fp-skeleton-line fp-skeleton-line-sm"}),(0,s.jsx)("div",{className:"fp-skeleton-line fp-skeleton-line-md"})]})]},t)):0===eK.length?(0,s.jsxs)("div",{className:"fp-empty-state",children:[(0,s.jsxs)("svg",{width:"48",height:"48",viewBox:"0 0 24 24",fill:"none",stroke:"#c8d6e0",strokeWidth:"1.5",children:[(0,s.jsx)("circle",{cx:"11",cy:"11",r:"8"}),(0,s.jsx)("line",{x1:"21",y1:"21",x2:"16.65",y2:"16.65"})]}),(0,s.jsx)("p",{className:"fp-empty-title",children:"No practitioners found"}),(0,s.jsx)("p",{className:"fp-empty-sub",children:"Try adjusting your filters or search term"}),(0,s.jsx)("button",{className:"fp-empty-reset",onClick:ez,children:"Reset filters"})]}):eK.map(e=>{var t,a,i,n,l,r,c,o,d,p,u,h;let f={id:e._id||e.id,name:e.full_name||e.name,specialty:e.speciality||(null===(t=e.primary_specialty)||void 0===t?void 0:t.description)||"",location:(()=>{var t;let a=null===(t=e.locations)||void 0===t?void 0:t[0];return a?(a.city&&"-"!==a.city?a.city:null)||a.country||e.location||"United Kingdom":e.location||"United Kingdom"})(),expertise:Array.isArray(e.subspecialties)?e.subspecialties.map(e=>e.name):Array.isArray(e.areas_of_expertise)?e.areas_of_expertise:[],experience:e.experience_years,fee:null!==(o=null!==(c=e.initial_appointment_fee)&&void 0!==c?c:e.new_appointment_fee)&&void 0!==o?o:"Not Set",rating:null!==(p=null===(a=e.review_stats)||void 0===a?void 0:a.average)&&void 0!==p?p:"number"==typeof e.rating?e.rating:null!==(d=null===(n=e.ratings)||void 0===n?void 0:null===(i=n[0])||void 0===i?void 0:i.Doctor_Rating)&&void 0!==d?d:0,image:e.profile_picture_url||"/assets/Virtual%20Triage.png",isAvailable:!0===e.is_active||!0===e.status,verified:!0===e.verified,nextSlot:(()=>{let t;let a=e.next_available_slot;if(!(null==a?void 0:a.date)||!(null==a?void 0:a.start_time))return null;let s=new Date().toISOString().split("T")[0],i=new Date(Date.now()+864e5).toISOString().split("T")[0];t=a.date===s?"Today":a.date===i?"Tomorrow":new Date(a.date+"T00:00:00").toLocaleDateString("en-GB",{weekday:"short",day:"numeric",month:"short"});let[n,l]=a.start_time.split(":"),r=parseInt(n,10);return{day:t,start:"".concat(r%12||12,":").concat(l," ").concat(r>=12?"PM":"AM")}})(),appointmentFee:null!==(h=null!==(u=e.initial_appointment_fee)&&void 0!==u?u:e.new_appointment_fee)&&void 0!==h?h:null},x=ej===f.id,v=eF(f);return(0,s.jsxs)("div",{className:"fp-card",onClick:()=>eL(e),style:{cursor:"pointer"},children:[(0,s.jsx)("div",{className:"fp-card-glow"}),(0,s.jsxs)("div",{className:"fp-card-body",children:[(0,s.jsxs)("div",{className:"fp-card-header",children:[(0,s.jsxs)("div",{className:"fp-card-avatar-wrap",children:[(0,s.jsx)("div",{className:"fp-card-avatar",children:(0,s.jsx)("img",{src:f.image,alt:f.name,width:68,height:68,loading:"lazy"})}),f.isAvailable&&(0,s.jsx)("span",{className:"fp-card-available-dot",title:"Available"})]}),(0,s.jsx)("div",{className:"fp-card-meta",children:(0,s.jsxs)("div",{className:"fp-card-name-row",children:[(0,s.jsxs)("div",{className:"fp-card-name-block",children:[(0,s.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:"5px"},children:[(0,s.jsx)("h3",{className:"fp-card-name",children:f.name}),f.verified&&(0,s.jsx)(m.Z,{size:14,style:{color:"#1a9c6e",flexShrink:0},title:"GMC Verified"})]}),(0,s.jsx)("p",{className:"fp-card-specialty",children:f.specialty})]}),f.rating>0&&(0,s.jsxs)("div",{className:"fp-card-rating-badge",children:[(0,s.jsx)(y.Z,{size:12,className:"fp-star-icon fp-star-filled",style:{fill:"#eda000",color:"#eda000"}}),(0,s.jsx)("span",{className:"fp-card-rating-value",children:f.rating.toFixed(1)})]})]})})]}),(0,s.jsxs)("div",{className:"fp-card-details",children:[(0,s.jsxs)("div",{className:"fp-card-detail",children:[(0,s.jsx)(N.Z,{size:13,className:"fp-card-detail-icon"}),(0,s.jsxs)("span",{children:["Next available:"," ",(null===(l=f.nextSlot)||void 0===l?void 0:l.day)&&(null===(r=f.nextSlot)||void 0===r?void 0:r.start)?(0,s.jsxs)("strong",{children:[f.nextSlot.day,", ",f.nextSlot.start]}):(0,s.jsx)("strong",{children:"Request Slot"})]})]}),f.experience&&(0,s.jsxs)("div",{className:"fp-card-detail",children:[(0,s.jsx)(w.Z,{size:13,className:"fp-card-detail-icon"}),(0,s.jsxs)("span",{children:[f.experience,"+ years experience"]})]}),f.location&&(0,s.jsxs)("div",{className:"fp-card-detail",children:[(0,s.jsx)(b.Z,{size:13,className:"fp-card-detail-icon"}),(0,s.jsx)("span",{children:f.location})]})]}),f.expertise.length>0&&(0,s.jsxs)("div",{className:"fp-card-chips",children:[f.expertise.slice(0,3).map(e=>(0,s.jsx)("span",{className:"fp-card-chip",children:e},e)),f.expertise.length>3&&(0,s.jsxs)("span",{className:"fp-card-chip fp-card-chip-more",children:["+",f.expertise.length-3]})]}),(0,s.jsxs)("div",{className:"fp-card-footer",children:[(0,s.jsxs)("div",{className:"fp-card-status",children:[(0,s.jsx)("span",{className:"fp-status-dot ".concat(v.dotClass)}),(0,s.jsx)("span",{className:"fp-status-text ".concat(v.textClass),children:f.appointmentFee?"From \xa3".concat(f.appointmentFee):v.label})]}),(0,s.jsx)("span",{className:"fp-card-arrow",children:(0,s.jsx)(_.Z,{size:16})})]}),(0,s.jsxs)("div",{className:"fp-card-btns-mobile",children:[(0,s.jsx)("button",{className:"fp-btn-outline",onClick:t=>{t.stopPropagation(),eL(e)},children:"View Profile"}),(0,s.jsx)("button",{className:"fp-btn-filled fp-btn-teal",onClick:t=>{t.stopPropagation(),eG(e)},disabled:x,children:x?"Loading...":"Book Now"})]})]}),(0,s.jsxs)("div",{className:"fp-card-overlay",children:[(0,s.jsx)("button",{className:"fp-btn-outline",onClick:t=>{t.stopPropagation(),eL(e)},children:"View Profile"}),(0,s.jsx)("button",{className:"fp-btn-filled",onClick:t=>{t.stopPropagation(),eG(e)},disabled:x,children:x?"Loading...":"Book Now"})]})]},f.id)})}),K.has_next&&!d&&!u&&(0,s.jsx)("div",{className:"fp-load-more-wrap",children:(0,s.jsxs)("button",{className:"fp-load-more-btn",onClick:eU,disabled:ey,children:[ey?"Loading...":"Load More Practitioners",!ey&&(0,s.jsx)(x.Z,{size:16})]})})]}),(0,s.jsx)(c.Z,{}),B&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("div",{className:"fp-sheet-overlay",onClick:()=>R(!1)}),(0,s.jsxs)("div",{className:"fp-sheet",role:"dialog","aria-modal":"true","aria-label":"Filters",children:[(0,s.jsx)("div",{className:"fp-sheet-handle"}),(0,s.jsxs)("div",{className:"fp-sheet-header",children:[(0,s.jsx)("span",{className:"fp-sheet-title",children:"Filters"}),(0,s.jsx)("button",{className:"fp-sheet-close",onClick:()=>R(!1),children:(0,s.jsx)(g.Z,{size:20})})]}),(0,s.jsxs)("div",{className:"fp-sheet-section",children:[(0,s.jsx)("div",{className:"fp-sheet-section-title",children:"Specialties"}),(0,s.jsx)("div",{className:"fp-sheet-options",children:X.specialties.map(e=>(0,s.jsx)("button",{className:"fp-sheet-option".concat(E===e.name?" fp-sheet-option-active":""),onClick:()=>{ek(e.name),R(!1)},children:e.name},e.id))})]}),(0,s.jsxs)("div",{className:"fp-sheet-section",children:[(0,s.jsx)("div",{className:"fp-sheet-section-title",children:"Location (UK)"}),(0,s.jsx)("div",{className:"fp-sheet-options",children:P.map(e=>(0,s.jsx)("button",{className:"fp-sheet-option".concat(D===e?" fp-sheet-option-active":""),onClick:()=>{eC(e),R(!1)},children:e},e))})]}),(0,s.jsxs)("div",{className:"fp-sheet-section",children:[(0,s.jsx)("div",{className:"fp-sheet-section-title",children:"Language"}),(0,s.jsx)("div",{className:"fp-sheet-options",children:X.languages.map(e=>(0,s.jsx)("button",{className:"fp-sheet-option".concat(M===e.name?" fp-sheet-option-active":""),onClick:()=>{eP(e.name),R(!1)},children:e.name},e.id))})]}),(0,s.jsxs)("div",{className:"fp-sheet-section",children:[(0,s.jsx)("div",{className:"fp-sheet-section-title",children:"Insurance"}),(0,s.jsx)("div",{className:"fp-sheet-options",children:(0,s.jsx)("button",{className:"fp-sheet-option".concat(q?" fp-sheet-option-active":""),onClick:()=>{eA(),R(!1)},children:"Accepts Insurance"})})]}),(0,s.jsxs)("div",{className:"fp-sheet-footer",children:[(0,s.jsx)("button",{className:"fp-sheet-reset",onClick:()=>{ez(),R(!1)},children:"Clear All"}),(0,s.jsx)("button",{className:"fp-sheet-apply",onClick:()=>R(!1),children:"Show Results"})]})]})]}),ed&&eu&&(0,s.jsx)(S.Z,{practitioner:eu,appointmentFee:null!==(t=null!==(e=null==eu?void 0:eu.initial_appointment_fee)&&void 0!==e?e:null==eu?void 0:eu.new_appointment_fee)&&void 0!==t?t:0,appointmentType:"initial",onClose:()=>{ep(!1),em(null)}}),eh&&(0,s.jsx)(k.Z,{isOpen:eh,onClose:()=>{ef(!1),ev(null)},doctorId:(null==ex?void 0:ex._id)||(null==ex?void 0:ex.id)||(null==ex?void 0:ex.doctor_id),doctorName:(null==ex?void 0:ex.full_name)||(null==ex?void 0:ex.name)})]})}}},function(e){e.O(0,[1890,5156,8884,2888,9774,179],function(){return e(e.s=4464)}),_N_E=e.O()}]);