reform-blaze-0.2.0: Add support for using blaze-html with Reform

Safe Haskell | None

Text.Reform.Blaze.Common

Synopsis

- inputText :: (Monad m, FormError error, ToValue text) => (input -> Either error text) -> text -> Form m input error Html () text
- inputPassword :: (Monad m, FormError error, ToValue text) => (input -> Either error text) -> text -> Form m input error Html () text
- inputSubmit :: (Monad m, FormError error, ToValue text) => (input -> Either error text) -> text -> Form m input error Html () (Maybe text)
- inputReset :: (Monad m, FormError error, ToValue text) => text -> Form m input error Html () ()
- inputHidden :: (Monad m, FormError error, ToValue text) => (input -> Either error text) -> text -> Form m input error Html () text
- inputButton :: (Monad m, FormError error, ToValue text) => text -> Form m input error Html () ()
- textarea :: (Monad m, FormError error, ToMarkup text) => (input -> Either error text) -> Int -> Int -> text -> Form m input error Html () text
- inputFile :: (Monad m, FormError error, FormInput input, ErrorInputType error ~ input) => Form m input error Html () (FileType input)
- buttonSubmit :: (Monad m, FormError error, ToValue text, ToMarkup children) => (input -> Either error text) -> text -> children -> Form m input error Html () (Maybe text)
- buttonReset :: (Monad m, FormError error, ToMarkup children) => children -> Form m input error Html () ()
- button :: (Monad m, FormError error, ToMarkup children) => children -> Form m input error Html () ()
- label :: (Monad m, ToMarkup children) => children -> Form m input error Html () ()
- inputCheckbox :: forall x error input m. (Monad m, FormInput input, FormError error, ErrorInputType error ~ input) => Bool -> Form m input error Html () Bool
- inputCheckboxes :: (Functor m, Monad m, FormError error, ErrorInputType error ~ input, FormInput input, ToMarkup lbl) => [(a, lbl)] -> (a -> Bool) -> Form m input error Html () [a]
- inputRadio :: (Functor m, Monad m, FormError error, ErrorInputType error ~ input, FormInput input, ToMarkup lbl) => [(a, lbl)] -> (a -> Bool) -> Form m input error Html () a
- select :: (Functor m, Monad m, FormError error, ErrorInputType error ~ input, FormInput input, ToMarkup lbl) => [(a, lbl)] -> (a -> Bool) -> Form m input error Html () a
- selectMultiple :: (Functor m, Monad m, FormError error, ErrorInputType error ~ input, FormInput input, ToMarkup lbl) => [(a, lbl)] -> (a -> Bool) -> Form m input error Html () [a]
- errorList :: (Monad m, ToMarkup error) => Form m input error Html () ()
- childErrorList :: (Monad m, ToMarkup error) => Form m input error Html () ()
- br :: Monad m => Form m input error Html () ()
- fieldset :: (Monad m, Functor m) => Form m input error Html proof a -> Form m input error Html proof a
- ol :: (Monad m, Functor m) => Form m input error Html proof a -> Form m input error Html proof a
- ul :: (Monad m, Functor m) => Form m input error Html proof a -> Form m input error Html proof a
- li :: (Monad m, Functor m) => Form m input error Html proof a -> Form m input error Html proof a
- form :: ToValue action => action -> [(Text, Text)] -> Html -> Html
- setAttr :: (Monad m, Functor m) => Form m input error Html proof a -> Attribute -> Form m input error Html proof a

# Documentation

inputText :: (Monad m, FormError error, ToValue text) => (input -> Either error text) -> text -> Form m input error Html () textSource

inputPassword :: (Monad m, FormError error, ToValue text) => (input -> Either error text) -> text -> Form m input error Html () textSource

inputSubmit :: (Monad m, FormError error, ToValue text) => (input -> Either error text) -> text -> Form m input error Html () (Maybe text)Source

inputReset :: (Monad m, FormError error, ToValue text) => text -> Form m input error Html () ()Source

inputHidden :: (Monad m, FormError error, ToValue text) => (input -> Either error text) -> text -> Form m input error Html () textSource

inputButton :: (Monad m, FormError error, ToValue text) => text -> Form m input error Html () ()Source

textarea Source

Arguments

:: (Monad m, FormError error, ToMarkup text) |
=> (input -> Either error text) |
-> Int | cols
-> Int | rows
-> text | initial text
-> Form m input error Html () text |

inputFile :: (Monad m, FormError error, FormInput input, ErrorInputType error ~ input) => Form m input error Html () (FileType input)Source

Create an `<input type="file">` element

This control may succeed even if the user does not actually select a file to upload. In that case the uploaded name will likely be "" and the file contents will be empty as well.

buttonSubmit :: (Monad m, FormError error, ToValue text, ToMarkup children) => (input -> Either error text) -> text -> children -> Form m input error Html () (Maybe text)Source

Create a `<button type="submit">` element

buttonReset :: (Monad m, FormError error, ToMarkup children) => children -> Form m input error Html () ()Source

create a `<button type="reset"></button>` element

This element does not add any data to the form data set.

button :: (Monad m, FormError error, ToMarkup children) => children -> Form m input error Html () ()Source

create a `<button type="button"></button>` element

This element does not add any data to the form data set.

label :: (Monad m, ToMarkup children) => children -> Form m input error Html () ()Source

create a `<label>` element.

Use this with or ++ to ensure that the `for` attribute references the correct `id`.

     label "some input field: " ++> inputText ""

inputCheckbox Source

Arguments

:: forall x error input m . (Monad m, FormInput input, FormError error, ErrorInputType error ~ input) |
=> Bool | initially checked
-> Form m input error Html () Bool |

Create a single `<input type="checkbox">` element

returns a `Bool` indicating if it was checked or not.

see also `inputCheckboxes` FIXME: Should this built on something in Generalized?

inputCheckboxes Source

Arguments

:: (Functor m, Monad m, FormError error, ErrorInputType error ~ input, FormInput input, ToMarkup lbl) |
=> [(a, lbl)] | value, label, initially checked
-> (a -> Bool) | function which indicates if a value should be checked initially
-> Form m input error Html () [a] |

Create a group of `<input type="checkbox">` elements

inputRadio Source

Arguments

:: (Functor m, Monad m, FormError error, ErrorInputType error ~ input, FormInput input, ToMarkup lbl) |
=> [(a, lbl)] | value, label, initially checked
-> (a -> Bool) | isDefault
-> Form m input error Html () a |

Create a group of `<input type="radio">` elements

select Source

Arguments

:: (Functor m, Monad m, FormError error, ErrorInputType error ~ input, FormInput input, ToMarkup lbl) |
=> [(a, lbl)] | value, label
-> (a -> Bool) | isDefault, must match *exactly one* element in the list of choices
-> Form m input error Html () a |

create `<select></select>` element plus its `<option></option>` children.

see also: `selectMultiple`

selectMultiple Source

Arguments

:: (Functor m, Monad m, FormError error, ErrorInputType error ~ input, FormInput input, ToMarkup lbl) |
=> [(a, lbl)] | value, label, initially checked
-> (a -> Bool) | isSelected initially
-> Form m input error Html () [a] |

create `<select multiple="multiple"></select>` element plus its `<option></option>` children.

This creates a `<select>` element which allows more than one item to be selected.

errorList :: (Monad m, ToMarkup error) => Form m input error Html () ()Source

create a `<ul>` which contains all the errors related to the `Form`.

The `\ul\` will have the attribute `class="reform-error-list"`.

childErrorList :: (Monad m, ToMarkup error) => Form m input error Html () ()Source

create a `<ul>` which contains all the errors related to the `Form`.

Includes errors from child forms.

The `\ul\` will have the attribute `class="reform-error-list"`.

br :: Monad m => Form m input error Html () ()Source

create a `<br>` tag.

fieldset :: (Monad m, Functor m) => Form m input error Html proof a -> Form m input error Html proof aSource

wrap a `<fieldset class="reform">` around a `Form`

ol :: (Monad m, Functor m) => Form m input error Html proof a -> Form m input error Html proof aSource

wrap an `<ol class="reform">` around a `Form`

ul :: (Monad m, Functor m) => Form m input error Html proof a -> Form m input error Html proof aSource

wrap a `<ul class="reform">` around a `Form`

li :: (Monad m, Functor m) => Form m input error Html proof a -> Form m input error Html proof aSource

wrap a `<li class="reform">` around a `Form`

form Source

Arguments

:: ToValue action |
=> action | action url
-> [(Text, Text)] | hidden fields to add to form
-> Html | children
-> Html |

create `<form action=action method="POST" enctype="multipart/form-data">`

setAttr :: (Monad m, Functor m) => Form m input error Html proof a -> Attribute -> Form m input error Html proof aSource

add an attribute to the `Html` for a form element.