fix: Various fixes for collaborative editing beta (#2561)

* fix: Remove Saving… message when collab enabled

* chore: Add tracing extension to collaboration server

* fix: Incorrect debounce behavior due to missing timestamps on events, fixes abundence of notifications when editing in realtime collab mode

* fix: Reload document prompt when collab editing
This commit is contained in:
Tom Moor
2021-09-13 17:36:26 -07:00
committed by GitHub
parent a699dea286
commit 400e32da70
8 changed files with 92 additions and 20 deletions

View File

@@ -1,12 +1,13 @@
// @flow
import http from "http";
import { Logger } from "@hocuspocus/extension-logger";
import { Server } from "@hocuspocus/server";
import Koa from "koa";
import websocket from "koa-easy-ws";
import Router from "koa-router";
import AuthenticationExtension from "../collaboration/authentication";
import LoggerExtension from "../collaboration/logger";
import PersistenceExtension from "../collaboration/persistence";
import TracingExtension from "../collaboration/tracing";
export default function init(app: Koa, server: http.Server) {
const router = new Router();
@@ -15,7 +16,8 @@ export default function init(app: Koa, server: http.Server) {
extensions: [
new AuthenticationExtension(),
new PersistenceExtension(),
new Logger(),
new LoggerExtension(),
new TracingExtension(),
],
});

View File

@@ -36,13 +36,10 @@ export default function init(app: Koa, server?: http.Server) {
// this queue processes global events and hands them off to services
globalEventQueue.process(function (job) {
Object.keys(eventProcessors).forEach((name) => {
processorEventQueue.add(
{ ...job.data, service: name },
{ removeOnComplete: true }
);
processorEventQueue.add({ ...job.data, service: name });
});
websocketsQueue.add(job.data, { removeOnComplete: true });
websocketsQueue.add(job.data);
});
processorEventQueue.process(function (job) {