{
  "version": 3,
  "sources": ["ssg:https://framerusercontent.com/modules/d2h2e5NFWrOfQNewcYb9/WxK8mgYpJq2GLdCF5DOc/LiveStreamEmbed.js"],
  "sourcesContent": ["// Live streaming embed for Kick and Twitch with fallback PNG\n// Checks both platforms every 30s, shows embed if live, else clickable PNG\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{useEffect,useState,startTransition}from\"react\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";/**\n * LiveStreamEmbed\n *\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n */export default function LiveStreamEmbed(props){const{twitchUsername,kickUsername,fallbackImage,fallbackLink=\"https://kick.com/\",imageWidth=320,imageHeight=180,style}=props;const[livePlatform,setLivePlatform]=useState(null);const[checked,setChecked]=useState(false);useEffect(()=>{let cancelled=false;let intervalId;async function checkLive(){// Check Twitch first\nif(twitchUsername){try{const res=await fetch(`https://api.ivr.fi/v2/twitch/user?login=${twitchUsername}`);if(res.ok){const data=await res.json();if(Array.isArray(data)&&data[0]?.stream!==null){if(!cancelled)startTransition(()=>setLivePlatform(\"twitch\"));return;}}}catch{}}// Then check Kick\nif(kickUsername){try{const res=await fetch(`https://kick.com/api/v2/channels/${kickUsername}`);if(res.ok){const data=await res.json();if(data?.livestream!==null){if(!cancelled)startTransition(()=>setLivePlatform(\"kick\"));return;}}}catch{}}if(!cancelled)startTransition(()=>setLivePlatform(null));}checkLive().then(()=>setChecked(true));intervalId=window.setInterval(()=>{checkLive();},3e4);return()=>{cancelled=true;if(intervalId)clearInterval(intervalId);};},[twitchUsername,kickUsername]);if(RenderTarget.current()===RenderTarget.thumbnail)return null;// Show Twitch embed if live\nif(livePlatform===\"twitch\"&&twitchUsername){const parent=typeof window!==\"undefined\"?window.location.hostname:\"framer.com\";return /*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:\"100%\",position:\"relative\"},children:/*#__PURE__*/_jsx(\"iframe\",{title:\"Twitch Live Stream\",src:`https://player.twitch.tv/?channel=${twitchUsername}&parent=${parent}`,allowFullScreen:true,frameBorder:0,style:{border:0,width:\"100%\",height:\"100%\",minHeight:180,minWidth:180,aspectRatio:\"16/9\",maxWidth:\"100vw\",maxHeight:\"56vw\",...style}})});}// Show Kick embed if live\nif(livePlatform===\"kick\"&&kickUsername){return /*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:\"100%\",position:\"relative\"},children:/*#__PURE__*/_jsx(\"iframe\",{title:\"Kick Live Stream\",src:`https://player.kick.com/${kickUsername}`,allowFullScreen:true,frameBorder:0,style:{border:0,width:\"100%\",height:\"100%\",minHeight:180,minWidth:180,aspectRatio:\"16/9\",maxWidth:\"100vw\",maxHeight:\"56vw\",...style}})});}// Show fallback clickable PNG\nconst fallbackImgSrc=fallbackImage||\"https://framerusercontent.com/images/GfGkADagM4KEibNcIiRUWlfrR0.jpg\";return /*#__PURE__*/_jsx(\"a\",{href:fallbackLink,target:\"_blank\",rel:\"noopener noreferrer\",style:{display:\"block\",width:\"100%\",height:\"100%\"},children:/*#__PURE__*/_jsx(\"img\",{src:fallbackImgSrc,alt:\"Offline fallback\",style:{width:\"100%\",height:\"auto\",maxWidth:\"100vw\",maxHeight:\"56vw\",objectFit:\"contain\",display:\"block\",margin:\"0 auto\",borderRadius:8,boxShadow:\"0 2px 8px rgba(0,0,0,0.08)\",...style}})});}addPropertyControls(LiveStreamEmbed,{twitchUsername:{type:ControlType.String,title:\"Twitch Username\",defaultValue:\"\",placeholder:\"twitchuser\"},kickUsername:{type:ControlType.String,title:\"Kick Username\",defaultValue:\"\",placeholder:\"kickuser\"},fallbackImage:{type:ControlType.File,allowedFileTypes:[\"png\",\"jpg\",\"jpeg\",\"webp\",\"gif\",\"svg\"],title:\"Fallback PNG\"},fallbackLink:{type:ControlType.String,title:\"PNG Link\",defaultValue:\"https://kick.com/\",placeholder:\"https://...\"},imageWidth:{type:ControlType.Number,title:\"Image Width\",defaultValue:320,min:40,max:1920,step:1,unit:\"px\"},imageHeight:{type:ControlType.Number,title:\"Image Height\",defaultValue:180,min:40,max:1080,step:1,unit:\"px\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"LiveStreamEmbed\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./LiveStreamEmbed.map"],
  "mappings": "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",
  "names": ["LiveStreamEmbed", "props", "twitchUsername", "kickUsername", "fallbackImage", "fallbackLink", "imageWidth", "imageHeight", "style", "livePlatform", "setLivePlatform", "ye", "checked", "setChecked", "ue", "cancelled", "intervalId", "checkLive", "res", "data", "Z", "window", "RenderTarget", "parent", "p", "addPropertyControls", "ControlType"]
}
