{-# LANGUAGE PatternSynonyms #-} module Language.Javascript.JSaddle.DOM.Generated.Navigator (getGamepads, webkitGetUserMedia, registerProtocolHandler, isProtocolHandlerRegistered, unregisterProtocolHandler, vibratePattern, vibrate, javaEnabled, getStorageUpdates, getWebkitBattery, getGeolocation, getWebkitTemporaryStorage, getWebkitPersistentStorage, getAppCodeName, getAppName, getAppVersion, getLanguage, getUserAgent, getPlatform, getPlugins, getMimeTypes, getProduct, getProductSub, getVendor, getVendorSub, getCookieEnabled, getOnLine, getHardwareConcurrency, Navigator, castToNavigator, gTypeNavigator) where import Prelude ((.), (==), (>>=), return, IO, Int, Float, Double, Bool(..), Maybe, maybe, fromIntegral, round, realToFrac, fmap, Show, Read, Eq, Ord, Maybe(..)) import Data.Typeable (Typeable) import Language.Javascript.JSaddle (JSM(..), JSVal(..), JSString, strictEqual, toJSVal, valToStr, valToNumber, valToBool, js, jss, jsf, jsg, function, new, array) import Data.Int (Int64) import Data.Word (Word, Word64) import Language.Javascript.JSaddle.DOM.Types import Control.Applicative ((<$>)) import Control.Monad (void) import Control.Lens.Operators ((^.)) import Language.Javascript.JSaddle.DOM.EventTargetClosures (EventName, unsafeEventName) import Language.Javascript.JSaddle.DOM.Enums -- | getGamepads :: (MonadDOM m) => Navigator -> m [Maybe Gamepad] getGamepads self = liftDOM ((self ^. js "getGamepads") >>= fromJSArray) -- | webkitGetUserMedia :: (MonadDOM m, IsDictionary options) => Navigator -> Maybe options -> Maybe NavigatorUserMediaSuccessCallback -> Maybe NavigatorUserMediaErrorCallback -> m () webkitGetUserMedia self options successCallback errorCallback = liftDOM (void (self ^. jsf "webkitGetUserMedia" [toJSVal options, toJSVal successCallback, toJSVal errorCallback])) -- | registerProtocolHandler :: (MonadDOM m, ToJSString scheme, ToJSString url, ToJSString title) => Navigator -> scheme -> url -> title -> m () registerProtocolHandler self scheme url title = liftDOM (void (self ^. jsf "registerProtocolHandler" [toJSVal scheme, toJSVal url, toJSVal title])) -- | isProtocolHandlerRegistered :: (MonadDOM m, ToJSString scheme, ToJSString url, FromJSString result) => Navigator -> scheme -> url -> m result isProtocolHandlerRegistered self scheme url = liftDOM ((self ^. jsf "isProtocolHandlerRegistered" [toJSVal scheme, toJSVal url]) >>= fromJSValUnchecked) -- | unregisterProtocolHandler :: (MonadDOM m, ToJSString scheme, ToJSString url) => Navigator -> scheme -> url -> m () unregisterProtocolHandler self scheme url = liftDOM (void (self ^. jsf "unregisterProtocolHandler" [toJSVal scheme, toJSVal url])) -- | vibratePattern :: (MonadDOM m) => Navigator -> [Word] -> m Bool vibratePattern self pattern' = liftDOM ((self ^. jsf "vibrate" [toJSVal (array pattern')]) >>= valToBool) -- | vibrate :: (MonadDOM m) => Navigator -> Word -> m Bool vibrate self time = liftDOM ((self ^. jsf "vibrate" [toJSVal time]) >>= valToBool) -- | javaEnabled :: (MonadDOM m) => Navigator -> m Bool javaEnabled self = liftDOM ((self ^. js "javaEnabled") >>= valToBool) -- | getStorageUpdates :: (MonadDOM m) => Navigator -> m () getStorageUpdates self = liftDOM (void (self ^. js "getStorageUpdates")) -- | getWebkitBattery :: (MonadDOM m) => Navigator -> m (Maybe BatteryManager) getWebkitBattery self = liftDOM ((self ^. js "webkitBattery") >>= fromJSVal) -- | getGeolocation :: (MonadDOM m) => Navigator -> m (Maybe Geolocation) getGeolocation self = liftDOM ((self ^. js "geolocation") >>= fromJSVal) -- | getWebkitTemporaryStorage :: (MonadDOM m) => Navigator -> m (Maybe StorageQuota) getWebkitTemporaryStorage self = liftDOM ((self ^. js "webkitTemporaryStorage") >>= fromJSVal) -- | getWebkitPersistentStorage :: (MonadDOM m) => Navigator -> m (Maybe StorageQuota) getWebkitPersistentStorage self = liftDOM ((self ^. js "webkitPersistentStorage") >>= fromJSVal) -- | getAppCodeName :: (MonadDOM m, FromJSString result) => Navigator -> m result getAppCodeName self = liftDOM ((self ^. js "appCodeName") >>= fromJSValUnchecked) -- | getAppName :: (MonadDOM m, FromJSString result) => Navigator -> m result getAppName self = liftDOM ((self ^. js "appName") >>= fromJSValUnchecked) -- | getAppVersion :: (MonadDOM m, FromJSString result) => Navigator -> m result getAppVersion self = liftDOM ((self ^. js "appVersion") >>= fromJSValUnchecked) -- | getLanguage :: (MonadDOM m, FromJSString result) => Navigator -> m result getLanguage self = liftDOM ((self ^. js "language") >>= fromJSValUnchecked) -- | getUserAgent :: (MonadDOM m, FromJSString result) => Navigator -> m result getUserAgent self = liftDOM ((self ^. js "userAgent") >>= fromJSValUnchecked) -- | getPlatform :: (MonadDOM m, FromJSString result) => Navigator -> m result getPlatform self = liftDOM ((self ^. js "platform") >>= fromJSValUnchecked) -- | getPlugins :: (MonadDOM m) => Navigator -> m (Maybe PluginArray) getPlugins self = liftDOM ((self ^. js "plugins") >>= fromJSVal) -- | getMimeTypes :: (MonadDOM m) => Navigator -> m (Maybe MimeTypeArray) getMimeTypes self = liftDOM ((self ^. js "mimeTypes") >>= fromJSVal) -- | getProduct :: (MonadDOM m, FromJSString result) => Navigator -> m result getProduct self = liftDOM ((self ^. js "product") >>= fromJSValUnchecked) -- | getProductSub :: (MonadDOM m, FromJSString result) => Navigator -> m result getProductSub self = liftDOM ((self ^. js "productSub") >>= fromJSValUnchecked) -- | getVendor :: (MonadDOM m, FromJSString result) => Navigator -> m result getVendor self = liftDOM ((self ^. js "vendor") >>= fromJSValUnchecked) -- | getVendorSub :: (MonadDOM m, FromJSString result) => Navigator -> m result getVendorSub self = liftDOM ((self ^. js "vendorSub") >>= fromJSValUnchecked) -- | getCookieEnabled :: (MonadDOM m) => Navigator -> m Bool getCookieEnabled self = liftDOM ((self ^. js "cookieEnabled") >>= valToBool) -- | getOnLine :: (MonadDOM m) => Navigator -> m Bool getOnLine self = liftDOM ((self ^. js "onLine") >>= valToBool) -- | getHardwareConcurrency :: (MonadDOM m) => Navigator -> m Int getHardwareConcurrency self = liftDOM (round <$> ((self ^. js "hardwareConcurrency") >>= valToNumber))