let download filename content = let a = H.a [| HA.href ("data:text/plain;charset=utf-8," ^ URI.encode content) ; HA.download filename ; HA.style "display:none" |] [| |] in let () = Element.append_child Document.body a in let () = Element.click a in Element.remove_child Document.body a external reader : unit -> Dom.element = "FileReader" [@@bs.new] external read_as_text : Dom.element -> string -> unit = "readAsText" [@@bs.send] external result : Dom.element -> string = "result" [@@bs.get]