ghcjs-dom-javascript-0.10.0.0: src/GHCJS/DOM/JSFFI/Generated/ClipboardItem.hs
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ForeignFunctionInterface, JavaScriptFFI #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from clipboard-apis (webref). Do not edit.
module GHCJS.DOM.JSFFI.Generated.ClipboardItem
(js_newClipboardItem, js_getType, js_supports, js_getPresentationStyle, js_getTypes, newClipboardItem, getType, getType_, supports, supports_, getPresentationStyle, getTypes, ClipboardItem(..), gTypeClipboardItem)
where
import Prelude ((.), (==), (>>=), (<$>), (++), Bool(..), Maybe(..), IO, Int, Word, Double, Float)
import qualified Prelude as P
import Control.Monad (void)
import GHCJS.Types (JSVal, JSString)
import GHCJS.Foreign (jsUndefined, jsNull)
import GHCJS.DOM.Types
import qualified GHCJS.DOM.Types as Types
import GHCJS.DOM.EventTargetClosures (EventName, unsafeEventName, unsafeEventNameAsync)
import GHCJS.DOM.JSFFI.Generated.Enums
foreign import javascript safe "(($1, $2) => { return new globalThis[\"ClipboardItem\"]($1, $2); })"
js_newClipboardItem :: JSVal -> JSVal -> IO ClipboardItem
-- | <https://developer.mozilla.org/docs/Web/API/ClipboardItem/ClipboardItem MDN ClipboardItem. documentation>
newClipboardItem :: (MonadDOM m) => (Record JSString JSVal) -> Maybe ClipboardItemOptions -> m ClipboardItem
newClipboardItem items options = liftDOM (((toJSVal items) >>= \a1' -> (P.maybe (P.return jsUndefined) toJSVal options) >>= \a2' -> js_newClipboardItem a1' a2'))
foreign import javascript interruptible "(($1, $2, $c) => { return $1[\"getType\"]($2).then(function(s) { $c(null, s);}, function(e) { $c(e, null);}); })"
js_getType :: ClipboardItem -> JSString -> IO (JSVal, Blob)
-- | <https://developer.mozilla.org/docs/Web/API/ClipboardItem/getType MDN ClipboardItem.getType documentation>
getType :: (MonadDOM m, ToJSString type') => ClipboardItem -> type' -> m Blob
getType self type' = liftDOM (((js_getType (self) (toJSString type')) >>= checkPromiseResult))
-- | <https://developer.mozilla.org/docs/Web/API/ClipboardItem/getType MDN ClipboardItem.getType documentation>
getType_ :: (MonadDOM m, ToJSString type') => ClipboardItem -> type' -> m ()
getType_ self type' = liftDOM (void (((js_getType (self) (toJSString type')) >>= checkPromiseResult)))
foreign import javascript safe "(($1) => { return globalThis[\"ClipboardItem\"][\"supports\"]($1); })"
js_supports :: JSString -> IO Bool
-- | <https://developer.mozilla.org/docs/Web/API/ClipboardItem/supports_static MDN ClipboardItem.supports documentation>
supports :: (MonadDOM m, ToJSString type') => type' -> m Bool
supports type' = liftDOM ((js_supports (toJSString type')))
-- | <https://developer.mozilla.org/docs/Web/API/ClipboardItem/supports_static MDN ClipboardItem.supports documentation>
supports_ :: (MonadDOM m, ToJSString type') => type' -> m ()
supports_ type' = liftDOM (void ((js_supports (toJSString type'))))
foreign import javascript unsafe "(($1) => { return $1[\"presentationStyle\"]; })"
js_getPresentationStyle :: ClipboardItem -> IO JSVal
-- | <https://developer.mozilla.org/docs/Web/API/ClipboardItem/presentationStyle MDN ClipboardItem.presentationStyle documentation>
getPresentationStyle :: (MonadDOM m) => ClipboardItem -> m PresentationStyle
getPresentationStyle self = liftDOM (((js_getPresentationStyle (self)) >>= fromJSValUnchecked))
foreign import javascript unsafe "(($1) => { return $1[\"types\"]; })"
js_getTypes :: ClipboardItem -> IO JSVal
-- | <https://developer.mozilla.org/docs/Web/API/ClipboardItem/types MDN ClipboardItem.types documentation>
getTypes :: (MonadDOM m, FromJSString result) => ClipboardItem -> m [result]
getTypes self = liftDOM (((js_getTypes (self)) >>= fromJSValUnchecked))