aboutsummaryrefslogtreecommitdiff
path: root/editor/forms/delete_page.ml
blob: 7c973c291127b330efd79e4c6064f42b12812a5e (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
28
29
30
31
32
33
34
35
36
37
open Brr
open Note

module Handler = struct

  type t = Jstr.t

  let on_close
    : t -> State.t -> State.t
    = fun id state ->
      State.Storage.delete (fun () -> Some id);
      let json = State.Storage.load None in
      State.load_page None state json
end

let create
  : Jstr.t -> Events.t
  = fun name ->

    let state =
      S.const
        (Events.Event
           ( name
           , (module Handler: Events.Handler with type t = Handler.t))) in

    let message = begin
      let open Jstr in

      (v "La page " )
      + name
      + (v " sera définitivement supprimée")
    end in

    ( state
    , El.txt message
    )