{"version":3,"file":"TalentGrid.D91gl3o7.mjs","names":["React.useState","React.useMemo","_Fragment"],"sources":["https:/framerusercontent.com/modules/Z5tcUlHiirjggNh7Bk4a/AEQkiAuVXPLzVkFg358M/TalentGrid.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import*as React from\"react\";import{addPropertyControls,ControlType}from\"framer\";const PROJECTS_FALLBACK=[{slug:\"elizabeth-stanley\",Performer:\"Elizabeth Stanley\",\"Show 1\":\"Tony Nominee \\xb7 Jagged Little Pill\",\"Main Image\":\"https://framerusercontent.com/images/UwBWFStxN2dXkPVBq9zy0FbHxE.jpg\",roles:[{photo:\"https://framerusercontent.com/images/tqIcag35nrnvufuthLuCv7a9EiQ.jpg\",show:\"Jagged Little Pill\",character:\"Mary Jane Healy\",year:\"2019\"}]},{slug:\"charity-angel-dawson\",Performer:\"Charity Ang\\xe9l Dawson\",\"Show 1\":\"Star of Waitress \\xb7 Broadway\",\"Main Image\":\"https://framerusercontent.com/images/kjSvmeCvrQwVtS1V0YLFBefiGk.jpg\",roles:[{photo:\"https://framerusercontent.com/images/u4sgWNbnPbZUejKLAv2LTeLkeYg.jpg\",show:\"Waitress\",character:\"Becky\",year:\"2021\"},{photo:\"https://framerusercontent.com/images/gmVe4EsoGzGyhDAu0nuNYcVYTiM.jpg\",show:\"& Juliet\",year:\"2024\"}]},{slug:\"mykal-kilgore\",Performer:\"Mykal Kilgore\",\"Show 1\":\"Grammy Nominee \\xb7 Broadway's Motown & Hair\",\"Main Image\":\"https://framerusercontent.com/images/uMPmtcelczjTZNQ09SWROWv6Ec.jpg\",roles:[{photo:\"https://framerusercontent.com/images/qpMbm2YF7yBNso7dbhAFNvXc69A.jpg\",show:\"Chicago\",character:\"Mary Sunshine\",year:\"2026\"}]},{slug:\"blaine-krauss\",Performer:\"Blaine Krauss\",\"Show 1\":\"The Cher Show \\xb7 Broadway\",\"Main Image\":\"https://framerusercontent.com/images/9TkD2gsNWHwLC8gkiNK8OT7G2k.jpeg\",roles:[{photo:\"https://framerusercontent.com/images/JKdteiWTJbat4Fb5qDg2wvAmEDs.jpg\",show:\"Ain't Too Proud\",year:\"2026\"}]},{slug:\"aj-shively\",Performer:\"AJ Shively\",\"Show 1\":\"Tony Nominee \\xb7 Paradise Square\",\"Main Image\":\"https://framerusercontent.com/images/joEgLYEpvByeHsWF7YqcqLVYQ.jpg\",roles:[{photo:\"https://framerusercontent.com/images/O6GNPcrpTi0LAtwxWjAvgzT00.jpg\",show:\"Paradise Square\",character:\"Owen Duignan\",year:\"2022\"},{photo:\"https://framerusercontent.com/images/uWi8DFBNFOlyxFeLWT9AukvUu0.jpg\",show:\"A Man of No Importance\",character:\"Robbie Fay\",year:\"2022\"}]},{slug:\"lilli-cooper\",Performer:\"Lilli Cooper\",\"Show 1\":\"Tony Nominee \\xb7 Tootsie\",\"Main Image\":\"https://framerusercontent.com/images/WTz3sSqfFqyyYZreh9qaxGTfjLU.jpeg\",roles:[{photo:\"https://framerusercontent.com/images/45abimo5KSan6Oazr9SXupx5M.jpg\",show:\"Spelling Bee\",character:\"Rona Lisa Peretti\",year:\"2025\"}]},{slug:\"jay-armstrong-johnson\",Performer:\"Jay Armstrong Johnson\",\"Show 1\":\"Star of Moulin Rouge \\xb7 National Tour\",\"Main Image\":\"https://framerusercontent.com/images/Og6B06tsBUGX07cF77dGdShM.jpg\",roles:[{photo:\"https://framerusercontent.com/images/Bdr0mcax4mHk47oTnB1NEWIA.jpg\",show:\"Moulin Rouge! The Musical\",character:\"Christian\",year:\"2025\"}]},{slug:\"jeanna-de-waal\",Performer:\"Jeanna de Waal\",\"Show 1\":\"Diana (Netflix & Broadway)\",\"Main Image\":\"https://framerusercontent.com/images/AaDZx6eOSur7MaqDCjNkq77mVM.jpg\",roles:[{photo:\"https://framerusercontent.com/images/zPByZupCreGj2eyb9ieRxB3Kg.jpg\",show:\"Diana\",character:\"Diana\",year:\"2021\"}]}];function usePrefersReducedMotion(){const[reduced,setReduced]=React.useState(false);React.useEffect(()=>{if(typeof window===\"undefined\"||!window.matchMedia)return;const mq=window.matchMedia(\"(prefers-reduced-motion: reduce)\");setReduced(mq.matches);const handler=e=>setReduced(e.matches);mq.addEventListener?.(\"change\",handler);return()=>mq.removeEventListener?.(\"change\",handler);},[]);return reduced;}const preloadedUrls=new Set;function preloadImage(url){if(!url||preloadedUrls.has(url))return;preloadedUrls.add(url);if(typeof window===\"undefined\")return;const img=new window.Image;img.decoding=\"async\";img.src=url;}function shuffleInPlace(arr){for(let i=arr.length-1;i>0;i--){const j=Math.floor(Math.random()*(i+1));[arr[i],arr[j]]=[arr[j],arr[i]];}return arr;}// Round-robin sample across category buckets — picks one from each\n// category in turn, then loops back, until `limit` is reached. Within\n// each bucket, items are shuffled so picks vary between renders.\nfunction pickCategoryBalanced(items,categoryField,limit){if(items.length===0||limit<=0)return[];const buckets=new Map;for(const item of items){const cat=String(item?.[categoryField]??\"_uncategorized\").trim()||\"_uncategorized\";if(!buckets.has(cat))buckets.set(cat,[]);buckets.get(cat).push(item);}for(const[,arr]of buckets)shuffleInPlace(arr);const order=shuffleInPlace(Array.from(buckets.keys()));const result=[];let pass=0;while(result.length<limit){let added=0;for(const cat of order){const arr=buckets.get(cat);if(pass<arr.length){result.push(arr[pass]);added++;if(result.length>=limit)break;}}if(added===0)break;pass++;}return result;}function PerformerCard(props){const{item,cardHeight,radius,nameField,creditField,imageField,slugField,rolesField,linkBase,fallback,cycleMs,enableHoverCycle,reducedMotion,aboveTheFold}=props;const getField=key=>{if(!item)return\"\";if(item[key])return String(item[key]);const lower=key.toLowerCase();for(const k of Object.keys(item)){if(k.toLowerCase()===lower)return String(item[k]);}return\"\";};const name=getField(nameField);const credit=getField(creditField);const mainImage=getField(imageField)||fallback;const slug=getField(slugField);const href=slug?`${linkBase}${slug}`:\"#\";const roles=Array.isArray(item[rolesField])?item[rolesField].filter(r=>r&&r.photo):[];const[hovered,setHovered]=React.useState(false);const[roleIdx,setRoleIdx]=React.useState(0);const[activeLoaded,setActiveLoaded]=React.useState(false);React.useEffect(()=>{if(roles.length===0)return;roles.forEach(r=>preloadImage(r.photo));},[roles]);React.useEffect(()=>{if(!enableHoverCycle||reducedMotion||!hovered||roles.length===0){return;}const t=window.setInterval(()=>setRoleIdx(i=>roles.length>0?(i+1)%roles.length:0),Math.max(150,cycleMs));return()=>window.clearInterval(t);},[hovered,roles.length,cycleMs,enableHoverCycle,reducedMotion]);React.useEffect(()=>{if(!hovered){setRoleIdx(0);setActiveLoaded(false);}},[hovered]);React.useEffect(()=>{setActiveLoaded(false);if(enableHoverCycle&&hovered&&roles.length>0&&typeof window!==\"undefined\"){const next=roles[roleIdx];if(next&&next.photo){const probe=new window.Image;probe.src=next.photo;if(probe.complete&&probe.naturalWidth>0){setActiveLoaded(true);}}}},[roleIdx,hovered,roles,enableHoverCycle]);const activeRole=enableHoverCycle&&!reducedMotion&&hovered&&roles.length>0?roles[roleIdx]:null;const captionLines=[];if(activeRole){if(activeRole.character)captionLines.push(activeRole.character);if(activeRole.show){captionLines.push(activeRole.year?`${activeRole.show} \\xb7 ${activeRole.year}`:activeRole.show);}}return /*#__PURE__*/_jsxs(\"a\",{href:href,onMouseEnter:()=>setHovered(true),onMouseLeave:()=>setHovered(false),style:{display:\"flex\",flexDirection:\"column\",gap:\"12px\",textDecoration:\"none\",color:\"inherit\",cursor:\"pointer\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{width:\"100%\",aspectRatio:\"5 / 4\",position:\"relative\",overflow:\"hidden\",borderRadius:`${radius}px`,backgroundColor:\"rgb(229,229,229)\"},children:[mainImage&&/*#__PURE__*/_jsx(\"img\",{src:mainImage,alt:name||\"Performer\",loading:aboveTheFold?\"eager\":\"lazy\",decoding:\"async\",// @ts-ignore\nfetchpriority:aboveTheFold?\"high\":\"auto\",style:{position:\"absolute\",top:0,left:0,width:\"100%\",height:\"100%\",objectFit:\"cover\",objectPosition:\"center top\",display:\"block\"}}),activeRole&&activeRole.photo&&/*#__PURE__*/_jsx(\"img\",{src:activeRole.photo,alt:activeRole.character||\"Role photo\",loading:\"eager\",decoding:\"async\",onLoad:()=>setActiveLoaded(true),style:{position:\"absolute\",top:0,left:0,width:\"100%\",height:\"100%\",objectFit:\"cover\",objectPosition:\"center top\",display:\"block\",opacity:activeLoaded?1:0,transition:\"opacity 80ms ease-out\"}},activeRole.photo),captionLines.length>0&&activeLoaded&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",left:\"12px\",right:\"12px\",bottom:\"12px\",display:\"flex\",flexDirection:\"column\",gap:\"2px\",background:\"rgba(0,0,0,0.72)\",color:\"white\",padding:\"8px 12px\",borderRadius:\"999px\",fontFamily:\"'Plus Jakarta Sans', system-ui, sans-serif\",letterSpacing:\"0.04em\",textTransform:\"uppercase\",fontSize:\"11px\",lineHeight:1.3,fontWeight:600,opacity:1,animation:\"talentgrid-fade 120ms ease-out forwards\"},children:captionLines.map((line,i)=>/*#__PURE__*/_jsx(\"span\",{style:{overflow:\"hidden\",whiteSpace:\"nowrap\",textOverflow:\"ellipsis\",opacity:i===0?1:.8},children:line},i))}),/*#__PURE__*/_jsx(\"style\",{children:`\n                    @keyframes talentgrid-fade {\n                        from { opacity: 0; }\n                        to { opacity: 1; }\n                    }\n                `})]}),/*#__PURE__*/_jsx(\"div\",{style:{fontFamily:\"'Plus Jakarta Sans', system-ui, sans-serif\",fontWeight:600,fontSize:\"1.25rem\",lineHeight:1.4,letterSpacing:\"-0.03em\",color:\"rgb(0,0,0)\"},children:name}),credit&&/*#__PURE__*/_jsx(\"div\",{style:{fontFamily:\"'Plus Jakarta Sans', system-ui, sans-serif\",fontWeight:600,fontSize:\"0.75rem\",lineHeight:1.3,letterSpacing:\"-0.02em\",color:\"rgb(82,82,82)\"},children:credit})]});}/**\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight any\n * @framerIntrinsicWidth 1080\n * @framerIntrinsicHeight 900\n */export default function TalentGrid(props){const{items=[],columns=0,cardHeight=380,gap=32,radius=4,limit=0,skip=0,nameField=\"Performer\",creditField=\"Show 1\",imageField=\"Main Image\",slugField=\"slug\",rolesField=\"roles\",categoryField=\"Category\",linkBase=\"/performers/\",fallback=\"\",cycleMs=2500,enableHoverCycle=true,shuffle=false,categoryBalanced=false,reshuffleKey=\"\"}=props;const reducedMotion=usePrefersReducedMotion();const sourceItems=items&&items.length>0?items:PROJECTS_FALLBACK;// Reshuffle on every mount, plus whenever reshuffleKey/sourceItems change.\n// useMemo with a randomized seed key forces a fresh pick per page-load.\nconst[seed,setSeed]=React.useState(0);React.useEffect(()=>{setSeed(s=>s+1);},[reshuffleKey,sourceItems.length]);const displayItems=React.useMemo(()=>{if(shuffle){const pool=skip>0?sourceItems.slice(skip):sourceItems.slice();const target=limit>0?limit:pool.length;if(categoryBalanced){return pickCategoryBalanced(pool,categoryField,target);}shuffleInPlace(pool);return target>0?pool.slice(0,target):pool;}const sliced=skip>0?sourceItems.slice(skip):sourceItems;return limit>0?sliced.slice(0,limit):sliced;// eslint-disable-next-line react-hooks/exhaustive-deps\n},[sourceItems,shuffle,categoryBalanced,categoryField,skip,limit,seed]);// When `columns` is set to a positive integer, lock to that column count\n// at desktop with stepped media-query fallbacks. Otherwise fall back to\n// auto-fit (legacy behavior — adapts purely on card minimum width).\nconst useFixedColumns=columns>=1&&columns<=6;const colsClass=useFixedColumns?`tg-cols-${columns}`:\"\";return /*#__PURE__*/_jsxs(_Fragment,{children:[useFixedColumns&&/*#__PURE__*/_jsx(\"style\",{children:`\n                    .tg-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }\n                    .tg-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }\n                    .tg-cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }\n                    .tg-cols-5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }\n                    .tg-cols-6 { grid-template-columns: repeat(6, minmax(0, 1fr)); }\n                    @media (max-width: 1100px) {\n                        .tg-cols-4, .tg-cols-5, .tg-cols-6 {\n                            grid-template-columns: repeat(3, minmax(0, 1fr));\n                        }\n                    }\n                    @media (max-width: 860px) {\n                        .tg-cols-3, .tg-cols-4, .tg-cols-5, .tg-cols-6 {\n                            grid-template-columns: repeat(2, minmax(0, 1fr));\n                        }\n                    }\n                    @media (max-width: 540px) {\n                        .tg-cols-2, .tg-cols-3, .tg-cols-4, .tg-cols-5, .tg-cols-6 {\n                            grid-template-columns: 1fr;\n                        }\n                    }\n                `}),/*#__PURE__*/_jsx(\"div\",{className:colsClass,style:useFixedColumns?{display:\"grid\",gap:`${gap}px`,width:\"100%\"}:{display:\"grid\",gridTemplateColumns:`repeat(auto-fit, minmax(min(260px, 100%), 1fr))`,gap:`${gap}px`,width:\"100%\"},children:displayItems.map((item,idx)=>/*#__PURE__*/_jsx(PerformerCard,{item:item,cardHeight:cardHeight,radius:radius,nameField:nameField,creditField:creditField,imageField:imageField,slugField:slugField,rolesField:rolesField,linkBase:linkBase,fallback:fallback,cycleMs:cycleMs,enableHoverCycle:enableHoverCycle,reducedMotion:reducedMotion,aboveTheFold:idx<8},item.id||item.slug||idx))})]});}addPropertyControls(TalentGrid,{items:{type:ControlType.Array,title:\"Performers\",control:{type:ControlType.Object,controls:{Performer:{type:ControlType.String,defaultValue:\"\"},\"Show 1\":{type:ControlType.String,defaultValue:\"\"},\"Main Image\":{type:ControlType.String,defaultValue:\"\"},slug:{type:ControlType.String,defaultValue:\"\"}}}},columns:{type:ControlType.Number,title:\"Columns\",defaultValue:0,min:0,max:6,step:1,displayStepper:true,description:\"0 = auto-fit responsive. 1–6 = lock to that count at desktop (steps down on narrower viewports).\"},cardHeight:{type:ControlType.Number,title:\"Photo height\",defaultValue:380,min:200,max:600,step:10,unit:\"px\"},gap:{type:ControlType.Number,title:\"Gap\",defaultValue:32,min:8,max:80,step:2,unit:\"px\"},radius:{type:ControlType.Number,title:\"Photo radius\",defaultValue:4,min:0,max:40,step:1,unit:\"px\"},limit:{type:ControlType.Number,title:\"Limit (0 = all)\",defaultValue:0,min:0,max:80,step:1},skip:{type:ControlType.Number,title:\"Skip\",defaultValue:0,min:0,max:80,step:1},shuffle:{type:ControlType.Boolean,title:\"Shuffle\",defaultValue:false,description:\"Pick randomly from the whole bound list each render. Combine with Limit to get N random artists from the full roster.\"},categoryBalanced:{type:ControlType.Boolean,title:\"Balance by category\",defaultValue:false,description:\"When Shuffle is on, round-robin across categories so each render shows a mix instead of clustering one type.\"},categoryField:{type:ControlType.String,title:\"Category field\",defaultValue:\"Category\"},reshuffleKey:{type:ControlType.String,title:\"Reshuffle key\",defaultValue:\"\",description:\"Bump this string to force a re-shuffle without a code change.\"},nameField:{type:ControlType.String,title:\"Name field\",defaultValue:\"Performer\"},creditField:{type:ControlType.String,title:\"Credit field\",defaultValue:\"Show 1\"},imageField:{type:ControlType.String,title:\"Image field\",defaultValue:\"Main Image\"},slugField:{type:ControlType.String,title:\"Slug field\",defaultValue:\"slug\"},rolesField:{type:ControlType.String,title:\"Roles field\",defaultValue:\"roles\"},linkBase:{type:ControlType.String,title:\"Link prefix\",defaultValue:\"/performers/\"},fallback:{type:ControlType.String,title:\"Fallback URL\",defaultValue:\"\"},cycleMs:{type:ControlType.Number,title:\"Cycle (ms)\",defaultValue:2500,min:150,max:5e3,step:50},enableHoverCycle:{type:ControlType.Boolean,title:\"Hover cycle\",defaultValue:true}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"TalentGrid\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"any\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"any\",\"framerIntrinsicHeight\":\"900\",\"framerIntrinsicWidth\":\"1080\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./TalentGrid.map"],"mappings":"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"}