{"version":3,"file":"OperatingContact.BHC9S7Wh.mjs","names":["useState","useMemo","useCallback"],"sources":["https:/framerusercontent.com/modules/9TRxjsa2IGxneQjTMQMV/H4aLCtb5uDNHNdXs8iFL/OperatingContact.js"],"sourcesContent":["import{jsx as _jsx}from\"react/jsx-runtime\";import{useCallback,useEffect,useMemo,useState,startTransition}from\"react\";import{addPropertyControls,ControlType}from\"framer\";function parseTimeToMinutes(value){const trimmed=value.trim();const fullMatch=trimmed.match(/^(\\d{1,2})[:hH](\\d{2})$/);const hourOnlyMatch=trimmed.match(/^(\\d{1,2})[hH]$/);if(!fullMatch&&!hourOnlyMatch)return null;const hours=Number(fullMatch?fullMatch[1]:hourOnlyMatch?.[1]);const minutes=Number(fullMatch?fullMatch[2]:0);if(Number.isNaN(hours)||Number.isNaN(minutes))return null;if(hours<0||hours>23||minutes<0||minutes>59)return null;return hours*60+minutes;}function getMinutesFromFormatterTimeZone(now,timeZone){try{const formatter=new Intl.DateTimeFormat(\"en-US\",{timeZone,hour12:false,hour:\"2-digit\",minute:\"2-digit\",hourCycle:\"h23\"});const parts=formatter.formatToParts(now);const hourValue=parts.find(part=>part.type===\"hour\")?.value;const minuteValue=parts.find(part=>part.type===\"minute\")?.value;const hour=Number(hourValue);const minute=Number(minuteValue);if(Number.isNaN(hour)||Number.isNaN(minute))return null;return hour*60+minute;}catch{return null;}}function getCurrentMinutesInTimeZone(timeZone){const now=new Date;const requested=timeZone.trim();const requestedMinutes=requested?getMinutesFromFormatterTimeZone(now,requested):null;if(requestedMinutes!==null)return requestedMinutes;const saoPauloMinutes=getMinutesFromFormatterTimeZone(now,\"America/Sao_Paulo\");if(saoPauloMinutes!==null)return saoPauloMinutes;return now.getHours()*60+now.getMinutes();}function normalizeLink(value){const trimmed=value.trim();if(!trimmed)return\"\";if(trimmed.startsWith(\"/\"))return trimmed;if(/^wa\\.me\\/\\S+$/i.test(trimmed))return`https://${trimmed}`;if(/^api\\.whatsapp\\.com\\/\\S+$/i.test(trimmed))return`https://${trimmed}`;if(/^\\+?[\\d\\s().-]+$/.test(trimmed)){const digits=trimmed.replace(/\\D/g,\"\");if(!digits)return\"\";return`https://wa.me/${digits}`;}if(/^https?:\\/\\//i.test(trimmed)){try{const parsed=new URL(trimmed);if(parsed.protocol!==\"http:\"&&parsed.protocol!==\"https:\")return\"\";return trimmed;}catch{return\"\";}}return\"\";}function getMsUntilNextMinute(){const now=new Date;const seconds=now.getSeconds();const milliseconds=now.getMilliseconds();const remaining=(60-seconds)*1e3-milliseconds;return remaining>0?remaining:6e4;}/**\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight auto\n */export default function OperatingContact(props){const{label,link,startTime,endTime,timeZone,displayMode,activeColor,inactiveColor,labelColor,activeTextColor,offlineLabel,fontSize}=props;const[currentMinutes,setCurrentMinutes]=useState(()=>getCurrentMinutesInTimeZone(timeZone));useEffect(()=>{if(typeof window===\"undefined\")return;const updateTime=()=>{const nextValue=getCurrentMinutesInTimeZone(timeZone);startTransition(()=>setCurrentMinutes(nextValue));};updateTime();let intervalId=0;const timeoutId=window.setTimeout(()=>{updateTime();intervalId=window.setInterval(updateTime,6e4);},getMsUntilNextMinute());return()=>{window.clearTimeout(timeoutId);if(intervalId)window.clearInterval(intervalId);};},[timeZone]);const startMinutes=useMemo(()=>parseTimeToMinutes(startTime),[startTime]);const endMinutes=useMemo(()=>parseTimeToMinutes(endTime),[endTime]);const isAvailable=useMemo(()=>{if(startMinutes===null||endMinutes===null)return false;if(startMinutes===endMinutes)return true;if(startMinutes<endMinutes){return currentMinutes>=startMinutes&&currentMinutes<endMinutes;}return currentMinutes>=startMinutes||currentMinutes<endMinutes;},[currentMinutes,endMinutes,startMinutes]);const resolvedLink=useMemo(()=>normalizeLink(link),[link]);const availabilityText=isAvailable?\"available now\":\"currently unavailable\";const ariaLabel=`${label} — ${availabilityText}`;const popupLabel=isAvailable?label:offlineLabel;const handleOpen=useCallback(()=>{if(!isAvailable||!resolvedLink)return;if(typeof window!==\"undefined\"){window.open(resolvedLink,\"_blank\",\"noopener,noreferrer\");}},[isAvailable,resolvedLink]);if(displayMode===\"Inline\"){return /*#__PURE__*/_jsx(\"div\",{style:{position:\"relative\",display:\"inline-flex\",alignItems:\"center\",width:\"max-content\",maxWidth:\"100%\"},children:/*#__PURE__*/_jsx(\"button\",{type:\"button\",onClick:handleOpen,disabled:!isAvailable||!resolvedLink,\"aria-disabled\":!isAvailable||!resolvedLink,\"aria-label\":ariaLabel,style:{appearance:\"none\",border:\"none\",background:\"transparent\",padding:0,margin:0,fontSize,color:isAvailable?activeColor:labelColor,textDecoration:isAvailable?\"underline\":\"none\",textUnderlineOffset:\"2px\",textDecorationThickness:\"1px\",opacity:isAvailable?1:.65,cursor:isAvailable?\"pointer\":\"default\",transition:\"color 150ms ease, opacity 150ms ease\",whiteSpace:\"nowrap\"},children:label})});}return /*#__PURE__*/_jsx(\"div\",{style:{position:\"relative\",width:\"100%\"},children:/*#__PURE__*/_jsx(\"button\",{type:\"button\",onClick:handleOpen,disabled:!isAvailable||!resolvedLink,\"aria-disabled\":!isAvailable||!resolvedLink,\"aria-label\":ariaLabel,style:{width:\"100%\",border:\"none\",borderRadius:999,padding:\"10px 16px\",fontSize,fontWeight:600,lineHeight:1.2,background:isAvailable?activeColor:inactiveColor,color:isAvailable?activeTextColor:labelColor,cursor:isAvailable?\"pointer\":\"not-allowed\",opacity:isAvailable?1:.78,transition:\"background-color 150ms ease, color 150ms ease, opacity 150ms ease\",whiteSpace:\"nowrap\"},children:popupLabel})});}addPropertyControls(OperatingContact,{label:{type:ControlType.String,title:\"Label\",defaultValue:\"Pedir agora\"},link:{type:ControlType.Link,title:\"Link\",defaultValue:\"https://wa.me/5511999999999\"},startTime:{type:ControlType.String,title:\"Start\",defaultValue:\"08:00\",placeholder:\"HH:mm\"},endTime:{type:ControlType.String,title:\"End\",defaultValue:\"18:00\",placeholder:\"HH:mm\"},timeZone:{type:ControlType.String,title:\"Timezone\",defaultValue:\"America/Sao_Paulo\"},displayMode:{type:ControlType.Enum,title:\"Mode\",defaultValue:\"Inline\",options:[\"Inline\",\"Popup\"],optionTitles:[\"Inline\",\"Popup\"],displaySegmentedControl:true},activeColor:{type:ControlType.Color,title:\"Active\",defaultValue:\"#FFB800\"},inactiveColor:{type:ControlType.Color,title:\"Inactive\",defaultValue:\"#9AA6B2\"},labelColor:{type:ControlType.Color,title:\"Label\",defaultValue:\"#4B5968\"},activeTextColor:{type:ControlType.Color,title:\"Active Text\",defaultValue:\"#FFFFFF\"},offlineLabel:{type:ControlType.String,title:\"Offline Label\",defaultValue:\"Offline\"},fontSize:{type:ControlType.Number,title:\"Font Size\",defaultValue:14,min:10,max:32,step:1,unit:\"px\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"OperatingContact\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"auto\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./OperatingContact.map"],"mappings":"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"}