prasi-bun/app/srv/ws/sync/actions/yjs_um.ts

28 lines
492 B
TypeScript

import { SAction } from "../actions";
import { docs } from "../entity/docs";
import { SyncConnection } from "../type";
export const yjs_um: SAction["yjs"]["um"] = async function (
this: SyncConnection,
mode,
action,
id
) {
if (!docs[mode][id]) {
return;
}
const um = docs[mode][id].um;
if (action === "redo") {
if (um.canRedo()) {
um.redo();
}
} else {
if (um.undoStack.length > 1) {
if (um.canUndo()) {
um.undo();
}
}
}
};