{"version":3,"file":"Countdown_Timer.UGfipVB0.mjs","names":["useState"],"sources":["https:/framerusercontent.com/modules/IKXPuigNLHhajEE00gmR/FZPpFcrXztamhkX6c6D1/Countdown_Timer.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useEffect,useState}from\"react\";import{addPropertyControls,ControlType}from\"framer\";export default function CountdownTimer({targetDate=\"2024-12-31\",targetTime=\"23:59\",backgroundColor=\"#4A1A1A\",fontColor=\"#FFFFFF\",fontSize=48,labelFontSize=12,padding=20,gap=30,width=\"100%\",height=\"100%\"}){const[timeLeft,setTimeLeft]=useState({days:0,hours:0,minutes:0,seconds:0});useEffect(()=>{const calculateTimeLeft=()=>{// Combine date and time for target\nconst targetDateTimeString=`${targetDate}T${targetTime}:00`;// Create target date in UK timezone\nconst targetDateTime=new Date(targetDateTimeString);// Get current time in UK timezone\nconst now=new Date;// Convert both to UK time using toLocaleString\nconst ukOptions={timeZone:\"Europe/London\"};const nowUK=new Date(now.toLocaleString(\"en-US\",ukOptions));const targetUK=new Date(new Date(targetDateTime).toLocaleString(\"en-US\",ukOptions));// Calculate difference in milliseconds\nconst difference=targetUK.getTime()-nowUK.getTime();if(difference>0){const days=Math.floor(difference/(1e3*60*60*24));const hours=Math.floor(difference%(1e3*60*60*24)/(1e3*60*60));const minutes=Math.floor(difference%(1e3*60*60)/(1e3*60));const seconds=Math.floor(difference%(1e3*60)/1e3);setTimeLeft({days,hours,minutes,seconds});}else{setTimeLeft({days:0,hours:0,minutes:0,seconds:0});}};// Calculate immediately\ncalculateTimeLeft();// Update every second\nconst timer=setInterval(calculateTimeLeft,1e3);return()=>clearInterval(timer);},[targetDate,targetTime]);const formatNumber=num=>{return num.toString().padStart(2,\"0\");};const timeUnits=[{value:formatNumber(timeLeft.days),label:\"DAYS\"},{value:formatNumber(timeLeft.hours),label:\"HOURS\"},{value:formatNumber(timeLeft.minutes),label:\"MINUTES\"},{value:formatNumber(timeLeft.seconds),label:\"SECONDS\"}];return /*#__PURE__*/_jsx(\"div\",{style:{width:width,height:height,backgroundColor:backgroundColor,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",fontFamily:\"Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif\",borderRadius:\"8px\",padding:`${padding}px`,boxSizing:\"border-box\"},children:/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",gap:`${gap}px`,alignItems:\"center\",width:\"100%\",justifyContent:\"center\",flexWrap:\"wrap\"},children:timeUnits.map((unit,index)=>/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",alignItems:\"center\",gap:`${fontSize*.15}px`,minWidth:`${fontSize*1.5}px`},children:[/*#__PURE__*/_jsx(\"div\",{style:{fontSize:`clamp(${fontSize*.5}px, ${fontSize}px, ${fontSize*1.5}px)`,fontWeight:\"bold\",color:fontColor,lineHeight:1,letterSpacing:\"-0.02em\"},children:unit.value}),/*#__PURE__*/_jsx(\"div\",{style:{fontSize:`clamp(${labelFontSize*.7}px, ${labelFontSize}px, ${labelFontSize*1.3}px)`,fontWeight:\"500\",color:fontColor,opacity:.8,letterSpacing:\"0.05em\"},children:unit.label})]},unit.label))})});}// Add Framer property controls\naddPropertyControls(CountdownTimer,{targetDate:{type:ControlType.String,title:\"Target Date\",defaultValue:\"2024-12-31\",description:\"Format: YYYY-MM-DD\"},targetTime:{type:ControlType.String,title:\"Target Time (UK)\",defaultValue:\"23:59\",description:\"Format: HH:MM (24hr)\"},backgroundColor:{type:ControlType.Color,title:\"Background Color\",defaultValue:\"#4A1A1A\"},fontColor:{type:ControlType.Color,title:\"Font Color\",defaultValue:\"#FFFFFF\"},fontSize:{type:ControlType.Number,title:\"Base Font Size\",defaultValue:48,min:20,max:100,step:1,displayStepper:true,description:\"Base size - will scale responsively\"},labelFontSize:{type:ControlType.Number,title:\"Label Size\",defaultValue:12,min:8,max:24,step:1,displayStepper:true,description:\"Base label size - will scale responsively\"},padding:{type:ControlType.Number,title:\"Padding\",defaultValue:20,min:0,max:50,step:5,displayStepper:true},gap:{type:ControlType.Number,title:\"Gap Between Units\",defaultValue:30,min:10,max:60,step:5,displayStepper:true}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"CountdownTimer\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Countdown_Timer.map"],"mappings":"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"}