jsaddle-dom-0.10.0.0: src/JSDOM/Generated/HighlightHitResult.hs
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from css-highlight-api-1 (webref). Do not edit.
module JSDOM.Generated.HighlightHitResult
(newHighlightHitResult, setHighlight, getHighlight, getHighlightUnsafe, getHighlightUnchecked, setRanges, getRanges, getRangesUnsafe, getRangesUnchecked, HighlightHitResult(..), gTypeHighlightHitResult)
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://drafts.csswg.org/css-highlight-api-1/#dictdef-highlighthitresult HighlightHitResult specification>
newHighlightHitResult :: (MonadDOM m) => m HighlightHitResult
newHighlightHitResult = liftDOM ((((new (jsg "Object") () >>= \o -> P.return o)) >>= fromJSValUnchecked))
-- | <https://drafts.csswg.org/css-highlight-api-1/#dom-highlighthitresult-highlight HighlightHitResult.highlight specification>
setHighlight :: (MonadDOM m) => HighlightHitResult -> Highlight -> m ()
setHighlight self val = liftDOM (void (self ^. jss "highlight" (toJSVal val)))
-- | <https://drafts.csswg.org/css-highlight-api-1/#dom-highlighthitresult-highlight HighlightHitResult.highlight specification>
getHighlight :: (MonadDOM m) => HighlightHitResult -> m (Maybe Highlight)
getHighlight self = liftDOM (((self ^. js "highlight") >>= fromJSValUnchecked))
-- | <https://drafts.csswg.org/css-highlight-api-1/#dom-highlighthitresult-highlight HighlightHitResult.highlight specification>
getHighlightUnsafe :: (MonadDOM m, HasCallStack) => HighlightHitResult -> m Highlight
getHighlightUnsafe self = liftDOM ((((self ^. js "highlight") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://drafts.csswg.org/css-highlight-api-1/#dom-highlighthitresult-highlight HighlightHitResult.highlight specification>
getHighlightUnchecked :: (MonadDOM m) => HighlightHitResult -> m Highlight
getHighlightUnchecked self = liftDOM (((self ^. js "highlight") >>= fromJSValUnchecked))
-- | <https://drafts.csswg.org/css-highlight-api-1/#dom-highlighthitresult-ranges HighlightHitResult.ranges specification>
setRanges :: (MonadDOM m, IsAbstractRange val) => HighlightHitResult -> [val] -> m ()
setRanges self val = liftDOM (void (self ^. jss "ranges" (toJSVal val)))
-- | <https://drafts.csswg.org/css-highlight-api-1/#dom-highlighthitresult-ranges HighlightHitResult.ranges specification>
getRanges :: (MonadDOM m) => HighlightHitResult -> m (Maybe [AbstractRange])
getRanges self = liftDOM (((self ^. js "ranges") >>= fromJSValUnchecked))
-- | <https://drafts.csswg.org/css-highlight-api-1/#dom-highlighthitresult-ranges HighlightHitResult.ranges specification>
getRangesUnsafe :: (MonadDOM m, HasCallStack) => HighlightHitResult -> m [AbstractRange]
getRangesUnsafe self = liftDOM ((((self ^. js "ranges") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://drafts.csswg.org/css-highlight-api-1/#dom-highlighthitresult-ranges HighlightHitResult.ranges specification>
getRangesUnchecked :: (MonadDOM m) => HighlightHitResult -> m [AbstractRange]
getRangesUnchecked self = liftDOM (((self ^. js "ranges") >>= fromJSValUnchecked))