{"version":3,"file":"CourseGridExplorer.p6mLL784.mjs","names":["useState","useRef","useMemo","p","useCallback","_Fragment","u"],"sources":["https:/framerusercontent.com/modules/RQxIdoxcJttBAedP1SIc/YWow4PXftX5gq7JzWYjy/CourseGridExplorer.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{useEffect,useMemo,useState,useRef,useCallback}from\"react\";import{addPropertyControls,ControlType}from\"framer\";/* ── GA4 Helper ──────────────────────────────────────────────────── */function sendGAEvent(eventName,params){try{if(typeof window!==\"undefined\"&&typeof window.gtag===\"function\"){window.gtag(\"event\",eventName,params);}}catch{// silently ignore\n}}/**\n * Courses Grid Explorer\n *\n * @framerIntrinsicWidth 1200\n * @framerIntrinsicHeight 600\n *\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n */export default function CoursesGridExplorer(props){const{workerUrl=\"https://coded-landingpage.tools-c81.workers.dev\",apiBaseUrl=\"https://n8n.joincoded.com/webhook-test\",perPage=8,primaryColor=\"#1996F0\",navyColor=\"#0C1B33\",fontFamily,gaTrackingId=\"\"}=props;/* ── Data state ──────────────────────────────────────────────── */const[courses,setCourses]=useState([]);const[loading,setLoading]=useState(true);const[error,setError]=useState(null);/* ── Filter state ────────────────────────────────────────────── */const[query,setQuery]=useState(\"\");const[selectedSection,setSelectedSection]=useState(\"all\");const[selectedTargets,setSelectedTargets]=useState([]);const[maxHours,setMaxHours]=useState(300);const[showFilters,setShowFilters]=useState(false);/* ── Pagination ──────────────────────────────────────────────── */const[currentPage,setCurrentPage]=useState(1);const gridRef=useRef(null);/* ── Card hover / Modal ──────────────────────────────────────── */const[hoveredId,setHoveredId]=useState(null);const[activeCourse,setActiveCourse]=useState(null);const[requestName,setRequestName]=useState(\"\");const[requestCompany,setRequestCompany]=useState(\"\");const[requestEmail,setRequestEmail]=useState(\"\");const[honeypot,setHoneypot]=useState(\"\");const[requestStatus,setRequestStatus]=useState(\"idle\");const[requestMessage,setRequestMessage]=useState(\"\");/* ── Initialize GA4 dynamically (optional, as fallback) ──────── */useEffect(()=>{if(!gaTrackingId)return;if(typeof window.gtag===\"function\")return;const script=document.createElement(\"script\");script.async=true;script.src=`https://www.googletagmanager.com/gtag/js?id=${gaTrackingId}`;document.head.appendChild(script);window.dataLayer=window.dataLayer||[];window.gtag=function(){window.dataLayer.push(arguments);};window.gtag(\"js\",new Date);window.gtag(\"config\",gaTrackingId);},[gaTrackingId]);/* ── Fetch ───────────────────────────────────────────────────── */useEffect(()=>{let cancelled=false;async function load(){setLoading(true);setError(null);try{const base=workerUrl.trim().replace(/\\/+$/,\"\");if(!base)throw new Error(\"Missing Worker URL\");const rows=await fetchAllCourses(base);if(!cancelled)setCourses(rows);}catch(e){if(!cancelled){setCourses([]);setError(String(e?.message||e||\"Failed to load courses\"));}}finally{if(!cancelled)setLoading(false);}}load();return()=>{cancelled=true;};},[workerUrl]);/* ── Derived data ────────────────────────────────────────────── */const sectionOptions=useMemo(()=>[\"all\",...uniqueStrings(courses.flatMap(c=>c.sections))],[courses]);const targetOptions=useMemo(()=>uniqueStrings(courses.flatMap(c=>c.targetAudience)),[courses]);const preHoursFiltered=useMemo(()=>{const tokens=normalize(query).split(/\\s+/).filter(Boolean);return courses.filter(c=>{if(selectedSection!==\"all\"&&!c.sections.includes(selectedSection))return false;if(selectedTargets.length>0&&!selectedTargets.some(t=>c.targetAudience.includes(t)))return false;if(!tokens.length)return true;const haystack=normalize([c.courseTitle,c.description,c.sections.join(\" \"),c.targetAudience.join(\" \"),c.duration].join(\" \"));return tokens.every(t=>haystack.includes(t));});},[courses,query,selectedSection,selectedTargets]);const hoursRange=useMemo(()=>{const maxes=preHoursFiltered.map(c=>parseDurationHours(c.duration).max).filter(v=>Number.isFinite(v));if(!maxes.length)return{min:1,max:1,available:false};return{min:Math.max(1,Math.min(...maxes)),max:Math.max(1,Math.max(...maxes)),available:true};},[preHoursFiltered]);useEffect(()=>{setMaxHours(p=>{if(!hoursRange.available)return p;return Math.min(Math.max(p,hoursRange.min),hoursRange.max);});},[hoursRange]);const filtered=useMemo(()=>{const items=preHoursFiltered.filter(c=>{const h=parseDurationHours(c.duration);if(!Number.isFinite(h.max))return true;return h.max<=maxHours;});return[...items].sort((a,b)=>{if(a.rank!==null&&b.rank!==null)return a.rank-b.rank;if(a.rank!==null)return-1;if(b.rank!==null)return 1;return a.sourceIndex-b.sourceIndex;});},[preHoursFiltered,maxHours]);/* ── Pagination logic ────────────────────────────────────────── */const totalPages=Math.max(1,Math.ceil(filtered.length/perPage));useEffect(()=>{setCurrentPage(1);},[query,selectedSection,selectedTargets,maxHours]);const pageCourses=useMemo(()=>filtered.slice((currentPage-1)*perPage,currentPage*perPage),[filtered,currentPage,perPage]);const goToPage=useCallback(page=>{setCurrentPage(Math.max(1,Math.min(page,totalPages)));},[totalPages]);/* ── Request submit ──────────────────────────────────────────── */async function submitRequest(){const name=requestName.trim(),company=requestCompany.trim(),email=requestEmail.trim();if(!name||!company||!email||!isValidEmail(email)){setRequestStatus(\"error\");setRequestMessage(\"Enter name, company, and a valid email.\");return;}if(!activeCourse)return;const catalogId=activeCourse.recordId||\"\";if(!catalogId){setRequestStatus(\"error\");setRequestMessage(\"This course has no linked PDF yet.\");return;}setRequestStatus(\"sending\");setRequestMessage(\"\");try{const base=apiBaseUrl.trim().replace(/\\/+$/,\"\");if(!base)throw new Error(\"Missing API base URL\");const payload={name,email,company,catalogId,source:\"Framer-Course-Explorer\"};// Honeypot — if filled by a bot, n8n workflow silently accepts but skips send\nif(honeypot){payload._hp=honeypot;}const res=await fetch(`${base}/catalogdownload`,{method:\"POST\",headers:{\"Content-Type\":\"application/json\"},body:JSON.stringify(payload)});if(!res.ok)throw new Error(`Request failed (${res.status})`);setRequestStatus(\"sent\");setRequestMessage(\"Request sent! We'll be in touch shortly.\");/* ── GA4: Track successful form submission ────────────── */sendGAEvent(\"course_request_submitted\",{course_title:activeCourse.courseTitle,course_id:activeCourse.recordId,course_section:activeCourse.sections.join(\", \")||\"N/A\",course_type:activeCourse.courseType||\"N/A\",course_duration:activeCourse.duration||\"N/A\",requester_company:company});sendGAEvent(\"generate_lead\",{currency:\"USD\",value:0,course_title:activeCourse.courseTitle});setRequestName(\"\");setRequestCompany(\"\");setRequestEmail(\"\");setHoneypot(\"\");}catch(e){setRequestStatus(\"error\");setRequestMessage(String(e?.message||\"Something went wrong.\"));sendGAEvent(\"course_request_failed\",{course_title:activeCourse.courseTitle,course_id:activeCourse.recordId,error_message:String(e?.message||\"Unknown error\")});}}/* ── Active filter count ─────────────────────────────────────── */const activeFilterCount=(selectedSection!==\"all\"?1:0)+selectedTargets.length+(hoursRange.available&&maxHours<hoursRange.max?1:0);/* ── Pagination range ────────────────────────────────────────── */function getPageRange(){if(totalPages<=7)return Array.from({length:totalPages},(_,i)=>i+1);const pages=[1];const left=Math.max(2,currentPage-1);const right=Math.min(totalPages-1,currentPage+1);if(left>2)pages.push(\"...\");for(let i=left;i<=right;i++)pages.push(i);if(right<totalPages-1)pages.push(\"...\");pages.push(totalPages);return pages;}/* ── Section color map ────────────────────────────────────────── */const sectionColorMap=useMemo(()=>{const palette=[\"#1996F0\",\"#7C3AED\",\"#059669\",\"#DC2626\",\"#D97706\",\"#2563EB\",\"#DB2777\",\"#0891B2\",\"#4F46E5\",\"#15803D\",\"#EA580C\",\"#6D28D9\"];const map={};const sections=uniqueStrings(courses.flatMap(c=>c.sections));sections.forEach((s,i)=>{map[s]=palette[i%palette.length];});return map;},[courses]);/* ── Render ──────────────────────────────────────────────────── */const font=fontFamily?.fontFamily||\"inherit\";return /*#__PURE__*/_jsxs(\"div\",{style:{...rootStyle,fontFamily:font,color:navyColor},children:[/*#__PURE__*/_jsxs(\"div\",{style:searchBarStyle,children:[/*#__PURE__*/_jsx(\"div\",{style:searchIconWrap,children:/*#__PURE__*/_jsx(SearchIcon,{size:18,color:\"#98A2B3\"})}),/*#__PURE__*/_jsx(\"input\",{type:\"text\",value:query,onChange:e=>setQuery(e.target.value),placeholder:\"Search by course name, topic, or audience...\",style:{...searchInputStyle,color:navyColor}}),query&&/*#__PURE__*/_jsx(\"button\",{onClick:()=>setQuery(\"\"),style:clearSearchStyle,children:/*#__PURE__*/_jsx(XIcon,{size:14,color:\"#98A2B3\"})})]}),/*#__PURE__*/_jsxs(\"div\",{style:filterRowStyle,children:[/*#__PURE__*/_jsx(\"div\",{style:sectionPillsStyle,children:sectionOptions.map(s=>{const active=s===selectedSection;return /*#__PURE__*/_jsx(\"button\",{onClick:()=>setSelectedSection(s),style:{...pillStyle,background:active?navyColor:\"transparent\",color:active?\"#FFFFFF\":\"#667085\",borderColor:active?navyColor:\"#E4EAF2\"},children:s===\"all\"?\"All\":s},s);})}),/*#__PURE__*/_jsxs(\"button\",{onClick:()=>setShowFilters(p=>!p),style:{...filterToggleStyle,borderColor:showFilters||activeFilterCount>0?primaryColor:\"#E4EAF2\",color:showFilters||activeFilterCount>0?primaryColor:\"#667085\"},children:[/*#__PURE__*/_jsx(FilterIcon,{size:14,color:showFilters||activeFilterCount>0?primaryColor:\"#98A2B3\"}),\"Filters\",activeFilterCount>0&&/*#__PURE__*/_jsx(\"span\",{style:{...filterBadgeStyle,background:primaryColor},children:activeFilterCount})]})]}),showFilters&&/*#__PURE__*/_jsxs(\"div\",{style:expandedFiltersStyle,children:[hoursRange.available&&/*#__PURE__*/_jsxs(\"div\",{style:filterGroupStyle,children:[/*#__PURE__*/_jsxs(\"label\",{style:filterGroupLabel,children:[\"Max Duration\",\" \",/*#__PURE__*/_jsxs(\"strong\",{style:{color:navyColor},children:[maxHours,\"h\"]})]}),/*#__PURE__*/_jsx(\"input\",{type:\"range\",min:hoursRange.min,max:hoursRange.max,step:1,value:maxHours,onChange:e=>setMaxHours(Number(e.target.value)),style:{...sliderStyle,accentColor:primaryColor}})]}),targetOptions.length>0&&/*#__PURE__*/_jsxs(\"div\",{style:filterGroupStyle,children:[/*#__PURE__*/_jsx(\"label\",{style:filterGroupLabel,children:\"Target Audience\"}),/*#__PURE__*/_jsx(\"div\",{style:targetWrapStyle,children:targetOptions.map(t=>{const active=selectedTargets.includes(t);return /*#__PURE__*/_jsx(\"button\",{onClick:()=>setSelectedTargets(p=>p.includes(t)?p.filter(x=>x!==t):[...p,t]),style:{...targetPillStyle,background:active?primaryColor+\"12\":\"transparent\",borderColor:active?primaryColor:\"#E4EAF2\",color:active?primaryColor:\"#667085\"},children:t},t);})})]}),activeFilterCount>0&&/*#__PURE__*/_jsx(\"button\",{onClick:()=>{setSelectedSection(\"all\");setSelectedTargets([]);if(hoursRange.available)setMaxHours(hoursRange.max);},style:clearAllStyle,children:\"Clear all filters\"})]}),!loading&&!error&&/*#__PURE__*/_jsxs(\"div\",{style:resultsHeaderStyle,children:[/*#__PURE__*/_jsxs(\"span\",{style:resultsCountStyle,children:[/*#__PURE__*/_jsx(\"strong\",{style:{color:navyColor},children:filtered.length}),\" \",\"course\",filtered.length!==1?\"s\":\"\",query&&/*#__PURE__*/_jsxs(_Fragment,{children:[\" \",'matching \"',/*#__PURE__*/_jsx(\"strong\",{style:{color:navyColor},children:query}),'\"']})]}),totalPages>1&&/*#__PURE__*/_jsxs(\"span\",{style:pageIndicatorStyle,children:[\"Page \",currentPage,\" of \",totalPages]})]}),loading&&/*#__PURE__*/_jsxs(\"div\",{style:statusWrapStyle,children:[/*#__PURE__*/_jsx(\"div\",{style:{...spinnerStyle,borderTopColor:primaryColor}}),/*#__PURE__*/_jsx(\"span\",{style:{color:\"#98A2B3\"},children:\"Loading courses...\"})]}),error&&/*#__PURE__*/_jsx(\"p\",{style:{...statusWrapStyle,color:\"#B42318\"},children:error}),!loading&&!error&&/*#__PURE__*/_jsxs(\"div\",{ref:gridRef,children:[filtered.length===0?/*#__PURE__*/_jsxs(\"div\",{style:emptyStyle,children:[/*#__PURE__*/_jsx(\"span\",{style:{fontSize:\"1.6em\"},children:\"∅\"}),/*#__PURE__*/_jsx(\"span\",{children:\"No courses match your search.\"}),/*#__PURE__*/_jsx(\"button\",{onClick:()=>{setQuery(\"\");setSelectedSection(\"all\");setSelectedTargets([]);if(hoursRange.available)setMaxHours(hoursRange.max);},style:{...clearAllStyle,marginTop:4},children:\"Reset filters\"})]}):/*#__PURE__*/_jsx(\"div\",{style:gridStyle,children:pageCourses.map(course=>{const hovered=hoveredId===course.recordId;const section=course.sections[0]||\"\";const audience=course.targetAudience[0]||\"\";const sectionColor=section?sectionColorMap[section]||primaryColor:primaryColor;return /*#__PURE__*/_jsxs(\"article\",{onMouseEnter:()=>setHoveredId(course.recordId),onMouseLeave:()=>setHoveredId(p=>p===course.recordId?null:p),onClick:()=>{setActiveCourse(course);setRequestName(\"\");setRequestCompany(\"\");setRequestEmail(\"\");setHoneypot(\"\");setRequestStatus(\"idle\");setRequestMessage(\"\");sendGAEvent(\"course_card_clicked\",{course_title:course.courseTitle,course_id:course.recordId,course_section:course.sections.join(\", \")||\"N/A\"});},style:{...cardStyle,borderColor:hovered?sectionColor+\"60\":\"#EAECF0\",boxShadow:hovered?`0 8px 28px rgba(12,27,51,0.08)`:\"none\",transform:hovered?\"translateY(-2px)\":\"translateY(0)\"},children:[/*#__PURE__*/_jsx(\"h3\",{style:{...cardTitleStyle,color:navyColor},children:course.courseTitle}),/*#__PURE__*/_jsx(\"p\",{style:cardDescStyle,children:course.description||`${course.duration?course.duration+\" \\xb7 \":\"\"}${audience||\"General Audience\"}`}),/*#__PURE__*/_jsx(\"div\",{style:{flex:1}}),/*#__PURE__*/_jsxs(\"div\",{style:cardBottomStyle,children:[/*#__PURE__*/_jsxs(\"span\",{style:{...cardBadgeStyle,color:\"#FFFFFF\",background:sectionColor},children:[section||\"View Details\",/*#__PURE__*/_jsx(\"span\",{style:cardBadgeArrowStyle,children:\"↗\"})]}),course.duration&&/*#__PURE__*/_jsxs(\"span\",{style:cardDurationStyle,children:[/*#__PURE__*/_jsx(ClockIcon,{size:14,color:\"#98A2B3\"}),course.duration]})]})]},course.recordId);})}),totalPages>1&&/*#__PURE__*/_jsxs(\"nav\",{style:paginationStyle,children:[/*#__PURE__*/_jsx(\"button\",{onClick:()=>goToPage(currentPage-1),disabled:currentPage===1,style:{...pageNavBtnStyle,opacity:currentPage===1?.35:1,cursor:currentPage===1?\"default\":\"pointer\"},children:/*#__PURE__*/_jsx(ChevronLeftIcon,{size:16,color:navyColor})}),/*#__PURE__*/_jsx(\"div\",{style:pageNumbersWrap,children:getPageRange().map((p,i)=>p===\"...\"?/*#__PURE__*/_jsx(\"span\",{style:ellipsisStyle,children:\"…\"},`e${i}`):/*#__PURE__*/_jsx(\"button\",{onClick:()=>goToPage(p),style:{...pageNumBtnStyle,background:currentPage===p?navyColor:\"transparent\",color:currentPage===p?\"#FFFFFF\":\"#667085\"},children:p},p))}),/*#__PURE__*/_jsx(\"button\",{onClick:()=>goToPage(currentPage+1),disabled:currentPage===totalPages,style:{...pageNavBtnStyle,opacity:currentPage===totalPages?.35:1,cursor:currentPage===totalPages?\"default\":\"pointer\"},children:/*#__PURE__*/_jsx(ChevronRightIcon,{size:16,color:navyColor})})]})]}),activeCourse&&/*#__PURE__*/_jsx(\"div\",{role:\"dialog\",\"aria-modal\":\"true\",style:overlayStyle,onClick:()=>setActiveCourse(null),children:/*#__PURE__*/_jsxs(\"div\",{style:modalStyle,onClick:e=>e.stopPropagation(),children:[/*#__PURE__*/_jsx(\"button\",{onClick:()=>setActiveCourse(null),style:modalCloseStyle,children:/*#__PURE__*/_jsx(XIcon,{size:16,color:\"#667085\"})}),activeCourse.sections.length>0&&/*#__PURE__*/_jsx(\"div\",{style:{...modalSectionLabel,color:primaryColor},children:activeCourse.sections.join(\"  \\xb7  \")}),/*#__PURE__*/_jsx(\"h2\",{style:{...modalTitle,color:navyColor},children:activeCourse.courseTitle}),/*#__PURE__*/_jsxs(\"div\",{style:modalTagsRow,children:[activeCourse.duration&&/*#__PURE__*/_jsxs(\"span\",{style:modalTag,children:[/*#__PURE__*/_jsx(ClockIcon,{size:13,color:primaryColor}),activeCourse.duration]}),activeCourse.courseType&&/*#__PURE__*/_jsx(\"span\",{style:modalTag,children:activeCourse.courseType}),activeCourse.targetAudience.map(a=>/*#__PURE__*/_jsxs(\"span\",{style:modalTag,children:[/*#__PURE__*/_jsx(UsersIcon,{size:13,color:primaryColor}),a]},a))]}),/*#__PURE__*/_jsx(\"p\",{style:{...modalDesc,color:navyColor+\"CC\"},children:activeCourse.description||\"No description available yet.\"}),/*#__PURE__*/_jsx(\"div\",{style:formWrap,children:requestStatus===\"sent\"?/*#__PURE__*/_jsx(ThankYouState,{courseTitle:activeCourse.courseTitle,primaryColor:primaryColor,navyColor:navyColor,onClose:()=>setActiveCourse(null)}):/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"div\",{style:formTitle,children:\"Request course details\"}),/*#__PURE__*/_jsx(\"input\",{type:\"text\",value:requestName,placeholder:\"Full name\",onChange:e=>setRequestName(e.target.value),style:inputStyle}),/*#__PURE__*/_jsx(\"input\",{type:\"text\",value:requestCompany,placeholder:\"Company\",onChange:e=>setRequestCompany(e.target.value),style:inputStyle}),/*#__PURE__*/_jsx(\"input\",{type:\"email\",value:requestEmail,placeholder:\"Work email\",onChange:e=>setRequestEmail(e.target.value),style:inputStyle}),/*#__PURE__*/_jsx(\"input\",{type:\"text\",value:honeypot,onChange:e=>setHoneypot(e.target.value),tabIndex:-1,autoComplete:\"off\",\"aria-hidden\":\"true\",style:{position:\"absolute\",left:\"-9999px\",width:0,height:0,opacity:0,overflow:\"hidden\",pointerEvents:\"none\"}}),/*#__PURE__*/_jsx(\"button\",{onClick:submitRequest,disabled:requestStatus===\"sending\",style:{...submitBtnStyle,background:navyColor,opacity:requestStatus===\"sending\"?.6:1},children:requestStatus===\"sending\"?\"Sending...\":\"Send Request\"}),requestMessage&&/*#__PURE__*/_jsx(\"div\",{style:{fontSize:\".88em\",color:\"#B42318\",textAlign:\"center\"},children:requestMessage})]})})]})})]});}/* ══════════════════════════════════════════════════════════════════════\n   SVG Icons\n   ══════════════════════════════════════════════════════════════════════ */function ic(d,sz,col,strk=false){return /*#__PURE__*/_jsx(\"svg\",{width:sz,height:sz,viewBox:\"0 0 24 24\",fill:strk?\"none\":col,stroke:strk?col:\"none\",strokeWidth:strk?2:0,strokeLinecap:\"round\",strokeLinejoin:\"round\",\"aria-hidden\":\"true\",style:{flexShrink:0},children:/*#__PURE__*/_jsx(\"path\",{d:d})});}function SearchIcon({size,color}){return ic(\"M11 2a9 9 0 106.32 15.49l4.1 4.1a1 1 0 001.41-1.42l-4.1-4.09A9 9 0 0011 2zm0 2a7 7 0 110 14 7 7 0 010-14z\",size,color);}function ClockIcon({size,color}){return ic(\"M12 2a10 10 0 100 20 10 10 0 000-20zm1 5h-2v6l5 3 1-1.73-4-2.27V7z\",size,color);}function UsersIcon({size,color}){return ic(\"M16 11c1.66 0 2.99-1.57 2.99-3.5S17.66 4 16 4s-3 1.57-3 3.5S14.34 11 16 11zm-8 0c1.66 0 3-1.57 3-3.5S9.66 4 8 4 5 5.57 5 7.5 6.34 11 8 11zm0 2c-2.33 0-7 1.17-7 3.5V20h14v-3.5C15 14.17 10.33 13 8 13zm8 0c-.29 0-.62.02-.97.05 1.16.84 1.97 1.96 1.97 3.45V20h6v-3.5c0-2.33-4.67-3.5-7-3.5z\",size,color);}function FilterIcon({size,color}){return ic(\"M3 4h18l-7 8.5V18l-4 2V12.5L3 4z\",size,color);}function XIcon({size,color}){return ic(\"M18 6L6 18M6 6l12 12\",size,color,true);}function ChevronLeftIcon({size,color}){return ic(\"M15 18l-6-6 6-6\",size,color,true);}function ChevronRightIcon({size,color}){return ic(\"M9 18l6-6-6-6\",size,color,true);}/* ══════════════════════════════════════════════════════════════════════\n   Thank You State\n   ══════════════════════════════════════════════════════════════════════ */function ThankYouState({courseTitle,primaryColor,navyColor,onClose}){const[step,setStep]=useState(0);const[confettiPieces,setConfettiPieces]=useState([]);const confettiRef=useRef(null);useEffect(()=>{const timers=[setTimeout(()=>setStep(1),80),setTimeout(()=>setStep(2),400),setTimeout(()=>setStep(3),650),setTimeout(()=>setStep(4),850),setTimeout(()=>setStep(5),1050)];return()=>timers.forEach(clearTimeout);},[]);useEffect(()=>{if(step<2)return;const colors=[primaryColor,\"#7C3AED\",\"#059669\",\"#F59E0B\",\"#EC4899\",\"#3B82F6\",\"#10B981\",\"#F97316\"];const shapes=[\"circle\",\"rect\",\"diamond\"];const pieces=Array.from({length:36},(_,i)=>({id:i,x:50+(Math.random()-.5)*20,y:15,color:colors[Math.floor(Math.random()*colors.length)],size:Math.random()*7+4,rotation:Math.random()*360,targetY:15+Math.random()*85,targetX:Math.random()*100,opacity:1,shape:shapes[Math.floor(Math.random()*shapes.length)]}));setConfettiPieces(pieces);let frame=0;const maxFrames=60;function animate(){frame++;const progress=Math.min(frame/maxFrames,1);const eased=1-Math.pow(1-progress,3);setConfettiPieces(prev=>prev.map(p=>({...p,x:p.x+(p.targetX-p.x)*eased*.06,y:p.y+(p.targetY-p.y)*eased*.08,rotation:p.rotation+4,opacity:progress>.7?1-(progress-.7)/.3:1})));if(frame<maxFrames+20){confettiRef.current=requestAnimationFrame(animate);}}confettiRef.current=requestAnimationFrame(animate);return()=>{if(confettiRef.current)cancelAnimationFrame(confettiRef.current);};},[step>=2?1:0,primaryColor]);const[btnLift,setBtnLift]=useState(false);return /*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",alignItems:\"center\",gap:0,padding:\"28px 16px 12px\",textAlign:\"center\",position:\"relative\",overflow:\"hidden\",minHeight:340},children:[/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,pointerEvents:\"none\",zIndex:0,overflow:\"hidden\"},children:confettiPieces.map(p=>/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",left:`${p.x}%`,top:`${p.y}%`,width:p.size,height:p.shape===\"circle\"?p.size:p.size*.55,background:p.color,borderRadius:p.shape===\"circle\"?\"50%\":p.shape===\"diamond\"?2:1,transform:`rotate(${p.rotation}deg)${p.shape===\"diamond\"?\" scale(0.8)\":\"\"}`,opacity:p.opacity,transition:\"none\"}},p.id))}),/*#__PURE__*/_jsxs(\"div\",{style:{position:\"relative\",width:88,height:88,marginBottom:24,zIndex:1},children:[/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:-12,borderRadius:\"50%\",background:`radial-gradient(circle, ${primaryColor}18 0%, transparent 70%)`,transform:step>=1?\"scale(1)\":\"scale(0)\",opacity:step>=1?1:0,transition:\"transform 0.8s cubic-bezier(0.34, 1.56, 0.64, 1), opacity 0.4s ease\"}}),/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,borderRadius:\"50%\",background:`linear-gradient(145deg, ${primaryColor}, ${primaryColor}CC)`,boxShadow:step>=1?`0 10px 40px ${primaryColor}35, 0 4px 12px ${primaryColor}25, inset 0 -2px 6px ${primaryColor}40`:\"none\",transform:step>=1?\"scale(1)\":\"scale(0)\",opacity:step>=1?1:0,transition:\"transform 0.55s cubic-bezier(0.34, 1.56, 0.64, 1), opacity 0.3s ease, box-shadow 0.6s ease\"}}),/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",top:8,left:12,width:28,height:16,borderRadius:\"50%\",background:\"rgba(255,255,255,0.25)\",transform:step>=1?\"scale(1)\":\"scale(0)\",opacity:step>=1?1:0,transition:\"all 0.6s ease 0.2s\"}}),/*#__PURE__*/_jsx(\"svg\",{width:\"88\",height:\"88\",viewBox:\"0 0 88 88\",fill:\"none\",style:{position:\"relative\",zIndex:1},children:/*#__PURE__*/_jsx(\"path\",{d:\"M28 45L39 56L60 33\",stroke:\"#FFFFFF\",strokeWidth:\"4.5\",strokeLinecap:\"round\",strokeLinejoin:\"round\",style:{strokeDasharray:50,strokeDashoffset:step>=2?0:50,transition:\"stroke-dashoffset 0.45s ease-out 0.1s\"}})})]}),/*#__PURE__*/_jsx(\"h3\",{style:{margin:\"0 0 6px\",fontWeight:800,fontSize:\"1.65em\",letterSpacing:\"-0.03em\",color:navyColor,lineHeight:1.2,zIndex:1,transform:step>=3?\"translateY(0)\":\"translateY(14px)\",opacity:step>=3?1:0,transition:\"transform 0.45s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.4s ease\"},children:\"Request Sent!\"}),/*#__PURE__*/_jsx(\"p\",{style:{margin:\"0 0 10px\",fontSize:\".9em\",color:\"#98A2B3\",zIndex:1,transform:step>=3?\"translateY(0)\":\"translateY(12px)\",opacity:step>=3?1:0,transition:\"transform 0.45s cubic-bezier(0.22, 1, 0.36, 1) 0.08s, opacity 0.4s ease 0.08s\"},children:\"We've received your interest in\"}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"inline-flex\",alignItems:\"center\",gap:8,background:`linear-gradient(135deg, ${primaryColor}0C, ${primaryColor}06)`,border:`1.5px solid ${primaryColor}20`,borderRadius:12,padding:\"11px 22px\",marginBottom:14,zIndex:1,maxWidth:\"100%\",transform:step>=4?\"translateY(0) scale(1)\":\"translateY(10px) scale(0.96)\",opacity:step>=4?1:0,transition:\"transform 0.45s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.35s ease\",boxShadow:`0 2px 12px ${primaryColor}10`},children:[/*#__PURE__*/_jsx(\"div\",{style:{width:8,height:8,borderRadius:\"50%\",background:primaryColor,flexShrink:0,boxShadow:`0 0 8px ${primaryColor}50`}}),/*#__PURE__*/_jsx(\"span\",{style:{fontSize:\"1em\",fontWeight:700,color:navyColor,letterSpacing:\"-0.01em\"},children:courseTitle})]}),/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:6,marginBottom:20,zIndex:1,transform:step>=4?\"translateY(0)\":\"translateY(10px)\",opacity:step>=4?1:0,transition:\"transform 0.45s cubic-bezier(0.22, 1, 0.36, 1) 0.1s, opacity 0.35s ease 0.1s\"},children:[{icon:\"✓\",label:\"Request received\",done:true},{icon:\"◎\",label:\"Team notified\",done:true},{icon:\"◷\",label:\"Response within 24h\",done:false}].map((item,i)=>/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:6},children:[i>0&&/*#__PURE__*/_jsx(\"div\",{style:{width:16,height:1.5,background:item.done?primaryColor+\"40\":\"#E4EAF2\",borderRadius:1}}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:5,padding:\"5px 10px\",borderRadius:8,background:item.done?primaryColor+\"0C\":\"#F8F9FB\",border:`1px solid ${item.done?primaryColor+\"20\":\"#EAECF0\"}`},children:[/*#__PURE__*/_jsx(\"span\",{style:{fontSize:\".7em\",lineHeight:1,color:item.done?primaryColor:\"#98A2B3\"},children:item.icon}),/*#__PURE__*/_jsx(\"span\",{style:{fontSize:\".72em\",fontWeight:600,color:item.done?primaryColor:\"#98A2B3\",whiteSpace:\"nowrap\"},children:item.label})]})]},i))}),/*#__PURE__*/_jsx(\"div\",{style:{width:56,height:3,borderRadius:2,background:`linear-gradient(90deg, transparent, ${primaryColor}60, transparent)`,marginBottom:20,zIndex:1,opacity:step>=5?1:0,transition:\"opacity 0.4s ease\"}}),/*#__PURE__*/_jsx(\"button\",{onClick:onClose,onMouseEnter:()=>setBtnLift(true),onMouseLeave:()=>setBtnLift(false),style:{minHeight:50,border:\"none\",borderRadius:13,color:\"#FFF\",font:\"inherit\",fontWeight:700,fontSize:\".95em\",cursor:\"pointer\",width:\"100%\",maxWidth:300,background:`linear-gradient(145deg, ${navyColor}, ${navyColor}E0)`,boxShadow:btnLift?`0 8px 28px ${navyColor}35`:`0 4px 16px ${navyColor}25`,transform:step>=5?btnLift?\"translateY(-2px)\":\"translateY(0)\":\"translateY(12px)\",opacity:step>=5?1:0,transition:\"transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.35s ease, box-shadow 0.25s ease\",zIndex:1,position:\"relative\",letterSpacing:\"0.01em\"},children:\"Browse More Courses\"})]});}/* ══════════════════════════════════════════════════════════════════════\n   Styles\n   ══════════════════════════════════════════════════════════════════════ */const rootStyle={width:\"100%\",height:\"100%\",boxSizing:\"border-box\",background:\"transparent\",fontFamily:\"inherit\",fontSize:\"inherit\"};const searchBarStyle={display:\"flex\",alignItems:\"center\",gap:10,background:\"#F8F9FB\",borderRadius:12,border:\"1px solid #E4EAF2\",padding:\"0 16px\",minHeight:52,transition:\"border-color .15s\"};const searchIconWrap={display:\"flex\",flexShrink:0};const searchInputStyle={flex:1,border:\"none\",outline:\"none\",background:\"transparent\",font:\"inherit\",fontSize:\"1em\"};const clearSearchStyle={width:28,height:28,border:\"none\",background:\"transparent\",cursor:\"pointer\",display:\"grid\",placeItems:\"center\",padding:0,borderRadius:6};const filterRowStyle={marginTop:14,display:\"flex\",alignItems:\"center\",gap:10,flexWrap:\"wrap\"};const sectionPillsStyle={display:\"flex\",flexWrap:\"wrap\",gap:6,flex:1};const pillStyle={border:\"1px solid #E4EAF2\",borderRadius:8,padding:\"7px 14px\",font:\"inherit\",fontSize:\".92em\",fontWeight:500,cursor:\"pointer\",transition:\"all .15s ease\",whiteSpace:\"nowrap\"};const filterToggleStyle={display:\"inline-flex\",alignItems:\"center\",gap:6,border:\"1px solid #E4EAF2\",borderRadius:8,padding:\"7px 14px\",font:\"inherit\",fontSize:\".92em\",fontWeight:500,cursor:\"pointer\",background:\"transparent\",whiteSpace:\"nowrap\",transition:\"all .15s ease\"};const filterBadgeStyle={display:\"inline-flex\",alignItems:\"center\",justifyContent:\"center\",width:18,height:18,borderRadius:999,color:\"#FFF\",fontSize:\".72em\",fontWeight:700};const expandedFiltersStyle={marginTop:12,padding:\"16px 0\",borderTop:\"1px solid #F2F4F7\",display:\"flex\",flexWrap:\"wrap\",gap:20,alignItems:\"flex-start\"};const filterGroupStyle={display:\"grid\",gap:8,minWidth:200};const filterGroupLabel={fontSize:\".9em\",color:\"#667085\",display:\"flex\",gap:6};const sliderStyle={width:\"100%\"};const targetWrapStyle={display:\"flex\",flexWrap:\"wrap\",gap:6};const targetPillStyle={border:\"1px solid #E4EAF2\",borderRadius:8,padding:\"6px 14px\",font:\"inherit\",fontSize:\".88em\",cursor:\"pointer\",transition:\"all .15s ease\",background:\"transparent\"};const clearAllStyle={alignSelf:\"center\",border:\"none\",background:\"transparent\",font:\"inherit\",fontSize:\".85em\",fontWeight:600,color:\"#667085\",cursor:\"pointer\",textDecoration:\"underline\",textUnderlineOffset:\"3px\",padding:\"4px 0\"};const resultsHeaderStyle={marginTop:16,marginBottom:12,display:\"flex\",justifyContent:\"space-between\",alignItems:\"center\"};const resultsCountStyle={fontSize:\".93em\",color:\"#98A2B3\"};const pageIndicatorStyle={fontSize:\".88em\",color:\"#C0C7D1\"};const statusWrapStyle={display:\"flex\",alignItems:\"center\",justifyContent:\"center\",gap:10,padding:\"48px 20px\",color:\"#98A2B3\"};const spinnerStyle={width:22,height:22,border:\"2.5px solid #E4EAF2\",borderTopColor:\"#1996F0\",borderRadius:\"50%\",animation:\"spin 0.7s linear infinite\"};const gridStyle={display:\"grid\",gridTemplateColumns:\"repeat(auto-fill, minmax(400px, 1fr))\",gap:16};const cardStyle={position:\"relative\",minHeight:200,borderRadius:18,border:\"1.5px solid #EAECF0\",background:\"#F9FAFB\",padding:\"26px 28px 22px\",boxSizing:\"border-box\",display:\"flex\",flexDirection:\"column\",gap:10,cursor:\"pointer\",transition:\"all .2s ease\"};const cardBadgeStyle={display:\"inline-flex\",alignItems:\"center\",gap:6,fontSize:\".82em\",fontWeight:700,padding:\"8px 16px 8px 18px\",borderRadius:999,alignSelf:\"flex-start\",lineHeight:1.2,cursor:\"pointer\",border:\"none\"};const cardTitleStyle={margin:0,font:\"inherit\",fontWeight:800,fontSize:\"1.4em\",lineHeight:1.25,letterSpacing:\"-0.02em\"};const cardDescStyle={margin:0,fontSize:\".95em\",lineHeight:1.55,color:\"#475467\",display:\"-webkit-box\",WebkitLineClamp:3,WebkitBoxOrient:\"vertical\",overflow:\"hidden\"};const cardBottomStyle={display:\"flex\",alignItems:\"center\",gap:14,marginTop:4};const cardBadgeArrowStyle={display:\"inline-flex\",alignItems:\"center\",justifyContent:\"center\",width:22,height:22,borderRadius:999,background:\"rgba(255,255,255,0.25)\",fontSize:\".85em\",lineHeight:1};const cardDurationStyle={display:\"inline-flex\",alignItems:\"center\",gap:5,fontSize:\".88em\",color:\"#98A2B3\"};const emptyStyle={display:\"flex\",flexDirection:\"column\",alignItems:\"center\",gap:8,padding:\"48px 20px\",color:\"#98A2B3\",fontSize:\".92em\"};const paginationStyle={marginTop:24,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",gap:4};const pageNavBtnStyle={width:40,height:40,display:\"grid\",placeItems:\"center\",border:\"1px solid #E4EAF2\",borderRadius:8,background:\"#FFFFFF\",cursor:\"pointer\",transition:\"opacity .15s\",padding:0};const pageNumbersWrap={display:\"flex\",alignItems:\"center\",gap:2};const pageNumBtnStyle={minWidth:40,height:40,display:\"grid\",placeItems:\"center\",border:\"none\",borderRadius:8,font:\"inherit\",fontSize:\".92em\",fontWeight:600,cursor:\"pointer\",transition:\"all .15s ease\",padding:\"0 4px\"};const ellipsisStyle={width:28,textAlign:\"center\",color:\"#C0C7D1\",fontSize:\".9em\"};const overlayStyle={position:\"fixed\",inset:0,background:\"rgba(12,17,29,0.45)\",backdropFilter:\"blur(4px)\",display:\"grid\",placeItems:\"center\",zIndex:9999,padding:20};const modalStyle={width:\"min(640px, 100%)\",maxHeight:\"90vh\",overflow:\"auto\",background:\"#FFFFFF\",borderRadius:16,padding:\"28px 28px 24px\",boxSizing:\"border-box\",position:\"relative\",boxShadow:\"0 24px 60px rgba(12,17,29,0.18)\"};const modalCloseStyle={position:\"absolute\",top:14,right:14,width:32,height:32,borderRadius:8,border:\"1px solid #E4EAF2\",background:\"#FFF\",cursor:\"pointer\",display:\"grid\",placeItems:\"center\",padding:0};const modalSectionLabel={fontSize:\".78em\",fontWeight:700,letterSpacing:\".05em\",textTransform:\"uppercase\",marginBottom:6};const modalTitle={margin:\"0 0 14px\",font:\"inherit\",fontWeight:800,fontSize:\"1.65em\",lineHeight:1.15,letterSpacing:\"-0.02em\"};const modalTagsRow={display:\"flex\",flexWrap:\"wrap\",gap:8};const modalTag={border:\"1px solid #E4EAF2\",borderRadius:8,background:\"#F8F9FB\",padding:\"6px 14px\",fontSize:\".9em\",display:\"inline-flex\",alignItems:\"center\",gap:6,color:\"#475467\"};const modalDesc={margin:\"18px 0\",lineHeight:1.65,fontSize:\"1em\"};const formWrap={marginTop:16,paddingTop:18,borderTop:\"1px solid #F2F4F7\",display:\"grid\",gap:10,position:\"relative\"};const formTitle={fontSize:\".85em\",fontWeight:700,color:\"#667085\",textTransform:\"uppercase\",letterSpacing:\".04em\",marginBottom:2};const inputStyle={minHeight:44,borderRadius:10,border:\"1px solid #E4EAF2\",padding:\"0 14px\",font:\"inherit\",fontSize:\".93em\",outline:\"none\",boxSizing:\"border-box\",width:\"100%\"};const submitBtnStyle={minHeight:46,border:\"none\",borderRadius:10,color:\"#FFF\",font:\"inherit\",fontWeight:700,fontSize:\".93em\",cursor:\"pointer\",width:\"100%\",transition:\"opacity .15s ease\"};/* ══════════════════════════════════════════════════════════════════════\n   Data helpers\n   ══════════════════════════════════════════════════════════════════════ */async function fetchAllCourses(url){const all=[];let offset=null;let safety=0;while(safety++<20){const qs=new URLSearchParams({limit:\"100\"});if(offset)qs.set(\"offset\",offset);const res=await fetch(`${url}/courses?${qs}`);if(!res.ok)throw new Error(`Courses request failed (${res.status})`);const data=await res.json();all.push(...normalizeCourses(data,all.length));offset=data.nextOffset||null;if(!offset)break;}return all;}function normalizeCourses(data,baseIndex){if(Array.isArray(data.courses)){return data.courses.map((r,i)=>({recordId:nv(r.recordId||r.id),courseTitle:nv(r.courseTitle),duration:nv(r.duration),courseType:nv(r.courseType),targetAudience:na(r.targetAudience),description:nv(r.description),rank:normalizeRank(readRank(r)),iconUrl:normalizeIconUrl(r.icon??r.Icon??r.iconUrl??r.IconUrl??r.icon_url??r[\"Icon URL\"]??r[\"Icon\"]),sections:na(r.sections||r.Section),pdfRecordIds:normalizeRecordIds(r.pdfRecordIds||r.PDF),sourceIndex:baseIndex+i}));}if(!Array.isArray(data.records))return[];return data.records.map((rec,i)=>{const f=rec.fields||{};return{recordId:nv(rec.id),courseTitle:nv(f[\"Course Title\"]),duration:nv(f.Duration),courseType:nv(f[\"Course Type\"]),targetAudience:na(f[\"Target Audience\"]),description:nv(f.Description),rank:normalizeRank(readRank(f)),iconUrl:normalizeIconUrl(f.Icon??f.icon??f[\"Icon URL\"]??f[\"IconUrl\"]??f[\"iconUrl\"]??f[\"icon_url\"]),sections:na(f.Section||f.Sections||f[\"Catalog Section\"]),pdfRecordIds:normalizeRecordIds(f.PDF||f.Pdfs||f.PDFs),sourceIndex:baseIndex+i};});}const nv=v=>{if(v==null)return\"\";if(typeof v===\"string\"){const s=v.trim();return s===\"[object Object]\"?\"\":s;}if(typeof v===\"number\"||typeof v===\"boolean\")return String(v).trim();if(typeof v===\"object\"){return nv(v.name??v.label??v.value??\"\");}return\"\";};const na=v=>{if(!Array.isArray(v)){const s=nv(v);return s?[s]:[];}return v.map(nv).filter(Boolean);};function normalizeRecordIds(v){const test=s=>/^rec[a-zA-Z0-9]{14,}$/.test(s);if(!Array.isArray(v)){const s=nv(v);return test(s)?[s]:[];}return v.map(item=>{if(typeof item===\"string\")return item.trim();if(item&&typeof item===\"object\")return nv(item.id??item.recordId??item.value);return nv(item);}).filter(test);}function normalizeIconUrl(v){if(!v)return\"\";if(typeof v===\"string\")return v.trim();if(Array.isArray(v)){for(const i of v){const u=normalizeIconUrl(i);if(u)return u;}return\"\";}if(typeof v===\"object\"){const c=v.url??v.src??v.href??v.icon??v.image??v.file??v.value;if(c)return normalizeIconUrl(c);}return\"\";}function readRank(rec){if(!rec)return null;const parse=v=>{if(v==null)return null;if(Array.isArray(v)){for(const i of v){const p=parse(i);if(p!==null)return p;}return null;}if(typeof v===\"number\"&&Number.isFinite(v))return v;if(typeof v===\"string\"){const n=Number(v.trim());return Number.isFinite(n)?n:null;}if(typeof v===\"object\")return parse(v.value??v.rank??v.number??v.label??v.name);return null;};const d=parse(rec.Rank??rec.rank);if(d!==null)return d;if(rec.fields)return parse(rec.fields.Rank??rec.fields.rank);return null;}function normalizeRank(v){if(!Number.isFinite(v))return null;const r=Math.trunc(v);return r>=1&&r<=10?r:null;}function uniqueStrings(vals){return Array.from(new Set(vals.map(nv).filter(Boolean))).sort((a,b)=>a.localeCompare(b));}function normalize(v){return nv(v).toLowerCase();}function parseDurationHours(d){const nums=nv(d).match(/\\d+/g)?.map(Number)||[];if(!nums.length)return{min:0,max:Infinity};if(nums.length===1)return{min:nums[0],max:nums[0]};const s=[...nums].sort((a,b)=>a-b);return{min:s[0],max:s[s.length-1]};}function isValidEmail(v){return/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/.test(v);}/* ══════════════════════════════════════════════════════════════════════\n   Property Controls\n   ══════════════════════════════════════════════════════════════════════ */addPropertyControls(CoursesGridExplorer,{workerUrl:{type:ControlType.String,title:\"Worker URL\",defaultValue:\"https://coded-landingpage.tools-c81.workers.dev\"},apiBaseUrl:{type:ControlType.String,title:\"API Base\",defaultValue:\"https://n8n.joincoded.com/webhook-test\"},perPage:{type:ControlType.Number,title:\"Per Page\",defaultValue:8,min:4,max:24,step:1},primaryColor:{type:ControlType.Color,title:\"Accent\",defaultValue:\"#1996F0\"},navyColor:{type:ControlType.Color,title:\"Text\",defaultValue:\"#0C1B33\"},fontFamily:{type:ControlType.Font,title:\"Font\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontSize:\"16px\",variant:\"Regular\",letterSpacing:\"0em\",lineHeight:\"1.4em\"}},gaTrackingId:{type:ControlType.String,title:\"GA4 ID\",defaultValue:\"\",description:\"Google Analytics Measurement ID (e.g. G-XXXXXXXXXX)\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"CoursesGridExplorer\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerIntrinsicHeight\":\"600\",\"framerIntrinsicWidth\":\"1200\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./CourseGridExplorer.map"],"mappings":"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"}