{-# LANGUAGE OverloadedStrings, RecordWildCards, TupleSections #-}
{-# LANGUAGE ScopedTypeVariables #-}
{-# LANGUAGE FlexibleContexts #-}
{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE FlexibleInstances #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE TypeFamilies #-}


{- |
= DOM

This domain exposes DOM read/write operations. Each DOM Node is represented with its mirror object
that has an `id`. This `id` can be used to get additional information on the Node, resolve it into
the JavaScript object wrapper, etc. It is important that client receives DOM events only for the
nodes that are known to the client. Backend keeps track of the nodes that were sent to the client
and never sends the same node twice. It is client's responsibility to collect information about
the nodes that were sent to the client.<p>Note that `iframe` owner elements will return
corresponding document elements as their child nodes.</p>
= Emulation

This domain emulates different environments for the page.
= Network

Network domain allows tracking network activities of the page. It exposes information about http,
file, data and other requests and responses, their headers, bodies, timing, etc.
= Page

Actions and events related to the inspected page belong to the page domain.
= Security

Security
-}


module CDP.Domains.DOMPageNetworkEmulationSecurity (module CDP.Domains.DOMPageNetworkEmulationSecurity) where

import           Control.Applicative  ((<$>))
import           Control.Monad
import           Control.Monad.Loops
import           Control.Monad.Trans  (liftIO)
import qualified Data.Map             as M
import           Data.Maybe          
import Data.Functor.Identity
import Data.String
import qualified Data.Text as T
import qualified Data.List as List
import qualified Data.Text.IO         as TI
import qualified Data.Vector          as V
import Data.Aeson.Types (Parser(..))
import           Data.Aeson           (FromJSON (..), ToJSON (..), (.:), (.:?), (.=), (.!=), (.:!))
import qualified Data.Aeson           as A
import qualified Network.HTTP.Simple as Http
import qualified Network.URI          as Uri
import qualified Network.WebSockets as WS
import Control.Concurrent
import qualified Data.ByteString.Lazy as BS
import qualified Data.Map as Map
import Data.Proxy
import System.Random
import GHC.Generics
import Data.Char
import Data.Default

import CDP.Internal.Utils


import CDP.Domains.Debugger as Debugger
import CDP.Domains.IO as IO
import CDP.Domains.Runtime as Runtime


-- | Type 'DOM.NodeId'.
--   Unique DOM node identifier.
type DOMNodeId = Int

-- | Type 'DOM.BackendNodeId'.
--   Unique DOM node identifier used to reference a node that may not have been pushed to the
--   front-end.
type DOMBackendNodeId = Int

-- | Type 'DOM.BackendNode'.
--   Backend node with a friendly name.
data DOMBackendNode = DOMBackendNode
  {
    -- | `Node`'s nodeType.
    DOMBackendNode -> Int
dOMBackendNodeNodeType :: Int,
    -- | `Node`'s nodeName.
    DOMBackendNode -> Text
dOMBackendNodeNodeName :: T.Text,
    DOMBackendNode -> Int
dOMBackendNodeBackendNodeId :: DOMBackendNodeId
  }
  deriving (DOMBackendNode -> DOMBackendNode -> Bool
(DOMBackendNode -> DOMBackendNode -> Bool)
-> (DOMBackendNode -> DOMBackendNode -> Bool) -> Eq DOMBackendNode
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMBackendNode -> DOMBackendNode -> Bool
$c/= :: DOMBackendNode -> DOMBackendNode -> Bool
== :: DOMBackendNode -> DOMBackendNode -> Bool
$c== :: DOMBackendNode -> DOMBackendNode -> Bool
Eq, Int -> DOMBackendNode -> ShowS
[DOMBackendNode] -> ShowS
DOMBackendNode -> String
(Int -> DOMBackendNode -> ShowS)
-> (DOMBackendNode -> String)
-> ([DOMBackendNode] -> ShowS)
-> Show DOMBackendNode
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMBackendNode] -> ShowS
$cshowList :: [DOMBackendNode] -> ShowS
show :: DOMBackendNode -> String
$cshow :: DOMBackendNode -> String
showsPrec :: Int -> DOMBackendNode -> ShowS
$cshowsPrec :: Int -> DOMBackendNode -> ShowS
Show)
instance FromJSON DOMBackendNode where
  parseJSON :: Value -> Parser DOMBackendNode
parseJSON = String
-> (Object -> Parser DOMBackendNode)
-> Value
-> Parser DOMBackendNode
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMBackendNode" ((Object -> Parser DOMBackendNode)
 -> Value -> Parser DOMBackendNode)
-> (Object -> Parser DOMBackendNode)
-> Value
-> Parser DOMBackendNode
forall a b. (a -> b) -> a -> b
$ \Object
o -> Int -> Text -> Int -> DOMBackendNode
DOMBackendNode
    (Int -> Text -> Int -> DOMBackendNode)
-> Parser Int -> Parser (Text -> Int -> DOMBackendNode)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"nodeType"
    Parser (Text -> Int -> DOMBackendNode)
-> Parser Text -> Parser (Int -> DOMBackendNode)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"nodeName"
    Parser (Int -> DOMBackendNode)
-> Parser Int -> Parser DOMBackendNode
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"backendNodeId"
instance ToJSON DOMBackendNode where
  toJSON :: DOMBackendNode -> Value
toJSON DOMBackendNode
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"nodeType" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (DOMBackendNode -> Int
dOMBackendNodeNodeType DOMBackendNode
p),
    (Text
"nodeName" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (DOMBackendNode -> Text
dOMBackendNodeNodeName DOMBackendNode
p),
    (Text
"backendNodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (DOMBackendNode -> Int
dOMBackendNodeBackendNodeId DOMBackendNode
p)
    ]

-- | Type 'DOM.PseudoType'.
--   Pseudo element type.
data DOMPseudoType = DOMPseudoTypeFirstLine | DOMPseudoTypeFirstLetter | DOMPseudoTypeBefore | DOMPseudoTypeAfter | DOMPseudoTypeMarker | DOMPseudoTypeBackdrop | DOMPseudoTypeSelection | DOMPseudoTypeTargetText | DOMPseudoTypeSpellingError | DOMPseudoTypeGrammarError | DOMPseudoTypeHighlight | DOMPseudoTypeFirstLineInherited | DOMPseudoTypeScrollbar | DOMPseudoTypeScrollbarThumb | DOMPseudoTypeScrollbarButton | DOMPseudoTypeScrollbarTrack | DOMPseudoTypeScrollbarTrackPiece | DOMPseudoTypeScrollbarCorner | DOMPseudoTypeResizer | DOMPseudoTypeInputListButton | DOMPseudoTypePageTransition | DOMPseudoTypePageTransitionContainer | DOMPseudoTypePageTransitionImageWrapper | DOMPseudoTypePageTransitionOutgoingImage | DOMPseudoTypePageTransitionIncomingImage
  deriving (Eq DOMPseudoType
Eq DOMPseudoType
-> (DOMPseudoType -> DOMPseudoType -> Ordering)
-> (DOMPseudoType -> DOMPseudoType -> Bool)
-> (DOMPseudoType -> DOMPseudoType -> Bool)
-> (DOMPseudoType -> DOMPseudoType -> Bool)
-> (DOMPseudoType -> DOMPseudoType -> Bool)
-> (DOMPseudoType -> DOMPseudoType -> DOMPseudoType)
-> (DOMPseudoType -> DOMPseudoType -> DOMPseudoType)
-> Ord DOMPseudoType
DOMPseudoType -> DOMPseudoType -> Bool
DOMPseudoType -> DOMPseudoType -> Ordering
DOMPseudoType -> DOMPseudoType -> DOMPseudoType
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: DOMPseudoType -> DOMPseudoType -> DOMPseudoType
$cmin :: DOMPseudoType -> DOMPseudoType -> DOMPseudoType
max :: DOMPseudoType -> DOMPseudoType -> DOMPseudoType
$cmax :: DOMPseudoType -> DOMPseudoType -> DOMPseudoType
>= :: DOMPseudoType -> DOMPseudoType -> Bool
$c>= :: DOMPseudoType -> DOMPseudoType -> Bool
> :: DOMPseudoType -> DOMPseudoType -> Bool
$c> :: DOMPseudoType -> DOMPseudoType -> Bool
<= :: DOMPseudoType -> DOMPseudoType -> Bool
$c<= :: DOMPseudoType -> DOMPseudoType -> Bool
< :: DOMPseudoType -> DOMPseudoType -> Bool
$c< :: DOMPseudoType -> DOMPseudoType -> Bool
compare :: DOMPseudoType -> DOMPseudoType -> Ordering
$ccompare :: DOMPseudoType -> DOMPseudoType -> Ordering
$cp1Ord :: Eq DOMPseudoType
Ord, DOMPseudoType -> DOMPseudoType -> Bool
(DOMPseudoType -> DOMPseudoType -> Bool)
-> (DOMPseudoType -> DOMPseudoType -> Bool) -> Eq DOMPseudoType
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMPseudoType -> DOMPseudoType -> Bool
$c/= :: DOMPseudoType -> DOMPseudoType -> Bool
== :: DOMPseudoType -> DOMPseudoType -> Bool
$c== :: DOMPseudoType -> DOMPseudoType -> Bool
Eq, Int -> DOMPseudoType -> ShowS
[DOMPseudoType] -> ShowS
DOMPseudoType -> String
(Int -> DOMPseudoType -> ShowS)
-> (DOMPseudoType -> String)
-> ([DOMPseudoType] -> ShowS)
-> Show DOMPseudoType
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMPseudoType] -> ShowS
$cshowList :: [DOMPseudoType] -> ShowS
show :: DOMPseudoType -> String
$cshow :: DOMPseudoType -> String
showsPrec :: Int -> DOMPseudoType -> ShowS
$cshowsPrec :: Int -> DOMPseudoType -> ShowS
Show, ReadPrec [DOMPseudoType]
ReadPrec DOMPseudoType
Int -> ReadS DOMPseudoType
ReadS [DOMPseudoType]
(Int -> ReadS DOMPseudoType)
-> ReadS [DOMPseudoType]
-> ReadPrec DOMPseudoType
-> ReadPrec [DOMPseudoType]
-> Read DOMPseudoType
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DOMPseudoType]
$creadListPrec :: ReadPrec [DOMPseudoType]
readPrec :: ReadPrec DOMPseudoType
$creadPrec :: ReadPrec DOMPseudoType
readList :: ReadS [DOMPseudoType]
$creadList :: ReadS [DOMPseudoType]
readsPrec :: Int -> ReadS DOMPseudoType
$creadsPrec :: Int -> ReadS DOMPseudoType
Read)
instance FromJSON DOMPseudoType where
  parseJSON :: Value -> Parser DOMPseudoType
parseJSON = String
-> (Text -> Parser DOMPseudoType) -> Value -> Parser DOMPseudoType
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"DOMPseudoType" ((Text -> Parser DOMPseudoType) -> Value -> Parser DOMPseudoType)
-> (Text -> Parser DOMPseudoType) -> Value -> Parser DOMPseudoType
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"first-line" -> DOMPseudoType -> Parser DOMPseudoType
forall (f :: * -> *) a. Applicative f => a -> f a
pure DOMPseudoType
DOMPseudoTypeFirstLine
    Text
"first-letter" -> DOMPseudoType -> Parser DOMPseudoType
forall (f :: * -> *) a. Applicative f => a -> f a
pure DOMPseudoType
DOMPseudoTypeFirstLetter
    Text
"before" -> DOMPseudoType -> Parser DOMPseudoType
forall (f :: * -> *) a. Applicative f => a -> f a
pure DOMPseudoType
DOMPseudoTypeBefore
    Text
"after" -> DOMPseudoType -> Parser DOMPseudoType
forall (f :: * -> *) a. Applicative f => a -> f a
pure DOMPseudoType
DOMPseudoTypeAfter
    Text
"marker" -> DOMPseudoType -> Parser DOMPseudoType
forall (f :: * -> *) a. Applicative f => a -> f a
pure DOMPseudoType
DOMPseudoTypeMarker
    Text
"backdrop" -> DOMPseudoType -> Parser DOMPseudoType
forall (f :: * -> *) a. Applicative f => a -> f a
pure DOMPseudoType
DOMPseudoTypeBackdrop
    Text
"selection" -> DOMPseudoType -> Parser DOMPseudoType
forall (f :: * -> *) a. Applicative f => a -> f a
pure DOMPseudoType
DOMPseudoTypeSelection
    Text
"target-text" -> DOMPseudoType -> Parser DOMPseudoType
forall (f :: * -> *) a. Applicative f => a -> f a
pure DOMPseudoType
DOMPseudoTypeTargetText
    Text
"spelling-error" -> DOMPseudoType -> Parser DOMPseudoType
forall (f :: * -> *) a. Applicative f => a -> f a
pure DOMPseudoType
DOMPseudoTypeSpellingError
    Text
"grammar-error" -> DOMPseudoType -> Parser DOMPseudoType
forall (f :: * -> *) a. Applicative f => a -> f a
pure DOMPseudoType
DOMPseudoTypeGrammarError
    Text
"highlight" -> DOMPseudoType -> Parser DOMPseudoType
forall (f :: * -> *) a. Applicative f => a -> f a
pure DOMPseudoType
DOMPseudoTypeHighlight
    Text
"first-line-inherited" -> DOMPseudoType -> Parser DOMPseudoType
forall (f :: * -> *) a. Applicative f => a -> f a
pure DOMPseudoType
DOMPseudoTypeFirstLineInherited
    Text
"scrollbar" -> DOMPseudoType -> Parser DOMPseudoType
forall (f :: * -> *) a. Applicative f => a -> f a
pure DOMPseudoType
DOMPseudoTypeScrollbar
    Text
"scrollbar-thumb" -> DOMPseudoType -> Parser DOMPseudoType
forall (f :: * -> *) a. Applicative f => a -> f a
pure DOMPseudoType
DOMPseudoTypeScrollbarThumb
    Text
"scrollbar-button" -> DOMPseudoType -> Parser DOMPseudoType
forall (f :: * -> *) a. Applicative f => a -> f a
pure DOMPseudoType
DOMPseudoTypeScrollbarButton
    Text
"scrollbar-track" -> DOMPseudoType -> Parser DOMPseudoType
forall (f :: * -> *) a. Applicative f => a -> f a
pure DOMPseudoType
DOMPseudoTypeScrollbarTrack
    Text
"scrollbar-track-piece" -> DOMPseudoType -> Parser DOMPseudoType
forall (f :: * -> *) a. Applicative f => a -> f a
pure DOMPseudoType
DOMPseudoTypeScrollbarTrackPiece
    Text
"scrollbar-corner" -> DOMPseudoType -> Parser DOMPseudoType
forall (f :: * -> *) a. Applicative f => a -> f a
pure DOMPseudoType
DOMPseudoTypeScrollbarCorner
    Text
"resizer" -> DOMPseudoType -> Parser DOMPseudoType
forall (f :: * -> *) a. Applicative f => a -> f a
pure DOMPseudoType
DOMPseudoTypeResizer
    Text
"input-list-button" -> DOMPseudoType -> Parser DOMPseudoType
forall (f :: * -> *) a. Applicative f => a -> f a
pure DOMPseudoType
DOMPseudoTypeInputListButton
    Text
"page-transition" -> DOMPseudoType -> Parser DOMPseudoType
forall (f :: * -> *) a. Applicative f => a -> f a
pure DOMPseudoType
DOMPseudoTypePageTransition
    Text
"page-transition-container" -> DOMPseudoType -> Parser DOMPseudoType
forall (f :: * -> *) a. Applicative f => a -> f a
pure DOMPseudoType
DOMPseudoTypePageTransitionContainer
    Text
"page-transition-image-wrapper" -> DOMPseudoType -> Parser DOMPseudoType
forall (f :: * -> *) a. Applicative f => a -> f a
pure DOMPseudoType
DOMPseudoTypePageTransitionImageWrapper
    Text
"page-transition-outgoing-image" -> DOMPseudoType -> Parser DOMPseudoType
forall (f :: * -> *) a. Applicative f => a -> f a
pure DOMPseudoType
DOMPseudoTypePageTransitionOutgoingImage
    Text
"page-transition-incoming-image" -> DOMPseudoType -> Parser DOMPseudoType
forall (f :: * -> *) a. Applicative f => a -> f a
pure DOMPseudoType
DOMPseudoTypePageTransitionIncomingImage
    Text
"_" -> String -> Parser DOMPseudoType
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse DOMPseudoType"
instance ToJSON DOMPseudoType where
  toJSON :: DOMPseudoType -> Value
toJSON DOMPseudoType
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case DOMPseudoType
v of
    DOMPseudoType
DOMPseudoTypeFirstLine -> Text
"first-line"
    DOMPseudoType
DOMPseudoTypeFirstLetter -> Text
"first-letter"
    DOMPseudoType
DOMPseudoTypeBefore -> Text
"before"
    DOMPseudoType
DOMPseudoTypeAfter -> Text
"after"
    DOMPseudoType
DOMPseudoTypeMarker -> Text
"marker"
    DOMPseudoType
DOMPseudoTypeBackdrop -> Text
"backdrop"
    DOMPseudoType
DOMPseudoTypeSelection -> Text
"selection"
    DOMPseudoType
DOMPseudoTypeTargetText -> Text
"target-text"
    DOMPseudoType
DOMPseudoTypeSpellingError -> Text
"spelling-error"
    DOMPseudoType
DOMPseudoTypeGrammarError -> Text
"grammar-error"
    DOMPseudoType
DOMPseudoTypeHighlight -> Text
"highlight"
    DOMPseudoType
DOMPseudoTypeFirstLineInherited -> Text
"first-line-inherited"
    DOMPseudoType
DOMPseudoTypeScrollbar -> Text
"scrollbar"
    DOMPseudoType
DOMPseudoTypeScrollbarThumb -> Text
"scrollbar-thumb"
    DOMPseudoType
DOMPseudoTypeScrollbarButton -> Text
"scrollbar-button"
    DOMPseudoType
DOMPseudoTypeScrollbarTrack -> Text
"scrollbar-track"
    DOMPseudoType
DOMPseudoTypeScrollbarTrackPiece -> Text
"scrollbar-track-piece"
    DOMPseudoType
DOMPseudoTypeScrollbarCorner -> Text
"scrollbar-corner"
    DOMPseudoType
DOMPseudoTypeResizer -> Text
"resizer"
    DOMPseudoType
DOMPseudoTypeInputListButton -> Text
"input-list-button"
    DOMPseudoType
DOMPseudoTypePageTransition -> Text
"page-transition"
    DOMPseudoType
DOMPseudoTypePageTransitionContainer -> Text
"page-transition-container"
    DOMPseudoType
DOMPseudoTypePageTransitionImageWrapper -> Text
"page-transition-image-wrapper"
    DOMPseudoType
DOMPseudoTypePageTransitionOutgoingImage -> Text
"page-transition-outgoing-image"
    DOMPseudoType
DOMPseudoTypePageTransitionIncomingImage -> Text
"page-transition-incoming-image"

-- | Type 'DOM.ShadowRootType'.
--   Shadow root type.
data DOMShadowRootType = DOMShadowRootTypeUserAgent | DOMShadowRootTypeOpen | DOMShadowRootTypeClosed
  deriving (Eq DOMShadowRootType
Eq DOMShadowRootType
-> (DOMShadowRootType -> DOMShadowRootType -> Ordering)
-> (DOMShadowRootType -> DOMShadowRootType -> Bool)
-> (DOMShadowRootType -> DOMShadowRootType -> Bool)
-> (DOMShadowRootType -> DOMShadowRootType -> Bool)
-> (DOMShadowRootType -> DOMShadowRootType -> Bool)
-> (DOMShadowRootType -> DOMShadowRootType -> DOMShadowRootType)
-> (DOMShadowRootType -> DOMShadowRootType -> DOMShadowRootType)
-> Ord DOMShadowRootType
DOMShadowRootType -> DOMShadowRootType -> Bool
DOMShadowRootType -> DOMShadowRootType -> Ordering
DOMShadowRootType -> DOMShadowRootType -> DOMShadowRootType
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: DOMShadowRootType -> DOMShadowRootType -> DOMShadowRootType
$cmin :: DOMShadowRootType -> DOMShadowRootType -> DOMShadowRootType
max :: DOMShadowRootType -> DOMShadowRootType -> DOMShadowRootType
$cmax :: DOMShadowRootType -> DOMShadowRootType -> DOMShadowRootType
>= :: DOMShadowRootType -> DOMShadowRootType -> Bool
$c>= :: DOMShadowRootType -> DOMShadowRootType -> Bool
> :: DOMShadowRootType -> DOMShadowRootType -> Bool
$c> :: DOMShadowRootType -> DOMShadowRootType -> Bool
<= :: DOMShadowRootType -> DOMShadowRootType -> Bool
$c<= :: DOMShadowRootType -> DOMShadowRootType -> Bool
< :: DOMShadowRootType -> DOMShadowRootType -> Bool
$c< :: DOMShadowRootType -> DOMShadowRootType -> Bool
compare :: DOMShadowRootType -> DOMShadowRootType -> Ordering
$ccompare :: DOMShadowRootType -> DOMShadowRootType -> Ordering
$cp1Ord :: Eq DOMShadowRootType
Ord, DOMShadowRootType -> DOMShadowRootType -> Bool
(DOMShadowRootType -> DOMShadowRootType -> Bool)
-> (DOMShadowRootType -> DOMShadowRootType -> Bool)
-> Eq DOMShadowRootType
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMShadowRootType -> DOMShadowRootType -> Bool
$c/= :: DOMShadowRootType -> DOMShadowRootType -> Bool
== :: DOMShadowRootType -> DOMShadowRootType -> Bool
$c== :: DOMShadowRootType -> DOMShadowRootType -> Bool
Eq, Int -> DOMShadowRootType -> ShowS
[DOMShadowRootType] -> ShowS
DOMShadowRootType -> String
(Int -> DOMShadowRootType -> ShowS)
-> (DOMShadowRootType -> String)
-> ([DOMShadowRootType] -> ShowS)
-> Show DOMShadowRootType
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMShadowRootType] -> ShowS
$cshowList :: [DOMShadowRootType] -> ShowS
show :: DOMShadowRootType -> String
$cshow :: DOMShadowRootType -> String
showsPrec :: Int -> DOMShadowRootType -> ShowS
$cshowsPrec :: Int -> DOMShadowRootType -> ShowS
Show, ReadPrec [DOMShadowRootType]
ReadPrec DOMShadowRootType
Int -> ReadS DOMShadowRootType
ReadS [DOMShadowRootType]
(Int -> ReadS DOMShadowRootType)
-> ReadS [DOMShadowRootType]
-> ReadPrec DOMShadowRootType
-> ReadPrec [DOMShadowRootType]
-> Read DOMShadowRootType
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DOMShadowRootType]
$creadListPrec :: ReadPrec [DOMShadowRootType]
readPrec :: ReadPrec DOMShadowRootType
$creadPrec :: ReadPrec DOMShadowRootType
readList :: ReadS [DOMShadowRootType]
$creadList :: ReadS [DOMShadowRootType]
readsPrec :: Int -> ReadS DOMShadowRootType
$creadsPrec :: Int -> ReadS DOMShadowRootType
Read)
instance FromJSON DOMShadowRootType where
  parseJSON :: Value -> Parser DOMShadowRootType
parseJSON = String
-> (Text -> Parser DOMShadowRootType)
-> Value
-> Parser DOMShadowRootType
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"DOMShadowRootType" ((Text -> Parser DOMShadowRootType)
 -> Value -> Parser DOMShadowRootType)
-> (Text -> Parser DOMShadowRootType)
-> Value
-> Parser DOMShadowRootType
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"user-agent" -> DOMShadowRootType -> Parser DOMShadowRootType
forall (f :: * -> *) a. Applicative f => a -> f a
pure DOMShadowRootType
DOMShadowRootTypeUserAgent
    Text
"open" -> DOMShadowRootType -> Parser DOMShadowRootType
forall (f :: * -> *) a. Applicative f => a -> f a
pure DOMShadowRootType
DOMShadowRootTypeOpen
    Text
"closed" -> DOMShadowRootType -> Parser DOMShadowRootType
forall (f :: * -> *) a. Applicative f => a -> f a
pure DOMShadowRootType
DOMShadowRootTypeClosed
    Text
"_" -> String -> Parser DOMShadowRootType
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse DOMShadowRootType"
instance ToJSON DOMShadowRootType where
  toJSON :: DOMShadowRootType -> Value
toJSON DOMShadowRootType
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case DOMShadowRootType
v of
    DOMShadowRootType
DOMShadowRootTypeUserAgent -> Text
"user-agent"
    DOMShadowRootType
DOMShadowRootTypeOpen -> Text
"open"
    DOMShadowRootType
DOMShadowRootTypeClosed -> Text
"closed"

-- | Type 'DOM.CompatibilityMode'.
--   Document compatibility mode.
data DOMCompatibilityMode = DOMCompatibilityModeQuirksMode | DOMCompatibilityModeLimitedQuirksMode | DOMCompatibilityModeNoQuirksMode
  deriving (Eq DOMCompatibilityMode
Eq DOMCompatibilityMode
-> (DOMCompatibilityMode -> DOMCompatibilityMode -> Ordering)
-> (DOMCompatibilityMode -> DOMCompatibilityMode -> Bool)
-> (DOMCompatibilityMode -> DOMCompatibilityMode -> Bool)
-> (DOMCompatibilityMode -> DOMCompatibilityMode -> Bool)
-> (DOMCompatibilityMode -> DOMCompatibilityMode -> Bool)
-> (DOMCompatibilityMode
    -> DOMCompatibilityMode -> DOMCompatibilityMode)
-> (DOMCompatibilityMode
    -> DOMCompatibilityMode -> DOMCompatibilityMode)
-> Ord DOMCompatibilityMode
DOMCompatibilityMode -> DOMCompatibilityMode -> Bool
DOMCompatibilityMode -> DOMCompatibilityMode -> Ordering
DOMCompatibilityMode
-> DOMCompatibilityMode -> DOMCompatibilityMode
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: DOMCompatibilityMode
-> DOMCompatibilityMode -> DOMCompatibilityMode
$cmin :: DOMCompatibilityMode
-> DOMCompatibilityMode -> DOMCompatibilityMode
max :: DOMCompatibilityMode
-> DOMCompatibilityMode -> DOMCompatibilityMode
$cmax :: DOMCompatibilityMode
-> DOMCompatibilityMode -> DOMCompatibilityMode
>= :: DOMCompatibilityMode -> DOMCompatibilityMode -> Bool
$c>= :: DOMCompatibilityMode -> DOMCompatibilityMode -> Bool
> :: DOMCompatibilityMode -> DOMCompatibilityMode -> Bool
$c> :: DOMCompatibilityMode -> DOMCompatibilityMode -> Bool
<= :: DOMCompatibilityMode -> DOMCompatibilityMode -> Bool
$c<= :: DOMCompatibilityMode -> DOMCompatibilityMode -> Bool
< :: DOMCompatibilityMode -> DOMCompatibilityMode -> Bool
$c< :: DOMCompatibilityMode -> DOMCompatibilityMode -> Bool
compare :: DOMCompatibilityMode -> DOMCompatibilityMode -> Ordering
$ccompare :: DOMCompatibilityMode -> DOMCompatibilityMode -> Ordering
$cp1Ord :: Eq DOMCompatibilityMode
Ord, DOMCompatibilityMode -> DOMCompatibilityMode -> Bool
(DOMCompatibilityMode -> DOMCompatibilityMode -> Bool)
-> (DOMCompatibilityMode -> DOMCompatibilityMode -> Bool)
-> Eq DOMCompatibilityMode
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMCompatibilityMode -> DOMCompatibilityMode -> Bool
$c/= :: DOMCompatibilityMode -> DOMCompatibilityMode -> Bool
== :: DOMCompatibilityMode -> DOMCompatibilityMode -> Bool
$c== :: DOMCompatibilityMode -> DOMCompatibilityMode -> Bool
Eq, Int -> DOMCompatibilityMode -> ShowS
[DOMCompatibilityMode] -> ShowS
DOMCompatibilityMode -> String
(Int -> DOMCompatibilityMode -> ShowS)
-> (DOMCompatibilityMode -> String)
-> ([DOMCompatibilityMode] -> ShowS)
-> Show DOMCompatibilityMode
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMCompatibilityMode] -> ShowS
$cshowList :: [DOMCompatibilityMode] -> ShowS
show :: DOMCompatibilityMode -> String
$cshow :: DOMCompatibilityMode -> String
showsPrec :: Int -> DOMCompatibilityMode -> ShowS
$cshowsPrec :: Int -> DOMCompatibilityMode -> ShowS
Show, ReadPrec [DOMCompatibilityMode]
ReadPrec DOMCompatibilityMode
Int -> ReadS DOMCompatibilityMode
ReadS [DOMCompatibilityMode]
(Int -> ReadS DOMCompatibilityMode)
-> ReadS [DOMCompatibilityMode]
-> ReadPrec DOMCompatibilityMode
-> ReadPrec [DOMCompatibilityMode]
-> Read DOMCompatibilityMode
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DOMCompatibilityMode]
$creadListPrec :: ReadPrec [DOMCompatibilityMode]
readPrec :: ReadPrec DOMCompatibilityMode
$creadPrec :: ReadPrec DOMCompatibilityMode
readList :: ReadS [DOMCompatibilityMode]
$creadList :: ReadS [DOMCompatibilityMode]
readsPrec :: Int -> ReadS DOMCompatibilityMode
$creadsPrec :: Int -> ReadS DOMCompatibilityMode
Read)
instance FromJSON DOMCompatibilityMode where
  parseJSON :: Value -> Parser DOMCompatibilityMode
parseJSON = String
-> (Text -> Parser DOMCompatibilityMode)
-> Value
-> Parser DOMCompatibilityMode
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"DOMCompatibilityMode" ((Text -> Parser DOMCompatibilityMode)
 -> Value -> Parser DOMCompatibilityMode)
-> (Text -> Parser DOMCompatibilityMode)
-> Value
-> Parser DOMCompatibilityMode
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"QuirksMode" -> DOMCompatibilityMode -> Parser DOMCompatibilityMode
forall (f :: * -> *) a. Applicative f => a -> f a
pure DOMCompatibilityMode
DOMCompatibilityModeQuirksMode
    Text
"LimitedQuirksMode" -> DOMCompatibilityMode -> Parser DOMCompatibilityMode
forall (f :: * -> *) a. Applicative f => a -> f a
pure DOMCompatibilityMode
DOMCompatibilityModeLimitedQuirksMode
    Text
"NoQuirksMode" -> DOMCompatibilityMode -> Parser DOMCompatibilityMode
forall (f :: * -> *) a. Applicative f => a -> f a
pure DOMCompatibilityMode
DOMCompatibilityModeNoQuirksMode
    Text
"_" -> String -> Parser DOMCompatibilityMode
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse DOMCompatibilityMode"
instance ToJSON DOMCompatibilityMode where
  toJSON :: DOMCompatibilityMode -> Value
toJSON DOMCompatibilityMode
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case DOMCompatibilityMode
v of
    DOMCompatibilityMode
DOMCompatibilityModeQuirksMode -> Text
"QuirksMode"
    DOMCompatibilityMode
DOMCompatibilityModeLimitedQuirksMode -> Text
"LimitedQuirksMode"
    DOMCompatibilityMode
DOMCompatibilityModeNoQuirksMode -> Text
"NoQuirksMode"

-- | Type 'DOM.Node'.
--   DOM interaction is implemented in terms of mirror objects that represent the actual DOM nodes.
--   DOMNode is a base node mirror type.
data DOMNode = DOMNode
  {
    -- | Node identifier that is passed into the rest of the DOM messages as the `nodeId`. Backend
    --   will only push node with given `id` once. It is aware of all requested nodes and will only
    --   fire DOM events for nodes known to the client.
    DOMNode -> Int
dOMNodeNodeId :: DOMNodeId,
    -- | The id of the parent node if any.
    DOMNode -> Maybe Int
dOMNodeParentId :: Maybe DOMNodeId,
    -- | The BackendNodeId for this node.
    DOMNode -> Int
dOMNodeBackendNodeId :: DOMBackendNodeId,
    -- | `Node`'s nodeType.
    DOMNode -> Int
dOMNodeNodeType :: Int,
    -- | `Node`'s nodeName.
    DOMNode -> Text
dOMNodeNodeName :: T.Text,
    -- | `Node`'s localName.
    DOMNode -> Text
dOMNodeLocalName :: T.Text,
    -- | `Node`'s nodeValue.
    DOMNode -> Text
dOMNodeNodeValue :: T.Text,
    -- | Child count for `Container` nodes.
    DOMNode -> Maybe Int
dOMNodeChildNodeCount :: Maybe Int,
    -- | Child nodes of this node when requested with children.
    DOMNode -> Maybe [DOMNode]
dOMNodeChildren :: Maybe [DOMNode],
    -- | Attributes of the `Element` node in the form of flat array `[name1, value1, name2, value2]`.
    DOMNode -> Maybe [Text]
dOMNodeAttributes :: Maybe [T.Text],
    -- | Document URL that `Document` or `FrameOwner` node points to.
    DOMNode -> Maybe Text
dOMNodeDocumentURL :: Maybe T.Text,
    -- | Base URL that `Document` or `FrameOwner` node uses for URL completion.
    DOMNode -> Maybe Text
dOMNodeBaseURL :: Maybe T.Text,
    -- | `DocumentType`'s publicId.
    DOMNode -> Maybe Text
dOMNodePublicId :: Maybe T.Text,
    -- | `DocumentType`'s systemId.
    DOMNode -> Maybe Text
dOMNodeSystemId :: Maybe T.Text,
    -- | `DocumentType`'s internalSubset.
    DOMNode -> Maybe Text
dOMNodeInternalSubset :: Maybe T.Text,
    -- | `Document`'s XML version in case of XML documents.
    DOMNode -> Maybe Text
dOMNodeXmlVersion :: Maybe T.Text,
    -- | `Attr`'s name.
    DOMNode -> Maybe Text
dOMNodeName :: Maybe T.Text,
    -- | `Attr`'s value.
    DOMNode -> Maybe Text
dOMNodeValue :: Maybe T.Text,
    -- | Pseudo element type for this node.
    DOMNode -> Maybe DOMPseudoType
dOMNodePseudoType :: Maybe DOMPseudoType,
    -- | Pseudo element identifier for this node. Only present if there is a
    --   valid pseudoType.
    DOMNode -> Maybe Text
dOMNodePseudoIdentifier :: Maybe T.Text,
    -- | Shadow root type.
    DOMNode -> Maybe DOMShadowRootType
dOMNodeShadowRootType :: Maybe DOMShadowRootType,
    -- | Frame ID for frame owner elements.
    DOMNode -> Maybe Text
dOMNodeFrameId :: Maybe PageFrameId,
    -- | Content document for frame owner elements.
    DOMNode -> Maybe DOMNode
dOMNodeContentDocument :: Maybe DOMNode,
    -- | Shadow root list for given element host.
    DOMNode -> Maybe [DOMNode]
dOMNodeShadowRoots :: Maybe [DOMNode],
    -- | Content document fragment for template elements.
    DOMNode -> Maybe DOMNode
dOMNodeTemplateContent :: Maybe DOMNode,
    -- | Pseudo elements associated with this node.
    DOMNode -> Maybe [DOMNode]
dOMNodePseudoElements :: Maybe [DOMNode],
    -- | Distributed nodes for given insertion point.
    DOMNode -> Maybe [DOMBackendNode]
dOMNodeDistributedNodes :: Maybe [DOMBackendNode],
    -- | Whether the node is SVG.
    DOMNode -> Maybe Bool
dOMNodeIsSVG :: Maybe Bool,
    DOMNode -> Maybe DOMCompatibilityMode
dOMNodeCompatibilityMode :: Maybe DOMCompatibilityMode,
    DOMNode -> Maybe DOMBackendNode
dOMNodeAssignedSlot :: Maybe DOMBackendNode
  }
  deriving (DOMNode -> DOMNode -> Bool
(DOMNode -> DOMNode -> Bool)
-> (DOMNode -> DOMNode -> Bool) -> Eq DOMNode
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMNode -> DOMNode -> Bool
$c/= :: DOMNode -> DOMNode -> Bool
== :: DOMNode -> DOMNode -> Bool
$c== :: DOMNode -> DOMNode -> Bool
Eq, Int -> DOMNode -> ShowS
[DOMNode] -> ShowS
DOMNode -> String
(Int -> DOMNode -> ShowS)
-> (DOMNode -> String) -> ([DOMNode] -> ShowS) -> Show DOMNode
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMNode] -> ShowS
$cshowList :: [DOMNode] -> ShowS
show :: DOMNode -> String
$cshow :: DOMNode -> String
showsPrec :: Int -> DOMNode -> ShowS
$cshowsPrec :: Int -> DOMNode -> ShowS
Show)
instance FromJSON DOMNode where
  parseJSON :: Value -> Parser DOMNode
parseJSON = String -> (Object -> Parser DOMNode) -> Value -> Parser DOMNode
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMNode" ((Object -> Parser DOMNode) -> Value -> Parser DOMNode)
-> (Object -> Parser DOMNode) -> Value -> Parser DOMNode
forall a b. (a -> b) -> a -> b
$ \Object
o -> Int
-> Maybe Int
-> Int
-> Int
-> Text
-> Text
-> Text
-> Maybe Int
-> Maybe [DOMNode]
-> Maybe [Text]
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe DOMPseudoType
-> Maybe Text
-> Maybe DOMShadowRootType
-> Maybe Text
-> Maybe DOMNode
-> Maybe [DOMNode]
-> Maybe DOMNode
-> Maybe [DOMNode]
-> Maybe [DOMBackendNode]
-> Maybe Bool
-> Maybe DOMCompatibilityMode
-> Maybe DOMBackendNode
-> DOMNode
DOMNode
    (Int
 -> Maybe Int
 -> Int
 -> Int
 -> Text
 -> Text
 -> Text
 -> Maybe Int
 -> Maybe [DOMNode]
 -> Maybe [Text]
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe DOMPseudoType
 -> Maybe Text
 -> Maybe DOMShadowRootType
 -> Maybe Text
 -> Maybe DOMNode
 -> Maybe [DOMNode]
 -> Maybe DOMNode
 -> Maybe [DOMNode]
 -> Maybe [DOMBackendNode]
 -> Maybe Bool
 -> Maybe DOMCompatibilityMode
 -> Maybe DOMBackendNode
 -> DOMNode)
-> Parser Int
-> Parser
     (Maybe Int
      -> Int
      -> Int
      -> Text
      -> Text
      -> Text
      -> Maybe Int
      -> Maybe [DOMNode]
      -> Maybe [Text]
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe DOMPseudoType
      -> Maybe Text
      -> Maybe DOMShadowRootType
      -> Maybe Text
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe [DOMBackendNode]
      -> Maybe Bool
      -> Maybe DOMCompatibilityMode
      -> Maybe DOMBackendNode
      -> DOMNode)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"nodeId"
    Parser
  (Maybe Int
   -> Int
   -> Int
   -> Text
   -> Text
   -> Text
   -> Maybe Int
   -> Maybe [DOMNode]
   -> Maybe [Text]
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe DOMPseudoType
   -> Maybe Text
   -> Maybe DOMShadowRootType
   -> Maybe Text
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe [DOMBackendNode]
   -> Maybe Bool
   -> Maybe DOMCompatibilityMode
   -> Maybe DOMBackendNode
   -> DOMNode)
-> Parser (Maybe Int)
-> Parser
     (Int
      -> Int
      -> Text
      -> Text
      -> Text
      -> Maybe Int
      -> Maybe [DOMNode]
      -> Maybe [Text]
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe DOMPseudoType
      -> Maybe Text
      -> Maybe DOMShadowRootType
      -> Maybe Text
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe [DOMBackendNode]
      -> Maybe Bool
      -> Maybe DOMCompatibilityMode
      -> Maybe DOMBackendNode
      -> DOMNode)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Int)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"parentId"
    Parser
  (Int
   -> Int
   -> Text
   -> Text
   -> Text
   -> Maybe Int
   -> Maybe [DOMNode]
   -> Maybe [Text]
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe DOMPseudoType
   -> Maybe Text
   -> Maybe DOMShadowRootType
   -> Maybe Text
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe [DOMBackendNode]
   -> Maybe Bool
   -> Maybe DOMCompatibilityMode
   -> Maybe DOMBackendNode
   -> DOMNode)
-> Parser Int
-> Parser
     (Int
      -> Text
      -> Text
      -> Text
      -> Maybe Int
      -> Maybe [DOMNode]
      -> Maybe [Text]
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe DOMPseudoType
      -> Maybe Text
      -> Maybe DOMShadowRootType
      -> Maybe Text
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe [DOMBackendNode]
      -> Maybe Bool
      -> Maybe DOMCompatibilityMode
      -> Maybe DOMBackendNode
      -> DOMNode)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"backendNodeId"
    Parser
  (Int
   -> Text
   -> Text
   -> Text
   -> Maybe Int
   -> Maybe [DOMNode]
   -> Maybe [Text]
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe DOMPseudoType
   -> Maybe Text
   -> Maybe DOMShadowRootType
   -> Maybe Text
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe [DOMBackendNode]
   -> Maybe Bool
   -> Maybe DOMCompatibilityMode
   -> Maybe DOMBackendNode
   -> DOMNode)
-> Parser Int
-> Parser
     (Text
      -> Text
      -> Text
      -> Maybe Int
      -> Maybe [DOMNode]
      -> Maybe [Text]
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe DOMPseudoType
      -> Maybe Text
      -> Maybe DOMShadowRootType
      -> Maybe Text
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe [DOMBackendNode]
      -> Maybe Bool
      -> Maybe DOMCompatibilityMode
      -> Maybe DOMBackendNode
      -> DOMNode)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"nodeType"
    Parser
  (Text
   -> Text
   -> Text
   -> Maybe Int
   -> Maybe [DOMNode]
   -> Maybe [Text]
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe DOMPseudoType
   -> Maybe Text
   -> Maybe DOMShadowRootType
   -> Maybe Text
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe [DOMBackendNode]
   -> Maybe Bool
   -> Maybe DOMCompatibilityMode
   -> Maybe DOMBackendNode
   -> DOMNode)
-> Parser Text
-> Parser
     (Text
      -> Text
      -> Maybe Int
      -> Maybe [DOMNode]
      -> Maybe [Text]
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe DOMPseudoType
      -> Maybe Text
      -> Maybe DOMShadowRootType
      -> Maybe Text
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe [DOMBackendNode]
      -> Maybe Bool
      -> Maybe DOMCompatibilityMode
      -> Maybe DOMBackendNode
      -> DOMNode)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"nodeName"
    Parser
  (Text
   -> Text
   -> Maybe Int
   -> Maybe [DOMNode]
   -> Maybe [Text]
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe DOMPseudoType
   -> Maybe Text
   -> Maybe DOMShadowRootType
   -> Maybe Text
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe [DOMBackendNode]
   -> Maybe Bool
   -> Maybe DOMCompatibilityMode
   -> Maybe DOMBackendNode
   -> DOMNode)
-> Parser Text
-> Parser
     (Text
      -> Maybe Int
      -> Maybe [DOMNode]
      -> Maybe [Text]
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe DOMPseudoType
      -> Maybe Text
      -> Maybe DOMShadowRootType
      -> Maybe Text
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe [DOMBackendNode]
      -> Maybe Bool
      -> Maybe DOMCompatibilityMode
      -> Maybe DOMBackendNode
      -> DOMNode)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"localName"
    Parser
  (Text
   -> Maybe Int
   -> Maybe [DOMNode]
   -> Maybe [Text]
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe DOMPseudoType
   -> Maybe Text
   -> Maybe DOMShadowRootType
   -> Maybe Text
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe [DOMBackendNode]
   -> Maybe Bool
   -> Maybe DOMCompatibilityMode
   -> Maybe DOMBackendNode
   -> DOMNode)
-> Parser Text
-> Parser
     (Maybe Int
      -> Maybe [DOMNode]
      -> Maybe [Text]
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe DOMPseudoType
      -> Maybe Text
      -> Maybe DOMShadowRootType
      -> Maybe Text
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe [DOMBackendNode]
      -> Maybe Bool
      -> Maybe DOMCompatibilityMode
      -> Maybe DOMBackendNode
      -> DOMNode)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"nodeValue"
    Parser
  (Maybe Int
   -> Maybe [DOMNode]
   -> Maybe [Text]
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe DOMPseudoType
   -> Maybe Text
   -> Maybe DOMShadowRootType
   -> Maybe Text
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe [DOMBackendNode]
   -> Maybe Bool
   -> Maybe DOMCompatibilityMode
   -> Maybe DOMBackendNode
   -> DOMNode)
-> Parser (Maybe Int)
-> Parser
     (Maybe [DOMNode]
      -> Maybe [Text]
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe DOMPseudoType
      -> Maybe Text
      -> Maybe DOMShadowRootType
      -> Maybe Text
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe [DOMBackendNode]
      -> Maybe Bool
      -> Maybe DOMCompatibilityMode
      -> Maybe DOMBackendNode
      -> DOMNode)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Int)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"childNodeCount"
    Parser
  (Maybe [DOMNode]
   -> Maybe [Text]
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe DOMPseudoType
   -> Maybe Text
   -> Maybe DOMShadowRootType
   -> Maybe Text
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe [DOMBackendNode]
   -> Maybe Bool
   -> Maybe DOMCompatibilityMode
   -> Maybe DOMBackendNode
   -> DOMNode)
-> Parser (Maybe [DOMNode])
-> Parser
     (Maybe [Text]
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe DOMPseudoType
      -> Maybe Text
      -> Maybe DOMShadowRootType
      -> Maybe Text
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe [DOMBackendNode]
      -> Maybe Bool
      -> Maybe DOMCompatibilityMode
      -> Maybe DOMBackendNode
      -> DOMNode)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe [DOMNode])
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"children"
    Parser
  (Maybe [Text]
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe DOMPseudoType
   -> Maybe Text
   -> Maybe DOMShadowRootType
   -> Maybe Text
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe [DOMBackendNode]
   -> Maybe Bool
   -> Maybe DOMCompatibilityMode
   -> Maybe DOMBackendNode
   -> DOMNode)
-> Parser (Maybe [Text])
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe DOMPseudoType
      -> Maybe Text
      -> Maybe DOMShadowRootType
      -> Maybe Text
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe [DOMBackendNode]
      -> Maybe Bool
      -> Maybe DOMCompatibilityMode
      -> Maybe DOMBackendNode
      -> DOMNode)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe [Text])
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"attributes"
    Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe DOMPseudoType
   -> Maybe Text
   -> Maybe DOMShadowRootType
   -> Maybe Text
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe [DOMBackendNode]
   -> Maybe Bool
   -> Maybe DOMCompatibilityMode
   -> Maybe DOMBackendNode
   -> DOMNode)
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe DOMPseudoType
      -> Maybe Text
      -> Maybe DOMShadowRootType
      -> Maybe Text
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe [DOMBackendNode]
      -> Maybe Bool
      -> Maybe DOMCompatibilityMode
      -> Maybe DOMBackendNode
      -> DOMNode)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"documentURL"
    Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe DOMPseudoType
   -> Maybe Text
   -> Maybe DOMShadowRootType
   -> Maybe Text
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe [DOMBackendNode]
   -> Maybe Bool
   -> Maybe DOMCompatibilityMode
   -> Maybe DOMBackendNode
   -> DOMNode)
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe DOMPseudoType
      -> Maybe Text
      -> Maybe DOMShadowRootType
      -> Maybe Text
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe [DOMBackendNode]
      -> Maybe Bool
      -> Maybe DOMCompatibilityMode
      -> Maybe DOMBackendNode
      -> DOMNode)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"baseURL"
    Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe DOMPseudoType
   -> Maybe Text
   -> Maybe DOMShadowRootType
   -> Maybe Text
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe [DOMBackendNode]
   -> Maybe Bool
   -> Maybe DOMCompatibilityMode
   -> Maybe DOMBackendNode
   -> DOMNode)
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe DOMPseudoType
      -> Maybe Text
      -> Maybe DOMShadowRootType
      -> Maybe Text
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe [DOMBackendNode]
      -> Maybe Bool
      -> Maybe DOMCompatibilityMode
      -> Maybe DOMBackendNode
      -> DOMNode)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"publicId"
    Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe DOMPseudoType
   -> Maybe Text
   -> Maybe DOMShadowRootType
   -> Maybe Text
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe [DOMBackendNode]
   -> Maybe Bool
   -> Maybe DOMCompatibilityMode
   -> Maybe DOMBackendNode
   -> DOMNode)
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe DOMPseudoType
      -> Maybe Text
      -> Maybe DOMShadowRootType
      -> Maybe Text
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe [DOMBackendNode]
      -> Maybe Bool
      -> Maybe DOMCompatibilityMode
      -> Maybe DOMBackendNode
      -> DOMNode)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"systemId"
    Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe DOMPseudoType
   -> Maybe Text
   -> Maybe DOMShadowRootType
   -> Maybe Text
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe [DOMBackendNode]
   -> Maybe Bool
   -> Maybe DOMCompatibilityMode
   -> Maybe DOMBackendNode
   -> DOMNode)
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe DOMPseudoType
      -> Maybe Text
      -> Maybe DOMShadowRootType
      -> Maybe Text
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe [DOMBackendNode]
      -> Maybe Bool
      -> Maybe DOMCompatibilityMode
      -> Maybe DOMBackendNode
      -> DOMNode)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"internalSubset"
    Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe DOMPseudoType
   -> Maybe Text
   -> Maybe DOMShadowRootType
   -> Maybe Text
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe [DOMBackendNode]
   -> Maybe Bool
   -> Maybe DOMCompatibilityMode
   -> Maybe DOMBackendNode
   -> DOMNode)
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe DOMPseudoType
      -> Maybe Text
      -> Maybe DOMShadowRootType
      -> Maybe Text
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe [DOMBackendNode]
      -> Maybe Bool
      -> Maybe DOMCompatibilityMode
      -> Maybe DOMBackendNode
      -> DOMNode)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"xmlVersion"
    Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe DOMPseudoType
   -> Maybe Text
   -> Maybe DOMShadowRootType
   -> Maybe Text
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe [DOMBackendNode]
   -> Maybe Bool
   -> Maybe DOMCompatibilityMode
   -> Maybe DOMBackendNode
   -> DOMNode)
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe DOMPseudoType
      -> Maybe Text
      -> Maybe DOMShadowRootType
      -> Maybe Text
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe [DOMBackendNode]
      -> Maybe Bool
      -> Maybe DOMCompatibilityMode
      -> Maybe DOMBackendNode
      -> DOMNode)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"name"
    Parser
  (Maybe Text
   -> Maybe DOMPseudoType
   -> Maybe Text
   -> Maybe DOMShadowRootType
   -> Maybe Text
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe [DOMBackendNode]
   -> Maybe Bool
   -> Maybe DOMCompatibilityMode
   -> Maybe DOMBackendNode
   -> DOMNode)
-> Parser (Maybe Text)
-> Parser
     (Maybe DOMPseudoType
      -> Maybe Text
      -> Maybe DOMShadowRootType
      -> Maybe Text
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe [DOMBackendNode]
      -> Maybe Bool
      -> Maybe DOMCompatibilityMode
      -> Maybe DOMBackendNode
      -> DOMNode)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"value"
    Parser
  (Maybe DOMPseudoType
   -> Maybe Text
   -> Maybe DOMShadowRootType
   -> Maybe Text
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe [DOMBackendNode]
   -> Maybe Bool
   -> Maybe DOMCompatibilityMode
   -> Maybe DOMBackendNode
   -> DOMNode)
-> Parser (Maybe DOMPseudoType)
-> Parser
     (Maybe Text
      -> Maybe DOMShadowRootType
      -> Maybe Text
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe [DOMBackendNode]
      -> Maybe Bool
      -> Maybe DOMCompatibilityMode
      -> Maybe DOMBackendNode
      -> DOMNode)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe DOMPseudoType)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"pseudoType"
    Parser
  (Maybe Text
   -> Maybe DOMShadowRootType
   -> Maybe Text
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe [DOMBackendNode]
   -> Maybe Bool
   -> Maybe DOMCompatibilityMode
   -> Maybe DOMBackendNode
   -> DOMNode)
-> Parser (Maybe Text)
-> Parser
     (Maybe DOMShadowRootType
      -> Maybe Text
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe [DOMBackendNode]
      -> Maybe Bool
      -> Maybe DOMCompatibilityMode
      -> Maybe DOMBackendNode
      -> DOMNode)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"pseudoIdentifier"
    Parser
  (Maybe DOMShadowRootType
   -> Maybe Text
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe [DOMBackendNode]
   -> Maybe Bool
   -> Maybe DOMCompatibilityMode
   -> Maybe DOMBackendNode
   -> DOMNode)
-> Parser (Maybe DOMShadowRootType)
-> Parser
     (Maybe Text
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe [DOMBackendNode]
      -> Maybe Bool
      -> Maybe DOMCompatibilityMode
      -> Maybe DOMBackendNode
      -> DOMNode)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe DOMShadowRootType)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"shadowRootType"
    Parser
  (Maybe Text
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe [DOMBackendNode]
   -> Maybe Bool
   -> Maybe DOMCompatibilityMode
   -> Maybe DOMBackendNode
   -> DOMNode)
-> Parser (Maybe Text)
-> Parser
     (Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe [DOMBackendNode]
      -> Maybe Bool
      -> Maybe DOMCompatibilityMode
      -> Maybe DOMBackendNode
      -> DOMNode)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"frameId"
    Parser
  (Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe [DOMBackendNode]
   -> Maybe Bool
   -> Maybe DOMCompatibilityMode
   -> Maybe DOMBackendNode
   -> DOMNode)
-> Parser (Maybe DOMNode)
-> Parser
     (Maybe [DOMNode]
      -> Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe [DOMBackendNode]
      -> Maybe Bool
      -> Maybe DOMCompatibilityMode
      -> Maybe DOMBackendNode
      -> DOMNode)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe DOMNode)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"contentDocument"
    Parser
  (Maybe [DOMNode]
   -> Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe [DOMBackendNode]
   -> Maybe Bool
   -> Maybe DOMCompatibilityMode
   -> Maybe DOMBackendNode
   -> DOMNode)
-> Parser (Maybe [DOMNode])
-> Parser
     (Maybe DOMNode
      -> Maybe [DOMNode]
      -> Maybe [DOMBackendNode]
      -> Maybe Bool
      -> Maybe DOMCompatibilityMode
      -> Maybe DOMBackendNode
      -> DOMNode)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe [DOMNode])
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"shadowRoots"
    Parser
  (Maybe DOMNode
   -> Maybe [DOMNode]
   -> Maybe [DOMBackendNode]
   -> Maybe Bool
   -> Maybe DOMCompatibilityMode
   -> Maybe DOMBackendNode
   -> DOMNode)
-> Parser (Maybe DOMNode)
-> Parser
     (Maybe [DOMNode]
      -> Maybe [DOMBackendNode]
      -> Maybe Bool
      -> Maybe DOMCompatibilityMode
      -> Maybe DOMBackendNode
      -> DOMNode)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe DOMNode)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"templateContent"
    Parser
  (Maybe [DOMNode]
   -> Maybe [DOMBackendNode]
   -> Maybe Bool
   -> Maybe DOMCompatibilityMode
   -> Maybe DOMBackendNode
   -> DOMNode)
-> Parser (Maybe [DOMNode])
-> Parser
     (Maybe [DOMBackendNode]
      -> Maybe Bool
      -> Maybe DOMCompatibilityMode
      -> Maybe DOMBackendNode
      -> DOMNode)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe [DOMNode])
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"pseudoElements"
    Parser
  (Maybe [DOMBackendNode]
   -> Maybe Bool
   -> Maybe DOMCompatibilityMode
   -> Maybe DOMBackendNode
   -> DOMNode)
-> Parser (Maybe [DOMBackendNode])
-> Parser
     (Maybe Bool
      -> Maybe DOMCompatibilityMode -> Maybe DOMBackendNode -> DOMNode)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe [DOMBackendNode])
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"distributedNodes"
    Parser
  (Maybe Bool
   -> Maybe DOMCompatibilityMode -> Maybe DOMBackendNode -> DOMNode)
-> Parser (Maybe Bool)
-> Parser
     (Maybe DOMCompatibilityMode -> Maybe DOMBackendNode -> DOMNode)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"isSVG"
    Parser
  (Maybe DOMCompatibilityMode -> Maybe DOMBackendNode -> DOMNode)
-> Parser (Maybe DOMCompatibilityMode)
-> Parser (Maybe DOMBackendNode -> DOMNode)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe DOMCompatibilityMode)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"compatibilityMode"
    Parser (Maybe DOMBackendNode -> DOMNode)
-> Parser (Maybe DOMBackendNode) -> Parser DOMNode
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe DOMBackendNode)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"assignedSlot"
instance ToJSON DOMNode where
  toJSON :: DOMNode -> Value
toJSON DOMNode
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"nodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (DOMNode -> Int
dOMNodeNodeId DOMNode
p),
    (Text
"parentId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (DOMNode -> Maybe Int
dOMNodeParentId DOMNode
p),
    (Text
"backendNodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (DOMNode -> Int
dOMNodeBackendNodeId DOMNode
p),
    (Text
"nodeType" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (DOMNode -> Int
dOMNodeNodeType DOMNode
p),
    (Text
"nodeName" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (DOMNode -> Text
dOMNodeNodeName DOMNode
p),
    (Text
"localName" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (DOMNode -> Text
dOMNodeLocalName DOMNode
p),
    (Text
"nodeValue" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (DOMNode -> Text
dOMNodeNodeValue DOMNode
p),
    (Text
"childNodeCount" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (DOMNode -> Maybe Int
dOMNodeChildNodeCount DOMNode
p),
    (Text
"children" Text -> [DOMNode] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([DOMNode] -> Pair) -> Maybe [DOMNode] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (DOMNode -> Maybe [DOMNode]
dOMNodeChildren DOMNode
p),
    (Text
"attributes" Text -> [Text] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([Text] -> Pair) -> Maybe [Text] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (DOMNode -> Maybe [Text]
dOMNodeAttributes DOMNode
p),
    (Text
"documentURL" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (DOMNode -> Maybe Text
dOMNodeDocumentURL DOMNode
p),
    (Text
"baseURL" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (DOMNode -> Maybe Text
dOMNodeBaseURL DOMNode
p),
    (Text
"publicId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (DOMNode -> Maybe Text
dOMNodePublicId DOMNode
p),
    (Text
"systemId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (DOMNode -> Maybe Text
dOMNodeSystemId DOMNode
p),
    (Text
"internalSubset" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (DOMNode -> Maybe Text
dOMNodeInternalSubset DOMNode
p),
    (Text
"xmlVersion" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (DOMNode -> Maybe Text
dOMNodeXmlVersion DOMNode
p),
    (Text
"name" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (DOMNode -> Maybe Text
dOMNodeName DOMNode
p),
    (Text
"value" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (DOMNode -> Maybe Text
dOMNodeValue DOMNode
p),
    (Text
"pseudoType" Text -> DOMPseudoType -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (DOMPseudoType -> Pair) -> Maybe DOMPseudoType -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (DOMNode -> Maybe DOMPseudoType
dOMNodePseudoType DOMNode
p),
    (Text
"pseudoIdentifier" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (DOMNode -> Maybe Text
dOMNodePseudoIdentifier DOMNode
p),
    (Text
"shadowRootType" Text -> DOMShadowRootType -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (DOMShadowRootType -> Pair)
-> Maybe DOMShadowRootType -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (DOMNode -> Maybe DOMShadowRootType
dOMNodeShadowRootType DOMNode
p),
    (Text
"frameId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (DOMNode -> Maybe Text
dOMNodeFrameId DOMNode
p),
    (Text
"contentDocument" Text -> DOMNode -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (DOMNode -> Pair) -> Maybe DOMNode -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (DOMNode -> Maybe DOMNode
dOMNodeContentDocument DOMNode
p),
    (Text
"shadowRoots" Text -> [DOMNode] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([DOMNode] -> Pair) -> Maybe [DOMNode] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (DOMNode -> Maybe [DOMNode]
dOMNodeShadowRoots DOMNode
p),
    (Text
"templateContent" Text -> DOMNode -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (DOMNode -> Pair) -> Maybe DOMNode -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (DOMNode -> Maybe DOMNode
dOMNodeTemplateContent DOMNode
p),
    (Text
"pseudoElements" Text -> [DOMNode] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([DOMNode] -> Pair) -> Maybe [DOMNode] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (DOMNode -> Maybe [DOMNode]
dOMNodePseudoElements DOMNode
p),
    (Text
"distributedNodes" Text -> [DOMBackendNode] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([DOMBackendNode] -> Pair) -> Maybe [DOMBackendNode] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (DOMNode -> Maybe [DOMBackendNode]
dOMNodeDistributedNodes DOMNode
p),
    (Text
"isSVG" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (DOMNode -> Maybe Bool
dOMNodeIsSVG DOMNode
p),
    (Text
"compatibilityMode" Text -> DOMCompatibilityMode -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (DOMCompatibilityMode -> Pair)
-> Maybe DOMCompatibilityMode -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (DOMNode -> Maybe DOMCompatibilityMode
dOMNodeCompatibilityMode DOMNode
p),
    (Text
"assignedSlot" Text -> DOMBackendNode -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (DOMBackendNode -> Pair) -> Maybe DOMBackendNode -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (DOMNode -> Maybe DOMBackendNode
dOMNodeAssignedSlot DOMNode
p)
    ]

-- | Type 'DOM.RGBA'.
--   A structure holding an RGBA color.
data DOMRGBA = DOMRGBA
  {
    -- | The red component, in the [0-255] range.
    DOMRGBA -> Int
dOMRGBAR :: Int,
    -- | The green component, in the [0-255] range.
    DOMRGBA -> Int
dOMRGBAG :: Int,
    -- | The blue component, in the [0-255] range.
    DOMRGBA -> Int
dOMRGBAB :: Int,
    -- | The alpha component, in the [0-1] range (default: 1).
    DOMRGBA -> Maybe Double
dOMRGBAA :: Maybe Double
  }
  deriving (DOMRGBA -> DOMRGBA -> Bool
(DOMRGBA -> DOMRGBA -> Bool)
-> (DOMRGBA -> DOMRGBA -> Bool) -> Eq DOMRGBA
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMRGBA -> DOMRGBA -> Bool
$c/= :: DOMRGBA -> DOMRGBA -> Bool
== :: DOMRGBA -> DOMRGBA -> Bool
$c== :: DOMRGBA -> DOMRGBA -> Bool
Eq, Int -> DOMRGBA -> ShowS
[DOMRGBA] -> ShowS
DOMRGBA -> String
(Int -> DOMRGBA -> ShowS)
-> (DOMRGBA -> String) -> ([DOMRGBA] -> ShowS) -> Show DOMRGBA
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMRGBA] -> ShowS
$cshowList :: [DOMRGBA] -> ShowS
show :: DOMRGBA -> String
$cshow :: DOMRGBA -> String
showsPrec :: Int -> DOMRGBA -> ShowS
$cshowsPrec :: Int -> DOMRGBA -> ShowS
Show)
instance FromJSON DOMRGBA where
  parseJSON :: Value -> Parser DOMRGBA
parseJSON = String -> (Object -> Parser DOMRGBA) -> Value -> Parser DOMRGBA
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMRGBA" ((Object -> Parser DOMRGBA) -> Value -> Parser DOMRGBA)
-> (Object -> Parser DOMRGBA) -> Value -> Parser DOMRGBA
forall a b. (a -> b) -> a -> b
$ \Object
o -> Int -> Int -> Int -> Maybe Double -> DOMRGBA
DOMRGBA
    (Int -> Int -> Int -> Maybe Double -> DOMRGBA)
-> Parser Int -> Parser (Int -> Int -> Maybe Double -> DOMRGBA)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"r"
    Parser (Int -> Int -> Maybe Double -> DOMRGBA)
-> Parser Int -> Parser (Int -> Maybe Double -> DOMRGBA)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"g"
    Parser (Int -> Maybe Double -> DOMRGBA)
-> Parser Int -> Parser (Maybe Double -> DOMRGBA)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"b"
    Parser (Maybe Double -> DOMRGBA)
-> Parser (Maybe Double) -> Parser DOMRGBA
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Double)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"a"
instance ToJSON DOMRGBA where
  toJSON :: DOMRGBA -> Value
toJSON DOMRGBA
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"r" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (DOMRGBA -> Int
dOMRGBAR DOMRGBA
p),
    (Text
"g" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (DOMRGBA -> Int
dOMRGBAG DOMRGBA
p),
    (Text
"b" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (DOMRGBA -> Int
dOMRGBAB DOMRGBA
p),
    (Text
"a" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (DOMRGBA -> Maybe Double
dOMRGBAA DOMRGBA
p)
    ]

-- | Type 'DOM.Quad'.
--   An array of quad vertices, x immediately followed by y for each point, points clock-wise.
type DOMQuad = [Double]

-- | Type 'DOM.BoxModel'.
--   Box model.
data DOMBoxModel = DOMBoxModel
  {
    -- | Content box
    DOMBoxModel -> DOMQuad
dOMBoxModelContent :: DOMQuad,
    -- | Padding box
    DOMBoxModel -> DOMQuad
dOMBoxModelPadding :: DOMQuad,
    -- | Border box
    DOMBoxModel -> DOMQuad
dOMBoxModelBorder :: DOMQuad,
    -- | Margin box
    DOMBoxModel -> DOMQuad
dOMBoxModelMargin :: DOMQuad,
    -- | Node width
    DOMBoxModel -> Int
dOMBoxModelWidth :: Int,
    -- | Node height
    DOMBoxModel -> Int
dOMBoxModelHeight :: Int,
    -- | Shape outside coordinates
    DOMBoxModel -> Maybe DOMShapeOutsideInfo
dOMBoxModelShapeOutside :: Maybe DOMShapeOutsideInfo
  }
  deriving (DOMBoxModel -> DOMBoxModel -> Bool
(DOMBoxModel -> DOMBoxModel -> Bool)
-> (DOMBoxModel -> DOMBoxModel -> Bool) -> Eq DOMBoxModel
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMBoxModel -> DOMBoxModel -> Bool
$c/= :: DOMBoxModel -> DOMBoxModel -> Bool
== :: DOMBoxModel -> DOMBoxModel -> Bool
$c== :: DOMBoxModel -> DOMBoxModel -> Bool
Eq, Int -> DOMBoxModel -> ShowS
[DOMBoxModel] -> ShowS
DOMBoxModel -> String
(Int -> DOMBoxModel -> ShowS)
-> (DOMBoxModel -> String)
-> ([DOMBoxModel] -> ShowS)
-> Show DOMBoxModel
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMBoxModel] -> ShowS
$cshowList :: [DOMBoxModel] -> ShowS
show :: DOMBoxModel -> String
$cshow :: DOMBoxModel -> String
showsPrec :: Int -> DOMBoxModel -> ShowS
$cshowsPrec :: Int -> DOMBoxModel -> ShowS
Show)
instance FromJSON DOMBoxModel where
  parseJSON :: Value -> Parser DOMBoxModel
parseJSON = String
-> (Object -> Parser DOMBoxModel) -> Value -> Parser DOMBoxModel
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMBoxModel" ((Object -> Parser DOMBoxModel) -> Value -> Parser DOMBoxModel)
-> (Object -> Parser DOMBoxModel) -> Value -> Parser DOMBoxModel
forall a b. (a -> b) -> a -> b
$ \Object
o -> DOMQuad
-> DOMQuad
-> DOMQuad
-> DOMQuad
-> Int
-> Int
-> Maybe DOMShapeOutsideInfo
-> DOMBoxModel
DOMBoxModel
    (DOMQuad
 -> DOMQuad
 -> DOMQuad
 -> DOMQuad
 -> Int
 -> Int
 -> Maybe DOMShapeOutsideInfo
 -> DOMBoxModel)
-> Parser DOMQuad
-> Parser
     (DOMQuad
      -> DOMQuad
      -> DOMQuad
      -> Int
      -> Int
      -> Maybe DOMShapeOutsideInfo
      -> DOMBoxModel)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser DOMQuad
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"content"
    Parser
  (DOMQuad
   -> DOMQuad
   -> DOMQuad
   -> Int
   -> Int
   -> Maybe DOMShapeOutsideInfo
   -> DOMBoxModel)
-> Parser DOMQuad
-> Parser
     (DOMQuad
      -> DOMQuad
      -> Int
      -> Int
      -> Maybe DOMShapeOutsideInfo
      -> DOMBoxModel)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser DOMQuad
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"padding"
    Parser
  (DOMQuad
   -> DOMQuad
   -> Int
   -> Int
   -> Maybe DOMShapeOutsideInfo
   -> DOMBoxModel)
-> Parser DOMQuad
-> Parser
     (DOMQuad -> Int -> Int -> Maybe DOMShapeOutsideInfo -> DOMBoxModel)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser DOMQuad
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"border"
    Parser
  (DOMQuad -> Int -> Int -> Maybe DOMShapeOutsideInfo -> DOMBoxModel)
-> Parser DOMQuad
-> Parser (Int -> Int -> Maybe DOMShapeOutsideInfo -> DOMBoxModel)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser DOMQuad
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"margin"
    Parser (Int -> Int -> Maybe DOMShapeOutsideInfo -> DOMBoxModel)
-> Parser Int
-> Parser (Int -> Maybe DOMShapeOutsideInfo -> DOMBoxModel)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"width"
    Parser (Int -> Maybe DOMShapeOutsideInfo -> DOMBoxModel)
-> Parser Int -> Parser (Maybe DOMShapeOutsideInfo -> DOMBoxModel)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"height"
    Parser (Maybe DOMShapeOutsideInfo -> DOMBoxModel)
-> Parser (Maybe DOMShapeOutsideInfo) -> Parser DOMBoxModel
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe DOMShapeOutsideInfo)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"shapeOutside"
instance ToJSON DOMBoxModel where
  toJSON :: DOMBoxModel -> Value
toJSON DOMBoxModel
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"content" Text -> DOMQuad -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (DOMQuad -> Pair) -> Maybe DOMQuad -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> DOMQuad -> Maybe DOMQuad
forall a. a -> Maybe a
Just (DOMBoxModel -> DOMQuad
dOMBoxModelContent DOMBoxModel
p),
    (Text
"padding" Text -> DOMQuad -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (DOMQuad -> Pair) -> Maybe DOMQuad -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> DOMQuad -> Maybe DOMQuad
forall a. a -> Maybe a
Just (DOMBoxModel -> DOMQuad
dOMBoxModelPadding DOMBoxModel
p),
    (Text
"border" Text -> DOMQuad -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (DOMQuad -> Pair) -> Maybe DOMQuad -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> DOMQuad -> Maybe DOMQuad
forall a. a -> Maybe a
Just (DOMBoxModel -> DOMQuad
dOMBoxModelBorder DOMBoxModel
p),
    (Text
"margin" Text -> DOMQuad -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (DOMQuad -> Pair) -> Maybe DOMQuad -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> DOMQuad -> Maybe DOMQuad
forall a. a -> Maybe a
Just (DOMBoxModel -> DOMQuad
dOMBoxModelMargin DOMBoxModel
p),
    (Text
"width" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (DOMBoxModel -> Int
dOMBoxModelWidth DOMBoxModel
p),
    (Text
"height" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (DOMBoxModel -> Int
dOMBoxModelHeight DOMBoxModel
p),
    (Text
"shapeOutside" Text -> DOMShapeOutsideInfo -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (DOMShapeOutsideInfo -> Pair)
-> Maybe DOMShapeOutsideInfo -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (DOMBoxModel -> Maybe DOMShapeOutsideInfo
dOMBoxModelShapeOutside DOMBoxModel
p)
    ]

-- | Type 'DOM.ShapeOutsideInfo'.
--   CSS Shape Outside details.
data DOMShapeOutsideInfo = DOMShapeOutsideInfo
  {
    -- | Shape bounds
    DOMShapeOutsideInfo -> DOMQuad
dOMShapeOutsideInfoBounds :: DOMQuad,
    -- | Shape coordinate details
    DOMShapeOutsideInfo -> [Value]
dOMShapeOutsideInfoShape :: [A.Value],
    -- | Margin shape bounds
    DOMShapeOutsideInfo -> [Value]
dOMShapeOutsideInfoMarginShape :: [A.Value]
  }
  deriving (DOMShapeOutsideInfo -> DOMShapeOutsideInfo -> Bool
(DOMShapeOutsideInfo -> DOMShapeOutsideInfo -> Bool)
-> (DOMShapeOutsideInfo -> DOMShapeOutsideInfo -> Bool)
-> Eq DOMShapeOutsideInfo
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMShapeOutsideInfo -> DOMShapeOutsideInfo -> Bool
$c/= :: DOMShapeOutsideInfo -> DOMShapeOutsideInfo -> Bool
== :: DOMShapeOutsideInfo -> DOMShapeOutsideInfo -> Bool
$c== :: DOMShapeOutsideInfo -> DOMShapeOutsideInfo -> Bool
Eq, Int -> DOMShapeOutsideInfo -> ShowS
[DOMShapeOutsideInfo] -> ShowS
DOMShapeOutsideInfo -> String
(Int -> DOMShapeOutsideInfo -> ShowS)
-> (DOMShapeOutsideInfo -> String)
-> ([DOMShapeOutsideInfo] -> ShowS)
-> Show DOMShapeOutsideInfo
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMShapeOutsideInfo] -> ShowS
$cshowList :: [DOMShapeOutsideInfo] -> ShowS
show :: DOMShapeOutsideInfo -> String
$cshow :: DOMShapeOutsideInfo -> String
showsPrec :: Int -> DOMShapeOutsideInfo -> ShowS
$cshowsPrec :: Int -> DOMShapeOutsideInfo -> ShowS
Show)
instance FromJSON DOMShapeOutsideInfo where
  parseJSON :: Value -> Parser DOMShapeOutsideInfo
parseJSON = String
-> (Object -> Parser DOMShapeOutsideInfo)
-> Value
-> Parser DOMShapeOutsideInfo
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMShapeOutsideInfo" ((Object -> Parser DOMShapeOutsideInfo)
 -> Value -> Parser DOMShapeOutsideInfo)
-> (Object -> Parser DOMShapeOutsideInfo)
-> Value
-> Parser DOMShapeOutsideInfo
forall a b. (a -> b) -> a -> b
$ \Object
o -> DOMQuad -> [Value] -> [Value] -> DOMShapeOutsideInfo
DOMShapeOutsideInfo
    (DOMQuad -> [Value] -> [Value] -> DOMShapeOutsideInfo)
-> Parser DOMQuad
-> Parser ([Value] -> [Value] -> DOMShapeOutsideInfo)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser DOMQuad
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"bounds"
    Parser ([Value] -> [Value] -> DOMShapeOutsideInfo)
-> Parser [Value] -> Parser ([Value] -> DOMShapeOutsideInfo)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser [Value]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"shape"
    Parser ([Value] -> DOMShapeOutsideInfo)
-> Parser [Value] -> Parser DOMShapeOutsideInfo
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser [Value]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"marginShape"
instance ToJSON DOMShapeOutsideInfo where
  toJSON :: DOMShapeOutsideInfo -> Value
toJSON DOMShapeOutsideInfo
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"bounds" Text -> DOMQuad -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (DOMQuad -> Pair) -> Maybe DOMQuad -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> DOMQuad -> Maybe DOMQuad
forall a. a -> Maybe a
Just (DOMShapeOutsideInfo -> DOMQuad
dOMShapeOutsideInfoBounds DOMShapeOutsideInfo
p),
    (Text
"shape" Text -> [Value] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([Value] -> Pair) -> Maybe [Value] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> [Value] -> Maybe [Value]
forall a. a -> Maybe a
Just (DOMShapeOutsideInfo -> [Value]
dOMShapeOutsideInfoShape DOMShapeOutsideInfo
p),
    (Text
"marginShape" Text -> [Value] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([Value] -> Pair) -> Maybe [Value] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> [Value] -> Maybe [Value]
forall a. a -> Maybe a
Just (DOMShapeOutsideInfo -> [Value]
dOMShapeOutsideInfoMarginShape DOMShapeOutsideInfo
p)
    ]

-- | Type 'DOM.Rect'.
--   Rectangle.
data DOMRect = DOMRect
  {
    -- | X coordinate
    DOMRect -> Double
dOMRectX :: Double,
    -- | Y coordinate
    DOMRect -> Double
dOMRectY :: Double,
    -- | Rectangle width
    DOMRect -> Double
dOMRectWidth :: Double,
    -- | Rectangle height
    DOMRect -> Double
dOMRectHeight :: Double
  }
  deriving (DOMRect -> DOMRect -> Bool
(DOMRect -> DOMRect -> Bool)
-> (DOMRect -> DOMRect -> Bool) -> Eq DOMRect
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMRect -> DOMRect -> Bool
$c/= :: DOMRect -> DOMRect -> Bool
== :: DOMRect -> DOMRect -> Bool
$c== :: DOMRect -> DOMRect -> Bool
Eq, Int -> DOMRect -> ShowS
[DOMRect] -> ShowS
DOMRect -> String
(Int -> DOMRect -> ShowS)
-> (DOMRect -> String) -> ([DOMRect] -> ShowS) -> Show DOMRect
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMRect] -> ShowS
$cshowList :: [DOMRect] -> ShowS
show :: DOMRect -> String
$cshow :: DOMRect -> String
showsPrec :: Int -> DOMRect -> ShowS
$cshowsPrec :: Int -> DOMRect -> ShowS
Show)
instance FromJSON DOMRect where
  parseJSON :: Value -> Parser DOMRect
parseJSON = String -> (Object -> Parser DOMRect) -> Value -> Parser DOMRect
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMRect" ((Object -> Parser DOMRect) -> Value -> Parser DOMRect)
-> (Object -> Parser DOMRect) -> Value -> Parser DOMRect
forall a b. (a -> b) -> a -> b
$ \Object
o -> Double -> Double -> Double -> Double -> DOMRect
DOMRect
    (Double -> Double -> Double -> Double -> DOMRect)
-> Parser Double -> Parser (Double -> Double -> Double -> DOMRect)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"x"
    Parser (Double -> Double -> Double -> DOMRect)
-> Parser Double -> Parser (Double -> Double -> DOMRect)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"y"
    Parser (Double -> Double -> DOMRect)
-> Parser Double -> Parser (Double -> DOMRect)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"width"
    Parser (Double -> DOMRect) -> Parser Double -> Parser DOMRect
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"height"
instance ToJSON DOMRect where
  toJSON :: DOMRect -> Value
toJSON DOMRect
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"x" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (DOMRect -> Double
dOMRectX DOMRect
p),
    (Text
"y" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (DOMRect -> Double
dOMRectY DOMRect
p),
    (Text
"width" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (DOMRect -> Double
dOMRectWidth DOMRect
p),
    (Text
"height" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (DOMRect -> Double
dOMRectHeight DOMRect
p)
    ]

-- | Type 'DOM.CSSComputedStyleProperty'.
data DOMCSSComputedStyleProperty = DOMCSSComputedStyleProperty
  {
    -- | Computed style property name.
    DOMCSSComputedStyleProperty -> Text
dOMCSSComputedStylePropertyName :: T.Text,
    -- | Computed style property value.
    DOMCSSComputedStyleProperty -> Text
dOMCSSComputedStylePropertyValue :: T.Text
  }
  deriving (DOMCSSComputedStyleProperty -> DOMCSSComputedStyleProperty -> Bool
(DOMCSSComputedStyleProperty
 -> DOMCSSComputedStyleProperty -> Bool)
-> (DOMCSSComputedStyleProperty
    -> DOMCSSComputedStyleProperty -> Bool)
-> Eq DOMCSSComputedStyleProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMCSSComputedStyleProperty -> DOMCSSComputedStyleProperty -> Bool
$c/= :: DOMCSSComputedStyleProperty -> DOMCSSComputedStyleProperty -> Bool
== :: DOMCSSComputedStyleProperty -> DOMCSSComputedStyleProperty -> Bool
$c== :: DOMCSSComputedStyleProperty -> DOMCSSComputedStyleProperty -> Bool
Eq, Int -> DOMCSSComputedStyleProperty -> ShowS
[DOMCSSComputedStyleProperty] -> ShowS
DOMCSSComputedStyleProperty -> String
(Int -> DOMCSSComputedStyleProperty -> ShowS)
-> (DOMCSSComputedStyleProperty -> String)
-> ([DOMCSSComputedStyleProperty] -> ShowS)
-> Show DOMCSSComputedStyleProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMCSSComputedStyleProperty] -> ShowS
$cshowList :: [DOMCSSComputedStyleProperty] -> ShowS
show :: DOMCSSComputedStyleProperty -> String
$cshow :: DOMCSSComputedStyleProperty -> String
showsPrec :: Int -> DOMCSSComputedStyleProperty -> ShowS
$cshowsPrec :: Int -> DOMCSSComputedStyleProperty -> ShowS
Show)
instance FromJSON DOMCSSComputedStyleProperty where
  parseJSON :: Value -> Parser DOMCSSComputedStyleProperty
parseJSON = String
-> (Object -> Parser DOMCSSComputedStyleProperty)
-> Value
-> Parser DOMCSSComputedStyleProperty
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMCSSComputedStyleProperty" ((Object -> Parser DOMCSSComputedStyleProperty)
 -> Value -> Parser DOMCSSComputedStyleProperty)
-> (Object -> Parser DOMCSSComputedStyleProperty)
-> Value
-> Parser DOMCSSComputedStyleProperty
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> Text -> DOMCSSComputedStyleProperty
DOMCSSComputedStyleProperty
    (Text -> Text -> DOMCSSComputedStyleProperty)
-> Parser Text -> Parser (Text -> DOMCSSComputedStyleProperty)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"name"
    Parser (Text -> DOMCSSComputedStyleProperty)
-> Parser Text -> Parser DOMCSSComputedStyleProperty
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"value"
instance ToJSON DOMCSSComputedStyleProperty where
  toJSON :: DOMCSSComputedStyleProperty -> Value
toJSON DOMCSSComputedStyleProperty
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"name" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (DOMCSSComputedStyleProperty -> Text
dOMCSSComputedStylePropertyName DOMCSSComputedStyleProperty
p),
    (Text
"value" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (DOMCSSComputedStyleProperty -> Text
dOMCSSComputedStylePropertyValue DOMCSSComputedStyleProperty
p)
    ]

-- | Type of the 'DOM.attributeModified' event.
data DOMAttributeModified = DOMAttributeModified
  {
    -- | Id of the node that has changed.
    DOMAttributeModified -> Int
dOMAttributeModifiedNodeId :: DOMNodeId,
    -- | Attribute name.
    DOMAttributeModified -> Text
dOMAttributeModifiedName :: T.Text,
    -- | Attribute value.
    DOMAttributeModified -> Text
dOMAttributeModifiedValue :: T.Text
  }
  deriving (DOMAttributeModified -> DOMAttributeModified -> Bool
(DOMAttributeModified -> DOMAttributeModified -> Bool)
-> (DOMAttributeModified -> DOMAttributeModified -> Bool)
-> Eq DOMAttributeModified
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMAttributeModified -> DOMAttributeModified -> Bool
$c/= :: DOMAttributeModified -> DOMAttributeModified -> Bool
== :: DOMAttributeModified -> DOMAttributeModified -> Bool
$c== :: DOMAttributeModified -> DOMAttributeModified -> Bool
Eq, Int -> DOMAttributeModified -> ShowS
[DOMAttributeModified] -> ShowS
DOMAttributeModified -> String
(Int -> DOMAttributeModified -> ShowS)
-> (DOMAttributeModified -> String)
-> ([DOMAttributeModified] -> ShowS)
-> Show DOMAttributeModified
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMAttributeModified] -> ShowS
$cshowList :: [DOMAttributeModified] -> ShowS
show :: DOMAttributeModified -> String
$cshow :: DOMAttributeModified -> String
showsPrec :: Int -> DOMAttributeModified -> ShowS
$cshowsPrec :: Int -> DOMAttributeModified -> ShowS
Show)
instance FromJSON DOMAttributeModified where
  parseJSON :: Value -> Parser DOMAttributeModified
parseJSON = String
-> (Object -> Parser DOMAttributeModified)
-> Value
-> Parser DOMAttributeModified
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMAttributeModified" ((Object -> Parser DOMAttributeModified)
 -> Value -> Parser DOMAttributeModified)
-> (Object -> Parser DOMAttributeModified)
-> Value
-> Parser DOMAttributeModified
forall a b. (a -> b) -> a -> b
$ \Object
o -> Int -> Text -> Text -> DOMAttributeModified
DOMAttributeModified
    (Int -> Text -> Text -> DOMAttributeModified)
-> Parser Int -> Parser (Text -> Text -> DOMAttributeModified)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"nodeId"
    Parser (Text -> Text -> DOMAttributeModified)
-> Parser Text -> Parser (Text -> DOMAttributeModified)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"name"
    Parser (Text -> DOMAttributeModified)
-> Parser Text -> Parser DOMAttributeModified
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"value"
instance Event DOMAttributeModified where
  eventName :: Proxy DOMAttributeModified -> String
eventName Proxy DOMAttributeModified
_ = String
"DOM.attributeModified"

-- | Type of the 'DOM.attributeRemoved' event.
data DOMAttributeRemoved = DOMAttributeRemoved
  {
    -- | Id of the node that has changed.
    DOMAttributeRemoved -> Int
dOMAttributeRemovedNodeId :: DOMNodeId,
    -- | A ttribute name.
    DOMAttributeRemoved -> Text
dOMAttributeRemovedName :: T.Text
  }
  deriving (DOMAttributeRemoved -> DOMAttributeRemoved -> Bool
(DOMAttributeRemoved -> DOMAttributeRemoved -> Bool)
-> (DOMAttributeRemoved -> DOMAttributeRemoved -> Bool)
-> Eq DOMAttributeRemoved
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMAttributeRemoved -> DOMAttributeRemoved -> Bool
$c/= :: DOMAttributeRemoved -> DOMAttributeRemoved -> Bool
== :: DOMAttributeRemoved -> DOMAttributeRemoved -> Bool
$c== :: DOMAttributeRemoved -> DOMAttributeRemoved -> Bool
Eq, Int -> DOMAttributeRemoved -> ShowS
[DOMAttributeRemoved] -> ShowS
DOMAttributeRemoved -> String
(Int -> DOMAttributeRemoved -> ShowS)
-> (DOMAttributeRemoved -> String)
-> ([DOMAttributeRemoved] -> ShowS)
-> Show DOMAttributeRemoved
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMAttributeRemoved] -> ShowS
$cshowList :: [DOMAttributeRemoved] -> ShowS
show :: DOMAttributeRemoved -> String
$cshow :: DOMAttributeRemoved -> String
showsPrec :: Int -> DOMAttributeRemoved -> ShowS
$cshowsPrec :: Int -> DOMAttributeRemoved -> ShowS
Show)
instance FromJSON DOMAttributeRemoved where
  parseJSON :: Value -> Parser DOMAttributeRemoved
parseJSON = String
-> (Object -> Parser DOMAttributeRemoved)
-> Value
-> Parser DOMAttributeRemoved
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMAttributeRemoved" ((Object -> Parser DOMAttributeRemoved)
 -> Value -> Parser DOMAttributeRemoved)
-> (Object -> Parser DOMAttributeRemoved)
-> Value
-> Parser DOMAttributeRemoved
forall a b. (a -> b) -> a -> b
$ \Object
o -> Int -> Text -> DOMAttributeRemoved
DOMAttributeRemoved
    (Int -> Text -> DOMAttributeRemoved)
-> Parser Int -> Parser (Text -> DOMAttributeRemoved)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"nodeId"
    Parser (Text -> DOMAttributeRemoved)
-> Parser Text -> Parser DOMAttributeRemoved
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"name"
instance Event DOMAttributeRemoved where
  eventName :: Proxy DOMAttributeRemoved -> String
eventName Proxy DOMAttributeRemoved
_ = String
"DOM.attributeRemoved"

-- | Type of the 'DOM.characterDataModified' event.
data DOMCharacterDataModified = DOMCharacterDataModified
  {
    -- | Id of the node that has changed.
    DOMCharacterDataModified -> Int
dOMCharacterDataModifiedNodeId :: DOMNodeId,
    -- | New text value.
    DOMCharacterDataModified -> Text
dOMCharacterDataModifiedCharacterData :: T.Text
  }
  deriving (DOMCharacterDataModified -> DOMCharacterDataModified -> Bool
(DOMCharacterDataModified -> DOMCharacterDataModified -> Bool)
-> (DOMCharacterDataModified -> DOMCharacterDataModified -> Bool)
-> Eq DOMCharacterDataModified
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMCharacterDataModified -> DOMCharacterDataModified -> Bool
$c/= :: DOMCharacterDataModified -> DOMCharacterDataModified -> Bool
== :: DOMCharacterDataModified -> DOMCharacterDataModified -> Bool
$c== :: DOMCharacterDataModified -> DOMCharacterDataModified -> Bool
Eq, Int -> DOMCharacterDataModified -> ShowS
[DOMCharacterDataModified] -> ShowS
DOMCharacterDataModified -> String
(Int -> DOMCharacterDataModified -> ShowS)
-> (DOMCharacterDataModified -> String)
-> ([DOMCharacterDataModified] -> ShowS)
-> Show DOMCharacterDataModified
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMCharacterDataModified] -> ShowS
$cshowList :: [DOMCharacterDataModified] -> ShowS
show :: DOMCharacterDataModified -> String
$cshow :: DOMCharacterDataModified -> String
showsPrec :: Int -> DOMCharacterDataModified -> ShowS
$cshowsPrec :: Int -> DOMCharacterDataModified -> ShowS
Show)
instance FromJSON DOMCharacterDataModified where
  parseJSON :: Value -> Parser DOMCharacterDataModified
parseJSON = String
-> (Object -> Parser DOMCharacterDataModified)
-> Value
-> Parser DOMCharacterDataModified
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMCharacterDataModified" ((Object -> Parser DOMCharacterDataModified)
 -> Value -> Parser DOMCharacterDataModified)
-> (Object -> Parser DOMCharacterDataModified)
-> Value
-> Parser DOMCharacterDataModified
forall a b. (a -> b) -> a -> b
$ \Object
o -> Int -> Text -> DOMCharacterDataModified
DOMCharacterDataModified
    (Int -> Text -> DOMCharacterDataModified)
-> Parser Int -> Parser (Text -> DOMCharacterDataModified)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"nodeId"
    Parser (Text -> DOMCharacterDataModified)
-> Parser Text -> Parser DOMCharacterDataModified
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"characterData"
instance Event DOMCharacterDataModified where
  eventName :: Proxy DOMCharacterDataModified -> String
eventName Proxy DOMCharacterDataModified
_ = String
"DOM.characterDataModified"

-- | Type of the 'DOM.childNodeCountUpdated' event.
data DOMChildNodeCountUpdated = DOMChildNodeCountUpdated
  {
    -- | Id of the node that has changed.
    DOMChildNodeCountUpdated -> Int
dOMChildNodeCountUpdatedNodeId :: DOMNodeId,
    -- | New node count.
    DOMChildNodeCountUpdated -> Int
dOMChildNodeCountUpdatedChildNodeCount :: Int
  }
  deriving (DOMChildNodeCountUpdated -> DOMChildNodeCountUpdated -> Bool
(DOMChildNodeCountUpdated -> DOMChildNodeCountUpdated -> Bool)
-> (DOMChildNodeCountUpdated -> DOMChildNodeCountUpdated -> Bool)
-> Eq DOMChildNodeCountUpdated
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMChildNodeCountUpdated -> DOMChildNodeCountUpdated -> Bool
$c/= :: DOMChildNodeCountUpdated -> DOMChildNodeCountUpdated -> Bool
== :: DOMChildNodeCountUpdated -> DOMChildNodeCountUpdated -> Bool
$c== :: DOMChildNodeCountUpdated -> DOMChildNodeCountUpdated -> Bool
Eq, Int -> DOMChildNodeCountUpdated -> ShowS
[DOMChildNodeCountUpdated] -> ShowS
DOMChildNodeCountUpdated -> String
(Int -> DOMChildNodeCountUpdated -> ShowS)
-> (DOMChildNodeCountUpdated -> String)
-> ([DOMChildNodeCountUpdated] -> ShowS)
-> Show DOMChildNodeCountUpdated
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMChildNodeCountUpdated] -> ShowS
$cshowList :: [DOMChildNodeCountUpdated] -> ShowS
show :: DOMChildNodeCountUpdated -> String
$cshow :: DOMChildNodeCountUpdated -> String
showsPrec :: Int -> DOMChildNodeCountUpdated -> ShowS
$cshowsPrec :: Int -> DOMChildNodeCountUpdated -> ShowS
Show)
instance FromJSON DOMChildNodeCountUpdated where
  parseJSON :: Value -> Parser DOMChildNodeCountUpdated
parseJSON = String
-> (Object -> Parser DOMChildNodeCountUpdated)
-> Value
-> Parser DOMChildNodeCountUpdated
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMChildNodeCountUpdated" ((Object -> Parser DOMChildNodeCountUpdated)
 -> Value -> Parser DOMChildNodeCountUpdated)
-> (Object -> Parser DOMChildNodeCountUpdated)
-> Value
-> Parser DOMChildNodeCountUpdated
forall a b. (a -> b) -> a -> b
$ \Object
o -> Int -> Int -> DOMChildNodeCountUpdated
DOMChildNodeCountUpdated
    (Int -> Int -> DOMChildNodeCountUpdated)
-> Parser Int -> Parser (Int -> DOMChildNodeCountUpdated)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"nodeId"
    Parser (Int -> DOMChildNodeCountUpdated)
-> Parser Int -> Parser DOMChildNodeCountUpdated
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"childNodeCount"
instance Event DOMChildNodeCountUpdated where
  eventName :: Proxy DOMChildNodeCountUpdated -> String
eventName Proxy DOMChildNodeCountUpdated
_ = String
"DOM.childNodeCountUpdated"

-- | Type of the 'DOM.childNodeInserted' event.
data DOMChildNodeInserted = DOMChildNodeInserted
  {
    -- | Id of the node that has changed.
    DOMChildNodeInserted -> Int
dOMChildNodeInsertedParentNodeId :: DOMNodeId,
    -- | Id of the previous sibling.
    DOMChildNodeInserted -> Int
dOMChildNodeInsertedPreviousNodeId :: DOMNodeId,
    -- | Inserted node data.
    DOMChildNodeInserted -> DOMNode
dOMChildNodeInsertedNode :: DOMNode
  }
  deriving (DOMChildNodeInserted -> DOMChildNodeInserted -> Bool
(DOMChildNodeInserted -> DOMChildNodeInserted -> Bool)
-> (DOMChildNodeInserted -> DOMChildNodeInserted -> Bool)
-> Eq DOMChildNodeInserted
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMChildNodeInserted -> DOMChildNodeInserted -> Bool
$c/= :: DOMChildNodeInserted -> DOMChildNodeInserted -> Bool
== :: DOMChildNodeInserted -> DOMChildNodeInserted -> Bool
$c== :: DOMChildNodeInserted -> DOMChildNodeInserted -> Bool
Eq, Int -> DOMChildNodeInserted -> ShowS
[DOMChildNodeInserted] -> ShowS
DOMChildNodeInserted -> String
(Int -> DOMChildNodeInserted -> ShowS)
-> (DOMChildNodeInserted -> String)
-> ([DOMChildNodeInserted] -> ShowS)
-> Show DOMChildNodeInserted
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMChildNodeInserted] -> ShowS
$cshowList :: [DOMChildNodeInserted] -> ShowS
show :: DOMChildNodeInserted -> String
$cshow :: DOMChildNodeInserted -> String
showsPrec :: Int -> DOMChildNodeInserted -> ShowS
$cshowsPrec :: Int -> DOMChildNodeInserted -> ShowS
Show)
instance FromJSON DOMChildNodeInserted where
  parseJSON :: Value -> Parser DOMChildNodeInserted
parseJSON = String
-> (Object -> Parser DOMChildNodeInserted)
-> Value
-> Parser DOMChildNodeInserted
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMChildNodeInserted" ((Object -> Parser DOMChildNodeInserted)
 -> Value -> Parser DOMChildNodeInserted)
-> (Object -> Parser DOMChildNodeInserted)
-> Value
-> Parser DOMChildNodeInserted
forall a b. (a -> b) -> a -> b
$ \Object
o -> Int -> Int -> DOMNode -> DOMChildNodeInserted
DOMChildNodeInserted
    (Int -> Int -> DOMNode -> DOMChildNodeInserted)
-> Parser Int -> Parser (Int -> DOMNode -> DOMChildNodeInserted)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"parentNodeId"
    Parser (Int -> DOMNode -> DOMChildNodeInserted)
-> Parser Int -> Parser (DOMNode -> DOMChildNodeInserted)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"previousNodeId"
    Parser (DOMNode -> DOMChildNodeInserted)
-> Parser DOMNode -> Parser DOMChildNodeInserted
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser DOMNode
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"node"
instance Event DOMChildNodeInserted where
  eventName :: Proxy DOMChildNodeInserted -> String
eventName Proxy DOMChildNodeInserted
_ = String
"DOM.childNodeInserted"

-- | Type of the 'DOM.childNodeRemoved' event.
data DOMChildNodeRemoved = DOMChildNodeRemoved
  {
    -- | Parent id.
    DOMChildNodeRemoved -> Int
dOMChildNodeRemovedParentNodeId :: DOMNodeId,
    -- | Id of the node that has been removed.
    DOMChildNodeRemoved -> Int
dOMChildNodeRemovedNodeId :: DOMNodeId
  }
  deriving (DOMChildNodeRemoved -> DOMChildNodeRemoved -> Bool
(DOMChildNodeRemoved -> DOMChildNodeRemoved -> Bool)
-> (DOMChildNodeRemoved -> DOMChildNodeRemoved -> Bool)
-> Eq DOMChildNodeRemoved
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMChildNodeRemoved -> DOMChildNodeRemoved -> Bool
$c/= :: DOMChildNodeRemoved -> DOMChildNodeRemoved -> Bool
== :: DOMChildNodeRemoved -> DOMChildNodeRemoved -> Bool
$c== :: DOMChildNodeRemoved -> DOMChildNodeRemoved -> Bool
Eq, Int -> DOMChildNodeRemoved -> ShowS
[DOMChildNodeRemoved] -> ShowS
DOMChildNodeRemoved -> String
(Int -> DOMChildNodeRemoved -> ShowS)
-> (DOMChildNodeRemoved -> String)
-> ([DOMChildNodeRemoved] -> ShowS)
-> Show DOMChildNodeRemoved
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMChildNodeRemoved] -> ShowS
$cshowList :: [DOMChildNodeRemoved] -> ShowS
show :: DOMChildNodeRemoved -> String
$cshow :: DOMChildNodeRemoved -> String
showsPrec :: Int -> DOMChildNodeRemoved -> ShowS
$cshowsPrec :: Int -> DOMChildNodeRemoved -> ShowS
Show)
instance FromJSON DOMChildNodeRemoved where
  parseJSON :: Value -> Parser DOMChildNodeRemoved
parseJSON = String
-> (Object -> Parser DOMChildNodeRemoved)
-> Value
-> Parser DOMChildNodeRemoved
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMChildNodeRemoved" ((Object -> Parser DOMChildNodeRemoved)
 -> Value -> Parser DOMChildNodeRemoved)
-> (Object -> Parser DOMChildNodeRemoved)
-> Value
-> Parser DOMChildNodeRemoved
forall a b. (a -> b) -> a -> b
$ \Object
o -> Int -> Int -> DOMChildNodeRemoved
DOMChildNodeRemoved
    (Int -> Int -> DOMChildNodeRemoved)
-> Parser Int -> Parser (Int -> DOMChildNodeRemoved)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"parentNodeId"
    Parser (Int -> DOMChildNodeRemoved)
-> Parser Int -> Parser DOMChildNodeRemoved
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"nodeId"
instance Event DOMChildNodeRemoved where
  eventName :: Proxy DOMChildNodeRemoved -> String
eventName Proxy DOMChildNodeRemoved
_ = String
"DOM.childNodeRemoved"

-- | Type of the 'DOM.distributedNodesUpdated' event.
data DOMDistributedNodesUpdated = DOMDistributedNodesUpdated
  {
    -- | Insertion point where distributed nodes were updated.
    DOMDistributedNodesUpdated -> Int
dOMDistributedNodesUpdatedInsertionPointId :: DOMNodeId,
    -- | Distributed nodes for given insertion point.
    DOMDistributedNodesUpdated -> [DOMBackendNode]
dOMDistributedNodesUpdatedDistributedNodes :: [DOMBackendNode]
  }
  deriving (DOMDistributedNodesUpdated -> DOMDistributedNodesUpdated -> Bool
(DOMDistributedNodesUpdated -> DOMDistributedNodesUpdated -> Bool)
-> (DOMDistributedNodesUpdated
    -> DOMDistributedNodesUpdated -> Bool)
-> Eq DOMDistributedNodesUpdated
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMDistributedNodesUpdated -> DOMDistributedNodesUpdated -> Bool
$c/= :: DOMDistributedNodesUpdated -> DOMDistributedNodesUpdated -> Bool
== :: DOMDistributedNodesUpdated -> DOMDistributedNodesUpdated -> Bool
$c== :: DOMDistributedNodesUpdated -> DOMDistributedNodesUpdated -> Bool
Eq, Int -> DOMDistributedNodesUpdated -> ShowS
[DOMDistributedNodesUpdated] -> ShowS
DOMDistributedNodesUpdated -> String
(Int -> DOMDistributedNodesUpdated -> ShowS)
-> (DOMDistributedNodesUpdated -> String)
-> ([DOMDistributedNodesUpdated] -> ShowS)
-> Show DOMDistributedNodesUpdated
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMDistributedNodesUpdated] -> ShowS
$cshowList :: [DOMDistributedNodesUpdated] -> ShowS
show :: DOMDistributedNodesUpdated -> String
$cshow :: DOMDistributedNodesUpdated -> String
showsPrec :: Int -> DOMDistributedNodesUpdated -> ShowS
$cshowsPrec :: Int -> DOMDistributedNodesUpdated -> ShowS
Show)
instance FromJSON DOMDistributedNodesUpdated where
  parseJSON :: Value -> Parser DOMDistributedNodesUpdated
parseJSON = String
-> (Object -> Parser DOMDistributedNodesUpdated)
-> Value
-> Parser DOMDistributedNodesUpdated
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMDistributedNodesUpdated" ((Object -> Parser DOMDistributedNodesUpdated)
 -> Value -> Parser DOMDistributedNodesUpdated)
-> (Object -> Parser DOMDistributedNodesUpdated)
-> Value
-> Parser DOMDistributedNodesUpdated
forall a b. (a -> b) -> a -> b
$ \Object
o -> Int -> [DOMBackendNode] -> DOMDistributedNodesUpdated
DOMDistributedNodesUpdated
    (Int -> [DOMBackendNode] -> DOMDistributedNodesUpdated)
-> Parser Int
-> Parser ([DOMBackendNode] -> DOMDistributedNodesUpdated)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"insertionPointId"
    Parser ([DOMBackendNode] -> DOMDistributedNodesUpdated)
-> Parser [DOMBackendNode] -> Parser DOMDistributedNodesUpdated
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser [DOMBackendNode]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"distributedNodes"
instance Event DOMDistributedNodesUpdated where
  eventName :: Proxy DOMDistributedNodesUpdated -> String
eventName Proxy DOMDistributedNodesUpdated
_ = String
"DOM.distributedNodesUpdated"

-- | Type of the 'DOM.documentUpdated' event.
data DOMDocumentUpdated = DOMDocumentUpdated
  deriving (DOMDocumentUpdated -> DOMDocumentUpdated -> Bool
(DOMDocumentUpdated -> DOMDocumentUpdated -> Bool)
-> (DOMDocumentUpdated -> DOMDocumentUpdated -> Bool)
-> Eq DOMDocumentUpdated
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMDocumentUpdated -> DOMDocumentUpdated -> Bool
$c/= :: DOMDocumentUpdated -> DOMDocumentUpdated -> Bool
== :: DOMDocumentUpdated -> DOMDocumentUpdated -> Bool
$c== :: DOMDocumentUpdated -> DOMDocumentUpdated -> Bool
Eq, Int -> DOMDocumentUpdated -> ShowS
[DOMDocumentUpdated] -> ShowS
DOMDocumentUpdated -> String
(Int -> DOMDocumentUpdated -> ShowS)
-> (DOMDocumentUpdated -> String)
-> ([DOMDocumentUpdated] -> ShowS)
-> Show DOMDocumentUpdated
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMDocumentUpdated] -> ShowS
$cshowList :: [DOMDocumentUpdated] -> ShowS
show :: DOMDocumentUpdated -> String
$cshow :: DOMDocumentUpdated -> String
showsPrec :: Int -> DOMDocumentUpdated -> ShowS
$cshowsPrec :: Int -> DOMDocumentUpdated -> ShowS
Show, ReadPrec [DOMDocumentUpdated]
ReadPrec DOMDocumentUpdated
Int -> ReadS DOMDocumentUpdated
ReadS [DOMDocumentUpdated]
(Int -> ReadS DOMDocumentUpdated)
-> ReadS [DOMDocumentUpdated]
-> ReadPrec DOMDocumentUpdated
-> ReadPrec [DOMDocumentUpdated]
-> Read DOMDocumentUpdated
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DOMDocumentUpdated]
$creadListPrec :: ReadPrec [DOMDocumentUpdated]
readPrec :: ReadPrec DOMDocumentUpdated
$creadPrec :: ReadPrec DOMDocumentUpdated
readList :: ReadS [DOMDocumentUpdated]
$creadList :: ReadS [DOMDocumentUpdated]
readsPrec :: Int -> ReadS DOMDocumentUpdated
$creadsPrec :: Int -> ReadS DOMDocumentUpdated
Read)
instance FromJSON DOMDocumentUpdated where
  parseJSON :: Value -> Parser DOMDocumentUpdated
parseJSON Value
_ = DOMDocumentUpdated -> Parser DOMDocumentUpdated
forall (f :: * -> *) a. Applicative f => a -> f a
pure DOMDocumentUpdated
DOMDocumentUpdated
instance Event DOMDocumentUpdated where
  eventName :: Proxy DOMDocumentUpdated -> String
eventName Proxy DOMDocumentUpdated
_ = String
"DOM.documentUpdated"

-- | Type of the 'DOM.inlineStyleInvalidated' event.
data DOMInlineStyleInvalidated = DOMInlineStyleInvalidated
  {
    -- | Ids of the nodes for which the inline styles have been invalidated.
    DOMInlineStyleInvalidated -> [Int]
dOMInlineStyleInvalidatedNodeIds :: [DOMNodeId]
  }
  deriving (DOMInlineStyleInvalidated -> DOMInlineStyleInvalidated -> Bool
(DOMInlineStyleInvalidated -> DOMInlineStyleInvalidated -> Bool)
-> (DOMInlineStyleInvalidated -> DOMInlineStyleInvalidated -> Bool)
-> Eq DOMInlineStyleInvalidated
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMInlineStyleInvalidated -> DOMInlineStyleInvalidated -> Bool
$c/= :: DOMInlineStyleInvalidated -> DOMInlineStyleInvalidated -> Bool
== :: DOMInlineStyleInvalidated -> DOMInlineStyleInvalidated -> Bool
$c== :: DOMInlineStyleInvalidated -> DOMInlineStyleInvalidated -> Bool
Eq, Int -> DOMInlineStyleInvalidated -> ShowS
[DOMInlineStyleInvalidated] -> ShowS
DOMInlineStyleInvalidated -> String
(Int -> DOMInlineStyleInvalidated -> ShowS)
-> (DOMInlineStyleInvalidated -> String)
-> ([DOMInlineStyleInvalidated] -> ShowS)
-> Show DOMInlineStyleInvalidated
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMInlineStyleInvalidated] -> ShowS
$cshowList :: [DOMInlineStyleInvalidated] -> ShowS
show :: DOMInlineStyleInvalidated -> String
$cshow :: DOMInlineStyleInvalidated -> String
showsPrec :: Int -> DOMInlineStyleInvalidated -> ShowS
$cshowsPrec :: Int -> DOMInlineStyleInvalidated -> ShowS
Show)
instance FromJSON DOMInlineStyleInvalidated where
  parseJSON :: Value -> Parser DOMInlineStyleInvalidated
parseJSON = String
-> (Object -> Parser DOMInlineStyleInvalidated)
-> Value
-> Parser DOMInlineStyleInvalidated
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMInlineStyleInvalidated" ((Object -> Parser DOMInlineStyleInvalidated)
 -> Value -> Parser DOMInlineStyleInvalidated)
-> (Object -> Parser DOMInlineStyleInvalidated)
-> Value
-> Parser DOMInlineStyleInvalidated
forall a b. (a -> b) -> a -> b
$ \Object
o -> [Int] -> DOMInlineStyleInvalidated
DOMInlineStyleInvalidated
    ([Int] -> DOMInlineStyleInvalidated)
-> Parser [Int] -> Parser DOMInlineStyleInvalidated
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser [Int]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"nodeIds"
instance Event DOMInlineStyleInvalidated where
  eventName :: Proxy DOMInlineStyleInvalidated -> String
eventName Proxy DOMInlineStyleInvalidated
_ = String
"DOM.inlineStyleInvalidated"

-- | Type of the 'DOM.pseudoElementAdded' event.
data DOMPseudoElementAdded = DOMPseudoElementAdded
  {
    -- | Pseudo element's parent element id.
    DOMPseudoElementAdded -> Int
dOMPseudoElementAddedParentId :: DOMNodeId,
    -- | The added pseudo element.
    DOMPseudoElementAdded -> DOMNode
dOMPseudoElementAddedPseudoElement :: DOMNode
  }
  deriving (DOMPseudoElementAdded -> DOMPseudoElementAdded -> Bool
(DOMPseudoElementAdded -> DOMPseudoElementAdded -> Bool)
-> (DOMPseudoElementAdded -> DOMPseudoElementAdded -> Bool)
-> Eq DOMPseudoElementAdded
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMPseudoElementAdded -> DOMPseudoElementAdded -> Bool
$c/= :: DOMPseudoElementAdded -> DOMPseudoElementAdded -> Bool
== :: DOMPseudoElementAdded -> DOMPseudoElementAdded -> Bool
$c== :: DOMPseudoElementAdded -> DOMPseudoElementAdded -> Bool
Eq, Int -> DOMPseudoElementAdded -> ShowS
[DOMPseudoElementAdded] -> ShowS
DOMPseudoElementAdded -> String
(Int -> DOMPseudoElementAdded -> ShowS)
-> (DOMPseudoElementAdded -> String)
-> ([DOMPseudoElementAdded] -> ShowS)
-> Show DOMPseudoElementAdded
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMPseudoElementAdded] -> ShowS
$cshowList :: [DOMPseudoElementAdded] -> ShowS
show :: DOMPseudoElementAdded -> String
$cshow :: DOMPseudoElementAdded -> String
showsPrec :: Int -> DOMPseudoElementAdded -> ShowS
$cshowsPrec :: Int -> DOMPseudoElementAdded -> ShowS
Show)
instance FromJSON DOMPseudoElementAdded where
  parseJSON :: Value -> Parser DOMPseudoElementAdded
parseJSON = String
-> (Object -> Parser DOMPseudoElementAdded)
-> Value
-> Parser DOMPseudoElementAdded
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMPseudoElementAdded" ((Object -> Parser DOMPseudoElementAdded)
 -> Value -> Parser DOMPseudoElementAdded)
-> (Object -> Parser DOMPseudoElementAdded)
-> Value
-> Parser DOMPseudoElementAdded
forall a b. (a -> b) -> a -> b
$ \Object
o -> Int -> DOMNode -> DOMPseudoElementAdded
DOMPseudoElementAdded
    (Int -> DOMNode -> DOMPseudoElementAdded)
-> Parser Int -> Parser (DOMNode -> DOMPseudoElementAdded)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"parentId"
    Parser (DOMNode -> DOMPseudoElementAdded)
-> Parser DOMNode -> Parser DOMPseudoElementAdded
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser DOMNode
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"pseudoElement"
instance Event DOMPseudoElementAdded where
  eventName :: Proxy DOMPseudoElementAdded -> String
eventName Proxy DOMPseudoElementAdded
_ = String
"DOM.pseudoElementAdded"

-- | Type of the 'DOM.topLayerElementsUpdated' event.
data DOMTopLayerElementsUpdated = DOMTopLayerElementsUpdated
  deriving (DOMTopLayerElementsUpdated -> DOMTopLayerElementsUpdated -> Bool
(DOMTopLayerElementsUpdated -> DOMTopLayerElementsUpdated -> Bool)
-> (DOMTopLayerElementsUpdated
    -> DOMTopLayerElementsUpdated -> Bool)
-> Eq DOMTopLayerElementsUpdated
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMTopLayerElementsUpdated -> DOMTopLayerElementsUpdated -> Bool
$c/= :: DOMTopLayerElementsUpdated -> DOMTopLayerElementsUpdated -> Bool
== :: DOMTopLayerElementsUpdated -> DOMTopLayerElementsUpdated -> Bool
$c== :: DOMTopLayerElementsUpdated -> DOMTopLayerElementsUpdated -> Bool
Eq, Int -> DOMTopLayerElementsUpdated -> ShowS
[DOMTopLayerElementsUpdated] -> ShowS
DOMTopLayerElementsUpdated -> String
(Int -> DOMTopLayerElementsUpdated -> ShowS)
-> (DOMTopLayerElementsUpdated -> String)
-> ([DOMTopLayerElementsUpdated] -> ShowS)
-> Show DOMTopLayerElementsUpdated
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMTopLayerElementsUpdated] -> ShowS
$cshowList :: [DOMTopLayerElementsUpdated] -> ShowS
show :: DOMTopLayerElementsUpdated -> String
$cshow :: DOMTopLayerElementsUpdated -> String
showsPrec :: Int -> DOMTopLayerElementsUpdated -> ShowS
$cshowsPrec :: Int -> DOMTopLayerElementsUpdated -> ShowS
Show, ReadPrec [DOMTopLayerElementsUpdated]
ReadPrec DOMTopLayerElementsUpdated
Int -> ReadS DOMTopLayerElementsUpdated
ReadS [DOMTopLayerElementsUpdated]
(Int -> ReadS DOMTopLayerElementsUpdated)
-> ReadS [DOMTopLayerElementsUpdated]
-> ReadPrec DOMTopLayerElementsUpdated
-> ReadPrec [DOMTopLayerElementsUpdated]
-> Read DOMTopLayerElementsUpdated
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DOMTopLayerElementsUpdated]
$creadListPrec :: ReadPrec [DOMTopLayerElementsUpdated]
readPrec :: ReadPrec DOMTopLayerElementsUpdated
$creadPrec :: ReadPrec DOMTopLayerElementsUpdated
readList :: ReadS [DOMTopLayerElementsUpdated]
$creadList :: ReadS [DOMTopLayerElementsUpdated]
readsPrec :: Int -> ReadS DOMTopLayerElementsUpdated
$creadsPrec :: Int -> ReadS DOMTopLayerElementsUpdated
Read)
instance FromJSON DOMTopLayerElementsUpdated where
  parseJSON :: Value -> Parser DOMTopLayerElementsUpdated
parseJSON Value
_ = DOMTopLayerElementsUpdated -> Parser DOMTopLayerElementsUpdated
forall (f :: * -> *) a. Applicative f => a -> f a
pure DOMTopLayerElementsUpdated
DOMTopLayerElementsUpdated
instance Event DOMTopLayerElementsUpdated where
  eventName :: Proxy DOMTopLayerElementsUpdated -> String
eventName Proxy DOMTopLayerElementsUpdated
_ = String
"DOM.topLayerElementsUpdated"

-- | Type of the 'DOM.pseudoElementRemoved' event.
data DOMPseudoElementRemoved = DOMPseudoElementRemoved
  {
    -- | Pseudo element's parent element id.
    DOMPseudoElementRemoved -> Int
dOMPseudoElementRemovedParentId :: DOMNodeId,
    -- | The removed pseudo element id.
    DOMPseudoElementRemoved -> Int
dOMPseudoElementRemovedPseudoElementId :: DOMNodeId
  }
  deriving (DOMPseudoElementRemoved -> DOMPseudoElementRemoved -> Bool
(DOMPseudoElementRemoved -> DOMPseudoElementRemoved -> Bool)
-> (DOMPseudoElementRemoved -> DOMPseudoElementRemoved -> Bool)
-> Eq DOMPseudoElementRemoved
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMPseudoElementRemoved -> DOMPseudoElementRemoved -> Bool
$c/= :: DOMPseudoElementRemoved -> DOMPseudoElementRemoved -> Bool
== :: DOMPseudoElementRemoved -> DOMPseudoElementRemoved -> Bool
$c== :: DOMPseudoElementRemoved -> DOMPseudoElementRemoved -> Bool
Eq, Int -> DOMPseudoElementRemoved -> ShowS
[DOMPseudoElementRemoved] -> ShowS
DOMPseudoElementRemoved -> String
(Int -> DOMPseudoElementRemoved -> ShowS)
-> (DOMPseudoElementRemoved -> String)
-> ([DOMPseudoElementRemoved] -> ShowS)
-> Show DOMPseudoElementRemoved
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMPseudoElementRemoved] -> ShowS
$cshowList :: [DOMPseudoElementRemoved] -> ShowS
show :: DOMPseudoElementRemoved -> String
$cshow :: DOMPseudoElementRemoved -> String
showsPrec :: Int -> DOMPseudoElementRemoved -> ShowS
$cshowsPrec :: Int -> DOMPseudoElementRemoved -> ShowS
Show)
instance FromJSON DOMPseudoElementRemoved where
  parseJSON :: Value -> Parser DOMPseudoElementRemoved
parseJSON = String
-> (Object -> Parser DOMPseudoElementRemoved)
-> Value
-> Parser DOMPseudoElementRemoved
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMPseudoElementRemoved" ((Object -> Parser DOMPseudoElementRemoved)
 -> Value -> Parser DOMPseudoElementRemoved)
-> (Object -> Parser DOMPseudoElementRemoved)
-> Value
-> Parser DOMPseudoElementRemoved
forall a b. (a -> b) -> a -> b
$ \Object
o -> Int -> Int -> DOMPseudoElementRemoved
DOMPseudoElementRemoved
    (Int -> Int -> DOMPseudoElementRemoved)
-> Parser Int -> Parser (Int -> DOMPseudoElementRemoved)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"parentId"
    Parser (Int -> DOMPseudoElementRemoved)
-> Parser Int -> Parser DOMPseudoElementRemoved
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"pseudoElementId"
instance Event DOMPseudoElementRemoved where
  eventName :: Proxy DOMPseudoElementRemoved -> String
eventName Proxy DOMPseudoElementRemoved
_ = String
"DOM.pseudoElementRemoved"

-- | Type of the 'DOM.setChildNodes' event.
data DOMSetChildNodes = DOMSetChildNodes
  {
    -- | Parent node id to populate with children.
    DOMSetChildNodes -> Int
dOMSetChildNodesParentId :: DOMNodeId,
    -- | Child nodes array.
    DOMSetChildNodes -> [DOMNode]
dOMSetChildNodesNodes :: [DOMNode]
  }
  deriving (DOMSetChildNodes -> DOMSetChildNodes -> Bool
(DOMSetChildNodes -> DOMSetChildNodes -> Bool)
-> (DOMSetChildNodes -> DOMSetChildNodes -> Bool)
-> Eq DOMSetChildNodes
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMSetChildNodes -> DOMSetChildNodes -> Bool
$c/= :: DOMSetChildNodes -> DOMSetChildNodes -> Bool
== :: DOMSetChildNodes -> DOMSetChildNodes -> Bool
$c== :: DOMSetChildNodes -> DOMSetChildNodes -> Bool
Eq, Int -> DOMSetChildNodes -> ShowS
[DOMSetChildNodes] -> ShowS
DOMSetChildNodes -> String
(Int -> DOMSetChildNodes -> ShowS)
-> (DOMSetChildNodes -> String)
-> ([DOMSetChildNodes] -> ShowS)
-> Show DOMSetChildNodes
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMSetChildNodes] -> ShowS
$cshowList :: [DOMSetChildNodes] -> ShowS
show :: DOMSetChildNodes -> String
$cshow :: DOMSetChildNodes -> String
showsPrec :: Int -> DOMSetChildNodes -> ShowS
$cshowsPrec :: Int -> DOMSetChildNodes -> ShowS
Show)
instance FromJSON DOMSetChildNodes where
  parseJSON :: Value -> Parser DOMSetChildNodes
parseJSON = String
-> (Object -> Parser DOMSetChildNodes)
-> Value
-> Parser DOMSetChildNodes
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMSetChildNodes" ((Object -> Parser DOMSetChildNodes)
 -> Value -> Parser DOMSetChildNodes)
-> (Object -> Parser DOMSetChildNodes)
-> Value
-> Parser DOMSetChildNodes
forall a b. (a -> b) -> a -> b
$ \Object
o -> Int -> [DOMNode] -> DOMSetChildNodes
DOMSetChildNodes
    (Int -> [DOMNode] -> DOMSetChildNodes)
-> Parser Int -> Parser ([DOMNode] -> DOMSetChildNodes)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"parentId"
    Parser ([DOMNode] -> DOMSetChildNodes)
-> Parser [DOMNode] -> Parser DOMSetChildNodes
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser [DOMNode]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"nodes"
instance Event DOMSetChildNodes where
  eventName :: Proxy DOMSetChildNodes -> String
eventName Proxy DOMSetChildNodes
_ = String
"DOM.setChildNodes"

-- | Type of the 'DOM.shadowRootPopped' event.
data DOMShadowRootPopped = DOMShadowRootPopped
  {
    -- | Host element id.
    DOMShadowRootPopped -> Int
dOMShadowRootPoppedHostId :: DOMNodeId,
    -- | Shadow root id.
    DOMShadowRootPopped -> Int
dOMShadowRootPoppedRootId :: DOMNodeId
  }
  deriving (DOMShadowRootPopped -> DOMShadowRootPopped -> Bool
(DOMShadowRootPopped -> DOMShadowRootPopped -> Bool)
-> (DOMShadowRootPopped -> DOMShadowRootPopped -> Bool)
-> Eq DOMShadowRootPopped
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMShadowRootPopped -> DOMShadowRootPopped -> Bool
$c/= :: DOMShadowRootPopped -> DOMShadowRootPopped -> Bool
== :: DOMShadowRootPopped -> DOMShadowRootPopped -> Bool
$c== :: DOMShadowRootPopped -> DOMShadowRootPopped -> Bool
Eq, Int -> DOMShadowRootPopped -> ShowS
[DOMShadowRootPopped] -> ShowS
DOMShadowRootPopped -> String
(Int -> DOMShadowRootPopped -> ShowS)
-> (DOMShadowRootPopped -> String)
-> ([DOMShadowRootPopped] -> ShowS)
-> Show DOMShadowRootPopped
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMShadowRootPopped] -> ShowS
$cshowList :: [DOMShadowRootPopped] -> ShowS
show :: DOMShadowRootPopped -> String
$cshow :: DOMShadowRootPopped -> String
showsPrec :: Int -> DOMShadowRootPopped -> ShowS
$cshowsPrec :: Int -> DOMShadowRootPopped -> ShowS
Show)
instance FromJSON DOMShadowRootPopped where
  parseJSON :: Value -> Parser DOMShadowRootPopped
parseJSON = String
-> (Object -> Parser DOMShadowRootPopped)
-> Value
-> Parser DOMShadowRootPopped
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMShadowRootPopped" ((Object -> Parser DOMShadowRootPopped)
 -> Value -> Parser DOMShadowRootPopped)
-> (Object -> Parser DOMShadowRootPopped)
-> Value
-> Parser DOMShadowRootPopped
forall a b. (a -> b) -> a -> b
$ \Object
o -> Int -> Int -> DOMShadowRootPopped
DOMShadowRootPopped
    (Int -> Int -> DOMShadowRootPopped)
-> Parser Int -> Parser (Int -> DOMShadowRootPopped)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"hostId"
    Parser (Int -> DOMShadowRootPopped)
-> Parser Int -> Parser DOMShadowRootPopped
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"rootId"
instance Event DOMShadowRootPopped where
  eventName :: Proxy DOMShadowRootPopped -> String
eventName Proxy DOMShadowRootPopped
_ = String
"DOM.shadowRootPopped"

-- | Type of the 'DOM.shadowRootPushed' event.
data DOMShadowRootPushed = DOMShadowRootPushed
  {
    -- | Host element id.
    DOMShadowRootPushed -> Int
dOMShadowRootPushedHostId :: DOMNodeId,
    -- | Shadow root.
    DOMShadowRootPushed -> DOMNode
dOMShadowRootPushedRoot :: DOMNode
  }
  deriving (DOMShadowRootPushed -> DOMShadowRootPushed -> Bool
(DOMShadowRootPushed -> DOMShadowRootPushed -> Bool)
-> (DOMShadowRootPushed -> DOMShadowRootPushed -> Bool)
-> Eq DOMShadowRootPushed
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMShadowRootPushed -> DOMShadowRootPushed -> Bool
$c/= :: DOMShadowRootPushed -> DOMShadowRootPushed -> Bool
== :: DOMShadowRootPushed -> DOMShadowRootPushed -> Bool
$c== :: DOMShadowRootPushed -> DOMShadowRootPushed -> Bool
Eq, Int -> DOMShadowRootPushed -> ShowS
[DOMShadowRootPushed] -> ShowS
DOMShadowRootPushed -> String
(Int -> DOMShadowRootPushed -> ShowS)
-> (DOMShadowRootPushed -> String)
-> ([DOMShadowRootPushed] -> ShowS)
-> Show DOMShadowRootPushed
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMShadowRootPushed] -> ShowS
$cshowList :: [DOMShadowRootPushed] -> ShowS
show :: DOMShadowRootPushed -> String
$cshow :: DOMShadowRootPushed -> String
showsPrec :: Int -> DOMShadowRootPushed -> ShowS
$cshowsPrec :: Int -> DOMShadowRootPushed -> ShowS
Show)
instance FromJSON DOMShadowRootPushed where
  parseJSON :: Value -> Parser DOMShadowRootPushed
parseJSON = String
-> (Object -> Parser DOMShadowRootPushed)
-> Value
-> Parser DOMShadowRootPushed
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMShadowRootPushed" ((Object -> Parser DOMShadowRootPushed)
 -> Value -> Parser DOMShadowRootPushed)
-> (Object -> Parser DOMShadowRootPushed)
-> Value
-> Parser DOMShadowRootPushed
forall a b. (a -> b) -> a -> b
$ \Object
o -> Int -> DOMNode -> DOMShadowRootPushed
DOMShadowRootPushed
    (Int -> DOMNode -> DOMShadowRootPushed)
-> Parser Int -> Parser (DOMNode -> DOMShadowRootPushed)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"hostId"
    Parser (DOMNode -> DOMShadowRootPushed)
-> Parser DOMNode -> Parser DOMShadowRootPushed
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser DOMNode
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"root"
instance Event DOMShadowRootPushed where
  eventName :: Proxy DOMShadowRootPushed -> String
eventName Proxy DOMShadowRootPushed
_ = String
"DOM.shadowRootPushed"

-- | Collects class names for the node with given id and all of it's child nodes.

-- | Parameters of the 'DOM.collectClassNamesFromSubtree' command.
data PDOMCollectClassNamesFromSubtree = PDOMCollectClassNamesFromSubtree
  {
    -- | Id of the node to collect class names.
    PDOMCollectClassNamesFromSubtree -> Int
pDOMCollectClassNamesFromSubtreeNodeId :: DOMNodeId
  }
  deriving (PDOMCollectClassNamesFromSubtree
-> PDOMCollectClassNamesFromSubtree -> Bool
(PDOMCollectClassNamesFromSubtree
 -> PDOMCollectClassNamesFromSubtree -> Bool)
-> (PDOMCollectClassNamesFromSubtree
    -> PDOMCollectClassNamesFromSubtree -> Bool)
-> Eq PDOMCollectClassNamesFromSubtree
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMCollectClassNamesFromSubtree
-> PDOMCollectClassNamesFromSubtree -> Bool
$c/= :: PDOMCollectClassNamesFromSubtree
-> PDOMCollectClassNamesFromSubtree -> Bool
== :: PDOMCollectClassNamesFromSubtree
-> PDOMCollectClassNamesFromSubtree -> Bool
$c== :: PDOMCollectClassNamesFromSubtree
-> PDOMCollectClassNamesFromSubtree -> Bool
Eq, Int -> PDOMCollectClassNamesFromSubtree -> ShowS
[PDOMCollectClassNamesFromSubtree] -> ShowS
PDOMCollectClassNamesFromSubtree -> String
(Int -> PDOMCollectClassNamesFromSubtree -> ShowS)
-> (PDOMCollectClassNamesFromSubtree -> String)
-> ([PDOMCollectClassNamesFromSubtree] -> ShowS)
-> Show PDOMCollectClassNamesFromSubtree
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMCollectClassNamesFromSubtree] -> ShowS
$cshowList :: [PDOMCollectClassNamesFromSubtree] -> ShowS
show :: PDOMCollectClassNamesFromSubtree -> String
$cshow :: PDOMCollectClassNamesFromSubtree -> String
showsPrec :: Int -> PDOMCollectClassNamesFromSubtree -> ShowS
$cshowsPrec :: Int -> PDOMCollectClassNamesFromSubtree -> ShowS
Show)
pDOMCollectClassNamesFromSubtree
  {-
  -- | Id of the node to collect class names.
  -}
  :: DOMNodeId
  -> PDOMCollectClassNamesFromSubtree
pDOMCollectClassNamesFromSubtree :: Int -> PDOMCollectClassNamesFromSubtree
pDOMCollectClassNamesFromSubtree
  Int
arg_pDOMCollectClassNamesFromSubtreeNodeId
  = Int -> PDOMCollectClassNamesFromSubtree
PDOMCollectClassNamesFromSubtree
    Int
arg_pDOMCollectClassNamesFromSubtreeNodeId
instance ToJSON PDOMCollectClassNamesFromSubtree where
  toJSON :: PDOMCollectClassNamesFromSubtree -> Value
toJSON PDOMCollectClassNamesFromSubtree
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"nodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PDOMCollectClassNamesFromSubtree -> Int
pDOMCollectClassNamesFromSubtreeNodeId PDOMCollectClassNamesFromSubtree
p)
    ]
data DOMCollectClassNamesFromSubtree = DOMCollectClassNamesFromSubtree
  {
    -- | Class name list.
    DOMCollectClassNamesFromSubtree -> [Text]
dOMCollectClassNamesFromSubtreeClassNames :: [T.Text]
  }
  deriving (DOMCollectClassNamesFromSubtree
-> DOMCollectClassNamesFromSubtree -> Bool
(DOMCollectClassNamesFromSubtree
 -> DOMCollectClassNamesFromSubtree -> Bool)
-> (DOMCollectClassNamesFromSubtree
    -> DOMCollectClassNamesFromSubtree -> Bool)
-> Eq DOMCollectClassNamesFromSubtree
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMCollectClassNamesFromSubtree
-> DOMCollectClassNamesFromSubtree -> Bool
$c/= :: DOMCollectClassNamesFromSubtree
-> DOMCollectClassNamesFromSubtree -> Bool
== :: DOMCollectClassNamesFromSubtree
-> DOMCollectClassNamesFromSubtree -> Bool
$c== :: DOMCollectClassNamesFromSubtree
-> DOMCollectClassNamesFromSubtree -> Bool
Eq, Int -> DOMCollectClassNamesFromSubtree -> ShowS
[DOMCollectClassNamesFromSubtree] -> ShowS
DOMCollectClassNamesFromSubtree -> String
(Int -> DOMCollectClassNamesFromSubtree -> ShowS)
-> (DOMCollectClassNamesFromSubtree -> String)
-> ([DOMCollectClassNamesFromSubtree] -> ShowS)
-> Show DOMCollectClassNamesFromSubtree
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMCollectClassNamesFromSubtree] -> ShowS
$cshowList :: [DOMCollectClassNamesFromSubtree] -> ShowS
show :: DOMCollectClassNamesFromSubtree -> String
$cshow :: DOMCollectClassNamesFromSubtree -> String
showsPrec :: Int -> DOMCollectClassNamesFromSubtree -> ShowS
$cshowsPrec :: Int -> DOMCollectClassNamesFromSubtree -> ShowS
Show)
instance FromJSON DOMCollectClassNamesFromSubtree where
  parseJSON :: Value -> Parser DOMCollectClassNamesFromSubtree
parseJSON = String
-> (Object -> Parser DOMCollectClassNamesFromSubtree)
-> Value
-> Parser DOMCollectClassNamesFromSubtree
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMCollectClassNamesFromSubtree" ((Object -> Parser DOMCollectClassNamesFromSubtree)
 -> Value -> Parser DOMCollectClassNamesFromSubtree)
-> (Object -> Parser DOMCollectClassNamesFromSubtree)
-> Value
-> Parser DOMCollectClassNamesFromSubtree
forall a b. (a -> b) -> a -> b
$ \Object
o -> [Text] -> DOMCollectClassNamesFromSubtree
DOMCollectClassNamesFromSubtree
    ([Text] -> DOMCollectClassNamesFromSubtree)
-> Parser [Text] -> Parser DOMCollectClassNamesFromSubtree
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser [Text]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"classNames"
instance Command PDOMCollectClassNamesFromSubtree where
  type CommandResponse PDOMCollectClassNamesFromSubtree = DOMCollectClassNamesFromSubtree
  commandName :: Proxy PDOMCollectClassNamesFromSubtree -> String
commandName Proxy PDOMCollectClassNamesFromSubtree
_ = String
"DOM.collectClassNamesFromSubtree"

-- | Creates a deep copy of the specified node and places it into the target container before the
--   given anchor.

-- | Parameters of the 'DOM.copyTo' command.
data PDOMCopyTo = PDOMCopyTo
  {
    -- | Id of the node to copy.
    PDOMCopyTo -> Int
pDOMCopyToNodeId :: DOMNodeId,
    -- | Id of the element to drop the copy into.
    PDOMCopyTo -> Int
pDOMCopyToTargetNodeId :: DOMNodeId,
    -- | Drop the copy before this node (if absent, the copy becomes the last child of
    --   `targetNodeId`).
    PDOMCopyTo -> Maybe Int
pDOMCopyToInsertBeforeNodeId :: Maybe DOMNodeId
  }
  deriving (PDOMCopyTo -> PDOMCopyTo -> Bool
(PDOMCopyTo -> PDOMCopyTo -> Bool)
-> (PDOMCopyTo -> PDOMCopyTo -> Bool) -> Eq PDOMCopyTo
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMCopyTo -> PDOMCopyTo -> Bool
$c/= :: PDOMCopyTo -> PDOMCopyTo -> Bool
== :: PDOMCopyTo -> PDOMCopyTo -> Bool
$c== :: PDOMCopyTo -> PDOMCopyTo -> Bool
Eq, Int -> PDOMCopyTo -> ShowS
[PDOMCopyTo] -> ShowS
PDOMCopyTo -> String
(Int -> PDOMCopyTo -> ShowS)
-> (PDOMCopyTo -> String)
-> ([PDOMCopyTo] -> ShowS)
-> Show PDOMCopyTo
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMCopyTo] -> ShowS
$cshowList :: [PDOMCopyTo] -> ShowS
show :: PDOMCopyTo -> String
$cshow :: PDOMCopyTo -> String
showsPrec :: Int -> PDOMCopyTo -> ShowS
$cshowsPrec :: Int -> PDOMCopyTo -> ShowS
Show)
pDOMCopyTo
  {-
  -- | Id of the node to copy.
  -}
  :: DOMNodeId
  {-
  -- | Id of the element to drop the copy into.
  -}
  -> DOMNodeId
  -> PDOMCopyTo
pDOMCopyTo :: Int -> Int -> PDOMCopyTo
pDOMCopyTo
  Int
arg_pDOMCopyToNodeId
  Int
arg_pDOMCopyToTargetNodeId
  = Int -> Int -> Maybe Int -> PDOMCopyTo
PDOMCopyTo
    Int
arg_pDOMCopyToNodeId
    Int
arg_pDOMCopyToTargetNodeId
    Maybe Int
forall a. Maybe a
Nothing
instance ToJSON PDOMCopyTo where
  toJSON :: PDOMCopyTo -> Value
toJSON PDOMCopyTo
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"nodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PDOMCopyTo -> Int
pDOMCopyToNodeId PDOMCopyTo
p),
    (Text
"targetNodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PDOMCopyTo -> Int
pDOMCopyToTargetNodeId PDOMCopyTo
p),
    (Text
"insertBeforeNodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMCopyTo -> Maybe Int
pDOMCopyToInsertBeforeNodeId PDOMCopyTo
p)
    ]
data DOMCopyTo = DOMCopyTo
  {
    -- | Id of the node clone.
    DOMCopyTo -> Int
dOMCopyToNodeId :: DOMNodeId
  }
  deriving (DOMCopyTo -> DOMCopyTo -> Bool
(DOMCopyTo -> DOMCopyTo -> Bool)
-> (DOMCopyTo -> DOMCopyTo -> Bool) -> Eq DOMCopyTo
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMCopyTo -> DOMCopyTo -> Bool
$c/= :: DOMCopyTo -> DOMCopyTo -> Bool
== :: DOMCopyTo -> DOMCopyTo -> Bool
$c== :: DOMCopyTo -> DOMCopyTo -> Bool
Eq, Int -> DOMCopyTo -> ShowS
[DOMCopyTo] -> ShowS
DOMCopyTo -> String
(Int -> DOMCopyTo -> ShowS)
-> (DOMCopyTo -> String)
-> ([DOMCopyTo] -> ShowS)
-> Show DOMCopyTo
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMCopyTo] -> ShowS
$cshowList :: [DOMCopyTo] -> ShowS
show :: DOMCopyTo -> String
$cshow :: DOMCopyTo -> String
showsPrec :: Int -> DOMCopyTo -> ShowS
$cshowsPrec :: Int -> DOMCopyTo -> ShowS
Show)
instance FromJSON DOMCopyTo where
  parseJSON :: Value -> Parser DOMCopyTo
parseJSON = String -> (Object -> Parser DOMCopyTo) -> Value -> Parser DOMCopyTo
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMCopyTo" ((Object -> Parser DOMCopyTo) -> Value -> Parser DOMCopyTo)
-> (Object -> Parser DOMCopyTo) -> Value -> Parser DOMCopyTo
forall a b. (a -> b) -> a -> b
$ \Object
o -> Int -> DOMCopyTo
DOMCopyTo
    (Int -> DOMCopyTo) -> Parser Int -> Parser DOMCopyTo
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"nodeId"
instance Command PDOMCopyTo where
  type CommandResponse PDOMCopyTo = DOMCopyTo
  commandName :: Proxy PDOMCopyTo -> String
commandName Proxy PDOMCopyTo
_ = String
"DOM.copyTo"

-- | Describes node given its id, does not require domain to be enabled. Does not start tracking any
--   objects, can be used for automation.

-- | Parameters of the 'DOM.describeNode' command.
data PDOMDescribeNode = PDOMDescribeNode
  {
    -- | Identifier of the node.
    PDOMDescribeNode -> Maybe Int
pDOMDescribeNodeNodeId :: Maybe DOMNodeId,
    -- | Identifier of the backend node.
    PDOMDescribeNode -> Maybe Int
pDOMDescribeNodeBackendNodeId :: Maybe DOMBackendNodeId,
    -- | JavaScript object id of the node wrapper.
    PDOMDescribeNode -> Maybe Text
pDOMDescribeNodeObjectId :: Maybe Runtime.RuntimeRemoteObjectId,
    -- | The maximum depth at which children should be retrieved, defaults to 1. Use -1 for the
    --   entire subtree or provide an integer larger than 0.
    PDOMDescribeNode -> Maybe Int
pDOMDescribeNodeDepth :: Maybe Int,
    -- | Whether or not iframes and shadow roots should be traversed when returning the subtree
    --   (default is false).
    PDOMDescribeNode -> Maybe Bool
pDOMDescribeNodePierce :: Maybe Bool
  }
  deriving (PDOMDescribeNode -> PDOMDescribeNode -> Bool
(PDOMDescribeNode -> PDOMDescribeNode -> Bool)
-> (PDOMDescribeNode -> PDOMDescribeNode -> Bool)
-> Eq PDOMDescribeNode
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMDescribeNode -> PDOMDescribeNode -> Bool
$c/= :: PDOMDescribeNode -> PDOMDescribeNode -> Bool
== :: PDOMDescribeNode -> PDOMDescribeNode -> Bool
$c== :: PDOMDescribeNode -> PDOMDescribeNode -> Bool
Eq, Int -> PDOMDescribeNode -> ShowS
[PDOMDescribeNode] -> ShowS
PDOMDescribeNode -> String
(Int -> PDOMDescribeNode -> ShowS)
-> (PDOMDescribeNode -> String)
-> ([PDOMDescribeNode] -> ShowS)
-> Show PDOMDescribeNode
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMDescribeNode] -> ShowS
$cshowList :: [PDOMDescribeNode] -> ShowS
show :: PDOMDescribeNode -> String
$cshow :: PDOMDescribeNode -> String
showsPrec :: Int -> PDOMDescribeNode -> ShowS
$cshowsPrec :: Int -> PDOMDescribeNode -> ShowS
Show)
pDOMDescribeNode
  :: PDOMDescribeNode
pDOMDescribeNode :: PDOMDescribeNode
pDOMDescribeNode
  = Maybe Int
-> Maybe Int
-> Maybe Text
-> Maybe Int
-> Maybe Bool
-> PDOMDescribeNode
PDOMDescribeNode
    Maybe Int
forall a. Maybe a
Nothing
    Maybe Int
forall a. Maybe a
Nothing
    Maybe Text
forall a. Maybe a
Nothing
    Maybe Int
forall a. Maybe a
Nothing
    Maybe Bool
forall a. Maybe a
Nothing
instance ToJSON PDOMDescribeNode where
  toJSON :: PDOMDescribeNode -> Value
toJSON PDOMDescribeNode
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"nodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMDescribeNode -> Maybe Int
pDOMDescribeNodeNodeId PDOMDescribeNode
p),
    (Text
"backendNodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMDescribeNode -> Maybe Int
pDOMDescribeNodeBackendNodeId PDOMDescribeNode
p),
    (Text
"objectId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMDescribeNode -> Maybe Text
pDOMDescribeNodeObjectId PDOMDescribeNode
p),
    (Text
"depth" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMDescribeNode -> Maybe Int
pDOMDescribeNodeDepth PDOMDescribeNode
p),
    (Text
"pierce" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMDescribeNode -> Maybe Bool
pDOMDescribeNodePierce PDOMDescribeNode
p)
    ]
data DOMDescribeNode = DOMDescribeNode
  {
    -- | Node description.
    DOMDescribeNode -> DOMNode
dOMDescribeNodeNode :: DOMNode
  }
  deriving (DOMDescribeNode -> DOMDescribeNode -> Bool
(DOMDescribeNode -> DOMDescribeNode -> Bool)
-> (DOMDescribeNode -> DOMDescribeNode -> Bool)
-> Eq DOMDescribeNode
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMDescribeNode -> DOMDescribeNode -> Bool
$c/= :: DOMDescribeNode -> DOMDescribeNode -> Bool
== :: DOMDescribeNode -> DOMDescribeNode -> Bool
$c== :: DOMDescribeNode -> DOMDescribeNode -> Bool
Eq, Int -> DOMDescribeNode -> ShowS
[DOMDescribeNode] -> ShowS
DOMDescribeNode -> String
(Int -> DOMDescribeNode -> ShowS)
-> (DOMDescribeNode -> String)
-> ([DOMDescribeNode] -> ShowS)
-> Show DOMDescribeNode
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMDescribeNode] -> ShowS
$cshowList :: [DOMDescribeNode] -> ShowS
show :: DOMDescribeNode -> String
$cshow :: DOMDescribeNode -> String
showsPrec :: Int -> DOMDescribeNode -> ShowS
$cshowsPrec :: Int -> DOMDescribeNode -> ShowS
Show)
instance FromJSON DOMDescribeNode where
  parseJSON :: Value -> Parser DOMDescribeNode
parseJSON = String
-> (Object -> Parser DOMDescribeNode)
-> Value
-> Parser DOMDescribeNode
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMDescribeNode" ((Object -> Parser DOMDescribeNode)
 -> Value -> Parser DOMDescribeNode)
-> (Object -> Parser DOMDescribeNode)
-> Value
-> Parser DOMDescribeNode
forall a b. (a -> b) -> a -> b
$ \Object
o -> DOMNode -> DOMDescribeNode
DOMDescribeNode
    (DOMNode -> DOMDescribeNode)
-> Parser DOMNode -> Parser DOMDescribeNode
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser DOMNode
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"node"
instance Command PDOMDescribeNode where
  type CommandResponse PDOMDescribeNode = DOMDescribeNode
  commandName :: Proxy PDOMDescribeNode -> String
commandName Proxy PDOMDescribeNode
_ = String
"DOM.describeNode"

-- | Scrolls the specified rect of the given node into view if not already visible.
--   Note: exactly one between nodeId, backendNodeId and objectId should be passed
--   to identify the node.

-- | Parameters of the 'DOM.scrollIntoViewIfNeeded' command.
data PDOMScrollIntoViewIfNeeded = PDOMScrollIntoViewIfNeeded
  {
    -- | Identifier of the node.
    PDOMScrollIntoViewIfNeeded -> Maybe Int
pDOMScrollIntoViewIfNeededNodeId :: Maybe DOMNodeId,
    -- | Identifier of the backend node.
    PDOMScrollIntoViewIfNeeded -> Maybe Int
pDOMScrollIntoViewIfNeededBackendNodeId :: Maybe DOMBackendNodeId,
    -- | JavaScript object id of the node wrapper.
    PDOMScrollIntoViewIfNeeded -> Maybe Text
pDOMScrollIntoViewIfNeededObjectId :: Maybe Runtime.RuntimeRemoteObjectId,
    -- | The rect to be scrolled into view, relative to the node's border box, in CSS pixels.
    --   When omitted, center of the node will be used, similar to Element.scrollIntoView.
    PDOMScrollIntoViewIfNeeded -> Maybe DOMRect
pDOMScrollIntoViewIfNeededRect :: Maybe DOMRect
  }
  deriving (PDOMScrollIntoViewIfNeeded -> PDOMScrollIntoViewIfNeeded -> Bool
(PDOMScrollIntoViewIfNeeded -> PDOMScrollIntoViewIfNeeded -> Bool)
-> (PDOMScrollIntoViewIfNeeded
    -> PDOMScrollIntoViewIfNeeded -> Bool)
-> Eq PDOMScrollIntoViewIfNeeded
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMScrollIntoViewIfNeeded -> PDOMScrollIntoViewIfNeeded -> Bool
$c/= :: PDOMScrollIntoViewIfNeeded -> PDOMScrollIntoViewIfNeeded -> Bool
== :: PDOMScrollIntoViewIfNeeded -> PDOMScrollIntoViewIfNeeded -> Bool
$c== :: PDOMScrollIntoViewIfNeeded -> PDOMScrollIntoViewIfNeeded -> Bool
Eq, Int -> PDOMScrollIntoViewIfNeeded -> ShowS
[PDOMScrollIntoViewIfNeeded] -> ShowS
PDOMScrollIntoViewIfNeeded -> String
(Int -> PDOMScrollIntoViewIfNeeded -> ShowS)
-> (PDOMScrollIntoViewIfNeeded -> String)
-> ([PDOMScrollIntoViewIfNeeded] -> ShowS)
-> Show PDOMScrollIntoViewIfNeeded
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMScrollIntoViewIfNeeded] -> ShowS
$cshowList :: [PDOMScrollIntoViewIfNeeded] -> ShowS
show :: PDOMScrollIntoViewIfNeeded -> String
$cshow :: PDOMScrollIntoViewIfNeeded -> String
showsPrec :: Int -> PDOMScrollIntoViewIfNeeded -> ShowS
$cshowsPrec :: Int -> PDOMScrollIntoViewIfNeeded -> ShowS
Show)
pDOMScrollIntoViewIfNeeded
  :: PDOMScrollIntoViewIfNeeded
pDOMScrollIntoViewIfNeeded :: PDOMScrollIntoViewIfNeeded
pDOMScrollIntoViewIfNeeded
  = Maybe Int
-> Maybe Int
-> Maybe Text
-> Maybe DOMRect
-> PDOMScrollIntoViewIfNeeded
PDOMScrollIntoViewIfNeeded
    Maybe Int
forall a. Maybe a
Nothing
    Maybe Int
forall a. Maybe a
Nothing
    Maybe Text
forall a. Maybe a
Nothing
    Maybe DOMRect
forall a. Maybe a
Nothing
instance ToJSON PDOMScrollIntoViewIfNeeded where
  toJSON :: PDOMScrollIntoViewIfNeeded -> Value
toJSON PDOMScrollIntoViewIfNeeded
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"nodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMScrollIntoViewIfNeeded -> Maybe Int
pDOMScrollIntoViewIfNeededNodeId PDOMScrollIntoViewIfNeeded
p),
    (Text
"backendNodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMScrollIntoViewIfNeeded -> Maybe Int
pDOMScrollIntoViewIfNeededBackendNodeId PDOMScrollIntoViewIfNeeded
p),
    (Text
"objectId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMScrollIntoViewIfNeeded -> Maybe Text
pDOMScrollIntoViewIfNeededObjectId PDOMScrollIntoViewIfNeeded
p),
    (Text
"rect" Text -> DOMRect -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (DOMRect -> Pair) -> Maybe DOMRect -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMScrollIntoViewIfNeeded -> Maybe DOMRect
pDOMScrollIntoViewIfNeededRect PDOMScrollIntoViewIfNeeded
p)
    ]
instance Command PDOMScrollIntoViewIfNeeded where
  type CommandResponse PDOMScrollIntoViewIfNeeded = ()
  commandName :: Proxy PDOMScrollIntoViewIfNeeded -> String
commandName Proxy PDOMScrollIntoViewIfNeeded
_ = String
"DOM.scrollIntoViewIfNeeded"
  fromJSON :: Proxy PDOMScrollIntoViewIfNeeded
-> Value -> Result (CommandResponse PDOMScrollIntoViewIfNeeded)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PDOMScrollIntoViewIfNeeded -> Result ())
-> Proxy PDOMScrollIntoViewIfNeeded
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PDOMScrollIntoViewIfNeeded -> ())
-> Proxy PDOMScrollIntoViewIfNeeded
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PDOMScrollIntoViewIfNeeded -> ()
forall a b. a -> b -> a
const ()

-- | Disables DOM agent for the given page.

-- | Parameters of the 'DOM.disable' command.
data PDOMDisable = PDOMDisable
  deriving (PDOMDisable -> PDOMDisable -> Bool
(PDOMDisable -> PDOMDisable -> Bool)
-> (PDOMDisable -> PDOMDisable -> Bool) -> Eq PDOMDisable
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMDisable -> PDOMDisable -> Bool
$c/= :: PDOMDisable -> PDOMDisable -> Bool
== :: PDOMDisable -> PDOMDisable -> Bool
$c== :: PDOMDisable -> PDOMDisable -> Bool
Eq, Int -> PDOMDisable -> ShowS
[PDOMDisable] -> ShowS
PDOMDisable -> String
(Int -> PDOMDisable -> ShowS)
-> (PDOMDisable -> String)
-> ([PDOMDisable] -> ShowS)
-> Show PDOMDisable
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMDisable] -> ShowS
$cshowList :: [PDOMDisable] -> ShowS
show :: PDOMDisable -> String
$cshow :: PDOMDisable -> String
showsPrec :: Int -> PDOMDisable -> ShowS
$cshowsPrec :: Int -> PDOMDisable -> ShowS
Show)
pDOMDisable
  :: PDOMDisable
pDOMDisable :: PDOMDisable
pDOMDisable
  = PDOMDisable
PDOMDisable
instance ToJSON PDOMDisable where
  toJSON :: PDOMDisable -> Value
toJSON PDOMDisable
_ = Value
A.Null
instance Command PDOMDisable where
  type CommandResponse PDOMDisable = ()
  commandName :: Proxy PDOMDisable -> String
commandName Proxy PDOMDisable
_ = String
"DOM.disable"
  fromJSON :: Proxy PDOMDisable -> Value -> Result (CommandResponse PDOMDisable)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PDOMDisable -> Result ())
-> Proxy PDOMDisable
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PDOMDisable -> ()) -> Proxy PDOMDisable -> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PDOMDisable -> ()
forall a b. a -> b -> a
const ()

-- | Discards search results from the session with the given id. `getSearchResults` should no longer
--   be called for that search.

-- | Parameters of the 'DOM.discardSearchResults' command.
data PDOMDiscardSearchResults = PDOMDiscardSearchResults
  {
    -- | Unique search session identifier.
    PDOMDiscardSearchResults -> Text
pDOMDiscardSearchResultsSearchId :: T.Text
  }
  deriving (PDOMDiscardSearchResults -> PDOMDiscardSearchResults -> Bool
(PDOMDiscardSearchResults -> PDOMDiscardSearchResults -> Bool)
-> (PDOMDiscardSearchResults -> PDOMDiscardSearchResults -> Bool)
-> Eq PDOMDiscardSearchResults
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMDiscardSearchResults -> PDOMDiscardSearchResults -> Bool
$c/= :: PDOMDiscardSearchResults -> PDOMDiscardSearchResults -> Bool
== :: PDOMDiscardSearchResults -> PDOMDiscardSearchResults -> Bool
$c== :: PDOMDiscardSearchResults -> PDOMDiscardSearchResults -> Bool
Eq, Int -> PDOMDiscardSearchResults -> ShowS
[PDOMDiscardSearchResults] -> ShowS
PDOMDiscardSearchResults -> String
(Int -> PDOMDiscardSearchResults -> ShowS)
-> (PDOMDiscardSearchResults -> String)
-> ([PDOMDiscardSearchResults] -> ShowS)
-> Show PDOMDiscardSearchResults
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMDiscardSearchResults] -> ShowS
$cshowList :: [PDOMDiscardSearchResults] -> ShowS
show :: PDOMDiscardSearchResults -> String
$cshow :: PDOMDiscardSearchResults -> String
showsPrec :: Int -> PDOMDiscardSearchResults -> ShowS
$cshowsPrec :: Int -> PDOMDiscardSearchResults -> ShowS
Show)
pDOMDiscardSearchResults
  {-
  -- | Unique search session identifier.
  -}
  :: T.Text
  -> PDOMDiscardSearchResults
pDOMDiscardSearchResults :: Text -> PDOMDiscardSearchResults
pDOMDiscardSearchResults
  Text
arg_pDOMDiscardSearchResultsSearchId
  = Text -> PDOMDiscardSearchResults
PDOMDiscardSearchResults
    Text
arg_pDOMDiscardSearchResultsSearchId
instance ToJSON PDOMDiscardSearchResults where
  toJSON :: PDOMDiscardSearchResults -> Value
toJSON PDOMDiscardSearchResults
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"searchId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PDOMDiscardSearchResults -> Text
pDOMDiscardSearchResultsSearchId PDOMDiscardSearchResults
p)
    ]
instance Command PDOMDiscardSearchResults where
  type CommandResponse PDOMDiscardSearchResults = ()
  commandName :: Proxy PDOMDiscardSearchResults -> String
commandName Proxy PDOMDiscardSearchResults
_ = String
"DOM.discardSearchResults"
  fromJSON :: Proxy PDOMDiscardSearchResults
-> Value -> Result (CommandResponse PDOMDiscardSearchResults)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PDOMDiscardSearchResults -> Result ())
-> Proxy PDOMDiscardSearchResults
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PDOMDiscardSearchResults -> ())
-> Proxy PDOMDiscardSearchResults
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PDOMDiscardSearchResults -> ()
forall a b. a -> b -> a
const ()

-- | Enables DOM agent for the given page.

-- | Parameters of the 'DOM.enable' command.
data PDOMEnableIncludeWhitespace = PDOMEnableIncludeWhitespaceNone | PDOMEnableIncludeWhitespaceAll
  deriving (Eq PDOMEnableIncludeWhitespace
Eq PDOMEnableIncludeWhitespace
-> (PDOMEnableIncludeWhitespace
    -> PDOMEnableIncludeWhitespace -> Ordering)
-> (PDOMEnableIncludeWhitespace
    -> PDOMEnableIncludeWhitespace -> Bool)
-> (PDOMEnableIncludeWhitespace
    -> PDOMEnableIncludeWhitespace -> Bool)
-> (PDOMEnableIncludeWhitespace
    -> PDOMEnableIncludeWhitespace -> Bool)
-> (PDOMEnableIncludeWhitespace
    -> PDOMEnableIncludeWhitespace -> Bool)
-> (PDOMEnableIncludeWhitespace
    -> PDOMEnableIncludeWhitespace -> PDOMEnableIncludeWhitespace)
-> (PDOMEnableIncludeWhitespace
    -> PDOMEnableIncludeWhitespace -> PDOMEnableIncludeWhitespace)
-> Ord PDOMEnableIncludeWhitespace
PDOMEnableIncludeWhitespace -> PDOMEnableIncludeWhitespace -> Bool
PDOMEnableIncludeWhitespace
-> PDOMEnableIncludeWhitespace -> Ordering
PDOMEnableIncludeWhitespace
-> PDOMEnableIncludeWhitespace -> PDOMEnableIncludeWhitespace
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: PDOMEnableIncludeWhitespace
-> PDOMEnableIncludeWhitespace -> PDOMEnableIncludeWhitespace
$cmin :: PDOMEnableIncludeWhitespace
-> PDOMEnableIncludeWhitespace -> PDOMEnableIncludeWhitespace
max :: PDOMEnableIncludeWhitespace
-> PDOMEnableIncludeWhitespace -> PDOMEnableIncludeWhitespace
$cmax :: PDOMEnableIncludeWhitespace
-> PDOMEnableIncludeWhitespace -> PDOMEnableIncludeWhitespace
>= :: PDOMEnableIncludeWhitespace -> PDOMEnableIncludeWhitespace -> Bool
$c>= :: PDOMEnableIncludeWhitespace -> PDOMEnableIncludeWhitespace -> Bool
> :: PDOMEnableIncludeWhitespace -> PDOMEnableIncludeWhitespace -> Bool
$c> :: PDOMEnableIncludeWhitespace -> PDOMEnableIncludeWhitespace -> Bool
<= :: PDOMEnableIncludeWhitespace -> PDOMEnableIncludeWhitespace -> Bool
$c<= :: PDOMEnableIncludeWhitespace -> PDOMEnableIncludeWhitespace -> Bool
< :: PDOMEnableIncludeWhitespace -> PDOMEnableIncludeWhitespace -> Bool
$c< :: PDOMEnableIncludeWhitespace -> PDOMEnableIncludeWhitespace -> Bool
compare :: PDOMEnableIncludeWhitespace
-> PDOMEnableIncludeWhitespace -> Ordering
$ccompare :: PDOMEnableIncludeWhitespace
-> PDOMEnableIncludeWhitespace -> Ordering
$cp1Ord :: Eq PDOMEnableIncludeWhitespace
Ord, PDOMEnableIncludeWhitespace -> PDOMEnableIncludeWhitespace -> Bool
(PDOMEnableIncludeWhitespace
 -> PDOMEnableIncludeWhitespace -> Bool)
-> (PDOMEnableIncludeWhitespace
    -> PDOMEnableIncludeWhitespace -> Bool)
-> Eq PDOMEnableIncludeWhitespace
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMEnableIncludeWhitespace -> PDOMEnableIncludeWhitespace -> Bool
$c/= :: PDOMEnableIncludeWhitespace -> PDOMEnableIncludeWhitespace -> Bool
== :: PDOMEnableIncludeWhitespace -> PDOMEnableIncludeWhitespace -> Bool
$c== :: PDOMEnableIncludeWhitespace -> PDOMEnableIncludeWhitespace -> Bool
Eq, Int -> PDOMEnableIncludeWhitespace -> ShowS
[PDOMEnableIncludeWhitespace] -> ShowS
PDOMEnableIncludeWhitespace -> String
(Int -> PDOMEnableIncludeWhitespace -> ShowS)
-> (PDOMEnableIncludeWhitespace -> String)
-> ([PDOMEnableIncludeWhitespace] -> ShowS)
-> Show PDOMEnableIncludeWhitespace
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMEnableIncludeWhitespace] -> ShowS
$cshowList :: [PDOMEnableIncludeWhitespace] -> ShowS
show :: PDOMEnableIncludeWhitespace -> String
$cshow :: PDOMEnableIncludeWhitespace -> String
showsPrec :: Int -> PDOMEnableIncludeWhitespace -> ShowS
$cshowsPrec :: Int -> PDOMEnableIncludeWhitespace -> ShowS
Show, ReadPrec [PDOMEnableIncludeWhitespace]
ReadPrec PDOMEnableIncludeWhitespace
Int -> ReadS PDOMEnableIncludeWhitespace
ReadS [PDOMEnableIncludeWhitespace]
(Int -> ReadS PDOMEnableIncludeWhitespace)
-> ReadS [PDOMEnableIncludeWhitespace]
-> ReadPrec PDOMEnableIncludeWhitespace
-> ReadPrec [PDOMEnableIncludeWhitespace]
-> Read PDOMEnableIncludeWhitespace
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PDOMEnableIncludeWhitespace]
$creadListPrec :: ReadPrec [PDOMEnableIncludeWhitespace]
readPrec :: ReadPrec PDOMEnableIncludeWhitespace
$creadPrec :: ReadPrec PDOMEnableIncludeWhitespace
readList :: ReadS [PDOMEnableIncludeWhitespace]
$creadList :: ReadS [PDOMEnableIncludeWhitespace]
readsPrec :: Int -> ReadS PDOMEnableIncludeWhitespace
$creadsPrec :: Int -> ReadS PDOMEnableIncludeWhitespace
Read)
instance FromJSON PDOMEnableIncludeWhitespace where
  parseJSON :: Value -> Parser PDOMEnableIncludeWhitespace
parseJSON = String
-> (Text -> Parser PDOMEnableIncludeWhitespace)
-> Value
-> Parser PDOMEnableIncludeWhitespace
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"PDOMEnableIncludeWhitespace" ((Text -> Parser PDOMEnableIncludeWhitespace)
 -> Value -> Parser PDOMEnableIncludeWhitespace)
-> (Text -> Parser PDOMEnableIncludeWhitespace)
-> Value
-> Parser PDOMEnableIncludeWhitespace
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"none" -> PDOMEnableIncludeWhitespace -> Parser PDOMEnableIncludeWhitespace
forall (f :: * -> *) a. Applicative f => a -> f a
pure PDOMEnableIncludeWhitespace
PDOMEnableIncludeWhitespaceNone
    Text
"all" -> PDOMEnableIncludeWhitespace -> Parser PDOMEnableIncludeWhitespace
forall (f :: * -> *) a. Applicative f => a -> f a
pure PDOMEnableIncludeWhitespace
PDOMEnableIncludeWhitespaceAll
    Text
"_" -> String -> Parser PDOMEnableIncludeWhitespace
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse PDOMEnableIncludeWhitespace"
instance ToJSON PDOMEnableIncludeWhitespace where
  toJSON :: PDOMEnableIncludeWhitespace -> Value
toJSON PDOMEnableIncludeWhitespace
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case PDOMEnableIncludeWhitespace
v of
    PDOMEnableIncludeWhitespace
PDOMEnableIncludeWhitespaceNone -> Text
"none"
    PDOMEnableIncludeWhitespace
PDOMEnableIncludeWhitespaceAll -> Text
"all"
data PDOMEnable = PDOMEnable
  {
    -- | Whether to include whitespaces in the children array of returned Nodes.
    PDOMEnable -> Maybe PDOMEnableIncludeWhitespace
pDOMEnableIncludeWhitespace :: Maybe PDOMEnableIncludeWhitespace
  }
  deriving (PDOMEnable -> PDOMEnable -> Bool
(PDOMEnable -> PDOMEnable -> Bool)
-> (PDOMEnable -> PDOMEnable -> Bool) -> Eq PDOMEnable
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMEnable -> PDOMEnable -> Bool
$c/= :: PDOMEnable -> PDOMEnable -> Bool
== :: PDOMEnable -> PDOMEnable -> Bool
$c== :: PDOMEnable -> PDOMEnable -> Bool
Eq, Int -> PDOMEnable -> ShowS
[PDOMEnable] -> ShowS
PDOMEnable -> String
(Int -> PDOMEnable -> ShowS)
-> (PDOMEnable -> String)
-> ([PDOMEnable] -> ShowS)
-> Show PDOMEnable
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMEnable] -> ShowS
$cshowList :: [PDOMEnable] -> ShowS
show :: PDOMEnable -> String
$cshow :: PDOMEnable -> String
showsPrec :: Int -> PDOMEnable -> ShowS
$cshowsPrec :: Int -> PDOMEnable -> ShowS
Show)
pDOMEnable
  :: PDOMEnable
pDOMEnable :: PDOMEnable
pDOMEnable
  = Maybe PDOMEnableIncludeWhitespace -> PDOMEnable
PDOMEnable
    Maybe PDOMEnableIncludeWhitespace
forall a. Maybe a
Nothing
instance ToJSON PDOMEnable where
  toJSON :: PDOMEnable -> Value
toJSON PDOMEnable
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"includeWhitespace" Text -> PDOMEnableIncludeWhitespace -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (PDOMEnableIncludeWhitespace -> Pair)
-> Maybe PDOMEnableIncludeWhitespace -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMEnable -> Maybe PDOMEnableIncludeWhitespace
pDOMEnableIncludeWhitespace PDOMEnable
p)
    ]
instance Command PDOMEnable where
  type CommandResponse PDOMEnable = ()
  commandName :: Proxy PDOMEnable -> String
commandName Proxy PDOMEnable
_ = String
"DOM.enable"
  fromJSON :: Proxy PDOMEnable -> Value -> Result (CommandResponse PDOMEnable)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PDOMEnable -> Result ())
-> Proxy PDOMEnable
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PDOMEnable -> ()) -> Proxy PDOMEnable -> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PDOMEnable -> ()
forall a b. a -> b -> a
const ()

-- | Focuses the given element.

-- | Parameters of the 'DOM.focus' command.
data PDOMFocus = PDOMFocus
  {
    -- | Identifier of the node.
    PDOMFocus -> Maybe Int
pDOMFocusNodeId :: Maybe DOMNodeId,
    -- | Identifier of the backend node.
    PDOMFocus -> Maybe Int
pDOMFocusBackendNodeId :: Maybe DOMBackendNodeId,
    -- | JavaScript object id of the node wrapper.
    PDOMFocus -> Maybe Text
pDOMFocusObjectId :: Maybe Runtime.RuntimeRemoteObjectId
  }
  deriving (PDOMFocus -> PDOMFocus -> Bool
(PDOMFocus -> PDOMFocus -> Bool)
-> (PDOMFocus -> PDOMFocus -> Bool) -> Eq PDOMFocus
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMFocus -> PDOMFocus -> Bool
$c/= :: PDOMFocus -> PDOMFocus -> Bool
== :: PDOMFocus -> PDOMFocus -> Bool
$c== :: PDOMFocus -> PDOMFocus -> Bool
Eq, Int -> PDOMFocus -> ShowS
[PDOMFocus] -> ShowS
PDOMFocus -> String
(Int -> PDOMFocus -> ShowS)
-> (PDOMFocus -> String)
-> ([PDOMFocus] -> ShowS)
-> Show PDOMFocus
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMFocus] -> ShowS
$cshowList :: [PDOMFocus] -> ShowS
show :: PDOMFocus -> String
$cshow :: PDOMFocus -> String
showsPrec :: Int -> PDOMFocus -> ShowS
$cshowsPrec :: Int -> PDOMFocus -> ShowS
Show)
pDOMFocus
  :: PDOMFocus
pDOMFocus :: PDOMFocus
pDOMFocus
  = Maybe Int -> Maybe Int -> Maybe Text -> PDOMFocus
PDOMFocus
    Maybe Int
forall a. Maybe a
Nothing
    Maybe Int
forall a. Maybe a
Nothing
    Maybe Text
forall a. Maybe a
Nothing
instance ToJSON PDOMFocus where
  toJSON :: PDOMFocus -> Value
toJSON PDOMFocus
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"nodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMFocus -> Maybe Int
pDOMFocusNodeId PDOMFocus
p),
    (Text
"backendNodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMFocus -> Maybe Int
pDOMFocusBackendNodeId PDOMFocus
p),
    (Text
"objectId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMFocus -> Maybe Text
pDOMFocusObjectId PDOMFocus
p)
    ]
instance Command PDOMFocus where
  type CommandResponse PDOMFocus = ()
  commandName :: Proxy PDOMFocus -> String
commandName Proxy PDOMFocus
_ = String
"DOM.focus"
  fromJSON :: Proxy PDOMFocus -> Value -> Result (CommandResponse PDOMFocus)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PDOMFocus -> Result ())
-> Proxy PDOMFocus
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PDOMFocus -> ()) -> Proxy PDOMFocus -> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PDOMFocus -> ()
forall a b. a -> b -> a
const ()

-- | Returns attributes for the specified node.

-- | Parameters of the 'DOM.getAttributes' command.
data PDOMGetAttributes = PDOMGetAttributes
  {
    -- | Id of the node to retrieve attibutes for.
    PDOMGetAttributes -> Int
pDOMGetAttributesNodeId :: DOMNodeId
  }
  deriving (PDOMGetAttributes -> PDOMGetAttributes -> Bool
(PDOMGetAttributes -> PDOMGetAttributes -> Bool)
-> (PDOMGetAttributes -> PDOMGetAttributes -> Bool)
-> Eq PDOMGetAttributes
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMGetAttributes -> PDOMGetAttributes -> Bool
$c/= :: PDOMGetAttributes -> PDOMGetAttributes -> Bool
== :: PDOMGetAttributes -> PDOMGetAttributes -> Bool
$c== :: PDOMGetAttributes -> PDOMGetAttributes -> Bool
Eq, Int -> PDOMGetAttributes -> ShowS
[PDOMGetAttributes] -> ShowS
PDOMGetAttributes -> String
(Int -> PDOMGetAttributes -> ShowS)
-> (PDOMGetAttributes -> String)
-> ([PDOMGetAttributes] -> ShowS)
-> Show PDOMGetAttributes
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMGetAttributes] -> ShowS
$cshowList :: [PDOMGetAttributes] -> ShowS
show :: PDOMGetAttributes -> String
$cshow :: PDOMGetAttributes -> String
showsPrec :: Int -> PDOMGetAttributes -> ShowS
$cshowsPrec :: Int -> PDOMGetAttributes -> ShowS
Show)
pDOMGetAttributes
  {-
  -- | Id of the node to retrieve attibutes for.
  -}
  :: DOMNodeId
  -> PDOMGetAttributes
pDOMGetAttributes :: Int -> PDOMGetAttributes
pDOMGetAttributes
  Int
arg_pDOMGetAttributesNodeId
  = Int -> PDOMGetAttributes
PDOMGetAttributes
    Int
arg_pDOMGetAttributesNodeId
instance ToJSON PDOMGetAttributes where
  toJSON :: PDOMGetAttributes -> Value
toJSON PDOMGetAttributes
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"nodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PDOMGetAttributes -> Int
pDOMGetAttributesNodeId PDOMGetAttributes
p)
    ]
data DOMGetAttributes = DOMGetAttributes
  {
    -- | An interleaved array of node attribute names and values.
    DOMGetAttributes -> [Text]
dOMGetAttributesAttributes :: [T.Text]
  }
  deriving (DOMGetAttributes -> DOMGetAttributes -> Bool
(DOMGetAttributes -> DOMGetAttributes -> Bool)
-> (DOMGetAttributes -> DOMGetAttributes -> Bool)
-> Eq DOMGetAttributes
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMGetAttributes -> DOMGetAttributes -> Bool
$c/= :: DOMGetAttributes -> DOMGetAttributes -> Bool
== :: DOMGetAttributes -> DOMGetAttributes -> Bool
$c== :: DOMGetAttributes -> DOMGetAttributes -> Bool
Eq, Int -> DOMGetAttributes -> ShowS
[DOMGetAttributes] -> ShowS
DOMGetAttributes -> String
(Int -> DOMGetAttributes -> ShowS)
-> (DOMGetAttributes -> String)
-> ([DOMGetAttributes] -> ShowS)
-> Show DOMGetAttributes
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMGetAttributes] -> ShowS
$cshowList :: [DOMGetAttributes] -> ShowS
show :: DOMGetAttributes -> String
$cshow :: DOMGetAttributes -> String
showsPrec :: Int -> DOMGetAttributes -> ShowS
$cshowsPrec :: Int -> DOMGetAttributes -> ShowS
Show)
instance FromJSON DOMGetAttributes where
  parseJSON :: Value -> Parser DOMGetAttributes
parseJSON = String
-> (Object -> Parser DOMGetAttributes)
-> Value
-> Parser DOMGetAttributes
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMGetAttributes" ((Object -> Parser DOMGetAttributes)
 -> Value -> Parser DOMGetAttributes)
-> (Object -> Parser DOMGetAttributes)
-> Value
-> Parser DOMGetAttributes
forall a b. (a -> b) -> a -> b
$ \Object
o -> [Text] -> DOMGetAttributes
DOMGetAttributes
    ([Text] -> DOMGetAttributes)
-> Parser [Text] -> Parser DOMGetAttributes
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser [Text]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"attributes"
instance Command PDOMGetAttributes where
  type CommandResponse PDOMGetAttributes = DOMGetAttributes
  commandName :: Proxy PDOMGetAttributes -> String
commandName Proxy PDOMGetAttributes
_ = String
"DOM.getAttributes"

-- | Returns boxes for the given node.

-- | Parameters of the 'DOM.getBoxModel' command.
data PDOMGetBoxModel = PDOMGetBoxModel
  {
    -- | Identifier of the node.
    PDOMGetBoxModel -> Maybe Int
pDOMGetBoxModelNodeId :: Maybe DOMNodeId,
    -- | Identifier of the backend node.
    PDOMGetBoxModel -> Maybe Int
pDOMGetBoxModelBackendNodeId :: Maybe DOMBackendNodeId,
    -- | JavaScript object id of the node wrapper.
    PDOMGetBoxModel -> Maybe Text
pDOMGetBoxModelObjectId :: Maybe Runtime.RuntimeRemoteObjectId
  }
  deriving (PDOMGetBoxModel -> PDOMGetBoxModel -> Bool
(PDOMGetBoxModel -> PDOMGetBoxModel -> Bool)
-> (PDOMGetBoxModel -> PDOMGetBoxModel -> Bool)
-> Eq PDOMGetBoxModel
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMGetBoxModel -> PDOMGetBoxModel -> Bool
$c/= :: PDOMGetBoxModel -> PDOMGetBoxModel -> Bool
== :: PDOMGetBoxModel -> PDOMGetBoxModel -> Bool
$c== :: PDOMGetBoxModel -> PDOMGetBoxModel -> Bool
Eq, Int -> PDOMGetBoxModel -> ShowS
[PDOMGetBoxModel] -> ShowS
PDOMGetBoxModel -> String
(Int -> PDOMGetBoxModel -> ShowS)
-> (PDOMGetBoxModel -> String)
-> ([PDOMGetBoxModel] -> ShowS)
-> Show PDOMGetBoxModel
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMGetBoxModel] -> ShowS
$cshowList :: [PDOMGetBoxModel] -> ShowS
show :: PDOMGetBoxModel -> String
$cshow :: PDOMGetBoxModel -> String
showsPrec :: Int -> PDOMGetBoxModel -> ShowS
$cshowsPrec :: Int -> PDOMGetBoxModel -> ShowS
Show)
pDOMGetBoxModel
  :: PDOMGetBoxModel
pDOMGetBoxModel :: PDOMGetBoxModel
pDOMGetBoxModel
  = Maybe Int -> Maybe Int -> Maybe Text -> PDOMGetBoxModel
PDOMGetBoxModel
    Maybe Int
forall a. Maybe a
Nothing
    Maybe Int
forall a. Maybe a
Nothing
    Maybe Text
forall a. Maybe a
Nothing
instance ToJSON PDOMGetBoxModel where
  toJSON :: PDOMGetBoxModel -> Value
toJSON PDOMGetBoxModel
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"nodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMGetBoxModel -> Maybe Int
pDOMGetBoxModelNodeId PDOMGetBoxModel
p),
    (Text
"backendNodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMGetBoxModel -> Maybe Int
pDOMGetBoxModelBackendNodeId PDOMGetBoxModel
p),
    (Text
"objectId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMGetBoxModel -> Maybe Text
pDOMGetBoxModelObjectId PDOMGetBoxModel
p)
    ]
data DOMGetBoxModel = DOMGetBoxModel
  {
    -- | Box model for the node.
    DOMGetBoxModel -> DOMBoxModel
dOMGetBoxModelModel :: DOMBoxModel
  }
  deriving (DOMGetBoxModel -> DOMGetBoxModel -> Bool
(DOMGetBoxModel -> DOMGetBoxModel -> Bool)
-> (DOMGetBoxModel -> DOMGetBoxModel -> Bool) -> Eq DOMGetBoxModel
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMGetBoxModel -> DOMGetBoxModel -> Bool
$c/= :: DOMGetBoxModel -> DOMGetBoxModel -> Bool
== :: DOMGetBoxModel -> DOMGetBoxModel -> Bool
$c== :: DOMGetBoxModel -> DOMGetBoxModel -> Bool
Eq, Int -> DOMGetBoxModel -> ShowS
[DOMGetBoxModel] -> ShowS
DOMGetBoxModel -> String
(Int -> DOMGetBoxModel -> ShowS)
-> (DOMGetBoxModel -> String)
-> ([DOMGetBoxModel] -> ShowS)
-> Show DOMGetBoxModel
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMGetBoxModel] -> ShowS
$cshowList :: [DOMGetBoxModel] -> ShowS
show :: DOMGetBoxModel -> String
$cshow :: DOMGetBoxModel -> String
showsPrec :: Int -> DOMGetBoxModel -> ShowS
$cshowsPrec :: Int -> DOMGetBoxModel -> ShowS
Show)
instance FromJSON DOMGetBoxModel where
  parseJSON :: Value -> Parser DOMGetBoxModel
parseJSON = String
-> (Object -> Parser DOMGetBoxModel)
-> Value
-> Parser DOMGetBoxModel
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMGetBoxModel" ((Object -> Parser DOMGetBoxModel)
 -> Value -> Parser DOMGetBoxModel)
-> (Object -> Parser DOMGetBoxModel)
-> Value
-> Parser DOMGetBoxModel
forall a b. (a -> b) -> a -> b
$ \Object
o -> DOMBoxModel -> DOMGetBoxModel
DOMGetBoxModel
    (DOMBoxModel -> DOMGetBoxModel)
-> Parser DOMBoxModel -> Parser DOMGetBoxModel
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser DOMBoxModel
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"model"
instance Command PDOMGetBoxModel where
  type CommandResponse PDOMGetBoxModel = DOMGetBoxModel
  commandName :: Proxy PDOMGetBoxModel -> String
commandName Proxy PDOMGetBoxModel
_ = String
"DOM.getBoxModel"

-- | Returns quads that describe node position on the page. This method
--   might return multiple quads for inline nodes.

-- | Parameters of the 'DOM.getContentQuads' command.
data PDOMGetContentQuads = PDOMGetContentQuads
  {
    -- | Identifier of the node.
    PDOMGetContentQuads -> Maybe Int
pDOMGetContentQuadsNodeId :: Maybe DOMNodeId,
    -- | Identifier of the backend node.
    PDOMGetContentQuads -> Maybe Int
pDOMGetContentQuadsBackendNodeId :: Maybe DOMBackendNodeId,
    -- | JavaScript object id of the node wrapper.
    PDOMGetContentQuads -> Maybe Text
pDOMGetContentQuadsObjectId :: Maybe Runtime.RuntimeRemoteObjectId
  }
  deriving (PDOMGetContentQuads -> PDOMGetContentQuads -> Bool
(PDOMGetContentQuads -> PDOMGetContentQuads -> Bool)
-> (PDOMGetContentQuads -> PDOMGetContentQuads -> Bool)
-> Eq PDOMGetContentQuads
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMGetContentQuads -> PDOMGetContentQuads -> Bool
$c/= :: PDOMGetContentQuads -> PDOMGetContentQuads -> Bool
== :: PDOMGetContentQuads -> PDOMGetContentQuads -> Bool
$c== :: PDOMGetContentQuads -> PDOMGetContentQuads -> Bool
Eq, Int -> PDOMGetContentQuads -> ShowS
[PDOMGetContentQuads] -> ShowS
PDOMGetContentQuads -> String
(Int -> PDOMGetContentQuads -> ShowS)
-> (PDOMGetContentQuads -> String)
-> ([PDOMGetContentQuads] -> ShowS)
-> Show PDOMGetContentQuads
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMGetContentQuads] -> ShowS
$cshowList :: [PDOMGetContentQuads] -> ShowS
show :: PDOMGetContentQuads -> String
$cshow :: PDOMGetContentQuads -> String
showsPrec :: Int -> PDOMGetContentQuads -> ShowS
$cshowsPrec :: Int -> PDOMGetContentQuads -> ShowS
Show)
pDOMGetContentQuads
  :: PDOMGetContentQuads
pDOMGetContentQuads :: PDOMGetContentQuads
pDOMGetContentQuads
  = Maybe Int -> Maybe Int -> Maybe Text -> PDOMGetContentQuads
PDOMGetContentQuads
    Maybe Int
forall a. Maybe a
Nothing
    Maybe Int
forall a. Maybe a
Nothing
    Maybe Text
forall a. Maybe a
Nothing
instance ToJSON PDOMGetContentQuads where
  toJSON :: PDOMGetContentQuads -> Value
toJSON PDOMGetContentQuads
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"nodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMGetContentQuads -> Maybe Int
pDOMGetContentQuadsNodeId PDOMGetContentQuads
p),
    (Text
"backendNodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMGetContentQuads -> Maybe Int
pDOMGetContentQuadsBackendNodeId PDOMGetContentQuads
p),
    (Text
"objectId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMGetContentQuads -> Maybe Text
pDOMGetContentQuadsObjectId PDOMGetContentQuads
p)
    ]
data DOMGetContentQuads = DOMGetContentQuads
  {
    -- | Quads that describe node layout relative to viewport.
    DOMGetContentQuads -> [DOMQuad]
dOMGetContentQuadsQuads :: [DOMQuad]
  }
  deriving (DOMGetContentQuads -> DOMGetContentQuads -> Bool
(DOMGetContentQuads -> DOMGetContentQuads -> Bool)
-> (DOMGetContentQuads -> DOMGetContentQuads -> Bool)
-> Eq DOMGetContentQuads
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMGetContentQuads -> DOMGetContentQuads -> Bool
$c/= :: DOMGetContentQuads -> DOMGetContentQuads -> Bool
== :: DOMGetContentQuads -> DOMGetContentQuads -> Bool
$c== :: DOMGetContentQuads -> DOMGetContentQuads -> Bool
Eq, Int -> DOMGetContentQuads -> ShowS
[DOMGetContentQuads] -> ShowS
DOMGetContentQuads -> String
(Int -> DOMGetContentQuads -> ShowS)
-> (DOMGetContentQuads -> String)
-> ([DOMGetContentQuads] -> ShowS)
-> Show DOMGetContentQuads
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMGetContentQuads] -> ShowS
$cshowList :: [DOMGetContentQuads] -> ShowS
show :: DOMGetContentQuads -> String
$cshow :: DOMGetContentQuads -> String
showsPrec :: Int -> DOMGetContentQuads -> ShowS
$cshowsPrec :: Int -> DOMGetContentQuads -> ShowS
Show)
instance FromJSON DOMGetContentQuads where
  parseJSON :: Value -> Parser DOMGetContentQuads
parseJSON = String
-> (Object -> Parser DOMGetContentQuads)
-> Value
-> Parser DOMGetContentQuads
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMGetContentQuads" ((Object -> Parser DOMGetContentQuads)
 -> Value -> Parser DOMGetContentQuads)
-> (Object -> Parser DOMGetContentQuads)
-> Value
-> Parser DOMGetContentQuads
forall a b. (a -> b) -> a -> b
$ \Object
o -> [DOMQuad] -> DOMGetContentQuads
DOMGetContentQuads
    ([DOMQuad] -> DOMGetContentQuads)
-> Parser [DOMQuad] -> Parser DOMGetContentQuads
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser [DOMQuad]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"quads"
instance Command PDOMGetContentQuads where
  type CommandResponse PDOMGetContentQuads = DOMGetContentQuads
  commandName :: Proxy PDOMGetContentQuads -> String
commandName Proxy PDOMGetContentQuads
_ = String
"DOM.getContentQuads"

-- | Returns the root DOM node (and optionally the subtree) to the caller.

-- | Parameters of the 'DOM.getDocument' command.
data PDOMGetDocument = PDOMGetDocument
  {
    -- | The maximum depth at which children should be retrieved, defaults to 1. Use -1 for the
    --   entire subtree or provide an integer larger than 0.
    PDOMGetDocument -> Maybe Int
pDOMGetDocumentDepth :: Maybe Int,
    -- | Whether or not iframes and shadow roots should be traversed when returning the subtree
    --   (default is false).
    PDOMGetDocument -> Maybe Bool
pDOMGetDocumentPierce :: Maybe Bool
  }
  deriving (PDOMGetDocument -> PDOMGetDocument -> Bool
(PDOMGetDocument -> PDOMGetDocument -> Bool)
-> (PDOMGetDocument -> PDOMGetDocument -> Bool)
-> Eq PDOMGetDocument
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMGetDocument -> PDOMGetDocument -> Bool
$c/= :: PDOMGetDocument -> PDOMGetDocument -> Bool
== :: PDOMGetDocument -> PDOMGetDocument -> Bool
$c== :: PDOMGetDocument -> PDOMGetDocument -> Bool
Eq, Int -> PDOMGetDocument -> ShowS
[PDOMGetDocument] -> ShowS
PDOMGetDocument -> String
(Int -> PDOMGetDocument -> ShowS)
-> (PDOMGetDocument -> String)
-> ([PDOMGetDocument] -> ShowS)
-> Show PDOMGetDocument
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMGetDocument] -> ShowS
$cshowList :: [PDOMGetDocument] -> ShowS
show :: PDOMGetDocument -> String
$cshow :: PDOMGetDocument -> String
showsPrec :: Int -> PDOMGetDocument -> ShowS
$cshowsPrec :: Int -> PDOMGetDocument -> ShowS
Show)
pDOMGetDocument
  :: PDOMGetDocument
pDOMGetDocument :: PDOMGetDocument
pDOMGetDocument
  = Maybe Int -> Maybe Bool -> PDOMGetDocument
PDOMGetDocument
    Maybe Int
forall a. Maybe a
Nothing
    Maybe Bool
forall a. Maybe a
Nothing
instance ToJSON PDOMGetDocument where
  toJSON :: PDOMGetDocument -> Value
toJSON PDOMGetDocument
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"depth" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMGetDocument -> Maybe Int
pDOMGetDocumentDepth PDOMGetDocument
p),
    (Text
"pierce" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMGetDocument -> Maybe Bool
pDOMGetDocumentPierce PDOMGetDocument
p)
    ]
data DOMGetDocument = DOMGetDocument
  {
    -- | Resulting node.
    DOMGetDocument -> DOMNode
dOMGetDocumentRoot :: DOMNode
  }
  deriving (DOMGetDocument -> DOMGetDocument -> Bool
(DOMGetDocument -> DOMGetDocument -> Bool)
-> (DOMGetDocument -> DOMGetDocument -> Bool) -> Eq DOMGetDocument
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMGetDocument -> DOMGetDocument -> Bool
$c/= :: DOMGetDocument -> DOMGetDocument -> Bool
== :: DOMGetDocument -> DOMGetDocument -> Bool
$c== :: DOMGetDocument -> DOMGetDocument -> Bool
Eq, Int -> DOMGetDocument -> ShowS
[DOMGetDocument] -> ShowS
DOMGetDocument -> String
(Int -> DOMGetDocument -> ShowS)
-> (DOMGetDocument -> String)
-> ([DOMGetDocument] -> ShowS)
-> Show DOMGetDocument
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMGetDocument] -> ShowS
$cshowList :: [DOMGetDocument] -> ShowS
show :: DOMGetDocument -> String
$cshow :: DOMGetDocument -> String
showsPrec :: Int -> DOMGetDocument -> ShowS
$cshowsPrec :: Int -> DOMGetDocument -> ShowS
Show)
instance FromJSON DOMGetDocument where
  parseJSON :: Value -> Parser DOMGetDocument
parseJSON = String
-> (Object -> Parser DOMGetDocument)
-> Value
-> Parser DOMGetDocument
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMGetDocument" ((Object -> Parser DOMGetDocument)
 -> Value -> Parser DOMGetDocument)
-> (Object -> Parser DOMGetDocument)
-> Value
-> Parser DOMGetDocument
forall a b. (a -> b) -> a -> b
$ \Object
o -> DOMNode -> DOMGetDocument
DOMGetDocument
    (DOMNode -> DOMGetDocument)
-> Parser DOMNode -> Parser DOMGetDocument
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser DOMNode
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"root"
instance Command PDOMGetDocument where
  type CommandResponse PDOMGetDocument = DOMGetDocument
  commandName :: Proxy PDOMGetDocument -> String
commandName Proxy PDOMGetDocument
_ = String
"DOM.getDocument"

-- | Finds nodes with a given computed style in a subtree.

-- | Parameters of the 'DOM.getNodesForSubtreeByStyle' command.
data PDOMGetNodesForSubtreeByStyle = PDOMGetNodesForSubtreeByStyle
  {
    -- | Node ID pointing to the root of a subtree.
    PDOMGetNodesForSubtreeByStyle -> Int
pDOMGetNodesForSubtreeByStyleNodeId :: DOMNodeId,
    -- | The style to filter nodes by (includes nodes if any of properties matches).
    PDOMGetNodesForSubtreeByStyle -> [DOMCSSComputedStyleProperty]
pDOMGetNodesForSubtreeByStyleComputedStyles :: [DOMCSSComputedStyleProperty],
    -- | Whether or not iframes and shadow roots in the same target should be traversed when returning the
    --   results (default is false).
    PDOMGetNodesForSubtreeByStyle -> Maybe Bool
pDOMGetNodesForSubtreeByStylePierce :: Maybe Bool
  }
  deriving (PDOMGetNodesForSubtreeByStyle
-> PDOMGetNodesForSubtreeByStyle -> Bool
(PDOMGetNodesForSubtreeByStyle
 -> PDOMGetNodesForSubtreeByStyle -> Bool)
-> (PDOMGetNodesForSubtreeByStyle
    -> PDOMGetNodesForSubtreeByStyle -> Bool)
-> Eq PDOMGetNodesForSubtreeByStyle
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMGetNodesForSubtreeByStyle
-> PDOMGetNodesForSubtreeByStyle -> Bool
$c/= :: PDOMGetNodesForSubtreeByStyle
-> PDOMGetNodesForSubtreeByStyle -> Bool
== :: PDOMGetNodesForSubtreeByStyle
-> PDOMGetNodesForSubtreeByStyle -> Bool
$c== :: PDOMGetNodesForSubtreeByStyle
-> PDOMGetNodesForSubtreeByStyle -> Bool
Eq, Int -> PDOMGetNodesForSubtreeByStyle -> ShowS
[PDOMGetNodesForSubtreeByStyle] -> ShowS
PDOMGetNodesForSubtreeByStyle -> String
(Int -> PDOMGetNodesForSubtreeByStyle -> ShowS)
-> (PDOMGetNodesForSubtreeByStyle -> String)
-> ([PDOMGetNodesForSubtreeByStyle] -> ShowS)
-> Show PDOMGetNodesForSubtreeByStyle
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMGetNodesForSubtreeByStyle] -> ShowS
$cshowList :: [PDOMGetNodesForSubtreeByStyle] -> ShowS
show :: PDOMGetNodesForSubtreeByStyle -> String
$cshow :: PDOMGetNodesForSubtreeByStyle -> String
showsPrec :: Int -> PDOMGetNodesForSubtreeByStyle -> ShowS
$cshowsPrec :: Int -> PDOMGetNodesForSubtreeByStyle -> ShowS
Show)
pDOMGetNodesForSubtreeByStyle
  {-
  -- | Node ID pointing to the root of a subtree.
  -}
  :: DOMNodeId
  {-
  -- | The style to filter nodes by (includes nodes if any of properties matches).
  -}
  -> [DOMCSSComputedStyleProperty]
  -> PDOMGetNodesForSubtreeByStyle
pDOMGetNodesForSubtreeByStyle :: Int
-> [DOMCSSComputedStyleProperty] -> PDOMGetNodesForSubtreeByStyle
pDOMGetNodesForSubtreeByStyle
  Int
arg_pDOMGetNodesForSubtreeByStyleNodeId
  [DOMCSSComputedStyleProperty]
arg_pDOMGetNodesForSubtreeByStyleComputedStyles
  = Int
-> [DOMCSSComputedStyleProperty]
-> Maybe Bool
-> PDOMGetNodesForSubtreeByStyle
PDOMGetNodesForSubtreeByStyle
    Int
arg_pDOMGetNodesForSubtreeByStyleNodeId
    [DOMCSSComputedStyleProperty]
arg_pDOMGetNodesForSubtreeByStyleComputedStyles
    Maybe Bool
forall a. Maybe a
Nothing
instance ToJSON PDOMGetNodesForSubtreeByStyle where
  toJSON :: PDOMGetNodesForSubtreeByStyle -> Value
toJSON PDOMGetNodesForSubtreeByStyle
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"nodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PDOMGetNodesForSubtreeByStyle -> Int
pDOMGetNodesForSubtreeByStyleNodeId PDOMGetNodesForSubtreeByStyle
p),
    (Text
"computedStyles" Text -> [DOMCSSComputedStyleProperty] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([DOMCSSComputedStyleProperty] -> Pair)
-> Maybe [DOMCSSComputedStyleProperty] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> [DOMCSSComputedStyleProperty]
-> Maybe [DOMCSSComputedStyleProperty]
forall a. a -> Maybe a
Just (PDOMGetNodesForSubtreeByStyle -> [DOMCSSComputedStyleProperty]
pDOMGetNodesForSubtreeByStyleComputedStyles PDOMGetNodesForSubtreeByStyle
p),
    (Text
"pierce" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMGetNodesForSubtreeByStyle -> Maybe Bool
pDOMGetNodesForSubtreeByStylePierce PDOMGetNodesForSubtreeByStyle
p)
    ]
data DOMGetNodesForSubtreeByStyle = DOMGetNodesForSubtreeByStyle
  {
    -- | Resulting nodes.
    DOMGetNodesForSubtreeByStyle -> [Int]
dOMGetNodesForSubtreeByStyleNodeIds :: [DOMNodeId]
  }
  deriving (DOMGetNodesForSubtreeByStyle
-> DOMGetNodesForSubtreeByStyle -> Bool
(DOMGetNodesForSubtreeByStyle
 -> DOMGetNodesForSubtreeByStyle -> Bool)
-> (DOMGetNodesForSubtreeByStyle
    -> DOMGetNodesForSubtreeByStyle -> Bool)
-> Eq DOMGetNodesForSubtreeByStyle
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMGetNodesForSubtreeByStyle
-> DOMGetNodesForSubtreeByStyle -> Bool
$c/= :: DOMGetNodesForSubtreeByStyle
-> DOMGetNodesForSubtreeByStyle -> Bool
== :: DOMGetNodesForSubtreeByStyle
-> DOMGetNodesForSubtreeByStyle -> Bool
$c== :: DOMGetNodesForSubtreeByStyle
-> DOMGetNodesForSubtreeByStyle -> Bool
Eq, Int -> DOMGetNodesForSubtreeByStyle -> ShowS
[DOMGetNodesForSubtreeByStyle] -> ShowS
DOMGetNodesForSubtreeByStyle -> String
(Int -> DOMGetNodesForSubtreeByStyle -> ShowS)
-> (DOMGetNodesForSubtreeByStyle -> String)
-> ([DOMGetNodesForSubtreeByStyle] -> ShowS)
-> Show DOMGetNodesForSubtreeByStyle
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMGetNodesForSubtreeByStyle] -> ShowS
$cshowList :: [DOMGetNodesForSubtreeByStyle] -> ShowS
show :: DOMGetNodesForSubtreeByStyle -> String
$cshow :: DOMGetNodesForSubtreeByStyle -> String
showsPrec :: Int -> DOMGetNodesForSubtreeByStyle -> ShowS
$cshowsPrec :: Int -> DOMGetNodesForSubtreeByStyle -> ShowS
Show)
instance FromJSON DOMGetNodesForSubtreeByStyle where
  parseJSON :: Value -> Parser DOMGetNodesForSubtreeByStyle
parseJSON = String
-> (Object -> Parser DOMGetNodesForSubtreeByStyle)
-> Value
-> Parser DOMGetNodesForSubtreeByStyle
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMGetNodesForSubtreeByStyle" ((Object -> Parser DOMGetNodesForSubtreeByStyle)
 -> Value -> Parser DOMGetNodesForSubtreeByStyle)
-> (Object -> Parser DOMGetNodesForSubtreeByStyle)
-> Value
-> Parser DOMGetNodesForSubtreeByStyle
forall a b. (a -> b) -> a -> b
$ \Object
o -> [Int] -> DOMGetNodesForSubtreeByStyle
DOMGetNodesForSubtreeByStyle
    ([Int] -> DOMGetNodesForSubtreeByStyle)
-> Parser [Int] -> Parser DOMGetNodesForSubtreeByStyle
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser [Int]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"nodeIds"
instance Command PDOMGetNodesForSubtreeByStyle where
  type CommandResponse PDOMGetNodesForSubtreeByStyle = DOMGetNodesForSubtreeByStyle
  commandName :: Proxy PDOMGetNodesForSubtreeByStyle -> String
commandName Proxy PDOMGetNodesForSubtreeByStyle
_ = String
"DOM.getNodesForSubtreeByStyle"

-- | Returns node id at given location. Depending on whether DOM domain is enabled, nodeId is
--   either returned or not.

-- | Parameters of the 'DOM.getNodeForLocation' command.
data PDOMGetNodeForLocation = PDOMGetNodeForLocation
  {
    -- | X coordinate.
    PDOMGetNodeForLocation -> Int
pDOMGetNodeForLocationX :: Int,
    -- | Y coordinate.
    PDOMGetNodeForLocation -> Int
pDOMGetNodeForLocationY :: Int,
    -- | False to skip to the nearest non-UA shadow root ancestor (default: false).
    PDOMGetNodeForLocation -> Maybe Bool
pDOMGetNodeForLocationIncludeUserAgentShadowDOM :: Maybe Bool,
    -- | Whether to ignore pointer-events: none on elements and hit test them.
    PDOMGetNodeForLocation -> Maybe Bool
pDOMGetNodeForLocationIgnorePointerEventsNone :: Maybe Bool
  }
  deriving (PDOMGetNodeForLocation -> PDOMGetNodeForLocation -> Bool
(PDOMGetNodeForLocation -> PDOMGetNodeForLocation -> Bool)
-> (PDOMGetNodeForLocation -> PDOMGetNodeForLocation -> Bool)
-> Eq PDOMGetNodeForLocation
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMGetNodeForLocation -> PDOMGetNodeForLocation -> Bool
$c/= :: PDOMGetNodeForLocation -> PDOMGetNodeForLocation -> Bool
== :: PDOMGetNodeForLocation -> PDOMGetNodeForLocation -> Bool
$c== :: PDOMGetNodeForLocation -> PDOMGetNodeForLocation -> Bool
Eq, Int -> PDOMGetNodeForLocation -> ShowS
[PDOMGetNodeForLocation] -> ShowS
PDOMGetNodeForLocation -> String
(Int -> PDOMGetNodeForLocation -> ShowS)
-> (PDOMGetNodeForLocation -> String)
-> ([PDOMGetNodeForLocation] -> ShowS)
-> Show PDOMGetNodeForLocation
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMGetNodeForLocation] -> ShowS
$cshowList :: [PDOMGetNodeForLocation] -> ShowS
show :: PDOMGetNodeForLocation -> String
$cshow :: PDOMGetNodeForLocation -> String
showsPrec :: Int -> PDOMGetNodeForLocation -> ShowS
$cshowsPrec :: Int -> PDOMGetNodeForLocation -> ShowS
Show)
pDOMGetNodeForLocation
  {-
  -- | X coordinate.
  -}
  :: Int
  {-
  -- | Y coordinate.
  -}
  -> Int
  -> PDOMGetNodeForLocation
pDOMGetNodeForLocation :: Int -> Int -> PDOMGetNodeForLocation
pDOMGetNodeForLocation
  Int
arg_pDOMGetNodeForLocationX
  Int
arg_pDOMGetNodeForLocationY
  = Int -> Int -> Maybe Bool -> Maybe Bool -> PDOMGetNodeForLocation
PDOMGetNodeForLocation
    Int
arg_pDOMGetNodeForLocationX
    Int
arg_pDOMGetNodeForLocationY
    Maybe Bool
forall a. Maybe a
Nothing
    Maybe Bool
forall a. Maybe a
Nothing
instance ToJSON PDOMGetNodeForLocation where
  toJSON :: PDOMGetNodeForLocation -> Value
toJSON PDOMGetNodeForLocation
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"x" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PDOMGetNodeForLocation -> Int
pDOMGetNodeForLocationX PDOMGetNodeForLocation
p),
    (Text
"y" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PDOMGetNodeForLocation -> Int
pDOMGetNodeForLocationY PDOMGetNodeForLocation
p),
    (Text
"includeUserAgentShadowDOM" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMGetNodeForLocation -> Maybe Bool
pDOMGetNodeForLocationIncludeUserAgentShadowDOM PDOMGetNodeForLocation
p),
    (Text
"ignorePointerEventsNone" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMGetNodeForLocation -> Maybe Bool
pDOMGetNodeForLocationIgnorePointerEventsNone PDOMGetNodeForLocation
p)
    ]
data DOMGetNodeForLocation = DOMGetNodeForLocation
  {
    -- | Resulting node.
    DOMGetNodeForLocation -> Int
dOMGetNodeForLocationBackendNodeId :: DOMBackendNodeId,
    -- | Frame this node belongs to.
    DOMGetNodeForLocation -> Text
dOMGetNodeForLocationFrameId :: PageFrameId,
    -- | Id of the node at given coordinates, only when enabled and requested document.
    DOMGetNodeForLocation -> Maybe Int
dOMGetNodeForLocationNodeId :: Maybe DOMNodeId
  }
  deriving (DOMGetNodeForLocation -> DOMGetNodeForLocation -> Bool
(DOMGetNodeForLocation -> DOMGetNodeForLocation -> Bool)
-> (DOMGetNodeForLocation -> DOMGetNodeForLocation -> Bool)
-> Eq DOMGetNodeForLocation
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMGetNodeForLocation -> DOMGetNodeForLocation -> Bool
$c/= :: DOMGetNodeForLocation -> DOMGetNodeForLocation -> Bool
== :: DOMGetNodeForLocation -> DOMGetNodeForLocation -> Bool
$c== :: DOMGetNodeForLocation -> DOMGetNodeForLocation -> Bool
Eq, Int -> DOMGetNodeForLocation -> ShowS
[DOMGetNodeForLocation] -> ShowS
DOMGetNodeForLocation -> String
(Int -> DOMGetNodeForLocation -> ShowS)
-> (DOMGetNodeForLocation -> String)
-> ([DOMGetNodeForLocation] -> ShowS)
-> Show DOMGetNodeForLocation
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMGetNodeForLocation] -> ShowS
$cshowList :: [DOMGetNodeForLocation] -> ShowS
show :: DOMGetNodeForLocation -> String
$cshow :: DOMGetNodeForLocation -> String
showsPrec :: Int -> DOMGetNodeForLocation -> ShowS
$cshowsPrec :: Int -> DOMGetNodeForLocation -> ShowS
Show)
instance FromJSON DOMGetNodeForLocation where
  parseJSON :: Value -> Parser DOMGetNodeForLocation
parseJSON = String
-> (Object -> Parser DOMGetNodeForLocation)
-> Value
-> Parser DOMGetNodeForLocation
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMGetNodeForLocation" ((Object -> Parser DOMGetNodeForLocation)
 -> Value -> Parser DOMGetNodeForLocation)
-> (Object -> Parser DOMGetNodeForLocation)
-> Value
-> Parser DOMGetNodeForLocation
forall a b. (a -> b) -> a -> b
$ \Object
o -> Int -> Text -> Maybe Int -> DOMGetNodeForLocation
DOMGetNodeForLocation
    (Int -> Text -> Maybe Int -> DOMGetNodeForLocation)
-> Parser Int
-> Parser (Text -> Maybe Int -> DOMGetNodeForLocation)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"backendNodeId"
    Parser (Text -> Maybe Int -> DOMGetNodeForLocation)
-> Parser Text -> Parser (Maybe Int -> DOMGetNodeForLocation)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"frameId"
    Parser (Maybe Int -> DOMGetNodeForLocation)
-> Parser (Maybe Int) -> Parser DOMGetNodeForLocation
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Int)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"nodeId"
instance Command PDOMGetNodeForLocation where
  type CommandResponse PDOMGetNodeForLocation = DOMGetNodeForLocation
  commandName :: Proxy PDOMGetNodeForLocation -> String
commandName Proxy PDOMGetNodeForLocation
_ = String
"DOM.getNodeForLocation"

-- | Returns node's HTML markup.

-- | Parameters of the 'DOM.getOuterHTML' command.
data PDOMGetOuterHTML = PDOMGetOuterHTML
  {
    -- | Identifier of the node.
    PDOMGetOuterHTML -> Maybe Int
pDOMGetOuterHTMLNodeId :: Maybe DOMNodeId,
    -- | Identifier of the backend node.
    PDOMGetOuterHTML -> Maybe Int
pDOMGetOuterHTMLBackendNodeId :: Maybe DOMBackendNodeId,
    -- | JavaScript object id of the node wrapper.
    PDOMGetOuterHTML -> Maybe Text
pDOMGetOuterHTMLObjectId :: Maybe Runtime.RuntimeRemoteObjectId
  }
  deriving (PDOMGetOuterHTML -> PDOMGetOuterHTML -> Bool
(PDOMGetOuterHTML -> PDOMGetOuterHTML -> Bool)
-> (PDOMGetOuterHTML -> PDOMGetOuterHTML -> Bool)
-> Eq PDOMGetOuterHTML
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMGetOuterHTML -> PDOMGetOuterHTML -> Bool
$c/= :: PDOMGetOuterHTML -> PDOMGetOuterHTML -> Bool
== :: PDOMGetOuterHTML -> PDOMGetOuterHTML -> Bool
$c== :: PDOMGetOuterHTML -> PDOMGetOuterHTML -> Bool
Eq, Int -> PDOMGetOuterHTML -> ShowS
[PDOMGetOuterHTML] -> ShowS
PDOMGetOuterHTML -> String
(Int -> PDOMGetOuterHTML -> ShowS)
-> (PDOMGetOuterHTML -> String)
-> ([PDOMGetOuterHTML] -> ShowS)
-> Show PDOMGetOuterHTML
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMGetOuterHTML] -> ShowS
$cshowList :: [PDOMGetOuterHTML] -> ShowS
show :: PDOMGetOuterHTML -> String
$cshow :: PDOMGetOuterHTML -> String
showsPrec :: Int -> PDOMGetOuterHTML -> ShowS
$cshowsPrec :: Int -> PDOMGetOuterHTML -> ShowS
Show)
pDOMGetOuterHTML
  :: PDOMGetOuterHTML
pDOMGetOuterHTML :: PDOMGetOuterHTML
pDOMGetOuterHTML
  = Maybe Int -> Maybe Int -> Maybe Text -> PDOMGetOuterHTML
PDOMGetOuterHTML
    Maybe Int
forall a. Maybe a
Nothing
    Maybe Int
forall a. Maybe a
Nothing
    Maybe Text
forall a. Maybe a
Nothing
instance ToJSON PDOMGetOuterHTML where
  toJSON :: PDOMGetOuterHTML -> Value
toJSON PDOMGetOuterHTML
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"nodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMGetOuterHTML -> Maybe Int
pDOMGetOuterHTMLNodeId PDOMGetOuterHTML
p),
    (Text
"backendNodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMGetOuterHTML -> Maybe Int
pDOMGetOuterHTMLBackendNodeId PDOMGetOuterHTML
p),
    (Text
"objectId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMGetOuterHTML -> Maybe Text
pDOMGetOuterHTMLObjectId PDOMGetOuterHTML
p)
    ]
data DOMGetOuterHTML = DOMGetOuterHTML
  {
    -- | Outer HTML markup.
    DOMGetOuterHTML -> Text
dOMGetOuterHTMLOuterHTML :: T.Text
  }
  deriving (DOMGetOuterHTML -> DOMGetOuterHTML -> Bool
(DOMGetOuterHTML -> DOMGetOuterHTML -> Bool)
-> (DOMGetOuterHTML -> DOMGetOuterHTML -> Bool)
-> Eq DOMGetOuterHTML
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMGetOuterHTML -> DOMGetOuterHTML -> Bool
$c/= :: DOMGetOuterHTML -> DOMGetOuterHTML -> Bool
== :: DOMGetOuterHTML -> DOMGetOuterHTML -> Bool
$c== :: DOMGetOuterHTML -> DOMGetOuterHTML -> Bool
Eq, Int -> DOMGetOuterHTML -> ShowS
[DOMGetOuterHTML] -> ShowS
DOMGetOuterHTML -> String
(Int -> DOMGetOuterHTML -> ShowS)
-> (DOMGetOuterHTML -> String)
-> ([DOMGetOuterHTML] -> ShowS)
-> Show DOMGetOuterHTML
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMGetOuterHTML] -> ShowS
$cshowList :: [DOMGetOuterHTML] -> ShowS
show :: DOMGetOuterHTML -> String
$cshow :: DOMGetOuterHTML -> String
showsPrec :: Int -> DOMGetOuterHTML -> ShowS
$cshowsPrec :: Int -> DOMGetOuterHTML -> ShowS
Show)
instance FromJSON DOMGetOuterHTML where
  parseJSON :: Value -> Parser DOMGetOuterHTML
parseJSON = String
-> (Object -> Parser DOMGetOuterHTML)
-> Value
-> Parser DOMGetOuterHTML
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMGetOuterHTML" ((Object -> Parser DOMGetOuterHTML)
 -> Value -> Parser DOMGetOuterHTML)
-> (Object -> Parser DOMGetOuterHTML)
-> Value
-> Parser DOMGetOuterHTML
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> DOMGetOuterHTML
DOMGetOuterHTML
    (Text -> DOMGetOuterHTML) -> Parser Text -> Parser DOMGetOuterHTML
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"outerHTML"
instance Command PDOMGetOuterHTML where
  type CommandResponse PDOMGetOuterHTML = DOMGetOuterHTML
  commandName :: Proxy PDOMGetOuterHTML -> String
commandName Proxy PDOMGetOuterHTML
_ = String
"DOM.getOuterHTML"

-- | Returns the id of the nearest ancestor that is a relayout boundary.

-- | Parameters of the 'DOM.getRelayoutBoundary' command.
data PDOMGetRelayoutBoundary = PDOMGetRelayoutBoundary
  {
    -- | Id of the node.
    PDOMGetRelayoutBoundary -> Int
pDOMGetRelayoutBoundaryNodeId :: DOMNodeId
  }
  deriving (PDOMGetRelayoutBoundary -> PDOMGetRelayoutBoundary -> Bool
(PDOMGetRelayoutBoundary -> PDOMGetRelayoutBoundary -> Bool)
-> (PDOMGetRelayoutBoundary -> PDOMGetRelayoutBoundary -> Bool)
-> Eq PDOMGetRelayoutBoundary
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMGetRelayoutBoundary -> PDOMGetRelayoutBoundary -> Bool
$c/= :: PDOMGetRelayoutBoundary -> PDOMGetRelayoutBoundary -> Bool
== :: PDOMGetRelayoutBoundary -> PDOMGetRelayoutBoundary -> Bool
$c== :: PDOMGetRelayoutBoundary -> PDOMGetRelayoutBoundary -> Bool
Eq, Int -> PDOMGetRelayoutBoundary -> ShowS
[PDOMGetRelayoutBoundary] -> ShowS
PDOMGetRelayoutBoundary -> String
(Int -> PDOMGetRelayoutBoundary -> ShowS)
-> (PDOMGetRelayoutBoundary -> String)
-> ([PDOMGetRelayoutBoundary] -> ShowS)
-> Show PDOMGetRelayoutBoundary
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMGetRelayoutBoundary] -> ShowS
$cshowList :: [PDOMGetRelayoutBoundary] -> ShowS
show :: PDOMGetRelayoutBoundary -> String
$cshow :: PDOMGetRelayoutBoundary -> String
showsPrec :: Int -> PDOMGetRelayoutBoundary -> ShowS
$cshowsPrec :: Int -> PDOMGetRelayoutBoundary -> ShowS
Show)
pDOMGetRelayoutBoundary
  {-
  -- | Id of the node.
  -}
  :: DOMNodeId
  -> PDOMGetRelayoutBoundary
pDOMGetRelayoutBoundary :: Int -> PDOMGetRelayoutBoundary
pDOMGetRelayoutBoundary
  Int
arg_pDOMGetRelayoutBoundaryNodeId
  = Int -> PDOMGetRelayoutBoundary
PDOMGetRelayoutBoundary
    Int
arg_pDOMGetRelayoutBoundaryNodeId
instance ToJSON PDOMGetRelayoutBoundary where
  toJSON :: PDOMGetRelayoutBoundary -> Value
toJSON PDOMGetRelayoutBoundary
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"nodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PDOMGetRelayoutBoundary -> Int
pDOMGetRelayoutBoundaryNodeId PDOMGetRelayoutBoundary
p)
    ]
data DOMGetRelayoutBoundary = DOMGetRelayoutBoundary
  {
    -- | Relayout boundary node id for the given node.
    DOMGetRelayoutBoundary -> Int
dOMGetRelayoutBoundaryNodeId :: DOMNodeId
  }
  deriving (DOMGetRelayoutBoundary -> DOMGetRelayoutBoundary -> Bool
(DOMGetRelayoutBoundary -> DOMGetRelayoutBoundary -> Bool)
-> (DOMGetRelayoutBoundary -> DOMGetRelayoutBoundary -> Bool)
-> Eq DOMGetRelayoutBoundary
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMGetRelayoutBoundary -> DOMGetRelayoutBoundary -> Bool
$c/= :: DOMGetRelayoutBoundary -> DOMGetRelayoutBoundary -> Bool
== :: DOMGetRelayoutBoundary -> DOMGetRelayoutBoundary -> Bool
$c== :: DOMGetRelayoutBoundary -> DOMGetRelayoutBoundary -> Bool
Eq, Int -> DOMGetRelayoutBoundary -> ShowS
[DOMGetRelayoutBoundary] -> ShowS
DOMGetRelayoutBoundary -> String
(Int -> DOMGetRelayoutBoundary -> ShowS)
-> (DOMGetRelayoutBoundary -> String)
-> ([DOMGetRelayoutBoundary] -> ShowS)
-> Show DOMGetRelayoutBoundary
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMGetRelayoutBoundary] -> ShowS
$cshowList :: [DOMGetRelayoutBoundary] -> ShowS
show :: DOMGetRelayoutBoundary -> String
$cshow :: DOMGetRelayoutBoundary -> String
showsPrec :: Int -> DOMGetRelayoutBoundary -> ShowS
$cshowsPrec :: Int -> DOMGetRelayoutBoundary -> ShowS
Show)
instance FromJSON DOMGetRelayoutBoundary where
  parseJSON :: Value -> Parser DOMGetRelayoutBoundary
parseJSON = String
-> (Object -> Parser DOMGetRelayoutBoundary)
-> Value
-> Parser DOMGetRelayoutBoundary
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMGetRelayoutBoundary" ((Object -> Parser DOMGetRelayoutBoundary)
 -> Value -> Parser DOMGetRelayoutBoundary)
-> (Object -> Parser DOMGetRelayoutBoundary)
-> Value
-> Parser DOMGetRelayoutBoundary
forall a b. (a -> b) -> a -> b
$ \Object
o -> Int -> DOMGetRelayoutBoundary
DOMGetRelayoutBoundary
    (Int -> DOMGetRelayoutBoundary)
-> Parser Int -> Parser DOMGetRelayoutBoundary
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"nodeId"
instance Command PDOMGetRelayoutBoundary where
  type CommandResponse PDOMGetRelayoutBoundary = DOMGetRelayoutBoundary
  commandName :: Proxy PDOMGetRelayoutBoundary -> String
commandName Proxy PDOMGetRelayoutBoundary
_ = String
"DOM.getRelayoutBoundary"

-- | Returns search results from given `fromIndex` to given `toIndex` from the search with the given
--   identifier.

-- | Parameters of the 'DOM.getSearchResults' command.
data PDOMGetSearchResults = PDOMGetSearchResults
  {
    -- | Unique search session identifier.
    PDOMGetSearchResults -> Text
pDOMGetSearchResultsSearchId :: T.Text,
    -- | Start index of the search result to be returned.
    PDOMGetSearchResults -> Int
pDOMGetSearchResultsFromIndex :: Int,
    -- | End index of the search result to be returned.
    PDOMGetSearchResults -> Int
pDOMGetSearchResultsToIndex :: Int
  }
  deriving (PDOMGetSearchResults -> PDOMGetSearchResults -> Bool
(PDOMGetSearchResults -> PDOMGetSearchResults -> Bool)
-> (PDOMGetSearchResults -> PDOMGetSearchResults -> Bool)
-> Eq PDOMGetSearchResults
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMGetSearchResults -> PDOMGetSearchResults -> Bool
$c/= :: PDOMGetSearchResults -> PDOMGetSearchResults -> Bool
== :: PDOMGetSearchResults -> PDOMGetSearchResults -> Bool
$c== :: PDOMGetSearchResults -> PDOMGetSearchResults -> Bool
Eq, Int -> PDOMGetSearchResults -> ShowS
[PDOMGetSearchResults] -> ShowS
PDOMGetSearchResults -> String
(Int -> PDOMGetSearchResults -> ShowS)
-> (PDOMGetSearchResults -> String)
-> ([PDOMGetSearchResults] -> ShowS)
-> Show PDOMGetSearchResults
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMGetSearchResults] -> ShowS
$cshowList :: [PDOMGetSearchResults] -> ShowS
show :: PDOMGetSearchResults -> String
$cshow :: PDOMGetSearchResults -> String
showsPrec :: Int -> PDOMGetSearchResults -> ShowS
$cshowsPrec :: Int -> PDOMGetSearchResults -> ShowS
Show)
pDOMGetSearchResults
  {-
  -- | Unique search session identifier.
  -}
  :: T.Text
  {-
  -- | Start index of the search result to be returned.
  -}
  -> Int
  {-
  -- | End index of the search result to be returned.
  -}
  -> Int
  -> PDOMGetSearchResults
pDOMGetSearchResults :: Text -> Int -> Int -> PDOMGetSearchResults
pDOMGetSearchResults
  Text
arg_pDOMGetSearchResultsSearchId
  Int
arg_pDOMGetSearchResultsFromIndex
  Int
arg_pDOMGetSearchResultsToIndex
  = Text -> Int -> Int -> PDOMGetSearchResults
PDOMGetSearchResults
    Text
arg_pDOMGetSearchResultsSearchId
    Int
arg_pDOMGetSearchResultsFromIndex
    Int
arg_pDOMGetSearchResultsToIndex
instance ToJSON PDOMGetSearchResults where
  toJSON :: PDOMGetSearchResults -> Value
toJSON PDOMGetSearchResults
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"searchId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PDOMGetSearchResults -> Text
pDOMGetSearchResultsSearchId PDOMGetSearchResults
p),
    (Text
"fromIndex" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PDOMGetSearchResults -> Int
pDOMGetSearchResultsFromIndex PDOMGetSearchResults
p),
    (Text
"toIndex" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PDOMGetSearchResults -> Int
pDOMGetSearchResultsToIndex PDOMGetSearchResults
p)
    ]
data DOMGetSearchResults = DOMGetSearchResults
  {
    -- | Ids of the search result nodes.
    DOMGetSearchResults -> [Int]
dOMGetSearchResultsNodeIds :: [DOMNodeId]
  }
  deriving (DOMGetSearchResults -> DOMGetSearchResults -> Bool
(DOMGetSearchResults -> DOMGetSearchResults -> Bool)
-> (DOMGetSearchResults -> DOMGetSearchResults -> Bool)
-> Eq DOMGetSearchResults
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMGetSearchResults -> DOMGetSearchResults -> Bool
$c/= :: DOMGetSearchResults -> DOMGetSearchResults -> Bool
== :: DOMGetSearchResults -> DOMGetSearchResults -> Bool
$c== :: DOMGetSearchResults -> DOMGetSearchResults -> Bool
Eq, Int -> DOMGetSearchResults -> ShowS
[DOMGetSearchResults] -> ShowS
DOMGetSearchResults -> String
(Int -> DOMGetSearchResults -> ShowS)
-> (DOMGetSearchResults -> String)
-> ([DOMGetSearchResults] -> ShowS)
-> Show DOMGetSearchResults
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMGetSearchResults] -> ShowS
$cshowList :: [DOMGetSearchResults] -> ShowS
show :: DOMGetSearchResults -> String
$cshow :: DOMGetSearchResults -> String
showsPrec :: Int -> DOMGetSearchResults -> ShowS
$cshowsPrec :: Int -> DOMGetSearchResults -> ShowS
Show)
instance FromJSON DOMGetSearchResults where
  parseJSON :: Value -> Parser DOMGetSearchResults
parseJSON = String
-> (Object -> Parser DOMGetSearchResults)
-> Value
-> Parser DOMGetSearchResults
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMGetSearchResults" ((Object -> Parser DOMGetSearchResults)
 -> Value -> Parser DOMGetSearchResults)
-> (Object -> Parser DOMGetSearchResults)
-> Value
-> Parser DOMGetSearchResults
forall a b. (a -> b) -> a -> b
$ \Object
o -> [Int] -> DOMGetSearchResults
DOMGetSearchResults
    ([Int] -> DOMGetSearchResults)
-> Parser [Int] -> Parser DOMGetSearchResults
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser [Int]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"nodeIds"
instance Command PDOMGetSearchResults where
  type CommandResponse PDOMGetSearchResults = DOMGetSearchResults
  commandName :: Proxy PDOMGetSearchResults -> String
commandName Proxy PDOMGetSearchResults
_ = String
"DOM.getSearchResults"

-- | Hides any highlight.

-- | Parameters of the 'DOM.hideHighlight' command.
data PDOMHideHighlight = PDOMHideHighlight
  deriving (PDOMHideHighlight -> PDOMHideHighlight -> Bool
(PDOMHideHighlight -> PDOMHideHighlight -> Bool)
-> (PDOMHideHighlight -> PDOMHideHighlight -> Bool)
-> Eq PDOMHideHighlight
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMHideHighlight -> PDOMHideHighlight -> Bool
$c/= :: PDOMHideHighlight -> PDOMHideHighlight -> Bool
== :: PDOMHideHighlight -> PDOMHideHighlight -> Bool
$c== :: PDOMHideHighlight -> PDOMHideHighlight -> Bool
Eq, Int -> PDOMHideHighlight -> ShowS
[PDOMHideHighlight] -> ShowS
PDOMHideHighlight -> String
(Int -> PDOMHideHighlight -> ShowS)
-> (PDOMHideHighlight -> String)
-> ([PDOMHideHighlight] -> ShowS)
-> Show PDOMHideHighlight
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMHideHighlight] -> ShowS
$cshowList :: [PDOMHideHighlight] -> ShowS
show :: PDOMHideHighlight -> String
$cshow :: PDOMHideHighlight -> String
showsPrec :: Int -> PDOMHideHighlight -> ShowS
$cshowsPrec :: Int -> PDOMHideHighlight -> ShowS
Show)
pDOMHideHighlight
  :: PDOMHideHighlight
pDOMHideHighlight :: PDOMHideHighlight
pDOMHideHighlight
  = PDOMHideHighlight
PDOMHideHighlight
instance ToJSON PDOMHideHighlight where
  toJSON :: PDOMHideHighlight -> Value
toJSON PDOMHideHighlight
_ = Value
A.Null
instance Command PDOMHideHighlight where
  type CommandResponse PDOMHideHighlight = ()
  commandName :: Proxy PDOMHideHighlight -> String
commandName Proxy PDOMHideHighlight
_ = String
"DOM.hideHighlight"
  fromJSON :: Proxy PDOMHideHighlight
-> Value -> Result (CommandResponse PDOMHideHighlight)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PDOMHideHighlight -> Result ())
-> Proxy PDOMHideHighlight
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PDOMHideHighlight -> ())
-> Proxy PDOMHideHighlight
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PDOMHideHighlight -> ()
forall a b. a -> b -> a
const ()

-- | Highlights DOM node.

-- | Parameters of the 'DOM.highlightNode' command.
data PDOMHighlightNode = PDOMHighlightNode
  deriving (PDOMHighlightNode -> PDOMHighlightNode -> Bool
(PDOMHighlightNode -> PDOMHighlightNode -> Bool)
-> (PDOMHighlightNode -> PDOMHighlightNode -> Bool)
-> Eq PDOMHighlightNode
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMHighlightNode -> PDOMHighlightNode -> Bool
$c/= :: PDOMHighlightNode -> PDOMHighlightNode -> Bool
== :: PDOMHighlightNode -> PDOMHighlightNode -> Bool
$c== :: PDOMHighlightNode -> PDOMHighlightNode -> Bool
Eq, Int -> PDOMHighlightNode -> ShowS
[PDOMHighlightNode] -> ShowS
PDOMHighlightNode -> String
(Int -> PDOMHighlightNode -> ShowS)
-> (PDOMHighlightNode -> String)
-> ([PDOMHighlightNode] -> ShowS)
-> Show PDOMHighlightNode
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMHighlightNode] -> ShowS
$cshowList :: [PDOMHighlightNode] -> ShowS
show :: PDOMHighlightNode -> String
$cshow :: PDOMHighlightNode -> String
showsPrec :: Int -> PDOMHighlightNode -> ShowS
$cshowsPrec :: Int -> PDOMHighlightNode -> ShowS
Show)
pDOMHighlightNode
  :: PDOMHighlightNode
pDOMHighlightNode :: PDOMHighlightNode
pDOMHighlightNode
  = PDOMHighlightNode
PDOMHighlightNode
instance ToJSON PDOMHighlightNode where
  toJSON :: PDOMHighlightNode -> Value
toJSON PDOMHighlightNode
_ = Value
A.Null
instance Command PDOMHighlightNode where
  type CommandResponse PDOMHighlightNode = ()
  commandName :: Proxy PDOMHighlightNode -> String
commandName Proxy PDOMHighlightNode
_ = String
"DOM.highlightNode"
  fromJSON :: Proxy PDOMHighlightNode
-> Value -> Result (CommandResponse PDOMHighlightNode)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PDOMHighlightNode -> Result ())
-> Proxy PDOMHighlightNode
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PDOMHighlightNode -> ())
-> Proxy PDOMHighlightNode
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PDOMHighlightNode -> ()
forall a b. a -> b -> a
const ()

-- | Highlights given rectangle.

-- | Parameters of the 'DOM.highlightRect' command.
data PDOMHighlightRect = PDOMHighlightRect
  deriving (PDOMHighlightRect -> PDOMHighlightRect -> Bool
(PDOMHighlightRect -> PDOMHighlightRect -> Bool)
-> (PDOMHighlightRect -> PDOMHighlightRect -> Bool)
-> Eq PDOMHighlightRect
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMHighlightRect -> PDOMHighlightRect -> Bool
$c/= :: PDOMHighlightRect -> PDOMHighlightRect -> Bool
== :: PDOMHighlightRect -> PDOMHighlightRect -> Bool
$c== :: PDOMHighlightRect -> PDOMHighlightRect -> Bool
Eq, Int -> PDOMHighlightRect -> ShowS
[PDOMHighlightRect] -> ShowS
PDOMHighlightRect -> String
(Int -> PDOMHighlightRect -> ShowS)
-> (PDOMHighlightRect -> String)
-> ([PDOMHighlightRect] -> ShowS)
-> Show PDOMHighlightRect
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMHighlightRect] -> ShowS
$cshowList :: [PDOMHighlightRect] -> ShowS
show :: PDOMHighlightRect -> String
$cshow :: PDOMHighlightRect -> String
showsPrec :: Int -> PDOMHighlightRect -> ShowS
$cshowsPrec :: Int -> PDOMHighlightRect -> ShowS
Show)
pDOMHighlightRect
  :: PDOMHighlightRect
pDOMHighlightRect :: PDOMHighlightRect
pDOMHighlightRect
  = PDOMHighlightRect
PDOMHighlightRect
instance ToJSON PDOMHighlightRect where
  toJSON :: PDOMHighlightRect -> Value
toJSON PDOMHighlightRect
_ = Value
A.Null
instance Command PDOMHighlightRect where
  type CommandResponse PDOMHighlightRect = ()
  commandName :: Proxy PDOMHighlightRect -> String
commandName Proxy PDOMHighlightRect
_ = String
"DOM.highlightRect"
  fromJSON :: Proxy PDOMHighlightRect
-> Value -> Result (CommandResponse PDOMHighlightRect)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PDOMHighlightRect -> Result ())
-> Proxy PDOMHighlightRect
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PDOMHighlightRect -> ())
-> Proxy PDOMHighlightRect
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PDOMHighlightRect -> ()
forall a b. a -> b -> a
const ()

-- | Marks last undoable state.

-- | Parameters of the 'DOM.markUndoableState' command.
data PDOMMarkUndoableState = PDOMMarkUndoableState
  deriving (PDOMMarkUndoableState -> PDOMMarkUndoableState -> Bool
(PDOMMarkUndoableState -> PDOMMarkUndoableState -> Bool)
-> (PDOMMarkUndoableState -> PDOMMarkUndoableState -> Bool)
-> Eq PDOMMarkUndoableState
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMMarkUndoableState -> PDOMMarkUndoableState -> Bool
$c/= :: PDOMMarkUndoableState -> PDOMMarkUndoableState -> Bool
== :: PDOMMarkUndoableState -> PDOMMarkUndoableState -> Bool
$c== :: PDOMMarkUndoableState -> PDOMMarkUndoableState -> Bool
Eq, Int -> PDOMMarkUndoableState -> ShowS
[PDOMMarkUndoableState] -> ShowS
PDOMMarkUndoableState -> String
(Int -> PDOMMarkUndoableState -> ShowS)
-> (PDOMMarkUndoableState -> String)
-> ([PDOMMarkUndoableState] -> ShowS)
-> Show PDOMMarkUndoableState
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMMarkUndoableState] -> ShowS
$cshowList :: [PDOMMarkUndoableState] -> ShowS
show :: PDOMMarkUndoableState -> String
$cshow :: PDOMMarkUndoableState -> String
showsPrec :: Int -> PDOMMarkUndoableState -> ShowS
$cshowsPrec :: Int -> PDOMMarkUndoableState -> ShowS
Show)
pDOMMarkUndoableState
  :: PDOMMarkUndoableState
pDOMMarkUndoableState :: PDOMMarkUndoableState
pDOMMarkUndoableState
  = PDOMMarkUndoableState
PDOMMarkUndoableState
instance ToJSON PDOMMarkUndoableState where
  toJSON :: PDOMMarkUndoableState -> Value
toJSON PDOMMarkUndoableState
_ = Value
A.Null
instance Command PDOMMarkUndoableState where
  type CommandResponse PDOMMarkUndoableState = ()
  commandName :: Proxy PDOMMarkUndoableState -> String
commandName Proxy PDOMMarkUndoableState
_ = String
"DOM.markUndoableState"
  fromJSON :: Proxy PDOMMarkUndoableState
-> Value -> Result (CommandResponse PDOMMarkUndoableState)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PDOMMarkUndoableState -> Result ())
-> Proxy PDOMMarkUndoableState
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PDOMMarkUndoableState -> ())
-> Proxy PDOMMarkUndoableState
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PDOMMarkUndoableState -> ()
forall a b. a -> b -> a
const ()

-- | Moves node into the new container, places it before the given anchor.

-- | Parameters of the 'DOM.moveTo' command.
data PDOMMoveTo = PDOMMoveTo
  {
    -- | Id of the node to move.
    PDOMMoveTo -> Int
pDOMMoveToNodeId :: DOMNodeId,
    -- | Id of the element to drop the moved node into.
    PDOMMoveTo -> Int
pDOMMoveToTargetNodeId :: DOMNodeId,
    -- | Drop node before this one (if absent, the moved node becomes the last child of
    --   `targetNodeId`).
    PDOMMoveTo -> Maybe Int
pDOMMoveToInsertBeforeNodeId :: Maybe DOMNodeId
  }
  deriving (PDOMMoveTo -> PDOMMoveTo -> Bool
(PDOMMoveTo -> PDOMMoveTo -> Bool)
-> (PDOMMoveTo -> PDOMMoveTo -> Bool) -> Eq PDOMMoveTo
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMMoveTo -> PDOMMoveTo -> Bool
$c/= :: PDOMMoveTo -> PDOMMoveTo -> Bool
== :: PDOMMoveTo -> PDOMMoveTo -> Bool
$c== :: PDOMMoveTo -> PDOMMoveTo -> Bool
Eq, Int -> PDOMMoveTo -> ShowS
[PDOMMoveTo] -> ShowS
PDOMMoveTo -> String
(Int -> PDOMMoveTo -> ShowS)
-> (PDOMMoveTo -> String)
-> ([PDOMMoveTo] -> ShowS)
-> Show PDOMMoveTo
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMMoveTo] -> ShowS
$cshowList :: [PDOMMoveTo] -> ShowS
show :: PDOMMoveTo -> String
$cshow :: PDOMMoveTo -> String
showsPrec :: Int -> PDOMMoveTo -> ShowS
$cshowsPrec :: Int -> PDOMMoveTo -> ShowS
Show)
pDOMMoveTo
  {-
  -- | Id of the node to move.
  -}
  :: DOMNodeId
  {-
  -- | Id of the element to drop the moved node into.
  -}
  -> DOMNodeId
  -> PDOMMoveTo
pDOMMoveTo :: Int -> Int -> PDOMMoveTo
pDOMMoveTo
  Int
arg_pDOMMoveToNodeId
  Int
arg_pDOMMoveToTargetNodeId
  = Int -> Int -> Maybe Int -> PDOMMoveTo
PDOMMoveTo
    Int
arg_pDOMMoveToNodeId
    Int
arg_pDOMMoveToTargetNodeId
    Maybe Int
forall a. Maybe a
Nothing
instance ToJSON PDOMMoveTo where
  toJSON :: PDOMMoveTo -> Value
toJSON PDOMMoveTo
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"nodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PDOMMoveTo -> Int
pDOMMoveToNodeId PDOMMoveTo
p),
    (Text
"targetNodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PDOMMoveTo -> Int
pDOMMoveToTargetNodeId PDOMMoveTo
p),
    (Text
"insertBeforeNodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMMoveTo -> Maybe Int
pDOMMoveToInsertBeforeNodeId PDOMMoveTo
p)
    ]
data DOMMoveTo = DOMMoveTo
  {
    -- | New id of the moved node.
    DOMMoveTo -> Int
dOMMoveToNodeId :: DOMNodeId
  }
  deriving (DOMMoveTo -> DOMMoveTo -> Bool
(DOMMoveTo -> DOMMoveTo -> Bool)
-> (DOMMoveTo -> DOMMoveTo -> Bool) -> Eq DOMMoveTo
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMMoveTo -> DOMMoveTo -> Bool
$c/= :: DOMMoveTo -> DOMMoveTo -> Bool
== :: DOMMoveTo -> DOMMoveTo -> Bool
$c== :: DOMMoveTo -> DOMMoveTo -> Bool
Eq, Int -> DOMMoveTo -> ShowS
[DOMMoveTo] -> ShowS
DOMMoveTo -> String
(Int -> DOMMoveTo -> ShowS)
-> (DOMMoveTo -> String)
-> ([DOMMoveTo] -> ShowS)
-> Show DOMMoveTo
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMMoveTo] -> ShowS
$cshowList :: [DOMMoveTo] -> ShowS
show :: DOMMoveTo -> String
$cshow :: DOMMoveTo -> String
showsPrec :: Int -> DOMMoveTo -> ShowS
$cshowsPrec :: Int -> DOMMoveTo -> ShowS
Show)
instance FromJSON DOMMoveTo where
  parseJSON :: Value -> Parser DOMMoveTo
parseJSON = String -> (Object -> Parser DOMMoveTo) -> Value -> Parser DOMMoveTo
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMMoveTo" ((Object -> Parser DOMMoveTo) -> Value -> Parser DOMMoveTo)
-> (Object -> Parser DOMMoveTo) -> Value -> Parser DOMMoveTo
forall a b. (a -> b) -> a -> b
$ \Object
o -> Int -> DOMMoveTo
DOMMoveTo
    (Int -> DOMMoveTo) -> Parser Int -> Parser DOMMoveTo
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"nodeId"
instance Command PDOMMoveTo where
  type CommandResponse PDOMMoveTo = DOMMoveTo
  commandName :: Proxy PDOMMoveTo -> String
commandName Proxy PDOMMoveTo
_ = String
"DOM.moveTo"

-- | Searches for a given string in the DOM tree. Use `getSearchResults` to access search results or
--   `cancelSearch` to end this search session.

-- | Parameters of the 'DOM.performSearch' command.
data PDOMPerformSearch = PDOMPerformSearch
  {
    -- | Plain text or query selector or XPath search query.
    PDOMPerformSearch -> Text
pDOMPerformSearchQuery :: T.Text,
    -- | True to search in user agent shadow DOM.
    PDOMPerformSearch -> Maybe Bool
pDOMPerformSearchIncludeUserAgentShadowDOM :: Maybe Bool
  }
  deriving (PDOMPerformSearch -> PDOMPerformSearch -> Bool
(PDOMPerformSearch -> PDOMPerformSearch -> Bool)
-> (PDOMPerformSearch -> PDOMPerformSearch -> Bool)
-> Eq PDOMPerformSearch
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMPerformSearch -> PDOMPerformSearch -> Bool
$c/= :: PDOMPerformSearch -> PDOMPerformSearch -> Bool
== :: PDOMPerformSearch -> PDOMPerformSearch -> Bool
$c== :: PDOMPerformSearch -> PDOMPerformSearch -> Bool
Eq, Int -> PDOMPerformSearch -> ShowS
[PDOMPerformSearch] -> ShowS
PDOMPerformSearch -> String
(Int -> PDOMPerformSearch -> ShowS)
-> (PDOMPerformSearch -> String)
-> ([PDOMPerformSearch] -> ShowS)
-> Show PDOMPerformSearch
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMPerformSearch] -> ShowS
$cshowList :: [PDOMPerformSearch] -> ShowS
show :: PDOMPerformSearch -> String
$cshow :: PDOMPerformSearch -> String
showsPrec :: Int -> PDOMPerformSearch -> ShowS
$cshowsPrec :: Int -> PDOMPerformSearch -> ShowS
Show)
pDOMPerformSearch
  {-
  -- | Plain text or query selector or XPath search query.
  -}
  :: T.Text
  -> PDOMPerformSearch
pDOMPerformSearch :: Text -> PDOMPerformSearch
pDOMPerformSearch
  Text
arg_pDOMPerformSearchQuery
  = Text -> Maybe Bool -> PDOMPerformSearch
PDOMPerformSearch
    Text
arg_pDOMPerformSearchQuery
    Maybe Bool
forall a. Maybe a
Nothing
instance ToJSON PDOMPerformSearch where
  toJSON :: PDOMPerformSearch -> Value
toJSON PDOMPerformSearch
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"query" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PDOMPerformSearch -> Text
pDOMPerformSearchQuery PDOMPerformSearch
p),
    (Text
"includeUserAgentShadowDOM" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMPerformSearch -> Maybe Bool
pDOMPerformSearchIncludeUserAgentShadowDOM PDOMPerformSearch
p)
    ]
data DOMPerformSearch = DOMPerformSearch
  {
    -- | Unique search session identifier.
    DOMPerformSearch -> Text
dOMPerformSearchSearchId :: T.Text,
    -- | Number of search results.
    DOMPerformSearch -> Int
dOMPerformSearchResultCount :: Int
  }
  deriving (DOMPerformSearch -> DOMPerformSearch -> Bool
(DOMPerformSearch -> DOMPerformSearch -> Bool)
-> (DOMPerformSearch -> DOMPerformSearch -> Bool)
-> Eq DOMPerformSearch
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMPerformSearch -> DOMPerformSearch -> Bool
$c/= :: DOMPerformSearch -> DOMPerformSearch -> Bool
== :: DOMPerformSearch -> DOMPerformSearch -> Bool
$c== :: DOMPerformSearch -> DOMPerformSearch -> Bool
Eq, Int -> DOMPerformSearch -> ShowS
[DOMPerformSearch] -> ShowS
DOMPerformSearch -> String
(Int -> DOMPerformSearch -> ShowS)
-> (DOMPerformSearch -> String)
-> ([DOMPerformSearch] -> ShowS)
-> Show DOMPerformSearch
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMPerformSearch] -> ShowS
$cshowList :: [DOMPerformSearch] -> ShowS
show :: DOMPerformSearch -> String
$cshow :: DOMPerformSearch -> String
showsPrec :: Int -> DOMPerformSearch -> ShowS
$cshowsPrec :: Int -> DOMPerformSearch -> ShowS
Show)
instance FromJSON DOMPerformSearch where
  parseJSON :: Value -> Parser DOMPerformSearch
parseJSON = String
-> (Object -> Parser DOMPerformSearch)
-> Value
-> Parser DOMPerformSearch
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMPerformSearch" ((Object -> Parser DOMPerformSearch)
 -> Value -> Parser DOMPerformSearch)
-> (Object -> Parser DOMPerformSearch)
-> Value
-> Parser DOMPerformSearch
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> Int -> DOMPerformSearch
DOMPerformSearch
    (Text -> Int -> DOMPerformSearch)
-> Parser Text -> Parser (Int -> DOMPerformSearch)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"searchId"
    Parser (Int -> DOMPerformSearch)
-> Parser Int -> Parser DOMPerformSearch
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"resultCount"
instance Command PDOMPerformSearch where
  type CommandResponse PDOMPerformSearch = DOMPerformSearch
  commandName :: Proxy PDOMPerformSearch -> String
commandName Proxy PDOMPerformSearch
_ = String
"DOM.performSearch"

-- | Requests that the node is sent to the caller given its path. // FIXME, use XPath

-- | Parameters of the 'DOM.pushNodeByPathToFrontend' command.
data PDOMPushNodeByPathToFrontend = PDOMPushNodeByPathToFrontend
  {
    -- | Path to node in the proprietary format.
    PDOMPushNodeByPathToFrontend -> Text
pDOMPushNodeByPathToFrontendPath :: T.Text
  }
  deriving (PDOMPushNodeByPathToFrontend
-> PDOMPushNodeByPathToFrontend -> Bool
(PDOMPushNodeByPathToFrontend
 -> PDOMPushNodeByPathToFrontend -> Bool)
-> (PDOMPushNodeByPathToFrontend
    -> PDOMPushNodeByPathToFrontend -> Bool)
-> Eq PDOMPushNodeByPathToFrontend
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMPushNodeByPathToFrontend
-> PDOMPushNodeByPathToFrontend -> Bool
$c/= :: PDOMPushNodeByPathToFrontend
-> PDOMPushNodeByPathToFrontend -> Bool
== :: PDOMPushNodeByPathToFrontend
-> PDOMPushNodeByPathToFrontend -> Bool
$c== :: PDOMPushNodeByPathToFrontend
-> PDOMPushNodeByPathToFrontend -> Bool
Eq, Int -> PDOMPushNodeByPathToFrontend -> ShowS
[PDOMPushNodeByPathToFrontend] -> ShowS
PDOMPushNodeByPathToFrontend -> String
(Int -> PDOMPushNodeByPathToFrontend -> ShowS)
-> (PDOMPushNodeByPathToFrontend -> String)
-> ([PDOMPushNodeByPathToFrontend] -> ShowS)
-> Show PDOMPushNodeByPathToFrontend
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMPushNodeByPathToFrontend] -> ShowS
$cshowList :: [PDOMPushNodeByPathToFrontend] -> ShowS
show :: PDOMPushNodeByPathToFrontend -> String
$cshow :: PDOMPushNodeByPathToFrontend -> String
showsPrec :: Int -> PDOMPushNodeByPathToFrontend -> ShowS
$cshowsPrec :: Int -> PDOMPushNodeByPathToFrontend -> ShowS
Show)
pDOMPushNodeByPathToFrontend
  {-
  -- | Path to node in the proprietary format.
  -}
  :: T.Text
  -> PDOMPushNodeByPathToFrontend
pDOMPushNodeByPathToFrontend :: Text -> PDOMPushNodeByPathToFrontend
pDOMPushNodeByPathToFrontend
  Text
arg_pDOMPushNodeByPathToFrontendPath
  = Text -> PDOMPushNodeByPathToFrontend
PDOMPushNodeByPathToFrontend
    Text
arg_pDOMPushNodeByPathToFrontendPath
instance ToJSON PDOMPushNodeByPathToFrontend where
  toJSON :: PDOMPushNodeByPathToFrontend -> Value
toJSON PDOMPushNodeByPathToFrontend
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"path" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PDOMPushNodeByPathToFrontend -> Text
pDOMPushNodeByPathToFrontendPath PDOMPushNodeByPathToFrontend
p)
    ]
data DOMPushNodeByPathToFrontend = DOMPushNodeByPathToFrontend
  {
    -- | Id of the node for given path.
    DOMPushNodeByPathToFrontend -> Int
dOMPushNodeByPathToFrontendNodeId :: DOMNodeId
  }
  deriving (DOMPushNodeByPathToFrontend -> DOMPushNodeByPathToFrontend -> Bool
(DOMPushNodeByPathToFrontend
 -> DOMPushNodeByPathToFrontend -> Bool)
-> (DOMPushNodeByPathToFrontend
    -> DOMPushNodeByPathToFrontend -> Bool)
-> Eq DOMPushNodeByPathToFrontend
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMPushNodeByPathToFrontend -> DOMPushNodeByPathToFrontend -> Bool
$c/= :: DOMPushNodeByPathToFrontend -> DOMPushNodeByPathToFrontend -> Bool
== :: DOMPushNodeByPathToFrontend -> DOMPushNodeByPathToFrontend -> Bool
$c== :: DOMPushNodeByPathToFrontend -> DOMPushNodeByPathToFrontend -> Bool
Eq, Int -> DOMPushNodeByPathToFrontend -> ShowS
[DOMPushNodeByPathToFrontend] -> ShowS
DOMPushNodeByPathToFrontend -> String
(Int -> DOMPushNodeByPathToFrontend -> ShowS)
-> (DOMPushNodeByPathToFrontend -> String)
-> ([DOMPushNodeByPathToFrontend] -> ShowS)
-> Show DOMPushNodeByPathToFrontend
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMPushNodeByPathToFrontend] -> ShowS
$cshowList :: [DOMPushNodeByPathToFrontend] -> ShowS
show :: DOMPushNodeByPathToFrontend -> String
$cshow :: DOMPushNodeByPathToFrontend -> String
showsPrec :: Int -> DOMPushNodeByPathToFrontend -> ShowS
$cshowsPrec :: Int -> DOMPushNodeByPathToFrontend -> ShowS
Show)
instance FromJSON DOMPushNodeByPathToFrontend where
  parseJSON :: Value -> Parser DOMPushNodeByPathToFrontend
parseJSON = String
-> (Object -> Parser DOMPushNodeByPathToFrontend)
-> Value
-> Parser DOMPushNodeByPathToFrontend
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMPushNodeByPathToFrontend" ((Object -> Parser DOMPushNodeByPathToFrontend)
 -> Value -> Parser DOMPushNodeByPathToFrontend)
-> (Object -> Parser DOMPushNodeByPathToFrontend)
-> Value
-> Parser DOMPushNodeByPathToFrontend
forall a b. (a -> b) -> a -> b
$ \Object
o -> Int -> DOMPushNodeByPathToFrontend
DOMPushNodeByPathToFrontend
    (Int -> DOMPushNodeByPathToFrontend)
-> Parser Int -> Parser DOMPushNodeByPathToFrontend
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"nodeId"
instance Command PDOMPushNodeByPathToFrontend where
  type CommandResponse PDOMPushNodeByPathToFrontend = DOMPushNodeByPathToFrontend
  commandName :: Proxy PDOMPushNodeByPathToFrontend -> String
commandName Proxy PDOMPushNodeByPathToFrontend
_ = String
"DOM.pushNodeByPathToFrontend"

-- | Requests that a batch of nodes is sent to the caller given their backend node ids.

-- | Parameters of the 'DOM.pushNodesByBackendIdsToFrontend' command.
data PDOMPushNodesByBackendIdsToFrontend = PDOMPushNodesByBackendIdsToFrontend
  {
    -- | The array of backend node ids.
    PDOMPushNodesByBackendIdsToFrontend -> [Int]
pDOMPushNodesByBackendIdsToFrontendBackendNodeIds :: [DOMBackendNodeId]
  }
  deriving (PDOMPushNodesByBackendIdsToFrontend
-> PDOMPushNodesByBackendIdsToFrontend -> Bool
(PDOMPushNodesByBackendIdsToFrontend
 -> PDOMPushNodesByBackendIdsToFrontend -> Bool)
-> (PDOMPushNodesByBackendIdsToFrontend
    -> PDOMPushNodesByBackendIdsToFrontend -> Bool)
-> Eq PDOMPushNodesByBackendIdsToFrontend
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMPushNodesByBackendIdsToFrontend
-> PDOMPushNodesByBackendIdsToFrontend -> Bool
$c/= :: PDOMPushNodesByBackendIdsToFrontend
-> PDOMPushNodesByBackendIdsToFrontend -> Bool
== :: PDOMPushNodesByBackendIdsToFrontend
-> PDOMPushNodesByBackendIdsToFrontend -> Bool
$c== :: PDOMPushNodesByBackendIdsToFrontend
-> PDOMPushNodesByBackendIdsToFrontend -> Bool
Eq, Int -> PDOMPushNodesByBackendIdsToFrontend -> ShowS
[PDOMPushNodesByBackendIdsToFrontend] -> ShowS
PDOMPushNodesByBackendIdsToFrontend -> String
(Int -> PDOMPushNodesByBackendIdsToFrontend -> ShowS)
-> (PDOMPushNodesByBackendIdsToFrontend -> String)
-> ([PDOMPushNodesByBackendIdsToFrontend] -> ShowS)
-> Show PDOMPushNodesByBackendIdsToFrontend
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMPushNodesByBackendIdsToFrontend] -> ShowS
$cshowList :: [PDOMPushNodesByBackendIdsToFrontend] -> ShowS
show :: PDOMPushNodesByBackendIdsToFrontend -> String
$cshow :: PDOMPushNodesByBackendIdsToFrontend -> String
showsPrec :: Int -> PDOMPushNodesByBackendIdsToFrontend -> ShowS
$cshowsPrec :: Int -> PDOMPushNodesByBackendIdsToFrontend -> ShowS
Show)
pDOMPushNodesByBackendIdsToFrontend
  {-
  -- | The array of backend node ids.
  -}
  :: [DOMBackendNodeId]
  -> PDOMPushNodesByBackendIdsToFrontend
pDOMPushNodesByBackendIdsToFrontend :: [Int] -> PDOMPushNodesByBackendIdsToFrontend
pDOMPushNodesByBackendIdsToFrontend
  [Int]
arg_pDOMPushNodesByBackendIdsToFrontendBackendNodeIds
  = [Int] -> PDOMPushNodesByBackendIdsToFrontend
PDOMPushNodesByBackendIdsToFrontend
    [Int]
arg_pDOMPushNodesByBackendIdsToFrontendBackendNodeIds
instance ToJSON PDOMPushNodesByBackendIdsToFrontend where
  toJSON :: PDOMPushNodesByBackendIdsToFrontend -> Value
toJSON PDOMPushNodesByBackendIdsToFrontend
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"backendNodeIds" Text -> [Int] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([Int] -> Pair) -> Maybe [Int] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> [Int] -> Maybe [Int]
forall a. a -> Maybe a
Just (PDOMPushNodesByBackendIdsToFrontend -> [Int]
pDOMPushNodesByBackendIdsToFrontendBackendNodeIds PDOMPushNodesByBackendIdsToFrontend
p)
    ]
data DOMPushNodesByBackendIdsToFrontend = DOMPushNodesByBackendIdsToFrontend
  {
    -- | The array of ids of pushed nodes that correspond to the backend ids specified in
    --   backendNodeIds.
    DOMPushNodesByBackendIdsToFrontend -> [Int]
dOMPushNodesByBackendIdsToFrontendNodeIds :: [DOMNodeId]
  }
  deriving (DOMPushNodesByBackendIdsToFrontend
-> DOMPushNodesByBackendIdsToFrontend -> Bool
(DOMPushNodesByBackendIdsToFrontend
 -> DOMPushNodesByBackendIdsToFrontend -> Bool)
-> (DOMPushNodesByBackendIdsToFrontend
    -> DOMPushNodesByBackendIdsToFrontend -> Bool)
-> Eq DOMPushNodesByBackendIdsToFrontend
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMPushNodesByBackendIdsToFrontend
-> DOMPushNodesByBackendIdsToFrontend -> Bool
$c/= :: DOMPushNodesByBackendIdsToFrontend
-> DOMPushNodesByBackendIdsToFrontend -> Bool
== :: DOMPushNodesByBackendIdsToFrontend
-> DOMPushNodesByBackendIdsToFrontend -> Bool
$c== :: DOMPushNodesByBackendIdsToFrontend
-> DOMPushNodesByBackendIdsToFrontend -> Bool
Eq, Int -> DOMPushNodesByBackendIdsToFrontend -> ShowS
[DOMPushNodesByBackendIdsToFrontend] -> ShowS
DOMPushNodesByBackendIdsToFrontend -> String
(Int -> DOMPushNodesByBackendIdsToFrontend -> ShowS)
-> (DOMPushNodesByBackendIdsToFrontend -> String)
-> ([DOMPushNodesByBackendIdsToFrontend] -> ShowS)
-> Show DOMPushNodesByBackendIdsToFrontend
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMPushNodesByBackendIdsToFrontend] -> ShowS
$cshowList :: [DOMPushNodesByBackendIdsToFrontend] -> ShowS
show :: DOMPushNodesByBackendIdsToFrontend -> String
$cshow :: DOMPushNodesByBackendIdsToFrontend -> String
showsPrec :: Int -> DOMPushNodesByBackendIdsToFrontend -> ShowS
$cshowsPrec :: Int -> DOMPushNodesByBackendIdsToFrontend -> ShowS
Show)
instance FromJSON DOMPushNodesByBackendIdsToFrontend where
  parseJSON :: Value -> Parser DOMPushNodesByBackendIdsToFrontend
parseJSON = String
-> (Object -> Parser DOMPushNodesByBackendIdsToFrontend)
-> Value
-> Parser DOMPushNodesByBackendIdsToFrontend
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMPushNodesByBackendIdsToFrontend" ((Object -> Parser DOMPushNodesByBackendIdsToFrontend)
 -> Value -> Parser DOMPushNodesByBackendIdsToFrontend)
-> (Object -> Parser DOMPushNodesByBackendIdsToFrontend)
-> Value
-> Parser DOMPushNodesByBackendIdsToFrontend
forall a b. (a -> b) -> a -> b
$ \Object
o -> [Int] -> DOMPushNodesByBackendIdsToFrontend
DOMPushNodesByBackendIdsToFrontend
    ([Int] -> DOMPushNodesByBackendIdsToFrontend)
-> Parser [Int] -> Parser DOMPushNodesByBackendIdsToFrontend
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser [Int]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"nodeIds"
instance Command PDOMPushNodesByBackendIdsToFrontend where
  type CommandResponse PDOMPushNodesByBackendIdsToFrontend = DOMPushNodesByBackendIdsToFrontend
  commandName :: Proxy PDOMPushNodesByBackendIdsToFrontend -> String
commandName Proxy PDOMPushNodesByBackendIdsToFrontend
_ = String
"DOM.pushNodesByBackendIdsToFrontend"

-- | Executes `querySelector` on a given node.

-- | Parameters of the 'DOM.querySelector' command.
data PDOMQuerySelector = PDOMQuerySelector
  {
    -- | Id of the node to query upon.
    PDOMQuerySelector -> Int
pDOMQuerySelectorNodeId :: DOMNodeId,
    -- | Selector string.
    PDOMQuerySelector -> Text
pDOMQuerySelectorSelector :: T.Text
  }
  deriving (PDOMQuerySelector -> PDOMQuerySelector -> Bool
(PDOMQuerySelector -> PDOMQuerySelector -> Bool)
-> (PDOMQuerySelector -> PDOMQuerySelector -> Bool)
-> Eq PDOMQuerySelector
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMQuerySelector -> PDOMQuerySelector -> Bool
$c/= :: PDOMQuerySelector -> PDOMQuerySelector -> Bool
== :: PDOMQuerySelector -> PDOMQuerySelector -> Bool
$c== :: PDOMQuerySelector -> PDOMQuerySelector -> Bool
Eq, Int -> PDOMQuerySelector -> ShowS
[PDOMQuerySelector] -> ShowS
PDOMQuerySelector -> String
(Int -> PDOMQuerySelector -> ShowS)
-> (PDOMQuerySelector -> String)
-> ([PDOMQuerySelector] -> ShowS)
-> Show PDOMQuerySelector
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMQuerySelector] -> ShowS
$cshowList :: [PDOMQuerySelector] -> ShowS
show :: PDOMQuerySelector -> String
$cshow :: PDOMQuerySelector -> String
showsPrec :: Int -> PDOMQuerySelector -> ShowS
$cshowsPrec :: Int -> PDOMQuerySelector -> ShowS
Show)
pDOMQuerySelector
  {-
  -- | Id of the node to query upon.
  -}
  :: DOMNodeId
  {-
  -- | Selector string.
  -}
  -> T.Text
  -> PDOMQuerySelector
pDOMQuerySelector :: Int -> Text -> PDOMQuerySelector
pDOMQuerySelector
  Int
arg_pDOMQuerySelectorNodeId
  Text
arg_pDOMQuerySelectorSelector
  = Int -> Text -> PDOMQuerySelector
PDOMQuerySelector
    Int
arg_pDOMQuerySelectorNodeId
    Text
arg_pDOMQuerySelectorSelector
instance ToJSON PDOMQuerySelector where
  toJSON :: PDOMQuerySelector -> Value
toJSON PDOMQuerySelector
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"nodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PDOMQuerySelector -> Int
pDOMQuerySelectorNodeId PDOMQuerySelector
p),
    (Text
"selector" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PDOMQuerySelector -> Text
pDOMQuerySelectorSelector PDOMQuerySelector
p)
    ]
data DOMQuerySelector = DOMQuerySelector
  {
    -- | Query selector result.
    DOMQuerySelector -> Int
dOMQuerySelectorNodeId :: DOMNodeId
  }
  deriving (DOMQuerySelector -> DOMQuerySelector -> Bool
(DOMQuerySelector -> DOMQuerySelector -> Bool)
-> (DOMQuerySelector -> DOMQuerySelector -> Bool)
-> Eq DOMQuerySelector
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMQuerySelector -> DOMQuerySelector -> Bool
$c/= :: DOMQuerySelector -> DOMQuerySelector -> Bool
== :: DOMQuerySelector -> DOMQuerySelector -> Bool
$c== :: DOMQuerySelector -> DOMQuerySelector -> Bool
Eq, Int -> DOMQuerySelector -> ShowS
[DOMQuerySelector] -> ShowS
DOMQuerySelector -> String
(Int -> DOMQuerySelector -> ShowS)
-> (DOMQuerySelector -> String)
-> ([DOMQuerySelector] -> ShowS)
-> Show DOMQuerySelector
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMQuerySelector] -> ShowS
$cshowList :: [DOMQuerySelector] -> ShowS
show :: DOMQuerySelector -> String
$cshow :: DOMQuerySelector -> String
showsPrec :: Int -> DOMQuerySelector -> ShowS
$cshowsPrec :: Int -> DOMQuerySelector -> ShowS
Show)
instance FromJSON DOMQuerySelector where
  parseJSON :: Value -> Parser DOMQuerySelector
parseJSON = String
-> (Object -> Parser DOMQuerySelector)
-> Value
-> Parser DOMQuerySelector
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMQuerySelector" ((Object -> Parser DOMQuerySelector)
 -> Value -> Parser DOMQuerySelector)
-> (Object -> Parser DOMQuerySelector)
-> Value
-> Parser DOMQuerySelector
forall a b. (a -> b) -> a -> b
$ \Object
o -> Int -> DOMQuerySelector
DOMQuerySelector
    (Int -> DOMQuerySelector) -> Parser Int -> Parser DOMQuerySelector
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"nodeId"
instance Command PDOMQuerySelector where
  type CommandResponse PDOMQuerySelector = DOMQuerySelector
  commandName :: Proxy PDOMQuerySelector -> String
commandName Proxy PDOMQuerySelector
_ = String
"DOM.querySelector"

-- | Executes `querySelectorAll` on a given node.

-- | Parameters of the 'DOM.querySelectorAll' command.
data PDOMQuerySelectorAll = PDOMQuerySelectorAll
  {
    -- | Id of the node to query upon.
    PDOMQuerySelectorAll -> Int
pDOMQuerySelectorAllNodeId :: DOMNodeId,
    -- | Selector string.
    PDOMQuerySelectorAll -> Text
pDOMQuerySelectorAllSelector :: T.Text
  }
  deriving (PDOMQuerySelectorAll -> PDOMQuerySelectorAll -> Bool
(PDOMQuerySelectorAll -> PDOMQuerySelectorAll -> Bool)
-> (PDOMQuerySelectorAll -> PDOMQuerySelectorAll -> Bool)
-> Eq PDOMQuerySelectorAll
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMQuerySelectorAll -> PDOMQuerySelectorAll -> Bool
$c/= :: PDOMQuerySelectorAll -> PDOMQuerySelectorAll -> Bool
== :: PDOMQuerySelectorAll -> PDOMQuerySelectorAll -> Bool
$c== :: PDOMQuerySelectorAll -> PDOMQuerySelectorAll -> Bool
Eq, Int -> PDOMQuerySelectorAll -> ShowS
[PDOMQuerySelectorAll] -> ShowS
PDOMQuerySelectorAll -> String
(Int -> PDOMQuerySelectorAll -> ShowS)
-> (PDOMQuerySelectorAll -> String)
-> ([PDOMQuerySelectorAll] -> ShowS)
-> Show PDOMQuerySelectorAll
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMQuerySelectorAll] -> ShowS
$cshowList :: [PDOMQuerySelectorAll] -> ShowS
show :: PDOMQuerySelectorAll -> String
$cshow :: PDOMQuerySelectorAll -> String
showsPrec :: Int -> PDOMQuerySelectorAll -> ShowS
$cshowsPrec :: Int -> PDOMQuerySelectorAll -> ShowS
Show)
pDOMQuerySelectorAll
  {-
  -- | Id of the node to query upon.
  -}
  :: DOMNodeId
  {-
  -- | Selector string.
  -}
  -> T.Text
  -> PDOMQuerySelectorAll
pDOMQuerySelectorAll :: Int -> Text -> PDOMQuerySelectorAll
pDOMQuerySelectorAll
  Int
arg_pDOMQuerySelectorAllNodeId
  Text
arg_pDOMQuerySelectorAllSelector
  = Int -> Text -> PDOMQuerySelectorAll
PDOMQuerySelectorAll
    Int
arg_pDOMQuerySelectorAllNodeId
    Text
arg_pDOMQuerySelectorAllSelector
instance ToJSON PDOMQuerySelectorAll where
  toJSON :: PDOMQuerySelectorAll -> Value
toJSON PDOMQuerySelectorAll
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"nodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PDOMQuerySelectorAll -> Int
pDOMQuerySelectorAllNodeId PDOMQuerySelectorAll
p),
    (Text
"selector" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PDOMQuerySelectorAll -> Text
pDOMQuerySelectorAllSelector PDOMQuerySelectorAll
p)
    ]
data DOMQuerySelectorAll = DOMQuerySelectorAll
  {
    -- | Query selector result.
    DOMQuerySelectorAll -> [Int]
dOMQuerySelectorAllNodeIds :: [DOMNodeId]
  }
  deriving (DOMQuerySelectorAll -> DOMQuerySelectorAll -> Bool
(DOMQuerySelectorAll -> DOMQuerySelectorAll -> Bool)
-> (DOMQuerySelectorAll -> DOMQuerySelectorAll -> Bool)
-> Eq DOMQuerySelectorAll
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMQuerySelectorAll -> DOMQuerySelectorAll -> Bool
$c/= :: DOMQuerySelectorAll -> DOMQuerySelectorAll -> Bool
== :: DOMQuerySelectorAll -> DOMQuerySelectorAll -> Bool
$c== :: DOMQuerySelectorAll -> DOMQuerySelectorAll -> Bool
Eq, Int -> DOMQuerySelectorAll -> ShowS
[DOMQuerySelectorAll] -> ShowS
DOMQuerySelectorAll -> String
(Int -> DOMQuerySelectorAll -> ShowS)
-> (DOMQuerySelectorAll -> String)
-> ([DOMQuerySelectorAll] -> ShowS)
-> Show DOMQuerySelectorAll
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMQuerySelectorAll] -> ShowS
$cshowList :: [DOMQuerySelectorAll] -> ShowS
show :: DOMQuerySelectorAll -> String
$cshow :: DOMQuerySelectorAll -> String
showsPrec :: Int -> DOMQuerySelectorAll -> ShowS
$cshowsPrec :: Int -> DOMQuerySelectorAll -> ShowS
Show)
instance FromJSON DOMQuerySelectorAll where
  parseJSON :: Value -> Parser DOMQuerySelectorAll
parseJSON = String
-> (Object -> Parser DOMQuerySelectorAll)
-> Value
-> Parser DOMQuerySelectorAll
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMQuerySelectorAll" ((Object -> Parser DOMQuerySelectorAll)
 -> Value -> Parser DOMQuerySelectorAll)
-> (Object -> Parser DOMQuerySelectorAll)
-> Value
-> Parser DOMQuerySelectorAll
forall a b. (a -> b) -> a -> b
$ \Object
o -> [Int] -> DOMQuerySelectorAll
DOMQuerySelectorAll
    ([Int] -> DOMQuerySelectorAll)
-> Parser [Int] -> Parser DOMQuerySelectorAll
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser [Int]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"nodeIds"
instance Command PDOMQuerySelectorAll where
  type CommandResponse PDOMQuerySelectorAll = DOMQuerySelectorAll
  commandName :: Proxy PDOMQuerySelectorAll -> String
commandName Proxy PDOMQuerySelectorAll
_ = String
"DOM.querySelectorAll"

-- | Returns NodeIds of current top layer elements.
--   Top layer is rendered closest to the user within a viewport, therefore its elements always
--   appear on top of all other content.

-- | Parameters of the 'DOM.getTopLayerElements' command.
data PDOMGetTopLayerElements = PDOMGetTopLayerElements
  deriving (PDOMGetTopLayerElements -> PDOMGetTopLayerElements -> Bool
(PDOMGetTopLayerElements -> PDOMGetTopLayerElements -> Bool)
-> (PDOMGetTopLayerElements -> PDOMGetTopLayerElements -> Bool)
-> Eq PDOMGetTopLayerElements
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMGetTopLayerElements -> PDOMGetTopLayerElements -> Bool
$c/= :: PDOMGetTopLayerElements -> PDOMGetTopLayerElements -> Bool
== :: PDOMGetTopLayerElements -> PDOMGetTopLayerElements -> Bool
$c== :: PDOMGetTopLayerElements -> PDOMGetTopLayerElements -> Bool
Eq, Int -> PDOMGetTopLayerElements -> ShowS
[PDOMGetTopLayerElements] -> ShowS
PDOMGetTopLayerElements -> String
(Int -> PDOMGetTopLayerElements -> ShowS)
-> (PDOMGetTopLayerElements -> String)
-> ([PDOMGetTopLayerElements] -> ShowS)
-> Show PDOMGetTopLayerElements
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMGetTopLayerElements] -> ShowS
$cshowList :: [PDOMGetTopLayerElements] -> ShowS
show :: PDOMGetTopLayerElements -> String
$cshow :: PDOMGetTopLayerElements -> String
showsPrec :: Int -> PDOMGetTopLayerElements -> ShowS
$cshowsPrec :: Int -> PDOMGetTopLayerElements -> ShowS
Show)
pDOMGetTopLayerElements
  :: PDOMGetTopLayerElements
pDOMGetTopLayerElements :: PDOMGetTopLayerElements
pDOMGetTopLayerElements
  = PDOMGetTopLayerElements
PDOMGetTopLayerElements
instance ToJSON PDOMGetTopLayerElements where
  toJSON :: PDOMGetTopLayerElements -> Value
toJSON PDOMGetTopLayerElements
_ = Value
A.Null
data DOMGetTopLayerElements = DOMGetTopLayerElements
  {
    -- | NodeIds of top layer elements
    DOMGetTopLayerElements -> [Int]
dOMGetTopLayerElementsNodeIds :: [DOMNodeId]
  }
  deriving (DOMGetTopLayerElements -> DOMGetTopLayerElements -> Bool
(DOMGetTopLayerElements -> DOMGetTopLayerElements -> Bool)
-> (DOMGetTopLayerElements -> DOMGetTopLayerElements -> Bool)
-> Eq DOMGetTopLayerElements
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMGetTopLayerElements -> DOMGetTopLayerElements -> Bool
$c/= :: DOMGetTopLayerElements -> DOMGetTopLayerElements -> Bool
== :: DOMGetTopLayerElements -> DOMGetTopLayerElements -> Bool
$c== :: DOMGetTopLayerElements -> DOMGetTopLayerElements -> Bool
Eq, Int -> DOMGetTopLayerElements -> ShowS
[DOMGetTopLayerElements] -> ShowS
DOMGetTopLayerElements -> String
(Int -> DOMGetTopLayerElements -> ShowS)
-> (DOMGetTopLayerElements -> String)
-> ([DOMGetTopLayerElements] -> ShowS)
-> Show DOMGetTopLayerElements
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMGetTopLayerElements] -> ShowS
$cshowList :: [DOMGetTopLayerElements] -> ShowS
show :: DOMGetTopLayerElements -> String
$cshow :: DOMGetTopLayerElements -> String
showsPrec :: Int -> DOMGetTopLayerElements -> ShowS
$cshowsPrec :: Int -> DOMGetTopLayerElements -> ShowS
Show)
instance FromJSON DOMGetTopLayerElements where
  parseJSON :: Value -> Parser DOMGetTopLayerElements
parseJSON = String
-> (Object -> Parser DOMGetTopLayerElements)
-> Value
-> Parser DOMGetTopLayerElements
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMGetTopLayerElements" ((Object -> Parser DOMGetTopLayerElements)
 -> Value -> Parser DOMGetTopLayerElements)
-> (Object -> Parser DOMGetTopLayerElements)
-> Value
-> Parser DOMGetTopLayerElements
forall a b. (a -> b) -> a -> b
$ \Object
o -> [Int] -> DOMGetTopLayerElements
DOMGetTopLayerElements
    ([Int] -> DOMGetTopLayerElements)
-> Parser [Int] -> Parser DOMGetTopLayerElements
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser [Int]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"nodeIds"
instance Command PDOMGetTopLayerElements where
  type CommandResponse PDOMGetTopLayerElements = DOMGetTopLayerElements
  commandName :: Proxy PDOMGetTopLayerElements -> String
commandName Proxy PDOMGetTopLayerElements
_ = String
"DOM.getTopLayerElements"

-- | Re-does the last undone action.

-- | Parameters of the 'DOM.redo' command.
data PDOMRedo = PDOMRedo
  deriving (PDOMRedo -> PDOMRedo -> Bool
(PDOMRedo -> PDOMRedo -> Bool)
-> (PDOMRedo -> PDOMRedo -> Bool) -> Eq PDOMRedo
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMRedo -> PDOMRedo -> Bool
$c/= :: PDOMRedo -> PDOMRedo -> Bool
== :: PDOMRedo -> PDOMRedo -> Bool
$c== :: PDOMRedo -> PDOMRedo -> Bool
Eq, Int -> PDOMRedo -> ShowS
[PDOMRedo] -> ShowS
PDOMRedo -> String
(Int -> PDOMRedo -> ShowS)
-> (PDOMRedo -> String) -> ([PDOMRedo] -> ShowS) -> Show PDOMRedo
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMRedo] -> ShowS
$cshowList :: [PDOMRedo] -> ShowS
show :: PDOMRedo -> String
$cshow :: PDOMRedo -> String
showsPrec :: Int -> PDOMRedo -> ShowS
$cshowsPrec :: Int -> PDOMRedo -> ShowS
Show)
pDOMRedo
  :: PDOMRedo
pDOMRedo :: PDOMRedo
pDOMRedo
  = PDOMRedo
PDOMRedo
instance ToJSON PDOMRedo where
  toJSON :: PDOMRedo -> Value
toJSON PDOMRedo
_ = Value
A.Null
instance Command PDOMRedo where
  type CommandResponse PDOMRedo = ()
  commandName :: Proxy PDOMRedo -> String
commandName Proxy PDOMRedo
_ = String
"DOM.redo"
  fromJSON :: Proxy PDOMRedo -> Value -> Result (CommandResponse PDOMRedo)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PDOMRedo -> Result ())
-> Proxy PDOMRedo
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PDOMRedo -> ()) -> Proxy PDOMRedo -> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PDOMRedo -> ()
forall a b. a -> b -> a
const ()

-- | Removes attribute with given name from an element with given id.

-- | Parameters of the 'DOM.removeAttribute' command.
data PDOMRemoveAttribute = PDOMRemoveAttribute
  {
    -- | Id of the element to remove attribute from.
    PDOMRemoveAttribute -> Int
pDOMRemoveAttributeNodeId :: DOMNodeId,
    -- | Name of the attribute to remove.
    PDOMRemoveAttribute -> Text
pDOMRemoveAttributeName :: T.Text
  }
  deriving (PDOMRemoveAttribute -> PDOMRemoveAttribute -> Bool
(PDOMRemoveAttribute -> PDOMRemoveAttribute -> Bool)
-> (PDOMRemoveAttribute -> PDOMRemoveAttribute -> Bool)
-> Eq PDOMRemoveAttribute
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMRemoveAttribute -> PDOMRemoveAttribute -> Bool
$c/= :: PDOMRemoveAttribute -> PDOMRemoveAttribute -> Bool
== :: PDOMRemoveAttribute -> PDOMRemoveAttribute -> Bool
$c== :: PDOMRemoveAttribute -> PDOMRemoveAttribute -> Bool
Eq, Int -> PDOMRemoveAttribute -> ShowS
[PDOMRemoveAttribute] -> ShowS
PDOMRemoveAttribute -> String
(Int -> PDOMRemoveAttribute -> ShowS)
-> (PDOMRemoveAttribute -> String)
-> ([PDOMRemoveAttribute] -> ShowS)
-> Show PDOMRemoveAttribute
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMRemoveAttribute] -> ShowS
$cshowList :: [PDOMRemoveAttribute] -> ShowS
show :: PDOMRemoveAttribute -> String
$cshow :: PDOMRemoveAttribute -> String
showsPrec :: Int -> PDOMRemoveAttribute -> ShowS
$cshowsPrec :: Int -> PDOMRemoveAttribute -> ShowS
Show)
pDOMRemoveAttribute
  {-
  -- | Id of the element to remove attribute from.
  -}
  :: DOMNodeId
  {-
  -- | Name of the attribute to remove.
  -}
  -> T.Text
  -> PDOMRemoveAttribute
pDOMRemoveAttribute :: Int -> Text -> PDOMRemoveAttribute
pDOMRemoveAttribute
  Int
arg_pDOMRemoveAttributeNodeId
  Text
arg_pDOMRemoveAttributeName
  = Int -> Text -> PDOMRemoveAttribute
PDOMRemoveAttribute
    Int
arg_pDOMRemoveAttributeNodeId
    Text
arg_pDOMRemoveAttributeName
instance ToJSON PDOMRemoveAttribute where
  toJSON :: PDOMRemoveAttribute -> Value
toJSON PDOMRemoveAttribute
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"nodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PDOMRemoveAttribute -> Int
pDOMRemoveAttributeNodeId PDOMRemoveAttribute
p),
    (Text
"name" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PDOMRemoveAttribute -> Text
pDOMRemoveAttributeName PDOMRemoveAttribute
p)
    ]
instance Command PDOMRemoveAttribute where
  type CommandResponse PDOMRemoveAttribute = ()
  commandName :: Proxy PDOMRemoveAttribute -> String
commandName Proxy PDOMRemoveAttribute
_ = String
"DOM.removeAttribute"
  fromJSON :: Proxy PDOMRemoveAttribute
-> Value -> Result (CommandResponse PDOMRemoveAttribute)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PDOMRemoveAttribute -> Result ())
-> Proxy PDOMRemoveAttribute
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PDOMRemoveAttribute -> ())
-> Proxy PDOMRemoveAttribute
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PDOMRemoveAttribute -> ()
forall a b. a -> b -> a
const ()

-- | Removes node with given id.

-- | Parameters of the 'DOM.removeNode' command.
data PDOMRemoveNode = PDOMRemoveNode
  {
    -- | Id of the node to remove.
    PDOMRemoveNode -> Int
pDOMRemoveNodeNodeId :: DOMNodeId
  }
  deriving (PDOMRemoveNode -> PDOMRemoveNode -> Bool
(PDOMRemoveNode -> PDOMRemoveNode -> Bool)
-> (PDOMRemoveNode -> PDOMRemoveNode -> Bool) -> Eq PDOMRemoveNode
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMRemoveNode -> PDOMRemoveNode -> Bool
$c/= :: PDOMRemoveNode -> PDOMRemoveNode -> Bool
== :: PDOMRemoveNode -> PDOMRemoveNode -> Bool
$c== :: PDOMRemoveNode -> PDOMRemoveNode -> Bool
Eq, Int -> PDOMRemoveNode -> ShowS
[PDOMRemoveNode] -> ShowS
PDOMRemoveNode -> String
(Int -> PDOMRemoveNode -> ShowS)
-> (PDOMRemoveNode -> String)
-> ([PDOMRemoveNode] -> ShowS)
-> Show PDOMRemoveNode
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMRemoveNode] -> ShowS
$cshowList :: [PDOMRemoveNode] -> ShowS
show :: PDOMRemoveNode -> String
$cshow :: PDOMRemoveNode -> String
showsPrec :: Int -> PDOMRemoveNode -> ShowS
$cshowsPrec :: Int -> PDOMRemoveNode -> ShowS
Show)
pDOMRemoveNode
  {-
  -- | Id of the node to remove.
  -}
  :: DOMNodeId
  -> PDOMRemoveNode
pDOMRemoveNode :: Int -> PDOMRemoveNode
pDOMRemoveNode
  Int
arg_pDOMRemoveNodeNodeId
  = Int -> PDOMRemoveNode
PDOMRemoveNode
    Int
arg_pDOMRemoveNodeNodeId
instance ToJSON PDOMRemoveNode where
  toJSON :: PDOMRemoveNode -> Value
toJSON PDOMRemoveNode
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"nodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PDOMRemoveNode -> Int
pDOMRemoveNodeNodeId PDOMRemoveNode
p)
    ]
instance Command PDOMRemoveNode where
  type CommandResponse PDOMRemoveNode = ()
  commandName :: Proxy PDOMRemoveNode -> String
commandName Proxy PDOMRemoveNode
_ = String
"DOM.removeNode"
  fromJSON :: Proxy PDOMRemoveNode
-> Value -> Result (CommandResponse PDOMRemoveNode)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PDOMRemoveNode -> Result ())
-> Proxy PDOMRemoveNode
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PDOMRemoveNode -> ())
-> Proxy PDOMRemoveNode
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PDOMRemoveNode -> ()
forall a b. a -> b -> a
const ()

-- | Requests that children of the node with given id are returned to the caller in form of
--   `setChildNodes` events where not only immediate children are retrieved, but all children down to
--   the specified depth.

-- | Parameters of the 'DOM.requestChildNodes' command.
data PDOMRequestChildNodes = PDOMRequestChildNodes
  {
    -- | Id of the node to get children for.
    PDOMRequestChildNodes -> Int
pDOMRequestChildNodesNodeId :: DOMNodeId,
    -- | The maximum depth at which children should be retrieved, defaults to 1. Use -1 for the
    --   entire subtree or provide an integer larger than 0.
    PDOMRequestChildNodes -> Maybe Int
pDOMRequestChildNodesDepth :: Maybe Int,
    -- | Whether or not iframes and shadow roots should be traversed when returning the sub-tree
    --   (default is false).
    PDOMRequestChildNodes -> Maybe Bool
pDOMRequestChildNodesPierce :: Maybe Bool
  }
  deriving (PDOMRequestChildNodes -> PDOMRequestChildNodes -> Bool
(PDOMRequestChildNodes -> PDOMRequestChildNodes -> Bool)
-> (PDOMRequestChildNodes -> PDOMRequestChildNodes -> Bool)
-> Eq PDOMRequestChildNodes
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMRequestChildNodes -> PDOMRequestChildNodes -> Bool
$c/= :: PDOMRequestChildNodes -> PDOMRequestChildNodes -> Bool
== :: PDOMRequestChildNodes -> PDOMRequestChildNodes -> Bool
$c== :: PDOMRequestChildNodes -> PDOMRequestChildNodes -> Bool
Eq, Int -> PDOMRequestChildNodes -> ShowS
[PDOMRequestChildNodes] -> ShowS
PDOMRequestChildNodes -> String
(Int -> PDOMRequestChildNodes -> ShowS)
-> (PDOMRequestChildNodes -> String)
-> ([PDOMRequestChildNodes] -> ShowS)
-> Show PDOMRequestChildNodes
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMRequestChildNodes] -> ShowS
$cshowList :: [PDOMRequestChildNodes] -> ShowS
show :: PDOMRequestChildNodes -> String
$cshow :: PDOMRequestChildNodes -> String
showsPrec :: Int -> PDOMRequestChildNodes -> ShowS
$cshowsPrec :: Int -> PDOMRequestChildNodes -> ShowS
Show)
pDOMRequestChildNodes
  {-
  -- | Id of the node to get children for.
  -}
  :: DOMNodeId
  -> PDOMRequestChildNodes
pDOMRequestChildNodes :: Int -> PDOMRequestChildNodes
pDOMRequestChildNodes
  Int
arg_pDOMRequestChildNodesNodeId
  = Int -> Maybe Int -> Maybe Bool -> PDOMRequestChildNodes
PDOMRequestChildNodes
    Int
arg_pDOMRequestChildNodesNodeId
    Maybe Int
forall a. Maybe a
Nothing
    Maybe Bool
forall a. Maybe a
Nothing
instance ToJSON PDOMRequestChildNodes where
  toJSON :: PDOMRequestChildNodes -> Value
toJSON PDOMRequestChildNodes
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"nodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PDOMRequestChildNodes -> Int
pDOMRequestChildNodesNodeId PDOMRequestChildNodes
p),
    (Text
"depth" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMRequestChildNodes -> Maybe Int
pDOMRequestChildNodesDepth PDOMRequestChildNodes
p),
    (Text
"pierce" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMRequestChildNodes -> Maybe Bool
pDOMRequestChildNodesPierce PDOMRequestChildNodes
p)
    ]
instance Command PDOMRequestChildNodes where
  type CommandResponse PDOMRequestChildNodes = ()
  commandName :: Proxy PDOMRequestChildNodes -> String
commandName Proxy PDOMRequestChildNodes
_ = String
"DOM.requestChildNodes"
  fromJSON :: Proxy PDOMRequestChildNodes
-> Value -> Result (CommandResponse PDOMRequestChildNodes)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PDOMRequestChildNodes -> Result ())
-> Proxy PDOMRequestChildNodes
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PDOMRequestChildNodes -> ())
-> Proxy PDOMRequestChildNodes
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PDOMRequestChildNodes -> ()
forall a b. a -> b -> a
const ()

-- | Requests that the node is sent to the caller given the JavaScript node object reference. All
--   nodes that form the path from the node to the root are also sent to the client as a series of
--   `setChildNodes` notifications.

-- | Parameters of the 'DOM.requestNode' command.
data PDOMRequestNode = PDOMRequestNode
  {
    -- | JavaScript object id to convert into node.
    PDOMRequestNode -> Text
pDOMRequestNodeObjectId :: Runtime.RuntimeRemoteObjectId
  }
  deriving (PDOMRequestNode -> PDOMRequestNode -> Bool
(PDOMRequestNode -> PDOMRequestNode -> Bool)
-> (PDOMRequestNode -> PDOMRequestNode -> Bool)
-> Eq PDOMRequestNode
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMRequestNode -> PDOMRequestNode -> Bool
$c/= :: PDOMRequestNode -> PDOMRequestNode -> Bool
== :: PDOMRequestNode -> PDOMRequestNode -> Bool
$c== :: PDOMRequestNode -> PDOMRequestNode -> Bool
Eq, Int -> PDOMRequestNode -> ShowS
[PDOMRequestNode] -> ShowS
PDOMRequestNode -> String
(Int -> PDOMRequestNode -> ShowS)
-> (PDOMRequestNode -> String)
-> ([PDOMRequestNode] -> ShowS)
-> Show PDOMRequestNode
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMRequestNode] -> ShowS
$cshowList :: [PDOMRequestNode] -> ShowS
show :: PDOMRequestNode -> String
$cshow :: PDOMRequestNode -> String
showsPrec :: Int -> PDOMRequestNode -> ShowS
$cshowsPrec :: Int -> PDOMRequestNode -> ShowS
Show)
pDOMRequestNode
  {-
  -- | JavaScript object id to convert into node.
  -}
  :: Runtime.RuntimeRemoteObjectId
  -> PDOMRequestNode
pDOMRequestNode :: Text -> PDOMRequestNode
pDOMRequestNode
  Text
arg_pDOMRequestNodeObjectId
  = Text -> PDOMRequestNode
PDOMRequestNode
    Text
arg_pDOMRequestNodeObjectId
instance ToJSON PDOMRequestNode where
  toJSON :: PDOMRequestNode -> Value
toJSON PDOMRequestNode
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"objectId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PDOMRequestNode -> Text
pDOMRequestNodeObjectId PDOMRequestNode
p)
    ]
data DOMRequestNode = DOMRequestNode
  {
    -- | Node id for given object.
    DOMRequestNode -> Int
dOMRequestNodeNodeId :: DOMNodeId
  }
  deriving (DOMRequestNode -> DOMRequestNode -> Bool
(DOMRequestNode -> DOMRequestNode -> Bool)
-> (DOMRequestNode -> DOMRequestNode -> Bool) -> Eq DOMRequestNode
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMRequestNode -> DOMRequestNode -> Bool
$c/= :: DOMRequestNode -> DOMRequestNode -> Bool
== :: DOMRequestNode -> DOMRequestNode -> Bool
$c== :: DOMRequestNode -> DOMRequestNode -> Bool
Eq, Int -> DOMRequestNode -> ShowS
[DOMRequestNode] -> ShowS
DOMRequestNode -> String
(Int -> DOMRequestNode -> ShowS)
-> (DOMRequestNode -> String)
-> ([DOMRequestNode] -> ShowS)
-> Show DOMRequestNode
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMRequestNode] -> ShowS
$cshowList :: [DOMRequestNode] -> ShowS
show :: DOMRequestNode -> String
$cshow :: DOMRequestNode -> String
showsPrec :: Int -> DOMRequestNode -> ShowS
$cshowsPrec :: Int -> DOMRequestNode -> ShowS
Show)
instance FromJSON DOMRequestNode where
  parseJSON :: Value -> Parser DOMRequestNode
parseJSON = String
-> (Object -> Parser DOMRequestNode)
-> Value
-> Parser DOMRequestNode
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMRequestNode" ((Object -> Parser DOMRequestNode)
 -> Value -> Parser DOMRequestNode)
-> (Object -> Parser DOMRequestNode)
-> Value
-> Parser DOMRequestNode
forall a b. (a -> b) -> a -> b
$ \Object
o -> Int -> DOMRequestNode
DOMRequestNode
    (Int -> DOMRequestNode) -> Parser Int -> Parser DOMRequestNode
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"nodeId"
instance Command PDOMRequestNode where
  type CommandResponse PDOMRequestNode = DOMRequestNode
  commandName :: Proxy PDOMRequestNode -> String
commandName Proxy PDOMRequestNode
_ = String
"DOM.requestNode"

-- | Resolves the JavaScript node object for a given NodeId or BackendNodeId.

-- | Parameters of the 'DOM.resolveNode' command.
data PDOMResolveNode = PDOMResolveNode
  {
    -- | Id of the node to resolve.
    PDOMResolveNode -> Maybe Int
pDOMResolveNodeNodeId :: Maybe DOMNodeId,
    -- | Backend identifier of the node to resolve.
    PDOMResolveNode -> Maybe Int
pDOMResolveNodeBackendNodeId :: Maybe DOMBackendNodeId,
    -- | Symbolic group name that can be used to release multiple objects.
    PDOMResolveNode -> Maybe Text
pDOMResolveNodeObjectGroup :: Maybe T.Text,
    -- | Execution context in which to resolve the node.
    PDOMResolveNode -> Maybe Int
pDOMResolveNodeExecutionContextId :: Maybe Runtime.RuntimeExecutionContextId
  }
  deriving (PDOMResolveNode -> PDOMResolveNode -> Bool
(PDOMResolveNode -> PDOMResolveNode -> Bool)
-> (PDOMResolveNode -> PDOMResolveNode -> Bool)
-> Eq PDOMResolveNode
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMResolveNode -> PDOMResolveNode -> Bool
$c/= :: PDOMResolveNode -> PDOMResolveNode -> Bool
== :: PDOMResolveNode -> PDOMResolveNode -> Bool
$c== :: PDOMResolveNode -> PDOMResolveNode -> Bool
Eq, Int -> PDOMResolveNode -> ShowS
[PDOMResolveNode] -> ShowS
PDOMResolveNode -> String
(Int -> PDOMResolveNode -> ShowS)
-> (PDOMResolveNode -> String)
-> ([PDOMResolveNode] -> ShowS)
-> Show PDOMResolveNode
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMResolveNode] -> ShowS
$cshowList :: [PDOMResolveNode] -> ShowS
show :: PDOMResolveNode -> String
$cshow :: PDOMResolveNode -> String
showsPrec :: Int -> PDOMResolveNode -> ShowS
$cshowsPrec :: Int -> PDOMResolveNode -> ShowS
Show)
pDOMResolveNode
  :: PDOMResolveNode
pDOMResolveNode :: PDOMResolveNode
pDOMResolveNode
  = Maybe Int
-> Maybe Int -> Maybe Text -> Maybe Int -> PDOMResolveNode
PDOMResolveNode
    Maybe Int
forall a. Maybe a
Nothing
    Maybe Int
forall a. Maybe a
Nothing
    Maybe Text
forall a. Maybe a
Nothing
    Maybe Int
forall a. Maybe a
Nothing
instance ToJSON PDOMResolveNode where
  toJSON :: PDOMResolveNode -> Value
toJSON PDOMResolveNode
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"nodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMResolveNode -> Maybe Int
pDOMResolveNodeNodeId PDOMResolveNode
p),
    (Text
"backendNodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMResolveNode -> Maybe Int
pDOMResolveNodeBackendNodeId PDOMResolveNode
p),
    (Text
"objectGroup" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMResolveNode -> Maybe Text
pDOMResolveNodeObjectGroup PDOMResolveNode
p),
    (Text
"executionContextId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMResolveNode -> Maybe Int
pDOMResolveNodeExecutionContextId PDOMResolveNode
p)
    ]
data DOMResolveNode = DOMResolveNode
  {
    -- | JavaScript object wrapper for given node.
    DOMResolveNode -> RuntimeRemoteObject
dOMResolveNodeObject :: Runtime.RuntimeRemoteObject
  }
  deriving (DOMResolveNode -> DOMResolveNode -> Bool
(DOMResolveNode -> DOMResolveNode -> Bool)
-> (DOMResolveNode -> DOMResolveNode -> Bool) -> Eq DOMResolveNode
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMResolveNode -> DOMResolveNode -> Bool
$c/= :: DOMResolveNode -> DOMResolveNode -> Bool
== :: DOMResolveNode -> DOMResolveNode -> Bool
$c== :: DOMResolveNode -> DOMResolveNode -> Bool
Eq, Int -> DOMResolveNode -> ShowS
[DOMResolveNode] -> ShowS
DOMResolveNode -> String
(Int -> DOMResolveNode -> ShowS)
-> (DOMResolveNode -> String)
-> ([DOMResolveNode] -> ShowS)
-> Show DOMResolveNode
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMResolveNode] -> ShowS
$cshowList :: [DOMResolveNode] -> ShowS
show :: DOMResolveNode -> String
$cshow :: DOMResolveNode -> String
showsPrec :: Int -> DOMResolveNode -> ShowS
$cshowsPrec :: Int -> DOMResolveNode -> ShowS
Show)
instance FromJSON DOMResolveNode where
  parseJSON :: Value -> Parser DOMResolveNode
parseJSON = String
-> (Object -> Parser DOMResolveNode)
-> Value
-> Parser DOMResolveNode
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMResolveNode" ((Object -> Parser DOMResolveNode)
 -> Value -> Parser DOMResolveNode)
-> (Object -> Parser DOMResolveNode)
-> Value
-> Parser DOMResolveNode
forall a b. (a -> b) -> a -> b
$ \Object
o -> RuntimeRemoteObject -> DOMResolveNode
DOMResolveNode
    (RuntimeRemoteObject -> DOMResolveNode)
-> Parser RuntimeRemoteObject -> Parser DOMResolveNode
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser RuntimeRemoteObject
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"object"
instance Command PDOMResolveNode where
  type CommandResponse PDOMResolveNode = DOMResolveNode
  commandName :: Proxy PDOMResolveNode -> String
commandName Proxy PDOMResolveNode
_ = String
"DOM.resolveNode"

-- | Sets attribute for an element with given id.

-- | Parameters of the 'DOM.setAttributeValue' command.
data PDOMSetAttributeValue = PDOMSetAttributeValue
  {
    -- | Id of the element to set attribute for.
    PDOMSetAttributeValue -> Int
pDOMSetAttributeValueNodeId :: DOMNodeId,
    -- | Attribute name.
    PDOMSetAttributeValue -> Text
pDOMSetAttributeValueName :: T.Text,
    -- | Attribute value.
    PDOMSetAttributeValue -> Text
pDOMSetAttributeValueValue :: T.Text
  }
  deriving (PDOMSetAttributeValue -> PDOMSetAttributeValue -> Bool
(PDOMSetAttributeValue -> PDOMSetAttributeValue -> Bool)
-> (PDOMSetAttributeValue -> PDOMSetAttributeValue -> Bool)
-> Eq PDOMSetAttributeValue
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMSetAttributeValue -> PDOMSetAttributeValue -> Bool
$c/= :: PDOMSetAttributeValue -> PDOMSetAttributeValue -> Bool
== :: PDOMSetAttributeValue -> PDOMSetAttributeValue -> Bool
$c== :: PDOMSetAttributeValue -> PDOMSetAttributeValue -> Bool
Eq, Int -> PDOMSetAttributeValue -> ShowS
[PDOMSetAttributeValue] -> ShowS
PDOMSetAttributeValue -> String
(Int -> PDOMSetAttributeValue -> ShowS)
-> (PDOMSetAttributeValue -> String)
-> ([PDOMSetAttributeValue] -> ShowS)
-> Show PDOMSetAttributeValue
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMSetAttributeValue] -> ShowS
$cshowList :: [PDOMSetAttributeValue] -> ShowS
show :: PDOMSetAttributeValue -> String
$cshow :: PDOMSetAttributeValue -> String
showsPrec :: Int -> PDOMSetAttributeValue -> ShowS
$cshowsPrec :: Int -> PDOMSetAttributeValue -> ShowS
Show)
pDOMSetAttributeValue
  {-
  -- | Id of the element to set attribute for.
  -}
  :: DOMNodeId
  {-
  -- | Attribute name.
  -}
  -> T.Text
  {-
  -- | Attribute value.
  -}
  -> T.Text
  -> PDOMSetAttributeValue
pDOMSetAttributeValue :: Int -> Text -> Text -> PDOMSetAttributeValue
pDOMSetAttributeValue
  Int
arg_pDOMSetAttributeValueNodeId
  Text
arg_pDOMSetAttributeValueName
  Text
arg_pDOMSetAttributeValueValue
  = Int -> Text -> Text -> PDOMSetAttributeValue
PDOMSetAttributeValue
    Int
arg_pDOMSetAttributeValueNodeId
    Text
arg_pDOMSetAttributeValueName
    Text
arg_pDOMSetAttributeValueValue
instance ToJSON PDOMSetAttributeValue where
  toJSON :: PDOMSetAttributeValue -> Value
toJSON PDOMSetAttributeValue
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"nodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PDOMSetAttributeValue -> Int
pDOMSetAttributeValueNodeId PDOMSetAttributeValue
p),
    (Text
"name" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PDOMSetAttributeValue -> Text
pDOMSetAttributeValueName PDOMSetAttributeValue
p),
    (Text
"value" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PDOMSetAttributeValue -> Text
pDOMSetAttributeValueValue PDOMSetAttributeValue
p)
    ]
instance Command PDOMSetAttributeValue where
  type CommandResponse PDOMSetAttributeValue = ()
  commandName :: Proxy PDOMSetAttributeValue -> String
commandName Proxy PDOMSetAttributeValue
_ = String
"DOM.setAttributeValue"
  fromJSON :: Proxy PDOMSetAttributeValue
-> Value -> Result (CommandResponse PDOMSetAttributeValue)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PDOMSetAttributeValue -> Result ())
-> Proxy PDOMSetAttributeValue
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PDOMSetAttributeValue -> ())
-> Proxy PDOMSetAttributeValue
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PDOMSetAttributeValue -> ()
forall a b. a -> b -> a
const ()

-- | Sets attributes on element with given id. This method is useful when user edits some existing
--   attribute value and types in several attribute name/value pairs.

-- | Parameters of the 'DOM.setAttributesAsText' command.
data PDOMSetAttributesAsText = PDOMSetAttributesAsText
  {
    -- | Id of the element to set attributes for.
    PDOMSetAttributesAsText -> Int
pDOMSetAttributesAsTextNodeId :: DOMNodeId,
    -- | Text with a number of attributes. Will parse this text using HTML parser.
    PDOMSetAttributesAsText -> Text
pDOMSetAttributesAsTextText :: T.Text,
    -- | Attribute name to replace with new attributes derived from text in case text parsed
    --   successfully.
    PDOMSetAttributesAsText -> Maybe Text
pDOMSetAttributesAsTextName :: Maybe T.Text
  }
  deriving (PDOMSetAttributesAsText -> PDOMSetAttributesAsText -> Bool
(PDOMSetAttributesAsText -> PDOMSetAttributesAsText -> Bool)
-> (PDOMSetAttributesAsText -> PDOMSetAttributesAsText -> Bool)
-> Eq PDOMSetAttributesAsText
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMSetAttributesAsText -> PDOMSetAttributesAsText -> Bool
$c/= :: PDOMSetAttributesAsText -> PDOMSetAttributesAsText -> Bool
== :: PDOMSetAttributesAsText -> PDOMSetAttributesAsText -> Bool
$c== :: PDOMSetAttributesAsText -> PDOMSetAttributesAsText -> Bool
Eq, Int -> PDOMSetAttributesAsText -> ShowS
[PDOMSetAttributesAsText] -> ShowS
PDOMSetAttributesAsText -> String
(Int -> PDOMSetAttributesAsText -> ShowS)
-> (PDOMSetAttributesAsText -> String)
-> ([PDOMSetAttributesAsText] -> ShowS)
-> Show PDOMSetAttributesAsText
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMSetAttributesAsText] -> ShowS
$cshowList :: [PDOMSetAttributesAsText] -> ShowS
show :: PDOMSetAttributesAsText -> String
$cshow :: PDOMSetAttributesAsText -> String
showsPrec :: Int -> PDOMSetAttributesAsText -> ShowS
$cshowsPrec :: Int -> PDOMSetAttributesAsText -> ShowS
Show)
pDOMSetAttributesAsText
  {-
  -- | Id of the element to set attributes for.
  -}
  :: DOMNodeId
  {-
  -- | Text with a number of attributes. Will parse this text using HTML parser.
  -}
  -> T.Text
  -> PDOMSetAttributesAsText
pDOMSetAttributesAsText :: Int -> Text -> PDOMSetAttributesAsText
pDOMSetAttributesAsText
  Int
arg_pDOMSetAttributesAsTextNodeId
  Text
arg_pDOMSetAttributesAsTextText
  = Int -> Text -> Maybe Text -> PDOMSetAttributesAsText
PDOMSetAttributesAsText
    Int
arg_pDOMSetAttributesAsTextNodeId
    Text
arg_pDOMSetAttributesAsTextText
    Maybe Text
forall a. Maybe a
Nothing
instance ToJSON PDOMSetAttributesAsText where
  toJSON :: PDOMSetAttributesAsText -> Value
toJSON PDOMSetAttributesAsText
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"nodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PDOMSetAttributesAsText -> Int
pDOMSetAttributesAsTextNodeId PDOMSetAttributesAsText
p),
    (Text
"text" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PDOMSetAttributesAsText -> Text
pDOMSetAttributesAsTextText PDOMSetAttributesAsText
p),
    (Text
"name" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMSetAttributesAsText -> Maybe Text
pDOMSetAttributesAsTextName PDOMSetAttributesAsText
p)
    ]
instance Command PDOMSetAttributesAsText where
  type CommandResponse PDOMSetAttributesAsText = ()
  commandName :: Proxy PDOMSetAttributesAsText -> String
commandName Proxy PDOMSetAttributesAsText
_ = String
"DOM.setAttributesAsText"
  fromJSON :: Proxy PDOMSetAttributesAsText
-> Value -> Result (CommandResponse PDOMSetAttributesAsText)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PDOMSetAttributesAsText -> Result ())
-> Proxy PDOMSetAttributesAsText
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PDOMSetAttributesAsText -> ())
-> Proxy PDOMSetAttributesAsText
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PDOMSetAttributesAsText -> ()
forall a b. a -> b -> a
const ()

-- | Sets files for the given file input element.

-- | Parameters of the 'DOM.setFileInputFiles' command.
data PDOMSetFileInputFiles = PDOMSetFileInputFiles
  {
    -- | Array of file paths to set.
    PDOMSetFileInputFiles -> [Text]
pDOMSetFileInputFilesFiles :: [T.Text],
    -- | Identifier of the node.
    PDOMSetFileInputFiles -> Maybe Int
pDOMSetFileInputFilesNodeId :: Maybe DOMNodeId,
    -- | Identifier of the backend node.
    PDOMSetFileInputFiles -> Maybe Int
pDOMSetFileInputFilesBackendNodeId :: Maybe DOMBackendNodeId,
    -- | JavaScript object id of the node wrapper.
    PDOMSetFileInputFiles -> Maybe Text
pDOMSetFileInputFilesObjectId :: Maybe Runtime.RuntimeRemoteObjectId
  }
  deriving (PDOMSetFileInputFiles -> PDOMSetFileInputFiles -> Bool
(PDOMSetFileInputFiles -> PDOMSetFileInputFiles -> Bool)
-> (PDOMSetFileInputFiles -> PDOMSetFileInputFiles -> Bool)
-> Eq PDOMSetFileInputFiles
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMSetFileInputFiles -> PDOMSetFileInputFiles -> Bool
$c/= :: PDOMSetFileInputFiles -> PDOMSetFileInputFiles -> Bool
== :: PDOMSetFileInputFiles -> PDOMSetFileInputFiles -> Bool
$c== :: PDOMSetFileInputFiles -> PDOMSetFileInputFiles -> Bool
Eq, Int -> PDOMSetFileInputFiles -> ShowS
[PDOMSetFileInputFiles] -> ShowS
PDOMSetFileInputFiles -> String
(Int -> PDOMSetFileInputFiles -> ShowS)
-> (PDOMSetFileInputFiles -> String)
-> ([PDOMSetFileInputFiles] -> ShowS)
-> Show PDOMSetFileInputFiles
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMSetFileInputFiles] -> ShowS
$cshowList :: [PDOMSetFileInputFiles] -> ShowS
show :: PDOMSetFileInputFiles -> String
$cshow :: PDOMSetFileInputFiles -> String
showsPrec :: Int -> PDOMSetFileInputFiles -> ShowS
$cshowsPrec :: Int -> PDOMSetFileInputFiles -> ShowS
Show)
pDOMSetFileInputFiles
  {-
  -- | Array of file paths to set.
  -}
  :: [T.Text]
  -> PDOMSetFileInputFiles
pDOMSetFileInputFiles :: [Text] -> PDOMSetFileInputFiles
pDOMSetFileInputFiles
  [Text]
arg_pDOMSetFileInputFilesFiles
  = [Text]
-> Maybe Int -> Maybe Int -> Maybe Text -> PDOMSetFileInputFiles
PDOMSetFileInputFiles
    [Text]
arg_pDOMSetFileInputFilesFiles
    Maybe Int
forall a. Maybe a
Nothing
    Maybe Int
forall a. Maybe a
Nothing
    Maybe Text
forall a. Maybe a
Nothing
instance ToJSON PDOMSetFileInputFiles where
  toJSON :: PDOMSetFileInputFiles -> Value
toJSON PDOMSetFileInputFiles
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"files" Text -> [Text] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([Text] -> Pair) -> Maybe [Text] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> [Text] -> Maybe [Text]
forall a. a -> Maybe a
Just (PDOMSetFileInputFiles -> [Text]
pDOMSetFileInputFilesFiles PDOMSetFileInputFiles
p),
    (Text
"nodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMSetFileInputFiles -> Maybe Int
pDOMSetFileInputFilesNodeId PDOMSetFileInputFiles
p),
    (Text
"backendNodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMSetFileInputFiles -> Maybe Int
pDOMSetFileInputFilesBackendNodeId PDOMSetFileInputFiles
p),
    (Text
"objectId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMSetFileInputFiles -> Maybe Text
pDOMSetFileInputFilesObjectId PDOMSetFileInputFiles
p)
    ]
instance Command PDOMSetFileInputFiles where
  type CommandResponse PDOMSetFileInputFiles = ()
  commandName :: Proxy PDOMSetFileInputFiles -> String
commandName Proxy PDOMSetFileInputFiles
_ = String
"DOM.setFileInputFiles"
  fromJSON :: Proxy PDOMSetFileInputFiles
-> Value -> Result (CommandResponse PDOMSetFileInputFiles)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PDOMSetFileInputFiles -> Result ())
-> Proxy PDOMSetFileInputFiles
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PDOMSetFileInputFiles -> ())
-> Proxy PDOMSetFileInputFiles
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PDOMSetFileInputFiles -> ()
forall a b. a -> b -> a
const ()

-- | Sets if stack traces should be captured for Nodes. See `Node.getNodeStackTraces`. Default is disabled.

-- | Parameters of the 'DOM.setNodeStackTracesEnabled' command.
data PDOMSetNodeStackTracesEnabled = PDOMSetNodeStackTracesEnabled
  {
    -- | Enable or disable.
    PDOMSetNodeStackTracesEnabled -> Bool
pDOMSetNodeStackTracesEnabledEnable :: Bool
  }
  deriving (PDOMSetNodeStackTracesEnabled
-> PDOMSetNodeStackTracesEnabled -> Bool
(PDOMSetNodeStackTracesEnabled
 -> PDOMSetNodeStackTracesEnabled -> Bool)
-> (PDOMSetNodeStackTracesEnabled
    -> PDOMSetNodeStackTracesEnabled -> Bool)
-> Eq PDOMSetNodeStackTracesEnabled
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMSetNodeStackTracesEnabled
-> PDOMSetNodeStackTracesEnabled -> Bool
$c/= :: PDOMSetNodeStackTracesEnabled
-> PDOMSetNodeStackTracesEnabled -> Bool
== :: PDOMSetNodeStackTracesEnabled
-> PDOMSetNodeStackTracesEnabled -> Bool
$c== :: PDOMSetNodeStackTracesEnabled
-> PDOMSetNodeStackTracesEnabled -> Bool
Eq, Int -> PDOMSetNodeStackTracesEnabled -> ShowS
[PDOMSetNodeStackTracesEnabled] -> ShowS
PDOMSetNodeStackTracesEnabled -> String
(Int -> PDOMSetNodeStackTracesEnabled -> ShowS)
-> (PDOMSetNodeStackTracesEnabled -> String)
-> ([PDOMSetNodeStackTracesEnabled] -> ShowS)
-> Show PDOMSetNodeStackTracesEnabled
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMSetNodeStackTracesEnabled] -> ShowS
$cshowList :: [PDOMSetNodeStackTracesEnabled] -> ShowS
show :: PDOMSetNodeStackTracesEnabled -> String
$cshow :: PDOMSetNodeStackTracesEnabled -> String
showsPrec :: Int -> PDOMSetNodeStackTracesEnabled -> ShowS
$cshowsPrec :: Int -> PDOMSetNodeStackTracesEnabled -> ShowS
Show)
pDOMSetNodeStackTracesEnabled
  {-
  -- | Enable or disable.
  -}
  :: Bool
  -> PDOMSetNodeStackTracesEnabled
pDOMSetNodeStackTracesEnabled :: Bool -> PDOMSetNodeStackTracesEnabled
pDOMSetNodeStackTracesEnabled
  Bool
arg_pDOMSetNodeStackTracesEnabledEnable
  = Bool -> PDOMSetNodeStackTracesEnabled
PDOMSetNodeStackTracesEnabled
    Bool
arg_pDOMSetNodeStackTracesEnabledEnable
instance ToJSON PDOMSetNodeStackTracesEnabled where
  toJSON :: PDOMSetNodeStackTracesEnabled -> Value
toJSON PDOMSetNodeStackTracesEnabled
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"enable" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (PDOMSetNodeStackTracesEnabled -> Bool
pDOMSetNodeStackTracesEnabledEnable PDOMSetNodeStackTracesEnabled
p)
    ]
instance Command PDOMSetNodeStackTracesEnabled where
  type CommandResponse PDOMSetNodeStackTracesEnabled = ()
  commandName :: Proxy PDOMSetNodeStackTracesEnabled -> String
commandName Proxy PDOMSetNodeStackTracesEnabled
_ = String
"DOM.setNodeStackTracesEnabled"
  fromJSON :: Proxy PDOMSetNodeStackTracesEnabled
-> Value -> Result (CommandResponse PDOMSetNodeStackTracesEnabled)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PDOMSetNodeStackTracesEnabled -> Result ())
-> Proxy PDOMSetNodeStackTracesEnabled
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PDOMSetNodeStackTracesEnabled -> ())
-> Proxy PDOMSetNodeStackTracesEnabled
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PDOMSetNodeStackTracesEnabled -> ()
forall a b. a -> b -> a
const ()

-- | Gets stack traces associated with a Node. As of now, only provides stack trace for Node creation.

-- | Parameters of the 'DOM.getNodeStackTraces' command.
data PDOMGetNodeStackTraces = PDOMGetNodeStackTraces
  {
    -- | Id of the node to get stack traces for.
    PDOMGetNodeStackTraces -> Int
pDOMGetNodeStackTracesNodeId :: DOMNodeId
  }
  deriving (PDOMGetNodeStackTraces -> PDOMGetNodeStackTraces -> Bool
(PDOMGetNodeStackTraces -> PDOMGetNodeStackTraces -> Bool)
-> (PDOMGetNodeStackTraces -> PDOMGetNodeStackTraces -> Bool)
-> Eq PDOMGetNodeStackTraces
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMGetNodeStackTraces -> PDOMGetNodeStackTraces -> Bool
$c/= :: PDOMGetNodeStackTraces -> PDOMGetNodeStackTraces -> Bool
== :: PDOMGetNodeStackTraces -> PDOMGetNodeStackTraces -> Bool
$c== :: PDOMGetNodeStackTraces -> PDOMGetNodeStackTraces -> Bool
Eq, Int -> PDOMGetNodeStackTraces -> ShowS
[PDOMGetNodeStackTraces] -> ShowS
PDOMGetNodeStackTraces -> String
(Int -> PDOMGetNodeStackTraces -> ShowS)
-> (PDOMGetNodeStackTraces -> String)
-> ([PDOMGetNodeStackTraces] -> ShowS)
-> Show PDOMGetNodeStackTraces
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMGetNodeStackTraces] -> ShowS
$cshowList :: [PDOMGetNodeStackTraces] -> ShowS
show :: PDOMGetNodeStackTraces -> String
$cshow :: PDOMGetNodeStackTraces -> String
showsPrec :: Int -> PDOMGetNodeStackTraces -> ShowS
$cshowsPrec :: Int -> PDOMGetNodeStackTraces -> ShowS
Show)
pDOMGetNodeStackTraces
  {-
  -- | Id of the node to get stack traces for.
  -}
  :: DOMNodeId
  -> PDOMGetNodeStackTraces
pDOMGetNodeStackTraces :: Int -> PDOMGetNodeStackTraces
pDOMGetNodeStackTraces
  Int
arg_pDOMGetNodeStackTracesNodeId
  = Int -> PDOMGetNodeStackTraces
PDOMGetNodeStackTraces
    Int
arg_pDOMGetNodeStackTracesNodeId
instance ToJSON PDOMGetNodeStackTraces where
  toJSON :: PDOMGetNodeStackTraces -> Value
toJSON PDOMGetNodeStackTraces
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"nodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PDOMGetNodeStackTraces -> Int
pDOMGetNodeStackTracesNodeId PDOMGetNodeStackTraces
p)
    ]
data DOMGetNodeStackTraces = DOMGetNodeStackTraces
  {
    -- | Creation stack trace, if available.
    DOMGetNodeStackTraces -> Maybe RuntimeStackTrace
dOMGetNodeStackTracesCreation :: Maybe Runtime.RuntimeStackTrace
  }
  deriving (DOMGetNodeStackTraces -> DOMGetNodeStackTraces -> Bool
(DOMGetNodeStackTraces -> DOMGetNodeStackTraces -> Bool)
-> (DOMGetNodeStackTraces -> DOMGetNodeStackTraces -> Bool)
-> Eq DOMGetNodeStackTraces
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMGetNodeStackTraces -> DOMGetNodeStackTraces -> Bool
$c/= :: DOMGetNodeStackTraces -> DOMGetNodeStackTraces -> Bool
== :: DOMGetNodeStackTraces -> DOMGetNodeStackTraces -> Bool
$c== :: DOMGetNodeStackTraces -> DOMGetNodeStackTraces -> Bool
Eq, Int -> DOMGetNodeStackTraces -> ShowS
[DOMGetNodeStackTraces] -> ShowS
DOMGetNodeStackTraces -> String
(Int -> DOMGetNodeStackTraces -> ShowS)
-> (DOMGetNodeStackTraces -> String)
-> ([DOMGetNodeStackTraces] -> ShowS)
-> Show DOMGetNodeStackTraces
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMGetNodeStackTraces] -> ShowS
$cshowList :: [DOMGetNodeStackTraces] -> ShowS
show :: DOMGetNodeStackTraces -> String
$cshow :: DOMGetNodeStackTraces -> String
showsPrec :: Int -> DOMGetNodeStackTraces -> ShowS
$cshowsPrec :: Int -> DOMGetNodeStackTraces -> ShowS
Show)
instance FromJSON DOMGetNodeStackTraces where
  parseJSON :: Value -> Parser DOMGetNodeStackTraces
parseJSON = String
-> (Object -> Parser DOMGetNodeStackTraces)
-> Value
-> Parser DOMGetNodeStackTraces
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMGetNodeStackTraces" ((Object -> Parser DOMGetNodeStackTraces)
 -> Value -> Parser DOMGetNodeStackTraces)
-> (Object -> Parser DOMGetNodeStackTraces)
-> Value
-> Parser DOMGetNodeStackTraces
forall a b. (a -> b) -> a -> b
$ \Object
o -> Maybe RuntimeStackTrace -> DOMGetNodeStackTraces
DOMGetNodeStackTraces
    (Maybe RuntimeStackTrace -> DOMGetNodeStackTraces)
-> Parser (Maybe RuntimeStackTrace) -> Parser DOMGetNodeStackTraces
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser (Maybe RuntimeStackTrace)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"creation"
instance Command PDOMGetNodeStackTraces where
  type CommandResponse PDOMGetNodeStackTraces = DOMGetNodeStackTraces
  commandName :: Proxy PDOMGetNodeStackTraces -> String
commandName Proxy PDOMGetNodeStackTraces
_ = String
"DOM.getNodeStackTraces"

-- | Returns file information for the given
--   File wrapper.

-- | Parameters of the 'DOM.getFileInfo' command.
data PDOMGetFileInfo = PDOMGetFileInfo
  {
    -- | JavaScript object id of the node wrapper.
    PDOMGetFileInfo -> Text
pDOMGetFileInfoObjectId :: Runtime.RuntimeRemoteObjectId
  }
  deriving (PDOMGetFileInfo -> PDOMGetFileInfo -> Bool
(PDOMGetFileInfo -> PDOMGetFileInfo -> Bool)
-> (PDOMGetFileInfo -> PDOMGetFileInfo -> Bool)
-> Eq PDOMGetFileInfo
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMGetFileInfo -> PDOMGetFileInfo -> Bool
$c/= :: PDOMGetFileInfo -> PDOMGetFileInfo -> Bool
== :: PDOMGetFileInfo -> PDOMGetFileInfo -> Bool
$c== :: PDOMGetFileInfo -> PDOMGetFileInfo -> Bool
Eq, Int -> PDOMGetFileInfo -> ShowS
[PDOMGetFileInfo] -> ShowS
PDOMGetFileInfo -> String
(Int -> PDOMGetFileInfo -> ShowS)
-> (PDOMGetFileInfo -> String)
-> ([PDOMGetFileInfo] -> ShowS)
-> Show PDOMGetFileInfo
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMGetFileInfo] -> ShowS
$cshowList :: [PDOMGetFileInfo] -> ShowS
show :: PDOMGetFileInfo -> String
$cshow :: PDOMGetFileInfo -> String
showsPrec :: Int -> PDOMGetFileInfo -> ShowS
$cshowsPrec :: Int -> PDOMGetFileInfo -> ShowS
Show)
pDOMGetFileInfo
  {-
  -- | JavaScript object id of the node wrapper.
  -}
  :: Runtime.RuntimeRemoteObjectId
  -> PDOMGetFileInfo
pDOMGetFileInfo :: Text -> PDOMGetFileInfo
pDOMGetFileInfo
  Text
arg_pDOMGetFileInfoObjectId
  = Text -> PDOMGetFileInfo
PDOMGetFileInfo
    Text
arg_pDOMGetFileInfoObjectId
instance ToJSON PDOMGetFileInfo where
  toJSON :: PDOMGetFileInfo -> Value
toJSON PDOMGetFileInfo
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"objectId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PDOMGetFileInfo -> Text
pDOMGetFileInfoObjectId PDOMGetFileInfo
p)
    ]
data DOMGetFileInfo = DOMGetFileInfo
  {
    DOMGetFileInfo -> Text
dOMGetFileInfoPath :: T.Text
  }
  deriving (DOMGetFileInfo -> DOMGetFileInfo -> Bool
(DOMGetFileInfo -> DOMGetFileInfo -> Bool)
-> (DOMGetFileInfo -> DOMGetFileInfo -> Bool) -> Eq DOMGetFileInfo
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMGetFileInfo -> DOMGetFileInfo -> Bool
$c/= :: DOMGetFileInfo -> DOMGetFileInfo -> Bool
== :: DOMGetFileInfo -> DOMGetFileInfo -> Bool
$c== :: DOMGetFileInfo -> DOMGetFileInfo -> Bool
Eq, Int -> DOMGetFileInfo -> ShowS
[DOMGetFileInfo] -> ShowS
DOMGetFileInfo -> String
(Int -> DOMGetFileInfo -> ShowS)
-> (DOMGetFileInfo -> String)
-> ([DOMGetFileInfo] -> ShowS)
-> Show DOMGetFileInfo
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMGetFileInfo] -> ShowS
$cshowList :: [DOMGetFileInfo] -> ShowS
show :: DOMGetFileInfo -> String
$cshow :: DOMGetFileInfo -> String
showsPrec :: Int -> DOMGetFileInfo -> ShowS
$cshowsPrec :: Int -> DOMGetFileInfo -> ShowS
Show)
instance FromJSON DOMGetFileInfo where
  parseJSON :: Value -> Parser DOMGetFileInfo
parseJSON = String
-> (Object -> Parser DOMGetFileInfo)
-> Value
-> Parser DOMGetFileInfo
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMGetFileInfo" ((Object -> Parser DOMGetFileInfo)
 -> Value -> Parser DOMGetFileInfo)
-> (Object -> Parser DOMGetFileInfo)
-> Value
-> Parser DOMGetFileInfo
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> DOMGetFileInfo
DOMGetFileInfo
    (Text -> DOMGetFileInfo) -> Parser Text -> Parser DOMGetFileInfo
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"path"
instance Command PDOMGetFileInfo where
  type CommandResponse PDOMGetFileInfo = DOMGetFileInfo
  commandName :: Proxy PDOMGetFileInfo -> String
commandName Proxy PDOMGetFileInfo
_ = String
"DOM.getFileInfo"

-- | Enables console to refer to the node with given id via $x (see Command Line API for more details
--   $x functions).

-- | Parameters of the 'DOM.setInspectedNode' command.
data PDOMSetInspectedNode = PDOMSetInspectedNode
  {
    -- | DOM node id to be accessible by means of $x command line API.
    PDOMSetInspectedNode -> Int
pDOMSetInspectedNodeNodeId :: DOMNodeId
  }
  deriving (PDOMSetInspectedNode -> PDOMSetInspectedNode -> Bool
(PDOMSetInspectedNode -> PDOMSetInspectedNode -> Bool)
-> (PDOMSetInspectedNode -> PDOMSetInspectedNode -> Bool)
-> Eq PDOMSetInspectedNode
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMSetInspectedNode -> PDOMSetInspectedNode -> Bool
$c/= :: PDOMSetInspectedNode -> PDOMSetInspectedNode -> Bool
== :: PDOMSetInspectedNode -> PDOMSetInspectedNode -> Bool
$c== :: PDOMSetInspectedNode -> PDOMSetInspectedNode -> Bool
Eq, Int -> PDOMSetInspectedNode -> ShowS
[PDOMSetInspectedNode] -> ShowS
PDOMSetInspectedNode -> String
(Int -> PDOMSetInspectedNode -> ShowS)
-> (PDOMSetInspectedNode -> String)
-> ([PDOMSetInspectedNode] -> ShowS)
-> Show PDOMSetInspectedNode
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMSetInspectedNode] -> ShowS
$cshowList :: [PDOMSetInspectedNode] -> ShowS
show :: PDOMSetInspectedNode -> String
$cshow :: PDOMSetInspectedNode -> String
showsPrec :: Int -> PDOMSetInspectedNode -> ShowS
$cshowsPrec :: Int -> PDOMSetInspectedNode -> ShowS
Show)
pDOMSetInspectedNode
  {-
  -- | DOM node id to be accessible by means of $x command line API.
  -}
  :: DOMNodeId
  -> PDOMSetInspectedNode
pDOMSetInspectedNode :: Int -> PDOMSetInspectedNode
pDOMSetInspectedNode
  Int
arg_pDOMSetInspectedNodeNodeId
  = Int -> PDOMSetInspectedNode
PDOMSetInspectedNode
    Int
arg_pDOMSetInspectedNodeNodeId
instance ToJSON PDOMSetInspectedNode where
  toJSON :: PDOMSetInspectedNode -> Value
toJSON PDOMSetInspectedNode
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"nodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PDOMSetInspectedNode -> Int
pDOMSetInspectedNodeNodeId PDOMSetInspectedNode
p)
    ]
instance Command PDOMSetInspectedNode where
  type CommandResponse PDOMSetInspectedNode = ()
  commandName :: Proxy PDOMSetInspectedNode -> String
commandName Proxy PDOMSetInspectedNode
_ = String
"DOM.setInspectedNode"
  fromJSON :: Proxy PDOMSetInspectedNode
-> Value -> Result (CommandResponse PDOMSetInspectedNode)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PDOMSetInspectedNode -> Result ())
-> Proxy PDOMSetInspectedNode
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PDOMSetInspectedNode -> ())
-> Proxy PDOMSetInspectedNode
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PDOMSetInspectedNode -> ()
forall a b. a -> b -> a
const ()

-- | Sets node name for a node with given id.

-- | Parameters of the 'DOM.setNodeName' command.
data PDOMSetNodeName = PDOMSetNodeName
  {
    -- | Id of the node to set name for.
    PDOMSetNodeName -> Int
pDOMSetNodeNameNodeId :: DOMNodeId,
    -- | New node's name.
    PDOMSetNodeName -> Text
pDOMSetNodeNameName :: T.Text
  }
  deriving (PDOMSetNodeName -> PDOMSetNodeName -> Bool
(PDOMSetNodeName -> PDOMSetNodeName -> Bool)
-> (PDOMSetNodeName -> PDOMSetNodeName -> Bool)
-> Eq PDOMSetNodeName
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMSetNodeName -> PDOMSetNodeName -> Bool
$c/= :: PDOMSetNodeName -> PDOMSetNodeName -> Bool
== :: PDOMSetNodeName -> PDOMSetNodeName -> Bool
$c== :: PDOMSetNodeName -> PDOMSetNodeName -> Bool
Eq, Int -> PDOMSetNodeName -> ShowS
[PDOMSetNodeName] -> ShowS
PDOMSetNodeName -> String
(Int -> PDOMSetNodeName -> ShowS)
-> (PDOMSetNodeName -> String)
-> ([PDOMSetNodeName] -> ShowS)
-> Show PDOMSetNodeName
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMSetNodeName] -> ShowS
$cshowList :: [PDOMSetNodeName] -> ShowS
show :: PDOMSetNodeName -> String
$cshow :: PDOMSetNodeName -> String
showsPrec :: Int -> PDOMSetNodeName -> ShowS
$cshowsPrec :: Int -> PDOMSetNodeName -> ShowS
Show)
pDOMSetNodeName
  {-
  -- | Id of the node to set name for.
  -}
  :: DOMNodeId
  {-
  -- | New node's name.
  -}
  -> T.Text
  -> PDOMSetNodeName
pDOMSetNodeName :: Int -> Text -> PDOMSetNodeName
pDOMSetNodeName
  Int
arg_pDOMSetNodeNameNodeId
  Text
arg_pDOMSetNodeNameName
  = Int -> Text -> PDOMSetNodeName
PDOMSetNodeName
    Int
arg_pDOMSetNodeNameNodeId
    Text
arg_pDOMSetNodeNameName
instance ToJSON PDOMSetNodeName where
  toJSON :: PDOMSetNodeName -> Value
toJSON PDOMSetNodeName
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"nodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PDOMSetNodeName -> Int
pDOMSetNodeNameNodeId PDOMSetNodeName
p),
    (Text
"name" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PDOMSetNodeName -> Text
pDOMSetNodeNameName PDOMSetNodeName
p)
    ]
data DOMSetNodeName = DOMSetNodeName
  {
    -- | New node's id.
    DOMSetNodeName -> Int
dOMSetNodeNameNodeId :: DOMNodeId
  }
  deriving (DOMSetNodeName -> DOMSetNodeName -> Bool
(DOMSetNodeName -> DOMSetNodeName -> Bool)
-> (DOMSetNodeName -> DOMSetNodeName -> Bool) -> Eq DOMSetNodeName
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMSetNodeName -> DOMSetNodeName -> Bool
$c/= :: DOMSetNodeName -> DOMSetNodeName -> Bool
== :: DOMSetNodeName -> DOMSetNodeName -> Bool
$c== :: DOMSetNodeName -> DOMSetNodeName -> Bool
Eq, Int -> DOMSetNodeName -> ShowS
[DOMSetNodeName] -> ShowS
DOMSetNodeName -> String
(Int -> DOMSetNodeName -> ShowS)
-> (DOMSetNodeName -> String)
-> ([DOMSetNodeName] -> ShowS)
-> Show DOMSetNodeName
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMSetNodeName] -> ShowS
$cshowList :: [DOMSetNodeName] -> ShowS
show :: DOMSetNodeName -> String
$cshow :: DOMSetNodeName -> String
showsPrec :: Int -> DOMSetNodeName -> ShowS
$cshowsPrec :: Int -> DOMSetNodeName -> ShowS
Show)
instance FromJSON DOMSetNodeName where
  parseJSON :: Value -> Parser DOMSetNodeName
parseJSON = String
-> (Object -> Parser DOMSetNodeName)
-> Value
-> Parser DOMSetNodeName
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMSetNodeName" ((Object -> Parser DOMSetNodeName)
 -> Value -> Parser DOMSetNodeName)
-> (Object -> Parser DOMSetNodeName)
-> Value
-> Parser DOMSetNodeName
forall a b. (a -> b) -> a -> b
$ \Object
o -> Int -> DOMSetNodeName
DOMSetNodeName
    (Int -> DOMSetNodeName) -> Parser Int -> Parser DOMSetNodeName
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"nodeId"
instance Command PDOMSetNodeName where
  type CommandResponse PDOMSetNodeName = DOMSetNodeName
  commandName :: Proxy PDOMSetNodeName -> String
commandName Proxy PDOMSetNodeName
_ = String
"DOM.setNodeName"

-- | Sets node value for a node with given id.

-- | Parameters of the 'DOM.setNodeValue' command.
data PDOMSetNodeValue = PDOMSetNodeValue
  {
    -- | Id of the node to set value for.
    PDOMSetNodeValue -> Int
pDOMSetNodeValueNodeId :: DOMNodeId,
    -- | New node's value.
    PDOMSetNodeValue -> Text
pDOMSetNodeValueValue :: T.Text
  }
  deriving (PDOMSetNodeValue -> PDOMSetNodeValue -> Bool
(PDOMSetNodeValue -> PDOMSetNodeValue -> Bool)
-> (PDOMSetNodeValue -> PDOMSetNodeValue -> Bool)
-> Eq PDOMSetNodeValue
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMSetNodeValue -> PDOMSetNodeValue -> Bool
$c/= :: PDOMSetNodeValue -> PDOMSetNodeValue -> Bool
== :: PDOMSetNodeValue -> PDOMSetNodeValue -> Bool
$c== :: PDOMSetNodeValue -> PDOMSetNodeValue -> Bool
Eq, Int -> PDOMSetNodeValue -> ShowS
[PDOMSetNodeValue] -> ShowS
PDOMSetNodeValue -> String
(Int -> PDOMSetNodeValue -> ShowS)
-> (PDOMSetNodeValue -> String)
-> ([PDOMSetNodeValue] -> ShowS)
-> Show PDOMSetNodeValue
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMSetNodeValue] -> ShowS
$cshowList :: [PDOMSetNodeValue] -> ShowS
show :: PDOMSetNodeValue -> String
$cshow :: PDOMSetNodeValue -> String
showsPrec :: Int -> PDOMSetNodeValue -> ShowS
$cshowsPrec :: Int -> PDOMSetNodeValue -> ShowS
Show)
pDOMSetNodeValue
  {-
  -- | Id of the node to set value for.
  -}
  :: DOMNodeId
  {-
  -- | New node's value.
  -}
  -> T.Text
  -> PDOMSetNodeValue
pDOMSetNodeValue :: Int -> Text -> PDOMSetNodeValue
pDOMSetNodeValue
  Int
arg_pDOMSetNodeValueNodeId
  Text
arg_pDOMSetNodeValueValue
  = Int -> Text -> PDOMSetNodeValue
PDOMSetNodeValue
    Int
arg_pDOMSetNodeValueNodeId
    Text
arg_pDOMSetNodeValueValue
instance ToJSON PDOMSetNodeValue where
  toJSON :: PDOMSetNodeValue -> Value
toJSON PDOMSetNodeValue
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"nodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PDOMSetNodeValue -> Int
pDOMSetNodeValueNodeId PDOMSetNodeValue
p),
    (Text
"value" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PDOMSetNodeValue -> Text
pDOMSetNodeValueValue PDOMSetNodeValue
p)
    ]
instance Command PDOMSetNodeValue where
  type CommandResponse PDOMSetNodeValue = ()
  commandName :: Proxy PDOMSetNodeValue -> String
commandName Proxy PDOMSetNodeValue
_ = String
"DOM.setNodeValue"
  fromJSON :: Proxy PDOMSetNodeValue
-> Value -> Result (CommandResponse PDOMSetNodeValue)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PDOMSetNodeValue -> Result ())
-> Proxy PDOMSetNodeValue
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PDOMSetNodeValue -> ())
-> Proxy PDOMSetNodeValue
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PDOMSetNodeValue -> ()
forall a b. a -> b -> a
const ()

-- | Sets node HTML markup, returns new node id.

-- | Parameters of the 'DOM.setOuterHTML' command.
data PDOMSetOuterHTML = PDOMSetOuterHTML
  {
    -- | Id of the node to set markup for.
    PDOMSetOuterHTML -> Int
pDOMSetOuterHTMLNodeId :: DOMNodeId,
    -- | Outer HTML markup to set.
    PDOMSetOuterHTML -> Text
pDOMSetOuterHTMLOuterHTML :: T.Text
  }
  deriving (PDOMSetOuterHTML -> PDOMSetOuterHTML -> Bool
(PDOMSetOuterHTML -> PDOMSetOuterHTML -> Bool)
-> (PDOMSetOuterHTML -> PDOMSetOuterHTML -> Bool)
-> Eq PDOMSetOuterHTML
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMSetOuterHTML -> PDOMSetOuterHTML -> Bool
$c/= :: PDOMSetOuterHTML -> PDOMSetOuterHTML -> Bool
== :: PDOMSetOuterHTML -> PDOMSetOuterHTML -> Bool
$c== :: PDOMSetOuterHTML -> PDOMSetOuterHTML -> Bool
Eq, Int -> PDOMSetOuterHTML -> ShowS
[PDOMSetOuterHTML] -> ShowS
PDOMSetOuterHTML -> String
(Int -> PDOMSetOuterHTML -> ShowS)
-> (PDOMSetOuterHTML -> String)
-> ([PDOMSetOuterHTML] -> ShowS)
-> Show PDOMSetOuterHTML
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMSetOuterHTML] -> ShowS
$cshowList :: [PDOMSetOuterHTML] -> ShowS
show :: PDOMSetOuterHTML -> String
$cshow :: PDOMSetOuterHTML -> String
showsPrec :: Int -> PDOMSetOuterHTML -> ShowS
$cshowsPrec :: Int -> PDOMSetOuterHTML -> ShowS
Show)
pDOMSetOuterHTML
  {-
  -- | Id of the node to set markup for.
  -}
  :: DOMNodeId
  {-
  -- | Outer HTML markup to set.
  -}
  -> T.Text
  -> PDOMSetOuterHTML
pDOMSetOuterHTML :: Int -> Text -> PDOMSetOuterHTML
pDOMSetOuterHTML
  Int
arg_pDOMSetOuterHTMLNodeId
  Text
arg_pDOMSetOuterHTMLOuterHTML
  = Int -> Text -> PDOMSetOuterHTML
PDOMSetOuterHTML
    Int
arg_pDOMSetOuterHTMLNodeId
    Text
arg_pDOMSetOuterHTMLOuterHTML
instance ToJSON PDOMSetOuterHTML where
  toJSON :: PDOMSetOuterHTML -> Value
toJSON PDOMSetOuterHTML
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"nodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PDOMSetOuterHTML -> Int
pDOMSetOuterHTMLNodeId PDOMSetOuterHTML
p),
    (Text
"outerHTML" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PDOMSetOuterHTML -> Text
pDOMSetOuterHTMLOuterHTML PDOMSetOuterHTML
p)
    ]
instance Command PDOMSetOuterHTML where
  type CommandResponse PDOMSetOuterHTML = ()
  commandName :: Proxy PDOMSetOuterHTML -> String
commandName Proxy PDOMSetOuterHTML
_ = String
"DOM.setOuterHTML"
  fromJSON :: Proxy PDOMSetOuterHTML
-> Value -> Result (CommandResponse PDOMSetOuterHTML)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PDOMSetOuterHTML -> Result ())
-> Proxy PDOMSetOuterHTML
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PDOMSetOuterHTML -> ())
-> Proxy PDOMSetOuterHTML
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PDOMSetOuterHTML -> ()
forall a b. a -> b -> a
const ()

-- | Undoes the last performed action.

-- | Parameters of the 'DOM.undo' command.
data PDOMUndo = PDOMUndo
  deriving (PDOMUndo -> PDOMUndo -> Bool
(PDOMUndo -> PDOMUndo -> Bool)
-> (PDOMUndo -> PDOMUndo -> Bool) -> Eq PDOMUndo
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMUndo -> PDOMUndo -> Bool
$c/= :: PDOMUndo -> PDOMUndo -> Bool
== :: PDOMUndo -> PDOMUndo -> Bool
$c== :: PDOMUndo -> PDOMUndo -> Bool
Eq, Int -> PDOMUndo -> ShowS
[PDOMUndo] -> ShowS
PDOMUndo -> String
(Int -> PDOMUndo -> ShowS)
-> (PDOMUndo -> String) -> ([PDOMUndo] -> ShowS) -> Show PDOMUndo
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMUndo] -> ShowS
$cshowList :: [PDOMUndo] -> ShowS
show :: PDOMUndo -> String
$cshow :: PDOMUndo -> String
showsPrec :: Int -> PDOMUndo -> ShowS
$cshowsPrec :: Int -> PDOMUndo -> ShowS
Show)
pDOMUndo
  :: PDOMUndo
pDOMUndo :: PDOMUndo
pDOMUndo
  = PDOMUndo
PDOMUndo
instance ToJSON PDOMUndo where
  toJSON :: PDOMUndo -> Value
toJSON PDOMUndo
_ = Value
A.Null
instance Command PDOMUndo where
  type CommandResponse PDOMUndo = ()
  commandName :: Proxy PDOMUndo -> String
commandName Proxy PDOMUndo
_ = String
"DOM.undo"
  fromJSON :: Proxy PDOMUndo -> Value -> Result (CommandResponse PDOMUndo)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PDOMUndo -> Result ())
-> Proxy PDOMUndo
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PDOMUndo -> ()) -> Proxy PDOMUndo -> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PDOMUndo -> ()
forall a b. a -> b -> a
const ()

-- | Returns iframe node that owns iframe with the given domain.

-- | Parameters of the 'DOM.getFrameOwner' command.
data PDOMGetFrameOwner = PDOMGetFrameOwner
  {
    PDOMGetFrameOwner -> Text
pDOMGetFrameOwnerFrameId :: PageFrameId
  }
  deriving (PDOMGetFrameOwner -> PDOMGetFrameOwner -> Bool
(PDOMGetFrameOwner -> PDOMGetFrameOwner -> Bool)
-> (PDOMGetFrameOwner -> PDOMGetFrameOwner -> Bool)
-> Eq PDOMGetFrameOwner
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMGetFrameOwner -> PDOMGetFrameOwner -> Bool
$c/= :: PDOMGetFrameOwner -> PDOMGetFrameOwner -> Bool
== :: PDOMGetFrameOwner -> PDOMGetFrameOwner -> Bool
$c== :: PDOMGetFrameOwner -> PDOMGetFrameOwner -> Bool
Eq, Int -> PDOMGetFrameOwner -> ShowS
[PDOMGetFrameOwner] -> ShowS
PDOMGetFrameOwner -> String
(Int -> PDOMGetFrameOwner -> ShowS)
-> (PDOMGetFrameOwner -> String)
-> ([PDOMGetFrameOwner] -> ShowS)
-> Show PDOMGetFrameOwner
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMGetFrameOwner] -> ShowS
$cshowList :: [PDOMGetFrameOwner] -> ShowS
show :: PDOMGetFrameOwner -> String
$cshow :: PDOMGetFrameOwner -> String
showsPrec :: Int -> PDOMGetFrameOwner -> ShowS
$cshowsPrec :: Int -> PDOMGetFrameOwner -> ShowS
Show)
pDOMGetFrameOwner
  :: PageFrameId
  -> PDOMGetFrameOwner
pDOMGetFrameOwner :: Text -> PDOMGetFrameOwner
pDOMGetFrameOwner
  Text
arg_pDOMGetFrameOwnerFrameId
  = Text -> PDOMGetFrameOwner
PDOMGetFrameOwner
    Text
arg_pDOMGetFrameOwnerFrameId
instance ToJSON PDOMGetFrameOwner where
  toJSON :: PDOMGetFrameOwner -> Value
toJSON PDOMGetFrameOwner
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"frameId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PDOMGetFrameOwner -> Text
pDOMGetFrameOwnerFrameId PDOMGetFrameOwner
p)
    ]
data DOMGetFrameOwner = DOMGetFrameOwner
  {
    -- | Resulting node.
    DOMGetFrameOwner -> Int
dOMGetFrameOwnerBackendNodeId :: DOMBackendNodeId,
    -- | Id of the node at given coordinates, only when enabled and requested document.
    DOMGetFrameOwner -> Maybe Int
dOMGetFrameOwnerNodeId :: Maybe DOMNodeId
  }
  deriving (DOMGetFrameOwner -> DOMGetFrameOwner -> Bool
(DOMGetFrameOwner -> DOMGetFrameOwner -> Bool)
-> (DOMGetFrameOwner -> DOMGetFrameOwner -> Bool)
-> Eq DOMGetFrameOwner
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMGetFrameOwner -> DOMGetFrameOwner -> Bool
$c/= :: DOMGetFrameOwner -> DOMGetFrameOwner -> Bool
== :: DOMGetFrameOwner -> DOMGetFrameOwner -> Bool
$c== :: DOMGetFrameOwner -> DOMGetFrameOwner -> Bool
Eq, Int -> DOMGetFrameOwner -> ShowS
[DOMGetFrameOwner] -> ShowS
DOMGetFrameOwner -> String
(Int -> DOMGetFrameOwner -> ShowS)
-> (DOMGetFrameOwner -> String)
-> ([DOMGetFrameOwner] -> ShowS)
-> Show DOMGetFrameOwner
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMGetFrameOwner] -> ShowS
$cshowList :: [DOMGetFrameOwner] -> ShowS
show :: DOMGetFrameOwner -> String
$cshow :: DOMGetFrameOwner -> String
showsPrec :: Int -> DOMGetFrameOwner -> ShowS
$cshowsPrec :: Int -> DOMGetFrameOwner -> ShowS
Show)
instance FromJSON DOMGetFrameOwner where
  parseJSON :: Value -> Parser DOMGetFrameOwner
parseJSON = String
-> (Object -> Parser DOMGetFrameOwner)
-> Value
-> Parser DOMGetFrameOwner
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMGetFrameOwner" ((Object -> Parser DOMGetFrameOwner)
 -> Value -> Parser DOMGetFrameOwner)
-> (Object -> Parser DOMGetFrameOwner)
-> Value
-> Parser DOMGetFrameOwner
forall a b. (a -> b) -> a -> b
$ \Object
o -> Int -> Maybe Int -> DOMGetFrameOwner
DOMGetFrameOwner
    (Int -> Maybe Int -> DOMGetFrameOwner)
-> Parser Int -> Parser (Maybe Int -> DOMGetFrameOwner)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"backendNodeId"
    Parser (Maybe Int -> DOMGetFrameOwner)
-> Parser (Maybe Int) -> Parser DOMGetFrameOwner
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Int)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"nodeId"
instance Command PDOMGetFrameOwner where
  type CommandResponse PDOMGetFrameOwner = DOMGetFrameOwner
  commandName :: Proxy PDOMGetFrameOwner -> String
commandName Proxy PDOMGetFrameOwner
_ = String
"DOM.getFrameOwner"

-- | Returns the container of the given node based on container query conditions.
--   If containerName is given, it will find the nearest container with a matching name;
--   otherwise it will find the nearest container regardless of its container name.

-- | Parameters of the 'DOM.getContainerForNode' command.
data PDOMGetContainerForNode = PDOMGetContainerForNode
  {
    PDOMGetContainerForNode -> Int
pDOMGetContainerForNodeNodeId :: DOMNodeId,
    PDOMGetContainerForNode -> Maybe Text
pDOMGetContainerForNodeContainerName :: Maybe T.Text
  }
  deriving (PDOMGetContainerForNode -> PDOMGetContainerForNode -> Bool
(PDOMGetContainerForNode -> PDOMGetContainerForNode -> Bool)
-> (PDOMGetContainerForNode -> PDOMGetContainerForNode -> Bool)
-> Eq PDOMGetContainerForNode
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMGetContainerForNode -> PDOMGetContainerForNode -> Bool
$c/= :: PDOMGetContainerForNode -> PDOMGetContainerForNode -> Bool
== :: PDOMGetContainerForNode -> PDOMGetContainerForNode -> Bool
$c== :: PDOMGetContainerForNode -> PDOMGetContainerForNode -> Bool
Eq, Int -> PDOMGetContainerForNode -> ShowS
[PDOMGetContainerForNode] -> ShowS
PDOMGetContainerForNode -> String
(Int -> PDOMGetContainerForNode -> ShowS)
-> (PDOMGetContainerForNode -> String)
-> ([PDOMGetContainerForNode] -> ShowS)
-> Show PDOMGetContainerForNode
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMGetContainerForNode] -> ShowS
$cshowList :: [PDOMGetContainerForNode] -> ShowS
show :: PDOMGetContainerForNode -> String
$cshow :: PDOMGetContainerForNode -> String
showsPrec :: Int -> PDOMGetContainerForNode -> ShowS
$cshowsPrec :: Int -> PDOMGetContainerForNode -> ShowS
Show)
pDOMGetContainerForNode
  :: DOMNodeId
  -> PDOMGetContainerForNode
pDOMGetContainerForNode :: Int -> PDOMGetContainerForNode
pDOMGetContainerForNode
  Int
arg_pDOMGetContainerForNodeNodeId
  = Int -> Maybe Text -> PDOMGetContainerForNode
PDOMGetContainerForNode
    Int
arg_pDOMGetContainerForNodeNodeId
    Maybe Text
forall a. Maybe a
Nothing
instance ToJSON PDOMGetContainerForNode where
  toJSON :: PDOMGetContainerForNode -> Value
toJSON PDOMGetContainerForNode
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"nodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PDOMGetContainerForNode -> Int
pDOMGetContainerForNodeNodeId PDOMGetContainerForNode
p),
    (Text
"containerName" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PDOMGetContainerForNode -> Maybe Text
pDOMGetContainerForNodeContainerName PDOMGetContainerForNode
p)
    ]
data DOMGetContainerForNode = DOMGetContainerForNode
  {
    -- | The container node for the given node, or null if not found.
    DOMGetContainerForNode -> Maybe Int
dOMGetContainerForNodeNodeId :: Maybe DOMNodeId
  }
  deriving (DOMGetContainerForNode -> DOMGetContainerForNode -> Bool
(DOMGetContainerForNode -> DOMGetContainerForNode -> Bool)
-> (DOMGetContainerForNode -> DOMGetContainerForNode -> Bool)
-> Eq DOMGetContainerForNode
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMGetContainerForNode -> DOMGetContainerForNode -> Bool
$c/= :: DOMGetContainerForNode -> DOMGetContainerForNode -> Bool
== :: DOMGetContainerForNode -> DOMGetContainerForNode -> Bool
$c== :: DOMGetContainerForNode -> DOMGetContainerForNode -> Bool
Eq, Int -> DOMGetContainerForNode -> ShowS
[DOMGetContainerForNode] -> ShowS
DOMGetContainerForNode -> String
(Int -> DOMGetContainerForNode -> ShowS)
-> (DOMGetContainerForNode -> String)
-> ([DOMGetContainerForNode] -> ShowS)
-> Show DOMGetContainerForNode
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMGetContainerForNode] -> ShowS
$cshowList :: [DOMGetContainerForNode] -> ShowS
show :: DOMGetContainerForNode -> String
$cshow :: DOMGetContainerForNode -> String
showsPrec :: Int -> DOMGetContainerForNode -> ShowS
$cshowsPrec :: Int -> DOMGetContainerForNode -> ShowS
Show)
instance FromJSON DOMGetContainerForNode where
  parseJSON :: Value -> Parser DOMGetContainerForNode
parseJSON = String
-> (Object -> Parser DOMGetContainerForNode)
-> Value
-> Parser DOMGetContainerForNode
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMGetContainerForNode" ((Object -> Parser DOMGetContainerForNode)
 -> Value -> Parser DOMGetContainerForNode)
-> (Object -> Parser DOMGetContainerForNode)
-> Value
-> Parser DOMGetContainerForNode
forall a b. (a -> b) -> a -> b
$ \Object
o -> Maybe Int -> DOMGetContainerForNode
DOMGetContainerForNode
    (Maybe Int -> DOMGetContainerForNode)
-> Parser (Maybe Int) -> Parser DOMGetContainerForNode
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser (Maybe Int)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"nodeId"
instance Command PDOMGetContainerForNode where
  type CommandResponse PDOMGetContainerForNode = DOMGetContainerForNode
  commandName :: Proxy PDOMGetContainerForNode -> String
commandName Proxy PDOMGetContainerForNode
_ = String
"DOM.getContainerForNode"

-- | Returns the descendants of a container query container that have
--   container queries against this container.

-- | Parameters of the 'DOM.getQueryingDescendantsForContainer' command.
data PDOMGetQueryingDescendantsForContainer = PDOMGetQueryingDescendantsForContainer
  {
    -- | Id of the container node to find querying descendants from.
    PDOMGetQueryingDescendantsForContainer -> Int
pDOMGetQueryingDescendantsForContainerNodeId :: DOMNodeId
  }
  deriving (PDOMGetQueryingDescendantsForContainer
-> PDOMGetQueryingDescendantsForContainer -> Bool
(PDOMGetQueryingDescendantsForContainer
 -> PDOMGetQueryingDescendantsForContainer -> Bool)
-> (PDOMGetQueryingDescendantsForContainer
    -> PDOMGetQueryingDescendantsForContainer -> Bool)
-> Eq PDOMGetQueryingDescendantsForContainer
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PDOMGetQueryingDescendantsForContainer
-> PDOMGetQueryingDescendantsForContainer -> Bool
$c/= :: PDOMGetQueryingDescendantsForContainer
-> PDOMGetQueryingDescendantsForContainer -> Bool
== :: PDOMGetQueryingDescendantsForContainer
-> PDOMGetQueryingDescendantsForContainer -> Bool
$c== :: PDOMGetQueryingDescendantsForContainer
-> PDOMGetQueryingDescendantsForContainer -> Bool
Eq, Int -> PDOMGetQueryingDescendantsForContainer -> ShowS
[PDOMGetQueryingDescendantsForContainer] -> ShowS
PDOMGetQueryingDescendantsForContainer -> String
(Int -> PDOMGetQueryingDescendantsForContainer -> ShowS)
-> (PDOMGetQueryingDescendantsForContainer -> String)
-> ([PDOMGetQueryingDescendantsForContainer] -> ShowS)
-> Show PDOMGetQueryingDescendantsForContainer
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PDOMGetQueryingDescendantsForContainer] -> ShowS
$cshowList :: [PDOMGetQueryingDescendantsForContainer] -> ShowS
show :: PDOMGetQueryingDescendantsForContainer -> String
$cshow :: PDOMGetQueryingDescendantsForContainer -> String
showsPrec :: Int -> PDOMGetQueryingDescendantsForContainer -> ShowS
$cshowsPrec :: Int -> PDOMGetQueryingDescendantsForContainer -> ShowS
Show)
pDOMGetQueryingDescendantsForContainer
  {-
  -- | Id of the container node to find querying descendants from.
  -}
  :: DOMNodeId
  -> PDOMGetQueryingDescendantsForContainer
pDOMGetQueryingDescendantsForContainer :: Int -> PDOMGetQueryingDescendantsForContainer
pDOMGetQueryingDescendantsForContainer
  Int
arg_pDOMGetQueryingDescendantsForContainerNodeId
  = Int -> PDOMGetQueryingDescendantsForContainer
PDOMGetQueryingDescendantsForContainer
    Int
arg_pDOMGetQueryingDescendantsForContainerNodeId
instance ToJSON PDOMGetQueryingDescendantsForContainer where
  toJSON :: PDOMGetQueryingDescendantsForContainer -> Value
toJSON PDOMGetQueryingDescendantsForContainer
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"nodeId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PDOMGetQueryingDescendantsForContainer -> Int
pDOMGetQueryingDescendantsForContainerNodeId PDOMGetQueryingDescendantsForContainer
p)
    ]
data DOMGetQueryingDescendantsForContainer = DOMGetQueryingDescendantsForContainer
  {
    -- | Descendant nodes with container queries against the given container.
    DOMGetQueryingDescendantsForContainer -> [Int]
dOMGetQueryingDescendantsForContainerNodeIds :: [DOMNodeId]
  }
  deriving (DOMGetQueryingDescendantsForContainer
-> DOMGetQueryingDescendantsForContainer -> Bool
(DOMGetQueryingDescendantsForContainer
 -> DOMGetQueryingDescendantsForContainer -> Bool)
-> (DOMGetQueryingDescendantsForContainer
    -> DOMGetQueryingDescendantsForContainer -> Bool)
-> Eq DOMGetQueryingDescendantsForContainer
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMGetQueryingDescendantsForContainer
-> DOMGetQueryingDescendantsForContainer -> Bool
$c/= :: DOMGetQueryingDescendantsForContainer
-> DOMGetQueryingDescendantsForContainer -> Bool
== :: DOMGetQueryingDescendantsForContainer
-> DOMGetQueryingDescendantsForContainer -> Bool
$c== :: DOMGetQueryingDescendantsForContainer
-> DOMGetQueryingDescendantsForContainer -> Bool
Eq, Int -> DOMGetQueryingDescendantsForContainer -> ShowS
[DOMGetQueryingDescendantsForContainer] -> ShowS
DOMGetQueryingDescendantsForContainer -> String
(Int -> DOMGetQueryingDescendantsForContainer -> ShowS)
-> (DOMGetQueryingDescendantsForContainer -> String)
-> ([DOMGetQueryingDescendantsForContainer] -> ShowS)
-> Show DOMGetQueryingDescendantsForContainer
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DOMGetQueryingDescendantsForContainer] -> ShowS
$cshowList :: [DOMGetQueryingDescendantsForContainer] -> ShowS
show :: DOMGetQueryingDescendantsForContainer -> String
$cshow :: DOMGetQueryingDescendantsForContainer -> String
showsPrec :: Int -> DOMGetQueryingDescendantsForContainer -> ShowS
$cshowsPrec :: Int -> DOMGetQueryingDescendantsForContainer -> ShowS
Show)
instance FromJSON DOMGetQueryingDescendantsForContainer where
  parseJSON :: Value -> Parser DOMGetQueryingDescendantsForContainer
parseJSON = String
-> (Object -> Parser DOMGetQueryingDescendantsForContainer)
-> Value
-> Parser DOMGetQueryingDescendantsForContainer
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"DOMGetQueryingDescendantsForContainer" ((Object -> Parser DOMGetQueryingDescendantsForContainer)
 -> Value -> Parser DOMGetQueryingDescendantsForContainer)
-> (Object -> Parser DOMGetQueryingDescendantsForContainer)
-> Value
-> Parser DOMGetQueryingDescendantsForContainer
forall a b. (a -> b) -> a -> b
$ \Object
o -> [Int] -> DOMGetQueryingDescendantsForContainer
DOMGetQueryingDescendantsForContainer
    ([Int] -> DOMGetQueryingDescendantsForContainer)
-> Parser [Int] -> Parser DOMGetQueryingDescendantsForContainer
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser [Int]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"nodeIds"
instance Command PDOMGetQueryingDescendantsForContainer where
  type CommandResponse PDOMGetQueryingDescendantsForContainer = DOMGetQueryingDescendantsForContainer
  commandName :: Proxy PDOMGetQueryingDescendantsForContainer -> String
commandName Proxy PDOMGetQueryingDescendantsForContainer
_ = String
"DOM.getQueryingDescendantsForContainer"

-- | Type 'Emulation.ScreenOrientation'.
--   Screen orientation.
data EmulationScreenOrientationType = EmulationScreenOrientationTypePortraitPrimary | EmulationScreenOrientationTypePortraitSecondary | EmulationScreenOrientationTypeLandscapePrimary | EmulationScreenOrientationTypeLandscapeSecondary
  deriving (Eq EmulationScreenOrientationType
Eq EmulationScreenOrientationType
-> (EmulationScreenOrientationType
    -> EmulationScreenOrientationType -> Ordering)
-> (EmulationScreenOrientationType
    -> EmulationScreenOrientationType -> Bool)
-> (EmulationScreenOrientationType
    -> EmulationScreenOrientationType -> Bool)
-> (EmulationScreenOrientationType
    -> EmulationScreenOrientationType -> Bool)
-> (EmulationScreenOrientationType
    -> EmulationScreenOrientationType -> Bool)
-> (EmulationScreenOrientationType
    -> EmulationScreenOrientationType
    -> EmulationScreenOrientationType)
-> (EmulationScreenOrientationType
    -> EmulationScreenOrientationType
    -> EmulationScreenOrientationType)
-> Ord EmulationScreenOrientationType
EmulationScreenOrientationType
-> EmulationScreenOrientationType -> Bool
EmulationScreenOrientationType
-> EmulationScreenOrientationType -> Ordering
EmulationScreenOrientationType
-> EmulationScreenOrientationType -> EmulationScreenOrientationType
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: EmulationScreenOrientationType
-> EmulationScreenOrientationType -> EmulationScreenOrientationType
$cmin :: EmulationScreenOrientationType
-> EmulationScreenOrientationType -> EmulationScreenOrientationType
max :: EmulationScreenOrientationType
-> EmulationScreenOrientationType -> EmulationScreenOrientationType
$cmax :: EmulationScreenOrientationType
-> EmulationScreenOrientationType -> EmulationScreenOrientationType
>= :: EmulationScreenOrientationType
-> EmulationScreenOrientationType -> Bool
$c>= :: EmulationScreenOrientationType
-> EmulationScreenOrientationType -> Bool
> :: EmulationScreenOrientationType
-> EmulationScreenOrientationType -> Bool
$c> :: EmulationScreenOrientationType
-> EmulationScreenOrientationType -> Bool
<= :: EmulationScreenOrientationType
-> EmulationScreenOrientationType -> Bool
$c<= :: EmulationScreenOrientationType
-> EmulationScreenOrientationType -> Bool
< :: EmulationScreenOrientationType
-> EmulationScreenOrientationType -> Bool
$c< :: EmulationScreenOrientationType
-> EmulationScreenOrientationType -> Bool
compare :: EmulationScreenOrientationType
-> EmulationScreenOrientationType -> Ordering
$ccompare :: EmulationScreenOrientationType
-> EmulationScreenOrientationType -> Ordering
$cp1Ord :: Eq EmulationScreenOrientationType
Ord, EmulationScreenOrientationType
-> EmulationScreenOrientationType -> Bool
(EmulationScreenOrientationType
 -> EmulationScreenOrientationType -> Bool)
-> (EmulationScreenOrientationType
    -> EmulationScreenOrientationType -> Bool)
-> Eq EmulationScreenOrientationType
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: EmulationScreenOrientationType
-> EmulationScreenOrientationType -> Bool
$c/= :: EmulationScreenOrientationType
-> EmulationScreenOrientationType -> Bool
== :: EmulationScreenOrientationType
-> EmulationScreenOrientationType -> Bool
$c== :: EmulationScreenOrientationType
-> EmulationScreenOrientationType -> Bool
Eq, Int -> EmulationScreenOrientationType -> ShowS
[EmulationScreenOrientationType] -> ShowS
EmulationScreenOrientationType -> String
(Int -> EmulationScreenOrientationType -> ShowS)
-> (EmulationScreenOrientationType -> String)
-> ([EmulationScreenOrientationType] -> ShowS)
-> Show EmulationScreenOrientationType
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [EmulationScreenOrientationType] -> ShowS
$cshowList :: [EmulationScreenOrientationType] -> ShowS
show :: EmulationScreenOrientationType -> String
$cshow :: EmulationScreenOrientationType -> String
showsPrec :: Int -> EmulationScreenOrientationType -> ShowS
$cshowsPrec :: Int -> EmulationScreenOrientationType -> ShowS
Show, ReadPrec [EmulationScreenOrientationType]
ReadPrec EmulationScreenOrientationType
Int -> ReadS EmulationScreenOrientationType
ReadS [EmulationScreenOrientationType]
(Int -> ReadS EmulationScreenOrientationType)
-> ReadS [EmulationScreenOrientationType]
-> ReadPrec EmulationScreenOrientationType
-> ReadPrec [EmulationScreenOrientationType]
-> Read EmulationScreenOrientationType
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [EmulationScreenOrientationType]
$creadListPrec :: ReadPrec [EmulationScreenOrientationType]
readPrec :: ReadPrec EmulationScreenOrientationType
$creadPrec :: ReadPrec EmulationScreenOrientationType
readList :: ReadS [EmulationScreenOrientationType]
$creadList :: ReadS [EmulationScreenOrientationType]
readsPrec :: Int -> ReadS EmulationScreenOrientationType
$creadsPrec :: Int -> ReadS EmulationScreenOrientationType
Read)
instance FromJSON EmulationScreenOrientationType where
  parseJSON :: Value -> Parser EmulationScreenOrientationType
parseJSON = String
-> (Text -> Parser EmulationScreenOrientationType)
-> Value
-> Parser EmulationScreenOrientationType
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"EmulationScreenOrientationType" ((Text -> Parser EmulationScreenOrientationType)
 -> Value -> Parser EmulationScreenOrientationType)
-> (Text -> Parser EmulationScreenOrientationType)
-> Value
-> Parser EmulationScreenOrientationType
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"portraitPrimary" -> EmulationScreenOrientationType
-> Parser EmulationScreenOrientationType
forall (f :: * -> *) a. Applicative f => a -> f a
pure EmulationScreenOrientationType
EmulationScreenOrientationTypePortraitPrimary
    Text
"portraitSecondary" -> EmulationScreenOrientationType
-> Parser EmulationScreenOrientationType
forall (f :: * -> *) a. Applicative f => a -> f a
pure EmulationScreenOrientationType
EmulationScreenOrientationTypePortraitSecondary
    Text
"landscapePrimary" -> EmulationScreenOrientationType
-> Parser EmulationScreenOrientationType
forall (f :: * -> *) a. Applicative f => a -> f a
pure EmulationScreenOrientationType
EmulationScreenOrientationTypeLandscapePrimary
    Text
"landscapeSecondary" -> EmulationScreenOrientationType
-> Parser EmulationScreenOrientationType
forall (f :: * -> *) a. Applicative f => a -> f a
pure EmulationScreenOrientationType
EmulationScreenOrientationTypeLandscapeSecondary
    Text
"_" -> String -> Parser EmulationScreenOrientationType
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse EmulationScreenOrientationType"
instance ToJSON EmulationScreenOrientationType where
  toJSON :: EmulationScreenOrientationType -> Value
toJSON EmulationScreenOrientationType
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case EmulationScreenOrientationType
v of
    EmulationScreenOrientationType
EmulationScreenOrientationTypePortraitPrimary -> Text
"portraitPrimary"
    EmulationScreenOrientationType
EmulationScreenOrientationTypePortraitSecondary -> Text
"portraitSecondary"
    EmulationScreenOrientationType
EmulationScreenOrientationTypeLandscapePrimary -> Text
"landscapePrimary"
    EmulationScreenOrientationType
EmulationScreenOrientationTypeLandscapeSecondary -> Text
"landscapeSecondary"
data EmulationScreenOrientation = EmulationScreenOrientation
  {
    -- | Orientation type.
    EmulationScreenOrientation -> EmulationScreenOrientationType
emulationScreenOrientationType :: EmulationScreenOrientationType,
    -- | Orientation angle.
    EmulationScreenOrientation -> Int
emulationScreenOrientationAngle :: Int
  }
  deriving (EmulationScreenOrientation -> EmulationScreenOrientation -> Bool
(EmulationScreenOrientation -> EmulationScreenOrientation -> Bool)
-> (EmulationScreenOrientation
    -> EmulationScreenOrientation -> Bool)
-> Eq EmulationScreenOrientation
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: EmulationScreenOrientation -> EmulationScreenOrientation -> Bool
$c/= :: EmulationScreenOrientation -> EmulationScreenOrientation -> Bool
== :: EmulationScreenOrientation -> EmulationScreenOrientation -> Bool
$c== :: EmulationScreenOrientation -> EmulationScreenOrientation -> Bool
Eq, Int -> EmulationScreenOrientation -> ShowS
[EmulationScreenOrientation] -> ShowS
EmulationScreenOrientation -> String
(Int -> EmulationScreenOrientation -> ShowS)
-> (EmulationScreenOrientation -> String)
-> ([EmulationScreenOrientation] -> ShowS)
-> Show EmulationScreenOrientation
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [EmulationScreenOrientation] -> ShowS
$cshowList :: [EmulationScreenOrientation] -> ShowS
show :: EmulationScreenOrientation -> String
$cshow :: EmulationScreenOrientation -> String
showsPrec :: Int -> EmulationScreenOrientation -> ShowS
$cshowsPrec :: Int -> EmulationScreenOrientation -> ShowS
Show)
instance FromJSON EmulationScreenOrientation where
  parseJSON :: Value -> Parser EmulationScreenOrientation
parseJSON = String
-> (Object -> Parser EmulationScreenOrientation)
-> Value
-> Parser EmulationScreenOrientation
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"EmulationScreenOrientation" ((Object -> Parser EmulationScreenOrientation)
 -> Value -> Parser EmulationScreenOrientation)
-> (Object -> Parser EmulationScreenOrientation)
-> Value
-> Parser EmulationScreenOrientation
forall a b. (a -> b) -> a -> b
$ \Object
o -> EmulationScreenOrientationType -> Int -> EmulationScreenOrientation
EmulationScreenOrientation
    (EmulationScreenOrientationType
 -> Int -> EmulationScreenOrientation)
-> Parser EmulationScreenOrientationType
-> Parser (Int -> EmulationScreenOrientation)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser EmulationScreenOrientationType
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"type"
    Parser (Int -> EmulationScreenOrientation)
-> Parser Int -> Parser EmulationScreenOrientation
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"angle"
instance ToJSON EmulationScreenOrientation where
  toJSON :: EmulationScreenOrientation -> Value
toJSON EmulationScreenOrientation
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"type" Text -> EmulationScreenOrientationType -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (EmulationScreenOrientationType -> Pair)
-> Maybe EmulationScreenOrientationType -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> EmulationScreenOrientationType
-> Maybe EmulationScreenOrientationType
forall a. a -> Maybe a
Just (EmulationScreenOrientation -> EmulationScreenOrientationType
emulationScreenOrientationType EmulationScreenOrientation
p),
    (Text
"angle" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (EmulationScreenOrientation -> Int
emulationScreenOrientationAngle EmulationScreenOrientation
p)
    ]

-- | Type 'Emulation.DisplayFeature'.
data EmulationDisplayFeatureOrientation = EmulationDisplayFeatureOrientationVertical | EmulationDisplayFeatureOrientationHorizontal
  deriving (Eq EmulationDisplayFeatureOrientation
Eq EmulationDisplayFeatureOrientation
-> (EmulationDisplayFeatureOrientation
    -> EmulationDisplayFeatureOrientation -> Ordering)
-> (EmulationDisplayFeatureOrientation
    -> EmulationDisplayFeatureOrientation -> Bool)
-> (EmulationDisplayFeatureOrientation
    -> EmulationDisplayFeatureOrientation -> Bool)
-> (EmulationDisplayFeatureOrientation
    -> EmulationDisplayFeatureOrientation -> Bool)
-> (EmulationDisplayFeatureOrientation
    -> EmulationDisplayFeatureOrientation -> Bool)
-> (EmulationDisplayFeatureOrientation
    -> EmulationDisplayFeatureOrientation
    -> EmulationDisplayFeatureOrientation)
-> (EmulationDisplayFeatureOrientation
    -> EmulationDisplayFeatureOrientation
    -> EmulationDisplayFeatureOrientation)
-> Ord EmulationDisplayFeatureOrientation
EmulationDisplayFeatureOrientation
-> EmulationDisplayFeatureOrientation -> Bool
EmulationDisplayFeatureOrientation
-> EmulationDisplayFeatureOrientation -> Ordering
EmulationDisplayFeatureOrientation
-> EmulationDisplayFeatureOrientation
-> EmulationDisplayFeatureOrientation
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: EmulationDisplayFeatureOrientation
-> EmulationDisplayFeatureOrientation
-> EmulationDisplayFeatureOrientation
$cmin :: EmulationDisplayFeatureOrientation
-> EmulationDisplayFeatureOrientation
-> EmulationDisplayFeatureOrientation
max :: EmulationDisplayFeatureOrientation
-> EmulationDisplayFeatureOrientation
-> EmulationDisplayFeatureOrientation
$cmax :: EmulationDisplayFeatureOrientation
-> EmulationDisplayFeatureOrientation
-> EmulationDisplayFeatureOrientation
>= :: EmulationDisplayFeatureOrientation
-> EmulationDisplayFeatureOrientation -> Bool
$c>= :: EmulationDisplayFeatureOrientation
-> EmulationDisplayFeatureOrientation -> Bool
> :: EmulationDisplayFeatureOrientation
-> EmulationDisplayFeatureOrientation -> Bool
$c> :: EmulationDisplayFeatureOrientation
-> EmulationDisplayFeatureOrientation -> Bool
<= :: EmulationDisplayFeatureOrientation
-> EmulationDisplayFeatureOrientation -> Bool
$c<= :: EmulationDisplayFeatureOrientation
-> EmulationDisplayFeatureOrientation -> Bool
< :: EmulationDisplayFeatureOrientation
-> EmulationDisplayFeatureOrientation -> Bool
$c< :: EmulationDisplayFeatureOrientation
-> EmulationDisplayFeatureOrientation -> Bool
compare :: EmulationDisplayFeatureOrientation
-> EmulationDisplayFeatureOrientation -> Ordering
$ccompare :: EmulationDisplayFeatureOrientation
-> EmulationDisplayFeatureOrientation -> Ordering
$cp1Ord :: Eq EmulationDisplayFeatureOrientation
Ord, EmulationDisplayFeatureOrientation
-> EmulationDisplayFeatureOrientation -> Bool
(EmulationDisplayFeatureOrientation
 -> EmulationDisplayFeatureOrientation -> Bool)
-> (EmulationDisplayFeatureOrientation
    -> EmulationDisplayFeatureOrientation -> Bool)
-> Eq EmulationDisplayFeatureOrientation
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: EmulationDisplayFeatureOrientation
-> EmulationDisplayFeatureOrientation -> Bool
$c/= :: EmulationDisplayFeatureOrientation
-> EmulationDisplayFeatureOrientation -> Bool
== :: EmulationDisplayFeatureOrientation
-> EmulationDisplayFeatureOrientation -> Bool
$c== :: EmulationDisplayFeatureOrientation
-> EmulationDisplayFeatureOrientation -> Bool
Eq, Int -> EmulationDisplayFeatureOrientation -> ShowS
[EmulationDisplayFeatureOrientation] -> ShowS
EmulationDisplayFeatureOrientation -> String
(Int -> EmulationDisplayFeatureOrientation -> ShowS)
-> (EmulationDisplayFeatureOrientation -> String)
-> ([EmulationDisplayFeatureOrientation] -> ShowS)
-> Show EmulationDisplayFeatureOrientation
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [EmulationDisplayFeatureOrientation] -> ShowS
$cshowList :: [EmulationDisplayFeatureOrientation] -> ShowS
show :: EmulationDisplayFeatureOrientation -> String
$cshow :: EmulationDisplayFeatureOrientation -> String
showsPrec :: Int -> EmulationDisplayFeatureOrientation -> ShowS
$cshowsPrec :: Int -> EmulationDisplayFeatureOrientation -> ShowS
Show, ReadPrec [EmulationDisplayFeatureOrientation]
ReadPrec EmulationDisplayFeatureOrientation
Int -> ReadS EmulationDisplayFeatureOrientation
ReadS [EmulationDisplayFeatureOrientation]
(Int -> ReadS EmulationDisplayFeatureOrientation)
-> ReadS [EmulationDisplayFeatureOrientation]
-> ReadPrec EmulationDisplayFeatureOrientation
-> ReadPrec [EmulationDisplayFeatureOrientation]
-> Read EmulationDisplayFeatureOrientation
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [EmulationDisplayFeatureOrientation]
$creadListPrec :: ReadPrec [EmulationDisplayFeatureOrientation]
readPrec :: ReadPrec EmulationDisplayFeatureOrientation
$creadPrec :: ReadPrec EmulationDisplayFeatureOrientation
readList :: ReadS [EmulationDisplayFeatureOrientation]
$creadList :: ReadS [EmulationDisplayFeatureOrientation]
readsPrec :: Int -> ReadS EmulationDisplayFeatureOrientation
$creadsPrec :: Int -> ReadS EmulationDisplayFeatureOrientation
Read)
instance FromJSON EmulationDisplayFeatureOrientation where
  parseJSON :: Value -> Parser EmulationDisplayFeatureOrientation
parseJSON = String
-> (Text -> Parser EmulationDisplayFeatureOrientation)
-> Value
-> Parser EmulationDisplayFeatureOrientation
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"EmulationDisplayFeatureOrientation" ((Text -> Parser EmulationDisplayFeatureOrientation)
 -> Value -> Parser EmulationDisplayFeatureOrientation)
-> (Text -> Parser EmulationDisplayFeatureOrientation)
-> Value
-> Parser EmulationDisplayFeatureOrientation
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"vertical" -> EmulationDisplayFeatureOrientation
-> Parser EmulationDisplayFeatureOrientation
forall (f :: * -> *) a. Applicative f => a -> f a
pure EmulationDisplayFeatureOrientation
EmulationDisplayFeatureOrientationVertical
    Text
"horizontal" -> EmulationDisplayFeatureOrientation
-> Parser EmulationDisplayFeatureOrientation
forall (f :: * -> *) a. Applicative f => a -> f a
pure EmulationDisplayFeatureOrientation
EmulationDisplayFeatureOrientationHorizontal
    Text
"_" -> String -> Parser EmulationDisplayFeatureOrientation
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse EmulationDisplayFeatureOrientation"
instance ToJSON EmulationDisplayFeatureOrientation where
  toJSON :: EmulationDisplayFeatureOrientation -> Value
toJSON EmulationDisplayFeatureOrientation
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case EmulationDisplayFeatureOrientation
v of
    EmulationDisplayFeatureOrientation
EmulationDisplayFeatureOrientationVertical -> Text
"vertical"
    EmulationDisplayFeatureOrientation
EmulationDisplayFeatureOrientationHorizontal -> Text
"horizontal"
data EmulationDisplayFeature = EmulationDisplayFeature
  {
    -- | Orientation of a display feature in relation to screen
    EmulationDisplayFeature -> EmulationDisplayFeatureOrientation
emulationDisplayFeatureOrientation :: EmulationDisplayFeatureOrientation,
    -- | The offset from the screen origin in either the x (for vertical
    --   orientation) or y (for horizontal orientation) direction.
    EmulationDisplayFeature -> Int
emulationDisplayFeatureOffset :: Int,
    -- | A display feature may mask content such that it is not physically
    --   displayed - this length along with the offset describes this area.
    --   A display feature that only splits content will have a 0 mask_length.
    EmulationDisplayFeature -> Int
emulationDisplayFeatureMaskLength :: Int
  }
  deriving (EmulationDisplayFeature -> EmulationDisplayFeature -> Bool
(EmulationDisplayFeature -> EmulationDisplayFeature -> Bool)
-> (EmulationDisplayFeature -> EmulationDisplayFeature -> Bool)
-> Eq EmulationDisplayFeature
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: EmulationDisplayFeature -> EmulationDisplayFeature -> Bool
$c/= :: EmulationDisplayFeature -> EmulationDisplayFeature -> Bool
== :: EmulationDisplayFeature -> EmulationDisplayFeature -> Bool
$c== :: EmulationDisplayFeature -> EmulationDisplayFeature -> Bool
Eq, Int -> EmulationDisplayFeature -> ShowS
[EmulationDisplayFeature] -> ShowS
EmulationDisplayFeature -> String
(Int -> EmulationDisplayFeature -> ShowS)
-> (EmulationDisplayFeature -> String)
-> ([EmulationDisplayFeature] -> ShowS)
-> Show EmulationDisplayFeature
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [EmulationDisplayFeature] -> ShowS
$cshowList :: [EmulationDisplayFeature] -> ShowS
show :: EmulationDisplayFeature -> String
$cshow :: EmulationDisplayFeature -> String
showsPrec :: Int -> EmulationDisplayFeature -> ShowS
$cshowsPrec :: Int -> EmulationDisplayFeature -> ShowS
Show)
instance FromJSON EmulationDisplayFeature where
  parseJSON :: Value -> Parser EmulationDisplayFeature
parseJSON = String
-> (Object -> Parser EmulationDisplayFeature)
-> Value
-> Parser EmulationDisplayFeature
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"EmulationDisplayFeature" ((Object -> Parser EmulationDisplayFeature)
 -> Value -> Parser EmulationDisplayFeature)
-> (Object -> Parser EmulationDisplayFeature)
-> Value
-> Parser EmulationDisplayFeature
forall a b. (a -> b) -> a -> b
$ \Object
o -> EmulationDisplayFeatureOrientation
-> Int -> Int -> EmulationDisplayFeature
EmulationDisplayFeature
    (EmulationDisplayFeatureOrientation
 -> Int -> Int -> EmulationDisplayFeature)
-> Parser EmulationDisplayFeatureOrientation
-> Parser (Int -> Int -> EmulationDisplayFeature)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser EmulationDisplayFeatureOrientation
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"orientation"
    Parser (Int -> Int -> EmulationDisplayFeature)
-> Parser Int -> Parser (Int -> EmulationDisplayFeature)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"offset"
    Parser (Int -> EmulationDisplayFeature)
-> Parser Int -> Parser EmulationDisplayFeature
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"maskLength"
instance ToJSON EmulationDisplayFeature where
  toJSON :: EmulationDisplayFeature -> Value
toJSON EmulationDisplayFeature
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"orientation" Text -> EmulationDisplayFeatureOrientation -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (EmulationDisplayFeatureOrientation -> Pair)
-> Maybe EmulationDisplayFeatureOrientation -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> EmulationDisplayFeatureOrientation
-> Maybe EmulationDisplayFeatureOrientation
forall a. a -> Maybe a
Just (EmulationDisplayFeature -> EmulationDisplayFeatureOrientation
emulationDisplayFeatureOrientation EmulationDisplayFeature
p),
    (Text
"offset" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (EmulationDisplayFeature -> Int
emulationDisplayFeatureOffset EmulationDisplayFeature
p),
    (Text
"maskLength" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (EmulationDisplayFeature -> Int
emulationDisplayFeatureMaskLength EmulationDisplayFeature
p)
    ]

-- | Type 'Emulation.MediaFeature'.
data EmulationMediaFeature = EmulationMediaFeature
  {
    EmulationMediaFeature -> Text
emulationMediaFeatureName :: T.Text,
    EmulationMediaFeature -> Text
emulationMediaFeatureValue :: T.Text
  }
  deriving (EmulationMediaFeature -> EmulationMediaFeature -> Bool
(EmulationMediaFeature -> EmulationMediaFeature -> Bool)
-> (EmulationMediaFeature -> EmulationMediaFeature -> Bool)
-> Eq EmulationMediaFeature
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: EmulationMediaFeature -> EmulationMediaFeature -> Bool
$c/= :: EmulationMediaFeature -> EmulationMediaFeature -> Bool
== :: EmulationMediaFeature -> EmulationMediaFeature -> Bool
$c== :: EmulationMediaFeature -> EmulationMediaFeature -> Bool
Eq, Int -> EmulationMediaFeature -> ShowS
[EmulationMediaFeature] -> ShowS
EmulationMediaFeature -> String
(Int -> EmulationMediaFeature -> ShowS)
-> (EmulationMediaFeature -> String)
-> ([EmulationMediaFeature] -> ShowS)
-> Show EmulationMediaFeature
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [EmulationMediaFeature] -> ShowS
$cshowList :: [EmulationMediaFeature] -> ShowS
show :: EmulationMediaFeature -> String
$cshow :: EmulationMediaFeature -> String
showsPrec :: Int -> EmulationMediaFeature -> ShowS
$cshowsPrec :: Int -> EmulationMediaFeature -> ShowS
Show)
instance FromJSON EmulationMediaFeature where
  parseJSON :: Value -> Parser EmulationMediaFeature
parseJSON = String
-> (Object -> Parser EmulationMediaFeature)
-> Value
-> Parser EmulationMediaFeature
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"EmulationMediaFeature" ((Object -> Parser EmulationMediaFeature)
 -> Value -> Parser EmulationMediaFeature)
-> (Object -> Parser EmulationMediaFeature)
-> Value
-> Parser EmulationMediaFeature
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> Text -> EmulationMediaFeature
EmulationMediaFeature
    (Text -> Text -> EmulationMediaFeature)
-> Parser Text -> Parser (Text -> EmulationMediaFeature)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"name"
    Parser (Text -> EmulationMediaFeature)
-> Parser Text -> Parser EmulationMediaFeature
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"value"
instance ToJSON EmulationMediaFeature where
  toJSON :: EmulationMediaFeature -> Value
toJSON EmulationMediaFeature
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"name" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (EmulationMediaFeature -> Text
emulationMediaFeatureName EmulationMediaFeature
p),
    (Text
"value" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (EmulationMediaFeature -> Text
emulationMediaFeatureValue EmulationMediaFeature
p)
    ]

-- | Type 'Emulation.VirtualTimePolicy'.
--   advance: If the scheduler runs out of immediate work, the virtual time base may fast forward to
--   allow the next delayed task (if any) to run; pause: The virtual time base may not advance;
--   pauseIfNetworkFetchesPending: The virtual time base may not advance if there are any pending
--   resource fetches.
data EmulationVirtualTimePolicy = EmulationVirtualTimePolicyAdvance | EmulationVirtualTimePolicyPause | EmulationVirtualTimePolicyPauseIfNetworkFetchesPending
  deriving (Eq EmulationVirtualTimePolicy
Eq EmulationVirtualTimePolicy
-> (EmulationVirtualTimePolicy
    -> EmulationVirtualTimePolicy -> Ordering)
-> (EmulationVirtualTimePolicy
    -> EmulationVirtualTimePolicy -> Bool)
-> (EmulationVirtualTimePolicy
    -> EmulationVirtualTimePolicy -> Bool)
-> (EmulationVirtualTimePolicy
    -> EmulationVirtualTimePolicy -> Bool)
-> (EmulationVirtualTimePolicy
    -> EmulationVirtualTimePolicy -> Bool)
-> (EmulationVirtualTimePolicy
    -> EmulationVirtualTimePolicy -> EmulationVirtualTimePolicy)
-> (EmulationVirtualTimePolicy
    -> EmulationVirtualTimePolicy -> EmulationVirtualTimePolicy)
-> Ord EmulationVirtualTimePolicy
EmulationVirtualTimePolicy -> EmulationVirtualTimePolicy -> Bool
EmulationVirtualTimePolicy
-> EmulationVirtualTimePolicy -> Ordering
EmulationVirtualTimePolicy
-> EmulationVirtualTimePolicy -> EmulationVirtualTimePolicy
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: EmulationVirtualTimePolicy
-> EmulationVirtualTimePolicy -> EmulationVirtualTimePolicy
$cmin :: EmulationVirtualTimePolicy
-> EmulationVirtualTimePolicy -> EmulationVirtualTimePolicy
max :: EmulationVirtualTimePolicy
-> EmulationVirtualTimePolicy -> EmulationVirtualTimePolicy
$cmax :: EmulationVirtualTimePolicy
-> EmulationVirtualTimePolicy -> EmulationVirtualTimePolicy
>= :: EmulationVirtualTimePolicy -> EmulationVirtualTimePolicy -> Bool
$c>= :: EmulationVirtualTimePolicy -> EmulationVirtualTimePolicy -> Bool
> :: EmulationVirtualTimePolicy -> EmulationVirtualTimePolicy -> Bool
$c> :: EmulationVirtualTimePolicy -> EmulationVirtualTimePolicy -> Bool
<= :: EmulationVirtualTimePolicy -> EmulationVirtualTimePolicy -> Bool
$c<= :: EmulationVirtualTimePolicy -> EmulationVirtualTimePolicy -> Bool
< :: EmulationVirtualTimePolicy -> EmulationVirtualTimePolicy -> Bool
$c< :: EmulationVirtualTimePolicy -> EmulationVirtualTimePolicy -> Bool
compare :: EmulationVirtualTimePolicy
-> EmulationVirtualTimePolicy -> Ordering
$ccompare :: EmulationVirtualTimePolicy
-> EmulationVirtualTimePolicy -> Ordering
$cp1Ord :: Eq EmulationVirtualTimePolicy
Ord, EmulationVirtualTimePolicy -> EmulationVirtualTimePolicy -> Bool
(EmulationVirtualTimePolicy -> EmulationVirtualTimePolicy -> Bool)
-> (EmulationVirtualTimePolicy
    -> EmulationVirtualTimePolicy -> Bool)
-> Eq EmulationVirtualTimePolicy
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: EmulationVirtualTimePolicy -> EmulationVirtualTimePolicy -> Bool
$c/= :: EmulationVirtualTimePolicy -> EmulationVirtualTimePolicy -> Bool
== :: EmulationVirtualTimePolicy -> EmulationVirtualTimePolicy -> Bool
$c== :: EmulationVirtualTimePolicy -> EmulationVirtualTimePolicy -> Bool
Eq, Int -> EmulationVirtualTimePolicy -> ShowS
[EmulationVirtualTimePolicy] -> ShowS
EmulationVirtualTimePolicy -> String
(Int -> EmulationVirtualTimePolicy -> ShowS)
-> (EmulationVirtualTimePolicy -> String)
-> ([EmulationVirtualTimePolicy] -> ShowS)
-> Show EmulationVirtualTimePolicy
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [EmulationVirtualTimePolicy] -> ShowS
$cshowList :: [EmulationVirtualTimePolicy] -> ShowS
show :: EmulationVirtualTimePolicy -> String
$cshow :: EmulationVirtualTimePolicy -> String
showsPrec :: Int -> EmulationVirtualTimePolicy -> ShowS
$cshowsPrec :: Int -> EmulationVirtualTimePolicy -> ShowS
Show, ReadPrec [EmulationVirtualTimePolicy]
ReadPrec EmulationVirtualTimePolicy
Int -> ReadS EmulationVirtualTimePolicy
ReadS [EmulationVirtualTimePolicy]
(Int -> ReadS EmulationVirtualTimePolicy)
-> ReadS [EmulationVirtualTimePolicy]
-> ReadPrec EmulationVirtualTimePolicy
-> ReadPrec [EmulationVirtualTimePolicy]
-> Read EmulationVirtualTimePolicy
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [EmulationVirtualTimePolicy]
$creadListPrec :: ReadPrec [EmulationVirtualTimePolicy]
readPrec :: ReadPrec EmulationVirtualTimePolicy
$creadPrec :: ReadPrec EmulationVirtualTimePolicy
readList :: ReadS [EmulationVirtualTimePolicy]
$creadList :: ReadS [EmulationVirtualTimePolicy]
readsPrec :: Int -> ReadS EmulationVirtualTimePolicy
$creadsPrec :: Int -> ReadS EmulationVirtualTimePolicy
Read)
instance FromJSON EmulationVirtualTimePolicy where
  parseJSON :: Value -> Parser EmulationVirtualTimePolicy
parseJSON = String
-> (Text -> Parser EmulationVirtualTimePolicy)
-> Value
-> Parser EmulationVirtualTimePolicy
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"EmulationVirtualTimePolicy" ((Text -> Parser EmulationVirtualTimePolicy)
 -> Value -> Parser EmulationVirtualTimePolicy)
-> (Text -> Parser EmulationVirtualTimePolicy)
-> Value
-> Parser EmulationVirtualTimePolicy
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"advance" -> EmulationVirtualTimePolicy -> Parser EmulationVirtualTimePolicy
forall (f :: * -> *) a. Applicative f => a -> f a
pure EmulationVirtualTimePolicy
EmulationVirtualTimePolicyAdvance
    Text
"pause" -> EmulationVirtualTimePolicy -> Parser EmulationVirtualTimePolicy
forall (f :: * -> *) a. Applicative f => a -> f a
pure EmulationVirtualTimePolicy
EmulationVirtualTimePolicyPause
    Text
"pauseIfNetworkFetchesPending" -> EmulationVirtualTimePolicy -> Parser EmulationVirtualTimePolicy
forall (f :: * -> *) a. Applicative f => a -> f a
pure EmulationVirtualTimePolicy
EmulationVirtualTimePolicyPauseIfNetworkFetchesPending
    Text
"_" -> String -> Parser EmulationVirtualTimePolicy
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse EmulationVirtualTimePolicy"
instance ToJSON EmulationVirtualTimePolicy where
  toJSON :: EmulationVirtualTimePolicy -> Value
toJSON EmulationVirtualTimePolicy
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case EmulationVirtualTimePolicy
v of
    EmulationVirtualTimePolicy
EmulationVirtualTimePolicyAdvance -> Text
"advance"
    EmulationVirtualTimePolicy
EmulationVirtualTimePolicyPause -> Text
"pause"
    EmulationVirtualTimePolicy
EmulationVirtualTimePolicyPauseIfNetworkFetchesPending -> Text
"pauseIfNetworkFetchesPending"

-- | Type 'Emulation.UserAgentBrandVersion'.
--   Used to specify User Agent Cient Hints to emulate. See https://wicg.github.io/ua-client-hints
data EmulationUserAgentBrandVersion = EmulationUserAgentBrandVersion
  {
    EmulationUserAgentBrandVersion -> Text
emulationUserAgentBrandVersionBrand :: T.Text,
    EmulationUserAgentBrandVersion -> Text
emulationUserAgentBrandVersionVersion :: T.Text
  }
  deriving (EmulationUserAgentBrandVersion
-> EmulationUserAgentBrandVersion -> Bool
(EmulationUserAgentBrandVersion
 -> EmulationUserAgentBrandVersion -> Bool)
-> (EmulationUserAgentBrandVersion
    -> EmulationUserAgentBrandVersion -> Bool)
-> Eq EmulationUserAgentBrandVersion
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: EmulationUserAgentBrandVersion
-> EmulationUserAgentBrandVersion -> Bool
$c/= :: EmulationUserAgentBrandVersion
-> EmulationUserAgentBrandVersion -> Bool
== :: EmulationUserAgentBrandVersion
-> EmulationUserAgentBrandVersion -> Bool
$c== :: EmulationUserAgentBrandVersion
-> EmulationUserAgentBrandVersion -> Bool
Eq, Int -> EmulationUserAgentBrandVersion -> ShowS
[EmulationUserAgentBrandVersion] -> ShowS
EmulationUserAgentBrandVersion -> String
(Int -> EmulationUserAgentBrandVersion -> ShowS)
-> (EmulationUserAgentBrandVersion -> String)
-> ([EmulationUserAgentBrandVersion] -> ShowS)
-> Show EmulationUserAgentBrandVersion
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [EmulationUserAgentBrandVersion] -> ShowS
$cshowList :: [EmulationUserAgentBrandVersion] -> ShowS
show :: EmulationUserAgentBrandVersion -> String
$cshow :: EmulationUserAgentBrandVersion -> String
showsPrec :: Int -> EmulationUserAgentBrandVersion -> ShowS
$cshowsPrec :: Int -> EmulationUserAgentBrandVersion -> ShowS
Show)
instance FromJSON EmulationUserAgentBrandVersion where
  parseJSON :: Value -> Parser EmulationUserAgentBrandVersion
parseJSON = String
-> (Object -> Parser EmulationUserAgentBrandVersion)
-> Value
-> Parser EmulationUserAgentBrandVersion
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"EmulationUserAgentBrandVersion" ((Object -> Parser EmulationUserAgentBrandVersion)
 -> Value -> Parser EmulationUserAgentBrandVersion)
-> (Object -> Parser EmulationUserAgentBrandVersion)
-> Value
-> Parser EmulationUserAgentBrandVersion
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> Text -> EmulationUserAgentBrandVersion
EmulationUserAgentBrandVersion
    (Text -> Text -> EmulationUserAgentBrandVersion)
-> Parser Text -> Parser (Text -> EmulationUserAgentBrandVersion)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"brand"
    Parser (Text -> EmulationUserAgentBrandVersion)
-> Parser Text -> Parser EmulationUserAgentBrandVersion
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"version"
instance ToJSON EmulationUserAgentBrandVersion where
  toJSON :: EmulationUserAgentBrandVersion -> Value
toJSON EmulationUserAgentBrandVersion
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"brand" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (EmulationUserAgentBrandVersion -> Text
emulationUserAgentBrandVersionBrand EmulationUserAgentBrandVersion
p),
    (Text
"version" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (EmulationUserAgentBrandVersion -> Text
emulationUserAgentBrandVersionVersion EmulationUserAgentBrandVersion
p)
    ]

-- | Type 'Emulation.UserAgentMetadata'.
--   Used to specify User Agent Cient Hints to emulate. See https://wicg.github.io/ua-client-hints
--   Missing optional values will be filled in by the target with what it would normally use.
data EmulationUserAgentMetadata = EmulationUserAgentMetadata
  {
    EmulationUserAgentMetadata
-> Maybe [EmulationUserAgentBrandVersion]
emulationUserAgentMetadataBrands :: Maybe [EmulationUserAgentBrandVersion],
    EmulationUserAgentMetadata
-> Maybe [EmulationUserAgentBrandVersion]
emulationUserAgentMetadataFullVersionList :: Maybe [EmulationUserAgentBrandVersion],
    EmulationUserAgentMetadata -> Text
emulationUserAgentMetadataPlatform :: T.Text,
    EmulationUserAgentMetadata -> Text
emulationUserAgentMetadataPlatformVersion :: T.Text,
    EmulationUserAgentMetadata -> Text
emulationUserAgentMetadataArchitecture :: T.Text,
    EmulationUserAgentMetadata -> Text
emulationUserAgentMetadataModel :: T.Text,
    EmulationUserAgentMetadata -> Bool
emulationUserAgentMetadataMobile :: Bool,
    EmulationUserAgentMetadata -> Maybe Text
emulationUserAgentMetadataBitness :: Maybe T.Text,
    EmulationUserAgentMetadata -> Maybe Bool
emulationUserAgentMetadataWow64 :: Maybe Bool
  }
  deriving (EmulationUserAgentMetadata -> EmulationUserAgentMetadata -> Bool
(EmulationUserAgentMetadata -> EmulationUserAgentMetadata -> Bool)
-> (EmulationUserAgentMetadata
    -> EmulationUserAgentMetadata -> Bool)
-> Eq EmulationUserAgentMetadata
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: EmulationUserAgentMetadata -> EmulationUserAgentMetadata -> Bool
$c/= :: EmulationUserAgentMetadata -> EmulationUserAgentMetadata -> Bool
== :: EmulationUserAgentMetadata -> EmulationUserAgentMetadata -> Bool
$c== :: EmulationUserAgentMetadata -> EmulationUserAgentMetadata -> Bool
Eq, Int -> EmulationUserAgentMetadata -> ShowS
[EmulationUserAgentMetadata] -> ShowS
EmulationUserAgentMetadata -> String
(Int -> EmulationUserAgentMetadata -> ShowS)
-> (EmulationUserAgentMetadata -> String)
-> ([EmulationUserAgentMetadata] -> ShowS)
-> Show EmulationUserAgentMetadata
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [EmulationUserAgentMetadata] -> ShowS
$cshowList :: [EmulationUserAgentMetadata] -> ShowS
show :: EmulationUserAgentMetadata -> String
$cshow :: EmulationUserAgentMetadata -> String
showsPrec :: Int -> EmulationUserAgentMetadata -> ShowS
$cshowsPrec :: Int -> EmulationUserAgentMetadata -> ShowS
Show)
instance FromJSON EmulationUserAgentMetadata where
  parseJSON :: Value -> Parser EmulationUserAgentMetadata
parseJSON = String
-> (Object -> Parser EmulationUserAgentMetadata)
-> Value
-> Parser EmulationUserAgentMetadata
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"EmulationUserAgentMetadata" ((Object -> Parser EmulationUserAgentMetadata)
 -> Value -> Parser EmulationUserAgentMetadata)
-> (Object -> Parser EmulationUserAgentMetadata)
-> Value
-> Parser EmulationUserAgentMetadata
forall a b. (a -> b) -> a -> b
$ \Object
o -> Maybe [EmulationUserAgentBrandVersion]
-> Maybe [EmulationUserAgentBrandVersion]
-> Text
-> Text
-> Text
-> Text
-> Bool
-> Maybe Text
-> Maybe Bool
-> EmulationUserAgentMetadata
EmulationUserAgentMetadata
    (Maybe [EmulationUserAgentBrandVersion]
 -> Maybe [EmulationUserAgentBrandVersion]
 -> Text
 -> Text
 -> Text
 -> Text
 -> Bool
 -> Maybe Text
 -> Maybe Bool
 -> EmulationUserAgentMetadata)
-> Parser (Maybe [EmulationUserAgentBrandVersion])
-> Parser
     (Maybe [EmulationUserAgentBrandVersion]
      -> Text
      -> Text
      -> Text
      -> Text
      -> Bool
      -> Maybe Text
      -> Maybe Bool
      -> EmulationUserAgentMetadata)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser (Maybe [EmulationUserAgentBrandVersion])
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"brands"
    Parser
  (Maybe [EmulationUserAgentBrandVersion]
   -> Text
   -> Text
   -> Text
   -> Text
   -> Bool
   -> Maybe Text
   -> Maybe Bool
   -> EmulationUserAgentMetadata)
-> Parser (Maybe [EmulationUserAgentBrandVersion])
-> Parser
     (Text
      -> Text
      -> Text
      -> Text
      -> Bool
      -> Maybe Text
      -> Maybe Bool
      -> EmulationUserAgentMetadata)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe [EmulationUserAgentBrandVersion])
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"fullVersionList"
    Parser
  (Text
   -> Text
   -> Text
   -> Text
   -> Bool
   -> Maybe Text
   -> Maybe Bool
   -> EmulationUserAgentMetadata)
-> Parser Text
-> Parser
     (Text
      -> Text
      -> Text
      -> Bool
      -> Maybe Text
      -> Maybe Bool
      -> EmulationUserAgentMetadata)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"platform"
    Parser
  (Text
   -> Text
   -> Text
   -> Bool
   -> Maybe Text
   -> Maybe Bool
   -> EmulationUserAgentMetadata)
-> Parser Text
-> Parser
     (Text
      -> Text
      -> Bool
      -> Maybe Text
      -> Maybe Bool
      -> EmulationUserAgentMetadata)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"platformVersion"
    Parser
  (Text
   -> Text
   -> Bool
   -> Maybe Text
   -> Maybe Bool
   -> EmulationUserAgentMetadata)
-> Parser Text
-> Parser
     (Text
      -> Bool -> Maybe Text -> Maybe Bool -> EmulationUserAgentMetadata)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"architecture"
    Parser
  (Text
   -> Bool -> Maybe Text -> Maybe Bool -> EmulationUserAgentMetadata)
-> Parser Text
-> Parser
     (Bool -> Maybe Text -> Maybe Bool -> EmulationUserAgentMetadata)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"model"
    Parser
  (Bool -> Maybe Text -> Maybe Bool -> EmulationUserAgentMetadata)
-> Parser Bool
-> Parser (Maybe Text -> Maybe Bool -> EmulationUserAgentMetadata)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Bool
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"mobile"
    Parser (Maybe Text -> Maybe Bool -> EmulationUserAgentMetadata)
-> Parser (Maybe Text)
-> Parser (Maybe Bool -> EmulationUserAgentMetadata)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"bitness"
    Parser (Maybe Bool -> EmulationUserAgentMetadata)
-> Parser (Maybe Bool) -> Parser EmulationUserAgentMetadata
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"wow64"
instance ToJSON EmulationUserAgentMetadata where
  toJSON :: EmulationUserAgentMetadata -> Value
toJSON EmulationUserAgentMetadata
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"brands" Text -> [EmulationUserAgentBrandVersion] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([EmulationUserAgentBrandVersion] -> Pair)
-> Maybe [EmulationUserAgentBrandVersion] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (EmulationUserAgentMetadata
-> Maybe [EmulationUserAgentBrandVersion]
emulationUserAgentMetadataBrands EmulationUserAgentMetadata
p),
    (Text
"fullVersionList" Text -> [EmulationUserAgentBrandVersion] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([EmulationUserAgentBrandVersion] -> Pair)
-> Maybe [EmulationUserAgentBrandVersion] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (EmulationUserAgentMetadata
-> Maybe [EmulationUserAgentBrandVersion]
emulationUserAgentMetadataFullVersionList EmulationUserAgentMetadata
p),
    (Text
"platform" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (EmulationUserAgentMetadata -> Text
emulationUserAgentMetadataPlatform EmulationUserAgentMetadata
p),
    (Text
"platformVersion" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (EmulationUserAgentMetadata -> Text
emulationUserAgentMetadataPlatformVersion EmulationUserAgentMetadata
p),
    (Text
"architecture" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (EmulationUserAgentMetadata -> Text
emulationUserAgentMetadataArchitecture EmulationUserAgentMetadata
p),
    (Text
"model" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (EmulationUserAgentMetadata -> Text
emulationUserAgentMetadataModel EmulationUserAgentMetadata
p),
    (Text
"mobile" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (EmulationUserAgentMetadata -> Bool
emulationUserAgentMetadataMobile EmulationUserAgentMetadata
p),
    (Text
"bitness" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (EmulationUserAgentMetadata -> Maybe Text
emulationUserAgentMetadataBitness EmulationUserAgentMetadata
p),
    (Text
"wow64" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (EmulationUserAgentMetadata -> Maybe Bool
emulationUserAgentMetadataWow64 EmulationUserAgentMetadata
p)
    ]

-- | Type 'Emulation.DisabledImageType'.
--   Enum of image types that can be disabled.
data EmulationDisabledImageType = EmulationDisabledImageTypeAvif | EmulationDisabledImageTypeJxl | EmulationDisabledImageTypeWebp
  deriving (Eq EmulationDisabledImageType
Eq EmulationDisabledImageType
-> (EmulationDisabledImageType
    -> EmulationDisabledImageType -> Ordering)
-> (EmulationDisabledImageType
    -> EmulationDisabledImageType -> Bool)
-> (EmulationDisabledImageType
    -> EmulationDisabledImageType -> Bool)
-> (EmulationDisabledImageType
    -> EmulationDisabledImageType -> Bool)
-> (EmulationDisabledImageType
    -> EmulationDisabledImageType -> Bool)
-> (EmulationDisabledImageType
    -> EmulationDisabledImageType -> EmulationDisabledImageType)
-> (EmulationDisabledImageType
    -> EmulationDisabledImageType -> EmulationDisabledImageType)
-> Ord EmulationDisabledImageType
EmulationDisabledImageType -> EmulationDisabledImageType -> Bool
EmulationDisabledImageType
-> EmulationDisabledImageType -> Ordering
EmulationDisabledImageType
-> EmulationDisabledImageType -> EmulationDisabledImageType
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: EmulationDisabledImageType
-> EmulationDisabledImageType -> EmulationDisabledImageType
$cmin :: EmulationDisabledImageType
-> EmulationDisabledImageType -> EmulationDisabledImageType
max :: EmulationDisabledImageType
-> EmulationDisabledImageType -> EmulationDisabledImageType
$cmax :: EmulationDisabledImageType
-> EmulationDisabledImageType -> EmulationDisabledImageType
>= :: EmulationDisabledImageType -> EmulationDisabledImageType -> Bool
$c>= :: EmulationDisabledImageType -> EmulationDisabledImageType -> Bool
> :: EmulationDisabledImageType -> EmulationDisabledImageType -> Bool
$c> :: EmulationDisabledImageType -> EmulationDisabledImageType -> Bool
<= :: EmulationDisabledImageType -> EmulationDisabledImageType -> Bool
$c<= :: EmulationDisabledImageType -> EmulationDisabledImageType -> Bool
< :: EmulationDisabledImageType -> EmulationDisabledImageType -> Bool
$c< :: EmulationDisabledImageType -> EmulationDisabledImageType -> Bool
compare :: EmulationDisabledImageType
-> EmulationDisabledImageType -> Ordering
$ccompare :: EmulationDisabledImageType
-> EmulationDisabledImageType -> Ordering
$cp1Ord :: Eq EmulationDisabledImageType
Ord, EmulationDisabledImageType -> EmulationDisabledImageType -> Bool
(EmulationDisabledImageType -> EmulationDisabledImageType -> Bool)
-> (EmulationDisabledImageType
    -> EmulationDisabledImageType -> Bool)
-> Eq EmulationDisabledImageType
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: EmulationDisabledImageType -> EmulationDisabledImageType -> Bool
$c/= :: EmulationDisabledImageType -> EmulationDisabledImageType -> Bool
== :: EmulationDisabledImageType -> EmulationDisabledImageType -> Bool
$c== :: EmulationDisabledImageType -> EmulationDisabledImageType -> Bool
Eq, Int -> EmulationDisabledImageType -> ShowS
[EmulationDisabledImageType] -> ShowS
EmulationDisabledImageType -> String
(Int -> EmulationDisabledImageType -> ShowS)
-> (EmulationDisabledImageType -> String)
-> ([EmulationDisabledImageType] -> ShowS)
-> Show EmulationDisabledImageType
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [EmulationDisabledImageType] -> ShowS
$cshowList :: [EmulationDisabledImageType] -> ShowS
show :: EmulationDisabledImageType -> String
$cshow :: EmulationDisabledImageType -> String
showsPrec :: Int -> EmulationDisabledImageType -> ShowS
$cshowsPrec :: Int -> EmulationDisabledImageType -> ShowS
Show, ReadPrec [EmulationDisabledImageType]
ReadPrec EmulationDisabledImageType
Int -> ReadS EmulationDisabledImageType
ReadS [EmulationDisabledImageType]
(Int -> ReadS EmulationDisabledImageType)
-> ReadS [EmulationDisabledImageType]
-> ReadPrec EmulationDisabledImageType
-> ReadPrec [EmulationDisabledImageType]
-> Read EmulationDisabledImageType
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [EmulationDisabledImageType]
$creadListPrec :: ReadPrec [EmulationDisabledImageType]
readPrec :: ReadPrec EmulationDisabledImageType
$creadPrec :: ReadPrec EmulationDisabledImageType
readList :: ReadS [EmulationDisabledImageType]
$creadList :: ReadS [EmulationDisabledImageType]
readsPrec :: Int -> ReadS EmulationDisabledImageType
$creadsPrec :: Int -> ReadS EmulationDisabledImageType
Read)
instance FromJSON EmulationDisabledImageType where
  parseJSON :: Value -> Parser EmulationDisabledImageType
parseJSON = String
-> (Text -> Parser EmulationDisabledImageType)
-> Value
-> Parser EmulationDisabledImageType
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"EmulationDisabledImageType" ((Text -> Parser EmulationDisabledImageType)
 -> Value -> Parser EmulationDisabledImageType)
-> (Text -> Parser EmulationDisabledImageType)
-> Value
-> Parser EmulationDisabledImageType
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"avif" -> EmulationDisabledImageType -> Parser EmulationDisabledImageType
forall (f :: * -> *) a. Applicative f => a -> f a
pure EmulationDisabledImageType
EmulationDisabledImageTypeAvif
    Text
"jxl" -> EmulationDisabledImageType -> Parser EmulationDisabledImageType
forall (f :: * -> *) a. Applicative f => a -> f a
pure EmulationDisabledImageType
EmulationDisabledImageTypeJxl
    Text
"webp" -> EmulationDisabledImageType -> Parser EmulationDisabledImageType
forall (f :: * -> *) a. Applicative f => a -> f a
pure EmulationDisabledImageType
EmulationDisabledImageTypeWebp
    Text
"_" -> String -> Parser EmulationDisabledImageType
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse EmulationDisabledImageType"
instance ToJSON EmulationDisabledImageType where
  toJSON :: EmulationDisabledImageType -> Value
toJSON EmulationDisabledImageType
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case EmulationDisabledImageType
v of
    EmulationDisabledImageType
EmulationDisabledImageTypeAvif -> Text
"avif"
    EmulationDisabledImageType
EmulationDisabledImageTypeJxl -> Text
"jxl"
    EmulationDisabledImageType
EmulationDisabledImageTypeWebp -> Text
"webp"

-- | Type of the 'Emulation.virtualTimeBudgetExpired' event.
data EmulationVirtualTimeBudgetExpired = EmulationVirtualTimeBudgetExpired
  deriving (EmulationVirtualTimeBudgetExpired
-> EmulationVirtualTimeBudgetExpired -> Bool
(EmulationVirtualTimeBudgetExpired
 -> EmulationVirtualTimeBudgetExpired -> Bool)
-> (EmulationVirtualTimeBudgetExpired
    -> EmulationVirtualTimeBudgetExpired -> Bool)
-> Eq EmulationVirtualTimeBudgetExpired
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: EmulationVirtualTimeBudgetExpired
-> EmulationVirtualTimeBudgetExpired -> Bool
$c/= :: EmulationVirtualTimeBudgetExpired
-> EmulationVirtualTimeBudgetExpired -> Bool
== :: EmulationVirtualTimeBudgetExpired
-> EmulationVirtualTimeBudgetExpired -> Bool
$c== :: EmulationVirtualTimeBudgetExpired
-> EmulationVirtualTimeBudgetExpired -> Bool
Eq, Int -> EmulationVirtualTimeBudgetExpired -> ShowS
[EmulationVirtualTimeBudgetExpired] -> ShowS
EmulationVirtualTimeBudgetExpired -> String
(Int -> EmulationVirtualTimeBudgetExpired -> ShowS)
-> (EmulationVirtualTimeBudgetExpired -> String)
-> ([EmulationVirtualTimeBudgetExpired] -> ShowS)
-> Show EmulationVirtualTimeBudgetExpired
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [EmulationVirtualTimeBudgetExpired] -> ShowS
$cshowList :: [EmulationVirtualTimeBudgetExpired] -> ShowS
show :: EmulationVirtualTimeBudgetExpired -> String
$cshow :: EmulationVirtualTimeBudgetExpired -> String
showsPrec :: Int -> EmulationVirtualTimeBudgetExpired -> ShowS
$cshowsPrec :: Int -> EmulationVirtualTimeBudgetExpired -> ShowS
Show, ReadPrec [EmulationVirtualTimeBudgetExpired]
ReadPrec EmulationVirtualTimeBudgetExpired
Int -> ReadS EmulationVirtualTimeBudgetExpired
ReadS [EmulationVirtualTimeBudgetExpired]
(Int -> ReadS EmulationVirtualTimeBudgetExpired)
-> ReadS [EmulationVirtualTimeBudgetExpired]
-> ReadPrec EmulationVirtualTimeBudgetExpired
-> ReadPrec [EmulationVirtualTimeBudgetExpired]
-> Read EmulationVirtualTimeBudgetExpired
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [EmulationVirtualTimeBudgetExpired]
$creadListPrec :: ReadPrec [EmulationVirtualTimeBudgetExpired]
readPrec :: ReadPrec EmulationVirtualTimeBudgetExpired
$creadPrec :: ReadPrec EmulationVirtualTimeBudgetExpired
readList :: ReadS [EmulationVirtualTimeBudgetExpired]
$creadList :: ReadS [EmulationVirtualTimeBudgetExpired]
readsPrec :: Int -> ReadS EmulationVirtualTimeBudgetExpired
$creadsPrec :: Int -> ReadS EmulationVirtualTimeBudgetExpired
Read)
instance FromJSON EmulationVirtualTimeBudgetExpired where
  parseJSON :: Value -> Parser EmulationVirtualTimeBudgetExpired
parseJSON Value
_ = EmulationVirtualTimeBudgetExpired
-> Parser EmulationVirtualTimeBudgetExpired
forall (f :: * -> *) a. Applicative f => a -> f a
pure EmulationVirtualTimeBudgetExpired
EmulationVirtualTimeBudgetExpired
instance Event EmulationVirtualTimeBudgetExpired where
  eventName :: Proxy EmulationVirtualTimeBudgetExpired -> String
eventName Proxy EmulationVirtualTimeBudgetExpired
_ = String
"Emulation.virtualTimeBudgetExpired"

-- | Tells whether emulation is supported.

-- | Parameters of the 'Emulation.canEmulate' command.
data PEmulationCanEmulate = PEmulationCanEmulate
  deriving (PEmulationCanEmulate -> PEmulationCanEmulate -> Bool
(PEmulationCanEmulate -> PEmulationCanEmulate -> Bool)
-> (PEmulationCanEmulate -> PEmulationCanEmulate -> Bool)
-> Eq PEmulationCanEmulate
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PEmulationCanEmulate -> PEmulationCanEmulate -> Bool
$c/= :: PEmulationCanEmulate -> PEmulationCanEmulate -> Bool
== :: PEmulationCanEmulate -> PEmulationCanEmulate -> Bool
$c== :: PEmulationCanEmulate -> PEmulationCanEmulate -> Bool
Eq, Int -> PEmulationCanEmulate -> ShowS
[PEmulationCanEmulate] -> ShowS
PEmulationCanEmulate -> String
(Int -> PEmulationCanEmulate -> ShowS)
-> (PEmulationCanEmulate -> String)
-> ([PEmulationCanEmulate] -> ShowS)
-> Show PEmulationCanEmulate
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PEmulationCanEmulate] -> ShowS
$cshowList :: [PEmulationCanEmulate] -> ShowS
show :: PEmulationCanEmulate -> String
$cshow :: PEmulationCanEmulate -> String
showsPrec :: Int -> PEmulationCanEmulate -> ShowS
$cshowsPrec :: Int -> PEmulationCanEmulate -> ShowS
Show)
pEmulationCanEmulate
  :: PEmulationCanEmulate
pEmulationCanEmulate :: PEmulationCanEmulate
pEmulationCanEmulate
  = PEmulationCanEmulate
PEmulationCanEmulate
instance ToJSON PEmulationCanEmulate where
  toJSON :: PEmulationCanEmulate -> Value
toJSON PEmulationCanEmulate
_ = Value
A.Null
data EmulationCanEmulate = EmulationCanEmulate
  {
    -- | True if emulation is supported.
    EmulationCanEmulate -> Bool
emulationCanEmulateResult :: Bool
  }
  deriving (EmulationCanEmulate -> EmulationCanEmulate -> Bool
(EmulationCanEmulate -> EmulationCanEmulate -> Bool)
-> (EmulationCanEmulate -> EmulationCanEmulate -> Bool)
-> Eq EmulationCanEmulate
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: EmulationCanEmulate -> EmulationCanEmulate -> Bool
$c/= :: EmulationCanEmulate -> EmulationCanEmulate -> Bool
== :: EmulationCanEmulate -> EmulationCanEmulate -> Bool
$c== :: EmulationCanEmulate -> EmulationCanEmulate -> Bool
Eq, Int -> EmulationCanEmulate -> ShowS
[EmulationCanEmulate] -> ShowS
EmulationCanEmulate -> String
(Int -> EmulationCanEmulate -> ShowS)
-> (EmulationCanEmulate -> String)
-> ([EmulationCanEmulate] -> ShowS)
-> Show EmulationCanEmulate
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [EmulationCanEmulate] -> ShowS
$cshowList :: [EmulationCanEmulate] -> ShowS
show :: EmulationCanEmulate -> String
$cshow :: EmulationCanEmulate -> String
showsPrec :: Int -> EmulationCanEmulate -> ShowS
$cshowsPrec :: Int -> EmulationCanEmulate -> ShowS
Show)
instance FromJSON EmulationCanEmulate where
  parseJSON :: Value -> Parser EmulationCanEmulate
parseJSON = String
-> (Object -> Parser EmulationCanEmulate)
-> Value
-> Parser EmulationCanEmulate
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"EmulationCanEmulate" ((Object -> Parser EmulationCanEmulate)
 -> Value -> Parser EmulationCanEmulate)
-> (Object -> Parser EmulationCanEmulate)
-> Value
-> Parser EmulationCanEmulate
forall a b. (a -> b) -> a -> b
$ \Object
o -> Bool -> EmulationCanEmulate
EmulationCanEmulate
    (Bool -> EmulationCanEmulate)
-> Parser Bool -> Parser EmulationCanEmulate
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Bool
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"result"
instance Command PEmulationCanEmulate where
  type CommandResponse PEmulationCanEmulate = EmulationCanEmulate
  commandName :: Proxy PEmulationCanEmulate -> String
commandName Proxy PEmulationCanEmulate
_ = String
"Emulation.canEmulate"

-- | Clears the overridden device metrics.

-- | Parameters of the 'Emulation.clearDeviceMetricsOverride' command.
data PEmulationClearDeviceMetricsOverride = PEmulationClearDeviceMetricsOverride
  deriving (PEmulationClearDeviceMetricsOverride
-> PEmulationClearDeviceMetricsOverride -> Bool
(PEmulationClearDeviceMetricsOverride
 -> PEmulationClearDeviceMetricsOverride -> Bool)
-> (PEmulationClearDeviceMetricsOverride
    -> PEmulationClearDeviceMetricsOverride -> Bool)
-> Eq PEmulationClearDeviceMetricsOverride
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PEmulationClearDeviceMetricsOverride
-> PEmulationClearDeviceMetricsOverride -> Bool
$c/= :: PEmulationClearDeviceMetricsOverride
-> PEmulationClearDeviceMetricsOverride -> Bool
== :: PEmulationClearDeviceMetricsOverride
-> PEmulationClearDeviceMetricsOverride -> Bool
$c== :: PEmulationClearDeviceMetricsOverride
-> PEmulationClearDeviceMetricsOverride -> Bool
Eq, Int -> PEmulationClearDeviceMetricsOverride -> ShowS
[PEmulationClearDeviceMetricsOverride] -> ShowS
PEmulationClearDeviceMetricsOverride -> String
(Int -> PEmulationClearDeviceMetricsOverride -> ShowS)
-> (PEmulationClearDeviceMetricsOverride -> String)
-> ([PEmulationClearDeviceMetricsOverride] -> ShowS)
-> Show PEmulationClearDeviceMetricsOverride
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PEmulationClearDeviceMetricsOverride] -> ShowS
$cshowList :: [PEmulationClearDeviceMetricsOverride] -> ShowS
show :: PEmulationClearDeviceMetricsOverride -> String
$cshow :: PEmulationClearDeviceMetricsOverride -> String
showsPrec :: Int -> PEmulationClearDeviceMetricsOverride -> ShowS
$cshowsPrec :: Int -> PEmulationClearDeviceMetricsOverride -> ShowS
Show)
pEmulationClearDeviceMetricsOverride
  :: PEmulationClearDeviceMetricsOverride
pEmulationClearDeviceMetricsOverride :: PEmulationClearDeviceMetricsOverride
pEmulationClearDeviceMetricsOverride
  = PEmulationClearDeviceMetricsOverride
PEmulationClearDeviceMetricsOverride
instance ToJSON PEmulationClearDeviceMetricsOverride where
  toJSON :: PEmulationClearDeviceMetricsOverride -> Value
toJSON PEmulationClearDeviceMetricsOverride
_ = Value
A.Null
instance Command PEmulationClearDeviceMetricsOverride where
  type CommandResponse PEmulationClearDeviceMetricsOverride = ()
  commandName :: Proxy PEmulationClearDeviceMetricsOverride -> String
commandName Proxy PEmulationClearDeviceMetricsOverride
_ = String
"Emulation.clearDeviceMetricsOverride"
  fromJSON :: Proxy PEmulationClearDeviceMetricsOverride
-> Value
-> Result (CommandResponse PEmulationClearDeviceMetricsOverride)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PEmulationClearDeviceMetricsOverride -> Result ())
-> Proxy PEmulationClearDeviceMetricsOverride
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PEmulationClearDeviceMetricsOverride -> ())
-> Proxy PEmulationClearDeviceMetricsOverride
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PEmulationClearDeviceMetricsOverride -> ()
forall a b. a -> b -> a
const ()

-- | Clears the overridden Geolocation Position and Error.

-- | Parameters of the 'Emulation.clearGeolocationOverride' command.
data PEmulationClearGeolocationOverride = PEmulationClearGeolocationOverride
  deriving (PEmulationClearGeolocationOverride
-> PEmulationClearGeolocationOverride -> Bool
(PEmulationClearGeolocationOverride
 -> PEmulationClearGeolocationOverride -> Bool)
-> (PEmulationClearGeolocationOverride
    -> PEmulationClearGeolocationOverride -> Bool)
-> Eq PEmulationClearGeolocationOverride
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PEmulationClearGeolocationOverride
-> PEmulationClearGeolocationOverride -> Bool
$c/= :: PEmulationClearGeolocationOverride
-> PEmulationClearGeolocationOverride -> Bool
== :: PEmulationClearGeolocationOverride
-> PEmulationClearGeolocationOverride -> Bool
$c== :: PEmulationClearGeolocationOverride
-> PEmulationClearGeolocationOverride -> Bool
Eq, Int -> PEmulationClearGeolocationOverride -> ShowS
[PEmulationClearGeolocationOverride] -> ShowS
PEmulationClearGeolocationOverride -> String
(Int -> PEmulationClearGeolocationOverride -> ShowS)
-> (PEmulationClearGeolocationOverride -> String)
-> ([PEmulationClearGeolocationOverride] -> ShowS)
-> Show PEmulationClearGeolocationOverride
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PEmulationClearGeolocationOverride] -> ShowS
$cshowList :: [PEmulationClearGeolocationOverride] -> ShowS
show :: PEmulationClearGeolocationOverride -> String
$cshow :: PEmulationClearGeolocationOverride -> String
showsPrec :: Int -> PEmulationClearGeolocationOverride -> ShowS
$cshowsPrec :: Int -> PEmulationClearGeolocationOverride -> ShowS
Show)
pEmulationClearGeolocationOverride
  :: PEmulationClearGeolocationOverride
pEmulationClearGeolocationOverride :: PEmulationClearGeolocationOverride
pEmulationClearGeolocationOverride
  = PEmulationClearGeolocationOverride
PEmulationClearGeolocationOverride
instance ToJSON PEmulationClearGeolocationOverride where
  toJSON :: PEmulationClearGeolocationOverride -> Value
toJSON PEmulationClearGeolocationOverride
_ = Value
A.Null
instance Command PEmulationClearGeolocationOverride where
  type CommandResponse PEmulationClearGeolocationOverride = ()
  commandName :: Proxy PEmulationClearGeolocationOverride -> String
commandName Proxy PEmulationClearGeolocationOverride
_ = String
"Emulation.clearGeolocationOverride"
  fromJSON :: Proxy PEmulationClearGeolocationOverride
-> Value
-> Result (CommandResponse PEmulationClearGeolocationOverride)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PEmulationClearGeolocationOverride -> Result ())
-> Proxy PEmulationClearGeolocationOverride
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PEmulationClearGeolocationOverride -> ())
-> Proxy PEmulationClearGeolocationOverride
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PEmulationClearGeolocationOverride -> ()
forall a b. a -> b -> a
const ()

-- | Requests that page scale factor is reset to initial values.

-- | Parameters of the 'Emulation.resetPageScaleFactor' command.
data PEmulationResetPageScaleFactor = PEmulationResetPageScaleFactor
  deriving (PEmulationResetPageScaleFactor
-> PEmulationResetPageScaleFactor -> Bool
(PEmulationResetPageScaleFactor
 -> PEmulationResetPageScaleFactor -> Bool)
-> (PEmulationResetPageScaleFactor
    -> PEmulationResetPageScaleFactor -> Bool)
-> Eq PEmulationResetPageScaleFactor
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PEmulationResetPageScaleFactor
-> PEmulationResetPageScaleFactor -> Bool
$c/= :: PEmulationResetPageScaleFactor
-> PEmulationResetPageScaleFactor -> Bool
== :: PEmulationResetPageScaleFactor
-> PEmulationResetPageScaleFactor -> Bool
$c== :: PEmulationResetPageScaleFactor
-> PEmulationResetPageScaleFactor -> Bool
Eq, Int -> PEmulationResetPageScaleFactor -> ShowS
[PEmulationResetPageScaleFactor] -> ShowS
PEmulationResetPageScaleFactor -> String
(Int -> PEmulationResetPageScaleFactor -> ShowS)
-> (PEmulationResetPageScaleFactor -> String)
-> ([PEmulationResetPageScaleFactor] -> ShowS)
-> Show PEmulationResetPageScaleFactor
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PEmulationResetPageScaleFactor] -> ShowS
$cshowList :: [PEmulationResetPageScaleFactor] -> ShowS
show :: PEmulationResetPageScaleFactor -> String
$cshow :: PEmulationResetPageScaleFactor -> String
showsPrec :: Int -> PEmulationResetPageScaleFactor -> ShowS
$cshowsPrec :: Int -> PEmulationResetPageScaleFactor -> ShowS
Show)
pEmulationResetPageScaleFactor
  :: PEmulationResetPageScaleFactor
pEmulationResetPageScaleFactor :: PEmulationResetPageScaleFactor
pEmulationResetPageScaleFactor
  = PEmulationResetPageScaleFactor
PEmulationResetPageScaleFactor
instance ToJSON PEmulationResetPageScaleFactor where
  toJSON :: PEmulationResetPageScaleFactor -> Value
toJSON PEmulationResetPageScaleFactor
_ = Value
A.Null
instance Command PEmulationResetPageScaleFactor where
  type CommandResponse PEmulationResetPageScaleFactor = ()
  commandName :: Proxy PEmulationResetPageScaleFactor -> String
commandName Proxy PEmulationResetPageScaleFactor
_ = String
"Emulation.resetPageScaleFactor"
  fromJSON :: Proxy PEmulationResetPageScaleFactor
-> Value -> Result (CommandResponse PEmulationResetPageScaleFactor)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PEmulationResetPageScaleFactor -> Result ())
-> Proxy PEmulationResetPageScaleFactor
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PEmulationResetPageScaleFactor -> ())
-> Proxy PEmulationResetPageScaleFactor
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PEmulationResetPageScaleFactor -> ()
forall a b. a -> b -> a
const ()

-- | Enables or disables simulating a focused and active page.

-- | Parameters of the 'Emulation.setFocusEmulationEnabled' command.
data PEmulationSetFocusEmulationEnabled = PEmulationSetFocusEmulationEnabled
  {
    -- | Whether to enable to disable focus emulation.
    PEmulationSetFocusEmulationEnabled -> Bool
pEmulationSetFocusEmulationEnabledEnabled :: Bool
  }
  deriving (PEmulationSetFocusEmulationEnabled
-> PEmulationSetFocusEmulationEnabled -> Bool
(PEmulationSetFocusEmulationEnabled
 -> PEmulationSetFocusEmulationEnabled -> Bool)
-> (PEmulationSetFocusEmulationEnabled
    -> PEmulationSetFocusEmulationEnabled -> Bool)
-> Eq PEmulationSetFocusEmulationEnabled
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PEmulationSetFocusEmulationEnabled
-> PEmulationSetFocusEmulationEnabled -> Bool
$c/= :: PEmulationSetFocusEmulationEnabled
-> PEmulationSetFocusEmulationEnabled -> Bool
== :: PEmulationSetFocusEmulationEnabled
-> PEmulationSetFocusEmulationEnabled -> Bool
$c== :: PEmulationSetFocusEmulationEnabled
-> PEmulationSetFocusEmulationEnabled -> Bool
Eq, Int -> PEmulationSetFocusEmulationEnabled -> ShowS
[PEmulationSetFocusEmulationEnabled] -> ShowS
PEmulationSetFocusEmulationEnabled -> String
(Int -> PEmulationSetFocusEmulationEnabled -> ShowS)
-> (PEmulationSetFocusEmulationEnabled -> String)
-> ([PEmulationSetFocusEmulationEnabled] -> ShowS)
-> Show PEmulationSetFocusEmulationEnabled
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PEmulationSetFocusEmulationEnabled] -> ShowS
$cshowList :: [PEmulationSetFocusEmulationEnabled] -> ShowS
show :: PEmulationSetFocusEmulationEnabled -> String
$cshow :: PEmulationSetFocusEmulationEnabled -> String
showsPrec :: Int -> PEmulationSetFocusEmulationEnabled -> ShowS
$cshowsPrec :: Int -> PEmulationSetFocusEmulationEnabled -> ShowS
Show)
pEmulationSetFocusEmulationEnabled
  {-
  -- | Whether to enable to disable focus emulation.
  -}
  :: Bool
  -> PEmulationSetFocusEmulationEnabled
pEmulationSetFocusEmulationEnabled :: Bool -> PEmulationSetFocusEmulationEnabled
pEmulationSetFocusEmulationEnabled
  Bool
arg_pEmulationSetFocusEmulationEnabledEnabled
  = Bool -> PEmulationSetFocusEmulationEnabled
PEmulationSetFocusEmulationEnabled
    Bool
arg_pEmulationSetFocusEmulationEnabledEnabled
instance ToJSON PEmulationSetFocusEmulationEnabled where
  toJSON :: PEmulationSetFocusEmulationEnabled -> Value
toJSON PEmulationSetFocusEmulationEnabled
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"enabled" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (PEmulationSetFocusEmulationEnabled -> Bool
pEmulationSetFocusEmulationEnabledEnabled PEmulationSetFocusEmulationEnabled
p)
    ]
instance Command PEmulationSetFocusEmulationEnabled where
  type CommandResponse PEmulationSetFocusEmulationEnabled = ()
  commandName :: Proxy PEmulationSetFocusEmulationEnabled -> String
commandName Proxy PEmulationSetFocusEmulationEnabled
_ = String
"Emulation.setFocusEmulationEnabled"
  fromJSON :: Proxy PEmulationSetFocusEmulationEnabled
-> Value
-> Result (CommandResponse PEmulationSetFocusEmulationEnabled)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PEmulationSetFocusEmulationEnabled -> Result ())
-> Proxy PEmulationSetFocusEmulationEnabled
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PEmulationSetFocusEmulationEnabled -> ())
-> Proxy PEmulationSetFocusEmulationEnabled
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PEmulationSetFocusEmulationEnabled -> ()
forall a b. a -> b -> a
const ()

-- | Automatically render all web contents using a dark theme.

-- | Parameters of the 'Emulation.setAutoDarkModeOverride' command.
data PEmulationSetAutoDarkModeOverride = PEmulationSetAutoDarkModeOverride
  {
    -- | Whether to enable or disable automatic dark mode.
    --   If not specified, any existing override will be cleared.
    PEmulationSetAutoDarkModeOverride -> Maybe Bool
pEmulationSetAutoDarkModeOverrideEnabled :: Maybe Bool
  }
  deriving (PEmulationSetAutoDarkModeOverride
-> PEmulationSetAutoDarkModeOverride -> Bool
(PEmulationSetAutoDarkModeOverride
 -> PEmulationSetAutoDarkModeOverride -> Bool)
-> (PEmulationSetAutoDarkModeOverride
    -> PEmulationSetAutoDarkModeOverride -> Bool)
-> Eq PEmulationSetAutoDarkModeOverride
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PEmulationSetAutoDarkModeOverride
-> PEmulationSetAutoDarkModeOverride -> Bool
$c/= :: PEmulationSetAutoDarkModeOverride
-> PEmulationSetAutoDarkModeOverride -> Bool
== :: PEmulationSetAutoDarkModeOverride
-> PEmulationSetAutoDarkModeOverride -> Bool
$c== :: PEmulationSetAutoDarkModeOverride
-> PEmulationSetAutoDarkModeOverride -> Bool
Eq, Int -> PEmulationSetAutoDarkModeOverride -> ShowS
[PEmulationSetAutoDarkModeOverride] -> ShowS
PEmulationSetAutoDarkModeOverride -> String
(Int -> PEmulationSetAutoDarkModeOverride -> ShowS)
-> (PEmulationSetAutoDarkModeOverride -> String)
-> ([PEmulationSetAutoDarkModeOverride] -> ShowS)
-> Show PEmulationSetAutoDarkModeOverride
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PEmulationSetAutoDarkModeOverride] -> ShowS
$cshowList :: [PEmulationSetAutoDarkModeOverride] -> ShowS
show :: PEmulationSetAutoDarkModeOverride -> String
$cshow :: PEmulationSetAutoDarkModeOverride -> String
showsPrec :: Int -> PEmulationSetAutoDarkModeOverride -> ShowS
$cshowsPrec :: Int -> PEmulationSetAutoDarkModeOverride -> ShowS
Show)
pEmulationSetAutoDarkModeOverride
  :: PEmulationSetAutoDarkModeOverride
pEmulationSetAutoDarkModeOverride :: PEmulationSetAutoDarkModeOverride
pEmulationSetAutoDarkModeOverride
  = Maybe Bool -> PEmulationSetAutoDarkModeOverride
PEmulationSetAutoDarkModeOverride
    Maybe Bool
forall a. Maybe a
Nothing
instance ToJSON PEmulationSetAutoDarkModeOverride where
  toJSON :: PEmulationSetAutoDarkModeOverride -> Value
toJSON PEmulationSetAutoDarkModeOverride
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"enabled" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PEmulationSetAutoDarkModeOverride -> Maybe Bool
pEmulationSetAutoDarkModeOverrideEnabled PEmulationSetAutoDarkModeOverride
p)
    ]
instance Command PEmulationSetAutoDarkModeOverride where
  type CommandResponse PEmulationSetAutoDarkModeOverride = ()
  commandName :: Proxy PEmulationSetAutoDarkModeOverride -> String
commandName Proxy PEmulationSetAutoDarkModeOverride
_ = String
"Emulation.setAutoDarkModeOverride"
  fromJSON :: Proxy PEmulationSetAutoDarkModeOverride
-> Value
-> Result (CommandResponse PEmulationSetAutoDarkModeOverride)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PEmulationSetAutoDarkModeOverride -> Result ())
-> Proxy PEmulationSetAutoDarkModeOverride
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PEmulationSetAutoDarkModeOverride -> ())
-> Proxy PEmulationSetAutoDarkModeOverride
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PEmulationSetAutoDarkModeOverride -> ()
forall a b. a -> b -> a
const ()

-- | Enables CPU throttling to emulate slow CPUs.

-- | Parameters of the 'Emulation.setCPUThrottlingRate' command.
data PEmulationSetCPUThrottlingRate = PEmulationSetCPUThrottlingRate
  {
    -- | Throttling rate as a slowdown factor (1 is no throttle, 2 is 2x slowdown, etc).
    PEmulationSetCPUThrottlingRate -> Double
pEmulationSetCPUThrottlingRateRate :: Double
  }
  deriving (PEmulationSetCPUThrottlingRate
-> PEmulationSetCPUThrottlingRate -> Bool
(PEmulationSetCPUThrottlingRate
 -> PEmulationSetCPUThrottlingRate -> Bool)
-> (PEmulationSetCPUThrottlingRate
    -> PEmulationSetCPUThrottlingRate -> Bool)
-> Eq PEmulationSetCPUThrottlingRate
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PEmulationSetCPUThrottlingRate
-> PEmulationSetCPUThrottlingRate -> Bool
$c/= :: PEmulationSetCPUThrottlingRate
-> PEmulationSetCPUThrottlingRate -> Bool
== :: PEmulationSetCPUThrottlingRate
-> PEmulationSetCPUThrottlingRate -> Bool
$c== :: PEmulationSetCPUThrottlingRate
-> PEmulationSetCPUThrottlingRate -> Bool
Eq, Int -> PEmulationSetCPUThrottlingRate -> ShowS
[PEmulationSetCPUThrottlingRate] -> ShowS
PEmulationSetCPUThrottlingRate -> String
(Int -> PEmulationSetCPUThrottlingRate -> ShowS)
-> (PEmulationSetCPUThrottlingRate -> String)
-> ([PEmulationSetCPUThrottlingRate] -> ShowS)
-> Show PEmulationSetCPUThrottlingRate
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PEmulationSetCPUThrottlingRate] -> ShowS
$cshowList :: [PEmulationSetCPUThrottlingRate] -> ShowS
show :: PEmulationSetCPUThrottlingRate -> String
$cshow :: PEmulationSetCPUThrottlingRate -> String
showsPrec :: Int -> PEmulationSetCPUThrottlingRate -> ShowS
$cshowsPrec :: Int -> PEmulationSetCPUThrottlingRate -> ShowS
Show)
pEmulationSetCPUThrottlingRate
  {-
  -- | Throttling rate as a slowdown factor (1 is no throttle, 2 is 2x slowdown, etc).
  -}
  :: Double
  -> PEmulationSetCPUThrottlingRate
pEmulationSetCPUThrottlingRate :: Double -> PEmulationSetCPUThrottlingRate
pEmulationSetCPUThrottlingRate
  Double
arg_pEmulationSetCPUThrottlingRateRate
  = Double -> PEmulationSetCPUThrottlingRate
PEmulationSetCPUThrottlingRate
    Double
arg_pEmulationSetCPUThrottlingRateRate
instance ToJSON PEmulationSetCPUThrottlingRate where
  toJSON :: PEmulationSetCPUThrottlingRate -> Value
toJSON PEmulationSetCPUThrottlingRate
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"rate" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (PEmulationSetCPUThrottlingRate -> Double
pEmulationSetCPUThrottlingRateRate PEmulationSetCPUThrottlingRate
p)
    ]
instance Command PEmulationSetCPUThrottlingRate where
  type CommandResponse PEmulationSetCPUThrottlingRate = ()
  commandName :: Proxy PEmulationSetCPUThrottlingRate -> String
commandName Proxy PEmulationSetCPUThrottlingRate
_ = String
"Emulation.setCPUThrottlingRate"
  fromJSON :: Proxy PEmulationSetCPUThrottlingRate
-> Value -> Result (CommandResponse PEmulationSetCPUThrottlingRate)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PEmulationSetCPUThrottlingRate -> Result ())
-> Proxy PEmulationSetCPUThrottlingRate
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PEmulationSetCPUThrottlingRate -> ())
-> Proxy PEmulationSetCPUThrottlingRate
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PEmulationSetCPUThrottlingRate -> ()
forall a b. a -> b -> a
const ()

-- | Sets or clears an override of the default background color of the frame. This override is used
--   if the content does not specify one.

-- | Parameters of the 'Emulation.setDefaultBackgroundColorOverride' command.
data PEmulationSetDefaultBackgroundColorOverride = PEmulationSetDefaultBackgroundColorOverride
  {
    -- | RGBA of the default background color. If not specified, any existing override will be
    --   cleared.
    PEmulationSetDefaultBackgroundColorOverride -> Maybe DOMRGBA
pEmulationSetDefaultBackgroundColorOverrideColor :: Maybe DOMRGBA
  }
  deriving (PEmulationSetDefaultBackgroundColorOverride
-> PEmulationSetDefaultBackgroundColorOverride -> Bool
(PEmulationSetDefaultBackgroundColorOverride
 -> PEmulationSetDefaultBackgroundColorOverride -> Bool)
-> (PEmulationSetDefaultBackgroundColorOverride
    -> PEmulationSetDefaultBackgroundColorOverride -> Bool)
-> Eq PEmulationSetDefaultBackgroundColorOverride
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PEmulationSetDefaultBackgroundColorOverride
-> PEmulationSetDefaultBackgroundColorOverride -> Bool
$c/= :: PEmulationSetDefaultBackgroundColorOverride
-> PEmulationSetDefaultBackgroundColorOverride -> Bool
== :: PEmulationSetDefaultBackgroundColorOverride
-> PEmulationSetDefaultBackgroundColorOverride -> Bool
$c== :: PEmulationSetDefaultBackgroundColorOverride
-> PEmulationSetDefaultBackgroundColorOverride -> Bool
Eq, Int -> PEmulationSetDefaultBackgroundColorOverride -> ShowS
[PEmulationSetDefaultBackgroundColorOverride] -> ShowS
PEmulationSetDefaultBackgroundColorOverride -> String
(Int -> PEmulationSetDefaultBackgroundColorOverride -> ShowS)
-> (PEmulationSetDefaultBackgroundColorOverride -> String)
-> ([PEmulationSetDefaultBackgroundColorOverride] -> ShowS)
-> Show PEmulationSetDefaultBackgroundColorOverride
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PEmulationSetDefaultBackgroundColorOverride] -> ShowS
$cshowList :: [PEmulationSetDefaultBackgroundColorOverride] -> ShowS
show :: PEmulationSetDefaultBackgroundColorOverride -> String
$cshow :: PEmulationSetDefaultBackgroundColorOverride -> String
showsPrec :: Int -> PEmulationSetDefaultBackgroundColorOverride -> ShowS
$cshowsPrec :: Int -> PEmulationSetDefaultBackgroundColorOverride -> ShowS
Show)
pEmulationSetDefaultBackgroundColorOverride
  :: PEmulationSetDefaultBackgroundColorOverride
pEmulationSetDefaultBackgroundColorOverride :: PEmulationSetDefaultBackgroundColorOverride
pEmulationSetDefaultBackgroundColorOverride
  = Maybe DOMRGBA -> PEmulationSetDefaultBackgroundColorOverride
PEmulationSetDefaultBackgroundColorOverride
    Maybe DOMRGBA
forall a. Maybe a
Nothing
instance ToJSON PEmulationSetDefaultBackgroundColorOverride where
  toJSON :: PEmulationSetDefaultBackgroundColorOverride -> Value
toJSON PEmulationSetDefaultBackgroundColorOverride
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"color" Text -> DOMRGBA -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (DOMRGBA -> Pair) -> Maybe DOMRGBA -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PEmulationSetDefaultBackgroundColorOverride -> Maybe DOMRGBA
pEmulationSetDefaultBackgroundColorOverrideColor PEmulationSetDefaultBackgroundColorOverride
p)
    ]
instance Command PEmulationSetDefaultBackgroundColorOverride where
  type CommandResponse PEmulationSetDefaultBackgroundColorOverride = ()
  commandName :: Proxy PEmulationSetDefaultBackgroundColorOverride -> String
commandName Proxy PEmulationSetDefaultBackgroundColorOverride
_ = String
"Emulation.setDefaultBackgroundColorOverride"
  fromJSON :: Proxy PEmulationSetDefaultBackgroundColorOverride
-> Value
-> Result
     (CommandResponse PEmulationSetDefaultBackgroundColorOverride)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PEmulationSetDefaultBackgroundColorOverride -> Result ())
-> Proxy PEmulationSetDefaultBackgroundColorOverride
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PEmulationSetDefaultBackgroundColorOverride -> ())
-> Proxy PEmulationSetDefaultBackgroundColorOverride
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PEmulationSetDefaultBackgroundColorOverride -> ()
forall a b. a -> b -> a
const ()

-- | Overrides the values of device screen dimensions (window.screen.width, window.screen.height,
--   window.innerWidth, window.innerHeight, and "device-width"/"device-height"-related CSS media
--   query results).

-- | Parameters of the 'Emulation.setDeviceMetricsOverride' command.
data PEmulationSetDeviceMetricsOverride = PEmulationSetDeviceMetricsOverride
  {
    -- | Overriding width value in pixels (minimum 0, maximum 10000000). 0 disables the override.
    PEmulationSetDeviceMetricsOverride -> Int
pEmulationSetDeviceMetricsOverrideWidth :: Int,
    -- | Overriding height value in pixels (minimum 0, maximum 10000000). 0 disables the override.
    PEmulationSetDeviceMetricsOverride -> Int
pEmulationSetDeviceMetricsOverrideHeight :: Int,
    -- | Overriding device scale factor value. 0 disables the override.
    PEmulationSetDeviceMetricsOverride -> Double
pEmulationSetDeviceMetricsOverrideDeviceScaleFactor :: Double,
    -- | Whether to emulate mobile device. This includes viewport meta tag, overlay scrollbars, text
    --   autosizing and more.
    PEmulationSetDeviceMetricsOverride -> Bool
pEmulationSetDeviceMetricsOverrideMobile :: Bool,
    -- | Scale to apply to resulting view image.
    PEmulationSetDeviceMetricsOverride -> Maybe Double
pEmulationSetDeviceMetricsOverrideScale :: Maybe Double,
    -- | Overriding screen width value in pixels (minimum 0, maximum 10000000).
    PEmulationSetDeviceMetricsOverride -> Maybe Int
pEmulationSetDeviceMetricsOverrideScreenWidth :: Maybe Int,
    -- | Overriding screen height value in pixels (minimum 0, maximum 10000000).
    PEmulationSetDeviceMetricsOverride -> Maybe Int
pEmulationSetDeviceMetricsOverrideScreenHeight :: Maybe Int,
    -- | Overriding view X position on screen in pixels (minimum 0, maximum 10000000).
    PEmulationSetDeviceMetricsOverride -> Maybe Int
pEmulationSetDeviceMetricsOverridePositionX :: Maybe Int,
    -- | Overriding view Y position on screen in pixels (minimum 0, maximum 10000000).
    PEmulationSetDeviceMetricsOverride -> Maybe Int
pEmulationSetDeviceMetricsOverridePositionY :: Maybe Int,
    -- | Do not set visible view size, rely upon explicit setVisibleSize call.
    PEmulationSetDeviceMetricsOverride -> Maybe Bool
pEmulationSetDeviceMetricsOverrideDontSetVisibleSize :: Maybe Bool,
    -- | Screen orientation override.
    PEmulationSetDeviceMetricsOverride
-> Maybe EmulationScreenOrientation
pEmulationSetDeviceMetricsOverrideScreenOrientation :: Maybe EmulationScreenOrientation,
    -- | If set, the visible area of the page will be overridden to this viewport. This viewport
    --   change is not observed by the page, e.g. viewport-relative elements do not change positions.
    PEmulationSetDeviceMetricsOverride -> Maybe PageViewport
pEmulationSetDeviceMetricsOverrideViewport :: Maybe PageViewport,
    -- | If set, the display feature of a multi-segment screen. If not set, multi-segment support
    --   is turned-off.
    PEmulationSetDeviceMetricsOverride -> Maybe EmulationDisplayFeature
pEmulationSetDeviceMetricsOverrideDisplayFeature :: Maybe EmulationDisplayFeature
  }
  deriving (PEmulationSetDeviceMetricsOverride
-> PEmulationSetDeviceMetricsOverride -> Bool
(PEmulationSetDeviceMetricsOverride
 -> PEmulationSetDeviceMetricsOverride -> Bool)
-> (PEmulationSetDeviceMetricsOverride
    -> PEmulationSetDeviceMetricsOverride -> Bool)
-> Eq PEmulationSetDeviceMetricsOverride
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PEmulationSetDeviceMetricsOverride
-> PEmulationSetDeviceMetricsOverride -> Bool
$c/= :: PEmulationSetDeviceMetricsOverride
-> PEmulationSetDeviceMetricsOverride -> Bool
== :: PEmulationSetDeviceMetricsOverride
-> PEmulationSetDeviceMetricsOverride -> Bool
$c== :: PEmulationSetDeviceMetricsOverride
-> PEmulationSetDeviceMetricsOverride -> Bool
Eq, Int -> PEmulationSetDeviceMetricsOverride -> ShowS
[PEmulationSetDeviceMetricsOverride] -> ShowS
PEmulationSetDeviceMetricsOverride -> String
(Int -> PEmulationSetDeviceMetricsOverride -> ShowS)
-> (PEmulationSetDeviceMetricsOverride -> String)
-> ([PEmulationSetDeviceMetricsOverride] -> ShowS)
-> Show PEmulationSetDeviceMetricsOverride
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PEmulationSetDeviceMetricsOverride] -> ShowS
$cshowList :: [PEmulationSetDeviceMetricsOverride] -> ShowS
show :: PEmulationSetDeviceMetricsOverride -> String
$cshow :: PEmulationSetDeviceMetricsOverride -> String
showsPrec :: Int -> PEmulationSetDeviceMetricsOverride -> ShowS
$cshowsPrec :: Int -> PEmulationSetDeviceMetricsOverride -> ShowS
Show)
pEmulationSetDeviceMetricsOverride
  {-
  -- | Overriding width value in pixels (minimum 0, maximum 10000000). 0 disables the override.
  -}
  :: Int
  {-
  -- | Overriding height value in pixels (minimum 0, maximum 10000000). 0 disables the override.
  -}
  -> Int
  {-
  -- | Overriding device scale factor value. 0 disables the override.
  -}
  -> Double
  {-
  -- | Whether to emulate mobile device. This includes viewport meta tag, overlay scrollbars, text
  --   autosizing and more.
  -}
  -> Bool
  -> PEmulationSetDeviceMetricsOverride
pEmulationSetDeviceMetricsOverride :: Int -> Int -> Double -> Bool -> PEmulationSetDeviceMetricsOverride
pEmulationSetDeviceMetricsOverride
  Int
arg_pEmulationSetDeviceMetricsOverrideWidth
  Int
arg_pEmulationSetDeviceMetricsOverrideHeight
  Double
arg_pEmulationSetDeviceMetricsOverrideDeviceScaleFactor
  Bool
arg_pEmulationSetDeviceMetricsOverrideMobile
  = Int
-> Int
-> Double
-> Bool
-> Maybe Double
-> Maybe Int
-> Maybe Int
-> Maybe Int
-> Maybe Int
-> Maybe Bool
-> Maybe EmulationScreenOrientation
-> Maybe PageViewport
-> Maybe EmulationDisplayFeature
-> PEmulationSetDeviceMetricsOverride
PEmulationSetDeviceMetricsOverride
    Int
arg_pEmulationSetDeviceMetricsOverrideWidth
    Int
arg_pEmulationSetDeviceMetricsOverrideHeight
    Double
arg_pEmulationSetDeviceMetricsOverrideDeviceScaleFactor
    Bool
arg_pEmulationSetDeviceMetricsOverrideMobile
    Maybe Double
forall a. Maybe a
Nothing
    Maybe Int
forall a. Maybe a
Nothing
    Maybe Int
forall a. Maybe a
Nothing
    Maybe Int
forall a. Maybe a
Nothing
    Maybe Int
forall a. Maybe a
Nothing
    Maybe Bool
forall a. Maybe a
Nothing
    Maybe EmulationScreenOrientation
forall a. Maybe a
Nothing
    Maybe PageViewport
forall a. Maybe a
Nothing
    Maybe EmulationDisplayFeature
forall a. Maybe a
Nothing
instance ToJSON PEmulationSetDeviceMetricsOverride where
  toJSON :: PEmulationSetDeviceMetricsOverride -> Value
toJSON PEmulationSetDeviceMetricsOverride
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"width" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PEmulationSetDeviceMetricsOverride -> Int
pEmulationSetDeviceMetricsOverrideWidth PEmulationSetDeviceMetricsOverride
p),
    (Text
"height" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PEmulationSetDeviceMetricsOverride -> Int
pEmulationSetDeviceMetricsOverrideHeight PEmulationSetDeviceMetricsOverride
p),
    (Text
"deviceScaleFactor" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (PEmulationSetDeviceMetricsOverride -> Double
pEmulationSetDeviceMetricsOverrideDeviceScaleFactor PEmulationSetDeviceMetricsOverride
p),
    (Text
"mobile" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (PEmulationSetDeviceMetricsOverride -> Bool
pEmulationSetDeviceMetricsOverrideMobile PEmulationSetDeviceMetricsOverride
p),
    (Text
"scale" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PEmulationSetDeviceMetricsOverride -> Maybe Double
pEmulationSetDeviceMetricsOverrideScale PEmulationSetDeviceMetricsOverride
p),
    (Text
"screenWidth" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PEmulationSetDeviceMetricsOverride -> Maybe Int
pEmulationSetDeviceMetricsOverrideScreenWidth PEmulationSetDeviceMetricsOverride
p),
    (Text
"screenHeight" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PEmulationSetDeviceMetricsOverride -> Maybe Int
pEmulationSetDeviceMetricsOverrideScreenHeight PEmulationSetDeviceMetricsOverride
p),
    (Text
"positionX" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PEmulationSetDeviceMetricsOverride -> Maybe Int
pEmulationSetDeviceMetricsOverridePositionX PEmulationSetDeviceMetricsOverride
p),
    (Text
"positionY" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PEmulationSetDeviceMetricsOverride -> Maybe Int
pEmulationSetDeviceMetricsOverridePositionY PEmulationSetDeviceMetricsOverride
p),
    (Text
"dontSetVisibleSize" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PEmulationSetDeviceMetricsOverride -> Maybe Bool
pEmulationSetDeviceMetricsOverrideDontSetVisibleSize PEmulationSetDeviceMetricsOverride
p),
    (Text
"screenOrientation" Text -> EmulationScreenOrientation -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (EmulationScreenOrientation -> Pair)
-> Maybe EmulationScreenOrientation -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PEmulationSetDeviceMetricsOverride
-> Maybe EmulationScreenOrientation
pEmulationSetDeviceMetricsOverrideScreenOrientation PEmulationSetDeviceMetricsOverride
p),
    (Text
"viewport" Text -> PageViewport -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (PageViewport -> Pair) -> Maybe PageViewport -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PEmulationSetDeviceMetricsOverride -> Maybe PageViewport
pEmulationSetDeviceMetricsOverrideViewport PEmulationSetDeviceMetricsOverride
p),
    (Text
"displayFeature" Text -> EmulationDisplayFeature -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (EmulationDisplayFeature -> Pair)
-> Maybe EmulationDisplayFeature -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PEmulationSetDeviceMetricsOverride -> Maybe EmulationDisplayFeature
pEmulationSetDeviceMetricsOverrideDisplayFeature PEmulationSetDeviceMetricsOverride
p)
    ]
instance Command PEmulationSetDeviceMetricsOverride where
  type CommandResponse PEmulationSetDeviceMetricsOverride = ()
  commandName :: Proxy PEmulationSetDeviceMetricsOverride -> String
commandName Proxy PEmulationSetDeviceMetricsOverride
_ = String
"Emulation.setDeviceMetricsOverride"
  fromJSON :: Proxy PEmulationSetDeviceMetricsOverride
-> Value
-> Result (CommandResponse PEmulationSetDeviceMetricsOverride)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PEmulationSetDeviceMetricsOverride -> Result ())
-> Proxy PEmulationSetDeviceMetricsOverride
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PEmulationSetDeviceMetricsOverride -> ())
-> Proxy PEmulationSetDeviceMetricsOverride
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PEmulationSetDeviceMetricsOverride -> ()
forall a b. a -> b -> a
const ()


-- | Parameters of the 'Emulation.setScrollbarsHidden' command.
data PEmulationSetScrollbarsHidden = PEmulationSetScrollbarsHidden
  {
    -- | Whether scrollbars should be always hidden.
    PEmulationSetScrollbarsHidden -> Bool
pEmulationSetScrollbarsHiddenHidden :: Bool
  }
  deriving (PEmulationSetScrollbarsHidden
-> PEmulationSetScrollbarsHidden -> Bool
(PEmulationSetScrollbarsHidden
 -> PEmulationSetScrollbarsHidden -> Bool)
-> (PEmulationSetScrollbarsHidden
    -> PEmulationSetScrollbarsHidden -> Bool)
-> Eq PEmulationSetScrollbarsHidden
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PEmulationSetScrollbarsHidden
-> PEmulationSetScrollbarsHidden -> Bool
$c/= :: PEmulationSetScrollbarsHidden
-> PEmulationSetScrollbarsHidden -> Bool
== :: PEmulationSetScrollbarsHidden
-> PEmulationSetScrollbarsHidden -> Bool
$c== :: PEmulationSetScrollbarsHidden
-> PEmulationSetScrollbarsHidden -> Bool
Eq, Int -> PEmulationSetScrollbarsHidden -> ShowS
[PEmulationSetScrollbarsHidden] -> ShowS
PEmulationSetScrollbarsHidden -> String
(Int -> PEmulationSetScrollbarsHidden -> ShowS)
-> (PEmulationSetScrollbarsHidden -> String)
-> ([PEmulationSetScrollbarsHidden] -> ShowS)
-> Show PEmulationSetScrollbarsHidden
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PEmulationSetScrollbarsHidden] -> ShowS
$cshowList :: [PEmulationSetScrollbarsHidden] -> ShowS
show :: PEmulationSetScrollbarsHidden -> String
$cshow :: PEmulationSetScrollbarsHidden -> String
showsPrec :: Int -> PEmulationSetScrollbarsHidden -> ShowS
$cshowsPrec :: Int -> PEmulationSetScrollbarsHidden -> ShowS
Show)
pEmulationSetScrollbarsHidden
  {-
  -- | Whether scrollbars should be always hidden.
  -}
  :: Bool
  -> PEmulationSetScrollbarsHidden
pEmulationSetScrollbarsHidden :: Bool -> PEmulationSetScrollbarsHidden
pEmulationSetScrollbarsHidden
  Bool
arg_pEmulationSetScrollbarsHiddenHidden
  = Bool -> PEmulationSetScrollbarsHidden
PEmulationSetScrollbarsHidden
    Bool
arg_pEmulationSetScrollbarsHiddenHidden
instance ToJSON PEmulationSetScrollbarsHidden where
  toJSON :: PEmulationSetScrollbarsHidden -> Value
toJSON PEmulationSetScrollbarsHidden
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"hidden" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (PEmulationSetScrollbarsHidden -> Bool
pEmulationSetScrollbarsHiddenHidden PEmulationSetScrollbarsHidden
p)
    ]
instance Command PEmulationSetScrollbarsHidden where
  type CommandResponse PEmulationSetScrollbarsHidden = ()
  commandName :: Proxy PEmulationSetScrollbarsHidden -> String
commandName Proxy PEmulationSetScrollbarsHidden
_ = String
"Emulation.setScrollbarsHidden"
  fromJSON :: Proxy PEmulationSetScrollbarsHidden
-> Value -> Result (CommandResponse PEmulationSetScrollbarsHidden)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PEmulationSetScrollbarsHidden -> Result ())
-> Proxy PEmulationSetScrollbarsHidden
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PEmulationSetScrollbarsHidden -> ())
-> Proxy PEmulationSetScrollbarsHidden
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PEmulationSetScrollbarsHidden -> ()
forall a b. a -> b -> a
const ()


-- | Parameters of the 'Emulation.setDocumentCookieDisabled' command.
data PEmulationSetDocumentCookieDisabled = PEmulationSetDocumentCookieDisabled
  {
    -- | Whether document.coookie API should be disabled.
    PEmulationSetDocumentCookieDisabled -> Bool
pEmulationSetDocumentCookieDisabledDisabled :: Bool
  }
  deriving (PEmulationSetDocumentCookieDisabled
-> PEmulationSetDocumentCookieDisabled -> Bool
(PEmulationSetDocumentCookieDisabled
 -> PEmulationSetDocumentCookieDisabled -> Bool)
-> (PEmulationSetDocumentCookieDisabled
    -> PEmulationSetDocumentCookieDisabled -> Bool)
-> Eq PEmulationSetDocumentCookieDisabled
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PEmulationSetDocumentCookieDisabled
-> PEmulationSetDocumentCookieDisabled -> Bool
$c/= :: PEmulationSetDocumentCookieDisabled
-> PEmulationSetDocumentCookieDisabled -> Bool
== :: PEmulationSetDocumentCookieDisabled
-> PEmulationSetDocumentCookieDisabled -> Bool
$c== :: PEmulationSetDocumentCookieDisabled
-> PEmulationSetDocumentCookieDisabled -> Bool
Eq, Int -> PEmulationSetDocumentCookieDisabled -> ShowS
[PEmulationSetDocumentCookieDisabled] -> ShowS
PEmulationSetDocumentCookieDisabled -> String
(Int -> PEmulationSetDocumentCookieDisabled -> ShowS)
-> (PEmulationSetDocumentCookieDisabled -> String)
-> ([PEmulationSetDocumentCookieDisabled] -> ShowS)
-> Show PEmulationSetDocumentCookieDisabled
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PEmulationSetDocumentCookieDisabled] -> ShowS
$cshowList :: [PEmulationSetDocumentCookieDisabled] -> ShowS
show :: PEmulationSetDocumentCookieDisabled -> String
$cshow :: PEmulationSetDocumentCookieDisabled -> String
showsPrec :: Int -> PEmulationSetDocumentCookieDisabled -> ShowS
$cshowsPrec :: Int -> PEmulationSetDocumentCookieDisabled -> ShowS
Show)
pEmulationSetDocumentCookieDisabled
  {-
  -- | Whether document.coookie API should be disabled.
  -}
  :: Bool
  -> PEmulationSetDocumentCookieDisabled
pEmulationSetDocumentCookieDisabled :: Bool -> PEmulationSetDocumentCookieDisabled
pEmulationSetDocumentCookieDisabled
  Bool
arg_pEmulationSetDocumentCookieDisabledDisabled
  = Bool -> PEmulationSetDocumentCookieDisabled
PEmulationSetDocumentCookieDisabled
    Bool
arg_pEmulationSetDocumentCookieDisabledDisabled
instance ToJSON PEmulationSetDocumentCookieDisabled where
  toJSON :: PEmulationSetDocumentCookieDisabled -> Value
toJSON PEmulationSetDocumentCookieDisabled
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"disabled" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (PEmulationSetDocumentCookieDisabled -> Bool
pEmulationSetDocumentCookieDisabledDisabled PEmulationSetDocumentCookieDisabled
p)
    ]
instance Command PEmulationSetDocumentCookieDisabled where
  type CommandResponse PEmulationSetDocumentCookieDisabled = ()
  commandName :: Proxy PEmulationSetDocumentCookieDisabled -> String
commandName Proxy PEmulationSetDocumentCookieDisabled
_ = String
"Emulation.setDocumentCookieDisabled"
  fromJSON :: Proxy PEmulationSetDocumentCookieDisabled
-> Value
-> Result (CommandResponse PEmulationSetDocumentCookieDisabled)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PEmulationSetDocumentCookieDisabled -> Result ())
-> Proxy PEmulationSetDocumentCookieDisabled
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PEmulationSetDocumentCookieDisabled -> ())
-> Proxy PEmulationSetDocumentCookieDisabled
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PEmulationSetDocumentCookieDisabled -> ()
forall a b. a -> b -> a
const ()


-- | Parameters of the 'Emulation.setEmitTouchEventsForMouse' command.
data PEmulationSetEmitTouchEventsForMouseConfiguration = PEmulationSetEmitTouchEventsForMouseConfigurationMobile | PEmulationSetEmitTouchEventsForMouseConfigurationDesktop
  deriving (Eq PEmulationSetEmitTouchEventsForMouseConfiguration
Eq PEmulationSetEmitTouchEventsForMouseConfiguration
-> (PEmulationSetEmitTouchEventsForMouseConfiguration
    -> PEmulationSetEmitTouchEventsForMouseConfiguration -> Ordering)
-> (PEmulationSetEmitTouchEventsForMouseConfiguration
    -> PEmulationSetEmitTouchEventsForMouseConfiguration -> Bool)
-> (PEmulationSetEmitTouchEventsForMouseConfiguration
    -> PEmulationSetEmitTouchEventsForMouseConfiguration -> Bool)
-> (PEmulationSetEmitTouchEventsForMouseConfiguration
    -> PEmulationSetEmitTouchEventsForMouseConfiguration -> Bool)
-> (PEmulationSetEmitTouchEventsForMouseConfiguration
    -> PEmulationSetEmitTouchEventsForMouseConfiguration -> Bool)
-> (PEmulationSetEmitTouchEventsForMouseConfiguration
    -> PEmulationSetEmitTouchEventsForMouseConfiguration
    -> PEmulationSetEmitTouchEventsForMouseConfiguration)
-> (PEmulationSetEmitTouchEventsForMouseConfiguration
    -> PEmulationSetEmitTouchEventsForMouseConfiguration
    -> PEmulationSetEmitTouchEventsForMouseConfiguration)
-> Ord PEmulationSetEmitTouchEventsForMouseConfiguration
PEmulationSetEmitTouchEventsForMouseConfiguration
-> PEmulationSetEmitTouchEventsForMouseConfiguration -> Bool
PEmulationSetEmitTouchEventsForMouseConfiguration
-> PEmulationSetEmitTouchEventsForMouseConfiguration -> Ordering
PEmulationSetEmitTouchEventsForMouseConfiguration
-> PEmulationSetEmitTouchEventsForMouseConfiguration
-> PEmulationSetEmitTouchEventsForMouseConfiguration
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: PEmulationSetEmitTouchEventsForMouseConfiguration
-> PEmulationSetEmitTouchEventsForMouseConfiguration
-> PEmulationSetEmitTouchEventsForMouseConfiguration
$cmin :: PEmulationSetEmitTouchEventsForMouseConfiguration
-> PEmulationSetEmitTouchEventsForMouseConfiguration
-> PEmulationSetEmitTouchEventsForMouseConfiguration
max :: PEmulationSetEmitTouchEventsForMouseConfiguration
-> PEmulationSetEmitTouchEventsForMouseConfiguration
-> PEmulationSetEmitTouchEventsForMouseConfiguration
$cmax :: PEmulationSetEmitTouchEventsForMouseConfiguration
-> PEmulationSetEmitTouchEventsForMouseConfiguration
-> PEmulationSetEmitTouchEventsForMouseConfiguration
>= :: PEmulationSetEmitTouchEventsForMouseConfiguration
-> PEmulationSetEmitTouchEventsForMouseConfiguration -> Bool
$c>= :: PEmulationSetEmitTouchEventsForMouseConfiguration
-> PEmulationSetEmitTouchEventsForMouseConfiguration -> Bool
> :: PEmulationSetEmitTouchEventsForMouseConfiguration
-> PEmulationSetEmitTouchEventsForMouseConfiguration -> Bool
$c> :: PEmulationSetEmitTouchEventsForMouseConfiguration
-> PEmulationSetEmitTouchEventsForMouseConfiguration -> Bool
<= :: PEmulationSetEmitTouchEventsForMouseConfiguration
-> PEmulationSetEmitTouchEventsForMouseConfiguration -> Bool
$c<= :: PEmulationSetEmitTouchEventsForMouseConfiguration
-> PEmulationSetEmitTouchEventsForMouseConfiguration -> Bool
< :: PEmulationSetEmitTouchEventsForMouseConfiguration
-> PEmulationSetEmitTouchEventsForMouseConfiguration -> Bool
$c< :: PEmulationSetEmitTouchEventsForMouseConfiguration
-> PEmulationSetEmitTouchEventsForMouseConfiguration -> Bool
compare :: PEmulationSetEmitTouchEventsForMouseConfiguration
-> PEmulationSetEmitTouchEventsForMouseConfiguration -> Ordering
$ccompare :: PEmulationSetEmitTouchEventsForMouseConfiguration
-> PEmulationSetEmitTouchEventsForMouseConfiguration -> Ordering
$cp1Ord :: Eq PEmulationSetEmitTouchEventsForMouseConfiguration
Ord, PEmulationSetEmitTouchEventsForMouseConfiguration
-> PEmulationSetEmitTouchEventsForMouseConfiguration -> Bool
(PEmulationSetEmitTouchEventsForMouseConfiguration
 -> PEmulationSetEmitTouchEventsForMouseConfiguration -> Bool)
-> (PEmulationSetEmitTouchEventsForMouseConfiguration
    -> PEmulationSetEmitTouchEventsForMouseConfiguration -> Bool)
-> Eq PEmulationSetEmitTouchEventsForMouseConfiguration
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PEmulationSetEmitTouchEventsForMouseConfiguration
-> PEmulationSetEmitTouchEventsForMouseConfiguration -> Bool
$c/= :: PEmulationSetEmitTouchEventsForMouseConfiguration
-> PEmulationSetEmitTouchEventsForMouseConfiguration -> Bool
== :: PEmulationSetEmitTouchEventsForMouseConfiguration
-> PEmulationSetEmitTouchEventsForMouseConfiguration -> Bool
$c== :: PEmulationSetEmitTouchEventsForMouseConfiguration
-> PEmulationSetEmitTouchEventsForMouseConfiguration -> Bool
Eq, Int -> PEmulationSetEmitTouchEventsForMouseConfiguration -> ShowS
[PEmulationSetEmitTouchEventsForMouseConfiguration] -> ShowS
PEmulationSetEmitTouchEventsForMouseConfiguration -> String
(Int -> PEmulationSetEmitTouchEventsForMouseConfiguration -> ShowS)
-> (PEmulationSetEmitTouchEventsForMouseConfiguration -> String)
-> ([PEmulationSetEmitTouchEventsForMouseConfiguration] -> ShowS)
-> Show PEmulationSetEmitTouchEventsForMouseConfiguration
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PEmulationSetEmitTouchEventsForMouseConfiguration] -> ShowS
$cshowList :: [PEmulationSetEmitTouchEventsForMouseConfiguration] -> ShowS
show :: PEmulationSetEmitTouchEventsForMouseConfiguration -> String
$cshow :: PEmulationSetEmitTouchEventsForMouseConfiguration -> String
showsPrec :: Int -> PEmulationSetEmitTouchEventsForMouseConfiguration -> ShowS
$cshowsPrec :: Int -> PEmulationSetEmitTouchEventsForMouseConfiguration -> ShowS
Show, ReadPrec [PEmulationSetEmitTouchEventsForMouseConfiguration]
ReadPrec PEmulationSetEmitTouchEventsForMouseConfiguration
Int -> ReadS PEmulationSetEmitTouchEventsForMouseConfiguration
ReadS [PEmulationSetEmitTouchEventsForMouseConfiguration]
(Int -> ReadS PEmulationSetEmitTouchEventsForMouseConfiguration)
-> ReadS [PEmulationSetEmitTouchEventsForMouseConfiguration]
-> ReadPrec PEmulationSetEmitTouchEventsForMouseConfiguration
-> ReadPrec [PEmulationSetEmitTouchEventsForMouseConfiguration]
-> Read PEmulationSetEmitTouchEventsForMouseConfiguration
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PEmulationSetEmitTouchEventsForMouseConfiguration]
$creadListPrec :: ReadPrec [PEmulationSetEmitTouchEventsForMouseConfiguration]
readPrec :: ReadPrec PEmulationSetEmitTouchEventsForMouseConfiguration
$creadPrec :: ReadPrec PEmulationSetEmitTouchEventsForMouseConfiguration
readList :: ReadS [PEmulationSetEmitTouchEventsForMouseConfiguration]
$creadList :: ReadS [PEmulationSetEmitTouchEventsForMouseConfiguration]
readsPrec :: Int -> ReadS PEmulationSetEmitTouchEventsForMouseConfiguration
$creadsPrec :: Int -> ReadS PEmulationSetEmitTouchEventsForMouseConfiguration
Read)
instance FromJSON PEmulationSetEmitTouchEventsForMouseConfiguration where
  parseJSON :: Value -> Parser PEmulationSetEmitTouchEventsForMouseConfiguration
parseJSON = String
-> (Text
    -> Parser PEmulationSetEmitTouchEventsForMouseConfiguration)
-> Value
-> Parser PEmulationSetEmitTouchEventsForMouseConfiguration
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"PEmulationSetEmitTouchEventsForMouseConfiguration" ((Text -> Parser PEmulationSetEmitTouchEventsForMouseConfiguration)
 -> Value
 -> Parser PEmulationSetEmitTouchEventsForMouseConfiguration)
-> (Text
    -> Parser PEmulationSetEmitTouchEventsForMouseConfiguration)
-> Value
-> Parser PEmulationSetEmitTouchEventsForMouseConfiguration
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"mobile" -> PEmulationSetEmitTouchEventsForMouseConfiguration
-> Parser PEmulationSetEmitTouchEventsForMouseConfiguration
forall (f :: * -> *) a. Applicative f => a -> f a
pure PEmulationSetEmitTouchEventsForMouseConfiguration
PEmulationSetEmitTouchEventsForMouseConfigurationMobile
    Text
"desktop" -> PEmulationSetEmitTouchEventsForMouseConfiguration
-> Parser PEmulationSetEmitTouchEventsForMouseConfiguration
forall (f :: * -> *) a. Applicative f => a -> f a
pure PEmulationSetEmitTouchEventsForMouseConfiguration
PEmulationSetEmitTouchEventsForMouseConfigurationDesktop
    Text
"_" -> String -> Parser PEmulationSetEmitTouchEventsForMouseConfiguration
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse PEmulationSetEmitTouchEventsForMouseConfiguration"
instance ToJSON PEmulationSetEmitTouchEventsForMouseConfiguration where
  toJSON :: PEmulationSetEmitTouchEventsForMouseConfiguration -> Value
toJSON PEmulationSetEmitTouchEventsForMouseConfiguration
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case PEmulationSetEmitTouchEventsForMouseConfiguration
v of
    PEmulationSetEmitTouchEventsForMouseConfiguration
PEmulationSetEmitTouchEventsForMouseConfigurationMobile -> Text
"mobile"
    PEmulationSetEmitTouchEventsForMouseConfiguration
PEmulationSetEmitTouchEventsForMouseConfigurationDesktop -> Text
"desktop"
data PEmulationSetEmitTouchEventsForMouse = PEmulationSetEmitTouchEventsForMouse
  {
    -- | Whether touch emulation based on mouse input should be enabled.
    PEmulationSetEmitTouchEventsForMouse -> Bool
pEmulationSetEmitTouchEventsForMouseEnabled :: Bool,
    -- | Touch/gesture events configuration. Default: current platform.
    PEmulationSetEmitTouchEventsForMouse
-> Maybe PEmulationSetEmitTouchEventsForMouseConfiguration
pEmulationSetEmitTouchEventsForMouseConfiguration :: Maybe PEmulationSetEmitTouchEventsForMouseConfiguration
  }
  deriving (PEmulationSetEmitTouchEventsForMouse
-> PEmulationSetEmitTouchEventsForMouse -> Bool
(PEmulationSetEmitTouchEventsForMouse
 -> PEmulationSetEmitTouchEventsForMouse -> Bool)
-> (PEmulationSetEmitTouchEventsForMouse
    -> PEmulationSetEmitTouchEventsForMouse -> Bool)
-> Eq PEmulationSetEmitTouchEventsForMouse
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PEmulationSetEmitTouchEventsForMouse
-> PEmulationSetEmitTouchEventsForMouse -> Bool
$c/= :: PEmulationSetEmitTouchEventsForMouse
-> PEmulationSetEmitTouchEventsForMouse -> Bool
== :: PEmulationSetEmitTouchEventsForMouse
-> PEmulationSetEmitTouchEventsForMouse -> Bool
$c== :: PEmulationSetEmitTouchEventsForMouse
-> PEmulationSetEmitTouchEventsForMouse -> Bool
Eq, Int -> PEmulationSetEmitTouchEventsForMouse -> ShowS
[PEmulationSetEmitTouchEventsForMouse] -> ShowS
PEmulationSetEmitTouchEventsForMouse -> String
(Int -> PEmulationSetEmitTouchEventsForMouse -> ShowS)
-> (PEmulationSetEmitTouchEventsForMouse -> String)
-> ([PEmulationSetEmitTouchEventsForMouse] -> ShowS)
-> Show PEmulationSetEmitTouchEventsForMouse
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PEmulationSetEmitTouchEventsForMouse] -> ShowS
$cshowList :: [PEmulationSetEmitTouchEventsForMouse] -> ShowS
show :: PEmulationSetEmitTouchEventsForMouse -> String
$cshow :: PEmulationSetEmitTouchEventsForMouse -> String
showsPrec :: Int -> PEmulationSetEmitTouchEventsForMouse -> ShowS
$cshowsPrec :: Int -> PEmulationSetEmitTouchEventsForMouse -> ShowS
Show)
pEmulationSetEmitTouchEventsForMouse
  {-
  -- | Whether touch emulation based on mouse input should be enabled.
  -}
  :: Bool
  -> PEmulationSetEmitTouchEventsForMouse
pEmulationSetEmitTouchEventsForMouse :: Bool -> PEmulationSetEmitTouchEventsForMouse
pEmulationSetEmitTouchEventsForMouse
  Bool
arg_pEmulationSetEmitTouchEventsForMouseEnabled
  = Bool
-> Maybe PEmulationSetEmitTouchEventsForMouseConfiguration
-> PEmulationSetEmitTouchEventsForMouse
PEmulationSetEmitTouchEventsForMouse
    Bool
arg_pEmulationSetEmitTouchEventsForMouseEnabled
    Maybe PEmulationSetEmitTouchEventsForMouseConfiguration
forall a. Maybe a
Nothing
instance ToJSON PEmulationSetEmitTouchEventsForMouse where
  toJSON :: PEmulationSetEmitTouchEventsForMouse -> Value
toJSON PEmulationSetEmitTouchEventsForMouse
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"enabled" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (PEmulationSetEmitTouchEventsForMouse -> Bool
pEmulationSetEmitTouchEventsForMouseEnabled PEmulationSetEmitTouchEventsForMouse
p),
    (Text
"configuration" Text -> PEmulationSetEmitTouchEventsForMouseConfiguration -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (PEmulationSetEmitTouchEventsForMouseConfiguration -> Pair)
-> Maybe PEmulationSetEmitTouchEventsForMouseConfiguration
-> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PEmulationSetEmitTouchEventsForMouse
-> Maybe PEmulationSetEmitTouchEventsForMouseConfiguration
pEmulationSetEmitTouchEventsForMouseConfiguration PEmulationSetEmitTouchEventsForMouse
p)
    ]
instance Command PEmulationSetEmitTouchEventsForMouse where
  type CommandResponse PEmulationSetEmitTouchEventsForMouse = ()
  commandName :: Proxy PEmulationSetEmitTouchEventsForMouse -> String
commandName Proxy PEmulationSetEmitTouchEventsForMouse
_ = String
"Emulation.setEmitTouchEventsForMouse"
  fromJSON :: Proxy PEmulationSetEmitTouchEventsForMouse
-> Value
-> Result (CommandResponse PEmulationSetEmitTouchEventsForMouse)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PEmulationSetEmitTouchEventsForMouse -> Result ())
-> Proxy PEmulationSetEmitTouchEventsForMouse
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PEmulationSetEmitTouchEventsForMouse -> ())
-> Proxy PEmulationSetEmitTouchEventsForMouse
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PEmulationSetEmitTouchEventsForMouse -> ()
forall a b. a -> b -> a
const ()

-- | Emulates the given media type or media feature for CSS media queries.

-- | Parameters of the 'Emulation.setEmulatedMedia' command.
data PEmulationSetEmulatedMedia = PEmulationSetEmulatedMedia
  {
    -- | Media type to emulate. Empty string disables the override.
    PEmulationSetEmulatedMedia -> Maybe Text
pEmulationSetEmulatedMediaMedia :: Maybe T.Text,
    -- | Media features to emulate.
    PEmulationSetEmulatedMedia -> Maybe [EmulationMediaFeature]
pEmulationSetEmulatedMediaFeatures :: Maybe [EmulationMediaFeature]
  }
  deriving (PEmulationSetEmulatedMedia -> PEmulationSetEmulatedMedia -> Bool
(PEmulationSetEmulatedMedia -> PEmulationSetEmulatedMedia -> Bool)
-> (PEmulationSetEmulatedMedia
    -> PEmulationSetEmulatedMedia -> Bool)
-> Eq PEmulationSetEmulatedMedia
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PEmulationSetEmulatedMedia -> PEmulationSetEmulatedMedia -> Bool
$c/= :: PEmulationSetEmulatedMedia -> PEmulationSetEmulatedMedia -> Bool
== :: PEmulationSetEmulatedMedia -> PEmulationSetEmulatedMedia -> Bool
$c== :: PEmulationSetEmulatedMedia -> PEmulationSetEmulatedMedia -> Bool
Eq, Int -> PEmulationSetEmulatedMedia -> ShowS
[PEmulationSetEmulatedMedia] -> ShowS
PEmulationSetEmulatedMedia -> String
(Int -> PEmulationSetEmulatedMedia -> ShowS)
-> (PEmulationSetEmulatedMedia -> String)
-> ([PEmulationSetEmulatedMedia] -> ShowS)
-> Show PEmulationSetEmulatedMedia
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PEmulationSetEmulatedMedia] -> ShowS
$cshowList :: [PEmulationSetEmulatedMedia] -> ShowS
show :: PEmulationSetEmulatedMedia -> String
$cshow :: PEmulationSetEmulatedMedia -> String
showsPrec :: Int -> PEmulationSetEmulatedMedia -> ShowS
$cshowsPrec :: Int -> PEmulationSetEmulatedMedia -> ShowS
Show)
pEmulationSetEmulatedMedia
  :: PEmulationSetEmulatedMedia
pEmulationSetEmulatedMedia :: PEmulationSetEmulatedMedia
pEmulationSetEmulatedMedia
  = Maybe Text
-> Maybe [EmulationMediaFeature] -> PEmulationSetEmulatedMedia
PEmulationSetEmulatedMedia
    Maybe Text
forall a. Maybe a
Nothing
    Maybe [EmulationMediaFeature]
forall a. Maybe a
Nothing
instance ToJSON PEmulationSetEmulatedMedia where
  toJSON :: PEmulationSetEmulatedMedia -> Value
toJSON PEmulationSetEmulatedMedia
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"media" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PEmulationSetEmulatedMedia -> Maybe Text
pEmulationSetEmulatedMediaMedia PEmulationSetEmulatedMedia
p),
    (Text
"features" Text -> [EmulationMediaFeature] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([EmulationMediaFeature] -> Pair)
-> Maybe [EmulationMediaFeature] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PEmulationSetEmulatedMedia -> Maybe [EmulationMediaFeature]
pEmulationSetEmulatedMediaFeatures PEmulationSetEmulatedMedia
p)
    ]
instance Command PEmulationSetEmulatedMedia where
  type CommandResponse PEmulationSetEmulatedMedia = ()
  commandName :: Proxy PEmulationSetEmulatedMedia -> String
commandName Proxy PEmulationSetEmulatedMedia
_ = String
"Emulation.setEmulatedMedia"
  fromJSON :: Proxy PEmulationSetEmulatedMedia
-> Value -> Result (CommandResponse PEmulationSetEmulatedMedia)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PEmulationSetEmulatedMedia -> Result ())
-> Proxy PEmulationSetEmulatedMedia
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PEmulationSetEmulatedMedia -> ())
-> Proxy PEmulationSetEmulatedMedia
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PEmulationSetEmulatedMedia -> ()
forall a b. a -> b -> a
const ()

-- | Emulates the given vision deficiency.

-- | Parameters of the 'Emulation.setEmulatedVisionDeficiency' command.
data PEmulationSetEmulatedVisionDeficiencyType = PEmulationSetEmulatedVisionDeficiencyTypeNone | PEmulationSetEmulatedVisionDeficiencyTypeAchromatopsia | PEmulationSetEmulatedVisionDeficiencyTypeBlurredVision | PEmulationSetEmulatedVisionDeficiencyTypeDeuteranopia | PEmulationSetEmulatedVisionDeficiencyTypeProtanopia | PEmulationSetEmulatedVisionDeficiencyTypeTritanopia
  deriving (Eq PEmulationSetEmulatedVisionDeficiencyType
Eq PEmulationSetEmulatedVisionDeficiencyType
-> (PEmulationSetEmulatedVisionDeficiencyType
    -> PEmulationSetEmulatedVisionDeficiencyType -> Ordering)
-> (PEmulationSetEmulatedVisionDeficiencyType
    -> PEmulationSetEmulatedVisionDeficiencyType -> Bool)
-> (PEmulationSetEmulatedVisionDeficiencyType
    -> PEmulationSetEmulatedVisionDeficiencyType -> Bool)
-> (PEmulationSetEmulatedVisionDeficiencyType
    -> PEmulationSetEmulatedVisionDeficiencyType -> Bool)
-> (PEmulationSetEmulatedVisionDeficiencyType
    -> PEmulationSetEmulatedVisionDeficiencyType -> Bool)
-> (PEmulationSetEmulatedVisionDeficiencyType
    -> PEmulationSetEmulatedVisionDeficiencyType
    -> PEmulationSetEmulatedVisionDeficiencyType)
-> (PEmulationSetEmulatedVisionDeficiencyType
    -> PEmulationSetEmulatedVisionDeficiencyType
    -> PEmulationSetEmulatedVisionDeficiencyType)
-> Ord PEmulationSetEmulatedVisionDeficiencyType
PEmulationSetEmulatedVisionDeficiencyType
-> PEmulationSetEmulatedVisionDeficiencyType -> Bool
PEmulationSetEmulatedVisionDeficiencyType
-> PEmulationSetEmulatedVisionDeficiencyType -> Ordering
PEmulationSetEmulatedVisionDeficiencyType
-> PEmulationSetEmulatedVisionDeficiencyType
-> PEmulationSetEmulatedVisionDeficiencyType
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: PEmulationSetEmulatedVisionDeficiencyType
-> PEmulationSetEmulatedVisionDeficiencyType
-> PEmulationSetEmulatedVisionDeficiencyType
$cmin :: PEmulationSetEmulatedVisionDeficiencyType
-> PEmulationSetEmulatedVisionDeficiencyType
-> PEmulationSetEmulatedVisionDeficiencyType
max :: PEmulationSetEmulatedVisionDeficiencyType
-> PEmulationSetEmulatedVisionDeficiencyType
-> PEmulationSetEmulatedVisionDeficiencyType
$cmax :: PEmulationSetEmulatedVisionDeficiencyType
-> PEmulationSetEmulatedVisionDeficiencyType
-> PEmulationSetEmulatedVisionDeficiencyType
>= :: PEmulationSetEmulatedVisionDeficiencyType
-> PEmulationSetEmulatedVisionDeficiencyType -> Bool
$c>= :: PEmulationSetEmulatedVisionDeficiencyType
-> PEmulationSetEmulatedVisionDeficiencyType -> Bool
> :: PEmulationSetEmulatedVisionDeficiencyType
-> PEmulationSetEmulatedVisionDeficiencyType -> Bool
$c> :: PEmulationSetEmulatedVisionDeficiencyType
-> PEmulationSetEmulatedVisionDeficiencyType -> Bool
<= :: PEmulationSetEmulatedVisionDeficiencyType
-> PEmulationSetEmulatedVisionDeficiencyType -> Bool
$c<= :: PEmulationSetEmulatedVisionDeficiencyType
-> PEmulationSetEmulatedVisionDeficiencyType -> Bool
< :: PEmulationSetEmulatedVisionDeficiencyType
-> PEmulationSetEmulatedVisionDeficiencyType -> Bool
$c< :: PEmulationSetEmulatedVisionDeficiencyType
-> PEmulationSetEmulatedVisionDeficiencyType -> Bool
compare :: PEmulationSetEmulatedVisionDeficiencyType
-> PEmulationSetEmulatedVisionDeficiencyType -> Ordering
$ccompare :: PEmulationSetEmulatedVisionDeficiencyType
-> PEmulationSetEmulatedVisionDeficiencyType -> Ordering
$cp1Ord :: Eq PEmulationSetEmulatedVisionDeficiencyType
Ord, PEmulationSetEmulatedVisionDeficiencyType
-> PEmulationSetEmulatedVisionDeficiencyType -> Bool
(PEmulationSetEmulatedVisionDeficiencyType
 -> PEmulationSetEmulatedVisionDeficiencyType -> Bool)
-> (PEmulationSetEmulatedVisionDeficiencyType
    -> PEmulationSetEmulatedVisionDeficiencyType -> Bool)
-> Eq PEmulationSetEmulatedVisionDeficiencyType
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PEmulationSetEmulatedVisionDeficiencyType
-> PEmulationSetEmulatedVisionDeficiencyType -> Bool
$c/= :: PEmulationSetEmulatedVisionDeficiencyType
-> PEmulationSetEmulatedVisionDeficiencyType -> Bool
== :: PEmulationSetEmulatedVisionDeficiencyType
-> PEmulationSetEmulatedVisionDeficiencyType -> Bool
$c== :: PEmulationSetEmulatedVisionDeficiencyType
-> PEmulationSetEmulatedVisionDeficiencyType -> Bool
Eq, Int -> PEmulationSetEmulatedVisionDeficiencyType -> ShowS
[PEmulationSetEmulatedVisionDeficiencyType] -> ShowS
PEmulationSetEmulatedVisionDeficiencyType -> String
(Int -> PEmulationSetEmulatedVisionDeficiencyType -> ShowS)
-> (PEmulationSetEmulatedVisionDeficiencyType -> String)
-> ([PEmulationSetEmulatedVisionDeficiencyType] -> ShowS)
-> Show PEmulationSetEmulatedVisionDeficiencyType
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PEmulationSetEmulatedVisionDeficiencyType] -> ShowS
$cshowList :: [PEmulationSetEmulatedVisionDeficiencyType] -> ShowS
show :: PEmulationSetEmulatedVisionDeficiencyType -> String
$cshow :: PEmulationSetEmulatedVisionDeficiencyType -> String
showsPrec :: Int -> PEmulationSetEmulatedVisionDeficiencyType -> ShowS
$cshowsPrec :: Int -> PEmulationSetEmulatedVisionDeficiencyType -> ShowS
Show, ReadPrec [PEmulationSetEmulatedVisionDeficiencyType]
ReadPrec PEmulationSetEmulatedVisionDeficiencyType
Int -> ReadS PEmulationSetEmulatedVisionDeficiencyType
ReadS [PEmulationSetEmulatedVisionDeficiencyType]
(Int -> ReadS PEmulationSetEmulatedVisionDeficiencyType)
-> ReadS [PEmulationSetEmulatedVisionDeficiencyType]
-> ReadPrec PEmulationSetEmulatedVisionDeficiencyType
-> ReadPrec [PEmulationSetEmulatedVisionDeficiencyType]
-> Read PEmulationSetEmulatedVisionDeficiencyType
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PEmulationSetEmulatedVisionDeficiencyType]
$creadListPrec :: ReadPrec [PEmulationSetEmulatedVisionDeficiencyType]
readPrec :: ReadPrec PEmulationSetEmulatedVisionDeficiencyType
$creadPrec :: ReadPrec PEmulationSetEmulatedVisionDeficiencyType
readList :: ReadS [PEmulationSetEmulatedVisionDeficiencyType]
$creadList :: ReadS [PEmulationSetEmulatedVisionDeficiencyType]
readsPrec :: Int -> ReadS PEmulationSetEmulatedVisionDeficiencyType
$creadsPrec :: Int -> ReadS PEmulationSetEmulatedVisionDeficiencyType
Read)
instance FromJSON PEmulationSetEmulatedVisionDeficiencyType where
  parseJSON :: Value -> Parser PEmulationSetEmulatedVisionDeficiencyType
parseJSON = String
-> (Text -> Parser PEmulationSetEmulatedVisionDeficiencyType)
-> Value
-> Parser PEmulationSetEmulatedVisionDeficiencyType
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"PEmulationSetEmulatedVisionDeficiencyType" ((Text -> Parser PEmulationSetEmulatedVisionDeficiencyType)
 -> Value -> Parser PEmulationSetEmulatedVisionDeficiencyType)
-> (Text -> Parser PEmulationSetEmulatedVisionDeficiencyType)
-> Value
-> Parser PEmulationSetEmulatedVisionDeficiencyType
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"none" -> PEmulationSetEmulatedVisionDeficiencyType
-> Parser PEmulationSetEmulatedVisionDeficiencyType
forall (f :: * -> *) a. Applicative f => a -> f a
pure PEmulationSetEmulatedVisionDeficiencyType
PEmulationSetEmulatedVisionDeficiencyTypeNone
    Text
"achromatopsia" -> PEmulationSetEmulatedVisionDeficiencyType
-> Parser PEmulationSetEmulatedVisionDeficiencyType
forall (f :: * -> *) a. Applicative f => a -> f a
pure PEmulationSetEmulatedVisionDeficiencyType
PEmulationSetEmulatedVisionDeficiencyTypeAchromatopsia
    Text
"blurredVision" -> PEmulationSetEmulatedVisionDeficiencyType
-> Parser PEmulationSetEmulatedVisionDeficiencyType
forall (f :: * -> *) a. Applicative f => a -> f a
pure PEmulationSetEmulatedVisionDeficiencyType
PEmulationSetEmulatedVisionDeficiencyTypeBlurredVision
    Text
"deuteranopia" -> PEmulationSetEmulatedVisionDeficiencyType
-> Parser PEmulationSetEmulatedVisionDeficiencyType
forall (f :: * -> *) a. Applicative f => a -> f a
pure PEmulationSetEmulatedVisionDeficiencyType
PEmulationSetEmulatedVisionDeficiencyTypeDeuteranopia
    Text
"protanopia" -> PEmulationSetEmulatedVisionDeficiencyType
-> Parser PEmulationSetEmulatedVisionDeficiencyType
forall (f :: * -> *) a. Applicative f => a -> f a
pure PEmulationSetEmulatedVisionDeficiencyType
PEmulationSetEmulatedVisionDeficiencyTypeProtanopia
    Text
"tritanopia" -> PEmulationSetEmulatedVisionDeficiencyType
-> Parser PEmulationSetEmulatedVisionDeficiencyType
forall (f :: * -> *) a. Applicative f => a -> f a
pure PEmulationSetEmulatedVisionDeficiencyType
PEmulationSetEmulatedVisionDeficiencyTypeTritanopia
    Text
"_" -> String -> Parser PEmulationSetEmulatedVisionDeficiencyType
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse PEmulationSetEmulatedVisionDeficiencyType"
instance ToJSON PEmulationSetEmulatedVisionDeficiencyType where
  toJSON :: PEmulationSetEmulatedVisionDeficiencyType -> Value
toJSON PEmulationSetEmulatedVisionDeficiencyType
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case PEmulationSetEmulatedVisionDeficiencyType
v of
    PEmulationSetEmulatedVisionDeficiencyType
PEmulationSetEmulatedVisionDeficiencyTypeNone -> Text
"none"
    PEmulationSetEmulatedVisionDeficiencyType
PEmulationSetEmulatedVisionDeficiencyTypeAchromatopsia -> Text
"achromatopsia"
    PEmulationSetEmulatedVisionDeficiencyType
PEmulationSetEmulatedVisionDeficiencyTypeBlurredVision -> Text
"blurredVision"
    PEmulationSetEmulatedVisionDeficiencyType
PEmulationSetEmulatedVisionDeficiencyTypeDeuteranopia -> Text
"deuteranopia"
    PEmulationSetEmulatedVisionDeficiencyType
PEmulationSetEmulatedVisionDeficiencyTypeProtanopia -> Text
"protanopia"
    PEmulationSetEmulatedVisionDeficiencyType
PEmulationSetEmulatedVisionDeficiencyTypeTritanopia -> Text
"tritanopia"
data PEmulationSetEmulatedVisionDeficiency = PEmulationSetEmulatedVisionDeficiency
  {
    -- | Vision deficiency to emulate.
    PEmulationSetEmulatedVisionDeficiency
-> PEmulationSetEmulatedVisionDeficiencyType
pEmulationSetEmulatedVisionDeficiencyType :: PEmulationSetEmulatedVisionDeficiencyType
  }
  deriving (PEmulationSetEmulatedVisionDeficiency
-> PEmulationSetEmulatedVisionDeficiency -> Bool
(PEmulationSetEmulatedVisionDeficiency
 -> PEmulationSetEmulatedVisionDeficiency -> Bool)
-> (PEmulationSetEmulatedVisionDeficiency
    -> PEmulationSetEmulatedVisionDeficiency -> Bool)
-> Eq PEmulationSetEmulatedVisionDeficiency
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PEmulationSetEmulatedVisionDeficiency
-> PEmulationSetEmulatedVisionDeficiency -> Bool
$c/= :: PEmulationSetEmulatedVisionDeficiency
-> PEmulationSetEmulatedVisionDeficiency -> Bool
== :: PEmulationSetEmulatedVisionDeficiency
-> PEmulationSetEmulatedVisionDeficiency -> Bool
$c== :: PEmulationSetEmulatedVisionDeficiency
-> PEmulationSetEmulatedVisionDeficiency -> Bool
Eq, Int -> PEmulationSetEmulatedVisionDeficiency -> ShowS
[PEmulationSetEmulatedVisionDeficiency] -> ShowS
PEmulationSetEmulatedVisionDeficiency -> String
(Int -> PEmulationSetEmulatedVisionDeficiency -> ShowS)
-> (PEmulationSetEmulatedVisionDeficiency -> String)
-> ([PEmulationSetEmulatedVisionDeficiency] -> ShowS)
-> Show PEmulationSetEmulatedVisionDeficiency
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PEmulationSetEmulatedVisionDeficiency] -> ShowS
$cshowList :: [PEmulationSetEmulatedVisionDeficiency] -> ShowS
show :: PEmulationSetEmulatedVisionDeficiency -> String
$cshow :: PEmulationSetEmulatedVisionDeficiency -> String
showsPrec :: Int -> PEmulationSetEmulatedVisionDeficiency -> ShowS
$cshowsPrec :: Int -> PEmulationSetEmulatedVisionDeficiency -> ShowS
Show)
pEmulationSetEmulatedVisionDeficiency
  {-
  -- | Vision deficiency to emulate.
  -}
  :: PEmulationSetEmulatedVisionDeficiencyType
  -> PEmulationSetEmulatedVisionDeficiency
pEmulationSetEmulatedVisionDeficiency :: PEmulationSetEmulatedVisionDeficiencyType
-> PEmulationSetEmulatedVisionDeficiency
pEmulationSetEmulatedVisionDeficiency
  PEmulationSetEmulatedVisionDeficiencyType
arg_pEmulationSetEmulatedVisionDeficiencyType
  = PEmulationSetEmulatedVisionDeficiencyType
-> PEmulationSetEmulatedVisionDeficiency
PEmulationSetEmulatedVisionDeficiency
    PEmulationSetEmulatedVisionDeficiencyType
arg_pEmulationSetEmulatedVisionDeficiencyType
instance ToJSON PEmulationSetEmulatedVisionDeficiency where
  toJSON :: PEmulationSetEmulatedVisionDeficiency -> Value
toJSON PEmulationSetEmulatedVisionDeficiency
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"type" Text -> PEmulationSetEmulatedVisionDeficiencyType -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (PEmulationSetEmulatedVisionDeficiencyType -> Pair)
-> Maybe PEmulationSetEmulatedVisionDeficiencyType -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> PEmulationSetEmulatedVisionDeficiencyType
-> Maybe PEmulationSetEmulatedVisionDeficiencyType
forall a. a -> Maybe a
Just (PEmulationSetEmulatedVisionDeficiency
-> PEmulationSetEmulatedVisionDeficiencyType
pEmulationSetEmulatedVisionDeficiencyType PEmulationSetEmulatedVisionDeficiency
p)
    ]
instance Command PEmulationSetEmulatedVisionDeficiency where
  type CommandResponse PEmulationSetEmulatedVisionDeficiency = ()
  commandName :: Proxy PEmulationSetEmulatedVisionDeficiency -> String
commandName Proxy PEmulationSetEmulatedVisionDeficiency
_ = String
"Emulation.setEmulatedVisionDeficiency"
  fromJSON :: Proxy PEmulationSetEmulatedVisionDeficiency
-> Value
-> Result (CommandResponse PEmulationSetEmulatedVisionDeficiency)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PEmulationSetEmulatedVisionDeficiency -> Result ())
-> Proxy PEmulationSetEmulatedVisionDeficiency
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PEmulationSetEmulatedVisionDeficiency -> ())
-> Proxy PEmulationSetEmulatedVisionDeficiency
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PEmulationSetEmulatedVisionDeficiency -> ()
forall a b. a -> b -> a
const ()

-- | Overrides the Geolocation Position or Error. Omitting any of the parameters emulates position
--   unavailable.

-- | Parameters of the 'Emulation.setGeolocationOverride' command.
data PEmulationSetGeolocationOverride = PEmulationSetGeolocationOverride
  {
    -- | Mock latitude
    PEmulationSetGeolocationOverride -> Maybe Double
pEmulationSetGeolocationOverrideLatitude :: Maybe Double,
    -- | Mock longitude
    PEmulationSetGeolocationOverride -> Maybe Double
pEmulationSetGeolocationOverrideLongitude :: Maybe Double,
    -- | Mock accuracy
    PEmulationSetGeolocationOverride -> Maybe Double
pEmulationSetGeolocationOverrideAccuracy :: Maybe Double
  }
  deriving (PEmulationSetGeolocationOverride
-> PEmulationSetGeolocationOverride -> Bool
(PEmulationSetGeolocationOverride
 -> PEmulationSetGeolocationOverride -> Bool)
-> (PEmulationSetGeolocationOverride
    -> PEmulationSetGeolocationOverride -> Bool)
-> Eq PEmulationSetGeolocationOverride
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PEmulationSetGeolocationOverride
-> PEmulationSetGeolocationOverride -> Bool
$c/= :: PEmulationSetGeolocationOverride
-> PEmulationSetGeolocationOverride -> Bool
== :: PEmulationSetGeolocationOverride
-> PEmulationSetGeolocationOverride -> Bool
$c== :: PEmulationSetGeolocationOverride
-> PEmulationSetGeolocationOverride -> Bool
Eq, Int -> PEmulationSetGeolocationOverride -> ShowS
[PEmulationSetGeolocationOverride] -> ShowS
PEmulationSetGeolocationOverride -> String
(Int -> PEmulationSetGeolocationOverride -> ShowS)
-> (PEmulationSetGeolocationOverride -> String)
-> ([PEmulationSetGeolocationOverride] -> ShowS)
-> Show PEmulationSetGeolocationOverride
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PEmulationSetGeolocationOverride] -> ShowS
$cshowList :: [PEmulationSetGeolocationOverride] -> ShowS
show :: PEmulationSetGeolocationOverride -> String
$cshow :: PEmulationSetGeolocationOverride -> String
showsPrec :: Int -> PEmulationSetGeolocationOverride -> ShowS
$cshowsPrec :: Int -> PEmulationSetGeolocationOverride -> ShowS
Show)
pEmulationSetGeolocationOverride
  :: PEmulationSetGeolocationOverride
pEmulationSetGeolocationOverride :: PEmulationSetGeolocationOverride
pEmulationSetGeolocationOverride
  = Maybe Double
-> Maybe Double -> Maybe Double -> PEmulationSetGeolocationOverride
PEmulationSetGeolocationOverride
    Maybe Double
forall a. Maybe a
Nothing
    Maybe Double
forall a. Maybe a
Nothing
    Maybe Double
forall a. Maybe a
Nothing
instance ToJSON PEmulationSetGeolocationOverride where
  toJSON :: PEmulationSetGeolocationOverride -> Value
toJSON PEmulationSetGeolocationOverride
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"latitude" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PEmulationSetGeolocationOverride -> Maybe Double
pEmulationSetGeolocationOverrideLatitude PEmulationSetGeolocationOverride
p),
    (Text
"longitude" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PEmulationSetGeolocationOverride -> Maybe Double
pEmulationSetGeolocationOverrideLongitude PEmulationSetGeolocationOverride
p),
    (Text
"accuracy" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PEmulationSetGeolocationOverride -> Maybe Double
pEmulationSetGeolocationOverrideAccuracy PEmulationSetGeolocationOverride
p)
    ]
instance Command PEmulationSetGeolocationOverride where
  type CommandResponse PEmulationSetGeolocationOverride = ()
  commandName :: Proxy PEmulationSetGeolocationOverride -> String
commandName Proxy PEmulationSetGeolocationOverride
_ = String
"Emulation.setGeolocationOverride"
  fromJSON :: Proxy PEmulationSetGeolocationOverride
-> Value
-> Result (CommandResponse PEmulationSetGeolocationOverride)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PEmulationSetGeolocationOverride -> Result ())
-> Proxy PEmulationSetGeolocationOverride
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PEmulationSetGeolocationOverride -> ())
-> Proxy PEmulationSetGeolocationOverride
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PEmulationSetGeolocationOverride -> ()
forall a b. a -> b -> a
const ()

-- | Overrides the Idle state.

-- | Parameters of the 'Emulation.setIdleOverride' command.
data PEmulationSetIdleOverride = PEmulationSetIdleOverride
  {
    -- | Mock isUserActive
    PEmulationSetIdleOverride -> Bool
pEmulationSetIdleOverrideIsUserActive :: Bool,
    -- | Mock isScreenUnlocked
    PEmulationSetIdleOverride -> Bool
pEmulationSetIdleOverrideIsScreenUnlocked :: Bool
  }
  deriving (PEmulationSetIdleOverride -> PEmulationSetIdleOverride -> Bool
(PEmulationSetIdleOverride -> PEmulationSetIdleOverride -> Bool)
-> (PEmulationSetIdleOverride -> PEmulationSetIdleOverride -> Bool)
-> Eq PEmulationSetIdleOverride
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PEmulationSetIdleOverride -> PEmulationSetIdleOverride -> Bool
$c/= :: PEmulationSetIdleOverride -> PEmulationSetIdleOverride -> Bool
== :: PEmulationSetIdleOverride -> PEmulationSetIdleOverride -> Bool
$c== :: PEmulationSetIdleOverride -> PEmulationSetIdleOverride -> Bool
Eq, Int -> PEmulationSetIdleOverride -> ShowS
[PEmulationSetIdleOverride] -> ShowS
PEmulationSetIdleOverride -> String
(Int -> PEmulationSetIdleOverride -> ShowS)
-> (PEmulationSetIdleOverride -> String)
-> ([PEmulationSetIdleOverride] -> ShowS)
-> Show PEmulationSetIdleOverride
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PEmulationSetIdleOverride] -> ShowS
$cshowList :: [PEmulationSetIdleOverride] -> ShowS
show :: PEmulationSetIdleOverride -> String
$cshow :: PEmulationSetIdleOverride -> String
showsPrec :: Int -> PEmulationSetIdleOverride -> ShowS
$cshowsPrec :: Int -> PEmulationSetIdleOverride -> ShowS
Show)
pEmulationSetIdleOverride
  {-
  -- | Mock isUserActive
  -}
  :: Bool
  {-
  -- | Mock isScreenUnlocked
  -}
  -> Bool
  -> PEmulationSetIdleOverride
pEmulationSetIdleOverride :: Bool -> Bool -> PEmulationSetIdleOverride
pEmulationSetIdleOverride
  Bool
arg_pEmulationSetIdleOverrideIsUserActive
  Bool
arg_pEmulationSetIdleOverrideIsScreenUnlocked
  = Bool -> Bool -> PEmulationSetIdleOverride
PEmulationSetIdleOverride
    Bool
arg_pEmulationSetIdleOverrideIsUserActive
    Bool
arg_pEmulationSetIdleOverrideIsScreenUnlocked
instance ToJSON PEmulationSetIdleOverride where
  toJSON :: PEmulationSetIdleOverride -> Value
toJSON PEmulationSetIdleOverride
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"isUserActive" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (PEmulationSetIdleOverride -> Bool
pEmulationSetIdleOverrideIsUserActive PEmulationSetIdleOverride
p),
    (Text
"isScreenUnlocked" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (PEmulationSetIdleOverride -> Bool
pEmulationSetIdleOverrideIsScreenUnlocked PEmulationSetIdleOverride
p)
    ]
instance Command PEmulationSetIdleOverride where
  type CommandResponse PEmulationSetIdleOverride = ()
  commandName :: Proxy PEmulationSetIdleOverride -> String
commandName Proxy PEmulationSetIdleOverride
_ = String
"Emulation.setIdleOverride"
  fromJSON :: Proxy PEmulationSetIdleOverride
-> Value -> Result (CommandResponse PEmulationSetIdleOverride)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PEmulationSetIdleOverride -> Result ())
-> Proxy PEmulationSetIdleOverride
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PEmulationSetIdleOverride -> ())
-> Proxy PEmulationSetIdleOverride
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PEmulationSetIdleOverride -> ()
forall a b. a -> b -> a
const ()

-- | Clears Idle state overrides.

-- | Parameters of the 'Emulation.clearIdleOverride' command.
data PEmulationClearIdleOverride = PEmulationClearIdleOverride
  deriving (PEmulationClearIdleOverride -> PEmulationClearIdleOverride -> Bool
(PEmulationClearIdleOverride
 -> PEmulationClearIdleOverride -> Bool)
-> (PEmulationClearIdleOverride
    -> PEmulationClearIdleOverride -> Bool)
-> Eq PEmulationClearIdleOverride
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PEmulationClearIdleOverride -> PEmulationClearIdleOverride -> Bool
$c/= :: PEmulationClearIdleOverride -> PEmulationClearIdleOverride -> Bool
== :: PEmulationClearIdleOverride -> PEmulationClearIdleOverride -> Bool
$c== :: PEmulationClearIdleOverride -> PEmulationClearIdleOverride -> Bool
Eq, Int -> PEmulationClearIdleOverride -> ShowS
[PEmulationClearIdleOverride] -> ShowS
PEmulationClearIdleOverride -> String
(Int -> PEmulationClearIdleOverride -> ShowS)
-> (PEmulationClearIdleOverride -> String)
-> ([PEmulationClearIdleOverride] -> ShowS)
-> Show PEmulationClearIdleOverride
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PEmulationClearIdleOverride] -> ShowS
$cshowList :: [PEmulationClearIdleOverride] -> ShowS
show :: PEmulationClearIdleOverride -> String
$cshow :: PEmulationClearIdleOverride -> String
showsPrec :: Int -> PEmulationClearIdleOverride -> ShowS
$cshowsPrec :: Int -> PEmulationClearIdleOverride -> ShowS
Show)
pEmulationClearIdleOverride
  :: PEmulationClearIdleOverride
pEmulationClearIdleOverride :: PEmulationClearIdleOverride
pEmulationClearIdleOverride
  = PEmulationClearIdleOverride
PEmulationClearIdleOverride
instance ToJSON PEmulationClearIdleOverride where
  toJSON :: PEmulationClearIdleOverride -> Value
toJSON PEmulationClearIdleOverride
_ = Value
A.Null
instance Command PEmulationClearIdleOverride where
  type CommandResponse PEmulationClearIdleOverride = ()
  commandName :: Proxy PEmulationClearIdleOverride -> String
commandName Proxy PEmulationClearIdleOverride
_ = String
"Emulation.clearIdleOverride"
  fromJSON :: Proxy PEmulationClearIdleOverride
-> Value -> Result (CommandResponse PEmulationClearIdleOverride)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PEmulationClearIdleOverride -> Result ())
-> Proxy PEmulationClearIdleOverride
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PEmulationClearIdleOverride -> ())
-> Proxy PEmulationClearIdleOverride
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PEmulationClearIdleOverride -> ()
forall a b. a -> b -> a
const ()

-- | Sets a specified page scale factor.

-- | Parameters of the 'Emulation.setPageScaleFactor' command.
data PEmulationSetPageScaleFactor = PEmulationSetPageScaleFactor
  {
    -- | Page scale factor.
    PEmulationSetPageScaleFactor -> Double
pEmulationSetPageScaleFactorPageScaleFactor :: Double
  }
  deriving (PEmulationSetPageScaleFactor
-> PEmulationSetPageScaleFactor -> Bool
(PEmulationSetPageScaleFactor
 -> PEmulationSetPageScaleFactor -> Bool)
-> (PEmulationSetPageScaleFactor
    -> PEmulationSetPageScaleFactor -> Bool)
-> Eq PEmulationSetPageScaleFactor
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PEmulationSetPageScaleFactor
-> PEmulationSetPageScaleFactor -> Bool
$c/= :: PEmulationSetPageScaleFactor
-> PEmulationSetPageScaleFactor -> Bool
== :: PEmulationSetPageScaleFactor
-> PEmulationSetPageScaleFactor -> Bool
$c== :: PEmulationSetPageScaleFactor
-> PEmulationSetPageScaleFactor -> Bool
Eq, Int -> PEmulationSetPageScaleFactor -> ShowS
[PEmulationSetPageScaleFactor] -> ShowS
PEmulationSetPageScaleFactor -> String
(Int -> PEmulationSetPageScaleFactor -> ShowS)
-> (PEmulationSetPageScaleFactor -> String)
-> ([PEmulationSetPageScaleFactor] -> ShowS)
-> Show PEmulationSetPageScaleFactor
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PEmulationSetPageScaleFactor] -> ShowS
$cshowList :: [PEmulationSetPageScaleFactor] -> ShowS
show :: PEmulationSetPageScaleFactor -> String
$cshow :: PEmulationSetPageScaleFactor -> String
showsPrec :: Int -> PEmulationSetPageScaleFactor -> ShowS
$cshowsPrec :: Int -> PEmulationSetPageScaleFactor -> ShowS
Show)
pEmulationSetPageScaleFactor
  {-
  -- | Page scale factor.
  -}
  :: Double
  -> PEmulationSetPageScaleFactor
pEmulationSetPageScaleFactor :: Double -> PEmulationSetPageScaleFactor
pEmulationSetPageScaleFactor
  Double
arg_pEmulationSetPageScaleFactorPageScaleFactor
  = Double -> PEmulationSetPageScaleFactor
PEmulationSetPageScaleFactor
    Double
arg_pEmulationSetPageScaleFactorPageScaleFactor
instance ToJSON PEmulationSetPageScaleFactor where
  toJSON :: PEmulationSetPageScaleFactor -> Value
toJSON PEmulationSetPageScaleFactor
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"pageScaleFactor" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (PEmulationSetPageScaleFactor -> Double
pEmulationSetPageScaleFactorPageScaleFactor PEmulationSetPageScaleFactor
p)
    ]
instance Command PEmulationSetPageScaleFactor where
  type CommandResponse PEmulationSetPageScaleFactor = ()
  commandName :: Proxy PEmulationSetPageScaleFactor -> String
commandName Proxy PEmulationSetPageScaleFactor
_ = String
"Emulation.setPageScaleFactor"
  fromJSON :: Proxy PEmulationSetPageScaleFactor
-> Value -> Result (CommandResponse PEmulationSetPageScaleFactor)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PEmulationSetPageScaleFactor -> Result ())
-> Proxy PEmulationSetPageScaleFactor
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PEmulationSetPageScaleFactor -> ())
-> Proxy PEmulationSetPageScaleFactor
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PEmulationSetPageScaleFactor -> ()
forall a b. a -> b -> a
const ()

-- | Switches script execution in the page.

-- | Parameters of the 'Emulation.setScriptExecutionDisabled' command.
data PEmulationSetScriptExecutionDisabled = PEmulationSetScriptExecutionDisabled
  {
    -- | Whether script execution should be disabled in the page.
    PEmulationSetScriptExecutionDisabled -> Bool
pEmulationSetScriptExecutionDisabledValue :: Bool
  }
  deriving (PEmulationSetScriptExecutionDisabled
-> PEmulationSetScriptExecutionDisabled -> Bool
(PEmulationSetScriptExecutionDisabled
 -> PEmulationSetScriptExecutionDisabled -> Bool)
-> (PEmulationSetScriptExecutionDisabled
    -> PEmulationSetScriptExecutionDisabled -> Bool)
-> Eq PEmulationSetScriptExecutionDisabled
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PEmulationSetScriptExecutionDisabled
-> PEmulationSetScriptExecutionDisabled -> Bool
$c/= :: PEmulationSetScriptExecutionDisabled
-> PEmulationSetScriptExecutionDisabled -> Bool
== :: PEmulationSetScriptExecutionDisabled
-> PEmulationSetScriptExecutionDisabled -> Bool
$c== :: PEmulationSetScriptExecutionDisabled
-> PEmulationSetScriptExecutionDisabled -> Bool
Eq, Int -> PEmulationSetScriptExecutionDisabled -> ShowS
[PEmulationSetScriptExecutionDisabled] -> ShowS
PEmulationSetScriptExecutionDisabled -> String
(Int -> PEmulationSetScriptExecutionDisabled -> ShowS)
-> (PEmulationSetScriptExecutionDisabled -> String)
-> ([PEmulationSetScriptExecutionDisabled] -> ShowS)
-> Show PEmulationSetScriptExecutionDisabled
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PEmulationSetScriptExecutionDisabled] -> ShowS
$cshowList :: [PEmulationSetScriptExecutionDisabled] -> ShowS
show :: PEmulationSetScriptExecutionDisabled -> String
$cshow :: PEmulationSetScriptExecutionDisabled -> String
showsPrec :: Int -> PEmulationSetScriptExecutionDisabled -> ShowS
$cshowsPrec :: Int -> PEmulationSetScriptExecutionDisabled -> ShowS
Show)
pEmulationSetScriptExecutionDisabled
  {-
  -- | Whether script execution should be disabled in the page.
  -}
  :: Bool
  -> PEmulationSetScriptExecutionDisabled
pEmulationSetScriptExecutionDisabled :: Bool -> PEmulationSetScriptExecutionDisabled
pEmulationSetScriptExecutionDisabled
  Bool
arg_pEmulationSetScriptExecutionDisabledValue
  = Bool -> PEmulationSetScriptExecutionDisabled
PEmulationSetScriptExecutionDisabled
    Bool
arg_pEmulationSetScriptExecutionDisabledValue
instance ToJSON PEmulationSetScriptExecutionDisabled where
  toJSON :: PEmulationSetScriptExecutionDisabled -> Value
toJSON PEmulationSetScriptExecutionDisabled
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"value" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (PEmulationSetScriptExecutionDisabled -> Bool
pEmulationSetScriptExecutionDisabledValue PEmulationSetScriptExecutionDisabled
p)
    ]
instance Command PEmulationSetScriptExecutionDisabled where
  type CommandResponse PEmulationSetScriptExecutionDisabled = ()
  commandName :: Proxy PEmulationSetScriptExecutionDisabled -> String
commandName Proxy PEmulationSetScriptExecutionDisabled
_ = String
"Emulation.setScriptExecutionDisabled"
  fromJSON :: Proxy PEmulationSetScriptExecutionDisabled
-> Value
-> Result (CommandResponse PEmulationSetScriptExecutionDisabled)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PEmulationSetScriptExecutionDisabled -> Result ())
-> Proxy PEmulationSetScriptExecutionDisabled
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PEmulationSetScriptExecutionDisabled -> ())
-> Proxy PEmulationSetScriptExecutionDisabled
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PEmulationSetScriptExecutionDisabled -> ()
forall a b. a -> b -> a
const ()

-- | Enables touch on platforms which do not support them.

-- | Parameters of the 'Emulation.setTouchEmulationEnabled' command.
data PEmulationSetTouchEmulationEnabled = PEmulationSetTouchEmulationEnabled
  {
    -- | Whether the touch event emulation should be enabled.
    PEmulationSetTouchEmulationEnabled -> Bool
pEmulationSetTouchEmulationEnabledEnabled :: Bool,
    -- | Maximum touch points supported. Defaults to one.
    PEmulationSetTouchEmulationEnabled -> Maybe Int
pEmulationSetTouchEmulationEnabledMaxTouchPoints :: Maybe Int
  }
  deriving (PEmulationSetTouchEmulationEnabled
-> PEmulationSetTouchEmulationEnabled -> Bool
(PEmulationSetTouchEmulationEnabled
 -> PEmulationSetTouchEmulationEnabled -> Bool)
-> (PEmulationSetTouchEmulationEnabled
    -> PEmulationSetTouchEmulationEnabled -> Bool)
-> Eq PEmulationSetTouchEmulationEnabled
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PEmulationSetTouchEmulationEnabled
-> PEmulationSetTouchEmulationEnabled -> Bool
$c/= :: PEmulationSetTouchEmulationEnabled
-> PEmulationSetTouchEmulationEnabled -> Bool
== :: PEmulationSetTouchEmulationEnabled
-> PEmulationSetTouchEmulationEnabled -> Bool
$c== :: PEmulationSetTouchEmulationEnabled
-> PEmulationSetTouchEmulationEnabled -> Bool
Eq, Int -> PEmulationSetTouchEmulationEnabled -> ShowS
[PEmulationSetTouchEmulationEnabled] -> ShowS
PEmulationSetTouchEmulationEnabled -> String
(Int -> PEmulationSetTouchEmulationEnabled -> ShowS)
-> (PEmulationSetTouchEmulationEnabled -> String)
-> ([PEmulationSetTouchEmulationEnabled] -> ShowS)
-> Show PEmulationSetTouchEmulationEnabled
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PEmulationSetTouchEmulationEnabled] -> ShowS
$cshowList :: [PEmulationSetTouchEmulationEnabled] -> ShowS
show :: PEmulationSetTouchEmulationEnabled -> String
$cshow :: PEmulationSetTouchEmulationEnabled -> String
showsPrec :: Int -> PEmulationSetTouchEmulationEnabled -> ShowS
$cshowsPrec :: Int -> PEmulationSetTouchEmulationEnabled -> ShowS
Show)
pEmulationSetTouchEmulationEnabled
  {-
  -- | Whether the touch event emulation should be enabled.
  -}
  :: Bool
  -> PEmulationSetTouchEmulationEnabled
pEmulationSetTouchEmulationEnabled :: Bool -> PEmulationSetTouchEmulationEnabled
pEmulationSetTouchEmulationEnabled
  Bool
arg_pEmulationSetTouchEmulationEnabledEnabled
  = Bool -> Maybe Int -> PEmulationSetTouchEmulationEnabled
PEmulationSetTouchEmulationEnabled
    Bool
arg_pEmulationSetTouchEmulationEnabledEnabled
    Maybe Int
forall a. Maybe a
Nothing
instance ToJSON PEmulationSetTouchEmulationEnabled where
  toJSON :: PEmulationSetTouchEmulationEnabled -> Value
toJSON PEmulationSetTouchEmulationEnabled
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"enabled" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (PEmulationSetTouchEmulationEnabled -> Bool
pEmulationSetTouchEmulationEnabledEnabled PEmulationSetTouchEmulationEnabled
p),
    (Text
"maxTouchPoints" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PEmulationSetTouchEmulationEnabled -> Maybe Int
pEmulationSetTouchEmulationEnabledMaxTouchPoints PEmulationSetTouchEmulationEnabled
p)
    ]
instance Command PEmulationSetTouchEmulationEnabled where
  type CommandResponse PEmulationSetTouchEmulationEnabled = ()
  commandName :: Proxy PEmulationSetTouchEmulationEnabled -> String
commandName Proxy PEmulationSetTouchEmulationEnabled
_ = String
"Emulation.setTouchEmulationEnabled"
  fromJSON :: Proxy PEmulationSetTouchEmulationEnabled
-> Value
-> Result (CommandResponse PEmulationSetTouchEmulationEnabled)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PEmulationSetTouchEmulationEnabled -> Result ())
-> Proxy PEmulationSetTouchEmulationEnabled
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PEmulationSetTouchEmulationEnabled -> ())
-> Proxy PEmulationSetTouchEmulationEnabled
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PEmulationSetTouchEmulationEnabled -> ()
forall a b. a -> b -> a
const ()

-- | Turns on virtual time for all frames (replacing real-time with a synthetic time source) and sets
--   the current virtual time policy.  Note this supersedes any previous time budget.

-- | Parameters of the 'Emulation.setVirtualTimePolicy' command.
data PEmulationSetVirtualTimePolicy = PEmulationSetVirtualTimePolicy
  {
    PEmulationSetVirtualTimePolicy -> EmulationVirtualTimePolicy
pEmulationSetVirtualTimePolicyPolicy :: EmulationVirtualTimePolicy,
    -- | If set, after this many virtual milliseconds have elapsed virtual time will be paused and a
    --   virtualTimeBudgetExpired event is sent.
    PEmulationSetVirtualTimePolicy -> Maybe Double
pEmulationSetVirtualTimePolicyBudget :: Maybe Double,
    -- | If set this specifies the maximum number of tasks that can be run before virtual is forced
    --   forwards to prevent deadlock.
    PEmulationSetVirtualTimePolicy -> Maybe Int
pEmulationSetVirtualTimePolicyMaxVirtualTimeTaskStarvationCount :: Maybe Int,
    -- | If set, base::Time::Now will be overridden to initially return this value.
    PEmulationSetVirtualTimePolicy -> Maybe Double
pEmulationSetVirtualTimePolicyInitialVirtualTime :: Maybe NetworkTimeSinceEpoch
  }
  deriving (PEmulationSetVirtualTimePolicy
-> PEmulationSetVirtualTimePolicy -> Bool
(PEmulationSetVirtualTimePolicy
 -> PEmulationSetVirtualTimePolicy -> Bool)
-> (PEmulationSetVirtualTimePolicy
    -> PEmulationSetVirtualTimePolicy -> Bool)
-> Eq PEmulationSetVirtualTimePolicy
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PEmulationSetVirtualTimePolicy
-> PEmulationSetVirtualTimePolicy -> Bool
$c/= :: PEmulationSetVirtualTimePolicy
-> PEmulationSetVirtualTimePolicy -> Bool
== :: PEmulationSetVirtualTimePolicy
-> PEmulationSetVirtualTimePolicy -> Bool
$c== :: PEmulationSetVirtualTimePolicy
-> PEmulationSetVirtualTimePolicy -> Bool
Eq, Int -> PEmulationSetVirtualTimePolicy -> ShowS
[PEmulationSetVirtualTimePolicy] -> ShowS
PEmulationSetVirtualTimePolicy -> String
(Int -> PEmulationSetVirtualTimePolicy -> ShowS)
-> (PEmulationSetVirtualTimePolicy -> String)
-> ([PEmulationSetVirtualTimePolicy] -> ShowS)
-> Show PEmulationSetVirtualTimePolicy
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PEmulationSetVirtualTimePolicy] -> ShowS
$cshowList :: [PEmulationSetVirtualTimePolicy] -> ShowS
show :: PEmulationSetVirtualTimePolicy -> String
$cshow :: PEmulationSetVirtualTimePolicy -> String
showsPrec :: Int -> PEmulationSetVirtualTimePolicy -> ShowS
$cshowsPrec :: Int -> PEmulationSetVirtualTimePolicy -> ShowS
Show)
pEmulationSetVirtualTimePolicy
  :: EmulationVirtualTimePolicy
  -> PEmulationSetVirtualTimePolicy
pEmulationSetVirtualTimePolicy :: EmulationVirtualTimePolicy -> PEmulationSetVirtualTimePolicy
pEmulationSetVirtualTimePolicy
  EmulationVirtualTimePolicy
arg_pEmulationSetVirtualTimePolicyPolicy
  = EmulationVirtualTimePolicy
-> Maybe Double
-> Maybe Int
-> Maybe Double
-> PEmulationSetVirtualTimePolicy
PEmulationSetVirtualTimePolicy
    EmulationVirtualTimePolicy
arg_pEmulationSetVirtualTimePolicyPolicy
    Maybe Double
forall a. Maybe a
Nothing
    Maybe Int
forall a. Maybe a
Nothing
    Maybe Double
forall a. Maybe a
Nothing
instance ToJSON PEmulationSetVirtualTimePolicy where
  toJSON :: PEmulationSetVirtualTimePolicy -> Value
toJSON PEmulationSetVirtualTimePolicy
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"policy" Text -> EmulationVirtualTimePolicy -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (EmulationVirtualTimePolicy -> Pair)
-> Maybe EmulationVirtualTimePolicy -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> EmulationVirtualTimePolicy -> Maybe EmulationVirtualTimePolicy
forall a. a -> Maybe a
Just (PEmulationSetVirtualTimePolicy -> EmulationVirtualTimePolicy
pEmulationSetVirtualTimePolicyPolicy PEmulationSetVirtualTimePolicy
p),
    (Text
"budget" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PEmulationSetVirtualTimePolicy -> Maybe Double
pEmulationSetVirtualTimePolicyBudget PEmulationSetVirtualTimePolicy
p),
    (Text
"maxVirtualTimeTaskStarvationCount" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PEmulationSetVirtualTimePolicy -> Maybe Int
pEmulationSetVirtualTimePolicyMaxVirtualTimeTaskStarvationCount PEmulationSetVirtualTimePolicy
p),
    (Text
"initialVirtualTime" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PEmulationSetVirtualTimePolicy -> Maybe Double
pEmulationSetVirtualTimePolicyInitialVirtualTime PEmulationSetVirtualTimePolicy
p)
    ]
data EmulationSetVirtualTimePolicy = EmulationSetVirtualTimePolicy
  {
    -- | Absolute timestamp at which virtual time was first enabled (up time in milliseconds).
    EmulationSetVirtualTimePolicy -> Double
emulationSetVirtualTimePolicyVirtualTimeTicksBase :: Double
  }
  deriving (EmulationSetVirtualTimePolicy
-> EmulationSetVirtualTimePolicy -> Bool
(EmulationSetVirtualTimePolicy
 -> EmulationSetVirtualTimePolicy -> Bool)
-> (EmulationSetVirtualTimePolicy
    -> EmulationSetVirtualTimePolicy -> Bool)
-> Eq EmulationSetVirtualTimePolicy
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: EmulationSetVirtualTimePolicy
-> EmulationSetVirtualTimePolicy -> Bool
$c/= :: EmulationSetVirtualTimePolicy
-> EmulationSetVirtualTimePolicy -> Bool
== :: EmulationSetVirtualTimePolicy
-> EmulationSetVirtualTimePolicy -> Bool
$c== :: EmulationSetVirtualTimePolicy
-> EmulationSetVirtualTimePolicy -> Bool
Eq, Int -> EmulationSetVirtualTimePolicy -> ShowS
[EmulationSetVirtualTimePolicy] -> ShowS
EmulationSetVirtualTimePolicy -> String
(Int -> EmulationSetVirtualTimePolicy -> ShowS)
-> (EmulationSetVirtualTimePolicy -> String)
-> ([EmulationSetVirtualTimePolicy] -> ShowS)
-> Show EmulationSetVirtualTimePolicy
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [EmulationSetVirtualTimePolicy] -> ShowS
$cshowList :: [EmulationSetVirtualTimePolicy] -> ShowS
show :: EmulationSetVirtualTimePolicy -> String
$cshow :: EmulationSetVirtualTimePolicy -> String
showsPrec :: Int -> EmulationSetVirtualTimePolicy -> ShowS
$cshowsPrec :: Int -> EmulationSetVirtualTimePolicy -> ShowS
Show)
instance FromJSON EmulationSetVirtualTimePolicy where
  parseJSON :: Value -> Parser EmulationSetVirtualTimePolicy
parseJSON = String
-> (Object -> Parser EmulationSetVirtualTimePolicy)
-> Value
-> Parser EmulationSetVirtualTimePolicy
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"EmulationSetVirtualTimePolicy" ((Object -> Parser EmulationSetVirtualTimePolicy)
 -> Value -> Parser EmulationSetVirtualTimePolicy)
-> (Object -> Parser EmulationSetVirtualTimePolicy)
-> Value
-> Parser EmulationSetVirtualTimePolicy
forall a b. (a -> b) -> a -> b
$ \Object
o -> Double -> EmulationSetVirtualTimePolicy
EmulationSetVirtualTimePolicy
    (Double -> EmulationSetVirtualTimePolicy)
-> Parser Double -> Parser EmulationSetVirtualTimePolicy
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"virtualTimeTicksBase"
instance Command PEmulationSetVirtualTimePolicy where
  type CommandResponse PEmulationSetVirtualTimePolicy = EmulationSetVirtualTimePolicy
  commandName :: Proxy PEmulationSetVirtualTimePolicy -> String
commandName Proxy PEmulationSetVirtualTimePolicy
_ = String
"Emulation.setVirtualTimePolicy"

-- | Overrides default host system locale with the specified one.

-- | Parameters of the 'Emulation.setLocaleOverride' command.
data PEmulationSetLocaleOverride = PEmulationSetLocaleOverride
  {
    -- | ICU style C locale (e.g. "en_US"). If not specified or empty, disables the override and
    --   restores default host system locale.
    PEmulationSetLocaleOverride -> Maybe Text
pEmulationSetLocaleOverrideLocale :: Maybe T.Text
  }
  deriving (PEmulationSetLocaleOverride -> PEmulationSetLocaleOverride -> Bool
(PEmulationSetLocaleOverride
 -> PEmulationSetLocaleOverride -> Bool)
-> (PEmulationSetLocaleOverride
    -> PEmulationSetLocaleOverride -> Bool)
-> Eq PEmulationSetLocaleOverride
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PEmulationSetLocaleOverride -> PEmulationSetLocaleOverride -> Bool
$c/= :: PEmulationSetLocaleOverride -> PEmulationSetLocaleOverride -> Bool
== :: PEmulationSetLocaleOverride -> PEmulationSetLocaleOverride -> Bool
$c== :: PEmulationSetLocaleOverride -> PEmulationSetLocaleOverride -> Bool
Eq, Int -> PEmulationSetLocaleOverride -> ShowS
[PEmulationSetLocaleOverride] -> ShowS
PEmulationSetLocaleOverride -> String
(Int -> PEmulationSetLocaleOverride -> ShowS)
-> (PEmulationSetLocaleOverride -> String)
-> ([PEmulationSetLocaleOverride] -> ShowS)
-> Show PEmulationSetLocaleOverride
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PEmulationSetLocaleOverride] -> ShowS
$cshowList :: [PEmulationSetLocaleOverride] -> ShowS
show :: PEmulationSetLocaleOverride -> String
$cshow :: PEmulationSetLocaleOverride -> String
showsPrec :: Int -> PEmulationSetLocaleOverride -> ShowS
$cshowsPrec :: Int -> PEmulationSetLocaleOverride -> ShowS
Show)
pEmulationSetLocaleOverride
  :: PEmulationSetLocaleOverride
pEmulationSetLocaleOverride :: PEmulationSetLocaleOverride
pEmulationSetLocaleOverride
  = Maybe Text -> PEmulationSetLocaleOverride
PEmulationSetLocaleOverride
    Maybe Text
forall a. Maybe a
Nothing
instance ToJSON PEmulationSetLocaleOverride where
  toJSON :: PEmulationSetLocaleOverride -> Value
toJSON PEmulationSetLocaleOverride
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"locale" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PEmulationSetLocaleOverride -> Maybe Text
pEmulationSetLocaleOverrideLocale PEmulationSetLocaleOverride
p)
    ]
instance Command PEmulationSetLocaleOverride where
  type CommandResponse PEmulationSetLocaleOverride = ()
  commandName :: Proxy PEmulationSetLocaleOverride -> String
commandName Proxy PEmulationSetLocaleOverride
_ = String
"Emulation.setLocaleOverride"
  fromJSON :: Proxy PEmulationSetLocaleOverride
-> Value -> Result (CommandResponse PEmulationSetLocaleOverride)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PEmulationSetLocaleOverride -> Result ())
-> Proxy PEmulationSetLocaleOverride
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PEmulationSetLocaleOverride -> ())
-> Proxy PEmulationSetLocaleOverride
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PEmulationSetLocaleOverride -> ()
forall a b. a -> b -> a
const ()

-- | Overrides default host system timezone with the specified one.

-- | Parameters of the 'Emulation.setTimezoneOverride' command.
data PEmulationSetTimezoneOverride = PEmulationSetTimezoneOverride
  {
    -- | The timezone identifier. If empty, disables the override and
    --   restores default host system timezone.
    PEmulationSetTimezoneOverride -> Text
pEmulationSetTimezoneOverrideTimezoneId :: T.Text
  }
  deriving (PEmulationSetTimezoneOverride
-> PEmulationSetTimezoneOverride -> Bool
(PEmulationSetTimezoneOverride
 -> PEmulationSetTimezoneOverride -> Bool)
-> (PEmulationSetTimezoneOverride
    -> PEmulationSetTimezoneOverride -> Bool)
-> Eq PEmulationSetTimezoneOverride
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PEmulationSetTimezoneOverride
-> PEmulationSetTimezoneOverride -> Bool
$c/= :: PEmulationSetTimezoneOverride
-> PEmulationSetTimezoneOverride -> Bool
== :: PEmulationSetTimezoneOverride
-> PEmulationSetTimezoneOverride -> Bool
$c== :: PEmulationSetTimezoneOverride
-> PEmulationSetTimezoneOverride -> Bool
Eq, Int -> PEmulationSetTimezoneOverride -> ShowS
[PEmulationSetTimezoneOverride] -> ShowS
PEmulationSetTimezoneOverride -> String
(Int -> PEmulationSetTimezoneOverride -> ShowS)
-> (PEmulationSetTimezoneOverride -> String)
-> ([PEmulationSetTimezoneOverride] -> ShowS)
-> Show PEmulationSetTimezoneOverride
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PEmulationSetTimezoneOverride] -> ShowS
$cshowList :: [PEmulationSetTimezoneOverride] -> ShowS
show :: PEmulationSetTimezoneOverride -> String
$cshow :: PEmulationSetTimezoneOverride -> String
showsPrec :: Int -> PEmulationSetTimezoneOverride -> ShowS
$cshowsPrec :: Int -> PEmulationSetTimezoneOverride -> ShowS
Show)
pEmulationSetTimezoneOverride
  {-
  -- | The timezone identifier. If empty, disables the override and
  --   restores default host system timezone.
  -}
  :: T.Text
  -> PEmulationSetTimezoneOverride
pEmulationSetTimezoneOverride :: Text -> PEmulationSetTimezoneOverride
pEmulationSetTimezoneOverride
  Text
arg_pEmulationSetTimezoneOverrideTimezoneId
  = Text -> PEmulationSetTimezoneOverride
PEmulationSetTimezoneOverride
    Text
arg_pEmulationSetTimezoneOverrideTimezoneId
instance ToJSON PEmulationSetTimezoneOverride where
  toJSON :: PEmulationSetTimezoneOverride -> Value
toJSON PEmulationSetTimezoneOverride
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"timezoneId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PEmulationSetTimezoneOverride -> Text
pEmulationSetTimezoneOverrideTimezoneId PEmulationSetTimezoneOverride
p)
    ]
instance Command PEmulationSetTimezoneOverride where
  type CommandResponse PEmulationSetTimezoneOverride = ()
  commandName :: Proxy PEmulationSetTimezoneOverride -> String
commandName Proxy PEmulationSetTimezoneOverride
_ = String
"Emulation.setTimezoneOverride"
  fromJSON :: Proxy PEmulationSetTimezoneOverride
-> Value -> Result (CommandResponse PEmulationSetTimezoneOverride)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PEmulationSetTimezoneOverride -> Result ())
-> Proxy PEmulationSetTimezoneOverride
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PEmulationSetTimezoneOverride -> ())
-> Proxy PEmulationSetTimezoneOverride
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PEmulationSetTimezoneOverride -> ()
forall a b. a -> b -> a
const ()


-- | Parameters of the 'Emulation.setDisabledImageTypes' command.
data PEmulationSetDisabledImageTypes = PEmulationSetDisabledImageTypes
  {
    -- | Image types to disable.
    PEmulationSetDisabledImageTypes -> [EmulationDisabledImageType]
pEmulationSetDisabledImageTypesImageTypes :: [EmulationDisabledImageType]
  }
  deriving (PEmulationSetDisabledImageTypes
-> PEmulationSetDisabledImageTypes -> Bool
(PEmulationSetDisabledImageTypes
 -> PEmulationSetDisabledImageTypes -> Bool)
-> (PEmulationSetDisabledImageTypes
    -> PEmulationSetDisabledImageTypes -> Bool)
-> Eq PEmulationSetDisabledImageTypes
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PEmulationSetDisabledImageTypes
-> PEmulationSetDisabledImageTypes -> Bool
$c/= :: PEmulationSetDisabledImageTypes
-> PEmulationSetDisabledImageTypes -> Bool
== :: PEmulationSetDisabledImageTypes
-> PEmulationSetDisabledImageTypes -> Bool
$c== :: PEmulationSetDisabledImageTypes
-> PEmulationSetDisabledImageTypes -> Bool
Eq, Int -> PEmulationSetDisabledImageTypes -> ShowS
[PEmulationSetDisabledImageTypes] -> ShowS
PEmulationSetDisabledImageTypes -> String
(Int -> PEmulationSetDisabledImageTypes -> ShowS)
-> (PEmulationSetDisabledImageTypes -> String)
-> ([PEmulationSetDisabledImageTypes] -> ShowS)
-> Show PEmulationSetDisabledImageTypes
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PEmulationSetDisabledImageTypes] -> ShowS
$cshowList :: [PEmulationSetDisabledImageTypes] -> ShowS
show :: PEmulationSetDisabledImageTypes -> String
$cshow :: PEmulationSetDisabledImageTypes -> String
showsPrec :: Int -> PEmulationSetDisabledImageTypes -> ShowS
$cshowsPrec :: Int -> PEmulationSetDisabledImageTypes -> ShowS
Show)
pEmulationSetDisabledImageTypes
  {-
  -- | Image types to disable.
  -}
  :: [EmulationDisabledImageType]
  -> PEmulationSetDisabledImageTypes
pEmulationSetDisabledImageTypes :: [EmulationDisabledImageType] -> PEmulationSetDisabledImageTypes
pEmulationSetDisabledImageTypes
  [EmulationDisabledImageType]
arg_pEmulationSetDisabledImageTypesImageTypes
  = [EmulationDisabledImageType] -> PEmulationSetDisabledImageTypes
PEmulationSetDisabledImageTypes
    [EmulationDisabledImageType]
arg_pEmulationSetDisabledImageTypesImageTypes
instance ToJSON PEmulationSetDisabledImageTypes where
  toJSON :: PEmulationSetDisabledImageTypes -> Value
toJSON PEmulationSetDisabledImageTypes
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"imageTypes" Text -> [EmulationDisabledImageType] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([EmulationDisabledImageType] -> Pair)
-> Maybe [EmulationDisabledImageType] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> [EmulationDisabledImageType] -> Maybe [EmulationDisabledImageType]
forall a. a -> Maybe a
Just (PEmulationSetDisabledImageTypes -> [EmulationDisabledImageType]
pEmulationSetDisabledImageTypesImageTypes PEmulationSetDisabledImageTypes
p)
    ]
instance Command PEmulationSetDisabledImageTypes where
  type CommandResponse PEmulationSetDisabledImageTypes = ()
  commandName :: Proxy PEmulationSetDisabledImageTypes -> String
commandName Proxy PEmulationSetDisabledImageTypes
_ = String
"Emulation.setDisabledImageTypes"
  fromJSON :: Proxy PEmulationSetDisabledImageTypes
-> Value
-> Result (CommandResponse PEmulationSetDisabledImageTypes)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PEmulationSetDisabledImageTypes -> Result ())
-> Proxy PEmulationSetDisabledImageTypes
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PEmulationSetDisabledImageTypes -> ())
-> Proxy PEmulationSetDisabledImageTypes
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PEmulationSetDisabledImageTypes -> ()
forall a b. a -> b -> a
const ()


-- | Parameters of the 'Emulation.setHardwareConcurrencyOverride' command.
data PEmulationSetHardwareConcurrencyOverride = PEmulationSetHardwareConcurrencyOverride
  {
    -- | Hardware concurrency to report
    PEmulationSetHardwareConcurrencyOverride -> Int
pEmulationSetHardwareConcurrencyOverrideHardwareConcurrency :: Int
  }
  deriving (PEmulationSetHardwareConcurrencyOverride
-> PEmulationSetHardwareConcurrencyOverride -> Bool
(PEmulationSetHardwareConcurrencyOverride
 -> PEmulationSetHardwareConcurrencyOverride -> Bool)
-> (PEmulationSetHardwareConcurrencyOverride
    -> PEmulationSetHardwareConcurrencyOverride -> Bool)
-> Eq PEmulationSetHardwareConcurrencyOverride
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PEmulationSetHardwareConcurrencyOverride
-> PEmulationSetHardwareConcurrencyOverride -> Bool
$c/= :: PEmulationSetHardwareConcurrencyOverride
-> PEmulationSetHardwareConcurrencyOverride -> Bool
== :: PEmulationSetHardwareConcurrencyOverride
-> PEmulationSetHardwareConcurrencyOverride -> Bool
$c== :: PEmulationSetHardwareConcurrencyOverride
-> PEmulationSetHardwareConcurrencyOverride -> Bool
Eq, Int -> PEmulationSetHardwareConcurrencyOverride -> ShowS
[PEmulationSetHardwareConcurrencyOverride] -> ShowS
PEmulationSetHardwareConcurrencyOverride -> String
(Int -> PEmulationSetHardwareConcurrencyOverride -> ShowS)
-> (PEmulationSetHardwareConcurrencyOverride -> String)
-> ([PEmulationSetHardwareConcurrencyOverride] -> ShowS)
-> Show PEmulationSetHardwareConcurrencyOverride
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PEmulationSetHardwareConcurrencyOverride] -> ShowS
$cshowList :: [PEmulationSetHardwareConcurrencyOverride] -> ShowS
show :: PEmulationSetHardwareConcurrencyOverride -> String
$cshow :: PEmulationSetHardwareConcurrencyOverride -> String
showsPrec :: Int -> PEmulationSetHardwareConcurrencyOverride -> ShowS
$cshowsPrec :: Int -> PEmulationSetHardwareConcurrencyOverride -> ShowS
Show)
pEmulationSetHardwareConcurrencyOverride
  {-
  -- | Hardware concurrency to report
  -}
  :: Int
  -> PEmulationSetHardwareConcurrencyOverride
pEmulationSetHardwareConcurrencyOverride :: Int -> PEmulationSetHardwareConcurrencyOverride
pEmulationSetHardwareConcurrencyOverride
  Int
arg_pEmulationSetHardwareConcurrencyOverrideHardwareConcurrency
  = Int -> PEmulationSetHardwareConcurrencyOverride
PEmulationSetHardwareConcurrencyOverride
    Int
arg_pEmulationSetHardwareConcurrencyOverrideHardwareConcurrency
instance ToJSON PEmulationSetHardwareConcurrencyOverride where
  toJSON :: PEmulationSetHardwareConcurrencyOverride -> Value
toJSON PEmulationSetHardwareConcurrencyOverride
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"hardwareConcurrency" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PEmulationSetHardwareConcurrencyOverride -> Int
pEmulationSetHardwareConcurrencyOverrideHardwareConcurrency PEmulationSetHardwareConcurrencyOverride
p)
    ]
instance Command PEmulationSetHardwareConcurrencyOverride where
  type CommandResponse PEmulationSetHardwareConcurrencyOverride = ()
  commandName :: Proxy PEmulationSetHardwareConcurrencyOverride -> String
commandName Proxy PEmulationSetHardwareConcurrencyOverride
_ = String
"Emulation.setHardwareConcurrencyOverride"
  fromJSON :: Proxy PEmulationSetHardwareConcurrencyOverride
-> Value
-> Result
     (CommandResponse PEmulationSetHardwareConcurrencyOverride)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PEmulationSetHardwareConcurrencyOverride -> Result ())
-> Proxy PEmulationSetHardwareConcurrencyOverride
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PEmulationSetHardwareConcurrencyOverride -> ())
-> Proxy PEmulationSetHardwareConcurrencyOverride
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PEmulationSetHardwareConcurrencyOverride -> ()
forall a b. a -> b -> a
const ()

-- | Allows overriding user agent with the given string.

-- | Parameters of the 'Emulation.setUserAgentOverride' command.
data PEmulationSetUserAgentOverride = PEmulationSetUserAgentOverride
  {
    -- | User agent to use.
    PEmulationSetUserAgentOverride -> Text
pEmulationSetUserAgentOverrideUserAgent :: T.Text,
    -- | Browser langugage to emulate.
    PEmulationSetUserAgentOverride -> Maybe Text
pEmulationSetUserAgentOverrideAcceptLanguage :: Maybe T.Text,
    -- | The platform navigator.platform should return.
    PEmulationSetUserAgentOverride -> Maybe Text
pEmulationSetUserAgentOverridePlatform :: Maybe T.Text,
    -- | To be sent in Sec-CH-UA-* headers and returned in navigator.userAgentData
    PEmulationSetUserAgentOverride -> Maybe EmulationUserAgentMetadata
pEmulationSetUserAgentOverrideUserAgentMetadata :: Maybe EmulationUserAgentMetadata
  }
  deriving (PEmulationSetUserAgentOverride
-> PEmulationSetUserAgentOverride -> Bool
(PEmulationSetUserAgentOverride
 -> PEmulationSetUserAgentOverride -> Bool)
-> (PEmulationSetUserAgentOverride
    -> PEmulationSetUserAgentOverride -> Bool)
-> Eq PEmulationSetUserAgentOverride
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PEmulationSetUserAgentOverride
-> PEmulationSetUserAgentOverride -> Bool
$c/= :: PEmulationSetUserAgentOverride
-> PEmulationSetUserAgentOverride -> Bool
== :: PEmulationSetUserAgentOverride
-> PEmulationSetUserAgentOverride -> Bool
$c== :: PEmulationSetUserAgentOverride
-> PEmulationSetUserAgentOverride -> Bool
Eq, Int -> PEmulationSetUserAgentOverride -> ShowS
[PEmulationSetUserAgentOverride] -> ShowS
PEmulationSetUserAgentOverride -> String
(Int -> PEmulationSetUserAgentOverride -> ShowS)
-> (PEmulationSetUserAgentOverride -> String)
-> ([PEmulationSetUserAgentOverride] -> ShowS)
-> Show PEmulationSetUserAgentOverride
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PEmulationSetUserAgentOverride] -> ShowS
$cshowList :: [PEmulationSetUserAgentOverride] -> ShowS
show :: PEmulationSetUserAgentOverride -> String
$cshow :: PEmulationSetUserAgentOverride -> String
showsPrec :: Int -> PEmulationSetUserAgentOverride -> ShowS
$cshowsPrec :: Int -> PEmulationSetUserAgentOverride -> ShowS
Show)
pEmulationSetUserAgentOverride
  {-
  -- | User agent to use.
  -}
  :: T.Text
  -> PEmulationSetUserAgentOverride
pEmulationSetUserAgentOverride :: Text -> PEmulationSetUserAgentOverride
pEmulationSetUserAgentOverride
  Text
arg_pEmulationSetUserAgentOverrideUserAgent
  = Text
-> Maybe Text
-> Maybe Text
-> Maybe EmulationUserAgentMetadata
-> PEmulationSetUserAgentOverride
PEmulationSetUserAgentOverride
    Text
arg_pEmulationSetUserAgentOverrideUserAgent
    Maybe Text
forall a. Maybe a
Nothing
    Maybe Text
forall a. Maybe a
Nothing
    Maybe EmulationUserAgentMetadata
forall a. Maybe a
Nothing
instance ToJSON PEmulationSetUserAgentOverride where
  toJSON :: PEmulationSetUserAgentOverride -> Value
toJSON PEmulationSetUserAgentOverride
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"userAgent" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PEmulationSetUserAgentOverride -> Text
pEmulationSetUserAgentOverrideUserAgent PEmulationSetUserAgentOverride
p),
    (Text
"acceptLanguage" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PEmulationSetUserAgentOverride -> Maybe Text
pEmulationSetUserAgentOverrideAcceptLanguage PEmulationSetUserAgentOverride
p),
    (Text
"platform" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PEmulationSetUserAgentOverride -> Maybe Text
pEmulationSetUserAgentOverridePlatform PEmulationSetUserAgentOverride
p),
    (Text
"userAgentMetadata" Text -> EmulationUserAgentMetadata -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (EmulationUserAgentMetadata -> Pair)
-> Maybe EmulationUserAgentMetadata -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PEmulationSetUserAgentOverride -> Maybe EmulationUserAgentMetadata
pEmulationSetUserAgentOverrideUserAgentMetadata PEmulationSetUserAgentOverride
p)
    ]
instance Command PEmulationSetUserAgentOverride where
  type CommandResponse PEmulationSetUserAgentOverride = ()
  commandName :: Proxy PEmulationSetUserAgentOverride -> String
commandName Proxy PEmulationSetUserAgentOverride
_ = String
"Emulation.setUserAgentOverride"
  fromJSON :: Proxy PEmulationSetUserAgentOverride
-> Value -> Result (CommandResponse PEmulationSetUserAgentOverride)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PEmulationSetUserAgentOverride -> Result ())
-> Proxy PEmulationSetUserAgentOverride
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PEmulationSetUserAgentOverride -> ())
-> Proxy PEmulationSetUserAgentOverride
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PEmulationSetUserAgentOverride -> ()
forall a b. a -> b -> a
const ()

-- | Allows overriding the automation flag.

-- | Parameters of the 'Emulation.setAutomationOverride' command.
data PEmulationSetAutomationOverride = PEmulationSetAutomationOverride
  {
    -- | Whether the override should be enabled.
    PEmulationSetAutomationOverride -> Bool
pEmulationSetAutomationOverrideEnabled :: Bool
  }
  deriving (PEmulationSetAutomationOverride
-> PEmulationSetAutomationOverride -> Bool
(PEmulationSetAutomationOverride
 -> PEmulationSetAutomationOverride -> Bool)
-> (PEmulationSetAutomationOverride
    -> PEmulationSetAutomationOverride -> Bool)
-> Eq PEmulationSetAutomationOverride
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PEmulationSetAutomationOverride
-> PEmulationSetAutomationOverride -> Bool
$c/= :: PEmulationSetAutomationOverride
-> PEmulationSetAutomationOverride -> Bool
== :: PEmulationSetAutomationOverride
-> PEmulationSetAutomationOverride -> Bool
$c== :: PEmulationSetAutomationOverride
-> PEmulationSetAutomationOverride -> Bool
Eq, Int -> PEmulationSetAutomationOverride -> ShowS
[PEmulationSetAutomationOverride] -> ShowS
PEmulationSetAutomationOverride -> String
(Int -> PEmulationSetAutomationOverride -> ShowS)
-> (PEmulationSetAutomationOverride -> String)
-> ([PEmulationSetAutomationOverride] -> ShowS)
-> Show PEmulationSetAutomationOverride
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PEmulationSetAutomationOverride] -> ShowS
$cshowList :: [PEmulationSetAutomationOverride] -> ShowS
show :: PEmulationSetAutomationOverride -> String
$cshow :: PEmulationSetAutomationOverride -> String
showsPrec :: Int -> PEmulationSetAutomationOverride -> ShowS
$cshowsPrec :: Int -> PEmulationSetAutomationOverride -> ShowS
Show)
pEmulationSetAutomationOverride
  {-
  -- | Whether the override should be enabled.
  -}
  :: Bool
  -> PEmulationSetAutomationOverride
pEmulationSetAutomationOverride :: Bool -> PEmulationSetAutomationOverride
pEmulationSetAutomationOverride
  Bool
arg_pEmulationSetAutomationOverrideEnabled
  = Bool -> PEmulationSetAutomationOverride
PEmulationSetAutomationOverride
    Bool
arg_pEmulationSetAutomationOverrideEnabled
instance ToJSON PEmulationSetAutomationOverride where
  toJSON :: PEmulationSetAutomationOverride -> Value
toJSON PEmulationSetAutomationOverride
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"enabled" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (PEmulationSetAutomationOverride -> Bool
pEmulationSetAutomationOverrideEnabled PEmulationSetAutomationOverride
p)
    ]
instance Command PEmulationSetAutomationOverride where
  type CommandResponse PEmulationSetAutomationOverride = ()
  commandName :: Proxy PEmulationSetAutomationOverride -> String
commandName Proxy PEmulationSetAutomationOverride
_ = String
"Emulation.setAutomationOverride"
  fromJSON :: Proxy PEmulationSetAutomationOverride
-> Value
-> Result (CommandResponse PEmulationSetAutomationOverride)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PEmulationSetAutomationOverride -> Result ())
-> Proxy PEmulationSetAutomationOverride
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PEmulationSetAutomationOverride -> ())
-> Proxy PEmulationSetAutomationOverride
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PEmulationSetAutomationOverride -> ()
forall a b. a -> b -> a
const ()

-- | Type 'Network.ResourceType'.
--   Resource type as it was perceived by the rendering engine.
data NetworkResourceType = NetworkResourceTypeDocument | NetworkResourceTypeStylesheet | NetworkResourceTypeImage | NetworkResourceTypeMedia | NetworkResourceTypeFont | NetworkResourceTypeScript | NetworkResourceTypeTextTrack | NetworkResourceTypeXHR | NetworkResourceTypeFetch | NetworkResourceTypePrefetch | NetworkResourceTypeEventSource | NetworkResourceTypeWebSocket | NetworkResourceTypeManifest | NetworkResourceTypeSignedExchange | NetworkResourceTypePing | NetworkResourceTypeCSPViolationReport | NetworkResourceTypePreflight | NetworkResourceTypeOther
  deriving (Eq NetworkResourceType
Eq NetworkResourceType
-> (NetworkResourceType -> NetworkResourceType -> Ordering)
-> (NetworkResourceType -> NetworkResourceType -> Bool)
-> (NetworkResourceType -> NetworkResourceType -> Bool)
-> (NetworkResourceType -> NetworkResourceType -> Bool)
-> (NetworkResourceType -> NetworkResourceType -> Bool)
-> (NetworkResourceType
    -> NetworkResourceType -> NetworkResourceType)
-> (NetworkResourceType
    -> NetworkResourceType -> NetworkResourceType)
-> Ord NetworkResourceType
NetworkResourceType -> NetworkResourceType -> Bool
NetworkResourceType -> NetworkResourceType -> Ordering
NetworkResourceType -> NetworkResourceType -> NetworkResourceType
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: NetworkResourceType -> NetworkResourceType -> NetworkResourceType
$cmin :: NetworkResourceType -> NetworkResourceType -> NetworkResourceType
max :: NetworkResourceType -> NetworkResourceType -> NetworkResourceType
$cmax :: NetworkResourceType -> NetworkResourceType -> NetworkResourceType
>= :: NetworkResourceType -> NetworkResourceType -> Bool
$c>= :: NetworkResourceType -> NetworkResourceType -> Bool
> :: NetworkResourceType -> NetworkResourceType -> Bool
$c> :: NetworkResourceType -> NetworkResourceType -> Bool
<= :: NetworkResourceType -> NetworkResourceType -> Bool
$c<= :: NetworkResourceType -> NetworkResourceType -> Bool
< :: NetworkResourceType -> NetworkResourceType -> Bool
$c< :: NetworkResourceType -> NetworkResourceType -> Bool
compare :: NetworkResourceType -> NetworkResourceType -> Ordering
$ccompare :: NetworkResourceType -> NetworkResourceType -> Ordering
$cp1Ord :: Eq NetworkResourceType
Ord, NetworkResourceType -> NetworkResourceType -> Bool
(NetworkResourceType -> NetworkResourceType -> Bool)
-> (NetworkResourceType -> NetworkResourceType -> Bool)
-> Eq NetworkResourceType
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkResourceType -> NetworkResourceType -> Bool
$c/= :: NetworkResourceType -> NetworkResourceType -> Bool
== :: NetworkResourceType -> NetworkResourceType -> Bool
$c== :: NetworkResourceType -> NetworkResourceType -> Bool
Eq, Int -> NetworkResourceType -> ShowS
[NetworkResourceType] -> ShowS
NetworkResourceType -> String
(Int -> NetworkResourceType -> ShowS)
-> (NetworkResourceType -> String)
-> ([NetworkResourceType] -> ShowS)
-> Show NetworkResourceType
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkResourceType] -> ShowS
$cshowList :: [NetworkResourceType] -> ShowS
show :: NetworkResourceType -> String
$cshow :: NetworkResourceType -> String
showsPrec :: Int -> NetworkResourceType -> ShowS
$cshowsPrec :: Int -> NetworkResourceType -> ShowS
Show, ReadPrec [NetworkResourceType]
ReadPrec NetworkResourceType
Int -> ReadS NetworkResourceType
ReadS [NetworkResourceType]
(Int -> ReadS NetworkResourceType)
-> ReadS [NetworkResourceType]
-> ReadPrec NetworkResourceType
-> ReadPrec [NetworkResourceType]
-> Read NetworkResourceType
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [NetworkResourceType]
$creadListPrec :: ReadPrec [NetworkResourceType]
readPrec :: ReadPrec NetworkResourceType
$creadPrec :: ReadPrec NetworkResourceType
readList :: ReadS [NetworkResourceType]
$creadList :: ReadS [NetworkResourceType]
readsPrec :: Int -> ReadS NetworkResourceType
$creadsPrec :: Int -> ReadS NetworkResourceType
Read)
instance FromJSON NetworkResourceType where
  parseJSON :: Value -> Parser NetworkResourceType
parseJSON = String
-> (Text -> Parser NetworkResourceType)
-> Value
-> Parser NetworkResourceType
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"NetworkResourceType" ((Text -> Parser NetworkResourceType)
 -> Value -> Parser NetworkResourceType)
-> (Text -> Parser NetworkResourceType)
-> Value
-> Parser NetworkResourceType
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"Document" -> NetworkResourceType -> Parser NetworkResourceType
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkResourceType
NetworkResourceTypeDocument
    Text
"Stylesheet" -> NetworkResourceType -> Parser NetworkResourceType
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkResourceType
NetworkResourceTypeStylesheet
    Text
"Image" -> NetworkResourceType -> Parser NetworkResourceType
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkResourceType
NetworkResourceTypeImage
    Text
"Media" -> NetworkResourceType -> Parser NetworkResourceType
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkResourceType
NetworkResourceTypeMedia
    Text
"Font" -> NetworkResourceType -> Parser NetworkResourceType
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkResourceType
NetworkResourceTypeFont
    Text
"Script" -> NetworkResourceType -> Parser NetworkResourceType
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkResourceType
NetworkResourceTypeScript
    Text
"TextTrack" -> NetworkResourceType -> Parser NetworkResourceType
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkResourceType
NetworkResourceTypeTextTrack
    Text
"XHR" -> NetworkResourceType -> Parser NetworkResourceType
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkResourceType
NetworkResourceTypeXHR
    Text
"Fetch" -> NetworkResourceType -> Parser NetworkResourceType
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkResourceType
NetworkResourceTypeFetch
    Text
"Prefetch" -> NetworkResourceType -> Parser NetworkResourceType
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkResourceType
NetworkResourceTypePrefetch
    Text
"EventSource" -> NetworkResourceType -> Parser NetworkResourceType
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkResourceType
NetworkResourceTypeEventSource
    Text
"WebSocket" -> NetworkResourceType -> Parser NetworkResourceType
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkResourceType
NetworkResourceTypeWebSocket
    Text
"Manifest" -> NetworkResourceType -> Parser NetworkResourceType
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkResourceType
NetworkResourceTypeManifest
    Text
"SignedExchange" -> NetworkResourceType -> Parser NetworkResourceType
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkResourceType
NetworkResourceTypeSignedExchange
    Text
"Ping" -> NetworkResourceType -> Parser NetworkResourceType
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkResourceType
NetworkResourceTypePing
    Text
"CSPViolationReport" -> NetworkResourceType -> Parser NetworkResourceType
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkResourceType
NetworkResourceTypeCSPViolationReport
    Text
"Preflight" -> NetworkResourceType -> Parser NetworkResourceType
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkResourceType
NetworkResourceTypePreflight
    Text
"Other" -> NetworkResourceType -> Parser NetworkResourceType
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkResourceType
NetworkResourceTypeOther
    Text
"_" -> String -> Parser NetworkResourceType
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse NetworkResourceType"
instance ToJSON NetworkResourceType where
  toJSON :: NetworkResourceType -> Value
toJSON NetworkResourceType
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case NetworkResourceType
v of
    NetworkResourceType
NetworkResourceTypeDocument -> Text
"Document"
    NetworkResourceType
NetworkResourceTypeStylesheet -> Text
"Stylesheet"
    NetworkResourceType
NetworkResourceTypeImage -> Text
"Image"
    NetworkResourceType
NetworkResourceTypeMedia -> Text
"Media"
    NetworkResourceType
NetworkResourceTypeFont -> Text
"Font"
    NetworkResourceType
NetworkResourceTypeScript -> Text
"Script"
    NetworkResourceType
NetworkResourceTypeTextTrack -> Text
"TextTrack"
    NetworkResourceType
NetworkResourceTypeXHR -> Text
"XHR"
    NetworkResourceType
NetworkResourceTypeFetch -> Text
"Fetch"
    NetworkResourceType
NetworkResourceTypePrefetch -> Text
"Prefetch"
    NetworkResourceType
NetworkResourceTypeEventSource -> Text
"EventSource"
    NetworkResourceType
NetworkResourceTypeWebSocket -> Text
"WebSocket"
    NetworkResourceType
NetworkResourceTypeManifest -> Text
"Manifest"
    NetworkResourceType
NetworkResourceTypeSignedExchange -> Text
"SignedExchange"
    NetworkResourceType
NetworkResourceTypePing -> Text
"Ping"
    NetworkResourceType
NetworkResourceTypeCSPViolationReport -> Text
"CSPViolationReport"
    NetworkResourceType
NetworkResourceTypePreflight -> Text
"Preflight"
    NetworkResourceType
NetworkResourceTypeOther -> Text
"Other"

-- | Type 'Network.LoaderId'.
--   Unique loader identifier.
type NetworkLoaderId = T.Text

-- | Type 'Network.RequestId'.
--   Unique request identifier.
type NetworkRequestId = T.Text

-- | Type 'Network.InterceptionId'.
--   Unique intercepted request identifier.
type NetworkInterceptionId = T.Text

-- | Type 'Network.ErrorReason'.
--   Network level fetch failure reason.
data NetworkErrorReason = NetworkErrorReasonFailed | NetworkErrorReasonAborted | NetworkErrorReasonTimedOut | NetworkErrorReasonAccessDenied | NetworkErrorReasonConnectionClosed | NetworkErrorReasonConnectionReset | NetworkErrorReasonConnectionRefused | NetworkErrorReasonConnectionAborted | NetworkErrorReasonConnectionFailed | NetworkErrorReasonNameNotResolved | NetworkErrorReasonInternetDisconnected | NetworkErrorReasonAddressUnreachable | NetworkErrorReasonBlockedByClient | NetworkErrorReasonBlockedByResponse
  deriving (Eq NetworkErrorReason
Eq NetworkErrorReason
-> (NetworkErrorReason -> NetworkErrorReason -> Ordering)
-> (NetworkErrorReason -> NetworkErrorReason -> Bool)
-> (NetworkErrorReason -> NetworkErrorReason -> Bool)
-> (NetworkErrorReason -> NetworkErrorReason -> Bool)
-> (NetworkErrorReason -> NetworkErrorReason -> Bool)
-> (NetworkErrorReason -> NetworkErrorReason -> NetworkErrorReason)
-> (NetworkErrorReason -> NetworkErrorReason -> NetworkErrorReason)
-> Ord NetworkErrorReason
NetworkErrorReason -> NetworkErrorReason -> Bool
NetworkErrorReason -> NetworkErrorReason -> Ordering
NetworkErrorReason -> NetworkErrorReason -> NetworkErrorReason
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: NetworkErrorReason -> NetworkErrorReason -> NetworkErrorReason
$cmin :: NetworkErrorReason -> NetworkErrorReason -> NetworkErrorReason
max :: NetworkErrorReason -> NetworkErrorReason -> NetworkErrorReason
$cmax :: NetworkErrorReason -> NetworkErrorReason -> NetworkErrorReason
>= :: NetworkErrorReason -> NetworkErrorReason -> Bool
$c>= :: NetworkErrorReason -> NetworkErrorReason -> Bool
> :: NetworkErrorReason -> NetworkErrorReason -> Bool
$c> :: NetworkErrorReason -> NetworkErrorReason -> Bool
<= :: NetworkErrorReason -> NetworkErrorReason -> Bool
$c<= :: NetworkErrorReason -> NetworkErrorReason -> Bool
< :: NetworkErrorReason -> NetworkErrorReason -> Bool
$c< :: NetworkErrorReason -> NetworkErrorReason -> Bool
compare :: NetworkErrorReason -> NetworkErrorReason -> Ordering
$ccompare :: NetworkErrorReason -> NetworkErrorReason -> Ordering
$cp1Ord :: Eq NetworkErrorReason
Ord, NetworkErrorReason -> NetworkErrorReason -> Bool
(NetworkErrorReason -> NetworkErrorReason -> Bool)
-> (NetworkErrorReason -> NetworkErrorReason -> Bool)
-> Eq NetworkErrorReason
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkErrorReason -> NetworkErrorReason -> Bool
$c/= :: NetworkErrorReason -> NetworkErrorReason -> Bool
== :: NetworkErrorReason -> NetworkErrorReason -> Bool
$c== :: NetworkErrorReason -> NetworkErrorReason -> Bool
Eq, Int -> NetworkErrorReason -> ShowS
[NetworkErrorReason] -> ShowS
NetworkErrorReason -> String
(Int -> NetworkErrorReason -> ShowS)
-> (NetworkErrorReason -> String)
-> ([NetworkErrorReason] -> ShowS)
-> Show NetworkErrorReason
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkErrorReason] -> ShowS
$cshowList :: [NetworkErrorReason] -> ShowS
show :: NetworkErrorReason -> String
$cshow :: NetworkErrorReason -> String
showsPrec :: Int -> NetworkErrorReason -> ShowS
$cshowsPrec :: Int -> NetworkErrorReason -> ShowS
Show, ReadPrec [NetworkErrorReason]
ReadPrec NetworkErrorReason
Int -> ReadS NetworkErrorReason
ReadS [NetworkErrorReason]
(Int -> ReadS NetworkErrorReason)
-> ReadS [NetworkErrorReason]
-> ReadPrec NetworkErrorReason
-> ReadPrec [NetworkErrorReason]
-> Read NetworkErrorReason
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [NetworkErrorReason]
$creadListPrec :: ReadPrec [NetworkErrorReason]
readPrec :: ReadPrec NetworkErrorReason
$creadPrec :: ReadPrec NetworkErrorReason
readList :: ReadS [NetworkErrorReason]
$creadList :: ReadS [NetworkErrorReason]
readsPrec :: Int -> ReadS NetworkErrorReason
$creadsPrec :: Int -> ReadS NetworkErrorReason
Read)
instance FromJSON NetworkErrorReason where
  parseJSON :: Value -> Parser NetworkErrorReason
parseJSON = String
-> (Text -> Parser NetworkErrorReason)
-> Value
-> Parser NetworkErrorReason
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"NetworkErrorReason" ((Text -> Parser NetworkErrorReason)
 -> Value -> Parser NetworkErrorReason)
-> (Text -> Parser NetworkErrorReason)
-> Value
-> Parser NetworkErrorReason
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"Failed" -> NetworkErrorReason -> Parser NetworkErrorReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkErrorReason
NetworkErrorReasonFailed
    Text
"Aborted" -> NetworkErrorReason -> Parser NetworkErrorReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkErrorReason
NetworkErrorReasonAborted
    Text
"TimedOut" -> NetworkErrorReason -> Parser NetworkErrorReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkErrorReason
NetworkErrorReasonTimedOut
    Text
"AccessDenied" -> NetworkErrorReason -> Parser NetworkErrorReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkErrorReason
NetworkErrorReasonAccessDenied
    Text
"ConnectionClosed" -> NetworkErrorReason -> Parser NetworkErrorReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkErrorReason
NetworkErrorReasonConnectionClosed
    Text
"ConnectionReset" -> NetworkErrorReason -> Parser NetworkErrorReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkErrorReason
NetworkErrorReasonConnectionReset
    Text
"ConnectionRefused" -> NetworkErrorReason -> Parser NetworkErrorReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkErrorReason
NetworkErrorReasonConnectionRefused
    Text
"ConnectionAborted" -> NetworkErrorReason -> Parser NetworkErrorReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkErrorReason
NetworkErrorReasonConnectionAborted
    Text
"ConnectionFailed" -> NetworkErrorReason -> Parser NetworkErrorReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkErrorReason
NetworkErrorReasonConnectionFailed
    Text
"NameNotResolved" -> NetworkErrorReason -> Parser NetworkErrorReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkErrorReason
NetworkErrorReasonNameNotResolved
    Text
"InternetDisconnected" -> NetworkErrorReason -> Parser NetworkErrorReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkErrorReason
NetworkErrorReasonInternetDisconnected
    Text
"AddressUnreachable" -> NetworkErrorReason -> Parser NetworkErrorReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkErrorReason
NetworkErrorReasonAddressUnreachable
    Text
"BlockedByClient" -> NetworkErrorReason -> Parser NetworkErrorReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkErrorReason
NetworkErrorReasonBlockedByClient
    Text
"BlockedByResponse" -> NetworkErrorReason -> Parser NetworkErrorReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkErrorReason
NetworkErrorReasonBlockedByResponse
    Text
"_" -> String -> Parser NetworkErrorReason
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse NetworkErrorReason"
instance ToJSON NetworkErrorReason where
  toJSON :: NetworkErrorReason -> Value
toJSON NetworkErrorReason
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case NetworkErrorReason
v of
    NetworkErrorReason
NetworkErrorReasonFailed -> Text
"Failed"
    NetworkErrorReason
NetworkErrorReasonAborted -> Text
"Aborted"
    NetworkErrorReason
NetworkErrorReasonTimedOut -> Text
"TimedOut"
    NetworkErrorReason
NetworkErrorReasonAccessDenied -> Text
"AccessDenied"
    NetworkErrorReason
NetworkErrorReasonConnectionClosed -> Text
"ConnectionClosed"
    NetworkErrorReason
NetworkErrorReasonConnectionReset -> Text
"ConnectionReset"
    NetworkErrorReason
NetworkErrorReasonConnectionRefused -> Text
"ConnectionRefused"
    NetworkErrorReason
NetworkErrorReasonConnectionAborted -> Text
"ConnectionAborted"
    NetworkErrorReason
NetworkErrorReasonConnectionFailed -> Text
"ConnectionFailed"
    NetworkErrorReason
NetworkErrorReasonNameNotResolved -> Text
"NameNotResolved"
    NetworkErrorReason
NetworkErrorReasonInternetDisconnected -> Text
"InternetDisconnected"
    NetworkErrorReason
NetworkErrorReasonAddressUnreachable -> Text
"AddressUnreachable"
    NetworkErrorReason
NetworkErrorReasonBlockedByClient -> Text
"BlockedByClient"
    NetworkErrorReason
NetworkErrorReasonBlockedByResponse -> Text
"BlockedByResponse"

-- | Type 'Network.TimeSinceEpoch'.
--   UTC time in seconds, counted from January 1, 1970.
type NetworkTimeSinceEpoch = Double

-- | Type 'Network.MonotonicTime'.
--   Monotonically increasing time in seconds since an arbitrary point in the past.
type NetworkMonotonicTime = Double

-- | Type 'Network.Headers'.
--   Request / response headers as keys / values of JSON object.
type NetworkHeaders = [(T.Text, T.Text)]

-- | Type 'Network.ConnectionType'.
--   The underlying connection technology that the browser is supposedly using.
data NetworkConnectionType = NetworkConnectionTypeNone | NetworkConnectionTypeCellular2g | NetworkConnectionTypeCellular3g | NetworkConnectionTypeCellular4g | NetworkConnectionTypeBluetooth | NetworkConnectionTypeEthernet | NetworkConnectionTypeWifi | NetworkConnectionTypeWimax | NetworkConnectionTypeOther
  deriving (Eq NetworkConnectionType
Eq NetworkConnectionType
-> (NetworkConnectionType -> NetworkConnectionType -> Ordering)
-> (NetworkConnectionType -> NetworkConnectionType -> Bool)
-> (NetworkConnectionType -> NetworkConnectionType -> Bool)
-> (NetworkConnectionType -> NetworkConnectionType -> Bool)
-> (NetworkConnectionType -> NetworkConnectionType -> Bool)
-> (NetworkConnectionType
    -> NetworkConnectionType -> NetworkConnectionType)
-> (NetworkConnectionType
    -> NetworkConnectionType -> NetworkConnectionType)
-> Ord NetworkConnectionType
NetworkConnectionType -> NetworkConnectionType -> Bool
NetworkConnectionType -> NetworkConnectionType -> Ordering
NetworkConnectionType
-> NetworkConnectionType -> NetworkConnectionType
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: NetworkConnectionType
-> NetworkConnectionType -> NetworkConnectionType
$cmin :: NetworkConnectionType
-> NetworkConnectionType -> NetworkConnectionType
max :: NetworkConnectionType
-> NetworkConnectionType -> NetworkConnectionType
$cmax :: NetworkConnectionType
-> NetworkConnectionType -> NetworkConnectionType
>= :: NetworkConnectionType -> NetworkConnectionType -> Bool
$c>= :: NetworkConnectionType -> NetworkConnectionType -> Bool
> :: NetworkConnectionType -> NetworkConnectionType -> Bool
$c> :: NetworkConnectionType -> NetworkConnectionType -> Bool
<= :: NetworkConnectionType -> NetworkConnectionType -> Bool
$c<= :: NetworkConnectionType -> NetworkConnectionType -> Bool
< :: NetworkConnectionType -> NetworkConnectionType -> Bool
$c< :: NetworkConnectionType -> NetworkConnectionType -> Bool
compare :: NetworkConnectionType -> NetworkConnectionType -> Ordering
$ccompare :: NetworkConnectionType -> NetworkConnectionType -> Ordering
$cp1Ord :: Eq NetworkConnectionType
Ord, NetworkConnectionType -> NetworkConnectionType -> Bool
(NetworkConnectionType -> NetworkConnectionType -> Bool)
-> (NetworkConnectionType -> NetworkConnectionType -> Bool)
-> Eq NetworkConnectionType
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkConnectionType -> NetworkConnectionType -> Bool
$c/= :: NetworkConnectionType -> NetworkConnectionType -> Bool
== :: NetworkConnectionType -> NetworkConnectionType -> Bool
$c== :: NetworkConnectionType -> NetworkConnectionType -> Bool
Eq, Int -> NetworkConnectionType -> ShowS
[NetworkConnectionType] -> ShowS
NetworkConnectionType -> String
(Int -> NetworkConnectionType -> ShowS)
-> (NetworkConnectionType -> String)
-> ([NetworkConnectionType] -> ShowS)
-> Show NetworkConnectionType
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkConnectionType] -> ShowS
$cshowList :: [NetworkConnectionType] -> ShowS
show :: NetworkConnectionType -> String
$cshow :: NetworkConnectionType -> String
showsPrec :: Int -> NetworkConnectionType -> ShowS
$cshowsPrec :: Int -> NetworkConnectionType -> ShowS
Show, ReadPrec [NetworkConnectionType]
ReadPrec NetworkConnectionType
Int -> ReadS NetworkConnectionType
ReadS [NetworkConnectionType]
(Int -> ReadS NetworkConnectionType)
-> ReadS [NetworkConnectionType]
-> ReadPrec NetworkConnectionType
-> ReadPrec [NetworkConnectionType]
-> Read NetworkConnectionType
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [NetworkConnectionType]
$creadListPrec :: ReadPrec [NetworkConnectionType]
readPrec :: ReadPrec NetworkConnectionType
$creadPrec :: ReadPrec NetworkConnectionType
readList :: ReadS [NetworkConnectionType]
$creadList :: ReadS [NetworkConnectionType]
readsPrec :: Int -> ReadS NetworkConnectionType
$creadsPrec :: Int -> ReadS NetworkConnectionType
Read)
instance FromJSON NetworkConnectionType where
  parseJSON :: Value -> Parser NetworkConnectionType
parseJSON = String
-> (Text -> Parser NetworkConnectionType)
-> Value
-> Parser NetworkConnectionType
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"NetworkConnectionType" ((Text -> Parser NetworkConnectionType)
 -> Value -> Parser NetworkConnectionType)
-> (Text -> Parser NetworkConnectionType)
-> Value
-> Parser NetworkConnectionType
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"none" -> NetworkConnectionType -> Parser NetworkConnectionType
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkConnectionType
NetworkConnectionTypeNone
    Text
"cellular2g" -> NetworkConnectionType -> Parser NetworkConnectionType
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkConnectionType
NetworkConnectionTypeCellular2g
    Text
"cellular3g" -> NetworkConnectionType -> Parser NetworkConnectionType
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkConnectionType
NetworkConnectionTypeCellular3g
    Text
"cellular4g" -> NetworkConnectionType -> Parser NetworkConnectionType
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkConnectionType
NetworkConnectionTypeCellular4g
    Text
"bluetooth" -> NetworkConnectionType -> Parser NetworkConnectionType
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkConnectionType
NetworkConnectionTypeBluetooth
    Text
"ethernet" -> NetworkConnectionType -> Parser NetworkConnectionType
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkConnectionType
NetworkConnectionTypeEthernet
    Text
"wifi" -> NetworkConnectionType -> Parser NetworkConnectionType
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkConnectionType
NetworkConnectionTypeWifi
    Text
"wimax" -> NetworkConnectionType -> Parser NetworkConnectionType
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkConnectionType
NetworkConnectionTypeWimax
    Text
"other" -> NetworkConnectionType -> Parser NetworkConnectionType
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkConnectionType
NetworkConnectionTypeOther
    Text
"_" -> String -> Parser NetworkConnectionType
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse NetworkConnectionType"
instance ToJSON NetworkConnectionType where
  toJSON :: NetworkConnectionType -> Value
toJSON NetworkConnectionType
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case NetworkConnectionType
v of
    NetworkConnectionType
NetworkConnectionTypeNone -> Text
"none"
    NetworkConnectionType
NetworkConnectionTypeCellular2g -> Text
"cellular2g"
    NetworkConnectionType
NetworkConnectionTypeCellular3g -> Text
"cellular3g"
    NetworkConnectionType
NetworkConnectionTypeCellular4g -> Text
"cellular4g"
    NetworkConnectionType
NetworkConnectionTypeBluetooth -> Text
"bluetooth"
    NetworkConnectionType
NetworkConnectionTypeEthernet -> Text
"ethernet"
    NetworkConnectionType
NetworkConnectionTypeWifi -> Text
"wifi"
    NetworkConnectionType
NetworkConnectionTypeWimax -> Text
"wimax"
    NetworkConnectionType
NetworkConnectionTypeOther -> Text
"other"

-- | Type 'Network.CookieSameSite'.
--   Represents the cookie's 'SameSite' status:
--   https://tools.ietf.org/html/draft-west-first-party-cookies
data NetworkCookieSameSite = NetworkCookieSameSiteStrict | NetworkCookieSameSiteLax | NetworkCookieSameSiteNone
  deriving (Eq NetworkCookieSameSite
Eq NetworkCookieSameSite
-> (NetworkCookieSameSite -> NetworkCookieSameSite -> Ordering)
-> (NetworkCookieSameSite -> NetworkCookieSameSite -> Bool)
-> (NetworkCookieSameSite -> NetworkCookieSameSite -> Bool)
-> (NetworkCookieSameSite -> NetworkCookieSameSite -> Bool)
-> (NetworkCookieSameSite -> NetworkCookieSameSite -> Bool)
-> (NetworkCookieSameSite
    -> NetworkCookieSameSite -> NetworkCookieSameSite)
-> (NetworkCookieSameSite
    -> NetworkCookieSameSite -> NetworkCookieSameSite)
-> Ord NetworkCookieSameSite
NetworkCookieSameSite -> NetworkCookieSameSite -> Bool
NetworkCookieSameSite -> NetworkCookieSameSite -> Ordering
NetworkCookieSameSite
-> NetworkCookieSameSite -> NetworkCookieSameSite
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: NetworkCookieSameSite
-> NetworkCookieSameSite -> NetworkCookieSameSite
$cmin :: NetworkCookieSameSite
-> NetworkCookieSameSite -> NetworkCookieSameSite
max :: NetworkCookieSameSite
-> NetworkCookieSameSite -> NetworkCookieSameSite
$cmax :: NetworkCookieSameSite
-> NetworkCookieSameSite -> NetworkCookieSameSite
>= :: NetworkCookieSameSite -> NetworkCookieSameSite -> Bool
$c>= :: NetworkCookieSameSite -> NetworkCookieSameSite -> Bool
> :: NetworkCookieSameSite -> NetworkCookieSameSite -> Bool
$c> :: NetworkCookieSameSite -> NetworkCookieSameSite -> Bool
<= :: NetworkCookieSameSite -> NetworkCookieSameSite -> Bool
$c<= :: NetworkCookieSameSite -> NetworkCookieSameSite -> Bool
< :: NetworkCookieSameSite -> NetworkCookieSameSite -> Bool
$c< :: NetworkCookieSameSite -> NetworkCookieSameSite -> Bool
compare :: NetworkCookieSameSite -> NetworkCookieSameSite -> Ordering
$ccompare :: NetworkCookieSameSite -> NetworkCookieSameSite -> Ordering
$cp1Ord :: Eq NetworkCookieSameSite
Ord, NetworkCookieSameSite -> NetworkCookieSameSite -> Bool
(NetworkCookieSameSite -> NetworkCookieSameSite -> Bool)
-> (NetworkCookieSameSite -> NetworkCookieSameSite -> Bool)
-> Eq NetworkCookieSameSite
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkCookieSameSite -> NetworkCookieSameSite -> Bool
$c/= :: NetworkCookieSameSite -> NetworkCookieSameSite -> Bool
== :: NetworkCookieSameSite -> NetworkCookieSameSite -> Bool
$c== :: NetworkCookieSameSite -> NetworkCookieSameSite -> Bool
Eq, Int -> NetworkCookieSameSite -> ShowS
[NetworkCookieSameSite] -> ShowS
NetworkCookieSameSite -> String
(Int -> NetworkCookieSameSite -> ShowS)
-> (NetworkCookieSameSite -> String)
-> ([NetworkCookieSameSite] -> ShowS)
-> Show NetworkCookieSameSite
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkCookieSameSite] -> ShowS
$cshowList :: [NetworkCookieSameSite] -> ShowS
show :: NetworkCookieSameSite -> String
$cshow :: NetworkCookieSameSite -> String
showsPrec :: Int -> NetworkCookieSameSite -> ShowS
$cshowsPrec :: Int -> NetworkCookieSameSite -> ShowS
Show, ReadPrec [NetworkCookieSameSite]
ReadPrec NetworkCookieSameSite
Int -> ReadS NetworkCookieSameSite
ReadS [NetworkCookieSameSite]
(Int -> ReadS NetworkCookieSameSite)
-> ReadS [NetworkCookieSameSite]
-> ReadPrec NetworkCookieSameSite
-> ReadPrec [NetworkCookieSameSite]
-> Read NetworkCookieSameSite
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [NetworkCookieSameSite]
$creadListPrec :: ReadPrec [NetworkCookieSameSite]
readPrec :: ReadPrec NetworkCookieSameSite
$creadPrec :: ReadPrec NetworkCookieSameSite
readList :: ReadS [NetworkCookieSameSite]
$creadList :: ReadS [NetworkCookieSameSite]
readsPrec :: Int -> ReadS NetworkCookieSameSite
$creadsPrec :: Int -> ReadS NetworkCookieSameSite
Read)
instance FromJSON NetworkCookieSameSite where
  parseJSON :: Value -> Parser NetworkCookieSameSite
parseJSON = String
-> (Text -> Parser NetworkCookieSameSite)
-> Value
-> Parser NetworkCookieSameSite
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"NetworkCookieSameSite" ((Text -> Parser NetworkCookieSameSite)
 -> Value -> Parser NetworkCookieSameSite)
-> (Text -> Parser NetworkCookieSameSite)
-> Value
-> Parser NetworkCookieSameSite
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"Strict" -> NetworkCookieSameSite -> Parser NetworkCookieSameSite
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCookieSameSite
NetworkCookieSameSiteStrict
    Text
"Lax" -> NetworkCookieSameSite -> Parser NetworkCookieSameSite
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCookieSameSite
NetworkCookieSameSiteLax
    Text
"None" -> NetworkCookieSameSite -> Parser NetworkCookieSameSite
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCookieSameSite
NetworkCookieSameSiteNone
    Text
"_" -> String -> Parser NetworkCookieSameSite
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse NetworkCookieSameSite"
instance ToJSON NetworkCookieSameSite where
  toJSON :: NetworkCookieSameSite -> Value
toJSON NetworkCookieSameSite
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case NetworkCookieSameSite
v of
    NetworkCookieSameSite
NetworkCookieSameSiteStrict -> Text
"Strict"
    NetworkCookieSameSite
NetworkCookieSameSiteLax -> Text
"Lax"
    NetworkCookieSameSite
NetworkCookieSameSiteNone -> Text
"None"

-- | Type 'Network.CookiePriority'.
--   Represents the cookie's 'Priority' status:
--   https://tools.ietf.org/html/draft-west-cookie-priority-00
data NetworkCookiePriority = NetworkCookiePriorityLow | NetworkCookiePriorityMedium | NetworkCookiePriorityHigh
  deriving (Eq NetworkCookiePriority
Eq NetworkCookiePriority
-> (NetworkCookiePriority -> NetworkCookiePriority -> Ordering)
-> (NetworkCookiePriority -> NetworkCookiePriority -> Bool)
-> (NetworkCookiePriority -> NetworkCookiePriority -> Bool)
-> (NetworkCookiePriority -> NetworkCookiePriority -> Bool)
-> (NetworkCookiePriority -> NetworkCookiePriority -> Bool)
-> (NetworkCookiePriority
    -> NetworkCookiePriority -> NetworkCookiePriority)
-> (NetworkCookiePriority
    -> NetworkCookiePriority -> NetworkCookiePriority)
-> Ord NetworkCookiePriority
NetworkCookiePriority -> NetworkCookiePriority -> Bool
NetworkCookiePriority -> NetworkCookiePriority -> Ordering
NetworkCookiePriority
-> NetworkCookiePriority -> NetworkCookiePriority
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: NetworkCookiePriority
-> NetworkCookiePriority -> NetworkCookiePriority
$cmin :: NetworkCookiePriority
-> NetworkCookiePriority -> NetworkCookiePriority
max :: NetworkCookiePriority
-> NetworkCookiePriority -> NetworkCookiePriority
$cmax :: NetworkCookiePriority
-> NetworkCookiePriority -> NetworkCookiePriority
>= :: NetworkCookiePriority -> NetworkCookiePriority -> Bool
$c>= :: NetworkCookiePriority -> NetworkCookiePriority -> Bool
> :: NetworkCookiePriority -> NetworkCookiePriority -> Bool
$c> :: NetworkCookiePriority -> NetworkCookiePriority -> Bool
<= :: NetworkCookiePriority -> NetworkCookiePriority -> Bool
$c<= :: NetworkCookiePriority -> NetworkCookiePriority -> Bool
< :: NetworkCookiePriority -> NetworkCookiePriority -> Bool
$c< :: NetworkCookiePriority -> NetworkCookiePriority -> Bool
compare :: NetworkCookiePriority -> NetworkCookiePriority -> Ordering
$ccompare :: NetworkCookiePriority -> NetworkCookiePriority -> Ordering
$cp1Ord :: Eq NetworkCookiePriority
Ord, NetworkCookiePriority -> NetworkCookiePriority -> Bool
(NetworkCookiePriority -> NetworkCookiePriority -> Bool)
-> (NetworkCookiePriority -> NetworkCookiePriority -> Bool)
-> Eq NetworkCookiePriority
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkCookiePriority -> NetworkCookiePriority -> Bool
$c/= :: NetworkCookiePriority -> NetworkCookiePriority -> Bool
== :: NetworkCookiePriority -> NetworkCookiePriority -> Bool
$c== :: NetworkCookiePriority -> NetworkCookiePriority -> Bool
Eq, Int -> NetworkCookiePriority -> ShowS
[NetworkCookiePriority] -> ShowS
NetworkCookiePriority -> String
(Int -> NetworkCookiePriority -> ShowS)
-> (NetworkCookiePriority -> String)
-> ([NetworkCookiePriority] -> ShowS)
-> Show NetworkCookiePriority
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkCookiePriority] -> ShowS
$cshowList :: [NetworkCookiePriority] -> ShowS
show :: NetworkCookiePriority -> String
$cshow :: NetworkCookiePriority -> String
showsPrec :: Int -> NetworkCookiePriority -> ShowS
$cshowsPrec :: Int -> NetworkCookiePriority -> ShowS
Show, ReadPrec [NetworkCookiePriority]
ReadPrec NetworkCookiePriority
Int -> ReadS NetworkCookiePriority
ReadS [NetworkCookiePriority]
(Int -> ReadS NetworkCookiePriority)
-> ReadS [NetworkCookiePriority]
-> ReadPrec NetworkCookiePriority
-> ReadPrec [NetworkCookiePriority]
-> Read NetworkCookiePriority
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [NetworkCookiePriority]
$creadListPrec :: ReadPrec [NetworkCookiePriority]
readPrec :: ReadPrec NetworkCookiePriority
$creadPrec :: ReadPrec NetworkCookiePriority
readList :: ReadS [NetworkCookiePriority]
$creadList :: ReadS [NetworkCookiePriority]
readsPrec :: Int -> ReadS NetworkCookiePriority
$creadsPrec :: Int -> ReadS NetworkCookiePriority
Read)
instance FromJSON NetworkCookiePriority where
  parseJSON :: Value -> Parser NetworkCookiePriority
parseJSON = String
-> (Text -> Parser NetworkCookiePriority)
-> Value
-> Parser NetworkCookiePriority
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"NetworkCookiePriority" ((Text -> Parser NetworkCookiePriority)
 -> Value -> Parser NetworkCookiePriority)
-> (Text -> Parser NetworkCookiePriority)
-> Value
-> Parser NetworkCookiePriority
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"Low" -> NetworkCookiePriority -> Parser NetworkCookiePriority
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCookiePriority
NetworkCookiePriorityLow
    Text
"Medium" -> NetworkCookiePriority -> Parser NetworkCookiePriority
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCookiePriority
NetworkCookiePriorityMedium
    Text
"High" -> NetworkCookiePriority -> Parser NetworkCookiePriority
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCookiePriority
NetworkCookiePriorityHigh
    Text
"_" -> String -> Parser NetworkCookiePriority
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse NetworkCookiePriority"
instance ToJSON NetworkCookiePriority where
  toJSON :: NetworkCookiePriority -> Value
toJSON NetworkCookiePriority
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case NetworkCookiePriority
v of
    NetworkCookiePriority
NetworkCookiePriorityLow -> Text
"Low"
    NetworkCookiePriority
NetworkCookiePriorityMedium -> Text
"Medium"
    NetworkCookiePriority
NetworkCookiePriorityHigh -> Text
"High"

-- | Type 'Network.CookieSourceScheme'.
--   Represents the source scheme of the origin that originally set the cookie.
--   A value of "Unset" allows protocol clients to emulate legacy cookie scope for the scheme.
--   This is a temporary ability and it will be removed in the future.
data NetworkCookieSourceScheme = NetworkCookieSourceSchemeUnset | NetworkCookieSourceSchemeNonSecure | NetworkCookieSourceSchemeSecure
  deriving (Eq NetworkCookieSourceScheme
Eq NetworkCookieSourceScheme
-> (NetworkCookieSourceScheme
    -> NetworkCookieSourceScheme -> Ordering)
-> (NetworkCookieSourceScheme -> NetworkCookieSourceScheme -> Bool)
-> (NetworkCookieSourceScheme -> NetworkCookieSourceScheme -> Bool)
-> (NetworkCookieSourceScheme -> NetworkCookieSourceScheme -> Bool)
-> (NetworkCookieSourceScheme -> NetworkCookieSourceScheme -> Bool)
-> (NetworkCookieSourceScheme
    -> NetworkCookieSourceScheme -> NetworkCookieSourceScheme)
-> (NetworkCookieSourceScheme
    -> NetworkCookieSourceScheme -> NetworkCookieSourceScheme)
-> Ord NetworkCookieSourceScheme
NetworkCookieSourceScheme -> NetworkCookieSourceScheme -> Bool
NetworkCookieSourceScheme -> NetworkCookieSourceScheme -> Ordering
NetworkCookieSourceScheme
-> NetworkCookieSourceScheme -> NetworkCookieSourceScheme
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: NetworkCookieSourceScheme
-> NetworkCookieSourceScheme -> NetworkCookieSourceScheme
$cmin :: NetworkCookieSourceScheme
-> NetworkCookieSourceScheme -> NetworkCookieSourceScheme
max :: NetworkCookieSourceScheme
-> NetworkCookieSourceScheme -> NetworkCookieSourceScheme
$cmax :: NetworkCookieSourceScheme
-> NetworkCookieSourceScheme -> NetworkCookieSourceScheme
>= :: NetworkCookieSourceScheme -> NetworkCookieSourceScheme -> Bool
$c>= :: NetworkCookieSourceScheme -> NetworkCookieSourceScheme -> Bool
> :: NetworkCookieSourceScheme -> NetworkCookieSourceScheme -> Bool
$c> :: NetworkCookieSourceScheme -> NetworkCookieSourceScheme -> Bool
<= :: NetworkCookieSourceScheme -> NetworkCookieSourceScheme -> Bool
$c<= :: NetworkCookieSourceScheme -> NetworkCookieSourceScheme -> Bool
< :: NetworkCookieSourceScheme -> NetworkCookieSourceScheme -> Bool
$c< :: NetworkCookieSourceScheme -> NetworkCookieSourceScheme -> Bool
compare :: NetworkCookieSourceScheme -> NetworkCookieSourceScheme -> Ordering
$ccompare :: NetworkCookieSourceScheme -> NetworkCookieSourceScheme -> Ordering
$cp1Ord :: Eq NetworkCookieSourceScheme
Ord, NetworkCookieSourceScheme -> NetworkCookieSourceScheme -> Bool
(NetworkCookieSourceScheme -> NetworkCookieSourceScheme -> Bool)
-> (NetworkCookieSourceScheme -> NetworkCookieSourceScheme -> Bool)
-> Eq NetworkCookieSourceScheme
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkCookieSourceScheme -> NetworkCookieSourceScheme -> Bool
$c/= :: NetworkCookieSourceScheme -> NetworkCookieSourceScheme -> Bool
== :: NetworkCookieSourceScheme -> NetworkCookieSourceScheme -> Bool
$c== :: NetworkCookieSourceScheme -> NetworkCookieSourceScheme -> Bool
Eq, Int -> NetworkCookieSourceScheme -> ShowS
[NetworkCookieSourceScheme] -> ShowS
NetworkCookieSourceScheme -> String
(Int -> NetworkCookieSourceScheme -> ShowS)
-> (NetworkCookieSourceScheme -> String)
-> ([NetworkCookieSourceScheme] -> ShowS)
-> Show NetworkCookieSourceScheme
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkCookieSourceScheme] -> ShowS
$cshowList :: [NetworkCookieSourceScheme] -> ShowS
show :: NetworkCookieSourceScheme -> String
$cshow :: NetworkCookieSourceScheme -> String
showsPrec :: Int -> NetworkCookieSourceScheme -> ShowS
$cshowsPrec :: Int -> NetworkCookieSourceScheme -> ShowS
Show, ReadPrec [NetworkCookieSourceScheme]
ReadPrec NetworkCookieSourceScheme
Int -> ReadS NetworkCookieSourceScheme
ReadS [NetworkCookieSourceScheme]
(Int -> ReadS NetworkCookieSourceScheme)
-> ReadS [NetworkCookieSourceScheme]
-> ReadPrec NetworkCookieSourceScheme
-> ReadPrec [NetworkCookieSourceScheme]
-> Read NetworkCookieSourceScheme
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [NetworkCookieSourceScheme]
$creadListPrec :: ReadPrec [NetworkCookieSourceScheme]
readPrec :: ReadPrec NetworkCookieSourceScheme
$creadPrec :: ReadPrec NetworkCookieSourceScheme
readList :: ReadS [NetworkCookieSourceScheme]
$creadList :: ReadS [NetworkCookieSourceScheme]
readsPrec :: Int -> ReadS NetworkCookieSourceScheme
$creadsPrec :: Int -> ReadS NetworkCookieSourceScheme
Read)
instance FromJSON NetworkCookieSourceScheme where
  parseJSON :: Value -> Parser NetworkCookieSourceScheme
parseJSON = String
-> (Text -> Parser NetworkCookieSourceScheme)
-> Value
-> Parser NetworkCookieSourceScheme
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"NetworkCookieSourceScheme" ((Text -> Parser NetworkCookieSourceScheme)
 -> Value -> Parser NetworkCookieSourceScheme)
-> (Text -> Parser NetworkCookieSourceScheme)
-> Value
-> Parser NetworkCookieSourceScheme
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"Unset" -> NetworkCookieSourceScheme -> Parser NetworkCookieSourceScheme
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCookieSourceScheme
NetworkCookieSourceSchemeUnset
    Text
"NonSecure" -> NetworkCookieSourceScheme -> Parser NetworkCookieSourceScheme
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCookieSourceScheme
NetworkCookieSourceSchemeNonSecure
    Text
"Secure" -> NetworkCookieSourceScheme -> Parser NetworkCookieSourceScheme
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCookieSourceScheme
NetworkCookieSourceSchemeSecure
    Text
"_" -> String -> Parser NetworkCookieSourceScheme
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse NetworkCookieSourceScheme"
instance ToJSON NetworkCookieSourceScheme where
  toJSON :: NetworkCookieSourceScheme -> Value
toJSON NetworkCookieSourceScheme
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case NetworkCookieSourceScheme
v of
    NetworkCookieSourceScheme
NetworkCookieSourceSchemeUnset -> Text
"Unset"
    NetworkCookieSourceScheme
NetworkCookieSourceSchemeNonSecure -> Text
"NonSecure"
    NetworkCookieSourceScheme
NetworkCookieSourceSchemeSecure -> Text
"Secure"

-- | Type 'Network.ResourceTiming'.
--   Timing information for the request.
data NetworkResourceTiming = NetworkResourceTiming
  {
    -- | Timing's requestTime is a baseline in seconds, while the other numbers are ticks in
    --   milliseconds relatively to this requestTime.
    NetworkResourceTiming -> Double
networkResourceTimingRequestTime :: Double,
    -- | Started resolving proxy.
    NetworkResourceTiming -> Double
networkResourceTimingProxyStart :: Double,
    -- | Finished resolving proxy.
    NetworkResourceTiming -> Double
networkResourceTimingProxyEnd :: Double,
    -- | Started DNS address resolve.
    NetworkResourceTiming -> Double
networkResourceTimingDnsStart :: Double,
    -- | Finished DNS address resolve.
    NetworkResourceTiming -> Double
networkResourceTimingDnsEnd :: Double,
    -- | Started connecting to the remote host.
    NetworkResourceTiming -> Double
networkResourceTimingConnectStart :: Double,
    -- | Connected to the remote host.
    NetworkResourceTiming -> Double
networkResourceTimingConnectEnd :: Double,
    -- | Started SSL handshake.
    NetworkResourceTiming -> Double
networkResourceTimingSslStart :: Double,
    -- | Finished SSL handshake.
    NetworkResourceTiming -> Double
networkResourceTimingSslEnd :: Double,
    -- | Started running ServiceWorker.
    NetworkResourceTiming -> Double
networkResourceTimingWorkerStart :: Double,
    -- | Finished Starting ServiceWorker.
    NetworkResourceTiming -> Double
networkResourceTimingWorkerReady :: Double,
    -- | Started fetch event.
    NetworkResourceTiming -> Double
networkResourceTimingWorkerFetchStart :: Double,
    -- | Settled fetch event respondWith promise.
    NetworkResourceTiming -> Double
networkResourceTimingWorkerRespondWithSettled :: Double,
    -- | Started sending request.
    NetworkResourceTiming -> Double
networkResourceTimingSendStart :: Double,
    -- | Finished sending request.
    NetworkResourceTiming -> Double
networkResourceTimingSendEnd :: Double,
    -- | Time the server started pushing request.
    NetworkResourceTiming -> Double
networkResourceTimingPushStart :: Double,
    -- | Time the server finished pushing request.
    NetworkResourceTiming -> Double
networkResourceTimingPushEnd :: Double,
    -- | Finished receiving response headers.
    NetworkResourceTiming -> Double
networkResourceTimingReceiveHeadersEnd :: Double
  }
  deriving (NetworkResourceTiming -> NetworkResourceTiming -> Bool
(NetworkResourceTiming -> NetworkResourceTiming -> Bool)
-> (NetworkResourceTiming -> NetworkResourceTiming -> Bool)
-> Eq NetworkResourceTiming
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkResourceTiming -> NetworkResourceTiming -> Bool
$c/= :: NetworkResourceTiming -> NetworkResourceTiming -> Bool
== :: NetworkResourceTiming -> NetworkResourceTiming -> Bool
$c== :: NetworkResourceTiming -> NetworkResourceTiming -> Bool
Eq, Int -> NetworkResourceTiming -> ShowS
[NetworkResourceTiming] -> ShowS
NetworkResourceTiming -> String
(Int -> NetworkResourceTiming -> ShowS)
-> (NetworkResourceTiming -> String)
-> ([NetworkResourceTiming] -> ShowS)
-> Show NetworkResourceTiming
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkResourceTiming] -> ShowS
$cshowList :: [NetworkResourceTiming] -> ShowS
show :: NetworkResourceTiming -> String
$cshow :: NetworkResourceTiming -> String
showsPrec :: Int -> NetworkResourceTiming -> ShowS
$cshowsPrec :: Int -> NetworkResourceTiming -> ShowS
Show)
instance FromJSON NetworkResourceTiming where
  parseJSON :: Value -> Parser NetworkResourceTiming
parseJSON = String
-> (Object -> Parser NetworkResourceTiming)
-> Value
-> Parser NetworkResourceTiming
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkResourceTiming" ((Object -> Parser NetworkResourceTiming)
 -> Value -> Parser NetworkResourceTiming)
-> (Object -> Parser NetworkResourceTiming)
-> Value
-> Parser NetworkResourceTiming
forall a b. (a -> b) -> a -> b
$ \Object
o -> Double
-> Double
-> Double
-> Double
-> Double
-> Double
-> Double
-> Double
-> Double
-> Double
-> Double
-> Double
-> Double
-> Double
-> Double
-> Double
-> Double
-> Double
-> NetworkResourceTiming
NetworkResourceTiming
    (Double
 -> Double
 -> Double
 -> Double
 -> Double
 -> Double
 -> Double
 -> Double
 -> Double
 -> Double
 -> Double
 -> Double
 -> Double
 -> Double
 -> Double
 -> Double
 -> Double
 -> Double
 -> NetworkResourceTiming)
-> Parser Double
-> Parser
     (Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> NetworkResourceTiming)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"requestTime"
    Parser
  (Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> NetworkResourceTiming)
-> Parser Double
-> Parser
     (Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> NetworkResourceTiming)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"proxyStart"
    Parser
  (Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> NetworkResourceTiming)
-> Parser Double
-> Parser
     (Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> NetworkResourceTiming)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"proxyEnd"
    Parser
  (Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> NetworkResourceTiming)
-> Parser Double
-> Parser
     (Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> NetworkResourceTiming)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"dnsStart"
    Parser
  (Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> NetworkResourceTiming)
-> Parser Double
-> Parser
     (Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> NetworkResourceTiming)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"dnsEnd"
    Parser
  (Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> NetworkResourceTiming)
-> Parser Double
-> Parser
     (Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> NetworkResourceTiming)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"connectStart"
    Parser
  (Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> NetworkResourceTiming)
-> Parser Double
-> Parser
     (Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> NetworkResourceTiming)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"connectEnd"
    Parser
  (Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> NetworkResourceTiming)
-> Parser Double
-> Parser
     (Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> NetworkResourceTiming)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"sslStart"
    Parser
  (Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> NetworkResourceTiming)
-> Parser Double
-> Parser
     (Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> NetworkResourceTiming)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"sslEnd"
    Parser
  (Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> NetworkResourceTiming)
-> Parser Double
-> Parser
     (Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> NetworkResourceTiming)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"workerStart"
    Parser
  (Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> NetworkResourceTiming)
-> Parser Double
-> Parser
     (Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> NetworkResourceTiming)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"workerReady"
    Parser
  (Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> NetworkResourceTiming)
-> Parser Double
-> Parser
     (Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> NetworkResourceTiming)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"workerFetchStart"
    Parser
  (Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> NetworkResourceTiming)
-> Parser Double
-> Parser
     (Double
      -> Double -> Double -> Double -> Double -> NetworkResourceTiming)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"workerRespondWithSettled"
    Parser
  (Double
   -> Double -> Double -> Double -> Double -> NetworkResourceTiming)
-> Parser Double
-> Parser
     (Double -> Double -> Double -> Double -> NetworkResourceTiming)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"sendStart"
    Parser
  (Double -> Double -> Double -> Double -> NetworkResourceTiming)
-> Parser Double
-> Parser (Double -> Double -> Double -> NetworkResourceTiming)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"sendEnd"
    Parser (Double -> Double -> Double -> NetworkResourceTiming)
-> Parser Double
-> Parser (Double -> Double -> NetworkResourceTiming)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"pushStart"
    Parser (Double -> Double -> NetworkResourceTiming)
-> Parser Double -> Parser (Double -> NetworkResourceTiming)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"pushEnd"
    Parser (Double -> NetworkResourceTiming)
-> Parser Double -> Parser NetworkResourceTiming
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"receiveHeadersEnd"
instance ToJSON NetworkResourceTiming where
  toJSON :: NetworkResourceTiming -> Value
toJSON NetworkResourceTiming
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"requestTime" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (NetworkResourceTiming -> Double
networkResourceTimingRequestTime NetworkResourceTiming
p),
    (Text
"proxyStart" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (NetworkResourceTiming -> Double
networkResourceTimingProxyStart NetworkResourceTiming
p),
    (Text
"proxyEnd" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (NetworkResourceTiming -> Double
networkResourceTimingProxyEnd NetworkResourceTiming
p),
    (Text
"dnsStart" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (NetworkResourceTiming -> Double
networkResourceTimingDnsStart NetworkResourceTiming
p),
    (Text
"dnsEnd" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (NetworkResourceTiming -> Double
networkResourceTimingDnsEnd NetworkResourceTiming
p),
    (Text
"connectStart" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (NetworkResourceTiming -> Double
networkResourceTimingConnectStart NetworkResourceTiming
p),
    (Text
"connectEnd" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (NetworkResourceTiming -> Double
networkResourceTimingConnectEnd NetworkResourceTiming
p),
    (Text
"sslStart" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (NetworkResourceTiming -> Double
networkResourceTimingSslStart NetworkResourceTiming
p),
    (Text
"sslEnd" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (NetworkResourceTiming -> Double
networkResourceTimingSslEnd NetworkResourceTiming
p),
    (Text
"workerStart" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (NetworkResourceTiming -> Double
networkResourceTimingWorkerStart NetworkResourceTiming
p),
    (Text
"workerReady" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (NetworkResourceTiming -> Double
networkResourceTimingWorkerReady NetworkResourceTiming
p),
    (Text
"workerFetchStart" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (NetworkResourceTiming -> Double
networkResourceTimingWorkerFetchStart NetworkResourceTiming
p),
    (Text
"workerRespondWithSettled" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (NetworkResourceTiming -> Double
networkResourceTimingWorkerRespondWithSettled NetworkResourceTiming
p),
    (Text
"sendStart" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (NetworkResourceTiming -> Double
networkResourceTimingSendStart NetworkResourceTiming
p),
    (Text
"sendEnd" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (NetworkResourceTiming -> Double
networkResourceTimingSendEnd NetworkResourceTiming
p),
    (Text
"pushStart" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (NetworkResourceTiming -> Double
networkResourceTimingPushStart NetworkResourceTiming
p),
    (Text
"pushEnd" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (NetworkResourceTiming -> Double
networkResourceTimingPushEnd NetworkResourceTiming
p),
    (Text
"receiveHeadersEnd" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (NetworkResourceTiming -> Double
networkResourceTimingReceiveHeadersEnd NetworkResourceTiming
p)
    ]

-- | Type 'Network.ResourcePriority'.
--   Loading priority of a resource request.
data NetworkResourcePriority = NetworkResourcePriorityVeryLow | NetworkResourcePriorityLow | NetworkResourcePriorityMedium | NetworkResourcePriorityHigh | NetworkResourcePriorityVeryHigh
  deriving (Eq NetworkResourcePriority
Eq NetworkResourcePriority
-> (NetworkResourcePriority -> NetworkResourcePriority -> Ordering)
-> (NetworkResourcePriority -> NetworkResourcePriority -> Bool)
-> (NetworkResourcePriority -> NetworkResourcePriority -> Bool)
-> (NetworkResourcePriority -> NetworkResourcePriority -> Bool)
-> (NetworkResourcePriority -> NetworkResourcePriority -> Bool)
-> (NetworkResourcePriority
    -> NetworkResourcePriority -> NetworkResourcePriority)
-> (NetworkResourcePriority
    -> NetworkResourcePriority -> NetworkResourcePriority)
-> Ord NetworkResourcePriority
NetworkResourcePriority -> NetworkResourcePriority -> Bool
NetworkResourcePriority -> NetworkResourcePriority -> Ordering
NetworkResourcePriority
-> NetworkResourcePriority -> NetworkResourcePriority
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: NetworkResourcePriority
-> NetworkResourcePriority -> NetworkResourcePriority
$cmin :: NetworkResourcePriority
-> NetworkResourcePriority -> NetworkResourcePriority
max :: NetworkResourcePriority
-> NetworkResourcePriority -> NetworkResourcePriority
$cmax :: NetworkResourcePriority
-> NetworkResourcePriority -> NetworkResourcePriority
>= :: NetworkResourcePriority -> NetworkResourcePriority -> Bool
$c>= :: NetworkResourcePriority -> NetworkResourcePriority -> Bool
> :: NetworkResourcePriority -> NetworkResourcePriority -> Bool
$c> :: NetworkResourcePriority -> NetworkResourcePriority -> Bool
<= :: NetworkResourcePriority -> NetworkResourcePriority -> Bool
$c<= :: NetworkResourcePriority -> NetworkResourcePriority -> Bool
< :: NetworkResourcePriority -> NetworkResourcePriority -> Bool
$c< :: NetworkResourcePriority -> NetworkResourcePriority -> Bool
compare :: NetworkResourcePriority -> NetworkResourcePriority -> Ordering
$ccompare :: NetworkResourcePriority -> NetworkResourcePriority -> Ordering
$cp1Ord :: Eq NetworkResourcePriority
Ord, NetworkResourcePriority -> NetworkResourcePriority -> Bool
(NetworkResourcePriority -> NetworkResourcePriority -> Bool)
-> (NetworkResourcePriority -> NetworkResourcePriority -> Bool)
-> Eq NetworkResourcePriority
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkResourcePriority -> NetworkResourcePriority -> Bool
$c/= :: NetworkResourcePriority -> NetworkResourcePriority -> Bool
== :: NetworkResourcePriority -> NetworkResourcePriority -> Bool
$c== :: NetworkResourcePriority -> NetworkResourcePriority -> Bool
Eq, Int -> NetworkResourcePriority -> ShowS
[NetworkResourcePriority] -> ShowS
NetworkResourcePriority -> String
(Int -> NetworkResourcePriority -> ShowS)
-> (NetworkResourcePriority -> String)
-> ([NetworkResourcePriority] -> ShowS)
-> Show NetworkResourcePriority
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkResourcePriority] -> ShowS
$cshowList :: [NetworkResourcePriority] -> ShowS
show :: NetworkResourcePriority -> String
$cshow :: NetworkResourcePriority -> String
showsPrec :: Int -> NetworkResourcePriority -> ShowS
$cshowsPrec :: Int -> NetworkResourcePriority -> ShowS
Show, ReadPrec [NetworkResourcePriority]
ReadPrec NetworkResourcePriority
Int -> ReadS NetworkResourcePriority
ReadS [NetworkResourcePriority]
(Int -> ReadS NetworkResourcePriority)
-> ReadS [NetworkResourcePriority]
-> ReadPrec NetworkResourcePriority
-> ReadPrec [NetworkResourcePriority]
-> Read NetworkResourcePriority
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [NetworkResourcePriority]
$creadListPrec :: ReadPrec [NetworkResourcePriority]
readPrec :: ReadPrec NetworkResourcePriority
$creadPrec :: ReadPrec NetworkResourcePriority
readList :: ReadS [NetworkResourcePriority]
$creadList :: ReadS [NetworkResourcePriority]
readsPrec :: Int -> ReadS NetworkResourcePriority
$creadsPrec :: Int -> ReadS NetworkResourcePriority
Read)
instance FromJSON NetworkResourcePriority where
  parseJSON :: Value -> Parser NetworkResourcePriority
parseJSON = String
-> (Text -> Parser NetworkResourcePriority)
-> Value
-> Parser NetworkResourcePriority
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"NetworkResourcePriority" ((Text -> Parser NetworkResourcePriority)
 -> Value -> Parser NetworkResourcePriority)
-> (Text -> Parser NetworkResourcePriority)
-> Value
-> Parser NetworkResourcePriority
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"VeryLow" -> NetworkResourcePriority -> Parser NetworkResourcePriority
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkResourcePriority
NetworkResourcePriorityVeryLow
    Text
"Low" -> NetworkResourcePriority -> Parser NetworkResourcePriority
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkResourcePriority
NetworkResourcePriorityLow
    Text
"Medium" -> NetworkResourcePriority -> Parser NetworkResourcePriority
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkResourcePriority
NetworkResourcePriorityMedium
    Text
"High" -> NetworkResourcePriority -> Parser NetworkResourcePriority
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkResourcePriority
NetworkResourcePriorityHigh
    Text
"VeryHigh" -> NetworkResourcePriority -> Parser NetworkResourcePriority
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkResourcePriority
NetworkResourcePriorityVeryHigh
    Text
"_" -> String -> Parser NetworkResourcePriority
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse NetworkResourcePriority"
instance ToJSON NetworkResourcePriority where
  toJSON :: NetworkResourcePriority -> Value
toJSON NetworkResourcePriority
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case NetworkResourcePriority
v of
    NetworkResourcePriority
NetworkResourcePriorityVeryLow -> Text
"VeryLow"
    NetworkResourcePriority
NetworkResourcePriorityLow -> Text
"Low"
    NetworkResourcePriority
NetworkResourcePriorityMedium -> Text
"Medium"
    NetworkResourcePriority
NetworkResourcePriorityHigh -> Text
"High"
    NetworkResourcePriority
NetworkResourcePriorityVeryHigh -> Text
"VeryHigh"

-- | Type 'Network.PostDataEntry'.
--   Post data entry for HTTP request
data NetworkPostDataEntry = NetworkPostDataEntry
  {
    NetworkPostDataEntry -> Maybe Text
networkPostDataEntryBytes :: Maybe T.Text
  }
  deriving (NetworkPostDataEntry -> NetworkPostDataEntry -> Bool
(NetworkPostDataEntry -> NetworkPostDataEntry -> Bool)
-> (NetworkPostDataEntry -> NetworkPostDataEntry -> Bool)
-> Eq NetworkPostDataEntry
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkPostDataEntry -> NetworkPostDataEntry -> Bool
$c/= :: NetworkPostDataEntry -> NetworkPostDataEntry -> Bool
== :: NetworkPostDataEntry -> NetworkPostDataEntry -> Bool
$c== :: NetworkPostDataEntry -> NetworkPostDataEntry -> Bool
Eq, Int -> NetworkPostDataEntry -> ShowS
[NetworkPostDataEntry] -> ShowS
NetworkPostDataEntry -> String
(Int -> NetworkPostDataEntry -> ShowS)
-> (NetworkPostDataEntry -> String)
-> ([NetworkPostDataEntry] -> ShowS)
-> Show NetworkPostDataEntry
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkPostDataEntry] -> ShowS
$cshowList :: [NetworkPostDataEntry] -> ShowS
show :: NetworkPostDataEntry -> String
$cshow :: NetworkPostDataEntry -> String
showsPrec :: Int -> NetworkPostDataEntry -> ShowS
$cshowsPrec :: Int -> NetworkPostDataEntry -> ShowS
Show)
instance FromJSON NetworkPostDataEntry where
  parseJSON :: Value -> Parser NetworkPostDataEntry
parseJSON = String
-> (Object -> Parser NetworkPostDataEntry)
-> Value
-> Parser NetworkPostDataEntry
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkPostDataEntry" ((Object -> Parser NetworkPostDataEntry)
 -> Value -> Parser NetworkPostDataEntry)
-> (Object -> Parser NetworkPostDataEntry)
-> Value
-> Parser NetworkPostDataEntry
forall a b. (a -> b) -> a -> b
$ \Object
o -> Maybe Text -> NetworkPostDataEntry
NetworkPostDataEntry
    (Maybe Text -> NetworkPostDataEntry)
-> Parser (Maybe Text) -> Parser NetworkPostDataEntry
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"bytes"
instance ToJSON NetworkPostDataEntry where
  toJSON :: NetworkPostDataEntry -> Value
toJSON NetworkPostDataEntry
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"bytes" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkPostDataEntry -> Maybe Text
networkPostDataEntryBytes NetworkPostDataEntry
p)
    ]

-- | Type 'Network.Request'.
--   HTTP request data.
data NetworkRequestReferrerPolicy = NetworkRequestReferrerPolicyUnsafeUrl | NetworkRequestReferrerPolicyNoReferrerWhenDowngrade | NetworkRequestReferrerPolicyNoReferrer | NetworkRequestReferrerPolicyOrigin | NetworkRequestReferrerPolicyOriginWhenCrossOrigin | NetworkRequestReferrerPolicySameOrigin | NetworkRequestReferrerPolicyStrictOrigin | NetworkRequestReferrerPolicyStrictOriginWhenCrossOrigin
  deriving (Eq NetworkRequestReferrerPolicy
Eq NetworkRequestReferrerPolicy
-> (NetworkRequestReferrerPolicy
    -> NetworkRequestReferrerPolicy -> Ordering)
-> (NetworkRequestReferrerPolicy
    -> NetworkRequestReferrerPolicy -> Bool)
-> (NetworkRequestReferrerPolicy
    -> NetworkRequestReferrerPolicy -> Bool)
-> (NetworkRequestReferrerPolicy
    -> NetworkRequestReferrerPolicy -> Bool)
-> (NetworkRequestReferrerPolicy
    -> NetworkRequestReferrerPolicy -> Bool)
-> (NetworkRequestReferrerPolicy
    -> NetworkRequestReferrerPolicy -> NetworkRequestReferrerPolicy)
-> (NetworkRequestReferrerPolicy
    -> NetworkRequestReferrerPolicy -> NetworkRequestReferrerPolicy)
-> Ord NetworkRequestReferrerPolicy
NetworkRequestReferrerPolicy
-> NetworkRequestReferrerPolicy -> Bool
NetworkRequestReferrerPolicy
-> NetworkRequestReferrerPolicy -> Ordering
NetworkRequestReferrerPolicy
-> NetworkRequestReferrerPolicy -> NetworkRequestReferrerPolicy
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: NetworkRequestReferrerPolicy
-> NetworkRequestReferrerPolicy -> NetworkRequestReferrerPolicy
$cmin :: NetworkRequestReferrerPolicy
-> NetworkRequestReferrerPolicy -> NetworkRequestReferrerPolicy
max :: NetworkRequestReferrerPolicy
-> NetworkRequestReferrerPolicy -> NetworkRequestReferrerPolicy
$cmax :: NetworkRequestReferrerPolicy
-> NetworkRequestReferrerPolicy -> NetworkRequestReferrerPolicy
>= :: NetworkRequestReferrerPolicy
-> NetworkRequestReferrerPolicy -> Bool
$c>= :: NetworkRequestReferrerPolicy
-> NetworkRequestReferrerPolicy -> Bool
> :: NetworkRequestReferrerPolicy
-> NetworkRequestReferrerPolicy -> Bool
$c> :: NetworkRequestReferrerPolicy
-> NetworkRequestReferrerPolicy -> Bool
<= :: NetworkRequestReferrerPolicy
-> NetworkRequestReferrerPolicy -> Bool
$c<= :: NetworkRequestReferrerPolicy
-> NetworkRequestReferrerPolicy -> Bool
< :: NetworkRequestReferrerPolicy
-> NetworkRequestReferrerPolicy -> Bool
$c< :: NetworkRequestReferrerPolicy
-> NetworkRequestReferrerPolicy -> Bool
compare :: NetworkRequestReferrerPolicy
-> NetworkRequestReferrerPolicy -> Ordering
$ccompare :: NetworkRequestReferrerPolicy
-> NetworkRequestReferrerPolicy -> Ordering
$cp1Ord :: Eq NetworkRequestReferrerPolicy
Ord, NetworkRequestReferrerPolicy
-> NetworkRequestReferrerPolicy -> Bool
(NetworkRequestReferrerPolicy
 -> NetworkRequestReferrerPolicy -> Bool)
-> (NetworkRequestReferrerPolicy
    -> NetworkRequestReferrerPolicy -> Bool)
-> Eq NetworkRequestReferrerPolicy
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkRequestReferrerPolicy
-> NetworkRequestReferrerPolicy -> Bool
$c/= :: NetworkRequestReferrerPolicy
-> NetworkRequestReferrerPolicy -> Bool
== :: NetworkRequestReferrerPolicy
-> NetworkRequestReferrerPolicy -> Bool
$c== :: NetworkRequestReferrerPolicy
-> NetworkRequestReferrerPolicy -> Bool
Eq, Int -> NetworkRequestReferrerPolicy -> ShowS
[NetworkRequestReferrerPolicy] -> ShowS
NetworkRequestReferrerPolicy -> String
(Int -> NetworkRequestReferrerPolicy -> ShowS)
-> (NetworkRequestReferrerPolicy -> String)
-> ([NetworkRequestReferrerPolicy] -> ShowS)
-> Show NetworkRequestReferrerPolicy
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkRequestReferrerPolicy] -> ShowS
$cshowList :: [NetworkRequestReferrerPolicy] -> ShowS
show :: NetworkRequestReferrerPolicy -> String
$cshow :: NetworkRequestReferrerPolicy -> String
showsPrec :: Int -> NetworkRequestReferrerPolicy -> ShowS
$cshowsPrec :: Int -> NetworkRequestReferrerPolicy -> ShowS
Show, ReadPrec [NetworkRequestReferrerPolicy]
ReadPrec NetworkRequestReferrerPolicy
Int -> ReadS NetworkRequestReferrerPolicy
ReadS [NetworkRequestReferrerPolicy]
(Int -> ReadS NetworkRequestReferrerPolicy)
-> ReadS [NetworkRequestReferrerPolicy]
-> ReadPrec NetworkRequestReferrerPolicy
-> ReadPrec [NetworkRequestReferrerPolicy]
-> Read NetworkRequestReferrerPolicy
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [NetworkRequestReferrerPolicy]
$creadListPrec :: ReadPrec [NetworkRequestReferrerPolicy]
readPrec :: ReadPrec NetworkRequestReferrerPolicy
$creadPrec :: ReadPrec NetworkRequestReferrerPolicy
readList :: ReadS [NetworkRequestReferrerPolicy]
$creadList :: ReadS [NetworkRequestReferrerPolicy]
readsPrec :: Int -> ReadS NetworkRequestReferrerPolicy
$creadsPrec :: Int -> ReadS NetworkRequestReferrerPolicy
Read)
instance FromJSON NetworkRequestReferrerPolicy where
  parseJSON :: Value -> Parser NetworkRequestReferrerPolicy
parseJSON = String
-> (Text -> Parser NetworkRequestReferrerPolicy)
-> Value
-> Parser NetworkRequestReferrerPolicy
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"NetworkRequestReferrerPolicy" ((Text -> Parser NetworkRequestReferrerPolicy)
 -> Value -> Parser NetworkRequestReferrerPolicy)
-> (Text -> Parser NetworkRequestReferrerPolicy)
-> Value
-> Parser NetworkRequestReferrerPolicy
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"unsafe-url" -> NetworkRequestReferrerPolicy -> Parser NetworkRequestReferrerPolicy
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkRequestReferrerPolicy
NetworkRequestReferrerPolicyUnsafeUrl
    Text
"no-referrer-when-downgrade" -> NetworkRequestReferrerPolicy -> Parser NetworkRequestReferrerPolicy
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkRequestReferrerPolicy
NetworkRequestReferrerPolicyNoReferrerWhenDowngrade
    Text
"no-referrer" -> NetworkRequestReferrerPolicy -> Parser NetworkRequestReferrerPolicy
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkRequestReferrerPolicy
NetworkRequestReferrerPolicyNoReferrer
    Text
"origin" -> NetworkRequestReferrerPolicy -> Parser NetworkRequestReferrerPolicy
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkRequestReferrerPolicy
NetworkRequestReferrerPolicyOrigin
    Text
"origin-when-cross-origin" -> NetworkRequestReferrerPolicy -> Parser NetworkRequestReferrerPolicy
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkRequestReferrerPolicy
NetworkRequestReferrerPolicyOriginWhenCrossOrigin
    Text
"same-origin" -> NetworkRequestReferrerPolicy -> Parser NetworkRequestReferrerPolicy
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkRequestReferrerPolicy
NetworkRequestReferrerPolicySameOrigin
    Text
"strict-origin" -> NetworkRequestReferrerPolicy -> Parser NetworkRequestReferrerPolicy
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkRequestReferrerPolicy
NetworkRequestReferrerPolicyStrictOrigin
    Text
"strict-origin-when-cross-origin" -> NetworkRequestReferrerPolicy -> Parser NetworkRequestReferrerPolicy
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkRequestReferrerPolicy
NetworkRequestReferrerPolicyStrictOriginWhenCrossOrigin
    Text
"_" -> String -> Parser NetworkRequestReferrerPolicy
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse NetworkRequestReferrerPolicy"
instance ToJSON NetworkRequestReferrerPolicy where
  toJSON :: NetworkRequestReferrerPolicy -> Value
toJSON NetworkRequestReferrerPolicy
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case NetworkRequestReferrerPolicy
v of
    NetworkRequestReferrerPolicy
NetworkRequestReferrerPolicyUnsafeUrl -> Text
"unsafe-url"
    NetworkRequestReferrerPolicy
NetworkRequestReferrerPolicyNoReferrerWhenDowngrade -> Text
"no-referrer-when-downgrade"
    NetworkRequestReferrerPolicy
NetworkRequestReferrerPolicyNoReferrer -> Text
"no-referrer"
    NetworkRequestReferrerPolicy
NetworkRequestReferrerPolicyOrigin -> Text
"origin"
    NetworkRequestReferrerPolicy
NetworkRequestReferrerPolicyOriginWhenCrossOrigin -> Text
"origin-when-cross-origin"
    NetworkRequestReferrerPolicy
NetworkRequestReferrerPolicySameOrigin -> Text
"same-origin"
    NetworkRequestReferrerPolicy
NetworkRequestReferrerPolicyStrictOrigin -> Text
"strict-origin"
    NetworkRequestReferrerPolicy
NetworkRequestReferrerPolicyStrictOriginWhenCrossOrigin -> Text
"strict-origin-when-cross-origin"
data NetworkRequest = NetworkRequest
  {
    -- | Request URL (without fragment).
    NetworkRequest -> Text
networkRequestUrl :: T.Text,
    -- | Fragment of the requested URL starting with hash, if present.
    NetworkRequest -> Maybe Text
networkRequestUrlFragment :: Maybe T.Text,
    -- | HTTP request method.
    NetworkRequest -> Text
networkRequestMethod :: T.Text,
    -- | HTTP request headers.
    NetworkRequest -> NetworkHeaders
networkRequestHeaders :: NetworkHeaders,
    -- | HTTP POST request data.
    NetworkRequest -> Maybe Text
networkRequestPostData :: Maybe T.Text,
    -- | True when the request has POST data. Note that postData might still be omitted when this flag is true when the data is too long.
    NetworkRequest -> Maybe Bool
networkRequestHasPostData :: Maybe Bool,
    -- | Request body elements. This will be converted from base64 to binary
    NetworkRequest -> Maybe [NetworkPostDataEntry]
networkRequestPostDataEntries :: Maybe [NetworkPostDataEntry],
    -- | The mixed content type of the request.
    NetworkRequest -> Maybe SecurityMixedContentType
networkRequestMixedContentType :: Maybe SecurityMixedContentType,
    -- | Priority of the resource request at the time request is sent.
    NetworkRequest -> NetworkResourcePriority
networkRequestInitialPriority :: NetworkResourcePriority,
    -- | The referrer policy of the request, as defined in https://www.w3.org/TR/referrer-policy/
    NetworkRequest -> NetworkRequestReferrerPolicy
networkRequestReferrerPolicy :: NetworkRequestReferrerPolicy,
    -- | Whether is loaded via link preload.
    NetworkRequest -> Maybe Bool
networkRequestIsLinkPreload :: Maybe Bool,
    -- | Set for requests when the TrustToken API is used. Contains the parameters
    --   passed by the developer (e.g. via "fetch") as understood by the backend.
    NetworkRequest -> Maybe NetworkTrustTokenParams
networkRequestTrustTokenParams :: Maybe NetworkTrustTokenParams,
    -- | True if this resource request is considered to be the 'same site' as the
    --   request correspondinfg to the main frame.
    NetworkRequest -> Maybe Bool
networkRequestIsSameSite :: Maybe Bool
  }
  deriving (NetworkRequest -> NetworkRequest -> Bool
(NetworkRequest -> NetworkRequest -> Bool)
-> (NetworkRequest -> NetworkRequest -> Bool) -> Eq NetworkRequest
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkRequest -> NetworkRequest -> Bool
$c/= :: NetworkRequest -> NetworkRequest -> Bool
== :: NetworkRequest -> NetworkRequest -> Bool
$c== :: NetworkRequest -> NetworkRequest -> Bool
Eq, Int -> NetworkRequest -> ShowS
[NetworkRequest] -> ShowS
NetworkRequest -> String
(Int -> NetworkRequest -> ShowS)
-> (NetworkRequest -> String)
-> ([NetworkRequest] -> ShowS)
-> Show NetworkRequest
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkRequest] -> ShowS
$cshowList :: [NetworkRequest] -> ShowS
show :: NetworkRequest -> String
$cshow :: NetworkRequest -> String
showsPrec :: Int -> NetworkRequest -> ShowS
$cshowsPrec :: Int -> NetworkRequest -> ShowS
Show)
instance FromJSON NetworkRequest where
  parseJSON :: Value -> Parser NetworkRequest
parseJSON = String
-> (Object -> Parser NetworkRequest)
-> Value
-> Parser NetworkRequest
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkRequest" ((Object -> Parser NetworkRequest)
 -> Value -> Parser NetworkRequest)
-> (Object -> Parser NetworkRequest)
-> Value
-> Parser NetworkRequest
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> Maybe Text
-> Text
-> NetworkHeaders
-> Maybe Text
-> Maybe Bool
-> Maybe [NetworkPostDataEntry]
-> Maybe SecurityMixedContentType
-> NetworkResourcePriority
-> NetworkRequestReferrerPolicy
-> Maybe Bool
-> Maybe NetworkTrustTokenParams
-> Maybe Bool
-> NetworkRequest
NetworkRequest
    (Text
 -> Maybe Text
 -> Text
 -> NetworkHeaders
 -> Maybe Text
 -> Maybe Bool
 -> Maybe [NetworkPostDataEntry]
 -> Maybe SecurityMixedContentType
 -> NetworkResourcePriority
 -> NetworkRequestReferrerPolicy
 -> Maybe Bool
 -> Maybe NetworkTrustTokenParams
 -> Maybe Bool
 -> NetworkRequest)
-> Parser Text
-> Parser
     (Maybe Text
      -> Text
      -> NetworkHeaders
      -> Maybe Text
      -> Maybe Bool
      -> Maybe [NetworkPostDataEntry]
      -> Maybe SecurityMixedContentType
      -> NetworkResourcePriority
      -> NetworkRequestReferrerPolicy
      -> Maybe Bool
      -> Maybe NetworkTrustTokenParams
      -> Maybe Bool
      -> NetworkRequest)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"url"
    Parser
  (Maybe Text
   -> Text
   -> NetworkHeaders
   -> Maybe Text
   -> Maybe Bool
   -> Maybe [NetworkPostDataEntry]
   -> Maybe SecurityMixedContentType
   -> NetworkResourcePriority
   -> NetworkRequestReferrerPolicy
   -> Maybe Bool
   -> Maybe NetworkTrustTokenParams
   -> Maybe Bool
   -> NetworkRequest)
-> Parser (Maybe Text)
-> Parser
     (Text
      -> NetworkHeaders
      -> Maybe Text
      -> Maybe Bool
      -> Maybe [NetworkPostDataEntry]
      -> Maybe SecurityMixedContentType
      -> NetworkResourcePriority
      -> NetworkRequestReferrerPolicy
      -> Maybe Bool
      -> Maybe NetworkTrustTokenParams
      -> Maybe Bool
      -> NetworkRequest)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"urlFragment"
    Parser
  (Text
   -> NetworkHeaders
   -> Maybe Text
   -> Maybe Bool
   -> Maybe [NetworkPostDataEntry]
   -> Maybe SecurityMixedContentType
   -> NetworkResourcePriority
   -> NetworkRequestReferrerPolicy
   -> Maybe Bool
   -> Maybe NetworkTrustTokenParams
   -> Maybe Bool
   -> NetworkRequest)
-> Parser Text
-> Parser
     (NetworkHeaders
      -> Maybe Text
      -> Maybe Bool
      -> Maybe [NetworkPostDataEntry]
      -> Maybe SecurityMixedContentType
      -> NetworkResourcePriority
      -> NetworkRequestReferrerPolicy
      -> Maybe Bool
      -> Maybe NetworkTrustTokenParams
      -> Maybe Bool
      -> NetworkRequest)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"method"
    Parser
  (NetworkHeaders
   -> Maybe Text
   -> Maybe Bool
   -> Maybe [NetworkPostDataEntry]
   -> Maybe SecurityMixedContentType
   -> NetworkResourcePriority
   -> NetworkRequestReferrerPolicy
   -> Maybe Bool
   -> Maybe NetworkTrustTokenParams
   -> Maybe Bool
   -> NetworkRequest)
-> Parser NetworkHeaders
-> Parser
     (Maybe Text
      -> Maybe Bool
      -> Maybe [NetworkPostDataEntry]
      -> Maybe SecurityMixedContentType
      -> NetworkResourcePriority
      -> NetworkRequestReferrerPolicy
      -> Maybe Bool
      -> Maybe NetworkTrustTokenParams
      -> Maybe Bool
      -> NetworkRequest)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser NetworkHeaders
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"headers"
    Parser
  (Maybe Text
   -> Maybe Bool
   -> Maybe [NetworkPostDataEntry]
   -> Maybe SecurityMixedContentType
   -> NetworkResourcePriority
   -> NetworkRequestReferrerPolicy
   -> Maybe Bool
   -> Maybe NetworkTrustTokenParams
   -> Maybe Bool
   -> NetworkRequest)
-> Parser (Maybe Text)
-> Parser
     (Maybe Bool
      -> Maybe [NetworkPostDataEntry]
      -> Maybe SecurityMixedContentType
      -> NetworkResourcePriority
      -> NetworkRequestReferrerPolicy
      -> Maybe Bool
      -> Maybe NetworkTrustTokenParams
      -> Maybe Bool
      -> NetworkRequest)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"postData"
    Parser
  (Maybe Bool
   -> Maybe [NetworkPostDataEntry]
   -> Maybe SecurityMixedContentType
   -> NetworkResourcePriority
   -> NetworkRequestReferrerPolicy
   -> Maybe Bool
   -> Maybe NetworkTrustTokenParams
   -> Maybe Bool
   -> NetworkRequest)
-> Parser (Maybe Bool)
-> Parser
     (Maybe [NetworkPostDataEntry]
      -> Maybe SecurityMixedContentType
      -> NetworkResourcePriority
      -> NetworkRequestReferrerPolicy
      -> Maybe Bool
      -> Maybe NetworkTrustTokenParams
      -> Maybe Bool
      -> NetworkRequest)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"hasPostData"
    Parser
  (Maybe [NetworkPostDataEntry]
   -> Maybe SecurityMixedContentType
   -> NetworkResourcePriority
   -> NetworkRequestReferrerPolicy
   -> Maybe Bool
   -> Maybe NetworkTrustTokenParams
   -> Maybe Bool
   -> NetworkRequest)
-> Parser (Maybe [NetworkPostDataEntry])
-> Parser
     (Maybe SecurityMixedContentType
      -> NetworkResourcePriority
      -> NetworkRequestReferrerPolicy
      -> Maybe Bool
      -> Maybe NetworkTrustTokenParams
      -> Maybe Bool
      -> NetworkRequest)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe [NetworkPostDataEntry])
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"postDataEntries"
    Parser
  (Maybe SecurityMixedContentType
   -> NetworkResourcePriority
   -> NetworkRequestReferrerPolicy
   -> Maybe Bool
   -> Maybe NetworkTrustTokenParams
   -> Maybe Bool
   -> NetworkRequest)
-> Parser (Maybe SecurityMixedContentType)
-> Parser
     (NetworkResourcePriority
      -> NetworkRequestReferrerPolicy
      -> Maybe Bool
      -> Maybe NetworkTrustTokenParams
      -> Maybe Bool
      -> NetworkRequest)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe SecurityMixedContentType)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"mixedContentType"
    Parser
  (NetworkResourcePriority
   -> NetworkRequestReferrerPolicy
   -> Maybe Bool
   -> Maybe NetworkTrustTokenParams
   -> Maybe Bool
   -> NetworkRequest)
-> Parser NetworkResourcePriority
-> Parser
     (NetworkRequestReferrerPolicy
      -> Maybe Bool
      -> Maybe NetworkTrustTokenParams
      -> Maybe Bool
      -> NetworkRequest)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser NetworkResourcePriority
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"initialPriority"
    Parser
  (NetworkRequestReferrerPolicy
   -> Maybe Bool
   -> Maybe NetworkTrustTokenParams
   -> Maybe Bool
   -> NetworkRequest)
-> Parser NetworkRequestReferrerPolicy
-> Parser
     (Maybe Bool
      -> Maybe NetworkTrustTokenParams -> Maybe Bool -> NetworkRequest)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser NetworkRequestReferrerPolicy
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"referrerPolicy"
    Parser
  (Maybe Bool
   -> Maybe NetworkTrustTokenParams -> Maybe Bool -> NetworkRequest)
-> Parser (Maybe Bool)
-> Parser
     (Maybe NetworkTrustTokenParams -> Maybe Bool -> NetworkRequest)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"isLinkPreload"
    Parser
  (Maybe NetworkTrustTokenParams -> Maybe Bool -> NetworkRequest)
-> Parser (Maybe NetworkTrustTokenParams)
-> Parser (Maybe Bool -> NetworkRequest)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe NetworkTrustTokenParams)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"trustTokenParams"
    Parser (Maybe Bool -> NetworkRequest)
-> Parser (Maybe Bool) -> Parser NetworkRequest
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"isSameSite"
instance ToJSON NetworkRequest where
  toJSON :: NetworkRequest -> Value
toJSON NetworkRequest
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"url" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkRequest -> Text
networkRequestUrl NetworkRequest
p),
    (Text
"urlFragment" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkRequest -> Maybe Text
networkRequestUrlFragment NetworkRequest
p),
    (Text
"method" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkRequest -> Text
networkRequestMethod NetworkRequest
p),
    (Text
"headers" Text -> NetworkHeaders -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkHeaders -> Pair) -> Maybe NetworkHeaders -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> NetworkHeaders -> Maybe NetworkHeaders
forall a. a -> Maybe a
Just (NetworkRequest -> NetworkHeaders
networkRequestHeaders NetworkRequest
p),
    (Text
"postData" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkRequest -> Maybe Text
networkRequestPostData NetworkRequest
p),
    (Text
"hasPostData" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkRequest -> Maybe Bool
networkRequestHasPostData NetworkRequest
p),
    (Text
"postDataEntries" Text -> [NetworkPostDataEntry] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([NetworkPostDataEntry] -> Pair)
-> Maybe [NetworkPostDataEntry] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkRequest -> Maybe [NetworkPostDataEntry]
networkRequestPostDataEntries NetworkRequest
p),
    (Text
"mixedContentType" Text -> SecurityMixedContentType -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (SecurityMixedContentType -> Pair)
-> Maybe SecurityMixedContentType -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkRequest -> Maybe SecurityMixedContentType
networkRequestMixedContentType NetworkRequest
p),
    (Text
"initialPriority" Text -> NetworkResourcePriority -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkResourcePriority -> Pair)
-> Maybe NetworkResourcePriority -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> NetworkResourcePriority -> Maybe NetworkResourcePriority
forall a. a -> Maybe a
Just (NetworkRequest -> NetworkResourcePriority
networkRequestInitialPriority NetworkRequest
p),
    (Text
"referrerPolicy" Text -> NetworkRequestReferrerPolicy -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkRequestReferrerPolicy -> Pair)
-> Maybe NetworkRequestReferrerPolicy -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> NetworkRequestReferrerPolicy -> Maybe NetworkRequestReferrerPolicy
forall a. a -> Maybe a
Just (NetworkRequest -> NetworkRequestReferrerPolicy
networkRequestReferrerPolicy NetworkRequest
p),
    (Text
"isLinkPreload" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkRequest -> Maybe Bool
networkRequestIsLinkPreload NetworkRequest
p),
    (Text
"trustTokenParams" Text -> NetworkTrustTokenParams -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkTrustTokenParams -> Pair)
-> Maybe NetworkTrustTokenParams -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkRequest -> Maybe NetworkTrustTokenParams
networkRequestTrustTokenParams NetworkRequest
p),
    (Text
"isSameSite" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkRequest -> Maybe Bool
networkRequestIsSameSite NetworkRequest
p)
    ]

-- | Type 'Network.SignedCertificateTimestamp'.
--   Details of a signed certificate timestamp (SCT).
data NetworkSignedCertificateTimestamp = NetworkSignedCertificateTimestamp
  {
    -- | Validation status.
    NetworkSignedCertificateTimestamp -> Text
networkSignedCertificateTimestampStatus :: T.Text,
    -- | Origin.
    NetworkSignedCertificateTimestamp -> Text
networkSignedCertificateTimestampOrigin :: T.Text,
    -- | Log name / description.
    NetworkSignedCertificateTimestamp -> Text
networkSignedCertificateTimestampLogDescription :: T.Text,
    -- | Log ID.
    NetworkSignedCertificateTimestamp -> Text
networkSignedCertificateTimestampLogId :: T.Text,
    -- | Issuance date. Unlike TimeSinceEpoch, this contains the number of
    --   milliseconds since January 1, 1970, UTC, not the number of seconds.
    NetworkSignedCertificateTimestamp -> Double
networkSignedCertificateTimestampTimestamp :: Double,
    -- | Hash algorithm.
    NetworkSignedCertificateTimestamp -> Text
networkSignedCertificateTimestampHashAlgorithm :: T.Text,
    -- | Signature algorithm.
    NetworkSignedCertificateTimestamp -> Text
networkSignedCertificateTimestampSignatureAlgorithm :: T.Text,
    -- | Signature data.
    NetworkSignedCertificateTimestamp -> Text
networkSignedCertificateTimestampSignatureData :: T.Text
  }
  deriving (NetworkSignedCertificateTimestamp
-> NetworkSignedCertificateTimestamp -> Bool
(NetworkSignedCertificateTimestamp
 -> NetworkSignedCertificateTimestamp -> Bool)
-> (NetworkSignedCertificateTimestamp
    -> NetworkSignedCertificateTimestamp -> Bool)
-> Eq NetworkSignedCertificateTimestamp
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkSignedCertificateTimestamp
-> NetworkSignedCertificateTimestamp -> Bool
$c/= :: NetworkSignedCertificateTimestamp
-> NetworkSignedCertificateTimestamp -> Bool
== :: NetworkSignedCertificateTimestamp
-> NetworkSignedCertificateTimestamp -> Bool
$c== :: NetworkSignedCertificateTimestamp
-> NetworkSignedCertificateTimestamp -> Bool
Eq, Int -> NetworkSignedCertificateTimestamp -> ShowS
[NetworkSignedCertificateTimestamp] -> ShowS
NetworkSignedCertificateTimestamp -> String
(Int -> NetworkSignedCertificateTimestamp -> ShowS)
-> (NetworkSignedCertificateTimestamp -> String)
-> ([NetworkSignedCertificateTimestamp] -> ShowS)
-> Show NetworkSignedCertificateTimestamp
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkSignedCertificateTimestamp] -> ShowS
$cshowList :: [NetworkSignedCertificateTimestamp] -> ShowS
show :: NetworkSignedCertificateTimestamp -> String
$cshow :: NetworkSignedCertificateTimestamp -> String
showsPrec :: Int -> NetworkSignedCertificateTimestamp -> ShowS
$cshowsPrec :: Int -> NetworkSignedCertificateTimestamp -> ShowS
Show)
instance FromJSON NetworkSignedCertificateTimestamp where
  parseJSON :: Value -> Parser NetworkSignedCertificateTimestamp
parseJSON = String
-> (Object -> Parser NetworkSignedCertificateTimestamp)
-> Value
-> Parser NetworkSignedCertificateTimestamp
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkSignedCertificateTimestamp" ((Object -> Parser NetworkSignedCertificateTimestamp)
 -> Value -> Parser NetworkSignedCertificateTimestamp)
-> (Object -> Parser NetworkSignedCertificateTimestamp)
-> Value
-> Parser NetworkSignedCertificateTimestamp
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> Text
-> Text
-> Text
-> Double
-> Text
-> Text
-> Text
-> NetworkSignedCertificateTimestamp
NetworkSignedCertificateTimestamp
    (Text
 -> Text
 -> Text
 -> Text
 -> Double
 -> Text
 -> Text
 -> Text
 -> NetworkSignedCertificateTimestamp)
-> Parser Text
-> Parser
     (Text
      -> Text
      -> Text
      -> Double
      -> Text
      -> Text
      -> Text
      -> NetworkSignedCertificateTimestamp)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"status"
    Parser
  (Text
   -> Text
   -> Text
   -> Double
   -> Text
   -> Text
   -> Text
   -> NetworkSignedCertificateTimestamp)
-> Parser Text
-> Parser
     (Text
      -> Text
      -> Double
      -> Text
      -> Text
      -> Text
      -> NetworkSignedCertificateTimestamp)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"origin"
    Parser
  (Text
   -> Text
   -> Double
   -> Text
   -> Text
   -> Text
   -> NetworkSignedCertificateTimestamp)
-> Parser Text
-> Parser
     (Text
      -> Double
      -> Text
      -> Text
      -> Text
      -> NetworkSignedCertificateTimestamp)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"logDescription"
    Parser
  (Text
   -> Double
   -> Text
   -> Text
   -> Text
   -> NetworkSignedCertificateTimestamp)
-> Parser Text
-> Parser
     (Double
      -> Text -> Text -> Text -> NetworkSignedCertificateTimestamp)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"logId"
    Parser
  (Double
   -> Text -> Text -> Text -> NetworkSignedCertificateTimestamp)
-> Parser Double
-> Parser
     (Text -> Text -> Text -> NetworkSignedCertificateTimestamp)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"timestamp"
    Parser (Text -> Text -> Text -> NetworkSignedCertificateTimestamp)
-> Parser Text
-> Parser (Text -> Text -> NetworkSignedCertificateTimestamp)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"hashAlgorithm"
    Parser (Text -> Text -> NetworkSignedCertificateTimestamp)
-> Parser Text
-> Parser (Text -> NetworkSignedCertificateTimestamp)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"signatureAlgorithm"
    Parser (Text -> NetworkSignedCertificateTimestamp)
-> Parser Text -> Parser NetworkSignedCertificateTimestamp
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"signatureData"
instance ToJSON NetworkSignedCertificateTimestamp where
  toJSON :: NetworkSignedCertificateTimestamp -> Value
toJSON NetworkSignedCertificateTimestamp
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"status" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkSignedCertificateTimestamp -> Text
networkSignedCertificateTimestampStatus NetworkSignedCertificateTimestamp
p),
    (Text
"origin" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkSignedCertificateTimestamp -> Text
networkSignedCertificateTimestampOrigin NetworkSignedCertificateTimestamp
p),
    (Text
"logDescription" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkSignedCertificateTimestamp -> Text
networkSignedCertificateTimestampLogDescription NetworkSignedCertificateTimestamp
p),
    (Text
"logId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkSignedCertificateTimestamp -> Text
networkSignedCertificateTimestampLogId NetworkSignedCertificateTimestamp
p),
    (Text
"timestamp" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (NetworkSignedCertificateTimestamp -> Double
networkSignedCertificateTimestampTimestamp NetworkSignedCertificateTimestamp
p),
    (Text
"hashAlgorithm" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkSignedCertificateTimestamp -> Text
networkSignedCertificateTimestampHashAlgorithm NetworkSignedCertificateTimestamp
p),
    (Text
"signatureAlgorithm" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkSignedCertificateTimestamp -> Text
networkSignedCertificateTimestampSignatureAlgorithm NetworkSignedCertificateTimestamp
p),
    (Text
"signatureData" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkSignedCertificateTimestamp -> Text
networkSignedCertificateTimestampSignatureData NetworkSignedCertificateTimestamp
p)
    ]

-- | Type 'Network.SecurityDetails'.
--   Security details about a request.
data NetworkSecurityDetails = NetworkSecurityDetails
  {
    -- | Protocol name (e.g. "TLS 1.2" or "QUIC").
    NetworkSecurityDetails -> Text
networkSecurityDetailsProtocol :: T.Text,
    -- | Key Exchange used by the connection, or the empty string if not applicable.
    NetworkSecurityDetails -> Text
networkSecurityDetailsKeyExchange :: T.Text,
    -- | (EC)DH group used by the connection, if applicable.
    NetworkSecurityDetails -> Maybe Text
networkSecurityDetailsKeyExchangeGroup :: Maybe T.Text,
    -- | Cipher name.
    NetworkSecurityDetails -> Text
networkSecurityDetailsCipher :: T.Text,
    -- | TLS MAC. Note that AEAD ciphers do not have separate MACs.
    NetworkSecurityDetails -> Maybe Text
networkSecurityDetailsMac :: Maybe T.Text,
    -- | Certificate ID value.
    NetworkSecurityDetails -> Int
networkSecurityDetailsCertificateId :: SecurityCertificateId,
    -- | Certificate subject name.
    NetworkSecurityDetails -> Text
networkSecurityDetailsSubjectName :: T.Text,
    -- | Subject Alternative Name (SAN) DNS names and IP addresses.
    NetworkSecurityDetails -> [Text]
networkSecurityDetailsSanList :: [T.Text],
    -- | Name of the issuing CA.
    NetworkSecurityDetails -> Text
networkSecurityDetailsIssuer :: T.Text,
    -- | Certificate valid from date.
    NetworkSecurityDetails -> Double
networkSecurityDetailsValidFrom :: NetworkTimeSinceEpoch,
    -- | Certificate valid to (expiration) date
    NetworkSecurityDetails -> Double
networkSecurityDetailsValidTo :: NetworkTimeSinceEpoch,
    -- | List of signed certificate timestamps (SCTs).
    NetworkSecurityDetails -> [NetworkSignedCertificateTimestamp]
networkSecurityDetailsSignedCertificateTimestampList :: [NetworkSignedCertificateTimestamp],
    -- | Whether the request complied with Certificate Transparency policy
    NetworkSecurityDetails -> NetworkCertificateTransparencyCompliance
networkSecurityDetailsCertificateTransparencyCompliance :: NetworkCertificateTransparencyCompliance,
    -- | The signature algorithm used by the server in the TLS server signature,
    --   represented as a TLS SignatureScheme code point. Omitted if not
    --   applicable or not known.
    NetworkSecurityDetails -> Maybe Int
networkSecurityDetailsServerSignatureAlgorithm :: Maybe Int,
    -- | Whether the connection used Encrypted ClientHello
    NetworkSecurityDetails -> Bool
networkSecurityDetailsEncryptedClientHello :: Bool
  }
  deriving (NetworkSecurityDetails -> NetworkSecurityDetails -> Bool
(NetworkSecurityDetails -> NetworkSecurityDetails -> Bool)
-> (NetworkSecurityDetails -> NetworkSecurityDetails -> Bool)
-> Eq NetworkSecurityDetails
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkSecurityDetails -> NetworkSecurityDetails -> Bool
$c/= :: NetworkSecurityDetails -> NetworkSecurityDetails -> Bool
== :: NetworkSecurityDetails -> NetworkSecurityDetails -> Bool
$c== :: NetworkSecurityDetails -> NetworkSecurityDetails -> Bool
Eq, Int -> NetworkSecurityDetails -> ShowS
[NetworkSecurityDetails] -> ShowS
NetworkSecurityDetails -> String
(Int -> NetworkSecurityDetails -> ShowS)
-> (NetworkSecurityDetails -> String)
-> ([NetworkSecurityDetails] -> ShowS)
-> Show NetworkSecurityDetails
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkSecurityDetails] -> ShowS
$cshowList :: [NetworkSecurityDetails] -> ShowS
show :: NetworkSecurityDetails -> String
$cshow :: NetworkSecurityDetails -> String
showsPrec :: Int -> NetworkSecurityDetails -> ShowS
$cshowsPrec :: Int -> NetworkSecurityDetails -> ShowS
Show)
instance FromJSON NetworkSecurityDetails where
  parseJSON :: Value -> Parser NetworkSecurityDetails
parseJSON = String
-> (Object -> Parser NetworkSecurityDetails)
-> Value
-> Parser NetworkSecurityDetails
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkSecurityDetails" ((Object -> Parser NetworkSecurityDetails)
 -> Value -> Parser NetworkSecurityDetails)
-> (Object -> Parser NetworkSecurityDetails)
-> Value
-> Parser NetworkSecurityDetails
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> Text
-> Maybe Text
-> Text
-> Maybe Text
-> Int
-> Text
-> [Text]
-> Text
-> Double
-> Double
-> [NetworkSignedCertificateTimestamp]
-> NetworkCertificateTransparencyCompliance
-> Maybe Int
-> Bool
-> NetworkSecurityDetails
NetworkSecurityDetails
    (Text
 -> Text
 -> Maybe Text
 -> Text
 -> Maybe Text
 -> Int
 -> Text
 -> [Text]
 -> Text
 -> Double
 -> Double
 -> [NetworkSignedCertificateTimestamp]
 -> NetworkCertificateTransparencyCompliance
 -> Maybe Int
 -> Bool
 -> NetworkSecurityDetails)
-> Parser Text
-> Parser
     (Text
      -> Maybe Text
      -> Text
      -> Maybe Text
      -> Int
      -> Text
      -> [Text]
      -> Text
      -> Double
      -> Double
      -> [NetworkSignedCertificateTimestamp]
      -> NetworkCertificateTransparencyCompliance
      -> Maybe Int
      -> Bool
      -> NetworkSecurityDetails)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"protocol"
    Parser
  (Text
   -> Maybe Text
   -> Text
   -> Maybe Text
   -> Int
   -> Text
   -> [Text]
   -> Text
   -> Double
   -> Double
   -> [NetworkSignedCertificateTimestamp]
   -> NetworkCertificateTransparencyCompliance
   -> Maybe Int
   -> Bool
   -> NetworkSecurityDetails)
-> Parser Text
-> Parser
     (Maybe Text
      -> Text
      -> Maybe Text
      -> Int
      -> Text
      -> [Text]
      -> Text
      -> Double
      -> Double
      -> [NetworkSignedCertificateTimestamp]
      -> NetworkCertificateTransparencyCompliance
      -> Maybe Int
      -> Bool
      -> NetworkSecurityDetails)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"keyExchange"
    Parser
  (Maybe Text
   -> Text
   -> Maybe Text
   -> Int
   -> Text
   -> [Text]
   -> Text
   -> Double
   -> Double
   -> [NetworkSignedCertificateTimestamp]
   -> NetworkCertificateTransparencyCompliance
   -> Maybe Int
   -> Bool
   -> NetworkSecurityDetails)
-> Parser (Maybe Text)
-> Parser
     (Text
      -> Maybe Text
      -> Int
      -> Text
      -> [Text]
      -> Text
      -> Double
      -> Double
      -> [NetworkSignedCertificateTimestamp]
      -> NetworkCertificateTransparencyCompliance
      -> Maybe Int
      -> Bool
      -> NetworkSecurityDetails)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"keyExchangeGroup"
    Parser
  (Text
   -> Maybe Text
   -> Int
   -> Text
   -> [Text]
   -> Text
   -> Double
   -> Double
   -> [NetworkSignedCertificateTimestamp]
   -> NetworkCertificateTransparencyCompliance
   -> Maybe Int
   -> Bool
   -> NetworkSecurityDetails)
-> Parser Text
-> Parser
     (Maybe Text
      -> Int
      -> Text
      -> [Text]
      -> Text
      -> Double
      -> Double
      -> [NetworkSignedCertificateTimestamp]
      -> NetworkCertificateTransparencyCompliance
      -> Maybe Int
      -> Bool
      -> NetworkSecurityDetails)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"cipher"
    Parser
  (Maybe Text
   -> Int
   -> Text
   -> [Text]
   -> Text
   -> Double
   -> Double
   -> [NetworkSignedCertificateTimestamp]
   -> NetworkCertificateTransparencyCompliance
   -> Maybe Int
   -> Bool
   -> NetworkSecurityDetails)
-> Parser (Maybe Text)
-> Parser
     (Int
      -> Text
      -> [Text]
      -> Text
      -> Double
      -> Double
      -> [NetworkSignedCertificateTimestamp]
      -> NetworkCertificateTransparencyCompliance
      -> Maybe Int
      -> Bool
      -> NetworkSecurityDetails)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"mac"
    Parser
  (Int
   -> Text
   -> [Text]
   -> Text
   -> Double
   -> Double
   -> [NetworkSignedCertificateTimestamp]
   -> NetworkCertificateTransparencyCompliance
   -> Maybe Int
   -> Bool
   -> NetworkSecurityDetails)
-> Parser Int
-> Parser
     (Text
      -> [Text]
      -> Text
      -> Double
      -> Double
      -> [NetworkSignedCertificateTimestamp]
      -> NetworkCertificateTransparencyCompliance
      -> Maybe Int
      -> Bool
      -> NetworkSecurityDetails)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"certificateId"
    Parser
  (Text
   -> [Text]
   -> Text
   -> Double
   -> Double
   -> [NetworkSignedCertificateTimestamp]
   -> NetworkCertificateTransparencyCompliance
   -> Maybe Int
   -> Bool
   -> NetworkSecurityDetails)
-> Parser Text
-> Parser
     ([Text]
      -> Text
      -> Double
      -> Double
      -> [NetworkSignedCertificateTimestamp]
      -> NetworkCertificateTransparencyCompliance
      -> Maybe Int
      -> Bool
      -> NetworkSecurityDetails)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"subjectName"
    Parser
  ([Text]
   -> Text
   -> Double
   -> Double
   -> [NetworkSignedCertificateTimestamp]
   -> NetworkCertificateTransparencyCompliance
   -> Maybe Int
   -> Bool
   -> NetworkSecurityDetails)
-> Parser [Text]
-> Parser
     (Text
      -> Double
      -> Double
      -> [NetworkSignedCertificateTimestamp]
      -> NetworkCertificateTransparencyCompliance
      -> Maybe Int
      -> Bool
      -> NetworkSecurityDetails)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser [Text]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"sanList"
    Parser
  (Text
   -> Double
   -> Double
   -> [NetworkSignedCertificateTimestamp]
   -> NetworkCertificateTransparencyCompliance
   -> Maybe Int
   -> Bool
   -> NetworkSecurityDetails)
-> Parser Text
-> Parser
     (Double
      -> Double
      -> [NetworkSignedCertificateTimestamp]
      -> NetworkCertificateTransparencyCompliance
      -> Maybe Int
      -> Bool
      -> NetworkSecurityDetails)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"issuer"
    Parser
  (Double
   -> Double
   -> [NetworkSignedCertificateTimestamp]
   -> NetworkCertificateTransparencyCompliance
   -> Maybe Int
   -> Bool
   -> NetworkSecurityDetails)
-> Parser Double
-> Parser
     (Double
      -> [NetworkSignedCertificateTimestamp]
      -> NetworkCertificateTransparencyCompliance
      -> Maybe Int
      -> Bool
      -> NetworkSecurityDetails)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"validFrom"
    Parser
  (Double
   -> [NetworkSignedCertificateTimestamp]
   -> NetworkCertificateTransparencyCompliance
   -> Maybe Int
   -> Bool
   -> NetworkSecurityDetails)
-> Parser Double
-> Parser
     ([NetworkSignedCertificateTimestamp]
      -> NetworkCertificateTransparencyCompliance
      -> Maybe Int
      -> Bool
      -> NetworkSecurityDetails)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"validTo"
    Parser
  ([NetworkSignedCertificateTimestamp]
   -> NetworkCertificateTransparencyCompliance
   -> Maybe Int
   -> Bool
   -> NetworkSecurityDetails)
-> Parser [NetworkSignedCertificateTimestamp]
-> Parser
     (NetworkCertificateTransparencyCompliance
      -> Maybe Int -> Bool -> NetworkSecurityDetails)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser [NetworkSignedCertificateTimestamp]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"signedCertificateTimestampList"
    Parser
  (NetworkCertificateTransparencyCompliance
   -> Maybe Int -> Bool -> NetworkSecurityDetails)
-> Parser NetworkCertificateTransparencyCompliance
-> Parser (Maybe Int -> Bool -> NetworkSecurityDetails)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser NetworkCertificateTransparencyCompliance
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"certificateTransparencyCompliance"
    Parser (Maybe Int -> Bool -> NetworkSecurityDetails)
-> Parser (Maybe Int) -> Parser (Bool -> NetworkSecurityDetails)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Int)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"serverSignatureAlgorithm"
    Parser (Bool -> NetworkSecurityDetails)
-> Parser Bool -> Parser NetworkSecurityDetails
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Bool
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"encryptedClientHello"
instance ToJSON NetworkSecurityDetails where
  toJSON :: NetworkSecurityDetails -> Value
toJSON NetworkSecurityDetails
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"protocol" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkSecurityDetails -> Text
networkSecurityDetailsProtocol NetworkSecurityDetails
p),
    (Text
"keyExchange" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkSecurityDetails -> Text
networkSecurityDetailsKeyExchange NetworkSecurityDetails
p),
    (Text
"keyExchangeGroup" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkSecurityDetails -> Maybe Text
networkSecurityDetailsKeyExchangeGroup NetworkSecurityDetails
p),
    (Text
"cipher" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkSecurityDetails -> Text
networkSecurityDetailsCipher NetworkSecurityDetails
p),
    (Text
"mac" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkSecurityDetails -> Maybe Text
networkSecurityDetailsMac NetworkSecurityDetails
p),
    (Text
"certificateId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (NetworkSecurityDetails -> Int
networkSecurityDetailsCertificateId NetworkSecurityDetails
p),
    (Text
"subjectName" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkSecurityDetails -> Text
networkSecurityDetailsSubjectName NetworkSecurityDetails
p),
    (Text
"sanList" Text -> [Text] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([Text] -> Pair) -> Maybe [Text] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> [Text] -> Maybe [Text]
forall a. a -> Maybe a
Just (NetworkSecurityDetails -> [Text]
networkSecurityDetailsSanList NetworkSecurityDetails
p),
    (Text
"issuer" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkSecurityDetails -> Text
networkSecurityDetailsIssuer NetworkSecurityDetails
p),
    (Text
"validFrom" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (NetworkSecurityDetails -> Double
networkSecurityDetailsValidFrom NetworkSecurityDetails
p),
    (Text
"validTo" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (NetworkSecurityDetails -> Double
networkSecurityDetailsValidTo NetworkSecurityDetails
p),
    (Text
"signedCertificateTimestampList" Text -> [NetworkSignedCertificateTimestamp] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([NetworkSignedCertificateTimestamp] -> Pair)
-> Maybe [NetworkSignedCertificateTimestamp] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> [NetworkSignedCertificateTimestamp]
-> Maybe [NetworkSignedCertificateTimestamp]
forall a. a -> Maybe a
Just (NetworkSecurityDetails -> [NetworkSignedCertificateTimestamp]
networkSecurityDetailsSignedCertificateTimestampList NetworkSecurityDetails
p),
    (Text
"certificateTransparencyCompliance" Text -> NetworkCertificateTransparencyCompliance -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkCertificateTransparencyCompliance -> Pair)
-> Maybe NetworkCertificateTransparencyCompliance -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> NetworkCertificateTransparencyCompliance
-> Maybe NetworkCertificateTransparencyCompliance
forall a. a -> Maybe a
Just (NetworkSecurityDetails -> NetworkCertificateTransparencyCompliance
networkSecurityDetailsCertificateTransparencyCompliance NetworkSecurityDetails
p),
    (Text
"serverSignatureAlgorithm" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkSecurityDetails -> Maybe Int
networkSecurityDetailsServerSignatureAlgorithm NetworkSecurityDetails
p),
    (Text
"encryptedClientHello" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (NetworkSecurityDetails -> Bool
networkSecurityDetailsEncryptedClientHello NetworkSecurityDetails
p)
    ]

-- | Type 'Network.CertificateTransparencyCompliance'.
--   Whether the request complied with Certificate Transparency policy.
data NetworkCertificateTransparencyCompliance = NetworkCertificateTransparencyComplianceUnknown | NetworkCertificateTransparencyComplianceNotCompliant | NetworkCertificateTransparencyComplianceCompliant
  deriving (Eq NetworkCertificateTransparencyCompliance
Eq NetworkCertificateTransparencyCompliance
-> (NetworkCertificateTransparencyCompliance
    -> NetworkCertificateTransparencyCompliance -> Ordering)
-> (NetworkCertificateTransparencyCompliance
    -> NetworkCertificateTransparencyCompliance -> Bool)
-> (NetworkCertificateTransparencyCompliance
    -> NetworkCertificateTransparencyCompliance -> Bool)
-> (NetworkCertificateTransparencyCompliance
    -> NetworkCertificateTransparencyCompliance -> Bool)
-> (NetworkCertificateTransparencyCompliance
    -> NetworkCertificateTransparencyCompliance -> Bool)
-> (NetworkCertificateTransparencyCompliance
    -> NetworkCertificateTransparencyCompliance
    -> NetworkCertificateTransparencyCompliance)
-> (NetworkCertificateTransparencyCompliance
    -> NetworkCertificateTransparencyCompliance
    -> NetworkCertificateTransparencyCompliance)
-> Ord NetworkCertificateTransparencyCompliance
NetworkCertificateTransparencyCompliance
-> NetworkCertificateTransparencyCompliance -> Bool
NetworkCertificateTransparencyCompliance
-> NetworkCertificateTransparencyCompliance -> Ordering
NetworkCertificateTransparencyCompliance
-> NetworkCertificateTransparencyCompliance
-> NetworkCertificateTransparencyCompliance
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: NetworkCertificateTransparencyCompliance
-> NetworkCertificateTransparencyCompliance
-> NetworkCertificateTransparencyCompliance
$cmin :: NetworkCertificateTransparencyCompliance
-> NetworkCertificateTransparencyCompliance
-> NetworkCertificateTransparencyCompliance
max :: NetworkCertificateTransparencyCompliance
-> NetworkCertificateTransparencyCompliance
-> NetworkCertificateTransparencyCompliance
$cmax :: NetworkCertificateTransparencyCompliance
-> NetworkCertificateTransparencyCompliance
-> NetworkCertificateTransparencyCompliance
>= :: NetworkCertificateTransparencyCompliance
-> NetworkCertificateTransparencyCompliance -> Bool
$c>= :: NetworkCertificateTransparencyCompliance
-> NetworkCertificateTransparencyCompliance -> Bool
> :: NetworkCertificateTransparencyCompliance
-> NetworkCertificateTransparencyCompliance -> Bool
$c> :: NetworkCertificateTransparencyCompliance
-> NetworkCertificateTransparencyCompliance -> Bool
<= :: NetworkCertificateTransparencyCompliance
-> NetworkCertificateTransparencyCompliance -> Bool
$c<= :: NetworkCertificateTransparencyCompliance
-> NetworkCertificateTransparencyCompliance -> Bool
< :: NetworkCertificateTransparencyCompliance
-> NetworkCertificateTransparencyCompliance -> Bool
$c< :: NetworkCertificateTransparencyCompliance
-> NetworkCertificateTransparencyCompliance -> Bool
compare :: NetworkCertificateTransparencyCompliance
-> NetworkCertificateTransparencyCompliance -> Ordering
$ccompare :: NetworkCertificateTransparencyCompliance
-> NetworkCertificateTransparencyCompliance -> Ordering
$cp1Ord :: Eq NetworkCertificateTransparencyCompliance
Ord, NetworkCertificateTransparencyCompliance
-> NetworkCertificateTransparencyCompliance -> Bool
(NetworkCertificateTransparencyCompliance
 -> NetworkCertificateTransparencyCompliance -> Bool)
-> (NetworkCertificateTransparencyCompliance
    -> NetworkCertificateTransparencyCompliance -> Bool)
-> Eq NetworkCertificateTransparencyCompliance
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkCertificateTransparencyCompliance
-> NetworkCertificateTransparencyCompliance -> Bool
$c/= :: NetworkCertificateTransparencyCompliance
-> NetworkCertificateTransparencyCompliance -> Bool
== :: NetworkCertificateTransparencyCompliance
-> NetworkCertificateTransparencyCompliance -> Bool
$c== :: NetworkCertificateTransparencyCompliance
-> NetworkCertificateTransparencyCompliance -> Bool
Eq, Int -> NetworkCertificateTransparencyCompliance -> ShowS
[NetworkCertificateTransparencyCompliance] -> ShowS
NetworkCertificateTransparencyCompliance -> String
(Int -> NetworkCertificateTransparencyCompliance -> ShowS)
-> (NetworkCertificateTransparencyCompliance -> String)
-> ([NetworkCertificateTransparencyCompliance] -> ShowS)
-> Show NetworkCertificateTransparencyCompliance
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkCertificateTransparencyCompliance] -> ShowS
$cshowList :: [NetworkCertificateTransparencyCompliance] -> ShowS
show :: NetworkCertificateTransparencyCompliance -> String
$cshow :: NetworkCertificateTransparencyCompliance -> String
showsPrec :: Int -> NetworkCertificateTransparencyCompliance -> ShowS
$cshowsPrec :: Int -> NetworkCertificateTransparencyCompliance -> ShowS
Show, ReadPrec [NetworkCertificateTransparencyCompliance]
ReadPrec NetworkCertificateTransparencyCompliance
Int -> ReadS NetworkCertificateTransparencyCompliance
ReadS [NetworkCertificateTransparencyCompliance]
(Int -> ReadS NetworkCertificateTransparencyCompliance)
-> ReadS [NetworkCertificateTransparencyCompliance]
-> ReadPrec NetworkCertificateTransparencyCompliance
-> ReadPrec [NetworkCertificateTransparencyCompliance]
-> Read NetworkCertificateTransparencyCompliance
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [NetworkCertificateTransparencyCompliance]
$creadListPrec :: ReadPrec [NetworkCertificateTransparencyCompliance]
readPrec :: ReadPrec NetworkCertificateTransparencyCompliance
$creadPrec :: ReadPrec NetworkCertificateTransparencyCompliance
readList :: ReadS [NetworkCertificateTransparencyCompliance]
$creadList :: ReadS [NetworkCertificateTransparencyCompliance]
readsPrec :: Int -> ReadS NetworkCertificateTransparencyCompliance
$creadsPrec :: Int -> ReadS NetworkCertificateTransparencyCompliance
Read)
instance FromJSON NetworkCertificateTransparencyCompliance where
  parseJSON :: Value -> Parser NetworkCertificateTransparencyCompliance
parseJSON = String
-> (Text -> Parser NetworkCertificateTransparencyCompliance)
-> Value
-> Parser NetworkCertificateTransparencyCompliance
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"NetworkCertificateTransparencyCompliance" ((Text -> Parser NetworkCertificateTransparencyCompliance)
 -> Value -> Parser NetworkCertificateTransparencyCompliance)
-> (Text -> Parser NetworkCertificateTransparencyCompliance)
-> Value
-> Parser NetworkCertificateTransparencyCompliance
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"unknown" -> NetworkCertificateTransparencyCompliance
-> Parser NetworkCertificateTransparencyCompliance
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCertificateTransparencyCompliance
NetworkCertificateTransparencyComplianceUnknown
    Text
"not-compliant" -> NetworkCertificateTransparencyCompliance
-> Parser NetworkCertificateTransparencyCompliance
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCertificateTransparencyCompliance
NetworkCertificateTransparencyComplianceNotCompliant
    Text
"compliant" -> NetworkCertificateTransparencyCompliance
-> Parser NetworkCertificateTransparencyCompliance
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCertificateTransparencyCompliance
NetworkCertificateTransparencyComplianceCompliant
    Text
"_" -> String -> Parser NetworkCertificateTransparencyCompliance
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse NetworkCertificateTransparencyCompliance"
instance ToJSON NetworkCertificateTransparencyCompliance where
  toJSON :: NetworkCertificateTransparencyCompliance -> Value
toJSON NetworkCertificateTransparencyCompliance
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case NetworkCertificateTransparencyCompliance
v of
    NetworkCertificateTransparencyCompliance
NetworkCertificateTransparencyComplianceUnknown -> Text
"unknown"
    NetworkCertificateTransparencyCompliance
NetworkCertificateTransparencyComplianceNotCompliant -> Text
"not-compliant"
    NetworkCertificateTransparencyCompliance
NetworkCertificateTransparencyComplianceCompliant -> Text
"compliant"

-- | Type 'Network.BlockedReason'.
--   The reason why request was blocked.
data NetworkBlockedReason = NetworkBlockedReasonOther | NetworkBlockedReasonCsp | NetworkBlockedReasonMixedContent | NetworkBlockedReasonOrigin | NetworkBlockedReasonInspector | NetworkBlockedReasonSubresourceFilter | NetworkBlockedReasonContentType | NetworkBlockedReasonCoepFrameResourceNeedsCoepHeader | NetworkBlockedReasonCoopSandboxedIframeCannotNavigateToCoopPage | NetworkBlockedReasonCorpNotSameOrigin | NetworkBlockedReasonCorpNotSameOriginAfterDefaultedToSameOriginByCoep | NetworkBlockedReasonCorpNotSameSite
  deriving (Eq NetworkBlockedReason
Eq NetworkBlockedReason
-> (NetworkBlockedReason -> NetworkBlockedReason -> Ordering)
-> (NetworkBlockedReason -> NetworkBlockedReason -> Bool)
-> (NetworkBlockedReason -> NetworkBlockedReason -> Bool)
-> (NetworkBlockedReason -> NetworkBlockedReason -> Bool)
-> (NetworkBlockedReason -> NetworkBlockedReason -> Bool)
-> (NetworkBlockedReason
    -> NetworkBlockedReason -> NetworkBlockedReason)
-> (NetworkBlockedReason
    -> NetworkBlockedReason -> NetworkBlockedReason)
-> Ord NetworkBlockedReason
NetworkBlockedReason -> NetworkBlockedReason -> Bool
NetworkBlockedReason -> NetworkBlockedReason -> Ordering
NetworkBlockedReason
-> NetworkBlockedReason -> NetworkBlockedReason
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: NetworkBlockedReason
-> NetworkBlockedReason -> NetworkBlockedReason
$cmin :: NetworkBlockedReason
-> NetworkBlockedReason -> NetworkBlockedReason
max :: NetworkBlockedReason
-> NetworkBlockedReason -> NetworkBlockedReason
$cmax :: NetworkBlockedReason
-> NetworkBlockedReason -> NetworkBlockedReason
>= :: NetworkBlockedReason -> NetworkBlockedReason -> Bool
$c>= :: NetworkBlockedReason -> NetworkBlockedReason -> Bool
> :: NetworkBlockedReason -> NetworkBlockedReason -> Bool
$c> :: NetworkBlockedReason -> NetworkBlockedReason -> Bool
<= :: NetworkBlockedReason -> NetworkBlockedReason -> Bool
$c<= :: NetworkBlockedReason -> NetworkBlockedReason -> Bool
< :: NetworkBlockedReason -> NetworkBlockedReason -> Bool
$c< :: NetworkBlockedReason -> NetworkBlockedReason -> Bool
compare :: NetworkBlockedReason -> NetworkBlockedReason -> Ordering
$ccompare :: NetworkBlockedReason -> NetworkBlockedReason -> Ordering
$cp1Ord :: Eq NetworkBlockedReason
Ord, NetworkBlockedReason -> NetworkBlockedReason -> Bool
(NetworkBlockedReason -> NetworkBlockedReason -> Bool)
-> (NetworkBlockedReason -> NetworkBlockedReason -> Bool)
-> Eq NetworkBlockedReason
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkBlockedReason -> NetworkBlockedReason -> Bool
$c/= :: NetworkBlockedReason -> NetworkBlockedReason -> Bool
== :: NetworkBlockedReason -> NetworkBlockedReason -> Bool
$c== :: NetworkBlockedReason -> NetworkBlockedReason -> Bool
Eq, Int -> NetworkBlockedReason -> ShowS
[NetworkBlockedReason] -> ShowS
NetworkBlockedReason -> String
(Int -> NetworkBlockedReason -> ShowS)
-> (NetworkBlockedReason -> String)
-> ([NetworkBlockedReason] -> ShowS)
-> Show NetworkBlockedReason
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkBlockedReason] -> ShowS
$cshowList :: [NetworkBlockedReason] -> ShowS
show :: NetworkBlockedReason -> String
$cshow :: NetworkBlockedReason -> String
showsPrec :: Int -> NetworkBlockedReason -> ShowS
$cshowsPrec :: Int -> NetworkBlockedReason -> ShowS
Show, ReadPrec [NetworkBlockedReason]
ReadPrec NetworkBlockedReason
Int -> ReadS NetworkBlockedReason
ReadS [NetworkBlockedReason]
(Int -> ReadS NetworkBlockedReason)
-> ReadS [NetworkBlockedReason]
-> ReadPrec NetworkBlockedReason
-> ReadPrec [NetworkBlockedReason]
-> Read NetworkBlockedReason
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [NetworkBlockedReason]
$creadListPrec :: ReadPrec [NetworkBlockedReason]
readPrec :: ReadPrec NetworkBlockedReason
$creadPrec :: ReadPrec NetworkBlockedReason
readList :: ReadS [NetworkBlockedReason]
$creadList :: ReadS [NetworkBlockedReason]
readsPrec :: Int -> ReadS NetworkBlockedReason
$creadsPrec :: Int -> ReadS NetworkBlockedReason
Read)
instance FromJSON NetworkBlockedReason where
  parseJSON :: Value -> Parser NetworkBlockedReason
parseJSON = String
-> (Text -> Parser NetworkBlockedReason)
-> Value
-> Parser NetworkBlockedReason
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"NetworkBlockedReason" ((Text -> Parser NetworkBlockedReason)
 -> Value -> Parser NetworkBlockedReason)
-> (Text -> Parser NetworkBlockedReason)
-> Value
-> Parser NetworkBlockedReason
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"other" -> NetworkBlockedReason -> Parser NetworkBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkBlockedReason
NetworkBlockedReasonOther
    Text
"csp" -> NetworkBlockedReason -> Parser NetworkBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkBlockedReason
NetworkBlockedReasonCsp
    Text
"mixed-content" -> NetworkBlockedReason -> Parser NetworkBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkBlockedReason
NetworkBlockedReasonMixedContent
    Text
"origin" -> NetworkBlockedReason -> Parser NetworkBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkBlockedReason
NetworkBlockedReasonOrigin
    Text
"inspector" -> NetworkBlockedReason -> Parser NetworkBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkBlockedReason
NetworkBlockedReasonInspector
    Text
"subresource-filter" -> NetworkBlockedReason -> Parser NetworkBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkBlockedReason
NetworkBlockedReasonSubresourceFilter
    Text
"content-type" -> NetworkBlockedReason -> Parser NetworkBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkBlockedReason
NetworkBlockedReasonContentType
    Text
"coep-frame-resource-needs-coep-header" -> NetworkBlockedReason -> Parser NetworkBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkBlockedReason
NetworkBlockedReasonCoepFrameResourceNeedsCoepHeader
    Text
"coop-sandboxed-iframe-cannot-navigate-to-coop-page" -> NetworkBlockedReason -> Parser NetworkBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkBlockedReason
NetworkBlockedReasonCoopSandboxedIframeCannotNavigateToCoopPage
    Text
"corp-not-same-origin" -> NetworkBlockedReason -> Parser NetworkBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkBlockedReason
NetworkBlockedReasonCorpNotSameOrigin
    Text
"corp-not-same-origin-after-defaulted-to-same-origin-by-coep" -> NetworkBlockedReason -> Parser NetworkBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkBlockedReason
NetworkBlockedReasonCorpNotSameOriginAfterDefaultedToSameOriginByCoep
    Text
"corp-not-same-site" -> NetworkBlockedReason -> Parser NetworkBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkBlockedReason
NetworkBlockedReasonCorpNotSameSite
    Text
"_" -> String -> Parser NetworkBlockedReason
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse NetworkBlockedReason"
instance ToJSON NetworkBlockedReason where
  toJSON :: NetworkBlockedReason -> Value
toJSON NetworkBlockedReason
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case NetworkBlockedReason
v of
    NetworkBlockedReason
NetworkBlockedReasonOther -> Text
"other"
    NetworkBlockedReason
NetworkBlockedReasonCsp -> Text
"csp"
    NetworkBlockedReason
NetworkBlockedReasonMixedContent -> Text
"mixed-content"
    NetworkBlockedReason
NetworkBlockedReasonOrigin -> Text
"origin"
    NetworkBlockedReason
NetworkBlockedReasonInspector -> Text
"inspector"
    NetworkBlockedReason
NetworkBlockedReasonSubresourceFilter -> Text
"subresource-filter"
    NetworkBlockedReason
NetworkBlockedReasonContentType -> Text
"content-type"
    NetworkBlockedReason
NetworkBlockedReasonCoepFrameResourceNeedsCoepHeader -> Text
"coep-frame-resource-needs-coep-header"
    NetworkBlockedReason
NetworkBlockedReasonCoopSandboxedIframeCannotNavigateToCoopPage -> Text
"coop-sandboxed-iframe-cannot-navigate-to-coop-page"
    NetworkBlockedReason
NetworkBlockedReasonCorpNotSameOrigin -> Text
"corp-not-same-origin"
    NetworkBlockedReason
NetworkBlockedReasonCorpNotSameOriginAfterDefaultedToSameOriginByCoep -> Text
"corp-not-same-origin-after-defaulted-to-same-origin-by-coep"
    NetworkBlockedReason
NetworkBlockedReasonCorpNotSameSite -> Text
"corp-not-same-site"

-- | Type 'Network.CorsError'.
--   The reason why request was blocked.
data NetworkCorsError = NetworkCorsErrorDisallowedByMode | NetworkCorsErrorInvalidResponse | NetworkCorsErrorWildcardOriginNotAllowed | NetworkCorsErrorMissingAllowOriginHeader | NetworkCorsErrorMultipleAllowOriginValues | NetworkCorsErrorInvalidAllowOriginValue | NetworkCorsErrorAllowOriginMismatch | NetworkCorsErrorInvalidAllowCredentials | NetworkCorsErrorCorsDisabledScheme | NetworkCorsErrorPreflightInvalidStatus | NetworkCorsErrorPreflightDisallowedRedirect | NetworkCorsErrorPreflightWildcardOriginNotAllowed | NetworkCorsErrorPreflightMissingAllowOriginHeader | NetworkCorsErrorPreflightMultipleAllowOriginValues | NetworkCorsErrorPreflightInvalidAllowOriginValue | NetworkCorsErrorPreflightAllowOriginMismatch | NetworkCorsErrorPreflightInvalidAllowCredentials | NetworkCorsErrorPreflightMissingAllowExternal | NetworkCorsErrorPreflightInvalidAllowExternal | NetworkCorsErrorPreflightMissingAllowPrivateNetwork | NetworkCorsErrorPreflightInvalidAllowPrivateNetwork | NetworkCorsErrorInvalidAllowMethodsPreflightResponse | NetworkCorsErrorInvalidAllowHeadersPreflightResponse | NetworkCorsErrorMethodDisallowedByPreflightResponse | NetworkCorsErrorHeaderDisallowedByPreflightResponse | NetworkCorsErrorRedirectContainsCredentials | NetworkCorsErrorInsecurePrivateNetwork | NetworkCorsErrorInvalidPrivateNetworkAccess | NetworkCorsErrorUnexpectedPrivateNetworkAccess | NetworkCorsErrorNoCorsRedirectModeNotFollow
  deriving (Eq NetworkCorsError
Eq NetworkCorsError
-> (NetworkCorsError -> NetworkCorsError -> Ordering)
-> (NetworkCorsError -> NetworkCorsError -> Bool)
-> (NetworkCorsError -> NetworkCorsError -> Bool)
-> (NetworkCorsError -> NetworkCorsError -> Bool)
-> (NetworkCorsError -> NetworkCorsError -> Bool)
-> (NetworkCorsError -> NetworkCorsError -> NetworkCorsError)
-> (NetworkCorsError -> NetworkCorsError -> NetworkCorsError)
-> Ord NetworkCorsError
NetworkCorsError -> NetworkCorsError -> Bool
NetworkCorsError -> NetworkCorsError -> Ordering
NetworkCorsError -> NetworkCorsError -> NetworkCorsError
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: NetworkCorsError -> NetworkCorsError -> NetworkCorsError
$cmin :: NetworkCorsError -> NetworkCorsError -> NetworkCorsError
max :: NetworkCorsError -> NetworkCorsError -> NetworkCorsError
$cmax :: NetworkCorsError -> NetworkCorsError -> NetworkCorsError
>= :: NetworkCorsError -> NetworkCorsError -> Bool
$c>= :: NetworkCorsError -> NetworkCorsError -> Bool
> :: NetworkCorsError -> NetworkCorsError -> Bool
$c> :: NetworkCorsError -> NetworkCorsError -> Bool
<= :: NetworkCorsError -> NetworkCorsError -> Bool
$c<= :: NetworkCorsError -> NetworkCorsError -> Bool
< :: NetworkCorsError -> NetworkCorsError -> Bool
$c< :: NetworkCorsError -> NetworkCorsError -> Bool
compare :: NetworkCorsError -> NetworkCorsError -> Ordering
$ccompare :: NetworkCorsError -> NetworkCorsError -> Ordering
$cp1Ord :: Eq NetworkCorsError
Ord, NetworkCorsError -> NetworkCorsError -> Bool
(NetworkCorsError -> NetworkCorsError -> Bool)
-> (NetworkCorsError -> NetworkCorsError -> Bool)
-> Eq NetworkCorsError
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkCorsError -> NetworkCorsError -> Bool
$c/= :: NetworkCorsError -> NetworkCorsError -> Bool
== :: NetworkCorsError -> NetworkCorsError -> Bool
$c== :: NetworkCorsError -> NetworkCorsError -> Bool
Eq, Int -> NetworkCorsError -> ShowS
[NetworkCorsError] -> ShowS
NetworkCorsError -> String
(Int -> NetworkCorsError -> ShowS)
-> (NetworkCorsError -> String)
-> ([NetworkCorsError] -> ShowS)
-> Show NetworkCorsError
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkCorsError] -> ShowS
$cshowList :: [NetworkCorsError] -> ShowS
show :: NetworkCorsError -> String
$cshow :: NetworkCorsError -> String
showsPrec :: Int -> NetworkCorsError -> ShowS
$cshowsPrec :: Int -> NetworkCorsError -> ShowS
Show, ReadPrec [NetworkCorsError]
ReadPrec NetworkCorsError
Int -> ReadS NetworkCorsError
ReadS [NetworkCorsError]
(Int -> ReadS NetworkCorsError)
-> ReadS [NetworkCorsError]
-> ReadPrec NetworkCorsError
-> ReadPrec [NetworkCorsError]
-> Read NetworkCorsError
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [NetworkCorsError]
$creadListPrec :: ReadPrec [NetworkCorsError]
readPrec :: ReadPrec NetworkCorsError
$creadPrec :: ReadPrec NetworkCorsError
readList :: ReadS [NetworkCorsError]
$creadList :: ReadS [NetworkCorsError]
readsPrec :: Int -> ReadS NetworkCorsError
$creadsPrec :: Int -> ReadS NetworkCorsError
Read)
instance FromJSON NetworkCorsError where
  parseJSON :: Value -> Parser NetworkCorsError
parseJSON = String
-> (Text -> Parser NetworkCorsError)
-> Value
-> Parser NetworkCorsError
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"NetworkCorsError" ((Text -> Parser NetworkCorsError)
 -> Value -> Parser NetworkCorsError)
-> (Text -> Parser NetworkCorsError)
-> Value
-> Parser NetworkCorsError
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"DisallowedByMode" -> NetworkCorsError -> Parser NetworkCorsError
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCorsError
NetworkCorsErrorDisallowedByMode
    Text
"InvalidResponse" -> NetworkCorsError -> Parser NetworkCorsError
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCorsError
NetworkCorsErrorInvalidResponse
    Text
"WildcardOriginNotAllowed" -> NetworkCorsError -> Parser NetworkCorsError
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCorsError
NetworkCorsErrorWildcardOriginNotAllowed
    Text
"MissingAllowOriginHeader" -> NetworkCorsError -> Parser NetworkCorsError
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCorsError
NetworkCorsErrorMissingAllowOriginHeader
    Text
"MultipleAllowOriginValues" -> NetworkCorsError -> Parser NetworkCorsError
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCorsError
NetworkCorsErrorMultipleAllowOriginValues
    Text
"InvalidAllowOriginValue" -> NetworkCorsError -> Parser NetworkCorsError
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCorsError
NetworkCorsErrorInvalidAllowOriginValue
    Text
"AllowOriginMismatch" -> NetworkCorsError -> Parser NetworkCorsError
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCorsError
NetworkCorsErrorAllowOriginMismatch
    Text
"InvalidAllowCredentials" -> NetworkCorsError -> Parser NetworkCorsError
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCorsError
NetworkCorsErrorInvalidAllowCredentials
    Text
"CorsDisabledScheme" -> NetworkCorsError -> Parser NetworkCorsError
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCorsError
NetworkCorsErrorCorsDisabledScheme
    Text
"PreflightInvalidStatus" -> NetworkCorsError -> Parser NetworkCorsError
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCorsError
NetworkCorsErrorPreflightInvalidStatus
    Text
"PreflightDisallowedRedirect" -> NetworkCorsError -> Parser NetworkCorsError
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCorsError
NetworkCorsErrorPreflightDisallowedRedirect
    Text
"PreflightWildcardOriginNotAllowed" -> NetworkCorsError -> Parser NetworkCorsError
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCorsError
NetworkCorsErrorPreflightWildcardOriginNotAllowed
    Text
"PreflightMissingAllowOriginHeader" -> NetworkCorsError -> Parser NetworkCorsError
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCorsError
NetworkCorsErrorPreflightMissingAllowOriginHeader
    Text
"PreflightMultipleAllowOriginValues" -> NetworkCorsError -> Parser NetworkCorsError
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCorsError
NetworkCorsErrorPreflightMultipleAllowOriginValues
    Text
"PreflightInvalidAllowOriginValue" -> NetworkCorsError -> Parser NetworkCorsError
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCorsError
NetworkCorsErrorPreflightInvalidAllowOriginValue
    Text
"PreflightAllowOriginMismatch" -> NetworkCorsError -> Parser NetworkCorsError
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCorsError
NetworkCorsErrorPreflightAllowOriginMismatch
    Text
"PreflightInvalidAllowCredentials" -> NetworkCorsError -> Parser NetworkCorsError
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCorsError
NetworkCorsErrorPreflightInvalidAllowCredentials
    Text
"PreflightMissingAllowExternal" -> NetworkCorsError -> Parser NetworkCorsError
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCorsError
NetworkCorsErrorPreflightMissingAllowExternal
    Text
"PreflightInvalidAllowExternal" -> NetworkCorsError -> Parser NetworkCorsError
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCorsError
NetworkCorsErrorPreflightInvalidAllowExternal
    Text
"PreflightMissingAllowPrivateNetwork" -> NetworkCorsError -> Parser NetworkCorsError
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCorsError
NetworkCorsErrorPreflightMissingAllowPrivateNetwork
    Text
"PreflightInvalidAllowPrivateNetwork" -> NetworkCorsError -> Parser NetworkCorsError
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCorsError
NetworkCorsErrorPreflightInvalidAllowPrivateNetwork
    Text
"InvalidAllowMethodsPreflightResponse" -> NetworkCorsError -> Parser NetworkCorsError
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCorsError
NetworkCorsErrorInvalidAllowMethodsPreflightResponse
    Text
"InvalidAllowHeadersPreflightResponse" -> NetworkCorsError -> Parser NetworkCorsError
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCorsError
NetworkCorsErrorInvalidAllowHeadersPreflightResponse
    Text
"MethodDisallowedByPreflightResponse" -> NetworkCorsError -> Parser NetworkCorsError
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCorsError
NetworkCorsErrorMethodDisallowedByPreflightResponse
    Text
"HeaderDisallowedByPreflightResponse" -> NetworkCorsError -> Parser NetworkCorsError
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCorsError
NetworkCorsErrorHeaderDisallowedByPreflightResponse
    Text
"RedirectContainsCredentials" -> NetworkCorsError -> Parser NetworkCorsError
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCorsError
NetworkCorsErrorRedirectContainsCredentials
    Text
"InsecurePrivateNetwork" -> NetworkCorsError -> Parser NetworkCorsError
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCorsError
NetworkCorsErrorInsecurePrivateNetwork
    Text
"InvalidPrivateNetworkAccess" -> NetworkCorsError -> Parser NetworkCorsError
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCorsError
NetworkCorsErrorInvalidPrivateNetworkAccess
    Text
"UnexpectedPrivateNetworkAccess" -> NetworkCorsError -> Parser NetworkCorsError
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCorsError
NetworkCorsErrorUnexpectedPrivateNetworkAccess
    Text
"NoCorsRedirectModeNotFollow" -> NetworkCorsError -> Parser NetworkCorsError
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCorsError
NetworkCorsErrorNoCorsRedirectModeNotFollow
    Text
"_" -> String -> Parser NetworkCorsError
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse NetworkCorsError"
instance ToJSON NetworkCorsError where
  toJSON :: NetworkCorsError -> Value
toJSON NetworkCorsError
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case NetworkCorsError
v of
    NetworkCorsError
NetworkCorsErrorDisallowedByMode -> Text
"DisallowedByMode"
    NetworkCorsError
NetworkCorsErrorInvalidResponse -> Text
"InvalidResponse"
    NetworkCorsError
NetworkCorsErrorWildcardOriginNotAllowed -> Text
"WildcardOriginNotAllowed"
    NetworkCorsError
NetworkCorsErrorMissingAllowOriginHeader -> Text
"MissingAllowOriginHeader"
    NetworkCorsError
NetworkCorsErrorMultipleAllowOriginValues -> Text
"MultipleAllowOriginValues"
    NetworkCorsError
NetworkCorsErrorInvalidAllowOriginValue -> Text
"InvalidAllowOriginValue"
    NetworkCorsError
NetworkCorsErrorAllowOriginMismatch -> Text
"AllowOriginMismatch"
    NetworkCorsError
NetworkCorsErrorInvalidAllowCredentials -> Text
"InvalidAllowCredentials"
    NetworkCorsError
NetworkCorsErrorCorsDisabledScheme -> Text
"CorsDisabledScheme"
    NetworkCorsError
NetworkCorsErrorPreflightInvalidStatus -> Text
"PreflightInvalidStatus"
    NetworkCorsError
NetworkCorsErrorPreflightDisallowedRedirect -> Text
"PreflightDisallowedRedirect"
    NetworkCorsError
NetworkCorsErrorPreflightWildcardOriginNotAllowed -> Text
"PreflightWildcardOriginNotAllowed"
    NetworkCorsError
NetworkCorsErrorPreflightMissingAllowOriginHeader -> Text
"PreflightMissingAllowOriginHeader"
    NetworkCorsError
NetworkCorsErrorPreflightMultipleAllowOriginValues -> Text
"PreflightMultipleAllowOriginValues"
    NetworkCorsError
NetworkCorsErrorPreflightInvalidAllowOriginValue -> Text
"PreflightInvalidAllowOriginValue"
    NetworkCorsError
NetworkCorsErrorPreflightAllowOriginMismatch -> Text
"PreflightAllowOriginMismatch"
    NetworkCorsError
NetworkCorsErrorPreflightInvalidAllowCredentials -> Text
"PreflightInvalidAllowCredentials"
    NetworkCorsError
NetworkCorsErrorPreflightMissingAllowExternal -> Text
"PreflightMissingAllowExternal"
    NetworkCorsError
NetworkCorsErrorPreflightInvalidAllowExternal -> Text
"PreflightInvalidAllowExternal"
    NetworkCorsError
NetworkCorsErrorPreflightMissingAllowPrivateNetwork -> Text
"PreflightMissingAllowPrivateNetwork"
    NetworkCorsError
NetworkCorsErrorPreflightInvalidAllowPrivateNetwork -> Text
"PreflightInvalidAllowPrivateNetwork"
    NetworkCorsError
NetworkCorsErrorInvalidAllowMethodsPreflightResponse -> Text
"InvalidAllowMethodsPreflightResponse"
    NetworkCorsError
NetworkCorsErrorInvalidAllowHeadersPreflightResponse -> Text
"InvalidAllowHeadersPreflightResponse"
    NetworkCorsError
NetworkCorsErrorMethodDisallowedByPreflightResponse -> Text
"MethodDisallowedByPreflightResponse"
    NetworkCorsError
NetworkCorsErrorHeaderDisallowedByPreflightResponse -> Text
"HeaderDisallowedByPreflightResponse"
    NetworkCorsError
NetworkCorsErrorRedirectContainsCredentials -> Text
"RedirectContainsCredentials"
    NetworkCorsError
NetworkCorsErrorInsecurePrivateNetwork -> Text
"InsecurePrivateNetwork"
    NetworkCorsError
NetworkCorsErrorInvalidPrivateNetworkAccess -> Text
"InvalidPrivateNetworkAccess"
    NetworkCorsError
NetworkCorsErrorUnexpectedPrivateNetworkAccess -> Text
"UnexpectedPrivateNetworkAccess"
    NetworkCorsError
NetworkCorsErrorNoCorsRedirectModeNotFollow -> Text
"NoCorsRedirectModeNotFollow"

-- | Type 'Network.CorsErrorStatus'.
data NetworkCorsErrorStatus = NetworkCorsErrorStatus
  {
    NetworkCorsErrorStatus -> NetworkCorsError
networkCorsErrorStatusCorsError :: NetworkCorsError,
    NetworkCorsErrorStatus -> Text
networkCorsErrorStatusFailedParameter :: T.Text
  }
  deriving (NetworkCorsErrorStatus -> NetworkCorsErrorStatus -> Bool
(NetworkCorsErrorStatus -> NetworkCorsErrorStatus -> Bool)
-> (NetworkCorsErrorStatus -> NetworkCorsErrorStatus -> Bool)
-> Eq NetworkCorsErrorStatus
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkCorsErrorStatus -> NetworkCorsErrorStatus -> Bool
$c/= :: NetworkCorsErrorStatus -> NetworkCorsErrorStatus -> Bool
== :: NetworkCorsErrorStatus -> NetworkCorsErrorStatus -> Bool
$c== :: NetworkCorsErrorStatus -> NetworkCorsErrorStatus -> Bool
Eq, Int -> NetworkCorsErrorStatus -> ShowS
[NetworkCorsErrorStatus] -> ShowS
NetworkCorsErrorStatus -> String
(Int -> NetworkCorsErrorStatus -> ShowS)
-> (NetworkCorsErrorStatus -> String)
-> ([NetworkCorsErrorStatus] -> ShowS)
-> Show NetworkCorsErrorStatus
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkCorsErrorStatus] -> ShowS
$cshowList :: [NetworkCorsErrorStatus] -> ShowS
show :: NetworkCorsErrorStatus -> String
$cshow :: NetworkCorsErrorStatus -> String
showsPrec :: Int -> NetworkCorsErrorStatus -> ShowS
$cshowsPrec :: Int -> NetworkCorsErrorStatus -> ShowS
Show)
instance FromJSON NetworkCorsErrorStatus where
  parseJSON :: Value -> Parser NetworkCorsErrorStatus
parseJSON = String
-> (Object -> Parser NetworkCorsErrorStatus)
-> Value
-> Parser NetworkCorsErrorStatus
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkCorsErrorStatus" ((Object -> Parser NetworkCorsErrorStatus)
 -> Value -> Parser NetworkCorsErrorStatus)
-> (Object -> Parser NetworkCorsErrorStatus)
-> Value
-> Parser NetworkCorsErrorStatus
forall a b. (a -> b) -> a -> b
$ \Object
o -> NetworkCorsError -> Text -> NetworkCorsErrorStatus
NetworkCorsErrorStatus
    (NetworkCorsError -> Text -> NetworkCorsErrorStatus)
-> Parser NetworkCorsError
-> Parser (Text -> NetworkCorsErrorStatus)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser NetworkCorsError
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"corsError"
    Parser (Text -> NetworkCorsErrorStatus)
-> Parser Text -> Parser NetworkCorsErrorStatus
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"failedParameter"
instance ToJSON NetworkCorsErrorStatus where
  toJSON :: NetworkCorsErrorStatus -> Value
toJSON NetworkCorsErrorStatus
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"corsError" Text -> NetworkCorsError -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkCorsError -> Pair) -> Maybe NetworkCorsError -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> NetworkCorsError -> Maybe NetworkCorsError
forall a. a -> Maybe a
Just (NetworkCorsErrorStatus -> NetworkCorsError
networkCorsErrorStatusCorsError NetworkCorsErrorStatus
p),
    (Text
"failedParameter" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkCorsErrorStatus -> Text
networkCorsErrorStatusFailedParameter NetworkCorsErrorStatus
p)
    ]

-- | Type 'Network.ServiceWorkerResponseSource'.
--   Source of serviceworker response.
data NetworkServiceWorkerResponseSource = NetworkServiceWorkerResponseSourceCacheStorage | NetworkServiceWorkerResponseSourceHttpCache | NetworkServiceWorkerResponseSourceFallbackCode | NetworkServiceWorkerResponseSourceNetwork
  deriving (Eq NetworkServiceWorkerResponseSource
Eq NetworkServiceWorkerResponseSource
-> (NetworkServiceWorkerResponseSource
    -> NetworkServiceWorkerResponseSource -> Ordering)
-> (NetworkServiceWorkerResponseSource
    -> NetworkServiceWorkerResponseSource -> Bool)
-> (NetworkServiceWorkerResponseSource
    -> NetworkServiceWorkerResponseSource -> Bool)
-> (NetworkServiceWorkerResponseSource
    -> NetworkServiceWorkerResponseSource -> Bool)
-> (NetworkServiceWorkerResponseSource
    -> NetworkServiceWorkerResponseSource -> Bool)
-> (NetworkServiceWorkerResponseSource
    -> NetworkServiceWorkerResponseSource
    -> NetworkServiceWorkerResponseSource)
-> (NetworkServiceWorkerResponseSource
    -> NetworkServiceWorkerResponseSource
    -> NetworkServiceWorkerResponseSource)
-> Ord NetworkServiceWorkerResponseSource
NetworkServiceWorkerResponseSource
-> NetworkServiceWorkerResponseSource -> Bool
NetworkServiceWorkerResponseSource
-> NetworkServiceWorkerResponseSource -> Ordering
NetworkServiceWorkerResponseSource
-> NetworkServiceWorkerResponseSource
-> NetworkServiceWorkerResponseSource
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: NetworkServiceWorkerResponseSource
-> NetworkServiceWorkerResponseSource
-> NetworkServiceWorkerResponseSource
$cmin :: NetworkServiceWorkerResponseSource
-> NetworkServiceWorkerResponseSource
-> NetworkServiceWorkerResponseSource
max :: NetworkServiceWorkerResponseSource
-> NetworkServiceWorkerResponseSource
-> NetworkServiceWorkerResponseSource
$cmax :: NetworkServiceWorkerResponseSource
-> NetworkServiceWorkerResponseSource
-> NetworkServiceWorkerResponseSource
>= :: NetworkServiceWorkerResponseSource
-> NetworkServiceWorkerResponseSource -> Bool
$c>= :: NetworkServiceWorkerResponseSource
-> NetworkServiceWorkerResponseSource -> Bool
> :: NetworkServiceWorkerResponseSource
-> NetworkServiceWorkerResponseSource -> Bool
$c> :: NetworkServiceWorkerResponseSource
-> NetworkServiceWorkerResponseSource -> Bool
<= :: NetworkServiceWorkerResponseSource
-> NetworkServiceWorkerResponseSource -> Bool
$c<= :: NetworkServiceWorkerResponseSource
-> NetworkServiceWorkerResponseSource -> Bool
< :: NetworkServiceWorkerResponseSource
-> NetworkServiceWorkerResponseSource -> Bool
$c< :: NetworkServiceWorkerResponseSource
-> NetworkServiceWorkerResponseSource -> Bool
compare :: NetworkServiceWorkerResponseSource
-> NetworkServiceWorkerResponseSource -> Ordering
$ccompare :: NetworkServiceWorkerResponseSource
-> NetworkServiceWorkerResponseSource -> Ordering
$cp1Ord :: Eq NetworkServiceWorkerResponseSource
Ord, NetworkServiceWorkerResponseSource
-> NetworkServiceWorkerResponseSource -> Bool
(NetworkServiceWorkerResponseSource
 -> NetworkServiceWorkerResponseSource -> Bool)
-> (NetworkServiceWorkerResponseSource
    -> NetworkServiceWorkerResponseSource -> Bool)
-> Eq NetworkServiceWorkerResponseSource
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkServiceWorkerResponseSource
-> NetworkServiceWorkerResponseSource -> Bool
$c/= :: NetworkServiceWorkerResponseSource
-> NetworkServiceWorkerResponseSource -> Bool
== :: NetworkServiceWorkerResponseSource
-> NetworkServiceWorkerResponseSource -> Bool
$c== :: NetworkServiceWorkerResponseSource
-> NetworkServiceWorkerResponseSource -> Bool
Eq, Int -> NetworkServiceWorkerResponseSource -> ShowS
[NetworkServiceWorkerResponseSource] -> ShowS
NetworkServiceWorkerResponseSource -> String
(Int -> NetworkServiceWorkerResponseSource -> ShowS)
-> (NetworkServiceWorkerResponseSource -> String)
-> ([NetworkServiceWorkerResponseSource] -> ShowS)
-> Show NetworkServiceWorkerResponseSource
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkServiceWorkerResponseSource] -> ShowS
$cshowList :: [NetworkServiceWorkerResponseSource] -> ShowS
show :: NetworkServiceWorkerResponseSource -> String
$cshow :: NetworkServiceWorkerResponseSource -> String
showsPrec :: Int -> NetworkServiceWorkerResponseSource -> ShowS
$cshowsPrec :: Int -> NetworkServiceWorkerResponseSource -> ShowS
Show, ReadPrec [NetworkServiceWorkerResponseSource]
ReadPrec NetworkServiceWorkerResponseSource
Int -> ReadS NetworkServiceWorkerResponseSource
ReadS [NetworkServiceWorkerResponseSource]
(Int -> ReadS NetworkServiceWorkerResponseSource)
-> ReadS [NetworkServiceWorkerResponseSource]
-> ReadPrec NetworkServiceWorkerResponseSource
-> ReadPrec [NetworkServiceWorkerResponseSource]
-> Read NetworkServiceWorkerResponseSource
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [NetworkServiceWorkerResponseSource]
$creadListPrec :: ReadPrec [NetworkServiceWorkerResponseSource]
readPrec :: ReadPrec NetworkServiceWorkerResponseSource
$creadPrec :: ReadPrec NetworkServiceWorkerResponseSource
readList :: ReadS [NetworkServiceWorkerResponseSource]
$creadList :: ReadS [NetworkServiceWorkerResponseSource]
readsPrec :: Int -> ReadS NetworkServiceWorkerResponseSource
$creadsPrec :: Int -> ReadS NetworkServiceWorkerResponseSource
Read)
instance FromJSON NetworkServiceWorkerResponseSource where
  parseJSON :: Value -> Parser NetworkServiceWorkerResponseSource
parseJSON = String
-> (Text -> Parser NetworkServiceWorkerResponseSource)
-> Value
-> Parser NetworkServiceWorkerResponseSource
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"NetworkServiceWorkerResponseSource" ((Text -> Parser NetworkServiceWorkerResponseSource)
 -> Value -> Parser NetworkServiceWorkerResponseSource)
-> (Text -> Parser NetworkServiceWorkerResponseSource)
-> Value
-> Parser NetworkServiceWorkerResponseSource
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"cache-storage" -> NetworkServiceWorkerResponseSource
-> Parser NetworkServiceWorkerResponseSource
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkServiceWorkerResponseSource
NetworkServiceWorkerResponseSourceCacheStorage
    Text
"http-cache" -> NetworkServiceWorkerResponseSource
-> Parser NetworkServiceWorkerResponseSource
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkServiceWorkerResponseSource
NetworkServiceWorkerResponseSourceHttpCache
    Text
"fallback-code" -> NetworkServiceWorkerResponseSource
-> Parser NetworkServiceWorkerResponseSource
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkServiceWorkerResponseSource
NetworkServiceWorkerResponseSourceFallbackCode
    Text
"network" -> NetworkServiceWorkerResponseSource
-> Parser NetworkServiceWorkerResponseSource
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkServiceWorkerResponseSource
NetworkServiceWorkerResponseSourceNetwork
    Text
"_" -> String -> Parser NetworkServiceWorkerResponseSource
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse NetworkServiceWorkerResponseSource"
instance ToJSON NetworkServiceWorkerResponseSource where
  toJSON :: NetworkServiceWorkerResponseSource -> Value
toJSON NetworkServiceWorkerResponseSource
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case NetworkServiceWorkerResponseSource
v of
    NetworkServiceWorkerResponseSource
NetworkServiceWorkerResponseSourceCacheStorage -> Text
"cache-storage"
    NetworkServiceWorkerResponseSource
NetworkServiceWorkerResponseSourceHttpCache -> Text
"http-cache"
    NetworkServiceWorkerResponseSource
NetworkServiceWorkerResponseSourceFallbackCode -> Text
"fallback-code"
    NetworkServiceWorkerResponseSource
NetworkServiceWorkerResponseSourceNetwork -> Text
"network"

-- | Type 'Network.TrustTokenParams'.
--   Determines what type of Trust Token operation is executed and
--   depending on the type, some additional parameters. The values
--   are specified in third_party/blink/renderer/core/fetch/trust_token.idl.
data NetworkTrustTokenParamsRefreshPolicy = NetworkTrustTokenParamsRefreshPolicyUseCached | NetworkTrustTokenParamsRefreshPolicyRefresh
  deriving (Eq NetworkTrustTokenParamsRefreshPolicy
Eq NetworkTrustTokenParamsRefreshPolicy
-> (NetworkTrustTokenParamsRefreshPolicy
    -> NetworkTrustTokenParamsRefreshPolicy -> Ordering)
-> (NetworkTrustTokenParamsRefreshPolicy
    -> NetworkTrustTokenParamsRefreshPolicy -> Bool)
-> (NetworkTrustTokenParamsRefreshPolicy
    -> NetworkTrustTokenParamsRefreshPolicy -> Bool)
-> (NetworkTrustTokenParamsRefreshPolicy
    -> NetworkTrustTokenParamsRefreshPolicy -> Bool)
-> (NetworkTrustTokenParamsRefreshPolicy
    -> NetworkTrustTokenParamsRefreshPolicy -> Bool)
-> (NetworkTrustTokenParamsRefreshPolicy
    -> NetworkTrustTokenParamsRefreshPolicy
    -> NetworkTrustTokenParamsRefreshPolicy)
-> (NetworkTrustTokenParamsRefreshPolicy
    -> NetworkTrustTokenParamsRefreshPolicy
    -> NetworkTrustTokenParamsRefreshPolicy)
-> Ord NetworkTrustTokenParamsRefreshPolicy
NetworkTrustTokenParamsRefreshPolicy
-> NetworkTrustTokenParamsRefreshPolicy -> Bool
NetworkTrustTokenParamsRefreshPolicy
-> NetworkTrustTokenParamsRefreshPolicy -> Ordering
NetworkTrustTokenParamsRefreshPolicy
-> NetworkTrustTokenParamsRefreshPolicy
-> NetworkTrustTokenParamsRefreshPolicy
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: NetworkTrustTokenParamsRefreshPolicy
-> NetworkTrustTokenParamsRefreshPolicy
-> NetworkTrustTokenParamsRefreshPolicy
$cmin :: NetworkTrustTokenParamsRefreshPolicy
-> NetworkTrustTokenParamsRefreshPolicy
-> NetworkTrustTokenParamsRefreshPolicy
max :: NetworkTrustTokenParamsRefreshPolicy
-> NetworkTrustTokenParamsRefreshPolicy
-> NetworkTrustTokenParamsRefreshPolicy
$cmax :: NetworkTrustTokenParamsRefreshPolicy
-> NetworkTrustTokenParamsRefreshPolicy
-> NetworkTrustTokenParamsRefreshPolicy
>= :: NetworkTrustTokenParamsRefreshPolicy
-> NetworkTrustTokenParamsRefreshPolicy -> Bool
$c>= :: NetworkTrustTokenParamsRefreshPolicy
-> NetworkTrustTokenParamsRefreshPolicy -> Bool
> :: NetworkTrustTokenParamsRefreshPolicy
-> NetworkTrustTokenParamsRefreshPolicy -> Bool
$c> :: NetworkTrustTokenParamsRefreshPolicy
-> NetworkTrustTokenParamsRefreshPolicy -> Bool
<= :: NetworkTrustTokenParamsRefreshPolicy
-> NetworkTrustTokenParamsRefreshPolicy -> Bool
$c<= :: NetworkTrustTokenParamsRefreshPolicy
-> NetworkTrustTokenParamsRefreshPolicy -> Bool
< :: NetworkTrustTokenParamsRefreshPolicy
-> NetworkTrustTokenParamsRefreshPolicy -> Bool
$c< :: NetworkTrustTokenParamsRefreshPolicy
-> NetworkTrustTokenParamsRefreshPolicy -> Bool
compare :: NetworkTrustTokenParamsRefreshPolicy
-> NetworkTrustTokenParamsRefreshPolicy -> Ordering
$ccompare :: NetworkTrustTokenParamsRefreshPolicy
-> NetworkTrustTokenParamsRefreshPolicy -> Ordering
$cp1Ord :: Eq NetworkTrustTokenParamsRefreshPolicy
Ord, NetworkTrustTokenParamsRefreshPolicy
-> NetworkTrustTokenParamsRefreshPolicy -> Bool
(NetworkTrustTokenParamsRefreshPolicy
 -> NetworkTrustTokenParamsRefreshPolicy -> Bool)
-> (NetworkTrustTokenParamsRefreshPolicy
    -> NetworkTrustTokenParamsRefreshPolicy -> Bool)
-> Eq NetworkTrustTokenParamsRefreshPolicy
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkTrustTokenParamsRefreshPolicy
-> NetworkTrustTokenParamsRefreshPolicy -> Bool
$c/= :: NetworkTrustTokenParamsRefreshPolicy
-> NetworkTrustTokenParamsRefreshPolicy -> Bool
== :: NetworkTrustTokenParamsRefreshPolicy
-> NetworkTrustTokenParamsRefreshPolicy -> Bool
$c== :: NetworkTrustTokenParamsRefreshPolicy
-> NetworkTrustTokenParamsRefreshPolicy -> Bool
Eq, Int -> NetworkTrustTokenParamsRefreshPolicy -> ShowS
[NetworkTrustTokenParamsRefreshPolicy] -> ShowS
NetworkTrustTokenParamsRefreshPolicy -> String
(Int -> NetworkTrustTokenParamsRefreshPolicy -> ShowS)
-> (NetworkTrustTokenParamsRefreshPolicy -> String)
-> ([NetworkTrustTokenParamsRefreshPolicy] -> ShowS)
-> Show NetworkTrustTokenParamsRefreshPolicy
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkTrustTokenParamsRefreshPolicy] -> ShowS
$cshowList :: [NetworkTrustTokenParamsRefreshPolicy] -> ShowS
show :: NetworkTrustTokenParamsRefreshPolicy -> String
$cshow :: NetworkTrustTokenParamsRefreshPolicy -> String
showsPrec :: Int -> NetworkTrustTokenParamsRefreshPolicy -> ShowS
$cshowsPrec :: Int -> NetworkTrustTokenParamsRefreshPolicy -> ShowS
Show, ReadPrec [NetworkTrustTokenParamsRefreshPolicy]
ReadPrec NetworkTrustTokenParamsRefreshPolicy
Int -> ReadS NetworkTrustTokenParamsRefreshPolicy
ReadS [NetworkTrustTokenParamsRefreshPolicy]
(Int -> ReadS NetworkTrustTokenParamsRefreshPolicy)
-> ReadS [NetworkTrustTokenParamsRefreshPolicy]
-> ReadPrec NetworkTrustTokenParamsRefreshPolicy
-> ReadPrec [NetworkTrustTokenParamsRefreshPolicy]
-> Read NetworkTrustTokenParamsRefreshPolicy
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [NetworkTrustTokenParamsRefreshPolicy]
$creadListPrec :: ReadPrec [NetworkTrustTokenParamsRefreshPolicy]
readPrec :: ReadPrec NetworkTrustTokenParamsRefreshPolicy
$creadPrec :: ReadPrec NetworkTrustTokenParamsRefreshPolicy
readList :: ReadS [NetworkTrustTokenParamsRefreshPolicy]
$creadList :: ReadS [NetworkTrustTokenParamsRefreshPolicy]
readsPrec :: Int -> ReadS NetworkTrustTokenParamsRefreshPolicy
$creadsPrec :: Int -> ReadS NetworkTrustTokenParamsRefreshPolicy
Read)
instance FromJSON NetworkTrustTokenParamsRefreshPolicy where
  parseJSON :: Value -> Parser NetworkTrustTokenParamsRefreshPolicy
parseJSON = String
-> (Text -> Parser NetworkTrustTokenParamsRefreshPolicy)
-> Value
-> Parser NetworkTrustTokenParamsRefreshPolicy
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"NetworkTrustTokenParamsRefreshPolicy" ((Text -> Parser NetworkTrustTokenParamsRefreshPolicy)
 -> Value -> Parser NetworkTrustTokenParamsRefreshPolicy)
-> (Text -> Parser NetworkTrustTokenParamsRefreshPolicy)
-> Value
-> Parser NetworkTrustTokenParamsRefreshPolicy
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"UseCached" -> NetworkTrustTokenParamsRefreshPolicy
-> Parser NetworkTrustTokenParamsRefreshPolicy
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkTrustTokenParamsRefreshPolicy
NetworkTrustTokenParamsRefreshPolicyUseCached
    Text
"Refresh" -> NetworkTrustTokenParamsRefreshPolicy
-> Parser NetworkTrustTokenParamsRefreshPolicy
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkTrustTokenParamsRefreshPolicy
NetworkTrustTokenParamsRefreshPolicyRefresh
    Text
"_" -> String -> Parser NetworkTrustTokenParamsRefreshPolicy
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse NetworkTrustTokenParamsRefreshPolicy"
instance ToJSON NetworkTrustTokenParamsRefreshPolicy where
  toJSON :: NetworkTrustTokenParamsRefreshPolicy -> Value
toJSON NetworkTrustTokenParamsRefreshPolicy
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case NetworkTrustTokenParamsRefreshPolicy
v of
    NetworkTrustTokenParamsRefreshPolicy
NetworkTrustTokenParamsRefreshPolicyUseCached -> Text
"UseCached"
    NetworkTrustTokenParamsRefreshPolicy
NetworkTrustTokenParamsRefreshPolicyRefresh -> Text
"Refresh"
data NetworkTrustTokenParams = NetworkTrustTokenParams
  {
    NetworkTrustTokenParams -> NetworkTrustTokenOperationType
networkTrustTokenParamsType :: NetworkTrustTokenOperationType,
    -- | Only set for "token-redemption" type and determine whether
    --   to request a fresh SRR or use a still valid cached SRR.
    NetworkTrustTokenParams -> NetworkTrustTokenParamsRefreshPolicy
networkTrustTokenParamsRefreshPolicy :: NetworkTrustTokenParamsRefreshPolicy,
    -- | Origins of issuers from whom to request tokens or redemption
    --   records.
    NetworkTrustTokenParams -> Maybe [Text]
networkTrustTokenParamsIssuers :: Maybe [T.Text]
  }
  deriving (NetworkTrustTokenParams -> NetworkTrustTokenParams -> Bool
(NetworkTrustTokenParams -> NetworkTrustTokenParams -> Bool)
-> (NetworkTrustTokenParams -> NetworkTrustTokenParams -> Bool)
-> Eq NetworkTrustTokenParams
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkTrustTokenParams -> NetworkTrustTokenParams -> Bool
$c/= :: NetworkTrustTokenParams -> NetworkTrustTokenParams -> Bool
== :: NetworkTrustTokenParams -> NetworkTrustTokenParams -> Bool
$c== :: NetworkTrustTokenParams -> NetworkTrustTokenParams -> Bool
Eq, Int -> NetworkTrustTokenParams -> ShowS
[NetworkTrustTokenParams] -> ShowS
NetworkTrustTokenParams -> String
(Int -> NetworkTrustTokenParams -> ShowS)
-> (NetworkTrustTokenParams -> String)
-> ([NetworkTrustTokenParams] -> ShowS)
-> Show NetworkTrustTokenParams
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkTrustTokenParams] -> ShowS
$cshowList :: [NetworkTrustTokenParams] -> ShowS
show :: NetworkTrustTokenParams -> String
$cshow :: NetworkTrustTokenParams -> String
showsPrec :: Int -> NetworkTrustTokenParams -> ShowS
$cshowsPrec :: Int -> NetworkTrustTokenParams -> ShowS
Show)
instance FromJSON NetworkTrustTokenParams where
  parseJSON :: Value -> Parser NetworkTrustTokenParams
parseJSON = String
-> (Object -> Parser NetworkTrustTokenParams)
-> Value
-> Parser NetworkTrustTokenParams
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkTrustTokenParams" ((Object -> Parser NetworkTrustTokenParams)
 -> Value -> Parser NetworkTrustTokenParams)
-> (Object -> Parser NetworkTrustTokenParams)
-> Value
-> Parser NetworkTrustTokenParams
forall a b. (a -> b) -> a -> b
$ \Object
o -> NetworkTrustTokenOperationType
-> NetworkTrustTokenParamsRefreshPolicy
-> Maybe [Text]
-> NetworkTrustTokenParams
NetworkTrustTokenParams
    (NetworkTrustTokenOperationType
 -> NetworkTrustTokenParamsRefreshPolicy
 -> Maybe [Text]
 -> NetworkTrustTokenParams)
-> Parser NetworkTrustTokenOperationType
-> Parser
     (NetworkTrustTokenParamsRefreshPolicy
      -> Maybe [Text] -> NetworkTrustTokenParams)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser NetworkTrustTokenOperationType
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"type"
    Parser
  (NetworkTrustTokenParamsRefreshPolicy
   -> Maybe [Text] -> NetworkTrustTokenParams)
-> Parser NetworkTrustTokenParamsRefreshPolicy
-> Parser (Maybe [Text] -> NetworkTrustTokenParams)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser NetworkTrustTokenParamsRefreshPolicy
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"refreshPolicy"
    Parser (Maybe [Text] -> NetworkTrustTokenParams)
-> Parser (Maybe [Text]) -> Parser NetworkTrustTokenParams
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe [Text])
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"issuers"
instance ToJSON NetworkTrustTokenParams where
  toJSON :: NetworkTrustTokenParams -> Value
toJSON NetworkTrustTokenParams
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"type" Text -> NetworkTrustTokenOperationType -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkTrustTokenOperationType -> Pair)
-> Maybe NetworkTrustTokenOperationType -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> NetworkTrustTokenOperationType
-> Maybe NetworkTrustTokenOperationType
forall a. a -> Maybe a
Just (NetworkTrustTokenParams -> NetworkTrustTokenOperationType
networkTrustTokenParamsType NetworkTrustTokenParams
p),
    (Text
"refreshPolicy" Text -> NetworkTrustTokenParamsRefreshPolicy -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkTrustTokenParamsRefreshPolicy -> Pair)
-> Maybe NetworkTrustTokenParamsRefreshPolicy -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> NetworkTrustTokenParamsRefreshPolicy
-> Maybe NetworkTrustTokenParamsRefreshPolicy
forall a. a -> Maybe a
Just (NetworkTrustTokenParams -> NetworkTrustTokenParamsRefreshPolicy
networkTrustTokenParamsRefreshPolicy NetworkTrustTokenParams
p),
    (Text
"issuers" Text -> [Text] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([Text] -> Pair) -> Maybe [Text] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkTrustTokenParams -> Maybe [Text]
networkTrustTokenParamsIssuers NetworkTrustTokenParams
p)
    ]

-- | Type 'Network.TrustTokenOperationType'.
data NetworkTrustTokenOperationType = NetworkTrustTokenOperationTypeIssuance | NetworkTrustTokenOperationTypeRedemption | NetworkTrustTokenOperationTypeSigning
  deriving (Eq NetworkTrustTokenOperationType
Eq NetworkTrustTokenOperationType
-> (NetworkTrustTokenOperationType
    -> NetworkTrustTokenOperationType -> Ordering)
-> (NetworkTrustTokenOperationType
    -> NetworkTrustTokenOperationType -> Bool)
-> (NetworkTrustTokenOperationType
    -> NetworkTrustTokenOperationType -> Bool)
-> (NetworkTrustTokenOperationType
    -> NetworkTrustTokenOperationType -> Bool)
-> (NetworkTrustTokenOperationType
    -> NetworkTrustTokenOperationType -> Bool)
-> (NetworkTrustTokenOperationType
    -> NetworkTrustTokenOperationType
    -> NetworkTrustTokenOperationType)
-> (NetworkTrustTokenOperationType
    -> NetworkTrustTokenOperationType
    -> NetworkTrustTokenOperationType)
-> Ord NetworkTrustTokenOperationType
NetworkTrustTokenOperationType
-> NetworkTrustTokenOperationType -> Bool
NetworkTrustTokenOperationType
-> NetworkTrustTokenOperationType -> Ordering
NetworkTrustTokenOperationType
-> NetworkTrustTokenOperationType -> NetworkTrustTokenOperationType
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: NetworkTrustTokenOperationType
-> NetworkTrustTokenOperationType -> NetworkTrustTokenOperationType
$cmin :: NetworkTrustTokenOperationType
-> NetworkTrustTokenOperationType -> NetworkTrustTokenOperationType
max :: NetworkTrustTokenOperationType
-> NetworkTrustTokenOperationType -> NetworkTrustTokenOperationType
$cmax :: NetworkTrustTokenOperationType
-> NetworkTrustTokenOperationType -> NetworkTrustTokenOperationType
>= :: NetworkTrustTokenOperationType
-> NetworkTrustTokenOperationType -> Bool
$c>= :: NetworkTrustTokenOperationType
-> NetworkTrustTokenOperationType -> Bool
> :: NetworkTrustTokenOperationType
-> NetworkTrustTokenOperationType -> Bool
$c> :: NetworkTrustTokenOperationType
-> NetworkTrustTokenOperationType -> Bool
<= :: NetworkTrustTokenOperationType
-> NetworkTrustTokenOperationType -> Bool
$c<= :: NetworkTrustTokenOperationType
-> NetworkTrustTokenOperationType -> Bool
< :: NetworkTrustTokenOperationType
-> NetworkTrustTokenOperationType -> Bool
$c< :: NetworkTrustTokenOperationType
-> NetworkTrustTokenOperationType -> Bool
compare :: NetworkTrustTokenOperationType
-> NetworkTrustTokenOperationType -> Ordering
$ccompare :: NetworkTrustTokenOperationType
-> NetworkTrustTokenOperationType -> Ordering
$cp1Ord :: Eq NetworkTrustTokenOperationType
Ord, NetworkTrustTokenOperationType
-> NetworkTrustTokenOperationType -> Bool
(NetworkTrustTokenOperationType
 -> NetworkTrustTokenOperationType -> Bool)
-> (NetworkTrustTokenOperationType
    -> NetworkTrustTokenOperationType -> Bool)
-> Eq NetworkTrustTokenOperationType
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkTrustTokenOperationType
-> NetworkTrustTokenOperationType -> Bool
$c/= :: NetworkTrustTokenOperationType
-> NetworkTrustTokenOperationType -> Bool
== :: NetworkTrustTokenOperationType
-> NetworkTrustTokenOperationType -> Bool
$c== :: NetworkTrustTokenOperationType
-> NetworkTrustTokenOperationType -> Bool
Eq, Int -> NetworkTrustTokenOperationType -> ShowS
[NetworkTrustTokenOperationType] -> ShowS
NetworkTrustTokenOperationType -> String
(Int -> NetworkTrustTokenOperationType -> ShowS)
-> (NetworkTrustTokenOperationType -> String)
-> ([NetworkTrustTokenOperationType] -> ShowS)
-> Show NetworkTrustTokenOperationType
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkTrustTokenOperationType] -> ShowS
$cshowList :: [NetworkTrustTokenOperationType] -> ShowS
show :: NetworkTrustTokenOperationType -> String
$cshow :: NetworkTrustTokenOperationType -> String
showsPrec :: Int -> NetworkTrustTokenOperationType -> ShowS
$cshowsPrec :: Int -> NetworkTrustTokenOperationType -> ShowS
Show, ReadPrec [NetworkTrustTokenOperationType]
ReadPrec NetworkTrustTokenOperationType
Int -> ReadS NetworkTrustTokenOperationType
ReadS [NetworkTrustTokenOperationType]
(Int -> ReadS NetworkTrustTokenOperationType)
-> ReadS [NetworkTrustTokenOperationType]
-> ReadPrec NetworkTrustTokenOperationType
-> ReadPrec [NetworkTrustTokenOperationType]
-> Read NetworkTrustTokenOperationType
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [NetworkTrustTokenOperationType]
$creadListPrec :: ReadPrec [NetworkTrustTokenOperationType]
readPrec :: ReadPrec NetworkTrustTokenOperationType
$creadPrec :: ReadPrec NetworkTrustTokenOperationType
readList :: ReadS [NetworkTrustTokenOperationType]
$creadList :: ReadS [NetworkTrustTokenOperationType]
readsPrec :: Int -> ReadS NetworkTrustTokenOperationType
$creadsPrec :: Int -> ReadS NetworkTrustTokenOperationType
Read)
instance FromJSON NetworkTrustTokenOperationType where
  parseJSON :: Value -> Parser NetworkTrustTokenOperationType
parseJSON = String
-> (Text -> Parser NetworkTrustTokenOperationType)
-> Value
-> Parser NetworkTrustTokenOperationType
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"NetworkTrustTokenOperationType" ((Text -> Parser NetworkTrustTokenOperationType)
 -> Value -> Parser NetworkTrustTokenOperationType)
-> (Text -> Parser NetworkTrustTokenOperationType)
-> Value
-> Parser NetworkTrustTokenOperationType
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"Issuance" -> NetworkTrustTokenOperationType
-> Parser NetworkTrustTokenOperationType
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkTrustTokenOperationType
NetworkTrustTokenOperationTypeIssuance
    Text
"Redemption" -> NetworkTrustTokenOperationType
-> Parser NetworkTrustTokenOperationType
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkTrustTokenOperationType
NetworkTrustTokenOperationTypeRedemption
    Text
"Signing" -> NetworkTrustTokenOperationType
-> Parser NetworkTrustTokenOperationType
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkTrustTokenOperationType
NetworkTrustTokenOperationTypeSigning
    Text
"_" -> String -> Parser NetworkTrustTokenOperationType
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse NetworkTrustTokenOperationType"
instance ToJSON NetworkTrustTokenOperationType where
  toJSON :: NetworkTrustTokenOperationType -> Value
toJSON NetworkTrustTokenOperationType
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case NetworkTrustTokenOperationType
v of
    NetworkTrustTokenOperationType
NetworkTrustTokenOperationTypeIssuance -> Text
"Issuance"
    NetworkTrustTokenOperationType
NetworkTrustTokenOperationTypeRedemption -> Text
"Redemption"
    NetworkTrustTokenOperationType
NetworkTrustTokenOperationTypeSigning -> Text
"Signing"

-- | Type 'Network.AlternateProtocolUsage'.
--   The reason why Chrome uses a specific transport protocol for HTTP semantics.
data NetworkAlternateProtocolUsage = NetworkAlternateProtocolUsageAlternativeJobWonWithoutRace | NetworkAlternateProtocolUsageAlternativeJobWonRace | NetworkAlternateProtocolUsageMainJobWonRace | NetworkAlternateProtocolUsageMappingMissing | NetworkAlternateProtocolUsageBroken | NetworkAlternateProtocolUsageDnsAlpnH3JobWonWithoutRace | NetworkAlternateProtocolUsageDnsAlpnH3JobWonRace | NetworkAlternateProtocolUsageUnspecifiedReason
  deriving (Eq NetworkAlternateProtocolUsage
Eq NetworkAlternateProtocolUsage
-> (NetworkAlternateProtocolUsage
    -> NetworkAlternateProtocolUsage -> Ordering)
-> (NetworkAlternateProtocolUsage
    -> NetworkAlternateProtocolUsage -> Bool)
-> (NetworkAlternateProtocolUsage
    -> NetworkAlternateProtocolUsage -> Bool)
-> (NetworkAlternateProtocolUsage
    -> NetworkAlternateProtocolUsage -> Bool)
-> (NetworkAlternateProtocolUsage
    -> NetworkAlternateProtocolUsage -> Bool)
-> (NetworkAlternateProtocolUsage
    -> NetworkAlternateProtocolUsage -> NetworkAlternateProtocolUsage)
-> (NetworkAlternateProtocolUsage
    -> NetworkAlternateProtocolUsage -> NetworkAlternateProtocolUsage)
-> Ord NetworkAlternateProtocolUsage
NetworkAlternateProtocolUsage
-> NetworkAlternateProtocolUsage -> Bool
NetworkAlternateProtocolUsage
-> NetworkAlternateProtocolUsage -> Ordering
NetworkAlternateProtocolUsage
-> NetworkAlternateProtocolUsage -> NetworkAlternateProtocolUsage
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: NetworkAlternateProtocolUsage
-> NetworkAlternateProtocolUsage -> NetworkAlternateProtocolUsage
$cmin :: NetworkAlternateProtocolUsage
-> NetworkAlternateProtocolUsage -> NetworkAlternateProtocolUsage
max :: NetworkAlternateProtocolUsage
-> NetworkAlternateProtocolUsage -> NetworkAlternateProtocolUsage
$cmax :: NetworkAlternateProtocolUsage
-> NetworkAlternateProtocolUsage -> NetworkAlternateProtocolUsage
>= :: NetworkAlternateProtocolUsage
-> NetworkAlternateProtocolUsage -> Bool
$c>= :: NetworkAlternateProtocolUsage
-> NetworkAlternateProtocolUsage -> Bool
> :: NetworkAlternateProtocolUsage
-> NetworkAlternateProtocolUsage -> Bool
$c> :: NetworkAlternateProtocolUsage
-> NetworkAlternateProtocolUsage -> Bool
<= :: NetworkAlternateProtocolUsage
-> NetworkAlternateProtocolUsage -> Bool
$c<= :: NetworkAlternateProtocolUsage
-> NetworkAlternateProtocolUsage -> Bool
< :: NetworkAlternateProtocolUsage
-> NetworkAlternateProtocolUsage -> Bool
$c< :: NetworkAlternateProtocolUsage
-> NetworkAlternateProtocolUsage -> Bool
compare :: NetworkAlternateProtocolUsage
-> NetworkAlternateProtocolUsage -> Ordering
$ccompare :: NetworkAlternateProtocolUsage
-> NetworkAlternateProtocolUsage -> Ordering
$cp1Ord :: Eq NetworkAlternateProtocolUsage
Ord, NetworkAlternateProtocolUsage
-> NetworkAlternateProtocolUsage -> Bool
(NetworkAlternateProtocolUsage
 -> NetworkAlternateProtocolUsage -> Bool)
-> (NetworkAlternateProtocolUsage
    -> NetworkAlternateProtocolUsage -> Bool)
-> Eq NetworkAlternateProtocolUsage
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkAlternateProtocolUsage
-> NetworkAlternateProtocolUsage -> Bool
$c/= :: NetworkAlternateProtocolUsage
-> NetworkAlternateProtocolUsage -> Bool
== :: NetworkAlternateProtocolUsage
-> NetworkAlternateProtocolUsage -> Bool
$c== :: NetworkAlternateProtocolUsage
-> NetworkAlternateProtocolUsage -> Bool
Eq, Int -> NetworkAlternateProtocolUsage -> ShowS
[NetworkAlternateProtocolUsage] -> ShowS
NetworkAlternateProtocolUsage -> String
(Int -> NetworkAlternateProtocolUsage -> ShowS)
-> (NetworkAlternateProtocolUsage -> String)
-> ([NetworkAlternateProtocolUsage] -> ShowS)
-> Show NetworkAlternateProtocolUsage
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkAlternateProtocolUsage] -> ShowS
$cshowList :: [NetworkAlternateProtocolUsage] -> ShowS
show :: NetworkAlternateProtocolUsage -> String
$cshow :: NetworkAlternateProtocolUsage -> String
showsPrec :: Int -> NetworkAlternateProtocolUsage -> ShowS
$cshowsPrec :: Int -> NetworkAlternateProtocolUsage -> ShowS
Show, ReadPrec [NetworkAlternateProtocolUsage]
ReadPrec NetworkAlternateProtocolUsage
Int -> ReadS NetworkAlternateProtocolUsage
ReadS [NetworkAlternateProtocolUsage]
(Int -> ReadS NetworkAlternateProtocolUsage)
-> ReadS [NetworkAlternateProtocolUsage]
-> ReadPrec NetworkAlternateProtocolUsage
-> ReadPrec [NetworkAlternateProtocolUsage]
-> Read NetworkAlternateProtocolUsage
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [NetworkAlternateProtocolUsage]
$creadListPrec :: ReadPrec [NetworkAlternateProtocolUsage]
readPrec :: ReadPrec NetworkAlternateProtocolUsage
$creadPrec :: ReadPrec NetworkAlternateProtocolUsage
readList :: ReadS [NetworkAlternateProtocolUsage]
$creadList :: ReadS [NetworkAlternateProtocolUsage]
readsPrec :: Int -> ReadS NetworkAlternateProtocolUsage
$creadsPrec :: Int -> ReadS NetworkAlternateProtocolUsage
Read)
instance FromJSON NetworkAlternateProtocolUsage where
  parseJSON :: Value -> Parser NetworkAlternateProtocolUsage
parseJSON = String
-> (Text -> Parser NetworkAlternateProtocolUsage)
-> Value
-> Parser NetworkAlternateProtocolUsage
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"NetworkAlternateProtocolUsage" ((Text -> Parser NetworkAlternateProtocolUsage)
 -> Value -> Parser NetworkAlternateProtocolUsage)
-> (Text -> Parser NetworkAlternateProtocolUsage)
-> Value
-> Parser NetworkAlternateProtocolUsage
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"alternativeJobWonWithoutRace" -> NetworkAlternateProtocolUsage
-> Parser NetworkAlternateProtocolUsage
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkAlternateProtocolUsage
NetworkAlternateProtocolUsageAlternativeJobWonWithoutRace
    Text
"alternativeJobWonRace" -> NetworkAlternateProtocolUsage
-> Parser NetworkAlternateProtocolUsage
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkAlternateProtocolUsage
NetworkAlternateProtocolUsageAlternativeJobWonRace
    Text
"mainJobWonRace" -> NetworkAlternateProtocolUsage
-> Parser NetworkAlternateProtocolUsage
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkAlternateProtocolUsage
NetworkAlternateProtocolUsageMainJobWonRace
    Text
"mappingMissing" -> NetworkAlternateProtocolUsage
-> Parser NetworkAlternateProtocolUsage
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkAlternateProtocolUsage
NetworkAlternateProtocolUsageMappingMissing
    Text
"broken" -> NetworkAlternateProtocolUsage
-> Parser NetworkAlternateProtocolUsage
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkAlternateProtocolUsage
NetworkAlternateProtocolUsageBroken
    Text
"dnsAlpnH3JobWonWithoutRace" -> NetworkAlternateProtocolUsage
-> Parser NetworkAlternateProtocolUsage
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkAlternateProtocolUsage
NetworkAlternateProtocolUsageDnsAlpnH3JobWonWithoutRace
    Text
"dnsAlpnH3JobWonRace" -> NetworkAlternateProtocolUsage
-> Parser NetworkAlternateProtocolUsage
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkAlternateProtocolUsage
NetworkAlternateProtocolUsageDnsAlpnH3JobWonRace
    Text
"unspecifiedReason" -> NetworkAlternateProtocolUsage
-> Parser NetworkAlternateProtocolUsage
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkAlternateProtocolUsage
NetworkAlternateProtocolUsageUnspecifiedReason
    Text
"_" -> String -> Parser NetworkAlternateProtocolUsage
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse NetworkAlternateProtocolUsage"
instance ToJSON NetworkAlternateProtocolUsage where
  toJSON :: NetworkAlternateProtocolUsage -> Value
toJSON NetworkAlternateProtocolUsage
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case NetworkAlternateProtocolUsage
v of
    NetworkAlternateProtocolUsage
NetworkAlternateProtocolUsageAlternativeJobWonWithoutRace -> Text
"alternativeJobWonWithoutRace"
    NetworkAlternateProtocolUsage
NetworkAlternateProtocolUsageAlternativeJobWonRace -> Text
"alternativeJobWonRace"
    NetworkAlternateProtocolUsage
NetworkAlternateProtocolUsageMainJobWonRace -> Text
"mainJobWonRace"
    NetworkAlternateProtocolUsage
NetworkAlternateProtocolUsageMappingMissing -> Text
"mappingMissing"
    NetworkAlternateProtocolUsage
NetworkAlternateProtocolUsageBroken -> Text
"broken"
    NetworkAlternateProtocolUsage
NetworkAlternateProtocolUsageDnsAlpnH3JobWonWithoutRace -> Text
"dnsAlpnH3JobWonWithoutRace"
    NetworkAlternateProtocolUsage
NetworkAlternateProtocolUsageDnsAlpnH3JobWonRace -> Text
"dnsAlpnH3JobWonRace"
    NetworkAlternateProtocolUsage
NetworkAlternateProtocolUsageUnspecifiedReason -> Text
"unspecifiedReason"

-- | Type 'Network.Response'.
--   HTTP response data.
data NetworkResponse = NetworkResponse
  {
    -- | Response URL. This URL can be different from CachedResource.url in case of redirect.
    NetworkResponse -> Text
networkResponseUrl :: T.Text,
    -- | HTTP response status code.
    NetworkResponse -> Int
networkResponseStatus :: Int,
    -- | HTTP response status text.
    NetworkResponse -> Text
networkResponseStatusText :: T.Text,
    -- | HTTP response headers.
    NetworkResponse -> NetworkHeaders
networkResponseHeaders :: NetworkHeaders,
    -- | Resource mimeType as determined by the browser.
    NetworkResponse -> Text
networkResponseMimeType :: T.Text,
    -- | Refined HTTP request headers that were actually transmitted over the network.
    NetworkResponse -> Maybe NetworkHeaders
networkResponseRequestHeaders :: Maybe NetworkHeaders,
    -- | Specifies whether physical connection was actually reused for this request.
    NetworkResponse -> Bool
networkResponseConnectionReused :: Bool,
    -- | Physical connection id that was actually used for this request.
    NetworkResponse -> Double
networkResponseConnectionId :: Double,
    -- | Remote IP address.
    NetworkResponse -> Maybe Text
networkResponseRemoteIPAddress :: Maybe T.Text,
    -- | Remote port.
    NetworkResponse -> Maybe Int
networkResponseRemotePort :: Maybe Int,
    -- | Specifies that the request was served from the disk cache.
    NetworkResponse -> Maybe Bool
networkResponseFromDiskCache :: Maybe Bool,
    -- | Specifies that the request was served from the ServiceWorker.
    NetworkResponse -> Maybe Bool
networkResponseFromServiceWorker :: Maybe Bool,
    -- | Specifies that the request was served from the prefetch cache.
    NetworkResponse -> Maybe Bool
networkResponseFromPrefetchCache :: Maybe Bool,
    -- | Total number of bytes received for this request so far.
    NetworkResponse -> Double
networkResponseEncodedDataLength :: Double,
    -- | Timing information for the given request.
    NetworkResponse -> Maybe NetworkResourceTiming
networkResponseTiming :: Maybe NetworkResourceTiming,
    -- | Response source of response from ServiceWorker.
    NetworkResponse -> Maybe NetworkServiceWorkerResponseSource
networkResponseServiceWorkerResponseSource :: Maybe NetworkServiceWorkerResponseSource,
    -- | The time at which the returned response was generated.
    NetworkResponse -> Maybe Double
networkResponseResponseTime :: Maybe NetworkTimeSinceEpoch,
    -- | Cache Storage Cache Name.
    NetworkResponse -> Maybe Text
networkResponseCacheStorageCacheName :: Maybe T.Text,
    -- | Protocol used to fetch this request.
    NetworkResponse -> Maybe Text
networkResponseProtocol :: Maybe T.Text,
    -- | The reason why Chrome uses a specific transport protocol for HTTP semantics.
    NetworkResponse -> Maybe NetworkAlternateProtocolUsage
networkResponseAlternateProtocolUsage :: Maybe NetworkAlternateProtocolUsage,
    -- | Security state of the request resource.
    NetworkResponse -> SecuritySecurityState
networkResponseSecurityState :: SecuritySecurityState,
    -- | Security details for the request.
    NetworkResponse -> Maybe NetworkSecurityDetails
networkResponseSecurityDetails :: Maybe NetworkSecurityDetails
  }
  deriving (NetworkResponse -> NetworkResponse -> Bool
(NetworkResponse -> NetworkResponse -> Bool)
-> (NetworkResponse -> NetworkResponse -> Bool)
-> Eq NetworkResponse
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkResponse -> NetworkResponse -> Bool
$c/= :: NetworkResponse -> NetworkResponse -> Bool
== :: NetworkResponse -> NetworkResponse -> Bool
$c== :: NetworkResponse -> NetworkResponse -> Bool
Eq, Int -> NetworkResponse -> ShowS
[NetworkResponse] -> ShowS
NetworkResponse -> String
(Int -> NetworkResponse -> ShowS)
-> (NetworkResponse -> String)
-> ([NetworkResponse] -> ShowS)
-> Show NetworkResponse
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkResponse] -> ShowS
$cshowList :: [NetworkResponse] -> ShowS
show :: NetworkResponse -> String
$cshow :: NetworkResponse -> String
showsPrec :: Int -> NetworkResponse -> ShowS
$cshowsPrec :: Int -> NetworkResponse -> ShowS
Show)
instance FromJSON NetworkResponse where
  parseJSON :: Value -> Parser NetworkResponse
parseJSON = String
-> (Object -> Parser NetworkResponse)
-> Value
-> Parser NetworkResponse
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkResponse" ((Object -> Parser NetworkResponse)
 -> Value -> Parser NetworkResponse)
-> (Object -> Parser NetworkResponse)
-> Value
-> Parser NetworkResponse
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> Int
-> Text
-> NetworkHeaders
-> Text
-> Maybe NetworkHeaders
-> Bool
-> Double
-> Maybe Text
-> Maybe Int
-> Maybe Bool
-> Maybe Bool
-> Maybe Bool
-> Double
-> Maybe NetworkResourceTiming
-> Maybe NetworkServiceWorkerResponseSource
-> Maybe Double
-> Maybe Text
-> Maybe Text
-> Maybe NetworkAlternateProtocolUsage
-> SecuritySecurityState
-> Maybe NetworkSecurityDetails
-> NetworkResponse
NetworkResponse
    (Text
 -> Int
 -> Text
 -> NetworkHeaders
 -> Text
 -> Maybe NetworkHeaders
 -> Bool
 -> Double
 -> Maybe Text
 -> Maybe Int
 -> Maybe Bool
 -> Maybe Bool
 -> Maybe Bool
 -> Double
 -> Maybe NetworkResourceTiming
 -> Maybe NetworkServiceWorkerResponseSource
 -> Maybe Double
 -> Maybe Text
 -> Maybe Text
 -> Maybe NetworkAlternateProtocolUsage
 -> SecuritySecurityState
 -> Maybe NetworkSecurityDetails
 -> NetworkResponse)
-> Parser Text
-> Parser
     (Int
      -> Text
      -> NetworkHeaders
      -> Text
      -> Maybe NetworkHeaders
      -> Bool
      -> Double
      -> Maybe Text
      -> Maybe Int
      -> Maybe Bool
      -> Maybe Bool
      -> Maybe Bool
      -> Double
      -> Maybe NetworkResourceTiming
      -> Maybe NetworkServiceWorkerResponseSource
      -> Maybe Double
      -> Maybe Text
      -> Maybe Text
      -> Maybe NetworkAlternateProtocolUsage
      -> SecuritySecurityState
      -> Maybe NetworkSecurityDetails
      -> NetworkResponse)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"url"
    Parser
  (Int
   -> Text
   -> NetworkHeaders
   -> Text
   -> Maybe NetworkHeaders
   -> Bool
   -> Double
   -> Maybe Text
   -> Maybe Int
   -> Maybe Bool
   -> Maybe Bool
   -> Maybe Bool
   -> Double
   -> Maybe NetworkResourceTiming
   -> Maybe NetworkServiceWorkerResponseSource
   -> Maybe Double
   -> Maybe Text
   -> Maybe Text
   -> Maybe NetworkAlternateProtocolUsage
   -> SecuritySecurityState
   -> Maybe NetworkSecurityDetails
   -> NetworkResponse)
-> Parser Int
-> Parser
     (Text
      -> NetworkHeaders
      -> Text
      -> Maybe NetworkHeaders
      -> Bool
      -> Double
      -> Maybe Text
      -> Maybe Int
      -> Maybe Bool
      -> Maybe Bool
      -> Maybe Bool
      -> Double
      -> Maybe NetworkResourceTiming
      -> Maybe NetworkServiceWorkerResponseSource
      -> Maybe Double
      -> Maybe Text
      -> Maybe Text
      -> Maybe NetworkAlternateProtocolUsage
      -> SecuritySecurityState
      -> Maybe NetworkSecurityDetails
      -> NetworkResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"status"
    Parser
  (Text
   -> NetworkHeaders
   -> Text
   -> Maybe NetworkHeaders
   -> Bool
   -> Double
   -> Maybe Text
   -> Maybe Int
   -> Maybe Bool
   -> Maybe Bool
   -> Maybe Bool
   -> Double
   -> Maybe NetworkResourceTiming
   -> Maybe NetworkServiceWorkerResponseSource
   -> Maybe Double
   -> Maybe Text
   -> Maybe Text
   -> Maybe NetworkAlternateProtocolUsage
   -> SecuritySecurityState
   -> Maybe NetworkSecurityDetails
   -> NetworkResponse)
-> Parser Text
-> Parser
     (NetworkHeaders
      -> Text
      -> Maybe NetworkHeaders
      -> Bool
      -> Double
      -> Maybe Text
      -> Maybe Int
      -> Maybe Bool
      -> Maybe Bool
      -> Maybe Bool
      -> Double
      -> Maybe NetworkResourceTiming
      -> Maybe NetworkServiceWorkerResponseSource
      -> Maybe Double
      -> Maybe Text
      -> Maybe Text
      -> Maybe NetworkAlternateProtocolUsage
      -> SecuritySecurityState
      -> Maybe NetworkSecurityDetails
      -> NetworkResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"statusText"
    Parser
  (NetworkHeaders
   -> Text
   -> Maybe NetworkHeaders
   -> Bool
   -> Double
   -> Maybe Text
   -> Maybe Int
   -> Maybe Bool
   -> Maybe Bool
   -> Maybe Bool
   -> Double
   -> Maybe NetworkResourceTiming
   -> Maybe NetworkServiceWorkerResponseSource
   -> Maybe Double
   -> Maybe Text
   -> Maybe Text
   -> Maybe NetworkAlternateProtocolUsage
   -> SecuritySecurityState
   -> Maybe NetworkSecurityDetails
   -> NetworkResponse)
-> Parser NetworkHeaders
-> Parser
     (Text
      -> Maybe NetworkHeaders
      -> Bool
      -> Double
      -> Maybe Text
      -> Maybe Int
      -> Maybe Bool
      -> Maybe Bool
      -> Maybe Bool
      -> Double
      -> Maybe NetworkResourceTiming
      -> Maybe NetworkServiceWorkerResponseSource
      -> Maybe Double
      -> Maybe Text
      -> Maybe Text
      -> Maybe NetworkAlternateProtocolUsage
      -> SecuritySecurityState
      -> Maybe NetworkSecurityDetails
      -> NetworkResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser NetworkHeaders
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"headers"
    Parser
  (Text
   -> Maybe NetworkHeaders
   -> Bool
   -> Double
   -> Maybe Text
   -> Maybe Int
   -> Maybe Bool
   -> Maybe Bool
   -> Maybe Bool
   -> Double
   -> Maybe NetworkResourceTiming
   -> Maybe NetworkServiceWorkerResponseSource
   -> Maybe Double
   -> Maybe Text
   -> Maybe Text
   -> Maybe NetworkAlternateProtocolUsage
   -> SecuritySecurityState
   -> Maybe NetworkSecurityDetails
   -> NetworkResponse)
-> Parser Text
-> Parser
     (Maybe NetworkHeaders
      -> Bool
      -> Double
      -> Maybe Text
      -> Maybe Int
      -> Maybe Bool
      -> Maybe Bool
      -> Maybe Bool
      -> Double
      -> Maybe NetworkResourceTiming
      -> Maybe NetworkServiceWorkerResponseSource
      -> Maybe Double
      -> Maybe Text
      -> Maybe Text
      -> Maybe NetworkAlternateProtocolUsage
      -> SecuritySecurityState
      -> Maybe NetworkSecurityDetails
      -> NetworkResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"mimeType"
    Parser
  (Maybe NetworkHeaders
   -> Bool
   -> Double
   -> Maybe Text
   -> Maybe Int
   -> Maybe Bool
   -> Maybe Bool
   -> Maybe Bool
   -> Double
   -> Maybe NetworkResourceTiming
   -> Maybe NetworkServiceWorkerResponseSource
   -> Maybe Double
   -> Maybe Text
   -> Maybe Text
   -> Maybe NetworkAlternateProtocolUsage
   -> SecuritySecurityState
   -> Maybe NetworkSecurityDetails
   -> NetworkResponse)
-> Parser (Maybe NetworkHeaders)
-> Parser
     (Bool
      -> Double
      -> Maybe Text
      -> Maybe Int
      -> Maybe Bool
      -> Maybe Bool
      -> Maybe Bool
      -> Double
      -> Maybe NetworkResourceTiming
      -> Maybe NetworkServiceWorkerResponseSource
      -> Maybe Double
      -> Maybe Text
      -> Maybe Text
      -> Maybe NetworkAlternateProtocolUsage
      -> SecuritySecurityState
      -> Maybe NetworkSecurityDetails
      -> NetworkResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe NetworkHeaders)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"requestHeaders"
    Parser
  (Bool
   -> Double
   -> Maybe Text
   -> Maybe Int
   -> Maybe Bool
   -> Maybe Bool
   -> Maybe Bool
   -> Double
   -> Maybe NetworkResourceTiming
   -> Maybe NetworkServiceWorkerResponseSource
   -> Maybe Double
   -> Maybe Text
   -> Maybe Text
   -> Maybe NetworkAlternateProtocolUsage
   -> SecuritySecurityState
   -> Maybe NetworkSecurityDetails
   -> NetworkResponse)
-> Parser Bool
-> Parser
     (Double
      -> Maybe Text
      -> Maybe Int
      -> Maybe Bool
      -> Maybe Bool
      -> Maybe Bool
      -> Double
      -> Maybe NetworkResourceTiming
      -> Maybe NetworkServiceWorkerResponseSource
      -> Maybe Double
      -> Maybe Text
      -> Maybe Text
      -> Maybe NetworkAlternateProtocolUsage
      -> SecuritySecurityState
      -> Maybe NetworkSecurityDetails
      -> NetworkResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Bool
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"connectionReused"
    Parser
  (Double
   -> Maybe Text
   -> Maybe Int
   -> Maybe Bool
   -> Maybe Bool
   -> Maybe Bool
   -> Double
   -> Maybe NetworkResourceTiming
   -> Maybe NetworkServiceWorkerResponseSource
   -> Maybe Double
   -> Maybe Text
   -> Maybe Text
   -> Maybe NetworkAlternateProtocolUsage
   -> SecuritySecurityState
   -> Maybe NetworkSecurityDetails
   -> NetworkResponse)
-> Parser Double
-> Parser
     (Maybe Text
      -> Maybe Int
      -> Maybe Bool
      -> Maybe Bool
      -> Maybe Bool
      -> Double
      -> Maybe NetworkResourceTiming
      -> Maybe NetworkServiceWorkerResponseSource
      -> Maybe Double
      -> Maybe Text
      -> Maybe Text
      -> Maybe NetworkAlternateProtocolUsage
      -> SecuritySecurityState
      -> Maybe NetworkSecurityDetails
      -> NetworkResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"connectionId"
    Parser
  (Maybe Text
   -> Maybe Int
   -> Maybe Bool
   -> Maybe Bool
   -> Maybe Bool
   -> Double
   -> Maybe NetworkResourceTiming
   -> Maybe NetworkServiceWorkerResponseSource
   -> Maybe Double
   -> Maybe Text
   -> Maybe Text
   -> Maybe NetworkAlternateProtocolUsage
   -> SecuritySecurityState
   -> Maybe NetworkSecurityDetails
   -> NetworkResponse)
-> Parser (Maybe Text)
-> Parser
     (Maybe Int
      -> Maybe Bool
      -> Maybe Bool
      -> Maybe Bool
      -> Double
      -> Maybe NetworkResourceTiming
      -> Maybe NetworkServiceWorkerResponseSource
      -> Maybe Double
      -> Maybe Text
      -> Maybe Text
      -> Maybe NetworkAlternateProtocolUsage
      -> SecuritySecurityState
      -> Maybe NetworkSecurityDetails
      -> NetworkResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"remoteIPAddress"
    Parser
  (Maybe Int
   -> Maybe Bool
   -> Maybe Bool
   -> Maybe Bool
   -> Double
   -> Maybe NetworkResourceTiming
   -> Maybe NetworkServiceWorkerResponseSource
   -> Maybe Double
   -> Maybe Text
   -> Maybe Text
   -> Maybe NetworkAlternateProtocolUsage
   -> SecuritySecurityState
   -> Maybe NetworkSecurityDetails
   -> NetworkResponse)
-> Parser (Maybe Int)
-> Parser
     (Maybe Bool
      -> Maybe Bool
      -> Maybe Bool
      -> Double
      -> Maybe NetworkResourceTiming
      -> Maybe NetworkServiceWorkerResponseSource
      -> Maybe Double
      -> Maybe Text
      -> Maybe Text
      -> Maybe NetworkAlternateProtocolUsage
      -> SecuritySecurityState
      -> Maybe NetworkSecurityDetails
      -> NetworkResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Int)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"remotePort"
    Parser
  (Maybe Bool
   -> Maybe Bool
   -> Maybe Bool
   -> Double
   -> Maybe NetworkResourceTiming
   -> Maybe NetworkServiceWorkerResponseSource
   -> Maybe Double
   -> Maybe Text
   -> Maybe Text
   -> Maybe NetworkAlternateProtocolUsage
   -> SecuritySecurityState
   -> Maybe NetworkSecurityDetails
   -> NetworkResponse)
-> Parser (Maybe Bool)
-> Parser
     (Maybe Bool
      -> Maybe Bool
      -> Double
      -> Maybe NetworkResourceTiming
      -> Maybe NetworkServiceWorkerResponseSource
      -> Maybe Double
      -> Maybe Text
      -> Maybe Text
      -> Maybe NetworkAlternateProtocolUsage
      -> SecuritySecurityState
      -> Maybe NetworkSecurityDetails
      -> NetworkResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"fromDiskCache"
    Parser
  (Maybe Bool
   -> Maybe Bool
   -> Double
   -> Maybe NetworkResourceTiming
   -> Maybe NetworkServiceWorkerResponseSource
   -> Maybe Double
   -> Maybe Text
   -> Maybe Text
   -> Maybe NetworkAlternateProtocolUsage
   -> SecuritySecurityState
   -> Maybe NetworkSecurityDetails
   -> NetworkResponse)
-> Parser (Maybe Bool)
-> Parser
     (Maybe Bool
      -> Double
      -> Maybe NetworkResourceTiming
      -> Maybe NetworkServiceWorkerResponseSource
      -> Maybe Double
      -> Maybe Text
      -> Maybe Text
      -> Maybe NetworkAlternateProtocolUsage
      -> SecuritySecurityState
      -> Maybe NetworkSecurityDetails
      -> NetworkResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"fromServiceWorker"
    Parser
  (Maybe Bool
   -> Double
   -> Maybe NetworkResourceTiming
   -> Maybe NetworkServiceWorkerResponseSource
   -> Maybe Double
   -> Maybe Text
   -> Maybe Text
   -> Maybe NetworkAlternateProtocolUsage
   -> SecuritySecurityState
   -> Maybe NetworkSecurityDetails
   -> NetworkResponse)
-> Parser (Maybe Bool)
-> Parser
     (Double
      -> Maybe NetworkResourceTiming
      -> Maybe NetworkServiceWorkerResponseSource
      -> Maybe Double
      -> Maybe Text
      -> Maybe Text
      -> Maybe NetworkAlternateProtocolUsage
      -> SecuritySecurityState
      -> Maybe NetworkSecurityDetails
      -> NetworkResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"fromPrefetchCache"
    Parser
  (Double
   -> Maybe NetworkResourceTiming
   -> Maybe NetworkServiceWorkerResponseSource
   -> Maybe Double
   -> Maybe Text
   -> Maybe Text
   -> Maybe NetworkAlternateProtocolUsage
   -> SecuritySecurityState
   -> Maybe NetworkSecurityDetails
   -> NetworkResponse)
-> Parser Double
-> Parser
     (Maybe NetworkResourceTiming
      -> Maybe NetworkServiceWorkerResponseSource
      -> Maybe Double
      -> Maybe Text
      -> Maybe Text
      -> Maybe NetworkAlternateProtocolUsage
      -> SecuritySecurityState
      -> Maybe NetworkSecurityDetails
      -> NetworkResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"encodedDataLength"
    Parser
  (Maybe NetworkResourceTiming
   -> Maybe NetworkServiceWorkerResponseSource
   -> Maybe Double
   -> Maybe Text
   -> Maybe Text
   -> Maybe NetworkAlternateProtocolUsage
   -> SecuritySecurityState
   -> Maybe NetworkSecurityDetails
   -> NetworkResponse)
-> Parser (Maybe NetworkResourceTiming)
-> Parser
     (Maybe NetworkServiceWorkerResponseSource
      -> Maybe Double
      -> Maybe Text
      -> Maybe Text
      -> Maybe NetworkAlternateProtocolUsage
      -> SecuritySecurityState
      -> Maybe NetworkSecurityDetails
      -> NetworkResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe NetworkResourceTiming)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"timing"
    Parser
  (Maybe NetworkServiceWorkerResponseSource
   -> Maybe Double
   -> Maybe Text
   -> Maybe Text
   -> Maybe NetworkAlternateProtocolUsage
   -> SecuritySecurityState
   -> Maybe NetworkSecurityDetails
   -> NetworkResponse)
-> Parser (Maybe NetworkServiceWorkerResponseSource)
-> Parser
     (Maybe Double
      -> Maybe Text
      -> Maybe Text
      -> Maybe NetworkAlternateProtocolUsage
      -> SecuritySecurityState
      -> Maybe NetworkSecurityDetails
      -> NetworkResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe NetworkServiceWorkerResponseSource)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"serviceWorkerResponseSource"
    Parser
  (Maybe Double
   -> Maybe Text
   -> Maybe Text
   -> Maybe NetworkAlternateProtocolUsage
   -> SecuritySecurityState
   -> Maybe NetworkSecurityDetails
   -> NetworkResponse)
-> Parser (Maybe Double)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe NetworkAlternateProtocolUsage
      -> SecuritySecurityState
      -> Maybe NetworkSecurityDetails
      -> NetworkResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Double)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"responseTime"
    Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe NetworkAlternateProtocolUsage
   -> SecuritySecurityState
   -> Maybe NetworkSecurityDetails
   -> NetworkResponse)
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe NetworkAlternateProtocolUsage
      -> SecuritySecurityState
      -> Maybe NetworkSecurityDetails
      -> NetworkResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"cacheStorageCacheName"
    Parser
  (Maybe Text
   -> Maybe NetworkAlternateProtocolUsage
   -> SecuritySecurityState
   -> Maybe NetworkSecurityDetails
   -> NetworkResponse)
-> Parser (Maybe Text)
-> Parser
     (Maybe NetworkAlternateProtocolUsage
      -> SecuritySecurityState
      -> Maybe NetworkSecurityDetails
      -> NetworkResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"protocol"
    Parser
  (Maybe NetworkAlternateProtocolUsage
   -> SecuritySecurityState
   -> Maybe NetworkSecurityDetails
   -> NetworkResponse)
-> Parser (Maybe NetworkAlternateProtocolUsage)
-> Parser
     (SecuritySecurityState
      -> Maybe NetworkSecurityDetails -> NetworkResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe NetworkAlternateProtocolUsage)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"alternateProtocolUsage"
    Parser
  (SecuritySecurityState
   -> Maybe NetworkSecurityDetails -> NetworkResponse)
-> Parser SecuritySecurityState
-> Parser (Maybe NetworkSecurityDetails -> NetworkResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser SecuritySecurityState
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"securityState"
    Parser (Maybe NetworkSecurityDetails -> NetworkResponse)
-> Parser (Maybe NetworkSecurityDetails) -> Parser NetworkResponse
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe NetworkSecurityDetails)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"securityDetails"
instance ToJSON NetworkResponse where
  toJSON :: NetworkResponse -> Value
toJSON NetworkResponse
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"url" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkResponse -> Text
networkResponseUrl NetworkResponse
p),
    (Text
"status" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (NetworkResponse -> Int
networkResponseStatus NetworkResponse
p),
    (Text
"statusText" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkResponse -> Text
networkResponseStatusText NetworkResponse
p),
    (Text
"headers" Text -> NetworkHeaders -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkHeaders -> Pair) -> Maybe NetworkHeaders -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> NetworkHeaders -> Maybe NetworkHeaders
forall a. a -> Maybe a
Just (NetworkResponse -> NetworkHeaders
networkResponseHeaders NetworkResponse
p),
    (Text
"mimeType" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkResponse -> Text
networkResponseMimeType NetworkResponse
p),
    (Text
"requestHeaders" Text -> NetworkHeaders -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkHeaders -> Pair) -> Maybe NetworkHeaders -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkResponse -> Maybe NetworkHeaders
networkResponseRequestHeaders NetworkResponse
p),
    (Text
"connectionReused" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (NetworkResponse -> Bool
networkResponseConnectionReused NetworkResponse
p),
    (Text
"connectionId" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (NetworkResponse -> Double
networkResponseConnectionId NetworkResponse
p),
    (Text
"remoteIPAddress" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkResponse -> Maybe Text
networkResponseRemoteIPAddress NetworkResponse
p),
    (Text
"remotePort" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkResponse -> Maybe Int
networkResponseRemotePort NetworkResponse
p),
    (Text
"fromDiskCache" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkResponse -> Maybe Bool
networkResponseFromDiskCache NetworkResponse
p),
    (Text
"fromServiceWorker" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkResponse -> Maybe Bool
networkResponseFromServiceWorker NetworkResponse
p),
    (Text
"fromPrefetchCache" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkResponse -> Maybe Bool
networkResponseFromPrefetchCache NetworkResponse
p),
    (Text
"encodedDataLength" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (NetworkResponse -> Double
networkResponseEncodedDataLength NetworkResponse
p),
    (Text
"timing" Text -> NetworkResourceTiming -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkResourceTiming -> Pair)
-> Maybe NetworkResourceTiming -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkResponse -> Maybe NetworkResourceTiming
networkResponseTiming NetworkResponse
p),
    (Text
"serviceWorkerResponseSource" Text -> NetworkServiceWorkerResponseSource -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkServiceWorkerResponseSource -> Pair)
-> Maybe NetworkServiceWorkerResponseSource -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkResponse -> Maybe NetworkServiceWorkerResponseSource
networkResponseServiceWorkerResponseSource NetworkResponse
p),
    (Text
"responseTime" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkResponse -> Maybe Double
networkResponseResponseTime NetworkResponse
p),
    (Text
"cacheStorageCacheName" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkResponse -> Maybe Text
networkResponseCacheStorageCacheName NetworkResponse
p),
    (Text
"protocol" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkResponse -> Maybe Text
networkResponseProtocol NetworkResponse
p),
    (Text
"alternateProtocolUsage" Text -> NetworkAlternateProtocolUsage -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkAlternateProtocolUsage -> Pair)
-> Maybe NetworkAlternateProtocolUsage -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkResponse -> Maybe NetworkAlternateProtocolUsage
networkResponseAlternateProtocolUsage NetworkResponse
p),
    (Text
"securityState" Text -> SecuritySecurityState -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (SecuritySecurityState -> Pair)
-> Maybe SecuritySecurityState -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> SecuritySecurityState -> Maybe SecuritySecurityState
forall a. a -> Maybe a
Just (NetworkResponse -> SecuritySecurityState
networkResponseSecurityState NetworkResponse
p),
    (Text
"securityDetails" Text -> NetworkSecurityDetails -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkSecurityDetails -> Pair)
-> Maybe NetworkSecurityDetails -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkResponse -> Maybe NetworkSecurityDetails
networkResponseSecurityDetails NetworkResponse
p)
    ]

-- | Type 'Network.WebSocketRequest'.
--   WebSocket request data.
data NetworkWebSocketRequest = NetworkWebSocketRequest
  {
    -- | HTTP request headers.
    NetworkWebSocketRequest -> NetworkHeaders
networkWebSocketRequestHeaders :: NetworkHeaders
  }
  deriving (NetworkWebSocketRequest -> NetworkWebSocketRequest -> Bool
(NetworkWebSocketRequest -> NetworkWebSocketRequest -> Bool)
-> (NetworkWebSocketRequest -> NetworkWebSocketRequest -> Bool)
-> Eq NetworkWebSocketRequest
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkWebSocketRequest -> NetworkWebSocketRequest -> Bool
$c/= :: NetworkWebSocketRequest -> NetworkWebSocketRequest -> Bool
== :: NetworkWebSocketRequest -> NetworkWebSocketRequest -> Bool
$c== :: NetworkWebSocketRequest -> NetworkWebSocketRequest -> Bool
Eq, Int -> NetworkWebSocketRequest -> ShowS
[NetworkWebSocketRequest] -> ShowS
NetworkWebSocketRequest -> String
(Int -> NetworkWebSocketRequest -> ShowS)
-> (NetworkWebSocketRequest -> String)
-> ([NetworkWebSocketRequest] -> ShowS)
-> Show NetworkWebSocketRequest
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkWebSocketRequest] -> ShowS
$cshowList :: [NetworkWebSocketRequest] -> ShowS
show :: NetworkWebSocketRequest -> String
$cshow :: NetworkWebSocketRequest -> String
showsPrec :: Int -> NetworkWebSocketRequest -> ShowS
$cshowsPrec :: Int -> NetworkWebSocketRequest -> ShowS
Show)
instance FromJSON NetworkWebSocketRequest where
  parseJSON :: Value -> Parser NetworkWebSocketRequest
parseJSON = String
-> (Object -> Parser NetworkWebSocketRequest)
-> Value
-> Parser NetworkWebSocketRequest
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkWebSocketRequest" ((Object -> Parser NetworkWebSocketRequest)
 -> Value -> Parser NetworkWebSocketRequest)
-> (Object -> Parser NetworkWebSocketRequest)
-> Value
-> Parser NetworkWebSocketRequest
forall a b. (a -> b) -> a -> b
$ \Object
o -> NetworkHeaders -> NetworkWebSocketRequest
NetworkWebSocketRequest
    (NetworkHeaders -> NetworkWebSocketRequest)
-> Parser NetworkHeaders -> Parser NetworkWebSocketRequest
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser NetworkHeaders
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"headers"
instance ToJSON NetworkWebSocketRequest where
  toJSON :: NetworkWebSocketRequest -> Value
toJSON NetworkWebSocketRequest
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"headers" Text -> NetworkHeaders -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkHeaders -> Pair) -> Maybe NetworkHeaders -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> NetworkHeaders -> Maybe NetworkHeaders
forall a. a -> Maybe a
Just (NetworkWebSocketRequest -> NetworkHeaders
networkWebSocketRequestHeaders NetworkWebSocketRequest
p)
    ]

-- | Type 'Network.WebSocketResponse'.
--   WebSocket response data.
data NetworkWebSocketResponse = NetworkWebSocketResponse
  {
    -- | HTTP response status code.
    NetworkWebSocketResponse -> Int
networkWebSocketResponseStatus :: Int,
    -- | HTTP response status text.
    NetworkWebSocketResponse -> Text
networkWebSocketResponseStatusText :: T.Text,
    -- | HTTP response headers.
    NetworkWebSocketResponse -> NetworkHeaders
networkWebSocketResponseHeaders :: NetworkHeaders,
    -- | HTTP response headers text.
    NetworkWebSocketResponse -> Maybe Text
networkWebSocketResponseHeadersText :: Maybe T.Text,
    -- | HTTP request headers.
    NetworkWebSocketResponse -> Maybe NetworkHeaders
networkWebSocketResponseRequestHeaders :: Maybe NetworkHeaders,
    -- | HTTP request headers text.
    NetworkWebSocketResponse -> Maybe Text
networkWebSocketResponseRequestHeadersText :: Maybe T.Text
  }
  deriving (NetworkWebSocketResponse -> NetworkWebSocketResponse -> Bool
(NetworkWebSocketResponse -> NetworkWebSocketResponse -> Bool)
-> (NetworkWebSocketResponse -> NetworkWebSocketResponse -> Bool)
-> Eq NetworkWebSocketResponse
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkWebSocketResponse -> NetworkWebSocketResponse -> Bool
$c/= :: NetworkWebSocketResponse -> NetworkWebSocketResponse -> Bool
== :: NetworkWebSocketResponse -> NetworkWebSocketResponse -> Bool
$c== :: NetworkWebSocketResponse -> NetworkWebSocketResponse -> Bool
Eq, Int -> NetworkWebSocketResponse -> ShowS
[NetworkWebSocketResponse] -> ShowS
NetworkWebSocketResponse -> String
(Int -> NetworkWebSocketResponse -> ShowS)
-> (NetworkWebSocketResponse -> String)
-> ([NetworkWebSocketResponse] -> ShowS)
-> Show NetworkWebSocketResponse
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkWebSocketResponse] -> ShowS
$cshowList :: [NetworkWebSocketResponse] -> ShowS
show :: NetworkWebSocketResponse -> String
$cshow :: NetworkWebSocketResponse -> String
showsPrec :: Int -> NetworkWebSocketResponse -> ShowS
$cshowsPrec :: Int -> NetworkWebSocketResponse -> ShowS
Show)
instance FromJSON NetworkWebSocketResponse where
  parseJSON :: Value -> Parser NetworkWebSocketResponse
parseJSON = String
-> (Object -> Parser NetworkWebSocketResponse)
-> Value
-> Parser NetworkWebSocketResponse
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkWebSocketResponse" ((Object -> Parser NetworkWebSocketResponse)
 -> Value -> Parser NetworkWebSocketResponse)
-> (Object -> Parser NetworkWebSocketResponse)
-> Value
-> Parser NetworkWebSocketResponse
forall a b. (a -> b) -> a -> b
$ \Object
o -> Int
-> Text
-> NetworkHeaders
-> Maybe Text
-> Maybe NetworkHeaders
-> Maybe Text
-> NetworkWebSocketResponse
NetworkWebSocketResponse
    (Int
 -> Text
 -> NetworkHeaders
 -> Maybe Text
 -> Maybe NetworkHeaders
 -> Maybe Text
 -> NetworkWebSocketResponse)
-> Parser Int
-> Parser
     (Text
      -> NetworkHeaders
      -> Maybe Text
      -> Maybe NetworkHeaders
      -> Maybe Text
      -> NetworkWebSocketResponse)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"status"
    Parser
  (Text
   -> NetworkHeaders
   -> Maybe Text
   -> Maybe NetworkHeaders
   -> Maybe Text
   -> NetworkWebSocketResponse)
-> Parser Text
-> Parser
     (NetworkHeaders
      -> Maybe Text
      -> Maybe NetworkHeaders
      -> Maybe Text
      -> NetworkWebSocketResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"statusText"
    Parser
  (NetworkHeaders
   -> Maybe Text
   -> Maybe NetworkHeaders
   -> Maybe Text
   -> NetworkWebSocketResponse)
-> Parser NetworkHeaders
-> Parser
     (Maybe Text
      -> Maybe NetworkHeaders -> Maybe Text -> NetworkWebSocketResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser NetworkHeaders
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"headers"
    Parser
  (Maybe Text
   -> Maybe NetworkHeaders -> Maybe Text -> NetworkWebSocketResponse)
-> Parser (Maybe Text)
-> Parser
     (Maybe NetworkHeaders -> Maybe Text -> NetworkWebSocketResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"headersText"
    Parser
  (Maybe NetworkHeaders -> Maybe Text -> NetworkWebSocketResponse)
-> Parser (Maybe NetworkHeaders)
-> Parser (Maybe Text -> NetworkWebSocketResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe NetworkHeaders)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"requestHeaders"
    Parser (Maybe Text -> NetworkWebSocketResponse)
-> Parser (Maybe Text) -> Parser NetworkWebSocketResponse
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"requestHeadersText"
instance ToJSON NetworkWebSocketResponse where
  toJSON :: NetworkWebSocketResponse -> Value
toJSON NetworkWebSocketResponse
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"status" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (NetworkWebSocketResponse -> Int
networkWebSocketResponseStatus NetworkWebSocketResponse
p),
    (Text
"statusText" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkWebSocketResponse -> Text
networkWebSocketResponseStatusText NetworkWebSocketResponse
p),
    (Text
"headers" Text -> NetworkHeaders -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkHeaders -> Pair) -> Maybe NetworkHeaders -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> NetworkHeaders -> Maybe NetworkHeaders
forall a. a -> Maybe a
Just (NetworkWebSocketResponse -> NetworkHeaders
networkWebSocketResponseHeaders NetworkWebSocketResponse
p),
    (Text
"headersText" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkWebSocketResponse -> Maybe Text
networkWebSocketResponseHeadersText NetworkWebSocketResponse
p),
    (Text
"requestHeaders" Text -> NetworkHeaders -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkHeaders -> Pair) -> Maybe NetworkHeaders -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkWebSocketResponse -> Maybe NetworkHeaders
networkWebSocketResponseRequestHeaders NetworkWebSocketResponse
p),
    (Text
"requestHeadersText" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkWebSocketResponse -> Maybe Text
networkWebSocketResponseRequestHeadersText NetworkWebSocketResponse
p)
    ]

-- | Type 'Network.WebSocketFrame'.
--   WebSocket message data. This represents an entire WebSocket message, not just a fragmented frame as the name suggests.
data NetworkWebSocketFrame = NetworkWebSocketFrame
  {
    -- | WebSocket message opcode.
    NetworkWebSocketFrame -> Double
networkWebSocketFrameOpcode :: Double,
    -- | WebSocket message mask.
    NetworkWebSocketFrame -> Bool
networkWebSocketFrameMask :: Bool,
    -- | WebSocket message payload data.
    --   If the opcode is 1, this is a text message and payloadData is a UTF-8 string.
    --   If the opcode isn't 1, then payloadData is a base64 encoded string representing binary data.
    NetworkWebSocketFrame -> Text
networkWebSocketFramePayloadData :: T.Text
  }
  deriving (NetworkWebSocketFrame -> NetworkWebSocketFrame -> Bool
(NetworkWebSocketFrame -> NetworkWebSocketFrame -> Bool)
-> (NetworkWebSocketFrame -> NetworkWebSocketFrame -> Bool)
-> Eq NetworkWebSocketFrame
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkWebSocketFrame -> NetworkWebSocketFrame -> Bool
$c/= :: NetworkWebSocketFrame -> NetworkWebSocketFrame -> Bool
== :: NetworkWebSocketFrame -> NetworkWebSocketFrame -> Bool
$c== :: NetworkWebSocketFrame -> NetworkWebSocketFrame -> Bool
Eq, Int -> NetworkWebSocketFrame -> ShowS
[NetworkWebSocketFrame] -> ShowS
NetworkWebSocketFrame -> String
(Int -> NetworkWebSocketFrame -> ShowS)
-> (NetworkWebSocketFrame -> String)
-> ([NetworkWebSocketFrame] -> ShowS)
-> Show NetworkWebSocketFrame
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkWebSocketFrame] -> ShowS
$cshowList :: [NetworkWebSocketFrame] -> ShowS
show :: NetworkWebSocketFrame -> String
$cshow :: NetworkWebSocketFrame -> String
showsPrec :: Int -> NetworkWebSocketFrame -> ShowS
$cshowsPrec :: Int -> NetworkWebSocketFrame -> ShowS
Show)
instance FromJSON NetworkWebSocketFrame where
  parseJSON :: Value -> Parser NetworkWebSocketFrame
parseJSON = String
-> (Object -> Parser NetworkWebSocketFrame)
-> Value
-> Parser NetworkWebSocketFrame
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkWebSocketFrame" ((Object -> Parser NetworkWebSocketFrame)
 -> Value -> Parser NetworkWebSocketFrame)
-> (Object -> Parser NetworkWebSocketFrame)
-> Value
-> Parser NetworkWebSocketFrame
forall a b. (a -> b) -> a -> b
$ \Object
o -> Double -> Bool -> Text -> NetworkWebSocketFrame
NetworkWebSocketFrame
    (Double -> Bool -> Text -> NetworkWebSocketFrame)
-> Parser Double -> Parser (Bool -> Text -> NetworkWebSocketFrame)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"opcode"
    Parser (Bool -> Text -> NetworkWebSocketFrame)
-> Parser Bool -> Parser (Text -> NetworkWebSocketFrame)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Bool
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"mask"
    Parser (Text -> NetworkWebSocketFrame)
-> Parser Text -> Parser NetworkWebSocketFrame
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"payloadData"
instance ToJSON NetworkWebSocketFrame where
  toJSON :: NetworkWebSocketFrame -> Value
toJSON NetworkWebSocketFrame
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"opcode" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (NetworkWebSocketFrame -> Double
networkWebSocketFrameOpcode NetworkWebSocketFrame
p),
    (Text
"mask" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (NetworkWebSocketFrame -> Bool
networkWebSocketFrameMask NetworkWebSocketFrame
p),
    (Text
"payloadData" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkWebSocketFrame -> Text
networkWebSocketFramePayloadData NetworkWebSocketFrame
p)
    ]

-- | Type 'Network.CachedResource'.
--   Information about the cached resource.
data NetworkCachedResource = NetworkCachedResource
  {
    -- | Resource URL. This is the url of the original network request.
    NetworkCachedResource -> Text
networkCachedResourceUrl :: T.Text,
    -- | Type of this resource.
    NetworkCachedResource -> NetworkResourceType
networkCachedResourceType :: NetworkResourceType,
    -- | Cached response data.
    NetworkCachedResource -> Maybe NetworkResponse
networkCachedResourceResponse :: Maybe NetworkResponse,
    -- | Cached response body size.
    NetworkCachedResource -> Double
networkCachedResourceBodySize :: Double
  }
  deriving (NetworkCachedResource -> NetworkCachedResource -> Bool
(NetworkCachedResource -> NetworkCachedResource -> Bool)
-> (NetworkCachedResource -> NetworkCachedResource -> Bool)
-> Eq NetworkCachedResource
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkCachedResource -> NetworkCachedResource -> Bool
$c/= :: NetworkCachedResource -> NetworkCachedResource -> Bool
== :: NetworkCachedResource -> NetworkCachedResource -> Bool
$c== :: NetworkCachedResource -> NetworkCachedResource -> Bool
Eq, Int -> NetworkCachedResource -> ShowS
[NetworkCachedResource] -> ShowS
NetworkCachedResource -> String
(Int -> NetworkCachedResource -> ShowS)
-> (NetworkCachedResource -> String)
-> ([NetworkCachedResource] -> ShowS)
-> Show NetworkCachedResource
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkCachedResource] -> ShowS
$cshowList :: [NetworkCachedResource] -> ShowS
show :: NetworkCachedResource -> String
$cshow :: NetworkCachedResource -> String
showsPrec :: Int -> NetworkCachedResource -> ShowS
$cshowsPrec :: Int -> NetworkCachedResource -> ShowS
Show)
instance FromJSON NetworkCachedResource where
  parseJSON :: Value -> Parser NetworkCachedResource
parseJSON = String
-> (Object -> Parser NetworkCachedResource)
-> Value
-> Parser NetworkCachedResource
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkCachedResource" ((Object -> Parser NetworkCachedResource)
 -> Value -> Parser NetworkCachedResource)
-> (Object -> Parser NetworkCachedResource)
-> Value
-> Parser NetworkCachedResource
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> NetworkResourceType
-> Maybe NetworkResponse
-> Double
-> NetworkCachedResource
NetworkCachedResource
    (Text
 -> NetworkResourceType
 -> Maybe NetworkResponse
 -> Double
 -> NetworkCachedResource)
-> Parser Text
-> Parser
     (NetworkResourceType
      -> Maybe NetworkResponse -> Double -> NetworkCachedResource)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"url"
    Parser
  (NetworkResourceType
   -> Maybe NetworkResponse -> Double -> NetworkCachedResource)
-> Parser NetworkResourceType
-> Parser
     (Maybe NetworkResponse -> Double -> NetworkCachedResource)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser NetworkResourceType
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"type"
    Parser (Maybe NetworkResponse -> Double -> NetworkCachedResource)
-> Parser (Maybe NetworkResponse)
-> Parser (Double -> NetworkCachedResource)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe NetworkResponse)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"response"
    Parser (Double -> NetworkCachedResource)
-> Parser Double -> Parser NetworkCachedResource
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"bodySize"
instance ToJSON NetworkCachedResource where
  toJSON :: NetworkCachedResource -> Value
toJSON NetworkCachedResource
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"url" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkCachedResource -> Text
networkCachedResourceUrl NetworkCachedResource
p),
    (Text
"type" Text -> NetworkResourceType -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkResourceType -> Pair)
-> Maybe NetworkResourceType -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> NetworkResourceType -> Maybe NetworkResourceType
forall a. a -> Maybe a
Just (NetworkCachedResource -> NetworkResourceType
networkCachedResourceType NetworkCachedResource
p),
    (Text
"response" Text -> NetworkResponse -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkResponse -> Pair) -> Maybe NetworkResponse -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkCachedResource -> Maybe NetworkResponse
networkCachedResourceResponse NetworkCachedResource
p),
    (Text
"bodySize" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (NetworkCachedResource -> Double
networkCachedResourceBodySize NetworkCachedResource
p)
    ]

-- | Type 'Network.Initiator'.
--   Information about the request initiator.
data NetworkInitiatorType = NetworkInitiatorTypeParser | NetworkInitiatorTypeScript | NetworkInitiatorTypePreload | NetworkInitiatorTypeSignedExchange | NetworkInitiatorTypePreflight | NetworkInitiatorTypeOther
  deriving (Eq NetworkInitiatorType
Eq NetworkInitiatorType
-> (NetworkInitiatorType -> NetworkInitiatorType -> Ordering)
-> (NetworkInitiatorType -> NetworkInitiatorType -> Bool)
-> (NetworkInitiatorType -> NetworkInitiatorType -> Bool)
-> (NetworkInitiatorType -> NetworkInitiatorType -> Bool)
-> (NetworkInitiatorType -> NetworkInitiatorType -> Bool)
-> (NetworkInitiatorType
    -> NetworkInitiatorType -> NetworkInitiatorType)
-> (NetworkInitiatorType
    -> NetworkInitiatorType -> NetworkInitiatorType)
-> Ord NetworkInitiatorType
NetworkInitiatorType -> NetworkInitiatorType -> Bool
NetworkInitiatorType -> NetworkInitiatorType -> Ordering
NetworkInitiatorType
-> NetworkInitiatorType -> NetworkInitiatorType
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: NetworkInitiatorType
-> NetworkInitiatorType -> NetworkInitiatorType
$cmin :: NetworkInitiatorType
-> NetworkInitiatorType -> NetworkInitiatorType
max :: NetworkInitiatorType
-> NetworkInitiatorType -> NetworkInitiatorType
$cmax :: NetworkInitiatorType
-> NetworkInitiatorType -> NetworkInitiatorType
>= :: NetworkInitiatorType -> NetworkInitiatorType -> Bool
$c>= :: NetworkInitiatorType -> NetworkInitiatorType -> Bool
> :: NetworkInitiatorType -> NetworkInitiatorType -> Bool
$c> :: NetworkInitiatorType -> NetworkInitiatorType -> Bool
<= :: NetworkInitiatorType -> NetworkInitiatorType -> Bool
$c<= :: NetworkInitiatorType -> NetworkInitiatorType -> Bool
< :: NetworkInitiatorType -> NetworkInitiatorType -> Bool
$c< :: NetworkInitiatorType -> NetworkInitiatorType -> Bool
compare :: NetworkInitiatorType -> NetworkInitiatorType -> Ordering
$ccompare :: NetworkInitiatorType -> NetworkInitiatorType -> Ordering
$cp1Ord :: Eq NetworkInitiatorType
Ord, NetworkInitiatorType -> NetworkInitiatorType -> Bool
(NetworkInitiatorType -> NetworkInitiatorType -> Bool)
-> (NetworkInitiatorType -> NetworkInitiatorType -> Bool)
-> Eq NetworkInitiatorType
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkInitiatorType -> NetworkInitiatorType -> Bool
$c/= :: NetworkInitiatorType -> NetworkInitiatorType -> Bool
== :: NetworkInitiatorType -> NetworkInitiatorType -> Bool
$c== :: NetworkInitiatorType -> NetworkInitiatorType -> Bool
Eq, Int -> NetworkInitiatorType -> ShowS
[NetworkInitiatorType] -> ShowS
NetworkInitiatorType -> String
(Int -> NetworkInitiatorType -> ShowS)
-> (NetworkInitiatorType -> String)
-> ([NetworkInitiatorType] -> ShowS)
-> Show NetworkInitiatorType
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkInitiatorType] -> ShowS
$cshowList :: [NetworkInitiatorType] -> ShowS
show :: NetworkInitiatorType -> String
$cshow :: NetworkInitiatorType -> String
showsPrec :: Int -> NetworkInitiatorType -> ShowS
$cshowsPrec :: Int -> NetworkInitiatorType -> ShowS
Show, ReadPrec [NetworkInitiatorType]
ReadPrec NetworkInitiatorType
Int -> ReadS NetworkInitiatorType
ReadS [NetworkInitiatorType]
(Int -> ReadS NetworkInitiatorType)
-> ReadS [NetworkInitiatorType]
-> ReadPrec NetworkInitiatorType
-> ReadPrec [NetworkInitiatorType]
-> Read NetworkInitiatorType
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [NetworkInitiatorType]
$creadListPrec :: ReadPrec [NetworkInitiatorType]
readPrec :: ReadPrec NetworkInitiatorType
$creadPrec :: ReadPrec NetworkInitiatorType
readList :: ReadS [NetworkInitiatorType]
$creadList :: ReadS [NetworkInitiatorType]
readsPrec :: Int -> ReadS NetworkInitiatorType
$creadsPrec :: Int -> ReadS NetworkInitiatorType
Read)
instance FromJSON NetworkInitiatorType where
  parseJSON :: Value -> Parser NetworkInitiatorType
parseJSON = String
-> (Text -> Parser NetworkInitiatorType)
-> Value
-> Parser NetworkInitiatorType
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"NetworkInitiatorType" ((Text -> Parser NetworkInitiatorType)
 -> Value -> Parser NetworkInitiatorType)
-> (Text -> Parser NetworkInitiatorType)
-> Value
-> Parser NetworkInitiatorType
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"parser" -> NetworkInitiatorType -> Parser NetworkInitiatorType
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkInitiatorType
NetworkInitiatorTypeParser
    Text
"script" -> NetworkInitiatorType -> Parser NetworkInitiatorType
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkInitiatorType
NetworkInitiatorTypeScript
    Text
"preload" -> NetworkInitiatorType -> Parser NetworkInitiatorType
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkInitiatorType
NetworkInitiatorTypePreload
    Text
"SignedExchange" -> NetworkInitiatorType -> Parser NetworkInitiatorType
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkInitiatorType
NetworkInitiatorTypeSignedExchange
    Text
"preflight" -> NetworkInitiatorType -> Parser NetworkInitiatorType
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkInitiatorType
NetworkInitiatorTypePreflight
    Text
"other" -> NetworkInitiatorType -> Parser NetworkInitiatorType
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkInitiatorType
NetworkInitiatorTypeOther
    Text
"_" -> String -> Parser NetworkInitiatorType
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse NetworkInitiatorType"
instance ToJSON NetworkInitiatorType where
  toJSON :: NetworkInitiatorType -> Value
toJSON NetworkInitiatorType
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case NetworkInitiatorType
v of
    NetworkInitiatorType
NetworkInitiatorTypeParser -> Text
"parser"
    NetworkInitiatorType
NetworkInitiatorTypeScript -> Text
"script"
    NetworkInitiatorType
NetworkInitiatorTypePreload -> Text
"preload"
    NetworkInitiatorType
NetworkInitiatorTypeSignedExchange -> Text
"SignedExchange"
    NetworkInitiatorType
NetworkInitiatorTypePreflight -> Text
"preflight"
    NetworkInitiatorType
NetworkInitiatorTypeOther -> Text
"other"
data NetworkInitiator = NetworkInitiator
  {
    -- | Type of this initiator.
    NetworkInitiator -> NetworkInitiatorType
networkInitiatorType :: NetworkInitiatorType,
    -- | Initiator JavaScript stack trace, set for Script only.
    NetworkInitiator -> Maybe RuntimeStackTrace
networkInitiatorStack :: Maybe Runtime.RuntimeStackTrace,
    -- | Initiator URL, set for Parser type or for Script type (when script is importing module) or for SignedExchange type.
    NetworkInitiator -> Maybe Text
networkInitiatorUrl :: Maybe T.Text,
    -- | Initiator line number, set for Parser type or for Script type (when script is importing
    --   module) (0-based).
    NetworkInitiator -> Maybe Double
networkInitiatorLineNumber :: Maybe Double,
    -- | Initiator column number, set for Parser type or for Script type (when script is importing
    --   module) (0-based).
    NetworkInitiator -> Maybe Double
networkInitiatorColumnNumber :: Maybe Double,
    -- | Set if another request triggered this request (e.g. preflight).
    NetworkInitiator -> Maybe Text
networkInitiatorRequestId :: Maybe NetworkRequestId
  }
  deriving (NetworkInitiator -> NetworkInitiator -> Bool
(NetworkInitiator -> NetworkInitiator -> Bool)
-> (NetworkInitiator -> NetworkInitiator -> Bool)
-> Eq NetworkInitiator
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkInitiator -> NetworkInitiator -> Bool
$c/= :: NetworkInitiator -> NetworkInitiator -> Bool
== :: NetworkInitiator -> NetworkInitiator -> Bool
$c== :: NetworkInitiator -> NetworkInitiator -> Bool
Eq, Int -> NetworkInitiator -> ShowS
[NetworkInitiator] -> ShowS
NetworkInitiator -> String
(Int -> NetworkInitiator -> ShowS)
-> (NetworkInitiator -> String)
-> ([NetworkInitiator] -> ShowS)
-> Show NetworkInitiator
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkInitiator] -> ShowS
$cshowList :: [NetworkInitiator] -> ShowS
show :: NetworkInitiator -> String
$cshow :: NetworkInitiator -> String
showsPrec :: Int -> NetworkInitiator -> ShowS
$cshowsPrec :: Int -> NetworkInitiator -> ShowS
Show)
instance FromJSON NetworkInitiator where
  parseJSON :: Value -> Parser NetworkInitiator
parseJSON = String
-> (Object -> Parser NetworkInitiator)
-> Value
-> Parser NetworkInitiator
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkInitiator" ((Object -> Parser NetworkInitiator)
 -> Value -> Parser NetworkInitiator)
-> (Object -> Parser NetworkInitiator)
-> Value
-> Parser NetworkInitiator
forall a b. (a -> b) -> a -> b
$ \Object
o -> NetworkInitiatorType
-> Maybe RuntimeStackTrace
-> Maybe Text
-> Maybe Double
-> Maybe Double
-> Maybe Text
-> NetworkInitiator
NetworkInitiator
    (NetworkInitiatorType
 -> Maybe RuntimeStackTrace
 -> Maybe Text
 -> Maybe Double
 -> Maybe Double
 -> Maybe Text
 -> NetworkInitiator)
-> Parser NetworkInitiatorType
-> Parser
     (Maybe RuntimeStackTrace
      -> Maybe Text
      -> Maybe Double
      -> Maybe Double
      -> Maybe Text
      -> NetworkInitiator)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser NetworkInitiatorType
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"type"
    Parser
  (Maybe RuntimeStackTrace
   -> Maybe Text
   -> Maybe Double
   -> Maybe Double
   -> Maybe Text
   -> NetworkInitiator)
-> Parser (Maybe RuntimeStackTrace)
-> Parser
     (Maybe Text
      -> Maybe Double -> Maybe Double -> Maybe Text -> NetworkInitiator)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe RuntimeStackTrace)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"stack"
    Parser
  (Maybe Text
   -> Maybe Double -> Maybe Double -> Maybe Text -> NetworkInitiator)
-> Parser (Maybe Text)
-> Parser
     (Maybe Double -> Maybe Double -> Maybe Text -> NetworkInitiator)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"url"
    Parser
  (Maybe Double -> Maybe Double -> Maybe Text -> NetworkInitiator)
-> Parser (Maybe Double)
-> Parser (Maybe Double -> Maybe Text -> NetworkInitiator)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Double)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"lineNumber"
    Parser (Maybe Double -> Maybe Text -> NetworkInitiator)
-> Parser (Maybe Double) -> Parser (Maybe Text -> NetworkInitiator)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Double)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"columnNumber"
    Parser (Maybe Text -> NetworkInitiator)
-> Parser (Maybe Text) -> Parser NetworkInitiator
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"requestId"
instance ToJSON NetworkInitiator where
  toJSON :: NetworkInitiator -> Value
toJSON NetworkInitiator
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"type" Text -> NetworkInitiatorType -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkInitiatorType -> Pair)
-> Maybe NetworkInitiatorType -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> NetworkInitiatorType -> Maybe NetworkInitiatorType
forall a. a -> Maybe a
Just (NetworkInitiator -> NetworkInitiatorType
networkInitiatorType NetworkInitiator
p),
    (Text
"stack" Text -> RuntimeStackTrace -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (RuntimeStackTrace -> Pair)
-> Maybe RuntimeStackTrace -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkInitiator -> Maybe RuntimeStackTrace
networkInitiatorStack NetworkInitiator
p),
    (Text
"url" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkInitiator -> Maybe Text
networkInitiatorUrl NetworkInitiator
p),
    (Text
"lineNumber" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkInitiator -> Maybe Double
networkInitiatorLineNumber NetworkInitiator
p),
    (Text
"columnNumber" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkInitiator -> Maybe Double
networkInitiatorColumnNumber NetworkInitiator
p),
    (Text
"requestId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkInitiator -> Maybe Text
networkInitiatorRequestId NetworkInitiator
p)
    ]

-- | Type 'Network.Cookie'.
--   Cookie object
data NetworkCookie = NetworkCookie
  {
    -- | Cookie name.
    NetworkCookie -> Text
networkCookieName :: T.Text,
    -- | Cookie value.
    NetworkCookie -> Text
networkCookieValue :: T.Text,
    -- | Cookie domain.
    NetworkCookie -> Text
networkCookieDomain :: T.Text,
    -- | Cookie path.
    NetworkCookie -> Text
networkCookiePath :: T.Text,
    -- | Cookie expiration date as the number of seconds since the UNIX epoch.
    NetworkCookie -> Double
networkCookieExpires :: Double,
    -- | Cookie size.
    NetworkCookie -> Int
networkCookieSize :: Int,
    -- | True if cookie is http-only.
    NetworkCookie -> Bool
networkCookieHttpOnly :: Bool,
    -- | True if cookie is secure.
    NetworkCookie -> Bool
networkCookieSecure :: Bool,
    -- | True in case of session cookie.
    NetworkCookie -> Bool
networkCookieSession :: Bool,
    -- | Cookie SameSite type.
    NetworkCookie -> Maybe NetworkCookieSameSite
networkCookieSameSite :: Maybe NetworkCookieSameSite,
    -- | Cookie Priority
    NetworkCookie -> NetworkCookiePriority
networkCookiePriority :: NetworkCookiePriority,
    -- | True if cookie is SameParty.
    NetworkCookie -> Bool
networkCookieSameParty :: Bool,
    -- | Cookie source scheme type.
    NetworkCookie -> NetworkCookieSourceScheme
networkCookieSourceScheme :: NetworkCookieSourceScheme,
    -- | Cookie source port. Valid values are {-1, [1, 65535]}, -1 indicates an unspecified port.
    --   An unspecified port value allows protocol clients to emulate legacy cookie scope for the port.
    --   This is a temporary ability and it will be removed in the future.
    NetworkCookie -> Int
networkCookieSourcePort :: Int,
    -- | Cookie partition key. The site of the top-level URL the browser was visiting at the start
    --   of the request to the endpoint that set the cookie.
    NetworkCookie -> Maybe Text
networkCookiePartitionKey :: Maybe T.Text,
    -- | True if cookie partition key is opaque.
    NetworkCookie -> Maybe Bool
networkCookiePartitionKeyOpaque :: Maybe Bool
  }
  deriving (NetworkCookie -> NetworkCookie -> Bool
(NetworkCookie -> NetworkCookie -> Bool)
-> (NetworkCookie -> NetworkCookie -> Bool) -> Eq NetworkCookie
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkCookie -> NetworkCookie -> Bool
$c/= :: NetworkCookie -> NetworkCookie -> Bool
== :: NetworkCookie -> NetworkCookie -> Bool
$c== :: NetworkCookie -> NetworkCookie -> Bool
Eq, Int -> NetworkCookie -> ShowS
[NetworkCookie] -> ShowS
NetworkCookie -> String
(Int -> NetworkCookie -> ShowS)
-> (NetworkCookie -> String)
-> ([NetworkCookie] -> ShowS)
-> Show NetworkCookie
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkCookie] -> ShowS
$cshowList :: [NetworkCookie] -> ShowS
show :: NetworkCookie -> String
$cshow :: NetworkCookie -> String
showsPrec :: Int -> NetworkCookie -> ShowS
$cshowsPrec :: Int -> NetworkCookie -> ShowS
Show)
instance FromJSON NetworkCookie where
  parseJSON :: Value -> Parser NetworkCookie
parseJSON = String
-> (Object -> Parser NetworkCookie)
-> Value
-> Parser NetworkCookie
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkCookie" ((Object -> Parser NetworkCookie) -> Value -> Parser NetworkCookie)
-> (Object -> Parser NetworkCookie)
-> Value
-> Parser NetworkCookie
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> Text
-> Text
-> Text
-> Double
-> Int
-> Bool
-> Bool
-> Bool
-> Maybe NetworkCookieSameSite
-> NetworkCookiePriority
-> Bool
-> NetworkCookieSourceScheme
-> Int
-> Maybe Text
-> Maybe Bool
-> NetworkCookie
NetworkCookie
    (Text
 -> Text
 -> Text
 -> Text
 -> Double
 -> Int
 -> Bool
 -> Bool
 -> Bool
 -> Maybe NetworkCookieSameSite
 -> NetworkCookiePriority
 -> Bool
 -> NetworkCookieSourceScheme
 -> Int
 -> Maybe Text
 -> Maybe Bool
 -> NetworkCookie)
-> Parser Text
-> Parser
     (Text
      -> Text
      -> Text
      -> Double
      -> Int
      -> Bool
      -> Bool
      -> Bool
      -> Maybe NetworkCookieSameSite
      -> NetworkCookiePriority
      -> Bool
      -> NetworkCookieSourceScheme
      -> Int
      -> Maybe Text
      -> Maybe Bool
      -> NetworkCookie)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"name"
    Parser
  (Text
   -> Text
   -> Text
   -> Double
   -> Int
   -> Bool
   -> Bool
   -> Bool
   -> Maybe NetworkCookieSameSite
   -> NetworkCookiePriority
   -> Bool
   -> NetworkCookieSourceScheme
   -> Int
   -> Maybe Text
   -> Maybe Bool
   -> NetworkCookie)
-> Parser Text
-> Parser
     (Text
      -> Text
      -> Double
      -> Int
      -> Bool
      -> Bool
      -> Bool
      -> Maybe NetworkCookieSameSite
      -> NetworkCookiePriority
      -> Bool
      -> NetworkCookieSourceScheme
      -> Int
      -> Maybe Text
      -> Maybe Bool
      -> NetworkCookie)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"value"
    Parser
  (Text
   -> Text
   -> Double
   -> Int
   -> Bool
   -> Bool
   -> Bool
   -> Maybe NetworkCookieSameSite
   -> NetworkCookiePriority
   -> Bool
   -> NetworkCookieSourceScheme
   -> Int
   -> Maybe Text
   -> Maybe Bool
   -> NetworkCookie)
-> Parser Text
-> Parser
     (Text
      -> Double
      -> Int
      -> Bool
      -> Bool
      -> Bool
      -> Maybe NetworkCookieSameSite
      -> NetworkCookiePriority
      -> Bool
      -> NetworkCookieSourceScheme
      -> Int
      -> Maybe Text
      -> Maybe Bool
      -> NetworkCookie)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"domain"
    Parser
  (Text
   -> Double
   -> Int
   -> Bool
   -> Bool
   -> Bool
   -> Maybe NetworkCookieSameSite
   -> NetworkCookiePriority
   -> Bool
   -> NetworkCookieSourceScheme
   -> Int
   -> Maybe Text
   -> Maybe Bool
   -> NetworkCookie)
-> Parser Text
-> Parser
     (Double
      -> Int
      -> Bool
      -> Bool
      -> Bool
      -> Maybe NetworkCookieSameSite
      -> NetworkCookiePriority
      -> Bool
      -> NetworkCookieSourceScheme
      -> Int
      -> Maybe Text
      -> Maybe Bool
      -> NetworkCookie)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"path"
    Parser
  (Double
   -> Int
   -> Bool
   -> Bool
   -> Bool
   -> Maybe NetworkCookieSameSite
   -> NetworkCookiePriority
   -> Bool
   -> NetworkCookieSourceScheme
   -> Int
   -> Maybe Text
   -> Maybe Bool
   -> NetworkCookie)
-> Parser Double
-> Parser
     (Int
      -> Bool
      -> Bool
      -> Bool
      -> Maybe NetworkCookieSameSite
      -> NetworkCookiePriority
      -> Bool
      -> NetworkCookieSourceScheme
      -> Int
      -> Maybe Text
      -> Maybe Bool
      -> NetworkCookie)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"expires"
    Parser
  (Int
   -> Bool
   -> Bool
   -> Bool
   -> Maybe NetworkCookieSameSite
   -> NetworkCookiePriority
   -> Bool
   -> NetworkCookieSourceScheme
   -> Int
   -> Maybe Text
   -> Maybe Bool
   -> NetworkCookie)
-> Parser Int
-> Parser
     (Bool
      -> Bool
      -> Bool
      -> Maybe NetworkCookieSameSite
      -> NetworkCookiePriority
      -> Bool
      -> NetworkCookieSourceScheme
      -> Int
      -> Maybe Text
      -> Maybe Bool
      -> NetworkCookie)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"size"
    Parser
  (Bool
   -> Bool
   -> Bool
   -> Maybe NetworkCookieSameSite
   -> NetworkCookiePriority
   -> Bool
   -> NetworkCookieSourceScheme
   -> Int
   -> Maybe Text
   -> Maybe Bool
   -> NetworkCookie)
-> Parser Bool
-> Parser
     (Bool
      -> Bool
      -> Maybe NetworkCookieSameSite
      -> NetworkCookiePriority
      -> Bool
      -> NetworkCookieSourceScheme
      -> Int
      -> Maybe Text
      -> Maybe Bool
      -> NetworkCookie)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Bool
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"httpOnly"
    Parser
  (Bool
   -> Bool
   -> Maybe NetworkCookieSameSite
   -> NetworkCookiePriority
   -> Bool
   -> NetworkCookieSourceScheme
   -> Int
   -> Maybe Text
   -> Maybe Bool
   -> NetworkCookie)
-> Parser Bool
-> Parser
     (Bool
      -> Maybe NetworkCookieSameSite
      -> NetworkCookiePriority
      -> Bool
      -> NetworkCookieSourceScheme
      -> Int
      -> Maybe Text
      -> Maybe Bool
      -> NetworkCookie)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Bool
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"secure"
    Parser
  (Bool
   -> Maybe NetworkCookieSameSite
   -> NetworkCookiePriority
   -> Bool
   -> NetworkCookieSourceScheme
   -> Int
   -> Maybe Text
   -> Maybe Bool
   -> NetworkCookie)
-> Parser Bool
-> Parser
     (Maybe NetworkCookieSameSite
      -> NetworkCookiePriority
      -> Bool
      -> NetworkCookieSourceScheme
      -> Int
      -> Maybe Text
      -> Maybe Bool
      -> NetworkCookie)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Bool
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"session"
    Parser
  (Maybe NetworkCookieSameSite
   -> NetworkCookiePriority
   -> Bool
   -> NetworkCookieSourceScheme
   -> Int
   -> Maybe Text
   -> Maybe Bool
   -> NetworkCookie)
-> Parser (Maybe NetworkCookieSameSite)
-> Parser
     (NetworkCookiePriority
      -> Bool
      -> NetworkCookieSourceScheme
      -> Int
      -> Maybe Text
      -> Maybe Bool
      -> NetworkCookie)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe NetworkCookieSameSite)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"sameSite"
    Parser
  (NetworkCookiePriority
   -> Bool
   -> NetworkCookieSourceScheme
   -> Int
   -> Maybe Text
   -> Maybe Bool
   -> NetworkCookie)
-> Parser NetworkCookiePriority
-> Parser
     (Bool
      -> NetworkCookieSourceScheme
      -> Int
      -> Maybe Text
      -> Maybe Bool
      -> NetworkCookie)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser NetworkCookiePriority
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"priority"
    Parser
  (Bool
   -> NetworkCookieSourceScheme
   -> Int
   -> Maybe Text
   -> Maybe Bool
   -> NetworkCookie)
-> Parser Bool
-> Parser
     (NetworkCookieSourceScheme
      -> Int -> Maybe Text -> Maybe Bool -> NetworkCookie)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Bool
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"sameParty"
    Parser
  (NetworkCookieSourceScheme
   -> Int -> Maybe Text -> Maybe Bool -> NetworkCookie)
-> Parser NetworkCookieSourceScheme
-> Parser (Int -> Maybe Text -> Maybe Bool -> NetworkCookie)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser NetworkCookieSourceScheme
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"sourceScheme"
    Parser (Int -> Maybe Text -> Maybe Bool -> NetworkCookie)
-> Parser Int -> Parser (Maybe Text -> Maybe Bool -> NetworkCookie)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"sourcePort"
    Parser (Maybe Text -> Maybe Bool -> NetworkCookie)
-> Parser (Maybe Text) -> Parser (Maybe Bool -> NetworkCookie)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"partitionKey"
    Parser (Maybe Bool -> NetworkCookie)
-> Parser (Maybe Bool) -> Parser NetworkCookie
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"partitionKeyOpaque"
instance ToJSON NetworkCookie where
  toJSON :: NetworkCookie -> Value
toJSON NetworkCookie
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"name" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkCookie -> Text
networkCookieName NetworkCookie
p),
    (Text
"value" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkCookie -> Text
networkCookieValue NetworkCookie
p),
    (Text
"domain" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkCookie -> Text
networkCookieDomain NetworkCookie
p),
    (Text
"path" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkCookie -> Text
networkCookiePath NetworkCookie
p),
    (Text
"expires" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (NetworkCookie -> Double
networkCookieExpires NetworkCookie
p),
    (Text
"size" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (NetworkCookie -> Int
networkCookieSize NetworkCookie
p),
    (Text
"httpOnly" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (NetworkCookie -> Bool
networkCookieHttpOnly NetworkCookie
p),
    (Text
"secure" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (NetworkCookie -> Bool
networkCookieSecure NetworkCookie
p),
    (Text
"session" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (NetworkCookie -> Bool
networkCookieSession NetworkCookie
p),
    (Text
"sameSite" Text -> NetworkCookieSameSite -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkCookieSameSite -> Pair)
-> Maybe NetworkCookieSameSite -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkCookie -> Maybe NetworkCookieSameSite
networkCookieSameSite NetworkCookie
p),
    (Text
"priority" Text -> NetworkCookiePriority -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkCookiePriority -> Pair)
-> Maybe NetworkCookiePriority -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> NetworkCookiePriority -> Maybe NetworkCookiePriority
forall a. a -> Maybe a
Just (NetworkCookie -> NetworkCookiePriority
networkCookiePriority NetworkCookie
p),
    (Text
"sameParty" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (NetworkCookie -> Bool
networkCookieSameParty NetworkCookie
p),
    (Text
"sourceScheme" Text -> NetworkCookieSourceScheme -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkCookieSourceScheme -> Pair)
-> Maybe NetworkCookieSourceScheme -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> NetworkCookieSourceScheme -> Maybe NetworkCookieSourceScheme
forall a. a -> Maybe a
Just (NetworkCookie -> NetworkCookieSourceScheme
networkCookieSourceScheme NetworkCookie
p),
    (Text
"sourcePort" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (NetworkCookie -> Int
networkCookieSourcePort NetworkCookie
p),
    (Text
"partitionKey" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkCookie -> Maybe Text
networkCookiePartitionKey NetworkCookie
p),
    (Text
"partitionKeyOpaque" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkCookie -> Maybe Bool
networkCookiePartitionKeyOpaque NetworkCookie
p)
    ]

-- | Type 'Network.SetCookieBlockedReason'.
--   Types of reasons why a cookie may not be stored from a response.
data NetworkSetCookieBlockedReason = NetworkSetCookieBlockedReasonSecureOnly | NetworkSetCookieBlockedReasonSameSiteStrict | NetworkSetCookieBlockedReasonSameSiteLax | NetworkSetCookieBlockedReasonSameSiteUnspecifiedTreatedAsLax | NetworkSetCookieBlockedReasonSameSiteNoneInsecure | NetworkSetCookieBlockedReasonUserPreferences | NetworkSetCookieBlockedReasonSyntaxError | NetworkSetCookieBlockedReasonSchemeNotSupported | NetworkSetCookieBlockedReasonOverwriteSecure | NetworkSetCookieBlockedReasonInvalidDomain | NetworkSetCookieBlockedReasonInvalidPrefix | NetworkSetCookieBlockedReasonUnknownError | NetworkSetCookieBlockedReasonSchemefulSameSiteStrict | NetworkSetCookieBlockedReasonSchemefulSameSiteLax | NetworkSetCookieBlockedReasonSchemefulSameSiteUnspecifiedTreatedAsLax | NetworkSetCookieBlockedReasonSamePartyFromCrossPartyContext | NetworkSetCookieBlockedReasonSamePartyConflictsWithOtherAttributes | NetworkSetCookieBlockedReasonNameValuePairExceedsMaxSize
  deriving (Eq NetworkSetCookieBlockedReason
Eq NetworkSetCookieBlockedReason
-> (NetworkSetCookieBlockedReason
    -> NetworkSetCookieBlockedReason -> Ordering)
-> (NetworkSetCookieBlockedReason
    -> NetworkSetCookieBlockedReason -> Bool)
-> (NetworkSetCookieBlockedReason
    -> NetworkSetCookieBlockedReason -> Bool)
-> (NetworkSetCookieBlockedReason
    -> NetworkSetCookieBlockedReason -> Bool)
-> (NetworkSetCookieBlockedReason
    -> NetworkSetCookieBlockedReason -> Bool)
-> (NetworkSetCookieBlockedReason
    -> NetworkSetCookieBlockedReason -> NetworkSetCookieBlockedReason)
-> (NetworkSetCookieBlockedReason
    -> NetworkSetCookieBlockedReason -> NetworkSetCookieBlockedReason)
-> Ord NetworkSetCookieBlockedReason
NetworkSetCookieBlockedReason
-> NetworkSetCookieBlockedReason -> Bool
NetworkSetCookieBlockedReason
-> NetworkSetCookieBlockedReason -> Ordering
NetworkSetCookieBlockedReason
-> NetworkSetCookieBlockedReason -> NetworkSetCookieBlockedReason
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: NetworkSetCookieBlockedReason
-> NetworkSetCookieBlockedReason -> NetworkSetCookieBlockedReason
$cmin :: NetworkSetCookieBlockedReason
-> NetworkSetCookieBlockedReason -> NetworkSetCookieBlockedReason
max :: NetworkSetCookieBlockedReason
-> NetworkSetCookieBlockedReason -> NetworkSetCookieBlockedReason
$cmax :: NetworkSetCookieBlockedReason
-> NetworkSetCookieBlockedReason -> NetworkSetCookieBlockedReason
>= :: NetworkSetCookieBlockedReason
-> NetworkSetCookieBlockedReason -> Bool
$c>= :: NetworkSetCookieBlockedReason
-> NetworkSetCookieBlockedReason -> Bool
> :: NetworkSetCookieBlockedReason
-> NetworkSetCookieBlockedReason -> Bool
$c> :: NetworkSetCookieBlockedReason
-> NetworkSetCookieBlockedReason -> Bool
<= :: NetworkSetCookieBlockedReason
-> NetworkSetCookieBlockedReason -> Bool
$c<= :: NetworkSetCookieBlockedReason
-> NetworkSetCookieBlockedReason -> Bool
< :: NetworkSetCookieBlockedReason
-> NetworkSetCookieBlockedReason -> Bool
$c< :: NetworkSetCookieBlockedReason
-> NetworkSetCookieBlockedReason -> Bool
compare :: NetworkSetCookieBlockedReason
-> NetworkSetCookieBlockedReason -> Ordering
$ccompare :: NetworkSetCookieBlockedReason
-> NetworkSetCookieBlockedReason -> Ordering
$cp1Ord :: Eq NetworkSetCookieBlockedReason
Ord, NetworkSetCookieBlockedReason
-> NetworkSetCookieBlockedReason -> Bool
(NetworkSetCookieBlockedReason
 -> NetworkSetCookieBlockedReason -> Bool)
-> (NetworkSetCookieBlockedReason
    -> NetworkSetCookieBlockedReason -> Bool)
-> Eq NetworkSetCookieBlockedReason
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkSetCookieBlockedReason
-> NetworkSetCookieBlockedReason -> Bool
$c/= :: NetworkSetCookieBlockedReason
-> NetworkSetCookieBlockedReason -> Bool
== :: NetworkSetCookieBlockedReason
-> NetworkSetCookieBlockedReason -> Bool
$c== :: NetworkSetCookieBlockedReason
-> NetworkSetCookieBlockedReason -> Bool
Eq, Int -> NetworkSetCookieBlockedReason -> ShowS
[NetworkSetCookieBlockedReason] -> ShowS
NetworkSetCookieBlockedReason -> String
(Int -> NetworkSetCookieBlockedReason -> ShowS)
-> (NetworkSetCookieBlockedReason -> String)
-> ([NetworkSetCookieBlockedReason] -> ShowS)
-> Show NetworkSetCookieBlockedReason
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkSetCookieBlockedReason] -> ShowS
$cshowList :: [NetworkSetCookieBlockedReason] -> ShowS
show :: NetworkSetCookieBlockedReason -> String
$cshow :: NetworkSetCookieBlockedReason -> String
showsPrec :: Int -> NetworkSetCookieBlockedReason -> ShowS
$cshowsPrec :: Int -> NetworkSetCookieBlockedReason -> ShowS
Show, ReadPrec [NetworkSetCookieBlockedReason]
ReadPrec NetworkSetCookieBlockedReason
Int -> ReadS NetworkSetCookieBlockedReason
ReadS [NetworkSetCookieBlockedReason]
(Int -> ReadS NetworkSetCookieBlockedReason)
-> ReadS [NetworkSetCookieBlockedReason]
-> ReadPrec NetworkSetCookieBlockedReason
-> ReadPrec [NetworkSetCookieBlockedReason]
-> Read NetworkSetCookieBlockedReason
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [NetworkSetCookieBlockedReason]
$creadListPrec :: ReadPrec [NetworkSetCookieBlockedReason]
readPrec :: ReadPrec NetworkSetCookieBlockedReason
$creadPrec :: ReadPrec NetworkSetCookieBlockedReason
readList :: ReadS [NetworkSetCookieBlockedReason]
$creadList :: ReadS [NetworkSetCookieBlockedReason]
readsPrec :: Int -> ReadS NetworkSetCookieBlockedReason
$creadsPrec :: Int -> ReadS NetworkSetCookieBlockedReason
Read)
instance FromJSON NetworkSetCookieBlockedReason where
  parseJSON :: Value -> Parser NetworkSetCookieBlockedReason
parseJSON = String
-> (Text -> Parser NetworkSetCookieBlockedReason)
-> Value
-> Parser NetworkSetCookieBlockedReason
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"NetworkSetCookieBlockedReason" ((Text -> Parser NetworkSetCookieBlockedReason)
 -> Value -> Parser NetworkSetCookieBlockedReason)
-> (Text -> Parser NetworkSetCookieBlockedReason)
-> Value
-> Parser NetworkSetCookieBlockedReason
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"SecureOnly" -> NetworkSetCookieBlockedReason
-> Parser NetworkSetCookieBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkSetCookieBlockedReason
NetworkSetCookieBlockedReasonSecureOnly
    Text
"SameSiteStrict" -> NetworkSetCookieBlockedReason
-> Parser NetworkSetCookieBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkSetCookieBlockedReason
NetworkSetCookieBlockedReasonSameSiteStrict
    Text
"SameSiteLax" -> NetworkSetCookieBlockedReason
-> Parser NetworkSetCookieBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkSetCookieBlockedReason
NetworkSetCookieBlockedReasonSameSiteLax
    Text
"SameSiteUnspecifiedTreatedAsLax" -> NetworkSetCookieBlockedReason
-> Parser NetworkSetCookieBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkSetCookieBlockedReason
NetworkSetCookieBlockedReasonSameSiteUnspecifiedTreatedAsLax
    Text
"SameSiteNoneInsecure" -> NetworkSetCookieBlockedReason
-> Parser NetworkSetCookieBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkSetCookieBlockedReason
NetworkSetCookieBlockedReasonSameSiteNoneInsecure
    Text
"UserPreferences" -> NetworkSetCookieBlockedReason
-> Parser NetworkSetCookieBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkSetCookieBlockedReason
NetworkSetCookieBlockedReasonUserPreferences
    Text
"SyntaxError" -> NetworkSetCookieBlockedReason
-> Parser NetworkSetCookieBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkSetCookieBlockedReason
NetworkSetCookieBlockedReasonSyntaxError
    Text
"SchemeNotSupported" -> NetworkSetCookieBlockedReason
-> Parser NetworkSetCookieBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkSetCookieBlockedReason
NetworkSetCookieBlockedReasonSchemeNotSupported
    Text
"OverwriteSecure" -> NetworkSetCookieBlockedReason
-> Parser NetworkSetCookieBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkSetCookieBlockedReason
NetworkSetCookieBlockedReasonOverwriteSecure
    Text
"InvalidDomain" -> NetworkSetCookieBlockedReason
-> Parser NetworkSetCookieBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkSetCookieBlockedReason
NetworkSetCookieBlockedReasonInvalidDomain
    Text
"InvalidPrefix" -> NetworkSetCookieBlockedReason
-> Parser NetworkSetCookieBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkSetCookieBlockedReason
NetworkSetCookieBlockedReasonInvalidPrefix
    Text
"UnknownError" -> NetworkSetCookieBlockedReason
-> Parser NetworkSetCookieBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkSetCookieBlockedReason
NetworkSetCookieBlockedReasonUnknownError
    Text
"SchemefulSameSiteStrict" -> NetworkSetCookieBlockedReason
-> Parser NetworkSetCookieBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkSetCookieBlockedReason
NetworkSetCookieBlockedReasonSchemefulSameSiteStrict
    Text
"SchemefulSameSiteLax" -> NetworkSetCookieBlockedReason
-> Parser NetworkSetCookieBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkSetCookieBlockedReason
NetworkSetCookieBlockedReasonSchemefulSameSiteLax
    Text
"SchemefulSameSiteUnspecifiedTreatedAsLax" -> NetworkSetCookieBlockedReason
-> Parser NetworkSetCookieBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkSetCookieBlockedReason
NetworkSetCookieBlockedReasonSchemefulSameSiteUnspecifiedTreatedAsLax
    Text
"SamePartyFromCrossPartyContext" -> NetworkSetCookieBlockedReason
-> Parser NetworkSetCookieBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkSetCookieBlockedReason
NetworkSetCookieBlockedReasonSamePartyFromCrossPartyContext
    Text
"SamePartyConflictsWithOtherAttributes" -> NetworkSetCookieBlockedReason
-> Parser NetworkSetCookieBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkSetCookieBlockedReason
NetworkSetCookieBlockedReasonSamePartyConflictsWithOtherAttributes
    Text
"NameValuePairExceedsMaxSize" -> NetworkSetCookieBlockedReason
-> Parser NetworkSetCookieBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkSetCookieBlockedReason
NetworkSetCookieBlockedReasonNameValuePairExceedsMaxSize
    Text
"_" -> String -> Parser NetworkSetCookieBlockedReason
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse NetworkSetCookieBlockedReason"
instance ToJSON NetworkSetCookieBlockedReason where
  toJSON :: NetworkSetCookieBlockedReason -> Value
toJSON NetworkSetCookieBlockedReason
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case NetworkSetCookieBlockedReason
v of
    NetworkSetCookieBlockedReason
NetworkSetCookieBlockedReasonSecureOnly -> Text
"SecureOnly"
    NetworkSetCookieBlockedReason
NetworkSetCookieBlockedReasonSameSiteStrict -> Text
"SameSiteStrict"
    NetworkSetCookieBlockedReason
NetworkSetCookieBlockedReasonSameSiteLax -> Text
"SameSiteLax"
    NetworkSetCookieBlockedReason
NetworkSetCookieBlockedReasonSameSiteUnspecifiedTreatedAsLax -> Text
"SameSiteUnspecifiedTreatedAsLax"
    NetworkSetCookieBlockedReason
NetworkSetCookieBlockedReasonSameSiteNoneInsecure -> Text
"SameSiteNoneInsecure"
    NetworkSetCookieBlockedReason
NetworkSetCookieBlockedReasonUserPreferences -> Text
"UserPreferences"
    NetworkSetCookieBlockedReason
NetworkSetCookieBlockedReasonSyntaxError -> Text
"SyntaxError"
    NetworkSetCookieBlockedReason
NetworkSetCookieBlockedReasonSchemeNotSupported -> Text
"SchemeNotSupported"
    NetworkSetCookieBlockedReason
NetworkSetCookieBlockedReasonOverwriteSecure -> Text
"OverwriteSecure"
    NetworkSetCookieBlockedReason
NetworkSetCookieBlockedReasonInvalidDomain -> Text
"InvalidDomain"
    NetworkSetCookieBlockedReason
NetworkSetCookieBlockedReasonInvalidPrefix -> Text
"InvalidPrefix"
    NetworkSetCookieBlockedReason
NetworkSetCookieBlockedReasonUnknownError -> Text
"UnknownError"
    NetworkSetCookieBlockedReason
NetworkSetCookieBlockedReasonSchemefulSameSiteStrict -> Text
"SchemefulSameSiteStrict"
    NetworkSetCookieBlockedReason
NetworkSetCookieBlockedReasonSchemefulSameSiteLax -> Text
"SchemefulSameSiteLax"
    NetworkSetCookieBlockedReason
NetworkSetCookieBlockedReasonSchemefulSameSiteUnspecifiedTreatedAsLax -> Text
"SchemefulSameSiteUnspecifiedTreatedAsLax"
    NetworkSetCookieBlockedReason
NetworkSetCookieBlockedReasonSamePartyFromCrossPartyContext -> Text
"SamePartyFromCrossPartyContext"
    NetworkSetCookieBlockedReason
NetworkSetCookieBlockedReasonSamePartyConflictsWithOtherAttributes -> Text
"SamePartyConflictsWithOtherAttributes"
    NetworkSetCookieBlockedReason
NetworkSetCookieBlockedReasonNameValuePairExceedsMaxSize -> Text
"NameValuePairExceedsMaxSize"

-- | Type 'Network.CookieBlockedReason'.
--   Types of reasons why a cookie may not be sent with a request.
data NetworkCookieBlockedReason = NetworkCookieBlockedReasonSecureOnly | NetworkCookieBlockedReasonNotOnPath | NetworkCookieBlockedReasonDomainMismatch | NetworkCookieBlockedReasonSameSiteStrict | NetworkCookieBlockedReasonSameSiteLax | NetworkCookieBlockedReasonSameSiteUnspecifiedTreatedAsLax | NetworkCookieBlockedReasonSameSiteNoneInsecure | NetworkCookieBlockedReasonUserPreferences | NetworkCookieBlockedReasonUnknownError | NetworkCookieBlockedReasonSchemefulSameSiteStrict | NetworkCookieBlockedReasonSchemefulSameSiteLax | NetworkCookieBlockedReasonSchemefulSameSiteUnspecifiedTreatedAsLax | NetworkCookieBlockedReasonSamePartyFromCrossPartyContext | NetworkCookieBlockedReasonNameValuePairExceedsMaxSize
  deriving (Eq NetworkCookieBlockedReason
Eq NetworkCookieBlockedReason
-> (NetworkCookieBlockedReason
    -> NetworkCookieBlockedReason -> Ordering)
-> (NetworkCookieBlockedReason
    -> NetworkCookieBlockedReason -> Bool)
-> (NetworkCookieBlockedReason
    -> NetworkCookieBlockedReason -> Bool)
-> (NetworkCookieBlockedReason
    -> NetworkCookieBlockedReason -> Bool)
-> (NetworkCookieBlockedReason
    -> NetworkCookieBlockedReason -> Bool)
-> (NetworkCookieBlockedReason
    -> NetworkCookieBlockedReason -> NetworkCookieBlockedReason)
-> (NetworkCookieBlockedReason
    -> NetworkCookieBlockedReason -> NetworkCookieBlockedReason)
-> Ord NetworkCookieBlockedReason
NetworkCookieBlockedReason -> NetworkCookieBlockedReason -> Bool
NetworkCookieBlockedReason
-> NetworkCookieBlockedReason -> Ordering
NetworkCookieBlockedReason
-> NetworkCookieBlockedReason -> NetworkCookieBlockedReason
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: NetworkCookieBlockedReason
-> NetworkCookieBlockedReason -> NetworkCookieBlockedReason
$cmin :: NetworkCookieBlockedReason
-> NetworkCookieBlockedReason -> NetworkCookieBlockedReason
max :: NetworkCookieBlockedReason
-> NetworkCookieBlockedReason -> NetworkCookieBlockedReason
$cmax :: NetworkCookieBlockedReason
-> NetworkCookieBlockedReason -> NetworkCookieBlockedReason
>= :: NetworkCookieBlockedReason -> NetworkCookieBlockedReason -> Bool
$c>= :: NetworkCookieBlockedReason -> NetworkCookieBlockedReason -> Bool
> :: NetworkCookieBlockedReason -> NetworkCookieBlockedReason -> Bool
$c> :: NetworkCookieBlockedReason -> NetworkCookieBlockedReason -> Bool
<= :: NetworkCookieBlockedReason -> NetworkCookieBlockedReason -> Bool
$c<= :: NetworkCookieBlockedReason -> NetworkCookieBlockedReason -> Bool
< :: NetworkCookieBlockedReason -> NetworkCookieBlockedReason -> Bool
$c< :: NetworkCookieBlockedReason -> NetworkCookieBlockedReason -> Bool
compare :: NetworkCookieBlockedReason
-> NetworkCookieBlockedReason -> Ordering
$ccompare :: NetworkCookieBlockedReason
-> NetworkCookieBlockedReason -> Ordering
$cp1Ord :: Eq NetworkCookieBlockedReason
Ord, NetworkCookieBlockedReason -> NetworkCookieBlockedReason -> Bool
(NetworkCookieBlockedReason -> NetworkCookieBlockedReason -> Bool)
-> (NetworkCookieBlockedReason
    -> NetworkCookieBlockedReason -> Bool)
-> Eq NetworkCookieBlockedReason
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkCookieBlockedReason -> NetworkCookieBlockedReason -> Bool
$c/= :: NetworkCookieBlockedReason -> NetworkCookieBlockedReason -> Bool
== :: NetworkCookieBlockedReason -> NetworkCookieBlockedReason -> Bool
$c== :: NetworkCookieBlockedReason -> NetworkCookieBlockedReason -> Bool
Eq, Int -> NetworkCookieBlockedReason -> ShowS
[NetworkCookieBlockedReason] -> ShowS
NetworkCookieBlockedReason -> String
(Int -> NetworkCookieBlockedReason -> ShowS)
-> (NetworkCookieBlockedReason -> String)
-> ([NetworkCookieBlockedReason] -> ShowS)
-> Show NetworkCookieBlockedReason
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkCookieBlockedReason] -> ShowS
$cshowList :: [NetworkCookieBlockedReason] -> ShowS
show :: NetworkCookieBlockedReason -> String
$cshow :: NetworkCookieBlockedReason -> String
showsPrec :: Int -> NetworkCookieBlockedReason -> ShowS
$cshowsPrec :: Int -> NetworkCookieBlockedReason -> ShowS
Show, ReadPrec [NetworkCookieBlockedReason]
ReadPrec NetworkCookieBlockedReason
Int -> ReadS NetworkCookieBlockedReason
ReadS [NetworkCookieBlockedReason]
(Int -> ReadS NetworkCookieBlockedReason)
-> ReadS [NetworkCookieBlockedReason]
-> ReadPrec NetworkCookieBlockedReason
-> ReadPrec [NetworkCookieBlockedReason]
-> Read NetworkCookieBlockedReason
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [NetworkCookieBlockedReason]
$creadListPrec :: ReadPrec [NetworkCookieBlockedReason]
readPrec :: ReadPrec NetworkCookieBlockedReason
$creadPrec :: ReadPrec NetworkCookieBlockedReason
readList :: ReadS [NetworkCookieBlockedReason]
$creadList :: ReadS [NetworkCookieBlockedReason]
readsPrec :: Int -> ReadS NetworkCookieBlockedReason
$creadsPrec :: Int -> ReadS NetworkCookieBlockedReason
Read)
instance FromJSON NetworkCookieBlockedReason where
  parseJSON :: Value -> Parser NetworkCookieBlockedReason
parseJSON = String
-> (Text -> Parser NetworkCookieBlockedReason)
-> Value
-> Parser NetworkCookieBlockedReason
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"NetworkCookieBlockedReason" ((Text -> Parser NetworkCookieBlockedReason)
 -> Value -> Parser NetworkCookieBlockedReason)
-> (Text -> Parser NetworkCookieBlockedReason)
-> Value
-> Parser NetworkCookieBlockedReason
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"SecureOnly" -> NetworkCookieBlockedReason -> Parser NetworkCookieBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCookieBlockedReason
NetworkCookieBlockedReasonSecureOnly
    Text
"NotOnPath" -> NetworkCookieBlockedReason -> Parser NetworkCookieBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCookieBlockedReason
NetworkCookieBlockedReasonNotOnPath
    Text
"DomainMismatch" -> NetworkCookieBlockedReason -> Parser NetworkCookieBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCookieBlockedReason
NetworkCookieBlockedReasonDomainMismatch
    Text
"SameSiteStrict" -> NetworkCookieBlockedReason -> Parser NetworkCookieBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCookieBlockedReason
NetworkCookieBlockedReasonSameSiteStrict
    Text
"SameSiteLax" -> NetworkCookieBlockedReason -> Parser NetworkCookieBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCookieBlockedReason
NetworkCookieBlockedReasonSameSiteLax
    Text
"SameSiteUnspecifiedTreatedAsLax" -> NetworkCookieBlockedReason -> Parser NetworkCookieBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCookieBlockedReason
NetworkCookieBlockedReasonSameSiteUnspecifiedTreatedAsLax
    Text
"SameSiteNoneInsecure" -> NetworkCookieBlockedReason -> Parser NetworkCookieBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCookieBlockedReason
NetworkCookieBlockedReasonSameSiteNoneInsecure
    Text
"UserPreferences" -> NetworkCookieBlockedReason -> Parser NetworkCookieBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCookieBlockedReason
NetworkCookieBlockedReasonUserPreferences
    Text
"UnknownError" -> NetworkCookieBlockedReason -> Parser NetworkCookieBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCookieBlockedReason
NetworkCookieBlockedReasonUnknownError
    Text
"SchemefulSameSiteStrict" -> NetworkCookieBlockedReason -> Parser NetworkCookieBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCookieBlockedReason
NetworkCookieBlockedReasonSchemefulSameSiteStrict
    Text
"SchemefulSameSiteLax" -> NetworkCookieBlockedReason -> Parser NetworkCookieBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCookieBlockedReason
NetworkCookieBlockedReasonSchemefulSameSiteLax
    Text
"SchemefulSameSiteUnspecifiedTreatedAsLax" -> NetworkCookieBlockedReason -> Parser NetworkCookieBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCookieBlockedReason
NetworkCookieBlockedReasonSchemefulSameSiteUnspecifiedTreatedAsLax
    Text
"SamePartyFromCrossPartyContext" -> NetworkCookieBlockedReason -> Parser NetworkCookieBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCookieBlockedReason
NetworkCookieBlockedReasonSamePartyFromCrossPartyContext
    Text
"NameValuePairExceedsMaxSize" -> NetworkCookieBlockedReason -> Parser NetworkCookieBlockedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCookieBlockedReason
NetworkCookieBlockedReasonNameValuePairExceedsMaxSize
    Text
"_" -> String -> Parser NetworkCookieBlockedReason
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse NetworkCookieBlockedReason"
instance ToJSON NetworkCookieBlockedReason where
  toJSON :: NetworkCookieBlockedReason -> Value
toJSON NetworkCookieBlockedReason
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case NetworkCookieBlockedReason
v of
    NetworkCookieBlockedReason
NetworkCookieBlockedReasonSecureOnly -> Text
"SecureOnly"
    NetworkCookieBlockedReason
NetworkCookieBlockedReasonNotOnPath -> Text
"NotOnPath"
    NetworkCookieBlockedReason
NetworkCookieBlockedReasonDomainMismatch -> Text
"DomainMismatch"
    NetworkCookieBlockedReason
NetworkCookieBlockedReasonSameSiteStrict -> Text
"SameSiteStrict"
    NetworkCookieBlockedReason
NetworkCookieBlockedReasonSameSiteLax -> Text
"SameSiteLax"
    NetworkCookieBlockedReason
NetworkCookieBlockedReasonSameSiteUnspecifiedTreatedAsLax -> Text
"SameSiteUnspecifiedTreatedAsLax"
    NetworkCookieBlockedReason
NetworkCookieBlockedReasonSameSiteNoneInsecure -> Text
"SameSiteNoneInsecure"
    NetworkCookieBlockedReason
NetworkCookieBlockedReasonUserPreferences -> Text
"UserPreferences"
    NetworkCookieBlockedReason
NetworkCookieBlockedReasonUnknownError -> Text
"UnknownError"
    NetworkCookieBlockedReason
NetworkCookieBlockedReasonSchemefulSameSiteStrict -> Text
"SchemefulSameSiteStrict"
    NetworkCookieBlockedReason
NetworkCookieBlockedReasonSchemefulSameSiteLax -> Text
"SchemefulSameSiteLax"
    NetworkCookieBlockedReason
NetworkCookieBlockedReasonSchemefulSameSiteUnspecifiedTreatedAsLax -> Text
"SchemefulSameSiteUnspecifiedTreatedAsLax"
    NetworkCookieBlockedReason
NetworkCookieBlockedReasonSamePartyFromCrossPartyContext -> Text
"SamePartyFromCrossPartyContext"
    NetworkCookieBlockedReason
NetworkCookieBlockedReasonNameValuePairExceedsMaxSize -> Text
"NameValuePairExceedsMaxSize"

-- | Type 'Network.BlockedSetCookieWithReason'.
--   A cookie which was not stored from a response with the corresponding reason.
data NetworkBlockedSetCookieWithReason = NetworkBlockedSetCookieWithReason
  {
    -- | The reason(s) this cookie was blocked.
    NetworkBlockedSetCookieWithReason
-> [NetworkSetCookieBlockedReason]
networkBlockedSetCookieWithReasonBlockedReasons :: [NetworkSetCookieBlockedReason],
    -- | The string representing this individual cookie as it would appear in the header.
    --   This is not the entire "cookie" or "set-cookie" header which could have multiple cookies.
    NetworkBlockedSetCookieWithReason -> Text
networkBlockedSetCookieWithReasonCookieLine :: T.Text,
    -- | The cookie object which represents the cookie which was not stored. It is optional because
    --   sometimes complete cookie information is not available, such as in the case of parsing
    --   errors.
    NetworkBlockedSetCookieWithReason -> Maybe NetworkCookie
networkBlockedSetCookieWithReasonCookie :: Maybe NetworkCookie
  }
  deriving (NetworkBlockedSetCookieWithReason
-> NetworkBlockedSetCookieWithReason -> Bool
(NetworkBlockedSetCookieWithReason
 -> NetworkBlockedSetCookieWithReason -> Bool)
-> (NetworkBlockedSetCookieWithReason
    -> NetworkBlockedSetCookieWithReason -> Bool)
-> Eq NetworkBlockedSetCookieWithReason
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkBlockedSetCookieWithReason
-> NetworkBlockedSetCookieWithReason -> Bool
$c/= :: NetworkBlockedSetCookieWithReason
-> NetworkBlockedSetCookieWithReason -> Bool
== :: NetworkBlockedSetCookieWithReason
-> NetworkBlockedSetCookieWithReason -> Bool
$c== :: NetworkBlockedSetCookieWithReason
-> NetworkBlockedSetCookieWithReason -> Bool
Eq, Int -> NetworkBlockedSetCookieWithReason -> ShowS
[NetworkBlockedSetCookieWithReason] -> ShowS
NetworkBlockedSetCookieWithReason -> String
(Int -> NetworkBlockedSetCookieWithReason -> ShowS)
-> (NetworkBlockedSetCookieWithReason -> String)
-> ([NetworkBlockedSetCookieWithReason] -> ShowS)
-> Show NetworkBlockedSetCookieWithReason
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkBlockedSetCookieWithReason] -> ShowS
$cshowList :: [NetworkBlockedSetCookieWithReason] -> ShowS
show :: NetworkBlockedSetCookieWithReason -> String
$cshow :: NetworkBlockedSetCookieWithReason -> String
showsPrec :: Int -> NetworkBlockedSetCookieWithReason -> ShowS
$cshowsPrec :: Int -> NetworkBlockedSetCookieWithReason -> ShowS
Show)
instance FromJSON NetworkBlockedSetCookieWithReason where
  parseJSON :: Value -> Parser NetworkBlockedSetCookieWithReason
parseJSON = String
-> (Object -> Parser NetworkBlockedSetCookieWithReason)
-> Value
-> Parser NetworkBlockedSetCookieWithReason
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkBlockedSetCookieWithReason" ((Object -> Parser NetworkBlockedSetCookieWithReason)
 -> Value -> Parser NetworkBlockedSetCookieWithReason)
-> (Object -> Parser NetworkBlockedSetCookieWithReason)
-> Value
-> Parser NetworkBlockedSetCookieWithReason
forall a b. (a -> b) -> a -> b
$ \Object
o -> [NetworkSetCookieBlockedReason]
-> Text -> Maybe NetworkCookie -> NetworkBlockedSetCookieWithReason
NetworkBlockedSetCookieWithReason
    ([NetworkSetCookieBlockedReason]
 -> Text
 -> Maybe NetworkCookie
 -> NetworkBlockedSetCookieWithReason)
-> Parser [NetworkSetCookieBlockedReason]
-> Parser
     (Text -> Maybe NetworkCookie -> NetworkBlockedSetCookieWithReason)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser [NetworkSetCookieBlockedReason]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"blockedReasons"
    Parser
  (Text -> Maybe NetworkCookie -> NetworkBlockedSetCookieWithReason)
-> Parser Text
-> Parser
     (Maybe NetworkCookie -> NetworkBlockedSetCookieWithReason)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"cookieLine"
    Parser (Maybe NetworkCookie -> NetworkBlockedSetCookieWithReason)
-> Parser (Maybe NetworkCookie)
-> Parser NetworkBlockedSetCookieWithReason
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe NetworkCookie)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"cookie"
instance ToJSON NetworkBlockedSetCookieWithReason where
  toJSON :: NetworkBlockedSetCookieWithReason -> Value
toJSON NetworkBlockedSetCookieWithReason
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"blockedReasons" Text -> [NetworkSetCookieBlockedReason] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([NetworkSetCookieBlockedReason] -> Pair)
-> Maybe [NetworkSetCookieBlockedReason] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> [NetworkSetCookieBlockedReason]
-> Maybe [NetworkSetCookieBlockedReason]
forall a. a -> Maybe a
Just (NetworkBlockedSetCookieWithReason
-> [NetworkSetCookieBlockedReason]
networkBlockedSetCookieWithReasonBlockedReasons NetworkBlockedSetCookieWithReason
p),
    (Text
"cookieLine" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkBlockedSetCookieWithReason -> Text
networkBlockedSetCookieWithReasonCookieLine NetworkBlockedSetCookieWithReason
p),
    (Text
"cookie" Text -> NetworkCookie -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkCookie -> Pair) -> Maybe NetworkCookie -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkBlockedSetCookieWithReason -> Maybe NetworkCookie
networkBlockedSetCookieWithReasonCookie NetworkBlockedSetCookieWithReason
p)
    ]

-- | Type 'Network.BlockedCookieWithReason'.
--   A cookie with was not sent with a request with the corresponding reason.
data NetworkBlockedCookieWithReason = NetworkBlockedCookieWithReason
  {
    -- | The reason(s) the cookie was blocked.
    NetworkBlockedCookieWithReason -> [NetworkCookieBlockedReason]
networkBlockedCookieWithReasonBlockedReasons :: [NetworkCookieBlockedReason],
    -- | The cookie object representing the cookie which was not sent.
    NetworkBlockedCookieWithReason -> NetworkCookie
networkBlockedCookieWithReasonCookie :: NetworkCookie
  }
  deriving (NetworkBlockedCookieWithReason
-> NetworkBlockedCookieWithReason -> Bool
(NetworkBlockedCookieWithReason
 -> NetworkBlockedCookieWithReason -> Bool)
-> (NetworkBlockedCookieWithReason
    -> NetworkBlockedCookieWithReason -> Bool)
-> Eq NetworkBlockedCookieWithReason
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkBlockedCookieWithReason
-> NetworkBlockedCookieWithReason -> Bool
$c/= :: NetworkBlockedCookieWithReason
-> NetworkBlockedCookieWithReason -> Bool
== :: NetworkBlockedCookieWithReason
-> NetworkBlockedCookieWithReason -> Bool
$c== :: NetworkBlockedCookieWithReason
-> NetworkBlockedCookieWithReason -> Bool
Eq, Int -> NetworkBlockedCookieWithReason -> ShowS
[NetworkBlockedCookieWithReason] -> ShowS
NetworkBlockedCookieWithReason -> String
(Int -> NetworkBlockedCookieWithReason -> ShowS)
-> (NetworkBlockedCookieWithReason -> String)
-> ([NetworkBlockedCookieWithReason] -> ShowS)
-> Show NetworkBlockedCookieWithReason
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkBlockedCookieWithReason] -> ShowS
$cshowList :: [NetworkBlockedCookieWithReason] -> ShowS
show :: NetworkBlockedCookieWithReason -> String
$cshow :: NetworkBlockedCookieWithReason -> String
showsPrec :: Int -> NetworkBlockedCookieWithReason -> ShowS
$cshowsPrec :: Int -> NetworkBlockedCookieWithReason -> ShowS
Show)
instance FromJSON NetworkBlockedCookieWithReason where
  parseJSON :: Value -> Parser NetworkBlockedCookieWithReason
parseJSON = String
-> (Object -> Parser NetworkBlockedCookieWithReason)
-> Value
-> Parser NetworkBlockedCookieWithReason
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkBlockedCookieWithReason" ((Object -> Parser NetworkBlockedCookieWithReason)
 -> Value -> Parser NetworkBlockedCookieWithReason)
-> (Object -> Parser NetworkBlockedCookieWithReason)
-> Value
-> Parser NetworkBlockedCookieWithReason
forall a b. (a -> b) -> a -> b
$ \Object
o -> [NetworkCookieBlockedReason]
-> NetworkCookie -> NetworkBlockedCookieWithReason
NetworkBlockedCookieWithReason
    ([NetworkCookieBlockedReason]
 -> NetworkCookie -> NetworkBlockedCookieWithReason)
-> Parser [NetworkCookieBlockedReason]
-> Parser (NetworkCookie -> NetworkBlockedCookieWithReason)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser [NetworkCookieBlockedReason]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"blockedReasons"
    Parser (NetworkCookie -> NetworkBlockedCookieWithReason)
-> Parser NetworkCookie -> Parser NetworkBlockedCookieWithReason
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser NetworkCookie
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"cookie"
instance ToJSON NetworkBlockedCookieWithReason where
  toJSON :: NetworkBlockedCookieWithReason -> Value
toJSON NetworkBlockedCookieWithReason
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"blockedReasons" Text -> [NetworkCookieBlockedReason] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([NetworkCookieBlockedReason] -> Pair)
-> Maybe [NetworkCookieBlockedReason] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> [NetworkCookieBlockedReason] -> Maybe [NetworkCookieBlockedReason]
forall a. a -> Maybe a
Just (NetworkBlockedCookieWithReason -> [NetworkCookieBlockedReason]
networkBlockedCookieWithReasonBlockedReasons NetworkBlockedCookieWithReason
p),
    (Text
"cookie" Text -> NetworkCookie -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkCookie -> Pair) -> Maybe NetworkCookie -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> NetworkCookie -> Maybe NetworkCookie
forall a. a -> Maybe a
Just (NetworkBlockedCookieWithReason -> NetworkCookie
networkBlockedCookieWithReasonCookie NetworkBlockedCookieWithReason
p)
    ]

-- | Type 'Network.CookieParam'.
--   Cookie parameter object
data NetworkCookieParam = NetworkCookieParam
  {
    -- | Cookie name.
    NetworkCookieParam -> Text
networkCookieParamName :: T.Text,
    -- | Cookie value.
    NetworkCookieParam -> Text
networkCookieParamValue :: T.Text,
    -- | The request-URI to associate with the setting of the cookie. This value can affect the
    --   default domain, path, source port, and source scheme values of the created cookie.
    NetworkCookieParam -> Maybe Text
networkCookieParamUrl :: Maybe T.Text,
    -- | Cookie domain.
    NetworkCookieParam -> Maybe Text
networkCookieParamDomain :: Maybe T.Text,
    -- | Cookie path.
    NetworkCookieParam -> Maybe Text
networkCookieParamPath :: Maybe T.Text,
    -- | True if cookie is secure.
    NetworkCookieParam -> Maybe Bool
networkCookieParamSecure :: Maybe Bool,
    -- | True if cookie is http-only.
    NetworkCookieParam -> Maybe Bool
networkCookieParamHttpOnly :: Maybe Bool,
    -- | Cookie SameSite type.
    NetworkCookieParam -> Maybe NetworkCookieSameSite
networkCookieParamSameSite :: Maybe NetworkCookieSameSite,
    -- | Cookie expiration date, session cookie if not set
    NetworkCookieParam -> Maybe Double
networkCookieParamExpires :: Maybe NetworkTimeSinceEpoch,
    -- | Cookie Priority.
    NetworkCookieParam -> Maybe NetworkCookiePriority
networkCookieParamPriority :: Maybe NetworkCookiePriority,
    -- | True if cookie is SameParty.
    NetworkCookieParam -> Maybe Bool
networkCookieParamSameParty :: Maybe Bool,
    -- | Cookie source scheme type.
    NetworkCookieParam -> Maybe NetworkCookieSourceScheme
networkCookieParamSourceScheme :: Maybe NetworkCookieSourceScheme,
    -- | Cookie source port. Valid values are {-1, [1, 65535]}, -1 indicates an unspecified port.
    --   An unspecified port value allows protocol clients to emulate legacy cookie scope for the port.
    --   This is a temporary ability and it will be removed in the future.
    NetworkCookieParam -> Maybe Int
networkCookieParamSourcePort :: Maybe Int,
    -- | Cookie partition key. The site of the top-level URL the browser was visiting at the start
    --   of the request to the endpoint that set the cookie.
    --   If not set, the cookie will be set as not partitioned.
    NetworkCookieParam -> Maybe Text
networkCookieParamPartitionKey :: Maybe T.Text
  }
  deriving (NetworkCookieParam -> NetworkCookieParam -> Bool
(NetworkCookieParam -> NetworkCookieParam -> Bool)
-> (NetworkCookieParam -> NetworkCookieParam -> Bool)
-> Eq NetworkCookieParam
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkCookieParam -> NetworkCookieParam -> Bool
$c/= :: NetworkCookieParam -> NetworkCookieParam -> Bool
== :: NetworkCookieParam -> NetworkCookieParam -> Bool
$c== :: NetworkCookieParam -> NetworkCookieParam -> Bool
Eq, Int -> NetworkCookieParam -> ShowS
[NetworkCookieParam] -> ShowS
NetworkCookieParam -> String
(Int -> NetworkCookieParam -> ShowS)
-> (NetworkCookieParam -> String)
-> ([NetworkCookieParam] -> ShowS)
-> Show NetworkCookieParam
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkCookieParam] -> ShowS
$cshowList :: [NetworkCookieParam] -> ShowS
show :: NetworkCookieParam -> String
$cshow :: NetworkCookieParam -> String
showsPrec :: Int -> NetworkCookieParam -> ShowS
$cshowsPrec :: Int -> NetworkCookieParam -> ShowS
Show)
instance FromJSON NetworkCookieParam where
  parseJSON :: Value -> Parser NetworkCookieParam
parseJSON = String
-> (Object -> Parser NetworkCookieParam)
-> Value
-> Parser NetworkCookieParam
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkCookieParam" ((Object -> Parser NetworkCookieParam)
 -> Value -> Parser NetworkCookieParam)
-> (Object -> Parser NetworkCookieParam)
-> Value
-> Parser NetworkCookieParam
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Bool
-> Maybe Bool
-> Maybe NetworkCookieSameSite
-> Maybe Double
-> Maybe NetworkCookiePriority
-> Maybe Bool
-> Maybe NetworkCookieSourceScheme
-> Maybe Int
-> Maybe Text
-> NetworkCookieParam
NetworkCookieParam
    (Text
 -> Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Bool
 -> Maybe Bool
 -> Maybe NetworkCookieSameSite
 -> Maybe Double
 -> Maybe NetworkCookiePriority
 -> Maybe Bool
 -> Maybe NetworkCookieSourceScheme
 -> Maybe Int
 -> Maybe Text
 -> NetworkCookieParam)
-> Parser Text
-> Parser
     (Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Bool
      -> Maybe Bool
      -> Maybe NetworkCookieSameSite
      -> Maybe Double
      -> Maybe NetworkCookiePriority
      -> Maybe Bool
      -> Maybe NetworkCookieSourceScheme
      -> Maybe Int
      -> Maybe Text
      -> NetworkCookieParam)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"name"
    Parser
  (Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Bool
   -> Maybe Bool
   -> Maybe NetworkCookieSameSite
   -> Maybe Double
   -> Maybe NetworkCookiePriority
   -> Maybe Bool
   -> Maybe NetworkCookieSourceScheme
   -> Maybe Int
   -> Maybe Text
   -> NetworkCookieParam)
-> Parser Text
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Bool
      -> Maybe Bool
      -> Maybe NetworkCookieSameSite
      -> Maybe Double
      -> Maybe NetworkCookiePriority
      -> Maybe Bool
      -> Maybe NetworkCookieSourceScheme
      -> Maybe Int
      -> Maybe Text
      -> NetworkCookieParam)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"value"
    Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Bool
   -> Maybe Bool
   -> Maybe NetworkCookieSameSite
   -> Maybe Double
   -> Maybe NetworkCookiePriority
   -> Maybe Bool
   -> Maybe NetworkCookieSourceScheme
   -> Maybe Int
   -> Maybe Text
   -> NetworkCookieParam)
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Bool
      -> Maybe Bool
      -> Maybe NetworkCookieSameSite
      -> Maybe Double
      -> Maybe NetworkCookiePriority
      -> Maybe Bool
      -> Maybe NetworkCookieSourceScheme
      -> Maybe Int
      -> Maybe Text
      -> NetworkCookieParam)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"url"
    Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Bool
   -> Maybe Bool
   -> Maybe NetworkCookieSameSite
   -> Maybe Double
   -> Maybe NetworkCookiePriority
   -> Maybe Bool
   -> Maybe NetworkCookieSourceScheme
   -> Maybe Int
   -> Maybe Text
   -> NetworkCookieParam)
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Bool
      -> Maybe Bool
      -> Maybe NetworkCookieSameSite
      -> Maybe Double
      -> Maybe NetworkCookiePriority
      -> Maybe Bool
      -> Maybe NetworkCookieSourceScheme
      -> Maybe Int
      -> Maybe Text
      -> NetworkCookieParam)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"domain"
    Parser
  (Maybe Text
   -> Maybe Bool
   -> Maybe Bool
   -> Maybe NetworkCookieSameSite
   -> Maybe Double
   -> Maybe NetworkCookiePriority
   -> Maybe Bool
   -> Maybe NetworkCookieSourceScheme
   -> Maybe Int
   -> Maybe Text
   -> NetworkCookieParam)
-> Parser (Maybe Text)
-> Parser
     (Maybe Bool
      -> Maybe Bool
      -> Maybe NetworkCookieSameSite
      -> Maybe Double
      -> Maybe NetworkCookiePriority
      -> Maybe Bool
      -> Maybe NetworkCookieSourceScheme
      -> Maybe Int
      -> Maybe Text
      -> NetworkCookieParam)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"path"
    Parser
  (Maybe Bool
   -> Maybe Bool
   -> Maybe NetworkCookieSameSite
   -> Maybe Double
   -> Maybe NetworkCookiePriority
   -> Maybe Bool
   -> Maybe NetworkCookieSourceScheme
   -> Maybe Int
   -> Maybe Text
   -> NetworkCookieParam)
-> Parser (Maybe Bool)
-> Parser
     (Maybe Bool
      -> Maybe NetworkCookieSameSite
      -> Maybe Double
      -> Maybe NetworkCookiePriority
      -> Maybe Bool
      -> Maybe NetworkCookieSourceScheme
      -> Maybe Int
      -> Maybe Text
      -> NetworkCookieParam)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"secure"
    Parser
  (Maybe Bool
   -> Maybe NetworkCookieSameSite
   -> Maybe Double
   -> Maybe NetworkCookiePriority
   -> Maybe Bool
   -> Maybe NetworkCookieSourceScheme
   -> Maybe Int
   -> Maybe Text
   -> NetworkCookieParam)
-> Parser (Maybe Bool)
-> Parser
     (Maybe NetworkCookieSameSite
      -> Maybe Double
      -> Maybe NetworkCookiePriority
      -> Maybe Bool
      -> Maybe NetworkCookieSourceScheme
      -> Maybe Int
      -> Maybe Text
      -> NetworkCookieParam)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"httpOnly"
    Parser
  (Maybe NetworkCookieSameSite
   -> Maybe Double
   -> Maybe NetworkCookiePriority
   -> Maybe Bool
   -> Maybe NetworkCookieSourceScheme
   -> Maybe Int
   -> Maybe Text
   -> NetworkCookieParam)
-> Parser (Maybe NetworkCookieSameSite)
-> Parser
     (Maybe Double
      -> Maybe NetworkCookiePriority
      -> Maybe Bool
      -> Maybe NetworkCookieSourceScheme
      -> Maybe Int
      -> Maybe Text
      -> NetworkCookieParam)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe NetworkCookieSameSite)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"sameSite"
    Parser
  (Maybe Double
   -> Maybe NetworkCookiePriority
   -> Maybe Bool
   -> Maybe NetworkCookieSourceScheme
   -> Maybe Int
   -> Maybe Text
   -> NetworkCookieParam)
-> Parser (Maybe Double)
-> Parser
     (Maybe NetworkCookiePriority
      -> Maybe Bool
      -> Maybe NetworkCookieSourceScheme
      -> Maybe Int
      -> Maybe Text
      -> NetworkCookieParam)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Double)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"expires"
    Parser
  (Maybe NetworkCookiePriority
   -> Maybe Bool
   -> Maybe NetworkCookieSourceScheme
   -> Maybe Int
   -> Maybe Text
   -> NetworkCookieParam)
-> Parser (Maybe NetworkCookiePriority)
-> Parser
     (Maybe Bool
      -> Maybe NetworkCookieSourceScheme
      -> Maybe Int
      -> Maybe Text
      -> NetworkCookieParam)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe NetworkCookiePriority)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"priority"
    Parser
  (Maybe Bool
   -> Maybe NetworkCookieSourceScheme
   -> Maybe Int
   -> Maybe Text
   -> NetworkCookieParam)
-> Parser (Maybe Bool)
-> Parser
     (Maybe NetworkCookieSourceScheme
      -> Maybe Int -> Maybe Text -> NetworkCookieParam)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"sameParty"
    Parser
  (Maybe NetworkCookieSourceScheme
   -> Maybe Int -> Maybe Text -> NetworkCookieParam)
-> Parser (Maybe NetworkCookieSourceScheme)
-> Parser (Maybe Int -> Maybe Text -> NetworkCookieParam)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe NetworkCookieSourceScheme)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"sourceScheme"
    Parser (Maybe Int -> Maybe Text -> NetworkCookieParam)
-> Parser (Maybe Int) -> Parser (Maybe Text -> NetworkCookieParam)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Int)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"sourcePort"
    Parser (Maybe Text -> NetworkCookieParam)
-> Parser (Maybe Text) -> Parser NetworkCookieParam
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"partitionKey"
instance ToJSON NetworkCookieParam where
  toJSON :: NetworkCookieParam -> Value
toJSON NetworkCookieParam
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"name" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkCookieParam -> Text
networkCookieParamName NetworkCookieParam
p),
    (Text
"value" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkCookieParam -> Text
networkCookieParamValue NetworkCookieParam
p),
    (Text
"url" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkCookieParam -> Maybe Text
networkCookieParamUrl NetworkCookieParam
p),
    (Text
"domain" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkCookieParam -> Maybe Text
networkCookieParamDomain NetworkCookieParam
p),
    (Text
"path" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkCookieParam -> Maybe Text
networkCookieParamPath NetworkCookieParam
p),
    (Text
"secure" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkCookieParam -> Maybe Bool
networkCookieParamSecure NetworkCookieParam
p),
    (Text
"httpOnly" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkCookieParam -> Maybe Bool
networkCookieParamHttpOnly NetworkCookieParam
p),
    (Text
"sameSite" Text -> NetworkCookieSameSite -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkCookieSameSite -> Pair)
-> Maybe NetworkCookieSameSite -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkCookieParam -> Maybe NetworkCookieSameSite
networkCookieParamSameSite NetworkCookieParam
p),
    (Text
"expires" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkCookieParam -> Maybe Double
networkCookieParamExpires NetworkCookieParam
p),
    (Text
"priority" Text -> NetworkCookiePriority -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkCookiePriority -> Pair)
-> Maybe NetworkCookiePriority -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkCookieParam -> Maybe NetworkCookiePriority
networkCookieParamPriority NetworkCookieParam
p),
    (Text
"sameParty" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkCookieParam -> Maybe Bool
networkCookieParamSameParty NetworkCookieParam
p),
    (Text
"sourceScheme" Text -> NetworkCookieSourceScheme -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkCookieSourceScheme -> Pair)
-> Maybe NetworkCookieSourceScheme -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkCookieParam -> Maybe NetworkCookieSourceScheme
networkCookieParamSourceScheme NetworkCookieParam
p),
    (Text
"sourcePort" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkCookieParam -> Maybe Int
networkCookieParamSourcePort NetworkCookieParam
p),
    (Text
"partitionKey" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkCookieParam -> Maybe Text
networkCookieParamPartitionKey NetworkCookieParam
p)
    ]

-- | Type 'Network.AuthChallenge'.
--   Authorization challenge for HTTP status code 401 or 407.
data NetworkAuthChallengeSource = NetworkAuthChallengeSourceServer | NetworkAuthChallengeSourceProxy
  deriving (Eq NetworkAuthChallengeSource
Eq NetworkAuthChallengeSource
-> (NetworkAuthChallengeSource
    -> NetworkAuthChallengeSource -> Ordering)
-> (NetworkAuthChallengeSource
    -> NetworkAuthChallengeSource -> Bool)
-> (NetworkAuthChallengeSource
    -> NetworkAuthChallengeSource -> Bool)
-> (NetworkAuthChallengeSource
    -> NetworkAuthChallengeSource -> Bool)
-> (NetworkAuthChallengeSource
    -> NetworkAuthChallengeSource -> Bool)
-> (NetworkAuthChallengeSource
    -> NetworkAuthChallengeSource -> NetworkAuthChallengeSource)
-> (NetworkAuthChallengeSource
    -> NetworkAuthChallengeSource -> NetworkAuthChallengeSource)
-> Ord NetworkAuthChallengeSource
NetworkAuthChallengeSource -> NetworkAuthChallengeSource -> Bool
NetworkAuthChallengeSource
-> NetworkAuthChallengeSource -> Ordering
NetworkAuthChallengeSource
-> NetworkAuthChallengeSource -> NetworkAuthChallengeSource
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: NetworkAuthChallengeSource
-> NetworkAuthChallengeSource -> NetworkAuthChallengeSource
$cmin :: NetworkAuthChallengeSource
-> NetworkAuthChallengeSource -> NetworkAuthChallengeSource
max :: NetworkAuthChallengeSource
-> NetworkAuthChallengeSource -> NetworkAuthChallengeSource
$cmax :: NetworkAuthChallengeSource
-> NetworkAuthChallengeSource -> NetworkAuthChallengeSource
>= :: NetworkAuthChallengeSource -> NetworkAuthChallengeSource -> Bool
$c>= :: NetworkAuthChallengeSource -> NetworkAuthChallengeSource -> Bool
> :: NetworkAuthChallengeSource -> NetworkAuthChallengeSource -> Bool
$c> :: NetworkAuthChallengeSource -> NetworkAuthChallengeSource -> Bool
<= :: NetworkAuthChallengeSource -> NetworkAuthChallengeSource -> Bool
$c<= :: NetworkAuthChallengeSource -> NetworkAuthChallengeSource -> Bool
< :: NetworkAuthChallengeSource -> NetworkAuthChallengeSource -> Bool
$c< :: NetworkAuthChallengeSource -> NetworkAuthChallengeSource -> Bool
compare :: NetworkAuthChallengeSource
-> NetworkAuthChallengeSource -> Ordering
$ccompare :: NetworkAuthChallengeSource
-> NetworkAuthChallengeSource -> Ordering
$cp1Ord :: Eq NetworkAuthChallengeSource
Ord, NetworkAuthChallengeSource -> NetworkAuthChallengeSource -> Bool
(NetworkAuthChallengeSource -> NetworkAuthChallengeSource -> Bool)
-> (NetworkAuthChallengeSource
    -> NetworkAuthChallengeSource -> Bool)
-> Eq NetworkAuthChallengeSource
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkAuthChallengeSource -> NetworkAuthChallengeSource -> Bool
$c/= :: NetworkAuthChallengeSource -> NetworkAuthChallengeSource -> Bool
== :: NetworkAuthChallengeSource -> NetworkAuthChallengeSource -> Bool
$c== :: NetworkAuthChallengeSource -> NetworkAuthChallengeSource -> Bool
Eq, Int -> NetworkAuthChallengeSource -> ShowS
[NetworkAuthChallengeSource] -> ShowS
NetworkAuthChallengeSource -> String
(Int -> NetworkAuthChallengeSource -> ShowS)
-> (NetworkAuthChallengeSource -> String)
-> ([NetworkAuthChallengeSource] -> ShowS)
-> Show NetworkAuthChallengeSource
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkAuthChallengeSource] -> ShowS
$cshowList :: [NetworkAuthChallengeSource] -> ShowS
show :: NetworkAuthChallengeSource -> String
$cshow :: NetworkAuthChallengeSource -> String
showsPrec :: Int -> NetworkAuthChallengeSource -> ShowS
$cshowsPrec :: Int -> NetworkAuthChallengeSource -> ShowS
Show, ReadPrec [NetworkAuthChallengeSource]
ReadPrec NetworkAuthChallengeSource
Int -> ReadS NetworkAuthChallengeSource
ReadS [NetworkAuthChallengeSource]
(Int -> ReadS NetworkAuthChallengeSource)
-> ReadS [NetworkAuthChallengeSource]
-> ReadPrec NetworkAuthChallengeSource
-> ReadPrec [NetworkAuthChallengeSource]
-> Read NetworkAuthChallengeSource
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [NetworkAuthChallengeSource]
$creadListPrec :: ReadPrec [NetworkAuthChallengeSource]
readPrec :: ReadPrec NetworkAuthChallengeSource
$creadPrec :: ReadPrec NetworkAuthChallengeSource
readList :: ReadS [NetworkAuthChallengeSource]
$creadList :: ReadS [NetworkAuthChallengeSource]
readsPrec :: Int -> ReadS NetworkAuthChallengeSource
$creadsPrec :: Int -> ReadS NetworkAuthChallengeSource
Read)
instance FromJSON NetworkAuthChallengeSource where
  parseJSON :: Value -> Parser NetworkAuthChallengeSource
parseJSON = String
-> (Text -> Parser NetworkAuthChallengeSource)
-> Value
-> Parser NetworkAuthChallengeSource
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"NetworkAuthChallengeSource" ((Text -> Parser NetworkAuthChallengeSource)
 -> Value -> Parser NetworkAuthChallengeSource)
-> (Text -> Parser NetworkAuthChallengeSource)
-> Value
-> Parser NetworkAuthChallengeSource
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"Server" -> NetworkAuthChallengeSource -> Parser NetworkAuthChallengeSource
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkAuthChallengeSource
NetworkAuthChallengeSourceServer
    Text
"Proxy" -> NetworkAuthChallengeSource -> Parser NetworkAuthChallengeSource
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkAuthChallengeSource
NetworkAuthChallengeSourceProxy
    Text
"_" -> String -> Parser NetworkAuthChallengeSource
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse NetworkAuthChallengeSource"
instance ToJSON NetworkAuthChallengeSource where
  toJSON :: NetworkAuthChallengeSource -> Value
toJSON NetworkAuthChallengeSource
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case NetworkAuthChallengeSource
v of
    NetworkAuthChallengeSource
NetworkAuthChallengeSourceServer -> Text
"Server"
    NetworkAuthChallengeSource
NetworkAuthChallengeSourceProxy -> Text
"Proxy"
data NetworkAuthChallenge = NetworkAuthChallenge
  {
    -- | Source of the authentication challenge.
    NetworkAuthChallenge -> Maybe NetworkAuthChallengeSource
networkAuthChallengeSource :: Maybe NetworkAuthChallengeSource,
    -- | Origin of the challenger.
    NetworkAuthChallenge -> Text
networkAuthChallengeOrigin :: T.Text,
    -- | The authentication scheme used, such as basic or digest
    NetworkAuthChallenge -> Text
networkAuthChallengeScheme :: T.Text,
    -- | The realm of the challenge. May be empty.
    NetworkAuthChallenge -> Text
networkAuthChallengeRealm :: T.Text
  }
  deriving (NetworkAuthChallenge -> NetworkAuthChallenge -> Bool
(NetworkAuthChallenge -> NetworkAuthChallenge -> Bool)
-> (NetworkAuthChallenge -> NetworkAuthChallenge -> Bool)
-> Eq NetworkAuthChallenge
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkAuthChallenge -> NetworkAuthChallenge -> Bool
$c/= :: NetworkAuthChallenge -> NetworkAuthChallenge -> Bool
== :: NetworkAuthChallenge -> NetworkAuthChallenge -> Bool
$c== :: NetworkAuthChallenge -> NetworkAuthChallenge -> Bool
Eq, Int -> NetworkAuthChallenge -> ShowS
[NetworkAuthChallenge] -> ShowS
NetworkAuthChallenge -> String
(Int -> NetworkAuthChallenge -> ShowS)
-> (NetworkAuthChallenge -> String)
-> ([NetworkAuthChallenge] -> ShowS)
-> Show NetworkAuthChallenge
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkAuthChallenge] -> ShowS
$cshowList :: [NetworkAuthChallenge] -> ShowS
show :: NetworkAuthChallenge -> String
$cshow :: NetworkAuthChallenge -> String
showsPrec :: Int -> NetworkAuthChallenge -> ShowS
$cshowsPrec :: Int -> NetworkAuthChallenge -> ShowS
Show)
instance FromJSON NetworkAuthChallenge where
  parseJSON :: Value -> Parser NetworkAuthChallenge
parseJSON = String
-> (Object -> Parser NetworkAuthChallenge)
-> Value
-> Parser NetworkAuthChallenge
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkAuthChallenge" ((Object -> Parser NetworkAuthChallenge)
 -> Value -> Parser NetworkAuthChallenge)
-> (Object -> Parser NetworkAuthChallenge)
-> Value
-> Parser NetworkAuthChallenge
forall a b. (a -> b) -> a -> b
$ \Object
o -> Maybe NetworkAuthChallengeSource
-> Text -> Text -> Text -> NetworkAuthChallenge
NetworkAuthChallenge
    (Maybe NetworkAuthChallengeSource
 -> Text -> Text -> Text -> NetworkAuthChallenge)
-> Parser (Maybe NetworkAuthChallengeSource)
-> Parser (Text -> Text -> Text -> NetworkAuthChallenge)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser (Maybe NetworkAuthChallengeSource)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"source"
    Parser (Text -> Text -> Text -> NetworkAuthChallenge)
-> Parser Text -> Parser (Text -> Text -> NetworkAuthChallenge)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"origin"
    Parser (Text -> Text -> NetworkAuthChallenge)
-> Parser Text -> Parser (Text -> NetworkAuthChallenge)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"scheme"
    Parser (Text -> NetworkAuthChallenge)
-> Parser Text -> Parser NetworkAuthChallenge
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"realm"
instance ToJSON NetworkAuthChallenge where
  toJSON :: NetworkAuthChallenge -> Value
toJSON NetworkAuthChallenge
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"source" Text -> NetworkAuthChallengeSource -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkAuthChallengeSource -> Pair)
-> Maybe NetworkAuthChallengeSource -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkAuthChallenge -> Maybe NetworkAuthChallengeSource
networkAuthChallengeSource NetworkAuthChallenge
p),
    (Text
"origin" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkAuthChallenge -> Text
networkAuthChallengeOrigin NetworkAuthChallenge
p),
    (Text
"scheme" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkAuthChallenge -> Text
networkAuthChallengeScheme NetworkAuthChallenge
p),
    (Text
"realm" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkAuthChallenge -> Text
networkAuthChallengeRealm NetworkAuthChallenge
p)
    ]

-- | Type 'Network.AuthChallengeResponse'.
--   Response to an AuthChallenge.
data NetworkAuthChallengeResponseResponse = NetworkAuthChallengeResponseResponseDefault | NetworkAuthChallengeResponseResponseCancelAuth | NetworkAuthChallengeResponseResponseProvideCredentials
  deriving (Eq NetworkAuthChallengeResponseResponse
Eq NetworkAuthChallengeResponseResponse
-> (NetworkAuthChallengeResponseResponse
    -> NetworkAuthChallengeResponseResponse -> Ordering)
-> (NetworkAuthChallengeResponseResponse
    -> NetworkAuthChallengeResponseResponse -> Bool)
-> (NetworkAuthChallengeResponseResponse
    -> NetworkAuthChallengeResponseResponse -> Bool)
-> (NetworkAuthChallengeResponseResponse
    -> NetworkAuthChallengeResponseResponse -> Bool)
-> (NetworkAuthChallengeResponseResponse
    -> NetworkAuthChallengeResponseResponse -> Bool)
-> (NetworkAuthChallengeResponseResponse
    -> NetworkAuthChallengeResponseResponse
    -> NetworkAuthChallengeResponseResponse)
-> (NetworkAuthChallengeResponseResponse
    -> NetworkAuthChallengeResponseResponse
    -> NetworkAuthChallengeResponseResponse)
-> Ord NetworkAuthChallengeResponseResponse
NetworkAuthChallengeResponseResponse
-> NetworkAuthChallengeResponseResponse -> Bool
NetworkAuthChallengeResponseResponse
-> NetworkAuthChallengeResponseResponse -> Ordering
NetworkAuthChallengeResponseResponse
-> NetworkAuthChallengeResponseResponse
-> NetworkAuthChallengeResponseResponse
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: NetworkAuthChallengeResponseResponse
-> NetworkAuthChallengeResponseResponse
-> NetworkAuthChallengeResponseResponse
$cmin :: NetworkAuthChallengeResponseResponse
-> NetworkAuthChallengeResponseResponse
-> NetworkAuthChallengeResponseResponse
max :: NetworkAuthChallengeResponseResponse
-> NetworkAuthChallengeResponseResponse
-> NetworkAuthChallengeResponseResponse
$cmax :: NetworkAuthChallengeResponseResponse
-> NetworkAuthChallengeResponseResponse
-> NetworkAuthChallengeResponseResponse
>= :: NetworkAuthChallengeResponseResponse
-> NetworkAuthChallengeResponseResponse -> Bool
$c>= :: NetworkAuthChallengeResponseResponse
-> NetworkAuthChallengeResponseResponse -> Bool
> :: NetworkAuthChallengeResponseResponse
-> NetworkAuthChallengeResponseResponse -> Bool
$c> :: NetworkAuthChallengeResponseResponse
-> NetworkAuthChallengeResponseResponse -> Bool
<= :: NetworkAuthChallengeResponseResponse
-> NetworkAuthChallengeResponseResponse -> Bool
$c<= :: NetworkAuthChallengeResponseResponse
-> NetworkAuthChallengeResponseResponse -> Bool
< :: NetworkAuthChallengeResponseResponse
-> NetworkAuthChallengeResponseResponse -> Bool
$c< :: NetworkAuthChallengeResponseResponse
-> NetworkAuthChallengeResponseResponse -> Bool
compare :: NetworkAuthChallengeResponseResponse
-> NetworkAuthChallengeResponseResponse -> Ordering
$ccompare :: NetworkAuthChallengeResponseResponse
-> NetworkAuthChallengeResponseResponse -> Ordering
$cp1Ord :: Eq NetworkAuthChallengeResponseResponse
Ord, NetworkAuthChallengeResponseResponse
-> NetworkAuthChallengeResponseResponse -> Bool
(NetworkAuthChallengeResponseResponse
 -> NetworkAuthChallengeResponseResponse -> Bool)
-> (NetworkAuthChallengeResponseResponse
    -> NetworkAuthChallengeResponseResponse -> Bool)
-> Eq NetworkAuthChallengeResponseResponse
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkAuthChallengeResponseResponse
-> NetworkAuthChallengeResponseResponse -> Bool
$c/= :: NetworkAuthChallengeResponseResponse
-> NetworkAuthChallengeResponseResponse -> Bool
== :: NetworkAuthChallengeResponseResponse
-> NetworkAuthChallengeResponseResponse -> Bool
$c== :: NetworkAuthChallengeResponseResponse
-> NetworkAuthChallengeResponseResponse -> Bool
Eq, Int -> NetworkAuthChallengeResponseResponse -> ShowS
[NetworkAuthChallengeResponseResponse] -> ShowS
NetworkAuthChallengeResponseResponse -> String
(Int -> NetworkAuthChallengeResponseResponse -> ShowS)
-> (NetworkAuthChallengeResponseResponse -> String)
-> ([NetworkAuthChallengeResponseResponse] -> ShowS)
-> Show NetworkAuthChallengeResponseResponse
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkAuthChallengeResponseResponse] -> ShowS
$cshowList :: [NetworkAuthChallengeResponseResponse] -> ShowS
show :: NetworkAuthChallengeResponseResponse -> String
$cshow :: NetworkAuthChallengeResponseResponse -> String
showsPrec :: Int -> NetworkAuthChallengeResponseResponse -> ShowS
$cshowsPrec :: Int -> NetworkAuthChallengeResponseResponse -> ShowS
Show, ReadPrec [NetworkAuthChallengeResponseResponse]
ReadPrec NetworkAuthChallengeResponseResponse
Int -> ReadS NetworkAuthChallengeResponseResponse
ReadS [NetworkAuthChallengeResponseResponse]
(Int -> ReadS NetworkAuthChallengeResponseResponse)
-> ReadS [NetworkAuthChallengeResponseResponse]
-> ReadPrec NetworkAuthChallengeResponseResponse
-> ReadPrec [NetworkAuthChallengeResponseResponse]
-> Read NetworkAuthChallengeResponseResponse
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [NetworkAuthChallengeResponseResponse]
$creadListPrec :: ReadPrec [NetworkAuthChallengeResponseResponse]
readPrec :: ReadPrec NetworkAuthChallengeResponseResponse
$creadPrec :: ReadPrec NetworkAuthChallengeResponseResponse
readList :: ReadS [NetworkAuthChallengeResponseResponse]
$creadList :: ReadS [NetworkAuthChallengeResponseResponse]
readsPrec :: Int -> ReadS NetworkAuthChallengeResponseResponse
$creadsPrec :: Int -> ReadS NetworkAuthChallengeResponseResponse
Read)
instance FromJSON NetworkAuthChallengeResponseResponse where
  parseJSON :: Value -> Parser NetworkAuthChallengeResponseResponse
parseJSON = String
-> (Text -> Parser NetworkAuthChallengeResponseResponse)
-> Value
-> Parser NetworkAuthChallengeResponseResponse
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"NetworkAuthChallengeResponseResponse" ((Text -> Parser NetworkAuthChallengeResponseResponse)
 -> Value -> Parser NetworkAuthChallengeResponseResponse)
-> (Text -> Parser NetworkAuthChallengeResponseResponse)
-> Value
-> Parser NetworkAuthChallengeResponseResponse
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"Default" -> NetworkAuthChallengeResponseResponse
-> Parser NetworkAuthChallengeResponseResponse
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkAuthChallengeResponseResponse
NetworkAuthChallengeResponseResponseDefault
    Text
"CancelAuth" -> NetworkAuthChallengeResponseResponse
-> Parser NetworkAuthChallengeResponseResponse
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkAuthChallengeResponseResponse
NetworkAuthChallengeResponseResponseCancelAuth
    Text
"ProvideCredentials" -> NetworkAuthChallengeResponseResponse
-> Parser NetworkAuthChallengeResponseResponse
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkAuthChallengeResponseResponse
NetworkAuthChallengeResponseResponseProvideCredentials
    Text
"_" -> String -> Parser NetworkAuthChallengeResponseResponse
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse NetworkAuthChallengeResponseResponse"
instance ToJSON NetworkAuthChallengeResponseResponse where
  toJSON :: NetworkAuthChallengeResponseResponse -> Value
toJSON NetworkAuthChallengeResponseResponse
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case NetworkAuthChallengeResponseResponse
v of
    NetworkAuthChallengeResponseResponse
NetworkAuthChallengeResponseResponseDefault -> Text
"Default"
    NetworkAuthChallengeResponseResponse
NetworkAuthChallengeResponseResponseCancelAuth -> Text
"CancelAuth"
    NetworkAuthChallengeResponseResponse
NetworkAuthChallengeResponseResponseProvideCredentials -> Text
"ProvideCredentials"
data NetworkAuthChallengeResponse = NetworkAuthChallengeResponse
  {
    -- | The decision on what to do in response to the authorization challenge.  Default means
    --   deferring to the default behavior of the net stack, which will likely either the Cancel
    --   authentication or display a popup dialog box.
    NetworkAuthChallengeResponse
-> NetworkAuthChallengeResponseResponse
networkAuthChallengeResponseResponse :: NetworkAuthChallengeResponseResponse,
    -- | The username to provide, possibly empty. Should only be set if response is
    --   ProvideCredentials.
    NetworkAuthChallengeResponse -> Maybe Text
networkAuthChallengeResponseUsername :: Maybe T.Text,
    -- | The password to provide, possibly empty. Should only be set if response is
    --   ProvideCredentials.
    NetworkAuthChallengeResponse -> Maybe Text
networkAuthChallengeResponsePassword :: Maybe T.Text
  }
  deriving (NetworkAuthChallengeResponse
-> NetworkAuthChallengeResponse -> Bool
(NetworkAuthChallengeResponse
 -> NetworkAuthChallengeResponse -> Bool)
-> (NetworkAuthChallengeResponse
    -> NetworkAuthChallengeResponse -> Bool)
-> Eq NetworkAuthChallengeResponse
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkAuthChallengeResponse
-> NetworkAuthChallengeResponse -> Bool
$c/= :: NetworkAuthChallengeResponse
-> NetworkAuthChallengeResponse -> Bool
== :: NetworkAuthChallengeResponse
-> NetworkAuthChallengeResponse -> Bool
$c== :: NetworkAuthChallengeResponse
-> NetworkAuthChallengeResponse -> Bool
Eq, Int -> NetworkAuthChallengeResponse -> ShowS
[NetworkAuthChallengeResponse] -> ShowS
NetworkAuthChallengeResponse -> String
(Int -> NetworkAuthChallengeResponse -> ShowS)
-> (NetworkAuthChallengeResponse -> String)
-> ([NetworkAuthChallengeResponse] -> ShowS)
-> Show NetworkAuthChallengeResponse
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkAuthChallengeResponse] -> ShowS
$cshowList :: [NetworkAuthChallengeResponse] -> ShowS
show :: NetworkAuthChallengeResponse -> String
$cshow :: NetworkAuthChallengeResponse -> String
showsPrec :: Int -> NetworkAuthChallengeResponse -> ShowS
$cshowsPrec :: Int -> NetworkAuthChallengeResponse -> ShowS
Show)
instance FromJSON NetworkAuthChallengeResponse where
  parseJSON :: Value -> Parser NetworkAuthChallengeResponse
parseJSON = String
-> (Object -> Parser NetworkAuthChallengeResponse)
-> Value
-> Parser NetworkAuthChallengeResponse
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkAuthChallengeResponse" ((Object -> Parser NetworkAuthChallengeResponse)
 -> Value -> Parser NetworkAuthChallengeResponse)
-> (Object -> Parser NetworkAuthChallengeResponse)
-> Value
-> Parser NetworkAuthChallengeResponse
forall a b. (a -> b) -> a -> b
$ \Object
o -> NetworkAuthChallengeResponseResponse
-> Maybe Text -> Maybe Text -> NetworkAuthChallengeResponse
NetworkAuthChallengeResponse
    (NetworkAuthChallengeResponseResponse
 -> Maybe Text -> Maybe Text -> NetworkAuthChallengeResponse)
-> Parser NetworkAuthChallengeResponseResponse
-> Parser
     (Maybe Text -> Maybe Text -> NetworkAuthChallengeResponse)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser NetworkAuthChallengeResponseResponse
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"response"
    Parser (Maybe Text -> Maybe Text -> NetworkAuthChallengeResponse)
-> Parser (Maybe Text)
-> Parser (Maybe Text -> NetworkAuthChallengeResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"username"
    Parser (Maybe Text -> NetworkAuthChallengeResponse)
-> Parser (Maybe Text) -> Parser NetworkAuthChallengeResponse
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"password"
instance ToJSON NetworkAuthChallengeResponse where
  toJSON :: NetworkAuthChallengeResponse -> Value
toJSON NetworkAuthChallengeResponse
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"response" Text -> NetworkAuthChallengeResponseResponse -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkAuthChallengeResponseResponse -> Pair)
-> Maybe NetworkAuthChallengeResponseResponse -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> NetworkAuthChallengeResponseResponse
-> Maybe NetworkAuthChallengeResponseResponse
forall a. a -> Maybe a
Just (NetworkAuthChallengeResponse
-> NetworkAuthChallengeResponseResponse
networkAuthChallengeResponseResponse NetworkAuthChallengeResponse
p),
    (Text
"username" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkAuthChallengeResponse -> Maybe Text
networkAuthChallengeResponseUsername NetworkAuthChallengeResponse
p),
    (Text
"password" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkAuthChallengeResponse -> Maybe Text
networkAuthChallengeResponsePassword NetworkAuthChallengeResponse
p)
    ]

-- | Type 'Network.InterceptionStage'.
--   Stages of the interception to begin intercepting. Request will intercept before the request is
--   sent. Response will intercept after the response is received.
data NetworkInterceptionStage = NetworkInterceptionStageRequest | NetworkInterceptionStageHeadersReceived
  deriving (Eq NetworkInterceptionStage
Eq NetworkInterceptionStage
-> (NetworkInterceptionStage
    -> NetworkInterceptionStage -> Ordering)
-> (NetworkInterceptionStage -> NetworkInterceptionStage -> Bool)
-> (NetworkInterceptionStage -> NetworkInterceptionStage -> Bool)
-> (NetworkInterceptionStage -> NetworkInterceptionStage -> Bool)
-> (NetworkInterceptionStage -> NetworkInterceptionStage -> Bool)
-> (NetworkInterceptionStage
    -> NetworkInterceptionStage -> NetworkInterceptionStage)
-> (NetworkInterceptionStage
    -> NetworkInterceptionStage -> NetworkInterceptionStage)
-> Ord NetworkInterceptionStage
NetworkInterceptionStage -> NetworkInterceptionStage -> Bool
NetworkInterceptionStage -> NetworkInterceptionStage -> Ordering
NetworkInterceptionStage
-> NetworkInterceptionStage -> NetworkInterceptionStage
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: NetworkInterceptionStage
-> NetworkInterceptionStage -> NetworkInterceptionStage
$cmin :: NetworkInterceptionStage
-> NetworkInterceptionStage -> NetworkInterceptionStage
max :: NetworkInterceptionStage
-> NetworkInterceptionStage -> NetworkInterceptionStage
$cmax :: NetworkInterceptionStage
-> NetworkInterceptionStage -> NetworkInterceptionStage
>= :: NetworkInterceptionStage -> NetworkInterceptionStage -> Bool
$c>= :: NetworkInterceptionStage -> NetworkInterceptionStage -> Bool
> :: NetworkInterceptionStage -> NetworkInterceptionStage -> Bool
$c> :: NetworkInterceptionStage -> NetworkInterceptionStage -> Bool
<= :: NetworkInterceptionStage -> NetworkInterceptionStage -> Bool
$c<= :: NetworkInterceptionStage -> NetworkInterceptionStage -> Bool
< :: NetworkInterceptionStage -> NetworkInterceptionStage -> Bool
$c< :: NetworkInterceptionStage -> NetworkInterceptionStage -> Bool
compare :: NetworkInterceptionStage -> NetworkInterceptionStage -> Ordering
$ccompare :: NetworkInterceptionStage -> NetworkInterceptionStage -> Ordering
$cp1Ord :: Eq NetworkInterceptionStage
Ord, NetworkInterceptionStage -> NetworkInterceptionStage -> Bool
(NetworkInterceptionStage -> NetworkInterceptionStage -> Bool)
-> (NetworkInterceptionStage -> NetworkInterceptionStage -> Bool)
-> Eq NetworkInterceptionStage
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkInterceptionStage -> NetworkInterceptionStage -> Bool
$c/= :: NetworkInterceptionStage -> NetworkInterceptionStage -> Bool
== :: NetworkInterceptionStage -> NetworkInterceptionStage -> Bool
$c== :: NetworkInterceptionStage -> NetworkInterceptionStage -> Bool
Eq, Int -> NetworkInterceptionStage -> ShowS
[NetworkInterceptionStage] -> ShowS
NetworkInterceptionStage -> String
(Int -> NetworkInterceptionStage -> ShowS)
-> (NetworkInterceptionStage -> String)
-> ([NetworkInterceptionStage] -> ShowS)
-> Show NetworkInterceptionStage
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkInterceptionStage] -> ShowS
$cshowList :: [NetworkInterceptionStage] -> ShowS
show :: NetworkInterceptionStage -> String
$cshow :: NetworkInterceptionStage -> String
showsPrec :: Int -> NetworkInterceptionStage -> ShowS
$cshowsPrec :: Int -> NetworkInterceptionStage -> ShowS
Show, ReadPrec [NetworkInterceptionStage]
ReadPrec NetworkInterceptionStage
Int -> ReadS NetworkInterceptionStage
ReadS [NetworkInterceptionStage]
(Int -> ReadS NetworkInterceptionStage)
-> ReadS [NetworkInterceptionStage]
-> ReadPrec NetworkInterceptionStage
-> ReadPrec [NetworkInterceptionStage]
-> Read NetworkInterceptionStage
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [NetworkInterceptionStage]
$creadListPrec :: ReadPrec [NetworkInterceptionStage]
readPrec :: ReadPrec NetworkInterceptionStage
$creadPrec :: ReadPrec NetworkInterceptionStage
readList :: ReadS [NetworkInterceptionStage]
$creadList :: ReadS [NetworkInterceptionStage]
readsPrec :: Int -> ReadS NetworkInterceptionStage
$creadsPrec :: Int -> ReadS NetworkInterceptionStage
Read)
instance FromJSON NetworkInterceptionStage where
  parseJSON :: Value -> Parser NetworkInterceptionStage
parseJSON = String
-> (Text -> Parser NetworkInterceptionStage)
-> Value
-> Parser NetworkInterceptionStage
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"NetworkInterceptionStage" ((Text -> Parser NetworkInterceptionStage)
 -> Value -> Parser NetworkInterceptionStage)
-> (Text -> Parser NetworkInterceptionStage)
-> Value
-> Parser NetworkInterceptionStage
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"Request" -> NetworkInterceptionStage -> Parser NetworkInterceptionStage
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkInterceptionStage
NetworkInterceptionStageRequest
    Text
"HeadersReceived" -> NetworkInterceptionStage -> Parser NetworkInterceptionStage
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkInterceptionStage
NetworkInterceptionStageHeadersReceived
    Text
"_" -> String -> Parser NetworkInterceptionStage
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse NetworkInterceptionStage"
instance ToJSON NetworkInterceptionStage where
  toJSON :: NetworkInterceptionStage -> Value
toJSON NetworkInterceptionStage
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case NetworkInterceptionStage
v of
    NetworkInterceptionStage
NetworkInterceptionStageRequest -> Text
"Request"
    NetworkInterceptionStage
NetworkInterceptionStageHeadersReceived -> Text
"HeadersReceived"

-- | Type 'Network.RequestPattern'.
--   Request pattern for interception.
data NetworkRequestPattern = NetworkRequestPattern
  {
    -- | Wildcards (`'*'` -> zero or more, `'?'` -> exactly one) are allowed. Escape character is
    --   backslash. Omitting is equivalent to `"*"`.
    NetworkRequestPattern -> Maybe Text
networkRequestPatternUrlPattern :: Maybe T.Text,
    -- | If set, only requests for matching resource types will be intercepted.
    NetworkRequestPattern -> Maybe NetworkResourceType
networkRequestPatternResourceType :: Maybe NetworkResourceType,
    -- | Stage at which to begin intercepting requests. Default is Request.
    NetworkRequestPattern -> Maybe NetworkInterceptionStage
networkRequestPatternInterceptionStage :: Maybe NetworkInterceptionStage
  }
  deriving (NetworkRequestPattern -> NetworkRequestPattern -> Bool
(NetworkRequestPattern -> NetworkRequestPattern -> Bool)
-> (NetworkRequestPattern -> NetworkRequestPattern -> Bool)
-> Eq NetworkRequestPattern
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkRequestPattern -> NetworkRequestPattern -> Bool
$c/= :: NetworkRequestPattern -> NetworkRequestPattern -> Bool
== :: NetworkRequestPattern -> NetworkRequestPattern -> Bool
$c== :: NetworkRequestPattern -> NetworkRequestPattern -> Bool
Eq, Int -> NetworkRequestPattern -> ShowS
[NetworkRequestPattern] -> ShowS
NetworkRequestPattern -> String
(Int -> NetworkRequestPattern -> ShowS)
-> (NetworkRequestPattern -> String)
-> ([NetworkRequestPattern] -> ShowS)
-> Show NetworkRequestPattern
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkRequestPattern] -> ShowS
$cshowList :: [NetworkRequestPattern] -> ShowS
show :: NetworkRequestPattern -> String
$cshow :: NetworkRequestPattern -> String
showsPrec :: Int -> NetworkRequestPattern -> ShowS
$cshowsPrec :: Int -> NetworkRequestPattern -> ShowS
Show)
instance FromJSON NetworkRequestPattern where
  parseJSON :: Value -> Parser NetworkRequestPattern
parseJSON = String
-> (Object -> Parser NetworkRequestPattern)
-> Value
-> Parser NetworkRequestPattern
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkRequestPattern" ((Object -> Parser NetworkRequestPattern)
 -> Value -> Parser NetworkRequestPattern)
-> (Object -> Parser NetworkRequestPattern)
-> Value
-> Parser NetworkRequestPattern
forall a b. (a -> b) -> a -> b
$ \Object
o -> Maybe Text
-> Maybe NetworkResourceType
-> Maybe NetworkInterceptionStage
-> NetworkRequestPattern
NetworkRequestPattern
    (Maybe Text
 -> Maybe NetworkResourceType
 -> Maybe NetworkInterceptionStage
 -> NetworkRequestPattern)
-> Parser (Maybe Text)
-> Parser
     (Maybe NetworkResourceType
      -> Maybe NetworkInterceptionStage -> NetworkRequestPattern)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"urlPattern"
    Parser
  (Maybe NetworkResourceType
   -> Maybe NetworkInterceptionStage -> NetworkRequestPattern)
-> Parser (Maybe NetworkResourceType)
-> Parser (Maybe NetworkInterceptionStage -> NetworkRequestPattern)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe NetworkResourceType)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"resourceType"
    Parser (Maybe NetworkInterceptionStage -> NetworkRequestPattern)
-> Parser (Maybe NetworkInterceptionStage)
-> Parser NetworkRequestPattern
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe NetworkInterceptionStage)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"interceptionStage"
instance ToJSON NetworkRequestPattern where
  toJSON :: NetworkRequestPattern -> Value
toJSON NetworkRequestPattern
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"urlPattern" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkRequestPattern -> Maybe Text
networkRequestPatternUrlPattern NetworkRequestPattern
p),
    (Text
"resourceType" Text -> NetworkResourceType -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkResourceType -> Pair)
-> Maybe NetworkResourceType -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkRequestPattern -> Maybe NetworkResourceType
networkRequestPatternResourceType NetworkRequestPattern
p),
    (Text
"interceptionStage" Text -> NetworkInterceptionStage -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkInterceptionStage -> Pair)
-> Maybe NetworkInterceptionStage -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkRequestPattern -> Maybe NetworkInterceptionStage
networkRequestPatternInterceptionStage NetworkRequestPattern
p)
    ]

-- | Type 'Network.SignedExchangeSignature'.
--   Information about a signed exchange signature.
--   https://wicg.github.io/webpackage/draft-yasskin-httpbis-origin-signed-exchanges-impl.html#rfc.section.3.1
data NetworkSignedExchangeSignature = NetworkSignedExchangeSignature
  {
    -- | Signed exchange signature label.
    NetworkSignedExchangeSignature -> Text
networkSignedExchangeSignatureLabel :: T.Text,
    -- | The hex string of signed exchange signature.
    NetworkSignedExchangeSignature -> Text
networkSignedExchangeSignatureSignature :: T.Text,
    -- | Signed exchange signature integrity.
    NetworkSignedExchangeSignature -> Text
networkSignedExchangeSignatureIntegrity :: T.Text,
    -- | Signed exchange signature cert Url.
    NetworkSignedExchangeSignature -> Maybe Text
networkSignedExchangeSignatureCertUrl :: Maybe T.Text,
    -- | The hex string of signed exchange signature cert sha256.
    NetworkSignedExchangeSignature -> Maybe Text
networkSignedExchangeSignatureCertSha256 :: Maybe T.Text,
    -- | Signed exchange signature validity Url.
    NetworkSignedExchangeSignature -> Text
networkSignedExchangeSignatureValidityUrl :: T.Text,
    -- | Signed exchange signature date.
    NetworkSignedExchangeSignature -> Int
networkSignedExchangeSignatureDate :: Int,
    -- | Signed exchange signature expires.
    NetworkSignedExchangeSignature -> Int
networkSignedExchangeSignatureExpires :: Int,
    -- | The encoded certificates.
    NetworkSignedExchangeSignature -> Maybe [Text]
networkSignedExchangeSignatureCertificates :: Maybe [T.Text]
  }
  deriving (NetworkSignedExchangeSignature
-> NetworkSignedExchangeSignature -> Bool
(NetworkSignedExchangeSignature
 -> NetworkSignedExchangeSignature -> Bool)
-> (NetworkSignedExchangeSignature
    -> NetworkSignedExchangeSignature -> Bool)
-> Eq NetworkSignedExchangeSignature
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkSignedExchangeSignature
-> NetworkSignedExchangeSignature -> Bool
$c/= :: NetworkSignedExchangeSignature
-> NetworkSignedExchangeSignature -> Bool
== :: NetworkSignedExchangeSignature
-> NetworkSignedExchangeSignature -> Bool
$c== :: NetworkSignedExchangeSignature
-> NetworkSignedExchangeSignature -> Bool
Eq, Int -> NetworkSignedExchangeSignature -> ShowS
[NetworkSignedExchangeSignature] -> ShowS
NetworkSignedExchangeSignature -> String
(Int -> NetworkSignedExchangeSignature -> ShowS)
-> (NetworkSignedExchangeSignature -> String)
-> ([NetworkSignedExchangeSignature] -> ShowS)
-> Show NetworkSignedExchangeSignature
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkSignedExchangeSignature] -> ShowS
$cshowList :: [NetworkSignedExchangeSignature] -> ShowS
show :: NetworkSignedExchangeSignature -> String
$cshow :: NetworkSignedExchangeSignature -> String
showsPrec :: Int -> NetworkSignedExchangeSignature -> ShowS
$cshowsPrec :: Int -> NetworkSignedExchangeSignature -> ShowS
Show)
instance FromJSON NetworkSignedExchangeSignature where
  parseJSON :: Value -> Parser NetworkSignedExchangeSignature
parseJSON = String
-> (Object -> Parser NetworkSignedExchangeSignature)
-> Value
-> Parser NetworkSignedExchangeSignature
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkSignedExchangeSignature" ((Object -> Parser NetworkSignedExchangeSignature)
 -> Value -> Parser NetworkSignedExchangeSignature)
-> (Object -> Parser NetworkSignedExchangeSignature)
-> Value
-> Parser NetworkSignedExchangeSignature
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> Text
-> Text
-> Maybe Text
-> Maybe Text
-> Text
-> Int
-> Int
-> Maybe [Text]
-> NetworkSignedExchangeSignature
NetworkSignedExchangeSignature
    (Text
 -> Text
 -> Text
 -> Maybe Text
 -> Maybe Text
 -> Text
 -> Int
 -> Int
 -> Maybe [Text]
 -> NetworkSignedExchangeSignature)
-> Parser Text
-> Parser
     (Text
      -> Text
      -> Maybe Text
      -> Maybe Text
      -> Text
      -> Int
      -> Int
      -> Maybe [Text]
      -> NetworkSignedExchangeSignature)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"label"
    Parser
  (Text
   -> Text
   -> Maybe Text
   -> Maybe Text
   -> Text
   -> Int
   -> Int
   -> Maybe [Text]
   -> NetworkSignedExchangeSignature)
-> Parser Text
-> Parser
     (Text
      -> Maybe Text
      -> Maybe Text
      -> Text
      -> Int
      -> Int
      -> Maybe [Text]
      -> NetworkSignedExchangeSignature)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"signature"
    Parser
  (Text
   -> Maybe Text
   -> Maybe Text
   -> Text
   -> Int
   -> Int
   -> Maybe [Text]
   -> NetworkSignedExchangeSignature)
-> Parser Text
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Text
      -> Int
      -> Int
      -> Maybe [Text]
      -> NetworkSignedExchangeSignature)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"integrity"
    Parser
  (Maybe Text
   -> Maybe Text
   -> Text
   -> Int
   -> Int
   -> Maybe [Text]
   -> NetworkSignedExchangeSignature)
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Text
      -> Int
      -> Int
      -> Maybe [Text]
      -> NetworkSignedExchangeSignature)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"certUrl"
    Parser
  (Maybe Text
   -> Text
   -> Int
   -> Int
   -> Maybe [Text]
   -> NetworkSignedExchangeSignature)
-> Parser (Maybe Text)
-> Parser
     (Text
      -> Int -> Int -> Maybe [Text] -> NetworkSignedExchangeSignature)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"certSha256"
    Parser
  (Text
   -> Int -> Int -> Maybe [Text] -> NetworkSignedExchangeSignature)
-> Parser Text
-> Parser
     (Int -> Int -> Maybe [Text] -> NetworkSignedExchangeSignature)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"validityUrl"
    Parser
  (Int -> Int -> Maybe [Text] -> NetworkSignedExchangeSignature)
-> Parser Int
-> Parser (Int -> Maybe [Text] -> NetworkSignedExchangeSignature)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"date"
    Parser (Int -> Maybe [Text] -> NetworkSignedExchangeSignature)
-> Parser Int
-> Parser (Maybe [Text] -> NetworkSignedExchangeSignature)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"expires"
    Parser (Maybe [Text] -> NetworkSignedExchangeSignature)
-> Parser (Maybe [Text]) -> Parser NetworkSignedExchangeSignature
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe [Text])
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"certificates"
instance ToJSON NetworkSignedExchangeSignature where
  toJSON :: NetworkSignedExchangeSignature -> Value
toJSON NetworkSignedExchangeSignature
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"label" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkSignedExchangeSignature -> Text
networkSignedExchangeSignatureLabel NetworkSignedExchangeSignature
p),
    (Text
"signature" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkSignedExchangeSignature -> Text
networkSignedExchangeSignatureSignature NetworkSignedExchangeSignature
p),
    (Text
"integrity" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkSignedExchangeSignature -> Text
networkSignedExchangeSignatureIntegrity NetworkSignedExchangeSignature
p),
    (Text
"certUrl" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkSignedExchangeSignature -> Maybe Text
networkSignedExchangeSignatureCertUrl NetworkSignedExchangeSignature
p),
    (Text
"certSha256" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkSignedExchangeSignature -> Maybe Text
networkSignedExchangeSignatureCertSha256 NetworkSignedExchangeSignature
p),
    (Text
"validityUrl" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkSignedExchangeSignature -> Text
networkSignedExchangeSignatureValidityUrl NetworkSignedExchangeSignature
p),
    (Text
"date" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (NetworkSignedExchangeSignature -> Int
networkSignedExchangeSignatureDate NetworkSignedExchangeSignature
p),
    (Text
"expires" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (NetworkSignedExchangeSignature -> Int
networkSignedExchangeSignatureExpires NetworkSignedExchangeSignature
p),
    (Text
"certificates" Text -> [Text] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([Text] -> Pair) -> Maybe [Text] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkSignedExchangeSignature -> Maybe [Text]
networkSignedExchangeSignatureCertificates NetworkSignedExchangeSignature
p)
    ]

-- | Type 'Network.SignedExchangeHeader'.
--   Information about a signed exchange header.
--   https://wicg.github.io/webpackage/draft-yasskin-httpbis-origin-signed-exchanges-impl.html#cbor-representation
data NetworkSignedExchangeHeader = NetworkSignedExchangeHeader
  {
    -- | Signed exchange request URL.
    NetworkSignedExchangeHeader -> Text
networkSignedExchangeHeaderRequestUrl :: T.Text,
    -- | Signed exchange response code.
    NetworkSignedExchangeHeader -> Int
networkSignedExchangeHeaderResponseCode :: Int,
    -- | Signed exchange response headers.
    NetworkSignedExchangeHeader -> NetworkHeaders
networkSignedExchangeHeaderResponseHeaders :: NetworkHeaders,
    -- | Signed exchange response signature.
    NetworkSignedExchangeHeader -> [NetworkSignedExchangeSignature]
networkSignedExchangeHeaderSignatures :: [NetworkSignedExchangeSignature],
    -- | Signed exchange header integrity hash in the form of "sha256-<base64-hash-value>".
    NetworkSignedExchangeHeader -> Text
networkSignedExchangeHeaderHeaderIntegrity :: T.Text
  }
  deriving (NetworkSignedExchangeHeader -> NetworkSignedExchangeHeader -> Bool
(NetworkSignedExchangeHeader
 -> NetworkSignedExchangeHeader -> Bool)
-> (NetworkSignedExchangeHeader
    -> NetworkSignedExchangeHeader -> Bool)
-> Eq NetworkSignedExchangeHeader
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkSignedExchangeHeader -> NetworkSignedExchangeHeader -> Bool
$c/= :: NetworkSignedExchangeHeader -> NetworkSignedExchangeHeader -> Bool
== :: NetworkSignedExchangeHeader -> NetworkSignedExchangeHeader -> Bool
$c== :: NetworkSignedExchangeHeader -> NetworkSignedExchangeHeader -> Bool
Eq, Int -> NetworkSignedExchangeHeader -> ShowS
[NetworkSignedExchangeHeader] -> ShowS
NetworkSignedExchangeHeader -> String
(Int -> NetworkSignedExchangeHeader -> ShowS)
-> (NetworkSignedExchangeHeader -> String)
-> ([NetworkSignedExchangeHeader] -> ShowS)
-> Show NetworkSignedExchangeHeader
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkSignedExchangeHeader] -> ShowS
$cshowList :: [NetworkSignedExchangeHeader] -> ShowS
show :: NetworkSignedExchangeHeader -> String
$cshow :: NetworkSignedExchangeHeader -> String
showsPrec :: Int -> NetworkSignedExchangeHeader -> ShowS
$cshowsPrec :: Int -> NetworkSignedExchangeHeader -> ShowS
Show)
instance FromJSON NetworkSignedExchangeHeader where
  parseJSON :: Value -> Parser NetworkSignedExchangeHeader
parseJSON = String
-> (Object -> Parser NetworkSignedExchangeHeader)
-> Value
-> Parser NetworkSignedExchangeHeader
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkSignedExchangeHeader" ((Object -> Parser NetworkSignedExchangeHeader)
 -> Value -> Parser NetworkSignedExchangeHeader)
-> (Object -> Parser NetworkSignedExchangeHeader)
-> Value
-> Parser NetworkSignedExchangeHeader
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> Int
-> NetworkHeaders
-> [NetworkSignedExchangeSignature]
-> Text
-> NetworkSignedExchangeHeader
NetworkSignedExchangeHeader
    (Text
 -> Int
 -> NetworkHeaders
 -> [NetworkSignedExchangeSignature]
 -> Text
 -> NetworkSignedExchangeHeader)
-> Parser Text
-> Parser
     (Int
      -> NetworkHeaders
      -> [NetworkSignedExchangeSignature]
      -> Text
      -> NetworkSignedExchangeHeader)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"requestUrl"
    Parser
  (Int
   -> NetworkHeaders
   -> [NetworkSignedExchangeSignature]
   -> Text
   -> NetworkSignedExchangeHeader)
-> Parser Int
-> Parser
     (NetworkHeaders
      -> [NetworkSignedExchangeSignature]
      -> Text
      -> NetworkSignedExchangeHeader)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"responseCode"
    Parser
  (NetworkHeaders
   -> [NetworkSignedExchangeSignature]
   -> Text
   -> NetworkSignedExchangeHeader)
-> Parser NetworkHeaders
-> Parser
     ([NetworkSignedExchangeSignature]
      -> Text -> NetworkSignedExchangeHeader)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser NetworkHeaders
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"responseHeaders"
    Parser
  ([NetworkSignedExchangeSignature]
   -> Text -> NetworkSignedExchangeHeader)
-> Parser [NetworkSignedExchangeSignature]
-> Parser (Text -> NetworkSignedExchangeHeader)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser [NetworkSignedExchangeSignature]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"signatures"
    Parser (Text -> NetworkSignedExchangeHeader)
-> Parser Text -> Parser NetworkSignedExchangeHeader
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"headerIntegrity"
instance ToJSON NetworkSignedExchangeHeader where
  toJSON :: NetworkSignedExchangeHeader -> Value
toJSON NetworkSignedExchangeHeader
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"requestUrl" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkSignedExchangeHeader -> Text
networkSignedExchangeHeaderRequestUrl NetworkSignedExchangeHeader
p),
    (Text
"responseCode" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (NetworkSignedExchangeHeader -> Int
networkSignedExchangeHeaderResponseCode NetworkSignedExchangeHeader
p),
    (Text
"responseHeaders" Text -> NetworkHeaders -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkHeaders -> Pair) -> Maybe NetworkHeaders -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> NetworkHeaders -> Maybe NetworkHeaders
forall a. a -> Maybe a
Just (NetworkSignedExchangeHeader -> NetworkHeaders
networkSignedExchangeHeaderResponseHeaders NetworkSignedExchangeHeader
p),
    (Text
"signatures" Text -> [NetworkSignedExchangeSignature] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([NetworkSignedExchangeSignature] -> Pair)
-> Maybe [NetworkSignedExchangeSignature] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> [NetworkSignedExchangeSignature]
-> Maybe [NetworkSignedExchangeSignature]
forall a. a -> Maybe a
Just (NetworkSignedExchangeHeader -> [NetworkSignedExchangeSignature]
networkSignedExchangeHeaderSignatures NetworkSignedExchangeHeader
p),
    (Text
"headerIntegrity" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkSignedExchangeHeader -> Text
networkSignedExchangeHeaderHeaderIntegrity NetworkSignedExchangeHeader
p)
    ]

-- | Type 'Network.SignedExchangeErrorField'.
--   Field type for a signed exchange related error.
data NetworkSignedExchangeErrorField = NetworkSignedExchangeErrorFieldSignatureSig | NetworkSignedExchangeErrorFieldSignatureIntegrity | NetworkSignedExchangeErrorFieldSignatureCertUrl | NetworkSignedExchangeErrorFieldSignatureCertSha256 | NetworkSignedExchangeErrorFieldSignatureValidityUrl | NetworkSignedExchangeErrorFieldSignatureTimestamps
  deriving (Eq NetworkSignedExchangeErrorField
Eq NetworkSignedExchangeErrorField
-> (NetworkSignedExchangeErrorField
    -> NetworkSignedExchangeErrorField -> Ordering)
-> (NetworkSignedExchangeErrorField
    -> NetworkSignedExchangeErrorField -> Bool)
-> (NetworkSignedExchangeErrorField
    -> NetworkSignedExchangeErrorField -> Bool)
-> (NetworkSignedExchangeErrorField
    -> NetworkSignedExchangeErrorField -> Bool)
-> (NetworkSignedExchangeErrorField
    -> NetworkSignedExchangeErrorField -> Bool)
-> (NetworkSignedExchangeErrorField
    -> NetworkSignedExchangeErrorField
    -> NetworkSignedExchangeErrorField)
-> (NetworkSignedExchangeErrorField
    -> NetworkSignedExchangeErrorField
    -> NetworkSignedExchangeErrorField)
-> Ord NetworkSignedExchangeErrorField
NetworkSignedExchangeErrorField
-> NetworkSignedExchangeErrorField -> Bool
NetworkSignedExchangeErrorField
-> NetworkSignedExchangeErrorField -> Ordering
NetworkSignedExchangeErrorField
-> NetworkSignedExchangeErrorField
-> NetworkSignedExchangeErrorField
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: NetworkSignedExchangeErrorField
-> NetworkSignedExchangeErrorField
-> NetworkSignedExchangeErrorField
$cmin :: NetworkSignedExchangeErrorField
-> NetworkSignedExchangeErrorField
-> NetworkSignedExchangeErrorField
max :: NetworkSignedExchangeErrorField
-> NetworkSignedExchangeErrorField
-> NetworkSignedExchangeErrorField
$cmax :: NetworkSignedExchangeErrorField
-> NetworkSignedExchangeErrorField
-> NetworkSignedExchangeErrorField
>= :: NetworkSignedExchangeErrorField
-> NetworkSignedExchangeErrorField -> Bool
$c>= :: NetworkSignedExchangeErrorField
-> NetworkSignedExchangeErrorField -> Bool
> :: NetworkSignedExchangeErrorField
-> NetworkSignedExchangeErrorField -> Bool
$c> :: NetworkSignedExchangeErrorField
-> NetworkSignedExchangeErrorField -> Bool
<= :: NetworkSignedExchangeErrorField
-> NetworkSignedExchangeErrorField -> Bool
$c<= :: NetworkSignedExchangeErrorField
-> NetworkSignedExchangeErrorField -> Bool
< :: NetworkSignedExchangeErrorField
-> NetworkSignedExchangeErrorField -> Bool
$c< :: NetworkSignedExchangeErrorField
-> NetworkSignedExchangeErrorField -> Bool
compare :: NetworkSignedExchangeErrorField
-> NetworkSignedExchangeErrorField -> Ordering
$ccompare :: NetworkSignedExchangeErrorField
-> NetworkSignedExchangeErrorField -> Ordering
$cp1Ord :: Eq NetworkSignedExchangeErrorField
Ord, NetworkSignedExchangeErrorField
-> NetworkSignedExchangeErrorField -> Bool
(NetworkSignedExchangeErrorField
 -> NetworkSignedExchangeErrorField -> Bool)
-> (NetworkSignedExchangeErrorField
    -> NetworkSignedExchangeErrorField -> Bool)
-> Eq NetworkSignedExchangeErrorField
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkSignedExchangeErrorField
-> NetworkSignedExchangeErrorField -> Bool
$c/= :: NetworkSignedExchangeErrorField
-> NetworkSignedExchangeErrorField -> Bool
== :: NetworkSignedExchangeErrorField
-> NetworkSignedExchangeErrorField -> Bool
$c== :: NetworkSignedExchangeErrorField
-> NetworkSignedExchangeErrorField -> Bool
Eq, Int -> NetworkSignedExchangeErrorField -> ShowS
[NetworkSignedExchangeErrorField] -> ShowS
NetworkSignedExchangeErrorField -> String
(Int -> NetworkSignedExchangeErrorField -> ShowS)
-> (NetworkSignedExchangeErrorField -> String)
-> ([NetworkSignedExchangeErrorField] -> ShowS)
-> Show NetworkSignedExchangeErrorField
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkSignedExchangeErrorField] -> ShowS
$cshowList :: [NetworkSignedExchangeErrorField] -> ShowS
show :: NetworkSignedExchangeErrorField -> String
$cshow :: NetworkSignedExchangeErrorField -> String
showsPrec :: Int -> NetworkSignedExchangeErrorField -> ShowS
$cshowsPrec :: Int -> NetworkSignedExchangeErrorField -> ShowS
Show, ReadPrec [NetworkSignedExchangeErrorField]
ReadPrec NetworkSignedExchangeErrorField
Int -> ReadS NetworkSignedExchangeErrorField
ReadS [NetworkSignedExchangeErrorField]
(Int -> ReadS NetworkSignedExchangeErrorField)
-> ReadS [NetworkSignedExchangeErrorField]
-> ReadPrec NetworkSignedExchangeErrorField
-> ReadPrec [NetworkSignedExchangeErrorField]
-> Read NetworkSignedExchangeErrorField
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [NetworkSignedExchangeErrorField]
$creadListPrec :: ReadPrec [NetworkSignedExchangeErrorField]
readPrec :: ReadPrec NetworkSignedExchangeErrorField
$creadPrec :: ReadPrec NetworkSignedExchangeErrorField
readList :: ReadS [NetworkSignedExchangeErrorField]
$creadList :: ReadS [NetworkSignedExchangeErrorField]
readsPrec :: Int -> ReadS NetworkSignedExchangeErrorField
$creadsPrec :: Int -> ReadS NetworkSignedExchangeErrorField
Read)
instance FromJSON NetworkSignedExchangeErrorField where
  parseJSON :: Value -> Parser NetworkSignedExchangeErrorField
parseJSON = String
-> (Text -> Parser NetworkSignedExchangeErrorField)
-> Value
-> Parser NetworkSignedExchangeErrorField
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"NetworkSignedExchangeErrorField" ((Text -> Parser NetworkSignedExchangeErrorField)
 -> Value -> Parser NetworkSignedExchangeErrorField)
-> (Text -> Parser NetworkSignedExchangeErrorField)
-> Value
-> Parser NetworkSignedExchangeErrorField
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"signatureSig" -> NetworkSignedExchangeErrorField
-> Parser NetworkSignedExchangeErrorField
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkSignedExchangeErrorField
NetworkSignedExchangeErrorFieldSignatureSig
    Text
"signatureIntegrity" -> NetworkSignedExchangeErrorField
-> Parser NetworkSignedExchangeErrorField
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkSignedExchangeErrorField
NetworkSignedExchangeErrorFieldSignatureIntegrity
    Text
"signatureCertUrl" -> NetworkSignedExchangeErrorField
-> Parser NetworkSignedExchangeErrorField
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkSignedExchangeErrorField
NetworkSignedExchangeErrorFieldSignatureCertUrl
    Text
"signatureCertSha256" -> NetworkSignedExchangeErrorField
-> Parser NetworkSignedExchangeErrorField
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkSignedExchangeErrorField
NetworkSignedExchangeErrorFieldSignatureCertSha256
    Text
"signatureValidityUrl" -> NetworkSignedExchangeErrorField
-> Parser NetworkSignedExchangeErrorField
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkSignedExchangeErrorField
NetworkSignedExchangeErrorFieldSignatureValidityUrl
    Text
"signatureTimestamps" -> NetworkSignedExchangeErrorField
-> Parser NetworkSignedExchangeErrorField
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkSignedExchangeErrorField
NetworkSignedExchangeErrorFieldSignatureTimestamps
    Text
"_" -> String -> Parser NetworkSignedExchangeErrorField
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse NetworkSignedExchangeErrorField"
instance ToJSON NetworkSignedExchangeErrorField where
  toJSON :: NetworkSignedExchangeErrorField -> Value
toJSON NetworkSignedExchangeErrorField
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case NetworkSignedExchangeErrorField
v of
    NetworkSignedExchangeErrorField
NetworkSignedExchangeErrorFieldSignatureSig -> Text
"signatureSig"
    NetworkSignedExchangeErrorField
NetworkSignedExchangeErrorFieldSignatureIntegrity -> Text
"signatureIntegrity"
    NetworkSignedExchangeErrorField
NetworkSignedExchangeErrorFieldSignatureCertUrl -> Text
"signatureCertUrl"
    NetworkSignedExchangeErrorField
NetworkSignedExchangeErrorFieldSignatureCertSha256 -> Text
"signatureCertSha256"
    NetworkSignedExchangeErrorField
NetworkSignedExchangeErrorFieldSignatureValidityUrl -> Text
"signatureValidityUrl"
    NetworkSignedExchangeErrorField
NetworkSignedExchangeErrorFieldSignatureTimestamps -> Text
"signatureTimestamps"

-- | Type 'Network.SignedExchangeError'.
--   Information about a signed exchange response.
data NetworkSignedExchangeError = NetworkSignedExchangeError
  {
    -- | Error message.
    NetworkSignedExchangeError -> Text
networkSignedExchangeErrorMessage :: T.Text,
    -- | The index of the signature which caused the error.
    NetworkSignedExchangeError -> Maybe Int
networkSignedExchangeErrorSignatureIndex :: Maybe Int,
    -- | The field which caused the error.
    NetworkSignedExchangeError -> Maybe NetworkSignedExchangeErrorField
networkSignedExchangeErrorErrorField :: Maybe NetworkSignedExchangeErrorField
  }
  deriving (NetworkSignedExchangeError -> NetworkSignedExchangeError -> Bool
(NetworkSignedExchangeError -> NetworkSignedExchangeError -> Bool)
-> (NetworkSignedExchangeError
    -> NetworkSignedExchangeError -> Bool)
-> Eq NetworkSignedExchangeError
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkSignedExchangeError -> NetworkSignedExchangeError -> Bool
$c/= :: NetworkSignedExchangeError -> NetworkSignedExchangeError -> Bool
== :: NetworkSignedExchangeError -> NetworkSignedExchangeError -> Bool
$c== :: NetworkSignedExchangeError -> NetworkSignedExchangeError -> Bool
Eq, Int -> NetworkSignedExchangeError -> ShowS
[NetworkSignedExchangeError] -> ShowS
NetworkSignedExchangeError -> String
(Int -> NetworkSignedExchangeError -> ShowS)
-> (NetworkSignedExchangeError -> String)
-> ([NetworkSignedExchangeError] -> ShowS)
-> Show NetworkSignedExchangeError
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkSignedExchangeError] -> ShowS
$cshowList :: [NetworkSignedExchangeError] -> ShowS
show :: NetworkSignedExchangeError -> String
$cshow :: NetworkSignedExchangeError -> String
showsPrec :: Int -> NetworkSignedExchangeError -> ShowS
$cshowsPrec :: Int -> NetworkSignedExchangeError -> ShowS
Show)
instance FromJSON NetworkSignedExchangeError where
  parseJSON :: Value -> Parser NetworkSignedExchangeError
parseJSON = String
-> (Object -> Parser NetworkSignedExchangeError)
-> Value
-> Parser NetworkSignedExchangeError
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkSignedExchangeError" ((Object -> Parser NetworkSignedExchangeError)
 -> Value -> Parser NetworkSignedExchangeError)
-> (Object -> Parser NetworkSignedExchangeError)
-> Value
-> Parser NetworkSignedExchangeError
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> Maybe Int
-> Maybe NetworkSignedExchangeErrorField
-> NetworkSignedExchangeError
NetworkSignedExchangeError
    (Text
 -> Maybe Int
 -> Maybe NetworkSignedExchangeErrorField
 -> NetworkSignedExchangeError)
-> Parser Text
-> Parser
     (Maybe Int
      -> Maybe NetworkSignedExchangeErrorField
      -> NetworkSignedExchangeError)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"message"
    Parser
  (Maybe Int
   -> Maybe NetworkSignedExchangeErrorField
   -> NetworkSignedExchangeError)
-> Parser (Maybe Int)
-> Parser
     (Maybe NetworkSignedExchangeErrorField
      -> NetworkSignedExchangeError)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Int)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"signatureIndex"
    Parser
  (Maybe NetworkSignedExchangeErrorField
   -> NetworkSignedExchangeError)
-> Parser (Maybe NetworkSignedExchangeErrorField)
-> Parser NetworkSignedExchangeError
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe NetworkSignedExchangeErrorField)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"errorField"
instance ToJSON NetworkSignedExchangeError where
  toJSON :: NetworkSignedExchangeError -> Value
toJSON NetworkSignedExchangeError
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"message" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkSignedExchangeError -> Text
networkSignedExchangeErrorMessage NetworkSignedExchangeError
p),
    (Text
"signatureIndex" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkSignedExchangeError -> Maybe Int
networkSignedExchangeErrorSignatureIndex NetworkSignedExchangeError
p),
    (Text
"errorField" Text -> NetworkSignedExchangeErrorField -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkSignedExchangeErrorField -> Pair)
-> Maybe NetworkSignedExchangeErrorField -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkSignedExchangeError -> Maybe NetworkSignedExchangeErrorField
networkSignedExchangeErrorErrorField NetworkSignedExchangeError
p)
    ]

-- | Type 'Network.SignedExchangeInfo'.
--   Information about a signed exchange response.
data NetworkSignedExchangeInfo = NetworkSignedExchangeInfo
  {
    -- | The outer response of signed HTTP exchange which was received from network.
    NetworkSignedExchangeInfo -> NetworkResponse
networkSignedExchangeInfoOuterResponse :: NetworkResponse,
    -- | Information about the signed exchange header.
    NetworkSignedExchangeInfo -> Maybe NetworkSignedExchangeHeader
networkSignedExchangeInfoHeader :: Maybe NetworkSignedExchangeHeader,
    -- | Security details for the signed exchange header.
    NetworkSignedExchangeInfo -> Maybe NetworkSecurityDetails
networkSignedExchangeInfoSecurityDetails :: Maybe NetworkSecurityDetails,
    -- | Errors occurred while handling the signed exchagne.
    NetworkSignedExchangeInfo -> Maybe [NetworkSignedExchangeError]
networkSignedExchangeInfoErrors :: Maybe [NetworkSignedExchangeError]
  }
  deriving (NetworkSignedExchangeInfo -> NetworkSignedExchangeInfo -> Bool
(NetworkSignedExchangeInfo -> NetworkSignedExchangeInfo -> Bool)
-> (NetworkSignedExchangeInfo -> NetworkSignedExchangeInfo -> Bool)
-> Eq NetworkSignedExchangeInfo
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkSignedExchangeInfo -> NetworkSignedExchangeInfo -> Bool
$c/= :: NetworkSignedExchangeInfo -> NetworkSignedExchangeInfo -> Bool
== :: NetworkSignedExchangeInfo -> NetworkSignedExchangeInfo -> Bool
$c== :: NetworkSignedExchangeInfo -> NetworkSignedExchangeInfo -> Bool
Eq, Int -> NetworkSignedExchangeInfo -> ShowS
[NetworkSignedExchangeInfo] -> ShowS
NetworkSignedExchangeInfo -> String
(Int -> NetworkSignedExchangeInfo -> ShowS)
-> (NetworkSignedExchangeInfo -> String)
-> ([NetworkSignedExchangeInfo] -> ShowS)
-> Show NetworkSignedExchangeInfo
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkSignedExchangeInfo] -> ShowS
$cshowList :: [NetworkSignedExchangeInfo] -> ShowS
show :: NetworkSignedExchangeInfo -> String
$cshow :: NetworkSignedExchangeInfo -> String
showsPrec :: Int -> NetworkSignedExchangeInfo -> ShowS
$cshowsPrec :: Int -> NetworkSignedExchangeInfo -> ShowS
Show)
instance FromJSON NetworkSignedExchangeInfo where
  parseJSON :: Value -> Parser NetworkSignedExchangeInfo
parseJSON = String
-> (Object -> Parser NetworkSignedExchangeInfo)
-> Value
-> Parser NetworkSignedExchangeInfo
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkSignedExchangeInfo" ((Object -> Parser NetworkSignedExchangeInfo)
 -> Value -> Parser NetworkSignedExchangeInfo)
-> (Object -> Parser NetworkSignedExchangeInfo)
-> Value
-> Parser NetworkSignedExchangeInfo
forall a b. (a -> b) -> a -> b
$ \Object
o -> NetworkResponse
-> Maybe NetworkSignedExchangeHeader
-> Maybe NetworkSecurityDetails
-> Maybe [NetworkSignedExchangeError]
-> NetworkSignedExchangeInfo
NetworkSignedExchangeInfo
    (NetworkResponse
 -> Maybe NetworkSignedExchangeHeader
 -> Maybe NetworkSecurityDetails
 -> Maybe [NetworkSignedExchangeError]
 -> NetworkSignedExchangeInfo)
-> Parser NetworkResponse
-> Parser
     (Maybe NetworkSignedExchangeHeader
      -> Maybe NetworkSecurityDetails
      -> Maybe [NetworkSignedExchangeError]
      -> NetworkSignedExchangeInfo)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser NetworkResponse
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"outerResponse"
    Parser
  (Maybe NetworkSignedExchangeHeader
   -> Maybe NetworkSecurityDetails
   -> Maybe [NetworkSignedExchangeError]
   -> NetworkSignedExchangeInfo)
-> Parser (Maybe NetworkSignedExchangeHeader)
-> Parser
     (Maybe NetworkSecurityDetails
      -> Maybe [NetworkSignedExchangeError] -> NetworkSignedExchangeInfo)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe NetworkSignedExchangeHeader)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"header"
    Parser
  (Maybe NetworkSecurityDetails
   -> Maybe [NetworkSignedExchangeError] -> NetworkSignedExchangeInfo)
-> Parser (Maybe NetworkSecurityDetails)
-> Parser
     (Maybe [NetworkSignedExchangeError] -> NetworkSignedExchangeInfo)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe NetworkSecurityDetails)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"securityDetails"
    Parser
  (Maybe [NetworkSignedExchangeError] -> NetworkSignedExchangeInfo)
-> Parser (Maybe [NetworkSignedExchangeError])
-> Parser NetworkSignedExchangeInfo
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe [NetworkSignedExchangeError])
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"errors"
instance ToJSON NetworkSignedExchangeInfo where
  toJSON :: NetworkSignedExchangeInfo -> Value
toJSON NetworkSignedExchangeInfo
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"outerResponse" Text -> NetworkResponse -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkResponse -> Pair) -> Maybe NetworkResponse -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> NetworkResponse -> Maybe NetworkResponse
forall a. a -> Maybe a
Just (NetworkSignedExchangeInfo -> NetworkResponse
networkSignedExchangeInfoOuterResponse NetworkSignedExchangeInfo
p),
    (Text
"header" Text -> NetworkSignedExchangeHeader -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkSignedExchangeHeader -> Pair)
-> Maybe NetworkSignedExchangeHeader -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkSignedExchangeInfo -> Maybe NetworkSignedExchangeHeader
networkSignedExchangeInfoHeader NetworkSignedExchangeInfo
p),
    (Text
"securityDetails" Text -> NetworkSecurityDetails -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkSecurityDetails -> Pair)
-> Maybe NetworkSecurityDetails -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkSignedExchangeInfo -> Maybe NetworkSecurityDetails
networkSignedExchangeInfoSecurityDetails NetworkSignedExchangeInfo
p),
    (Text
"errors" Text -> [NetworkSignedExchangeError] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([NetworkSignedExchangeError] -> Pair)
-> Maybe [NetworkSignedExchangeError] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkSignedExchangeInfo -> Maybe [NetworkSignedExchangeError]
networkSignedExchangeInfoErrors NetworkSignedExchangeInfo
p)
    ]

-- | Type 'Network.ContentEncoding'.
--   List of content encodings supported by the backend.
data NetworkContentEncoding = NetworkContentEncodingDeflate | NetworkContentEncodingGzip | NetworkContentEncodingBr
  deriving (Eq NetworkContentEncoding
Eq NetworkContentEncoding
-> (NetworkContentEncoding -> NetworkContentEncoding -> Ordering)
-> (NetworkContentEncoding -> NetworkContentEncoding -> Bool)
-> (NetworkContentEncoding -> NetworkContentEncoding -> Bool)
-> (NetworkContentEncoding -> NetworkContentEncoding -> Bool)
-> (NetworkContentEncoding -> NetworkContentEncoding -> Bool)
-> (NetworkContentEncoding
    -> NetworkContentEncoding -> NetworkContentEncoding)
-> (NetworkContentEncoding
    -> NetworkContentEncoding -> NetworkContentEncoding)
-> Ord NetworkContentEncoding
NetworkContentEncoding -> NetworkContentEncoding -> Bool
NetworkContentEncoding -> NetworkContentEncoding -> Ordering
NetworkContentEncoding
-> NetworkContentEncoding -> NetworkContentEncoding
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: NetworkContentEncoding
-> NetworkContentEncoding -> NetworkContentEncoding
$cmin :: NetworkContentEncoding
-> NetworkContentEncoding -> NetworkContentEncoding
max :: NetworkContentEncoding
-> NetworkContentEncoding -> NetworkContentEncoding
$cmax :: NetworkContentEncoding
-> NetworkContentEncoding -> NetworkContentEncoding
>= :: NetworkContentEncoding -> NetworkContentEncoding -> Bool
$c>= :: NetworkContentEncoding -> NetworkContentEncoding -> Bool
> :: NetworkContentEncoding -> NetworkContentEncoding -> Bool
$c> :: NetworkContentEncoding -> NetworkContentEncoding -> Bool
<= :: NetworkContentEncoding -> NetworkContentEncoding -> Bool
$c<= :: NetworkContentEncoding -> NetworkContentEncoding -> Bool
< :: NetworkContentEncoding -> NetworkContentEncoding -> Bool
$c< :: NetworkContentEncoding -> NetworkContentEncoding -> Bool
compare :: NetworkContentEncoding -> NetworkContentEncoding -> Ordering
$ccompare :: NetworkContentEncoding -> NetworkContentEncoding -> Ordering
$cp1Ord :: Eq NetworkContentEncoding
Ord, NetworkContentEncoding -> NetworkContentEncoding -> Bool
(NetworkContentEncoding -> NetworkContentEncoding -> Bool)
-> (NetworkContentEncoding -> NetworkContentEncoding -> Bool)
-> Eq NetworkContentEncoding
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkContentEncoding -> NetworkContentEncoding -> Bool
$c/= :: NetworkContentEncoding -> NetworkContentEncoding -> Bool
== :: NetworkContentEncoding -> NetworkContentEncoding -> Bool
$c== :: NetworkContentEncoding -> NetworkContentEncoding -> Bool
Eq, Int -> NetworkContentEncoding -> ShowS
[NetworkContentEncoding] -> ShowS
NetworkContentEncoding -> String
(Int -> NetworkContentEncoding -> ShowS)
-> (NetworkContentEncoding -> String)
-> ([NetworkContentEncoding] -> ShowS)
-> Show NetworkContentEncoding
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkContentEncoding] -> ShowS
$cshowList :: [NetworkContentEncoding] -> ShowS
show :: NetworkContentEncoding -> String
$cshow :: NetworkContentEncoding -> String
showsPrec :: Int -> NetworkContentEncoding -> ShowS
$cshowsPrec :: Int -> NetworkContentEncoding -> ShowS
Show, ReadPrec [NetworkContentEncoding]
ReadPrec NetworkContentEncoding
Int -> ReadS NetworkContentEncoding
ReadS [NetworkContentEncoding]
(Int -> ReadS NetworkContentEncoding)
-> ReadS [NetworkContentEncoding]
-> ReadPrec NetworkContentEncoding
-> ReadPrec [NetworkContentEncoding]
-> Read NetworkContentEncoding
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [NetworkContentEncoding]
$creadListPrec :: ReadPrec [NetworkContentEncoding]
readPrec :: ReadPrec NetworkContentEncoding
$creadPrec :: ReadPrec NetworkContentEncoding
readList :: ReadS [NetworkContentEncoding]
$creadList :: ReadS [NetworkContentEncoding]
readsPrec :: Int -> ReadS NetworkContentEncoding
$creadsPrec :: Int -> ReadS NetworkContentEncoding
Read)
instance FromJSON NetworkContentEncoding where
  parseJSON :: Value -> Parser NetworkContentEncoding
parseJSON = String
-> (Text -> Parser NetworkContentEncoding)
-> Value
-> Parser NetworkContentEncoding
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"NetworkContentEncoding" ((Text -> Parser NetworkContentEncoding)
 -> Value -> Parser NetworkContentEncoding)
-> (Text -> Parser NetworkContentEncoding)
-> Value
-> Parser NetworkContentEncoding
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"deflate" -> NetworkContentEncoding -> Parser NetworkContentEncoding
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkContentEncoding
NetworkContentEncodingDeflate
    Text
"gzip" -> NetworkContentEncoding -> Parser NetworkContentEncoding
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkContentEncoding
NetworkContentEncodingGzip
    Text
"br" -> NetworkContentEncoding -> Parser NetworkContentEncoding
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkContentEncoding
NetworkContentEncodingBr
    Text
"_" -> String -> Parser NetworkContentEncoding
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse NetworkContentEncoding"
instance ToJSON NetworkContentEncoding where
  toJSON :: NetworkContentEncoding -> Value
toJSON NetworkContentEncoding
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case NetworkContentEncoding
v of
    NetworkContentEncoding
NetworkContentEncodingDeflate -> Text
"deflate"
    NetworkContentEncoding
NetworkContentEncodingGzip -> Text
"gzip"
    NetworkContentEncoding
NetworkContentEncodingBr -> Text
"br"

-- | Type 'Network.PrivateNetworkRequestPolicy'.
data NetworkPrivateNetworkRequestPolicy = NetworkPrivateNetworkRequestPolicyAllow | NetworkPrivateNetworkRequestPolicyBlockFromInsecureToMorePrivate | NetworkPrivateNetworkRequestPolicyWarnFromInsecureToMorePrivate | NetworkPrivateNetworkRequestPolicyPreflightBlock | NetworkPrivateNetworkRequestPolicyPreflightWarn
  deriving (Eq NetworkPrivateNetworkRequestPolicy
Eq NetworkPrivateNetworkRequestPolicy
-> (NetworkPrivateNetworkRequestPolicy
    -> NetworkPrivateNetworkRequestPolicy -> Ordering)
-> (NetworkPrivateNetworkRequestPolicy
    -> NetworkPrivateNetworkRequestPolicy -> Bool)
-> (NetworkPrivateNetworkRequestPolicy
    -> NetworkPrivateNetworkRequestPolicy -> Bool)
-> (NetworkPrivateNetworkRequestPolicy
    -> NetworkPrivateNetworkRequestPolicy -> Bool)
-> (NetworkPrivateNetworkRequestPolicy
    -> NetworkPrivateNetworkRequestPolicy -> Bool)
-> (NetworkPrivateNetworkRequestPolicy
    -> NetworkPrivateNetworkRequestPolicy
    -> NetworkPrivateNetworkRequestPolicy)
-> (NetworkPrivateNetworkRequestPolicy
    -> NetworkPrivateNetworkRequestPolicy
    -> NetworkPrivateNetworkRequestPolicy)
-> Ord NetworkPrivateNetworkRequestPolicy
NetworkPrivateNetworkRequestPolicy
-> NetworkPrivateNetworkRequestPolicy -> Bool
NetworkPrivateNetworkRequestPolicy
-> NetworkPrivateNetworkRequestPolicy -> Ordering
NetworkPrivateNetworkRequestPolicy
-> NetworkPrivateNetworkRequestPolicy
-> NetworkPrivateNetworkRequestPolicy
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: NetworkPrivateNetworkRequestPolicy
-> NetworkPrivateNetworkRequestPolicy
-> NetworkPrivateNetworkRequestPolicy
$cmin :: NetworkPrivateNetworkRequestPolicy
-> NetworkPrivateNetworkRequestPolicy
-> NetworkPrivateNetworkRequestPolicy
max :: NetworkPrivateNetworkRequestPolicy
-> NetworkPrivateNetworkRequestPolicy
-> NetworkPrivateNetworkRequestPolicy
$cmax :: NetworkPrivateNetworkRequestPolicy
-> NetworkPrivateNetworkRequestPolicy
-> NetworkPrivateNetworkRequestPolicy
>= :: NetworkPrivateNetworkRequestPolicy
-> NetworkPrivateNetworkRequestPolicy -> Bool
$c>= :: NetworkPrivateNetworkRequestPolicy
-> NetworkPrivateNetworkRequestPolicy -> Bool
> :: NetworkPrivateNetworkRequestPolicy
-> NetworkPrivateNetworkRequestPolicy -> Bool
$c> :: NetworkPrivateNetworkRequestPolicy
-> NetworkPrivateNetworkRequestPolicy -> Bool
<= :: NetworkPrivateNetworkRequestPolicy
-> NetworkPrivateNetworkRequestPolicy -> Bool
$c<= :: NetworkPrivateNetworkRequestPolicy
-> NetworkPrivateNetworkRequestPolicy -> Bool
< :: NetworkPrivateNetworkRequestPolicy
-> NetworkPrivateNetworkRequestPolicy -> Bool
$c< :: NetworkPrivateNetworkRequestPolicy
-> NetworkPrivateNetworkRequestPolicy -> Bool
compare :: NetworkPrivateNetworkRequestPolicy
-> NetworkPrivateNetworkRequestPolicy -> Ordering
$ccompare :: NetworkPrivateNetworkRequestPolicy
-> NetworkPrivateNetworkRequestPolicy -> Ordering
$cp1Ord :: Eq NetworkPrivateNetworkRequestPolicy
Ord, NetworkPrivateNetworkRequestPolicy
-> NetworkPrivateNetworkRequestPolicy -> Bool
(NetworkPrivateNetworkRequestPolicy
 -> NetworkPrivateNetworkRequestPolicy -> Bool)
-> (NetworkPrivateNetworkRequestPolicy
    -> NetworkPrivateNetworkRequestPolicy -> Bool)
-> Eq NetworkPrivateNetworkRequestPolicy
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkPrivateNetworkRequestPolicy
-> NetworkPrivateNetworkRequestPolicy -> Bool
$c/= :: NetworkPrivateNetworkRequestPolicy
-> NetworkPrivateNetworkRequestPolicy -> Bool
== :: NetworkPrivateNetworkRequestPolicy
-> NetworkPrivateNetworkRequestPolicy -> Bool
$c== :: NetworkPrivateNetworkRequestPolicy
-> NetworkPrivateNetworkRequestPolicy -> Bool
Eq, Int -> NetworkPrivateNetworkRequestPolicy -> ShowS
[NetworkPrivateNetworkRequestPolicy] -> ShowS
NetworkPrivateNetworkRequestPolicy -> String
(Int -> NetworkPrivateNetworkRequestPolicy -> ShowS)
-> (NetworkPrivateNetworkRequestPolicy -> String)
-> ([NetworkPrivateNetworkRequestPolicy] -> ShowS)
-> Show NetworkPrivateNetworkRequestPolicy
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkPrivateNetworkRequestPolicy] -> ShowS
$cshowList :: [NetworkPrivateNetworkRequestPolicy] -> ShowS
show :: NetworkPrivateNetworkRequestPolicy -> String
$cshow :: NetworkPrivateNetworkRequestPolicy -> String
showsPrec :: Int -> NetworkPrivateNetworkRequestPolicy -> ShowS
$cshowsPrec :: Int -> NetworkPrivateNetworkRequestPolicy -> ShowS
Show, ReadPrec [NetworkPrivateNetworkRequestPolicy]
ReadPrec NetworkPrivateNetworkRequestPolicy
Int -> ReadS NetworkPrivateNetworkRequestPolicy
ReadS [NetworkPrivateNetworkRequestPolicy]
(Int -> ReadS NetworkPrivateNetworkRequestPolicy)
-> ReadS [NetworkPrivateNetworkRequestPolicy]
-> ReadPrec NetworkPrivateNetworkRequestPolicy
-> ReadPrec [NetworkPrivateNetworkRequestPolicy]
-> Read NetworkPrivateNetworkRequestPolicy
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [NetworkPrivateNetworkRequestPolicy]
$creadListPrec :: ReadPrec [NetworkPrivateNetworkRequestPolicy]
readPrec :: ReadPrec NetworkPrivateNetworkRequestPolicy
$creadPrec :: ReadPrec NetworkPrivateNetworkRequestPolicy
readList :: ReadS [NetworkPrivateNetworkRequestPolicy]
$creadList :: ReadS [NetworkPrivateNetworkRequestPolicy]
readsPrec :: Int -> ReadS NetworkPrivateNetworkRequestPolicy
$creadsPrec :: Int -> ReadS NetworkPrivateNetworkRequestPolicy
Read)
instance FromJSON NetworkPrivateNetworkRequestPolicy where
  parseJSON :: Value -> Parser NetworkPrivateNetworkRequestPolicy
parseJSON = String
-> (Text -> Parser NetworkPrivateNetworkRequestPolicy)
-> Value
-> Parser NetworkPrivateNetworkRequestPolicy
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"NetworkPrivateNetworkRequestPolicy" ((Text -> Parser NetworkPrivateNetworkRequestPolicy)
 -> Value -> Parser NetworkPrivateNetworkRequestPolicy)
-> (Text -> Parser NetworkPrivateNetworkRequestPolicy)
-> Value
-> Parser NetworkPrivateNetworkRequestPolicy
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"Allow" -> NetworkPrivateNetworkRequestPolicy
-> Parser NetworkPrivateNetworkRequestPolicy
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkPrivateNetworkRequestPolicy
NetworkPrivateNetworkRequestPolicyAllow
    Text
"BlockFromInsecureToMorePrivate" -> NetworkPrivateNetworkRequestPolicy
-> Parser NetworkPrivateNetworkRequestPolicy
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkPrivateNetworkRequestPolicy
NetworkPrivateNetworkRequestPolicyBlockFromInsecureToMorePrivate
    Text
"WarnFromInsecureToMorePrivate" -> NetworkPrivateNetworkRequestPolicy
-> Parser NetworkPrivateNetworkRequestPolicy
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkPrivateNetworkRequestPolicy
NetworkPrivateNetworkRequestPolicyWarnFromInsecureToMorePrivate
    Text
"PreflightBlock" -> NetworkPrivateNetworkRequestPolicy
-> Parser NetworkPrivateNetworkRequestPolicy
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkPrivateNetworkRequestPolicy
NetworkPrivateNetworkRequestPolicyPreflightBlock
    Text
"PreflightWarn" -> NetworkPrivateNetworkRequestPolicy
-> Parser NetworkPrivateNetworkRequestPolicy
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkPrivateNetworkRequestPolicy
NetworkPrivateNetworkRequestPolicyPreflightWarn
    Text
"_" -> String -> Parser NetworkPrivateNetworkRequestPolicy
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse NetworkPrivateNetworkRequestPolicy"
instance ToJSON NetworkPrivateNetworkRequestPolicy where
  toJSON :: NetworkPrivateNetworkRequestPolicy -> Value
toJSON NetworkPrivateNetworkRequestPolicy
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case NetworkPrivateNetworkRequestPolicy
v of
    NetworkPrivateNetworkRequestPolicy
NetworkPrivateNetworkRequestPolicyAllow -> Text
"Allow"
    NetworkPrivateNetworkRequestPolicy
NetworkPrivateNetworkRequestPolicyBlockFromInsecureToMorePrivate -> Text
"BlockFromInsecureToMorePrivate"
    NetworkPrivateNetworkRequestPolicy
NetworkPrivateNetworkRequestPolicyWarnFromInsecureToMorePrivate -> Text
"WarnFromInsecureToMorePrivate"
    NetworkPrivateNetworkRequestPolicy
NetworkPrivateNetworkRequestPolicyPreflightBlock -> Text
"PreflightBlock"
    NetworkPrivateNetworkRequestPolicy
NetworkPrivateNetworkRequestPolicyPreflightWarn -> Text
"PreflightWarn"

-- | Type 'Network.IPAddressSpace'.
data NetworkIPAddressSpace = NetworkIPAddressSpaceLocal | NetworkIPAddressSpacePrivate | NetworkIPAddressSpacePublic | NetworkIPAddressSpaceUnknown
  deriving (Eq NetworkIPAddressSpace
Eq NetworkIPAddressSpace
-> (NetworkIPAddressSpace -> NetworkIPAddressSpace -> Ordering)
-> (NetworkIPAddressSpace -> NetworkIPAddressSpace -> Bool)
-> (NetworkIPAddressSpace -> NetworkIPAddressSpace -> Bool)
-> (NetworkIPAddressSpace -> NetworkIPAddressSpace -> Bool)
-> (NetworkIPAddressSpace -> NetworkIPAddressSpace -> Bool)
-> (NetworkIPAddressSpace
    -> NetworkIPAddressSpace -> NetworkIPAddressSpace)
-> (NetworkIPAddressSpace
    -> NetworkIPAddressSpace -> NetworkIPAddressSpace)
-> Ord NetworkIPAddressSpace
NetworkIPAddressSpace -> NetworkIPAddressSpace -> Bool
NetworkIPAddressSpace -> NetworkIPAddressSpace -> Ordering
NetworkIPAddressSpace
-> NetworkIPAddressSpace -> NetworkIPAddressSpace
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: NetworkIPAddressSpace
-> NetworkIPAddressSpace -> NetworkIPAddressSpace
$cmin :: NetworkIPAddressSpace
-> NetworkIPAddressSpace -> NetworkIPAddressSpace
max :: NetworkIPAddressSpace
-> NetworkIPAddressSpace -> NetworkIPAddressSpace
$cmax :: NetworkIPAddressSpace
-> NetworkIPAddressSpace -> NetworkIPAddressSpace
>= :: NetworkIPAddressSpace -> NetworkIPAddressSpace -> Bool
$c>= :: NetworkIPAddressSpace -> NetworkIPAddressSpace -> Bool
> :: NetworkIPAddressSpace -> NetworkIPAddressSpace -> Bool
$c> :: NetworkIPAddressSpace -> NetworkIPAddressSpace -> Bool
<= :: NetworkIPAddressSpace -> NetworkIPAddressSpace -> Bool
$c<= :: NetworkIPAddressSpace -> NetworkIPAddressSpace -> Bool
< :: NetworkIPAddressSpace -> NetworkIPAddressSpace -> Bool
$c< :: NetworkIPAddressSpace -> NetworkIPAddressSpace -> Bool
compare :: NetworkIPAddressSpace -> NetworkIPAddressSpace -> Ordering
$ccompare :: NetworkIPAddressSpace -> NetworkIPAddressSpace -> Ordering
$cp1Ord :: Eq NetworkIPAddressSpace
Ord, NetworkIPAddressSpace -> NetworkIPAddressSpace -> Bool
(NetworkIPAddressSpace -> NetworkIPAddressSpace -> Bool)
-> (NetworkIPAddressSpace -> NetworkIPAddressSpace -> Bool)
-> Eq NetworkIPAddressSpace
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkIPAddressSpace -> NetworkIPAddressSpace -> Bool
$c/= :: NetworkIPAddressSpace -> NetworkIPAddressSpace -> Bool
== :: NetworkIPAddressSpace -> NetworkIPAddressSpace -> Bool
$c== :: NetworkIPAddressSpace -> NetworkIPAddressSpace -> Bool
Eq, Int -> NetworkIPAddressSpace -> ShowS
[NetworkIPAddressSpace] -> ShowS
NetworkIPAddressSpace -> String
(Int -> NetworkIPAddressSpace -> ShowS)
-> (NetworkIPAddressSpace -> String)
-> ([NetworkIPAddressSpace] -> ShowS)
-> Show NetworkIPAddressSpace
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkIPAddressSpace] -> ShowS
$cshowList :: [NetworkIPAddressSpace] -> ShowS
show :: NetworkIPAddressSpace -> String
$cshow :: NetworkIPAddressSpace -> String
showsPrec :: Int -> NetworkIPAddressSpace -> ShowS
$cshowsPrec :: Int -> NetworkIPAddressSpace -> ShowS
Show, ReadPrec [NetworkIPAddressSpace]
ReadPrec NetworkIPAddressSpace
Int -> ReadS NetworkIPAddressSpace
ReadS [NetworkIPAddressSpace]
(Int -> ReadS NetworkIPAddressSpace)
-> ReadS [NetworkIPAddressSpace]
-> ReadPrec NetworkIPAddressSpace
-> ReadPrec [NetworkIPAddressSpace]
-> Read NetworkIPAddressSpace
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [NetworkIPAddressSpace]
$creadListPrec :: ReadPrec [NetworkIPAddressSpace]
readPrec :: ReadPrec NetworkIPAddressSpace
$creadPrec :: ReadPrec NetworkIPAddressSpace
readList :: ReadS [NetworkIPAddressSpace]
$creadList :: ReadS [NetworkIPAddressSpace]
readsPrec :: Int -> ReadS NetworkIPAddressSpace
$creadsPrec :: Int -> ReadS NetworkIPAddressSpace
Read)
instance FromJSON NetworkIPAddressSpace where
  parseJSON :: Value -> Parser NetworkIPAddressSpace
parseJSON = String
-> (Text -> Parser NetworkIPAddressSpace)
-> Value
-> Parser NetworkIPAddressSpace
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"NetworkIPAddressSpace" ((Text -> Parser NetworkIPAddressSpace)
 -> Value -> Parser NetworkIPAddressSpace)
-> (Text -> Parser NetworkIPAddressSpace)
-> Value
-> Parser NetworkIPAddressSpace
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"Local" -> NetworkIPAddressSpace -> Parser NetworkIPAddressSpace
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkIPAddressSpace
NetworkIPAddressSpaceLocal
    Text
"Private" -> NetworkIPAddressSpace -> Parser NetworkIPAddressSpace
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkIPAddressSpace
NetworkIPAddressSpacePrivate
    Text
"Public" -> NetworkIPAddressSpace -> Parser NetworkIPAddressSpace
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkIPAddressSpace
NetworkIPAddressSpacePublic
    Text
"Unknown" -> NetworkIPAddressSpace -> Parser NetworkIPAddressSpace
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkIPAddressSpace
NetworkIPAddressSpaceUnknown
    Text
"_" -> String -> Parser NetworkIPAddressSpace
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse NetworkIPAddressSpace"
instance ToJSON NetworkIPAddressSpace where
  toJSON :: NetworkIPAddressSpace -> Value
toJSON NetworkIPAddressSpace
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case NetworkIPAddressSpace
v of
    NetworkIPAddressSpace
NetworkIPAddressSpaceLocal -> Text
"Local"
    NetworkIPAddressSpace
NetworkIPAddressSpacePrivate -> Text
"Private"
    NetworkIPAddressSpace
NetworkIPAddressSpacePublic -> Text
"Public"
    NetworkIPAddressSpace
NetworkIPAddressSpaceUnknown -> Text
"Unknown"

-- | Type 'Network.ConnectTiming'.
data NetworkConnectTiming = NetworkConnectTiming
  {
    -- | Timing's requestTime is a baseline in seconds, while the other numbers are ticks in
    --   milliseconds relatively to this requestTime. Matches ResourceTiming's requestTime for
    --   the same request (but not for redirected requests).
    NetworkConnectTiming -> Double
networkConnectTimingRequestTime :: Double
  }
  deriving (NetworkConnectTiming -> NetworkConnectTiming -> Bool
(NetworkConnectTiming -> NetworkConnectTiming -> Bool)
-> (NetworkConnectTiming -> NetworkConnectTiming -> Bool)
-> Eq NetworkConnectTiming
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkConnectTiming -> NetworkConnectTiming -> Bool
$c/= :: NetworkConnectTiming -> NetworkConnectTiming -> Bool
== :: NetworkConnectTiming -> NetworkConnectTiming -> Bool
$c== :: NetworkConnectTiming -> NetworkConnectTiming -> Bool
Eq, Int -> NetworkConnectTiming -> ShowS
[NetworkConnectTiming] -> ShowS
NetworkConnectTiming -> String
(Int -> NetworkConnectTiming -> ShowS)
-> (NetworkConnectTiming -> String)
-> ([NetworkConnectTiming] -> ShowS)
-> Show NetworkConnectTiming
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkConnectTiming] -> ShowS
$cshowList :: [NetworkConnectTiming] -> ShowS
show :: NetworkConnectTiming -> String
$cshow :: NetworkConnectTiming -> String
showsPrec :: Int -> NetworkConnectTiming -> ShowS
$cshowsPrec :: Int -> NetworkConnectTiming -> ShowS
Show)
instance FromJSON NetworkConnectTiming where
  parseJSON :: Value -> Parser NetworkConnectTiming
parseJSON = String
-> (Object -> Parser NetworkConnectTiming)
-> Value
-> Parser NetworkConnectTiming
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkConnectTiming" ((Object -> Parser NetworkConnectTiming)
 -> Value -> Parser NetworkConnectTiming)
-> (Object -> Parser NetworkConnectTiming)
-> Value
-> Parser NetworkConnectTiming
forall a b. (a -> b) -> a -> b
$ \Object
o -> Double -> NetworkConnectTiming
NetworkConnectTiming
    (Double -> NetworkConnectTiming)
-> Parser Double -> Parser NetworkConnectTiming
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"requestTime"
instance ToJSON NetworkConnectTiming where
  toJSON :: NetworkConnectTiming -> Value
toJSON NetworkConnectTiming
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"requestTime" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (NetworkConnectTiming -> Double
networkConnectTimingRequestTime NetworkConnectTiming
p)
    ]

-- | Type 'Network.ClientSecurityState'.
data NetworkClientSecurityState = NetworkClientSecurityState
  {
    NetworkClientSecurityState -> Bool
networkClientSecurityStateInitiatorIsSecureContext :: Bool,
    NetworkClientSecurityState -> NetworkIPAddressSpace
networkClientSecurityStateInitiatorIPAddressSpace :: NetworkIPAddressSpace,
    NetworkClientSecurityState -> NetworkPrivateNetworkRequestPolicy
networkClientSecurityStatePrivateNetworkRequestPolicy :: NetworkPrivateNetworkRequestPolicy
  }
  deriving (NetworkClientSecurityState -> NetworkClientSecurityState -> Bool
(NetworkClientSecurityState -> NetworkClientSecurityState -> Bool)
-> (NetworkClientSecurityState
    -> NetworkClientSecurityState -> Bool)
-> Eq NetworkClientSecurityState
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkClientSecurityState -> NetworkClientSecurityState -> Bool
$c/= :: NetworkClientSecurityState -> NetworkClientSecurityState -> Bool
== :: NetworkClientSecurityState -> NetworkClientSecurityState -> Bool
$c== :: NetworkClientSecurityState -> NetworkClientSecurityState -> Bool
Eq, Int -> NetworkClientSecurityState -> ShowS
[NetworkClientSecurityState] -> ShowS
NetworkClientSecurityState -> String
(Int -> NetworkClientSecurityState -> ShowS)
-> (NetworkClientSecurityState -> String)
-> ([NetworkClientSecurityState] -> ShowS)
-> Show NetworkClientSecurityState
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkClientSecurityState] -> ShowS
$cshowList :: [NetworkClientSecurityState] -> ShowS
show :: NetworkClientSecurityState -> String
$cshow :: NetworkClientSecurityState -> String
showsPrec :: Int -> NetworkClientSecurityState -> ShowS
$cshowsPrec :: Int -> NetworkClientSecurityState -> ShowS
Show)
instance FromJSON NetworkClientSecurityState where
  parseJSON :: Value -> Parser NetworkClientSecurityState
parseJSON = String
-> (Object -> Parser NetworkClientSecurityState)
-> Value
-> Parser NetworkClientSecurityState
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkClientSecurityState" ((Object -> Parser NetworkClientSecurityState)
 -> Value -> Parser NetworkClientSecurityState)
-> (Object -> Parser NetworkClientSecurityState)
-> Value
-> Parser NetworkClientSecurityState
forall a b. (a -> b) -> a -> b
$ \Object
o -> Bool
-> NetworkIPAddressSpace
-> NetworkPrivateNetworkRequestPolicy
-> NetworkClientSecurityState
NetworkClientSecurityState
    (Bool
 -> NetworkIPAddressSpace
 -> NetworkPrivateNetworkRequestPolicy
 -> NetworkClientSecurityState)
-> Parser Bool
-> Parser
     (NetworkIPAddressSpace
      -> NetworkPrivateNetworkRequestPolicy
      -> NetworkClientSecurityState)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Bool
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"initiatorIsSecureContext"
    Parser
  (NetworkIPAddressSpace
   -> NetworkPrivateNetworkRequestPolicy
   -> NetworkClientSecurityState)
-> Parser NetworkIPAddressSpace
-> Parser
     (NetworkPrivateNetworkRequestPolicy -> NetworkClientSecurityState)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser NetworkIPAddressSpace
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"initiatorIPAddressSpace"
    Parser
  (NetworkPrivateNetworkRequestPolicy -> NetworkClientSecurityState)
-> Parser NetworkPrivateNetworkRequestPolicy
-> Parser NetworkClientSecurityState
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser NetworkPrivateNetworkRequestPolicy
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"privateNetworkRequestPolicy"
instance ToJSON NetworkClientSecurityState where
  toJSON :: NetworkClientSecurityState -> Value
toJSON NetworkClientSecurityState
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"initiatorIsSecureContext" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (NetworkClientSecurityState -> Bool
networkClientSecurityStateInitiatorIsSecureContext NetworkClientSecurityState
p),
    (Text
"initiatorIPAddressSpace" Text -> NetworkIPAddressSpace -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkIPAddressSpace -> Pair)
-> Maybe NetworkIPAddressSpace -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> NetworkIPAddressSpace -> Maybe NetworkIPAddressSpace
forall a. a -> Maybe a
Just (NetworkClientSecurityState -> NetworkIPAddressSpace
networkClientSecurityStateInitiatorIPAddressSpace NetworkClientSecurityState
p),
    (Text
"privateNetworkRequestPolicy" Text -> NetworkPrivateNetworkRequestPolicy -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkPrivateNetworkRequestPolicy -> Pair)
-> Maybe NetworkPrivateNetworkRequestPolicy -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> NetworkPrivateNetworkRequestPolicy
-> Maybe NetworkPrivateNetworkRequestPolicy
forall a. a -> Maybe a
Just (NetworkClientSecurityState -> NetworkPrivateNetworkRequestPolicy
networkClientSecurityStatePrivateNetworkRequestPolicy NetworkClientSecurityState
p)
    ]

-- | Type 'Network.CrossOriginOpenerPolicyValue'.
data NetworkCrossOriginOpenerPolicyValue = NetworkCrossOriginOpenerPolicyValueSameOrigin | NetworkCrossOriginOpenerPolicyValueSameOriginAllowPopups | NetworkCrossOriginOpenerPolicyValueRestrictProperties | NetworkCrossOriginOpenerPolicyValueUnsafeNone | NetworkCrossOriginOpenerPolicyValueSameOriginPlusCoep | NetworkCrossOriginOpenerPolicyValueRestrictPropertiesPlusCoep
  deriving (Eq NetworkCrossOriginOpenerPolicyValue
Eq NetworkCrossOriginOpenerPolicyValue
-> (NetworkCrossOriginOpenerPolicyValue
    -> NetworkCrossOriginOpenerPolicyValue -> Ordering)
-> (NetworkCrossOriginOpenerPolicyValue
    -> NetworkCrossOriginOpenerPolicyValue -> Bool)
-> (NetworkCrossOriginOpenerPolicyValue
    -> NetworkCrossOriginOpenerPolicyValue -> Bool)
-> (NetworkCrossOriginOpenerPolicyValue
    -> NetworkCrossOriginOpenerPolicyValue -> Bool)
-> (NetworkCrossOriginOpenerPolicyValue
    -> NetworkCrossOriginOpenerPolicyValue -> Bool)
-> (NetworkCrossOriginOpenerPolicyValue
    -> NetworkCrossOriginOpenerPolicyValue
    -> NetworkCrossOriginOpenerPolicyValue)
-> (NetworkCrossOriginOpenerPolicyValue
    -> NetworkCrossOriginOpenerPolicyValue
    -> NetworkCrossOriginOpenerPolicyValue)
-> Ord NetworkCrossOriginOpenerPolicyValue
NetworkCrossOriginOpenerPolicyValue
-> NetworkCrossOriginOpenerPolicyValue -> Bool
NetworkCrossOriginOpenerPolicyValue
-> NetworkCrossOriginOpenerPolicyValue -> Ordering
NetworkCrossOriginOpenerPolicyValue
-> NetworkCrossOriginOpenerPolicyValue
-> NetworkCrossOriginOpenerPolicyValue
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: NetworkCrossOriginOpenerPolicyValue
-> NetworkCrossOriginOpenerPolicyValue
-> NetworkCrossOriginOpenerPolicyValue
$cmin :: NetworkCrossOriginOpenerPolicyValue
-> NetworkCrossOriginOpenerPolicyValue
-> NetworkCrossOriginOpenerPolicyValue
max :: NetworkCrossOriginOpenerPolicyValue
-> NetworkCrossOriginOpenerPolicyValue
-> NetworkCrossOriginOpenerPolicyValue
$cmax :: NetworkCrossOriginOpenerPolicyValue
-> NetworkCrossOriginOpenerPolicyValue
-> NetworkCrossOriginOpenerPolicyValue
>= :: NetworkCrossOriginOpenerPolicyValue
-> NetworkCrossOriginOpenerPolicyValue -> Bool
$c>= :: NetworkCrossOriginOpenerPolicyValue
-> NetworkCrossOriginOpenerPolicyValue -> Bool
> :: NetworkCrossOriginOpenerPolicyValue
-> NetworkCrossOriginOpenerPolicyValue -> Bool
$c> :: NetworkCrossOriginOpenerPolicyValue
-> NetworkCrossOriginOpenerPolicyValue -> Bool
<= :: NetworkCrossOriginOpenerPolicyValue
-> NetworkCrossOriginOpenerPolicyValue -> Bool
$c<= :: NetworkCrossOriginOpenerPolicyValue
-> NetworkCrossOriginOpenerPolicyValue -> Bool
< :: NetworkCrossOriginOpenerPolicyValue
-> NetworkCrossOriginOpenerPolicyValue -> Bool
$c< :: NetworkCrossOriginOpenerPolicyValue
-> NetworkCrossOriginOpenerPolicyValue -> Bool
compare :: NetworkCrossOriginOpenerPolicyValue
-> NetworkCrossOriginOpenerPolicyValue -> Ordering
$ccompare :: NetworkCrossOriginOpenerPolicyValue
-> NetworkCrossOriginOpenerPolicyValue -> Ordering
$cp1Ord :: Eq NetworkCrossOriginOpenerPolicyValue
Ord, NetworkCrossOriginOpenerPolicyValue
-> NetworkCrossOriginOpenerPolicyValue -> Bool
(NetworkCrossOriginOpenerPolicyValue
 -> NetworkCrossOriginOpenerPolicyValue -> Bool)
-> (NetworkCrossOriginOpenerPolicyValue
    -> NetworkCrossOriginOpenerPolicyValue -> Bool)
-> Eq NetworkCrossOriginOpenerPolicyValue
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkCrossOriginOpenerPolicyValue
-> NetworkCrossOriginOpenerPolicyValue -> Bool
$c/= :: NetworkCrossOriginOpenerPolicyValue
-> NetworkCrossOriginOpenerPolicyValue -> Bool
== :: NetworkCrossOriginOpenerPolicyValue
-> NetworkCrossOriginOpenerPolicyValue -> Bool
$c== :: NetworkCrossOriginOpenerPolicyValue
-> NetworkCrossOriginOpenerPolicyValue -> Bool
Eq, Int -> NetworkCrossOriginOpenerPolicyValue -> ShowS
[NetworkCrossOriginOpenerPolicyValue] -> ShowS
NetworkCrossOriginOpenerPolicyValue -> String
(Int -> NetworkCrossOriginOpenerPolicyValue -> ShowS)
-> (NetworkCrossOriginOpenerPolicyValue -> String)
-> ([NetworkCrossOriginOpenerPolicyValue] -> ShowS)
-> Show NetworkCrossOriginOpenerPolicyValue
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkCrossOriginOpenerPolicyValue] -> ShowS
$cshowList :: [NetworkCrossOriginOpenerPolicyValue] -> ShowS
show :: NetworkCrossOriginOpenerPolicyValue -> String
$cshow :: NetworkCrossOriginOpenerPolicyValue -> String
showsPrec :: Int -> NetworkCrossOriginOpenerPolicyValue -> ShowS
$cshowsPrec :: Int -> NetworkCrossOriginOpenerPolicyValue -> ShowS
Show, ReadPrec [NetworkCrossOriginOpenerPolicyValue]
ReadPrec NetworkCrossOriginOpenerPolicyValue
Int -> ReadS NetworkCrossOriginOpenerPolicyValue
ReadS [NetworkCrossOriginOpenerPolicyValue]
(Int -> ReadS NetworkCrossOriginOpenerPolicyValue)
-> ReadS [NetworkCrossOriginOpenerPolicyValue]
-> ReadPrec NetworkCrossOriginOpenerPolicyValue
-> ReadPrec [NetworkCrossOriginOpenerPolicyValue]
-> Read NetworkCrossOriginOpenerPolicyValue
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [NetworkCrossOriginOpenerPolicyValue]
$creadListPrec :: ReadPrec [NetworkCrossOriginOpenerPolicyValue]
readPrec :: ReadPrec NetworkCrossOriginOpenerPolicyValue
$creadPrec :: ReadPrec NetworkCrossOriginOpenerPolicyValue
readList :: ReadS [NetworkCrossOriginOpenerPolicyValue]
$creadList :: ReadS [NetworkCrossOriginOpenerPolicyValue]
readsPrec :: Int -> ReadS NetworkCrossOriginOpenerPolicyValue
$creadsPrec :: Int -> ReadS NetworkCrossOriginOpenerPolicyValue
Read)
instance FromJSON NetworkCrossOriginOpenerPolicyValue where
  parseJSON :: Value -> Parser NetworkCrossOriginOpenerPolicyValue
parseJSON = String
-> (Text -> Parser NetworkCrossOriginOpenerPolicyValue)
-> Value
-> Parser NetworkCrossOriginOpenerPolicyValue
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"NetworkCrossOriginOpenerPolicyValue" ((Text -> Parser NetworkCrossOriginOpenerPolicyValue)
 -> Value -> Parser NetworkCrossOriginOpenerPolicyValue)
-> (Text -> Parser NetworkCrossOriginOpenerPolicyValue)
-> Value
-> Parser NetworkCrossOriginOpenerPolicyValue
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"SameOrigin" -> NetworkCrossOriginOpenerPolicyValue
-> Parser NetworkCrossOriginOpenerPolicyValue
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCrossOriginOpenerPolicyValue
NetworkCrossOriginOpenerPolicyValueSameOrigin
    Text
"SameOriginAllowPopups" -> NetworkCrossOriginOpenerPolicyValue
-> Parser NetworkCrossOriginOpenerPolicyValue
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCrossOriginOpenerPolicyValue
NetworkCrossOriginOpenerPolicyValueSameOriginAllowPopups
    Text
"RestrictProperties" -> NetworkCrossOriginOpenerPolicyValue
-> Parser NetworkCrossOriginOpenerPolicyValue
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCrossOriginOpenerPolicyValue
NetworkCrossOriginOpenerPolicyValueRestrictProperties
    Text
"UnsafeNone" -> NetworkCrossOriginOpenerPolicyValue
-> Parser NetworkCrossOriginOpenerPolicyValue
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCrossOriginOpenerPolicyValue
NetworkCrossOriginOpenerPolicyValueUnsafeNone
    Text
"SameOriginPlusCoep" -> NetworkCrossOriginOpenerPolicyValue
-> Parser NetworkCrossOriginOpenerPolicyValue
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCrossOriginOpenerPolicyValue
NetworkCrossOriginOpenerPolicyValueSameOriginPlusCoep
    Text
"RestrictPropertiesPlusCoep" -> NetworkCrossOriginOpenerPolicyValue
-> Parser NetworkCrossOriginOpenerPolicyValue
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCrossOriginOpenerPolicyValue
NetworkCrossOriginOpenerPolicyValueRestrictPropertiesPlusCoep
    Text
"_" -> String -> Parser NetworkCrossOriginOpenerPolicyValue
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse NetworkCrossOriginOpenerPolicyValue"
instance ToJSON NetworkCrossOriginOpenerPolicyValue where
  toJSON :: NetworkCrossOriginOpenerPolicyValue -> Value
toJSON NetworkCrossOriginOpenerPolicyValue
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case NetworkCrossOriginOpenerPolicyValue
v of
    NetworkCrossOriginOpenerPolicyValue
NetworkCrossOriginOpenerPolicyValueSameOrigin -> Text
"SameOrigin"
    NetworkCrossOriginOpenerPolicyValue
NetworkCrossOriginOpenerPolicyValueSameOriginAllowPopups -> Text
"SameOriginAllowPopups"
    NetworkCrossOriginOpenerPolicyValue
NetworkCrossOriginOpenerPolicyValueRestrictProperties -> Text
"RestrictProperties"
    NetworkCrossOriginOpenerPolicyValue
NetworkCrossOriginOpenerPolicyValueUnsafeNone -> Text
"UnsafeNone"
    NetworkCrossOriginOpenerPolicyValue
NetworkCrossOriginOpenerPolicyValueSameOriginPlusCoep -> Text
"SameOriginPlusCoep"
    NetworkCrossOriginOpenerPolicyValue
NetworkCrossOriginOpenerPolicyValueRestrictPropertiesPlusCoep -> Text
"RestrictPropertiesPlusCoep"

-- | Type 'Network.CrossOriginOpenerPolicyStatus'.
data NetworkCrossOriginOpenerPolicyStatus = NetworkCrossOriginOpenerPolicyStatus
  {
    NetworkCrossOriginOpenerPolicyStatus
-> NetworkCrossOriginOpenerPolicyValue
networkCrossOriginOpenerPolicyStatusValue :: NetworkCrossOriginOpenerPolicyValue,
    NetworkCrossOriginOpenerPolicyStatus
-> NetworkCrossOriginOpenerPolicyValue
networkCrossOriginOpenerPolicyStatusReportOnlyValue :: NetworkCrossOriginOpenerPolicyValue,
    NetworkCrossOriginOpenerPolicyStatus -> Maybe Text
networkCrossOriginOpenerPolicyStatusReportingEndpoint :: Maybe T.Text,
    NetworkCrossOriginOpenerPolicyStatus -> Maybe Text
networkCrossOriginOpenerPolicyStatusReportOnlyReportingEndpoint :: Maybe T.Text
  }
  deriving (NetworkCrossOriginOpenerPolicyStatus
-> NetworkCrossOriginOpenerPolicyStatus -> Bool
(NetworkCrossOriginOpenerPolicyStatus
 -> NetworkCrossOriginOpenerPolicyStatus -> Bool)
-> (NetworkCrossOriginOpenerPolicyStatus
    -> NetworkCrossOriginOpenerPolicyStatus -> Bool)
-> Eq NetworkCrossOriginOpenerPolicyStatus
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkCrossOriginOpenerPolicyStatus
-> NetworkCrossOriginOpenerPolicyStatus -> Bool
$c/= :: NetworkCrossOriginOpenerPolicyStatus
-> NetworkCrossOriginOpenerPolicyStatus -> Bool
== :: NetworkCrossOriginOpenerPolicyStatus
-> NetworkCrossOriginOpenerPolicyStatus -> Bool
$c== :: NetworkCrossOriginOpenerPolicyStatus
-> NetworkCrossOriginOpenerPolicyStatus -> Bool
Eq, Int -> NetworkCrossOriginOpenerPolicyStatus -> ShowS
[NetworkCrossOriginOpenerPolicyStatus] -> ShowS
NetworkCrossOriginOpenerPolicyStatus -> String
(Int -> NetworkCrossOriginOpenerPolicyStatus -> ShowS)
-> (NetworkCrossOriginOpenerPolicyStatus -> String)
-> ([NetworkCrossOriginOpenerPolicyStatus] -> ShowS)
-> Show NetworkCrossOriginOpenerPolicyStatus
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkCrossOriginOpenerPolicyStatus] -> ShowS
$cshowList :: [NetworkCrossOriginOpenerPolicyStatus] -> ShowS
show :: NetworkCrossOriginOpenerPolicyStatus -> String
$cshow :: NetworkCrossOriginOpenerPolicyStatus -> String
showsPrec :: Int -> NetworkCrossOriginOpenerPolicyStatus -> ShowS
$cshowsPrec :: Int -> NetworkCrossOriginOpenerPolicyStatus -> ShowS
Show)
instance FromJSON NetworkCrossOriginOpenerPolicyStatus where
  parseJSON :: Value -> Parser NetworkCrossOriginOpenerPolicyStatus
parseJSON = String
-> (Object -> Parser NetworkCrossOriginOpenerPolicyStatus)
-> Value
-> Parser NetworkCrossOriginOpenerPolicyStatus
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkCrossOriginOpenerPolicyStatus" ((Object -> Parser NetworkCrossOriginOpenerPolicyStatus)
 -> Value -> Parser NetworkCrossOriginOpenerPolicyStatus)
-> (Object -> Parser NetworkCrossOriginOpenerPolicyStatus)
-> Value
-> Parser NetworkCrossOriginOpenerPolicyStatus
forall a b. (a -> b) -> a -> b
$ \Object
o -> NetworkCrossOriginOpenerPolicyValue
-> NetworkCrossOriginOpenerPolicyValue
-> Maybe Text
-> Maybe Text
-> NetworkCrossOriginOpenerPolicyStatus
NetworkCrossOriginOpenerPolicyStatus
    (NetworkCrossOriginOpenerPolicyValue
 -> NetworkCrossOriginOpenerPolicyValue
 -> Maybe Text
 -> Maybe Text
 -> NetworkCrossOriginOpenerPolicyStatus)
-> Parser NetworkCrossOriginOpenerPolicyValue
-> Parser
     (NetworkCrossOriginOpenerPolicyValue
      -> Maybe Text
      -> Maybe Text
      -> NetworkCrossOriginOpenerPolicyStatus)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser NetworkCrossOriginOpenerPolicyValue
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"value"
    Parser
  (NetworkCrossOriginOpenerPolicyValue
   -> Maybe Text
   -> Maybe Text
   -> NetworkCrossOriginOpenerPolicyStatus)
-> Parser NetworkCrossOriginOpenerPolicyValue
-> Parser
     (Maybe Text -> Maybe Text -> NetworkCrossOriginOpenerPolicyStatus)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser NetworkCrossOriginOpenerPolicyValue
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"reportOnlyValue"
    Parser
  (Maybe Text -> Maybe Text -> NetworkCrossOriginOpenerPolicyStatus)
-> Parser (Maybe Text)
-> Parser (Maybe Text -> NetworkCrossOriginOpenerPolicyStatus)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"reportingEndpoint"
    Parser (Maybe Text -> NetworkCrossOriginOpenerPolicyStatus)
-> Parser (Maybe Text)
-> Parser NetworkCrossOriginOpenerPolicyStatus
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"reportOnlyReportingEndpoint"
instance ToJSON NetworkCrossOriginOpenerPolicyStatus where
  toJSON :: NetworkCrossOriginOpenerPolicyStatus -> Value
toJSON NetworkCrossOriginOpenerPolicyStatus
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"value" Text -> NetworkCrossOriginOpenerPolicyValue -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkCrossOriginOpenerPolicyValue -> Pair)
-> Maybe NetworkCrossOriginOpenerPolicyValue -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> NetworkCrossOriginOpenerPolicyValue
-> Maybe NetworkCrossOriginOpenerPolicyValue
forall a. a -> Maybe a
Just (NetworkCrossOriginOpenerPolicyStatus
-> NetworkCrossOriginOpenerPolicyValue
networkCrossOriginOpenerPolicyStatusValue NetworkCrossOriginOpenerPolicyStatus
p),
    (Text
"reportOnlyValue" Text -> NetworkCrossOriginOpenerPolicyValue -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkCrossOriginOpenerPolicyValue -> Pair)
-> Maybe NetworkCrossOriginOpenerPolicyValue -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> NetworkCrossOriginOpenerPolicyValue
-> Maybe NetworkCrossOriginOpenerPolicyValue
forall a. a -> Maybe a
Just (NetworkCrossOriginOpenerPolicyStatus
-> NetworkCrossOriginOpenerPolicyValue
networkCrossOriginOpenerPolicyStatusReportOnlyValue NetworkCrossOriginOpenerPolicyStatus
p),
    (Text
"reportingEndpoint" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkCrossOriginOpenerPolicyStatus -> Maybe Text
networkCrossOriginOpenerPolicyStatusReportingEndpoint NetworkCrossOriginOpenerPolicyStatus
p),
    (Text
"reportOnlyReportingEndpoint" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkCrossOriginOpenerPolicyStatus -> Maybe Text
networkCrossOriginOpenerPolicyStatusReportOnlyReportingEndpoint NetworkCrossOriginOpenerPolicyStatus
p)
    ]

-- | Type 'Network.CrossOriginEmbedderPolicyValue'.
data NetworkCrossOriginEmbedderPolicyValue = NetworkCrossOriginEmbedderPolicyValueNone | NetworkCrossOriginEmbedderPolicyValueCredentialless | NetworkCrossOriginEmbedderPolicyValueRequireCorp
  deriving (Eq NetworkCrossOriginEmbedderPolicyValue
Eq NetworkCrossOriginEmbedderPolicyValue
-> (NetworkCrossOriginEmbedderPolicyValue
    -> NetworkCrossOriginEmbedderPolicyValue -> Ordering)
-> (NetworkCrossOriginEmbedderPolicyValue
    -> NetworkCrossOriginEmbedderPolicyValue -> Bool)
-> (NetworkCrossOriginEmbedderPolicyValue
    -> NetworkCrossOriginEmbedderPolicyValue -> Bool)
-> (NetworkCrossOriginEmbedderPolicyValue
    -> NetworkCrossOriginEmbedderPolicyValue -> Bool)
-> (NetworkCrossOriginEmbedderPolicyValue
    -> NetworkCrossOriginEmbedderPolicyValue -> Bool)
-> (NetworkCrossOriginEmbedderPolicyValue
    -> NetworkCrossOriginEmbedderPolicyValue
    -> NetworkCrossOriginEmbedderPolicyValue)
-> (NetworkCrossOriginEmbedderPolicyValue
    -> NetworkCrossOriginEmbedderPolicyValue
    -> NetworkCrossOriginEmbedderPolicyValue)
-> Ord NetworkCrossOriginEmbedderPolicyValue
NetworkCrossOriginEmbedderPolicyValue
-> NetworkCrossOriginEmbedderPolicyValue -> Bool
NetworkCrossOriginEmbedderPolicyValue
-> NetworkCrossOriginEmbedderPolicyValue -> Ordering
NetworkCrossOriginEmbedderPolicyValue
-> NetworkCrossOriginEmbedderPolicyValue
-> NetworkCrossOriginEmbedderPolicyValue
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: NetworkCrossOriginEmbedderPolicyValue
-> NetworkCrossOriginEmbedderPolicyValue
-> NetworkCrossOriginEmbedderPolicyValue
$cmin :: NetworkCrossOriginEmbedderPolicyValue
-> NetworkCrossOriginEmbedderPolicyValue
-> NetworkCrossOriginEmbedderPolicyValue
max :: NetworkCrossOriginEmbedderPolicyValue
-> NetworkCrossOriginEmbedderPolicyValue
-> NetworkCrossOriginEmbedderPolicyValue
$cmax :: NetworkCrossOriginEmbedderPolicyValue
-> NetworkCrossOriginEmbedderPolicyValue
-> NetworkCrossOriginEmbedderPolicyValue
>= :: NetworkCrossOriginEmbedderPolicyValue
-> NetworkCrossOriginEmbedderPolicyValue -> Bool
$c>= :: NetworkCrossOriginEmbedderPolicyValue
-> NetworkCrossOriginEmbedderPolicyValue -> Bool
> :: NetworkCrossOriginEmbedderPolicyValue
-> NetworkCrossOriginEmbedderPolicyValue -> Bool
$c> :: NetworkCrossOriginEmbedderPolicyValue
-> NetworkCrossOriginEmbedderPolicyValue -> Bool
<= :: NetworkCrossOriginEmbedderPolicyValue
-> NetworkCrossOriginEmbedderPolicyValue -> Bool
$c<= :: NetworkCrossOriginEmbedderPolicyValue
-> NetworkCrossOriginEmbedderPolicyValue -> Bool
< :: NetworkCrossOriginEmbedderPolicyValue
-> NetworkCrossOriginEmbedderPolicyValue -> Bool
$c< :: NetworkCrossOriginEmbedderPolicyValue
-> NetworkCrossOriginEmbedderPolicyValue -> Bool
compare :: NetworkCrossOriginEmbedderPolicyValue
-> NetworkCrossOriginEmbedderPolicyValue -> Ordering
$ccompare :: NetworkCrossOriginEmbedderPolicyValue
-> NetworkCrossOriginEmbedderPolicyValue -> Ordering
$cp1Ord :: Eq NetworkCrossOriginEmbedderPolicyValue
Ord, NetworkCrossOriginEmbedderPolicyValue
-> NetworkCrossOriginEmbedderPolicyValue -> Bool
(NetworkCrossOriginEmbedderPolicyValue
 -> NetworkCrossOriginEmbedderPolicyValue -> Bool)
-> (NetworkCrossOriginEmbedderPolicyValue
    -> NetworkCrossOriginEmbedderPolicyValue -> Bool)
-> Eq NetworkCrossOriginEmbedderPolicyValue
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkCrossOriginEmbedderPolicyValue
-> NetworkCrossOriginEmbedderPolicyValue -> Bool
$c/= :: NetworkCrossOriginEmbedderPolicyValue
-> NetworkCrossOriginEmbedderPolicyValue -> Bool
== :: NetworkCrossOriginEmbedderPolicyValue
-> NetworkCrossOriginEmbedderPolicyValue -> Bool
$c== :: NetworkCrossOriginEmbedderPolicyValue
-> NetworkCrossOriginEmbedderPolicyValue -> Bool
Eq, Int -> NetworkCrossOriginEmbedderPolicyValue -> ShowS
[NetworkCrossOriginEmbedderPolicyValue] -> ShowS
NetworkCrossOriginEmbedderPolicyValue -> String
(Int -> NetworkCrossOriginEmbedderPolicyValue -> ShowS)
-> (NetworkCrossOriginEmbedderPolicyValue -> String)
-> ([NetworkCrossOriginEmbedderPolicyValue] -> ShowS)
-> Show NetworkCrossOriginEmbedderPolicyValue
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkCrossOriginEmbedderPolicyValue] -> ShowS
$cshowList :: [NetworkCrossOriginEmbedderPolicyValue] -> ShowS
show :: NetworkCrossOriginEmbedderPolicyValue -> String
$cshow :: NetworkCrossOriginEmbedderPolicyValue -> String
showsPrec :: Int -> NetworkCrossOriginEmbedderPolicyValue -> ShowS
$cshowsPrec :: Int -> NetworkCrossOriginEmbedderPolicyValue -> ShowS
Show, ReadPrec [NetworkCrossOriginEmbedderPolicyValue]
ReadPrec NetworkCrossOriginEmbedderPolicyValue
Int -> ReadS NetworkCrossOriginEmbedderPolicyValue
ReadS [NetworkCrossOriginEmbedderPolicyValue]
(Int -> ReadS NetworkCrossOriginEmbedderPolicyValue)
-> ReadS [NetworkCrossOriginEmbedderPolicyValue]
-> ReadPrec NetworkCrossOriginEmbedderPolicyValue
-> ReadPrec [NetworkCrossOriginEmbedderPolicyValue]
-> Read NetworkCrossOriginEmbedderPolicyValue
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [NetworkCrossOriginEmbedderPolicyValue]
$creadListPrec :: ReadPrec [NetworkCrossOriginEmbedderPolicyValue]
readPrec :: ReadPrec NetworkCrossOriginEmbedderPolicyValue
$creadPrec :: ReadPrec NetworkCrossOriginEmbedderPolicyValue
readList :: ReadS [NetworkCrossOriginEmbedderPolicyValue]
$creadList :: ReadS [NetworkCrossOriginEmbedderPolicyValue]
readsPrec :: Int -> ReadS NetworkCrossOriginEmbedderPolicyValue
$creadsPrec :: Int -> ReadS NetworkCrossOriginEmbedderPolicyValue
Read)
instance FromJSON NetworkCrossOriginEmbedderPolicyValue where
  parseJSON :: Value -> Parser NetworkCrossOriginEmbedderPolicyValue
parseJSON = String
-> (Text -> Parser NetworkCrossOriginEmbedderPolicyValue)
-> Value
-> Parser NetworkCrossOriginEmbedderPolicyValue
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"NetworkCrossOriginEmbedderPolicyValue" ((Text -> Parser NetworkCrossOriginEmbedderPolicyValue)
 -> Value -> Parser NetworkCrossOriginEmbedderPolicyValue)
-> (Text -> Parser NetworkCrossOriginEmbedderPolicyValue)
-> Value
-> Parser NetworkCrossOriginEmbedderPolicyValue
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"None" -> NetworkCrossOriginEmbedderPolicyValue
-> Parser NetworkCrossOriginEmbedderPolicyValue
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCrossOriginEmbedderPolicyValue
NetworkCrossOriginEmbedderPolicyValueNone
    Text
"Credentialless" -> NetworkCrossOriginEmbedderPolicyValue
-> Parser NetworkCrossOriginEmbedderPolicyValue
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCrossOriginEmbedderPolicyValue
NetworkCrossOriginEmbedderPolicyValueCredentialless
    Text
"RequireCorp" -> NetworkCrossOriginEmbedderPolicyValue
-> Parser NetworkCrossOriginEmbedderPolicyValue
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkCrossOriginEmbedderPolicyValue
NetworkCrossOriginEmbedderPolicyValueRequireCorp
    Text
"_" -> String -> Parser NetworkCrossOriginEmbedderPolicyValue
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse NetworkCrossOriginEmbedderPolicyValue"
instance ToJSON NetworkCrossOriginEmbedderPolicyValue where
  toJSON :: NetworkCrossOriginEmbedderPolicyValue -> Value
toJSON NetworkCrossOriginEmbedderPolicyValue
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case NetworkCrossOriginEmbedderPolicyValue
v of
    NetworkCrossOriginEmbedderPolicyValue
NetworkCrossOriginEmbedderPolicyValueNone -> Text
"None"
    NetworkCrossOriginEmbedderPolicyValue
NetworkCrossOriginEmbedderPolicyValueCredentialless -> Text
"Credentialless"
    NetworkCrossOriginEmbedderPolicyValue
NetworkCrossOriginEmbedderPolicyValueRequireCorp -> Text
"RequireCorp"

-- | Type 'Network.CrossOriginEmbedderPolicyStatus'.
data NetworkCrossOriginEmbedderPolicyStatus = NetworkCrossOriginEmbedderPolicyStatus
  {
    NetworkCrossOriginEmbedderPolicyStatus
-> NetworkCrossOriginEmbedderPolicyValue
networkCrossOriginEmbedderPolicyStatusValue :: NetworkCrossOriginEmbedderPolicyValue,
    NetworkCrossOriginEmbedderPolicyStatus
-> NetworkCrossOriginEmbedderPolicyValue
networkCrossOriginEmbedderPolicyStatusReportOnlyValue :: NetworkCrossOriginEmbedderPolicyValue,
    NetworkCrossOriginEmbedderPolicyStatus -> Maybe Text
networkCrossOriginEmbedderPolicyStatusReportingEndpoint :: Maybe T.Text,
    NetworkCrossOriginEmbedderPolicyStatus -> Maybe Text
networkCrossOriginEmbedderPolicyStatusReportOnlyReportingEndpoint :: Maybe T.Text
  }
  deriving (NetworkCrossOriginEmbedderPolicyStatus
-> NetworkCrossOriginEmbedderPolicyStatus -> Bool
(NetworkCrossOriginEmbedderPolicyStatus
 -> NetworkCrossOriginEmbedderPolicyStatus -> Bool)
-> (NetworkCrossOriginEmbedderPolicyStatus
    -> NetworkCrossOriginEmbedderPolicyStatus -> Bool)
-> Eq NetworkCrossOriginEmbedderPolicyStatus
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkCrossOriginEmbedderPolicyStatus
-> NetworkCrossOriginEmbedderPolicyStatus -> Bool
$c/= :: NetworkCrossOriginEmbedderPolicyStatus
-> NetworkCrossOriginEmbedderPolicyStatus -> Bool
== :: NetworkCrossOriginEmbedderPolicyStatus
-> NetworkCrossOriginEmbedderPolicyStatus -> Bool
$c== :: NetworkCrossOriginEmbedderPolicyStatus
-> NetworkCrossOriginEmbedderPolicyStatus -> Bool
Eq, Int -> NetworkCrossOriginEmbedderPolicyStatus -> ShowS
[NetworkCrossOriginEmbedderPolicyStatus] -> ShowS
NetworkCrossOriginEmbedderPolicyStatus -> String
(Int -> NetworkCrossOriginEmbedderPolicyStatus -> ShowS)
-> (NetworkCrossOriginEmbedderPolicyStatus -> String)
-> ([NetworkCrossOriginEmbedderPolicyStatus] -> ShowS)
-> Show NetworkCrossOriginEmbedderPolicyStatus
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkCrossOriginEmbedderPolicyStatus] -> ShowS
$cshowList :: [NetworkCrossOriginEmbedderPolicyStatus] -> ShowS
show :: NetworkCrossOriginEmbedderPolicyStatus -> String
$cshow :: NetworkCrossOriginEmbedderPolicyStatus -> String
showsPrec :: Int -> NetworkCrossOriginEmbedderPolicyStatus -> ShowS
$cshowsPrec :: Int -> NetworkCrossOriginEmbedderPolicyStatus -> ShowS
Show)
instance FromJSON NetworkCrossOriginEmbedderPolicyStatus where
  parseJSON :: Value -> Parser NetworkCrossOriginEmbedderPolicyStatus
parseJSON = String
-> (Object -> Parser NetworkCrossOriginEmbedderPolicyStatus)
-> Value
-> Parser NetworkCrossOriginEmbedderPolicyStatus
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkCrossOriginEmbedderPolicyStatus" ((Object -> Parser NetworkCrossOriginEmbedderPolicyStatus)
 -> Value -> Parser NetworkCrossOriginEmbedderPolicyStatus)
-> (Object -> Parser NetworkCrossOriginEmbedderPolicyStatus)
-> Value
-> Parser NetworkCrossOriginEmbedderPolicyStatus
forall a b. (a -> b) -> a -> b
$ \Object
o -> NetworkCrossOriginEmbedderPolicyValue
-> NetworkCrossOriginEmbedderPolicyValue
-> Maybe Text
-> Maybe Text
-> NetworkCrossOriginEmbedderPolicyStatus
NetworkCrossOriginEmbedderPolicyStatus
    (NetworkCrossOriginEmbedderPolicyValue
 -> NetworkCrossOriginEmbedderPolicyValue
 -> Maybe Text
 -> Maybe Text
 -> NetworkCrossOriginEmbedderPolicyStatus)
-> Parser NetworkCrossOriginEmbedderPolicyValue
-> Parser
     (NetworkCrossOriginEmbedderPolicyValue
      -> Maybe Text
      -> Maybe Text
      -> NetworkCrossOriginEmbedderPolicyStatus)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser NetworkCrossOriginEmbedderPolicyValue
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"value"
    Parser
  (NetworkCrossOriginEmbedderPolicyValue
   -> Maybe Text
   -> Maybe Text
   -> NetworkCrossOriginEmbedderPolicyStatus)
-> Parser NetworkCrossOriginEmbedderPolicyValue
-> Parser
     (Maybe Text
      -> Maybe Text -> NetworkCrossOriginEmbedderPolicyStatus)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser NetworkCrossOriginEmbedderPolicyValue
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"reportOnlyValue"
    Parser
  (Maybe Text
   -> Maybe Text -> NetworkCrossOriginEmbedderPolicyStatus)
-> Parser (Maybe Text)
-> Parser (Maybe Text -> NetworkCrossOriginEmbedderPolicyStatus)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"reportingEndpoint"
    Parser (Maybe Text -> NetworkCrossOriginEmbedderPolicyStatus)
-> Parser (Maybe Text)
-> Parser NetworkCrossOriginEmbedderPolicyStatus
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"reportOnlyReportingEndpoint"
instance ToJSON NetworkCrossOriginEmbedderPolicyStatus where
  toJSON :: NetworkCrossOriginEmbedderPolicyStatus -> Value
toJSON NetworkCrossOriginEmbedderPolicyStatus
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"value" Text -> NetworkCrossOriginEmbedderPolicyValue -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkCrossOriginEmbedderPolicyValue -> Pair)
-> Maybe NetworkCrossOriginEmbedderPolicyValue -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> NetworkCrossOriginEmbedderPolicyValue
-> Maybe NetworkCrossOriginEmbedderPolicyValue
forall a. a -> Maybe a
Just (NetworkCrossOriginEmbedderPolicyStatus
-> NetworkCrossOriginEmbedderPolicyValue
networkCrossOriginEmbedderPolicyStatusValue NetworkCrossOriginEmbedderPolicyStatus
p),
    (Text
"reportOnlyValue" Text -> NetworkCrossOriginEmbedderPolicyValue -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkCrossOriginEmbedderPolicyValue -> Pair)
-> Maybe NetworkCrossOriginEmbedderPolicyValue -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> NetworkCrossOriginEmbedderPolicyValue
-> Maybe NetworkCrossOriginEmbedderPolicyValue
forall a. a -> Maybe a
Just (NetworkCrossOriginEmbedderPolicyStatus
-> NetworkCrossOriginEmbedderPolicyValue
networkCrossOriginEmbedderPolicyStatusReportOnlyValue NetworkCrossOriginEmbedderPolicyStatus
p),
    (Text
"reportingEndpoint" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkCrossOriginEmbedderPolicyStatus -> Maybe Text
networkCrossOriginEmbedderPolicyStatusReportingEndpoint NetworkCrossOriginEmbedderPolicyStatus
p),
    (Text
"reportOnlyReportingEndpoint" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkCrossOriginEmbedderPolicyStatus -> Maybe Text
networkCrossOriginEmbedderPolicyStatusReportOnlyReportingEndpoint NetworkCrossOriginEmbedderPolicyStatus
p)
    ]

-- | Type 'Network.SecurityIsolationStatus'.
data NetworkSecurityIsolationStatus = NetworkSecurityIsolationStatus
  {
    NetworkSecurityIsolationStatus
-> Maybe NetworkCrossOriginOpenerPolicyStatus
networkSecurityIsolationStatusCoop :: Maybe NetworkCrossOriginOpenerPolicyStatus,
    NetworkSecurityIsolationStatus
-> Maybe NetworkCrossOriginEmbedderPolicyStatus
networkSecurityIsolationStatusCoep :: Maybe NetworkCrossOriginEmbedderPolicyStatus
  }
  deriving (NetworkSecurityIsolationStatus
-> NetworkSecurityIsolationStatus -> Bool
(NetworkSecurityIsolationStatus
 -> NetworkSecurityIsolationStatus -> Bool)
-> (NetworkSecurityIsolationStatus
    -> NetworkSecurityIsolationStatus -> Bool)
-> Eq NetworkSecurityIsolationStatus
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkSecurityIsolationStatus
-> NetworkSecurityIsolationStatus -> Bool
$c/= :: NetworkSecurityIsolationStatus
-> NetworkSecurityIsolationStatus -> Bool
== :: NetworkSecurityIsolationStatus
-> NetworkSecurityIsolationStatus -> Bool
$c== :: NetworkSecurityIsolationStatus
-> NetworkSecurityIsolationStatus -> Bool
Eq, Int -> NetworkSecurityIsolationStatus -> ShowS
[NetworkSecurityIsolationStatus] -> ShowS
NetworkSecurityIsolationStatus -> String
(Int -> NetworkSecurityIsolationStatus -> ShowS)
-> (NetworkSecurityIsolationStatus -> String)
-> ([NetworkSecurityIsolationStatus] -> ShowS)
-> Show NetworkSecurityIsolationStatus
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkSecurityIsolationStatus] -> ShowS
$cshowList :: [NetworkSecurityIsolationStatus] -> ShowS
show :: NetworkSecurityIsolationStatus -> String
$cshow :: NetworkSecurityIsolationStatus -> String
showsPrec :: Int -> NetworkSecurityIsolationStatus -> ShowS
$cshowsPrec :: Int -> NetworkSecurityIsolationStatus -> ShowS
Show)
instance FromJSON NetworkSecurityIsolationStatus where
  parseJSON :: Value -> Parser NetworkSecurityIsolationStatus
parseJSON = String
-> (Object -> Parser NetworkSecurityIsolationStatus)
-> Value
-> Parser NetworkSecurityIsolationStatus
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkSecurityIsolationStatus" ((Object -> Parser NetworkSecurityIsolationStatus)
 -> Value -> Parser NetworkSecurityIsolationStatus)
-> (Object -> Parser NetworkSecurityIsolationStatus)
-> Value
-> Parser NetworkSecurityIsolationStatus
forall a b. (a -> b) -> a -> b
$ \Object
o -> Maybe NetworkCrossOriginOpenerPolicyStatus
-> Maybe NetworkCrossOriginEmbedderPolicyStatus
-> NetworkSecurityIsolationStatus
NetworkSecurityIsolationStatus
    (Maybe NetworkCrossOriginOpenerPolicyStatus
 -> Maybe NetworkCrossOriginEmbedderPolicyStatus
 -> NetworkSecurityIsolationStatus)
-> Parser (Maybe NetworkCrossOriginOpenerPolicyStatus)
-> Parser
     (Maybe NetworkCrossOriginEmbedderPolicyStatus
      -> NetworkSecurityIsolationStatus)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object
-> Text -> Parser (Maybe NetworkCrossOriginOpenerPolicyStatus)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"coop"
    Parser
  (Maybe NetworkCrossOriginEmbedderPolicyStatus
   -> NetworkSecurityIsolationStatus)
-> Parser (Maybe NetworkCrossOriginEmbedderPolicyStatus)
-> Parser NetworkSecurityIsolationStatus
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object
-> Text -> Parser (Maybe NetworkCrossOriginEmbedderPolicyStatus)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"coep"
instance ToJSON NetworkSecurityIsolationStatus where
  toJSON :: NetworkSecurityIsolationStatus -> Value
toJSON NetworkSecurityIsolationStatus
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"coop" Text -> NetworkCrossOriginOpenerPolicyStatus -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkCrossOriginOpenerPolicyStatus -> Pair)
-> Maybe NetworkCrossOriginOpenerPolicyStatus -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkSecurityIsolationStatus
-> Maybe NetworkCrossOriginOpenerPolicyStatus
networkSecurityIsolationStatusCoop NetworkSecurityIsolationStatus
p),
    (Text
"coep" Text -> NetworkCrossOriginEmbedderPolicyStatus -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkCrossOriginEmbedderPolicyStatus -> Pair)
-> Maybe NetworkCrossOriginEmbedderPolicyStatus -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkSecurityIsolationStatus
-> Maybe NetworkCrossOriginEmbedderPolicyStatus
networkSecurityIsolationStatusCoep NetworkSecurityIsolationStatus
p)
    ]

-- | Type 'Network.ReportStatus'.
--   The status of a Reporting API report.
data NetworkReportStatus = NetworkReportStatusQueued | NetworkReportStatusPending | NetworkReportStatusMarkedForRemoval | NetworkReportStatusSuccess
  deriving (Eq NetworkReportStatus
Eq NetworkReportStatus
-> (NetworkReportStatus -> NetworkReportStatus -> Ordering)
-> (NetworkReportStatus -> NetworkReportStatus -> Bool)
-> (NetworkReportStatus -> NetworkReportStatus -> Bool)
-> (NetworkReportStatus -> NetworkReportStatus -> Bool)
-> (NetworkReportStatus -> NetworkReportStatus -> Bool)
-> (NetworkReportStatus
    -> NetworkReportStatus -> NetworkReportStatus)
-> (NetworkReportStatus
    -> NetworkReportStatus -> NetworkReportStatus)
-> Ord NetworkReportStatus
NetworkReportStatus -> NetworkReportStatus -> Bool
NetworkReportStatus -> NetworkReportStatus -> Ordering
NetworkReportStatus -> NetworkReportStatus -> NetworkReportStatus
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: NetworkReportStatus -> NetworkReportStatus -> NetworkReportStatus
$cmin :: NetworkReportStatus -> NetworkReportStatus -> NetworkReportStatus
max :: NetworkReportStatus -> NetworkReportStatus -> NetworkReportStatus
$cmax :: NetworkReportStatus -> NetworkReportStatus -> NetworkReportStatus
>= :: NetworkReportStatus -> NetworkReportStatus -> Bool
$c>= :: NetworkReportStatus -> NetworkReportStatus -> Bool
> :: NetworkReportStatus -> NetworkReportStatus -> Bool
$c> :: NetworkReportStatus -> NetworkReportStatus -> Bool
<= :: NetworkReportStatus -> NetworkReportStatus -> Bool
$c<= :: NetworkReportStatus -> NetworkReportStatus -> Bool
< :: NetworkReportStatus -> NetworkReportStatus -> Bool
$c< :: NetworkReportStatus -> NetworkReportStatus -> Bool
compare :: NetworkReportStatus -> NetworkReportStatus -> Ordering
$ccompare :: NetworkReportStatus -> NetworkReportStatus -> Ordering
$cp1Ord :: Eq NetworkReportStatus
Ord, NetworkReportStatus -> NetworkReportStatus -> Bool
(NetworkReportStatus -> NetworkReportStatus -> Bool)
-> (NetworkReportStatus -> NetworkReportStatus -> Bool)
-> Eq NetworkReportStatus
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkReportStatus -> NetworkReportStatus -> Bool
$c/= :: NetworkReportStatus -> NetworkReportStatus -> Bool
== :: NetworkReportStatus -> NetworkReportStatus -> Bool
$c== :: NetworkReportStatus -> NetworkReportStatus -> Bool
Eq, Int -> NetworkReportStatus -> ShowS
[NetworkReportStatus] -> ShowS
NetworkReportStatus -> String
(Int -> NetworkReportStatus -> ShowS)
-> (NetworkReportStatus -> String)
-> ([NetworkReportStatus] -> ShowS)
-> Show NetworkReportStatus
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkReportStatus] -> ShowS
$cshowList :: [NetworkReportStatus] -> ShowS
show :: NetworkReportStatus -> String
$cshow :: NetworkReportStatus -> String
showsPrec :: Int -> NetworkReportStatus -> ShowS
$cshowsPrec :: Int -> NetworkReportStatus -> ShowS
Show, ReadPrec [NetworkReportStatus]
ReadPrec NetworkReportStatus
Int -> ReadS NetworkReportStatus
ReadS [NetworkReportStatus]
(Int -> ReadS NetworkReportStatus)
-> ReadS [NetworkReportStatus]
-> ReadPrec NetworkReportStatus
-> ReadPrec [NetworkReportStatus]
-> Read NetworkReportStatus
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [NetworkReportStatus]
$creadListPrec :: ReadPrec [NetworkReportStatus]
readPrec :: ReadPrec NetworkReportStatus
$creadPrec :: ReadPrec NetworkReportStatus
readList :: ReadS [NetworkReportStatus]
$creadList :: ReadS [NetworkReportStatus]
readsPrec :: Int -> ReadS NetworkReportStatus
$creadsPrec :: Int -> ReadS NetworkReportStatus
Read)
instance FromJSON NetworkReportStatus where
  parseJSON :: Value -> Parser NetworkReportStatus
parseJSON = String
-> (Text -> Parser NetworkReportStatus)
-> Value
-> Parser NetworkReportStatus
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"NetworkReportStatus" ((Text -> Parser NetworkReportStatus)
 -> Value -> Parser NetworkReportStatus)
-> (Text -> Parser NetworkReportStatus)
-> Value
-> Parser NetworkReportStatus
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"Queued" -> NetworkReportStatus -> Parser NetworkReportStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkReportStatus
NetworkReportStatusQueued
    Text
"Pending" -> NetworkReportStatus -> Parser NetworkReportStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkReportStatus
NetworkReportStatusPending
    Text
"MarkedForRemoval" -> NetworkReportStatus -> Parser NetworkReportStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkReportStatus
NetworkReportStatusMarkedForRemoval
    Text
"Success" -> NetworkReportStatus -> Parser NetworkReportStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkReportStatus
NetworkReportStatusSuccess
    Text
"_" -> String -> Parser NetworkReportStatus
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse NetworkReportStatus"
instance ToJSON NetworkReportStatus where
  toJSON :: NetworkReportStatus -> Value
toJSON NetworkReportStatus
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case NetworkReportStatus
v of
    NetworkReportStatus
NetworkReportStatusQueued -> Text
"Queued"
    NetworkReportStatus
NetworkReportStatusPending -> Text
"Pending"
    NetworkReportStatus
NetworkReportStatusMarkedForRemoval -> Text
"MarkedForRemoval"
    NetworkReportStatus
NetworkReportStatusSuccess -> Text
"Success"

-- | Type 'Network.ReportId'.
type NetworkReportId = T.Text

-- | Type 'Network.ReportingApiReport'.
--   An object representing a report generated by the Reporting API.
data NetworkReportingApiReport = NetworkReportingApiReport
  {
    NetworkReportingApiReport -> Text
networkReportingApiReportId :: NetworkReportId,
    -- | The URL of the document that triggered the report.
    NetworkReportingApiReport -> Text
networkReportingApiReportInitiatorUrl :: T.Text,
    -- | The name of the endpoint group that should be used to deliver the report.
    NetworkReportingApiReport -> Text
networkReportingApiReportDestination :: T.Text,
    -- | The type of the report (specifies the set of data that is contained in the report body).
    NetworkReportingApiReport -> Text
networkReportingApiReportType :: T.Text,
    -- | When the report was generated.
    NetworkReportingApiReport -> Double
networkReportingApiReportTimestamp :: NetworkTimeSinceEpoch,
    -- | How many uploads deep the related request was.
    NetworkReportingApiReport -> Int
networkReportingApiReportDepth :: Int,
    -- | The number of delivery attempts made so far, not including an active attempt.
    NetworkReportingApiReport -> Int
networkReportingApiReportCompletedAttempts :: Int,
    NetworkReportingApiReport -> NetworkHeaders
networkReportingApiReportBody :: [(T.Text, T.Text)],
    NetworkReportingApiReport -> NetworkReportStatus
networkReportingApiReportStatus :: NetworkReportStatus
  }
  deriving (NetworkReportingApiReport -> NetworkReportingApiReport -> Bool
(NetworkReportingApiReport -> NetworkReportingApiReport -> Bool)
-> (NetworkReportingApiReport -> NetworkReportingApiReport -> Bool)
-> Eq NetworkReportingApiReport
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkReportingApiReport -> NetworkReportingApiReport -> Bool
$c/= :: NetworkReportingApiReport -> NetworkReportingApiReport -> Bool
== :: NetworkReportingApiReport -> NetworkReportingApiReport -> Bool
$c== :: NetworkReportingApiReport -> NetworkReportingApiReport -> Bool
Eq, Int -> NetworkReportingApiReport -> ShowS
[NetworkReportingApiReport] -> ShowS
NetworkReportingApiReport -> String
(Int -> NetworkReportingApiReport -> ShowS)
-> (NetworkReportingApiReport -> String)
-> ([NetworkReportingApiReport] -> ShowS)
-> Show NetworkReportingApiReport
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkReportingApiReport] -> ShowS
$cshowList :: [NetworkReportingApiReport] -> ShowS
show :: NetworkReportingApiReport -> String
$cshow :: NetworkReportingApiReport -> String
showsPrec :: Int -> NetworkReportingApiReport -> ShowS
$cshowsPrec :: Int -> NetworkReportingApiReport -> ShowS
Show)
instance FromJSON NetworkReportingApiReport where
  parseJSON :: Value -> Parser NetworkReportingApiReport
parseJSON = String
-> (Object -> Parser NetworkReportingApiReport)
-> Value
-> Parser NetworkReportingApiReport
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkReportingApiReport" ((Object -> Parser NetworkReportingApiReport)
 -> Value -> Parser NetworkReportingApiReport)
-> (Object -> Parser NetworkReportingApiReport)
-> Value
-> Parser NetworkReportingApiReport
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> Text
-> Text
-> Text
-> Double
-> Int
-> Int
-> NetworkHeaders
-> NetworkReportStatus
-> NetworkReportingApiReport
NetworkReportingApiReport
    (Text
 -> Text
 -> Text
 -> Text
 -> Double
 -> Int
 -> Int
 -> NetworkHeaders
 -> NetworkReportStatus
 -> NetworkReportingApiReport)
-> Parser Text
-> Parser
     (Text
      -> Text
      -> Text
      -> Double
      -> Int
      -> Int
      -> NetworkHeaders
      -> NetworkReportStatus
      -> NetworkReportingApiReport)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"id"
    Parser
  (Text
   -> Text
   -> Text
   -> Double
   -> Int
   -> Int
   -> NetworkHeaders
   -> NetworkReportStatus
   -> NetworkReportingApiReport)
-> Parser Text
-> Parser
     (Text
      -> Text
      -> Double
      -> Int
      -> Int
      -> NetworkHeaders
      -> NetworkReportStatus
      -> NetworkReportingApiReport)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"initiatorUrl"
    Parser
  (Text
   -> Text
   -> Double
   -> Int
   -> Int
   -> NetworkHeaders
   -> NetworkReportStatus
   -> NetworkReportingApiReport)
-> Parser Text
-> Parser
     (Text
      -> Double
      -> Int
      -> Int
      -> NetworkHeaders
      -> NetworkReportStatus
      -> NetworkReportingApiReport)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"destination"
    Parser
  (Text
   -> Double
   -> Int
   -> Int
   -> NetworkHeaders
   -> NetworkReportStatus
   -> NetworkReportingApiReport)
-> Parser Text
-> Parser
     (Double
      -> Int
      -> Int
      -> NetworkHeaders
      -> NetworkReportStatus
      -> NetworkReportingApiReport)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"type"
    Parser
  (Double
   -> Int
   -> Int
   -> NetworkHeaders
   -> NetworkReportStatus
   -> NetworkReportingApiReport)
-> Parser Double
-> Parser
     (Int
      -> Int
      -> NetworkHeaders
      -> NetworkReportStatus
      -> NetworkReportingApiReport)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"timestamp"
    Parser
  (Int
   -> Int
   -> NetworkHeaders
   -> NetworkReportStatus
   -> NetworkReportingApiReport)
-> Parser Int
-> Parser
     (Int
      -> NetworkHeaders
      -> NetworkReportStatus
      -> NetworkReportingApiReport)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"depth"
    Parser
  (Int
   -> NetworkHeaders
   -> NetworkReportStatus
   -> NetworkReportingApiReport)
-> Parser Int
-> Parser
     (NetworkHeaders
      -> NetworkReportStatus -> NetworkReportingApiReport)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"completedAttempts"
    Parser
  (NetworkHeaders
   -> NetworkReportStatus -> NetworkReportingApiReport)
-> Parser NetworkHeaders
-> Parser (NetworkReportStatus -> NetworkReportingApiReport)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser NetworkHeaders
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"body"
    Parser (NetworkReportStatus -> NetworkReportingApiReport)
-> Parser NetworkReportStatus -> Parser NetworkReportingApiReport
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser NetworkReportStatus
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"status"
instance ToJSON NetworkReportingApiReport where
  toJSON :: NetworkReportingApiReport -> Value
toJSON NetworkReportingApiReport
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"id" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkReportingApiReport -> Text
networkReportingApiReportId NetworkReportingApiReport
p),
    (Text
"initiatorUrl" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkReportingApiReport -> Text
networkReportingApiReportInitiatorUrl NetworkReportingApiReport
p),
    (Text
"destination" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkReportingApiReport -> Text
networkReportingApiReportDestination NetworkReportingApiReport
p),
    (Text
"type" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkReportingApiReport -> Text
networkReportingApiReportType NetworkReportingApiReport
p),
    (Text
"timestamp" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (NetworkReportingApiReport -> Double
networkReportingApiReportTimestamp NetworkReportingApiReport
p),
    (Text
"depth" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (NetworkReportingApiReport -> Int
networkReportingApiReportDepth NetworkReportingApiReport
p),
    (Text
"completedAttempts" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (NetworkReportingApiReport -> Int
networkReportingApiReportCompletedAttempts NetworkReportingApiReport
p),
    (Text
"body" Text -> NetworkHeaders -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkHeaders -> Pair) -> Maybe NetworkHeaders -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> NetworkHeaders -> Maybe NetworkHeaders
forall a. a -> Maybe a
Just (NetworkReportingApiReport -> NetworkHeaders
networkReportingApiReportBody NetworkReportingApiReport
p),
    (Text
"status" Text -> NetworkReportStatus -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkReportStatus -> Pair)
-> Maybe NetworkReportStatus -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> NetworkReportStatus -> Maybe NetworkReportStatus
forall a. a -> Maybe a
Just (NetworkReportingApiReport -> NetworkReportStatus
networkReportingApiReportStatus NetworkReportingApiReport
p)
    ]

-- | Type 'Network.ReportingApiEndpoint'.
data NetworkReportingApiEndpoint = NetworkReportingApiEndpoint
  {
    -- | The URL of the endpoint to which reports may be delivered.
    NetworkReportingApiEndpoint -> Text
networkReportingApiEndpointUrl :: T.Text,
    -- | Name of the endpoint group.
    NetworkReportingApiEndpoint -> Text
networkReportingApiEndpointGroupName :: T.Text
  }
  deriving (NetworkReportingApiEndpoint -> NetworkReportingApiEndpoint -> Bool
(NetworkReportingApiEndpoint
 -> NetworkReportingApiEndpoint -> Bool)
-> (NetworkReportingApiEndpoint
    -> NetworkReportingApiEndpoint -> Bool)
-> Eq NetworkReportingApiEndpoint
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkReportingApiEndpoint -> NetworkReportingApiEndpoint -> Bool
$c/= :: NetworkReportingApiEndpoint -> NetworkReportingApiEndpoint -> Bool
== :: NetworkReportingApiEndpoint -> NetworkReportingApiEndpoint -> Bool
$c== :: NetworkReportingApiEndpoint -> NetworkReportingApiEndpoint -> Bool
Eq, Int -> NetworkReportingApiEndpoint -> ShowS
[NetworkReportingApiEndpoint] -> ShowS
NetworkReportingApiEndpoint -> String
(Int -> NetworkReportingApiEndpoint -> ShowS)
-> (NetworkReportingApiEndpoint -> String)
-> ([NetworkReportingApiEndpoint] -> ShowS)
-> Show NetworkReportingApiEndpoint
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkReportingApiEndpoint] -> ShowS
$cshowList :: [NetworkReportingApiEndpoint] -> ShowS
show :: NetworkReportingApiEndpoint -> String
$cshow :: NetworkReportingApiEndpoint -> String
showsPrec :: Int -> NetworkReportingApiEndpoint -> ShowS
$cshowsPrec :: Int -> NetworkReportingApiEndpoint -> ShowS
Show)
instance FromJSON NetworkReportingApiEndpoint where
  parseJSON :: Value -> Parser NetworkReportingApiEndpoint
parseJSON = String
-> (Object -> Parser NetworkReportingApiEndpoint)
-> Value
-> Parser NetworkReportingApiEndpoint
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkReportingApiEndpoint" ((Object -> Parser NetworkReportingApiEndpoint)
 -> Value -> Parser NetworkReportingApiEndpoint)
-> (Object -> Parser NetworkReportingApiEndpoint)
-> Value
-> Parser NetworkReportingApiEndpoint
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> Text -> NetworkReportingApiEndpoint
NetworkReportingApiEndpoint
    (Text -> Text -> NetworkReportingApiEndpoint)
-> Parser Text -> Parser (Text -> NetworkReportingApiEndpoint)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"url"
    Parser (Text -> NetworkReportingApiEndpoint)
-> Parser Text -> Parser NetworkReportingApiEndpoint
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"groupName"
instance ToJSON NetworkReportingApiEndpoint where
  toJSON :: NetworkReportingApiEndpoint -> Value
toJSON NetworkReportingApiEndpoint
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"url" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkReportingApiEndpoint -> Text
networkReportingApiEndpointUrl NetworkReportingApiEndpoint
p),
    (Text
"groupName" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (NetworkReportingApiEndpoint -> Text
networkReportingApiEndpointGroupName NetworkReportingApiEndpoint
p)
    ]

-- | Type 'Network.LoadNetworkResourcePageResult'.
--   An object providing the result of a network resource load.
data NetworkLoadNetworkResourcePageResult = NetworkLoadNetworkResourcePageResult
  {
    NetworkLoadNetworkResourcePageResult -> Bool
networkLoadNetworkResourcePageResultSuccess :: Bool,
    -- | Optional values used for error reporting.
    NetworkLoadNetworkResourcePageResult -> Maybe Double
networkLoadNetworkResourcePageResultNetError :: Maybe Double,
    NetworkLoadNetworkResourcePageResult -> Maybe Text
networkLoadNetworkResourcePageResultNetErrorName :: Maybe T.Text,
    NetworkLoadNetworkResourcePageResult -> Maybe Double
networkLoadNetworkResourcePageResultHttpStatusCode :: Maybe Double,
    -- | If successful, one of the following two fields holds the result.
    NetworkLoadNetworkResourcePageResult -> Maybe Text
networkLoadNetworkResourcePageResultStream :: Maybe IO.IOStreamHandle,
    -- | Response headers.
    NetworkLoadNetworkResourcePageResult -> Maybe NetworkHeaders
networkLoadNetworkResourcePageResultHeaders :: Maybe NetworkHeaders
  }
  deriving (NetworkLoadNetworkResourcePageResult
-> NetworkLoadNetworkResourcePageResult -> Bool
(NetworkLoadNetworkResourcePageResult
 -> NetworkLoadNetworkResourcePageResult -> Bool)
-> (NetworkLoadNetworkResourcePageResult
    -> NetworkLoadNetworkResourcePageResult -> Bool)
-> Eq NetworkLoadNetworkResourcePageResult
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkLoadNetworkResourcePageResult
-> NetworkLoadNetworkResourcePageResult -> Bool
$c/= :: NetworkLoadNetworkResourcePageResult
-> NetworkLoadNetworkResourcePageResult -> Bool
== :: NetworkLoadNetworkResourcePageResult
-> NetworkLoadNetworkResourcePageResult -> Bool
$c== :: NetworkLoadNetworkResourcePageResult
-> NetworkLoadNetworkResourcePageResult -> Bool
Eq, Int -> NetworkLoadNetworkResourcePageResult -> ShowS
[NetworkLoadNetworkResourcePageResult] -> ShowS
NetworkLoadNetworkResourcePageResult -> String
(Int -> NetworkLoadNetworkResourcePageResult -> ShowS)
-> (NetworkLoadNetworkResourcePageResult -> String)
-> ([NetworkLoadNetworkResourcePageResult] -> ShowS)
-> Show NetworkLoadNetworkResourcePageResult
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkLoadNetworkResourcePageResult] -> ShowS
$cshowList :: [NetworkLoadNetworkResourcePageResult] -> ShowS
show :: NetworkLoadNetworkResourcePageResult -> String
$cshow :: NetworkLoadNetworkResourcePageResult -> String
showsPrec :: Int -> NetworkLoadNetworkResourcePageResult -> ShowS
$cshowsPrec :: Int -> NetworkLoadNetworkResourcePageResult -> ShowS
Show)
instance FromJSON NetworkLoadNetworkResourcePageResult where
  parseJSON :: Value -> Parser NetworkLoadNetworkResourcePageResult
parseJSON = String
-> (Object -> Parser NetworkLoadNetworkResourcePageResult)
-> Value
-> Parser NetworkLoadNetworkResourcePageResult
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkLoadNetworkResourcePageResult" ((Object -> Parser NetworkLoadNetworkResourcePageResult)
 -> Value -> Parser NetworkLoadNetworkResourcePageResult)
-> (Object -> Parser NetworkLoadNetworkResourcePageResult)
-> Value
-> Parser NetworkLoadNetworkResourcePageResult
forall a b. (a -> b) -> a -> b
$ \Object
o -> Bool
-> Maybe Double
-> Maybe Text
-> Maybe Double
-> Maybe Text
-> Maybe NetworkHeaders
-> NetworkLoadNetworkResourcePageResult
NetworkLoadNetworkResourcePageResult
    (Bool
 -> Maybe Double
 -> Maybe Text
 -> Maybe Double
 -> Maybe Text
 -> Maybe NetworkHeaders
 -> NetworkLoadNetworkResourcePageResult)
-> Parser Bool
-> Parser
     (Maybe Double
      -> Maybe Text
      -> Maybe Double
      -> Maybe Text
      -> Maybe NetworkHeaders
      -> NetworkLoadNetworkResourcePageResult)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Bool
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"success"
    Parser
  (Maybe Double
   -> Maybe Text
   -> Maybe Double
   -> Maybe Text
   -> Maybe NetworkHeaders
   -> NetworkLoadNetworkResourcePageResult)
-> Parser (Maybe Double)
-> Parser
     (Maybe Text
      -> Maybe Double
      -> Maybe Text
      -> Maybe NetworkHeaders
      -> NetworkLoadNetworkResourcePageResult)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Double)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"netError"
    Parser
  (Maybe Text
   -> Maybe Double
   -> Maybe Text
   -> Maybe NetworkHeaders
   -> NetworkLoadNetworkResourcePageResult)
-> Parser (Maybe Text)
-> Parser
     (Maybe Double
      -> Maybe Text
      -> Maybe NetworkHeaders
      -> NetworkLoadNetworkResourcePageResult)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"netErrorName"
    Parser
  (Maybe Double
   -> Maybe Text
   -> Maybe NetworkHeaders
   -> NetworkLoadNetworkResourcePageResult)
-> Parser (Maybe Double)
-> Parser
     (Maybe Text
      -> Maybe NetworkHeaders -> NetworkLoadNetworkResourcePageResult)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Double)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"httpStatusCode"
    Parser
  (Maybe Text
   -> Maybe NetworkHeaders -> NetworkLoadNetworkResourcePageResult)
-> Parser (Maybe Text)
-> Parser
     (Maybe NetworkHeaders -> NetworkLoadNetworkResourcePageResult)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"stream"
    Parser
  (Maybe NetworkHeaders -> NetworkLoadNetworkResourcePageResult)
-> Parser (Maybe NetworkHeaders)
-> Parser NetworkLoadNetworkResourcePageResult
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe NetworkHeaders)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"headers"
instance ToJSON NetworkLoadNetworkResourcePageResult where
  toJSON :: NetworkLoadNetworkResourcePageResult -> Value
toJSON NetworkLoadNetworkResourcePageResult
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"success" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (NetworkLoadNetworkResourcePageResult -> Bool
networkLoadNetworkResourcePageResultSuccess NetworkLoadNetworkResourcePageResult
p),
    (Text
"netError" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkLoadNetworkResourcePageResult -> Maybe Double
networkLoadNetworkResourcePageResultNetError NetworkLoadNetworkResourcePageResult
p),
    (Text
"netErrorName" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkLoadNetworkResourcePageResult -> Maybe Text
networkLoadNetworkResourcePageResultNetErrorName NetworkLoadNetworkResourcePageResult
p),
    (Text
"httpStatusCode" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkLoadNetworkResourcePageResult -> Maybe Double
networkLoadNetworkResourcePageResultHttpStatusCode NetworkLoadNetworkResourcePageResult
p),
    (Text
"stream" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkLoadNetworkResourcePageResult -> Maybe Text
networkLoadNetworkResourcePageResultStream NetworkLoadNetworkResourcePageResult
p),
    (Text
"headers" Text -> NetworkHeaders -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkHeaders -> Pair) -> Maybe NetworkHeaders -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (NetworkLoadNetworkResourcePageResult -> Maybe NetworkHeaders
networkLoadNetworkResourcePageResultHeaders NetworkLoadNetworkResourcePageResult
p)
    ]

-- | Type 'Network.LoadNetworkResourceOptions'.
--   An options object that may be extended later to better support CORS,
--   CORB and streaming.
data NetworkLoadNetworkResourceOptions = NetworkLoadNetworkResourceOptions
  {
    NetworkLoadNetworkResourceOptions -> Bool
networkLoadNetworkResourceOptionsDisableCache :: Bool,
    NetworkLoadNetworkResourceOptions -> Bool
networkLoadNetworkResourceOptionsIncludeCredentials :: Bool
  }
  deriving (NetworkLoadNetworkResourceOptions
-> NetworkLoadNetworkResourceOptions -> Bool
(NetworkLoadNetworkResourceOptions
 -> NetworkLoadNetworkResourceOptions -> Bool)
-> (NetworkLoadNetworkResourceOptions
    -> NetworkLoadNetworkResourceOptions -> Bool)
-> Eq NetworkLoadNetworkResourceOptions
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkLoadNetworkResourceOptions
-> NetworkLoadNetworkResourceOptions -> Bool
$c/= :: NetworkLoadNetworkResourceOptions
-> NetworkLoadNetworkResourceOptions -> Bool
== :: NetworkLoadNetworkResourceOptions
-> NetworkLoadNetworkResourceOptions -> Bool
$c== :: NetworkLoadNetworkResourceOptions
-> NetworkLoadNetworkResourceOptions -> Bool
Eq, Int -> NetworkLoadNetworkResourceOptions -> ShowS
[NetworkLoadNetworkResourceOptions] -> ShowS
NetworkLoadNetworkResourceOptions -> String
(Int -> NetworkLoadNetworkResourceOptions -> ShowS)
-> (NetworkLoadNetworkResourceOptions -> String)
-> ([NetworkLoadNetworkResourceOptions] -> ShowS)
-> Show NetworkLoadNetworkResourceOptions
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkLoadNetworkResourceOptions] -> ShowS
$cshowList :: [NetworkLoadNetworkResourceOptions] -> ShowS
show :: NetworkLoadNetworkResourceOptions -> String
$cshow :: NetworkLoadNetworkResourceOptions -> String
showsPrec :: Int -> NetworkLoadNetworkResourceOptions -> ShowS
$cshowsPrec :: Int -> NetworkLoadNetworkResourceOptions -> ShowS
Show)
instance FromJSON NetworkLoadNetworkResourceOptions where
  parseJSON :: Value -> Parser NetworkLoadNetworkResourceOptions
parseJSON = String
-> (Object -> Parser NetworkLoadNetworkResourceOptions)
-> Value
-> Parser NetworkLoadNetworkResourceOptions
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkLoadNetworkResourceOptions" ((Object -> Parser NetworkLoadNetworkResourceOptions)
 -> Value -> Parser NetworkLoadNetworkResourceOptions)
-> (Object -> Parser NetworkLoadNetworkResourceOptions)
-> Value
-> Parser NetworkLoadNetworkResourceOptions
forall a b. (a -> b) -> a -> b
$ \Object
o -> Bool -> Bool -> NetworkLoadNetworkResourceOptions
NetworkLoadNetworkResourceOptions
    (Bool -> Bool -> NetworkLoadNetworkResourceOptions)
-> Parser Bool
-> Parser (Bool -> NetworkLoadNetworkResourceOptions)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Bool
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"disableCache"
    Parser (Bool -> NetworkLoadNetworkResourceOptions)
-> Parser Bool -> Parser NetworkLoadNetworkResourceOptions
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Bool
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"includeCredentials"
instance ToJSON NetworkLoadNetworkResourceOptions where
  toJSON :: NetworkLoadNetworkResourceOptions -> Value
toJSON NetworkLoadNetworkResourceOptions
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"disableCache" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (NetworkLoadNetworkResourceOptions -> Bool
networkLoadNetworkResourceOptionsDisableCache NetworkLoadNetworkResourceOptions
p),
    (Text
"includeCredentials" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (NetworkLoadNetworkResourceOptions -> Bool
networkLoadNetworkResourceOptionsIncludeCredentials NetworkLoadNetworkResourceOptions
p)
    ]

-- | Type of the 'Network.dataReceived' event.
data NetworkDataReceived = NetworkDataReceived
  {
    -- | Request identifier.
    NetworkDataReceived -> Text
networkDataReceivedRequestId :: NetworkRequestId,
    -- | Timestamp.
    NetworkDataReceived -> Double
networkDataReceivedTimestamp :: NetworkMonotonicTime,
    -- | Data chunk length.
    NetworkDataReceived -> Int
networkDataReceivedDataLength :: Int,
    -- | Actual bytes received (might be less than dataLength for compressed encodings).
    NetworkDataReceived -> Int
networkDataReceivedEncodedDataLength :: Int
  }
  deriving (NetworkDataReceived -> NetworkDataReceived -> Bool
(NetworkDataReceived -> NetworkDataReceived -> Bool)
-> (NetworkDataReceived -> NetworkDataReceived -> Bool)
-> Eq NetworkDataReceived
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkDataReceived -> NetworkDataReceived -> Bool
$c/= :: NetworkDataReceived -> NetworkDataReceived -> Bool
== :: NetworkDataReceived -> NetworkDataReceived -> Bool
$c== :: NetworkDataReceived -> NetworkDataReceived -> Bool
Eq, Int -> NetworkDataReceived -> ShowS
[NetworkDataReceived] -> ShowS
NetworkDataReceived -> String
(Int -> NetworkDataReceived -> ShowS)
-> (NetworkDataReceived -> String)
-> ([NetworkDataReceived] -> ShowS)
-> Show NetworkDataReceived
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkDataReceived] -> ShowS
$cshowList :: [NetworkDataReceived] -> ShowS
show :: NetworkDataReceived -> String
$cshow :: NetworkDataReceived -> String
showsPrec :: Int -> NetworkDataReceived -> ShowS
$cshowsPrec :: Int -> NetworkDataReceived -> ShowS
Show)
instance FromJSON NetworkDataReceived where
  parseJSON :: Value -> Parser NetworkDataReceived
parseJSON = String
-> (Object -> Parser NetworkDataReceived)
-> Value
-> Parser NetworkDataReceived
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkDataReceived" ((Object -> Parser NetworkDataReceived)
 -> Value -> Parser NetworkDataReceived)
-> (Object -> Parser NetworkDataReceived)
-> Value
-> Parser NetworkDataReceived
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> Double -> Int -> Int -> NetworkDataReceived
NetworkDataReceived
    (Text -> Double -> Int -> Int -> NetworkDataReceived)
-> Parser Text
-> Parser (Double -> Int -> Int -> NetworkDataReceived)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"requestId"
    Parser (Double -> Int -> Int -> NetworkDataReceived)
-> Parser Double -> Parser (Int -> Int -> NetworkDataReceived)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"timestamp"
    Parser (Int -> Int -> NetworkDataReceived)
-> Parser Int -> Parser (Int -> NetworkDataReceived)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"dataLength"
    Parser (Int -> NetworkDataReceived)
-> Parser Int -> Parser NetworkDataReceived
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"encodedDataLength"
instance Event NetworkDataReceived where
  eventName :: Proxy NetworkDataReceived -> String
eventName Proxy NetworkDataReceived
_ = String
"Network.dataReceived"

-- | Type of the 'Network.eventSourceMessageReceived' event.
data NetworkEventSourceMessageReceived = NetworkEventSourceMessageReceived
  {
    -- | Request identifier.
    NetworkEventSourceMessageReceived -> Text
networkEventSourceMessageReceivedRequestId :: NetworkRequestId,
    -- | Timestamp.
    NetworkEventSourceMessageReceived -> Double
networkEventSourceMessageReceivedTimestamp :: NetworkMonotonicTime,
    -- | Message type.
    NetworkEventSourceMessageReceived -> Text
networkEventSourceMessageReceivedEventName :: T.Text,
    -- | Message identifier.
    NetworkEventSourceMessageReceived -> Text
networkEventSourceMessageReceivedEventId :: T.Text,
    -- | Message content.
    NetworkEventSourceMessageReceived -> Text
networkEventSourceMessageReceivedData :: T.Text
  }
  deriving (NetworkEventSourceMessageReceived
-> NetworkEventSourceMessageReceived -> Bool
(NetworkEventSourceMessageReceived
 -> NetworkEventSourceMessageReceived -> Bool)
-> (NetworkEventSourceMessageReceived
    -> NetworkEventSourceMessageReceived -> Bool)
-> Eq NetworkEventSourceMessageReceived
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkEventSourceMessageReceived
-> NetworkEventSourceMessageReceived -> Bool
$c/= :: NetworkEventSourceMessageReceived
-> NetworkEventSourceMessageReceived -> Bool
== :: NetworkEventSourceMessageReceived
-> NetworkEventSourceMessageReceived -> Bool
$c== :: NetworkEventSourceMessageReceived
-> NetworkEventSourceMessageReceived -> Bool
Eq, Int -> NetworkEventSourceMessageReceived -> ShowS
[NetworkEventSourceMessageReceived] -> ShowS
NetworkEventSourceMessageReceived -> String
(Int -> NetworkEventSourceMessageReceived -> ShowS)
-> (NetworkEventSourceMessageReceived -> String)
-> ([NetworkEventSourceMessageReceived] -> ShowS)
-> Show NetworkEventSourceMessageReceived
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkEventSourceMessageReceived] -> ShowS
$cshowList :: [NetworkEventSourceMessageReceived] -> ShowS
show :: NetworkEventSourceMessageReceived -> String
$cshow :: NetworkEventSourceMessageReceived -> String
showsPrec :: Int -> NetworkEventSourceMessageReceived -> ShowS
$cshowsPrec :: Int -> NetworkEventSourceMessageReceived -> ShowS
Show)
instance FromJSON NetworkEventSourceMessageReceived where
  parseJSON :: Value -> Parser NetworkEventSourceMessageReceived
parseJSON = String
-> (Object -> Parser NetworkEventSourceMessageReceived)
-> Value
-> Parser NetworkEventSourceMessageReceived
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkEventSourceMessageReceived" ((Object -> Parser NetworkEventSourceMessageReceived)
 -> Value -> Parser NetworkEventSourceMessageReceived)
-> (Object -> Parser NetworkEventSourceMessageReceived)
-> Value
-> Parser NetworkEventSourceMessageReceived
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> Double
-> Text
-> Text
-> Text
-> NetworkEventSourceMessageReceived
NetworkEventSourceMessageReceived
    (Text
 -> Double
 -> Text
 -> Text
 -> Text
 -> NetworkEventSourceMessageReceived)
-> Parser Text
-> Parser
     (Double
      -> Text -> Text -> Text -> NetworkEventSourceMessageReceived)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"requestId"
    Parser
  (Double
   -> Text -> Text -> Text -> NetworkEventSourceMessageReceived)
-> Parser Double
-> Parser
     (Text -> Text -> Text -> NetworkEventSourceMessageReceived)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"timestamp"
    Parser (Text -> Text -> Text -> NetworkEventSourceMessageReceived)
-> Parser Text
-> Parser (Text -> Text -> NetworkEventSourceMessageReceived)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"eventName"
    Parser (Text -> Text -> NetworkEventSourceMessageReceived)
-> Parser Text
-> Parser (Text -> NetworkEventSourceMessageReceived)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"eventId"
    Parser (Text -> NetworkEventSourceMessageReceived)
-> Parser Text -> Parser NetworkEventSourceMessageReceived
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"data"
instance Event NetworkEventSourceMessageReceived where
  eventName :: Proxy NetworkEventSourceMessageReceived -> String
eventName Proxy NetworkEventSourceMessageReceived
_ = String
"Network.eventSourceMessageReceived"

-- | Type of the 'Network.loadingFailed' event.
data NetworkLoadingFailed = NetworkLoadingFailed
  {
    -- | Request identifier.
    NetworkLoadingFailed -> Text
networkLoadingFailedRequestId :: NetworkRequestId,
    -- | Timestamp.
    NetworkLoadingFailed -> Double
networkLoadingFailedTimestamp :: NetworkMonotonicTime,
    -- | Resource type.
    NetworkLoadingFailed -> NetworkResourceType
networkLoadingFailedType :: NetworkResourceType,
    -- | User friendly error message.
    NetworkLoadingFailed -> Text
networkLoadingFailedErrorText :: T.Text,
    -- | True if loading was canceled.
    NetworkLoadingFailed -> Maybe Bool
networkLoadingFailedCanceled :: Maybe Bool,
    -- | The reason why loading was blocked, if any.
    NetworkLoadingFailed -> Maybe NetworkBlockedReason
networkLoadingFailedBlockedReason :: Maybe NetworkBlockedReason,
    -- | The reason why loading was blocked by CORS, if any.
    NetworkLoadingFailed -> Maybe NetworkCorsErrorStatus
networkLoadingFailedCorsErrorStatus :: Maybe NetworkCorsErrorStatus
  }
  deriving (NetworkLoadingFailed -> NetworkLoadingFailed -> Bool
(NetworkLoadingFailed -> NetworkLoadingFailed -> Bool)
-> (NetworkLoadingFailed -> NetworkLoadingFailed -> Bool)
-> Eq NetworkLoadingFailed
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkLoadingFailed -> NetworkLoadingFailed -> Bool
$c/= :: NetworkLoadingFailed -> NetworkLoadingFailed -> Bool
== :: NetworkLoadingFailed -> NetworkLoadingFailed -> Bool
$c== :: NetworkLoadingFailed -> NetworkLoadingFailed -> Bool
Eq, Int -> NetworkLoadingFailed -> ShowS
[NetworkLoadingFailed] -> ShowS
NetworkLoadingFailed -> String
(Int -> NetworkLoadingFailed -> ShowS)
-> (NetworkLoadingFailed -> String)
-> ([NetworkLoadingFailed] -> ShowS)
-> Show NetworkLoadingFailed
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkLoadingFailed] -> ShowS
$cshowList :: [NetworkLoadingFailed] -> ShowS
show :: NetworkLoadingFailed -> String
$cshow :: NetworkLoadingFailed -> String
showsPrec :: Int -> NetworkLoadingFailed -> ShowS
$cshowsPrec :: Int -> NetworkLoadingFailed -> ShowS
Show)
instance FromJSON NetworkLoadingFailed where
  parseJSON :: Value -> Parser NetworkLoadingFailed
parseJSON = String
-> (Object -> Parser NetworkLoadingFailed)
-> Value
-> Parser NetworkLoadingFailed
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkLoadingFailed" ((Object -> Parser NetworkLoadingFailed)
 -> Value -> Parser NetworkLoadingFailed)
-> (Object -> Parser NetworkLoadingFailed)
-> Value
-> Parser NetworkLoadingFailed
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> Double
-> NetworkResourceType
-> Text
-> Maybe Bool
-> Maybe NetworkBlockedReason
-> Maybe NetworkCorsErrorStatus
-> NetworkLoadingFailed
NetworkLoadingFailed
    (Text
 -> Double
 -> NetworkResourceType
 -> Text
 -> Maybe Bool
 -> Maybe NetworkBlockedReason
 -> Maybe NetworkCorsErrorStatus
 -> NetworkLoadingFailed)
-> Parser Text
-> Parser
     (Double
      -> NetworkResourceType
      -> Text
      -> Maybe Bool
      -> Maybe NetworkBlockedReason
      -> Maybe NetworkCorsErrorStatus
      -> NetworkLoadingFailed)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"requestId"
    Parser
  (Double
   -> NetworkResourceType
   -> Text
   -> Maybe Bool
   -> Maybe NetworkBlockedReason
   -> Maybe NetworkCorsErrorStatus
   -> NetworkLoadingFailed)
-> Parser Double
-> Parser
     (NetworkResourceType
      -> Text
      -> Maybe Bool
      -> Maybe NetworkBlockedReason
      -> Maybe NetworkCorsErrorStatus
      -> NetworkLoadingFailed)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"timestamp"
    Parser
  (NetworkResourceType
   -> Text
   -> Maybe Bool
   -> Maybe NetworkBlockedReason
   -> Maybe NetworkCorsErrorStatus
   -> NetworkLoadingFailed)
-> Parser NetworkResourceType
-> Parser
     (Text
      -> Maybe Bool
      -> Maybe NetworkBlockedReason
      -> Maybe NetworkCorsErrorStatus
      -> NetworkLoadingFailed)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser NetworkResourceType
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"type"
    Parser
  (Text
   -> Maybe Bool
   -> Maybe NetworkBlockedReason
   -> Maybe NetworkCorsErrorStatus
   -> NetworkLoadingFailed)
-> Parser Text
-> Parser
     (Maybe Bool
      -> Maybe NetworkBlockedReason
      -> Maybe NetworkCorsErrorStatus
      -> NetworkLoadingFailed)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"errorText"
    Parser
  (Maybe Bool
   -> Maybe NetworkBlockedReason
   -> Maybe NetworkCorsErrorStatus
   -> NetworkLoadingFailed)
-> Parser (Maybe Bool)
-> Parser
     (Maybe NetworkBlockedReason
      -> Maybe NetworkCorsErrorStatus -> NetworkLoadingFailed)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"canceled"
    Parser
  (Maybe NetworkBlockedReason
   -> Maybe NetworkCorsErrorStatus -> NetworkLoadingFailed)
-> Parser (Maybe NetworkBlockedReason)
-> Parser (Maybe NetworkCorsErrorStatus -> NetworkLoadingFailed)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe NetworkBlockedReason)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"blockedReason"
    Parser (Maybe NetworkCorsErrorStatus -> NetworkLoadingFailed)
-> Parser (Maybe NetworkCorsErrorStatus)
-> Parser NetworkLoadingFailed
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe NetworkCorsErrorStatus)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"corsErrorStatus"
instance Event NetworkLoadingFailed where
  eventName :: Proxy NetworkLoadingFailed -> String
eventName Proxy NetworkLoadingFailed
_ = String
"Network.loadingFailed"

-- | Type of the 'Network.loadingFinished' event.
data NetworkLoadingFinished = NetworkLoadingFinished
  {
    -- | Request identifier.
    NetworkLoadingFinished -> Text
networkLoadingFinishedRequestId :: NetworkRequestId,
    -- | Timestamp.
    NetworkLoadingFinished -> Double
networkLoadingFinishedTimestamp :: NetworkMonotonicTime,
    -- | Total number of bytes received for this request.
    NetworkLoadingFinished -> Double
networkLoadingFinishedEncodedDataLength :: Double,
    -- | Set when 1) response was blocked by Cross-Origin Read Blocking and also
    --   2) this needs to be reported to the DevTools console.
    NetworkLoadingFinished -> Maybe Bool
networkLoadingFinishedShouldReportCorbBlocking :: Maybe Bool
  }
  deriving (NetworkLoadingFinished -> NetworkLoadingFinished -> Bool
(NetworkLoadingFinished -> NetworkLoadingFinished -> Bool)
-> (NetworkLoadingFinished -> NetworkLoadingFinished -> Bool)
-> Eq NetworkLoadingFinished
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkLoadingFinished -> NetworkLoadingFinished -> Bool
$c/= :: NetworkLoadingFinished -> NetworkLoadingFinished -> Bool
== :: NetworkLoadingFinished -> NetworkLoadingFinished -> Bool
$c== :: NetworkLoadingFinished -> NetworkLoadingFinished -> Bool
Eq, Int -> NetworkLoadingFinished -> ShowS
[NetworkLoadingFinished] -> ShowS
NetworkLoadingFinished -> String
(Int -> NetworkLoadingFinished -> ShowS)
-> (NetworkLoadingFinished -> String)
-> ([NetworkLoadingFinished] -> ShowS)
-> Show NetworkLoadingFinished
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkLoadingFinished] -> ShowS
$cshowList :: [NetworkLoadingFinished] -> ShowS
show :: NetworkLoadingFinished -> String
$cshow :: NetworkLoadingFinished -> String
showsPrec :: Int -> NetworkLoadingFinished -> ShowS
$cshowsPrec :: Int -> NetworkLoadingFinished -> ShowS
Show)
instance FromJSON NetworkLoadingFinished where
  parseJSON :: Value -> Parser NetworkLoadingFinished
parseJSON = String
-> (Object -> Parser NetworkLoadingFinished)
-> Value
-> Parser NetworkLoadingFinished
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkLoadingFinished" ((Object -> Parser NetworkLoadingFinished)
 -> Value -> Parser NetworkLoadingFinished)
-> (Object -> Parser NetworkLoadingFinished)
-> Value
-> Parser NetworkLoadingFinished
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> Double -> Double -> Maybe Bool -> NetworkLoadingFinished
NetworkLoadingFinished
    (Text -> Double -> Double -> Maybe Bool -> NetworkLoadingFinished)
-> Parser Text
-> Parser
     (Double -> Double -> Maybe Bool -> NetworkLoadingFinished)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"requestId"
    Parser (Double -> Double -> Maybe Bool -> NetworkLoadingFinished)
-> Parser Double
-> Parser (Double -> Maybe Bool -> NetworkLoadingFinished)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"timestamp"
    Parser (Double -> Maybe Bool -> NetworkLoadingFinished)
-> Parser Double -> Parser (Maybe Bool -> NetworkLoadingFinished)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"encodedDataLength"
    Parser (Maybe Bool -> NetworkLoadingFinished)
-> Parser (Maybe Bool) -> Parser NetworkLoadingFinished
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"shouldReportCorbBlocking"
instance Event NetworkLoadingFinished where
  eventName :: Proxy NetworkLoadingFinished -> String
eventName Proxy NetworkLoadingFinished
_ = String
"Network.loadingFinished"

-- | Type of the 'Network.requestServedFromCache' event.
data NetworkRequestServedFromCache = NetworkRequestServedFromCache
  {
    -- | Request identifier.
    NetworkRequestServedFromCache -> Text
networkRequestServedFromCacheRequestId :: NetworkRequestId
  }
  deriving (NetworkRequestServedFromCache
-> NetworkRequestServedFromCache -> Bool
(NetworkRequestServedFromCache
 -> NetworkRequestServedFromCache -> Bool)
-> (NetworkRequestServedFromCache
    -> NetworkRequestServedFromCache -> Bool)
-> Eq NetworkRequestServedFromCache
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkRequestServedFromCache
-> NetworkRequestServedFromCache -> Bool
$c/= :: NetworkRequestServedFromCache
-> NetworkRequestServedFromCache -> Bool
== :: NetworkRequestServedFromCache
-> NetworkRequestServedFromCache -> Bool
$c== :: NetworkRequestServedFromCache
-> NetworkRequestServedFromCache -> Bool
Eq, Int -> NetworkRequestServedFromCache -> ShowS
[NetworkRequestServedFromCache] -> ShowS
NetworkRequestServedFromCache -> String
(Int -> NetworkRequestServedFromCache -> ShowS)
-> (NetworkRequestServedFromCache -> String)
-> ([NetworkRequestServedFromCache] -> ShowS)
-> Show NetworkRequestServedFromCache
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkRequestServedFromCache] -> ShowS
$cshowList :: [NetworkRequestServedFromCache] -> ShowS
show :: NetworkRequestServedFromCache -> String
$cshow :: NetworkRequestServedFromCache -> String
showsPrec :: Int -> NetworkRequestServedFromCache -> ShowS
$cshowsPrec :: Int -> NetworkRequestServedFromCache -> ShowS
Show)
instance FromJSON NetworkRequestServedFromCache where
  parseJSON :: Value -> Parser NetworkRequestServedFromCache
parseJSON = String
-> (Object -> Parser NetworkRequestServedFromCache)
-> Value
-> Parser NetworkRequestServedFromCache
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkRequestServedFromCache" ((Object -> Parser NetworkRequestServedFromCache)
 -> Value -> Parser NetworkRequestServedFromCache)
-> (Object -> Parser NetworkRequestServedFromCache)
-> Value
-> Parser NetworkRequestServedFromCache
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> NetworkRequestServedFromCache
NetworkRequestServedFromCache
    (Text -> NetworkRequestServedFromCache)
-> Parser Text -> Parser NetworkRequestServedFromCache
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"requestId"
instance Event NetworkRequestServedFromCache where
  eventName :: Proxy NetworkRequestServedFromCache -> String
eventName Proxy NetworkRequestServedFromCache
_ = String
"Network.requestServedFromCache"

-- | Type of the 'Network.requestWillBeSent' event.
data NetworkRequestWillBeSent = NetworkRequestWillBeSent
  {
    -- | Request identifier.
    NetworkRequestWillBeSent -> Text
networkRequestWillBeSentRequestId :: NetworkRequestId,
    -- | Loader identifier. Empty string if the request is fetched from worker.
    NetworkRequestWillBeSent -> Text
networkRequestWillBeSentLoaderId :: NetworkLoaderId,
    -- | URL of the document this request is loaded for.
    NetworkRequestWillBeSent -> Text
networkRequestWillBeSentDocumentURL :: T.Text,
    -- | Request data.
    NetworkRequestWillBeSent -> NetworkRequest
networkRequestWillBeSentRequest :: NetworkRequest,
    -- | Timestamp.
    NetworkRequestWillBeSent -> Double
networkRequestWillBeSentTimestamp :: NetworkMonotonicTime,
    -- | Timestamp.
    NetworkRequestWillBeSent -> Double
networkRequestWillBeSentWallTime :: NetworkTimeSinceEpoch,
    -- | Request initiator.
    NetworkRequestWillBeSent -> NetworkInitiator
networkRequestWillBeSentInitiator :: NetworkInitiator,
    -- | In the case that redirectResponse is populated, this flag indicates whether
    --   requestWillBeSentExtraInfo and responseReceivedExtraInfo events will be or were emitted
    --   for the request which was just redirected.
    NetworkRequestWillBeSent -> Bool
networkRequestWillBeSentRedirectHasExtraInfo :: Bool,
    -- | Redirect response data.
    NetworkRequestWillBeSent -> Maybe NetworkResponse
networkRequestWillBeSentRedirectResponse :: Maybe NetworkResponse,
    -- | Type of this resource.
    NetworkRequestWillBeSent -> Maybe NetworkResourceType
networkRequestWillBeSentType :: Maybe NetworkResourceType,
    -- | Frame identifier.
    NetworkRequestWillBeSent -> Maybe Text
networkRequestWillBeSentFrameId :: Maybe PageFrameId,
    -- | Whether the request is initiated by a user gesture. Defaults to false.
    NetworkRequestWillBeSent -> Maybe Bool
networkRequestWillBeSentHasUserGesture :: Maybe Bool
  }
  deriving (NetworkRequestWillBeSent -> NetworkRequestWillBeSent -> Bool
(NetworkRequestWillBeSent -> NetworkRequestWillBeSent -> Bool)
-> (NetworkRequestWillBeSent -> NetworkRequestWillBeSent -> Bool)
-> Eq NetworkRequestWillBeSent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkRequestWillBeSent -> NetworkRequestWillBeSent -> Bool
$c/= :: NetworkRequestWillBeSent -> NetworkRequestWillBeSent -> Bool
== :: NetworkRequestWillBeSent -> NetworkRequestWillBeSent -> Bool
$c== :: NetworkRequestWillBeSent -> NetworkRequestWillBeSent -> Bool
Eq, Int -> NetworkRequestWillBeSent -> ShowS
[NetworkRequestWillBeSent] -> ShowS
NetworkRequestWillBeSent -> String
(Int -> NetworkRequestWillBeSent -> ShowS)
-> (NetworkRequestWillBeSent -> String)
-> ([NetworkRequestWillBeSent] -> ShowS)
-> Show NetworkRequestWillBeSent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkRequestWillBeSent] -> ShowS
$cshowList :: [NetworkRequestWillBeSent] -> ShowS
show :: NetworkRequestWillBeSent -> String
$cshow :: NetworkRequestWillBeSent -> String
showsPrec :: Int -> NetworkRequestWillBeSent -> ShowS
$cshowsPrec :: Int -> NetworkRequestWillBeSent -> ShowS
Show)
instance FromJSON NetworkRequestWillBeSent where
  parseJSON :: Value -> Parser NetworkRequestWillBeSent
parseJSON = String
-> (Object -> Parser NetworkRequestWillBeSent)
-> Value
-> Parser NetworkRequestWillBeSent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkRequestWillBeSent" ((Object -> Parser NetworkRequestWillBeSent)
 -> Value -> Parser NetworkRequestWillBeSent)
-> (Object -> Parser NetworkRequestWillBeSent)
-> Value
-> Parser NetworkRequestWillBeSent
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> Text
-> Text
-> NetworkRequest
-> Double
-> Double
-> NetworkInitiator
-> Bool
-> Maybe NetworkResponse
-> Maybe NetworkResourceType
-> Maybe Text
-> Maybe Bool
-> NetworkRequestWillBeSent
NetworkRequestWillBeSent
    (Text
 -> Text
 -> Text
 -> NetworkRequest
 -> Double
 -> Double
 -> NetworkInitiator
 -> Bool
 -> Maybe NetworkResponse
 -> Maybe NetworkResourceType
 -> Maybe Text
 -> Maybe Bool
 -> NetworkRequestWillBeSent)
-> Parser Text
-> Parser
     (Text
      -> Text
      -> NetworkRequest
      -> Double
      -> Double
      -> NetworkInitiator
      -> Bool
      -> Maybe NetworkResponse
      -> Maybe NetworkResourceType
      -> Maybe Text
      -> Maybe Bool
      -> NetworkRequestWillBeSent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"requestId"
    Parser
  (Text
   -> Text
   -> NetworkRequest
   -> Double
   -> Double
   -> NetworkInitiator
   -> Bool
   -> Maybe NetworkResponse
   -> Maybe NetworkResourceType
   -> Maybe Text
   -> Maybe Bool
   -> NetworkRequestWillBeSent)
-> Parser Text
-> Parser
     (Text
      -> NetworkRequest
      -> Double
      -> Double
      -> NetworkInitiator
      -> Bool
      -> Maybe NetworkResponse
      -> Maybe NetworkResourceType
      -> Maybe Text
      -> Maybe Bool
      -> NetworkRequestWillBeSent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"loaderId"
    Parser
  (Text
   -> NetworkRequest
   -> Double
   -> Double
   -> NetworkInitiator
   -> Bool
   -> Maybe NetworkResponse
   -> Maybe NetworkResourceType
   -> Maybe Text
   -> Maybe Bool
   -> NetworkRequestWillBeSent)
-> Parser Text
-> Parser
     (NetworkRequest
      -> Double
      -> Double
      -> NetworkInitiator
      -> Bool
      -> Maybe NetworkResponse
      -> Maybe NetworkResourceType
      -> Maybe Text
      -> Maybe Bool
      -> NetworkRequestWillBeSent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"documentURL"
    Parser
  (NetworkRequest
   -> Double
   -> Double
   -> NetworkInitiator
   -> Bool
   -> Maybe NetworkResponse
   -> Maybe NetworkResourceType
   -> Maybe Text
   -> Maybe Bool
   -> NetworkRequestWillBeSent)
-> Parser NetworkRequest
-> Parser
     (Double
      -> Double
      -> NetworkInitiator
      -> Bool
      -> Maybe NetworkResponse
      -> Maybe NetworkResourceType
      -> Maybe Text
      -> Maybe Bool
      -> NetworkRequestWillBeSent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser NetworkRequest
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"request"
    Parser
  (Double
   -> Double
   -> NetworkInitiator
   -> Bool
   -> Maybe NetworkResponse
   -> Maybe NetworkResourceType
   -> Maybe Text
   -> Maybe Bool
   -> NetworkRequestWillBeSent)
-> Parser Double
-> Parser
     (Double
      -> NetworkInitiator
      -> Bool
      -> Maybe NetworkResponse
      -> Maybe NetworkResourceType
      -> Maybe Text
      -> Maybe Bool
      -> NetworkRequestWillBeSent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"timestamp"
    Parser
  (Double
   -> NetworkInitiator
   -> Bool
   -> Maybe NetworkResponse
   -> Maybe NetworkResourceType
   -> Maybe Text
   -> Maybe Bool
   -> NetworkRequestWillBeSent)
-> Parser Double
-> Parser
     (NetworkInitiator
      -> Bool
      -> Maybe NetworkResponse
      -> Maybe NetworkResourceType
      -> Maybe Text
      -> Maybe Bool
      -> NetworkRequestWillBeSent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"wallTime"
    Parser
  (NetworkInitiator
   -> Bool
   -> Maybe NetworkResponse
   -> Maybe NetworkResourceType
   -> Maybe Text
   -> Maybe Bool
   -> NetworkRequestWillBeSent)
-> Parser NetworkInitiator
-> Parser
     (Bool
      -> Maybe NetworkResponse
      -> Maybe NetworkResourceType
      -> Maybe Text
      -> Maybe Bool
      -> NetworkRequestWillBeSent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser NetworkInitiator
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"initiator"
    Parser
  (Bool
   -> Maybe NetworkResponse
   -> Maybe NetworkResourceType
   -> Maybe Text
   -> Maybe Bool
   -> NetworkRequestWillBeSent)
-> Parser Bool
-> Parser
     (Maybe NetworkResponse
      -> Maybe NetworkResourceType
      -> Maybe Text
      -> Maybe Bool
      -> NetworkRequestWillBeSent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Bool
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"redirectHasExtraInfo"
    Parser
  (Maybe NetworkResponse
   -> Maybe NetworkResourceType
   -> Maybe Text
   -> Maybe Bool
   -> NetworkRequestWillBeSent)
-> Parser (Maybe NetworkResponse)
-> Parser
     (Maybe NetworkResourceType
      -> Maybe Text -> Maybe Bool -> NetworkRequestWillBeSent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe NetworkResponse)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"redirectResponse"
    Parser
  (Maybe NetworkResourceType
   -> Maybe Text -> Maybe Bool -> NetworkRequestWillBeSent)
-> Parser (Maybe NetworkResourceType)
-> Parser (Maybe Text -> Maybe Bool -> NetworkRequestWillBeSent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe NetworkResourceType)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"type"
    Parser (Maybe Text -> Maybe Bool -> NetworkRequestWillBeSent)
-> Parser (Maybe Text)
-> Parser (Maybe Bool -> NetworkRequestWillBeSent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"frameId"
    Parser (Maybe Bool -> NetworkRequestWillBeSent)
-> Parser (Maybe Bool) -> Parser NetworkRequestWillBeSent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"hasUserGesture"
instance Event NetworkRequestWillBeSent where
  eventName :: Proxy NetworkRequestWillBeSent -> String
eventName Proxy NetworkRequestWillBeSent
_ = String
"Network.requestWillBeSent"

-- | Type of the 'Network.resourceChangedPriority' event.
data NetworkResourceChangedPriority = NetworkResourceChangedPriority
  {
    -- | Request identifier.
    NetworkResourceChangedPriority -> Text
networkResourceChangedPriorityRequestId :: NetworkRequestId,
    -- | New priority
    NetworkResourceChangedPriority -> NetworkResourcePriority
networkResourceChangedPriorityNewPriority :: NetworkResourcePriority,
    -- | Timestamp.
    NetworkResourceChangedPriority -> Double
networkResourceChangedPriorityTimestamp :: NetworkMonotonicTime
  }
  deriving (NetworkResourceChangedPriority
-> NetworkResourceChangedPriority -> Bool
(NetworkResourceChangedPriority
 -> NetworkResourceChangedPriority -> Bool)
-> (NetworkResourceChangedPriority
    -> NetworkResourceChangedPriority -> Bool)
-> Eq NetworkResourceChangedPriority
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkResourceChangedPriority
-> NetworkResourceChangedPriority -> Bool
$c/= :: NetworkResourceChangedPriority
-> NetworkResourceChangedPriority -> Bool
== :: NetworkResourceChangedPriority
-> NetworkResourceChangedPriority -> Bool
$c== :: NetworkResourceChangedPriority
-> NetworkResourceChangedPriority -> Bool
Eq, Int -> NetworkResourceChangedPriority -> ShowS
[NetworkResourceChangedPriority] -> ShowS
NetworkResourceChangedPriority -> String
(Int -> NetworkResourceChangedPriority -> ShowS)
-> (NetworkResourceChangedPriority -> String)
-> ([NetworkResourceChangedPriority] -> ShowS)
-> Show NetworkResourceChangedPriority
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkResourceChangedPriority] -> ShowS
$cshowList :: [NetworkResourceChangedPriority] -> ShowS
show :: NetworkResourceChangedPriority -> String
$cshow :: NetworkResourceChangedPriority -> String
showsPrec :: Int -> NetworkResourceChangedPriority -> ShowS
$cshowsPrec :: Int -> NetworkResourceChangedPriority -> ShowS
Show)
instance FromJSON NetworkResourceChangedPriority where
  parseJSON :: Value -> Parser NetworkResourceChangedPriority
parseJSON = String
-> (Object -> Parser NetworkResourceChangedPriority)
-> Value
-> Parser NetworkResourceChangedPriority
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkResourceChangedPriority" ((Object -> Parser NetworkResourceChangedPriority)
 -> Value -> Parser NetworkResourceChangedPriority)
-> (Object -> Parser NetworkResourceChangedPriority)
-> Value
-> Parser NetworkResourceChangedPriority
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> NetworkResourcePriority
-> Double
-> NetworkResourceChangedPriority
NetworkResourceChangedPriority
    (Text
 -> NetworkResourcePriority
 -> Double
 -> NetworkResourceChangedPriority)
-> Parser Text
-> Parser
     (NetworkResourcePriority
      -> Double -> NetworkResourceChangedPriority)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"requestId"
    Parser
  (NetworkResourcePriority
   -> Double -> NetworkResourceChangedPriority)
-> Parser NetworkResourcePriority
-> Parser (Double -> NetworkResourceChangedPriority)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser NetworkResourcePriority
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"newPriority"
    Parser (Double -> NetworkResourceChangedPriority)
-> Parser Double -> Parser NetworkResourceChangedPriority
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"timestamp"
instance Event NetworkResourceChangedPriority where
  eventName :: Proxy NetworkResourceChangedPriority -> String
eventName Proxy NetworkResourceChangedPriority
_ = String
"Network.resourceChangedPriority"

-- | Type of the 'Network.signedExchangeReceived' event.
data NetworkSignedExchangeReceived = NetworkSignedExchangeReceived
  {
    -- | Request identifier.
    NetworkSignedExchangeReceived -> Text
networkSignedExchangeReceivedRequestId :: NetworkRequestId,
    -- | Information about the signed exchange response.
    NetworkSignedExchangeReceived -> NetworkSignedExchangeInfo
networkSignedExchangeReceivedInfo :: NetworkSignedExchangeInfo
  }
  deriving (NetworkSignedExchangeReceived
-> NetworkSignedExchangeReceived -> Bool
(NetworkSignedExchangeReceived
 -> NetworkSignedExchangeReceived -> Bool)
-> (NetworkSignedExchangeReceived
    -> NetworkSignedExchangeReceived -> Bool)
-> Eq NetworkSignedExchangeReceived
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkSignedExchangeReceived
-> NetworkSignedExchangeReceived -> Bool
$c/= :: NetworkSignedExchangeReceived
-> NetworkSignedExchangeReceived -> Bool
== :: NetworkSignedExchangeReceived
-> NetworkSignedExchangeReceived -> Bool
$c== :: NetworkSignedExchangeReceived
-> NetworkSignedExchangeReceived -> Bool
Eq, Int -> NetworkSignedExchangeReceived -> ShowS
[NetworkSignedExchangeReceived] -> ShowS
NetworkSignedExchangeReceived -> String
(Int -> NetworkSignedExchangeReceived -> ShowS)
-> (NetworkSignedExchangeReceived -> String)
-> ([NetworkSignedExchangeReceived] -> ShowS)
-> Show NetworkSignedExchangeReceived
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkSignedExchangeReceived] -> ShowS
$cshowList :: [NetworkSignedExchangeReceived] -> ShowS
show :: NetworkSignedExchangeReceived -> String
$cshow :: NetworkSignedExchangeReceived -> String
showsPrec :: Int -> NetworkSignedExchangeReceived -> ShowS
$cshowsPrec :: Int -> NetworkSignedExchangeReceived -> ShowS
Show)
instance FromJSON NetworkSignedExchangeReceived where
  parseJSON :: Value -> Parser NetworkSignedExchangeReceived
parseJSON = String
-> (Object -> Parser NetworkSignedExchangeReceived)
-> Value
-> Parser NetworkSignedExchangeReceived
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkSignedExchangeReceived" ((Object -> Parser NetworkSignedExchangeReceived)
 -> Value -> Parser NetworkSignedExchangeReceived)
-> (Object -> Parser NetworkSignedExchangeReceived)
-> Value
-> Parser NetworkSignedExchangeReceived
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> NetworkSignedExchangeInfo -> NetworkSignedExchangeReceived
NetworkSignedExchangeReceived
    (Text
 -> NetworkSignedExchangeInfo -> NetworkSignedExchangeReceived)
-> Parser Text
-> Parser
     (NetworkSignedExchangeInfo -> NetworkSignedExchangeReceived)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"requestId"
    Parser (NetworkSignedExchangeInfo -> NetworkSignedExchangeReceived)
-> Parser NetworkSignedExchangeInfo
-> Parser NetworkSignedExchangeReceived
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser NetworkSignedExchangeInfo
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"info"
instance Event NetworkSignedExchangeReceived where
  eventName :: Proxy NetworkSignedExchangeReceived -> String
eventName Proxy NetworkSignedExchangeReceived
_ = String
"Network.signedExchangeReceived"

-- | Type of the 'Network.responseReceived' event.
data NetworkResponseReceived = NetworkResponseReceived
  {
    -- | Request identifier.
    NetworkResponseReceived -> Text
networkResponseReceivedRequestId :: NetworkRequestId,
    -- | Loader identifier. Empty string if the request is fetched from worker.
    NetworkResponseReceived -> Text
networkResponseReceivedLoaderId :: NetworkLoaderId,
    -- | Timestamp.
    NetworkResponseReceived -> Double
networkResponseReceivedTimestamp :: NetworkMonotonicTime,
    -- | Resource type.
    NetworkResponseReceived -> NetworkResourceType
networkResponseReceivedType :: NetworkResourceType,
    -- | Response data.
    NetworkResponseReceived -> NetworkResponse
networkResponseReceivedResponse :: NetworkResponse,
    -- | Indicates whether requestWillBeSentExtraInfo and responseReceivedExtraInfo events will be
    --   or were emitted for this request.
    NetworkResponseReceived -> Bool
networkResponseReceivedHasExtraInfo :: Bool,
    -- | Frame identifier.
    NetworkResponseReceived -> Maybe Text
networkResponseReceivedFrameId :: Maybe PageFrameId
  }
  deriving (NetworkResponseReceived -> NetworkResponseReceived -> Bool
(NetworkResponseReceived -> NetworkResponseReceived -> Bool)
-> (NetworkResponseReceived -> NetworkResponseReceived -> Bool)
-> Eq NetworkResponseReceived
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkResponseReceived -> NetworkResponseReceived -> Bool
$c/= :: NetworkResponseReceived -> NetworkResponseReceived -> Bool
== :: NetworkResponseReceived -> NetworkResponseReceived -> Bool
$c== :: NetworkResponseReceived -> NetworkResponseReceived -> Bool
Eq, Int -> NetworkResponseReceived -> ShowS
[NetworkResponseReceived] -> ShowS
NetworkResponseReceived -> String
(Int -> NetworkResponseReceived -> ShowS)
-> (NetworkResponseReceived -> String)
-> ([NetworkResponseReceived] -> ShowS)
-> Show NetworkResponseReceived
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkResponseReceived] -> ShowS
$cshowList :: [NetworkResponseReceived] -> ShowS
show :: NetworkResponseReceived -> String
$cshow :: NetworkResponseReceived -> String
showsPrec :: Int -> NetworkResponseReceived -> ShowS
$cshowsPrec :: Int -> NetworkResponseReceived -> ShowS
Show)
instance FromJSON NetworkResponseReceived where
  parseJSON :: Value -> Parser NetworkResponseReceived
parseJSON = String
-> (Object -> Parser NetworkResponseReceived)
-> Value
-> Parser NetworkResponseReceived
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkResponseReceived" ((Object -> Parser NetworkResponseReceived)
 -> Value -> Parser NetworkResponseReceived)
-> (Object -> Parser NetworkResponseReceived)
-> Value
-> Parser NetworkResponseReceived
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> Text
-> Double
-> NetworkResourceType
-> NetworkResponse
-> Bool
-> Maybe Text
-> NetworkResponseReceived
NetworkResponseReceived
    (Text
 -> Text
 -> Double
 -> NetworkResourceType
 -> NetworkResponse
 -> Bool
 -> Maybe Text
 -> NetworkResponseReceived)
-> Parser Text
-> Parser
     (Text
      -> Double
      -> NetworkResourceType
      -> NetworkResponse
      -> Bool
      -> Maybe Text
      -> NetworkResponseReceived)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"requestId"
    Parser
  (Text
   -> Double
   -> NetworkResourceType
   -> NetworkResponse
   -> Bool
   -> Maybe Text
   -> NetworkResponseReceived)
-> Parser Text
-> Parser
     (Double
      -> NetworkResourceType
      -> NetworkResponse
      -> Bool
      -> Maybe Text
      -> NetworkResponseReceived)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"loaderId"
    Parser
  (Double
   -> NetworkResourceType
   -> NetworkResponse
   -> Bool
   -> Maybe Text
   -> NetworkResponseReceived)
-> Parser Double
-> Parser
     (NetworkResourceType
      -> NetworkResponse
      -> Bool
      -> Maybe Text
      -> NetworkResponseReceived)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"timestamp"
    Parser
  (NetworkResourceType
   -> NetworkResponse
   -> Bool
   -> Maybe Text
   -> NetworkResponseReceived)
-> Parser NetworkResourceType
-> Parser
     (NetworkResponse -> Bool -> Maybe Text -> NetworkResponseReceived)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser NetworkResourceType
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"type"
    Parser
  (NetworkResponse -> Bool -> Maybe Text -> NetworkResponseReceived)
-> Parser NetworkResponse
-> Parser (Bool -> Maybe Text -> NetworkResponseReceived)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser NetworkResponse
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"response"
    Parser (Bool -> Maybe Text -> NetworkResponseReceived)
-> Parser Bool -> Parser (Maybe Text -> NetworkResponseReceived)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Bool
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"hasExtraInfo"
    Parser (Maybe Text -> NetworkResponseReceived)
-> Parser (Maybe Text) -> Parser NetworkResponseReceived
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"frameId"
instance Event NetworkResponseReceived where
  eventName :: Proxy NetworkResponseReceived -> String
eventName Proxy NetworkResponseReceived
_ = String
"Network.responseReceived"

-- | Type of the 'Network.webSocketClosed' event.
data NetworkWebSocketClosed = NetworkWebSocketClosed
  {
    -- | Request identifier.
    NetworkWebSocketClosed -> Text
networkWebSocketClosedRequestId :: NetworkRequestId,
    -- | Timestamp.
    NetworkWebSocketClosed -> Double
networkWebSocketClosedTimestamp :: NetworkMonotonicTime
  }
  deriving (NetworkWebSocketClosed -> NetworkWebSocketClosed -> Bool
(NetworkWebSocketClosed -> NetworkWebSocketClosed -> Bool)
-> (NetworkWebSocketClosed -> NetworkWebSocketClosed -> Bool)
-> Eq NetworkWebSocketClosed
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkWebSocketClosed -> NetworkWebSocketClosed -> Bool
$c/= :: NetworkWebSocketClosed -> NetworkWebSocketClosed -> Bool
== :: NetworkWebSocketClosed -> NetworkWebSocketClosed -> Bool
$c== :: NetworkWebSocketClosed -> NetworkWebSocketClosed -> Bool
Eq, Int -> NetworkWebSocketClosed -> ShowS
[NetworkWebSocketClosed] -> ShowS
NetworkWebSocketClosed -> String
(Int -> NetworkWebSocketClosed -> ShowS)
-> (NetworkWebSocketClosed -> String)
-> ([NetworkWebSocketClosed] -> ShowS)
-> Show NetworkWebSocketClosed
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkWebSocketClosed] -> ShowS
$cshowList :: [NetworkWebSocketClosed] -> ShowS
show :: NetworkWebSocketClosed -> String
$cshow :: NetworkWebSocketClosed -> String
showsPrec :: Int -> NetworkWebSocketClosed -> ShowS
$cshowsPrec :: Int -> NetworkWebSocketClosed -> ShowS
Show)
instance FromJSON NetworkWebSocketClosed where
  parseJSON :: Value -> Parser NetworkWebSocketClosed
parseJSON = String
-> (Object -> Parser NetworkWebSocketClosed)
-> Value
-> Parser NetworkWebSocketClosed
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkWebSocketClosed" ((Object -> Parser NetworkWebSocketClosed)
 -> Value -> Parser NetworkWebSocketClosed)
-> (Object -> Parser NetworkWebSocketClosed)
-> Value
-> Parser NetworkWebSocketClosed
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> Double -> NetworkWebSocketClosed
NetworkWebSocketClosed
    (Text -> Double -> NetworkWebSocketClosed)
-> Parser Text -> Parser (Double -> NetworkWebSocketClosed)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"requestId"
    Parser (Double -> NetworkWebSocketClosed)
-> Parser Double -> Parser NetworkWebSocketClosed
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"timestamp"
instance Event NetworkWebSocketClosed where
  eventName :: Proxy NetworkWebSocketClosed -> String
eventName Proxy NetworkWebSocketClosed
_ = String
"Network.webSocketClosed"

-- | Type of the 'Network.webSocketCreated' event.
data NetworkWebSocketCreated = NetworkWebSocketCreated
  {
    -- | Request identifier.
    NetworkWebSocketCreated -> Text
networkWebSocketCreatedRequestId :: NetworkRequestId,
    -- | WebSocket request URL.
    NetworkWebSocketCreated -> Text
networkWebSocketCreatedUrl :: T.Text,
    -- | Request initiator.
    NetworkWebSocketCreated -> Maybe NetworkInitiator
networkWebSocketCreatedInitiator :: Maybe NetworkInitiator
  }
  deriving (NetworkWebSocketCreated -> NetworkWebSocketCreated -> Bool
(NetworkWebSocketCreated -> NetworkWebSocketCreated -> Bool)
-> (NetworkWebSocketCreated -> NetworkWebSocketCreated -> Bool)
-> Eq NetworkWebSocketCreated
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkWebSocketCreated -> NetworkWebSocketCreated -> Bool
$c/= :: NetworkWebSocketCreated -> NetworkWebSocketCreated -> Bool
== :: NetworkWebSocketCreated -> NetworkWebSocketCreated -> Bool
$c== :: NetworkWebSocketCreated -> NetworkWebSocketCreated -> Bool
Eq, Int -> NetworkWebSocketCreated -> ShowS
[NetworkWebSocketCreated] -> ShowS
NetworkWebSocketCreated -> String
(Int -> NetworkWebSocketCreated -> ShowS)
-> (NetworkWebSocketCreated -> String)
-> ([NetworkWebSocketCreated] -> ShowS)
-> Show NetworkWebSocketCreated
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkWebSocketCreated] -> ShowS
$cshowList :: [NetworkWebSocketCreated] -> ShowS
show :: NetworkWebSocketCreated -> String
$cshow :: NetworkWebSocketCreated -> String
showsPrec :: Int -> NetworkWebSocketCreated -> ShowS
$cshowsPrec :: Int -> NetworkWebSocketCreated -> ShowS
Show)
instance FromJSON NetworkWebSocketCreated where
  parseJSON :: Value -> Parser NetworkWebSocketCreated
parseJSON = String
-> (Object -> Parser NetworkWebSocketCreated)
-> Value
-> Parser NetworkWebSocketCreated
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkWebSocketCreated" ((Object -> Parser NetworkWebSocketCreated)
 -> Value -> Parser NetworkWebSocketCreated)
-> (Object -> Parser NetworkWebSocketCreated)
-> Value
-> Parser NetworkWebSocketCreated
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> Text -> Maybe NetworkInitiator -> NetworkWebSocketCreated
NetworkWebSocketCreated
    (Text -> Text -> Maybe NetworkInitiator -> NetworkWebSocketCreated)
-> Parser Text
-> Parser
     (Text -> Maybe NetworkInitiator -> NetworkWebSocketCreated)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"requestId"
    Parser (Text -> Maybe NetworkInitiator -> NetworkWebSocketCreated)
-> Parser Text
-> Parser (Maybe NetworkInitiator -> NetworkWebSocketCreated)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"url"
    Parser (Maybe NetworkInitiator -> NetworkWebSocketCreated)
-> Parser (Maybe NetworkInitiator)
-> Parser NetworkWebSocketCreated
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe NetworkInitiator)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"initiator"
instance Event NetworkWebSocketCreated where
  eventName :: Proxy NetworkWebSocketCreated -> String
eventName Proxy NetworkWebSocketCreated
_ = String
"Network.webSocketCreated"

-- | Type of the 'Network.webSocketFrameError' event.
data NetworkWebSocketFrameError = NetworkWebSocketFrameError
  {
    -- | Request identifier.
    NetworkWebSocketFrameError -> Text
networkWebSocketFrameErrorRequestId :: NetworkRequestId,
    -- | Timestamp.
    NetworkWebSocketFrameError -> Double
networkWebSocketFrameErrorTimestamp :: NetworkMonotonicTime,
    -- | WebSocket error message.
    NetworkWebSocketFrameError -> Text
networkWebSocketFrameErrorErrorMessage :: T.Text
  }
  deriving (NetworkWebSocketFrameError -> NetworkWebSocketFrameError -> Bool
(NetworkWebSocketFrameError -> NetworkWebSocketFrameError -> Bool)
-> (NetworkWebSocketFrameError
    -> NetworkWebSocketFrameError -> Bool)
-> Eq NetworkWebSocketFrameError
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkWebSocketFrameError -> NetworkWebSocketFrameError -> Bool
$c/= :: NetworkWebSocketFrameError -> NetworkWebSocketFrameError -> Bool
== :: NetworkWebSocketFrameError -> NetworkWebSocketFrameError -> Bool
$c== :: NetworkWebSocketFrameError -> NetworkWebSocketFrameError -> Bool
Eq, Int -> NetworkWebSocketFrameError -> ShowS
[NetworkWebSocketFrameError] -> ShowS
NetworkWebSocketFrameError -> String
(Int -> NetworkWebSocketFrameError -> ShowS)
-> (NetworkWebSocketFrameError -> String)
-> ([NetworkWebSocketFrameError] -> ShowS)
-> Show NetworkWebSocketFrameError
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkWebSocketFrameError] -> ShowS
$cshowList :: [NetworkWebSocketFrameError] -> ShowS
show :: NetworkWebSocketFrameError -> String
$cshow :: NetworkWebSocketFrameError -> String
showsPrec :: Int -> NetworkWebSocketFrameError -> ShowS
$cshowsPrec :: Int -> NetworkWebSocketFrameError -> ShowS
Show)
instance FromJSON NetworkWebSocketFrameError where
  parseJSON :: Value -> Parser NetworkWebSocketFrameError
parseJSON = String
-> (Object -> Parser NetworkWebSocketFrameError)
-> Value
-> Parser NetworkWebSocketFrameError
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkWebSocketFrameError" ((Object -> Parser NetworkWebSocketFrameError)
 -> Value -> Parser NetworkWebSocketFrameError)
-> (Object -> Parser NetworkWebSocketFrameError)
-> Value
-> Parser NetworkWebSocketFrameError
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> Double -> Text -> NetworkWebSocketFrameError
NetworkWebSocketFrameError
    (Text -> Double -> Text -> NetworkWebSocketFrameError)
-> Parser Text
-> Parser (Double -> Text -> NetworkWebSocketFrameError)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"requestId"
    Parser (Double -> Text -> NetworkWebSocketFrameError)
-> Parser Double -> Parser (Text -> NetworkWebSocketFrameError)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"timestamp"
    Parser (Text -> NetworkWebSocketFrameError)
-> Parser Text -> Parser NetworkWebSocketFrameError
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"errorMessage"
instance Event NetworkWebSocketFrameError where
  eventName :: Proxy NetworkWebSocketFrameError -> String
eventName Proxy NetworkWebSocketFrameError
_ = String
"Network.webSocketFrameError"

-- | Type of the 'Network.webSocketFrameReceived' event.
data NetworkWebSocketFrameReceived = NetworkWebSocketFrameReceived
  {
    -- | Request identifier.
    NetworkWebSocketFrameReceived -> Text
networkWebSocketFrameReceivedRequestId :: NetworkRequestId,
    -- | Timestamp.
    NetworkWebSocketFrameReceived -> Double
networkWebSocketFrameReceivedTimestamp :: NetworkMonotonicTime,
    -- | WebSocket response data.
    NetworkWebSocketFrameReceived -> NetworkWebSocketFrame
networkWebSocketFrameReceivedResponse :: NetworkWebSocketFrame
  }
  deriving (NetworkWebSocketFrameReceived
-> NetworkWebSocketFrameReceived -> Bool
(NetworkWebSocketFrameReceived
 -> NetworkWebSocketFrameReceived -> Bool)
-> (NetworkWebSocketFrameReceived
    -> NetworkWebSocketFrameReceived -> Bool)
-> Eq NetworkWebSocketFrameReceived
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkWebSocketFrameReceived
-> NetworkWebSocketFrameReceived -> Bool
$c/= :: NetworkWebSocketFrameReceived
-> NetworkWebSocketFrameReceived -> Bool
== :: NetworkWebSocketFrameReceived
-> NetworkWebSocketFrameReceived -> Bool
$c== :: NetworkWebSocketFrameReceived
-> NetworkWebSocketFrameReceived -> Bool
Eq, Int -> NetworkWebSocketFrameReceived -> ShowS
[NetworkWebSocketFrameReceived] -> ShowS
NetworkWebSocketFrameReceived -> String
(Int -> NetworkWebSocketFrameReceived -> ShowS)
-> (NetworkWebSocketFrameReceived -> String)
-> ([NetworkWebSocketFrameReceived] -> ShowS)
-> Show NetworkWebSocketFrameReceived
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkWebSocketFrameReceived] -> ShowS
$cshowList :: [NetworkWebSocketFrameReceived] -> ShowS
show :: NetworkWebSocketFrameReceived -> String
$cshow :: NetworkWebSocketFrameReceived -> String
showsPrec :: Int -> NetworkWebSocketFrameReceived -> ShowS
$cshowsPrec :: Int -> NetworkWebSocketFrameReceived -> ShowS
Show)
instance FromJSON NetworkWebSocketFrameReceived where
  parseJSON :: Value -> Parser NetworkWebSocketFrameReceived
parseJSON = String
-> (Object -> Parser NetworkWebSocketFrameReceived)
-> Value
-> Parser NetworkWebSocketFrameReceived
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkWebSocketFrameReceived" ((Object -> Parser NetworkWebSocketFrameReceived)
 -> Value -> Parser NetworkWebSocketFrameReceived)
-> (Object -> Parser NetworkWebSocketFrameReceived)
-> Value
-> Parser NetworkWebSocketFrameReceived
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> Double -> NetworkWebSocketFrame -> NetworkWebSocketFrameReceived
NetworkWebSocketFrameReceived
    (Text
 -> Double
 -> NetworkWebSocketFrame
 -> NetworkWebSocketFrameReceived)
-> Parser Text
-> Parser
     (Double -> NetworkWebSocketFrame -> NetworkWebSocketFrameReceived)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"requestId"
    Parser
  (Double -> NetworkWebSocketFrame -> NetworkWebSocketFrameReceived)
-> Parser Double
-> Parser (NetworkWebSocketFrame -> NetworkWebSocketFrameReceived)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"timestamp"
    Parser (NetworkWebSocketFrame -> NetworkWebSocketFrameReceived)
-> Parser NetworkWebSocketFrame
-> Parser NetworkWebSocketFrameReceived
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser NetworkWebSocketFrame
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"response"
instance Event NetworkWebSocketFrameReceived where
  eventName :: Proxy NetworkWebSocketFrameReceived -> String
eventName Proxy NetworkWebSocketFrameReceived
_ = String
"Network.webSocketFrameReceived"

-- | Type of the 'Network.webSocketFrameSent' event.
data NetworkWebSocketFrameSent = NetworkWebSocketFrameSent
  {
    -- | Request identifier.
    NetworkWebSocketFrameSent -> Text
networkWebSocketFrameSentRequestId :: NetworkRequestId,
    -- | Timestamp.
    NetworkWebSocketFrameSent -> Double
networkWebSocketFrameSentTimestamp :: NetworkMonotonicTime,
    -- | WebSocket response data.
    NetworkWebSocketFrameSent -> NetworkWebSocketFrame
networkWebSocketFrameSentResponse :: NetworkWebSocketFrame
  }
  deriving (NetworkWebSocketFrameSent -> NetworkWebSocketFrameSent -> Bool
(NetworkWebSocketFrameSent -> NetworkWebSocketFrameSent -> Bool)
-> (NetworkWebSocketFrameSent -> NetworkWebSocketFrameSent -> Bool)
-> Eq NetworkWebSocketFrameSent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkWebSocketFrameSent -> NetworkWebSocketFrameSent -> Bool
$c/= :: NetworkWebSocketFrameSent -> NetworkWebSocketFrameSent -> Bool
== :: NetworkWebSocketFrameSent -> NetworkWebSocketFrameSent -> Bool
$c== :: NetworkWebSocketFrameSent -> NetworkWebSocketFrameSent -> Bool
Eq, Int -> NetworkWebSocketFrameSent -> ShowS
[NetworkWebSocketFrameSent] -> ShowS
NetworkWebSocketFrameSent -> String
(Int -> NetworkWebSocketFrameSent -> ShowS)
-> (NetworkWebSocketFrameSent -> String)
-> ([NetworkWebSocketFrameSent] -> ShowS)
-> Show NetworkWebSocketFrameSent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkWebSocketFrameSent] -> ShowS
$cshowList :: [NetworkWebSocketFrameSent] -> ShowS
show :: NetworkWebSocketFrameSent -> String
$cshow :: NetworkWebSocketFrameSent -> String
showsPrec :: Int -> NetworkWebSocketFrameSent -> ShowS
$cshowsPrec :: Int -> NetworkWebSocketFrameSent -> ShowS
Show)
instance FromJSON NetworkWebSocketFrameSent where
  parseJSON :: Value -> Parser NetworkWebSocketFrameSent
parseJSON = String
-> (Object -> Parser NetworkWebSocketFrameSent)
-> Value
-> Parser NetworkWebSocketFrameSent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkWebSocketFrameSent" ((Object -> Parser NetworkWebSocketFrameSent)
 -> Value -> Parser NetworkWebSocketFrameSent)
-> (Object -> Parser NetworkWebSocketFrameSent)
-> Value
-> Parser NetworkWebSocketFrameSent
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> Double -> NetworkWebSocketFrame -> NetworkWebSocketFrameSent
NetworkWebSocketFrameSent
    (Text
 -> Double -> NetworkWebSocketFrame -> NetworkWebSocketFrameSent)
-> Parser Text
-> Parser
     (Double -> NetworkWebSocketFrame -> NetworkWebSocketFrameSent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"requestId"
    Parser
  (Double -> NetworkWebSocketFrame -> NetworkWebSocketFrameSent)
-> Parser Double
-> Parser (NetworkWebSocketFrame -> NetworkWebSocketFrameSent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"timestamp"
    Parser (NetworkWebSocketFrame -> NetworkWebSocketFrameSent)
-> Parser NetworkWebSocketFrame -> Parser NetworkWebSocketFrameSent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser NetworkWebSocketFrame
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"response"
instance Event NetworkWebSocketFrameSent where
  eventName :: Proxy NetworkWebSocketFrameSent -> String
eventName Proxy NetworkWebSocketFrameSent
_ = String
"Network.webSocketFrameSent"

-- | Type of the 'Network.webSocketHandshakeResponseReceived' event.
data NetworkWebSocketHandshakeResponseReceived = NetworkWebSocketHandshakeResponseReceived
  {
    -- | Request identifier.
    NetworkWebSocketHandshakeResponseReceived -> Text
networkWebSocketHandshakeResponseReceivedRequestId :: NetworkRequestId,
    -- | Timestamp.
    NetworkWebSocketHandshakeResponseReceived -> Double
networkWebSocketHandshakeResponseReceivedTimestamp :: NetworkMonotonicTime,
    -- | WebSocket response data.
    NetworkWebSocketHandshakeResponseReceived
-> NetworkWebSocketResponse
networkWebSocketHandshakeResponseReceivedResponse :: NetworkWebSocketResponse
  }
  deriving (NetworkWebSocketHandshakeResponseReceived
-> NetworkWebSocketHandshakeResponseReceived -> Bool
(NetworkWebSocketHandshakeResponseReceived
 -> NetworkWebSocketHandshakeResponseReceived -> Bool)
-> (NetworkWebSocketHandshakeResponseReceived
    -> NetworkWebSocketHandshakeResponseReceived -> Bool)
-> Eq NetworkWebSocketHandshakeResponseReceived
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkWebSocketHandshakeResponseReceived
-> NetworkWebSocketHandshakeResponseReceived -> Bool
$c/= :: NetworkWebSocketHandshakeResponseReceived
-> NetworkWebSocketHandshakeResponseReceived -> Bool
== :: NetworkWebSocketHandshakeResponseReceived
-> NetworkWebSocketHandshakeResponseReceived -> Bool
$c== :: NetworkWebSocketHandshakeResponseReceived
-> NetworkWebSocketHandshakeResponseReceived -> Bool
Eq, Int -> NetworkWebSocketHandshakeResponseReceived -> ShowS
[NetworkWebSocketHandshakeResponseReceived] -> ShowS
NetworkWebSocketHandshakeResponseReceived -> String
(Int -> NetworkWebSocketHandshakeResponseReceived -> ShowS)
-> (NetworkWebSocketHandshakeResponseReceived -> String)
-> ([NetworkWebSocketHandshakeResponseReceived] -> ShowS)
-> Show NetworkWebSocketHandshakeResponseReceived
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkWebSocketHandshakeResponseReceived] -> ShowS
$cshowList :: [NetworkWebSocketHandshakeResponseReceived] -> ShowS
show :: NetworkWebSocketHandshakeResponseReceived -> String
$cshow :: NetworkWebSocketHandshakeResponseReceived -> String
showsPrec :: Int -> NetworkWebSocketHandshakeResponseReceived -> ShowS
$cshowsPrec :: Int -> NetworkWebSocketHandshakeResponseReceived -> ShowS
Show)
instance FromJSON NetworkWebSocketHandshakeResponseReceived where
  parseJSON :: Value -> Parser NetworkWebSocketHandshakeResponseReceived
parseJSON = String
-> (Object -> Parser NetworkWebSocketHandshakeResponseReceived)
-> Value
-> Parser NetworkWebSocketHandshakeResponseReceived
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkWebSocketHandshakeResponseReceived" ((Object -> Parser NetworkWebSocketHandshakeResponseReceived)
 -> Value -> Parser NetworkWebSocketHandshakeResponseReceived)
-> (Object -> Parser NetworkWebSocketHandshakeResponseReceived)
-> Value
-> Parser NetworkWebSocketHandshakeResponseReceived
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> Double
-> NetworkWebSocketResponse
-> NetworkWebSocketHandshakeResponseReceived
NetworkWebSocketHandshakeResponseReceived
    (Text
 -> Double
 -> NetworkWebSocketResponse
 -> NetworkWebSocketHandshakeResponseReceived)
-> Parser Text
-> Parser
     (Double
      -> NetworkWebSocketResponse
      -> NetworkWebSocketHandshakeResponseReceived)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"requestId"
    Parser
  (Double
   -> NetworkWebSocketResponse
   -> NetworkWebSocketHandshakeResponseReceived)
-> Parser Double
-> Parser
     (NetworkWebSocketResponse
      -> NetworkWebSocketHandshakeResponseReceived)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"timestamp"
    Parser
  (NetworkWebSocketResponse
   -> NetworkWebSocketHandshakeResponseReceived)
-> Parser NetworkWebSocketResponse
-> Parser NetworkWebSocketHandshakeResponseReceived
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser NetworkWebSocketResponse
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"response"
instance Event NetworkWebSocketHandshakeResponseReceived where
  eventName :: Proxy NetworkWebSocketHandshakeResponseReceived -> String
eventName Proxy NetworkWebSocketHandshakeResponseReceived
_ = String
"Network.webSocketHandshakeResponseReceived"

-- | Type of the 'Network.webSocketWillSendHandshakeRequest' event.
data NetworkWebSocketWillSendHandshakeRequest = NetworkWebSocketWillSendHandshakeRequest
  {
    -- | Request identifier.
    NetworkWebSocketWillSendHandshakeRequest -> Text
networkWebSocketWillSendHandshakeRequestRequestId :: NetworkRequestId,
    -- | Timestamp.
    NetworkWebSocketWillSendHandshakeRequest -> Double
networkWebSocketWillSendHandshakeRequestTimestamp :: NetworkMonotonicTime,
    -- | UTC Timestamp.
    NetworkWebSocketWillSendHandshakeRequest -> Double
networkWebSocketWillSendHandshakeRequestWallTime :: NetworkTimeSinceEpoch,
    -- | WebSocket request data.
    NetworkWebSocketWillSendHandshakeRequest -> NetworkWebSocketRequest
networkWebSocketWillSendHandshakeRequestRequest :: NetworkWebSocketRequest
  }
  deriving (NetworkWebSocketWillSendHandshakeRequest
-> NetworkWebSocketWillSendHandshakeRequest -> Bool
(NetworkWebSocketWillSendHandshakeRequest
 -> NetworkWebSocketWillSendHandshakeRequest -> Bool)
-> (NetworkWebSocketWillSendHandshakeRequest
    -> NetworkWebSocketWillSendHandshakeRequest -> Bool)
-> Eq NetworkWebSocketWillSendHandshakeRequest
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkWebSocketWillSendHandshakeRequest
-> NetworkWebSocketWillSendHandshakeRequest -> Bool
$c/= :: NetworkWebSocketWillSendHandshakeRequest
-> NetworkWebSocketWillSendHandshakeRequest -> Bool
== :: NetworkWebSocketWillSendHandshakeRequest
-> NetworkWebSocketWillSendHandshakeRequest -> Bool
$c== :: NetworkWebSocketWillSendHandshakeRequest
-> NetworkWebSocketWillSendHandshakeRequest -> Bool
Eq, Int -> NetworkWebSocketWillSendHandshakeRequest -> ShowS
[NetworkWebSocketWillSendHandshakeRequest] -> ShowS
NetworkWebSocketWillSendHandshakeRequest -> String
(Int -> NetworkWebSocketWillSendHandshakeRequest -> ShowS)
-> (NetworkWebSocketWillSendHandshakeRequest -> String)
-> ([NetworkWebSocketWillSendHandshakeRequest] -> ShowS)
-> Show NetworkWebSocketWillSendHandshakeRequest
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkWebSocketWillSendHandshakeRequest] -> ShowS
$cshowList :: [NetworkWebSocketWillSendHandshakeRequest] -> ShowS
show :: NetworkWebSocketWillSendHandshakeRequest -> String
$cshow :: NetworkWebSocketWillSendHandshakeRequest -> String
showsPrec :: Int -> NetworkWebSocketWillSendHandshakeRequest -> ShowS
$cshowsPrec :: Int -> NetworkWebSocketWillSendHandshakeRequest -> ShowS
Show)
instance FromJSON NetworkWebSocketWillSendHandshakeRequest where
  parseJSON :: Value -> Parser NetworkWebSocketWillSendHandshakeRequest
parseJSON = String
-> (Object -> Parser NetworkWebSocketWillSendHandshakeRequest)
-> Value
-> Parser NetworkWebSocketWillSendHandshakeRequest
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkWebSocketWillSendHandshakeRequest" ((Object -> Parser NetworkWebSocketWillSendHandshakeRequest)
 -> Value -> Parser NetworkWebSocketWillSendHandshakeRequest)
-> (Object -> Parser NetworkWebSocketWillSendHandshakeRequest)
-> Value
-> Parser NetworkWebSocketWillSendHandshakeRequest
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> Double
-> Double
-> NetworkWebSocketRequest
-> NetworkWebSocketWillSendHandshakeRequest
NetworkWebSocketWillSendHandshakeRequest
    (Text
 -> Double
 -> Double
 -> NetworkWebSocketRequest
 -> NetworkWebSocketWillSendHandshakeRequest)
-> Parser Text
-> Parser
     (Double
      -> Double
      -> NetworkWebSocketRequest
      -> NetworkWebSocketWillSendHandshakeRequest)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"requestId"
    Parser
  (Double
   -> Double
   -> NetworkWebSocketRequest
   -> NetworkWebSocketWillSendHandshakeRequest)
-> Parser Double
-> Parser
     (Double
      -> NetworkWebSocketRequest
      -> NetworkWebSocketWillSendHandshakeRequest)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"timestamp"
    Parser
  (Double
   -> NetworkWebSocketRequest
   -> NetworkWebSocketWillSendHandshakeRequest)
-> Parser Double
-> Parser
     (NetworkWebSocketRequest
      -> NetworkWebSocketWillSendHandshakeRequest)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"wallTime"
    Parser
  (NetworkWebSocketRequest
   -> NetworkWebSocketWillSendHandshakeRequest)
-> Parser NetworkWebSocketRequest
-> Parser NetworkWebSocketWillSendHandshakeRequest
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser NetworkWebSocketRequest
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"request"
instance Event NetworkWebSocketWillSendHandshakeRequest where
  eventName :: Proxy NetworkWebSocketWillSendHandshakeRequest -> String
eventName Proxy NetworkWebSocketWillSendHandshakeRequest
_ = String
"Network.webSocketWillSendHandshakeRequest"

-- | Type of the 'Network.webTransportCreated' event.
data NetworkWebTransportCreated = NetworkWebTransportCreated
  {
    -- | WebTransport identifier.
    NetworkWebTransportCreated -> Text
networkWebTransportCreatedTransportId :: NetworkRequestId,
    -- | WebTransport request URL.
    NetworkWebTransportCreated -> Text
networkWebTransportCreatedUrl :: T.Text,
    -- | Timestamp.
    NetworkWebTransportCreated -> Double
networkWebTransportCreatedTimestamp :: NetworkMonotonicTime,
    -- | Request initiator.
    NetworkWebTransportCreated -> Maybe NetworkInitiator
networkWebTransportCreatedInitiator :: Maybe NetworkInitiator
  }
  deriving (NetworkWebTransportCreated -> NetworkWebTransportCreated -> Bool
(NetworkWebTransportCreated -> NetworkWebTransportCreated -> Bool)
-> (NetworkWebTransportCreated
    -> NetworkWebTransportCreated -> Bool)
-> Eq NetworkWebTransportCreated
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkWebTransportCreated -> NetworkWebTransportCreated -> Bool
$c/= :: NetworkWebTransportCreated -> NetworkWebTransportCreated -> Bool
== :: NetworkWebTransportCreated -> NetworkWebTransportCreated -> Bool
$c== :: NetworkWebTransportCreated -> NetworkWebTransportCreated -> Bool
Eq, Int -> NetworkWebTransportCreated -> ShowS
[NetworkWebTransportCreated] -> ShowS
NetworkWebTransportCreated -> String
(Int -> NetworkWebTransportCreated -> ShowS)
-> (NetworkWebTransportCreated -> String)
-> ([NetworkWebTransportCreated] -> ShowS)
-> Show NetworkWebTransportCreated
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkWebTransportCreated] -> ShowS
$cshowList :: [NetworkWebTransportCreated] -> ShowS
show :: NetworkWebTransportCreated -> String
$cshow :: NetworkWebTransportCreated -> String
showsPrec :: Int -> NetworkWebTransportCreated -> ShowS
$cshowsPrec :: Int -> NetworkWebTransportCreated -> ShowS
Show)
instance FromJSON NetworkWebTransportCreated where
  parseJSON :: Value -> Parser NetworkWebTransportCreated
parseJSON = String
-> (Object -> Parser NetworkWebTransportCreated)
-> Value
-> Parser NetworkWebTransportCreated
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkWebTransportCreated" ((Object -> Parser NetworkWebTransportCreated)
 -> Value -> Parser NetworkWebTransportCreated)
-> (Object -> Parser NetworkWebTransportCreated)
-> Value
-> Parser NetworkWebTransportCreated
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> Text
-> Double
-> Maybe NetworkInitiator
-> NetworkWebTransportCreated
NetworkWebTransportCreated
    (Text
 -> Text
 -> Double
 -> Maybe NetworkInitiator
 -> NetworkWebTransportCreated)
-> Parser Text
-> Parser
     (Text
      -> Double -> Maybe NetworkInitiator -> NetworkWebTransportCreated)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"transportId"
    Parser
  (Text
   -> Double -> Maybe NetworkInitiator -> NetworkWebTransportCreated)
-> Parser Text
-> Parser
     (Double -> Maybe NetworkInitiator -> NetworkWebTransportCreated)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"url"
    Parser
  (Double -> Maybe NetworkInitiator -> NetworkWebTransportCreated)
-> Parser Double
-> Parser (Maybe NetworkInitiator -> NetworkWebTransportCreated)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"timestamp"
    Parser (Maybe NetworkInitiator -> NetworkWebTransportCreated)
-> Parser (Maybe NetworkInitiator)
-> Parser NetworkWebTransportCreated
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe NetworkInitiator)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"initiator"
instance Event NetworkWebTransportCreated where
  eventName :: Proxy NetworkWebTransportCreated -> String
eventName Proxy NetworkWebTransportCreated
_ = String
"Network.webTransportCreated"

-- | Type of the 'Network.webTransportConnectionEstablished' event.
data NetworkWebTransportConnectionEstablished = NetworkWebTransportConnectionEstablished
  {
    -- | WebTransport identifier.
    NetworkWebTransportConnectionEstablished -> Text
networkWebTransportConnectionEstablishedTransportId :: NetworkRequestId,
    -- | Timestamp.
    NetworkWebTransportConnectionEstablished -> Double
networkWebTransportConnectionEstablishedTimestamp :: NetworkMonotonicTime
  }
  deriving (NetworkWebTransportConnectionEstablished
-> NetworkWebTransportConnectionEstablished -> Bool
(NetworkWebTransportConnectionEstablished
 -> NetworkWebTransportConnectionEstablished -> Bool)
-> (NetworkWebTransportConnectionEstablished
    -> NetworkWebTransportConnectionEstablished -> Bool)
-> Eq NetworkWebTransportConnectionEstablished
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkWebTransportConnectionEstablished
-> NetworkWebTransportConnectionEstablished -> Bool
$c/= :: NetworkWebTransportConnectionEstablished
-> NetworkWebTransportConnectionEstablished -> Bool
== :: NetworkWebTransportConnectionEstablished
-> NetworkWebTransportConnectionEstablished -> Bool
$c== :: NetworkWebTransportConnectionEstablished
-> NetworkWebTransportConnectionEstablished -> Bool
Eq, Int -> NetworkWebTransportConnectionEstablished -> ShowS
[NetworkWebTransportConnectionEstablished] -> ShowS
NetworkWebTransportConnectionEstablished -> String
(Int -> NetworkWebTransportConnectionEstablished -> ShowS)
-> (NetworkWebTransportConnectionEstablished -> String)
-> ([NetworkWebTransportConnectionEstablished] -> ShowS)
-> Show NetworkWebTransportConnectionEstablished
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkWebTransportConnectionEstablished] -> ShowS
$cshowList :: [NetworkWebTransportConnectionEstablished] -> ShowS
show :: NetworkWebTransportConnectionEstablished -> String
$cshow :: NetworkWebTransportConnectionEstablished -> String
showsPrec :: Int -> NetworkWebTransportConnectionEstablished -> ShowS
$cshowsPrec :: Int -> NetworkWebTransportConnectionEstablished -> ShowS
Show)
instance FromJSON NetworkWebTransportConnectionEstablished where
  parseJSON :: Value -> Parser NetworkWebTransportConnectionEstablished
parseJSON = String
-> (Object -> Parser NetworkWebTransportConnectionEstablished)
-> Value
-> Parser NetworkWebTransportConnectionEstablished
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkWebTransportConnectionEstablished" ((Object -> Parser NetworkWebTransportConnectionEstablished)
 -> Value -> Parser NetworkWebTransportConnectionEstablished)
-> (Object -> Parser NetworkWebTransportConnectionEstablished)
-> Value
-> Parser NetworkWebTransportConnectionEstablished
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> Double -> NetworkWebTransportConnectionEstablished
NetworkWebTransportConnectionEstablished
    (Text -> Double -> NetworkWebTransportConnectionEstablished)
-> Parser Text
-> Parser (Double -> NetworkWebTransportConnectionEstablished)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"transportId"
    Parser (Double -> NetworkWebTransportConnectionEstablished)
-> Parser Double -> Parser NetworkWebTransportConnectionEstablished
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"timestamp"
instance Event NetworkWebTransportConnectionEstablished where
  eventName :: Proxy NetworkWebTransportConnectionEstablished -> String
eventName Proxy NetworkWebTransportConnectionEstablished
_ = String
"Network.webTransportConnectionEstablished"

-- | Type of the 'Network.webTransportClosed' event.
data NetworkWebTransportClosed = NetworkWebTransportClosed
  {
    -- | WebTransport identifier.
    NetworkWebTransportClosed -> Text
networkWebTransportClosedTransportId :: NetworkRequestId,
    -- | Timestamp.
    NetworkWebTransportClosed -> Double
networkWebTransportClosedTimestamp :: NetworkMonotonicTime
  }
  deriving (NetworkWebTransportClosed -> NetworkWebTransportClosed -> Bool
(NetworkWebTransportClosed -> NetworkWebTransportClosed -> Bool)
-> (NetworkWebTransportClosed -> NetworkWebTransportClosed -> Bool)
-> Eq NetworkWebTransportClosed
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkWebTransportClosed -> NetworkWebTransportClosed -> Bool
$c/= :: NetworkWebTransportClosed -> NetworkWebTransportClosed -> Bool
== :: NetworkWebTransportClosed -> NetworkWebTransportClosed -> Bool
$c== :: NetworkWebTransportClosed -> NetworkWebTransportClosed -> Bool
Eq, Int -> NetworkWebTransportClosed -> ShowS
[NetworkWebTransportClosed] -> ShowS
NetworkWebTransportClosed -> String
(Int -> NetworkWebTransportClosed -> ShowS)
-> (NetworkWebTransportClosed -> String)
-> ([NetworkWebTransportClosed] -> ShowS)
-> Show NetworkWebTransportClosed
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkWebTransportClosed] -> ShowS
$cshowList :: [NetworkWebTransportClosed] -> ShowS
show :: NetworkWebTransportClosed -> String
$cshow :: NetworkWebTransportClosed -> String
showsPrec :: Int -> NetworkWebTransportClosed -> ShowS
$cshowsPrec :: Int -> NetworkWebTransportClosed -> ShowS
Show)
instance FromJSON NetworkWebTransportClosed where
  parseJSON :: Value -> Parser NetworkWebTransportClosed
parseJSON = String
-> (Object -> Parser NetworkWebTransportClosed)
-> Value
-> Parser NetworkWebTransportClosed
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkWebTransportClosed" ((Object -> Parser NetworkWebTransportClosed)
 -> Value -> Parser NetworkWebTransportClosed)
-> (Object -> Parser NetworkWebTransportClosed)
-> Value
-> Parser NetworkWebTransportClosed
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> Double -> NetworkWebTransportClosed
NetworkWebTransportClosed
    (Text -> Double -> NetworkWebTransportClosed)
-> Parser Text -> Parser (Double -> NetworkWebTransportClosed)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"transportId"
    Parser (Double -> NetworkWebTransportClosed)
-> Parser Double -> Parser NetworkWebTransportClosed
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"timestamp"
instance Event NetworkWebTransportClosed where
  eventName :: Proxy NetworkWebTransportClosed -> String
eventName Proxy NetworkWebTransportClosed
_ = String
"Network.webTransportClosed"

-- | Type of the 'Network.requestWillBeSentExtraInfo' event.
data NetworkRequestWillBeSentExtraInfo = NetworkRequestWillBeSentExtraInfo
  {
    -- | Request identifier. Used to match this information to an existing requestWillBeSent event.
    NetworkRequestWillBeSentExtraInfo -> Text
networkRequestWillBeSentExtraInfoRequestId :: NetworkRequestId,
    -- | A list of cookies potentially associated to the requested URL. This includes both cookies sent with
    --   the request and the ones not sent; the latter are distinguished by having blockedReason field set.
    NetworkRequestWillBeSentExtraInfo
-> [NetworkBlockedCookieWithReason]
networkRequestWillBeSentExtraInfoAssociatedCookies :: [NetworkBlockedCookieWithReason],
    -- | Raw request headers as they will be sent over the wire.
    NetworkRequestWillBeSentExtraInfo -> NetworkHeaders
networkRequestWillBeSentExtraInfoHeaders :: NetworkHeaders,
    -- | Connection timing information for the request.
    NetworkRequestWillBeSentExtraInfo -> NetworkConnectTiming
networkRequestWillBeSentExtraInfoConnectTiming :: NetworkConnectTiming,
    -- | The client security state set for the request.
    NetworkRequestWillBeSentExtraInfo
-> Maybe NetworkClientSecurityState
networkRequestWillBeSentExtraInfoClientSecurityState :: Maybe NetworkClientSecurityState
  }
  deriving (NetworkRequestWillBeSentExtraInfo
-> NetworkRequestWillBeSentExtraInfo -> Bool
(NetworkRequestWillBeSentExtraInfo
 -> NetworkRequestWillBeSentExtraInfo -> Bool)
-> (NetworkRequestWillBeSentExtraInfo
    -> NetworkRequestWillBeSentExtraInfo -> Bool)
-> Eq NetworkRequestWillBeSentExtraInfo
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkRequestWillBeSentExtraInfo
-> NetworkRequestWillBeSentExtraInfo -> Bool
$c/= :: NetworkRequestWillBeSentExtraInfo
-> NetworkRequestWillBeSentExtraInfo -> Bool
== :: NetworkRequestWillBeSentExtraInfo
-> NetworkRequestWillBeSentExtraInfo -> Bool
$c== :: NetworkRequestWillBeSentExtraInfo
-> NetworkRequestWillBeSentExtraInfo -> Bool
Eq, Int -> NetworkRequestWillBeSentExtraInfo -> ShowS
[NetworkRequestWillBeSentExtraInfo] -> ShowS
NetworkRequestWillBeSentExtraInfo -> String
(Int -> NetworkRequestWillBeSentExtraInfo -> ShowS)
-> (NetworkRequestWillBeSentExtraInfo -> String)
-> ([NetworkRequestWillBeSentExtraInfo] -> ShowS)
-> Show NetworkRequestWillBeSentExtraInfo
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkRequestWillBeSentExtraInfo] -> ShowS
$cshowList :: [NetworkRequestWillBeSentExtraInfo] -> ShowS
show :: NetworkRequestWillBeSentExtraInfo -> String
$cshow :: NetworkRequestWillBeSentExtraInfo -> String
showsPrec :: Int -> NetworkRequestWillBeSentExtraInfo -> ShowS
$cshowsPrec :: Int -> NetworkRequestWillBeSentExtraInfo -> ShowS
Show)
instance FromJSON NetworkRequestWillBeSentExtraInfo where
  parseJSON :: Value -> Parser NetworkRequestWillBeSentExtraInfo
parseJSON = String
-> (Object -> Parser NetworkRequestWillBeSentExtraInfo)
-> Value
-> Parser NetworkRequestWillBeSentExtraInfo
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkRequestWillBeSentExtraInfo" ((Object -> Parser NetworkRequestWillBeSentExtraInfo)
 -> Value -> Parser NetworkRequestWillBeSentExtraInfo)
-> (Object -> Parser NetworkRequestWillBeSentExtraInfo)
-> Value
-> Parser NetworkRequestWillBeSentExtraInfo
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> [NetworkBlockedCookieWithReason]
-> NetworkHeaders
-> NetworkConnectTiming
-> Maybe NetworkClientSecurityState
-> NetworkRequestWillBeSentExtraInfo
NetworkRequestWillBeSentExtraInfo
    (Text
 -> [NetworkBlockedCookieWithReason]
 -> NetworkHeaders
 -> NetworkConnectTiming
 -> Maybe NetworkClientSecurityState
 -> NetworkRequestWillBeSentExtraInfo)
-> Parser Text
-> Parser
     ([NetworkBlockedCookieWithReason]
      -> NetworkHeaders
      -> NetworkConnectTiming
      -> Maybe NetworkClientSecurityState
      -> NetworkRequestWillBeSentExtraInfo)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"requestId"
    Parser
  ([NetworkBlockedCookieWithReason]
   -> NetworkHeaders
   -> NetworkConnectTiming
   -> Maybe NetworkClientSecurityState
   -> NetworkRequestWillBeSentExtraInfo)
-> Parser [NetworkBlockedCookieWithReason]
-> Parser
     (NetworkHeaders
      -> NetworkConnectTiming
      -> Maybe NetworkClientSecurityState
      -> NetworkRequestWillBeSentExtraInfo)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser [NetworkBlockedCookieWithReason]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"associatedCookies"
    Parser
  (NetworkHeaders
   -> NetworkConnectTiming
   -> Maybe NetworkClientSecurityState
   -> NetworkRequestWillBeSentExtraInfo)
-> Parser NetworkHeaders
-> Parser
     (NetworkConnectTiming
      -> Maybe NetworkClientSecurityState
      -> NetworkRequestWillBeSentExtraInfo)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser NetworkHeaders
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"headers"
    Parser
  (NetworkConnectTiming
   -> Maybe NetworkClientSecurityState
   -> NetworkRequestWillBeSentExtraInfo)
-> Parser NetworkConnectTiming
-> Parser
     (Maybe NetworkClientSecurityState
      -> NetworkRequestWillBeSentExtraInfo)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser NetworkConnectTiming
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"connectTiming"
    Parser
  (Maybe NetworkClientSecurityState
   -> NetworkRequestWillBeSentExtraInfo)
-> Parser (Maybe NetworkClientSecurityState)
-> Parser NetworkRequestWillBeSentExtraInfo
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe NetworkClientSecurityState)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"clientSecurityState"
instance Event NetworkRequestWillBeSentExtraInfo where
  eventName :: Proxy NetworkRequestWillBeSentExtraInfo -> String
eventName Proxy NetworkRequestWillBeSentExtraInfo
_ = String
"Network.requestWillBeSentExtraInfo"

-- | Type of the 'Network.responseReceivedExtraInfo' event.
data NetworkResponseReceivedExtraInfo = NetworkResponseReceivedExtraInfo
  {
    -- | Request identifier. Used to match this information to another responseReceived event.
    NetworkResponseReceivedExtraInfo -> Text
networkResponseReceivedExtraInfoRequestId :: NetworkRequestId,
    -- | A list of cookies which were not stored from the response along with the corresponding
    --   reasons for blocking. The cookies here may not be valid due to syntax errors, which
    --   are represented by the invalid cookie line string instead of a proper cookie.
    NetworkResponseReceivedExtraInfo
-> [NetworkBlockedSetCookieWithReason]
networkResponseReceivedExtraInfoBlockedCookies :: [NetworkBlockedSetCookieWithReason],
    -- | Raw response headers as they were received over the wire.
    NetworkResponseReceivedExtraInfo -> NetworkHeaders
networkResponseReceivedExtraInfoHeaders :: NetworkHeaders,
    -- | The IP address space of the resource. The address space can only be determined once the transport
    --   established the connection, so we can't send it in `requestWillBeSentExtraInfo`.
    NetworkResponseReceivedExtraInfo -> NetworkIPAddressSpace
networkResponseReceivedExtraInfoResourceIPAddressSpace :: NetworkIPAddressSpace,
    -- | The status code of the response. This is useful in cases the request failed and no responseReceived
    --   event is triggered, which is the case for, e.g., CORS errors. This is also the correct status code
    --   for cached requests, where the status in responseReceived is a 200 and this will be 304.
    NetworkResponseReceivedExtraInfo -> Int
networkResponseReceivedExtraInfoStatusCode :: Int,
    -- | Raw response header text as it was received over the wire. The raw text may not always be
    --   available, such as in the case of HTTP/2 or QUIC.
    NetworkResponseReceivedExtraInfo -> Maybe Text
networkResponseReceivedExtraInfoHeadersText :: Maybe T.Text
  }
  deriving (NetworkResponseReceivedExtraInfo
-> NetworkResponseReceivedExtraInfo -> Bool
(NetworkResponseReceivedExtraInfo
 -> NetworkResponseReceivedExtraInfo -> Bool)
-> (NetworkResponseReceivedExtraInfo
    -> NetworkResponseReceivedExtraInfo -> Bool)
-> Eq NetworkResponseReceivedExtraInfo
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkResponseReceivedExtraInfo
-> NetworkResponseReceivedExtraInfo -> Bool
$c/= :: NetworkResponseReceivedExtraInfo
-> NetworkResponseReceivedExtraInfo -> Bool
== :: NetworkResponseReceivedExtraInfo
-> NetworkResponseReceivedExtraInfo -> Bool
$c== :: NetworkResponseReceivedExtraInfo
-> NetworkResponseReceivedExtraInfo -> Bool
Eq, Int -> NetworkResponseReceivedExtraInfo -> ShowS
[NetworkResponseReceivedExtraInfo] -> ShowS
NetworkResponseReceivedExtraInfo -> String
(Int -> NetworkResponseReceivedExtraInfo -> ShowS)
-> (NetworkResponseReceivedExtraInfo -> String)
-> ([NetworkResponseReceivedExtraInfo] -> ShowS)
-> Show NetworkResponseReceivedExtraInfo
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkResponseReceivedExtraInfo] -> ShowS
$cshowList :: [NetworkResponseReceivedExtraInfo] -> ShowS
show :: NetworkResponseReceivedExtraInfo -> String
$cshow :: NetworkResponseReceivedExtraInfo -> String
showsPrec :: Int -> NetworkResponseReceivedExtraInfo -> ShowS
$cshowsPrec :: Int -> NetworkResponseReceivedExtraInfo -> ShowS
Show)
instance FromJSON NetworkResponseReceivedExtraInfo where
  parseJSON :: Value -> Parser NetworkResponseReceivedExtraInfo
parseJSON = String
-> (Object -> Parser NetworkResponseReceivedExtraInfo)
-> Value
-> Parser NetworkResponseReceivedExtraInfo
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkResponseReceivedExtraInfo" ((Object -> Parser NetworkResponseReceivedExtraInfo)
 -> Value -> Parser NetworkResponseReceivedExtraInfo)
-> (Object -> Parser NetworkResponseReceivedExtraInfo)
-> Value
-> Parser NetworkResponseReceivedExtraInfo
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> [NetworkBlockedSetCookieWithReason]
-> NetworkHeaders
-> NetworkIPAddressSpace
-> Int
-> Maybe Text
-> NetworkResponseReceivedExtraInfo
NetworkResponseReceivedExtraInfo
    (Text
 -> [NetworkBlockedSetCookieWithReason]
 -> NetworkHeaders
 -> NetworkIPAddressSpace
 -> Int
 -> Maybe Text
 -> NetworkResponseReceivedExtraInfo)
-> Parser Text
-> Parser
     ([NetworkBlockedSetCookieWithReason]
      -> NetworkHeaders
      -> NetworkIPAddressSpace
      -> Int
      -> Maybe Text
      -> NetworkResponseReceivedExtraInfo)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"requestId"
    Parser
  ([NetworkBlockedSetCookieWithReason]
   -> NetworkHeaders
   -> NetworkIPAddressSpace
   -> Int
   -> Maybe Text
   -> NetworkResponseReceivedExtraInfo)
-> Parser [NetworkBlockedSetCookieWithReason]
-> Parser
     (NetworkHeaders
      -> NetworkIPAddressSpace
      -> Int
      -> Maybe Text
      -> NetworkResponseReceivedExtraInfo)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser [NetworkBlockedSetCookieWithReason]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"blockedCookies"
    Parser
  (NetworkHeaders
   -> NetworkIPAddressSpace
   -> Int
   -> Maybe Text
   -> NetworkResponseReceivedExtraInfo)
-> Parser NetworkHeaders
-> Parser
     (NetworkIPAddressSpace
      -> Int -> Maybe Text -> NetworkResponseReceivedExtraInfo)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser NetworkHeaders
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"headers"
    Parser
  (NetworkIPAddressSpace
   -> Int -> Maybe Text -> NetworkResponseReceivedExtraInfo)
-> Parser NetworkIPAddressSpace
-> Parser (Int -> Maybe Text -> NetworkResponseReceivedExtraInfo)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser NetworkIPAddressSpace
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"resourceIPAddressSpace"
    Parser (Int -> Maybe Text -> NetworkResponseReceivedExtraInfo)
-> Parser Int
-> Parser (Maybe Text -> NetworkResponseReceivedExtraInfo)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"statusCode"
    Parser (Maybe Text -> NetworkResponseReceivedExtraInfo)
-> Parser (Maybe Text) -> Parser NetworkResponseReceivedExtraInfo
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"headersText"
instance Event NetworkResponseReceivedExtraInfo where
  eventName :: Proxy NetworkResponseReceivedExtraInfo -> String
eventName Proxy NetworkResponseReceivedExtraInfo
_ = String
"Network.responseReceivedExtraInfo"

-- | Type of the 'Network.trustTokenOperationDone' event.
data NetworkTrustTokenOperationDoneStatus = NetworkTrustTokenOperationDoneStatusOk | NetworkTrustTokenOperationDoneStatusInvalidArgument | NetworkTrustTokenOperationDoneStatusFailedPrecondition | NetworkTrustTokenOperationDoneStatusResourceExhausted | NetworkTrustTokenOperationDoneStatusAlreadyExists | NetworkTrustTokenOperationDoneStatusUnavailable | NetworkTrustTokenOperationDoneStatusBadResponse | NetworkTrustTokenOperationDoneStatusInternalError | NetworkTrustTokenOperationDoneStatusUnknownError | NetworkTrustTokenOperationDoneStatusFulfilledLocally
  deriving (Eq NetworkTrustTokenOperationDoneStatus
Eq NetworkTrustTokenOperationDoneStatus
-> (NetworkTrustTokenOperationDoneStatus
    -> NetworkTrustTokenOperationDoneStatus -> Ordering)
-> (NetworkTrustTokenOperationDoneStatus
    -> NetworkTrustTokenOperationDoneStatus -> Bool)
-> (NetworkTrustTokenOperationDoneStatus
    -> NetworkTrustTokenOperationDoneStatus -> Bool)
-> (NetworkTrustTokenOperationDoneStatus
    -> NetworkTrustTokenOperationDoneStatus -> Bool)
-> (NetworkTrustTokenOperationDoneStatus
    -> NetworkTrustTokenOperationDoneStatus -> Bool)
-> (NetworkTrustTokenOperationDoneStatus
    -> NetworkTrustTokenOperationDoneStatus
    -> NetworkTrustTokenOperationDoneStatus)
-> (NetworkTrustTokenOperationDoneStatus
    -> NetworkTrustTokenOperationDoneStatus
    -> NetworkTrustTokenOperationDoneStatus)
-> Ord NetworkTrustTokenOperationDoneStatus
NetworkTrustTokenOperationDoneStatus
-> NetworkTrustTokenOperationDoneStatus -> Bool
NetworkTrustTokenOperationDoneStatus
-> NetworkTrustTokenOperationDoneStatus -> Ordering
NetworkTrustTokenOperationDoneStatus
-> NetworkTrustTokenOperationDoneStatus
-> NetworkTrustTokenOperationDoneStatus
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: NetworkTrustTokenOperationDoneStatus
-> NetworkTrustTokenOperationDoneStatus
-> NetworkTrustTokenOperationDoneStatus
$cmin :: NetworkTrustTokenOperationDoneStatus
-> NetworkTrustTokenOperationDoneStatus
-> NetworkTrustTokenOperationDoneStatus
max :: NetworkTrustTokenOperationDoneStatus
-> NetworkTrustTokenOperationDoneStatus
-> NetworkTrustTokenOperationDoneStatus
$cmax :: NetworkTrustTokenOperationDoneStatus
-> NetworkTrustTokenOperationDoneStatus
-> NetworkTrustTokenOperationDoneStatus
>= :: NetworkTrustTokenOperationDoneStatus
-> NetworkTrustTokenOperationDoneStatus -> Bool
$c>= :: NetworkTrustTokenOperationDoneStatus
-> NetworkTrustTokenOperationDoneStatus -> Bool
> :: NetworkTrustTokenOperationDoneStatus
-> NetworkTrustTokenOperationDoneStatus -> Bool
$c> :: NetworkTrustTokenOperationDoneStatus
-> NetworkTrustTokenOperationDoneStatus -> Bool
<= :: NetworkTrustTokenOperationDoneStatus
-> NetworkTrustTokenOperationDoneStatus -> Bool
$c<= :: NetworkTrustTokenOperationDoneStatus
-> NetworkTrustTokenOperationDoneStatus -> Bool
< :: NetworkTrustTokenOperationDoneStatus
-> NetworkTrustTokenOperationDoneStatus -> Bool
$c< :: NetworkTrustTokenOperationDoneStatus
-> NetworkTrustTokenOperationDoneStatus -> Bool
compare :: NetworkTrustTokenOperationDoneStatus
-> NetworkTrustTokenOperationDoneStatus -> Ordering
$ccompare :: NetworkTrustTokenOperationDoneStatus
-> NetworkTrustTokenOperationDoneStatus -> Ordering
$cp1Ord :: Eq NetworkTrustTokenOperationDoneStatus
Ord, NetworkTrustTokenOperationDoneStatus
-> NetworkTrustTokenOperationDoneStatus -> Bool
(NetworkTrustTokenOperationDoneStatus
 -> NetworkTrustTokenOperationDoneStatus -> Bool)
-> (NetworkTrustTokenOperationDoneStatus
    -> NetworkTrustTokenOperationDoneStatus -> Bool)
-> Eq NetworkTrustTokenOperationDoneStatus
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkTrustTokenOperationDoneStatus
-> NetworkTrustTokenOperationDoneStatus -> Bool
$c/= :: NetworkTrustTokenOperationDoneStatus
-> NetworkTrustTokenOperationDoneStatus -> Bool
== :: NetworkTrustTokenOperationDoneStatus
-> NetworkTrustTokenOperationDoneStatus -> Bool
$c== :: NetworkTrustTokenOperationDoneStatus
-> NetworkTrustTokenOperationDoneStatus -> Bool
Eq, Int -> NetworkTrustTokenOperationDoneStatus -> ShowS
[NetworkTrustTokenOperationDoneStatus] -> ShowS
NetworkTrustTokenOperationDoneStatus -> String
(Int -> NetworkTrustTokenOperationDoneStatus -> ShowS)
-> (NetworkTrustTokenOperationDoneStatus -> String)
-> ([NetworkTrustTokenOperationDoneStatus] -> ShowS)
-> Show NetworkTrustTokenOperationDoneStatus
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkTrustTokenOperationDoneStatus] -> ShowS
$cshowList :: [NetworkTrustTokenOperationDoneStatus] -> ShowS
show :: NetworkTrustTokenOperationDoneStatus -> String
$cshow :: NetworkTrustTokenOperationDoneStatus -> String
showsPrec :: Int -> NetworkTrustTokenOperationDoneStatus -> ShowS
$cshowsPrec :: Int -> NetworkTrustTokenOperationDoneStatus -> ShowS
Show, ReadPrec [NetworkTrustTokenOperationDoneStatus]
ReadPrec NetworkTrustTokenOperationDoneStatus
Int -> ReadS NetworkTrustTokenOperationDoneStatus
ReadS [NetworkTrustTokenOperationDoneStatus]
(Int -> ReadS NetworkTrustTokenOperationDoneStatus)
-> ReadS [NetworkTrustTokenOperationDoneStatus]
-> ReadPrec NetworkTrustTokenOperationDoneStatus
-> ReadPrec [NetworkTrustTokenOperationDoneStatus]
-> Read NetworkTrustTokenOperationDoneStatus
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [NetworkTrustTokenOperationDoneStatus]
$creadListPrec :: ReadPrec [NetworkTrustTokenOperationDoneStatus]
readPrec :: ReadPrec NetworkTrustTokenOperationDoneStatus
$creadPrec :: ReadPrec NetworkTrustTokenOperationDoneStatus
readList :: ReadS [NetworkTrustTokenOperationDoneStatus]
$creadList :: ReadS [NetworkTrustTokenOperationDoneStatus]
readsPrec :: Int -> ReadS NetworkTrustTokenOperationDoneStatus
$creadsPrec :: Int -> ReadS NetworkTrustTokenOperationDoneStatus
Read)
instance FromJSON NetworkTrustTokenOperationDoneStatus where
  parseJSON :: Value -> Parser NetworkTrustTokenOperationDoneStatus
parseJSON = String
-> (Text -> Parser NetworkTrustTokenOperationDoneStatus)
-> Value
-> Parser NetworkTrustTokenOperationDoneStatus
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"NetworkTrustTokenOperationDoneStatus" ((Text -> Parser NetworkTrustTokenOperationDoneStatus)
 -> Value -> Parser NetworkTrustTokenOperationDoneStatus)
-> (Text -> Parser NetworkTrustTokenOperationDoneStatus)
-> Value
-> Parser NetworkTrustTokenOperationDoneStatus
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"Ok" -> NetworkTrustTokenOperationDoneStatus
-> Parser NetworkTrustTokenOperationDoneStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkTrustTokenOperationDoneStatus
NetworkTrustTokenOperationDoneStatusOk
    Text
"InvalidArgument" -> NetworkTrustTokenOperationDoneStatus
-> Parser NetworkTrustTokenOperationDoneStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkTrustTokenOperationDoneStatus
NetworkTrustTokenOperationDoneStatusInvalidArgument
    Text
"FailedPrecondition" -> NetworkTrustTokenOperationDoneStatus
-> Parser NetworkTrustTokenOperationDoneStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkTrustTokenOperationDoneStatus
NetworkTrustTokenOperationDoneStatusFailedPrecondition
    Text
"ResourceExhausted" -> NetworkTrustTokenOperationDoneStatus
-> Parser NetworkTrustTokenOperationDoneStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkTrustTokenOperationDoneStatus
NetworkTrustTokenOperationDoneStatusResourceExhausted
    Text
"AlreadyExists" -> NetworkTrustTokenOperationDoneStatus
-> Parser NetworkTrustTokenOperationDoneStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkTrustTokenOperationDoneStatus
NetworkTrustTokenOperationDoneStatusAlreadyExists
    Text
"Unavailable" -> NetworkTrustTokenOperationDoneStatus
-> Parser NetworkTrustTokenOperationDoneStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkTrustTokenOperationDoneStatus
NetworkTrustTokenOperationDoneStatusUnavailable
    Text
"BadResponse" -> NetworkTrustTokenOperationDoneStatus
-> Parser NetworkTrustTokenOperationDoneStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkTrustTokenOperationDoneStatus
NetworkTrustTokenOperationDoneStatusBadResponse
    Text
"InternalError" -> NetworkTrustTokenOperationDoneStatus
-> Parser NetworkTrustTokenOperationDoneStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkTrustTokenOperationDoneStatus
NetworkTrustTokenOperationDoneStatusInternalError
    Text
"UnknownError" -> NetworkTrustTokenOperationDoneStatus
-> Parser NetworkTrustTokenOperationDoneStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkTrustTokenOperationDoneStatus
NetworkTrustTokenOperationDoneStatusUnknownError
    Text
"FulfilledLocally" -> NetworkTrustTokenOperationDoneStatus
-> Parser NetworkTrustTokenOperationDoneStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure NetworkTrustTokenOperationDoneStatus
NetworkTrustTokenOperationDoneStatusFulfilledLocally
    Text
"_" -> String -> Parser NetworkTrustTokenOperationDoneStatus
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse NetworkTrustTokenOperationDoneStatus"
instance ToJSON NetworkTrustTokenOperationDoneStatus where
  toJSON :: NetworkTrustTokenOperationDoneStatus -> Value
toJSON NetworkTrustTokenOperationDoneStatus
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case NetworkTrustTokenOperationDoneStatus
v of
    NetworkTrustTokenOperationDoneStatus
NetworkTrustTokenOperationDoneStatusOk -> Text
"Ok"
    NetworkTrustTokenOperationDoneStatus
NetworkTrustTokenOperationDoneStatusInvalidArgument -> Text
"InvalidArgument"
    NetworkTrustTokenOperationDoneStatus
NetworkTrustTokenOperationDoneStatusFailedPrecondition -> Text
"FailedPrecondition"
    NetworkTrustTokenOperationDoneStatus
NetworkTrustTokenOperationDoneStatusResourceExhausted -> Text
"ResourceExhausted"
    NetworkTrustTokenOperationDoneStatus
NetworkTrustTokenOperationDoneStatusAlreadyExists -> Text
"AlreadyExists"
    NetworkTrustTokenOperationDoneStatus
NetworkTrustTokenOperationDoneStatusUnavailable -> Text
"Unavailable"
    NetworkTrustTokenOperationDoneStatus
NetworkTrustTokenOperationDoneStatusBadResponse -> Text
"BadResponse"
    NetworkTrustTokenOperationDoneStatus
NetworkTrustTokenOperationDoneStatusInternalError -> Text
"InternalError"
    NetworkTrustTokenOperationDoneStatus
NetworkTrustTokenOperationDoneStatusUnknownError -> Text
"UnknownError"
    NetworkTrustTokenOperationDoneStatus
NetworkTrustTokenOperationDoneStatusFulfilledLocally -> Text
"FulfilledLocally"
data NetworkTrustTokenOperationDone = NetworkTrustTokenOperationDone
  {
    -- | Detailed success or error status of the operation.
    --   'AlreadyExists' also signifies a successful operation, as the result
    --   of the operation already exists und thus, the operation was abort
    --   preemptively (e.g. a cache hit).
    NetworkTrustTokenOperationDone
-> NetworkTrustTokenOperationDoneStatus
networkTrustTokenOperationDoneStatus :: NetworkTrustTokenOperationDoneStatus,
    NetworkTrustTokenOperationDone -> NetworkTrustTokenOperationType
networkTrustTokenOperationDoneType :: NetworkTrustTokenOperationType,
    NetworkTrustTokenOperationDone -> Text
networkTrustTokenOperationDoneRequestId :: NetworkRequestId,
    -- | Top level origin. The context in which the operation was attempted.
    NetworkTrustTokenOperationDone -> Maybe Text
networkTrustTokenOperationDoneTopLevelOrigin :: Maybe T.Text,
    -- | Origin of the issuer in case of a "Issuance" or "Redemption" operation.
    NetworkTrustTokenOperationDone -> Maybe Text
networkTrustTokenOperationDoneIssuerOrigin :: Maybe T.Text,
    -- | The number of obtained Trust Tokens on a successful "Issuance" operation.
    NetworkTrustTokenOperationDone -> Maybe Int
networkTrustTokenOperationDoneIssuedTokenCount :: Maybe Int
  }
  deriving (NetworkTrustTokenOperationDone
-> NetworkTrustTokenOperationDone -> Bool
(NetworkTrustTokenOperationDone
 -> NetworkTrustTokenOperationDone -> Bool)
-> (NetworkTrustTokenOperationDone
    -> NetworkTrustTokenOperationDone -> Bool)
-> Eq NetworkTrustTokenOperationDone
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkTrustTokenOperationDone
-> NetworkTrustTokenOperationDone -> Bool
$c/= :: NetworkTrustTokenOperationDone
-> NetworkTrustTokenOperationDone -> Bool
== :: NetworkTrustTokenOperationDone
-> NetworkTrustTokenOperationDone -> Bool
$c== :: NetworkTrustTokenOperationDone
-> NetworkTrustTokenOperationDone -> Bool
Eq, Int -> NetworkTrustTokenOperationDone -> ShowS
[NetworkTrustTokenOperationDone] -> ShowS
NetworkTrustTokenOperationDone -> String
(Int -> NetworkTrustTokenOperationDone -> ShowS)
-> (NetworkTrustTokenOperationDone -> String)
-> ([NetworkTrustTokenOperationDone] -> ShowS)
-> Show NetworkTrustTokenOperationDone
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkTrustTokenOperationDone] -> ShowS
$cshowList :: [NetworkTrustTokenOperationDone] -> ShowS
show :: NetworkTrustTokenOperationDone -> String
$cshow :: NetworkTrustTokenOperationDone -> String
showsPrec :: Int -> NetworkTrustTokenOperationDone -> ShowS
$cshowsPrec :: Int -> NetworkTrustTokenOperationDone -> ShowS
Show)
instance FromJSON NetworkTrustTokenOperationDone where
  parseJSON :: Value -> Parser NetworkTrustTokenOperationDone
parseJSON = String
-> (Object -> Parser NetworkTrustTokenOperationDone)
-> Value
-> Parser NetworkTrustTokenOperationDone
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkTrustTokenOperationDone" ((Object -> Parser NetworkTrustTokenOperationDone)
 -> Value -> Parser NetworkTrustTokenOperationDone)
-> (Object -> Parser NetworkTrustTokenOperationDone)
-> Value
-> Parser NetworkTrustTokenOperationDone
forall a b. (a -> b) -> a -> b
$ \Object
o -> NetworkTrustTokenOperationDoneStatus
-> NetworkTrustTokenOperationType
-> Text
-> Maybe Text
-> Maybe Text
-> Maybe Int
-> NetworkTrustTokenOperationDone
NetworkTrustTokenOperationDone
    (NetworkTrustTokenOperationDoneStatus
 -> NetworkTrustTokenOperationType
 -> Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Int
 -> NetworkTrustTokenOperationDone)
-> Parser NetworkTrustTokenOperationDoneStatus
-> Parser
     (NetworkTrustTokenOperationType
      -> Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Int
      -> NetworkTrustTokenOperationDone)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser NetworkTrustTokenOperationDoneStatus
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"status"
    Parser
  (NetworkTrustTokenOperationType
   -> Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Int
   -> NetworkTrustTokenOperationDone)
-> Parser NetworkTrustTokenOperationType
-> Parser
     (Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Int
      -> NetworkTrustTokenOperationDone)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser NetworkTrustTokenOperationType
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"type"
    Parser
  (Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Int
   -> NetworkTrustTokenOperationDone)
-> Parser Text
-> Parser
     (Maybe Text
      -> Maybe Text -> Maybe Int -> NetworkTrustTokenOperationDone)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"requestId"
    Parser
  (Maybe Text
   -> Maybe Text -> Maybe Int -> NetworkTrustTokenOperationDone)
-> Parser (Maybe Text)
-> Parser
     (Maybe Text -> Maybe Int -> NetworkTrustTokenOperationDone)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"topLevelOrigin"
    Parser (Maybe Text -> Maybe Int -> NetworkTrustTokenOperationDone)
-> Parser (Maybe Text)
-> Parser (Maybe Int -> NetworkTrustTokenOperationDone)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"issuerOrigin"
    Parser (Maybe Int -> NetworkTrustTokenOperationDone)
-> Parser (Maybe Int) -> Parser NetworkTrustTokenOperationDone
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Int)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"issuedTokenCount"
instance Event NetworkTrustTokenOperationDone where
  eventName :: Proxy NetworkTrustTokenOperationDone -> String
eventName Proxy NetworkTrustTokenOperationDone
_ = String
"Network.trustTokenOperationDone"

-- | Type of the 'Network.subresourceWebBundleMetadataReceived' event.
data NetworkSubresourceWebBundleMetadataReceived = NetworkSubresourceWebBundleMetadataReceived
  {
    -- | Request identifier. Used to match this information to another event.
    NetworkSubresourceWebBundleMetadataReceived -> Text
networkSubresourceWebBundleMetadataReceivedRequestId :: NetworkRequestId,
    -- | A list of URLs of resources in the subresource Web Bundle.
    NetworkSubresourceWebBundleMetadataReceived -> [Text]
networkSubresourceWebBundleMetadataReceivedUrls :: [T.Text]
  }
  deriving (NetworkSubresourceWebBundleMetadataReceived
-> NetworkSubresourceWebBundleMetadataReceived -> Bool
(NetworkSubresourceWebBundleMetadataReceived
 -> NetworkSubresourceWebBundleMetadataReceived -> Bool)
-> (NetworkSubresourceWebBundleMetadataReceived
    -> NetworkSubresourceWebBundleMetadataReceived -> Bool)
-> Eq NetworkSubresourceWebBundleMetadataReceived
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkSubresourceWebBundleMetadataReceived
-> NetworkSubresourceWebBundleMetadataReceived -> Bool
$c/= :: NetworkSubresourceWebBundleMetadataReceived
-> NetworkSubresourceWebBundleMetadataReceived -> Bool
== :: NetworkSubresourceWebBundleMetadataReceived
-> NetworkSubresourceWebBundleMetadataReceived -> Bool
$c== :: NetworkSubresourceWebBundleMetadataReceived
-> NetworkSubresourceWebBundleMetadataReceived -> Bool
Eq, Int -> NetworkSubresourceWebBundleMetadataReceived -> ShowS
[NetworkSubresourceWebBundleMetadataReceived] -> ShowS
NetworkSubresourceWebBundleMetadataReceived -> String
(Int -> NetworkSubresourceWebBundleMetadataReceived -> ShowS)
-> (NetworkSubresourceWebBundleMetadataReceived -> String)
-> ([NetworkSubresourceWebBundleMetadataReceived] -> ShowS)
-> Show NetworkSubresourceWebBundleMetadataReceived
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkSubresourceWebBundleMetadataReceived] -> ShowS
$cshowList :: [NetworkSubresourceWebBundleMetadataReceived] -> ShowS
show :: NetworkSubresourceWebBundleMetadataReceived -> String
$cshow :: NetworkSubresourceWebBundleMetadataReceived -> String
showsPrec :: Int -> NetworkSubresourceWebBundleMetadataReceived -> ShowS
$cshowsPrec :: Int -> NetworkSubresourceWebBundleMetadataReceived -> ShowS
Show)
instance FromJSON NetworkSubresourceWebBundleMetadataReceived where
  parseJSON :: Value -> Parser NetworkSubresourceWebBundleMetadataReceived
parseJSON = String
-> (Object -> Parser NetworkSubresourceWebBundleMetadataReceived)
-> Value
-> Parser NetworkSubresourceWebBundleMetadataReceived
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkSubresourceWebBundleMetadataReceived" ((Object -> Parser NetworkSubresourceWebBundleMetadataReceived)
 -> Value -> Parser NetworkSubresourceWebBundleMetadataReceived)
-> (Object -> Parser NetworkSubresourceWebBundleMetadataReceived)
-> Value
-> Parser NetworkSubresourceWebBundleMetadataReceived
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> [Text] -> NetworkSubresourceWebBundleMetadataReceived
NetworkSubresourceWebBundleMetadataReceived
    (Text -> [Text] -> NetworkSubresourceWebBundleMetadataReceived)
-> Parser Text
-> Parser ([Text] -> NetworkSubresourceWebBundleMetadataReceived)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"requestId"
    Parser ([Text] -> NetworkSubresourceWebBundleMetadataReceived)
-> Parser [Text]
-> Parser NetworkSubresourceWebBundleMetadataReceived
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser [Text]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"urls"
instance Event NetworkSubresourceWebBundleMetadataReceived where
  eventName :: Proxy NetworkSubresourceWebBundleMetadataReceived -> String
eventName Proxy NetworkSubresourceWebBundleMetadataReceived
_ = String
"Network.subresourceWebBundleMetadataReceived"

-- | Type of the 'Network.subresourceWebBundleMetadataError' event.
data NetworkSubresourceWebBundleMetadataError = NetworkSubresourceWebBundleMetadataError
  {
    -- | Request identifier. Used to match this information to another event.
    NetworkSubresourceWebBundleMetadataError -> Text
networkSubresourceWebBundleMetadataErrorRequestId :: NetworkRequestId,
    -- | Error message
    NetworkSubresourceWebBundleMetadataError -> Text
networkSubresourceWebBundleMetadataErrorErrorMessage :: T.Text
  }
  deriving (NetworkSubresourceWebBundleMetadataError
-> NetworkSubresourceWebBundleMetadataError -> Bool
(NetworkSubresourceWebBundleMetadataError
 -> NetworkSubresourceWebBundleMetadataError -> Bool)
-> (NetworkSubresourceWebBundleMetadataError
    -> NetworkSubresourceWebBundleMetadataError -> Bool)
-> Eq NetworkSubresourceWebBundleMetadataError
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkSubresourceWebBundleMetadataError
-> NetworkSubresourceWebBundleMetadataError -> Bool
$c/= :: NetworkSubresourceWebBundleMetadataError
-> NetworkSubresourceWebBundleMetadataError -> Bool
== :: NetworkSubresourceWebBundleMetadataError
-> NetworkSubresourceWebBundleMetadataError -> Bool
$c== :: NetworkSubresourceWebBundleMetadataError
-> NetworkSubresourceWebBundleMetadataError -> Bool
Eq, Int -> NetworkSubresourceWebBundleMetadataError -> ShowS
[NetworkSubresourceWebBundleMetadataError] -> ShowS
NetworkSubresourceWebBundleMetadataError -> String
(Int -> NetworkSubresourceWebBundleMetadataError -> ShowS)
-> (NetworkSubresourceWebBundleMetadataError -> String)
-> ([NetworkSubresourceWebBundleMetadataError] -> ShowS)
-> Show NetworkSubresourceWebBundleMetadataError
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkSubresourceWebBundleMetadataError] -> ShowS
$cshowList :: [NetworkSubresourceWebBundleMetadataError] -> ShowS
show :: NetworkSubresourceWebBundleMetadataError -> String
$cshow :: NetworkSubresourceWebBundleMetadataError -> String
showsPrec :: Int -> NetworkSubresourceWebBundleMetadataError -> ShowS
$cshowsPrec :: Int -> NetworkSubresourceWebBundleMetadataError -> ShowS
Show)
instance FromJSON NetworkSubresourceWebBundleMetadataError where
  parseJSON :: Value -> Parser NetworkSubresourceWebBundleMetadataError
parseJSON = String
-> (Object -> Parser NetworkSubresourceWebBundleMetadataError)
-> Value
-> Parser NetworkSubresourceWebBundleMetadataError
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkSubresourceWebBundleMetadataError" ((Object -> Parser NetworkSubresourceWebBundleMetadataError)
 -> Value -> Parser NetworkSubresourceWebBundleMetadataError)
-> (Object -> Parser NetworkSubresourceWebBundleMetadataError)
-> Value
-> Parser NetworkSubresourceWebBundleMetadataError
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> Text -> NetworkSubresourceWebBundleMetadataError
NetworkSubresourceWebBundleMetadataError
    (Text -> Text -> NetworkSubresourceWebBundleMetadataError)
-> Parser Text
-> Parser (Text -> NetworkSubresourceWebBundleMetadataError)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"requestId"
    Parser (Text -> NetworkSubresourceWebBundleMetadataError)
-> Parser Text -> Parser NetworkSubresourceWebBundleMetadataError
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"errorMessage"
instance Event NetworkSubresourceWebBundleMetadataError where
  eventName :: Proxy NetworkSubresourceWebBundleMetadataError -> String
eventName Proxy NetworkSubresourceWebBundleMetadataError
_ = String
"Network.subresourceWebBundleMetadataError"

-- | Type of the 'Network.subresourceWebBundleInnerResponseParsed' event.
data NetworkSubresourceWebBundleInnerResponseParsed = NetworkSubresourceWebBundleInnerResponseParsed
  {
    -- | Request identifier of the subresource request
    NetworkSubresourceWebBundleInnerResponseParsed -> Text
networkSubresourceWebBundleInnerResponseParsedInnerRequestId :: NetworkRequestId,
    -- | URL of the subresource resource.
    NetworkSubresourceWebBundleInnerResponseParsed -> Text
networkSubresourceWebBundleInnerResponseParsedInnerRequestURL :: T.Text,
    -- | Bundle request identifier. Used to match this information to another event.
    --   This made be absent in case when the instrumentation was enabled only
    --   after webbundle was parsed.
    NetworkSubresourceWebBundleInnerResponseParsed -> Maybe Text
networkSubresourceWebBundleInnerResponseParsedBundleRequestId :: Maybe NetworkRequestId
  }
  deriving (NetworkSubresourceWebBundleInnerResponseParsed
-> NetworkSubresourceWebBundleInnerResponseParsed -> Bool
(NetworkSubresourceWebBundleInnerResponseParsed
 -> NetworkSubresourceWebBundleInnerResponseParsed -> Bool)
-> (NetworkSubresourceWebBundleInnerResponseParsed
    -> NetworkSubresourceWebBundleInnerResponseParsed -> Bool)
-> Eq NetworkSubresourceWebBundleInnerResponseParsed
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkSubresourceWebBundleInnerResponseParsed
-> NetworkSubresourceWebBundleInnerResponseParsed -> Bool
$c/= :: NetworkSubresourceWebBundleInnerResponseParsed
-> NetworkSubresourceWebBundleInnerResponseParsed -> Bool
== :: NetworkSubresourceWebBundleInnerResponseParsed
-> NetworkSubresourceWebBundleInnerResponseParsed -> Bool
$c== :: NetworkSubresourceWebBundleInnerResponseParsed
-> NetworkSubresourceWebBundleInnerResponseParsed -> Bool
Eq, Int -> NetworkSubresourceWebBundleInnerResponseParsed -> ShowS
[NetworkSubresourceWebBundleInnerResponseParsed] -> ShowS
NetworkSubresourceWebBundleInnerResponseParsed -> String
(Int -> NetworkSubresourceWebBundleInnerResponseParsed -> ShowS)
-> (NetworkSubresourceWebBundleInnerResponseParsed -> String)
-> ([NetworkSubresourceWebBundleInnerResponseParsed] -> ShowS)
-> Show NetworkSubresourceWebBundleInnerResponseParsed
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkSubresourceWebBundleInnerResponseParsed] -> ShowS
$cshowList :: [NetworkSubresourceWebBundleInnerResponseParsed] -> ShowS
show :: NetworkSubresourceWebBundleInnerResponseParsed -> String
$cshow :: NetworkSubresourceWebBundleInnerResponseParsed -> String
showsPrec :: Int -> NetworkSubresourceWebBundleInnerResponseParsed -> ShowS
$cshowsPrec :: Int -> NetworkSubresourceWebBundleInnerResponseParsed -> ShowS
Show)
instance FromJSON NetworkSubresourceWebBundleInnerResponseParsed where
  parseJSON :: Value -> Parser NetworkSubresourceWebBundleInnerResponseParsed
parseJSON = String
-> (Object
    -> Parser NetworkSubresourceWebBundleInnerResponseParsed)
-> Value
-> Parser NetworkSubresourceWebBundleInnerResponseParsed
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkSubresourceWebBundleInnerResponseParsed" ((Object -> Parser NetworkSubresourceWebBundleInnerResponseParsed)
 -> Value -> Parser NetworkSubresourceWebBundleInnerResponseParsed)
-> (Object
    -> Parser NetworkSubresourceWebBundleInnerResponseParsed)
-> Value
-> Parser NetworkSubresourceWebBundleInnerResponseParsed
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> Text
-> Maybe Text
-> NetworkSubresourceWebBundleInnerResponseParsed
NetworkSubresourceWebBundleInnerResponseParsed
    (Text
 -> Text
 -> Maybe Text
 -> NetworkSubresourceWebBundleInnerResponseParsed)
-> Parser Text
-> Parser
     (Text
      -> Maybe Text -> NetworkSubresourceWebBundleInnerResponseParsed)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"innerRequestId"
    Parser
  (Text
   -> Maybe Text -> NetworkSubresourceWebBundleInnerResponseParsed)
-> Parser Text
-> Parser
     (Maybe Text -> NetworkSubresourceWebBundleInnerResponseParsed)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"innerRequestURL"
    Parser
  (Maybe Text -> NetworkSubresourceWebBundleInnerResponseParsed)
-> Parser (Maybe Text)
-> Parser NetworkSubresourceWebBundleInnerResponseParsed
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"bundleRequestId"
instance Event NetworkSubresourceWebBundleInnerResponseParsed where
  eventName :: Proxy NetworkSubresourceWebBundleInnerResponseParsed -> String
eventName Proxy NetworkSubresourceWebBundleInnerResponseParsed
_ = String
"Network.subresourceWebBundleInnerResponseParsed"

-- | Type of the 'Network.subresourceWebBundleInnerResponseError' event.
data NetworkSubresourceWebBundleInnerResponseError = NetworkSubresourceWebBundleInnerResponseError
  {
    -- | Request identifier of the subresource request
    NetworkSubresourceWebBundleInnerResponseError -> Text
networkSubresourceWebBundleInnerResponseErrorInnerRequestId :: NetworkRequestId,
    -- | URL of the subresource resource.
    NetworkSubresourceWebBundleInnerResponseError -> Text
networkSubresourceWebBundleInnerResponseErrorInnerRequestURL :: T.Text,
    -- | Error message
    NetworkSubresourceWebBundleInnerResponseError -> Text
networkSubresourceWebBundleInnerResponseErrorErrorMessage :: T.Text,
    -- | Bundle request identifier. Used to match this information to another event.
    --   This made be absent in case when the instrumentation was enabled only
    --   after webbundle was parsed.
    NetworkSubresourceWebBundleInnerResponseError -> Maybe Text
networkSubresourceWebBundleInnerResponseErrorBundleRequestId :: Maybe NetworkRequestId
  }
  deriving (NetworkSubresourceWebBundleInnerResponseError
-> NetworkSubresourceWebBundleInnerResponseError -> Bool
(NetworkSubresourceWebBundleInnerResponseError
 -> NetworkSubresourceWebBundleInnerResponseError -> Bool)
-> (NetworkSubresourceWebBundleInnerResponseError
    -> NetworkSubresourceWebBundleInnerResponseError -> Bool)
-> Eq NetworkSubresourceWebBundleInnerResponseError
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkSubresourceWebBundleInnerResponseError
-> NetworkSubresourceWebBundleInnerResponseError -> Bool
$c/= :: NetworkSubresourceWebBundleInnerResponseError
-> NetworkSubresourceWebBundleInnerResponseError -> Bool
== :: NetworkSubresourceWebBundleInnerResponseError
-> NetworkSubresourceWebBundleInnerResponseError -> Bool
$c== :: NetworkSubresourceWebBundleInnerResponseError
-> NetworkSubresourceWebBundleInnerResponseError -> Bool
Eq, Int -> NetworkSubresourceWebBundleInnerResponseError -> ShowS
[NetworkSubresourceWebBundleInnerResponseError] -> ShowS
NetworkSubresourceWebBundleInnerResponseError -> String
(Int -> NetworkSubresourceWebBundleInnerResponseError -> ShowS)
-> (NetworkSubresourceWebBundleInnerResponseError -> String)
-> ([NetworkSubresourceWebBundleInnerResponseError] -> ShowS)
-> Show NetworkSubresourceWebBundleInnerResponseError
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkSubresourceWebBundleInnerResponseError] -> ShowS
$cshowList :: [NetworkSubresourceWebBundleInnerResponseError] -> ShowS
show :: NetworkSubresourceWebBundleInnerResponseError -> String
$cshow :: NetworkSubresourceWebBundleInnerResponseError -> String
showsPrec :: Int -> NetworkSubresourceWebBundleInnerResponseError -> ShowS
$cshowsPrec :: Int -> NetworkSubresourceWebBundleInnerResponseError -> ShowS
Show)
instance FromJSON NetworkSubresourceWebBundleInnerResponseError where
  parseJSON :: Value -> Parser NetworkSubresourceWebBundleInnerResponseError
parseJSON = String
-> (Object -> Parser NetworkSubresourceWebBundleInnerResponseError)
-> Value
-> Parser NetworkSubresourceWebBundleInnerResponseError
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkSubresourceWebBundleInnerResponseError" ((Object -> Parser NetworkSubresourceWebBundleInnerResponseError)
 -> Value -> Parser NetworkSubresourceWebBundleInnerResponseError)
-> (Object -> Parser NetworkSubresourceWebBundleInnerResponseError)
-> Value
-> Parser NetworkSubresourceWebBundleInnerResponseError
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> Text
-> Text
-> Maybe Text
-> NetworkSubresourceWebBundleInnerResponseError
NetworkSubresourceWebBundleInnerResponseError
    (Text
 -> Text
 -> Text
 -> Maybe Text
 -> NetworkSubresourceWebBundleInnerResponseError)
-> Parser Text
-> Parser
     (Text
      -> Text
      -> Maybe Text
      -> NetworkSubresourceWebBundleInnerResponseError)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"innerRequestId"
    Parser
  (Text
   -> Text
   -> Maybe Text
   -> NetworkSubresourceWebBundleInnerResponseError)
-> Parser Text
-> Parser
     (Text
      -> Maybe Text -> NetworkSubresourceWebBundleInnerResponseError)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"innerRequestURL"
    Parser
  (Text
   -> Maybe Text -> NetworkSubresourceWebBundleInnerResponseError)
-> Parser Text
-> Parser
     (Maybe Text -> NetworkSubresourceWebBundleInnerResponseError)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"errorMessage"
    Parser
  (Maybe Text -> NetworkSubresourceWebBundleInnerResponseError)
-> Parser (Maybe Text)
-> Parser NetworkSubresourceWebBundleInnerResponseError
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"bundleRequestId"
instance Event NetworkSubresourceWebBundleInnerResponseError where
  eventName :: Proxy NetworkSubresourceWebBundleInnerResponseError -> String
eventName Proxy NetworkSubresourceWebBundleInnerResponseError
_ = String
"Network.subresourceWebBundleInnerResponseError"

-- | Type of the 'Network.reportingApiReportAdded' event.
data NetworkReportingApiReportAdded = NetworkReportingApiReportAdded
  {
    NetworkReportingApiReportAdded -> NetworkReportingApiReport
networkReportingApiReportAddedReport :: NetworkReportingApiReport
  }
  deriving (NetworkReportingApiReportAdded
-> NetworkReportingApiReportAdded -> Bool
(NetworkReportingApiReportAdded
 -> NetworkReportingApiReportAdded -> Bool)
-> (NetworkReportingApiReportAdded
    -> NetworkReportingApiReportAdded -> Bool)
-> Eq NetworkReportingApiReportAdded
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkReportingApiReportAdded
-> NetworkReportingApiReportAdded -> Bool
$c/= :: NetworkReportingApiReportAdded
-> NetworkReportingApiReportAdded -> Bool
== :: NetworkReportingApiReportAdded
-> NetworkReportingApiReportAdded -> Bool
$c== :: NetworkReportingApiReportAdded
-> NetworkReportingApiReportAdded -> Bool
Eq, Int -> NetworkReportingApiReportAdded -> ShowS
[NetworkReportingApiReportAdded] -> ShowS
NetworkReportingApiReportAdded -> String
(Int -> NetworkReportingApiReportAdded -> ShowS)
-> (NetworkReportingApiReportAdded -> String)
-> ([NetworkReportingApiReportAdded] -> ShowS)
-> Show NetworkReportingApiReportAdded
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkReportingApiReportAdded] -> ShowS
$cshowList :: [NetworkReportingApiReportAdded] -> ShowS
show :: NetworkReportingApiReportAdded -> String
$cshow :: NetworkReportingApiReportAdded -> String
showsPrec :: Int -> NetworkReportingApiReportAdded -> ShowS
$cshowsPrec :: Int -> NetworkReportingApiReportAdded -> ShowS
Show)
instance FromJSON NetworkReportingApiReportAdded where
  parseJSON :: Value -> Parser NetworkReportingApiReportAdded
parseJSON = String
-> (Object -> Parser NetworkReportingApiReportAdded)
-> Value
-> Parser NetworkReportingApiReportAdded
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkReportingApiReportAdded" ((Object -> Parser NetworkReportingApiReportAdded)
 -> Value -> Parser NetworkReportingApiReportAdded)
-> (Object -> Parser NetworkReportingApiReportAdded)
-> Value
-> Parser NetworkReportingApiReportAdded
forall a b. (a -> b) -> a -> b
$ \Object
o -> NetworkReportingApiReport -> NetworkReportingApiReportAdded
NetworkReportingApiReportAdded
    (NetworkReportingApiReport -> NetworkReportingApiReportAdded)
-> Parser NetworkReportingApiReport
-> Parser NetworkReportingApiReportAdded
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser NetworkReportingApiReport
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"report"
instance Event NetworkReportingApiReportAdded where
  eventName :: Proxy NetworkReportingApiReportAdded -> String
eventName Proxy NetworkReportingApiReportAdded
_ = String
"Network.reportingApiReportAdded"

-- | Type of the 'Network.reportingApiReportUpdated' event.
data NetworkReportingApiReportUpdated = NetworkReportingApiReportUpdated
  {
    NetworkReportingApiReportUpdated -> NetworkReportingApiReport
networkReportingApiReportUpdatedReport :: NetworkReportingApiReport
  }
  deriving (NetworkReportingApiReportUpdated
-> NetworkReportingApiReportUpdated -> Bool
(NetworkReportingApiReportUpdated
 -> NetworkReportingApiReportUpdated -> Bool)
-> (NetworkReportingApiReportUpdated
    -> NetworkReportingApiReportUpdated -> Bool)
-> Eq NetworkReportingApiReportUpdated
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkReportingApiReportUpdated
-> NetworkReportingApiReportUpdated -> Bool
$c/= :: NetworkReportingApiReportUpdated
-> NetworkReportingApiReportUpdated -> Bool
== :: NetworkReportingApiReportUpdated
-> NetworkReportingApiReportUpdated -> Bool
$c== :: NetworkReportingApiReportUpdated
-> NetworkReportingApiReportUpdated -> Bool
Eq, Int -> NetworkReportingApiReportUpdated -> ShowS
[NetworkReportingApiReportUpdated] -> ShowS
NetworkReportingApiReportUpdated -> String
(Int -> NetworkReportingApiReportUpdated -> ShowS)
-> (NetworkReportingApiReportUpdated -> String)
-> ([NetworkReportingApiReportUpdated] -> ShowS)
-> Show NetworkReportingApiReportUpdated
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkReportingApiReportUpdated] -> ShowS
$cshowList :: [NetworkReportingApiReportUpdated] -> ShowS
show :: NetworkReportingApiReportUpdated -> String
$cshow :: NetworkReportingApiReportUpdated -> String
showsPrec :: Int -> NetworkReportingApiReportUpdated -> ShowS
$cshowsPrec :: Int -> NetworkReportingApiReportUpdated -> ShowS
Show)
instance FromJSON NetworkReportingApiReportUpdated where
  parseJSON :: Value -> Parser NetworkReportingApiReportUpdated
parseJSON = String
-> (Object -> Parser NetworkReportingApiReportUpdated)
-> Value
-> Parser NetworkReportingApiReportUpdated
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkReportingApiReportUpdated" ((Object -> Parser NetworkReportingApiReportUpdated)
 -> Value -> Parser NetworkReportingApiReportUpdated)
-> (Object -> Parser NetworkReportingApiReportUpdated)
-> Value
-> Parser NetworkReportingApiReportUpdated
forall a b. (a -> b) -> a -> b
$ \Object
o -> NetworkReportingApiReport -> NetworkReportingApiReportUpdated
NetworkReportingApiReportUpdated
    (NetworkReportingApiReport -> NetworkReportingApiReportUpdated)
-> Parser NetworkReportingApiReport
-> Parser NetworkReportingApiReportUpdated
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser NetworkReportingApiReport
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"report"
instance Event NetworkReportingApiReportUpdated where
  eventName :: Proxy NetworkReportingApiReportUpdated -> String
eventName Proxy NetworkReportingApiReportUpdated
_ = String
"Network.reportingApiReportUpdated"

-- | Type of the 'Network.reportingApiEndpointsChangedForOrigin' event.
data NetworkReportingApiEndpointsChangedForOrigin = NetworkReportingApiEndpointsChangedForOrigin
  {
    -- | Origin of the document(s) which configured the endpoints.
    NetworkReportingApiEndpointsChangedForOrigin -> Text
networkReportingApiEndpointsChangedForOriginOrigin :: T.Text,
    NetworkReportingApiEndpointsChangedForOrigin
-> [NetworkReportingApiEndpoint]
networkReportingApiEndpointsChangedForOriginEndpoints :: [NetworkReportingApiEndpoint]
  }
  deriving (NetworkReportingApiEndpointsChangedForOrigin
-> NetworkReportingApiEndpointsChangedForOrigin -> Bool
(NetworkReportingApiEndpointsChangedForOrigin
 -> NetworkReportingApiEndpointsChangedForOrigin -> Bool)
-> (NetworkReportingApiEndpointsChangedForOrigin
    -> NetworkReportingApiEndpointsChangedForOrigin -> Bool)
-> Eq NetworkReportingApiEndpointsChangedForOrigin
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkReportingApiEndpointsChangedForOrigin
-> NetworkReportingApiEndpointsChangedForOrigin -> Bool
$c/= :: NetworkReportingApiEndpointsChangedForOrigin
-> NetworkReportingApiEndpointsChangedForOrigin -> Bool
== :: NetworkReportingApiEndpointsChangedForOrigin
-> NetworkReportingApiEndpointsChangedForOrigin -> Bool
$c== :: NetworkReportingApiEndpointsChangedForOrigin
-> NetworkReportingApiEndpointsChangedForOrigin -> Bool
Eq, Int -> NetworkReportingApiEndpointsChangedForOrigin -> ShowS
[NetworkReportingApiEndpointsChangedForOrigin] -> ShowS
NetworkReportingApiEndpointsChangedForOrigin -> String
(Int -> NetworkReportingApiEndpointsChangedForOrigin -> ShowS)
-> (NetworkReportingApiEndpointsChangedForOrigin -> String)
-> ([NetworkReportingApiEndpointsChangedForOrigin] -> ShowS)
-> Show NetworkReportingApiEndpointsChangedForOrigin
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkReportingApiEndpointsChangedForOrigin] -> ShowS
$cshowList :: [NetworkReportingApiEndpointsChangedForOrigin] -> ShowS
show :: NetworkReportingApiEndpointsChangedForOrigin -> String
$cshow :: NetworkReportingApiEndpointsChangedForOrigin -> String
showsPrec :: Int -> NetworkReportingApiEndpointsChangedForOrigin -> ShowS
$cshowsPrec :: Int -> NetworkReportingApiEndpointsChangedForOrigin -> ShowS
Show)
instance FromJSON NetworkReportingApiEndpointsChangedForOrigin where
  parseJSON :: Value -> Parser NetworkReportingApiEndpointsChangedForOrigin
parseJSON = String
-> (Object -> Parser NetworkReportingApiEndpointsChangedForOrigin)
-> Value
-> Parser NetworkReportingApiEndpointsChangedForOrigin
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkReportingApiEndpointsChangedForOrigin" ((Object -> Parser NetworkReportingApiEndpointsChangedForOrigin)
 -> Value -> Parser NetworkReportingApiEndpointsChangedForOrigin)
-> (Object -> Parser NetworkReportingApiEndpointsChangedForOrigin)
-> Value
-> Parser NetworkReportingApiEndpointsChangedForOrigin
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> [NetworkReportingApiEndpoint]
-> NetworkReportingApiEndpointsChangedForOrigin
NetworkReportingApiEndpointsChangedForOrigin
    (Text
 -> [NetworkReportingApiEndpoint]
 -> NetworkReportingApiEndpointsChangedForOrigin)
-> Parser Text
-> Parser
     ([NetworkReportingApiEndpoint]
      -> NetworkReportingApiEndpointsChangedForOrigin)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"origin"
    Parser
  ([NetworkReportingApiEndpoint]
   -> NetworkReportingApiEndpointsChangedForOrigin)
-> Parser [NetworkReportingApiEndpoint]
-> Parser NetworkReportingApiEndpointsChangedForOrigin
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser [NetworkReportingApiEndpoint]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"endpoints"
instance Event NetworkReportingApiEndpointsChangedForOrigin where
  eventName :: Proxy NetworkReportingApiEndpointsChangedForOrigin -> String
eventName Proxy NetworkReportingApiEndpointsChangedForOrigin
_ = String
"Network.reportingApiEndpointsChangedForOrigin"

-- | Sets a list of content encodings that will be accepted. Empty list means no encoding is accepted.

-- | Parameters of the 'Network.setAcceptedEncodings' command.
data PNetworkSetAcceptedEncodings = PNetworkSetAcceptedEncodings
  {
    -- | List of accepted content encodings.
    PNetworkSetAcceptedEncodings -> [NetworkContentEncoding]
pNetworkSetAcceptedEncodingsEncodings :: [NetworkContentEncoding]
  }
  deriving (PNetworkSetAcceptedEncodings
-> PNetworkSetAcceptedEncodings -> Bool
(PNetworkSetAcceptedEncodings
 -> PNetworkSetAcceptedEncodings -> Bool)
-> (PNetworkSetAcceptedEncodings
    -> PNetworkSetAcceptedEncodings -> Bool)
-> Eq PNetworkSetAcceptedEncodings
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PNetworkSetAcceptedEncodings
-> PNetworkSetAcceptedEncodings -> Bool
$c/= :: PNetworkSetAcceptedEncodings
-> PNetworkSetAcceptedEncodings -> Bool
== :: PNetworkSetAcceptedEncodings
-> PNetworkSetAcceptedEncodings -> Bool
$c== :: PNetworkSetAcceptedEncodings
-> PNetworkSetAcceptedEncodings -> Bool
Eq, Int -> PNetworkSetAcceptedEncodings -> ShowS
[PNetworkSetAcceptedEncodings] -> ShowS
PNetworkSetAcceptedEncodings -> String
(Int -> PNetworkSetAcceptedEncodings -> ShowS)
-> (PNetworkSetAcceptedEncodings -> String)
-> ([PNetworkSetAcceptedEncodings] -> ShowS)
-> Show PNetworkSetAcceptedEncodings
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PNetworkSetAcceptedEncodings] -> ShowS
$cshowList :: [PNetworkSetAcceptedEncodings] -> ShowS
show :: PNetworkSetAcceptedEncodings -> String
$cshow :: PNetworkSetAcceptedEncodings -> String
showsPrec :: Int -> PNetworkSetAcceptedEncodings -> ShowS
$cshowsPrec :: Int -> PNetworkSetAcceptedEncodings -> ShowS
Show)
pNetworkSetAcceptedEncodings
  {-
  -- | List of accepted content encodings.
  -}
  :: [NetworkContentEncoding]
  -> PNetworkSetAcceptedEncodings
pNetworkSetAcceptedEncodings :: [NetworkContentEncoding] -> PNetworkSetAcceptedEncodings
pNetworkSetAcceptedEncodings
  [NetworkContentEncoding]
arg_pNetworkSetAcceptedEncodingsEncodings
  = [NetworkContentEncoding] -> PNetworkSetAcceptedEncodings
PNetworkSetAcceptedEncodings
    [NetworkContentEncoding]
arg_pNetworkSetAcceptedEncodingsEncodings
instance ToJSON PNetworkSetAcceptedEncodings where
  toJSON :: PNetworkSetAcceptedEncodings -> Value
toJSON PNetworkSetAcceptedEncodings
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"encodings" Text -> [NetworkContentEncoding] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([NetworkContentEncoding] -> Pair)
-> Maybe [NetworkContentEncoding] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> [NetworkContentEncoding] -> Maybe [NetworkContentEncoding]
forall a. a -> Maybe a
Just (PNetworkSetAcceptedEncodings -> [NetworkContentEncoding]
pNetworkSetAcceptedEncodingsEncodings PNetworkSetAcceptedEncodings
p)
    ]
instance Command PNetworkSetAcceptedEncodings where
  type CommandResponse PNetworkSetAcceptedEncodings = ()
  commandName :: Proxy PNetworkSetAcceptedEncodings -> String
commandName Proxy PNetworkSetAcceptedEncodings
_ = String
"Network.setAcceptedEncodings"
  fromJSON :: Proxy PNetworkSetAcceptedEncodings
-> Value -> Result (CommandResponse PNetworkSetAcceptedEncodings)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PNetworkSetAcceptedEncodings -> Result ())
-> Proxy PNetworkSetAcceptedEncodings
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PNetworkSetAcceptedEncodings -> ())
-> Proxy PNetworkSetAcceptedEncodings
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PNetworkSetAcceptedEncodings -> ()
forall a b. a -> b -> a
const ()

-- | Clears accepted encodings set by setAcceptedEncodings

-- | Parameters of the 'Network.clearAcceptedEncodingsOverride' command.
data PNetworkClearAcceptedEncodingsOverride = PNetworkClearAcceptedEncodingsOverride
  deriving (PNetworkClearAcceptedEncodingsOverride
-> PNetworkClearAcceptedEncodingsOverride -> Bool
(PNetworkClearAcceptedEncodingsOverride
 -> PNetworkClearAcceptedEncodingsOverride -> Bool)
-> (PNetworkClearAcceptedEncodingsOverride
    -> PNetworkClearAcceptedEncodingsOverride -> Bool)
-> Eq PNetworkClearAcceptedEncodingsOverride
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PNetworkClearAcceptedEncodingsOverride
-> PNetworkClearAcceptedEncodingsOverride -> Bool
$c/= :: PNetworkClearAcceptedEncodingsOverride
-> PNetworkClearAcceptedEncodingsOverride -> Bool
== :: PNetworkClearAcceptedEncodingsOverride
-> PNetworkClearAcceptedEncodingsOverride -> Bool
$c== :: PNetworkClearAcceptedEncodingsOverride
-> PNetworkClearAcceptedEncodingsOverride -> Bool
Eq, Int -> PNetworkClearAcceptedEncodingsOverride -> ShowS
[PNetworkClearAcceptedEncodingsOverride] -> ShowS
PNetworkClearAcceptedEncodingsOverride -> String
(Int -> PNetworkClearAcceptedEncodingsOverride -> ShowS)
-> (PNetworkClearAcceptedEncodingsOverride -> String)
-> ([PNetworkClearAcceptedEncodingsOverride] -> ShowS)
-> Show PNetworkClearAcceptedEncodingsOverride
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PNetworkClearAcceptedEncodingsOverride] -> ShowS
$cshowList :: [PNetworkClearAcceptedEncodingsOverride] -> ShowS
show :: PNetworkClearAcceptedEncodingsOverride -> String
$cshow :: PNetworkClearAcceptedEncodingsOverride -> String
showsPrec :: Int -> PNetworkClearAcceptedEncodingsOverride -> ShowS
$cshowsPrec :: Int -> PNetworkClearAcceptedEncodingsOverride -> ShowS
Show)
pNetworkClearAcceptedEncodingsOverride
  :: PNetworkClearAcceptedEncodingsOverride
pNetworkClearAcceptedEncodingsOverride :: PNetworkClearAcceptedEncodingsOverride
pNetworkClearAcceptedEncodingsOverride
  = PNetworkClearAcceptedEncodingsOverride
PNetworkClearAcceptedEncodingsOverride
instance ToJSON PNetworkClearAcceptedEncodingsOverride where
  toJSON :: PNetworkClearAcceptedEncodingsOverride -> Value
toJSON PNetworkClearAcceptedEncodingsOverride
_ = Value
A.Null
instance Command PNetworkClearAcceptedEncodingsOverride where
  type CommandResponse PNetworkClearAcceptedEncodingsOverride = ()
  commandName :: Proxy PNetworkClearAcceptedEncodingsOverride -> String
commandName Proxy PNetworkClearAcceptedEncodingsOverride
_ = String
"Network.clearAcceptedEncodingsOverride"
  fromJSON :: Proxy PNetworkClearAcceptedEncodingsOverride
-> Value
-> Result (CommandResponse PNetworkClearAcceptedEncodingsOverride)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PNetworkClearAcceptedEncodingsOverride -> Result ())
-> Proxy PNetworkClearAcceptedEncodingsOverride
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PNetworkClearAcceptedEncodingsOverride -> ())
-> Proxy PNetworkClearAcceptedEncodingsOverride
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PNetworkClearAcceptedEncodingsOverride -> ()
forall a b. a -> b -> a
const ()

-- | Clears browser cache.

-- | Parameters of the 'Network.clearBrowserCache' command.
data PNetworkClearBrowserCache = PNetworkClearBrowserCache
  deriving (PNetworkClearBrowserCache -> PNetworkClearBrowserCache -> Bool
(PNetworkClearBrowserCache -> PNetworkClearBrowserCache -> Bool)
-> (PNetworkClearBrowserCache -> PNetworkClearBrowserCache -> Bool)
-> Eq PNetworkClearBrowserCache
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PNetworkClearBrowserCache -> PNetworkClearBrowserCache -> Bool
$c/= :: PNetworkClearBrowserCache -> PNetworkClearBrowserCache -> Bool
== :: PNetworkClearBrowserCache -> PNetworkClearBrowserCache -> Bool
$c== :: PNetworkClearBrowserCache -> PNetworkClearBrowserCache -> Bool
Eq, Int -> PNetworkClearBrowserCache -> ShowS
[PNetworkClearBrowserCache] -> ShowS
PNetworkClearBrowserCache -> String
(Int -> PNetworkClearBrowserCache -> ShowS)
-> (PNetworkClearBrowserCache -> String)
-> ([PNetworkClearBrowserCache] -> ShowS)
-> Show PNetworkClearBrowserCache
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PNetworkClearBrowserCache] -> ShowS
$cshowList :: [PNetworkClearBrowserCache] -> ShowS
show :: PNetworkClearBrowserCache -> String
$cshow :: PNetworkClearBrowserCache -> String
showsPrec :: Int -> PNetworkClearBrowserCache -> ShowS
$cshowsPrec :: Int -> PNetworkClearBrowserCache -> ShowS
Show)
pNetworkClearBrowserCache
  :: PNetworkClearBrowserCache
pNetworkClearBrowserCache :: PNetworkClearBrowserCache
pNetworkClearBrowserCache
  = PNetworkClearBrowserCache
PNetworkClearBrowserCache
instance ToJSON PNetworkClearBrowserCache where
  toJSON :: PNetworkClearBrowserCache -> Value
toJSON PNetworkClearBrowserCache
_ = Value
A.Null
instance Command PNetworkClearBrowserCache where
  type CommandResponse PNetworkClearBrowserCache = ()
  commandName :: Proxy PNetworkClearBrowserCache -> String
commandName Proxy PNetworkClearBrowserCache
_ = String
"Network.clearBrowserCache"
  fromJSON :: Proxy PNetworkClearBrowserCache
-> Value -> Result (CommandResponse PNetworkClearBrowserCache)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PNetworkClearBrowserCache -> Result ())
-> Proxy PNetworkClearBrowserCache
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PNetworkClearBrowserCache -> ())
-> Proxy PNetworkClearBrowserCache
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PNetworkClearBrowserCache -> ()
forall a b. a -> b -> a
const ()

-- | Clears browser cookies.

-- | Parameters of the 'Network.clearBrowserCookies' command.
data PNetworkClearBrowserCookies = PNetworkClearBrowserCookies
  deriving (PNetworkClearBrowserCookies -> PNetworkClearBrowserCookies -> Bool
(PNetworkClearBrowserCookies
 -> PNetworkClearBrowserCookies -> Bool)
-> (PNetworkClearBrowserCookies
    -> PNetworkClearBrowserCookies -> Bool)
-> Eq PNetworkClearBrowserCookies
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PNetworkClearBrowserCookies -> PNetworkClearBrowserCookies -> Bool
$c/= :: PNetworkClearBrowserCookies -> PNetworkClearBrowserCookies -> Bool
== :: PNetworkClearBrowserCookies -> PNetworkClearBrowserCookies -> Bool
$c== :: PNetworkClearBrowserCookies -> PNetworkClearBrowserCookies -> Bool
Eq, Int -> PNetworkClearBrowserCookies -> ShowS
[PNetworkClearBrowserCookies] -> ShowS
PNetworkClearBrowserCookies -> String
(Int -> PNetworkClearBrowserCookies -> ShowS)
-> (PNetworkClearBrowserCookies -> String)
-> ([PNetworkClearBrowserCookies] -> ShowS)
-> Show PNetworkClearBrowserCookies
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PNetworkClearBrowserCookies] -> ShowS
$cshowList :: [PNetworkClearBrowserCookies] -> ShowS
show :: PNetworkClearBrowserCookies -> String
$cshow :: PNetworkClearBrowserCookies -> String
showsPrec :: Int -> PNetworkClearBrowserCookies -> ShowS
$cshowsPrec :: Int -> PNetworkClearBrowserCookies -> ShowS
Show)
pNetworkClearBrowserCookies
  :: PNetworkClearBrowserCookies
pNetworkClearBrowserCookies :: PNetworkClearBrowserCookies
pNetworkClearBrowserCookies
  = PNetworkClearBrowserCookies
PNetworkClearBrowserCookies
instance ToJSON PNetworkClearBrowserCookies where
  toJSON :: PNetworkClearBrowserCookies -> Value
toJSON PNetworkClearBrowserCookies
_ = Value
A.Null
instance Command PNetworkClearBrowserCookies where
  type CommandResponse PNetworkClearBrowserCookies = ()
  commandName :: Proxy PNetworkClearBrowserCookies -> String
commandName Proxy PNetworkClearBrowserCookies
_ = String
"Network.clearBrowserCookies"
  fromJSON :: Proxy PNetworkClearBrowserCookies
-> Value -> Result (CommandResponse PNetworkClearBrowserCookies)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PNetworkClearBrowserCookies -> Result ())
-> Proxy PNetworkClearBrowserCookies
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PNetworkClearBrowserCookies -> ())
-> Proxy PNetworkClearBrowserCookies
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PNetworkClearBrowserCookies -> ()
forall a b. a -> b -> a
const ()

-- | Deletes browser cookies with matching name and url or domain/path pair.

-- | Parameters of the 'Network.deleteCookies' command.
data PNetworkDeleteCookies = PNetworkDeleteCookies
  {
    -- | Name of the cookies to remove.
    PNetworkDeleteCookies -> Text
pNetworkDeleteCookiesName :: T.Text,
    -- | If specified, deletes all the cookies with the given name where domain and path match
    --   provided URL.
    PNetworkDeleteCookies -> Maybe Text
pNetworkDeleteCookiesUrl :: Maybe T.Text,
    -- | If specified, deletes only cookies with the exact domain.
    PNetworkDeleteCookies -> Maybe Text
pNetworkDeleteCookiesDomain :: Maybe T.Text,
    -- | If specified, deletes only cookies with the exact path.
    PNetworkDeleteCookies -> Maybe Text
pNetworkDeleteCookiesPath :: Maybe T.Text
  }
  deriving (PNetworkDeleteCookies -> PNetworkDeleteCookies -> Bool
(PNetworkDeleteCookies -> PNetworkDeleteCookies -> Bool)
-> (PNetworkDeleteCookies -> PNetworkDeleteCookies -> Bool)
-> Eq PNetworkDeleteCookies
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PNetworkDeleteCookies -> PNetworkDeleteCookies -> Bool
$c/= :: PNetworkDeleteCookies -> PNetworkDeleteCookies -> Bool
== :: PNetworkDeleteCookies -> PNetworkDeleteCookies -> Bool
$c== :: PNetworkDeleteCookies -> PNetworkDeleteCookies -> Bool
Eq, Int -> PNetworkDeleteCookies -> ShowS
[PNetworkDeleteCookies] -> ShowS
PNetworkDeleteCookies -> String
(Int -> PNetworkDeleteCookies -> ShowS)
-> (PNetworkDeleteCookies -> String)
-> ([PNetworkDeleteCookies] -> ShowS)
-> Show PNetworkDeleteCookies
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PNetworkDeleteCookies] -> ShowS
$cshowList :: [PNetworkDeleteCookies] -> ShowS
show :: PNetworkDeleteCookies -> String
$cshow :: PNetworkDeleteCookies -> String
showsPrec :: Int -> PNetworkDeleteCookies -> ShowS
$cshowsPrec :: Int -> PNetworkDeleteCookies -> ShowS
Show)
pNetworkDeleteCookies
  {-
  -- | Name of the cookies to remove.
  -}
  :: T.Text
  -> PNetworkDeleteCookies
pNetworkDeleteCookies :: Text -> PNetworkDeleteCookies
pNetworkDeleteCookies
  Text
arg_pNetworkDeleteCookiesName
  = Text
-> Maybe Text -> Maybe Text -> Maybe Text -> PNetworkDeleteCookies
PNetworkDeleteCookies
    Text
arg_pNetworkDeleteCookiesName
    Maybe Text
forall a. Maybe a
Nothing
    Maybe Text
forall a. Maybe a
Nothing
    Maybe Text
forall a. Maybe a
Nothing
instance ToJSON PNetworkDeleteCookies where
  toJSON :: PNetworkDeleteCookies -> Value
toJSON PNetworkDeleteCookies
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"name" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PNetworkDeleteCookies -> Text
pNetworkDeleteCookiesName PNetworkDeleteCookies
p),
    (Text
"url" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PNetworkDeleteCookies -> Maybe Text
pNetworkDeleteCookiesUrl PNetworkDeleteCookies
p),
    (Text
"domain" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PNetworkDeleteCookies -> Maybe Text
pNetworkDeleteCookiesDomain PNetworkDeleteCookies
p),
    (Text
"path" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PNetworkDeleteCookies -> Maybe Text
pNetworkDeleteCookiesPath PNetworkDeleteCookies
p)
    ]
instance Command PNetworkDeleteCookies where
  type CommandResponse PNetworkDeleteCookies = ()
  commandName :: Proxy PNetworkDeleteCookies -> String
commandName Proxy PNetworkDeleteCookies
_ = String
"Network.deleteCookies"
  fromJSON :: Proxy PNetworkDeleteCookies
-> Value -> Result (CommandResponse PNetworkDeleteCookies)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PNetworkDeleteCookies -> Result ())
-> Proxy PNetworkDeleteCookies
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PNetworkDeleteCookies -> ())
-> Proxy PNetworkDeleteCookies
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PNetworkDeleteCookies -> ()
forall a b. a -> b -> a
const ()

-- | Disables network tracking, prevents network events from being sent to the client.

-- | Parameters of the 'Network.disable' command.
data PNetworkDisable = PNetworkDisable
  deriving (PNetworkDisable -> PNetworkDisable -> Bool
(PNetworkDisable -> PNetworkDisable -> Bool)
-> (PNetworkDisable -> PNetworkDisable -> Bool)
-> Eq PNetworkDisable
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PNetworkDisable -> PNetworkDisable -> Bool
$c/= :: PNetworkDisable -> PNetworkDisable -> Bool
== :: PNetworkDisable -> PNetworkDisable -> Bool
$c== :: PNetworkDisable -> PNetworkDisable -> Bool
Eq, Int -> PNetworkDisable -> ShowS
[PNetworkDisable] -> ShowS
PNetworkDisable -> String
(Int -> PNetworkDisable -> ShowS)
-> (PNetworkDisable -> String)
-> ([PNetworkDisable] -> ShowS)
-> Show PNetworkDisable
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PNetworkDisable] -> ShowS
$cshowList :: [PNetworkDisable] -> ShowS
show :: PNetworkDisable -> String
$cshow :: PNetworkDisable -> String
showsPrec :: Int -> PNetworkDisable -> ShowS
$cshowsPrec :: Int -> PNetworkDisable -> ShowS
Show)
pNetworkDisable
  :: PNetworkDisable
pNetworkDisable :: PNetworkDisable
pNetworkDisable
  = PNetworkDisable
PNetworkDisable
instance ToJSON PNetworkDisable where
  toJSON :: PNetworkDisable -> Value
toJSON PNetworkDisable
_ = Value
A.Null
instance Command PNetworkDisable where
  type CommandResponse PNetworkDisable = ()
  commandName :: Proxy PNetworkDisable -> String
commandName Proxy PNetworkDisable
_ = String
"Network.disable"
  fromJSON :: Proxy PNetworkDisable
-> Value -> Result (CommandResponse PNetworkDisable)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PNetworkDisable -> Result ())
-> Proxy PNetworkDisable
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PNetworkDisable -> ())
-> Proxy PNetworkDisable
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PNetworkDisable -> ()
forall a b. a -> b -> a
const ()

-- | Activates emulation of network conditions.

-- | Parameters of the 'Network.emulateNetworkConditions' command.
data PNetworkEmulateNetworkConditions = PNetworkEmulateNetworkConditions
  {
    -- | True to emulate internet disconnection.
    PNetworkEmulateNetworkConditions -> Bool
pNetworkEmulateNetworkConditionsOffline :: Bool,
    -- | Minimum latency from request sent to response headers received (ms).
    PNetworkEmulateNetworkConditions -> Double
pNetworkEmulateNetworkConditionsLatency :: Double,
    -- | Maximal aggregated download throughput (bytes/sec). -1 disables download throttling.
    PNetworkEmulateNetworkConditions -> Double
pNetworkEmulateNetworkConditionsDownloadThroughput :: Double,
    -- | Maximal aggregated upload throughput (bytes/sec).  -1 disables upload throttling.
    PNetworkEmulateNetworkConditions -> Double
pNetworkEmulateNetworkConditionsUploadThroughput :: Double,
    -- | Connection type if known.
    PNetworkEmulateNetworkConditions -> Maybe NetworkConnectionType
pNetworkEmulateNetworkConditionsConnectionType :: Maybe NetworkConnectionType
  }
  deriving (PNetworkEmulateNetworkConditions
-> PNetworkEmulateNetworkConditions -> Bool
(PNetworkEmulateNetworkConditions
 -> PNetworkEmulateNetworkConditions -> Bool)
-> (PNetworkEmulateNetworkConditions
    -> PNetworkEmulateNetworkConditions -> Bool)
-> Eq PNetworkEmulateNetworkConditions
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PNetworkEmulateNetworkConditions
-> PNetworkEmulateNetworkConditions -> Bool
$c/= :: PNetworkEmulateNetworkConditions
-> PNetworkEmulateNetworkConditions -> Bool
== :: PNetworkEmulateNetworkConditions
-> PNetworkEmulateNetworkConditions -> Bool
$c== :: PNetworkEmulateNetworkConditions
-> PNetworkEmulateNetworkConditions -> Bool
Eq, Int -> PNetworkEmulateNetworkConditions -> ShowS
[PNetworkEmulateNetworkConditions] -> ShowS
PNetworkEmulateNetworkConditions -> String
(Int -> PNetworkEmulateNetworkConditions -> ShowS)
-> (PNetworkEmulateNetworkConditions -> String)
-> ([PNetworkEmulateNetworkConditions] -> ShowS)
-> Show PNetworkEmulateNetworkConditions
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PNetworkEmulateNetworkConditions] -> ShowS
$cshowList :: [PNetworkEmulateNetworkConditions] -> ShowS
show :: PNetworkEmulateNetworkConditions -> String
$cshow :: PNetworkEmulateNetworkConditions -> String
showsPrec :: Int -> PNetworkEmulateNetworkConditions -> ShowS
$cshowsPrec :: Int -> PNetworkEmulateNetworkConditions -> ShowS
Show)
pNetworkEmulateNetworkConditions
  {-
  -- | True to emulate internet disconnection.
  -}
  :: Bool
  {-
  -- | Minimum latency from request sent to response headers received (ms).
  -}
  -> Double
  {-
  -- | Maximal aggregated download throughput (bytes/sec). -1 disables download throttling.
  -}
  -> Double
  {-
  -- | Maximal aggregated upload throughput (bytes/sec).  -1 disables upload throttling.
  -}
  -> Double
  -> PNetworkEmulateNetworkConditions
pNetworkEmulateNetworkConditions :: Bool
-> Double -> Double -> Double -> PNetworkEmulateNetworkConditions
pNetworkEmulateNetworkConditions
  Bool
arg_pNetworkEmulateNetworkConditionsOffline
  Double
arg_pNetworkEmulateNetworkConditionsLatency
  Double
arg_pNetworkEmulateNetworkConditionsDownloadThroughput
  Double
arg_pNetworkEmulateNetworkConditionsUploadThroughput
  = Bool
-> Double
-> Double
-> Double
-> Maybe NetworkConnectionType
-> PNetworkEmulateNetworkConditions
PNetworkEmulateNetworkConditions
    Bool
arg_pNetworkEmulateNetworkConditionsOffline
    Double
arg_pNetworkEmulateNetworkConditionsLatency
    Double
arg_pNetworkEmulateNetworkConditionsDownloadThroughput
    Double
arg_pNetworkEmulateNetworkConditionsUploadThroughput
    Maybe NetworkConnectionType
forall a. Maybe a
Nothing
instance ToJSON PNetworkEmulateNetworkConditions where
  toJSON :: PNetworkEmulateNetworkConditions -> Value
toJSON PNetworkEmulateNetworkConditions
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"offline" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (PNetworkEmulateNetworkConditions -> Bool
pNetworkEmulateNetworkConditionsOffline PNetworkEmulateNetworkConditions
p),
    (Text
"latency" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (PNetworkEmulateNetworkConditions -> Double
pNetworkEmulateNetworkConditionsLatency PNetworkEmulateNetworkConditions
p),
    (Text
"downloadThroughput" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (PNetworkEmulateNetworkConditions -> Double
pNetworkEmulateNetworkConditionsDownloadThroughput PNetworkEmulateNetworkConditions
p),
    (Text
"uploadThroughput" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (PNetworkEmulateNetworkConditions -> Double
pNetworkEmulateNetworkConditionsUploadThroughput PNetworkEmulateNetworkConditions
p),
    (Text
"connectionType" Text -> NetworkConnectionType -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkConnectionType -> Pair)
-> Maybe NetworkConnectionType -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PNetworkEmulateNetworkConditions -> Maybe NetworkConnectionType
pNetworkEmulateNetworkConditionsConnectionType PNetworkEmulateNetworkConditions
p)
    ]
instance Command PNetworkEmulateNetworkConditions where
  type CommandResponse PNetworkEmulateNetworkConditions = ()
  commandName :: Proxy PNetworkEmulateNetworkConditions -> String
commandName Proxy PNetworkEmulateNetworkConditions
_ = String
"Network.emulateNetworkConditions"
  fromJSON :: Proxy PNetworkEmulateNetworkConditions
-> Value
-> Result (CommandResponse PNetworkEmulateNetworkConditions)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PNetworkEmulateNetworkConditions -> Result ())
-> Proxy PNetworkEmulateNetworkConditions
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PNetworkEmulateNetworkConditions -> ())
-> Proxy PNetworkEmulateNetworkConditions
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PNetworkEmulateNetworkConditions -> ()
forall a b. a -> b -> a
const ()

-- | Enables network tracking, network events will now be delivered to the client.

-- | Parameters of the 'Network.enable' command.
data PNetworkEnable = PNetworkEnable
  {
    -- | Buffer size in bytes to use when preserving network payloads (XHRs, etc).
    PNetworkEnable -> Maybe Int
pNetworkEnableMaxTotalBufferSize :: Maybe Int,
    -- | Per-resource buffer size in bytes to use when preserving network payloads (XHRs, etc).
    PNetworkEnable -> Maybe Int
pNetworkEnableMaxResourceBufferSize :: Maybe Int,
    -- | Longest post body size (in bytes) that would be included in requestWillBeSent notification
    PNetworkEnable -> Maybe Int
pNetworkEnableMaxPostDataSize :: Maybe Int
  }
  deriving (PNetworkEnable -> PNetworkEnable -> Bool
(PNetworkEnable -> PNetworkEnable -> Bool)
-> (PNetworkEnable -> PNetworkEnable -> Bool) -> Eq PNetworkEnable
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PNetworkEnable -> PNetworkEnable -> Bool
$c/= :: PNetworkEnable -> PNetworkEnable -> Bool
== :: PNetworkEnable -> PNetworkEnable -> Bool
$c== :: PNetworkEnable -> PNetworkEnable -> Bool
Eq, Int -> PNetworkEnable -> ShowS
[PNetworkEnable] -> ShowS
PNetworkEnable -> String
(Int -> PNetworkEnable -> ShowS)
-> (PNetworkEnable -> String)
-> ([PNetworkEnable] -> ShowS)
-> Show PNetworkEnable
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PNetworkEnable] -> ShowS
$cshowList :: [PNetworkEnable] -> ShowS
show :: PNetworkEnable -> String
$cshow :: PNetworkEnable -> String
showsPrec :: Int -> PNetworkEnable -> ShowS
$cshowsPrec :: Int -> PNetworkEnable -> ShowS
Show)
pNetworkEnable
  :: PNetworkEnable
pNetworkEnable :: PNetworkEnable
pNetworkEnable
  = Maybe Int -> Maybe Int -> Maybe Int -> PNetworkEnable
PNetworkEnable
    Maybe Int
forall a. Maybe a
Nothing
    Maybe Int
forall a. Maybe a
Nothing
    Maybe Int
forall a. Maybe a
Nothing
instance ToJSON PNetworkEnable where
  toJSON :: PNetworkEnable -> Value
toJSON PNetworkEnable
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"maxTotalBufferSize" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PNetworkEnable -> Maybe Int
pNetworkEnableMaxTotalBufferSize PNetworkEnable
p),
    (Text
"maxResourceBufferSize" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PNetworkEnable -> Maybe Int
pNetworkEnableMaxResourceBufferSize PNetworkEnable
p),
    (Text
"maxPostDataSize" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PNetworkEnable -> Maybe Int
pNetworkEnableMaxPostDataSize PNetworkEnable
p)
    ]
instance Command PNetworkEnable where
  type CommandResponse PNetworkEnable = ()
  commandName :: Proxy PNetworkEnable -> String
commandName Proxy PNetworkEnable
_ = String
"Network.enable"
  fromJSON :: Proxy PNetworkEnable
-> Value -> Result (CommandResponse PNetworkEnable)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PNetworkEnable -> Result ())
-> Proxy PNetworkEnable
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PNetworkEnable -> ())
-> Proxy PNetworkEnable
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PNetworkEnable -> ()
forall a b. a -> b -> a
const ()

-- | Returns all browser cookies. Depending on the backend support, will return detailed cookie
--   information in the `cookies` field.

-- | Parameters of the 'Network.getAllCookies' command.
data PNetworkGetAllCookies = PNetworkGetAllCookies
  deriving (PNetworkGetAllCookies -> PNetworkGetAllCookies -> Bool
(PNetworkGetAllCookies -> PNetworkGetAllCookies -> Bool)
-> (PNetworkGetAllCookies -> PNetworkGetAllCookies -> Bool)
-> Eq PNetworkGetAllCookies
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PNetworkGetAllCookies -> PNetworkGetAllCookies -> Bool
$c/= :: PNetworkGetAllCookies -> PNetworkGetAllCookies -> Bool
== :: PNetworkGetAllCookies -> PNetworkGetAllCookies -> Bool
$c== :: PNetworkGetAllCookies -> PNetworkGetAllCookies -> Bool
Eq, Int -> PNetworkGetAllCookies -> ShowS
[PNetworkGetAllCookies] -> ShowS
PNetworkGetAllCookies -> String
(Int -> PNetworkGetAllCookies -> ShowS)
-> (PNetworkGetAllCookies -> String)
-> ([PNetworkGetAllCookies] -> ShowS)
-> Show PNetworkGetAllCookies
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PNetworkGetAllCookies] -> ShowS
$cshowList :: [PNetworkGetAllCookies] -> ShowS
show :: PNetworkGetAllCookies -> String
$cshow :: PNetworkGetAllCookies -> String
showsPrec :: Int -> PNetworkGetAllCookies -> ShowS
$cshowsPrec :: Int -> PNetworkGetAllCookies -> ShowS
Show)
pNetworkGetAllCookies
  :: PNetworkGetAllCookies
pNetworkGetAllCookies :: PNetworkGetAllCookies
pNetworkGetAllCookies
  = PNetworkGetAllCookies
PNetworkGetAllCookies
instance ToJSON PNetworkGetAllCookies where
  toJSON :: PNetworkGetAllCookies -> Value
toJSON PNetworkGetAllCookies
_ = Value
A.Null
data NetworkGetAllCookies = NetworkGetAllCookies
  {
    -- | Array of cookie objects.
    NetworkGetAllCookies -> [NetworkCookie]
networkGetAllCookiesCookies :: [NetworkCookie]
  }
  deriving (NetworkGetAllCookies -> NetworkGetAllCookies -> Bool
(NetworkGetAllCookies -> NetworkGetAllCookies -> Bool)
-> (NetworkGetAllCookies -> NetworkGetAllCookies -> Bool)
-> Eq NetworkGetAllCookies
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkGetAllCookies -> NetworkGetAllCookies -> Bool
$c/= :: NetworkGetAllCookies -> NetworkGetAllCookies -> Bool
== :: NetworkGetAllCookies -> NetworkGetAllCookies -> Bool
$c== :: NetworkGetAllCookies -> NetworkGetAllCookies -> Bool
Eq, Int -> NetworkGetAllCookies -> ShowS
[NetworkGetAllCookies] -> ShowS
NetworkGetAllCookies -> String
(Int -> NetworkGetAllCookies -> ShowS)
-> (NetworkGetAllCookies -> String)
-> ([NetworkGetAllCookies] -> ShowS)
-> Show NetworkGetAllCookies
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkGetAllCookies] -> ShowS
$cshowList :: [NetworkGetAllCookies] -> ShowS
show :: NetworkGetAllCookies -> String
$cshow :: NetworkGetAllCookies -> String
showsPrec :: Int -> NetworkGetAllCookies -> ShowS
$cshowsPrec :: Int -> NetworkGetAllCookies -> ShowS
Show)
instance FromJSON NetworkGetAllCookies where
  parseJSON :: Value -> Parser NetworkGetAllCookies
parseJSON = String
-> (Object -> Parser NetworkGetAllCookies)
-> Value
-> Parser NetworkGetAllCookies
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkGetAllCookies" ((Object -> Parser NetworkGetAllCookies)
 -> Value -> Parser NetworkGetAllCookies)
-> (Object -> Parser NetworkGetAllCookies)
-> Value
-> Parser NetworkGetAllCookies
forall a b. (a -> b) -> a -> b
$ \Object
o -> [NetworkCookie] -> NetworkGetAllCookies
NetworkGetAllCookies
    ([NetworkCookie] -> NetworkGetAllCookies)
-> Parser [NetworkCookie] -> Parser NetworkGetAllCookies
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser [NetworkCookie]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"cookies"
instance Command PNetworkGetAllCookies where
  type CommandResponse PNetworkGetAllCookies = NetworkGetAllCookies
  commandName :: Proxy PNetworkGetAllCookies -> String
commandName Proxy PNetworkGetAllCookies
_ = String
"Network.getAllCookies"

-- | Returns the DER-encoded certificate.

-- | Parameters of the 'Network.getCertificate' command.
data PNetworkGetCertificate = PNetworkGetCertificate
  {
    -- | Origin to get certificate for.
    PNetworkGetCertificate -> Text
pNetworkGetCertificateOrigin :: T.Text
  }
  deriving (PNetworkGetCertificate -> PNetworkGetCertificate -> Bool
(PNetworkGetCertificate -> PNetworkGetCertificate -> Bool)
-> (PNetworkGetCertificate -> PNetworkGetCertificate -> Bool)
-> Eq PNetworkGetCertificate
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PNetworkGetCertificate -> PNetworkGetCertificate -> Bool
$c/= :: PNetworkGetCertificate -> PNetworkGetCertificate -> Bool
== :: PNetworkGetCertificate -> PNetworkGetCertificate -> Bool
$c== :: PNetworkGetCertificate -> PNetworkGetCertificate -> Bool
Eq, Int -> PNetworkGetCertificate -> ShowS
[PNetworkGetCertificate] -> ShowS
PNetworkGetCertificate -> String
(Int -> PNetworkGetCertificate -> ShowS)
-> (PNetworkGetCertificate -> String)
-> ([PNetworkGetCertificate] -> ShowS)
-> Show PNetworkGetCertificate
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PNetworkGetCertificate] -> ShowS
$cshowList :: [PNetworkGetCertificate] -> ShowS
show :: PNetworkGetCertificate -> String
$cshow :: PNetworkGetCertificate -> String
showsPrec :: Int -> PNetworkGetCertificate -> ShowS
$cshowsPrec :: Int -> PNetworkGetCertificate -> ShowS
Show)
pNetworkGetCertificate
  {-
  -- | Origin to get certificate for.
  -}
  :: T.Text
  -> PNetworkGetCertificate
pNetworkGetCertificate :: Text -> PNetworkGetCertificate
pNetworkGetCertificate
  Text
arg_pNetworkGetCertificateOrigin
  = Text -> PNetworkGetCertificate
PNetworkGetCertificate
    Text
arg_pNetworkGetCertificateOrigin
instance ToJSON PNetworkGetCertificate where
  toJSON :: PNetworkGetCertificate -> Value
toJSON PNetworkGetCertificate
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"origin" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PNetworkGetCertificate -> Text
pNetworkGetCertificateOrigin PNetworkGetCertificate
p)
    ]
data NetworkGetCertificate = NetworkGetCertificate
  {
    NetworkGetCertificate -> [Text]
networkGetCertificateTableNames :: [T.Text]
  }
  deriving (NetworkGetCertificate -> NetworkGetCertificate -> Bool
(NetworkGetCertificate -> NetworkGetCertificate -> Bool)
-> (NetworkGetCertificate -> NetworkGetCertificate -> Bool)
-> Eq NetworkGetCertificate
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkGetCertificate -> NetworkGetCertificate -> Bool
$c/= :: NetworkGetCertificate -> NetworkGetCertificate -> Bool
== :: NetworkGetCertificate -> NetworkGetCertificate -> Bool
$c== :: NetworkGetCertificate -> NetworkGetCertificate -> Bool
Eq, Int -> NetworkGetCertificate -> ShowS
[NetworkGetCertificate] -> ShowS
NetworkGetCertificate -> String
(Int -> NetworkGetCertificate -> ShowS)
-> (NetworkGetCertificate -> String)
-> ([NetworkGetCertificate] -> ShowS)
-> Show NetworkGetCertificate
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkGetCertificate] -> ShowS
$cshowList :: [NetworkGetCertificate] -> ShowS
show :: NetworkGetCertificate -> String
$cshow :: NetworkGetCertificate -> String
showsPrec :: Int -> NetworkGetCertificate -> ShowS
$cshowsPrec :: Int -> NetworkGetCertificate -> ShowS
Show)
instance FromJSON NetworkGetCertificate where
  parseJSON :: Value -> Parser NetworkGetCertificate
parseJSON = String
-> (Object -> Parser NetworkGetCertificate)
-> Value
-> Parser NetworkGetCertificate
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkGetCertificate" ((Object -> Parser NetworkGetCertificate)
 -> Value -> Parser NetworkGetCertificate)
-> (Object -> Parser NetworkGetCertificate)
-> Value
-> Parser NetworkGetCertificate
forall a b. (a -> b) -> a -> b
$ \Object
o -> [Text] -> NetworkGetCertificate
NetworkGetCertificate
    ([Text] -> NetworkGetCertificate)
-> Parser [Text] -> Parser NetworkGetCertificate
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser [Text]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"tableNames"
instance Command PNetworkGetCertificate where
  type CommandResponse PNetworkGetCertificate = NetworkGetCertificate
  commandName :: Proxy PNetworkGetCertificate -> String
commandName Proxy PNetworkGetCertificate
_ = String
"Network.getCertificate"

-- | Returns all browser cookies for the current URL. Depending on the backend support, will return
--   detailed cookie information in the `cookies` field.

-- | Parameters of the 'Network.getCookies' command.
data PNetworkGetCookies = PNetworkGetCookies
  {
    -- | The list of URLs for which applicable cookies will be fetched.
    --   If not specified, it's assumed to be set to the list containing
    --   the URLs of the page and all of its subframes.
    PNetworkGetCookies -> Maybe [Text]
pNetworkGetCookiesUrls :: Maybe [T.Text]
  }
  deriving (PNetworkGetCookies -> PNetworkGetCookies -> Bool
(PNetworkGetCookies -> PNetworkGetCookies -> Bool)
-> (PNetworkGetCookies -> PNetworkGetCookies -> Bool)
-> Eq PNetworkGetCookies
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PNetworkGetCookies -> PNetworkGetCookies -> Bool
$c/= :: PNetworkGetCookies -> PNetworkGetCookies -> Bool
== :: PNetworkGetCookies -> PNetworkGetCookies -> Bool
$c== :: PNetworkGetCookies -> PNetworkGetCookies -> Bool
Eq, Int -> PNetworkGetCookies -> ShowS
[PNetworkGetCookies] -> ShowS
PNetworkGetCookies -> String
(Int -> PNetworkGetCookies -> ShowS)
-> (PNetworkGetCookies -> String)
-> ([PNetworkGetCookies] -> ShowS)
-> Show PNetworkGetCookies
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PNetworkGetCookies] -> ShowS
$cshowList :: [PNetworkGetCookies] -> ShowS
show :: PNetworkGetCookies -> String
$cshow :: PNetworkGetCookies -> String
showsPrec :: Int -> PNetworkGetCookies -> ShowS
$cshowsPrec :: Int -> PNetworkGetCookies -> ShowS
Show)
pNetworkGetCookies
  :: PNetworkGetCookies
pNetworkGetCookies :: PNetworkGetCookies
pNetworkGetCookies
  = Maybe [Text] -> PNetworkGetCookies
PNetworkGetCookies
    Maybe [Text]
forall a. Maybe a
Nothing
instance ToJSON PNetworkGetCookies where
  toJSON :: PNetworkGetCookies -> Value
toJSON PNetworkGetCookies
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"urls" Text -> [Text] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([Text] -> Pair) -> Maybe [Text] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PNetworkGetCookies -> Maybe [Text]
pNetworkGetCookiesUrls PNetworkGetCookies
p)
    ]
data NetworkGetCookies = NetworkGetCookies
  {
    -- | Array of cookie objects.
    NetworkGetCookies -> [NetworkCookie]
networkGetCookiesCookies :: [NetworkCookie]
  }
  deriving (NetworkGetCookies -> NetworkGetCookies -> Bool
(NetworkGetCookies -> NetworkGetCookies -> Bool)
-> (NetworkGetCookies -> NetworkGetCookies -> Bool)
-> Eq NetworkGetCookies
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkGetCookies -> NetworkGetCookies -> Bool
$c/= :: NetworkGetCookies -> NetworkGetCookies -> Bool
== :: NetworkGetCookies -> NetworkGetCookies -> Bool
$c== :: NetworkGetCookies -> NetworkGetCookies -> Bool
Eq, Int -> NetworkGetCookies -> ShowS
[NetworkGetCookies] -> ShowS
NetworkGetCookies -> String
(Int -> NetworkGetCookies -> ShowS)
-> (NetworkGetCookies -> String)
-> ([NetworkGetCookies] -> ShowS)
-> Show NetworkGetCookies
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkGetCookies] -> ShowS
$cshowList :: [NetworkGetCookies] -> ShowS
show :: NetworkGetCookies -> String
$cshow :: NetworkGetCookies -> String
showsPrec :: Int -> NetworkGetCookies -> ShowS
$cshowsPrec :: Int -> NetworkGetCookies -> ShowS
Show)
instance FromJSON NetworkGetCookies where
  parseJSON :: Value -> Parser NetworkGetCookies
parseJSON = String
-> (Object -> Parser NetworkGetCookies)
-> Value
-> Parser NetworkGetCookies
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkGetCookies" ((Object -> Parser NetworkGetCookies)
 -> Value -> Parser NetworkGetCookies)
-> (Object -> Parser NetworkGetCookies)
-> Value
-> Parser NetworkGetCookies
forall a b. (a -> b) -> a -> b
$ \Object
o -> [NetworkCookie] -> NetworkGetCookies
NetworkGetCookies
    ([NetworkCookie] -> NetworkGetCookies)
-> Parser [NetworkCookie] -> Parser NetworkGetCookies
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser [NetworkCookie]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"cookies"
instance Command PNetworkGetCookies where
  type CommandResponse PNetworkGetCookies = NetworkGetCookies
  commandName :: Proxy PNetworkGetCookies -> String
commandName Proxy PNetworkGetCookies
_ = String
"Network.getCookies"

-- | Returns content served for the given request.

-- | Parameters of the 'Network.getResponseBody' command.
data PNetworkGetResponseBody = PNetworkGetResponseBody
  {
    -- | Identifier of the network request to get content for.
    PNetworkGetResponseBody -> Text
pNetworkGetResponseBodyRequestId :: NetworkRequestId
  }
  deriving (PNetworkGetResponseBody -> PNetworkGetResponseBody -> Bool
(PNetworkGetResponseBody -> PNetworkGetResponseBody -> Bool)
-> (PNetworkGetResponseBody -> PNetworkGetResponseBody -> Bool)
-> Eq PNetworkGetResponseBody
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PNetworkGetResponseBody -> PNetworkGetResponseBody -> Bool
$c/= :: PNetworkGetResponseBody -> PNetworkGetResponseBody -> Bool
== :: PNetworkGetResponseBody -> PNetworkGetResponseBody -> Bool
$c== :: PNetworkGetResponseBody -> PNetworkGetResponseBody -> Bool
Eq, Int -> PNetworkGetResponseBody -> ShowS
[PNetworkGetResponseBody] -> ShowS
PNetworkGetResponseBody -> String
(Int -> PNetworkGetResponseBody -> ShowS)
-> (PNetworkGetResponseBody -> String)
-> ([PNetworkGetResponseBody] -> ShowS)
-> Show PNetworkGetResponseBody
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PNetworkGetResponseBody] -> ShowS
$cshowList :: [PNetworkGetResponseBody] -> ShowS
show :: PNetworkGetResponseBody -> String
$cshow :: PNetworkGetResponseBody -> String
showsPrec :: Int -> PNetworkGetResponseBody -> ShowS
$cshowsPrec :: Int -> PNetworkGetResponseBody -> ShowS
Show)
pNetworkGetResponseBody
  {-
  -- | Identifier of the network request to get content for.
  -}
  :: NetworkRequestId
  -> PNetworkGetResponseBody
pNetworkGetResponseBody :: Text -> PNetworkGetResponseBody
pNetworkGetResponseBody
  Text
arg_pNetworkGetResponseBodyRequestId
  = Text -> PNetworkGetResponseBody
PNetworkGetResponseBody
    Text
arg_pNetworkGetResponseBodyRequestId
instance ToJSON PNetworkGetResponseBody where
  toJSON :: PNetworkGetResponseBody -> Value
toJSON PNetworkGetResponseBody
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"requestId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PNetworkGetResponseBody -> Text
pNetworkGetResponseBodyRequestId PNetworkGetResponseBody
p)
    ]
data NetworkGetResponseBody = NetworkGetResponseBody
  {
    -- | Response body.
    NetworkGetResponseBody -> Text
networkGetResponseBodyBody :: T.Text,
    -- | True, if content was sent as base64.
    NetworkGetResponseBody -> Bool
networkGetResponseBodyBase64Encoded :: Bool
  }
  deriving (NetworkGetResponseBody -> NetworkGetResponseBody -> Bool
(NetworkGetResponseBody -> NetworkGetResponseBody -> Bool)
-> (NetworkGetResponseBody -> NetworkGetResponseBody -> Bool)
-> Eq NetworkGetResponseBody
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkGetResponseBody -> NetworkGetResponseBody -> Bool
$c/= :: NetworkGetResponseBody -> NetworkGetResponseBody -> Bool
== :: NetworkGetResponseBody -> NetworkGetResponseBody -> Bool
$c== :: NetworkGetResponseBody -> NetworkGetResponseBody -> Bool
Eq, Int -> NetworkGetResponseBody -> ShowS
[NetworkGetResponseBody] -> ShowS
NetworkGetResponseBody -> String
(Int -> NetworkGetResponseBody -> ShowS)
-> (NetworkGetResponseBody -> String)
-> ([NetworkGetResponseBody] -> ShowS)
-> Show NetworkGetResponseBody
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkGetResponseBody] -> ShowS
$cshowList :: [NetworkGetResponseBody] -> ShowS
show :: NetworkGetResponseBody -> String
$cshow :: NetworkGetResponseBody -> String
showsPrec :: Int -> NetworkGetResponseBody -> ShowS
$cshowsPrec :: Int -> NetworkGetResponseBody -> ShowS
Show)
instance FromJSON NetworkGetResponseBody where
  parseJSON :: Value -> Parser NetworkGetResponseBody
parseJSON = String
-> (Object -> Parser NetworkGetResponseBody)
-> Value
-> Parser NetworkGetResponseBody
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkGetResponseBody" ((Object -> Parser NetworkGetResponseBody)
 -> Value -> Parser NetworkGetResponseBody)
-> (Object -> Parser NetworkGetResponseBody)
-> Value
-> Parser NetworkGetResponseBody
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> Bool -> NetworkGetResponseBody
NetworkGetResponseBody
    (Text -> Bool -> NetworkGetResponseBody)
-> Parser Text -> Parser (Bool -> NetworkGetResponseBody)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"body"
    Parser (Bool -> NetworkGetResponseBody)
-> Parser Bool -> Parser NetworkGetResponseBody
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Bool
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"base64Encoded"
instance Command PNetworkGetResponseBody where
  type CommandResponse PNetworkGetResponseBody = NetworkGetResponseBody
  commandName :: Proxy PNetworkGetResponseBody -> String
commandName Proxy PNetworkGetResponseBody
_ = String
"Network.getResponseBody"

-- | Returns post data sent with the request. Returns an error when no data was sent with the request.

-- | Parameters of the 'Network.getRequestPostData' command.
data PNetworkGetRequestPostData = PNetworkGetRequestPostData
  {
    -- | Identifier of the network request to get content for.
    PNetworkGetRequestPostData -> Text
pNetworkGetRequestPostDataRequestId :: NetworkRequestId
  }
  deriving (PNetworkGetRequestPostData -> PNetworkGetRequestPostData -> Bool
(PNetworkGetRequestPostData -> PNetworkGetRequestPostData -> Bool)
-> (PNetworkGetRequestPostData
    -> PNetworkGetRequestPostData -> Bool)
-> Eq PNetworkGetRequestPostData
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PNetworkGetRequestPostData -> PNetworkGetRequestPostData -> Bool
$c/= :: PNetworkGetRequestPostData -> PNetworkGetRequestPostData -> Bool
== :: PNetworkGetRequestPostData -> PNetworkGetRequestPostData -> Bool
$c== :: PNetworkGetRequestPostData -> PNetworkGetRequestPostData -> Bool
Eq, Int -> PNetworkGetRequestPostData -> ShowS
[PNetworkGetRequestPostData] -> ShowS
PNetworkGetRequestPostData -> String
(Int -> PNetworkGetRequestPostData -> ShowS)
-> (PNetworkGetRequestPostData -> String)
-> ([PNetworkGetRequestPostData] -> ShowS)
-> Show PNetworkGetRequestPostData
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PNetworkGetRequestPostData] -> ShowS
$cshowList :: [PNetworkGetRequestPostData] -> ShowS
show :: PNetworkGetRequestPostData -> String
$cshow :: PNetworkGetRequestPostData -> String
showsPrec :: Int -> PNetworkGetRequestPostData -> ShowS
$cshowsPrec :: Int -> PNetworkGetRequestPostData -> ShowS
Show)
pNetworkGetRequestPostData
  {-
  -- | Identifier of the network request to get content for.
  -}
  :: NetworkRequestId
  -> PNetworkGetRequestPostData
pNetworkGetRequestPostData :: Text -> PNetworkGetRequestPostData
pNetworkGetRequestPostData
  Text
arg_pNetworkGetRequestPostDataRequestId
  = Text -> PNetworkGetRequestPostData
PNetworkGetRequestPostData
    Text
arg_pNetworkGetRequestPostDataRequestId
instance ToJSON PNetworkGetRequestPostData where
  toJSON :: PNetworkGetRequestPostData -> Value
toJSON PNetworkGetRequestPostData
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"requestId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PNetworkGetRequestPostData -> Text
pNetworkGetRequestPostDataRequestId PNetworkGetRequestPostData
p)
    ]
data NetworkGetRequestPostData = NetworkGetRequestPostData
  {
    -- | Request body string, omitting files from multipart requests
    NetworkGetRequestPostData -> Text
networkGetRequestPostDataPostData :: T.Text
  }
  deriving (NetworkGetRequestPostData -> NetworkGetRequestPostData -> Bool
(NetworkGetRequestPostData -> NetworkGetRequestPostData -> Bool)
-> (NetworkGetRequestPostData -> NetworkGetRequestPostData -> Bool)
-> Eq NetworkGetRequestPostData
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkGetRequestPostData -> NetworkGetRequestPostData -> Bool
$c/= :: NetworkGetRequestPostData -> NetworkGetRequestPostData -> Bool
== :: NetworkGetRequestPostData -> NetworkGetRequestPostData -> Bool
$c== :: NetworkGetRequestPostData -> NetworkGetRequestPostData -> Bool
Eq, Int -> NetworkGetRequestPostData -> ShowS
[NetworkGetRequestPostData] -> ShowS
NetworkGetRequestPostData -> String
(Int -> NetworkGetRequestPostData -> ShowS)
-> (NetworkGetRequestPostData -> String)
-> ([NetworkGetRequestPostData] -> ShowS)
-> Show NetworkGetRequestPostData
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkGetRequestPostData] -> ShowS
$cshowList :: [NetworkGetRequestPostData] -> ShowS
show :: NetworkGetRequestPostData -> String
$cshow :: NetworkGetRequestPostData -> String
showsPrec :: Int -> NetworkGetRequestPostData -> ShowS
$cshowsPrec :: Int -> NetworkGetRequestPostData -> ShowS
Show)
instance FromJSON NetworkGetRequestPostData where
  parseJSON :: Value -> Parser NetworkGetRequestPostData
parseJSON = String
-> (Object -> Parser NetworkGetRequestPostData)
-> Value
-> Parser NetworkGetRequestPostData
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkGetRequestPostData" ((Object -> Parser NetworkGetRequestPostData)
 -> Value -> Parser NetworkGetRequestPostData)
-> (Object -> Parser NetworkGetRequestPostData)
-> Value
-> Parser NetworkGetRequestPostData
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> NetworkGetRequestPostData
NetworkGetRequestPostData
    (Text -> NetworkGetRequestPostData)
-> Parser Text -> Parser NetworkGetRequestPostData
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"postData"
instance Command PNetworkGetRequestPostData where
  type CommandResponse PNetworkGetRequestPostData = NetworkGetRequestPostData
  commandName :: Proxy PNetworkGetRequestPostData -> String
commandName Proxy PNetworkGetRequestPostData
_ = String
"Network.getRequestPostData"

-- | Returns content served for the given currently intercepted request.

-- | Parameters of the 'Network.getResponseBodyForInterception' command.
data PNetworkGetResponseBodyForInterception = PNetworkGetResponseBodyForInterception
  {
    -- | Identifier for the intercepted request to get body for.
    PNetworkGetResponseBodyForInterception -> Text
pNetworkGetResponseBodyForInterceptionInterceptionId :: NetworkInterceptionId
  }
  deriving (PNetworkGetResponseBodyForInterception
-> PNetworkGetResponseBodyForInterception -> Bool
(PNetworkGetResponseBodyForInterception
 -> PNetworkGetResponseBodyForInterception -> Bool)
-> (PNetworkGetResponseBodyForInterception
    -> PNetworkGetResponseBodyForInterception -> Bool)
-> Eq PNetworkGetResponseBodyForInterception
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PNetworkGetResponseBodyForInterception
-> PNetworkGetResponseBodyForInterception -> Bool
$c/= :: PNetworkGetResponseBodyForInterception
-> PNetworkGetResponseBodyForInterception -> Bool
== :: PNetworkGetResponseBodyForInterception
-> PNetworkGetResponseBodyForInterception -> Bool
$c== :: PNetworkGetResponseBodyForInterception
-> PNetworkGetResponseBodyForInterception -> Bool
Eq, Int -> PNetworkGetResponseBodyForInterception -> ShowS
[PNetworkGetResponseBodyForInterception] -> ShowS
PNetworkGetResponseBodyForInterception -> String
(Int -> PNetworkGetResponseBodyForInterception -> ShowS)
-> (PNetworkGetResponseBodyForInterception -> String)
-> ([PNetworkGetResponseBodyForInterception] -> ShowS)
-> Show PNetworkGetResponseBodyForInterception
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PNetworkGetResponseBodyForInterception] -> ShowS
$cshowList :: [PNetworkGetResponseBodyForInterception] -> ShowS
show :: PNetworkGetResponseBodyForInterception -> String
$cshow :: PNetworkGetResponseBodyForInterception -> String
showsPrec :: Int -> PNetworkGetResponseBodyForInterception -> ShowS
$cshowsPrec :: Int -> PNetworkGetResponseBodyForInterception -> ShowS
Show)
pNetworkGetResponseBodyForInterception
  {-
  -- | Identifier for the intercepted request to get body for.
  -}
  :: NetworkInterceptionId
  -> PNetworkGetResponseBodyForInterception
pNetworkGetResponseBodyForInterception :: Text -> PNetworkGetResponseBodyForInterception
pNetworkGetResponseBodyForInterception
  Text
arg_pNetworkGetResponseBodyForInterceptionInterceptionId
  = Text -> PNetworkGetResponseBodyForInterception
PNetworkGetResponseBodyForInterception
    Text
arg_pNetworkGetResponseBodyForInterceptionInterceptionId
instance ToJSON PNetworkGetResponseBodyForInterception where
  toJSON :: PNetworkGetResponseBodyForInterception -> Value
toJSON PNetworkGetResponseBodyForInterception
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"interceptionId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PNetworkGetResponseBodyForInterception -> Text
pNetworkGetResponseBodyForInterceptionInterceptionId PNetworkGetResponseBodyForInterception
p)
    ]
data NetworkGetResponseBodyForInterception = NetworkGetResponseBodyForInterception
  {
    -- | Response body.
    NetworkGetResponseBodyForInterception -> Text
networkGetResponseBodyForInterceptionBody :: T.Text,
    -- | True, if content was sent as base64.
    NetworkGetResponseBodyForInterception -> Bool
networkGetResponseBodyForInterceptionBase64Encoded :: Bool
  }
  deriving (NetworkGetResponseBodyForInterception
-> NetworkGetResponseBodyForInterception -> Bool
(NetworkGetResponseBodyForInterception
 -> NetworkGetResponseBodyForInterception -> Bool)
-> (NetworkGetResponseBodyForInterception
    -> NetworkGetResponseBodyForInterception -> Bool)
-> Eq NetworkGetResponseBodyForInterception
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkGetResponseBodyForInterception
-> NetworkGetResponseBodyForInterception -> Bool
$c/= :: NetworkGetResponseBodyForInterception
-> NetworkGetResponseBodyForInterception -> Bool
== :: NetworkGetResponseBodyForInterception
-> NetworkGetResponseBodyForInterception -> Bool
$c== :: NetworkGetResponseBodyForInterception
-> NetworkGetResponseBodyForInterception -> Bool
Eq, Int -> NetworkGetResponseBodyForInterception -> ShowS
[NetworkGetResponseBodyForInterception] -> ShowS
NetworkGetResponseBodyForInterception -> String
(Int -> NetworkGetResponseBodyForInterception -> ShowS)
-> (NetworkGetResponseBodyForInterception -> String)
-> ([NetworkGetResponseBodyForInterception] -> ShowS)
-> Show NetworkGetResponseBodyForInterception
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkGetResponseBodyForInterception] -> ShowS
$cshowList :: [NetworkGetResponseBodyForInterception] -> ShowS
show :: NetworkGetResponseBodyForInterception -> String
$cshow :: NetworkGetResponseBodyForInterception -> String
showsPrec :: Int -> NetworkGetResponseBodyForInterception -> ShowS
$cshowsPrec :: Int -> NetworkGetResponseBodyForInterception -> ShowS
Show)
instance FromJSON NetworkGetResponseBodyForInterception where
  parseJSON :: Value -> Parser NetworkGetResponseBodyForInterception
parseJSON = String
-> (Object -> Parser NetworkGetResponseBodyForInterception)
-> Value
-> Parser NetworkGetResponseBodyForInterception
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkGetResponseBodyForInterception" ((Object -> Parser NetworkGetResponseBodyForInterception)
 -> Value -> Parser NetworkGetResponseBodyForInterception)
-> (Object -> Parser NetworkGetResponseBodyForInterception)
-> Value
-> Parser NetworkGetResponseBodyForInterception
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> Bool -> NetworkGetResponseBodyForInterception
NetworkGetResponseBodyForInterception
    (Text -> Bool -> NetworkGetResponseBodyForInterception)
-> Parser Text
-> Parser (Bool -> NetworkGetResponseBodyForInterception)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"body"
    Parser (Bool -> NetworkGetResponseBodyForInterception)
-> Parser Bool -> Parser NetworkGetResponseBodyForInterception
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Bool
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"base64Encoded"
instance Command PNetworkGetResponseBodyForInterception where
  type CommandResponse PNetworkGetResponseBodyForInterception = NetworkGetResponseBodyForInterception
  commandName :: Proxy PNetworkGetResponseBodyForInterception -> String
commandName Proxy PNetworkGetResponseBodyForInterception
_ = String
"Network.getResponseBodyForInterception"

-- | Returns a handle to the stream representing the response body. Note that after this command,
--   the intercepted request can't be continued as is -- you either need to cancel it or to provide
--   the response body. The stream only supports sequential read, IO.read will fail if the position
--   is specified.

-- | Parameters of the 'Network.takeResponseBodyForInterceptionAsStream' command.
data PNetworkTakeResponseBodyForInterceptionAsStream = PNetworkTakeResponseBodyForInterceptionAsStream
  {
    PNetworkTakeResponseBodyForInterceptionAsStream -> Text
pNetworkTakeResponseBodyForInterceptionAsStreamInterceptionId :: NetworkInterceptionId
  }
  deriving (PNetworkTakeResponseBodyForInterceptionAsStream
-> PNetworkTakeResponseBodyForInterceptionAsStream -> Bool
(PNetworkTakeResponseBodyForInterceptionAsStream
 -> PNetworkTakeResponseBodyForInterceptionAsStream -> Bool)
-> (PNetworkTakeResponseBodyForInterceptionAsStream
    -> PNetworkTakeResponseBodyForInterceptionAsStream -> Bool)
-> Eq PNetworkTakeResponseBodyForInterceptionAsStream
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PNetworkTakeResponseBodyForInterceptionAsStream
-> PNetworkTakeResponseBodyForInterceptionAsStream -> Bool
$c/= :: PNetworkTakeResponseBodyForInterceptionAsStream
-> PNetworkTakeResponseBodyForInterceptionAsStream -> Bool
== :: PNetworkTakeResponseBodyForInterceptionAsStream
-> PNetworkTakeResponseBodyForInterceptionAsStream -> Bool
$c== :: PNetworkTakeResponseBodyForInterceptionAsStream
-> PNetworkTakeResponseBodyForInterceptionAsStream -> Bool
Eq, Int -> PNetworkTakeResponseBodyForInterceptionAsStream -> ShowS
[PNetworkTakeResponseBodyForInterceptionAsStream] -> ShowS
PNetworkTakeResponseBodyForInterceptionAsStream -> String
(Int -> PNetworkTakeResponseBodyForInterceptionAsStream -> ShowS)
-> (PNetworkTakeResponseBodyForInterceptionAsStream -> String)
-> ([PNetworkTakeResponseBodyForInterceptionAsStream] -> ShowS)
-> Show PNetworkTakeResponseBodyForInterceptionAsStream
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PNetworkTakeResponseBodyForInterceptionAsStream] -> ShowS
$cshowList :: [PNetworkTakeResponseBodyForInterceptionAsStream] -> ShowS
show :: PNetworkTakeResponseBodyForInterceptionAsStream -> String
$cshow :: PNetworkTakeResponseBodyForInterceptionAsStream -> String
showsPrec :: Int -> PNetworkTakeResponseBodyForInterceptionAsStream -> ShowS
$cshowsPrec :: Int -> PNetworkTakeResponseBodyForInterceptionAsStream -> ShowS
Show)
pNetworkTakeResponseBodyForInterceptionAsStream
  :: NetworkInterceptionId
  -> PNetworkTakeResponseBodyForInterceptionAsStream
pNetworkTakeResponseBodyForInterceptionAsStream :: Text -> PNetworkTakeResponseBodyForInterceptionAsStream
pNetworkTakeResponseBodyForInterceptionAsStream
  Text
arg_pNetworkTakeResponseBodyForInterceptionAsStreamInterceptionId
  = Text -> PNetworkTakeResponseBodyForInterceptionAsStream
PNetworkTakeResponseBodyForInterceptionAsStream
    Text
arg_pNetworkTakeResponseBodyForInterceptionAsStreamInterceptionId
instance ToJSON PNetworkTakeResponseBodyForInterceptionAsStream where
  toJSON :: PNetworkTakeResponseBodyForInterceptionAsStream -> Value
toJSON PNetworkTakeResponseBodyForInterceptionAsStream
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"interceptionId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PNetworkTakeResponseBodyForInterceptionAsStream -> Text
pNetworkTakeResponseBodyForInterceptionAsStreamInterceptionId PNetworkTakeResponseBodyForInterceptionAsStream
p)
    ]
data NetworkTakeResponseBodyForInterceptionAsStream = NetworkTakeResponseBodyForInterceptionAsStream
  {
    NetworkTakeResponseBodyForInterceptionAsStream -> Text
networkTakeResponseBodyForInterceptionAsStreamStream :: IO.IOStreamHandle
  }
  deriving (NetworkTakeResponseBodyForInterceptionAsStream
-> NetworkTakeResponseBodyForInterceptionAsStream -> Bool
(NetworkTakeResponseBodyForInterceptionAsStream
 -> NetworkTakeResponseBodyForInterceptionAsStream -> Bool)
-> (NetworkTakeResponseBodyForInterceptionAsStream
    -> NetworkTakeResponseBodyForInterceptionAsStream -> Bool)
-> Eq NetworkTakeResponseBodyForInterceptionAsStream
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkTakeResponseBodyForInterceptionAsStream
-> NetworkTakeResponseBodyForInterceptionAsStream -> Bool
$c/= :: NetworkTakeResponseBodyForInterceptionAsStream
-> NetworkTakeResponseBodyForInterceptionAsStream -> Bool
== :: NetworkTakeResponseBodyForInterceptionAsStream
-> NetworkTakeResponseBodyForInterceptionAsStream -> Bool
$c== :: NetworkTakeResponseBodyForInterceptionAsStream
-> NetworkTakeResponseBodyForInterceptionAsStream -> Bool
Eq, Int -> NetworkTakeResponseBodyForInterceptionAsStream -> ShowS
[NetworkTakeResponseBodyForInterceptionAsStream] -> ShowS
NetworkTakeResponseBodyForInterceptionAsStream -> String
(Int -> NetworkTakeResponseBodyForInterceptionAsStream -> ShowS)
-> (NetworkTakeResponseBodyForInterceptionAsStream -> String)
-> ([NetworkTakeResponseBodyForInterceptionAsStream] -> ShowS)
-> Show NetworkTakeResponseBodyForInterceptionAsStream
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkTakeResponseBodyForInterceptionAsStream] -> ShowS
$cshowList :: [NetworkTakeResponseBodyForInterceptionAsStream] -> ShowS
show :: NetworkTakeResponseBodyForInterceptionAsStream -> String
$cshow :: NetworkTakeResponseBodyForInterceptionAsStream -> String
showsPrec :: Int -> NetworkTakeResponseBodyForInterceptionAsStream -> ShowS
$cshowsPrec :: Int -> NetworkTakeResponseBodyForInterceptionAsStream -> ShowS
Show)
instance FromJSON NetworkTakeResponseBodyForInterceptionAsStream where
  parseJSON :: Value -> Parser NetworkTakeResponseBodyForInterceptionAsStream
parseJSON = String
-> (Object
    -> Parser NetworkTakeResponseBodyForInterceptionAsStream)
-> Value
-> Parser NetworkTakeResponseBodyForInterceptionAsStream
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkTakeResponseBodyForInterceptionAsStream" ((Object -> Parser NetworkTakeResponseBodyForInterceptionAsStream)
 -> Value -> Parser NetworkTakeResponseBodyForInterceptionAsStream)
-> (Object
    -> Parser NetworkTakeResponseBodyForInterceptionAsStream)
-> Value
-> Parser NetworkTakeResponseBodyForInterceptionAsStream
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> NetworkTakeResponseBodyForInterceptionAsStream
NetworkTakeResponseBodyForInterceptionAsStream
    (Text -> NetworkTakeResponseBodyForInterceptionAsStream)
-> Parser Text
-> Parser NetworkTakeResponseBodyForInterceptionAsStream
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"stream"
instance Command PNetworkTakeResponseBodyForInterceptionAsStream where
  type CommandResponse PNetworkTakeResponseBodyForInterceptionAsStream = NetworkTakeResponseBodyForInterceptionAsStream
  commandName :: Proxy PNetworkTakeResponseBodyForInterceptionAsStream -> String
commandName Proxy PNetworkTakeResponseBodyForInterceptionAsStream
_ = String
"Network.takeResponseBodyForInterceptionAsStream"

-- | This method sends a new XMLHttpRequest which is identical to the original one. The following
--   parameters should be identical: method, url, async, request body, extra headers, withCredentials
--   attribute, user, password.

-- | Parameters of the 'Network.replayXHR' command.
data PNetworkReplayXHR = PNetworkReplayXHR
  {
    -- | Identifier of XHR to replay.
    PNetworkReplayXHR -> Text
pNetworkReplayXHRRequestId :: NetworkRequestId
  }
  deriving (PNetworkReplayXHR -> PNetworkReplayXHR -> Bool
(PNetworkReplayXHR -> PNetworkReplayXHR -> Bool)
-> (PNetworkReplayXHR -> PNetworkReplayXHR -> Bool)
-> Eq PNetworkReplayXHR
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PNetworkReplayXHR -> PNetworkReplayXHR -> Bool
$c/= :: PNetworkReplayXHR -> PNetworkReplayXHR -> Bool
== :: PNetworkReplayXHR -> PNetworkReplayXHR -> Bool
$c== :: PNetworkReplayXHR -> PNetworkReplayXHR -> Bool
Eq, Int -> PNetworkReplayXHR -> ShowS
[PNetworkReplayXHR] -> ShowS
PNetworkReplayXHR -> String
(Int -> PNetworkReplayXHR -> ShowS)
-> (PNetworkReplayXHR -> String)
-> ([PNetworkReplayXHR] -> ShowS)
-> Show PNetworkReplayXHR
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PNetworkReplayXHR] -> ShowS
$cshowList :: [PNetworkReplayXHR] -> ShowS
show :: PNetworkReplayXHR -> String
$cshow :: PNetworkReplayXHR -> String
showsPrec :: Int -> PNetworkReplayXHR -> ShowS
$cshowsPrec :: Int -> PNetworkReplayXHR -> ShowS
Show)
pNetworkReplayXHR
  {-
  -- | Identifier of XHR to replay.
  -}
  :: NetworkRequestId
  -> PNetworkReplayXHR
pNetworkReplayXHR :: Text -> PNetworkReplayXHR
pNetworkReplayXHR
  Text
arg_pNetworkReplayXHRRequestId
  = Text -> PNetworkReplayXHR
PNetworkReplayXHR
    Text
arg_pNetworkReplayXHRRequestId
instance ToJSON PNetworkReplayXHR where
  toJSON :: PNetworkReplayXHR -> Value
toJSON PNetworkReplayXHR
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"requestId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PNetworkReplayXHR -> Text
pNetworkReplayXHRRequestId PNetworkReplayXHR
p)
    ]
instance Command PNetworkReplayXHR where
  type CommandResponse PNetworkReplayXHR = ()
  commandName :: Proxy PNetworkReplayXHR -> String
commandName Proxy PNetworkReplayXHR
_ = String
"Network.replayXHR"
  fromJSON :: Proxy PNetworkReplayXHR
-> Value -> Result (CommandResponse PNetworkReplayXHR)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PNetworkReplayXHR -> Result ())
-> Proxy PNetworkReplayXHR
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PNetworkReplayXHR -> ())
-> Proxy PNetworkReplayXHR
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PNetworkReplayXHR -> ()
forall a b. a -> b -> a
const ()

-- | Searches for given string in response content.

-- | Parameters of the 'Network.searchInResponseBody' command.
data PNetworkSearchInResponseBody = PNetworkSearchInResponseBody
  {
    -- | Identifier of the network response to search.
    PNetworkSearchInResponseBody -> Text
pNetworkSearchInResponseBodyRequestId :: NetworkRequestId,
    -- | String to search for.
    PNetworkSearchInResponseBody -> Text
pNetworkSearchInResponseBodyQuery :: T.Text,
    -- | If true, search is case sensitive.
    PNetworkSearchInResponseBody -> Maybe Bool
pNetworkSearchInResponseBodyCaseSensitive :: Maybe Bool,
    -- | If true, treats string parameter as regex.
    PNetworkSearchInResponseBody -> Maybe Bool
pNetworkSearchInResponseBodyIsRegex :: Maybe Bool
  }
  deriving (PNetworkSearchInResponseBody
-> PNetworkSearchInResponseBody -> Bool
(PNetworkSearchInResponseBody
 -> PNetworkSearchInResponseBody -> Bool)
-> (PNetworkSearchInResponseBody
    -> PNetworkSearchInResponseBody -> Bool)
-> Eq PNetworkSearchInResponseBody
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PNetworkSearchInResponseBody
-> PNetworkSearchInResponseBody -> Bool
$c/= :: PNetworkSearchInResponseBody
-> PNetworkSearchInResponseBody -> Bool
== :: PNetworkSearchInResponseBody
-> PNetworkSearchInResponseBody -> Bool
$c== :: PNetworkSearchInResponseBody
-> PNetworkSearchInResponseBody -> Bool
Eq, Int -> PNetworkSearchInResponseBody -> ShowS
[PNetworkSearchInResponseBody] -> ShowS
PNetworkSearchInResponseBody -> String
(Int -> PNetworkSearchInResponseBody -> ShowS)
-> (PNetworkSearchInResponseBody -> String)
-> ([PNetworkSearchInResponseBody] -> ShowS)
-> Show PNetworkSearchInResponseBody
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PNetworkSearchInResponseBody] -> ShowS
$cshowList :: [PNetworkSearchInResponseBody] -> ShowS
show :: PNetworkSearchInResponseBody -> String
$cshow :: PNetworkSearchInResponseBody -> String
showsPrec :: Int -> PNetworkSearchInResponseBody -> ShowS
$cshowsPrec :: Int -> PNetworkSearchInResponseBody -> ShowS
Show)
pNetworkSearchInResponseBody
  {-
  -- | Identifier of the network response to search.
  -}
  :: NetworkRequestId
  {-
  -- | String to search for.
  -}
  -> T.Text
  -> PNetworkSearchInResponseBody
pNetworkSearchInResponseBody :: Text -> Text -> PNetworkSearchInResponseBody
pNetworkSearchInResponseBody
  Text
arg_pNetworkSearchInResponseBodyRequestId
  Text
arg_pNetworkSearchInResponseBodyQuery
  = Text
-> Text -> Maybe Bool -> Maybe Bool -> PNetworkSearchInResponseBody
PNetworkSearchInResponseBody
    Text
arg_pNetworkSearchInResponseBodyRequestId
    Text
arg_pNetworkSearchInResponseBodyQuery
    Maybe Bool
forall a. Maybe a
Nothing
    Maybe Bool
forall a. Maybe a
Nothing
instance ToJSON PNetworkSearchInResponseBody where
  toJSON :: PNetworkSearchInResponseBody -> Value
toJSON PNetworkSearchInResponseBody
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"requestId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PNetworkSearchInResponseBody -> Text
pNetworkSearchInResponseBodyRequestId PNetworkSearchInResponseBody
p),
    (Text
"query" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PNetworkSearchInResponseBody -> Text
pNetworkSearchInResponseBodyQuery PNetworkSearchInResponseBody
p),
    (Text
"caseSensitive" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PNetworkSearchInResponseBody -> Maybe Bool
pNetworkSearchInResponseBodyCaseSensitive PNetworkSearchInResponseBody
p),
    (Text
"isRegex" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PNetworkSearchInResponseBody -> Maybe Bool
pNetworkSearchInResponseBodyIsRegex PNetworkSearchInResponseBody
p)
    ]
data NetworkSearchInResponseBody = NetworkSearchInResponseBody
  {
    -- | List of search matches.
    NetworkSearchInResponseBody -> [DebuggerSearchMatch]
networkSearchInResponseBodyResult :: [Debugger.DebuggerSearchMatch]
  }
  deriving (NetworkSearchInResponseBody -> NetworkSearchInResponseBody -> Bool
(NetworkSearchInResponseBody
 -> NetworkSearchInResponseBody -> Bool)
-> (NetworkSearchInResponseBody
    -> NetworkSearchInResponseBody -> Bool)
-> Eq NetworkSearchInResponseBody
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkSearchInResponseBody -> NetworkSearchInResponseBody -> Bool
$c/= :: NetworkSearchInResponseBody -> NetworkSearchInResponseBody -> Bool
== :: NetworkSearchInResponseBody -> NetworkSearchInResponseBody -> Bool
$c== :: NetworkSearchInResponseBody -> NetworkSearchInResponseBody -> Bool
Eq, Int -> NetworkSearchInResponseBody -> ShowS
[NetworkSearchInResponseBody] -> ShowS
NetworkSearchInResponseBody -> String
(Int -> NetworkSearchInResponseBody -> ShowS)
-> (NetworkSearchInResponseBody -> String)
-> ([NetworkSearchInResponseBody] -> ShowS)
-> Show NetworkSearchInResponseBody
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkSearchInResponseBody] -> ShowS
$cshowList :: [NetworkSearchInResponseBody] -> ShowS
show :: NetworkSearchInResponseBody -> String
$cshow :: NetworkSearchInResponseBody -> String
showsPrec :: Int -> NetworkSearchInResponseBody -> ShowS
$cshowsPrec :: Int -> NetworkSearchInResponseBody -> ShowS
Show)
instance FromJSON NetworkSearchInResponseBody where
  parseJSON :: Value -> Parser NetworkSearchInResponseBody
parseJSON = String
-> (Object -> Parser NetworkSearchInResponseBody)
-> Value
-> Parser NetworkSearchInResponseBody
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkSearchInResponseBody" ((Object -> Parser NetworkSearchInResponseBody)
 -> Value -> Parser NetworkSearchInResponseBody)
-> (Object -> Parser NetworkSearchInResponseBody)
-> Value
-> Parser NetworkSearchInResponseBody
forall a b. (a -> b) -> a -> b
$ \Object
o -> [DebuggerSearchMatch] -> NetworkSearchInResponseBody
NetworkSearchInResponseBody
    ([DebuggerSearchMatch] -> NetworkSearchInResponseBody)
-> Parser [DebuggerSearchMatch]
-> Parser NetworkSearchInResponseBody
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser [DebuggerSearchMatch]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"result"
instance Command PNetworkSearchInResponseBody where
  type CommandResponse PNetworkSearchInResponseBody = NetworkSearchInResponseBody
  commandName :: Proxy PNetworkSearchInResponseBody -> String
commandName Proxy PNetworkSearchInResponseBody
_ = String
"Network.searchInResponseBody"

-- | Blocks URLs from loading.

-- | Parameters of the 'Network.setBlockedURLs' command.
data PNetworkSetBlockedURLs = PNetworkSetBlockedURLs
  {
    -- | URL patterns to block. Wildcards ('*') are allowed.
    PNetworkSetBlockedURLs -> [Text]
pNetworkSetBlockedURLsUrls :: [T.Text]
  }
  deriving (PNetworkSetBlockedURLs -> PNetworkSetBlockedURLs -> Bool
(PNetworkSetBlockedURLs -> PNetworkSetBlockedURLs -> Bool)
-> (PNetworkSetBlockedURLs -> PNetworkSetBlockedURLs -> Bool)
-> Eq PNetworkSetBlockedURLs
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PNetworkSetBlockedURLs -> PNetworkSetBlockedURLs -> Bool
$c/= :: PNetworkSetBlockedURLs -> PNetworkSetBlockedURLs -> Bool
== :: PNetworkSetBlockedURLs -> PNetworkSetBlockedURLs -> Bool
$c== :: PNetworkSetBlockedURLs -> PNetworkSetBlockedURLs -> Bool
Eq, Int -> PNetworkSetBlockedURLs -> ShowS
[PNetworkSetBlockedURLs] -> ShowS
PNetworkSetBlockedURLs -> String
(Int -> PNetworkSetBlockedURLs -> ShowS)
-> (PNetworkSetBlockedURLs -> String)
-> ([PNetworkSetBlockedURLs] -> ShowS)
-> Show PNetworkSetBlockedURLs
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PNetworkSetBlockedURLs] -> ShowS
$cshowList :: [PNetworkSetBlockedURLs] -> ShowS
show :: PNetworkSetBlockedURLs -> String
$cshow :: PNetworkSetBlockedURLs -> String
showsPrec :: Int -> PNetworkSetBlockedURLs -> ShowS
$cshowsPrec :: Int -> PNetworkSetBlockedURLs -> ShowS
Show)
pNetworkSetBlockedURLs
  {-
  -- | URL patterns to block. Wildcards ('*') are allowed.
  -}
  :: [T.Text]
  -> PNetworkSetBlockedURLs
pNetworkSetBlockedURLs :: [Text] -> PNetworkSetBlockedURLs
pNetworkSetBlockedURLs
  [Text]
arg_pNetworkSetBlockedURLsUrls
  = [Text] -> PNetworkSetBlockedURLs
PNetworkSetBlockedURLs
    [Text]
arg_pNetworkSetBlockedURLsUrls
instance ToJSON PNetworkSetBlockedURLs where
  toJSON :: PNetworkSetBlockedURLs -> Value
toJSON PNetworkSetBlockedURLs
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"urls" Text -> [Text] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([Text] -> Pair) -> Maybe [Text] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> [Text] -> Maybe [Text]
forall a. a -> Maybe a
Just (PNetworkSetBlockedURLs -> [Text]
pNetworkSetBlockedURLsUrls PNetworkSetBlockedURLs
p)
    ]
instance Command PNetworkSetBlockedURLs where
  type CommandResponse PNetworkSetBlockedURLs = ()
  commandName :: Proxy PNetworkSetBlockedURLs -> String
commandName Proxy PNetworkSetBlockedURLs
_ = String
"Network.setBlockedURLs"
  fromJSON :: Proxy PNetworkSetBlockedURLs
-> Value -> Result (CommandResponse PNetworkSetBlockedURLs)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PNetworkSetBlockedURLs -> Result ())
-> Proxy PNetworkSetBlockedURLs
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PNetworkSetBlockedURLs -> ())
-> Proxy PNetworkSetBlockedURLs
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PNetworkSetBlockedURLs -> ()
forall a b. a -> b -> a
const ()

-- | Toggles ignoring of service worker for each request.

-- | Parameters of the 'Network.setBypassServiceWorker' command.
data PNetworkSetBypassServiceWorker = PNetworkSetBypassServiceWorker
  {
    -- | Bypass service worker and load from network.
    PNetworkSetBypassServiceWorker -> Bool
pNetworkSetBypassServiceWorkerBypass :: Bool
  }
  deriving (PNetworkSetBypassServiceWorker
-> PNetworkSetBypassServiceWorker -> Bool
(PNetworkSetBypassServiceWorker
 -> PNetworkSetBypassServiceWorker -> Bool)
-> (PNetworkSetBypassServiceWorker
    -> PNetworkSetBypassServiceWorker -> Bool)
-> Eq PNetworkSetBypassServiceWorker
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PNetworkSetBypassServiceWorker
-> PNetworkSetBypassServiceWorker -> Bool
$c/= :: PNetworkSetBypassServiceWorker
-> PNetworkSetBypassServiceWorker -> Bool
== :: PNetworkSetBypassServiceWorker
-> PNetworkSetBypassServiceWorker -> Bool
$c== :: PNetworkSetBypassServiceWorker
-> PNetworkSetBypassServiceWorker -> Bool
Eq, Int -> PNetworkSetBypassServiceWorker -> ShowS
[PNetworkSetBypassServiceWorker] -> ShowS
PNetworkSetBypassServiceWorker -> String
(Int -> PNetworkSetBypassServiceWorker -> ShowS)
-> (PNetworkSetBypassServiceWorker -> String)
-> ([PNetworkSetBypassServiceWorker] -> ShowS)
-> Show PNetworkSetBypassServiceWorker
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PNetworkSetBypassServiceWorker] -> ShowS
$cshowList :: [PNetworkSetBypassServiceWorker] -> ShowS
show :: PNetworkSetBypassServiceWorker -> String
$cshow :: PNetworkSetBypassServiceWorker -> String
showsPrec :: Int -> PNetworkSetBypassServiceWorker -> ShowS
$cshowsPrec :: Int -> PNetworkSetBypassServiceWorker -> ShowS
Show)
pNetworkSetBypassServiceWorker
  {-
  -- | Bypass service worker and load from network.
  -}
  :: Bool
  -> PNetworkSetBypassServiceWorker
pNetworkSetBypassServiceWorker :: Bool -> PNetworkSetBypassServiceWorker
pNetworkSetBypassServiceWorker
  Bool
arg_pNetworkSetBypassServiceWorkerBypass
  = Bool -> PNetworkSetBypassServiceWorker
PNetworkSetBypassServiceWorker
    Bool
arg_pNetworkSetBypassServiceWorkerBypass
instance ToJSON PNetworkSetBypassServiceWorker where
  toJSON :: PNetworkSetBypassServiceWorker -> Value
toJSON PNetworkSetBypassServiceWorker
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"bypass" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (PNetworkSetBypassServiceWorker -> Bool
pNetworkSetBypassServiceWorkerBypass PNetworkSetBypassServiceWorker
p)
    ]
instance Command PNetworkSetBypassServiceWorker where
  type CommandResponse PNetworkSetBypassServiceWorker = ()
  commandName :: Proxy PNetworkSetBypassServiceWorker -> String
commandName Proxy PNetworkSetBypassServiceWorker
_ = String
"Network.setBypassServiceWorker"
  fromJSON :: Proxy PNetworkSetBypassServiceWorker
-> Value -> Result (CommandResponse PNetworkSetBypassServiceWorker)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PNetworkSetBypassServiceWorker -> Result ())
-> Proxy PNetworkSetBypassServiceWorker
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PNetworkSetBypassServiceWorker -> ())
-> Proxy PNetworkSetBypassServiceWorker
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PNetworkSetBypassServiceWorker -> ()
forall a b. a -> b -> a
const ()

-- | Toggles ignoring cache for each request. If `true`, cache will not be used.

-- | Parameters of the 'Network.setCacheDisabled' command.
data PNetworkSetCacheDisabled = PNetworkSetCacheDisabled
  {
    -- | Cache disabled state.
    PNetworkSetCacheDisabled -> Bool
pNetworkSetCacheDisabledCacheDisabled :: Bool
  }
  deriving (PNetworkSetCacheDisabled -> PNetworkSetCacheDisabled -> Bool
(PNetworkSetCacheDisabled -> PNetworkSetCacheDisabled -> Bool)
-> (PNetworkSetCacheDisabled -> PNetworkSetCacheDisabled -> Bool)
-> Eq PNetworkSetCacheDisabled
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PNetworkSetCacheDisabled -> PNetworkSetCacheDisabled -> Bool
$c/= :: PNetworkSetCacheDisabled -> PNetworkSetCacheDisabled -> Bool
== :: PNetworkSetCacheDisabled -> PNetworkSetCacheDisabled -> Bool
$c== :: PNetworkSetCacheDisabled -> PNetworkSetCacheDisabled -> Bool
Eq, Int -> PNetworkSetCacheDisabled -> ShowS
[PNetworkSetCacheDisabled] -> ShowS
PNetworkSetCacheDisabled -> String
(Int -> PNetworkSetCacheDisabled -> ShowS)
-> (PNetworkSetCacheDisabled -> String)
-> ([PNetworkSetCacheDisabled] -> ShowS)
-> Show PNetworkSetCacheDisabled
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PNetworkSetCacheDisabled] -> ShowS
$cshowList :: [PNetworkSetCacheDisabled] -> ShowS
show :: PNetworkSetCacheDisabled -> String
$cshow :: PNetworkSetCacheDisabled -> String
showsPrec :: Int -> PNetworkSetCacheDisabled -> ShowS
$cshowsPrec :: Int -> PNetworkSetCacheDisabled -> ShowS
Show)
pNetworkSetCacheDisabled
  {-
  -- | Cache disabled state.
  -}
  :: Bool
  -> PNetworkSetCacheDisabled
pNetworkSetCacheDisabled :: Bool -> PNetworkSetCacheDisabled
pNetworkSetCacheDisabled
  Bool
arg_pNetworkSetCacheDisabledCacheDisabled
  = Bool -> PNetworkSetCacheDisabled
PNetworkSetCacheDisabled
    Bool
arg_pNetworkSetCacheDisabledCacheDisabled
instance ToJSON PNetworkSetCacheDisabled where
  toJSON :: PNetworkSetCacheDisabled -> Value
toJSON PNetworkSetCacheDisabled
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"cacheDisabled" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (PNetworkSetCacheDisabled -> Bool
pNetworkSetCacheDisabledCacheDisabled PNetworkSetCacheDisabled
p)
    ]
instance Command PNetworkSetCacheDisabled where
  type CommandResponse PNetworkSetCacheDisabled = ()
  commandName :: Proxy PNetworkSetCacheDisabled -> String
commandName Proxy PNetworkSetCacheDisabled
_ = String
"Network.setCacheDisabled"
  fromJSON :: Proxy PNetworkSetCacheDisabled
-> Value -> Result (CommandResponse PNetworkSetCacheDisabled)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PNetworkSetCacheDisabled -> Result ())
-> Proxy PNetworkSetCacheDisabled
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PNetworkSetCacheDisabled -> ())
-> Proxy PNetworkSetCacheDisabled
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PNetworkSetCacheDisabled -> ()
forall a b. a -> b -> a
const ()

-- | Sets a cookie with the given cookie data; may overwrite equivalent cookies if they exist.

-- | Parameters of the 'Network.setCookie' command.
data PNetworkSetCookie = PNetworkSetCookie
  {
    -- | Cookie name.
    PNetworkSetCookie -> Text
pNetworkSetCookieName :: T.Text,
    -- | Cookie value.
    PNetworkSetCookie -> Text
pNetworkSetCookieValue :: T.Text,
    -- | The request-URI to associate with the setting of the cookie. This value can affect the
    --   default domain, path, source port, and source scheme values of the created cookie.
    PNetworkSetCookie -> Maybe Text
pNetworkSetCookieUrl :: Maybe T.Text,
    -- | Cookie domain.
    PNetworkSetCookie -> Maybe Text
pNetworkSetCookieDomain :: Maybe T.Text,
    -- | Cookie path.
    PNetworkSetCookie -> Maybe Text
pNetworkSetCookiePath :: Maybe T.Text,
    -- | True if cookie is secure.
    PNetworkSetCookie -> Maybe Bool
pNetworkSetCookieSecure :: Maybe Bool,
    -- | True if cookie is http-only.
    PNetworkSetCookie -> Maybe Bool
pNetworkSetCookieHttpOnly :: Maybe Bool,
    -- | Cookie SameSite type.
    PNetworkSetCookie -> Maybe NetworkCookieSameSite
pNetworkSetCookieSameSite :: Maybe NetworkCookieSameSite,
    -- | Cookie expiration date, session cookie if not set
    PNetworkSetCookie -> Maybe Double
pNetworkSetCookieExpires :: Maybe NetworkTimeSinceEpoch,
    -- | Cookie Priority type.
    PNetworkSetCookie -> Maybe NetworkCookiePriority
pNetworkSetCookiePriority :: Maybe NetworkCookiePriority,
    -- | True if cookie is SameParty.
    PNetworkSetCookie -> Maybe Bool
pNetworkSetCookieSameParty :: Maybe Bool,
    -- | Cookie source scheme type.
    PNetworkSetCookie -> Maybe NetworkCookieSourceScheme
pNetworkSetCookieSourceScheme :: Maybe NetworkCookieSourceScheme,
    -- | Cookie source port. Valid values are {-1, [1, 65535]}, -1 indicates an unspecified port.
    --   An unspecified port value allows protocol clients to emulate legacy cookie scope for the port.
    --   This is a temporary ability and it will be removed in the future.
    PNetworkSetCookie -> Maybe Int
pNetworkSetCookieSourcePort :: Maybe Int,
    -- | Cookie partition key. The site of the top-level URL the browser was visiting at the start
    --   of the request to the endpoint that set the cookie.
    --   If not set, the cookie will be set as not partitioned.
    PNetworkSetCookie -> Maybe Text
pNetworkSetCookiePartitionKey :: Maybe T.Text
  }
  deriving (PNetworkSetCookie -> PNetworkSetCookie -> Bool
(PNetworkSetCookie -> PNetworkSetCookie -> Bool)
-> (PNetworkSetCookie -> PNetworkSetCookie -> Bool)
-> Eq PNetworkSetCookie
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PNetworkSetCookie -> PNetworkSetCookie -> Bool
$c/= :: PNetworkSetCookie -> PNetworkSetCookie -> Bool
== :: PNetworkSetCookie -> PNetworkSetCookie -> Bool
$c== :: PNetworkSetCookie -> PNetworkSetCookie -> Bool
Eq, Int -> PNetworkSetCookie -> ShowS
[PNetworkSetCookie] -> ShowS
PNetworkSetCookie -> String
(Int -> PNetworkSetCookie -> ShowS)
-> (PNetworkSetCookie -> String)
-> ([PNetworkSetCookie] -> ShowS)
-> Show PNetworkSetCookie
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PNetworkSetCookie] -> ShowS
$cshowList :: [PNetworkSetCookie] -> ShowS
show :: PNetworkSetCookie -> String
$cshow :: PNetworkSetCookie -> String
showsPrec :: Int -> PNetworkSetCookie -> ShowS
$cshowsPrec :: Int -> PNetworkSetCookie -> ShowS
Show)
pNetworkSetCookie
  {-
  -- | Cookie name.
  -}
  :: T.Text
  {-
  -- | Cookie value.
  -}
  -> T.Text
  -> PNetworkSetCookie
pNetworkSetCookie :: Text -> Text -> PNetworkSetCookie
pNetworkSetCookie
  Text
arg_pNetworkSetCookieName
  Text
arg_pNetworkSetCookieValue
  = Text
-> Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Bool
-> Maybe Bool
-> Maybe NetworkCookieSameSite
-> Maybe Double
-> Maybe NetworkCookiePriority
-> Maybe Bool
-> Maybe NetworkCookieSourceScheme
-> Maybe Int
-> Maybe Text
-> PNetworkSetCookie
PNetworkSetCookie
    Text
arg_pNetworkSetCookieName
    Text
arg_pNetworkSetCookieValue
    Maybe Text
forall a. Maybe a
Nothing
    Maybe Text
forall a. Maybe a
Nothing
    Maybe Text
forall a. Maybe a
Nothing
    Maybe Bool
forall a. Maybe a
Nothing
    Maybe Bool
forall a. Maybe a
Nothing
    Maybe NetworkCookieSameSite
forall a. Maybe a
Nothing
    Maybe Double
forall a. Maybe a
Nothing
    Maybe NetworkCookiePriority
forall a. Maybe a
Nothing
    Maybe Bool
forall a. Maybe a
Nothing
    Maybe NetworkCookieSourceScheme
forall a. Maybe a
Nothing
    Maybe Int
forall a. Maybe a
Nothing
    Maybe Text
forall a. Maybe a
Nothing
instance ToJSON PNetworkSetCookie where
  toJSON :: PNetworkSetCookie -> Value
toJSON PNetworkSetCookie
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"name" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PNetworkSetCookie -> Text
pNetworkSetCookieName PNetworkSetCookie
p),
    (Text
"value" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PNetworkSetCookie -> Text
pNetworkSetCookieValue PNetworkSetCookie
p),
    (Text
"url" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PNetworkSetCookie -> Maybe Text
pNetworkSetCookieUrl PNetworkSetCookie
p),
    (Text
"domain" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PNetworkSetCookie -> Maybe Text
pNetworkSetCookieDomain PNetworkSetCookie
p),
    (Text
"path" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PNetworkSetCookie -> Maybe Text
pNetworkSetCookiePath PNetworkSetCookie
p),
    (Text
"secure" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PNetworkSetCookie -> Maybe Bool
pNetworkSetCookieSecure PNetworkSetCookie
p),
    (Text
"httpOnly" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PNetworkSetCookie -> Maybe Bool
pNetworkSetCookieHttpOnly PNetworkSetCookie
p),
    (Text
"sameSite" Text -> NetworkCookieSameSite -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkCookieSameSite -> Pair)
-> Maybe NetworkCookieSameSite -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PNetworkSetCookie -> Maybe NetworkCookieSameSite
pNetworkSetCookieSameSite PNetworkSetCookie
p),
    (Text
"expires" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PNetworkSetCookie -> Maybe Double
pNetworkSetCookieExpires PNetworkSetCookie
p),
    (Text
"priority" Text -> NetworkCookiePriority -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkCookiePriority -> Pair)
-> Maybe NetworkCookiePriority -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PNetworkSetCookie -> Maybe NetworkCookiePriority
pNetworkSetCookiePriority PNetworkSetCookie
p),
    (Text
"sameParty" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PNetworkSetCookie -> Maybe Bool
pNetworkSetCookieSameParty PNetworkSetCookie
p),
    (Text
"sourceScheme" Text -> NetworkCookieSourceScheme -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkCookieSourceScheme -> Pair)
-> Maybe NetworkCookieSourceScheme -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PNetworkSetCookie -> Maybe NetworkCookieSourceScheme
pNetworkSetCookieSourceScheme PNetworkSetCookie
p),
    (Text
"sourcePort" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PNetworkSetCookie -> Maybe Int
pNetworkSetCookieSourcePort PNetworkSetCookie
p),
    (Text
"partitionKey" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PNetworkSetCookie -> Maybe Text
pNetworkSetCookiePartitionKey PNetworkSetCookie
p)
    ]
instance Command PNetworkSetCookie where
  type CommandResponse PNetworkSetCookie = ()
  commandName :: Proxy PNetworkSetCookie -> String
commandName Proxy PNetworkSetCookie
_ = String
"Network.setCookie"
  fromJSON :: Proxy PNetworkSetCookie
-> Value -> Result (CommandResponse PNetworkSetCookie)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PNetworkSetCookie -> Result ())
-> Proxy PNetworkSetCookie
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PNetworkSetCookie -> ())
-> Proxy PNetworkSetCookie
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PNetworkSetCookie -> ()
forall a b. a -> b -> a
const ()

-- | Sets given cookies.

-- | Parameters of the 'Network.setCookies' command.
data PNetworkSetCookies = PNetworkSetCookies
  {
    -- | Cookies to be set.
    PNetworkSetCookies -> [NetworkCookieParam]
pNetworkSetCookiesCookies :: [NetworkCookieParam]
  }
  deriving (PNetworkSetCookies -> PNetworkSetCookies -> Bool
(PNetworkSetCookies -> PNetworkSetCookies -> Bool)
-> (PNetworkSetCookies -> PNetworkSetCookies -> Bool)
-> Eq PNetworkSetCookies
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PNetworkSetCookies -> PNetworkSetCookies -> Bool
$c/= :: PNetworkSetCookies -> PNetworkSetCookies -> Bool
== :: PNetworkSetCookies -> PNetworkSetCookies -> Bool
$c== :: PNetworkSetCookies -> PNetworkSetCookies -> Bool
Eq, Int -> PNetworkSetCookies -> ShowS
[PNetworkSetCookies] -> ShowS
PNetworkSetCookies -> String
(Int -> PNetworkSetCookies -> ShowS)
-> (PNetworkSetCookies -> String)
-> ([PNetworkSetCookies] -> ShowS)
-> Show PNetworkSetCookies
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PNetworkSetCookies] -> ShowS
$cshowList :: [PNetworkSetCookies] -> ShowS
show :: PNetworkSetCookies -> String
$cshow :: PNetworkSetCookies -> String
showsPrec :: Int -> PNetworkSetCookies -> ShowS
$cshowsPrec :: Int -> PNetworkSetCookies -> ShowS
Show)
pNetworkSetCookies
  {-
  -- | Cookies to be set.
  -}
  :: [NetworkCookieParam]
  -> PNetworkSetCookies
pNetworkSetCookies :: [NetworkCookieParam] -> PNetworkSetCookies
pNetworkSetCookies
  [NetworkCookieParam]
arg_pNetworkSetCookiesCookies
  = [NetworkCookieParam] -> PNetworkSetCookies
PNetworkSetCookies
    [NetworkCookieParam]
arg_pNetworkSetCookiesCookies
instance ToJSON PNetworkSetCookies where
  toJSON :: PNetworkSetCookies -> Value
toJSON PNetworkSetCookies
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"cookies" Text -> [NetworkCookieParam] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([NetworkCookieParam] -> Pair)
-> Maybe [NetworkCookieParam] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> [NetworkCookieParam] -> Maybe [NetworkCookieParam]
forall a. a -> Maybe a
Just (PNetworkSetCookies -> [NetworkCookieParam]
pNetworkSetCookiesCookies PNetworkSetCookies
p)
    ]
instance Command PNetworkSetCookies where
  type CommandResponse PNetworkSetCookies = ()
  commandName :: Proxy PNetworkSetCookies -> String
commandName Proxy PNetworkSetCookies
_ = String
"Network.setCookies"
  fromJSON :: Proxy PNetworkSetCookies
-> Value -> Result (CommandResponse PNetworkSetCookies)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PNetworkSetCookies -> Result ())
-> Proxy PNetworkSetCookies
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PNetworkSetCookies -> ())
-> Proxy PNetworkSetCookies
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PNetworkSetCookies -> ()
forall a b. a -> b -> a
const ()

-- | Specifies whether to always send extra HTTP headers with the requests from this page.

-- | Parameters of the 'Network.setExtraHTTPHeaders' command.
data PNetworkSetExtraHTTPHeaders = PNetworkSetExtraHTTPHeaders
  {
    -- | Map with extra HTTP headers.
    PNetworkSetExtraHTTPHeaders -> NetworkHeaders
pNetworkSetExtraHTTPHeadersHeaders :: NetworkHeaders
  }
  deriving (PNetworkSetExtraHTTPHeaders -> PNetworkSetExtraHTTPHeaders -> Bool
(PNetworkSetExtraHTTPHeaders
 -> PNetworkSetExtraHTTPHeaders -> Bool)
-> (PNetworkSetExtraHTTPHeaders
    -> PNetworkSetExtraHTTPHeaders -> Bool)
-> Eq PNetworkSetExtraHTTPHeaders
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PNetworkSetExtraHTTPHeaders -> PNetworkSetExtraHTTPHeaders -> Bool
$c/= :: PNetworkSetExtraHTTPHeaders -> PNetworkSetExtraHTTPHeaders -> Bool
== :: PNetworkSetExtraHTTPHeaders -> PNetworkSetExtraHTTPHeaders -> Bool
$c== :: PNetworkSetExtraHTTPHeaders -> PNetworkSetExtraHTTPHeaders -> Bool
Eq, Int -> PNetworkSetExtraHTTPHeaders -> ShowS
[PNetworkSetExtraHTTPHeaders] -> ShowS
PNetworkSetExtraHTTPHeaders -> String
(Int -> PNetworkSetExtraHTTPHeaders -> ShowS)
-> (PNetworkSetExtraHTTPHeaders -> String)
-> ([PNetworkSetExtraHTTPHeaders] -> ShowS)
-> Show PNetworkSetExtraHTTPHeaders
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PNetworkSetExtraHTTPHeaders] -> ShowS
$cshowList :: [PNetworkSetExtraHTTPHeaders] -> ShowS
show :: PNetworkSetExtraHTTPHeaders -> String
$cshow :: PNetworkSetExtraHTTPHeaders -> String
showsPrec :: Int -> PNetworkSetExtraHTTPHeaders -> ShowS
$cshowsPrec :: Int -> PNetworkSetExtraHTTPHeaders -> ShowS
Show)
pNetworkSetExtraHTTPHeaders
  {-
  -- | Map with extra HTTP headers.
  -}
  :: NetworkHeaders
  -> PNetworkSetExtraHTTPHeaders
pNetworkSetExtraHTTPHeaders :: NetworkHeaders -> PNetworkSetExtraHTTPHeaders
pNetworkSetExtraHTTPHeaders
  NetworkHeaders
arg_pNetworkSetExtraHTTPHeadersHeaders
  = NetworkHeaders -> PNetworkSetExtraHTTPHeaders
PNetworkSetExtraHTTPHeaders
    NetworkHeaders
arg_pNetworkSetExtraHTTPHeadersHeaders
instance ToJSON PNetworkSetExtraHTTPHeaders where
  toJSON :: PNetworkSetExtraHTTPHeaders -> Value
toJSON PNetworkSetExtraHTTPHeaders
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"headers" Text -> NetworkHeaders -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkHeaders -> Pair) -> Maybe NetworkHeaders -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> NetworkHeaders -> Maybe NetworkHeaders
forall a. a -> Maybe a
Just (PNetworkSetExtraHTTPHeaders -> NetworkHeaders
pNetworkSetExtraHTTPHeadersHeaders PNetworkSetExtraHTTPHeaders
p)
    ]
instance Command PNetworkSetExtraHTTPHeaders where
  type CommandResponse PNetworkSetExtraHTTPHeaders = ()
  commandName :: Proxy PNetworkSetExtraHTTPHeaders -> String
commandName Proxy PNetworkSetExtraHTTPHeaders
_ = String
"Network.setExtraHTTPHeaders"
  fromJSON :: Proxy PNetworkSetExtraHTTPHeaders
-> Value -> Result (CommandResponse PNetworkSetExtraHTTPHeaders)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PNetworkSetExtraHTTPHeaders -> Result ())
-> Proxy PNetworkSetExtraHTTPHeaders
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PNetworkSetExtraHTTPHeaders -> ())
-> Proxy PNetworkSetExtraHTTPHeaders
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PNetworkSetExtraHTTPHeaders -> ()
forall a b. a -> b -> a
const ()

-- | Specifies whether to attach a page script stack id in requests

-- | Parameters of the 'Network.setAttachDebugStack' command.
data PNetworkSetAttachDebugStack = PNetworkSetAttachDebugStack
  {
    -- | Whether to attach a page script stack for debugging purpose.
    PNetworkSetAttachDebugStack -> Bool
pNetworkSetAttachDebugStackEnabled :: Bool
  }
  deriving (PNetworkSetAttachDebugStack -> PNetworkSetAttachDebugStack -> Bool
(PNetworkSetAttachDebugStack
 -> PNetworkSetAttachDebugStack -> Bool)
-> (PNetworkSetAttachDebugStack
    -> PNetworkSetAttachDebugStack -> Bool)
-> Eq PNetworkSetAttachDebugStack
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PNetworkSetAttachDebugStack -> PNetworkSetAttachDebugStack -> Bool
$c/= :: PNetworkSetAttachDebugStack -> PNetworkSetAttachDebugStack -> Bool
== :: PNetworkSetAttachDebugStack -> PNetworkSetAttachDebugStack -> Bool
$c== :: PNetworkSetAttachDebugStack -> PNetworkSetAttachDebugStack -> Bool
Eq, Int -> PNetworkSetAttachDebugStack -> ShowS
[PNetworkSetAttachDebugStack] -> ShowS
PNetworkSetAttachDebugStack -> String
(Int -> PNetworkSetAttachDebugStack -> ShowS)
-> (PNetworkSetAttachDebugStack -> String)
-> ([PNetworkSetAttachDebugStack] -> ShowS)
-> Show PNetworkSetAttachDebugStack
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PNetworkSetAttachDebugStack] -> ShowS
$cshowList :: [PNetworkSetAttachDebugStack] -> ShowS
show :: PNetworkSetAttachDebugStack -> String
$cshow :: PNetworkSetAttachDebugStack -> String
showsPrec :: Int -> PNetworkSetAttachDebugStack -> ShowS
$cshowsPrec :: Int -> PNetworkSetAttachDebugStack -> ShowS
Show)
pNetworkSetAttachDebugStack
  {-
  -- | Whether to attach a page script stack for debugging purpose.
  -}
  :: Bool
  -> PNetworkSetAttachDebugStack
pNetworkSetAttachDebugStack :: Bool -> PNetworkSetAttachDebugStack
pNetworkSetAttachDebugStack
  Bool
arg_pNetworkSetAttachDebugStackEnabled
  = Bool -> PNetworkSetAttachDebugStack
PNetworkSetAttachDebugStack
    Bool
arg_pNetworkSetAttachDebugStackEnabled
instance ToJSON PNetworkSetAttachDebugStack where
  toJSON :: PNetworkSetAttachDebugStack -> Value
toJSON PNetworkSetAttachDebugStack
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"enabled" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (PNetworkSetAttachDebugStack -> Bool
pNetworkSetAttachDebugStackEnabled PNetworkSetAttachDebugStack
p)
    ]
instance Command PNetworkSetAttachDebugStack where
  type CommandResponse PNetworkSetAttachDebugStack = ()
  commandName :: Proxy PNetworkSetAttachDebugStack -> String
commandName Proxy PNetworkSetAttachDebugStack
_ = String
"Network.setAttachDebugStack"
  fromJSON :: Proxy PNetworkSetAttachDebugStack
-> Value -> Result (CommandResponse PNetworkSetAttachDebugStack)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PNetworkSetAttachDebugStack -> Result ())
-> Proxy PNetworkSetAttachDebugStack
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PNetworkSetAttachDebugStack -> ())
-> Proxy PNetworkSetAttachDebugStack
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PNetworkSetAttachDebugStack -> ()
forall a b. a -> b -> a
const ()

-- | Allows overriding user agent with the given string.

-- | Parameters of the 'Network.setUserAgentOverride' command.
data PNetworkSetUserAgentOverride = PNetworkSetUserAgentOverride
  {
    -- | User agent to use.
    PNetworkSetUserAgentOverride -> Text
pNetworkSetUserAgentOverrideUserAgent :: T.Text,
    -- | Browser langugage to emulate.
    PNetworkSetUserAgentOverride -> Maybe Text
pNetworkSetUserAgentOverrideAcceptLanguage :: Maybe T.Text,
    -- | The platform navigator.platform should return.
    PNetworkSetUserAgentOverride -> Maybe Text
pNetworkSetUserAgentOverridePlatform :: Maybe T.Text,
    -- | To be sent in Sec-CH-UA-* headers and returned in navigator.userAgentData
    PNetworkSetUserAgentOverride -> Maybe EmulationUserAgentMetadata
pNetworkSetUserAgentOverrideUserAgentMetadata :: Maybe EmulationUserAgentMetadata
  }
  deriving (PNetworkSetUserAgentOverride
-> PNetworkSetUserAgentOverride -> Bool
(PNetworkSetUserAgentOverride
 -> PNetworkSetUserAgentOverride -> Bool)
-> (PNetworkSetUserAgentOverride
    -> PNetworkSetUserAgentOverride -> Bool)
-> Eq PNetworkSetUserAgentOverride
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PNetworkSetUserAgentOverride
-> PNetworkSetUserAgentOverride -> Bool
$c/= :: PNetworkSetUserAgentOverride
-> PNetworkSetUserAgentOverride -> Bool
== :: PNetworkSetUserAgentOverride
-> PNetworkSetUserAgentOverride -> Bool
$c== :: PNetworkSetUserAgentOverride
-> PNetworkSetUserAgentOverride -> Bool
Eq, Int -> PNetworkSetUserAgentOverride -> ShowS
[PNetworkSetUserAgentOverride] -> ShowS
PNetworkSetUserAgentOverride -> String
(Int -> PNetworkSetUserAgentOverride -> ShowS)
-> (PNetworkSetUserAgentOverride -> String)
-> ([PNetworkSetUserAgentOverride] -> ShowS)
-> Show PNetworkSetUserAgentOverride
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PNetworkSetUserAgentOverride] -> ShowS
$cshowList :: [PNetworkSetUserAgentOverride] -> ShowS
show :: PNetworkSetUserAgentOverride -> String
$cshow :: PNetworkSetUserAgentOverride -> String
showsPrec :: Int -> PNetworkSetUserAgentOverride -> ShowS
$cshowsPrec :: Int -> PNetworkSetUserAgentOverride -> ShowS
Show)
pNetworkSetUserAgentOverride
  {-
  -- | User agent to use.
  -}
  :: T.Text
  -> PNetworkSetUserAgentOverride
pNetworkSetUserAgentOverride :: Text -> PNetworkSetUserAgentOverride
pNetworkSetUserAgentOverride
  Text
arg_pNetworkSetUserAgentOverrideUserAgent
  = Text
-> Maybe Text
-> Maybe Text
-> Maybe EmulationUserAgentMetadata
-> PNetworkSetUserAgentOverride
PNetworkSetUserAgentOverride
    Text
arg_pNetworkSetUserAgentOverrideUserAgent
    Maybe Text
forall a. Maybe a
Nothing
    Maybe Text
forall a. Maybe a
Nothing
    Maybe EmulationUserAgentMetadata
forall a. Maybe a
Nothing
instance ToJSON PNetworkSetUserAgentOverride where
  toJSON :: PNetworkSetUserAgentOverride -> Value
toJSON PNetworkSetUserAgentOverride
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"userAgent" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PNetworkSetUserAgentOverride -> Text
pNetworkSetUserAgentOverrideUserAgent PNetworkSetUserAgentOverride
p),
    (Text
"acceptLanguage" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PNetworkSetUserAgentOverride -> Maybe Text
pNetworkSetUserAgentOverrideAcceptLanguage PNetworkSetUserAgentOverride
p),
    (Text
"platform" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PNetworkSetUserAgentOverride -> Maybe Text
pNetworkSetUserAgentOverridePlatform PNetworkSetUserAgentOverride
p),
    (Text
"userAgentMetadata" Text -> EmulationUserAgentMetadata -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (EmulationUserAgentMetadata -> Pair)
-> Maybe EmulationUserAgentMetadata -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PNetworkSetUserAgentOverride -> Maybe EmulationUserAgentMetadata
pNetworkSetUserAgentOverrideUserAgentMetadata PNetworkSetUserAgentOverride
p)
    ]
instance Command PNetworkSetUserAgentOverride where
  type CommandResponse PNetworkSetUserAgentOverride = ()
  commandName :: Proxy PNetworkSetUserAgentOverride -> String
commandName Proxy PNetworkSetUserAgentOverride
_ = String
"Network.setUserAgentOverride"
  fromJSON :: Proxy PNetworkSetUserAgentOverride
-> Value -> Result (CommandResponse PNetworkSetUserAgentOverride)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PNetworkSetUserAgentOverride -> Result ())
-> Proxy PNetworkSetUserAgentOverride
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PNetworkSetUserAgentOverride -> ())
-> Proxy PNetworkSetUserAgentOverride
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PNetworkSetUserAgentOverride -> ()
forall a b. a -> b -> a
const ()

-- | Returns information about the COEP/COOP isolation status.

-- | Parameters of the 'Network.getSecurityIsolationStatus' command.
data PNetworkGetSecurityIsolationStatus = PNetworkGetSecurityIsolationStatus
  {
    -- | If no frameId is provided, the status of the target is provided.
    PNetworkGetSecurityIsolationStatus -> Maybe Text
pNetworkGetSecurityIsolationStatusFrameId :: Maybe PageFrameId
  }
  deriving (PNetworkGetSecurityIsolationStatus
-> PNetworkGetSecurityIsolationStatus -> Bool
(PNetworkGetSecurityIsolationStatus
 -> PNetworkGetSecurityIsolationStatus -> Bool)
-> (PNetworkGetSecurityIsolationStatus
    -> PNetworkGetSecurityIsolationStatus -> Bool)
-> Eq PNetworkGetSecurityIsolationStatus
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PNetworkGetSecurityIsolationStatus
-> PNetworkGetSecurityIsolationStatus -> Bool
$c/= :: PNetworkGetSecurityIsolationStatus
-> PNetworkGetSecurityIsolationStatus -> Bool
== :: PNetworkGetSecurityIsolationStatus
-> PNetworkGetSecurityIsolationStatus -> Bool
$c== :: PNetworkGetSecurityIsolationStatus
-> PNetworkGetSecurityIsolationStatus -> Bool
Eq, Int -> PNetworkGetSecurityIsolationStatus -> ShowS
[PNetworkGetSecurityIsolationStatus] -> ShowS
PNetworkGetSecurityIsolationStatus -> String
(Int -> PNetworkGetSecurityIsolationStatus -> ShowS)
-> (PNetworkGetSecurityIsolationStatus -> String)
-> ([PNetworkGetSecurityIsolationStatus] -> ShowS)
-> Show PNetworkGetSecurityIsolationStatus
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PNetworkGetSecurityIsolationStatus] -> ShowS
$cshowList :: [PNetworkGetSecurityIsolationStatus] -> ShowS
show :: PNetworkGetSecurityIsolationStatus -> String
$cshow :: PNetworkGetSecurityIsolationStatus -> String
showsPrec :: Int -> PNetworkGetSecurityIsolationStatus -> ShowS
$cshowsPrec :: Int -> PNetworkGetSecurityIsolationStatus -> ShowS
Show)
pNetworkGetSecurityIsolationStatus
  :: PNetworkGetSecurityIsolationStatus
pNetworkGetSecurityIsolationStatus :: PNetworkGetSecurityIsolationStatus
pNetworkGetSecurityIsolationStatus
  = Maybe Text -> PNetworkGetSecurityIsolationStatus
PNetworkGetSecurityIsolationStatus
    Maybe Text
forall a. Maybe a
Nothing
instance ToJSON PNetworkGetSecurityIsolationStatus where
  toJSON :: PNetworkGetSecurityIsolationStatus -> Value
toJSON PNetworkGetSecurityIsolationStatus
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"frameId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PNetworkGetSecurityIsolationStatus -> Maybe Text
pNetworkGetSecurityIsolationStatusFrameId PNetworkGetSecurityIsolationStatus
p)
    ]
data NetworkGetSecurityIsolationStatus = NetworkGetSecurityIsolationStatus
  {
    NetworkGetSecurityIsolationStatus -> NetworkSecurityIsolationStatus
networkGetSecurityIsolationStatusStatus :: NetworkSecurityIsolationStatus
  }
  deriving (NetworkGetSecurityIsolationStatus
-> NetworkGetSecurityIsolationStatus -> Bool
(NetworkGetSecurityIsolationStatus
 -> NetworkGetSecurityIsolationStatus -> Bool)
-> (NetworkGetSecurityIsolationStatus
    -> NetworkGetSecurityIsolationStatus -> Bool)
-> Eq NetworkGetSecurityIsolationStatus
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkGetSecurityIsolationStatus
-> NetworkGetSecurityIsolationStatus -> Bool
$c/= :: NetworkGetSecurityIsolationStatus
-> NetworkGetSecurityIsolationStatus -> Bool
== :: NetworkGetSecurityIsolationStatus
-> NetworkGetSecurityIsolationStatus -> Bool
$c== :: NetworkGetSecurityIsolationStatus
-> NetworkGetSecurityIsolationStatus -> Bool
Eq, Int -> NetworkGetSecurityIsolationStatus -> ShowS
[NetworkGetSecurityIsolationStatus] -> ShowS
NetworkGetSecurityIsolationStatus -> String
(Int -> NetworkGetSecurityIsolationStatus -> ShowS)
-> (NetworkGetSecurityIsolationStatus -> String)
-> ([NetworkGetSecurityIsolationStatus] -> ShowS)
-> Show NetworkGetSecurityIsolationStatus
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkGetSecurityIsolationStatus] -> ShowS
$cshowList :: [NetworkGetSecurityIsolationStatus] -> ShowS
show :: NetworkGetSecurityIsolationStatus -> String
$cshow :: NetworkGetSecurityIsolationStatus -> String
showsPrec :: Int -> NetworkGetSecurityIsolationStatus -> ShowS
$cshowsPrec :: Int -> NetworkGetSecurityIsolationStatus -> ShowS
Show)
instance FromJSON NetworkGetSecurityIsolationStatus where
  parseJSON :: Value -> Parser NetworkGetSecurityIsolationStatus
parseJSON = String
-> (Object -> Parser NetworkGetSecurityIsolationStatus)
-> Value
-> Parser NetworkGetSecurityIsolationStatus
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkGetSecurityIsolationStatus" ((Object -> Parser NetworkGetSecurityIsolationStatus)
 -> Value -> Parser NetworkGetSecurityIsolationStatus)
-> (Object -> Parser NetworkGetSecurityIsolationStatus)
-> Value
-> Parser NetworkGetSecurityIsolationStatus
forall a b. (a -> b) -> a -> b
$ \Object
o -> NetworkSecurityIsolationStatus -> NetworkGetSecurityIsolationStatus
NetworkGetSecurityIsolationStatus
    (NetworkSecurityIsolationStatus
 -> NetworkGetSecurityIsolationStatus)
-> Parser NetworkSecurityIsolationStatus
-> Parser NetworkGetSecurityIsolationStatus
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser NetworkSecurityIsolationStatus
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"status"
instance Command PNetworkGetSecurityIsolationStatus where
  type CommandResponse PNetworkGetSecurityIsolationStatus = NetworkGetSecurityIsolationStatus
  commandName :: Proxy PNetworkGetSecurityIsolationStatus -> String
commandName Proxy PNetworkGetSecurityIsolationStatus
_ = String
"Network.getSecurityIsolationStatus"

-- | Enables tracking for the Reporting API, events generated by the Reporting API will now be delivered to the client.
--   Enabling triggers 'reportingApiReportAdded' for all existing reports.

-- | Parameters of the 'Network.enableReportingApi' command.
data PNetworkEnableReportingApi = PNetworkEnableReportingApi
  {
    -- | Whether to enable or disable events for the Reporting API
    PNetworkEnableReportingApi -> Bool
pNetworkEnableReportingApiEnable :: Bool
  }
  deriving (PNetworkEnableReportingApi -> PNetworkEnableReportingApi -> Bool
(PNetworkEnableReportingApi -> PNetworkEnableReportingApi -> Bool)
-> (PNetworkEnableReportingApi
    -> PNetworkEnableReportingApi -> Bool)
-> Eq PNetworkEnableReportingApi
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PNetworkEnableReportingApi -> PNetworkEnableReportingApi -> Bool
$c/= :: PNetworkEnableReportingApi -> PNetworkEnableReportingApi -> Bool
== :: PNetworkEnableReportingApi -> PNetworkEnableReportingApi -> Bool
$c== :: PNetworkEnableReportingApi -> PNetworkEnableReportingApi -> Bool
Eq, Int -> PNetworkEnableReportingApi -> ShowS
[PNetworkEnableReportingApi] -> ShowS
PNetworkEnableReportingApi -> String
(Int -> PNetworkEnableReportingApi -> ShowS)
-> (PNetworkEnableReportingApi -> String)
-> ([PNetworkEnableReportingApi] -> ShowS)
-> Show PNetworkEnableReportingApi
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PNetworkEnableReportingApi] -> ShowS
$cshowList :: [PNetworkEnableReportingApi] -> ShowS
show :: PNetworkEnableReportingApi -> String
$cshow :: PNetworkEnableReportingApi -> String
showsPrec :: Int -> PNetworkEnableReportingApi -> ShowS
$cshowsPrec :: Int -> PNetworkEnableReportingApi -> ShowS
Show)
pNetworkEnableReportingApi
  {-
  -- | Whether to enable or disable events for the Reporting API
  -}
  :: Bool
  -> PNetworkEnableReportingApi
pNetworkEnableReportingApi :: Bool -> PNetworkEnableReportingApi
pNetworkEnableReportingApi
  Bool
arg_pNetworkEnableReportingApiEnable
  = Bool -> PNetworkEnableReportingApi
PNetworkEnableReportingApi
    Bool
arg_pNetworkEnableReportingApiEnable
instance ToJSON PNetworkEnableReportingApi where
  toJSON :: PNetworkEnableReportingApi -> Value
toJSON PNetworkEnableReportingApi
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"enable" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (PNetworkEnableReportingApi -> Bool
pNetworkEnableReportingApiEnable PNetworkEnableReportingApi
p)
    ]
instance Command PNetworkEnableReportingApi where
  type CommandResponse PNetworkEnableReportingApi = ()
  commandName :: Proxy PNetworkEnableReportingApi -> String
commandName Proxy PNetworkEnableReportingApi
_ = String
"Network.enableReportingApi"
  fromJSON :: Proxy PNetworkEnableReportingApi
-> Value -> Result (CommandResponse PNetworkEnableReportingApi)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PNetworkEnableReportingApi -> Result ())
-> Proxy PNetworkEnableReportingApi
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PNetworkEnableReportingApi -> ())
-> Proxy PNetworkEnableReportingApi
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PNetworkEnableReportingApi -> ()
forall a b. a -> b -> a
const ()

-- | Fetches the resource and returns the content.

-- | Parameters of the 'Network.loadNetworkResource' command.
data PNetworkLoadNetworkResource = PNetworkLoadNetworkResource
  {
    -- | Frame id to get the resource for. Mandatory for frame targets, and
    --   should be omitted for worker targets.
    PNetworkLoadNetworkResource -> Maybe Text
pNetworkLoadNetworkResourceFrameId :: Maybe PageFrameId,
    -- | URL of the resource to get content for.
    PNetworkLoadNetworkResource -> Text
pNetworkLoadNetworkResourceUrl :: T.Text,
    -- | Options for the request.
    PNetworkLoadNetworkResource -> NetworkLoadNetworkResourceOptions
pNetworkLoadNetworkResourceOptions :: NetworkLoadNetworkResourceOptions
  }
  deriving (PNetworkLoadNetworkResource -> PNetworkLoadNetworkResource -> Bool
(PNetworkLoadNetworkResource
 -> PNetworkLoadNetworkResource -> Bool)
-> (PNetworkLoadNetworkResource
    -> PNetworkLoadNetworkResource -> Bool)
-> Eq PNetworkLoadNetworkResource
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PNetworkLoadNetworkResource -> PNetworkLoadNetworkResource -> Bool
$c/= :: PNetworkLoadNetworkResource -> PNetworkLoadNetworkResource -> Bool
== :: PNetworkLoadNetworkResource -> PNetworkLoadNetworkResource -> Bool
$c== :: PNetworkLoadNetworkResource -> PNetworkLoadNetworkResource -> Bool
Eq, Int -> PNetworkLoadNetworkResource -> ShowS
[PNetworkLoadNetworkResource] -> ShowS
PNetworkLoadNetworkResource -> String
(Int -> PNetworkLoadNetworkResource -> ShowS)
-> (PNetworkLoadNetworkResource -> String)
-> ([PNetworkLoadNetworkResource] -> ShowS)
-> Show PNetworkLoadNetworkResource
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PNetworkLoadNetworkResource] -> ShowS
$cshowList :: [PNetworkLoadNetworkResource] -> ShowS
show :: PNetworkLoadNetworkResource -> String
$cshow :: PNetworkLoadNetworkResource -> String
showsPrec :: Int -> PNetworkLoadNetworkResource -> ShowS
$cshowsPrec :: Int -> PNetworkLoadNetworkResource -> ShowS
Show)
pNetworkLoadNetworkResource
  {-
  -- | URL of the resource to get content for.
  -}
  :: T.Text
  {-
  -- | Options for the request.
  -}
  -> NetworkLoadNetworkResourceOptions
  -> PNetworkLoadNetworkResource
pNetworkLoadNetworkResource :: Text
-> NetworkLoadNetworkResourceOptions -> PNetworkLoadNetworkResource
pNetworkLoadNetworkResource
  Text
arg_pNetworkLoadNetworkResourceUrl
  NetworkLoadNetworkResourceOptions
arg_pNetworkLoadNetworkResourceOptions
  = Maybe Text
-> Text
-> NetworkLoadNetworkResourceOptions
-> PNetworkLoadNetworkResource
PNetworkLoadNetworkResource
    Maybe Text
forall a. Maybe a
Nothing
    Text
arg_pNetworkLoadNetworkResourceUrl
    NetworkLoadNetworkResourceOptions
arg_pNetworkLoadNetworkResourceOptions
instance ToJSON PNetworkLoadNetworkResource where
  toJSON :: PNetworkLoadNetworkResource -> Value
toJSON PNetworkLoadNetworkResource
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"frameId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PNetworkLoadNetworkResource -> Maybe Text
pNetworkLoadNetworkResourceFrameId PNetworkLoadNetworkResource
p),
    (Text
"url" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PNetworkLoadNetworkResource -> Text
pNetworkLoadNetworkResourceUrl PNetworkLoadNetworkResource
p),
    (Text
"options" Text -> NetworkLoadNetworkResourceOptions -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkLoadNetworkResourceOptions -> Pair)
-> Maybe NetworkLoadNetworkResourceOptions -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> NetworkLoadNetworkResourceOptions
-> Maybe NetworkLoadNetworkResourceOptions
forall a. a -> Maybe a
Just (PNetworkLoadNetworkResource -> NetworkLoadNetworkResourceOptions
pNetworkLoadNetworkResourceOptions PNetworkLoadNetworkResource
p)
    ]
data NetworkLoadNetworkResource = NetworkLoadNetworkResource
  {
    NetworkLoadNetworkResource -> NetworkLoadNetworkResourcePageResult
networkLoadNetworkResourceResource :: NetworkLoadNetworkResourcePageResult
  }
  deriving (NetworkLoadNetworkResource -> NetworkLoadNetworkResource -> Bool
(NetworkLoadNetworkResource -> NetworkLoadNetworkResource -> Bool)
-> (NetworkLoadNetworkResource
    -> NetworkLoadNetworkResource -> Bool)
-> Eq NetworkLoadNetworkResource
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: NetworkLoadNetworkResource -> NetworkLoadNetworkResource -> Bool
$c/= :: NetworkLoadNetworkResource -> NetworkLoadNetworkResource -> Bool
== :: NetworkLoadNetworkResource -> NetworkLoadNetworkResource -> Bool
$c== :: NetworkLoadNetworkResource -> NetworkLoadNetworkResource -> Bool
Eq, Int -> NetworkLoadNetworkResource -> ShowS
[NetworkLoadNetworkResource] -> ShowS
NetworkLoadNetworkResource -> String
(Int -> NetworkLoadNetworkResource -> ShowS)
-> (NetworkLoadNetworkResource -> String)
-> ([NetworkLoadNetworkResource] -> ShowS)
-> Show NetworkLoadNetworkResource
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NetworkLoadNetworkResource] -> ShowS
$cshowList :: [NetworkLoadNetworkResource] -> ShowS
show :: NetworkLoadNetworkResource -> String
$cshow :: NetworkLoadNetworkResource -> String
showsPrec :: Int -> NetworkLoadNetworkResource -> ShowS
$cshowsPrec :: Int -> NetworkLoadNetworkResource -> ShowS
Show)
instance FromJSON NetworkLoadNetworkResource where
  parseJSON :: Value -> Parser NetworkLoadNetworkResource
parseJSON = String
-> (Object -> Parser NetworkLoadNetworkResource)
-> Value
-> Parser NetworkLoadNetworkResource
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"NetworkLoadNetworkResource" ((Object -> Parser NetworkLoadNetworkResource)
 -> Value -> Parser NetworkLoadNetworkResource)
-> (Object -> Parser NetworkLoadNetworkResource)
-> Value
-> Parser NetworkLoadNetworkResource
forall a b. (a -> b) -> a -> b
$ \Object
o -> NetworkLoadNetworkResourcePageResult -> NetworkLoadNetworkResource
NetworkLoadNetworkResource
    (NetworkLoadNetworkResourcePageResult
 -> NetworkLoadNetworkResource)
-> Parser NetworkLoadNetworkResourcePageResult
-> Parser NetworkLoadNetworkResource
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser NetworkLoadNetworkResourcePageResult
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"resource"
instance Command PNetworkLoadNetworkResource where
  type CommandResponse PNetworkLoadNetworkResource = NetworkLoadNetworkResource
  commandName :: Proxy PNetworkLoadNetworkResource -> String
commandName Proxy PNetworkLoadNetworkResource
_ = String
"Network.loadNetworkResource"

-- | Type 'Page.FrameId'.
--   Unique frame identifier.
type PageFrameId = T.Text

-- | Type 'Page.AdFrameType'.
--   Indicates whether a frame has been identified as an ad.
data PageAdFrameType = PageAdFrameTypeNone | PageAdFrameTypeChild | PageAdFrameTypeRoot
  deriving (Eq PageAdFrameType
Eq PageAdFrameType
-> (PageAdFrameType -> PageAdFrameType -> Ordering)
-> (PageAdFrameType -> PageAdFrameType -> Bool)
-> (PageAdFrameType -> PageAdFrameType -> Bool)
-> (PageAdFrameType -> PageAdFrameType -> Bool)
-> (PageAdFrameType -> PageAdFrameType -> Bool)
-> (PageAdFrameType -> PageAdFrameType -> PageAdFrameType)
-> (PageAdFrameType -> PageAdFrameType -> PageAdFrameType)
-> Ord PageAdFrameType
PageAdFrameType -> PageAdFrameType -> Bool
PageAdFrameType -> PageAdFrameType -> Ordering
PageAdFrameType -> PageAdFrameType -> PageAdFrameType
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: PageAdFrameType -> PageAdFrameType -> PageAdFrameType
$cmin :: PageAdFrameType -> PageAdFrameType -> PageAdFrameType
max :: PageAdFrameType -> PageAdFrameType -> PageAdFrameType
$cmax :: PageAdFrameType -> PageAdFrameType -> PageAdFrameType
>= :: PageAdFrameType -> PageAdFrameType -> Bool
$c>= :: PageAdFrameType -> PageAdFrameType -> Bool
> :: PageAdFrameType -> PageAdFrameType -> Bool
$c> :: PageAdFrameType -> PageAdFrameType -> Bool
<= :: PageAdFrameType -> PageAdFrameType -> Bool
$c<= :: PageAdFrameType -> PageAdFrameType -> Bool
< :: PageAdFrameType -> PageAdFrameType -> Bool
$c< :: PageAdFrameType -> PageAdFrameType -> Bool
compare :: PageAdFrameType -> PageAdFrameType -> Ordering
$ccompare :: PageAdFrameType -> PageAdFrameType -> Ordering
$cp1Ord :: Eq PageAdFrameType
Ord, PageAdFrameType -> PageAdFrameType -> Bool
(PageAdFrameType -> PageAdFrameType -> Bool)
-> (PageAdFrameType -> PageAdFrameType -> Bool)
-> Eq PageAdFrameType
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageAdFrameType -> PageAdFrameType -> Bool
$c/= :: PageAdFrameType -> PageAdFrameType -> Bool
== :: PageAdFrameType -> PageAdFrameType -> Bool
$c== :: PageAdFrameType -> PageAdFrameType -> Bool
Eq, Int -> PageAdFrameType -> ShowS
[PageAdFrameType] -> ShowS
PageAdFrameType -> String
(Int -> PageAdFrameType -> ShowS)
-> (PageAdFrameType -> String)
-> ([PageAdFrameType] -> ShowS)
-> Show PageAdFrameType
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageAdFrameType] -> ShowS
$cshowList :: [PageAdFrameType] -> ShowS
show :: PageAdFrameType -> String
$cshow :: PageAdFrameType -> String
showsPrec :: Int -> PageAdFrameType -> ShowS
$cshowsPrec :: Int -> PageAdFrameType -> ShowS
Show, ReadPrec [PageAdFrameType]
ReadPrec PageAdFrameType
Int -> ReadS PageAdFrameType
ReadS [PageAdFrameType]
(Int -> ReadS PageAdFrameType)
-> ReadS [PageAdFrameType]
-> ReadPrec PageAdFrameType
-> ReadPrec [PageAdFrameType]
-> Read PageAdFrameType
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PageAdFrameType]
$creadListPrec :: ReadPrec [PageAdFrameType]
readPrec :: ReadPrec PageAdFrameType
$creadPrec :: ReadPrec PageAdFrameType
readList :: ReadS [PageAdFrameType]
$creadList :: ReadS [PageAdFrameType]
readsPrec :: Int -> ReadS PageAdFrameType
$creadsPrec :: Int -> ReadS PageAdFrameType
Read)
instance FromJSON PageAdFrameType where
  parseJSON :: Value -> Parser PageAdFrameType
parseJSON = String
-> (Text -> Parser PageAdFrameType)
-> Value
-> Parser PageAdFrameType
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"PageAdFrameType" ((Text -> Parser PageAdFrameType)
 -> Value -> Parser PageAdFrameType)
-> (Text -> Parser PageAdFrameType)
-> Value
-> Parser PageAdFrameType
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"none" -> PageAdFrameType -> Parser PageAdFrameType
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageAdFrameType
PageAdFrameTypeNone
    Text
"child" -> PageAdFrameType -> Parser PageAdFrameType
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageAdFrameType
PageAdFrameTypeChild
    Text
"root" -> PageAdFrameType -> Parser PageAdFrameType
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageAdFrameType
PageAdFrameTypeRoot
    Text
"_" -> String -> Parser PageAdFrameType
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse PageAdFrameType"
instance ToJSON PageAdFrameType where
  toJSON :: PageAdFrameType -> Value
toJSON PageAdFrameType
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case PageAdFrameType
v of
    PageAdFrameType
PageAdFrameTypeNone -> Text
"none"
    PageAdFrameType
PageAdFrameTypeChild -> Text
"child"
    PageAdFrameType
PageAdFrameTypeRoot -> Text
"root"

-- | Type 'Page.AdFrameExplanation'.
data PageAdFrameExplanation = PageAdFrameExplanationParentIsAd | PageAdFrameExplanationCreatedByAdScript | PageAdFrameExplanationMatchedBlockingRule
  deriving (Eq PageAdFrameExplanation
Eq PageAdFrameExplanation
-> (PageAdFrameExplanation -> PageAdFrameExplanation -> Ordering)
-> (PageAdFrameExplanation -> PageAdFrameExplanation -> Bool)
-> (PageAdFrameExplanation -> PageAdFrameExplanation -> Bool)
-> (PageAdFrameExplanation -> PageAdFrameExplanation -> Bool)
-> (PageAdFrameExplanation -> PageAdFrameExplanation -> Bool)
-> (PageAdFrameExplanation
    -> PageAdFrameExplanation -> PageAdFrameExplanation)
-> (PageAdFrameExplanation
    -> PageAdFrameExplanation -> PageAdFrameExplanation)
-> Ord PageAdFrameExplanation
PageAdFrameExplanation -> PageAdFrameExplanation -> Bool
PageAdFrameExplanation -> PageAdFrameExplanation -> Ordering
PageAdFrameExplanation
-> PageAdFrameExplanation -> PageAdFrameExplanation
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: PageAdFrameExplanation
-> PageAdFrameExplanation -> PageAdFrameExplanation
$cmin :: PageAdFrameExplanation
-> PageAdFrameExplanation -> PageAdFrameExplanation
max :: PageAdFrameExplanation
-> PageAdFrameExplanation -> PageAdFrameExplanation
$cmax :: PageAdFrameExplanation
-> PageAdFrameExplanation -> PageAdFrameExplanation
>= :: PageAdFrameExplanation -> PageAdFrameExplanation -> Bool
$c>= :: PageAdFrameExplanation -> PageAdFrameExplanation -> Bool
> :: PageAdFrameExplanation -> PageAdFrameExplanation -> Bool
$c> :: PageAdFrameExplanation -> PageAdFrameExplanation -> Bool
<= :: PageAdFrameExplanation -> PageAdFrameExplanation -> Bool
$c<= :: PageAdFrameExplanation -> PageAdFrameExplanation -> Bool
< :: PageAdFrameExplanation -> PageAdFrameExplanation -> Bool
$c< :: PageAdFrameExplanation -> PageAdFrameExplanation -> Bool
compare :: PageAdFrameExplanation -> PageAdFrameExplanation -> Ordering
$ccompare :: PageAdFrameExplanation -> PageAdFrameExplanation -> Ordering
$cp1Ord :: Eq PageAdFrameExplanation
Ord, PageAdFrameExplanation -> PageAdFrameExplanation -> Bool
(PageAdFrameExplanation -> PageAdFrameExplanation -> Bool)
-> (PageAdFrameExplanation -> PageAdFrameExplanation -> Bool)
-> Eq PageAdFrameExplanation
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageAdFrameExplanation -> PageAdFrameExplanation -> Bool
$c/= :: PageAdFrameExplanation -> PageAdFrameExplanation -> Bool
== :: PageAdFrameExplanation -> PageAdFrameExplanation -> Bool
$c== :: PageAdFrameExplanation -> PageAdFrameExplanation -> Bool
Eq, Int -> PageAdFrameExplanation -> ShowS
[PageAdFrameExplanation] -> ShowS
PageAdFrameExplanation -> String
(Int -> PageAdFrameExplanation -> ShowS)
-> (PageAdFrameExplanation -> String)
-> ([PageAdFrameExplanation] -> ShowS)
-> Show PageAdFrameExplanation
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageAdFrameExplanation] -> ShowS
$cshowList :: [PageAdFrameExplanation] -> ShowS
show :: PageAdFrameExplanation -> String
$cshow :: PageAdFrameExplanation -> String
showsPrec :: Int -> PageAdFrameExplanation -> ShowS
$cshowsPrec :: Int -> PageAdFrameExplanation -> ShowS
Show, ReadPrec [PageAdFrameExplanation]
ReadPrec PageAdFrameExplanation
Int -> ReadS PageAdFrameExplanation
ReadS [PageAdFrameExplanation]
(Int -> ReadS PageAdFrameExplanation)
-> ReadS [PageAdFrameExplanation]
-> ReadPrec PageAdFrameExplanation
-> ReadPrec [PageAdFrameExplanation]
-> Read PageAdFrameExplanation
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PageAdFrameExplanation]
$creadListPrec :: ReadPrec [PageAdFrameExplanation]
readPrec :: ReadPrec PageAdFrameExplanation
$creadPrec :: ReadPrec PageAdFrameExplanation
readList :: ReadS [PageAdFrameExplanation]
$creadList :: ReadS [PageAdFrameExplanation]
readsPrec :: Int -> ReadS PageAdFrameExplanation
$creadsPrec :: Int -> ReadS PageAdFrameExplanation
Read)
instance FromJSON PageAdFrameExplanation where
  parseJSON :: Value -> Parser PageAdFrameExplanation
parseJSON = String
-> (Text -> Parser PageAdFrameExplanation)
-> Value
-> Parser PageAdFrameExplanation
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"PageAdFrameExplanation" ((Text -> Parser PageAdFrameExplanation)
 -> Value -> Parser PageAdFrameExplanation)
-> (Text -> Parser PageAdFrameExplanation)
-> Value
-> Parser PageAdFrameExplanation
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"ParentIsAd" -> PageAdFrameExplanation -> Parser PageAdFrameExplanation
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageAdFrameExplanation
PageAdFrameExplanationParentIsAd
    Text
"CreatedByAdScript" -> PageAdFrameExplanation -> Parser PageAdFrameExplanation
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageAdFrameExplanation
PageAdFrameExplanationCreatedByAdScript
    Text
"MatchedBlockingRule" -> PageAdFrameExplanation -> Parser PageAdFrameExplanation
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageAdFrameExplanation
PageAdFrameExplanationMatchedBlockingRule
    Text
"_" -> String -> Parser PageAdFrameExplanation
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse PageAdFrameExplanation"
instance ToJSON PageAdFrameExplanation where
  toJSON :: PageAdFrameExplanation -> Value
toJSON PageAdFrameExplanation
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case PageAdFrameExplanation
v of
    PageAdFrameExplanation
PageAdFrameExplanationParentIsAd -> Text
"ParentIsAd"
    PageAdFrameExplanation
PageAdFrameExplanationCreatedByAdScript -> Text
"CreatedByAdScript"
    PageAdFrameExplanation
PageAdFrameExplanationMatchedBlockingRule -> Text
"MatchedBlockingRule"

-- | Type 'Page.AdFrameStatus'.
--   Indicates whether a frame has been identified as an ad and why.
data PageAdFrameStatus = PageAdFrameStatus
  {
    PageAdFrameStatus -> PageAdFrameType
pageAdFrameStatusAdFrameType :: PageAdFrameType,
    PageAdFrameStatus -> Maybe [PageAdFrameExplanation]
pageAdFrameStatusExplanations :: Maybe [PageAdFrameExplanation]
  }
  deriving (PageAdFrameStatus -> PageAdFrameStatus -> Bool
(PageAdFrameStatus -> PageAdFrameStatus -> Bool)
-> (PageAdFrameStatus -> PageAdFrameStatus -> Bool)
-> Eq PageAdFrameStatus
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageAdFrameStatus -> PageAdFrameStatus -> Bool
$c/= :: PageAdFrameStatus -> PageAdFrameStatus -> Bool
== :: PageAdFrameStatus -> PageAdFrameStatus -> Bool
$c== :: PageAdFrameStatus -> PageAdFrameStatus -> Bool
Eq, Int -> PageAdFrameStatus -> ShowS
[PageAdFrameStatus] -> ShowS
PageAdFrameStatus -> String
(Int -> PageAdFrameStatus -> ShowS)
-> (PageAdFrameStatus -> String)
-> ([PageAdFrameStatus] -> ShowS)
-> Show PageAdFrameStatus
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageAdFrameStatus] -> ShowS
$cshowList :: [PageAdFrameStatus] -> ShowS
show :: PageAdFrameStatus -> String
$cshow :: PageAdFrameStatus -> String
showsPrec :: Int -> PageAdFrameStatus -> ShowS
$cshowsPrec :: Int -> PageAdFrameStatus -> ShowS
Show)
instance FromJSON PageAdFrameStatus where
  parseJSON :: Value -> Parser PageAdFrameStatus
parseJSON = String
-> (Object -> Parser PageAdFrameStatus)
-> Value
-> Parser PageAdFrameStatus
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageAdFrameStatus" ((Object -> Parser PageAdFrameStatus)
 -> Value -> Parser PageAdFrameStatus)
-> (Object -> Parser PageAdFrameStatus)
-> Value
-> Parser PageAdFrameStatus
forall a b. (a -> b) -> a -> b
$ \Object
o -> PageAdFrameType
-> Maybe [PageAdFrameExplanation] -> PageAdFrameStatus
PageAdFrameStatus
    (PageAdFrameType
 -> Maybe [PageAdFrameExplanation] -> PageAdFrameStatus)
-> Parser PageAdFrameType
-> Parser (Maybe [PageAdFrameExplanation] -> PageAdFrameStatus)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser PageAdFrameType
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"adFrameType"
    Parser (Maybe [PageAdFrameExplanation] -> PageAdFrameStatus)
-> Parser (Maybe [PageAdFrameExplanation])
-> Parser PageAdFrameStatus
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe [PageAdFrameExplanation])
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"explanations"
instance ToJSON PageAdFrameStatus where
  toJSON :: PageAdFrameStatus -> Value
toJSON PageAdFrameStatus
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"adFrameType" Text -> PageAdFrameType -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (PageAdFrameType -> Pair) -> Maybe PageAdFrameType -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> PageAdFrameType -> Maybe PageAdFrameType
forall a. a -> Maybe a
Just (PageAdFrameStatus -> PageAdFrameType
pageAdFrameStatusAdFrameType PageAdFrameStatus
p),
    (Text
"explanations" Text -> [PageAdFrameExplanation] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([PageAdFrameExplanation] -> Pair)
-> Maybe [PageAdFrameExplanation] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PageAdFrameStatus -> Maybe [PageAdFrameExplanation]
pageAdFrameStatusExplanations PageAdFrameStatus
p)
    ]

-- | Type 'Page.AdScriptId'.
--   Identifies the bottom-most script which caused the frame to be labelled
--   as an ad.
data PageAdScriptId = PageAdScriptId
  {
    -- | Script Id of the bottom-most script which caused the frame to be labelled
    --   as an ad.
    PageAdScriptId -> Text
pageAdScriptIdScriptId :: Runtime.RuntimeScriptId,
    -- | Id of adScriptId's debugger.
    PageAdScriptId -> Text
pageAdScriptIdDebuggerId :: Runtime.RuntimeUniqueDebuggerId
  }
  deriving (PageAdScriptId -> PageAdScriptId -> Bool
(PageAdScriptId -> PageAdScriptId -> Bool)
-> (PageAdScriptId -> PageAdScriptId -> Bool) -> Eq PageAdScriptId
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageAdScriptId -> PageAdScriptId -> Bool
$c/= :: PageAdScriptId -> PageAdScriptId -> Bool
== :: PageAdScriptId -> PageAdScriptId -> Bool
$c== :: PageAdScriptId -> PageAdScriptId -> Bool
Eq, Int -> PageAdScriptId -> ShowS
[PageAdScriptId] -> ShowS
PageAdScriptId -> String
(Int -> PageAdScriptId -> ShowS)
-> (PageAdScriptId -> String)
-> ([PageAdScriptId] -> ShowS)
-> Show PageAdScriptId
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageAdScriptId] -> ShowS
$cshowList :: [PageAdScriptId] -> ShowS
show :: PageAdScriptId -> String
$cshow :: PageAdScriptId -> String
showsPrec :: Int -> PageAdScriptId -> ShowS
$cshowsPrec :: Int -> PageAdScriptId -> ShowS
Show)
instance FromJSON PageAdScriptId where
  parseJSON :: Value -> Parser PageAdScriptId
parseJSON = String
-> (Object -> Parser PageAdScriptId)
-> Value
-> Parser PageAdScriptId
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageAdScriptId" ((Object -> Parser PageAdScriptId)
 -> Value -> Parser PageAdScriptId)
-> (Object -> Parser PageAdScriptId)
-> Value
-> Parser PageAdScriptId
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> Text -> PageAdScriptId
PageAdScriptId
    (Text -> Text -> PageAdScriptId)
-> Parser Text -> Parser (Text -> PageAdScriptId)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"scriptId"
    Parser (Text -> PageAdScriptId)
-> Parser Text -> Parser PageAdScriptId
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"debuggerId"
instance ToJSON PageAdScriptId where
  toJSON :: PageAdScriptId -> Value
toJSON PageAdScriptId
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"scriptId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PageAdScriptId -> Text
pageAdScriptIdScriptId PageAdScriptId
p),
    (Text
"debuggerId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PageAdScriptId -> Text
pageAdScriptIdDebuggerId PageAdScriptId
p)
    ]

-- | Type 'Page.SecureContextType'.
--   Indicates whether the frame is a secure context and why it is the case.
data PageSecureContextType = PageSecureContextTypeSecure | PageSecureContextTypeSecureLocalhost | PageSecureContextTypeInsecureScheme | PageSecureContextTypeInsecureAncestor
  deriving (Eq PageSecureContextType
Eq PageSecureContextType
-> (PageSecureContextType -> PageSecureContextType -> Ordering)
-> (PageSecureContextType -> PageSecureContextType -> Bool)
-> (PageSecureContextType -> PageSecureContextType -> Bool)
-> (PageSecureContextType -> PageSecureContextType -> Bool)
-> (PageSecureContextType -> PageSecureContextType -> Bool)
-> (PageSecureContextType
    -> PageSecureContextType -> PageSecureContextType)
-> (PageSecureContextType
    -> PageSecureContextType -> PageSecureContextType)
-> Ord PageSecureContextType
PageSecureContextType -> PageSecureContextType -> Bool
PageSecureContextType -> PageSecureContextType -> Ordering
PageSecureContextType
-> PageSecureContextType -> PageSecureContextType
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: PageSecureContextType
-> PageSecureContextType -> PageSecureContextType
$cmin :: PageSecureContextType
-> PageSecureContextType -> PageSecureContextType
max :: PageSecureContextType
-> PageSecureContextType -> PageSecureContextType
$cmax :: PageSecureContextType
-> PageSecureContextType -> PageSecureContextType
>= :: PageSecureContextType -> PageSecureContextType -> Bool
$c>= :: PageSecureContextType -> PageSecureContextType -> Bool
> :: PageSecureContextType -> PageSecureContextType -> Bool
$c> :: PageSecureContextType -> PageSecureContextType -> Bool
<= :: PageSecureContextType -> PageSecureContextType -> Bool
$c<= :: PageSecureContextType -> PageSecureContextType -> Bool
< :: PageSecureContextType -> PageSecureContextType -> Bool
$c< :: PageSecureContextType -> PageSecureContextType -> Bool
compare :: PageSecureContextType -> PageSecureContextType -> Ordering
$ccompare :: PageSecureContextType -> PageSecureContextType -> Ordering
$cp1Ord :: Eq PageSecureContextType
Ord, PageSecureContextType -> PageSecureContextType -> Bool
(PageSecureContextType -> PageSecureContextType -> Bool)
-> (PageSecureContextType -> PageSecureContextType -> Bool)
-> Eq PageSecureContextType
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageSecureContextType -> PageSecureContextType -> Bool
$c/= :: PageSecureContextType -> PageSecureContextType -> Bool
== :: PageSecureContextType -> PageSecureContextType -> Bool
$c== :: PageSecureContextType -> PageSecureContextType -> Bool
Eq, Int -> PageSecureContextType -> ShowS
[PageSecureContextType] -> ShowS
PageSecureContextType -> String
(Int -> PageSecureContextType -> ShowS)
-> (PageSecureContextType -> String)
-> ([PageSecureContextType] -> ShowS)
-> Show PageSecureContextType
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageSecureContextType] -> ShowS
$cshowList :: [PageSecureContextType] -> ShowS
show :: PageSecureContextType -> String
$cshow :: PageSecureContextType -> String
showsPrec :: Int -> PageSecureContextType -> ShowS
$cshowsPrec :: Int -> PageSecureContextType -> ShowS
Show, ReadPrec [PageSecureContextType]
ReadPrec PageSecureContextType
Int -> ReadS PageSecureContextType
ReadS [PageSecureContextType]
(Int -> ReadS PageSecureContextType)
-> ReadS [PageSecureContextType]
-> ReadPrec PageSecureContextType
-> ReadPrec [PageSecureContextType]
-> Read PageSecureContextType
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PageSecureContextType]
$creadListPrec :: ReadPrec [PageSecureContextType]
readPrec :: ReadPrec PageSecureContextType
$creadPrec :: ReadPrec PageSecureContextType
readList :: ReadS [PageSecureContextType]
$creadList :: ReadS [PageSecureContextType]
readsPrec :: Int -> ReadS PageSecureContextType
$creadsPrec :: Int -> ReadS PageSecureContextType
Read)
instance FromJSON PageSecureContextType where
  parseJSON :: Value -> Parser PageSecureContextType
parseJSON = String
-> (Text -> Parser PageSecureContextType)
-> Value
-> Parser PageSecureContextType
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"PageSecureContextType" ((Text -> Parser PageSecureContextType)
 -> Value -> Parser PageSecureContextType)
-> (Text -> Parser PageSecureContextType)
-> Value
-> Parser PageSecureContextType
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"Secure" -> PageSecureContextType -> Parser PageSecureContextType
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageSecureContextType
PageSecureContextTypeSecure
    Text
"SecureLocalhost" -> PageSecureContextType -> Parser PageSecureContextType
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageSecureContextType
PageSecureContextTypeSecureLocalhost
    Text
"InsecureScheme" -> PageSecureContextType -> Parser PageSecureContextType
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageSecureContextType
PageSecureContextTypeInsecureScheme
    Text
"InsecureAncestor" -> PageSecureContextType -> Parser PageSecureContextType
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageSecureContextType
PageSecureContextTypeInsecureAncestor
    Text
"_" -> String -> Parser PageSecureContextType
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse PageSecureContextType"
instance ToJSON PageSecureContextType where
  toJSON :: PageSecureContextType -> Value
toJSON PageSecureContextType
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case PageSecureContextType
v of
    PageSecureContextType
PageSecureContextTypeSecure -> Text
"Secure"
    PageSecureContextType
PageSecureContextTypeSecureLocalhost -> Text
"SecureLocalhost"
    PageSecureContextType
PageSecureContextTypeInsecureScheme -> Text
"InsecureScheme"
    PageSecureContextType
PageSecureContextTypeInsecureAncestor -> Text
"InsecureAncestor"

-- | Type 'Page.CrossOriginIsolatedContextType'.
--   Indicates whether the frame is cross-origin isolated and why it is the case.
data PageCrossOriginIsolatedContextType = PageCrossOriginIsolatedContextTypeIsolated | PageCrossOriginIsolatedContextTypeNotIsolated | PageCrossOriginIsolatedContextTypeNotIsolatedFeatureDisabled
  deriving (Eq PageCrossOriginIsolatedContextType
Eq PageCrossOriginIsolatedContextType
-> (PageCrossOriginIsolatedContextType
    -> PageCrossOriginIsolatedContextType -> Ordering)
-> (PageCrossOriginIsolatedContextType
    -> PageCrossOriginIsolatedContextType -> Bool)
-> (PageCrossOriginIsolatedContextType
    -> PageCrossOriginIsolatedContextType -> Bool)
-> (PageCrossOriginIsolatedContextType
    -> PageCrossOriginIsolatedContextType -> Bool)
-> (PageCrossOriginIsolatedContextType
    -> PageCrossOriginIsolatedContextType -> Bool)
-> (PageCrossOriginIsolatedContextType
    -> PageCrossOriginIsolatedContextType
    -> PageCrossOriginIsolatedContextType)
-> (PageCrossOriginIsolatedContextType
    -> PageCrossOriginIsolatedContextType
    -> PageCrossOriginIsolatedContextType)
-> Ord PageCrossOriginIsolatedContextType
PageCrossOriginIsolatedContextType
-> PageCrossOriginIsolatedContextType -> Bool
PageCrossOriginIsolatedContextType
-> PageCrossOriginIsolatedContextType -> Ordering
PageCrossOriginIsolatedContextType
-> PageCrossOriginIsolatedContextType
-> PageCrossOriginIsolatedContextType
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: PageCrossOriginIsolatedContextType
-> PageCrossOriginIsolatedContextType
-> PageCrossOriginIsolatedContextType
$cmin :: PageCrossOriginIsolatedContextType
-> PageCrossOriginIsolatedContextType
-> PageCrossOriginIsolatedContextType
max :: PageCrossOriginIsolatedContextType
-> PageCrossOriginIsolatedContextType
-> PageCrossOriginIsolatedContextType
$cmax :: PageCrossOriginIsolatedContextType
-> PageCrossOriginIsolatedContextType
-> PageCrossOriginIsolatedContextType
>= :: PageCrossOriginIsolatedContextType
-> PageCrossOriginIsolatedContextType -> Bool
$c>= :: PageCrossOriginIsolatedContextType
-> PageCrossOriginIsolatedContextType -> Bool
> :: PageCrossOriginIsolatedContextType
-> PageCrossOriginIsolatedContextType -> Bool
$c> :: PageCrossOriginIsolatedContextType
-> PageCrossOriginIsolatedContextType -> Bool
<= :: PageCrossOriginIsolatedContextType
-> PageCrossOriginIsolatedContextType -> Bool
$c<= :: PageCrossOriginIsolatedContextType
-> PageCrossOriginIsolatedContextType -> Bool
< :: PageCrossOriginIsolatedContextType
-> PageCrossOriginIsolatedContextType -> Bool
$c< :: PageCrossOriginIsolatedContextType
-> PageCrossOriginIsolatedContextType -> Bool
compare :: PageCrossOriginIsolatedContextType
-> PageCrossOriginIsolatedContextType -> Ordering
$ccompare :: PageCrossOriginIsolatedContextType
-> PageCrossOriginIsolatedContextType -> Ordering
$cp1Ord :: Eq PageCrossOriginIsolatedContextType
Ord, PageCrossOriginIsolatedContextType
-> PageCrossOriginIsolatedContextType -> Bool
(PageCrossOriginIsolatedContextType
 -> PageCrossOriginIsolatedContextType -> Bool)
-> (PageCrossOriginIsolatedContextType
    -> PageCrossOriginIsolatedContextType -> Bool)
-> Eq PageCrossOriginIsolatedContextType
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageCrossOriginIsolatedContextType
-> PageCrossOriginIsolatedContextType -> Bool
$c/= :: PageCrossOriginIsolatedContextType
-> PageCrossOriginIsolatedContextType -> Bool
== :: PageCrossOriginIsolatedContextType
-> PageCrossOriginIsolatedContextType -> Bool
$c== :: PageCrossOriginIsolatedContextType
-> PageCrossOriginIsolatedContextType -> Bool
Eq, Int -> PageCrossOriginIsolatedContextType -> ShowS
[PageCrossOriginIsolatedContextType] -> ShowS
PageCrossOriginIsolatedContextType -> String
(Int -> PageCrossOriginIsolatedContextType -> ShowS)
-> (PageCrossOriginIsolatedContextType -> String)
-> ([PageCrossOriginIsolatedContextType] -> ShowS)
-> Show PageCrossOriginIsolatedContextType
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageCrossOriginIsolatedContextType] -> ShowS
$cshowList :: [PageCrossOriginIsolatedContextType] -> ShowS
show :: PageCrossOriginIsolatedContextType -> String
$cshow :: PageCrossOriginIsolatedContextType -> String
showsPrec :: Int -> PageCrossOriginIsolatedContextType -> ShowS
$cshowsPrec :: Int -> PageCrossOriginIsolatedContextType -> ShowS
Show, ReadPrec [PageCrossOriginIsolatedContextType]
ReadPrec PageCrossOriginIsolatedContextType
Int -> ReadS PageCrossOriginIsolatedContextType
ReadS [PageCrossOriginIsolatedContextType]
(Int -> ReadS PageCrossOriginIsolatedContextType)
-> ReadS [PageCrossOriginIsolatedContextType]
-> ReadPrec PageCrossOriginIsolatedContextType
-> ReadPrec [PageCrossOriginIsolatedContextType]
-> Read PageCrossOriginIsolatedContextType
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PageCrossOriginIsolatedContextType]
$creadListPrec :: ReadPrec [PageCrossOriginIsolatedContextType]
readPrec :: ReadPrec PageCrossOriginIsolatedContextType
$creadPrec :: ReadPrec PageCrossOriginIsolatedContextType
readList :: ReadS [PageCrossOriginIsolatedContextType]
$creadList :: ReadS [PageCrossOriginIsolatedContextType]
readsPrec :: Int -> ReadS PageCrossOriginIsolatedContextType
$creadsPrec :: Int -> ReadS PageCrossOriginIsolatedContextType
Read)
instance FromJSON PageCrossOriginIsolatedContextType where
  parseJSON :: Value -> Parser PageCrossOriginIsolatedContextType
parseJSON = String
-> (Text -> Parser PageCrossOriginIsolatedContextType)
-> Value
-> Parser PageCrossOriginIsolatedContextType
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"PageCrossOriginIsolatedContextType" ((Text -> Parser PageCrossOriginIsolatedContextType)
 -> Value -> Parser PageCrossOriginIsolatedContextType)
-> (Text -> Parser PageCrossOriginIsolatedContextType)
-> Value
-> Parser PageCrossOriginIsolatedContextType
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"Isolated" -> PageCrossOriginIsolatedContextType
-> Parser PageCrossOriginIsolatedContextType
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageCrossOriginIsolatedContextType
PageCrossOriginIsolatedContextTypeIsolated
    Text
"NotIsolated" -> PageCrossOriginIsolatedContextType
-> Parser PageCrossOriginIsolatedContextType
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageCrossOriginIsolatedContextType
PageCrossOriginIsolatedContextTypeNotIsolated
    Text
"NotIsolatedFeatureDisabled" -> PageCrossOriginIsolatedContextType
-> Parser PageCrossOriginIsolatedContextType
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageCrossOriginIsolatedContextType
PageCrossOriginIsolatedContextTypeNotIsolatedFeatureDisabled
    Text
"_" -> String -> Parser PageCrossOriginIsolatedContextType
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse PageCrossOriginIsolatedContextType"
instance ToJSON PageCrossOriginIsolatedContextType where
  toJSON :: PageCrossOriginIsolatedContextType -> Value
toJSON PageCrossOriginIsolatedContextType
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case PageCrossOriginIsolatedContextType
v of
    PageCrossOriginIsolatedContextType
PageCrossOriginIsolatedContextTypeIsolated -> Text
"Isolated"
    PageCrossOriginIsolatedContextType
PageCrossOriginIsolatedContextTypeNotIsolated -> Text
"NotIsolated"
    PageCrossOriginIsolatedContextType
PageCrossOriginIsolatedContextTypeNotIsolatedFeatureDisabled -> Text
"NotIsolatedFeatureDisabled"

-- | Type 'Page.GatedAPIFeatures'.
data PageGatedAPIFeatures = PageGatedAPIFeaturesSharedArrayBuffers | PageGatedAPIFeaturesSharedArrayBuffersTransferAllowed | PageGatedAPIFeaturesPerformanceMeasureMemory | PageGatedAPIFeaturesPerformanceProfile
  deriving (Eq PageGatedAPIFeatures
Eq PageGatedAPIFeatures
-> (PageGatedAPIFeatures -> PageGatedAPIFeatures -> Ordering)
-> (PageGatedAPIFeatures -> PageGatedAPIFeatures -> Bool)
-> (PageGatedAPIFeatures -> PageGatedAPIFeatures -> Bool)
-> (PageGatedAPIFeatures -> PageGatedAPIFeatures -> Bool)
-> (PageGatedAPIFeatures -> PageGatedAPIFeatures -> Bool)
-> (PageGatedAPIFeatures
    -> PageGatedAPIFeatures -> PageGatedAPIFeatures)
-> (PageGatedAPIFeatures
    -> PageGatedAPIFeatures -> PageGatedAPIFeatures)
-> Ord PageGatedAPIFeatures
PageGatedAPIFeatures -> PageGatedAPIFeatures -> Bool
PageGatedAPIFeatures -> PageGatedAPIFeatures -> Ordering
PageGatedAPIFeatures
-> PageGatedAPIFeatures -> PageGatedAPIFeatures
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: PageGatedAPIFeatures
-> PageGatedAPIFeatures -> PageGatedAPIFeatures
$cmin :: PageGatedAPIFeatures
-> PageGatedAPIFeatures -> PageGatedAPIFeatures
max :: PageGatedAPIFeatures
-> PageGatedAPIFeatures -> PageGatedAPIFeatures
$cmax :: PageGatedAPIFeatures
-> PageGatedAPIFeatures -> PageGatedAPIFeatures
>= :: PageGatedAPIFeatures -> PageGatedAPIFeatures -> Bool
$c>= :: PageGatedAPIFeatures -> PageGatedAPIFeatures -> Bool
> :: PageGatedAPIFeatures -> PageGatedAPIFeatures -> Bool
$c> :: PageGatedAPIFeatures -> PageGatedAPIFeatures -> Bool
<= :: PageGatedAPIFeatures -> PageGatedAPIFeatures -> Bool
$c<= :: PageGatedAPIFeatures -> PageGatedAPIFeatures -> Bool
< :: PageGatedAPIFeatures -> PageGatedAPIFeatures -> Bool
$c< :: PageGatedAPIFeatures -> PageGatedAPIFeatures -> Bool
compare :: PageGatedAPIFeatures -> PageGatedAPIFeatures -> Ordering
$ccompare :: PageGatedAPIFeatures -> PageGatedAPIFeatures -> Ordering
$cp1Ord :: Eq PageGatedAPIFeatures
Ord, PageGatedAPIFeatures -> PageGatedAPIFeatures -> Bool
(PageGatedAPIFeatures -> PageGatedAPIFeatures -> Bool)
-> (PageGatedAPIFeatures -> PageGatedAPIFeatures -> Bool)
-> Eq PageGatedAPIFeatures
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageGatedAPIFeatures -> PageGatedAPIFeatures -> Bool
$c/= :: PageGatedAPIFeatures -> PageGatedAPIFeatures -> Bool
== :: PageGatedAPIFeatures -> PageGatedAPIFeatures -> Bool
$c== :: PageGatedAPIFeatures -> PageGatedAPIFeatures -> Bool
Eq, Int -> PageGatedAPIFeatures -> ShowS
[PageGatedAPIFeatures] -> ShowS
PageGatedAPIFeatures -> String
(Int -> PageGatedAPIFeatures -> ShowS)
-> (PageGatedAPIFeatures -> String)
-> ([PageGatedAPIFeatures] -> ShowS)
-> Show PageGatedAPIFeatures
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageGatedAPIFeatures] -> ShowS
$cshowList :: [PageGatedAPIFeatures] -> ShowS
show :: PageGatedAPIFeatures -> String
$cshow :: PageGatedAPIFeatures -> String
showsPrec :: Int -> PageGatedAPIFeatures -> ShowS
$cshowsPrec :: Int -> PageGatedAPIFeatures -> ShowS
Show, ReadPrec [PageGatedAPIFeatures]
ReadPrec PageGatedAPIFeatures
Int -> ReadS PageGatedAPIFeatures
ReadS [PageGatedAPIFeatures]
(Int -> ReadS PageGatedAPIFeatures)
-> ReadS [PageGatedAPIFeatures]
-> ReadPrec PageGatedAPIFeatures
-> ReadPrec [PageGatedAPIFeatures]
-> Read PageGatedAPIFeatures
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PageGatedAPIFeatures]
$creadListPrec :: ReadPrec [PageGatedAPIFeatures]
readPrec :: ReadPrec PageGatedAPIFeatures
$creadPrec :: ReadPrec PageGatedAPIFeatures
readList :: ReadS [PageGatedAPIFeatures]
$creadList :: ReadS [PageGatedAPIFeatures]
readsPrec :: Int -> ReadS PageGatedAPIFeatures
$creadsPrec :: Int -> ReadS PageGatedAPIFeatures
Read)
instance FromJSON PageGatedAPIFeatures where
  parseJSON :: Value -> Parser PageGatedAPIFeatures
parseJSON = String
-> (Text -> Parser PageGatedAPIFeatures)
-> Value
-> Parser PageGatedAPIFeatures
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"PageGatedAPIFeatures" ((Text -> Parser PageGatedAPIFeatures)
 -> Value -> Parser PageGatedAPIFeatures)
-> (Text -> Parser PageGatedAPIFeatures)
-> Value
-> Parser PageGatedAPIFeatures
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"SharedArrayBuffers" -> PageGatedAPIFeatures -> Parser PageGatedAPIFeatures
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageGatedAPIFeatures
PageGatedAPIFeaturesSharedArrayBuffers
    Text
"SharedArrayBuffersTransferAllowed" -> PageGatedAPIFeatures -> Parser PageGatedAPIFeatures
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageGatedAPIFeatures
PageGatedAPIFeaturesSharedArrayBuffersTransferAllowed
    Text
"PerformanceMeasureMemory" -> PageGatedAPIFeatures -> Parser PageGatedAPIFeatures
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageGatedAPIFeatures
PageGatedAPIFeaturesPerformanceMeasureMemory
    Text
"PerformanceProfile" -> PageGatedAPIFeatures -> Parser PageGatedAPIFeatures
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageGatedAPIFeatures
PageGatedAPIFeaturesPerformanceProfile
    Text
"_" -> String -> Parser PageGatedAPIFeatures
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse PageGatedAPIFeatures"
instance ToJSON PageGatedAPIFeatures where
  toJSON :: PageGatedAPIFeatures -> Value
toJSON PageGatedAPIFeatures
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case PageGatedAPIFeatures
v of
    PageGatedAPIFeatures
PageGatedAPIFeaturesSharedArrayBuffers -> Text
"SharedArrayBuffers"
    PageGatedAPIFeatures
PageGatedAPIFeaturesSharedArrayBuffersTransferAllowed -> Text
"SharedArrayBuffersTransferAllowed"
    PageGatedAPIFeatures
PageGatedAPIFeaturesPerformanceMeasureMemory -> Text
"PerformanceMeasureMemory"
    PageGatedAPIFeatures
PageGatedAPIFeaturesPerformanceProfile -> Text
"PerformanceProfile"

-- | Type 'Page.PermissionsPolicyFeature'.
--   All Permissions Policy features. This enum should match the one defined
--   in third_party/blink/renderer/core/permissions_policy/permissions_policy_features.json5.
data PagePermissionsPolicyFeature = PagePermissionsPolicyFeatureAccelerometer | PagePermissionsPolicyFeatureAmbientLightSensor | PagePermissionsPolicyFeatureAttributionReporting | PagePermissionsPolicyFeatureAutoplay | PagePermissionsPolicyFeatureBluetooth | PagePermissionsPolicyFeatureBrowsingTopics | PagePermissionsPolicyFeatureCamera | PagePermissionsPolicyFeatureChDpr | PagePermissionsPolicyFeatureChDeviceMemory | PagePermissionsPolicyFeatureChDownlink | PagePermissionsPolicyFeatureChEct | PagePermissionsPolicyFeatureChPrefersColorScheme | PagePermissionsPolicyFeatureChPrefersReducedMotion | PagePermissionsPolicyFeatureChRtt | PagePermissionsPolicyFeatureChSaveData | PagePermissionsPolicyFeatureChUa | PagePermissionsPolicyFeatureChUaArch | PagePermissionsPolicyFeatureChUaBitness | PagePermissionsPolicyFeatureChUaPlatform | PagePermissionsPolicyFeatureChUaModel | PagePermissionsPolicyFeatureChUaMobile | PagePermissionsPolicyFeatureChUaFull | PagePermissionsPolicyFeatureChUaFullVersion | PagePermissionsPolicyFeatureChUaFullVersionList | PagePermissionsPolicyFeatureChUaPlatformVersion | PagePermissionsPolicyFeatureChUaReduced | PagePermissionsPolicyFeatureChUaWow64 | PagePermissionsPolicyFeatureChViewportHeight | PagePermissionsPolicyFeatureChViewportWidth | PagePermissionsPolicyFeatureChWidth | PagePermissionsPolicyFeatureClipboardRead | PagePermissionsPolicyFeatureClipboardWrite | PagePermissionsPolicyFeatureCrossOriginIsolated | PagePermissionsPolicyFeatureDirectSockets | PagePermissionsPolicyFeatureDisplayCapture | PagePermissionsPolicyFeatureDocumentDomain | PagePermissionsPolicyFeatureEncryptedMedia | PagePermissionsPolicyFeatureExecutionWhileOutOfViewport | PagePermissionsPolicyFeatureExecutionWhileNotRendered | PagePermissionsPolicyFeatureFocusWithoutUserActivation | PagePermissionsPolicyFeatureFullscreen | PagePermissionsPolicyFeatureFrobulate | PagePermissionsPolicyFeatureGamepad | PagePermissionsPolicyFeatureGeolocation | PagePermissionsPolicyFeatureGyroscope | PagePermissionsPolicyFeatureHid | PagePermissionsPolicyFeatureIdentityCredentialsGet | PagePermissionsPolicyFeatureIdleDetection | PagePermissionsPolicyFeatureInterestCohort | PagePermissionsPolicyFeatureJoinAdInterestGroup | PagePermissionsPolicyFeatureKeyboardMap | PagePermissionsPolicyFeatureLocalFonts | PagePermissionsPolicyFeatureMagnetometer | PagePermissionsPolicyFeatureMicrophone | PagePermissionsPolicyFeatureMidi | PagePermissionsPolicyFeatureOtpCredentials | PagePermissionsPolicyFeaturePayment | PagePermissionsPolicyFeaturePictureInPicture | PagePermissionsPolicyFeaturePublickeyCredentialsGet | PagePermissionsPolicyFeatureRunAdAuction | PagePermissionsPolicyFeatureScreenWakeLock | PagePermissionsPolicyFeatureSerial | PagePermissionsPolicyFeatureSharedAutofill | PagePermissionsPolicyFeatureSharedStorage | PagePermissionsPolicyFeatureStorageAccess | PagePermissionsPolicyFeatureSyncXhr | PagePermissionsPolicyFeatureTrustTokenRedemption | PagePermissionsPolicyFeatureUnload | PagePermissionsPolicyFeatureUsb | PagePermissionsPolicyFeatureVerticalScroll | PagePermissionsPolicyFeatureWebShare | PagePermissionsPolicyFeatureWindowPlacement | PagePermissionsPolicyFeatureXrSpatialTracking
  deriving (Eq PagePermissionsPolicyFeature
Eq PagePermissionsPolicyFeature
-> (PagePermissionsPolicyFeature
    -> PagePermissionsPolicyFeature -> Ordering)
-> (PagePermissionsPolicyFeature
    -> PagePermissionsPolicyFeature -> Bool)
-> (PagePermissionsPolicyFeature
    -> PagePermissionsPolicyFeature -> Bool)
-> (PagePermissionsPolicyFeature
    -> PagePermissionsPolicyFeature -> Bool)
-> (PagePermissionsPolicyFeature
    -> PagePermissionsPolicyFeature -> Bool)
-> (PagePermissionsPolicyFeature
    -> PagePermissionsPolicyFeature -> PagePermissionsPolicyFeature)
-> (PagePermissionsPolicyFeature
    -> PagePermissionsPolicyFeature -> PagePermissionsPolicyFeature)
-> Ord PagePermissionsPolicyFeature
PagePermissionsPolicyFeature
-> PagePermissionsPolicyFeature -> Bool
PagePermissionsPolicyFeature
-> PagePermissionsPolicyFeature -> Ordering
PagePermissionsPolicyFeature
-> PagePermissionsPolicyFeature -> PagePermissionsPolicyFeature
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: PagePermissionsPolicyFeature
-> PagePermissionsPolicyFeature -> PagePermissionsPolicyFeature
$cmin :: PagePermissionsPolicyFeature
-> PagePermissionsPolicyFeature -> PagePermissionsPolicyFeature
max :: PagePermissionsPolicyFeature
-> PagePermissionsPolicyFeature -> PagePermissionsPolicyFeature
$cmax :: PagePermissionsPolicyFeature
-> PagePermissionsPolicyFeature -> PagePermissionsPolicyFeature
>= :: PagePermissionsPolicyFeature
-> PagePermissionsPolicyFeature -> Bool
$c>= :: PagePermissionsPolicyFeature
-> PagePermissionsPolicyFeature -> Bool
> :: PagePermissionsPolicyFeature
-> PagePermissionsPolicyFeature -> Bool
$c> :: PagePermissionsPolicyFeature
-> PagePermissionsPolicyFeature -> Bool
<= :: PagePermissionsPolicyFeature
-> PagePermissionsPolicyFeature -> Bool
$c<= :: PagePermissionsPolicyFeature
-> PagePermissionsPolicyFeature -> Bool
< :: PagePermissionsPolicyFeature
-> PagePermissionsPolicyFeature -> Bool
$c< :: PagePermissionsPolicyFeature
-> PagePermissionsPolicyFeature -> Bool
compare :: PagePermissionsPolicyFeature
-> PagePermissionsPolicyFeature -> Ordering
$ccompare :: PagePermissionsPolicyFeature
-> PagePermissionsPolicyFeature -> Ordering
$cp1Ord :: Eq PagePermissionsPolicyFeature
Ord, PagePermissionsPolicyFeature
-> PagePermissionsPolicyFeature -> Bool
(PagePermissionsPolicyFeature
 -> PagePermissionsPolicyFeature -> Bool)
-> (PagePermissionsPolicyFeature
    -> PagePermissionsPolicyFeature -> Bool)
-> Eq PagePermissionsPolicyFeature
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PagePermissionsPolicyFeature
-> PagePermissionsPolicyFeature -> Bool
$c/= :: PagePermissionsPolicyFeature
-> PagePermissionsPolicyFeature -> Bool
== :: PagePermissionsPolicyFeature
-> PagePermissionsPolicyFeature -> Bool
$c== :: PagePermissionsPolicyFeature
-> PagePermissionsPolicyFeature -> Bool
Eq, Int -> PagePermissionsPolicyFeature -> ShowS
[PagePermissionsPolicyFeature] -> ShowS
PagePermissionsPolicyFeature -> String
(Int -> PagePermissionsPolicyFeature -> ShowS)
-> (PagePermissionsPolicyFeature -> String)
-> ([PagePermissionsPolicyFeature] -> ShowS)
-> Show PagePermissionsPolicyFeature
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PagePermissionsPolicyFeature] -> ShowS
$cshowList :: [PagePermissionsPolicyFeature] -> ShowS
show :: PagePermissionsPolicyFeature -> String
$cshow :: PagePermissionsPolicyFeature -> String
showsPrec :: Int -> PagePermissionsPolicyFeature -> ShowS
$cshowsPrec :: Int -> PagePermissionsPolicyFeature -> ShowS
Show, ReadPrec [PagePermissionsPolicyFeature]
ReadPrec PagePermissionsPolicyFeature
Int -> ReadS PagePermissionsPolicyFeature
ReadS [PagePermissionsPolicyFeature]
(Int -> ReadS PagePermissionsPolicyFeature)
-> ReadS [PagePermissionsPolicyFeature]
-> ReadPrec PagePermissionsPolicyFeature
-> ReadPrec [PagePermissionsPolicyFeature]
-> Read PagePermissionsPolicyFeature
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PagePermissionsPolicyFeature]
$creadListPrec :: ReadPrec [PagePermissionsPolicyFeature]
readPrec :: ReadPrec PagePermissionsPolicyFeature
$creadPrec :: ReadPrec PagePermissionsPolicyFeature
readList :: ReadS [PagePermissionsPolicyFeature]
$creadList :: ReadS [PagePermissionsPolicyFeature]
readsPrec :: Int -> ReadS PagePermissionsPolicyFeature
$creadsPrec :: Int -> ReadS PagePermissionsPolicyFeature
Read)
instance FromJSON PagePermissionsPolicyFeature where
  parseJSON :: Value -> Parser PagePermissionsPolicyFeature
parseJSON = String
-> (Text -> Parser PagePermissionsPolicyFeature)
-> Value
-> Parser PagePermissionsPolicyFeature
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"PagePermissionsPolicyFeature" ((Text -> Parser PagePermissionsPolicyFeature)
 -> Value -> Parser PagePermissionsPolicyFeature)
-> (Text -> Parser PagePermissionsPolicyFeature)
-> Value
-> Parser PagePermissionsPolicyFeature
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"accelerometer" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureAccelerometer
    Text
"ambient-light-sensor" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureAmbientLightSensor
    Text
"attribution-reporting" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureAttributionReporting
    Text
"autoplay" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureAutoplay
    Text
"bluetooth" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureBluetooth
    Text
"browsing-topics" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureBrowsingTopics
    Text
"camera" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureCamera
    Text
"ch-dpr" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChDpr
    Text
"ch-device-memory" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChDeviceMemory
    Text
"ch-downlink" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChDownlink
    Text
"ch-ect" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChEct
    Text
"ch-prefers-color-scheme" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChPrefersColorScheme
    Text
"ch-prefers-reduced-motion" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChPrefersReducedMotion
    Text
"ch-rtt" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChRtt
    Text
"ch-save-data" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChSaveData
    Text
"ch-ua" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChUa
    Text
"ch-ua-arch" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChUaArch
    Text
"ch-ua-bitness" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChUaBitness
    Text
"ch-ua-platform" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChUaPlatform
    Text
"ch-ua-model" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChUaModel
    Text
"ch-ua-mobile" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChUaMobile
    Text
"ch-ua-full" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChUaFull
    Text
"ch-ua-full-version" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChUaFullVersion
    Text
"ch-ua-full-version-list" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChUaFullVersionList
    Text
"ch-ua-platform-version" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChUaPlatformVersion
    Text
"ch-ua-reduced" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChUaReduced
    Text
"ch-ua-wow64" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChUaWow64
    Text
"ch-viewport-height" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChViewportHeight
    Text
"ch-viewport-width" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChViewportWidth
    Text
"ch-width" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChWidth
    Text
"clipboard-read" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureClipboardRead
    Text
"clipboard-write" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureClipboardWrite
    Text
"cross-origin-isolated" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureCrossOriginIsolated
    Text
"direct-sockets" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureDirectSockets
    Text
"display-capture" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureDisplayCapture
    Text
"document-domain" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureDocumentDomain
    Text
"encrypted-media" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureEncryptedMedia
    Text
"execution-while-out-of-viewport" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureExecutionWhileOutOfViewport
    Text
"execution-while-not-rendered" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureExecutionWhileNotRendered
    Text
"focus-without-user-activation" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureFocusWithoutUserActivation
    Text
"fullscreen" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureFullscreen
    Text
"frobulate" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureFrobulate
    Text
"gamepad" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureGamepad
    Text
"geolocation" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureGeolocation
    Text
"gyroscope" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureGyroscope
    Text
"hid" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureHid
    Text
"identity-credentials-get" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureIdentityCredentialsGet
    Text
"idle-detection" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureIdleDetection
    Text
"interest-cohort" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureInterestCohort
    Text
"join-ad-interest-group" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureJoinAdInterestGroup
    Text
"keyboard-map" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureKeyboardMap
    Text
"local-fonts" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureLocalFonts
    Text
"magnetometer" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureMagnetometer
    Text
"microphone" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureMicrophone
    Text
"midi" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureMidi
    Text
"otp-credentials" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureOtpCredentials
    Text
"payment" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeaturePayment
    Text
"picture-in-picture" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeaturePictureInPicture
    Text
"publickey-credentials-get" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeaturePublickeyCredentialsGet
    Text
"run-ad-auction" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureRunAdAuction
    Text
"screen-wake-lock" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureScreenWakeLock
    Text
"serial" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureSerial
    Text
"shared-autofill" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureSharedAutofill
    Text
"shared-storage" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureSharedStorage
    Text
"storage-access" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureStorageAccess
    Text
"sync-xhr" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureSyncXhr
    Text
"trust-token-redemption" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureTrustTokenRedemption
    Text
"unload" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureUnload
    Text
"usb" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureUsb
    Text
"vertical-scroll" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureVerticalScroll
    Text
"web-share" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureWebShare
    Text
"window-placement" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureWindowPlacement
    Text
"xr-spatial-tracking" -> PagePermissionsPolicyFeature -> Parser PagePermissionsPolicyFeature
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureXrSpatialTracking
    Text
"_" -> String -> Parser PagePermissionsPolicyFeature
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse PagePermissionsPolicyFeature"
instance ToJSON PagePermissionsPolicyFeature where
  toJSON :: PagePermissionsPolicyFeature -> Value
toJSON PagePermissionsPolicyFeature
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case PagePermissionsPolicyFeature
v of
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureAccelerometer -> Text
"accelerometer"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureAmbientLightSensor -> Text
"ambient-light-sensor"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureAttributionReporting -> Text
"attribution-reporting"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureAutoplay -> Text
"autoplay"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureBluetooth -> Text
"bluetooth"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureBrowsingTopics -> Text
"browsing-topics"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureCamera -> Text
"camera"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChDpr -> Text
"ch-dpr"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChDeviceMemory -> Text
"ch-device-memory"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChDownlink -> Text
"ch-downlink"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChEct -> Text
"ch-ect"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChPrefersColorScheme -> Text
"ch-prefers-color-scheme"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChPrefersReducedMotion -> Text
"ch-prefers-reduced-motion"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChRtt -> Text
"ch-rtt"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChSaveData -> Text
"ch-save-data"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChUa -> Text
"ch-ua"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChUaArch -> Text
"ch-ua-arch"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChUaBitness -> Text
"ch-ua-bitness"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChUaPlatform -> Text
"ch-ua-platform"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChUaModel -> Text
"ch-ua-model"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChUaMobile -> Text
"ch-ua-mobile"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChUaFull -> Text
"ch-ua-full"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChUaFullVersion -> Text
"ch-ua-full-version"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChUaFullVersionList -> Text
"ch-ua-full-version-list"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChUaPlatformVersion -> Text
"ch-ua-platform-version"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChUaReduced -> Text
"ch-ua-reduced"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChUaWow64 -> Text
"ch-ua-wow64"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChViewportHeight -> Text
"ch-viewport-height"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChViewportWidth -> Text
"ch-viewport-width"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureChWidth -> Text
"ch-width"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureClipboardRead -> Text
"clipboard-read"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureClipboardWrite -> Text
"clipboard-write"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureCrossOriginIsolated -> Text
"cross-origin-isolated"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureDirectSockets -> Text
"direct-sockets"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureDisplayCapture -> Text
"display-capture"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureDocumentDomain -> Text
"document-domain"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureEncryptedMedia -> Text
"encrypted-media"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureExecutionWhileOutOfViewport -> Text
"execution-while-out-of-viewport"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureExecutionWhileNotRendered -> Text
"execution-while-not-rendered"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureFocusWithoutUserActivation -> Text
"focus-without-user-activation"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureFullscreen -> Text
"fullscreen"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureFrobulate -> Text
"frobulate"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureGamepad -> Text
"gamepad"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureGeolocation -> Text
"geolocation"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureGyroscope -> Text
"gyroscope"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureHid -> Text
"hid"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureIdentityCredentialsGet -> Text
"identity-credentials-get"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureIdleDetection -> Text
"idle-detection"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureInterestCohort -> Text
"interest-cohort"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureJoinAdInterestGroup -> Text
"join-ad-interest-group"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureKeyboardMap -> Text
"keyboard-map"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureLocalFonts -> Text
"local-fonts"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureMagnetometer -> Text
"magnetometer"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureMicrophone -> Text
"microphone"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureMidi -> Text
"midi"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureOtpCredentials -> Text
"otp-credentials"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeaturePayment -> Text
"payment"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeaturePictureInPicture -> Text
"picture-in-picture"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeaturePublickeyCredentialsGet -> Text
"publickey-credentials-get"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureRunAdAuction -> Text
"run-ad-auction"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureScreenWakeLock -> Text
"screen-wake-lock"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureSerial -> Text
"serial"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureSharedAutofill -> Text
"shared-autofill"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureSharedStorage -> Text
"shared-storage"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureStorageAccess -> Text
"storage-access"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureSyncXhr -> Text
"sync-xhr"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureTrustTokenRedemption -> Text
"trust-token-redemption"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureUnload -> Text
"unload"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureUsb -> Text
"usb"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureVerticalScroll -> Text
"vertical-scroll"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureWebShare -> Text
"web-share"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureWindowPlacement -> Text
"window-placement"
    PagePermissionsPolicyFeature
PagePermissionsPolicyFeatureXrSpatialTracking -> Text
"xr-spatial-tracking"

-- | Type 'Page.PermissionsPolicyBlockReason'.
--   Reason for a permissions policy feature to be disabled.
data PagePermissionsPolicyBlockReason = PagePermissionsPolicyBlockReasonHeader | PagePermissionsPolicyBlockReasonIframeAttribute | PagePermissionsPolicyBlockReasonInFencedFrameTree | PagePermissionsPolicyBlockReasonInIsolatedApp
  deriving (Eq PagePermissionsPolicyBlockReason
Eq PagePermissionsPolicyBlockReason
-> (PagePermissionsPolicyBlockReason
    -> PagePermissionsPolicyBlockReason -> Ordering)
-> (PagePermissionsPolicyBlockReason
    -> PagePermissionsPolicyBlockReason -> Bool)
-> (PagePermissionsPolicyBlockReason
    -> PagePermissionsPolicyBlockReason -> Bool)
-> (PagePermissionsPolicyBlockReason
    -> PagePermissionsPolicyBlockReason -> Bool)
-> (PagePermissionsPolicyBlockReason
    -> PagePermissionsPolicyBlockReason -> Bool)
-> (PagePermissionsPolicyBlockReason
    -> PagePermissionsPolicyBlockReason
    -> PagePermissionsPolicyBlockReason)
-> (PagePermissionsPolicyBlockReason
    -> PagePermissionsPolicyBlockReason
    -> PagePermissionsPolicyBlockReason)
-> Ord PagePermissionsPolicyBlockReason
PagePermissionsPolicyBlockReason
-> PagePermissionsPolicyBlockReason -> Bool
PagePermissionsPolicyBlockReason
-> PagePermissionsPolicyBlockReason -> Ordering
PagePermissionsPolicyBlockReason
-> PagePermissionsPolicyBlockReason
-> PagePermissionsPolicyBlockReason
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: PagePermissionsPolicyBlockReason
-> PagePermissionsPolicyBlockReason
-> PagePermissionsPolicyBlockReason
$cmin :: PagePermissionsPolicyBlockReason
-> PagePermissionsPolicyBlockReason
-> PagePermissionsPolicyBlockReason
max :: PagePermissionsPolicyBlockReason
-> PagePermissionsPolicyBlockReason
-> PagePermissionsPolicyBlockReason
$cmax :: PagePermissionsPolicyBlockReason
-> PagePermissionsPolicyBlockReason
-> PagePermissionsPolicyBlockReason
>= :: PagePermissionsPolicyBlockReason
-> PagePermissionsPolicyBlockReason -> Bool
$c>= :: PagePermissionsPolicyBlockReason
-> PagePermissionsPolicyBlockReason -> Bool
> :: PagePermissionsPolicyBlockReason
-> PagePermissionsPolicyBlockReason -> Bool
$c> :: PagePermissionsPolicyBlockReason
-> PagePermissionsPolicyBlockReason -> Bool
<= :: PagePermissionsPolicyBlockReason
-> PagePermissionsPolicyBlockReason -> Bool
$c<= :: PagePermissionsPolicyBlockReason
-> PagePermissionsPolicyBlockReason -> Bool
< :: PagePermissionsPolicyBlockReason
-> PagePermissionsPolicyBlockReason -> Bool
$c< :: PagePermissionsPolicyBlockReason
-> PagePermissionsPolicyBlockReason -> Bool
compare :: PagePermissionsPolicyBlockReason
-> PagePermissionsPolicyBlockReason -> Ordering
$ccompare :: PagePermissionsPolicyBlockReason
-> PagePermissionsPolicyBlockReason -> Ordering
$cp1Ord :: Eq PagePermissionsPolicyBlockReason
Ord, PagePermissionsPolicyBlockReason
-> PagePermissionsPolicyBlockReason -> Bool
(PagePermissionsPolicyBlockReason
 -> PagePermissionsPolicyBlockReason -> Bool)
-> (PagePermissionsPolicyBlockReason
    -> PagePermissionsPolicyBlockReason -> Bool)
-> Eq PagePermissionsPolicyBlockReason
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PagePermissionsPolicyBlockReason
-> PagePermissionsPolicyBlockReason -> Bool
$c/= :: PagePermissionsPolicyBlockReason
-> PagePermissionsPolicyBlockReason -> Bool
== :: PagePermissionsPolicyBlockReason
-> PagePermissionsPolicyBlockReason -> Bool
$c== :: PagePermissionsPolicyBlockReason
-> PagePermissionsPolicyBlockReason -> Bool
Eq, Int -> PagePermissionsPolicyBlockReason -> ShowS
[PagePermissionsPolicyBlockReason] -> ShowS
PagePermissionsPolicyBlockReason -> String
(Int -> PagePermissionsPolicyBlockReason -> ShowS)
-> (PagePermissionsPolicyBlockReason -> String)
-> ([PagePermissionsPolicyBlockReason] -> ShowS)
-> Show PagePermissionsPolicyBlockReason
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PagePermissionsPolicyBlockReason] -> ShowS
$cshowList :: [PagePermissionsPolicyBlockReason] -> ShowS
show :: PagePermissionsPolicyBlockReason -> String
$cshow :: PagePermissionsPolicyBlockReason -> String
showsPrec :: Int -> PagePermissionsPolicyBlockReason -> ShowS
$cshowsPrec :: Int -> PagePermissionsPolicyBlockReason -> ShowS
Show, ReadPrec [PagePermissionsPolicyBlockReason]
ReadPrec PagePermissionsPolicyBlockReason
Int -> ReadS PagePermissionsPolicyBlockReason
ReadS [PagePermissionsPolicyBlockReason]
(Int -> ReadS PagePermissionsPolicyBlockReason)
-> ReadS [PagePermissionsPolicyBlockReason]
-> ReadPrec PagePermissionsPolicyBlockReason
-> ReadPrec [PagePermissionsPolicyBlockReason]
-> Read PagePermissionsPolicyBlockReason
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PagePermissionsPolicyBlockReason]
$creadListPrec :: ReadPrec [PagePermissionsPolicyBlockReason]
readPrec :: ReadPrec PagePermissionsPolicyBlockReason
$creadPrec :: ReadPrec PagePermissionsPolicyBlockReason
readList :: ReadS [PagePermissionsPolicyBlockReason]
$creadList :: ReadS [PagePermissionsPolicyBlockReason]
readsPrec :: Int -> ReadS PagePermissionsPolicyBlockReason
$creadsPrec :: Int -> ReadS PagePermissionsPolicyBlockReason
Read)
instance FromJSON PagePermissionsPolicyBlockReason where
  parseJSON :: Value -> Parser PagePermissionsPolicyBlockReason
parseJSON = String
-> (Text -> Parser PagePermissionsPolicyBlockReason)
-> Value
-> Parser PagePermissionsPolicyBlockReason
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"PagePermissionsPolicyBlockReason" ((Text -> Parser PagePermissionsPolicyBlockReason)
 -> Value -> Parser PagePermissionsPolicyBlockReason)
-> (Text -> Parser PagePermissionsPolicyBlockReason)
-> Value
-> Parser PagePermissionsPolicyBlockReason
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"Header" -> PagePermissionsPolicyBlockReason
-> Parser PagePermissionsPolicyBlockReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyBlockReason
PagePermissionsPolicyBlockReasonHeader
    Text
"IframeAttribute" -> PagePermissionsPolicyBlockReason
-> Parser PagePermissionsPolicyBlockReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyBlockReason
PagePermissionsPolicyBlockReasonIframeAttribute
    Text
"InFencedFrameTree" -> PagePermissionsPolicyBlockReason
-> Parser PagePermissionsPolicyBlockReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyBlockReason
PagePermissionsPolicyBlockReasonInFencedFrameTree
    Text
"InIsolatedApp" -> PagePermissionsPolicyBlockReason
-> Parser PagePermissionsPolicyBlockReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePermissionsPolicyBlockReason
PagePermissionsPolicyBlockReasonInIsolatedApp
    Text
"_" -> String -> Parser PagePermissionsPolicyBlockReason
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse PagePermissionsPolicyBlockReason"
instance ToJSON PagePermissionsPolicyBlockReason where
  toJSON :: PagePermissionsPolicyBlockReason -> Value
toJSON PagePermissionsPolicyBlockReason
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case PagePermissionsPolicyBlockReason
v of
    PagePermissionsPolicyBlockReason
PagePermissionsPolicyBlockReasonHeader -> Text
"Header"
    PagePermissionsPolicyBlockReason
PagePermissionsPolicyBlockReasonIframeAttribute -> Text
"IframeAttribute"
    PagePermissionsPolicyBlockReason
PagePermissionsPolicyBlockReasonInFencedFrameTree -> Text
"InFencedFrameTree"
    PagePermissionsPolicyBlockReason
PagePermissionsPolicyBlockReasonInIsolatedApp -> Text
"InIsolatedApp"

-- | Type 'Page.PermissionsPolicyBlockLocator'.
data PagePermissionsPolicyBlockLocator = PagePermissionsPolicyBlockLocator
  {
    PagePermissionsPolicyBlockLocator -> Text
pagePermissionsPolicyBlockLocatorFrameId :: PageFrameId,
    PagePermissionsPolicyBlockLocator
-> PagePermissionsPolicyBlockReason
pagePermissionsPolicyBlockLocatorBlockReason :: PagePermissionsPolicyBlockReason
  }
  deriving (PagePermissionsPolicyBlockLocator
-> PagePermissionsPolicyBlockLocator -> Bool
(PagePermissionsPolicyBlockLocator
 -> PagePermissionsPolicyBlockLocator -> Bool)
-> (PagePermissionsPolicyBlockLocator
    -> PagePermissionsPolicyBlockLocator -> Bool)
-> Eq PagePermissionsPolicyBlockLocator
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PagePermissionsPolicyBlockLocator
-> PagePermissionsPolicyBlockLocator -> Bool
$c/= :: PagePermissionsPolicyBlockLocator
-> PagePermissionsPolicyBlockLocator -> Bool
== :: PagePermissionsPolicyBlockLocator
-> PagePermissionsPolicyBlockLocator -> Bool
$c== :: PagePermissionsPolicyBlockLocator
-> PagePermissionsPolicyBlockLocator -> Bool
Eq, Int -> PagePermissionsPolicyBlockLocator -> ShowS
[PagePermissionsPolicyBlockLocator] -> ShowS
PagePermissionsPolicyBlockLocator -> String
(Int -> PagePermissionsPolicyBlockLocator -> ShowS)
-> (PagePermissionsPolicyBlockLocator -> String)
-> ([PagePermissionsPolicyBlockLocator] -> ShowS)
-> Show PagePermissionsPolicyBlockLocator
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PagePermissionsPolicyBlockLocator] -> ShowS
$cshowList :: [PagePermissionsPolicyBlockLocator] -> ShowS
show :: PagePermissionsPolicyBlockLocator -> String
$cshow :: PagePermissionsPolicyBlockLocator -> String
showsPrec :: Int -> PagePermissionsPolicyBlockLocator -> ShowS
$cshowsPrec :: Int -> PagePermissionsPolicyBlockLocator -> ShowS
Show)
instance FromJSON PagePermissionsPolicyBlockLocator where
  parseJSON :: Value -> Parser PagePermissionsPolicyBlockLocator
parseJSON = String
-> (Object -> Parser PagePermissionsPolicyBlockLocator)
-> Value
-> Parser PagePermissionsPolicyBlockLocator
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PagePermissionsPolicyBlockLocator" ((Object -> Parser PagePermissionsPolicyBlockLocator)
 -> Value -> Parser PagePermissionsPolicyBlockLocator)
-> (Object -> Parser PagePermissionsPolicyBlockLocator)
-> Value
-> Parser PagePermissionsPolicyBlockLocator
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> PagePermissionsPolicyBlockReason
-> PagePermissionsPolicyBlockLocator
PagePermissionsPolicyBlockLocator
    (Text
 -> PagePermissionsPolicyBlockReason
 -> PagePermissionsPolicyBlockLocator)
-> Parser Text
-> Parser
     (PagePermissionsPolicyBlockReason
      -> PagePermissionsPolicyBlockLocator)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"frameId"
    Parser
  (PagePermissionsPolicyBlockReason
   -> PagePermissionsPolicyBlockLocator)
-> Parser PagePermissionsPolicyBlockReason
-> Parser PagePermissionsPolicyBlockLocator
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser PagePermissionsPolicyBlockReason
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"blockReason"
instance ToJSON PagePermissionsPolicyBlockLocator where
  toJSON :: PagePermissionsPolicyBlockLocator -> Value
toJSON PagePermissionsPolicyBlockLocator
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"frameId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PagePermissionsPolicyBlockLocator -> Text
pagePermissionsPolicyBlockLocatorFrameId PagePermissionsPolicyBlockLocator
p),
    (Text
"blockReason" Text -> PagePermissionsPolicyBlockReason -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (PagePermissionsPolicyBlockReason -> Pair)
-> Maybe PagePermissionsPolicyBlockReason -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> PagePermissionsPolicyBlockReason
-> Maybe PagePermissionsPolicyBlockReason
forall a. a -> Maybe a
Just (PagePermissionsPolicyBlockLocator
-> PagePermissionsPolicyBlockReason
pagePermissionsPolicyBlockLocatorBlockReason PagePermissionsPolicyBlockLocator
p)
    ]

-- | Type 'Page.PermissionsPolicyFeatureState'.
data PagePermissionsPolicyFeatureState = PagePermissionsPolicyFeatureState
  {
    PagePermissionsPolicyFeatureState -> PagePermissionsPolicyFeature
pagePermissionsPolicyFeatureStateFeature :: PagePermissionsPolicyFeature,
    PagePermissionsPolicyFeatureState -> Bool
pagePermissionsPolicyFeatureStateAllowed :: Bool,
    PagePermissionsPolicyFeatureState
-> Maybe PagePermissionsPolicyBlockLocator
pagePermissionsPolicyFeatureStateLocator :: Maybe PagePermissionsPolicyBlockLocator
  }
  deriving (PagePermissionsPolicyFeatureState
-> PagePermissionsPolicyFeatureState -> Bool
(PagePermissionsPolicyFeatureState
 -> PagePermissionsPolicyFeatureState -> Bool)
-> (PagePermissionsPolicyFeatureState
    -> PagePermissionsPolicyFeatureState -> Bool)
-> Eq PagePermissionsPolicyFeatureState
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PagePermissionsPolicyFeatureState
-> PagePermissionsPolicyFeatureState -> Bool
$c/= :: PagePermissionsPolicyFeatureState
-> PagePermissionsPolicyFeatureState -> Bool
== :: PagePermissionsPolicyFeatureState
-> PagePermissionsPolicyFeatureState -> Bool
$c== :: PagePermissionsPolicyFeatureState
-> PagePermissionsPolicyFeatureState -> Bool
Eq, Int -> PagePermissionsPolicyFeatureState -> ShowS
[PagePermissionsPolicyFeatureState] -> ShowS
PagePermissionsPolicyFeatureState -> String
(Int -> PagePermissionsPolicyFeatureState -> ShowS)
-> (PagePermissionsPolicyFeatureState -> String)
-> ([PagePermissionsPolicyFeatureState] -> ShowS)
-> Show PagePermissionsPolicyFeatureState
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PagePermissionsPolicyFeatureState] -> ShowS
$cshowList :: [PagePermissionsPolicyFeatureState] -> ShowS
show :: PagePermissionsPolicyFeatureState -> String
$cshow :: PagePermissionsPolicyFeatureState -> String
showsPrec :: Int -> PagePermissionsPolicyFeatureState -> ShowS
$cshowsPrec :: Int -> PagePermissionsPolicyFeatureState -> ShowS
Show)
instance FromJSON PagePermissionsPolicyFeatureState where
  parseJSON :: Value -> Parser PagePermissionsPolicyFeatureState
parseJSON = String
-> (Object -> Parser PagePermissionsPolicyFeatureState)
-> Value
-> Parser PagePermissionsPolicyFeatureState
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PagePermissionsPolicyFeatureState" ((Object -> Parser PagePermissionsPolicyFeatureState)
 -> Value -> Parser PagePermissionsPolicyFeatureState)
-> (Object -> Parser PagePermissionsPolicyFeatureState)
-> Value
-> Parser PagePermissionsPolicyFeatureState
forall a b. (a -> b) -> a -> b
$ \Object
o -> PagePermissionsPolicyFeature
-> Bool
-> Maybe PagePermissionsPolicyBlockLocator
-> PagePermissionsPolicyFeatureState
PagePermissionsPolicyFeatureState
    (PagePermissionsPolicyFeature
 -> Bool
 -> Maybe PagePermissionsPolicyBlockLocator
 -> PagePermissionsPolicyFeatureState)
-> Parser PagePermissionsPolicyFeature
-> Parser
     (Bool
      -> Maybe PagePermissionsPolicyBlockLocator
      -> PagePermissionsPolicyFeatureState)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser PagePermissionsPolicyFeature
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"feature"
    Parser
  (Bool
   -> Maybe PagePermissionsPolicyBlockLocator
   -> PagePermissionsPolicyFeatureState)
-> Parser Bool
-> Parser
     (Maybe PagePermissionsPolicyBlockLocator
      -> PagePermissionsPolicyFeatureState)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Bool
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"allowed"
    Parser
  (Maybe PagePermissionsPolicyBlockLocator
   -> PagePermissionsPolicyFeatureState)
-> Parser (Maybe PagePermissionsPolicyBlockLocator)
-> Parser PagePermissionsPolicyFeatureState
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe PagePermissionsPolicyBlockLocator)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"locator"
instance ToJSON PagePermissionsPolicyFeatureState where
  toJSON :: PagePermissionsPolicyFeatureState -> Value
toJSON PagePermissionsPolicyFeatureState
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"feature" Text -> PagePermissionsPolicyFeature -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (PagePermissionsPolicyFeature -> Pair)
-> Maybe PagePermissionsPolicyFeature -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> PagePermissionsPolicyFeature -> Maybe PagePermissionsPolicyFeature
forall a. a -> Maybe a
Just (PagePermissionsPolicyFeatureState -> PagePermissionsPolicyFeature
pagePermissionsPolicyFeatureStateFeature PagePermissionsPolicyFeatureState
p),
    (Text
"allowed" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (PagePermissionsPolicyFeatureState -> Bool
pagePermissionsPolicyFeatureStateAllowed PagePermissionsPolicyFeatureState
p),
    (Text
"locator" Text -> PagePermissionsPolicyBlockLocator -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (PagePermissionsPolicyBlockLocator -> Pair)
-> Maybe PagePermissionsPolicyBlockLocator -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PagePermissionsPolicyFeatureState
-> Maybe PagePermissionsPolicyBlockLocator
pagePermissionsPolicyFeatureStateLocator PagePermissionsPolicyFeatureState
p)
    ]

-- | Type 'Page.OriginTrialTokenStatus'.
--   Origin Trial(https://www.chromium.org/blink/origin-trials) support.
--   Status for an Origin Trial token.
data PageOriginTrialTokenStatus = PageOriginTrialTokenStatusSuccess | PageOriginTrialTokenStatusNotSupported | PageOriginTrialTokenStatusInsecure | PageOriginTrialTokenStatusExpired | PageOriginTrialTokenStatusWrongOrigin | PageOriginTrialTokenStatusInvalidSignature | PageOriginTrialTokenStatusMalformed | PageOriginTrialTokenStatusWrongVersion | PageOriginTrialTokenStatusFeatureDisabled | PageOriginTrialTokenStatusTokenDisabled | PageOriginTrialTokenStatusFeatureDisabledForUser | PageOriginTrialTokenStatusUnknownTrial
  deriving (Eq PageOriginTrialTokenStatus
Eq PageOriginTrialTokenStatus
-> (PageOriginTrialTokenStatus
    -> PageOriginTrialTokenStatus -> Ordering)
-> (PageOriginTrialTokenStatus
    -> PageOriginTrialTokenStatus -> Bool)
-> (PageOriginTrialTokenStatus
    -> PageOriginTrialTokenStatus -> Bool)
-> (PageOriginTrialTokenStatus
    -> PageOriginTrialTokenStatus -> Bool)
-> (PageOriginTrialTokenStatus
    -> PageOriginTrialTokenStatus -> Bool)
-> (PageOriginTrialTokenStatus
    -> PageOriginTrialTokenStatus -> PageOriginTrialTokenStatus)
-> (PageOriginTrialTokenStatus
    -> PageOriginTrialTokenStatus -> PageOriginTrialTokenStatus)
-> Ord PageOriginTrialTokenStatus
PageOriginTrialTokenStatus -> PageOriginTrialTokenStatus -> Bool
PageOriginTrialTokenStatus
-> PageOriginTrialTokenStatus -> Ordering
PageOriginTrialTokenStatus
-> PageOriginTrialTokenStatus -> PageOriginTrialTokenStatus
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: PageOriginTrialTokenStatus
-> PageOriginTrialTokenStatus -> PageOriginTrialTokenStatus
$cmin :: PageOriginTrialTokenStatus
-> PageOriginTrialTokenStatus -> PageOriginTrialTokenStatus
max :: PageOriginTrialTokenStatus
-> PageOriginTrialTokenStatus -> PageOriginTrialTokenStatus
$cmax :: PageOriginTrialTokenStatus
-> PageOriginTrialTokenStatus -> PageOriginTrialTokenStatus
>= :: PageOriginTrialTokenStatus -> PageOriginTrialTokenStatus -> Bool
$c>= :: PageOriginTrialTokenStatus -> PageOriginTrialTokenStatus -> Bool
> :: PageOriginTrialTokenStatus -> PageOriginTrialTokenStatus -> Bool
$c> :: PageOriginTrialTokenStatus -> PageOriginTrialTokenStatus -> Bool
<= :: PageOriginTrialTokenStatus -> PageOriginTrialTokenStatus -> Bool
$c<= :: PageOriginTrialTokenStatus -> PageOriginTrialTokenStatus -> Bool
< :: PageOriginTrialTokenStatus -> PageOriginTrialTokenStatus -> Bool
$c< :: PageOriginTrialTokenStatus -> PageOriginTrialTokenStatus -> Bool
compare :: PageOriginTrialTokenStatus
-> PageOriginTrialTokenStatus -> Ordering
$ccompare :: PageOriginTrialTokenStatus
-> PageOriginTrialTokenStatus -> Ordering
$cp1Ord :: Eq PageOriginTrialTokenStatus
Ord, PageOriginTrialTokenStatus -> PageOriginTrialTokenStatus -> Bool
(PageOriginTrialTokenStatus -> PageOriginTrialTokenStatus -> Bool)
-> (PageOriginTrialTokenStatus
    -> PageOriginTrialTokenStatus -> Bool)
-> Eq PageOriginTrialTokenStatus
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageOriginTrialTokenStatus -> PageOriginTrialTokenStatus -> Bool
$c/= :: PageOriginTrialTokenStatus -> PageOriginTrialTokenStatus -> Bool
== :: PageOriginTrialTokenStatus -> PageOriginTrialTokenStatus -> Bool
$c== :: PageOriginTrialTokenStatus -> PageOriginTrialTokenStatus -> Bool
Eq, Int -> PageOriginTrialTokenStatus -> ShowS
[PageOriginTrialTokenStatus] -> ShowS
PageOriginTrialTokenStatus -> String
(Int -> PageOriginTrialTokenStatus -> ShowS)
-> (PageOriginTrialTokenStatus -> String)
-> ([PageOriginTrialTokenStatus] -> ShowS)
-> Show PageOriginTrialTokenStatus
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageOriginTrialTokenStatus] -> ShowS
$cshowList :: [PageOriginTrialTokenStatus] -> ShowS
show :: PageOriginTrialTokenStatus -> String
$cshow :: PageOriginTrialTokenStatus -> String
showsPrec :: Int -> PageOriginTrialTokenStatus -> ShowS
$cshowsPrec :: Int -> PageOriginTrialTokenStatus -> ShowS
Show, ReadPrec [PageOriginTrialTokenStatus]
ReadPrec PageOriginTrialTokenStatus
Int -> ReadS PageOriginTrialTokenStatus
ReadS [PageOriginTrialTokenStatus]
(Int -> ReadS PageOriginTrialTokenStatus)
-> ReadS [PageOriginTrialTokenStatus]
-> ReadPrec PageOriginTrialTokenStatus
-> ReadPrec [PageOriginTrialTokenStatus]
-> Read PageOriginTrialTokenStatus
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PageOriginTrialTokenStatus]
$creadListPrec :: ReadPrec [PageOriginTrialTokenStatus]
readPrec :: ReadPrec PageOriginTrialTokenStatus
$creadPrec :: ReadPrec PageOriginTrialTokenStatus
readList :: ReadS [PageOriginTrialTokenStatus]
$creadList :: ReadS [PageOriginTrialTokenStatus]
readsPrec :: Int -> ReadS PageOriginTrialTokenStatus
$creadsPrec :: Int -> ReadS PageOriginTrialTokenStatus
Read)
instance FromJSON PageOriginTrialTokenStatus where
  parseJSON :: Value -> Parser PageOriginTrialTokenStatus
parseJSON = String
-> (Text -> Parser PageOriginTrialTokenStatus)
-> Value
-> Parser PageOriginTrialTokenStatus
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"PageOriginTrialTokenStatus" ((Text -> Parser PageOriginTrialTokenStatus)
 -> Value -> Parser PageOriginTrialTokenStatus)
-> (Text -> Parser PageOriginTrialTokenStatus)
-> Value
-> Parser PageOriginTrialTokenStatus
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"Success" -> PageOriginTrialTokenStatus -> Parser PageOriginTrialTokenStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageOriginTrialTokenStatus
PageOriginTrialTokenStatusSuccess
    Text
"NotSupported" -> PageOriginTrialTokenStatus -> Parser PageOriginTrialTokenStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageOriginTrialTokenStatus
PageOriginTrialTokenStatusNotSupported
    Text
"Insecure" -> PageOriginTrialTokenStatus -> Parser PageOriginTrialTokenStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageOriginTrialTokenStatus
PageOriginTrialTokenStatusInsecure
    Text
"Expired" -> PageOriginTrialTokenStatus -> Parser PageOriginTrialTokenStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageOriginTrialTokenStatus
PageOriginTrialTokenStatusExpired
    Text
"WrongOrigin" -> PageOriginTrialTokenStatus -> Parser PageOriginTrialTokenStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageOriginTrialTokenStatus
PageOriginTrialTokenStatusWrongOrigin
    Text
"InvalidSignature" -> PageOriginTrialTokenStatus -> Parser PageOriginTrialTokenStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageOriginTrialTokenStatus
PageOriginTrialTokenStatusInvalidSignature
    Text
"Malformed" -> PageOriginTrialTokenStatus -> Parser PageOriginTrialTokenStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageOriginTrialTokenStatus
PageOriginTrialTokenStatusMalformed
    Text
"WrongVersion" -> PageOriginTrialTokenStatus -> Parser PageOriginTrialTokenStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageOriginTrialTokenStatus
PageOriginTrialTokenStatusWrongVersion
    Text
"FeatureDisabled" -> PageOriginTrialTokenStatus -> Parser PageOriginTrialTokenStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageOriginTrialTokenStatus
PageOriginTrialTokenStatusFeatureDisabled
    Text
"TokenDisabled" -> PageOriginTrialTokenStatus -> Parser PageOriginTrialTokenStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageOriginTrialTokenStatus
PageOriginTrialTokenStatusTokenDisabled
    Text
"FeatureDisabledForUser" -> PageOriginTrialTokenStatus -> Parser PageOriginTrialTokenStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageOriginTrialTokenStatus
PageOriginTrialTokenStatusFeatureDisabledForUser
    Text
"UnknownTrial" -> PageOriginTrialTokenStatus -> Parser PageOriginTrialTokenStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageOriginTrialTokenStatus
PageOriginTrialTokenStatusUnknownTrial
    Text
"_" -> String -> Parser PageOriginTrialTokenStatus
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse PageOriginTrialTokenStatus"
instance ToJSON PageOriginTrialTokenStatus where
  toJSON :: PageOriginTrialTokenStatus -> Value
toJSON PageOriginTrialTokenStatus
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case PageOriginTrialTokenStatus
v of
    PageOriginTrialTokenStatus
PageOriginTrialTokenStatusSuccess -> Text
"Success"
    PageOriginTrialTokenStatus
PageOriginTrialTokenStatusNotSupported -> Text
"NotSupported"
    PageOriginTrialTokenStatus
PageOriginTrialTokenStatusInsecure -> Text
"Insecure"
    PageOriginTrialTokenStatus
PageOriginTrialTokenStatusExpired -> Text
"Expired"
    PageOriginTrialTokenStatus
PageOriginTrialTokenStatusWrongOrigin -> Text
"WrongOrigin"
    PageOriginTrialTokenStatus
PageOriginTrialTokenStatusInvalidSignature -> Text
"InvalidSignature"
    PageOriginTrialTokenStatus
PageOriginTrialTokenStatusMalformed -> Text
"Malformed"
    PageOriginTrialTokenStatus
PageOriginTrialTokenStatusWrongVersion -> Text
"WrongVersion"
    PageOriginTrialTokenStatus
PageOriginTrialTokenStatusFeatureDisabled -> Text
"FeatureDisabled"
    PageOriginTrialTokenStatus
PageOriginTrialTokenStatusTokenDisabled -> Text
"TokenDisabled"
    PageOriginTrialTokenStatus
PageOriginTrialTokenStatusFeatureDisabledForUser -> Text
"FeatureDisabledForUser"
    PageOriginTrialTokenStatus
PageOriginTrialTokenStatusUnknownTrial -> Text
"UnknownTrial"

-- | Type 'Page.OriginTrialStatus'.
--   Status for an Origin Trial.
data PageOriginTrialStatus = PageOriginTrialStatusEnabled | PageOriginTrialStatusValidTokenNotProvided | PageOriginTrialStatusOSNotSupported | PageOriginTrialStatusTrialNotAllowed
  deriving (Eq PageOriginTrialStatus
Eq PageOriginTrialStatus
-> (PageOriginTrialStatus -> PageOriginTrialStatus -> Ordering)
-> (PageOriginTrialStatus -> PageOriginTrialStatus -> Bool)
-> (PageOriginTrialStatus -> PageOriginTrialStatus -> Bool)
-> (PageOriginTrialStatus -> PageOriginTrialStatus -> Bool)
-> (PageOriginTrialStatus -> PageOriginTrialStatus -> Bool)
-> (PageOriginTrialStatus
    -> PageOriginTrialStatus -> PageOriginTrialStatus)
-> (PageOriginTrialStatus
    -> PageOriginTrialStatus -> PageOriginTrialStatus)
-> Ord PageOriginTrialStatus
PageOriginTrialStatus -> PageOriginTrialStatus -> Bool
PageOriginTrialStatus -> PageOriginTrialStatus -> Ordering
PageOriginTrialStatus
-> PageOriginTrialStatus -> PageOriginTrialStatus
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: PageOriginTrialStatus
-> PageOriginTrialStatus -> PageOriginTrialStatus
$cmin :: PageOriginTrialStatus
-> PageOriginTrialStatus -> PageOriginTrialStatus
max :: PageOriginTrialStatus
-> PageOriginTrialStatus -> PageOriginTrialStatus
$cmax :: PageOriginTrialStatus
-> PageOriginTrialStatus -> PageOriginTrialStatus
>= :: PageOriginTrialStatus -> PageOriginTrialStatus -> Bool
$c>= :: PageOriginTrialStatus -> PageOriginTrialStatus -> Bool
> :: PageOriginTrialStatus -> PageOriginTrialStatus -> Bool
$c> :: PageOriginTrialStatus -> PageOriginTrialStatus -> Bool
<= :: PageOriginTrialStatus -> PageOriginTrialStatus -> Bool
$c<= :: PageOriginTrialStatus -> PageOriginTrialStatus -> Bool
< :: PageOriginTrialStatus -> PageOriginTrialStatus -> Bool
$c< :: PageOriginTrialStatus -> PageOriginTrialStatus -> Bool
compare :: PageOriginTrialStatus -> PageOriginTrialStatus -> Ordering
$ccompare :: PageOriginTrialStatus -> PageOriginTrialStatus -> Ordering
$cp1Ord :: Eq PageOriginTrialStatus
Ord, PageOriginTrialStatus -> PageOriginTrialStatus -> Bool
(PageOriginTrialStatus -> PageOriginTrialStatus -> Bool)
-> (PageOriginTrialStatus -> PageOriginTrialStatus -> Bool)
-> Eq PageOriginTrialStatus
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageOriginTrialStatus -> PageOriginTrialStatus -> Bool
$c/= :: PageOriginTrialStatus -> PageOriginTrialStatus -> Bool
== :: PageOriginTrialStatus -> PageOriginTrialStatus -> Bool
$c== :: PageOriginTrialStatus -> PageOriginTrialStatus -> Bool
Eq, Int -> PageOriginTrialStatus -> ShowS
[PageOriginTrialStatus] -> ShowS
PageOriginTrialStatus -> String
(Int -> PageOriginTrialStatus -> ShowS)
-> (PageOriginTrialStatus -> String)
-> ([PageOriginTrialStatus] -> ShowS)
-> Show PageOriginTrialStatus
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageOriginTrialStatus] -> ShowS
$cshowList :: [PageOriginTrialStatus] -> ShowS
show :: PageOriginTrialStatus -> String
$cshow :: PageOriginTrialStatus -> String
showsPrec :: Int -> PageOriginTrialStatus -> ShowS
$cshowsPrec :: Int -> PageOriginTrialStatus -> ShowS
Show, ReadPrec [PageOriginTrialStatus]
ReadPrec PageOriginTrialStatus
Int -> ReadS PageOriginTrialStatus
ReadS [PageOriginTrialStatus]
(Int -> ReadS PageOriginTrialStatus)
-> ReadS [PageOriginTrialStatus]
-> ReadPrec PageOriginTrialStatus
-> ReadPrec [PageOriginTrialStatus]
-> Read PageOriginTrialStatus
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PageOriginTrialStatus]
$creadListPrec :: ReadPrec [PageOriginTrialStatus]
readPrec :: ReadPrec PageOriginTrialStatus
$creadPrec :: ReadPrec PageOriginTrialStatus
readList :: ReadS [PageOriginTrialStatus]
$creadList :: ReadS [PageOriginTrialStatus]
readsPrec :: Int -> ReadS PageOriginTrialStatus
$creadsPrec :: Int -> ReadS PageOriginTrialStatus
Read)
instance FromJSON PageOriginTrialStatus where
  parseJSON :: Value -> Parser PageOriginTrialStatus
parseJSON = String
-> (Text -> Parser PageOriginTrialStatus)
-> Value
-> Parser PageOriginTrialStatus
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"PageOriginTrialStatus" ((Text -> Parser PageOriginTrialStatus)
 -> Value -> Parser PageOriginTrialStatus)
-> (Text -> Parser PageOriginTrialStatus)
-> Value
-> Parser PageOriginTrialStatus
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"Enabled" -> PageOriginTrialStatus -> Parser PageOriginTrialStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageOriginTrialStatus
PageOriginTrialStatusEnabled
    Text
"ValidTokenNotProvided" -> PageOriginTrialStatus -> Parser PageOriginTrialStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageOriginTrialStatus
PageOriginTrialStatusValidTokenNotProvided
    Text
"OSNotSupported" -> PageOriginTrialStatus -> Parser PageOriginTrialStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageOriginTrialStatus
PageOriginTrialStatusOSNotSupported
    Text
"TrialNotAllowed" -> PageOriginTrialStatus -> Parser PageOriginTrialStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageOriginTrialStatus
PageOriginTrialStatusTrialNotAllowed
    Text
"_" -> String -> Parser PageOriginTrialStatus
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse PageOriginTrialStatus"
instance ToJSON PageOriginTrialStatus where
  toJSON :: PageOriginTrialStatus -> Value
toJSON PageOriginTrialStatus
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case PageOriginTrialStatus
v of
    PageOriginTrialStatus
PageOriginTrialStatusEnabled -> Text
"Enabled"
    PageOriginTrialStatus
PageOriginTrialStatusValidTokenNotProvided -> Text
"ValidTokenNotProvided"
    PageOriginTrialStatus
PageOriginTrialStatusOSNotSupported -> Text
"OSNotSupported"
    PageOriginTrialStatus
PageOriginTrialStatusTrialNotAllowed -> Text
"TrialNotAllowed"

-- | Type 'Page.OriginTrialUsageRestriction'.
data PageOriginTrialUsageRestriction = PageOriginTrialUsageRestrictionNone | PageOriginTrialUsageRestrictionSubset
  deriving (Eq PageOriginTrialUsageRestriction
Eq PageOriginTrialUsageRestriction
-> (PageOriginTrialUsageRestriction
    -> PageOriginTrialUsageRestriction -> Ordering)
-> (PageOriginTrialUsageRestriction
    -> PageOriginTrialUsageRestriction -> Bool)
-> (PageOriginTrialUsageRestriction
    -> PageOriginTrialUsageRestriction -> Bool)
-> (PageOriginTrialUsageRestriction
    -> PageOriginTrialUsageRestriction -> Bool)
-> (PageOriginTrialUsageRestriction
    -> PageOriginTrialUsageRestriction -> Bool)
-> (PageOriginTrialUsageRestriction
    -> PageOriginTrialUsageRestriction
    -> PageOriginTrialUsageRestriction)
-> (PageOriginTrialUsageRestriction
    -> PageOriginTrialUsageRestriction
    -> PageOriginTrialUsageRestriction)
-> Ord PageOriginTrialUsageRestriction
PageOriginTrialUsageRestriction
-> PageOriginTrialUsageRestriction -> Bool
PageOriginTrialUsageRestriction
-> PageOriginTrialUsageRestriction -> Ordering
PageOriginTrialUsageRestriction
-> PageOriginTrialUsageRestriction
-> PageOriginTrialUsageRestriction
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: PageOriginTrialUsageRestriction
-> PageOriginTrialUsageRestriction
-> PageOriginTrialUsageRestriction
$cmin :: PageOriginTrialUsageRestriction
-> PageOriginTrialUsageRestriction
-> PageOriginTrialUsageRestriction
max :: PageOriginTrialUsageRestriction
-> PageOriginTrialUsageRestriction
-> PageOriginTrialUsageRestriction
$cmax :: PageOriginTrialUsageRestriction
-> PageOriginTrialUsageRestriction
-> PageOriginTrialUsageRestriction
>= :: PageOriginTrialUsageRestriction
-> PageOriginTrialUsageRestriction -> Bool
$c>= :: PageOriginTrialUsageRestriction
-> PageOriginTrialUsageRestriction -> Bool
> :: PageOriginTrialUsageRestriction
-> PageOriginTrialUsageRestriction -> Bool
$c> :: PageOriginTrialUsageRestriction
-> PageOriginTrialUsageRestriction -> Bool
<= :: PageOriginTrialUsageRestriction
-> PageOriginTrialUsageRestriction -> Bool
$c<= :: PageOriginTrialUsageRestriction
-> PageOriginTrialUsageRestriction -> Bool
< :: PageOriginTrialUsageRestriction
-> PageOriginTrialUsageRestriction -> Bool
$c< :: PageOriginTrialUsageRestriction
-> PageOriginTrialUsageRestriction -> Bool
compare :: PageOriginTrialUsageRestriction
-> PageOriginTrialUsageRestriction -> Ordering
$ccompare :: PageOriginTrialUsageRestriction
-> PageOriginTrialUsageRestriction -> Ordering
$cp1Ord :: Eq PageOriginTrialUsageRestriction
Ord, PageOriginTrialUsageRestriction
-> PageOriginTrialUsageRestriction -> Bool
(PageOriginTrialUsageRestriction
 -> PageOriginTrialUsageRestriction -> Bool)
-> (PageOriginTrialUsageRestriction
    -> PageOriginTrialUsageRestriction -> Bool)
-> Eq PageOriginTrialUsageRestriction
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageOriginTrialUsageRestriction
-> PageOriginTrialUsageRestriction -> Bool
$c/= :: PageOriginTrialUsageRestriction
-> PageOriginTrialUsageRestriction -> Bool
== :: PageOriginTrialUsageRestriction
-> PageOriginTrialUsageRestriction -> Bool
$c== :: PageOriginTrialUsageRestriction
-> PageOriginTrialUsageRestriction -> Bool
Eq, Int -> PageOriginTrialUsageRestriction -> ShowS
[PageOriginTrialUsageRestriction] -> ShowS
PageOriginTrialUsageRestriction -> String
(Int -> PageOriginTrialUsageRestriction -> ShowS)
-> (PageOriginTrialUsageRestriction -> String)
-> ([PageOriginTrialUsageRestriction] -> ShowS)
-> Show PageOriginTrialUsageRestriction
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageOriginTrialUsageRestriction] -> ShowS
$cshowList :: [PageOriginTrialUsageRestriction] -> ShowS
show :: PageOriginTrialUsageRestriction -> String
$cshow :: PageOriginTrialUsageRestriction -> String
showsPrec :: Int -> PageOriginTrialUsageRestriction -> ShowS
$cshowsPrec :: Int -> PageOriginTrialUsageRestriction -> ShowS
Show, ReadPrec [PageOriginTrialUsageRestriction]
ReadPrec PageOriginTrialUsageRestriction
Int -> ReadS PageOriginTrialUsageRestriction
ReadS [PageOriginTrialUsageRestriction]
(Int -> ReadS PageOriginTrialUsageRestriction)
-> ReadS [PageOriginTrialUsageRestriction]
-> ReadPrec PageOriginTrialUsageRestriction
-> ReadPrec [PageOriginTrialUsageRestriction]
-> Read PageOriginTrialUsageRestriction
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PageOriginTrialUsageRestriction]
$creadListPrec :: ReadPrec [PageOriginTrialUsageRestriction]
readPrec :: ReadPrec PageOriginTrialUsageRestriction
$creadPrec :: ReadPrec PageOriginTrialUsageRestriction
readList :: ReadS [PageOriginTrialUsageRestriction]
$creadList :: ReadS [PageOriginTrialUsageRestriction]
readsPrec :: Int -> ReadS PageOriginTrialUsageRestriction
$creadsPrec :: Int -> ReadS PageOriginTrialUsageRestriction
Read)
instance FromJSON PageOriginTrialUsageRestriction where
  parseJSON :: Value -> Parser PageOriginTrialUsageRestriction
parseJSON = String
-> (Text -> Parser PageOriginTrialUsageRestriction)
-> Value
-> Parser PageOriginTrialUsageRestriction
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"PageOriginTrialUsageRestriction" ((Text -> Parser PageOriginTrialUsageRestriction)
 -> Value -> Parser PageOriginTrialUsageRestriction)
-> (Text -> Parser PageOriginTrialUsageRestriction)
-> Value
-> Parser PageOriginTrialUsageRestriction
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"None" -> PageOriginTrialUsageRestriction
-> Parser PageOriginTrialUsageRestriction
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageOriginTrialUsageRestriction
PageOriginTrialUsageRestrictionNone
    Text
"Subset" -> PageOriginTrialUsageRestriction
-> Parser PageOriginTrialUsageRestriction
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageOriginTrialUsageRestriction
PageOriginTrialUsageRestrictionSubset
    Text
"_" -> String -> Parser PageOriginTrialUsageRestriction
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse PageOriginTrialUsageRestriction"
instance ToJSON PageOriginTrialUsageRestriction where
  toJSON :: PageOriginTrialUsageRestriction -> Value
toJSON PageOriginTrialUsageRestriction
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case PageOriginTrialUsageRestriction
v of
    PageOriginTrialUsageRestriction
PageOriginTrialUsageRestrictionNone -> Text
"None"
    PageOriginTrialUsageRestriction
PageOriginTrialUsageRestrictionSubset -> Text
"Subset"

-- | Type 'Page.OriginTrialToken'.
data PageOriginTrialToken = PageOriginTrialToken
  {
    PageOriginTrialToken -> Text
pageOriginTrialTokenOrigin :: T.Text,
    PageOriginTrialToken -> Bool
pageOriginTrialTokenMatchSubDomains :: Bool,
    PageOriginTrialToken -> Text
pageOriginTrialTokenTrialName :: T.Text,
    PageOriginTrialToken -> Double
pageOriginTrialTokenExpiryTime :: NetworkTimeSinceEpoch,
    PageOriginTrialToken -> Bool
pageOriginTrialTokenIsThirdParty :: Bool,
    PageOriginTrialToken -> PageOriginTrialUsageRestriction
pageOriginTrialTokenUsageRestriction :: PageOriginTrialUsageRestriction
  }
  deriving (PageOriginTrialToken -> PageOriginTrialToken -> Bool
(PageOriginTrialToken -> PageOriginTrialToken -> Bool)
-> (PageOriginTrialToken -> PageOriginTrialToken -> Bool)
-> Eq PageOriginTrialToken
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageOriginTrialToken -> PageOriginTrialToken -> Bool
$c/= :: PageOriginTrialToken -> PageOriginTrialToken -> Bool
== :: PageOriginTrialToken -> PageOriginTrialToken -> Bool
$c== :: PageOriginTrialToken -> PageOriginTrialToken -> Bool
Eq, Int -> PageOriginTrialToken -> ShowS
[PageOriginTrialToken] -> ShowS
PageOriginTrialToken -> String
(Int -> PageOriginTrialToken -> ShowS)
-> (PageOriginTrialToken -> String)
-> ([PageOriginTrialToken] -> ShowS)
-> Show PageOriginTrialToken
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageOriginTrialToken] -> ShowS
$cshowList :: [PageOriginTrialToken] -> ShowS
show :: PageOriginTrialToken -> String
$cshow :: PageOriginTrialToken -> String
showsPrec :: Int -> PageOriginTrialToken -> ShowS
$cshowsPrec :: Int -> PageOriginTrialToken -> ShowS
Show)
instance FromJSON PageOriginTrialToken where
  parseJSON :: Value -> Parser PageOriginTrialToken
parseJSON = String
-> (Object -> Parser PageOriginTrialToken)
-> Value
-> Parser PageOriginTrialToken
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageOriginTrialToken" ((Object -> Parser PageOriginTrialToken)
 -> Value -> Parser PageOriginTrialToken)
-> (Object -> Parser PageOriginTrialToken)
-> Value
-> Parser PageOriginTrialToken
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> Bool
-> Text
-> Double
-> Bool
-> PageOriginTrialUsageRestriction
-> PageOriginTrialToken
PageOriginTrialToken
    (Text
 -> Bool
 -> Text
 -> Double
 -> Bool
 -> PageOriginTrialUsageRestriction
 -> PageOriginTrialToken)
-> Parser Text
-> Parser
     (Bool
      -> Text
      -> Double
      -> Bool
      -> PageOriginTrialUsageRestriction
      -> PageOriginTrialToken)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"origin"
    Parser
  (Bool
   -> Text
   -> Double
   -> Bool
   -> PageOriginTrialUsageRestriction
   -> PageOriginTrialToken)
-> Parser Bool
-> Parser
     (Text
      -> Double
      -> Bool
      -> PageOriginTrialUsageRestriction
      -> PageOriginTrialToken)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Bool
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"matchSubDomains"
    Parser
  (Text
   -> Double
   -> Bool
   -> PageOriginTrialUsageRestriction
   -> PageOriginTrialToken)
-> Parser Text
-> Parser
     (Double
      -> Bool -> PageOriginTrialUsageRestriction -> PageOriginTrialToken)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"trialName"
    Parser
  (Double
   -> Bool -> PageOriginTrialUsageRestriction -> PageOriginTrialToken)
-> Parser Double
-> Parser
     (Bool -> PageOriginTrialUsageRestriction -> PageOriginTrialToken)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"expiryTime"
    Parser
  (Bool -> PageOriginTrialUsageRestriction -> PageOriginTrialToken)
-> Parser Bool
-> Parser (PageOriginTrialUsageRestriction -> PageOriginTrialToken)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Bool
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"isThirdParty"
    Parser (PageOriginTrialUsageRestriction -> PageOriginTrialToken)
-> Parser PageOriginTrialUsageRestriction
-> Parser PageOriginTrialToken
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser PageOriginTrialUsageRestriction
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"usageRestriction"
instance ToJSON PageOriginTrialToken where
  toJSON :: PageOriginTrialToken -> Value
toJSON PageOriginTrialToken
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"origin" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PageOriginTrialToken -> Text
pageOriginTrialTokenOrigin PageOriginTrialToken
p),
    (Text
"matchSubDomains" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (PageOriginTrialToken -> Bool
pageOriginTrialTokenMatchSubDomains PageOriginTrialToken
p),
    (Text
"trialName" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PageOriginTrialToken -> Text
pageOriginTrialTokenTrialName PageOriginTrialToken
p),
    (Text
"expiryTime" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (PageOriginTrialToken -> Double
pageOriginTrialTokenExpiryTime PageOriginTrialToken
p),
    (Text
"isThirdParty" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (PageOriginTrialToken -> Bool
pageOriginTrialTokenIsThirdParty PageOriginTrialToken
p),
    (Text
"usageRestriction" Text -> PageOriginTrialUsageRestriction -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (PageOriginTrialUsageRestriction -> Pair)
-> Maybe PageOriginTrialUsageRestriction -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> PageOriginTrialUsageRestriction
-> Maybe PageOriginTrialUsageRestriction
forall a. a -> Maybe a
Just (PageOriginTrialToken -> PageOriginTrialUsageRestriction
pageOriginTrialTokenUsageRestriction PageOriginTrialToken
p)
    ]

-- | Type 'Page.OriginTrialTokenWithStatus'.
data PageOriginTrialTokenWithStatus = PageOriginTrialTokenWithStatus
  {
    PageOriginTrialTokenWithStatus -> Text
pageOriginTrialTokenWithStatusRawTokenText :: T.Text,
    -- | `parsedToken` is present only when the token is extractable and
    --   parsable.
    PageOriginTrialTokenWithStatus -> Maybe PageOriginTrialToken
pageOriginTrialTokenWithStatusParsedToken :: Maybe PageOriginTrialToken,
    PageOriginTrialTokenWithStatus -> PageOriginTrialTokenStatus
pageOriginTrialTokenWithStatusStatus :: PageOriginTrialTokenStatus
  }
  deriving (PageOriginTrialTokenWithStatus
-> PageOriginTrialTokenWithStatus -> Bool
(PageOriginTrialTokenWithStatus
 -> PageOriginTrialTokenWithStatus -> Bool)
-> (PageOriginTrialTokenWithStatus
    -> PageOriginTrialTokenWithStatus -> Bool)
-> Eq PageOriginTrialTokenWithStatus
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageOriginTrialTokenWithStatus
-> PageOriginTrialTokenWithStatus -> Bool
$c/= :: PageOriginTrialTokenWithStatus
-> PageOriginTrialTokenWithStatus -> Bool
== :: PageOriginTrialTokenWithStatus
-> PageOriginTrialTokenWithStatus -> Bool
$c== :: PageOriginTrialTokenWithStatus
-> PageOriginTrialTokenWithStatus -> Bool
Eq, Int -> PageOriginTrialTokenWithStatus -> ShowS
[PageOriginTrialTokenWithStatus] -> ShowS
PageOriginTrialTokenWithStatus -> String
(Int -> PageOriginTrialTokenWithStatus -> ShowS)
-> (PageOriginTrialTokenWithStatus -> String)
-> ([PageOriginTrialTokenWithStatus] -> ShowS)
-> Show PageOriginTrialTokenWithStatus
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageOriginTrialTokenWithStatus] -> ShowS
$cshowList :: [PageOriginTrialTokenWithStatus] -> ShowS
show :: PageOriginTrialTokenWithStatus -> String
$cshow :: PageOriginTrialTokenWithStatus -> String
showsPrec :: Int -> PageOriginTrialTokenWithStatus -> ShowS
$cshowsPrec :: Int -> PageOriginTrialTokenWithStatus -> ShowS
Show)
instance FromJSON PageOriginTrialTokenWithStatus where
  parseJSON :: Value -> Parser PageOriginTrialTokenWithStatus
parseJSON = String
-> (Object -> Parser PageOriginTrialTokenWithStatus)
-> Value
-> Parser PageOriginTrialTokenWithStatus
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageOriginTrialTokenWithStatus" ((Object -> Parser PageOriginTrialTokenWithStatus)
 -> Value -> Parser PageOriginTrialTokenWithStatus)
-> (Object -> Parser PageOriginTrialTokenWithStatus)
-> Value
-> Parser PageOriginTrialTokenWithStatus
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> Maybe PageOriginTrialToken
-> PageOriginTrialTokenStatus
-> PageOriginTrialTokenWithStatus
PageOriginTrialTokenWithStatus
    (Text
 -> Maybe PageOriginTrialToken
 -> PageOriginTrialTokenStatus
 -> PageOriginTrialTokenWithStatus)
-> Parser Text
-> Parser
     (Maybe PageOriginTrialToken
      -> PageOriginTrialTokenStatus -> PageOriginTrialTokenWithStatus)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"rawTokenText"
    Parser
  (Maybe PageOriginTrialToken
   -> PageOriginTrialTokenStatus -> PageOriginTrialTokenWithStatus)
-> Parser (Maybe PageOriginTrialToken)
-> Parser
     (PageOriginTrialTokenStatus -> PageOriginTrialTokenWithStatus)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe PageOriginTrialToken)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"parsedToken"
    Parser
  (PageOriginTrialTokenStatus -> PageOriginTrialTokenWithStatus)
-> Parser PageOriginTrialTokenStatus
-> Parser PageOriginTrialTokenWithStatus
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser PageOriginTrialTokenStatus
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"status"
instance ToJSON PageOriginTrialTokenWithStatus where
  toJSON :: PageOriginTrialTokenWithStatus -> Value
toJSON PageOriginTrialTokenWithStatus
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"rawTokenText" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PageOriginTrialTokenWithStatus -> Text
pageOriginTrialTokenWithStatusRawTokenText PageOriginTrialTokenWithStatus
p),
    (Text
"parsedToken" Text -> PageOriginTrialToken -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (PageOriginTrialToken -> Pair)
-> Maybe PageOriginTrialToken -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PageOriginTrialTokenWithStatus -> Maybe PageOriginTrialToken
pageOriginTrialTokenWithStatusParsedToken PageOriginTrialTokenWithStatus
p),
    (Text
"status" Text -> PageOriginTrialTokenStatus -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (PageOriginTrialTokenStatus -> Pair)
-> Maybe PageOriginTrialTokenStatus -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> PageOriginTrialTokenStatus -> Maybe PageOriginTrialTokenStatus
forall a. a -> Maybe a
Just (PageOriginTrialTokenWithStatus -> PageOriginTrialTokenStatus
pageOriginTrialTokenWithStatusStatus PageOriginTrialTokenWithStatus
p)
    ]

-- | Type 'Page.OriginTrial'.
data PageOriginTrial = PageOriginTrial
  {
    PageOriginTrial -> Text
pageOriginTrialTrialName :: T.Text,
    PageOriginTrial -> PageOriginTrialStatus
pageOriginTrialStatus :: PageOriginTrialStatus,
    PageOriginTrial -> [PageOriginTrialTokenWithStatus]
pageOriginTrialTokensWithStatus :: [PageOriginTrialTokenWithStatus]
  }
  deriving (PageOriginTrial -> PageOriginTrial -> Bool
(PageOriginTrial -> PageOriginTrial -> Bool)
-> (PageOriginTrial -> PageOriginTrial -> Bool)
-> Eq PageOriginTrial
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageOriginTrial -> PageOriginTrial -> Bool
$c/= :: PageOriginTrial -> PageOriginTrial -> Bool
== :: PageOriginTrial -> PageOriginTrial -> Bool
$c== :: PageOriginTrial -> PageOriginTrial -> Bool
Eq, Int -> PageOriginTrial -> ShowS
[PageOriginTrial] -> ShowS
PageOriginTrial -> String
(Int -> PageOriginTrial -> ShowS)
-> (PageOriginTrial -> String)
-> ([PageOriginTrial] -> ShowS)
-> Show PageOriginTrial
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageOriginTrial] -> ShowS
$cshowList :: [PageOriginTrial] -> ShowS
show :: PageOriginTrial -> String
$cshow :: PageOriginTrial -> String
showsPrec :: Int -> PageOriginTrial -> ShowS
$cshowsPrec :: Int -> PageOriginTrial -> ShowS
Show)
instance FromJSON PageOriginTrial where
  parseJSON :: Value -> Parser PageOriginTrial
parseJSON = String
-> (Object -> Parser PageOriginTrial)
-> Value
-> Parser PageOriginTrial
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageOriginTrial" ((Object -> Parser PageOriginTrial)
 -> Value -> Parser PageOriginTrial)
-> (Object -> Parser PageOriginTrial)
-> Value
-> Parser PageOriginTrial
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> PageOriginTrialStatus
-> [PageOriginTrialTokenWithStatus]
-> PageOriginTrial
PageOriginTrial
    (Text
 -> PageOriginTrialStatus
 -> [PageOriginTrialTokenWithStatus]
 -> PageOriginTrial)
-> Parser Text
-> Parser
     (PageOriginTrialStatus
      -> [PageOriginTrialTokenWithStatus] -> PageOriginTrial)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"trialName"
    Parser
  (PageOriginTrialStatus
   -> [PageOriginTrialTokenWithStatus] -> PageOriginTrial)
-> Parser PageOriginTrialStatus
-> Parser ([PageOriginTrialTokenWithStatus] -> PageOriginTrial)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser PageOriginTrialStatus
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"status"
    Parser ([PageOriginTrialTokenWithStatus] -> PageOriginTrial)
-> Parser [PageOriginTrialTokenWithStatus]
-> Parser PageOriginTrial
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser [PageOriginTrialTokenWithStatus]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"tokensWithStatus"
instance ToJSON PageOriginTrial where
  toJSON :: PageOriginTrial -> Value
toJSON PageOriginTrial
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"trialName" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PageOriginTrial -> Text
pageOriginTrialTrialName PageOriginTrial
p),
    (Text
"status" Text -> PageOriginTrialStatus -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (PageOriginTrialStatus -> Pair)
-> Maybe PageOriginTrialStatus -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> PageOriginTrialStatus -> Maybe PageOriginTrialStatus
forall a. a -> Maybe a
Just (PageOriginTrial -> PageOriginTrialStatus
pageOriginTrialStatus PageOriginTrial
p),
    (Text
"tokensWithStatus" Text -> [PageOriginTrialTokenWithStatus] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([PageOriginTrialTokenWithStatus] -> Pair)
-> Maybe [PageOriginTrialTokenWithStatus] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> [PageOriginTrialTokenWithStatus]
-> Maybe [PageOriginTrialTokenWithStatus]
forall a. a -> Maybe a
Just (PageOriginTrial -> [PageOriginTrialTokenWithStatus]
pageOriginTrialTokensWithStatus PageOriginTrial
p)
    ]

-- | Type 'Page.Frame'.
--   Information about the Frame on the page.
data PageFrame = PageFrame
  {
    -- | Frame unique identifier.
    PageFrame -> Text
pageFrameId :: PageFrameId,
    -- | Parent frame identifier.
    PageFrame -> Maybe Text
pageFrameParentId :: Maybe PageFrameId,
    -- | Identifier of the loader associated with this frame.
    PageFrame -> Text
pageFrameLoaderId :: NetworkLoaderId,
    -- | Frame's name as specified in the tag.
    PageFrame -> Maybe Text
pageFrameName :: Maybe T.Text,
    -- | Frame document's URL without fragment.
    PageFrame -> Text
pageFrameUrl :: T.Text,
    -- | Frame document's URL fragment including the '#'.
    PageFrame -> Maybe Text
pageFrameUrlFragment :: Maybe T.Text,
    -- | Frame document's registered domain, taking the public suffixes list into account.
    --   Extracted from the Frame's url.
    --   Example URLs: http://www.google.com/file.html -> "google.com"
    --                 http://a.b.co.uk/file.html      -> "b.co.uk"
    PageFrame -> Text
pageFrameDomainAndRegistry :: T.Text,
    -- | Frame document's security origin.
    PageFrame -> Text
pageFrameSecurityOrigin :: T.Text,
    -- | Frame document's mimeType as determined by the browser.
    PageFrame -> Text
pageFrameMimeType :: T.Text,
    -- | If the frame failed to load, this contains the URL that could not be loaded. Note that unlike url above, this URL may contain a fragment.
    PageFrame -> Maybe Text
pageFrameUnreachableUrl :: Maybe T.Text,
    -- | Indicates whether this frame was tagged as an ad and why.
    PageFrame -> Maybe PageAdFrameStatus
pageFrameAdFrameStatus :: Maybe PageAdFrameStatus,
    -- | Indicates whether the main document is a secure context and explains why that is the case.
    PageFrame -> PageSecureContextType
pageFrameSecureContextType :: PageSecureContextType,
    -- | Indicates whether this is a cross origin isolated context.
    PageFrame -> PageCrossOriginIsolatedContextType
pageFrameCrossOriginIsolatedContextType :: PageCrossOriginIsolatedContextType,
    -- | Indicated which gated APIs / features are available.
    PageFrame -> [PageGatedAPIFeatures]
pageFrameGatedAPIFeatures :: [PageGatedAPIFeatures]
  }
  deriving (PageFrame -> PageFrame -> Bool
(PageFrame -> PageFrame -> Bool)
-> (PageFrame -> PageFrame -> Bool) -> Eq PageFrame
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageFrame -> PageFrame -> Bool
$c/= :: PageFrame -> PageFrame -> Bool
== :: PageFrame -> PageFrame -> Bool
$c== :: PageFrame -> PageFrame -> Bool
Eq, Int -> PageFrame -> ShowS
[PageFrame] -> ShowS
PageFrame -> String
(Int -> PageFrame -> ShowS)
-> (PageFrame -> String)
-> ([PageFrame] -> ShowS)
-> Show PageFrame
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageFrame] -> ShowS
$cshowList :: [PageFrame] -> ShowS
show :: PageFrame -> String
$cshow :: PageFrame -> String
showsPrec :: Int -> PageFrame -> ShowS
$cshowsPrec :: Int -> PageFrame -> ShowS
Show)
instance FromJSON PageFrame where
  parseJSON :: Value -> Parser PageFrame
parseJSON = String -> (Object -> Parser PageFrame) -> Value -> Parser PageFrame
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageFrame" ((Object -> Parser PageFrame) -> Value -> Parser PageFrame)
-> (Object -> Parser PageFrame) -> Value -> Parser PageFrame
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> Maybe Text
-> Text
-> Maybe Text
-> Text
-> Maybe Text
-> Text
-> Text
-> Text
-> Maybe Text
-> Maybe PageAdFrameStatus
-> PageSecureContextType
-> PageCrossOriginIsolatedContextType
-> [PageGatedAPIFeatures]
-> PageFrame
PageFrame
    (Text
 -> Maybe Text
 -> Text
 -> Maybe Text
 -> Text
 -> Maybe Text
 -> Text
 -> Text
 -> Text
 -> Maybe Text
 -> Maybe PageAdFrameStatus
 -> PageSecureContextType
 -> PageCrossOriginIsolatedContextType
 -> [PageGatedAPIFeatures]
 -> PageFrame)
-> Parser Text
-> Parser
     (Maybe Text
      -> Text
      -> Maybe Text
      -> Text
      -> Maybe Text
      -> Text
      -> Text
      -> Text
      -> Maybe Text
      -> Maybe PageAdFrameStatus
      -> PageSecureContextType
      -> PageCrossOriginIsolatedContextType
      -> [PageGatedAPIFeatures]
      -> PageFrame)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"id"
    Parser
  (Maybe Text
   -> Text
   -> Maybe Text
   -> Text
   -> Maybe Text
   -> Text
   -> Text
   -> Text
   -> Maybe Text
   -> Maybe PageAdFrameStatus
   -> PageSecureContextType
   -> PageCrossOriginIsolatedContextType
   -> [PageGatedAPIFeatures]
   -> PageFrame)
-> Parser (Maybe Text)
-> Parser
     (Text
      -> Maybe Text
      -> Text
      -> Maybe Text
      -> Text
      -> Text
      -> Text
      -> Maybe Text
      -> Maybe PageAdFrameStatus
      -> PageSecureContextType
      -> PageCrossOriginIsolatedContextType
      -> [PageGatedAPIFeatures]
      -> PageFrame)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"parentId"
    Parser
  (Text
   -> Maybe Text
   -> Text
   -> Maybe Text
   -> Text
   -> Text
   -> Text
   -> Maybe Text
   -> Maybe PageAdFrameStatus
   -> PageSecureContextType
   -> PageCrossOriginIsolatedContextType
   -> [PageGatedAPIFeatures]
   -> PageFrame)
-> Parser Text
-> Parser
     (Maybe Text
      -> Text
      -> Maybe Text
      -> Text
      -> Text
      -> Text
      -> Maybe Text
      -> Maybe PageAdFrameStatus
      -> PageSecureContextType
      -> PageCrossOriginIsolatedContextType
      -> [PageGatedAPIFeatures]
      -> PageFrame)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"loaderId"
    Parser
  (Maybe Text
   -> Text
   -> Maybe Text
   -> Text
   -> Text
   -> Text
   -> Maybe Text
   -> Maybe PageAdFrameStatus
   -> PageSecureContextType
   -> PageCrossOriginIsolatedContextType
   -> [PageGatedAPIFeatures]
   -> PageFrame)
-> Parser (Maybe Text)
-> Parser
     (Text
      -> Maybe Text
      -> Text
      -> Text
      -> Text
      -> Maybe Text
      -> Maybe PageAdFrameStatus
      -> PageSecureContextType
      -> PageCrossOriginIsolatedContextType
      -> [PageGatedAPIFeatures]
      -> PageFrame)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"name"
    Parser
  (Text
   -> Maybe Text
   -> Text
   -> Text
   -> Text
   -> Maybe Text
   -> Maybe PageAdFrameStatus
   -> PageSecureContextType
   -> PageCrossOriginIsolatedContextType
   -> [PageGatedAPIFeatures]
   -> PageFrame)
-> Parser Text
-> Parser
     (Maybe Text
      -> Text
      -> Text
      -> Text
      -> Maybe Text
      -> Maybe PageAdFrameStatus
      -> PageSecureContextType
      -> PageCrossOriginIsolatedContextType
      -> [PageGatedAPIFeatures]
      -> PageFrame)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"url"
    Parser
  (Maybe Text
   -> Text
   -> Text
   -> Text
   -> Maybe Text
   -> Maybe PageAdFrameStatus
   -> PageSecureContextType
   -> PageCrossOriginIsolatedContextType
   -> [PageGatedAPIFeatures]
   -> PageFrame)
-> Parser (Maybe Text)
-> Parser
     (Text
      -> Text
      -> Text
      -> Maybe Text
      -> Maybe PageAdFrameStatus
      -> PageSecureContextType
      -> PageCrossOriginIsolatedContextType
      -> [PageGatedAPIFeatures]
      -> PageFrame)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"urlFragment"
    Parser
  (Text
   -> Text
   -> Text
   -> Maybe Text
   -> Maybe PageAdFrameStatus
   -> PageSecureContextType
   -> PageCrossOriginIsolatedContextType
   -> [PageGatedAPIFeatures]
   -> PageFrame)
-> Parser Text
-> Parser
     (Text
      -> Text
      -> Maybe Text
      -> Maybe PageAdFrameStatus
      -> PageSecureContextType
      -> PageCrossOriginIsolatedContextType
      -> [PageGatedAPIFeatures]
      -> PageFrame)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"domainAndRegistry"
    Parser
  (Text
   -> Text
   -> Maybe Text
   -> Maybe PageAdFrameStatus
   -> PageSecureContextType
   -> PageCrossOriginIsolatedContextType
   -> [PageGatedAPIFeatures]
   -> PageFrame)
-> Parser Text
-> Parser
     (Text
      -> Maybe Text
      -> Maybe PageAdFrameStatus
      -> PageSecureContextType
      -> PageCrossOriginIsolatedContextType
      -> [PageGatedAPIFeatures]
      -> PageFrame)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"securityOrigin"
    Parser
  (Text
   -> Maybe Text
   -> Maybe PageAdFrameStatus
   -> PageSecureContextType
   -> PageCrossOriginIsolatedContextType
   -> [PageGatedAPIFeatures]
   -> PageFrame)
-> Parser Text
-> Parser
     (Maybe Text
      -> Maybe PageAdFrameStatus
      -> PageSecureContextType
      -> PageCrossOriginIsolatedContextType
      -> [PageGatedAPIFeatures]
      -> PageFrame)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"mimeType"
    Parser
  (Maybe Text
   -> Maybe PageAdFrameStatus
   -> PageSecureContextType
   -> PageCrossOriginIsolatedContextType
   -> [PageGatedAPIFeatures]
   -> PageFrame)
-> Parser (Maybe Text)
-> Parser
     (Maybe PageAdFrameStatus
      -> PageSecureContextType
      -> PageCrossOriginIsolatedContextType
      -> [PageGatedAPIFeatures]
      -> PageFrame)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"unreachableUrl"
    Parser
  (Maybe PageAdFrameStatus
   -> PageSecureContextType
   -> PageCrossOriginIsolatedContextType
   -> [PageGatedAPIFeatures]
   -> PageFrame)
-> Parser (Maybe PageAdFrameStatus)
-> Parser
     (PageSecureContextType
      -> PageCrossOriginIsolatedContextType
      -> [PageGatedAPIFeatures]
      -> PageFrame)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe PageAdFrameStatus)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"adFrameStatus"
    Parser
  (PageSecureContextType
   -> PageCrossOriginIsolatedContextType
   -> [PageGatedAPIFeatures]
   -> PageFrame)
-> Parser PageSecureContextType
-> Parser
     (PageCrossOriginIsolatedContextType
      -> [PageGatedAPIFeatures] -> PageFrame)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser PageSecureContextType
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"secureContextType"
    Parser
  (PageCrossOriginIsolatedContextType
   -> [PageGatedAPIFeatures] -> PageFrame)
-> Parser PageCrossOriginIsolatedContextType
-> Parser ([PageGatedAPIFeatures] -> PageFrame)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser PageCrossOriginIsolatedContextType
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"crossOriginIsolatedContextType"
    Parser ([PageGatedAPIFeatures] -> PageFrame)
-> Parser [PageGatedAPIFeatures] -> Parser PageFrame
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser [PageGatedAPIFeatures]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"gatedAPIFeatures"
instance ToJSON PageFrame where
  toJSON :: PageFrame -> Value
toJSON PageFrame
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"id" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PageFrame -> Text
pageFrameId PageFrame
p),
    (Text
"parentId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PageFrame -> Maybe Text
pageFrameParentId PageFrame
p),
    (Text
"loaderId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PageFrame -> Text
pageFrameLoaderId PageFrame
p),
    (Text
"name" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PageFrame -> Maybe Text
pageFrameName PageFrame
p),
    (Text
"url" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PageFrame -> Text
pageFrameUrl PageFrame
p),
    (Text
"urlFragment" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PageFrame -> Maybe Text
pageFrameUrlFragment PageFrame
p),
    (Text
"domainAndRegistry" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PageFrame -> Text
pageFrameDomainAndRegistry PageFrame
p),
    (Text
"securityOrigin" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PageFrame -> Text
pageFrameSecurityOrigin PageFrame
p),
    (Text
"mimeType" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PageFrame -> Text
pageFrameMimeType PageFrame
p),
    (Text
"unreachableUrl" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PageFrame -> Maybe Text
pageFrameUnreachableUrl PageFrame
p),
    (Text
"adFrameStatus" Text -> PageAdFrameStatus -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (PageAdFrameStatus -> Pair)
-> Maybe PageAdFrameStatus -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PageFrame -> Maybe PageAdFrameStatus
pageFrameAdFrameStatus PageFrame
p),
    (Text
"secureContextType" Text -> PageSecureContextType -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (PageSecureContextType -> Pair)
-> Maybe PageSecureContextType -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> PageSecureContextType -> Maybe PageSecureContextType
forall a. a -> Maybe a
Just (PageFrame -> PageSecureContextType
pageFrameSecureContextType PageFrame
p),
    (Text
"crossOriginIsolatedContextType" Text -> PageCrossOriginIsolatedContextType -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (PageCrossOriginIsolatedContextType -> Pair)
-> Maybe PageCrossOriginIsolatedContextType -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> PageCrossOriginIsolatedContextType
-> Maybe PageCrossOriginIsolatedContextType
forall a. a -> Maybe a
Just (PageFrame -> PageCrossOriginIsolatedContextType
pageFrameCrossOriginIsolatedContextType PageFrame
p),
    (Text
"gatedAPIFeatures" Text -> [PageGatedAPIFeatures] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([PageGatedAPIFeatures] -> Pair)
-> Maybe [PageGatedAPIFeatures] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> [PageGatedAPIFeatures] -> Maybe [PageGatedAPIFeatures]
forall a. a -> Maybe a
Just (PageFrame -> [PageGatedAPIFeatures]
pageFrameGatedAPIFeatures PageFrame
p)
    ]

-- | Type 'Page.FrameResource'.
--   Information about the Resource on the page.
data PageFrameResource = PageFrameResource
  {
    -- | Resource URL.
    PageFrameResource -> Text
pageFrameResourceUrl :: T.Text,
    -- | Type of this resource.
    PageFrameResource -> NetworkResourceType
pageFrameResourceType :: NetworkResourceType,
    -- | Resource mimeType as determined by the browser.
    PageFrameResource -> Text
pageFrameResourceMimeType :: T.Text,
    -- | last-modified timestamp as reported by server.
    PageFrameResource -> Maybe Double
pageFrameResourceLastModified :: Maybe NetworkTimeSinceEpoch,
    -- | Resource content size.
    PageFrameResource -> Maybe Double
pageFrameResourceContentSize :: Maybe Double,
    -- | True if the resource failed to load.
    PageFrameResource -> Maybe Bool
pageFrameResourceFailed :: Maybe Bool,
    -- | True if the resource was canceled during loading.
    PageFrameResource -> Maybe Bool
pageFrameResourceCanceled :: Maybe Bool
  }
  deriving (PageFrameResource -> PageFrameResource -> Bool
(PageFrameResource -> PageFrameResource -> Bool)
-> (PageFrameResource -> PageFrameResource -> Bool)
-> Eq PageFrameResource
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageFrameResource -> PageFrameResource -> Bool
$c/= :: PageFrameResource -> PageFrameResource -> Bool
== :: PageFrameResource -> PageFrameResource -> Bool
$c== :: PageFrameResource -> PageFrameResource -> Bool
Eq, Int -> PageFrameResource -> ShowS
[PageFrameResource] -> ShowS
PageFrameResource -> String
(Int -> PageFrameResource -> ShowS)
-> (PageFrameResource -> String)
-> ([PageFrameResource] -> ShowS)
-> Show PageFrameResource
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageFrameResource] -> ShowS
$cshowList :: [PageFrameResource] -> ShowS
show :: PageFrameResource -> String
$cshow :: PageFrameResource -> String
showsPrec :: Int -> PageFrameResource -> ShowS
$cshowsPrec :: Int -> PageFrameResource -> ShowS
Show)
instance FromJSON PageFrameResource where
  parseJSON :: Value -> Parser PageFrameResource
parseJSON = String
-> (Object -> Parser PageFrameResource)
-> Value
-> Parser PageFrameResource
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageFrameResource" ((Object -> Parser PageFrameResource)
 -> Value -> Parser PageFrameResource)
-> (Object -> Parser PageFrameResource)
-> Value
-> Parser PageFrameResource
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> NetworkResourceType
-> Text
-> Maybe Double
-> Maybe Double
-> Maybe Bool
-> Maybe Bool
-> PageFrameResource
PageFrameResource
    (Text
 -> NetworkResourceType
 -> Text
 -> Maybe Double
 -> Maybe Double
 -> Maybe Bool
 -> Maybe Bool
 -> PageFrameResource)
-> Parser Text
-> Parser
     (NetworkResourceType
      -> Text
      -> Maybe Double
      -> Maybe Double
      -> Maybe Bool
      -> Maybe Bool
      -> PageFrameResource)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"url"
    Parser
  (NetworkResourceType
   -> Text
   -> Maybe Double
   -> Maybe Double
   -> Maybe Bool
   -> Maybe Bool
   -> PageFrameResource)
-> Parser NetworkResourceType
-> Parser
     (Text
      -> Maybe Double
      -> Maybe Double
      -> Maybe Bool
      -> Maybe Bool
      -> PageFrameResource)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser NetworkResourceType
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"type"
    Parser
  (Text
   -> Maybe Double
   -> Maybe Double
   -> Maybe Bool
   -> Maybe Bool
   -> PageFrameResource)
-> Parser Text
-> Parser
     (Maybe Double
      -> Maybe Double -> Maybe Bool -> Maybe Bool -> PageFrameResource)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"mimeType"
    Parser
  (Maybe Double
   -> Maybe Double -> Maybe Bool -> Maybe Bool -> PageFrameResource)
-> Parser (Maybe Double)
-> Parser
     (Maybe Double -> Maybe Bool -> Maybe Bool -> PageFrameResource)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Double)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"lastModified"
    Parser
  (Maybe Double -> Maybe Bool -> Maybe Bool -> PageFrameResource)
-> Parser (Maybe Double)
-> Parser (Maybe Bool -> Maybe Bool -> PageFrameResource)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Double)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"contentSize"
    Parser (Maybe Bool -> Maybe Bool -> PageFrameResource)
-> Parser (Maybe Bool) -> Parser (Maybe Bool -> PageFrameResource)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"failed"
    Parser (Maybe Bool -> PageFrameResource)
-> Parser (Maybe Bool) -> Parser PageFrameResource
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"canceled"
instance ToJSON PageFrameResource where
  toJSON :: PageFrameResource -> Value
toJSON PageFrameResource
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"url" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PageFrameResource -> Text
pageFrameResourceUrl PageFrameResource
p),
    (Text
"type" Text -> NetworkResourceType -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (NetworkResourceType -> Pair)
-> Maybe NetworkResourceType -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> NetworkResourceType -> Maybe NetworkResourceType
forall a. a -> Maybe a
Just (PageFrameResource -> NetworkResourceType
pageFrameResourceType PageFrameResource
p),
    (Text
"mimeType" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PageFrameResource -> Text
pageFrameResourceMimeType PageFrameResource
p),
    (Text
"lastModified" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PageFrameResource -> Maybe Double
pageFrameResourceLastModified PageFrameResource
p),
    (Text
"contentSize" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PageFrameResource -> Maybe Double
pageFrameResourceContentSize PageFrameResource
p),
    (Text
"failed" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PageFrameResource -> Maybe Bool
pageFrameResourceFailed PageFrameResource
p),
    (Text
"canceled" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PageFrameResource -> Maybe Bool
pageFrameResourceCanceled PageFrameResource
p)
    ]

-- | Type 'Page.FrameResourceTree'.
--   Information about the Frame hierarchy along with their cached resources.
data PageFrameResourceTree = PageFrameResourceTree
  {
    -- | Frame information for this tree item.
    PageFrameResourceTree -> PageFrame
pageFrameResourceTreeFrame :: PageFrame,
    -- | Child frames.
    PageFrameResourceTree -> Maybe [PageFrameResourceTree]
pageFrameResourceTreeChildFrames :: Maybe [PageFrameResourceTree],
    -- | Information about frame resources.
    PageFrameResourceTree -> [PageFrameResource]
pageFrameResourceTreeResources :: [PageFrameResource]
  }
  deriving (PageFrameResourceTree -> PageFrameResourceTree -> Bool
(PageFrameResourceTree -> PageFrameResourceTree -> Bool)
-> (PageFrameResourceTree -> PageFrameResourceTree -> Bool)
-> Eq PageFrameResourceTree
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageFrameResourceTree -> PageFrameResourceTree -> Bool
$c/= :: PageFrameResourceTree -> PageFrameResourceTree -> Bool
== :: PageFrameResourceTree -> PageFrameResourceTree -> Bool
$c== :: PageFrameResourceTree -> PageFrameResourceTree -> Bool
Eq, Int -> PageFrameResourceTree -> ShowS
[PageFrameResourceTree] -> ShowS
PageFrameResourceTree -> String
(Int -> PageFrameResourceTree -> ShowS)
-> (PageFrameResourceTree -> String)
-> ([PageFrameResourceTree] -> ShowS)
-> Show PageFrameResourceTree
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageFrameResourceTree] -> ShowS
$cshowList :: [PageFrameResourceTree] -> ShowS
show :: PageFrameResourceTree -> String
$cshow :: PageFrameResourceTree -> String
showsPrec :: Int -> PageFrameResourceTree -> ShowS
$cshowsPrec :: Int -> PageFrameResourceTree -> ShowS
Show)
instance FromJSON PageFrameResourceTree where
  parseJSON :: Value -> Parser PageFrameResourceTree
parseJSON = String
-> (Object -> Parser PageFrameResourceTree)
-> Value
-> Parser PageFrameResourceTree
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageFrameResourceTree" ((Object -> Parser PageFrameResourceTree)
 -> Value -> Parser PageFrameResourceTree)
-> (Object -> Parser PageFrameResourceTree)
-> Value
-> Parser PageFrameResourceTree
forall a b. (a -> b) -> a -> b
$ \Object
o -> PageFrame
-> Maybe [PageFrameResourceTree]
-> [PageFrameResource]
-> PageFrameResourceTree
PageFrameResourceTree
    (PageFrame
 -> Maybe [PageFrameResourceTree]
 -> [PageFrameResource]
 -> PageFrameResourceTree)
-> Parser PageFrame
-> Parser
     (Maybe [PageFrameResourceTree]
      -> [PageFrameResource] -> PageFrameResourceTree)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser PageFrame
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"frame"
    Parser
  (Maybe [PageFrameResourceTree]
   -> [PageFrameResource] -> PageFrameResourceTree)
-> Parser (Maybe [PageFrameResourceTree])
-> Parser ([PageFrameResource] -> PageFrameResourceTree)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe [PageFrameResourceTree])
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"childFrames"
    Parser ([PageFrameResource] -> PageFrameResourceTree)
-> Parser [PageFrameResource] -> Parser PageFrameResourceTree
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser [PageFrameResource]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"resources"
instance ToJSON PageFrameResourceTree where
  toJSON :: PageFrameResourceTree -> Value
toJSON PageFrameResourceTree
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"frame" Text -> PageFrame -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (PageFrame -> Pair) -> Maybe PageFrame -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> PageFrame -> Maybe PageFrame
forall a. a -> Maybe a
Just (PageFrameResourceTree -> PageFrame
pageFrameResourceTreeFrame PageFrameResourceTree
p),
    (Text
"childFrames" Text -> [PageFrameResourceTree] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([PageFrameResourceTree] -> Pair)
-> Maybe [PageFrameResourceTree] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PageFrameResourceTree -> Maybe [PageFrameResourceTree]
pageFrameResourceTreeChildFrames PageFrameResourceTree
p),
    (Text
"resources" Text -> [PageFrameResource] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([PageFrameResource] -> Pair)
-> Maybe [PageFrameResource] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> [PageFrameResource] -> Maybe [PageFrameResource]
forall a. a -> Maybe a
Just (PageFrameResourceTree -> [PageFrameResource]
pageFrameResourceTreeResources PageFrameResourceTree
p)
    ]

-- | Type 'Page.FrameTree'.
--   Information about the Frame hierarchy.
data PageFrameTree = PageFrameTree
  {
    -- | Frame information for this tree item.
    PageFrameTree -> PageFrame
pageFrameTreeFrame :: PageFrame,
    -- | Child frames.
    PageFrameTree -> Maybe [PageFrameTree]
pageFrameTreeChildFrames :: Maybe [PageFrameTree]
  }
  deriving (PageFrameTree -> PageFrameTree -> Bool
(PageFrameTree -> PageFrameTree -> Bool)
-> (PageFrameTree -> PageFrameTree -> Bool) -> Eq PageFrameTree
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageFrameTree -> PageFrameTree -> Bool
$c/= :: PageFrameTree -> PageFrameTree -> Bool
== :: PageFrameTree -> PageFrameTree -> Bool
$c== :: PageFrameTree -> PageFrameTree -> Bool
Eq, Int -> PageFrameTree -> ShowS
[PageFrameTree] -> ShowS
PageFrameTree -> String
(Int -> PageFrameTree -> ShowS)
-> (PageFrameTree -> String)
-> ([PageFrameTree] -> ShowS)
-> Show PageFrameTree
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageFrameTree] -> ShowS
$cshowList :: [PageFrameTree] -> ShowS
show :: PageFrameTree -> String
$cshow :: PageFrameTree -> String
showsPrec :: Int -> PageFrameTree -> ShowS
$cshowsPrec :: Int -> PageFrameTree -> ShowS
Show)
instance FromJSON PageFrameTree where
  parseJSON :: Value -> Parser PageFrameTree
parseJSON = String
-> (Object -> Parser PageFrameTree)
-> Value
-> Parser PageFrameTree
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageFrameTree" ((Object -> Parser PageFrameTree) -> Value -> Parser PageFrameTree)
-> (Object -> Parser PageFrameTree)
-> Value
-> Parser PageFrameTree
forall a b. (a -> b) -> a -> b
$ \Object
o -> PageFrame -> Maybe [PageFrameTree] -> PageFrameTree
PageFrameTree
    (PageFrame -> Maybe [PageFrameTree] -> PageFrameTree)
-> Parser PageFrame
-> Parser (Maybe [PageFrameTree] -> PageFrameTree)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser PageFrame
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"frame"
    Parser (Maybe [PageFrameTree] -> PageFrameTree)
-> Parser (Maybe [PageFrameTree]) -> Parser PageFrameTree
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe [PageFrameTree])
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"childFrames"
instance ToJSON PageFrameTree where
  toJSON :: PageFrameTree -> Value
toJSON PageFrameTree
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"frame" Text -> PageFrame -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (PageFrame -> Pair) -> Maybe PageFrame -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> PageFrame -> Maybe PageFrame
forall a. a -> Maybe a
Just (PageFrameTree -> PageFrame
pageFrameTreeFrame PageFrameTree
p),
    (Text
"childFrames" Text -> [PageFrameTree] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([PageFrameTree] -> Pair) -> Maybe [PageFrameTree] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PageFrameTree -> Maybe [PageFrameTree]
pageFrameTreeChildFrames PageFrameTree
p)
    ]

-- | Type 'Page.ScriptIdentifier'.
--   Unique script identifier.
type PageScriptIdentifier = T.Text

-- | Type 'Page.TransitionType'.
--   Transition type.
data PageTransitionType = PageTransitionTypeLink | PageTransitionTypeTyped | PageTransitionTypeAddress_bar | PageTransitionTypeAuto_bookmark | PageTransitionTypeAuto_subframe | PageTransitionTypeManual_subframe | PageTransitionTypeGenerated | PageTransitionTypeAuto_toplevel | PageTransitionTypeForm_submit | PageTransitionTypeReload | PageTransitionTypeKeyword | PageTransitionTypeKeyword_generated | PageTransitionTypeOther
  deriving (Eq PageTransitionType
Eq PageTransitionType
-> (PageTransitionType -> PageTransitionType -> Ordering)
-> (PageTransitionType -> PageTransitionType -> Bool)
-> (PageTransitionType -> PageTransitionType -> Bool)
-> (PageTransitionType -> PageTransitionType -> Bool)
-> (PageTransitionType -> PageTransitionType -> Bool)
-> (PageTransitionType -> PageTransitionType -> PageTransitionType)
-> (PageTransitionType -> PageTransitionType -> PageTransitionType)
-> Ord PageTransitionType
PageTransitionType -> PageTransitionType -> Bool
PageTransitionType -> PageTransitionType -> Ordering
PageTransitionType -> PageTransitionType -> PageTransitionType
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: PageTransitionType -> PageTransitionType -> PageTransitionType
$cmin :: PageTransitionType -> PageTransitionType -> PageTransitionType
max :: PageTransitionType -> PageTransitionType -> PageTransitionType
$cmax :: PageTransitionType -> PageTransitionType -> PageTransitionType
>= :: PageTransitionType -> PageTransitionType -> Bool
$c>= :: PageTransitionType -> PageTransitionType -> Bool
> :: PageTransitionType -> PageTransitionType -> Bool
$c> :: PageTransitionType -> PageTransitionType -> Bool
<= :: PageTransitionType -> PageTransitionType -> Bool
$c<= :: PageTransitionType -> PageTransitionType -> Bool
< :: PageTransitionType -> PageTransitionType -> Bool
$c< :: PageTransitionType -> PageTransitionType -> Bool
compare :: PageTransitionType -> PageTransitionType -> Ordering
$ccompare :: PageTransitionType -> PageTransitionType -> Ordering
$cp1Ord :: Eq PageTransitionType
Ord, PageTransitionType -> PageTransitionType -> Bool
(PageTransitionType -> PageTransitionType -> Bool)
-> (PageTransitionType -> PageTransitionType -> Bool)
-> Eq PageTransitionType
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageTransitionType -> PageTransitionType -> Bool
$c/= :: PageTransitionType -> PageTransitionType -> Bool
== :: PageTransitionType -> PageTransitionType -> Bool
$c== :: PageTransitionType -> PageTransitionType -> Bool
Eq, Int -> PageTransitionType -> ShowS
[PageTransitionType] -> ShowS
PageTransitionType -> String
(Int -> PageTransitionType -> ShowS)
-> (PageTransitionType -> String)
-> ([PageTransitionType] -> ShowS)
-> Show PageTransitionType
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageTransitionType] -> ShowS
$cshowList :: [PageTransitionType] -> ShowS
show :: PageTransitionType -> String
$cshow :: PageTransitionType -> String
showsPrec :: Int -> PageTransitionType -> ShowS
$cshowsPrec :: Int -> PageTransitionType -> ShowS
Show, ReadPrec [PageTransitionType]
ReadPrec PageTransitionType
Int -> ReadS PageTransitionType
ReadS [PageTransitionType]
(Int -> ReadS PageTransitionType)
-> ReadS [PageTransitionType]
-> ReadPrec PageTransitionType
-> ReadPrec [PageTransitionType]
-> Read PageTransitionType
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PageTransitionType]
$creadListPrec :: ReadPrec [PageTransitionType]
readPrec :: ReadPrec PageTransitionType
$creadPrec :: ReadPrec PageTransitionType
readList :: ReadS [PageTransitionType]
$creadList :: ReadS [PageTransitionType]
readsPrec :: Int -> ReadS PageTransitionType
$creadsPrec :: Int -> ReadS PageTransitionType
Read)
instance FromJSON PageTransitionType where
  parseJSON :: Value -> Parser PageTransitionType
parseJSON = String
-> (Text -> Parser PageTransitionType)
-> Value
-> Parser PageTransitionType
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"PageTransitionType" ((Text -> Parser PageTransitionType)
 -> Value -> Parser PageTransitionType)
-> (Text -> Parser PageTransitionType)
-> Value
-> Parser PageTransitionType
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"link" -> PageTransitionType -> Parser PageTransitionType
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageTransitionType
PageTransitionTypeLink
    Text
"typed" -> PageTransitionType -> Parser PageTransitionType
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageTransitionType
PageTransitionTypeTyped
    Text
"address_bar" -> PageTransitionType -> Parser PageTransitionType
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageTransitionType
PageTransitionTypeAddress_bar
    Text
"auto_bookmark" -> PageTransitionType -> Parser PageTransitionType
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageTransitionType
PageTransitionTypeAuto_bookmark
    Text
"auto_subframe" -> PageTransitionType -> Parser PageTransitionType
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageTransitionType
PageTransitionTypeAuto_subframe
    Text
"manual_subframe" -> PageTransitionType -> Parser PageTransitionType
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageTransitionType
PageTransitionTypeManual_subframe
    Text
"generated" -> PageTransitionType -> Parser PageTransitionType
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageTransitionType
PageTransitionTypeGenerated
    Text
"auto_toplevel" -> PageTransitionType -> Parser PageTransitionType
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageTransitionType
PageTransitionTypeAuto_toplevel
    Text
"form_submit" -> PageTransitionType -> Parser PageTransitionType
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageTransitionType
PageTransitionTypeForm_submit
    Text
"reload" -> PageTransitionType -> Parser PageTransitionType
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageTransitionType
PageTransitionTypeReload
    Text
"keyword" -> PageTransitionType -> Parser PageTransitionType
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageTransitionType
PageTransitionTypeKeyword
    Text
"keyword_generated" -> PageTransitionType -> Parser PageTransitionType
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageTransitionType
PageTransitionTypeKeyword_generated
    Text
"other" -> PageTransitionType -> Parser PageTransitionType
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageTransitionType
PageTransitionTypeOther
    Text
"_" -> String -> Parser PageTransitionType
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse PageTransitionType"
instance ToJSON PageTransitionType where
  toJSON :: PageTransitionType -> Value
toJSON PageTransitionType
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case PageTransitionType
v of
    PageTransitionType
PageTransitionTypeLink -> Text
"link"
    PageTransitionType
PageTransitionTypeTyped -> Text
"typed"
    PageTransitionType
PageTransitionTypeAddress_bar -> Text
"address_bar"
    PageTransitionType
PageTransitionTypeAuto_bookmark -> Text
"auto_bookmark"
    PageTransitionType
PageTransitionTypeAuto_subframe -> Text
"auto_subframe"
    PageTransitionType
PageTransitionTypeManual_subframe -> Text
"manual_subframe"
    PageTransitionType
PageTransitionTypeGenerated -> Text
"generated"
    PageTransitionType
PageTransitionTypeAuto_toplevel -> Text
"auto_toplevel"
    PageTransitionType
PageTransitionTypeForm_submit -> Text
"form_submit"
    PageTransitionType
PageTransitionTypeReload -> Text
"reload"
    PageTransitionType
PageTransitionTypeKeyword -> Text
"keyword"
    PageTransitionType
PageTransitionTypeKeyword_generated -> Text
"keyword_generated"
    PageTransitionType
PageTransitionTypeOther -> Text
"other"

-- | Type 'Page.NavigationEntry'.
--   Navigation history entry.
data PageNavigationEntry = PageNavigationEntry
  {
    -- | Unique id of the navigation history entry.
    PageNavigationEntry -> Int
pageNavigationEntryId :: Int,
    -- | URL of the navigation history entry.
    PageNavigationEntry -> Text
pageNavigationEntryUrl :: T.Text,
    -- | URL that the user typed in the url bar.
    PageNavigationEntry -> Text
pageNavigationEntryUserTypedURL :: T.Text,
    -- | Title of the navigation history entry.
    PageNavigationEntry -> Text
pageNavigationEntryTitle :: T.Text,
    -- | Transition type.
    PageNavigationEntry -> PageTransitionType
pageNavigationEntryTransitionType :: PageTransitionType
  }
  deriving (PageNavigationEntry -> PageNavigationEntry -> Bool
(PageNavigationEntry -> PageNavigationEntry -> Bool)
-> (PageNavigationEntry -> PageNavigationEntry -> Bool)
-> Eq PageNavigationEntry
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageNavigationEntry -> PageNavigationEntry -> Bool
$c/= :: PageNavigationEntry -> PageNavigationEntry -> Bool
== :: PageNavigationEntry -> PageNavigationEntry -> Bool
$c== :: PageNavigationEntry -> PageNavigationEntry -> Bool
Eq, Int -> PageNavigationEntry -> ShowS
[PageNavigationEntry] -> ShowS
PageNavigationEntry -> String
(Int -> PageNavigationEntry -> ShowS)
-> (PageNavigationEntry -> String)
-> ([PageNavigationEntry] -> ShowS)
-> Show PageNavigationEntry
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageNavigationEntry] -> ShowS
$cshowList :: [PageNavigationEntry] -> ShowS
show :: PageNavigationEntry -> String
$cshow :: PageNavigationEntry -> String
showsPrec :: Int -> PageNavigationEntry -> ShowS
$cshowsPrec :: Int -> PageNavigationEntry -> ShowS
Show)
instance FromJSON PageNavigationEntry where
  parseJSON :: Value -> Parser PageNavigationEntry
parseJSON = String
-> (Object -> Parser PageNavigationEntry)
-> Value
-> Parser PageNavigationEntry
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageNavigationEntry" ((Object -> Parser PageNavigationEntry)
 -> Value -> Parser PageNavigationEntry)
-> (Object -> Parser PageNavigationEntry)
-> Value
-> Parser PageNavigationEntry
forall a b. (a -> b) -> a -> b
$ \Object
o -> Int
-> Text
-> Text
-> Text
-> PageTransitionType
-> PageNavigationEntry
PageNavigationEntry
    (Int
 -> Text
 -> Text
 -> Text
 -> PageTransitionType
 -> PageNavigationEntry)
-> Parser Int
-> Parser
     (Text -> Text -> Text -> PageTransitionType -> PageNavigationEntry)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"id"
    Parser
  (Text -> Text -> Text -> PageTransitionType -> PageNavigationEntry)
-> Parser Text
-> Parser
     (Text -> Text -> PageTransitionType -> PageNavigationEntry)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"url"
    Parser (Text -> Text -> PageTransitionType -> PageNavigationEntry)
-> Parser Text
-> Parser (Text -> PageTransitionType -> PageNavigationEntry)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"userTypedURL"
    Parser (Text -> PageTransitionType -> PageNavigationEntry)
-> Parser Text
-> Parser (PageTransitionType -> PageNavigationEntry)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"title"
    Parser (PageTransitionType -> PageNavigationEntry)
-> Parser PageTransitionType -> Parser PageNavigationEntry
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser PageTransitionType
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"transitionType"
instance ToJSON PageNavigationEntry where
  toJSON :: PageNavigationEntry -> Value
toJSON PageNavigationEntry
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"id" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PageNavigationEntry -> Int
pageNavigationEntryId PageNavigationEntry
p),
    (Text
"url" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PageNavigationEntry -> Text
pageNavigationEntryUrl PageNavigationEntry
p),
    (Text
"userTypedURL" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PageNavigationEntry -> Text
pageNavigationEntryUserTypedURL PageNavigationEntry
p),
    (Text
"title" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PageNavigationEntry -> Text
pageNavigationEntryTitle PageNavigationEntry
p),
    (Text
"transitionType" Text -> PageTransitionType -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (PageTransitionType -> Pair)
-> Maybe PageTransitionType -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> PageTransitionType -> Maybe PageTransitionType
forall a. a -> Maybe a
Just (PageNavigationEntry -> PageTransitionType
pageNavigationEntryTransitionType PageNavigationEntry
p)
    ]

-- | Type 'Page.ScreencastFrameMetadata'.
--   Screencast frame metadata.
data PageScreencastFrameMetadata = PageScreencastFrameMetadata
  {
    -- | Top offset in DIP.
    PageScreencastFrameMetadata -> Double
pageScreencastFrameMetadataOffsetTop :: Double,
    -- | Page scale factor.
    PageScreencastFrameMetadata -> Double
pageScreencastFrameMetadataPageScaleFactor :: Double,
    -- | Device screen width in DIP.
    PageScreencastFrameMetadata -> Double
pageScreencastFrameMetadataDeviceWidth :: Double,
    -- | Device screen height in DIP.
    PageScreencastFrameMetadata -> Double
pageScreencastFrameMetadataDeviceHeight :: Double,
    -- | Position of horizontal scroll in CSS pixels.
    PageScreencastFrameMetadata -> Double
pageScreencastFrameMetadataScrollOffsetX :: Double,
    -- | Position of vertical scroll in CSS pixels.
    PageScreencastFrameMetadata -> Double
pageScreencastFrameMetadataScrollOffsetY :: Double,
    -- | Frame swap timestamp.
    PageScreencastFrameMetadata -> Maybe Double
pageScreencastFrameMetadataTimestamp :: Maybe NetworkTimeSinceEpoch
  }
  deriving (PageScreencastFrameMetadata -> PageScreencastFrameMetadata -> Bool
(PageScreencastFrameMetadata
 -> PageScreencastFrameMetadata -> Bool)
-> (PageScreencastFrameMetadata
    -> PageScreencastFrameMetadata -> Bool)
-> Eq PageScreencastFrameMetadata
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageScreencastFrameMetadata -> PageScreencastFrameMetadata -> Bool
$c/= :: PageScreencastFrameMetadata -> PageScreencastFrameMetadata -> Bool
== :: PageScreencastFrameMetadata -> PageScreencastFrameMetadata -> Bool
$c== :: PageScreencastFrameMetadata -> PageScreencastFrameMetadata -> Bool
Eq, Int -> PageScreencastFrameMetadata -> ShowS
[PageScreencastFrameMetadata] -> ShowS
PageScreencastFrameMetadata -> String
(Int -> PageScreencastFrameMetadata -> ShowS)
-> (PageScreencastFrameMetadata -> String)
-> ([PageScreencastFrameMetadata] -> ShowS)
-> Show PageScreencastFrameMetadata
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageScreencastFrameMetadata] -> ShowS
$cshowList :: [PageScreencastFrameMetadata] -> ShowS
show :: PageScreencastFrameMetadata -> String
$cshow :: PageScreencastFrameMetadata -> String
showsPrec :: Int -> PageScreencastFrameMetadata -> ShowS
$cshowsPrec :: Int -> PageScreencastFrameMetadata -> ShowS
Show)
instance FromJSON PageScreencastFrameMetadata where
  parseJSON :: Value -> Parser PageScreencastFrameMetadata
parseJSON = String
-> (Object -> Parser PageScreencastFrameMetadata)
-> Value
-> Parser PageScreencastFrameMetadata
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageScreencastFrameMetadata" ((Object -> Parser PageScreencastFrameMetadata)
 -> Value -> Parser PageScreencastFrameMetadata)
-> (Object -> Parser PageScreencastFrameMetadata)
-> Value
-> Parser PageScreencastFrameMetadata
forall a b. (a -> b) -> a -> b
$ \Object
o -> Double
-> Double
-> Double
-> Double
-> Double
-> Double
-> Maybe Double
-> PageScreencastFrameMetadata
PageScreencastFrameMetadata
    (Double
 -> Double
 -> Double
 -> Double
 -> Double
 -> Double
 -> Maybe Double
 -> PageScreencastFrameMetadata)
-> Parser Double
-> Parser
     (Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Maybe Double
      -> PageScreencastFrameMetadata)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"offsetTop"
    Parser
  (Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Maybe Double
   -> PageScreencastFrameMetadata)
-> Parser Double
-> Parser
     (Double
      -> Double
      -> Double
      -> Double
      -> Maybe Double
      -> PageScreencastFrameMetadata)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"pageScaleFactor"
    Parser
  (Double
   -> Double
   -> Double
   -> Double
   -> Maybe Double
   -> PageScreencastFrameMetadata)
-> Parser Double
-> Parser
     (Double
      -> Double -> Double -> Maybe Double -> PageScreencastFrameMetadata)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"deviceWidth"
    Parser
  (Double
   -> Double -> Double -> Maybe Double -> PageScreencastFrameMetadata)
-> Parser Double
-> Parser
     (Double -> Double -> Maybe Double -> PageScreencastFrameMetadata)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"deviceHeight"
    Parser
  (Double -> Double -> Maybe Double -> PageScreencastFrameMetadata)
-> Parser Double
-> Parser (Double -> Maybe Double -> PageScreencastFrameMetadata)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"scrollOffsetX"
    Parser (Double -> Maybe Double -> PageScreencastFrameMetadata)
-> Parser Double
-> Parser (Maybe Double -> PageScreencastFrameMetadata)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"scrollOffsetY"
    Parser (Maybe Double -> PageScreencastFrameMetadata)
-> Parser (Maybe Double) -> Parser PageScreencastFrameMetadata
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Double)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"timestamp"
instance ToJSON PageScreencastFrameMetadata where
  toJSON :: PageScreencastFrameMetadata -> Value
toJSON PageScreencastFrameMetadata
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"offsetTop" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (PageScreencastFrameMetadata -> Double
pageScreencastFrameMetadataOffsetTop PageScreencastFrameMetadata
p),
    (Text
"pageScaleFactor" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (PageScreencastFrameMetadata -> Double
pageScreencastFrameMetadataPageScaleFactor PageScreencastFrameMetadata
p),
    (Text
"deviceWidth" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (PageScreencastFrameMetadata -> Double
pageScreencastFrameMetadataDeviceWidth PageScreencastFrameMetadata
p),
    (Text
"deviceHeight" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (PageScreencastFrameMetadata -> Double
pageScreencastFrameMetadataDeviceHeight PageScreencastFrameMetadata
p),
    (Text
"scrollOffsetX" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (PageScreencastFrameMetadata -> Double
pageScreencastFrameMetadataScrollOffsetX PageScreencastFrameMetadata
p),
    (Text
"scrollOffsetY" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (PageScreencastFrameMetadata -> Double
pageScreencastFrameMetadataScrollOffsetY PageScreencastFrameMetadata
p),
    (Text
"timestamp" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PageScreencastFrameMetadata -> Maybe Double
pageScreencastFrameMetadataTimestamp PageScreencastFrameMetadata
p)
    ]

-- | Type 'Page.DialogType'.
--   Javascript dialog type.
data PageDialogType = PageDialogTypeAlert | PageDialogTypeConfirm | PageDialogTypePrompt | PageDialogTypeBeforeunload
  deriving (Eq PageDialogType
Eq PageDialogType
-> (PageDialogType -> PageDialogType -> Ordering)
-> (PageDialogType -> PageDialogType -> Bool)
-> (PageDialogType -> PageDialogType -> Bool)
-> (PageDialogType -> PageDialogType -> Bool)
-> (PageDialogType -> PageDialogType -> Bool)
-> (PageDialogType -> PageDialogType -> PageDialogType)
-> (PageDialogType -> PageDialogType -> PageDialogType)
-> Ord PageDialogType
PageDialogType -> PageDialogType -> Bool
PageDialogType -> PageDialogType -> Ordering
PageDialogType -> PageDialogType -> PageDialogType
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: PageDialogType -> PageDialogType -> PageDialogType
$cmin :: PageDialogType -> PageDialogType -> PageDialogType
max :: PageDialogType -> PageDialogType -> PageDialogType
$cmax :: PageDialogType -> PageDialogType -> PageDialogType
>= :: PageDialogType -> PageDialogType -> Bool
$c>= :: PageDialogType -> PageDialogType -> Bool
> :: PageDialogType -> PageDialogType -> Bool
$c> :: PageDialogType -> PageDialogType -> Bool
<= :: PageDialogType -> PageDialogType -> Bool
$c<= :: PageDialogType -> PageDialogType -> Bool
< :: PageDialogType -> PageDialogType -> Bool
$c< :: PageDialogType -> PageDialogType -> Bool
compare :: PageDialogType -> PageDialogType -> Ordering
$ccompare :: PageDialogType -> PageDialogType -> Ordering
$cp1Ord :: Eq PageDialogType
Ord, PageDialogType -> PageDialogType -> Bool
(PageDialogType -> PageDialogType -> Bool)
-> (PageDialogType -> PageDialogType -> Bool) -> Eq PageDialogType
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageDialogType -> PageDialogType -> Bool
$c/= :: PageDialogType -> PageDialogType -> Bool
== :: PageDialogType -> PageDialogType -> Bool
$c== :: PageDialogType -> PageDialogType -> Bool
Eq, Int -> PageDialogType -> ShowS
[PageDialogType] -> ShowS
PageDialogType -> String
(Int -> PageDialogType -> ShowS)
-> (PageDialogType -> String)
-> ([PageDialogType] -> ShowS)
-> Show PageDialogType
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageDialogType] -> ShowS
$cshowList :: [PageDialogType] -> ShowS
show :: PageDialogType -> String
$cshow :: PageDialogType -> String
showsPrec :: Int -> PageDialogType -> ShowS
$cshowsPrec :: Int -> PageDialogType -> ShowS
Show, ReadPrec [PageDialogType]
ReadPrec PageDialogType
Int -> ReadS PageDialogType
ReadS [PageDialogType]
(Int -> ReadS PageDialogType)
-> ReadS [PageDialogType]
-> ReadPrec PageDialogType
-> ReadPrec [PageDialogType]
-> Read PageDialogType
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PageDialogType]
$creadListPrec :: ReadPrec [PageDialogType]
readPrec :: ReadPrec PageDialogType
$creadPrec :: ReadPrec PageDialogType
readList :: ReadS [PageDialogType]
$creadList :: ReadS [PageDialogType]
readsPrec :: Int -> ReadS PageDialogType
$creadsPrec :: Int -> ReadS PageDialogType
Read)
instance FromJSON PageDialogType where
  parseJSON :: Value -> Parser PageDialogType
parseJSON = String
-> (Text -> Parser PageDialogType)
-> Value
-> Parser PageDialogType
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"PageDialogType" ((Text -> Parser PageDialogType) -> Value -> Parser PageDialogType)
-> (Text -> Parser PageDialogType)
-> Value
-> Parser PageDialogType
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"alert" -> PageDialogType -> Parser PageDialogType
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageDialogType
PageDialogTypeAlert
    Text
"confirm" -> PageDialogType -> Parser PageDialogType
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageDialogType
PageDialogTypeConfirm
    Text
"prompt" -> PageDialogType -> Parser PageDialogType
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageDialogType
PageDialogTypePrompt
    Text
"beforeunload" -> PageDialogType -> Parser PageDialogType
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageDialogType
PageDialogTypeBeforeunload
    Text
"_" -> String -> Parser PageDialogType
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse PageDialogType"
instance ToJSON PageDialogType where
  toJSON :: PageDialogType -> Value
toJSON PageDialogType
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case PageDialogType
v of
    PageDialogType
PageDialogTypeAlert -> Text
"alert"
    PageDialogType
PageDialogTypeConfirm -> Text
"confirm"
    PageDialogType
PageDialogTypePrompt -> Text
"prompt"
    PageDialogType
PageDialogTypeBeforeunload -> Text
"beforeunload"

-- | Type 'Page.AppManifestError'.
--   Error while paring app manifest.
data PageAppManifestError = PageAppManifestError
  {
    -- | Error message.
    PageAppManifestError -> Text
pageAppManifestErrorMessage :: T.Text,
    -- | If criticial, this is a non-recoverable parse error.
    PageAppManifestError -> Int
pageAppManifestErrorCritical :: Int,
    -- | Error line.
    PageAppManifestError -> Int
pageAppManifestErrorLine :: Int,
    -- | Error column.
    PageAppManifestError -> Int
pageAppManifestErrorColumn :: Int
  }
  deriving (PageAppManifestError -> PageAppManifestError -> Bool
(PageAppManifestError -> PageAppManifestError -> Bool)
-> (PageAppManifestError -> PageAppManifestError -> Bool)
-> Eq PageAppManifestError
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageAppManifestError -> PageAppManifestError -> Bool
$c/= :: PageAppManifestError -> PageAppManifestError -> Bool
== :: PageAppManifestError -> PageAppManifestError -> Bool
$c== :: PageAppManifestError -> PageAppManifestError -> Bool
Eq, Int -> PageAppManifestError -> ShowS
[PageAppManifestError] -> ShowS
PageAppManifestError -> String
(Int -> PageAppManifestError -> ShowS)
-> (PageAppManifestError -> String)
-> ([PageAppManifestError] -> ShowS)
-> Show PageAppManifestError
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageAppManifestError] -> ShowS
$cshowList :: [PageAppManifestError] -> ShowS
show :: PageAppManifestError -> String
$cshow :: PageAppManifestError -> String
showsPrec :: Int -> PageAppManifestError -> ShowS
$cshowsPrec :: Int -> PageAppManifestError -> ShowS
Show)
instance FromJSON PageAppManifestError where
  parseJSON :: Value -> Parser PageAppManifestError
parseJSON = String
-> (Object -> Parser PageAppManifestError)
-> Value
-> Parser PageAppManifestError
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageAppManifestError" ((Object -> Parser PageAppManifestError)
 -> Value -> Parser PageAppManifestError)
-> (Object -> Parser PageAppManifestError)
-> Value
-> Parser PageAppManifestError
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> Int -> Int -> Int -> PageAppManifestError
PageAppManifestError
    (Text -> Int -> Int -> Int -> PageAppManifestError)
-> Parser Text
-> Parser (Int -> Int -> Int -> PageAppManifestError)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"message"
    Parser (Int -> Int -> Int -> PageAppManifestError)
-> Parser Int -> Parser (Int -> Int -> PageAppManifestError)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"critical"
    Parser (Int -> Int -> PageAppManifestError)
-> Parser Int -> Parser (Int -> PageAppManifestError)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"line"
    Parser (Int -> PageAppManifestError)
-> Parser Int -> Parser PageAppManifestError
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"column"
instance ToJSON PageAppManifestError where
  toJSON :: PageAppManifestError -> Value
toJSON PageAppManifestError
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"message" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PageAppManifestError -> Text
pageAppManifestErrorMessage PageAppManifestError
p),
    (Text
"critical" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PageAppManifestError -> Int
pageAppManifestErrorCritical PageAppManifestError
p),
    (Text
"line" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PageAppManifestError -> Int
pageAppManifestErrorLine PageAppManifestError
p),
    (Text
"column" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PageAppManifestError -> Int
pageAppManifestErrorColumn PageAppManifestError
p)
    ]

-- | Type 'Page.AppManifestParsedProperties'.
--   Parsed app manifest properties.
data PageAppManifestParsedProperties = PageAppManifestParsedProperties
  {
    -- | Computed scope value
    PageAppManifestParsedProperties -> Text
pageAppManifestParsedPropertiesScope :: T.Text
  }
  deriving (PageAppManifestParsedProperties
-> PageAppManifestParsedProperties -> Bool
(PageAppManifestParsedProperties
 -> PageAppManifestParsedProperties -> Bool)
-> (PageAppManifestParsedProperties
    -> PageAppManifestParsedProperties -> Bool)
-> Eq PageAppManifestParsedProperties
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageAppManifestParsedProperties
-> PageAppManifestParsedProperties -> Bool
$c/= :: PageAppManifestParsedProperties
-> PageAppManifestParsedProperties -> Bool
== :: PageAppManifestParsedProperties
-> PageAppManifestParsedProperties -> Bool
$c== :: PageAppManifestParsedProperties
-> PageAppManifestParsedProperties -> Bool
Eq, Int -> PageAppManifestParsedProperties -> ShowS
[PageAppManifestParsedProperties] -> ShowS
PageAppManifestParsedProperties -> String
(Int -> PageAppManifestParsedProperties -> ShowS)
-> (PageAppManifestParsedProperties -> String)
-> ([PageAppManifestParsedProperties] -> ShowS)
-> Show PageAppManifestParsedProperties
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageAppManifestParsedProperties] -> ShowS
$cshowList :: [PageAppManifestParsedProperties] -> ShowS
show :: PageAppManifestParsedProperties -> String
$cshow :: PageAppManifestParsedProperties -> String
showsPrec :: Int -> PageAppManifestParsedProperties -> ShowS
$cshowsPrec :: Int -> PageAppManifestParsedProperties -> ShowS
Show)
instance FromJSON PageAppManifestParsedProperties where
  parseJSON :: Value -> Parser PageAppManifestParsedProperties
parseJSON = String
-> (Object -> Parser PageAppManifestParsedProperties)
-> Value
-> Parser PageAppManifestParsedProperties
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageAppManifestParsedProperties" ((Object -> Parser PageAppManifestParsedProperties)
 -> Value -> Parser PageAppManifestParsedProperties)
-> (Object -> Parser PageAppManifestParsedProperties)
-> Value
-> Parser PageAppManifestParsedProperties
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> PageAppManifestParsedProperties
PageAppManifestParsedProperties
    (Text -> PageAppManifestParsedProperties)
-> Parser Text -> Parser PageAppManifestParsedProperties
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"scope"
instance ToJSON PageAppManifestParsedProperties where
  toJSON :: PageAppManifestParsedProperties -> Value
toJSON PageAppManifestParsedProperties
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"scope" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PageAppManifestParsedProperties -> Text
pageAppManifestParsedPropertiesScope PageAppManifestParsedProperties
p)
    ]

-- | Type 'Page.LayoutViewport'.
--   Layout viewport position and dimensions.
data PageLayoutViewport = PageLayoutViewport
  {
    -- | Horizontal offset relative to the document (CSS pixels).
    PageLayoutViewport -> Int
pageLayoutViewportPageX :: Int,
    -- | Vertical offset relative to the document (CSS pixels).
    PageLayoutViewport -> Int
pageLayoutViewportPageY :: Int,
    -- | Width (CSS pixels), excludes scrollbar if present.
    PageLayoutViewport -> Int
pageLayoutViewportClientWidth :: Int,
    -- | Height (CSS pixels), excludes scrollbar if present.
    PageLayoutViewport -> Int
pageLayoutViewportClientHeight :: Int
  }
  deriving (PageLayoutViewport -> PageLayoutViewport -> Bool
(PageLayoutViewport -> PageLayoutViewport -> Bool)
-> (PageLayoutViewport -> PageLayoutViewport -> Bool)
-> Eq PageLayoutViewport
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageLayoutViewport -> PageLayoutViewport -> Bool
$c/= :: PageLayoutViewport -> PageLayoutViewport -> Bool
== :: PageLayoutViewport -> PageLayoutViewport -> Bool
$c== :: PageLayoutViewport -> PageLayoutViewport -> Bool
Eq, Int -> PageLayoutViewport -> ShowS
[PageLayoutViewport] -> ShowS
PageLayoutViewport -> String
(Int -> PageLayoutViewport -> ShowS)
-> (PageLayoutViewport -> String)
-> ([PageLayoutViewport] -> ShowS)
-> Show PageLayoutViewport
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageLayoutViewport] -> ShowS
$cshowList :: [PageLayoutViewport] -> ShowS
show :: PageLayoutViewport -> String
$cshow :: PageLayoutViewport -> String
showsPrec :: Int -> PageLayoutViewport -> ShowS
$cshowsPrec :: Int -> PageLayoutViewport -> ShowS
Show)
instance FromJSON PageLayoutViewport where
  parseJSON :: Value -> Parser PageLayoutViewport
parseJSON = String
-> (Object -> Parser PageLayoutViewport)
-> Value
-> Parser PageLayoutViewport
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageLayoutViewport" ((Object -> Parser PageLayoutViewport)
 -> Value -> Parser PageLayoutViewport)
-> (Object -> Parser PageLayoutViewport)
-> Value
-> Parser PageLayoutViewport
forall a b. (a -> b) -> a -> b
$ \Object
o -> Int -> Int -> Int -> Int -> PageLayoutViewport
PageLayoutViewport
    (Int -> Int -> Int -> Int -> PageLayoutViewport)
-> Parser Int -> Parser (Int -> Int -> Int -> PageLayoutViewport)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"pageX"
    Parser (Int -> Int -> Int -> PageLayoutViewport)
-> Parser Int -> Parser (Int -> Int -> PageLayoutViewport)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"pageY"
    Parser (Int -> Int -> PageLayoutViewport)
-> Parser Int -> Parser (Int -> PageLayoutViewport)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"clientWidth"
    Parser (Int -> PageLayoutViewport)
-> Parser Int -> Parser PageLayoutViewport
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"clientHeight"
instance ToJSON PageLayoutViewport where
  toJSON :: PageLayoutViewport -> Value
toJSON PageLayoutViewport
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"pageX" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PageLayoutViewport -> Int
pageLayoutViewportPageX PageLayoutViewport
p),
    (Text
"pageY" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PageLayoutViewport -> Int
pageLayoutViewportPageY PageLayoutViewport
p),
    (Text
"clientWidth" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PageLayoutViewport -> Int
pageLayoutViewportClientWidth PageLayoutViewport
p),
    (Text
"clientHeight" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PageLayoutViewport -> Int
pageLayoutViewportClientHeight PageLayoutViewport
p)
    ]

-- | Type 'Page.VisualViewport'.
--   Visual viewport position, dimensions, and scale.
data PageVisualViewport = PageVisualViewport
  {
    -- | Horizontal offset relative to the layout viewport (CSS pixels).
    PageVisualViewport -> Double
pageVisualViewportOffsetX :: Double,
    -- | Vertical offset relative to the layout viewport (CSS pixels).
    PageVisualViewport -> Double
pageVisualViewportOffsetY :: Double,
    -- | Horizontal offset relative to the document (CSS pixels).
    PageVisualViewport -> Double
pageVisualViewportPageX :: Double,
    -- | Vertical offset relative to the document (CSS pixels).
    PageVisualViewport -> Double
pageVisualViewportPageY :: Double,
    -- | Width (CSS pixels), excludes scrollbar if present.
    PageVisualViewport -> Double
pageVisualViewportClientWidth :: Double,
    -- | Height (CSS pixels), excludes scrollbar if present.
    PageVisualViewport -> Double
pageVisualViewportClientHeight :: Double,
    -- | Scale relative to the ideal viewport (size at width=device-width).
    PageVisualViewport -> Double
pageVisualViewportScale :: Double,
    -- | Page zoom factor (CSS to device independent pixels ratio).
    PageVisualViewport -> Maybe Double
pageVisualViewportZoom :: Maybe Double
  }
  deriving (PageVisualViewport -> PageVisualViewport -> Bool
(PageVisualViewport -> PageVisualViewport -> Bool)
-> (PageVisualViewport -> PageVisualViewport -> Bool)
-> Eq PageVisualViewport
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageVisualViewport -> PageVisualViewport -> Bool
$c/= :: PageVisualViewport -> PageVisualViewport -> Bool
== :: PageVisualViewport -> PageVisualViewport -> Bool
$c== :: PageVisualViewport -> PageVisualViewport -> Bool
Eq, Int -> PageVisualViewport -> ShowS
[PageVisualViewport] -> ShowS
PageVisualViewport -> String
(Int -> PageVisualViewport -> ShowS)
-> (PageVisualViewport -> String)
-> ([PageVisualViewport] -> ShowS)
-> Show PageVisualViewport
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageVisualViewport] -> ShowS
$cshowList :: [PageVisualViewport] -> ShowS
show :: PageVisualViewport -> String
$cshow :: PageVisualViewport -> String
showsPrec :: Int -> PageVisualViewport -> ShowS
$cshowsPrec :: Int -> PageVisualViewport -> ShowS
Show)
instance FromJSON PageVisualViewport where
  parseJSON :: Value -> Parser PageVisualViewport
parseJSON = String
-> (Object -> Parser PageVisualViewport)
-> Value
-> Parser PageVisualViewport
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageVisualViewport" ((Object -> Parser PageVisualViewport)
 -> Value -> Parser PageVisualViewport)
-> (Object -> Parser PageVisualViewport)
-> Value
-> Parser PageVisualViewport
forall a b. (a -> b) -> a -> b
$ \Object
o -> Double
-> Double
-> Double
-> Double
-> Double
-> Double
-> Double
-> Maybe Double
-> PageVisualViewport
PageVisualViewport
    (Double
 -> Double
 -> Double
 -> Double
 -> Double
 -> Double
 -> Double
 -> Maybe Double
 -> PageVisualViewport)
-> Parser Double
-> Parser
     (Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Maybe Double
      -> PageVisualViewport)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"offsetX"
    Parser
  (Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Maybe Double
   -> PageVisualViewport)
-> Parser Double
-> Parser
     (Double
      -> Double
      -> Double
      -> Double
      -> Double
      -> Maybe Double
      -> PageVisualViewport)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"offsetY"
    Parser
  (Double
   -> Double
   -> Double
   -> Double
   -> Double
   -> Maybe Double
   -> PageVisualViewport)
-> Parser Double
-> Parser
     (Double
      -> Double
      -> Double
      -> Double
      -> Maybe Double
      -> PageVisualViewport)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"pageX"
    Parser
  (Double
   -> Double
   -> Double
   -> Double
   -> Maybe Double
   -> PageVisualViewport)
-> Parser Double
-> Parser
     (Double -> Double -> Double -> Maybe Double -> PageVisualViewport)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"pageY"
    Parser
  (Double -> Double -> Double -> Maybe Double -> PageVisualViewport)
-> Parser Double
-> Parser (Double -> Double -> Maybe Double -> PageVisualViewport)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"clientWidth"
    Parser (Double -> Double -> Maybe Double -> PageVisualViewport)
-> Parser Double
-> Parser (Double -> Maybe Double -> PageVisualViewport)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"clientHeight"
    Parser (Double -> Maybe Double -> PageVisualViewport)
-> Parser Double -> Parser (Maybe Double -> PageVisualViewport)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"scale"
    Parser (Maybe Double -> PageVisualViewport)
-> Parser (Maybe Double) -> Parser PageVisualViewport
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Double)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"zoom"
instance ToJSON PageVisualViewport where
  toJSON :: PageVisualViewport -> Value
toJSON PageVisualViewport
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"offsetX" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (PageVisualViewport -> Double
pageVisualViewportOffsetX PageVisualViewport
p),
    (Text
"offsetY" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (PageVisualViewport -> Double
pageVisualViewportOffsetY PageVisualViewport
p),
    (Text
"pageX" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (PageVisualViewport -> Double
pageVisualViewportPageX PageVisualViewport
p),
    (Text
"pageY" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (PageVisualViewport -> Double
pageVisualViewportPageY PageVisualViewport
p),
    (Text
"clientWidth" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (PageVisualViewport -> Double
pageVisualViewportClientWidth PageVisualViewport
p),
    (Text
"clientHeight" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (PageVisualViewport -> Double
pageVisualViewportClientHeight PageVisualViewport
p),
    (Text
"scale" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (PageVisualViewport -> Double
pageVisualViewportScale PageVisualViewport
p),
    (Text
"zoom" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PageVisualViewport -> Maybe Double
pageVisualViewportZoom PageVisualViewport
p)
    ]

-- | Type 'Page.Viewport'.
--   Viewport for capturing screenshot.
data PageViewport = PageViewport
  {
    -- | X offset in device independent pixels (dip).
    PageViewport -> Double
pageViewportX :: Double,
    -- | Y offset in device independent pixels (dip).
    PageViewport -> Double
pageViewportY :: Double,
    -- | Rectangle width in device independent pixels (dip).
    PageViewport -> Double
pageViewportWidth :: Double,
    -- | Rectangle height in device independent pixels (dip).
    PageViewport -> Double
pageViewportHeight :: Double,
    -- | Page scale factor.
    PageViewport -> Double
pageViewportScale :: Double
  }
  deriving (PageViewport -> PageViewport -> Bool
(PageViewport -> PageViewport -> Bool)
-> (PageViewport -> PageViewport -> Bool) -> Eq PageViewport
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageViewport -> PageViewport -> Bool
$c/= :: PageViewport -> PageViewport -> Bool
== :: PageViewport -> PageViewport -> Bool
$c== :: PageViewport -> PageViewport -> Bool
Eq, Int -> PageViewport -> ShowS
[PageViewport] -> ShowS
PageViewport -> String
(Int -> PageViewport -> ShowS)
-> (PageViewport -> String)
-> ([PageViewport] -> ShowS)
-> Show PageViewport
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageViewport] -> ShowS
$cshowList :: [PageViewport] -> ShowS
show :: PageViewport -> String
$cshow :: PageViewport -> String
showsPrec :: Int -> PageViewport -> ShowS
$cshowsPrec :: Int -> PageViewport -> ShowS
Show)
instance FromJSON PageViewport where
  parseJSON :: Value -> Parser PageViewport
parseJSON = String
-> (Object -> Parser PageViewport) -> Value -> Parser PageViewport
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageViewport" ((Object -> Parser PageViewport) -> Value -> Parser PageViewport)
-> (Object -> Parser PageViewport) -> Value -> Parser PageViewport
forall a b. (a -> b) -> a -> b
$ \Object
o -> Double -> Double -> Double -> Double -> Double -> PageViewport
PageViewport
    (Double -> Double -> Double -> Double -> Double -> PageViewport)
-> Parser Double
-> Parser (Double -> Double -> Double -> Double -> PageViewport)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"x"
    Parser (Double -> Double -> Double -> Double -> PageViewport)
-> Parser Double
-> Parser (Double -> Double -> Double -> PageViewport)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"y"
    Parser (Double -> Double -> Double -> PageViewport)
-> Parser Double -> Parser (Double -> Double -> PageViewport)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"width"
    Parser (Double -> Double -> PageViewport)
-> Parser Double -> Parser (Double -> PageViewport)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"height"
    Parser (Double -> PageViewport)
-> Parser Double -> Parser PageViewport
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"scale"
instance ToJSON PageViewport where
  toJSON :: PageViewport -> Value
toJSON PageViewport
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"x" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (PageViewport -> Double
pageViewportX PageViewport
p),
    (Text
"y" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (PageViewport -> Double
pageViewportY PageViewport
p),
    (Text
"width" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (PageViewport -> Double
pageViewportWidth PageViewport
p),
    (Text
"height" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (PageViewport -> Double
pageViewportHeight PageViewport
p),
    (Text
"scale" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (PageViewport -> Double
pageViewportScale PageViewport
p)
    ]

-- | Type 'Page.FontFamilies'.
--   Generic font families collection.
data PageFontFamilies = PageFontFamilies
  {
    -- | The standard font-family.
    PageFontFamilies -> Maybe Text
pageFontFamiliesStandard :: Maybe T.Text,
    -- | The fixed font-family.
    PageFontFamilies -> Maybe Text
pageFontFamiliesFixed :: Maybe T.Text,
    -- | The serif font-family.
    PageFontFamilies -> Maybe Text
pageFontFamiliesSerif :: Maybe T.Text,
    -- | The sansSerif font-family.
    PageFontFamilies -> Maybe Text
pageFontFamiliesSansSerif :: Maybe T.Text,
    -- | The cursive font-family.
    PageFontFamilies -> Maybe Text
pageFontFamiliesCursive :: Maybe T.Text,
    -- | The fantasy font-family.
    PageFontFamilies -> Maybe Text
pageFontFamiliesFantasy :: Maybe T.Text,
    -- | The math font-family.
    PageFontFamilies -> Maybe Text
pageFontFamiliesMath :: Maybe T.Text
  }
  deriving (PageFontFamilies -> PageFontFamilies -> Bool
(PageFontFamilies -> PageFontFamilies -> Bool)
-> (PageFontFamilies -> PageFontFamilies -> Bool)
-> Eq PageFontFamilies
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageFontFamilies -> PageFontFamilies -> Bool
$c/= :: PageFontFamilies -> PageFontFamilies -> Bool
== :: PageFontFamilies -> PageFontFamilies -> Bool
$c== :: PageFontFamilies -> PageFontFamilies -> Bool
Eq, Int -> PageFontFamilies -> ShowS
[PageFontFamilies] -> ShowS
PageFontFamilies -> String
(Int -> PageFontFamilies -> ShowS)
-> (PageFontFamilies -> String)
-> ([PageFontFamilies] -> ShowS)
-> Show PageFontFamilies
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageFontFamilies] -> ShowS
$cshowList :: [PageFontFamilies] -> ShowS
show :: PageFontFamilies -> String
$cshow :: PageFontFamilies -> String
showsPrec :: Int -> PageFontFamilies -> ShowS
$cshowsPrec :: Int -> PageFontFamilies -> ShowS
Show)
instance FromJSON PageFontFamilies where
  parseJSON :: Value -> Parser PageFontFamilies
parseJSON = String
-> (Object -> Parser PageFontFamilies)
-> Value
-> Parser PageFontFamilies
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageFontFamilies" ((Object -> Parser PageFontFamilies)
 -> Value -> Parser PageFontFamilies)
-> (Object -> Parser PageFontFamilies)
-> Value
-> Parser PageFontFamilies
forall a b. (a -> b) -> a -> b
$ \Object
o -> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> PageFontFamilies
PageFontFamilies
    (Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> PageFontFamilies)
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PageFontFamilies)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"standard"
    Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PageFontFamilies)
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> PageFontFamilies)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"fixed"
    Parser
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> PageFontFamilies)
-> Parser (Maybe Text)
-> Parser
     (Maybe Text
      -> Maybe Text -> Maybe Text -> Maybe Text -> PageFontFamilies)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"serif"
    Parser
  (Maybe Text
   -> Maybe Text -> Maybe Text -> Maybe Text -> PageFontFamilies)
-> Parser (Maybe Text)
-> Parser
     (Maybe Text -> Maybe Text -> Maybe Text -> PageFontFamilies)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"sansSerif"
    Parser (Maybe Text -> Maybe Text -> Maybe Text -> PageFontFamilies)
-> Parser (Maybe Text)
-> Parser (Maybe Text -> Maybe Text -> PageFontFamilies)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"cursive"
    Parser (Maybe Text -> Maybe Text -> PageFontFamilies)
-> Parser (Maybe Text) -> Parser (Maybe Text -> PageFontFamilies)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"fantasy"
    Parser (Maybe Text -> PageFontFamilies)
-> Parser (Maybe Text) -> Parser PageFontFamilies
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"math"
instance ToJSON PageFontFamilies where
  toJSON :: PageFontFamilies -> Value
toJSON PageFontFamilies
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"standard" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PageFontFamilies -> Maybe Text
pageFontFamiliesStandard PageFontFamilies
p),
    (Text
"fixed" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PageFontFamilies -> Maybe Text
pageFontFamiliesFixed PageFontFamilies
p),
    (Text
"serif" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PageFontFamilies -> Maybe Text
pageFontFamiliesSerif PageFontFamilies
p),
    (Text
"sansSerif" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PageFontFamilies -> Maybe Text
pageFontFamiliesSansSerif PageFontFamilies
p),
    (Text
"cursive" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PageFontFamilies -> Maybe Text
pageFontFamiliesCursive PageFontFamilies
p),
    (Text
"fantasy" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PageFontFamilies -> Maybe Text
pageFontFamiliesFantasy PageFontFamilies
p),
    (Text
"math" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PageFontFamilies -> Maybe Text
pageFontFamiliesMath PageFontFamilies
p)
    ]

-- | Type 'Page.ScriptFontFamilies'.
--   Font families collection for a script.
data PageScriptFontFamilies = PageScriptFontFamilies
  {
    -- | Name of the script which these font families are defined for.
    PageScriptFontFamilies -> Text
pageScriptFontFamiliesScript :: T.Text,
    -- | Generic font families collection for the script.
    PageScriptFontFamilies -> PageFontFamilies
pageScriptFontFamiliesFontFamilies :: PageFontFamilies
  }
  deriving (PageScriptFontFamilies -> PageScriptFontFamilies -> Bool
(PageScriptFontFamilies -> PageScriptFontFamilies -> Bool)
-> (PageScriptFontFamilies -> PageScriptFontFamilies -> Bool)
-> Eq PageScriptFontFamilies
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageScriptFontFamilies -> PageScriptFontFamilies -> Bool
$c/= :: PageScriptFontFamilies -> PageScriptFontFamilies -> Bool
== :: PageScriptFontFamilies -> PageScriptFontFamilies -> Bool
$c== :: PageScriptFontFamilies -> PageScriptFontFamilies -> Bool
Eq, Int -> PageScriptFontFamilies -> ShowS
[PageScriptFontFamilies] -> ShowS
PageScriptFontFamilies -> String
(Int -> PageScriptFontFamilies -> ShowS)
-> (PageScriptFontFamilies -> String)
-> ([PageScriptFontFamilies] -> ShowS)
-> Show PageScriptFontFamilies
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageScriptFontFamilies] -> ShowS
$cshowList :: [PageScriptFontFamilies] -> ShowS
show :: PageScriptFontFamilies -> String
$cshow :: PageScriptFontFamilies -> String
showsPrec :: Int -> PageScriptFontFamilies -> ShowS
$cshowsPrec :: Int -> PageScriptFontFamilies -> ShowS
Show)
instance FromJSON PageScriptFontFamilies where
  parseJSON :: Value -> Parser PageScriptFontFamilies
parseJSON = String
-> (Object -> Parser PageScriptFontFamilies)
-> Value
-> Parser PageScriptFontFamilies
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageScriptFontFamilies" ((Object -> Parser PageScriptFontFamilies)
 -> Value -> Parser PageScriptFontFamilies)
-> (Object -> Parser PageScriptFontFamilies)
-> Value
-> Parser PageScriptFontFamilies
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> PageFontFamilies -> PageScriptFontFamilies
PageScriptFontFamilies
    (Text -> PageFontFamilies -> PageScriptFontFamilies)
-> Parser Text
-> Parser (PageFontFamilies -> PageScriptFontFamilies)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"script"
    Parser (PageFontFamilies -> PageScriptFontFamilies)
-> Parser PageFontFamilies -> Parser PageScriptFontFamilies
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser PageFontFamilies
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"fontFamilies"
instance ToJSON PageScriptFontFamilies where
  toJSON :: PageScriptFontFamilies -> Value
toJSON PageScriptFontFamilies
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"script" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PageScriptFontFamilies -> Text
pageScriptFontFamiliesScript PageScriptFontFamilies
p),
    (Text
"fontFamilies" Text -> PageFontFamilies -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (PageFontFamilies -> Pair) -> Maybe PageFontFamilies -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> PageFontFamilies -> Maybe PageFontFamilies
forall a. a -> Maybe a
Just (PageScriptFontFamilies -> PageFontFamilies
pageScriptFontFamiliesFontFamilies PageScriptFontFamilies
p)
    ]

-- | Type 'Page.FontSizes'.
--   Default font sizes.
data PageFontSizes = PageFontSizes
  {
    -- | Default standard font size.
    PageFontSizes -> Maybe Int
pageFontSizesStandard :: Maybe Int,
    -- | Default fixed font size.
    PageFontSizes -> Maybe Int
pageFontSizesFixed :: Maybe Int
  }
  deriving (PageFontSizes -> PageFontSizes -> Bool
(PageFontSizes -> PageFontSizes -> Bool)
-> (PageFontSizes -> PageFontSizes -> Bool) -> Eq PageFontSizes
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageFontSizes -> PageFontSizes -> Bool
$c/= :: PageFontSizes -> PageFontSizes -> Bool
== :: PageFontSizes -> PageFontSizes -> Bool
$c== :: PageFontSizes -> PageFontSizes -> Bool
Eq, Int -> PageFontSizes -> ShowS
[PageFontSizes] -> ShowS
PageFontSizes -> String
(Int -> PageFontSizes -> ShowS)
-> (PageFontSizes -> String)
-> ([PageFontSizes] -> ShowS)
-> Show PageFontSizes
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageFontSizes] -> ShowS
$cshowList :: [PageFontSizes] -> ShowS
show :: PageFontSizes -> String
$cshow :: PageFontSizes -> String
showsPrec :: Int -> PageFontSizes -> ShowS
$cshowsPrec :: Int -> PageFontSizes -> ShowS
Show)
instance FromJSON PageFontSizes where
  parseJSON :: Value -> Parser PageFontSizes
parseJSON = String
-> (Object -> Parser PageFontSizes)
-> Value
-> Parser PageFontSizes
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageFontSizes" ((Object -> Parser PageFontSizes) -> Value -> Parser PageFontSizes)
-> (Object -> Parser PageFontSizes)
-> Value
-> Parser PageFontSizes
forall a b. (a -> b) -> a -> b
$ \Object
o -> Maybe Int -> Maybe Int -> PageFontSizes
PageFontSizes
    (Maybe Int -> Maybe Int -> PageFontSizes)
-> Parser (Maybe Int) -> Parser (Maybe Int -> PageFontSizes)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser (Maybe Int)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"standard"
    Parser (Maybe Int -> PageFontSizes)
-> Parser (Maybe Int) -> Parser PageFontSizes
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Int)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"fixed"
instance ToJSON PageFontSizes where
  toJSON :: PageFontSizes -> Value
toJSON PageFontSizes
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"standard" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PageFontSizes -> Maybe Int
pageFontSizesStandard PageFontSizes
p),
    (Text
"fixed" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PageFontSizes -> Maybe Int
pageFontSizesFixed PageFontSizes
p)
    ]

-- | Type 'Page.ClientNavigationReason'.
data PageClientNavigationReason = PageClientNavigationReasonFormSubmissionGet | PageClientNavigationReasonFormSubmissionPost | PageClientNavigationReasonHttpHeaderRefresh | PageClientNavigationReasonScriptInitiated | PageClientNavigationReasonMetaTagRefresh | PageClientNavigationReasonPageBlockInterstitial | PageClientNavigationReasonReload | PageClientNavigationReasonAnchorClick
  deriving (Eq PageClientNavigationReason
Eq PageClientNavigationReason
-> (PageClientNavigationReason
    -> PageClientNavigationReason -> Ordering)
-> (PageClientNavigationReason
    -> PageClientNavigationReason -> Bool)
-> (PageClientNavigationReason
    -> PageClientNavigationReason -> Bool)
-> (PageClientNavigationReason
    -> PageClientNavigationReason -> Bool)
-> (PageClientNavigationReason
    -> PageClientNavigationReason -> Bool)
-> (PageClientNavigationReason
    -> PageClientNavigationReason -> PageClientNavigationReason)
-> (PageClientNavigationReason
    -> PageClientNavigationReason -> PageClientNavigationReason)
-> Ord PageClientNavigationReason
PageClientNavigationReason -> PageClientNavigationReason -> Bool
PageClientNavigationReason
-> PageClientNavigationReason -> Ordering
PageClientNavigationReason
-> PageClientNavigationReason -> PageClientNavigationReason
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: PageClientNavigationReason
-> PageClientNavigationReason -> PageClientNavigationReason
$cmin :: PageClientNavigationReason
-> PageClientNavigationReason -> PageClientNavigationReason
max :: PageClientNavigationReason
-> PageClientNavigationReason -> PageClientNavigationReason
$cmax :: PageClientNavigationReason
-> PageClientNavigationReason -> PageClientNavigationReason
>= :: PageClientNavigationReason -> PageClientNavigationReason -> Bool
$c>= :: PageClientNavigationReason -> PageClientNavigationReason -> Bool
> :: PageClientNavigationReason -> PageClientNavigationReason -> Bool
$c> :: PageClientNavigationReason -> PageClientNavigationReason -> Bool
<= :: PageClientNavigationReason -> PageClientNavigationReason -> Bool
$c<= :: PageClientNavigationReason -> PageClientNavigationReason -> Bool
< :: PageClientNavigationReason -> PageClientNavigationReason -> Bool
$c< :: PageClientNavigationReason -> PageClientNavigationReason -> Bool
compare :: PageClientNavigationReason
-> PageClientNavigationReason -> Ordering
$ccompare :: PageClientNavigationReason
-> PageClientNavigationReason -> Ordering
$cp1Ord :: Eq PageClientNavigationReason
Ord, PageClientNavigationReason -> PageClientNavigationReason -> Bool
(PageClientNavigationReason -> PageClientNavigationReason -> Bool)
-> (PageClientNavigationReason
    -> PageClientNavigationReason -> Bool)
-> Eq PageClientNavigationReason
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageClientNavigationReason -> PageClientNavigationReason -> Bool
$c/= :: PageClientNavigationReason -> PageClientNavigationReason -> Bool
== :: PageClientNavigationReason -> PageClientNavigationReason -> Bool
$c== :: PageClientNavigationReason -> PageClientNavigationReason -> Bool
Eq, Int -> PageClientNavigationReason -> ShowS
[PageClientNavigationReason] -> ShowS
PageClientNavigationReason -> String
(Int -> PageClientNavigationReason -> ShowS)
-> (PageClientNavigationReason -> String)
-> ([PageClientNavigationReason] -> ShowS)
-> Show PageClientNavigationReason
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageClientNavigationReason] -> ShowS
$cshowList :: [PageClientNavigationReason] -> ShowS
show :: PageClientNavigationReason -> String
$cshow :: PageClientNavigationReason -> String
showsPrec :: Int -> PageClientNavigationReason -> ShowS
$cshowsPrec :: Int -> PageClientNavigationReason -> ShowS
Show, ReadPrec [PageClientNavigationReason]
ReadPrec PageClientNavigationReason
Int -> ReadS PageClientNavigationReason
ReadS [PageClientNavigationReason]
(Int -> ReadS PageClientNavigationReason)
-> ReadS [PageClientNavigationReason]
-> ReadPrec PageClientNavigationReason
-> ReadPrec [PageClientNavigationReason]
-> Read PageClientNavigationReason
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PageClientNavigationReason]
$creadListPrec :: ReadPrec [PageClientNavigationReason]
readPrec :: ReadPrec PageClientNavigationReason
$creadPrec :: ReadPrec PageClientNavigationReason
readList :: ReadS [PageClientNavigationReason]
$creadList :: ReadS [PageClientNavigationReason]
readsPrec :: Int -> ReadS PageClientNavigationReason
$creadsPrec :: Int -> ReadS PageClientNavigationReason
Read)
instance FromJSON PageClientNavigationReason where
  parseJSON :: Value -> Parser PageClientNavigationReason
parseJSON = String
-> (Text -> Parser PageClientNavigationReason)
-> Value
-> Parser PageClientNavigationReason
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"PageClientNavigationReason" ((Text -> Parser PageClientNavigationReason)
 -> Value -> Parser PageClientNavigationReason)
-> (Text -> Parser PageClientNavigationReason)
-> Value
-> Parser PageClientNavigationReason
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"formSubmissionGet" -> PageClientNavigationReason -> Parser PageClientNavigationReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageClientNavigationReason
PageClientNavigationReasonFormSubmissionGet
    Text
"formSubmissionPost" -> PageClientNavigationReason -> Parser PageClientNavigationReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageClientNavigationReason
PageClientNavigationReasonFormSubmissionPost
    Text
"httpHeaderRefresh" -> PageClientNavigationReason -> Parser PageClientNavigationReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageClientNavigationReason
PageClientNavigationReasonHttpHeaderRefresh
    Text
"scriptInitiated" -> PageClientNavigationReason -> Parser PageClientNavigationReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageClientNavigationReason
PageClientNavigationReasonScriptInitiated
    Text
"metaTagRefresh" -> PageClientNavigationReason -> Parser PageClientNavigationReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageClientNavigationReason
PageClientNavigationReasonMetaTagRefresh
    Text
"pageBlockInterstitial" -> PageClientNavigationReason -> Parser PageClientNavigationReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageClientNavigationReason
PageClientNavigationReasonPageBlockInterstitial
    Text
"reload" -> PageClientNavigationReason -> Parser PageClientNavigationReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageClientNavigationReason
PageClientNavigationReasonReload
    Text
"anchorClick" -> PageClientNavigationReason -> Parser PageClientNavigationReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageClientNavigationReason
PageClientNavigationReasonAnchorClick
    Text
"_" -> String -> Parser PageClientNavigationReason
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse PageClientNavigationReason"
instance ToJSON PageClientNavigationReason where
  toJSON :: PageClientNavigationReason -> Value
toJSON PageClientNavigationReason
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case PageClientNavigationReason
v of
    PageClientNavigationReason
PageClientNavigationReasonFormSubmissionGet -> Text
"formSubmissionGet"
    PageClientNavigationReason
PageClientNavigationReasonFormSubmissionPost -> Text
"formSubmissionPost"
    PageClientNavigationReason
PageClientNavigationReasonHttpHeaderRefresh -> Text
"httpHeaderRefresh"
    PageClientNavigationReason
PageClientNavigationReasonScriptInitiated -> Text
"scriptInitiated"
    PageClientNavigationReason
PageClientNavigationReasonMetaTagRefresh -> Text
"metaTagRefresh"
    PageClientNavigationReason
PageClientNavigationReasonPageBlockInterstitial -> Text
"pageBlockInterstitial"
    PageClientNavigationReason
PageClientNavigationReasonReload -> Text
"reload"
    PageClientNavigationReason
PageClientNavigationReasonAnchorClick -> Text
"anchorClick"

-- | Type 'Page.ClientNavigationDisposition'.
data PageClientNavigationDisposition = PageClientNavigationDispositionCurrentTab | PageClientNavigationDispositionNewTab | PageClientNavigationDispositionNewWindow | PageClientNavigationDispositionDownload
  deriving (Eq PageClientNavigationDisposition
Eq PageClientNavigationDisposition
-> (PageClientNavigationDisposition
    -> PageClientNavigationDisposition -> Ordering)
-> (PageClientNavigationDisposition
    -> PageClientNavigationDisposition -> Bool)
-> (PageClientNavigationDisposition
    -> PageClientNavigationDisposition -> Bool)
-> (PageClientNavigationDisposition
    -> PageClientNavigationDisposition -> Bool)
-> (PageClientNavigationDisposition
    -> PageClientNavigationDisposition -> Bool)
-> (PageClientNavigationDisposition
    -> PageClientNavigationDisposition
    -> PageClientNavigationDisposition)
-> (PageClientNavigationDisposition
    -> PageClientNavigationDisposition
    -> PageClientNavigationDisposition)
-> Ord PageClientNavigationDisposition
PageClientNavigationDisposition
-> PageClientNavigationDisposition -> Bool
PageClientNavigationDisposition
-> PageClientNavigationDisposition -> Ordering
PageClientNavigationDisposition
-> PageClientNavigationDisposition
-> PageClientNavigationDisposition
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: PageClientNavigationDisposition
-> PageClientNavigationDisposition
-> PageClientNavigationDisposition
$cmin :: PageClientNavigationDisposition
-> PageClientNavigationDisposition
-> PageClientNavigationDisposition
max :: PageClientNavigationDisposition
-> PageClientNavigationDisposition
-> PageClientNavigationDisposition
$cmax :: PageClientNavigationDisposition
-> PageClientNavigationDisposition
-> PageClientNavigationDisposition
>= :: PageClientNavigationDisposition
-> PageClientNavigationDisposition -> Bool
$c>= :: PageClientNavigationDisposition
-> PageClientNavigationDisposition -> Bool
> :: PageClientNavigationDisposition
-> PageClientNavigationDisposition -> Bool
$c> :: PageClientNavigationDisposition
-> PageClientNavigationDisposition -> Bool
<= :: PageClientNavigationDisposition
-> PageClientNavigationDisposition -> Bool
$c<= :: PageClientNavigationDisposition
-> PageClientNavigationDisposition -> Bool
< :: PageClientNavigationDisposition
-> PageClientNavigationDisposition -> Bool
$c< :: PageClientNavigationDisposition
-> PageClientNavigationDisposition -> Bool
compare :: PageClientNavigationDisposition
-> PageClientNavigationDisposition -> Ordering
$ccompare :: PageClientNavigationDisposition
-> PageClientNavigationDisposition -> Ordering
$cp1Ord :: Eq PageClientNavigationDisposition
Ord, PageClientNavigationDisposition
-> PageClientNavigationDisposition -> Bool
(PageClientNavigationDisposition
 -> PageClientNavigationDisposition -> Bool)
-> (PageClientNavigationDisposition
    -> PageClientNavigationDisposition -> Bool)
-> Eq PageClientNavigationDisposition
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageClientNavigationDisposition
-> PageClientNavigationDisposition -> Bool
$c/= :: PageClientNavigationDisposition
-> PageClientNavigationDisposition -> Bool
== :: PageClientNavigationDisposition
-> PageClientNavigationDisposition -> Bool
$c== :: PageClientNavigationDisposition
-> PageClientNavigationDisposition -> Bool
Eq, Int -> PageClientNavigationDisposition -> ShowS
[PageClientNavigationDisposition] -> ShowS
PageClientNavigationDisposition -> String
(Int -> PageClientNavigationDisposition -> ShowS)
-> (PageClientNavigationDisposition -> String)
-> ([PageClientNavigationDisposition] -> ShowS)
-> Show PageClientNavigationDisposition
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageClientNavigationDisposition] -> ShowS
$cshowList :: [PageClientNavigationDisposition] -> ShowS
show :: PageClientNavigationDisposition -> String
$cshow :: PageClientNavigationDisposition -> String
showsPrec :: Int -> PageClientNavigationDisposition -> ShowS
$cshowsPrec :: Int -> PageClientNavigationDisposition -> ShowS
Show, ReadPrec [PageClientNavigationDisposition]
ReadPrec PageClientNavigationDisposition
Int -> ReadS PageClientNavigationDisposition
ReadS [PageClientNavigationDisposition]
(Int -> ReadS PageClientNavigationDisposition)
-> ReadS [PageClientNavigationDisposition]
-> ReadPrec PageClientNavigationDisposition
-> ReadPrec [PageClientNavigationDisposition]
-> Read PageClientNavigationDisposition
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PageClientNavigationDisposition]
$creadListPrec :: ReadPrec [PageClientNavigationDisposition]
readPrec :: ReadPrec PageClientNavigationDisposition
$creadPrec :: ReadPrec PageClientNavigationDisposition
readList :: ReadS [PageClientNavigationDisposition]
$creadList :: ReadS [PageClientNavigationDisposition]
readsPrec :: Int -> ReadS PageClientNavigationDisposition
$creadsPrec :: Int -> ReadS PageClientNavigationDisposition
Read)
instance FromJSON PageClientNavigationDisposition where
  parseJSON :: Value -> Parser PageClientNavigationDisposition
parseJSON = String
-> (Text -> Parser PageClientNavigationDisposition)
-> Value
-> Parser PageClientNavigationDisposition
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"PageClientNavigationDisposition" ((Text -> Parser PageClientNavigationDisposition)
 -> Value -> Parser PageClientNavigationDisposition)
-> (Text -> Parser PageClientNavigationDisposition)
-> Value
-> Parser PageClientNavigationDisposition
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"currentTab" -> PageClientNavigationDisposition
-> Parser PageClientNavigationDisposition
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageClientNavigationDisposition
PageClientNavigationDispositionCurrentTab
    Text
"newTab" -> PageClientNavigationDisposition
-> Parser PageClientNavigationDisposition
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageClientNavigationDisposition
PageClientNavigationDispositionNewTab
    Text
"newWindow" -> PageClientNavigationDisposition
-> Parser PageClientNavigationDisposition
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageClientNavigationDisposition
PageClientNavigationDispositionNewWindow
    Text
"download" -> PageClientNavigationDisposition
-> Parser PageClientNavigationDisposition
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageClientNavigationDisposition
PageClientNavigationDispositionDownload
    Text
"_" -> String -> Parser PageClientNavigationDisposition
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse PageClientNavigationDisposition"
instance ToJSON PageClientNavigationDisposition where
  toJSON :: PageClientNavigationDisposition -> Value
toJSON PageClientNavigationDisposition
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case PageClientNavigationDisposition
v of
    PageClientNavigationDisposition
PageClientNavigationDispositionCurrentTab -> Text
"currentTab"
    PageClientNavigationDisposition
PageClientNavigationDispositionNewTab -> Text
"newTab"
    PageClientNavigationDisposition
PageClientNavigationDispositionNewWindow -> Text
"newWindow"
    PageClientNavigationDisposition
PageClientNavigationDispositionDownload -> Text
"download"

-- | Type 'Page.InstallabilityErrorArgument'.
data PageInstallabilityErrorArgument = PageInstallabilityErrorArgument
  {
    -- | Argument name (e.g. name:'minimum-icon-size-in-pixels').
    PageInstallabilityErrorArgument -> Text
pageInstallabilityErrorArgumentName :: T.Text,
    -- | Argument value (e.g. value:'64').
    PageInstallabilityErrorArgument -> Text
pageInstallabilityErrorArgumentValue :: T.Text
  }
  deriving (PageInstallabilityErrorArgument
-> PageInstallabilityErrorArgument -> Bool
(PageInstallabilityErrorArgument
 -> PageInstallabilityErrorArgument -> Bool)
-> (PageInstallabilityErrorArgument
    -> PageInstallabilityErrorArgument -> Bool)
-> Eq PageInstallabilityErrorArgument
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageInstallabilityErrorArgument
-> PageInstallabilityErrorArgument -> Bool
$c/= :: PageInstallabilityErrorArgument
-> PageInstallabilityErrorArgument -> Bool
== :: PageInstallabilityErrorArgument
-> PageInstallabilityErrorArgument -> Bool
$c== :: PageInstallabilityErrorArgument
-> PageInstallabilityErrorArgument -> Bool
Eq, Int -> PageInstallabilityErrorArgument -> ShowS
[PageInstallabilityErrorArgument] -> ShowS
PageInstallabilityErrorArgument -> String
(Int -> PageInstallabilityErrorArgument -> ShowS)
-> (PageInstallabilityErrorArgument -> String)
-> ([PageInstallabilityErrorArgument] -> ShowS)
-> Show PageInstallabilityErrorArgument
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageInstallabilityErrorArgument] -> ShowS
$cshowList :: [PageInstallabilityErrorArgument] -> ShowS
show :: PageInstallabilityErrorArgument -> String
$cshow :: PageInstallabilityErrorArgument -> String
showsPrec :: Int -> PageInstallabilityErrorArgument -> ShowS
$cshowsPrec :: Int -> PageInstallabilityErrorArgument -> ShowS
Show)
instance FromJSON PageInstallabilityErrorArgument where
  parseJSON :: Value -> Parser PageInstallabilityErrorArgument
parseJSON = String
-> (Object -> Parser PageInstallabilityErrorArgument)
-> Value
-> Parser PageInstallabilityErrorArgument
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageInstallabilityErrorArgument" ((Object -> Parser PageInstallabilityErrorArgument)
 -> Value -> Parser PageInstallabilityErrorArgument)
-> (Object -> Parser PageInstallabilityErrorArgument)
-> Value
-> Parser PageInstallabilityErrorArgument
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> Text -> PageInstallabilityErrorArgument
PageInstallabilityErrorArgument
    (Text -> Text -> PageInstallabilityErrorArgument)
-> Parser Text -> Parser (Text -> PageInstallabilityErrorArgument)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"name"
    Parser (Text -> PageInstallabilityErrorArgument)
-> Parser Text -> Parser PageInstallabilityErrorArgument
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"value"
instance ToJSON PageInstallabilityErrorArgument where
  toJSON :: PageInstallabilityErrorArgument -> Value
toJSON PageInstallabilityErrorArgument
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"name" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PageInstallabilityErrorArgument -> Text
pageInstallabilityErrorArgumentName PageInstallabilityErrorArgument
p),
    (Text
"value" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PageInstallabilityErrorArgument -> Text
pageInstallabilityErrorArgumentValue PageInstallabilityErrorArgument
p)
    ]

-- | Type 'Page.InstallabilityError'.
--   The installability error
data PageInstallabilityError = PageInstallabilityError
  {
    -- | The error id (e.g. 'manifest-missing-suitable-icon').
    PageInstallabilityError -> Text
pageInstallabilityErrorErrorId :: T.Text,
    -- | The list of error arguments (e.g. {name:'minimum-icon-size-in-pixels', value:'64'}).
    PageInstallabilityError -> [PageInstallabilityErrorArgument]
pageInstallabilityErrorErrorArguments :: [PageInstallabilityErrorArgument]
  }
  deriving (PageInstallabilityError -> PageInstallabilityError -> Bool
(PageInstallabilityError -> PageInstallabilityError -> Bool)
-> (PageInstallabilityError -> PageInstallabilityError -> Bool)
-> Eq PageInstallabilityError
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageInstallabilityError -> PageInstallabilityError -> Bool
$c/= :: PageInstallabilityError -> PageInstallabilityError -> Bool
== :: PageInstallabilityError -> PageInstallabilityError -> Bool
$c== :: PageInstallabilityError -> PageInstallabilityError -> Bool
Eq, Int -> PageInstallabilityError -> ShowS
[PageInstallabilityError] -> ShowS
PageInstallabilityError -> String
(Int -> PageInstallabilityError -> ShowS)
-> (PageInstallabilityError -> String)
-> ([PageInstallabilityError] -> ShowS)
-> Show PageInstallabilityError
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageInstallabilityError] -> ShowS
$cshowList :: [PageInstallabilityError] -> ShowS
show :: PageInstallabilityError -> String
$cshow :: PageInstallabilityError -> String
showsPrec :: Int -> PageInstallabilityError -> ShowS
$cshowsPrec :: Int -> PageInstallabilityError -> ShowS
Show)
instance FromJSON PageInstallabilityError where
  parseJSON :: Value -> Parser PageInstallabilityError
parseJSON = String
-> (Object -> Parser PageInstallabilityError)
-> Value
-> Parser PageInstallabilityError
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageInstallabilityError" ((Object -> Parser PageInstallabilityError)
 -> Value -> Parser PageInstallabilityError)
-> (Object -> Parser PageInstallabilityError)
-> Value
-> Parser PageInstallabilityError
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> [PageInstallabilityErrorArgument] -> PageInstallabilityError
PageInstallabilityError
    (Text
 -> [PageInstallabilityErrorArgument] -> PageInstallabilityError)
-> Parser Text
-> Parser
     ([PageInstallabilityErrorArgument] -> PageInstallabilityError)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"errorId"
    Parser
  ([PageInstallabilityErrorArgument] -> PageInstallabilityError)
-> Parser [PageInstallabilityErrorArgument]
-> Parser PageInstallabilityError
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser [PageInstallabilityErrorArgument]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"errorArguments"
instance ToJSON PageInstallabilityError where
  toJSON :: PageInstallabilityError -> Value
toJSON PageInstallabilityError
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"errorId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PageInstallabilityError -> Text
pageInstallabilityErrorErrorId PageInstallabilityError
p),
    (Text
"errorArguments" Text -> [PageInstallabilityErrorArgument] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([PageInstallabilityErrorArgument] -> Pair)
-> Maybe [PageInstallabilityErrorArgument] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> [PageInstallabilityErrorArgument]
-> Maybe [PageInstallabilityErrorArgument]
forall a. a -> Maybe a
Just (PageInstallabilityError -> [PageInstallabilityErrorArgument]
pageInstallabilityErrorErrorArguments PageInstallabilityError
p)
    ]

-- | Type 'Page.ReferrerPolicy'.
--   The referring-policy used for the navigation.
data PageReferrerPolicy = PageReferrerPolicyNoReferrer | PageReferrerPolicyNoReferrerWhenDowngrade | PageReferrerPolicyOrigin | PageReferrerPolicyOriginWhenCrossOrigin | PageReferrerPolicySameOrigin | PageReferrerPolicyStrictOrigin | PageReferrerPolicyStrictOriginWhenCrossOrigin | PageReferrerPolicyUnsafeUrl
  deriving (Eq PageReferrerPolicy
Eq PageReferrerPolicy
-> (PageReferrerPolicy -> PageReferrerPolicy -> Ordering)
-> (PageReferrerPolicy -> PageReferrerPolicy -> Bool)
-> (PageReferrerPolicy -> PageReferrerPolicy -> Bool)
-> (PageReferrerPolicy -> PageReferrerPolicy -> Bool)
-> (PageReferrerPolicy -> PageReferrerPolicy -> Bool)
-> (PageReferrerPolicy -> PageReferrerPolicy -> PageReferrerPolicy)
-> (PageReferrerPolicy -> PageReferrerPolicy -> PageReferrerPolicy)
-> Ord PageReferrerPolicy
PageReferrerPolicy -> PageReferrerPolicy -> Bool
PageReferrerPolicy -> PageReferrerPolicy -> Ordering
PageReferrerPolicy -> PageReferrerPolicy -> PageReferrerPolicy
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: PageReferrerPolicy -> PageReferrerPolicy -> PageReferrerPolicy
$cmin :: PageReferrerPolicy -> PageReferrerPolicy -> PageReferrerPolicy
max :: PageReferrerPolicy -> PageReferrerPolicy -> PageReferrerPolicy
$cmax :: PageReferrerPolicy -> PageReferrerPolicy -> PageReferrerPolicy
>= :: PageReferrerPolicy -> PageReferrerPolicy -> Bool
$c>= :: PageReferrerPolicy -> PageReferrerPolicy -> Bool
> :: PageReferrerPolicy -> PageReferrerPolicy -> Bool
$c> :: PageReferrerPolicy -> PageReferrerPolicy -> Bool
<= :: PageReferrerPolicy -> PageReferrerPolicy -> Bool
$c<= :: PageReferrerPolicy -> PageReferrerPolicy -> Bool
< :: PageReferrerPolicy -> PageReferrerPolicy -> Bool
$c< :: PageReferrerPolicy -> PageReferrerPolicy -> Bool
compare :: PageReferrerPolicy -> PageReferrerPolicy -> Ordering
$ccompare :: PageReferrerPolicy -> PageReferrerPolicy -> Ordering
$cp1Ord :: Eq PageReferrerPolicy
Ord, PageReferrerPolicy -> PageReferrerPolicy -> Bool
(PageReferrerPolicy -> PageReferrerPolicy -> Bool)
-> (PageReferrerPolicy -> PageReferrerPolicy -> Bool)
-> Eq PageReferrerPolicy
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageReferrerPolicy -> PageReferrerPolicy -> Bool
$c/= :: PageReferrerPolicy -> PageReferrerPolicy -> Bool
== :: PageReferrerPolicy -> PageReferrerPolicy -> Bool
$c== :: PageReferrerPolicy -> PageReferrerPolicy -> Bool
Eq, Int -> PageReferrerPolicy -> ShowS
[PageReferrerPolicy] -> ShowS
PageReferrerPolicy -> String
(Int -> PageReferrerPolicy -> ShowS)
-> (PageReferrerPolicy -> String)
-> ([PageReferrerPolicy] -> ShowS)
-> Show PageReferrerPolicy
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageReferrerPolicy] -> ShowS
$cshowList :: [PageReferrerPolicy] -> ShowS
show :: PageReferrerPolicy -> String
$cshow :: PageReferrerPolicy -> String
showsPrec :: Int -> PageReferrerPolicy -> ShowS
$cshowsPrec :: Int -> PageReferrerPolicy -> ShowS
Show, ReadPrec [PageReferrerPolicy]
ReadPrec PageReferrerPolicy
Int -> ReadS PageReferrerPolicy
ReadS [PageReferrerPolicy]
(Int -> ReadS PageReferrerPolicy)
-> ReadS [PageReferrerPolicy]
-> ReadPrec PageReferrerPolicy
-> ReadPrec [PageReferrerPolicy]
-> Read PageReferrerPolicy
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PageReferrerPolicy]
$creadListPrec :: ReadPrec [PageReferrerPolicy]
readPrec :: ReadPrec PageReferrerPolicy
$creadPrec :: ReadPrec PageReferrerPolicy
readList :: ReadS [PageReferrerPolicy]
$creadList :: ReadS [PageReferrerPolicy]
readsPrec :: Int -> ReadS PageReferrerPolicy
$creadsPrec :: Int -> ReadS PageReferrerPolicy
Read)
instance FromJSON PageReferrerPolicy where
  parseJSON :: Value -> Parser PageReferrerPolicy
parseJSON = String
-> (Text -> Parser PageReferrerPolicy)
-> Value
-> Parser PageReferrerPolicy
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"PageReferrerPolicy" ((Text -> Parser PageReferrerPolicy)
 -> Value -> Parser PageReferrerPolicy)
-> (Text -> Parser PageReferrerPolicy)
-> Value
-> Parser PageReferrerPolicy
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"noReferrer" -> PageReferrerPolicy -> Parser PageReferrerPolicy
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageReferrerPolicy
PageReferrerPolicyNoReferrer
    Text
"noReferrerWhenDowngrade" -> PageReferrerPolicy -> Parser PageReferrerPolicy
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageReferrerPolicy
PageReferrerPolicyNoReferrerWhenDowngrade
    Text
"origin" -> PageReferrerPolicy -> Parser PageReferrerPolicy
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageReferrerPolicy
PageReferrerPolicyOrigin
    Text
"originWhenCrossOrigin" -> PageReferrerPolicy -> Parser PageReferrerPolicy
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageReferrerPolicy
PageReferrerPolicyOriginWhenCrossOrigin
    Text
"sameOrigin" -> PageReferrerPolicy -> Parser PageReferrerPolicy
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageReferrerPolicy
PageReferrerPolicySameOrigin
    Text
"strictOrigin" -> PageReferrerPolicy -> Parser PageReferrerPolicy
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageReferrerPolicy
PageReferrerPolicyStrictOrigin
    Text
"strictOriginWhenCrossOrigin" -> PageReferrerPolicy -> Parser PageReferrerPolicy
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageReferrerPolicy
PageReferrerPolicyStrictOriginWhenCrossOrigin
    Text
"unsafeUrl" -> PageReferrerPolicy -> Parser PageReferrerPolicy
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageReferrerPolicy
PageReferrerPolicyUnsafeUrl
    Text
"_" -> String -> Parser PageReferrerPolicy
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse PageReferrerPolicy"
instance ToJSON PageReferrerPolicy where
  toJSON :: PageReferrerPolicy -> Value
toJSON PageReferrerPolicy
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case PageReferrerPolicy
v of
    PageReferrerPolicy
PageReferrerPolicyNoReferrer -> Text
"noReferrer"
    PageReferrerPolicy
PageReferrerPolicyNoReferrerWhenDowngrade -> Text
"noReferrerWhenDowngrade"
    PageReferrerPolicy
PageReferrerPolicyOrigin -> Text
"origin"
    PageReferrerPolicy
PageReferrerPolicyOriginWhenCrossOrigin -> Text
"originWhenCrossOrigin"
    PageReferrerPolicy
PageReferrerPolicySameOrigin -> Text
"sameOrigin"
    PageReferrerPolicy
PageReferrerPolicyStrictOrigin -> Text
"strictOrigin"
    PageReferrerPolicy
PageReferrerPolicyStrictOriginWhenCrossOrigin -> Text
"strictOriginWhenCrossOrigin"
    PageReferrerPolicy
PageReferrerPolicyUnsafeUrl -> Text
"unsafeUrl"

-- | Type 'Page.CompilationCacheParams'.
--   Per-script compilation cache parameters for `Page.produceCompilationCache`
data PageCompilationCacheParams = PageCompilationCacheParams
  {
    -- | The URL of the script to produce a compilation cache entry for.
    PageCompilationCacheParams -> Text
pageCompilationCacheParamsUrl :: T.Text,
    -- | A hint to the backend whether eager compilation is recommended.
    --   (the actual compilation mode used is upon backend discretion).
    PageCompilationCacheParams -> Maybe Bool
pageCompilationCacheParamsEager :: Maybe Bool
  }
  deriving (PageCompilationCacheParams -> PageCompilationCacheParams -> Bool
(PageCompilationCacheParams -> PageCompilationCacheParams -> Bool)
-> (PageCompilationCacheParams
    -> PageCompilationCacheParams -> Bool)
-> Eq PageCompilationCacheParams
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageCompilationCacheParams -> PageCompilationCacheParams -> Bool
$c/= :: PageCompilationCacheParams -> PageCompilationCacheParams -> Bool
== :: PageCompilationCacheParams -> PageCompilationCacheParams -> Bool
$c== :: PageCompilationCacheParams -> PageCompilationCacheParams -> Bool
Eq, Int -> PageCompilationCacheParams -> ShowS
[PageCompilationCacheParams] -> ShowS
PageCompilationCacheParams -> String
(Int -> PageCompilationCacheParams -> ShowS)
-> (PageCompilationCacheParams -> String)
-> ([PageCompilationCacheParams] -> ShowS)
-> Show PageCompilationCacheParams
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageCompilationCacheParams] -> ShowS
$cshowList :: [PageCompilationCacheParams] -> ShowS
show :: PageCompilationCacheParams -> String
$cshow :: PageCompilationCacheParams -> String
showsPrec :: Int -> PageCompilationCacheParams -> ShowS
$cshowsPrec :: Int -> PageCompilationCacheParams -> ShowS
Show)
instance FromJSON PageCompilationCacheParams where
  parseJSON :: Value -> Parser PageCompilationCacheParams
parseJSON = String
-> (Object -> Parser PageCompilationCacheParams)
-> Value
-> Parser PageCompilationCacheParams
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageCompilationCacheParams" ((Object -> Parser PageCompilationCacheParams)
 -> Value -> Parser PageCompilationCacheParams)
-> (Object -> Parser PageCompilationCacheParams)
-> Value
-> Parser PageCompilationCacheParams
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> Maybe Bool -> PageCompilationCacheParams
PageCompilationCacheParams
    (Text -> Maybe Bool -> PageCompilationCacheParams)
-> Parser Text -> Parser (Maybe Bool -> PageCompilationCacheParams)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"url"
    Parser (Maybe Bool -> PageCompilationCacheParams)
-> Parser (Maybe Bool) -> Parser PageCompilationCacheParams
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"eager"
instance ToJSON PageCompilationCacheParams where
  toJSON :: PageCompilationCacheParams -> Value
toJSON PageCompilationCacheParams
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"url" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PageCompilationCacheParams -> Text
pageCompilationCacheParamsUrl PageCompilationCacheParams
p),
    (Text
"eager" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PageCompilationCacheParams -> Maybe Bool
pageCompilationCacheParamsEager PageCompilationCacheParams
p)
    ]

-- | Type 'Page.NavigationType'.
--   The type of a frameNavigated event.
data PageNavigationType = PageNavigationTypeNavigation | PageNavigationTypeBackForwardCacheRestore
  deriving (Eq PageNavigationType
Eq PageNavigationType
-> (PageNavigationType -> PageNavigationType -> Ordering)
-> (PageNavigationType -> PageNavigationType -> Bool)
-> (PageNavigationType -> PageNavigationType -> Bool)
-> (PageNavigationType -> PageNavigationType -> Bool)
-> (PageNavigationType -> PageNavigationType -> Bool)
-> (PageNavigationType -> PageNavigationType -> PageNavigationType)
-> (PageNavigationType -> PageNavigationType -> PageNavigationType)
-> Ord PageNavigationType
PageNavigationType -> PageNavigationType -> Bool
PageNavigationType -> PageNavigationType -> Ordering
PageNavigationType -> PageNavigationType -> PageNavigationType
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: PageNavigationType -> PageNavigationType -> PageNavigationType
$cmin :: PageNavigationType -> PageNavigationType -> PageNavigationType
max :: PageNavigationType -> PageNavigationType -> PageNavigationType
$cmax :: PageNavigationType -> PageNavigationType -> PageNavigationType
>= :: PageNavigationType -> PageNavigationType -> Bool
$c>= :: PageNavigationType -> PageNavigationType -> Bool
> :: PageNavigationType -> PageNavigationType -> Bool
$c> :: PageNavigationType -> PageNavigationType -> Bool
<= :: PageNavigationType -> PageNavigationType -> Bool
$c<= :: PageNavigationType -> PageNavigationType -> Bool
< :: PageNavigationType -> PageNavigationType -> Bool
$c< :: PageNavigationType -> PageNavigationType -> Bool
compare :: PageNavigationType -> PageNavigationType -> Ordering
$ccompare :: PageNavigationType -> PageNavigationType -> Ordering
$cp1Ord :: Eq PageNavigationType
Ord, PageNavigationType -> PageNavigationType -> Bool
(PageNavigationType -> PageNavigationType -> Bool)
-> (PageNavigationType -> PageNavigationType -> Bool)
-> Eq PageNavigationType
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageNavigationType -> PageNavigationType -> Bool
$c/= :: PageNavigationType -> PageNavigationType -> Bool
== :: PageNavigationType -> PageNavigationType -> Bool
$c== :: PageNavigationType -> PageNavigationType -> Bool
Eq, Int -> PageNavigationType -> ShowS
[PageNavigationType] -> ShowS
PageNavigationType -> String
(Int -> PageNavigationType -> ShowS)
-> (PageNavigationType -> String)
-> ([PageNavigationType] -> ShowS)
-> Show PageNavigationType
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageNavigationType] -> ShowS
$cshowList :: [PageNavigationType] -> ShowS
show :: PageNavigationType -> String
$cshow :: PageNavigationType -> String
showsPrec :: Int -> PageNavigationType -> ShowS
$cshowsPrec :: Int -> PageNavigationType -> ShowS
Show, ReadPrec [PageNavigationType]
ReadPrec PageNavigationType
Int -> ReadS PageNavigationType
ReadS [PageNavigationType]
(Int -> ReadS PageNavigationType)
-> ReadS [PageNavigationType]
-> ReadPrec PageNavigationType
-> ReadPrec [PageNavigationType]
-> Read PageNavigationType
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PageNavigationType]
$creadListPrec :: ReadPrec [PageNavigationType]
readPrec :: ReadPrec PageNavigationType
$creadPrec :: ReadPrec PageNavigationType
readList :: ReadS [PageNavigationType]
$creadList :: ReadS [PageNavigationType]
readsPrec :: Int -> ReadS PageNavigationType
$creadsPrec :: Int -> ReadS PageNavigationType
Read)
instance FromJSON PageNavigationType where
  parseJSON :: Value -> Parser PageNavigationType
parseJSON = String
-> (Text -> Parser PageNavigationType)
-> Value
-> Parser PageNavigationType
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"PageNavigationType" ((Text -> Parser PageNavigationType)
 -> Value -> Parser PageNavigationType)
-> (Text -> Parser PageNavigationType)
-> Value
-> Parser PageNavigationType
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"Navigation" -> PageNavigationType -> Parser PageNavigationType
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageNavigationType
PageNavigationTypeNavigation
    Text
"BackForwardCacheRestore" -> PageNavigationType -> Parser PageNavigationType
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageNavigationType
PageNavigationTypeBackForwardCacheRestore
    Text
"_" -> String -> Parser PageNavigationType
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse PageNavigationType"
instance ToJSON PageNavigationType where
  toJSON :: PageNavigationType -> Value
toJSON PageNavigationType
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case PageNavigationType
v of
    PageNavigationType
PageNavigationTypeNavigation -> Text
"Navigation"
    PageNavigationType
PageNavigationTypeBackForwardCacheRestore -> Text
"BackForwardCacheRestore"

-- | Type 'Page.BackForwardCacheNotRestoredReason'.
--   List of not restored reasons for back-forward cache.
data PageBackForwardCacheNotRestoredReason = PageBackForwardCacheNotRestoredReasonNotPrimaryMainFrame | PageBackForwardCacheNotRestoredReasonBackForwardCacheDisabled | PageBackForwardCacheNotRestoredReasonRelatedActiveContentsExist | PageBackForwardCacheNotRestoredReasonHTTPStatusNotOK | PageBackForwardCacheNotRestoredReasonSchemeNotHTTPOrHTTPS | PageBackForwardCacheNotRestoredReasonLoading | PageBackForwardCacheNotRestoredReasonWasGrantedMediaAccess | PageBackForwardCacheNotRestoredReasonDisableForRenderFrameHostCalled | PageBackForwardCacheNotRestoredReasonDomainNotAllowed | PageBackForwardCacheNotRestoredReasonHTTPMethodNotGET | PageBackForwardCacheNotRestoredReasonSubframeIsNavigating | PageBackForwardCacheNotRestoredReasonTimeout | PageBackForwardCacheNotRestoredReasonCacheLimit | PageBackForwardCacheNotRestoredReasonJavaScriptExecution | PageBackForwardCacheNotRestoredReasonRendererProcessKilled | PageBackForwardCacheNotRestoredReasonRendererProcessCrashed | PageBackForwardCacheNotRestoredReasonSchedulerTrackedFeatureUsed | PageBackForwardCacheNotRestoredReasonConflictingBrowsingInstance | PageBackForwardCacheNotRestoredReasonCacheFlushed | PageBackForwardCacheNotRestoredReasonServiceWorkerVersionActivation | PageBackForwardCacheNotRestoredReasonSessionRestored | PageBackForwardCacheNotRestoredReasonServiceWorkerPostMessage | PageBackForwardCacheNotRestoredReasonEnteredBackForwardCacheBeforeServiceWorkerHostAdded | PageBackForwardCacheNotRestoredReasonRenderFrameHostReused_SameSite | PageBackForwardCacheNotRestoredReasonRenderFrameHostReused_CrossSite | PageBackForwardCacheNotRestoredReasonServiceWorkerClaim | PageBackForwardCacheNotRestoredReasonIgnoreEventAndEvict | PageBackForwardCacheNotRestoredReasonHaveInnerContents | PageBackForwardCacheNotRestoredReasonTimeoutPuttingInCache | PageBackForwardCacheNotRestoredReasonBackForwardCacheDisabledByLowMemory | PageBackForwardCacheNotRestoredReasonBackForwardCacheDisabledByCommandLine | PageBackForwardCacheNotRestoredReasonNetworkRequestDatapipeDrainedAsBytesConsumer | PageBackForwardCacheNotRestoredReasonNetworkRequestRedirected | PageBackForwardCacheNotRestoredReasonNetworkRequestTimeout | PageBackForwardCacheNotRestoredReasonNetworkExceedsBufferLimit | PageBackForwardCacheNotRestoredReasonNavigationCancelledWhileRestoring | PageBackForwardCacheNotRestoredReasonNotMostRecentNavigationEntry | PageBackForwardCacheNotRestoredReasonBackForwardCacheDisabledForPrerender | PageBackForwardCacheNotRestoredReasonUserAgentOverrideDiffers | PageBackForwardCacheNotRestoredReasonForegroundCacheLimit | PageBackForwardCacheNotRestoredReasonBrowsingInstanceNotSwapped | PageBackForwardCacheNotRestoredReasonBackForwardCacheDisabledForDelegate | PageBackForwardCacheNotRestoredReasonUnloadHandlerExistsInMainFrame | PageBackForwardCacheNotRestoredReasonUnloadHandlerExistsInSubFrame | PageBackForwardCacheNotRestoredReasonServiceWorkerUnregistration | PageBackForwardCacheNotRestoredReasonCacheControlNoStore | PageBackForwardCacheNotRestoredReasonCacheControlNoStoreCookieModified | PageBackForwardCacheNotRestoredReasonCacheControlNoStoreHTTPOnlyCookieModified | PageBackForwardCacheNotRestoredReasonNoResponseHead | PageBackForwardCacheNotRestoredReasonUnknown | PageBackForwardCacheNotRestoredReasonActivationNavigationsDisallowedForBug1234857 | PageBackForwardCacheNotRestoredReasonErrorDocument | PageBackForwardCacheNotRestoredReasonFencedFramesEmbedder | PageBackForwardCacheNotRestoredReasonWebSocket | PageBackForwardCacheNotRestoredReasonWebTransport | PageBackForwardCacheNotRestoredReasonWebRTC | PageBackForwardCacheNotRestoredReasonMainResourceHasCacheControlNoStore | PageBackForwardCacheNotRestoredReasonMainResourceHasCacheControlNoCache | PageBackForwardCacheNotRestoredReasonSubresourceHasCacheControlNoStore | PageBackForwardCacheNotRestoredReasonSubresourceHasCacheControlNoCache | PageBackForwardCacheNotRestoredReasonContainsPlugins | PageBackForwardCacheNotRestoredReasonDocumentLoaded | PageBackForwardCacheNotRestoredReasonDedicatedWorkerOrWorklet | PageBackForwardCacheNotRestoredReasonOutstandingNetworkRequestOthers | PageBackForwardCacheNotRestoredReasonOutstandingIndexedDBTransaction | PageBackForwardCacheNotRestoredReasonRequestedNotificationsPermission | PageBackForwardCacheNotRestoredReasonRequestedMIDIPermission | PageBackForwardCacheNotRestoredReasonRequestedAudioCapturePermission | PageBackForwardCacheNotRestoredReasonRequestedVideoCapturePermission | PageBackForwardCacheNotRestoredReasonRequestedBackForwardCacheBlockedSensors | PageBackForwardCacheNotRestoredReasonRequestedBackgroundWorkPermission | PageBackForwardCacheNotRestoredReasonBroadcastChannel | PageBackForwardCacheNotRestoredReasonIndexedDBConnection | PageBackForwardCacheNotRestoredReasonWebXR | PageBackForwardCacheNotRestoredReasonSharedWorker | PageBackForwardCacheNotRestoredReasonWebLocks | PageBackForwardCacheNotRestoredReasonWebHID | PageBackForwardCacheNotRestoredReasonWebShare | PageBackForwardCacheNotRestoredReasonRequestedStorageAccessGrant | PageBackForwardCacheNotRestoredReasonWebNfc | PageBackForwardCacheNotRestoredReasonOutstandingNetworkRequestFetch | PageBackForwardCacheNotRestoredReasonOutstandingNetworkRequestXHR | PageBackForwardCacheNotRestoredReasonAppBanner | PageBackForwardCacheNotRestoredReasonPrinting | PageBackForwardCacheNotRestoredReasonWebDatabase | PageBackForwardCacheNotRestoredReasonPictureInPicture | PageBackForwardCacheNotRestoredReasonPortal | PageBackForwardCacheNotRestoredReasonSpeechRecognizer | PageBackForwardCacheNotRestoredReasonIdleManager | PageBackForwardCacheNotRestoredReasonPaymentManager | PageBackForwardCacheNotRestoredReasonSpeechSynthesis | PageBackForwardCacheNotRestoredReasonKeyboardLock | PageBackForwardCacheNotRestoredReasonWebOTPService | PageBackForwardCacheNotRestoredReasonOutstandingNetworkRequestDirectSocket | PageBackForwardCacheNotRestoredReasonInjectedJavascript | PageBackForwardCacheNotRestoredReasonInjectedStyleSheet | PageBackForwardCacheNotRestoredReasonDummy | PageBackForwardCacheNotRestoredReasonContentSecurityHandler | PageBackForwardCacheNotRestoredReasonContentWebAuthenticationAPI | PageBackForwardCacheNotRestoredReasonContentFileChooser | PageBackForwardCacheNotRestoredReasonContentSerial | PageBackForwardCacheNotRestoredReasonContentFileSystemAccess | PageBackForwardCacheNotRestoredReasonContentMediaDevicesDispatcherHost | PageBackForwardCacheNotRestoredReasonContentWebBluetooth | PageBackForwardCacheNotRestoredReasonContentWebUSB | PageBackForwardCacheNotRestoredReasonContentMediaSessionService | PageBackForwardCacheNotRestoredReasonContentScreenReader | PageBackForwardCacheNotRestoredReasonEmbedderPopupBlockerTabHelper | PageBackForwardCacheNotRestoredReasonEmbedderSafeBrowsingTriggeredPopupBlocker | PageBackForwardCacheNotRestoredReasonEmbedderSafeBrowsingThreatDetails | PageBackForwardCacheNotRestoredReasonEmbedderAppBannerManager | PageBackForwardCacheNotRestoredReasonEmbedderDomDistillerViewerSource | PageBackForwardCacheNotRestoredReasonEmbedderDomDistillerSelfDeletingRequestDelegate | PageBackForwardCacheNotRestoredReasonEmbedderOomInterventionTabHelper | PageBackForwardCacheNotRestoredReasonEmbedderOfflinePage | PageBackForwardCacheNotRestoredReasonEmbedderChromePasswordManagerClientBindCredentialManager | PageBackForwardCacheNotRestoredReasonEmbedderPermissionRequestManager | PageBackForwardCacheNotRestoredReasonEmbedderModalDialog | PageBackForwardCacheNotRestoredReasonEmbedderExtensions | PageBackForwardCacheNotRestoredReasonEmbedderExtensionMessaging | PageBackForwardCacheNotRestoredReasonEmbedderExtensionMessagingForOpenPort | PageBackForwardCacheNotRestoredReasonEmbedderExtensionSentMessageToCachedFrame
  deriving (Eq PageBackForwardCacheNotRestoredReason
Eq PageBackForwardCacheNotRestoredReason
-> (PageBackForwardCacheNotRestoredReason
    -> PageBackForwardCacheNotRestoredReason -> Ordering)
-> (PageBackForwardCacheNotRestoredReason
    -> PageBackForwardCacheNotRestoredReason -> Bool)
-> (PageBackForwardCacheNotRestoredReason
    -> PageBackForwardCacheNotRestoredReason -> Bool)
-> (PageBackForwardCacheNotRestoredReason
    -> PageBackForwardCacheNotRestoredReason -> Bool)
-> (PageBackForwardCacheNotRestoredReason
    -> PageBackForwardCacheNotRestoredReason -> Bool)
-> (PageBackForwardCacheNotRestoredReason
    -> PageBackForwardCacheNotRestoredReason
    -> PageBackForwardCacheNotRestoredReason)
-> (PageBackForwardCacheNotRestoredReason
    -> PageBackForwardCacheNotRestoredReason
    -> PageBackForwardCacheNotRestoredReason)
-> Ord PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReason
-> PageBackForwardCacheNotRestoredReason -> Bool
PageBackForwardCacheNotRestoredReason
-> PageBackForwardCacheNotRestoredReason -> Ordering
PageBackForwardCacheNotRestoredReason
-> PageBackForwardCacheNotRestoredReason
-> PageBackForwardCacheNotRestoredReason
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: PageBackForwardCacheNotRestoredReason
-> PageBackForwardCacheNotRestoredReason
-> PageBackForwardCacheNotRestoredReason
$cmin :: PageBackForwardCacheNotRestoredReason
-> PageBackForwardCacheNotRestoredReason
-> PageBackForwardCacheNotRestoredReason
max :: PageBackForwardCacheNotRestoredReason
-> PageBackForwardCacheNotRestoredReason
-> PageBackForwardCacheNotRestoredReason
$cmax :: PageBackForwardCacheNotRestoredReason
-> PageBackForwardCacheNotRestoredReason
-> PageBackForwardCacheNotRestoredReason
>= :: PageBackForwardCacheNotRestoredReason
-> PageBackForwardCacheNotRestoredReason -> Bool
$c>= :: PageBackForwardCacheNotRestoredReason
-> PageBackForwardCacheNotRestoredReason -> Bool
> :: PageBackForwardCacheNotRestoredReason
-> PageBackForwardCacheNotRestoredReason -> Bool
$c> :: PageBackForwardCacheNotRestoredReason
-> PageBackForwardCacheNotRestoredReason -> Bool
<= :: PageBackForwardCacheNotRestoredReason
-> PageBackForwardCacheNotRestoredReason -> Bool
$c<= :: PageBackForwardCacheNotRestoredReason
-> PageBackForwardCacheNotRestoredReason -> Bool
< :: PageBackForwardCacheNotRestoredReason
-> PageBackForwardCacheNotRestoredReason -> Bool
$c< :: PageBackForwardCacheNotRestoredReason
-> PageBackForwardCacheNotRestoredReason -> Bool
compare :: PageBackForwardCacheNotRestoredReason
-> PageBackForwardCacheNotRestoredReason -> Ordering
$ccompare :: PageBackForwardCacheNotRestoredReason
-> PageBackForwardCacheNotRestoredReason -> Ordering
$cp1Ord :: Eq PageBackForwardCacheNotRestoredReason
Ord, PageBackForwardCacheNotRestoredReason
-> PageBackForwardCacheNotRestoredReason -> Bool
(PageBackForwardCacheNotRestoredReason
 -> PageBackForwardCacheNotRestoredReason -> Bool)
-> (PageBackForwardCacheNotRestoredReason
    -> PageBackForwardCacheNotRestoredReason -> Bool)
-> Eq PageBackForwardCacheNotRestoredReason
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageBackForwardCacheNotRestoredReason
-> PageBackForwardCacheNotRestoredReason -> Bool
$c/= :: PageBackForwardCacheNotRestoredReason
-> PageBackForwardCacheNotRestoredReason -> Bool
== :: PageBackForwardCacheNotRestoredReason
-> PageBackForwardCacheNotRestoredReason -> Bool
$c== :: PageBackForwardCacheNotRestoredReason
-> PageBackForwardCacheNotRestoredReason -> Bool
Eq, Int -> PageBackForwardCacheNotRestoredReason -> ShowS
[PageBackForwardCacheNotRestoredReason] -> ShowS
PageBackForwardCacheNotRestoredReason -> String
(Int -> PageBackForwardCacheNotRestoredReason -> ShowS)
-> (PageBackForwardCacheNotRestoredReason -> String)
-> ([PageBackForwardCacheNotRestoredReason] -> ShowS)
-> Show PageBackForwardCacheNotRestoredReason
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageBackForwardCacheNotRestoredReason] -> ShowS
$cshowList :: [PageBackForwardCacheNotRestoredReason] -> ShowS
show :: PageBackForwardCacheNotRestoredReason -> String
$cshow :: PageBackForwardCacheNotRestoredReason -> String
showsPrec :: Int -> PageBackForwardCacheNotRestoredReason -> ShowS
$cshowsPrec :: Int -> PageBackForwardCacheNotRestoredReason -> ShowS
Show, ReadPrec [PageBackForwardCacheNotRestoredReason]
ReadPrec PageBackForwardCacheNotRestoredReason
Int -> ReadS PageBackForwardCacheNotRestoredReason
ReadS [PageBackForwardCacheNotRestoredReason]
(Int -> ReadS PageBackForwardCacheNotRestoredReason)
-> ReadS [PageBackForwardCacheNotRestoredReason]
-> ReadPrec PageBackForwardCacheNotRestoredReason
-> ReadPrec [PageBackForwardCacheNotRestoredReason]
-> Read PageBackForwardCacheNotRestoredReason
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PageBackForwardCacheNotRestoredReason]
$creadListPrec :: ReadPrec [PageBackForwardCacheNotRestoredReason]
readPrec :: ReadPrec PageBackForwardCacheNotRestoredReason
$creadPrec :: ReadPrec PageBackForwardCacheNotRestoredReason
readList :: ReadS [PageBackForwardCacheNotRestoredReason]
$creadList :: ReadS [PageBackForwardCacheNotRestoredReason]
readsPrec :: Int -> ReadS PageBackForwardCacheNotRestoredReason
$creadsPrec :: Int -> ReadS PageBackForwardCacheNotRestoredReason
Read)
instance FromJSON PageBackForwardCacheNotRestoredReason where
  parseJSON :: Value -> Parser PageBackForwardCacheNotRestoredReason
parseJSON = String
-> (Text -> Parser PageBackForwardCacheNotRestoredReason)
-> Value
-> Parser PageBackForwardCacheNotRestoredReason
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"PageBackForwardCacheNotRestoredReason" ((Text -> Parser PageBackForwardCacheNotRestoredReason)
 -> Value -> Parser PageBackForwardCacheNotRestoredReason)
-> (Text -> Parser PageBackForwardCacheNotRestoredReason)
-> Value
-> Parser PageBackForwardCacheNotRestoredReason
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"NotPrimaryMainFrame" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonNotPrimaryMainFrame
    Text
"BackForwardCacheDisabled" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonBackForwardCacheDisabled
    Text
"RelatedActiveContentsExist" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonRelatedActiveContentsExist
    Text
"HTTPStatusNotOK" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonHTTPStatusNotOK
    Text
"SchemeNotHTTPOrHTTPS" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonSchemeNotHTTPOrHTTPS
    Text
"Loading" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonLoading
    Text
"WasGrantedMediaAccess" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonWasGrantedMediaAccess
    Text
"DisableForRenderFrameHostCalled" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonDisableForRenderFrameHostCalled
    Text
"DomainNotAllowed" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonDomainNotAllowed
    Text
"HTTPMethodNotGET" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonHTTPMethodNotGET
    Text
"SubframeIsNavigating" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonSubframeIsNavigating
    Text
"Timeout" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonTimeout
    Text
"CacheLimit" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonCacheLimit
    Text
"JavaScriptExecution" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonJavaScriptExecution
    Text
"RendererProcessKilled" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonRendererProcessKilled
    Text
"RendererProcessCrashed" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonRendererProcessCrashed
    Text
"SchedulerTrackedFeatureUsed" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonSchedulerTrackedFeatureUsed
    Text
"ConflictingBrowsingInstance" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonConflictingBrowsingInstance
    Text
"CacheFlushed" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonCacheFlushed
    Text
"ServiceWorkerVersionActivation" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonServiceWorkerVersionActivation
    Text
"SessionRestored" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonSessionRestored
    Text
"ServiceWorkerPostMessage" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonServiceWorkerPostMessage
    Text
"EnteredBackForwardCacheBeforeServiceWorkerHostAdded" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonEnteredBackForwardCacheBeforeServiceWorkerHostAdded
    Text
"RenderFrameHostReused_SameSite" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonRenderFrameHostReused_SameSite
    Text
"RenderFrameHostReused_CrossSite" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonRenderFrameHostReused_CrossSite
    Text
"ServiceWorkerClaim" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonServiceWorkerClaim
    Text
"IgnoreEventAndEvict" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonIgnoreEventAndEvict
    Text
"HaveInnerContents" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonHaveInnerContents
    Text
"TimeoutPuttingInCache" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonTimeoutPuttingInCache
    Text
"BackForwardCacheDisabledByLowMemory" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonBackForwardCacheDisabledByLowMemory
    Text
"BackForwardCacheDisabledByCommandLine" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonBackForwardCacheDisabledByCommandLine
    Text
"NetworkRequestDatapipeDrainedAsBytesConsumer" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonNetworkRequestDatapipeDrainedAsBytesConsumer
    Text
"NetworkRequestRedirected" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonNetworkRequestRedirected
    Text
"NetworkRequestTimeout" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonNetworkRequestTimeout
    Text
"NetworkExceedsBufferLimit" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonNetworkExceedsBufferLimit
    Text
"NavigationCancelledWhileRestoring" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonNavigationCancelledWhileRestoring
    Text
"NotMostRecentNavigationEntry" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonNotMostRecentNavigationEntry
    Text
"BackForwardCacheDisabledForPrerender" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonBackForwardCacheDisabledForPrerender
    Text
"UserAgentOverrideDiffers" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonUserAgentOverrideDiffers
    Text
"ForegroundCacheLimit" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonForegroundCacheLimit
    Text
"BrowsingInstanceNotSwapped" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonBrowsingInstanceNotSwapped
    Text
"BackForwardCacheDisabledForDelegate" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonBackForwardCacheDisabledForDelegate
    Text
"UnloadHandlerExistsInMainFrame" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonUnloadHandlerExistsInMainFrame
    Text
"UnloadHandlerExistsInSubFrame" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonUnloadHandlerExistsInSubFrame
    Text
"ServiceWorkerUnregistration" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonServiceWorkerUnregistration
    Text
"CacheControlNoStore" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonCacheControlNoStore
    Text
"CacheControlNoStoreCookieModified" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonCacheControlNoStoreCookieModified
    Text
"CacheControlNoStoreHTTPOnlyCookieModified" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonCacheControlNoStoreHTTPOnlyCookieModified
    Text
"NoResponseHead" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonNoResponseHead
    Text
"Unknown" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonUnknown
    Text
"ActivationNavigationsDisallowedForBug1234857" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonActivationNavigationsDisallowedForBug1234857
    Text
"ErrorDocument" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonErrorDocument
    Text
"FencedFramesEmbedder" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonFencedFramesEmbedder
    Text
"WebSocket" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonWebSocket
    Text
"WebTransport" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonWebTransport
    Text
"WebRTC" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonWebRTC
    Text
"MainResourceHasCacheControlNoStore" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonMainResourceHasCacheControlNoStore
    Text
"MainResourceHasCacheControlNoCache" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonMainResourceHasCacheControlNoCache
    Text
"SubresourceHasCacheControlNoStore" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonSubresourceHasCacheControlNoStore
    Text
"SubresourceHasCacheControlNoCache" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonSubresourceHasCacheControlNoCache
    Text
"ContainsPlugins" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonContainsPlugins
    Text
"DocumentLoaded" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonDocumentLoaded
    Text
"DedicatedWorkerOrWorklet" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonDedicatedWorkerOrWorklet
    Text
"OutstandingNetworkRequestOthers" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonOutstandingNetworkRequestOthers
    Text
"OutstandingIndexedDBTransaction" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonOutstandingIndexedDBTransaction
    Text
"RequestedNotificationsPermission" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonRequestedNotificationsPermission
    Text
"RequestedMIDIPermission" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonRequestedMIDIPermission
    Text
"RequestedAudioCapturePermission" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonRequestedAudioCapturePermission
    Text
"RequestedVideoCapturePermission" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonRequestedVideoCapturePermission
    Text
"RequestedBackForwardCacheBlockedSensors" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonRequestedBackForwardCacheBlockedSensors
    Text
"RequestedBackgroundWorkPermission" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonRequestedBackgroundWorkPermission
    Text
"BroadcastChannel" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonBroadcastChannel
    Text
"IndexedDBConnection" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonIndexedDBConnection
    Text
"WebXR" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonWebXR
    Text
"SharedWorker" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonSharedWorker
    Text
"WebLocks" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonWebLocks
    Text
"WebHID" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonWebHID
    Text
"WebShare" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonWebShare
    Text
"RequestedStorageAccessGrant" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonRequestedStorageAccessGrant
    Text
"WebNfc" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonWebNfc
    Text
"OutstandingNetworkRequestFetch" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonOutstandingNetworkRequestFetch
    Text
"OutstandingNetworkRequestXHR" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonOutstandingNetworkRequestXHR
    Text
"AppBanner" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonAppBanner
    Text
"Printing" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonPrinting
    Text
"WebDatabase" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonWebDatabase
    Text
"PictureInPicture" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonPictureInPicture
    Text
"Portal" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonPortal
    Text
"SpeechRecognizer" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonSpeechRecognizer
    Text
"IdleManager" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonIdleManager
    Text
"PaymentManager" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonPaymentManager
    Text
"SpeechSynthesis" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonSpeechSynthesis
    Text
"KeyboardLock" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonKeyboardLock
    Text
"WebOTPService" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonWebOTPService
    Text
"OutstandingNetworkRequestDirectSocket" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonOutstandingNetworkRequestDirectSocket
    Text
"InjectedJavascript" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonInjectedJavascript
    Text
"InjectedStyleSheet" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonInjectedStyleSheet
    Text
"Dummy" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonDummy
    Text
"ContentSecurityHandler" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonContentSecurityHandler
    Text
"ContentWebAuthenticationAPI" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonContentWebAuthenticationAPI
    Text
"ContentFileChooser" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonContentFileChooser
    Text
"ContentSerial" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonContentSerial
    Text
"ContentFileSystemAccess" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonContentFileSystemAccess
    Text
"ContentMediaDevicesDispatcherHost" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonContentMediaDevicesDispatcherHost
    Text
"ContentWebBluetooth" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonContentWebBluetooth
    Text
"ContentWebUSB" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonContentWebUSB
    Text
"ContentMediaSessionService" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonContentMediaSessionService
    Text
"ContentScreenReader" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonContentScreenReader
    Text
"EmbedderPopupBlockerTabHelper" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonEmbedderPopupBlockerTabHelper
    Text
"EmbedderSafeBrowsingTriggeredPopupBlocker" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonEmbedderSafeBrowsingTriggeredPopupBlocker
    Text
"EmbedderSafeBrowsingThreatDetails" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonEmbedderSafeBrowsingThreatDetails
    Text
"EmbedderAppBannerManager" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonEmbedderAppBannerManager
    Text
"EmbedderDomDistillerViewerSource" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonEmbedderDomDistillerViewerSource
    Text
"EmbedderDomDistillerSelfDeletingRequestDelegate" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonEmbedderDomDistillerSelfDeletingRequestDelegate
    Text
"EmbedderOomInterventionTabHelper" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonEmbedderOomInterventionTabHelper
    Text
"EmbedderOfflinePage" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonEmbedderOfflinePage
    Text
"EmbedderChromePasswordManagerClientBindCredentialManager" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonEmbedderChromePasswordManagerClientBindCredentialManager
    Text
"EmbedderPermissionRequestManager" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonEmbedderPermissionRequestManager
    Text
"EmbedderModalDialog" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonEmbedderModalDialog
    Text
"EmbedderExtensions" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonEmbedderExtensions
    Text
"EmbedderExtensionMessaging" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonEmbedderExtensionMessaging
    Text
"EmbedderExtensionMessagingForOpenPort" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonEmbedderExtensionMessagingForOpenPort
    Text
"EmbedderExtensionSentMessageToCachedFrame" -> PageBackForwardCacheNotRestoredReason
-> Parser PageBackForwardCacheNotRestoredReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonEmbedderExtensionSentMessageToCachedFrame
    Text
"_" -> String -> Parser PageBackForwardCacheNotRestoredReason
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse PageBackForwardCacheNotRestoredReason"
instance ToJSON PageBackForwardCacheNotRestoredReason where
  toJSON :: PageBackForwardCacheNotRestoredReason -> Value
toJSON PageBackForwardCacheNotRestoredReason
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case PageBackForwardCacheNotRestoredReason
v of
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonNotPrimaryMainFrame -> Text
"NotPrimaryMainFrame"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonBackForwardCacheDisabled -> Text
"BackForwardCacheDisabled"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonRelatedActiveContentsExist -> Text
"RelatedActiveContentsExist"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonHTTPStatusNotOK -> Text
"HTTPStatusNotOK"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonSchemeNotHTTPOrHTTPS -> Text
"SchemeNotHTTPOrHTTPS"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonLoading -> Text
"Loading"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonWasGrantedMediaAccess -> Text
"WasGrantedMediaAccess"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonDisableForRenderFrameHostCalled -> Text
"DisableForRenderFrameHostCalled"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonDomainNotAllowed -> Text
"DomainNotAllowed"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonHTTPMethodNotGET -> Text
"HTTPMethodNotGET"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonSubframeIsNavigating -> Text
"SubframeIsNavigating"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonTimeout -> Text
"Timeout"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonCacheLimit -> Text
"CacheLimit"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonJavaScriptExecution -> Text
"JavaScriptExecution"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonRendererProcessKilled -> Text
"RendererProcessKilled"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonRendererProcessCrashed -> Text
"RendererProcessCrashed"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonSchedulerTrackedFeatureUsed -> Text
"SchedulerTrackedFeatureUsed"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonConflictingBrowsingInstance -> Text
"ConflictingBrowsingInstance"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonCacheFlushed -> Text
"CacheFlushed"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonServiceWorkerVersionActivation -> Text
"ServiceWorkerVersionActivation"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonSessionRestored -> Text
"SessionRestored"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonServiceWorkerPostMessage -> Text
"ServiceWorkerPostMessage"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonEnteredBackForwardCacheBeforeServiceWorkerHostAdded -> Text
"EnteredBackForwardCacheBeforeServiceWorkerHostAdded"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonRenderFrameHostReused_SameSite -> Text
"RenderFrameHostReused_SameSite"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonRenderFrameHostReused_CrossSite -> Text
"RenderFrameHostReused_CrossSite"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonServiceWorkerClaim -> Text
"ServiceWorkerClaim"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonIgnoreEventAndEvict -> Text
"IgnoreEventAndEvict"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonHaveInnerContents -> Text
"HaveInnerContents"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonTimeoutPuttingInCache -> Text
"TimeoutPuttingInCache"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonBackForwardCacheDisabledByLowMemory -> Text
"BackForwardCacheDisabledByLowMemory"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonBackForwardCacheDisabledByCommandLine -> Text
"BackForwardCacheDisabledByCommandLine"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonNetworkRequestDatapipeDrainedAsBytesConsumer -> Text
"NetworkRequestDatapipeDrainedAsBytesConsumer"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonNetworkRequestRedirected -> Text
"NetworkRequestRedirected"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonNetworkRequestTimeout -> Text
"NetworkRequestTimeout"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonNetworkExceedsBufferLimit -> Text
"NetworkExceedsBufferLimit"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonNavigationCancelledWhileRestoring -> Text
"NavigationCancelledWhileRestoring"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonNotMostRecentNavigationEntry -> Text
"NotMostRecentNavigationEntry"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonBackForwardCacheDisabledForPrerender -> Text
"BackForwardCacheDisabledForPrerender"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonUserAgentOverrideDiffers -> Text
"UserAgentOverrideDiffers"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonForegroundCacheLimit -> Text
"ForegroundCacheLimit"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonBrowsingInstanceNotSwapped -> Text
"BrowsingInstanceNotSwapped"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonBackForwardCacheDisabledForDelegate -> Text
"BackForwardCacheDisabledForDelegate"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonUnloadHandlerExistsInMainFrame -> Text
"UnloadHandlerExistsInMainFrame"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonUnloadHandlerExistsInSubFrame -> Text
"UnloadHandlerExistsInSubFrame"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonServiceWorkerUnregistration -> Text
"ServiceWorkerUnregistration"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonCacheControlNoStore -> Text
"CacheControlNoStore"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonCacheControlNoStoreCookieModified -> Text
"CacheControlNoStoreCookieModified"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonCacheControlNoStoreHTTPOnlyCookieModified -> Text
"CacheControlNoStoreHTTPOnlyCookieModified"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonNoResponseHead -> Text
"NoResponseHead"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonUnknown -> Text
"Unknown"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonActivationNavigationsDisallowedForBug1234857 -> Text
"ActivationNavigationsDisallowedForBug1234857"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonErrorDocument -> Text
"ErrorDocument"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonFencedFramesEmbedder -> Text
"FencedFramesEmbedder"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonWebSocket -> Text
"WebSocket"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonWebTransport -> Text
"WebTransport"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonWebRTC -> Text
"WebRTC"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonMainResourceHasCacheControlNoStore -> Text
"MainResourceHasCacheControlNoStore"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonMainResourceHasCacheControlNoCache -> Text
"MainResourceHasCacheControlNoCache"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonSubresourceHasCacheControlNoStore -> Text
"SubresourceHasCacheControlNoStore"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonSubresourceHasCacheControlNoCache -> Text
"SubresourceHasCacheControlNoCache"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonContainsPlugins -> Text
"ContainsPlugins"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonDocumentLoaded -> Text
"DocumentLoaded"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonDedicatedWorkerOrWorklet -> Text
"DedicatedWorkerOrWorklet"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonOutstandingNetworkRequestOthers -> Text
"OutstandingNetworkRequestOthers"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonOutstandingIndexedDBTransaction -> Text
"OutstandingIndexedDBTransaction"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonRequestedNotificationsPermission -> Text
"RequestedNotificationsPermission"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonRequestedMIDIPermission -> Text
"RequestedMIDIPermission"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonRequestedAudioCapturePermission -> Text
"RequestedAudioCapturePermission"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonRequestedVideoCapturePermission -> Text
"RequestedVideoCapturePermission"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonRequestedBackForwardCacheBlockedSensors -> Text
"RequestedBackForwardCacheBlockedSensors"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonRequestedBackgroundWorkPermission -> Text
"RequestedBackgroundWorkPermission"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonBroadcastChannel -> Text
"BroadcastChannel"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonIndexedDBConnection -> Text
"IndexedDBConnection"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonWebXR -> Text
"WebXR"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonSharedWorker -> Text
"SharedWorker"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonWebLocks -> Text
"WebLocks"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonWebHID -> Text
"WebHID"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonWebShare -> Text
"WebShare"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonRequestedStorageAccessGrant -> Text
"RequestedStorageAccessGrant"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonWebNfc -> Text
"WebNfc"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonOutstandingNetworkRequestFetch -> Text
"OutstandingNetworkRequestFetch"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonOutstandingNetworkRequestXHR -> Text
"OutstandingNetworkRequestXHR"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonAppBanner -> Text
"AppBanner"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonPrinting -> Text
"Printing"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonWebDatabase -> Text
"WebDatabase"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonPictureInPicture -> Text
"PictureInPicture"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonPortal -> Text
"Portal"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonSpeechRecognizer -> Text
"SpeechRecognizer"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonIdleManager -> Text
"IdleManager"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonPaymentManager -> Text
"PaymentManager"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonSpeechSynthesis -> Text
"SpeechSynthesis"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonKeyboardLock -> Text
"KeyboardLock"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonWebOTPService -> Text
"WebOTPService"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonOutstandingNetworkRequestDirectSocket -> Text
"OutstandingNetworkRequestDirectSocket"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonInjectedJavascript -> Text
"InjectedJavascript"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonInjectedStyleSheet -> Text
"InjectedStyleSheet"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonDummy -> Text
"Dummy"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonContentSecurityHandler -> Text
"ContentSecurityHandler"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonContentWebAuthenticationAPI -> Text
"ContentWebAuthenticationAPI"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonContentFileChooser -> Text
"ContentFileChooser"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonContentSerial -> Text
"ContentSerial"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonContentFileSystemAccess -> Text
"ContentFileSystemAccess"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonContentMediaDevicesDispatcherHost -> Text
"ContentMediaDevicesDispatcherHost"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonContentWebBluetooth -> Text
"ContentWebBluetooth"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonContentWebUSB -> Text
"ContentWebUSB"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonContentMediaSessionService -> Text
"ContentMediaSessionService"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonContentScreenReader -> Text
"ContentScreenReader"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonEmbedderPopupBlockerTabHelper -> Text
"EmbedderPopupBlockerTabHelper"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonEmbedderSafeBrowsingTriggeredPopupBlocker -> Text
"EmbedderSafeBrowsingTriggeredPopupBlocker"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonEmbedderSafeBrowsingThreatDetails -> Text
"EmbedderSafeBrowsingThreatDetails"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonEmbedderAppBannerManager -> Text
"EmbedderAppBannerManager"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonEmbedderDomDistillerViewerSource -> Text
"EmbedderDomDistillerViewerSource"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonEmbedderDomDistillerSelfDeletingRequestDelegate -> Text
"EmbedderDomDistillerSelfDeletingRequestDelegate"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonEmbedderOomInterventionTabHelper -> Text
"EmbedderOomInterventionTabHelper"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonEmbedderOfflinePage -> Text
"EmbedderOfflinePage"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonEmbedderChromePasswordManagerClientBindCredentialManager -> Text
"EmbedderChromePasswordManagerClientBindCredentialManager"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonEmbedderPermissionRequestManager -> Text
"EmbedderPermissionRequestManager"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonEmbedderModalDialog -> Text
"EmbedderModalDialog"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonEmbedderExtensions -> Text
"EmbedderExtensions"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonEmbedderExtensionMessaging -> Text
"EmbedderExtensionMessaging"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonEmbedderExtensionMessagingForOpenPort -> Text
"EmbedderExtensionMessagingForOpenPort"
    PageBackForwardCacheNotRestoredReason
PageBackForwardCacheNotRestoredReasonEmbedderExtensionSentMessageToCachedFrame -> Text
"EmbedderExtensionSentMessageToCachedFrame"

-- | Type 'Page.BackForwardCacheNotRestoredReasonType'.
--   Types of not restored reasons for back-forward cache.
data PageBackForwardCacheNotRestoredReasonType = PageBackForwardCacheNotRestoredReasonTypeSupportPending | PageBackForwardCacheNotRestoredReasonTypePageSupportNeeded | PageBackForwardCacheNotRestoredReasonTypeCircumstantial
  deriving (Eq PageBackForwardCacheNotRestoredReasonType
Eq PageBackForwardCacheNotRestoredReasonType
-> (PageBackForwardCacheNotRestoredReasonType
    -> PageBackForwardCacheNotRestoredReasonType -> Ordering)
-> (PageBackForwardCacheNotRestoredReasonType
    -> PageBackForwardCacheNotRestoredReasonType -> Bool)
-> (PageBackForwardCacheNotRestoredReasonType
    -> PageBackForwardCacheNotRestoredReasonType -> Bool)
-> (PageBackForwardCacheNotRestoredReasonType
    -> PageBackForwardCacheNotRestoredReasonType -> Bool)
-> (PageBackForwardCacheNotRestoredReasonType
    -> PageBackForwardCacheNotRestoredReasonType -> Bool)
-> (PageBackForwardCacheNotRestoredReasonType
    -> PageBackForwardCacheNotRestoredReasonType
    -> PageBackForwardCacheNotRestoredReasonType)
-> (PageBackForwardCacheNotRestoredReasonType
    -> PageBackForwardCacheNotRestoredReasonType
    -> PageBackForwardCacheNotRestoredReasonType)
-> Ord PageBackForwardCacheNotRestoredReasonType
PageBackForwardCacheNotRestoredReasonType
-> PageBackForwardCacheNotRestoredReasonType -> Bool
PageBackForwardCacheNotRestoredReasonType
-> PageBackForwardCacheNotRestoredReasonType -> Ordering
PageBackForwardCacheNotRestoredReasonType
-> PageBackForwardCacheNotRestoredReasonType
-> PageBackForwardCacheNotRestoredReasonType
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: PageBackForwardCacheNotRestoredReasonType
-> PageBackForwardCacheNotRestoredReasonType
-> PageBackForwardCacheNotRestoredReasonType
$cmin :: PageBackForwardCacheNotRestoredReasonType
-> PageBackForwardCacheNotRestoredReasonType
-> PageBackForwardCacheNotRestoredReasonType
max :: PageBackForwardCacheNotRestoredReasonType
-> PageBackForwardCacheNotRestoredReasonType
-> PageBackForwardCacheNotRestoredReasonType
$cmax :: PageBackForwardCacheNotRestoredReasonType
-> PageBackForwardCacheNotRestoredReasonType
-> PageBackForwardCacheNotRestoredReasonType
>= :: PageBackForwardCacheNotRestoredReasonType
-> PageBackForwardCacheNotRestoredReasonType -> Bool
$c>= :: PageBackForwardCacheNotRestoredReasonType
-> PageBackForwardCacheNotRestoredReasonType -> Bool
> :: PageBackForwardCacheNotRestoredReasonType
-> PageBackForwardCacheNotRestoredReasonType -> Bool
$c> :: PageBackForwardCacheNotRestoredReasonType
-> PageBackForwardCacheNotRestoredReasonType -> Bool
<= :: PageBackForwardCacheNotRestoredReasonType
-> PageBackForwardCacheNotRestoredReasonType -> Bool
$c<= :: PageBackForwardCacheNotRestoredReasonType
-> PageBackForwardCacheNotRestoredReasonType -> Bool
< :: PageBackForwardCacheNotRestoredReasonType
-> PageBackForwardCacheNotRestoredReasonType -> Bool
$c< :: PageBackForwardCacheNotRestoredReasonType
-> PageBackForwardCacheNotRestoredReasonType -> Bool
compare :: PageBackForwardCacheNotRestoredReasonType
-> PageBackForwardCacheNotRestoredReasonType -> Ordering
$ccompare :: PageBackForwardCacheNotRestoredReasonType
-> PageBackForwardCacheNotRestoredReasonType -> Ordering
$cp1Ord :: Eq PageBackForwardCacheNotRestoredReasonType
Ord, PageBackForwardCacheNotRestoredReasonType
-> PageBackForwardCacheNotRestoredReasonType -> Bool
(PageBackForwardCacheNotRestoredReasonType
 -> PageBackForwardCacheNotRestoredReasonType -> Bool)
-> (PageBackForwardCacheNotRestoredReasonType
    -> PageBackForwardCacheNotRestoredReasonType -> Bool)
-> Eq PageBackForwardCacheNotRestoredReasonType
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageBackForwardCacheNotRestoredReasonType
-> PageBackForwardCacheNotRestoredReasonType -> Bool
$c/= :: PageBackForwardCacheNotRestoredReasonType
-> PageBackForwardCacheNotRestoredReasonType -> Bool
== :: PageBackForwardCacheNotRestoredReasonType
-> PageBackForwardCacheNotRestoredReasonType -> Bool
$c== :: PageBackForwardCacheNotRestoredReasonType
-> PageBackForwardCacheNotRestoredReasonType -> Bool
Eq, Int -> PageBackForwardCacheNotRestoredReasonType -> ShowS
[PageBackForwardCacheNotRestoredReasonType] -> ShowS
PageBackForwardCacheNotRestoredReasonType -> String
(Int -> PageBackForwardCacheNotRestoredReasonType -> ShowS)
-> (PageBackForwardCacheNotRestoredReasonType -> String)
-> ([PageBackForwardCacheNotRestoredReasonType] -> ShowS)
-> Show PageBackForwardCacheNotRestoredReasonType
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageBackForwardCacheNotRestoredReasonType] -> ShowS
$cshowList :: [PageBackForwardCacheNotRestoredReasonType] -> ShowS
show :: PageBackForwardCacheNotRestoredReasonType -> String
$cshow :: PageBackForwardCacheNotRestoredReasonType -> String
showsPrec :: Int -> PageBackForwardCacheNotRestoredReasonType -> ShowS
$cshowsPrec :: Int -> PageBackForwardCacheNotRestoredReasonType -> ShowS
Show, ReadPrec [PageBackForwardCacheNotRestoredReasonType]
ReadPrec PageBackForwardCacheNotRestoredReasonType
Int -> ReadS PageBackForwardCacheNotRestoredReasonType
ReadS [PageBackForwardCacheNotRestoredReasonType]
(Int -> ReadS PageBackForwardCacheNotRestoredReasonType)
-> ReadS [PageBackForwardCacheNotRestoredReasonType]
-> ReadPrec PageBackForwardCacheNotRestoredReasonType
-> ReadPrec [PageBackForwardCacheNotRestoredReasonType]
-> Read PageBackForwardCacheNotRestoredReasonType
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PageBackForwardCacheNotRestoredReasonType]
$creadListPrec :: ReadPrec [PageBackForwardCacheNotRestoredReasonType]
readPrec :: ReadPrec PageBackForwardCacheNotRestoredReasonType
$creadPrec :: ReadPrec PageBackForwardCacheNotRestoredReasonType
readList :: ReadS [PageBackForwardCacheNotRestoredReasonType]
$creadList :: ReadS [PageBackForwardCacheNotRestoredReasonType]
readsPrec :: Int -> ReadS PageBackForwardCacheNotRestoredReasonType
$creadsPrec :: Int -> ReadS PageBackForwardCacheNotRestoredReasonType
Read)
instance FromJSON PageBackForwardCacheNotRestoredReasonType where
  parseJSON :: Value -> Parser PageBackForwardCacheNotRestoredReasonType
parseJSON = String
-> (Text -> Parser PageBackForwardCacheNotRestoredReasonType)
-> Value
-> Parser PageBackForwardCacheNotRestoredReasonType
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"PageBackForwardCacheNotRestoredReasonType" ((Text -> Parser PageBackForwardCacheNotRestoredReasonType)
 -> Value -> Parser PageBackForwardCacheNotRestoredReasonType)
-> (Text -> Parser PageBackForwardCacheNotRestoredReasonType)
-> Value
-> Parser PageBackForwardCacheNotRestoredReasonType
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"SupportPending" -> PageBackForwardCacheNotRestoredReasonType
-> Parser PageBackForwardCacheNotRestoredReasonType
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReasonType
PageBackForwardCacheNotRestoredReasonTypeSupportPending
    Text
"PageSupportNeeded" -> PageBackForwardCacheNotRestoredReasonType
-> Parser PageBackForwardCacheNotRestoredReasonType
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReasonType
PageBackForwardCacheNotRestoredReasonTypePageSupportNeeded
    Text
"Circumstantial" -> PageBackForwardCacheNotRestoredReasonType
-> Parser PageBackForwardCacheNotRestoredReasonType
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageBackForwardCacheNotRestoredReasonType
PageBackForwardCacheNotRestoredReasonTypeCircumstantial
    Text
"_" -> String -> Parser PageBackForwardCacheNotRestoredReasonType
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse PageBackForwardCacheNotRestoredReasonType"
instance ToJSON PageBackForwardCacheNotRestoredReasonType where
  toJSON :: PageBackForwardCacheNotRestoredReasonType -> Value
toJSON PageBackForwardCacheNotRestoredReasonType
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case PageBackForwardCacheNotRestoredReasonType
v of
    PageBackForwardCacheNotRestoredReasonType
PageBackForwardCacheNotRestoredReasonTypeSupportPending -> Text
"SupportPending"
    PageBackForwardCacheNotRestoredReasonType
PageBackForwardCacheNotRestoredReasonTypePageSupportNeeded -> Text
"PageSupportNeeded"
    PageBackForwardCacheNotRestoredReasonType
PageBackForwardCacheNotRestoredReasonTypeCircumstantial -> Text
"Circumstantial"

-- | Type 'Page.BackForwardCacheNotRestoredExplanation'.
data PageBackForwardCacheNotRestoredExplanation = PageBackForwardCacheNotRestoredExplanation
  {
    -- | Type of the reason
    PageBackForwardCacheNotRestoredExplanation
-> PageBackForwardCacheNotRestoredReasonType
pageBackForwardCacheNotRestoredExplanationType :: PageBackForwardCacheNotRestoredReasonType,
    -- | Not restored reason
    PageBackForwardCacheNotRestoredExplanation
-> PageBackForwardCacheNotRestoredReason
pageBackForwardCacheNotRestoredExplanationReason :: PageBackForwardCacheNotRestoredReason,
    -- | Context associated with the reason. The meaning of this context is
    --   dependent on the reason:
    --   - EmbedderExtensionSentMessageToCachedFrame: the extension ID.
    PageBackForwardCacheNotRestoredExplanation -> Maybe Text
pageBackForwardCacheNotRestoredExplanationContext :: Maybe T.Text
  }
  deriving (PageBackForwardCacheNotRestoredExplanation
-> PageBackForwardCacheNotRestoredExplanation -> Bool
(PageBackForwardCacheNotRestoredExplanation
 -> PageBackForwardCacheNotRestoredExplanation -> Bool)
-> (PageBackForwardCacheNotRestoredExplanation
    -> PageBackForwardCacheNotRestoredExplanation -> Bool)
-> Eq PageBackForwardCacheNotRestoredExplanation
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageBackForwardCacheNotRestoredExplanation
-> PageBackForwardCacheNotRestoredExplanation -> Bool
$c/= :: PageBackForwardCacheNotRestoredExplanation
-> PageBackForwardCacheNotRestoredExplanation -> Bool
== :: PageBackForwardCacheNotRestoredExplanation
-> PageBackForwardCacheNotRestoredExplanation -> Bool
$c== :: PageBackForwardCacheNotRestoredExplanation
-> PageBackForwardCacheNotRestoredExplanation -> Bool
Eq, Int -> PageBackForwardCacheNotRestoredExplanation -> ShowS
[PageBackForwardCacheNotRestoredExplanation] -> ShowS
PageBackForwardCacheNotRestoredExplanation -> String
(Int -> PageBackForwardCacheNotRestoredExplanation -> ShowS)
-> (PageBackForwardCacheNotRestoredExplanation -> String)
-> ([PageBackForwardCacheNotRestoredExplanation] -> ShowS)
-> Show PageBackForwardCacheNotRestoredExplanation
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageBackForwardCacheNotRestoredExplanation] -> ShowS
$cshowList :: [PageBackForwardCacheNotRestoredExplanation] -> ShowS
show :: PageBackForwardCacheNotRestoredExplanation -> String
$cshow :: PageBackForwardCacheNotRestoredExplanation -> String
showsPrec :: Int -> PageBackForwardCacheNotRestoredExplanation -> ShowS
$cshowsPrec :: Int -> PageBackForwardCacheNotRestoredExplanation -> ShowS
Show)
instance FromJSON PageBackForwardCacheNotRestoredExplanation where
  parseJSON :: Value -> Parser PageBackForwardCacheNotRestoredExplanation
parseJSON = String
-> (Object -> Parser PageBackForwardCacheNotRestoredExplanation)
-> Value
-> Parser PageBackForwardCacheNotRestoredExplanation
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageBackForwardCacheNotRestoredExplanation" ((Object -> Parser PageBackForwardCacheNotRestoredExplanation)
 -> Value -> Parser PageBackForwardCacheNotRestoredExplanation)
-> (Object -> Parser PageBackForwardCacheNotRestoredExplanation)
-> Value
-> Parser PageBackForwardCacheNotRestoredExplanation
forall a b. (a -> b) -> a -> b
$ \Object
o -> PageBackForwardCacheNotRestoredReasonType
-> PageBackForwardCacheNotRestoredReason
-> Maybe Text
-> PageBackForwardCacheNotRestoredExplanation
PageBackForwardCacheNotRestoredExplanation
    (PageBackForwardCacheNotRestoredReasonType
 -> PageBackForwardCacheNotRestoredReason
 -> Maybe Text
 -> PageBackForwardCacheNotRestoredExplanation)
-> Parser PageBackForwardCacheNotRestoredReasonType
-> Parser
     (PageBackForwardCacheNotRestoredReason
      -> Maybe Text -> PageBackForwardCacheNotRestoredExplanation)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser PageBackForwardCacheNotRestoredReasonType
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"type"
    Parser
  (PageBackForwardCacheNotRestoredReason
   -> Maybe Text -> PageBackForwardCacheNotRestoredExplanation)
-> Parser PageBackForwardCacheNotRestoredReason
-> Parser
     (Maybe Text -> PageBackForwardCacheNotRestoredExplanation)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser PageBackForwardCacheNotRestoredReason
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"reason"
    Parser (Maybe Text -> PageBackForwardCacheNotRestoredExplanation)
-> Parser (Maybe Text)
-> Parser PageBackForwardCacheNotRestoredExplanation
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"context"
instance ToJSON PageBackForwardCacheNotRestoredExplanation where
  toJSON :: PageBackForwardCacheNotRestoredExplanation -> Value
toJSON PageBackForwardCacheNotRestoredExplanation
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"type" Text -> PageBackForwardCacheNotRestoredReasonType -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (PageBackForwardCacheNotRestoredReasonType -> Pair)
-> Maybe PageBackForwardCacheNotRestoredReasonType -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> PageBackForwardCacheNotRestoredReasonType
-> Maybe PageBackForwardCacheNotRestoredReasonType
forall a. a -> Maybe a
Just (PageBackForwardCacheNotRestoredExplanation
-> PageBackForwardCacheNotRestoredReasonType
pageBackForwardCacheNotRestoredExplanationType PageBackForwardCacheNotRestoredExplanation
p),
    (Text
"reason" Text -> PageBackForwardCacheNotRestoredReason -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (PageBackForwardCacheNotRestoredReason -> Pair)
-> Maybe PageBackForwardCacheNotRestoredReason -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> PageBackForwardCacheNotRestoredReason
-> Maybe PageBackForwardCacheNotRestoredReason
forall a. a -> Maybe a
Just (PageBackForwardCacheNotRestoredExplanation
-> PageBackForwardCacheNotRestoredReason
pageBackForwardCacheNotRestoredExplanationReason PageBackForwardCacheNotRestoredExplanation
p),
    (Text
"context" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PageBackForwardCacheNotRestoredExplanation -> Maybe Text
pageBackForwardCacheNotRestoredExplanationContext PageBackForwardCacheNotRestoredExplanation
p)
    ]

-- | Type 'Page.BackForwardCacheNotRestoredExplanationTree'.
data PageBackForwardCacheNotRestoredExplanationTree = PageBackForwardCacheNotRestoredExplanationTree
  {
    -- | URL of each frame
    PageBackForwardCacheNotRestoredExplanationTree -> Text
pageBackForwardCacheNotRestoredExplanationTreeUrl :: T.Text,
    -- | Not restored reasons of each frame
    PageBackForwardCacheNotRestoredExplanationTree
-> [PageBackForwardCacheNotRestoredExplanation]
pageBackForwardCacheNotRestoredExplanationTreeExplanations :: [PageBackForwardCacheNotRestoredExplanation],
    -- | Array of children frame
    PageBackForwardCacheNotRestoredExplanationTree
-> [PageBackForwardCacheNotRestoredExplanationTree]
pageBackForwardCacheNotRestoredExplanationTreeChildren :: [PageBackForwardCacheNotRestoredExplanationTree]
  }
  deriving (PageBackForwardCacheNotRestoredExplanationTree
-> PageBackForwardCacheNotRestoredExplanationTree -> Bool
(PageBackForwardCacheNotRestoredExplanationTree
 -> PageBackForwardCacheNotRestoredExplanationTree -> Bool)
-> (PageBackForwardCacheNotRestoredExplanationTree
    -> PageBackForwardCacheNotRestoredExplanationTree -> Bool)
-> Eq PageBackForwardCacheNotRestoredExplanationTree
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageBackForwardCacheNotRestoredExplanationTree
-> PageBackForwardCacheNotRestoredExplanationTree -> Bool
$c/= :: PageBackForwardCacheNotRestoredExplanationTree
-> PageBackForwardCacheNotRestoredExplanationTree -> Bool
== :: PageBackForwardCacheNotRestoredExplanationTree
-> PageBackForwardCacheNotRestoredExplanationTree -> Bool
$c== :: PageBackForwardCacheNotRestoredExplanationTree
-> PageBackForwardCacheNotRestoredExplanationTree -> Bool
Eq, Int -> PageBackForwardCacheNotRestoredExplanationTree -> ShowS
[PageBackForwardCacheNotRestoredExplanationTree] -> ShowS
PageBackForwardCacheNotRestoredExplanationTree -> String
(Int -> PageBackForwardCacheNotRestoredExplanationTree -> ShowS)
-> (PageBackForwardCacheNotRestoredExplanationTree -> String)
-> ([PageBackForwardCacheNotRestoredExplanationTree] -> ShowS)
-> Show PageBackForwardCacheNotRestoredExplanationTree
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageBackForwardCacheNotRestoredExplanationTree] -> ShowS
$cshowList :: [PageBackForwardCacheNotRestoredExplanationTree] -> ShowS
show :: PageBackForwardCacheNotRestoredExplanationTree -> String
$cshow :: PageBackForwardCacheNotRestoredExplanationTree -> String
showsPrec :: Int -> PageBackForwardCacheNotRestoredExplanationTree -> ShowS
$cshowsPrec :: Int -> PageBackForwardCacheNotRestoredExplanationTree -> ShowS
Show)
instance FromJSON PageBackForwardCacheNotRestoredExplanationTree where
  parseJSON :: Value -> Parser PageBackForwardCacheNotRestoredExplanationTree
parseJSON = String
-> (Object
    -> Parser PageBackForwardCacheNotRestoredExplanationTree)
-> Value
-> Parser PageBackForwardCacheNotRestoredExplanationTree
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageBackForwardCacheNotRestoredExplanationTree" ((Object -> Parser PageBackForwardCacheNotRestoredExplanationTree)
 -> Value -> Parser PageBackForwardCacheNotRestoredExplanationTree)
-> (Object
    -> Parser PageBackForwardCacheNotRestoredExplanationTree)
-> Value
-> Parser PageBackForwardCacheNotRestoredExplanationTree
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> [PageBackForwardCacheNotRestoredExplanation]
-> [PageBackForwardCacheNotRestoredExplanationTree]
-> PageBackForwardCacheNotRestoredExplanationTree
PageBackForwardCacheNotRestoredExplanationTree
    (Text
 -> [PageBackForwardCacheNotRestoredExplanation]
 -> [PageBackForwardCacheNotRestoredExplanationTree]
 -> PageBackForwardCacheNotRestoredExplanationTree)
-> Parser Text
-> Parser
     ([PageBackForwardCacheNotRestoredExplanation]
      -> [PageBackForwardCacheNotRestoredExplanationTree]
      -> PageBackForwardCacheNotRestoredExplanationTree)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"url"
    Parser
  ([PageBackForwardCacheNotRestoredExplanation]
   -> [PageBackForwardCacheNotRestoredExplanationTree]
   -> PageBackForwardCacheNotRestoredExplanationTree)
-> Parser [PageBackForwardCacheNotRestoredExplanation]
-> Parser
     ([PageBackForwardCacheNotRestoredExplanationTree]
      -> PageBackForwardCacheNotRestoredExplanationTree)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object
-> Text -> Parser [PageBackForwardCacheNotRestoredExplanation]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"explanations"
    Parser
  ([PageBackForwardCacheNotRestoredExplanationTree]
   -> PageBackForwardCacheNotRestoredExplanationTree)
-> Parser [PageBackForwardCacheNotRestoredExplanationTree]
-> Parser PageBackForwardCacheNotRestoredExplanationTree
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object
-> Text -> Parser [PageBackForwardCacheNotRestoredExplanationTree]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"children"
instance ToJSON PageBackForwardCacheNotRestoredExplanationTree where
  toJSON :: PageBackForwardCacheNotRestoredExplanationTree -> Value
toJSON PageBackForwardCacheNotRestoredExplanationTree
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"url" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PageBackForwardCacheNotRestoredExplanationTree -> Text
pageBackForwardCacheNotRestoredExplanationTreeUrl PageBackForwardCacheNotRestoredExplanationTree
p),
    (Text
"explanations" Text -> [PageBackForwardCacheNotRestoredExplanation] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([PageBackForwardCacheNotRestoredExplanation] -> Pair)
-> Maybe [PageBackForwardCacheNotRestoredExplanation] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> [PageBackForwardCacheNotRestoredExplanation]
-> Maybe [PageBackForwardCacheNotRestoredExplanation]
forall a. a -> Maybe a
Just (PageBackForwardCacheNotRestoredExplanationTree
-> [PageBackForwardCacheNotRestoredExplanation]
pageBackForwardCacheNotRestoredExplanationTreeExplanations PageBackForwardCacheNotRestoredExplanationTree
p),
    (Text
"children" Text -> [PageBackForwardCacheNotRestoredExplanationTree] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([PageBackForwardCacheNotRestoredExplanationTree] -> Pair)
-> Maybe [PageBackForwardCacheNotRestoredExplanationTree]
-> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> [PageBackForwardCacheNotRestoredExplanationTree]
-> Maybe [PageBackForwardCacheNotRestoredExplanationTree]
forall a. a -> Maybe a
Just (PageBackForwardCacheNotRestoredExplanationTree
-> [PageBackForwardCacheNotRestoredExplanationTree]
pageBackForwardCacheNotRestoredExplanationTreeChildren PageBackForwardCacheNotRestoredExplanationTree
p)
    ]

-- | Type 'Page.PrerenderFinalStatus'.
--   List of FinalStatus reasons for Prerender2.
data PagePrerenderFinalStatus = PagePrerenderFinalStatusActivated | PagePrerenderFinalStatusDestroyed | PagePrerenderFinalStatusLowEndDevice | PagePrerenderFinalStatusCrossOriginRedirect | PagePrerenderFinalStatusCrossOriginNavigation | PagePrerenderFinalStatusInvalidSchemeRedirect | PagePrerenderFinalStatusInvalidSchemeNavigation | PagePrerenderFinalStatusInProgressNavigation | PagePrerenderFinalStatusNavigationRequestBlockedByCsp | PagePrerenderFinalStatusMainFrameNavigation | PagePrerenderFinalStatusMojoBinderPolicy | PagePrerenderFinalStatusRendererProcessCrashed | PagePrerenderFinalStatusRendererProcessKilled | PagePrerenderFinalStatusDownload | PagePrerenderFinalStatusTriggerDestroyed | PagePrerenderFinalStatusNavigationNotCommitted | PagePrerenderFinalStatusNavigationBadHttpStatus | PagePrerenderFinalStatusClientCertRequested | PagePrerenderFinalStatusNavigationRequestNetworkError | PagePrerenderFinalStatusMaxNumOfRunningPrerendersExceeded | PagePrerenderFinalStatusCancelAllHostsForTesting | PagePrerenderFinalStatusDidFailLoad | PagePrerenderFinalStatusStop | PagePrerenderFinalStatusSslCertificateError | PagePrerenderFinalStatusLoginAuthRequested | PagePrerenderFinalStatusUaChangeRequiresReload | PagePrerenderFinalStatusBlockedByClient | PagePrerenderFinalStatusAudioOutputDeviceRequested | PagePrerenderFinalStatusMixedContent | PagePrerenderFinalStatusTriggerBackgrounded | PagePrerenderFinalStatusEmbedderTriggeredAndCrossOriginRedirected | PagePrerenderFinalStatusMemoryLimitExceeded | PagePrerenderFinalStatusFailToGetMemoryUsage | PagePrerenderFinalStatusDataSaverEnabled | PagePrerenderFinalStatusHasEffectiveUrl | PagePrerenderFinalStatusActivatedBeforeStarted | PagePrerenderFinalStatusInactivePageRestriction | PagePrerenderFinalStatusStartFailed | PagePrerenderFinalStatusTimeoutBackgrounded
  deriving (Eq PagePrerenderFinalStatus
Eq PagePrerenderFinalStatus
-> (PagePrerenderFinalStatus
    -> PagePrerenderFinalStatus -> Ordering)
-> (PagePrerenderFinalStatus -> PagePrerenderFinalStatus -> Bool)
-> (PagePrerenderFinalStatus -> PagePrerenderFinalStatus -> Bool)
-> (PagePrerenderFinalStatus -> PagePrerenderFinalStatus -> Bool)
-> (PagePrerenderFinalStatus -> PagePrerenderFinalStatus -> Bool)
-> (PagePrerenderFinalStatus
    -> PagePrerenderFinalStatus -> PagePrerenderFinalStatus)
-> (PagePrerenderFinalStatus
    -> PagePrerenderFinalStatus -> PagePrerenderFinalStatus)
-> Ord PagePrerenderFinalStatus
PagePrerenderFinalStatus -> PagePrerenderFinalStatus -> Bool
PagePrerenderFinalStatus -> PagePrerenderFinalStatus -> Ordering
PagePrerenderFinalStatus
-> PagePrerenderFinalStatus -> PagePrerenderFinalStatus
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: PagePrerenderFinalStatus
-> PagePrerenderFinalStatus -> PagePrerenderFinalStatus
$cmin :: PagePrerenderFinalStatus
-> PagePrerenderFinalStatus -> PagePrerenderFinalStatus
max :: PagePrerenderFinalStatus
-> PagePrerenderFinalStatus -> PagePrerenderFinalStatus
$cmax :: PagePrerenderFinalStatus
-> PagePrerenderFinalStatus -> PagePrerenderFinalStatus
>= :: PagePrerenderFinalStatus -> PagePrerenderFinalStatus -> Bool
$c>= :: PagePrerenderFinalStatus -> PagePrerenderFinalStatus -> Bool
> :: PagePrerenderFinalStatus -> PagePrerenderFinalStatus -> Bool
$c> :: PagePrerenderFinalStatus -> PagePrerenderFinalStatus -> Bool
<= :: PagePrerenderFinalStatus -> PagePrerenderFinalStatus -> Bool
$c<= :: PagePrerenderFinalStatus -> PagePrerenderFinalStatus -> Bool
< :: PagePrerenderFinalStatus -> PagePrerenderFinalStatus -> Bool
$c< :: PagePrerenderFinalStatus -> PagePrerenderFinalStatus -> Bool
compare :: PagePrerenderFinalStatus -> PagePrerenderFinalStatus -> Ordering
$ccompare :: PagePrerenderFinalStatus -> PagePrerenderFinalStatus -> Ordering
$cp1Ord :: Eq PagePrerenderFinalStatus
Ord, PagePrerenderFinalStatus -> PagePrerenderFinalStatus -> Bool
(PagePrerenderFinalStatus -> PagePrerenderFinalStatus -> Bool)
-> (PagePrerenderFinalStatus -> PagePrerenderFinalStatus -> Bool)
-> Eq PagePrerenderFinalStatus
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PagePrerenderFinalStatus -> PagePrerenderFinalStatus -> Bool
$c/= :: PagePrerenderFinalStatus -> PagePrerenderFinalStatus -> Bool
== :: PagePrerenderFinalStatus -> PagePrerenderFinalStatus -> Bool
$c== :: PagePrerenderFinalStatus -> PagePrerenderFinalStatus -> Bool
Eq, Int -> PagePrerenderFinalStatus -> ShowS
[PagePrerenderFinalStatus] -> ShowS
PagePrerenderFinalStatus -> String
(Int -> PagePrerenderFinalStatus -> ShowS)
-> (PagePrerenderFinalStatus -> String)
-> ([PagePrerenderFinalStatus] -> ShowS)
-> Show PagePrerenderFinalStatus
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PagePrerenderFinalStatus] -> ShowS
$cshowList :: [PagePrerenderFinalStatus] -> ShowS
show :: PagePrerenderFinalStatus -> String
$cshow :: PagePrerenderFinalStatus -> String
showsPrec :: Int -> PagePrerenderFinalStatus -> ShowS
$cshowsPrec :: Int -> PagePrerenderFinalStatus -> ShowS
Show, ReadPrec [PagePrerenderFinalStatus]
ReadPrec PagePrerenderFinalStatus
Int -> ReadS PagePrerenderFinalStatus
ReadS [PagePrerenderFinalStatus]
(Int -> ReadS PagePrerenderFinalStatus)
-> ReadS [PagePrerenderFinalStatus]
-> ReadPrec PagePrerenderFinalStatus
-> ReadPrec [PagePrerenderFinalStatus]
-> Read PagePrerenderFinalStatus
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PagePrerenderFinalStatus]
$creadListPrec :: ReadPrec [PagePrerenderFinalStatus]
readPrec :: ReadPrec PagePrerenderFinalStatus
$creadPrec :: ReadPrec PagePrerenderFinalStatus
readList :: ReadS [PagePrerenderFinalStatus]
$creadList :: ReadS [PagePrerenderFinalStatus]
readsPrec :: Int -> ReadS PagePrerenderFinalStatus
$creadsPrec :: Int -> ReadS PagePrerenderFinalStatus
Read)
instance FromJSON PagePrerenderFinalStatus where
  parseJSON :: Value -> Parser PagePrerenderFinalStatus
parseJSON = String
-> (Text -> Parser PagePrerenderFinalStatus)
-> Value
-> Parser PagePrerenderFinalStatus
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"PagePrerenderFinalStatus" ((Text -> Parser PagePrerenderFinalStatus)
 -> Value -> Parser PagePrerenderFinalStatus)
-> (Text -> Parser PagePrerenderFinalStatus)
-> Value
-> Parser PagePrerenderFinalStatus
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"Activated" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusActivated
    Text
"Destroyed" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusDestroyed
    Text
"LowEndDevice" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusLowEndDevice
    Text
"CrossOriginRedirect" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusCrossOriginRedirect
    Text
"CrossOriginNavigation" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusCrossOriginNavigation
    Text
"InvalidSchemeRedirect" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusInvalidSchemeRedirect
    Text
"InvalidSchemeNavigation" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusInvalidSchemeNavigation
    Text
"InProgressNavigation" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusInProgressNavigation
    Text
"NavigationRequestBlockedByCsp" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusNavigationRequestBlockedByCsp
    Text
"MainFrameNavigation" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusMainFrameNavigation
    Text
"MojoBinderPolicy" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusMojoBinderPolicy
    Text
"RendererProcessCrashed" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusRendererProcessCrashed
    Text
"RendererProcessKilled" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusRendererProcessKilled
    Text
"Download" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusDownload
    Text
"TriggerDestroyed" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusTriggerDestroyed
    Text
"NavigationNotCommitted" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusNavigationNotCommitted
    Text
"NavigationBadHttpStatus" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusNavigationBadHttpStatus
    Text
"ClientCertRequested" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusClientCertRequested
    Text
"NavigationRequestNetworkError" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusNavigationRequestNetworkError
    Text
"MaxNumOfRunningPrerendersExceeded" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusMaxNumOfRunningPrerendersExceeded
    Text
"CancelAllHostsForTesting" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusCancelAllHostsForTesting
    Text
"DidFailLoad" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusDidFailLoad
    Text
"Stop" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusStop
    Text
"SslCertificateError" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusSslCertificateError
    Text
"LoginAuthRequested" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusLoginAuthRequested
    Text
"UaChangeRequiresReload" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusUaChangeRequiresReload
    Text
"BlockedByClient" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusBlockedByClient
    Text
"AudioOutputDeviceRequested" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusAudioOutputDeviceRequested
    Text
"MixedContent" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusMixedContent
    Text
"TriggerBackgrounded" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusTriggerBackgrounded
    Text
"EmbedderTriggeredAndCrossOriginRedirected" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusEmbedderTriggeredAndCrossOriginRedirected
    Text
"MemoryLimitExceeded" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusMemoryLimitExceeded
    Text
"FailToGetMemoryUsage" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusFailToGetMemoryUsage
    Text
"DataSaverEnabled" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusDataSaverEnabled
    Text
"HasEffectiveUrl" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusHasEffectiveUrl
    Text
"ActivatedBeforeStarted" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusActivatedBeforeStarted
    Text
"InactivePageRestriction" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusInactivePageRestriction
    Text
"StartFailed" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusStartFailed
    Text
"TimeoutBackgrounded" -> PagePrerenderFinalStatus -> Parser PagePrerenderFinalStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure PagePrerenderFinalStatus
PagePrerenderFinalStatusTimeoutBackgrounded
    Text
"_" -> String -> Parser PagePrerenderFinalStatus
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse PagePrerenderFinalStatus"
instance ToJSON PagePrerenderFinalStatus where
  toJSON :: PagePrerenderFinalStatus -> Value
toJSON PagePrerenderFinalStatus
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case PagePrerenderFinalStatus
v of
    PagePrerenderFinalStatus
PagePrerenderFinalStatusActivated -> Text
"Activated"
    PagePrerenderFinalStatus
PagePrerenderFinalStatusDestroyed -> Text
"Destroyed"
    PagePrerenderFinalStatus
PagePrerenderFinalStatusLowEndDevice -> Text
"LowEndDevice"
    PagePrerenderFinalStatus
PagePrerenderFinalStatusCrossOriginRedirect -> Text
"CrossOriginRedirect"
    PagePrerenderFinalStatus
PagePrerenderFinalStatusCrossOriginNavigation -> Text
"CrossOriginNavigation"
    PagePrerenderFinalStatus
PagePrerenderFinalStatusInvalidSchemeRedirect -> Text
"InvalidSchemeRedirect"
    PagePrerenderFinalStatus
PagePrerenderFinalStatusInvalidSchemeNavigation -> Text
"InvalidSchemeNavigation"
    PagePrerenderFinalStatus
PagePrerenderFinalStatusInProgressNavigation -> Text
"InProgressNavigation"
    PagePrerenderFinalStatus
PagePrerenderFinalStatusNavigationRequestBlockedByCsp -> Text
"NavigationRequestBlockedByCsp"
    PagePrerenderFinalStatus
PagePrerenderFinalStatusMainFrameNavigation -> Text
"MainFrameNavigation"
    PagePrerenderFinalStatus
PagePrerenderFinalStatusMojoBinderPolicy -> Text
"MojoBinderPolicy"
    PagePrerenderFinalStatus
PagePrerenderFinalStatusRendererProcessCrashed -> Text
"RendererProcessCrashed"
    PagePrerenderFinalStatus
PagePrerenderFinalStatusRendererProcessKilled -> Text
"RendererProcessKilled"
    PagePrerenderFinalStatus
PagePrerenderFinalStatusDownload -> Text
"Download"
    PagePrerenderFinalStatus
PagePrerenderFinalStatusTriggerDestroyed -> Text
"TriggerDestroyed"
    PagePrerenderFinalStatus
PagePrerenderFinalStatusNavigationNotCommitted -> Text
"NavigationNotCommitted"
    PagePrerenderFinalStatus
PagePrerenderFinalStatusNavigationBadHttpStatus -> Text
"NavigationBadHttpStatus"
    PagePrerenderFinalStatus
PagePrerenderFinalStatusClientCertRequested -> Text
"ClientCertRequested"
    PagePrerenderFinalStatus
PagePrerenderFinalStatusNavigationRequestNetworkError -> Text
"NavigationRequestNetworkError"
    PagePrerenderFinalStatus
PagePrerenderFinalStatusMaxNumOfRunningPrerendersExceeded -> Text
"MaxNumOfRunningPrerendersExceeded"
    PagePrerenderFinalStatus
PagePrerenderFinalStatusCancelAllHostsForTesting -> Text
"CancelAllHostsForTesting"
    PagePrerenderFinalStatus
PagePrerenderFinalStatusDidFailLoad -> Text
"DidFailLoad"
    PagePrerenderFinalStatus
PagePrerenderFinalStatusStop -> Text
"Stop"
    PagePrerenderFinalStatus
PagePrerenderFinalStatusSslCertificateError -> Text
"SslCertificateError"
    PagePrerenderFinalStatus
PagePrerenderFinalStatusLoginAuthRequested -> Text
"LoginAuthRequested"
    PagePrerenderFinalStatus
PagePrerenderFinalStatusUaChangeRequiresReload -> Text
"UaChangeRequiresReload"
    PagePrerenderFinalStatus
PagePrerenderFinalStatusBlockedByClient -> Text
"BlockedByClient"
    PagePrerenderFinalStatus
PagePrerenderFinalStatusAudioOutputDeviceRequested -> Text
"AudioOutputDeviceRequested"
    PagePrerenderFinalStatus
PagePrerenderFinalStatusMixedContent -> Text
"MixedContent"
    PagePrerenderFinalStatus
PagePrerenderFinalStatusTriggerBackgrounded -> Text
"TriggerBackgrounded"
    PagePrerenderFinalStatus
PagePrerenderFinalStatusEmbedderTriggeredAndCrossOriginRedirected -> Text
"EmbedderTriggeredAndCrossOriginRedirected"
    PagePrerenderFinalStatus
PagePrerenderFinalStatusMemoryLimitExceeded -> Text
"MemoryLimitExceeded"
    PagePrerenderFinalStatus
PagePrerenderFinalStatusFailToGetMemoryUsage -> Text
"FailToGetMemoryUsage"
    PagePrerenderFinalStatus
PagePrerenderFinalStatusDataSaverEnabled -> Text
"DataSaverEnabled"
    PagePrerenderFinalStatus
PagePrerenderFinalStatusHasEffectiveUrl -> Text
"HasEffectiveUrl"
    PagePrerenderFinalStatus
PagePrerenderFinalStatusActivatedBeforeStarted -> Text
"ActivatedBeforeStarted"
    PagePrerenderFinalStatus
PagePrerenderFinalStatusInactivePageRestriction -> Text
"InactivePageRestriction"
    PagePrerenderFinalStatus
PagePrerenderFinalStatusStartFailed -> Text
"StartFailed"
    PagePrerenderFinalStatus
PagePrerenderFinalStatusTimeoutBackgrounded -> Text
"TimeoutBackgrounded"

-- | Type of the 'Page.domContentEventFired' event.
data PageDomContentEventFired = PageDomContentEventFired
  {
    PageDomContentEventFired -> Double
pageDomContentEventFiredTimestamp :: NetworkMonotonicTime
  }
  deriving (PageDomContentEventFired -> PageDomContentEventFired -> Bool
(PageDomContentEventFired -> PageDomContentEventFired -> Bool)
-> (PageDomContentEventFired -> PageDomContentEventFired -> Bool)
-> Eq PageDomContentEventFired
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageDomContentEventFired -> PageDomContentEventFired -> Bool
$c/= :: PageDomContentEventFired -> PageDomContentEventFired -> Bool
== :: PageDomContentEventFired -> PageDomContentEventFired -> Bool
$c== :: PageDomContentEventFired -> PageDomContentEventFired -> Bool
Eq, Int -> PageDomContentEventFired -> ShowS
[PageDomContentEventFired] -> ShowS
PageDomContentEventFired -> String
(Int -> PageDomContentEventFired -> ShowS)
-> (PageDomContentEventFired -> String)
-> ([PageDomContentEventFired] -> ShowS)
-> Show PageDomContentEventFired
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageDomContentEventFired] -> ShowS
$cshowList :: [PageDomContentEventFired] -> ShowS
show :: PageDomContentEventFired -> String
$cshow :: PageDomContentEventFired -> String
showsPrec :: Int -> PageDomContentEventFired -> ShowS
$cshowsPrec :: Int -> PageDomContentEventFired -> ShowS
Show)
instance FromJSON PageDomContentEventFired where
  parseJSON :: Value -> Parser PageDomContentEventFired
parseJSON = String
-> (Object -> Parser PageDomContentEventFired)
-> Value
-> Parser PageDomContentEventFired
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageDomContentEventFired" ((Object -> Parser PageDomContentEventFired)
 -> Value -> Parser PageDomContentEventFired)
-> (Object -> Parser PageDomContentEventFired)
-> Value
-> Parser PageDomContentEventFired
forall a b. (a -> b) -> a -> b
$ \Object
o -> Double -> PageDomContentEventFired
PageDomContentEventFired
    (Double -> PageDomContentEventFired)
-> Parser Double -> Parser PageDomContentEventFired
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"timestamp"
instance Event PageDomContentEventFired where
  eventName :: Proxy PageDomContentEventFired -> String
eventName Proxy PageDomContentEventFired
_ = String
"Page.domContentEventFired"

-- | Type of the 'Page.fileChooserOpened' event.
data PageFileChooserOpenedMode = PageFileChooserOpenedModeSelectSingle | PageFileChooserOpenedModeSelectMultiple
  deriving (Eq PageFileChooserOpenedMode
Eq PageFileChooserOpenedMode
-> (PageFileChooserOpenedMode
    -> PageFileChooserOpenedMode -> Ordering)
-> (PageFileChooserOpenedMode -> PageFileChooserOpenedMode -> Bool)
-> (PageFileChooserOpenedMode -> PageFileChooserOpenedMode -> Bool)
-> (PageFileChooserOpenedMode -> PageFileChooserOpenedMode -> Bool)
-> (PageFileChooserOpenedMode -> PageFileChooserOpenedMode -> Bool)
-> (PageFileChooserOpenedMode
    -> PageFileChooserOpenedMode -> PageFileChooserOpenedMode)
-> (PageFileChooserOpenedMode
    -> PageFileChooserOpenedMode -> PageFileChooserOpenedMode)
-> Ord PageFileChooserOpenedMode
PageFileChooserOpenedMode -> PageFileChooserOpenedMode -> Bool
PageFileChooserOpenedMode -> PageFileChooserOpenedMode -> Ordering
PageFileChooserOpenedMode
-> PageFileChooserOpenedMode -> PageFileChooserOpenedMode
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: PageFileChooserOpenedMode
-> PageFileChooserOpenedMode -> PageFileChooserOpenedMode
$cmin :: PageFileChooserOpenedMode
-> PageFileChooserOpenedMode -> PageFileChooserOpenedMode
max :: PageFileChooserOpenedMode
-> PageFileChooserOpenedMode -> PageFileChooserOpenedMode
$cmax :: PageFileChooserOpenedMode
-> PageFileChooserOpenedMode -> PageFileChooserOpenedMode
>= :: PageFileChooserOpenedMode -> PageFileChooserOpenedMode -> Bool
$c>= :: PageFileChooserOpenedMode -> PageFileChooserOpenedMode -> Bool
> :: PageFileChooserOpenedMode -> PageFileChooserOpenedMode -> Bool
$c> :: PageFileChooserOpenedMode -> PageFileChooserOpenedMode -> Bool
<= :: PageFileChooserOpenedMode -> PageFileChooserOpenedMode -> Bool
$c<= :: PageFileChooserOpenedMode -> PageFileChooserOpenedMode -> Bool
< :: PageFileChooserOpenedMode -> PageFileChooserOpenedMode -> Bool
$c< :: PageFileChooserOpenedMode -> PageFileChooserOpenedMode -> Bool
compare :: PageFileChooserOpenedMode -> PageFileChooserOpenedMode -> Ordering
$ccompare :: PageFileChooserOpenedMode -> PageFileChooserOpenedMode -> Ordering
$cp1Ord :: Eq PageFileChooserOpenedMode
Ord, PageFileChooserOpenedMode -> PageFileChooserOpenedMode -> Bool
(PageFileChooserOpenedMode -> PageFileChooserOpenedMode -> Bool)
-> (PageFileChooserOpenedMode -> PageFileChooserOpenedMode -> Bool)
-> Eq PageFileChooserOpenedMode
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageFileChooserOpenedMode -> PageFileChooserOpenedMode -> Bool
$c/= :: PageFileChooserOpenedMode -> PageFileChooserOpenedMode -> Bool
== :: PageFileChooserOpenedMode -> PageFileChooserOpenedMode -> Bool
$c== :: PageFileChooserOpenedMode -> PageFileChooserOpenedMode -> Bool
Eq, Int -> PageFileChooserOpenedMode -> ShowS
[PageFileChooserOpenedMode] -> ShowS
PageFileChooserOpenedMode -> String
(Int -> PageFileChooserOpenedMode -> ShowS)
-> (PageFileChooserOpenedMode -> String)
-> ([PageFileChooserOpenedMode] -> ShowS)
-> Show PageFileChooserOpenedMode
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageFileChooserOpenedMode] -> ShowS
$cshowList :: [PageFileChooserOpenedMode] -> ShowS
show :: PageFileChooserOpenedMode -> String
$cshow :: PageFileChooserOpenedMode -> String
showsPrec :: Int -> PageFileChooserOpenedMode -> ShowS
$cshowsPrec :: Int -> PageFileChooserOpenedMode -> ShowS
Show, ReadPrec [PageFileChooserOpenedMode]
ReadPrec PageFileChooserOpenedMode
Int -> ReadS PageFileChooserOpenedMode
ReadS [PageFileChooserOpenedMode]
(Int -> ReadS PageFileChooserOpenedMode)
-> ReadS [PageFileChooserOpenedMode]
-> ReadPrec PageFileChooserOpenedMode
-> ReadPrec [PageFileChooserOpenedMode]
-> Read PageFileChooserOpenedMode
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PageFileChooserOpenedMode]
$creadListPrec :: ReadPrec [PageFileChooserOpenedMode]
readPrec :: ReadPrec PageFileChooserOpenedMode
$creadPrec :: ReadPrec PageFileChooserOpenedMode
readList :: ReadS [PageFileChooserOpenedMode]
$creadList :: ReadS [PageFileChooserOpenedMode]
readsPrec :: Int -> ReadS PageFileChooserOpenedMode
$creadsPrec :: Int -> ReadS PageFileChooserOpenedMode
Read)
instance FromJSON PageFileChooserOpenedMode where
  parseJSON :: Value -> Parser PageFileChooserOpenedMode
parseJSON = String
-> (Text -> Parser PageFileChooserOpenedMode)
-> Value
-> Parser PageFileChooserOpenedMode
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"PageFileChooserOpenedMode" ((Text -> Parser PageFileChooserOpenedMode)
 -> Value -> Parser PageFileChooserOpenedMode)
-> (Text -> Parser PageFileChooserOpenedMode)
-> Value
-> Parser PageFileChooserOpenedMode
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"selectSingle" -> PageFileChooserOpenedMode -> Parser PageFileChooserOpenedMode
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageFileChooserOpenedMode
PageFileChooserOpenedModeSelectSingle
    Text
"selectMultiple" -> PageFileChooserOpenedMode -> Parser PageFileChooserOpenedMode
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageFileChooserOpenedMode
PageFileChooserOpenedModeSelectMultiple
    Text
"_" -> String -> Parser PageFileChooserOpenedMode
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse PageFileChooserOpenedMode"
instance ToJSON PageFileChooserOpenedMode where
  toJSON :: PageFileChooserOpenedMode -> Value
toJSON PageFileChooserOpenedMode
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case PageFileChooserOpenedMode
v of
    PageFileChooserOpenedMode
PageFileChooserOpenedModeSelectSingle -> Text
"selectSingle"
    PageFileChooserOpenedMode
PageFileChooserOpenedModeSelectMultiple -> Text
"selectMultiple"
data PageFileChooserOpened = PageFileChooserOpened
  {
    -- | Id of the frame containing input node.
    PageFileChooserOpened -> Text
pageFileChooserOpenedFrameId :: PageFrameId,
    -- | Input mode.
    PageFileChooserOpened -> PageFileChooserOpenedMode
pageFileChooserOpenedMode :: PageFileChooserOpenedMode,
    -- | Input node id. Only present for file choosers opened via an <input type="file"> element.
    PageFileChooserOpened -> Maybe Int
pageFileChooserOpenedBackendNodeId :: Maybe DOMBackendNodeId
  }
  deriving (PageFileChooserOpened -> PageFileChooserOpened -> Bool
(PageFileChooserOpened -> PageFileChooserOpened -> Bool)
-> (PageFileChooserOpened -> PageFileChooserOpened -> Bool)
-> Eq PageFileChooserOpened
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageFileChooserOpened -> PageFileChooserOpened -> Bool
$c/= :: PageFileChooserOpened -> PageFileChooserOpened -> Bool
== :: PageFileChooserOpened -> PageFileChooserOpened -> Bool
$c== :: PageFileChooserOpened -> PageFileChooserOpened -> Bool
Eq, Int -> PageFileChooserOpened -> ShowS
[PageFileChooserOpened] -> ShowS
PageFileChooserOpened -> String
(Int -> PageFileChooserOpened -> ShowS)
-> (PageFileChooserOpened -> String)
-> ([PageFileChooserOpened] -> ShowS)
-> Show PageFileChooserOpened
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageFileChooserOpened] -> ShowS
$cshowList :: [PageFileChooserOpened] -> ShowS
show :: PageFileChooserOpened -> String
$cshow :: PageFileChooserOpened -> String
showsPrec :: Int -> PageFileChooserOpened -> ShowS
$cshowsPrec :: Int -> PageFileChooserOpened -> ShowS
Show)
instance FromJSON PageFileChooserOpened where
  parseJSON :: Value -> Parser PageFileChooserOpened
parseJSON = String
-> (Object -> Parser PageFileChooserOpened)
-> Value
-> Parser PageFileChooserOpened
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageFileChooserOpened" ((Object -> Parser PageFileChooserOpened)
 -> Value -> Parser PageFileChooserOpened)
-> (Object -> Parser PageFileChooserOpened)
-> Value
-> Parser PageFileChooserOpened
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> PageFileChooserOpenedMode -> Maybe Int -> PageFileChooserOpened
PageFileChooserOpened
    (Text
 -> PageFileChooserOpenedMode -> Maybe Int -> PageFileChooserOpened)
-> Parser Text
-> Parser
     (PageFileChooserOpenedMode -> Maybe Int -> PageFileChooserOpened)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"frameId"
    Parser
  (PageFileChooserOpenedMode -> Maybe Int -> PageFileChooserOpened)
-> Parser PageFileChooserOpenedMode
-> Parser (Maybe Int -> PageFileChooserOpened)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser PageFileChooserOpenedMode
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"mode"
    Parser (Maybe Int -> PageFileChooserOpened)
-> Parser (Maybe Int) -> Parser PageFileChooserOpened
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Int)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"backendNodeId"
instance Event PageFileChooserOpened where
  eventName :: Proxy PageFileChooserOpened -> String
eventName Proxy PageFileChooserOpened
_ = String
"Page.fileChooserOpened"

-- | Type of the 'Page.frameAttached' event.
data PageFrameAttached = PageFrameAttached
  {
    -- | Id of the frame that has been attached.
    PageFrameAttached -> Text
pageFrameAttachedFrameId :: PageFrameId,
    -- | Parent frame identifier.
    PageFrameAttached -> Text
pageFrameAttachedParentFrameId :: PageFrameId,
    -- | JavaScript stack trace of when frame was attached, only set if frame initiated from script.
    PageFrameAttached -> Maybe RuntimeStackTrace
pageFrameAttachedStack :: Maybe Runtime.RuntimeStackTrace
  }
  deriving (PageFrameAttached -> PageFrameAttached -> Bool
(PageFrameAttached -> PageFrameAttached -> Bool)
-> (PageFrameAttached -> PageFrameAttached -> Bool)
-> Eq PageFrameAttached
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageFrameAttached -> PageFrameAttached -> Bool
$c/= :: PageFrameAttached -> PageFrameAttached -> Bool
== :: PageFrameAttached -> PageFrameAttached -> Bool
$c== :: PageFrameAttached -> PageFrameAttached -> Bool
Eq, Int -> PageFrameAttached -> ShowS
[PageFrameAttached] -> ShowS
PageFrameAttached -> String
(Int -> PageFrameAttached -> ShowS)
-> (PageFrameAttached -> String)
-> ([PageFrameAttached] -> ShowS)
-> Show PageFrameAttached
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageFrameAttached] -> ShowS
$cshowList :: [PageFrameAttached] -> ShowS
show :: PageFrameAttached -> String
$cshow :: PageFrameAttached -> String
showsPrec :: Int -> PageFrameAttached -> ShowS
$cshowsPrec :: Int -> PageFrameAttached -> ShowS
Show)
instance FromJSON PageFrameAttached where
  parseJSON :: Value -> Parser PageFrameAttached
parseJSON = String
-> (Object -> Parser PageFrameAttached)
-> Value
-> Parser PageFrameAttached
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageFrameAttached" ((Object -> Parser PageFrameAttached)
 -> Value -> Parser PageFrameAttached)
-> (Object -> Parser PageFrameAttached)
-> Value
-> Parser PageFrameAttached
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> Text -> Maybe RuntimeStackTrace -> PageFrameAttached
PageFrameAttached
    (Text -> Text -> Maybe RuntimeStackTrace -> PageFrameAttached)
-> Parser Text
-> Parser (Text -> Maybe RuntimeStackTrace -> PageFrameAttached)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"frameId"
    Parser (Text -> Maybe RuntimeStackTrace -> PageFrameAttached)
-> Parser Text
-> Parser (Maybe RuntimeStackTrace -> PageFrameAttached)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"parentFrameId"
    Parser (Maybe RuntimeStackTrace -> PageFrameAttached)
-> Parser (Maybe RuntimeStackTrace) -> Parser PageFrameAttached
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe RuntimeStackTrace)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"stack"
instance Event PageFrameAttached where
  eventName :: Proxy PageFrameAttached -> String
eventName Proxy PageFrameAttached
_ = String
"Page.frameAttached"

-- | Type of the 'Page.frameDetached' event.
data PageFrameDetachedReason = PageFrameDetachedReasonRemove | PageFrameDetachedReasonSwap
  deriving (Eq PageFrameDetachedReason
Eq PageFrameDetachedReason
-> (PageFrameDetachedReason -> PageFrameDetachedReason -> Ordering)
-> (PageFrameDetachedReason -> PageFrameDetachedReason -> Bool)
-> (PageFrameDetachedReason -> PageFrameDetachedReason -> Bool)
-> (PageFrameDetachedReason -> PageFrameDetachedReason -> Bool)
-> (PageFrameDetachedReason -> PageFrameDetachedReason -> Bool)
-> (PageFrameDetachedReason
    -> PageFrameDetachedReason -> PageFrameDetachedReason)
-> (PageFrameDetachedReason
    -> PageFrameDetachedReason -> PageFrameDetachedReason)
-> Ord PageFrameDetachedReason
PageFrameDetachedReason -> PageFrameDetachedReason -> Bool
PageFrameDetachedReason -> PageFrameDetachedReason -> Ordering
PageFrameDetachedReason
-> PageFrameDetachedReason -> PageFrameDetachedReason
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: PageFrameDetachedReason
-> PageFrameDetachedReason -> PageFrameDetachedReason
$cmin :: PageFrameDetachedReason
-> PageFrameDetachedReason -> PageFrameDetachedReason
max :: PageFrameDetachedReason
-> PageFrameDetachedReason -> PageFrameDetachedReason
$cmax :: PageFrameDetachedReason
-> PageFrameDetachedReason -> PageFrameDetachedReason
>= :: PageFrameDetachedReason -> PageFrameDetachedReason -> Bool
$c>= :: PageFrameDetachedReason -> PageFrameDetachedReason -> Bool
> :: PageFrameDetachedReason -> PageFrameDetachedReason -> Bool
$c> :: PageFrameDetachedReason -> PageFrameDetachedReason -> Bool
<= :: PageFrameDetachedReason -> PageFrameDetachedReason -> Bool
$c<= :: PageFrameDetachedReason -> PageFrameDetachedReason -> Bool
< :: PageFrameDetachedReason -> PageFrameDetachedReason -> Bool
$c< :: PageFrameDetachedReason -> PageFrameDetachedReason -> Bool
compare :: PageFrameDetachedReason -> PageFrameDetachedReason -> Ordering
$ccompare :: PageFrameDetachedReason -> PageFrameDetachedReason -> Ordering
$cp1Ord :: Eq PageFrameDetachedReason
Ord, PageFrameDetachedReason -> PageFrameDetachedReason -> Bool
(PageFrameDetachedReason -> PageFrameDetachedReason -> Bool)
-> (PageFrameDetachedReason -> PageFrameDetachedReason -> Bool)
-> Eq PageFrameDetachedReason
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageFrameDetachedReason -> PageFrameDetachedReason -> Bool
$c/= :: PageFrameDetachedReason -> PageFrameDetachedReason -> Bool
== :: PageFrameDetachedReason -> PageFrameDetachedReason -> Bool
$c== :: PageFrameDetachedReason -> PageFrameDetachedReason -> Bool
Eq, Int -> PageFrameDetachedReason -> ShowS
[PageFrameDetachedReason] -> ShowS
PageFrameDetachedReason -> String
(Int -> PageFrameDetachedReason -> ShowS)
-> (PageFrameDetachedReason -> String)
-> ([PageFrameDetachedReason] -> ShowS)
-> Show PageFrameDetachedReason
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageFrameDetachedReason] -> ShowS
$cshowList :: [PageFrameDetachedReason] -> ShowS
show :: PageFrameDetachedReason -> String
$cshow :: PageFrameDetachedReason -> String
showsPrec :: Int -> PageFrameDetachedReason -> ShowS
$cshowsPrec :: Int -> PageFrameDetachedReason -> ShowS
Show, ReadPrec [PageFrameDetachedReason]
ReadPrec PageFrameDetachedReason
Int -> ReadS PageFrameDetachedReason
ReadS [PageFrameDetachedReason]
(Int -> ReadS PageFrameDetachedReason)
-> ReadS [PageFrameDetachedReason]
-> ReadPrec PageFrameDetachedReason
-> ReadPrec [PageFrameDetachedReason]
-> Read PageFrameDetachedReason
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PageFrameDetachedReason]
$creadListPrec :: ReadPrec [PageFrameDetachedReason]
readPrec :: ReadPrec PageFrameDetachedReason
$creadPrec :: ReadPrec PageFrameDetachedReason
readList :: ReadS [PageFrameDetachedReason]
$creadList :: ReadS [PageFrameDetachedReason]
readsPrec :: Int -> ReadS PageFrameDetachedReason
$creadsPrec :: Int -> ReadS PageFrameDetachedReason
Read)
instance FromJSON PageFrameDetachedReason where
  parseJSON :: Value -> Parser PageFrameDetachedReason
parseJSON = String
-> (Text -> Parser PageFrameDetachedReason)
-> Value
-> Parser PageFrameDetachedReason
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"PageFrameDetachedReason" ((Text -> Parser PageFrameDetachedReason)
 -> Value -> Parser PageFrameDetachedReason)
-> (Text -> Parser PageFrameDetachedReason)
-> Value
-> Parser PageFrameDetachedReason
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"remove" -> PageFrameDetachedReason -> Parser PageFrameDetachedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageFrameDetachedReason
PageFrameDetachedReasonRemove
    Text
"swap" -> PageFrameDetachedReason -> Parser PageFrameDetachedReason
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageFrameDetachedReason
PageFrameDetachedReasonSwap
    Text
"_" -> String -> Parser PageFrameDetachedReason
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse PageFrameDetachedReason"
instance ToJSON PageFrameDetachedReason where
  toJSON :: PageFrameDetachedReason -> Value
toJSON PageFrameDetachedReason
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case PageFrameDetachedReason
v of
    PageFrameDetachedReason
PageFrameDetachedReasonRemove -> Text
"remove"
    PageFrameDetachedReason
PageFrameDetachedReasonSwap -> Text
"swap"
data PageFrameDetached = PageFrameDetached
  {
    -- | Id of the frame that has been detached.
    PageFrameDetached -> Text
pageFrameDetachedFrameId :: PageFrameId,
    PageFrameDetached -> PageFrameDetachedReason
pageFrameDetachedReason :: PageFrameDetachedReason
  }
  deriving (PageFrameDetached -> PageFrameDetached -> Bool
(PageFrameDetached -> PageFrameDetached -> Bool)
-> (PageFrameDetached -> PageFrameDetached -> Bool)
-> Eq PageFrameDetached
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageFrameDetached -> PageFrameDetached -> Bool
$c/= :: PageFrameDetached -> PageFrameDetached -> Bool
== :: PageFrameDetached -> PageFrameDetached -> Bool
$c== :: PageFrameDetached -> PageFrameDetached -> Bool
Eq, Int -> PageFrameDetached -> ShowS
[PageFrameDetached] -> ShowS
PageFrameDetached -> String
(Int -> PageFrameDetached -> ShowS)
-> (PageFrameDetached -> String)
-> ([PageFrameDetached] -> ShowS)
-> Show PageFrameDetached
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageFrameDetached] -> ShowS
$cshowList :: [PageFrameDetached] -> ShowS
show :: PageFrameDetached -> String
$cshow :: PageFrameDetached -> String
showsPrec :: Int -> PageFrameDetached -> ShowS
$cshowsPrec :: Int -> PageFrameDetached -> ShowS
Show)
instance FromJSON PageFrameDetached where
  parseJSON :: Value -> Parser PageFrameDetached
parseJSON = String
-> (Object -> Parser PageFrameDetached)
-> Value
-> Parser PageFrameDetached
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageFrameDetached" ((Object -> Parser PageFrameDetached)
 -> Value -> Parser PageFrameDetached)
-> (Object -> Parser PageFrameDetached)
-> Value
-> Parser PageFrameDetached
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> PageFrameDetachedReason -> PageFrameDetached
PageFrameDetached
    (Text -> PageFrameDetachedReason -> PageFrameDetached)
-> Parser Text
-> Parser (PageFrameDetachedReason -> PageFrameDetached)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"frameId"
    Parser (PageFrameDetachedReason -> PageFrameDetached)
-> Parser PageFrameDetachedReason -> Parser PageFrameDetached
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser PageFrameDetachedReason
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"reason"
instance Event PageFrameDetached where
  eventName :: Proxy PageFrameDetached -> String
eventName Proxy PageFrameDetached
_ = String
"Page.frameDetached"

-- | Type of the 'Page.frameNavigated' event.
data PageFrameNavigated = PageFrameNavigated
  {
    -- | Frame object.
    PageFrameNavigated -> PageFrame
pageFrameNavigatedFrame :: PageFrame,
    PageFrameNavigated -> PageNavigationType
pageFrameNavigatedType :: PageNavigationType
  }
  deriving (PageFrameNavigated -> PageFrameNavigated -> Bool
(PageFrameNavigated -> PageFrameNavigated -> Bool)
-> (PageFrameNavigated -> PageFrameNavigated -> Bool)
-> Eq PageFrameNavigated
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageFrameNavigated -> PageFrameNavigated -> Bool
$c/= :: PageFrameNavigated -> PageFrameNavigated -> Bool
== :: PageFrameNavigated -> PageFrameNavigated -> Bool
$c== :: PageFrameNavigated -> PageFrameNavigated -> Bool
Eq, Int -> PageFrameNavigated -> ShowS
[PageFrameNavigated] -> ShowS
PageFrameNavigated -> String
(Int -> PageFrameNavigated -> ShowS)
-> (PageFrameNavigated -> String)
-> ([PageFrameNavigated] -> ShowS)
-> Show PageFrameNavigated
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageFrameNavigated] -> ShowS
$cshowList :: [PageFrameNavigated] -> ShowS
show :: PageFrameNavigated -> String
$cshow :: PageFrameNavigated -> String
showsPrec :: Int -> PageFrameNavigated -> ShowS
$cshowsPrec :: Int -> PageFrameNavigated -> ShowS
Show)
instance FromJSON PageFrameNavigated where
  parseJSON :: Value -> Parser PageFrameNavigated
parseJSON = String
-> (Object -> Parser PageFrameNavigated)
-> Value
-> Parser PageFrameNavigated
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageFrameNavigated" ((Object -> Parser PageFrameNavigated)
 -> Value -> Parser PageFrameNavigated)
-> (Object -> Parser PageFrameNavigated)
-> Value
-> Parser PageFrameNavigated
forall a b. (a -> b) -> a -> b
$ \Object
o -> PageFrame -> PageNavigationType -> PageFrameNavigated
PageFrameNavigated
    (PageFrame -> PageNavigationType -> PageFrameNavigated)
-> Parser PageFrame
-> Parser (PageNavigationType -> PageFrameNavigated)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser PageFrame
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"frame"
    Parser (PageNavigationType -> PageFrameNavigated)
-> Parser PageNavigationType -> Parser PageFrameNavigated
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser PageNavigationType
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"type"
instance Event PageFrameNavigated where
  eventName :: Proxy PageFrameNavigated -> String
eventName Proxy PageFrameNavigated
_ = String
"Page.frameNavigated"

-- | Type of the 'Page.documentOpened' event.
data PageDocumentOpened = PageDocumentOpened
  {
    -- | Frame object.
    PageDocumentOpened -> PageFrame
pageDocumentOpenedFrame :: PageFrame
  }
  deriving (PageDocumentOpened -> PageDocumentOpened -> Bool
(PageDocumentOpened -> PageDocumentOpened -> Bool)
-> (PageDocumentOpened -> PageDocumentOpened -> Bool)
-> Eq PageDocumentOpened
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageDocumentOpened -> PageDocumentOpened -> Bool
$c/= :: PageDocumentOpened -> PageDocumentOpened -> Bool
== :: PageDocumentOpened -> PageDocumentOpened -> Bool
$c== :: PageDocumentOpened -> PageDocumentOpened -> Bool
Eq, Int -> PageDocumentOpened -> ShowS
[PageDocumentOpened] -> ShowS
PageDocumentOpened -> String
(Int -> PageDocumentOpened -> ShowS)
-> (PageDocumentOpened -> String)
-> ([PageDocumentOpened] -> ShowS)
-> Show PageDocumentOpened
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageDocumentOpened] -> ShowS
$cshowList :: [PageDocumentOpened] -> ShowS
show :: PageDocumentOpened -> String
$cshow :: PageDocumentOpened -> String
showsPrec :: Int -> PageDocumentOpened -> ShowS
$cshowsPrec :: Int -> PageDocumentOpened -> ShowS
Show)
instance FromJSON PageDocumentOpened where
  parseJSON :: Value -> Parser PageDocumentOpened
parseJSON = String
-> (Object -> Parser PageDocumentOpened)
-> Value
-> Parser PageDocumentOpened
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageDocumentOpened" ((Object -> Parser PageDocumentOpened)
 -> Value -> Parser PageDocumentOpened)
-> (Object -> Parser PageDocumentOpened)
-> Value
-> Parser PageDocumentOpened
forall a b. (a -> b) -> a -> b
$ \Object
o -> PageFrame -> PageDocumentOpened
PageDocumentOpened
    (PageFrame -> PageDocumentOpened)
-> Parser PageFrame -> Parser PageDocumentOpened
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser PageFrame
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"frame"
instance Event PageDocumentOpened where
  eventName :: Proxy PageDocumentOpened -> String
eventName Proxy PageDocumentOpened
_ = String
"Page.documentOpened"

-- | Type of the 'Page.frameResized' event.
data PageFrameResized = PageFrameResized
  deriving (PageFrameResized -> PageFrameResized -> Bool
(PageFrameResized -> PageFrameResized -> Bool)
-> (PageFrameResized -> PageFrameResized -> Bool)
-> Eq PageFrameResized
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageFrameResized -> PageFrameResized -> Bool
$c/= :: PageFrameResized -> PageFrameResized -> Bool
== :: PageFrameResized -> PageFrameResized -> Bool
$c== :: PageFrameResized -> PageFrameResized -> Bool
Eq, Int -> PageFrameResized -> ShowS
[PageFrameResized] -> ShowS
PageFrameResized -> String
(Int -> PageFrameResized -> ShowS)
-> (PageFrameResized -> String)
-> ([PageFrameResized] -> ShowS)
-> Show PageFrameResized
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageFrameResized] -> ShowS
$cshowList :: [PageFrameResized] -> ShowS
show :: PageFrameResized -> String
$cshow :: PageFrameResized -> String
showsPrec :: Int -> PageFrameResized -> ShowS
$cshowsPrec :: Int -> PageFrameResized -> ShowS
Show, ReadPrec [PageFrameResized]
ReadPrec PageFrameResized
Int -> ReadS PageFrameResized
ReadS [PageFrameResized]
(Int -> ReadS PageFrameResized)
-> ReadS [PageFrameResized]
-> ReadPrec PageFrameResized
-> ReadPrec [PageFrameResized]
-> Read PageFrameResized
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PageFrameResized]
$creadListPrec :: ReadPrec [PageFrameResized]
readPrec :: ReadPrec PageFrameResized
$creadPrec :: ReadPrec PageFrameResized
readList :: ReadS [PageFrameResized]
$creadList :: ReadS [PageFrameResized]
readsPrec :: Int -> ReadS PageFrameResized
$creadsPrec :: Int -> ReadS PageFrameResized
Read)
instance FromJSON PageFrameResized where
  parseJSON :: Value -> Parser PageFrameResized
parseJSON Value
_ = PageFrameResized -> Parser PageFrameResized
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageFrameResized
PageFrameResized
instance Event PageFrameResized where
  eventName :: Proxy PageFrameResized -> String
eventName Proxy PageFrameResized
_ = String
"Page.frameResized"

-- | Type of the 'Page.frameRequestedNavigation' event.
data PageFrameRequestedNavigation = PageFrameRequestedNavigation
  {
    -- | Id of the frame that is being navigated.
    PageFrameRequestedNavigation -> Text
pageFrameRequestedNavigationFrameId :: PageFrameId,
    -- | The reason for the navigation.
    PageFrameRequestedNavigation -> PageClientNavigationReason
pageFrameRequestedNavigationReason :: PageClientNavigationReason,
    -- | The destination URL for the requested navigation.
    PageFrameRequestedNavigation -> Text
pageFrameRequestedNavigationUrl :: T.Text,
    -- | The disposition for the navigation.
    PageFrameRequestedNavigation -> PageClientNavigationDisposition
pageFrameRequestedNavigationDisposition :: PageClientNavigationDisposition
  }
  deriving (PageFrameRequestedNavigation
-> PageFrameRequestedNavigation -> Bool
(PageFrameRequestedNavigation
 -> PageFrameRequestedNavigation -> Bool)
-> (PageFrameRequestedNavigation
    -> PageFrameRequestedNavigation -> Bool)
-> Eq PageFrameRequestedNavigation
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageFrameRequestedNavigation
-> PageFrameRequestedNavigation -> Bool
$c/= :: PageFrameRequestedNavigation
-> PageFrameRequestedNavigation -> Bool
== :: PageFrameRequestedNavigation
-> PageFrameRequestedNavigation -> Bool
$c== :: PageFrameRequestedNavigation
-> PageFrameRequestedNavigation -> Bool
Eq, Int -> PageFrameRequestedNavigation -> ShowS
[PageFrameRequestedNavigation] -> ShowS
PageFrameRequestedNavigation -> String
(Int -> PageFrameRequestedNavigation -> ShowS)
-> (PageFrameRequestedNavigation -> String)
-> ([PageFrameRequestedNavigation] -> ShowS)
-> Show PageFrameRequestedNavigation
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageFrameRequestedNavigation] -> ShowS
$cshowList :: [PageFrameRequestedNavigation] -> ShowS
show :: PageFrameRequestedNavigation -> String
$cshow :: PageFrameRequestedNavigation -> String
showsPrec :: Int -> PageFrameRequestedNavigation -> ShowS
$cshowsPrec :: Int -> PageFrameRequestedNavigation -> ShowS
Show)
instance FromJSON PageFrameRequestedNavigation where
  parseJSON :: Value -> Parser PageFrameRequestedNavigation
parseJSON = String
-> (Object -> Parser PageFrameRequestedNavigation)
-> Value
-> Parser PageFrameRequestedNavigation
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageFrameRequestedNavigation" ((Object -> Parser PageFrameRequestedNavigation)
 -> Value -> Parser PageFrameRequestedNavigation)
-> (Object -> Parser PageFrameRequestedNavigation)
-> Value
-> Parser PageFrameRequestedNavigation
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> PageClientNavigationReason
-> Text
-> PageClientNavigationDisposition
-> PageFrameRequestedNavigation
PageFrameRequestedNavigation
    (Text
 -> PageClientNavigationReason
 -> Text
 -> PageClientNavigationDisposition
 -> PageFrameRequestedNavigation)
-> Parser Text
-> Parser
     (PageClientNavigationReason
      -> Text
      -> PageClientNavigationDisposition
      -> PageFrameRequestedNavigation)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"frameId"
    Parser
  (PageClientNavigationReason
   -> Text
   -> PageClientNavigationDisposition
   -> PageFrameRequestedNavigation)
-> Parser PageClientNavigationReason
-> Parser
     (Text
      -> PageClientNavigationDisposition -> PageFrameRequestedNavigation)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser PageClientNavigationReason
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"reason"
    Parser
  (Text
   -> PageClientNavigationDisposition -> PageFrameRequestedNavigation)
-> Parser Text
-> Parser
     (PageClientNavigationDisposition -> PageFrameRequestedNavigation)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"url"
    Parser
  (PageClientNavigationDisposition -> PageFrameRequestedNavigation)
-> Parser PageClientNavigationDisposition
-> Parser PageFrameRequestedNavigation
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser PageClientNavigationDisposition
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"disposition"
instance Event PageFrameRequestedNavigation where
  eventName :: Proxy PageFrameRequestedNavigation -> String
eventName Proxy PageFrameRequestedNavigation
_ = String
"Page.frameRequestedNavigation"

-- | Type of the 'Page.frameStartedLoading' event.
data PageFrameStartedLoading = PageFrameStartedLoading
  {
    -- | Id of the frame that has started loading.
    PageFrameStartedLoading -> Text
pageFrameStartedLoadingFrameId :: PageFrameId
  }
  deriving (PageFrameStartedLoading -> PageFrameStartedLoading -> Bool
(PageFrameStartedLoading -> PageFrameStartedLoading -> Bool)
-> (PageFrameStartedLoading -> PageFrameStartedLoading -> Bool)
-> Eq PageFrameStartedLoading
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageFrameStartedLoading -> PageFrameStartedLoading -> Bool
$c/= :: PageFrameStartedLoading -> PageFrameStartedLoading -> Bool
== :: PageFrameStartedLoading -> PageFrameStartedLoading -> Bool
$c== :: PageFrameStartedLoading -> PageFrameStartedLoading -> Bool
Eq, Int -> PageFrameStartedLoading -> ShowS
[PageFrameStartedLoading] -> ShowS
PageFrameStartedLoading -> String
(Int -> PageFrameStartedLoading -> ShowS)
-> (PageFrameStartedLoading -> String)
-> ([PageFrameStartedLoading] -> ShowS)
-> Show PageFrameStartedLoading
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageFrameStartedLoading] -> ShowS
$cshowList :: [PageFrameStartedLoading] -> ShowS
show :: PageFrameStartedLoading -> String
$cshow :: PageFrameStartedLoading -> String
showsPrec :: Int -> PageFrameStartedLoading -> ShowS
$cshowsPrec :: Int -> PageFrameStartedLoading -> ShowS
Show)
instance FromJSON PageFrameStartedLoading where
  parseJSON :: Value -> Parser PageFrameStartedLoading
parseJSON = String
-> (Object -> Parser PageFrameStartedLoading)
-> Value
-> Parser PageFrameStartedLoading
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageFrameStartedLoading" ((Object -> Parser PageFrameStartedLoading)
 -> Value -> Parser PageFrameStartedLoading)
-> (Object -> Parser PageFrameStartedLoading)
-> Value
-> Parser PageFrameStartedLoading
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> PageFrameStartedLoading
PageFrameStartedLoading
    (Text -> PageFrameStartedLoading)
-> Parser Text -> Parser PageFrameStartedLoading
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"frameId"
instance Event PageFrameStartedLoading where
  eventName :: Proxy PageFrameStartedLoading -> String
eventName Proxy PageFrameStartedLoading
_ = String
"Page.frameStartedLoading"

-- | Type of the 'Page.frameStoppedLoading' event.
data PageFrameStoppedLoading = PageFrameStoppedLoading
  {
    -- | Id of the frame that has stopped loading.
    PageFrameStoppedLoading -> Text
pageFrameStoppedLoadingFrameId :: PageFrameId
  }
  deriving (PageFrameStoppedLoading -> PageFrameStoppedLoading -> Bool
(PageFrameStoppedLoading -> PageFrameStoppedLoading -> Bool)
-> (PageFrameStoppedLoading -> PageFrameStoppedLoading -> Bool)
-> Eq PageFrameStoppedLoading
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageFrameStoppedLoading -> PageFrameStoppedLoading -> Bool
$c/= :: PageFrameStoppedLoading -> PageFrameStoppedLoading -> Bool
== :: PageFrameStoppedLoading -> PageFrameStoppedLoading -> Bool
$c== :: PageFrameStoppedLoading -> PageFrameStoppedLoading -> Bool
Eq, Int -> PageFrameStoppedLoading -> ShowS
[PageFrameStoppedLoading] -> ShowS
PageFrameStoppedLoading -> String
(Int -> PageFrameStoppedLoading -> ShowS)
-> (PageFrameStoppedLoading -> String)
-> ([PageFrameStoppedLoading] -> ShowS)
-> Show PageFrameStoppedLoading
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageFrameStoppedLoading] -> ShowS
$cshowList :: [PageFrameStoppedLoading] -> ShowS
show :: PageFrameStoppedLoading -> String
$cshow :: PageFrameStoppedLoading -> String
showsPrec :: Int -> PageFrameStoppedLoading -> ShowS
$cshowsPrec :: Int -> PageFrameStoppedLoading -> ShowS
Show)
instance FromJSON PageFrameStoppedLoading where
  parseJSON :: Value -> Parser PageFrameStoppedLoading
parseJSON = String
-> (Object -> Parser PageFrameStoppedLoading)
-> Value
-> Parser PageFrameStoppedLoading
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageFrameStoppedLoading" ((Object -> Parser PageFrameStoppedLoading)
 -> Value -> Parser PageFrameStoppedLoading)
-> (Object -> Parser PageFrameStoppedLoading)
-> Value
-> Parser PageFrameStoppedLoading
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> PageFrameStoppedLoading
PageFrameStoppedLoading
    (Text -> PageFrameStoppedLoading)
-> Parser Text -> Parser PageFrameStoppedLoading
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"frameId"
instance Event PageFrameStoppedLoading where
  eventName :: Proxy PageFrameStoppedLoading -> String
eventName Proxy PageFrameStoppedLoading
_ = String
"Page.frameStoppedLoading"

-- | Type of the 'Page.interstitialHidden' event.
data PageInterstitialHidden = PageInterstitialHidden
  deriving (PageInterstitialHidden -> PageInterstitialHidden -> Bool
(PageInterstitialHidden -> PageInterstitialHidden -> Bool)
-> (PageInterstitialHidden -> PageInterstitialHidden -> Bool)
-> Eq PageInterstitialHidden
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageInterstitialHidden -> PageInterstitialHidden -> Bool
$c/= :: PageInterstitialHidden -> PageInterstitialHidden -> Bool
== :: PageInterstitialHidden -> PageInterstitialHidden -> Bool
$c== :: PageInterstitialHidden -> PageInterstitialHidden -> Bool
Eq, Int -> PageInterstitialHidden -> ShowS
[PageInterstitialHidden] -> ShowS
PageInterstitialHidden -> String
(Int -> PageInterstitialHidden -> ShowS)
-> (PageInterstitialHidden -> String)
-> ([PageInterstitialHidden] -> ShowS)
-> Show PageInterstitialHidden
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageInterstitialHidden] -> ShowS
$cshowList :: [PageInterstitialHidden] -> ShowS
show :: PageInterstitialHidden -> String
$cshow :: PageInterstitialHidden -> String
showsPrec :: Int -> PageInterstitialHidden -> ShowS
$cshowsPrec :: Int -> PageInterstitialHidden -> ShowS
Show, ReadPrec [PageInterstitialHidden]
ReadPrec PageInterstitialHidden
Int -> ReadS PageInterstitialHidden
ReadS [PageInterstitialHidden]
(Int -> ReadS PageInterstitialHidden)
-> ReadS [PageInterstitialHidden]
-> ReadPrec PageInterstitialHidden
-> ReadPrec [PageInterstitialHidden]
-> Read PageInterstitialHidden
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PageInterstitialHidden]
$creadListPrec :: ReadPrec [PageInterstitialHidden]
readPrec :: ReadPrec PageInterstitialHidden
$creadPrec :: ReadPrec PageInterstitialHidden
readList :: ReadS [PageInterstitialHidden]
$creadList :: ReadS [PageInterstitialHidden]
readsPrec :: Int -> ReadS PageInterstitialHidden
$creadsPrec :: Int -> ReadS PageInterstitialHidden
Read)
instance FromJSON PageInterstitialHidden where
  parseJSON :: Value -> Parser PageInterstitialHidden
parseJSON Value
_ = PageInterstitialHidden -> Parser PageInterstitialHidden
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageInterstitialHidden
PageInterstitialHidden
instance Event PageInterstitialHidden where
  eventName :: Proxy PageInterstitialHidden -> String
eventName Proxy PageInterstitialHidden
_ = String
"Page.interstitialHidden"

-- | Type of the 'Page.interstitialShown' event.
data PageInterstitialShown = PageInterstitialShown
  deriving (PageInterstitialShown -> PageInterstitialShown -> Bool
(PageInterstitialShown -> PageInterstitialShown -> Bool)
-> (PageInterstitialShown -> PageInterstitialShown -> Bool)
-> Eq PageInterstitialShown
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageInterstitialShown -> PageInterstitialShown -> Bool
$c/= :: PageInterstitialShown -> PageInterstitialShown -> Bool
== :: PageInterstitialShown -> PageInterstitialShown -> Bool
$c== :: PageInterstitialShown -> PageInterstitialShown -> Bool
Eq, Int -> PageInterstitialShown -> ShowS
[PageInterstitialShown] -> ShowS
PageInterstitialShown -> String
(Int -> PageInterstitialShown -> ShowS)
-> (PageInterstitialShown -> String)
-> ([PageInterstitialShown] -> ShowS)
-> Show PageInterstitialShown
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageInterstitialShown] -> ShowS
$cshowList :: [PageInterstitialShown] -> ShowS
show :: PageInterstitialShown -> String
$cshow :: PageInterstitialShown -> String
showsPrec :: Int -> PageInterstitialShown -> ShowS
$cshowsPrec :: Int -> PageInterstitialShown -> ShowS
Show, ReadPrec [PageInterstitialShown]
ReadPrec PageInterstitialShown
Int -> ReadS PageInterstitialShown
ReadS [PageInterstitialShown]
(Int -> ReadS PageInterstitialShown)
-> ReadS [PageInterstitialShown]
-> ReadPrec PageInterstitialShown
-> ReadPrec [PageInterstitialShown]
-> Read PageInterstitialShown
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PageInterstitialShown]
$creadListPrec :: ReadPrec [PageInterstitialShown]
readPrec :: ReadPrec PageInterstitialShown
$creadPrec :: ReadPrec PageInterstitialShown
readList :: ReadS [PageInterstitialShown]
$creadList :: ReadS [PageInterstitialShown]
readsPrec :: Int -> ReadS PageInterstitialShown
$creadsPrec :: Int -> ReadS PageInterstitialShown
Read)
instance FromJSON PageInterstitialShown where
  parseJSON :: Value -> Parser PageInterstitialShown
parseJSON Value
_ = PageInterstitialShown -> Parser PageInterstitialShown
forall (f :: * -> *) a. Applicative f => a -> f a
pure PageInterstitialShown
PageInterstitialShown
instance Event PageInterstitialShown where
  eventName :: Proxy PageInterstitialShown -> String
eventName Proxy PageInterstitialShown
_ = String
"Page.interstitialShown"

-- | Type of the 'Page.javascriptDialogClosed' event.
data PageJavascriptDialogClosed = PageJavascriptDialogClosed
  {
    -- | Whether dialog was confirmed.
    PageJavascriptDialogClosed -> Bool
pageJavascriptDialogClosedResult :: Bool,
    -- | User input in case of prompt.
    PageJavascriptDialogClosed -> Text
pageJavascriptDialogClosedUserInput :: T.Text
  }
  deriving (PageJavascriptDialogClosed -> PageJavascriptDialogClosed -> Bool
(PageJavascriptDialogClosed -> PageJavascriptDialogClosed -> Bool)
-> (PageJavascriptDialogClosed
    -> PageJavascriptDialogClosed -> Bool)
-> Eq PageJavascriptDialogClosed
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageJavascriptDialogClosed -> PageJavascriptDialogClosed -> Bool
$c/= :: PageJavascriptDialogClosed -> PageJavascriptDialogClosed -> Bool
== :: PageJavascriptDialogClosed -> PageJavascriptDialogClosed -> Bool
$c== :: PageJavascriptDialogClosed -> PageJavascriptDialogClosed -> Bool
Eq, Int -> PageJavascriptDialogClosed -> ShowS
[PageJavascriptDialogClosed] -> ShowS
PageJavascriptDialogClosed -> String
(Int -> PageJavascriptDialogClosed -> ShowS)
-> (PageJavascriptDialogClosed -> String)
-> ([PageJavascriptDialogClosed] -> ShowS)
-> Show PageJavascriptDialogClosed
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageJavascriptDialogClosed] -> ShowS
$cshowList :: [PageJavascriptDialogClosed] -> ShowS
show :: PageJavascriptDialogClosed -> String
$cshow :: PageJavascriptDialogClosed -> String
showsPrec :: Int -> PageJavascriptDialogClosed -> ShowS
$cshowsPrec :: Int -> PageJavascriptDialogClosed -> ShowS
Show)
instance FromJSON PageJavascriptDialogClosed where
  parseJSON :: Value -> Parser PageJavascriptDialogClosed
parseJSON = String
-> (Object -> Parser PageJavascriptDialogClosed)
-> Value
-> Parser PageJavascriptDialogClosed
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageJavascriptDialogClosed" ((Object -> Parser PageJavascriptDialogClosed)
 -> Value -> Parser PageJavascriptDialogClosed)
-> (Object -> Parser PageJavascriptDialogClosed)
-> Value
-> Parser PageJavascriptDialogClosed
forall a b. (a -> b) -> a -> b
$ \Object
o -> Bool -> Text -> PageJavascriptDialogClosed
PageJavascriptDialogClosed
    (Bool -> Text -> PageJavascriptDialogClosed)
-> Parser Bool -> Parser (Text -> PageJavascriptDialogClosed)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Bool
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"result"
    Parser (Text -> PageJavascriptDialogClosed)
-> Parser Text -> Parser PageJavascriptDialogClosed
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"userInput"
instance Event PageJavascriptDialogClosed where
  eventName :: Proxy PageJavascriptDialogClosed -> String
eventName Proxy PageJavascriptDialogClosed
_ = String
"Page.javascriptDialogClosed"

-- | Type of the 'Page.javascriptDialogOpening' event.
data PageJavascriptDialogOpening = PageJavascriptDialogOpening
  {
    -- | Frame url.
    PageJavascriptDialogOpening -> Text
pageJavascriptDialogOpeningUrl :: T.Text,
    -- | Message that will be displayed by the dialog.
    PageJavascriptDialogOpening -> Text
pageJavascriptDialogOpeningMessage :: T.Text,
    -- | Dialog type.
    PageJavascriptDialogOpening -> PageDialogType
pageJavascriptDialogOpeningType :: PageDialogType,
    -- | True iff browser is capable showing or acting on the given dialog. When browser has no
    --   dialog handler for given target, calling alert while Page domain is engaged will stall
    --   the page execution. Execution can be resumed via calling Page.handleJavaScriptDialog.
    PageJavascriptDialogOpening -> Bool
pageJavascriptDialogOpeningHasBrowserHandler :: Bool,
    -- | Default dialog prompt.
    PageJavascriptDialogOpening -> Maybe Text
pageJavascriptDialogOpeningDefaultPrompt :: Maybe T.Text
  }
  deriving (PageJavascriptDialogOpening -> PageJavascriptDialogOpening -> Bool
(PageJavascriptDialogOpening
 -> PageJavascriptDialogOpening -> Bool)
-> (PageJavascriptDialogOpening
    -> PageJavascriptDialogOpening -> Bool)
-> Eq PageJavascriptDialogOpening
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageJavascriptDialogOpening -> PageJavascriptDialogOpening -> Bool
$c/= :: PageJavascriptDialogOpening -> PageJavascriptDialogOpening -> Bool
== :: PageJavascriptDialogOpening -> PageJavascriptDialogOpening -> Bool
$c== :: PageJavascriptDialogOpening -> PageJavascriptDialogOpening -> Bool
Eq, Int -> PageJavascriptDialogOpening -> ShowS
[PageJavascriptDialogOpening] -> ShowS
PageJavascriptDialogOpening -> String
(Int -> PageJavascriptDialogOpening -> ShowS)
-> (PageJavascriptDialogOpening -> String)
-> ([PageJavascriptDialogOpening] -> ShowS)
-> Show PageJavascriptDialogOpening
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageJavascriptDialogOpening] -> ShowS
$cshowList :: [PageJavascriptDialogOpening] -> ShowS
show :: PageJavascriptDialogOpening -> String
$cshow :: PageJavascriptDialogOpening -> String
showsPrec :: Int -> PageJavascriptDialogOpening -> ShowS
$cshowsPrec :: Int -> PageJavascriptDialogOpening -> ShowS
Show)
instance FromJSON PageJavascriptDialogOpening where
  parseJSON :: Value -> Parser PageJavascriptDialogOpening
parseJSON = String
-> (Object -> Parser PageJavascriptDialogOpening)
-> Value
-> Parser PageJavascriptDialogOpening
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageJavascriptDialogOpening" ((Object -> Parser PageJavascriptDialogOpening)
 -> Value -> Parser PageJavascriptDialogOpening)
-> (Object -> Parser PageJavascriptDialogOpening)
-> Value
-> Parser PageJavascriptDialogOpening
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> Text
-> PageDialogType
-> Bool
-> Maybe Text
-> PageJavascriptDialogOpening
PageJavascriptDialogOpening
    (Text
 -> Text
 -> PageDialogType
 -> Bool
 -> Maybe Text
 -> PageJavascriptDialogOpening)
-> Parser Text
-> Parser
     (Text
      -> PageDialogType
      -> Bool
      -> Maybe Text
      -> PageJavascriptDialogOpening)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"url"
    Parser
  (Text
   -> PageDialogType
   -> Bool
   -> Maybe Text
   -> PageJavascriptDialogOpening)
-> Parser Text
-> Parser
     (PageDialogType
      -> Bool -> Maybe Text -> PageJavascriptDialogOpening)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"message"
    Parser
  (PageDialogType
   -> Bool -> Maybe Text -> PageJavascriptDialogOpening)
-> Parser PageDialogType
-> Parser (Bool -> Maybe Text -> PageJavascriptDialogOpening)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser PageDialogType
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"type"
    Parser (Bool -> Maybe Text -> PageJavascriptDialogOpening)
-> Parser Bool
-> Parser (Maybe Text -> PageJavascriptDialogOpening)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Bool
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"hasBrowserHandler"
    Parser (Maybe Text -> PageJavascriptDialogOpening)
-> Parser (Maybe Text) -> Parser PageJavascriptDialogOpening
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"defaultPrompt"
instance Event PageJavascriptDialogOpening where
  eventName :: Proxy PageJavascriptDialogOpening -> String
eventName Proxy PageJavascriptDialogOpening
_ = String
"Page.javascriptDialogOpening"

-- | Type of the 'Page.lifecycleEvent' event.
data PageLifecycleEvent = PageLifecycleEvent
  {
    -- | Id of the frame.
    PageLifecycleEvent -> Text
pageLifecycleEventFrameId :: PageFrameId,
    -- | Loader identifier. Empty string if the request is fetched from worker.
    PageLifecycleEvent -> Text
pageLifecycleEventLoaderId :: NetworkLoaderId,
    PageLifecycleEvent -> Text
pageLifecycleEventName :: T.Text,
    PageLifecycleEvent -> Double
pageLifecycleEventTimestamp :: NetworkMonotonicTime
  }
  deriving (PageLifecycleEvent -> PageLifecycleEvent -> Bool
(PageLifecycleEvent -> PageLifecycleEvent -> Bool)
-> (PageLifecycleEvent -> PageLifecycleEvent -> Bool)
-> Eq PageLifecycleEvent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageLifecycleEvent -> PageLifecycleEvent -> Bool
$c/= :: PageLifecycleEvent -> PageLifecycleEvent -> Bool
== :: PageLifecycleEvent -> PageLifecycleEvent -> Bool
$c== :: PageLifecycleEvent -> PageLifecycleEvent -> Bool
Eq, Int -> PageLifecycleEvent -> ShowS
[PageLifecycleEvent] -> ShowS
PageLifecycleEvent -> String
(Int -> PageLifecycleEvent -> ShowS)
-> (PageLifecycleEvent -> String)
-> ([PageLifecycleEvent] -> ShowS)
-> Show PageLifecycleEvent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageLifecycleEvent] -> ShowS
$cshowList :: [PageLifecycleEvent] -> ShowS
show :: PageLifecycleEvent -> String
$cshow :: PageLifecycleEvent -> String
showsPrec :: Int -> PageLifecycleEvent -> ShowS
$cshowsPrec :: Int -> PageLifecycleEvent -> ShowS
Show)
instance FromJSON PageLifecycleEvent where
  parseJSON :: Value -> Parser PageLifecycleEvent
parseJSON = String
-> (Object -> Parser PageLifecycleEvent)
-> Value
-> Parser PageLifecycleEvent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageLifecycleEvent" ((Object -> Parser PageLifecycleEvent)
 -> Value -> Parser PageLifecycleEvent)
-> (Object -> Parser PageLifecycleEvent)
-> Value
-> Parser PageLifecycleEvent
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> Text -> Text -> Double -> PageLifecycleEvent
PageLifecycleEvent
    (Text -> Text -> Text -> Double -> PageLifecycleEvent)
-> Parser Text
-> Parser (Text -> Text -> Double -> PageLifecycleEvent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"frameId"
    Parser (Text -> Text -> Double -> PageLifecycleEvent)
-> Parser Text -> Parser (Text -> Double -> PageLifecycleEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"loaderId"
    Parser (Text -> Double -> PageLifecycleEvent)
-> Parser Text -> Parser (Double -> PageLifecycleEvent)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"name"
    Parser (Double -> PageLifecycleEvent)
-> Parser Double -> Parser PageLifecycleEvent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"timestamp"
instance Event PageLifecycleEvent where
  eventName :: Proxy PageLifecycleEvent -> String
eventName Proxy PageLifecycleEvent
_ = String
"Page.lifecycleEvent"

-- | Type of the 'Page.backForwardCacheNotUsed' event.
data PageBackForwardCacheNotUsed = PageBackForwardCacheNotUsed
  {
    -- | The loader id for the associated navgation.
    PageBackForwardCacheNotUsed -> Text
pageBackForwardCacheNotUsedLoaderId :: NetworkLoaderId,
    -- | The frame id of the associated frame.
    PageBackForwardCacheNotUsed -> Text
pageBackForwardCacheNotUsedFrameId :: PageFrameId,
    -- | Array of reasons why the page could not be cached. This must not be empty.
    PageBackForwardCacheNotUsed
-> [PageBackForwardCacheNotRestoredExplanation]
pageBackForwardCacheNotUsedNotRestoredExplanations :: [PageBackForwardCacheNotRestoredExplanation],
    -- | Tree structure of reasons why the page could not be cached for each frame.
    PageBackForwardCacheNotUsed
-> Maybe PageBackForwardCacheNotRestoredExplanationTree
pageBackForwardCacheNotUsedNotRestoredExplanationsTree :: Maybe PageBackForwardCacheNotRestoredExplanationTree
  }
  deriving (PageBackForwardCacheNotUsed -> PageBackForwardCacheNotUsed -> Bool
(PageBackForwardCacheNotUsed
 -> PageBackForwardCacheNotUsed -> Bool)
-> (PageBackForwardCacheNotUsed
    -> PageBackForwardCacheNotUsed -> Bool)
-> Eq PageBackForwardCacheNotUsed
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageBackForwardCacheNotUsed -> PageBackForwardCacheNotUsed -> Bool
$c/= :: PageBackForwardCacheNotUsed -> PageBackForwardCacheNotUsed -> Bool
== :: PageBackForwardCacheNotUsed -> PageBackForwardCacheNotUsed -> Bool
$c== :: PageBackForwardCacheNotUsed -> PageBackForwardCacheNotUsed -> Bool
Eq, Int -> PageBackForwardCacheNotUsed -> ShowS
[PageBackForwardCacheNotUsed] -> ShowS
PageBackForwardCacheNotUsed -> String
(Int -> PageBackForwardCacheNotUsed -> ShowS)
-> (PageBackForwardCacheNotUsed -> String)
-> ([PageBackForwardCacheNotUsed] -> ShowS)
-> Show PageBackForwardCacheNotUsed
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageBackForwardCacheNotUsed] -> ShowS
$cshowList :: [PageBackForwardCacheNotUsed] -> ShowS
show :: PageBackForwardCacheNotUsed -> String
$cshow :: PageBackForwardCacheNotUsed -> String
showsPrec :: Int -> PageBackForwardCacheNotUsed -> ShowS
$cshowsPrec :: Int -> PageBackForwardCacheNotUsed -> ShowS
Show)
instance FromJSON PageBackForwardCacheNotUsed where
  parseJSON :: Value -> Parser PageBackForwardCacheNotUsed
parseJSON = String
-> (Object -> Parser PageBackForwardCacheNotUsed)
-> Value
-> Parser PageBackForwardCacheNotUsed
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageBackForwardCacheNotUsed" ((Object -> Parser PageBackForwardCacheNotUsed)
 -> Value -> Parser PageBackForwardCacheNotUsed)
-> (Object -> Parser PageBackForwardCacheNotUsed)
-> Value
-> Parser PageBackForwardCacheNotUsed
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> Text
-> [PageBackForwardCacheNotRestoredExplanation]
-> Maybe PageBackForwardCacheNotRestoredExplanationTree
-> PageBackForwardCacheNotUsed
PageBackForwardCacheNotUsed
    (Text
 -> Text
 -> [PageBackForwardCacheNotRestoredExplanation]
 -> Maybe PageBackForwardCacheNotRestoredExplanationTree
 -> PageBackForwardCacheNotUsed)
-> Parser Text
-> Parser
     (Text
      -> [PageBackForwardCacheNotRestoredExplanation]
      -> Maybe PageBackForwardCacheNotRestoredExplanationTree
      -> PageBackForwardCacheNotUsed)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"loaderId"
    Parser
  (Text
   -> [PageBackForwardCacheNotRestoredExplanation]
   -> Maybe PageBackForwardCacheNotRestoredExplanationTree
   -> PageBackForwardCacheNotUsed)
-> Parser Text
-> Parser
     ([PageBackForwardCacheNotRestoredExplanation]
      -> Maybe PageBackForwardCacheNotRestoredExplanationTree
      -> PageBackForwardCacheNotUsed)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"frameId"
    Parser
  ([PageBackForwardCacheNotRestoredExplanation]
   -> Maybe PageBackForwardCacheNotRestoredExplanationTree
   -> PageBackForwardCacheNotUsed)
-> Parser [PageBackForwardCacheNotRestoredExplanation]
-> Parser
     (Maybe PageBackForwardCacheNotRestoredExplanationTree
      -> PageBackForwardCacheNotUsed)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object
-> Text -> Parser [PageBackForwardCacheNotRestoredExplanation]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"notRestoredExplanations"
    Parser
  (Maybe PageBackForwardCacheNotRestoredExplanationTree
   -> PageBackForwardCacheNotUsed)
-> Parser (Maybe PageBackForwardCacheNotRestoredExplanationTree)
-> Parser PageBackForwardCacheNotUsed
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object
-> Text
-> Parser (Maybe PageBackForwardCacheNotRestoredExplanationTree)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"notRestoredExplanationsTree"
instance Event PageBackForwardCacheNotUsed where
  eventName :: Proxy PageBackForwardCacheNotUsed -> String
eventName Proxy PageBackForwardCacheNotUsed
_ = String
"Page.backForwardCacheNotUsed"

-- | Type of the 'Page.prerenderAttemptCompleted' event.
data PagePrerenderAttemptCompleted = PagePrerenderAttemptCompleted
  {
    -- | The frame id of the frame initiating prerendering.
    PagePrerenderAttemptCompleted -> Text
pagePrerenderAttemptCompletedInitiatingFrameId :: PageFrameId,
    PagePrerenderAttemptCompleted -> Text
pagePrerenderAttemptCompletedPrerenderingUrl :: T.Text,
    PagePrerenderAttemptCompleted -> PagePrerenderFinalStatus
pagePrerenderAttemptCompletedFinalStatus :: PagePrerenderFinalStatus,
    -- | This is used to give users more information about the name of the API call
    --   that is incompatible with prerender and has caused the cancellation of the attempt
    PagePrerenderAttemptCompleted -> Maybe Text
pagePrerenderAttemptCompletedDisallowedApiMethod :: Maybe T.Text
  }
  deriving (PagePrerenderAttemptCompleted
-> PagePrerenderAttemptCompleted -> Bool
(PagePrerenderAttemptCompleted
 -> PagePrerenderAttemptCompleted -> Bool)
-> (PagePrerenderAttemptCompleted
    -> PagePrerenderAttemptCompleted -> Bool)
-> Eq PagePrerenderAttemptCompleted
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PagePrerenderAttemptCompleted
-> PagePrerenderAttemptCompleted -> Bool
$c/= :: PagePrerenderAttemptCompleted
-> PagePrerenderAttemptCompleted -> Bool
== :: PagePrerenderAttemptCompleted
-> PagePrerenderAttemptCompleted -> Bool
$c== :: PagePrerenderAttemptCompleted
-> PagePrerenderAttemptCompleted -> Bool
Eq, Int -> PagePrerenderAttemptCompleted -> ShowS
[PagePrerenderAttemptCompleted] -> ShowS
PagePrerenderAttemptCompleted -> String
(Int -> PagePrerenderAttemptCompleted -> ShowS)
-> (PagePrerenderAttemptCompleted -> String)
-> ([PagePrerenderAttemptCompleted] -> ShowS)
-> Show PagePrerenderAttemptCompleted
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PagePrerenderAttemptCompleted] -> ShowS
$cshowList :: [PagePrerenderAttemptCompleted] -> ShowS
show :: PagePrerenderAttemptCompleted -> String
$cshow :: PagePrerenderAttemptCompleted -> String
showsPrec :: Int -> PagePrerenderAttemptCompleted -> ShowS
$cshowsPrec :: Int -> PagePrerenderAttemptCompleted -> ShowS
Show)
instance FromJSON PagePrerenderAttemptCompleted where
  parseJSON :: Value -> Parser PagePrerenderAttemptCompleted
parseJSON = String
-> (Object -> Parser PagePrerenderAttemptCompleted)
-> Value
-> Parser PagePrerenderAttemptCompleted
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PagePrerenderAttemptCompleted" ((Object -> Parser PagePrerenderAttemptCompleted)
 -> Value -> Parser PagePrerenderAttemptCompleted)
-> (Object -> Parser PagePrerenderAttemptCompleted)
-> Value
-> Parser PagePrerenderAttemptCompleted
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> Text
-> PagePrerenderFinalStatus
-> Maybe Text
-> PagePrerenderAttemptCompleted
PagePrerenderAttemptCompleted
    (Text
 -> Text
 -> PagePrerenderFinalStatus
 -> Maybe Text
 -> PagePrerenderAttemptCompleted)
-> Parser Text
-> Parser
     (Text
      -> PagePrerenderFinalStatus
      -> Maybe Text
      -> PagePrerenderAttemptCompleted)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"initiatingFrameId"
    Parser
  (Text
   -> PagePrerenderFinalStatus
   -> Maybe Text
   -> PagePrerenderAttemptCompleted)
-> Parser Text
-> Parser
     (PagePrerenderFinalStatus
      -> Maybe Text -> PagePrerenderAttemptCompleted)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"prerenderingUrl"
    Parser
  (PagePrerenderFinalStatus
   -> Maybe Text -> PagePrerenderAttemptCompleted)
-> Parser PagePrerenderFinalStatus
-> Parser (Maybe Text -> PagePrerenderAttemptCompleted)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser PagePrerenderFinalStatus
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"finalStatus"
    Parser (Maybe Text -> PagePrerenderAttemptCompleted)
-> Parser (Maybe Text) -> Parser PagePrerenderAttemptCompleted
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"disallowedApiMethod"
instance Event PagePrerenderAttemptCompleted where
  eventName :: Proxy PagePrerenderAttemptCompleted -> String
eventName Proxy PagePrerenderAttemptCompleted
_ = String
"Page.prerenderAttemptCompleted"

-- | Type of the 'Page.loadEventFired' event.
data PageLoadEventFired = PageLoadEventFired
  {
    PageLoadEventFired -> Double
pageLoadEventFiredTimestamp :: NetworkMonotonicTime
  }
  deriving (PageLoadEventFired -> PageLoadEventFired -> Bool
(PageLoadEventFired -> PageLoadEventFired -> Bool)
-> (PageLoadEventFired -> PageLoadEventFired -> Bool)
-> Eq PageLoadEventFired
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageLoadEventFired -> PageLoadEventFired -> Bool
$c/= :: PageLoadEventFired -> PageLoadEventFired -> Bool
== :: PageLoadEventFired -> PageLoadEventFired -> Bool
$c== :: PageLoadEventFired -> PageLoadEventFired -> Bool
Eq, Int -> PageLoadEventFired -> ShowS
[PageLoadEventFired] -> ShowS
PageLoadEventFired -> String
(Int -> PageLoadEventFired -> ShowS)
-> (PageLoadEventFired -> String)
-> ([PageLoadEventFired] -> ShowS)
-> Show PageLoadEventFired
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageLoadEventFired] -> ShowS
$cshowList :: [PageLoadEventFired] -> ShowS
show :: PageLoadEventFired -> String
$cshow :: PageLoadEventFired -> String
showsPrec :: Int -> PageLoadEventFired -> ShowS
$cshowsPrec :: Int -> PageLoadEventFired -> ShowS
Show)
instance FromJSON PageLoadEventFired where
  parseJSON :: Value -> Parser PageLoadEventFired
parseJSON = String
-> (Object -> Parser PageLoadEventFired)
-> Value
-> Parser PageLoadEventFired
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageLoadEventFired" ((Object -> Parser PageLoadEventFired)
 -> Value -> Parser PageLoadEventFired)
-> (Object -> Parser PageLoadEventFired)
-> Value
-> Parser PageLoadEventFired
forall a b. (a -> b) -> a -> b
$ \Object
o -> Double -> PageLoadEventFired
PageLoadEventFired
    (Double -> PageLoadEventFired)
-> Parser Double -> Parser PageLoadEventFired
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"timestamp"
instance Event PageLoadEventFired where
  eventName :: Proxy PageLoadEventFired -> String
eventName Proxy PageLoadEventFired
_ = String
"Page.loadEventFired"

-- | Type of the 'Page.navigatedWithinDocument' event.
data PageNavigatedWithinDocument = PageNavigatedWithinDocument
  {
    -- | Id of the frame.
    PageNavigatedWithinDocument -> Text
pageNavigatedWithinDocumentFrameId :: PageFrameId,
    -- | Frame's new url.
    PageNavigatedWithinDocument -> Text
pageNavigatedWithinDocumentUrl :: T.Text
  }
  deriving (PageNavigatedWithinDocument -> PageNavigatedWithinDocument -> Bool
(PageNavigatedWithinDocument
 -> PageNavigatedWithinDocument -> Bool)
-> (PageNavigatedWithinDocument
    -> PageNavigatedWithinDocument -> Bool)
-> Eq PageNavigatedWithinDocument
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageNavigatedWithinDocument -> PageNavigatedWithinDocument -> Bool
$c/= :: PageNavigatedWithinDocument -> PageNavigatedWithinDocument -> Bool
== :: PageNavigatedWithinDocument -> PageNavigatedWithinDocument -> Bool
$c== :: PageNavigatedWithinDocument -> PageNavigatedWithinDocument -> Bool
Eq, Int -> PageNavigatedWithinDocument -> ShowS
[PageNavigatedWithinDocument] -> ShowS
PageNavigatedWithinDocument -> String
(Int -> PageNavigatedWithinDocument -> ShowS)
-> (PageNavigatedWithinDocument -> String)
-> ([PageNavigatedWithinDocument] -> ShowS)
-> Show PageNavigatedWithinDocument
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageNavigatedWithinDocument] -> ShowS
$cshowList :: [PageNavigatedWithinDocument] -> ShowS
show :: PageNavigatedWithinDocument -> String
$cshow :: PageNavigatedWithinDocument -> String
showsPrec :: Int -> PageNavigatedWithinDocument -> ShowS
$cshowsPrec :: Int -> PageNavigatedWithinDocument -> ShowS
Show)
instance FromJSON PageNavigatedWithinDocument where
  parseJSON :: Value -> Parser PageNavigatedWithinDocument
parseJSON = String
-> (Object -> Parser PageNavigatedWithinDocument)
-> Value
-> Parser PageNavigatedWithinDocument
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageNavigatedWithinDocument" ((Object -> Parser PageNavigatedWithinDocument)
 -> Value -> Parser PageNavigatedWithinDocument)
-> (Object -> Parser PageNavigatedWithinDocument)
-> Value
-> Parser PageNavigatedWithinDocument
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> Text -> PageNavigatedWithinDocument
PageNavigatedWithinDocument
    (Text -> Text -> PageNavigatedWithinDocument)
-> Parser Text -> Parser (Text -> PageNavigatedWithinDocument)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"frameId"
    Parser (Text -> PageNavigatedWithinDocument)
-> Parser Text -> Parser PageNavigatedWithinDocument
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"url"
instance Event PageNavigatedWithinDocument where
  eventName :: Proxy PageNavigatedWithinDocument -> String
eventName Proxy PageNavigatedWithinDocument
_ = String
"Page.navigatedWithinDocument"

-- | Type of the 'Page.screencastFrame' event.
data PageScreencastFrame = PageScreencastFrame
  {
    -- | Base64-encoded compressed image. (Encoded as a base64 string when passed over JSON)
    PageScreencastFrame -> Text
pageScreencastFrameData :: T.Text,
    -- | Screencast frame metadata.
    PageScreencastFrame -> PageScreencastFrameMetadata
pageScreencastFrameMetadata :: PageScreencastFrameMetadata,
    -- | Frame number.
    PageScreencastFrame -> Int
pageScreencastFrameSessionId :: Int
  }
  deriving (PageScreencastFrame -> PageScreencastFrame -> Bool
(PageScreencastFrame -> PageScreencastFrame -> Bool)
-> (PageScreencastFrame -> PageScreencastFrame -> Bool)
-> Eq PageScreencastFrame
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageScreencastFrame -> PageScreencastFrame -> Bool
$c/= :: PageScreencastFrame -> PageScreencastFrame -> Bool
== :: PageScreencastFrame -> PageScreencastFrame -> Bool
$c== :: PageScreencastFrame -> PageScreencastFrame -> Bool
Eq, Int -> PageScreencastFrame -> ShowS
[PageScreencastFrame] -> ShowS
PageScreencastFrame -> String
(Int -> PageScreencastFrame -> ShowS)
-> (PageScreencastFrame -> String)
-> ([PageScreencastFrame] -> ShowS)
-> Show PageScreencastFrame
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageScreencastFrame] -> ShowS
$cshowList :: [PageScreencastFrame] -> ShowS
show :: PageScreencastFrame -> String
$cshow :: PageScreencastFrame -> String
showsPrec :: Int -> PageScreencastFrame -> ShowS
$cshowsPrec :: Int -> PageScreencastFrame -> ShowS
Show)
instance FromJSON PageScreencastFrame where
  parseJSON :: Value -> Parser PageScreencastFrame
parseJSON = String
-> (Object -> Parser PageScreencastFrame)
-> Value
-> Parser PageScreencastFrame
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageScreencastFrame" ((Object -> Parser PageScreencastFrame)
 -> Value -> Parser PageScreencastFrame)
-> (Object -> Parser PageScreencastFrame)
-> Value
-> Parser PageScreencastFrame
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> PageScreencastFrameMetadata -> Int -> PageScreencastFrame
PageScreencastFrame
    (Text -> PageScreencastFrameMetadata -> Int -> PageScreencastFrame)
-> Parser Text
-> Parser
     (PageScreencastFrameMetadata -> Int -> PageScreencastFrame)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"data"
    Parser (PageScreencastFrameMetadata -> Int -> PageScreencastFrame)
-> Parser PageScreencastFrameMetadata
-> Parser (Int -> PageScreencastFrame)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser PageScreencastFrameMetadata
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"metadata"
    Parser (Int -> PageScreencastFrame)
-> Parser Int -> Parser PageScreencastFrame
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"sessionId"
instance Event PageScreencastFrame where
  eventName :: Proxy PageScreencastFrame -> String
eventName Proxy PageScreencastFrame
_ = String
"Page.screencastFrame"

-- | Type of the 'Page.screencastVisibilityChanged' event.
data PageScreencastVisibilityChanged = PageScreencastVisibilityChanged
  {
    -- | True if the page is visible.
    PageScreencastVisibilityChanged -> Bool
pageScreencastVisibilityChangedVisible :: Bool
  }
  deriving (PageScreencastVisibilityChanged
-> PageScreencastVisibilityChanged -> Bool
(PageScreencastVisibilityChanged
 -> PageScreencastVisibilityChanged -> Bool)
-> (PageScreencastVisibilityChanged
    -> PageScreencastVisibilityChanged -> Bool)
-> Eq PageScreencastVisibilityChanged
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageScreencastVisibilityChanged
-> PageScreencastVisibilityChanged -> Bool
$c/= :: PageScreencastVisibilityChanged
-> PageScreencastVisibilityChanged -> Bool
== :: PageScreencastVisibilityChanged
-> PageScreencastVisibilityChanged -> Bool
$c== :: PageScreencastVisibilityChanged
-> PageScreencastVisibilityChanged -> Bool
Eq, Int -> PageScreencastVisibilityChanged -> ShowS
[PageScreencastVisibilityChanged] -> ShowS
PageScreencastVisibilityChanged -> String
(Int -> PageScreencastVisibilityChanged -> ShowS)
-> (PageScreencastVisibilityChanged -> String)
-> ([PageScreencastVisibilityChanged] -> ShowS)
-> Show PageScreencastVisibilityChanged
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageScreencastVisibilityChanged] -> ShowS
$cshowList :: [PageScreencastVisibilityChanged] -> ShowS
show :: PageScreencastVisibilityChanged -> String
$cshow :: PageScreencastVisibilityChanged -> String
showsPrec :: Int -> PageScreencastVisibilityChanged -> ShowS
$cshowsPrec :: Int -> PageScreencastVisibilityChanged -> ShowS
Show)
instance FromJSON PageScreencastVisibilityChanged where
  parseJSON :: Value -> Parser PageScreencastVisibilityChanged
parseJSON = String
-> (Object -> Parser PageScreencastVisibilityChanged)
-> Value
-> Parser PageScreencastVisibilityChanged
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageScreencastVisibilityChanged" ((Object -> Parser PageScreencastVisibilityChanged)
 -> Value -> Parser PageScreencastVisibilityChanged)
-> (Object -> Parser PageScreencastVisibilityChanged)
-> Value
-> Parser PageScreencastVisibilityChanged
forall a b. (a -> b) -> a -> b
$ \Object
o -> Bool -> PageScreencastVisibilityChanged
PageScreencastVisibilityChanged
    (Bool -> PageScreencastVisibilityChanged)
-> Parser Bool -> Parser PageScreencastVisibilityChanged
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Bool
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"visible"
instance Event PageScreencastVisibilityChanged where
  eventName :: Proxy PageScreencastVisibilityChanged -> String
eventName Proxy PageScreencastVisibilityChanged
_ = String
"Page.screencastVisibilityChanged"

-- | Type of the 'Page.windowOpen' event.
data PageWindowOpen = PageWindowOpen
  {
    -- | The URL for the new window.
    PageWindowOpen -> Text
pageWindowOpenUrl :: T.Text,
    -- | Window name.
    PageWindowOpen -> Text
pageWindowOpenWindowName :: T.Text,
    -- | An array of enabled window features.
    PageWindowOpen -> [Text]
pageWindowOpenWindowFeatures :: [T.Text],
    -- | Whether or not it was triggered by user gesture.
    PageWindowOpen -> Bool
pageWindowOpenUserGesture :: Bool
  }
  deriving (PageWindowOpen -> PageWindowOpen -> Bool
(PageWindowOpen -> PageWindowOpen -> Bool)
-> (PageWindowOpen -> PageWindowOpen -> Bool) -> Eq PageWindowOpen
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageWindowOpen -> PageWindowOpen -> Bool
$c/= :: PageWindowOpen -> PageWindowOpen -> Bool
== :: PageWindowOpen -> PageWindowOpen -> Bool
$c== :: PageWindowOpen -> PageWindowOpen -> Bool
Eq, Int -> PageWindowOpen -> ShowS
[PageWindowOpen] -> ShowS
PageWindowOpen -> String
(Int -> PageWindowOpen -> ShowS)
-> (PageWindowOpen -> String)
-> ([PageWindowOpen] -> ShowS)
-> Show PageWindowOpen
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageWindowOpen] -> ShowS
$cshowList :: [PageWindowOpen] -> ShowS
show :: PageWindowOpen -> String
$cshow :: PageWindowOpen -> String
showsPrec :: Int -> PageWindowOpen -> ShowS
$cshowsPrec :: Int -> PageWindowOpen -> ShowS
Show)
instance FromJSON PageWindowOpen where
  parseJSON :: Value -> Parser PageWindowOpen
parseJSON = String
-> (Object -> Parser PageWindowOpen)
-> Value
-> Parser PageWindowOpen
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageWindowOpen" ((Object -> Parser PageWindowOpen)
 -> Value -> Parser PageWindowOpen)
-> (Object -> Parser PageWindowOpen)
-> Value
-> Parser PageWindowOpen
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> Text -> [Text] -> Bool -> PageWindowOpen
PageWindowOpen
    (Text -> Text -> [Text] -> Bool -> PageWindowOpen)
-> Parser Text -> Parser (Text -> [Text] -> Bool -> PageWindowOpen)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"url"
    Parser (Text -> [Text] -> Bool -> PageWindowOpen)
-> Parser Text -> Parser ([Text] -> Bool -> PageWindowOpen)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"windowName"
    Parser ([Text] -> Bool -> PageWindowOpen)
-> Parser [Text] -> Parser (Bool -> PageWindowOpen)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser [Text]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"windowFeatures"
    Parser (Bool -> PageWindowOpen)
-> Parser Bool -> Parser PageWindowOpen
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Bool
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"userGesture"
instance Event PageWindowOpen where
  eventName :: Proxy PageWindowOpen -> String
eventName Proxy PageWindowOpen
_ = String
"Page.windowOpen"

-- | Type of the 'Page.compilationCacheProduced' event.
data PageCompilationCacheProduced = PageCompilationCacheProduced
  {
    PageCompilationCacheProduced -> Text
pageCompilationCacheProducedUrl :: T.Text,
    -- | Base64-encoded data (Encoded as a base64 string when passed over JSON)
    PageCompilationCacheProduced -> Text
pageCompilationCacheProducedData :: T.Text
  }
  deriving (PageCompilationCacheProduced
-> PageCompilationCacheProduced -> Bool
(PageCompilationCacheProduced
 -> PageCompilationCacheProduced -> Bool)
-> (PageCompilationCacheProduced
    -> PageCompilationCacheProduced -> Bool)
-> Eq PageCompilationCacheProduced
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageCompilationCacheProduced
-> PageCompilationCacheProduced -> Bool
$c/= :: PageCompilationCacheProduced
-> PageCompilationCacheProduced -> Bool
== :: PageCompilationCacheProduced
-> PageCompilationCacheProduced -> Bool
$c== :: PageCompilationCacheProduced
-> PageCompilationCacheProduced -> Bool
Eq, Int -> PageCompilationCacheProduced -> ShowS
[PageCompilationCacheProduced] -> ShowS
PageCompilationCacheProduced -> String
(Int -> PageCompilationCacheProduced -> ShowS)
-> (PageCompilationCacheProduced -> String)
-> ([PageCompilationCacheProduced] -> ShowS)
-> Show PageCompilationCacheProduced
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageCompilationCacheProduced] -> ShowS
$cshowList :: [PageCompilationCacheProduced] -> ShowS
show :: PageCompilationCacheProduced -> String
$cshow :: PageCompilationCacheProduced -> String
showsPrec :: Int -> PageCompilationCacheProduced -> ShowS
$cshowsPrec :: Int -> PageCompilationCacheProduced -> ShowS
Show)
instance FromJSON PageCompilationCacheProduced where
  parseJSON :: Value -> Parser PageCompilationCacheProduced
parseJSON = String
-> (Object -> Parser PageCompilationCacheProduced)
-> Value
-> Parser PageCompilationCacheProduced
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageCompilationCacheProduced" ((Object -> Parser PageCompilationCacheProduced)
 -> Value -> Parser PageCompilationCacheProduced)
-> (Object -> Parser PageCompilationCacheProduced)
-> Value
-> Parser PageCompilationCacheProduced
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> Text -> PageCompilationCacheProduced
PageCompilationCacheProduced
    (Text -> Text -> PageCompilationCacheProduced)
-> Parser Text -> Parser (Text -> PageCompilationCacheProduced)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"url"
    Parser (Text -> PageCompilationCacheProduced)
-> Parser Text -> Parser PageCompilationCacheProduced
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"data"
instance Event PageCompilationCacheProduced where
  eventName :: Proxy PageCompilationCacheProduced -> String
eventName Proxy PageCompilationCacheProduced
_ = String
"Page.compilationCacheProduced"

-- | Evaluates given script in every frame upon creation (before loading frame's scripts).

-- | Parameters of the 'Page.addScriptToEvaluateOnNewDocument' command.
data PPageAddScriptToEvaluateOnNewDocument = PPageAddScriptToEvaluateOnNewDocument
  {
    PPageAddScriptToEvaluateOnNewDocument -> Text
pPageAddScriptToEvaluateOnNewDocumentSource :: T.Text,
    -- | If specified, creates an isolated world with the given name and evaluates given script in it.
    --   This world name will be used as the ExecutionContextDescription::name when the corresponding
    --   event is emitted.
    PPageAddScriptToEvaluateOnNewDocument -> Maybe Text
pPageAddScriptToEvaluateOnNewDocumentWorldName :: Maybe T.Text,
    -- | Specifies whether command line API should be available to the script, defaults
    --   to false.
    PPageAddScriptToEvaluateOnNewDocument -> Maybe Bool
pPageAddScriptToEvaluateOnNewDocumentIncludeCommandLineAPI :: Maybe Bool
  }
  deriving (PPageAddScriptToEvaluateOnNewDocument
-> PPageAddScriptToEvaluateOnNewDocument -> Bool
(PPageAddScriptToEvaluateOnNewDocument
 -> PPageAddScriptToEvaluateOnNewDocument -> Bool)
-> (PPageAddScriptToEvaluateOnNewDocument
    -> PPageAddScriptToEvaluateOnNewDocument -> Bool)
-> Eq PPageAddScriptToEvaluateOnNewDocument
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageAddScriptToEvaluateOnNewDocument
-> PPageAddScriptToEvaluateOnNewDocument -> Bool
$c/= :: PPageAddScriptToEvaluateOnNewDocument
-> PPageAddScriptToEvaluateOnNewDocument -> Bool
== :: PPageAddScriptToEvaluateOnNewDocument
-> PPageAddScriptToEvaluateOnNewDocument -> Bool
$c== :: PPageAddScriptToEvaluateOnNewDocument
-> PPageAddScriptToEvaluateOnNewDocument -> Bool
Eq, Int -> PPageAddScriptToEvaluateOnNewDocument -> ShowS
[PPageAddScriptToEvaluateOnNewDocument] -> ShowS
PPageAddScriptToEvaluateOnNewDocument -> String
(Int -> PPageAddScriptToEvaluateOnNewDocument -> ShowS)
-> (PPageAddScriptToEvaluateOnNewDocument -> String)
-> ([PPageAddScriptToEvaluateOnNewDocument] -> ShowS)
-> Show PPageAddScriptToEvaluateOnNewDocument
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageAddScriptToEvaluateOnNewDocument] -> ShowS
$cshowList :: [PPageAddScriptToEvaluateOnNewDocument] -> ShowS
show :: PPageAddScriptToEvaluateOnNewDocument -> String
$cshow :: PPageAddScriptToEvaluateOnNewDocument -> String
showsPrec :: Int -> PPageAddScriptToEvaluateOnNewDocument -> ShowS
$cshowsPrec :: Int -> PPageAddScriptToEvaluateOnNewDocument -> ShowS
Show)
pPageAddScriptToEvaluateOnNewDocument
  :: T.Text
  -> PPageAddScriptToEvaluateOnNewDocument
pPageAddScriptToEvaluateOnNewDocument :: Text -> PPageAddScriptToEvaluateOnNewDocument
pPageAddScriptToEvaluateOnNewDocument
  Text
arg_pPageAddScriptToEvaluateOnNewDocumentSource
  = Text
-> Maybe Text
-> Maybe Bool
-> PPageAddScriptToEvaluateOnNewDocument
PPageAddScriptToEvaluateOnNewDocument
    Text
arg_pPageAddScriptToEvaluateOnNewDocumentSource
    Maybe Text
forall a. Maybe a
Nothing
    Maybe Bool
forall a. Maybe a
Nothing
instance ToJSON PPageAddScriptToEvaluateOnNewDocument where
  toJSON :: PPageAddScriptToEvaluateOnNewDocument -> Value
toJSON PPageAddScriptToEvaluateOnNewDocument
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"source" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PPageAddScriptToEvaluateOnNewDocument -> Text
pPageAddScriptToEvaluateOnNewDocumentSource PPageAddScriptToEvaluateOnNewDocument
p),
    (Text
"worldName" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPageAddScriptToEvaluateOnNewDocument -> Maybe Text
pPageAddScriptToEvaluateOnNewDocumentWorldName PPageAddScriptToEvaluateOnNewDocument
p),
    (Text
"includeCommandLineAPI" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPageAddScriptToEvaluateOnNewDocument -> Maybe Bool
pPageAddScriptToEvaluateOnNewDocumentIncludeCommandLineAPI PPageAddScriptToEvaluateOnNewDocument
p)
    ]
data PageAddScriptToEvaluateOnNewDocument = PageAddScriptToEvaluateOnNewDocument
  {
    -- | Identifier of the added script.
    PageAddScriptToEvaluateOnNewDocument -> Text
pageAddScriptToEvaluateOnNewDocumentIdentifier :: PageScriptIdentifier
  }
  deriving (PageAddScriptToEvaluateOnNewDocument
-> PageAddScriptToEvaluateOnNewDocument -> Bool
(PageAddScriptToEvaluateOnNewDocument
 -> PageAddScriptToEvaluateOnNewDocument -> Bool)
-> (PageAddScriptToEvaluateOnNewDocument
    -> PageAddScriptToEvaluateOnNewDocument -> Bool)
-> Eq PageAddScriptToEvaluateOnNewDocument
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageAddScriptToEvaluateOnNewDocument
-> PageAddScriptToEvaluateOnNewDocument -> Bool
$c/= :: PageAddScriptToEvaluateOnNewDocument
-> PageAddScriptToEvaluateOnNewDocument -> Bool
== :: PageAddScriptToEvaluateOnNewDocument
-> PageAddScriptToEvaluateOnNewDocument -> Bool
$c== :: PageAddScriptToEvaluateOnNewDocument
-> PageAddScriptToEvaluateOnNewDocument -> Bool
Eq, Int -> PageAddScriptToEvaluateOnNewDocument -> ShowS
[PageAddScriptToEvaluateOnNewDocument] -> ShowS
PageAddScriptToEvaluateOnNewDocument -> String
(Int -> PageAddScriptToEvaluateOnNewDocument -> ShowS)
-> (PageAddScriptToEvaluateOnNewDocument -> String)
-> ([PageAddScriptToEvaluateOnNewDocument] -> ShowS)
-> Show PageAddScriptToEvaluateOnNewDocument
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageAddScriptToEvaluateOnNewDocument] -> ShowS
$cshowList :: [PageAddScriptToEvaluateOnNewDocument] -> ShowS
show :: PageAddScriptToEvaluateOnNewDocument -> String
$cshow :: PageAddScriptToEvaluateOnNewDocument -> String
showsPrec :: Int -> PageAddScriptToEvaluateOnNewDocument -> ShowS
$cshowsPrec :: Int -> PageAddScriptToEvaluateOnNewDocument -> ShowS
Show)
instance FromJSON PageAddScriptToEvaluateOnNewDocument where
  parseJSON :: Value -> Parser PageAddScriptToEvaluateOnNewDocument
parseJSON = String
-> (Object -> Parser PageAddScriptToEvaluateOnNewDocument)
-> Value
-> Parser PageAddScriptToEvaluateOnNewDocument
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageAddScriptToEvaluateOnNewDocument" ((Object -> Parser PageAddScriptToEvaluateOnNewDocument)
 -> Value -> Parser PageAddScriptToEvaluateOnNewDocument)
-> (Object -> Parser PageAddScriptToEvaluateOnNewDocument)
-> Value
-> Parser PageAddScriptToEvaluateOnNewDocument
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> PageAddScriptToEvaluateOnNewDocument
PageAddScriptToEvaluateOnNewDocument
    (Text -> PageAddScriptToEvaluateOnNewDocument)
-> Parser Text -> Parser PageAddScriptToEvaluateOnNewDocument
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"identifier"
instance Command PPageAddScriptToEvaluateOnNewDocument where
  type CommandResponse PPageAddScriptToEvaluateOnNewDocument = PageAddScriptToEvaluateOnNewDocument
  commandName :: Proxy PPageAddScriptToEvaluateOnNewDocument -> String
commandName Proxy PPageAddScriptToEvaluateOnNewDocument
_ = String
"Page.addScriptToEvaluateOnNewDocument"

-- | Brings page to front (activates tab).

-- | Parameters of the 'Page.bringToFront' command.
data PPageBringToFront = PPageBringToFront
  deriving (PPageBringToFront -> PPageBringToFront -> Bool
(PPageBringToFront -> PPageBringToFront -> Bool)
-> (PPageBringToFront -> PPageBringToFront -> Bool)
-> Eq PPageBringToFront
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageBringToFront -> PPageBringToFront -> Bool
$c/= :: PPageBringToFront -> PPageBringToFront -> Bool
== :: PPageBringToFront -> PPageBringToFront -> Bool
$c== :: PPageBringToFront -> PPageBringToFront -> Bool
Eq, Int -> PPageBringToFront -> ShowS
[PPageBringToFront] -> ShowS
PPageBringToFront -> String
(Int -> PPageBringToFront -> ShowS)
-> (PPageBringToFront -> String)
-> ([PPageBringToFront] -> ShowS)
-> Show PPageBringToFront
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageBringToFront] -> ShowS
$cshowList :: [PPageBringToFront] -> ShowS
show :: PPageBringToFront -> String
$cshow :: PPageBringToFront -> String
showsPrec :: Int -> PPageBringToFront -> ShowS
$cshowsPrec :: Int -> PPageBringToFront -> ShowS
Show)
pPageBringToFront
  :: PPageBringToFront
pPageBringToFront :: PPageBringToFront
pPageBringToFront
  = PPageBringToFront
PPageBringToFront
instance ToJSON PPageBringToFront where
  toJSON :: PPageBringToFront -> Value
toJSON PPageBringToFront
_ = Value
A.Null
instance Command PPageBringToFront where
  type CommandResponse PPageBringToFront = ()
  commandName :: Proxy PPageBringToFront -> String
commandName Proxy PPageBringToFront
_ = String
"Page.bringToFront"
  fromJSON :: Proxy PPageBringToFront
-> Value -> Result (CommandResponse PPageBringToFront)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PPageBringToFront -> Result ())
-> Proxy PPageBringToFront
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PPageBringToFront -> ())
-> Proxy PPageBringToFront
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PPageBringToFront -> ()
forall a b. a -> b -> a
const ()

-- | Capture page screenshot.

-- | Parameters of the 'Page.captureScreenshot' command.
data PPageCaptureScreenshotFormat = PPageCaptureScreenshotFormatJpeg | PPageCaptureScreenshotFormatPng | PPageCaptureScreenshotFormatWebp
  deriving (Eq PPageCaptureScreenshotFormat
Eq PPageCaptureScreenshotFormat
-> (PPageCaptureScreenshotFormat
    -> PPageCaptureScreenshotFormat -> Ordering)
-> (PPageCaptureScreenshotFormat
    -> PPageCaptureScreenshotFormat -> Bool)
-> (PPageCaptureScreenshotFormat
    -> PPageCaptureScreenshotFormat -> Bool)
-> (PPageCaptureScreenshotFormat
    -> PPageCaptureScreenshotFormat -> Bool)
-> (PPageCaptureScreenshotFormat
    -> PPageCaptureScreenshotFormat -> Bool)
-> (PPageCaptureScreenshotFormat
    -> PPageCaptureScreenshotFormat -> PPageCaptureScreenshotFormat)
-> (PPageCaptureScreenshotFormat
    -> PPageCaptureScreenshotFormat -> PPageCaptureScreenshotFormat)
-> Ord PPageCaptureScreenshotFormat
PPageCaptureScreenshotFormat
-> PPageCaptureScreenshotFormat -> Bool
PPageCaptureScreenshotFormat
-> PPageCaptureScreenshotFormat -> Ordering
PPageCaptureScreenshotFormat
-> PPageCaptureScreenshotFormat -> PPageCaptureScreenshotFormat
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: PPageCaptureScreenshotFormat
-> PPageCaptureScreenshotFormat -> PPageCaptureScreenshotFormat
$cmin :: PPageCaptureScreenshotFormat
-> PPageCaptureScreenshotFormat -> PPageCaptureScreenshotFormat
max :: PPageCaptureScreenshotFormat
-> PPageCaptureScreenshotFormat -> PPageCaptureScreenshotFormat
$cmax :: PPageCaptureScreenshotFormat
-> PPageCaptureScreenshotFormat -> PPageCaptureScreenshotFormat
>= :: PPageCaptureScreenshotFormat
-> PPageCaptureScreenshotFormat -> Bool
$c>= :: PPageCaptureScreenshotFormat
-> PPageCaptureScreenshotFormat -> Bool
> :: PPageCaptureScreenshotFormat
-> PPageCaptureScreenshotFormat -> Bool
$c> :: PPageCaptureScreenshotFormat
-> PPageCaptureScreenshotFormat -> Bool
<= :: PPageCaptureScreenshotFormat
-> PPageCaptureScreenshotFormat -> Bool
$c<= :: PPageCaptureScreenshotFormat
-> PPageCaptureScreenshotFormat -> Bool
< :: PPageCaptureScreenshotFormat
-> PPageCaptureScreenshotFormat -> Bool
$c< :: PPageCaptureScreenshotFormat
-> PPageCaptureScreenshotFormat -> Bool
compare :: PPageCaptureScreenshotFormat
-> PPageCaptureScreenshotFormat -> Ordering
$ccompare :: PPageCaptureScreenshotFormat
-> PPageCaptureScreenshotFormat -> Ordering
$cp1Ord :: Eq PPageCaptureScreenshotFormat
Ord, PPageCaptureScreenshotFormat
-> PPageCaptureScreenshotFormat -> Bool
(PPageCaptureScreenshotFormat
 -> PPageCaptureScreenshotFormat -> Bool)
-> (PPageCaptureScreenshotFormat
    -> PPageCaptureScreenshotFormat -> Bool)
-> Eq PPageCaptureScreenshotFormat
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageCaptureScreenshotFormat
-> PPageCaptureScreenshotFormat -> Bool
$c/= :: PPageCaptureScreenshotFormat
-> PPageCaptureScreenshotFormat -> Bool
== :: PPageCaptureScreenshotFormat
-> PPageCaptureScreenshotFormat -> Bool
$c== :: PPageCaptureScreenshotFormat
-> PPageCaptureScreenshotFormat -> Bool
Eq, Int -> PPageCaptureScreenshotFormat -> ShowS
[PPageCaptureScreenshotFormat] -> ShowS
PPageCaptureScreenshotFormat -> String
(Int -> PPageCaptureScreenshotFormat -> ShowS)
-> (PPageCaptureScreenshotFormat -> String)
-> ([PPageCaptureScreenshotFormat] -> ShowS)
-> Show PPageCaptureScreenshotFormat
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageCaptureScreenshotFormat] -> ShowS
$cshowList :: [PPageCaptureScreenshotFormat] -> ShowS
show :: PPageCaptureScreenshotFormat -> String
$cshow :: PPageCaptureScreenshotFormat -> String
showsPrec :: Int -> PPageCaptureScreenshotFormat -> ShowS
$cshowsPrec :: Int -> PPageCaptureScreenshotFormat -> ShowS
Show, ReadPrec [PPageCaptureScreenshotFormat]
ReadPrec PPageCaptureScreenshotFormat
Int -> ReadS PPageCaptureScreenshotFormat
ReadS [PPageCaptureScreenshotFormat]
(Int -> ReadS PPageCaptureScreenshotFormat)
-> ReadS [PPageCaptureScreenshotFormat]
-> ReadPrec PPageCaptureScreenshotFormat
-> ReadPrec [PPageCaptureScreenshotFormat]
-> Read PPageCaptureScreenshotFormat
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PPageCaptureScreenshotFormat]
$creadListPrec :: ReadPrec [PPageCaptureScreenshotFormat]
readPrec :: ReadPrec PPageCaptureScreenshotFormat
$creadPrec :: ReadPrec PPageCaptureScreenshotFormat
readList :: ReadS [PPageCaptureScreenshotFormat]
$creadList :: ReadS [PPageCaptureScreenshotFormat]
readsPrec :: Int -> ReadS PPageCaptureScreenshotFormat
$creadsPrec :: Int -> ReadS PPageCaptureScreenshotFormat
Read)
instance FromJSON PPageCaptureScreenshotFormat where
  parseJSON :: Value -> Parser PPageCaptureScreenshotFormat
parseJSON = String
-> (Text -> Parser PPageCaptureScreenshotFormat)
-> Value
-> Parser PPageCaptureScreenshotFormat
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"PPageCaptureScreenshotFormat" ((Text -> Parser PPageCaptureScreenshotFormat)
 -> Value -> Parser PPageCaptureScreenshotFormat)
-> (Text -> Parser PPageCaptureScreenshotFormat)
-> Value
-> Parser PPageCaptureScreenshotFormat
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"jpeg" -> PPageCaptureScreenshotFormat -> Parser PPageCaptureScreenshotFormat
forall (f :: * -> *) a. Applicative f => a -> f a
pure PPageCaptureScreenshotFormat
PPageCaptureScreenshotFormatJpeg
    Text
"png" -> PPageCaptureScreenshotFormat -> Parser PPageCaptureScreenshotFormat
forall (f :: * -> *) a. Applicative f => a -> f a
pure PPageCaptureScreenshotFormat
PPageCaptureScreenshotFormatPng
    Text
"webp" -> PPageCaptureScreenshotFormat -> Parser PPageCaptureScreenshotFormat
forall (f :: * -> *) a. Applicative f => a -> f a
pure PPageCaptureScreenshotFormat
PPageCaptureScreenshotFormatWebp
    Text
"_" -> String -> Parser PPageCaptureScreenshotFormat
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse PPageCaptureScreenshotFormat"
instance ToJSON PPageCaptureScreenshotFormat where
  toJSON :: PPageCaptureScreenshotFormat -> Value
toJSON PPageCaptureScreenshotFormat
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case PPageCaptureScreenshotFormat
v of
    PPageCaptureScreenshotFormat
PPageCaptureScreenshotFormatJpeg -> Text
"jpeg"
    PPageCaptureScreenshotFormat
PPageCaptureScreenshotFormatPng -> Text
"png"
    PPageCaptureScreenshotFormat
PPageCaptureScreenshotFormatWebp -> Text
"webp"
data PPageCaptureScreenshot = PPageCaptureScreenshot
  {
    -- | Image compression format (defaults to png).
    PPageCaptureScreenshot -> Maybe PPageCaptureScreenshotFormat
pPageCaptureScreenshotFormat :: Maybe PPageCaptureScreenshotFormat,
    -- | Compression quality from range [0..100] (jpeg only).
    PPageCaptureScreenshot -> Maybe Int
pPageCaptureScreenshotQuality :: Maybe Int,
    -- | Capture the screenshot of a given region only.
    PPageCaptureScreenshot -> Maybe PageViewport
pPageCaptureScreenshotClip :: Maybe PageViewport,
    -- | Capture the screenshot from the surface, rather than the view. Defaults to true.
    PPageCaptureScreenshot -> Maybe Bool
pPageCaptureScreenshotFromSurface :: Maybe Bool,
    -- | Capture the screenshot beyond the viewport. Defaults to false.
    PPageCaptureScreenshot -> Maybe Bool
pPageCaptureScreenshotCaptureBeyondViewport :: Maybe Bool
  }
  deriving (PPageCaptureScreenshot -> PPageCaptureScreenshot -> Bool
(PPageCaptureScreenshot -> PPageCaptureScreenshot -> Bool)
-> (PPageCaptureScreenshot -> PPageCaptureScreenshot -> Bool)
-> Eq PPageCaptureScreenshot
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageCaptureScreenshot -> PPageCaptureScreenshot -> Bool
$c/= :: PPageCaptureScreenshot -> PPageCaptureScreenshot -> Bool
== :: PPageCaptureScreenshot -> PPageCaptureScreenshot -> Bool
$c== :: PPageCaptureScreenshot -> PPageCaptureScreenshot -> Bool
Eq, Int -> PPageCaptureScreenshot -> ShowS
[PPageCaptureScreenshot] -> ShowS
PPageCaptureScreenshot -> String
(Int -> PPageCaptureScreenshot -> ShowS)
-> (PPageCaptureScreenshot -> String)
-> ([PPageCaptureScreenshot] -> ShowS)
-> Show PPageCaptureScreenshot
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageCaptureScreenshot] -> ShowS
$cshowList :: [PPageCaptureScreenshot] -> ShowS
show :: PPageCaptureScreenshot -> String
$cshow :: PPageCaptureScreenshot -> String
showsPrec :: Int -> PPageCaptureScreenshot -> ShowS
$cshowsPrec :: Int -> PPageCaptureScreenshot -> ShowS
Show)
pPageCaptureScreenshot
  :: PPageCaptureScreenshot
pPageCaptureScreenshot :: PPageCaptureScreenshot
pPageCaptureScreenshot
  = Maybe PPageCaptureScreenshotFormat
-> Maybe Int
-> Maybe PageViewport
-> Maybe Bool
-> Maybe Bool
-> PPageCaptureScreenshot
PPageCaptureScreenshot
    Maybe PPageCaptureScreenshotFormat
forall a. Maybe a
Nothing
    Maybe Int
forall a. Maybe a
Nothing
    Maybe PageViewport
forall a. Maybe a
Nothing
    Maybe Bool
forall a. Maybe a
Nothing
    Maybe Bool
forall a. Maybe a
Nothing
instance ToJSON PPageCaptureScreenshot where
  toJSON :: PPageCaptureScreenshot -> Value
toJSON PPageCaptureScreenshot
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"format" Text -> PPageCaptureScreenshotFormat -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (PPageCaptureScreenshotFormat -> Pair)
-> Maybe PPageCaptureScreenshotFormat -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPageCaptureScreenshot -> Maybe PPageCaptureScreenshotFormat
pPageCaptureScreenshotFormat PPageCaptureScreenshot
p),
    (Text
"quality" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPageCaptureScreenshot -> Maybe Int
pPageCaptureScreenshotQuality PPageCaptureScreenshot
p),
    (Text
"clip" Text -> PageViewport -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (PageViewport -> Pair) -> Maybe PageViewport -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPageCaptureScreenshot -> Maybe PageViewport
pPageCaptureScreenshotClip PPageCaptureScreenshot
p),
    (Text
"fromSurface" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPageCaptureScreenshot -> Maybe Bool
pPageCaptureScreenshotFromSurface PPageCaptureScreenshot
p),
    (Text
"captureBeyondViewport" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPageCaptureScreenshot -> Maybe Bool
pPageCaptureScreenshotCaptureBeyondViewport PPageCaptureScreenshot
p)
    ]
data PageCaptureScreenshot = PageCaptureScreenshot
  {
    -- | Base64-encoded image data. (Encoded as a base64 string when passed over JSON)
    PageCaptureScreenshot -> Text
pageCaptureScreenshotData :: T.Text
  }
  deriving (PageCaptureScreenshot -> PageCaptureScreenshot -> Bool
(PageCaptureScreenshot -> PageCaptureScreenshot -> Bool)
-> (PageCaptureScreenshot -> PageCaptureScreenshot -> Bool)
-> Eq PageCaptureScreenshot
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageCaptureScreenshot -> PageCaptureScreenshot -> Bool
$c/= :: PageCaptureScreenshot -> PageCaptureScreenshot -> Bool
== :: PageCaptureScreenshot -> PageCaptureScreenshot -> Bool
$c== :: PageCaptureScreenshot -> PageCaptureScreenshot -> Bool
Eq, Int -> PageCaptureScreenshot -> ShowS
[PageCaptureScreenshot] -> ShowS
PageCaptureScreenshot -> String
(Int -> PageCaptureScreenshot -> ShowS)
-> (PageCaptureScreenshot -> String)
-> ([PageCaptureScreenshot] -> ShowS)
-> Show PageCaptureScreenshot
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageCaptureScreenshot] -> ShowS
$cshowList :: [PageCaptureScreenshot] -> ShowS
show :: PageCaptureScreenshot -> String
$cshow :: PageCaptureScreenshot -> String
showsPrec :: Int -> PageCaptureScreenshot -> ShowS
$cshowsPrec :: Int -> PageCaptureScreenshot -> ShowS
Show)
instance FromJSON PageCaptureScreenshot where
  parseJSON :: Value -> Parser PageCaptureScreenshot
parseJSON = String
-> (Object -> Parser PageCaptureScreenshot)
-> Value
-> Parser PageCaptureScreenshot
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageCaptureScreenshot" ((Object -> Parser PageCaptureScreenshot)
 -> Value -> Parser PageCaptureScreenshot)
-> (Object -> Parser PageCaptureScreenshot)
-> Value
-> Parser PageCaptureScreenshot
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> PageCaptureScreenshot
PageCaptureScreenshot
    (Text -> PageCaptureScreenshot)
-> Parser Text -> Parser PageCaptureScreenshot
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"data"
instance Command PPageCaptureScreenshot where
  type CommandResponse PPageCaptureScreenshot = PageCaptureScreenshot
  commandName :: Proxy PPageCaptureScreenshot -> String
commandName Proxy PPageCaptureScreenshot
_ = String
"Page.captureScreenshot"

-- | Returns a snapshot of the page as a string. For MHTML format, the serialization includes
--   iframes, shadow DOM, external resources, and element-inline styles.

-- | Parameters of the 'Page.captureSnapshot' command.
data PPageCaptureSnapshotFormat = PPageCaptureSnapshotFormatMhtml
  deriving (Eq PPageCaptureSnapshotFormat
Eq PPageCaptureSnapshotFormat
-> (PPageCaptureSnapshotFormat
    -> PPageCaptureSnapshotFormat -> Ordering)
-> (PPageCaptureSnapshotFormat
    -> PPageCaptureSnapshotFormat -> Bool)
-> (PPageCaptureSnapshotFormat
    -> PPageCaptureSnapshotFormat -> Bool)
-> (PPageCaptureSnapshotFormat
    -> PPageCaptureSnapshotFormat -> Bool)
-> (PPageCaptureSnapshotFormat
    -> PPageCaptureSnapshotFormat -> Bool)
-> (PPageCaptureSnapshotFormat
    -> PPageCaptureSnapshotFormat -> PPageCaptureSnapshotFormat)
-> (PPageCaptureSnapshotFormat
    -> PPageCaptureSnapshotFormat -> PPageCaptureSnapshotFormat)
-> Ord PPageCaptureSnapshotFormat
PPageCaptureSnapshotFormat -> PPageCaptureSnapshotFormat -> Bool
PPageCaptureSnapshotFormat
-> PPageCaptureSnapshotFormat -> Ordering
PPageCaptureSnapshotFormat
-> PPageCaptureSnapshotFormat -> PPageCaptureSnapshotFormat
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: PPageCaptureSnapshotFormat
-> PPageCaptureSnapshotFormat -> PPageCaptureSnapshotFormat
$cmin :: PPageCaptureSnapshotFormat
-> PPageCaptureSnapshotFormat -> PPageCaptureSnapshotFormat
max :: PPageCaptureSnapshotFormat
-> PPageCaptureSnapshotFormat -> PPageCaptureSnapshotFormat
$cmax :: PPageCaptureSnapshotFormat
-> PPageCaptureSnapshotFormat -> PPageCaptureSnapshotFormat
>= :: PPageCaptureSnapshotFormat -> PPageCaptureSnapshotFormat -> Bool
$c>= :: PPageCaptureSnapshotFormat -> PPageCaptureSnapshotFormat -> Bool
> :: PPageCaptureSnapshotFormat -> PPageCaptureSnapshotFormat -> Bool
$c> :: PPageCaptureSnapshotFormat -> PPageCaptureSnapshotFormat -> Bool
<= :: PPageCaptureSnapshotFormat -> PPageCaptureSnapshotFormat -> Bool
$c<= :: PPageCaptureSnapshotFormat -> PPageCaptureSnapshotFormat -> Bool
< :: PPageCaptureSnapshotFormat -> PPageCaptureSnapshotFormat -> Bool
$c< :: PPageCaptureSnapshotFormat -> PPageCaptureSnapshotFormat -> Bool
compare :: PPageCaptureSnapshotFormat
-> PPageCaptureSnapshotFormat -> Ordering
$ccompare :: PPageCaptureSnapshotFormat
-> PPageCaptureSnapshotFormat -> Ordering
$cp1Ord :: Eq PPageCaptureSnapshotFormat
Ord, PPageCaptureSnapshotFormat -> PPageCaptureSnapshotFormat -> Bool
(PPageCaptureSnapshotFormat -> PPageCaptureSnapshotFormat -> Bool)
-> (PPageCaptureSnapshotFormat
    -> PPageCaptureSnapshotFormat -> Bool)
-> Eq PPageCaptureSnapshotFormat
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageCaptureSnapshotFormat -> PPageCaptureSnapshotFormat -> Bool
$c/= :: PPageCaptureSnapshotFormat -> PPageCaptureSnapshotFormat -> Bool
== :: PPageCaptureSnapshotFormat -> PPageCaptureSnapshotFormat -> Bool
$c== :: PPageCaptureSnapshotFormat -> PPageCaptureSnapshotFormat -> Bool
Eq, Int -> PPageCaptureSnapshotFormat -> ShowS
[PPageCaptureSnapshotFormat] -> ShowS
PPageCaptureSnapshotFormat -> String
(Int -> PPageCaptureSnapshotFormat -> ShowS)
-> (PPageCaptureSnapshotFormat -> String)
-> ([PPageCaptureSnapshotFormat] -> ShowS)
-> Show PPageCaptureSnapshotFormat
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageCaptureSnapshotFormat] -> ShowS
$cshowList :: [PPageCaptureSnapshotFormat] -> ShowS
show :: PPageCaptureSnapshotFormat -> String
$cshow :: PPageCaptureSnapshotFormat -> String
showsPrec :: Int -> PPageCaptureSnapshotFormat -> ShowS
$cshowsPrec :: Int -> PPageCaptureSnapshotFormat -> ShowS
Show, ReadPrec [PPageCaptureSnapshotFormat]
ReadPrec PPageCaptureSnapshotFormat
Int -> ReadS PPageCaptureSnapshotFormat
ReadS [PPageCaptureSnapshotFormat]
(Int -> ReadS PPageCaptureSnapshotFormat)
-> ReadS [PPageCaptureSnapshotFormat]
-> ReadPrec PPageCaptureSnapshotFormat
-> ReadPrec [PPageCaptureSnapshotFormat]
-> Read PPageCaptureSnapshotFormat
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PPageCaptureSnapshotFormat]
$creadListPrec :: ReadPrec [PPageCaptureSnapshotFormat]
readPrec :: ReadPrec PPageCaptureSnapshotFormat
$creadPrec :: ReadPrec PPageCaptureSnapshotFormat
readList :: ReadS [PPageCaptureSnapshotFormat]
$creadList :: ReadS [PPageCaptureSnapshotFormat]
readsPrec :: Int -> ReadS PPageCaptureSnapshotFormat
$creadsPrec :: Int -> ReadS PPageCaptureSnapshotFormat
Read)
instance FromJSON PPageCaptureSnapshotFormat where
  parseJSON :: Value -> Parser PPageCaptureSnapshotFormat
parseJSON = String
-> (Text -> Parser PPageCaptureSnapshotFormat)
-> Value
-> Parser PPageCaptureSnapshotFormat
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"PPageCaptureSnapshotFormat" ((Text -> Parser PPageCaptureSnapshotFormat)
 -> Value -> Parser PPageCaptureSnapshotFormat)
-> (Text -> Parser PPageCaptureSnapshotFormat)
-> Value
-> Parser PPageCaptureSnapshotFormat
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"mhtml" -> PPageCaptureSnapshotFormat -> Parser PPageCaptureSnapshotFormat
forall (f :: * -> *) a. Applicative f => a -> f a
pure PPageCaptureSnapshotFormat
PPageCaptureSnapshotFormatMhtml
    Text
"_" -> String -> Parser PPageCaptureSnapshotFormat
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse PPageCaptureSnapshotFormat"
instance ToJSON PPageCaptureSnapshotFormat where
  toJSON :: PPageCaptureSnapshotFormat -> Value
toJSON PPageCaptureSnapshotFormat
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case PPageCaptureSnapshotFormat
v of
    PPageCaptureSnapshotFormat
PPageCaptureSnapshotFormatMhtml -> Text
"mhtml"
data PPageCaptureSnapshot = PPageCaptureSnapshot
  {
    -- | Format (defaults to mhtml).
    PPageCaptureSnapshot -> Maybe PPageCaptureSnapshotFormat
pPageCaptureSnapshotFormat :: Maybe PPageCaptureSnapshotFormat
  }
  deriving (PPageCaptureSnapshot -> PPageCaptureSnapshot -> Bool
(PPageCaptureSnapshot -> PPageCaptureSnapshot -> Bool)
-> (PPageCaptureSnapshot -> PPageCaptureSnapshot -> Bool)
-> Eq PPageCaptureSnapshot
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageCaptureSnapshot -> PPageCaptureSnapshot -> Bool
$c/= :: PPageCaptureSnapshot -> PPageCaptureSnapshot -> Bool
== :: PPageCaptureSnapshot -> PPageCaptureSnapshot -> Bool
$c== :: PPageCaptureSnapshot -> PPageCaptureSnapshot -> Bool
Eq, Int -> PPageCaptureSnapshot -> ShowS
[PPageCaptureSnapshot] -> ShowS
PPageCaptureSnapshot -> String
(Int -> PPageCaptureSnapshot -> ShowS)
-> (PPageCaptureSnapshot -> String)
-> ([PPageCaptureSnapshot] -> ShowS)
-> Show PPageCaptureSnapshot
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageCaptureSnapshot] -> ShowS
$cshowList :: [PPageCaptureSnapshot] -> ShowS
show :: PPageCaptureSnapshot -> String
$cshow :: PPageCaptureSnapshot -> String
showsPrec :: Int -> PPageCaptureSnapshot -> ShowS
$cshowsPrec :: Int -> PPageCaptureSnapshot -> ShowS
Show)
pPageCaptureSnapshot
  :: PPageCaptureSnapshot
pPageCaptureSnapshot :: PPageCaptureSnapshot
pPageCaptureSnapshot
  = Maybe PPageCaptureSnapshotFormat -> PPageCaptureSnapshot
PPageCaptureSnapshot
    Maybe PPageCaptureSnapshotFormat
forall a. Maybe a
Nothing
instance ToJSON PPageCaptureSnapshot where
  toJSON :: PPageCaptureSnapshot -> Value
toJSON PPageCaptureSnapshot
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"format" Text -> PPageCaptureSnapshotFormat -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (PPageCaptureSnapshotFormat -> Pair)
-> Maybe PPageCaptureSnapshotFormat -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPageCaptureSnapshot -> Maybe PPageCaptureSnapshotFormat
pPageCaptureSnapshotFormat PPageCaptureSnapshot
p)
    ]
data PageCaptureSnapshot = PageCaptureSnapshot
  {
    -- | Serialized page data.
    PageCaptureSnapshot -> Text
pageCaptureSnapshotData :: T.Text
  }
  deriving (PageCaptureSnapshot -> PageCaptureSnapshot -> Bool
(PageCaptureSnapshot -> PageCaptureSnapshot -> Bool)
-> (PageCaptureSnapshot -> PageCaptureSnapshot -> Bool)
-> Eq PageCaptureSnapshot
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageCaptureSnapshot -> PageCaptureSnapshot -> Bool
$c/= :: PageCaptureSnapshot -> PageCaptureSnapshot -> Bool
== :: PageCaptureSnapshot -> PageCaptureSnapshot -> Bool
$c== :: PageCaptureSnapshot -> PageCaptureSnapshot -> Bool
Eq, Int -> PageCaptureSnapshot -> ShowS
[PageCaptureSnapshot] -> ShowS
PageCaptureSnapshot -> String
(Int -> PageCaptureSnapshot -> ShowS)
-> (PageCaptureSnapshot -> String)
-> ([PageCaptureSnapshot] -> ShowS)
-> Show PageCaptureSnapshot
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageCaptureSnapshot] -> ShowS
$cshowList :: [PageCaptureSnapshot] -> ShowS
show :: PageCaptureSnapshot -> String
$cshow :: PageCaptureSnapshot -> String
showsPrec :: Int -> PageCaptureSnapshot -> ShowS
$cshowsPrec :: Int -> PageCaptureSnapshot -> ShowS
Show)
instance FromJSON PageCaptureSnapshot where
  parseJSON :: Value -> Parser PageCaptureSnapshot
parseJSON = String
-> (Object -> Parser PageCaptureSnapshot)
-> Value
-> Parser PageCaptureSnapshot
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageCaptureSnapshot" ((Object -> Parser PageCaptureSnapshot)
 -> Value -> Parser PageCaptureSnapshot)
-> (Object -> Parser PageCaptureSnapshot)
-> Value
-> Parser PageCaptureSnapshot
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> PageCaptureSnapshot
PageCaptureSnapshot
    (Text -> PageCaptureSnapshot)
-> Parser Text -> Parser PageCaptureSnapshot
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"data"
instance Command PPageCaptureSnapshot where
  type CommandResponse PPageCaptureSnapshot = PageCaptureSnapshot
  commandName :: Proxy PPageCaptureSnapshot -> String
commandName Proxy PPageCaptureSnapshot
_ = String
"Page.captureSnapshot"

-- | Creates an isolated world for the given frame.

-- | Parameters of the 'Page.createIsolatedWorld' command.
data PPageCreateIsolatedWorld = PPageCreateIsolatedWorld
  {
    -- | Id of the frame in which the isolated world should be created.
    PPageCreateIsolatedWorld -> Text
pPageCreateIsolatedWorldFrameId :: PageFrameId,
    -- | An optional name which is reported in the Execution Context.
    PPageCreateIsolatedWorld -> Maybe Text
pPageCreateIsolatedWorldWorldName :: Maybe T.Text,
    -- | Whether or not universal access should be granted to the isolated world. This is a powerful
    --   option, use with caution.
    PPageCreateIsolatedWorld -> Maybe Bool
pPageCreateIsolatedWorldGrantUniveralAccess :: Maybe Bool
  }
  deriving (PPageCreateIsolatedWorld -> PPageCreateIsolatedWorld -> Bool
(PPageCreateIsolatedWorld -> PPageCreateIsolatedWorld -> Bool)
-> (PPageCreateIsolatedWorld -> PPageCreateIsolatedWorld -> Bool)
-> Eq PPageCreateIsolatedWorld
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageCreateIsolatedWorld -> PPageCreateIsolatedWorld -> Bool
$c/= :: PPageCreateIsolatedWorld -> PPageCreateIsolatedWorld -> Bool
== :: PPageCreateIsolatedWorld -> PPageCreateIsolatedWorld -> Bool
$c== :: PPageCreateIsolatedWorld -> PPageCreateIsolatedWorld -> Bool
Eq, Int -> PPageCreateIsolatedWorld -> ShowS
[PPageCreateIsolatedWorld] -> ShowS
PPageCreateIsolatedWorld -> String
(Int -> PPageCreateIsolatedWorld -> ShowS)
-> (PPageCreateIsolatedWorld -> String)
-> ([PPageCreateIsolatedWorld] -> ShowS)
-> Show PPageCreateIsolatedWorld
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageCreateIsolatedWorld] -> ShowS
$cshowList :: [PPageCreateIsolatedWorld] -> ShowS
show :: PPageCreateIsolatedWorld -> String
$cshow :: PPageCreateIsolatedWorld -> String
showsPrec :: Int -> PPageCreateIsolatedWorld -> ShowS
$cshowsPrec :: Int -> PPageCreateIsolatedWorld -> ShowS
Show)
pPageCreateIsolatedWorld
  {-
  -- | Id of the frame in which the isolated world should be created.
  -}
  :: PageFrameId
  -> PPageCreateIsolatedWorld
pPageCreateIsolatedWorld :: Text -> PPageCreateIsolatedWorld
pPageCreateIsolatedWorld
  Text
arg_pPageCreateIsolatedWorldFrameId
  = Text -> Maybe Text -> Maybe Bool -> PPageCreateIsolatedWorld
PPageCreateIsolatedWorld
    Text
arg_pPageCreateIsolatedWorldFrameId
    Maybe Text
forall a. Maybe a
Nothing
    Maybe Bool
forall a. Maybe a
Nothing
instance ToJSON PPageCreateIsolatedWorld where
  toJSON :: PPageCreateIsolatedWorld -> Value
toJSON PPageCreateIsolatedWorld
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"frameId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PPageCreateIsolatedWorld -> Text
pPageCreateIsolatedWorldFrameId PPageCreateIsolatedWorld
p),
    (Text
"worldName" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPageCreateIsolatedWorld -> Maybe Text
pPageCreateIsolatedWorldWorldName PPageCreateIsolatedWorld
p),
    (Text
"grantUniveralAccess" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPageCreateIsolatedWorld -> Maybe Bool
pPageCreateIsolatedWorldGrantUniveralAccess PPageCreateIsolatedWorld
p)
    ]
data PageCreateIsolatedWorld = PageCreateIsolatedWorld
  {
    -- | Execution context of the isolated world.
    PageCreateIsolatedWorld -> Int
pageCreateIsolatedWorldExecutionContextId :: Runtime.RuntimeExecutionContextId
  }
  deriving (PageCreateIsolatedWorld -> PageCreateIsolatedWorld -> Bool
(PageCreateIsolatedWorld -> PageCreateIsolatedWorld -> Bool)
-> (PageCreateIsolatedWorld -> PageCreateIsolatedWorld -> Bool)
-> Eq PageCreateIsolatedWorld
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageCreateIsolatedWorld -> PageCreateIsolatedWorld -> Bool
$c/= :: PageCreateIsolatedWorld -> PageCreateIsolatedWorld -> Bool
== :: PageCreateIsolatedWorld -> PageCreateIsolatedWorld -> Bool
$c== :: PageCreateIsolatedWorld -> PageCreateIsolatedWorld -> Bool
Eq, Int -> PageCreateIsolatedWorld -> ShowS
[PageCreateIsolatedWorld] -> ShowS
PageCreateIsolatedWorld -> String
(Int -> PageCreateIsolatedWorld -> ShowS)
-> (PageCreateIsolatedWorld -> String)
-> ([PageCreateIsolatedWorld] -> ShowS)
-> Show PageCreateIsolatedWorld
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageCreateIsolatedWorld] -> ShowS
$cshowList :: [PageCreateIsolatedWorld] -> ShowS
show :: PageCreateIsolatedWorld -> String
$cshow :: PageCreateIsolatedWorld -> String
showsPrec :: Int -> PageCreateIsolatedWorld -> ShowS
$cshowsPrec :: Int -> PageCreateIsolatedWorld -> ShowS
Show)
instance FromJSON PageCreateIsolatedWorld where
  parseJSON :: Value -> Parser PageCreateIsolatedWorld
parseJSON = String
-> (Object -> Parser PageCreateIsolatedWorld)
-> Value
-> Parser PageCreateIsolatedWorld
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageCreateIsolatedWorld" ((Object -> Parser PageCreateIsolatedWorld)
 -> Value -> Parser PageCreateIsolatedWorld)
-> (Object -> Parser PageCreateIsolatedWorld)
-> Value
-> Parser PageCreateIsolatedWorld
forall a b. (a -> b) -> a -> b
$ \Object
o -> Int -> PageCreateIsolatedWorld
PageCreateIsolatedWorld
    (Int -> PageCreateIsolatedWorld)
-> Parser Int -> Parser PageCreateIsolatedWorld
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"executionContextId"
instance Command PPageCreateIsolatedWorld where
  type CommandResponse PPageCreateIsolatedWorld = PageCreateIsolatedWorld
  commandName :: Proxy PPageCreateIsolatedWorld -> String
commandName Proxy PPageCreateIsolatedWorld
_ = String
"Page.createIsolatedWorld"

-- | Disables page domain notifications.

-- | Parameters of the 'Page.disable' command.
data PPageDisable = PPageDisable
  deriving (PPageDisable -> PPageDisable -> Bool
(PPageDisable -> PPageDisable -> Bool)
-> (PPageDisable -> PPageDisable -> Bool) -> Eq PPageDisable
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageDisable -> PPageDisable -> Bool
$c/= :: PPageDisable -> PPageDisable -> Bool
== :: PPageDisable -> PPageDisable -> Bool
$c== :: PPageDisable -> PPageDisable -> Bool
Eq, Int -> PPageDisable -> ShowS
[PPageDisable] -> ShowS
PPageDisable -> String
(Int -> PPageDisable -> ShowS)
-> (PPageDisable -> String)
-> ([PPageDisable] -> ShowS)
-> Show PPageDisable
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageDisable] -> ShowS
$cshowList :: [PPageDisable] -> ShowS
show :: PPageDisable -> String
$cshow :: PPageDisable -> String
showsPrec :: Int -> PPageDisable -> ShowS
$cshowsPrec :: Int -> PPageDisable -> ShowS
Show)
pPageDisable
  :: PPageDisable
pPageDisable :: PPageDisable
pPageDisable
  = PPageDisable
PPageDisable
instance ToJSON PPageDisable where
  toJSON :: PPageDisable -> Value
toJSON PPageDisable
_ = Value
A.Null
instance Command PPageDisable where
  type CommandResponse PPageDisable = ()
  commandName :: Proxy PPageDisable -> String
commandName Proxy PPageDisable
_ = String
"Page.disable"
  fromJSON :: Proxy PPageDisable
-> Value -> Result (CommandResponse PPageDisable)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PPageDisable -> Result ())
-> Proxy PPageDisable
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PPageDisable -> ()) -> Proxy PPageDisable -> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PPageDisable -> ()
forall a b. a -> b -> a
const ()

-- | Enables page domain notifications.

-- | Parameters of the 'Page.enable' command.
data PPageEnable = PPageEnable
  deriving (PPageEnable -> PPageEnable -> Bool
(PPageEnable -> PPageEnable -> Bool)
-> (PPageEnable -> PPageEnable -> Bool) -> Eq PPageEnable
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageEnable -> PPageEnable -> Bool
$c/= :: PPageEnable -> PPageEnable -> Bool
== :: PPageEnable -> PPageEnable -> Bool
$c== :: PPageEnable -> PPageEnable -> Bool
Eq, Int -> PPageEnable -> ShowS
[PPageEnable] -> ShowS
PPageEnable -> String
(Int -> PPageEnable -> ShowS)
-> (PPageEnable -> String)
-> ([PPageEnable] -> ShowS)
-> Show PPageEnable
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageEnable] -> ShowS
$cshowList :: [PPageEnable] -> ShowS
show :: PPageEnable -> String
$cshow :: PPageEnable -> String
showsPrec :: Int -> PPageEnable -> ShowS
$cshowsPrec :: Int -> PPageEnable -> ShowS
Show)
pPageEnable
  :: PPageEnable
pPageEnable :: PPageEnable
pPageEnable
  = PPageEnable
PPageEnable
instance ToJSON PPageEnable where
  toJSON :: PPageEnable -> Value
toJSON PPageEnable
_ = Value
A.Null
instance Command PPageEnable where
  type CommandResponse PPageEnable = ()
  commandName :: Proxy PPageEnable -> String
commandName Proxy PPageEnable
_ = String
"Page.enable"
  fromJSON :: Proxy PPageEnable -> Value -> Result (CommandResponse PPageEnable)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PPageEnable -> Result ())
-> Proxy PPageEnable
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PPageEnable -> ()) -> Proxy PPageEnable -> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PPageEnable -> ()
forall a b. a -> b -> a
const ()


-- | Parameters of the 'Page.getAppManifest' command.
data PPageGetAppManifest = PPageGetAppManifest
  deriving (PPageGetAppManifest -> PPageGetAppManifest -> Bool
(PPageGetAppManifest -> PPageGetAppManifest -> Bool)
-> (PPageGetAppManifest -> PPageGetAppManifest -> Bool)
-> Eq PPageGetAppManifest
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageGetAppManifest -> PPageGetAppManifest -> Bool
$c/= :: PPageGetAppManifest -> PPageGetAppManifest -> Bool
== :: PPageGetAppManifest -> PPageGetAppManifest -> Bool
$c== :: PPageGetAppManifest -> PPageGetAppManifest -> Bool
Eq, Int -> PPageGetAppManifest -> ShowS
[PPageGetAppManifest] -> ShowS
PPageGetAppManifest -> String
(Int -> PPageGetAppManifest -> ShowS)
-> (PPageGetAppManifest -> String)
-> ([PPageGetAppManifest] -> ShowS)
-> Show PPageGetAppManifest
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageGetAppManifest] -> ShowS
$cshowList :: [PPageGetAppManifest] -> ShowS
show :: PPageGetAppManifest -> String
$cshow :: PPageGetAppManifest -> String
showsPrec :: Int -> PPageGetAppManifest -> ShowS
$cshowsPrec :: Int -> PPageGetAppManifest -> ShowS
Show)
pPageGetAppManifest
  :: PPageGetAppManifest
pPageGetAppManifest :: PPageGetAppManifest
pPageGetAppManifest
  = PPageGetAppManifest
PPageGetAppManifest
instance ToJSON PPageGetAppManifest where
  toJSON :: PPageGetAppManifest -> Value
toJSON PPageGetAppManifest
_ = Value
A.Null
data PageGetAppManifest = PageGetAppManifest
  {
    -- | Manifest location.
    PageGetAppManifest -> Text
pageGetAppManifestUrl :: T.Text,
    PageGetAppManifest -> [PageAppManifestError]
pageGetAppManifestErrors :: [PageAppManifestError],
    -- | Manifest content.
    PageGetAppManifest -> Maybe Text
pageGetAppManifestData :: Maybe T.Text,
    -- | Parsed manifest properties
    PageGetAppManifest -> Maybe PageAppManifestParsedProperties
pageGetAppManifestParsed :: Maybe PageAppManifestParsedProperties
  }
  deriving (PageGetAppManifest -> PageGetAppManifest -> Bool
(PageGetAppManifest -> PageGetAppManifest -> Bool)
-> (PageGetAppManifest -> PageGetAppManifest -> Bool)
-> Eq PageGetAppManifest
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageGetAppManifest -> PageGetAppManifest -> Bool
$c/= :: PageGetAppManifest -> PageGetAppManifest -> Bool
== :: PageGetAppManifest -> PageGetAppManifest -> Bool
$c== :: PageGetAppManifest -> PageGetAppManifest -> Bool
Eq, Int -> PageGetAppManifest -> ShowS
[PageGetAppManifest] -> ShowS
PageGetAppManifest -> String
(Int -> PageGetAppManifest -> ShowS)
-> (PageGetAppManifest -> String)
-> ([PageGetAppManifest] -> ShowS)
-> Show PageGetAppManifest
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageGetAppManifest] -> ShowS
$cshowList :: [PageGetAppManifest] -> ShowS
show :: PageGetAppManifest -> String
$cshow :: PageGetAppManifest -> String
showsPrec :: Int -> PageGetAppManifest -> ShowS
$cshowsPrec :: Int -> PageGetAppManifest -> ShowS
Show)
instance FromJSON PageGetAppManifest where
  parseJSON :: Value -> Parser PageGetAppManifest
parseJSON = String
-> (Object -> Parser PageGetAppManifest)
-> Value
-> Parser PageGetAppManifest
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageGetAppManifest" ((Object -> Parser PageGetAppManifest)
 -> Value -> Parser PageGetAppManifest)
-> (Object -> Parser PageGetAppManifest)
-> Value
-> Parser PageGetAppManifest
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> [PageAppManifestError]
-> Maybe Text
-> Maybe PageAppManifestParsedProperties
-> PageGetAppManifest
PageGetAppManifest
    (Text
 -> [PageAppManifestError]
 -> Maybe Text
 -> Maybe PageAppManifestParsedProperties
 -> PageGetAppManifest)
-> Parser Text
-> Parser
     ([PageAppManifestError]
      -> Maybe Text
      -> Maybe PageAppManifestParsedProperties
      -> PageGetAppManifest)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"url"
    Parser
  ([PageAppManifestError]
   -> Maybe Text
   -> Maybe PageAppManifestParsedProperties
   -> PageGetAppManifest)
-> Parser [PageAppManifestError]
-> Parser
     (Maybe Text
      -> Maybe PageAppManifestParsedProperties -> PageGetAppManifest)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser [PageAppManifestError]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"errors"
    Parser
  (Maybe Text
   -> Maybe PageAppManifestParsedProperties -> PageGetAppManifest)
-> Parser (Maybe Text)
-> Parser
     (Maybe PageAppManifestParsedProperties -> PageGetAppManifest)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"data"
    Parser
  (Maybe PageAppManifestParsedProperties -> PageGetAppManifest)
-> Parser (Maybe PageAppManifestParsedProperties)
-> Parser PageGetAppManifest
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe PageAppManifestParsedProperties)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"parsed"
instance Command PPageGetAppManifest where
  type CommandResponse PPageGetAppManifest = PageGetAppManifest
  commandName :: Proxy PPageGetAppManifest -> String
commandName Proxy PPageGetAppManifest
_ = String
"Page.getAppManifest"


-- | Parameters of the 'Page.getInstallabilityErrors' command.
data PPageGetInstallabilityErrors = PPageGetInstallabilityErrors
  deriving (PPageGetInstallabilityErrors
-> PPageGetInstallabilityErrors -> Bool
(PPageGetInstallabilityErrors
 -> PPageGetInstallabilityErrors -> Bool)
-> (PPageGetInstallabilityErrors
    -> PPageGetInstallabilityErrors -> Bool)
-> Eq PPageGetInstallabilityErrors
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageGetInstallabilityErrors
-> PPageGetInstallabilityErrors -> Bool
$c/= :: PPageGetInstallabilityErrors
-> PPageGetInstallabilityErrors -> Bool
== :: PPageGetInstallabilityErrors
-> PPageGetInstallabilityErrors -> Bool
$c== :: PPageGetInstallabilityErrors
-> PPageGetInstallabilityErrors -> Bool
Eq, Int -> PPageGetInstallabilityErrors -> ShowS
[PPageGetInstallabilityErrors] -> ShowS
PPageGetInstallabilityErrors -> String
(Int -> PPageGetInstallabilityErrors -> ShowS)
-> (PPageGetInstallabilityErrors -> String)
-> ([PPageGetInstallabilityErrors] -> ShowS)
-> Show PPageGetInstallabilityErrors
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageGetInstallabilityErrors] -> ShowS
$cshowList :: [PPageGetInstallabilityErrors] -> ShowS
show :: PPageGetInstallabilityErrors -> String
$cshow :: PPageGetInstallabilityErrors -> String
showsPrec :: Int -> PPageGetInstallabilityErrors -> ShowS
$cshowsPrec :: Int -> PPageGetInstallabilityErrors -> ShowS
Show)
pPageGetInstallabilityErrors
  :: PPageGetInstallabilityErrors
pPageGetInstallabilityErrors :: PPageGetInstallabilityErrors
pPageGetInstallabilityErrors
  = PPageGetInstallabilityErrors
PPageGetInstallabilityErrors
instance ToJSON PPageGetInstallabilityErrors where
  toJSON :: PPageGetInstallabilityErrors -> Value
toJSON PPageGetInstallabilityErrors
_ = Value
A.Null
data PageGetInstallabilityErrors = PageGetInstallabilityErrors
  {
    PageGetInstallabilityErrors -> [PageInstallabilityError]
pageGetInstallabilityErrorsInstallabilityErrors :: [PageInstallabilityError]
  }
  deriving (PageGetInstallabilityErrors -> PageGetInstallabilityErrors -> Bool
(PageGetInstallabilityErrors
 -> PageGetInstallabilityErrors -> Bool)
-> (PageGetInstallabilityErrors
    -> PageGetInstallabilityErrors -> Bool)
-> Eq PageGetInstallabilityErrors
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageGetInstallabilityErrors -> PageGetInstallabilityErrors -> Bool
$c/= :: PageGetInstallabilityErrors -> PageGetInstallabilityErrors -> Bool
== :: PageGetInstallabilityErrors -> PageGetInstallabilityErrors -> Bool
$c== :: PageGetInstallabilityErrors -> PageGetInstallabilityErrors -> Bool
Eq, Int -> PageGetInstallabilityErrors -> ShowS
[PageGetInstallabilityErrors] -> ShowS
PageGetInstallabilityErrors -> String
(Int -> PageGetInstallabilityErrors -> ShowS)
-> (PageGetInstallabilityErrors -> String)
-> ([PageGetInstallabilityErrors] -> ShowS)
-> Show PageGetInstallabilityErrors
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageGetInstallabilityErrors] -> ShowS
$cshowList :: [PageGetInstallabilityErrors] -> ShowS
show :: PageGetInstallabilityErrors -> String
$cshow :: PageGetInstallabilityErrors -> String
showsPrec :: Int -> PageGetInstallabilityErrors -> ShowS
$cshowsPrec :: Int -> PageGetInstallabilityErrors -> ShowS
Show)
instance FromJSON PageGetInstallabilityErrors where
  parseJSON :: Value -> Parser PageGetInstallabilityErrors
parseJSON = String
-> (Object -> Parser PageGetInstallabilityErrors)
-> Value
-> Parser PageGetInstallabilityErrors
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageGetInstallabilityErrors" ((Object -> Parser PageGetInstallabilityErrors)
 -> Value -> Parser PageGetInstallabilityErrors)
-> (Object -> Parser PageGetInstallabilityErrors)
-> Value
-> Parser PageGetInstallabilityErrors
forall a b. (a -> b) -> a -> b
$ \Object
o -> [PageInstallabilityError] -> PageGetInstallabilityErrors
PageGetInstallabilityErrors
    ([PageInstallabilityError] -> PageGetInstallabilityErrors)
-> Parser [PageInstallabilityError]
-> Parser PageGetInstallabilityErrors
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser [PageInstallabilityError]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"installabilityErrors"
instance Command PPageGetInstallabilityErrors where
  type CommandResponse PPageGetInstallabilityErrors = PageGetInstallabilityErrors
  commandName :: Proxy PPageGetInstallabilityErrors -> String
commandName Proxy PPageGetInstallabilityErrors
_ = String
"Page.getInstallabilityErrors"


-- | Parameters of the 'Page.getManifestIcons' command.
data PPageGetManifestIcons = PPageGetManifestIcons
  deriving (PPageGetManifestIcons -> PPageGetManifestIcons -> Bool
(PPageGetManifestIcons -> PPageGetManifestIcons -> Bool)
-> (PPageGetManifestIcons -> PPageGetManifestIcons -> Bool)
-> Eq PPageGetManifestIcons
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageGetManifestIcons -> PPageGetManifestIcons -> Bool
$c/= :: PPageGetManifestIcons -> PPageGetManifestIcons -> Bool
== :: PPageGetManifestIcons -> PPageGetManifestIcons -> Bool
$c== :: PPageGetManifestIcons -> PPageGetManifestIcons -> Bool
Eq, Int -> PPageGetManifestIcons -> ShowS
[PPageGetManifestIcons] -> ShowS
PPageGetManifestIcons -> String
(Int -> PPageGetManifestIcons -> ShowS)
-> (PPageGetManifestIcons -> String)
-> ([PPageGetManifestIcons] -> ShowS)
-> Show PPageGetManifestIcons
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageGetManifestIcons] -> ShowS
$cshowList :: [PPageGetManifestIcons] -> ShowS
show :: PPageGetManifestIcons -> String
$cshow :: PPageGetManifestIcons -> String
showsPrec :: Int -> PPageGetManifestIcons -> ShowS
$cshowsPrec :: Int -> PPageGetManifestIcons -> ShowS
Show)
pPageGetManifestIcons
  :: PPageGetManifestIcons
pPageGetManifestIcons :: PPageGetManifestIcons
pPageGetManifestIcons
  = PPageGetManifestIcons
PPageGetManifestIcons
instance ToJSON PPageGetManifestIcons where
  toJSON :: PPageGetManifestIcons -> Value
toJSON PPageGetManifestIcons
_ = Value
A.Null
data PageGetManifestIcons = PageGetManifestIcons
  {
    PageGetManifestIcons -> Maybe Text
pageGetManifestIconsPrimaryIcon :: Maybe T.Text
  }
  deriving (PageGetManifestIcons -> PageGetManifestIcons -> Bool
(PageGetManifestIcons -> PageGetManifestIcons -> Bool)
-> (PageGetManifestIcons -> PageGetManifestIcons -> Bool)
-> Eq PageGetManifestIcons
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageGetManifestIcons -> PageGetManifestIcons -> Bool
$c/= :: PageGetManifestIcons -> PageGetManifestIcons -> Bool
== :: PageGetManifestIcons -> PageGetManifestIcons -> Bool
$c== :: PageGetManifestIcons -> PageGetManifestIcons -> Bool
Eq, Int -> PageGetManifestIcons -> ShowS
[PageGetManifestIcons] -> ShowS
PageGetManifestIcons -> String
(Int -> PageGetManifestIcons -> ShowS)
-> (PageGetManifestIcons -> String)
-> ([PageGetManifestIcons] -> ShowS)
-> Show PageGetManifestIcons
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageGetManifestIcons] -> ShowS
$cshowList :: [PageGetManifestIcons] -> ShowS
show :: PageGetManifestIcons -> String
$cshow :: PageGetManifestIcons -> String
showsPrec :: Int -> PageGetManifestIcons -> ShowS
$cshowsPrec :: Int -> PageGetManifestIcons -> ShowS
Show)
instance FromJSON PageGetManifestIcons where
  parseJSON :: Value -> Parser PageGetManifestIcons
parseJSON = String
-> (Object -> Parser PageGetManifestIcons)
-> Value
-> Parser PageGetManifestIcons
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageGetManifestIcons" ((Object -> Parser PageGetManifestIcons)
 -> Value -> Parser PageGetManifestIcons)
-> (Object -> Parser PageGetManifestIcons)
-> Value
-> Parser PageGetManifestIcons
forall a b. (a -> b) -> a -> b
$ \Object
o -> Maybe Text -> PageGetManifestIcons
PageGetManifestIcons
    (Maybe Text -> PageGetManifestIcons)
-> Parser (Maybe Text) -> Parser PageGetManifestIcons
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"primaryIcon"
instance Command PPageGetManifestIcons where
  type CommandResponse PPageGetManifestIcons = PageGetManifestIcons
  commandName :: Proxy PPageGetManifestIcons -> String
commandName Proxy PPageGetManifestIcons
_ = String
"Page.getManifestIcons"

-- | Returns the unique (PWA) app id.
--   Only returns values if the feature flag 'WebAppEnableManifestId' is enabled

-- | Parameters of the 'Page.getAppId' command.
data PPageGetAppId = PPageGetAppId
  deriving (PPageGetAppId -> PPageGetAppId -> Bool
(PPageGetAppId -> PPageGetAppId -> Bool)
-> (PPageGetAppId -> PPageGetAppId -> Bool) -> Eq PPageGetAppId
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageGetAppId -> PPageGetAppId -> Bool
$c/= :: PPageGetAppId -> PPageGetAppId -> Bool
== :: PPageGetAppId -> PPageGetAppId -> Bool
$c== :: PPageGetAppId -> PPageGetAppId -> Bool
Eq, Int -> PPageGetAppId -> ShowS
[PPageGetAppId] -> ShowS
PPageGetAppId -> String
(Int -> PPageGetAppId -> ShowS)
-> (PPageGetAppId -> String)
-> ([PPageGetAppId] -> ShowS)
-> Show PPageGetAppId
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageGetAppId] -> ShowS
$cshowList :: [PPageGetAppId] -> ShowS
show :: PPageGetAppId -> String
$cshow :: PPageGetAppId -> String
showsPrec :: Int -> PPageGetAppId -> ShowS
$cshowsPrec :: Int -> PPageGetAppId -> ShowS
Show)
pPageGetAppId
  :: PPageGetAppId
pPageGetAppId :: PPageGetAppId
pPageGetAppId
  = PPageGetAppId
PPageGetAppId
instance ToJSON PPageGetAppId where
  toJSON :: PPageGetAppId -> Value
toJSON PPageGetAppId
_ = Value
A.Null
data PageGetAppId = PageGetAppId
  {
    -- | App id, either from manifest's id attribute or computed from start_url
    PageGetAppId -> Maybe Text
pageGetAppIdAppId :: Maybe T.Text,
    -- | Recommendation for manifest's id attribute to match current id computed from start_url
    PageGetAppId -> Maybe Text
pageGetAppIdRecommendedId :: Maybe T.Text
  }
  deriving (PageGetAppId -> PageGetAppId -> Bool
(PageGetAppId -> PageGetAppId -> Bool)
-> (PageGetAppId -> PageGetAppId -> Bool) -> Eq PageGetAppId
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageGetAppId -> PageGetAppId -> Bool
$c/= :: PageGetAppId -> PageGetAppId -> Bool
== :: PageGetAppId -> PageGetAppId -> Bool
$c== :: PageGetAppId -> PageGetAppId -> Bool
Eq, Int -> PageGetAppId -> ShowS
[PageGetAppId] -> ShowS
PageGetAppId -> String
(Int -> PageGetAppId -> ShowS)
-> (PageGetAppId -> String)
-> ([PageGetAppId] -> ShowS)
-> Show PageGetAppId
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageGetAppId] -> ShowS
$cshowList :: [PageGetAppId] -> ShowS
show :: PageGetAppId -> String
$cshow :: PageGetAppId -> String
showsPrec :: Int -> PageGetAppId -> ShowS
$cshowsPrec :: Int -> PageGetAppId -> ShowS
Show)
instance FromJSON PageGetAppId where
  parseJSON :: Value -> Parser PageGetAppId
parseJSON = String
-> (Object -> Parser PageGetAppId) -> Value -> Parser PageGetAppId
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageGetAppId" ((Object -> Parser PageGetAppId) -> Value -> Parser PageGetAppId)
-> (Object -> Parser PageGetAppId) -> Value -> Parser PageGetAppId
forall a b. (a -> b) -> a -> b
$ \Object
o -> Maybe Text -> Maybe Text -> PageGetAppId
PageGetAppId
    (Maybe Text -> Maybe Text -> PageGetAppId)
-> Parser (Maybe Text) -> Parser (Maybe Text -> PageGetAppId)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"appId"
    Parser (Maybe Text -> PageGetAppId)
-> Parser (Maybe Text) -> Parser PageGetAppId
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"recommendedId"
instance Command PPageGetAppId where
  type CommandResponse PPageGetAppId = PageGetAppId
  commandName :: Proxy PPageGetAppId -> String
commandName Proxy PPageGetAppId
_ = String
"Page.getAppId"


-- | Parameters of the 'Page.getAdScriptId' command.
data PPageGetAdScriptId = PPageGetAdScriptId
  {
    PPageGetAdScriptId -> Text
pPageGetAdScriptIdFrameId :: PageFrameId
  }
  deriving (PPageGetAdScriptId -> PPageGetAdScriptId -> Bool
(PPageGetAdScriptId -> PPageGetAdScriptId -> Bool)
-> (PPageGetAdScriptId -> PPageGetAdScriptId -> Bool)
-> Eq PPageGetAdScriptId
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageGetAdScriptId -> PPageGetAdScriptId -> Bool
$c/= :: PPageGetAdScriptId -> PPageGetAdScriptId -> Bool
== :: PPageGetAdScriptId -> PPageGetAdScriptId -> Bool
$c== :: PPageGetAdScriptId -> PPageGetAdScriptId -> Bool
Eq, Int -> PPageGetAdScriptId -> ShowS
[PPageGetAdScriptId] -> ShowS
PPageGetAdScriptId -> String
(Int -> PPageGetAdScriptId -> ShowS)
-> (PPageGetAdScriptId -> String)
-> ([PPageGetAdScriptId] -> ShowS)
-> Show PPageGetAdScriptId
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageGetAdScriptId] -> ShowS
$cshowList :: [PPageGetAdScriptId] -> ShowS
show :: PPageGetAdScriptId -> String
$cshow :: PPageGetAdScriptId -> String
showsPrec :: Int -> PPageGetAdScriptId -> ShowS
$cshowsPrec :: Int -> PPageGetAdScriptId -> ShowS
Show)
pPageGetAdScriptId
  :: PageFrameId
  -> PPageGetAdScriptId
pPageGetAdScriptId :: Text -> PPageGetAdScriptId
pPageGetAdScriptId
  Text
arg_pPageGetAdScriptIdFrameId
  = Text -> PPageGetAdScriptId
PPageGetAdScriptId
    Text
arg_pPageGetAdScriptIdFrameId
instance ToJSON PPageGetAdScriptId where
  toJSON :: PPageGetAdScriptId -> Value
toJSON PPageGetAdScriptId
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"frameId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PPageGetAdScriptId -> Text
pPageGetAdScriptIdFrameId PPageGetAdScriptId
p)
    ]
data PageGetAdScriptId = PageGetAdScriptId
  {
    -- | Identifies the bottom-most script which caused the frame to be labelled
    --   as an ad. Only sent if frame is labelled as an ad and id is available.
    PageGetAdScriptId -> Maybe PageAdScriptId
pageGetAdScriptIdAdScriptId :: Maybe PageAdScriptId
  }
  deriving (PageGetAdScriptId -> PageGetAdScriptId -> Bool
(PageGetAdScriptId -> PageGetAdScriptId -> Bool)
-> (PageGetAdScriptId -> PageGetAdScriptId -> Bool)
-> Eq PageGetAdScriptId
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageGetAdScriptId -> PageGetAdScriptId -> Bool
$c/= :: PageGetAdScriptId -> PageGetAdScriptId -> Bool
== :: PageGetAdScriptId -> PageGetAdScriptId -> Bool
$c== :: PageGetAdScriptId -> PageGetAdScriptId -> Bool
Eq, Int -> PageGetAdScriptId -> ShowS
[PageGetAdScriptId] -> ShowS
PageGetAdScriptId -> String
(Int -> PageGetAdScriptId -> ShowS)
-> (PageGetAdScriptId -> String)
-> ([PageGetAdScriptId] -> ShowS)
-> Show PageGetAdScriptId
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageGetAdScriptId] -> ShowS
$cshowList :: [PageGetAdScriptId] -> ShowS
show :: PageGetAdScriptId -> String
$cshow :: PageGetAdScriptId -> String
showsPrec :: Int -> PageGetAdScriptId -> ShowS
$cshowsPrec :: Int -> PageGetAdScriptId -> ShowS
Show)
instance FromJSON PageGetAdScriptId where
  parseJSON :: Value -> Parser PageGetAdScriptId
parseJSON = String
-> (Object -> Parser PageGetAdScriptId)
-> Value
-> Parser PageGetAdScriptId
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageGetAdScriptId" ((Object -> Parser PageGetAdScriptId)
 -> Value -> Parser PageGetAdScriptId)
-> (Object -> Parser PageGetAdScriptId)
-> Value
-> Parser PageGetAdScriptId
forall a b. (a -> b) -> a -> b
$ \Object
o -> Maybe PageAdScriptId -> PageGetAdScriptId
PageGetAdScriptId
    (Maybe PageAdScriptId -> PageGetAdScriptId)
-> Parser (Maybe PageAdScriptId) -> Parser PageGetAdScriptId
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser (Maybe PageAdScriptId)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"adScriptId"
instance Command PPageGetAdScriptId where
  type CommandResponse PPageGetAdScriptId = PageGetAdScriptId
  commandName :: Proxy PPageGetAdScriptId -> String
commandName Proxy PPageGetAdScriptId
_ = String
"Page.getAdScriptId"

-- | Returns present frame tree structure.

-- | Parameters of the 'Page.getFrameTree' command.
data PPageGetFrameTree = PPageGetFrameTree
  deriving (PPageGetFrameTree -> PPageGetFrameTree -> Bool
(PPageGetFrameTree -> PPageGetFrameTree -> Bool)
-> (PPageGetFrameTree -> PPageGetFrameTree -> Bool)
-> Eq PPageGetFrameTree
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageGetFrameTree -> PPageGetFrameTree -> Bool
$c/= :: PPageGetFrameTree -> PPageGetFrameTree -> Bool
== :: PPageGetFrameTree -> PPageGetFrameTree -> Bool
$c== :: PPageGetFrameTree -> PPageGetFrameTree -> Bool
Eq, Int -> PPageGetFrameTree -> ShowS
[PPageGetFrameTree] -> ShowS
PPageGetFrameTree -> String
(Int -> PPageGetFrameTree -> ShowS)
-> (PPageGetFrameTree -> String)
-> ([PPageGetFrameTree] -> ShowS)
-> Show PPageGetFrameTree
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageGetFrameTree] -> ShowS
$cshowList :: [PPageGetFrameTree] -> ShowS
show :: PPageGetFrameTree -> String
$cshow :: PPageGetFrameTree -> String
showsPrec :: Int -> PPageGetFrameTree -> ShowS
$cshowsPrec :: Int -> PPageGetFrameTree -> ShowS
Show)
pPageGetFrameTree
  :: PPageGetFrameTree
pPageGetFrameTree :: PPageGetFrameTree
pPageGetFrameTree
  = PPageGetFrameTree
PPageGetFrameTree
instance ToJSON PPageGetFrameTree where
  toJSON :: PPageGetFrameTree -> Value
toJSON PPageGetFrameTree
_ = Value
A.Null
data PageGetFrameTree = PageGetFrameTree
  {
    -- | Present frame tree structure.
    PageGetFrameTree -> PageFrameTree
pageGetFrameTreeFrameTree :: PageFrameTree
  }
  deriving (PageGetFrameTree -> PageGetFrameTree -> Bool
(PageGetFrameTree -> PageGetFrameTree -> Bool)
-> (PageGetFrameTree -> PageGetFrameTree -> Bool)
-> Eq PageGetFrameTree
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageGetFrameTree -> PageGetFrameTree -> Bool
$c/= :: PageGetFrameTree -> PageGetFrameTree -> Bool
== :: PageGetFrameTree -> PageGetFrameTree -> Bool
$c== :: PageGetFrameTree -> PageGetFrameTree -> Bool
Eq, Int -> PageGetFrameTree -> ShowS
[PageGetFrameTree] -> ShowS
PageGetFrameTree -> String
(Int -> PageGetFrameTree -> ShowS)
-> (PageGetFrameTree -> String)
-> ([PageGetFrameTree] -> ShowS)
-> Show PageGetFrameTree
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageGetFrameTree] -> ShowS
$cshowList :: [PageGetFrameTree] -> ShowS
show :: PageGetFrameTree -> String
$cshow :: PageGetFrameTree -> String
showsPrec :: Int -> PageGetFrameTree -> ShowS
$cshowsPrec :: Int -> PageGetFrameTree -> ShowS
Show)
instance FromJSON PageGetFrameTree where
  parseJSON :: Value -> Parser PageGetFrameTree
parseJSON = String
-> (Object -> Parser PageGetFrameTree)
-> Value
-> Parser PageGetFrameTree
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageGetFrameTree" ((Object -> Parser PageGetFrameTree)
 -> Value -> Parser PageGetFrameTree)
-> (Object -> Parser PageGetFrameTree)
-> Value
-> Parser PageGetFrameTree
forall a b. (a -> b) -> a -> b
$ \Object
o -> PageFrameTree -> PageGetFrameTree
PageGetFrameTree
    (PageFrameTree -> PageGetFrameTree)
-> Parser PageFrameTree -> Parser PageGetFrameTree
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser PageFrameTree
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"frameTree"
instance Command PPageGetFrameTree where
  type CommandResponse PPageGetFrameTree = PageGetFrameTree
  commandName :: Proxy PPageGetFrameTree -> String
commandName Proxy PPageGetFrameTree
_ = String
"Page.getFrameTree"

-- | Returns metrics relating to the layouting of the page, such as viewport bounds/scale.

-- | Parameters of the 'Page.getLayoutMetrics' command.
data PPageGetLayoutMetrics = PPageGetLayoutMetrics
  deriving (PPageGetLayoutMetrics -> PPageGetLayoutMetrics -> Bool
(PPageGetLayoutMetrics -> PPageGetLayoutMetrics -> Bool)
-> (PPageGetLayoutMetrics -> PPageGetLayoutMetrics -> Bool)
-> Eq PPageGetLayoutMetrics
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageGetLayoutMetrics -> PPageGetLayoutMetrics -> Bool
$c/= :: PPageGetLayoutMetrics -> PPageGetLayoutMetrics -> Bool
== :: PPageGetLayoutMetrics -> PPageGetLayoutMetrics -> Bool
$c== :: PPageGetLayoutMetrics -> PPageGetLayoutMetrics -> Bool
Eq, Int -> PPageGetLayoutMetrics -> ShowS
[PPageGetLayoutMetrics] -> ShowS
PPageGetLayoutMetrics -> String
(Int -> PPageGetLayoutMetrics -> ShowS)
-> (PPageGetLayoutMetrics -> String)
-> ([PPageGetLayoutMetrics] -> ShowS)
-> Show PPageGetLayoutMetrics
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageGetLayoutMetrics] -> ShowS
$cshowList :: [PPageGetLayoutMetrics] -> ShowS
show :: PPageGetLayoutMetrics -> String
$cshow :: PPageGetLayoutMetrics -> String
showsPrec :: Int -> PPageGetLayoutMetrics -> ShowS
$cshowsPrec :: Int -> PPageGetLayoutMetrics -> ShowS
Show)
pPageGetLayoutMetrics
  :: PPageGetLayoutMetrics
pPageGetLayoutMetrics :: PPageGetLayoutMetrics
pPageGetLayoutMetrics
  = PPageGetLayoutMetrics
PPageGetLayoutMetrics
instance ToJSON PPageGetLayoutMetrics where
  toJSON :: PPageGetLayoutMetrics -> Value
toJSON PPageGetLayoutMetrics
_ = Value
A.Null
data PageGetLayoutMetrics = PageGetLayoutMetrics
  {
    -- | Metrics relating to the layout viewport in CSS pixels.
    PageGetLayoutMetrics -> PageLayoutViewport
pageGetLayoutMetricsCssLayoutViewport :: PageLayoutViewport,
    -- | Metrics relating to the visual viewport in CSS pixels.
    PageGetLayoutMetrics -> PageVisualViewport
pageGetLayoutMetricsCssVisualViewport :: PageVisualViewport,
    -- | Size of scrollable area in CSS pixels.
    PageGetLayoutMetrics -> DOMRect
pageGetLayoutMetricsCssContentSize :: DOMRect
  }
  deriving (PageGetLayoutMetrics -> PageGetLayoutMetrics -> Bool
(PageGetLayoutMetrics -> PageGetLayoutMetrics -> Bool)
-> (PageGetLayoutMetrics -> PageGetLayoutMetrics -> Bool)
-> Eq PageGetLayoutMetrics
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageGetLayoutMetrics -> PageGetLayoutMetrics -> Bool
$c/= :: PageGetLayoutMetrics -> PageGetLayoutMetrics -> Bool
== :: PageGetLayoutMetrics -> PageGetLayoutMetrics -> Bool
$c== :: PageGetLayoutMetrics -> PageGetLayoutMetrics -> Bool
Eq, Int -> PageGetLayoutMetrics -> ShowS
[PageGetLayoutMetrics] -> ShowS
PageGetLayoutMetrics -> String
(Int -> PageGetLayoutMetrics -> ShowS)
-> (PageGetLayoutMetrics -> String)
-> ([PageGetLayoutMetrics] -> ShowS)
-> Show PageGetLayoutMetrics
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageGetLayoutMetrics] -> ShowS
$cshowList :: [PageGetLayoutMetrics] -> ShowS
show :: PageGetLayoutMetrics -> String
$cshow :: PageGetLayoutMetrics -> String
showsPrec :: Int -> PageGetLayoutMetrics -> ShowS
$cshowsPrec :: Int -> PageGetLayoutMetrics -> ShowS
Show)
instance FromJSON PageGetLayoutMetrics where
  parseJSON :: Value -> Parser PageGetLayoutMetrics
parseJSON = String
-> (Object -> Parser PageGetLayoutMetrics)
-> Value
-> Parser PageGetLayoutMetrics
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageGetLayoutMetrics" ((Object -> Parser PageGetLayoutMetrics)
 -> Value -> Parser PageGetLayoutMetrics)
-> (Object -> Parser PageGetLayoutMetrics)
-> Value
-> Parser PageGetLayoutMetrics
forall a b. (a -> b) -> a -> b
$ \Object
o -> PageLayoutViewport
-> PageVisualViewport -> DOMRect -> PageGetLayoutMetrics
PageGetLayoutMetrics
    (PageLayoutViewport
 -> PageVisualViewport -> DOMRect -> PageGetLayoutMetrics)
-> Parser PageLayoutViewport
-> Parser (PageVisualViewport -> DOMRect -> PageGetLayoutMetrics)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser PageLayoutViewport
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"cssLayoutViewport"
    Parser (PageVisualViewport -> DOMRect -> PageGetLayoutMetrics)
-> Parser PageVisualViewport
-> Parser (DOMRect -> PageGetLayoutMetrics)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser PageVisualViewport
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"cssVisualViewport"
    Parser (DOMRect -> PageGetLayoutMetrics)
-> Parser DOMRect -> Parser PageGetLayoutMetrics
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser DOMRect
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"cssContentSize"
instance Command PPageGetLayoutMetrics where
  type CommandResponse PPageGetLayoutMetrics = PageGetLayoutMetrics
  commandName :: Proxy PPageGetLayoutMetrics -> String
commandName Proxy PPageGetLayoutMetrics
_ = String
"Page.getLayoutMetrics"

-- | Returns navigation history for the current page.

-- | Parameters of the 'Page.getNavigationHistory' command.
data PPageGetNavigationHistory = PPageGetNavigationHistory
  deriving (PPageGetNavigationHistory -> PPageGetNavigationHistory -> Bool
(PPageGetNavigationHistory -> PPageGetNavigationHistory -> Bool)
-> (PPageGetNavigationHistory -> PPageGetNavigationHistory -> Bool)
-> Eq PPageGetNavigationHistory
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageGetNavigationHistory -> PPageGetNavigationHistory -> Bool
$c/= :: PPageGetNavigationHistory -> PPageGetNavigationHistory -> Bool
== :: PPageGetNavigationHistory -> PPageGetNavigationHistory -> Bool
$c== :: PPageGetNavigationHistory -> PPageGetNavigationHistory -> Bool
Eq, Int -> PPageGetNavigationHistory -> ShowS
[PPageGetNavigationHistory] -> ShowS
PPageGetNavigationHistory -> String
(Int -> PPageGetNavigationHistory -> ShowS)
-> (PPageGetNavigationHistory -> String)
-> ([PPageGetNavigationHistory] -> ShowS)
-> Show PPageGetNavigationHistory
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageGetNavigationHistory] -> ShowS
$cshowList :: [PPageGetNavigationHistory] -> ShowS
show :: PPageGetNavigationHistory -> String
$cshow :: PPageGetNavigationHistory -> String
showsPrec :: Int -> PPageGetNavigationHistory -> ShowS
$cshowsPrec :: Int -> PPageGetNavigationHistory -> ShowS
Show)
pPageGetNavigationHistory
  :: PPageGetNavigationHistory
pPageGetNavigationHistory :: PPageGetNavigationHistory
pPageGetNavigationHistory
  = PPageGetNavigationHistory
PPageGetNavigationHistory
instance ToJSON PPageGetNavigationHistory where
  toJSON :: PPageGetNavigationHistory -> Value
toJSON PPageGetNavigationHistory
_ = Value
A.Null
data PageGetNavigationHistory = PageGetNavigationHistory
  {
    -- | Index of the current navigation history entry.
    PageGetNavigationHistory -> Int
pageGetNavigationHistoryCurrentIndex :: Int,
    -- | Array of navigation history entries.
    PageGetNavigationHistory -> [PageNavigationEntry]
pageGetNavigationHistoryEntries :: [PageNavigationEntry]
  }
  deriving (PageGetNavigationHistory -> PageGetNavigationHistory -> Bool
(PageGetNavigationHistory -> PageGetNavigationHistory -> Bool)
-> (PageGetNavigationHistory -> PageGetNavigationHistory -> Bool)
-> Eq PageGetNavigationHistory
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageGetNavigationHistory -> PageGetNavigationHistory -> Bool
$c/= :: PageGetNavigationHistory -> PageGetNavigationHistory -> Bool
== :: PageGetNavigationHistory -> PageGetNavigationHistory -> Bool
$c== :: PageGetNavigationHistory -> PageGetNavigationHistory -> Bool
Eq, Int -> PageGetNavigationHistory -> ShowS
[PageGetNavigationHistory] -> ShowS
PageGetNavigationHistory -> String
(Int -> PageGetNavigationHistory -> ShowS)
-> (PageGetNavigationHistory -> String)
-> ([PageGetNavigationHistory] -> ShowS)
-> Show PageGetNavigationHistory
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageGetNavigationHistory] -> ShowS
$cshowList :: [PageGetNavigationHistory] -> ShowS
show :: PageGetNavigationHistory -> String
$cshow :: PageGetNavigationHistory -> String
showsPrec :: Int -> PageGetNavigationHistory -> ShowS
$cshowsPrec :: Int -> PageGetNavigationHistory -> ShowS
Show)
instance FromJSON PageGetNavigationHistory where
  parseJSON :: Value -> Parser PageGetNavigationHistory
parseJSON = String
-> (Object -> Parser PageGetNavigationHistory)
-> Value
-> Parser PageGetNavigationHistory
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageGetNavigationHistory" ((Object -> Parser PageGetNavigationHistory)
 -> Value -> Parser PageGetNavigationHistory)
-> (Object -> Parser PageGetNavigationHistory)
-> Value
-> Parser PageGetNavigationHistory
forall a b. (a -> b) -> a -> b
$ \Object
o -> Int -> [PageNavigationEntry] -> PageGetNavigationHistory
PageGetNavigationHistory
    (Int -> [PageNavigationEntry] -> PageGetNavigationHistory)
-> Parser Int
-> Parser ([PageNavigationEntry] -> PageGetNavigationHistory)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Int
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"currentIndex"
    Parser ([PageNavigationEntry] -> PageGetNavigationHistory)
-> Parser [PageNavigationEntry] -> Parser PageGetNavigationHistory
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser [PageNavigationEntry]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"entries"
instance Command PPageGetNavigationHistory where
  type CommandResponse PPageGetNavigationHistory = PageGetNavigationHistory
  commandName :: Proxy PPageGetNavigationHistory -> String
commandName Proxy PPageGetNavigationHistory
_ = String
"Page.getNavigationHistory"

-- | Resets navigation history for the current page.

-- | Parameters of the 'Page.resetNavigationHistory' command.
data PPageResetNavigationHistory = PPageResetNavigationHistory
  deriving (PPageResetNavigationHistory -> PPageResetNavigationHistory -> Bool
(PPageResetNavigationHistory
 -> PPageResetNavigationHistory -> Bool)
-> (PPageResetNavigationHistory
    -> PPageResetNavigationHistory -> Bool)
-> Eq PPageResetNavigationHistory
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageResetNavigationHistory -> PPageResetNavigationHistory -> Bool
$c/= :: PPageResetNavigationHistory -> PPageResetNavigationHistory -> Bool
== :: PPageResetNavigationHistory -> PPageResetNavigationHistory -> Bool
$c== :: PPageResetNavigationHistory -> PPageResetNavigationHistory -> Bool
Eq, Int -> PPageResetNavigationHistory -> ShowS
[PPageResetNavigationHistory] -> ShowS
PPageResetNavigationHistory -> String
(Int -> PPageResetNavigationHistory -> ShowS)
-> (PPageResetNavigationHistory -> String)
-> ([PPageResetNavigationHistory] -> ShowS)
-> Show PPageResetNavigationHistory
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageResetNavigationHistory] -> ShowS
$cshowList :: [PPageResetNavigationHistory] -> ShowS
show :: PPageResetNavigationHistory -> String
$cshow :: PPageResetNavigationHistory -> String
showsPrec :: Int -> PPageResetNavigationHistory -> ShowS
$cshowsPrec :: Int -> PPageResetNavigationHistory -> ShowS
Show)
pPageResetNavigationHistory
  :: PPageResetNavigationHistory
pPageResetNavigationHistory :: PPageResetNavigationHistory
pPageResetNavigationHistory
  = PPageResetNavigationHistory
PPageResetNavigationHistory
instance ToJSON PPageResetNavigationHistory where
  toJSON :: PPageResetNavigationHistory -> Value
toJSON PPageResetNavigationHistory
_ = Value
A.Null
instance Command PPageResetNavigationHistory where
  type CommandResponse PPageResetNavigationHistory = ()
  commandName :: Proxy PPageResetNavigationHistory -> String
commandName Proxy PPageResetNavigationHistory
_ = String
"Page.resetNavigationHistory"
  fromJSON :: Proxy PPageResetNavigationHistory
-> Value -> Result (CommandResponse PPageResetNavigationHistory)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PPageResetNavigationHistory -> Result ())
-> Proxy PPageResetNavigationHistory
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PPageResetNavigationHistory -> ())
-> Proxy PPageResetNavigationHistory
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PPageResetNavigationHistory -> ()
forall a b. a -> b -> a
const ()

-- | Returns content of the given resource.

-- | Parameters of the 'Page.getResourceContent' command.
data PPageGetResourceContent = PPageGetResourceContent
  {
    -- | Frame id to get resource for.
    PPageGetResourceContent -> Text
pPageGetResourceContentFrameId :: PageFrameId,
    -- | URL of the resource to get content for.
    PPageGetResourceContent -> Text
pPageGetResourceContentUrl :: T.Text
  }
  deriving (PPageGetResourceContent -> PPageGetResourceContent -> Bool
(PPageGetResourceContent -> PPageGetResourceContent -> Bool)
-> (PPageGetResourceContent -> PPageGetResourceContent -> Bool)
-> Eq PPageGetResourceContent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageGetResourceContent -> PPageGetResourceContent -> Bool
$c/= :: PPageGetResourceContent -> PPageGetResourceContent -> Bool
== :: PPageGetResourceContent -> PPageGetResourceContent -> Bool
$c== :: PPageGetResourceContent -> PPageGetResourceContent -> Bool
Eq, Int -> PPageGetResourceContent -> ShowS
[PPageGetResourceContent] -> ShowS
PPageGetResourceContent -> String
(Int -> PPageGetResourceContent -> ShowS)
-> (PPageGetResourceContent -> String)
-> ([PPageGetResourceContent] -> ShowS)
-> Show PPageGetResourceContent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageGetResourceContent] -> ShowS
$cshowList :: [PPageGetResourceContent] -> ShowS
show :: PPageGetResourceContent -> String
$cshow :: PPageGetResourceContent -> String
showsPrec :: Int -> PPageGetResourceContent -> ShowS
$cshowsPrec :: Int -> PPageGetResourceContent -> ShowS
Show)
pPageGetResourceContent
  {-
  -- | Frame id to get resource for.
  -}
  :: PageFrameId
  {-
  -- | URL of the resource to get content for.
  -}
  -> T.Text
  -> PPageGetResourceContent
pPageGetResourceContent :: Text -> Text -> PPageGetResourceContent
pPageGetResourceContent
  Text
arg_pPageGetResourceContentFrameId
  Text
arg_pPageGetResourceContentUrl
  = Text -> Text -> PPageGetResourceContent
PPageGetResourceContent
    Text
arg_pPageGetResourceContentFrameId
    Text
arg_pPageGetResourceContentUrl
instance ToJSON PPageGetResourceContent where
  toJSON :: PPageGetResourceContent -> Value
toJSON PPageGetResourceContent
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"frameId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PPageGetResourceContent -> Text
pPageGetResourceContentFrameId PPageGetResourceContent
p),
    (Text
"url" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PPageGetResourceContent -> Text
pPageGetResourceContentUrl PPageGetResourceContent
p)
    ]
data PageGetResourceContent = PageGetResourceContent
  {
    -- | Resource content.
    PageGetResourceContent -> Text
pageGetResourceContentContent :: T.Text,
    -- | True, if content was served as base64.
    PageGetResourceContent -> Bool
pageGetResourceContentBase64Encoded :: Bool
  }
  deriving (PageGetResourceContent -> PageGetResourceContent -> Bool
(PageGetResourceContent -> PageGetResourceContent -> Bool)
-> (PageGetResourceContent -> PageGetResourceContent -> Bool)
-> Eq PageGetResourceContent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageGetResourceContent -> PageGetResourceContent -> Bool
$c/= :: PageGetResourceContent -> PageGetResourceContent -> Bool
== :: PageGetResourceContent -> PageGetResourceContent -> Bool
$c== :: PageGetResourceContent -> PageGetResourceContent -> Bool
Eq, Int -> PageGetResourceContent -> ShowS
[PageGetResourceContent] -> ShowS
PageGetResourceContent -> String
(Int -> PageGetResourceContent -> ShowS)
-> (PageGetResourceContent -> String)
-> ([PageGetResourceContent] -> ShowS)
-> Show PageGetResourceContent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageGetResourceContent] -> ShowS
$cshowList :: [PageGetResourceContent] -> ShowS
show :: PageGetResourceContent -> String
$cshow :: PageGetResourceContent -> String
showsPrec :: Int -> PageGetResourceContent -> ShowS
$cshowsPrec :: Int -> PageGetResourceContent -> ShowS
Show)
instance FromJSON PageGetResourceContent where
  parseJSON :: Value -> Parser PageGetResourceContent
parseJSON = String
-> (Object -> Parser PageGetResourceContent)
-> Value
-> Parser PageGetResourceContent
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageGetResourceContent" ((Object -> Parser PageGetResourceContent)
 -> Value -> Parser PageGetResourceContent)
-> (Object -> Parser PageGetResourceContent)
-> Value
-> Parser PageGetResourceContent
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> Bool -> PageGetResourceContent
PageGetResourceContent
    (Text -> Bool -> PageGetResourceContent)
-> Parser Text -> Parser (Bool -> PageGetResourceContent)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"content"
    Parser (Bool -> PageGetResourceContent)
-> Parser Bool -> Parser PageGetResourceContent
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Bool
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"base64Encoded"
instance Command PPageGetResourceContent where
  type CommandResponse PPageGetResourceContent = PageGetResourceContent
  commandName :: Proxy PPageGetResourceContent -> String
commandName Proxy PPageGetResourceContent
_ = String
"Page.getResourceContent"

-- | Returns present frame / resource tree structure.

-- | Parameters of the 'Page.getResourceTree' command.
data PPageGetResourceTree = PPageGetResourceTree
  deriving (PPageGetResourceTree -> PPageGetResourceTree -> Bool
(PPageGetResourceTree -> PPageGetResourceTree -> Bool)
-> (PPageGetResourceTree -> PPageGetResourceTree -> Bool)
-> Eq PPageGetResourceTree
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageGetResourceTree -> PPageGetResourceTree -> Bool
$c/= :: PPageGetResourceTree -> PPageGetResourceTree -> Bool
== :: PPageGetResourceTree -> PPageGetResourceTree -> Bool
$c== :: PPageGetResourceTree -> PPageGetResourceTree -> Bool
Eq, Int -> PPageGetResourceTree -> ShowS
[PPageGetResourceTree] -> ShowS
PPageGetResourceTree -> String
(Int -> PPageGetResourceTree -> ShowS)
-> (PPageGetResourceTree -> String)
-> ([PPageGetResourceTree] -> ShowS)
-> Show PPageGetResourceTree
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageGetResourceTree] -> ShowS
$cshowList :: [PPageGetResourceTree] -> ShowS
show :: PPageGetResourceTree -> String
$cshow :: PPageGetResourceTree -> String
showsPrec :: Int -> PPageGetResourceTree -> ShowS
$cshowsPrec :: Int -> PPageGetResourceTree -> ShowS
Show)
pPageGetResourceTree
  :: PPageGetResourceTree
pPageGetResourceTree :: PPageGetResourceTree
pPageGetResourceTree
  = PPageGetResourceTree
PPageGetResourceTree
instance ToJSON PPageGetResourceTree where
  toJSON :: PPageGetResourceTree -> Value
toJSON PPageGetResourceTree
_ = Value
A.Null
data PageGetResourceTree = PageGetResourceTree
  {
    -- | Present frame / resource tree structure.
    PageGetResourceTree -> PageFrameResourceTree
pageGetResourceTreeFrameTree :: PageFrameResourceTree
  }
  deriving (PageGetResourceTree -> PageGetResourceTree -> Bool
(PageGetResourceTree -> PageGetResourceTree -> Bool)
-> (PageGetResourceTree -> PageGetResourceTree -> Bool)
-> Eq PageGetResourceTree
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageGetResourceTree -> PageGetResourceTree -> Bool
$c/= :: PageGetResourceTree -> PageGetResourceTree -> Bool
== :: PageGetResourceTree -> PageGetResourceTree -> Bool
$c== :: PageGetResourceTree -> PageGetResourceTree -> Bool
Eq, Int -> PageGetResourceTree -> ShowS
[PageGetResourceTree] -> ShowS
PageGetResourceTree -> String
(Int -> PageGetResourceTree -> ShowS)
-> (PageGetResourceTree -> String)
-> ([PageGetResourceTree] -> ShowS)
-> Show PageGetResourceTree
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageGetResourceTree] -> ShowS
$cshowList :: [PageGetResourceTree] -> ShowS
show :: PageGetResourceTree -> String
$cshow :: PageGetResourceTree -> String
showsPrec :: Int -> PageGetResourceTree -> ShowS
$cshowsPrec :: Int -> PageGetResourceTree -> ShowS
Show)
instance FromJSON PageGetResourceTree where
  parseJSON :: Value -> Parser PageGetResourceTree
parseJSON = String
-> (Object -> Parser PageGetResourceTree)
-> Value
-> Parser PageGetResourceTree
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageGetResourceTree" ((Object -> Parser PageGetResourceTree)
 -> Value -> Parser PageGetResourceTree)
-> (Object -> Parser PageGetResourceTree)
-> Value
-> Parser PageGetResourceTree
forall a b. (a -> b) -> a -> b
$ \Object
o -> PageFrameResourceTree -> PageGetResourceTree
PageGetResourceTree
    (PageFrameResourceTree -> PageGetResourceTree)
-> Parser PageFrameResourceTree -> Parser PageGetResourceTree
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser PageFrameResourceTree
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"frameTree"
instance Command PPageGetResourceTree where
  type CommandResponse PPageGetResourceTree = PageGetResourceTree
  commandName :: Proxy PPageGetResourceTree -> String
commandName Proxy PPageGetResourceTree
_ = String
"Page.getResourceTree"

-- | Accepts or dismisses a JavaScript initiated dialog (alert, confirm, prompt, or onbeforeunload).

-- | Parameters of the 'Page.handleJavaScriptDialog' command.
data PPageHandleJavaScriptDialog = PPageHandleJavaScriptDialog
  {
    -- | Whether to accept or dismiss the dialog.
    PPageHandleJavaScriptDialog -> Bool
pPageHandleJavaScriptDialogAccept :: Bool,
    -- | The text to enter into the dialog prompt before accepting. Used only if this is a prompt
    --   dialog.
    PPageHandleJavaScriptDialog -> Maybe Text
pPageHandleJavaScriptDialogPromptText :: Maybe T.Text
  }
  deriving (PPageHandleJavaScriptDialog -> PPageHandleJavaScriptDialog -> Bool
(PPageHandleJavaScriptDialog
 -> PPageHandleJavaScriptDialog -> Bool)
-> (PPageHandleJavaScriptDialog
    -> PPageHandleJavaScriptDialog -> Bool)
-> Eq PPageHandleJavaScriptDialog
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageHandleJavaScriptDialog -> PPageHandleJavaScriptDialog -> Bool
$c/= :: PPageHandleJavaScriptDialog -> PPageHandleJavaScriptDialog -> Bool
== :: PPageHandleJavaScriptDialog -> PPageHandleJavaScriptDialog -> Bool
$c== :: PPageHandleJavaScriptDialog -> PPageHandleJavaScriptDialog -> Bool
Eq, Int -> PPageHandleJavaScriptDialog -> ShowS
[PPageHandleJavaScriptDialog] -> ShowS
PPageHandleJavaScriptDialog -> String
(Int -> PPageHandleJavaScriptDialog -> ShowS)
-> (PPageHandleJavaScriptDialog -> String)
-> ([PPageHandleJavaScriptDialog] -> ShowS)
-> Show PPageHandleJavaScriptDialog
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageHandleJavaScriptDialog] -> ShowS
$cshowList :: [PPageHandleJavaScriptDialog] -> ShowS
show :: PPageHandleJavaScriptDialog -> String
$cshow :: PPageHandleJavaScriptDialog -> String
showsPrec :: Int -> PPageHandleJavaScriptDialog -> ShowS
$cshowsPrec :: Int -> PPageHandleJavaScriptDialog -> ShowS
Show)
pPageHandleJavaScriptDialog
  {-
  -- | Whether to accept or dismiss the dialog.
  -}
  :: Bool
  -> PPageHandleJavaScriptDialog
pPageHandleJavaScriptDialog :: Bool -> PPageHandleJavaScriptDialog
pPageHandleJavaScriptDialog
  Bool
arg_pPageHandleJavaScriptDialogAccept
  = Bool -> Maybe Text -> PPageHandleJavaScriptDialog
PPageHandleJavaScriptDialog
    Bool
arg_pPageHandleJavaScriptDialogAccept
    Maybe Text
forall a. Maybe a
Nothing
instance ToJSON PPageHandleJavaScriptDialog where
  toJSON :: PPageHandleJavaScriptDialog -> Value
toJSON PPageHandleJavaScriptDialog
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"accept" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (PPageHandleJavaScriptDialog -> Bool
pPageHandleJavaScriptDialogAccept PPageHandleJavaScriptDialog
p),
    (Text
"promptText" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPageHandleJavaScriptDialog -> Maybe Text
pPageHandleJavaScriptDialogPromptText PPageHandleJavaScriptDialog
p)
    ]
instance Command PPageHandleJavaScriptDialog where
  type CommandResponse PPageHandleJavaScriptDialog = ()
  commandName :: Proxy PPageHandleJavaScriptDialog -> String
commandName Proxy PPageHandleJavaScriptDialog
_ = String
"Page.handleJavaScriptDialog"
  fromJSON :: Proxy PPageHandleJavaScriptDialog
-> Value -> Result (CommandResponse PPageHandleJavaScriptDialog)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PPageHandleJavaScriptDialog -> Result ())
-> Proxy PPageHandleJavaScriptDialog
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PPageHandleJavaScriptDialog -> ())
-> Proxy PPageHandleJavaScriptDialog
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PPageHandleJavaScriptDialog -> ()
forall a b. a -> b -> a
const ()

-- | Navigates current page to the given URL.

-- | Parameters of the 'Page.navigate' command.
data PPageNavigate = PPageNavigate
  {
    -- | URL to navigate the page to.
    PPageNavigate -> Text
pPageNavigateUrl :: T.Text,
    -- | Referrer URL.
    PPageNavigate -> Maybe Text
pPageNavigateReferrer :: Maybe T.Text,
    -- | Intended transition type.
    PPageNavigate -> Maybe PageTransitionType
pPageNavigateTransitionType :: Maybe PageTransitionType,
    -- | Frame id to navigate, if not specified navigates the top frame.
    PPageNavigate -> Maybe Text
pPageNavigateFrameId :: Maybe PageFrameId,
    -- | Referrer-policy used for the navigation.
    PPageNavigate -> Maybe PageReferrerPolicy
pPageNavigateReferrerPolicy :: Maybe PageReferrerPolicy
  }
  deriving (PPageNavigate -> PPageNavigate -> Bool
(PPageNavigate -> PPageNavigate -> Bool)
-> (PPageNavigate -> PPageNavigate -> Bool) -> Eq PPageNavigate
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageNavigate -> PPageNavigate -> Bool
$c/= :: PPageNavigate -> PPageNavigate -> Bool
== :: PPageNavigate -> PPageNavigate -> Bool
$c== :: PPageNavigate -> PPageNavigate -> Bool
Eq, Int -> PPageNavigate -> ShowS
[PPageNavigate] -> ShowS
PPageNavigate -> String
(Int -> PPageNavigate -> ShowS)
-> (PPageNavigate -> String)
-> ([PPageNavigate] -> ShowS)
-> Show PPageNavigate
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageNavigate] -> ShowS
$cshowList :: [PPageNavigate] -> ShowS
show :: PPageNavigate -> String
$cshow :: PPageNavigate -> String
showsPrec :: Int -> PPageNavigate -> ShowS
$cshowsPrec :: Int -> PPageNavigate -> ShowS
Show)
pPageNavigate
  {-
  -- | URL to navigate the page to.
  -}
  :: T.Text
  -> PPageNavigate
pPageNavigate :: Text -> PPageNavigate
pPageNavigate
  Text
arg_pPageNavigateUrl
  = Text
-> Maybe Text
-> Maybe PageTransitionType
-> Maybe Text
-> Maybe PageReferrerPolicy
-> PPageNavigate
PPageNavigate
    Text
arg_pPageNavigateUrl
    Maybe Text
forall a. Maybe a
Nothing
    Maybe PageTransitionType
forall a. Maybe a
Nothing
    Maybe Text
forall a. Maybe a
Nothing
    Maybe PageReferrerPolicy
forall a. Maybe a
Nothing
instance ToJSON PPageNavigate where
  toJSON :: PPageNavigate -> Value
toJSON PPageNavigate
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"url" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PPageNavigate -> Text
pPageNavigateUrl PPageNavigate
p),
    (Text
"referrer" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPageNavigate -> Maybe Text
pPageNavigateReferrer PPageNavigate
p),
    (Text
"transitionType" Text -> PageTransitionType -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (PageTransitionType -> Pair)
-> Maybe PageTransitionType -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPageNavigate -> Maybe PageTransitionType
pPageNavigateTransitionType PPageNavigate
p),
    (Text
"frameId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPageNavigate -> Maybe Text
pPageNavigateFrameId PPageNavigate
p),
    (Text
"referrerPolicy" Text -> PageReferrerPolicy -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (PageReferrerPolicy -> Pair)
-> Maybe PageReferrerPolicy -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPageNavigate -> Maybe PageReferrerPolicy
pPageNavigateReferrerPolicy PPageNavigate
p)
    ]
data PageNavigate = PageNavigate
  {
    -- | Frame id that has navigated (or failed to navigate)
    PageNavigate -> Text
pageNavigateFrameId :: PageFrameId,
    -- | Loader identifier. This is omitted in case of same-document navigation,
    --   as the previously committed loaderId would not change.
    PageNavigate -> Maybe Text
pageNavigateLoaderId :: Maybe NetworkLoaderId,
    -- | User friendly error message, present if and only if navigation has failed.
    PageNavigate -> Maybe Text
pageNavigateErrorText :: Maybe T.Text
  }
  deriving (PageNavigate -> PageNavigate -> Bool
(PageNavigate -> PageNavigate -> Bool)
-> (PageNavigate -> PageNavigate -> Bool) -> Eq PageNavigate
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageNavigate -> PageNavigate -> Bool
$c/= :: PageNavigate -> PageNavigate -> Bool
== :: PageNavigate -> PageNavigate -> Bool
$c== :: PageNavigate -> PageNavigate -> Bool
Eq, Int -> PageNavigate -> ShowS
[PageNavigate] -> ShowS
PageNavigate -> String
(Int -> PageNavigate -> ShowS)
-> (PageNavigate -> String)
-> ([PageNavigate] -> ShowS)
-> Show PageNavigate
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageNavigate] -> ShowS
$cshowList :: [PageNavigate] -> ShowS
show :: PageNavigate -> String
$cshow :: PageNavigate -> String
showsPrec :: Int -> PageNavigate -> ShowS
$cshowsPrec :: Int -> PageNavigate -> ShowS
Show)
instance FromJSON PageNavigate where
  parseJSON :: Value -> Parser PageNavigate
parseJSON = String
-> (Object -> Parser PageNavigate) -> Value -> Parser PageNavigate
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageNavigate" ((Object -> Parser PageNavigate) -> Value -> Parser PageNavigate)
-> (Object -> Parser PageNavigate) -> Value -> Parser PageNavigate
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> Maybe Text -> Maybe Text -> PageNavigate
PageNavigate
    (Text -> Maybe Text -> Maybe Text -> PageNavigate)
-> Parser Text -> Parser (Maybe Text -> Maybe Text -> PageNavigate)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"frameId"
    Parser (Maybe Text -> Maybe Text -> PageNavigate)
-> Parser (Maybe Text) -> Parser (Maybe Text -> PageNavigate)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"loaderId"
    Parser (Maybe Text -> PageNavigate)
-> Parser (Maybe Text) -> Parser PageNavigate
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"errorText"
instance Command PPageNavigate where
  type CommandResponse PPageNavigate = PageNavigate
  commandName :: Proxy PPageNavigate -> String
commandName Proxy PPageNavigate
_ = String
"Page.navigate"

-- | Navigates current page to the given history entry.

-- | Parameters of the 'Page.navigateToHistoryEntry' command.
data PPageNavigateToHistoryEntry = PPageNavigateToHistoryEntry
  {
    -- | Unique id of the entry to navigate to.
    PPageNavigateToHistoryEntry -> Int
pPageNavigateToHistoryEntryEntryId :: Int
  }
  deriving (PPageNavigateToHistoryEntry -> PPageNavigateToHistoryEntry -> Bool
(PPageNavigateToHistoryEntry
 -> PPageNavigateToHistoryEntry -> Bool)
-> (PPageNavigateToHistoryEntry
    -> PPageNavigateToHistoryEntry -> Bool)
-> Eq PPageNavigateToHistoryEntry
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageNavigateToHistoryEntry -> PPageNavigateToHistoryEntry -> Bool
$c/= :: PPageNavigateToHistoryEntry -> PPageNavigateToHistoryEntry -> Bool
== :: PPageNavigateToHistoryEntry -> PPageNavigateToHistoryEntry -> Bool
$c== :: PPageNavigateToHistoryEntry -> PPageNavigateToHistoryEntry -> Bool
Eq, Int -> PPageNavigateToHistoryEntry -> ShowS
[PPageNavigateToHistoryEntry] -> ShowS
PPageNavigateToHistoryEntry -> String
(Int -> PPageNavigateToHistoryEntry -> ShowS)
-> (PPageNavigateToHistoryEntry -> String)
-> ([PPageNavigateToHistoryEntry] -> ShowS)
-> Show PPageNavigateToHistoryEntry
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageNavigateToHistoryEntry] -> ShowS
$cshowList :: [PPageNavigateToHistoryEntry] -> ShowS
show :: PPageNavigateToHistoryEntry -> String
$cshow :: PPageNavigateToHistoryEntry -> String
showsPrec :: Int -> PPageNavigateToHistoryEntry -> ShowS
$cshowsPrec :: Int -> PPageNavigateToHistoryEntry -> ShowS
Show)
pPageNavigateToHistoryEntry
  {-
  -- | Unique id of the entry to navigate to.
  -}
  :: Int
  -> PPageNavigateToHistoryEntry
pPageNavigateToHistoryEntry :: Int -> PPageNavigateToHistoryEntry
pPageNavigateToHistoryEntry
  Int
arg_pPageNavigateToHistoryEntryEntryId
  = Int -> PPageNavigateToHistoryEntry
PPageNavigateToHistoryEntry
    Int
arg_pPageNavigateToHistoryEntryEntryId
instance ToJSON PPageNavigateToHistoryEntry where
  toJSON :: PPageNavigateToHistoryEntry -> Value
toJSON PPageNavigateToHistoryEntry
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"entryId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PPageNavigateToHistoryEntry -> Int
pPageNavigateToHistoryEntryEntryId PPageNavigateToHistoryEntry
p)
    ]
instance Command PPageNavigateToHistoryEntry where
  type CommandResponse PPageNavigateToHistoryEntry = ()
  commandName :: Proxy PPageNavigateToHistoryEntry -> String
commandName Proxy PPageNavigateToHistoryEntry
_ = String
"Page.navigateToHistoryEntry"
  fromJSON :: Proxy PPageNavigateToHistoryEntry
-> Value -> Result (CommandResponse PPageNavigateToHistoryEntry)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PPageNavigateToHistoryEntry -> Result ())
-> Proxy PPageNavigateToHistoryEntry
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PPageNavigateToHistoryEntry -> ())
-> Proxy PPageNavigateToHistoryEntry
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PPageNavigateToHistoryEntry -> ()
forall a b. a -> b -> a
const ()

-- | Print page as PDF.

-- | Parameters of the 'Page.printToPDF' command.
data PPagePrintToPDFTransferMode = PPagePrintToPDFTransferModeReturnAsBase64 | PPagePrintToPDFTransferModeReturnAsStream
  deriving (Eq PPagePrintToPDFTransferMode
Eq PPagePrintToPDFTransferMode
-> (PPagePrintToPDFTransferMode
    -> PPagePrintToPDFTransferMode -> Ordering)
-> (PPagePrintToPDFTransferMode
    -> PPagePrintToPDFTransferMode -> Bool)
-> (PPagePrintToPDFTransferMode
    -> PPagePrintToPDFTransferMode -> Bool)
-> (PPagePrintToPDFTransferMode
    -> PPagePrintToPDFTransferMode -> Bool)
-> (PPagePrintToPDFTransferMode
    -> PPagePrintToPDFTransferMode -> Bool)
-> (PPagePrintToPDFTransferMode
    -> PPagePrintToPDFTransferMode -> PPagePrintToPDFTransferMode)
-> (PPagePrintToPDFTransferMode
    -> PPagePrintToPDFTransferMode -> PPagePrintToPDFTransferMode)
-> Ord PPagePrintToPDFTransferMode
PPagePrintToPDFTransferMode -> PPagePrintToPDFTransferMode -> Bool
PPagePrintToPDFTransferMode
-> PPagePrintToPDFTransferMode -> Ordering
PPagePrintToPDFTransferMode
-> PPagePrintToPDFTransferMode -> PPagePrintToPDFTransferMode
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: PPagePrintToPDFTransferMode
-> PPagePrintToPDFTransferMode -> PPagePrintToPDFTransferMode
$cmin :: PPagePrintToPDFTransferMode
-> PPagePrintToPDFTransferMode -> PPagePrintToPDFTransferMode
max :: PPagePrintToPDFTransferMode
-> PPagePrintToPDFTransferMode -> PPagePrintToPDFTransferMode
$cmax :: PPagePrintToPDFTransferMode
-> PPagePrintToPDFTransferMode -> PPagePrintToPDFTransferMode
>= :: PPagePrintToPDFTransferMode -> PPagePrintToPDFTransferMode -> Bool
$c>= :: PPagePrintToPDFTransferMode -> PPagePrintToPDFTransferMode -> Bool
> :: PPagePrintToPDFTransferMode -> PPagePrintToPDFTransferMode -> Bool
$c> :: PPagePrintToPDFTransferMode -> PPagePrintToPDFTransferMode -> Bool
<= :: PPagePrintToPDFTransferMode -> PPagePrintToPDFTransferMode -> Bool
$c<= :: PPagePrintToPDFTransferMode -> PPagePrintToPDFTransferMode -> Bool
< :: PPagePrintToPDFTransferMode -> PPagePrintToPDFTransferMode -> Bool
$c< :: PPagePrintToPDFTransferMode -> PPagePrintToPDFTransferMode -> Bool
compare :: PPagePrintToPDFTransferMode
-> PPagePrintToPDFTransferMode -> Ordering
$ccompare :: PPagePrintToPDFTransferMode
-> PPagePrintToPDFTransferMode -> Ordering
$cp1Ord :: Eq PPagePrintToPDFTransferMode
Ord, PPagePrintToPDFTransferMode -> PPagePrintToPDFTransferMode -> Bool
(PPagePrintToPDFTransferMode
 -> PPagePrintToPDFTransferMode -> Bool)
-> (PPagePrintToPDFTransferMode
    -> PPagePrintToPDFTransferMode -> Bool)
-> Eq PPagePrintToPDFTransferMode
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPagePrintToPDFTransferMode -> PPagePrintToPDFTransferMode -> Bool
$c/= :: PPagePrintToPDFTransferMode -> PPagePrintToPDFTransferMode -> Bool
== :: PPagePrintToPDFTransferMode -> PPagePrintToPDFTransferMode -> Bool
$c== :: PPagePrintToPDFTransferMode -> PPagePrintToPDFTransferMode -> Bool
Eq, Int -> PPagePrintToPDFTransferMode -> ShowS
[PPagePrintToPDFTransferMode] -> ShowS
PPagePrintToPDFTransferMode -> String
(Int -> PPagePrintToPDFTransferMode -> ShowS)
-> (PPagePrintToPDFTransferMode -> String)
-> ([PPagePrintToPDFTransferMode] -> ShowS)
-> Show PPagePrintToPDFTransferMode
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPagePrintToPDFTransferMode] -> ShowS
$cshowList :: [PPagePrintToPDFTransferMode] -> ShowS
show :: PPagePrintToPDFTransferMode -> String
$cshow :: PPagePrintToPDFTransferMode -> String
showsPrec :: Int -> PPagePrintToPDFTransferMode -> ShowS
$cshowsPrec :: Int -> PPagePrintToPDFTransferMode -> ShowS
Show, ReadPrec [PPagePrintToPDFTransferMode]
ReadPrec PPagePrintToPDFTransferMode
Int -> ReadS PPagePrintToPDFTransferMode
ReadS [PPagePrintToPDFTransferMode]
(Int -> ReadS PPagePrintToPDFTransferMode)
-> ReadS [PPagePrintToPDFTransferMode]
-> ReadPrec PPagePrintToPDFTransferMode
-> ReadPrec [PPagePrintToPDFTransferMode]
-> Read PPagePrintToPDFTransferMode
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PPagePrintToPDFTransferMode]
$creadListPrec :: ReadPrec [PPagePrintToPDFTransferMode]
readPrec :: ReadPrec PPagePrintToPDFTransferMode
$creadPrec :: ReadPrec PPagePrintToPDFTransferMode
readList :: ReadS [PPagePrintToPDFTransferMode]
$creadList :: ReadS [PPagePrintToPDFTransferMode]
readsPrec :: Int -> ReadS PPagePrintToPDFTransferMode
$creadsPrec :: Int -> ReadS PPagePrintToPDFTransferMode
Read)
instance FromJSON PPagePrintToPDFTransferMode where
  parseJSON :: Value -> Parser PPagePrintToPDFTransferMode
parseJSON = String
-> (Text -> Parser PPagePrintToPDFTransferMode)
-> Value
-> Parser PPagePrintToPDFTransferMode
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"PPagePrintToPDFTransferMode" ((Text -> Parser PPagePrintToPDFTransferMode)
 -> Value -> Parser PPagePrintToPDFTransferMode)
-> (Text -> Parser PPagePrintToPDFTransferMode)
-> Value
-> Parser PPagePrintToPDFTransferMode
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"ReturnAsBase64" -> PPagePrintToPDFTransferMode -> Parser PPagePrintToPDFTransferMode
forall (f :: * -> *) a. Applicative f => a -> f a
pure PPagePrintToPDFTransferMode
PPagePrintToPDFTransferModeReturnAsBase64
    Text
"ReturnAsStream" -> PPagePrintToPDFTransferMode -> Parser PPagePrintToPDFTransferMode
forall (f :: * -> *) a. Applicative f => a -> f a
pure PPagePrintToPDFTransferMode
PPagePrintToPDFTransferModeReturnAsStream
    Text
"_" -> String -> Parser PPagePrintToPDFTransferMode
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse PPagePrintToPDFTransferMode"
instance ToJSON PPagePrintToPDFTransferMode where
  toJSON :: PPagePrintToPDFTransferMode -> Value
toJSON PPagePrintToPDFTransferMode
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case PPagePrintToPDFTransferMode
v of
    PPagePrintToPDFTransferMode
PPagePrintToPDFTransferModeReturnAsBase64 -> Text
"ReturnAsBase64"
    PPagePrintToPDFTransferMode
PPagePrintToPDFTransferModeReturnAsStream -> Text
"ReturnAsStream"
data PPagePrintToPDF = PPagePrintToPDF
  {
    -- | Paper orientation. Defaults to false.
    PPagePrintToPDF -> Maybe Bool
pPagePrintToPDFLandscape :: Maybe Bool,
    -- | Display header and footer. Defaults to false.
    PPagePrintToPDF -> Maybe Bool
pPagePrintToPDFDisplayHeaderFooter :: Maybe Bool,
    -- | Print background graphics. Defaults to false.
    PPagePrintToPDF -> Maybe Bool
pPagePrintToPDFPrintBackground :: Maybe Bool,
    -- | Scale of the webpage rendering. Defaults to 1.
    PPagePrintToPDF -> Maybe Double
pPagePrintToPDFScale :: Maybe Double,
    -- | Paper width in inches. Defaults to 8.5 inches.
    PPagePrintToPDF -> Maybe Double
pPagePrintToPDFPaperWidth :: Maybe Double,
    -- | Paper height in inches. Defaults to 11 inches.
    PPagePrintToPDF -> Maybe Double
pPagePrintToPDFPaperHeight :: Maybe Double,
    -- | Top margin in inches. Defaults to 1cm (~0.4 inches).
    PPagePrintToPDF -> Maybe Double
pPagePrintToPDFMarginTop :: Maybe Double,
    -- | Bottom margin in inches. Defaults to 1cm (~0.4 inches).
    PPagePrintToPDF -> Maybe Double
pPagePrintToPDFMarginBottom :: Maybe Double,
    -- | Left margin in inches. Defaults to 1cm (~0.4 inches).
    PPagePrintToPDF -> Maybe Double
pPagePrintToPDFMarginLeft :: Maybe Double,
    -- | Right margin in inches. Defaults to 1cm (~0.4 inches).
    PPagePrintToPDF -> Maybe Double
pPagePrintToPDFMarginRight :: Maybe Double,
    -- | Paper ranges to print, one based, e.g., '1-5, 8, 11-13'. Pages are
    --   printed in the document order, not in the order specified, and no
    --   more than once.
    --   Defaults to empty string, which implies the entire document is printed.
    --   The page numbers are quietly capped to actual page count of the
    --   document, and ranges beyond the end of the document are ignored.
    --   If this results in no pages to print, an error is reported.
    --   It is an error to specify a range with start greater than end.
    PPagePrintToPDF -> Maybe Text
pPagePrintToPDFPageRanges :: Maybe T.Text,
    -- | HTML template for the print header. Should be valid HTML markup with following
    --   classes used to inject printing values into them:
    --   - `date`: formatted print date
    --   - `title`: document title
    --   - `url`: document location
    --   - `pageNumber`: current page number
    --   - `totalPages`: total pages in the document
    --   
    --   For example, `<span class=title></span>` would generate span containing the title.
    PPagePrintToPDF -> Maybe Text
pPagePrintToPDFHeaderTemplate :: Maybe T.Text,
    -- | HTML template for the print footer. Should use the same format as the `headerTemplate`.
    PPagePrintToPDF -> Maybe Text
pPagePrintToPDFFooterTemplate :: Maybe T.Text,
    -- | Whether or not to prefer page size as defined by css. Defaults to false,
    --   in which case the content will be scaled to fit the paper size.
    PPagePrintToPDF -> Maybe Bool
pPagePrintToPDFPreferCSSPageSize :: Maybe Bool,
    -- | return as stream
    PPagePrintToPDF -> Maybe PPagePrintToPDFTransferMode
pPagePrintToPDFTransferMode :: Maybe PPagePrintToPDFTransferMode
  }
  deriving (PPagePrintToPDF -> PPagePrintToPDF -> Bool
(PPagePrintToPDF -> PPagePrintToPDF -> Bool)
-> (PPagePrintToPDF -> PPagePrintToPDF -> Bool)
-> Eq PPagePrintToPDF
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPagePrintToPDF -> PPagePrintToPDF -> Bool
$c/= :: PPagePrintToPDF -> PPagePrintToPDF -> Bool
== :: PPagePrintToPDF -> PPagePrintToPDF -> Bool
$c== :: PPagePrintToPDF -> PPagePrintToPDF -> Bool
Eq, Int -> PPagePrintToPDF -> ShowS
[PPagePrintToPDF] -> ShowS
PPagePrintToPDF -> String
(Int -> PPagePrintToPDF -> ShowS)
-> (PPagePrintToPDF -> String)
-> ([PPagePrintToPDF] -> ShowS)
-> Show PPagePrintToPDF
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPagePrintToPDF] -> ShowS
$cshowList :: [PPagePrintToPDF] -> ShowS
show :: PPagePrintToPDF -> String
$cshow :: PPagePrintToPDF -> String
showsPrec :: Int -> PPagePrintToPDF -> ShowS
$cshowsPrec :: Int -> PPagePrintToPDF -> ShowS
Show)
pPagePrintToPDF
  :: PPagePrintToPDF
pPagePrintToPDF :: PPagePrintToPDF
pPagePrintToPDF
  = Maybe Bool
-> Maybe Bool
-> Maybe Bool
-> Maybe Double
-> Maybe Double
-> Maybe Double
-> Maybe Double
-> Maybe Double
-> Maybe Double
-> Maybe Double
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Bool
-> Maybe PPagePrintToPDFTransferMode
-> PPagePrintToPDF
PPagePrintToPDF
    Maybe Bool
forall a. Maybe a
Nothing
    Maybe Bool
forall a. Maybe a
Nothing
    Maybe Bool
forall a. Maybe a
Nothing
    Maybe Double
forall a. Maybe a
Nothing
    Maybe Double
forall a. Maybe a
Nothing
    Maybe Double
forall a. Maybe a
Nothing
    Maybe Double
forall a. Maybe a
Nothing
    Maybe Double
forall a. Maybe a
Nothing
    Maybe Double
forall a. Maybe a
Nothing
    Maybe Double
forall a. Maybe a
Nothing
    Maybe Text
forall a. Maybe a
Nothing
    Maybe Text
forall a. Maybe a
Nothing
    Maybe Text
forall a. Maybe a
Nothing
    Maybe Bool
forall a. Maybe a
Nothing
    Maybe PPagePrintToPDFTransferMode
forall a. Maybe a
Nothing
instance ToJSON PPagePrintToPDF where
  toJSON :: PPagePrintToPDF -> Value
toJSON PPagePrintToPDF
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"landscape" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPagePrintToPDF -> Maybe Bool
pPagePrintToPDFLandscape PPagePrintToPDF
p),
    (Text
"displayHeaderFooter" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPagePrintToPDF -> Maybe Bool
pPagePrintToPDFDisplayHeaderFooter PPagePrintToPDF
p),
    (Text
"printBackground" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPagePrintToPDF -> Maybe Bool
pPagePrintToPDFPrintBackground PPagePrintToPDF
p),
    (Text
"scale" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPagePrintToPDF -> Maybe Double
pPagePrintToPDFScale PPagePrintToPDF
p),
    (Text
"paperWidth" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPagePrintToPDF -> Maybe Double
pPagePrintToPDFPaperWidth PPagePrintToPDF
p),
    (Text
"paperHeight" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPagePrintToPDF -> Maybe Double
pPagePrintToPDFPaperHeight PPagePrintToPDF
p),
    (Text
"marginTop" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPagePrintToPDF -> Maybe Double
pPagePrintToPDFMarginTop PPagePrintToPDF
p),
    (Text
"marginBottom" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPagePrintToPDF -> Maybe Double
pPagePrintToPDFMarginBottom PPagePrintToPDF
p),
    (Text
"marginLeft" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPagePrintToPDF -> Maybe Double
pPagePrintToPDFMarginLeft PPagePrintToPDF
p),
    (Text
"marginRight" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPagePrintToPDF -> Maybe Double
pPagePrintToPDFMarginRight PPagePrintToPDF
p),
    (Text
"pageRanges" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPagePrintToPDF -> Maybe Text
pPagePrintToPDFPageRanges PPagePrintToPDF
p),
    (Text
"headerTemplate" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPagePrintToPDF -> Maybe Text
pPagePrintToPDFHeaderTemplate PPagePrintToPDF
p),
    (Text
"footerTemplate" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPagePrintToPDF -> Maybe Text
pPagePrintToPDFFooterTemplate PPagePrintToPDF
p),
    (Text
"preferCSSPageSize" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPagePrintToPDF -> Maybe Bool
pPagePrintToPDFPreferCSSPageSize PPagePrintToPDF
p),
    (Text
"transferMode" Text -> PPagePrintToPDFTransferMode -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (PPagePrintToPDFTransferMode -> Pair)
-> Maybe PPagePrintToPDFTransferMode -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPagePrintToPDF -> Maybe PPagePrintToPDFTransferMode
pPagePrintToPDFTransferMode PPagePrintToPDF
p)
    ]
data PagePrintToPDF = PagePrintToPDF
  {
    -- | Base64-encoded pdf data. Empty if |returnAsStream| is specified. (Encoded as a base64 string when passed over JSON)
    PagePrintToPDF -> Text
pagePrintToPDFData :: T.Text,
    -- | A handle of the stream that holds resulting PDF data.
    PagePrintToPDF -> Maybe Text
pagePrintToPDFStream :: Maybe IO.IOStreamHandle
  }
  deriving (PagePrintToPDF -> PagePrintToPDF -> Bool
(PagePrintToPDF -> PagePrintToPDF -> Bool)
-> (PagePrintToPDF -> PagePrintToPDF -> Bool) -> Eq PagePrintToPDF
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PagePrintToPDF -> PagePrintToPDF -> Bool
$c/= :: PagePrintToPDF -> PagePrintToPDF -> Bool
== :: PagePrintToPDF -> PagePrintToPDF -> Bool
$c== :: PagePrintToPDF -> PagePrintToPDF -> Bool
Eq, Int -> PagePrintToPDF -> ShowS
[PagePrintToPDF] -> ShowS
PagePrintToPDF -> String
(Int -> PagePrintToPDF -> ShowS)
-> (PagePrintToPDF -> String)
-> ([PagePrintToPDF] -> ShowS)
-> Show PagePrintToPDF
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PagePrintToPDF] -> ShowS
$cshowList :: [PagePrintToPDF] -> ShowS
show :: PagePrintToPDF -> String
$cshow :: PagePrintToPDF -> String
showsPrec :: Int -> PagePrintToPDF -> ShowS
$cshowsPrec :: Int -> PagePrintToPDF -> ShowS
Show)
instance FromJSON PagePrintToPDF where
  parseJSON :: Value -> Parser PagePrintToPDF
parseJSON = String
-> (Object -> Parser PagePrintToPDF)
-> Value
-> Parser PagePrintToPDF
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PagePrintToPDF" ((Object -> Parser PagePrintToPDF)
 -> Value -> Parser PagePrintToPDF)
-> (Object -> Parser PagePrintToPDF)
-> Value
-> Parser PagePrintToPDF
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text -> Maybe Text -> PagePrintToPDF
PagePrintToPDF
    (Text -> Maybe Text -> PagePrintToPDF)
-> Parser Text -> Parser (Maybe Text -> PagePrintToPDF)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"data"
    Parser (Maybe Text -> PagePrintToPDF)
-> Parser (Maybe Text) -> Parser PagePrintToPDF
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"stream"
instance Command PPagePrintToPDF where
  type CommandResponse PPagePrintToPDF = PagePrintToPDF
  commandName :: Proxy PPagePrintToPDF -> String
commandName Proxy PPagePrintToPDF
_ = String
"Page.printToPDF"

-- | Reloads given page optionally ignoring the cache.

-- | Parameters of the 'Page.reload' command.
data PPageReload = PPageReload
  {
    -- | If true, browser cache is ignored (as if the user pressed Shift+refresh).
    PPageReload -> Maybe Bool
pPageReloadIgnoreCache :: Maybe Bool,
    -- | If set, the script will be injected into all frames of the inspected page after reload.
    --   Argument will be ignored if reloading dataURL origin.
    PPageReload -> Maybe Text
pPageReloadScriptToEvaluateOnLoad :: Maybe T.Text
  }
  deriving (PPageReload -> PPageReload -> Bool
(PPageReload -> PPageReload -> Bool)
-> (PPageReload -> PPageReload -> Bool) -> Eq PPageReload
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageReload -> PPageReload -> Bool
$c/= :: PPageReload -> PPageReload -> Bool
== :: PPageReload -> PPageReload -> Bool
$c== :: PPageReload -> PPageReload -> Bool
Eq, Int -> PPageReload -> ShowS
[PPageReload] -> ShowS
PPageReload -> String
(Int -> PPageReload -> ShowS)
-> (PPageReload -> String)
-> ([PPageReload] -> ShowS)
-> Show PPageReload
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageReload] -> ShowS
$cshowList :: [PPageReload] -> ShowS
show :: PPageReload -> String
$cshow :: PPageReload -> String
showsPrec :: Int -> PPageReload -> ShowS
$cshowsPrec :: Int -> PPageReload -> ShowS
Show)
pPageReload
  :: PPageReload
pPageReload :: PPageReload
pPageReload
  = Maybe Bool -> Maybe Text -> PPageReload
PPageReload
    Maybe Bool
forall a. Maybe a
Nothing
    Maybe Text
forall a. Maybe a
Nothing
instance ToJSON PPageReload where
  toJSON :: PPageReload -> Value
toJSON PPageReload
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"ignoreCache" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPageReload -> Maybe Bool
pPageReloadIgnoreCache PPageReload
p),
    (Text
"scriptToEvaluateOnLoad" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPageReload -> Maybe Text
pPageReloadScriptToEvaluateOnLoad PPageReload
p)
    ]
instance Command PPageReload where
  type CommandResponse PPageReload = ()
  commandName :: Proxy PPageReload -> String
commandName Proxy PPageReload
_ = String
"Page.reload"
  fromJSON :: Proxy PPageReload -> Value -> Result (CommandResponse PPageReload)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PPageReload -> Result ())
-> Proxy PPageReload
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PPageReload -> ()) -> Proxy PPageReload -> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PPageReload -> ()
forall a b. a -> b -> a
const ()

-- | Removes given script from the list.

-- | Parameters of the 'Page.removeScriptToEvaluateOnNewDocument' command.
data PPageRemoveScriptToEvaluateOnNewDocument = PPageRemoveScriptToEvaluateOnNewDocument
  {
    PPageRemoveScriptToEvaluateOnNewDocument -> Text
pPageRemoveScriptToEvaluateOnNewDocumentIdentifier :: PageScriptIdentifier
  }
  deriving (PPageRemoveScriptToEvaluateOnNewDocument
-> PPageRemoveScriptToEvaluateOnNewDocument -> Bool
(PPageRemoveScriptToEvaluateOnNewDocument
 -> PPageRemoveScriptToEvaluateOnNewDocument -> Bool)
-> (PPageRemoveScriptToEvaluateOnNewDocument
    -> PPageRemoveScriptToEvaluateOnNewDocument -> Bool)
-> Eq PPageRemoveScriptToEvaluateOnNewDocument
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageRemoveScriptToEvaluateOnNewDocument
-> PPageRemoveScriptToEvaluateOnNewDocument -> Bool
$c/= :: PPageRemoveScriptToEvaluateOnNewDocument
-> PPageRemoveScriptToEvaluateOnNewDocument -> Bool
== :: PPageRemoveScriptToEvaluateOnNewDocument
-> PPageRemoveScriptToEvaluateOnNewDocument -> Bool
$c== :: PPageRemoveScriptToEvaluateOnNewDocument
-> PPageRemoveScriptToEvaluateOnNewDocument -> Bool
Eq, Int -> PPageRemoveScriptToEvaluateOnNewDocument -> ShowS
[PPageRemoveScriptToEvaluateOnNewDocument] -> ShowS
PPageRemoveScriptToEvaluateOnNewDocument -> String
(Int -> PPageRemoveScriptToEvaluateOnNewDocument -> ShowS)
-> (PPageRemoveScriptToEvaluateOnNewDocument -> String)
-> ([PPageRemoveScriptToEvaluateOnNewDocument] -> ShowS)
-> Show PPageRemoveScriptToEvaluateOnNewDocument
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageRemoveScriptToEvaluateOnNewDocument] -> ShowS
$cshowList :: [PPageRemoveScriptToEvaluateOnNewDocument] -> ShowS
show :: PPageRemoveScriptToEvaluateOnNewDocument -> String
$cshow :: PPageRemoveScriptToEvaluateOnNewDocument -> String
showsPrec :: Int -> PPageRemoveScriptToEvaluateOnNewDocument -> ShowS
$cshowsPrec :: Int -> PPageRemoveScriptToEvaluateOnNewDocument -> ShowS
Show)
pPageRemoveScriptToEvaluateOnNewDocument
  :: PageScriptIdentifier
  -> PPageRemoveScriptToEvaluateOnNewDocument
pPageRemoveScriptToEvaluateOnNewDocument :: Text -> PPageRemoveScriptToEvaluateOnNewDocument
pPageRemoveScriptToEvaluateOnNewDocument
  Text
arg_pPageRemoveScriptToEvaluateOnNewDocumentIdentifier
  = Text -> PPageRemoveScriptToEvaluateOnNewDocument
PPageRemoveScriptToEvaluateOnNewDocument
    Text
arg_pPageRemoveScriptToEvaluateOnNewDocumentIdentifier
instance ToJSON PPageRemoveScriptToEvaluateOnNewDocument where
  toJSON :: PPageRemoveScriptToEvaluateOnNewDocument -> Value
toJSON PPageRemoveScriptToEvaluateOnNewDocument
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"identifier" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PPageRemoveScriptToEvaluateOnNewDocument -> Text
pPageRemoveScriptToEvaluateOnNewDocumentIdentifier PPageRemoveScriptToEvaluateOnNewDocument
p)
    ]
instance Command PPageRemoveScriptToEvaluateOnNewDocument where
  type CommandResponse PPageRemoveScriptToEvaluateOnNewDocument = ()
  commandName :: Proxy PPageRemoveScriptToEvaluateOnNewDocument -> String
commandName Proxy PPageRemoveScriptToEvaluateOnNewDocument
_ = String
"Page.removeScriptToEvaluateOnNewDocument"
  fromJSON :: Proxy PPageRemoveScriptToEvaluateOnNewDocument
-> Value
-> Result
     (CommandResponse PPageRemoveScriptToEvaluateOnNewDocument)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PPageRemoveScriptToEvaluateOnNewDocument -> Result ())
-> Proxy PPageRemoveScriptToEvaluateOnNewDocument
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PPageRemoveScriptToEvaluateOnNewDocument -> ())
-> Proxy PPageRemoveScriptToEvaluateOnNewDocument
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PPageRemoveScriptToEvaluateOnNewDocument -> ()
forall a b. a -> b -> a
const ()

-- | Acknowledges that a screencast frame has been received by the frontend.

-- | Parameters of the 'Page.screencastFrameAck' command.
data PPageScreencastFrameAck = PPageScreencastFrameAck
  {
    -- | Frame number.
    PPageScreencastFrameAck -> Int
pPageScreencastFrameAckSessionId :: Int
  }
  deriving (PPageScreencastFrameAck -> PPageScreencastFrameAck -> Bool
(PPageScreencastFrameAck -> PPageScreencastFrameAck -> Bool)
-> (PPageScreencastFrameAck -> PPageScreencastFrameAck -> Bool)
-> Eq PPageScreencastFrameAck
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageScreencastFrameAck -> PPageScreencastFrameAck -> Bool
$c/= :: PPageScreencastFrameAck -> PPageScreencastFrameAck -> Bool
== :: PPageScreencastFrameAck -> PPageScreencastFrameAck -> Bool
$c== :: PPageScreencastFrameAck -> PPageScreencastFrameAck -> Bool
Eq, Int -> PPageScreencastFrameAck -> ShowS
[PPageScreencastFrameAck] -> ShowS
PPageScreencastFrameAck -> String
(Int -> PPageScreencastFrameAck -> ShowS)
-> (PPageScreencastFrameAck -> String)
-> ([PPageScreencastFrameAck] -> ShowS)
-> Show PPageScreencastFrameAck
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageScreencastFrameAck] -> ShowS
$cshowList :: [PPageScreencastFrameAck] -> ShowS
show :: PPageScreencastFrameAck -> String
$cshow :: PPageScreencastFrameAck -> String
showsPrec :: Int -> PPageScreencastFrameAck -> ShowS
$cshowsPrec :: Int -> PPageScreencastFrameAck -> ShowS
Show)
pPageScreencastFrameAck
  {-
  -- | Frame number.
  -}
  :: Int
  -> PPageScreencastFrameAck
pPageScreencastFrameAck :: Int -> PPageScreencastFrameAck
pPageScreencastFrameAck
  Int
arg_pPageScreencastFrameAckSessionId
  = Int -> PPageScreencastFrameAck
PPageScreencastFrameAck
    Int
arg_pPageScreencastFrameAckSessionId
instance ToJSON PPageScreencastFrameAck where
  toJSON :: PPageScreencastFrameAck -> Value
toJSON PPageScreencastFrameAck
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"sessionId" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Int -> Maybe Int
forall a. a -> Maybe a
Just (PPageScreencastFrameAck -> Int
pPageScreencastFrameAckSessionId PPageScreencastFrameAck
p)
    ]
instance Command PPageScreencastFrameAck where
  type CommandResponse PPageScreencastFrameAck = ()
  commandName :: Proxy PPageScreencastFrameAck -> String
commandName Proxy PPageScreencastFrameAck
_ = String
"Page.screencastFrameAck"
  fromJSON :: Proxy PPageScreencastFrameAck
-> Value -> Result (CommandResponse PPageScreencastFrameAck)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PPageScreencastFrameAck -> Result ())
-> Proxy PPageScreencastFrameAck
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PPageScreencastFrameAck -> ())
-> Proxy PPageScreencastFrameAck
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PPageScreencastFrameAck -> ()
forall a b. a -> b -> a
const ()

-- | Searches for given string in resource content.

-- | Parameters of the 'Page.searchInResource' command.
data PPageSearchInResource = PPageSearchInResource
  {
    -- | Frame id for resource to search in.
    PPageSearchInResource -> Text
pPageSearchInResourceFrameId :: PageFrameId,
    -- | URL of the resource to search in.
    PPageSearchInResource -> Text
pPageSearchInResourceUrl :: T.Text,
    -- | String to search for.
    PPageSearchInResource -> Text
pPageSearchInResourceQuery :: T.Text,
    -- | If true, search is case sensitive.
    PPageSearchInResource -> Maybe Bool
pPageSearchInResourceCaseSensitive :: Maybe Bool,
    -- | If true, treats string parameter as regex.
    PPageSearchInResource -> Maybe Bool
pPageSearchInResourceIsRegex :: Maybe Bool
  }
  deriving (PPageSearchInResource -> PPageSearchInResource -> Bool
(PPageSearchInResource -> PPageSearchInResource -> Bool)
-> (PPageSearchInResource -> PPageSearchInResource -> Bool)
-> Eq PPageSearchInResource
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageSearchInResource -> PPageSearchInResource -> Bool
$c/= :: PPageSearchInResource -> PPageSearchInResource -> Bool
== :: PPageSearchInResource -> PPageSearchInResource -> Bool
$c== :: PPageSearchInResource -> PPageSearchInResource -> Bool
Eq, Int -> PPageSearchInResource -> ShowS
[PPageSearchInResource] -> ShowS
PPageSearchInResource -> String
(Int -> PPageSearchInResource -> ShowS)
-> (PPageSearchInResource -> String)
-> ([PPageSearchInResource] -> ShowS)
-> Show PPageSearchInResource
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageSearchInResource] -> ShowS
$cshowList :: [PPageSearchInResource] -> ShowS
show :: PPageSearchInResource -> String
$cshow :: PPageSearchInResource -> String
showsPrec :: Int -> PPageSearchInResource -> ShowS
$cshowsPrec :: Int -> PPageSearchInResource -> ShowS
Show)
pPageSearchInResource
  {-
  -- | Frame id for resource to search in.
  -}
  :: PageFrameId
  {-
  -- | URL of the resource to search in.
  -}
  -> T.Text
  {-
  -- | String to search for.
  -}
  -> T.Text
  -> PPageSearchInResource
pPageSearchInResource :: Text -> Text -> Text -> PPageSearchInResource
pPageSearchInResource
  Text
arg_pPageSearchInResourceFrameId
  Text
arg_pPageSearchInResourceUrl
  Text
arg_pPageSearchInResourceQuery
  = Text
-> Text
-> Text
-> Maybe Bool
-> Maybe Bool
-> PPageSearchInResource
PPageSearchInResource
    Text
arg_pPageSearchInResourceFrameId
    Text
arg_pPageSearchInResourceUrl
    Text
arg_pPageSearchInResourceQuery
    Maybe Bool
forall a. Maybe a
Nothing
    Maybe Bool
forall a. Maybe a
Nothing
instance ToJSON PPageSearchInResource where
  toJSON :: PPageSearchInResource -> Value
toJSON PPageSearchInResource
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"frameId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PPageSearchInResource -> Text
pPageSearchInResourceFrameId PPageSearchInResource
p),
    (Text
"url" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PPageSearchInResource -> Text
pPageSearchInResourceUrl PPageSearchInResource
p),
    (Text
"query" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PPageSearchInResource -> Text
pPageSearchInResourceQuery PPageSearchInResource
p),
    (Text
"caseSensitive" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPageSearchInResource -> Maybe Bool
pPageSearchInResourceCaseSensitive PPageSearchInResource
p),
    (Text
"isRegex" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPageSearchInResource -> Maybe Bool
pPageSearchInResourceIsRegex PPageSearchInResource
p)
    ]
data PageSearchInResource = PageSearchInResource
  {
    -- | List of search matches.
    PageSearchInResource -> [DebuggerSearchMatch]
pageSearchInResourceResult :: [Debugger.DebuggerSearchMatch]
  }
  deriving (PageSearchInResource -> PageSearchInResource -> Bool
(PageSearchInResource -> PageSearchInResource -> Bool)
-> (PageSearchInResource -> PageSearchInResource -> Bool)
-> Eq PageSearchInResource
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageSearchInResource -> PageSearchInResource -> Bool
$c/= :: PageSearchInResource -> PageSearchInResource -> Bool
== :: PageSearchInResource -> PageSearchInResource -> Bool
$c== :: PageSearchInResource -> PageSearchInResource -> Bool
Eq, Int -> PageSearchInResource -> ShowS
[PageSearchInResource] -> ShowS
PageSearchInResource -> String
(Int -> PageSearchInResource -> ShowS)
-> (PageSearchInResource -> String)
-> ([PageSearchInResource] -> ShowS)
-> Show PageSearchInResource
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageSearchInResource] -> ShowS
$cshowList :: [PageSearchInResource] -> ShowS
show :: PageSearchInResource -> String
$cshow :: PageSearchInResource -> String
showsPrec :: Int -> PageSearchInResource -> ShowS
$cshowsPrec :: Int -> PageSearchInResource -> ShowS
Show)
instance FromJSON PageSearchInResource where
  parseJSON :: Value -> Parser PageSearchInResource
parseJSON = String
-> (Object -> Parser PageSearchInResource)
-> Value
-> Parser PageSearchInResource
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageSearchInResource" ((Object -> Parser PageSearchInResource)
 -> Value -> Parser PageSearchInResource)
-> (Object -> Parser PageSearchInResource)
-> Value
-> Parser PageSearchInResource
forall a b. (a -> b) -> a -> b
$ \Object
o -> [DebuggerSearchMatch] -> PageSearchInResource
PageSearchInResource
    ([DebuggerSearchMatch] -> PageSearchInResource)
-> Parser [DebuggerSearchMatch] -> Parser PageSearchInResource
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser [DebuggerSearchMatch]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"result"
instance Command PPageSearchInResource where
  type CommandResponse PPageSearchInResource = PageSearchInResource
  commandName :: Proxy PPageSearchInResource -> String
commandName Proxy PPageSearchInResource
_ = String
"Page.searchInResource"

-- | Enable Chrome's experimental ad filter on all sites.

-- | Parameters of the 'Page.setAdBlockingEnabled' command.
data PPageSetAdBlockingEnabled = PPageSetAdBlockingEnabled
  {
    -- | Whether to block ads.
    PPageSetAdBlockingEnabled -> Bool
pPageSetAdBlockingEnabledEnabled :: Bool
  }
  deriving (PPageSetAdBlockingEnabled -> PPageSetAdBlockingEnabled -> Bool
(PPageSetAdBlockingEnabled -> PPageSetAdBlockingEnabled -> Bool)
-> (PPageSetAdBlockingEnabled -> PPageSetAdBlockingEnabled -> Bool)
-> Eq PPageSetAdBlockingEnabled
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageSetAdBlockingEnabled -> PPageSetAdBlockingEnabled -> Bool
$c/= :: PPageSetAdBlockingEnabled -> PPageSetAdBlockingEnabled -> Bool
== :: PPageSetAdBlockingEnabled -> PPageSetAdBlockingEnabled -> Bool
$c== :: PPageSetAdBlockingEnabled -> PPageSetAdBlockingEnabled -> Bool
Eq, Int -> PPageSetAdBlockingEnabled -> ShowS
[PPageSetAdBlockingEnabled] -> ShowS
PPageSetAdBlockingEnabled -> String
(Int -> PPageSetAdBlockingEnabled -> ShowS)
-> (PPageSetAdBlockingEnabled -> String)
-> ([PPageSetAdBlockingEnabled] -> ShowS)
-> Show PPageSetAdBlockingEnabled
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageSetAdBlockingEnabled] -> ShowS
$cshowList :: [PPageSetAdBlockingEnabled] -> ShowS
show :: PPageSetAdBlockingEnabled -> String
$cshow :: PPageSetAdBlockingEnabled -> String
showsPrec :: Int -> PPageSetAdBlockingEnabled -> ShowS
$cshowsPrec :: Int -> PPageSetAdBlockingEnabled -> ShowS
Show)
pPageSetAdBlockingEnabled
  {-
  -- | Whether to block ads.
  -}
  :: Bool
  -> PPageSetAdBlockingEnabled
pPageSetAdBlockingEnabled :: Bool -> PPageSetAdBlockingEnabled
pPageSetAdBlockingEnabled
  Bool
arg_pPageSetAdBlockingEnabledEnabled
  = Bool -> PPageSetAdBlockingEnabled
PPageSetAdBlockingEnabled
    Bool
arg_pPageSetAdBlockingEnabledEnabled
instance ToJSON PPageSetAdBlockingEnabled where
  toJSON :: PPageSetAdBlockingEnabled -> Value
toJSON PPageSetAdBlockingEnabled
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"enabled" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (PPageSetAdBlockingEnabled -> Bool
pPageSetAdBlockingEnabledEnabled PPageSetAdBlockingEnabled
p)
    ]
instance Command PPageSetAdBlockingEnabled where
  type CommandResponse PPageSetAdBlockingEnabled = ()
  commandName :: Proxy PPageSetAdBlockingEnabled -> String
commandName Proxy PPageSetAdBlockingEnabled
_ = String
"Page.setAdBlockingEnabled"
  fromJSON :: Proxy PPageSetAdBlockingEnabled
-> Value -> Result (CommandResponse PPageSetAdBlockingEnabled)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PPageSetAdBlockingEnabled -> Result ())
-> Proxy PPageSetAdBlockingEnabled
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PPageSetAdBlockingEnabled -> ())
-> Proxy PPageSetAdBlockingEnabled
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PPageSetAdBlockingEnabled -> ()
forall a b. a -> b -> a
const ()

-- | Enable page Content Security Policy by-passing.

-- | Parameters of the 'Page.setBypassCSP' command.
data PPageSetBypassCSP = PPageSetBypassCSP
  {
    -- | Whether to bypass page CSP.
    PPageSetBypassCSP -> Bool
pPageSetBypassCSPEnabled :: Bool
  }
  deriving (PPageSetBypassCSP -> PPageSetBypassCSP -> Bool
(PPageSetBypassCSP -> PPageSetBypassCSP -> Bool)
-> (PPageSetBypassCSP -> PPageSetBypassCSP -> Bool)
-> Eq PPageSetBypassCSP
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageSetBypassCSP -> PPageSetBypassCSP -> Bool
$c/= :: PPageSetBypassCSP -> PPageSetBypassCSP -> Bool
== :: PPageSetBypassCSP -> PPageSetBypassCSP -> Bool
$c== :: PPageSetBypassCSP -> PPageSetBypassCSP -> Bool
Eq, Int -> PPageSetBypassCSP -> ShowS
[PPageSetBypassCSP] -> ShowS
PPageSetBypassCSP -> String
(Int -> PPageSetBypassCSP -> ShowS)
-> (PPageSetBypassCSP -> String)
-> ([PPageSetBypassCSP] -> ShowS)
-> Show PPageSetBypassCSP
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageSetBypassCSP] -> ShowS
$cshowList :: [PPageSetBypassCSP] -> ShowS
show :: PPageSetBypassCSP -> String
$cshow :: PPageSetBypassCSP -> String
showsPrec :: Int -> PPageSetBypassCSP -> ShowS
$cshowsPrec :: Int -> PPageSetBypassCSP -> ShowS
Show)
pPageSetBypassCSP
  {-
  -- | Whether to bypass page CSP.
  -}
  :: Bool
  -> PPageSetBypassCSP
pPageSetBypassCSP :: Bool -> PPageSetBypassCSP
pPageSetBypassCSP
  Bool
arg_pPageSetBypassCSPEnabled
  = Bool -> PPageSetBypassCSP
PPageSetBypassCSP
    Bool
arg_pPageSetBypassCSPEnabled
instance ToJSON PPageSetBypassCSP where
  toJSON :: PPageSetBypassCSP -> Value
toJSON PPageSetBypassCSP
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"enabled" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (PPageSetBypassCSP -> Bool
pPageSetBypassCSPEnabled PPageSetBypassCSP
p)
    ]
instance Command PPageSetBypassCSP where
  type CommandResponse PPageSetBypassCSP = ()
  commandName :: Proxy PPageSetBypassCSP -> String
commandName Proxy PPageSetBypassCSP
_ = String
"Page.setBypassCSP"
  fromJSON :: Proxy PPageSetBypassCSP
-> Value -> Result (CommandResponse PPageSetBypassCSP)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PPageSetBypassCSP -> Result ())
-> Proxy PPageSetBypassCSP
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PPageSetBypassCSP -> ())
-> Proxy PPageSetBypassCSP
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PPageSetBypassCSP -> ()
forall a b. a -> b -> a
const ()

-- | Get Permissions Policy state on given frame.

-- | Parameters of the 'Page.getPermissionsPolicyState' command.
data PPageGetPermissionsPolicyState = PPageGetPermissionsPolicyState
  {
    PPageGetPermissionsPolicyState -> Text
pPageGetPermissionsPolicyStateFrameId :: PageFrameId
  }
  deriving (PPageGetPermissionsPolicyState
-> PPageGetPermissionsPolicyState -> Bool
(PPageGetPermissionsPolicyState
 -> PPageGetPermissionsPolicyState -> Bool)
-> (PPageGetPermissionsPolicyState
    -> PPageGetPermissionsPolicyState -> Bool)
-> Eq PPageGetPermissionsPolicyState
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageGetPermissionsPolicyState
-> PPageGetPermissionsPolicyState -> Bool
$c/= :: PPageGetPermissionsPolicyState
-> PPageGetPermissionsPolicyState -> Bool
== :: PPageGetPermissionsPolicyState
-> PPageGetPermissionsPolicyState -> Bool
$c== :: PPageGetPermissionsPolicyState
-> PPageGetPermissionsPolicyState -> Bool
Eq, Int -> PPageGetPermissionsPolicyState -> ShowS
[PPageGetPermissionsPolicyState] -> ShowS
PPageGetPermissionsPolicyState -> String
(Int -> PPageGetPermissionsPolicyState -> ShowS)
-> (PPageGetPermissionsPolicyState -> String)
-> ([PPageGetPermissionsPolicyState] -> ShowS)
-> Show PPageGetPermissionsPolicyState
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageGetPermissionsPolicyState] -> ShowS
$cshowList :: [PPageGetPermissionsPolicyState] -> ShowS
show :: PPageGetPermissionsPolicyState -> String
$cshow :: PPageGetPermissionsPolicyState -> String
showsPrec :: Int -> PPageGetPermissionsPolicyState -> ShowS
$cshowsPrec :: Int -> PPageGetPermissionsPolicyState -> ShowS
Show)
pPageGetPermissionsPolicyState
  :: PageFrameId
  -> PPageGetPermissionsPolicyState
pPageGetPermissionsPolicyState :: Text -> PPageGetPermissionsPolicyState
pPageGetPermissionsPolicyState
  Text
arg_pPageGetPermissionsPolicyStateFrameId
  = Text -> PPageGetPermissionsPolicyState
PPageGetPermissionsPolicyState
    Text
arg_pPageGetPermissionsPolicyStateFrameId
instance ToJSON PPageGetPermissionsPolicyState where
  toJSON :: PPageGetPermissionsPolicyState -> Value
toJSON PPageGetPermissionsPolicyState
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"frameId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PPageGetPermissionsPolicyState -> Text
pPageGetPermissionsPolicyStateFrameId PPageGetPermissionsPolicyState
p)
    ]
data PageGetPermissionsPolicyState = PageGetPermissionsPolicyState
  {
    PageGetPermissionsPolicyState
-> [PagePermissionsPolicyFeatureState]
pageGetPermissionsPolicyStateStates :: [PagePermissionsPolicyFeatureState]
  }
  deriving (PageGetPermissionsPolicyState
-> PageGetPermissionsPolicyState -> Bool
(PageGetPermissionsPolicyState
 -> PageGetPermissionsPolicyState -> Bool)
-> (PageGetPermissionsPolicyState
    -> PageGetPermissionsPolicyState -> Bool)
-> Eq PageGetPermissionsPolicyState
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageGetPermissionsPolicyState
-> PageGetPermissionsPolicyState -> Bool
$c/= :: PageGetPermissionsPolicyState
-> PageGetPermissionsPolicyState -> Bool
== :: PageGetPermissionsPolicyState
-> PageGetPermissionsPolicyState -> Bool
$c== :: PageGetPermissionsPolicyState
-> PageGetPermissionsPolicyState -> Bool
Eq, Int -> PageGetPermissionsPolicyState -> ShowS
[PageGetPermissionsPolicyState] -> ShowS
PageGetPermissionsPolicyState -> String
(Int -> PageGetPermissionsPolicyState -> ShowS)
-> (PageGetPermissionsPolicyState -> String)
-> ([PageGetPermissionsPolicyState] -> ShowS)
-> Show PageGetPermissionsPolicyState
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageGetPermissionsPolicyState] -> ShowS
$cshowList :: [PageGetPermissionsPolicyState] -> ShowS
show :: PageGetPermissionsPolicyState -> String
$cshow :: PageGetPermissionsPolicyState -> String
showsPrec :: Int -> PageGetPermissionsPolicyState -> ShowS
$cshowsPrec :: Int -> PageGetPermissionsPolicyState -> ShowS
Show)
instance FromJSON PageGetPermissionsPolicyState where
  parseJSON :: Value -> Parser PageGetPermissionsPolicyState
parseJSON = String
-> (Object -> Parser PageGetPermissionsPolicyState)
-> Value
-> Parser PageGetPermissionsPolicyState
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageGetPermissionsPolicyState" ((Object -> Parser PageGetPermissionsPolicyState)
 -> Value -> Parser PageGetPermissionsPolicyState)
-> (Object -> Parser PageGetPermissionsPolicyState)
-> Value
-> Parser PageGetPermissionsPolicyState
forall a b. (a -> b) -> a -> b
$ \Object
o -> [PagePermissionsPolicyFeatureState]
-> PageGetPermissionsPolicyState
PageGetPermissionsPolicyState
    ([PagePermissionsPolicyFeatureState]
 -> PageGetPermissionsPolicyState)
-> Parser [PagePermissionsPolicyFeatureState]
-> Parser PageGetPermissionsPolicyState
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser [PagePermissionsPolicyFeatureState]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"states"
instance Command PPageGetPermissionsPolicyState where
  type CommandResponse PPageGetPermissionsPolicyState = PageGetPermissionsPolicyState
  commandName :: Proxy PPageGetPermissionsPolicyState -> String
commandName Proxy PPageGetPermissionsPolicyState
_ = String
"Page.getPermissionsPolicyState"

-- | Get Origin Trials on given frame.

-- | Parameters of the 'Page.getOriginTrials' command.
data PPageGetOriginTrials = PPageGetOriginTrials
  {
    PPageGetOriginTrials -> Text
pPageGetOriginTrialsFrameId :: PageFrameId
  }
  deriving (PPageGetOriginTrials -> PPageGetOriginTrials -> Bool
(PPageGetOriginTrials -> PPageGetOriginTrials -> Bool)
-> (PPageGetOriginTrials -> PPageGetOriginTrials -> Bool)
-> Eq PPageGetOriginTrials
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageGetOriginTrials -> PPageGetOriginTrials -> Bool
$c/= :: PPageGetOriginTrials -> PPageGetOriginTrials -> Bool
== :: PPageGetOriginTrials -> PPageGetOriginTrials -> Bool
$c== :: PPageGetOriginTrials -> PPageGetOriginTrials -> Bool
Eq, Int -> PPageGetOriginTrials -> ShowS
[PPageGetOriginTrials] -> ShowS
PPageGetOriginTrials -> String
(Int -> PPageGetOriginTrials -> ShowS)
-> (PPageGetOriginTrials -> String)
-> ([PPageGetOriginTrials] -> ShowS)
-> Show PPageGetOriginTrials
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageGetOriginTrials] -> ShowS
$cshowList :: [PPageGetOriginTrials] -> ShowS
show :: PPageGetOriginTrials -> String
$cshow :: PPageGetOriginTrials -> String
showsPrec :: Int -> PPageGetOriginTrials -> ShowS
$cshowsPrec :: Int -> PPageGetOriginTrials -> ShowS
Show)
pPageGetOriginTrials
  :: PageFrameId
  -> PPageGetOriginTrials
pPageGetOriginTrials :: Text -> PPageGetOriginTrials
pPageGetOriginTrials
  Text
arg_pPageGetOriginTrialsFrameId
  = Text -> PPageGetOriginTrials
PPageGetOriginTrials
    Text
arg_pPageGetOriginTrialsFrameId
instance ToJSON PPageGetOriginTrials where
  toJSON :: PPageGetOriginTrials -> Value
toJSON PPageGetOriginTrials
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"frameId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PPageGetOriginTrials -> Text
pPageGetOriginTrialsFrameId PPageGetOriginTrials
p)
    ]
data PageGetOriginTrials = PageGetOriginTrials
  {
    PageGetOriginTrials -> [PageOriginTrial]
pageGetOriginTrialsOriginTrials :: [PageOriginTrial]
  }
  deriving (PageGetOriginTrials -> PageGetOriginTrials -> Bool
(PageGetOriginTrials -> PageGetOriginTrials -> Bool)
-> (PageGetOriginTrials -> PageGetOriginTrials -> Bool)
-> Eq PageGetOriginTrials
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PageGetOriginTrials -> PageGetOriginTrials -> Bool
$c/= :: PageGetOriginTrials -> PageGetOriginTrials -> Bool
== :: PageGetOriginTrials -> PageGetOriginTrials -> Bool
$c== :: PageGetOriginTrials -> PageGetOriginTrials -> Bool
Eq, Int -> PageGetOriginTrials -> ShowS
[PageGetOriginTrials] -> ShowS
PageGetOriginTrials -> String
(Int -> PageGetOriginTrials -> ShowS)
-> (PageGetOriginTrials -> String)
-> ([PageGetOriginTrials] -> ShowS)
-> Show PageGetOriginTrials
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PageGetOriginTrials] -> ShowS
$cshowList :: [PageGetOriginTrials] -> ShowS
show :: PageGetOriginTrials -> String
$cshow :: PageGetOriginTrials -> String
showsPrec :: Int -> PageGetOriginTrials -> ShowS
$cshowsPrec :: Int -> PageGetOriginTrials -> ShowS
Show)
instance FromJSON PageGetOriginTrials where
  parseJSON :: Value -> Parser PageGetOriginTrials
parseJSON = String
-> (Object -> Parser PageGetOriginTrials)
-> Value
-> Parser PageGetOriginTrials
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"PageGetOriginTrials" ((Object -> Parser PageGetOriginTrials)
 -> Value -> Parser PageGetOriginTrials)
-> (Object -> Parser PageGetOriginTrials)
-> Value
-> Parser PageGetOriginTrials
forall a b. (a -> b) -> a -> b
$ \Object
o -> [PageOriginTrial] -> PageGetOriginTrials
PageGetOriginTrials
    ([PageOriginTrial] -> PageGetOriginTrials)
-> Parser [PageOriginTrial] -> Parser PageGetOriginTrials
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser [PageOriginTrial]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"originTrials"
instance Command PPageGetOriginTrials where
  type CommandResponse PPageGetOriginTrials = PageGetOriginTrials
  commandName :: Proxy PPageGetOriginTrials -> String
commandName Proxy PPageGetOriginTrials
_ = String
"Page.getOriginTrials"

-- | Set generic font families.

-- | Parameters of the 'Page.setFontFamilies' command.
data PPageSetFontFamilies = PPageSetFontFamilies
  {
    -- | Specifies font families to set. If a font family is not specified, it won't be changed.
    PPageSetFontFamilies -> PageFontFamilies
pPageSetFontFamiliesFontFamilies :: PageFontFamilies,
    -- | Specifies font families to set for individual scripts.
    PPageSetFontFamilies -> Maybe [PageScriptFontFamilies]
pPageSetFontFamiliesForScripts :: Maybe [PageScriptFontFamilies]
  }
  deriving (PPageSetFontFamilies -> PPageSetFontFamilies -> Bool
(PPageSetFontFamilies -> PPageSetFontFamilies -> Bool)
-> (PPageSetFontFamilies -> PPageSetFontFamilies -> Bool)
-> Eq PPageSetFontFamilies
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageSetFontFamilies -> PPageSetFontFamilies -> Bool
$c/= :: PPageSetFontFamilies -> PPageSetFontFamilies -> Bool
== :: PPageSetFontFamilies -> PPageSetFontFamilies -> Bool
$c== :: PPageSetFontFamilies -> PPageSetFontFamilies -> Bool
Eq, Int -> PPageSetFontFamilies -> ShowS
[PPageSetFontFamilies] -> ShowS
PPageSetFontFamilies -> String
(Int -> PPageSetFontFamilies -> ShowS)
-> (PPageSetFontFamilies -> String)
-> ([PPageSetFontFamilies] -> ShowS)
-> Show PPageSetFontFamilies
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageSetFontFamilies] -> ShowS
$cshowList :: [PPageSetFontFamilies] -> ShowS
show :: PPageSetFontFamilies -> String
$cshow :: PPageSetFontFamilies -> String
showsPrec :: Int -> PPageSetFontFamilies -> ShowS
$cshowsPrec :: Int -> PPageSetFontFamilies -> ShowS
Show)
pPageSetFontFamilies
  {-
  -- | Specifies font families to set. If a font family is not specified, it won't be changed.
  -}
  :: PageFontFamilies
  -> PPageSetFontFamilies
pPageSetFontFamilies :: PageFontFamilies -> PPageSetFontFamilies
pPageSetFontFamilies
  PageFontFamilies
arg_pPageSetFontFamiliesFontFamilies
  = PageFontFamilies
-> Maybe [PageScriptFontFamilies] -> PPageSetFontFamilies
PPageSetFontFamilies
    PageFontFamilies
arg_pPageSetFontFamiliesFontFamilies
    Maybe [PageScriptFontFamilies]
forall a. Maybe a
Nothing
instance ToJSON PPageSetFontFamilies where
  toJSON :: PPageSetFontFamilies -> Value
toJSON PPageSetFontFamilies
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"fontFamilies" Text -> PageFontFamilies -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (PageFontFamilies -> Pair) -> Maybe PageFontFamilies -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> PageFontFamilies -> Maybe PageFontFamilies
forall a. a -> Maybe a
Just (PPageSetFontFamilies -> PageFontFamilies
pPageSetFontFamiliesFontFamilies PPageSetFontFamilies
p),
    (Text
"forScripts" Text -> [PageScriptFontFamilies] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([PageScriptFontFamilies] -> Pair)
-> Maybe [PageScriptFontFamilies] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPageSetFontFamilies -> Maybe [PageScriptFontFamilies]
pPageSetFontFamiliesForScripts PPageSetFontFamilies
p)
    ]
instance Command PPageSetFontFamilies where
  type CommandResponse PPageSetFontFamilies = ()
  commandName :: Proxy PPageSetFontFamilies -> String
commandName Proxy PPageSetFontFamilies
_ = String
"Page.setFontFamilies"
  fromJSON :: Proxy PPageSetFontFamilies
-> Value -> Result (CommandResponse PPageSetFontFamilies)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PPageSetFontFamilies -> Result ())
-> Proxy PPageSetFontFamilies
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PPageSetFontFamilies -> ())
-> Proxy PPageSetFontFamilies
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PPageSetFontFamilies -> ()
forall a b. a -> b -> a
const ()

-- | Set default font sizes.

-- | Parameters of the 'Page.setFontSizes' command.
data PPageSetFontSizes = PPageSetFontSizes
  {
    -- | Specifies font sizes to set. If a font size is not specified, it won't be changed.
    PPageSetFontSizes -> PageFontSizes
pPageSetFontSizesFontSizes :: PageFontSizes
  }
  deriving (PPageSetFontSizes -> PPageSetFontSizes -> Bool
(PPageSetFontSizes -> PPageSetFontSizes -> Bool)
-> (PPageSetFontSizes -> PPageSetFontSizes -> Bool)
-> Eq PPageSetFontSizes
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageSetFontSizes -> PPageSetFontSizes -> Bool
$c/= :: PPageSetFontSizes -> PPageSetFontSizes -> Bool
== :: PPageSetFontSizes -> PPageSetFontSizes -> Bool
$c== :: PPageSetFontSizes -> PPageSetFontSizes -> Bool
Eq, Int -> PPageSetFontSizes -> ShowS
[PPageSetFontSizes] -> ShowS
PPageSetFontSizes -> String
(Int -> PPageSetFontSizes -> ShowS)
-> (PPageSetFontSizes -> String)
-> ([PPageSetFontSizes] -> ShowS)
-> Show PPageSetFontSizes
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageSetFontSizes] -> ShowS
$cshowList :: [PPageSetFontSizes] -> ShowS
show :: PPageSetFontSizes -> String
$cshow :: PPageSetFontSizes -> String
showsPrec :: Int -> PPageSetFontSizes -> ShowS
$cshowsPrec :: Int -> PPageSetFontSizes -> ShowS
Show)
pPageSetFontSizes
  {-
  -- | Specifies font sizes to set. If a font size is not specified, it won't be changed.
  -}
  :: PageFontSizes
  -> PPageSetFontSizes
pPageSetFontSizes :: PageFontSizes -> PPageSetFontSizes
pPageSetFontSizes
  PageFontSizes
arg_pPageSetFontSizesFontSizes
  = PageFontSizes -> PPageSetFontSizes
PPageSetFontSizes
    PageFontSizes
arg_pPageSetFontSizesFontSizes
instance ToJSON PPageSetFontSizes where
  toJSON :: PPageSetFontSizes -> Value
toJSON PPageSetFontSizes
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"fontSizes" Text -> PageFontSizes -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (PageFontSizes -> Pair) -> Maybe PageFontSizes -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> PageFontSizes -> Maybe PageFontSizes
forall a. a -> Maybe a
Just (PPageSetFontSizes -> PageFontSizes
pPageSetFontSizesFontSizes PPageSetFontSizes
p)
    ]
instance Command PPageSetFontSizes where
  type CommandResponse PPageSetFontSizes = ()
  commandName :: Proxy PPageSetFontSizes -> String
commandName Proxy PPageSetFontSizes
_ = String
"Page.setFontSizes"
  fromJSON :: Proxy PPageSetFontSizes
-> Value -> Result (CommandResponse PPageSetFontSizes)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PPageSetFontSizes -> Result ())
-> Proxy PPageSetFontSizes
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PPageSetFontSizes -> ())
-> Proxy PPageSetFontSizes
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PPageSetFontSizes -> ()
forall a b. a -> b -> a
const ()

-- | Sets given markup as the document's HTML.

-- | Parameters of the 'Page.setDocumentContent' command.
data PPageSetDocumentContent = PPageSetDocumentContent
  {
    -- | Frame id to set HTML for.
    PPageSetDocumentContent -> Text
pPageSetDocumentContentFrameId :: PageFrameId,
    -- | HTML content to set.
    PPageSetDocumentContent -> Text
pPageSetDocumentContentHtml :: T.Text
  }
  deriving (PPageSetDocumentContent -> PPageSetDocumentContent -> Bool
(PPageSetDocumentContent -> PPageSetDocumentContent -> Bool)
-> (PPageSetDocumentContent -> PPageSetDocumentContent -> Bool)
-> Eq PPageSetDocumentContent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageSetDocumentContent -> PPageSetDocumentContent -> Bool
$c/= :: PPageSetDocumentContent -> PPageSetDocumentContent -> Bool
== :: PPageSetDocumentContent -> PPageSetDocumentContent -> Bool
$c== :: PPageSetDocumentContent -> PPageSetDocumentContent -> Bool
Eq, Int -> PPageSetDocumentContent -> ShowS
[PPageSetDocumentContent] -> ShowS
PPageSetDocumentContent -> String
(Int -> PPageSetDocumentContent -> ShowS)
-> (PPageSetDocumentContent -> String)
-> ([PPageSetDocumentContent] -> ShowS)
-> Show PPageSetDocumentContent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageSetDocumentContent] -> ShowS
$cshowList :: [PPageSetDocumentContent] -> ShowS
show :: PPageSetDocumentContent -> String
$cshow :: PPageSetDocumentContent -> String
showsPrec :: Int -> PPageSetDocumentContent -> ShowS
$cshowsPrec :: Int -> PPageSetDocumentContent -> ShowS
Show)
pPageSetDocumentContent
  {-
  -- | Frame id to set HTML for.
  -}
  :: PageFrameId
  {-
  -- | HTML content to set.
  -}
  -> T.Text
  -> PPageSetDocumentContent
pPageSetDocumentContent :: Text -> Text -> PPageSetDocumentContent
pPageSetDocumentContent
  Text
arg_pPageSetDocumentContentFrameId
  Text
arg_pPageSetDocumentContentHtml
  = Text -> Text -> PPageSetDocumentContent
PPageSetDocumentContent
    Text
arg_pPageSetDocumentContentFrameId
    Text
arg_pPageSetDocumentContentHtml
instance ToJSON PPageSetDocumentContent where
  toJSON :: PPageSetDocumentContent -> Value
toJSON PPageSetDocumentContent
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"frameId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PPageSetDocumentContent -> Text
pPageSetDocumentContentFrameId PPageSetDocumentContent
p),
    (Text
"html" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PPageSetDocumentContent -> Text
pPageSetDocumentContentHtml PPageSetDocumentContent
p)
    ]
instance Command PPageSetDocumentContent where
  type CommandResponse PPageSetDocumentContent = ()
  commandName :: Proxy PPageSetDocumentContent -> String
commandName Proxy PPageSetDocumentContent
_ = String
"Page.setDocumentContent"
  fromJSON :: Proxy PPageSetDocumentContent
-> Value -> Result (CommandResponse PPageSetDocumentContent)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PPageSetDocumentContent -> Result ())
-> Proxy PPageSetDocumentContent
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PPageSetDocumentContent -> ())
-> Proxy PPageSetDocumentContent
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PPageSetDocumentContent -> ()
forall a b. a -> b -> a
const ()

-- | Controls whether page will emit lifecycle events.

-- | Parameters of the 'Page.setLifecycleEventsEnabled' command.
data PPageSetLifecycleEventsEnabled = PPageSetLifecycleEventsEnabled
  {
    -- | If true, starts emitting lifecycle events.
    PPageSetLifecycleEventsEnabled -> Bool
pPageSetLifecycleEventsEnabledEnabled :: Bool
  }
  deriving (PPageSetLifecycleEventsEnabled
-> PPageSetLifecycleEventsEnabled -> Bool
(PPageSetLifecycleEventsEnabled
 -> PPageSetLifecycleEventsEnabled -> Bool)
-> (PPageSetLifecycleEventsEnabled
    -> PPageSetLifecycleEventsEnabled -> Bool)
-> Eq PPageSetLifecycleEventsEnabled
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageSetLifecycleEventsEnabled
-> PPageSetLifecycleEventsEnabled -> Bool
$c/= :: PPageSetLifecycleEventsEnabled
-> PPageSetLifecycleEventsEnabled -> Bool
== :: PPageSetLifecycleEventsEnabled
-> PPageSetLifecycleEventsEnabled -> Bool
$c== :: PPageSetLifecycleEventsEnabled
-> PPageSetLifecycleEventsEnabled -> Bool
Eq, Int -> PPageSetLifecycleEventsEnabled -> ShowS
[PPageSetLifecycleEventsEnabled] -> ShowS
PPageSetLifecycleEventsEnabled -> String
(Int -> PPageSetLifecycleEventsEnabled -> ShowS)
-> (PPageSetLifecycleEventsEnabled -> String)
-> ([PPageSetLifecycleEventsEnabled] -> ShowS)
-> Show PPageSetLifecycleEventsEnabled
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageSetLifecycleEventsEnabled] -> ShowS
$cshowList :: [PPageSetLifecycleEventsEnabled] -> ShowS
show :: PPageSetLifecycleEventsEnabled -> String
$cshow :: PPageSetLifecycleEventsEnabled -> String
showsPrec :: Int -> PPageSetLifecycleEventsEnabled -> ShowS
$cshowsPrec :: Int -> PPageSetLifecycleEventsEnabled -> ShowS
Show)
pPageSetLifecycleEventsEnabled
  {-
  -- | If true, starts emitting lifecycle events.
  -}
  :: Bool
  -> PPageSetLifecycleEventsEnabled
pPageSetLifecycleEventsEnabled :: Bool -> PPageSetLifecycleEventsEnabled
pPageSetLifecycleEventsEnabled
  Bool
arg_pPageSetLifecycleEventsEnabledEnabled
  = Bool -> PPageSetLifecycleEventsEnabled
PPageSetLifecycleEventsEnabled
    Bool
arg_pPageSetLifecycleEventsEnabledEnabled
instance ToJSON PPageSetLifecycleEventsEnabled where
  toJSON :: PPageSetLifecycleEventsEnabled -> Value
toJSON PPageSetLifecycleEventsEnabled
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"enabled" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (PPageSetLifecycleEventsEnabled -> Bool
pPageSetLifecycleEventsEnabledEnabled PPageSetLifecycleEventsEnabled
p)
    ]
instance Command PPageSetLifecycleEventsEnabled where
  type CommandResponse PPageSetLifecycleEventsEnabled = ()
  commandName :: Proxy PPageSetLifecycleEventsEnabled -> String
commandName Proxy PPageSetLifecycleEventsEnabled
_ = String
"Page.setLifecycleEventsEnabled"
  fromJSON :: Proxy PPageSetLifecycleEventsEnabled
-> Value -> Result (CommandResponse PPageSetLifecycleEventsEnabled)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PPageSetLifecycleEventsEnabled -> Result ())
-> Proxy PPageSetLifecycleEventsEnabled
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PPageSetLifecycleEventsEnabled -> ())
-> Proxy PPageSetLifecycleEventsEnabled
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PPageSetLifecycleEventsEnabled -> ()
forall a b. a -> b -> a
const ()

-- | Starts sending each frame using the `screencastFrame` event.

-- | Parameters of the 'Page.startScreencast' command.
data PPageStartScreencastFormat = PPageStartScreencastFormatJpeg | PPageStartScreencastFormatPng
  deriving (Eq PPageStartScreencastFormat
Eq PPageStartScreencastFormat
-> (PPageStartScreencastFormat
    -> PPageStartScreencastFormat -> Ordering)
-> (PPageStartScreencastFormat
    -> PPageStartScreencastFormat -> Bool)
-> (PPageStartScreencastFormat
    -> PPageStartScreencastFormat -> Bool)
-> (PPageStartScreencastFormat
    -> PPageStartScreencastFormat -> Bool)
-> (PPageStartScreencastFormat
    -> PPageStartScreencastFormat -> Bool)
-> (PPageStartScreencastFormat
    -> PPageStartScreencastFormat -> PPageStartScreencastFormat)
-> (PPageStartScreencastFormat
    -> PPageStartScreencastFormat -> PPageStartScreencastFormat)
-> Ord PPageStartScreencastFormat
PPageStartScreencastFormat -> PPageStartScreencastFormat -> Bool
PPageStartScreencastFormat
-> PPageStartScreencastFormat -> Ordering
PPageStartScreencastFormat
-> PPageStartScreencastFormat -> PPageStartScreencastFormat
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: PPageStartScreencastFormat
-> PPageStartScreencastFormat -> PPageStartScreencastFormat
$cmin :: PPageStartScreencastFormat
-> PPageStartScreencastFormat -> PPageStartScreencastFormat
max :: PPageStartScreencastFormat
-> PPageStartScreencastFormat -> PPageStartScreencastFormat
$cmax :: PPageStartScreencastFormat
-> PPageStartScreencastFormat -> PPageStartScreencastFormat
>= :: PPageStartScreencastFormat -> PPageStartScreencastFormat -> Bool
$c>= :: PPageStartScreencastFormat -> PPageStartScreencastFormat -> Bool
> :: PPageStartScreencastFormat -> PPageStartScreencastFormat -> Bool
$c> :: PPageStartScreencastFormat -> PPageStartScreencastFormat -> Bool
<= :: PPageStartScreencastFormat -> PPageStartScreencastFormat -> Bool
$c<= :: PPageStartScreencastFormat -> PPageStartScreencastFormat -> Bool
< :: PPageStartScreencastFormat -> PPageStartScreencastFormat -> Bool
$c< :: PPageStartScreencastFormat -> PPageStartScreencastFormat -> Bool
compare :: PPageStartScreencastFormat
-> PPageStartScreencastFormat -> Ordering
$ccompare :: PPageStartScreencastFormat
-> PPageStartScreencastFormat -> Ordering
$cp1Ord :: Eq PPageStartScreencastFormat
Ord, PPageStartScreencastFormat -> PPageStartScreencastFormat -> Bool
(PPageStartScreencastFormat -> PPageStartScreencastFormat -> Bool)
-> (PPageStartScreencastFormat
    -> PPageStartScreencastFormat -> Bool)
-> Eq PPageStartScreencastFormat
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageStartScreencastFormat -> PPageStartScreencastFormat -> Bool
$c/= :: PPageStartScreencastFormat -> PPageStartScreencastFormat -> Bool
== :: PPageStartScreencastFormat -> PPageStartScreencastFormat -> Bool
$c== :: PPageStartScreencastFormat -> PPageStartScreencastFormat -> Bool
Eq, Int -> PPageStartScreencastFormat -> ShowS
[PPageStartScreencastFormat] -> ShowS
PPageStartScreencastFormat -> String
(Int -> PPageStartScreencastFormat -> ShowS)
-> (PPageStartScreencastFormat -> String)
-> ([PPageStartScreencastFormat] -> ShowS)
-> Show PPageStartScreencastFormat
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageStartScreencastFormat] -> ShowS
$cshowList :: [PPageStartScreencastFormat] -> ShowS
show :: PPageStartScreencastFormat -> String
$cshow :: PPageStartScreencastFormat -> String
showsPrec :: Int -> PPageStartScreencastFormat -> ShowS
$cshowsPrec :: Int -> PPageStartScreencastFormat -> ShowS
Show, ReadPrec [PPageStartScreencastFormat]
ReadPrec PPageStartScreencastFormat
Int -> ReadS PPageStartScreencastFormat
ReadS [PPageStartScreencastFormat]
(Int -> ReadS PPageStartScreencastFormat)
-> ReadS [PPageStartScreencastFormat]
-> ReadPrec PPageStartScreencastFormat
-> ReadPrec [PPageStartScreencastFormat]
-> Read PPageStartScreencastFormat
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PPageStartScreencastFormat]
$creadListPrec :: ReadPrec [PPageStartScreencastFormat]
readPrec :: ReadPrec PPageStartScreencastFormat
$creadPrec :: ReadPrec PPageStartScreencastFormat
readList :: ReadS [PPageStartScreencastFormat]
$creadList :: ReadS [PPageStartScreencastFormat]
readsPrec :: Int -> ReadS PPageStartScreencastFormat
$creadsPrec :: Int -> ReadS PPageStartScreencastFormat
Read)
instance FromJSON PPageStartScreencastFormat where
  parseJSON :: Value -> Parser PPageStartScreencastFormat
parseJSON = String
-> (Text -> Parser PPageStartScreencastFormat)
-> Value
-> Parser PPageStartScreencastFormat
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"PPageStartScreencastFormat" ((Text -> Parser PPageStartScreencastFormat)
 -> Value -> Parser PPageStartScreencastFormat)
-> (Text -> Parser PPageStartScreencastFormat)
-> Value
-> Parser PPageStartScreencastFormat
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"jpeg" -> PPageStartScreencastFormat -> Parser PPageStartScreencastFormat
forall (f :: * -> *) a. Applicative f => a -> f a
pure PPageStartScreencastFormat
PPageStartScreencastFormatJpeg
    Text
"png" -> PPageStartScreencastFormat -> Parser PPageStartScreencastFormat
forall (f :: * -> *) a. Applicative f => a -> f a
pure PPageStartScreencastFormat
PPageStartScreencastFormatPng
    Text
"_" -> String -> Parser PPageStartScreencastFormat
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse PPageStartScreencastFormat"
instance ToJSON PPageStartScreencastFormat where
  toJSON :: PPageStartScreencastFormat -> Value
toJSON PPageStartScreencastFormat
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case PPageStartScreencastFormat
v of
    PPageStartScreencastFormat
PPageStartScreencastFormatJpeg -> Text
"jpeg"
    PPageStartScreencastFormat
PPageStartScreencastFormatPng -> Text
"png"
data PPageStartScreencast = PPageStartScreencast
  {
    -- | Image compression format.
    PPageStartScreencast -> Maybe PPageStartScreencastFormat
pPageStartScreencastFormat :: Maybe PPageStartScreencastFormat,
    -- | Compression quality from range [0..100].
    PPageStartScreencast -> Maybe Int
pPageStartScreencastQuality :: Maybe Int,
    -- | Maximum screenshot width.
    PPageStartScreencast -> Maybe Int
pPageStartScreencastMaxWidth :: Maybe Int,
    -- | Maximum screenshot height.
    PPageStartScreencast -> Maybe Int
pPageStartScreencastMaxHeight :: Maybe Int,
    -- | Send every n-th frame.
    PPageStartScreencast -> Maybe Int
pPageStartScreencastEveryNthFrame :: Maybe Int
  }
  deriving (PPageStartScreencast -> PPageStartScreencast -> Bool
(PPageStartScreencast -> PPageStartScreencast -> Bool)
-> (PPageStartScreencast -> PPageStartScreencast -> Bool)
-> Eq PPageStartScreencast
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageStartScreencast -> PPageStartScreencast -> Bool
$c/= :: PPageStartScreencast -> PPageStartScreencast -> Bool
== :: PPageStartScreencast -> PPageStartScreencast -> Bool
$c== :: PPageStartScreencast -> PPageStartScreencast -> Bool
Eq, Int -> PPageStartScreencast -> ShowS
[PPageStartScreencast] -> ShowS
PPageStartScreencast -> String
(Int -> PPageStartScreencast -> ShowS)
-> (PPageStartScreencast -> String)
-> ([PPageStartScreencast] -> ShowS)
-> Show PPageStartScreencast
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageStartScreencast] -> ShowS
$cshowList :: [PPageStartScreencast] -> ShowS
show :: PPageStartScreencast -> String
$cshow :: PPageStartScreencast -> String
showsPrec :: Int -> PPageStartScreencast -> ShowS
$cshowsPrec :: Int -> PPageStartScreencast -> ShowS
Show)
pPageStartScreencast
  :: PPageStartScreencast
pPageStartScreencast :: PPageStartScreencast
pPageStartScreencast
  = Maybe PPageStartScreencastFormat
-> Maybe Int
-> Maybe Int
-> Maybe Int
-> Maybe Int
-> PPageStartScreencast
PPageStartScreencast
    Maybe PPageStartScreencastFormat
forall a. Maybe a
Nothing
    Maybe Int
forall a. Maybe a
Nothing
    Maybe Int
forall a. Maybe a
Nothing
    Maybe Int
forall a. Maybe a
Nothing
    Maybe Int
forall a. Maybe a
Nothing
instance ToJSON PPageStartScreencast where
  toJSON :: PPageStartScreencast -> Value
toJSON PPageStartScreencast
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"format" Text -> PPageStartScreencastFormat -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (PPageStartScreencastFormat -> Pair)
-> Maybe PPageStartScreencastFormat -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPageStartScreencast -> Maybe PPageStartScreencastFormat
pPageStartScreencastFormat PPageStartScreencast
p),
    (Text
"quality" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPageStartScreencast -> Maybe Int
pPageStartScreencastQuality PPageStartScreencast
p),
    (Text
"maxWidth" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPageStartScreencast -> Maybe Int
pPageStartScreencastMaxWidth PPageStartScreencast
p),
    (Text
"maxHeight" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPageStartScreencast -> Maybe Int
pPageStartScreencastMaxHeight PPageStartScreencast
p),
    (Text
"everyNthFrame" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPageStartScreencast -> Maybe Int
pPageStartScreencastEveryNthFrame PPageStartScreencast
p)
    ]
instance Command PPageStartScreencast where
  type CommandResponse PPageStartScreencast = ()
  commandName :: Proxy PPageStartScreencast -> String
commandName Proxy PPageStartScreencast
_ = String
"Page.startScreencast"
  fromJSON :: Proxy PPageStartScreencast
-> Value -> Result (CommandResponse PPageStartScreencast)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PPageStartScreencast -> Result ())
-> Proxy PPageStartScreencast
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PPageStartScreencast -> ())
-> Proxy PPageStartScreencast
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PPageStartScreencast -> ()
forall a b. a -> b -> a
const ()

-- | Force the page stop all navigations and pending resource fetches.

-- | Parameters of the 'Page.stopLoading' command.
data PPageStopLoading = PPageStopLoading
  deriving (PPageStopLoading -> PPageStopLoading -> Bool
(PPageStopLoading -> PPageStopLoading -> Bool)
-> (PPageStopLoading -> PPageStopLoading -> Bool)
-> Eq PPageStopLoading
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageStopLoading -> PPageStopLoading -> Bool
$c/= :: PPageStopLoading -> PPageStopLoading -> Bool
== :: PPageStopLoading -> PPageStopLoading -> Bool
$c== :: PPageStopLoading -> PPageStopLoading -> Bool
Eq, Int -> PPageStopLoading -> ShowS
[PPageStopLoading] -> ShowS
PPageStopLoading -> String
(Int -> PPageStopLoading -> ShowS)
-> (PPageStopLoading -> String)
-> ([PPageStopLoading] -> ShowS)
-> Show PPageStopLoading
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageStopLoading] -> ShowS
$cshowList :: [PPageStopLoading] -> ShowS
show :: PPageStopLoading -> String
$cshow :: PPageStopLoading -> String
showsPrec :: Int -> PPageStopLoading -> ShowS
$cshowsPrec :: Int -> PPageStopLoading -> ShowS
Show)
pPageStopLoading
  :: PPageStopLoading
pPageStopLoading :: PPageStopLoading
pPageStopLoading
  = PPageStopLoading
PPageStopLoading
instance ToJSON PPageStopLoading where
  toJSON :: PPageStopLoading -> Value
toJSON PPageStopLoading
_ = Value
A.Null
instance Command PPageStopLoading where
  type CommandResponse PPageStopLoading = ()
  commandName :: Proxy PPageStopLoading -> String
commandName Proxy PPageStopLoading
_ = String
"Page.stopLoading"
  fromJSON :: Proxy PPageStopLoading
-> Value -> Result (CommandResponse PPageStopLoading)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PPageStopLoading -> Result ())
-> Proxy PPageStopLoading
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PPageStopLoading -> ())
-> Proxy PPageStopLoading
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PPageStopLoading -> ()
forall a b. a -> b -> a
const ()

-- | Crashes renderer on the IO thread, generates minidumps.

-- | Parameters of the 'Page.crash' command.
data PPageCrash = PPageCrash
  deriving (PPageCrash -> PPageCrash -> Bool
(PPageCrash -> PPageCrash -> Bool)
-> (PPageCrash -> PPageCrash -> Bool) -> Eq PPageCrash
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageCrash -> PPageCrash -> Bool
$c/= :: PPageCrash -> PPageCrash -> Bool
== :: PPageCrash -> PPageCrash -> Bool
$c== :: PPageCrash -> PPageCrash -> Bool
Eq, Int -> PPageCrash -> ShowS
[PPageCrash] -> ShowS
PPageCrash -> String
(Int -> PPageCrash -> ShowS)
-> (PPageCrash -> String)
-> ([PPageCrash] -> ShowS)
-> Show PPageCrash
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageCrash] -> ShowS
$cshowList :: [PPageCrash] -> ShowS
show :: PPageCrash -> String
$cshow :: PPageCrash -> String
showsPrec :: Int -> PPageCrash -> ShowS
$cshowsPrec :: Int -> PPageCrash -> ShowS
Show)
pPageCrash
  :: PPageCrash
pPageCrash :: PPageCrash
pPageCrash
  = PPageCrash
PPageCrash
instance ToJSON PPageCrash where
  toJSON :: PPageCrash -> Value
toJSON PPageCrash
_ = Value
A.Null
instance Command PPageCrash where
  type CommandResponse PPageCrash = ()
  commandName :: Proxy PPageCrash -> String
commandName Proxy PPageCrash
_ = String
"Page.crash"
  fromJSON :: Proxy PPageCrash -> Value -> Result (CommandResponse PPageCrash)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PPageCrash -> Result ())
-> Proxy PPageCrash
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PPageCrash -> ()) -> Proxy PPageCrash -> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PPageCrash -> ()
forall a b. a -> b -> a
const ()

-- | Tries to close page, running its beforeunload hooks, if any.

-- | Parameters of the 'Page.close' command.
data PPageClose = PPageClose
  deriving (PPageClose -> PPageClose -> Bool
(PPageClose -> PPageClose -> Bool)
-> (PPageClose -> PPageClose -> Bool) -> Eq PPageClose
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageClose -> PPageClose -> Bool
$c/= :: PPageClose -> PPageClose -> Bool
== :: PPageClose -> PPageClose -> Bool
$c== :: PPageClose -> PPageClose -> Bool
Eq, Int -> PPageClose -> ShowS
[PPageClose] -> ShowS
PPageClose -> String
(Int -> PPageClose -> ShowS)
-> (PPageClose -> String)
-> ([PPageClose] -> ShowS)
-> Show PPageClose
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageClose] -> ShowS
$cshowList :: [PPageClose] -> ShowS
show :: PPageClose -> String
$cshow :: PPageClose -> String
showsPrec :: Int -> PPageClose -> ShowS
$cshowsPrec :: Int -> PPageClose -> ShowS
Show)
pPageClose
  :: PPageClose
pPageClose :: PPageClose
pPageClose
  = PPageClose
PPageClose
instance ToJSON PPageClose where
  toJSON :: PPageClose -> Value
toJSON PPageClose
_ = Value
A.Null
instance Command PPageClose where
  type CommandResponse PPageClose = ()
  commandName :: Proxy PPageClose -> String
commandName Proxy PPageClose
_ = String
"Page.close"
  fromJSON :: Proxy PPageClose -> Value -> Result (CommandResponse PPageClose)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PPageClose -> Result ())
-> Proxy PPageClose
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PPageClose -> ()) -> Proxy PPageClose -> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PPageClose -> ()
forall a b. a -> b -> a
const ()

-- | Tries to update the web lifecycle state of the page.
--   It will transition the page to the given state according to:
--   https://github.com/WICG/web-lifecycle/

-- | Parameters of the 'Page.setWebLifecycleState' command.
data PPageSetWebLifecycleStateState = PPageSetWebLifecycleStateStateFrozen | PPageSetWebLifecycleStateStateActive
  deriving (Eq PPageSetWebLifecycleStateState
Eq PPageSetWebLifecycleStateState
-> (PPageSetWebLifecycleStateState
    -> PPageSetWebLifecycleStateState -> Ordering)
-> (PPageSetWebLifecycleStateState
    -> PPageSetWebLifecycleStateState -> Bool)
-> (PPageSetWebLifecycleStateState
    -> PPageSetWebLifecycleStateState -> Bool)
-> (PPageSetWebLifecycleStateState
    -> PPageSetWebLifecycleStateState -> Bool)
-> (PPageSetWebLifecycleStateState
    -> PPageSetWebLifecycleStateState -> Bool)
-> (PPageSetWebLifecycleStateState
    -> PPageSetWebLifecycleStateState
    -> PPageSetWebLifecycleStateState)
-> (PPageSetWebLifecycleStateState
    -> PPageSetWebLifecycleStateState
    -> PPageSetWebLifecycleStateState)
-> Ord PPageSetWebLifecycleStateState
PPageSetWebLifecycleStateState
-> PPageSetWebLifecycleStateState -> Bool
PPageSetWebLifecycleStateState
-> PPageSetWebLifecycleStateState -> Ordering
PPageSetWebLifecycleStateState
-> PPageSetWebLifecycleStateState -> PPageSetWebLifecycleStateState
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: PPageSetWebLifecycleStateState
-> PPageSetWebLifecycleStateState -> PPageSetWebLifecycleStateState
$cmin :: PPageSetWebLifecycleStateState
-> PPageSetWebLifecycleStateState -> PPageSetWebLifecycleStateState
max :: PPageSetWebLifecycleStateState
-> PPageSetWebLifecycleStateState -> PPageSetWebLifecycleStateState
$cmax :: PPageSetWebLifecycleStateState
-> PPageSetWebLifecycleStateState -> PPageSetWebLifecycleStateState
>= :: PPageSetWebLifecycleStateState
-> PPageSetWebLifecycleStateState -> Bool
$c>= :: PPageSetWebLifecycleStateState
-> PPageSetWebLifecycleStateState -> Bool
> :: PPageSetWebLifecycleStateState
-> PPageSetWebLifecycleStateState -> Bool
$c> :: PPageSetWebLifecycleStateState
-> PPageSetWebLifecycleStateState -> Bool
<= :: PPageSetWebLifecycleStateState
-> PPageSetWebLifecycleStateState -> Bool
$c<= :: PPageSetWebLifecycleStateState
-> PPageSetWebLifecycleStateState -> Bool
< :: PPageSetWebLifecycleStateState
-> PPageSetWebLifecycleStateState -> Bool
$c< :: PPageSetWebLifecycleStateState
-> PPageSetWebLifecycleStateState -> Bool
compare :: PPageSetWebLifecycleStateState
-> PPageSetWebLifecycleStateState -> Ordering
$ccompare :: PPageSetWebLifecycleStateState
-> PPageSetWebLifecycleStateState -> Ordering
$cp1Ord :: Eq PPageSetWebLifecycleStateState
Ord, PPageSetWebLifecycleStateState
-> PPageSetWebLifecycleStateState -> Bool
(PPageSetWebLifecycleStateState
 -> PPageSetWebLifecycleStateState -> Bool)
-> (PPageSetWebLifecycleStateState
    -> PPageSetWebLifecycleStateState -> Bool)
-> Eq PPageSetWebLifecycleStateState
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageSetWebLifecycleStateState
-> PPageSetWebLifecycleStateState -> Bool
$c/= :: PPageSetWebLifecycleStateState
-> PPageSetWebLifecycleStateState -> Bool
== :: PPageSetWebLifecycleStateState
-> PPageSetWebLifecycleStateState -> Bool
$c== :: PPageSetWebLifecycleStateState
-> PPageSetWebLifecycleStateState -> Bool
Eq, Int -> PPageSetWebLifecycleStateState -> ShowS
[PPageSetWebLifecycleStateState] -> ShowS
PPageSetWebLifecycleStateState -> String
(Int -> PPageSetWebLifecycleStateState -> ShowS)
-> (PPageSetWebLifecycleStateState -> String)
-> ([PPageSetWebLifecycleStateState] -> ShowS)
-> Show PPageSetWebLifecycleStateState
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageSetWebLifecycleStateState] -> ShowS
$cshowList :: [PPageSetWebLifecycleStateState] -> ShowS
show :: PPageSetWebLifecycleStateState -> String
$cshow :: PPageSetWebLifecycleStateState -> String
showsPrec :: Int -> PPageSetWebLifecycleStateState -> ShowS
$cshowsPrec :: Int -> PPageSetWebLifecycleStateState -> ShowS
Show, ReadPrec [PPageSetWebLifecycleStateState]
ReadPrec PPageSetWebLifecycleStateState
Int -> ReadS PPageSetWebLifecycleStateState
ReadS [PPageSetWebLifecycleStateState]
(Int -> ReadS PPageSetWebLifecycleStateState)
-> ReadS [PPageSetWebLifecycleStateState]
-> ReadPrec PPageSetWebLifecycleStateState
-> ReadPrec [PPageSetWebLifecycleStateState]
-> Read PPageSetWebLifecycleStateState
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PPageSetWebLifecycleStateState]
$creadListPrec :: ReadPrec [PPageSetWebLifecycleStateState]
readPrec :: ReadPrec PPageSetWebLifecycleStateState
$creadPrec :: ReadPrec PPageSetWebLifecycleStateState
readList :: ReadS [PPageSetWebLifecycleStateState]
$creadList :: ReadS [PPageSetWebLifecycleStateState]
readsPrec :: Int -> ReadS PPageSetWebLifecycleStateState
$creadsPrec :: Int -> ReadS PPageSetWebLifecycleStateState
Read)
instance FromJSON PPageSetWebLifecycleStateState where
  parseJSON :: Value -> Parser PPageSetWebLifecycleStateState
parseJSON = String
-> (Text -> Parser PPageSetWebLifecycleStateState)
-> Value
-> Parser PPageSetWebLifecycleStateState
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"PPageSetWebLifecycleStateState" ((Text -> Parser PPageSetWebLifecycleStateState)
 -> Value -> Parser PPageSetWebLifecycleStateState)
-> (Text -> Parser PPageSetWebLifecycleStateState)
-> Value
-> Parser PPageSetWebLifecycleStateState
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"frozen" -> PPageSetWebLifecycleStateState
-> Parser PPageSetWebLifecycleStateState
forall (f :: * -> *) a. Applicative f => a -> f a
pure PPageSetWebLifecycleStateState
PPageSetWebLifecycleStateStateFrozen
    Text
"active" -> PPageSetWebLifecycleStateState
-> Parser PPageSetWebLifecycleStateState
forall (f :: * -> *) a. Applicative f => a -> f a
pure PPageSetWebLifecycleStateState
PPageSetWebLifecycleStateStateActive
    Text
"_" -> String -> Parser PPageSetWebLifecycleStateState
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse PPageSetWebLifecycleStateState"
instance ToJSON PPageSetWebLifecycleStateState where
  toJSON :: PPageSetWebLifecycleStateState -> Value
toJSON PPageSetWebLifecycleStateState
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case PPageSetWebLifecycleStateState
v of
    PPageSetWebLifecycleStateState
PPageSetWebLifecycleStateStateFrozen -> Text
"frozen"
    PPageSetWebLifecycleStateState
PPageSetWebLifecycleStateStateActive -> Text
"active"
data PPageSetWebLifecycleState = PPageSetWebLifecycleState
  {
    -- | Target lifecycle state
    PPageSetWebLifecycleState -> PPageSetWebLifecycleStateState
pPageSetWebLifecycleStateState :: PPageSetWebLifecycleStateState
  }
  deriving (PPageSetWebLifecycleState -> PPageSetWebLifecycleState -> Bool
(PPageSetWebLifecycleState -> PPageSetWebLifecycleState -> Bool)
-> (PPageSetWebLifecycleState -> PPageSetWebLifecycleState -> Bool)
-> Eq PPageSetWebLifecycleState
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageSetWebLifecycleState -> PPageSetWebLifecycleState -> Bool
$c/= :: PPageSetWebLifecycleState -> PPageSetWebLifecycleState -> Bool
== :: PPageSetWebLifecycleState -> PPageSetWebLifecycleState -> Bool
$c== :: PPageSetWebLifecycleState -> PPageSetWebLifecycleState -> Bool
Eq, Int -> PPageSetWebLifecycleState -> ShowS
[PPageSetWebLifecycleState] -> ShowS
PPageSetWebLifecycleState -> String
(Int -> PPageSetWebLifecycleState -> ShowS)
-> (PPageSetWebLifecycleState -> String)
-> ([PPageSetWebLifecycleState] -> ShowS)
-> Show PPageSetWebLifecycleState
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageSetWebLifecycleState] -> ShowS
$cshowList :: [PPageSetWebLifecycleState] -> ShowS
show :: PPageSetWebLifecycleState -> String
$cshow :: PPageSetWebLifecycleState -> String
showsPrec :: Int -> PPageSetWebLifecycleState -> ShowS
$cshowsPrec :: Int -> PPageSetWebLifecycleState -> ShowS
Show)
pPageSetWebLifecycleState
  {-
  -- | Target lifecycle state
  -}
  :: PPageSetWebLifecycleStateState
  -> PPageSetWebLifecycleState
pPageSetWebLifecycleState :: PPageSetWebLifecycleStateState -> PPageSetWebLifecycleState
pPageSetWebLifecycleState
  PPageSetWebLifecycleStateState
arg_pPageSetWebLifecycleStateState
  = PPageSetWebLifecycleStateState -> PPageSetWebLifecycleState
PPageSetWebLifecycleState
    PPageSetWebLifecycleStateState
arg_pPageSetWebLifecycleStateState
instance ToJSON PPageSetWebLifecycleState where
  toJSON :: PPageSetWebLifecycleState -> Value
toJSON PPageSetWebLifecycleState
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"state" Text -> PPageSetWebLifecycleStateState -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (PPageSetWebLifecycleStateState -> Pair)
-> Maybe PPageSetWebLifecycleStateState -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> PPageSetWebLifecycleStateState
-> Maybe PPageSetWebLifecycleStateState
forall a. a -> Maybe a
Just (PPageSetWebLifecycleState -> PPageSetWebLifecycleStateState
pPageSetWebLifecycleStateState PPageSetWebLifecycleState
p)
    ]
instance Command PPageSetWebLifecycleState where
  type CommandResponse PPageSetWebLifecycleState = ()
  commandName :: Proxy PPageSetWebLifecycleState -> String
commandName Proxy PPageSetWebLifecycleState
_ = String
"Page.setWebLifecycleState"
  fromJSON :: Proxy PPageSetWebLifecycleState
-> Value -> Result (CommandResponse PPageSetWebLifecycleState)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PPageSetWebLifecycleState -> Result ())
-> Proxy PPageSetWebLifecycleState
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PPageSetWebLifecycleState -> ())
-> Proxy PPageSetWebLifecycleState
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PPageSetWebLifecycleState -> ()
forall a b. a -> b -> a
const ()

-- | Stops sending each frame in the `screencastFrame`.

-- | Parameters of the 'Page.stopScreencast' command.
data PPageStopScreencast = PPageStopScreencast
  deriving (PPageStopScreencast -> PPageStopScreencast -> Bool
(PPageStopScreencast -> PPageStopScreencast -> Bool)
-> (PPageStopScreencast -> PPageStopScreencast -> Bool)
-> Eq PPageStopScreencast
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageStopScreencast -> PPageStopScreencast -> Bool
$c/= :: PPageStopScreencast -> PPageStopScreencast -> Bool
== :: PPageStopScreencast -> PPageStopScreencast -> Bool
$c== :: PPageStopScreencast -> PPageStopScreencast -> Bool
Eq, Int -> PPageStopScreencast -> ShowS
[PPageStopScreencast] -> ShowS
PPageStopScreencast -> String
(Int -> PPageStopScreencast -> ShowS)
-> (PPageStopScreencast -> String)
-> ([PPageStopScreencast] -> ShowS)
-> Show PPageStopScreencast
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageStopScreencast] -> ShowS
$cshowList :: [PPageStopScreencast] -> ShowS
show :: PPageStopScreencast -> String
$cshow :: PPageStopScreencast -> String
showsPrec :: Int -> PPageStopScreencast -> ShowS
$cshowsPrec :: Int -> PPageStopScreencast -> ShowS
Show)
pPageStopScreencast
  :: PPageStopScreencast
pPageStopScreencast :: PPageStopScreencast
pPageStopScreencast
  = PPageStopScreencast
PPageStopScreencast
instance ToJSON PPageStopScreencast where
  toJSON :: PPageStopScreencast -> Value
toJSON PPageStopScreencast
_ = Value
A.Null
instance Command PPageStopScreencast where
  type CommandResponse PPageStopScreencast = ()
  commandName :: Proxy PPageStopScreencast -> String
commandName Proxy PPageStopScreencast
_ = String
"Page.stopScreencast"
  fromJSON :: Proxy PPageStopScreencast
-> Value -> Result (CommandResponse PPageStopScreencast)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PPageStopScreencast -> Result ())
-> Proxy PPageStopScreencast
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PPageStopScreencast -> ())
-> Proxy PPageStopScreencast
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PPageStopScreencast -> ()
forall a b. a -> b -> a
const ()

-- | Requests backend to produce compilation cache for the specified scripts.
--   `scripts` are appeneded to the list of scripts for which the cache
--   would be produced. The list may be reset during page navigation.
--   When script with a matching URL is encountered, the cache is optionally
--   produced upon backend discretion, based on internal heuristics.
--   See also: `Page.compilationCacheProduced`.

-- | Parameters of the 'Page.produceCompilationCache' command.
data PPageProduceCompilationCache = PPageProduceCompilationCache
  {
    PPageProduceCompilationCache -> [PageCompilationCacheParams]
pPageProduceCompilationCacheScripts :: [PageCompilationCacheParams]
  }
  deriving (PPageProduceCompilationCache
-> PPageProduceCompilationCache -> Bool
(PPageProduceCompilationCache
 -> PPageProduceCompilationCache -> Bool)
-> (PPageProduceCompilationCache
    -> PPageProduceCompilationCache -> Bool)
-> Eq PPageProduceCompilationCache
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageProduceCompilationCache
-> PPageProduceCompilationCache -> Bool
$c/= :: PPageProduceCompilationCache
-> PPageProduceCompilationCache -> Bool
== :: PPageProduceCompilationCache
-> PPageProduceCompilationCache -> Bool
$c== :: PPageProduceCompilationCache
-> PPageProduceCompilationCache -> Bool
Eq, Int -> PPageProduceCompilationCache -> ShowS
[PPageProduceCompilationCache] -> ShowS
PPageProduceCompilationCache -> String
(Int -> PPageProduceCompilationCache -> ShowS)
-> (PPageProduceCompilationCache -> String)
-> ([PPageProduceCompilationCache] -> ShowS)
-> Show PPageProduceCompilationCache
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageProduceCompilationCache] -> ShowS
$cshowList :: [PPageProduceCompilationCache] -> ShowS
show :: PPageProduceCompilationCache -> String
$cshow :: PPageProduceCompilationCache -> String
showsPrec :: Int -> PPageProduceCompilationCache -> ShowS
$cshowsPrec :: Int -> PPageProduceCompilationCache -> ShowS
Show)
pPageProduceCompilationCache
  :: [PageCompilationCacheParams]
  -> PPageProduceCompilationCache
pPageProduceCompilationCache :: [PageCompilationCacheParams] -> PPageProduceCompilationCache
pPageProduceCompilationCache
  [PageCompilationCacheParams]
arg_pPageProduceCompilationCacheScripts
  = [PageCompilationCacheParams] -> PPageProduceCompilationCache
PPageProduceCompilationCache
    [PageCompilationCacheParams]
arg_pPageProduceCompilationCacheScripts
instance ToJSON PPageProduceCompilationCache where
  toJSON :: PPageProduceCompilationCache -> Value
toJSON PPageProduceCompilationCache
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"scripts" Text -> [PageCompilationCacheParams] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([PageCompilationCacheParams] -> Pair)
-> Maybe [PageCompilationCacheParams] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> [PageCompilationCacheParams] -> Maybe [PageCompilationCacheParams]
forall a. a -> Maybe a
Just (PPageProduceCompilationCache -> [PageCompilationCacheParams]
pPageProduceCompilationCacheScripts PPageProduceCompilationCache
p)
    ]
instance Command PPageProduceCompilationCache where
  type CommandResponse PPageProduceCompilationCache = ()
  commandName :: Proxy PPageProduceCompilationCache -> String
commandName Proxy PPageProduceCompilationCache
_ = String
"Page.produceCompilationCache"
  fromJSON :: Proxy PPageProduceCompilationCache
-> Value -> Result (CommandResponse PPageProduceCompilationCache)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PPageProduceCompilationCache -> Result ())
-> Proxy PPageProduceCompilationCache
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PPageProduceCompilationCache -> ())
-> Proxy PPageProduceCompilationCache
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PPageProduceCompilationCache -> ()
forall a b. a -> b -> a
const ()

-- | Seeds compilation cache for given url. Compilation cache does not survive
--   cross-process navigation.

-- | Parameters of the 'Page.addCompilationCache' command.
data PPageAddCompilationCache = PPageAddCompilationCache
  {
    PPageAddCompilationCache -> Text
pPageAddCompilationCacheUrl :: T.Text,
    -- | Base64-encoded data (Encoded as a base64 string when passed over JSON)
    PPageAddCompilationCache -> Text
pPageAddCompilationCacheData :: T.Text
  }
  deriving (PPageAddCompilationCache -> PPageAddCompilationCache -> Bool
(PPageAddCompilationCache -> PPageAddCompilationCache -> Bool)
-> (PPageAddCompilationCache -> PPageAddCompilationCache -> Bool)
-> Eq PPageAddCompilationCache
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageAddCompilationCache -> PPageAddCompilationCache -> Bool
$c/= :: PPageAddCompilationCache -> PPageAddCompilationCache -> Bool
== :: PPageAddCompilationCache -> PPageAddCompilationCache -> Bool
$c== :: PPageAddCompilationCache -> PPageAddCompilationCache -> Bool
Eq, Int -> PPageAddCompilationCache -> ShowS
[PPageAddCompilationCache] -> ShowS
PPageAddCompilationCache -> String
(Int -> PPageAddCompilationCache -> ShowS)
-> (PPageAddCompilationCache -> String)
-> ([PPageAddCompilationCache] -> ShowS)
-> Show PPageAddCompilationCache
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageAddCompilationCache] -> ShowS
$cshowList :: [PPageAddCompilationCache] -> ShowS
show :: PPageAddCompilationCache -> String
$cshow :: PPageAddCompilationCache -> String
showsPrec :: Int -> PPageAddCompilationCache -> ShowS
$cshowsPrec :: Int -> PPageAddCompilationCache -> ShowS
Show)
pPageAddCompilationCache
  :: T.Text
  {-
  -- | Base64-encoded data (Encoded as a base64 string when passed over JSON)
  -}
  -> T.Text
  -> PPageAddCompilationCache
pPageAddCompilationCache :: Text -> Text -> PPageAddCompilationCache
pPageAddCompilationCache
  Text
arg_pPageAddCompilationCacheUrl
  Text
arg_pPageAddCompilationCacheData
  = Text -> Text -> PPageAddCompilationCache
PPageAddCompilationCache
    Text
arg_pPageAddCompilationCacheUrl
    Text
arg_pPageAddCompilationCacheData
instance ToJSON PPageAddCompilationCache where
  toJSON :: PPageAddCompilationCache -> Value
toJSON PPageAddCompilationCache
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"url" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PPageAddCompilationCache -> Text
pPageAddCompilationCacheUrl PPageAddCompilationCache
p),
    (Text
"data" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PPageAddCompilationCache -> Text
pPageAddCompilationCacheData PPageAddCompilationCache
p)
    ]
instance Command PPageAddCompilationCache where
  type CommandResponse PPageAddCompilationCache = ()
  commandName :: Proxy PPageAddCompilationCache -> String
commandName Proxy PPageAddCompilationCache
_ = String
"Page.addCompilationCache"
  fromJSON :: Proxy PPageAddCompilationCache
-> Value -> Result (CommandResponse PPageAddCompilationCache)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PPageAddCompilationCache -> Result ())
-> Proxy PPageAddCompilationCache
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PPageAddCompilationCache -> ())
-> Proxy PPageAddCompilationCache
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PPageAddCompilationCache -> ()
forall a b. a -> b -> a
const ()

-- | Clears seeded compilation cache.

-- | Parameters of the 'Page.clearCompilationCache' command.
data PPageClearCompilationCache = PPageClearCompilationCache
  deriving (PPageClearCompilationCache -> PPageClearCompilationCache -> Bool
(PPageClearCompilationCache -> PPageClearCompilationCache -> Bool)
-> (PPageClearCompilationCache
    -> PPageClearCompilationCache -> Bool)
-> Eq PPageClearCompilationCache
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageClearCompilationCache -> PPageClearCompilationCache -> Bool
$c/= :: PPageClearCompilationCache -> PPageClearCompilationCache -> Bool
== :: PPageClearCompilationCache -> PPageClearCompilationCache -> Bool
$c== :: PPageClearCompilationCache -> PPageClearCompilationCache -> Bool
Eq, Int -> PPageClearCompilationCache -> ShowS
[PPageClearCompilationCache] -> ShowS
PPageClearCompilationCache -> String
(Int -> PPageClearCompilationCache -> ShowS)
-> (PPageClearCompilationCache -> String)
-> ([PPageClearCompilationCache] -> ShowS)
-> Show PPageClearCompilationCache
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageClearCompilationCache] -> ShowS
$cshowList :: [PPageClearCompilationCache] -> ShowS
show :: PPageClearCompilationCache -> String
$cshow :: PPageClearCompilationCache -> String
showsPrec :: Int -> PPageClearCompilationCache -> ShowS
$cshowsPrec :: Int -> PPageClearCompilationCache -> ShowS
Show)
pPageClearCompilationCache
  :: PPageClearCompilationCache
pPageClearCompilationCache :: PPageClearCompilationCache
pPageClearCompilationCache
  = PPageClearCompilationCache
PPageClearCompilationCache
instance ToJSON PPageClearCompilationCache where
  toJSON :: PPageClearCompilationCache -> Value
toJSON PPageClearCompilationCache
_ = Value
A.Null
instance Command PPageClearCompilationCache where
  type CommandResponse PPageClearCompilationCache = ()
  commandName :: Proxy PPageClearCompilationCache -> String
commandName Proxy PPageClearCompilationCache
_ = String
"Page.clearCompilationCache"
  fromJSON :: Proxy PPageClearCompilationCache
-> Value -> Result (CommandResponse PPageClearCompilationCache)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PPageClearCompilationCache -> Result ())
-> Proxy PPageClearCompilationCache
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PPageClearCompilationCache -> ())
-> Proxy PPageClearCompilationCache
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PPageClearCompilationCache -> ()
forall a b. a -> b -> a
const ()

-- | Sets the Secure Payment Confirmation transaction mode.
--   https://w3c.github.io/secure-payment-confirmation/#sctn-automation-set-spc-transaction-mode

-- | Parameters of the 'Page.setSPCTransactionMode' command.
data PPageSetSPCTransactionModeMode = PPageSetSPCTransactionModeModeNone | PPageSetSPCTransactionModeModeAutoaccept | PPageSetSPCTransactionModeModeAutoreject
  deriving (Eq PPageSetSPCTransactionModeMode
Eq PPageSetSPCTransactionModeMode
-> (PPageSetSPCTransactionModeMode
    -> PPageSetSPCTransactionModeMode -> Ordering)
-> (PPageSetSPCTransactionModeMode
    -> PPageSetSPCTransactionModeMode -> Bool)
-> (PPageSetSPCTransactionModeMode
    -> PPageSetSPCTransactionModeMode -> Bool)
-> (PPageSetSPCTransactionModeMode
    -> PPageSetSPCTransactionModeMode -> Bool)
-> (PPageSetSPCTransactionModeMode
    -> PPageSetSPCTransactionModeMode -> Bool)
-> (PPageSetSPCTransactionModeMode
    -> PPageSetSPCTransactionModeMode
    -> PPageSetSPCTransactionModeMode)
-> (PPageSetSPCTransactionModeMode
    -> PPageSetSPCTransactionModeMode
    -> PPageSetSPCTransactionModeMode)
-> Ord PPageSetSPCTransactionModeMode
PPageSetSPCTransactionModeMode
-> PPageSetSPCTransactionModeMode -> Bool
PPageSetSPCTransactionModeMode
-> PPageSetSPCTransactionModeMode -> Ordering
PPageSetSPCTransactionModeMode
-> PPageSetSPCTransactionModeMode -> PPageSetSPCTransactionModeMode
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: PPageSetSPCTransactionModeMode
-> PPageSetSPCTransactionModeMode -> PPageSetSPCTransactionModeMode
$cmin :: PPageSetSPCTransactionModeMode
-> PPageSetSPCTransactionModeMode -> PPageSetSPCTransactionModeMode
max :: PPageSetSPCTransactionModeMode
-> PPageSetSPCTransactionModeMode -> PPageSetSPCTransactionModeMode
$cmax :: PPageSetSPCTransactionModeMode
-> PPageSetSPCTransactionModeMode -> PPageSetSPCTransactionModeMode
>= :: PPageSetSPCTransactionModeMode
-> PPageSetSPCTransactionModeMode -> Bool
$c>= :: PPageSetSPCTransactionModeMode
-> PPageSetSPCTransactionModeMode -> Bool
> :: PPageSetSPCTransactionModeMode
-> PPageSetSPCTransactionModeMode -> Bool
$c> :: PPageSetSPCTransactionModeMode
-> PPageSetSPCTransactionModeMode -> Bool
<= :: PPageSetSPCTransactionModeMode
-> PPageSetSPCTransactionModeMode -> Bool
$c<= :: PPageSetSPCTransactionModeMode
-> PPageSetSPCTransactionModeMode -> Bool
< :: PPageSetSPCTransactionModeMode
-> PPageSetSPCTransactionModeMode -> Bool
$c< :: PPageSetSPCTransactionModeMode
-> PPageSetSPCTransactionModeMode -> Bool
compare :: PPageSetSPCTransactionModeMode
-> PPageSetSPCTransactionModeMode -> Ordering
$ccompare :: PPageSetSPCTransactionModeMode
-> PPageSetSPCTransactionModeMode -> Ordering
$cp1Ord :: Eq PPageSetSPCTransactionModeMode
Ord, PPageSetSPCTransactionModeMode
-> PPageSetSPCTransactionModeMode -> Bool
(PPageSetSPCTransactionModeMode
 -> PPageSetSPCTransactionModeMode -> Bool)
-> (PPageSetSPCTransactionModeMode
    -> PPageSetSPCTransactionModeMode -> Bool)
-> Eq PPageSetSPCTransactionModeMode
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageSetSPCTransactionModeMode
-> PPageSetSPCTransactionModeMode -> Bool
$c/= :: PPageSetSPCTransactionModeMode
-> PPageSetSPCTransactionModeMode -> Bool
== :: PPageSetSPCTransactionModeMode
-> PPageSetSPCTransactionModeMode -> Bool
$c== :: PPageSetSPCTransactionModeMode
-> PPageSetSPCTransactionModeMode -> Bool
Eq, Int -> PPageSetSPCTransactionModeMode -> ShowS
[PPageSetSPCTransactionModeMode] -> ShowS
PPageSetSPCTransactionModeMode -> String
(Int -> PPageSetSPCTransactionModeMode -> ShowS)
-> (PPageSetSPCTransactionModeMode -> String)
-> ([PPageSetSPCTransactionModeMode] -> ShowS)
-> Show PPageSetSPCTransactionModeMode
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageSetSPCTransactionModeMode] -> ShowS
$cshowList :: [PPageSetSPCTransactionModeMode] -> ShowS
show :: PPageSetSPCTransactionModeMode -> String
$cshow :: PPageSetSPCTransactionModeMode -> String
showsPrec :: Int -> PPageSetSPCTransactionModeMode -> ShowS
$cshowsPrec :: Int -> PPageSetSPCTransactionModeMode -> ShowS
Show, ReadPrec [PPageSetSPCTransactionModeMode]
ReadPrec PPageSetSPCTransactionModeMode
Int -> ReadS PPageSetSPCTransactionModeMode
ReadS [PPageSetSPCTransactionModeMode]
(Int -> ReadS PPageSetSPCTransactionModeMode)
-> ReadS [PPageSetSPCTransactionModeMode]
-> ReadPrec PPageSetSPCTransactionModeMode
-> ReadPrec [PPageSetSPCTransactionModeMode]
-> Read PPageSetSPCTransactionModeMode
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PPageSetSPCTransactionModeMode]
$creadListPrec :: ReadPrec [PPageSetSPCTransactionModeMode]
readPrec :: ReadPrec PPageSetSPCTransactionModeMode
$creadPrec :: ReadPrec PPageSetSPCTransactionModeMode
readList :: ReadS [PPageSetSPCTransactionModeMode]
$creadList :: ReadS [PPageSetSPCTransactionModeMode]
readsPrec :: Int -> ReadS PPageSetSPCTransactionModeMode
$creadsPrec :: Int -> ReadS PPageSetSPCTransactionModeMode
Read)
instance FromJSON PPageSetSPCTransactionModeMode where
  parseJSON :: Value -> Parser PPageSetSPCTransactionModeMode
parseJSON = String
-> (Text -> Parser PPageSetSPCTransactionModeMode)
-> Value
-> Parser PPageSetSPCTransactionModeMode
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"PPageSetSPCTransactionModeMode" ((Text -> Parser PPageSetSPCTransactionModeMode)
 -> Value -> Parser PPageSetSPCTransactionModeMode)
-> (Text -> Parser PPageSetSPCTransactionModeMode)
-> Value
-> Parser PPageSetSPCTransactionModeMode
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"none" -> PPageSetSPCTransactionModeMode
-> Parser PPageSetSPCTransactionModeMode
forall (f :: * -> *) a. Applicative f => a -> f a
pure PPageSetSPCTransactionModeMode
PPageSetSPCTransactionModeModeNone
    Text
"autoaccept" -> PPageSetSPCTransactionModeMode
-> Parser PPageSetSPCTransactionModeMode
forall (f :: * -> *) a. Applicative f => a -> f a
pure PPageSetSPCTransactionModeMode
PPageSetSPCTransactionModeModeAutoaccept
    Text
"autoreject" -> PPageSetSPCTransactionModeMode
-> Parser PPageSetSPCTransactionModeMode
forall (f :: * -> *) a. Applicative f => a -> f a
pure PPageSetSPCTransactionModeMode
PPageSetSPCTransactionModeModeAutoreject
    Text
"_" -> String -> Parser PPageSetSPCTransactionModeMode
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse PPageSetSPCTransactionModeMode"
instance ToJSON PPageSetSPCTransactionModeMode where
  toJSON :: PPageSetSPCTransactionModeMode -> Value
toJSON PPageSetSPCTransactionModeMode
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case PPageSetSPCTransactionModeMode
v of
    PPageSetSPCTransactionModeMode
PPageSetSPCTransactionModeModeNone -> Text
"none"
    PPageSetSPCTransactionModeMode
PPageSetSPCTransactionModeModeAutoaccept -> Text
"autoaccept"
    PPageSetSPCTransactionModeMode
PPageSetSPCTransactionModeModeAutoreject -> Text
"autoreject"
data PPageSetSPCTransactionMode = PPageSetSPCTransactionMode
  {
    PPageSetSPCTransactionMode -> PPageSetSPCTransactionModeMode
pPageSetSPCTransactionModeMode :: PPageSetSPCTransactionModeMode
  }
  deriving (PPageSetSPCTransactionMode -> PPageSetSPCTransactionMode -> Bool
(PPageSetSPCTransactionMode -> PPageSetSPCTransactionMode -> Bool)
-> (PPageSetSPCTransactionMode
    -> PPageSetSPCTransactionMode -> Bool)
-> Eq PPageSetSPCTransactionMode
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageSetSPCTransactionMode -> PPageSetSPCTransactionMode -> Bool
$c/= :: PPageSetSPCTransactionMode -> PPageSetSPCTransactionMode -> Bool
== :: PPageSetSPCTransactionMode -> PPageSetSPCTransactionMode -> Bool
$c== :: PPageSetSPCTransactionMode -> PPageSetSPCTransactionMode -> Bool
Eq, Int -> PPageSetSPCTransactionMode -> ShowS
[PPageSetSPCTransactionMode] -> ShowS
PPageSetSPCTransactionMode -> String
(Int -> PPageSetSPCTransactionMode -> ShowS)
-> (PPageSetSPCTransactionMode -> String)
-> ([PPageSetSPCTransactionMode] -> ShowS)
-> Show PPageSetSPCTransactionMode
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageSetSPCTransactionMode] -> ShowS
$cshowList :: [PPageSetSPCTransactionMode] -> ShowS
show :: PPageSetSPCTransactionMode -> String
$cshow :: PPageSetSPCTransactionMode -> String
showsPrec :: Int -> PPageSetSPCTransactionMode -> ShowS
$cshowsPrec :: Int -> PPageSetSPCTransactionMode -> ShowS
Show)
pPageSetSPCTransactionMode
  :: PPageSetSPCTransactionModeMode
  -> PPageSetSPCTransactionMode
pPageSetSPCTransactionMode :: PPageSetSPCTransactionModeMode -> PPageSetSPCTransactionMode
pPageSetSPCTransactionMode
  PPageSetSPCTransactionModeMode
arg_pPageSetSPCTransactionModeMode
  = PPageSetSPCTransactionModeMode -> PPageSetSPCTransactionMode
PPageSetSPCTransactionMode
    PPageSetSPCTransactionModeMode
arg_pPageSetSPCTransactionModeMode
instance ToJSON PPageSetSPCTransactionMode where
  toJSON :: PPageSetSPCTransactionMode -> Value
toJSON PPageSetSPCTransactionMode
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"mode" Text -> PPageSetSPCTransactionModeMode -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (PPageSetSPCTransactionModeMode -> Pair)
-> Maybe PPageSetSPCTransactionModeMode -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> PPageSetSPCTransactionModeMode
-> Maybe PPageSetSPCTransactionModeMode
forall a. a -> Maybe a
Just (PPageSetSPCTransactionMode -> PPageSetSPCTransactionModeMode
pPageSetSPCTransactionModeMode PPageSetSPCTransactionMode
p)
    ]
instance Command PPageSetSPCTransactionMode where
  type CommandResponse PPageSetSPCTransactionMode = ()
  commandName :: Proxy PPageSetSPCTransactionMode -> String
commandName Proxy PPageSetSPCTransactionMode
_ = String
"Page.setSPCTransactionMode"
  fromJSON :: Proxy PPageSetSPCTransactionMode
-> Value -> Result (CommandResponse PPageSetSPCTransactionMode)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PPageSetSPCTransactionMode -> Result ())
-> Proxy PPageSetSPCTransactionMode
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PPageSetSPCTransactionMode -> ())
-> Proxy PPageSetSPCTransactionMode
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PPageSetSPCTransactionMode -> ()
forall a b. a -> b -> a
const ()

-- | Generates a report for testing.

-- | Parameters of the 'Page.generateTestReport' command.
data PPageGenerateTestReport = PPageGenerateTestReport
  {
    -- | Message to be displayed in the report.
    PPageGenerateTestReport -> Text
pPageGenerateTestReportMessage :: T.Text,
    -- | Specifies the endpoint group to deliver the report to.
    PPageGenerateTestReport -> Maybe Text
pPageGenerateTestReportGroup :: Maybe T.Text
  }
  deriving (PPageGenerateTestReport -> PPageGenerateTestReport -> Bool
(PPageGenerateTestReport -> PPageGenerateTestReport -> Bool)
-> (PPageGenerateTestReport -> PPageGenerateTestReport -> Bool)
-> Eq PPageGenerateTestReport
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageGenerateTestReport -> PPageGenerateTestReport -> Bool
$c/= :: PPageGenerateTestReport -> PPageGenerateTestReport -> Bool
== :: PPageGenerateTestReport -> PPageGenerateTestReport -> Bool
$c== :: PPageGenerateTestReport -> PPageGenerateTestReport -> Bool
Eq, Int -> PPageGenerateTestReport -> ShowS
[PPageGenerateTestReport] -> ShowS
PPageGenerateTestReport -> String
(Int -> PPageGenerateTestReport -> ShowS)
-> (PPageGenerateTestReport -> String)
-> ([PPageGenerateTestReport] -> ShowS)
-> Show PPageGenerateTestReport
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageGenerateTestReport] -> ShowS
$cshowList :: [PPageGenerateTestReport] -> ShowS
show :: PPageGenerateTestReport -> String
$cshow :: PPageGenerateTestReport -> String
showsPrec :: Int -> PPageGenerateTestReport -> ShowS
$cshowsPrec :: Int -> PPageGenerateTestReport -> ShowS
Show)
pPageGenerateTestReport
  {-
  -- | Message to be displayed in the report.
  -}
  :: T.Text
  -> PPageGenerateTestReport
pPageGenerateTestReport :: Text -> PPageGenerateTestReport
pPageGenerateTestReport
  Text
arg_pPageGenerateTestReportMessage
  = Text -> Maybe Text -> PPageGenerateTestReport
PPageGenerateTestReport
    Text
arg_pPageGenerateTestReportMessage
    Maybe Text
forall a. Maybe a
Nothing
instance ToJSON PPageGenerateTestReport where
  toJSON :: PPageGenerateTestReport -> Value
toJSON PPageGenerateTestReport
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"message" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (PPageGenerateTestReport -> Text
pPageGenerateTestReportMessage PPageGenerateTestReport
p),
    (Text
"group" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (PPageGenerateTestReport -> Maybe Text
pPageGenerateTestReportGroup PPageGenerateTestReport
p)
    ]
instance Command PPageGenerateTestReport where
  type CommandResponse PPageGenerateTestReport = ()
  commandName :: Proxy PPageGenerateTestReport -> String
commandName Proxy PPageGenerateTestReport
_ = String
"Page.generateTestReport"
  fromJSON :: Proxy PPageGenerateTestReport
-> Value -> Result (CommandResponse PPageGenerateTestReport)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PPageGenerateTestReport -> Result ())
-> Proxy PPageGenerateTestReport
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PPageGenerateTestReport -> ())
-> Proxy PPageGenerateTestReport
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PPageGenerateTestReport -> ()
forall a b. a -> b -> a
const ()

-- | Pauses page execution. Can be resumed using generic Runtime.runIfWaitingForDebugger.

-- | Parameters of the 'Page.waitForDebugger' command.
data PPageWaitForDebugger = PPageWaitForDebugger
  deriving (PPageWaitForDebugger -> PPageWaitForDebugger -> Bool
(PPageWaitForDebugger -> PPageWaitForDebugger -> Bool)
-> (PPageWaitForDebugger -> PPageWaitForDebugger -> Bool)
-> Eq PPageWaitForDebugger
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageWaitForDebugger -> PPageWaitForDebugger -> Bool
$c/= :: PPageWaitForDebugger -> PPageWaitForDebugger -> Bool
== :: PPageWaitForDebugger -> PPageWaitForDebugger -> Bool
$c== :: PPageWaitForDebugger -> PPageWaitForDebugger -> Bool
Eq, Int -> PPageWaitForDebugger -> ShowS
[PPageWaitForDebugger] -> ShowS
PPageWaitForDebugger -> String
(Int -> PPageWaitForDebugger -> ShowS)
-> (PPageWaitForDebugger -> String)
-> ([PPageWaitForDebugger] -> ShowS)
-> Show PPageWaitForDebugger
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageWaitForDebugger] -> ShowS
$cshowList :: [PPageWaitForDebugger] -> ShowS
show :: PPageWaitForDebugger -> String
$cshow :: PPageWaitForDebugger -> String
showsPrec :: Int -> PPageWaitForDebugger -> ShowS
$cshowsPrec :: Int -> PPageWaitForDebugger -> ShowS
Show)
pPageWaitForDebugger
  :: PPageWaitForDebugger
pPageWaitForDebugger :: PPageWaitForDebugger
pPageWaitForDebugger
  = PPageWaitForDebugger
PPageWaitForDebugger
instance ToJSON PPageWaitForDebugger where
  toJSON :: PPageWaitForDebugger -> Value
toJSON PPageWaitForDebugger
_ = Value
A.Null
instance Command PPageWaitForDebugger where
  type CommandResponse PPageWaitForDebugger = ()
  commandName :: Proxy PPageWaitForDebugger -> String
commandName Proxy PPageWaitForDebugger
_ = String
"Page.waitForDebugger"
  fromJSON :: Proxy PPageWaitForDebugger
-> Value -> Result (CommandResponse PPageWaitForDebugger)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PPageWaitForDebugger -> Result ())
-> Proxy PPageWaitForDebugger
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PPageWaitForDebugger -> ())
-> Proxy PPageWaitForDebugger
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PPageWaitForDebugger -> ()
forall a b. a -> b -> a
const ()

-- | Intercept file chooser requests and transfer control to protocol clients.
--   When file chooser interception is enabled, native file chooser dialog is not shown.
--   Instead, a protocol event `Page.fileChooserOpened` is emitted.

-- | Parameters of the 'Page.setInterceptFileChooserDialog' command.
data PPageSetInterceptFileChooserDialog = PPageSetInterceptFileChooserDialog
  {
    PPageSetInterceptFileChooserDialog -> Bool
pPageSetInterceptFileChooserDialogEnabled :: Bool
  }
  deriving (PPageSetInterceptFileChooserDialog
-> PPageSetInterceptFileChooserDialog -> Bool
(PPageSetInterceptFileChooserDialog
 -> PPageSetInterceptFileChooserDialog -> Bool)
-> (PPageSetInterceptFileChooserDialog
    -> PPageSetInterceptFileChooserDialog -> Bool)
-> Eq PPageSetInterceptFileChooserDialog
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PPageSetInterceptFileChooserDialog
-> PPageSetInterceptFileChooserDialog -> Bool
$c/= :: PPageSetInterceptFileChooserDialog
-> PPageSetInterceptFileChooserDialog -> Bool
== :: PPageSetInterceptFileChooserDialog
-> PPageSetInterceptFileChooserDialog -> Bool
$c== :: PPageSetInterceptFileChooserDialog
-> PPageSetInterceptFileChooserDialog -> Bool
Eq, Int -> PPageSetInterceptFileChooserDialog -> ShowS
[PPageSetInterceptFileChooserDialog] -> ShowS
PPageSetInterceptFileChooserDialog -> String
(Int -> PPageSetInterceptFileChooserDialog -> ShowS)
-> (PPageSetInterceptFileChooserDialog -> String)
-> ([PPageSetInterceptFileChooserDialog] -> ShowS)
-> Show PPageSetInterceptFileChooserDialog
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PPageSetInterceptFileChooserDialog] -> ShowS
$cshowList :: [PPageSetInterceptFileChooserDialog] -> ShowS
show :: PPageSetInterceptFileChooserDialog -> String
$cshow :: PPageSetInterceptFileChooserDialog -> String
showsPrec :: Int -> PPageSetInterceptFileChooserDialog -> ShowS
$cshowsPrec :: Int -> PPageSetInterceptFileChooserDialog -> ShowS
Show)
pPageSetInterceptFileChooserDialog
  :: Bool
  -> PPageSetInterceptFileChooserDialog
pPageSetInterceptFileChooserDialog :: Bool -> PPageSetInterceptFileChooserDialog
pPageSetInterceptFileChooserDialog
  Bool
arg_pPageSetInterceptFileChooserDialogEnabled
  = Bool -> PPageSetInterceptFileChooserDialog
PPageSetInterceptFileChooserDialog
    Bool
arg_pPageSetInterceptFileChooserDialogEnabled
instance ToJSON PPageSetInterceptFileChooserDialog where
  toJSON :: PPageSetInterceptFileChooserDialog -> Value
toJSON PPageSetInterceptFileChooserDialog
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"enabled" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (PPageSetInterceptFileChooserDialog -> Bool
pPageSetInterceptFileChooserDialogEnabled PPageSetInterceptFileChooserDialog
p)
    ]
instance Command PPageSetInterceptFileChooserDialog where
  type CommandResponse PPageSetInterceptFileChooserDialog = ()
  commandName :: Proxy PPageSetInterceptFileChooserDialog -> String
commandName Proxy PPageSetInterceptFileChooserDialog
_ = String
"Page.setInterceptFileChooserDialog"
  fromJSON :: Proxy PPageSetInterceptFileChooserDialog
-> Value
-> Result (CommandResponse PPageSetInterceptFileChooserDialog)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PPageSetInterceptFileChooserDialog -> Result ())
-> Proxy PPageSetInterceptFileChooserDialog
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PPageSetInterceptFileChooserDialog -> ())
-> Proxy PPageSetInterceptFileChooserDialog
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PPageSetInterceptFileChooserDialog -> ()
forall a b. a -> b -> a
const ()

-- | Type 'Security.CertificateId'.
--   An internal certificate ID value.
type SecurityCertificateId = Int

-- | Type 'Security.MixedContentType'.
--   A description of mixed content (HTTP resources on HTTPS pages), as defined by
--   https://www.w3.org/TR/mixed-content/#categories
data SecurityMixedContentType = SecurityMixedContentTypeBlockable | SecurityMixedContentTypeOptionallyBlockable | SecurityMixedContentTypeNone
  deriving (Eq SecurityMixedContentType
Eq SecurityMixedContentType
-> (SecurityMixedContentType
    -> SecurityMixedContentType -> Ordering)
-> (SecurityMixedContentType -> SecurityMixedContentType -> Bool)
-> (SecurityMixedContentType -> SecurityMixedContentType -> Bool)
-> (SecurityMixedContentType -> SecurityMixedContentType -> Bool)
-> (SecurityMixedContentType -> SecurityMixedContentType -> Bool)
-> (SecurityMixedContentType
    -> SecurityMixedContentType -> SecurityMixedContentType)
-> (SecurityMixedContentType
    -> SecurityMixedContentType -> SecurityMixedContentType)
-> Ord SecurityMixedContentType
SecurityMixedContentType -> SecurityMixedContentType -> Bool
SecurityMixedContentType -> SecurityMixedContentType -> Ordering
SecurityMixedContentType
-> SecurityMixedContentType -> SecurityMixedContentType
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: SecurityMixedContentType
-> SecurityMixedContentType -> SecurityMixedContentType
$cmin :: SecurityMixedContentType
-> SecurityMixedContentType -> SecurityMixedContentType
max :: SecurityMixedContentType
-> SecurityMixedContentType -> SecurityMixedContentType
$cmax :: SecurityMixedContentType
-> SecurityMixedContentType -> SecurityMixedContentType
>= :: SecurityMixedContentType -> SecurityMixedContentType -> Bool
$c>= :: SecurityMixedContentType -> SecurityMixedContentType -> Bool
> :: SecurityMixedContentType -> SecurityMixedContentType -> Bool
$c> :: SecurityMixedContentType -> SecurityMixedContentType -> Bool
<= :: SecurityMixedContentType -> SecurityMixedContentType -> Bool
$c<= :: SecurityMixedContentType -> SecurityMixedContentType -> Bool
< :: SecurityMixedContentType -> SecurityMixedContentType -> Bool
$c< :: SecurityMixedContentType -> SecurityMixedContentType -> Bool
compare :: SecurityMixedContentType -> SecurityMixedContentType -> Ordering
$ccompare :: SecurityMixedContentType -> SecurityMixedContentType -> Ordering
$cp1Ord :: Eq SecurityMixedContentType
Ord, SecurityMixedContentType -> SecurityMixedContentType -> Bool
(SecurityMixedContentType -> SecurityMixedContentType -> Bool)
-> (SecurityMixedContentType -> SecurityMixedContentType -> Bool)
-> Eq SecurityMixedContentType
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: SecurityMixedContentType -> SecurityMixedContentType -> Bool
$c/= :: SecurityMixedContentType -> SecurityMixedContentType -> Bool
== :: SecurityMixedContentType -> SecurityMixedContentType -> Bool
$c== :: SecurityMixedContentType -> SecurityMixedContentType -> Bool
Eq, Int -> SecurityMixedContentType -> ShowS
[SecurityMixedContentType] -> ShowS
SecurityMixedContentType -> String
(Int -> SecurityMixedContentType -> ShowS)
-> (SecurityMixedContentType -> String)
-> ([SecurityMixedContentType] -> ShowS)
-> Show SecurityMixedContentType
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [SecurityMixedContentType] -> ShowS
$cshowList :: [SecurityMixedContentType] -> ShowS
show :: SecurityMixedContentType -> String
$cshow :: SecurityMixedContentType -> String
showsPrec :: Int -> SecurityMixedContentType -> ShowS
$cshowsPrec :: Int -> SecurityMixedContentType -> ShowS
Show, ReadPrec [SecurityMixedContentType]
ReadPrec SecurityMixedContentType
Int -> ReadS SecurityMixedContentType
ReadS [SecurityMixedContentType]
(Int -> ReadS SecurityMixedContentType)
-> ReadS [SecurityMixedContentType]
-> ReadPrec SecurityMixedContentType
-> ReadPrec [SecurityMixedContentType]
-> Read SecurityMixedContentType
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [SecurityMixedContentType]
$creadListPrec :: ReadPrec [SecurityMixedContentType]
readPrec :: ReadPrec SecurityMixedContentType
$creadPrec :: ReadPrec SecurityMixedContentType
readList :: ReadS [SecurityMixedContentType]
$creadList :: ReadS [SecurityMixedContentType]
readsPrec :: Int -> ReadS SecurityMixedContentType
$creadsPrec :: Int -> ReadS SecurityMixedContentType
Read)
instance FromJSON SecurityMixedContentType where
  parseJSON :: Value -> Parser SecurityMixedContentType
parseJSON = String
-> (Text -> Parser SecurityMixedContentType)
-> Value
-> Parser SecurityMixedContentType
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"SecurityMixedContentType" ((Text -> Parser SecurityMixedContentType)
 -> Value -> Parser SecurityMixedContentType)
-> (Text -> Parser SecurityMixedContentType)
-> Value
-> Parser SecurityMixedContentType
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"blockable" -> SecurityMixedContentType -> Parser SecurityMixedContentType
forall (f :: * -> *) a. Applicative f => a -> f a
pure SecurityMixedContentType
SecurityMixedContentTypeBlockable
    Text
"optionally-blockable" -> SecurityMixedContentType -> Parser SecurityMixedContentType
forall (f :: * -> *) a. Applicative f => a -> f a
pure SecurityMixedContentType
SecurityMixedContentTypeOptionallyBlockable
    Text
"none" -> SecurityMixedContentType -> Parser SecurityMixedContentType
forall (f :: * -> *) a. Applicative f => a -> f a
pure SecurityMixedContentType
SecurityMixedContentTypeNone
    Text
"_" -> String -> Parser SecurityMixedContentType
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse SecurityMixedContentType"
instance ToJSON SecurityMixedContentType where
  toJSON :: SecurityMixedContentType -> Value
toJSON SecurityMixedContentType
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case SecurityMixedContentType
v of
    SecurityMixedContentType
SecurityMixedContentTypeBlockable -> Text
"blockable"
    SecurityMixedContentType
SecurityMixedContentTypeOptionallyBlockable -> Text
"optionally-blockable"
    SecurityMixedContentType
SecurityMixedContentTypeNone -> Text
"none"

-- | Type 'Security.SecurityState'.
--   The security level of a page or resource.
data SecuritySecurityState = SecuritySecurityStateUnknown | SecuritySecurityStateNeutral | SecuritySecurityStateInsecure | SecuritySecurityStateSecure | SecuritySecurityStateInfo | SecuritySecurityStateInsecureBroken
  deriving (Eq SecuritySecurityState
Eq SecuritySecurityState
-> (SecuritySecurityState -> SecuritySecurityState -> Ordering)
-> (SecuritySecurityState -> SecuritySecurityState -> Bool)
-> (SecuritySecurityState -> SecuritySecurityState -> Bool)
-> (SecuritySecurityState -> SecuritySecurityState -> Bool)
-> (SecuritySecurityState -> SecuritySecurityState -> Bool)
-> (SecuritySecurityState
    -> SecuritySecurityState -> SecuritySecurityState)
-> (SecuritySecurityState
    -> SecuritySecurityState -> SecuritySecurityState)
-> Ord SecuritySecurityState
SecuritySecurityState -> SecuritySecurityState -> Bool
SecuritySecurityState -> SecuritySecurityState -> Ordering
SecuritySecurityState
-> SecuritySecurityState -> SecuritySecurityState
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: SecuritySecurityState
-> SecuritySecurityState -> SecuritySecurityState
$cmin :: SecuritySecurityState
-> SecuritySecurityState -> SecuritySecurityState
max :: SecuritySecurityState
-> SecuritySecurityState -> SecuritySecurityState
$cmax :: SecuritySecurityState
-> SecuritySecurityState -> SecuritySecurityState
>= :: SecuritySecurityState -> SecuritySecurityState -> Bool
$c>= :: SecuritySecurityState -> SecuritySecurityState -> Bool
> :: SecuritySecurityState -> SecuritySecurityState -> Bool
$c> :: SecuritySecurityState -> SecuritySecurityState -> Bool
<= :: SecuritySecurityState -> SecuritySecurityState -> Bool
$c<= :: SecuritySecurityState -> SecuritySecurityState -> Bool
< :: SecuritySecurityState -> SecuritySecurityState -> Bool
$c< :: SecuritySecurityState -> SecuritySecurityState -> Bool
compare :: SecuritySecurityState -> SecuritySecurityState -> Ordering
$ccompare :: SecuritySecurityState -> SecuritySecurityState -> Ordering
$cp1Ord :: Eq SecuritySecurityState
Ord, SecuritySecurityState -> SecuritySecurityState -> Bool
(SecuritySecurityState -> SecuritySecurityState -> Bool)
-> (SecuritySecurityState -> SecuritySecurityState -> Bool)
-> Eq SecuritySecurityState
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: SecuritySecurityState -> SecuritySecurityState -> Bool
$c/= :: SecuritySecurityState -> SecuritySecurityState -> Bool
== :: SecuritySecurityState -> SecuritySecurityState -> Bool
$c== :: SecuritySecurityState -> SecuritySecurityState -> Bool
Eq, Int -> SecuritySecurityState -> ShowS
[SecuritySecurityState] -> ShowS
SecuritySecurityState -> String
(Int -> SecuritySecurityState -> ShowS)
-> (SecuritySecurityState -> String)
-> ([SecuritySecurityState] -> ShowS)
-> Show SecuritySecurityState
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [SecuritySecurityState] -> ShowS
$cshowList :: [SecuritySecurityState] -> ShowS
show :: SecuritySecurityState -> String
$cshow :: SecuritySecurityState -> String
showsPrec :: Int -> SecuritySecurityState -> ShowS
$cshowsPrec :: Int -> SecuritySecurityState -> ShowS
Show, ReadPrec [SecuritySecurityState]
ReadPrec SecuritySecurityState
Int -> ReadS SecuritySecurityState
ReadS [SecuritySecurityState]
(Int -> ReadS SecuritySecurityState)
-> ReadS [SecuritySecurityState]
-> ReadPrec SecuritySecurityState
-> ReadPrec [SecuritySecurityState]
-> Read SecuritySecurityState
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [SecuritySecurityState]
$creadListPrec :: ReadPrec [SecuritySecurityState]
readPrec :: ReadPrec SecuritySecurityState
$creadPrec :: ReadPrec SecuritySecurityState
readList :: ReadS [SecuritySecurityState]
$creadList :: ReadS [SecuritySecurityState]
readsPrec :: Int -> ReadS SecuritySecurityState
$creadsPrec :: Int -> ReadS SecuritySecurityState
Read)
instance FromJSON SecuritySecurityState where
  parseJSON :: Value -> Parser SecuritySecurityState
parseJSON = String
-> (Text -> Parser SecuritySecurityState)
-> Value
-> Parser SecuritySecurityState
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"SecuritySecurityState" ((Text -> Parser SecuritySecurityState)
 -> Value -> Parser SecuritySecurityState)
-> (Text -> Parser SecuritySecurityState)
-> Value
-> Parser SecuritySecurityState
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"unknown" -> SecuritySecurityState -> Parser SecuritySecurityState
forall (f :: * -> *) a. Applicative f => a -> f a
pure SecuritySecurityState
SecuritySecurityStateUnknown
    Text
"neutral" -> SecuritySecurityState -> Parser SecuritySecurityState
forall (f :: * -> *) a. Applicative f => a -> f a
pure SecuritySecurityState
SecuritySecurityStateNeutral
    Text
"insecure" -> SecuritySecurityState -> Parser SecuritySecurityState
forall (f :: * -> *) a. Applicative f => a -> f a
pure SecuritySecurityState
SecuritySecurityStateInsecure
    Text
"secure" -> SecuritySecurityState -> Parser SecuritySecurityState
forall (f :: * -> *) a. Applicative f => a -> f a
pure SecuritySecurityState
SecuritySecurityStateSecure
    Text
"info" -> SecuritySecurityState -> Parser SecuritySecurityState
forall (f :: * -> *) a. Applicative f => a -> f a
pure SecuritySecurityState
SecuritySecurityStateInfo
    Text
"insecure-broken" -> SecuritySecurityState -> Parser SecuritySecurityState
forall (f :: * -> *) a. Applicative f => a -> f a
pure SecuritySecurityState
SecuritySecurityStateInsecureBroken
    Text
"_" -> String -> Parser SecuritySecurityState
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse SecuritySecurityState"
instance ToJSON SecuritySecurityState where
  toJSON :: SecuritySecurityState -> Value
toJSON SecuritySecurityState
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case SecuritySecurityState
v of
    SecuritySecurityState
SecuritySecurityStateUnknown -> Text
"unknown"
    SecuritySecurityState
SecuritySecurityStateNeutral -> Text
"neutral"
    SecuritySecurityState
SecuritySecurityStateInsecure -> Text
"insecure"
    SecuritySecurityState
SecuritySecurityStateSecure -> Text
"secure"
    SecuritySecurityState
SecuritySecurityStateInfo -> Text
"info"
    SecuritySecurityState
SecuritySecurityStateInsecureBroken -> Text
"insecure-broken"

-- | Type 'Security.CertificateSecurityState'.
--   Details about the security state of the page certificate.
data SecurityCertificateSecurityState = SecurityCertificateSecurityState
  {
    -- | Protocol name (e.g. "TLS 1.2" or "QUIC").
    SecurityCertificateSecurityState -> Text
securityCertificateSecurityStateProtocol :: T.Text,
    -- | Key Exchange used by the connection, or the empty string if not applicable.
    SecurityCertificateSecurityState -> Text
securityCertificateSecurityStateKeyExchange :: T.Text,
    -- | (EC)DH group used by the connection, if applicable.
    SecurityCertificateSecurityState -> Maybe Text
securityCertificateSecurityStateKeyExchangeGroup :: Maybe T.Text,
    -- | Cipher name.
    SecurityCertificateSecurityState -> Text
securityCertificateSecurityStateCipher :: T.Text,
    -- | TLS MAC. Note that AEAD ciphers do not have separate MACs.
    SecurityCertificateSecurityState -> Maybe Text
securityCertificateSecurityStateMac :: Maybe T.Text,
    -- | Page certificate.
    SecurityCertificateSecurityState -> [Text]
securityCertificateSecurityStateCertificate :: [T.Text],
    -- | Certificate subject name.
    SecurityCertificateSecurityState -> Text
securityCertificateSecurityStateSubjectName :: T.Text,
    -- | Name of the issuing CA.
    SecurityCertificateSecurityState -> Text
securityCertificateSecurityStateIssuer :: T.Text,
    -- | Certificate valid from date.
    SecurityCertificateSecurityState -> Double
securityCertificateSecurityStateValidFrom :: NetworkTimeSinceEpoch,
    -- | Certificate valid to (expiration) date
    SecurityCertificateSecurityState -> Double
securityCertificateSecurityStateValidTo :: NetworkTimeSinceEpoch,
    -- | The highest priority network error code, if the certificate has an error.
    SecurityCertificateSecurityState -> Maybe Text
securityCertificateSecurityStateCertificateNetworkError :: Maybe T.Text,
    -- | True if the certificate uses a weak signature aglorithm.
    SecurityCertificateSecurityState -> Bool
securityCertificateSecurityStateCertificateHasWeakSignature :: Bool,
    -- | True if the certificate has a SHA1 signature in the chain.
    SecurityCertificateSecurityState -> Bool
securityCertificateSecurityStateCertificateHasSha1Signature :: Bool,
    -- | True if modern SSL
    SecurityCertificateSecurityState -> Bool
securityCertificateSecurityStateModernSSL :: Bool,
    -- | True if the connection is using an obsolete SSL protocol.
    SecurityCertificateSecurityState -> Bool
securityCertificateSecurityStateObsoleteSslProtocol :: Bool,
    -- | True if the connection is using an obsolete SSL key exchange.
    SecurityCertificateSecurityState -> Bool
securityCertificateSecurityStateObsoleteSslKeyExchange :: Bool,
    -- | True if the connection is using an obsolete SSL cipher.
    SecurityCertificateSecurityState -> Bool
securityCertificateSecurityStateObsoleteSslCipher :: Bool,
    -- | True if the connection is using an obsolete SSL signature.
    SecurityCertificateSecurityState -> Bool
securityCertificateSecurityStateObsoleteSslSignature :: Bool
  }
  deriving (SecurityCertificateSecurityState
-> SecurityCertificateSecurityState -> Bool
(SecurityCertificateSecurityState
 -> SecurityCertificateSecurityState -> Bool)
-> (SecurityCertificateSecurityState
    -> SecurityCertificateSecurityState -> Bool)
-> Eq SecurityCertificateSecurityState
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: SecurityCertificateSecurityState
-> SecurityCertificateSecurityState -> Bool
$c/= :: SecurityCertificateSecurityState
-> SecurityCertificateSecurityState -> Bool
== :: SecurityCertificateSecurityState
-> SecurityCertificateSecurityState -> Bool
$c== :: SecurityCertificateSecurityState
-> SecurityCertificateSecurityState -> Bool
Eq, Int -> SecurityCertificateSecurityState -> ShowS
[SecurityCertificateSecurityState] -> ShowS
SecurityCertificateSecurityState -> String
(Int -> SecurityCertificateSecurityState -> ShowS)
-> (SecurityCertificateSecurityState -> String)
-> ([SecurityCertificateSecurityState] -> ShowS)
-> Show SecurityCertificateSecurityState
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [SecurityCertificateSecurityState] -> ShowS
$cshowList :: [SecurityCertificateSecurityState] -> ShowS
show :: SecurityCertificateSecurityState -> String
$cshow :: SecurityCertificateSecurityState -> String
showsPrec :: Int -> SecurityCertificateSecurityState -> ShowS
$cshowsPrec :: Int -> SecurityCertificateSecurityState -> ShowS
Show)
instance FromJSON SecurityCertificateSecurityState where
  parseJSON :: Value -> Parser SecurityCertificateSecurityState
parseJSON = String
-> (Object -> Parser SecurityCertificateSecurityState)
-> Value
-> Parser SecurityCertificateSecurityState
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"SecurityCertificateSecurityState" ((Object -> Parser SecurityCertificateSecurityState)
 -> Value -> Parser SecurityCertificateSecurityState)
-> (Object -> Parser SecurityCertificateSecurityState)
-> Value
-> Parser SecurityCertificateSecurityState
forall a b. (a -> b) -> a -> b
$ \Object
o -> Text
-> Text
-> Maybe Text
-> Text
-> Maybe Text
-> [Text]
-> Text
-> Text
-> Double
-> Double
-> Maybe Text
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> Bool
-> SecurityCertificateSecurityState
SecurityCertificateSecurityState
    (Text
 -> Text
 -> Maybe Text
 -> Text
 -> Maybe Text
 -> [Text]
 -> Text
 -> Text
 -> Double
 -> Double
 -> Maybe Text
 -> Bool
 -> Bool
 -> Bool
 -> Bool
 -> Bool
 -> Bool
 -> Bool
 -> SecurityCertificateSecurityState)
-> Parser Text
-> Parser
     (Text
      -> Maybe Text
      -> Text
      -> Maybe Text
      -> [Text]
      -> Text
      -> Text
      -> Double
      -> Double
      -> Maybe Text
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> SecurityCertificateSecurityState)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"protocol"
    Parser
  (Text
   -> Maybe Text
   -> Text
   -> Maybe Text
   -> [Text]
   -> Text
   -> Text
   -> Double
   -> Double
   -> Maybe Text
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> SecurityCertificateSecurityState)
-> Parser Text
-> Parser
     (Maybe Text
      -> Text
      -> Maybe Text
      -> [Text]
      -> Text
      -> Text
      -> Double
      -> Double
      -> Maybe Text
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> SecurityCertificateSecurityState)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"keyExchange"
    Parser
  (Maybe Text
   -> Text
   -> Maybe Text
   -> [Text]
   -> Text
   -> Text
   -> Double
   -> Double
   -> Maybe Text
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> SecurityCertificateSecurityState)
-> Parser (Maybe Text)
-> Parser
     (Text
      -> Maybe Text
      -> [Text]
      -> Text
      -> Text
      -> Double
      -> Double
      -> Maybe Text
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> SecurityCertificateSecurityState)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"keyExchangeGroup"
    Parser
  (Text
   -> Maybe Text
   -> [Text]
   -> Text
   -> Text
   -> Double
   -> Double
   -> Maybe Text
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> SecurityCertificateSecurityState)
-> Parser Text
-> Parser
     (Maybe Text
      -> [Text]
      -> Text
      -> Text
      -> Double
      -> Double
      -> Maybe Text
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> SecurityCertificateSecurityState)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"cipher"
    Parser
  (Maybe Text
   -> [Text]
   -> Text
   -> Text
   -> Double
   -> Double
   -> Maybe Text
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> SecurityCertificateSecurityState)
-> Parser (Maybe Text)
-> Parser
     ([Text]
      -> Text
      -> Text
      -> Double
      -> Double
      -> Maybe Text
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> SecurityCertificateSecurityState)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"mac"
    Parser
  ([Text]
   -> Text
   -> Text
   -> Double
   -> Double
   -> Maybe Text
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> SecurityCertificateSecurityState)
-> Parser [Text]
-> Parser
     (Text
      -> Text
      -> Double
      -> Double
      -> Maybe Text
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> SecurityCertificateSecurityState)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser [Text]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"certificate"
    Parser
  (Text
   -> Text
   -> Double
   -> Double
   -> Maybe Text
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> SecurityCertificateSecurityState)
-> Parser Text
-> Parser
     (Text
      -> Double
      -> Double
      -> Maybe Text
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> SecurityCertificateSecurityState)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"subjectName"
    Parser
  (Text
   -> Double
   -> Double
   -> Maybe Text
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> SecurityCertificateSecurityState)
-> Parser Text
-> Parser
     (Double
      -> Double
      -> Maybe Text
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> SecurityCertificateSecurityState)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"issuer"
    Parser
  (Double
   -> Double
   -> Maybe Text
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> SecurityCertificateSecurityState)
-> Parser Double
-> Parser
     (Double
      -> Maybe Text
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> SecurityCertificateSecurityState)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"validFrom"
    Parser
  (Double
   -> Maybe Text
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> SecurityCertificateSecurityState)
-> Parser Double
-> Parser
     (Maybe Text
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> SecurityCertificateSecurityState)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Double
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"validTo"
    Parser
  (Maybe Text
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> SecurityCertificateSecurityState)
-> Parser (Maybe Text)
-> Parser
     (Bool
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> SecurityCertificateSecurityState)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"certificateNetworkError"
    Parser
  (Bool
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> SecurityCertificateSecurityState)
-> Parser Bool
-> Parser
     (Bool
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> SecurityCertificateSecurityState)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Bool
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"certificateHasWeakSignature"
    Parser
  (Bool
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> SecurityCertificateSecurityState)
-> Parser Bool
-> Parser
     (Bool
      -> Bool
      -> Bool
      -> Bool
      -> Bool
      -> SecurityCertificateSecurityState)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Bool
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"certificateHasSha1Signature"
    Parser
  (Bool
   -> Bool
   -> Bool
   -> Bool
   -> Bool
   -> SecurityCertificateSecurityState)
-> Parser Bool
-> Parser
     (Bool -> Bool -> Bool -> Bool -> SecurityCertificateSecurityState)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Bool
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"modernSSL"
    Parser
  (Bool -> Bool -> Bool -> Bool -> SecurityCertificateSecurityState)
-> Parser Bool
-> Parser
     (Bool -> Bool -> Bool -> SecurityCertificateSecurityState)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Bool
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"obsoleteSslProtocol"
    Parser (Bool -> Bool -> Bool -> SecurityCertificateSecurityState)
-> Parser Bool
-> Parser (Bool -> Bool -> SecurityCertificateSecurityState)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Bool
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"obsoleteSslKeyExchange"
    Parser (Bool -> Bool -> SecurityCertificateSecurityState)
-> Parser Bool -> Parser (Bool -> SecurityCertificateSecurityState)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Bool
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"obsoleteSslCipher"
    Parser (Bool -> SecurityCertificateSecurityState)
-> Parser Bool -> Parser SecurityCertificateSecurityState
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Bool
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"obsoleteSslSignature"
instance ToJSON SecurityCertificateSecurityState where
  toJSON :: SecurityCertificateSecurityState -> Value
toJSON SecurityCertificateSecurityState
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"protocol" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (SecurityCertificateSecurityState -> Text
securityCertificateSecurityStateProtocol SecurityCertificateSecurityState
p),
    (Text
"keyExchange" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (SecurityCertificateSecurityState -> Text
securityCertificateSecurityStateKeyExchange SecurityCertificateSecurityState
p),
    (Text
"keyExchangeGroup" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (SecurityCertificateSecurityState -> Maybe Text
securityCertificateSecurityStateKeyExchangeGroup SecurityCertificateSecurityState
p),
    (Text
"cipher" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (SecurityCertificateSecurityState -> Text
securityCertificateSecurityStateCipher SecurityCertificateSecurityState
p),
    (Text
"mac" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (SecurityCertificateSecurityState -> Maybe Text
securityCertificateSecurityStateMac SecurityCertificateSecurityState
p),
    (Text
"certificate" Text -> [Text] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([Text] -> Pair) -> Maybe [Text] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> [Text] -> Maybe [Text]
forall a. a -> Maybe a
Just (SecurityCertificateSecurityState -> [Text]
securityCertificateSecurityStateCertificate SecurityCertificateSecurityState
p),
    (Text
"subjectName" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (SecurityCertificateSecurityState -> Text
securityCertificateSecurityStateSubjectName SecurityCertificateSecurityState
p),
    (Text
"issuer" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (SecurityCertificateSecurityState -> Text
securityCertificateSecurityStateIssuer SecurityCertificateSecurityState
p),
    (Text
"validFrom" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (SecurityCertificateSecurityState -> Double
securityCertificateSecurityStateValidFrom SecurityCertificateSecurityState
p),
    (Text
"validTo" Text -> Double -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Double -> Pair) -> Maybe Double -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Double -> Maybe Double
forall a. a -> Maybe a
Just (SecurityCertificateSecurityState -> Double
securityCertificateSecurityStateValidTo SecurityCertificateSecurityState
p),
    (Text
"certificateNetworkError" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (SecurityCertificateSecurityState -> Maybe Text
securityCertificateSecurityStateCertificateNetworkError SecurityCertificateSecurityState
p),
    (Text
"certificateHasWeakSignature" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (SecurityCertificateSecurityState -> Bool
securityCertificateSecurityStateCertificateHasWeakSignature SecurityCertificateSecurityState
p),
    (Text
"certificateHasSha1Signature" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (SecurityCertificateSecurityState -> Bool
securityCertificateSecurityStateCertificateHasSha1Signature SecurityCertificateSecurityState
p),
    (Text
"modernSSL" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (SecurityCertificateSecurityState -> Bool
securityCertificateSecurityStateModernSSL SecurityCertificateSecurityState
p),
    (Text
"obsoleteSslProtocol" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (SecurityCertificateSecurityState -> Bool
securityCertificateSecurityStateObsoleteSslProtocol SecurityCertificateSecurityState
p),
    (Text
"obsoleteSslKeyExchange" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (SecurityCertificateSecurityState -> Bool
securityCertificateSecurityStateObsoleteSslKeyExchange SecurityCertificateSecurityState
p),
    (Text
"obsoleteSslCipher" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (SecurityCertificateSecurityState -> Bool
securityCertificateSecurityStateObsoleteSslCipher SecurityCertificateSecurityState
p),
    (Text
"obsoleteSslSignature" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (SecurityCertificateSecurityState -> Bool
securityCertificateSecurityStateObsoleteSslSignature SecurityCertificateSecurityState
p)
    ]

-- | Type 'Security.SafetyTipStatus'.
data SecuritySafetyTipStatus = SecuritySafetyTipStatusBadReputation | SecuritySafetyTipStatusLookalike
  deriving (Eq SecuritySafetyTipStatus
Eq SecuritySafetyTipStatus
-> (SecuritySafetyTipStatus -> SecuritySafetyTipStatus -> Ordering)
-> (SecuritySafetyTipStatus -> SecuritySafetyTipStatus -> Bool)
-> (SecuritySafetyTipStatus -> SecuritySafetyTipStatus -> Bool)
-> (SecuritySafetyTipStatus -> SecuritySafetyTipStatus -> Bool)
-> (SecuritySafetyTipStatus -> SecuritySafetyTipStatus -> Bool)
-> (SecuritySafetyTipStatus
    -> SecuritySafetyTipStatus -> SecuritySafetyTipStatus)
-> (SecuritySafetyTipStatus
    -> SecuritySafetyTipStatus -> SecuritySafetyTipStatus)
-> Ord SecuritySafetyTipStatus
SecuritySafetyTipStatus -> SecuritySafetyTipStatus -> Bool
SecuritySafetyTipStatus -> SecuritySafetyTipStatus -> Ordering
SecuritySafetyTipStatus
-> SecuritySafetyTipStatus -> SecuritySafetyTipStatus
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: SecuritySafetyTipStatus
-> SecuritySafetyTipStatus -> SecuritySafetyTipStatus
$cmin :: SecuritySafetyTipStatus
-> SecuritySafetyTipStatus -> SecuritySafetyTipStatus
max :: SecuritySafetyTipStatus
-> SecuritySafetyTipStatus -> SecuritySafetyTipStatus
$cmax :: SecuritySafetyTipStatus
-> SecuritySafetyTipStatus -> SecuritySafetyTipStatus
>= :: SecuritySafetyTipStatus -> SecuritySafetyTipStatus -> Bool
$c>= :: SecuritySafetyTipStatus -> SecuritySafetyTipStatus -> Bool
> :: SecuritySafetyTipStatus -> SecuritySafetyTipStatus -> Bool
$c> :: SecuritySafetyTipStatus -> SecuritySafetyTipStatus -> Bool
<= :: SecuritySafetyTipStatus -> SecuritySafetyTipStatus -> Bool
$c<= :: SecuritySafetyTipStatus -> SecuritySafetyTipStatus -> Bool
< :: SecuritySafetyTipStatus -> SecuritySafetyTipStatus -> Bool
$c< :: SecuritySafetyTipStatus -> SecuritySafetyTipStatus -> Bool
compare :: SecuritySafetyTipStatus -> SecuritySafetyTipStatus -> Ordering
$ccompare :: SecuritySafetyTipStatus -> SecuritySafetyTipStatus -> Ordering
$cp1Ord :: Eq SecuritySafetyTipStatus
Ord, SecuritySafetyTipStatus -> SecuritySafetyTipStatus -> Bool
(SecuritySafetyTipStatus -> SecuritySafetyTipStatus -> Bool)
-> (SecuritySafetyTipStatus -> SecuritySafetyTipStatus -> Bool)
-> Eq SecuritySafetyTipStatus
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: SecuritySafetyTipStatus -> SecuritySafetyTipStatus -> Bool
$c/= :: SecuritySafetyTipStatus -> SecuritySafetyTipStatus -> Bool
== :: SecuritySafetyTipStatus -> SecuritySafetyTipStatus -> Bool
$c== :: SecuritySafetyTipStatus -> SecuritySafetyTipStatus -> Bool
Eq, Int -> SecuritySafetyTipStatus -> ShowS
[SecuritySafetyTipStatus] -> ShowS
SecuritySafetyTipStatus -> String
(Int -> SecuritySafetyTipStatus -> ShowS)
-> (SecuritySafetyTipStatus -> String)
-> ([SecuritySafetyTipStatus] -> ShowS)
-> Show SecuritySafetyTipStatus
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [SecuritySafetyTipStatus] -> ShowS
$cshowList :: [SecuritySafetyTipStatus] -> ShowS
show :: SecuritySafetyTipStatus -> String
$cshow :: SecuritySafetyTipStatus -> String
showsPrec :: Int -> SecuritySafetyTipStatus -> ShowS
$cshowsPrec :: Int -> SecuritySafetyTipStatus -> ShowS
Show, ReadPrec [SecuritySafetyTipStatus]
ReadPrec SecuritySafetyTipStatus
Int -> ReadS SecuritySafetyTipStatus
ReadS [SecuritySafetyTipStatus]
(Int -> ReadS SecuritySafetyTipStatus)
-> ReadS [SecuritySafetyTipStatus]
-> ReadPrec SecuritySafetyTipStatus
-> ReadPrec [SecuritySafetyTipStatus]
-> Read SecuritySafetyTipStatus
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [SecuritySafetyTipStatus]
$creadListPrec :: ReadPrec [SecuritySafetyTipStatus]
readPrec :: ReadPrec SecuritySafetyTipStatus
$creadPrec :: ReadPrec SecuritySafetyTipStatus
readList :: ReadS [SecuritySafetyTipStatus]
$creadList :: ReadS [SecuritySafetyTipStatus]
readsPrec :: Int -> ReadS SecuritySafetyTipStatus
$creadsPrec :: Int -> ReadS SecuritySafetyTipStatus
Read)
instance FromJSON SecuritySafetyTipStatus where
  parseJSON :: Value -> Parser SecuritySafetyTipStatus
parseJSON = String
-> (Text -> Parser SecuritySafetyTipStatus)
-> Value
-> Parser SecuritySafetyTipStatus
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"SecuritySafetyTipStatus" ((Text -> Parser SecuritySafetyTipStatus)
 -> Value -> Parser SecuritySafetyTipStatus)
-> (Text -> Parser SecuritySafetyTipStatus)
-> Value
-> Parser SecuritySafetyTipStatus
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"badReputation" -> SecuritySafetyTipStatus -> Parser SecuritySafetyTipStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure SecuritySafetyTipStatus
SecuritySafetyTipStatusBadReputation
    Text
"lookalike" -> SecuritySafetyTipStatus -> Parser SecuritySafetyTipStatus
forall (f :: * -> *) a. Applicative f => a -> f a
pure SecuritySafetyTipStatus
SecuritySafetyTipStatusLookalike
    Text
"_" -> String -> Parser SecuritySafetyTipStatus
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse SecuritySafetyTipStatus"
instance ToJSON SecuritySafetyTipStatus where
  toJSON :: SecuritySafetyTipStatus -> Value
toJSON SecuritySafetyTipStatus
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case SecuritySafetyTipStatus
v of
    SecuritySafetyTipStatus
SecuritySafetyTipStatusBadReputation -> Text
"badReputation"
    SecuritySafetyTipStatus
SecuritySafetyTipStatusLookalike -> Text
"lookalike"

-- | Type 'Security.SafetyTipInfo'.
data SecuritySafetyTipInfo = SecuritySafetyTipInfo
  {
    -- | Describes whether the page triggers any safety tips or reputation warnings. Default is unknown.
    SecuritySafetyTipInfo -> SecuritySafetyTipStatus
securitySafetyTipInfoSafetyTipStatus :: SecuritySafetyTipStatus,
    -- | The URL the safety tip suggested ("Did you mean?"). Only filled in for lookalike matches.
    SecuritySafetyTipInfo -> Maybe Text
securitySafetyTipInfoSafeUrl :: Maybe T.Text
  }
  deriving (SecuritySafetyTipInfo -> SecuritySafetyTipInfo -> Bool
(SecuritySafetyTipInfo -> SecuritySafetyTipInfo -> Bool)
-> (SecuritySafetyTipInfo -> SecuritySafetyTipInfo -> Bool)
-> Eq SecuritySafetyTipInfo
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: SecuritySafetyTipInfo -> SecuritySafetyTipInfo -> Bool
$c/= :: SecuritySafetyTipInfo -> SecuritySafetyTipInfo -> Bool
== :: SecuritySafetyTipInfo -> SecuritySafetyTipInfo -> Bool
$c== :: SecuritySafetyTipInfo -> SecuritySafetyTipInfo -> Bool
Eq, Int -> SecuritySafetyTipInfo -> ShowS
[SecuritySafetyTipInfo] -> ShowS
SecuritySafetyTipInfo -> String
(Int -> SecuritySafetyTipInfo -> ShowS)
-> (SecuritySafetyTipInfo -> String)
-> ([SecuritySafetyTipInfo] -> ShowS)
-> Show SecuritySafetyTipInfo
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [SecuritySafetyTipInfo] -> ShowS
$cshowList :: [SecuritySafetyTipInfo] -> ShowS
show :: SecuritySafetyTipInfo -> String
$cshow :: SecuritySafetyTipInfo -> String
showsPrec :: Int -> SecuritySafetyTipInfo -> ShowS
$cshowsPrec :: Int -> SecuritySafetyTipInfo -> ShowS
Show)
instance FromJSON SecuritySafetyTipInfo where
  parseJSON :: Value -> Parser SecuritySafetyTipInfo
parseJSON = String
-> (Object -> Parser SecuritySafetyTipInfo)
-> Value
-> Parser SecuritySafetyTipInfo
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"SecuritySafetyTipInfo" ((Object -> Parser SecuritySafetyTipInfo)
 -> Value -> Parser SecuritySafetyTipInfo)
-> (Object -> Parser SecuritySafetyTipInfo)
-> Value
-> Parser SecuritySafetyTipInfo
forall a b. (a -> b) -> a -> b
$ \Object
o -> SecuritySafetyTipStatus -> Maybe Text -> SecuritySafetyTipInfo
SecuritySafetyTipInfo
    (SecuritySafetyTipStatus -> Maybe Text -> SecuritySafetyTipInfo)
-> Parser SecuritySafetyTipStatus
-> Parser (Maybe Text -> SecuritySafetyTipInfo)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser SecuritySafetyTipStatus
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"safetyTipStatus"
    Parser (Maybe Text -> SecuritySafetyTipInfo)
-> Parser (Maybe Text) -> Parser SecuritySafetyTipInfo
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"safeUrl"
instance ToJSON SecuritySafetyTipInfo where
  toJSON :: SecuritySafetyTipInfo -> Value
toJSON SecuritySafetyTipInfo
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"safetyTipStatus" Text -> SecuritySafetyTipStatus -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (SecuritySafetyTipStatus -> Pair)
-> Maybe SecuritySafetyTipStatus -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> SecuritySafetyTipStatus -> Maybe SecuritySafetyTipStatus
forall a. a -> Maybe a
Just (SecuritySafetyTipInfo -> SecuritySafetyTipStatus
securitySafetyTipInfoSafetyTipStatus SecuritySafetyTipInfo
p),
    (Text
"safeUrl" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (SecuritySafetyTipInfo -> Maybe Text
securitySafetyTipInfoSafeUrl SecuritySafetyTipInfo
p)
    ]

-- | Type 'Security.VisibleSecurityState'.
--   Security state information about the page.
data SecurityVisibleSecurityState = SecurityVisibleSecurityState
  {
    -- | The security level of the page.
    SecurityVisibleSecurityState -> SecuritySecurityState
securityVisibleSecurityStateSecurityState :: SecuritySecurityState,
    -- | Security state details about the page certificate.
    SecurityVisibleSecurityState
-> Maybe SecurityCertificateSecurityState
securityVisibleSecurityStateCertificateSecurityState :: Maybe SecurityCertificateSecurityState,
    -- | The type of Safety Tip triggered on the page. Note that this field will be set even if the Safety Tip UI was not actually shown.
    SecurityVisibleSecurityState -> Maybe SecuritySafetyTipInfo
securityVisibleSecurityStateSafetyTipInfo :: Maybe SecuritySafetyTipInfo,
    -- | Array of security state issues ids.
    SecurityVisibleSecurityState -> [Text]
securityVisibleSecurityStateSecurityStateIssueIds :: [T.Text]
  }
  deriving (SecurityVisibleSecurityState
-> SecurityVisibleSecurityState -> Bool
(SecurityVisibleSecurityState
 -> SecurityVisibleSecurityState -> Bool)
-> (SecurityVisibleSecurityState
    -> SecurityVisibleSecurityState -> Bool)
-> Eq SecurityVisibleSecurityState
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: SecurityVisibleSecurityState
-> SecurityVisibleSecurityState -> Bool
$c/= :: SecurityVisibleSecurityState
-> SecurityVisibleSecurityState -> Bool
== :: SecurityVisibleSecurityState
-> SecurityVisibleSecurityState -> Bool
$c== :: SecurityVisibleSecurityState
-> SecurityVisibleSecurityState -> Bool
Eq, Int -> SecurityVisibleSecurityState -> ShowS
[SecurityVisibleSecurityState] -> ShowS
SecurityVisibleSecurityState -> String
(Int -> SecurityVisibleSecurityState -> ShowS)
-> (SecurityVisibleSecurityState -> String)
-> ([SecurityVisibleSecurityState] -> ShowS)
-> Show SecurityVisibleSecurityState
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [SecurityVisibleSecurityState] -> ShowS
$cshowList :: [SecurityVisibleSecurityState] -> ShowS
show :: SecurityVisibleSecurityState -> String
$cshow :: SecurityVisibleSecurityState -> String
showsPrec :: Int -> SecurityVisibleSecurityState -> ShowS
$cshowsPrec :: Int -> SecurityVisibleSecurityState -> ShowS
Show)
instance FromJSON SecurityVisibleSecurityState where
  parseJSON :: Value -> Parser SecurityVisibleSecurityState
parseJSON = String
-> (Object -> Parser SecurityVisibleSecurityState)
-> Value
-> Parser SecurityVisibleSecurityState
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"SecurityVisibleSecurityState" ((Object -> Parser SecurityVisibleSecurityState)
 -> Value -> Parser SecurityVisibleSecurityState)
-> (Object -> Parser SecurityVisibleSecurityState)
-> Value
-> Parser SecurityVisibleSecurityState
forall a b. (a -> b) -> a -> b
$ \Object
o -> SecuritySecurityState
-> Maybe SecurityCertificateSecurityState
-> Maybe SecuritySafetyTipInfo
-> [Text]
-> SecurityVisibleSecurityState
SecurityVisibleSecurityState
    (SecuritySecurityState
 -> Maybe SecurityCertificateSecurityState
 -> Maybe SecuritySafetyTipInfo
 -> [Text]
 -> SecurityVisibleSecurityState)
-> Parser SecuritySecurityState
-> Parser
     (Maybe SecurityCertificateSecurityState
      -> Maybe SecuritySafetyTipInfo
      -> [Text]
      -> SecurityVisibleSecurityState)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser SecuritySecurityState
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"securityState"
    Parser
  (Maybe SecurityCertificateSecurityState
   -> Maybe SecuritySafetyTipInfo
   -> [Text]
   -> SecurityVisibleSecurityState)
-> Parser (Maybe SecurityCertificateSecurityState)
-> Parser
     (Maybe SecuritySafetyTipInfo
      -> [Text] -> SecurityVisibleSecurityState)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe SecurityCertificateSecurityState)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"certificateSecurityState"
    Parser
  (Maybe SecuritySafetyTipInfo
   -> [Text] -> SecurityVisibleSecurityState)
-> Parser (Maybe SecuritySafetyTipInfo)
-> Parser ([Text] -> SecurityVisibleSecurityState)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe SecuritySafetyTipInfo)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"safetyTipInfo"
    Parser ([Text] -> SecurityVisibleSecurityState)
-> Parser [Text] -> Parser SecurityVisibleSecurityState
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser [Text]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"securityStateIssueIds"
instance ToJSON SecurityVisibleSecurityState where
  toJSON :: SecurityVisibleSecurityState -> Value
toJSON SecurityVisibleSecurityState
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"securityState" Text -> SecuritySecurityState -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (SecuritySecurityState -> Pair)
-> Maybe SecuritySecurityState -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> SecuritySecurityState -> Maybe SecuritySecurityState
forall a. a -> Maybe a
Just (SecurityVisibleSecurityState -> SecuritySecurityState
securityVisibleSecurityStateSecurityState SecurityVisibleSecurityState
p),
    (Text
"certificateSecurityState" Text -> SecurityCertificateSecurityState -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (SecurityCertificateSecurityState -> Pair)
-> Maybe SecurityCertificateSecurityState -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (SecurityVisibleSecurityState
-> Maybe SecurityCertificateSecurityState
securityVisibleSecurityStateCertificateSecurityState SecurityVisibleSecurityState
p),
    (Text
"safetyTipInfo" Text -> SecuritySafetyTipInfo -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (SecuritySafetyTipInfo -> Pair)
-> Maybe SecuritySafetyTipInfo -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (SecurityVisibleSecurityState -> Maybe SecuritySafetyTipInfo
securityVisibleSecurityStateSafetyTipInfo SecurityVisibleSecurityState
p),
    (Text
"securityStateIssueIds" Text -> [Text] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([Text] -> Pair) -> Maybe [Text] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> [Text] -> Maybe [Text]
forall a. a -> Maybe a
Just (SecurityVisibleSecurityState -> [Text]
securityVisibleSecurityStateSecurityStateIssueIds SecurityVisibleSecurityState
p)
    ]

-- | Type 'Security.SecurityStateExplanation'.
--   An explanation of an factor contributing to the security state.
data SecuritySecurityStateExplanation = SecuritySecurityStateExplanation
  {
    -- | Security state representing the severity of the factor being explained.
    SecuritySecurityStateExplanation -> SecuritySecurityState
securitySecurityStateExplanationSecurityState :: SecuritySecurityState,
    -- | Title describing the type of factor.
    SecuritySecurityStateExplanation -> Text
securitySecurityStateExplanationTitle :: T.Text,
    -- | Short phrase describing the type of factor.
    SecuritySecurityStateExplanation -> Text
securitySecurityStateExplanationSummary :: T.Text,
    -- | Full text explanation of the factor.
    SecuritySecurityStateExplanation -> Text
securitySecurityStateExplanationDescription :: T.Text,
    -- | The type of mixed content described by the explanation.
    SecuritySecurityStateExplanation -> SecurityMixedContentType
securitySecurityStateExplanationMixedContentType :: SecurityMixedContentType,
    -- | Page certificate.
    SecuritySecurityStateExplanation -> [Text]
securitySecurityStateExplanationCertificate :: [T.Text],
    -- | Recommendations to fix any issues.
    SecuritySecurityStateExplanation -> Maybe [Text]
securitySecurityStateExplanationRecommendations :: Maybe [T.Text]
  }
  deriving (SecuritySecurityStateExplanation
-> SecuritySecurityStateExplanation -> Bool
(SecuritySecurityStateExplanation
 -> SecuritySecurityStateExplanation -> Bool)
-> (SecuritySecurityStateExplanation
    -> SecuritySecurityStateExplanation -> Bool)
-> Eq SecuritySecurityStateExplanation
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: SecuritySecurityStateExplanation
-> SecuritySecurityStateExplanation -> Bool
$c/= :: SecuritySecurityStateExplanation
-> SecuritySecurityStateExplanation -> Bool
== :: SecuritySecurityStateExplanation
-> SecuritySecurityStateExplanation -> Bool
$c== :: SecuritySecurityStateExplanation
-> SecuritySecurityStateExplanation -> Bool
Eq, Int -> SecuritySecurityStateExplanation -> ShowS
[SecuritySecurityStateExplanation] -> ShowS
SecuritySecurityStateExplanation -> String
(Int -> SecuritySecurityStateExplanation -> ShowS)
-> (SecuritySecurityStateExplanation -> String)
-> ([SecuritySecurityStateExplanation] -> ShowS)
-> Show SecuritySecurityStateExplanation
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [SecuritySecurityStateExplanation] -> ShowS
$cshowList :: [SecuritySecurityStateExplanation] -> ShowS
show :: SecuritySecurityStateExplanation -> String
$cshow :: SecuritySecurityStateExplanation -> String
showsPrec :: Int -> SecuritySecurityStateExplanation -> ShowS
$cshowsPrec :: Int -> SecuritySecurityStateExplanation -> ShowS
Show)
instance FromJSON SecuritySecurityStateExplanation where
  parseJSON :: Value -> Parser SecuritySecurityStateExplanation
parseJSON = String
-> (Object -> Parser SecuritySecurityStateExplanation)
-> Value
-> Parser SecuritySecurityStateExplanation
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"SecuritySecurityStateExplanation" ((Object -> Parser SecuritySecurityStateExplanation)
 -> Value -> Parser SecuritySecurityStateExplanation)
-> (Object -> Parser SecuritySecurityStateExplanation)
-> Value
-> Parser SecuritySecurityStateExplanation
forall a b. (a -> b) -> a -> b
$ \Object
o -> SecuritySecurityState
-> Text
-> Text
-> Text
-> SecurityMixedContentType
-> [Text]
-> Maybe [Text]
-> SecuritySecurityStateExplanation
SecuritySecurityStateExplanation
    (SecuritySecurityState
 -> Text
 -> Text
 -> Text
 -> SecurityMixedContentType
 -> [Text]
 -> Maybe [Text]
 -> SecuritySecurityStateExplanation)
-> Parser SecuritySecurityState
-> Parser
     (Text
      -> Text
      -> Text
      -> SecurityMixedContentType
      -> [Text]
      -> Maybe [Text]
      -> SecuritySecurityStateExplanation)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser SecuritySecurityState
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"securityState"
    Parser
  (Text
   -> Text
   -> Text
   -> SecurityMixedContentType
   -> [Text]
   -> Maybe [Text]
   -> SecuritySecurityStateExplanation)
-> Parser Text
-> Parser
     (Text
      -> Text
      -> SecurityMixedContentType
      -> [Text]
      -> Maybe [Text]
      -> SecuritySecurityStateExplanation)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"title"
    Parser
  (Text
   -> Text
   -> SecurityMixedContentType
   -> [Text]
   -> Maybe [Text]
   -> SecuritySecurityStateExplanation)
-> Parser Text
-> Parser
     (Text
      -> SecurityMixedContentType
      -> [Text]
      -> Maybe [Text]
      -> SecuritySecurityStateExplanation)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"summary"
    Parser
  (Text
   -> SecurityMixedContentType
   -> [Text]
   -> Maybe [Text]
   -> SecuritySecurityStateExplanation)
-> Parser Text
-> Parser
     (SecurityMixedContentType
      -> [Text] -> Maybe [Text] -> SecuritySecurityStateExplanation)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"description"
    Parser
  (SecurityMixedContentType
   -> [Text] -> Maybe [Text] -> SecuritySecurityStateExplanation)
-> Parser SecurityMixedContentType
-> Parser
     ([Text] -> Maybe [Text] -> SecuritySecurityStateExplanation)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser SecurityMixedContentType
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"mixedContentType"
    Parser ([Text] -> Maybe [Text] -> SecuritySecurityStateExplanation)
-> Parser [Text]
-> Parser (Maybe [Text] -> SecuritySecurityStateExplanation)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser [Text]
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"certificate"
    Parser (Maybe [Text] -> SecuritySecurityStateExplanation)
-> Parser (Maybe [Text]) -> Parser SecuritySecurityStateExplanation
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
<*> Object
o Object -> Text -> Parser (Maybe [Text])
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
A..:? Text
"recommendations"
instance ToJSON SecuritySecurityStateExplanation where
  toJSON :: SecuritySecurityStateExplanation -> Value
toJSON SecuritySecurityStateExplanation
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"securityState" Text -> SecuritySecurityState -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (SecuritySecurityState -> Pair)
-> Maybe SecuritySecurityState -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> SecuritySecurityState -> Maybe SecuritySecurityState
forall a. a -> Maybe a
Just (SecuritySecurityStateExplanation -> SecuritySecurityState
securitySecurityStateExplanationSecurityState SecuritySecurityStateExplanation
p),
    (Text
"title" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (SecuritySecurityStateExplanation -> Text
securitySecurityStateExplanationTitle SecuritySecurityStateExplanation
p),
    (Text
"summary" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (SecuritySecurityStateExplanation -> Text
securitySecurityStateExplanationSummary SecuritySecurityStateExplanation
p),
    (Text
"description" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Text -> Maybe Text
forall a. a -> Maybe a
Just (SecuritySecurityStateExplanation -> Text
securitySecurityStateExplanationDescription SecuritySecurityStateExplanation
p),
    (Text
"mixedContentType" Text -> SecurityMixedContentType -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (SecurityMixedContentType -> Pair)
-> Maybe SecurityMixedContentType -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> SecurityMixedContentType -> Maybe SecurityMixedContentType
forall a. a -> Maybe a
Just (SecuritySecurityStateExplanation -> SecurityMixedContentType
securitySecurityStateExplanationMixedContentType SecuritySecurityStateExplanation
p),
    (Text
"certificate" Text -> [Text] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([Text] -> Pair) -> Maybe [Text] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> [Text] -> Maybe [Text]
forall a. a -> Maybe a
Just (SecuritySecurityStateExplanation -> [Text]
securitySecurityStateExplanationCertificate SecuritySecurityStateExplanation
p),
    (Text
"recommendations" Text -> [Text] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) ([Text] -> Pair) -> Maybe [Text] -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (SecuritySecurityStateExplanation -> Maybe [Text]
securitySecurityStateExplanationRecommendations SecuritySecurityStateExplanation
p)
    ]

-- | Type 'Security.CertificateErrorAction'.
--   The action to take when a certificate error occurs. continue will continue processing the
--   request and cancel will cancel the request.
data SecurityCertificateErrorAction = SecurityCertificateErrorActionContinue | SecurityCertificateErrorActionCancel
  deriving (Eq SecurityCertificateErrorAction
Eq SecurityCertificateErrorAction
-> (SecurityCertificateErrorAction
    -> SecurityCertificateErrorAction -> Ordering)
-> (SecurityCertificateErrorAction
    -> SecurityCertificateErrorAction -> Bool)
-> (SecurityCertificateErrorAction
    -> SecurityCertificateErrorAction -> Bool)
-> (SecurityCertificateErrorAction
    -> SecurityCertificateErrorAction -> Bool)
-> (SecurityCertificateErrorAction
    -> SecurityCertificateErrorAction -> Bool)
-> (SecurityCertificateErrorAction
    -> SecurityCertificateErrorAction
    -> SecurityCertificateErrorAction)
-> (SecurityCertificateErrorAction
    -> SecurityCertificateErrorAction
    -> SecurityCertificateErrorAction)
-> Ord SecurityCertificateErrorAction
SecurityCertificateErrorAction
-> SecurityCertificateErrorAction -> Bool
SecurityCertificateErrorAction
-> SecurityCertificateErrorAction -> Ordering
SecurityCertificateErrorAction
-> SecurityCertificateErrorAction -> SecurityCertificateErrorAction
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: SecurityCertificateErrorAction
-> SecurityCertificateErrorAction -> SecurityCertificateErrorAction
$cmin :: SecurityCertificateErrorAction
-> SecurityCertificateErrorAction -> SecurityCertificateErrorAction
max :: SecurityCertificateErrorAction
-> SecurityCertificateErrorAction -> SecurityCertificateErrorAction
$cmax :: SecurityCertificateErrorAction
-> SecurityCertificateErrorAction -> SecurityCertificateErrorAction
>= :: SecurityCertificateErrorAction
-> SecurityCertificateErrorAction -> Bool
$c>= :: SecurityCertificateErrorAction
-> SecurityCertificateErrorAction -> Bool
> :: SecurityCertificateErrorAction
-> SecurityCertificateErrorAction -> Bool
$c> :: SecurityCertificateErrorAction
-> SecurityCertificateErrorAction -> Bool
<= :: SecurityCertificateErrorAction
-> SecurityCertificateErrorAction -> Bool
$c<= :: SecurityCertificateErrorAction
-> SecurityCertificateErrorAction -> Bool
< :: SecurityCertificateErrorAction
-> SecurityCertificateErrorAction -> Bool
$c< :: SecurityCertificateErrorAction
-> SecurityCertificateErrorAction -> Bool
compare :: SecurityCertificateErrorAction
-> SecurityCertificateErrorAction -> Ordering
$ccompare :: SecurityCertificateErrorAction
-> SecurityCertificateErrorAction -> Ordering
$cp1Ord :: Eq SecurityCertificateErrorAction
Ord, SecurityCertificateErrorAction
-> SecurityCertificateErrorAction -> Bool
(SecurityCertificateErrorAction
 -> SecurityCertificateErrorAction -> Bool)
-> (SecurityCertificateErrorAction
    -> SecurityCertificateErrorAction -> Bool)
-> Eq SecurityCertificateErrorAction
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: SecurityCertificateErrorAction
-> SecurityCertificateErrorAction -> Bool
$c/= :: SecurityCertificateErrorAction
-> SecurityCertificateErrorAction -> Bool
== :: SecurityCertificateErrorAction
-> SecurityCertificateErrorAction -> Bool
$c== :: SecurityCertificateErrorAction
-> SecurityCertificateErrorAction -> Bool
Eq, Int -> SecurityCertificateErrorAction -> ShowS
[SecurityCertificateErrorAction] -> ShowS
SecurityCertificateErrorAction -> String
(Int -> SecurityCertificateErrorAction -> ShowS)
-> (SecurityCertificateErrorAction -> String)
-> ([SecurityCertificateErrorAction] -> ShowS)
-> Show SecurityCertificateErrorAction
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [SecurityCertificateErrorAction] -> ShowS
$cshowList :: [SecurityCertificateErrorAction] -> ShowS
show :: SecurityCertificateErrorAction -> String
$cshow :: SecurityCertificateErrorAction -> String
showsPrec :: Int -> SecurityCertificateErrorAction -> ShowS
$cshowsPrec :: Int -> SecurityCertificateErrorAction -> ShowS
Show, ReadPrec [SecurityCertificateErrorAction]
ReadPrec SecurityCertificateErrorAction
Int -> ReadS SecurityCertificateErrorAction
ReadS [SecurityCertificateErrorAction]
(Int -> ReadS SecurityCertificateErrorAction)
-> ReadS [SecurityCertificateErrorAction]
-> ReadPrec SecurityCertificateErrorAction
-> ReadPrec [SecurityCertificateErrorAction]
-> Read SecurityCertificateErrorAction
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [SecurityCertificateErrorAction]
$creadListPrec :: ReadPrec [SecurityCertificateErrorAction]
readPrec :: ReadPrec SecurityCertificateErrorAction
$creadPrec :: ReadPrec SecurityCertificateErrorAction
readList :: ReadS [SecurityCertificateErrorAction]
$creadList :: ReadS [SecurityCertificateErrorAction]
readsPrec :: Int -> ReadS SecurityCertificateErrorAction
$creadsPrec :: Int -> ReadS SecurityCertificateErrorAction
Read)
instance FromJSON SecurityCertificateErrorAction where
  parseJSON :: Value -> Parser SecurityCertificateErrorAction
parseJSON = String
-> (Text -> Parser SecurityCertificateErrorAction)
-> Value
-> Parser SecurityCertificateErrorAction
forall a. String -> (Text -> Parser a) -> Value -> Parser a
A.withText String
"SecurityCertificateErrorAction" ((Text -> Parser SecurityCertificateErrorAction)
 -> Value -> Parser SecurityCertificateErrorAction)
-> (Text -> Parser SecurityCertificateErrorAction)
-> Value
-> Parser SecurityCertificateErrorAction
forall a b. (a -> b) -> a -> b
$ \Text
v -> case Text
v of
    Text
"continue" -> SecurityCertificateErrorAction
-> Parser SecurityCertificateErrorAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure SecurityCertificateErrorAction
SecurityCertificateErrorActionContinue
    Text
"cancel" -> SecurityCertificateErrorAction
-> Parser SecurityCertificateErrorAction
forall (f :: * -> *) a. Applicative f => a -> f a
pure SecurityCertificateErrorAction
SecurityCertificateErrorActionCancel
    Text
"_" -> String -> Parser SecurityCertificateErrorAction
forall (m :: * -> *) a. MonadFail m => String -> m a
fail String
"failed to parse SecurityCertificateErrorAction"
instance ToJSON SecurityCertificateErrorAction where
  toJSON :: SecurityCertificateErrorAction -> Value
toJSON SecurityCertificateErrorAction
v = Text -> Value
A.String (Text -> Value) -> Text -> Value
forall a b. (a -> b) -> a -> b
$ case SecurityCertificateErrorAction
v of
    SecurityCertificateErrorAction
SecurityCertificateErrorActionContinue -> Text
"continue"
    SecurityCertificateErrorAction
SecurityCertificateErrorActionCancel -> Text
"cancel"

-- | Type of the 'Security.visibleSecurityStateChanged' event.
data SecurityVisibleSecurityStateChanged = SecurityVisibleSecurityStateChanged
  {
    -- | Security state information about the page.
    SecurityVisibleSecurityStateChanged -> SecurityVisibleSecurityState
securityVisibleSecurityStateChangedVisibleSecurityState :: SecurityVisibleSecurityState
  }
  deriving (SecurityVisibleSecurityStateChanged
-> SecurityVisibleSecurityStateChanged -> Bool
(SecurityVisibleSecurityStateChanged
 -> SecurityVisibleSecurityStateChanged -> Bool)
-> (SecurityVisibleSecurityStateChanged
    -> SecurityVisibleSecurityStateChanged -> Bool)
-> Eq SecurityVisibleSecurityStateChanged
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: SecurityVisibleSecurityStateChanged
-> SecurityVisibleSecurityStateChanged -> Bool
$c/= :: SecurityVisibleSecurityStateChanged
-> SecurityVisibleSecurityStateChanged -> Bool
== :: SecurityVisibleSecurityStateChanged
-> SecurityVisibleSecurityStateChanged -> Bool
$c== :: SecurityVisibleSecurityStateChanged
-> SecurityVisibleSecurityStateChanged -> Bool
Eq, Int -> SecurityVisibleSecurityStateChanged -> ShowS
[SecurityVisibleSecurityStateChanged] -> ShowS
SecurityVisibleSecurityStateChanged -> String
(Int -> SecurityVisibleSecurityStateChanged -> ShowS)
-> (SecurityVisibleSecurityStateChanged -> String)
-> ([SecurityVisibleSecurityStateChanged] -> ShowS)
-> Show SecurityVisibleSecurityStateChanged
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [SecurityVisibleSecurityStateChanged] -> ShowS
$cshowList :: [SecurityVisibleSecurityStateChanged] -> ShowS
show :: SecurityVisibleSecurityStateChanged -> String
$cshow :: SecurityVisibleSecurityStateChanged -> String
showsPrec :: Int -> SecurityVisibleSecurityStateChanged -> ShowS
$cshowsPrec :: Int -> SecurityVisibleSecurityStateChanged -> ShowS
Show)
instance FromJSON SecurityVisibleSecurityStateChanged where
  parseJSON :: Value -> Parser SecurityVisibleSecurityStateChanged
parseJSON = String
-> (Object -> Parser SecurityVisibleSecurityStateChanged)
-> Value
-> Parser SecurityVisibleSecurityStateChanged
forall a. String -> (Object -> Parser a) -> Value -> Parser a
A.withObject String
"SecurityVisibleSecurityStateChanged" ((Object -> Parser SecurityVisibleSecurityStateChanged)
 -> Value -> Parser SecurityVisibleSecurityStateChanged)
-> (Object -> Parser SecurityVisibleSecurityStateChanged)
-> Value
-> Parser SecurityVisibleSecurityStateChanged
forall a b. (a -> b) -> a -> b
$ \Object
o -> SecurityVisibleSecurityState -> SecurityVisibleSecurityStateChanged
SecurityVisibleSecurityStateChanged
    (SecurityVisibleSecurityState
 -> SecurityVisibleSecurityStateChanged)
-> Parser SecurityVisibleSecurityState
-> Parser SecurityVisibleSecurityStateChanged
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Object
o Object -> Text -> Parser SecurityVisibleSecurityState
forall a. FromJSON a => Object -> Text -> Parser a
A..: Text
"visibleSecurityState"
instance Event SecurityVisibleSecurityStateChanged where
  eventName :: Proxy SecurityVisibleSecurityStateChanged -> String
eventName Proxy SecurityVisibleSecurityStateChanged
_ = String
"Security.visibleSecurityStateChanged"

-- | Disables tracking security state changes.

-- | Parameters of the 'Security.disable' command.
data PSecurityDisable = PSecurityDisable
  deriving (PSecurityDisable -> PSecurityDisable -> Bool
(PSecurityDisable -> PSecurityDisable -> Bool)
-> (PSecurityDisable -> PSecurityDisable -> Bool)
-> Eq PSecurityDisable
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PSecurityDisable -> PSecurityDisable -> Bool
$c/= :: PSecurityDisable -> PSecurityDisable -> Bool
== :: PSecurityDisable -> PSecurityDisable -> Bool
$c== :: PSecurityDisable -> PSecurityDisable -> Bool
Eq, Int -> PSecurityDisable -> ShowS
[PSecurityDisable] -> ShowS
PSecurityDisable -> String
(Int -> PSecurityDisable -> ShowS)
-> (PSecurityDisable -> String)
-> ([PSecurityDisable] -> ShowS)
-> Show PSecurityDisable
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PSecurityDisable] -> ShowS
$cshowList :: [PSecurityDisable] -> ShowS
show :: PSecurityDisable -> String
$cshow :: PSecurityDisable -> String
showsPrec :: Int -> PSecurityDisable -> ShowS
$cshowsPrec :: Int -> PSecurityDisable -> ShowS
Show)
pSecurityDisable
  :: PSecurityDisable
pSecurityDisable :: PSecurityDisable
pSecurityDisable
  = PSecurityDisable
PSecurityDisable
instance ToJSON PSecurityDisable where
  toJSON :: PSecurityDisable -> Value
toJSON PSecurityDisable
_ = Value
A.Null
instance Command PSecurityDisable where
  type CommandResponse PSecurityDisable = ()
  commandName :: Proxy PSecurityDisable -> String
commandName Proxy PSecurityDisable
_ = String
"Security.disable"
  fromJSON :: Proxy PSecurityDisable
-> Value -> Result (CommandResponse PSecurityDisable)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PSecurityDisable -> Result ())
-> Proxy PSecurityDisable
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PSecurityDisable -> ())
-> Proxy PSecurityDisable
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PSecurityDisable -> ()
forall a b. a -> b -> a
const ()

-- | Enables tracking security state changes.

-- | Parameters of the 'Security.enable' command.
data PSecurityEnable = PSecurityEnable
  deriving (PSecurityEnable -> PSecurityEnable -> Bool
(PSecurityEnable -> PSecurityEnable -> Bool)
-> (PSecurityEnable -> PSecurityEnable -> Bool)
-> Eq PSecurityEnable
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PSecurityEnable -> PSecurityEnable -> Bool
$c/= :: PSecurityEnable -> PSecurityEnable -> Bool
== :: PSecurityEnable -> PSecurityEnable -> Bool
$c== :: PSecurityEnable -> PSecurityEnable -> Bool
Eq, Int -> PSecurityEnable -> ShowS
[PSecurityEnable] -> ShowS
PSecurityEnable -> String
(Int -> PSecurityEnable -> ShowS)
-> (PSecurityEnable -> String)
-> ([PSecurityEnable] -> ShowS)
-> Show PSecurityEnable
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PSecurityEnable] -> ShowS
$cshowList :: [PSecurityEnable] -> ShowS
show :: PSecurityEnable -> String
$cshow :: PSecurityEnable -> String
showsPrec :: Int -> PSecurityEnable -> ShowS
$cshowsPrec :: Int -> PSecurityEnable -> ShowS
Show)
pSecurityEnable
  :: PSecurityEnable
pSecurityEnable :: PSecurityEnable
pSecurityEnable
  = PSecurityEnable
PSecurityEnable
instance ToJSON PSecurityEnable where
  toJSON :: PSecurityEnable -> Value
toJSON PSecurityEnable
_ = Value
A.Null
instance Command PSecurityEnable where
  type CommandResponse PSecurityEnable = ()
  commandName :: Proxy PSecurityEnable -> String
commandName Proxy PSecurityEnable
_ = String
"Security.enable"
  fromJSON :: Proxy PSecurityEnable
-> Value -> Result (CommandResponse PSecurityEnable)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PSecurityEnable -> Result ())
-> Proxy PSecurityEnable
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PSecurityEnable -> ())
-> Proxy PSecurityEnable
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PSecurityEnable -> ()
forall a b. a -> b -> a
const ()

-- | Enable/disable whether all certificate errors should be ignored.

-- | Parameters of the 'Security.setIgnoreCertificateErrors' command.
data PSecuritySetIgnoreCertificateErrors = PSecuritySetIgnoreCertificateErrors
  {
    -- | If true, all certificate errors will be ignored.
    PSecuritySetIgnoreCertificateErrors -> Bool
pSecuritySetIgnoreCertificateErrorsIgnore :: Bool
  }
  deriving (PSecuritySetIgnoreCertificateErrors
-> PSecuritySetIgnoreCertificateErrors -> Bool
(PSecuritySetIgnoreCertificateErrors
 -> PSecuritySetIgnoreCertificateErrors -> Bool)
-> (PSecuritySetIgnoreCertificateErrors
    -> PSecuritySetIgnoreCertificateErrors -> Bool)
-> Eq PSecuritySetIgnoreCertificateErrors
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PSecuritySetIgnoreCertificateErrors
-> PSecuritySetIgnoreCertificateErrors -> Bool
$c/= :: PSecuritySetIgnoreCertificateErrors
-> PSecuritySetIgnoreCertificateErrors -> Bool
== :: PSecuritySetIgnoreCertificateErrors
-> PSecuritySetIgnoreCertificateErrors -> Bool
$c== :: PSecuritySetIgnoreCertificateErrors
-> PSecuritySetIgnoreCertificateErrors -> Bool
Eq, Int -> PSecuritySetIgnoreCertificateErrors -> ShowS
[PSecuritySetIgnoreCertificateErrors] -> ShowS
PSecuritySetIgnoreCertificateErrors -> String
(Int -> PSecuritySetIgnoreCertificateErrors -> ShowS)
-> (PSecuritySetIgnoreCertificateErrors -> String)
-> ([PSecuritySetIgnoreCertificateErrors] -> ShowS)
-> Show PSecuritySetIgnoreCertificateErrors
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PSecuritySetIgnoreCertificateErrors] -> ShowS
$cshowList :: [PSecuritySetIgnoreCertificateErrors] -> ShowS
show :: PSecuritySetIgnoreCertificateErrors -> String
$cshow :: PSecuritySetIgnoreCertificateErrors -> String
showsPrec :: Int -> PSecuritySetIgnoreCertificateErrors -> ShowS
$cshowsPrec :: Int -> PSecuritySetIgnoreCertificateErrors -> ShowS
Show)
pSecuritySetIgnoreCertificateErrors
  {-
  -- | If true, all certificate errors will be ignored.
  -}
  :: Bool
  -> PSecuritySetIgnoreCertificateErrors
pSecuritySetIgnoreCertificateErrors :: Bool -> PSecuritySetIgnoreCertificateErrors
pSecuritySetIgnoreCertificateErrors
  Bool
arg_pSecuritySetIgnoreCertificateErrorsIgnore
  = Bool -> PSecuritySetIgnoreCertificateErrors
PSecuritySetIgnoreCertificateErrors
    Bool
arg_pSecuritySetIgnoreCertificateErrorsIgnore
instance ToJSON PSecuritySetIgnoreCertificateErrors where
  toJSON :: PSecuritySetIgnoreCertificateErrors -> Value
toJSON PSecuritySetIgnoreCertificateErrors
p = [Pair] -> Value
A.object ([Pair] -> Value) -> [Pair] -> Value
forall a b. (a -> b) -> a -> b
$ [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
catMaybes [
    (Text
"ignore" Text -> Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
A..=) (Bool -> Pair) -> Maybe Bool -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> Bool -> Maybe Bool
forall a. a -> Maybe a
Just (PSecuritySetIgnoreCertificateErrors -> Bool
pSecuritySetIgnoreCertificateErrorsIgnore PSecuritySetIgnoreCertificateErrors
p)
    ]
instance Command PSecuritySetIgnoreCertificateErrors where
  type CommandResponse PSecuritySetIgnoreCertificateErrors = ()
  commandName :: Proxy PSecuritySetIgnoreCertificateErrors -> String
commandName Proxy PSecuritySetIgnoreCertificateErrors
_ = String
"Security.setIgnoreCertificateErrors"
  fromJSON :: Proxy PSecuritySetIgnoreCertificateErrors
-> Value
-> Result (CommandResponse PSecuritySetIgnoreCertificateErrors)
fromJSON = Result () -> Value -> Result ()
forall a b. a -> b -> a
const (Result () -> Value -> Result ())
-> (Proxy PSecuritySetIgnoreCertificateErrors -> Result ())
-> Proxy PSecuritySetIgnoreCertificateErrors
-> Value
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Result ()
forall a. a -> Result a
A.Success (() -> Result ())
-> (Proxy PSecuritySetIgnoreCertificateErrors -> ())
-> Proxy PSecuritySetIgnoreCertificateErrors
-> Result ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. () -> Proxy PSecuritySetIgnoreCertificateErrors -> ()
forall a b. a -> b -> a
const ()