hedgedoc/commons/src/y-doc-sync/y-doc-sync-server-adapter.ts
Erik Michelson 4869f3310c
fix(realtime): use number[] for transport but ArrayBuffer for database
Co-authored-by: Philip Molares <philip.molares@udo.edu>
Signed-off-by: Philip Molares <philip.molares@udo.edu>
Signed-off-by: Erik Michelson <github@erik.michelson.eu>
2025-05-19 11:37:22 +02:00

26 lines
779 B
TypeScript

/*
* SPDX-FileCopyrightText: 2025 The HedgeDoc developers (see AUTHORS file)
*
* SPDX-License-Identifier: AGPL-3.0-only
*/
import { MessageTransporter } from '../message-transporters/message-transporter.js'
import { RealtimeDoc } from './realtime-doc.js'
import { YDocSyncAdapter } from './y-doc-sync-adapter.js'
export class YDocSyncServerAdapter extends YDocSyncAdapter {
constructor(
readonly messageTransporter: MessageTransporter,
readonly doc: RealtimeDoc,
private readonly acceptEditsProvider: () => boolean,
) {
super(messageTransporter, doc)
this.markAsSynced()
}
protected applyIncomingUpdatePayload(update: number[]): void {
if (!this.acceptEditsProvider()) {
return
}
super.applyIncomingUpdatePayload(update)
}
}