Cesar Mendivil f57ce90c11 feat: Enhance StudioControls with presentation and layout features
- Added props for handling presentation and screen sharing actions.
- Implemented buttons for opening presentation panel and changing layouts (grid/focus) and modes (video/audio).
- Updated UI to reflect active presentations and added functionality to clear presentations.

fix: Adjust StudioLeftSidebar and StudioRightPanel for full height

- Modified styles to ensure both sidebars occupy full height of the container.

feat: Introduce ParticipantsPanel for managing participants in the conference

- Created ParticipantsPanel component to display connected and invited participants.
- Integrated API calls to fetch invited participants and handle connection status.

feat: Implement PresentationPanel for sharing presentations

- Developed PresentationPanel component to handle file uploads and screen sharing.

refactor: Update StudioVideoArea to support layout and mode changes

- Refactored StudioVideoArea to accept layout and mode props, rendering appropriate conference views.

feat: Add AudioConference and VideoConference prefabs for audio and video handling

- Created AudioConference and VideoConference components to manage respective media streams.

feat: Introduce Chat component for real-time messaging

- Developed Chat component to facilitate messaging between participants.

feat: Implement ControlBar for user controls in the conference

- Created ControlBar component for managing participant actions like leaving the conference and toggling audio/video.

feat: Add PreJoin component for pre-conference setup

- Developed PreJoin component to allow users to preview video before joining the conference.

chore: Update Vite configuration for better module resolution

- Enhanced Vite config to include path aliases for easier imports across the project.

chore: Add TypeScript definitions for environment variables

- Created env.d.ts to define types for environment variables used in the project.
2025-11-07 14:29:14 -07:00

43 lines
1.5 KiB
TypeScript

import { defineConfig, loadEnv } from 'vite'
import react from '@vitejs/plugin-react'
import path from 'path'
export default defineConfig(({ mode }) => {
// Cargar variables de entorno del directorio raíz
const env = loadEnv(mode, '../../', '')
return {
plugins: [react()],
resolve: {
alias: {
'@': path.resolve(__dirname, './src'),
'@shared': path.resolve(__dirname, '../../shared'),
'@avanzacast/shared-utils': path.resolve(__dirname, '../../shared/utils'),
'@avanzacast/shared-types': path.resolve(__dirname, '../../shared/types'),
'@avanzacast/shared-hooks': path.resolve(__dirname, '../../shared/hooks'),
}
},
server: {
port: 3020,
host: true,
fs: {
// Allow serving files from the shared folder (monorepo)
allow: [
path.resolve(__dirname),
path.resolve(__dirname, '../../shared')
],
// Disable strict fs checking so imports from outside project root work
strict: false
},
// Usar HTTP en dev para pruebas E2E locales (localhost permite getUserMedia sin HTTPS en muchos navegadores)
watch: { usePolling: true }
},
define: {
// Exponer variables de entorno al cliente
'import.meta.env.VITE_LIVEKIT_URL': JSON.stringify(env.LIVEKIT_URL),
'import.meta.env.VITE_LIVEKIT_API_KEY': JSON.stringify(env.LIVEKIT_API_KEY),
'import.meta.env.VITE_LIVEKIT_API_SECRET': JSON.stringify(env.LIVEKIT_API_SECRET),
},
}
})