aboutsummaryrefslogtreecommitdiff
path: root/editor/storage.mli
diff options
context:
space:
mode:
Diffstat (limited to 'editor/storage.mli')
-rwxr-xr-xeditor/storage.mli21
1 files changed, 16 insertions, 5 deletions
diff --git a/editor/storage.mli b/editor/storage.mli
index 5424119..7ae77a6 100755
--- a/editor/storage.mli
+++ b/editor/storage.mli
@@ -1,20 +1,31 @@
-module PM = Prosemirror
module Js = Js_of_ocaml.Js
(** Provide a function for extracting the page id from the URL *)
val page_id
: unit -> Jstr.t option
-(** load pm schema content f] will load the content and store it into the
- element [content].
+class type content = object
+
+ method title
+ : Jstr.t Js.opt Js.readonly_prop
+
+ method content
+ : Jv.t Js.opt Js.readonly_prop
+
+ method date
+ : float Js.opt Js.readonly_prop
+
+end
+
+(** load f] will try to load the content associated with the given key.
The function [f] is called to identified which is the appropriate page id.
*)
val load
- : PM.t -> PM.Model.schema Js.t -> Brr.El.t -> (unit -> Jstr.t option) -> PM.State.editor_state Js.t
+ : (unit -> Jstr.t option) -> content Js.t
val save
- : PM.View.editor_view Js.t -> (unit -> Jstr.t option) -> unit
+ : check:(content Js.t -> bool) -> content Js.t -> (unit -> Jstr.t option) -> (bool, Jv.Error.t) result
(** Remove the page from the storage and reload the page *)
val delete