1 line
6.9 KiB
JavaScript
1 line
6.9 KiB
JavaScript
exports.id=348,exports.ids=[348],exports.modules={9503:(a,b,c)=>{"use strict";c.d(b,{As:()=>m,gn:()=>o,fJ:()=>n});var d=c(38301);let e={id:"1",name:"C\xe9sar Mend\xedvil",email:"cesar@avanzacast.com",avatar:"",role:"admin",createdAt:"2024-01-15T10:00:00Z",lastLogin:"2024-09-16T08:30:00Z",isActive:!0,plan:"pro"},f=[{id:"1",name:"youtube",displayName:"YouTube",isConnected:!0,accountName:"AvanzaCast Channel",isLive:!1,viewerCount:0},{id:"2",name:"facebook",displayName:"Facebook Live",isConnected:!0,accountName:"AvanzaCast Page",isLive:!1,viewerCount:0},{id:"3",name:"twitch",displayName:"Twitch",isConnected:!1,isLive:!1,viewerCount:0},{id:"4",name:"linkedin",displayName:"LinkedIn Live",isConnected:!1,isLive:!1,viewerCount:0}],g=[{id:"1",title:"Tutorial: C\xf3mo usar AvanzaCast",description:"Aprende a crear transmisiones profesionales",status:"ended",userId:"1",startedAt:"2024-09-15T14:00:00Z",endedAt:"2024-09-15T15:30:00Z",platforms:f.slice(0,2),viewerCount:0,maxViewers:245,duration:90,thumbnailUrl:"",chatEnabled:!0,isPrivate:!1,tags:["tutorial","streaming","tech"]},{id:"2",title:"Webinar: Futuro del Streaming",description:"Tendencias y tecnolog\xedas emergentes",status:"scheduled",userId:"1",scheduledAt:"2024-09-18T16:00:00Z",platforms:f,viewerCount:0,maxViewers:0,chatEnabled:!0,isPrivate:!1,tags:["webinar","trends","business"]}],h=[{id:"1",name:"Escena Principal",type:"camera",isActive:!0,sources:[{id:"1",type:"camera",name:"C\xe1mara Principal",position:{x:0,y:0},size:{width:1280,height:720},isVisible:!0,properties:{deviceId:"default"}}],layout:{width:1280,height:720,backgroundColor:"#000000"}},{id:"2",name:"Presentaci\xf3n",type:"screen",isActive:!1,sources:[{id:"2",type:"screen",name:"Pantalla Compartida",position:{x:0,y:0},size:{width:1280,height:720},isVisible:!0,properties:{displayId:"primary"}}],layout:{width:1280,height:720,backgroundColor:"#1a1a1a"}}],i=[{id:"1",streamId:"1",username:"TechFan123",message:"\xa1Excelente tutorial!",timestamp:"2024-09-15T14:15:00Z",platform:"youtube"},{id:"2",streamId:"1",username:"StreamerPro",message:"\xbfCu\xe1ndo ser\xe1 el pr\xf3ximo stream?",timestamp:"2024-09-15T14:16:00Z",platform:"facebook",isSuper:!0}],j={streamId:"1",totalViews:1250,peakViewers:245,averageWatchTime:67.5,chatMessages:89,likes:156,shares:23,platformBreakdown:{youtube:65,facebook:35},timelineData:Array.from({length:20},(a,b)=>({timestamp:new Date(Date.now()-(19-b)*3e5).toISOString(),viewers:Math.floor(200*Math.random())+50,chatRate:Math.floor(10*Math.random())+1}))},k=(a=500)=>new Promise(b=>setTimeout(b,a));class l{static async login(a,b){return(await k(),a===e.email&&"password"===b)?{success:!0,data:e,message:"Inicio de sesi\xf3n exitoso"}:{success:!1,error:"Credenciales inv\xe1lidas"}}static async register(a){return await k(),{success:!0,data:{...e,id:Date.now().toString(),name:a.name||"",email:a.email||"",createdAt:new Date().toISOString()},message:"Usuario creado exitosamente"}}static async getStreams(a){return await k(),{success:!0,data:g}}static async createStream(a){return await k(),{success:!0,data:{...g[0],id:Date.now().toString(),title:a.title||"Nueva Transmisi\xf3n",description:a.description||"",status:"draft",userId:a.userId||"1",platforms:a.platforms||[],viewerCount:0,maxViewers:0,chatEnabled:a.chatEnabled??!0,isPrivate:a.isPrivate??!1,tags:a.tags||[]},message:"Transmisi\xf3n creada exitosamente"}}static async goLive(a){await k();let b=g.find(b=>b.id===a);return b?{success:!0,data:{...b,status:"live",startedAt:new Date().toISOString(),viewerCount:Math.floor(50*Math.random())+10},message:"Transmisi\xf3n iniciada"}:{success:!1,error:"Transmisi\xf3n no encontrada"}}static async getPlatforms(){return await k(),{success:!0,data:f}}static async connectPlatform(a){await k();let b=f.find(b=>b.id===a);return b?{success:!0,data:{...b,isConnected:!0,accountName:`Cuenta de ${b.displayName}`},message:"Plataforma conectada exitosamente"}:{success:!1,error:"Plataforma no encontrada"}}static async getScenes(){return await k(),{success:!0,data:h}}static async setActiveScene(a){await k();let b=h.find(b=>b.id===a);return b?(h.forEach(a=>a.isActive=!1),b.isActive=!0,{success:!0,data:b,message:"Escena activada"}):{success:!1,error:"Escena no encontrada"}}static async getChatMessages(a){return await k(),{success:!0,data:i.filter(b=>b.streamId===a)}}static async getAnalytics(a){return await k(),{success:!0,data:j}}}function m(){let[a,b]=(0,d.useState)(null),[c,e]=(0,d.useState)(!1),[f,g]=(0,d.useState)(!1);return{user:a,isAuthenticated:f,isLoading:c,login:async(a,c)=>{e(!0);try{let d=await l.login(a,c);return d.success&&d.data&&(b(d.data),g(!0),localStorage.setItem("user",JSON.stringify(d.data))),d}finally{e(!1)}},register:async a=>{e(!0);try{let c=await l.register(a);return c.success&&c.data&&(b(c.data),g(!0),localStorage.setItem("user",JSON.stringify(c.data))),c}finally{e(!1)}},logout:()=>{b(null),g(!1),localStorage.removeItem("user")}}}function n(){let[a,b]=(0,d.useState)([]),[c,e]=(0,d.useState)(null),[f,g]=(0,d.useState)(!1);return{streams:a,currentStream:c,isLoading:f,fetchStreams:async()=>{g(!0);try{let a=await l.getStreams();a.success&&a.data&&b(a.data)}finally{g(!1)}},createStream:async a=>{let c=await l.createStream(a);return c.success&&c.data&&b(a=>[...a,c.data]),c},goLive:async a=>{let c=await l.goLive(a);return c.success&&c.data&&(e(c.data),b(b=>b.map(b=>b.id===a?c.data:b))),c},setCurrentStream:e}}function o(){let[a,b]=(0,d.useState)([]),[c,e]=(0,d.useState)(!1);return{platforms:a,isLoading:c,fetchPlatforms:async()=>{e(!0);try{let a=await l.getPlatforms();a.success&&a.data&&b(a.data)}finally{e(!1)}},connectPlatform:async a=>{let c=await l.connectPlatform(a);return c.success&&c.data&&b(b=>b.map(b=>b.id===a?c.data:b)),c}}}},10490:()=>{},24438:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,54160,23)),Promise.resolve().then(c.t.bind(c,31603,23)),Promise.resolve().then(c.t.bind(c,68495,23)),Promise.resolve().then(c.t.bind(c,75170,23)),Promise.resolve().then(c.t.bind(c,77526,23)),Promise.resolve().then(c.t.bind(c,78922,23)),Promise.resolve().then(c.t.bind(c,29234,23)),Promise.resolve().then(c.t.bind(c,12263,23)),Promise.resolve().then(c.bind(c,82146))},50658:()=>{},51472:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>h,metadata:()=>g});var d=c(75338),e=c(76735),f=c.n(e);c(61135);let g={title:"AvanzaCast - Plataforma de Streaming en Vivo",description:"Plataforma profesional de streaming en vivo similar a StreamYard. Transmite a m\xfaltiples plataformas simult\xe1neamente."};function h({children:a}){return(0,d.jsx)("html",{lang:"es",children:(0,d.jsx)("body",{className:`${f().variable} font-nunito antialiased`,children:a})})}},61135:()=>{},61390:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,81170,23)),Promise.resolve().then(c.t.bind(c,23597,23)),Promise.resolve().then(c.t.bind(c,36893,23)),Promise.resolve().then(c.t.bind(c,89748,23)),Promise.resolve().then(c.t.bind(c,6060,23)),Promise.resolve().then(c.t.bind(c,7184,23)),Promise.resolve().then(c.t.bind(c,69576,23)),Promise.resolve().then(c.t.bind(c,73041,23)),Promise.resolve().then(c.t.bind(c,51384,23))}}; |