Monaco Editor with remote collaboration.
yarn add monaco-remote
interface IMessage {
uid?: string;
message: Uint8Array;
timestamp?: number;
}
interface IMessageChannel {
sendMessage(message: IMessage): Promise<void>;
onReceiver(listener: (message: IMessage) => any): void;
onMemberJoined(listener: (memberId: string) => any): void;
onMemberLeft(listener: (memberId: string) => any): void;
}
interface IEditorContentManagerOptions {
editor: editor.IStandaloneCodeEditor;
channel: IMessageChannel;
}
new EditorContentManager({ editor, channel })
MIT, see the LICENSE file for detail.