feat: add real-time collaboration features with STOMP and SockJS

- Added @stomp/stompjs and sockjs-client dependencies for WebSocket communication.
- Updated routing for pastes to include new endpoint structure.
- Implemented real-time editing in PastePanel using STOMP for collaborative editing.
- Introduced NotificationModal for experimental mode warnings.
- Enhanced NavBar to display connection status.
- Refactored Home and PastePanel components to support new features and improve user experience.
- Updated error handling in DataContext to utilize ErrorContext for better error management.
- Added CSS animations for connection status indication.
This commit is contained in:
2026-03-17 02:25:59 +01:00
parent f29d82f311
commit 924f9626a6
15 changed files with 499 additions and 185 deletions

View File

@@ -16,6 +16,7 @@
"@fortawesome/free-solid-svg-icons": "^7.0.0",
"@fortawesome/react-fontawesome": "^0.2.3",
"@monaco-editor/react": "^4.7.0",
"@stomp/stompjs": "^7.3.0",
"axios": "^1.11.0",
"bootstrap": "^5.3.7",
"date-fns": "^4.1.0",
@@ -26,7 +27,8 @@
"react-dom": "^19.1.0",
"react-router-dom": "^7.7.1",
"react-slick": "^0.30.3",
"slick-carousel": "^1.8.1"
"slick-carousel": "^1.8.1",
"sockjs-client": "^1.6.1"
},
"devDependencies": {
"@eslint/js": "^9.30.1",