feat: implement NotificationsHub for real-time vault sync notifications

- Added NotificationsHub durable object to handle WebSocket connections for vault sync notifications.
- Integrated SignalR protocol for message framing and communication.
- Updated storage service methods to return revision date and user ID for vault sync notifications.
- Enhanced existing handlers (attachments, ciphers, folders, sends, and import) to notify users of vault sync events.
- Created new notifications handler for WebSocket negotiation and binding user IDs.
- Updated frontend to establish WebSocket connection for receiving vault sync notifications.
- Improved CORS headers to support new notification endpoints.
- Bumped wrangler version in package.json to 4.71.0.
This commit is contained in:
shuaiplus
2026-03-09 00:25:34 +08:00
parent e0d53b4683
commit f0c57a7f9c
18 changed files with 779 additions and 76 deletions
+8
View File
@@ -14,5 +14,13 @@ command = "npm run build"
binding = "DB"
database_name = "nodewarden-db"
[[durable_objects.bindings]]
name = "NOTIFICATIONS_HUB"
class_name = "NotificationsHub"
[[kv_namespaces]]
binding = "ATTACHMENTS_KV"
[[migrations]]
tag = "v1-notifications-hub"
new_sqlite_classes = ["NotificationsHub"]