glazier-react-widget-0.3.0.0: Generic widget library using glazier-react

Safe HaskellNone
LanguageHaskell2010

Glazier.React.Widgets.Input

Synopsis

Documentation

data Plan Source #

Constructors

Plan 

Fields

Instances

Generic Plan Source # 

Associated Types

type Rep Plan :: * -> * #

Methods

from :: Plan -> Rep Plan x #

to :: Rep Plan x -> Plan #

Disposing Plan Source # 
HasPlan Plan Source # 
HasPlan (Design Model Plan) Source # 

Methods

plan :: Lens' (Design Model Plan) Plan Source #

component :: Lens' (Design Model Plan) ReactComponent Source #

onInputRef :: Lens' (Design Model Plan) (Callback (JSVal -> IO ())) Source #

onKeyDown :: Lens' (Design Model Plan) (Callback (JSVal -> IO ())) Source #

onRender :: Lens' (Design Model Plan) (Callback (JSVal -> IO JSVal)) Source #

HasPlan (SuperModel Model Plan) Source # 

Methods

plan :: Lens' (SuperModel Model Plan) Plan Source #

component :: Lens' (SuperModel Model Plan) ReactComponent Source #

onInputRef :: Lens' (SuperModel Model Plan) (Callback (JSVal -> IO ())) Source #

onKeyDown :: Lens' (SuperModel Model Plan) (Callback (JSVal -> IO ())) Source #

onRender :: Lens' (SuperModel Model Plan) (Callback (JSVal -> IO JSVal)) Source #

HasModel (Design Model Plan) Source # 
HasModel (SuperModel Model Plan) Source # 

Methods

model :: Lens' (SuperModel Model Plan) Model Source #

className :: Lens' (SuperModel Model Plan) JSString Source #

inputRef :: Lens' (SuperModel Model Plan) JSVal Source #

placeholder :: Lens' (SuperModel Model Plan) JSString Source #

uid :: Lens' (SuperModel Model Plan) JSString Source #

type Rep Plan Source # 
type Rep Plan = D1 (MetaData "Plan" "Glazier.React.Widgets.Input" "glazier-react-widget-0.3.0.0-5zPsPe8DY4jEG1QJ8LqT6C" False) (C1 (MetaCons "Plan" PrefixI True) ((:*:) ((:*:) (S1 (MetaSel (Just Symbol "_component") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 ReactComponent)) (S1 (MetaSel (Just Symbol "_onRender") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Callback (JSVal -> IO JSVal))))) ((:*:) (S1 (MetaSel (Just Symbol "_onInputRef") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Callback (JSVal -> IO ())))) (S1 (MetaSel (Just Symbol "_onKeyDown") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Callback (JSVal -> IO ())))))))

class HasPlan c where Source #

Minimal complete definition

plan

Instances

HasPlan Plan Source # 
HasPlan (Design Model Plan) Source # 

Methods

plan :: Lens' (Design Model Plan) Plan Source #

component :: Lens' (Design Model Plan) ReactComponent Source #

onInputRef :: Lens' (Design Model Plan) (Callback (JSVal -> IO ())) Source #

onKeyDown :: Lens' (Design Model Plan) (Callback (JSVal -> IO ())) Source #

onRender :: Lens' (Design Model Plan) (Callback (JSVal -> IO JSVal)) Source #

HasPlan (SuperModel Model Plan) Source # 

Methods

plan :: Lens' (SuperModel Model Plan) Plan Source #

component :: Lens' (SuperModel Model Plan) ReactComponent Source #

onInputRef :: Lens' (SuperModel Model Plan) (Callback (JSVal -> IO ())) Source #

onKeyDown :: Lens' (SuperModel Model Plan) (Callback (JSVal -> IO ())) Source #

onRender :: Lens' (SuperModel Model Plan) (Callback (JSVal -> IO JSVal)) Source #

mkPlan :: Frame Model Plan -> F (Maker Action) Plan Source #

data Model Source #

Instances

Disposing Model Source # 
HasModel Model Source # 
HasPlan (Design Model Plan) Source # 

Methods

plan :: Lens' (Design Model Plan) Plan Source #

component :: Lens' (Design Model Plan) ReactComponent Source #

onInputRef :: Lens' (Design Model Plan) (Callback (JSVal -> IO ())) Source #

onKeyDown :: Lens' (Design Model Plan) (Callback (JSVal -> IO ())) Source #

onRender :: Lens' (Design Model Plan) (Callback (JSVal -> IO JSVal)) Source #

HasPlan (SuperModel Model Plan) Source # 

Methods

plan :: Lens' (SuperModel Model Plan) Plan Source #

component :: Lens' (SuperModel Model Plan) ReactComponent Source #

onInputRef :: Lens' (SuperModel Model Plan) (Callback (JSVal -> IO ())) Source #

onKeyDown :: Lens' (SuperModel Model Plan) (Callback (JSVal -> IO ())) Source #

onRender :: Lens' (SuperModel Model Plan) (Callback (JSVal -> IO JSVal)) Source #

HasModel (Design Model Plan) Source # 
HasModel (SuperModel Model Plan) Source # 

Methods

model :: Lens' (SuperModel Model Plan) Model Source #

className :: Lens' (SuperModel Model Plan) JSString Source #

inputRef :: Lens' (SuperModel Model Plan) JSVal Source #

placeholder :: Lens' (SuperModel Model Plan) JSString Source #

uid :: Lens' (SuperModel Model Plan) JSString Source #

type Design = Design Model Plan Source #

type Frame = Frame Model Plan Source #

type SuperModel = SuperModel Model Plan Source #

window :: WindowT (Design Model Plan) (ReactMlT Identity) () Source #

Exposed to parent components to render this component

gadget :: GadgetT Action (SuperModel Model Plan) Identity (DList Command) Source #

State update logic. The best practice is to leave this in general Monad m (eg, not MonadIO). This allows gadget to use STM as the base monad which allows for combining concurrently with other stateful STM effects and still maintain a single source of truth.