{"version":3,"file":"PracticeGrid.D28f83zV.mjs","names":["p","useState"],"sources":["https:/framerusercontent.com/modules/8GE4pmADStU9FNceio4K/gzvB8b2dpbXdSLfxfiIs/PracticeGrid.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useEffect,useState}from\"react\";const API=\"https://app.careowner.com/api/public/marketplace\";// Design tokens lifted from the Framer \"Cards/Practice Thumbnail\" component\nconst WHITE=\"rgb(255, 255, 255)\";const BORDER=\"rgba(34, 34, 34, 0.15)\";const TITLE=\"rgb(30, 34, 34)\"// Charcoal Black\n;const BODY=\"rgb(78, 81, 81)\"// Slate Gray\n;const MUTED=\"rgb(122, 125, 125)\"// Slate Gray 75%\n;const FOREST=\"rgb(41, 145, 152)\"// Brighter Forest (Active)\n;const FONT=\"'FT Basic Space', sans-serif\";// A labeled financial row: muted label on the left, value on the right.\nfunction MetricRow({label,children}){return /*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",justifyContent:\"space-between\",alignItems:\"center\",gap:12},children:[/*#__PURE__*/_jsx(\"span\",{style:{fontSize:14,color:MUTED},children:label}),/*#__PURE__*/_jsx(\"span\",{style:{fontSize:15,fontWeight:500,color:TITLE,textAlign:\"right\"},children:children})]});}// Links to the page that hosts the Fillout embed. Fillout's\n// `data-zite-inherit-parameters` forwards these query params into the form,\n// so `practice` / `practice_token` prefill matching fields automatically.\nfunction requestInfoHref(p){const params=new URLSearchParams({practice:p.name,practice_token:p.token});return`/request-info?${params.toString()}`;}function Card({p}){const active=p.status_label===\"Active\";const meta=[p.location.state,p.location.density,p.location.practice_type].filter(x=>Boolean(x));return /*#__PURE__*/_jsxs(\"a\",{className:\"pg-card\",href:requestInfoHref(p),style:{display:\"flex\",flexDirection:\"column\",background:WHITE,border:`1px solid ${BORDER}`,borderRadius:12,overflow:\"hidden\",textDecoration:\"none\",fontFamily:FONT,transition:\"box-shadow .2s ease, transform .2s ease\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{position:\"relative\",width:\"100%\",height:225},children:[/*#__PURE__*/_jsx(\"img\",{src:p.image_url,alt:\"\",style:{width:\"100%\",height:\"100%\",objectFit:\"cover\",display:\"block\"}}),/*#__PURE__*/_jsxs(\"span\",{style:{position:\"absolute\",top:10,left:10,display:\"inline-flex\",alignItems:\"center\",gap:6,background:WHITE,borderRadius:999,padding:\"5px 10px\",fontSize:13,fontWeight:500,color:TITLE,boxShadow:\"0 1px 2px rgba(0,0,0,.08)\"},children:[/*#__PURE__*/_jsx(\"span\",{style:{width:7,height:7,borderRadius:\"50%\",background:active?FOREST:MUTED}}),p.status_label]})]}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",flex:1,gap:8,padding:\"12px 16px 16px\"},children:[meta.length>0&&/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:8,fontSize:13,color:BODY,flexWrap:\"wrap\"},children:meta.map((part,i)=>/*#__PURE__*/_jsxs(\"span\",{style:{display:\"inline-flex\",alignItems:\"center\",gap:8},children:[i>0&&/*#__PURE__*/_jsx(Dot,{}),part]},part))}),/*#__PURE__*/_jsx(\"h3\",{style:{margin:0,fontSize:18,fontWeight:500,lineHeight:\"1.2em\",color:TITLE},children:p.name}),/*#__PURE__*/_jsx(\"p\",{style:{margin:0,fontSize:16,lineHeight:\"1.4em\",color:BODY},children:p.description}),(p.doctors_count>0||p.revenue.band)&&/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:6,marginTop:\"auto\",paddingTop:12,borderTop:`1px solid ${BORDER}`},children:[p.doctors_count>0&&/*#__PURE__*/_jsx(MetricRow,{label:\"Doctors\",children:p.doctors_count}),p.revenue.band&&/*#__PURE__*/_jsx(MetricRow,{label:p.revenue.year!=null?`Revenue (${p.revenue.year})`:\"Revenue\",children:p.revenue.band})]})]})]});}// Reassurance card shown after the real listings so the grid never reads as\n// \"only N practices\". Whole card links to the request form; the second line is\n// the explicit CTA.\nfunction OffMarketCard(){const href=`/request-info?${new URLSearchParams({practice:\"Off-market & confidential listings\"}).toString()}`;return /*#__PURE__*/_jsxs(\"a\",{className:\"pg-card pg-offmarket\",href:href,style:{width:\"100%\",boxSizing:\"border-box\",marginTop:24,display:\"flex\",flexDirection:\"row\",alignItems:\"center\",justifyContent:\"space-between\",flexWrap:\"wrap\",gap:16,padding:\"24px 28px\",background:\"rgba(41, 145, 152, 0.05)\",border:\"1.5px dashed rgba(41, 145, 152, 0.4)\",borderRadius:12,textDecoration:\"none\",fontFamily:FONT,transition:\"box-shadow .2s ease, transform .2s ease\"},children:[/*#__PURE__*/_jsx(\"span\",{style:{fontSize:18,fontWeight:500,lineHeight:\"1.3em\",color:TITLE,flex:\"1 1 240px\",minWidth:0},children:\"More practices available — not all are listed publicly.\"}),/*#__PURE__*/_jsxs(\"span\",{className:\"pg-offmarket-cta\",style:{display:\"inline-flex\",alignItems:\"center\",justifyContent:\"center\",gap:8,maxWidth:\"100%\",boxSizing:\"border-box\",padding:\"10px 18px\",borderRadius:999,background:FOREST,color:WHITE,fontSize:15,fontWeight:600,lineHeight:\"1.35em\",textAlign:\"center\",flex:\"0 1 auto\"},children:[\"Ask about our off-market & confidential listings\",/*#__PURE__*/_jsx(\"span\",{\"aria-hidden\":\"true\",children:\"→\"})]})]});}function Dot(){return /*#__PURE__*/_jsx(\"span\",{style:{width:3,height:3,borderRadius:\"50%\",background:\"#CCC\",flexShrink:0}});}export default function PracticeGrid(){const[items,setItems]=useState([]);const[cursor,setCursor]=useState(null);const[loading,setLoading]=useState(true)// start true so the empty state never flashes before the fetch\n;const[error,setError]=useState(null);async function load(next){setLoading(true);setError(null);try{const url=next?`${API}?cursor=${next}`:API;const res=await fetch(url,{cache:\"no-store\"})// avoid a stale cached (possibly empty) response\n;if(!res.ok)throw new Error(`HTTP ${res.status}`);const json=await res.json();setItems(prev=>next?[...prev,...json.data]:json.data);setCursor(json.meta?.next_cursor??null);}catch(e){setError(\"We couldn't load the listings. Please try again.\");}finally{setLoading(false);}}useEffect(()=>{load();},[]);const center={textAlign:\"center\",padding:48,fontFamily:FONT,color:BODY};// Error before anything loaded\nif(error&&items.length===0){return /*#__PURE__*/_jsxs(\"div\",{style:center,children:[/*#__PURE__*/_jsx(\"p\",{children:error}),/*#__PURE__*/_jsx(\"button\",{style:pillButton,onClick:()=>load(),children:\"Retry\"})]});}// Initial loading\nif(loading&&items.length===0){return /*#__PURE__*/_jsx(\"div\",{style:center,children:\"Loading listings…\"});}// Empty (query ok, no results)\nif(!loading&&items.length===0){return /*#__PURE__*/_jsx(\"div\",{style:center,children:\"No practices available right now.\"});}return /*#__PURE__*/_jsxs(\"div\",{style:{fontFamily:FONT},children:[/*#__PURE__*/_jsx(\"style\",{children:`.pg-card:hover{box-shadow:0 8px 24px rgba(0,0,0,.10);transform:translateY(-2px)}`}),/*#__PURE__*/_jsx(\"div\",{style:{display:\"grid\",gridTemplateColumns:\"repeat(auto-fit, minmax(min(340px, 100%), 420px))\",justifyContent:\"start\",gap:24},children:items.map(p=>/*#__PURE__*/_jsx(Card,{p:p},p.token))}),/*#__PURE__*/_jsx(OffMarketCard,{}),error&&items.length>0&&/*#__PURE__*/_jsx(\"p\",{style:{textAlign:\"center\",color:\"crimson\"},children:error}),cursor&&/*#__PURE__*/_jsx(\"div\",{style:{textAlign:\"center\",marginTop:32},children:/*#__PURE__*/_jsx(\"button\",{style:pillButton,onClick:()=>load(cursor),disabled:loading,children:loading?\"Loading…\":\"Load More\"})})]});}const pillButton={appearance:\"none\",border:\"none\",background:TITLE,color:WHITE,fontFamily:FONT,fontSize:15,fontWeight:500,padding:\"12px 28px\",borderRadius:999,cursor:\"pointer\"};\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"PracticeGrid\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./PracticeGrid.map"],"mappings":"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"}