on develop help sign in
Add RawFile type synonym.
commit3697ac378cd8fada7e0ae1c7750974dfe2ad766d authorLuigy Leon <luigy@outlook.com> dateMon 29 Aug 2016, 14:43 (10 years ago) parent752fdf9
3 files changed+6−4
src/Reflex/Dom/Builder/Class.hs+2−2 src/Reflex/Dom/Builder/Immediate.hs+3−2 src/Reflex/Dom/Builder/Static.hs+1
src/Reflex/Dom/Builder/Class.hs+2−2
@@ -46,12 +46,12 @@ import Data.Text (Text)
4646import Data.Traversable
4747import Data.Type.Coercion
4848import GHC.Exts (Constraint)
49−import GHCJS.DOM.File (File)
5049
5150class Default (EventSpec d EventResult) => DomSpace d where
5251 type EventSpec d :: (EventTag -> *) -> *
5352 type RawTextNode d :: *
5453 type RawElement d :: *
54+ type RawFile d :: *
5555 type RawInputElement d :: *
5656 type RawTextAreaElement d :: *
5757 type RawSelectElement d :: *
@@ -262,7 +262,7 @@ data InputElement er d t
262262 , _inputElement_hasFocus :: Dynamic t Bool
263263 , _inputElement_element :: Element er d t
264264 , _inputElement_raw :: RawInputElement d
265− , _inputElement_files :: Dynamic t [File]
265+ , _inputElement_files :: Dynamic t [RawFile d]
266266 }
267267
268268data TextAreaElementConfig er t m
src/Reflex/Dom/Builder/Immediate.hs+3−2
@@ -46,7 +46,7 @@ import qualified GHCJS.DOM.Element as Element
4646import qualified GHCJS.DOM.Event as Event
4747import GHCJS.DOM.EventM (EventM, event, on)
4848import qualified GHCJS.DOM.EventM as DOM
49−import qualified GHCJS.DOM.FileList as File
49+import qualified GHCJS.DOM.FileList as FileList
5050import qualified GHCJS.DOM.HTMLInputElement as Input
5151import qualified GHCJS.DOM.HTMLSelectElement as Select
5252import qualified GHCJS.DOM.HTMLTextAreaElement as TextArea
@@ -202,6 +202,7 @@ instance DomSpace GhcjsDomSpace where
202202 type EventSpec GhcjsDomSpace = GhcjsEventSpec
203203 type RawTextNode GhcjsDomSpace = DOM.Text
204204 type RawElement GhcjsDomSpace = DOM.HTMLElement
205+ type RawFile GhcjsDomSpace = DOM.File
205206 type RawInputElement GhcjsDomSpace = DOM.HTMLInputElement
206207 type RawTextAreaElement GhcjsDomSpace = DOM.HTMLTextAreaElement
207208 type RawSelectElement GhcjsDomSpace = DOM.HTMLSelectElement
@@ -291,7 +292,7 @@ instance SupportsImmediateDomBuilder t m => DomBuilder t (ImmediateDomBuilderT t
291292 ]
292293 files <- holdDyn mempty <=< wrapDomEvent domInputElement (`on` Element.change) $ do
293294 mfiles <- Input.getFiles domInputElement
294− let getMyFiles xs = fmap catMaybes . mapM (File.item xs) . flip take [0..] . fromIntegral =<< File.getLength xs
295+ let getMyFiles xs = fmap catMaybes . mapM (FileList.item xs) . flip take [0..] . fromIntegral =<< FileList.getLength xs
295296 maybe (return []) getMyFiles mfiles
296297 return $ InputElement
297298 { _inputElement_value = v
src/Reflex/Dom/Builder/Static.hs+1
@@ -130,6 +130,7 @@ instance DomSpace StaticDomSpace where
130130 type EventSpec StaticDomSpace = StaticEventSpec
131131 type RawTextNode StaticDomSpace = ()
132132 type RawElement StaticDomSpace = ()
133+ type RawFile StaticDomSpace = ()
133134 type RawInputElement StaticDomSpace = ()
134135 type RawTextAreaElement StaticDomSpace = ()
135136 type RawSelectElement StaticDomSpace = ()