{-# 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.Translate.Types.Product where
import Network.Google.Prelude
import Network.Google.Translate.Types.Sum
data TranslationsResource = TranslationsResource'
{ _trDetectedSourceLanguage :: !(Maybe Text)
, _trTranslatedText :: !(Maybe Text)
} deriving (Eq,Show,Data,Typeable,Generic)
translationsResource
:: TranslationsResource
translationsResource =
TranslationsResource'
{ _trDetectedSourceLanguage = Nothing
, _trTranslatedText = Nothing
}
trDetectedSourceLanguage :: Lens' TranslationsResource (Maybe Text)
trDetectedSourceLanguage
= lens _trDetectedSourceLanguage
(\ s a -> s{_trDetectedSourceLanguage = a})
trTranslatedText :: Lens' TranslationsResource (Maybe Text)
trTranslatedText
= lens _trTranslatedText
(\ s a -> s{_trTranslatedText = a})
instance FromJSON TranslationsResource where
parseJSON
= withObject "TranslationsResource"
(\ o ->
TranslationsResource' <$>
(o .:? "detectedSourceLanguage") <*>
(o .:? "translatedText"))
instance ToJSON TranslationsResource where
toJSON TranslationsResource'{..}
= object
(catMaybes
[("detectedSourceLanguage" .=) <$>
_trDetectedSourceLanguage,
("translatedText" .=) <$> _trTranslatedText])
newtype DetectionsListResponse = DetectionsListResponse'
{ _dlrDetections :: Maybe [[DetectionsResourceItem]]
} deriving (Eq,Show,Data,Typeable,Generic)
detectionsListResponse
:: DetectionsListResponse
detectionsListResponse =
DetectionsListResponse'
{ _dlrDetections = Nothing
}
dlrDetections :: Lens' DetectionsListResponse [[DetectionsResourceItem]]
dlrDetections
= lens _dlrDetections
(\ s a -> s{_dlrDetections = a})
. _Default
. _Coerce
instance FromJSON DetectionsListResponse where
parseJSON
= withObject "DetectionsListResponse"
(\ o ->
DetectionsListResponse' <$>
(o .:? "detections" .!= mempty))
instance ToJSON DetectionsListResponse where
toJSON DetectionsListResponse'{..}
= object
(catMaybes [("detections" .=) <$> _dlrDetections])
newtype LanguagesListResponse = LanguagesListResponse'
{ _llrLanguages :: Maybe [LanguagesResource]
} deriving (Eq,Show,Data,Typeable,Generic)
languagesListResponse
:: LanguagesListResponse
languagesListResponse =
LanguagesListResponse'
{ _llrLanguages = Nothing
}
llrLanguages :: Lens' LanguagesListResponse [LanguagesResource]
llrLanguages
= lens _llrLanguages (\ s a -> s{_llrLanguages = a})
. _Default
. _Coerce
instance FromJSON LanguagesListResponse where
parseJSON
= withObject "LanguagesListResponse"
(\ o ->
LanguagesListResponse' <$>
(o .:? "languages" .!= mempty))
instance ToJSON LanguagesListResponse where
toJSON LanguagesListResponse'{..}
= object
(catMaybes [("languages" .=) <$> _llrLanguages])
data DetectionsResourceItem = DetectionsResourceItem'
{ _driConfidence :: !(Maybe (Textual Double))
, _driIsReliable :: !(Maybe Bool)
, _driLanguage :: !(Maybe Text)
} deriving (Eq,Show,Data,Typeable,Generic)
detectionsResourceItem
:: DetectionsResourceItem
detectionsResourceItem =
DetectionsResourceItem'
{ _driConfidence = Nothing
, _driIsReliable = Nothing
, _driLanguage = Nothing
}
driConfidence :: Lens' DetectionsResourceItem (Maybe Double)
driConfidence
= lens _driConfidence
(\ s a -> s{_driConfidence = a})
. mapping _Coerce
driIsReliable :: Lens' DetectionsResourceItem (Maybe Bool)
driIsReliable
= lens _driIsReliable
(\ s a -> s{_driIsReliable = a})
driLanguage :: Lens' DetectionsResourceItem (Maybe Text)
driLanguage
= lens _driLanguage (\ s a -> s{_driLanguage = a})
instance FromJSON DetectionsResourceItem where
parseJSON
= withObject "DetectionsResourceItem"
(\ o ->
DetectionsResourceItem' <$>
(o .:? "confidence") <*> (o .:? "isReliable") <*>
(o .:? "language"))
instance ToJSON DetectionsResourceItem where
toJSON DetectionsResourceItem'{..}
= object
(catMaybes
[("confidence" .=) <$> _driConfidence,
("isReliable" .=) <$> _driIsReliable,
("language" .=) <$> _driLanguage])
data LanguagesResource = LanguagesResource'
{ _lrName :: !(Maybe Text)
, _lrLanguage :: !(Maybe Text)
} deriving (Eq,Show,Data,Typeable,Generic)
languagesResource
:: LanguagesResource
languagesResource =
LanguagesResource'
{ _lrName = Nothing
, _lrLanguage = Nothing
}
lrName :: Lens' LanguagesResource (Maybe Text)
lrName = lens _lrName (\ s a -> s{_lrName = a})
lrLanguage :: Lens' LanguagesResource (Maybe Text)
lrLanguage
= lens _lrLanguage (\ s a -> s{_lrLanguage = a})
instance FromJSON LanguagesResource where
parseJSON
= withObject "LanguagesResource"
(\ o ->
LanguagesResource' <$>
(o .:? "name") <*> (o .:? "language"))
instance ToJSON LanguagesResource where
toJSON LanguagesResource'{..}
= object
(catMaybes
[("name" .=) <$> _lrName,
("language" .=) <$> _lrLanguage])
newtype TranslationsListResponse = TranslationsListResponse'
{ _tlrTranslations :: Maybe [TranslationsResource]
} deriving (Eq,Show,Data,Typeable,Generic)
translationsListResponse
:: TranslationsListResponse
translationsListResponse =
TranslationsListResponse'
{ _tlrTranslations = Nothing
}
tlrTranslations :: Lens' TranslationsListResponse [TranslationsResource]
tlrTranslations
= lens _tlrTranslations
(\ s a -> s{_tlrTranslations = a})
. _Default
. _Coerce
instance FromJSON TranslationsListResponse where
parseJSON
= withObject "TranslationsListResponse"
(\ o ->
TranslationsListResponse' <$>
(o .:? "translations" .!= mempty))
instance ToJSON TranslationsListResponse where
toJSON TranslationsListResponse'{..}
= object
(catMaybes
[("translations" .=) <$> _tlrTranslations])