on develop help sign in
Merge branch 'develop' into ls-fix-dropdown-initialValue
commiteda9b99c4ae8c027506a0f54d3169c6d54237336 authorElliot Cameron <3noch@users.noreply.github.com> dateThu 30 Apr 2020, 10:00 (6 years ago) parent9b3c52be2b8460
8 files changed+43−32
reflex-dom-core/ChangeLog.md+17−17 reflex-dom-core/reflex-dom-core.cabal+2−2 reflex-dom-core/src/Reflex/Dom/Builder/Class.hs+1−1 reflex-dom-core/src/Reflex/Dom/Class.hs+4−7 reflex-dom-core/src/Reflex/Dom/Xhr.hs+1−1 reflex-dom/ChangeLog.md+4 reflex-dom/reflex-dom.cabal+9−4 reflex-dom/src/Reflex/Dom/Internal.hs+5
reflex-dom-core/ChangeLog.md+17−17
@@ -2,26 +2,26 @@
22
33## Unreleased
44
5−* Support GHC 8.8.
6−
7−* Fix attribute support for explicitly namespaced elements
8−
9−* Remove deprecation warnings for the following widgets in
5+* ([#353](https://github.com/reflex-frp/reflex-dom/pull/353)) Support GHC 8.8.
6+* ([#358](https://github.com/reflex-frp/reflex-dom/pull/358)) Fix attribute support for explicitly namespaced elements.
7+* ([#363](https://github.com/reflex-frp/reflex-dom/pull/363)) Remove deprecation warnings for the following widgets in
108 `Reflex.Dom.Widget.Basic`:
119
12− * `Link`
13− * `button`
14− * `dtdd`
15− * `linkClass`
16− * `link`
17− * `tabDisplay`
18− * `tableDynAttr`
19−
20−* Fix bug in hydration when dealing with unexpected HTML ([#361](https://github.com/reflex-frp/reflex-dom/pull/361)).
10+ * `Link`
11+ * `button`
12+ * `dtdd`
13+ * `linkClass`
14+ * `link`
15+ * `tabDisplay`
16+ * `tableDynAttr`
17+* ([#361](https://github.com/reflex-frp/reflex-dom/pull/361)) Fix bug in hydration causing the JavaScript to crash when dealing with unexpected HTML.
18+* ([#364](https://github.com/reflex-frp/reflex-dom/pull/364)) Export attributes used for controlling hydration at the element level:
19+ * "data-ssr" is now available as `Reflex.Dom.Builder.Immediate.hydratableAttribute`.
20+ * "data-hydration-skip" is now available as `Reflex.Dom.Builder.Immediate.skipHydrationAttribute`.
21+* ([#348](https://github.com/reflex-frp/reflex-dom/pull/348)) **(Breaking change)** Make XHR response headers case insensitive by changing `_xhrResponse_headers :: Map Text Text` to `_xhrResponse_headers :: Map (CI Text) Text`.
22+* ([#225](https://github.com/reflex-frp/reflex-dom/pull/225)) **(Breaking change)** Add a functional dependency to `HasDomEvent`.
23+* ([#366](https://github.com/reflex-frp/reflex-dom/pull/366)) Bump bounds for `reflex` to include 0.7.
2124
22−* Export attributes used for controlling hydration at the element level
23− * "data-ssr" is now available as `Reflex.Dom.Builder.Immediate.hydratableAttribute`
24− * "data-hydration-skip" is now available as `Reflex.Dom.Builder.Immediate.skipHydrationAttribute`
2525
2626## 0.5.3
2727
reflex-dom-core/reflex-dom-core.cabal+2−2
@@ -53,7 +53,7 @@ library
5353 bimap >= 0.3 && < 0.4,
5454 blaze-builder,
5555 bytestring == 0.10.*,
56− case-insensitive,
56+ case-insensitive < 1.3,
5757 containers >= 0.6 && < 0.7,
5858 constraints >= 0.9 && < 0.12,
5959 contravariant >= 1.4 && < 1.6,
@@ -73,7 +73,7 @@ library
7373 primitive >= 0.5 && < 0.8,
7474 random,
7575 ref-tf == 0.4.*,
76− reflex >= 0.6.2 && < 0.7,
76+ reflex >= 0.6.2 && < 0.8,
7777 semigroups >= 0.16 && < 0.20,
7878 stm >= 2.4 && < 2.6,
7979 text == 1.2.*,
reflex-dom-core/src/Reflex/Dom/Builder/Class.hs+1−1
@@ -638,7 +638,7 @@ instance (DomBuilder t m, MonadFix m, MonadHold t m, Group q, Query q, Additive
638638
639639-- * Convenience functions
640640
641−class HasDomEvent t target eventName where
641+class HasDomEvent t target eventName | target -> t where
642642 type DomEventType target eventName :: *
643643 domEvent :: EventName eventName -> target -> Event t (DomEventType target eventName)
644644
reflex-dom-core/src/Reflex/Dom/Class.hs+4−7
@@ -4,8 +4,7 @@ module Reflex.Dom.Class ( module Reflex.Dom.Class
44 , module Web.KeyCode
55 ) where
66
7−import Data.Map (Map)
8−import qualified Data.Map as Map
7+import Control.Lens
98import Reflex.Class
109import Web.KeyCode
1110
@@ -13,11 +12,9 @@ import Foreign.JavaScript.TH
1312import Reflex.PerformEvent.Class
1413import Reflex.PostBuild.Class
1514
16−import Prelude hiding (concat, mapM, mapM_, sequence)
17−
18−-- | Alias for Data.Map.singleton
19−(=:) :: k -> a -> Map k a
20−(=:) = Map.singleton
15+-- | Previously an alias for 'Data.Map.singleton', but now generalised to 'At'
16+(=:) :: (At m, Monoid m) => Index m -> IxValue m -> m
17+k =: a = at k ?~ a $ mempty
2118infixr 7 =: -- Ought to bind tighter than <>, which is infixr 6
2219
2320{-# DEPRECATED keycodeEnter "Instead of `x == keycodeEnter`, use `keyCodeLookup x == Enter`" #-}
reflex-dom-core/src/Reflex/Dom/Xhr.hs+1−1
@@ -446,7 +446,7 @@ xhrResponse_responseText :: Lens' XhrResponse (Maybe Text)
446446xhrResponse_responseText f (XhrResponse x1 x2 x3 x4 x5) = (\y -> XhrResponse x1 x2 x3 y x5) <$> f x4
447447{-# INLINE xhrResponse_responseText #-}
448448
449−xhrResponse_headers :: Lens' XhrResponse (Map Text Text)
449+xhrResponse_headers :: Lens' XhrResponse (Map (CI Text) Text)
450450xhrResponse_headers f (XhrResponse x1 x2 x3 x4 x5) = (\y -> XhrResponse x1 x2 x3 x4 y) <$> f x5
451451{-# INLINE xhrResponse_headers #-}
452452
reflex-dom/ChangeLog.md+4
@@ -1,5 +1,9 @@
11# Revision history for reflex-dom
22
3+## Unreleased
4+
5+* ([#366](https://github.com/reflex-frp/reflex-dom/pull/366)) Bump bounds for `reflex` to include 0.7.
6+
37## 0.5.3
48
59* On Android, enable prompting the user for geolocation
reflex-dom/reflex-dom.cabal+9−4
@@ -59,7 +59,7 @@ library
5959 build-depends:
6060 base >= 4.7 && < 4.13,
6161 bytestring == 0.10.*,
62− reflex >= 0.6.2 && < 0.7,
62+ reflex >= 0.6.2 && < 0.8,
6363 reflex-dom-core >=0.5.2 && < 0.6,
6464 text == 1.2.*
6565 if !impl(ghcjs)
@@ -74,13 +74,18 @@ library
7474 jsaddle,
7575 jsaddle-wkwebview
7676 else
77− if flag(webkit2gtk)
77+ if arch(wasm32)
7878 build-depends:
79− jsaddle-webkit2gtk
79+ jsaddle,
80+ jsaddle-wasm
8081 else
81− if !os(android)
82+ if flag(webkit2gtk)
8283 build-depends:
8384 jsaddle-webkit2gtk
85+ else
86+ if !os(android)
87+ build-depends:
88+ jsaddle-webkit2gtk
8489
8590 exposed-modules:
8691 Reflex.Dom
reflex-dom/src/Reflex/Dom/Internal.hs+5
@@ -80,6 +80,11 @@ run jsm = do
8080 startMainWidget a startPage jsm
8181 }
8282 forever $ threadDelay 1000000000
83+#elif defined(wasm32_HOST_ARCH)
84+import qualified Language.Javascript.JSaddle.Wasm as Wasm (run)
85+import Language.Javascript.JSaddle (JSM)
86+run :: JSM () -> IO ()
87+run = Wasm.run 0
8388#else
8489import Language.Javascript.JSaddle.WebKitGTK (run)
8590#endif