Feature/338 realtime collaboration basic#344
Merged
felix-schultz merged 10 commits intodevfrom Oct 24, 2025
Merged
Conversation
- Updated schema names to "public" for multiple entities including BitTreeCache, BoardSync, Comment, Course, CourseConnection, ExecutionUsageTracking, Feedback, Invitation, InviteLink, JoinQueue, LandingPage, LLMUsageTracking, Membership, Meta, Node, PAT, Profile, PublicationLog, PublicationRequest, Role, Swimlane, SwimlaneItem, TechnicalUser, Template, TemplateProfile, Transaction, and User. - Reordered fields in several entities for consistency and clarity. - Added missing fields such as `app_id` and `created_at` in various entities. - Removed redundant fields and adjusted column types where necessary. - Introduced new entities and relations where applicable.
…for real-time collaboration
…d related interfaces
…related components
…rror handling fix(webrtc): correct indentation in createRealtimeSession for clarity fix(schemas): enhance permission descriptions in iOS and mobile schemas fix(page): improve profile loading logic and error handling in Home component
- Introduced peer presence tracking with cursor and selection states. - Added FlowLayerIndicators to display peer presence in different layers. - Implemented remote selection handling in FlowNode to show selected participants. - Enhanced FlowCursors to visually represent remote cursors and their positions. - Improved connection status handling in WebRTC session management. - Added reconnection logic and status updates for better user experience.
- Updated the `handleCreateEvent` function to enhance readability and error handling. - Consolidated event creation logic and added checks for PAT requirements. - Refactored event deletion and editing functions for consistency and clarity. - Improved formatting and structure in various components, including `EventConfiguration` and `EventsTable`. - Streamlined imports and type definitions in `webrtc.ts` and `types.ts`. - Removed unnecessary comments and improved code organization in several files. - Ensured consistent use of async/await patterns and error handling across event-related functions.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request introduces several enhancements and fixes across the desktop app, focusing on improving realtime access support, error handling, and permission schemas. The most significant changes are the addition of new methods for realtime access in board state management, improved error reporting, and expanded permission definitions for Tauri commands across all platforms.
Realtime access and board state improvements:
getRealtimeAccessandgetRealtimeJwksto theBoardStateclass for retrieving realtime access credentials and JWKS, with proper offline and authentication checks.IJwksandIRealtimeAccessfor type safety in realtime access methods.Profiles and onboarding flow:
get_profilesTauri command toResult<HashMap<String, UserProfile>, TauriFunctionError>for better error propagation, and updated the frontend to handle the new object-based structure and error states, improving onboarding and error handling. [1] [2]API and error handling:
fetcherutility to log the response body when an error occurs, aiding in debugging failed API requests.Permission schema updates (Tauri platform schemas):
desktop-schema.json,macOS-schema.json,iOS-schema.json,mobile-schema.json) to includeallow-register-listenerandallow-remove-listener, as well as their corresponding deny permissions, ensuring the app can explicitly control access to these commands across all platforms. [1] [2] [3] [4] [5] [6]Miscellaneous:
bitsproperty to app creation requests inAppStatefor improved metadata handling.