reflex-dom 0.6.3.3 → 0.6.3.4
raw patch · 4 files changed
+18/−14 lines, 4 filesdep +patchPVP ok
version bump matches the API change (PVP)
Dependencies added: patch
API changes (from Hackage documentation)
Files
- ChangeLog.md +4/−0
- examples/sortableList.hs +8/−6
- reflex-dom.cabal +5/−7
- src/Reflex/Dom/Internal.hs +1/−1
ChangeLog.md view
@@ -1,5 +1,9 @@ # Revision history for reflex-dom +## 0.6.3.4++* Fix WASM related issues+ ## 0.6.3.3 * Support GHC 9.12
examples/sortableList.hs view
@@ -1,3 +1,4 @@+{-# LANGUAGE CPP #-} {-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE GADTs #-} {-# LANGUAGE OverloadedStrings #-}@@ -5,21 +6,22 @@ {-# LANGUAGE RecursiveDo #-} {-# LANGUAGE ScopedTypeVariables #-} import Control.Lens-import Control.Monad.Identity+import Control.Monad.Fix import Control.Monad.IO.Class-import Data.Dependent.Map (DMap)-import Data.Functor.Constant-import Data.Functor.Misc import Data.List import Data.Map (Map) import qualified Data.Map as Map-import Data.Monoid import Data.Ord+import Data.Patch.MapWithMove import qualified Data.Text as T import Data.Time.Clock import Reflex.Dom import System.Random +#if defined(wasm32_HOST_ARCH)+foreign export javascript "hs_start" main :: IO ()+#endif+ main :: IO () main = mainWidget $ do let f _ (a, b, c) = el "tr" $ do@@ -71,7 +73,7 @@ simpleSortableList f m0 resortFunc resortSlowFunc = do rec let resortPatchFast = attachWith (flip patchThatSortsMapWith) (currentIncremental m) resortFunc redrawPatch :: Map k v -> (v -> v -> Ordering) -> PatchMapWithMove k v- redrawPatch d cmp = unsafePatchMapWithMove $ fmap (MapEdit_Insert False) $ Map.fromList $ zip (Map.keys d) (sortBy cmp $ Map.elems d)+ redrawPatch d cmp = patchMapWithMoveInsertAll $ Map.fromList $ zip (Map.keys d) (sortBy cmp $ Map.elems d) resortPatchSlow = attachWith redrawPatch (currentIncremental m) resortSlowFunc resortPatch = leftmost [ resortPatchFast
reflex-dom.cabal view
@@ -1,6 +1,6 @@ cabal-version: 1.24 Name: reflex-dom-Version: 0.6.3.3+Version: 0.6.3.4 Synopsis: Functional Reactive Web Apps with Reflex Description: Web applications without callbacks or side-effects.@@ -50,11 +50,6 @@ default: False manual: True -flag wasm32- description: Build for wasm32 architecture- default: False- manual: True- library hs-source-dirs: src if os(android)@@ -88,7 +83,7 @@ jsaddle >= 0.9.6 && < 0.10, jsaddle-wkwebview >= 0.9.6 && < 0.10 else- if flag(wasm32)+ if arch(wasm32) build-depends: jsaddle >= 0.9.6 && < 0.10, jsaddle-wasm >= 0.1 && < 0.2@@ -142,6 +137,7 @@ , dependent-map , lens , mtl+ , patch , random , reflex , reflex-dom@@ -158,6 +154,8 @@ if flag(use-reflex-optimizer) ghc-options: -fplugin=Reflex.Optimizer default-language: Haskell2010+ if arch(wasm32)+ ghc-options: -no-hs-main -optl-mexec-model=reactor "-optl-Wl,--export=hs_start" executable benchmark build-depends: base
src/Reflex/Dom/Internal.hs view
@@ -93,7 +93,7 @@ import qualified Language.Javascript.JSaddle.Wasm as Wasm (run) import Language.Javascript.JSaddle (JSM) run :: JSM () -> IO ()-run = Wasm.run 0+run = Wasm.run #else import Language.Javascript.JSaddle.WebKitGTK (run)