{"version":3,"file":"JobHeader.BfJBOD6R.mjs","names":["React.useState"],"sources":["https:/framerusercontent.com/modules/eLczKQyPAXuqehOdmU9J/lpLuNljkGJD2NrHFMWXa/jobStore.js","https:/framerusercontent.com/modules/u3clxXvHn99qaNeEfR45/hUna27BhNtXEBAuBDiKG/JobHeader.js"],"sourcesContent":["// ================== TYPES ==================\n// ================== HELPERS ==================\nfunction getJobIdFromUrl(){if(typeof window===\"undefined\")return\"\";return new URLSearchParams(window.location.search).get(\"job_id\")||\"\";}const CACHE=new Map;export const TTL_MS=6e4// 1 minuto\n;// ================== HOOK ==================\nexport function useJobDetail(execUrl){const jobId=getJobIdFromUrl();async function load(){if(!execUrl)throw new Error(\"Missing Exec URL\");if(!jobId)throw new Error(\"Missing job_id in URL\");const key=`${execUrl}::${jobId}`;const now=Date.now();const hit=CACHE.get(key);// 1️⃣ Data fresca\nif(hit?.data&&now-hit.at<TTL_MS){return hit.data;}// 2️⃣ Request en curso\nif(hit?.promise&&now-hit.at<TTL_MS){return hit.promise;}// 3️⃣ Nuevo request\nconst promise=(async()=>{const res=await fetch(`${execUrl}?path=job&job_id=${encodeURIComponent(jobId)}`);const json=await res.json();if(!json?.ok||!json?.job){throw new Error(json?.error||\"Failed to load job\");}const job=json.job;CACHE.set(key,{at:Date.now(),data:job});return job;})();CACHE.set(key,{at:Date.now(),promise});return promise;}return{jobId,load};}\nexport const __FramerMetadata__ = {\"exports\":{\"TTL_MS\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useJobDetail\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"JobDetail\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SectionData\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./jobStore.map","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import*as React from\"react\";import{addPropertyControls,ControlType}from\"framer\";import{useJobDetail}from\"https://framerusercontent.com/modules/eLczKQyPAXuqehOdmU9J/lpLuNljkGJD2NrHFMWXa/jobStore.js\";/**\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight auto\n */export default function JobHeader(props){const{execUrl,titleColor,deptColor}=props;const{jobId,load}=useJobDetail(execUrl);const[title,setTitle]=React.useState(\"\");const[dept,setDept]=React.useState(\"\");React.useEffect(()=>{let cancelled=false;(async()=>{if(!jobId)return;try{const job=await load();if(!cancelled){setTitle(job.title||\"\");setDept(job.department||\"\");}}catch{// No mostramos error en header\n}})();return()=>{cancelled=true;};},[execUrl,jobId]);if(!jobId)return null;return /*#__PURE__*/_jsxs(\"div\",{style:{display:\"grid\",gap:6},children:[/*#__PURE__*/_jsx(\"div\",{style:{fontFamily:\"Roboto, sans-serif\",fontWeight:400,fontSize:14,lineHeight:\"140%\",color:deptColor},children:dept}),/*#__PURE__*/_jsx(\"div\",{style:{fontFamily:\"Roboto, sans-serif\",fontWeight:800,fontSize:32,lineHeight:\"120%\",color:titleColor},children:title})]});}addPropertyControls(JobHeader,{execUrl:{type:ControlType.String,title:\"Exec URL\"},titleColor:{type:ControlType.Color,title:\"Title\",defaultValue:\"#FFFFFF\"},deptColor:{type:ControlType.Color,title:\"Department\",defaultValue:\"rgba(255,255,255,0.8)\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"JobHeader\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"any\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"auto\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],"mappings":"sMAEA,SAAS,GAAiB,CAAyC,OAA9B,IAAS,OAAkB,GAAU,IAAI,gBAAgB,EAAO,SAAS,OAAO,CAAC,IAAI,SAAS,EAAE,GAErI,SAAgB,EAAa,EAAQ,CAAC,IAAM,EAAM,GAAiB,CAAC,eAAe,GAAM,CAAC,GAAG,CAAC,EAAQ,MAAU,MAAM,mBAAmB,CAAC,GAAG,CAAC,EAAM,MAAU,MAAM,wBAAwB,CAAC,IAAM,EAAI,GAAG,EAAQ,IAAI,IAAc,EAAI,KAAK,KAAK,CAAO,EAAI,EAAM,IAAI,EAAI,CAC3Q,GAAG,GAAK,MAAM,EAAI,EAAI,GAAG,EAAQ,OAAO,EAAI,KAC5C,GAAG,GAAK,SAAS,EAAI,EAAI,GAAG,EAAQ,OAAO,EAAI,QAC/C,IAAM,GAAS,SAAS,CAAkF,IAAM,EAAK,MAAlF,MAAM,MAAM,GAAG,EAAQ,mBAAmB,mBAAmB,EAAM,GAAG,EAAsB,MAAM,CAAC,GAAG,CAAC,GAAM,IAAI,CAAC,GAAM,IAAK,MAAU,MAAM,GAAM,OAAO,qBAAqB,CAAE,IAAM,EAAI,EAAK,IAA4C,OAAxC,EAAM,IAAI,EAAI,CAAC,GAAG,KAAK,KAAK,CAAC,KAAK,EAAI,CAAC,CAAQ,KAAQ,CAAwC,OAAvC,EAAM,IAAI,EAAI,CAAC,GAAG,KAAK,KAAK,CAAC,UAAQ,CAAC,CAAQ,EAAS,MAAM,CAAC,QAAM,OAAK,uBALzN,EAAM,IAAI,IAAiB,EAAO,OCC9K,SAAwB,EAAU,EAAM,CAAC,GAAK,CAAC,UAAQ,aAAW,aAAW,EAAW,CAAC,QAAM,QAAM,EAAa,EAAQ,CAAM,CAAC,EAAM,GAAUA,EAAe,GAAG,CAAM,CAAC,EAAK,GAASA,EAAe,GAAG,CAClI,OADmI,MAAoB,CAAC,IAAI,EAAU,GAC3O,OADkP,SAAS,CAAK,KAAa,GAAG,CAAC,IAAM,EAAI,MAAM,GAAM,CAAK,IAAW,EAAS,EAAI,OAAO,GAAG,CAAC,EAAQ,EAAI,YAAY,GAAG,OAAQ,MACnX,KAAW,CAAC,EAAU,KAAS,CAAC,EAAQ,EAAM,CAAC,CAAK,EAAsC,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,IAAI,EAAE,CAAC,SAAS,CAAc,EAAK,MAAM,CAAC,MAAM,CAAC,WAAW,qBAAqB,WAAW,IAAI,SAAS,GAAG,WAAW,OAAO,MAAM,EAAU,CAAC,SAAS,EAAK,CAAC,CAAc,EAAK,MAAM,CAAC,MAAM,CAAC,WAAW,qBAAqB,WAAW,IAAI,SAAS,GAAG,WAAW,OAAO,MAAM,EAAW,CAAC,SAAS,EAAM,CAAC,CAAC,CAAC,CAAC,CAA7W,sBAJb,IAA4B,IAAoD,IAAsH,CAIsL,EAAoB,EAAU,CAAC,QAAQ,CAAC,KAAK,EAAY,OAAO,MAAM,WAAW,CAAC,WAAW,CAAC,KAAK,EAAY,MAAM,MAAM,QAAQ,aAAa,UAAU,CAAC,UAAU,CAAC,KAAK,EAAY,MAAM,MAAM,aAAa,aAAa,wBAAwB,CAAC,CAAC"}