jsaddle-dom-0.10.0.0: src/JSDOM/Generated/ClipboardEventInit.hs
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from clipboard-apis (webref). Do not edit.
module JSDOM.Generated.ClipboardEventInit
(newClipboardEventInit, setClipboardData, getClipboardData, getClipboardDataUnsafe, getClipboardDataUnchecked, ClipboardEventInit(..), gTypeClipboardEventInit)
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://w3c.github.io/clipboard-apis/#dictdef-clipboardeventinit ClipboardEventInit specification>
newClipboardEventInit :: (MonadDOM m) => m ClipboardEventInit
newClipboardEventInit = liftDOM ((((new (jsg "Object") () >>= \o -> P.return o)) >>= fromJSValUnchecked))
-- | <https://w3c.github.io/clipboard-apis/#dom-clipboardeventinit-clipboarddata ClipboardEventInit.clipboardData specification>
setClipboardData :: (MonadDOM m) => ClipboardEventInit -> Maybe DataTransfer -> m ()
setClipboardData self val = liftDOM (void (self ^. jss "clipboardData" (toJSVal val)))
-- | <https://w3c.github.io/clipboard-apis/#dom-clipboardeventinit-clipboarddata ClipboardEventInit.clipboardData specification>
getClipboardData :: (MonadDOM m) => ClipboardEventInit -> m (Maybe DataTransfer)
getClipboardData self = liftDOM (((self ^. js "clipboardData") >>= fromJSValUnchecked))
-- | <https://w3c.github.io/clipboard-apis/#dom-clipboardeventinit-clipboarddata ClipboardEventInit.clipboardData specification>
getClipboardDataUnsafe :: (MonadDOM m, HasCallStack) => ClipboardEventInit -> m DataTransfer
getClipboardDataUnsafe self = liftDOM ((((self ^. js "clipboardData") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://w3c.github.io/clipboard-apis/#dom-clipboardeventinit-clipboarddata ClipboardEventInit.clipboardData specification>
getClipboardDataUnchecked :: (MonadDOM m) => ClipboardEventInit -> m DataTransfer
getClipboardDataUnchecked self = liftDOM (((self ^. js "clipboardData") >>= fromJSValUnchecked))