{"version":3,"file":"script_main.D9leGgKA.mjs","names":["React.useMemo","React.useState","React.useRef","React.Fragment","_Fragment","useRef","React.useId","React.createElement","MainNavAndFooterTemplate","Framer.PageRoot","Framer.lazy","Framer.useCurrentRoute","Framer.useLocaleInfo","Framer.useRouter","React.Fragment","React.memo","React.useCallback","React.useEffect","React.useRef","React.useState","React.useLayoutEffect","Framer.LazyValue","Framer.LibraryFeaturesProvider","Framer.GracefullyDegradingErrorBoundary","Framer.PageEffectsProvider","breakpoints","Framer.patchRoutesForABTesting","routeData","Framer.inferInitialRouteFromPath","Framer.yieldToMain","React.startTransition","Framer.ErrorPlaceholder"],"sources":["https:/framerusercontent.com/modules/G0umP79L3m4eInQydtzd/pymU3REOFBDPrOYhPQCY/DoriLLM.js","https:/framerusercontent.com/modules/oh2NFtZJxEoQU6zALa77/v8VOw7L0OURqzlSHNkZh/Pxj78p5uU.js","framer:toplevel/main"],"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 DEFAULT_STARTER_QUESTIONS=[\"Explain Humyn in 3 bullets for a recruiter.\",\"What did Sarvesh design in Labor Intelligence?\",\"How does Figbud help designers in Figma?\",\"What is Buzzr and why is it different from betting apps?\"];function normalizedPathname(locationHint){const cleaned=locationHint.toLowerCase().replace(/^https?:\\/\\/[^/]+/i,\"\").split(\"#\")[0].split(\"?\")[0];return cleaned.replace(/\\/+$/,\"\")||\"/\";}function readLocationHint(){if(typeof window===\"undefined\")return\"/\";const pageKeywords=[\"buzzr\",\"humyn\",\"figbud\",\"laborbudget\",\"laborbudgeting\"];const candidates=[];const pushCandidate=value=>{const next=String(value??\"\").trim();if(!next)return;if(!candidates.includes(next))candidates.push(next);};pushCandidate(window.location.href);pushCandidate(window.location.pathname);try{pushCandidate(window.top?.location?.href);pushCandidate(window.top?.location?.pathname);}catch{// Cross-origin access is not guaranteed.\n}try{pushCandidate(window.parent?.location?.href);pushCandidate(window.parent?.location?.pathname);}catch{// Cross-origin access is not guaranteed.\n}if(typeof document!==\"undefined\"){pushCandidate(document.querySelector('link[rel=\"canonical\"]')?.getAttribute(\"href\"));pushCandidate(document.querySelector('meta[property=\"og:url\"]')?.getAttribute(\"content\"));}return candidates.find(candidate=>pageKeywords.some(keyword=>candidate.toLowerCase().includes(keyword)))??candidates[0]??\"/\";}function resolvePageProfile(locationHint){const hint=locationHint.toLowerCase();const path=normalizedPathname(locationHint);if(hint.includes(\"figbud\")||path.includes(\"figbud\")){return{key:\"figbud\",label:\"Figbud\",prompts:[\"What problem did Figbud solve for Figma users?\",\"How did Sarvesh design the AI guidance workflow in Figbud?\",\"What were the biggest Figbud technical constraints?\"]};}if(hint.includes(\"laborbudget\")||hint.includes(\"laborbudgeting\")||path.includes(\"laborbudget\")||path.includes(\"laborbudgeting\")||path.includes(\"labor\")){return{key:\"labor\",label:\"Labor Intelligence\",prompts:[\"What did Sarvesh own in Labor Intelligence?\",\"What key labor budgeting UX problems were solved?\",\"How did real-time budget feedback change scheduling decisions?\"]};}if(hint.includes(\"humyn\")||path.includes(\"humyn\")){return{key:\"humyn\",label:\"Humyn\",prompts:[\"Summarize Humyn in 3 bullets for a recruiter.\",\"What outcomes did Sarvesh drive as a founder at Humyn?\",\"How does Humyn turn messy conversations into product insight?\"]};}if(hint.includes(\"buzzr\")||path.includes(\"buzzr\")){return{key:\"buzzr\",label:\"Buzzr\",prompts:[\"What is Buzzr and what problem does it solve?\",\"How is Buzzr different from betting-first sports apps?\",\"What did Sarvesh own across product, design, and GTM for Buzzr?\"]};}if(path===\"/\"){return{key:\"home\",label:\"Portfolio Home\",prompts:DEFAULT_STARTER_QUESTIONS};}return{key:\"other\",label:\"Portfolio Page\",prompts:DEFAULT_STARTER_QUESTIONS};}function buildIntro(profile){const base=\"Hey, I'm Dori, an ArcTriniti-based LLM. Ask about Sarvesh's work and I'll answer from his resume + case studies.\";if(profile.key===\"home\"||profile.key===\"other\")return base;return`${base}\n\nI can see you're on ${profile.label}, so ask for project-specific details.`;}const CASE_STUDY_LINKS=[{keywords:[\"labor-intelligence\",\"laborbudget\",\"labor budgeting\"],label:\"Labor Intelligence\",url:\"https://www.sarveshsea.site/laborbudgeting-pw\"},{keywords:[\"humyn\"],label:\"Humyn\",url:\"https://www.sarveshsea.site/humyn-26\"},{keywords:[\"figbud\"],label:\"Figbud\",url:\"https://www.sarveshsea.site/figbud\"},{keywords:[\"buzzr\"],label:\"Buzzr\",url:\"https://www.sarveshsea.site/buzzr\"},{keywords:[\"resume\",\"portfolio\"],label:\"Portfolio\",url:\"https://www.sarveshsea.site\"}];function baseTextStyle(font){return{fontFamily:font.fontFamily??\"ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial\",fontWeight:font.fontWeight??500,letterSpacing:font.letterSpacing??0};}function mapSourceToCaseStudy(source){const haystack=`${source.source} ${source.title}`.toLowerCase();return CASE_STUDY_LINKS.find(item=>item.keywords.some(keyword=>haystack.includes(keyword)));}function fallbackLabel(source){if(source.title&&source.title!==\"untitled\")return source.title.trim();if(!source.source)return\"Knowledge Base\";const name=source.source.replace(/\\.[^/.]+$/,\"\");return name.replace(/[-_]/g,\" \").trim()||\"Knowledge Base\";}function formatSourceRef(rawRef,fallbackIndex){const matched=rawRef?.match(/\\d+/)?.[0];return`[${matched??fallbackIndex+1}]`;}function sourceLinkMap(sources){const map=new Map;if(!sources?.length)return map;for(const[index,source]of sources.entries()){const ref=formatSourceRef(source.ref,index);const mapped=mapSourceToCaseStudy(source);map.set(ref,{url:mapped?.url,label:mapped?.label??fallbackLabel(source)});}return map;}function sourceSimilarityText(similarity){if(typeof similarity!==\"number\"||!Number.isFinite(similarity))return\"\";const normalized=Math.max(0,Math.min(1,similarity));return`${Math.round(normalized*100)}%`;}function sourceTypeLabel(source,mappedLabel){const haystack=`${source.source} ${source.title}`.toLowerCase();if(haystack.includes(\"resume\"))return\"Resume\";if(mappedLabel===\"Portfolio\")return\"Portfolio\";if(mappedLabel&&mappedLabel!==\"Portfolio\")return\"Case Study\";if(haystack.includes(\"case\"))return\"Case Study\";return\"Knowledge Base\";}function extractCitedRefs(content){const refs=new Set;const matches=content.match(/\\[\\d+\\]/g)??[];for(const ref of matches)refs.add(ref);return refs;}function buildSourceLegend(sources,content){if(!sources?.length)return[];const citedRefs=extractCitedRefs(content);const hasInlineCitations=citedRefs.size>0;const grouped=new Map;for(const[index,source]of sources.entries()){const ref=formatSourceRef(source.ref,index);if(hasInlineCitations&&!citedRefs.has(ref))continue;const mapped=mapSourceToCaseStudy(source);const url=mapped?.url;const label=mapped?.label??fallbackLabel(source);const typeLabel=sourceTypeLabel(source,mapped?.label);const groupKey=`${url??\"\"}|${label.toLowerCase()}|${typeLabel}`;const prev=grouped.get(groupKey);if(!prev){grouped.set(groupKey,{refs:[ref],label,url,similarityText:sourceSimilarityText(source.similarity),typeLabel,blocked:!!(url&&shouldBlockRedirect(url))});continue;}if(!prev.refs.includes(ref))prev.refs.push(ref);const nextSimilarity=sourceSimilarityText(source.similarity);if(nextSimilarity&&(!prev.similarityText||Number(nextSimilarity.replace(\"%\",\"\"))>Number(prev.similarityText.replace(\"%\",\"\")))){prev.similarityText=nextSimilarity;}}if(!hasInlineCitations&&grouped.size===0){const source=sources[0];if(!source)return[];const mapped=mapSourceToCaseStudy(source);const ref=formatSourceRef(source.ref,0);const url=mapped?.url;grouped.set(\"fallback\",{refs:[ref],label:mapped?.label??fallbackLabel(source),url,similarityText:sourceSimilarityText(source.similarity),typeLabel:sourceTypeLabel(source,mapped?.label),blocked:!!(url&&shouldBlockRedirect(url))});}const items=[...grouped.values()];items.sort((a,b)=>{const aNum=Number((a.refs[0]??\"[999]\").replace(/[^\\d]/g,\"\"));const bNum=Number((b.refs[0]??\"[999]\").replace(/[^\\d]/g,\"\"));return aNum-bNum;});return hasInlineCitations?items:items.slice(0,3);}function shouldBlockRedirect(url){if(typeof window===\"undefined\")return false;try{const target=new URL(url,window.location.href);const current=new URL(window.location.href);const targetPath=target.pathname.replace(/\\/+$/,\"\")||\"/\";const currentPath=current.pathname.replace(/\\/+$/,\"\")||\"/\";if(target.hostname===current.hostname&&targetPath===currentPath&&target.search===current.search){return true;}const homeHosts=new Set([\"sarveshsea.site\",\"www.sarveshsea.site\"]);if(homeHosts.has(target.hostname)&&targetPath===\"/\")return true;}catch{return false;}return false;}function normalizeClientError(message){const lower=message.toLowerCase();if(lower.includes(\"<!doctype html\")||lower.includes(\"<html\")||lower.includes(\"cloudflare\")||lower.includes(\"error code 521\")||lower.includes(\"web server is down\")){return\"Knowledge base is temporarily unavailable. Please try again in a minute.\";}if(lower.includes(\"failed to fetch\")){return\"Connection error. Check API URL / CORS / X-Dori-Key in Framer.\";}return message;}function LoadingDots({color,size=24}){const dotStyle=delay=>({animation:`doriDotBlink 0.9s ${delay} infinite linear`,opacity:.28});return /*#__PURE__*/_jsxs(\"span\",{\"aria-label\":\"Loading\",style:{display:\"inline-flex\",alignItems:\"center\",gap:Math.max(1,Math.round(size*.08)),color,fontSize:size,lineHeight:1,fontFamily:\"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace\",letterSpacing:-size*.09},children:[/*#__PURE__*/_jsx(\"span\",{style:dotStyle(\"0s\"),children:\".\"}),/*#__PURE__*/_jsx(\"span\",{style:dotStyle(\"0.15s\"),children:\".\"}),/*#__PURE__*/_jsx(\"span\",{style:dotStyle(\"0.3s\"),children:\".\"})]});}function BreathingFish({color,size=13,minWidthCh=4,direction=\"right\"}){const frames=React.useMemo(()=>direction===\"left\"?[\"<><\",\"<( )\",\"<><\",\"<( )\"]:[\"><>\",\">( )\",\"><>\",\">( )\"],[direction]);const[frameIndex,setFrameIndex]=React.useState(0);React.useEffect(()=>{const timer=window.setInterval(()=>{setFrameIndex(index=>(index+1)%frames.length);},420);return()=>window.clearInterval(timer);},[frames]);return /*#__PURE__*/_jsx(\"span\",{style:{display:\"inline-block\",minWidth:`${minWidthCh}ch`,whiteSpace:\"pre\",color,fontSize:size,lineHeight:1,fontWeight:700,fontFamily:\"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace\"},children:frames[frameIndex]});}export default function DoriLLM(props){const{apiUrl,sharedSecret,launcherSize,right,bottom,panelWidth,panelHeight,panelBlur,accent,loadingColor,panelBackground,textColor,borderColor,starterBorderColor,assistantBubble,userBubble,fishBodyColor,font}=props;const[open,setOpen]=React.useState(false);const[auraTick,setAuraTick]=React.useState(0);const[panelMounted,setPanelMounted]=React.useState(false);const[panelVisible,setPanelVisible]=React.useState(false);const[input,setInput]=React.useState(\"\");const[loading,setLoading]=React.useState(false);const[pendingRedirect,setPendingRedirect]=React.useState(null);const[hoveredRefId,setHoveredRefId]=React.useState(null);const[currentPath,setCurrentPath]=React.useState(\"/\");const pageProfile=React.useMemo(()=>resolvePageProfile(currentPath),[currentPath]);const starterQuestions=pageProfile.prompts;const[messages,setMessages]=React.useState([{role:\"assistant\",content:buildIntro(pageProfile)}]);const[isMobile,setIsMobile]=React.useState(false);const scrollRef=React.useRef(null);const textStyle=baseTextStyle(font);const fontFamily=textStyle.fontFamily;const inputClassName=\"dori-input-field\";const latestAssistantMessage=messages[messages.length-1];const showPendingBubble=loading&&latestAssistantMessage?.role===\"assistant\"&&!latestAssistantMessage.content;React.useEffect(()=>{scrollRef.current?.scrollIntoView({behavior:\"smooth\"});},[messages,open]);React.useEffect(()=>{if(typeof window===\"undefined\")return;const syncLocation=()=>{const next=readLocationHint();setCurrentPath(prev=>prev===next?prev:next);};syncLocation();const refresh=()=>setIsMobile(window.innerWidth<=680);refresh();const onResize=()=>refresh();const onNavigate=()=>syncLocation();const historyRef=window.history;const originalPushState=historyRef.pushState.bind(historyRef);const originalReplaceState=historyRef.replaceState.bind(historyRef);historyRef.pushState=function(...args){const result=originalPushState(...args);syncLocation();return result;};historyRef.replaceState=function(...args){const result=originalReplaceState(...args);syncLocation();return result;};const poller=window.setInterval(syncLocation,800);window.addEventListener(\"resize\",onResize);window.addEventListener(\"popstate\",onNavigate);window.addEventListener(\"hashchange\",onNavigate);return()=>{window.clearInterval(poller);historyRef.pushState=originalPushState;historyRef.replaceState=originalReplaceState;window.removeEventListener(\"resize\",onResize);window.removeEventListener(\"popstate\",onNavigate);window.removeEventListener(\"hashchange\",onNavigate);};},[]);React.useEffect(()=>{setMessages(prev=>{if(prev.length!==1||prev[0].role!==\"assistant\")return prev;return[{...prev[0],content:buildIntro(pageProfile)}];});},[pageProfile]);React.useEffect(()=>{let timer;if(open){setPanelMounted(true);requestAnimationFrame(()=>setPanelVisible(true));}else{setPanelVisible(false);timer=window.setTimeout(()=>setPanelMounted(false),230);}return()=>{if(timer)window.clearTimeout(timer);};},[open]);function togglePanel(){setCurrentPath(readLocationHint());setAuraTick(value=>value+1);setOpen(value=>{const next=!value;if(!next){setPendingRedirect(null);setHoveredRefId(null);}return next;});}function renderRefToken(refToken,messageIndex,tokenIndex,refMap){const entry=refMap.get(refToken);if(!entry?.url){return /*#__PURE__*/_jsx(\"span\",{style:{color:starterBorderColor},children:refToken},`${refToken}-${tokenIndex}`);}if(shouldBlockRedirect(entry.url)){return /*#__PURE__*/_jsx(\"span\",{style:{color:starterBorderColor,opacity:.9},title:`${entry.label} (already on this page)`,children:refToken},`${refToken}-${tokenIndex}`);}const refId=`${messageIndex}-${tokenIndex}-${refToken}`;return /*#__PURE__*/_jsxs(\"span\",{style:{position:\"relative\",display:\"inline-block\",verticalAlign:\"baseline\"},children:[/*#__PURE__*/_jsx(\"button\",{onClick:()=>setPendingRedirect({ref:refToken,label:entry.label,url:entry.url}),onMouseEnter:()=>setHoveredRefId(refId),onMouseLeave:()=>setHoveredRefId(id=>id===refId?null:id),onFocus:()=>setHoveredRefId(refId),onBlur:()=>setHoveredRefId(id=>id===refId?null:id),title:entry.label,style:{border:\"none\",background:\"transparent\",padding:0,margin:0,color:starterBorderColor,cursor:\"pointer\",textDecoration:\"none\",fontSize:\"inherit\",lineHeight:\"inherit\",fontFamily},children:refToken}),hoveredRefId===refId&&/*#__PURE__*/_jsx(\"span\",{style:{position:\"absolute\",left:\"50%\",bottom:\"calc(100% + 6px)\",transform:\"translateX(-50%)\",background:\"rgba(6,8,12,0.96)\",border:`1px solid ${borderColor}`,borderRadius:8,padding:\"4px 7px\",color:textColor,fontSize:11,lineHeight:1.2,fontFamily,whiteSpace:\"nowrap\",pointerEvents:\"none\",zIndex:4},children:entry.label})]},`${refToken}-${tokenIndex}`);}function renderInlineMarkdown(text,messageIndex,tokenSeed,refMap){const parts=text.split(/(\\[\\d+\\]|\\*\\*[^*\\n]+\\*\\*|`[^`\\n]+`)/g);return parts.map((part,index)=>{if(!part)return null;if(/^\\[\\d+\\]$/.test(part)){return renderRefToken(part,messageIndex,Number(`${tokenSeed}${index}`),refMap);}if(part.startsWith(\"**\")&&part.endsWith(\"**\")&&part.length>4){return /*#__PURE__*/_jsx(\"strong\",{children:part.slice(2,-2)},`${tokenSeed}-b-${index}`);}if(part.startsWith(\"`\")&&part.endsWith(\"`\")&&part.length>2){return /*#__PURE__*/_jsx(\"code\",{style:{background:\"rgba(255,255,255,0.08)\",border:`1px solid ${borderColor}`,borderRadius:6,padding:\"0 4px\",fontSize:\"0.92em\",fontFamily:\"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace\"},children:part.slice(1,-1)},`${tokenSeed}-c-${index}`);}return /*#__PURE__*/_jsx(React.Fragment,{children:part},`${tokenSeed}-t-${index}`);});}function renderAssistantMarkdown(message,messageIndex){const refMap=sourceLinkMap(message.sources);const rawBlocks=message.content.split(/\\n{2,}/).map(block=>block.trimEnd());const blocks=rawBlocks.filter(block=>block.length>0);if(!blocks.length)return\"\";return blocks.map((block,blockIndex)=>{const lines=block.split(\"\\n\");const parseList=kind=>{const items=[];const marker=kind===\"bullet\"?/^[-*]\\s+(.+)$/:/^\\d+\\.\\s+(.+)$/;let current=\"\";let sawMarker=false;for(const rawLine of lines){const line=rawLine.trimEnd();const trimmed=line.trimStart();if(!trimmed){if(current)current+=\"\\n\";continue;}const matched=trimmed.match(marker);if(matched){sawMarker=true;if(current)items.push(current);current=matched[1]??\"\";continue;}if(!sawMarker)return null;current=current?`${current}\n${trimmed}`:trimmed;}if(current)items.push(current);return items.length>0?items:null;};const bulletItems=parseList(\"bullet\");if(bulletItems){return /*#__PURE__*/_jsx(\"ul\",{style:{margin:0,paddingLeft:18,display:\"grid\",gap:4},children:bulletItems.map((item,itemIndex)=>/*#__PURE__*/_jsx(\"li\",{children:renderInlineMarkdown(item,messageIndex,`${blockIndex}${itemIndex}1`,refMap)},`ul-${messageIndex}-${blockIndex}-${itemIndex}`))},`ul-${messageIndex}-${blockIndex}`);}const numberedItems=parseList(\"numbered\");if(numberedItems){return /*#__PURE__*/_jsx(\"ol\",{style:{margin:0,paddingLeft:18,display:\"grid\",gap:4},children:numberedItems.map((item,itemIndex)=>/*#__PURE__*/_jsx(\"li\",{children:renderInlineMarkdown(item,messageIndex,`${blockIndex}${itemIndex}2`,refMap)},`ol-${messageIndex}-${blockIndex}-${itemIndex}`))},`ol-${messageIndex}-${blockIndex}`);}return /*#__PURE__*/_jsx(\"p\",{style:{margin:0},children:lines.map((line,lineIndex)=>/*#__PURE__*/_jsxs(React.Fragment,{children:[renderInlineMarkdown(line,messageIndex,`${blockIndex}${lineIndex}3`,refMap),lineIndex<lines.length-1?/*#__PURE__*/_jsx(\"br\",{}):null]},`p-${messageIndex}-${blockIndex}-${lineIndex}`))},`p-${messageIndex}-${blockIndex}`);});}function renderMessageContent(message,messageIndex){if(message.role!==\"assistant\")return message.content;return renderAssistantMarkdown(message,messageIndex);}function renderSourceLegend(message,messageIndex){if(message.role!==\"assistant\")return null;const legendItems=buildSourceLegend(message.sources,message.content);if(!legendItems.length)return null;return /*#__PURE__*/_jsx(\"div\",{style:{marginTop:2,display:\"flex\",flexWrap:\"wrap\",gap:6,fontSize:11,lineHeight:1.25,opacity:.86},children:legendItems.map(item=>{const refsText=item.refs.join(\", \");const details=[refsText,item.label,item.similarityText,item.typeLabel].filter(Boolean);const text=details.join(\" \\xb7 \");if(item.url&&!item.blocked){return /*#__PURE__*/_jsx(\"button\",{onClick:()=>setPendingRedirect({ref:refsText,label:item.label,url:item.url}),style:{border:\"none\",background:\"transparent\",padding:0,margin:0,color:starterBorderColor,cursor:\"pointer\",fontSize:\"inherit\",lineHeight:\"inherit\",fontFamily,textDecoration:\"none\"},children:text},`${messageIndex}-${refsText}-${item.label}`);}return /*#__PURE__*/_jsx(\"span\",{style:{color:item.blocked?textColor:starterBorderColor},title:item.blocked?\"Already on this page\":undefined,children:item.blocked?`${text} \\xb7 on page`:text},`${messageIndex}-${refsText}-${item.label}`);})});}async function ask(question){const prompt=question.trim();if(!prompt||loading)return;const userMessage={role:\"user\",content:prompt};let assistantIndex=-1;setMessages(prev=>{const next=[...prev,userMessage,{role:\"assistant\",content:\"\"}];assistantIndex=next.length-1;return next;});setInput(\"\");setLoading(true);try{const headers={\"Content-Type\":\"application/json\"};if(sharedSecret)headers[\"X-Dori-Key\"]=sharedSecret;const response=await fetch(apiUrl,{method:\"POST\",headers,body:JSON.stringify({message:prompt,stream:true,pageContext:pageProfile.label,history:messages.slice(-12)})});const updateAssistant=updater=>{setMessages(prev=>prev.map((msg,idx)=>idx===assistantIndex?updater(msg):msg));};const contentType=response.headers.get(\"Content-Type\")??\"\";if(!response.ok){const data=await response.json().catch(()=>({}));throw new Error(data.error||\"Request failed\");}if(contentType.includes(\"application/x-ndjson\")&&response.body){const reader=response.body.getReader();const decoder=new TextDecoder;let buffer=\"\";while(true){const{value,done}=await reader.read();if(done)break;buffer+=decoder.decode(value,{stream:true});const lines=buffer.split(\"\\n\");buffer=lines.pop()??\"\";for(const line of lines){const payload=line.trim();if(!payload)continue;let event;try{event=JSON.parse(payload);}catch{continue;}if(event.type===\"sources\"){updateAssistant(msg=>({...msg,sources:event.sources??[]}));continue;}if(event.type===\"token\"){updateAssistant(msg=>({...msg,content:`${msg.content}${event.text||\"\"}`}));continue;}if(event.type===\"error\"){throw new Error(event.error||\"Streaming failed\");}}}updateAssistant(msg=>({...msg,content:msg.content.trim()||\"No response returned.\"}));}else{const data=await response.json();updateAssistant(msg=>({...msg,content:data.answer?.trim()||\"No response returned.\",sources:data.sources??[]}));}}catch(error){const message=normalizeClientError(error instanceof Error?error.message:\"Unknown request error\");setMessages(prev=>prev.map((msg,idx)=>{if(idx!==assistantIndex)return msg;return{...msg,content:`Error: ${message}`};}));}finally{setLoading(false);}}const hitbox=launcherSize+16;const resolvedPanelWidth=isMobile?\"calc(100vw - 16px)\":`min(${panelWidth}px, calc(100vw - 20px))`;const resolvedPanelHeight=isMobile?\"min(calc(100vh - 16px), 640px)\":`min(${panelHeight}px, calc(100vh - ${bottom+launcherSize+26}px))`;return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsxs(\"button\",{\"aria-label\":\"Open Dori chat\",onClick:togglePanel,style:{position:\"fixed\",right:right-8,bottom:bottom-8,width:hitbox,height:hitbox,borderRadius:\"50%\",background:\"transparent\",border:\"none\",padding:8,cursor:\"pointer\",zIndex:999998,overflow:\"visible\"},children:[auraTick>0&&/*#__PURE__*/_jsx(\"span\",{style:{position:\"absolute\",left:\"50%\",top:\"50%\",width:launcherSize,height:launcherSize,borderRadius:\"50%\",border:`1px solid ${accent}`,transform:\"translate(-50%, -50%) scale(1)\",opacity:.7,pointerEvents:\"none\",animation:\"doriAura 460ms ease-out forwards\"}},auraTick),/*#__PURE__*/_jsxs(\"div\",{style:{width:launcherSize,height:launcherSize,borderRadius:\"50%\",display:\"grid\",placeItems:\"center\",background:accent,boxShadow:open?\"none\":\"0 2px 10px rgba(0,0,0,0.22)\",transform:open?\"scale(0.94)\":\"scale(1)\",transition:\"transform 180ms ease, box-shadow 180ms ease\"},children:[/*#__PURE__*/_jsx(BreathingFish,{color:fishBodyColor,size:Math.max(13,Math.round(launcherSize*.3)),minWidthCh:3.2,direction:\"left\"}),/*#__PURE__*/_jsx(\"span\",{style:{position:\"absolute\",left:\"26%\",top:\"42%\",width:Math.max(2,Math.round(launcherSize*.11)),height:Math.max(2,Math.round(launcherSize*.11)),borderRadius:\"50%\",background:\"rgba(255,255,255,0.55)\",opacity:0,pointerEvents:\"none\",animation:\"doriBubbleFloat 4.8s ease-out infinite\"}}),/*#__PURE__*/_jsx(\"span\",{style:{position:\"absolute\",left:\"20%\",top:\"48%\",width:Math.max(2,Math.round(launcherSize*.075)),height:Math.max(2,Math.round(launcherSize*.075)),borderRadius:\"50%\",background:\"rgba(255,255,255,0.45)\",opacity:0,pointerEvents:\"none\",animation:\"doriBubbleFloat 5.6s 1.4s ease-out infinite\"}})]})]}),panelMounted&&/*#__PURE__*/_jsxs(\"div\",{style:{position:\"fixed\",right:isMobile?8:right,left:isMobile?8:undefined,bottom:isMobile?8:bottom+launcherSize+12,width:resolvedPanelWidth,height:resolvedPanelHeight,minHeight:320,maxHeight:\"calc(100vh - 8px)\",borderRadius:14,background:panelBackground,color:textColor,border:`1px solid ${borderColor}`,boxShadow:\"0 4px 16px rgba(0,0,0,0.22)\",backdropFilter:`blur(${panelBlur}px)`,WebkitBackdropFilter:`blur(${panelBlur}px)`,overflow:\"hidden\",display:\"flex\",flexDirection:\"column\",zIndex:999999,opacity:panelVisible?1:0,transform:panelVisible?\"translateY(0) scale(1)\":\"translateY(6px) scale(0.99)\",transformOrigin:isMobile?\"bottom center\":\"bottom right\",transition:\"opacity 180ms ease, transform 180ms ease\",...textStyle},children:[/*#__PURE__*/_jsxs(\"div\",{style:{padding:\"10px 12px\",display:\"flex\",justifyContent:\"space-between\",alignItems:\"center\",borderBottom:`1px solid ${borderColor}`},children:[/*#__PURE__*/_jsx(\"div\",{children:/*#__PURE__*/_jsx(\"div\",{style:{fontSize:15,fontWeight:700,fontFamily},children:\"Dori\"})}),/*#__PURE__*/_jsx(\"button\",{onClick:()=>setOpen(false),\"aria-label\":\"Close chat\",style:{background:\"transparent\",border:\"none\",color:textColor,fontSize:20,lineHeight:1,cursor:\"pointer\",fontFamily},children:\"\\xd7\"})]}),/*#__PURE__*/_jsxs(\"div\",{style:{flex:1,overflowY:\"auto\",padding:10,display:\"flex\",flexDirection:\"column\",gap:8},children:[messages.map((message,idx)=>{if(message.role===\"assistant\"&&!message.content&&loading&&idx===messages.length-1){return null;}return /*#__PURE__*/_jsx(\"div\",{style:{alignSelf:message.role===\"user\"?\"flex-end\":\"flex-start\",maxWidth:\"92%\"},children:/*#__PURE__*/_jsxs(\"div\",{style:{fontSize:font.fontSize??14,lineHeight:font.lineHeight??1.35,padding:\"9px 11px\",borderRadius:12,border:`1px solid ${borderColor}`,background:message.role===\"user\"?userBubble:assistantBubble,whiteSpace:message.role===\"assistant\"?\"normal\":\"pre-wrap\",fontFamily,display:\"flex\",flexDirection:\"column\",gap:message.role===\"assistant\"?8:0},children:[idx===0&&message.role===\"assistant\"&&/*#__PURE__*/_jsx(\"div\",{style:{color:starterBorderColor,opacity:.95,marginBottom:8,fontSize:13,lineHeight:1,fontFamily:\"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace\"},children:/*#__PURE__*/_jsx(BreathingFish,{color:starterBorderColor})}),renderMessageContent(message,idx),renderSourceLegend(message,idx)]})},`${message.role}-${idx}`);}),pendingRedirect&&/*#__PURE__*/_jsx(\"div\",{style:{alignSelf:\"flex-start\",maxWidth:\"92%\"},children:/*#__PURE__*/_jsxs(\"div\",{style:{fontSize:font.fontSize??14,lineHeight:font.lineHeight??1.35,padding:\"9px 11px\",borderRadius:12,border:`1px solid ${borderColor}`,background:assistantBubble,whiteSpace:\"pre-wrap\",fontFamily,display:\"flex\",flexDirection:\"column\",gap:8},children:[/*#__PURE__*/_jsxs(\"span\",{children:[\"Open \",pendingRedirect.ref,\" (\",pendingRedirect.label,\")?\"]}),/*#__PURE__*/_jsx(\"span\",{style:{opacity:.8},children:\"Are you sure you wish to redirect?\"}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",gap:8},children:[/*#__PURE__*/_jsx(\"button\",{onClick:()=>{const target=pendingRedirect.url;setPendingRedirect(null);if(typeof window!==\"undefined\"){window.location.assign(target);}},style:{border:`1px solid ${borderColor}`,background:accent,color:textColor,padding:\"4px 10px\",borderRadius:8,cursor:\"pointer\",fontSize:12,fontFamily},children:\"Yes\"}),/*#__PURE__*/_jsx(\"button\",{onClick:()=>setPendingRedirect(null),style:{border:`1px solid ${borderColor}`,background:\"transparent\",color:textColor,padding:\"4px 10px\",borderRadius:8,cursor:\"pointer\",fontSize:12,fontFamily},children:\"No\"})]})]})}),showPendingBubble&&/*#__PURE__*/_jsx(\"div\",{style:{alignSelf:\"flex-start\",maxWidth:\"92%\"},children:/*#__PURE__*/_jsx(\"div\",{style:{fontSize:font.fontSize??14,lineHeight:font.lineHeight??1.35,padding:\"10px 12px\",borderRadius:12,border:`1px solid ${borderColor}`,background:assistantBubble,display:\"inline-flex\",alignItems:\"center\"},children:/*#__PURE__*/_jsx(LoadingDots,{color:loadingColor,size:14})})}),/*#__PURE__*/_jsx(\"div\",{ref:scrollRef})]}),/*#__PURE__*/_jsxs(\"div\",{style:{padding:8,borderTop:`1px solid ${borderColor}`,display:\"flex\",flexDirection:\"column\",gap:6},children:[messages.length<=2&&!loading&&/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",flexDirection:\"column\",alignItems:\"stretch\",gap:4,width:\"100%\"},children:starterQuestions.map(question=>/*#__PURE__*/_jsx(\"button\",{onClick:()=>ask(question),style:{width:\"100%\",display:\"flex\",alignItems:\"center\",justifyContent:\"flex-start\",textAlign:\"left\",border:\"none\",background:\"transparent\",color:starterBorderColor,borderRadius:0,fontSize:13,lineHeight:1.28,padding:\"2px 0\",cursor:\"pointer\",whiteSpace:\"normal\",textDecoration:\"none\",...textStyle,fontFamily,opacity:1},children:question},question))}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",gap:6},children:[/*#__PURE__*/_jsx(\"input\",{className:inputClassName,value:input,onChange:event=>setInput(event.target.value),onKeyDown:event=>{if(event.key===\"Enter\")void ask(input);},placeholder:\"Ask about impact, projects, and decisions...\",style:{flex:1,height:34,borderRadius:8,border:`1px solid ${borderColor}`,background:\"rgba(255,255,255,0.05)\",color:textColor,padding:\"0 10px\",outline:\"none\",fontSize:13,...textStyle,fontFamily,opacity:1}}),/*#__PURE__*/_jsx(\"button\",{onClick:()=>void ask(input),disabled:loading,style:{minWidth:58,borderRadius:8,border:`1px solid ${borderColor}`,background:loading?\"rgba(255,255,255,0.06)\":accent,color:textColor,cursor:loading?\"not-allowed\":\"pointer\",fontSize:13,fontWeight:700,...textStyle,fontFamily},children:loading?/*#__PURE__*/_jsx(LoadingDots,{color:loadingColor,size:14}):\"Send\"})]})]})]}),/*#__PURE__*/_jsx(\"style\",{children:`\n        .${inputClassName}::placeholder {\n          color: ${textColor};\n          opacity: 1;\n        }\n        @keyframes doriDotBlink {\n          0%, 100% { opacity: 0.28; }\n          50% { opacity: 1; }\n        }\n        @keyframes doriAura {\n          0% { transform: translate(-50%, -50%) scale(1); opacity: 0.58; }\n          100% { transform: translate(-50%, -50%) scale(1.55); opacity: 0; }\n        }\n        @keyframes doriBubbleFloat {\n          0%, 70% {\n            opacity: 0;\n            transform: translate(0px, 0px) scale(0.4);\n          }\n          76% {\n            opacity: 0.55;\n          }\n          100% {\n            opacity: 0;\n            transform: translate(-9px, -20px) scale(1.1);\n          }\n        }\n      `})]});}DoriLLM.defaultProps={apiUrl:\"https://dorillm.vercel.app/api/chat\",sharedSecret:\"\",launcherSize:56,right:18,bottom:18,panelWidth:449,panelHeight:661,panelBlur:10,accent:\"#1e6ed8\",loadingColor:\"#165aa7\",panelBackground:\"rgba(13,15,19,0.90)\",textColor:\"#ffffff\",borderColor:\"rgba(255,255,255,0.16)\",starterBorderColor:\"#2aa5ff\",assistantBubble:\"rgba(255,255,255,0.04)\",userBubble:\"rgba(30,110,216,0.20)\",fishBodyColor:\"#ececec\",font:{fontFamily:\"ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial\",fontWeight:500,fontSize:13,lineHeight:1.35}};addPropertyControls(DoriLLM,{apiUrl:{type:ControlType.String,title:\"API URL\",defaultValue:\"https://dorillm.vercel.app/api/chat\"},sharedSecret:{type:ControlType.String,title:\"X-Dori-Key\",defaultValue:\"\"},launcherSize:{type:ControlType.Number,title:\"Launcher\",defaultValue:56,min:38,max:96},right:{type:ControlType.Number,title:\"Right\",defaultValue:18,min:0,max:120},bottom:{type:ControlType.Number,title:\"Bottom\",defaultValue:18,min:0,max:120},panelWidth:{type:ControlType.Number,title:\"Panel W\",defaultValue:449,min:320,max:640},panelHeight:{type:ControlType.Number,title:\"Panel H\",defaultValue:661,min:340,max:760},panelBlur:{type:ControlType.Number,title:\"Panel Blur\",defaultValue:10,min:0,max:24,step:1},font:{type:ControlType.Font,title:\"Font\",defaultValue:{fontFamily:\"ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial\",fontWeight:500,fontSize:13,lineHeight:1.35}},accent:{type:ControlType.Color,title:\"Accent\",defaultValue:\"#1e6ed8\"},loadingColor:{type:ControlType.Color,title:\"Loading\",defaultValue:\"#165aa7\"},panelBackground:{type:ControlType.Color,title:\"Panel BG\",defaultValue:\"rgba(13,15,19,0.90)\"},textColor:{type:ControlType.Color,title:\"Text\",defaultValue:\"#ffffff\"},borderColor:{type:ControlType.Color,title:\"Border\",defaultValue:\"rgba(255,255,255,0.16)\"},starterBorderColor:{type:ControlType.Color,title:\"Starter Text\",defaultValue:\"#2aa5ff\"},assistantBubble:{type:ControlType.Color,title:\"Assist BG\",defaultValue:\"rgba(255,255,255,0.04)\"},userBubble:{type:ControlType.Color,title:\"User BG\",defaultValue:\"rgba(30,110,216,0.20)\"},fishBodyColor:{type:ControlType.Color,title:\"Fish\",defaultValue:\"#ececec\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"DoriLLM\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./DoriLLM.map","// Generated by Framer (4a2adb5)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,ComponentViewportProvider,Container,cx,GeneratedComponentContext,getFonts,RenderTarget,useCustomCursors,useHydratedBreakpointVariants,useIsOnFramerCanvas,useLocaleInfo,withCSS}from\"framer\";import{LayoutGroup,motion}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import DoriLLM from\"#framer/local/codeFile/R1ZmEg5/DoriLLM.js\";const DoriLLMFonts=getFonts(DoriLLM);const breakpoints={GAGSSPgUn:\"(max-width: 809.98px)\",jVwCxigsU:\"(min-width: 810px) and (max-width: 1199.98px)\",nEOWAQhW9:\"(min-width: 1200px)\"};const isBrowser=()=>typeof document!==\"undefined\";const serializationHash=\"framer-7lEHp\";const variantClassNames={GAGSSPgUn:\"framer-v-12tlyhy\",jVwCxigsU:\"framer-v-1ay13ai\",nEOWAQhW9:\"framer-v-hudjyh\"};const breakpointRules={GAGSSPgUn:[\".framer-7lEHp.framer-hudjyh { padding: 48px 0px 0px 0px; }\"]};const breakpointKeys=Object.keys(breakpointRules);const selectors={GAGSSPgUn:\".framer-12tlyhy-override\"};const rules=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-7lEHp.framer-1n45xgm, .framer-7lEHp .framer-1n45xgm { display: block; }\",\".framer-7lEHp.framer-hudjyh { align-content: center; align-items: center; background-color: var(--token-320a61fd-500c-416e-a1d3-78eb2c873bd9, #f7f7f8); display: flex; flex-direction: column; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: flex-start; overflow: visible; padding: 100px 0px 0px 0px; position: relative; width: 100%; }\",\".framer-7lEHp .framer-a47sws { background: transparent; flex-grow: 1; height: 0px; margin: 0px; margin-bottom: -10px; position: relative; width: 0px; }\",\".framer-7lEHp .framer-ytc0ve-container { flex: none; height: auto; order: 1001; position: relative; width: auto; }\",'[data-layout-template=\"true\"] > #overlay { margin-bottom: -10px; }'];const mediaQueries={GAGSSPgUn:\"(max-width: 809.98px)\",jVwCxigsU:\"(min-width: 810px) and (max-width: 1199.98px)\",nEOWAQhW9:\"(min-width: 1200px)\"};const humanReadableVariantMap={Desktop:\"nEOWAQhW9\",Phone:\"GAGSSPgUn\",Tablet:\"jVwCxigsU\"};const HTMLStyle=({value})=>{const onCanvas=useIsOnFramerCanvas();if(onCanvas)return null;return /*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:value},\"data-framer-html-style\":\"\"});};const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"nEOWAQhW9\"};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,children,...restProps}=getProps(props);const[baseVariant,hydratedBaseVariant]=useHydratedBreakpointVariants(variant,breakpoints,false);const gestureVariant=undefined;const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);useCustomCursors({});return /*#__PURE__*/_jsx(GeneratedComponentContext.Provider,{value:{activeVariantId:baseVariant,humanReadableVariantMap,isLayoutTemplate:true,primaryVariantId:\"nEOWAQhW9\",variantClassNames},children:/*#__PURE__*/_jsxs(LayoutGroup,{id:layoutId??defaultLayoutId,children:[/*#__PURE__*/_jsx(HTMLStyle,{value:\":root body { background: var(--token-320a61fd-500c-416e-a1d3-78eb2c873bd9, rgb(247, 247, 248)); }\"}),/*#__PURE__*/_jsxs(motion.div,{...restProps,className:cx(scopingClassNames,\"framer-hudjyh\",className),\"data-layout-template\":true,ref:refBinding,style:{...style},children:[children,/*#__PURE__*/_jsx(\"div\",{className:\"framer-a47sws\"}),/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-ytc0ve-container\",isAuthoredByUser:true,nodeId:\"qGEdidbhc\",scopeId:\"Pxj78p5uU\",children:/*#__PURE__*/_jsx(DoriLLM,{accent:\"var(--token-6782623e-9af0-460c-84eb-13062c4ada16, rgba(0, 183, 255, 0.35))\",apiUrl:\"https://dorillm.vercel.app/api/chat\",assistantBubble:\"var(--token-6aa10b46-3cb0-4fef-aaad-b60d137566aa, rgba(247, 247, 248, 0.36))\",borderColor:\"var(--token-0a0a348c-ae32-4dde-b1cf-79d713fe7221, rgb(236, 236, 238))\",bottom:10,fishBodyColor:\"var(--token-da23cd3b-a4dc-4ad1-beef-18cb41add713, rgb(255, 255, 255))\",font:{fontFamily:'\"Hack Regular\", \"Hack Regular Placeholder\", sans-serif',fontStyle:\"normal\",fontWeight:400},height:\"100%\",id:\"qGEdidbhc\",launcherSize:60,layoutId:\"qGEdidbhc\",loadingColor:\"var(--token-a4283da1-9861-446a-991c-efec6c6a91dd, rgb(255, 0, 221))\",panelBackground:\"var(--token-6aa10b46-3cb0-4fef-aaad-b60d137566aa, rgba(255, 255, 255, 0.36))\",panelBlur:10,panelHeight:760,panelWidth:550,right:10,sharedSecret:\"\",starterBorderColor:\"var(--token-dd0f8a93-7205-4e97-b6a4-3c779ef5ddac, rgb(0, 125, 171))\",textColor:\"var(--token-4c661749-da16-490a-aab7-f9824a50d1da, rgb(67, 67, 69))\",userBubble:\"var(--token-6782623e-9af0-460c-84eb-13062c4ada16, rgba(0, 183, 255, 0.35))\",width:\"100%\"})})})]}),/*#__PURE__*/_jsx(\"div\",{id:\"template-overlay\"})]})});});const css=target=>{const isStaticRenderer=target===RenderTarget.canvas||target===RenderTarget.export;if(!isStaticRenderer){return[...rules,...breakpointKeys.map(key=>{const query=mediaQueries[key];return`@media ${query} { ${breakpointRules[key].join(\" \")} }`;})];}return[...rules,...breakpointKeys.flatMap(key=>{const selector=selectors[key];return breakpointRules[key].map(rule=>`${selector} {${rule}}`);})];};/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 1000\n * @framerIntrinsicWidth 1200\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"jVwCxigsU\":{\"layout\":[\"fixed\",\"fixed\"]},\"GAGSSPgUn\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n * @framerHitTargets {\"nEOWAQhW9\":[\".framer-ytc0ve-container\"],\"jVwCxigsU\":[\".framer-ytc0ve-container\"],\"GAGSSPgUn\":[\".framer-ytc0ve-container\"]}\n * @framerBreakpoints {\"nEOWAQhW9\":{\"min\":1200,\"canvasClassName\":\"framer-hudjyh-override\",\"minHeight\":1000,\"name\":\"Desktop\",\"width\":1200,\"rootFontSize\":16},\"jVwCxigsU\":{\"min\":810,\"max\":1199,\"canvasClassName\":\"framer-1ay13ai-override\",\"minHeight\":1000,\"viewportHeight\":1080,\"name\":\"Tablet\",\"width\":810,\"rootFontSize\":16},\"GAGSSPgUn\":{\"max\":809,\"canvasClassName\":\"framer-12tlyhy-override\",\"minHeight\":1000,\"viewportHeight\":844,\"name\":\"Phone\",\"width\":390,\"rootFontSize\":16}}\n * @framerDefaultVariant nEOWAQhW9\n * @framerLayoutTemplate true\n */const FramerPxj78p5uU=withCSS(Component,css,\"framer-7lEHp\");export default FramerPxj78p5uU;FramerPxj78p5uU.displayName=\"Main Nav and footer template\";FramerPxj78p5uU.defaultProps={height:1e3,width:1200};addFonts(FramerPxj78p5uU,[{explicitInter:true,fonts:[{cssFamilyName:\"Hack Regular\",source:\"custom\",style:\"normal\",uiFamilyName:\"Hack\",url:\"https://framerusercontent.com/assets/VExQhe4IJlkYKwJFGpI2liR5tYo.woff2\",weight:\"400\"}]},...DoriLLMFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerPxj78p5uU\",\"slots\":[],\"annotations\":{\"framerDisplayContentsDiv\":\"false\",\"framerContractVersion\":\"1\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"jVwCxigsU\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"GAGSSPgUn\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerBreakpoints\":\"{\\\"nEOWAQhW9\\\":{\\\"min\\\":1200,\\\"canvasClassName\\\":\\\"framer-hudjyh-override\\\",\\\"minHeight\\\":1000,\\\"name\\\":\\\"Desktop\\\",\\\"width\\\":1200,\\\"rootFontSize\\\":16},\\\"jVwCxigsU\\\":{\\\"min\\\":810,\\\"max\\\":1199,\\\"canvasClassName\\\":\\\"framer-1ay13ai-override\\\",\\\"minHeight\\\":1000,\\\"viewportHeight\\\":1080,\\\"name\\\":\\\"Tablet\\\",\\\"width\\\":810,\\\"rootFontSize\\\":16},\\\"GAGSSPgUn\\\":{\\\"max\\\":809,\\\"canvasClassName\\\":\\\"framer-12tlyhy-override\\\",\\\"minHeight\\\":1000,\\\"viewportHeight\\\":844,\\\"name\\\":\\\"Phone\\\",\\\"width\\\":390,\\\"rootFontSize\\\":16}}\",\"framerAutoSizeImages\":\"true\",\"framerLayoutTemplate\":\"true\",\"framerComponentViewportWidth\":\"true\",\"framerIntrinsicHeight\":\"1000\",\"framerHitTargets\":\"{\\\"nEOWAQhW9\\\":[\\\".framer-ytc0ve-container\\\"],\\\"jVwCxigsU\\\":[\\\".framer-ytc0ve-container\\\"],\\\"GAGSSPgUn\\\":[\\\".framer-ytc0ve-container\\\"]}\",\"framerColorSyntax\":\"true\",\"framerDefaultVariant\":\"nEOWAQhW9\",\"framerImmutableVariables\":\"true\",\"framerIntrinsicWidth\":\"1200\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","\r\n\t\timport * as Framer from \"framer\";\r\nimport * as React from \"react\";\r\nimport { createPortal } from \"react-dom\";\r\nimport * as ReactDOM from \"react-dom/client\";\r\nimport MainNavAndFooterTemplate from \"https://framerusercontent.com/modules/oh2NFtZJxEoQU6zALa77/v8VOw7L0OURqzlSHNkZh/Pxj78p5uU.js\";\r\n\r\n\t\tconst routes = {augiA20Il: {elements: {ExglhT8zx: \"about\", KIMi4P64W: \"experience\", V5V4Z4DQQ: \"work\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/ep8VHMSKb2U26CFXR0Ly/0eVC6xaBIoImLw1wcDtt/augiA20Il.js\")), path: \"/\"}, YFAZsmPic: {elements: {bNizrK2vR: \"reflection\", c6NorDG_n: \"current\", f1NZwRGdV: \"research\", NBN4hv37E: \"solution\", Qyal3_uRH: \"stack\", sjPkiFXDN: \"intro\", tPRMUGzFf: \"ideation\", uKfx5Or1Z: \"problem\", utNCa5ixN: \"context\", wZMBK5JtB: \"setup\", XoiV01jk3: \"integration\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/nZHF8v4K1agdpTV9eK0J/xP0osKiiCTIlxwqa5Cvk/YFAZsmPic.js\")), path: \"/laborbudgeting-pw\"}, bT6EGl6rg: {elements: {aNpzc1hpm: \"solution\", EDVPW3TB8: \"stack\", ngEaZ_uCt: \"branding-1\", O5BAJMmQ5: \"problem\", PT9uqy3wo: \"reflection\", S18mC5tTx: \"context\", t9Lwz7u1u: \"research\", XA93SE2k_: \"branding\", ZniU2a4DQ: \"design\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/V1M9IG0bZtKFZVQMplvW/ZwOHVQ54Nv4GPJiyC4R0/bT6EGl6rg.js\")), path: \"/humyn-26\"}, MO2aIt9H_: {elements: {Bz5cPsS1U: \"scoping\", fun_H4yIl: \"start\", jE8srrzc7: \"problem\", SN6VF_vsG: \"reflection\", soHRFggpO: \"stack\", T8LZibM2s: \"introduction\", xxZKhKtHd: \"solution\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/8tp7rpkzOQmd9B01siiP/RQWtsg0O7tEagQ0zUl65/MO2aIt9H_.js\")), path: \"/figbud\"}, G6OqMCnEt: {elements: {fj7zMN5sb: \"scoping-2\", iMds9rgCs: \"scoping-3\", lZ5liuKbT: \"solution\", N5wkZl91s: \"start\", nMRbD7Wrh: \"scoping\", oqQjbli_d: \"problem\", taptI9mH3: \"reflection\", TIBYUWg7C: \"stack\", vb1DyOtpV: \"introduction\", wI6bZ8P5V: \"scoping-1\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/6Mda8Qynj773YzbEOkvE/r2pLcaaK8YSTJZCO23BQ/G6OqMCnEt.js\")), path: \"/buzzr\"}}\r\n\r\n\t\tconst locales = [{code: \"en-US\", id: \"default\", name: \"English\", slug: \"\", textDirection: \"ltr\"}]\r\n\t\tconst collectionUtils = {}\r\n\t\tconst framerSiteId = \"1f8aa093db3e01f976a0b2b10ce6a8d6a5c217677e139b6ccc55b4b81060f223\"\r\n\t\tfunction Template({webPageId, children, style, ...rest}) {const templateProps = {}\r\nconst props = templateProps[webPageId] ?? {}\r\nswitch (webPageId) {case \"augiA20Il\":\r\ncase \"YFAZsmPic\":\r\ncase \"bT6EGl6rg\":\r\ncase \"MO2aIt9H_\":\r\ncase \"G6OqMCnEt\":\r\nreturn React.createElement(MainNavAndFooterTemplate, {...props, key: \"MainNavAndFooterTemplate\", style}, children(true));\r\ndefault: { return children(false) }}}\r\nexport function getLayoutTemplateBreakpoints(routeId) {switch (routeId) {case \"augiA20Il\":\r\ncase \"YFAZsmPic\":\r\ncase \"bT6EGl6rg\":\r\ncase \"MO2aIt9H_\":\r\ncase \"G6OqMCnEt\":\r\nreturn [{hash: \"hudjyh\", mediaQuery: \"(min-width: 1200px)\"}, {hash: \"1ay13ai\", mediaQuery: \"(min-width: 810px) and (max-width: 1199.98px)\"}, {hash: \"12tlyhy\", mediaQuery: \"(max-width: 809.98px)\"}]\r\ndefault: { return undefined }}}\r\n\r\n\t\tconst isBrowser = typeof document !== \"undefined\"\r\n\t\tconst isBot = isBrowser && /bot|-google|google-|yandex|ia_archiver|crawl|spider/iu.test(navigator.userAgent)\r\n\r\n\t\texport async function getPageRoot({ routeId, pathVariables, localeId, collectionItemId }) {\r\n\t\t\tconst rootPreload = routes[routeId].page.preload()\r\n\r\n\t\t\tconst content = React.createElement(\r\n\t\t\t\tFramer.PageRoot,\r\n\t\t\t\t{\r\n\t\t\t\t\tisWebsite: true,\r\n\t\t\t\t\tenvironment: \"site\",\r\n\t\t\t\t\trouteId,\r\n\t\t\t\t\tpathVariables,\r\n\t\t\t\t\troutes,\r\n\t\t\t\t\tcollectionUtils,\r\n\t\t\t\t\tframerSiteId,\r\n\t\t\t\t\tnotFoundPage: Framer.lazy(() => import(\"__framer-not-found-page\")),\r\n\t\t\t\t\tisReducedMotion: undefined,\r\n\t\t\t\t\tlocaleId,\r\n\t\t\t\t\tlocales,\r\n\t\t\t\t\tpreserveQueryParams: undefined,\r\n\t\t\t\t\tsiteCanonicalURL: \"https://www.sarveshsea.site\",\r\n\t\t\t\t\tEditorBar: \r\n\t\t\ttypeof window !== \"undefined\" ? (() => {\r\n\t\t\t\tif (isBot) {\r\n\t\t\t\t\tconsole.log(\"[Framer On-Page Editing] Unavailable because navigator is bot\")\r\n\t\t\t\t\treturn\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn Framer.lazy(async () => {\r\n\t\t\t\t\tconst dependencies = {\r\n\t\t\t\t\t\t__version: 3,\r\n\t\t\t\t\t\tframer: {\r\n\t\t\t\t\t\t\tuseCurrentRoute: Framer.useCurrentRoute,\r\n\t\t\t\t\t\t\tuseLocaleInfo: Framer.useLocaleInfo,\r\n\t\t\t\t\t\t\tuseRouter: Framer.useRouter,\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\treact: {\r\n\t\t\t\t\t\t\tcreateElement: React.createElement,\r\n\t\t\t\t\t\t\tFragment: React.Fragment,\r\n\t\t\t\t\t\t\tmemo: React.memo,\r\n\t\t\t\t\t\t\tuseCallback: React.useCallback,\r\n\t\t\t\t\t\t\tuseEffect: React.useEffect,\r\n\t\t\t\t\t\t\tuseRef: React.useRef,\r\n\t\t\t\t\t\t\tuseState: React.useState,\r\n\t\t\t\t\t\t\tuseLayoutEffect: React.useLayoutEffect,\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\"react-dom\": { createPortal },\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\twindow.__framer_editorBarDependencies = dependencies\r\n\r\n\t\t\t\t\tconst { createEditorBar } = await import(\"https://framer.com/edit/init.mjs\")\r\n\t\t\t\t\treturn {\r\n\t\t\t\t\t\tdefault: createEditorBar(),\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t})() : undefined\r\n\t\t,\r\n\t\t\t\t\tadaptLayoutToTextDirection: false,\r\n\t\t\t\t\tLayoutTemplate: Template,\r\n\t\t\t\t\tloadSnippetsModule: new Framer.LazyValue(() => import(\"https://framerusercontent.com/modules/kPgCA0012Yq9j3zPSSP6/fGGzXmekykftxNtHOgK9/snippets.js\")),\r\n\t\t\t\t\tinitialCollectionItemId: collectionItemId,\r\n\t\t\t\t}\r\n\t\t\t)\r\n\r\n\t\t\tconst contentWithFeaturesContext = React.createElement(\r\n\t\t\t\tFramer.LibraryFeaturesProvider,\r\n\t\t\t\t{\r\n\t\t\t\t\tchildren: content,\r\n\t\t\t\t\tvalue: {autobahnNavigation: true, editorBarDisableFrameAncestorsSecurity: false, motionDivToDiv: false, onPageLocalizationSupport: true, onPageMoveTool: true, synchronousNavigationOnDesktop: false, yieldOnTap: false}\r\n\t\t\t\t}\r\n\t\t\t)\r\n\r\n\t\t\tconst contentWithGracefullyDegradingErrorBoundary = React.createElement(Framer.GracefullyDegradingErrorBoundary, {\r\n\t\t\t\tchildren: contentWithFeaturesContext\r\n\t\t\t})\r\n\r\n\t\t\t\r\n\t\t\tconst page = React.createElement(Framer.PageEffectsProvider, {\r\n\t\t\t\tchildren: contentWithGracefullyDegradingErrorBoundary,\r\n\t\t\t\tvalue: {global: {enter: {mask: {angle: 90, type: \"wipe\", width: \"100%\"}, opacity: 1, rotate: 0, rotate3d: false, rotateX: 0, rotateY: 0, scale: 1, transition: {damping: 30, delay: 0, duration: 0.4, ease: [0.27, 0, 0.51, 1], mass: 1, stiffness: 400, type: \"tween\"}, x: \"0px\", y: \"0px\"}}, routes: {}}\r\n\t\t\t})\r\n\r\n\t\t\t// We don't want the initial render to immediately have to suspend.\r\n\t\t\tawait rootPreload\r\n\t\t\treturn page\r\n\t\t}\r\n\r\n\t\tif (isBrowser) {\r\n\t\t\twindow.__framer_importFromPackage = (packageAndFilename, exportIdentifier) => () => {\r\n\t\t\t\treturn React.createElement(Framer.ErrorPlaceholder, { error: 'Package component not supported: \"' + exportIdentifier + '\" in \"' + packageAndFilename + '\"' })\r\n\t\t\t}\r\n\r\n\t\t\twindow.__framer_events = window.__framer_events || []\r\n\r\n\t\t\t// Initialize lazy modules cache for hydration\r\n\t\t\tFramer.initLazyModulesCache()\r\n\r\n\t\t\t// Fallback support for stack gaps\r\n\t\t\tFramer.installFlexboxGapWorkaroundIfNeeded()\r\n\r\n\t\t\tconst container = document.getElementById(\"main\")\r\n\t\t\t// We know that #main is parsed before this script, so we don't need to wait for DOMContentLoaded or similar events.\r\n\t\t\tif (\"framerHydrateV2\" in container.dataset) main(true, container)\r\n\t\t\telse main(false, container)\r\n\t\t}\r\n\r\n\t\tfunction track() {\r\n\t\t\tif (!isBrowser) return\r\n\t\t\twindow.__framer_events.push(arguments)\r\n\t\t}\r\n\r\n\t\tasync function main(shouldHydrate, container) {\r\n\t\t\tfunction handleError(error, errorInfo, recoverable = true) {\r\n\t\t\t\tif (error.caught || window.__framer_hadFatalError) return // we already logged it\r\n\r\n\t\t\t\tconst componentStack = errorInfo?.componentStack\r\n\t\t\t\tif (recoverable) {\r\n\t\t\t\t\tconsole.warn(\"Caught a recoverable error. The site is still functional, but might have some UI flickering or degraded page load performance. If you are the author of this website, update external components and check recently added custom code or code overrides to fix the following server/client mismatches:\\n\", error, componentStack)\r\n\t\t\t\t\t// we only want to collect 1%, because this can be quite noisy (floods the data pipeline)\r\n\t\t\t\t\tif (Math.random() > 0.01) return\r\n\t\t\t\t} else {\r\n\t\t\t\t\tconsole.error(\"Caught a fatal error. Please report the following to the Framer team via https://www.framer.com/contact/:\\n\", error, componentStack)\r\n\t\t\t\t}\r\n\t\t\t\ttrack(recoverable ? \"published_site_load_recoverable_error\" : \"published_site_load_error\", {\r\n\t\t\t\t\tmessage: String(error),\r\n\t\t\t\t\tcomponentStack, // componentStack is more useful\r\n\t\t\t\t\tstack: componentStack ? undefined : error instanceof Error && typeof error.stack === \"string\" ? error.stack : null,\r\n\t\t\t\t})\r\n\t\t\t}\r\n\r\n\t\t\ttry {\r\n\t\t\t\tlet routeId, localeId, pathVariables, breakpoints, routeData\r\n\t\t\t\tif (shouldHydrate) {\r\n\t\t\t\t\trouteData = JSON.parse(container.dataset[\"framerHydrateV2\"])\r\n\t\t\t\t\trouteId = routeData.routeId\r\n\t\t\t\t\tlocaleId = routeData.localeId\r\n\t\t\t\t\tpathVariables = routeData.pathVariables\r\n\t\t\t\t\tbreakpoints = routeData.breakpoints\r\n\r\n\t\t\t\t\trouteId = Framer.patchRoutesForABTesting(routes, routeId) // Prioritize optimized route id to avoid flickering in browsers not supporting the server-timing header (Safari older than 16.4)\r\n\t\t\t\t} else {\r\n\t\t\t\t\tFramer.patchRoutesForABTesting(routes, undefined) // This must happen before inferInitialRouteFromPath\r\n\r\n\t\t\t\t\t\r\n\t\t\t\t\tconst serverRouteExperimentEnabled = true\r\n\t\t\t\t\tconst serverRoute = serverRouteExperimentEnabled && performance.getEntriesByType(\"navigation\")[0]?.serverTiming?.find(e => e.name === \"route\")?.description\r\n\t\t\t\t\tif (serverRoute) {\r\n\t\t\t\t\t\tconst routeData = new URLSearchParams(serverRoute)\r\n\t\t\t\t\t\trouteId = routeData.get(\"id\")\r\n\t\t\t\t\t\tlocaleId = routeData.get(\"locale\")\r\n\t\t\t\t\t\tfor (const [key, value] of routeData.entries()) {\r\n\t\t\t\t\t\t\tif (!key.startsWith(\"var.\")) continue\r\n\t\t\t\t\t\t\tpathVariables ??= {}\r\n\t\t\t\t\t\t\tpathVariables[key.slice(4)] = value\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (!routeId || !localeId) {\r\n\t\t\t\t\t\tconst routeData = Framer.inferInitialRouteFromPath(routes, decodeURIComponent(location.pathname), true, locales)\r\n\t\t\t\t\t\trouteId = routeData.routeId\r\n\t\t\t\t\t\tlocaleId = routeData.localeId\r\n\t\t\t\t\t\tpathVariables = routeData.pathVariables\r\n\t\t\t\t\t}\r\n\t\t\t\t\t\r\n\t\t\t\t}\r\n\r\n\t\t\t\tconst pagePromise = getPageRoot({\r\n\t\t\t\t\trouteId,\r\n\t\t\t\t\tlocaleId,\r\n\t\t\t\t\tpathVariables,\r\n\t\t\t\t\tcollectionItemId: routeData?.collectionItemId,\r\n\t\t\t\t})\r\n\r\n\t\t\t\t\r\nif (typeof window !== \"undefined\") {\r\n\tvoid (async () => {\r\n\t\tconst route = routes[routeId]\r\n\r\n\t\tconst defaultLocaleId = \"default\"\r\n\t\tconst framerLocale = locales.find(({ id }) => !localeId ? id === defaultLocaleId : id === localeId).code\r\n\r\n\t\tlet collectionItemId = routeData?.collectionItemId ?? null\r\n\t\tif (collectionItemId === null && route?.collectionId && collectionUtils) {\r\n\t\t\t  const utils = await collectionUtils[route.collectionId]?.()\r\n\t\t\t  const [slug] = Object.values(pathVariables)\r\n\t\t\t  if (utils && typeof slug === \"string\") {\r\n\t\t\t\t  collectionItemId = (await utils.getRecordIdBySlug(slug, framerLocale || undefined)) ?? null\r\n\t\t\t  }\r\n\t\t}\r\n\r\n\t\tconst resolvedDateTimeOptions = Intl.DateTimeFormat().resolvedOptions()\r\n\t\tconst timezone = resolvedDateTimeOptions.timeZone\r\n\t\tconst locale = resolvedDateTimeOptions.locale\r\n\r\n\t\t// wait for the page to be activated before sending the pageview event\r\n\t\t// https://developer.chrome.com/docs/web-platform/prerender-pages#impact-on-analytics\r\n\t\tawait new Promise((resolve) => {\r\n\t\t\tif (document.prerendering) {\r\n\t\t\t\tdocument.addEventListener(\"prerenderingchange\", resolve, { once: true })\r\n\t\t\t} else {\r\n\t\t\t\tresolve()\r\n\t\t\t}\r\n\t\t})\r\n\r\n\t\twindow.__framer_events.push([\r\n\t\t\t\"published_site_pageview\",\r\n\t\t\t{\r\n\t\t\t\tframerSiteId: framerSiteId ?? null,\r\n\t\t\t\tversion: 2,\r\n\t\t\t\troutePath: route?.path || \"/\",\r\n\t\t\t\tcollectionItemId,\r\n\t\t\t\tframerLocale: framerLocale || null,\r\n\t\t\t\twebPageId: route?.abTestingVariantId ?? routeId,\r\n\t\t\t\tabTestId: route?.abTestId,\r\n\t\t\t\treferrer: document.referrer || null,\r\n\t\t\t\turl: window.location.href,\r\n\t\t\t\thostname: window.location.hostname || null,\r\n\t\t\t\tpathname: window.location.pathname || null,\r\n\t\t\t\thash: window.location.hash || null,\r\n\t\t\t\tsearch: window.location.search || null,\r\n\t\t\t\ttimezone,\r\n\t\t\t\tlocale,\r\n\t\t\t},\r\n\t\t\t\"eager\"\r\n\t\t])\r\n\r\n\t\t// Yield to avoid blocking the main thread with the user code\r\n\t\tawait Framer.yieldToMain({ priority: \"background\", ensureContinueBeforeUnload: true, continueAfter: \"paint\" })\r\n\r\n\t\tdocument.dispatchEvent(new CustomEvent(\"framer:pageview\", {\r\n\t\t\tdetail: { framerLocale: framerLocale || null }\r\n\t\t}))\r\n\t})()\r\n}\r\n\r\n\r\n\t\t\t\tconst page = await pagePromise\r\n\t\t\t\tif (shouldHydrate) {\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\tFramer.withPerformanceMarks(\"framer-rewrite-breakpoints\", () => {\r\n\t\t\t\t\t\tFramer.removeHiddenBreakpointLayersV2(breakpoints)\r\n\t\t\t\t\t\twindow.__framer_onRewriteBreakpoints?.(breakpoints)\r\n\t\t\t\t\t})\r\n\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\tconst startTransition = isBot ? cb => cb() : React.startTransition\r\n\t\t\t\t\tstartTransition(() => {\r\n\t\t\t\t\t\tFramer.markHydrationStart()\r\n\t\t\t\t\t\tif (true) Framer.turnOffReactEventHandling()\r\n\t\t\t\t\t\tReactDOM.hydrateRoot(container, page, { onRecoverableError: handleError })\r\n\t\t\t\t\t})\r\n\t\t\t\t} else {\r\n\t\t\t\t\t\r\n\t\t\t\t\tReactDOM.createRoot(container, { onRecoverableError: handleError }).render(page)\r\n\t\t\t\t}\r\n\t\t\t} catch (error) {\r\n\t\t\t\thandleError(error, undefined, false)\r\n\t\t\t\tthrow error\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t\r\n\r\n\t\t\r\n\t"],"mappings":"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"}