Shpadoinkle-widgets-0.0.0.2: A collection of common reusable types and components.

Safe HaskellNone
LanguageHaskell2010

Shpadoinkle.Widgets.Form.Dropdown

Documentation

data Dropdown p a Source #

Constructors

Dropdown 
Instances
Consideration ConsideredChoice p => Consideration Dropdown p Source # 
Instance details

Defined in Shpadoinkle.Widgets.Form.Dropdown

Methods

consider :: Ord a => Considered p a -> Dropdown p a -> Dropdown p a Source #

consider' :: Ord a => a -> Dropdown p a -> Dropdown p a Source #

choose :: Ord a => Dropdown p a -> Dropdown p a Source #

choice :: Ord a => Dropdown p a -> Choice p a Source #

considered :: Ord a => Dropdown p a -> Considered p a Source #

shrug :: Ord a => Dropdown p a -> Dropdown p a Source #

(Consideration ConsideredChoice p, Deselection ConsideredChoice p) => Deselection Dropdown p Source # 
Instance details

Defined in Shpadoinkle.Widgets.Form.Dropdown

Methods

noselection :: (Foldable g, Ord a) => g a -> Dropdown p a Source #

deselect :: Ord a => Dropdown p a -> Dropdown p a Source #

Consideration ConsideredChoice p => Selection Dropdown p Source # 
Instance details

Defined in Shpadoinkle.Widgets.Form.Dropdown

Methods

select :: Ord a => Dropdown p a -> Selected p a -> Dropdown p a Source #

select' :: Ord a => Dropdown p a -> a -> Dropdown p a Source #

unselected :: Ord a => Dropdown p a -> Set a Source #

selected :: Ord a => Dropdown p a -> Selected p a Source #

withOptions :: (Foldable g, Ord a) => Selected p a -> g a -> Dropdown p a Source #

withOptions' :: (Foldable g, Ord a) => a -> g a -> Dropdown p a Source #

Compactable (ConsideredChoice p) => Compactable (Dropdown p) Source # 
Instance details

Defined in Shpadoinkle.Widgets.Form.Dropdown

Methods

compact :: Dropdown p (Maybe a) -> Dropdown p a #

separate :: Dropdown p (Either l r) -> (Dropdown p l, Dropdown p r) #

filter :: (a -> Bool) -> Dropdown p a -> Dropdown p a #

partition :: (a -> Bool) -> Dropdown p a -> (Dropdown p a, Dropdown p a) #

fmapMaybe :: Functor (Dropdown p) => (a -> Maybe b) -> Dropdown p a -> Dropdown p b #

fmapEither :: Functor (Dropdown p) => (a -> Either l r) -> Dropdown p a -> (Dropdown p l, Dropdown p r) #

applyMaybe :: Applicative (Dropdown p) => Dropdown p (a -> Maybe b) -> Dropdown p a -> Dropdown p b #

applyEither :: Applicative (Dropdown p) => Dropdown p (a -> Either l r) -> Dropdown p a -> (Dropdown p l, Dropdown p r) #

bindMaybe :: Monad (Dropdown p) => Dropdown p a -> (a -> Dropdown p (Maybe b)) -> Dropdown p b #

bindEither :: Monad (Dropdown p) => Dropdown p a -> (a -> Dropdown p (Either l r)) -> (Dropdown p l, Dropdown p r) #

traverseMaybe :: (Applicative g, Traversable (Dropdown p)) => (a -> g (Maybe b)) -> Dropdown p a -> g (Dropdown p b) #

traverseEither :: (Applicative g, Traversable (Dropdown p)) => (a -> g (Either l r)) -> Dropdown p a -> g (Dropdown p l, Dropdown p r) #

SetLike (ConsideredChoice p) => SetLike (Dropdown p) Source # 
Instance details

Defined in Shpadoinkle.Widgets.Form.Dropdown

Methods

toSet :: Ord a => Dropdown p a -> Set a Source #

smap :: Ord b => (a -> b) -> Dropdown p a -> Dropdown p b Source #

valid :: Ord a => Dropdown p a -> Bool Source #

Control (Dropdown One) Source # 
Instance details

Defined in Shpadoinkle.Widgets.Form.Dropdown

Associated Types

type Val (Dropdown One) a :: Type Source #

Methods

hygiene :: Applicative f => (Hygiene -> f Hygiene) -> Dropdown One a -> f (Dropdown One a) Source #

value :: (Applicative f, Ord a) => (Val (Dropdown One) a -> f (Val (Dropdown One) a)) -> Dropdown One a -> f (Dropdown One a) Source #

Control (Dropdown AtleastOne) Source # 
Instance details

Defined in Shpadoinkle.Widgets.Form.Dropdown

Associated Types

type Val (Dropdown AtleastOne) a :: Type Source #

(Eq (Selected p a), Eq (Considered p a), Eq a) => Eq (Dropdown p a) Source # 
Instance details

Defined in Shpadoinkle.Widgets.Form.Dropdown

Methods

(==) :: Dropdown p a -> Dropdown p a -> Bool #

(/=) :: Dropdown p a -> Dropdown p a -> Bool #

(Ord (Selected p a), Ord (Considered p a), Ord a) => Ord (Dropdown p a) Source # 
Instance details

Defined in Shpadoinkle.Widgets.Form.Dropdown

Methods

compare :: Dropdown p a -> Dropdown p a -> Ordering #

(<) :: Dropdown p a -> Dropdown p a -> Bool #

(<=) :: Dropdown p a -> Dropdown p a -> Bool #

(>) :: Dropdown p a -> Dropdown p a -> Bool #

(>=) :: Dropdown p a -> Dropdown p a -> Bool #

max :: Dropdown p a -> Dropdown p a -> Dropdown p a #

min :: Dropdown p a -> Dropdown p a -> Dropdown p a #

(Read (Selected p a), Read (Considered p a), Read a, Ord a) => Read (Dropdown p a) Source # 
Instance details

Defined in Shpadoinkle.Widgets.Form.Dropdown

(Show (Selected p a), Show (Considered p a), Show a) => Show (Dropdown p a) Source # 
Instance details

Defined in Shpadoinkle.Widgets.Form.Dropdown

Methods

showsPrec :: Int -> Dropdown p a -> ShowS #

show :: Dropdown p a -> String #

showList :: [Dropdown p a] -> ShowS #

Generic (Dropdown p a) Source # 
Instance details

Defined in Shpadoinkle.Widgets.Form.Dropdown

Associated Types

type Rep (Dropdown p a) :: Type -> Type #

Methods

from :: Dropdown p a -> Rep (Dropdown p a) x #

to :: Rep (Dropdown p a) x -> Dropdown p a #

Semigroup (ConsideredChoice p a) => Semigroup (Dropdown p a) Source # 
Instance details

Defined in Shpadoinkle.Widgets.Form.Dropdown

Methods

(<>) :: Dropdown p a -> Dropdown p a -> Dropdown p a #

sconcat :: NonEmpty (Dropdown p a) -> Dropdown p a #

stimes :: Integral b => b -> Dropdown p a -> Dropdown p a #

Monoid (ConsideredChoice p a) => Monoid (Dropdown p a) Source # 
Instance details

Defined in Shpadoinkle.Widgets.Form.Dropdown

Methods

mempty :: Dropdown p a #

mappend :: Dropdown p a -> Dropdown p a -> Dropdown p a #

mconcat :: [Dropdown p a] -> Dropdown p a #

(ToJSON a, ToJSON (Selected p a), ToJSON (Considered p a)) => ToJSON (Dropdown p a) Source # 
Instance details

Defined in Shpadoinkle.Widgets.Form.Dropdown

(FromJSON a, FromJSON (Selected p a), FromJSON (Considered p a), Ord a) => FromJSON (Dropdown p a) Source # 
Instance details

Defined in Shpadoinkle.Widgets.Form.Dropdown

(Consideration ConsideredChoice p, Ord a) => IsToggle (Dropdown p a) Source # 
Instance details

Defined in Shpadoinkle.Widgets.Form.Dropdown

Methods

close :: Dropdown p a -> Dropdown p a Source #

toggle :: Dropdown p a -> Dropdown p a Source #

open :: Dropdown p a -> Dropdown p a Source #

type Val (Dropdown One) a Source # 
Instance details

Defined in Shpadoinkle.Widgets.Form.Dropdown

type Val (Dropdown One) a = Maybe a
type Val (Dropdown AtleastOne) a Source # 
Instance details

Defined in Shpadoinkle.Widgets.Form.Dropdown

type Val (Dropdown AtleastOne) a = a
type Rep (Dropdown p a) Source # 
Instance details

Defined in Shpadoinkle.Widgets.Form.Dropdown

type Rep (Dropdown p a) = D1 (MetaData "Dropdown" "Shpadoinkle.Widgets.Form.Dropdown" "Shpadoinkle-widgets-0.0.0.2-inplace" False) (C1 (MetaCons "Dropdown" PrefixI True) (S1 (MetaSel (Just "_considered") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (ConsideredChoice p a)) :*: S1 (MetaSel (Just "_toggle") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Toggle)))

newtype Config m Source #

Constructors

Config 

Fields

data Theme m Source #

Constructors

Theme 

Fields

  • _wrapper :: forall a. [Html m a] -> Html m a
     
  • _header :: forall a. [Html m a] -> [Html m a]
     
  • _list :: forall a. [Html m a] -> Html m a
     
  • _item :: forall a. [Html m a] -> Html m a
     

dropdown :: (Considered p ~ Maybe, Consideration Dropdown p, Consideration ConsideredChoice p, Present (Selected p a), Present a, Ord a, MonadJSM m) => (forall b. Dropdown p b -> Theme m) -> Config m -> Dropdown p a -> Html m (Dropdown p a) Source #