blob: 5c625bde2602a8a42d0421eb740b29a82b80f29a (
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
|
module M = struct
type t = unit
let apply
: t -> State.t -> State.t
= fun () state ->
match state.page_id with
| None -> state
| Some page_id ->
State.Storage.delete (fun () -> Some page_id);
let json = State.Storage.load None in
State.load_page None state json
end
let create
: unit -> Event.t Note.event
= fun () ->
let title = Jstr.v "Confirmation" in
let ev = Forms.Ui.popup
~title
~form:(Some (Forms.Delete_page.create () ))
in
Note.E.map
(fun v -> Event.E
( v
, (module M : Event.Handler with type t = M.t )))
(Note.E.Option.on_some ev)
|