/
H3.purs
38 lines (33 loc) · 864 Bytes
/
H3.purs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
module Deku.DOM.Elt.H3 where
import Bolson.Core (Entity(..), fixed)
import Control.Plus (empty)
import Data.Array (mapWithIndex)
import Deku.Attribute (Attribute)
import Deku.Control as DC
import Deku.Core (Domable(..), Domable', unsafeSetPos)
import FRP.Event (Event)
import Safe.Coerce (coerce)
data H3_
h3
:: forall lock payload
. Event (Attribute H3_)
-> Array (Domable lock payload)
-> Domable lock payload
h3 attributes kids = Domable
( Element'
( DC.elementify "h3" attributes
( (coerce :: Domable' lock payload -> Domable lock payload)
(fixed (coerce (mapWithIndex unsafeSetPos kids)))
)
)
)
h3_
:: forall lock payload
. Array (Domable lock payload)
-> Domable lock payload
h3_ = h3 empty
h3__
:: forall lock payload
. String
-> Domable lock payload
h3__ t = h3_ [ DC.text_ t ]