Skip to content
This repository was archived by the owner on Oct 4, 2020. It is now read-only.

Parametrise EventListener #24

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions docs/DOM/Event/EventTarget.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
#### `EventListener`

``` purescript
data EventListener :: # ! -> *
data EventListener :: * -> # ! -> *
```

A boxed function that can be used as an event listener. This is necessary
Expand All @@ -12,15 +12,15 @@ due to the underling implementation of Eff functions.
#### `eventListener`

``` purescript
eventListener :: forall eff a. (Event -> Eff eff a) -> EventListener eff
eventListener :: forall eff a ev. (ev -> Eff eff a) -> EventListener ev eff
```

Creates an EventListener from a normal PureScript Eff function.

#### `addEventListener`

``` purescript
addEventListener :: forall eff. EventType -> EventListener (dom :: DOM | eff) -> Boolean -> EventTarget -> Eff (dom :: DOM | eff) Unit
addEventListener :: forall eff ev. EventType -> EventListener ev (dom :: DOM | eff) -> Boolean -> EventTarget -> Eff (dom :: DOM | eff) Unit
```

Adds a listener to an event target. The boolean argument indicates whether
Expand All @@ -29,7 +29,7 @@ the listener should be added for the "capture" phase.
#### `removeEventListener`

``` purescript
removeEventListener :: forall eff. EventType -> EventListener (dom :: DOM | eff) -> Boolean -> EventTarget -> Eff (dom :: DOM | eff) Unit
removeEventListener :: forall eff ev. EventType -> EventListener ev (dom :: DOM | eff) -> Boolean -> EventTarget -> Eff (dom :: DOM | eff) Unit
```

Removes a listener to an event target. The boolean argument indicates
Expand Down
8 changes: 4 additions & 4 deletions src/DOM/Event/EventTarget.purs
Original file line number Diff line number Diff line change
Expand Up @@ -10,18 +10,18 @@ import DOM.Event.Types

-- | A boxed function that can be used as an event listener. This is necessary
-- | due to the underling implementation of Eff functions.
foreign import data EventListener :: # ! -> *
foreign import data EventListener :: * -> # ! -> *

-- | Creates an EventListener from a normal PureScript Eff function.
foreign import eventListener :: forall eff a. (Event -> Eff eff a) -> EventListener eff
foreign import eventListener :: forall eff a ev. (ev -> Eff eff a) -> EventListener ev eff

-- | Adds a listener to an event target. The boolean argument indicates whether
-- | the listener should be added for the "capture" phase.
foreign import addEventListener :: forall eff. EventType -> EventListener (dom :: DOM | eff) -> Boolean -> EventTarget -> Eff (dom :: DOM | eff) Unit
foreign import addEventListener :: forall eff ev. EventType -> EventListener ev (dom :: DOM | eff) -> Boolean -> EventTarget -> Eff (dom :: DOM | eff) Unit

-- | Removes a listener to an event target. The boolean argument indicates
-- | whether the listener should be removed for the "capture" phase.
foreign import removeEventListener :: forall eff. EventType -> EventListener (dom :: DOM | eff) -> Boolean -> EventTarget -> Eff (dom :: DOM | eff) Unit
foreign import removeEventListener :: forall eff ev. EventType -> EventListener ev (dom :: DOM | eff) -> Boolean -> EventTarget -> Eff (dom :: DOM | eff) Unit

-- | Dispatches an event from an event target.
foreign import dispatchEvent :: forall eff. Event -> EventTarget -> Eff (dom :: DOM, err :: EXCEPTION | eff) Boolean