{"version":3,"file":"TimeWindowVariant.CsdatQFv.mjs","names":["p","React.useState","__legacyOverrideHOC_DataObserverContext","_jsx"],"sources":["https:/framerusercontent.com/modules/6ialtpZF3mHhNPaMaG3J/cPz4oRzTErPmm1xrq7Uu/TimeWindowVariant.js"],"sourcesContent":["// TimeWindowVariant.tsx\nimport{jsx as _jsx}from\"react/jsx-runtime\";import*as React from\"react\";import{addPropertyControls,ControlType}from\"framer\";function getMinutesInTZ(tz){const now=new Date;const parts=new Intl.DateTimeFormat(\"en-GB\",{hour:\"2-digit\",minute:\"2-digit\",hour12:false,timeZone:tz}).formatToParts(now);const h=parseInt(parts.find(p=>p.type===\"hour\")?.value||\"0\",10);const m=parseInt(parts.find(p=>p.type===\"minute\")?.value||\"0\",10);return h*60+m;}function useAvailability(tz,startMins,endMins){const compute=()=>{const mins=getMinutesInTZ(tz);return mins>=startMins&&mins<endMins;};const[available,setAvailable]=React.useState(compute);React.useEffect(()=>{const tick=()=>setAvailable(compute());const id=setInterval(tick,15e3);const onVis=()=>{if(!document.hidden)tick();};document.addEventListener(\"visibilitychange\",onVis);tick();return()=>{clearInterval(id);document.removeEventListener(\"visibilitychange\",onVis);};},[tz,startMins,endMins]);return available;}export function TimeWindowVariant(props){const tz=props.timeZone??\"Europe/Belgrade\";const startHour=props.startHour??8;const startMinute=props.startMinute??0;const endHour=props.endHour??18;const endMinute=props.endMinute??0;const startMins=startHour*60+startMinute;const endMins=endHour*60+endMinute;const isAvailable=useAvailability(tz,startMins,endMins);return{variant:isAvailable?props.availableVariant??\"Available\":props.unavailableVariant??\"Not Available\"};}// Controls\naddPropertyControls(TimeWindowVariant,{availableVariant:{type:ControlType.String,title:\"Available\",defaultValue:\"Available\"},unavailableVariant:{type:ControlType.String,title:\"Not avail.\",defaultValue:\"Not Available\"},timeZone:{type:ControlType.String,title:\"Time zone\",defaultValue:\"Europe/Belgrade\"},startHour:{type:ControlType.Number,title:\"Start Hr\",defaultValue:8,min:0,max:23,step:1,displayStepper:true},startMinute:{type:ControlType.Number,title:\"Start Min\",defaultValue:0,min:0,max:59,step:1,displayStepper:true},endHour:{type:ControlType.Number,title:\"End Hr\",defaultValue:18,min:0,max:23,step:1,displayStepper:true},endMinute:{type:ControlType.Number,title:\"End Min\",defaultValue:0,min:0,max:59,step:1,displayStepper:true}});import{useContext as __legacyOverrideHOC_useContext}from\"react\";import{DataObserverContext as __legacyOverrideHOC_DataObserverContext}from\"framer\";export function withTimeWindowVariant(C){return props=>{__legacyOverrideHOC_useContext(__legacyOverrideHOC_DataObserverContext);return _jsx(C,{...props,...TimeWindowVariant(props)});};}withTimeWindowVariant.displayName=\"TimeWindowVariant\";\nexport const __FramerMetadata__ = {\"exports\":{\"withTimeWindowVariant\":{\"type\":\"reactHoc\",\"name\":\"withTimeWindowVariant\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"TimeWindowVariant\":{\"type\":\"override\",\"name\":\"TimeWindowVariant\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./TimeWindowVariant.map"],"mappings":"0LAC2H,SAAS,EAAe,EAAG,CAAC,IAAM,EAAI,IAAI,KAAW,EAAM,IAAI,KAAK,eAAe,QAAQ,CAAC,KAAK,UAAU,OAAO,UAAU,OAAO,GAAM,SAAS,EAAG,CAAC,CAAC,cAAc,EAAI,CAAO,EAAE,SAAS,EAAM,KAAK,GAAGA,EAAE,OAAO,OAAO,EAAE,OAAO,IAAI,GAAG,CAAO,EAAE,SAAS,EAAM,KAAK,GAAGA,EAAE,OAAO,SAAS,EAAE,OAAO,IAAI,GAAG,CAAC,OAAO,EAAE,GAAG,EAAG,SAAS,EAAgB,EAAG,EAAU,EAAQ,CAAC,IAAM,MAAY,CAAC,IAAM,EAAK,EAAe,EAAG,CAAC,OAAO,GAAM,GAAW,EAAK,GAAe,CAAC,EAAU,GAAcC,EAAe,EAAQ,CAAsT,OAArT,MAAoB,CAAC,IAAM,MAAS,EAAa,GAAS,CAAC,CAAO,EAAG,YAAY,EAAK,KAAK,CAAO,MAAU,CAAK,SAAS,QAAO,GAAM,EAA8D,OAA3D,SAAS,iBAAiB,mBAAmB,EAAM,CAAC,GAAM,KAAW,CAAC,cAAc,EAAG,CAAC,SAAS,oBAAoB,mBAAmB,EAAM,GAAK,CAAC,EAAG,EAAU,EAAQ,CAAC,CAAQ,EAAW,SAAgB,EAAkB,EAAM,CAAC,IAAM,EAAG,EAAM,UAAU,kBAAwB,EAAU,EAAM,WAAW,EAAQ,EAAY,EAAM,aAAa,EAAQ,EAAQ,EAAM,SAAS,GAAS,EAAU,EAAM,WAAW,EAAsI,MAAM,CAAC,QAA7C,EAAgB,EAA9F,EAAU,GAAG,EAA0B,EAAQ,GAAG,EAAiE,CAA4B,EAAM,kBAAkB,YAAY,EAAM,oBAAoB,gBAAgB,CACthB,SAAgB,EAAsB,EAAE,CAAC,MAAO,KAAQ,EAA+BC,EAAwC,CAAQC,EAAK,EAAE,CAAC,GAAG,EAAM,GAAG,EAAkB,EAAM,CAAC,CAAC,mBAD5/B,IAA4B,IAAoD,CAC3H,EAAoB,EAAkB,CAAC,iBAAiB,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,YAAY,CAAC,mBAAmB,CAAC,KAAK,EAAY,OAAO,MAAM,aAAa,aAAa,gBAAgB,CAAC,SAAS,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,kBAAkB,CAAC,UAAU,CAAC,KAAK,EAAY,OAAO,MAAM,WAAW,aAAa,EAAE,IAAI,EAAE,IAAI,GAAG,KAAK,EAAE,eAAe,GAAK,CAAC,YAAY,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,EAAE,IAAI,EAAE,IAAI,GAAG,KAAK,EAAE,eAAe,GAAK,CAAC,QAAQ,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,aAAa,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,EAAE,eAAe,GAAK,CAAC,UAAU,CAAC,KAAK,EAAY,OAAO,MAAM,UAAU,aAAa,EAAE,IAAI,EAAE,IAAI,GAAG,KAAK,EAAE,eAAe,GAAK,CAAC,CAAC,CAA6U,EAAsB,YAAY"}