jsaddle-dom-0.10.0.0: src/JSDOM/Generated/HTMLOptionElement.hs
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from html (webref). Do not edit.
module JSDOM.Generated.HTMLOptionElement
(setDisabled, getDisabled, getForm, getFormUnsafe, getFormUnchecked, setLabel, getLabel, setDefaultSelected, getDefaultSelected, setSelected, getSelected, setValue, getValue, setText, getText, getIndex, HTMLOptionElement(..), gTypeHTMLOptionElement)
where
import Prelude ((.), (==), (>>=), (<$>), (++), Bool(..), Maybe(..), IO, Int, Word, Double, Float)
import qualified Prelude as P
import Control.Monad (void)
import Control.Lens.Operators ((^.))
import Language.Javascript.JSaddle (JSM, JSVal, JSString, toJSVal, valToBool, valToNumber, js, jss, jsf, jsg, new, function, asyncFunction, jsUndefined, jsNull)
import JSDOM.Types
import qualified JSDOM.Types as Types
import JSDOM.EventTargetClosures (EventName, unsafeEventName, unsafeEventNameAsync)
import JSDOM.Generated.Enums
-- | <https://developer.mozilla.org/docs/Web/API/HTMLOptionElement/disabled MDN HTMLOptionElement.disabled documentation>
setDisabled :: (MonadDOM m) => HTMLOptionElement -> Bool -> m ()
setDisabled self val = liftDOM (void (self ^. jss "disabled" (toJSVal val)))
-- | <https://developer.mozilla.org/docs/Web/API/HTMLOptionElement/disabled MDN HTMLOptionElement.disabled documentation>
getDisabled :: (MonadDOM m) => HTMLOptionElement -> m Bool
getDisabled self = liftDOM (((self ^. js "disabled") >>= valToBool))
-- | <https://developer.mozilla.org/docs/Web/API/HTMLOptionElement/form MDN HTMLOptionElement.form documentation>
getForm :: (MonadDOM m) => HTMLOptionElement -> m (Maybe HTMLFormElement)
getForm self = liftDOM (((self ^. js "form") >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/HTMLOptionElement/form MDN HTMLOptionElement.form documentation>
getFormUnsafe :: (MonadDOM m, HasCallStack) => HTMLOptionElement -> m HTMLFormElement
getFormUnsafe self = liftDOM ((((self ^. js "form") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://developer.mozilla.org/docs/Web/API/HTMLOptionElement/form MDN HTMLOptionElement.form documentation>
getFormUnchecked :: (MonadDOM m) => HTMLOptionElement -> m HTMLFormElement
getFormUnchecked self = liftDOM (((self ^. js "form") >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/HTMLOptionElement/label MDN HTMLOptionElement.label documentation>
setLabel :: (MonadDOM m, ToJSString val) => HTMLOptionElement -> val -> m ()
setLabel self val = liftDOM (void (self ^. jss "label" (toJSVal val)))
-- | <https://developer.mozilla.org/docs/Web/API/HTMLOptionElement/label MDN HTMLOptionElement.label documentation>
getLabel :: (MonadDOM m, FromJSString result) => HTMLOptionElement -> m result
getLabel self = liftDOM (((self ^. js "label") >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/HTMLOptionElement/defaultSelected MDN HTMLOptionElement.defaultSelected documentation>
setDefaultSelected :: (MonadDOM m) => HTMLOptionElement -> Bool -> m ()
setDefaultSelected self val = liftDOM (void (self ^. jss "defaultSelected" (toJSVal val)))
-- | <https://developer.mozilla.org/docs/Web/API/HTMLOptionElement/defaultSelected MDN HTMLOptionElement.defaultSelected documentation>
getDefaultSelected :: (MonadDOM m) => HTMLOptionElement -> m Bool
getDefaultSelected self = liftDOM (((self ^. js "defaultSelected") >>= valToBool))
-- | <https://developer.mozilla.org/docs/Web/API/HTMLOptionElement/selected MDN HTMLOptionElement.selected documentation>
setSelected :: (MonadDOM m) => HTMLOptionElement -> Bool -> m ()
setSelected self val = liftDOM (void (self ^. jss "selected" (toJSVal val)))
-- | <https://developer.mozilla.org/docs/Web/API/HTMLOptionElement/selected MDN HTMLOptionElement.selected documentation>
getSelected :: (MonadDOM m) => HTMLOptionElement -> m Bool
getSelected self = liftDOM (((self ^. js "selected") >>= valToBool))
-- | <https://developer.mozilla.org/docs/Web/API/HTMLOptionElement/value MDN HTMLOptionElement.value documentation>
setValue :: (MonadDOM m, ToJSString val) => HTMLOptionElement -> val -> m ()
setValue self val = liftDOM (void (self ^. jss "value" (toJSVal val)))
-- | <https://developer.mozilla.org/docs/Web/API/HTMLOptionElement/value MDN HTMLOptionElement.value documentation>
getValue :: (MonadDOM m, FromJSString result) => HTMLOptionElement -> m result
getValue self = liftDOM (((self ^. js "value") >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/HTMLOptionElement/text MDN HTMLOptionElement.text documentation>
setText :: (MonadDOM m, ToJSString val) => HTMLOptionElement -> val -> m ()
setText self val = liftDOM (void (self ^. jss "text" (toJSVal val)))
-- | <https://developer.mozilla.org/docs/Web/API/HTMLOptionElement/text MDN HTMLOptionElement.text documentation>
getText :: (MonadDOM m, FromJSString result) => HTMLOptionElement -> m result
getText self = liftDOM (((self ^. js "text") >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/HTMLOptionElement/index MDN HTMLOptionElement.index documentation>
getIndex :: (MonadDOM m) => HTMLOptionElement -> m Int
getIndex self = liftDOM ((P.round <$> ((self ^. js "index") >>= valToNumber)))