@@ -287,14 +287,14 @@ instance (Reflex t, DomSpace (DomBuilderSpace m)) => Default (RawElementConfig E
288data SelectElementConfig er t m = SelectElementConfig
288data SelectElementConfig er t m = SelectElementConfig
289 { _selectElementConfig_initialValue :: Text
289 { _selectElementConfig_initialValue :: Text
290− , _selectElementConfig_setValue :: Event t Text
290+ , _selectElementConfig_setValue :: Maybe (Event t Text)
291 , _selectElementConfig_elementConfig :: ElementConfig er t m
291 , _selectElementConfig_elementConfig :: ElementConfig er t m
294instance (Reflex t, er ~ EventResult, DomBuilder t m) => Default (SelectElementConfig er t m) where
294instance (Reflex t, er ~ EventResult, DomBuilder t m) => Default (SelectElementConfig er t m) where
295 def = SelectElementConfig
295 def = SelectElementConfig
296 { _selectElementConfig_initialValue = ""
296 { _selectElementConfig_initialValue = ""
297− , _selectElementConfig_setValue = never
297+ , _selectElementConfig_setValue = Nothing
298 , _selectElementConfig_elementConfig = def
298 , _selectElementConfig_elementConfig = def
@@ -313,6 +313,7 @@ concat <$> mapM (uncurry makeLensesWithoutField)
313 , (["_rawElementConfig_modifyAttributes"], ''RawElementConfig)
313 , (["_rawElementConfig_modifyAttributes"], ''RawElementConfig)
314 , (["_elementConfig_modifyAttributes"], ''ElementConfig)
314 , (["_elementConfig_modifyAttributes"], ''ElementConfig)
315 , (["_textAreaElementConfig_setValue"], ''TextAreaElementConfig)
315 , (["_textAreaElementConfig_setValue"], ''TextAreaElementConfig)
316+ , (["_selectElementConfig_setValue"], ''SelectElementConfig)
318-- | This lens is technically illegal. The implementation of 'TextNodeConfig' uses a 'Maybe' under the hood for efficiency reasons. However, always interacting with 'TextNodeConfig' via lenses will always behave correctly, and if you pattern match on it, you should always treat 'Nothing' as 'never'.
319-- | This lens is technically illegal. The implementation of 'TextNodeConfig' uses a 'Maybe' under the hood for efficiency reasons. However, always interacting with 'TextNodeConfig' via lenses will always behave correctly, and if you pattern match on it, you should always treat 'Nothing' as 'never'.
@@ -369,9 +370,14 @@ textAreaElementConfig_setValue =
369 setter t e = t { _textAreaElementConfig_setValue = Just e }
370 setter t e = t { _textAreaElementConfig_setValue = Just e }
370 in lens getter setter
371 in lens getter setter
372−concat <$> mapM makeLenses
373+-- | This lens is technically illegal. The implementation of 'SelectElementConfig' uses a 'Maybe' under the hood for efficiency reasons. However, always interacting with 'SelectElementConfig' via lenses will always behave correctly, and if you pattern match on it, you should always treat 'Nothing' as 'never'.
373− [ ''SelectElementConfig
374+selectElementConfig_setValue :: Reflex t => Lens (SelectElementConfig er t m) (SelectElementConfig er t m) (Event t Text) (Event t Text)
374− ]
375+selectElementConfig_setValue =
376+ let getter t = case _selectElementConfig_setValue t of
379+ setter t e = t { _selectElementConfig_setValue = Just e }
380+ in lens getter setter
376class InitialAttributes a where
382class InitialAttributes a where
377 initialAttributes :: Lens' a (Map AttributeName Text)
383 initialAttributes :: Lens' a (Map AttributeName Text)