module M = struct type t = unit let update : 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 -> State.event Note.event = fun () -> let title = Jstr.v "Confirmation" in let ev = Elements.Popup.create ~title ~form:(Some (Forms.Delete_page.create () )) in Note.E.map (fun v -> State.E ( v , (module M : State.Event with type t = M.t ))) (Note.E.Option.on_some ev)