Main.res.mjs
1// Generated by ReScript, PLEASE EDIT WITH CARE
2
3import * as App from "./App.res.mjs";
4import * as NanoID from "./ffi/NanoID.res.mjs";
5import * as Preact from "preact";
6import * as Summary from "./ui/Summary.res.mjs";
7import * as JsxRuntime from "preact/jsx-runtime";
8
9import './index.css'
10;
11
12let path = location.pathname;
13
14let parts = path.split("/");
15
16let len = parts.length;
17
18let docID;
19
20if (len !== 2) {
21 if (len !== 3) {
22 docID = NanoID.make();
23 } else {
24 let match = parts[0];
25 if (match === "") {
26 let match$1 = parts[1];
27 docID = match$1 === "edit" ? parts[2] : NanoID.make();
28 } else {
29 docID = NanoID.make();
30 }
31 }
32} else {
33 let match$2 = parts[0];
34 if (match$2 === "") {
35 let match$3 = parts[1];
36 if (match$3 === "edit") {
37 let newID = NanoID.make();
38 window.history.pushState(null, "", "/edit/" + newID);
39 docID = newID;
40 } else {
41 docID = NanoID.make();
42 }
43 } else {
44 docID = NanoID.make();
45 }
46}
47
48let domElement = document.querySelector("#root");
49
50if (!(domElement == null)) {
51 Preact.render(JsxRuntime.jsx(App.make, {
52 doc: docID
53 }), domElement);
54}
55
56let elem = document.querySelector("#summary");
57
58if (!(elem == null)) {
59 Preact.render(JsxRuntime.jsx(Summary.make, {
60 doc: docID
61 }), elem);
62}
63
64export {
65 docID,
66}
67/* Not a pure module */