Packages
plinth
0.10.2
0.10.2
0.10.1
0.10.0
0.9.3
0.9.2
0.9.1
0.9.0
0.8.2
0.8.1
0.8.0
0.7.2
0.7.1
0.7.0
0.6.1
0.6.0
0.5.9
0.5.8
0.5.7
0.5.6
0.5.5
0.5.4
0.5.3
0.5.2
0.5.1
0.5.0
0.4.15
0.4.14
0.4.13
0.4.12
0.4.11
0.4.10
0.4.9
0.4.8
0.4.7
0.4.6
0.4.5
0.4.4
0.4.3
0.4.2
0.4.1
0.4.0
0.3.0
0.2.0
0.1.13
0.1.12
0.1.11
0.1.9
0.1.8
0.1.7
0.1.6
0.1.5
0.1.4
0.1.3
0.1.2
0.1.1
0.1.0
Bindings to Node.js and browser platform APIs
Current section
Files
Jump to
Current section
Files
src/plinth/browser/eventsource.gleam
import plinth/browser/event
import plinth/browser/message_event
pub type EventSource
/// Returns the EventSource constructor if it's available in the current JavaScript environment.
///
/// Starting an event source doesn't return an error any url is accepted.
/// If the url provided is not valid it will be treated as a path of the current origin.
@external(javascript, "../../plinth_browser_eventsource_ffi.mjs", "constructor")
pub fn constructor() -> Result(fn(String, Bool) -> EventSource, Nil)
@external(javascript, "../../plinth_browser_eventsource_ffi.mjs", "on_open")
pub fn on_open(source: EventSource, handle: fn(event.Event(Nil)) -> Nil) -> Nil
@external(javascript, "../../plinth_browser_eventsource_ffi.mjs", "on_close")
pub fn on_close(source: EventSource, handle: fn(event.Event(Nil)) -> Nil) -> Nil
@external(javascript, "../../plinth_browser_eventsource_ffi.mjs", "on_message")
pub fn on_message(
source: EventSource,
handle: fn(message_event.MessageEvent) -> Nil,
) -> Nil