Restore JSX frontend with Login/Dashboard/Editor from 249d5fb, remove TS frontend, fix nginx port to 3001

This commit is contained in:
Agent Zero
2026-06-28 09:46:11 +02:00
parent 65c1f10499
commit b56c65815a
78 changed files with 1205 additions and 11510 deletions
-62
View File
@@ -1,62 +0,0 @@
import * as Y from 'yjs';
class HistoryManager {
private undoStack: Uint8Array[] = [];
private redoStack: Uint8Array[] = [];
private maxSize: number;
private doc: Y.Doc;
constructor(doc: Y.Doc, maxSize: number = 100) {
this.doc = doc;
this.maxSize = maxSize;
}
push(update: Uint8Array) {
this.undoStack.push(update);
if (this.undoStack.length > this.maxSize) {
this.undoStack.shift();
}
// Clear redo stack when new action is performed
this.redoStack = [];
}
undo() {
if (this.undoStack.length === 0) return false;
const update = this.undoStack.pop();
if (update) {
// Apply inverse of the update
Y.applyUpdate(this.doc, Y.encodeStateAsUpdate(this.doc, Y.createRelativePositionFromJSON(Y.createRelativePositionFromType(update as any))));
this.redoStack.push(update);
return true;
}
return false;
}
redo() {
if (this.redoStack.length === 0) return false;
const update = this.redoStack.pop();
if (update) {
Y.applyUpdate(this.doc, update);
this.undoStack.push(update);
return true;
}
return false;
}
canUndo(): boolean {
return this.undoStack.length > 0;
}
canRedo(): boolean {
return this.redoStack.length > 0;
}
clear() {
this.undoStack = [];
this.redoStack = [];
}
}
export default HistoryManager;