{"version":3,"file":"GroupKit.C4R5vdEO.mjs","names":["_Fragment"],"sources":["https:/framerusercontent.com/modules/fYdHgfXZVzYrAu2GEFuF/i7eo3ayWUbllwZVCvcus/GroupKit.js"],"sourcesContent":["// SideKick Venues · Group kit\n// Small read-only blocks for the restaurant group pages (/venues/group/:slug and /venues/groups).\n// Everything renders on the server, so the page is complete before any script runs.\n//\n// Modes (pick one per instance):\n// - Logo: the group's logo. \"Logo\" is the dark version for light backgrounds, \"Logo On Dark\" is the\n//   white version. On a dark surface the white logo sits bare; a dark logo gets a light tile. On a\n//   light surface (theme-following sheets) the logo always sits in a fixed-colour tile, so it keeps its\n//   contrast in light and dark mode. Auto (theme-following sheets, e.g. the venue page title): both theme\n//   copies are server-rendered bare and CSS on html[data-ces-theme] shows one, like GroupLogo: \"Logo\" in\n//   light mode, \"Logo On Dark\" in dark mode; a missing version falls back to the other one on a fixed tile.\n//   No logo at all: a tile with the group's initials.\n//   Banner (venue page header): a full-width photo of the place under a dark Ground veil, with the logo centered on top.\n//   The photo is the CMS \"Banner Photo\" when one is bound and set (2026-10-10: a hand-picked photo of the main room).\n//   Otherwise it is the first gallery photo that isn't the cover (landscape preferred), so it doesn't repeat the big\n//   photo below it; the cover is the fallback. The banner is always dark, so it shows \"Logo On Dark\" bare. With only a dark\n//   \"Logo\", that logo sits on a soft off-white plate, so it reads on any photo. Logos are sized by area (wide wordmarks\n//   get less height, square marks the full height), so every logo has about the same visual weight.\n// - Perks: the Groups \"Good To Know\" field. One per line:  Title | Text | URL\n// - Places: the Groups \"Other Locations\" field. One per line:  Name | Neighborhood | URL\n//   (their Columbus places that are not on the directory yet; each links out to its own site).\n// - Contact: the group's private events contact as tap-to-email, tap-to-call and link rows (Framer\n//   links can't add \"mailto:\" to a CMS text field, so the rows are built here). With no email, phone\n//   or form it shows the fallback line instead.\n// - Honor: one row for a place in the group's \"Honors at their places\" list: the place's name (linked to\n//   its page) and its top third-party honor from the Venues \"Accolades\" field, worded exactly like the\n//   venue page (HonorsStrip.tsx): quoted title, who gave it, the year, \"readers' poll\" when it is one.\n//   Claims only on the venue's own site, milestones and owner-group lines are skipped, and the row\n//   renders nothing when no honor is left, so the list never shows a name with an empty line.\n//\n// Rules: never pure black or white; lime never as text; colours follow the Directory/* styles so the\n// blocks flip with the site theme. Links out open in a new tab. Nothing renders for an empty field.\nimport{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";const FONT='\"Switzer\", \"Switzer Placeholder\", \"Funnel Sans\", -apple-system, BlinkMacSystemFont, \"Helvetica Neue\", Arial, sans-serif';const MAX_INPUT=8e3;// Directory/* colour styles, with today's light value as the fallback.\nconst TK={text:\"var(--token-d2361962-1174-4c6b-8b53-bf38d6143601, rgb(20, 20, 20))\",body:\"var(--token-2b433c51-cebe-4ce0-be09-77f9d5be3398, rgb(51, 51, 51))\",muted:\"var(--token-7bccaf81-d024-42a3-a1fe-5a6543382219, rgb(92, 92, 92))\",faint:\"var(--token-8c0018a3-ff61-4b69-94b2-63b553b3b719, rgb(158, 158, 158))\",outline:\"var(--token-7d4e7cc5-3f40-453d-9bd0-0f9eebaa1e95, rgb(217, 217, 217))\",line:\"var(--token-c60e483d-0007-4e9a-8bfa-6cb427a20501, rgb(230, 230, 230))\",card:\"var(--token-6bd6f173-246d-4162-b46d-e3fcfa96384c, rgb(242, 242, 242))\",sheet:\"var(--token-a8dbafe7-00a0-42b2-ad4a-ef0b7fb63c86, rgb(252, 252, 252))\",edge:\"var(--token-56c56e96-ddff-421e-8305-1e8f65768b56, rgba(242, 242, 242, 0))\"};// Fixed brand colours (the same in both themes): logo tiles must not flip with the theme.\nconst BRAND={page:\"var(--token-0508877b-cf1e-41dd-93c5-32f9cb8fe6fa, rgb(252, 252, 252))\",ground:\"var(--token-ef2e9312-4826-4468-bc4b-8b5f21ddc03a, rgb(15, 15, 15))\",off:\"var(--token-6c986b66-9ef6-4348-8dc3-24c81f61b72d, rgb(242, 242, 242))\",recessed:\"var(--token-fd6a486f-d648-4700-9c8b-b336e51398aa, rgb(26, 26, 26))\",edge:\"var(--token-9c4fa3b2-5695-48e6-84b2-571e675667df, rgb(51, 51, 51))\"};const CSS=`\n.cesg{box-sizing:border-box;font-family:${FONT};color:${TK.text};text-align:left;-webkit-font-smoothing:antialiased;min-width:0;width:100%}\n.cesg *{box-sizing:border-box}\n.cesg ul{list-style:none;margin:0;padding:0}\n.cesg p{margin:0}\n.cesg svg{display:block;flex:0 0 auto}\n.cesg a{color:inherit}\n.cesg a:focus-visible{outline:2px solid ${TK.text};outline-offset:2px;border-radius:8px}\n.cesg-logo{display:flex;align-items:center;min-width:0}\n.cesg[data-align=\"center\"] .cesg-logo{justify-content:center}\n.cesg-logo img{display:block;width:auto;height:auto;max-width:100%;object-fit:contain}\n.cesg .cesg-th-d{display:none}\nhtml[data-ces-theme=\"dark\"] .cesg .cesg-th-d{display:flex}\nhtml[data-ces-theme=\"dark\"] .cesg .cesg-th-l{display:none}\n@media (prefers-color-scheme:dark){html:not([data-ces-theme]) .cesg .cesg-th-d{display:flex}html:not([data-ces-theme]) .cesg .cesg-th-l{display:none}}\n.cesg-tile{display:inline-flex;align-items:center;justify-content:center;--corner-shape-fallback:.71;border-radius:calc(13px*var(--one-if-corner-shape-supported,var(--corner-shape-fallback,1)));corner-shape:superellipse(1.6);max-width:100%}\n.cesg-initials{font-size:15px;font-weight:600;line-height:1;letter-spacing:0.02em}\n.cesg-perks{display:grid;grid-template-columns:repeat(auto-fill,minmax(232px,1fr));gap:21px}\n.cesg-perk{display:flex;flex-direction:column;gap:8px;padding:21px;--corner-shape-fallback:.71;border-radius:calc(21px*var(--one-if-corner-shape-supported,var(--corner-shape-fallback,1)));corner-shape:superellipse(1.6);background:${TK.card};border:1px solid ${TK.edge};min-width:0}\n.cesg-perk-title{font-size:16px;font-weight:500;line-height:1.35;letter-spacing:-0.02em;color:${TK.text};text-wrap:balance}\n.cesg-perk-text{font-size:14px;font-weight:500;line-height:1.45;letter-spacing:-0.01em;color:${TK.muted};text-wrap:pretty;flex:1 1 auto}\n.cesg-more{display:inline-flex;align-items:center;gap:5px;align-self:flex-start;margin-top:5px;font-size:14px;font-weight:500;line-height:1.3;color:${TK.text};text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;text-decoration-color:${TK.faint};transition:text-decoration-color .15s ease}\n.cesg-more:hover{text-decoration-color:${TK.text}}\n.cesg-more svg{width:14px;height:14px}\n.cesg-places{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));column-gap:34px;border-top:1px solid ${TK.line}}\n.cesg-place{border-bottom:1px solid ${TK.line};min-width:0}\n.cesg-place-in{display:flex;align-items:center;gap:13px;padding:13px 8px;margin:0 -8px;--corner-shape-fallback:.71;border-radius:calc(13px*var(--one-if-corner-shape-supported,var(--corner-shape-fallback,1)));corner-shape:superellipse(1.6);text-decoration:none;color:${TK.text};background:rgba(128,128,128,0);transition:background-color .15s ease;min-width:0}\na.cesg-place-in:hover{background:rgba(128,128,128,0.08)}\n.cesg-place-text{display:flex;flex-direction:column;gap:2px;flex:1 1 auto;min-width:0}\n.cesg-place-name{font-size:16px;font-weight:500;line-height:1.35;letter-spacing:-0.02em;overflow-wrap:anywhere}\n.cesg-place-area{font-size:14px;font-weight:500;line-height:1.4;color:${TK.muted}}\n.cesg-place-out{color:${TK.muted}}\n.cesg-place-out svg{width:16px;height:16px}\n@media (prefers-reduced-motion:reduce){.cesg-more,.cesg-place-in{transition:none}}\n.cesg-contact{display:flex;flex-direction:column;gap:8px}\n.cesg-row{display:flex;align-items:center;gap:13px;height:48px;padding:0 13px;--corner-shape-fallback:.71;border-radius:calc(13px*var(--one-if-corner-shape-supported,var(--corner-shape-fallback,1)));corner-shape:superellipse(1.6);border:1px solid ${TK.outline};background:${TK.sheet};color:${TK.text};text-decoration:none;transition:background-color .15s ease;min-width:0}\na.cesg-row:hover{background:${TK.card}}\n.cesg-row-icon svg{width:20px;height:20px}\n.cesg-row-label{flex:1 1 auto;min-width:0;font-size:14px;font-weight:500;line-height:1.3;letter-spacing:-0.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}\n.cesg-row-out{color:${TK.muted}}\n.cesg-row-out svg{width:16px;height:16px}\n.cesg-honor{display:flex;flex-wrap:wrap;align-items:flex-start;column-gap:21px;row-gap:5px;padding:13px 0;border-top:1px solid ${TK.line}}\n.cesg-honor-name{flex:0 0 260px;max-width:100%;font-size:16px;font-weight:500;line-height:1.35;letter-spacing:-0.02em;color:${TK.text};text-decoration:none;text-wrap:balance}\na.cesg-honor-name:hover{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}\n.cesg-honor-acc{flex:1 1 280px;min-width:0;display:flex;align-items:flex-start;gap:8px;font-size:14px;font-weight:500;line-height:1.4;color:${TK.muted};text-decoration:none}\n.cesg-honor-acc svg{width:16px;height:16px;margin-top:2px}\na.cesg-honor-acc:hover .cesg-honor-text{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}\n.cesg-honor-text{min-width:0;overflow-wrap:anywhere}\n.cesg-fallback{font-size:13px;font-weight:500;line-height:1.35;color:${TK.muted};text-wrap:pretty}\n@media (prefers-reduced-motion:reduce){.cesg-row{transition:none}}\n.cesg-ban{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center;width:100%;overflow:hidden;background:${BRAND.recessed};--corner-shape-fallback:.71;border-radius:calc(var(--cesg-r,34px)*var(--one-if-corner-shape-supported,var(--corner-shape-fallback,1)));corner-shape:superellipse(1.6)}\n.cesg-ban-img{position:absolute;inset:0;z-index:0;display:block;width:100%;height:100%;max-width:none;object-fit:cover;pointer-events:none;user-select:none;-webkit-user-drag:none}\n.cesg-ban-veil{position:absolute;inset:0;z-index:1;pointer-events:none;border-radius:0}\n.cesg-ban-logo{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;max-width:calc(100% - 42px);max-height:calc(100% - 26px)}\n.cesg-ban-logo img{display:block;max-width:100%;object-fit:contain;filter:drop-shadow(0 2px 14px rgba(15,15,15,0.35))}\n.cesg-ban-plate{display:inline-flex;align-items:center;justify-content:center;max-width:100%;background:#F2F2F2;box-shadow:0 10px 30px rgba(15,15,15,0.32);--corner-shape-fallback:.71;border-radius:calc(21px*var(--one-if-corner-shape-supported,var(--corner-shape-fallback,1)));corner-shape:superellipse(1.6)}\n.cesg-ban-plate img{filter:none}\n`;const SR_ONLY={position:\"absolute\",width:1,height:1,padding:0,margin:-1,overflow:\"hidden\",clip:\"rect(0, 0, 0, 0)\",whiteSpace:\"nowrap\",border:0};function clean(v,max=MAX_INPUT){if(typeof v!==\"string\")return\"\";const s=v.replace(/[   ]/g,\" \").replace(/[​-‍⁠﻿]/g,\"\").trim();return s.length>max?s.slice(0,max):s;}function safeUrl(raw){const s=(raw||\"\").trim();if(!/^https?:\\/\\//i.test(s))return\"\";try{const u=new URL(s);return u.protocol===\"http:\"||u.protocol===\"https:\"?u.href:\"\";}catch(_){return\"\";}}function imgSrc(img){if(typeof img===\"string\")return img.trim();if(img&&typeof img===\"object\"&&typeof img.src===\"string\")return(img.src||\"\").trim();return\"\";}function imgAlt(img,fallback){if(img&&typeof img===\"object\"&&typeof img.alt===\"string\"){const a=(img.alt||\"\").trim();if(a)return a;}return fallback;}function toImg(v,depth=2){if(!v)return null;if(typeof v===\"string\"){const s=v.trim();return/^https?:\\/\\//i.test(s)?{src:s,srcSet:\"\",alt:\"\",pos:\"\"}:null;}if(typeof v!==\"object\"||Array.isArray(v))return null;const o=v;const src=typeof o.src===\"string\"?o.src.trim():typeof o.url===\"string\"?o.url.trim():\"\";if(src){const px=typeof o.positionX===\"string\"?o.positionX:\"\";const py=typeof o.positionY===\"string\"?o.positionY:\"\";return{src,srcSet:typeof o.srcSet===\"string\"?o.srcSet:\"\",alt:typeof o.alt===\"string\"?o.alt:\"\",pos:px||py?`${px||\"50%\"} ${py||\"50%\"}`:\"\"};}if(depth<=0)return null;// A gallery row arrives as { photo: { src } } (or one level deeper).\nfor(const k of Object.keys(o)){const hit=toImg(o[k],depth-1);if(hit)return hit;}return null;}function fileKey(src){return(src.split(\"#\")[0].split(\"?\")[0].split(\"/\").pop()||src).toLowerCase();}// Framer's image URLs carry the file's size (\"…jpg?width=1600&height=1067\"). 0 when they don't say.\nfunction ratioOf(src,srcSet=\"\"){for(const u of[src,srcSet]){const w=/[?&]width=(\\d+)/.exec(u);const h=/[?&]height=(\\d+)/.exec(u);if(w&&h&&+w[1]>0&&+h[1]>0)return+w[1]/+h[1];}return 0;}// The banner photo: the first gallery photo that isn't the cover (landscape first), else the cover.\nfunction pickBanner(photos,cover,pickMode){const c=toImg(cover);const list=[];if(Array.isArray(photos))for(const p of photos){const i=toImg(p);if(i&&(!c||fileKey(i.src)!==fileKey(c.src))&&!list.some(x=>fileKey(x.src)===fileKey(i.src)))list.push(i);}if(pickMode===\"cover\")return c||list[0]||null;const ordered=pickMode===\"last\"?list.slice().reverse():list;const wide=ordered.find(i=>{const r=ratioOf(i.src,i.srcSet);return!r||r>=1.2;});return wide||ordered[0]||c;}// One file for every breakpoint: the srcSet candidate closest above 1024px wide (the photo sits under a veil, so it\n// never needs the full original). A #fragment gives it its own src, so Framer's publish step never merges its sizes\n// with the gallery's copy of the same photo; browsers drop the fragment when they fetch.\nfunction bannerSrc(i){let best=\"\";let bestW=Infinity;let maxU=\"\";let maxW=-1;const re=/\\s*([^\\s,]+)\\s+(\\d+)w\\s*(?:,|$)/g;let m;while(m=re.exec(i.srcSet)){const w=+m[2];if(w>=1e3&&w<bestW){bestW=w;best=m[1];}if(w>maxW){maxW=w;maxU=m[1];}}const u=(best||maxU||i.src).split(\"#\")[0];return u?`${u}#gk-banner`:\"\";}// Area-based logo size: a wide wordmark gets less height, a square mark the full height, so they weigh the same.\nfunction fitLogo(ratio,maxH,maxW){if(!ratio||!isFinite(ratio))return null;const area=maxH*maxW*.73;let h=Math.min(maxH,Math.sqrt(area/ratio));let w=h*ratio;if(w>maxW){w=maxW;h=w/ratio;}return{h:Math.round(h),w:Math.round(w)};}// \"Cameron Mitchell Restaurants\" → \"CM\". Skips small words and symbols.\nfunction initials(name){const words=name.replace(/[^A-Za-z0-9 ]+/g,\" \").split(/\\s+/).filter(w=>w&&!/^(the|and|of|restaurant|restaurants|group|bar)$/i.test(w));const pick=(words.length?words:name.split(/\\s+/)).slice(0,2);return pick.map(w=>w.charAt(0).toUpperCase()).join(\"\")||\"?\";}// Splits \"a | b | c\" lines. Lines with no first part are skipped.\nfunction lines(input){const text=clean(input);if(!text)return[];const out=[];for(const raw of text.split(/\\r?\\n/)){const line=raw.trim();if(!line)continue;const parts=line.split(\"|\").map(p=>p.trim());if(!parts[0])continue;out.push(parts);}return out;}function host(url){try{return new URL(url).hostname.toLowerCase().replace(/^www\\./,\"\");}catch(_){return\"\";}}function topHonor(input,venueWebsite){const ownHost=host(safeUrl(venueWebsite));for(const parts of lines(input)){const[title=\"\",by=\"\",year=\"\",url=\"\",kind=\"\"]=parts;const t=title.replace(/^[\"“”']+|[\"“”']+$/g,\"\").trim();if(!t)continue;const link=safeUrl(url);const k=kind.toLowerCase().replace(/[^a-z]/g,\"\");const own=/venue|site/.test(k)||!!ownHost&&!!link&&host(link)===ownHost;if(own||k.includes(\"milestone\")||k.includes(\"owner\"))continue;const m=/^(.*?)(\\s*\\([^)]*\\))$/.exec(t);const core=m&&m[1].trim()?m[1]:t;const note=m&&m[1].trim()?m[2]:\"\";let text=`“${core}”${note}`;if(k.includes(\"poll\"))text=`${text}, readers' poll`;return{text,by:by.length<=120?by:\"\",year:/^\\d{4}$/.test(year)?year:\"\",url:link};}return null;}function Medal(){return /*#__PURE__*/_jsxs(\"svg\",{viewBox:\"0 0 16 16\",fill:\"none\",\"aria-hidden\":\"true\",focusable:\"false\",children:[/*#__PURE__*/_jsx(\"circle\",{cx:\"8\",cy:\"10\",r:\"3.75\",stroke:\"currentColor\",strokeWidth:1.4}),/*#__PURE__*/_jsx(\"path\",{d:\"M5.75 6.9L4 2h3l1 3M10.25 6.9L12 2H9L8 5\",stroke:\"currentColor\",strokeWidth:1.4,strokeLinejoin:\"round\"})]});}function ArrowOut(){return /*#__PURE__*/_jsx(\"svg\",{viewBox:\"0 0 16 16\",fill:\"none\",\"aria-hidden\":\"true\",focusable:\"false\",children:/*#__PURE__*/_jsx(\"path\",{d:\"M5 11l6-6M6 5h5v5\",stroke:\"currentColor\",strokeWidth:1.5,strokeLinecap:\"round\",strokeLinejoin:\"round\"})});}function RowIcon({d}){return /*#__PURE__*/_jsx(\"svg\",{viewBox:\"0 0 20 20\",fill:\"none\",\"aria-hidden\":\"true\",focusable:\"false\",children:/*#__PURE__*/_jsx(\"path\",{d:d,stroke:\"currentColor\",strokeWidth:1.5,strokeLinecap:\"round\",strokeLinejoin:\"round\"})});}const MAIL=\"M3 5h14v10H3zM3.5 5.5L10 11l6.5-5.5\";const PHONE=\"M6.5 3.5h-2a1 1 0 0 0-1 1C3.5 11 9 16.5 15.5 16.5a1 1 0 0 0 1-1v-2l-3-1.5-1.5 1.5c-1.8-.8-3.7-2.7-4.5-4.5L8 7.5 6.5 3.5z\";const FORM=\"M6 3.5h8a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1v-12a1 1 0 0 1 1-1zM7.5 3v1.5h5V3M7.5 9h5M7.5 12h5\";const CAL=\"M3.5 5h13v11.5h-13zM3.5 8.5h13M7 3v3M13 3v3M7.5 12.5l1.8 1.8 3.4-3.6\";// Email and phone become tap targets. Anything that doesn't look like one is shown as plain text.\nfunction mailHref(raw){const s=raw.trim();return/^[^\\s@<>\"]+@[^\\s@<>\"]+\\.[^\\s@<>\"]+$/.test(s)?\"mailto:\"+s:\"\";}function telHref(raw){const digits=raw.replace(/[^0-9+]/g,\"\");return digits.replace(/\\D/g,\"\").length>=7?\"tel:\"+digits:\"\";}const SAMPLE_PERKS=\"Free planning help | A free concierge helps you pick the right room for your group. | https://example.com\\nGift cards | Good at every one of their places. | https://example.com\\nEmail list | Hear about tastings and classes first. | https://example.com\";const SAMPLE_PLACES=\"Their other place | Short North | https://example.com\\nAnother place | Dublin | https://example.com\\nA third place (opening 2027) | Bexley | https://example.com\";/**\n * Logo, perks and other places for the restaurant group pages. Bind each control to its Groups field.\n *\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight auto\n * @framerIntrinsicWidth 560\n * @framerIntrinsicHeight 120\n */export default function GroupKit(props){const{mode=\"logo\",surface=\"dark\",logoHeight=44,maxLogoWidth=220,logoAlign=\"left\",spaceBelow=0,moreLabel=\"Learn more\",style}=props;const name=clean(props.name,200);const target=RenderTarget.current();const isCanvas=target===RenderTarget.canvas||target===RenderTarget.thumbnail;let body=null;if(mode===\"logo\"&&props.banner){const H=Math.max(80,Math.min(600,Number(props.bannerHeight)||260));const R=Math.max(0,Math.min(64,Number(props.bannerRadius??34)));const v=Math.max(0,Math.min(90,Number(props.veil??58)))/100;const lh=Math.max(16,Math.min(200,Number(logoHeight)||44));const lw=Math.max(40,Math.min(800,Number(maxLogoWidth)||220));// Banner Photo (the CMS \"Banner Photo\" field) wins; without it, the automatic pick below.\nconst photo=toImg(props.bannerPhoto)||pickBanner(props.bannerPhotos,props.bannerCover,String(props.bannerPick||\"second\"));const src=photo?bannerSrc(photo):\"\";const white=toImg(props.logoOnDark);const dark=toImg(props.logo);const label=name?`${name} logo`:\"Logo\";const a1=Math.max(0,v-.12).toFixed(2);const a2=Math.min(.95,v+.1).toFixed(2);const veilBg=`radial-gradient(ellipse 55% 75% at 50% 50%, rgba(15, 15, 15, 0.2) 0%, rgba(15, 15, 15, 0) 70%), linear-gradient(180deg, rgba(15, 15, 15, ${a1}) 0%, rgba(15, 15, 15, ${a2}) 100%)`;const logoImg=(i,alt,maxH,maxW)=>{const box=fitLogo(ratioOf(i.src,i.srcSet),maxH,maxW);return /*#__PURE__*/_jsx(\"img\",{src:i.src,srcSet:i.srcSet||undefined,sizes:i.srcSet?`${box?box.w:maxW}px`:undefined,alt:alt,loading:\"eager\",decoding:\"async\",width:box?box.w:undefined,height:box?box.h:undefined,style:box?{width:box.w,height:box.h,maxWidth:\"100%\"}:{height:maxH,width:\"auto\",maxWidth:maxW}});};let logoEl=null;if(white)logoEl=logoImg(white,white.alt||label,lh,lw);else if(dark){// Only a dark logo: it sits on a soft off-white plate, so it reads on any photo.\nconst pad=Math.round(lh*.16);logoEl=/*#__PURE__*/_jsx(\"span\",{className:\"cesg-ban-plate\",style:{padding:`${pad}px ${pad+8}px`},children:logoImg(dark,dark.alt||label,Math.round(lh*.74),Math.round(lw*.82))});}else if(name||isCanvas){logoEl=/*#__PURE__*/_jsx(\"span\",{className:\"cesg-tile\",role:\"img\",\"aria-label\":label,style:{width:64,height:64,background:BRAND.recessed,border:`1px solid ${BRAND.edge}`,color:BRAND.off},children:/*#__PURE__*/_jsx(\"span\",{className:\"cesg-initials\",\"aria-hidden\":\"true\",children:initials(name||\"Group\")})});}body=/*#__PURE__*/_jsxs(\"div\",{className:\"cesg-ban\",style:{height:H,[\"--cesg-r\"]:`${R}px`},children:[src?/*#__PURE__*/_jsx(\"img\",{className:\"cesg-ban-img\",src:src,alt:\"\",\"aria-hidden\":\"true\",loading:\"eager\",decoding:\"async\",draggable:false,style:photo&&photo.pos?{objectPosition:photo.pos}:undefined}):null,/*#__PURE__*/_jsx(\"div\",{className:\"cesg-ban-veil\",\"aria-hidden\":\"true\",style:{background:veilBg}}),logoEl?/*#__PURE__*/_jsx(\"div\",{className:\"cesg-ban-logo\",children:logoEl}):null]});}else if(mode===\"logo\"){const h=Math.max(16,Math.min(160,Number(logoHeight)||44));const w=Math.max(40,Math.min(600,Number(maxLogoWidth)||220));const dark=imgSrc(props.logo);const white=imgSrc(props.logoOnDark);const label=name?`${name} logo`:\"Logo\";const img=(src,alt,maxH,maxW)=>/*#__PURE__*/_jsx(\"img\",{src:src,alt:alt,loading:\"eager\",decoding:\"async\",style:{height:maxH,width:\"auto\",maxWidth:maxW,objectFit:\"contain\"}});const pad=Math.round(h*.2);if(surface===\"auto\"){// Both copies are server-rendered; CSS shows one. Lazy, so the hidden copy never downloads.\nconst lazy=(src,alt,maxH)=>/*#__PURE__*/_jsx(\"img\",{src:src,alt:alt,loading:\"lazy\",decoding:\"async\",style:{height:maxH,width:\"auto\",maxWidth:w,objectFit:\"contain\"}});const onTile=(bg,src,alt)=>/*#__PURE__*/_jsx(\"span\",{className:\"cesg-tile\",style:{background:bg,padding:`${pad}px ${pad+5}px`},children:lazy(src,alt,h-2*pad)});const forLight=dark?lazy(dark,imgAlt(props.logo,label),h):white?onTile(BRAND.ground,white,imgAlt(props.logoOnDark,label)):null;const forDark=white?lazy(white,imgAlt(props.logoOnDark,label),h):dark?onTile(BRAND.page,dark,imgAlt(props.logo,label)):null;if(forLight||forDark)body=/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"div\",{className:\"cesg-logo cesg-th-l\",children:forLight}),/*#__PURE__*/_jsx(\"div\",{className:\"cesg-logo cesg-th-d\",children:forDark})]});}else if(surface===\"dark\"){if(white)body=img(white,imgAlt(props.logoOnDark,label),h,w);else if(dark)body=/*#__PURE__*/_jsx(\"span\",{className:\"cesg-tile\",style:{background:BRAND.page,padding:`${pad}px ${pad+5}px`},children:img(dark,imgAlt(props.logo,label),h-2*pad,w)});}else{// Light surfaces follow the theme, so the logo always gets a fixed tile.\nif(dark)body=/*#__PURE__*/_jsx(\"span\",{className:\"cesg-tile\",style:{background:BRAND.page,border:`1px solid ${TK.outline}`,padding:`${pad}px ${pad+5}px`},children:img(dark,imgAlt(props.logo,label),h-2*pad,w)});else if(white)body=/*#__PURE__*/_jsx(\"span\",{className:\"cesg-tile\",style:{background:BRAND.ground,padding:`${pad}px ${pad+5}px`},children:img(white,imgAlt(props.logoOnDark,label),h-2*pad,w)});}if(!body&&(name||isCanvas)){body=/*#__PURE__*/_jsx(\"span\",{className:\"cesg-tile\",role:\"img\",\"aria-label\":label,style:{width:h,height:h,background:surface===\"dark\"?BRAND.recessed:BRAND.ground,border:`1px solid ${surface===\"dark\"?BRAND.edge:TK.edge}`,color:BRAND.off},children:/*#__PURE__*/_jsx(\"span\",{className:\"cesg-initials\",\"aria-hidden\":\"true\",children:initials(name||\"Group\")})});}if(body)body=/*#__PURE__*/_jsx(\"div\",{className:\"cesg-logo\",children:body});}else if(mode===\"perks\"){const rows=lines(props.lines||(isCanvas?SAMPLE_PERKS:\"\"));if(rows.length){body=/*#__PURE__*/_jsx(\"ul\",{className:\"cesg-perks\",children:rows.map(([title,text=\"\",url=\"\"],i)=>{const link=safeUrl(url);return /*#__PURE__*/_jsxs(\"li\",{className:\"cesg-perk\",children:[/*#__PURE__*/_jsx(\"p\",{className:\"cesg-perk-title\",children:title}),text?/*#__PURE__*/_jsx(\"p\",{className:\"cesg-perk-text\",children:text}):null,link?/*#__PURE__*/_jsxs(\"a\",{className:\"cesg-more\",href:link,target:\"_blank\",rel:\"noopener\",children:[/*#__PURE__*/_jsx(\"span\",{children:clean(moreLabel,40)||\"Learn more\"}),/*#__PURE__*/_jsx(ArrowOut,{}),/*#__PURE__*/_jsxs(\"span\",{style:SR_ONLY,children:[\" \",\"about \",title,\" (opens in a new tab)\"]})]}):null]},i);})});}}else if(mode===\"places\"){const rows=lines(props.lines||(isCanvas?SAMPLE_PLACES:\"\"));if(rows.length){body=/*#__PURE__*/_jsx(\"ul\",{className:\"cesg-places\",children:rows.map(([placeName,area=\"\",url=\"\"],i)=>{const link=safeUrl(url);const inner=/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsxs(\"span\",{className:\"cesg-place-text\",children:[/*#__PURE__*/_jsx(\"span\",{className:\"cesg-place-name\",children:placeName}),area?/*#__PURE__*/_jsx(\"span\",{className:\"cesg-place-area\",children:area}):null]}),link?/*#__PURE__*/_jsx(\"span\",{className:\"cesg-place-out\",children:/*#__PURE__*/_jsx(ArrowOut,{})}):null]});return /*#__PURE__*/_jsx(\"li\",{className:\"cesg-place\",children:link?/*#__PURE__*/_jsxs(\"a\",{className:\"cesg-place-in\",href:link,target:\"_blank\",rel:\"noopener\",children:[inner,/*#__PURE__*/_jsx(\"span\",{style:SR_ONLY,children:\" (their website, opens in a new tab)\"})]}):/*#__PURE__*/_jsx(\"div\",{className:\"cesg-place-in\",children:inner})},i);})});}}else if(mode===\"contact\"){const email=clean(props.email,200);const phone=clean(props.phone,60);const form=safeUrl(clean(props.formLink,2e3));const page=safeUrl(clean(props.eventsPage,2e3));const rows=[];const row=(key,d,label,href,out,sr)=>href?/*#__PURE__*/_jsxs(\"a\",{className:\"cesg-row\",href:href,target:out?\"_blank\":undefined,rel:out?\"noopener\":undefined,children:[/*#__PURE__*/_jsx(\"span\",{className:\"cesg-row-icon\",children:/*#__PURE__*/_jsx(RowIcon,{d:d})}),/*#__PURE__*/_jsx(\"span\",{className:\"cesg-row-label\",children:label}),out?/*#__PURE__*/_jsx(\"span\",{className:\"cesg-row-out\",children:/*#__PURE__*/_jsx(ArrowOut,{})}):null,sr?/*#__PURE__*/_jsx(\"span\",{style:SR_ONLY,children:sr}):null]},key):/*#__PURE__*/_jsxs(\"div\",{className:\"cesg-row\",children:[/*#__PURE__*/_jsx(\"span\",{className:\"cesg-row-icon\",children:/*#__PURE__*/_jsx(RowIcon,{d:d})}),/*#__PURE__*/_jsx(\"span\",{className:\"cesg-row-label\",children:label})]},key);const sample=isCanvas&&!email&&!phone&&!form&&!page;if(email||sample)rows.push(row(\"email\",MAIL,email||\"events@example.com\",email?mailHref(email):\"\",false,email?` (email ${name||\"the group\"})`:\"\"));if(phone)rows.push(row(\"phone\",PHONE,phone,telHref(phone),false,` (call ${name||\"the group\"})`));if(form||sample)rows.push(row(\"form\",FORM,clean(props.formLabel,60)||\"Send a request\",form,true,\" (opens in a new tab)\"));if(page)rows.push(row(\"page\",CAL,clean(props.pageLabel,60)||\"Their private events page\",page,true,\" (opens in a new tab)\"));const none=!email&&!phone&&!form&&!sample;const fb=clean(props.fallback,300);if(rows.length||none&&fb){body=/*#__PURE__*/_jsxs(\"div\",{className:\"cesg-contact\",children:[rows,none&&fb?/*#__PURE__*/_jsx(\"p\",{className:\"cesg-fallback\",children:fb}):null]});}}else if(mode===\"honor\"){const sample=\"Best Patio, readers' poll | Columbus Monthly | 2026 | https://example.com | readers_poll\";const h=topHonor(props.lines||(isCanvas?sample:\"\"),clean(props.venueWebsite,2e3));if(h){const href=clean(props.venueLink,2e3);const meta=[h.by,h.year&&!h.text.includes(h.year)?h.year:\"\"].filter(Boolean).join(\" \\xb7 \");const line=/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(Medal,{}),/*#__PURE__*/_jsxs(\"span\",{className:\"cesg-honor-text\",children:[h.text,meta?` \\xb7 ${meta}`:\"\"]})]});body=/*#__PURE__*/_jsxs(\"div\",{className:\"cesg-honor\",children:[href?/*#__PURE__*/_jsx(\"a\",{className:\"cesg-honor-name\",href:href,children:name||\"This place\"}):/*#__PURE__*/_jsx(\"span\",{className:\"cesg-honor-name\",children:name||\"This place\"}),h.url?/*#__PURE__*/_jsxs(\"a\",{className:\"cesg-honor-acc\",href:h.url,target:\"_blank\",rel:\"noopener nofollow\",children:[line,/*#__PURE__*/_jsx(\"span\",{style:SR_ONLY,children:\" (source, opens in a new tab)\"})]}):/*#__PURE__*/_jsx(\"span\",{className:\"cesg-honor-acc\",children:line})]});}}if(!body)return null;return /*#__PURE__*/_jsxs(\"div\",{className:\"cesg\",\"data-mode\":mode,\"data-banner\":mode===\"logo\"&&props.banner?\"\":undefined,\"data-align\":mode===\"logo\"?logoAlign:undefined,style:{width:\"100%\",...mode===\"logo\"&&Number(spaceBelow)>0?{paddingBottom:Math.min(120,Number(spaceBelow))}:{},...style},children:[/*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:CSS}}),body]});}// Titles double as Framer's stored control keys, so each title camel-cases to its prop name.\naddPropertyControls(GroupKit,{mode:{type:ControlType.Enum,title:\"Mode\",options:[\"logo\",\"perks\",\"places\",\"contact\",\"honor\"],optionTitles:[\"Logo\",\"Perks\",\"Places\",\"Contact\",\"Honor\"],defaultValue:\"logo\"},logo:{type:ControlType.ResponsiveImage,title:\"Logo\",hidden:p=>p.mode!==\"logo\"},logoOnDark:{type:ControlType.ResponsiveImage,title:\"Logo On Dark\",hidden:p=>p.mode!==\"logo\"},name:{type:ControlType.String,title:\"Name\",defaultValue:\"\",placeholder:\"Group name\"},surface:{type:ControlType.Enum,title:\"Surface\",options:[\"dark\",\"light\",\"auto\"],optionTitles:[\"Dark\",\"Light\",\"Auto\"],defaultValue:\"dark\",displaySegmentedControl:true,hidden:p=>p.mode!==\"logo\"},logoHeight:{type:ControlType.Number,title:\"Logo Height\",defaultValue:44,min:16,max:200,step:1,unit:\"px\",hidden:p=>p.mode!==\"logo\"},maxLogoWidth:{type:ControlType.Number,title:\"Max Logo Width\",defaultValue:220,min:40,max:800,step:1,unit:\"px\",hidden:p=>p.mode!==\"logo\"},logoAlign:{type:ControlType.Enum,title:\"Logo Align\",options:[\"left\",\"center\"],optionTitles:[\"Left\",\"Center\"],defaultValue:\"left\",displaySegmentedControl:true,hidden:p=>p.mode!==\"logo\"},spaceBelow:{type:ControlType.Number,title:\"Space Below\",defaultValue:0,min:0,max:120,step:1,unit:\"px\",hidden:p=>p.mode!==\"logo\"},banner:{type:ControlType.Boolean,title:\"Banner\",defaultValue:false,enabledTitle:\"Yes\",disabledTitle:\"No\",description:\"Venue header: a veiled photo of the place with the logo on top.\",hidden:p=>p.mode!==\"logo\"},bannerPhotos:{type:ControlType.Array,title:\"Banner Photos\",control:{type:ControlType.Object,controls:{photo:{type:ControlType.ResponsiveImage,title:\"photo\"}}},hidden:p=>p.mode!==\"logo\"||!p.banner},bannerCover:{type:ControlType.ResponsiveImage,title:\"Banner Cover\",hidden:p=>p.mode!==\"logo\"||!p.banner},bannerPhoto:{type:ControlType.ResponsiveImage,title:\"Banner Photo\",description:\"Optional. Bind the CMS Banner Photo here. When it is set it is the banner; when it is empty, Banner Pick chooses from the gallery.\",hidden:p=>p.mode!==\"logo\"||!p.banner},bannerPick:{type:ControlType.Enum,title:\"Banner Pick\",options:[\"second\",\"last\",\"cover\"],optionTitles:[\"Second photo\",\"Last photo\",\"Cover\"],defaultValue:\"second\",description:\"Second photo: the first gallery photo that isn't the cover (landscape first).\",hidden:p=>p.mode!==\"logo\"||!p.banner},bannerHeight:{type:ControlType.Number,title:\"Banner Height\",defaultValue:260,min:80,max:600,step:1,unit:\"px\",hidden:p=>p.mode!==\"logo\"||!p.banner},bannerRadius:{type:ControlType.Number,title:\"Banner Radius\",defaultValue:34,min:0,max:64,step:1,unit:\"px\",hidden:p=>p.mode!==\"logo\"||!p.banner},veil:{type:ControlType.Number,title:\"Veil\",defaultValue:58,min:0,max:90,step:1,unit:\"%\",description:\"Ground veil strength (top a bit lighter, bottom a bit darker).\",hidden:p=>p.mode!==\"logo\"||!p.banner},lines:{type:ControlType.String,title:\"Lines\",defaultValue:\"\",displayTextArea:true,description:\"Perks: Title | Text | URL. Places: Name | Neighborhood | URL. Honor: the Venues Accolades field. One per line.\",hidden:p=>p.mode===\"logo\"||p.mode===\"contact\"},moreLabel:{type:ControlType.String,title:\"More Label\",defaultValue:\"Learn more\",hidden:p=>p.mode!==\"perks\"},email:{type:ControlType.String,title:\"Email\",defaultValue:\"\",hidden:p=>p.mode!==\"contact\"},phone:{type:ControlType.String,title:\"Phone\",defaultValue:\"\",hidden:p=>p.mode!==\"contact\"},formLink:{type:ControlType.Link,title:\"Form Link\",hidden:p=>p.mode!==\"contact\"},eventsPage:{type:ControlType.Link,title:\"Events Page\",hidden:p=>p.mode!==\"contact\"},formLabel:{type:ControlType.String,title:\"Form Label\",defaultValue:\"Send a request\",hidden:p=>p.mode!==\"contact\"},pageLabel:{type:ControlType.String,title:\"Page Label\",defaultValue:\"Their private events page\",hidden:p=>p.mode!==\"contact\"},fallback:{type:ControlType.String,title:\"Fallback\",defaultValue:\"Each place books its own parties. Ask on its page below.\",displayTextArea:true,hidden:p=>p.mode!==\"contact\"},venueWebsite:{type:ControlType.Link,title:\"Venue Website\",hidden:p=>p.mode!==\"honor\"},venueLink:{type:ControlType.Link,title:\"Venue Link\",hidden:p=>p.mode!==\"honor\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"GroupKit\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"any\",\"framerSupportedLayoutHeight\":\"auto\",\"framerIntrinsicWidth\":\"560\",\"framerIntrinsicHeight\":\"120\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./GroupKit.map"],"mappings":"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"}