Conversation
… visibility on route changes
… messaging in label scheme operations
… in AssetThumbnail component
…restoration, ownership transfer, and deletion
…vigation for settings sections
There was a problem hiding this comment.
Pull Request Overview
This PR adds a new settings feature to the frontend, restructuring the project settings interface into a tabbed navigation system with dedicated sections for project information, invitations, members, and dangerous operations. The changes also improve user feedback through enhanced toast notifications and workspace navigation.
- Restructured project settings into a tabbed interface with separate sections
- Added new components for project info, invitations, and danger zone management
- Improved toast notifications across multiple views to be more descriptive and consistent
Reviewed Changes
Copilot reviewed 11 out of 11 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| TasksView.vue | Added navigation monitoring to hide preview popups when navigating away |
| ProjectSettingsView.vue | Complete redesign into tabbed navigation with modern styling and section-based organization |
| LabelSchemesView.vue | Updated to use new descriptive toast notifications instead of generic success messages |
| AnnotationWorkspace.vue | Refactored task navigation with error handling and auto-assignment functionality |
| workspaceStore.ts | Added method for auto-assigning and starting tasks during navigation |
| ProjectInfoSection.vue | New component for editing project basic information with validation |
| MembersSection.vue | Enhanced members management with search, filtering, and bulk operations |
| InvitationsSection.vue | New dedicated component for managing project invitations |
| DangerZoneSection.vue | New component for destructive project operations with safety confirmations |
| DataSourceCard.vue | Removed disabled export functionality and cleaned up UI |
| AssetThumbnail.vue | Minor comment formatting fix |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
| // Note: This would need a backend endpoint for ownership transfer | ||
| // For now, we'll show a placeholder implementation | ||
| await new Promise(resolve => setTimeout(resolve, 1000)); // Simulate API call |
There was a problem hiding this comment.
This is a placeholder implementation that simulates an API call with setTimeout. This should be replaced with an actual API call to transfer project ownership.
| // Note: This would need a backend endpoint for ownership transfer | |
| // For now, we'll show a placeholder implementation | |
| await new Promise(resolve => setTimeout(resolve, 1000)); // Simulate API call | |
| // Call backend API to transfer project ownership | |
| await projectService.transferOwnership(props.projectId, transferToEmail.value); |
No description provided.