packages feed

jsaddle-dom-0.10.0.0: src/JSDOM/Generated/URLPatternComponentResult.hs

{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from urlpattern (webref). Do not edit.
module JSDOM.Generated.URLPatternComponentResult
       (newURLPatternComponentResult, setInput, getInput, getInputUnsafe, getInputUnchecked, setGroups, getGroups, getGroupsUnsafe, getGroupsUnchecked, URLPatternComponentResult(..), gTypeURLPatternComponentResult)
       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://urlpattern.spec.whatwg.org/#dictdef-urlpatterncomponentresult URLPatternComponentResult specification>
newURLPatternComponentResult :: (MonadDOM m) => m URLPatternComponentResult
newURLPatternComponentResult = liftDOM ((((new (jsg "Object") () >>= \o -> P.return o)) >>= fromJSValUnchecked))

-- | <https://urlpattern.spec.whatwg.org/#dom-urlpatterncomponentresult-input URLPatternComponentResult.input specification>
setInput :: (MonadDOM m, ToJSString val) => URLPatternComponentResult -> val -> m ()
setInput self val = liftDOM (void (self ^. jss "input" (toJSVal val)))

-- | <https://urlpattern.spec.whatwg.org/#dom-urlpatterncomponentresult-input URLPatternComponentResult.input specification>
getInput :: (MonadDOM m, FromJSString result) => URLPatternComponentResult -> m (Maybe result)
getInput self = liftDOM (((self ^. js "input") >>= fromMaybeJSString))

-- | <https://urlpattern.spec.whatwg.org/#dom-urlpatterncomponentresult-input URLPatternComponentResult.input specification>
getInputUnsafe :: (MonadDOM m, HasCallStack, FromJSString result) => URLPatternComponentResult -> m result
getInputUnsafe self = liftDOM ((((self ^. js "input") >>= fromMaybeJSString) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://urlpattern.spec.whatwg.org/#dom-urlpatterncomponentresult-input URLPatternComponentResult.input specification>
getInputUnchecked :: (MonadDOM m, FromJSString result) => URLPatternComponentResult -> m result
getInputUnchecked self = liftDOM (((self ^. js "input") >>= fromJSValUnchecked))

-- | <https://urlpattern.spec.whatwg.org/#dom-urlpatterncomponentresult-groups URLPatternComponentResult.groups specification>
setGroups :: (MonadDOM m) => URLPatternComponentResult -> (Record JSString JSVal) -> m ()
setGroups self val = liftDOM (void (self ^. jss "groups" (toJSVal val)))

-- | <https://urlpattern.spec.whatwg.org/#dom-urlpatterncomponentresult-groups URLPatternComponentResult.groups specification>
getGroups :: (MonadDOM m) => URLPatternComponentResult -> m (Maybe (Record JSString JSVal))
getGroups self = liftDOM (((self ^. js "groups") >>= fromJSValUnchecked))

-- | <https://urlpattern.spec.whatwg.org/#dom-urlpatterncomponentresult-groups URLPatternComponentResult.groups specification>
getGroupsUnsafe :: (MonadDOM m, HasCallStack) => URLPatternComponentResult -> m (Record JSString JSVal)
getGroupsUnsafe self = liftDOM ((((self ^. js "groups") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://urlpattern.spec.whatwg.org/#dom-urlpatterncomponentresult-groups URLPatternComponentResult.groups specification>
getGroupsUnchecked :: (MonadDOM m) => URLPatternComponentResult -> m (Record JSString JSVal)
getGroupsUnchecked self = liftDOM (((self ^. js "groups") >>= fromJSValUnchecked))