Conversation
- Added experimental package import optimization for improved build performance. - Configured image optimization settings to support modern formats (WebP, AVIF). - Implemented compiler optimizations to remove console logs in production. - Set up caching headers for API responses to improve load times. - Enhanced Webpack configuration for better tree shaking and bundle size reduction. - Updated package dependencies to include new Radix UI components for improved UI consistency.
…rmance - Replaced user polls statistics fetching with a new streaming component for real-time updates. - Updated API routes to utilize optimized polling data retrieval for improved performance. - Refactored PollsPage to handle polling data with enhanced error handling and caching. - Adjusted login form error handling to allow Next.js redirect errors to propagate correctly. - Configured Next.js to include Supabase as an external package for better integration.
Feature/user roles
feat(qr): add qrcode.react and integrate downloadable QR in SharePoll
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the You can disable this status message by setting the ✨ Finishing touches🧪 Generate unit tests
Tip 👮 Agentic pre-merge checks are now available in preview!Pro plan users can now enable pre-merge checks in their settings to enforce checklists before merging PRs.
Please see the documentation for more information. Example: reviews:
pre_merge_checks:
custom_checks:
- name: "Undocumented Breaking Changes"
mode: "warning"
instructions: |
Pass/fail criteria: All breaking changes to public APIs, CLI flags, environment variables, configuration keys, database schemas, or HTTP/GraphQL endpoints must be documented in the "Breaking Change" section of the PR description and in CHANGELOG.md. Exclude purely internal or private changes (e.g., code not exported from package entry points or explicitly marked as internal).Please share your feedback with us on this Discord post. Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
…o allow public inserts and reads
…nents - Added submitVote function to handle voting submissions in PollView. - Integrated recordShare function to track shares in SharePoll. - Updated PollPage to pass new functions to PollView and SharePoll components. - Refactored actions to include votePollAction for handling form data submissions.
…nctionality - Replaced direct action imports with dynamic imports for better performance. - Implemented server-side authentication checks in the voting process. - Updated PollPage to handle voting logic with validation for active polls and voting rules. - Enhanced CreatePollForm to accept a server action for poll creation. - Modified DeletePollButton to utilize a server action for deleting polls. - Updated data retrieval methods to include new fields and improve performance.
…QR code features - Marked User Role Management and QR Code Generation as completed in the implementation plan. - Updated the README with environment setup instructions, including database migrations for user roles and share analytics. - Revised priority order in the implementation plan to reflect completed features. - Added notes on production readiness and AI usage in development.
…results - Updated PollPage to include PollChat component for real-time discussions. - Refactored PollResults to display visualizations using PollChart for pie and bar charts. - Adjusted layout for results and sharing components to improve responsiveness.
…essibility improvements - Marked Poll Result Charts as partially completed with pie and bar charts implemented. - Enhanced PollResults and PollView components for better responsiveness. - Added accessibility features to SharePoll component, including ARIA labels and improved QR code display.
- Updated the implementation plan to reflect the partial completion of the comments system, including the creation of the `comments` table and basic comment components. - Improved mobile responsiveness with a two-column grid layout for poll details and enhanced accessibility features across key components. - Revised priority order in the implementation plan to prioritize real-time comments and moderation features. - Added email notification functionality for poll creation and voting alerts.
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
This commit fixes a critical TypeScript build error that occurred when rendering the 'PollView' component within 'PollsStreaming'. The 'submitVote' prop expected a server action with a '(formData: FormData)' signature, but was being passed an action with an incompatible signature. The following changes were made to resolve the issue: 1. **Created Wrapper Server Action**: A new server action, 'submitVoteAction', was created in 'lib/polls/actions.ts'. This action serves as a wrapper that accepts 'FormData', extracts the 'pollId' and 'optionIds', and then calls the original 'votePoll' logic. 2. **Updated PollView**: The 'poll-view.tsx' component was modified to include the 'pollId' in the 'FormData' object upon vote submission, ensuring the server action receives all necessary information. 3. **Corrected Prop Passing**: The 'polls-streaming.tsx' component was updated to import and pass the new, type-compatible 'submitVoteAction' to the 'PollView' component. This fix ensures type safety, resolves the build failure, and makes the application ready for production deployment.
This commit adds the application screenshots to the 'screenshots' directory and updates the 'README.md' to display them. This provides a visual preview of the application's key features, including the dashboard, poll creation form, voting interface, and results page.
✨ Authentication Improvements: - Enable Supabase session persistence with persistSession, detectSessionInUrl, and autoRefreshToken - Fix auth context to prevent redirect loops and improve session management - Update middleware with better error handling and robust user detection - Switch login form from server actions to client-side auth context for better state management 🛡️ Route Protection: - Create AuthGuard component for client-side authentication checks - Add AuthGuard to login/register pages to redirect authenticated users - Improve middleware route filtering and auth state handling 🎨 UI Components: - Add comprehensive auth layout with enhanced design - Create responsive login and register side panels with animations - Implement loading states and better user feedback 🔧 Technical Fixes: - Fix session persistence across page reloads and navigation - Eliminate infinite redirect loops between login and protected routes - Better separation of client/server auth concerns - Enhanced error handling and user-friendly messages 🎯 Result: Users now stay logged in across navigation and refreshes with no redirect loops
🚀 Problem Fixed: - Email verification links were incorrectly using localhost URLs in production - Users couldn't verify emails after deployment due to wrong callback URLs ✨ Solution Implemented: - Create robust site URL utility (lib/utils/site-url.ts) with multi-platform support - Support Vercel, Netlify, Railway, Render, and custom deployment platforms - Intelligent fallback chain: NEXT_PUBLIC_SITE_URL → platform vars → localhost (dev only) - Better error handling with clear messages for misconfigured environments 🔧 Technical Changes: - Replace hardcoded URL logic in lib/auth/actions.ts with getSiteUrl() utility - Update contexts/auth-context.tsx to use getClientAuthCallbackUrl() for client-side - Add debug logging to track callback URLs during signup/resend operations - Create /api/debug/site-url endpoint for deployment troubleshooting 🎯 Result: - Email verification links now use correct production domain - Robust cross-platform deployment support - Easy debugging tools for environment configuration issues
No description provided.