{-# LANGUAGE DeriveDataTypeable #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# OPTIONS_GHC -fno-warn-unused-binds #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
module Network.Google.SearchConsole.Types.Product where
import Network.Google.Prelude
import Network.Google.SearchConsole.Types.Sum
data Image = Image'
{ _iData :: !(Maybe Bytes)
, _iMimeType :: !(Maybe Text)
} deriving (Eq,Show,Data,Typeable,Generic)
image
:: Image
image =
Image'
{ _iData = Nothing
, _iMimeType = Nothing
}
iData :: Lens' Image (Maybe ByteString)
iData
= lens _iData (\ s a -> s{_iData = a}) .
mapping _Bytes
iMimeType :: Lens' Image (Maybe Text)
iMimeType
= lens _iMimeType (\ s a -> s{_iMimeType = a})
instance FromJSON Image where
parseJSON
= withObject "Image"
(\ o ->
Image' <$> (o .:? "data") <*> (o .:? "mimeType"))
instance ToJSON Image where
toJSON Image'{..}
= object
(catMaybes
[("data" .=) <$> _iData,
("mimeType" .=) <$> _iMimeType])
newtype BlockedResource = BlockedResource'
{ _brURL :: Maybe Text
} deriving (Eq,Show,Data,Typeable,Generic)
blockedResource
:: BlockedResource
blockedResource =
BlockedResource'
{ _brURL = Nothing
}
brURL :: Lens' BlockedResource (Maybe Text)
brURL = lens _brURL (\ s a -> s{_brURL = a})
instance FromJSON BlockedResource where
parseJSON
= withObject "BlockedResource"
(\ o -> BlockedResource' <$> (o .:? "url"))
instance ToJSON BlockedResource where
toJSON BlockedResource'{..}
= object (catMaybes [("url" .=) <$> _brURL])
newtype ResourceIssue = ResourceIssue'
{ _riBlockedResource :: Maybe BlockedResource
} deriving (Eq,Show,Data,Typeable,Generic)
resourceIssue
:: ResourceIssue
resourceIssue =
ResourceIssue'
{ _riBlockedResource = Nothing
}
riBlockedResource :: Lens' ResourceIssue (Maybe BlockedResource)
riBlockedResource
= lens _riBlockedResource
(\ s a -> s{_riBlockedResource = a})
instance FromJSON ResourceIssue where
parseJSON
= withObject "ResourceIssue"
(\ o -> ResourceIssue' <$> (o .:? "blockedResource"))
instance ToJSON ResourceIssue where
toJSON ResourceIssue'{..}
= object
(catMaybes
[("blockedResource" .=) <$> _riBlockedResource])
data RunMobileFriendlyTestRequest = RunMobileFriendlyTestRequest'
{ _rmftrURL :: !(Maybe Text)
, _rmftrRequestScreenshot :: !(Maybe Bool)
} deriving (Eq,Show,Data,Typeable,Generic)
runMobileFriendlyTestRequest
:: RunMobileFriendlyTestRequest
runMobileFriendlyTestRequest =
RunMobileFriendlyTestRequest'
{ _rmftrURL = Nothing
, _rmftrRequestScreenshot = Nothing
}
rmftrURL :: Lens' RunMobileFriendlyTestRequest (Maybe Text)
rmftrURL = lens _rmftrURL (\ s a -> s{_rmftrURL = a})
rmftrRequestScreenshot :: Lens' RunMobileFriendlyTestRequest (Maybe Bool)
rmftrRequestScreenshot
= lens _rmftrRequestScreenshot
(\ s a -> s{_rmftrRequestScreenshot = a})
instance FromJSON RunMobileFriendlyTestRequest where
parseJSON
= withObject "RunMobileFriendlyTestRequest"
(\ o ->
RunMobileFriendlyTestRequest' <$>
(o .:? "url") <*> (o .:? "requestScreenshot"))
instance ToJSON RunMobileFriendlyTestRequest where
toJSON RunMobileFriendlyTestRequest'{..}
= object
(catMaybes
[("url" .=) <$> _rmftrURL,
("requestScreenshot" .=) <$>
_rmftrRequestScreenshot])
data TestStatus = TestStatus'
{ _tsStatus :: !(Maybe TestStatusStatus)
, _tsDetails :: !(Maybe Text)
} deriving (Eq,Show,Data,Typeable,Generic)
testStatus
:: TestStatus
testStatus =
TestStatus'
{ _tsStatus = Nothing
, _tsDetails = Nothing
}
tsStatus :: Lens' TestStatus (Maybe TestStatusStatus)
tsStatus = lens _tsStatus (\ s a -> s{_tsStatus = a})
tsDetails :: Lens' TestStatus (Maybe Text)
tsDetails
= lens _tsDetails (\ s a -> s{_tsDetails = a})
instance FromJSON TestStatus where
parseJSON
= withObject "TestStatus"
(\ o ->
TestStatus' <$>
(o .:? "status") <*> (o .:? "details"))
instance ToJSON TestStatus where
toJSON TestStatus'{..}
= object
(catMaybes
[("status" .=) <$> _tsStatus,
("details" .=) <$> _tsDetails])
data RunMobileFriendlyTestResponse = RunMobileFriendlyTestResponse'
{ _rmftrScreenshot :: !(Maybe Image)
, _rmftrResourceIssues :: !(Maybe [ResourceIssue])
, _rmftrMobileFriendliness :: !(Maybe RunMobileFriendlyTestResponseMobileFriendliness)
, _rmftrTestStatus :: !(Maybe TestStatus)
, _rmftrMobileFriendlyIssues :: !(Maybe [MobileFriendlyIssue])
} deriving (Eq,Show,Data,Typeable,Generic)
runMobileFriendlyTestResponse
:: RunMobileFriendlyTestResponse
runMobileFriendlyTestResponse =
RunMobileFriendlyTestResponse'
{ _rmftrScreenshot = Nothing
, _rmftrResourceIssues = Nothing
, _rmftrMobileFriendliness = Nothing
, _rmftrTestStatus = Nothing
, _rmftrMobileFriendlyIssues = Nothing
}
rmftrScreenshot :: Lens' RunMobileFriendlyTestResponse (Maybe Image)
rmftrScreenshot
= lens _rmftrScreenshot
(\ s a -> s{_rmftrScreenshot = a})
rmftrResourceIssues :: Lens' RunMobileFriendlyTestResponse [ResourceIssue]
rmftrResourceIssues
= lens _rmftrResourceIssues
(\ s a -> s{_rmftrResourceIssues = a})
. _Default
. _Coerce
rmftrMobileFriendliness :: Lens' RunMobileFriendlyTestResponse (Maybe RunMobileFriendlyTestResponseMobileFriendliness)
rmftrMobileFriendliness
= lens _rmftrMobileFriendliness
(\ s a -> s{_rmftrMobileFriendliness = a})
rmftrTestStatus :: Lens' RunMobileFriendlyTestResponse (Maybe TestStatus)
rmftrTestStatus
= lens _rmftrTestStatus
(\ s a -> s{_rmftrTestStatus = a})
rmftrMobileFriendlyIssues :: Lens' RunMobileFriendlyTestResponse [MobileFriendlyIssue]
rmftrMobileFriendlyIssues
= lens _rmftrMobileFriendlyIssues
(\ s a -> s{_rmftrMobileFriendlyIssues = a})
. _Default
. _Coerce
instance FromJSON RunMobileFriendlyTestResponse where
parseJSON
= withObject "RunMobileFriendlyTestResponse"
(\ o ->
RunMobileFriendlyTestResponse' <$>
(o .:? "screenshot") <*>
(o .:? "resourceIssues" .!= mempty)
<*> (o .:? "mobileFriendliness")
<*> (o .:? "testStatus")
<*> (o .:? "mobileFriendlyIssues" .!= mempty))
instance ToJSON RunMobileFriendlyTestResponse where
toJSON RunMobileFriendlyTestResponse'{..}
= object
(catMaybes
[("screenshot" .=) <$> _rmftrScreenshot,
("resourceIssues" .=) <$> _rmftrResourceIssues,
("mobileFriendliness" .=) <$>
_rmftrMobileFriendliness,
("testStatus" .=) <$> _rmftrTestStatus,
("mobileFriendlyIssues" .=) <$>
_rmftrMobileFriendlyIssues])
newtype MobileFriendlyIssue = MobileFriendlyIssue'
{ _mfiRule :: Maybe MobileFriendlyIssueRule
} deriving (Eq,Show,Data,Typeable,Generic)
mobileFriendlyIssue
:: MobileFriendlyIssue
mobileFriendlyIssue =
MobileFriendlyIssue'
{ _mfiRule = Nothing
}
mfiRule :: Lens' MobileFriendlyIssue (Maybe MobileFriendlyIssueRule)
mfiRule = lens _mfiRule (\ s a -> s{_mfiRule = a})
instance FromJSON MobileFriendlyIssue where
parseJSON
= withObject "MobileFriendlyIssue"
(\ o -> MobileFriendlyIssue' <$> (o .:? "rule"))
instance ToJSON MobileFriendlyIssue where
toJSON MobileFriendlyIssue'{..}
= object (catMaybes [("rule" .=) <$> _mfiRule])