+
+ 🚧 This is very much a work in progress. Expect rough edges and paper
+ cuts. 🚧
+
+ What is this?
+
+ This is a collaborative live editor for{" "}
+ Mermaid diagrams. If you don't care
+ about multiplayer, the existing{" "}
+ live editor is probably a better option
+ for a single user.
+
+ How do I collaborate?
+
+ -
+ If you share the current URL with someone you'll be able to edit the
+ diagram concurrently with live rendering.
+
+ - All diagrams supported by Mermaid v10+ should be supported as is.
+ -
+ There is no persistence, when the last user leaves a room the document
+ will be lost. This is primarily aimed at live collaboration sessions
+ after which the diagram can be copy-pasted in a document.
+
+
+ Security / privacy
+
+ This tool currently relies on a WebSocket sharing server which sees the
+ document updates. It's not recording anything but you generally shouldn't
+ use it for anything sensitive.
+
+ Work is in progress to support peer to peer through WEB RTC and encrypted
+ collaboration.
+
+
+
+ Find more details on{" "}
+ GitHub
+
+
+);
+
+export default Help;
diff --git a/src/components/modal.tsx b/src/components/modal.tsx
index 227457b..6da1778 100644
--- a/src/components/modal.tsx
+++ b/src/components/modal.tsx
@@ -2,15 +2,23 @@ import { ComponentChildren, h } from "preact";
import { useRef, useState, useEffect } from "preact/hooks";
import * as b from "bootstrap";
+import classNames from "classnames";
interface ModalProps {
children: ComponentChildren;
visible: boolean;
title: ComponentChildren;
+ scrollable: boolean;
onHide?: () => void;
}
-const Modal = ({ children, visible, title, onHide }: ModalProps) => {
+const Modal = ({
+ children,
+ visible,
+ title,
+ onHide,
+ scrollable,
+}: ModalProps) => {
const ref = useRef