{"version":3,"file":"StatusPageAPI.BEMGrDB2.mjs","names":["React.useState"],"sources":["https:/framerusercontent.com/modules/5PgaSzzLZf2nHl7yDV0v/cQkc9BDrkIQ7CUeaMbEB/StatusPageAPI.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import*as React from\"react\";const colorMap={none:\"#22c55e\",minor:\"#eab308\",major:\"#f97316\",critical:\"#ef4444\"};// Uppercase only the first letter of the first word; everything else lowercase.\nfunction sentenceCaseFirstWord(input){if(!input)return\"\";const lower=String(input).trim().toLowerCase();return lower?lower.charAt(0).toUpperCase()+lower.slice(1):lower;}/**\n * StatusIndicator\n * Props:\n *   - url: override base Statuspage URL if you ever move it\n *   - pollMs: how often to refresh (ms). Default 60 s.\n */export default function StatusIndicator({url=\"https://status.loops.so\",pollMs=6e4}){const[status,setStatus]=React.useState({indicator:\"none\",description:\"Loading…\"});React.useEffect(()=>{const fetchStatus=async()=>{try{const res=await fetch(`${url}/api/v2/summary.json`);const data=await res.json();setStatus(data.status);}catch{setStatus({indicator:\"critical\",description:\"Unable to fetch status\"});}};fetchStatus();const timer=setInterval(fetchStatus,pollMs);return()=>clearInterval(timer);},[url,pollMs]);const dotColor=colorMap[status.indicator]||\"#95A5A6\";const description=sentenceCaseFirstWord(status.description);return /*#__PURE__*/_jsxs(\"a\",{href:url,target:\"_blank\",rel:\"noopener noreferrer\",style:{display:\"inline-flex\",alignItems:\"center\",gap:8,fontFamily:\"Inter, sans-serif\",userSelect:\"none\",height:16,textDecoration:\"none\"},children:[/*#__PURE__*/_jsx(\"span\",{style:{width:6,height:6,borderRadius:\"50%\",background:dotColor}}),/*#__PURE__*/_jsx(\"span\",{style:{fontSize:14,fontWeight:400,lineHeight:\"75%\",color:\"#a8a29e\"},children:description})]});}\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"StatusIndicator\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./StatusPageAPI.map"],"mappings":"gIACA,SAAS,EAAsB,EAAM,CAAC,GAAG,CAAC,EAAM,MAAM,GAAG,IAAM,EAAM,OAAO,EAAM,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,GAAM,EAAM,OAAO,EAAE,CAAC,aAAa,CAAC,EAAM,MAAM,EAAE,CAK9J,SAAwB,EAAgB,CAAC,MAAI,0BAA0B,SAAO,KAAK,CAAC,GAAK,CAAC,EAAO,GAAWA,EAAe,CAAC,UAAU,OAAO,YAAY,WAAW,CAAC,CAAC,MAAoB,CAAC,IAAM,EAAY,SAAS,CAAC,GAAG,CAAiF,GAAjB,MAArD,MAAM,MAAM,GAAG,EAAI,sBAAsB,EAAsB,MAAM,EAAgB,OAAO,MAAO,CAAC,EAAU,CAAC,UAAU,WAAW,YAAY,yBAAyB,CAAC,GAAI,GAAa,CAAC,IAAM,EAAM,YAAY,EAAY,EAAO,CAAC,UAAU,cAAc,EAAM,EAAG,CAAC,EAAI,EAAO,CAAC,CAAC,IAAM,EAAS,EAAS,EAAO,YAAY,UAAgB,EAAY,EAAsB,EAAO,YAAY,CAAC,OAAoB,EAAM,IAAI,CAAC,KAAK,EAAI,OAAO,SAAS,IAAI,sBAAsB,MAAM,CAAC,QAAQ,cAAc,WAAW,SAAS,IAAI,EAAE,WAAW,oBAAoB,WAAW,OAAO,OAAO,GAAG,eAAe,OAAO,CAAC,SAAS,CAAc,EAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,aAAa,MAAM,WAAW,EAAS,CAAC,CAAC,CAAc,EAAK,OAAO,CAAC,MAAM,CAAC,SAAS,GAAG,WAAW,IAAI,WAAW,MAAM,MAAM,UAAU,CAAC,SAAS,EAAY,CAAC,CAAC,CAAC,CAAC,oBAN/+B,IAA4B,CAAM,EAAS,CAAC,KAAK,UAAU,MAAM,UAAU,MAAM,UAAU,SAAS,UAAU"}