yesod-form 1.3.11 → 1.3.12
raw patch · 3 files changed
+14/−4 lines, 3 files
Files
- Yesod/Form/Fields.hs +1/−1
- Yesod/Form/Functions.hs +12/−2
- yesod-form.cabal +1/−1
Yesod/Form/Fields.hs view
@@ -233,7 +233,7 @@ } readMay :: Read a => String -> Maybe a-readMay s = case reads s of+readMay s = case filter (Prelude.null . snd) $ reads s of (x, _):_ -> Just x [] -> Nothing
Yesod/Form/Functions.hs view
@@ -1,4 +1,5 @@ {-# LANGUAGE QuasiQuotes #-}+{-# LANGUAGE TupleSections #-} {-# LANGUAGE TypeFamilies #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE RecordWildCards #-}@@ -356,15 +357,21 @@ -> MForm m (FormResult a, WidgetT (HandlerSite m) IO ()) renderTable, renderDivs, renderDivsNoLabels :: Monad m => FormRender m a+-- | Render a form into a series of tr tags. Note that, in order to allow+-- you to add extra rows to the table, this function does /not/ wrap up+-- the resulting HTML in a table tag; you must do that yourself. renderTable aform fragment = do (res, views') <- aFormToForm aform let views = views' [] let widget = [whamlet| $newline never-\#{fragment}-$forall view <- views+$if null views+ \#{fragment}+$forall (isFirst, view) <- addIsFirst views <tr :fvRequired view:.required :not $ fvRequired view:.optional> <td>+ $if isFirst+ \#{fragment} <label for=#{fvId view}>#{fvLabel view} $maybe tt <- fvTooltip view <div .tooltip>#{tt}@@ -373,6 +380,9 @@ <td .errors>#{err} |] return (res, widget)+ where+ addIsFirst [] = []+ addIsFirst (x:y) = (True, x) : map (False, ) y -- | render a field inside a div renderDivs = renderDivsMaybeLabels True
yesod-form.cabal view
@@ -1,5 +1,5 @@ name: yesod-form-version: 1.3.11+version: 1.3.12 license: MIT license-file: LICENSE author: Michael Snoyman <michael@snoyman.com>