aboutsummaryrefslogtreecommitdiff
path: root/src/View/Modal.ml
blob: 93655559ffd3b238ce62df12e5284f48728d3b7a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
let hide () =
  let body = Document.querySelectorUnsafe "body" in
  let modal = Document.querySelectorUnsafe ".g-Modal" in
  Element.removeChild body modal

let show content =
  let body = Document.querySelectorUnsafe "body" in
  let view =
    H.div
      [| HA.class_ "g-Modal" |]
      [| H.div
          [| HA.class_ "g-Modal__Curtain"
          ;  HE.on_click (fun _ -> hide ())
          |]
          [| |]
      ;  H.div
          [| HA.class_ "g-Modal__Window" |]
          [| H.button
              [| HA.class_ "g-Modal__Close"
              ;  HE.on_click (fun _ -> hide ())
              |]
              [| H.text "X" |]
          ;  content
          |]
      |]
  in
  Element.appendChild body view