gogol-books 0.0.1 → 0.1.0
raw patch · 54 files changed
+8514/−7410 lines, 54 filesdep ~gogol-corePVP ok
version bump matches the API change (PVP)
Dependency ranges changed: gogol-core
API changes (from Hackage documentation)
- Network.Google.Books: nLinkURL :: Lens' Notification (Maybe Text)
- Network.Google.Books.Types: nLinkURL :: Lens' Notification (Maybe Text)
- Network.Google.Resource.Books.Bookshelves.Get: instance GHC.Generics.Constructor Network.Google.Resource.Books.Bookshelves.Get.C1_0BookshelvesGet
- Network.Google.Resource.Books.Bookshelves.Get: instance GHC.Generics.Datatype Network.Google.Resource.Books.Bookshelves.Get.D1BookshelvesGet
- Network.Google.Resource.Books.Bookshelves.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.Bookshelves.Get.S1_0_0BookshelvesGet
- Network.Google.Resource.Books.Bookshelves.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.Bookshelves.Get.S1_0_1BookshelvesGet
- Network.Google.Resource.Books.Bookshelves.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.Bookshelves.Get.S1_0_2BookshelvesGet
- Network.Google.Resource.Books.Bookshelves.List: instance GHC.Generics.Constructor Network.Google.Resource.Books.Bookshelves.List.C1_0BookshelvesList
- Network.Google.Resource.Books.Bookshelves.List: instance GHC.Generics.Datatype Network.Google.Resource.Books.Bookshelves.List.D1BookshelvesList
- Network.Google.Resource.Books.Bookshelves.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Bookshelves.List.S1_0_0BookshelvesList
- Network.Google.Resource.Books.Bookshelves.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Bookshelves.List.S1_0_1BookshelvesList
- Network.Google.Resource.Books.Bookshelves.Volumes.List: instance GHC.Generics.Constructor Network.Google.Resource.Books.Bookshelves.Volumes.List.C1_0BookshelvesVolumesList
- Network.Google.Resource.Books.Bookshelves.Volumes.List: instance GHC.Generics.Datatype Network.Google.Resource.Books.Bookshelves.Volumes.List.D1BookshelvesVolumesList
- Network.Google.Resource.Books.Bookshelves.Volumes.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Bookshelves.Volumes.List.S1_0_0BookshelvesVolumesList
- Network.Google.Resource.Books.Bookshelves.Volumes.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Bookshelves.Volumes.List.S1_0_1BookshelvesVolumesList
- Network.Google.Resource.Books.Bookshelves.Volumes.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Bookshelves.Volumes.List.S1_0_2BookshelvesVolumesList
- Network.Google.Resource.Books.Bookshelves.Volumes.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Bookshelves.Volumes.List.S1_0_3BookshelvesVolumesList
- Network.Google.Resource.Books.Bookshelves.Volumes.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Bookshelves.Volumes.List.S1_0_4BookshelvesVolumesList
- Network.Google.Resource.Books.Bookshelves.Volumes.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Bookshelves.Volumes.List.S1_0_5BookshelvesVolumesList
- Network.Google.Resource.Books.CloudLoading.AddBook: instance GHC.Generics.Constructor Network.Google.Resource.Books.CloudLoading.AddBook.C1_0CloudLoadingAddBook
- Network.Google.Resource.Books.CloudLoading.AddBook: instance GHC.Generics.Datatype Network.Google.Resource.Books.CloudLoading.AddBook.D1CloudLoadingAddBook
- Network.Google.Resource.Books.CloudLoading.AddBook: instance GHC.Generics.Selector Network.Google.Resource.Books.CloudLoading.AddBook.S1_0_0CloudLoadingAddBook
- Network.Google.Resource.Books.CloudLoading.AddBook: instance GHC.Generics.Selector Network.Google.Resource.Books.CloudLoading.AddBook.S1_0_1CloudLoadingAddBook
- Network.Google.Resource.Books.CloudLoading.AddBook: instance GHC.Generics.Selector Network.Google.Resource.Books.CloudLoading.AddBook.S1_0_2CloudLoadingAddBook
- Network.Google.Resource.Books.CloudLoading.AddBook: instance GHC.Generics.Selector Network.Google.Resource.Books.CloudLoading.AddBook.S1_0_3CloudLoadingAddBook
- Network.Google.Resource.Books.CloudLoading.DeleteBook: instance GHC.Generics.Constructor Network.Google.Resource.Books.CloudLoading.DeleteBook.C1_0CloudLoadingDeleteBook
- Network.Google.Resource.Books.CloudLoading.DeleteBook: instance GHC.Generics.Datatype Network.Google.Resource.Books.CloudLoading.DeleteBook.D1CloudLoadingDeleteBook
- Network.Google.Resource.Books.CloudLoading.DeleteBook: instance GHC.Generics.Selector Network.Google.Resource.Books.CloudLoading.DeleteBook.S1_0_0CloudLoadingDeleteBook
- Network.Google.Resource.Books.CloudLoading.UpdateBook: instance GHC.Generics.Constructor Network.Google.Resource.Books.CloudLoading.UpdateBook.C1_0CloudLoadingUpdateBook
- Network.Google.Resource.Books.CloudLoading.UpdateBook: instance GHC.Generics.Datatype Network.Google.Resource.Books.CloudLoading.UpdateBook.D1CloudLoadingUpdateBook
- Network.Google.Resource.Books.CloudLoading.UpdateBook: instance GHC.Generics.Selector Network.Google.Resource.Books.CloudLoading.UpdateBook.S1_0_0CloudLoadingUpdateBook
- Network.Google.Resource.Books.Dictionary.ListOfflineMetadata: instance GHC.Generics.Constructor Network.Google.Resource.Books.Dictionary.ListOfflineMetadata.C1_0DictionaryListOfflineMetadata
- Network.Google.Resource.Books.Dictionary.ListOfflineMetadata: instance GHC.Generics.Datatype Network.Google.Resource.Books.Dictionary.ListOfflineMetadata.D1DictionaryListOfflineMetadata
- Network.Google.Resource.Books.Dictionary.ListOfflineMetadata: instance GHC.Generics.Selector Network.Google.Resource.Books.Dictionary.ListOfflineMetadata.S1_0_0DictionaryListOfflineMetadata
- Network.Google.Resource.Books.Layers.AnnotationData.Get: instance GHC.Generics.Constructor Network.Google.Resource.Books.Layers.AnnotationData.Get.C1_0LayersAnnotationDataGet
- Network.Google.Resource.Books.Layers.AnnotationData.Get: instance GHC.Generics.Datatype Network.Google.Resource.Books.Layers.AnnotationData.Get.D1LayersAnnotationDataGet
- Network.Google.Resource.Books.Layers.AnnotationData.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.AnnotationData.Get.S1_0_0LayersAnnotationDataGet
- Network.Google.Resource.Books.Layers.AnnotationData.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.AnnotationData.Get.S1_0_1LayersAnnotationDataGet
- Network.Google.Resource.Books.Layers.AnnotationData.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.AnnotationData.Get.S1_0_2LayersAnnotationDataGet
- Network.Google.Resource.Books.Layers.AnnotationData.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.AnnotationData.Get.S1_0_3LayersAnnotationDataGet
- Network.Google.Resource.Books.Layers.AnnotationData.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.AnnotationData.Get.S1_0_4LayersAnnotationDataGet
- Network.Google.Resource.Books.Layers.AnnotationData.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.AnnotationData.Get.S1_0_5LayersAnnotationDataGet
- Network.Google.Resource.Books.Layers.AnnotationData.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.AnnotationData.Get.S1_0_6LayersAnnotationDataGet
- Network.Google.Resource.Books.Layers.AnnotationData.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.AnnotationData.Get.S1_0_7LayersAnnotationDataGet
- Network.Google.Resource.Books.Layers.AnnotationData.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.AnnotationData.Get.S1_0_8LayersAnnotationDataGet
- Network.Google.Resource.Books.Layers.AnnotationData.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.AnnotationData.Get.S1_0_9LayersAnnotationDataGet
- Network.Google.Resource.Books.Layers.AnnotationData.List: instance GHC.Generics.Constructor Network.Google.Resource.Books.Layers.AnnotationData.List.C1_0LayersAnnotationDataList
- Network.Google.Resource.Books.Layers.AnnotationData.List: instance GHC.Generics.Datatype Network.Google.Resource.Books.Layers.AnnotationData.List.D1LayersAnnotationDataList
- Network.Google.Resource.Books.Layers.AnnotationData.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.AnnotationData.List.S1_0_0LayersAnnotationDataList
- Network.Google.Resource.Books.Layers.AnnotationData.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.AnnotationData.List.S1_0_10LayersAnnotationDataList
- Network.Google.Resource.Books.Layers.AnnotationData.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.AnnotationData.List.S1_0_11LayersAnnotationDataList
- Network.Google.Resource.Books.Layers.AnnotationData.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.AnnotationData.List.S1_0_12LayersAnnotationDataList
- Network.Google.Resource.Books.Layers.AnnotationData.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.AnnotationData.List.S1_0_1LayersAnnotationDataList
- Network.Google.Resource.Books.Layers.AnnotationData.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.AnnotationData.List.S1_0_2LayersAnnotationDataList
- Network.Google.Resource.Books.Layers.AnnotationData.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.AnnotationData.List.S1_0_3LayersAnnotationDataList
- Network.Google.Resource.Books.Layers.AnnotationData.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.AnnotationData.List.S1_0_4LayersAnnotationDataList
- Network.Google.Resource.Books.Layers.AnnotationData.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.AnnotationData.List.S1_0_5LayersAnnotationDataList
- Network.Google.Resource.Books.Layers.AnnotationData.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.AnnotationData.List.S1_0_6LayersAnnotationDataList
- Network.Google.Resource.Books.Layers.AnnotationData.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.AnnotationData.List.S1_0_7LayersAnnotationDataList
- Network.Google.Resource.Books.Layers.AnnotationData.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.AnnotationData.List.S1_0_8LayersAnnotationDataList
- Network.Google.Resource.Books.Layers.AnnotationData.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.AnnotationData.List.S1_0_9LayersAnnotationDataList
- Network.Google.Resource.Books.Layers.Get: instance GHC.Generics.Constructor Network.Google.Resource.Books.Layers.Get.C1_0LayersGet
- Network.Google.Resource.Books.Layers.Get: instance GHC.Generics.Datatype Network.Google.Resource.Books.Layers.Get.D1LayersGet
- Network.Google.Resource.Books.Layers.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.Get.S1_0_0LayersGet
- Network.Google.Resource.Books.Layers.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.Get.S1_0_1LayersGet
- Network.Google.Resource.Books.Layers.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.Get.S1_0_2LayersGet
- Network.Google.Resource.Books.Layers.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.Get.S1_0_3LayersGet
- Network.Google.Resource.Books.Layers.List: instance GHC.Generics.Constructor Network.Google.Resource.Books.Layers.List.C1_0LayersList
- Network.Google.Resource.Books.Layers.List: instance GHC.Generics.Datatype Network.Google.Resource.Books.Layers.List.D1LayersList
- Network.Google.Resource.Books.Layers.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.List.S1_0_0LayersList
- Network.Google.Resource.Books.Layers.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.List.S1_0_1LayersList
- Network.Google.Resource.Books.Layers.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.List.S1_0_2LayersList
- Network.Google.Resource.Books.Layers.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.List.S1_0_3LayersList
- Network.Google.Resource.Books.Layers.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.List.S1_0_4LayersList
- Network.Google.Resource.Books.Layers.VolumeAnnotations.Get: instance GHC.Generics.Constructor Network.Google.Resource.Books.Layers.VolumeAnnotations.Get.C1_0LayersVolumeAnnotationsGet
- Network.Google.Resource.Books.Layers.VolumeAnnotations.Get: instance GHC.Generics.Datatype Network.Google.Resource.Books.Layers.VolumeAnnotations.Get.D1LayersVolumeAnnotationsGet
- Network.Google.Resource.Books.Layers.VolumeAnnotations.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.VolumeAnnotations.Get.S1_0_0LayersVolumeAnnotationsGet
- Network.Google.Resource.Books.Layers.VolumeAnnotations.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.VolumeAnnotations.Get.S1_0_1LayersVolumeAnnotationsGet
- Network.Google.Resource.Books.Layers.VolumeAnnotations.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.VolumeAnnotations.Get.S1_0_2LayersVolumeAnnotationsGet
- Network.Google.Resource.Books.Layers.VolumeAnnotations.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.VolumeAnnotations.Get.S1_0_3LayersVolumeAnnotationsGet
- Network.Google.Resource.Books.Layers.VolumeAnnotations.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.VolumeAnnotations.Get.S1_0_4LayersVolumeAnnotationsGet
- Network.Google.Resource.Books.Layers.VolumeAnnotations.List: instance GHC.Generics.Constructor Network.Google.Resource.Books.Layers.VolumeAnnotations.List.C1_0LayersVolumeAnnotationsList
- Network.Google.Resource.Books.Layers.VolumeAnnotations.List: instance GHC.Generics.Datatype Network.Google.Resource.Books.Layers.VolumeAnnotations.List.D1LayersVolumeAnnotationsList
- Network.Google.Resource.Books.Layers.VolumeAnnotations.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.VolumeAnnotations.List.S1_0_0LayersVolumeAnnotationsList
- Network.Google.Resource.Books.Layers.VolumeAnnotations.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.VolumeAnnotations.List.S1_0_10LayersVolumeAnnotationsList
- Network.Google.Resource.Books.Layers.VolumeAnnotations.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.VolumeAnnotations.List.S1_0_11LayersVolumeAnnotationsList
- Network.Google.Resource.Books.Layers.VolumeAnnotations.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.VolumeAnnotations.List.S1_0_12LayersVolumeAnnotationsList
- Network.Google.Resource.Books.Layers.VolumeAnnotations.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.VolumeAnnotations.List.S1_0_13LayersVolumeAnnotationsList
- Network.Google.Resource.Books.Layers.VolumeAnnotations.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.VolumeAnnotations.List.S1_0_14LayersVolumeAnnotationsList
- Network.Google.Resource.Books.Layers.VolumeAnnotations.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.VolumeAnnotations.List.S1_0_1LayersVolumeAnnotationsList
- Network.Google.Resource.Books.Layers.VolumeAnnotations.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.VolumeAnnotations.List.S1_0_2LayersVolumeAnnotationsList
- Network.Google.Resource.Books.Layers.VolumeAnnotations.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.VolumeAnnotations.List.S1_0_3LayersVolumeAnnotationsList
- Network.Google.Resource.Books.Layers.VolumeAnnotations.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.VolumeAnnotations.List.S1_0_4LayersVolumeAnnotationsList
- Network.Google.Resource.Books.Layers.VolumeAnnotations.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.VolumeAnnotations.List.S1_0_5LayersVolumeAnnotationsList
- Network.Google.Resource.Books.Layers.VolumeAnnotations.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.VolumeAnnotations.List.S1_0_6LayersVolumeAnnotationsList
- Network.Google.Resource.Books.Layers.VolumeAnnotations.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.VolumeAnnotations.List.S1_0_7LayersVolumeAnnotationsList
- Network.Google.Resource.Books.Layers.VolumeAnnotations.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.VolumeAnnotations.List.S1_0_8LayersVolumeAnnotationsList
- Network.Google.Resource.Books.Layers.VolumeAnnotations.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Layers.VolumeAnnotations.List.S1_0_9LayersVolumeAnnotationsList
- Network.Google.Resource.Books.MyConfig.GetUserSettings: instance GHC.Generics.Constructor Network.Google.Resource.Books.MyConfig.GetUserSettings.C1_0MyConfigGetUserSettings
- Network.Google.Resource.Books.MyConfig.GetUserSettings: instance GHC.Generics.Datatype Network.Google.Resource.Books.MyConfig.GetUserSettings.D1MyConfigGetUserSettings
- Network.Google.Resource.Books.MyConfig.ReleaseDownloadAccess: instance GHC.Generics.Constructor Network.Google.Resource.Books.MyConfig.ReleaseDownloadAccess.C1_0MyConfigReleaseDownloadAccess
- Network.Google.Resource.Books.MyConfig.ReleaseDownloadAccess: instance GHC.Generics.Datatype Network.Google.Resource.Books.MyConfig.ReleaseDownloadAccess.D1MyConfigReleaseDownloadAccess
- Network.Google.Resource.Books.MyConfig.ReleaseDownloadAccess: instance GHC.Generics.Selector Network.Google.Resource.Books.MyConfig.ReleaseDownloadAccess.S1_0_0MyConfigReleaseDownloadAccess
- Network.Google.Resource.Books.MyConfig.ReleaseDownloadAccess: instance GHC.Generics.Selector Network.Google.Resource.Books.MyConfig.ReleaseDownloadAccess.S1_0_1MyConfigReleaseDownloadAccess
- Network.Google.Resource.Books.MyConfig.ReleaseDownloadAccess: instance GHC.Generics.Selector Network.Google.Resource.Books.MyConfig.ReleaseDownloadAccess.S1_0_2MyConfigReleaseDownloadAccess
- Network.Google.Resource.Books.MyConfig.ReleaseDownloadAccess: instance GHC.Generics.Selector Network.Google.Resource.Books.MyConfig.ReleaseDownloadAccess.S1_0_3MyConfigReleaseDownloadAccess
- Network.Google.Resource.Books.MyConfig.RequestAccess: instance GHC.Generics.Constructor Network.Google.Resource.Books.MyConfig.RequestAccess.C1_0MyConfigRequestAccess
- Network.Google.Resource.Books.MyConfig.RequestAccess: instance GHC.Generics.Datatype Network.Google.Resource.Books.MyConfig.RequestAccess.D1MyConfigRequestAccess
- Network.Google.Resource.Books.MyConfig.RequestAccess: instance GHC.Generics.Selector Network.Google.Resource.Books.MyConfig.RequestAccess.S1_0_0MyConfigRequestAccess
- Network.Google.Resource.Books.MyConfig.RequestAccess: instance GHC.Generics.Selector Network.Google.Resource.Books.MyConfig.RequestAccess.S1_0_1MyConfigRequestAccess
- Network.Google.Resource.Books.MyConfig.RequestAccess: instance GHC.Generics.Selector Network.Google.Resource.Books.MyConfig.RequestAccess.S1_0_2MyConfigRequestAccess
- Network.Google.Resource.Books.MyConfig.RequestAccess: instance GHC.Generics.Selector Network.Google.Resource.Books.MyConfig.RequestAccess.S1_0_3MyConfigRequestAccess
- Network.Google.Resource.Books.MyConfig.RequestAccess: instance GHC.Generics.Selector Network.Google.Resource.Books.MyConfig.RequestAccess.S1_0_4MyConfigRequestAccess
- Network.Google.Resource.Books.MyConfig.RequestAccess: instance GHC.Generics.Selector Network.Google.Resource.Books.MyConfig.RequestAccess.S1_0_5MyConfigRequestAccess
- Network.Google.Resource.Books.MyConfig.SyncVolumeLicenses: instance GHC.Generics.Constructor Network.Google.Resource.Books.MyConfig.SyncVolumeLicenses.C1_0MyConfigSyncVolumeLicenses
- Network.Google.Resource.Books.MyConfig.SyncVolumeLicenses: instance GHC.Generics.Datatype Network.Google.Resource.Books.MyConfig.SyncVolumeLicenses.D1MyConfigSyncVolumeLicenses
- Network.Google.Resource.Books.MyConfig.SyncVolumeLicenses: instance GHC.Generics.Selector Network.Google.Resource.Books.MyConfig.SyncVolumeLicenses.S1_0_0MyConfigSyncVolumeLicenses
- Network.Google.Resource.Books.MyConfig.SyncVolumeLicenses: instance GHC.Generics.Selector Network.Google.Resource.Books.MyConfig.SyncVolumeLicenses.S1_0_1MyConfigSyncVolumeLicenses
- Network.Google.Resource.Books.MyConfig.SyncVolumeLicenses: instance GHC.Generics.Selector Network.Google.Resource.Books.MyConfig.SyncVolumeLicenses.S1_0_2MyConfigSyncVolumeLicenses
- Network.Google.Resource.Books.MyConfig.SyncVolumeLicenses: instance GHC.Generics.Selector Network.Google.Resource.Books.MyConfig.SyncVolumeLicenses.S1_0_3MyConfigSyncVolumeLicenses
- Network.Google.Resource.Books.MyConfig.SyncVolumeLicenses: instance GHC.Generics.Selector Network.Google.Resource.Books.MyConfig.SyncVolumeLicenses.S1_0_4MyConfigSyncVolumeLicenses
- Network.Google.Resource.Books.MyConfig.SyncVolumeLicenses: instance GHC.Generics.Selector Network.Google.Resource.Books.MyConfig.SyncVolumeLicenses.S1_0_5MyConfigSyncVolumeLicenses
- Network.Google.Resource.Books.MyConfig.SyncVolumeLicenses: instance GHC.Generics.Selector Network.Google.Resource.Books.MyConfig.SyncVolumeLicenses.S1_0_6MyConfigSyncVolumeLicenses
- Network.Google.Resource.Books.MyConfig.UpdateUserSettings: instance GHC.Generics.Constructor Network.Google.Resource.Books.MyConfig.UpdateUserSettings.C1_0MyConfigUpdateUserSettings
- Network.Google.Resource.Books.MyConfig.UpdateUserSettings: instance GHC.Generics.Datatype Network.Google.Resource.Books.MyConfig.UpdateUserSettings.D1MyConfigUpdateUserSettings
- Network.Google.Resource.Books.MyConfig.UpdateUserSettings: instance GHC.Generics.Selector Network.Google.Resource.Books.MyConfig.UpdateUserSettings.S1_0_0MyConfigUpdateUserSettings
- Network.Google.Resource.Books.MyLibrary.Annotations.Delete: instance GHC.Generics.Constructor Network.Google.Resource.Books.MyLibrary.Annotations.Delete.C1_0MyLibraryAnnotationsDelete
- Network.Google.Resource.Books.MyLibrary.Annotations.Delete: instance GHC.Generics.Datatype Network.Google.Resource.Books.MyLibrary.Annotations.Delete.D1MyLibraryAnnotationsDelete
- Network.Google.Resource.Books.MyLibrary.Annotations.Delete: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Annotations.Delete.S1_0_0MyLibraryAnnotationsDelete
- Network.Google.Resource.Books.MyLibrary.Annotations.Delete: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Annotations.Delete.S1_0_1MyLibraryAnnotationsDelete
- Network.Google.Resource.Books.MyLibrary.Annotations.Insert: instance GHC.Generics.Constructor Network.Google.Resource.Books.MyLibrary.Annotations.Insert.C1_0MyLibraryAnnotationsInsert
- Network.Google.Resource.Books.MyLibrary.Annotations.Insert: instance GHC.Generics.Datatype Network.Google.Resource.Books.MyLibrary.Annotations.Insert.D1MyLibraryAnnotationsInsert
- Network.Google.Resource.Books.MyLibrary.Annotations.Insert: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Annotations.Insert.S1_0_0MyLibraryAnnotationsInsert
- Network.Google.Resource.Books.MyLibrary.Annotations.Insert: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Annotations.Insert.S1_0_1MyLibraryAnnotationsInsert
- Network.Google.Resource.Books.MyLibrary.Annotations.Insert: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Annotations.Insert.S1_0_2MyLibraryAnnotationsInsert
- Network.Google.Resource.Books.MyLibrary.Annotations.Insert: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Annotations.Insert.S1_0_3MyLibraryAnnotationsInsert
- Network.Google.Resource.Books.MyLibrary.Annotations.List: instance GHC.Generics.Constructor Network.Google.Resource.Books.MyLibrary.Annotations.List.C1_0MyLibraryAnnotationsList
- Network.Google.Resource.Books.MyLibrary.Annotations.List: instance GHC.Generics.Datatype Network.Google.Resource.Books.MyLibrary.Annotations.List.D1MyLibraryAnnotationsList
- Network.Google.Resource.Books.MyLibrary.Annotations.List: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Annotations.List.S1_0_0MyLibraryAnnotationsList
- Network.Google.Resource.Books.MyLibrary.Annotations.List: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Annotations.List.S1_0_1MyLibraryAnnotationsList
- Network.Google.Resource.Books.MyLibrary.Annotations.List: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Annotations.List.S1_0_2MyLibraryAnnotationsList
- Network.Google.Resource.Books.MyLibrary.Annotations.List: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Annotations.List.S1_0_3MyLibraryAnnotationsList
- Network.Google.Resource.Books.MyLibrary.Annotations.List: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Annotations.List.S1_0_4MyLibraryAnnotationsList
- Network.Google.Resource.Books.MyLibrary.Annotations.List: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Annotations.List.S1_0_5MyLibraryAnnotationsList
- Network.Google.Resource.Books.MyLibrary.Annotations.List: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Annotations.List.S1_0_6MyLibraryAnnotationsList
- Network.Google.Resource.Books.MyLibrary.Annotations.List: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Annotations.List.S1_0_7MyLibraryAnnotationsList
- Network.Google.Resource.Books.MyLibrary.Annotations.List: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Annotations.List.S1_0_8MyLibraryAnnotationsList
- Network.Google.Resource.Books.MyLibrary.Annotations.List: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Annotations.List.S1_0_9MyLibraryAnnotationsList
- Network.Google.Resource.Books.MyLibrary.Annotations.Summary: instance GHC.Generics.Constructor Network.Google.Resource.Books.MyLibrary.Annotations.Summary.C1_0MyLibraryAnnotationsSummary
- Network.Google.Resource.Books.MyLibrary.Annotations.Summary: instance GHC.Generics.Datatype Network.Google.Resource.Books.MyLibrary.Annotations.Summary.D1MyLibraryAnnotationsSummary
- Network.Google.Resource.Books.MyLibrary.Annotations.Summary: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Annotations.Summary.S1_0_0MyLibraryAnnotationsSummary
- Network.Google.Resource.Books.MyLibrary.Annotations.Summary: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Annotations.Summary.S1_0_1MyLibraryAnnotationsSummary
- Network.Google.Resource.Books.MyLibrary.Annotations.Update: instance GHC.Generics.Constructor Network.Google.Resource.Books.MyLibrary.Annotations.Update.C1_0MyLibraryAnnotationsUpdate
- Network.Google.Resource.Books.MyLibrary.Annotations.Update: instance GHC.Generics.Datatype Network.Google.Resource.Books.MyLibrary.Annotations.Update.D1MyLibraryAnnotationsUpdate
- Network.Google.Resource.Books.MyLibrary.Annotations.Update: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Annotations.Update.S1_0_0MyLibraryAnnotationsUpdate
- Network.Google.Resource.Books.MyLibrary.Annotations.Update: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Annotations.Update.S1_0_1MyLibraryAnnotationsUpdate
- Network.Google.Resource.Books.MyLibrary.Annotations.Update: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Annotations.Update.S1_0_2MyLibraryAnnotationsUpdate
- Network.Google.Resource.Books.MyLibrary.Bookshelves.AddVolume: instance GHC.Generics.Constructor Network.Google.Resource.Books.MyLibrary.Bookshelves.AddVolume.C1_0MyLibraryBookshelvesAddVolume
- Network.Google.Resource.Books.MyLibrary.Bookshelves.AddVolume: instance GHC.Generics.Datatype Network.Google.Resource.Books.MyLibrary.Bookshelves.AddVolume.D1MyLibraryBookshelvesAddVolume
- Network.Google.Resource.Books.MyLibrary.Bookshelves.AddVolume: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Bookshelves.AddVolume.S1_0_0MyLibraryBookshelvesAddVolume
- Network.Google.Resource.Books.MyLibrary.Bookshelves.AddVolume: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Bookshelves.AddVolume.S1_0_1MyLibraryBookshelvesAddVolume
- Network.Google.Resource.Books.MyLibrary.Bookshelves.AddVolume: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Bookshelves.AddVolume.S1_0_2MyLibraryBookshelvesAddVolume
- Network.Google.Resource.Books.MyLibrary.Bookshelves.AddVolume: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Bookshelves.AddVolume.S1_0_3MyLibraryBookshelvesAddVolume
- Network.Google.Resource.Books.MyLibrary.Bookshelves.ClearVolumes: instance GHC.Generics.Constructor Network.Google.Resource.Books.MyLibrary.Bookshelves.ClearVolumes.C1_0MyLibraryBookshelvesClearVolumes
- Network.Google.Resource.Books.MyLibrary.Bookshelves.ClearVolumes: instance GHC.Generics.Datatype Network.Google.Resource.Books.MyLibrary.Bookshelves.ClearVolumes.D1MyLibraryBookshelvesClearVolumes
- Network.Google.Resource.Books.MyLibrary.Bookshelves.ClearVolumes: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Bookshelves.ClearVolumes.S1_0_0MyLibraryBookshelvesClearVolumes
- Network.Google.Resource.Books.MyLibrary.Bookshelves.ClearVolumes: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Bookshelves.ClearVolumes.S1_0_1MyLibraryBookshelvesClearVolumes
- Network.Google.Resource.Books.MyLibrary.Bookshelves.Get: instance GHC.Generics.Constructor Network.Google.Resource.Books.MyLibrary.Bookshelves.Get.C1_0MyLibraryBookshelvesGet
- Network.Google.Resource.Books.MyLibrary.Bookshelves.Get: instance GHC.Generics.Datatype Network.Google.Resource.Books.MyLibrary.Bookshelves.Get.D1MyLibraryBookshelvesGet
- Network.Google.Resource.Books.MyLibrary.Bookshelves.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Bookshelves.Get.S1_0_0MyLibraryBookshelvesGet
- Network.Google.Resource.Books.MyLibrary.Bookshelves.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Bookshelves.Get.S1_0_1MyLibraryBookshelvesGet
- Network.Google.Resource.Books.MyLibrary.Bookshelves.List: instance GHC.Generics.Constructor Network.Google.Resource.Books.MyLibrary.Bookshelves.List.C1_0MyLibraryBookshelvesList
- Network.Google.Resource.Books.MyLibrary.Bookshelves.List: instance GHC.Generics.Datatype Network.Google.Resource.Books.MyLibrary.Bookshelves.List.D1MyLibraryBookshelvesList
- Network.Google.Resource.Books.MyLibrary.Bookshelves.List: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Bookshelves.List.S1_0_0MyLibraryBookshelvesList
- Network.Google.Resource.Books.MyLibrary.Bookshelves.MoveVolume: instance GHC.Generics.Constructor Network.Google.Resource.Books.MyLibrary.Bookshelves.MoveVolume.C1_0MyLibraryBookshelvesMoveVolume
- Network.Google.Resource.Books.MyLibrary.Bookshelves.MoveVolume: instance GHC.Generics.Datatype Network.Google.Resource.Books.MyLibrary.Bookshelves.MoveVolume.D1MyLibraryBookshelvesMoveVolume
- Network.Google.Resource.Books.MyLibrary.Bookshelves.MoveVolume: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Bookshelves.MoveVolume.S1_0_0MyLibraryBookshelvesMoveVolume
- Network.Google.Resource.Books.MyLibrary.Bookshelves.MoveVolume: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Bookshelves.MoveVolume.S1_0_1MyLibraryBookshelvesMoveVolume
- Network.Google.Resource.Books.MyLibrary.Bookshelves.MoveVolume: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Bookshelves.MoveVolume.S1_0_2MyLibraryBookshelvesMoveVolume
- Network.Google.Resource.Books.MyLibrary.Bookshelves.MoveVolume: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Bookshelves.MoveVolume.S1_0_3MyLibraryBookshelvesMoveVolume
- Network.Google.Resource.Books.MyLibrary.Bookshelves.RemoveVolume: instance GHC.Generics.Constructor Network.Google.Resource.Books.MyLibrary.Bookshelves.RemoveVolume.C1_0MyLibraryBookshelvesRemoveVolume
- Network.Google.Resource.Books.MyLibrary.Bookshelves.RemoveVolume: instance GHC.Generics.Datatype Network.Google.Resource.Books.MyLibrary.Bookshelves.RemoveVolume.D1MyLibraryBookshelvesRemoveVolume
- Network.Google.Resource.Books.MyLibrary.Bookshelves.RemoveVolume: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Bookshelves.RemoveVolume.S1_0_0MyLibraryBookshelvesRemoveVolume
- Network.Google.Resource.Books.MyLibrary.Bookshelves.RemoveVolume: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Bookshelves.RemoveVolume.S1_0_1MyLibraryBookshelvesRemoveVolume
- Network.Google.Resource.Books.MyLibrary.Bookshelves.RemoveVolume: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Bookshelves.RemoveVolume.S1_0_2MyLibraryBookshelvesRemoveVolume
- Network.Google.Resource.Books.MyLibrary.Bookshelves.RemoveVolume: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Bookshelves.RemoveVolume.S1_0_3MyLibraryBookshelvesRemoveVolume
- Network.Google.Resource.Books.MyLibrary.Bookshelves.Volumes.List: instance GHC.Generics.Constructor Network.Google.Resource.Books.MyLibrary.Bookshelves.Volumes.List.C1_0MyLibraryBookshelvesVolumesList
- Network.Google.Resource.Books.MyLibrary.Bookshelves.Volumes.List: instance GHC.Generics.Datatype Network.Google.Resource.Books.MyLibrary.Bookshelves.Volumes.List.D1MyLibraryBookshelvesVolumesList
- Network.Google.Resource.Books.MyLibrary.Bookshelves.Volumes.List: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Bookshelves.Volumes.List.S1_0_0MyLibraryBookshelvesVolumesList
- Network.Google.Resource.Books.MyLibrary.Bookshelves.Volumes.List: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Bookshelves.Volumes.List.S1_0_1MyLibraryBookshelvesVolumesList
- Network.Google.Resource.Books.MyLibrary.Bookshelves.Volumes.List: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Bookshelves.Volumes.List.S1_0_2MyLibraryBookshelvesVolumesList
- Network.Google.Resource.Books.MyLibrary.Bookshelves.Volumes.List: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Bookshelves.Volumes.List.S1_0_3MyLibraryBookshelvesVolumesList
- Network.Google.Resource.Books.MyLibrary.Bookshelves.Volumes.List: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Bookshelves.Volumes.List.S1_0_4MyLibraryBookshelvesVolumesList
- Network.Google.Resource.Books.MyLibrary.Bookshelves.Volumes.List: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Bookshelves.Volumes.List.S1_0_5MyLibraryBookshelvesVolumesList
- Network.Google.Resource.Books.MyLibrary.Bookshelves.Volumes.List: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Bookshelves.Volumes.List.S1_0_6MyLibraryBookshelvesVolumesList
- Network.Google.Resource.Books.MyLibrary.Bookshelves.Volumes.List: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.Bookshelves.Volumes.List.S1_0_7MyLibraryBookshelvesVolumesList
- Network.Google.Resource.Books.MyLibrary.ReadingPositions.Get: instance GHC.Generics.Constructor Network.Google.Resource.Books.MyLibrary.ReadingPositions.Get.C1_0MyLibraryReadingPositionsGet
- Network.Google.Resource.Books.MyLibrary.ReadingPositions.Get: instance GHC.Generics.Datatype Network.Google.Resource.Books.MyLibrary.ReadingPositions.Get.D1MyLibraryReadingPositionsGet
- Network.Google.Resource.Books.MyLibrary.ReadingPositions.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.ReadingPositions.Get.S1_0_0MyLibraryReadingPositionsGet
- Network.Google.Resource.Books.MyLibrary.ReadingPositions.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.ReadingPositions.Get.S1_0_1MyLibraryReadingPositionsGet
- Network.Google.Resource.Books.MyLibrary.ReadingPositions.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.ReadingPositions.Get.S1_0_2MyLibraryReadingPositionsGet
- Network.Google.Resource.Books.MyLibrary.ReadingPositions.SetPosition: instance GHC.Generics.Constructor Network.Google.Resource.Books.MyLibrary.ReadingPositions.SetPosition.C1_0MyLibraryReadingPositionsSetPosition
- Network.Google.Resource.Books.MyLibrary.ReadingPositions.SetPosition: instance GHC.Generics.Datatype Network.Google.Resource.Books.MyLibrary.ReadingPositions.SetPosition.D1MyLibraryReadingPositionsSetPosition
- Network.Google.Resource.Books.MyLibrary.ReadingPositions.SetPosition: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.ReadingPositions.SetPosition.S1_0_0MyLibraryReadingPositionsSetPosition
- Network.Google.Resource.Books.MyLibrary.ReadingPositions.SetPosition: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.ReadingPositions.SetPosition.S1_0_1MyLibraryReadingPositionsSetPosition
- Network.Google.Resource.Books.MyLibrary.ReadingPositions.SetPosition: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.ReadingPositions.SetPosition.S1_0_2MyLibraryReadingPositionsSetPosition
- Network.Google.Resource.Books.MyLibrary.ReadingPositions.SetPosition: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.ReadingPositions.SetPosition.S1_0_3MyLibraryReadingPositionsSetPosition
- Network.Google.Resource.Books.MyLibrary.ReadingPositions.SetPosition: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.ReadingPositions.SetPosition.S1_0_4MyLibraryReadingPositionsSetPosition
- Network.Google.Resource.Books.MyLibrary.ReadingPositions.SetPosition: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.ReadingPositions.SetPosition.S1_0_5MyLibraryReadingPositionsSetPosition
- Network.Google.Resource.Books.MyLibrary.ReadingPositions.SetPosition: instance GHC.Generics.Selector Network.Google.Resource.Books.MyLibrary.ReadingPositions.SetPosition.S1_0_6MyLibraryReadingPositionsSetPosition
- Network.Google.Resource.Books.Notification.Get: instance GHC.Generics.Constructor Network.Google.Resource.Books.Notification.Get.C1_0NotificationGet
- Network.Google.Resource.Books.Notification.Get: instance GHC.Generics.Datatype Network.Google.Resource.Books.Notification.Get.D1NotificationGet
- Network.Google.Resource.Books.Notification.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.Notification.Get.S1_0_0NotificationGet
- Network.Google.Resource.Books.Notification.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.Notification.Get.S1_0_1NotificationGet
- Network.Google.Resource.Books.Notification.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.Notification.Get.S1_0_2NotificationGet
- Network.Google.Resource.Books.Onboarding.ListCategories: instance GHC.Generics.Constructor Network.Google.Resource.Books.Onboarding.ListCategories.C1_0OnboardingListCategories
- Network.Google.Resource.Books.Onboarding.ListCategories: instance GHC.Generics.Datatype Network.Google.Resource.Books.Onboarding.ListCategories.D1OnboardingListCategories
- Network.Google.Resource.Books.Onboarding.ListCategories: instance GHC.Generics.Selector Network.Google.Resource.Books.Onboarding.ListCategories.S1_0_0OnboardingListCategories
- Network.Google.Resource.Books.Onboarding.ListCategoryVolumes: instance GHC.Generics.Constructor Network.Google.Resource.Books.Onboarding.ListCategoryVolumes.C1_0OnboardingListCategoryVolumes
- Network.Google.Resource.Books.Onboarding.ListCategoryVolumes: instance GHC.Generics.Datatype Network.Google.Resource.Books.Onboarding.ListCategoryVolumes.D1OnboardingListCategoryVolumes
- Network.Google.Resource.Books.Onboarding.ListCategoryVolumes: instance GHC.Generics.Selector Network.Google.Resource.Books.Onboarding.ListCategoryVolumes.S1_0_0OnboardingListCategoryVolumes
- Network.Google.Resource.Books.Onboarding.ListCategoryVolumes: instance GHC.Generics.Selector Network.Google.Resource.Books.Onboarding.ListCategoryVolumes.S1_0_1OnboardingListCategoryVolumes
- Network.Google.Resource.Books.Onboarding.ListCategoryVolumes: instance GHC.Generics.Selector Network.Google.Resource.Books.Onboarding.ListCategoryVolumes.S1_0_2OnboardingListCategoryVolumes
- Network.Google.Resource.Books.Onboarding.ListCategoryVolumes: instance GHC.Generics.Selector Network.Google.Resource.Books.Onboarding.ListCategoryVolumes.S1_0_3OnboardingListCategoryVolumes
- Network.Google.Resource.Books.Onboarding.ListCategoryVolumes: instance GHC.Generics.Selector Network.Google.Resource.Books.Onboarding.ListCategoryVolumes.S1_0_4OnboardingListCategoryVolumes
- Network.Google.Resource.Books.Personalizedstream.Get: instance GHC.Generics.Constructor Network.Google.Resource.Books.Personalizedstream.Get.C1_0PersonalizedstreamGet
- Network.Google.Resource.Books.Personalizedstream.Get: instance GHC.Generics.Datatype Network.Google.Resource.Books.Personalizedstream.Get.D1PersonalizedstreamGet
- Network.Google.Resource.Books.Personalizedstream.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.Personalizedstream.Get.S1_0_0PersonalizedstreamGet
- Network.Google.Resource.Books.Personalizedstream.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.Personalizedstream.Get.S1_0_1PersonalizedstreamGet
- Network.Google.Resource.Books.Personalizedstream.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.Personalizedstream.Get.S1_0_2PersonalizedstreamGet
- Network.Google.Resource.Books.PromoOffer.Accept: instance GHC.Generics.Constructor Network.Google.Resource.Books.PromoOffer.Accept.C1_0PromoOfferAccept
- Network.Google.Resource.Books.PromoOffer.Accept: instance GHC.Generics.Datatype Network.Google.Resource.Books.PromoOffer.Accept.D1PromoOfferAccept
- Network.Google.Resource.Books.PromoOffer.Accept: instance GHC.Generics.Selector Network.Google.Resource.Books.PromoOffer.Accept.S1_0_0PromoOfferAccept
- Network.Google.Resource.Books.PromoOffer.Accept: instance GHC.Generics.Selector Network.Google.Resource.Books.PromoOffer.Accept.S1_0_1PromoOfferAccept
- Network.Google.Resource.Books.PromoOffer.Accept: instance GHC.Generics.Selector Network.Google.Resource.Books.PromoOffer.Accept.S1_0_2PromoOfferAccept
- Network.Google.Resource.Books.PromoOffer.Accept: instance GHC.Generics.Selector Network.Google.Resource.Books.PromoOffer.Accept.S1_0_3PromoOfferAccept
- Network.Google.Resource.Books.PromoOffer.Accept: instance GHC.Generics.Selector Network.Google.Resource.Books.PromoOffer.Accept.S1_0_4PromoOfferAccept
- Network.Google.Resource.Books.PromoOffer.Accept: instance GHC.Generics.Selector Network.Google.Resource.Books.PromoOffer.Accept.S1_0_5PromoOfferAccept
- Network.Google.Resource.Books.PromoOffer.Accept: instance GHC.Generics.Selector Network.Google.Resource.Books.PromoOffer.Accept.S1_0_6PromoOfferAccept
- Network.Google.Resource.Books.PromoOffer.Accept: instance GHC.Generics.Selector Network.Google.Resource.Books.PromoOffer.Accept.S1_0_7PromoOfferAccept
- Network.Google.Resource.Books.PromoOffer.Dismiss: instance GHC.Generics.Constructor Network.Google.Resource.Books.PromoOffer.Dismiss.C1_0PromoOfferDismiss
- Network.Google.Resource.Books.PromoOffer.Dismiss: instance GHC.Generics.Datatype Network.Google.Resource.Books.PromoOffer.Dismiss.D1PromoOfferDismiss
- Network.Google.Resource.Books.PromoOffer.Dismiss: instance GHC.Generics.Selector Network.Google.Resource.Books.PromoOffer.Dismiss.S1_0_0PromoOfferDismiss
- Network.Google.Resource.Books.PromoOffer.Dismiss: instance GHC.Generics.Selector Network.Google.Resource.Books.PromoOffer.Dismiss.S1_0_1PromoOfferDismiss
- Network.Google.Resource.Books.PromoOffer.Dismiss: instance GHC.Generics.Selector Network.Google.Resource.Books.PromoOffer.Dismiss.S1_0_2PromoOfferDismiss
- Network.Google.Resource.Books.PromoOffer.Dismiss: instance GHC.Generics.Selector Network.Google.Resource.Books.PromoOffer.Dismiss.S1_0_3PromoOfferDismiss
- Network.Google.Resource.Books.PromoOffer.Dismiss: instance GHC.Generics.Selector Network.Google.Resource.Books.PromoOffer.Dismiss.S1_0_4PromoOfferDismiss
- Network.Google.Resource.Books.PromoOffer.Dismiss: instance GHC.Generics.Selector Network.Google.Resource.Books.PromoOffer.Dismiss.S1_0_5PromoOfferDismiss
- Network.Google.Resource.Books.PromoOffer.Dismiss: instance GHC.Generics.Selector Network.Google.Resource.Books.PromoOffer.Dismiss.S1_0_6PromoOfferDismiss
- Network.Google.Resource.Books.PromoOffer.Get: instance GHC.Generics.Constructor Network.Google.Resource.Books.PromoOffer.Get.C1_0PromoOfferGet
- Network.Google.Resource.Books.PromoOffer.Get: instance GHC.Generics.Datatype Network.Google.Resource.Books.PromoOffer.Get.D1PromoOfferGet
- Network.Google.Resource.Books.PromoOffer.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.PromoOffer.Get.S1_0_0PromoOfferGet
- Network.Google.Resource.Books.PromoOffer.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.PromoOffer.Get.S1_0_1PromoOfferGet
- Network.Google.Resource.Books.PromoOffer.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.PromoOffer.Get.S1_0_2PromoOfferGet
- Network.Google.Resource.Books.PromoOffer.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.PromoOffer.Get.S1_0_3PromoOfferGet
- Network.Google.Resource.Books.PromoOffer.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.PromoOffer.Get.S1_0_4PromoOfferGet
- Network.Google.Resource.Books.PromoOffer.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.PromoOffer.Get.S1_0_5PromoOfferGet
- Network.Google.Resource.Books.Volumes.Associated.List: instance GHC.Generics.Constructor Network.Google.Resource.Books.Volumes.Associated.List.C1_0VolumesAssociatedList
- Network.Google.Resource.Books.Volumes.Associated.List: instance GHC.Generics.Datatype Network.Google.Resource.Books.Volumes.Associated.List.D1VolumesAssociatedList
- Network.Google.Resource.Books.Volumes.Associated.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.Associated.List.S1_0_0VolumesAssociatedList
- Network.Google.Resource.Books.Volumes.Associated.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.Associated.List.S1_0_1VolumesAssociatedList
- Network.Google.Resource.Books.Volumes.Associated.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.Associated.List.S1_0_2VolumesAssociatedList
- Network.Google.Resource.Books.Volumes.Associated.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.Associated.List.S1_0_3VolumesAssociatedList
- Network.Google.Resource.Books.Volumes.Associated.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.Associated.List.S1_0_4VolumesAssociatedList
- Network.Google.Resource.Books.Volumes.Get: instance GHC.Generics.Constructor Network.Google.Resource.Books.Volumes.Get.C1_0VolumesGet
- Network.Google.Resource.Books.Volumes.Get: instance GHC.Generics.Datatype Network.Google.Resource.Books.Volumes.Get.D1VolumesGet
- Network.Google.Resource.Books.Volumes.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.Get.S1_0_0VolumesGet
- Network.Google.Resource.Books.Volumes.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.Get.S1_0_1VolumesGet
- Network.Google.Resource.Books.Volumes.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.Get.S1_0_2VolumesGet
- Network.Google.Resource.Books.Volumes.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.Get.S1_0_3VolumesGet
- Network.Google.Resource.Books.Volumes.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.Get.S1_0_4VolumesGet
- Network.Google.Resource.Books.Volumes.Get: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.Get.S1_0_5VolumesGet
- Network.Google.Resource.Books.Volumes.List: instance GHC.Generics.Constructor Network.Google.Resource.Books.Volumes.List.C1_0VolumesList
- Network.Google.Resource.Books.Volumes.List: instance GHC.Generics.Datatype Network.Google.Resource.Books.Volumes.List.D1VolumesList
- Network.Google.Resource.Books.Volumes.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.List.S1_0_0VolumesList
- Network.Google.Resource.Books.Volumes.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.List.S1_0_10VolumesList
- Network.Google.Resource.Books.Volumes.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.List.S1_0_11VolumesList
- Network.Google.Resource.Books.Volumes.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.List.S1_0_12VolumesList
- Network.Google.Resource.Books.Volumes.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.List.S1_0_1VolumesList
- Network.Google.Resource.Books.Volumes.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.List.S1_0_2VolumesList
- Network.Google.Resource.Books.Volumes.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.List.S1_0_3VolumesList
- Network.Google.Resource.Books.Volumes.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.List.S1_0_4VolumesList
- Network.Google.Resource.Books.Volumes.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.List.S1_0_5VolumesList
- Network.Google.Resource.Books.Volumes.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.List.S1_0_6VolumesList
- Network.Google.Resource.Books.Volumes.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.List.S1_0_7VolumesList
- Network.Google.Resource.Books.Volumes.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.List.S1_0_8VolumesList
- Network.Google.Resource.Books.Volumes.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.List.S1_0_9VolumesList
- Network.Google.Resource.Books.Volumes.Mybooks.List: instance GHC.Generics.Constructor Network.Google.Resource.Books.Volumes.Mybooks.List.C1_0VolumesMybooksList
- Network.Google.Resource.Books.Volumes.Mybooks.List: instance GHC.Generics.Datatype Network.Google.Resource.Books.Volumes.Mybooks.List.D1VolumesMybooksList
- Network.Google.Resource.Books.Volumes.Mybooks.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.Mybooks.List.S1_0_0VolumesMybooksList
- Network.Google.Resource.Books.Volumes.Mybooks.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.Mybooks.List.S1_0_1VolumesMybooksList
- Network.Google.Resource.Books.Volumes.Mybooks.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.Mybooks.List.S1_0_2VolumesMybooksList
- Network.Google.Resource.Books.Volumes.Mybooks.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.Mybooks.List.S1_0_3VolumesMybooksList
- Network.Google.Resource.Books.Volumes.Mybooks.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.Mybooks.List.S1_0_4VolumesMybooksList
- Network.Google.Resource.Books.Volumes.Mybooks.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.Mybooks.List.S1_0_5VolumesMybooksList
- Network.Google.Resource.Books.Volumes.Recommended.List: instance GHC.Generics.Constructor Network.Google.Resource.Books.Volumes.Recommended.List.C1_0VolumesRecommendedList
- Network.Google.Resource.Books.Volumes.Recommended.List: instance GHC.Generics.Datatype Network.Google.Resource.Books.Volumes.Recommended.List.D1VolumesRecommendedList
- Network.Google.Resource.Books.Volumes.Recommended.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.Recommended.List.S1_0_0VolumesRecommendedList
- Network.Google.Resource.Books.Volumes.Recommended.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.Recommended.List.S1_0_1VolumesRecommendedList
- Network.Google.Resource.Books.Volumes.Recommended.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.Recommended.List.S1_0_2VolumesRecommendedList
- Network.Google.Resource.Books.Volumes.Recommended.Rate: instance GHC.Generics.Constructor Network.Google.Resource.Books.Volumes.Recommended.Rate.C1_0VolumesRecommendedRate
- Network.Google.Resource.Books.Volumes.Recommended.Rate: instance GHC.Generics.Datatype Network.Google.Resource.Books.Volumes.Recommended.Rate.D1VolumesRecommendedRate
- Network.Google.Resource.Books.Volumes.Recommended.Rate: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.Recommended.Rate.S1_0_0VolumesRecommendedRate
- Network.Google.Resource.Books.Volumes.Recommended.Rate: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.Recommended.Rate.S1_0_1VolumesRecommendedRate
- Network.Google.Resource.Books.Volumes.Recommended.Rate: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.Recommended.Rate.S1_0_2VolumesRecommendedRate
- Network.Google.Resource.Books.Volumes.Recommended.Rate: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.Recommended.Rate.S1_0_3VolumesRecommendedRate
- Network.Google.Resource.Books.Volumes.UserUploaded.List: instance GHC.Generics.Constructor Network.Google.Resource.Books.Volumes.UserUploaded.List.C1_0VolumesUserUploadedList
- Network.Google.Resource.Books.Volumes.UserUploaded.List: instance GHC.Generics.Datatype Network.Google.Resource.Books.Volumes.UserUploaded.List.D1VolumesUserUploadedList
- Network.Google.Resource.Books.Volumes.UserUploaded.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.UserUploaded.List.S1_0_0VolumesUserUploadedList
- Network.Google.Resource.Books.Volumes.UserUploaded.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.UserUploaded.List.S1_0_1VolumesUserUploadedList
- Network.Google.Resource.Books.Volumes.UserUploaded.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.UserUploaded.List.S1_0_2VolumesUserUploadedList
- Network.Google.Resource.Books.Volumes.UserUploaded.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.UserUploaded.List.S1_0_3VolumesUserUploadedList
- Network.Google.Resource.Books.Volumes.UserUploaded.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.UserUploaded.List.S1_0_4VolumesUserUploadedList
- Network.Google.Resource.Books.Volumes.UserUploaded.List: instance GHC.Generics.Selector Network.Google.Resource.Books.Volumes.UserUploaded.List.S1_0_5VolumesUserUploadedList
+ Network.Google.Books: booksScope :: Proxy '["https://www.googleapis.com/auth/books"]
+ Network.Google.Books: data Series
+ Network.Google.Books: data SeriesSeriesItem
+ Network.Google.Books: data Seriesmembership
+ Network.Google.Books: data VolumeUserInfoFamilySharing
+ Network.Google.Books: data VolumeseriesInfo
+ Network.Google.Books: data VolumeseriesInfoVolumeSeriesItem
+ Network.Google.Books: data VolumeseriesInfoVolumeSeriesItemIssueItem
+ Network.Google.Books: nCrmExperimentIds :: Lens' Notification [Int64]
+ Network.Google.Books: nDocId :: Lens' Notification (Maybe Text)
+ Network.Google.Books: nDocType :: Lens' Notification (Maybe Text)
+ Network.Google.Books: nDontShowNotification :: Lens' Notification (Maybe Bool)
+ Network.Google.Books: nNotificationType :: Lens' Notification (Maybe Text)
+ Network.Google.Books: nPcampaignId :: Lens' Notification (Maybe Text)
+ Network.Google.Books: nReason :: Lens' Notification (Maybe Text)
+ Network.Google.Books: nShowNotificationSettingsAction :: Lens' Notification (Maybe Bool)
+ Network.Google.Books: nTargetURL :: Lens' Notification (Maybe Text)
+ Network.Google.Books: sKind :: Lens' Series Text
+ Network.Google.Books: sSeries :: Lens' Series [SeriesSeriesItem]
+ Network.Google.Books: serKind :: Lens' Seriesmembership Text
+ Network.Google.Books: serMember :: Lens' Seriesmembership [Volume]
+ Network.Google.Books: serNextPageToken :: Lens' Seriesmembership (Maybe Text)
+ Network.Google.Books: series :: Series
+ Network.Google.Books: seriesSeriesItem :: SeriesSeriesItem
+ Network.Google.Books: seriesmembership :: Seriesmembership
+ Network.Google.Books: ssiBannerImageURL :: Lens' SeriesSeriesItem (Maybe Text)
+ Network.Google.Books: ssiImageURL :: Lens' SeriesSeriesItem (Maybe Text)
+ Network.Google.Books: ssiSeriesId :: Lens' SeriesSeriesItem (Maybe Text)
+ Network.Google.Books: ssiSeriesType :: Lens' SeriesSeriesItem (Maybe Text)
+ Network.Google.Books: ssiTitle :: Lens' SeriesSeriesItem (Maybe Text)
+ Network.Google.Books: viBookDisplayNumber :: Lens' VolumeseriesInfo (Maybe Text)
+ Network.Google.Books: viKind :: Lens' VolumeseriesInfo Text
+ Network.Google.Books: viShortSeriesBookTitle :: Lens' VolumeseriesInfo (Maybe Text)
+ Network.Google.Books: viVolumeSeries :: Lens' VolumeseriesInfo [VolumeseriesInfoVolumeSeriesItem]
+ Network.Google.Books: vivsiIssue :: Lens' VolumeseriesInfoVolumeSeriesItem [VolumeseriesInfoVolumeSeriesItemIssueItem]
+ Network.Google.Books: vivsiOrderNumber :: Lens' VolumeseriesInfoVolumeSeriesItem (Maybe Int32)
+ Network.Google.Books: vivsiSeriesBookType :: Lens' VolumeseriesInfoVolumeSeriesItem (Maybe Text)
+ Network.Google.Books: vivsiSeriesId :: Lens' VolumeseriesInfoVolumeSeriesItem (Maybe Text)
+ Network.Google.Books: vivsiiiIssueDisplayNumber :: Lens' VolumeseriesInfoVolumeSeriesItemIssueItem (Maybe Text)
+ Network.Google.Books: vivsiiiIssueOrderNumber :: Lens' VolumeseriesInfoVolumeSeriesItemIssueItem (Maybe Int32)
+ Network.Google.Books: volumeUserInfoFamilySharing :: VolumeUserInfoFamilySharing
+ Network.Google.Books: volumeseriesInfo :: VolumeseriesInfo
+ Network.Google.Books: volumeseriesInfoVolumeSeriesItem :: VolumeseriesInfoVolumeSeriesItem
+ Network.Google.Books: volumeseriesInfoVolumeSeriesItemIssueItem :: VolumeseriesInfoVolumeSeriesItemIssueItem
+ Network.Google.Books: vuiAcquiredTime :: Lens' VolumeUserInfo (Maybe UTCTime)
+ Network.Google.Books: vuiFamilySharing :: Lens' VolumeUserInfo (Maybe VolumeUserInfoFamilySharing)
+ Network.Google.Books: vuiIsFamilySharedFromUser :: Lens' VolumeUserInfo (Maybe Bool)
+ Network.Google.Books: vuiIsFamilySharedToUser :: Lens' VolumeUserInfo (Maybe Bool)
+ Network.Google.Books: vuiIsFamilySharingAllowed :: Lens' VolumeUserInfo (Maybe Bool)
+ Network.Google.Books: vuiIsFamilySharingDisabledByFop :: Lens' VolumeUserInfo (Maybe Bool)
+ Network.Google.Books: vuifsFamilyRole :: Lens' VolumeUserInfoFamilySharing (Maybe Text)
+ Network.Google.Books: vuifsIsSharingAllowed :: Lens' VolumeUserInfoFamilySharing (Maybe Bool)
+ Network.Google.Books: vuifsIsSharingDisabledByFop :: Lens' VolumeUserInfoFamilySharing (Maybe Bool)
+ Network.Google.Books: vviSeriesInfo :: Lens' VolumeVolumeInfo (Maybe VolumeseriesInfo)
+ Network.Google.Books.Types: data Series
+ Network.Google.Books.Types: data SeriesSeriesItem
+ Network.Google.Books.Types: data Seriesmembership
+ Network.Google.Books.Types: data VolumeUserInfoFamilySharing
+ Network.Google.Books.Types: data VolumeseriesInfo
+ Network.Google.Books.Types: data VolumeseriesInfoVolumeSeriesItem
+ Network.Google.Books.Types: data VolumeseriesInfoVolumeSeriesItemIssueItem
+ Network.Google.Books.Types: nCrmExperimentIds :: Lens' Notification [Int64]
+ Network.Google.Books.Types: nDocId :: Lens' Notification (Maybe Text)
+ Network.Google.Books.Types: nDocType :: Lens' Notification (Maybe Text)
+ Network.Google.Books.Types: nDontShowNotification :: Lens' Notification (Maybe Bool)
+ Network.Google.Books.Types: nNotificationType :: Lens' Notification (Maybe Text)
+ Network.Google.Books.Types: nPcampaignId :: Lens' Notification (Maybe Text)
+ Network.Google.Books.Types: nReason :: Lens' Notification (Maybe Text)
+ Network.Google.Books.Types: nShowNotificationSettingsAction :: Lens' Notification (Maybe Bool)
+ Network.Google.Books.Types: nTargetURL :: Lens' Notification (Maybe Text)
+ Network.Google.Books.Types: sKind :: Lens' Series Text
+ Network.Google.Books.Types: sSeries :: Lens' Series [SeriesSeriesItem]
+ Network.Google.Books.Types: serKind :: Lens' Seriesmembership Text
+ Network.Google.Books.Types: serMember :: Lens' Seriesmembership [Volume]
+ Network.Google.Books.Types: serNextPageToken :: Lens' Seriesmembership (Maybe Text)
+ Network.Google.Books.Types: series :: Series
+ Network.Google.Books.Types: seriesSeriesItem :: SeriesSeriesItem
+ Network.Google.Books.Types: seriesmembership :: Seriesmembership
+ Network.Google.Books.Types: ssiBannerImageURL :: Lens' SeriesSeriesItem (Maybe Text)
+ Network.Google.Books.Types: ssiImageURL :: Lens' SeriesSeriesItem (Maybe Text)
+ Network.Google.Books.Types: ssiSeriesId :: Lens' SeriesSeriesItem (Maybe Text)
+ Network.Google.Books.Types: ssiSeriesType :: Lens' SeriesSeriesItem (Maybe Text)
+ Network.Google.Books.Types: ssiTitle :: Lens' SeriesSeriesItem (Maybe Text)
+ Network.Google.Books.Types: viBookDisplayNumber :: Lens' VolumeseriesInfo (Maybe Text)
+ Network.Google.Books.Types: viKind :: Lens' VolumeseriesInfo Text
+ Network.Google.Books.Types: viShortSeriesBookTitle :: Lens' VolumeseriesInfo (Maybe Text)
+ Network.Google.Books.Types: viVolumeSeries :: Lens' VolumeseriesInfo [VolumeseriesInfoVolumeSeriesItem]
+ Network.Google.Books.Types: vivsiIssue :: Lens' VolumeseriesInfoVolumeSeriesItem [VolumeseriesInfoVolumeSeriesItemIssueItem]
+ Network.Google.Books.Types: vivsiOrderNumber :: Lens' VolumeseriesInfoVolumeSeriesItem (Maybe Int32)
+ Network.Google.Books.Types: vivsiSeriesBookType :: Lens' VolumeseriesInfoVolumeSeriesItem (Maybe Text)
+ Network.Google.Books.Types: vivsiSeriesId :: Lens' VolumeseriesInfoVolumeSeriesItem (Maybe Text)
+ Network.Google.Books.Types: vivsiiiIssueDisplayNumber :: Lens' VolumeseriesInfoVolumeSeriesItemIssueItem (Maybe Text)
+ Network.Google.Books.Types: vivsiiiIssueOrderNumber :: Lens' VolumeseriesInfoVolumeSeriesItemIssueItem (Maybe Int32)
+ Network.Google.Books.Types: volumeUserInfoFamilySharing :: VolumeUserInfoFamilySharing
+ Network.Google.Books.Types: volumeseriesInfo :: VolumeseriesInfo
+ Network.Google.Books.Types: volumeseriesInfoVolumeSeriesItem :: VolumeseriesInfoVolumeSeriesItem
+ Network.Google.Books.Types: volumeseriesInfoVolumeSeriesItemIssueItem :: VolumeseriesInfoVolumeSeriesItemIssueItem
+ Network.Google.Books.Types: vuiAcquiredTime :: Lens' VolumeUserInfo (Maybe UTCTime)
+ Network.Google.Books.Types: vuiFamilySharing :: Lens' VolumeUserInfo (Maybe VolumeUserInfoFamilySharing)
+ Network.Google.Books.Types: vuiIsFamilySharedFromUser :: Lens' VolumeUserInfo (Maybe Bool)
+ Network.Google.Books.Types: vuiIsFamilySharedToUser :: Lens' VolumeUserInfo (Maybe Bool)
+ Network.Google.Books.Types: vuiIsFamilySharingAllowed :: Lens' VolumeUserInfo (Maybe Bool)
+ Network.Google.Books.Types: vuiIsFamilySharingDisabledByFop :: Lens' VolumeUserInfo (Maybe Bool)
+ Network.Google.Books.Types: vuifsFamilyRole :: Lens' VolumeUserInfoFamilySharing (Maybe Text)
+ Network.Google.Books.Types: vuifsIsSharingAllowed :: Lens' VolumeUserInfoFamilySharing (Maybe Bool)
+ Network.Google.Books.Types: vuifsIsSharingDisabledByFop :: Lens' VolumeUserInfoFamilySharing (Maybe Bool)
+ Network.Google.Books.Types: vviSeriesInfo :: Lens' VolumeVolumeInfo (Maybe VolumeseriesInfo)
+ Network.Google.Resource.Books.MyConfig.SyncVolumeLicenses: mcsvlIncludeNonComicsSeries :: Lens' MyConfigSyncVolumeLicenses (Maybe Bool)
+ Network.Google.Resource.Books.Series.Get: data SeriesGet
+ Network.Google.Resource.Books.Series.Get: instance Data.Data.Data Network.Google.Resource.Books.Series.Get.SeriesGet
+ Network.Google.Resource.Books.Series.Get: instance GHC.Classes.Eq Network.Google.Resource.Books.Series.Get.SeriesGet
+ Network.Google.Resource.Books.Series.Get: instance GHC.Generics.Generic Network.Google.Resource.Books.Series.Get.SeriesGet
+ Network.Google.Resource.Books.Series.Get: instance GHC.Show.Show Network.Google.Resource.Books.Series.Get.SeriesGet
+ Network.Google.Resource.Books.Series.Get: instance Network.Google.Types.GoogleRequest Network.Google.Resource.Books.Series.Get.SeriesGet
+ Network.Google.Resource.Books.Series.Get: seriesGet :: [Text] -> SeriesGet
+ Network.Google.Resource.Books.Series.Get: sgSeriesId :: Lens' SeriesGet [Text]
+ Network.Google.Resource.Books.Series.Get: type SeriesGetResource = "books" :> ("v1" :> ("series" :> ("get" :> (QueryParams "series_id" Text :> (QueryParam "alt" AltJSON :> Get '[JSON] Series)))))
+ Network.Google.Resource.Books.Series.Membership.Get: data SeriesMembershipGet
+ Network.Google.Resource.Books.Series.Membership.Get: instance Data.Data.Data Network.Google.Resource.Books.Series.Membership.Get.SeriesMembershipGet
+ Network.Google.Resource.Books.Series.Membership.Get: instance GHC.Classes.Eq Network.Google.Resource.Books.Series.Membership.Get.SeriesMembershipGet
+ Network.Google.Resource.Books.Series.Membership.Get: instance GHC.Generics.Generic Network.Google.Resource.Books.Series.Membership.Get.SeriesMembershipGet
+ Network.Google.Resource.Books.Series.Membership.Get: instance GHC.Show.Show Network.Google.Resource.Books.Series.Membership.Get.SeriesMembershipGet
+ Network.Google.Resource.Books.Series.Membership.Get: instance Network.Google.Types.GoogleRequest Network.Google.Resource.Books.Series.Membership.Get.SeriesMembershipGet
+ Network.Google.Resource.Books.Series.Membership.Get: seriesMembershipGet :: Text -> SeriesMembershipGet
+ Network.Google.Resource.Books.Series.Membership.Get: smgPageSize :: Lens' SeriesMembershipGet (Maybe Word32)
+ Network.Google.Resource.Books.Series.Membership.Get: smgPageToken :: Lens' SeriesMembershipGet (Maybe Text)
+ Network.Google.Resource.Books.Series.Membership.Get: smgSeriesId :: Lens' SeriesMembershipGet Text
+ Network.Google.Resource.Books.Series.Membership.Get: type SeriesMembershipGetResource = "books" :> ("v1" :> ("series" :> ("membership" :> ("get" :> (QueryParam "series_id" Text :> (QueryParam "page_token" Text :> (QueryParam "page_size" (Textual Word32) :> (QueryParam "alt" AltJSON :> Get '[JSON] Seriesmembership))))))))
+ Network.Google.Resource.Books.Volumes.Get: vgIncludeNonComicsSeries :: Lens' VolumesGet (Maybe Bool)
+ Network.Google.Resource.Books.Volumes.Mybooks.List: vmlCountry :: Lens' VolumesMybooksList (Maybe Text)
- Network.Google.Books: annEncodedData :: Lens' AnnotationData (Maybe Word8)
+ Network.Google.Books: annEncodedData :: Lens' AnnotationData (Maybe ByteString)
- Network.Google.Books: booksService :: Service
+ Network.Google.Books: booksService :: ServiceConfig
- Network.Google.Books: type BooksAPI = NotificationGetResource :<|> (OnboardingListCategoriesResource :<|> (OnboardingListCategoryVolumesResource :<|> (MyLibraryAnnotationsSummaryResource :<|> (MyLibraryAnnotationsInsertResource :<|> (MyLibraryAnnotationsListResource :<|> (MyLibraryAnnotationsDeleteResource :<|> (MyLibraryAnnotationsUpdateResource :<|> (MyLibraryReadingPositionsGetResource :<|> (MyLibraryReadingPositionsSetPositionResource :<|> (MyLibraryBookshelvesVolumesListResource :<|> (MyLibraryBookshelvesClearVolumesResource :<|> (MyLibraryBookshelvesListResource :<|> (MyLibraryBookshelvesGetResource :<|> (MyLibraryBookshelvesRemoveVolumeResource :<|> (MyLibraryBookshelvesAddVolumeResource :<|> (MyLibraryBookshelvesMoveVolumeResource :<|> (PromoOfferAcceptResource :<|> (PromoOfferGetResource :<|> (PromoOfferDismissResource :<|> (CloudLoadingAddBookResource :<|> (CloudLoadingUpdateBookResource :<|> (CloudLoadingDeleteBookResource :<|> (LayersVolumeAnnotationsListResource :<|> (LayersVolumeAnnotationsGetResource :<|> (LayersAnnotationDataListResource :<|> (LayersAnnotationDataGetResource :<|> (LayersListResource :<|> (LayersGetResource :<|> (DictionaryListOfflineMetadataResource :<|> (VolumesUserUploadedListResource :<|> (VolumesRecommendedListResource :<|> (VolumesRecommendedRateResource :<|> (VolumesAssociatedListResource :<|> (VolumesMybooksListResource :<|> (VolumesListResource :<|> (VolumesGetResource :<|> (BookshelvesVolumesListResource :<|> (BookshelvesListResource :<|> (BookshelvesGetResource :<|> (PersonalizedstreamGetResource :<|> (MyConfigSyncVolumeLicensesResource :<|> (MyConfigGetUserSettingsResource :<|> (MyConfigRequestAccessResource :<|> (MyConfigUpdateUserSettingsResource :<|> MyConfigReleaseDownloadAccessResource))))))))))))))))))))))))))))))))))))))))))))
+ Network.Google.Books: type BooksAPI = NotificationGetResource :<|> (SeriesMembershipGetResource :<|> (SeriesGetResource :<|> (OnboardingListCategoriesResource :<|> (OnboardingListCategoryVolumesResource :<|> (MyLibraryAnnotationsSummaryResource :<|> (MyLibraryAnnotationsInsertResource :<|> (MyLibraryAnnotationsListResource :<|> (MyLibraryAnnotationsDeleteResource :<|> (MyLibraryAnnotationsUpdateResource :<|> (MyLibraryReadingPositionsGetResource :<|> (MyLibraryReadingPositionsSetPositionResource :<|> (MyLibraryBookshelvesVolumesListResource :<|> (MyLibraryBookshelvesClearVolumesResource :<|> (MyLibraryBookshelvesListResource :<|> (MyLibraryBookshelvesGetResource :<|> (MyLibraryBookshelvesRemoveVolumeResource :<|> (MyLibraryBookshelvesAddVolumeResource :<|> (MyLibraryBookshelvesMoveVolumeResource :<|> (PromoOfferAcceptResource :<|> (PromoOfferGetResource :<|> (PromoOfferDismissResource :<|> (CloudLoadingAddBookResource :<|> (CloudLoadingUpdateBookResource :<|> (CloudLoadingDeleteBookResource :<|> (LayersVolumeAnnotationsListResource :<|> (LayersVolumeAnnotationsGetResource :<|> (LayersAnnotationDataListResource :<|> (LayersAnnotationDataGetResource :<|> (LayersListResource :<|> (LayersGetResource :<|> (DictionaryListOfflineMetadataResource :<|> (VolumesUserUploadedListResource :<|> (VolumesRecommendedListResource :<|> (VolumesRecommendedRateResource :<|> (VolumesAssociatedListResource :<|> (VolumesMybooksListResource :<|> (VolumesListResource :<|> (VolumesGetResource :<|> (BookshelvesVolumesListResource :<|> (BookshelvesListResource :<|> (BookshelvesGetResource :<|> (PersonalizedstreamGetResource :<|> (MyConfigSyncVolumeLicensesResource :<|> (MyConfigGetUserSettingsResource :<|> (MyConfigRequestAccessResource :<|> (MyConfigUpdateUserSettingsResource :<|> MyConfigReleaseDownloadAccessResource))))))))))))))))))))))))))))))))))))))))))))))
- Network.Google.Books.Types: annEncodedData :: Lens' AnnotationData (Maybe Word8)
+ Network.Google.Books.Types: annEncodedData :: Lens' AnnotationData (Maybe ByteString)
- Network.Google.Books.Types: booksScope :: OAuthScope
+ Network.Google.Books.Types: booksScope :: Proxy '["https://www.googleapis.com/auth/books"]
- Network.Google.Books.Types: booksService :: Service
+ Network.Google.Books.Types: booksService :: ServiceConfig
- Network.Google.Resource.Books.MyConfig.SyncVolumeLicenses: type MyConfigSyncVolumeLicensesResource = "books" :> ("v1" :> ("myconfig" :> ("syncVolumeLicenses" :> (QueryParam "source" Text :> (QueryParam "nonce" Text :> (QueryParam "cpksver" Text :> (QueryParam "locale" Text :> (QueryParams "volumeIds" Text :> (QueryParams "features" MyConfigSyncVolumeLicensesFeatures :> (QueryParam "showPreorders" Bool :> (QueryParam "alt" AltJSON :> Post '[JSON] Volumes)))))))))))
+ Network.Google.Resource.Books.MyConfig.SyncVolumeLicenses: type MyConfigSyncVolumeLicensesResource = "books" :> ("v1" :> ("myconfig" :> ("syncVolumeLicenses" :> (QueryParam "source" Text :> (QueryParam "nonce" Text :> (QueryParam "cpksver" Text :> (QueryParam "locale" Text :> (QueryParam "includeNonComicsSeries" Bool :> (QueryParams "volumeIds" Text :> (QueryParams "features" MyConfigSyncVolumeLicensesFeatures :> (QueryParam "showPreorders" Bool :> (QueryParam "alt" AltJSON :> Post '[JSON] Volumes))))))))))))
- Network.Google.Resource.Books.Volumes.Get: type VolumesGetResource = "books" :> ("v1" :> ("volumes" :> (Capture "volumeId" Text :> (QueryParam "country" Text :> (QueryParam "partner" Text :> (QueryParam "source" Text :> (QueryParam "projection" VolumesGetProjection :> (QueryParam "user_library_consistent_read" Bool :> (QueryParam "alt" AltJSON :> Get '[JSON] Volume)))))))))
+ Network.Google.Resource.Books.Volumes.Get: type VolumesGetResource = "books" :> ("v1" :> ("volumes" :> (Capture "volumeId" Text :> (QueryParam "country" Text :> (QueryParam "includeNonComicsSeries" Bool :> (QueryParam "partner" Text :> (QueryParam "source" Text :> (QueryParam "projection" VolumesGetProjection :> (QueryParam "user_library_consistent_read" Bool :> (QueryParam "alt" AltJSON :> Get '[JSON] Volume))))))))))
- Network.Google.Resource.Books.Volumes.Mybooks.List: type VolumesMybooksListResource = "books" :> ("v1" :> ("volumes" :> ("mybooks" :> (QueryParams "processingState" VolumesMybooksListProcessingState :> (QueryParams "acquireMethod" VolumesMybooksListAcquireMethod :> (QueryParam "locale" Text :> (QueryParam "source" Text :> (QueryParam "startIndex" (Textual Word32) :> (QueryParam "maxResults" (Textual Word32) :> (QueryParam "alt" AltJSON :> Get '[JSON] Volumes))))))))))
+ Network.Google.Resource.Books.Volumes.Mybooks.List: type VolumesMybooksListResource = "books" :> ("v1" :> ("volumes" :> ("mybooks" :> (QueryParams "processingState" VolumesMybooksListProcessingState :> (QueryParams "acquireMethod" VolumesMybooksListAcquireMethod :> (QueryParam "country" Text :> (QueryParam "locale" Text :> (QueryParam "source" Text :> (QueryParam "startIndex" (Textual Word32) :> (QueryParam "maxResults" (Textual Word32) :> (QueryParam "alt" AltJSON :> Get '[JSON] Volumes)))))))))))
Files
- README.md +3/−3
- gen/Network/Google/Books.hs +82/−3
- gen/Network/Google/Books/Types.hs +72/−5
- gen/Network/Google/Books/Types/Product.hs +7622/−6996
- gen/Network/Google/Books/Types/Sum.hs +192/−192
- gen/Network/Google/Resource/Books/Bookshelves/Get.hs +6/−4
- gen/Network/Google/Resource/Books/Bookshelves/List.hs +6/−4
- gen/Network/Google/Resource/Books/Bookshelves/Volumes/List.hs +6/−4
- gen/Network/Google/Resource/Books/CloudLoading/AddBook.hs +6/−4
- gen/Network/Google/Resource/Books/CloudLoading/DeleteBook.hs +6/−4
- gen/Network/Google/Resource/Books/CloudLoading/UpdateBook.hs +6/−4
- gen/Network/Google/Resource/Books/Dictionary/ListOfflineMetadata.hs +6/−4
- gen/Network/Google/Resource/Books/Layers/AnnotationData/Get.hs +6/−4
- gen/Network/Google/Resource/Books/Layers/AnnotationData/List.hs +6/−4
- gen/Network/Google/Resource/Books/Layers/Get.hs +6/−4
- gen/Network/Google/Resource/Books/Layers/List.hs +6/−4
- gen/Network/Google/Resource/Books/Layers/VolumeAnnotations/Get.hs +6/−4
- gen/Network/Google/Resource/Books/Layers/VolumeAnnotations/List.hs +6/−4
- gen/Network/Google/Resource/Books/MyConfig/GetUserSettings.hs +6/−4
- gen/Network/Google/Resource/Books/MyConfig/ReleaseDownloadAccess.hs +6/−4
- gen/Network/Google/Resource/Books/MyConfig/RequestAccess.hs +6/−4
- gen/Network/Google/Resource/Books/MyConfig/SyncVolumeLicenses.hs +32/−17
- gen/Network/Google/Resource/Books/MyConfig/UpdateUserSettings.hs +6/−4
- gen/Network/Google/Resource/Books/MyLibrary/Annotations/Delete.hs +6/−4
- gen/Network/Google/Resource/Books/MyLibrary/Annotations/Insert.hs +6/−4
- gen/Network/Google/Resource/Books/MyLibrary/Annotations/List.hs +6/−4
- gen/Network/Google/Resource/Books/MyLibrary/Annotations/Summary.hs +6/−4
- gen/Network/Google/Resource/Books/MyLibrary/Annotations/Update.hs +6/−4
- gen/Network/Google/Resource/Books/MyLibrary/Bookshelves/AddVolume.hs +6/−4
- gen/Network/Google/Resource/Books/MyLibrary/Bookshelves/ClearVolumes.hs +6/−4
- gen/Network/Google/Resource/Books/MyLibrary/Bookshelves/Get.hs +6/−4
- gen/Network/Google/Resource/Books/MyLibrary/Bookshelves/List.hs +6/−4
- gen/Network/Google/Resource/Books/MyLibrary/Bookshelves/MoveVolume.hs +6/−4
- gen/Network/Google/Resource/Books/MyLibrary/Bookshelves/RemoveVolume.hs +6/−4
- gen/Network/Google/Resource/Books/MyLibrary/Bookshelves/Volumes/List.hs +6/−4
- gen/Network/Google/Resource/Books/MyLibrary/ReadingPositions/Get.hs +6/−4
- gen/Network/Google/Resource/Books/MyLibrary/ReadingPositions/SetPosition.hs +6/−4
- gen/Network/Google/Resource/Books/Notification/Get.hs +6/−4
- gen/Network/Google/Resource/Books/Onboarding/ListCategories.hs +6/−4
- gen/Network/Google/Resource/Books/Onboarding/ListCategoryVolumes.hs +6/−4
- gen/Network/Google/Resource/Books/Personalizedstream/Get.hs +6/−4
- gen/Network/Google/Resource/Books/PromoOffer/Accept.hs +6/−4
- gen/Network/Google/Resource/Books/PromoOffer/Dismiss.hs +6/−4
- gen/Network/Google/Resource/Books/PromoOffer/Get.hs +6/−4
- gen/Network/Google/Resource/Books/Series/Get.hs +86/−0
- gen/Network/Google/Resource/Books/Series/Membership/Get.hs +113/−0
- gen/Network/Google/Resource/Books/Volumes/Associated/List.hs +6/−4
- gen/Network/Google/Resource/Books/Volumes/Get.hs +26/−10
- gen/Network/Google/Resource/Books/Volumes/List.hs +6/−4
- gen/Network/Google/Resource/Books/Volumes/Mybooks/List.hs +23/−9
- gen/Network/Google/Resource/Books/Volumes/Recommended/List.hs +6/−4
- gen/Network/Google/Resource/Books/Volumes/Recommended/Rate.hs +6/−4
- gen/Network/Google/Resource/Books/Volumes/UserUploaded/List.hs +6/−4
- gogol-books.cabal +5/−3
README.md view
@@ -8,7 +8,7 @@ ## Version -`0.0.1`+`0.1.0` ## Description@@ -18,9 +18,9 @@ ## Contribute -For any problems, comments, or feedback please create an issue [here on GitHub](https://github.com/brendanhay/amazonka/issues).+For any problems, comments, or feedback please create an issue [here on GitHub](https://github.com/brendanhay/gogol/issues). -> _Note:_ this library is an auto-generated Haskell package. Please see `amazonka-gen` for more information.+> _Note:_ this library is an auto-generated Haskell package. Please see `gogol-gen` for more information. ## Licence
gen/Network/Google/Books.hs view
@@ -7,7 +7,7 @@ -- | -- Module : Network.Google.Books--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -21,6 +21,9 @@ -- * Service Configuration booksService + -- * OAuth Scopes+ , booksScope+ -- * API Declaration , BooksAPI @@ -143,6 +146,12 @@ -- ** books.promooffer.get , module Network.Google.Resource.Books.PromoOffer.Get + -- ** books.series.get+ , module Network.Google.Resource.Books.Series.Get++ -- ** books.series.membership.get+ , module Network.Google.Resource.Books.Series.Membership.Get+ -- ** books.volumes.associated.list , module Network.Google.Resource.Books.Volumes.Associated.List @@ -258,6 +267,12 @@ , bclrAuthor , bclrTitle + -- ** VolumeseriesInfoVolumeSeriesItemIssueItem+ , VolumeseriesInfoVolumeSeriesItemIssueItem+ , volumeseriesInfoVolumeSeriesItemIssueItem+ , vivsiiiIssueOrderNumber+ , vivsiiiIssueDisplayNumber+ -- ** Annotation , Annotation , annotation@@ -293,19 +308,25 @@ -- ** VolumeUserInfo , VolumeUserInfo , volumeUserInfo+ , vuiIsFamilySharingAllowed+ , vuiIsFamilySharedToUser , vuiCopy , vuiUserUploadedVolumeInfo , vuiIsPurchased , vuiEntitlementType , vuiAcquisitionType+ , vuiAcquiredTime , vuiRentalState , vuiIsPreOrdered , vuiReview+ , vuiIsFamilySharedFromUser , vuiRentalPeriod , vuiUpdated , vuiIsUploaded , vuiIsInMyBooks , vuiReadingPosition+ , vuiFamilySharing+ , vuiIsFamilySharingDisabledByFop -- ** Layersummary , Layersummary@@ -387,6 +408,14 @@ , booksVolumesRecommendedRateResponse , bvrrrConsistencyToken + -- ** VolumeseriesInfo+ , VolumeseriesInfo+ , volumeseriesInfo+ , viBookDisplayNumber+ , viKind+ , viShortSeriesBookTitle+ , viVolumeSeries+ -- ** Bookshelf , Bookshelf , bookshelf@@ -404,9 +433,17 @@ -- ** Notification , Notification , notification+ , nDocType+ , nTargetURL+ , nShowNotificationSettingsAction+ , nDocId , nKind , nBody- , nLinkURL+ , nCrmExperimentIds+ , nPcampaignId+ , nReason+ , nDontShowNotification+ , nNotificationType , nIconURL , nTitle @@ -503,6 +540,12 @@ , gdgbiiLatitude , gdgbiiLongitude + -- ** Series+ , Series+ , series+ , sKind+ , sSeries+ -- ** OffersItemsItemItemsItem , OffersItemsItemItemsItem , offersItemsItemItemsItem@@ -611,6 +654,13 @@ , dddwisisisURL , dddwisisisAttribution + -- ** Seriesmembership+ , Seriesmembership+ , seriesmembership+ , serNextPageToken+ , serKind+ , serMember+ -- ** VolumesListFilter , VolumesListFilter (..) @@ -731,6 +781,15 @@ -- ** MyLibraryBookshelvesAddVolumeReason , MyLibraryBookshelvesAddVolumeReason (..) + -- ** SeriesSeriesItem+ , SeriesSeriesItem+ , seriesSeriesItem+ , ssiSeriesId+ , ssiImageURL+ , ssiBannerImageURL+ , ssiTitle+ , ssiSeriesType+ -- ** Metadata , Metadata , metadata@@ -873,6 +932,14 @@ , dTotalClusters , dClusters + -- ** VolumeseriesInfoVolumeSeriesItem+ , VolumeseriesInfoVolumeSeriesItem+ , volumeseriesInfoVolumeSeriesItem+ , vivsiSeriesId+ , vivsiSeriesBookType+ , vivsiOrderNumber+ , vivsiIssue+ -- ** UserSettingsNotesExport , UserSettingsNotesExport , userSettingsNotesExport@@ -940,6 +1007,7 @@ , vviCanonicalVolumeLink , vviReadingModes , vviIndustryIdentifiers+ , vviSeriesInfo , vviPrintedPageCount , vviMainCategory , vviContentVersion@@ -981,6 +1049,13 @@ , vsioirpCurrencyCode , vsioirpAmountInMicros + -- ** VolumeUserInfoFamilySharing+ , VolumeUserInfoFamilySharing+ , volumeUserInfoFamilySharing+ , vuifsFamilyRole+ , vuifsIsSharingAllowed+ , vuifsIsSharingDisabledByFop+ -- ** VolumeVolumeInfoIndustryIdentifiersItem , VolumeVolumeInfoIndustryIdentifiersItem , volumeVolumeInfoIndustryIdentifiersItem@@ -1044,6 +1119,8 @@ import Network.Google.Resource.Books.PromoOffer.Accept import Network.Google.Resource.Books.PromoOffer.Dismiss import Network.Google.Resource.Books.PromoOffer.Get+import Network.Google.Resource.Books.Series.Get+import Network.Google.Resource.Books.Series.Membership.Get import Network.Google.Resource.Books.Volumes.Associated.List import Network.Google.Resource.Books.Volumes.Get import Network.Google.Resource.Books.Volumes.List@@ -1059,7 +1136,9 @@ -- | Represents the entirety of the methods and resources available for the Books API service. type BooksAPI = NotificationGetResource :<|>- OnboardingListCategoriesResource+ SeriesMembershipGetResource+ :<|> SeriesGetResource+ :<|> OnboardingListCategoriesResource :<|> OnboardingListCategoryVolumesResource :<|> MyLibraryAnnotationsSummaryResource :<|> MyLibraryAnnotationsInsertResource
gen/Network/Google/Books/Types.hs view
@@ -1,3 +1,4 @@+{-# LANGUAGE DataKinds #-} {-# LANGUAGE DeriveDataTypeable #-} {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE NoImplicitPrelude #-}@@ -7,7 +8,7 @@ -- | -- Module : Network.Google.Books.Types--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -113,6 +114,12 @@ , bclrAuthor , bclrTitle + -- * VolumeseriesInfoVolumeSeriesItemIssueItem+ , VolumeseriesInfoVolumeSeriesItemIssueItem+ , volumeseriesInfoVolumeSeriesItemIssueItem+ , vivsiiiIssueOrderNumber+ , vivsiiiIssueDisplayNumber+ -- * Annotation , Annotation , annotation@@ -148,19 +155,25 @@ -- * VolumeUserInfo , VolumeUserInfo , volumeUserInfo+ , vuiIsFamilySharingAllowed+ , vuiIsFamilySharedToUser , vuiCopy , vuiUserUploadedVolumeInfo , vuiIsPurchased , vuiEntitlementType , vuiAcquisitionType+ , vuiAcquiredTime , vuiRentalState , vuiIsPreOrdered , vuiReview+ , vuiIsFamilySharedFromUser , vuiRentalPeriod , vuiUpdated , vuiIsUploaded , vuiIsInMyBooks , vuiReadingPosition+ , vuiFamilySharing+ , vuiIsFamilySharingDisabledByFop -- * Layersummary , Layersummary@@ -242,6 +255,14 @@ , booksVolumesRecommendedRateResponse , bvrrrConsistencyToken + -- * VolumeseriesInfo+ , VolumeseriesInfo+ , volumeseriesInfo+ , viBookDisplayNumber+ , viKind+ , viShortSeriesBookTitle+ , viVolumeSeries+ -- * Bookshelf , Bookshelf , bookshelf@@ -259,9 +280,17 @@ -- * Notification , Notification , notification+ , nDocType+ , nTargetURL+ , nShowNotificationSettingsAction+ , nDocId , nKind , nBody- , nLinkURL+ , nCrmExperimentIds+ , nPcampaignId+ , nReason+ , nDontShowNotification+ , nNotificationType , nIconURL , nTitle @@ -358,6 +387,12 @@ , gdgbiiLatitude , gdgbiiLongitude + -- * Series+ , Series+ , series+ , sKind+ , sSeries+ -- * OffersItemsItemItemsItem , OffersItemsItemItemsItem , offersItemsItemItemsItem@@ -466,6 +501,13 @@ , dddwisisisURL , dddwisisisAttribution + -- * Seriesmembership+ , Seriesmembership+ , seriesmembership+ , serNextPageToken+ , serKind+ , serMember+ -- * VolumesListFilter , VolumesListFilter (..) @@ -586,6 +628,15 @@ -- * MyLibraryBookshelvesAddVolumeReason , MyLibraryBookshelvesAddVolumeReason (..) + -- * SeriesSeriesItem+ , SeriesSeriesItem+ , seriesSeriesItem+ , ssiSeriesId+ , ssiImageURL+ , ssiBannerImageURL+ , ssiTitle+ , ssiSeriesType+ -- * Metadata , Metadata , metadata@@ -728,6 +779,14 @@ , dTotalClusters , dClusters + -- * VolumeseriesInfoVolumeSeriesItem+ , VolumeseriesInfoVolumeSeriesItem+ , volumeseriesInfoVolumeSeriesItem+ , vivsiSeriesId+ , vivsiSeriesBookType+ , vivsiOrderNumber+ , vivsiIssue+ -- * UserSettingsNotesExport , UserSettingsNotesExport , userSettingsNotesExport@@ -795,6 +854,7 @@ , vviCanonicalVolumeLink , vviReadingModes , vviIndustryIdentifiers+ , vviSeriesInfo , vviPrintedPageCount , vviMainCategory , vviContentVersion@@ -836,6 +896,13 @@ , vsioirpCurrencyCode , vsioirpAmountInMicros + -- * VolumeUserInfoFamilySharing+ , VolumeUserInfoFamilySharing+ , volumeUserInfoFamilySharing+ , vuifsFamilyRole+ , vuifsIsSharingAllowed+ , vuifsIsSharingDisabledByFop+ -- * VolumeVolumeInfoIndustryIdentifiersItem , VolumeVolumeInfoIndustryIdentifiersItem , volumeVolumeInfoIndustryIdentifiersItem@@ -863,11 +930,11 @@ import Network.Google.Prelude -- | Default request referring to version 'v1' of the Books API. This contains the host and root path used as a starting point for constructing service requests.-booksService :: Service+booksService :: ServiceConfig booksService = defaultService (ServiceId "books:v1") "www.googleapis.com" -- | Manage your books-booksScope :: OAuthScope-booksScope = "https://www.googleapis.com/auth/books";+booksScope :: Proxy '["https://www.googleapis.com/auth/books"]+booksScope = Proxy;
gen/Network/Google/Books/Types/Product.hs view
@@ -9,7002 +9,7628 @@ -- | -- Module : Network.Google.Books.Types.Product--- Copyright : (c) 2015 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)----module Network.Google.Books.Types.Product where--import Network.Google.Books.Types.Sum-import Network.Google.Prelude------- /See:/ 'userSettings' smart constructor.-data UserSettings = UserSettings- { _usNotification :: !(Maybe UserSettingsNotification)- , _usKind :: !Text- , _usNotesExport :: !(Maybe UserSettingsNotesExport)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'UserSettings' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'usNotification'------ * 'usKind'------ * 'usNotesExport'-userSettings- :: UserSettings-userSettings =- UserSettings- { _usNotification = Nothing- , _usKind = "books#usersettings"- , _usNotesExport = Nothing- }--usNotification :: Lens' UserSettings (Maybe UserSettingsNotification)-usNotification- = lens _usNotification- (\ s a -> s{_usNotification = a})---- | Resource type.-usKind :: Lens' UserSettings Text-usKind = lens _usKind (\ s a -> s{_usKind = a})---- | User settings in sub-objects, each for different purposes.-usNotesExport :: Lens' UserSettings (Maybe UserSettingsNotesExport)-usNotesExport- = lens _usNotesExport- (\ s a -> s{_usNotesExport = a})--instance FromJSON UserSettings where- parseJSON- = withObject "UserSettings"- (\ o ->- UserSettings <$>- (o .:? "notification") <*>- (o .:? "kind" .!= "books#usersettings")- <*> (o .:? "notesExport"))--instance ToJSON UserSettings where- toJSON UserSettings{..}- = object- (catMaybes- [("notification" .=) <$> _usNotification,- Just ("kind" .= _usKind),- ("notesExport" .=) <$> _usNotesExport])------- /See:/ 'annotations' smart constructor.-data Annotations = Annotations- { _aTotalItems :: !(Maybe (Textual Int32))- , _aNextPageToken :: !(Maybe Text)- , _aKind :: !Text- , _aItems :: !(Maybe [Annotation])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Annotations' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'aTotalItems'------ * 'aNextPageToken'------ * 'aKind'------ * 'aItems'-annotations- :: Annotations-annotations =- Annotations- { _aTotalItems = Nothing- , _aNextPageToken = Nothing- , _aKind = "books#annotations"- , _aItems = Nothing- }---- | Total number of annotations found. This may be greater than the number--- of notes returned in this response if results have been paginated.-aTotalItems :: Lens' Annotations (Maybe Int32)-aTotalItems- = lens _aTotalItems (\ s a -> s{_aTotalItems = a}) .- mapping _Coerce---- | Token to pass in for pagination for the next page. This will not be--- present if this request does not have more results.-aNextPageToken :: Lens' Annotations (Maybe Text)-aNextPageToken- = lens _aNextPageToken- (\ s a -> s{_aNextPageToken = a})---- | Resource type.-aKind :: Lens' Annotations Text-aKind = lens _aKind (\ s a -> s{_aKind = a})---- | A list of annotations.-aItems :: Lens' Annotations [Annotation]-aItems- = lens _aItems (\ s a -> s{_aItems = a}) . _Default .- _Coerce--instance FromJSON Annotations where- parseJSON- = withObject "Annotations"- (\ o ->- Annotations <$>- (o .:? "totalItems") <*> (o .:? "nextPageToken") <*>- (o .:? "kind" .!= "books#annotations")- <*> (o .:? "items" .!= mempty))--instance ToJSON Annotations where- toJSON Annotations{..}- = object- (catMaybes- [("totalItems" .=) <$> _aTotalItems,- ("nextPageToken" .=) <$> _aNextPageToken,- Just ("kind" .= _aKind), ("items" .=) <$> _aItems])------- /See:/ 'annotationsData' smart constructor.-data AnnotationsData = AnnotationsData- { _adTotalItems :: !(Maybe (Textual Int32))- , _adNextPageToken :: !(Maybe Text)- , _adKind :: !Text- , _adItems :: !(Maybe [AnnotationData])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'AnnotationsData' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'adTotalItems'------ * 'adNextPageToken'------ * 'adKind'------ * 'adItems'-annotationsData- :: AnnotationsData-annotationsData =- AnnotationsData- { _adTotalItems = Nothing- , _adNextPageToken = Nothing- , _adKind = "books#annotationsdata"- , _adItems = Nothing- }---- | The total number of volume annotations found.-adTotalItems :: Lens' AnnotationsData (Maybe Int32)-adTotalItems- = lens _adTotalItems (\ s a -> s{_adTotalItems = a})- . mapping _Coerce---- | Token to pass in for pagination for the next page. This will not be--- present if this request does not have more results.-adNextPageToken :: Lens' AnnotationsData (Maybe Text)-adNextPageToken- = lens _adNextPageToken- (\ s a -> s{_adNextPageToken = a})---- | Resource type-adKind :: Lens' AnnotationsData Text-adKind = lens _adKind (\ s a -> s{_adKind = a})---- | A list of Annotation Data.-adItems :: Lens' AnnotationsData [AnnotationData]-adItems- = lens _adItems (\ s a -> s{_adItems = a}) . _Default- . _Coerce--instance FromJSON AnnotationsData where- parseJSON- = withObject "AnnotationsData"- (\ o ->- AnnotationsData <$>- (o .:? "totalItems") <*> (o .:? "nextPageToken") <*>- (o .:? "kind" .!= "books#annotationsdata")- <*> (o .:? "items" .!= mempty))--instance ToJSON AnnotationsData where- toJSON AnnotationsData{..}- = object- (catMaybes- [("totalItems" .=) <$> _adTotalItems,- ("nextPageToken" .=) <$> _adNextPageToken,- Just ("kind" .= _adKind), ("items" .=) <$> _adItems])------- /See:/ 'userSettingsNotificationMoreFromAuthors' smart constructor.-newtype UserSettingsNotificationMoreFromAuthors = UserSettingsNotificationMoreFromAuthors- { _usnmfaOptedState :: Maybe Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'UserSettingsNotificationMoreFromAuthors' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'usnmfaOptedState'-userSettingsNotificationMoreFromAuthors- :: UserSettingsNotificationMoreFromAuthors-userSettingsNotificationMoreFromAuthors =- UserSettingsNotificationMoreFromAuthors- { _usnmfaOptedState = Nothing- }--usnmfaOptedState :: Lens' UserSettingsNotificationMoreFromAuthors (Maybe Text)-usnmfaOptedState- = lens _usnmfaOptedState- (\ s a -> s{_usnmfaOptedState = a})--instance FromJSON- UserSettingsNotificationMoreFromAuthors where- parseJSON- = withObject- "UserSettingsNotificationMoreFromAuthors"- (\ o ->- UserSettingsNotificationMoreFromAuthors <$>- (o .:? "opted_state"))--instance ToJSON- UserSettingsNotificationMoreFromAuthors where- toJSON UserSettingsNotificationMoreFromAuthors{..}- = object- (catMaybes- [("opted_state" .=) <$> _usnmfaOptedState])------- /See:/ 'volumeannotations' smart constructor.-data Volumeannotations = Volumeannotations- { _vTotalItems :: !(Maybe (Textual Int32))- , _vNextPageToken :: !(Maybe Text)- , _vKind :: !Text- , _vItems :: !(Maybe [Volumeannotation])- , _vVersion :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Volumeannotations' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'vTotalItems'------ * 'vNextPageToken'------ * 'vKind'------ * 'vItems'------ * 'vVersion'-volumeannotations- :: Volumeannotations-volumeannotations =- Volumeannotations- { _vTotalItems = Nothing- , _vNextPageToken = Nothing- , _vKind = "books#volumeannotations"- , _vItems = Nothing- , _vVersion = Nothing- }---- | The total number of volume annotations found.-vTotalItems :: Lens' Volumeannotations (Maybe Int32)-vTotalItems- = lens _vTotalItems (\ s a -> s{_vTotalItems = a}) .- mapping _Coerce---- | Token to pass in for pagination for the next page. This will not be--- present if this request does not have more results.-vNextPageToken :: Lens' Volumeannotations (Maybe Text)-vNextPageToken- = lens _vNextPageToken- (\ s a -> s{_vNextPageToken = a})---- | Resource type-vKind :: Lens' Volumeannotations Text-vKind = lens _vKind (\ s a -> s{_vKind = a})---- | A list of volume annotations.-vItems :: Lens' Volumeannotations [Volumeannotation]-vItems- = lens _vItems (\ s a -> s{_vItems = a}) . _Default .- _Coerce---- | The version string for all of the volume annotations in this layer (not--- just the ones in this response). Note: the version string doesn\'t apply--- to the annotation data, just the information in this response (e.g. the--- location of annotations in the book).-vVersion :: Lens' Volumeannotations (Maybe Text)-vVersion = lens _vVersion (\ s a -> s{_vVersion = a})--instance FromJSON Volumeannotations where- parseJSON- = withObject "Volumeannotations"- (\ o ->- Volumeannotations <$>- (o .:? "totalItems") <*> (o .:? "nextPageToken") <*>- (o .:? "kind" .!= "books#volumeannotations")- <*> (o .:? "items" .!= mempty)- <*> (o .:? "version"))--instance ToJSON Volumeannotations where- toJSON Volumeannotations{..}- = object- (catMaybes- [("totalItems" .=) <$> _vTotalItems,- ("nextPageToken" .=) <$> _vNextPageToken,- Just ("kind" .= _vKind), ("items" .=) <$> _vItems,- ("version" .=) <$> _vVersion])---- | Information regarding the source of this review, when the review is not--- from a Google Books user.------ /See:/ 'reviewSource' smart constructor.-data ReviewSource = ReviewSource- { _rsExtraDescription :: !(Maybe Text)- , _rsURL :: !(Maybe Text)- , _rsDescription :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ReviewSource' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rsExtraDescription'------ * 'rsURL'------ * 'rsDescription'-reviewSource- :: ReviewSource-reviewSource =- ReviewSource- { _rsExtraDescription = Nothing- , _rsURL = Nothing- , _rsDescription = Nothing- }---- | Extra text about the source of the review.-rsExtraDescription :: Lens' ReviewSource (Maybe Text)-rsExtraDescription- = lens _rsExtraDescription- (\ s a -> s{_rsExtraDescription = a})---- | URL of the source of the review.-rsURL :: Lens' ReviewSource (Maybe Text)-rsURL = lens _rsURL (\ s a -> s{_rsURL = a})---- | Name of the source.-rsDescription :: Lens' ReviewSource (Maybe Text)-rsDescription- = lens _rsDescription- (\ s a -> s{_rsDescription = a})--instance FromJSON ReviewSource where- parseJSON- = withObject "ReviewSource"- (\ o ->- ReviewSource <$>- (o .:? "extraDescription") <*> (o .:? "url") <*>- (o .:? "description"))--instance ToJSON ReviewSource where- toJSON ReviewSource{..}- = object- (catMaybes- [("extraDescription" .=) <$> _rsExtraDescription,- ("url" .=) <$> _rsURL,- ("description" .=) <$> _rsDescription])------- /See:/ 'annotationData' smart constructor.-data AnnotationData = AnnotationData- { _annEncodedData :: !(Maybe (Textual Word8))- , _annKind :: !Text- , _annData :: !(Maybe JSONValue)- , _annSelfLink :: !(Maybe Text)- , _annAnnotationType :: !(Maybe Text)- , _annVolumeId :: !(Maybe Text)- , _annId :: !(Maybe Text)- , _annUpdated :: !(Maybe DateTime')- , _annLayerId :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'AnnotationData' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'annEncodedData'------ * 'annKind'------ * 'annData'------ * 'annSelfLink'------ * 'annAnnotationType'------ * 'annVolumeId'------ * 'annId'------ * 'annUpdated'------ * 'annLayerId'-annotationData- :: AnnotationData-annotationData =- AnnotationData- { _annEncodedData = Nothing- , _annKind = "books#annotationdata"- , _annData = Nothing- , _annSelfLink = Nothing- , _annAnnotationType = Nothing- , _annVolumeId = Nothing- , _annId = Nothing- , _annUpdated = Nothing- , _annLayerId = Nothing- }---- | Base64 encoded data for this annotation data.-annEncodedData :: Lens' AnnotationData (Maybe Word8)-annEncodedData- = lens _annEncodedData- (\ s a -> s{_annEncodedData = a})- . mapping _Coerce---- | Resource Type-annKind :: Lens' AnnotationData Text-annKind = lens _annKind (\ s a -> s{_annKind = a})--annData :: Lens' AnnotationData (Maybe JSONValue)-annData = lens _annData (\ s a -> s{_annData = a})---- | URL for this resource. *-annSelfLink :: Lens' AnnotationData (Maybe Text)-annSelfLink- = lens _annSelfLink (\ s a -> s{_annSelfLink = a})---- | The type of annotation this data is for.-annAnnotationType :: Lens' AnnotationData (Maybe Text)-annAnnotationType- = lens _annAnnotationType- (\ s a -> s{_annAnnotationType = a})---- | The volume id for this data. *-annVolumeId :: Lens' AnnotationData (Maybe Text)-annVolumeId- = lens _annVolumeId (\ s a -> s{_annVolumeId = a})---- | Unique id for this annotation data.-annId :: Lens' AnnotationData (Maybe Text)-annId = lens _annId (\ s a -> s{_annId = a})---- | Timestamp for the last time this data was updated. (RFC 3339 UTC--- date-time format).-annUpdated :: Lens' AnnotationData (Maybe UTCTime)-annUpdated- = lens _annUpdated (\ s a -> s{_annUpdated = a}) .- mapping _DateTime---- | The Layer id for this data. *-annLayerId :: Lens' AnnotationData (Maybe Text)-annLayerId- = lens _annLayerId (\ s a -> s{_annLayerId = a})--instance FromJSON AnnotationData where- parseJSON- = withObject "AnnotationData"- (\ o ->- AnnotationData <$>- (o .:? "encoded_data") <*>- (o .:? "kind" .!= "books#annotationdata")- <*> (o .:? "data")- <*> (o .:? "selfLink")- <*> (o .:? "annotationType")- <*> (o .:? "volumeId")- <*> (o .:? "id")- <*> (o .:? "updated")- <*> (o .:? "layerId"))--instance ToJSON AnnotationData where- toJSON AnnotationData{..}- = object- (catMaybes- [("encoded_data" .=) <$> _annEncodedData,- Just ("kind" .= _annKind), ("data" .=) <$> _annData,- ("selfLink" .=) <$> _annSelfLink,- ("annotationType" .=) <$> _annAnnotationType,- ("volumeId" .=) <$> _annVolumeId,- ("id" .=) <$> _annId, ("updated" .=) <$> _annUpdated,- ("layerId" .=) <$> _annLayerId])------- /See:/ 'volumeannotation' smart constructor.-data Volumeannotation = Volumeannotation- { _volSelectedText :: !(Maybe Text)- , _volAnnotationDataLink :: !(Maybe Text)- , _volPageIds :: !(Maybe [Text])- , _volKind :: !Text- , _volData :: !(Maybe Text)- , _volSelfLink :: !(Maybe Text)- , _volAnnotationType :: !(Maybe Text)- , _volAnnotationDataId :: !(Maybe Text)- , _volContentRanges :: !(Maybe VolumeannotationContentRanges)- , _volVolumeId :: !(Maybe Text)- , _volId :: !(Maybe Text)- , _volDeleted :: !(Maybe Bool)- , _volUpdated :: !(Maybe DateTime')- , _volLayerId :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Volumeannotation' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'volSelectedText'------ * 'volAnnotationDataLink'------ * 'volPageIds'------ * 'volKind'------ * 'volData'------ * 'volSelfLink'------ * 'volAnnotationType'------ * 'volAnnotationDataId'------ * 'volContentRanges'------ * 'volVolumeId'------ * 'volId'------ * 'volDeleted'------ * 'volUpdated'------ * 'volLayerId'-volumeannotation- :: Volumeannotation-volumeannotation =- Volumeannotation- { _volSelectedText = Nothing- , _volAnnotationDataLink = Nothing- , _volPageIds = Nothing- , _volKind = "books#volumeannotation"- , _volData = Nothing- , _volSelfLink = Nothing- , _volAnnotationType = Nothing- , _volAnnotationDataId = Nothing- , _volContentRanges = Nothing- , _volVolumeId = Nothing- , _volId = Nothing- , _volDeleted = Nothing- , _volUpdated = Nothing- , _volLayerId = Nothing- }---- | Excerpt from the volume.-volSelectedText :: Lens' Volumeannotation (Maybe Text)-volSelectedText- = lens _volSelectedText- (\ s a -> s{_volSelectedText = a})---- | Link to get data for this annotation.-volAnnotationDataLink :: Lens' Volumeannotation (Maybe Text)-volAnnotationDataLink- = lens _volAnnotationDataLink- (\ s a -> s{_volAnnotationDataLink = a})---- | Pages the annotation spans.-volPageIds :: Lens' Volumeannotation [Text]-volPageIds- = lens _volPageIds (\ s a -> s{_volPageIds = a}) .- _Default- . _Coerce---- | Resource Type-volKind :: Lens' Volumeannotation Text-volKind = lens _volKind (\ s a -> s{_volKind = a})---- | Data for this annotation.-volData :: Lens' Volumeannotation (Maybe Text)-volData = lens _volData (\ s a -> s{_volData = a})---- | URL to this resource.-volSelfLink :: Lens' Volumeannotation (Maybe Text)-volSelfLink- = lens _volSelfLink (\ s a -> s{_volSelfLink = a})---- | The type of annotation this is.-volAnnotationType :: Lens' Volumeannotation (Maybe Text)-volAnnotationType- = lens _volAnnotationType- (\ s a -> s{_volAnnotationType = a})---- | The annotation data id for this volume annotation.-volAnnotationDataId :: Lens' Volumeannotation (Maybe Text)-volAnnotationDataId- = lens _volAnnotationDataId- (\ s a -> s{_volAnnotationDataId = a})---- | The content ranges to identify the selected text.-volContentRanges :: Lens' Volumeannotation (Maybe VolumeannotationContentRanges)-volContentRanges- = lens _volContentRanges- (\ s a -> s{_volContentRanges = a})---- | The Volume this annotation is for.-volVolumeId :: Lens' Volumeannotation (Maybe Text)-volVolumeId- = lens _volVolumeId (\ s a -> s{_volVolumeId = a})---- | Unique id of this volume annotation.-volId :: Lens' Volumeannotation (Maybe Text)-volId = lens _volId (\ s a -> s{_volId = a})---- | Indicates that this annotation is deleted.-volDeleted :: Lens' Volumeannotation (Maybe Bool)-volDeleted- = lens _volDeleted (\ s a -> s{_volDeleted = a})---- | Timestamp for the last time this anntoation was updated. (RFC 3339 UTC--- date-time format).-volUpdated :: Lens' Volumeannotation (Maybe UTCTime)-volUpdated- = lens _volUpdated (\ s a -> s{_volUpdated = a}) .- mapping _DateTime---- | The Layer this annotation is for.-volLayerId :: Lens' Volumeannotation (Maybe Text)-volLayerId- = lens _volLayerId (\ s a -> s{_volLayerId = a})--instance FromJSON Volumeannotation where- parseJSON- = withObject "Volumeannotation"- (\ o ->- Volumeannotation <$>- (o .:? "selectedText") <*>- (o .:? "annotationDataLink")- <*> (o .:? "pageIds" .!= mempty)- <*> (o .:? "kind" .!= "books#volumeannotation")- <*> (o .:? "data")- <*> (o .:? "selfLink")- <*> (o .:? "annotationType")- <*> (o .:? "annotationDataId")- <*> (o .:? "contentRanges")- <*> (o .:? "volumeId")- <*> (o .:? "id")- <*> (o .:? "deleted")- <*> (o .:? "updated")- <*> (o .:? "layerId"))--instance ToJSON Volumeannotation where- toJSON Volumeannotation{..}- = object- (catMaybes- [("selectedText" .=) <$> _volSelectedText,- ("annotationDataLink" .=) <$> _volAnnotationDataLink,- ("pageIds" .=) <$> _volPageIds,- Just ("kind" .= _volKind), ("data" .=) <$> _volData,- ("selfLink" .=) <$> _volSelfLink,- ("annotationType" .=) <$> _volAnnotationType,- ("annotationDataId" .=) <$> _volAnnotationDataId,- ("contentRanges" .=) <$> _volContentRanges,- ("volumeId" .=) <$> _volVolumeId,- ("id" .=) <$> _volId, ("deleted" .=) <$> _volDeleted,- ("updated" .=) <$> _volUpdated,- ("layerId" .=) <$> _volLayerId])------- /See:/ 'booksCloudLoadingResource' smart constructor.-data BooksCloudLoadingResource = BooksCloudLoadingResource- { _bclrProcessingState :: !(Maybe Text)- , _bclrVolumeId :: !(Maybe Text)- , _bclrAuthor :: !(Maybe Text)- , _bclrTitle :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'BooksCloudLoadingResource' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'bclrProcessingState'------ * 'bclrVolumeId'------ * 'bclrAuthor'------ * 'bclrTitle'-booksCloudLoadingResource- :: BooksCloudLoadingResource-booksCloudLoadingResource =- BooksCloudLoadingResource- { _bclrProcessingState = Nothing- , _bclrVolumeId = Nothing- , _bclrAuthor = Nothing- , _bclrTitle = Nothing- }--bclrProcessingState :: Lens' BooksCloudLoadingResource (Maybe Text)-bclrProcessingState- = lens _bclrProcessingState- (\ s a -> s{_bclrProcessingState = a})--bclrVolumeId :: Lens' BooksCloudLoadingResource (Maybe Text)-bclrVolumeId- = lens _bclrVolumeId (\ s a -> s{_bclrVolumeId = a})--bclrAuthor :: Lens' BooksCloudLoadingResource (Maybe Text)-bclrAuthor- = lens _bclrAuthor (\ s a -> s{_bclrAuthor = a})--bclrTitle :: Lens' BooksCloudLoadingResource (Maybe Text)-bclrTitle- = lens _bclrTitle (\ s a -> s{_bclrTitle = a})--instance FromJSON BooksCloudLoadingResource where- parseJSON- = withObject "BooksCloudLoadingResource"- (\ o ->- BooksCloudLoadingResource <$>- (o .:? "processingState") <*> (o .:? "volumeId") <*>- (o .:? "author")- <*> (o .:? "title"))--instance ToJSON BooksCloudLoadingResource where- toJSON BooksCloudLoadingResource{..}- = object- (catMaybes- [("processingState" .=) <$> _bclrProcessingState,- ("volumeId" .=) <$> _bclrVolumeId,- ("author" .=) <$> _bclrAuthor,- ("title" .=) <$> _bclrTitle])------- /See:/ 'annotation' smart constructor.-data Annotation = Annotation- { _aaSelectedText :: !(Maybe Text)- , _aaLayerSummary :: !(Maybe AnnotationLayerSummary)- , _aaHighlightStyle :: !(Maybe Text)- , _aaClientVersionRanges :: !(Maybe AnnotationClientVersionRanges)- , _aaPageIds :: !(Maybe [Text])- , _aaKind :: !Text- , _aaData :: !(Maybe Text)- , _aaCreated :: !(Maybe DateTime')- , _aaAfterSelectedText :: !(Maybe Text)- , _aaSelfLink :: !(Maybe Text)- , _aaCurrentVersionRanges :: !(Maybe AnnotationCurrentVersionRanges)- , _aaVolumeId :: !(Maybe Text)- , _aaBeforeSelectedText :: !(Maybe Text)- , _aaId :: !(Maybe Text)- , _aaDeleted :: !(Maybe Bool)- , _aaUpdated :: !(Maybe DateTime')- , _aaLayerId :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Annotation' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'aaSelectedText'------ * 'aaLayerSummary'------ * 'aaHighlightStyle'------ * 'aaClientVersionRanges'------ * 'aaPageIds'------ * 'aaKind'------ * 'aaData'------ * 'aaCreated'------ * 'aaAfterSelectedText'------ * 'aaSelfLink'------ * 'aaCurrentVersionRanges'------ * 'aaVolumeId'------ * 'aaBeforeSelectedText'------ * 'aaId'------ * 'aaDeleted'------ * 'aaUpdated'------ * 'aaLayerId'-annotation- :: Annotation-annotation =- Annotation- { _aaSelectedText = Nothing- , _aaLayerSummary = Nothing- , _aaHighlightStyle = Nothing- , _aaClientVersionRanges = Nothing- , _aaPageIds = Nothing- , _aaKind = "books#annotation"- , _aaData = Nothing- , _aaCreated = Nothing- , _aaAfterSelectedText = Nothing- , _aaSelfLink = Nothing- , _aaCurrentVersionRanges = Nothing- , _aaVolumeId = Nothing- , _aaBeforeSelectedText = Nothing- , _aaId = Nothing- , _aaDeleted = Nothing- , _aaUpdated = Nothing- , _aaLayerId = Nothing- }---- | Excerpt from the volume.-aaSelectedText :: Lens' Annotation (Maybe Text)-aaSelectedText- = lens _aaSelectedText- (\ s a -> s{_aaSelectedText = a})--aaLayerSummary :: Lens' Annotation (Maybe AnnotationLayerSummary)-aaLayerSummary- = lens _aaLayerSummary- (\ s a -> s{_aaLayerSummary = a})---- | The highlight style for this annotation.-aaHighlightStyle :: Lens' Annotation (Maybe Text)-aaHighlightStyle- = lens _aaHighlightStyle- (\ s a -> s{_aaHighlightStyle = a})---- | Selection ranges sent from the client.-aaClientVersionRanges :: Lens' Annotation (Maybe AnnotationClientVersionRanges)-aaClientVersionRanges- = lens _aaClientVersionRanges- (\ s a -> s{_aaClientVersionRanges = a})---- | Pages that this annotation spans.-aaPageIds :: Lens' Annotation [Text]-aaPageIds- = lens _aaPageIds (\ s a -> s{_aaPageIds = a}) .- _Default- . _Coerce---- | Resource type.-aaKind :: Lens' Annotation Text-aaKind = lens _aaKind (\ s a -> s{_aaKind = a})---- | User-created data for this annotation.-aaData :: Lens' Annotation (Maybe Text)-aaData = lens _aaData (\ s a -> s{_aaData = a})---- | Timestamp for the created time of this annotation.-aaCreated :: Lens' Annotation (Maybe UTCTime)-aaCreated- = lens _aaCreated (\ s a -> s{_aaCreated = a}) .- mapping _DateTime---- | Anchor text after excerpt. For requests, if the user bookmarked a screen--- that has no flowing text on it, then this field should be empty.-aaAfterSelectedText :: Lens' Annotation (Maybe Text)-aaAfterSelectedText- = lens _aaAfterSelectedText- (\ s a -> s{_aaAfterSelectedText = a})---- | URL to this resource.-aaSelfLink :: Lens' Annotation (Maybe Text)-aaSelfLink- = lens _aaSelfLink (\ s a -> s{_aaSelfLink = a})---- | Selection ranges for the most recent content version.-aaCurrentVersionRanges :: Lens' Annotation (Maybe AnnotationCurrentVersionRanges)-aaCurrentVersionRanges- = lens _aaCurrentVersionRanges- (\ s a -> s{_aaCurrentVersionRanges = a})---- | The volume that this annotation belongs to.-aaVolumeId :: Lens' Annotation (Maybe Text)-aaVolumeId- = lens _aaVolumeId (\ s a -> s{_aaVolumeId = a})---- | Anchor text before excerpt. For requests, if the user bookmarked a--- screen that has no flowing text on it, then this field should be empty.-aaBeforeSelectedText :: Lens' Annotation (Maybe Text)-aaBeforeSelectedText- = lens _aaBeforeSelectedText- (\ s a -> s{_aaBeforeSelectedText = a})---- | Id of this annotation, in the form of a GUID.-aaId :: Lens' Annotation (Maybe Text)-aaId = lens _aaId (\ s a -> s{_aaId = a})---- | Indicates that this annotation is deleted.-aaDeleted :: Lens' Annotation (Maybe Bool)-aaDeleted- = lens _aaDeleted (\ s a -> s{_aaDeleted = a})---- | Timestamp for the last time this annotation was modified.-aaUpdated :: Lens' Annotation (Maybe UTCTime)-aaUpdated- = lens _aaUpdated (\ s a -> s{_aaUpdated = a}) .- mapping _DateTime---- | The layer this annotation is for.-aaLayerId :: Lens' Annotation (Maybe Text)-aaLayerId- = lens _aaLayerId (\ s a -> s{_aaLayerId = a})--instance FromJSON Annotation where- parseJSON- = withObject "Annotation"- (\ o ->- Annotation <$>- (o .:? "selectedText") <*> (o .:? "layerSummary") <*>- (o .:? "highlightStyle")- <*> (o .:? "clientVersionRanges")- <*> (o .:? "pageIds" .!= mempty)- <*> (o .:? "kind" .!= "books#annotation")- <*> (o .:? "data")- <*> (o .:? "created")- <*> (o .:? "afterSelectedText")- <*> (o .:? "selfLink")- <*> (o .:? "currentVersionRanges")- <*> (o .:? "volumeId")- <*> (o .:? "beforeSelectedText")- <*> (o .:? "id")- <*> (o .:? "deleted")- <*> (o .:? "updated")- <*> (o .:? "layerId"))--instance ToJSON Annotation where- toJSON Annotation{..}- = object- (catMaybes- [("selectedText" .=) <$> _aaSelectedText,- ("layerSummary" .=) <$> _aaLayerSummary,- ("highlightStyle" .=) <$> _aaHighlightStyle,- ("clientVersionRanges" .=) <$>- _aaClientVersionRanges,- ("pageIds" .=) <$> _aaPageIds,- Just ("kind" .= _aaKind), ("data" .=) <$> _aaData,- ("created" .=) <$> _aaCreated,- ("afterSelectedText" .=) <$> _aaAfterSelectedText,- ("selfLink" .=) <$> _aaSelfLink,- ("currentVersionRanges" .=) <$>- _aaCurrentVersionRanges,- ("volumeId" .=) <$> _aaVolumeId,- ("beforeSelectedText" .=) <$> _aaBeforeSelectedText,- ("id" .=) <$> _aaId, ("deleted" .=) <$> _aaDeleted,- ("updated" .=) <$> _aaUpdated,- ("layerId" .=) <$> _aaLayerId])---- | Author of this review.------ /See:/ 'reviewAuthor' smart constructor.-newtype ReviewAuthor = ReviewAuthor- { _raDisplayName :: Maybe Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ReviewAuthor' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'raDisplayName'-reviewAuthor- :: ReviewAuthor-reviewAuthor =- ReviewAuthor- { _raDisplayName = Nothing- }---- | Name of this person.-raDisplayName :: Lens' ReviewAuthor (Maybe Text)-raDisplayName- = lens _raDisplayName- (\ s a -> s{_raDisplayName = a})--instance FromJSON ReviewAuthor where- parseJSON- = withObject "ReviewAuthor"- (\ o -> ReviewAuthor <$> (o .:? "displayName"))--instance ToJSON ReviewAuthor where- toJSON ReviewAuthor{..}- = object- (catMaybes [("displayName" .=) <$> _raDisplayName])---- | The viewport for showing this location. This is a latitude, longitude--- rectangle.------ /See:/ 'geolayerDataGeoViewport' smart constructor.-data GeolayerDataGeoViewport = GeolayerDataGeoViewport- { _gdgvHi :: !(Maybe GeolayerDataGeoViewportHi)- , _gdgvLo :: !(Maybe GeolayerDataGeoViewportLo)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GeolayerDataGeoViewport' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gdgvHi'------ * 'gdgvLo'-geolayerDataGeoViewport- :: GeolayerDataGeoViewport-geolayerDataGeoViewport =- GeolayerDataGeoViewport- { _gdgvHi = Nothing- , _gdgvLo = Nothing- }--gdgvHi :: Lens' GeolayerDataGeoViewport (Maybe GeolayerDataGeoViewportHi)-gdgvHi = lens _gdgvHi (\ s a -> s{_gdgvHi = a})--gdgvLo :: Lens' GeolayerDataGeoViewport (Maybe GeolayerDataGeoViewportLo)-gdgvLo = lens _gdgvLo (\ s a -> s{_gdgvLo = a})--instance FromJSON GeolayerDataGeoViewport where- parseJSON- = withObject "GeolayerDataGeoViewport"- (\ o ->- GeolayerDataGeoViewport <$>- (o .:? "hi") <*> (o .:? "lo"))--instance ToJSON GeolayerDataGeoViewport where- toJSON GeolayerDataGeoViewport{..}- = object- (catMaybes- [("hi" .=) <$> _gdgvHi, ("lo" .=) <$> _gdgvLo])---- | User specific information related to this volume. (e.g. page this user--- last read or whether they purchased this book)------ /See:/ 'volumeUserInfo' smart constructor.-data VolumeUserInfo = VolumeUserInfo- { _vuiCopy :: !(Maybe VolumeUserInfoCopy)- , _vuiUserUploadedVolumeInfo :: !(Maybe VolumeUserInfoUserUploadedVolumeInfo)- , _vuiIsPurchased :: !(Maybe Bool)- , _vuiEntitlementType :: !(Maybe (Textual Int32))- , _vuiAcquisitionType :: !(Maybe (Textual Int32))- , _vuiRentalState :: !(Maybe Text)- , _vuiIsPreOrdered :: !(Maybe Bool)- , _vuiReview :: !(Maybe Review)- , _vuiRentalPeriod :: !(Maybe VolumeUserInfoRentalPeriod)- , _vuiUpdated :: !(Maybe DateTime')- , _vuiIsUploaded :: !(Maybe Bool)- , _vuiIsInMyBooks :: !(Maybe Bool)- , _vuiReadingPosition :: !(Maybe ReadingPosition)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'VolumeUserInfo' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'vuiCopy'------ * 'vuiUserUploadedVolumeInfo'------ * 'vuiIsPurchased'------ * 'vuiEntitlementType'------ * 'vuiAcquisitionType'------ * 'vuiRentalState'------ * 'vuiIsPreOrdered'------ * 'vuiReview'------ * 'vuiRentalPeriod'------ * 'vuiUpdated'------ * 'vuiIsUploaded'------ * 'vuiIsInMyBooks'------ * 'vuiReadingPosition'-volumeUserInfo- :: VolumeUserInfo-volumeUserInfo =- VolumeUserInfo- { _vuiCopy = Nothing- , _vuiUserUploadedVolumeInfo = Nothing- , _vuiIsPurchased = Nothing- , _vuiEntitlementType = Nothing- , _vuiAcquisitionType = Nothing- , _vuiRentalState = Nothing- , _vuiIsPreOrdered = Nothing- , _vuiReview = Nothing- , _vuiRentalPeriod = Nothing- , _vuiUpdated = Nothing- , _vuiIsUploaded = Nothing- , _vuiIsInMyBooks = Nothing- , _vuiReadingPosition = Nothing- }---- | Copy\/Paste accounting information.-vuiCopy :: Lens' VolumeUserInfo (Maybe VolumeUserInfoCopy)-vuiCopy = lens _vuiCopy (\ s a -> s{_vuiCopy = a})--vuiUserUploadedVolumeInfo :: Lens' VolumeUserInfo (Maybe VolumeUserInfoUserUploadedVolumeInfo)-vuiUserUploadedVolumeInfo- = lens _vuiUserUploadedVolumeInfo- (\ s a -> s{_vuiUserUploadedVolumeInfo = a})---- | Whether or not this volume was purchased by the authenticated user--- making the request. (In LITE projection.)-vuiIsPurchased :: Lens' VolumeUserInfo (Maybe Bool)-vuiIsPurchased- = lens _vuiIsPurchased- (\ s a -> s{_vuiIsPurchased = a})---- | Whether this volume is purchased, sample, pd download etc.-vuiEntitlementType :: Lens' VolumeUserInfo (Maybe Int32)-vuiEntitlementType- = lens _vuiEntitlementType- (\ s a -> s{_vuiEntitlementType = a})- . mapping _Coerce---- | How this volume was acquired.-vuiAcquisitionType :: Lens' VolumeUserInfo (Maybe Int32)-vuiAcquisitionType- = lens _vuiAcquisitionType- (\ s a -> s{_vuiAcquisitionType = a})- . mapping _Coerce---- | Whether this book is an active or an expired rental.-vuiRentalState :: Lens' VolumeUserInfo (Maybe Text)-vuiRentalState- = lens _vuiRentalState- (\ s a -> s{_vuiRentalState = a})---- | Whether or not this volume was pre-ordered by the authenticated user--- making the request. (In LITE projection.)-vuiIsPreOrdered :: Lens' VolumeUserInfo (Maybe Bool)-vuiIsPreOrdered- = lens _vuiIsPreOrdered- (\ s a -> s{_vuiIsPreOrdered = a})---- | This user\'s review of this volume, if one exists.-vuiReview :: Lens' VolumeUserInfo (Maybe Review)-vuiReview- = lens _vuiReview (\ s a -> s{_vuiReview = a})---- | Period during this book is\/was a valid rental.-vuiRentalPeriod :: Lens' VolumeUserInfo (Maybe VolumeUserInfoRentalPeriod)-vuiRentalPeriod- = lens _vuiRentalPeriod- (\ s a -> s{_vuiRentalPeriod = a})---- | Timestamp when this volume was last modified by a user action, such as a--- reading position update, volume purchase or writing a review. (RFC 3339--- UTC date-time format).-vuiUpdated :: Lens' VolumeUserInfo (Maybe UTCTime)-vuiUpdated- = lens _vuiUpdated (\ s a -> s{_vuiUpdated = a}) .- mapping _DateTime---- | Whether or not this volume was user uploaded.-vuiIsUploaded :: Lens' VolumeUserInfo (Maybe Bool)-vuiIsUploaded- = lens _vuiIsUploaded- (\ s a -> s{_vuiIsUploaded = a})---- | Whether or not this volume is currently in \"my books.\"-vuiIsInMyBooks :: Lens' VolumeUserInfo (Maybe Bool)-vuiIsInMyBooks- = lens _vuiIsInMyBooks- (\ s a -> s{_vuiIsInMyBooks = a})---- | The user\'s current reading position in the volume, if one is available.--- (In LITE projection.)-vuiReadingPosition :: Lens' VolumeUserInfo (Maybe ReadingPosition)-vuiReadingPosition- = lens _vuiReadingPosition- (\ s a -> s{_vuiReadingPosition = a})--instance FromJSON VolumeUserInfo where- parseJSON- = withObject "VolumeUserInfo"- (\ o ->- VolumeUserInfo <$>- (o .:? "copy") <*> (o .:? "userUploadedVolumeInfo")- <*> (o .:? "isPurchased")- <*> (o .:? "entitlementType")- <*> (o .:? "acquisitionType")- <*> (o .:? "rentalState")- <*> (o .:? "isPreordered")- <*> (o .:? "review")- <*> (o .:? "rentalPeriod")- <*> (o .:? "updated")- <*> (o .:? "isUploaded")- <*> (o .:? "isInMyBooks")- <*> (o .:? "readingPosition"))--instance ToJSON VolumeUserInfo where- toJSON VolumeUserInfo{..}- = object- (catMaybes- [("copy" .=) <$> _vuiCopy,- ("userUploadedVolumeInfo" .=) <$>- _vuiUserUploadedVolumeInfo,- ("isPurchased" .=) <$> _vuiIsPurchased,- ("entitlementType" .=) <$> _vuiEntitlementType,- ("acquisitionType" .=) <$> _vuiAcquisitionType,- ("rentalState" .=) <$> _vuiRentalState,- ("isPreordered" .=) <$> _vuiIsPreOrdered,- ("review" .=) <$> _vuiReview,- ("rentalPeriod" .=) <$> _vuiRentalPeriod,- ("updated" .=) <$> _vuiUpdated,- ("isUploaded" .=) <$> _vuiIsUploaded,- ("isInMyBooks" .=) <$> _vuiIsInMyBooks,- ("readingPosition" .=) <$> _vuiReadingPosition])------- /See:/ 'layersummary' smart constructor.-data Layersummary = Layersummary- { _lAnnotationsDataLink :: !(Maybe Text)- , _lAnnotationsLink :: !(Maybe Text)- , _lKind :: !Text- , _lDataCount :: !(Maybe (Textual Int32))- , _lContentVersion :: !(Maybe Text)- , _lVolumeAnnotationsVersion :: !(Maybe Text)- , _lAnnotationCount :: !(Maybe (Textual Int32))- , _lAnnotationTypes :: !(Maybe [Text])- , _lSelfLink :: !(Maybe Text)- , _lVolumeId :: !(Maybe Text)- , _lId :: !(Maybe Text)- , _lUpdated :: !(Maybe DateTime')- , _lLayerId :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Layersummary' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lAnnotationsDataLink'------ * 'lAnnotationsLink'------ * 'lKind'------ * 'lDataCount'------ * 'lContentVersion'------ * 'lVolumeAnnotationsVersion'------ * 'lAnnotationCount'------ * 'lAnnotationTypes'------ * 'lSelfLink'------ * 'lVolumeId'------ * 'lId'------ * 'lUpdated'------ * 'lLayerId'-layersummary- :: Layersummary-layersummary =- Layersummary- { _lAnnotationsDataLink = Nothing- , _lAnnotationsLink = Nothing- , _lKind = "books#layersummary"- , _lDataCount = Nothing- , _lContentVersion = Nothing- , _lVolumeAnnotationsVersion = Nothing- , _lAnnotationCount = Nothing- , _lAnnotationTypes = Nothing- , _lSelfLink = Nothing- , _lVolumeId = Nothing- , _lId = Nothing- , _lUpdated = Nothing- , _lLayerId = Nothing- }---- | Link to get data for this annotation.-lAnnotationsDataLink :: Lens' Layersummary (Maybe Text)-lAnnotationsDataLink- = lens _lAnnotationsDataLink- (\ s a -> s{_lAnnotationsDataLink = a})---- | The link to get the annotations for this layer.-lAnnotationsLink :: Lens' Layersummary (Maybe Text)-lAnnotationsLink- = lens _lAnnotationsLink- (\ s a -> s{_lAnnotationsLink = a})---- | Resource Type-lKind :: Lens' Layersummary Text-lKind = lens _lKind (\ s a -> s{_lKind = a})---- | The number of data items for this layer.-lDataCount :: Lens' Layersummary (Maybe Int32)-lDataCount- = lens _lDataCount (\ s a -> s{_lDataCount = a}) .- mapping _Coerce---- | The content version this resource is for.-lContentVersion :: Lens' Layersummary (Maybe Text)-lContentVersion- = lens _lContentVersion- (\ s a -> s{_lContentVersion = a})---- | The current version of this layer\'s volume annotations. Note that this--- version applies only to the data in the books.layers.volumeAnnotations.*--- responses. The actual annotation data is versioned separately.-lVolumeAnnotationsVersion :: Lens' Layersummary (Maybe Text)-lVolumeAnnotationsVersion- = lens _lVolumeAnnotationsVersion- (\ s a -> s{_lVolumeAnnotationsVersion = a})---- | The number of annotations for this layer.-lAnnotationCount :: Lens' Layersummary (Maybe Int32)-lAnnotationCount- = lens _lAnnotationCount- (\ s a -> s{_lAnnotationCount = a})- . mapping _Coerce---- | The list of annotation types contained for this layer.-lAnnotationTypes :: Lens' Layersummary [Text]-lAnnotationTypes- = lens _lAnnotationTypes- (\ s a -> s{_lAnnotationTypes = a})- . _Default- . _Coerce---- | URL to this resource.-lSelfLink :: Lens' Layersummary (Maybe Text)-lSelfLink- = lens _lSelfLink (\ s a -> s{_lSelfLink = a})---- | The volume id this resource is for.-lVolumeId :: Lens' Layersummary (Maybe Text)-lVolumeId- = lens _lVolumeId (\ s a -> s{_lVolumeId = a})---- | Unique id of this layer summary.-lId :: Lens' Layersummary (Maybe Text)-lId = lens _lId (\ s a -> s{_lId = a})---- | Timestamp for the last time an item in this layer was updated. (RFC 3339--- UTC date-time format).-lUpdated :: Lens' Layersummary (Maybe UTCTime)-lUpdated- = lens _lUpdated (\ s a -> s{_lUpdated = a}) .- mapping _DateTime---- | The layer id for this summary.-lLayerId :: Lens' Layersummary (Maybe Text)-lLayerId = lens _lLayerId (\ s a -> s{_lLayerId = a})--instance FromJSON Layersummary where- parseJSON- = withObject "Layersummary"- (\ o ->- Layersummary <$>- (o .:? "annotationsDataLink") <*>- (o .:? "annotationsLink")- <*> (o .:? "kind" .!= "books#layersummary")- <*> (o .:? "dataCount")- <*> (o .:? "contentVersion")- <*> (o .:? "volumeAnnotationsVersion")- <*> (o .:? "annotationCount")- <*> (o .:? "annotationTypes" .!= mempty)- <*> (o .:? "selfLink")- <*> (o .:? "volumeId")- <*> (o .:? "id")- <*> (o .:? "updated")- <*> (o .:? "layerId"))--instance ToJSON Layersummary where- toJSON Layersummary{..}- = object- (catMaybes- [("annotationsDataLink" .=) <$>- _lAnnotationsDataLink,- ("annotationsLink" .=) <$> _lAnnotationsLink,- Just ("kind" .= _lKind),- ("dataCount" .=) <$> _lDataCount,- ("contentVersion" .=) <$> _lContentVersion,- ("volumeAnnotationsVersion" .=) <$>- _lVolumeAnnotationsVersion,- ("annotationCount" .=) <$> _lAnnotationCount,- ("annotationTypes" .=) <$> _lAnnotationTypes,- ("selfLink" .=) <$> _lSelfLink,- ("volumeId" .=) <$> _lVolumeId, ("id" .=) <$> _lId,- ("updated" .=) <$> _lUpdated,- ("layerId" .=) <$> _lLayerId])---- | The content ranges to identify the selected text.------ /See:/ 'volumeannotationContentRanges' smart constructor.-data VolumeannotationContentRanges = VolumeannotationContentRanges- { _vcrGbImageRange :: !(Maybe BooksAnnotationsRange)- , _vcrContentVersion :: !(Maybe Text)- , _vcrGbTextRange :: !(Maybe BooksAnnotationsRange)- , _vcrCfiRange :: !(Maybe BooksAnnotationsRange)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'VolumeannotationContentRanges' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'vcrGbImageRange'------ * 'vcrContentVersion'------ * 'vcrGbTextRange'------ * 'vcrCfiRange'-volumeannotationContentRanges- :: VolumeannotationContentRanges-volumeannotationContentRanges =- VolumeannotationContentRanges- { _vcrGbImageRange = Nothing- , _vcrContentVersion = Nothing- , _vcrGbTextRange = Nothing- , _vcrCfiRange = Nothing- }---- | Range in GB image format for this annotation for version above.-vcrGbImageRange :: Lens' VolumeannotationContentRanges (Maybe BooksAnnotationsRange)-vcrGbImageRange- = lens _vcrGbImageRange- (\ s a -> s{_vcrGbImageRange = a})---- | Content version applicable to ranges below.-vcrContentVersion :: Lens' VolumeannotationContentRanges (Maybe Text)-vcrContentVersion- = lens _vcrContentVersion- (\ s a -> s{_vcrContentVersion = a})---- | Range in GB text format for this annotation for version above.-vcrGbTextRange :: Lens' VolumeannotationContentRanges (Maybe BooksAnnotationsRange)-vcrGbTextRange- = lens _vcrGbTextRange- (\ s a -> s{_vcrGbTextRange = a})---- | Range in CFI format for this annotation for version above.-vcrCfiRange :: Lens' VolumeannotationContentRanges (Maybe BooksAnnotationsRange)-vcrCfiRange- = lens _vcrCfiRange (\ s a -> s{_vcrCfiRange = a})--instance FromJSON VolumeannotationContentRanges where- parseJSON- = withObject "VolumeannotationContentRanges"- (\ o ->- VolumeannotationContentRanges <$>- (o .:? "gbImageRange") <*> (o .:? "contentVersion")- <*> (o .:? "gbTextRange")- <*> (o .:? "cfiRange"))--instance ToJSON VolumeannotationContentRanges where- toJSON VolumeannotationContentRanges{..}- = object- (catMaybes- [("gbImageRange" .=) <$> _vcrGbImageRange,- ("contentVersion" .=) <$> _vcrContentVersion,- ("gbTextRange" .=) <$> _vcrGbTextRange,- ("cfiRange" .=) <$> _vcrCfiRange])---- | Any information about a volume related to reading or obtaining that--- volume text. This information can depend on country (books may be public--- domain in one country but not in another, e.g.).------ /See:/ 'volumeAccessInfo' smart constructor.-data VolumeAccessInfo = VolumeAccessInfo- { _vaiWebReaderLink :: !(Maybe Text)- , _vaiCountry :: !(Maybe Text)- , _vaiDriveImportedContentLink :: !(Maybe Text)- , _vaiExplicitOfflineLicenseManagement :: !(Maybe Bool)- , _vaiViewability :: !(Maybe Text)- , _vaiQuoteSharingAllowed :: !(Maybe Bool)- , _vaiEpub :: !(Maybe VolumeAccessInfoEpub)- , _vaiPdf :: !(Maybe VolumeAccessInfoPdf)- , _vaiTextToSpeechPermission :: !(Maybe Text)- , _vaiEmbeddable :: !(Maybe Bool)- , _vaiAccessViewStatus :: !(Maybe Text)- , _vaiDownloadAccess :: !(Maybe DownloadAccessRestriction)- , _vaiViewOrderURL :: !(Maybe Text)- , _vaiPublicDomain :: !(Maybe Bool)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'VolumeAccessInfo' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'vaiWebReaderLink'------ * 'vaiCountry'------ * 'vaiDriveImportedContentLink'------ * 'vaiExplicitOfflineLicenseManagement'------ * 'vaiViewability'------ * 'vaiQuoteSharingAllowed'------ * 'vaiEpub'------ * 'vaiPdf'------ * 'vaiTextToSpeechPermission'------ * 'vaiEmbeddable'------ * 'vaiAccessViewStatus'------ * 'vaiDownloadAccess'------ * 'vaiViewOrderURL'------ * 'vaiPublicDomain'-volumeAccessInfo- :: VolumeAccessInfo-volumeAccessInfo =- VolumeAccessInfo- { _vaiWebReaderLink = Nothing- , _vaiCountry = Nothing- , _vaiDriveImportedContentLink = Nothing- , _vaiExplicitOfflineLicenseManagement = Nothing- , _vaiViewability = Nothing- , _vaiQuoteSharingAllowed = Nothing- , _vaiEpub = Nothing- , _vaiPdf = Nothing- , _vaiTextToSpeechPermission = Nothing- , _vaiEmbeddable = Nothing- , _vaiAccessViewStatus = Nothing- , _vaiDownloadAccess = Nothing- , _vaiViewOrderURL = Nothing- , _vaiPublicDomain = Nothing- }---- | URL to read this volume on the Google Books site. Link will not allow--- users to read non-viewable volumes.-vaiWebReaderLink :: Lens' VolumeAccessInfo (Maybe Text)-vaiWebReaderLink- = lens _vaiWebReaderLink- (\ s a -> s{_vaiWebReaderLink = a})---- | The two-letter ISO_3166-1 country code for which this access information--- is valid. (In LITE projection.)-vaiCountry :: Lens' VolumeAccessInfo (Maybe Text)-vaiCountry- = lens _vaiCountry (\ s a -> s{_vaiCountry = a})---- | URL to the Google Drive viewer if this volume is uploaded by the user by--- selecting the file from Google Drive.-vaiDriveImportedContentLink :: Lens' VolumeAccessInfo (Maybe Text)-vaiDriveImportedContentLink- = lens _vaiDriveImportedContentLink- (\ s a -> s{_vaiDriveImportedContentLink = a})---- | Whether this volume requires that the client explicitly request offline--- download license rather than have it done automatically when loading the--- content, if the client supports it.-vaiExplicitOfflineLicenseManagement :: Lens' VolumeAccessInfo (Maybe Bool)-vaiExplicitOfflineLicenseManagement- = lens _vaiExplicitOfflineLicenseManagement- (\ s a ->- s{_vaiExplicitOfflineLicenseManagement = a})---- | The read access of a volume. Possible values are PARTIAL, ALL_PAGES,--- NO_PAGES or UNKNOWN. This value depends on the country listed above. A--- value of PARTIAL means that the publisher has allowed some portion of--- the volume to be viewed publicly, without purchase. This can apply to--- eBooks as well as non-eBooks. Public domain books will always have a--- value of ALL_PAGES.-vaiViewability :: Lens' VolumeAccessInfo (Maybe Text)-vaiViewability- = lens _vaiViewability- (\ s a -> s{_vaiViewability = a})---- | Whether quote sharing is allowed for this volume.-vaiQuoteSharingAllowed :: Lens' VolumeAccessInfo (Maybe Bool)-vaiQuoteSharingAllowed- = lens _vaiQuoteSharingAllowed- (\ s a -> s{_vaiQuoteSharingAllowed = a})---- | Information about epub content. (In LITE projection.)-vaiEpub :: Lens' VolumeAccessInfo (Maybe VolumeAccessInfoEpub)-vaiEpub = lens _vaiEpub (\ s a -> s{_vaiEpub = a})---- | Information about pdf content. (In LITE projection.)-vaiPdf :: Lens' VolumeAccessInfo (Maybe VolumeAccessInfoPdf)-vaiPdf = lens _vaiPdf (\ s a -> s{_vaiPdf = a})---- | Whether text-to-speech is permitted for this volume. Values can be--- ALLOWED, ALLOWED_FOR_ACCESSIBILITY, or NOT_ALLOWED.-vaiTextToSpeechPermission :: Lens' VolumeAccessInfo (Maybe Text)-vaiTextToSpeechPermission- = lens _vaiTextToSpeechPermission- (\ s a -> s{_vaiTextToSpeechPermission = a})---- | Whether this volume can be embedded in a viewport using the Embedded--- Viewer API.-vaiEmbeddable :: Lens' VolumeAccessInfo (Maybe Bool)-vaiEmbeddable- = lens _vaiEmbeddable- (\ s a -> s{_vaiEmbeddable = a})---- | Combines the access and viewability of this volume into a single status--- field for this user. Values can be FULL_PURCHASED, FULL_PUBLIC_DOMAIN,--- SAMPLE or NONE. (In LITE projection.)-vaiAccessViewStatus :: Lens' VolumeAccessInfo (Maybe Text)-vaiAccessViewStatus- = lens _vaiAccessViewStatus- (\ s a -> s{_vaiAccessViewStatus = a})---- | Information about a volume\'s download license access restrictions.-vaiDownloadAccess :: Lens' VolumeAccessInfo (Maybe DownloadAccessRestriction)-vaiDownloadAccess- = lens _vaiDownloadAccess- (\ s a -> s{_vaiDownloadAccess = a})---- | For ordered but not yet processed orders, we give a URL that can be used--- to go to the appropriate Google Wallet page.-vaiViewOrderURL :: Lens' VolumeAccessInfo (Maybe Text)-vaiViewOrderURL- = lens _vaiViewOrderURL- (\ s a -> s{_vaiViewOrderURL = a})---- | Whether or not this book is public domain in the country listed above.-vaiPublicDomain :: Lens' VolumeAccessInfo (Maybe Bool)-vaiPublicDomain- = lens _vaiPublicDomain- (\ s a -> s{_vaiPublicDomain = a})--instance FromJSON VolumeAccessInfo where- parseJSON- = withObject "VolumeAccessInfo"- (\ o ->- VolumeAccessInfo <$>- (o .:? "webReaderLink") <*> (o .:? "country") <*>- (o .:? "driveImportedContentLink")- <*> (o .:? "explicitOfflineLicenseManagement")- <*> (o .:? "viewability")- <*> (o .:? "quoteSharingAllowed")- <*> (o .:? "epub")- <*> (o .:? "pdf")- <*> (o .:? "textToSpeechPermission")- <*> (o .:? "embeddable")- <*> (o .:? "accessViewStatus")- <*> (o .:? "downloadAccess")- <*> (o .:? "viewOrderUrl")- <*> (o .:? "publicDomain"))--instance ToJSON VolumeAccessInfo where- toJSON VolumeAccessInfo{..}- = object- (catMaybes- [("webReaderLink" .=) <$> _vaiWebReaderLink,- ("country" .=) <$> _vaiCountry,- ("driveImportedContentLink" .=) <$>- _vaiDriveImportedContentLink,- ("explicitOfflineLicenseManagement" .=) <$>- _vaiExplicitOfflineLicenseManagement,- ("viewability" .=) <$> _vaiViewability,- ("quoteSharingAllowed" .=) <$>- _vaiQuoteSharingAllowed,- ("epub" .=) <$> _vaiEpub, ("pdf" .=) <$> _vaiPdf,- ("textToSpeechPermission" .=) <$>- _vaiTextToSpeechPermission,- ("embeddable" .=) <$> _vaiEmbeddable,- ("accessViewStatus" .=) <$> _vaiAccessViewStatus,- ("downloadAccess" .=) <$> _vaiDownloadAccess,- ("viewOrderUrl" .=) <$> _vaiViewOrderURL,- ("publicDomain" .=) <$> _vaiPublicDomain])---- | A list of image links for all the sizes that are available. (In LITE--- projection.)------ /See:/ 'volumeVolumeInfoImageLinks' smart constructor.-data VolumeVolumeInfoImageLinks = VolumeVolumeInfoImageLinks- { _vviilThumbnail :: !(Maybe Text)- , _vviilSmall :: !(Maybe Text)- , _vviilExtraLarge :: !(Maybe Text)- , _vviilLarge :: !(Maybe Text)- , _vviilMedium :: !(Maybe Text)- , _vviilSmallThumbnail :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'VolumeVolumeInfoImageLinks' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'vviilThumbnail'------ * 'vviilSmall'------ * 'vviilExtraLarge'------ * 'vviilLarge'------ * 'vviilMedium'------ * 'vviilSmallThumbnail'-volumeVolumeInfoImageLinks- :: VolumeVolumeInfoImageLinks-volumeVolumeInfoImageLinks =- VolumeVolumeInfoImageLinks- { _vviilThumbnail = Nothing- , _vviilSmall = Nothing- , _vviilExtraLarge = Nothing- , _vviilLarge = Nothing- , _vviilMedium = Nothing- , _vviilSmallThumbnail = Nothing- }---- | Image link for thumbnail size (width of ~128 pixels). (In LITE--- projection)-vviilThumbnail :: Lens' VolumeVolumeInfoImageLinks (Maybe Text)-vviilThumbnail- = lens _vviilThumbnail- (\ s a -> s{_vviilThumbnail = a})---- | Image link for small size (width of ~300 pixels). (In LITE projection)-vviilSmall :: Lens' VolumeVolumeInfoImageLinks (Maybe Text)-vviilSmall- = lens _vviilSmall (\ s a -> s{_vviilSmall = a})---- | Image link for extra large size (width of ~1280 pixels). (In LITE--- projection)-vviilExtraLarge :: Lens' VolumeVolumeInfoImageLinks (Maybe Text)-vviilExtraLarge- = lens _vviilExtraLarge- (\ s a -> s{_vviilExtraLarge = a})---- | Image link for large size (width of ~800 pixels). (In LITE projection)-vviilLarge :: Lens' VolumeVolumeInfoImageLinks (Maybe Text)-vviilLarge- = lens _vviilLarge (\ s a -> s{_vviilLarge = a})---- | Image link for medium size (width of ~575 pixels). (In LITE projection)-vviilMedium :: Lens' VolumeVolumeInfoImageLinks (Maybe Text)-vviilMedium- = lens _vviilMedium (\ s a -> s{_vviilMedium = a})---- | Image link for small thumbnail size (width of ~80 pixels). (In LITE--- projection)-vviilSmallThumbnail :: Lens' VolumeVolumeInfoImageLinks (Maybe Text)-vviilSmallThumbnail- = lens _vviilSmallThumbnail- (\ s a -> s{_vviilSmallThumbnail = a})--instance FromJSON VolumeVolumeInfoImageLinks where- parseJSON- = withObject "VolumeVolumeInfoImageLinks"- (\ o ->- VolumeVolumeInfoImageLinks <$>- (o .:? "thumbnail") <*> (o .:? "small") <*>- (o .:? "extraLarge")- <*> (o .:? "large")- <*> (o .:? "medium")- <*> (o .:? "smallThumbnail"))--instance ToJSON VolumeVolumeInfoImageLinks where- toJSON VolumeVolumeInfoImageLinks{..}- = object- (catMaybes- [("thumbnail" .=) <$> _vviilThumbnail,- ("small" .=) <$> _vviilSmall,- ("extraLarge" .=) <$> _vviilExtraLarge,- ("large" .=) <$> _vviilLarge,- ("medium" .=) <$> _vviilMedium,- ("smallThumbnail" .=) <$> _vviilSmallThumbnail])------- /See:/ 'volumeUserInfoUserUploadedVolumeInfo' smart constructor.-newtype VolumeUserInfoUserUploadedVolumeInfo = VolumeUserInfoUserUploadedVolumeInfo- { _vuiuuviProcessingState :: Maybe Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'VolumeUserInfoUserUploadedVolumeInfo' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'vuiuuviProcessingState'-volumeUserInfoUserUploadedVolumeInfo- :: VolumeUserInfoUserUploadedVolumeInfo-volumeUserInfoUserUploadedVolumeInfo =- VolumeUserInfoUserUploadedVolumeInfo- { _vuiuuviProcessingState = Nothing- }--vuiuuviProcessingState :: Lens' VolumeUserInfoUserUploadedVolumeInfo (Maybe Text)-vuiuuviProcessingState- = lens _vuiuuviProcessingState- (\ s a -> s{_vuiuuviProcessingState = a})--instance FromJSON- VolumeUserInfoUserUploadedVolumeInfo where- parseJSON- = withObject "VolumeUserInfoUserUploadedVolumeInfo"- (\ o ->- VolumeUserInfoUserUploadedVolumeInfo <$>- (o .:? "processingState"))--instance ToJSON VolumeUserInfoUserUploadedVolumeInfo- where- toJSON VolumeUserInfoUserUploadedVolumeInfo{..}- = object- (catMaybes- [("processingState" .=) <$> _vuiuuviProcessingState])---- | Copy\/Paste accounting information.------ /See:/ 'volumeUserInfoCopy' smart constructor.-data VolumeUserInfoCopy = VolumeUserInfoCopy- { _vuicLimitType :: !(Maybe Text)- , _vuicAllowedCharacterCount :: !(Maybe (Textual Int32))- , _vuicUpdated :: !(Maybe DateTime')- , _vuicRemainingCharacterCount :: !(Maybe (Textual Int32))- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'VolumeUserInfoCopy' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'vuicLimitType'------ * 'vuicAllowedCharacterCount'------ * 'vuicUpdated'------ * 'vuicRemainingCharacterCount'-volumeUserInfoCopy- :: VolumeUserInfoCopy-volumeUserInfoCopy =- VolumeUserInfoCopy- { _vuicLimitType = Nothing- , _vuicAllowedCharacterCount = Nothing- , _vuicUpdated = Nothing- , _vuicRemainingCharacterCount = Nothing- }--vuicLimitType :: Lens' VolumeUserInfoCopy (Maybe Text)-vuicLimitType- = lens _vuicLimitType- (\ s a -> s{_vuicLimitType = a})--vuicAllowedCharacterCount :: Lens' VolumeUserInfoCopy (Maybe Int32)-vuicAllowedCharacterCount- = lens _vuicAllowedCharacterCount- (\ s a -> s{_vuicAllowedCharacterCount = a})- . mapping _Coerce--vuicUpdated :: Lens' VolumeUserInfoCopy (Maybe UTCTime)-vuicUpdated- = lens _vuicUpdated (\ s a -> s{_vuicUpdated = a}) .- mapping _DateTime--vuicRemainingCharacterCount :: Lens' VolumeUserInfoCopy (Maybe Int32)-vuicRemainingCharacterCount- = lens _vuicRemainingCharacterCount- (\ s a -> s{_vuicRemainingCharacterCount = a})- . mapping _Coerce--instance FromJSON VolumeUserInfoCopy where- parseJSON- = withObject "VolumeUserInfoCopy"- (\ o ->- VolumeUserInfoCopy <$>- (o .:? "limitType") <*>- (o .:? "allowedCharacterCount")- <*> (o .:? "updated")- <*> (o .:? "remainingCharacterCount"))--instance ToJSON VolumeUserInfoCopy where- toJSON VolumeUserInfoCopy{..}- = object- (catMaybes- [("limitType" .=) <$> _vuicLimitType,- ("allowedCharacterCount" .=) <$>- _vuicAllowedCharacterCount,- ("updated" .=) <$> _vuicUpdated,- ("remainingCharacterCount" .=) <$>- _vuicRemainingCharacterCount])------- /See:/ 'booksVolumesRecommendedRateResponse' smart constructor.-newtype BooksVolumesRecommendedRateResponse = BooksVolumesRecommendedRateResponse- { _bvrrrConsistencyToken :: Maybe Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'BooksVolumesRecommendedRateResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'bvrrrConsistencyToken'-booksVolumesRecommendedRateResponse- :: BooksVolumesRecommendedRateResponse-booksVolumesRecommendedRateResponse =- BooksVolumesRecommendedRateResponse- { _bvrrrConsistencyToken = Nothing- }--bvrrrConsistencyToken :: Lens' BooksVolumesRecommendedRateResponse (Maybe Text)-bvrrrConsistencyToken- = lens _bvrrrConsistencyToken- (\ s a -> s{_bvrrrConsistencyToken = a})--instance FromJSON BooksVolumesRecommendedRateResponse- where- parseJSON- = withObject "BooksVolumesRecommendedRateResponse"- (\ o ->- BooksVolumesRecommendedRateResponse <$>- (o .:? "consistency_token"))--instance ToJSON BooksVolumesRecommendedRateResponse- where- toJSON BooksVolumesRecommendedRateResponse{..}- = object- (catMaybes- [("consistency_token" .=) <$>- _bvrrrConsistencyToken])------- /See:/ 'bookshelf' smart constructor.-data Bookshelf = Bookshelf- { _bAccess :: !(Maybe Text)- , _bVolumesLastUpdated :: !(Maybe DateTime')- , _bKind :: !Text- , _bCreated :: !(Maybe DateTime')- , _bVolumeCount :: !(Maybe (Textual Int32))- , _bSelfLink :: !(Maybe Text)- , _bId :: !(Maybe (Textual Int32))- , _bUpdated :: !(Maybe DateTime')- , _bTitle :: !(Maybe Text)- , _bDescription :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Bookshelf' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'bAccess'------ * 'bVolumesLastUpdated'------ * 'bKind'------ * 'bCreated'------ * 'bVolumeCount'------ * 'bSelfLink'------ * 'bId'------ * 'bUpdated'------ * 'bTitle'------ * 'bDescription'-bookshelf- :: Bookshelf-bookshelf =- Bookshelf- { _bAccess = Nothing- , _bVolumesLastUpdated = Nothing- , _bKind = "books#bookshelf"- , _bCreated = Nothing- , _bVolumeCount = Nothing- , _bSelfLink = Nothing- , _bId = Nothing- , _bUpdated = Nothing- , _bTitle = Nothing- , _bDescription = Nothing- }---- | Whether this bookshelf is PUBLIC or PRIVATE.-bAccess :: Lens' Bookshelf (Maybe Text)-bAccess = lens _bAccess (\ s a -> s{_bAccess = a})---- | Last time a volume was added or removed from this bookshelf (formatted--- UTC timestamp with millisecond resolution).-bVolumesLastUpdated :: Lens' Bookshelf (Maybe UTCTime)-bVolumesLastUpdated- = lens _bVolumesLastUpdated- (\ s a -> s{_bVolumesLastUpdated = a})- . mapping _DateTime---- | Resource type for bookshelf metadata.-bKind :: Lens' Bookshelf Text-bKind = lens _bKind (\ s a -> s{_bKind = a})---- | Created time for this bookshelf (formatted UTC timestamp with--- millisecond resolution).-bCreated :: Lens' Bookshelf (Maybe UTCTime)-bCreated- = lens _bCreated (\ s a -> s{_bCreated = a}) .- mapping _DateTime---- | Number of volumes in this bookshelf.-bVolumeCount :: Lens' Bookshelf (Maybe Int32)-bVolumeCount- = lens _bVolumeCount (\ s a -> s{_bVolumeCount = a})- . mapping _Coerce---- | URL to this resource.-bSelfLink :: Lens' Bookshelf (Maybe Text)-bSelfLink- = lens _bSelfLink (\ s a -> s{_bSelfLink = a})---- | Id of this bookshelf, only unique by user.-bId :: Lens' Bookshelf (Maybe Int32)-bId- = lens _bId (\ s a -> s{_bId = a}) . mapping _Coerce---- | Last modified time of this bookshelf (formatted UTC timestamp with--- millisecond resolution).-bUpdated :: Lens' Bookshelf (Maybe UTCTime)-bUpdated- = lens _bUpdated (\ s a -> s{_bUpdated = a}) .- mapping _DateTime---- | Title of this bookshelf.-bTitle :: Lens' Bookshelf (Maybe Text)-bTitle = lens _bTitle (\ s a -> s{_bTitle = a})---- | Description of this bookshelf.-bDescription :: Lens' Bookshelf (Maybe Text)-bDescription- = lens _bDescription (\ s a -> s{_bDescription = a})--instance FromJSON Bookshelf where- parseJSON- = withObject "Bookshelf"- (\ o ->- Bookshelf <$>- (o .:? "access") <*> (o .:? "volumesLastUpdated") <*>- (o .:? "kind" .!= "books#bookshelf")- <*> (o .:? "created")- <*> (o .:? "volumeCount")- <*> (o .:? "selfLink")- <*> (o .:? "id")- <*> (o .:? "updated")- <*> (o .:? "title")- <*> (o .:? "description"))--instance ToJSON Bookshelf where- toJSON Bookshelf{..}- = object- (catMaybes- [("access" .=) <$> _bAccess,- ("volumesLastUpdated" .=) <$> _bVolumesLastUpdated,- Just ("kind" .= _bKind),- ("created" .=) <$> _bCreated,- ("volumeCount" .=) <$> _bVolumeCount,- ("selfLink" .=) <$> _bSelfLink, ("id" .=) <$> _bId,- ("updated" .=) <$> _bUpdated,- ("title" .=) <$> _bTitle,- ("description" .=) <$> _bDescription])------- /See:/ 'notification' smart constructor.-data Notification = Notification- { _nKind :: !Text- , _nBody :: !(Maybe Text)- , _nLinkURL :: !(Maybe Text)- , _nIconURL :: !(Maybe Text)- , _nTitle :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Notification' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'nKind'------ * 'nBody'------ * 'nLinkURL'------ * 'nIconURL'------ * 'nTitle'-notification- :: Notification-notification =- Notification- { _nKind = "books#notification"- , _nBody = Nothing- , _nLinkURL = Nothing- , _nIconURL = Nothing- , _nTitle = Nothing- }---- | Resource type.-nKind :: Lens' Notification Text-nKind = lens _nKind (\ s a -> s{_nKind = a})--nBody :: Lens' Notification (Maybe Text)-nBody = lens _nBody (\ s a -> s{_nBody = a})--nLinkURL :: Lens' Notification (Maybe Text)-nLinkURL = lens _nLinkURL (\ s a -> s{_nLinkURL = a})--nIconURL :: Lens' Notification (Maybe Text)-nIconURL = lens _nIconURL (\ s a -> s{_nIconURL = a})--nTitle :: Lens' Notification (Maybe Text)-nTitle = lens _nTitle (\ s a -> s{_nTitle = a})--instance FromJSON Notification where- parseJSON- = withObject "Notification"- (\ o ->- Notification <$>- (o .:? "kind" .!= "books#notification") <*>- (o .:? "body")- <*> (o .:? "linkUrl")- <*> (o .:? "iconUrl")- <*> (o .:? "title"))--instance ToJSON Notification where- toJSON Notification{..}- = object- (catMaybes- [Just ("kind" .= _nKind), ("body" .=) <$> _nBody,- ("linkUrl" .=) <$> _nLinkURL,- ("iconUrl" .=) <$> _nIconURL,- ("title" .=) <$> _nTitle])------- /See:/ 'annotationsSummaryLayersItem' smart constructor.-data AnnotationsSummaryLayersItem = AnnotationsSummaryLayersItem- { _asliLimitType :: !(Maybe Text)- , _asliAllowedCharacterCount :: !(Maybe (Textual Int32))- , _asliUpdated :: !(Maybe DateTime')- , _asliLayerId :: !(Maybe Text)- , _asliRemainingCharacterCount :: !(Maybe (Textual Int32))- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'AnnotationsSummaryLayersItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'asliLimitType'------ * 'asliAllowedCharacterCount'------ * 'asliUpdated'------ * 'asliLayerId'------ * 'asliRemainingCharacterCount'-annotationsSummaryLayersItem- :: AnnotationsSummaryLayersItem-annotationsSummaryLayersItem =- AnnotationsSummaryLayersItem- { _asliLimitType = Nothing- , _asliAllowedCharacterCount = Nothing- , _asliUpdated = Nothing- , _asliLayerId = Nothing- , _asliRemainingCharacterCount = Nothing- }--asliLimitType :: Lens' AnnotationsSummaryLayersItem (Maybe Text)-asliLimitType- = lens _asliLimitType- (\ s a -> s{_asliLimitType = a})--asliAllowedCharacterCount :: Lens' AnnotationsSummaryLayersItem (Maybe Int32)-asliAllowedCharacterCount- = lens _asliAllowedCharacterCount- (\ s a -> s{_asliAllowedCharacterCount = a})- . mapping _Coerce--asliUpdated :: Lens' AnnotationsSummaryLayersItem (Maybe UTCTime)-asliUpdated- = lens _asliUpdated (\ s a -> s{_asliUpdated = a}) .- mapping _DateTime--asliLayerId :: Lens' AnnotationsSummaryLayersItem (Maybe Text)-asliLayerId- = lens _asliLayerId (\ s a -> s{_asliLayerId = a})--asliRemainingCharacterCount :: Lens' AnnotationsSummaryLayersItem (Maybe Int32)-asliRemainingCharacterCount- = lens _asliRemainingCharacterCount- (\ s a -> s{_asliRemainingCharacterCount = a})- . mapping _Coerce--instance FromJSON AnnotationsSummaryLayersItem where- parseJSON- = withObject "AnnotationsSummaryLayersItem"- (\ o ->- AnnotationsSummaryLayersItem <$>- (o .:? "limitType") <*>- (o .:? "allowedCharacterCount")- <*> (o .:? "updated")- <*> (o .:? "layerId")- <*> (o .:? "remainingCharacterCount"))--instance ToJSON AnnotationsSummaryLayersItem where- toJSON AnnotationsSummaryLayersItem{..}- = object- (catMaybes- [("limitType" .=) <$> _asliLimitType,- ("allowedCharacterCount" .=) <$>- _asliAllowedCharacterCount,- ("updated" .=) <$> _asliUpdated,- ("layerId" .=) <$> _asliLayerId,- ("remainingCharacterCount" .=) <$>- _asliRemainingCharacterCount])---- | The rental duration (for rental offers only).------ /See:/ 'volumeSaleInfoOffersItemRentalDuration' smart constructor.-data VolumeSaleInfoOffersItemRentalDuration = VolumeSaleInfoOffersItemRentalDuration- { _vsioirdCount :: !(Maybe (Textual Double))- , _vsioirdUnit :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'VolumeSaleInfoOffersItemRentalDuration' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'vsioirdCount'------ * 'vsioirdUnit'-volumeSaleInfoOffersItemRentalDuration- :: VolumeSaleInfoOffersItemRentalDuration-volumeSaleInfoOffersItemRentalDuration =- VolumeSaleInfoOffersItemRentalDuration- { _vsioirdCount = Nothing- , _vsioirdUnit = Nothing- }--vsioirdCount :: Lens' VolumeSaleInfoOffersItemRentalDuration (Maybe Double)-vsioirdCount- = lens _vsioirdCount (\ s a -> s{_vsioirdCount = a})- . mapping _Coerce--vsioirdUnit :: Lens' VolumeSaleInfoOffersItemRentalDuration (Maybe Text)-vsioirdUnit- = lens _vsioirdUnit (\ s a -> s{_vsioirdUnit = a})--instance FromJSON- VolumeSaleInfoOffersItemRentalDuration where- parseJSON- = withObject "VolumeSaleInfoOffersItemRentalDuration"- (\ o ->- VolumeSaleInfoOffersItemRentalDuration <$>- (o .:? "count") <*> (o .:? "unit"))--instance ToJSON- VolumeSaleInfoOffersItemRentalDuration where- toJSON VolumeSaleInfoOffersItemRentalDuration{..}- = object- (catMaybes- [("count" .=) <$> _vsioirdCount,- ("unit" .=) <$> _vsioirdUnit])------- /See:/ 'dictlayerDataDictWordsItemExamplesItem' smart constructor.-data DictlayerDataDictWordsItemExamplesItem = DictlayerDataDictWordsItemExamplesItem- { _dddwieiText :: !(Maybe Text)- , _dddwieiSource :: !(Maybe DictlayerDataDictWordsItemExamplesItemSource)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'DictlayerDataDictWordsItemExamplesItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dddwieiText'------ * 'dddwieiSource'-dictlayerDataDictWordsItemExamplesItem- :: DictlayerDataDictWordsItemExamplesItem-dictlayerDataDictWordsItemExamplesItem =- DictlayerDataDictWordsItemExamplesItem- { _dddwieiText = Nothing- , _dddwieiSource = Nothing- }--dddwieiText :: Lens' DictlayerDataDictWordsItemExamplesItem (Maybe Text)-dddwieiText- = lens _dddwieiText (\ s a -> s{_dddwieiText = a})--dddwieiSource :: Lens' DictlayerDataDictWordsItemExamplesItem (Maybe DictlayerDataDictWordsItemExamplesItemSource)-dddwieiSource- = lens _dddwieiSource- (\ s a -> s{_dddwieiSource = a})--instance FromJSON- DictlayerDataDictWordsItemExamplesItem where- parseJSON- = withObject "DictlayerDataDictWordsItemExamplesItem"- (\ o ->- DictlayerDataDictWordsItemExamplesItem <$>- (o .:? "text") <*> (o .:? "source"))--instance ToJSON- DictlayerDataDictWordsItemExamplesItem where- toJSON DictlayerDataDictWordsItemExamplesItem{..}- = object- (catMaybes- [("text" .=) <$> _dddwieiText,- ("source" .=) <$> _dddwieiSource])------- /See:/ 'offersItemsItem' smart constructor.-data OffersItemsItem = OffersItemsItem- { _oiiItems :: !(Maybe [OffersItemsItemItemsItem])- , _oiiArtURL :: !(Maybe Text)- , _oiiId :: !(Maybe Text)- , _oiiGServicesKey :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'OffersItemsItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'oiiItems'------ * 'oiiArtURL'------ * 'oiiId'------ * 'oiiGServicesKey'-offersItemsItem- :: OffersItemsItem-offersItemsItem =- OffersItemsItem- { _oiiItems = Nothing- , _oiiArtURL = Nothing- , _oiiId = Nothing- , _oiiGServicesKey = Nothing- }--oiiItems :: Lens' OffersItemsItem [OffersItemsItemItemsItem]-oiiItems- = lens _oiiItems (\ s a -> s{_oiiItems = a}) .- _Default- . _Coerce--oiiArtURL :: Lens' OffersItemsItem (Maybe Text)-oiiArtURL- = lens _oiiArtURL (\ s a -> s{_oiiArtURL = a})--oiiId :: Lens' OffersItemsItem (Maybe Text)-oiiId = lens _oiiId (\ s a -> s{_oiiId = a})--oiiGServicesKey :: Lens' OffersItemsItem (Maybe Text)-oiiGServicesKey- = lens _oiiGServicesKey- (\ s a -> s{_oiiGServicesKey = a})--instance FromJSON OffersItemsItem where- parseJSON- = withObject "OffersItemsItem"- (\ o ->- OffersItemsItem <$>- (o .:? "items" .!= mempty) <*> (o .:? "artUrl") <*>- (o .:? "id")- <*> (o .:? "gservicesKey"))--instance ToJSON OffersItemsItem where- toJSON OffersItemsItem{..}- = object- (catMaybes- [("items" .=) <$> _oiiItems,- ("artUrl" .=) <$> _oiiArtURL, ("id" .=) <$> _oiiId,- ("gservicesKey" .=) <$> _oiiGServicesKey])------- /See:/ 'annotationLayerSummary' smart constructor.-data AnnotationLayerSummary = AnnotationLayerSummary- { _alsLimitType :: !(Maybe Text)- , _alsAllowedCharacterCount :: !(Maybe (Textual Int32))- , _alsRemainingCharacterCount :: !(Maybe (Textual Int32))- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'AnnotationLayerSummary' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'alsLimitType'------ * 'alsAllowedCharacterCount'------ * 'alsRemainingCharacterCount'-annotationLayerSummary- :: AnnotationLayerSummary-annotationLayerSummary =- AnnotationLayerSummary- { _alsLimitType = Nothing- , _alsAllowedCharacterCount = Nothing- , _alsRemainingCharacterCount = Nothing- }---- | Type of limitation on this layer. \"limited\" or \"unlimited\" for the--- \"copy\" layer.-alsLimitType :: Lens' AnnotationLayerSummary (Maybe Text)-alsLimitType- = lens _alsLimitType (\ s a -> s{_alsLimitType = a})---- | Maximum allowed characters on this layer, especially for the \"copy\"--- layer.-alsAllowedCharacterCount :: Lens' AnnotationLayerSummary (Maybe Int32)-alsAllowedCharacterCount- = lens _alsAllowedCharacterCount- (\ s a -> s{_alsAllowedCharacterCount = a})- . mapping _Coerce---- | Remaining allowed characters on this layer, especially for the \"copy\"--- layer.-alsRemainingCharacterCount :: Lens' AnnotationLayerSummary (Maybe Int32)-alsRemainingCharacterCount- = lens _alsRemainingCharacterCount- (\ s a -> s{_alsRemainingCharacterCount = a})- . mapping _Coerce--instance FromJSON AnnotationLayerSummary where- parseJSON- = withObject "AnnotationLayerSummary"- (\ o ->- AnnotationLayerSummary <$>- (o .:? "limitType") <*>- (o .:? "allowedCharacterCount")- <*> (o .:? "remainingCharacterCount"))--instance ToJSON AnnotationLayerSummary where- toJSON AnnotationLayerSummary{..}- = object- (catMaybes- [("limitType" .=) <$> _alsLimitType,- ("allowedCharacterCount" .=) <$>- _alsAllowedCharacterCount,- ("remainingCharacterCount" .=) <$>- _alsRemainingCharacterCount])---- | Search result information related to this volume.------ /See:/ 'volumeSearchInfo' smart constructor.-newtype VolumeSearchInfo = VolumeSearchInfo- { _vsiTextSnippet :: Maybe Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'VolumeSearchInfo' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'vsiTextSnippet'-volumeSearchInfo- :: VolumeSearchInfo-volumeSearchInfo =- VolumeSearchInfo- { _vsiTextSnippet = Nothing- }---- | A text snippet containing the search query.-vsiTextSnippet :: Lens' VolumeSearchInfo (Maybe Text)-vsiTextSnippet- = lens _vsiTextSnippet- (\ s a -> s{_vsiTextSnippet = a})--instance FromJSON VolumeSearchInfo where- parseJSON- = withObject "VolumeSearchInfo"- (\ o -> VolumeSearchInfo <$> (o .:? "textSnippet"))--instance ToJSON VolumeSearchInfo where- toJSON VolumeSearchInfo{..}- = object- (catMaybes [("textSnippet" .=) <$> _vsiTextSnippet])------- /See:/ 'annotationsSummary' smart constructor.-data AnnotationsSummary = AnnotationsSummary- { _asKind :: !Text- , _asLayers :: !(Maybe [AnnotationsSummaryLayersItem])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'AnnotationsSummary' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'asKind'------ * 'asLayers'-annotationsSummary- :: AnnotationsSummary-annotationsSummary =- AnnotationsSummary- { _asKind = "books#annotationsSummary"- , _asLayers = Nothing- }--asKind :: Lens' AnnotationsSummary Text-asKind = lens _asKind (\ s a -> s{_asKind = a})--asLayers :: Lens' AnnotationsSummary [AnnotationsSummaryLayersItem]-asLayers- = lens _asLayers (\ s a -> s{_asLayers = a}) .- _Default- . _Coerce--instance FromJSON AnnotationsSummary where- parseJSON- = withObject "AnnotationsSummary"- (\ o ->- AnnotationsSummary <$>- (o .:? "kind" .!= "books#annotationsSummary") <*>- (o .:? "layers" .!= mempty))--instance ToJSON AnnotationsSummary where- toJSON AnnotationsSummary{..}- = object- (catMaybes- [Just ("kind" .= _asKind),- ("layers" .=) <$> _asLayers])------- /See:/ 'category' smart constructor.-data Category = Category- { _cKind :: !Text- , _cItems :: !(Maybe [CategoryItemsItem])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Category' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cKind'------ * 'cItems'-category- :: Category-category =- Category- { _cKind = "onboarding#category"- , _cItems = Nothing- }---- | Resource type.-cKind :: Lens' Category Text-cKind = lens _cKind (\ s a -> s{_cKind = a})---- | A list of onboarding categories.-cItems :: Lens' Category [CategoryItemsItem]-cItems- = lens _cItems (\ s a -> s{_cItems = a}) . _Default .- _Coerce--instance FromJSON Category where- parseJSON- = withObject "Category"- (\ o ->- Category <$>- (o .:? "kind" .!= "onboarding#category") <*>- (o .:? "items" .!= mempty))--instance ToJSON Category where- toJSON Category{..}- = object- (catMaybes- [Just ("kind" .= _cKind), ("items" .=) <$> _cItems])------- /See:/ 'discoveryclustersClustersItemBanner_with_content_container' smart constructor.-data DiscoveryclustersClustersItemBanner_with_content_container = DiscoveryclustersClustersItemBanner_with_content_container- { _dcibFillColorArgb :: !(Maybe Text)- , _dcibMoreButtonURL :: !(Maybe Text)- , _dcibTextColorArgb :: !(Maybe Text)- , _dcibMoreButtonText :: !(Maybe Text)- , _dcibImageURL :: !(Maybe Text)- , _dcibMaskColorArgb :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'DiscoveryclustersClustersItemBanner_with_content_container' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dcibFillColorArgb'------ * 'dcibMoreButtonURL'------ * 'dcibTextColorArgb'------ * 'dcibMoreButtonText'------ * 'dcibImageURL'------ * 'dcibMaskColorArgb'-discoveryclustersClustersItemBanner_with_content_container- :: DiscoveryclustersClustersItemBanner_with_content_container-discoveryclustersClustersItemBanner_with_content_container =- DiscoveryclustersClustersItemBanner_with_content_container- { _dcibFillColorArgb = Nothing- , _dcibMoreButtonURL = Nothing- , _dcibTextColorArgb = Nothing- , _dcibMoreButtonText = Nothing- , _dcibImageURL = Nothing- , _dcibMaskColorArgb = Nothing- }--dcibFillColorArgb :: Lens' DiscoveryclustersClustersItemBanner_with_content_container (Maybe Text)-dcibFillColorArgb- = lens _dcibFillColorArgb- (\ s a -> s{_dcibFillColorArgb = a})--dcibMoreButtonURL :: Lens' DiscoveryclustersClustersItemBanner_with_content_container (Maybe Text)-dcibMoreButtonURL- = lens _dcibMoreButtonURL- (\ s a -> s{_dcibMoreButtonURL = a})--dcibTextColorArgb :: Lens' DiscoveryclustersClustersItemBanner_with_content_container (Maybe Text)-dcibTextColorArgb- = lens _dcibTextColorArgb- (\ s a -> s{_dcibTextColorArgb = a})--dcibMoreButtonText :: Lens' DiscoveryclustersClustersItemBanner_with_content_container (Maybe Text)-dcibMoreButtonText- = lens _dcibMoreButtonText- (\ s a -> s{_dcibMoreButtonText = a})--dcibImageURL :: Lens' DiscoveryclustersClustersItemBanner_with_content_container (Maybe Text)-dcibImageURL- = lens _dcibImageURL (\ s a -> s{_dcibImageURL = a})--dcibMaskColorArgb :: Lens' DiscoveryclustersClustersItemBanner_with_content_container (Maybe Text)-dcibMaskColorArgb- = lens _dcibMaskColorArgb- (\ s a -> s{_dcibMaskColorArgb = a})--instance FromJSON- DiscoveryclustersClustersItemBanner_with_content_container- where- parseJSON- = withObject- "DiscoveryclustersClustersItemBannerWithContentContainer"- (\ o ->- DiscoveryclustersClustersItemBanner_with_content_container- <$>- (o .:? "fillColorArgb") <*> (o .:? "moreButtonUrl")- <*> (o .:? "textColorArgb")- <*> (o .:? "moreButtonText")- <*> (o .:? "imageUrl")- <*> (o .:? "maskColorArgb"))--instance ToJSON- DiscoveryclustersClustersItemBanner_with_content_container- where- toJSON- DiscoveryclustersClustersItemBanner_with_content_container{..}- = object- (catMaybes- [("fillColorArgb" .=) <$> _dcibFillColorArgb,- ("moreButtonUrl" .=) <$> _dcibMoreButtonURL,- ("textColorArgb" .=) <$> _dcibTextColorArgb,- ("moreButtonText" .=) <$> _dcibMoreButtonText,- ("imageUrl" .=) <$> _dcibImageURL,- ("maskColorArgb" .=) <$> _dcibMaskColorArgb])------- /See:/ 'volume' smart constructor.-data Volume = Volume- { _vvUserInfo :: !(Maybe VolumeUserInfo)- , _vvEtag :: !(Maybe Text)- , _vvAccessInfo :: !(Maybe VolumeAccessInfo)- , _vvKind :: !Text- , _vvSearchInfo :: !(Maybe VolumeSearchInfo)- , _vvSelfLink :: !(Maybe Text)- , _vvLayerInfo :: !(Maybe VolumeLayerInfo)- , _vvSaleInfo :: !(Maybe VolumeSaleInfo)- , _vvId :: !(Maybe Text)- , _vvRecommendedInfo :: !(Maybe VolumeRecommendedInfo)- , _vvVolumeInfo :: !(Maybe VolumeVolumeInfo)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Volume' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'vvUserInfo'------ * 'vvEtag'------ * 'vvAccessInfo'------ * 'vvKind'------ * 'vvSearchInfo'------ * 'vvSelfLink'------ * 'vvLayerInfo'------ * 'vvSaleInfo'------ * 'vvId'------ * 'vvRecommendedInfo'------ * 'vvVolumeInfo'-volume- :: Volume-volume =- Volume- { _vvUserInfo = Nothing- , _vvEtag = Nothing- , _vvAccessInfo = Nothing- , _vvKind = "books#volume"- , _vvSearchInfo = Nothing- , _vvSelfLink = Nothing- , _vvLayerInfo = Nothing- , _vvSaleInfo = Nothing- , _vvId = Nothing- , _vvRecommendedInfo = Nothing- , _vvVolumeInfo = Nothing- }---- | User specific information related to this volume. (e.g. page this user--- last read or whether they purchased this book)-vvUserInfo :: Lens' Volume (Maybe VolumeUserInfo)-vvUserInfo- = lens _vvUserInfo (\ s a -> s{_vvUserInfo = a})---- | Opaque identifier for a specific version of a volume resource. (In LITE--- projection)-vvEtag :: Lens' Volume (Maybe Text)-vvEtag = lens _vvEtag (\ s a -> s{_vvEtag = a})---- | Any information about a volume related to reading or obtaining that--- volume text. This information can depend on country (books may be public--- domain in one country but not in another, e.g.).-vvAccessInfo :: Lens' Volume (Maybe VolumeAccessInfo)-vvAccessInfo- = lens _vvAccessInfo (\ s a -> s{_vvAccessInfo = a})---- | Resource type for a volume. (In LITE projection.)-vvKind :: Lens' Volume Text-vvKind = lens _vvKind (\ s a -> s{_vvKind = a})---- | Search result information related to this volume.-vvSearchInfo :: Lens' Volume (Maybe VolumeSearchInfo)-vvSearchInfo- = lens _vvSearchInfo (\ s a -> s{_vvSearchInfo = a})---- | URL to this resource. (In LITE projection.)-vvSelfLink :: Lens' Volume (Maybe Text)-vvSelfLink- = lens _vvSelfLink (\ s a -> s{_vvSelfLink = a})---- | What layers exist in this volume and high level information about them.-vvLayerInfo :: Lens' Volume (Maybe VolumeLayerInfo)-vvLayerInfo- = lens _vvLayerInfo (\ s a -> s{_vvLayerInfo = a})---- | Any information about a volume related to the eBookstore and\/or--- purchaseability. This information can depend on the country where the--- request originates from (i.e. books may not be for sale in certain--- countries).-vvSaleInfo :: Lens' Volume (Maybe VolumeSaleInfo)-vvSaleInfo- = lens _vvSaleInfo (\ s a -> s{_vvSaleInfo = a})---- | Unique identifier for a volume. (In LITE projection.)-vvId :: Lens' Volume (Maybe Text)-vvId = lens _vvId (\ s a -> s{_vvId = a})---- | Recommendation related information for this volume.-vvRecommendedInfo :: Lens' Volume (Maybe VolumeRecommendedInfo)-vvRecommendedInfo- = lens _vvRecommendedInfo- (\ s a -> s{_vvRecommendedInfo = a})---- | General volume information.-vvVolumeInfo :: Lens' Volume (Maybe VolumeVolumeInfo)-vvVolumeInfo- = lens _vvVolumeInfo (\ s a -> s{_vvVolumeInfo = a})--instance FromJSON Volume where- parseJSON- = withObject "Volume"- (\ o ->- Volume <$>- (o .:? "userInfo") <*> (o .:? "etag") <*>- (o .:? "accessInfo")- <*> (o .:? "kind" .!= "books#volume")- <*> (o .:? "searchInfo")- <*> (o .:? "selfLink")- <*> (o .:? "layerInfo")- <*> (o .:? "saleInfo")- <*> (o .:? "id")- <*> (o .:? "recommendedInfo")- <*> (o .:? "volumeInfo"))--instance ToJSON Volume where- toJSON Volume{..}- = object- (catMaybes- [("userInfo" .=) <$> _vvUserInfo,- ("etag" .=) <$> _vvEtag,- ("accessInfo" .=) <$> _vvAccessInfo,- Just ("kind" .= _vvKind),- ("searchInfo" .=) <$> _vvSearchInfo,- ("selfLink" .=) <$> _vvSelfLink,- ("layerInfo" .=) <$> _vvLayerInfo,- ("saleInfo" .=) <$> _vvSaleInfo, ("id" .=) <$> _vvId,- ("recommendedInfo" .=) <$> _vvRecommendedInfo,- ("volumeInfo" .=) <$> _vvVolumeInfo])------- /See:/ 'geolayerDataGeoBoundaryItemItem' smart constructor.-data GeolayerDataGeoBoundaryItemItem = GeolayerDataGeoBoundaryItemItem- { _gdgbiiLatitude :: !(Maybe (Textual Word32))- , _gdgbiiLongitude :: !(Maybe (Textual Word32))- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GeolayerDataGeoBoundaryItemItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gdgbiiLatitude'------ * 'gdgbiiLongitude'-geolayerDataGeoBoundaryItemItem- :: GeolayerDataGeoBoundaryItemItem-geolayerDataGeoBoundaryItemItem =- GeolayerDataGeoBoundaryItemItem- { _gdgbiiLatitude = Nothing- , _gdgbiiLongitude = Nothing- }--gdgbiiLatitude :: Lens' GeolayerDataGeoBoundaryItemItem (Maybe Word32)-gdgbiiLatitude- = lens _gdgbiiLatitude- (\ s a -> s{_gdgbiiLatitude = a})- . mapping _Coerce--gdgbiiLongitude :: Lens' GeolayerDataGeoBoundaryItemItem (Maybe Word32)-gdgbiiLongitude- = lens _gdgbiiLongitude- (\ s a -> s{_gdgbiiLongitude = a})- . mapping _Coerce--instance FromJSON GeolayerDataGeoBoundaryItemItem- where- parseJSON- = withObject "GeolayerDataGeoBoundaryItemItem"- (\ o ->- GeolayerDataGeoBoundaryItemItem <$>- (o .:? "latitude") <*> (o .:? "longitude"))--instance ToJSON GeolayerDataGeoBoundaryItemItem where- toJSON GeolayerDataGeoBoundaryItemItem{..}- = object- (catMaybes- [("latitude" .=) <$> _gdgbiiLatitude,- ("longitude" .=) <$> _gdgbiiLongitude])------- /See:/ 'offersItemsItemItemsItem' smart constructor.-data OffersItemsItemItemsItem = OffersItemsItemItemsItem- { _oiiiiCanonicalVolumeLink :: !(Maybe Text)- , _oiiiiCoverURL :: !(Maybe Text)- , _oiiiiVolumeId :: !(Maybe Text)- , _oiiiiAuthor :: !(Maybe Text)- , _oiiiiTitle :: !(Maybe Text)- , _oiiiiDescription :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'OffersItemsItemItemsItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'oiiiiCanonicalVolumeLink'------ * 'oiiiiCoverURL'------ * 'oiiiiVolumeId'------ * 'oiiiiAuthor'------ * 'oiiiiTitle'------ * 'oiiiiDescription'-offersItemsItemItemsItem- :: OffersItemsItemItemsItem-offersItemsItemItemsItem =- OffersItemsItemItemsItem- { _oiiiiCanonicalVolumeLink = Nothing- , _oiiiiCoverURL = Nothing- , _oiiiiVolumeId = Nothing- , _oiiiiAuthor = Nothing- , _oiiiiTitle = Nothing- , _oiiiiDescription = Nothing- }--oiiiiCanonicalVolumeLink :: Lens' OffersItemsItemItemsItem (Maybe Text)-oiiiiCanonicalVolumeLink- = lens _oiiiiCanonicalVolumeLink- (\ s a -> s{_oiiiiCanonicalVolumeLink = a})--oiiiiCoverURL :: Lens' OffersItemsItemItemsItem (Maybe Text)-oiiiiCoverURL- = lens _oiiiiCoverURL- (\ s a -> s{_oiiiiCoverURL = a})--oiiiiVolumeId :: Lens' OffersItemsItemItemsItem (Maybe Text)-oiiiiVolumeId- = lens _oiiiiVolumeId- (\ s a -> s{_oiiiiVolumeId = a})--oiiiiAuthor :: Lens' OffersItemsItemItemsItem (Maybe Text)-oiiiiAuthor- = lens _oiiiiAuthor (\ s a -> s{_oiiiiAuthor = a})--oiiiiTitle :: Lens' OffersItemsItemItemsItem (Maybe Text)-oiiiiTitle- = lens _oiiiiTitle (\ s a -> s{_oiiiiTitle = a})--oiiiiDescription :: Lens' OffersItemsItemItemsItem (Maybe Text)-oiiiiDescription- = lens _oiiiiDescription- (\ s a -> s{_oiiiiDescription = a})--instance FromJSON OffersItemsItemItemsItem where- parseJSON- = withObject "OffersItemsItemItemsItem"- (\ o ->- OffersItemsItemItemsItem <$>- (o .:? "canonicalVolumeLink") <*> (o .:? "coverUrl")- <*> (o .:? "volumeId")- <*> (o .:? "author")- <*> (o .:? "title")- <*> (o .:? "description"))--instance ToJSON OffersItemsItemItemsItem where- toJSON OffersItemsItemItemsItem{..}- = object- (catMaybes- [("canonicalVolumeLink" .=) <$>- _oiiiiCanonicalVolumeLink,- ("coverUrl" .=) <$> _oiiiiCoverURL,- ("volumeId" .=) <$> _oiiiiVolumeId,- ("author" .=) <$> _oiiiiAuthor,- ("title" .=) <$> _oiiiiTitle,- ("description" .=) <$> _oiiiiDescription])------- /See:/ 'dictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItemSource' smart constructor.-data DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItemSource = DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItemSource- { _dddwisidieisURL :: !(Maybe Text)- , _dddwisidieisAttribution :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItemSource' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dddwisidieisURL'------ * 'dddwisidieisAttribution'-dictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItemSource- :: DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItemSource-dictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItemSource =- DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItemSource- { _dddwisidieisURL = Nothing- , _dddwisidieisAttribution = Nothing- }--dddwisidieisURL :: Lens' DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItemSource (Maybe Text)-dddwisidieisURL- = lens _dddwisidieisURL- (\ s a -> s{_dddwisidieisURL = a})--dddwisidieisAttribution :: Lens' DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItemSource (Maybe Text)-dddwisidieisAttribution- = lens _dddwisidieisAttribution- (\ s a -> s{_dddwisidieisAttribution = a})--instance FromJSON- DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItemSource- where- parseJSON- = withObject- "DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItemSource"- (\ o ->- DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItemSource- <$> (o .:? "url") <*> (o .:? "attribution"))--instance ToJSON- DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItemSource- where- toJSON- DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItemSource{..}- = object- (catMaybes- [("url" .=) <$> _dddwisidieisURL,- ("attribution" .=) <$> _dddwisidieisAttribution])------- /See:/ 'geolayerDataCommon' smart constructor.-data GeolayerDataCommon = GeolayerDataCommon- { _gdcSnippet :: !(Maybe Text)- , _gdcSnippetURL :: !(Maybe Text)- , _gdcLang :: !(Maybe Text)- , _gdcTitle :: !(Maybe Text)- , _gdcPreviewImageURL :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GeolayerDataCommon' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gdcSnippet'------ * 'gdcSnippetURL'------ * 'gdcLang'------ * 'gdcTitle'------ * 'gdcPreviewImageURL'-geolayerDataCommon- :: GeolayerDataCommon-geolayerDataCommon =- GeolayerDataCommon- { _gdcSnippet = Nothing- , _gdcSnippetURL = Nothing- , _gdcLang = Nothing- , _gdcTitle = Nothing- , _gdcPreviewImageURL = Nothing- }---- | The description for this location.-gdcSnippet :: Lens' GeolayerDataCommon (Maybe Text)-gdcSnippet- = lens _gdcSnippet (\ s a -> s{_gdcSnippet = a})---- | The URL for information for this location. Ex: wikipedia link.-gdcSnippetURL :: Lens' GeolayerDataCommon (Maybe Text)-gdcSnippetURL- = lens _gdcSnippetURL- (\ s a -> s{_gdcSnippetURL = a})---- | The language of the information url and description.-gdcLang :: Lens' GeolayerDataCommon (Maybe Text)-gdcLang = lens _gdcLang (\ s a -> s{_gdcLang = a})---- | The display title and localized canonical name to use when searching for--- this entity on Google search.-gdcTitle :: Lens' GeolayerDataCommon (Maybe Text)-gdcTitle = lens _gdcTitle (\ s a -> s{_gdcTitle = a})---- | The URL for the preview image information.-gdcPreviewImageURL :: Lens' GeolayerDataCommon (Maybe Text)-gdcPreviewImageURL- = lens _gdcPreviewImageURL- (\ s a -> s{_gdcPreviewImageURL = a})--instance FromJSON GeolayerDataCommon where- parseJSON- = withObject "GeolayerDataCommon"- (\ o ->- GeolayerDataCommon <$>- (o .:? "snippet") <*> (o .:? "snippetUrl") <*>- (o .:? "lang")- <*> (o .:? "title")- <*> (o .:? "previewImageUrl"))--instance ToJSON GeolayerDataCommon where- toJSON GeolayerDataCommon{..}- = object- (catMaybes- [("snippet" .=) <$> _gdcSnippet,- ("snippetUrl" .=) <$> _gdcSnippetURL,- ("lang" .=) <$> _gdcLang, ("title" .=) <$> _gdcTitle,- ("previewImageUrl" .=) <$> _gdcPreviewImageURL])------- /See:/ 'geolayerDataGeo' smart constructor.-data GeolayerDataGeo = GeolayerDataGeo- { _gdgMapType :: !(Maybe Text)- , _gdgCachePolicy :: !(Maybe Text)- , _gdgViewport :: !(Maybe GeolayerDataGeoViewport)- , _gdgBoundary :: !(Maybe [[GeolayerDataGeoBoundaryItemItem]])- , _gdgLatitude :: !(Maybe (Textual Double))- , _gdgZoom :: !(Maybe (Textual Int32))- , _gdgCountryCode :: !(Maybe Text)- , _gdgLongitude :: !(Maybe (Textual Double))- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GeolayerDataGeo' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gdgMapType'------ * 'gdgCachePolicy'------ * 'gdgViewport'------ * 'gdgBoundary'------ * 'gdgLatitude'------ * 'gdgZoom'------ * 'gdgCountryCode'------ * 'gdgLongitude'-geolayerDataGeo- :: GeolayerDataGeo-geolayerDataGeo =- GeolayerDataGeo- { _gdgMapType = Nothing- , _gdgCachePolicy = Nothing- , _gdgViewport = Nothing- , _gdgBoundary = Nothing- , _gdgLatitude = Nothing- , _gdgZoom = Nothing- , _gdgCountryCode = Nothing- , _gdgLongitude = Nothing- }---- | The type of map that should be used for this location. EX: HYBRID,--- ROADMAP, SATELLITE, TERRAIN-gdgMapType :: Lens' GeolayerDataGeo (Maybe Text)-gdgMapType- = lens _gdgMapType (\ s a -> s{_gdgMapType = a})---- | The cache policy active for this data. EX: UNRESTRICTED, RESTRICTED,--- NEVER-gdgCachePolicy :: Lens' GeolayerDataGeo (Maybe Text)-gdgCachePolicy- = lens _gdgCachePolicy- (\ s a -> s{_gdgCachePolicy = a})---- | The viewport for showing this location. This is a latitude, longitude--- rectangle.-gdgViewport :: Lens' GeolayerDataGeo (Maybe GeolayerDataGeoViewport)-gdgViewport- = lens _gdgViewport (\ s a -> s{_gdgViewport = a})---- | The boundary of the location as a set of loops containing pairs of--- latitude, longitude coordinates.-gdgBoundary :: Lens' GeolayerDataGeo [[GeolayerDataGeoBoundaryItemItem]]-gdgBoundary- = lens _gdgBoundary (\ s a -> s{_gdgBoundary = a}) .- _Default- . _Coerce---- | The latitude of the location.-gdgLatitude :: Lens' GeolayerDataGeo (Maybe Double)-gdgLatitude- = lens _gdgLatitude (\ s a -> s{_gdgLatitude = a}) .- mapping _Coerce---- | The Zoom level to use for the map. Zoom levels between 0 (the lowest--- zoom level, in which the entire world can be seen on one map) to 21+--- (down to individual buildings). See:--- https:\/\/developers.google.com\/maps\/documentation\/staticmaps\/#Zoomlevels-gdgZoom :: Lens' GeolayerDataGeo (Maybe Int32)-gdgZoom- = lens _gdgZoom (\ s a -> s{_gdgZoom = a}) .- mapping _Coerce---- | The country code of the location.-gdgCountryCode :: Lens' GeolayerDataGeo (Maybe Text)-gdgCountryCode- = lens _gdgCountryCode- (\ s a -> s{_gdgCountryCode = a})---- | The longitude of the location.-gdgLongitude :: Lens' GeolayerDataGeo (Maybe Double)-gdgLongitude- = lens _gdgLongitude (\ s a -> s{_gdgLongitude = a})- . mapping _Coerce--instance FromJSON GeolayerDataGeo where- parseJSON- = withObject "GeolayerDataGeo"- (\ o ->- GeolayerDataGeo <$>- (o .:? "mapType") <*> (o .:? "cachePolicy") <*>- (o .:? "viewport")- <*> (o .:? "boundary" .!= mempty)- <*> (o .:? "latitude")- <*> (o .:? "zoom")- <*> (o .:? "countryCode")- <*> (o .:? "longitude"))--instance ToJSON GeolayerDataGeo where- toJSON GeolayerDataGeo{..}- = object- (catMaybes- [("mapType" .=) <$> _gdgMapType,- ("cachePolicy" .=) <$> _gdgCachePolicy,- ("viewport" .=) <$> _gdgViewport,- ("boundary" .=) <$> _gdgBoundary,- ("latitude" .=) <$> _gdgLatitude,- ("zoom" .=) <$> _gdgZoom,- ("countryCode" .=) <$> _gdgCountryCode,- ("longitude" .=) <$> _gdgLongitude])------- /See:/ 'dictlayerDataDictWordsItem' smart constructor.-data DictlayerDataDictWordsItem = DictlayerDataDictWordsItem- { _dddwiSenses :: !(Maybe [DictlayerDataDictWordsItemSensesItem])- , _dddwiSource :: !(Maybe DictlayerDataDictWordsItemSource)- , _dddwiDerivatives :: !(Maybe [DictlayerDataDictWordsItemDerivativesItem])- , _dddwiExamples :: !(Maybe [DictlayerDataDictWordsItemExamplesItem])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'DictlayerDataDictWordsItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dddwiSenses'------ * 'dddwiSource'------ * 'dddwiDerivatives'------ * 'dddwiExamples'-dictlayerDataDictWordsItem- :: DictlayerDataDictWordsItem-dictlayerDataDictWordsItem =- DictlayerDataDictWordsItem- { _dddwiSenses = Nothing- , _dddwiSource = Nothing- , _dddwiDerivatives = Nothing- , _dddwiExamples = Nothing- }--dddwiSenses :: Lens' DictlayerDataDictWordsItem [DictlayerDataDictWordsItemSensesItem]-dddwiSenses- = lens _dddwiSenses (\ s a -> s{_dddwiSenses = a}) .- _Default- . _Coerce---- | The words with different meanings but not related words, e.g. \"go\"--- (game) and \"go\" (verb).-dddwiSource :: Lens' DictlayerDataDictWordsItem (Maybe DictlayerDataDictWordsItemSource)-dddwiSource- = lens _dddwiSource (\ s a -> s{_dddwiSource = a})--dddwiDerivatives :: Lens' DictlayerDataDictWordsItem [DictlayerDataDictWordsItemDerivativesItem]-dddwiDerivatives- = lens _dddwiDerivatives- (\ s a -> s{_dddwiDerivatives = a})- . _Default- . _Coerce--dddwiExamples :: Lens' DictlayerDataDictWordsItem [DictlayerDataDictWordsItemExamplesItem]-dddwiExamples- = lens _dddwiExamples- (\ s a -> s{_dddwiExamples = a})- . _Default- . _Coerce--instance FromJSON DictlayerDataDictWordsItem where- parseJSON- = withObject "DictlayerDataDictWordsItem"- (\ o ->- DictlayerDataDictWordsItem <$>- (o .:? "senses" .!= mempty) <*> (o .:? "source") <*>- (o .:? "derivatives" .!= mempty)- <*> (o .:? "examples" .!= mempty))--instance ToJSON DictlayerDataDictWordsItem where- toJSON DictlayerDataDictWordsItem{..}- = object- (catMaybes- [("senses" .=) <$> _dddwiSenses,- ("source" .=) <$> _dddwiSource,- ("derivatives" .=) <$> _dddwiDerivatives,- ("examples" .=) <$> _dddwiExamples])------- /See:/ 'categoryItemsItem' smart constructor.-data CategoryItemsItem = CategoryItemsItem- { _ciiName :: !(Maybe Text)- , _ciiCategoryId :: !(Maybe Text)- , _ciiBadgeURL :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'CategoryItemsItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'ciiName'------ * 'ciiCategoryId'------ * 'ciiBadgeURL'-categoryItemsItem- :: CategoryItemsItem-categoryItemsItem =- CategoryItemsItem- { _ciiName = Nothing- , _ciiCategoryId = Nothing- , _ciiBadgeURL = Nothing- }--ciiName :: Lens' CategoryItemsItem (Maybe Text)-ciiName = lens _ciiName (\ s a -> s{_ciiName = a})--ciiCategoryId :: Lens' CategoryItemsItem (Maybe Text)-ciiCategoryId- = lens _ciiCategoryId- (\ s a -> s{_ciiCategoryId = a})--ciiBadgeURL :: Lens' CategoryItemsItem (Maybe Text)-ciiBadgeURL- = lens _ciiBadgeURL (\ s a -> s{_ciiBadgeURL = a})--instance FromJSON CategoryItemsItem where- parseJSON- = withObject "CategoryItemsItem"- (\ o ->- CategoryItemsItem <$>- (o .:? "name") <*> (o .:? "categoryId") <*>- (o .:? "badgeUrl"))--instance ToJSON CategoryItemsItem where- toJSON CategoryItemsItem{..}- = object- (catMaybes- [("name" .=) <$> _ciiName,- ("categoryId" .=) <$> _ciiCategoryId,- ("badgeUrl" .=) <$> _ciiBadgeURL])------- /See:/ 'dictlayerDataDictWordsItemDerivativesItemSource' smart constructor.-data DictlayerDataDictWordsItemDerivativesItemSource = DictlayerDataDictWordsItemDerivativesItemSource- { _dddwidisURL :: !(Maybe Text)- , _dddwidisAttribution :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'DictlayerDataDictWordsItemDerivativesItemSource' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dddwidisURL'------ * 'dddwidisAttribution'-dictlayerDataDictWordsItemDerivativesItemSource- :: DictlayerDataDictWordsItemDerivativesItemSource-dictlayerDataDictWordsItemDerivativesItemSource =- DictlayerDataDictWordsItemDerivativesItemSource- { _dddwidisURL = Nothing- , _dddwidisAttribution = Nothing- }--dddwidisURL :: Lens' DictlayerDataDictWordsItemDerivativesItemSource (Maybe Text)-dddwidisURL- = lens _dddwidisURL (\ s a -> s{_dddwidisURL = a})--dddwidisAttribution :: Lens' DictlayerDataDictWordsItemDerivativesItemSource (Maybe Text)-dddwidisAttribution- = lens _dddwidisAttribution- (\ s a -> s{_dddwidisAttribution = a})--instance FromJSON- DictlayerDataDictWordsItemDerivativesItemSource where- parseJSON- = withObject- "DictlayerDataDictWordsItemDerivativesItemSource"- (\ o ->- DictlayerDataDictWordsItemDerivativesItemSource <$>- (o .:? "url") <*> (o .:? "attribution"))--instance ToJSON- DictlayerDataDictWordsItemDerivativesItemSource where- toJSON- DictlayerDataDictWordsItemDerivativesItemSource{..}- = object- (catMaybes- [("url" .=) <$> _dddwidisURL,- ("attribution" .=) <$> _dddwidisAttribution])------- /See:/ 'geolayerData' smart constructor.-data GeolayerData = GeolayerData- { _gdKind :: !Text- , _gdGeo :: !(Maybe GeolayerDataGeo)- , _gdCommon :: !(Maybe GeolayerDataCommon)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GeolayerData' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gdKind'------ * 'gdGeo'------ * 'gdCommon'-geolayerData- :: GeolayerData-geolayerData =- GeolayerData- { _gdKind = "books#geolayerdata"- , _gdGeo = Nothing- , _gdCommon = Nothing- }--gdKind :: Lens' GeolayerData Text-gdKind = lens _gdKind (\ s a -> s{_gdKind = a})--gdGeo :: Lens' GeolayerData (Maybe GeolayerDataGeo)-gdGeo = lens _gdGeo (\ s a -> s{_gdGeo = a})--gdCommon :: Lens' GeolayerData (Maybe GeolayerDataCommon)-gdCommon = lens _gdCommon (\ s a -> s{_gdCommon = a})--instance FromJSON GeolayerData where- parseJSON- = withObject "GeolayerData"- (\ o ->- GeolayerData <$>- (o .:? "kind" .!= "books#geolayerdata") <*>- (o .:? "geo")- <*> (o .:? "common"))--instance ToJSON GeolayerData where- toJSON GeolayerData{..}- = object- (catMaybes- [Just ("kind" .= _gdKind), ("geo" .=) <$> _gdGeo,- ("common" .=) <$> _gdCommon])---- | The words with different meanings but not related words, e.g. \"go\"--- (game) and \"go\" (verb).------ /See:/ 'dictlayerDataDictWordsItemSource' smart constructor.-data DictlayerDataDictWordsItemSource = DictlayerDataDictWordsItemSource- { _dddwisURL :: !(Maybe Text)- , _dddwisAttribution :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'DictlayerDataDictWordsItemSource' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dddwisURL'------ * 'dddwisAttribution'-dictlayerDataDictWordsItemSource- :: DictlayerDataDictWordsItemSource-dictlayerDataDictWordsItemSource =- DictlayerDataDictWordsItemSource- { _dddwisURL = Nothing- , _dddwisAttribution = Nothing- }--dddwisURL :: Lens' DictlayerDataDictWordsItemSource (Maybe Text)-dddwisURL- = lens _dddwisURL (\ s a -> s{_dddwisURL = a})--dddwisAttribution :: Lens' DictlayerDataDictWordsItemSource (Maybe Text)-dddwisAttribution- = lens _dddwisAttribution- (\ s a -> s{_dddwisAttribution = a})--instance FromJSON DictlayerDataDictWordsItemSource- where- parseJSON- = withObject "DictlayerDataDictWordsItemSource"- (\ o ->- DictlayerDataDictWordsItemSource <$>- (o .:? "url") <*> (o .:? "attribution"))--instance ToJSON DictlayerDataDictWordsItemSource- where- toJSON DictlayerDataDictWordsItemSource{..}- = object- (catMaybes- [("url" .=) <$> _dddwisURL,- ("attribution" .=) <$> _dddwisAttribution])------- /See:/ 'dictlayerDataDictWordsItemDerivativesItem' smart constructor.-data DictlayerDataDictWordsItemDerivativesItem = DictlayerDataDictWordsItemDerivativesItem- { _dddwidiText :: !(Maybe Text)- , _dddwidiSource :: !(Maybe DictlayerDataDictWordsItemDerivativesItemSource)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'DictlayerDataDictWordsItemDerivativesItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dddwidiText'------ * 'dddwidiSource'-dictlayerDataDictWordsItemDerivativesItem- :: DictlayerDataDictWordsItemDerivativesItem-dictlayerDataDictWordsItemDerivativesItem =- DictlayerDataDictWordsItemDerivativesItem- { _dddwidiText = Nothing- , _dddwidiSource = Nothing- }--dddwidiText :: Lens' DictlayerDataDictWordsItemDerivativesItem (Maybe Text)-dddwidiText- = lens _dddwidiText (\ s a -> s{_dddwidiText = a})--dddwidiSource :: Lens' DictlayerDataDictWordsItemDerivativesItem (Maybe DictlayerDataDictWordsItemDerivativesItemSource)-dddwidiSource- = lens _dddwidiSource- (\ s a -> s{_dddwidiSource = a})--instance FromJSON- DictlayerDataDictWordsItemDerivativesItem where- parseJSON- = withObject- "DictlayerDataDictWordsItemDerivativesItem"- (\ o ->- DictlayerDataDictWordsItemDerivativesItem <$>- (o .:? "text") <*> (o .:? "source"))--instance ToJSON- DictlayerDataDictWordsItemDerivativesItem where- toJSON DictlayerDataDictWordsItemDerivativesItem{..}- = object- (catMaybes- [("text" .=) <$> _dddwidiText,- ("source" .=) <$> _dddwidiSource])------- /See:/ 'dictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItem' smart constructor.-data DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItem = DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItem- { _dddwisidieiText :: !(Maybe Text)- , _dddwisidieiSource :: !(Maybe DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItemSource)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dddwisidieiText'------ * 'dddwisidieiSource'-dictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItem- :: DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItem-dictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItem =- DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItem- { _dddwisidieiText = Nothing- , _dddwisidieiSource = Nothing- }--dddwisidieiText :: Lens' DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItem (Maybe Text)-dddwisidieiText- = lens _dddwisidieiText- (\ s a -> s{_dddwisidieiText = a})--dddwisidieiSource :: Lens' DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItem (Maybe DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItemSource)-dddwisidieiSource- = lens _dddwisidieiSource- (\ s a -> s{_dddwisidieiSource = a})--instance FromJSON- DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItem- where- parseJSON- = withObject- "DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItem"- (\ o ->- DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItem- <$> (o .:? "text") <*> (o .:? "source"))--instance ToJSON- DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItem- where- toJSON- DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItem{..}- = object- (catMaybes- [("text" .=) <$> _dddwisidieiText,- ("source" .=) <$> _dddwisidieiSource])------- /See:/ 'dictlayerData' smart constructor.-data DictlayerData = DictlayerData- { _ddKind :: !Text- , _ddDict :: !(Maybe DictlayerDataDict)- , _ddCommon :: !(Maybe DictlayerDataCommon)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'DictlayerData' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'ddKind'------ * 'ddDict'------ * 'ddCommon'-dictlayerData- :: DictlayerData-dictlayerData =- DictlayerData- { _ddKind = "books#dictlayerdata"- , _ddDict = Nothing- , _ddCommon = Nothing- }--ddKind :: Lens' DictlayerData Text-ddKind = lens _ddKind (\ s a -> s{_ddKind = a})--ddDict :: Lens' DictlayerData (Maybe DictlayerDataDict)-ddDict = lens _ddDict (\ s a -> s{_ddDict = a})--ddCommon :: Lens' DictlayerData (Maybe DictlayerDataCommon)-ddCommon = lens _ddCommon (\ s a -> s{_ddCommon = a})--instance FromJSON DictlayerData where- parseJSON- = withObject "DictlayerData"- (\ o ->- DictlayerData <$>- (o .:? "kind" .!= "books#dictlayerdata") <*>- (o .:? "dict")- <*> (o .:? "common"))--instance ToJSON DictlayerData where- toJSON DictlayerData{..}- = object- (catMaybes- [Just ("kind" .= _ddKind), ("dict" .=) <$> _ddDict,- ("common" .=) <$> _ddCommon])------- /See:/ 'dictlayerDataDictWordsItemSensesItemSynonymsItemSource' smart constructor.-data DictlayerDataDictWordsItemSensesItemSynonymsItemSource = DictlayerDataDictWordsItemSensesItemSynonymsItemSource- { _dddwisisisURL :: !(Maybe Text)- , _dddwisisisAttribution :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'DictlayerDataDictWordsItemSensesItemSynonymsItemSource' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dddwisisisURL'------ * 'dddwisisisAttribution'-dictlayerDataDictWordsItemSensesItemSynonymsItemSource- :: DictlayerDataDictWordsItemSensesItemSynonymsItemSource-dictlayerDataDictWordsItemSensesItemSynonymsItemSource =- DictlayerDataDictWordsItemSensesItemSynonymsItemSource- { _dddwisisisURL = Nothing- , _dddwisisisAttribution = Nothing- }--dddwisisisURL :: Lens' DictlayerDataDictWordsItemSensesItemSynonymsItemSource (Maybe Text)-dddwisisisURL- = lens _dddwisisisURL- (\ s a -> s{_dddwisisisURL = a})--dddwisisisAttribution :: Lens' DictlayerDataDictWordsItemSensesItemSynonymsItemSource (Maybe Text)-dddwisisisAttribution- = lens _dddwisisisAttribution- (\ s a -> s{_dddwisisisAttribution = a})--instance FromJSON- DictlayerDataDictWordsItemSensesItemSynonymsItemSource- where- parseJSON- = withObject- "DictlayerDataDictWordsItemSensesItemSynonymsItemSource"- (\ o ->- DictlayerDataDictWordsItemSensesItemSynonymsItemSource- <$> (o .:? "url") <*> (o .:? "attribution"))--instance ToJSON- DictlayerDataDictWordsItemSensesItemSynonymsItemSource- where- toJSON- DictlayerDataDictWordsItemSensesItemSynonymsItemSource{..}- = object- (catMaybes- [("url" .=) <$> _dddwisisisURL,- ("attribution" .=) <$> _dddwisisisAttribution])------- /See:/ 'userSettingsNotification' smart constructor.-newtype UserSettingsNotification = UserSettingsNotification- { _usnMoreFromAuthors :: Maybe UserSettingsNotificationMoreFromAuthors- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'UserSettingsNotification' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'usnMoreFromAuthors'-userSettingsNotification- :: UserSettingsNotification-userSettingsNotification =- UserSettingsNotification- { _usnMoreFromAuthors = Nothing- }--usnMoreFromAuthors :: Lens' UserSettingsNotification (Maybe UserSettingsNotificationMoreFromAuthors)-usnMoreFromAuthors- = lens _usnMoreFromAuthors- (\ s a -> s{_usnMoreFromAuthors = a})--instance FromJSON UserSettingsNotification where- parseJSON- = withObject "UserSettingsNotification"- (\ o ->- UserSettingsNotification <$>- (o .:? "moreFromAuthors"))--instance ToJSON UserSettingsNotification where- toJSON UserSettingsNotification{..}- = object- (catMaybes- [("moreFromAuthors" .=) <$> _usnMoreFromAuthors])------- /See:/ 'dictlayerDataDictWordsItemSensesItemSynonymsItem' smart constructor.-data DictlayerDataDictWordsItemSensesItemSynonymsItem = DictlayerDataDictWordsItemSensesItemSynonymsItem- { _dddwisisiText :: !(Maybe Text)- , _dddwisisiSource :: !(Maybe DictlayerDataDictWordsItemSensesItemSynonymsItemSource)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'DictlayerDataDictWordsItemSensesItemSynonymsItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dddwisisiText'------ * 'dddwisisiSource'-dictlayerDataDictWordsItemSensesItemSynonymsItem- :: DictlayerDataDictWordsItemSensesItemSynonymsItem-dictlayerDataDictWordsItemSensesItemSynonymsItem =- DictlayerDataDictWordsItemSensesItemSynonymsItem- { _dddwisisiText = Nothing- , _dddwisisiSource = Nothing- }--dddwisisiText :: Lens' DictlayerDataDictWordsItemSensesItemSynonymsItem (Maybe Text)-dddwisisiText- = lens _dddwisisiText- (\ s a -> s{_dddwisisiText = a})--dddwisisiSource :: Lens' DictlayerDataDictWordsItemSensesItemSynonymsItem (Maybe DictlayerDataDictWordsItemSensesItemSynonymsItemSource)-dddwisisiSource- = lens _dddwisisiSource- (\ s a -> s{_dddwisisiSource = a})--instance FromJSON- DictlayerDataDictWordsItemSensesItemSynonymsItem- where- parseJSON- = withObject- "DictlayerDataDictWordsItemSensesItemSynonymsItem"- (\ o ->- DictlayerDataDictWordsItemSensesItemSynonymsItem <$>- (o .:? "text") <*> (o .:? "source"))--instance ToJSON- DictlayerDataDictWordsItemSensesItemSynonymsItem- where- toJSON- DictlayerDataDictWordsItemSensesItemSynonymsItem{..}- = object- (catMaybes- [("text" .=) <$> _dddwisisiText,- ("source" .=) <$> _dddwisisiSource])------- /See:/ 'geolayerDataGeoViewportLo' smart constructor.-data GeolayerDataGeoViewportLo = GeolayerDataGeoViewportLo- { _gdgvlLatitude :: !(Maybe (Textual Double))- , _gdgvlLongitude :: !(Maybe (Textual Double))- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GeolayerDataGeoViewportLo' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gdgvlLatitude'------ * 'gdgvlLongitude'-geolayerDataGeoViewportLo- :: GeolayerDataGeoViewportLo-geolayerDataGeoViewportLo =- GeolayerDataGeoViewportLo- { _gdgvlLatitude = Nothing- , _gdgvlLongitude = Nothing- }--gdgvlLatitude :: Lens' GeolayerDataGeoViewportLo (Maybe Double)-gdgvlLatitude- = lens _gdgvlLatitude- (\ s a -> s{_gdgvlLatitude = a})- . mapping _Coerce--gdgvlLongitude :: Lens' GeolayerDataGeoViewportLo (Maybe Double)-gdgvlLongitude- = lens _gdgvlLongitude- (\ s a -> s{_gdgvlLongitude = a})- . mapping _Coerce--instance FromJSON GeolayerDataGeoViewportLo where- parseJSON- = withObject "GeolayerDataGeoViewportLo"- (\ o ->- GeolayerDataGeoViewportLo <$>- (o .:? "latitude") <*> (o .:? "longitude"))--instance ToJSON GeolayerDataGeoViewportLo where- toJSON GeolayerDataGeoViewportLo{..}- = object- (catMaybes- [("latitude" .=) <$> _gdgvlLatitude,- ("longitude" .=) <$> _gdgvlLongitude])---- | Offer list (=undiscounted) price in Micros.------ /See:/ 'volumeSaleInfoOffersItemListPrice' smart constructor.-data VolumeSaleInfoOffersItemListPrice = VolumeSaleInfoOffersItemListPrice- { _vsioilpCurrencyCode :: !(Maybe Text)- , _vsioilpAmountInMicros :: !(Maybe (Textual Double))- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'VolumeSaleInfoOffersItemListPrice' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'vsioilpCurrencyCode'------ * 'vsioilpAmountInMicros'-volumeSaleInfoOffersItemListPrice- :: VolumeSaleInfoOffersItemListPrice-volumeSaleInfoOffersItemListPrice =- VolumeSaleInfoOffersItemListPrice- { _vsioilpCurrencyCode = Nothing- , _vsioilpAmountInMicros = Nothing- }--vsioilpCurrencyCode :: Lens' VolumeSaleInfoOffersItemListPrice (Maybe Text)-vsioilpCurrencyCode- = lens _vsioilpCurrencyCode- (\ s a -> s{_vsioilpCurrencyCode = a})--vsioilpAmountInMicros :: Lens' VolumeSaleInfoOffersItemListPrice (Maybe Double)-vsioilpAmountInMicros- = lens _vsioilpAmountInMicros- (\ s a -> s{_vsioilpAmountInMicros = a})- . mapping _Coerce--instance FromJSON VolumeSaleInfoOffersItemListPrice- where- parseJSON- = withObject "VolumeSaleInfoOffersItemListPrice"- (\ o ->- VolumeSaleInfoOffersItemListPrice <$>- (o .:? "currencyCode") <*> (o .:? "amountInMicros"))--instance ToJSON VolumeSaleInfoOffersItemListPrice- where- toJSON VolumeSaleInfoOffersItemListPrice{..}- = object- (catMaybes- [("currencyCode" .=) <$> _vsioilpCurrencyCode,- ("amountInMicros" .=) <$> _vsioilpAmountInMicros])------- /See:/ 'downloadAccessRestriction' smart constructor.-data DownloadAccessRestriction = DownloadAccessRestriction- { _darJustAcquired :: !(Maybe Bool)- , _darSignature :: !(Maybe Text)- , _darKind :: !Text- , _darMaxDownloadDevices :: !(Maybe (Textual Int32))- , _darDownloadsAcquired :: !(Maybe (Textual Int32))- , _darReasonCode :: !(Maybe Text)- , _darVolumeId :: !(Maybe Text)- , _darRestricted :: !(Maybe Bool)- , _darSource :: !(Maybe Text)- , _darDeviceAllowed :: !(Maybe Bool)- , _darMessage :: !(Maybe Text)- , _darNonce :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'DownloadAccessRestriction' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'darJustAcquired'------ * 'darSignature'------ * 'darKind'------ * 'darMaxDownloadDevices'------ * 'darDownloadsAcquired'------ * 'darReasonCode'------ * 'darVolumeId'------ * 'darRestricted'------ * 'darSource'------ * 'darDeviceAllowed'------ * 'darMessage'------ * 'darNonce'-downloadAccessRestriction- :: DownloadAccessRestriction-downloadAccessRestriction =- DownloadAccessRestriction- { _darJustAcquired = Nothing- , _darSignature = Nothing- , _darKind = "books#downloadAccessRestriction"- , _darMaxDownloadDevices = Nothing- , _darDownloadsAcquired = Nothing- , _darReasonCode = Nothing- , _darVolumeId = Nothing- , _darRestricted = Nothing- , _darSource = Nothing- , _darDeviceAllowed = Nothing- , _darMessage = Nothing- , _darNonce = Nothing- }---- | If deviceAllowed, whether access was just acquired with this request.-darJustAcquired :: Lens' DownloadAccessRestriction (Maybe Bool)-darJustAcquired- = lens _darJustAcquired- (\ s a -> s{_darJustAcquired = a})---- | Response signature.-darSignature :: Lens' DownloadAccessRestriction (Maybe Text)-darSignature- = lens _darSignature (\ s a -> s{_darSignature = a})---- | Resource type.-darKind :: Lens' DownloadAccessRestriction Text-darKind = lens _darKind (\ s a -> s{_darKind = a})---- | If restricted, the maximum number of content download licenses for this--- volume.-darMaxDownloadDevices :: Lens' DownloadAccessRestriction (Maybe Int32)-darMaxDownloadDevices- = lens _darMaxDownloadDevices- (\ s a -> s{_darMaxDownloadDevices = a})- . mapping _Coerce---- | If restricted, the number of content download licenses already acquired--- (including the requesting client, if licensed).-darDownloadsAcquired :: Lens' DownloadAccessRestriction (Maybe Int32)-darDownloadsAcquired- = lens _darDownloadsAcquired- (\ s a -> s{_darDownloadsAcquired = a})- . mapping _Coerce---- | Error\/warning reason code. Additional codes may be added in the future.--- 0 OK 100 ACCESS_DENIED_PUBLISHER_LIMIT 101 ACCESS_DENIED_LIMIT 200--- WARNING_USED_LAST_ACCESS-darReasonCode :: Lens' DownloadAccessRestriction (Maybe Text)-darReasonCode- = lens _darReasonCode- (\ s a -> s{_darReasonCode = a})---- | Identifies the volume for which this entry applies.-darVolumeId :: Lens' DownloadAccessRestriction (Maybe Text)-darVolumeId- = lens _darVolumeId (\ s a -> s{_darVolumeId = a})---- | Whether this volume has any download access restrictions.-darRestricted :: Lens' DownloadAccessRestriction (Maybe Bool)-darRestricted- = lens _darRestricted- (\ s a -> s{_darRestricted = a})---- | Client app identifier for verification. Download access and--- client-validation only.-darSource :: Lens' DownloadAccessRestriction (Maybe Text)-darSource- = lens _darSource (\ s a -> s{_darSource = a})---- | If restricted, whether access is granted for this (user, device,--- volume).-darDeviceAllowed :: Lens' DownloadAccessRestriction (Maybe Bool)-darDeviceAllowed- = lens _darDeviceAllowed- (\ s a -> s{_darDeviceAllowed = a})---- | Error\/warning message.-darMessage :: Lens' DownloadAccessRestriction (Maybe Text)-darMessage- = lens _darMessage (\ s a -> s{_darMessage = a})---- | Client nonce for verification. Download access and client-validation--- only.-darNonce :: Lens' DownloadAccessRestriction (Maybe Text)-darNonce = lens _darNonce (\ s a -> s{_darNonce = a})--instance FromJSON DownloadAccessRestriction where- parseJSON- = withObject "DownloadAccessRestriction"- (\ o ->- DownloadAccessRestriction <$>- (o .:? "justAcquired") <*> (o .:? "signature") <*>- (o .:? "kind" .!= "books#downloadAccessRestriction")- <*> (o .:? "maxDownloadDevices")- <*> (o .:? "downloadsAcquired")- <*> (o .:? "reasonCode")- <*> (o .:? "volumeId")- <*> (o .:? "restricted")- <*> (o .:? "source")- <*> (o .:? "deviceAllowed")- <*> (o .:? "message")- <*> (o .:? "nonce"))--instance ToJSON DownloadAccessRestriction where- toJSON DownloadAccessRestriction{..}- = object- (catMaybes- [("justAcquired" .=) <$> _darJustAcquired,- ("signature" .=) <$> _darSignature,- Just ("kind" .= _darKind),- ("maxDownloadDevices" .=) <$> _darMaxDownloadDevices,- ("downloadsAcquired" .=) <$> _darDownloadsAcquired,- ("reasonCode" .=) <$> _darReasonCode,- ("volumeId" .=) <$> _darVolumeId,- ("restricted" .=) <$> _darRestricted,- ("source" .=) <$> _darSource,- ("deviceAllowed" .=) <$> _darDeviceAllowed,- ("message" .=) <$> _darMessage,- ("nonce" .=) <$> _darNonce])------- /See:/ 'dictlayerDataCommon' smart constructor.-newtype DictlayerDataCommon = DictlayerDataCommon- { _ddcTitle :: Maybe Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'DictlayerDataCommon' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'ddcTitle'-dictlayerDataCommon- :: DictlayerDataCommon-dictlayerDataCommon =- DictlayerDataCommon- { _ddcTitle = Nothing- }---- | The display title and localized canonical name to use when searching for--- this entity on Google search.-ddcTitle :: Lens' DictlayerDataCommon (Maybe Text)-ddcTitle = lens _ddcTitle (\ s a -> s{_ddcTitle = a})--instance FromJSON DictlayerDataCommon where- parseJSON- = withObject "DictlayerDataCommon"- (\ o -> DictlayerDataCommon <$> (o .:? "title"))--instance ToJSON DictlayerDataCommon where- toJSON DictlayerDataCommon{..}- = object (catMaybes [("title" .=) <$> _ddcTitle])------- /See:/ 'discoveryclustersClustersItem' smart constructor.-data DiscoveryclustersClustersItem = DiscoveryclustersClustersItem- { _dciBannerWithContentContainer :: !(Maybe DiscoveryclustersClustersItemBanner_with_content_container)- , _dciUid :: !(Maybe Text)- , _dciTotalVolumes :: !(Maybe (Textual Int32))- , _dciSubTitle :: !(Maybe Text)- , _dciTitle :: !(Maybe Text)- , _dciVolumes :: !(Maybe [Volume])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'DiscoveryclustersClustersItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dciBannerWithContentContainer'------ * 'dciUid'------ * 'dciTotalVolumes'------ * 'dciSubTitle'------ * 'dciTitle'------ * 'dciVolumes'-discoveryclustersClustersItem- :: DiscoveryclustersClustersItem-discoveryclustersClustersItem =- DiscoveryclustersClustersItem- { _dciBannerWithContentContainer = Nothing- , _dciUid = Nothing- , _dciTotalVolumes = Nothing- , _dciSubTitle = Nothing- , _dciTitle = Nothing- , _dciVolumes = Nothing- }--dciBannerWithContentContainer :: Lens' DiscoveryclustersClustersItem (Maybe DiscoveryclustersClustersItemBanner_with_content_container)-dciBannerWithContentContainer- = lens _dciBannerWithContentContainer- (\ s a -> s{_dciBannerWithContentContainer = a})--dciUid :: Lens' DiscoveryclustersClustersItem (Maybe Text)-dciUid = lens _dciUid (\ s a -> s{_dciUid = a})--dciTotalVolumes :: Lens' DiscoveryclustersClustersItem (Maybe Int32)-dciTotalVolumes- = lens _dciTotalVolumes- (\ s a -> s{_dciTotalVolumes = a})- . mapping _Coerce--dciSubTitle :: Lens' DiscoveryclustersClustersItem (Maybe Text)-dciSubTitle- = lens _dciSubTitle (\ s a -> s{_dciSubTitle = a})--dciTitle :: Lens' DiscoveryclustersClustersItem (Maybe Text)-dciTitle = lens _dciTitle (\ s a -> s{_dciTitle = a})--dciVolumes :: Lens' DiscoveryclustersClustersItem [Volume]-dciVolumes- = lens _dciVolumes (\ s a -> s{_dciVolumes = a}) .- _Default- . _Coerce--instance FromJSON DiscoveryclustersClustersItem where- parseJSON- = withObject "DiscoveryclustersClustersItem"- (\ o ->- DiscoveryclustersClustersItem <$>- (o .:? "banner_with_content_container") <*>- (o .:? "uid")- <*> (o .:? "totalVolumes")- <*> (o .:? "subTitle")- <*> (o .:? "title")- <*> (o .:? "volumes" .!= mempty))--instance ToJSON DiscoveryclustersClustersItem where- toJSON DiscoveryclustersClustersItem{..}- = object- (catMaybes- [("banner_with_content_container" .=) <$>- _dciBannerWithContentContainer,- ("uid" .=) <$> _dciUid,- ("totalVolumes" .=) <$> _dciTotalVolumes,- ("subTitle" .=) <$> _dciSubTitle,- ("title" .=) <$> _dciTitle,- ("volumes" .=) <$> _dciVolumes])---- | The actual selling price of the book. This is the same as the suggested--- retail or list price unless there are offers or discounts on this--- volume. (In LITE projection.)------ /See:/ 'volumeSaleInfoRetailPrice' smart constructor.-data VolumeSaleInfoRetailPrice = VolumeSaleInfoRetailPrice- { _vsirpAmount :: !(Maybe (Textual Double))- , _vsirpCurrencyCode :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'VolumeSaleInfoRetailPrice' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'vsirpAmount'------ * 'vsirpCurrencyCode'-volumeSaleInfoRetailPrice- :: VolumeSaleInfoRetailPrice-volumeSaleInfoRetailPrice =- VolumeSaleInfoRetailPrice- { _vsirpAmount = Nothing- , _vsirpCurrencyCode = Nothing- }---- | Amount in the currency listed below. (In LITE projection.)-vsirpAmount :: Lens' VolumeSaleInfoRetailPrice (Maybe Double)-vsirpAmount- = lens _vsirpAmount (\ s a -> s{_vsirpAmount = a}) .- mapping _Coerce---- | An ISO 4217, three-letter currency code. (In LITE projection.)-vsirpCurrencyCode :: Lens' VolumeSaleInfoRetailPrice (Maybe Text)-vsirpCurrencyCode- = lens _vsirpCurrencyCode- (\ s a -> s{_vsirpCurrencyCode = a})--instance FromJSON VolumeSaleInfoRetailPrice where- parseJSON- = withObject "VolumeSaleInfoRetailPrice"- (\ o ->- VolumeSaleInfoRetailPrice <$>- (o .:? "amount") <*> (o .:? "currencyCode"))--instance ToJSON VolumeSaleInfoRetailPrice where- toJSON VolumeSaleInfoRetailPrice{..}- = object- (catMaybes- [("amount" .=) <$> _vsirpAmount,- ("currencyCode" .=) <$> _vsirpCurrencyCode])---- | Suggested retail price. (In LITE projection.)------ /See:/ 'volumeSaleInfoListPrice' smart constructor.-data VolumeSaleInfoListPrice = VolumeSaleInfoListPrice- { _vsilpAmount :: !(Maybe (Textual Double))- , _vsilpCurrencyCode :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'VolumeSaleInfoListPrice' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'vsilpAmount'------ * 'vsilpCurrencyCode'-volumeSaleInfoListPrice- :: VolumeSaleInfoListPrice-volumeSaleInfoListPrice =- VolumeSaleInfoListPrice- { _vsilpAmount = Nothing- , _vsilpCurrencyCode = Nothing- }---- | Amount in the currency listed below. (In LITE projection.)-vsilpAmount :: Lens' VolumeSaleInfoListPrice (Maybe Double)-vsilpAmount- = lens _vsilpAmount (\ s a -> s{_vsilpAmount = a}) .- mapping _Coerce---- | An ISO 4217, three-letter currency code. (In LITE projection.)-vsilpCurrencyCode :: Lens' VolumeSaleInfoListPrice (Maybe Text)-vsilpCurrencyCode- = lens _vsilpCurrencyCode- (\ s a -> s{_vsilpCurrencyCode = a})--instance FromJSON VolumeSaleInfoListPrice where- parseJSON- = withObject "VolumeSaleInfoListPrice"- (\ o ->- VolumeSaleInfoListPrice <$>- (o .:? "amount") <*> (o .:? "currencyCode"))--instance ToJSON VolumeSaleInfoListPrice where- toJSON VolumeSaleInfoListPrice{..}- = object- (catMaybes- [("amount" .=) <$> _vsilpAmount,- ("currencyCode" .=) <$> _vsilpCurrencyCode])------- /See:/ 'dictlayerDataDictWordsItemSensesItemConjugationsItem' smart constructor.-data DictlayerDataDictWordsItemSensesItemConjugationsItem = DictlayerDataDictWordsItemSensesItemConjugationsItem- { _dddwisiciValue :: !(Maybe Text)- , _dddwisiciType :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'DictlayerDataDictWordsItemSensesItemConjugationsItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dddwisiciValue'------ * 'dddwisiciType'-dictlayerDataDictWordsItemSensesItemConjugationsItem- :: DictlayerDataDictWordsItemSensesItemConjugationsItem-dictlayerDataDictWordsItemSensesItemConjugationsItem =- DictlayerDataDictWordsItemSensesItemConjugationsItem- { _dddwisiciValue = Nothing- , _dddwisiciType = Nothing- }--dddwisiciValue :: Lens' DictlayerDataDictWordsItemSensesItemConjugationsItem (Maybe Text)-dddwisiciValue- = lens _dddwisiciValue- (\ s a -> s{_dddwisiciValue = a})--dddwisiciType :: Lens' DictlayerDataDictWordsItemSensesItemConjugationsItem (Maybe Text)-dddwisiciType- = lens _dddwisiciType- (\ s a -> s{_dddwisiciType = a})--instance FromJSON- DictlayerDataDictWordsItemSensesItemConjugationsItem- where- parseJSON- = withObject- "DictlayerDataDictWordsItemSensesItemConjugationsItem"- (\ o ->- DictlayerDataDictWordsItemSensesItemConjugationsItem- <$> (o .:? "value") <*> (o .:? "type"))--instance ToJSON- DictlayerDataDictWordsItemSensesItemConjugationsItem- where- toJSON- DictlayerDataDictWordsItemSensesItemConjugationsItem{..}- = object- (catMaybes- [("value" .=) <$> _dddwisiciValue,- ("type" .=) <$> _dddwisiciType])------- /See:/ 'volume2' smart constructor.-data Volume2 = Volume2- { _voloNextPageToken :: !(Maybe Text)- , _voloKind :: !Text- , _voloItems :: !(Maybe [Volume])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Volume2' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'voloNextPageToken'------ * 'voloKind'------ * 'voloItems'-volume2- :: Volume2-volume2 =- Volume2- { _voloNextPageToken = Nothing- , _voloKind = "onboarding#volume"- , _voloItems = Nothing- }--voloNextPageToken :: Lens' Volume2 (Maybe Text)-voloNextPageToken- = lens _voloNextPageToken- (\ s a -> s{_voloNextPageToken = a})---- | Resource type.-voloKind :: Lens' Volume2 Text-voloKind = lens _voloKind (\ s a -> s{_voloKind = a})---- | A list of volumes.-voloItems :: Lens' Volume2 [Volume]-voloItems- = lens _voloItems (\ s a -> s{_voloItems = a}) .- _Default- . _Coerce--instance FromJSON Volume2 where- parseJSON- = withObject "Volume2"- (\ o ->- Volume2 <$>- (o .:? "nextPageToken") <*>- (o .:? "kind" .!= "onboarding#volume")- <*> (o .:? "items" .!= mempty))--instance ToJSON Volume2 where- toJSON Volume2{..}- = object- (catMaybes- [("nextPageToken" .=) <$> _voloNextPageToken,- Just ("kind" .= _voloKind),- ("items" .=) <$> _voloItems])------- /See:/ 'review' smart constructor.-data Review = Review- { _rRating :: !(Maybe Text)- , _rKind :: !Text- , _rContent :: !(Maybe Text)- , _rDate :: !(Maybe Text)- , _rVolumeId :: !(Maybe Text)- , _rAuthor :: !(Maybe ReviewAuthor)- , _rSource :: !(Maybe ReviewSource)- , _rFullTextURL :: !(Maybe Text)- , _rTitle :: !(Maybe Text)- , _rType :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Review' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rRating'------ * 'rKind'------ * 'rContent'------ * 'rDate'------ * 'rVolumeId'------ * 'rAuthor'------ * 'rSource'------ * 'rFullTextURL'------ * 'rTitle'------ * 'rType'-review- :: Review-review =- Review- { _rRating = Nothing- , _rKind = "books#review"- , _rContent = Nothing- , _rDate = Nothing- , _rVolumeId = Nothing- , _rAuthor = Nothing- , _rSource = Nothing- , _rFullTextURL = Nothing- , _rTitle = Nothing- , _rType = Nothing- }---- | Star rating for this review. Possible values are ONE, TWO, THREE, FOUR,--- FIVE or NOT_RATED.-rRating :: Lens' Review (Maybe Text)-rRating = lens _rRating (\ s a -> s{_rRating = a})---- | Resource type for a review.-rKind :: Lens' Review Text-rKind = lens _rKind (\ s a -> s{_rKind = a})---- | Review text.-rContent :: Lens' Review (Maybe Text)-rContent = lens _rContent (\ s a -> s{_rContent = a})---- | Date of this review.-rDate :: Lens' Review (Maybe Text)-rDate = lens _rDate (\ s a -> s{_rDate = a})---- | Volume that this review is for.-rVolumeId :: Lens' Review (Maybe Text)-rVolumeId- = lens _rVolumeId (\ s a -> s{_rVolumeId = a})---- | Author of this review.-rAuthor :: Lens' Review (Maybe ReviewAuthor)-rAuthor = lens _rAuthor (\ s a -> s{_rAuthor = a})---- | Information regarding the source of this review, when the review is not--- from a Google Books user.-rSource :: Lens' Review (Maybe ReviewSource)-rSource = lens _rSource (\ s a -> s{_rSource = a})---- | URL for the full review text, for reviews gathered from the web.-rFullTextURL :: Lens' Review (Maybe Text)-rFullTextURL- = lens _rFullTextURL (\ s a -> s{_rFullTextURL = a})---- | Title for this review.-rTitle :: Lens' Review (Maybe Text)-rTitle = lens _rTitle (\ s a -> s{_rTitle = a})---- | Source type for this review. Possible values are EDITORIAL, WEB_USER or--- GOOGLE_USER.-rType :: Lens' Review (Maybe Text)-rType = lens _rType (\ s a -> s{_rType = a})--instance FromJSON Review where- parseJSON- = withObject "Review"- (\ o ->- Review <$>- (o .:? "rating") <*>- (o .:? "kind" .!= "books#review")- <*> (o .:? "content")- <*> (o .:? "date")- <*> (o .:? "volumeId")- <*> (o .:? "author")- <*> (o .:? "source")- <*> (o .:? "fullTextUrl")- <*> (o .:? "title")- <*> (o .:? "type"))--instance ToJSON Review where- toJSON Review{..}- = object- (catMaybes- [("rating" .=) <$> _rRating, Just ("kind" .= _rKind),- ("content" .=) <$> _rContent, ("date" .=) <$> _rDate,- ("volumeId" .=) <$> _rVolumeId,- ("author" .=) <$> _rAuthor,- ("source" .=) <$> _rSource,- ("fullTextUrl" .=) <$> _rFullTextURL,- ("title" .=) <$> _rTitle, ("type" .=) <$> _rType])---- | Period during this book is\/was a valid rental.------ /See:/ 'volumeUserInfoRentalPeriod' smart constructor.-data VolumeUserInfoRentalPeriod = VolumeUserInfoRentalPeriod- { _vuirpEndUtcSec :: !(Maybe (Textual Int64))- , _vuirpStartUtcSec :: !(Maybe (Textual Int64))- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'VolumeUserInfoRentalPeriod' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'vuirpEndUtcSec'------ * 'vuirpStartUtcSec'-volumeUserInfoRentalPeriod- :: VolumeUserInfoRentalPeriod-volumeUserInfoRentalPeriod =- VolumeUserInfoRentalPeriod- { _vuirpEndUtcSec = Nothing- , _vuirpStartUtcSec = Nothing- }--vuirpEndUtcSec :: Lens' VolumeUserInfoRentalPeriod (Maybe Int64)-vuirpEndUtcSec- = lens _vuirpEndUtcSec- (\ s a -> s{_vuirpEndUtcSec = a})- . mapping _Coerce--vuirpStartUtcSec :: Lens' VolumeUserInfoRentalPeriod (Maybe Int64)-vuirpStartUtcSec- = lens _vuirpStartUtcSec- (\ s a -> s{_vuirpStartUtcSec = a})- . mapping _Coerce--instance FromJSON VolumeUserInfoRentalPeriod where- parseJSON- = withObject "VolumeUserInfoRentalPeriod"- (\ o ->- VolumeUserInfoRentalPeriod <$>- (o .:? "endUtcSec") <*> (o .:? "startUtcSec"))--instance ToJSON VolumeUserInfoRentalPeriod where- toJSON VolumeUserInfoRentalPeriod{..}- = object- (catMaybes- [("endUtcSec" .=) <$> _vuirpEndUtcSec,- ("startUtcSec" .=) <$> _vuirpStartUtcSec])---- | Any information about a volume related to the eBookstore and\/or--- purchaseability. This information can depend on the country where the--- request originates from (i.e. books may not be for sale in certain--- countries).------ /See:/ 'volumeSaleInfo' smart constructor.-data VolumeSaleInfo = VolumeSaleInfo- { _vsiCountry :: !(Maybe Text)- , _vsiOnSaleDate :: !(Maybe DateTime')- , _vsiListPrice :: !(Maybe VolumeSaleInfoListPrice)- , _vsiRetailPrice :: !(Maybe VolumeSaleInfoRetailPrice)- , _vsiOffers :: !(Maybe [VolumeSaleInfoOffersItem])- , _vsiBuyLink :: !(Maybe Text)- , _vsiIsEbook :: !(Maybe Bool)- , _vsiSaleability :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'VolumeSaleInfo' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'vsiCountry'------ * 'vsiOnSaleDate'------ * 'vsiListPrice'------ * 'vsiRetailPrice'------ * 'vsiOffers'------ * 'vsiBuyLink'------ * 'vsiIsEbook'------ * 'vsiSaleability'-volumeSaleInfo- :: VolumeSaleInfo-volumeSaleInfo =- VolumeSaleInfo- { _vsiCountry = Nothing- , _vsiOnSaleDate = Nothing- , _vsiListPrice = Nothing- , _vsiRetailPrice = Nothing- , _vsiOffers = Nothing- , _vsiBuyLink = Nothing- , _vsiIsEbook = Nothing- , _vsiSaleability = Nothing- }---- | The two-letter ISO_3166-1 country code for which this sale information--- is valid. (In LITE projection.)-vsiCountry :: Lens' VolumeSaleInfo (Maybe Text)-vsiCountry- = lens _vsiCountry (\ s a -> s{_vsiCountry = a})---- | The date on which this book is available for sale.-vsiOnSaleDate :: Lens' VolumeSaleInfo (Maybe UTCTime)-vsiOnSaleDate- = lens _vsiOnSaleDate- (\ s a -> s{_vsiOnSaleDate = a})- . mapping _DateTime---- | Suggested retail price. (In LITE projection.)-vsiListPrice :: Lens' VolumeSaleInfo (Maybe VolumeSaleInfoListPrice)-vsiListPrice- = lens _vsiListPrice (\ s a -> s{_vsiListPrice = a})---- | The actual selling price of the book. This is the same as the suggested--- retail or list price unless there are offers or discounts on this--- volume. (In LITE projection.)-vsiRetailPrice :: Lens' VolumeSaleInfo (Maybe VolumeSaleInfoRetailPrice)-vsiRetailPrice- = lens _vsiRetailPrice- (\ s a -> s{_vsiRetailPrice = a})---- | Offers available for this volume (sales and rentals).-vsiOffers :: Lens' VolumeSaleInfo [VolumeSaleInfoOffersItem]-vsiOffers- = lens _vsiOffers (\ s a -> s{_vsiOffers = a}) .- _Default- . _Coerce---- | URL to purchase this volume on the Google Books site. (In LITE--- projection)-vsiBuyLink :: Lens' VolumeSaleInfo (Maybe Text)-vsiBuyLink- = lens _vsiBuyLink (\ s a -> s{_vsiBuyLink = a})---- | Whether or not this volume is an eBook (can be added to the My eBooks--- shelf).-vsiIsEbook :: Lens' VolumeSaleInfo (Maybe Bool)-vsiIsEbook- = lens _vsiIsEbook (\ s a -> s{_vsiIsEbook = a})---- | Whether or not this book is available for sale or offered for free in--- the Google eBookstore for the country listed above. Possible values are--- FOR_SALE, FOR_RENTAL_ONLY, FOR_SALE_AND_RENTAL, FREE, NOT_FOR_SALE, or--- FOR_PREORDER.-vsiSaleability :: Lens' VolumeSaleInfo (Maybe Text)-vsiSaleability- = lens _vsiSaleability- (\ s a -> s{_vsiSaleability = a})--instance FromJSON VolumeSaleInfo where- parseJSON- = withObject "VolumeSaleInfo"- (\ o ->- VolumeSaleInfo <$>- (o .:? "country") <*> (o .:? "onSaleDate") <*>- (o .:? "listPrice")- <*> (o .:? "retailPrice")- <*> (o .:? "offers" .!= mempty)- <*> (o .:? "buyLink")- <*> (o .:? "isEbook")- <*> (o .:? "saleability"))--instance ToJSON VolumeSaleInfo where- toJSON VolumeSaleInfo{..}- = object- (catMaybes- [("country" .=) <$> _vsiCountry,- ("onSaleDate" .=) <$> _vsiOnSaleDate,- ("listPrice" .=) <$> _vsiListPrice,- ("retailPrice" .=) <$> _vsiRetailPrice,- ("offers" .=) <$> _vsiOffers,- ("buyLink" .=) <$> _vsiBuyLink,- ("isEbook" .=) <$> _vsiIsEbook,- ("saleability" .=) <$> _vsiSaleability])------- /See:/ 'metadata' smart constructor.-data Metadata = Metadata- { _mKind :: !Text- , _mItems :: !(Maybe [MetadataItemsItem])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Metadata' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'mKind'------ * 'mItems'-metadata- :: Metadata-metadata =- Metadata- { _mKind = "dictionary#metadata"- , _mItems = Nothing- }---- | Resource type.-mKind :: Lens' Metadata Text-mKind = lens _mKind (\ s a -> s{_mKind = a})---- | A list of offline dictionary metadata.-mItems :: Lens' Metadata [MetadataItemsItem]-mItems- = lens _mItems (\ s a -> s{_mItems = a}) . _Default .- _Coerce--instance FromJSON Metadata where- parseJSON- = withObject "Metadata"- (\ o ->- Metadata <$>- (o .:? "kind" .!= "dictionary#metadata") <*>- (o .:? "items" .!= mempty))--instance ToJSON Metadata where- toJSON Metadata{..}- = object- (catMaybes- [Just ("kind" .= _mKind), ("items" .=) <$> _mItems])---- | What layers exist in this volume and high level information about them.------ /See:/ 'volumeLayerInfo' smart constructor.-newtype VolumeLayerInfo = VolumeLayerInfo- { _vliLayers :: Maybe [VolumeLayerInfoLayersItem]- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'VolumeLayerInfo' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'vliLayers'-volumeLayerInfo- :: VolumeLayerInfo-volumeLayerInfo =- VolumeLayerInfo- { _vliLayers = Nothing- }---- | A layer should appear here if and only if the layer exists for this--- book.-vliLayers :: Lens' VolumeLayerInfo [VolumeLayerInfoLayersItem]-vliLayers- = lens _vliLayers (\ s a -> s{_vliLayers = a}) .- _Default- . _Coerce--instance FromJSON VolumeLayerInfo where- parseJSON- = withObject "VolumeLayerInfo"- (\ o ->- VolumeLayerInfo <$> (o .:? "layers" .!= mempty))--instance ToJSON VolumeLayerInfo where- toJSON VolumeLayerInfo{..}- = object (catMaybes [("layers" .=) <$> _vliLayers])---- | Physical dimensions of this volume.------ /See:/ 'volumeVolumeInfoDimensions' smart constructor.-data VolumeVolumeInfoDimensions = VolumeVolumeInfoDimensions- { _vvidHeight :: !(Maybe Text)- , _vvidWidth :: !(Maybe Text)- , _vvidThickness :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'VolumeVolumeInfoDimensions' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'vvidHeight'------ * 'vvidWidth'------ * 'vvidThickness'-volumeVolumeInfoDimensions- :: VolumeVolumeInfoDimensions-volumeVolumeInfoDimensions =- VolumeVolumeInfoDimensions- { _vvidHeight = Nothing- , _vvidWidth = Nothing- , _vvidThickness = Nothing- }---- | Height or length of this volume (in cm).-vvidHeight :: Lens' VolumeVolumeInfoDimensions (Maybe Text)-vvidHeight- = lens _vvidHeight (\ s a -> s{_vvidHeight = a})---- | Width of this volume (in cm).-vvidWidth :: Lens' VolumeVolumeInfoDimensions (Maybe Text)-vvidWidth- = lens _vvidWidth (\ s a -> s{_vvidWidth = a})---- | Thickness of this volume (in cm).-vvidThickness :: Lens' VolumeVolumeInfoDimensions (Maybe Text)-vvidThickness- = lens _vvidThickness- (\ s a -> s{_vvidThickness = a})--instance FromJSON VolumeVolumeInfoDimensions where- parseJSON- = withObject "VolumeVolumeInfoDimensions"- (\ o ->- VolumeVolumeInfoDimensions <$>- (o .:? "height") <*> (o .:? "width") <*>- (o .:? "thickness"))--instance ToJSON VolumeVolumeInfoDimensions where- toJSON VolumeVolumeInfoDimensions{..}- = object- (catMaybes- [("height" .=) <$> _vvidHeight,- ("width" .=) <$> _vvidWidth,- ("thickness" .=) <$> _vvidThickness])------- /See:/ 'requestAccess' smart constructor.-data RequestAccess = RequestAccess- { _raConcurrentAccess :: !(Maybe ConcurrentAccessRestriction)- , _raKind :: !Text- , _raDownloadAccess :: !(Maybe DownloadAccessRestriction)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'RequestAccess' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'raConcurrentAccess'------ * 'raKind'------ * 'raDownloadAccess'-requestAccess- :: RequestAccess-requestAccess =- RequestAccess- { _raConcurrentAccess = Nothing- , _raKind = "books#requestAccess"- , _raDownloadAccess = Nothing- }---- | A concurrent access response.-raConcurrentAccess :: Lens' RequestAccess (Maybe ConcurrentAccessRestriction)-raConcurrentAccess- = lens _raConcurrentAccess- (\ s a -> s{_raConcurrentAccess = a})---- | Resource type.-raKind :: Lens' RequestAccess Text-raKind = lens _raKind (\ s a -> s{_raKind = a})---- | A download access response.-raDownloadAccess :: Lens' RequestAccess (Maybe DownloadAccessRestriction)-raDownloadAccess- = lens _raDownloadAccess- (\ s a -> s{_raDownloadAccess = a})--instance FromJSON RequestAccess where- parseJSON- = withObject "RequestAccess"- (\ o ->- RequestAccess <$>- (o .:? "concurrentAccess") <*>- (o .:? "kind" .!= "books#requestAccess")- <*> (o .:? "downloadAccess"))--instance ToJSON RequestAccess where- toJSON RequestAccess{..}- = object- (catMaybes- [("concurrentAccess" .=) <$> _raConcurrentAccess,- Just ("kind" .= _raKind),- ("downloadAccess" .=) <$> _raDownloadAccess])---- | Selection ranges sent from the client.------ /See:/ 'annotationClientVersionRanges' smart constructor.-data AnnotationClientVersionRanges = AnnotationClientVersionRanges- { _acvrGbImageRange :: !(Maybe BooksAnnotationsRange)- , _acvrContentVersion :: !(Maybe Text)- , _acvrImageCfiRange :: !(Maybe BooksAnnotationsRange)- , _acvrGbTextRange :: !(Maybe BooksAnnotationsRange)- , _acvrCfiRange :: !(Maybe BooksAnnotationsRange)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'AnnotationClientVersionRanges' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'acvrGbImageRange'------ * 'acvrContentVersion'------ * 'acvrImageCfiRange'------ * 'acvrGbTextRange'------ * 'acvrCfiRange'-annotationClientVersionRanges- :: AnnotationClientVersionRanges-annotationClientVersionRanges =- AnnotationClientVersionRanges- { _acvrGbImageRange = Nothing- , _acvrContentVersion = Nothing- , _acvrImageCfiRange = Nothing- , _acvrGbTextRange = Nothing- , _acvrCfiRange = Nothing- }---- | Range in GB image format for this annotation sent by client.-acvrGbImageRange :: Lens' AnnotationClientVersionRanges (Maybe BooksAnnotationsRange)-acvrGbImageRange- = lens _acvrGbImageRange- (\ s a -> s{_acvrGbImageRange = a})---- | Content version the client sent in.-acvrContentVersion :: Lens' AnnotationClientVersionRanges (Maybe Text)-acvrContentVersion- = lens _acvrContentVersion- (\ s a -> s{_acvrContentVersion = a})---- | Range in image CFI format for this annotation sent by client.-acvrImageCfiRange :: Lens' AnnotationClientVersionRanges (Maybe BooksAnnotationsRange)-acvrImageCfiRange- = lens _acvrImageCfiRange- (\ s a -> s{_acvrImageCfiRange = a})---- | Range in GB text format for this annotation sent by client.-acvrGbTextRange :: Lens' AnnotationClientVersionRanges (Maybe BooksAnnotationsRange)-acvrGbTextRange- = lens _acvrGbTextRange- (\ s a -> s{_acvrGbTextRange = a})---- | Range in CFI format for this annotation sent by client.-acvrCfiRange :: Lens' AnnotationClientVersionRanges (Maybe BooksAnnotationsRange)-acvrCfiRange- = lens _acvrCfiRange (\ s a -> s{_acvrCfiRange = a})--instance FromJSON AnnotationClientVersionRanges where- parseJSON- = withObject "AnnotationClientVersionRanges"- (\ o ->- AnnotationClientVersionRanges <$>- (o .:? "gbImageRange") <*> (o .:? "contentVersion")- <*> (o .:? "imageCfiRange")- <*> (o .:? "gbTextRange")- <*> (o .:? "cfiRange"))--instance ToJSON AnnotationClientVersionRanges where- toJSON AnnotationClientVersionRanges{..}- = object- (catMaybes- [("gbImageRange" .=) <$> _acvrGbImageRange,- ("contentVersion" .=) <$> _acvrContentVersion,- ("imageCfiRange" .=) <$> _acvrImageCfiRange,- ("gbTextRange" .=) <$> _acvrGbTextRange,- ("cfiRange" .=) <$> _acvrCfiRange])------- /See:/ 'dictlayerDataDictWordsItemSensesItemDefinitionsItem' smart constructor.-data DictlayerDataDictWordsItemSensesItemDefinitionsItem = DictlayerDataDictWordsItemSensesItemDefinitionsItem- { _dddwisidiDefinition :: !(Maybe Text)- , _dddwisidiExamples :: !(Maybe [DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItem])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'DictlayerDataDictWordsItemSensesItemDefinitionsItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dddwisidiDefinition'------ * 'dddwisidiExamples'-dictlayerDataDictWordsItemSensesItemDefinitionsItem- :: DictlayerDataDictWordsItemSensesItemDefinitionsItem-dictlayerDataDictWordsItemSensesItemDefinitionsItem =- DictlayerDataDictWordsItemSensesItemDefinitionsItem- { _dddwisidiDefinition = Nothing- , _dddwisidiExamples = Nothing- }--dddwisidiDefinition :: Lens' DictlayerDataDictWordsItemSensesItemDefinitionsItem (Maybe Text)-dddwisidiDefinition- = lens _dddwisidiDefinition- (\ s a -> s{_dddwisidiDefinition = a})--dddwisidiExamples :: Lens' DictlayerDataDictWordsItemSensesItemDefinitionsItem [DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItem]-dddwisidiExamples- = lens _dddwisidiExamples- (\ s a -> s{_dddwisidiExamples = a})- . _Default- . _Coerce--instance FromJSON- DictlayerDataDictWordsItemSensesItemDefinitionsItem- where- parseJSON- = withObject- "DictlayerDataDictWordsItemSensesItemDefinitionsItem"- (\ o ->- DictlayerDataDictWordsItemSensesItemDefinitionsItem- <$>- (o .:? "definition") <*>- (o .:? "examples" .!= mempty))--instance ToJSON- DictlayerDataDictWordsItemSensesItemDefinitionsItem- where- toJSON- DictlayerDataDictWordsItemSensesItemDefinitionsItem{..}- = object- (catMaybes- [("definition" .=) <$> _dddwisidiDefinition,- ("examples" .=) <$> _dddwisidiExamples])------- /See:/ 'volumeLayerInfoLayersItem' smart constructor.-data VolumeLayerInfoLayersItem = VolumeLayerInfoLayersItem- { _vliliVolumeAnnotationsVersion :: !(Maybe Text)- , _vliliLayerId :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'VolumeLayerInfoLayersItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'vliliVolumeAnnotationsVersion'------ * 'vliliLayerId'-volumeLayerInfoLayersItem- :: VolumeLayerInfoLayersItem-volumeLayerInfoLayersItem =- VolumeLayerInfoLayersItem- { _vliliVolumeAnnotationsVersion = Nothing- , _vliliLayerId = Nothing- }---- | The current version of this layer\'s volume annotations. Note that this--- version applies only to the data in the books.layers.volumeAnnotations.*--- responses. The actual annotation data is versioned separately.-vliliVolumeAnnotationsVersion :: Lens' VolumeLayerInfoLayersItem (Maybe Text)-vliliVolumeAnnotationsVersion- = lens _vliliVolumeAnnotationsVersion- (\ s a -> s{_vliliVolumeAnnotationsVersion = a})---- | The layer id of this layer (e.g. \"geo\").-vliliLayerId :: Lens' VolumeLayerInfoLayersItem (Maybe Text)-vliliLayerId- = lens _vliliLayerId (\ s a -> s{_vliliLayerId = a})--instance FromJSON VolumeLayerInfoLayersItem where- parseJSON- = withObject "VolumeLayerInfoLayersItem"- (\ o ->- VolumeLayerInfoLayersItem <$>- (o .:? "volumeAnnotationsVersion") <*>- (o .:? "layerId"))--instance ToJSON VolumeLayerInfoLayersItem where- toJSON VolumeLayerInfoLayersItem{..}- = object- (catMaybes- [("volumeAnnotationsVersion" .=) <$>- _vliliVolumeAnnotationsVersion,- ("layerId" .=) <$> _vliliLayerId])---- | Selection ranges for the most recent content version.------ /See:/ 'annotationCurrentVersionRanges' smart constructor.-data AnnotationCurrentVersionRanges = AnnotationCurrentVersionRanges- { _aGbImageRange :: !(Maybe BooksAnnotationsRange)- , _aContentVersion :: !(Maybe Text)- , _aImageCfiRange :: !(Maybe BooksAnnotationsRange)- , _aGbTextRange :: !(Maybe BooksAnnotationsRange)- , _aCfiRange :: !(Maybe BooksAnnotationsRange)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'AnnotationCurrentVersionRanges' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'aGbImageRange'------ * 'aContentVersion'------ * 'aImageCfiRange'------ * 'aGbTextRange'------ * 'aCfiRange'-annotationCurrentVersionRanges- :: AnnotationCurrentVersionRanges-annotationCurrentVersionRanges =- AnnotationCurrentVersionRanges- { _aGbImageRange = Nothing- , _aContentVersion = Nothing- , _aImageCfiRange = Nothing- , _aGbTextRange = Nothing- , _aCfiRange = Nothing- }---- | Range in GB image format for this annotation for version above.-aGbImageRange :: Lens' AnnotationCurrentVersionRanges (Maybe BooksAnnotationsRange)-aGbImageRange- = lens _aGbImageRange- (\ s a -> s{_aGbImageRange = a})---- | Content version applicable to ranges below.-aContentVersion :: Lens' AnnotationCurrentVersionRanges (Maybe Text)-aContentVersion- = lens _aContentVersion- (\ s a -> s{_aContentVersion = a})---- | Range in image CFI format for this annotation for version above.-aImageCfiRange :: Lens' AnnotationCurrentVersionRanges (Maybe BooksAnnotationsRange)-aImageCfiRange- = lens _aImageCfiRange- (\ s a -> s{_aImageCfiRange = a})---- | Range in GB text format for this annotation for version above.-aGbTextRange :: Lens' AnnotationCurrentVersionRanges (Maybe BooksAnnotationsRange)-aGbTextRange- = lens _aGbTextRange (\ s a -> s{_aGbTextRange = a})---- | Range in CFI format for this annotation for version above.-aCfiRange :: Lens' AnnotationCurrentVersionRanges (Maybe BooksAnnotationsRange)-aCfiRange- = lens _aCfiRange (\ s a -> s{_aCfiRange = a})--instance FromJSON AnnotationCurrentVersionRanges- where- parseJSON- = withObject "AnnotationCurrentVersionRanges"- (\ o ->- AnnotationCurrentVersionRanges <$>- (o .:? "gbImageRange") <*> (o .:? "contentVersion")- <*> (o .:? "imageCfiRange")- <*> (o .:? "gbTextRange")- <*> (o .:? "cfiRange"))--instance ToJSON AnnotationCurrentVersionRanges where- toJSON AnnotationCurrentVersionRanges{..}- = object- (catMaybes- [("gbImageRange" .=) <$> _aGbImageRange,- ("contentVersion" .=) <$> _aContentVersion,- ("imageCfiRange" .=) <$> _aImageCfiRange,- ("gbTextRange" .=) <$> _aGbTextRange,- ("cfiRange" .=) <$> _aCfiRange])---- | Information about pdf content. (In LITE projection.)------ /See:/ 'volumeAccessInfoPdf' smart constructor.-data VolumeAccessInfoPdf = VolumeAccessInfoPdf- { _vaipAcsTokenLink :: !(Maybe Text)- , _vaipIsAvailable :: !(Maybe Bool)- , _vaipDownloadLink :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'VolumeAccessInfoPdf' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'vaipAcsTokenLink'------ * 'vaipIsAvailable'------ * 'vaipDownloadLink'-volumeAccessInfoPdf- :: VolumeAccessInfoPdf-volumeAccessInfoPdf =- VolumeAccessInfoPdf- { _vaipAcsTokenLink = Nothing- , _vaipIsAvailable = Nothing- , _vaipDownloadLink = Nothing- }---- | URL to retrieve ACS token for pdf download. (In LITE projection.)-vaipAcsTokenLink :: Lens' VolumeAccessInfoPdf (Maybe Text)-vaipAcsTokenLink- = lens _vaipAcsTokenLink- (\ s a -> s{_vaipAcsTokenLink = a})---- | Is a scanned image pdf available either as public domain or for--- purchase. (In LITE projection.)-vaipIsAvailable :: Lens' VolumeAccessInfoPdf (Maybe Bool)-vaipIsAvailable- = lens _vaipIsAvailable- (\ s a -> s{_vaipIsAvailable = a})---- | URL to download pdf. (In LITE projection.)-vaipDownloadLink :: Lens' VolumeAccessInfoPdf (Maybe Text)-vaipDownloadLink- = lens _vaipDownloadLink- (\ s a -> s{_vaipDownloadLink = a})--instance FromJSON VolumeAccessInfoPdf where- parseJSON- = withObject "VolumeAccessInfoPdf"- (\ o ->- VolumeAccessInfoPdf <$>- (o .:? "acsTokenLink") <*> (o .:? "isAvailable") <*>- (o .:? "downloadLink"))--instance ToJSON VolumeAccessInfoPdf where- toJSON VolumeAccessInfoPdf{..}- = object- (catMaybes- [("acsTokenLink" .=) <$> _vaipAcsTokenLink,- ("isAvailable" .=) <$> _vaipIsAvailable,- ("downloadLink" .=) <$> _vaipDownloadLink])------- /See:/ 'dictlayerDataDictWordsItemExamplesItemSource' smart constructor.-data DictlayerDataDictWordsItemExamplesItemSource = DictlayerDataDictWordsItemExamplesItemSource- { _dddwieisURL :: !(Maybe Text)- , _dddwieisAttribution :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'DictlayerDataDictWordsItemExamplesItemSource' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dddwieisURL'------ * 'dddwieisAttribution'-dictlayerDataDictWordsItemExamplesItemSource- :: DictlayerDataDictWordsItemExamplesItemSource-dictlayerDataDictWordsItemExamplesItemSource =- DictlayerDataDictWordsItemExamplesItemSource- { _dddwieisURL = Nothing- , _dddwieisAttribution = Nothing- }--dddwieisURL :: Lens' DictlayerDataDictWordsItemExamplesItemSource (Maybe Text)-dddwieisURL- = lens _dddwieisURL (\ s a -> s{_dddwieisURL = a})--dddwieisAttribution :: Lens' DictlayerDataDictWordsItemExamplesItemSource (Maybe Text)-dddwieisAttribution- = lens _dddwieisAttribution- (\ s a -> s{_dddwieisAttribution = a})--instance FromJSON- DictlayerDataDictWordsItemExamplesItemSource where- parseJSON- = withObject- "DictlayerDataDictWordsItemExamplesItemSource"- (\ o ->- DictlayerDataDictWordsItemExamplesItemSource <$>- (o .:? "url") <*> (o .:? "attribution"))--instance ToJSON- DictlayerDataDictWordsItemExamplesItemSource where- toJSON- DictlayerDataDictWordsItemExamplesItemSource{..}- = object- (catMaybes- [("url" .=) <$> _dddwieisURL,- ("attribution" .=) <$> _dddwieisAttribution])---- | Information about epub content. (In LITE projection.)------ /See:/ 'volumeAccessInfoEpub' smart constructor.-data VolumeAccessInfoEpub = VolumeAccessInfoEpub- { _vaieAcsTokenLink :: !(Maybe Text)- , _vaieIsAvailable :: !(Maybe Bool)- , _vaieDownloadLink :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'VolumeAccessInfoEpub' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'vaieAcsTokenLink'------ * 'vaieIsAvailable'------ * 'vaieDownloadLink'-volumeAccessInfoEpub- :: VolumeAccessInfoEpub-volumeAccessInfoEpub =- VolumeAccessInfoEpub- { _vaieAcsTokenLink = Nothing- , _vaieIsAvailable = Nothing- , _vaieDownloadLink = Nothing- }---- | URL to retrieve ACS token for epub download. (In LITE projection.)-vaieAcsTokenLink :: Lens' VolumeAccessInfoEpub (Maybe Text)-vaieAcsTokenLink- = lens _vaieAcsTokenLink- (\ s a -> s{_vaieAcsTokenLink = a})---- | Is a flowing text epub available either as public domain or for--- purchase. (In LITE projection.)-vaieIsAvailable :: Lens' VolumeAccessInfoEpub (Maybe Bool)-vaieIsAvailable- = lens _vaieIsAvailable- (\ s a -> s{_vaieIsAvailable = a})---- | URL to download epub. (In LITE projection.)-vaieDownloadLink :: Lens' VolumeAccessInfoEpub (Maybe Text)-vaieDownloadLink- = lens _vaieDownloadLink- (\ s a -> s{_vaieDownloadLink = a})--instance FromJSON VolumeAccessInfoEpub where- parseJSON- = withObject "VolumeAccessInfoEpub"- (\ o ->- VolumeAccessInfoEpub <$>- (o .:? "acsTokenLink") <*> (o .:? "isAvailable") <*>- (o .:? "downloadLink"))--instance ToJSON VolumeAccessInfoEpub where- toJSON VolumeAccessInfoEpub{..}- = object- (catMaybes- [("acsTokenLink" .=) <$> _vaieAcsTokenLink,- ("isAvailable" .=) <$> _vaieIsAvailable,- ("downloadLink" .=) <$> _vaieDownloadLink])------- /See:/ 'readingPosition' smart constructor.-data ReadingPosition = ReadingPosition- { _rpEpubCfiPosition :: !(Maybe Text)- , _rpKind :: !Text- , _rpGbImagePosition :: !(Maybe Text)- , _rpPdfPosition :: !(Maybe Text)- , _rpVolumeId :: !(Maybe Text)- , _rpUpdated :: !(Maybe DateTime')- , _rpGbTextPosition :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ReadingPosition' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rpEpubCfiPosition'------ * 'rpKind'------ * 'rpGbImagePosition'------ * 'rpPdfPosition'------ * 'rpVolumeId'------ * 'rpUpdated'------ * 'rpGbTextPosition'-readingPosition- :: ReadingPosition-readingPosition =- ReadingPosition- { _rpEpubCfiPosition = Nothing- , _rpKind = "books#readingPosition"- , _rpGbImagePosition = Nothing- , _rpPdfPosition = Nothing- , _rpVolumeId = Nothing- , _rpUpdated = Nothing- , _rpGbTextPosition = Nothing- }---- | Position in an EPUB as a CFI.-rpEpubCfiPosition :: Lens' ReadingPosition (Maybe Text)-rpEpubCfiPosition- = lens _rpEpubCfiPosition- (\ s a -> s{_rpEpubCfiPosition = a})---- | Resource type for a reading position.-rpKind :: Lens' ReadingPosition Text-rpKind = lens _rpKind (\ s a -> s{_rpKind = a})---- | Position in a volume for image-based content.-rpGbImagePosition :: Lens' ReadingPosition (Maybe Text)-rpGbImagePosition- = lens _rpGbImagePosition- (\ s a -> s{_rpGbImagePosition = a})---- | Position in a PDF file.-rpPdfPosition :: Lens' ReadingPosition (Maybe Text)-rpPdfPosition- = lens _rpPdfPosition- (\ s a -> s{_rpPdfPosition = a})---- | Volume id associated with this reading position.-rpVolumeId :: Lens' ReadingPosition (Maybe Text)-rpVolumeId- = lens _rpVolumeId (\ s a -> s{_rpVolumeId = a})---- | Timestamp when this reading position was last updated (formatted UTC--- timestamp with millisecond resolution).-rpUpdated :: Lens' ReadingPosition (Maybe UTCTime)-rpUpdated- = lens _rpUpdated (\ s a -> s{_rpUpdated = a}) .- mapping _DateTime---- | Position in a volume for text-based content.-rpGbTextPosition :: Lens' ReadingPosition (Maybe Text)-rpGbTextPosition- = lens _rpGbTextPosition- (\ s a -> s{_rpGbTextPosition = a})--instance FromJSON ReadingPosition where- parseJSON- = withObject "ReadingPosition"- (\ o ->- ReadingPosition <$>- (o .:? "epubCfiPosition") <*>- (o .:? "kind" .!= "books#readingPosition")- <*> (o .:? "gbImagePosition")- <*> (o .:? "pdfPosition")- <*> (o .:? "volumeId")- <*> (o .:? "updated")- <*> (o .:? "gbTextPosition"))--instance ToJSON ReadingPosition where- toJSON ReadingPosition{..}- = object- (catMaybes- [("epubCfiPosition" .=) <$> _rpEpubCfiPosition,- Just ("kind" .= _rpKind),- ("gbImagePosition" .=) <$> _rpGbImagePosition,- ("pdfPosition" .=) <$> _rpPdfPosition,- ("volumeId" .=) <$> _rpVolumeId,- ("updated" .=) <$> _rpUpdated,- ("gbTextPosition" .=) <$> _rpGbTextPosition])------- /See:/ 'volumeSaleInfoOffersItem' smart constructor.-data VolumeSaleInfoOffersItem = VolumeSaleInfoOffersItem- { _vsioiFinskyOfferType :: !(Maybe (Textual Int32))- , _vsioiRentalDuration :: !(Maybe VolumeSaleInfoOffersItemRentalDuration)- , _vsioiListPrice :: !(Maybe VolumeSaleInfoOffersItemListPrice)- , _vsioiRetailPrice :: !(Maybe VolumeSaleInfoOffersItemRetailPrice)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'VolumeSaleInfoOffersItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'vsioiFinskyOfferType'------ * 'vsioiRentalDuration'------ * 'vsioiListPrice'------ * 'vsioiRetailPrice'-volumeSaleInfoOffersItem- :: VolumeSaleInfoOffersItem-volumeSaleInfoOffersItem =- VolumeSaleInfoOffersItem- { _vsioiFinskyOfferType = Nothing- , _vsioiRentalDuration = Nothing- , _vsioiListPrice = Nothing- , _vsioiRetailPrice = Nothing- }---- | The finsky offer type (e.g., PURCHASE=0 RENTAL=3)-vsioiFinskyOfferType :: Lens' VolumeSaleInfoOffersItem (Maybe Int32)-vsioiFinskyOfferType- = lens _vsioiFinskyOfferType- (\ s a -> s{_vsioiFinskyOfferType = a})- . mapping _Coerce---- | The rental duration (for rental offers only).-vsioiRentalDuration :: Lens' VolumeSaleInfoOffersItem (Maybe VolumeSaleInfoOffersItemRentalDuration)-vsioiRentalDuration- = lens _vsioiRentalDuration- (\ s a -> s{_vsioiRentalDuration = a})---- | Offer list (=undiscounted) price in Micros.-vsioiListPrice :: Lens' VolumeSaleInfoOffersItem (Maybe VolumeSaleInfoOffersItemListPrice)-vsioiListPrice- = lens _vsioiListPrice- (\ s a -> s{_vsioiListPrice = a})---- | Offer retail (=discounted) price in Micros-vsioiRetailPrice :: Lens' VolumeSaleInfoOffersItem (Maybe VolumeSaleInfoOffersItemRetailPrice)-vsioiRetailPrice- = lens _vsioiRetailPrice- (\ s a -> s{_vsioiRetailPrice = a})--instance FromJSON VolumeSaleInfoOffersItem where- parseJSON- = withObject "VolumeSaleInfoOffersItem"- (\ o ->- VolumeSaleInfoOffersItem <$>- (o .:? "finskyOfferType") <*>- (o .:? "rentalDuration")- <*> (o .:? "listPrice")- <*> (o .:? "retailPrice"))--instance ToJSON VolumeSaleInfoOffersItem where- toJSON VolumeSaleInfoOffersItem{..}- = object- (catMaybes- [("finskyOfferType" .=) <$> _vsioiFinskyOfferType,- ("rentalDuration" .=) <$> _vsioiRentalDuration,- ("listPrice" .=) <$> _vsioiListPrice,- ("retailPrice" .=) <$> _vsioiRetailPrice])------- /See:/ 'dictlayerDataDict' smart constructor.-data DictlayerDataDict = DictlayerDataDict- { _dddSource :: !(Maybe DictlayerDataDictSource)- , _dddWords :: !(Maybe [DictlayerDataDictWordsItem])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'DictlayerDataDict' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dddSource'------ * 'dddWords'-dictlayerDataDict- :: DictlayerDataDict-dictlayerDataDict =- DictlayerDataDict- { _dddSource = Nothing- , _dddWords = Nothing- }---- | The source, url and attribution for this dictionary data.-dddSource :: Lens' DictlayerDataDict (Maybe DictlayerDataDictSource)-dddSource- = lens _dddSource (\ s a -> s{_dddSource = a})--dddWords :: Lens' DictlayerDataDict [DictlayerDataDictWordsItem]-dddWords- = lens _dddWords (\ s a -> s{_dddWords = a}) .- _Default- . _Coerce--instance FromJSON DictlayerDataDict where- parseJSON- = withObject "DictlayerDataDict"- (\ o ->- DictlayerDataDict <$>- (o .:? "source") <*> (o .:? "words" .!= mempty))--instance ToJSON DictlayerDataDict where- toJSON DictlayerDataDict{..}- = object- (catMaybes- [("source" .=) <$> _dddSource,- ("words" .=) <$> _dddWords])------- /See:/ 'dictlayerDataDictWordsItemSensesItem' smart constructor.-data DictlayerDataDictWordsItemSensesItem = DictlayerDataDictWordsItemSensesItem- { _dddwisiPronunciationURL :: !(Maybe Text)- , _dddwisiConjugations :: !(Maybe [DictlayerDataDictWordsItemSensesItemConjugationsItem])- , _dddwisiPronunciation :: !(Maybe Text)- , _dddwisiSynonyms :: !(Maybe [DictlayerDataDictWordsItemSensesItemSynonymsItem])- , _dddwisiSource :: !(Maybe DictlayerDataDictWordsItemSensesItemSource)- , _dddwisiPartOfSpeech :: !(Maybe Text)- , _dddwisiDefinitions :: !(Maybe [DictlayerDataDictWordsItemSensesItemDefinitionsItem])- , _dddwisiSyllabification :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'DictlayerDataDictWordsItemSensesItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dddwisiPronunciationURL'------ * 'dddwisiConjugations'------ * 'dddwisiPronunciation'------ * 'dddwisiSynonyms'------ * 'dddwisiSource'------ * 'dddwisiPartOfSpeech'------ * 'dddwisiDefinitions'------ * 'dddwisiSyllabification'-dictlayerDataDictWordsItemSensesItem- :: DictlayerDataDictWordsItemSensesItem-dictlayerDataDictWordsItemSensesItem =- DictlayerDataDictWordsItemSensesItem- { _dddwisiPronunciationURL = Nothing- , _dddwisiConjugations = Nothing- , _dddwisiPronunciation = Nothing- , _dddwisiSynonyms = Nothing- , _dddwisiSource = Nothing- , _dddwisiPartOfSpeech = Nothing- , _dddwisiDefinitions = Nothing- , _dddwisiSyllabification = Nothing- }--dddwisiPronunciationURL :: Lens' DictlayerDataDictWordsItemSensesItem (Maybe Text)-dddwisiPronunciationURL- = lens _dddwisiPronunciationURL- (\ s a -> s{_dddwisiPronunciationURL = a})--dddwisiConjugations :: Lens' DictlayerDataDictWordsItemSensesItem [DictlayerDataDictWordsItemSensesItemConjugationsItem]-dddwisiConjugations- = lens _dddwisiConjugations- (\ s a -> s{_dddwisiConjugations = a})- . _Default- . _Coerce--dddwisiPronunciation :: Lens' DictlayerDataDictWordsItemSensesItem (Maybe Text)-dddwisiPronunciation- = lens _dddwisiPronunciation- (\ s a -> s{_dddwisiPronunciation = a})--dddwisiSynonyms :: Lens' DictlayerDataDictWordsItemSensesItem [DictlayerDataDictWordsItemSensesItemSynonymsItem]-dddwisiSynonyms- = lens _dddwisiSynonyms- (\ s a -> s{_dddwisiSynonyms = a})- . _Default- . _Coerce--dddwisiSource :: Lens' DictlayerDataDictWordsItemSensesItem (Maybe DictlayerDataDictWordsItemSensesItemSource)-dddwisiSource- = lens _dddwisiSource- (\ s a -> s{_dddwisiSource = a})--dddwisiPartOfSpeech :: Lens' DictlayerDataDictWordsItemSensesItem (Maybe Text)-dddwisiPartOfSpeech- = lens _dddwisiPartOfSpeech- (\ s a -> s{_dddwisiPartOfSpeech = a})--dddwisiDefinitions :: Lens' DictlayerDataDictWordsItemSensesItem [DictlayerDataDictWordsItemSensesItemDefinitionsItem]-dddwisiDefinitions- = lens _dddwisiDefinitions- (\ s a -> s{_dddwisiDefinitions = a})- . _Default- . _Coerce--dddwisiSyllabification :: Lens' DictlayerDataDictWordsItemSensesItem (Maybe Text)-dddwisiSyllabification- = lens _dddwisiSyllabification- (\ s a -> s{_dddwisiSyllabification = a})--instance FromJSON- DictlayerDataDictWordsItemSensesItem where- parseJSON- = withObject "DictlayerDataDictWordsItemSensesItem"- (\ o ->- DictlayerDataDictWordsItemSensesItem <$>- (o .:? "pronunciationUrl") <*>- (o .:? "conjugations" .!= mempty)- <*> (o .:? "pronunciation")- <*> (o .:? "synonyms" .!= mempty)- <*> (o .:? "source")- <*> (o .:? "partOfSpeech")- <*> (o .:? "definitions" .!= mempty)- <*> (o .:? "syllabification"))--instance ToJSON DictlayerDataDictWordsItemSensesItem- where- toJSON DictlayerDataDictWordsItemSensesItem{..}- = object- (catMaybes- [("pronunciationUrl" .=) <$>- _dddwisiPronunciationURL,- ("conjugations" .=) <$> _dddwisiConjugations,- ("pronunciation" .=) <$> _dddwisiPronunciation,- ("synonyms" .=) <$> _dddwisiSynonyms,- ("source" .=) <$> _dddwisiSource,- ("partOfSpeech" .=) <$> _dddwisiPartOfSpeech,- ("definitions" .=) <$> _dddwisiDefinitions,- ("syllabification" .=) <$> _dddwisiSyllabification])---- | Recommendation related information for this volume.------ /See:/ 'volumeRecommendedInfo' smart constructor.-newtype VolumeRecommendedInfo = VolumeRecommendedInfo- { _vriExplanation :: Maybe Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'VolumeRecommendedInfo' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'vriExplanation'-volumeRecommendedInfo- :: VolumeRecommendedInfo-volumeRecommendedInfo =- VolumeRecommendedInfo- { _vriExplanation = Nothing- }---- | A text explaining why this volume is recommended.-vriExplanation :: Lens' VolumeRecommendedInfo (Maybe Text)-vriExplanation- = lens _vriExplanation- (\ s a -> s{_vriExplanation = a})--instance FromJSON VolumeRecommendedInfo where- parseJSON- = withObject "VolumeRecommendedInfo"- (\ o ->- VolumeRecommendedInfo <$> (o .:? "explanation"))--instance ToJSON VolumeRecommendedInfo where- toJSON VolumeRecommendedInfo{..}- = object- (catMaybes [("explanation" .=) <$> _vriExplanation])------- /See:/ 'offers' smart constructor.-data Offers = Offers- { _oKind :: !Text- , _oItems :: !(Maybe [OffersItemsItem])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Offers' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'oKind'------ * 'oItems'-offers- :: Offers-offers =- Offers- { _oKind = "promooffer#offers"- , _oItems = Nothing- }---- | Resource type.-oKind :: Lens' Offers Text-oKind = lens _oKind (\ s a -> s{_oKind = a})---- | A list of offers.-oItems :: Lens' Offers [OffersItemsItem]-oItems- = lens _oItems (\ s a -> s{_oItems = a}) . _Default .- _Coerce--instance FromJSON Offers where- parseJSON- = withObject "Offers"- (\ o ->- Offers <$>- (o .:? "kind" .!= "promooffer#offers") <*>- (o .:? "items" .!= mempty))--instance ToJSON Offers where- toJSON Offers{..}- = object- (catMaybes- [Just ("kind" .= _oKind), ("items" .=) <$> _oItems])------- /See:/ 'discoveryclusters' smart constructor.-data Discoveryclusters = Discoveryclusters- { _dKind :: !Text- , _dTotalClusters :: !(Maybe (Textual Int32))- , _dClusters :: !(Maybe [DiscoveryclustersClustersItem])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Discoveryclusters' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dKind'------ * 'dTotalClusters'------ * 'dClusters'-discoveryclusters- :: Discoveryclusters-discoveryclusters =- Discoveryclusters- { _dKind = "books#discovery#clusters"- , _dTotalClusters = Nothing- , _dClusters = Nothing- }---- | Resorce type.-dKind :: Lens' Discoveryclusters Text-dKind = lens _dKind (\ s a -> s{_dKind = a})--dTotalClusters :: Lens' Discoveryclusters (Maybe Int32)-dTotalClusters- = lens _dTotalClusters- (\ s a -> s{_dTotalClusters = a})- . mapping _Coerce--dClusters :: Lens' Discoveryclusters [DiscoveryclustersClustersItem]-dClusters- = lens _dClusters (\ s a -> s{_dClusters = a}) .- _Default- . _Coerce--instance FromJSON Discoveryclusters where- parseJSON- = withObject "Discoveryclusters"- (\ o ->- Discoveryclusters <$>- (o .:? "kind" .!= "books#discovery#clusters") <*>- (o .:? "totalClusters")- <*> (o .:? "clusters" .!= mempty))--instance ToJSON Discoveryclusters where- toJSON Discoveryclusters{..}- = object- (catMaybes- [Just ("kind" .= _dKind),- ("totalClusters" .=) <$> _dTotalClusters,- ("clusters" .=) <$> _dClusters])---- | User settings in sub-objects, each for different purposes.------ /See:/ 'userSettingsNotesExport' smart constructor.-data UserSettingsNotesExport = UserSettingsNotesExport- { _usneFolderName :: !(Maybe Text)- , _usneIsEnabled :: !(Maybe Bool)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'UserSettingsNotesExport' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'usneFolderName'------ * 'usneIsEnabled'-userSettingsNotesExport- :: UserSettingsNotesExport-userSettingsNotesExport =- UserSettingsNotesExport- { _usneFolderName = Nothing- , _usneIsEnabled = Nothing- }--usneFolderName :: Lens' UserSettingsNotesExport (Maybe Text)-usneFolderName- = lens _usneFolderName- (\ s a -> s{_usneFolderName = a})--usneIsEnabled :: Lens' UserSettingsNotesExport (Maybe Bool)-usneIsEnabled- = lens _usneIsEnabled- (\ s a -> s{_usneIsEnabled = a})--instance FromJSON UserSettingsNotesExport where- parseJSON- = withObject "UserSettingsNotesExport"- (\ o ->- UserSettingsNotesExport <$>- (o .:? "folderName") <*> (o .:? "isEnabled"))--instance ToJSON UserSettingsNotesExport where- toJSON UserSettingsNotesExport{..}- = object- (catMaybes- [("folderName" .=) <$> _usneFolderName,- ("isEnabled" .=) <$> _usneIsEnabled])------- /See:/ 'concurrentAccessRestriction' smart constructor.-data ConcurrentAccessRestriction = ConcurrentAccessRestriction- { _carMaxConcurrentDevices :: !(Maybe (Textual Int32))- , _carSignature :: !(Maybe Text)- , _carTimeWindowSeconds :: !(Maybe (Textual Int32))- , _carKind :: !Text- , _carReasonCode :: !(Maybe Text)- , _carVolumeId :: !(Maybe Text)- , _carRestricted :: !(Maybe Bool)- , _carSource :: !(Maybe Text)- , _carDeviceAllowed :: !(Maybe Bool)- , _carMessage :: !(Maybe Text)- , _carNonce :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ConcurrentAccessRestriction' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'carMaxConcurrentDevices'------ * 'carSignature'------ * 'carTimeWindowSeconds'------ * 'carKind'------ * 'carReasonCode'------ * 'carVolumeId'------ * 'carRestricted'------ * 'carSource'------ * 'carDeviceAllowed'------ * 'carMessage'------ * 'carNonce'-concurrentAccessRestriction- :: ConcurrentAccessRestriction-concurrentAccessRestriction =- ConcurrentAccessRestriction- { _carMaxConcurrentDevices = Nothing- , _carSignature = Nothing- , _carTimeWindowSeconds = Nothing- , _carKind = "books#concurrentAccessRestriction"- , _carReasonCode = Nothing- , _carVolumeId = Nothing- , _carRestricted = Nothing- , _carSource = Nothing- , _carDeviceAllowed = Nothing- , _carMessage = Nothing- , _carNonce = Nothing- }---- | The maximum number of concurrent access licenses for this volume.-carMaxConcurrentDevices :: Lens' ConcurrentAccessRestriction (Maybe Int32)-carMaxConcurrentDevices- = lens _carMaxConcurrentDevices- (\ s a -> s{_carMaxConcurrentDevices = a})- . mapping _Coerce---- | Response signature.-carSignature :: Lens' ConcurrentAccessRestriction (Maybe Text)-carSignature- = lens _carSignature (\ s a -> s{_carSignature = a})---- | Time in seconds for license auto-expiration.-carTimeWindowSeconds :: Lens' ConcurrentAccessRestriction (Maybe Int32)-carTimeWindowSeconds- = lens _carTimeWindowSeconds- (\ s a -> s{_carTimeWindowSeconds = a})- . mapping _Coerce---- | Resource type.-carKind :: Lens' ConcurrentAccessRestriction Text-carKind = lens _carKind (\ s a -> s{_carKind = a})---- | Error\/warning reason code.-carReasonCode :: Lens' ConcurrentAccessRestriction (Maybe Text)-carReasonCode- = lens _carReasonCode- (\ s a -> s{_carReasonCode = a})---- | Identifies the volume for which this entry applies.-carVolumeId :: Lens' ConcurrentAccessRestriction (Maybe Text)-carVolumeId- = lens _carVolumeId (\ s a -> s{_carVolumeId = a})---- | Whether this volume has any concurrent access restrictions.-carRestricted :: Lens' ConcurrentAccessRestriction (Maybe Bool)-carRestricted- = lens _carRestricted- (\ s a -> s{_carRestricted = a})---- | Client app identifier for verification. Download access and--- client-validation only.-carSource :: Lens' ConcurrentAccessRestriction (Maybe Text)-carSource- = lens _carSource (\ s a -> s{_carSource = a})---- | Whether access is granted for this (user, device, volume).-carDeviceAllowed :: Lens' ConcurrentAccessRestriction (Maybe Bool)-carDeviceAllowed- = lens _carDeviceAllowed- (\ s a -> s{_carDeviceAllowed = a})---- | Error\/warning message.-carMessage :: Lens' ConcurrentAccessRestriction (Maybe Text)-carMessage- = lens _carMessage (\ s a -> s{_carMessage = a})---- | Client nonce for verification. Download access and client-validation--- only.-carNonce :: Lens' ConcurrentAccessRestriction (Maybe Text)-carNonce = lens _carNonce (\ s a -> s{_carNonce = a})--instance FromJSON ConcurrentAccessRestriction where- parseJSON- = withObject "ConcurrentAccessRestriction"- (\ o ->- ConcurrentAccessRestriction <$>- (o .:? "maxConcurrentDevices") <*>- (o .:? "signature")- <*> (o .:? "timeWindowSeconds")- <*>- (o .:? "kind" .!=- "books#concurrentAccessRestriction")- <*> (o .:? "reasonCode")- <*> (o .:? "volumeId")- <*> (o .:? "restricted")- <*> (o .:? "source")- <*> (o .:? "deviceAllowed")- <*> (o .:? "message")- <*> (o .:? "nonce"))--instance ToJSON ConcurrentAccessRestriction where- toJSON ConcurrentAccessRestriction{..}- = object- (catMaybes- [("maxConcurrentDevices" .=) <$>- _carMaxConcurrentDevices,- ("signature" .=) <$> _carSignature,- ("timeWindowSeconds" .=) <$> _carTimeWindowSeconds,- Just ("kind" .= _carKind),- ("reasonCode" .=) <$> _carReasonCode,- ("volumeId" .=) <$> _carVolumeId,- ("restricted" .=) <$> _carRestricted,- ("source" .=) <$> _carSource,- ("deviceAllowed" .=) <$> _carDeviceAllowed,- ("message" .=) <$> _carMessage,- ("nonce" .=) <$> _carNonce])------- /See:/ 'volumes' smart constructor.-data Volumes = Volumes- { _v1TotalItems :: !(Maybe (Textual Int32))- , _v1Kind :: !Text- , _v1Items :: !(Maybe [Volume])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Volumes' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'v1TotalItems'------ * 'v1Kind'------ * 'v1Items'-volumes- :: Volumes-volumes =- Volumes- { _v1TotalItems = Nothing- , _v1Kind = "books#volumes"- , _v1Items = Nothing- }---- | Total number of volumes found. This might be greater than the number of--- volumes returned in this response if results have been paginated.-v1TotalItems :: Lens' Volumes (Maybe Int32)-v1TotalItems- = lens _v1TotalItems (\ s a -> s{_v1TotalItems = a})- . mapping _Coerce---- | Resource type.-v1Kind :: Lens' Volumes Text-v1Kind = lens _v1Kind (\ s a -> s{_v1Kind = a})---- | A list of volumes.-v1Items :: Lens' Volumes [Volume]-v1Items- = lens _v1Items (\ s a -> s{_v1Items = a}) . _Default- . _Coerce--instance FromJSON Volumes where- parseJSON- = withObject "Volumes"- (\ o ->- Volumes <$>- (o .:? "totalItems") <*>- (o .:? "kind" .!= "books#volumes")- <*> (o .:? "items" .!= mempty))--instance ToJSON Volumes where- toJSON Volumes{..}- = object- (catMaybes- [("totalItems" .=) <$> _v1TotalItems,- Just ("kind" .= _v1Kind), ("items" .=) <$> _v1Items])------- /See:/ 'bookshelves' smart constructor.-data Bookshelves = Bookshelves- { _booKind :: !Text- , _booItems :: !(Maybe [Bookshelf])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Bookshelves' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'booKind'------ * 'booItems'-bookshelves- :: Bookshelves-bookshelves =- Bookshelves- { _booKind = "books#bookshelves"- , _booItems = Nothing- }---- | Resource type.-booKind :: Lens' Bookshelves Text-booKind = lens _booKind (\ s a -> s{_booKind = a})---- | A list of bookshelves.-booItems :: Lens' Bookshelves [Bookshelf]-booItems- = lens _booItems (\ s a -> s{_booItems = a}) .- _Default- . _Coerce--instance FromJSON Bookshelves where- parseJSON- = withObject "Bookshelves"- (\ o ->- Bookshelves <$>- (o .:? "kind" .!= "books#bookshelves") <*>- (o .:? "items" .!= mempty))--instance ToJSON Bookshelves where- toJSON Bookshelves{..}- = object- (catMaybes- [Just ("kind" .= _booKind),- ("items" .=) <$> _booItems])---- | The source, url and attribution for this dictionary data.------ /See:/ 'dictlayerDataDictSource' smart constructor.-data DictlayerDataDictSource = DictlayerDataDictSource- { _dddsURL :: !(Maybe Text)- , _dddsAttribution :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'DictlayerDataDictSource' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dddsURL'------ * 'dddsAttribution'-dictlayerDataDictSource- :: DictlayerDataDictSource-dictlayerDataDictSource =- DictlayerDataDictSource- { _dddsURL = Nothing- , _dddsAttribution = Nothing- }--dddsURL :: Lens' DictlayerDataDictSource (Maybe Text)-dddsURL = lens _dddsURL (\ s a -> s{_dddsURL = a})--dddsAttribution :: Lens' DictlayerDataDictSource (Maybe Text)-dddsAttribution- = lens _dddsAttribution- (\ s a -> s{_dddsAttribution = a})--instance FromJSON DictlayerDataDictSource where- parseJSON- = withObject "DictlayerDataDictSource"- (\ o ->- DictlayerDataDictSource <$>- (o .:? "url") <*> (o .:? "attribution"))--instance ToJSON DictlayerDataDictSource where- toJSON DictlayerDataDictSource{..}- = object- (catMaybes- [("url" .=) <$> _dddsURL,- ("attribution" .=) <$> _dddsAttribution])------- /See:/ 'downloadAccesses' smart constructor.-data DownloadAccesses = DownloadAccesses- { _daKind :: !Text- , _daDownloadAccessList :: !(Maybe [DownloadAccessRestriction])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'DownloadAccesses' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'daKind'------ * 'daDownloadAccessList'-downloadAccesses- :: DownloadAccesses-downloadAccesses =- DownloadAccesses- { _daKind = "books#downloadAccesses"- , _daDownloadAccessList = Nothing- }---- | Resource type.-daKind :: Lens' DownloadAccesses Text-daKind = lens _daKind (\ s a -> s{_daKind = a})---- | A list of download access responses.-daDownloadAccessList :: Lens' DownloadAccesses [DownloadAccessRestriction]-daDownloadAccessList- = lens _daDownloadAccessList- (\ s a -> s{_daDownloadAccessList = a})- . _Default- . _Coerce--instance FromJSON DownloadAccesses where- parseJSON- = withObject "DownloadAccesses"- (\ o ->- DownloadAccesses <$>- (o .:? "kind" .!= "books#downloadAccesses") <*>- (o .:? "downloadAccessList" .!= mempty))--instance ToJSON DownloadAccesses where- toJSON DownloadAccesses{..}- = object- (catMaybes- [Just ("kind" .= _daKind),- ("downloadAccessList" .=) <$> _daDownloadAccessList])------- /See:/ 'geolayerDataGeoViewportHi' smart constructor.-data GeolayerDataGeoViewportHi = GeolayerDataGeoViewportHi- { _gdgvhLatitude :: !(Maybe (Textual Double))- , _gdgvhLongitude :: !(Maybe (Textual Double))- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GeolayerDataGeoViewportHi' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gdgvhLatitude'------ * 'gdgvhLongitude'-geolayerDataGeoViewportHi- :: GeolayerDataGeoViewportHi-geolayerDataGeoViewportHi =- GeolayerDataGeoViewportHi- { _gdgvhLatitude = Nothing- , _gdgvhLongitude = Nothing- }--gdgvhLatitude :: Lens' GeolayerDataGeoViewportHi (Maybe Double)-gdgvhLatitude- = lens _gdgvhLatitude- (\ s a -> s{_gdgvhLatitude = a})- . mapping _Coerce--gdgvhLongitude :: Lens' GeolayerDataGeoViewportHi (Maybe Double)-gdgvhLongitude- = lens _gdgvhLongitude- (\ s a -> s{_gdgvhLongitude = a})- . mapping _Coerce--instance FromJSON GeolayerDataGeoViewportHi where- parseJSON- = withObject "GeolayerDataGeoViewportHi"- (\ o ->- GeolayerDataGeoViewportHi <$>- (o .:? "latitude") <*> (o .:? "longitude"))--instance ToJSON GeolayerDataGeoViewportHi where- toJSON GeolayerDataGeoViewportHi{..}- = object- (catMaybes- [("latitude" .=) <$> _gdgvhLatitude,- ("longitude" .=) <$> _gdgvhLongitude])---- | General volume information.------ /See:/ 'volumeVolumeInfo' smart constructor.-data VolumeVolumeInfo = VolumeVolumeInfo- { _vviImageLinks :: !(Maybe VolumeVolumeInfoImageLinks)- , _vviAverageRating :: !(Maybe (Textual Double))- , _vviRatingsCount :: !(Maybe (Textual Int32))- , _vviCanonicalVolumeLink :: !(Maybe Text)- , _vviReadingModes :: !(Maybe JSONValue)- , _vviIndustryIdentifiers :: !(Maybe [VolumeVolumeInfoIndustryIdentifiersItem])- , _vviPrintedPageCount :: !(Maybe (Textual Int32))- , _vviMainCategory :: !(Maybe Text)- , _vviContentVersion :: !(Maybe Text)- , _vviSamplePageCount :: !(Maybe (Textual Int32))- , _vviCategories :: !(Maybe [Text])- , _vviAuthors :: !(Maybe [Text])- , _vviAllowAnonLogging :: !(Maybe Bool)- , _vviSubtitle :: !(Maybe Text)- , _vviPublishedDate :: !(Maybe Text)- , _vviMaturityRating :: !(Maybe Text)- , _vviPreviewLink :: !(Maybe Text)- , _vviLanguage :: !(Maybe Text)- , _vviTitle :: !(Maybe Text)- , _vviPageCount :: !(Maybe (Textual Int32))- , _vviDimensions :: !(Maybe VolumeVolumeInfoDimensions)- , _vviInfoLink :: !(Maybe Text)- , _vviPublisher :: !(Maybe Text)- , _vviDescription :: !(Maybe Text)- , _vviPrintType :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'VolumeVolumeInfo' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'vviImageLinks'------ * 'vviAverageRating'------ * 'vviRatingsCount'------ * 'vviCanonicalVolumeLink'------ * 'vviReadingModes'------ * 'vviIndustryIdentifiers'------ * 'vviPrintedPageCount'------ * 'vviMainCategory'------ * 'vviContentVersion'------ * 'vviSamplePageCount'------ * 'vviCategories'------ * 'vviAuthors'------ * 'vviAllowAnonLogging'------ * 'vviSubtitle'------ * 'vviPublishedDate'------ * 'vviMaturityRating'------ * 'vviPreviewLink'------ * 'vviLanguage'------ * 'vviTitle'------ * 'vviPageCount'------ * 'vviDimensions'------ * 'vviInfoLink'------ * 'vviPublisher'------ * 'vviDescription'------ * 'vviPrintType'-volumeVolumeInfo- :: VolumeVolumeInfo-volumeVolumeInfo =- VolumeVolumeInfo- { _vviImageLinks = Nothing- , _vviAverageRating = Nothing- , _vviRatingsCount = Nothing- , _vviCanonicalVolumeLink = Nothing- , _vviReadingModes = Nothing- , _vviIndustryIdentifiers = Nothing- , _vviPrintedPageCount = Nothing- , _vviMainCategory = Nothing- , _vviContentVersion = Nothing- , _vviSamplePageCount = Nothing- , _vviCategories = Nothing- , _vviAuthors = Nothing- , _vviAllowAnonLogging = Nothing- , _vviSubtitle = Nothing- , _vviPublishedDate = Nothing- , _vviMaturityRating = Nothing- , _vviPreviewLink = Nothing- , _vviLanguage = Nothing- , _vviTitle = Nothing- , _vviPageCount = Nothing- , _vviDimensions = Nothing- , _vviInfoLink = Nothing- , _vviPublisher = Nothing- , _vviDescription = Nothing- , _vviPrintType = Nothing- }---- | A list of image links for all the sizes that are available. (In LITE--- projection.)-vviImageLinks :: Lens' VolumeVolumeInfo (Maybe VolumeVolumeInfoImageLinks)-vviImageLinks- = lens _vviImageLinks- (\ s a -> s{_vviImageLinks = a})---- | The mean review rating for this volume. (min = 1.0, max = 5.0)-vviAverageRating :: Lens' VolumeVolumeInfo (Maybe Double)-vviAverageRating- = lens _vviAverageRating- (\ s a -> s{_vviAverageRating = a})- . mapping _Coerce---- | The number of review ratings for this volume.-vviRatingsCount :: Lens' VolumeVolumeInfo (Maybe Int32)-vviRatingsCount- = lens _vviRatingsCount- (\ s a -> s{_vviRatingsCount = a})- . mapping _Coerce---- | Canonical URL for a volume. (In LITE projection.)-vviCanonicalVolumeLink :: Lens' VolumeVolumeInfo (Maybe Text)-vviCanonicalVolumeLink- = lens _vviCanonicalVolumeLink- (\ s a -> s{_vviCanonicalVolumeLink = a})---- | The reading modes available for this volume.-vviReadingModes :: Lens' VolumeVolumeInfo (Maybe JSONValue)-vviReadingModes- = lens _vviReadingModes- (\ s a -> s{_vviReadingModes = a})---- | Industry standard identifiers for this volume.-vviIndustryIdentifiers :: Lens' VolumeVolumeInfo [VolumeVolumeInfoIndustryIdentifiersItem]-vviIndustryIdentifiers- = lens _vviIndustryIdentifiers- (\ s a -> s{_vviIndustryIdentifiers = a})- . _Default- . _Coerce---- | Total number of printed pages in generated pdf representation.-vviPrintedPageCount :: Lens' VolumeVolumeInfo (Maybe Int32)-vviPrintedPageCount- = lens _vviPrintedPageCount- (\ s a -> s{_vviPrintedPageCount = a})- . mapping _Coerce---- | The main category to which this volume belongs. It will be the category--- from the categories list returned below that has the highest weight.-vviMainCategory :: Lens' VolumeVolumeInfo (Maybe Text)-vviMainCategory- = lens _vviMainCategory- (\ s a -> s{_vviMainCategory = a})---- | An identifier for the version of the volume content (text & images). (In--- LITE projection)-vviContentVersion :: Lens' VolumeVolumeInfo (Maybe Text)-vviContentVersion- = lens _vviContentVersion- (\ s a -> s{_vviContentVersion = a})---- | Total number of sample pages as per publisher metadata.-vviSamplePageCount :: Lens' VolumeVolumeInfo (Maybe Int32)-vviSamplePageCount- = lens _vviSamplePageCount- (\ s a -> s{_vviSamplePageCount = a})- . mapping _Coerce---- | A list of subject categories, such as \"Fiction\", \"Suspense\", etc.-vviCategories :: Lens' VolumeVolumeInfo [Text]-vviCategories- = lens _vviCategories- (\ s a -> s{_vviCategories = a})- . _Default- . _Coerce---- | The names of the authors and\/or editors for this volume. (In LITE--- projection)-vviAuthors :: Lens' VolumeVolumeInfo [Text]-vviAuthors- = lens _vviAuthors (\ s a -> s{_vviAuthors = a}) .- _Default- . _Coerce---- | Whether anonymous logging should be allowed.-vviAllowAnonLogging :: Lens' VolumeVolumeInfo (Maybe Bool)-vviAllowAnonLogging- = lens _vviAllowAnonLogging- (\ s a -> s{_vviAllowAnonLogging = a})---- | Volume subtitle. (In LITE projection.)-vviSubtitle :: Lens' VolumeVolumeInfo (Maybe Text)-vviSubtitle- = lens _vviSubtitle (\ s a -> s{_vviSubtitle = a})---- | Date of publication. (In LITE projection.)-vviPublishedDate :: Lens' VolumeVolumeInfo (Maybe Text)-vviPublishedDate- = lens _vviPublishedDate- (\ s a -> s{_vviPublishedDate = a})--vviMaturityRating :: Lens' VolumeVolumeInfo (Maybe Text)-vviMaturityRating- = lens _vviMaturityRating- (\ s a -> s{_vviMaturityRating = a})---- | URL to preview this volume on the Google Books site.-vviPreviewLink :: Lens' VolumeVolumeInfo (Maybe Text)-vviPreviewLink- = lens _vviPreviewLink- (\ s a -> s{_vviPreviewLink = a})---- | Best language for this volume (based on content). It is the two-letter--- ISO 639-1 code such as \'fr\', \'en\', etc.-vviLanguage :: Lens' VolumeVolumeInfo (Maybe Text)-vviLanguage- = lens _vviLanguage (\ s a -> s{_vviLanguage = a})---- | Volume title. (In LITE projection.)-vviTitle :: Lens' VolumeVolumeInfo (Maybe Text)-vviTitle = lens _vviTitle (\ s a -> s{_vviTitle = a})---- | Total number of pages as per publisher metadata.-vviPageCount :: Lens' VolumeVolumeInfo (Maybe Int32)-vviPageCount- = lens _vviPageCount (\ s a -> s{_vviPageCount = a})- . mapping _Coerce---- | Physical dimensions of this volume.-vviDimensions :: Lens' VolumeVolumeInfo (Maybe VolumeVolumeInfoDimensions)-vviDimensions- = lens _vviDimensions- (\ s a -> s{_vviDimensions = a})---- | URL to view information about this volume on the Google Books site. (In--- LITE projection)-vviInfoLink :: Lens' VolumeVolumeInfo (Maybe Text)-vviInfoLink- = lens _vviInfoLink (\ s a -> s{_vviInfoLink = a})---- | Publisher of this volume. (In LITE projection.)-vviPublisher :: Lens' VolumeVolumeInfo (Maybe Text)-vviPublisher- = lens _vviPublisher (\ s a -> s{_vviPublisher = a})---- | A synopsis of the volume. The text of the description is formatted in--- HTML and includes simple formatting elements, such as b, i, and br tags.--- (In LITE projection.)-vviDescription :: Lens' VolumeVolumeInfo (Maybe Text)-vviDescription- = lens _vviDescription- (\ s a -> s{_vviDescription = a})---- | Type of publication of this volume. Possible values are BOOK or--- MAGAZINE.-vviPrintType :: Lens' VolumeVolumeInfo (Maybe Text)-vviPrintType- = lens _vviPrintType (\ s a -> s{_vviPrintType = a})--instance FromJSON VolumeVolumeInfo where- parseJSON- = withObject "VolumeVolumeInfo"- (\ o ->- VolumeVolumeInfo <$>- (o .:? "imageLinks") <*> (o .:? "averageRating") <*>- (o .:? "ratingsCount")- <*> (o .:? "canonicalVolumeLink")- <*> (o .:? "readingModes")- <*> (o .:? "industryIdentifiers" .!= mempty)- <*> (o .:? "printedPageCount")- <*> (o .:? "mainCategory")- <*> (o .:? "contentVersion")- <*> (o .:? "samplePageCount")- <*> (o .:? "categories" .!= mempty)- <*> (o .:? "authors" .!= mempty)- <*> (o .:? "allowAnonLogging")- <*> (o .:? "subtitle")- <*> (o .:? "publishedDate")- <*> (o .:? "maturityRating")- <*> (o .:? "previewLink")- <*> (o .:? "language")- <*> (o .:? "title")- <*> (o .:? "pageCount")- <*> (o .:? "dimensions")- <*> (o .:? "infoLink")- <*> (o .:? "publisher")- <*> (o .:? "description")- <*> (o .:? "printType"))--instance ToJSON VolumeVolumeInfo where- toJSON VolumeVolumeInfo{..}- = object- (catMaybes- [("imageLinks" .=) <$> _vviImageLinks,- ("averageRating" .=) <$> _vviAverageRating,- ("ratingsCount" .=) <$> _vviRatingsCount,- ("canonicalVolumeLink" .=) <$>- _vviCanonicalVolumeLink,- ("readingModes" .=) <$> _vviReadingModes,- ("industryIdentifiers" .=) <$>- _vviIndustryIdentifiers,- ("printedPageCount" .=) <$> _vviPrintedPageCount,- ("mainCategory" .=) <$> _vviMainCategory,- ("contentVersion" .=) <$> _vviContentVersion,- ("samplePageCount" .=) <$> _vviSamplePageCount,- ("categories" .=) <$> _vviCategories,- ("authors" .=) <$> _vviAuthors,- ("allowAnonLogging" .=) <$> _vviAllowAnonLogging,- ("subtitle" .=) <$> _vviSubtitle,- ("publishedDate" .=) <$> _vviPublishedDate,- ("maturityRating" .=) <$> _vviMaturityRating,- ("previewLink" .=) <$> _vviPreviewLink,- ("language" .=) <$> _vviLanguage,- ("title" .=) <$> _vviTitle,- ("pageCount" .=) <$> _vviPageCount,- ("dimensions" .=) <$> _vviDimensions,- ("infoLink" .=) <$> _vviInfoLink,- ("publisher" .=) <$> _vviPublisher,- ("description" .=) <$> _vviDescription,- ("printType" .=) <$> _vviPrintType])------- /See:/ 'metadataItemsItem' smart constructor.-data MetadataItemsItem = MetadataItemsItem- { _miiSize :: !(Maybe (Textual Int64))- , _miiVersion :: !(Maybe (Textual Int64))- , _miiLanguage :: !(Maybe Text)- , _miiDownloadURL :: !(Maybe Text)- , _miiEncryptedKey :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'MetadataItemsItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'miiSize'------ * 'miiVersion'------ * 'miiLanguage'------ * 'miiDownloadURL'------ * 'miiEncryptedKey'-metadataItemsItem- :: MetadataItemsItem-metadataItemsItem =- MetadataItemsItem- { _miiSize = Nothing- , _miiVersion = Nothing- , _miiLanguage = Nothing- , _miiDownloadURL = Nothing- , _miiEncryptedKey = Nothing- }--miiSize :: Lens' MetadataItemsItem (Maybe Int64)-miiSize- = lens _miiSize (\ s a -> s{_miiSize = a}) .- mapping _Coerce--miiVersion :: Lens' MetadataItemsItem (Maybe Int64)-miiVersion- = lens _miiVersion (\ s a -> s{_miiVersion = a}) .- mapping _Coerce--miiLanguage :: Lens' MetadataItemsItem (Maybe Text)-miiLanguage- = lens _miiLanguage (\ s a -> s{_miiLanguage = a})--miiDownloadURL :: Lens' MetadataItemsItem (Maybe Text)-miiDownloadURL- = lens _miiDownloadURL- (\ s a -> s{_miiDownloadURL = a})--miiEncryptedKey :: Lens' MetadataItemsItem (Maybe Text)-miiEncryptedKey- = lens _miiEncryptedKey- (\ s a -> s{_miiEncryptedKey = a})--instance FromJSON MetadataItemsItem where- parseJSON- = withObject "MetadataItemsItem"- (\ o ->- MetadataItemsItem <$>- (o .:? "size") <*> (o .:? "version") <*>- (o .:? "language")- <*> (o .:? "download_url")- <*> (o .:? "encrypted_key"))--instance ToJSON MetadataItemsItem where- toJSON MetadataItemsItem{..}- = object- (catMaybes- [("size" .=) <$> _miiSize,- ("version" .=) <$> _miiVersion,- ("language" .=) <$> _miiLanguage,- ("download_url" .=) <$> _miiDownloadURL,- ("encrypted_key" .=) <$> _miiEncryptedKey])------- /See:/ 'dictlayerDataDictWordsItemSensesItemSource' smart constructor.-data DictlayerDataDictWordsItemSensesItemSource = DictlayerDataDictWordsItemSensesItemSource- { _dddwisisURL :: !(Maybe Text)- , _dddwisisAttribution :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'DictlayerDataDictWordsItemSensesItemSource' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dddwisisURL'------ * 'dddwisisAttribution'-dictlayerDataDictWordsItemSensesItemSource- :: DictlayerDataDictWordsItemSensesItemSource-dictlayerDataDictWordsItemSensesItemSource =- DictlayerDataDictWordsItemSensesItemSource- { _dddwisisURL = Nothing- , _dddwisisAttribution = Nothing- }--dddwisisURL :: Lens' DictlayerDataDictWordsItemSensesItemSource (Maybe Text)-dddwisisURL- = lens _dddwisisURL (\ s a -> s{_dddwisisURL = a})--dddwisisAttribution :: Lens' DictlayerDataDictWordsItemSensesItemSource (Maybe Text)-dddwisisAttribution- = lens _dddwisisAttribution- (\ s a -> s{_dddwisisAttribution = a})--instance FromJSON- DictlayerDataDictWordsItemSensesItemSource where- parseJSON- = withObject- "DictlayerDataDictWordsItemSensesItemSource"- (\ o ->- DictlayerDataDictWordsItemSensesItemSource <$>- (o .:? "url") <*> (o .:? "attribution"))--instance ToJSON- DictlayerDataDictWordsItemSensesItemSource where- toJSON DictlayerDataDictWordsItemSensesItemSource{..}- = object- (catMaybes- [("url" .=) <$> _dddwisisURL,- ("attribution" .=) <$> _dddwisisAttribution])---- | Offer retail (=discounted) price in Micros------ /See:/ 'volumeSaleInfoOffersItemRetailPrice' smart constructor.-data VolumeSaleInfoOffersItemRetailPrice = VolumeSaleInfoOffersItemRetailPrice- { _vsioirpCurrencyCode :: !(Maybe Text)- , _vsioirpAmountInMicros :: !(Maybe (Textual Double))- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'VolumeSaleInfoOffersItemRetailPrice' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'vsioirpCurrencyCode'------ * 'vsioirpAmountInMicros'-volumeSaleInfoOffersItemRetailPrice- :: VolumeSaleInfoOffersItemRetailPrice-volumeSaleInfoOffersItemRetailPrice =- VolumeSaleInfoOffersItemRetailPrice- { _vsioirpCurrencyCode = Nothing- , _vsioirpAmountInMicros = Nothing- }--vsioirpCurrencyCode :: Lens' VolumeSaleInfoOffersItemRetailPrice (Maybe Text)-vsioirpCurrencyCode- = lens _vsioirpCurrencyCode- (\ s a -> s{_vsioirpCurrencyCode = a})--vsioirpAmountInMicros :: Lens' VolumeSaleInfoOffersItemRetailPrice (Maybe Double)-vsioirpAmountInMicros- = lens _vsioirpAmountInMicros- (\ s a -> s{_vsioirpAmountInMicros = a})- . mapping _Coerce--instance FromJSON VolumeSaleInfoOffersItemRetailPrice- where- parseJSON- = withObject "VolumeSaleInfoOffersItemRetailPrice"- (\ o ->- VolumeSaleInfoOffersItemRetailPrice <$>- (o .:? "currencyCode") <*> (o .:? "amountInMicros"))--instance ToJSON VolumeSaleInfoOffersItemRetailPrice- where- toJSON VolumeSaleInfoOffersItemRetailPrice{..}- = object- (catMaybes- [("currencyCode" .=) <$> _vsioirpCurrencyCode,- ("amountInMicros" .=) <$> _vsioirpAmountInMicros])------- /See:/ 'volumeVolumeInfoIndustryIdentifiersItem' smart constructor.-data VolumeVolumeInfoIndustryIdentifiersItem = VolumeVolumeInfoIndustryIdentifiersItem- { _vviiiiIdentifier :: !(Maybe Text)- , _vviiiiType :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'VolumeVolumeInfoIndustryIdentifiersItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'vviiiiIdentifier'------ * 'vviiiiType'-volumeVolumeInfoIndustryIdentifiersItem- :: VolumeVolumeInfoIndustryIdentifiersItem-volumeVolumeInfoIndustryIdentifiersItem =- VolumeVolumeInfoIndustryIdentifiersItem- { _vviiiiIdentifier = Nothing- , _vviiiiType = Nothing- }---- | Industry specific volume identifier.-vviiiiIdentifier :: Lens' VolumeVolumeInfoIndustryIdentifiersItem (Maybe Text)-vviiiiIdentifier- = lens _vviiiiIdentifier- (\ s a -> s{_vviiiiIdentifier = a})---- | Identifier type. Possible values are ISBN_10, ISBN_13, ISSN and OTHER.-vviiiiType :: Lens' VolumeVolumeInfoIndustryIdentifiersItem (Maybe Text)-vviiiiType- = lens _vviiiiType (\ s a -> s{_vviiiiType = a})--instance FromJSON- VolumeVolumeInfoIndustryIdentifiersItem where- parseJSON- = withObject- "VolumeVolumeInfoIndustryIdentifiersItem"- (\ o ->- VolumeVolumeInfoIndustryIdentifiersItem <$>- (o .:? "identifier") <*> (o .:? "type"))--instance ToJSON- VolumeVolumeInfoIndustryIdentifiersItem where- toJSON VolumeVolumeInfoIndustryIdentifiersItem{..}- = object- (catMaybes- [("identifier" .=) <$> _vviiiiIdentifier,- ("type" .=) <$> _vviiiiType])------- /See:/ 'booksAnnotationsRange' smart constructor.-data BooksAnnotationsRange = BooksAnnotationsRange- { _barStartOffSet :: !(Maybe Text)- , _barEndOffSet :: !(Maybe Text)- , _barEndPosition :: !(Maybe Text)- , _barStartPosition :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'BooksAnnotationsRange' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'barStartOffSet'------ * 'barEndOffSet'------ * 'barEndPosition'------ * 'barStartPosition'-booksAnnotationsRange- :: BooksAnnotationsRange-booksAnnotationsRange =- BooksAnnotationsRange- { _barStartOffSet = Nothing- , _barEndOffSet = Nothing- , _barEndPosition = Nothing- , _barStartPosition = Nothing- }---- | The offset from the starting position.-barStartOffSet :: Lens' BooksAnnotationsRange (Maybe Text)-barStartOffSet- = lens _barStartOffSet- (\ s a -> s{_barStartOffSet = a})---- | The offset from the ending position.-barEndOffSet :: Lens' BooksAnnotationsRange (Maybe Text)-barEndOffSet- = lens _barEndOffSet (\ s a -> s{_barEndOffSet = a})---- | The ending position for the range.-barEndPosition :: Lens' BooksAnnotationsRange (Maybe Text)-barEndPosition- = lens _barEndPosition- (\ s a -> s{_barEndPosition = a})---- | The starting position for the range.-barStartPosition :: Lens' BooksAnnotationsRange (Maybe Text)-barStartPosition- = lens _barStartPosition- (\ s a -> s{_barStartPosition = a})--instance FromJSON BooksAnnotationsRange where- parseJSON- = withObject "BooksAnnotationsRange"- (\ o ->- BooksAnnotationsRange <$>- (o .:? "startOffset") <*> (o .:? "endOffset") <*>- (o .:? "endPosition")- <*> (o .:? "startPosition"))--instance ToJSON BooksAnnotationsRange where- toJSON BooksAnnotationsRange{..}- = object- (catMaybes- [("startOffset" .=) <$> _barStartOffSet,- ("endOffset" .=) <$> _barEndOffSet,- ("endPosition" .=) <$> _barEndPosition,- ("startPosition" .=) <$> _barStartPosition])------- /See:/ 'layersummaries' smart constructor.-data Layersummaries = Layersummaries- { _layTotalItems :: !(Maybe (Textual Int32))- , _layKind :: !Text- , _layItems :: !(Maybe [Layersummary])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Layersummaries' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'layTotalItems'------ * 'layKind'------ * 'layItems'-layersummaries- :: Layersummaries-layersummaries =- Layersummaries- { _layTotalItems = Nothing- , _layKind = "books#layersummaries"- , _layItems = Nothing- }---- | The total number of layer summaries found.-layTotalItems :: Lens' Layersummaries (Maybe Int32)-layTotalItems- = lens _layTotalItems- (\ s a -> s{_layTotalItems = a})- . mapping _Coerce---- | Resource type.-layKind :: Lens' Layersummaries Text-layKind = lens _layKind (\ s a -> s{_layKind = a})---- | A list of layer summary items.-layItems :: Lens' Layersummaries [Layersummary]-layItems- = lens _layItems (\ s a -> s{_layItems = a}) .- _Default- . _Coerce--instance FromJSON Layersummaries where- parseJSON- = withObject "Layersummaries"- (\ o ->- Layersummaries <$>- (o .:? "totalItems") <*>- (o .:? "kind" .!= "books#layersummaries")- <*> (o .:? "items" .!= mempty))--instance ToJSON Layersummaries where- toJSON Layersummaries{..}+-- Copyright : (c) 2015-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+module Network.Google.Books.Types.Product where++import Network.Google.Books.Types.Sum+import Network.Google.Prelude++--+-- /See:/ 'userSettings' smart constructor.+data UserSettings = UserSettings'+ { _usNotification :: !(Maybe UserSettingsNotification)+ , _usKind :: !Text+ , _usNotesExport :: !(Maybe UserSettingsNotesExport)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UserSettings' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'usNotification'+--+-- * 'usKind'+--+-- * 'usNotesExport'+userSettings+ :: UserSettings+userSettings =+ UserSettings'+ { _usNotification = Nothing+ , _usKind = "books#usersettings"+ , _usNotesExport = Nothing+ }++usNotification :: Lens' UserSettings (Maybe UserSettingsNotification)+usNotification+ = lens _usNotification+ (\ s a -> s{_usNotification = a})++-- | Resource type.+usKind :: Lens' UserSettings Text+usKind = lens _usKind (\ s a -> s{_usKind = a})++-- | User settings in sub-objects, each for different purposes.+usNotesExport :: Lens' UserSettings (Maybe UserSettingsNotesExport)+usNotesExport+ = lens _usNotesExport+ (\ s a -> s{_usNotesExport = a})++instance FromJSON UserSettings where+ parseJSON+ = withObject "UserSettings"+ (\ o ->+ UserSettings' <$>+ (o .:? "notification") <*>+ (o .:? "kind" .!= "books#usersettings")+ <*> (o .:? "notesExport"))++instance ToJSON UserSettings where+ toJSON UserSettings'{..}+ = object+ (catMaybes+ [("notification" .=) <$> _usNotification,+ Just ("kind" .= _usKind),+ ("notesExport" .=) <$> _usNotesExport])++--+-- /See:/ 'annotations' smart constructor.+data Annotations = Annotations'+ { _aTotalItems :: !(Maybe (Textual Int32))+ , _aNextPageToken :: !(Maybe Text)+ , _aKind :: !Text+ , _aItems :: !(Maybe [Annotation])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Annotations' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aTotalItems'+--+-- * 'aNextPageToken'+--+-- * 'aKind'+--+-- * 'aItems'+annotations+ :: Annotations+annotations =+ Annotations'+ { _aTotalItems = Nothing+ , _aNextPageToken = Nothing+ , _aKind = "books#annotations"+ , _aItems = Nothing+ }++-- | Total number of annotations found. This may be greater than the number+-- of notes returned in this response if results have been paginated.+aTotalItems :: Lens' Annotations (Maybe Int32)+aTotalItems+ = lens _aTotalItems (\ s a -> s{_aTotalItems = a}) .+ mapping _Coerce++-- | Token to pass in for pagination for the next page. This will not be+-- present if this request does not have more results.+aNextPageToken :: Lens' Annotations (Maybe Text)+aNextPageToken+ = lens _aNextPageToken+ (\ s a -> s{_aNextPageToken = a})++-- | Resource type.+aKind :: Lens' Annotations Text+aKind = lens _aKind (\ s a -> s{_aKind = a})++-- | A list of annotations.+aItems :: Lens' Annotations [Annotation]+aItems+ = lens _aItems (\ s a -> s{_aItems = a}) . _Default .+ _Coerce++instance FromJSON Annotations where+ parseJSON+ = withObject "Annotations"+ (\ o ->+ Annotations' <$>+ (o .:? "totalItems") <*> (o .:? "nextPageToken") <*>+ (o .:? "kind" .!= "books#annotations")+ <*> (o .:? "items" .!= mempty))++instance ToJSON Annotations where+ toJSON Annotations'{..}+ = object+ (catMaybes+ [("totalItems" .=) <$> _aTotalItems,+ ("nextPageToken" .=) <$> _aNextPageToken,+ Just ("kind" .= _aKind), ("items" .=) <$> _aItems])++--+-- /See:/ 'annotationsData' smart constructor.+data AnnotationsData = AnnotationsData'+ { _adTotalItems :: !(Maybe (Textual Int32))+ , _adNextPageToken :: !(Maybe Text)+ , _adKind :: !Text+ , _adItems :: !(Maybe [AnnotationData])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AnnotationsData' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'adTotalItems'+--+-- * 'adNextPageToken'+--+-- * 'adKind'+--+-- * 'adItems'+annotationsData+ :: AnnotationsData+annotationsData =+ AnnotationsData'+ { _adTotalItems = Nothing+ , _adNextPageToken = Nothing+ , _adKind = "books#annotationsdata"+ , _adItems = Nothing+ }++-- | The total number of volume annotations found.+adTotalItems :: Lens' AnnotationsData (Maybe Int32)+adTotalItems+ = lens _adTotalItems (\ s a -> s{_adTotalItems = a})+ . mapping _Coerce++-- | Token to pass in for pagination for the next page. This will not be+-- present if this request does not have more results.+adNextPageToken :: Lens' AnnotationsData (Maybe Text)+adNextPageToken+ = lens _adNextPageToken+ (\ s a -> s{_adNextPageToken = a})++-- | Resource type+adKind :: Lens' AnnotationsData Text+adKind = lens _adKind (\ s a -> s{_adKind = a})++-- | A list of Annotation Data.+adItems :: Lens' AnnotationsData [AnnotationData]+adItems+ = lens _adItems (\ s a -> s{_adItems = a}) . _Default+ . _Coerce++instance FromJSON AnnotationsData where+ parseJSON+ = withObject "AnnotationsData"+ (\ o ->+ AnnotationsData' <$>+ (o .:? "totalItems") <*> (o .:? "nextPageToken") <*>+ (o .:? "kind" .!= "books#annotationsdata")+ <*> (o .:? "items" .!= mempty))++instance ToJSON AnnotationsData where+ toJSON AnnotationsData'{..}+ = object+ (catMaybes+ [("totalItems" .=) <$> _adTotalItems,+ ("nextPageToken" .=) <$> _adNextPageToken,+ Just ("kind" .= _adKind), ("items" .=) <$> _adItems])++--+-- /See:/ 'userSettingsNotificationMoreFromAuthors' smart constructor.+newtype UserSettingsNotificationMoreFromAuthors = UserSettingsNotificationMoreFromAuthors'+ { _usnmfaOptedState :: Maybe Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UserSettingsNotificationMoreFromAuthors' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'usnmfaOptedState'+userSettingsNotificationMoreFromAuthors+ :: UserSettingsNotificationMoreFromAuthors+userSettingsNotificationMoreFromAuthors =+ UserSettingsNotificationMoreFromAuthors'+ { _usnmfaOptedState = Nothing+ }++usnmfaOptedState :: Lens' UserSettingsNotificationMoreFromAuthors (Maybe Text)+usnmfaOptedState+ = lens _usnmfaOptedState+ (\ s a -> s{_usnmfaOptedState = a})++instance FromJSON+ UserSettingsNotificationMoreFromAuthors where+ parseJSON+ = withObject+ "UserSettingsNotificationMoreFromAuthors"+ (\ o ->+ UserSettingsNotificationMoreFromAuthors' <$>+ (o .:? "opted_state"))++instance ToJSON+ UserSettingsNotificationMoreFromAuthors where+ toJSON UserSettingsNotificationMoreFromAuthors'{..}+ = object+ (catMaybes+ [("opted_state" .=) <$> _usnmfaOptedState])++--+-- /See:/ 'volumeannotations' smart constructor.+data Volumeannotations = Volumeannotations'+ { _vTotalItems :: !(Maybe (Textual Int32))+ , _vNextPageToken :: !(Maybe Text)+ , _vKind :: !Text+ , _vItems :: !(Maybe [Volumeannotation])+ , _vVersion :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Volumeannotations' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vTotalItems'+--+-- * 'vNextPageToken'+--+-- * 'vKind'+--+-- * 'vItems'+--+-- * 'vVersion'+volumeannotations+ :: Volumeannotations+volumeannotations =+ Volumeannotations'+ { _vTotalItems = Nothing+ , _vNextPageToken = Nothing+ , _vKind = "books#volumeannotations"+ , _vItems = Nothing+ , _vVersion = Nothing+ }++-- | The total number of volume annotations found.+vTotalItems :: Lens' Volumeannotations (Maybe Int32)+vTotalItems+ = lens _vTotalItems (\ s a -> s{_vTotalItems = a}) .+ mapping _Coerce++-- | Token to pass in for pagination for the next page. This will not be+-- present if this request does not have more results.+vNextPageToken :: Lens' Volumeannotations (Maybe Text)+vNextPageToken+ = lens _vNextPageToken+ (\ s a -> s{_vNextPageToken = a})++-- | Resource type+vKind :: Lens' Volumeannotations Text+vKind = lens _vKind (\ s a -> s{_vKind = a})++-- | A list of volume annotations.+vItems :: Lens' Volumeannotations [Volumeannotation]+vItems+ = lens _vItems (\ s a -> s{_vItems = a}) . _Default .+ _Coerce++-- | The version string for all of the volume annotations in this layer (not+-- just the ones in this response). Note: the version string doesn\'t apply+-- to the annotation data, just the information in this response (e.g. the+-- location of annotations in the book).+vVersion :: Lens' Volumeannotations (Maybe Text)+vVersion = lens _vVersion (\ s a -> s{_vVersion = a})++instance FromJSON Volumeannotations where+ parseJSON+ = withObject "Volumeannotations"+ (\ o ->+ Volumeannotations' <$>+ (o .:? "totalItems") <*> (o .:? "nextPageToken") <*>+ (o .:? "kind" .!= "books#volumeannotations")+ <*> (o .:? "items" .!= mempty)+ <*> (o .:? "version"))++instance ToJSON Volumeannotations where+ toJSON Volumeannotations'{..}+ = object+ (catMaybes+ [("totalItems" .=) <$> _vTotalItems,+ ("nextPageToken" .=) <$> _vNextPageToken,+ Just ("kind" .= _vKind), ("items" .=) <$> _vItems,+ ("version" .=) <$> _vVersion])++-- | Information regarding the source of this review, when the review is not+-- from a Google Books user.+--+-- /See:/ 'reviewSource' smart constructor.+data ReviewSource = ReviewSource'+ { _rsExtraDescription :: !(Maybe Text)+ , _rsURL :: !(Maybe Text)+ , _rsDescription :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ReviewSource' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rsExtraDescription'+--+-- * 'rsURL'+--+-- * 'rsDescription'+reviewSource+ :: ReviewSource+reviewSource =+ ReviewSource'+ { _rsExtraDescription = Nothing+ , _rsURL = Nothing+ , _rsDescription = Nothing+ }++-- | Extra text about the source of the review.+rsExtraDescription :: Lens' ReviewSource (Maybe Text)+rsExtraDescription+ = lens _rsExtraDescription+ (\ s a -> s{_rsExtraDescription = a})++-- | URL of the source of the review.+rsURL :: Lens' ReviewSource (Maybe Text)+rsURL = lens _rsURL (\ s a -> s{_rsURL = a})++-- | Name of the source.+rsDescription :: Lens' ReviewSource (Maybe Text)+rsDescription+ = lens _rsDescription+ (\ s a -> s{_rsDescription = a})++instance FromJSON ReviewSource where+ parseJSON+ = withObject "ReviewSource"+ (\ o ->+ ReviewSource' <$>+ (o .:? "extraDescription") <*> (o .:? "url") <*>+ (o .:? "description"))++instance ToJSON ReviewSource where+ toJSON ReviewSource'{..}+ = object+ (catMaybes+ [("extraDescription" .=) <$> _rsExtraDescription,+ ("url" .=) <$> _rsURL,+ ("description" .=) <$> _rsDescription])++--+-- /See:/ 'annotationData' smart constructor.+data AnnotationData = AnnotationData'+ { _annEncodedData :: !(Maybe Base64)+ , _annKind :: !Text+ , _annData :: !(Maybe JSONValue)+ , _annSelfLink :: !(Maybe Text)+ , _annAnnotationType :: !(Maybe Text)+ , _annVolumeId :: !(Maybe Text)+ , _annId :: !(Maybe Text)+ , _annUpdated :: !(Maybe DateTime')+ , _annLayerId :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AnnotationData' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'annEncodedData'+--+-- * 'annKind'+--+-- * 'annData'+--+-- * 'annSelfLink'+--+-- * 'annAnnotationType'+--+-- * 'annVolumeId'+--+-- * 'annId'+--+-- * 'annUpdated'+--+-- * 'annLayerId'+annotationData+ :: AnnotationData+annotationData =+ AnnotationData'+ { _annEncodedData = Nothing+ , _annKind = "books#annotationdata"+ , _annData = Nothing+ , _annSelfLink = Nothing+ , _annAnnotationType = Nothing+ , _annVolumeId = Nothing+ , _annId = Nothing+ , _annUpdated = Nothing+ , _annLayerId = Nothing+ }++-- | Base64 encoded data for this annotation data.+annEncodedData :: Lens' AnnotationData (Maybe ByteString)+annEncodedData+ = lens _annEncodedData+ (\ s a -> s{_annEncodedData = a})+ . mapping _Base64++-- | Resource Type+annKind :: Lens' AnnotationData Text+annKind = lens _annKind (\ s a -> s{_annKind = a})++annData :: Lens' AnnotationData (Maybe JSONValue)+annData = lens _annData (\ s a -> s{_annData = a})++-- | URL for this resource. *+annSelfLink :: Lens' AnnotationData (Maybe Text)+annSelfLink+ = lens _annSelfLink (\ s a -> s{_annSelfLink = a})++-- | The type of annotation this data is for.+annAnnotationType :: Lens' AnnotationData (Maybe Text)+annAnnotationType+ = lens _annAnnotationType+ (\ s a -> s{_annAnnotationType = a})++-- | The volume id for this data. *+annVolumeId :: Lens' AnnotationData (Maybe Text)+annVolumeId+ = lens _annVolumeId (\ s a -> s{_annVolumeId = a})++-- | Unique id for this annotation data.+annId :: Lens' AnnotationData (Maybe Text)+annId = lens _annId (\ s a -> s{_annId = a})++-- | Timestamp for the last time this data was updated. (RFC 3339 UTC+-- date-time format).+annUpdated :: Lens' AnnotationData (Maybe UTCTime)+annUpdated+ = lens _annUpdated (\ s a -> s{_annUpdated = a}) .+ mapping _DateTime++-- | The Layer id for this data. *+annLayerId :: Lens' AnnotationData (Maybe Text)+annLayerId+ = lens _annLayerId (\ s a -> s{_annLayerId = a})++instance FromJSON AnnotationData where+ parseJSON+ = withObject "AnnotationData"+ (\ o ->+ AnnotationData' <$>+ (o .:? "encoded_data") <*>+ (o .:? "kind" .!= "books#annotationdata")+ <*> (o .:? "data")+ <*> (o .:? "selfLink")+ <*> (o .:? "annotationType")+ <*> (o .:? "volumeId")+ <*> (o .:? "id")+ <*> (o .:? "updated")+ <*> (o .:? "layerId"))++instance ToJSON AnnotationData where+ toJSON AnnotationData'{..}+ = object+ (catMaybes+ [("encoded_data" .=) <$> _annEncodedData,+ Just ("kind" .= _annKind), ("data" .=) <$> _annData,+ ("selfLink" .=) <$> _annSelfLink,+ ("annotationType" .=) <$> _annAnnotationType,+ ("volumeId" .=) <$> _annVolumeId,+ ("id" .=) <$> _annId, ("updated" .=) <$> _annUpdated,+ ("layerId" .=) <$> _annLayerId])++--+-- /See:/ 'volumeannotation' smart constructor.+data Volumeannotation = Volumeannotation'+ { _volSelectedText :: !(Maybe Text)+ , _volAnnotationDataLink :: !(Maybe Text)+ , _volPageIds :: !(Maybe [Text])+ , _volKind :: !Text+ , _volData :: !(Maybe Text)+ , _volSelfLink :: !(Maybe Text)+ , _volAnnotationType :: !(Maybe Text)+ , _volAnnotationDataId :: !(Maybe Text)+ , _volContentRanges :: !(Maybe VolumeannotationContentRanges)+ , _volVolumeId :: !(Maybe Text)+ , _volId :: !(Maybe Text)+ , _volDeleted :: !(Maybe Bool)+ , _volUpdated :: !(Maybe DateTime')+ , _volLayerId :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Volumeannotation' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'volSelectedText'+--+-- * 'volAnnotationDataLink'+--+-- * 'volPageIds'+--+-- * 'volKind'+--+-- * 'volData'+--+-- * 'volSelfLink'+--+-- * 'volAnnotationType'+--+-- * 'volAnnotationDataId'+--+-- * 'volContentRanges'+--+-- * 'volVolumeId'+--+-- * 'volId'+--+-- * 'volDeleted'+--+-- * 'volUpdated'+--+-- * 'volLayerId'+volumeannotation+ :: Volumeannotation+volumeannotation =+ Volumeannotation'+ { _volSelectedText = Nothing+ , _volAnnotationDataLink = Nothing+ , _volPageIds = Nothing+ , _volKind = "books#volumeannotation"+ , _volData = Nothing+ , _volSelfLink = Nothing+ , _volAnnotationType = Nothing+ , _volAnnotationDataId = Nothing+ , _volContentRanges = Nothing+ , _volVolumeId = Nothing+ , _volId = Nothing+ , _volDeleted = Nothing+ , _volUpdated = Nothing+ , _volLayerId = Nothing+ }++-- | Excerpt from the volume.+volSelectedText :: Lens' Volumeannotation (Maybe Text)+volSelectedText+ = lens _volSelectedText+ (\ s a -> s{_volSelectedText = a})++-- | Link to get data for this annotation.+volAnnotationDataLink :: Lens' Volumeannotation (Maybe Text)+volAnnotationDataLink+ = lens _volAnnotationDataLink+ (\ s a -> s{_volAnnotationDataLink = a})++-- | Pages the annotation spans.+volPageIds :: Lens' Volumeannotation [Text]+volPageIds+ = lens _volPageIds (\ s a -> s{_volPageIds = a}) .+ _Default+ . _Coerce++-- | Resource Type+volKind :: Lens' Volumeannotation Text+volKind = lens _volKind (\ s a -> s{_volKind = a})++-- | Data for this annotation.+volData :: Lens' Volumeannotation (Maybe Text)+volData = lens _volData (\ s a -> s{_volData = a})++-- | URL to this resource.+volSelfLink :: Lens' Volumeannotation (Maybe Text)+volSelfLink+ = lens _volSelfLink (\ s a -> s{_volSelfLink = a})++-- | The type of annotation this is.+volAnnotationType :: Lens' Volumeannotation (Maybe Text)+volAnnotationType+ = lens _volAnnotationType+ (\ s a -> s{_volAnnotationType = a})++-- | The annotation data id for this volume annotation.+volAnnotationDataId :: Lens' Volumeannotation (Maybe Text)+volAnnotationDataId+ = lens _volAnnotationDataId+ (\ s a -> s{_volAnnotationDataId = a})++-- | The content ranges to identify the selected text.+volContentRanges :: Lens' Volumeannotation (Maybe VolumeannotationContentRanges)+volContentRanges+ = lens _volContentRanges+ (\ s a -> s{_volContentRanges = a})++-- | The Volume this annotation is for.+volVolumeId :: Lens' Volumeannotation (Maybe Text)+volVolumeId+ = lens _volVolumeId (\ s a -> s{_volVolumeId = a})++-- | Unique id of this volume annotation.+volId :: Lens' Volumeannotation (Maybe Text)+volId = lens _volId (\ s a -> s{_volId = a})++-- | Indicates that this annotation is deleted.+volDeleted :: Lens' Volumeannotation (Maybe Bool)+volDeleted+ = lens _volDeleted (\ s a -> s{_volDeleted = a})++-- | Timestamp for the last time this anntoation was updated. (RFC 3339 UTC+-- date-time format).+volUpdated :: Lens' Volumeannotation (Maybe UTCTime)+volUpdated+ = lens _volUpdated (\ s a -> s{_volUpdated = a}) .+ mapping _DateTime++-- | The Layer this annotation is for.+volLayerId :: Lens' Volumeannotation (Maybe Text)+volLayerId+ = lens _volLayerId (\ s a -> s{_volLayerId = a})++instance FromJSON Volumeannotation where+ parseJSON+ = withObject "Volumeannotation"+ (\ o ->+ Volumeannotation' <$>+ (o .:? "selectedText") <*>+ (o .:? "annotationDataLink")+ <*> (o .:? "pageIds" .!= mempty)+ <*> (o .:? "kind" .!= "books#volumeannotation")+ <*> (o .:? "data")+ <*> (o .:? "selfLink")+ <*> (o .:? "annotationType")+ <*> (o .:? "annotationDataId")+ <*> (o .:? "contentRanges")+ <*> (o .:? "volumeId")+ <*> (o .:? "id")+ <*> (o .:? "deleted")+ <*> (o .:? "updated")+ <*> (o .:? "layerId"))++instance ToJSON Volumeannotation where+ toJSON Volumeannotation'{..}+ = object+ (catMaybes+ [("selectedText" .=) <$> _volSelectedText,+ ("annotationDataLink" .=) <$> _volAnnotationDataLink,+ ("pageIds" .=) <$> _volPageIds,+ Just ("kind" .= _volKind), ("data" .=) <$> _volData,+ ("selfLink" .=) <$> _volSelfLink,+ ("annotationType" .=) <$> _volAnnotationType,+ ("annotationDataId" .=) <$> _volAnnotationDataId,+ ("contentRanges" .=) <$> _volContentRanges,+ ("volumeId" .=) <$> _volVolumeId,+ ("id" .=) <$> _volId, ("deleted" .=) <$> _volDeleted,+ ("updated" .=) <$> _volUpdated,+ ("layerId" .=) <$> _volLayerId])++--+-- /See:/ 'booksCloudLoadingResource' smart constructor.+data BooksCloudLoadingResource = BooksCloudLoadingResource'+ { _bclrProcessingState :: !(Maybe Text)+ , _bclrVolumeId :: !(Maybe Text)+ , _bclrAuthor :: !(Maybe Text)+ , _bclrTitle :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'BooksCloudLoadingResource' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'bclrProcessingState'+--+-- * 'bclrVolumeId'+--+-- * 'bclrAuthor'+--+-- * 'bclrTitle'+booksCloudLoadingResource+ :: BooksCloudLoadingResource+booksCloudLoadingResource =+ BooksCloudLoadingResource'+ { _bclrProcessingState = Nothing+ , _bclrVolumeId = Nothing+ , _bclrAuthor = Nothing+ , _bclrTitle = Nothing+ }++bclrProcessingState :: Lens' BooksCloudLoadingResource (Maybe Text)+bclrProcessingState+ = lens _bclrProcessingState+ (\ s a -> s{_bclrProcessingState = a})++bclrVolumeId :: Lens' BooksCloudLoadingResource (Maybe Text)+bclrVolumeId+ = lens _bclrVolumeId (\ s a -> s{_bclrVolumeId = a})++bclrAuthor :: Lens' BooksCloudLoadingResource (Maybe Text)+bclrAuthor+ = lens _bclrAuthor (\ s a -> s{_bclrAuthor = a})++bclrTitle :: Lens' BooksCloudLoadingResource (Maybe Text)+bclrTitle+ = lens _bclrTitle (\ s a -> s{_bclrTitle = a})++instance FromJSON BooksCloudLoadingResource where+ parseJSON+ = withObject "BooksCloudLoadingResource"+ (\ o ->+ BooksCloudLoadingResource' <$>+ (o .:? "processingState") <*> (o .:? "volumeId") <*>+ (o .:? "author")+ <*> (o .:? "title"))++instance ToJSON BooksCloudLoadingResource where+ toJSON BooksCloudLoadingResource'{..}+ = object+ (catMaybes+ [("processingState" .=) <$> _bclrProcessingState,+ ("volumeId" .=) <$> _bclrVolumeId,+ ("author" .=) <$> _bclrAuthor,+ ("title" .=) <$> _bclrTitle])++--+-- /See:/ 'volumeseriesInfoVolumeSeriesItemIssueItem' smart constructor.+data VolumeseriesInfoVolumeSeriesItemIssueItem = VolumeseriesInfoVolumeSeriesItemIssueItem'+ { _vivsiiiIssueOrderNumber :: !(Maybe (Textual Int32))+ , _vivsiiiIssueDisplayNumber :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'VolumeseriesInfoVolumeSeriesItemIssueItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vivsiiiIssueOrderNumber'+--+-- * 'vivsiiiIssueDisplayNumber'+volumeseriesInfoVolumeSeriesItemIssueItem+ :: VolumeseriesInfoVolumeSeriesItemIssueItem+volumeseriesInfoVolumeSeriesItemIssueItem =+ VolumeseriesInfoVolumeSeriesItemIssueItem'+ { _vivsiiiIssueOrderNumber = Nothing+ , _vivsiiiIssueDisplayNumber = Nothing+ }++vivsiiiIssueOrderNumber :: Lens' VolumeseriesInfoVolumeSeriesItemIssueItem (Maybe Int32)+vivsiiiIssueOrderNumber+ = lens _vivsiiiIssueOrderNumber+ (\ s a -> s{_vivsiiiIssueOrderNumber = a})+ . mapping _Coerce++vivsiiiIssueDisplayNumber :: Lens' VolumeseriesInfoVolumeSeriesItemIssueItem (Maybe Text)+vivsiiiIssueDisplayNumber+ = lens _vivsiiiIssueDisplayNumber+ (\ s a -> s{_vivsiiiIssueDisplayNumber = a})++instance FromJSON+ VolumeseriesInfoVolumeSeriesItemIssueItem where+ parseJSON+ = withObject+ "VolumeseriesInfoVolumeSeriesItemIssueItem"+ (\ o ->+ VolumeseriesInfoVolumeSeriesItemIssueItem' <$>+ (o .:? "issueOrderNumber") <*>+ (o .:? "issueDisplayNumber"))++instance ToJSON+ VolumeseriesInfoVolumeSeriesItemIssueItem where+ toJSON VolumeseriesInfoVolumeSeriesItemIssueItem'{..}+ = object+ (catMaybes+ [("issueOrderNumber" .=) <$>+ _vivsiiiIssueOrderNumber,+ ("issueDisplayNumber" .=) <$>+ _vivsiiiIssueDisplayNumber])++--+-- /See:/ 'annotation' smart constructor.+data Annotation = Annotation'+ { _aaSelectedText :: !(Maybe Text)+ , _aaLayerSummary :: !(Maybe AnnotationLayerSummary)+ , _aaHighlightStyle :: !(Maybe Text)+ , _aaClientVersionRanges :: !(Maybe AnnotationClientVersionRanges)+ , _aaPageIds :: !(Maybe [Text])+ , _aaKind :: !Text+ , _aaData :: !(Maybe Text)+ , _aaCreated :: !(Maybe DateTime')+ , _aaAfterSelectedText :: !(Maybe Text)+ , _aaSelfLink :: !(Maybe Text)+ , _aaCurrentVersionRanges :: !(Maybe AnnotationCurrentVersionRanges)+ , _aaVolumeId :: !(Maybe Text)+ , _aaBeforeSelectedText :: !(Maybe Text)+ , _aaId :: !(Maybe Text)+ , _aaDeleted :: !(Maybe Bool)+ , _aaUpdated :: !(Maybe DateTime')+ , _aaLayerId :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Annotation' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aaSelectedText'+--+-- * 'aaLayerSummary'+--+-- * 'aaHighlightStyle'+--+-- * 'aaClientVersionRanges'+--+-- * 'aaPageIds'+--+-- * 'aaKind'+--+-- * 'aaData'+--+-- * 'aaCreated'+--+-- * 'aaAfterSelectedText'+--+-- * 'aaSelfLink'+--+-- * 'aaCurrentVersionRanges'+--+-- * 'aaVolumeId'+--+-- * 'aaBeforeSelectedText'+--+-- * 'aaId'+--+-- * 'aaDeleted'+--+-- * 'aaUpdated'+--+-- * 'aaLayerId'+annotation+ :: Annotation+annotation =+ Annotation'+ { _aaSelectedText = Nothing+ , _aaLayerSummary = Nothing+ , _aaHighlightStyle = Nothing+ , _aaClientVersionRanges = Nothing+ , _aaPageIds = Nothing+ , _aaKind = "books#annotation"+ , _aaData = Nothing+ , _aaCreated = Nothing+ , _aaAfterSelectedText = Nothing+ , _aaSelfLink = Nothing+ , _aaCurrentVersionRanges = Nothing+ , _aaVolumeId = Nothing+ , _aaBeforeSelectedText = Nothing+ , _aaId = Nothing+ , _aaDeleted = Nothing+ , _aaUpdated = Nothing+ , _aaLayerId = Nothing+ }++-- | Excerpt from the volume.+aaSelectedText :: Lens' Annotation (Maybe Text)+aaSelectedText+ = lens _aaSelectedText+ (\ s a -> s{_aaSelectedText = a})++aaLayerSummary :: Lens' Annotation (Maybe AnnotationLayerSummary)+aaLayerSummary+ = lens _aaLayerSummary+ (\ s a -> s{_aaLayerSummary = a})++-- | The highlight style for this annotation.+aaHighlightStyle :: Lens' Annotation (Maybe Text)+aaHighlightStyle+ = lens _aaHighlightStyle+ (\ s a -> s{_aaHighlightStyle = a})++-- | Selection ranges sent from the client.+aaClientVersionRanges :: Lens' Annotation (Maybe AnnotationClientVersionRanges)+aaClientVersionRanges+ = lens _aaClientVersionRanges+ (\ s a -> s{_aaClientVersionRanges = a})++-- | Pages that this annotation spans.+aaPageIds :: Lens' Annotation [Text]+aaPageIds+ = lens _aaPageIds (\ s a -> s{_aaPageIds = a}) .+ _Default+ . _Coerce++-- | Resource type.+aaKind :: Lens' Annotation Text+aaKind = lens _aaKind (\ s a -> s{_aaKind = a})++-- | User-created data for this annotation.+aaData :: Lens' Annotation (Maybe Text)+aaData = lens _aaData (\ s a -> s{_aaData = a})++-- | Timestamp for the created time of this annotation.+aaCreated :: Lens' Annotation (Maybe UTCTime)+aaCreated+ = lens _aaCreated (\ s a -> s{_aaCreated = a}) .+ mapping _DateTime++-- | Anchor text after excerpt. For requests, if the user bookmarked a screen+-- that has no flowing text on it, then this field should be empty.+aaAfterSelectedText :: Lens' Annotation (Maybe Text)+aaAfterSelectedText+ = lens _aaAfterSelectedText+ (\ s a -> s{_aaAfterSelectedText = a})++-- | URL to this resource.+aaSelfLink :: Lens' Annotation (Maybe Text)+aaSelfLink+ = lens _aaSelfLink (\ s a -> s{_aaSelfLink = a})++-- | Selection ranges for the most recent content version.+aaCurrentVersionRanges :: Lens' Annotation (Maybe AnnotationCurrentVersionRanges)+aaCurrentVersionRanges+ = lens _aaCurrentVersionRanges+ (\ s a -> s{_aaCurrentVersionRanges = a})++-- | The volume that this annotation belongs to.+aaVolumeId :: Lens' Annotation (Maybe Text)+aaVolumeId+ = lens _aaVolumeId (\ s a -> s{_aaVolumeId = a})++-- | Anchor text before excerpt. For requests, if the user bookmarked a+-- screen that has no flowing text on it, then this field should be empty.+aaBeforeSelectedText :: Lens' Annotation (Maybe Text)+aaBeforeSelectedText+ = lens _aaBeforeSelectedText+ (\ s a -> s{_aaBeforeSelectedText = a})++-- | Id of this annotation, in the form of a GUID.+aaId :: Lens' Annotation (Maybe Text)+aaId = lens _aaId (\ s a -> s{_aaId = a})++-- | Indicates that this annotation is deleted.+aaDeleted :: Lens' Annotation (Maybe Bool)+aaDeleted+ = lens _aaDeleted (\ s a -> s{_aaDeleted = a})++-- | Timestamp for the last time this annotation was modified.+aaUpdated :: Lens' Annotation (Maybe UTCTime)+aaUpdated+ = lens _aaUpdated (\ s a -> s{_aaUpdated = a}) .+ mapping _DateTime++-- | The layer this annotation is for.+aaLayerId :: Lens' Annotation (Maybe Text)+aaLayerId+ = lens _aaLayerId (\ s a -> s{_aaLayerId = a})++instance FromJSON Annotation where+ parseJSON+ = withObject "Annotation"+ (\ o ->+ Annotation' <$>+ (o .:? "selectedText") <*> (o .:? "layerSummary") <*>+ (o .:? "highlightStyle")+ <*> (o .:? "clientVersionRanges")+ <*> (o .:? "pageIds" .!= mempty)+ <*> (o .:? "kind" .!= "books#annotation")+ <*> (o .:? "data")+ <*> (o .:? "created")+ <*> (o .:? "afterSelectedText")+ <*> (o .:? "selfLink")+ <*> (o .:? "currentVersionRanges")+ <*> (o .:? "volumeId")+ <*> (o .:? "beforeSelectedText")+ <*> (o .:? "id")+ <*> (o .:? "deleted")+ <*> (o .:? "updated")+ <*> (o .:? "layerId"))++instance ToJSON Annotation where+ toJSON Annotation'{..}+ = object+ (catMaybes+ [("selectedText" .=) <$> _aaSelectedText,+ ("layerSummary" .=) <$> _aaLayerSummary,+ ("highlightStyle" .=) <$> _aaHighlightStyle,+ ("clientVersionRanges" .=) <$>+ _aaClientVersionRanges,+ ("pageIds" .=) <$> _aaPageIds,+ Just ("kind" .= _aaKind), ("data" .=) <$> _aaData,+ ("created" .=) <$> _aaCreated,+ ("afterSelectedText" .=) <$> _aaAfterSelectedText,+ ("selfLink" .=) <$> _aaSelfLink,+ ("currentVersionRanges" .=) <$>+ _aaCurrentVersionRanges,+ ("volumeId" .=) <$> _aaVolumeId,+ ("beforeSelectedText" .=) <$> _aaBeforeSelectedText,+ ("id" .=) <$> _aaId, ("deleted" .=) <$> _aaDeleted,+ ("updated" .=) <$> _aaUpdated,+ ("layerId" .=) <$> _aaLayerId])++-- | Author of this review.+--+-- /See:/ 'reviewAuthor' smart constructor.+newtype ReviewAuthor = ReviewAuthor'+ { _raDisplayName :: Maybe Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ReviewAuthor' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'raDisplayName'+reviewAuthor+ :: ReviewAuthor+reviewAuthor =+ ReviewAuthor'+ { _raDisplayName = Nothing+ }++-- | Name of this person.+raDisplayName :: Lens' ReviewAuthor (Maybe Text)+raDisplayName+ = lens _raDisplayName+ (\ s a -> s{_raDisplayName = a})++instance FromJSON ReviewAuthor where+ parseJSON+ = withObject "ReviewAuthor"+ (\ o -> ReviewAuthor' <$> (o .:? "displayName"))++instance ToJSON ReviewAuthor where+ toJSON ReviewAuthor'{..}+ = object+ (catMaybes [("displayName" .=) <$> _raDisplayName])++-- | The viewport for showing this location. This is a latitude, longitude+-- rectangle.+--+-- /See:/ 'geolayerDataGeoViewport' smart constructor.+data GeolayerDataGeoViewport = GeolayerDataGeoViewport'+ { _gdgvHi :: !(Maybe GeolayerDataGeoViewportHi)+ , _gdgvLo :: !(Maybe GeolayerDataGeoViewportLo)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'GeolayerDataGeoViewport' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gdgvHi'+--+-- * 'gdgvLo'+geolayerDataGeoViewport+ :: GeolayerDataGeoViewport+geolayerDataGeoViewport =+ GeolayerDataGeoViewport'+ { _gdgvHi = Nothing+ , _gdgvLo = Nothing+ }++gdgvHi :: Lens' GeolayerDataGeoViewport (Maybe GeolayerDataGeoViewportHi)+gdgvHi = lens _gdgvHi (\ s a -> s{_gdgvHi = a})++gdgvLo :: Lens' GeolayerDataGeoViewport (Maybe GeolayerDataGeoViewportLo)+gdgvLo = lens _gdgvLo (\ s a -> s{_gdgvLo = a})++instance FromJSON GeolayerDataGeoViewport where+ parseJSON+ = withObject "GeolayerDataGeoViewport"+ (\ o ->+ GeolayerDataGeoViewport' <$>+ (o .:? "hi") <*> (o .:? "lo"))++instance ToJSON GeolayerDataGeoViewport where+ toJSON GeolayerDataGeoViewport'{..}+ = object+ (catMaybes+ [("hi" .=) <$> _gdgvHi, ("lo" .=) <$> _gdgvLo])++-- | User specific information related to this volume. (e.g. page this user+-- last read or whether they purchased this book)+--+-- /See:/ 'volumeUserInfo' smart constructor.+data VolumeUserInfo = VolumeUserInfo'+ { _vuiIsFamilySharingAllowed :: !(Maybe Bool)+ , _vuiIsFamilySharedToUser :: !(Maybe Bool)+ , _vuiCopy :: !(Maybe VolumeUserInfoCopy)+ , _vuiUserUploadedVolumeInfo :: !(Maybe VolumeUserInfoUserUploadedVolumeInfo)+ , _vuiIsPurchased :: !(Maybe Bool)+ , _vuiEntitlementType :: !(Maybe (Textual Int32))+ , _vuiAcquisitionType :: !(Maybe (Textual Int32))+ , _vuiAcquiredTime :: !(Maybe DateTime')+ , _vuiRentalState :: !(Maybe Text)+ , _vuiIsPreOrdered :: !(Maybe Bool)+ , _vuiReview :: !(Maybe Review)+ , _vuiIsFamilySharedFromUser :: !(Maybe Bool)+ , _vuiRentalPeriod :: !(Maybe VolumeUserInfoRentalPeriod)+ , _vuiUpdated :: !(Maybe DateTime')+ , _vuiIsUploaded :: !(Maybe Bool)+ , _vuiIsInMyBooks :: !(Maybe Bool)+ , _vuiReadingPosition :: !(Maybe ReadingPosition)+ , _vuiFamilySharing :: !(Maybe VolumeUserInfoFamilySharing)+ , _vuiIsFamilySharingDisabledByFop :: !(Maybe Bool)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'VolumeUserInfo' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vuiIsFamilySharingAllowed'+--+-- * 'vuiIsFamilySharedToUser'+--+-- * 'vuiCopy'+--+-- * 'vuiUserUploadedVolumeInfo'+--+-- * 'vuiIsPurchased'+--+-- * 'vuiEntitlementType'+--+-- * 'vuiAcquisitionType'+--+-- * 'vuiAcquiredTime'+--+-- * 'vuiRentalState'+--+-- * 'vuiIsPreOrdered'+--+-- * 'vuiReview'+--+-- * 'vuiIsFamilySharedFromUser'+--+-- * 'vuiRentalPeriod'+--+-- * 'vuiUpdated'+--+-- * 'vuiIsUploaded'+--+-- * 'vuiIsInMyBooks'+--+-- * 'vuiReadingPosition'+--+-- * 'vuiFamilySharing'+--+-- * 'vuiIsFamilySharingDisabledByFop'+volumeUserInfo+ :: VolumeUserInfo+volumeUserInfo =+ VolumeUserInfo'+ { _vuiIsFamilySharingAllowed = Nothing+ , _vuiIsFamilySharedToUser = Nothing+ , _vuiCopy = Nothing+ , _vuiUserUploadedVolumeInfo = Nothing+ , _vuiIsPurchased = Nothing+ , _vuiEntitlementType = Nothing+ , _vuiAcquisitionType = Nothing+ , _vuiAcquiredTime = Nothing+ , _vuiRentalState = Nothing+ , _vuiIsPreOrdered = Nothing+ , _vuiReview = Nothing+ , _vuiIsFamilySharedFromUser = Nothing+ , _vuiRentalPeriod = Nothing+ , _vuiUpdated = Nothing+ , _vuiIsUploaded = Nothing+ , _vuiIsInMyBooks = Nothing+ , _vuiReadingPosition = Nothing+ , _vuiFamilySharing = Nothing+ , _vuiIsFamilySharingDisabledByFop = Nothing+ }++-- | Deprecated: Replaced by familySharing.+vuiIsFamilySharingAllowed :: Lens' VolumeUserInfo (Maybe Bool)+vuiIsFamilySharingAllowed+ = lens _vuiIsFamilySharingAllowed+ (\ s a -> s{_vuiIsFamilySharingAllowed = a})++-- | Whether or not the user received this volume through family sharing.+vuiIsFamilySharedToUser :: Lens' VolumeUserInfo (Maybe Bool)+vuiIsFamilySharedToUser+ = lens _vuiIsFamilySharedToUser+ (\ s a -> s{_vuiIsFamilySharedToUser = a})++-- | Copy\/Paste accounting information.+vuiCopy :: Lens' VolumeUserInfo (Maybe VolumeUserInfoCopy)+vuiCopy = lens _vuiCopy (\ s a -> s{_vuiCopy = a})++vuiUserUploadedVolumeInfo :: Lens' VolumeUserInfo (Maybe VolumeUserInfoUserUploadedVolumeInfo)+vuiUserUploadedVolumeInfo+ = lens _vuiUserUploadedVolumeInfo+ (\ s a -> s{_vuiUserUploadedVolumeInfo = a})++-- | Whether or not this volume was purchased by the authenticated user+-- making the request. (In LITE projection.)+vuiIsPurchased :: Lens' VolumeUserInfo (Maybe Bool)+vuiIsPurchased+ = lens _vuiIsPurchased+ (\ s a -> s{_vuiIsPurchased = a})++-- | Whether this volume is purchased, sample, pd download etc.+vuiEntitlementType :: Lens' VolumeUserInfo (Maybe Int32)+vuiEntitlementType+ = lens _vuiEntitlementType+ (\ s a -> s{_vuiEntitlementType = a})+ . mapping _Coerce++-- | How this volume was acquired.+vuiAcquisitionType :: Lens' VolumeUserInfo (Maybe Int32)+vuiAcquisitionType+ = lens _vuiAcquisitionType+ (\ s a -> s{_vuiAcquisitionType = a})+ . mapping _Coerce++-- | Timestamp when this volume was acquired by the user. (RFC 3339 UTC+-- date-time format) Acquiring includes purchase, user upload, receiving+-- family sharing, etc.+vuiAcquiredTime :: Lens' VolumeUserInfo (Maybe UTCTime)+vuiAcquiredTime+ = lens _vuiAcquiredTime+ (\ s a -> s{_vuiAcquiredTime = a})+ . mapping _DateTime++-- | Whether this book is an active or an expired rental.+vuiRentalState :: Lens' VolumeUserInfo (Maybe Text)+vuiRentalState+ = lens _vuiRentalState+ (\ s a -> s{_vuiRentalState = a})++-- | Whether or not this volume was pre-ordered by the authenticated user+-- making the request. (In LITE projection.)+vuiIsPreOrdered :: Lens' VolumeUserInfo (Maybe Bool)+vuiIsPreOrdered+ = lens _vuiIsPreOrdered+ (\ s a -> s{_vuiIsPreOrdered = a})++-- | This user\'s review of this volume, if one exists.+vuiReview :: Lens' VolumeUserInfo (Maybe Review)+vuiReview+ = lens _vuiReview (\ s a -> s{_vuiReview = a})++-- | Whether or not the user shared this volume with the family.+vuiIsFamilySharedFromUser :: Lens' VolumeUserInfo (Maybe Bool)+vuiIsFamilySharedFromUser+ = lens _vuiIsFamilySharedFromUser+ (\ s a -> s{_vuiIsFamilySharedFromUser = a})++-- | Period during this book is\/was a valid rental.+vuiRentalPeriod :: Lens' VolumeUserInfo (Maybe VolumeUserInfoRentalPeriod)+vuiRentalPeriod+ = lens _vuiRentalPeriod+ (\ s a -> s{_vuiRentalPeriod = a})++-- | Timestamp when this volume was last modified by a user action, such as a+-- reading position update, volume purchase or writing a review. (RFC 3339+-- UTC date-time format).+vuiUpdated :: Lens' VolumeUserInfo (Maybe UTCTime)+vuiUpdated+ = lens _vuiUpdated (\ s a -> s{_vuiUpdated = a}) .+ mapping _DateTime++-- | Whether or not this volume was user uploaded.+vuiIsUploaded :: Lens' VolumeUserInfo (Maybe Bool)+vuiIsUploaded+ = lens _vuiIsUploaded+ (\ s a -> s{_vuiIsUploaded = a})++-- | Whether or not this volume is currently in \"my books.\"+vuiIsInMyBooks :: Lens' VolumeUserInfo (Maybe Bool)+vuiIsInMyBooks+ = lens _vuiIsInMyBooks+ (\ s a -> s{_vuiIsInMyBooks = a})++-- | The user\'s current reading position in the volume, if one is available.+-- (In LITE projection.)+vuiReadingPosition :: Lens' VolumeUserInfo (Maybe ReadingPosition)+vuiReadingPosition+ = lens _vuiReadingPosition+ (\ s a -> s{_vuiReadingPosition = a})++-- | Information on the ability to share with the family.+vuiFamilySharing :: Lens' VolumeUserInfo (Maybe VolumeUserInfoFamilySharing)+vuiFamilySharing+ = lens _vuiFamilySharing+ (\ s a -> s{_vuiFamilySharing = a})++-- | Deprecated: Replaced by familySharing.+vuiIsFamilySharingDisabledByFop :: Lens' VolumeUserInfo (Maybe Bool)+vuiIsFamilySharingDisabledByFop+ = lens _vuiIsFamilySharingDisabledByFop+ (\ s a -> s{_vuiIsFamilySharingDisabledByFop = a})++instance FromJSON VolumeUserInfo where+ parseJSON+ = withObject "VolumeUserInfo"+ (\ o ->+ VolumeUserInfo' <$>+ (o .:? "isFamilySharingAllowed") <*>+ (o .:? "isFamilySharedToUser")+ <*> (o .:? "copy")+ <*> (o .:? "userUploadedVolumeInfo")+ <*> (o .:? "isPurchased")+ <*> (o .:? "entitlementType")+ <*> (o .:? "acquisitionType")+ <*> (o .:? "acquiredTime")+ <*> (o .:? "rentalState")+ <*> (o .:? "isPreordered")+ <*> (o .:? "review")+ <*> (o .:? "isFamilySharedFromUser")+ <*> (o .:? "rentalPeriod")+ <*> (o .:? "updated")+ <*> (o .:? "isUploaded")+ <*> (o .:? "isInMyBooks")+ <*> (o .:? "readingPosition")+ <*> (o .:? "familySharing")+ <*> (o .:? "isFamilySharingDisabledByFop"))++instance ToJSON VolumeUserInfo where+ toJSON VolumeUserInfo'{..}+ = object+ (catMaybes+ [("isFamilySharingAllowed" .=) <$>+ _vuiIsFamilySharingAllowed,+ ("isFamilySharedToUser" .=) <$>+ _vuiIsFamilySharedToUser,+ ("copy" .=) <$> _vuiCopy,+ ("userUploadedVolumeInfo" .=) <$>+ _vuiUserUploadedVolumeInfo,+ ("isPurchased" .=) <$> _vuiIsPurchased,+ ("entitlementType" .=) <$> _vuiEntitlementType,+ ("acquisitionType" .=) <$> _vuiAcquisitionType,+ ("acquiredTime" .=) <$> _vuiAcquiredTime,+ ("rentalState" .=) <$> _vuiRentalState,+ ("isPreordered" .=) <$> _vuiIsPreOrdered,+ ("review" .=) <$> _vuiReview,+ ("isFamilySharedFromUser" .=) <$>+ _vuiIsFamilySharedFromUser,+ ("rentalPeriod" .=) <$> _vuiRentalPeriod,+ ("updated" .=) <$> _vuiUpdated,+ ("isUploaded" .=) <$> _vuiIsUploaded,+ ("isInMyBooks" .=) <$> _vuiIsInMyBooks,+ ("readingPosition" .=) <$> _vuiReadingPosition,+ ("familySharing" .=) <$> _vuiFamilySharing,+ ("isFamilySharingDisabledByFop" .=) <$>+ _vuiIsFamilySharingDisabledByFop])++--+-- /See:/ 'layersummary' smart constructor.+data Layersummary = Layersummary'+ { _lAnnotationsDataLink :: !(Maybe Text)+ , _lAnnotationsLink :: !(Maybe Text)+ , _lKind :: !Text+ , _lDataCount :: !(Maybe (Textual Int32))+ , _lContentVersion :: !(Maybe Text)+ , _lVolumeAnnotationsVersion :: !(Maybe Text)+ , _lAnnotationCount :: !(Maybe (Textual Int32))+ , _lAnnotationTypes :: !(Maybe [Text])+ , _lSelfLink :: !(Maybe Text)+ , _lVolumeId :: !(Maybe Text)+ , _lId :: !(Maybe Text)+ , _lUpdated :: !(Maybe DateTime')+ , _lLayerId :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Layersummary' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lAnnotationsDataLink'+--+-- * 'lAnnotationsLink'+--+-- * 'lKind'+--+-- * 'lDataCount'+--+-- * 'lContentVersion'+--+-- * 'lVolumeAnnotationsVersion'+--+-- * 'lAnnotationCount'+--+-- * 'lAnnotationTypes'+--+-- * 'lSelfLink'+--+-- * 'lVolumeId'+--+-- * 'lId'+--+-- * 'lUpdated'+--+-- * 'lLayerId'+layersummary+ :: Layersummary+layersummary =+ Layersummary'+ { _lAnnotationsDataLink = Nothing+ , _lAnnotationsLink = Nothing+ , _lKind = "books#layersummary"+ , _lDataCount = Nothing+ , _lContentVersion = Nothing+ , _lVolumeAnnotationsVersion = Nothing+ , _lAnnotationCount = Nothing+ , _lAnnotationTypes = Nothing+ , _lSelfLink = Nothing+ , _lVolumeId = Nothing+ , _lId = Nothing+ , _lUpdated = Nothing+ , _lLayerId = Nothing+ }++-- | Link to get data for this annotation.+lAnnotationsDataLink :: Lens' Layersummary (Maybe Text)+lAnnotationsDataLink+ = lens _lAnnotationsDataLink+ (\ s a -> s{_lAnnotationsDataLink = a})++-- | The link to get the annotations for this layer.+lAnnotationsLink :: Lens' Layersummary (Maybe Text)+lAnnotationsLink+ = lens _lAnnotationsLink+ (\ s a -> s{_lAnnotationsLink = a})++-- | Resource Type+lKind :: Lens' Layersummary Text+lKind = lens _lKind (\ s a -> s{_lKind = a})++-- | The number of data items for this layer.+lDataCount :: Lens' Layersummary (Maybe Int32)+lDataCount+ = lens _lDataCount (\ s a -> s{_lDataCount = a}) .+ mapping _Coerce++-- | The content version this resource is for.+lContentVersion :: Lens' Layersummary (Maybe Text)+lContentVersion+ = lens _lContentVersion+ (\ s a -> s{_lContentVersion = a})++-- | The current version of this layer\'s volume annotations. Note that this+-- version applies only to the data in the books.layers.volumeAnnotations.*+-- responses. The actual annotation data is versioned separately.+lVolumeAnnotationsVersion :: Lens' Layersummary (Maybe Text)+lVolumeAnnotationsVersion+ = lens _lVolumeAnnotationsVersion+ (\ s a -> s{_lVolumeAnnotationsVersion = a})++-- | The number of annotations for this layer.+lAnnotationCount :: Lens' Layersummary (Maybe Int32)+lAnnotationCount+ = lens _lAnnotationCount+ (\ s a -> s{_lAnnotationCount = a})+ . mapping _Coerce++-- | The list of annotation types contained for this layer.+lAnnotationTypes :: Lens' Layersummary [Text]+lAnnotationTypes+ = lens _lAnnotationTypes+ (\ s a -> s{_lAnnotationTypes = a})+ . _Default+ . _Coerce++-- | URL to this resource.+lSelfLink :: Lens' Layersummary (Maybe Text)+lSelfLink+ = lens _lSelfLink (\ s a -> s{_lSelfLink = a})++-- | The volume id this resource is for.+lVolumeId :: Lens' Layersummary (Maybe Text)+lVolumeId+ = lens _lVolumeId (\ s a -> s{_lVolumeId = a})++-- | Unique id of this layer summary.+lId :: Lens' Layersummary (Maybe Text)+lId = lens _lId (\ s a -> s{_lId = a})++-- | Timestamp for the last time an item in this layer was updated. (RFC 3339+-- UTC date-time format).+lUpdated :: Lens' Layersummary (Maybe UTCTime)+lUpdated+ = lens _lUpdated (\ s a -> s{_lUpdated = a}) .+ mapping _DateTime++-- | The layer id for this summary.+lLayerId :: Lens' Layersummary (Maybe Text)+lLayerId = lens _lLayerId (\ s a -> s{_lLayerId = a})++instance FromJSON Layersummary where+ parseJSON+ = withObject "Layersummary"+ (\ o ->+ Layersummary' <$>+ (o .:? "annotationsDataLink") <*>+ (o .:? "annotationsLink")+ <*> (o .:? "kind" .!= "books#layersummary")+ <*> (o .:? "dataCount")+ <*> (o .:? "contentVersion")+ <*> (o .:? "volumeAnnotationsVersion")+ <*> (o .:? "annotationCount")+ <*> (o .:? "annotationTypes" .!= mempty)+ <*> (o .:? "selfLink")+ <*> (o .:? "volumeId")+ <*> (o .:? "id")+ <*> (o .:? "updated")+ <*> (o .:? "layerId"))++instance ToJSON Layersummary where+ toJSON Layersummary'{..}+ = object+ (catMaybes+ [("annotationsDataLink" .=) <$>+ _lAnnotationsDataLink,+ ("annotationsLink" .=) <$> _lAnnotationsLink,+ Just ("kind" .= _lKind),+ ("dataCount" .=) <$> _lDataCount,+ ("contentVersion" .=) <$> _lContentVersion,+ ("volumeAnnotationsVersion" .=) <$>+ _lVolumeAnnotationsVersion,+ ("annotationCount" .=) <$> _lAnnotationCount,+ ("annotationTypes" .=) <$> _lAnnotationTypes,+ ("selfLink" .=) <$> _lSelfLink,+ ("volumeId" .=) <$> _lVolumeId, ("id" .=) <$> _lId,+ ("updated" .=) <$> _lUpdated,+ ("layerId" .=) <$> _lLayerId])++-- | The content ranges to identify the selected text.+--+-- /See:/ 'volumeannotationContentRanges' smart constructor.+data VolumeannotationContentRanges = VolumeannotationContentRanges'+ { _vcrGbImageRange :: !(Maybe BooksAnnotationsRange)+ , _vcrContentVersion :: !(Maybe Text)+ , _vcrGbTextRange :: !(Maybe BooksAnnotationsRange)+ , _vcrCfiRange :: !(Maybe BooksAnnotationsRange)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'VolumeannotationContentRanges' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vcrGbImageRange'+--+-- * 'vcrContentVersion'+--+-- * 'vcrGbTextRange'+--+-- * 'vcrCfiRange'+volumeannotationContentRanges+ :: VolumeannotationContentRanges+volumeannotationContentRanges =+ VolumeannotationContentRanges'+ { _vcrGbImageRange = Nothing+ , _vcrContentVersion = Nothing+ , _vcrGbTextRange = Nothing+ , _vcrCfiRange = Nothing+ }++-- | Range in GB image format for this annotation for version above.+vcrGbImageRange :: Lens' VolumeannotationContentRanges (Maybe BooksAnnotationsRange)+vcrGbImageRange+ = lens _vcrGbImageRange+ (\ s a -> s{_vcrGbImageRange = a})++-- | Content version applicable to ranges below.+vcrContentVersion :: Lens' VolumeannotationContentRanges (Maybe Text)+vcrContentVersion+ = lens _vcrContentVersion+ (\ s a -> s{_vcrContentVersion = a})++-- | Range in GB text format for this annotation for version above.+vcrGbTextRange :: Lens' VolumeannotationContentRanges (Maybe BooksAnnotationsRange)+vcrGbTextRange+ = lens _vcrGbTextRange+ (\ s a -> s{_vcrGbTextRange = a})++-- | Range in CFI format for this annotation for version above.+vcrCfiRange :: Lens' VolumeannotationContentRanges (Maybe BooksAnnotationsRange)+vcrCfiRange+ = lens _vcrCfiRange (\ s a -> s{_vcrCfiRange = a})++instance FromJSON VolumeannotationContentRanges where+ parseJSON+ = withObject "VolumeannotationContentRanges"+ (\ o ->+ VolumeannotationContentRanges' <$>+ (o .:? "gbImageRange") <*> (o .:? "contentVersion")+ <*> (o .:? "gbTextRange")+ <*> (o .:? "cfiRange"))++instance ToJSON VolumeannotationContentRanges where+ toJSON VolumeannotationContentRanges'{..}+ = object+ (catMaybes+ [("gbImageRange" .=) <$> _vcrGbImageRange,+ ("contentVersion" .=) <$> _vcrContentVersion,+ ("gbTextRange" .=) <$> _vcrGbTextRange,+ ("cfiRange" .=) <$> _vcrCfiRange])++-- | Any information about a volume related to reading or obtaining that+-- volume text. This information can depend on country (books may be public+-- domain in one country but not in another, e.g.).+--+-- /See:/ 'volumeAccessInfo' smart constructor.+data VolumeAccessInfo = VolumeAccessInfo'+ { _vaiWebReaderLink :: !(Maybe Text)+ , _vaiCountry :: !(Maybe Text)+ , _vaiDriveImportedContentLink :: !(Maybe Text)+ , _vaiExplicitOfflineLicenseManagement :: !(Maybe Bool)+ , _vaiViewability :: !(Maybe Text)+ , _vaiQuoteSharingAllowed :: !(Maybe Bool)+ , _vaiEpub :: !(Maybe VolumeAccessInfoEpub)+ , _vaiPdf :: !(Maybe VolumeAccessInfoPdf)+ , _vaiTextToSpeechPermission :: !(Maybe Text)+ , _vaiEmbeddable :: !(Maybe Bool)+ , _vaiAccessViewStatus :: !(Maybe Text)+ , _vaiDownloadAccess :: !(Maybe DownloadAccessRestriction)+ , _vaiViewOrderURL :: !(Maybe Text)+ , _vaiPublicDomain :: !(Maybe Bool)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'VolumeAccessInfo' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vaiWebReaderLink'+--+-- * 'vaiCountry'+--+-- * 'vaiDriveImportedContentLink'+--+-- * 'vaiExplicitOfflineLicenseManagement'+--+-- * 'vaiViewability'+--+-- * 'vaiQuoteSharingAllowed'+--+-- * 'vaiEpub'+--+-- * 'vaiPdf'+--+-- * 'vaiTextToSpeechPermission'+--+-- * 'vaiEmbeddable'+--+-- * 'vaiAccessViewStatus'+--+-- * 'vaiDownloadAccess'+--+-- * 'vaiViewOrderURL'+--+-- * 'vaiPublicDomain'+volumeAccessInfo+ :: VolumeAccessInfo+volumeAccessInfo =+ VolumeAccessInfo'+ { _vaiWebReaderLink = Nothing+ , _vaiCountry = Nothing+ , _vaiDriveImportedContentLink = Nothing+ , _vaiExplicitOfflineLicenseManagement = Nothing+ , _vaiViewability = Nothing+ , _vaiQuoteSharingAllowed = Nothing+ , _vaiEpub = Nothing+ , _vaiPdf = Nothing+ , _vaiTextToSpeechPermission = Nothing+ , _vaiEmbeddable = Nothing+ , _vaiAccessViewStatus = Nothing+ , _vaiDownloadAccess = Nothing+ , _vaiViewOrderURL = Nothing+ , _vaiPublicDomain = Nothing+ }++-- | URL to read this volume on the Google Books site. Link will not allow+-- users to read non-viewable volumes.+vaiWebReaderLink :: Lens' VolumeAccessInfo (Maybe Text)+vaiWebReaderLink+ = lens _vaiWebReaderLink+ (\ s a -> s{_vaiWebReaderLink = a})++-- | The two-letter ISO_3166-1 country code for which this access information+-- is valid. (In LITE projection.)+vaiCountry :: Lens' VolumeAccessInfo (Maybe Text)+vaiCountry+ = lens _vaiCountry (\ s a -> s{_vaiCountry = a})++-- | URL to the Google Drive viewer if this volume is uploaded by the user by+-- selecting the file from Google Drive.+vaiDriveImportedContentLink :: Lens' VolumeAccessInfo (Maybe Text)+vaiDriveImportedContentLink+ = lens _vaiDriveImportedContentLink+ (\ s a -> s{_vaiDriveImportedContentLink = a})++-- | Whether this volume requires that the client explicitly request offline+-- download license rather than have it done automatically when loading the+-- content, if the client supports it.+vaiExplicitOfflineLicenseManagement :: Lens' VolumeAccessInfo (Maybe Bool)+vaiExplicitOfflineLicenseManagement+ = lens _vaiExplicitOfflineLicenseManagement+ (\ s a ->+ s{_vaiExplicitOfflineLicenseManagement = a})++-- | The read access of a volume. Possible values are PARTIAL, ALL_PAGES,+-- NO_PAGES or UNKNOWN. This value depends on the country listed above. A+-- value of PARTIAL means that the publisher has allowed some portion of+-- the volume to be viewed publicly, without purchase. This can apply to+-- eBooks as well as non-eBooks. Public domain books will always have a+-- value of ALL_PAGES.+vaiViewability :: Lens' VolumeAccessInfo (Maybe Text)+vaiViewability+ = lens _vaiViewability+ (\ s a -> s{_vaiViewability = a})++-- | Whether quote sharing is allowed for this volume.+vaiQuoteSharingAllowed :: Lens' VolumeAccessInfo (Maybe Bool)+vaiQuoteSharingAllowed+ = lens _vaiQuoteSharingAllowed+ (\ s a -> s{_vaiQuoteSharingAllowed = a})++-- | Information about epub content. (In LITE projection.)+vaiEpub :: Lens' VolumeAccessInfo (Maybe VolumeAccessInfoEpub)+vaiEpub = lens _vaiEpub (\ s a -> s{_vaiEpub = a})++-- | Information about pdf content. (In LITE projection.)+vaiPdf :: Lens' VolumeAccessInfo (Maybe VolumeAccessInfoPdf)+vaiPdf = lens _vaiPdf (\ s a -> s{_vaiPdf = a})++-- | Whether text-to-speech is permitted for this volume. Values can be+-- ALLOWED, ALLOWED_FOR_ACCESSIBILITY, or NOT_ALLOWED.+vaiTextToSpeechPermission :: Lens' VolumeAccessInfo (Maybe Text)+vaiTextToSpeechPermission+ = lens _vaiTextToSpeechPermission+ (\ s a -> s{_vaiTextToSpeechPermission = a})++-- | Whether this volume can be embedded in a viewport using the Embedded+-- Viewer API.+vaiEmbeddable :: Lens' VolumeAccessInfo (Maybe Bool)+vaiEmbeddable+ = lens _vaiEmbeddable+ (\ s a -> s{_vaiEmbeddable = a})++-- | Combines the access and viewability of this volume into a single status+-- field for this user. Values can be FULL_PURCHASED, FULL_PUBLIC_DOMAIN,+-- SAMPLE or NONE. (In LITE projection.)+vaiAccessViewStatus :: Lens' VolumeAccessInfo (Maybe Text)+vaiAccessViewStatus+ = lens _vaiAccessViewStatus+ (\ s a -> s{_vaiAccessViewStatus = a})++-- | Information about a volume\'s download license access restrictions.+vaiDownloadAccess :: Lens' VolumeAccessInfo (Maybe DownloadAccessRestriction)+vaiDownloadAccess+ = lens _vaiDownloadAccess+ (\ s a -> s{_vaiDownloadAccess = a})++-- | For ordered but not yet processed orders, we give a URL that can be used+-- to go to the appropriate Google Wallet page.+vaiViewOrderURL :: Lens' VolumeAccessInfo (Maybe Text)+vaiViewOrderURL+ = lens _vaiViewOrderURL+ (\ s a -> s{_vaiViewOrderURL = a})++-- | Whether or not this book is public domain in the country listed above.+vaiPublicDomain :: Lens' VolumeAccessInfo (Maybe Bool)+vaiPublicDomain+ = lens _vaiPublicDomain+ (\ s a -> s{_vaiPublicDomain = a})++instance FromJSON VolumeAccessInfo where+ parseJSON+ = withObject "VolumeAccessInfo"+ (\ o ->+ VolumeAccessInfo' <$>+ (o .:? "webReaderLink") <*> (o .:? "country") <*>+ (o .:? "driveImportedContentLink")+ <*> (o .:? "explicitOfflineLicenseManagement")+ <*> (o .:? "viewability")+ <*> (o .:? "quoteSharingAllowed")+ <*> (o .:? "epub")+ <*> (o .:? "pdf")+ <*> (o .:? "textToSpeechPermission")+ <*> (o .:? "embeddable")+ <*> (o .:? "accessViewStatus")+ <*> (o .:? "downloadAccess")+ <*> (o .:? "viewOrderUrl")+ <*> (o .:? "publicDomain"))++instance ToJSON VolumeAccessInfo where+ toJSON VolumeAccessInfo'{..}+ = object+ (catMaybes+ [("webReaderLink" .=) <$> _vaiWebReaderLink,+ ("country" .=) <$> _vaiCountry,+ ("driveImportedContentLink" .=) <$>+ _vaiDriveImportedContentLink,+ ("explicitOfflineLicenseManagement" .=) <$>+ _vaiExplicitOfflineLicenseManagement,+ ("viewability" .=) <$> _vaiViewability,+ ("quoteSharingAllowed" .=) <$>+ _vaiQuoteSharingAllowed,+ ("epub" .=) <$> _vaiEpub, ("pdf" .=) <$> _vaiPdf,+ ("textToSpeechPermission" .=) <$>+ _vaiTextToSpeechPermission,+ ("embeddable" .=) <$> _vaiEmbeddable,+ ("accessViewStatus" .=) <$> _vaiAccessViewStatus,+ ("downloadAccess" .=) <$> _vaiDownloadAccess,+ ("viewOrderUrl" .=) <$> _vaiViewOrderURL,+ ("publicDomain" .=) <$> _vaiPublicDomain])++-- | A list of image links for all the sizes that are available. (In LITE+-- projection.)+--+-- /See:/ 'volumeVolumeInfoImageLinks' smart constructor.+data VolumeVolumeInfoImageLinks = VolumeVolumeInfoImageLinks'+ { _vviilThumbnail :: !(Maybe Text)+ , _vviilSmall :: !(Maybe Text)+ , _vviilExtraLarge :: !(Maybe Text)+ , _vviilLarge :: !(Maybe Text)+ , _vviilMedium :: !(Maybe Text)+ , _vviilSmallThumbnail :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'VolumeVolumeInfoImageLinks' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vviilThumbnail'+--+-- * 'vviilSmall'+--+-- * 'vviilExtraLarge'+--+-- * 'vviilLarge'+--+-- * 'vviilMedium'+--+-- * 'vviilSmallThumbnail'+volumeVolumeInfoImageLinks+ :: VolumeVolumeInfoImageLinks+volumeVolumeInfoImageLinks =+ VolumeVolumeInfoImageLinks'+ { _vviilThumbnail = Nothing+ , _vviilSmall = Nothing+ , _vviilExtraLarge = Nothing+ , _vviilLarge = Nothing+ , _vviilMedium = Nothing+ , _vviilSmallThumbnail = Nothing+ }++-- | Image link for thumbnail size (width of ~128 pixels). (In LITE+-- projection)+vviilThumbnail :: Lens' VolumeVolumeInfoImageLinks (Maybe Text)+vviilThumbnail+ = lens _vviilThumbnail+ (\ s a -> s{_vviilThumbnail = a})++-- | Image link for small size (width of ~300 pixels). (In LITE projection)+vviilSmall :: Lens' VolumeVolumeInfoImageLinks (Maybe Text)+vviilSmall+ = lens _vviilSmall (\ s a -> s{_vviilSmall = a})++-- | Image link for extra large size (width of ~1280 pixels). (In LITE+-- projection)+vviilExtraLarge :: Lens' VolumeVolumeInfoImageLinks (Maybe Text)+vviilExtraLarge+ = lens _vviilExtraLarge+ (\ s a -> s{_vviilExtraLarge = a})++-- | Image link for large size (width of ~800 pixels). (In LITE projection)+vviilLarge :: Lens' VolumeVolumeInfoImageLinks (Maybe Text)+vviilLarge+ = lens _vviilLarge (\ s a -> s{_vviilLarge = a})++-- | Image link for medium size (width of ~575 pixels). (In LITE projection)+vviilMedium :: Lens' VolumeVolumeInfoImageLinks (Maybe Text)+vviilMedium+ = lens _vviilMedium (\ s a -> s{_vviilMedium = a})++-- | Image link for small thumbnail size (width of ~80 pixels). (In LITE+-- projection)+vviilSmallThumbnail :: Lens' VolumeVolumeInfoImageLinks (Maybe Text)+vviilSmallThumbnail+ = lens _vviilSmallThumbnail+ (\ s a -> s{_vviilSmallThumbnail = a})++instance FromJSON VolumeVolumeInfoImageLinks where+ parseJSON+ = withObject "VolumeVolumeInfoImageLinks"+ (\ o ->+ VolumeVolumeInfoImageLinks' <$>+ (o .:? "thumbnail") <*> (o .:? "small") <*>+ (o .:? "extraLarge")+ <*> (o .:? "large")+ <*> (o .:? "medium")+ <*> (o .:? "smallThumbnail"))++instance ToJSON VolumeVolumeInfoImageLinks where+ toJSON VolumeVolumeInfoImageLinks'{..}+ = object+ (catMaybes+ [("thumbnail" .=) <$> _vviilThumbnail,+ ("small" .=) <$> _vviilSmall,+ ("extraLarge" .=) <$> _vviilExtraLarge,+ ("large" .=) <$> _vviilLarge,+ ("medium" .=) <$> _vviilMedium,+ ("smallThumbnail" .=) <$> _vviilSmallThumbnail])++--+-- /See:/ 'volumeUserInfoUserUploadedVolumeInfo' smart constructor.+newtype VolumeUserInfoUserUploadedVolumeInfo = VolumeUserInfoUserUploadedVolumeInfo'+ { _vuiuuviProcessingState :: Maybe Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'VolumeUserInfoUserUploadedVolumeInfo' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vuiuuviProcessingState'+volumeUserInfoUserUploadedVolumeInfo+ :: VolumeUserInfoUserUploadedVolumeInfo+volumeUserInfoUserUploadedVolumeInfo =+ VolumeUserInfoUserUploadedVolumeInfo'+ { _vuiuuviProcessingState = Nothing+ }++vuiuuviProcessingState :: Lens' VolumeUserInfoUserUploadedVolumeInfo (Maybe Text)+vuiuuviProcessingState+ = lens _vuiuuviProcessingState+ (\ s a -> s{_vuiuuviProcessingState = a})++instance FromJSON+ VolumeUserInfoUserUploadedVolumeInfo where+ parseJSON+ = withObject "VolumeUserInfoUserUploadedVolumeInfo"+ (\ o ->+ VolumeUserInfoUserUploadedVolumeInfo' <$>+ (o .:? "processingState"))++instance ToJSON VolumeUserInfoUserUploadedVolumeInfo+ where+ toJSON VolumeUserInfoUserUploadedVolumeInfo'{..}+ = object+ (catMaybes+ [("processingState" .=) <$> _vuiuuviProcessingState])++-- | Copy\/Paste accounting information.+--+-- /See:/ 'volumeUserInfoCopy' smart constructor.+data VolumeUserInfoCopy = VolumeUserInfoCopy'+ { _vuicLimitType :: !(Maybe Text)+ , _vuicAllowedCharacterCount :: !(Maybe (Textual Int32))+ , _vuicUpdated :: !(Maybe DateTime')+ , _vuicRemainingCharacterCount :: !(Maybe (Textual Int32))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'VolumeUserInfoCopy' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vuicLimitType'+--+-- * 'vuicAllowedCharacterCount'+--+-- * 'vuicUpdated'+--+-- * 'vuicRemainingCharacterCount'+volumeUserInfoCopy+ :: VolumeUserInfoCopy+volumeUserInfoCopy =+ VolumeUserInfoCopy'+ { _vuicLimitType = Nothing+ , _vuicAllowedCharacterCount = Nothing+ , _vuicUpdated = Nothing+ , _vuicRemainingCharacterCount = Nothing+ }++vuicLimitType :: Lens' VolumeUserInfoCopy (Maybe Text)+vuicLimitType+ = lens _vuicLimitType+ (\ s a -> s{_vuicLimitType = a})++vuicAllowedCharacterCount :: Lens' VolumeUserInfoCopy (Maybe Int32)+vuicAllowedCharacterCount+ = lens _vuicAllowedCharacterCount+ (\ s a -> s{_vuicAllowedCharacterCount = a})+ . mapping _Coerce++vuicUpdated :: Lens' VolumeUserInfoCopy (Maybe UTCTime)+vuicUpdated+ = lens _vuicUpdated (\ s a -> s{_vuicUpdated = a}) .+ mapping _DateTime++vuicRemainingCharacterCount :: Lens' VolumeUserInfoCopy (Maybe Int32)+vuicRemainingCharacterCount+ = lens _vuicRemainingCharacterCount+ (\ s a -> s{_vuicRemainingCharacterCount = a})+ . mapping _Coerce++instance FromJSON VolumeUserInfoCopy where+ parseJSON+ = withObject "VolumeUserInfoCopy"+ (\ o ->+ VolumeUserInfoCopy' <$>+ (o .:? "limitType") <*>+ (o .:? "allowedCharacterCount")+ <*> (o .:? "updated")+ <*> (o .:? "remainingCharacterCount"))++instance ToJSON VolumeUserInfoCopy where+ toJSON VolumeUserInfoCopy'{..}+ = object+ (catMaybes+ [("limitType" .=) <$> _vuicLimitType,+ ("allowedCharacterCount" .=) <$>+ _vuicAllowedCharacterCount,+ ("updated" .=) <$> _vuicUpdated,+ ("remainingCharacterCount" .=) <$>+ _vuicRemainingCharacterCount])++--+-- /See:/ 'booksVolumesRecommendedRateResponse' smart constructor.+newtype BooksVolumesRecommendedRateResponse = BooksVolumesRecommendedRateResponse'+ { _bvrrrConsistencyToken :: Maybe Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'BooksVolumesRecommendedRateResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'bvrrrConsistencyToken'+booksVolumesRecommendedRateResponse+ :: BooksVolumesRecommendedRateResponse+booksVolumesRecommendedRateResponse =+ BooksVolumesRecommendedRateResponse'+ { _bvrrrConsistencyToken = Nothing+ }++bvrrrConsistencyToken :: Lens' BooksVolumesRecommendedRateResponse (Maybe Text)+bvrrrConsistencyToken+ = lens _bvrrrConsistencyToken+ (\ s a -> s{_bvrrrConsistencyToken = a})++instance FromJSON BooksVolumesRecommendedRateResponse+ where+ parseJSON+ = withObject "BooksVolumesRecommendedRateResponse"+ (\ o ->+ BooksVolumesRecommendedRateResponse' <$>+ (o .:? "consistency_token"))++instance ToJSON BooksVolumesRecommendedRateResponse+ where+ toJSON BooksVolumesRecommendedRateResponse'{..}+ = object+ (catMaybes+ [("consistency_token" .=) <$>+ _bvrrrConsistencyToken])++--+-- /See:/ 'volumeseriesInfo' smart constructor.+data VolumeseriesInfo = VolumeseriesInfo'+ { _viBookDisplayNumber :: !(Maybe Text)+ , _viKind :: !Text+ , _viShortSeriesBookTitle :: !(Maybe Text)+ , _viVolumeSeries :: !(Maybe [VolumeseriesInfoVolumeSeriesItem])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'VolumeseriesInfo' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'viBookDisplayNumber'+--+-- * 'viKind'+--+-- * 'viShortSeriesBookTitle'+--+-- * 'viVolumeSeries'+volumeseriesInfo+ :: VolumeseriesInfo+volumeseriesInfo =+ VolumeseriesInfo'+ { _viBookDisplayNumber = Nothing+ , _viKind = "books#volume_series_info"+ , _viShortSeriesBookTitle = Nothing+ , _viVolumeSeries = Nothing+ }++-- | The display number string. This should be used only for display purposes+-- and the actual sequence should be inferred from the below orderNumber.+viBookDisplayNumber :: Lens' VolumeseriesInfo (Maybe Text)+viBookDisplayNumber+ = lens _viBookDisplayNumber+ (\ s a -> s{_viBookDisplayNumber = a})++-- | Resource type.+viKind :: Lens' VolumeseriesInfo Text+viKind = lens _viKind (\ s a -> s{_viKind = a})++-- | Short book title in the context of the series.+viShortSeriesBookTitle :: Lens' VolumeseriesInfo (Maybe Text)+viShortSeriesBookTitle+ = lens _viShortSeriesBookTitle+ (\ s a -> s{_viShortSeriesBookTitle = a})++viVolumeSeries :: Lens' VolumeseriesInfo [VolumeseriesInfoVolumeSeriesItem]+viVolumeSeries+ = lens _viVolumeSeries+ (\ s a -> s{_viVolumeSeries = a})+ . _Default+ . _Coerce++instance FromJSON VolumeseriesInfo where+ parseJSON+ = withObject "VolumeseriesInfo"+ (\ o ->+ VolumeseriesInfo' <$>+ (o .:? "bookDisplayNumber") <*>+ (o .:? "kind" .!= "books#volume_series_info")+ <*> (o .:? "shortSeriesBookTitle")+ <*> (o .:? "volumeSeries" .!= mempty))++instance ToJSON VolumeseriesInfo where+ toJSON VolumeseriesInfo'{..}+ = object+ (catMaybes+ [("bookDisplayNumber" .=) <$> _viBookDisplayNumber,+ Just ("kind" .= _viKind),+ ("shortSeriesBookTitle" .=) <$>+ _viShortSeriesBookTitle,+ ("volumeSeries" .=) <$> _viVolumeSeries])++--+-- /See:/ 'bookshelf' smart constructor.+data Bookshelf = Bookshelf'+ { _bAccess :: !(Maybe Text)+ , _bVolumesLastUpdated :: !(Maybe DateTime')+ , _bKind :: !Text+ , _bCreated :: !(Maybe DateTime')+ , _bVolumeCount :: !(Maybe (Textual Int32))+ , _bSelfLink :: !(Maybe Text)+ , _bId :: !(Maybe (Textual Int32))+ , _bUpdated :: !(Maybe DateTime')+ , _bTitle :: !(Maybe Text)+ , _bDescription :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Bookshelf' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'bAccess'+--+-- * 'bVolumesLastUpdated'+--+-- * 'bKind'+--+-- * 'bCreated'+--+-- * 'bVolumeCount'+--+-- * 'bSelfLink'+--+-- * 'bId'+--+-- * 'bUpdated'+--+-- * 'bTitle'+--+-- * 'bDescription'+bookshelf+ :: Bookshelf+bookshelf =+ Bookshelf'+ { _bAccess = Nothing+ , _bVolumesLastUpdated = Nothing+ , _bKind = "books#bookshelf"+ , _bCreated = Nothing+ , _bVolumeCount = Nothing+ , _bSelfLink = Nothing+ , _bId = Nothing+ , _bUpdated = Nothing+ , _bTitle = Nothing+ , _bDescription = Nothing+ }++-- | Whether this bookshelf is PUBLIC or PRIVATE.+bAccess :: Lens' Bookshelf (Maybe Text)+bAccess = lens _bAccess (\ s a -> s{_bAccess = a})++-- | Last time a volume was added or removed from this bookshelf (formatted+-- UTC timestamp with millisecond resolution).+bVolumesLastUpdated :: Lens' Bookshelf (Maybe UTCTime)+bVolumesLastUpdated+ = lens _bVolumesLastUpdated+ (\ s a -> s{_bVolumesLastUpdated = a})+ . mapping _DateTime++-- | Resource type for bookshelf metadata.+bKind :: Lens' Bookshelf Text+bKind = lens _bKind (\ s a -> s{_bKind = a})++-- | Created time for this bookshelf (formatted UTC timestamp with+-- millisecond resolution).+bCreated :: Lens' Bookshelf (Maybe UTCTime)+bCreated+ = lens _bCreated (\ s a -> s{_bCreated = a}) .+ mapping _DateTime++-- | Number of volumes in this bookshelf.+bVolumeCount :: Lens' Bookshelf (Maybe Int32)+bVolumeCount+ = lens _bVolumeCount (\ s a -> s{_bVolumeCount = a})+ . mapping _Coerce++-- | URL to this resource.+bSelfLink :: Lens' Bookshelf (Maybe Text)+bSelfLink+ = lens _bSelfLink (\ s a -> s{_bSelfLink = a})++-- | Id of this bookshelf, only unique by user.+bId :: Lens' Bookshelf (Maybe Int32)+bId+ = lens _bId (\ s a -> s{_bId = a}) . mapping _Coerce++-- | Last modified time of this bookshelf (formatted UTC timestamp with+-- millisecond resolution).+bUpdated :: Lens' Bookshelf (Maybe UTCTime)+bUpdated+ = lens _bUpdated (\ s a -> s{_bUpdated = a}) .+ mapping _DateTime++-- | Title of this bookshelf.+bTitle :: Lens' Bookshelf (Maybe Text)+bTitle = lens _bTitle (\ s a -> s{_bTitle = a})++-- | Description of this bookshelf.+bDescription :: Lens' Bookshelf (Maybe Text)+bDescription+ = lens _bDescription (\ s a -> s{_bDescription = a})++instance FromJSON Bookshelf where+ parseJSON+ = withObject "Bookshelf"+ (\ o ->+ Bookshelf' <$>+ (o .:? "access") <*> (o .:? "volumesLastUpdated") <*>+ (o .:? "kind" .!= "books#bookshelf")+ <*> (o .:? "created")+ <*> (o .:? "volumeCount")+ <*> (o .:? "selfLink")+ <*> (o .:? "id")+ <*> (o .:? "updated")+ <*> (o .:? "title")+ <*> (o .:? "description"))++instance ToJSON Bookshelf where+ toJSON Bookshelf'{..}+ = object+ (catMaybes+ [("access" .=) <$> _bAccess,+ ("volumesLastUpdated" .=) <$> _bVolumesLastUpdated,+ Just ("kind" .= _bKind),+ ("created" .=) <$> _bCreated,+ ("volumeCount" .=) <$> _bVolumeCount,+ ("selfLink" .=) <$> _bSelfLink, ("id" .=) <$> _bId,+ ("updated" .=) <$> _bUpdated,+ ("title" .=) <$> _bTitle,+ ("description" .=) <$> _bDescription])++--+-- /See:/ 'notification' smart constructor.+data Notification = Notification'+ { _nDocType :: !(Maybe Text)+ , _nTargetURL :: !(Maybe Text)+ , _nShowNotificationSettingsAction :: !(Maybe Bool)+ , _nDocId :: !(Maybe Text)+ , _nKind :: !Text+ , _nBody :: !(Maybe Text)+ , _nCrmExperimentIds :: !(Maybe [Textual Int64])+ , _nPcampaignId :: !(Maybe Text)+ , _nReason :: !(Maybe Text)+ , _nDontShowNotification :: !(Maybe Bool)+ , _nNotificationType :: !(Maybe Text)+ , _nIconURL :: !(Maybe Text)+ , _nTitle :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Notification' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'nDocType'+--+-- * 'nTargetURL'+--+-- * 'nShowNotificationSettingsAction'+--+-- * 'nDocId'+--+-- * 'nKind'+--+-- * 'nBody'+--+-- * 'nCrmExperimentIds'+--+-- * 'nPcampaignId'+--+-- * 'nReason'+--+-- * 'nDontShowNotification'+--+-- * 'nNotificationType'+--+-- * 'nIconURL'+--+-- * 'nTitle'+notification+ :: Notification+notification =+ Notification'+ { _nDocType = Nothing+ , _nTargetURL = Nothing+ , _nShowNotificationSettingsAction = Nothing+ , _nDocId = Nothing+ , _nKind = "books#notification"+ , _nBody = Nothing+ , _nCrmExperimentIds = Nothing+ , _nPcampaignId = Nothing+ , _nReason = Nothing+ , _nDontShowNotification = Nothing+ , _nNotificationType = Nothing+ , _nIconURL = Nothing+ , _nTitle = Nothing+ }++nDocType :: Lens' Notification (Maybe Text)+nDocType = lens _nDocType (\ s a -> s{_nDocType = a})++nTargetURL :: Lens' Notification (Maybe Text)+nTargetURL+ = lens _nTargetURL (\ s a -> s{_nTargetURL = a})++nShowNotificationSettingsAction :: Lens' Notification (Maybe Bool)+nShowNotificationSettingsAction+ = lens _nShowNotificationSettingsAction+ (\ s a -> s{_nShowNotificationSettingsAction = a})++nDocId :: Lens' Notification (Maybe Text)+nDocId = lens _nDocId (\ s a -> s{_nDocId = a})++-- | Resource type.+nKind :: Lens' Notification Text+nKind = lens _nKind (\ s a -> s{_nKind = a})++nBody :: Lens' Notification (Maybe Text)+nBody = lens _nBody (\ s a -> s{_nBody = a})++-- | The list of crm experiment ids.+nCrmExperimentIds :: Lens' Notification [Int64]+nCrmExperimentIds+ = lens _nCrmExperimentIds+ (\ s a -> s{_nCrmExperimentIds = a})+ . _Default+ . _Coerce++nPcampaignId :: Lens' Notification (Maybe Text)+nPcampaignId+ = lens _nPcampaignId (\ s a -> s{_nPcampaignId = a})++nReason :: Lens' Notification (Maybe Text)+nReason = lens _nReason (\ s a -> s{_nReason = a})++nDontShowNotification :: Lens' Notification (Maybe Bool)+nDontShowNotification+ = lens _nDontShowNotification+ (\ s a -> s{_nDontShowNotification = a})++nNotificationType :: Lens' Notification (Maybe Text)+nNotificationType+ = lens _nNotificationType+ (\ s a -> s{_nNotificationType = a})++nIconURL :: Lens' Notification (Maybe Text)+nIconURL = lens _nIconURL (\ s a -> s{_nIconURL = a})++nTitle :: Lens' Notification (Maybe Text)+nTitle = lens _nTitle (\ s a -> s{_nTitle = a})++instance FromJSON Notification where+ parseJSON+ = withObject "Notification"+ (\ o ->+ Notification' <$>+ (o .:? "doc_type") <*> (o .:? "targetUrl") <*>+ (o .:? "show_notification_settings_action")+ <*> (o .:? "doc_id")+ <*> (o .:? "kind" .!= "books#notification")+ <*> (o .:? "body")+ <*> (o .:? "crmExperimentIds" .!= mempty)+ <*> (o .:? "pcampaign_id")+ <*> (o .:? "reason")+ <*> (o .:? "dont_show_notification")+ <*> (o .:? "notification_type")+ <*> (o .:? "iconUrl")+ <*> (o .:? "title"))++instance ToJSON Notification where+ toJSON Notification'{..}+ = object+ (catMaybes+ [("doc_type" .=) <$> _nDocType,+ ("targetUrl" .=) <$> _nTargetURL,+ ("show_notification_settings_action" .=) <$>+ _nShowNotificationSettingsAction,+ ("doc_id" .=) <$> _nDocId, Just ("kind" .= _nKind),+ ("body" .=) <$> _nBody,+ ("crmExperimentIds" .=) <$> _nCrmExperimentIds,+ ("pcampaign_id" .=) <$> _nPcampaignId,+ ("reason" .=) <$> _nReason,+ ("dont_show_notification" .=) <$>+ _nDontShowNotification,+ ("notification_type" .=) <$> _nNotificationType,+ ("iconUrl" .=) <$> _nIconURL,+ ("title" .=) <$> _nTitle])++--+-- /See:/ 'annotationsSummaryLayersItem' smart constructor.+data AnnotationsSummaryLayersItem = AnnotationsSummaryLayersItem'+ { _asliLimitType :: !(Maybe Text)+ , _asliAllowedCharacterCount :: !(Maybe (Textual Int32))+ , _asliUpdated :: !(Maybe DateTime')+ , _asliLayerId :: !(Maybe Text)+ , _asliRemainingCharacterCount :: !(Maybe (Textual Int32))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AnnotationsSummaryLayersItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'asliLimitType'+--+-- * 'asliAllowedCharacterCount'+--+-- * 'asliUpdated'+--+-- * 'asliLayerId'+--+-- * 'asliRemainingCharacterCount'+annotationsSummaryLayersItem+ :: AnnotationsSummaryLayersItem+annotationsSummaryLayersItem =+ AnnotationsSummaryLayersItem'+ { _asliLimitType = Nothing+ , _asliAllowedCharacterCount = Nothing+ , _asliUpdated = Nothing+ , _asliLayerId = Nothing+ , _asliRemainingCharacterCount = Nothing+ }++asliLimitType :: Lens' AnnotationsSummaryLayersItem (Maybe Text)+asliLimitType+ = lens _asliLimitType+ (\ s a -> s{_asliLimitType = a})++asliAllowedCharacterCount :: Lens' AnnotationsSummaryLayersItem (Maybe Int32)+asliAllowedCharacterCount+ = lens _asliAllowedCharacterCount+ (\ s a -> s{_asliAllowedCharacterCount = a})+ . mapping _Coerce++asliUpdated :: Lens' AnnotationsSummaryLayersItem (Maybe UTCTime)+asliUpdated+ = lens _asliUpdated (\ s a -> s{_asliUpdated = a}) .+ mapping _DateTime++asliLayerId :: Lens' AnnotationsSummaryLayersItem (Maybe Text)+asliLayerId+ = lens _asliLayerId (\ s a -> s{_asliLayerId = a})++asliRemainingCharacterCount :: Lens' AnnotationsSummaryLayersItem (Maybe Int32)+asliRemainingCharacterCount+ = lens _asliRemainingCharacterCount+ (\ s a -> s{_asliRemainingCharacterCount = a})+ . mapping _Coerce++instance FromJSON AnnotationsSummaryLayersItem where+ parseJSON+ = withObject "AnnotationsSummaryLayersItem"+ (\ o ->+ AnnotationsSummaryLayersItem' <$>+ (o .:? "limitType") <*>+ (o .:? "allowedCharacterCount")+ <*> (o .:? "updated")+ <*> (o .:? "layerId")+ <*> (o .:? "remainingCharacterCount"))++instance ToJSON AnnotationsSummaryLayersItem where+ toJSON AnnotationsSummaryLayersItem'{..}+ = object+ (catMaybes+ [("limitType" .=) <$> _asliLimitType,+ ("allowedCharacterCount" .=) <$>+ _asliAllowedCharacterCount,+ ("updated" .=) <$> _asliUpdated,+ ("layerId" .=) <$> _asliLayerId,+ ("remainingCharacterCount" .=) <$>+ _asliRemainingCharacterCount])++-- | The rental duration (for rental offers only).+--+-- /See:/ 'volumeSaleInfoOffersItemRentalDuration' smart constructor.+data VolumeSaleInfoOffersItemRentalDuration = VolumeSaleInfoOffersItemRentalDuration'+ { _vsioirdCount :: !(Maybe (Textual Double))+ , _vsioirdUnit :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'VolumeSaleInfoOffersItemRentalDuration' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vsioirdCount'+--+-- * 'vsioirdUnit'+volumeSaleInfoOffersItemRentalDuration+ :: VolumeSaleInfoOffersItemRentalDuration+volumeSaleInfoOffersItemRentalDuration =+ VolumeSaleInfoOffersItemRentalDuration'+ { _vsioirdCount = Nothing+ , _vsioirdUnit = Nothing+ }++vsioirdCount :: Lens' VolumeSaleInfoOffersItemRentalDuration (Maybe Double)+vsioirdCount+ = lens _vsioirdCount (\ s a -> s{_vsioirdCount = a})+ . mapping _Coerce++vsioirdUnit :: Lens' VolumeSaleInfoOffersItemRentalDuration (Maybe Text)+vsioirdUnit+ = lens _vsioirdUnit (\ s a -> s{_vsioirdUnit = a})++instance FromJSON+ VolumeSaleInfoOffersItemRentalDuration where+ parseJSON+ = withObject "VolumeSaleInfoOffersItemRentalDuration"+ (\ o ->+ VolumeSaleInfoOffersItemRentalDuration' <$>+ (o .:? "count") <*> (o .:? "unit"))++instance ToJSON+ VolumeSaleInfoOffersItemRentalDuration where+ toJSON VolumeSaleInfoOffersItemRentalDuration'{..}+ = object+ (catMaybes+ [("count" .=) <$> _vsioirdCount,+ ("unit" .=) <$> _vsioirdUnit])++--+-- /See:/ 'dictlayerDataDictWordsItemExamplesItem' smart constructor.+data DictlayerDataDictWordsItemExamplesItem = DictlayerDataDictWordsItemExamplesItem'+ { _dddwieiText :: !(Maybe Text)+ , _dddwieiSource :: !(Maybe DictlayerDataDictWordsItemExamplesItemSource)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DictlayerDataDictWordsItemExamplesItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dddwieiText'+--+-- * 'dddwieiSource'+dictlayerDataDictWordsItemExamplesItem+ :: DictlayerDataDictWordsItemExamplesItem+dictlayerDataDictWordsItemExamplesItem =+ DictlayerDataDictWordsItemExamplesItem'+ { _dddwieiText = Nothing+ , _dddwieiSource = Nothing+ }++dddwieiText :: Lens' DictlayerDataDictWordsItemExamplesItem (Maybe Text)+dddwieiText+ = lens _dddwieiText (\ s a -> s{_dddwieiText = a})++dddwieiSource :: Lens' DictlayerDataDictWordsItemExamplesItem (Maybe DictlayerDataDictWordsItemExamplesItemSource)+dddwieiSource+ = lens _dddwieiSource+ (\ s a -> s{_dddwieiSource = a})++instance FromJSON+ DictlayerDataDictWordsItemExamplesItem where+ parseJSON+ = withObject "DictlayerDataDictWordsItemExamplesItem"+ (\ o ->+ DictlayerDataDictWordsItemExamplesItem' <$>+ (o .:? "text") <*> (o .:? "source"))++instance ToJSON+ DictlayerDataDictWordsItemExamplesItem where+ toJSON DictlayerDataDictWordsItemExamplesItem'{..}+ = object+ (catMaybes+ [("text" .=) <$> _dddwieiText,+ ("source" .=) <$> _dddwieiSource])++--+-- /See:/ 'offersItemsItem' smart constructor.+data OffersItemsItem = OffersItemsItem'+ { _oiiItems :: !(Maybe [OffersItemsItemItemsItem])+ , _oiiArtURL :: !(Maybe Text)+ , _oiiId :: !(Maybe Text)+ , _oiiGServicesKey :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'OffersItemsItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'oiiItems'+--+-- * 'oiiArtURL'+--+-- * 'oiiId'+--+-- * 'oiiGServicesKey'+offersItemsItem+ :: OffersItemsItem+offersItemsItem =+ OffersItemsItem'+ { _oiiItems = Nothing+ , _oiiArtURL = Nothing+ , _oiiId = Nothing+ , _oiiGServicesKey = Nothing+ }++oiiItems :: Lens' OffersItemsItem [OffersItemsItemItemsItem]+oiiItems+ = lens _oiiItems (\ s a -> s{_oiiItems = a}) .+ _Default+ . _Coerce++oiiArtURL :: Lens' OffersItemsItem (Maybe Text)+oiiArtURL+ = lens _oiiArtURL (\ s a -> s{_oiiArtURL = a})++oiiId :: Lens' OffersItemsItem (Maybe Text)+oiiId = lens _oiiId (\ s a -> s{_oiiId = a})++oiiGServicesKey :: Lens' OffersItemsItem (Maybe Text)+oiiGServicesKey+ = lens _oiiGServicesKey+ (\ s a -> s{_oiiGServicesKey = a})++instance FromJSON OffersItemsItem where+ parseJSON+ = withObject "OffersItemsItem"+ (\ o ->+ OffersItemsItem' <$>+ (o .:? "items" .!= mempty) <*> (o .:? "artUrl") <*>+ (o .:? "id")+ <*> (o .:? "gservicesKey"))++instance ToJSON OffersItemsItem where+ toJSON OffersItemsItem'{..}+ = object+ (catMaybes+ [("items" .=) <$> _oiiItems,+ ("artUrl" .=) <$> _oiiArtURL, ("id" .=) <$> _oiiId,+ ("gservicesKey" .=) <$> _oiiGServicesKey])++--+-- /See:/ 'annotationLayerSummary' smart constructor.+data AnnotationLayerSummary = AnnotationLayerSummary'+ { _alsLimitType :: !(Maybe Text)+ , _alsAllowedCharacterCount :: !(Maybe (Textual Int32))+ , _alsRemainingCharacterCount :: !(Maybe (Textual Int32))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AnnotationLayerSummary' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'alsLimitType'+--+-- * 'alsAllowedCharacterCount'+--+-- * 'alsRemainingCharacterCount'+annotationLayerSummary+ :: AnnotationLayerSummary+annotationLayerSummary =+ AnnotationLayerSummary'+ { _alsLimitType = Nothing+ , _alsAllowedCharacterCount = Nothing+ , _alsRemainingCharacterCount = Nothing+ }++-- | Type of limitation on this layer. \"limited\" or \"unlimited\" for the+-- \"copy\" layer.+alsLimitType :: Lens' AnnotationLayerSummary (Maybe Text)+alsLimitType+ = lens _alsLimitType (\ s a -> s{_alsLimitType = a})++-- | Maximum allowed characters on this layer, especially for the \"copy\"+-- layer.+alsAllowedCharacterCount :: Lens' AnnotationLayerSummary (Maybe Int32)+alsAllowedCharacterCount+ = lens _alsAllowedCharacterCount+ (\ s a -> s{_alsAllowedCharacterCount = a})+ . mapping _Coerce++-- | Remaining allowed characters on this layer, especially for the \"copy\"+-- layer.+alsRemainingCharacterCount :: Lens' AnnotationLayerSummary (Maybe Int32)+alsRemainingCharacterCount+ = lens _alsRemainingCharacterCount+ (\ s a -> s{_alsRemainingCharacterCount = a})+ . mapping _Coerce++instance FromJSON AnnotationLayerSummary where+ parseJSON+ = withObject "AnnotationLayerSummary"+ (\ o ->+ AnnotationLayerSummary' <$>+ (o .:? "limitType") <*>+ (o .:? "allowedCharacterCount")+ <*> (o .:? "remainingCharacterCount"))++instance ToJSON AnnotationLayerSummary where+ toJSON AnnotationLayerSummary'{..}+ = object+ (catMaybes+ [("limitType" .=) <$> _alsLimitType,+ ("allowedCharacterCount" .=) <$>+ _alsAllowedCharacterCount,+ ("remainingCharacterCount" .=) <$>+ _alsRemainingCharacterCount])++-- | Search result information related to this volume.+--+-- /See:/ 'volumeSearchInfo' smart constructor.+newtype VolumeSearchInfo = VolumeSearchInfo'+ { _vsiTextSnippet :: Maybe Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'VolumeSearchInfo' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vsiTextSnippet'+volumeSearchInfo+ :: VolumeSearchInfo+volumeSearchInfo =+ VolumeSearchInfo'+ { _vsiTextSnippet = Nothing+ }++-- | A text snippet containing the search query.+vsiTextSnippet :: Lens' VolumeSearchInfo (Maybe Text)+vsiTextSnippet+ = lens _vsiTextSnippet+ (\ s a -> s{_vsiTextSnippet = a})++instance FromJSON VolumeSearchInfo where+ parseJSON+ = withObject "VolumeSearchInfo"+ (\ o -> VolumeSearchInfo' <$> (o .:? "textSnippet"))++instance ToJSON VolumeSearchInfo where+ toJSON VolumeSearchInfo'{..}+ = object+ (catMaybes [("textSnippet" .=) <$> _vsiTextSnippet])++--+-- /See:/ 'annotationsSummary' smart constructor.+data AnnotationsSummary = AnnotationsSummary'+ { _asKind :: !Text+ , _asLayers :: !(Maybe [AnnotationsSummaryLayersItem])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AnnotationsSummary' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'asKind'+--+-- * 'asLayers'+annotationsSummary+ :: AnnotationsSummary+annotationsSummary =+ AnnotationsSummary'+ { _asKind = "books#annotationsSummary"+ , _asLayers = Nothing+ }++asKind :: Lens' AnnotationsSummary Text+asKind = lens _asKind (\ s a -> s{_asKind = a})++asLayers :: Lens' AnnotationsSummary [AnnotationsSummaryLayersItem]+asLayers+ = lens _asLayers (\ s a -> s{_asLayers = a}) .+ _Default+ . _Coerce++instance FromJSON AnnotationsSummary where+ parseJSON+ = withObject "AnnotationsSummary"+ (\ o ->+ AnnotationsSummary' <$>+ (o .:? "kind" .!= "books#annotationsSummary") <*>+ (o .:? "layers" .!= mempty))++instance ToJSON AnnotationsSummary where+ toJSON AnnotationsSummary'{..}+ = object+ (catMaybes+ [Just ("kind" .= _asKind),+ ("layers" .=) <$> _asLayers])++--+-- /See:/ 'category' smart constructor.+data Category = Category'+ { _cKind :: !Text+ , _cItems :: !(Maybe [CategoryItemsItem])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Category' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cKind'+--+-- * 'cItems'+category+ :: Category+category =+ Category'+ { _cKind = "onboarding#category"+ , _cItems = Nothing+ }++-- | Resource type.+cKind :: Lens' Category Text+cKind = lens _cKind (\ s a -> s{_cKind = a})++-- | A list of onboarding categories.+cItems :: Lens' Category [CategoryItemsItem]+cItems+ = lens _cItems (\ s a -> s{_cItems = a}) . _Default .+ _Coerce++instance FromJSON Category where+ parseJSON+ = withObject "Category"+ (\ o ->+ Category' <$>+ (o .:? "kind" .!= "onboarding#category") <*>+ (o .:? "items" .!= mempty))++instance ToJSON Category where+ toJSON Category'{..}+ = object+ (catMaybes+ [Just ("kind" .= _cKind), ("items" .=) <$> _cItems])++--+-- /See:/ 'discoveryclustersClustersItemBanner_with_content_container' smart constructor.+data DiscoveryclustersClustersItemBanner_with_content_container = DiscoveryclustersClustersItemBanner_with_content_container'+ { _dcibFillColorArgb :: !(Maybe Text)+ , _dcibMoreButtonURL :: !(Maybe Text)+ , _dcibTextColorArgb :: !(Maybe Text)+ , _dcibMoreButtonText :: !(Maybe Text)+ , _dcibImageURL :: !(Maybe Text)+ , _dcibMaskColorArgb :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DiscoveryclustersClustersItemBanner_with_content_container' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dcibFillColorArgb'+--+-- * 'dcibMoreButtonURL'+--+-- * 'dcibTextColorArgb'+--+-- * 'dcibMoreButtonText'+--+-- * 'dcibImageURL'+--+-- * 'dcibMaskColorArgb'+discoveryclustersClustersItemBanner_with_content_container+ :: DiscoveryclustersClustersItemBanner_with_content_container+discoveryclustersClustersItemBanner_with_content_container =+ DiscoveryclustersClustersItemBanner_with_content_container'+ { _dcibFillColorArgb = Nothing+ , _dcibMoreButtonURL = Nothing+ , _dcibTextColorArgb = Nothing+ , _dcibMoreButtonText = Nothing+ , _dcibImageURL = Nothing+ , _dcibMaskColorArgb = Nothing+ }++dcibFillColorArgb :: Lens' DiscoveryclustersClustersItemBanner_with_content_container (Maybe Text)+dcibFillColorArgb+ = lens _dcibFillColorArgb+ (\ s a -> s{_dcibFillColorArgb = a})++dcibMoreButtonURL :: Lens' DiscoveryclustersClustersItemBanner_with_content_container (Maybe Text)+dcibMoreButtonURL+ = lens _dcibMoreButtonURL+ (\ s a -> s{_dcibMoreButtonURL = a})++dcibTextColorArgb :: Lens' DiscoveryclustersClustersItemBanner_with_content_container (Maybe Text)+dcibTextColorArgb+ = lens _dcibTextColorArgb+ (\ s a -> s{_dcibTextColorArgb = a})++dcibMoreButtonText :: Lens' DiscoveryclustersClustersItemBanner_with_content_container (Maybe Text)+dcibMoreButtonText+ = lens _dcibMoreButtonText+ (\ s a -> s{_dcibMoreButtonText = a})++dcibImageURL :: Lens' DiscoveryclustersClustersItemBanner_with_content_container (Maybe Text)+dcibImageURL+ = lens _dcibImageURL (\ s a -> s{_dcibImageURL = a})++dcibMaskColorArgb :: Lens' DiscoveryclustersClustersItemBanner_with_content_container (Maybe Text)+dcibMaskColorArgb+ = lens _dcibMaskColorArgb+ (\ s a -> s{_dcibMaskColorArgb = a})++instance FromJSON+ DiscoveryclustersClustersItemBanner_with_content_container+ where+ parseJSON+ = withObject+ "DiscoveryclustersClustersItemBannerWithContentContainer"+ (\ o ->+ DiscoveryclustersClustersItemBanner_with_content_container'+ <$>+ (o .:? "fillColorArgb") <*> (o .:? "moreButtonUrl")+ <*> (o .:? "textColorArgb")+ <*> (o .:? "moreButtonText")+ <*> (o .:? "imageUrl")+ <*> (o .:? "maskColorArgb"))++instance ToJSON+ DiscoveryclustersClustersItemBanner_with_content_container+ where+ toJSON+ DiscoveryclustersClustersItemBanner_with_content_container'{..}+ = object+ (catMaybes+ [("fillColorArgb" .=) <$> _dcibFillColorArgb,+ ("moreButtonUrl" .=) <$> _dcibMoreButtonURL,+ ("textColorArgb" .=) <$> _dcibTextColorArgb,+ ("moreButtonText" .=) <$> _dcibMoreButtonText,+ ("imageUrl" .=) <$> _dcibImageURL,+ ("maskColorArgb" .=) <$> _dcibMaskColorArgb])++--+-- /See:/ 'volume' smart constructor.+data Volume = Volume'+ { _vvUserInfo :: !(Maybe VolumeUserInfo)+ , _vvEtag :: !(Maybe Text)+ , _vvAccessInfo :: !(Maybe VolumeAccessInfo)+ , _vvKind :: !Text+ , _vvSearchInfo :: !(Maybe VolumeSearchInfo)+ , _vvSelfLink :: !(Maybe Text)+ , _vvLayerInfo :: !(Maybe VolumeLayerInfo)+ , _vvSaleInfo :: !(Maybe VolumeSaleInfo)+ , _vvId :: !(Maybe Text)+ , _vvRecommendedInfo :: !(Maybe VolumeRecommendedInfo)+ , _vvVolumeInfo :: !(Maybe VolumeVolumeInfo)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Volume' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vvUserInfo'+--+-- * 'vvEtag'+--+-- * 'vvAccessInfo'+--+-- * 'vvKind'+--+-- * 'vvSearchInfo'+--+-- * 'vvSelfLink'+--+-- * 'vvLayerInfo'+--+-- * 'vvSaleInfo'+--+-- * 'vvId'+--+-- * 'vvRecommendedInfo'+--+-- * 'vvVolumeInfo'+volume+ :: Volume+volume =+ Volume'+ { _vvUserInfo = Nothing+ , _vvEtag = Nothing+ , _vvAccessInfo = Nothing+ , _vvKind = "books#volume"+ , _vvSearchInfo = Nothing+ , _vvSelfLink = Nothing+ , _vvLayerInfo = Nothing+ , _vvSaleInfo = Nothing+ , _vvId = Nothing+ , _vvRecommendedInfo = Nothing+ , _vvVolumeInfo = Nothing+ }++-- | User specific information related to this volume. (e.g. page this user+-- last read or whether they purchased this book)+vvUserInfo :: Lens' Volume (Maybe VolumeUserInfo)+vvUserInfo+ = lens _vvUserInfo (\ s a -> s{_vvUserInfo = a})++-- | Opaque identifier for a specific version of a volume resource. (In LITE+-- projection)+vvEtag :: Lens' Volume (Maybe Text)+vvEtag = lens _vvEtag (\ s a -> s{_vvEtag = a})++-- | Any information about a volume related to reading or obtaining that+-- volume text. This information can depend on country (books may be public+-- domain in one country but not in another, e.g.).+vvAccessInfo :: Lens' Volume (Maybe VolumeAccessInfo)+vvAccessInfo+ = lens _vvAccessInfo (\ s a -> s{_vvAccessInfo = a})++-- | Resource type for a volume. (In LITE projection.)+vvKind :: Lens' Volume Text+vvKind = lens _vvKind (\ s a -> s{_vvKind = a})++-- | Search result information related to this volume.+vvSearchInfo :: Lens' Volume (Maybe VolumeSearchInfo)+vvSearchInfo+ = lens _vvSearchInfo (\ s a -> s{_vvSearchInfo = a})++-- | URL to this resource. (In LITE projection.)+vvSelfLink :: Lens' Volume (Maybe Text)+vvSelfLink+ = lens _vvSelfLink (\ s a -> s{_vvSelfLink = a})++-- | What layers exist in this volume and high level information about them.+vvLayerInfo :: Lens' Volume (Maybe VolumeLayerInfo)+vvLayerInfo+ = lens _vvLayerInfo (\ s a -> s{_vvLayerInfo = a})++-- | Any information about a volume related to the eBookstore and\/or+-- purchaseability. This information can depend on the country where the+-- request originates from (i.e. books may not be for sale in certain+-- countries).+vvSaleInfo :: Lens' Volume (Maybe VolumeSaleInfo)+vvSaleInfo+ = lens _vvSaleInfo (\ s a -> s{_vvSaleInfo = a})++-- | Unique identifier for a volume. (In LITE projection.)+vvId :: Lens' Volume (Maybe Text)+vvId = lens _vvId (\ s a -> s{_vvId = a})++-- | Recommendation related information for this volume.+vvRecommendedInfo :: Lens' Volume (Maybe VolumeRecommendedInfo)+vvRecommendedInfo+ = lens _vvRecommendedInfo+ (\ s a -> s{_vvRecommendedInfo = a})++-- | General volume information.+vvVolumeInfo :: Lens' Volume (Maybe VolumeVolumeInfo)+vvVolumeInfo+ = lens _vvVolumeInfo (\ s a -> s{_vvVolumeInfo = a})++instance FromJSON Volume where+ parseJSON+ = withObject "Volume"+ (\ o ->+ Volume' <$>+ (o .:? "userInfo") <*> (o .:? "etag") <*>+ (o .:? "accessInfo")+ <*> (o .:? "kind" .!= "books#volume")+ <*> (o .:? "searchInfo")+ <*> (o .:? "selfLink")+ <*> (o .:? "layerInfo")+ <*> (o .:? "saleInfo")+ <*> (o .:? "id")+ <*> (o .:? "recommendedInfo")+ <*> (o .:? "volumeInfo"))++instance ToJSON Volume where+ toJSON Volume'{..}+ = object+ (catMaybes+ [("userInfo" .=) <$> _vvUserInfo,+ ("etag" .=) <$> _vvEtag,+ ("accessInfo" .=) <$> _vvAccessInfo,+ Just ("kind" .= _vvKind),+ ("searchInfo" .=) <$> _vvSearchInfo,+ ("selfLink" .=) <$> _vvSelfLink,+ ("layerInfo" .=) <$> _vvLayerInfo,+ ("saleInfo" .=) <$> _vvSaleInfo, ("id" .=) <$> _vvId,+ ("recommendedInfo" .=) <$> _vvRecommendedInfo,+ ("volumeInfo" .=) <$> _vvVolumeInfo])++--+-- /See:/ 'geolayerDataGeoBoundaryItemItem' smart constructor.+data GeolayerDataGeoBoundaryItemItem = GeolayerDataGeoBoundaryItemItem'+ { _gdgbiiLatitude :: !(Maybe (Textual Word32))+ , _gdgbiiLongitude :: !(Maybe (Textual Word32))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'GeolayerDataGeoBoundaryItemItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gdgbiiLatitude'+--+-- * 'gdgbiiLongitude'+geolayerDataGeoBoundaryItemItem+ :: GeolayerDataGeoBoundaryItemItem+geolayerDataGeoBoundaryItemItem =+ GeolayerDataGeoBoundaryItemItem'+ { _gdgbiiLatitude = Nothing+ , _gdgbiiLongitude = Nothing+ }++gdgbiiLatitude :: Lens' GeolayerDataGeoBoundaryItemItem (Maybe Word32)+gdgbiiLatitude+ = lens _gdgbiiLatitude+ (\ s a -> s{_gdgbiiLatitude = a})+ . mapping _Coerce++gdgbiiLongitude :: Lens' GeolayerDataGeoBoundaryItemItem (Maybe Word32)+gdgbiiLongitude+ = lens _gdgbiiLongitude+ (\ s a -> s{_gdgbiiLongitude = a})+ . mapping _Coerce++instance FromJSON GeolayerDataGeoBoundaryItemItem+ where+ parseJSON+ = withObject "GeolayerDataGeoBoundaryItemItem"+ (\ o ->+ GeolayerDataGeoBoundaryItemItem' <$>+ (o .:? "latitude") <*> (o .:? "longitude"))++instance ToJSON GeolayerDataGeoBoundaryItemItem where+ toJSON GeolayerDataGeoBoundaryItemItem'{..}+ = object+ (catMaybes+ [("latitude" .=) <$> _gdgbiiLatitude,+ ("longitude" .=) <$> _gdgbiiLongitude])++--+-- /See:/ 'series' smart constructor.+data Series = Series'+ { _sKind :: !Text+ , _sSeries :: !(Maybe [SeriesSeriesItem])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Series' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sKind'+--+-- * 'sSeries'+series+ :: Series+series =+ Series'+ { _sKind = "books#series"+ , _sSeries = Nothing+ }++-- | Resource type.+sKind :: Lens' Series Text+sKind = lens _sKind (\ s a -> s{_sKind = a})++sSeries :: Lens' Series [SeriesSeriesItem]+sSeries+ = lens _sSeries (\ s a -> s{_sSeries = a}) . _Default+ . _Coerce++instance FromJSON Series where+ parseJSON+ = withObject "Series"+ (\ o ->+ Series' <$>+ (o .:? "kind" .!= "books#series") <*>+ (o .:? "series" .!= mempty))++instance ToJSON Series where+ toJSON Series'{..}+ = object+ (catMaybes+ [Just ("kind" .= _sKind),+ ("series" .=) <$> _sSeries])++--+-- /See:/ 'offersItemsItemItemsItem' smart constructor.+data OffersItemsItemItemsItem = OffersItemsItemItemsItem'+ { _oiiiiCanonicalVolumeLink :: !(Maybe Text)+ , _oiiiiCoverURL :: !(Maybe Text)+ , _oiiiiVolumeId :: !(Maybe Text)+ , _oiiiiAuthor :: !(Maybe Text)+ , _oiiiiTitle :: !(Maybe Text)+ , _oiiiiDescription :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'OffersItemsItemItemsItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'oiiiiCanonicalVolumeLink'+--+-- * 'oiiiiCoverURL'+--+-- * 'oiiiiVolumeId'+--+-- * 'oiiiiAuthor'+--+-- * 'oiiiiTitle'+--+-- * 'oiiiiDescription'+offersItemsItemItemsItem+ :: OffersItemsItemItemsItem+offersItemsItemItemsItem =+ OffersItemsItemItemsItem'+ { _oiiiiCanonicalVolumeLink = Nothing+ , _oiiiiCoverURL = Nothing+ , _oiiiiVolumeId = Nothing+ , _oiiiiAuthor = Nothing+ , _oiiiiTitle = Nothing+ , _oiiiiDescription = Nothing+ }++oiiiiCanonicalVolumeLink :: Lens' OffersItemsItemItemsItem (Maybe Text)+oiiiiCanonicalVolumeLink+ = lens _oiiiiCanonicalVolumeLink+ (\ s a -> s{_oiiiiCanonicalVolumeLink = a})++oiiiiCoverURL :: Lens' OffersItemsItemItemsItem (Maybe Text)+oiiiiCoverURL+ = lens _oiiiiCoverURL+ (\ s a -> s{_oiiiiCoverURL = a})++oiiiiVolumeId :: Lens' OffersItemsItemItemsItem (Maybe Text)+oiiiiVolumeId+ = lens _oiiiiVolumeId+ (\ s a -> s{_oiiiiVolumeId = a})++oiiiiAuthor :: Lens' OffersItemsItemItemsItem (Maybe Text)+oiiiiAuthor+ = lens _oiiiiAuthor (\ s a -> s{_oiiiiAuthor = a})++oiiiiTitle :: Lens' OffersItemsItemItemsItem (Maybe Text)+oiiiiTitle+ = lens _oiiiiTitle (\ s a -> s{_oiiiiTitle = a})++oiiiiDescription :: Lens' OffersItemsItemItemsItem (Maybe Text)+oiiiiDescription+ = lens _oiiiiDescription+ (\ s a -> s{_oiiiiDescription = a})++instance FromJSON OffersItemsItemItemsItem where+ parseJSON+ = withObject "OffersItemsItemItemsItem"+ (\ o ->+ OffersItemsItemItemsItem' <$>+ (o .:? "canonicalVolumeLink") <*> (o .:? "coverUrl")+ <*> (o .:? "volumeId")+ <*> (o .:? "author")+ <*> (o .:? "title")+ <*> (o .:? "description"))++instance ToJSON OffersItemsItemItemsItem where+ toJSON OffersItemsItemItemsItem'{..}+ = object+ (catMaybes+ [("canonicalVolumeLink" .=) <$>+ _oiiiiCanonicalVolumeLink,+ ("coverUrl" .=) <$> _oiiiiCoverURL,+ ("volumeId" .=) <$> _oiiiiVolumeId,+ ("author" .=) <$> _oiiiiAuthor,+ ("title" .=) <$> _oiiiiTitle,+ ("description" .=) <$> _oiiiiDescription])++--+-- /See:/ 'dictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItemSource' smart constructor.+data DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItemSource = DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItemSource'+ { _dddwisidieisURL :: !(Maybe Text)+ , _dddwisidieisAttribution :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItemSource' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dddwisidieisURL'+--+-- * 'dddwisidieisAttribution'+dictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItemSource+ :: DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItemSource+dictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItemSource =+ DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItemSource'+ { _dddwisidieisURL = Nothing+ , _dddwisidieisAttribution = Nothing+ }++dddwisidieisURL :: Lens' DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItemSource (Maybe Text)+dddwisidieisURL+ = lens _dddwisidieisURL+ (\ s a -> s{_dddwisidieisURL = a})++dddwisidieisAttribution :: Lens' DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItemSource (Maybe Text)+dddwisidieisAttribution+ = lens _dddwisidieisAttribution+ (\ s a -> s{_dddwisidieisAttribution = a})++instance FromJSON+ DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItemSource+ where+ parseJSON+ = withObject+ "DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItemSource"+ (\ o ->+ DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItemSource'+ <$> (o .:? "url") <*> (o .:? "attribution"))++instance ToJSON+ DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItemSource+ where+ toJSON+ DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItemSource'{..}+ = object+ (catMaybes+ [("url" .=) <$> _dddwisidieisURL,+ ("attribution" .=) <$> _dddwisidieisAttribution])++--+-- /See:/ 'geolayerDataCommon' smart constructor.+data GeolayerDataCommon = GeolayerDataCommon'+ { _gdcSnippet :: !(Maybe Text)+ , _gdcSnippetURL :: !(Maybe Text)+ , _gdcLang :: !(Maybe Text)+ , _gdcTitle :: !(Maybe Text)+ , _gdcPreviewImageURL :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'GeolayerDataCommon' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gdcSnippet'+--+-- * 'gdcSnippetURL'+--+-- * 'gdcLang'+--+-- * 'gdcTitle'+--+-- * 'gdcPreviewImageURL'+geolayerDataCommon+ :: GeolayerDataCommon+geolayerDataCommon =+ GeolayerDataCommon'+ { _gdcSnippet = Nothing+ , _gdcSnippetURL = Nothing+ , _gdcLang = Nothing+ , _gdcTitle = Nothing+ , _gdcPreviewImageURL = Nothing+ }++-- | The description for this location.+gdcSnippet :: Lens' GeolayerDataCommon (Maybe Text)+gdcSnippet+ = lens _gdcSnippet (\ s a -> s{_gdcSnippet = a})++-- | The URL for information for this location. Ex: wikipedia link.+gdcSnippetURL :: Lens' GeolayerDataCommon (Maybe Text)+gdcSnippetURL+ = lens _gdcSnippetURL+ (\ s a -> s{_gdcSnippetURL = a})++-- | The language of the information url and description.+gdcLang :: Lens' GeolayerDataCommon (Maybe Text)+gdcLang = lens _gdcLang (\ s a -> s{_gdcLang = a})++-- | The display title and localized canonical name to use when searching for+-- this entity on Google search.+gdcTitle :: Lens' GeolayerDataCommon (Maybe Text)+gdcTitle = lens _gdcTitle (\ s a -> s{_gdcTitle = a})++-- | The URL for the preview image information.+gdcPreviewImageURL :: Lens' GeolayerDataCommon (Maybe Text)+gdcPreviewImageURL+ = lens _gdcPreviewImageURL+ (\ s a -> s{_gdcPreviewImageURL = a})++instance FromJSON GeolayerDataCommon where+ parseJSON+ = withObject "GeolayerDataCommon"+ (\ o ->+ GeolayerDataCommon' <$>+ (o .:? "snippet") <*> (o .:? "snippetUrl") <*>+ (o .:? "lang")+ <*> (o .:? "title")+ <*> (o .:? "previewImageUrl"))++instance ToJSON GeolayerDataCommon where+ toJSON GeolayerDataCommon'{..}+ = object+ (catMaybes+ [("snippet" .=) <$> _gdcSnippet,+ ("snippetUrl" .=) <$> _gdcSnippetURL,+ ("lang" .=) <$> _gdcLang, ("title" .=) <$> _gdcTitle,+ ("previewImageUrl" .=) <$> _gdcPreviewImageURL])++--+-- /See:/ 'geolayerDataGeo' smart constructor.+data GeolayerDataGeo = GeolayerDataGeo'+ { _gdgMapType :: !(Maybe Text)+ , _gdgCachePolicy :: !(Maybe Text)+ , _gdgViewport :: !(Maybe GeolayerDataGeoViewport)+ , _gdgBoundary :: !(Maybe [[GeolayerDataGeoBoundaryItemItem]])+ , _gdgLatitude :: !(Maybe (Textual Double))+ , _gdgZoom :: !(Maybe (Textual Int32))+ , _gdgCountryCode :: !(Maybe Text)+ , _gdgLongitude :: !(Maybe (Textual Double))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'GeolayerDataGeo' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gdgMapType'+--+-- * 'gdgCachePolicy'+--+-- * 'gdgViewport'+--+-- * 'gdgBoundary'+--+-- * 'gdgLatitude'+--+-- * 'gdgZoom'+--+-- * 'gdgCountryCode'+--+-- * 'gdgLongitude'+geolayerDataGeo+ :: GeolayerDataGeo+geolayerDataGeo =+ GeolayerDataGeo'+ { _gdgMapType = Nothing+ , _gdgCachePolicy = Nothing+ , _gdgViewport = Nothing+ , _gdgBoundary = Nothing+ , _gdgLatitude = Nothing+ , _gdgZoom = Nothing+ , _gdgCountryCode = Nothing+ , _gdgLongitude = Nothing+ }++-- | The type of map that should be used for this location. EX: HYBRID,+-- ROADMAP, SATELLITE, TERRAIN+gdgMapType :: Lens' GeolayerDataGeo (Maybe Text)+gdgMapType+ = lens _gdgMapType (\ s a -> s{_gdgMapType = a})++-- | The cache policy active for this data. EX: UNRESTRICTED, RESTRICTED,+-- NEVER+gdgCachePolicy :: Lens' GeolayerDataGeo (Maybe Text)+gdgCachePolicy+ = lens _gdgCachePolicy+ (\ s a -> s{_gdgCachePolicy = a})++-- | The viewport for showing this location. This is a latitude, longitude+-- rectangle.+gdgViewport :: Lens' GeolayerDataGeo (Maybe GeolayerDataGeoViewport)+gdgViewport+ = lens _gdgViewport (\ s a -> s{_gdgViewport = a})++-- | The boundary of the location as a set of loops containing pairs of+-- latitude, longitude coordinates.+gdgBoundary :: Lens' GeolayerDataGeo [[GeolayerDataGeoBoundaryItemItem]]+gdgBoundary+ = lens _gdgBoundary (\ s a -> s{_gdgBoundary = a}) .+ _Default+ . _Coerce++-- | The latitude of the location.+gdgLatitude :: Lens' GeolayerDataGeo (Maybe Double)+gdgLatitude+ = lens _gdgLatitude (\ s a -> s{_gdgLatitude = a}) .+ mapping _Coerce++-- | The Zoom level to use for the map. Zoom levels between 0 (the lowest+-- zoom level, in which the entire world can be seen on one map) to 21++-- (down to individual buildings). See:+-- https:\/\/developers.google.com\/maps\/documentation\/staticmaps\/#Zoomlevels+gdgZoom :: Lens' GeolayerDataGeo (Maybe Int32)+gdgZoom+ = lens _gdgZoom (\ s a -> s{_gdgZoom = a}) .+ mapping _Coerce++-- | The country code of the location.+gdgCountryCode :: Lens' GeolayerDataGeo (Maybe Text)+gdgCountryCode+ = lens _gdgCountryCode+ (\ s a -> s{_gdgCountryCode = a})++-- | The longitude of the location.+gdgLongitude :: Lens' GeolayerDataGeo (Maybe Double)+gdgLongitude+ = lens _gdgLongitude (\ s a -> s{_gdgLongitude = a})+ . mapping _Coerce++instance FromJSON GeolayerDataGeo where+ parseJSON+ = withObject "GeolayerDataGeo"+ (\ o ->+ GeolayerDataGeo' <$>+ (o .:? "mapType") <*> (o .:? "cachePolicy") <*>+ (o .:? "viewport")+ <*> (o .:? "boundary" .!= mempty)+ <*> (o .:? "latitude")+ <*> (o .:? "zoom")+ <*> (o .:? "countryCode")+ <*> (o .:? "longitude"))++instance ToJSON GeolayerDataGeo where+ toJSON GeolayerDataGeo'{..}+ = object+ (catMaybes+ [("mapType" .=) <$> _gdgMapType,+ ("cachePolicy" .=) <$> _gdgCachePolicy,+ ("viewport" .=) <$> _gdgViewport,+ ("boundary" .=) <$> _gdgBoundary,+ ("latitude" .=) <$> _gdgLatitude,+ ("zoom" .=) <$> _gdgZoom,+ ("countryCode" .=) <$> _gdgCountryCode,+ ("longitude" .=) <$> _gdgLongitude])++--+-- /See:/ 'dictlayerDataDictWordsItem' smart constructor.+data DictlayerDataDictWordsItem = DictlayerDataDictWordsItem'+ { _dddwiSenses :: !(Maybe [DictlayerDataDictWordsItemSensesItem])+ , _dddwiSource :: !(Maybe DictlayerDataDictWordsItemSource)+ , _dddwiDerivatives :: !(Maybe [DictlayerDataDictWordsItemDerivativesItem])+ , _dddwiExamples :: !(Maybe [DictlayerDataDictWordsItemExamplesItem])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DictlayerDataDictWordsItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dddwiSenses'+--+-- * 'dddwiSource'+--+-- * 'dddwiDerivatives'+--+-- * 'dddwiExamples'+dictlayerDataDictWordsItem+ :: DictlayerDataDictWordsItem+dictlayerDataDictWordsItem =+ DictlayerDataDictWordsItem'+ { _dddwiSenses = Nothing+ , _dddwiSource = Nothing+ , _dddwiDerivatives = Nothing+ , _dddwiExamples = Nothing+ }++dddwiSenses :: Lens' DictlayerDataDictWordsItem [DictlayerDataDictWordsItemSensesItem]+dddwiSenses+ = lens _dddwiSenses (\ s a -> s{_dddwiSenses = a}) .+ _Default+ . _Coerce++-- | The words with different meanings but not related words, e.g. \"go\"+-- (game) and \"go\" (verb).+dddwiSource :: Lens' DictlayerDataDictWordsItem (Maybe DictlayerDataDictWordsItemSource)+dddwiSource+ = lens _dddwiSource (\ s a -> s{_dddwiSource = a})++dddwiDerivatives :: Lens' DictlayerDataDictWordsItem [DictlayerDataDictWordsItemDerivativesItem]+dddwiDerivatives+ = lens _dddwiDerivatives+ (\ s a -> s{_dddwiDerivatives = a})+ . _Default+ . _Coerce++dddwiExamples :: Lens' DictlayerDataDictWordsItem [DictlayerDataDictWordsItemExamplesItem]+dddwiExamples+ = lens _dddwiExamples+ (\ s a -> s{_dddwiExamples = a})+ . _Default+ . _Coerce++instance FromJSON DictlayerDataDictWordsItem where+ parseJSON+ = withObject "DictlayerDataDictWordsItem"+ (\ o ->+ DictlayerDataDictWordsItem' <$>+ (o .:? "senses" .!= mempty) <*> (o .:? "source") <*>+ (o .:? "derivatives" .!= mempty)+ <*> (o .:? "examples" .!= mempty))++instance ToJSON DictlayerDataDictWordsItem where+ toJSON DictlayerDataDictWordsItem'{..}+ = object+ (catMaybes+ [("senses" .=) <$> _dddwiSenses,+ ("source" .=) <$> _dddwiSource,+ ("derivatives" .=) <$> _dddwiDerivatives,+ ("examples" .=) <$> _dddwiExamples])++--+-- /See:/ 'categoryItemsItem' smart constructor.+data CategoryItemsItem = CategoryItemsItem'+ { _ciiName :: !(Maybe Text)+ , _ciiCategoryId :: !(Maybe Text)+ , _ciiBadgeURL :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'CategoryItemsItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ciiName'+--+-- * 'ciiCategoryId'+--+-- * 'ciiBadgeURL'+categoryItemsItem+ :: CategoryItemsItem+categoryItemsItem =+ CategoryItemsItem'+ { _ciiName = Nothing+ , _ciiCategoryId = Nothing+ , _ciiBadgeURL = Nothing+ }++ciiName :: Lens' CategoryItemsItem (Maybe Text)+ciiName = lens _ciiName (\ s a -> s{_ciiName = a})++ciiCategoryId :: Lens' CategoryItemsItem (Maybe Text)+ciiCategoryId+ = lens _ciiCategoryId+ (\ s a -> s{_ciiCategoryId = a})++ciiBadgeURL :: Lens' CategoryItemsItem (Maybe Text)+ciiBadgeURL+ = lens _ciiBadgeURL (\ s a -> s{_ciiBadgeURL = a})++instance FromJSON CategoryItemsItem where+ parseJSON+ = withObject "CategoryItemsItem"+ (\ o ->+ CategoryItemsItem' <$>+ (o .:? "name") <*> (o .:? "categoryId") <*>+ (o .:? "badgeUrl"))++instance ToJSON CategoryItemsItem where+ toJSON CategoryItemsItem'{..}+ = object+ (catMaybes+ [("name" .=) <$> _ciiName,+ ("categoryId" .=) <$> _ciiCategoryId,+ ("badgeUrl" .=) <$> _ciiBadgeURL])++--+-- /See:/ 'dictlayerDataDictWordsItemDerivativesItemSource' smart constructor.+data DictlayerDataDictWordsItemDerivativesItemSource = DictlayerDataDictWordsItemDerivativesItemSource'+ { _dddwidisURL :: !(Maybe Text)+ , _dddwidisAttribution :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DictlayerDataDictWordsItemDerivativesItemSource' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dddwidisURL'+--+-- * 'dddwidisAttribution'+dictlayerDataDictWordsItemDerivativesItemSource+ :: DictlayerDataDictWordsItemDerivativesItemSource+dictlayerDataDictWordsItemDerivativesItemSource =+ DictlayerDataDictWordsItemDerivativesItemSource'+ { _dddwidisURL = Nothing+ , _dddwidisAttribution = Nothing+ }++dddwidisURL :: Lens' DictlayerDataDictWordsItemDerivativesItemSource (Maybe Text)+dddwidisURL+ = lens _dddwidisURL (\ s a -> s{_dddwidisURL = a})++dddwidisAttribution :: Lens' DictlayerDataDictWordsItemDerivativesItemSource (Maybe Text)+dddwidisAttribution+ = lens _dddwidisAttribution+ (\ s a -> s{_dddwidisAttribution = a})++instance FromJSON+ DictlayerDataDictWordsItemDerivativesItemSource where+ parseJSON+ = withObject+ "DictlayerDataDictWordsItemDerivativesItemSource"+ (\ o ->+ DictlayerDataDictWordsItemDerivativesItemSource' <$>+ (o .:? "url") <*> (o .:? "attribution"))++instance ToJSON+ DictlayerDataDictWordsItemDerivativesItemSource where+ toJSON+ DictlayerDataDictWordsItemDerivativesItemSource'{..}+ = object+ (catMaybes+ [("url" .=) <$> _dddwidisURL,+ ("attribution" .=) <$> _dddwidisAttribution])++--+-- /See:/ 'geolayerData' smart constructor.+data GeolayerData = GeolayerData'+ { _gdKind :: !Text+ , _gdGeo :: !(Maybe GeolayerDataGeo)+ , _gdCommon :: !(Maybe GeolayerDataCommon)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'GeolayerData' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gdKind'+--+-- * 'gdGeo'+--+-- * 'gdCommon'+geolayerData+ :: GeolayerData+geolayerData =+ GeolayerData'+ { _gdKind = "books#geolayerdata"+ , _gdGeo = Nothing+ , _gdCommon = Nothing+ }++gdKind :: Lens' GeolayerData Text+gdKind = lens _gdKind (\ s a -> s{_gdKind = a})++gdGeo :: Lens' GeolayerData (Maybe GeolayerDataGeo)+gdGeo = lens _gdGeo (\ s a -> s{_gdGeo = a})++gdCommon :: Lens' GeolayerData (Maybe GeolayerDataCommon)+gdCommon = lens _gdCommon (\ s a -> s{_gdCommon = a})++instance FromJSON GeolayerData where+ parseJSON+ = withObject "GeolayerData"+ (\ o ->+ GeolayerData' <$>+ (o .:? "kind" .!= "books#geolayerdata") <*>+ (o .:? "geo")+ <*> (o .:? "common"))++instance ToJSON GeolayerData where+ toJSON GeolayerData'{..}+ = object+ (catMaybes+ [Just ("kind" .= _gdKind), ("geo" .=) <$> _gdGeo,+ ("common" .=) <$> _gdCommon])++-- | The words with different meanings but not related words, e.g. \"go\"+-- (game) and \"go\" (verb).+--+-- /See:/ 'dictlayerDataDictWordsItemSource' smart constructor.+data DictlayerDataDictWordsItemSource = DictlayerDataDictWordsItemSource'+ { _dddwisURL :: !(Maybe Text)+ , _dddwisAttribution :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DictlayerDataDictWordsItemSource' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dddwisURL'+--+-- * 'dddwisAttribution'+dictlayerDataDictWordsItemSource+ :: DictlayerDataDictWordsItemSource+dictlayerDataDictWordsItemSource =+ DictlayerDataDictWordsItemSource'+ { _dddwisURL = Nothing+ , _dddwisAttribution = Nothing+ }++dddwisURL :: Lens' DictlayerDataDictWordsItemSource (Maybe Text)+dddwisURL+ = lens _dddwisURL (\ s a -> s{_dddwisURL = a})++dddwisAttribution :: Lens' DictlayerDataDictWordsItemSource (Maybe Text)+dddwisAttribution+ = lens _dddwisAttribution+ (\ s a -> s{_dddwisAttribution = a})++instance FromJSON DictlayerDataDictWordsItemSource+ where+ parseJSON+ = withObject "DictlayerDataDictWordsItemSource"+ (\ o ->+ DictlayerDataDictWordsItemSource' <$>+ (o .:? "url") <*> (o .:? "attribution"))++instance ToJSON DictlayerDataDictWordsItemSource+ where+ toJSON DictlayerDataDictWordsItemSource'{..}+ = object+ (catMaybes+ [("url" .=) <$> _dddwisURL,+ ("attribution" .=) <$> _dddwisAttribution])++--+-- /See:/ 'dictlayerDataDictWordsItemDerivativesItem' smart constructor.+data DictlayerDataDictWordsItemDerivativesItem = DictlayerDataDictWordsItemDerivativesItem'+ { _dddwidiText :: !(Maybe Text)+ , _dddwidiSource :: !(Maybe DictlayerDataDictWordsItemDerivativesItemSource)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DictlayerDataDictWordsItemDerivativesItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dddwidiText'+--+-- * 'dddwidiSource'+dictlayerDataDictWordsItemDerivativesItem+ :: DictlayerDataDictWordsItemDerivativesItem+dictlayerDataDictWordsItemDerivativesItem =+ DictlayerDataDictWordsItemDerivativesItem'+ { _dddwidiText = Nothing+ , _dddwidiSource = Nothing+ }++dddwidiText :: Lens' DictlayerDataDictWordsItemDerivativesItem (Maybe Text)+dddwidiText+ = lens _dddwidiText (\ s a -> s{_dddwidiText = a})++dddwidiSource :: Lens' DictlayerDataDictWordsItemDerivativesItem (Maybe DictlayerDataDictWordsItemDerivativesItemSource)+dddwidiSource+ = lens _dddwidiSource+ (\ s a -> s{_dddwidiSource = a})++instance FromJSON+ DictlayerDataDictWordsItemDerivativesItem where+ parseJSON+ = withObject+ "DictlayerDataDictWordsItemDerivativesItem"+ (\ o ->+ DictlayerDataDictWordsItemDerivativesItem' <$>+ (o .:? "text") <*> (o .:? "source"))++instance ToJSON+ DictlayerDataDictWordsItemDerivativesItem where+ toJSON DictlayerDataDictWordsItemDerivativesItem'{..}+ = object+ (catMaybes+ [("text" .=) <$> _dddwidiText,+ ("source" .=) <$> _dddwidiSource])++--+-- /See:/ 'dictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItem' smart constructor.+data DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItem = DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItem'+ { _dddwisidieiText :: !(Maybe Text)+ , _dddwisidieiSource :: !(Maybe DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItemSource)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dddwisidieiText'+--+-- * 'dddwisidieiSource'+dictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItem+ :: DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItem+dictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItem =+ DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItem'+ { _dddwisidieiText = Nothing+ , _dddwisidieiSource = Nothing+ }++dddwisidieiText :: Lens' DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItem (Maybe Text)+dddwisidieiText+ = lens _dddwisidieiText+ (\ s a -> s{_dddwisidieiText = a})++dddwisidieiSource :: Lens' DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItem (Maybe DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItemSource)+dddwisidieiSource+ = lens _dddwisidieiSource+ (\ s a -> s{_dddwisidieiSource = a})++instance FromJSON+ DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItem+ where+ parseJSON+ = withObject+ "DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItem"+ (\ o ->+ DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItem'+ <$> (o .:? "text") <*> (o .:? "source"))++instance ToJSON+ DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItem+ where+ toJSON+ DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItem'{..}+ = object+ (catMaybes+ [("text" .=) <$> _dddwisidieiText,+ ("source" .=) <$> _dddwisidieiSource])++--+-- /See:/ 'dictlayerData' smart constructor.+data DictlayerData = DictlayerData'+ { _ddKind :: !Text+ , _ddDict :: !(Maybe DictlayerDataDict)+ , _ddCommon :: !(Maybe DictlayerDataCommon)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DictlayerData' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ddKind'+--+-- * 'ddDict'+--+-- * 'ddCommon'+dictlayerData+ :: DictlayerData+dictlayerData =+ DictlayerData'+ { _ddKind = "books#dictlayerdata"+ , _ddDict = Nothing+ , _ddCommon = Nothing+ }++ddKind :: Lens' DictlayerData Text+ddKind = lens _ddKind (\ s a -> s{_ddKind = a})++ddDict :: Lens' DictlayerData (Maybe DictlayerDataDict)+ddDict = lens _ddDict (\ s a -> s{_ddDict = a})++ddCommon :: Lens' DictlayerData (Maybe DictlayerDataCommon)+ddCommon = lens _ddCommon (\ s a -> s{_ddCommon = a})++instance FromJSON DictlayerData where+ parseJSON+ = withObject "DictlayerData"+ (\ o ->+ DictlayerData' <$>+ (o .:? "kind" .!= "books#dictlayerdata") <*>+ (o .:? "dict")+ <*> (o .:? "common"))++instance ToJSON DictlayerData where+ toJSON DictlayerData'{..}+ = object+ (catMaybes+ [Just ("kind" .= _ddKind), ("dict" .=) <$> _ddDict,+ ("common" .=) <$> _ddCommon])++--+-- /See:/ 'dictlayerDataDictWordsItemSensesItemSynonymsItemSource' smart constructor.+data DictlayerDataDictWordsItemSensesItemSynonymsItemSource = DictlayerDataDictWordsItemSensesItemSynonymsItemSource'+ { _dddwisisisURL :: !(Maybe Text)+ , _dddwisisisAttribution :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DictlayerDataDictWordsItemSensesItemSynonymsItemSource' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dddwisisisURL'+--+-- * 'dddwisisisAttribution'+dictlayerDataDictWordsItemSensesItemSynonymsItemSource+ :: DictlayerDataDictWordsItemSensesItemSynonymsItemSource+dictlayerDataDictWordsItemSensesItemSynonymsItemSource =+ DictlayerDataDictWordsItemSensesItemSynonymsItemSource'+ { _dddwisisisURL = Nothing+ , _dddwisisisAttribution = Nothing+ }++dddwisisisURL :: Lens' DictlayerDataDictWordsItemSensesItemSynonymsItemSource (Maybe Text)+dddwisisisURL+ = lens _dddwisisisURL+ (\ s a -> s{_dddwisisisURL = a})++dddwisisisAttribution :: Lens' DictlayerDataDictWordsItemSensesItemSynonymsItemSource (Maybe Text)+dddwisisisAttribution+ = lens _dddwisisisAttribution+ (\ s a -> s{_dddwisisisAttribution = a})++instance FromJSON+ DictlayerDataDictWordsItemSensesItemSynonymsItemSource+ where+ parseJSON+ = withObject+ "DictlayerDataDictWordsItemSensesItemSynonymsItemSource"+ (\ o ->+ DictlayerDataDictWordsItemSensesItemSynonymsItemSource'+ <$> (o .:? "url") <*> (o .:? "attribution"))++instance ToJSON+ DictlayerDataDictWordsItemSensesItemSynonymsItemSource+ where+ toJSON+ DictlayerDataDictWordsItemSensesItemSynonymsItemSource'{..}+ = object+ (catMaybes+ [("url" .=) <$> _dddwisisisURL,+ ("attribution" .=) <$> _dddwisisisAttribution])++--+-- /See:/ 'seriesmembership' smart constructor.+data Seriesmembership = Seriesmembership'+ { _serNextPageToken :: !(Maybe Text)+ , _serKind :: !Text+ , _serMember :: !(Maybe [Volume])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Seriesmembership' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'serNextPageToken'+--+-- * 'serKind'+--+-- * 'serMember'+seriesmembership+ :: Seriesmembership+seriesmembership =+ Seriesmembership'+ { _serNextPageToken = Nothing+ , _serKind = "books#series#membership"+ , _serMember = Nothing+ }++serNextPageToken :: Lens' Seriesmembership (Maybe Text)+serNextPageToken+ = lens _serNextPageToken+ (\ s a -> s{_serNextPageToken = a})++-- | Resorce type.+serKind :: Lens' Seriesmembership Text+serKind = lens _serKind (\ s a -> s{_serKind = a})++serMember :: Lens' Seriesmembership [Volume]+serMember+ = lens _serMember (\ s a -> s{_serMember = a}) .+ _Default+ . _Coerce++instance FromJSON Seriesmembership where+ parseJSON+ = withObject "Seriesmembership"+ (\ o ->+ Seriesmembership' <$>+ (o .:? "nextPageToken") <*>+ (o .:? "kind" .!= "books#series#membership")+ <*> (o .:? "member" .!= mempty))++instance ToJSON Seriesmembership where+ toJSON Seriesmembership'{..}+ = object+ (catMaybes+ [("nextPageToken" .=) <$> _serNextPageToken,+ Just ("kind" .= _serKind),+ ("member" .=) <$> _serMember])++--+-- /See:/ 'userSettingsNotification' smart constructor.+newtype UserSettingsNotification = UserSettingsNotification'+ { _usnMoreFromAuthors :: Maybe UserSettingsNotificationMoreFromAuthors+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UserSettingsNotification' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'usnMoreFromAuthors'+userSettingsNotification+ :: UserSettingsNotification+userSettingsNotification =+ UserSettingsNotification'+ { _usnMoreFromAuthors = Nothing+ }++usnMoreFromAuthors :: Lens' UserSettingsNotification (Maybe UserSettingsNotificationMoreFromAuthors)+usnMoreFromAuthors+ = lens _usnMoreFromAuthors+ (\ s a -> s{_usnMoreFromAuthors = a})++instance FromJSON UserSettingsNotification where+ parseJSON+ = withObject "UserSettingsNotification"+ (\ o ->+ UserSettingsNotification' <$>+ (o .:? "moreFromAuthors"))++instance ToJSON UserSettingsNotification where+ toJSON UserSettingsNotification'{..}+ = object+ (catMaybes+ [("moreFromAuthors" .=) <$> _usnMoreFromAuthors])++--+-- /See:/ 'dictlayerDataDictWordsItemSensesItemSynonymsItem' smart constructor.+data DictlayerDataDictWordsItemSensesItemSynonymsItem = DictlayerDataDictWordsItemSensesItemSynonymsItem'+ { _dddwisisiText :: !(Maybe Text)+ , _dddwisisiSource :: !(Maybe DictlayerDataDictWordsItemSensesItemSynonymsItemSource)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DictlayerDataDictWordsItemSensesItemSynonymsItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dddwisisiText'+--+-- * 'dddwisisiSource'+dictlayerDataDictWordsItemSensesItemSynonymsItem+ :: DictlayerDataDictWordsItemSensesItemSynonymsItem+dictlayerDataDictWordsItemSensesItemSynonymsItem =+ DictlayerDataDictWordsItemSensesItemSynonymsItem'+ { _dddwisisiText = Nothing+ , _dddwisisiSource = Nothing+ }++dddwisisiText :: Lens' DictlayerDataDictWordsItemSensesItemSynonymsItem (Maybe Text)+dddwisisiText+ = lens _dddwisisiText+ (\ s a -> s{_dddwisisiText = a})++dddwisisiSource :: Lens' DictlayerDataDictWordsItemSensesItemSynonymsItem (Maybe DictlayerDataDictWordsItemSensesItemSynonymsItemSource)+dddwisisiSource+ = lens _dddwisisiSource+ (\ s a -> s{_dddwisisiSource = a})++instance FromJSON+ DictlayerDataDictWordsItemSensesItemSynonymsItem+ where+ parseJSON+ = withObject+ "DictlayerDataDictWordsItemSensesItemSynonymsItem"+ (\ o ->+ DictlayerDataDictWordsItemSensesItemSynonymsItem' <$>+ (o .:? "text") <*> (o .:? "source"))++instance ToJSON+ DictlayerDataDictWordsItemSensesItemSynonymsItem+ where+ toJSON+ DictlayerDataDictWordsItemSensesItemSynonymsItem'{..}+ = object+ (catMaybes+ [("text" .=) <$> _dddwisisiText,+ ("source" .=) <$> _dddwisisiSource])++--+-- /See:/ 'geolayerDataGeoViewportLo' smart constructor.+data GeolayerDataGeoViewportLo = GeolayerDataGeoViewportLo'+ { _gdgvlLatitude :: !(Maybe (Textual Double))+ , _gdgvlLongitude :: !(Maybe (Textual Double))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'GeolayerDataGeoViewportLo' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gdgvlLatitude'+--+-- * 'gdgvlLongitude'+geolayerDataGeoViewportLo+ :: GeolayerDataGeoViewportLo+geolayerDataGeoViewportLo =+ GeolayerDataGeoViewportLo'+ { _gdgvlLatitude = Nothing+ , _gdgvlLongitude = Nothing+ }++gdgvlLatitude :: Lens' GeolayerDataGeoViewportLo (Maybe Double)+gdgvlLatitude+ = lens _gdgvlLatitude+ (\ s a -> s{_gdgvlLatitude = a})+ . mapping _Coerce++gdgvlLongitude :: Lens' GeolayerDataGeoViewportLo (Maybe Double)+gdgvlLongitude+ = lens _gdgvlLongitude+ (\ s a -> s{_gdgvlLongitude = a})+ . mapping _Coerce++instance FromJSON GeolayerDataGeoViewportLo where+ parseJSON+ = withObject "GeolayerDataGeoViewportLo"+ (\ o ->+ GeolayerDataGeoViewportLo' <$>+ (o .:? "latitude") <*> (o .:? "longitude"))++instance ToJSON GeolayerDataGeoViewportLo where+ toJSON GeolayerDataGeoViewportLo'{..}+ = object+ (catMaybes+ [("latitude" .=) <$> _gdgvlLatitude,+ ("longitude" .=) <$> _gdgvlLongitude])++-- | Offer list (=undiscounted) price in Micros.+--+-- /See:/ 'volumeSaleInfoOffersItemListPrice' smart constructor.+data VolumeSaleInfoOffersItemListPrice = VolumeSaleInfoOffersItemListPrice'+ { _vsioilpCurrencyCode :: !(Maybe Text)+ , _vsioilpAmountInMicros :: !(Maybe (Textual Double))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'VolumeSaleInfoOffersItemListPrice' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vsioilpCurrencyCode'+--+-- * 'vsioilpAmountInMicros'+volumeSaleInfoOffersItemListPrice+ :: VolumeSaleInfoOffersItemListPrice+volumeSaleInfoOffersItemListPrice =+ VolumeSaleInfoOffersItemListPrice'+ { _vsioilpCurrencyCode = Nothing+ , _vsioilpAmountInMicros = Nothing+ }++vsioilpCurrencyCode :: Lens' VolumeSaleInfoOffersItemListPrice (Maybe Text)+vsioilpCurrencyCode+ = lens _vsioilpCurrencyCode+ (\ s a -> s{_vsioilpCurrencyCode = a})++vsioilpAmountInMicros :: Lens' VolumeSaleInfoOffersItemListPrice (Maybe Double)+vsioilpAmountInMicros+ = lens _vsioilpAmountInMicros+ (\ s a -> s{_vsioilpAmountInMicros = a})+ . mapping _Coerce++instance FromJSON VolumeSaleInfoOffersItemListPrice+ where+ parseJSON+ = withObject "VolumeSaleInfoOffersItemListPrice"+ (\ o ->+ VolumeSaleInfoOffersItemListPrice' <$>+ (o .:? "currencyCode") <*> (o .:? "amountInMicros"))++instance ToJSON VolumeSaleInfoOffersItemListPrice+ where+ toJSON VolumeSaleInfoOffersItemListPrice'{..}+ = object+ (catMaybes+ [("currencyCode" .=) <$> _vsioilpCurrencyCode,+ ("amountInMicros" .=) <$> _vsioilpAmountInMicros])++--+-- /See:/ 'downloadAccessRestriction' smart constructor.+data DownloadAccessRestriction = DownloadAccessRestriction'+ { _darJustAcquired :: !(Maybe Bool)+ , _darSignature :: !(Maybe Text)+ , _darKind :: !Text+ , _darMaxDownloadDevices :: !(Maybe (Textual Int32))+ , _darDownloadsAcquired :: !(Maybe (Textual Int32))+ , _darReasonCode :: !(Maybe Text)+ , _darVolumeId :: !(Maybe Text)+ , _darRestricted :: !(Maybe Bool)+ , _darSource :: !(Maybe Text)+ , _darDeviceAllowed :: !(Maybe Bool)+ , _darMessage :: !(Maybe Text)+ , _darNonce :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DownloadAccessRestriction' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'darJustAcquired'+--+-- * 'darSignature'+--+-- * 'darKind'+--+-- * 'darMaxDownloadDevices'+--+-- * 'darDownloadsAcquired'+--+-- * 'darReasonCode'+--+-- * 'darVolumeId'+--+-- * 'darRestricted'+--+-- * 'darSource'+--+-- * 'darDeviceAllowed'+--+-- * 'darMessage'+--+-- * 'darNonce'+downloadAccessRestriction+ :: DownloadAccessRestriction+downloadAccessRestriction =+ DownloadAccessRestriction'+ { _darJustAcquired = Nothing+ , _darSignature = Nothing+ , _darKind = "books#downloadAccessRestriction"+ , _darMaxDownloadDevices = Nothing+ , _darDownloadsAcquired = Nothing+ , _darReasonCode = Nothing+ , _darVolumeId = Nothing+ , _darRestricted = Nothing+ , _darSource = Nothing+ , _darDeviceAllowed = Nothing+ , _darMessage = Nothing+ , _darNonce = Nothing+ }++-- | If deviceAllowed, whether access was just acquired with this request.+darJustAcquired :: Lens' DownloadAccessRestriction (Maybe Bool)+darJustAcquired+ = lens _darJustAcquired+ (\ s a -> s{_darJustAcquired = a})++-- | Response signature.+darSignature :: Lens' DownloadAccessRestriction (Maybe Text)+darSignature+ = lens _darSignature (\ s a -> s{_darSignature = a})++-- | Resource type.+darKind :: Lens' DownloadAccessRestriction Text+darKind = lens _darKind (\ s a -> s{_darKind = a})++-- | If restricted, the maximum number of content download licenses for this+-- volume.+darMaxDownloadDevices :: Lens' DownloadAccessRestriction (Maybe Int32)+darMaxDownloadDevices+ = lens _darMaxDownloadDevices+ (\ s a -> s{_darMaxDownloadDevices = a})+ . mapping _Coerce++-- | If restricted, the number of content download licenses already acquired+-- (including the requesting client, if licensed).+darDownloadsAcquired :: Lens' DownloadAccessRestriction (Maybe Int32)+darDownloadsAcquired+ = lens _darDownloadsAcquired+ (\ s a -> s{_darDownloadsAcquired = a})+ . mapping _Coerce++-- | Error\/warning reason code. Additional codes may be added in the future.+-- 0 OK 100 ACCESS_DENIED_PUBLISHER_LIMIT 101 ACCESS_DENIED_LIMIT 200+-- WARNING_USED_LAST_ACCESS+darReasonCode :: Lens' DownloadAccessRestriction (Maybe Text)+darReasonCode+ = lens _darReasonCode+ (\ s a -> s{_darReasonCode = a})++-- | Identifies the volume for which this entry applies.+darVolumeId :: Lens' DownloadAccessRestriction (Maybe Text)+darVolumeId+ = lens _darVolumeId (\ s a -> s{_darVolumeId = a})++-- | Whether this volume has any download access restrictions.+darRestricted :: Lens' DownloadAccessRestriction (Maybe Bool)+darRestricted+ = lens _darRestricted+ (\ s a -> s{_darRestricted = a})++-- | Client app identifier for verification. Download access and+-- client-validation only.+darSource :: Lens' DownloadAccessRestriction (Maybe Text)+darSource+ = lens _darSource (\ s a -> s{_darSource = a})++-- | If restricted, whether access is granted for this (user, device,+-- volume).+darDeviceAllowed :: Lens' DownloadAccessRestriction (Maybe Bool)+darDeviceAllowed+ = lens _darDeviceAllowed+ (\ s a -> s{_darDeviceAllowed = a})++-- | Error\/warning message.+darMessage :: Lens' DownloadAccessRestriction (Maybe Text)+darMessage+ = lens _darMessage (\ s a -> s{_darMessage = a})++-- | Client nonce for verification. Download access and client-validation+-- only.+darNonce :: Lens' DownloadAccessRestriction (Maybe Text)+darNonce = lens _darNonce (\ s a -> s{_darNonce = a})++instance FromJSON DownloadAccessRestriction where+ parseJSON+ = withObject "DownloadAccessRestriction"+ (\ o ->+ DownloadAccessRestriction' <$>+ (o .:? "justAcquired") <*> (o .:? "signature") <*>+ (o .:? "kind" .!= "books#downloadAccessRestriction")+ <*> (o .:? "maxDownloadDevices")+ <*> (o .:? "downloadsAcquired")+ <*> (o .:? "reasonCode")+ <*> (o .:? "volumeId")+ <*> (o .:? "restricted")+ <*> (o .:? "source")+ <*> (o .:? "deviceAllowed")+ <*> (o .:? "message")+ <*> (o .:? "nonce"))++instance ToJSON DownloadAccessRestriction where+ toJSON DownloadAccessRestriction'{..}+ = object+ (catMaybes+ [("justAcquired" .=) <$> _darJustAcquired,+ ("signature" .=) <$> _darSignature,+ Just ("kind" .= _darKind),+ ("maxDownloadDevices" .=) <$> _darMaxDownloadDevices,+ ("downloadsAcquired" .=) <$> _darDownloadsAcquired,+ ("reasonCode" .=) <$> _darReasonCode,+ ("volumeId" .=) <$> _darVolumeId,+ ("restricted" .=) <$> _darRestricted,+ ("source" .=) <$> _darSource,+ ("deviceAllowed" .=) <$> _darDeviceAllowed,+ ("message" .=) <$> _darMessage,+ ("nonce" .=) <$> _darNonce])++--+-- /See:/ 'dictlayerDataCommon' smart constructor.+newtype DictlayerDataCommon = DictlayerDataCommon'+ { _ddcTitle :: Maybe Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DictlayerDataCommon' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ddcTitle'+dictlayerDataCommon+ :: DictlayerDataCommon+dictlayerDataCommon =+ DictlayerDataCommon'+ { _ddcTitle = Nothing+ }++-- | The display title and localized canonical name to use when searching for+-- this entity on Google search.+ddcTitle :: Lens' DictlayerDataCommon (Maybe Text)+ddcTitle = lens _ddcTitle (\ s a -> s{_ddcTitle = a})++instance FromJSON DictlayerDataCommon where+ parseJSON+ = withObject "DictlayerDataCommon"+ (\ o -> DictlayerDataCommon' <$> (o .:? "title"))++instance ToJSON DictlayerDataCommon where+ toJSON DictlayerDataCommon'{..}+ = object (catMaybes [("title" .=) <$> _ddcTitle])++--+-- /See:/ 'discoveryclustersClustersItem' smart constructor.+data DiscoveryclustersClustersItem = DiscoveryclustersClustersItem'+ { _dciBannerWithContentContainer :: !(Maybe DiscoveryclustersClustersItemBanner_with_content_container)+ , _dciUid :: !(Maybe Text)+ , _dciTotalVolumes :: !(Maybe (Textual Int32))+ , _dciSubTitle :: !(Maybe Text)+ , _dciTitle :: !(Maybe Text)+ , _dciVolumes :: !(Maybe [Volume])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DiscoveryclustersClustersItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dciBannerWithContentContainer'+--+-- * 'dciUid'+--+-- * 'dciTotalVolumes'+--+-- * 'dciSubTitle'+--+-- * 'dciTitle'+--+-- * 'dciVolumes'+discoveryclustersClustersItem+ :: DiscoveryclustersClustersItem+discoveryclustersClustersItem =+ DiscoveryclustersClustersItem'+ { _dciBannerWithContentContainer = Nothing+ , _dciUid = Nothing+ , _dciTotalVolumes = Nothing+ , _dciSubTitle = Nothing+ , _dciTitle = Nothing+ , _dciVolumes = Nothing+ }++dciBannerWithContentContainer :: Lens' DiscoveryclustersClustersItem (Maybe DiscoveryclustersClustersItemBanner_with_content_container)+dciBannerWithContentContainer+ = lens _dciBannerWithContentContainer+ (\ s a -> s{_dciBannerWithContentContainer = a})++dciUid :: Lens' DiscoveryclustersClustersItem (Maybe Text)+dciUid = lens _dciUid (\ s a -> s{_dciUid = a})++dciTotalVolumes :: Lens' DiscoveryclustersClustersItem (Maybe Int32)+dciTotalVolumes+ = lens _dciTotalVolumes+ (\ s a -> s{_dciTotalVolumes = a})+ . mapping _Coerce++dciSubTitle :: Lens' DiscoveryclustersClustersItem (Maybe Text)+dciSubTitle+ = lens _dciSubTitle (\ s a -> s{_dciSubTitle = a})++dciTitle :: Lens' DiscoveryclustersClustersItem (Maybe Text)+dciTitle = lens _dciTitle (\ s a -> s{_dciTitle = a})++dciVolumes :: Lens' DiscoveryclustersClustersItem [Volume]+dciVolumes+ = lens _dciVolumes (\ s a -> s{_dciVolumes = a}) .+ _Default+ . _Coerce++instance FromJSON DiscoveryclustersClustersItem where+ parseJSON+ = withObject "DiscoveryclustersClustersItem"+ (\ o ->+ DiscoveryclustersClustersItem' <$>+ (o .:? "banner_with_content_container") <*>+ (o .:? "uid")+ <*> (o .:? "totalVolumes")+ <*> (o .:? "subTitle")+ <*> (o .:? "title")+ <*> (o .:? "volumes" .!= mempty))++instance ToJSON DiscoveryclustersClustersItem where+ toJSON DiscoveryclustersClustersItem'{..}+ = object+ (catMaybes+ [("banner_with_content_container" .=) <$>+ _dciBannerWithContentContainer,+ ("uid" .=) <$> _dciUid,+ ("totalVolumes" .=) <$> _dciTotalVolumes,+ ("subTitle" .=) <$> _dciSubTitle,+ ("title" .=) <$> _dciTitle,+ ("volumes" .=) <$> _dciVolumes])++-- | The actual selling price of the book. This is the same as the suggested+-- retail or list price unless there are offers or discounts on this+-- volume. (In LITE projection.)+--+-- /See:/ 'volumeSaleInfoRetailPrice' smart constructor.+data VolumeSaleInfoRetailPrice = VolumeSaleInfoRetailPrice'+ { _vsirpAmount :: !(Maybe (Textual Double))+ , _vsirpCurrencyCode :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'VolumeSaleInfoRetailPrice' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vsirpAmount'+--+-- * 'vsirpCurrencyCode'+volumeSaleInfoRetailPrice+ :: VolumeSaleInfoRetailPrice+volumeSaleInfoRetailPrice =+ VolumeSaleInfoRetailPrice'+ { _vsirpAmount = Nothing+ , _vsirpCurrencyCode = Nothing+ }++-- | Amount in the currency listed below. (In LITE projection.)+vsirpAmount :: Lens' VolumeSaleInfoRetailPrice (Maybe Double)+vsirpAmount+ = lens _vsirpAmount (\ s a -> s{_vsirpAmount = a}) .+ mapping _Coerce++-- | An ISO 4217, three-letter currency code. (In LITE projection.)+vsirpCurrencyCode :: Lens' VolumeSaleInfoRetailPrice (Maybe Text)+vsirpCurrencyCode+ = lens _vsirpCurrencyCode+ (\ s a -> s{_vsirpCurrencyCode = a})++instance FromJSON VolumeSaleInfoRetailPrice where+ parseJSON+ = withObject "VolumeSaleInfoRetailPrice"+ (\ o ->+ VolumeSaleInfoRetailPrice' <$>+ (o .:? "amount") <*> (o .:? "currencyCode"))++instance ToJSON VolumeSaleInfoRetailPrice where+ toJSON VolumeSaleInfoRetailPrice'{..}+ = object+ (catMaybes+ [("amount" .=) <$> _vsirpAmount,+ ("currencyCode" .=) <$> _vsirpCurrencyCode])++-- | Suggested retail price. (In LITE projection.)+--+-- /See:/ 'volumeSaleInfoListPrice' smart constructor.+data VolumeSaleInfoListPrice = VolumeSaleInfoListPrice'+ { _vsilpAmount :: !(Maybe (Textual Double))+ , _vsilpCurrencyCode :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'VolumeSaleInfoListPrice' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vsilpAmount'+--+-- * 'vsilpCurrencyCode'+volumeSaleInfoListPrice+ :: VolumeSaleInfoListPrice+volumeSaleInfoListPrice =+ VolumeSaleInfoListPrice'+ { _vsilpAmount = Nothing+ , _vsilpCurrencyCode = Nothing+ }++-- | Amount in the currency listed below. (In LITE projection.)+vsilpAmount :: Lens' VolumeSaleInfoListPrice (Maybe Double)+vsilpAmount+ = lens _vsilpAmount (\ s a -> s{_vsilpAmount = a}) .+ mapping _Coerce++-- | An ISO 4217, three-letter currency code. (In LITE projection.)+vsilpCurrencyCode :: Lens' VolumeSaleInfoListPrice (Maybe Text)+vsilpCurrencyCode+ = lens _vsilpCurrencyCode+ (\ s a -> s{_vsilpCurrencyCode = a})++instance FromJSON VolumeSaleInfoListPrice where+ parseJSON+ = withObject "VolumeSaleInfoListPrice"+ (\ o ->+ VolumeSaleInfoListPrice' <$>+ (o .:? "amount") <*> (o .:? "currencyCode"))++instance ToJSON VolumeSaleInfoListPrice where+ toJSON VolumeSaleInfoListPrice'{..}+ = object+ (catMaybes+ [("amount" .=) <$> _vsilpAmount,+ ("currencyCode" .=) <$> _vsilpCurrencyCode])++--+-- /See:/ 'dictlayerDataDictWordsItemSensesItemConjugationsItem' smart constructor.+data DictlayerDataDictWordsItemSensesItemConjugationsItem = DictlayerDataDictWordsItemSensesItemConjugationsItem'+ { _dddwisiciValue :: !(Maybe Text)+ , _dddwisiciType :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DictlayerDataDictWordsItemSensesItemConjugationsItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dddwisiciValue'+--+-- * 'dddwisiciType'+dictlayerDataDictWordsItemSensesItemConjugationsItem+ :: DictlayerDataDictWordsItemSensesItemConjugationsItem+dictlayerDataDictWordsItemSensesItemConjugationsItem =+ DictlayerDataDictWordsItemSensesItemConjugationsItem'+ { _dddwisiciValue = Nothing+ , _dddwisiciType = Nothing+ }++dddwisiciValue :: Lens' DictlayerDataDictWordsItemSensesItemConjugationsItem (Maybe Text)+dddwisiciValue+ = lens _dddwisiciValue+ (\ s a -> s{_dddwisiciValue = a})++dddwisiciType :: Lens' DictlayerDataDictWordsItemSensesItemConjugationsItem (Maybe Text)+dddwisiciType+ = lens _dddwisiciType+ (\ s a -> s{_dddwisiciType = a})++instance FromJSON+ DictlayerDataDictWordsItemSensesItemConjugationsItem+ where+ parseJSON+ = withObject+ "DictlayerDataDictWordsItemSensesItemConjugationsItem"+ (\ o ->+ DictlayerDataDictWordsItemSensesItemConjugationsItem'+ <$> (o .:? "value") <*> (o .:? "type"))++instance ToJSON+ DictlayerDataDictWordsItemSensesItemConjugationsItem+ where+ toJSON+ DictlayerDataDictWordsItemSensesItemConjugationsItem'{..}+ = object+ (catMaybes+ [("value" .=) <$> _dddwisiciValue,+ ("type" .=) <$> _dddwisiciType])++--+-- /See:/ 'volume2' smart constructor.+data Volume2 = Volume2'+ { _voloNextPageToken :: !(Maybe Text)+ , _voloKind :: !Text+ , _voloItems :: !(Maybe [Volume])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Volume2' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'voloNextPageToken'+--+-- * 'voloKind'+--+-- * 'voloItems'+volume2+ :: Volume2+volume2 =+ Volume2'+ { _voloNextPageToken = Nothing+ , _voloKind = "onboarding#volume"+ , _voloItems = Nothing+ }++voloNextPageToken :: Lens' Volume2 (Maybe Text)+voloNextPageToken+ = lens _voloNextPageToken+ (\ s a -> s{_voloNextPageToken = a})++-- | Resource type.+voloKind :: Lens' Volume2 Text+voloKind = lens _voloKind (\ s a -> s{_voloKind = a})++-- | A list of volumes.+voloItems :: Lens' Volume2 [Volume]+voloItems+ = lens _voloItems (\ s a -> s{_voloItems = a}) .+ _Default+ . _Coerce++instance FromJSON Volume2 where+ parseJSON+ = withObject "Volume2"+ (\ o ->+ Volume2' <$>+ (o .:? "nextPageToken") <*>+ (o .:? "kind" .!= "onboarding#volume")+ <*> (o .:? "items" .!= mempty))++instance ToJSON Volume2 where+ toJSON Volume2'{..}+ = object+ (catMaybes+ [("nextPageToken" .=) <$> _voloNextPageToken,+ Just ("kind" .= _voloKind),+ ("items" .=) <$> _voloItems])++--+-- /See:/ 'review' smart constructor.+data Review = Review'+ { _rRating :: !(Maybe Text)+ , _rKind :: !Text+ , _rContent :: !(Maybe Text)+ , _rDate :: !(Maybe Text)+ , _rVolumeId :: !(Maybe Text)+ , _rAuthor :: !(Maybe ReviewAuthor)+ , _rSource :: !(Maybe ReviewSource)+ , _rFullTextURL :: !(Maybe Text)+ , _rTitle :: !(Maybe Text)+ , _rType :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Review' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rRating'+--+-- * 'rKind'+--+-- * 'rContent'+--+-- * 'rDate'+--+-- * 'rVolumeId'+--+-- * 'rAuthor'+--+-- * 'rSource'+--+-- * 'rFullTextURL'+--+-- * 'rTitle'+--+-- * 'rType'+review+ :: Review+review =+ Review'+ { _rRating = Nothing+ , _rKind = "books#review"+ , _rContent = Nothing+ , _rDate = Nothing+ , _rVolumeId = Nothing+ , _rAuthor = Nothing+ , _rSource = Nothing+ , _rFullTextURL = Nothing+ , _rTitle = Nothing+ , _rType = Nothing+ }++-- | Star rating for this review. Possible values are ONE, TWO, THREE, FOUR,+-- FIVE or NOT_RATED.+rRating :: Lens' Review (Maybe Text)+rRating = lens _rRating (\ s a -> s{_rRating = a})++-- | Resource type for a review.+rKind :: Lens' Review Text+rKind = lens _rKind (\ s a -> s{_rKind = a})++-- | Review text.+rContent :: Lens' Review (Maybe Text)+rContent = lens _rContent (\ s a -> s{_rContent = a})++-- | Date of this review.+rDate :: Lens' Review (Maybe Text)+rDate = lens _rDate (\ s a -> s{_rDate = a})++-- | Volume that this review is for.+rVolumeId :: Lens' Review (Maybe Text)+rVolumeId+ = lens _rVolumeId (\ s a -> s{_rVolumeId = a})++-- | Author of this review.+rAuthor :: Lens' Review (Maybe ReviewAuthor)+rAuthor = lens _rAuthor (\ s a -> s{_rAuthor = a})++-- | Information regarding the source of this review, when the review is not+-- from a Google Books user.+rSource :: Lens' Review (Maybe ReviewSource)+rSource = lens _rSource (\ s a -> s{_rSource = a})++-- | URL for the full review text, for reviews gathered from the web.+rFullTextURL :: Lens' Review (Maybe Text)+rFullTextURL+ = lens _rFullTextURL (\ s a -> s{_rFullTextURL = a})++-- | Title for this review.+rTitle :: Lens' Review (Maybe Text)+rTitle = lens _rTitle (\ s a -> s{_rTitle = a})++-- | Source type for this review. Possible values are EDITORIAL, WEB_USER or+-- GOOGLE_USER.+rType :: Lens' Review (Maybe Text)+rType = lens _rType (\ s a -> s{_rType = a})++instance FromJSON Review where+ parseJSON+ = withObject "Review"+ (\ o ->+ Review' <$>+ (o .:? "rating") <*>+ (o .:? "kind" .!= "books#review")+ <*> (o .:? "content")+ <*> (o .:? "date")+ <*> (o .:? "volumeId")+ <*> (o .:? "author")+ <*> (o .:? "source")+ <*> (o .:? "fullTextUrl")+ <*> (o .:? "title")+ <*> (o .:? "type"))++instance ToJSON Review where+ toJSON Review'{..}+ = object+ (catMaybes+ [("rating" .=) <$> _rRating, Just ("kind" .= _rKind),+ ("content" .=) <$> _rContent, ("date" .=) <$> _rDate,+ ("volumeId" .=) <$> _rVolumeId,+ ("author" .=) <$> _rAuthor,+ ("source" .=) <$> _rSource,+ ("fullTextUrl" .=) <$> _rFullTextURL,+ ("title" .=) <$> _rTitle, ("type" .=) <$> _rType])++-- | Period during this book is\/was a valid rental.+--+-- /See:/ 'volumeUserInfoRentalPeriod' smart constructor.+data VolumeUserInfoRentalPeriod = VolumeUserInfoRentalPeriod'+ { _vuirpEndUtcSec :: !(Maybe (Textual Int64))+ , _vuirpStartUtcSec :: !(Maybe (Textual Int64))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'VolumeUserInfoRentalPeriod' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vuirpEndUtcSec'+--+-- * 'vuirpStartUtcSec'+volumeUserInfoRentalPeriod+ :: VolumeUserInfoRentalPeriod+volumeUserInfoRentalPeriod =+ VolumeUserInfoRentalPeriod'+ { _vuirpEndUtcSec = Nothing+ , _vuirpStartUtcSec = Nothing+ }++vuirpEndUtcSec :: Lens' VolumeUserInfoRentalPeriod (Maybe Int64)+vuirpEndUtcSec+ = lens _vuirpEndUtcSec+ (\ s a -> s{_vuirpEndUtcSec = a})+ . mapping _Coerce++vuirpStartUtcSec :: Lens' VolumeUserInfoRentalPeriod (Maybe Int64)+vuirpStartUtcSec+ = lens _vuirpStartUtcSec+ (\ s a -> s{_vuirpStartUtcSec = a})+ . mapping _Coerce++instance FromJSON VolumeUserInfoRentalPeriod where+ parseJSON+ = withObject "VolumeUserInfoRentalPeriod"+ (\ o ->+ VolumeUserInfoRentalPeriod' <$>+ (o .:? "endUtcSec") <*> (o .:? "startUtcSec"))++instance ToJSON VolumeUserInfoRentalPeriod where+ toJSON VolumeUserInfoRentalPeriod'{..}+ = object+ (catMaybes+ [("endUtcSec" .=) <$> _vuirpEndUtcSec,+ ("startUtcSec" .=) <$> _vuirpStartUtcSec])++-- | Any information about a volume related to the eBookstore and\/or+-- purchaseability. This information can depend on the country where the+-- request originates from (i.e. books may not be for sale in certain+-- countries).+--+-- /See:/ 'volumeSaleInfo' smart constructor.+data VolumeSaleInfo = VolumeSaleInfo'+ { _vsiCountry :: !(Maybe Text)+ , _vsiOnSaleDate :: !(Maybe DateTime')+ , _vsiListPrice :: !(Maybe VolumeSaleInfoListPrice)+ , _vsiRetailPrice :: !(Maybe VolumeSaleInfoRetailPrice)+ , _vsiOffers :: !(Maybe [VolumeSaleInfoOffersItem])+ , _vsiBuyLink :: !(Maybe Text)+ , _vsiIsEbook :: !(Maybe Bool)+ , _vsiSaleability :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'VolumeSaleInfo' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vsiCountry'+--+-- * 'vsiOnSaleDate'+--+-- * 'vsiListPrice'+--+-- * 'vsiRetailPrice'+--+-- * 'vsiOffers'+--+-- * 'vsiBuyLink'+--+-- * 'vsiIsEbook'+--+-- * 'vsiSaleability'+volumeSaleInfo+ :: VolumeSaleInfo+volumeSaleInfo =+ VolumeSaleInfo'+ { _vsiCountry = Nothing+ , _vsiOnSaleDate = Nothing+ , _vsiListPrice = Nothing+ , _vsiRetailPrice = Nothing+ , _vsiOffers = Nothing+ , _vsiBuyLink = Nothing+ , _vsiIsEbook = Nothing+ , _vsiSaleability = Nothing+ }++-- | The two-letter ISO_3166-1 country code for which this sale information+-- is valid. (In LITE projection.)+vsiCountry :: Lens' VolumeSaleInfo (Maybe Text)+vsiCountry+ = lens _vsiCountry (\ s a -> s{_vsiCountry = a})++-- | The date on which this book is available for sale.+vsiOnSaleDate :: Lens' VolumeSaleInfo (Maybe UTCTime)+vsiOnSaleDate+ = lens _vsiOnSaleDate+ (\ s a -> s{_vsiOnSaleDate = a})+ . mapping _DateTime++-- | Suggested retail price. (In LITE projection.)+vsiListPrice :: Lens' VolumeSaleInfo (Maybe VolumeSaleInfoListPrice)+vsiListPrice+ = lens _vsiListPrice (\ s a -> s{_vsiListPrice = a})++-- | The actual selling price of the book. This is the same as the suggested+-- retail or list price unless there are offers or discounts on this+-- volume. (In LITE projection.)+vsiRetailPrice :: Lens' VolumeSaleInfo (Maybe VolumeSaleInfoRetailPrice)+vsiRetailPrice+ = lens _vsiRetailPrice+ (\ s a -> s{_vsiRetailPrice = a})++-- | Offers available for this volume (sales and rentals).+vsiOffers :: Lens' VolumeSaleInfo [VolumeSaleInfoOffersItem]+vsiOffers+ = lens _vsiOffers (\ s a -> s{_vsiOffers = a}) .+ _Default+ . _Coerce++-- | URL to purchase this volume on the Google Books site. (In LITE+-- projection)+vsiBuyLink :: Lens' VolumeSaleInfo (Maybe Text)+vsiBuyLink+ = lens _vsiBuyLink (\ s a -> s{_vsiBuyLink = a})++-- | Whether or not this volume is an eBook (can be added to the My eBooks+-- shelf).+vsiIsEbook :: Lens' VolumeSaleInfo (Maybe Bool)+vsiIsEbook+ = lens _vsiIsEbook (\ s a -> s{_vsiIsEbook = a})++-- | Whether or not this book is available for sale or offered for free in+-- the Google eBookstore for the country listed above. Possible values are+-- FOR_SALE, FOR_RENTAL_ONLY, FOR_SALE_AND_RENTAL, FREE, NOT_FOR_SALE, or+-- FOR_PREORDER.+vsiSaleability :: Lens' VolumeSaleInfo (Maybe Text)+vsiSaleability+ = lens _vsiSaleability+ (\ s a -> s{_vsiSaleability = a})++instance FromJSON VolumeSaleInfo where+ parseJSON+ = withObject "VolumeSaleInfo"+ (\ o ->+ VolumeSaleInfo' <$>+ (o .:? "country") <*> (o .:? "onSaleDate") <*>+ (o .:? "listPrice")+ <*> (o .:? "retailPrice")+ <*> (o .:? "offers" .!= mempty)+ <*> (o .:? "buyLink")+ <*> (o .:? "isEbook")+ <*> (o .:? "saleability"))++instance ToJSON VolumeSaleInfo where+ toJSON VolumeSaleInfo'{..}+ = object+ (catMaybes+ [("country" .=) <$> _vsiCountry,+ ("onSaleDate" .=) <$> _vsiOnSaleDate,+ ("listPrice" .=) <$> _vsiListPrice,+ ("retailPrice" .=) <$> _vsiRetailPrice,+ ("offers" .=) <$> _vsiOffers,+ ("buyLink" .=) <$> _vsiBuyLink,+ ("isEbook" .=) <$> _vsiIsEbook,+ ("saleability" .=) <$> _vsiSaleability])++--+-- /See:/ 'seriesSeriesItem' smart constructor.+data SeriesSeriesItem = SeriesSeriesItem'+ { _ssiSeriesId :: !(Maybe Text)+ , _ssiImageURL :: !(Maybe Text)+ , _ssiBannerImageURL :: !(Maybe Text)+ , _ssiTitle :: !(Maybe Text)+ , _ssiSeriesType :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'SeriesSeriesItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ssiSeriesId'+--+-- * 'ssiImageURL'+--+-- * 'ssiBannerImageURL'+--+-- * 'ssiTitle'+--+-- * 'ssiSeriesType'+seriesSeriesItem+ :: SeriesSeriesItem+seriesSeriesItem =+ SeriesSeriesItem'+ { _ssiSeriesId = Nothing+ , _ssiImageURL = Nothing+ , _ssiBannerImageURL = Nothing+ , _ssiTitle = Nothing+ , _ssiSeriesType = Nothing+ }++ssiSeriesId :: Lens' SeriesSeriesItem (Maybe Text)+ssiSeriesId+ = lens _ssiSeriesId (\ s a -> s{_ssiSeriesId = a})++ssiImageURL :: Lens' SeriesSeriesItem (Maybe Text)+ssiImageURL+ = lens _ssiImageURL (\ s a -> s{_ssiImageURL = a})++ssiBannerImageURL :: Lens' SeriesSeriesItem (Maybe Text)+ssiBannerImageURL+ = lens _ssiBannerImageURL+ (\ s a -> s{_ssiBannerImageURL = a})++ssiTitle :: Lens' SeriesSeriesItem (Maybe Text)+ssiTitle = lens _ssiTitle (\ s a -> s{_ssiTitle = a})++ssiSeriesType :: Lens' SeriesSeriesItem (Maybe Text)+ssiSeriesType+ = lens _ssiSeriesType+ (\ s a -> s{_ssiSeriesType = a})++instance FromJSON SeriesSeriesItem where+ parseJSON+ = withObject "SeriesSeriesItem"+ (\ o ->+ SeriesSeriesItem' <$>+ (o .:? "seriesId") <*> (o .:? "imageUrl") <*>+ (o .:? "bannerImageUrl")+ <*> (o .:? "title")+ <*> (o .:? "seriesType"))++instance ToJSON SeriesSeriesItem where+ toJSON SeriesSeriesItem'{..}+ = object+ (catMaybes+ [("seriesId" .=) <$> _ssiSeriesId,+ ("imageUrl" .=) <$> _ssiImageURL,+ ("bannerImageUrl" .=) <$> _ssiBannerImageURL,+ ("title" .=) <$> _ssiTitle,+ ("seriesType" .=) <$> _ssiSeriesType])++--+-- /See:/ 'metadata' smart constructor.+data Metadata = Metadata'+ { _mKind :: !Text+ , _mItems :: !(Maybe [MetadataItemsItem])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Metadata' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mKind'+--+-- * 'mItems'+metadata+ :: Metadata+metadata =+ Metadata'+ { _mKind = "dictionary#metadata"+ , _mItems = Nothing+ }++-- | Resource type.+mKind :: Lens' Metadata Text+mKind = lens _mKind (\ s a -> s{_mKind = a})++-- | A list of offline dictionary metadata.+mItems :: Lens' Metadata [MetadataItemsItem]+mItems+ = lens _mItems (\ s a -> s{_mItems = a}) . _Default .+ _Coerce++instance FromJSON Metadata where+ parseJSON+ = withObject "Metadata"+ (\ o ->+ Metadata' <$>+ (o .:? "kind" .!= "dictionary#metadata") <*>+ (o .:? "items" .!= mempty))++instance ToJSON Metadata where+ toJSON Metadata'{..}+ = object+ (catMaybes+ [Just ("kind" .= _mKind), ("items" .=) <$> _mItems])++-- | What layers exist in this volume and high level information about them.+--+-- /See:/ 'volumeLayerInfo' smart constructor.+newtype VolumeLayerInfo = VolumeLayerInfo'+ { _vliLayers :: Maybe [VolumeLayerInfoLayersItem]+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'VolumeLayerInfo' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vliLayers'+volumeLayerInfo+ :: VolumeLayerInfo+volumeLayerInfo =+ VolumeLayerInfo'+ { _vliLayers = Nothing+ }++-- | A layer should appear here if and only if the layer exists for this+-- book.+vliLayers :: Lens' VolumeLayerInfo [VolumeLayerInfoLayersItem]+vliLayers+ = lens _vliLayers (\ s a -> s{_vliLayers = a}) .+ _Default+ . _Coerce++instance FromJSON VolumeLayerInfo where+ parseJSON+ = withObject "VolumeLayerInfo"+ (\ o ->+ VolumeLayerInfo' <$> (o .:? "layers" .!= mempty))++instance ToJSON VolumeLayerInfo where+ toJSON VolumeLayerInfo'{..}+ = object (catMaybes [("layers" .=) <$> _vliLayers])++-- | Physical dimensions of this volume.+--+-- /See:/ 'volumeVolumeInfoDimensions' smart constructor.+data VolumeVolumeInfoDimensions = VolumeVolumeInfoDimensions'+ { _vvidHeight :: !(Maybe Text)+ , _vvidWidth :: !(Maybe Text)+ , _vvidThickness :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'VolumeVolumeInfoDimensions' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vvidHeight'+--+-- * 'vvidWidth'+--+-- * 'vvidThickness'+volumeVolumeInfoDimensions+ :: VolumeVolumeInfoDimensions+volumeVolumeInfoDimensions =+ VolumeVolumeInfoDimensions'+ { _vvidHeight = Nothing+ , _vvidWidth = Nothing+ , _vvidThickness = Nothing+ }++-- | Height or length of this volume (in cm).+vvidHeight :: Lens' VolumeVolumeInfoDimensions (Maybe Text)+vvidHeight+ = lens _vvidHeight (\ s a -> s{_vvidHeight = a})++-- | Width of this volume (in cm).+vvidWidth :: Lens' VolumeVolumeInfoDimensions (Maybe Text)+vvidWidth+ = lens _vvidWidth (\ s a -> s{_vvidWidth = a})++-- | Thickness of this volume (in cm).+vvidThickness :: Lens' VolumeVolumeInfoDimensions (Maybe Text)+vvidThickness+ = lens _vvidThickness+ (\ s a -> s{_vvidThickness = a})++instance FromJSON VolumeVolumeInfoDimensions where+ parseJSON+ = withObject "VolumeVolumeInfoDimensions"+ (\ o ->+ VolumeVolumeInfoDimensions' <$>+ (o .:? "height") <*> (o .:? "width") <*>+ (o .:? "thickness"))++instance ToJSON VolumeVolumeInfoDimensions where+ toJSON VolumeVolumeInfoDimensions'{..}+ = object+ (catMaybes+ [("height" .=) <$> _vvidHeight,+ ("width" .=) <$> _vvidWidth,+ ("thickness" .=) <$> _vvidThickness])++--+-- /See:/ 'requestAccess' smart constructor.+data RequestAccess = RequestAccess'+ { _raConcurrentAccess :: !(Maybe ConcurrentAccessRestriction)+ , _raKind :: !Text+ , _raDownloadAccess :: !(Maybe DownloadAccessRestriction)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'RequestAccess' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'raConcurrentAccess'+--+-- * 'raKind'+--+-- * 'raDownloadAccess'+requestAccess+ :: RequestAccess+requestAccess =+ RequestAccess'+ { _raConcurrentAccess = Nothing+ , _raKind = "books#requestAccess"+ , _raDownloadAccess = Nothing+ }++-- | A concurrent access response.+raConcurrentAccess :: Lens' RequestAccess (Maybe ConcurrentAccessRestriction)+raConcurrentAccess+ = lens _raConcurrentAccess+ (\ s a -> s{_raConcurrentAccess = a})++-- | Resource type.+raKind :: Lens' RequestAccess Text+raKind = lens _raKind (\ s a -> s{_raKind = a})++-- | A download access response.+raDownloadAccess :: Lens' RequestAccess (Maybe DownloadAccessRestriction)+raDownloadAccess+ = lens _raDownloadAccess+ (\ s a -> s{_raDownloadAccess = a})++instance FromJSON RequestAccess where+ parseJSON+ = withObject "RequestAccess"+ (\ o ->+ RequestAccess' <$>+ (o .:? "concurrentAccess") <*>+ (o .:? "kind" .!= "books#requestAccess")+ <*> (o .:? "downloadAccess"))++instance ToJSON RequestAccess where+ toJSON RequestAccess'{..}+ = object+ (catMaybes+ [("concurrentAccess" .=) <$> _raConcurrentAccess,+ Just ("kind" .= _raKind),+ ("downloadAccess" .=) <$> _raDownloadAccess])++-- | Selection ranges sent from the client.+--+-- /See:/ 'annotationClientVersionRanges' smart constructor.+data AnnotationClientVersionRanges = AnnotationClientVersionRanges'+ { _acvrGbImageRange :: !(Maybe BooksAnnotationsRange)+ , _acvrContentVersion :: !(Maybe Text)+ , _acvrImageCfiRange :: !(Maybe BooksAnnotationsRange)+ , _acvrGbTextRange :: !(Maybe BooksAnnotationsRange)+ , _acvrCfiRange :: !(Maybe BooksAnnotationsRange)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AnnotationClientVersionRanges' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'acvrGbImageRange'+--+-- * 'acvrContentVersion'+--+-- * 'acvrImageCfiRange'+--+-- * 'acvrGbTextRange'+--+-- * 'acvrCfiRange'+annotationClientVersionRanges+ :: AnnotationClientVersionRanges+annotationClientVersionRanges =+ AnnotationClientVersionRanges'+ { _acvrGbImageRange = Nothing+ , _acvrContentVersion = Nothing+ , _acvrImageCfiRange = Nothing+ , _acvrGbTextRange = Nothing+ , _acvrCfiRange = Nothing+ }++-- | Range in GB image format for this annotation sent by client.+acvrGbImageRange :: Lens' AnnotationClientVersionRanges (Maybe BooksAnnotationsRange)+acvrGbImageRange+ = lens _acvrGbImageRange+ (\ s a -> s{_acvrGbImageRange = a})++-- | Content version the client sent in.+acvrContentVersion :: Lens' AnnotationClientVersionRanges (Maybe Text)+acvrContentVersion+ = lens _acvrContentVersion+ (\ s a -> s{_acvrContentVersion = a})++-- | Range in image CFI format for this annotation sent by client.+acvrImageCfiRange :: Lens' AnnotationClientVersionRanges (Maybe BooksAnnotationsRange)+acvrImageCfiRange+ = lens _acvrImageCfiRange+ (\ s a -> s{_acvrImageCfiRange = a})++-- | Range in GB text format for this annotation sent by client.+acvrGbTextRange :: Lens' AnnotationClientVersionRanges (Maybe BooksAnnotationsRange)+acvrGbTextRange+ = lens _acvrGbTextRange+ (\ s a -> s{_acvrGbTextRange = a})++-- | Range in CFI format for this annotation sent by client.+acvrCfiRange :: Lens' AnnotationClientVersionRanges (Maybe BooksAnnotationsRange)+acvrCfiRange+ = lens _acvrCfiRange (\ s a -> s{_acvrCfiRange = a})++instance FromJSON AnnotationClientVersionRanges where+ parseJSON+ = withObject "AnnotationClientVersionRanges"+ (\ o ->+ AnnotationClientVersionRanges' <$>+ (o .:? "gbImageRange") <*> (o .:? "contentVersion")+ <*> (o .:? "imageCfiRange")+ <*> (o .:? "gbTextRange")+ <*> (o .:? "cfiRange"))++instance ToJSON AnnotationClientVersionRanges where+ toJSON AnnotationClientVersionRanges'{..}+ = object+ (catMaybes+ [("gbImageRange" .=) <$> _acvrGbImageRange,+ ("contentVersion" .=) <$> _acvrContentVersion,+ ("imageCfiRange" .=) <$> _acvrImageCfiRange,+ ("gbTextRange" .=) <$> _acvrGbTextRange,+ ("cfiRange" .=) <$> _acvrCfiRange])++--+-- /See:/ 'dictlayerDataDictWordsItemSensesItemDefinitionsItem' smart constructor.+data DictlayerDataDictWordsItemSensesItemDefinitionsItem = DictlayerDataDictWordsItemSensesItemDefinitionsItem'+ { _dddwisidiDefinition :: !(Maybe Text)+ , _dddwisidiExamples :: !(Maybe [DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItem])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DictlayerDataDictWordsItemSensesItemDefinitionsItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dddwisidiDefinition'+--+-- * 'dddwisidiExamples'+dictlayerDataDictWordsItemSensesItemDefinitionsItem+ :: DictlayerDataDictWordsItemSensesItemDefinitionsItem+dictlayerDataDictWordsItemSensesItemDefinitionsItem =+ DictlayerDataDictWordsItemSensesItemDefinitionsItem'+ { _dddwisidiDefinition = Nothing+ , _dddwisidiExamples = Nothing+ }++dddwisidiDefinition :: Lens' DictlayerDataDictWordsItemSensesItemDefinitionsItem (Maybe Text)+dddwisidiDefinition+ = lens _dddwisidiDefinition+ (\ s a -> s{_dddwisidiDefinition = a})++dddwisidiExamples :: Lens' DictlayerDataDictWordsItemSensesItemDefinitionsItem [DictlayerDataDictWordsItemSensesItemDefinitionsItemExamplesItem]+dddwisidiExamples+ = lens _dddwisidiExamples+ (\ s a -> s{_dddwisidiExamples = a})+ . _Default+ . _Coerce++instance FromJSON+ DictlayerDataDictWordsItemSensesItemDefinitionsItem+ where+ parseJSON+ = withObject+ "DictlayerDataDictWordsItemSensesItemDefinitionsItem"+ (\ o ->+ DictlayerDataDictWordsItemSensesItemDefinitionsItem'+ <$>+ (o .:? "definition") <*>+ (o .:? "examples" .!= mempty))++instance ToJSON+ DictlayerDataDictWordsItemSensesItemDefinitionsItem+ where+ toJSON+ DictlayerDataDictWordsItemSensesItemDefinitionsItem'{..}+ = object+ (catMaybes+ [("definition" .=) <$> _dddwisidiDefinition,+ ("examples" .=) <$> _dddwisidiExamples])++--+-- /See:/ 'volumeLayerInfoLayersItem' smart constructor.+data VolumeLayerInfoLayersItem = VolumeLayerInfoLayersItem'+ { _vliliVolumeAnnotationsVersion :: !(Maybe Text)+ , _vliliLayerId :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'VolumeLayerInfoLayersItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vliliVolumeAnnotationsVersion'+--+-- * 'vliliLayerId'+volumeLayerInfoLayersItem+ :: VolumeLayerInfoLayersItem+volumeLayerInfoLayersItem =+ VolumeLayerInfoLayersItem'+ { _vliliVolumeAnnotationsVersion = Nothing+ , _vliliLayerId = Nothing+ }++-- | The current version of this layer\'s volume annotations. Note that this+-- version applies only to the data in the books.layers.volumeAnnotations.*+-- responses. The actual annotation data is versioned separately.+vliliVolumeAnnotationsVersion :: Lens' VolumeLayerInfoLayersItem (Maybe Text)+vliliVolumeAnnotationsVersion+ = lens _vliliVolumeAnnotationsVersion+ (\ s a -> s{_vliliVolumeAnnotationsVersion = a})++-- | The layer id of this layer (e.g. \"geo\").+vliliLayerId :: Lens' VolumeLayerInfoLayersItem (Maybe Text)+vliliLayerId+ = lens _vliliLayerId (\ s a -> s{_vliliLayerId = a})++instance FromJSON VolumeLayerInfoLayersItem where+ parseJSON+ = withObject "VolumeLayerInfoLayersItem"+ (\ o ->+ VolumeLayerInfoLayersItem' <$>+ (o .:? "volumeAnnotationsVersion") <*>+ (o .:? "layerId"))++instance ToJSON VolumeLayerInfoLayersItem where+ toJSON VolumeLayerInfoLayersItem'{..}+ = object+ (catMaybes+ [("volumeAnnotationsVersion" .=) <$>+ _vliliVolumeAnnotationsVersion,+ ("layerId" .=) <$> _vliliLayerId])++-- | Selection ranges for the most recent content version.+--+-- /See:/ 'annotationCurrentVersionRanges' smart constructor.+data AnnotationCurrentVersionRanges = AnnotationCurrentVersionRanges'+ { _aGbImageRange :: !(Maybe BooksAnnotationsRange)+ , _aContentVersion :: !(Maybe Text)+ , _aImageCfiRange :: !(Maybe BooksAnnotationsRange)+ , _aGbTextRange :: !(Maybe BooksAnnotationsRange)+ , _aCfiRange :: !(Maybe BooksAnnotationsRange)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AnnotationCurrentVersionRanges' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aGbImageRange'+--+-- * 'aContentVersion'+--+-- * 'aImageCfiRange'+--+-- * 'aGbTextRange'+--+-- * 'aCfiRange'+annotationCurrentVersionRanges+ :: AnnotationCurrentVersionRanges+annotationCurrentVersionRanges =+ AnnotationCurrentVersionRanges'+ { _aGbImageRange = Nothing+ , _aContentVersion = Nothing+ , _aImageCfiRange = Nothing+ , _aGbTextRange = Nothing+ , _aCfiRange = Nothing+ }++-- | Range in GB image format for this annotation for version above.+aGbImageRange :: Lens' AnnotationCurrentVersionRanges (Maybe BooksAnnotationsRange)+aGbImageRange+ = lens _aGbImageRange+ (\ s a -> s{_aGbImageRange = a})++-- | Content version applicable to ranges below.+aContentVersion :: Lens' AnnotationCurrentVersionRanges (Maybe Text)+aContentVersion+ = lens _aContentVersion+ (\ s a -> s{_aContentVersion = a})++-- | Range in image CFI format for this annotation for version above.+aImageCfiRange :: Lens' AnnotationCurrentVersionRanges (Maybe BooksAnnotationsRange)+aImageCfiRange+ = lens _aImageCfiRange+ (\ s a -> s{_aImageCfiRange = a})++-- | Range in GB text format for this annotation for version above.+aGbTextRange :: Lens' AnnotationCurrentVersionRanges (Maybe BooksAnnotationsRange)+aGbTextRange+ = lens _aGbTextRange (\ s a -> s{_aGbTextRange = a})++-- | Range in CFI format for this annotation for version above.+aCfiRange :: Lens' AnnotationCurrentVersionRanges (Maybe BooksAnnotationsRange)+aCfiRange+ = lens _aCfiRange (\ s a -> s{_aCfiRange = a})++instance FromJSON AnnotationCurrentVersionRanges+ where+ parseJSON+ = withObject "AnnotationCurrentVersionRanges"+ (\ o ->+ AnnotationCurrentVersionRanges' <$>+ (o .:? "gbImageRange") <*> (o .:? "contentVersion")+ <*> (o .:? "imageCfiRange")+ <*> (o .:? "gbTextRange")+ <*> (o .:? "cfiRange"))++instance ToJSON AnnotationCurrentVersionRanges where+ toJSON AnnotationCurrentVersionRanges'{..}+ = object+ (catMaybes+ [("gbImageRange" .=) <$> _aGbImageRange,+ ("contentVersion" .=) <$> _aContentVersion,+ ("imageCfiRange" .=) <$> _aImageCfiRange,+ ("gbTextRange" .=) <$> _aGbTextRange,+ ("cfiRange" .=) <$> _aCfiRange])++-- | Information about pdf content. (In LITE projection.)+--+-- /See:/ 'volumeAccessInfoPdf' smart constructor.+data VolumeAccessInfoPdf = VolumeAccessInfoPdf'+ { _vaipAcsTokenLink :: !(Maybe Text)+ , _vaipIsAvailable :: !(Maybe Bool)+ , _vaipDownloadLink :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'VolumeAccessInfoPdf' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vaipAcsTokenLink'+--+-- * 'vaipIsAvailable'+--+-- * 'vaipDownloadLink'+volumeAccessInfoPdf+ :: VolumeAccessInfoPdf+volumeAccessInfoPdf =+ VolumeAccessInfoPdf'+ { _vaipAcsTokenLink = Nothing+ , _vaipIsAvailable = Nothing+ , _vaipDownloadLink = Nothing+ }++-- | URL to retrieve ACS token for pdf download. (In LITE projection.)+vaipAcsTokenLink :: Lens' VolumeAccessInfoPdf (Maybe Text)+vaipAcsTokenLink+ = lens _vaipAcsTokenLink+ (\ s a -> s{_vaipAcsTokenLink = a})++-- | Is a scanned image pdf available either as public domain or for+-- purchase. (In LITE projection.)+vaipIsAvailable :: Lens' VolumeAccessInfoPdf (Maybe Bool)+vaipIsAvailable+ = lens _vaipIsAvailable+ (\ s a -> s{_vaipIsAvailable = a})++-- | URL to download pdf. (In LITE projection.)+vaipDownloadLink :: Lens' VolumeAccessInfoPdf (Maybe Text)+vaipDownloadLink+ = lens _vaipDownloadLink+ (\ s a -> s{_vaipDownloadLink = a})++instance FromJSON VolumeAccessInfoPdf where+ parseJSON+ = withObject "VolumeAccessInfoPdf"+ (\ o ->+ VolumeAccessInfoPdf' <$>+ (o .:? "acsTokenLink") <*> (o .:? "isAvailable") <*>+ (o .:? "downloadLink"))++instance ToJSON VolumeAccessInfoPdf where+ toJSON VolumeAccessInfoPdf'{..}+ = object+ (catMaybes+ [("acsTokenLink" .=) <$> _vaipAcsTokenLink,+ ("isAvailable" .=) <$> _vaipIsAvailable,+ ("downloadLink" .=) <$> _vaipDownloadLink])++--+-- /See:/ 'dictlayerDataDictWordsItemExamplesItemSource' smart constructor.+data DictlayerDataDictWordsItemExamplesItemSource = DictlayerDataDictWordsItemExamplesItemSource'+ { _dddwieisURL :: !(Maybe Text)+ , _dddwieisAttribution :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DictlayerDataDictWordsItemExamplesItemSource' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dddwieisURL'+--+-- * 'dddwieisAttribution'+dictlayerDataDictWordsItemExamplesItemSource+ :: DictlayerDataDictWordsItemExamplesItemSource+dictlayerDataDictWordsItemExamplesItemSource =+ DictlayerDataDictWordsItemExamplesItemSource'+ { _dddwieisURL = Nothing+ , _dddwieisAttribution = Nothing+ }++dddwieisURL :: Lens' DictlayerDataDictWordsItemExamplesItemSource (Maybe Text)+dddwieisURL+ = lens _dddwieisURL (\ s a -> s{_dddwieisURL = a})++dddwieisAttribution :: Lens' DictlayerDataDictWordsItemExamplesItemSource (Maybe Text)+dddwieisAttribution+ = lens _dddwieisAttribution+ (\ s a -> s{_dddwieisAttribution = a})++instance FromJSON+ DictlayerDataDictWordsItemExamplesItemSource where+ parseJSON+ = withObject+ "DictlayerDataDictWordsItemExamplesItemSource"+ (\ o ->+ DictlayerDataDictWordsItemExamplesItemSource' <$>+ (o .:? "url") <*> (o .:? "attribution"))++instance ToJSON+ DictlayerDataDictWordsItemExamplesItemSource where+ toJSON+ DictlayerDataDictWordsItemExamplesItemSource'{..}+ = object+ (catMaybes+ [("url" .=) <$> _dddwieisURL,+ ("attribution" .=) <$> _dddwieisAttribution])++-- | Information about epub content. (In LITE projection.)+--+-- /See:/ 'volumeAccessInfoEpub' smart constructor.+data VolumeAccessInfoEpub = VolumeAccessInfoEpub'+ { _vaieAcsTokenLink :: !(Maybe Text)+ , _vaieIsAvailable :: !(Maybe Bool)+ , _vaieDownloadLink :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'VolumeAccessInfoEpub' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vaieAcsTokenLink'+--+-- * 'vaieIsAvailable'+--+-- * 'vaieDownloadLink'+volumeAccessInfoEpub+ :: VolumeAccessInfoEpub+volumeAccessInfoEpub =+ VolumeAccessInfoEpub'+ { _vaieAcsTokenLink = Nothing+ , _vaieIsAvailable = Nothing+ , _vaieDownloadLink = Nothing+ }++-- | URL to retrieve ACS token for epub download. (In LITE projection.)+vaieAcsTokenLink :: Lens' VolumeAccessInfoEpub (Maybe Text)+vaieAcsTokenLink+ = lens _vaieAcsTokenLink+ (\ s a -> s{_vaieAcsTokenLink = a})++-- | Is a flowing text epub available either as public domain or for+-- purchase. (In LITE projection.)+vaieIsAvailable :: Lens' VolumeAccessInfoEpub (Maybe Bool)+vaieIsAvailable+ = lens _vaieIsAvailable+ (\ s a -> s{_vaieIsAvailable = a})++-- | URL to download epub. (In LITE projection.)+vaieDownloadLink :: Lens' VolumeAccessInfoEpub (Maybe Text)+vaieDownloadLink+ = lens _vaieDownloadLink+ (\ s a -> s{_vaieDownloadLink = a})++instance FromJSON VolumeAccessInfoEpub where+ parseJSON+ = withObject "VolumeAccessInfoEpub"+ (\ o ->+ VolumeAccessInfoEpub' <$>+ (o .:? "acsTokenLink") <*> (o .:? "isAvailable") <*>+ (o .:? "downloadLink"))++instance ToJSON VolumeAccessInfoEpub where+ toJSON VolumeAccessInfoEpub'{..}+ = object+ (catMaybes+ [("acsTokenLink" .=) <$> _vaieAcsTokenLink,+ ("isAvailable" .=) <$> _vaieIsAvailable,+ ("downloadLink" .=) <$> _vaieDownloadLink])++--+-- /See:/ 'readingPosition' smart constructor.+data ReadingPosition = ReadingPosition'+ { _rpEpubCfiPosition :: !(Maybe Text)+ , _rpKind :: !Text+ , _rpGbImagePosition :: !(Maybe Text)+ , _rpPdfPosition :: !(Maybe Text)+ , _rpVolumeId :: !(Maybe Text)+ , _rpUpdated :: !(Maybe DateTime')+ , _rpGbTextPosition :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ReadingPosition' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rpEpubCfiPosition'+--+-- * 'rpKind'+--+-- * 'rpGbImagePosition'+--+-- * 'rpPdfPosition'+--+-- * 'rpVolumeId'+--+-- * 'rpUpdated'+--+-- * 'rpGbTextPosition'+readingPosition+ :: ReadingPosition+readingPosition =+ ReadingPosition'+ { _rpEpubCfiPosition = Nothing+ , _rpKind = "books#readingPosition"+ , _rpGbImagePosition = Nothing+ , _rpPdfPosition = Nothing+ , _rpVolumeId = Nothing+ , _rpUpdated = Nothing+ , _rpGbTextPosition = Nothing+ }++-- | Position in an EPUB as a CFI.+rpEpubCfiPosition :: Lens' ReadingPosition (Maybe Text)+rpEpubCfiPosition+ = lens _rpEpubCfiPosition+ (\ s a -> s{_rpEpubCfiPosition = a})++-- | Resource type for a reading position.+rpKind :: Lens' ReadingPosition Text+rpKind = lens _rpKind (\ s a -> s{_rpKind = a})++-- | Position in a volume for image-based content.+rpGbImagePosition :: Lens' ReadingPosition (Maybe Text)+rpGbImagePosition+ = lens _rpGbImagePosition+ (\ s a -> s{_rpGbImagePosition = a})++-- | Position in a PDF file.+rpPdfPosition :: Lens' ReadingPosition (Maybe Text)+rpPdfPosition+ = lens _rpPdfPosition+ (\ s a -> s{_rpPdfPosition = a})++-- | Volume id associated with this reading position.+rpVolumeId :: Lens' ReadingPosition (Maybe Text)+rpVolumeId+ = lens _rpVolumeId (\ s a -> s{_rpVolumeId = a})++-- | Timestamp when this reading position was last updated (formatted UTC+-- timestamp with millisecond resolution).+rpUpdated :: Lens' ReadingPosition (Maybe UTCTime)+rpUpdated+ = lens _rpUpdated (\ s a -> s{_rpUpdated = a}) .+ mapping _DateTime++-- | Position in a volume for text-based content.+rpGbTextPosition :: Lens' ReadingPosition (Maybe Text)+rpGbTextPosition+ = lens _rpGbTextPosition+ (\ s a -> s{_rpGbTextPosition = a})++instance FromJSON ReadingPosition where+ parseJSON+ = withObject "ReadingPosition"+ (\ o ->+ ReadingPosition' <$>+ (o .:? "epubCfiPosition") <*>+ (o .:? "kind" .!= "books#readingPosition")+ <*> (o .:? "gbImagePosition")+ <*> (o .:? "pdfPosition")+ <*> (o .:? "volumeId")+ <*> (o .:? "updated")+ <*> (o .:? "gbTextPosition"))++instance ToJSON ReadingPosition where+ toJSON ReadingPosition'{..}+ = object+ (catMaybes+ [("epubCfiPosition" .=) <$> _rpEpubCfiPosition,+ Just ("kind" .= _rpKind),+ ("gbImagePosition" .=) <$> _rpGbImagePosition,+ ("pdfPosition" .=) <$> _rpPdfPosition,+ ("volumeId" .=) <$> _rpVolumeId,+ ("updated" .=) <$> _rpUpdated,+ ("gbTextPosition" .=) <$> _rpGbTextPosition])++--+-- /See:/ 'volumeSaleInfoOffersItem' smart constructor.+data VolumeSaleInfoOffersItem = VolumeSaleInfoOffersItem'+ { _vsioiFinskyOfferType :: !(Maybe (Textual Int32))+ , _vsioiRentalDuration :: !(Maybe VolumeSaleInfoOffersItemRentalDuration)+ , _vsioiListPrice :: !(Maybe VolumeSaleInfoOffersItemListPrice)+ , _vsioiRetailPrice :: !(Maybe VolumeSaleInfoOffersItemRetailPrice)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'VolumeSaleInfoOffersItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vsioiFinskyOfferType'+--+-- * 'vsioiRentalDuration'+--+-- * 'vsioiListPrice'+--+-- * 'vsioiRetailPrice'+volumeSaleInfoOffersItem+ :: VolumeSaleInfoOffersItem+volumeSaleInfoOffersItem =+ VolumeSaleInfoOffersItem'+ { _vsioiFinskyOfferType = Nothing+ , _vsioiRentalDuration = Nothing+ , _vsioiListPrice = Nothing+ , _vsioiRetailPrice = Nothing+ }++-- | The finsky offer type (e.g., PURCHASE=0 RENTAL=3)+vsioiFinskyOfferType :: Lens' VolumeSaleInfoOffersItem (Maybe Int32)+vsioiFinskyOfferType+ = lens _vsioiFinskyOfferType+ (\ s a -> s{_vsioiFinskyOfferType = a})+ . mapping _Coerce++-- | The rental duration (for rental offers only).+vsioiRentalDuration :: Lens' VolumeSaleInfoOffersItem (Maybe VolumeSaleInfoOffersItemRentalDuration)+vsioiRentalDuration+ = lens _vsioiRentalDuration+ (\ s a -> s{_vsioiRentalDuration = a})++-- | Offer list (=undiscounted) price in Micros.+vsioiListPrice :: Lens' VolumeSaleInfoOffersItem (Maybe VolumeSaleInfoOffersItemListPrice)+vsioiListPrice+ = lens _vsioiListPrice+ (\ s a -> s{_vsioiListPrice = a})++-- | Offer retail (=discounted) price in Micros+vsioiRetailPrice :: Lens' VolumeSaleInfoOffersItem (Maybe VolumeSaleInfoOffersItemRetailPrice)+vsioiRetailPrice+ = lens _vsioiRetailPrice+ (\ s a -> s{_vsioiRetailPrice = a})++instance FromJSON VolumeSaleInfoOffersItem where+ parseJSON+ = withObject "VolumeSaleInfoOffersItem"+ (\ o ->+ VolumeSaleInfoOffersItem' <$>+ (o .:? "finskyOfferType") <*>+ (o .:? "rentalDuration")+ <*> (o .:? "listPrice")+ <*> (o .:? "retailPrice"))++instance ToJSON VolumeSaleInfoOffersItem where+ toJSON VolumeSaleInfoOffersItem'{..}+ = object+ (catMaybes+ [("finskyOfferType" .=) <$> _vsioiFinskyOfferType,+ ("rentalDuration" .=) <$> _vsioiRentalDuration,+ ("listPrice" .=) <$> _vsioiListPrice,+ ("retailPrice" .=) <$> _vsioiRetailPrice])++--+-- /See:/ 'dictlayerDataDict' smart constructor.+data DictlayerDataDict = DictlayerDataDict'+ { _dddSource :: !(Maybe DictlayerDataDictSource)+ , _dddWords :: !(Maybe [DictlayerDataDictWordsItem])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DictlayerDataDict' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dddSource'+--+-- * 'dddWords'+dictlayerDataDict+ :: DictlayerDataDict+dictlayerDataDict =+ DictlayerDataDict'+ { _dddSource = Nothing+ , _dddWords = Nothing+ }++-- | The source, url and attribution for this dictionary data.+dddSource :: Lens' DictlayerDataDict (Maybe DictlayerDataDictSource)+dddSource+ = lens _dddSource (\ s a -> s{_dddSource = a})++dddWords :: Lens' DictlayerDataDict [DictlayerDataDictWordsItem]+dddWords+ = lens _dddWords (\ s a -> s{_dddWords = a}) .+ _Default+ . _Coerce++instance FromJSON DictlayerDataDict where+ parseJSON+ = withObject "DictlayerDataDict"+ (\ o ->+ DictlayerDataDict' <$>+ (o .:? "source") <*> (o .:? "words" .!= mempty))++instance ToJSON DictlayerDataDict where+ toJSON DictlayerDataDict'{..}+ = object+ (catMaybes+ [("source" .=) <$> _dddSource,+ ("words" .=) <$> _dddWords])++--+-- /See:/ 'dictlayerDataDictWordsItemSensesItem' smart constructor.+data DictlayerDataDictWordsItemSensesItem = DictlayerDataDictWordsItemSensesItem'+ { _dddwisiPronunciationURL :: !(Maybe Text)+ , _dddwisiConjugations :: !(Maybe [DictlayerDataDictWordsItemSensesItemConjugationsItem])+ , _dddwisiPronunciation :: !(Maybe Text)+ , _dddwisiSynonyms :: !(Maybe [DictlayerDataDictWordsItemSensesItemSynonymsItem])+ , _dddwisiSource :: !(Maybe DictlayerDataDictWordsItemSensesItemSource)+ , _dddwisiPartOfSpeech :: !(Maybe Text)+ , _dddwisiDefinitions :: !(Maybe [DictlayerDataDictWordsItemSensesItemDefinitionsItem])+ , _dddwisiSyllabification :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DictlayerDataDictWordsItemSensesItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dddwisiPronunciationURL'+--+-- * 'dddwisiConjugations'+--+-- * 'dddwisiPronunciation'+--+-- * 'dddwisiSynonyms'+--+-- * 'dddwisiSource'+--+-- * 'dddwisiPartOfSpeech'+--+-- * 'dddwisiDefinitions'+--+-- * 'dddwisiSyllabification'+dictlayerDataDictWordsItemSensesItem+ :: DictlayerDataDictWordsItemSensesItem+dictlayerDataDictWordsItemSensesItem =+ DictlayerDataDictWordsItemSensesItem'+ { _dddwisiPronunciationURL = Nothing+ , _dddwisiConjugations = Nothing+ , _dddwisiPronunciation = Nothing+ , _dddwisiSynonyms = Nothing+ , _dddwisiSource = Nothing+ , _dddwisiPartOfSpeech = Nothing+ , _dddwisiDefinitions = Nothing+ , _dddwisiSyllabification = Nothing+ }++dddwisiPronunciationURL :: Lens' DictlayerDataDictWordsItemSensesItem (Maybe Text)+dddwisiPronunciationURL+ = lens _dddwisiPronunciationURL+ (\ s a -> s{_dddwisiPronunciationURL = a})++dddwisiConjugations :: Lens' DictlayerDataDictWordsItemSensesItem [DictlayerDataDictWordsItemSensesItemConjugationsItem]+dddwisiConjugations+ = lens _dddwisiConjugations+ (\ s a -> s{_dddwisiConjugations = a})+ . _Default+ . _Coerce++dddwisiPronunciation :: Lens' DictlayerDataDictWordsItemSensesItem (Maybe Text)+dddwisiPronunciation+ = lens _dddwisiPronunciation+ (\ s a -> s{_dddwisiPronunciation = a})++dddwisiSynonyms :: Lens' DictlayerDataDictWordsItemSensesItem [DictlayerDataDictWordsItemSensesItemSynonymsItem]+dddwisiSynonyms+ = lens _dddwisiSynonyms+ (\ s a -> s{_dddwisiSynonyms = a})+ . _Default+ . _Coerce++dddwisiSource :: Lens' DictlayerDataDictWordsItemSensesItem (Maybe DictlayerDataDictWordsItemSensesItemSource)+dddwisiSource+ = lens _dddwisiSource+ (\ s a -> s{_dddwisiSource = a})++dddwisiPartOfSpeech :: Lens' DictlayerDataDictWordsItemSensesItem (Maybe Text)+dddwisiPartOfSpeech+ = lens _dddwisiPartOfSpeech+ (\ s a -> s{_dddwisiPartOfSpeech = a})++dddwisiDefinitions :: Lens' DictlayerDataDictWordsItemSensesItem [DictlayerDataDictWordsItemSensesItemDefinitionsItem]+dddwisiDefinitions+ = lens _dddwisiDefinitions+ (\ s a -> s{_dddwisiDefinitions = a})+ . _Default+ . _Coerce++dddwisiSyllabification :: Lens' DictlayerDataDictWordsItemSensesItem (Maybe Text)+dddwisiSyllabification+ = lens _dddwisiSyllabification+ (\ s a -> s{_dddwisiSyllabification = a})++instance FromJSON+ DictlayerDataDictWordsItemSensesItem where+ parseJSON+ = withObject "DictlayerDataDictWordsItemSensesItem"+ (\ o ->+ DictlayerDataDictWordsItemSensesItem' <$>+ (o .:? "pronunciationUrl") <*>+ (o .:? "conjugations" .!= mempty)+ <*> (o .:? "pronunciation")+ <*> (o .:? "synonyms" .!= mempty)+ <*> (o .:? "source")+ <*> (o .:? "partOfSpeech")+ <*> (o .:? "definitions" .!= mempty)+ <*> (o .:? "syllabification"))++instance ToJSON DictlayerDataDictWordsItemSensesItem+ where+ toJSON DictlayerDataDictWordsItemSensesItem'{..}+ = object+ (catMaybes+ [("pronunciationUrl" .=) <$>+ _dddwisiPronunciationURL,+ ("conjugations" .=) <$> _dddwisiConjugations,+ ("pronunciation" .=) <$> _dddwisiPronunciation,+ ("synonyms" .=) <$> _dddwisiSynonyms,+ ("source" .=) <$> _dddwisiSource,+ ("partOfSpeech" .=) <$> _dddwisiPartOfSpeech,+ ("definitions" .=) <$> _dddwisiDefinitions,+ ("syllabification" .=) <$> _dddwisiSyllabification])++-- | Recommendation related information for this volume.+--+-- /See:/ 'volumeRecommendedInfo' smart constructor.+newtype VolumeRecommendedInfo = VolumeRecommendedInfo'+ { _vriExplanation :: Maybe Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'VolumeRecommendedInfo' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vriExplanation'+volumeRecommendedInfo+ :: VolumeRecommendedInfo+volumeRecommendedInfo =+ VolumeRecommendedInfo'+ { _vriExplanation = Nothing+ }++-- | A text explaining why this volume is recommended.+vriExplanation :: Lens' VolumeRecommendedInfo (Maybe Text)+vriExplanation+ = lens _vriExplanation+ (\ s a -> s{_vriExplanation = a})++instance FromJSON VolumeRecommendedInfo where+ parseJSON+ = withObject "VolumeRecommendedInfo"+ (\ o ->+ VolumeRecommendedInfo' <$> (o .:? "explanation"))++instance ToJSON VolumeRecommendedInfo where+ toJSON VolumeRecommendedInfo'{..}+ = object+ (catMaybes [("explanation" .=) <$> _vriExplanation])++--+-- /See:/ 'offers' smart constructor.+data Offers = Offers'+ { _oKind :: !Text+ , _oItems :: !(Maybe [OffersItemsItem])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Offers' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'oKind'+--+-- * 'oItems'+offers+ :: Offers+offers =+ Offers'+ { _oKind = "promooffer#offers"+ , _oItems = Nothing+ }++-- | Resource type.+oKind :: Lens' Offers Text+oKind = lens _oKind (\ s a -> s{_oKind = a})++-- | A list of offers.+oItems :: Lens' Offers [OffersItemsItem]+oItems+ = lens _oItems (\ s a -> s{_oItems = a}) . _Default .+ _Coerce++instance FromJSON Offers where+ parseJSON+ = withObject "Offers"+ (\ o ->+ Offers' <$>+ (o .:? "kind" .!= "promooffer#offers") <*>+ (o .:? "items" .!= mempty))++instance ToJSON Offers where+ toJSON Offers'{..}+ = object+ (catMaybes+ [Just ("kind" .= _oKind), ("items" .=) <$> _oItems])++--+-- /See:/ 'discoveryclusters' smart constructor.+data Discoveryclusters = Discoveryclusters'+ { _dKind :: !Text+ , _dTotalClusters :: !(Maybe (Textual Int32))+ , _dClusters :: !(Maybe [DiscoveryclustersClustersItem])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Discoveryclusters' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dKind'+--+-- * 'dTotalClusters'+--+-- * 'dClusters'+discoveryclusters+ :: Discoveryclusters+discoveryclusters =+ Discoveryclusters'+ { _dKind = "books#discovery#clusters"+ , _dTotalClusters = Nothing+ , _dClusters = Nothing+ }++-- | Resorce type.+dKind :: Lens' Discoveryclusters Text+dKind = lens _dKind (\ s a -> s{_dKind = a})++dTotalClusters :: Lens' Discoveryclusters (Maybe Int32)+dTotalClusters+ = lens _dTotalClusters+ (\ s a -> s{_dTotalClusters = a})+ . mapping _Coerce++dClusters :: Lens' Discoveryclusters [DiscoveryclustersClustersItem]+dClusters+ = lens _dClusters (\ s a -> s{_dClusters = a}) .+ _Default+ . _Coerce++instance FromJSON Discoveryclusters where+ parseJSON+ = withObject "Discoveryclusters"+ (\ o ->+ Discoveryclusters' <$>+ (o .:? "kind" .!= "books#discovery#clusters") <*>+ (o .:? "totalClusters")+ <*> (o .:? "clusters" .!= mempty))++instance ToJSON Discoveryclusters where+ toJSON Discoveryclusters'{..}+ = object+ (catMaybes+ [Just ("kind" .= _dKind),+ ("totalClusters" .=) <$> _dTotalClusters,+ ("clusters" .=) <$> _dClusters])++--+-- /See:/ 'volumeseriesInfoVolumeSeriesItem' smart constructor.+data VolumeseriesInfoVolumeSeriesItem = VolumeseriesInfoVolumeSeriesItem'+ { _vivsiSeriesId :: !(Maybe Text)+ , _vivsiSeriesBookType :: !(Maybe Text)+ , _vivsiOrderNumber :: !(Maybe (Textual Int32))+ , _vivsiIssue :: !(Maybe [VolumeseriesInfoVolumeSeriesItemIssueItem])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'VolumeseriesInfoVolumeSeriesItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vivsiSeriesId'+--+-- * 'vivsiSeriesBookType'+--+-- * 'vivsiOrderNumber'+--+-- * 'vivsiIssue'+volumeseriesInfoVolumeSeriesItem+ :: VolumeseriesInfoVolumeSeriesItem+volumeseriesInfoVolumeSeriesItem =+ VolumeseriesInfoVolumeSeriesItem'+ { _vivsiSeriesId = Nothing+ , _vivsiSeriesBookType = Nothing+ , _vivsiOrderNumber = Nothing+ , _vivsiIssue = Nothing+ }++-- | The series id.+vivsiSeriesId :: Lens' VolumeseriesInfoVolumeSeriesItem (Maybe Text)+vivsiSeriesId+ = lens _vivsiSeriesId+ (\ s a -> s{_vivsiSeriesId = a})++-- | The book type in the context of series. Examples - Single Issue,+-- Collection Edition, etc.+vivsiSeriesBookType :: Lens' VolumeseriesInfoVolumeSeriesItem (Maybe Text)+vivsiSeriesBookType+ = lens _vivsiSeriesBookType+ (\ s a -> s{_vivsiSeriesBookType = a})++-- | The book order number in the series.+vivsiOrderNumber :: Lens' VolumeseriesInfoVolumeSeriesItem (Maybe Int32)+vivsiOrderNumber+ = lens _vivsiOrderNumber+ (\ s a -> s{_vivsiOrderNumber = a})+ . mapping _Coerce++-- | List of issues. Applicable only for Collection Edition and Omnibus.+vivsiIssue :: Lens' VolumeseriesInfoVolumeSeriesItem [VolumeseriesInfoVolumeSeriesItemIssueItem]+vivsiIssue+ = lens _vivsiIssue (\ s a -> s{_vivsiIssue = a}) .+ _Default+ . _Coerce++instance FromJSON VolumeseriesInfoVolumeSeriesItem+ where+ parseJSON+ = withObject "VolumeseriesInfoVolumeSeriesItem"+ (\ o ->+ VolumeseriesInfoVolumeSeriesItem' <$>+ (o .:? "seriesId") <*> (o .:? "seriesBookType") <*>+ (o .:? "orderNumber")+ <*> (o .:? "issue" .!= mempty))++instance ToJSON VolumeseriesInfoVolumeSeriesItem+ where+ toJSON VolumeseriesInfoVolumeSeriesItem'{..}+ = object+ (catMaybes+ [("seriesId" .=) <$> _vivsiSeriesId,+ ("seriesBookType" .=) <$> _vivsiSeriesBookType,+ ("orderNumber" .=) <$> _vivsiOrderNumber,+ ("issue" .=) <$> _vivsiIssue])++-- | User settings in sub-objects, each for different purposes.+--+-- /See:/ 'userSettingsNotesExport' smart constructor.+data UserSettingsNotesExport = UserSettingsNotesExport'+ { _usneFolderName :: !(Maybe Text)+ , _usneIsEnabled :: !(Maybe Bool)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UserSettingsNotesExport' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'usneFolderName'+--+-- * 'usneIsEnabled'+userSettingsNotesExport+ :: UserSettingsNotesExport+userSettingsNotesExport =+ UserSettingsNotesExport'+ { _usneFolderName = Nothing+ , _usneIsEnabled = Nothing+ }++usneFolderName :: Lens' UserSettingsNotesExport (Maybe Text)+usneFolderName+ = lens _usneFolderName+ (\ s a -> s{_usneFolderName = a})++usneIsEnabled :: Lens' UserSettingsNotesExport (Maybe Bool)+usneIsEnabled+ = lens _usneIsEnabled+ (\ s a -> s{_usneIsEnabled = a})++instance FromJSON UserSettingsNotesExport where+ parseJSON+ = withObject "UserSettingsNotesExport"+ (\ o ->+ UserSettingsNotesExport' <$>+ (o .:? "folderName") <*> (o .:? "isEnabled"))++instance ToJSON UserSettingsNotesExport where+ toJSON UserSettingsNotesExport'{..}+ = object+ (catMaybes+ [("folderName" .=) <$> _usneFolderName,+ ("isEnabled" .=) <$> _usneIsEnabled])++--+-- /See:/ 'concurrentAccessRestriction' smart constructor.+data ConcurrentAccessRestriction = ConcurrentAccessRestriction'+ { _carMaxConcurrentDevices :: !(Maybe (Textual Int32))+ , _carSignature :: !(Maybe Text)+ , _carTimeWindowSeconds :: !(Maybe (Textual Int32))+ , _carKind :: !Text+ , _carReasonCode :: !(Maybe Text)+ , _carVolumeId :: !(Maybe Text)+ , _carRestricted :: !(Maybe Bool)+ , _carSource :: !(Maybe Text)+ , _carDeviceAllowed :: !(Maybe Bool)+ , _carMessage :: !(Maybe Text)+ , _carNonce :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ConcurrentAccessRestriction' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'carMaxConcurrentDevices'+--+-- * 'carSignature'+--+-- * 'carTimeWindowSeconds'+--+-- * 'carKind'+--+-- * 'carReasonCode'+--+-- * 'carVolumeId'+--+-- * 'carRestricted'+--+-- * 'carSource'+--+-- * 'carDeviceAllowed'+--+-- * 'carMessage'+--+-- * 'carNonce'+concurrentAccessRestriction+ :: ConcurrentAccessRestriction+concurrentAccessRestriction =+ ConcurrentAccessRestriction'+ { _carMaxConcurrentDevices = Nothing+ , _carSignature = Nothing+ , _carTimeWindowSeconds = Nothing+ , _carKind = "books#concurrentAccessRestriction"+ , _carReasonCode = Nothing+ , _carVolumeId = Nothing+ , _carRestricted = Nothing+ , _carSource = Nothing+ , _carDeviceAllowed = Nothing+ , _carMessage = Nothing+ , _carNonce = Nothing+ }++-- | The maximum number of concurrent access licenses for this volume.+carMaxConcurrentDevices :: Lens' ConcurrentAccessRestriction (Maybe Int32)+carMaxConcurrentDevices+ = lens _carMaxConcurrentDevices+ (\ s a -> s{_carMaxConcurrentDevices = a})+ . mapping _Coerce++-- | Response signature.+carSignature :: Lens' ConcurrentAccessRestriction (Maybe Text)+carSignature+ = lens _carSignature (\ s a -> s{_carSignature = a})++-- | Time in seconds for license auto-expiration.+carTimeWindowSeconds :: Lens' ConcurrentAccessRestriction (Maybe Int32)+carTimeWindowSeconds+ = lens _carTimeWindowSeconds+ (\ s a -> s{_carTimeWindowSeconds = a})+ . mapping _Coerce++-- | Resource type.+carKind :: Lens' ConcurrentAccessRestriction Text+carKind = lens _carKind (\ s a -> s{_carKind = a})++-- | Error\/warning reason code.+carReasonCode :: Lens' ConcurrentAccessRestriction (Maybe Text)+carReasonCode+ = lens _carReasonCode+ (\ s a -> s{_carReasonCode = a})++-- | Identifies the volume for which this entry applies.+carVolumeId :: Lens' ConcurrentAccessRestriction (Maybe Text)+carVolumeId+ = lens _carVolumeId (\ s a -> s{_carVolumeId = a})++-- | Whether this volume has any concurrent access restrictions.+carRestricted :: Lens' ConcurrentAccessRestriction (Maybe Bool)+carRestricted+ = lens _carRestricted+ (\ s a -> s{_carRestricted = a})++-- | Client app identifier for verification. Download access and+-- client-validation only.+carSource :: Lens' ConcurrentAccessRestriction (Maybe Text)+carSource+ = lens _carSource (\ s a -> s{_carSource = a})++-- | Whether access is granted for this (user, device, volume).+carDeviceAllowed :: Lens' ConcurrentAccessRestriction (Maybe Bool)+carDeviceAllowed+ = lens _carDeviceAllowed+ (\ s a -> s{_carDeviceAllowed = a})++-- | Error\/warning message.+carMessage :: Lens' ConcurrentAccessRestriction (Maybe Text)+carMessage+ = lens _carMessage (\ s a -> s{_carMessage = a})++-- | Client nonce for verification. Download access and client-validation+-- only.+carNonce :: Lens' ConcurrentAccessRestriction (Maybe Text)+carNonce = lens _carNonce (\ s a -> s{_carNonce = a})++instance FromJSON ConcurrentAccessRestriction where+ parseJSON+ = withObject "ConcurrentAccessRestriction"+ (\ o ->+ ConcurrentAccessRestriction' <$>+ (o .:? "maxConcurrentDevices") <*>+ (o .:? "signature")+ <*> (o .:? "timeWindowSeconds")+ <*>+ (o .:? "kind" .!=+ "books#concurrentAccessRestriction")+ <*> (o .:? "reasonCode")+ <*> (o .:? "volumeId")+ <*> (o .:? "restricted")+ <*> (o .:? "source")+ <*> (o .:? "deviceAllowed")+ <*> (o .:? "message")+ <*> (o .:? "nonce"))++instance ToJSON ConcurrentAccessRestriction where+ toJSON ConcurrentAccessRestriction'{..}+ = object+ (catMaybes+ [("maxConcurrentDevices" .=) <$>+ _carMaxConcurrentDevices,+ ("signature" .=) <$> _carSignature,+ ("timeWindowSeconds" .=) <$> _carTimeWindowSeconds,+ Just ("kind" .= _carKind),+ ("reasonCode" .=) <$> _carReasonCode,+ ("volumeId" .=) <$> _carVolumeId,+ ("restricted" .=) <$> _carRestricted,+ ("source" .=) <$> _carSource,+ ("deviceAllowed" .=) <$> _carDeviceAllowed,+ ("message" .=) <$> _carMessage,+ ("nonce" .=) <$> _carNonce])++--+-- /See:/ 'volumes' smart constructor.+data Volumes = Volumes'+ { _v1TotalItems :: !(Maybe (Textual Int32))+ , _v1Kind :: !Text+ , _v1Items :: !(Maybe [Volume])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Volumes' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'v1TotalItems'+--+-- * 'v1Kind'+--+-- * 'v1Items'+volumes+ :: Volumes+volumes =+ Volumes'+ { _v1TotalItems = Nothing+ , _v1Kind = "books#volumes"+ , _v1Items = Nothing+ }++-- | Total number of volumes found. This might be greater than the number of+-- volumes returned in this response if results have been paginated.+v1TotalItems :: Lens' Volumes (Maybe Int32)+v1TotalItems+ = lens _v1TotalItems (\ s a -> s{_v1TotalItems = a})+ . mapping _Coerce++-- | Resource type.+v1Kind :: Lens' Volumes Text+v1Kind = lens _v1Kind (\ s a -> s{_v1Kind = a})++-- | A list of volumes.+v1Items :: Lens' Volumes [Volume]+v1Items+ = lens _v1Items (\ s a -> s{_v1Items = a}) . _Default+ . _Coerce++instance FromJSON Volumes where+ parseJSON+ = withObject "Volumes"+ (\ o ->+ Volumes' <$>+ (o .:? "totalItems") <*>+ (o .:? "kind" .!= "books#volumes")+ <*> (o .:? "items" .!= mempty))++instance ToJSON Volumes where+ toJSON Volumes'{..}+ = object+ (catMaybes+ [("totalItems" .=) <$> _v1TotalItems,+ Just ("kind" .= _v1Kind), ("items" .=) <$> _v1Items])++--+-- /See:/ 'bookshelves' smart constructor.+data Bookshelves = Bookshelves'+ { _booKind :: !Text+ , _booItems :: !(Maybe [Bookshelf])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Bookshelves' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'booKind'+--+-- * 'booItems'+bookshelves+ :: Bookshelves+bookshelves =+ Bookshelves'+ { _booKind = "books#bookshelves"+ , _booItems = Nothing+ }++-- | Resource type.+booKind :: Lens' Bookshelves Text+booKind = lens _booKind (\ s a -> s{_booKind = a})++-- | A list of bookshelves.+booItems :: Lens' Bookshelves [Bookshelf]+booItems+ = lens _booItems (\ s a -> s{_booItems = a}) .+ _Default+ . _Coerce++instance FromJSON Bookshelves where+ parseJSON+ = withObject "Bookshelves"+ (\ o ->+ Bookshelves' <$>+ (o .:? "kind" .!= "books#bookshelves") <*>+ (o .:? "items" .!= mempty))++instance ToJSON Bookshelves where+ toJSON Bookshelves'{..}+ = object+ (catMaybes+ [Just ("kind" .= _booKind),+ ("items" .=) <$> _booItems])++-- | The source, url and attribution for this dictionary data.+--+-- /See:/ 'dictlayerDataDictSource' smart constructor.+data DictlayerDataDictSource = DictlayerDataDictSource'+ { _dddsURL :: !(Maybe Text)+ , _dddsAttribution :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DictlayerDataDictSource' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dddsURL'+--+-- * 'dddsAttribution'+dictlayerDataDictSource+ :: DictlayerDataDictSource+dictlayerDataDictSource =+ DictlayerDataDictSource'+ { _dddsURL = Nothing+ , _dddsAttribution = Nothing+ }++dddsURL :: Lens' DictlayerDataDictSource (Maybe Text)+dddsURL = lens _dddsURL (\ s a -> s{_dddsURL = a})++dddsAttribution :: Lens' DictlayerDataDictSource (Maybe Text)+dddsAttribution+ = lens _dddsAttribution+ (\ s a -> s{_dddsAttribution = a})++instance FromJSON DictlayerDataDictSource where+ parseJSON+ = withObject "DictlayerDataDictSource"+ (\ o ->+ DictlayerDataDictSource' <$>+ (o .:? "url") <*> (o .:? "attribution"))++instance ToJSON DictlayerDataDictSource where+ toJSON DictlayerDataDictSource'{..}+ = object+ (catMaybes+ [("url" .=) <$> _dddsURL,+ ("attribution" .=) <$> _dddsAttribution])++--+-- /See:/ 'downloadAccesses' smart constructor.+data DownloadAccesses = DownloadAccesses'+ { _daKind :: !Text+ , _daDownloadAccessList :: !(Maybe [DownloadAccessRestriction])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DownloadAccesses' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'daKind'+--+-- * 'daDownloadAccessList'+downloadAccesses+ :: DownloadAccesses+downloadAccesses =+ DownloadAccesses'+ { _daKind = "books#downloadAccesses"+ , _daDownloadAccessList = Nothing+ }++-- | Resource type.+daKind :: Lens' DownloadAccesses Text+daKind = lens _daKind (\ s a -> s{_daKind = a})++-- | A list of download access responses.+daDownloadAccessList :: Lens' DownloadAccesses [DownloadAccessRestriction]+daDownloadAccessList+ = lens _daDownloadAccessList+ (\ s a -> s{_daDownloadAccessList = a})+ . _Default+ . _Coerce++instance FromJSON DownloadAccesses where+ parseJSON+ = withObject "DownloadAccesses"+ (\ o ->+ DownloadAccesses' <$>+ (o .:? "kind" .!= "books#downloadAccesses") <*>+ (o .:? "downloadAccessList" .!= mempty))++instance ToJSON DownloadAccesses where+ toJSON DownloadAccesses'{..}+ = object+ (catMaybes+ [Just ("kind" .= _daKind),+ ("downloadAccessList" .=) <$> _daDownloadAccessList])++--+-- /See:/ 'geolayerDataGeoViewportHi' smart constructor.+data GeolayerDataGeoViewportHi = GeolayerDataGeoViewportHi'+ { _gdgvhLatitude :: !(Maybe (Textual Double))+ , _gdgvhLongitude :: !(Maybe (Textual Double))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'GeolayerDataGeoViewportHi' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gdgvhLatitude'+--+-- * 'gdgvhLongitude'+geolayerDataGeoViewportHi+ :: GeolayerDataGeoViewportHi+geolayerDataGeoViewportHi =+ GeolayerDataGeoViewportHi'+ { _gdgvhLatitude = Nothing+ , _gdgvhLongitude = Nothing+ }++gdgvhLatitude :: Lens' GeolayerDataGeoViewportHi (Maybe Double)+gdgvhLatitude+ = lens _gdgvhLatitude+ (\ s a -> s{_gdgvhLatitude = a})+ . mapping _Coerce++gdgvhLongitude :: Lens' GeolayerDataGeoViewportHi (Maybe Double)+gdgvhLongitude+ = lens _gdgvhLongitude+ (\ s a -> s{_gdgvhLongitude = a})+ . mapping _Coerce++instance FromJSON GeolayerDataGeoViewportHi where+ parseJSON+ = withObject "GeolayerDataGeoViewportHi"+ (\ o ->+ GeolayerDataGeoViewportHi' <$>+ (o .:? "latitude") <*> (o .:? "longitude"))++instance ToJSON GeolayerDataGeoViewportHi where+ toJSON GeolayerDataGeoViewportHi'{..}+ = object+ (catMaybes+ [("latitude" .=) <$> _gdgvhLatitude,+ ("longitude" .=) <$> _gdgvhLongitude])++-- | General volume information.+--+-- /See:/ 'volumeVolumeInfo' smart constructor.+data VolumeVolumeInfo = VolumeVolumeInfo'+ { _vviImageLinks :: !(Maybe VolumeVolumeInfoImageLinks)+ , _vviAverageRating :: !(Maybe (Textual Double))+ , _vviRatingsCount :: !(Maybe (Textual Int32))+ , _vviCanonicalVolumeLink :: !(Maybe Text)+ , _vviReadingModes :: !(Maybe JSONValue)+ , _vviIndustryIdentifiers :: !(Maybe [VolumeVolumeInfoIndustryIdentifiersItem])+ , _vviSeriesInfo :: !(Maybe VolumeseriesInfo)+ , _vviPrintedPageCount :: !(Maybe (Textual Int32))+ , _vviMainCategory :: !(Maybe Text)+ , _vviContentVersion :: !(Maybe Text)+ , _vviSamplePageCount :: !(Maybe (Textual Int32))+ , _vviCategories :: !(Maybe [Text])+ , _vviAuthors :: !(Maybe [Text])+ , _vviAllowAnonLogging :: !(Maybe Bool)+ , _vviSubtitle :: !(Maybe Text)+ , _vviPublishedDate :: !(Maybe Text)+ , _vviMaturityRating :: !(Maybe Text)+ , _vviPreviewLink :: !(Maybe Text)+ , _vviLanguage :: !(Maybe Text)+ , _vviTitle :: !(Maybe Text)+ , _vviPageCount :: !(Maybe (Textual Int32))+ , _vviDimensions :: !(Maybe VolumeVolumeInfoDimensions)+ , _vviInfoLink :: !(Maybe Text)+ , _vviPublisher :: !(Maybe Text)+ , _vviDescription :: !(Maybe Text)+ , _vviPrintType :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'VolumeVolumeInfo' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vviImageLinks'+--+-- * 'vviAverageRating'+--+-- * 'vviRatingsCount'+--+-- * 'vviCanonicalVolumeLink'+--+-- * 'vviReadingModes'+--+-- * 'vviIndustryIdentifiers'+--+-- * 'vviSeriesInfo'+--+-- * 'vviPrintedPageCount'+--+-- * 'vviMainCategory'+--+-- * 'vviContentVersion'+--+-- * 'vviSamplePageCount'+--+-- * 'vviCategories'+--+-- * 'vviAuthors'+--+-- * 'vviAllowAnonLogging'+--+-- * 'vviSubtitle'+--+-- * 'vviPublishedDate'+--+-- * 'vviMaturityRating'+--+-- * 'vviPreviewLink'+--+-- * 'vviLanguage'+--+-- * 'vviTitle'+--+-- * 'vviPageCount'+--+-- * 'vviDimensions'+--+-- * 'vviInfoLink'+--+-- * 'vviPublisher'+--+-- * 'vviDescription'+--+-- * 'vviPrintType'+volumeVolumeInfo+ :: VolumeVolumeInfo+volumeVolumeInfo =+ VolumeVolumeInfo'+ { _vviImageLinks = Nothing+ , _vviAverageRating = Nothing+ , _vviRatingsCount = Nothing+ , _vviCanonicalVolumeLink = Nothing+ , _vviReadingModes = Nothing+ , _vviIndustryIdentifiers = Nothing+ , _vviSeriesInfo = Nothing+ , _vviPrintedPageCount = Nothing+ , _vviMainCategory = Nothing+ , _vviContentVersion = Nothing+ , _vviSamplePageCount = Nothing+ , _vviCategories = Nothing+ , _vviAuthors = Nothing+ , _vviAllowAnonLogging = Nothing+ , _vviSubtitle = Nothing+ , _vviPublishedDate = Nothing+ , _vviMaturityRating = Nothing+ , _vviPreviewLink = Nothing+ , _vviLanguage = Nothing+ , _vviTitle = Nothing+ , _vviPageCount = Nothing+ , _vviDimensions = Nothing+ , _vviInfoLink = Nothing+ , _vviPublisher = Nothing+ , _vviDescription = Nothing+ , _vviPrintType = Nothing+ }++-- | A list of image links for all the sizes that are available. (In LITE+-- projection.)+vviImageLinks :: Lens' VolumeVolumeInfo (Maybe VolumeVolumeInfoImageLinks)+vviImageLinks+ = lens _vviImageLinks+ (\ s a -> s{_vviImageLinks = a})++-- | The mean review rating for this volume. (min = 1.0, max = 5.0)+vviAverageRating :: Lens' VolumeVolumeInfo (Maybe Double)+vviAverageRating+ = lens _vviAverageRating+ (\ s a -> s{_vviAverageRating = a})+ . mapping _Coerce++-- | The number of review ratings for this volume.+vviRatingsCount :: Lens' VolumeVolumeInfo (Maybe Int32)+vviRatingsCount+ = lens _vviRatingsCount+ (\ s a -> s{_vviRatingsCount = a})+ . mapping _Coerce++-- | Canonical URL for a volume. (In LITE projection.)+vviCanonicalVolumeLink :: Lens' VolumeVolumeInfo (Maybe Text)+vviCanonicalVolumeLink+ = lens _vviCanonicalVolumeLink+ (\ s a -> s{_vviCanonicalVolumeLink = a})++-- | The reading modes available for this volume.+vviReadingModes :: Lens' VolumeVolumeInfo (Maybe JSONValue)+vviReadingModes+ = lens _vviReadingModes+ (\ s a -> s{_vviReadingModes = a})++-- | Industry standard identifiers for this volume.+vviIndustryIdentifiers :: Lens' VolumeVolumeInfo [VolumeVolumeInfoIndustryIdentifiersItem]+vviIndustryIdentifiers+ = lens _vviIndustryIdentifiers+ (\ s a -> s{_vviIndustryIdentifiers = a})+ . _Default+ . _Coerce++vviSeriesInfo :: Lens' VolumeVolumeInfo (Maybe VolumeseriesInfo)+vviSeriesInfo+ = lens _vviSeriesInfo+ (\ s a -> s{_vviSeriesInfo = a})++-- | Total number of printed pages in generated pdf representation.+vviPrintedPageCount :: Lens' VolumeVolumeInfo (Maybe Int32)+vviPrintedPageCount+ = lens _vviPrintedPageCount+ (\ s a -> s{_vviPrintedPageCount = a})+ . mapping _Coerce++-- | The main category to which this volume belongs. It will be the category+-- from the categories list returned below that has the highest weight.+vviMainCategory :: Lens' VolumeVolumeInfo (Maybe Text)+vviMainCategory+ = lens _vviMainCategory+ (\ s a -> s{_vviMainCategory = a})++-- | An identifier for the version of the volume content (text & images). (In+-- LITE projection)+vviContentVersion :: Lens' VolumeVolumeInfo (Maybe Text)+vviContentVersion+ = lens _vviContentVersion+ (\ s a -> s{_vviContentVersion = a})++-- | Total number of sample pages as per publisher metadata.+vviSamplePageCount :: Lens' VolumeVolumeInfo (Maybe Int32)+vviSamplePageCount+ = lens _vviSamplePageCount+ (\ s a -> s{_vviSamplePageCount = a})+ . mapping _Coerce++-- | A list of subject categories, such as \"Fiction\", \"Suspense\", etc.+vviCategories :: Lens' VolumeVolumeInfo [Text]+vviCategories+ = lens _vviCategories+ (\ s a -> s{_vviCategories = a})+ . _Default+ . _Coerce++-- | The names of the authors and\/or editors for this volume. (In LITE+-- projection)+vviAuthors :: Lens' VolumeVolumeInfo [Text]+vviAuthors+ = lens _vviAuthors (\ s a -> s{_vviAuthors = a}) .+ _Default+ . _Coerce++-- | Whether anonymous logging should be allowed.+vviAllowAnonLogging :: Lens' VolumeVolumeInfo (Maybe Bool)+vviAllowAnonLogging+ = lens _vviAllowAnonLogging+ (\ s a -> s{_vviAllowAnonLogging = a})++-- | Volume subtitle. (In LITE projection.)+vviSubtitle :: Lens' VolumeVolumeInfo (Maybe Text)+vviSubtitle+ = lens _vviSubtitle (\ s a -> s{_vviSubtitle = a})++-- | Date of publication. (In LITE projection.)+vviPublishedDate :: Lens' VolumeVolumeInfo (Maybe Text)+vviPublishedDate+ = lens _vviPublishedDate+ (\ s a -> s{_vviPublishedDate = a})++vviMaturityRating :: Lens' VolumeVolumeInfo (Maybe Text)+vviMaturityRating+ = lens _vviMaturityRating+ (\ s a -> s{_vviMaturityRating = a})++-- | URL to preview this volume on the Google Books site.+vviPreviewLink :: Lens' VolumeVolumeInfo (Maybe Text)+vviPreviewLink+ = lens _vviPreviewLink+ (\ s a -> s{_vviPreviewLink = a})++-- | Best language for this volume (based on content). It is the two-letter+-- ISO 639-1 code such as \'fr\', \'en\', etc.+vviLanguage :: Lens' VolumeVolumeInfo (Maybe Text)+vviLanguage+ = lens _vviLanguage (\ s a -> s{_vviLanguage = a})++-- | Volume title. (In LITE projection.)+vviTitle :: Lens' VolumeVolumeInfo (Maybe Text)+vviTitle = lens _vviTitle (\ s a -> s{_vviTitle = a})++-- | Total number of pages as per publisher metadata.+vviPageCount :: Lens' VolumeVolumeInfo (Maybe Int32)+vviPageCount+ = lens _vviPageCount (\ s a -> s{_vviPageCount = a})+ . mapping _Coerce++-- | Physical dimensions of this volume.+vviDimensions :: Lens' VolumeVolumeInfo (Maybe VolumeVolumeInfoDimensions)+vviDimensions+ = lens _vviDimensions+ (\ s a -> s{_vviDimensions = a})++-- | URL to view information about this volume on the Google Books site. (In+-- LITE projection)+vviInfoLink :: Lens' VolumeVolumeInfo (Maybe Text)+vviInfoLink+ = lens _vviInfoLink (\ s a -> s{_vviInfoLink = a})++-- | Publisher of this volume. (In LITE projection.)+vviPublisher :: Lens' VolumeVolumeInfo (Maybe Text)+vviPublisher+ = lens _vviPublisher (\ s a -> s{_vviPublisher = a})++-- | A synopsis of the volume. The text of the description is formatted in+-- HTML and includes simple formatting elements, such as b, i, and br tags.+-- (In LITE projection.)+vviDescription :: Lens' VolumeVolumeInfo (Maybe Text)+vviDescription+ = lens _vviDescription+ (\ s a -> s{_vviDescription = a})++-- | Type of publication of this volume. Possible values are BOOK or+-- MAGAZINE.+vviPrintType :: Lens' VolumeVolumeInfo (Maybe Text)+vviPrintType+ = lens _vviPrintType (\ s a -> s{_vviPrintType = a})++instance FromJSON VolumeVolumeInfo where+ parseJSON+ = withObject "VolumeVolumeInfo"+ (\ o ->+ VolumeVolumeInfo' <$>+ (o .:? "imageLinks") <*> (o .:? "averageRating") <*>+ (o .:? "ratingsCount")+ <*> (o .:? "canonicalVolumeLink")+ <*> (o .:? "readingModes")+ <*> (o .:? "industryIdentifiers" .!= mempty)+ <*> (o .:? "seriesInfo")+ <*> (o .:? "printedPageCount")+ <*> (o .:? "mainCategory")+ <*> (o .:? "contentVersion")+ <*> (o .:? "samplePageCount")+ <*> (o .:? "categories" .!= mempty)+ <*> (o .:? "authors" .!= mempty)+ <*> (o .:? "allowAnonLogging")+ <*> (o .:? "subtitle")+ <*> (o .:? "publishedDate")+ <*> (o .:? "maturityRating")+ <*> (o .:? "previewLink")+ <*> (o .:? "language")+ <*> (o .:? "title")+ <*> (o .:? "pageCount")+ <*> (o .:? "dimensions")+ <*> (o .:? "infoLink")+ <*> (o .:? "publisher")+ <*> (o .:? "description")+ <*> (o .:? "printType"))++instance ToJSON VolumeVolumeInfo where+ toJSON VolumeVolumeInfo'{..}+ = object+ (catMaybes+ [("imageLinks" .=) <$> _vviImageLinks,+ ("averageRating" .=) <$> _vviAverageRating,+ ("ratingsCount" .=) <$> _vviRatingsCount,+ ("canonicalVolumeLink" .=) <$>+ _vviCanonicalVolumeLink,+ ("readingModes" .=) <$> _vviReadingModes,+ ("industryIdentifiers" .=) <$>+ _vviIndustryIdentifiers,+ ("seriesInfo" .=) <$> _vviSeriesInfo,+ ("printedPageCount" .=) <$> _vviPrintedPageCount,+ ("mainCategory" .=) <$> _vviMainCategory,+ ("contentVersion" .=) <$> _vviContentVersion,+ ("samplePageCount" .=) <$> _vviSamplePageCount,+ ("categories" .=) <$> _vviCategories,+ ("authors" .=) <$> _vviAuthors,+ ("allowAnonLogging" .=) <$> _vviAllowAnonLogging,+ ("subtitle" .=) <$> _vviSubtitle,+ ("publishedDate" .=) <$> _vviPublishedDate,+ ("maturityRating" .=) <$> _vviMaturityRating,+ ("previewLink" .=) <$> _vviPreviewLink,+ ("language" .=) <$> _vviLanguage,+ ("title" .=) <$> _vviTitle,+ ("pageCount" .=) <$> _vviPageCount,+ ("dimensions" .=) <$> _vviDimensions,+ ("infoLink" .=) <$> _vviInfoLink,+ ("publisher" .=) <$> _vviPublisher,+ ("description" .=) <$> _vviDescription,+ ("printType" .=) <$> _vviPrintType])++--+-- /See:/ 'metadataItemsItem' smart constructor.+data MetadataItemsItem = MetadataItemsItem'+ { _miiSize :: !(Maybe (Textual Int64))+ , _miiVersion :: !(Maybe (Textual Int64))+ , _miiLanguage :: !(Maybe Text)+ , _miiDownloadURL :: !(Maybe Text)+ , _miiEncryptedKey :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'MetadataItemsItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'miiSize'+--+-- * 'miiVersion'+--+-- * 'miiLanguage'+--+-- * 'miiDownloadURL'+--+-- * 'miiEncryptedKey'+metadataItemsItem+ :: MetadataItemsItem+metadataItemsItem =+ MetadataItemsItem'+ { _miiSize = Nothing+ , _miiVersion = Nothing+ , _miiLanguage = Nothing+ , _miiDownloadURL = Nothing+ , _miiEncryptedKey = Nothing+ }++miiSize :: Lens' MetadataItemsItem (Maybe Int64)+miiSize+ = lens _miiSize (\ s a -> s{_miiSize = a}) .+ mapping _Coerce++miiVersion :: Lens' MetadataItemsItem (Maybe Int64)+miiVersion+ = lens _miiVersion (\ s a -> s{_miiVersion = a}) .+ mapping _Coerce++miiLanguage :: Lens' MetadataItemsItem (Maybe Text)+miiLanguage+ = lens _miiLanguage (\ s a -> s{_miiLanguage = a})++miiDownloadURL :: Lens' MetadataItemsItem (Maybe Text)+miiDownloadURL+ = lens _miiDownloadURL+ (\ s a -> s{_miiDownloadURL = a})++miiEncryptedKey :: Lens' MetadataItemsItem (Maybe Text)+miiEncryptedKey+ = lens _miiEncryptedKey+ (\ s a -> s{_miiEncryptedKey = a})++instance FromJSON MetadataItemsItem where+ parseJSON+ = withObject "MetadataItemsItem"+ (\ o ->+ MetadataItemsItem' <$>+ (o .:? "size") <*> (o .:? "version") <*>+ (o .:? "language")+ <*> (o .:? "download_url")+ <*> (o .:? "encrypted_key"))++instance ToJSON MetadataItemsItem where+ toJSON MetadataItemsItem'{..}+ = object+ (catMaybes+ [("size" .=) <$> _miiSize,+ ("version" .=) <$> _miiVersion,+ ("language" .=) <$> _miiLanguage,+ ("download_url" .=) <$> _miiDownloadURL,+ ("encrypted_key" .=) <$> _miiEncryptedKey])++--+-- /See:/ 'dictlayerDataDictWordsItemSensesItemSource' smart constructor.+data DictlayerDataDictWordsItemSensesItemSource = DictlayerDataDictWordsItemSensesItemSource'+ { _dddwisisURL :: !(Maybe Text)+ , _dddwisisAttribution :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DictlayerDataDictWordsItemSensesItemSource' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dddwisisURL'+--+-- * 'dddwisisAttribution'+dictlayerDataDictWordsItemSensesItemSource+ :: DictlayerDataDictWordsItemSensesItemSource+dictlayerDataDictWordsItemSensesItemSource =+ DictlayerDataDictWordsItemSensesItemSource'+ { _dddwisisURL = Nothing+ , _dddwisisAttribution = Nothing+ }++dddwisisURL :: Lens' DictlayerDataDictWordsItemSensesItemSource (Maybe Text)+dddwisisURL+ = lens _dddwisisURL (\ s a -> s{_dddwisisURL = a})++dddwisisAttribution :: Lens' DictlayerDataDictWordsItemSensesItemSource (Maybe Text)+dddwisisAttribution+ = lens _dddwisisAttribution+ (\ s a -> s{_dddwisisAttribution = a})++instance FromJSON+ DictlayerDataDictWordsItemSensesItemSource where+ parseJSON+ = withObject+ "DictlayerDataDictWordsItemSensesItemSource"+ (\ o ->+ DictlayerDataDictWordsItemSensesItemSource' <$>+ (o .:? "url") <*> (o .:? "attribution"))++instance ToJSON+ DictlayerDataDictWordsItemSensesItemSource where+ toJSON+ DictlayerDataDictWordsItemSensesItemSource'{..}+ = object+ (catMaybes+ [("url" .=) <$> _dddwisisURL,+ ("attribution" .=) <$> _dddwisisAttribution])++-- | Offer retail (=discounted) price in Micros+--+-- /See:/ 'volumeSaleInfoOffersItemRetailPrice' smart constructor.+data VolumeSaleInfoOffersItemRetailPrice = VolumeSaleInfoOffersItemRetailPrice'+ { _vsioirpCurrencyCode :: !(Maybe Text)+ , _vsioirpAmountInMicros :: !(Maybe (Textual Double))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'VolumeSaleInfoOffersItemRetailPrice' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vsioirpCurrencyCode'+--+-- * 'vsioirpAmountInMicros'+volumeSaleInfoOffersItemRetailPrice+ :: VolumeSaleInfoOffersItemRetailPrice+volumeSaleInfoOffersItemRetailPrice =+ VolumeSaleInfoOffersItemRetailPrice'+ { _vsioirpCurrencyCode = Nothing+ , _vsioirpAmountInMicros = Nothing+ }++vsioirpCurrencyCode :: Lens' VolumeSaleInfoOffersItemRetailPrice (Maybe Text)+vsioirpCurrencyCode+ = lens _vsioirpCurrencyCode+ (\ s a -> s{_vsioirpCurrencyCode = a})++vsioirpAmountInMicros :: Lens' VolumeSaleInfoOffersItemRetailPrice (Maybe Double)+vsioirpAmountInMicros+ = lens _vsioirpAmountInMicros+ (\ s a -> s{_vsioirpAmountInMicros = a})+ . mapping _Coerce++instance FromJSON VolumeSaleInfoOffersItemRetailPrice+ where+ parseJSON+ = withObject "VolumeSaleInfoOffersItemRetailPrice"+ (\ o ->+ VolumeSaleInfoOffersItemRetailPrice' <$>+ (o .:? "currencyCode") <*> (o .:? "amountInMicros"))++instance ToJSON VolumeSaleInfoOffersItemRetailPrice+ where+ toJSON VolumeSaleInfoOffersItemRetailPrice'{..}+ = object+ (catMaybes+ [("currencyCode" .=) <$> _vsioirpCurrencyCode,+ ("amountInMicros" .=) <$> _vsioirpAmountInMicros])++-- | Information on the ability to share with the family.+--+-- /See:/ 'volumeUserInfoFamilySharing' smart constructor.+data VolumeUserInfoFamilySharing = VolumeUserInfoFamilySharing'+ { _vuifsFamilyRole :: !(Maybe Text)+ , _vuifsIsSharingAllowed :: !(Maybe Bool)+ , _vuifsIsSharingDisabledByFop :: !(Maybe Bool)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'VolumeUserInfoFamilySharing' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vuifsFamilyRole'+--+-- * 'vuifsIsSharingAllowed'+--+-- * 'vuifsIsSharingDisabledByFop'+volumeUserInfoFamilySharing+ :: VolumeUserInfoFamilySharing+volumeUserInfoFamilySharing =+ VolumeUserInfoFamilySharing'+ { _vuifsFamilyRole = Nothing+ , _vuifsIsSharingAllowed = Nothing+ , _vuifsIsSharingDisabledByFop = Nothing+ }++-- | The role of the user in the family.+vuifsFamilyRole :: Lens' VolumeUserInfoFamilySharing (Maybe Text)+vuifsFamilyRole+ = lens _vuifsFamilyRole+ (\ s a -> s{_vuifsFamilyRole = a})++-- | Whether or not this volume can be shared with the family by the user.+-- This includes sharing eligibility of both the volume and the user. If+-- the value is true, the user can initiate a family sharing action.+vuifsIsSharingAllowed :: Lens' VolumeUserInfoFamilySharing (Maybe Bool)+vuifsIsSharingAllowed+ = lens _vuifsIsSharingAllowed+ (\ s a -> s{_vuifsIsSharingAllowed = a})++-- | Whether or not sharing this volume is temporarily disabled due to issues+-- with the Family Wallet.+vuifsIsSharingDisabledByFop :: Lens' VolumeUserInfoFamilySharing (Maybe Bool)+vuifsIsSharingDisabledByFop+ = lens _vuifsIsSharingDisabledByFop+ (\ s a -> s{_vuifsIsSharingDisabledByFop = a})++instance FromJSON VolumeUserInfoFamilySharing where+ parseJSON+ = withObject "VolumeUserInfoFamilySharing"+ (\ o ->+ VolumeUserInfoFamilySharing' <$>+ (o .:? "familyRole") <*> (o .:? "isSharingAllowed")+ <*> (o .:? "isSharingDisabledByFop"))++instance ToJSON VolumeUserInfoFamilySharing where+ toJSON VolumeUserInfoFamilySharing'{..}+ = object+ (catMaybes+ [("familyRole" .=) <$> _vuifsFamilyRole,+ ("isSharingAllowed" .=) <$> _vuifsIsSharingAllowed,+ ("isSharingDisabledByFop" .=) <$>+ _vuifsIsSharingDisabledByFop])++--+-- /See:/ 'volumeVolumeInfoIndustryIdentifiersItem' smart constructor.+data VolumeVolumeInfoIndustryIdentifiersItem = VolumeVolumeInfoIndustryIdentifiersItem'+ { _vviiiiIdentifier :: !(Maybe Text)+ , _vviiiiType :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'VolumeVolumeInfoIndustryIdentifiersItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vviiiiIdentifier'+--+-- * 'vviiiiType'+volumeVolumeInfoIndustryIdentifiersItem+ :: VolumeVolumeInfoIndustryIdentifiersItem+volumeVolumeInfoIndustryIdentifiersItem =+ VolumeVolumeInfoIndustryIdentifiersItem'+ { _vviiiiIdentifier = Nothing+ , _vviiiiType = Nothing+ }++-- | Industry specific volume identifier.+vviiiiIdentifier :: Lens' VolumeVolumeInfoIndustryIdentifiersItem (Maybe Text)+vviiiiIdentifier+ = lens _vviiiiIdentifier+ (\ s a -> s{_vviiiiIdentifier = a})++-- | Identifier type. Possible values are ISBN_10, ISBN_13, ISSN and OTHER.+vviiiiType :: Lens' VolumeVolumeInfoIndustryIdentifiersItem (Maybe Text)+vviiiiType+ = lens _vviiiiType (\ s a -> s{_vviiiiType = a})++instance FromJSON+ VolumeVolumeInfoIndustryIdentifiersItem where+ parseJSON+ = withObject+ "VolumeVolumeInfoIndustryIdentifiersItem"+ (\ o ->+ VolumeVolumeInfoIndustryIdentifiersItem' <$>+ (o .:? "identifier") <*> (o .:? "type"))++instance ToJSON+ VolumeVolumeInfoIndustryIdentifiersItem where+ toJSON VolumeVolumeInfoIndustryIdentifiersItem'{..}+ = object+ (catMaybes+ [("identifier" .=) <$> _vviiiiIdentifier,+ ("type" .=) <$> _vviiiiType])++--+-- /See:/ 'booksAnnotationsRange' smart constructor.+data BooksAnnotationsRange = BooksAnnotationsRange'+ { _barStartOffSet :: !(Maybe Text)+ , _barEndOffSet :: !(Maybe Text)+ , _barEndPosition :: !(Maybe Text)+ , _barStartPosition :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'BooksAnnotationsRange' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'barStartOffSet'+--+-- * 'barEndOffSet'+--+-- * 'barEndPosition'+--+-- * 'barStartPosition'+booksAnnotationsRange+ :: BooksAnnotationsRange+booksAnnotationsRange =+ BooksAnnotationsRange'+ { _barStartOffSet = Nothing+ , _barEndOffSet = Nothing+ , _barEndPosition = Nothing+ , _barStartPosition = Nothing+ }++-- | The offset from the starting position.+barStartOffSet :: Lens' BooksAnnotationsRange (Maybe Text)+barStartOffSet+ = lens _barStartOffSet+ (\ s a -> s{_barStartOffSet = a})++-- | The offset from the ending position.+barEndOffSet :: Lens' BooksAnnotationsRange (Maybe Text)+barEndOffSet+ = lens _barEndOffSet (\ s a -> s{_barEndOffSet = a})++-- | The ending position for the range.+barEndPosition :: Lens' BooksAnnotationsRange (Maybe Text)+barEndPosition+ = lens _barEndPosition+ (\ s a -> s{_barEndPosition = a})++-- | The starting position for the range.+barStartPosition :: Lens' BooksAnnotationsRange (Maybe Text)+barStartPosition+ = lens _barStartPosition+ (\ s a -> s{_barStartPosition = a})++instance FromJSON BooksAnnotationsRange where+ parseJSON+ = withObject "BooksAnnotationsRange"+ (\ o ->+ BooksAnnotationsRange' <$>+ (o .:? "startOffset") <*> (o .:? "endOffset") <*>+ (o .:? "endPosition")+ <*> (o .:? "startPosition"))++instance ToJSON BooksAnnotationsRange where+ toJSON BooksAnnotationsRange'{..}+ = object+ (catMaybes+ [("startOffset" .=) <$> _barStartOffSet,+ ("endOffset" .=) <$> _barEndOffSet,+ ("endPosition" .=) <$> _barEndPosition,+ ("startPosition" .=) <$> _barStartPosition])++--+-- /See:/ 'layersummaries' smart constructor.+data Layersummaries = Layersummaries'+ { _layTotalItems :: !(Maybe (Textual Int32))+ , _layKind :: !Text+ , _layItems :: !(Maybe [Layersummary])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Layersummaries' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'layTotalItems'+--+-- * 'layKind'+--+-- * 'layItems'+layersummaries+ :: Layersummaries+layersummaries =+ Layersummaries'+ { _layTotalItems = Nothing+ , _layKind = "books#layersummaries"+ , _layItems = Nothing+ }++-- | The total number of layer summaries found.+layTotalItems :: Lens' Layersummaries (Maybe Int32)+layTotalItems+ = lens _layTotalItems+ (\ s a -> s{_layTotalItems = a})+ . mapping _Coerce++-- | Resource type.+layKind :: Lens' Layersummaries Text+layKind = lens _layKind (\ s a -> s{_layKind = a})++-- | A list of layer summary items.+layItems :: Lens' Layersummaries [Layersummary]+layItems+ = lens _layItems (\ s a -> s{_layItems = a}) .+ _Default+ . _Coerce++instance FromJSON Layersummaries where+ parseJSON+ = withObject "Layersummaries"+ (\ o ->+ Layersummaries' <$>+ (o .:? "totalItems") <*>+ (o .:? "kind" .!= "books#layersummaries")+ <*> (o .:? "items" .!= mempty))++instance ToJSON Layersummaries where+ toJSON Layersummaries'{..} = object (catMaybes [("totalItems" .=) <$> _layTotalItems,
gen/Network/Google/Books/Types/Sum.hs view
@@ -8,7 +8,7 @@ -- | -- Module : Network.Google.Books.Types.Sum--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -26,18 +26,18 @@ | Lite -- ^ @lite@ -- Includes a subset of fields in volumeInfo and accessInfo.- deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic) instance Hashable VolumesListProjection -instance FromText VolumesListProjection where- fromText = \case- "full" -> Just Full- "lite" -> Just Lite- _ -> Nothing+instance FromHttpApiData VolumesListProjection where+ parseQueryParam = \case+ "full" -> Right Full+ "lite" -> Right Lite+ x -> Left ("Unable to parse VolumesListProjection from: " <> x) -instance ToText VolumesListProjection where- toText = \case+instance ToHttpApiData VolumesListProjection where+ toQueryParam = \case Full -> "full" Lite -> "lite" @@ -55,18 +55,18 @@ | MLBVLPLite -- ^ @lite@ -- Includes a subset of fields in volumeInfo and accessInfo.- deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic) instance Hashable MyLibraryBookshelvesVolumesListProjection -instance FromText MyLibraryBookshelvesVolumesListProjection where- fromText = \case- "full" -> Just MLBVLPFull- "lite" -> Just MLBVLPLite- _ -> Nothing+instance FromHttpApiData MyLibraryBookshelvesVolumesListProjection where+ parseQueryParam = \case+ "full" -> Right MLBVLPFull+ "lite" -> Right MLBVLPLite+ x -> Left ("Unable to parse MyLibraryBookshelvesVolumesListProjection from: " <> x) -instance ToText MyLibraryBookshelvesVolumesListProjection where- toText = \case+instance ToHttpApiData MyLibraryBookshelvesVolumesListProjection where+ toQueryParam = \case MLBVLPFull -> "full" MLBVLPLite -> "lite" @@ -84,18 +84,18 @@ | Relevance -- ^ @relevance@ -- Relevance to search terms.- deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic) instance Hashable VolumesListOrderBy -instance FromText VolumesListOrderBy where- fromText = \case- "newest" -> Just Newest- "relevance" -> Just Relevance- _ -> Nothing+instance FromHttpApiData VolumesListOrderBy where+ parseQueryParam = \case+ "newest" -> Right Newest+ "relevance" -> Right Relevance+ x -> Left ("Unable to parse VolumesListOrderBy from: " <> x) -instance ToText VolumesListOrderBy where- toText = \case+instance ToHttpApiData VolumesListOrderBy where+ toQueryParam = \case Newest -> "newest" Relevance -> "relevance" @@ -113,18 +113,18 @@ | NoRestrict -- ^ @no-restrict@ -- Do not restrict based on user\'s library.- deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic) instance Hashable VolumesListLibraryRestrict -instance FromText VolumesListLibraryRestrict where- fromText = \case- "my-library" -> Just MyLibrary- "no-restrict" -> Just NoRestrict- _ -> Nothing+instance FromHttpApiData VolumesListLibraryRestrict where+ parseQueryParam = \case+ "my-library" -> Right MyLibrary+ "no-restrict" -> Right NoRestrict+ x -> Left ("Unable to parse VolumesListLibraryRestrict from: " <> x) -instance ToText VolumesListLibraryRestrict where- toText = \case+instance ToHttpApiData VolumesListLibraryRestrict where+ toQueryParam = \case MyLibrary -> "my-library" NoRestrict -> "no-restrict" @@ -139,17 +139,17 @@ = Onboarding -- ^ @ONBOARDING@ -- Samples removed from the Onboarding flow.- deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic) instance Hashable MyLibraryBookshelvesRemoveVolumeReason -instance FromText MyLibraryBookshelvesRemoveVolumeReason where- fromText = \case- "ONBOARDING" -> Just Onboarding- _ -> Nothing+instance FromHttpApiData MyLibraryBookshelvesRemoveVolumeReason where+ parseQueryParam = \case+ "ONBOARDING" -> Right Onboarding+ x -> Left ("Unable to parse MyLibraryBookshelvesRemoveVolumeReason from: " <> x) -instance ToText MyLibraryBookshelvesRemoveVolumeReason where- toText = \case+instance ToHttpApiData MyLibraryBookshelvesRemoveVolumeReason where+ toQueryParam = \case Onboarding -> "ONBOARDING" instance FromJSON MyLibraryBookshelvesRemoveVolumeReason where@@ -167,18 +167,18 @@ | NotMature -- ^ @not-mature@ -- Show books which are rated not mature.- deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic) instance Hashable OnboardingListCategoryVolumesMaxAllowedMaturityRating -instance FromText OnboardingListCategoryVolumesMaxAllowedMaturityRating where- fromText = \case- "mature" -> Just Mature- "not-mature" -> Just NotMature- _ -> Nothing+instance FromHttpApiData OnboardingListCategoryVolumesMaxAllowedMaturityRating where+ parseQueryParam = \case+ "mature" -> Right Mature+ "not-mature" -> Right NotMature+ x -> Left ("Unable to parse OnboardingListCategoryVolumesMaxAllowedMaturityRating from: " <> x) -instance ToText OnboardingListCategoryVolumesMaxAllowedMaturityRating where- toText = \case+instance ToHttpApiData OnboardingListCategoryVolumesMaxAllowedMaturityRating where+ toQueryParam = \case Mature -> "mature" NotMature -> "not-mature" @@ -193,17 +193,17 @@ = Epub -- ^ @epub@ -- All volumes with epub.- deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic) instance Hashable VolumesListDownload -instance FromText VolumesListDownload where- fromText = \case- "epub" -> Just Epub- _ -> Nothing+instance FromHttpApiData VolumesListDownload where+ parseQueryParam = \case+ "epub" -> Right Epub+ x -> Left ("Unable to parse VolumesListDownload from: " <> x) -instance ToText VolumesListDownload where- toText = \case+instance ToHttpApiData VolumesListDownload where+ toQueryParam = \case Epub -> "epub" instance FromJSON VolumesListDownload where@@ -220,18 +220,18 @@ | VGPLite -- ^ @lite@ -- Includes a subset of fields in volumeInfo and accessInfo.- deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic) instance Hashable VolumesGetProjection -instance FromText VolumesGetProjection where- fromText = \case- "full" -> Just VGPFull- "lite" -> Just VGPLite- _ -> Nothing+instance FromHttpApiData VolumesGetProjection where+ parseQueryParam = \case+ "full" -> Right VGPFull+ "lite" -> Right VGPLite+ x -> Left ("Unable to parse VolumesGetProjection from: " <> x) -instance ToText VolumesGetProjection where- toText = \case+instance ToHttpApiData VolumesGetProjection where+ toQueryParam = \case VGPFull -> "full" VGPLite -> "lite" @@ -252,19 +252,19 @@ | RelatedForPlay -- ^ @related-for-play@ -- Related volumes for Play Store.- deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic) instance Hashable VolumesAssociatedListAssociation -instance FromText VolumesAssociatedListAssociation where- fromText = \case- "end-of-sample" -> Just EndOfSample- "end-of-volume" -> Just EndOfVolume- "related-for-play" -> Just RelatedForPlay- _ -> Nothing+instance FromHttpApiData VolumesAssociatedListAssociation where+ parseQueryParam = \case+ "end-of-sample" -> Right EndOfSample+ "end-of-volume" -> Right EndOfVolume+ "related-for-play" -> Right RelatedForPlay+ x -> Left ("Unable to parse VolumesAssociatedListAssociation from: " <> x) -instance ToText VolumesAssociatedListAssociation where- toText = \case+instance ToHttpApiData VolumesAssociatedListAssociation where+ toQueryParam = \case EndOfSample -> "end-of-sample" EndOfVolume -> "end-of-volume" RelatedForPlay -> "related-for-play"@@ -283,18 +283,18 @@ | NotInterested -- ^ @NOT_INTERESTED@ -- Rating indicating a negative dismissal of a volume.- deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic) instance Hashable VolumesRecommendedRateRating -instance FromText VolumesRecommendedRateRating where- fromText = \case- "HAVE_IT" -> Just HaveIt- "NOT_INTERESTED" -> Just NotInterested- _ -> Nothing+instance FromHttpApiData VolumesRecommendedRateRating where+ parseQueryParam = \case+ "HAVE_IT" -> Right HaveIt+ "NOT_INTERESTED" -> Right NotInterested+ x -> Left ("Unable to parse VolumesRecommendedRateRating from: " <> x) -instance ToText VolumesRecommendedRateRating where- toText = \case+instance ToHttpApiData VolumesRecommendedRateRating where+ toQueryParam = \case HaveIt -> "HAVE_IT" NotInterested -> "NOT_INTERESTED" @@ -315,19 +315,19 @@ | Running -- ^ @RUNNING@ -- The volume processing is not completed.- deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic) instance Hashable VolumesUserUploadedListProcessingState -instance FromText VolumesUserUploadedListProcessingState where- fromText = \case- "COMPLETED_FAILED" -> Just CompletedFailed- "COMPLETED_SUCCESS" -> Just CompletedSuccess- "RUNNING" -> Just Running- _ -> Nothing+instance FromHttpApiData VolumesUserUploadedListProcessingState where+ parseQueryParam = \case+ "COMPLETED_FAILED" -> Right CompletedFailed+ "COMPLETED_SUCCESS" -> Right CompletedSuccess+ "RUNNING" -> Right Running+ x -> Left ("Unable to parse VolumesUserUploadedListProcessingState from: " <> x) -instance ToText VolumesUserUploadedListProcessingState where- toText = \case+instance ToHttpApiData VolumesUserUploadedListProcessingState where+ toQueryParam = \case CompletedFailed -> "COMPLETED_FAILED" CompletedSuccess -> "COMPLETED_SUCCESS" Running -> "RUNNING"@@ -343,17 +343,17 @@ = Rentals -- ^ @RENTALS@ -- Client supports rentals.- deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic) instance Hashable MyConfigSyncVolumeLicensesFeatures -instance FromText MyConfigSyncVolumeLicensesFeatures where- fromText = \case- "RENTALS" -> Just Rentals- _ -> Nothing+instance FromHttpApiData MyConfigSyncVolumeLicensesFeatures where+ parseQueryParam = \case+ "RENTALS" -> Right Rentals+ x -> Left ("Unable to parse MyConfigSyncVolumeLicensesFeatures from: " <> x) -instance ToText MyConfigSyncVolumeLicensesFeatures where- toText = \case+instance ToHttpApiData MyConfigSyncVolumeLicensesFeatures where+ toQueryParam = \case Rentals -> "RENTALS" instance FromJSON MyConfigSyncVolumeLicensesFeatures where@@ -371,18 +371,18 @@ | VALMAMRNotMature -- ^ @not-mature@ -- Show books which are rated not mature.- deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic) instance Hashable VolumesAssociatedListMaxAllowedMaturityRating -instance FromText VolumesAssociatedListMaxAllowedMaturityRating where- fromText = \case- "mature" -> Just VALMAMRMature- "not-mature" -> Just VALMAMRNotMature- _ -> Nothing+instance FromHttpApiData VolumesAssociatedListMaxAllowedMaturityRating where+ parseQueryParam = \case+ "mature" -> Right VALMAMRMature+ "not-mature" -> Right VALMAMRNotMature+ x -> Left ("Unable to parse VolumesAssociatedListMaxAllowedMaturityRating from: " <> x) -instance ToText VolumesAssociatedListMaxAllowedMaturityRating where- toText = \case+instance ToHttpApiData VolumesAssociatedListMaxAllowedMaturityRating where+ toQueryParam = \case VALMAMRMature -> "mature" VALMAMRNotMature -> "not-mature" @@ -409,21 +409,21 @@ | VLFPartial -- ^ @partial@ -- Public able to see parts of text.- deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic) instance Hashable VolumesListFilter -instance FromText VolumesListFilter where- fromText = \case- "ebooks" -> Just VLFEbooks- "free-ebooks" -> Just VLFFreeEbooks- "full" -> Just VLFFull- "paid-ebooks" -> Just VLFPaidEbooks- "partial" -> Just VLFPartial- _ -> Nothing+instance FromHttpApiData VolumesListFilter where+ parseQueryParam = \case+ "ebooks" -> Right VLFEbooks+ "free-ebooks" -> Right VLFFreeEbooks+ "full" -> Right VLFFull+ "paid-ebooks" -> Right VLFPaidEbooks+ "partial" -> Right VLFPartial+ x -> Left ("Unable to parse VolumesListFilter from: " <> x) -instance ToText VolumesListFilter where- toText = \case+instance ToHttpApiData VolumesListFilter where+ toQueryParam = \case VLFEbooks -> "ebooks" VLFFreeEbooks -> "free-ebooks" VLFFull -> "full"@@ -445,18 +445,18 @@ | VRLMAMRNotMature -- ^ @not-mature@ -- Show books which are rated not mature.- deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic) instance Hashable VolumesRecommendedListMaxAllowedMaturityRating -instance FromText VolumesRecommendedListMaxAllowedMaturityRating where- fromText = \case- "mature" -> Just VRLMAMRMature- "not-mature" -> Just VRLMAMRNotMature- _ -> Nothing+instance FromHttpApiData VolumesRecommendedListMaxAllowedMaturityRating where+ parseQueryParam = \case+ "mature" -> Right VRLMAMRMature+ "not-mature" -> Right VRLMAMRNotMature+ x -> Left ("Unable to parse VolumesRecommendedListMaxAllowedMaturityRating from: " <> x) -instance ToText VolumesRecommendedListMaxAllowedMaturityRating where- toText = \case+instance ToHttpApiData VolumesRecommendedListMaxAllowedMaturityRating where+ toQueryParam = \case VRLMAMRMature -> "mature" VRLMAMRNotMature -> "not-mature" @@ -477,19 +477,19 @@ | MLBAVROnboarding -- ^ @ONBOARDING@ -- Volumes added from the Onboarding flow.- deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic) instance Hashable MyLibraryBookshelvesAddVolumeReason -instance FromText MyLibraryBookshelvesAddVolumeReason where- fromText = \case- "IOS_PREX" -> Just MLBAVRIosPrex- "IOS_SEARCH" -> Just MLBAVRIosSearch- "ONBOARDING" -> Just MLBAVROnboarding- _ -> Nothing+instance FromHttpApiData MyLibraryBookshelvesAddVolumeReason where+ parseQueryParam = \case+ "IOS_PREX" -> Right MLBAVRIosPrex+ "IOS_SEARCH" -> Right MLBAVRIosSearch+ "ONBOARDING" -> Right MLBAVROnboarding+ x -> Left ("Unable to parse MyLibraryBookshelvesAddVolumeReason from: " <> x) -instance ToText MyLibraryBookshelvesAddVolumeReason where- toText = \case+instance ToHttpApiData MyLibraryBookshelvesAddVolumeReason where+ toQueryParam = \case MLBAVRIosPrex -> "IOS_PREX" MLBAVRIosSearch -> "IOS_SEARCH" MLBAVROnboarding -> "ONBOARDING"@@ -523,23 +523,23 @@ | Uploaded -- ^ @UPLOADED@ -- User uploaded books- deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic) instance Hashable VolumesMybooksListAcquireMethod -instance FromText VolumesMybooksListAcquireMethod where- fromText = \case- "PREORDERED" -> Just PreOrdered- "PREVIOUSLY_RENTED" -> Just PreviouslyRented- "PUBLIC_DOMAIN" -> Just PublicDomain- "PURCHASED" -> Just Purchased- "RENTED" -> Just Rented- "SAMPLE" -> Just Sample- "UPLOADED" -> Just Uploaded- _ -> Nothing+instance FromHttpApiData VolumesMybooksListAcquireMethod where+ parseQueryParam = \case+ "PREORDERED" -> Right PreOrdered+ "PREVIOUSLY_RENTED" -> Right PreviouslyRented+ "PUBLIC_DOMAIN" -> Right PublicDomain+ "PURCHASED" -> Right Purchased+ "RENTED" -> Right Rented+ "SAMPLE" -> Right Sample+ "UPLOADED" -> Right Uploaded+ x -> Left ("Unable to parse VolumesMybooksListAcquireMethod from: " <> x) -instance ToText VolumesMybooksListAcquireMethod where- toText = \case+instance ToHttpApiData VolumesMybooksListAcquireMethod where+ toQueryParam = \case PreOrdered -> "PREORDERED" PreviouslyRented -> "PREVIOUSLY_RENTED" PublicDomain -> "PUBLIC_DOMAIN"@@ -563,18 +563,18 @@ | PGMAMRNotMature -- ^ @not-mature@ -- Show books which are rated not mature.- deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic) instance Hashable PersonalizedstreamGetMaxAllowedMaturityRating -instance FromText PersonalizedstreamGetMaxAllowedMaturityRating where- fromText = \case- "mature" -> Just PGMAMRMature- "not-mature" -> Just PGMAMRNotMature- _ -> Nothing+instance FromHttpApiData PersonalizedstreamGetMaxAllowedMaturityRating where+ parseQueryParam = \case+ "mature" -> Right PGMAMRMature+ "not-mature" -> Right PGMAMRNotMature+ x -> Left ("Unable to parse PersonalizedstreamGetMaxAllowedMaturityRating from: " <> x) -instance ToText PersonalizedstreamGetMaxAllowedMaturityRating where- toText = \case+instance ToHttpApiData PersonalizedstreamGetMaxAllowedMaturityRating where+ toQueryParam = \case PGMAMRMature -> "mature" PGMAMRNotMature -> "not-mature" @@ -595,19 +595,19 @@ | Magazines -- ^ @magazines@ -- Just magazines.- deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic) instance Hashable VolumesListPrintType -instance FromText VolumesListPrintType where- fromText = \case- "all" -> Just All- "books" -> Just Books- "magazines" -> Just Magazines- _ -> Nothing+instance FromHttpApiData VolumesListPrintType where+ parseQueryParam = \case+ "all" -> Right All+ "books" -> Right Books+ "magazines" -> Right Magazines+ x -> Left ("Unable to parse VolumesListPrintType from: " <> x) -instance ToText VolumesListPrintType where- toText = \case+instance ToHttpApiData VolumesListPrintType where+ toQueryParam = \case All -> "all" Books -> "books" Magazines -> "magazines"@@ -630,19 +630,19 @@ | VMLPSRunning -- ^ @RUNNING@ -- The volume processing is not completed.- deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic) instance Hashable VolumesMybooksListProcessingState -instance FromText VolumesMybooksListProcessingState where- fromText = \case- "COMPLETED_FAILED" -> Just VMLPSCompletedFailed- "COMPLETED_SUCCESS" -> Just VMLPSCompletedSuccess- "RUNNING" -> Just VMLPSRunning- _ -> Nothing+instance FromHttpApiData VolumesMybooksListProcessingState where+ parseQueryParam = \case+ "COMPLETED_FAILED" -> Right VMLPSCompletedFailed+ "COMPLETED_SUCCESS" -> Right VMLPSCompletedSuccess+ "RUNNING" -> Right VMLPSRunning+ x -> Left ("Unable to parse VolumesMybooksListProcessingState from: " <> x) -instance ToText VolumesMybooksListProcessingState where- toText = \case+instance ToHttpApiData VolumesMybooksListProcessingState where+ toQueryParam = \case VMLPSCompletedFailed -> "COMPLETED_FAILED" VMLPSCompletedSuccess -> "COMPLETED_SUCCESS" VMLPSRunning -> "RUNNING"@@ -665,19 +665,19 @@ | Download -- ^ @DOWNLOAD@ -- Offline download access license.- deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic) instance Hashable MyConfigRequestAccessLicenseTypes -instance FromText MyConfigRequestAccessLicenseTypes where- fromText = \case- "BOTH" -> Just Both- "CONCURRENT" -> Just Concurrent- "DOWNLOAD" -> Just Download- _ -> Nothing+instance FromHttpApiData MyConfigRequestAccessLicenseTypes where+ parseQueryParam = \case+ "BOTH" -> Right Both+ "CONCURRENT" -> Right Concurrent+ "DOWNLOAD" -> Right Download+ x -> Left ("Unable to parse MyConfigRequestAccessLicenseTypes from: " <> x) -instance ToText MyConfigRequestAccessLicenseTypes where- toText = \case+instance ToHttpApiData MyConfigRequestAccessLicenseTypes where+ toQueryParam = \case Both -> "BOTH" Concurrent -> "CONCURRENT" Download -> "DOWNLOAD"@@ -708,22 +708,22 @@ | Search -- ^ @search@ -- User chose search results within volume.- deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic)+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic) instance Hashable MyLibraryReadingPositionsSetPositionAction -instance FromText MyLibraryReadingPositionsSetPositionAction where- fromText = \case- "bookmark" -> Just Bookmark- "chapter" -> Just Chapter- "next-page" -> Just NextPage- "prev-page" -> Just PrevPage- "scroll" -> Just Scroll- "search" -> Just Search- _ -> Nothing+instance FromHttpApiData MyLibraryReadingPositionsSetPositionAction where+ parseQueryParam = \case+ "bookmark" -> Right Bookmark+ "chapter" -> Right Chapter+ "next-page" -> Right NextPage+ "prev-page" -> Right PrevPage+ "scroll" -> Right Scroll+ "search" -> Right Search+ x -> Left ("Unable to parse MyLibraryReadingPositionsSetPositionAction from: " <> x) -instance ToText MyLibraryReadingPositionsSetPositionAction where- toText = \case+instance ToHttpApiData MyLibraryReadingPositionsSetPositionAction where+ toQueryParam = \case Bookmark -> "bookmark" Chapter -> "chapter" NextPage -> "next-page"
gen/Network/Google/Resource/Books/Bookshelves/Get.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.Bookshelves.Get--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -56,7 +56,7 @@ -- | Retrieves metadata for a specific bookshelf for the specified user. -- -- /See:/ 'bookshelvesGet' smart constructor.-data BookshelvesGet = BookshelvesGet+data BookshelvesGet = BookshelvesGet' { _bgUserId :: !Text , _bgShelf :: !Text , _bgSource :: !(Maybe Text)@@ -76,7 +76,7 @@ -> Text -- ^ 'bgShelf' -> BookshelvesGet bookshelvesGet pBgUserId_ pBgShelf_ =- BookshelvesGet+ BookshelvesGet' { _bgUserId = pBgUserId_ , _bgShelf = pBgShelf_ , _bgSource = Nothing@@ -96,7 +96,9 @@ instance GoogleRequest BookshelvesGet where type Rs BookshelvesGet = Bookshelf- requestClient BookshelvesGet{..}+ type Scopes BookshelvesGet =+ '["https://www.googleapis.com/auth/books"]+ requestClient BookshelvesGet'{..} = go _bgUserId _bgShelf _bgSource (Just AltJSON) booksService where go
gen/Network/Google/Resource/Books/Bookshelves/List.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.Bookshelves.List--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -54,7 +54,7 @@ -- | Retrieves a list of public bookshelves for the specified user. -- -- /See:/ 'bookshelvesList' smart constructor.-data BookshelvesList = BookshelvesList+data BookshelvesList = BookshelvesList' { _blUserId :: !Text , _blSource :: !(Maybe Text) } deriving (Eq,Show,Data,Typeable,Generic)@@ -70,7 +70,7 @@ :: Text -- ^ 'blUserId' -> BookshelvesList bookshelvesList pBlUserId_ =- BookshelvesList+ BookshelvesList' { _blUserId = pBlUserId_ , _blSource = Nothing }@@ -85,7 +85,9 @@ instance GoogleRequest BookshelvesList where type Rs BookshelvesList = Bookshelves- requestClient BookshelvesList{..}+ type Scopes BookshelvesList =+ '["https://www.googleapis.com/auth/books"]+ requestClient BookshelvesList'{..} = go _blUserId _blSource (Just AltJSON) booksService where go = buildClient
gen/Network/Google/Resource/Books/Bookshelves/Volumes/List.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.Bookshelves.Volumes.List--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -63,7 +63,7 @@ -- | Retrieves volumes in a specific bookshelf for the specified user. -- -- /See:/ 'bookshelvesVolumesList' smart constructor.-data BookshelvesVolumesList = BookshelvesVolumesList+data BookshelvesVolumesList = BookshelvesVolumesList' { _bvlUserId :: !Text , _bvlShelf :: !Text , _bvlSource :: !(Maybe Text)@@ -92,7 +92,7 @@ -> Text -- ^ 'bvlShelf' -> BookshelvesVolumesList bookshelvesVolumesList pBvlUserId_ pBvlShelf_ =- BookshelvesVolumesList+ BookshelvesVolumesList' { _bvlUserId = pBvlUserId_ , _bvlShelf = pBvlShelf_ , _bvlSource = Nothing@@ -137,7 +137,9 @@ instance GoogleRequest BookshelvesVolumesList where type Rs BookshelvesVolumesList = Volumes- requestClient BookshelvesVolumesList{..}+ type Scopes BookshelvesVolumesList =+ '["https://www.googleapis.com/auth/books"]+ requestClient BookshelvesVolumesList'{..} = go _bvlUserId _bvlShelf _bvlSource _bvlStartIndex _bvlMaxResults _bvlShowPreOrders
gen/Network/Google/Resource/Books/CloudLoading/AddBook.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.CloudLoading.AddBook--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -59,7 +59,7 @@ -- | -- -- /See:/ 'cloudLoadingAddBook' smart constructor.-data CloudLoadingAddBook = CloudLoadingAddBook+data CloudLoadingAddBook = CloudLoadingAddBook' { _clabMimeType :: !(Maybe Text) , _clabUploadClientToken :: !(Maybe Text) , _clabName :: !(Maybe Text)@@ -80,7 +80,7 @@ cloudLoadingAddBook :: CloudLoadingAddBook cloudLoadingAddBook =- CloudLoadingAddBook+ CloudLoadingAddBook' { _clabMimeType = Nothing , _clabUploadClientToken = Nothing , _clabName = Nothing@@ -111,7 +111,9 @@ instance GoogleRequest CloudLoadingAddBook where type Rs CloudLoadingAddBook = BooksCloudLoadingResource- requestClient CloudLoadingAddBook{..}+ type Scopes CloudLoadingAddBook =+ '["https://www.googleapis.com/auth/books"]+ requestClient CloudLoadingAddBook'{..} = go _clabMimeType _clabUploadClientToken _clabName _clabDriveDocumentId (Just AltJSON)
gen/Network/Google/Resource/Books/CloudLoading/DeleteBook.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.CloudLoading.DeleteBook--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -52,7 +52,7 @@ -- | Remove the book and its contents -- -- /See:/ 'cloudLoadingDeleteBook' smart constructor.-newtype CloudLoadingDeleteBook = CloudLoadingDeleteBook+newtype CloudLoadingDeleteBook = CloudLoadingDeleteBook' { _cldbVolumeId :: Text } deriving (Eq,Show,Data,Typeable,Generic) @@ -65,7 +65,7 @@ :: Text -- ^ 'cldbVolumeId' -> CloudLoadingDeleteBook cloudLoadingDeleteBook pCldbVolumeId_ =- CloudLoadingDeleteBook+ CloudLoadingDeleteBook' { _cldbVolumeId = pCldbVolumeId_ } @@ -76,7 +76,9 @@ instance GoogleRequest CloudLoadingDeleteBook where type Rs CloudLoadingDeleteBook = ()- requestClient CloudLoadingDeleteBook{..}+ type Scopes CloudLoadingDeleteBook =+ '["https://www.googleapis.com/auth/books"]+ requestClient CloudLoadingDeleteBook'{..} = go (Just _cldbVolumeId) (Just AltJSON) booksService where go = buildClient
gen/Network/Google/Resource/Books/CloudLoading/UpdateBook.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.CloudLoading.UpdateBook--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -53,7 +53,7 @@ -- | -- -- /See:/ 'cloudLoadingUpdateBook' smart constructor.-newtype CloudLoadingUpdateBook = CloudLoadingUpdateBook+newtype CloudLoadingUpdateBook = CloudLoadingUpdateBook' { _clubPayload :: BooksCloudLoadingResource } deriving (Eq,Show,Data,Typeable,Generic) @@ -66,7 +66,7 @@ :: BooksCloudLoadingResource -- ^ 'clubPayload' -> CloudLoadingUpdateBook cloudLoadingUpdateBook pClubPayload_ =- CloudLoadingUpdateBook+ CloudLoadingUpdateBook' { _clubPayload = pClubPayload_ } @@ -78,7 +78,9 @@ instance GoogleRequest CloudLoadingUpdateBook where type Rs CloudLoadingUpdateBook = BooksCloudLoadingResource- requestClient CloudLoadingUpdateBook{..}+ type Scopes CloudLoadingUpdateBook =+ '["https://www.googleapis.com/auth/books"]+ requestClient CloudLoadingUpdateBook'{..} = go (Just AltJSON) _clubPayload booksService where go = buildClient
gen/Network/Google/Resource/Books/Dictionary/ListOfflineMetadata.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.Dictionary.ListOfflineMetadata--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -52,7 +52,7 @@ -- | Returns a list of offline dictionary metadata available -- -- /See:/ 'dictionaryListOfflineMetadata' smart constructor.-newtype DictionaryListOfflineMetadata = DictionaryListOfflineMetadata+newtype DictionaryListOfflineMetadata = DictionaryListOfflineMetadata' { _dlomCpksver :: Text } deriving (Eq,Show,Data,Typeable,Generic) @@ -65,7 +65,7 @@ :: Text -- ^ 'dlomCpksver' -> DictionaryListOfflineMetadata dictionaryListOfflineMetadata pDlomCpksver_ =- DictionaryListOfflineMetadata+ DictionaryListOfflineMetadata' { _dlomCpksver = pDlomCpksver_ } @@ -77,7 +77,9 @@ instance GoogleRequest DictionaryListOfflineMetadata where type Rs DictionaryListOfflineMetadata = Metadata- requestClient DictionaryListOfflineMetadata{..}+ type Scopes DictionaryListOfflineMetadata =+ '["https://www.googleapis.com/auth/books"]+ requestClient DictionaryListOfflineMetadata'{..} = go (Just _dlomCpksver) (Just AltJSON) booksService where go = buildClient
gen/Network/Google/Resource/Books/Layers/AnnotationData/Get.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.Layers.AnnotationData.Get--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -72,7 +72,7 @@ -- | Gets the annotation data. -- -- /See:/ 'layersAnnotationDataGet' smart constructor.-data LayersAnnotationDataGet = LayersAnnotationDataGet+data LayersAnnotationDataGet = LayersAnnotationDataGet' { _ladgW :: !(Maybe (Textual Int32)) , _ladgScale :: !(Maybe (Textual Int32)) , _ladgLocale :: !(Maybe Text)@@ -115,7 +115,7 @@ -> Text -- ^ 'ladgLayerId' -> LayersAnnotationDataGet layersAnnotationDataGet pLadgContentVersion_ pLadgAnnotationDataId_ pLadgVolumeId_ pLadgLayerId_ =- LayersAnnotationDataGet+ LayersAnnotationDataGet' { _ladgW = Nothing , _ladgScale = Nothing , _ladgLocale = Nothing@@ -189,7 +189,9 @@ instance GoogleRequest LayersAnnotationDataGet where type Rs LayersAnnotationDataGet = AnnotationData- requestClient LayersAnnotationDataGet{..}+ type Scopes LayersAnnotationDataGet =+ '["https://www.googleapis.com/auth/books"]+ requestClient LayersAnnotationDataGet'{..} = go _ladgVolumeId _ladgLayerId _ladgAnnotationDataId (Just _ladgContentVersion) _ladgW
gen/Network/Google/Resource/Books/Layers/AnnotationData/List.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.Layers.AnnotationData.List--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -79,7 +79,7 @@ -- | Gets the annotation data for a volume and layer. -- -- /See:/ 'layersAnnotationDataList' smart constructor.-data LayersAnnotationDataList = LayersAnnotationDataList+data LayersAnnotationDataList = LayersAnnotationDataList' { _ladlW :: !(Maybe (Textual Int32)) , _ladlScale :: !(Maybe (Textual Int32)) , _ladlLocale :: !(Maybe Text)@@ -130,7 +130,7 @@ -> Text -- ^ 'ladlLayerId' -> LayersAnnotationDataList layersAnnotationDataList pLadlContentVersion_ pLadlVolumeId_ pLadlLayerId_ =- LayersAnnotationDataList+ LayersAnnotationDataList' { _ladlW = Nothing , _ladlScale = Nothing , _ladlLocale = Nothing@@ -231,7 +231,9 @@ instance GoogleRequest LayersAnnotationDataList where type Rs LayersAnnotationDataList = AnnotationsData- requestClient LayersAnnotationDataList{..}+ type Scopes LayersAnnotationDataList =+ '["https://www.googleapis.com/auth/books"]+ requestClient LayersAnnotationDataList'{..} = go _ladlVolumeId _ladlLayerId (Just _ladlContentVersion) _ladlW
gen/Network/Google/Resource/Books/Layers/Get.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.Layers.Get--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -58,7 +58,7 @@ -- | Gets the layer summary for a volume. -- -- /See:/ 'layersGet' smart constructor.-data LayersGet = LayersGet+data LayersGet = LayersGet' { _lgContentVersion :: !(Maybe Text) , _lgVolumeId :: !Text , _lgSource :: !(Maybe Text)@@ -81,7 +81,7 @@ -> Text -- ^ 'lgSummaryId' -> LayersGet layersGet pLgVolumeId_ pLgSummaryId_ =- LayersGet+ LayersGet' { _lgContentVersion = Nothing , _lgVolumeId = pLgVolumeId_ , _lgSource = Nothing@@ -110,7 +110,9 @@ instance GoogleRequest LayersGet where type Rs LayersGet = Layersummary- requestClient LayersGet{..}+ type Scopes LayersGet =+ '["https://www.googleapis.com/auth/books"]+ requestClient LayersGet'{..} = go _lgVolumeId _lgSummaryId _lgContentVersion _lgSource (Just AltJSON)
gen/Network/Google/Resource/Books/Layers/List.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.Layers.List--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -61,7 +61,7 @@ -- | List the layer summaries for a volume. -- -- /See:/ 'layersList' smart constructor.-data LayersList = LayersList+data LayersList = LayersList' { _llContentVersion :: !(Maybe Text) , _llVolumeId :: !Text , _llSource :: !(Maybe Text)@@ -86,7 +86,7 @@ :: Text -- ^ 'llVolumeId' -> LayersList layersList pLlVolumeId_ =- LayersList+ LayersList' { _llContentVersion = Nothing , _llVolumeId = pLlVolumeId_ , _llSource = Nothing@@ -122,7 +122,9 @@ instance GoogleRequest LayersList where type Rs LayersList = Layersummaries- requestClient LayersList{..}+ type Scopes LayersList =+ '["https://www.googleapis.com/auth/books"]+ requestClient LayersList'{..} = go _llVolumeId _llContentVersion _llSource _llPageToken _llMaxResults
gen/Network/Google/Resource/Books/Layers/VolumeAnnotations/Get.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.Layers.VolumeAnnotations.Get--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -62,7 +62,7 @@ -- | Gets the volume annotation. -- -- /See:/ 'layersVolumeAnnotationsGet' smart constructor.-data LayersVolumeAnnotationsGet = LayersVolumeAnnotationsGet+data LayersVolumeAnnotationsGet = LayersVolumeAnnotationsGet' { _lvagLocale :: !(Maybe Text) , _lvagAnnotationId :: !Text , _lvagVolumeId :: !Text@@ -89,7 +89,7 @@ -> Text -- ^ 'lvagLayerId' -> LayersVolumeAnnotationsGet layersVolumeAnnotationsGet pLvagAnnotationId_ pLvagVolumeId_ pLvagLayerId_ =- LayersVolumeAnnotationsGet+ LayersVolumeAnnotationsGet' { _lvagLocale = Nothing , _lvagAnnotationId = pLvagAnnotationId_ , _lvagVolumeId = pLvagVolumeId_@@ -127,7 +127,9 @@ instance GoogleRequest LayersVolumeAnnotationsGet where type Rs LayersVolumeAnnotationsGet = Volumeannotation- requestClient LayersVolumeAnnotationsGet{..}+ type Scopes LayersVolumeAnnotationsGet =+ '["https://www.googleapis.com/auth/books"]+ requestClient LayersVolumeAnnotationsGet'{..} = go _lvagVolumeId _lvagLayerId _lvagAnnotationId _lvagLocale _lvagSource
gen/Network/Google/Resource/Books/Layers/VolumeAnnotations/List.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.Layers.VolumeAnnotations.List--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -82,7 +82,7 @@ -- | Gets the volume annotations for a volume and layer. -- -- /See:/ 'layersVolumeAnnotationsList' smart constructor.-data LayersVolumeAnnotationsList = LayersVolumeAnnotationsList+data LayersVolumeAnnotationsList = LayersVolumeAnnotationsList' { _lvalStartOffSet :: !(Maybe Text) , _lvalLocale :: !(Maybe Text) , _lvalContentVersion :: !Text@@ -139,7 +139,7 @@ -> Text -- ^ 'lvalLayerId' -> LayersVolumeAnnotationsList layersVolumeAnnotationsList pLvalContentVersion_ pLvalVolumeId_ pLvalLayerId_ =- LayersVolumeAnnotationsList+ LayersVolumeAnnotationsList' { _lvalStartOffSet = Nothing , _lvalLocale = Nothing , _lvalContentVersion = pLvalContentVersion_@@ -252,7 +252,9 @@ where type Rs LayersVolumeAnnotationsList = Volumeannotations- requestClient LayersVolumeAnnotationsList{..}+ type Scopes LayersVolumeAnnotationsList =+ '["https://www.googleapis.com/auth/books"]+ requestClient LayersVolumeAnnotationsList'{..} = go _lvalVolumeId _lvalLayerId (Just _lvalContentVersion) _lvalStartOffSet
gen/Network/Google/Resource/Books/MyConfig/GetUserSettings.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.MyConfig.GetUserSettings--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -50,18 +50,20 @@ -- -- /See:/ 'myConfigGetUserSettings' smart constructor. data MyConfigGetUserSettings =- MyConfigGetUserSettings+ MyConfigGetUserSettings' deriving (Eq,Show,Data,Typeable,Generic) -- | Creates a value of 'MyConfigGetUserSettings' with the minimum fields required to make a request. -- myConfigGetUserSettings :: MyConfigGetUserSettings-myConfigGetUserSettings = MyConfigGetUserSettings+myConfigGetUserSettings = MyConfigGetUserSettings' instance GoogleRequest MyConfigGetUserSettings where type Rs MyConfigGetUserSettings = UserSettings- requestClient MyConfigGetUserSettings{}+ type Scopes MyConfigGetUserSettings =+ '["https://www.googleapis.com/auth/books"]+ requestClient MyConfigGetUserSettings'{} = go (Just AltJSON) booksService where go = buildClient
gen/Network/Google/Resource/Books/MyConfig/ReleaseDownloadAccess.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.MyConfig.ReleaseDownloadAccess--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -59,7 +59,7 @@ -- | Release downloaded content access restriction. -- -- /See:/ 'myConfigReleaseDownloadAccess' smart constructor.-data MyConfigReleaseDownloadAccess = MyConfigReleaseDownloadAccess+data MyConfigReleaseDownloadAccess = MyConfigReleaseDownloadAccess' { _mcrdaCpksver :: !Text , _mcrdaLocale :: !(Maybe Text) , _mcrdaVolumeIds :: ![Text]@@ -82,7 +82,7 @@ -> [Text] -- ^ 'mcrdaVolumeIds' -> MyConfigReleaseDownloadAccess myConfigReleaseDownloadAccess pMcrdaCpksver_ pMcrdaVolumeIds_ =- MyConfigReleaseDownloadAccess+ MyConfigReleaseDownloadAccess' { _mcrdaCpksver = pMcrdaCpksver_ , _mcrdaLocale = Nothing , _mcrdaVolumeIds = _Coerce # pMcrdaVolumeIds_@@ -115,7 +115,9 @@ where type Rs MyConfigReleaseDownloadAccess = DownloadAccesses- requestClient MyConfigReleaseDownloadAccess{..}+ type Scopes MyConfigReleaseDownloadAccess =+ '["https://www.googleapis.com/auth/books"]+ requestClient MyConfigReleaseDownloadAccess'{..} = go _mcrdaVolumeIds (Just _mcrdaCpksver) _mcrdaLocale _mcrdaSource
gen/Network/Google/Resource/Books/MyConfig/RequestAccess.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.MyConfig.RequestAccess--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -65,7 +65,7 @@ -- | Request concurrent and download access restrictions. -- -- /See:/ 'myConfigRequestAccess' smart constructor.-data MyConfigRequestAccess = MyConfigRequestAccess+data MyConfigRequestAccess = MyConfigRequestAccess' { _mcraCpksver :: !Text , _mcraLocale :: !(Maybe Text) , _mcraLicenseTypes :: !(Maybe MyConfigRequestAccessLicenseTypes)@@ -96,7 +96,7 @@ -> Text -- ^ 'mcraNonce' -> MyConfigRequestAccess myConfigRequestAccess pMcraCpksver_ pMcraVolumeId_ pMcraSource_ pMcraNonce_ =- MyConfigRequestAccess+ MyConfigRequestAccess' { _mcraCpksver = pMcraCpksver_ , _mcraLocale = Nothing , _mcraLicenseTypes = Nothing@@ -139,7 +139,9 @@ instance GoogleRequest MyConfigRequestAccess where type Rs MyConfigRequestAccess = RequestAccess- requestClient MyConfigRequestAccess{..}+ type Scopes MyConfigRequestAccess =+ '["https://www.googleapis.com/auth/books"]+ requestClient MyConfigRequestAccess'{..} = go (Just _mcraSource) (Just _mcraVolumeId) (Just _mcraNonce) (Just _mcraCpksver)
gen/Network/Google/Resource/Books/MyConfig/SyncVolumeLicenses.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.MyConfig.SyncVolumeLicenses--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -36,6 +36,7 @@ -- * Request Lenses , mcsvlCpksver , mcsvlLocale+ , mcsvlIncludeNonComicsSeries , mcsvlVolumeIds , mcsvlFeatures , mcsvlSource@@ -57,25 +58,27 @@ QueryParam "nonce" Text :> QueryParam "cpksver" Text :> QueryParam "locale" Text :>- QueryParams "volumeIds" Text :>- QueryParams "features"- MyConfigSyncVolumeLicensesFeatures- :>- QueryParam "showPreorders" Bool :>- QueryParam "alt" AltJSON :> Post '[JSON] Volumes+ QueryParam "includeNonComicsSeries" Bool :>+ QueryParams "volumeIds" Text :>+ QueryParams "features"+ MyConfigSyncVolumeLicensesFeatures+ :>+ QueryParam "showPreorders" Bool :>+ QueryParam "alt" AltJSON :> Post '[JSON] Volumes -- | Request downloaded content access for specified volumes on the My eBooks -- shelf. -- -- /See:/ 'myConfigSyncVolumeLicenses' smart constructor.-data MyConfigSyncVolumeLicenses = MyConfigSyncVolumeLicenses- { _mcsvlCpksver :: !Text- , _mcsvlLocale :: !(Maybe Text)- , _mcsvlVolumeIds :: !(Maybe [Text])- , _mcsvlFeatures :: !(Maybe [MyConfigSyncVolumeLicensesFeatures])- , _mcsvlSource :: !Text- , _mcsvlShowPreOrders :: !(Maybe Bool)- , _mcsvlNonce :: !Text+data MyConfigSyncVolumeLicenses = MyConfigSyncVolumeLicenses'+ { _mcsvlCpksver :: !Text+ , _mcsvlLocale :: !(Maybe Text)+ , _mcsvlIncludeNonComicsSeries :: !(Maybe Bool)+ , _mcsvlVolumeIds :: !(Maybe [Text])+ , _mcsvlFeatures :: !(Maybe [MyConfigSyncVolumeLicensesFeatures])+ , _mcsvlSource :: !Text+ , _mcsvlShowPreOrders :: !(Maybe Bool)+ , _mcsvlNonce :: !Text } deriving (Eq,Show,Data,Typeable,Generic) -- | Creates a value of 'MyConfigSyncVolumeLicenses' with the minimum fields required to make a request.@@ -86,6 +89,8 @@ -- -- * 'mcsvlLocale' --+-- * 'mcsvlIncludeNonComicsSeries'+-- -- * 'mcsvlVolumeIds' -- -- * 'mcsvlFeatures'@@ -101,9 +106,10 @@ -> Text -- ^ 'mcsvlNonce' -> MyConfigSyncVolumeLicenses myConfigSyncVolumeLicenses pMcsvlCpksver_ pMcsvlSource_ pMcsvlNonce_ =- MyConfigSyncVolumeLicenses+ MyConfigSyncVolumeLicenses' { _mcsvlCpksver = pMcsvlCpksver_ , _mcsvlLocale = Nothing+ , _mcsvlIncludeNonComicsSeries = Nothing , _mcsvlVolumeIds = Nothing , _mcsvlFeatures = Nothing , _mcsvlSource = pMcsvlSource_@@ -121,6 +127,12 @@ mcsvlLocale = lens _mcsvlLocale (\ s a -> s{_mcsvlLocale = a}) +-- | Set to true to include non-comics series. Defaults to false.+mcsvlIncludeNonComicsSeries :: Lens' MyConfigSyncVolumeLicenses (Maybe Bool)+mcsvlIncludeNonComicsSeries+ = lens _mcsvlIncludeNonComicsSeries+ (\ s a -> s{_mcsvlIncludeNonComicsSeries = a})+ -- | The volume(s) to request download restrictions for. mcsvlVolumeIds :: Lens' MyConfigSyncVolumeLicenses [Text] mcsvlVolumeIds@@ -156,10 +168,13 @@ instance GoogleRequest MyConfigSyncVolumeLicenses where type Rs MyConfigSyncVolumeLicenses = Volumes- requestClient MyConfigSyncVolumeLicenses{..}+ type Scopes MyConfigSyncVolumeLicenses =+ '["https://www.googleapis.com/auth/books"]+ requestClient MyConfigSyncVolumeLicenses'{..} = go (Just _mcsvlSource) (Just _mcsvlNonce) (Just _mcsvlCpksver) _mcsvlLocale+ _mcsvlIncludeNonComicsSeries (_mcsvlVolumeIds ^. _Default) (_mcsvlFeatures ^. _Default) _mcsvlShowPreOrders
gen/Network/Google/Resource/Books/MyConfig/UpdateUserSettings.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.MyConfig.UpdateUserSettings--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -57,7 +57,7 @@ -- sub-objects will retain the existing value. -- -- /See:/ 'myConfigUpdateUserSettings' smart constructor.-newtype MyConfigUpdateUserSettings = MyConfigUpdateUserSettings+newtype MyConfigUpdateUserSettings = MyConfigUpdateUserSettings' { _mcuusPayload :: UserSettings } deriving (Eq,Show,Data,Typeable,Generic) @@ -70,7 +70,7 @@ :: UserSettings -- ^ 'mcuusPayload' -> MyConfigUpdateUserSettings myConfigUpdateUserSettings pMcuusPayload_ =- MyConfigUpdateUserSettings+ MyConfigUpdateUserSettings' { _mcuusPayload = pMcuusPayload_ } @@ -82,7 +82,9 @@ instance GoogleRequest MyConfigUpdateUserSettings where type Rs MyConfigUpdateUserSettings = UserSettings- requestClient MyConfigUpdateUserSettings{..}+ type Scopes MyConfigUpdateUserSettings =+ '["https://www.googleapis.com/auth/books"]+ requestClient MyConfigUpdateUserSettings'{..} = go (Just AltJSON) _mcuusPayload booksService where go = buildClient
gen/Network/Google/Resource/Books/MyLibrary/Annotations/Delete.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.MyLibrary.Annotations.Delete--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -54,7 +54,7 @@ -- | Deletes an annotation. -- -- /See:/ 'myLibraryAnnotationsDelete' smart constructor.-data MyLibraryAnnotationsDelete = MyLibraryAnnotationsDelete+data MyLibraryAnnotationsDelete = MyLibraryAnnotationsDelete' { _mladAnnotationId :: !Text , _mladSource :: !(Maybe Text) } deriving (Eq,Show,Data,Typeable,Generic)@@ -70,7 +70,7 @@ :: Text -- ^ 'mladAnnotationId' -> MyLibraryAnnotationsDelete myLibraryAnnotationsDelete pMladAnnotationId_ =- MyLibraryAnnotationsDelete+ MyLibraryAnnotationsDelete' { _mladAnnotationId = pMladAnnotationId_ , _mladSource = Nothing }@@ -89,7 +89,9 @@ instance GoogleRequest MyLibraryAnnotationsDelete where type Rs MyLibraryAnnotationsDelete = ()- requestClient MyLibraryAnnotationsDelete{..}+ type Scopes MyLibraryAnnotationsDelete =+ '["https://www.googleapis.com/auth/books"]+ requestClient MyLibraryAnnotationsDelete'{..} = go _mladAnnotationId _mladSource (Just AltJSON) booksService where go
gen/Network/Google/Resource/Books/MyLibrary/Annotations/Insert.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.MyLibrary.Annotations.Insert--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -58,7 +58,7 @@ -- | Inserts a new annotation. -- -- /See:/ 'myLibraryAnnotationsInsert' smart constructor.-data MyLibraryAnnotationsInsert = MyLibraryAnnotationsInsert+data MyLibraryAnnotationsInsert = MyLibraryAnnotationsInsert' { _mlaiCountry :: !(Maybe Text) , _mlaiPayload :: !Annotation , _mlaiShowOnlySummaryInResponse :: !(Maybe Bool)@@ -80,7 +80,7 @@ :: Annotation -- ^ 'mlaiPayload' -> MyLibraryAnnotationsInsert myLibraryAnnotationsInsert pMlaiPayload_ =- MyLibraryAnnotationsInsert+ MyLibraryAnnotationsInsert' { _mlaiCountry = Nothing , _mlaiPayload = pMlaiPayload_ , _mlaiShowOnlySummaryInResponse = Nothing@@ -112,7 +112,9 @@ instance GoogleRequest MyLibraryAnnotationsInsert where type Rs MyLibraryAnnotationsInsert = Annotation- requestClient MyLibraryAnnotationsInsert{..}+ type Scopes MyLibraryAnnotationsInsert =+ '["https://www.googleapis.com/auth/books"]+ requestClient MyLibraryAnnotationsInsert'{..} = go _mlaiCountry _mlaiShowOnlySummaryInResponse _mlaiSource (Just AltJSON)
gen/Network/Google/Resource/Books/MyLibrary/Annotations/List.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.MyLibrary.Annotations.List--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -71,7 +71,7 @@ -- | Retrieves a list of annotations, possibly filtered. -- -- /See:/ 'myLibraryAnnotationsList' smart constructor.-data MyLibraryAnnotationsList = MyLibraryAnnotationsList+data MyLibraryAnnotationsList = MyLibraryAnnotationsList' { _mlalContentVersion :: !(Maybe Text) , _mlalShowDeleted :: !(Maybe Bool) , _mlalUpdatedMax :: !(Maybe Text)@@ -110,7 +110,7 @@ myLibraryAnnotationsList :: MyLibraryAnnotationsList myLibraryAnnotationsList =- MyLibraryAnnotationsList+ MyLibraryAnnotationsList' { _mlalContentVersion = Nothing , _mlalShowDeleted = Nothing , _mlalUpdatedMax = Nothing@@ -187,7 +187,9 @@ instance GoogleRequest MyLibraryAnnotationsList where type Rs MyLibraryAnnotationsList = Annotations- requestClient MyLibraryAnnotationsList{..}+ type Scopes MyLibraryAnnotationsList =+ '["https://www.googleapis.com/auth/books"]+ requestClient MyLibraryAnnotationsList'{..} = go _mlalContentVersion _mlalShowDeleted _mlalUpdatedMax _mlalUpdatedMin
gen/Network/Google/Resource/Books/MyLibrary/Annotations/Summary.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.MyLibrary.Annotations.Summary--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -56,7 +56,7 @@ -- | Gets the summary of specified layers. -- -- /See:/ 'myLibraryAnnotationsSummary' smart constructor.-data MyLibraryAnnotationsSummary = MyLibraryAnnotationsSummary+data MyLibraryAnnotationsSummary = MyLibraryAnnotationsSummary' { _mlasLayerIds :: ![Text] , _mlasVolumeId :: !Text } deriving (Eq,Show,Data,Typeable,Generic)@@ -73,7 +73,7 @@ -> Text -- ^ 'mlasVolumeId' -> MyLibraryAnnotationsSummary myLibraryAnnotationsSummary pMlasLayerIds_ pMlasVolumeId_ =- MyLibraryAnnotationsSummary+ MyLibraryAnnotationsSummary' { _mlasLayerIds = _Coerce # pMlasLayerIds_ , _mlasVolumeId = pMlasVolumeId_ }@@ -93,7 +93,9 @@ where type Rs MyLibraryAnnotationsSummary = AnnotationsSummary- requestClient MyLibraryAnnotationsSummary{..}+ type Scopes MyLibraryAnnotationsSummary =+ '["https://www.googleapis.com/auth/books"]+ requestClient MyLibraryAnnotationsSummary'{..} = go _mlasLayerIds (Just _mlasVolumeId) (Just AltJSON) booksService
gen/Network/Google/Resource/Books/MyLibrary/Annotations/Update.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.MyLibrary.Annotations.Update--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -56,7 +56,7 @@ -- | Updates an existing annotation. -- -- /See:/ 'myLibraryAnnotationsUpdate' smart constructor.-data MyLibraryAnnotationsUpdate = MyLibraryAnnotationsUpdate+data MyLibraryAnnotationsUpdate = MyLibraryAnnotationsUpdate' { _mlauPayload :: !Annotation , _mlauAnnotationId :: !Text , _mlauSource :: !(Maybe Text)@@ -76,7 +76,7 @@ -> Text -- ^ 'mlauAnnotationId' -> MyLibraryAnnotationsUpdate myLibraryAnnotationsUpdate pMlauPayload_ pMlauAnnotationId_ =- MyLibraryAnnotationsUpdate+ MyLibraryAnnotationsUpdate' { _mlauPayload = pMlauPayload_ , _mlauAnnotationId = pMlauAnnotationId_ , _mlauSource = Nothing@@ -101,7 +101,9 @@ instance GoogleRequest MyLibraryAnnotationsUpdate where type Rs MyLibraryAnnotationsUpdate = Annotation- requestClient MyLibraryAnnotationsUpdate{..}+ type Scopes MyLibraryAnnotationsUpdate =+ '["https://www.googleapis.com/auth/books"]+ requestClient MyLibraryAnnotationsUpdate'{..} = go _mlauAnnotationId _mlauSource (Just AltJSON) _mlauPayload booksService
gen/Network/Google/Resource/Books/MyLibrary/Bookshelves/AddVolume.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.MyLibrary.Bookshelves.AddVolume--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -61,7 +61,7 @@ -- | Adds a volume to a bookshelf. -- -- /See:/ 'myLibraryBookshelvesAddVolume' smart constructor.-data MyLibraryBookshelvesAddVolume = MyLibraryBookshelvesAddVolume+data MyLibraryBookshelvesAddVolume = MyLibraryBookshelvesAddVolume' { _mlbavReason :: !(Maybe MyLibraryBookshelvesAddVolumeReason) , _mlbavShelf :: !Text , _mlbavVolumeId :: !Text@@ -84,7 +84,7 @@ -> Text -- ^ 'mlbavVolumeId' -> MyLibraryBookshelvesAddVolume myLibraryBookshelvesAddVolume pMlbavShelf_ pMlbavVolumeId_ =- MyLibraryBookshelvesAddVolume+ MyLibraryBookshelvesAddVolume' { _mlbavReason = Nothing , _mlbavShelf = pMlbavShelf_ , _mlbavVolumeId = pMlbavVolumeId_@@ -115,7 +115,9 @@ instance GoogleRequest MyLibraryBookshelvesAddVolume where type Rs MyLibraryBookshelvesAddVolume = ()- requestClient MyLibraryBookshelvesAddVolume{..}+ type Scopes MyLibraryBookshelvesAddVolume =+ '["https://www.googleapis.com/auth/books"]+ requestClient MyLibraryBookshelvesAddVolume'{..} = go _mlbavShelf (Just _mlbavVolumeId) _mlbavReason _mlbavSource (Just AltJSON)
gen/Network/Google/Resource/Books/MyLibrary/Bookshelves/ClearVolumes.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.MyLibrary.Bookshelves.ClearVolumes--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -55,7 +55,7 @@ -- | Clears all volumes from a bookshelf. -- -- /See:/ 'myLibraryBookshelvesClearVolumes' smart constructor.-data MyLibraryBookshelvesClearVolumes = MyLibraryBookshelvesClearVolumes+data MyLibraryBookshelvesClearVolumes = MyLibraryBookshelvesClearVolumes' { _mlbcvShelf :: !Text , _mlbcvSource :: !(Maybe Text) } deriving (Eq,Show,Data,Typeable,Generic)@@ -71,7 +71,7 @@ :: Text -- ^ 'mlbcvShelf' -> MyLibraryBookshelvesClearVolumes myLibraryBookshelvesClearVolumes pMlbcvShelf_ =- MyLibraryBookshelvesClearVolumes+ MyLibraryBookshelvesClearVolumes' { _mlbcvShelf = pMlbcvShelf_ , _mlbcvSource = Nothing }@@ -89,7 +89,9 @@ instance GoogleRequest MyLibraryBookshelvesClearVolumes where type Rs MyLibraryBookshelvesClearVolumes = ()- requestClient MyLibraryBookshelvesClearVolumes{..}+ type Scopes MyLibraryBookshelvesClearVolumes =+ '["https://www.googleapis.com/auth/books"]+ requestClient MyLibraryBookshelvesClearVolumes'{..} = go _mlbcvShelf _mlbcvSource (Just AltJSON) booksService where go
gen/Network/Google/Resource/Books/MyLibrary/Bookshelves/Get.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.MyLibrary.Bookshelves.Get--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -56,7 +56,7 @@ -- authenticated user. -- -- /See:/ 'myLibraryBookshelvesGet' smart constructor.-data MyLibraryBookshelvesGet = MyLibraryBookshelvesGet+data MyLibraryBookshelvesGet = MyLibraryBookshelvesGet' { _mlbgShelf :: !Text , _mlbgSource :: !(Maybe Text) } deriving (Eq,Show,Data,Typeable,Generic)@@ -72,7 +72,7 @@ :: Text -- ^ 'mlbgShelf' -> MyLibraryBookshelvesGet myLibraryBookshelvesGet pMlbgShelf_ =- MyLibraryBookshelvesGet+ MyLibraryBookshelvesGet' { _mlbgShelf = pMlbgShelf_ , _mlbgSource = Nothing }@@ -89,7 +89,9 @@ instance GoogleRequest MyLibraryBookshelvesGet where type Rs MyLibraryBookshelvesGet = Bookshelf- requestClient MyLibraryBookshelvesGet{..}+ type Scopes MyLibraryBookshelvesGet =+ '["https://www.googleapis.com/auth/books"]+ requestClient MyLibraryBookshelvesGet'{..} = go _mlbgShelf _mlbgSource (Just AltJSON) booksService where go
gen/Network/Google/Resource/Books/MyLibrary/Bookshelves/List.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.MyLibrary.Bookshelves.List--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -52,7 +52,7 @@ -- | Retrieves a list of bookshelves belonging to the authenticated user. -- -- /See:/ 'myLibraryBookshelvesList' smart constructor.-newtype MyLibraryBookshelvesList = MyLibraryBookshelvesList+newtype MyLibraryBookshelvesList = MyLibraryBookshelvesList' { _mlblSource :: Maybe Text } deriving (Eq,Show,Data,Typeable,Generic) @@ -64,7 +64,7 @@ myLibraryBookshelvesList :: MyLibraryBookshelvesList myLibraryBookshelvesList =- MyLibraryBookshelvesList+ MyLibraryBookshelvesList' { _mlblSource = Nothing } @@ -75,7 +75,9 @@ instance GoogleRequest MyLibraryBookshelvesList where type Rs MyLibraryBookshelvesList = Bookshelves- requestClient MyLibraryBookshelvesList{..}+ type Scopes MyLibraryBookshelvesList =+ '["https://www.googleapis.com/auth/books"]+ requestClient MyLibraryBookshelvesList'{..} = go _mlblSource (Just AltJSON) booksService where go = buildClient
gen/Network/Google/Resource/Books/MyLibrary/Bookshelves/MoveVolume.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.MyLibrary.Bookshelves.MoveVolume--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -59,7 +59,7 @@ -- | Moves a volume within a bookshelf. -- -- /See:/ 'myLibraryBookshelvesMoveVolume' smart constructor.-data MyLibraryBookshelvesMoveVolume = MyLibraryBookshelvesMoveVolume+data MyLibraryBookshelvesMoveVolume = MyLibraryBookshelvesMoveVolume' { _mlbmvShelf :: !Text , _mlbmvVolumeId :: !Text , _mlbmvSource :: !(Maybe Text)@@ -83,7 +83,7 @@ -> Int32 -- ^ 'mlbmvVolumePosition' -> MyLibraryBookshelvesMoveVolume myLibraryBookshelvesMoveVolume pMlbmvShelf_ pMlbmvVolumeId_ pMlbmvVolumePosition_ =- MyLibraryBookshelvesMoveVolume+ MyLibraryBookshelvesMoveVolume' { _mlbmvShelf = pMlbmvShelf_ , _mlbmvVolumeId = pMlbmvVolumeId_ , _mlbmvSource = Nothing@@ -117,7 +117,9 @@ instance GoogleRequest MyLibraryBookshelvesMoveVolume where type Rs MyLibraryBookshelvesMoveVolume = ()- requestClient MyLibraryBookshelvesMoveVolume{..}+ type Scopes MyLibraryBookshelvesMoveVolume =+ '["https://www.googleapis.com/auth/books"]+ requestClient MyLibraryBookshelvesMoveVolume'{..} = go _mlbmvShelf (Just _mlbmvVolumeId) (Just _mlbmvVolumePosition) _mlbmvSource
gen/Network/Google/Resource/Books/MyLibrary/Bookshelves/RemoveVolume.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.MyLibrary.Bookshelves.RemoveVolume--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -61,7 +61,7 @@ -- | Removes a volume from a bookshelf. -- -- /See:/ 'myLibraryBookshelvesRemoveVolume' smart constructor.-data MyLibraryBookshelvesRemoveVolume = MyLibraryBookshelvesRemoveVolume+data MyLibraryBookshelvesRemoveVolume = MyLibraryBookshelvesRemoveVolume' { _mlbrvReason :: !(Maybe MyLibraryBookshelvesRemoveVolumeReason) , _mlbrvShelf :: !Text , _mlbrvVolumeId :: !Text@@ -84,7 +84,7 @@ -> Text -- ^ 'mlbrvVolumeId' -> MyLibraryBookshelvesRemoveVolume myLibraryBookshelvesRemoveVolume pMlbrvShelf_ pMlbrvVolumeId_ =- MyLibraryBookshelvesRemoveVolume+ MyLibraryBookshelvesRemoveVolume' { _mlbrvReason = Nothing , _mlbrvShelf = pMlbrvShelf_ , _mlbrvVolumeId = pMlbrvVolumeId_@@ -115,7 +115,9 @@ instance GoogleRequest MyLibraryBookshelvesRemoveVolume where type Rs MyLibraryBookshelvesRemoveVolume = ()- requestClient MyLibraryBookshelvesRemoveVolume{..}+ type Scopes MyLibraryBookshelvesRemoveVolume =+ '["https://www.googleapis.com/auth/books"]+ requestClient MyLibraryBookshelvesRemoveVolume'{..} = go _mlbrvShelf (Just _mlbrvVolumeId) _mlbrvReason _mlbrvSource (Just AltJSON)
gen/Network/Google/Resource/Books/MyLibrary/Bookshelves/Volumes/List.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.MyLibrary.Bookshelves.Volumes.List--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -69,7 +69,7 @@ -- | Gets volume information for volumes on a bookshelf. -- -- /See:/ 'myLibraryBookshelvesVolumesList' smart constructor.-data MyLibraryBookshelvesVolumesList = MyLibraryBookshelvesVolumesList+data MyLibraryBookshelvesVolumesList = MyLibraryBookshelvesVolumesList' { _mlbvlCountry :: !(Maybe Text) , _mlbvlQ :: !(Maybe Text) , _mlbvlShelf :: !Text@@ -103,7 +103,7 @@ :: Text -- ^ 'mlbvlShelf' -> MyLibraryBookshelvesVolumesList myLibraryBookshelvesVolumesList pMlbvlShelf_ =- MyLibraryBookshelvesVolumesList+ MyLibraryBookshelvesVolumesList' { _mlbvlCountry = Nothing , _mlbvlQ = Nothing , _mlbvlShelf = pMlbvlShelf_@@ -162,7 +162,9 @@ instance GoogleRequest MyLibraryBookshelvesVolumesList where type Rs MyLibraryBookshelvesVolumesList = Volumes- requestClient MyLibraryBookshelvesVolumesList{..}+ type Scopes MyLibraryBookshelvesVolumesList =+ '["https://www.googleapis.com/auth/books"]+ requestClient MyLibraryBookshelvesVolumesList'{..} = go _mlbvlShelf _mlbvlCountry _mlbvlQ _mlbvlSource _mlbvlProjection _mlbvlStartIndex
gen/Network/Google/Resource/Books/MyLibrary/ReadingPositions/Get.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.MyLibrary.ReadingPositions.Get--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -57,7 +57,7 @@ -- | Retrieves my reading position information for a volume. -- -- /See:/ 'myLibraryReadingPositionsGet' smart constructor.-data MyLibraryReadingPositionsGet = MyLibraryReadingPositionsGet+data MyLibraryReadingPositionsGet = MyLibraryReadingPositionsGet' { _mlrpgContentVersion :: !(Maybe Text) , _mlrpgVolumeId :: !Text , _mlrpgSource :: !(Maybe Text)@@ -76,7 +76,7 @@ :: Text -- ^ 'mlrpgVolumeId' -> MyLibraryReadingPositionsGet myLibraryReadingPositionsGet pMlrpgVolumeId_ =- MyLibraryReadingPositionsGet+ MyLibraryReadingPositionsGet' { _mlrpgContentVersion = Nothing , _mlrpgVolumeId = pMlrpgVolumeId_ , _mlrpgSource = Nothing@@ -103,7 +103,9 @@ where type Rs MyLibraryReadingPositionsGet = ReadingPosition- requestClient MyLibraryReadingPositionsGet{..}+ type Scopes MyLibraryReadingPositionsGet =+ '["https://www.googleapis.com/auth/books"]+ requestClient MyLibraryReadingPositionsGet'{..} = go _mlrpgVolumeId _mlrpgContentVersion _mlrpgSource (Just AltJSON) booksService
gen/Network/Google/Resource/Books/MyLibrary/ReadingPositions/SetPosition.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.MyLibrary.ReadingPositions.SetPosition--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -67,7 +67,7 @@ -- | Sets my reading position information for a volume. -- -- /See:/ 'myLibraryReadingPositionsSetPosition' smart constructor.-data MyLibraryReadingPositionsSetPosition = MyLibraryReadingPositionsSetPosition+data MyLibraryReadingPositionsSetPosition = MyLibraryReadingPositionsSetPosition' { _mlrpspDeviceCookie :: !(Maybe Text) , _mlrpspContentVersion :: !(Maybe Text) , _mlrpspAction :: !(Maybe MyLibraryReadingPositionsSetPositionAction)@@ -100,7 +100,7 @@ -> Text -- ^ 'mlrpspPosition' -> MyLibraryReadingPositionsSetPosition myLibraryReadingPositionsSetPosition pMlrpspVolumeId_ pMlrpspTimestamp_ pMlrpspPosition_ =- MyLibraryReadingPositionsSetPosition+ MyLibraryReadingPositionsSetPosition' { _mlrpspDeviceCookie = Nothing , _mlrpspContentVersion = Nothing , _mlrpspAction = Nothing@@ -153,8 +153,10 @@ instance GoogleRequest MyLibraryReadingPositionsSetPosition where type Rs MyLibraryReadingPositionsSetPosition = ()+ type Scopes MyLibraryReadingPositionsSetPosition =+ '["https://www.googleapis.com/auth/books"] requestClient- MyLibraryReadingPositionsSetPosition{..}+ MyLibraryReadingPositionsSetPosition'{..} = go _mlrpspVolumeId (Just _mlrpspTimestamp) (Just _mlrpspPosition) _mlrpspDeviceCookie
gen/Network/Google/Resource/Books/Notification/Get.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.Notification.Get--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -56,7 +56,7 @@ -- | Returns notification details for a given notification id. -- -- /See:/ 'notificationGet' smart constructor.-data NotificationGet = NotificationGet+data NotificationGet = NotificationGet' { _ngLocale :: !(Maybe Text) , _ngNotificationId :: !Text , _ngSource :: !(Maybe Text)@@ -75,7 +75,7 @@ :: Text -- ^ 'ngNotificationId' -> NotificationGet notificationGet pNgNotificationId_ =- NotificationGet+ NotificationGet' { _ngLocale = Nothing , _ngNotificationId = pNgNotificationId_ , _ngSource = Nothing@@ -98,7 +98,9 @@ instance GoogleRequest NotificationGet where type Rs NotificationGet = Notification- requestClient NotificationGet{..}+ type Scopes NotificationGet =+ '["https://www.googleapis.com/auth/books"]+ requestClient NotificationGet'{..} = go (Just _ngNotificationId) _ngLocale _ngSource (Just AltJSON) booksService
gen/Network/Google/Resource/Books/Onboarding/ListCategories.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.Onboarding.ListCategories--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -52,7 +52,7 @@ -- | List categories for onboarding experience. -- -- /See:/ 'onboardingListCategories' smart constructor.-newtype OnboardingListCategories = OnboardingListCategories+newtype OnboardingListCategories = OnboardingListCategories' { _olcLocale :: Maybe Text } deriving (Eq,Show,Data,Typeable,Generic) @@ -64,7 +64,7 @@ onboardingListCategories :: OnboardingListCategories onboardingListCategories =- OnboardingListCategories+ OnboardingListCategories' { _olcLocale = Nothing } @@ -76,7 +76,9 @@ instance GoogleRequest OnboardingListCategories where type Rs OnboardingListCategories = Category- requestClient OnboardingListCategories{..}+ type Scopes OnboardingListCategories =+ '["https://www.googleapis.com/auth/books"]+ requestClient OnboardingListCategories'{..} = go _olcLocale (Just AltJSON) booksService where go = buildClient
gen/Network/Google/Resource/Books/Onboarding/ListCategoryVolumes.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.Onboarding.ListCategoryVolumes--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -62,7 +62,7 @@ -- | List available volumes under categories for onboarding experience. -- -- /See:/ 'onboardingListCategoryVolumes' smart constructor.-data OnboardingListCategoryVolumes = OnboardingListCategoryVolumes+data OnboardingListCategoryVolumes = OnboardingListCategoryVolumes' { _olcvLocale :: !(Maybe Text) , _olcvMaxAllowedMaturityRating :: !(Maybe OnboardingListCategoryVolumesMaxAllowedMaturityRating) , _olcvCategoryId :: !(Maybe [Text])@@ -86,7 +86,7 @@ onboardingListCategoryVolumes :: OnboardingListCategoryVolumes onboardingListCategoryVolumes =- OnboardingListCategoryVolumes+ OnboardingListCategoryVolumes' { _olcvLocale = Nothing , _olcvMaxAllowedMaturityRating = Nothing , _olcvCategoryId = Nothing@@ -130,7 +130,9 @@ instance GoogleRequest OnboardingListCategoryVolumes where type Rs OnboardingListCategoryVolumes = Volume2- requestClient OnboardingListCategoryVolumes{..}+ type Scopes OnboardingListCategoryVolumes =+ '["https://www.googleapis.com/auth/books"]+ requestClient OnboardingListCategoryVolumes'{..} = go _olcvLocale _olcvMaxAllowedMaturityRating (_olcvCategoryId ^. _Default) _olcvPageToken
gen/Network/Google/Resource/Books/Personalizedstream/Get.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.Personalizedstream.Get--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -59,7 +59,7 @@ -- | Returns a stream of personalized book clusters -- -- /See:/ 'personalizedstreamGet' smart constructor.-data PersonalizedstreamGet = PersonalizedstreamGet+data PersonalizedstreamGet = PersonalizedstreamGet' { _pgLocale :: !(Maybe Text) , _pgMaxAllowedMaturityRating :: !(Maybe PersonalizedstreamGetMaxAllowedMaturityRating) , _pgSource :: !(Maybe Text)@@ -77,7 +77,7 @@ personalizedstreamGet :: PersonalizedstreamGet personalizedstreamGet =- PersonalizedstreamGet+ PersonalizedstreamGet' { _pgLocale = Nothing , _pgMaxAllowedMaturityRating = Nothing , _pgSource = Nothing@@ -101,7 +101,9 @@ instance GoogleRequest PersonalizedstreamGet where type Rs PersonalizedstreamGet = Discoveryclusters- requestClient PersonalizedstreamGet{..}+ type Scopes PersonalizedstreamGet =+ '["https://www.googleapis.com/auth/books"]+ requestClient PersonalizedstreamGet'{..} = go _pgLocale _pgMaxAllowedMaturityRating _pgSource (Just AltJSON) booksService
gen/Network/Google/Resource/Books/PromoOffer/Accept.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.PromoOffer.Accept--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -66,7 +66,7 @@ -- | -- -- /See:/ 'promoOfferAccept' smart constructor.-data PromoOfferAccept = PromoOfferAccept+data PromoOfferAccept = PromoOfferAccept' { _poaManufacturer :: !(Maybe Text) , _poaSerial :: !(Maybe Text) , _poaDevice :: !(Maybe Text)@@ -99,7 +99,7 @@ promoOfferAccept :: PromoOfferAccept promoOfferAccept =- PromoOfferAccept+ PromoOfferAccept' { _poaManufacturer = Nothing , _poaSerial = Nothing , _poaDevice = Nothing@@ -151,7 +151,9 @@ instance GoogleRequest PromoOfferAccept where type Rs PromoOfferAccept = ()- requestClient PromoOfferAccept{..}+ type Scopes PromoOfferAccept =+ '["https://www.googleapis.com/auth/books"]+ requestClient PromoOfferAccept'{..} = go _poaManufacturer _poaSerial _poaDevice _poaModel _poaVolumeId _poaOfferId
gen/Network/Google/Resource/Books/PromoOffer/Dismiss.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.PromoOffer.Dismiss--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -64,7 +64,7 @@ -- | -- -- /See:/ 'promoOfferDismiss' smart constructor.-data PromoOfferDismiss = PromoOfferDismiss+data PromoOfferDismiss = PromoOfferDismiss' { _podManufacturer :: !(Maybe Text) , _podSerial :: !(Maybe Text) , _podDevice :: !(Maybe Text)@@ -94,7 +94,7 @@ promoOfferDismiss :: PromoOfferDismiss promoOfferDismiss =- PromoOfferDismiss+ PromoOfferDismiss' { _podManufacturer = Nothing , _podSerial = Nothing , _podDevice = Nothing@@ -141,7 +141,9 @@ instance GoogleRequest PromoOfferDismiss where type Rs PromoOfferDismiss = ()- requestClient PromoOfferDismiss{..}+ type Scopes PromoOfferDismiss =+ '["https://www.googleapis.com/auth/books"]+ requestClient PromoOfferDismiss'{..} = go _podManufacturer _podSerial _podDevice _podModel _podOfferId _podProduct
gen/Network/Google/Resource/Books/PromoOffer/Get.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.PromoOffer.Get--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -62,7 +62,7 @@ -- | Returns a list of promo offers available to the user -- -- /See:/ 'promoOfferGet' smart constructor.-data PromoOfferGet = PromoOfferGet+data PromoOfferGet = PromoOfferGet' { _pogManufacturer :: !(Maybe Text) , _pogSerial :: !(Maybe Text) , _pogDevice :: !(Maybe Text)@@ -89,7 +89,7 @@ promoOfferGet :: PromoOfferGet promoOfferGet =- PromoOfferGet+ PromoOfferGet' { _pogManufacturer = Nothing , _pogSerial = Nothing , _pogDevice = Nothing@@ -130,7 +130,9 @@ instance GoogleRequest PromoOfferGet where type Rs PromoOfferGet = Offers- requestClient PromoOfferGet{..}+ type Scopes PromoOfferGet =+ '["https://www.googleapis.com/auth/books"]+ requestClient PromoOfferGet'{..} = go _pogManufacturer _pogSerial _pogDevice _pogModel _pogProduct _pogAndroidId
+ gen/Network/Google/Resource/Books/Series/Get.hs view
@@ -0,0 +1,86 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE TypeOperators #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Network.Google.Resource.Books.Series.Get+-- Copyright : (c) 2015-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns Series metadata for the given series ids.+--+-- /See:/ <https://developers.google.com/books/docs/v1/getting_started Books API Reference> for @books.series.get@.+module Network.Google.Resource.Books.Series.Get+ (+ -- * REST Resource+ SeriesGetResource++ -- * Creating a Request+ , seriesGet+ , SeriesGet++ -- * Request Lenses+ , sgSeriesId+ ) where++import Network.Google.Books.Types+import Network.Google.Prelude++-- | A resource alias for @books.series.get@ method which the+-- 'SeriesGet' request conforms to.+type SeriesGetResource =+ "books" :>+ "v1" :>+ "series" :>+ "get" :>+ QueryParams "series_id" Text :>+ QueryParam "alt" AltJSON :> Get '[JSON] Series++-- | Returns Series metadata for the given series ids.+--+-- /See:/ 'seriesGet' smart constructor.+newtype SeriesGet = SeriesGet'+ { _sgSeriesId :: [Text]+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'SeriesGet' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sgSeriesId'+seriesGet+ :: [Text] -- ^ 'sgSeriesId'+ -> SeriesGet+seriesGet pSgSeriesId_ =+ SeriesGet'+ { _sgSeriesId = _Coerce # pSgSeriesId_+ }++-- | String that identifies the series+sgSeriesId :: Lens' SeriesGet [Text]+sgSeriesId+ = lens _sgSeriesId (\ s a -> s{_sgSeriesId = a}) .+ _Coerce++instance GoogleRequest SeriesGet where+ type Rs SeriesGet = Series+ type Scopes SeriesGet =+ '["https://www.googleapis.com/auth/books"]+ requestClient SeriesGet'{..}+ = go _sgSeriesId (Just AltJSON) booksService+ where go+ = buildClient (Proxy :: Proxy SeriesGetResource)+ mempty
+ gen/Network/Google/Resource/Books/Series/Membership/Get.hs view
@@ -0,0 +1,113 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE TypeOperators #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Network.Google.Resource.Books.Series.Membership.Get+-- Copyright : (c) 2015-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns Series membership data given the series id.+--+-- /See:/ <https://developers.google.com/books/docs/v1/getting_started Books API Reference> for @books.series.membership.get@.+module Network.Google.Resource.Books.Series.Membership.Get+ (+ -- * REST Resource+ SeriesMembershipGetResource++ -- * Creating a Request+ , seriesMembershipGet+ , SeriesMembershipGet++ -- * Request Lenses+ , smgPageToken+ , smgPageSize+ , smgSeriesId+ ) where++import Network.Google.Books.Types+import Network.Google.Prelude++-- | A resource alias for @books.series.membership.get@ method which the+-- 'SeriesMembershipGet' request conforms to.+type SeriesMembershipGetResource =+ "books" :>+ "v1" :>+ "series" :>+ "membership" :>+ "get" :>+ QueryParam "series_id" Text :>+ QueryParam "page_token" Text :>+ QueryParam "page_size" (Textual Word32) :>+ QueryParam "alt" AltJSON :>+ Get '[JSON] Seriesmembership++-- | Returns Series membership data given the series id.+--+-- /See:/ 'seriesMembershipGet' smart constructor.+data SeriesMembershipGet = SeriesMembershipGet'+ { _smgPageToken :: !(Maybe Text)+ , _smgPageSize :: !(Maybe (Textual Word32))+ , _smgSeriesId :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'SeriesMembershipGet' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'smgPageToken'+--+-- * 'smgPageSize'+--+-- * 'smgSeriesId'+seriesMembershipGet+ :: Text -- ^ 'smgSeriesId'+ -> SeriesMembershipGet+seriesMembershipGet pSmgSeriesId_ =+ SeriesMembershipGet'+ { _smgPageToken = Nothing+ , _smgPageSize = Nothing+ , _smgSeriesId = pSmgSeriesId_+ }++-- | The value of the nextToken from the previous page.+smgPageToken :: Lens' SeriesMembershipGet (Maybe Text)+smgPageToken+ = lens _smgPageToken (\ s a -> s{_smgPageToken = a})++-- | Number of maximum results per page to be included in the response.+smgPageSize :: Lens' SeriesMembershipGet (Maybe Word32)+smgPageSize+ = lens _smgPageSize (\ s a -> s{_smgPageSize = a}) .+ mapping _Coerce++-- | String that identifies the series+smgSeriesId :: Lens' SeriesMembershipGet Text+smgSeriesId+ = lens _smgSeriesId (\ s a -> s{_smgSeriesId = a})++instance GoogleRequest SeriesMembershipGet where+ type Rs SeriesMembershipGet = Seriesmembership+ type Scopes SeriesMembershipGet =+ '["https://www.googleapis.com/auth/books"]+ requestClient SeriesMembershipGet'{..}+ = go (Just _smgSeriesId) _smgPageToken _smgPageSize+ (Just AltJSON)+ booksService+ where go+ = buildClient+ (Proxy :: Proxy SeriesMembershipGetResource)+ mempty
gen/Network/Google/Resource/Books/Volumes/Associated/List.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.Volumes.Associated.List--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -63,7 +63,7 @@ -- | Return a list of associated books. -- -- /See:/ 'volumesAssociatedList' smart constructor.-data VolumesAssociatedList = VolumesAssociatedList+data VolumesAssociatedList = VolumesAssociatedList' { _valLocale :: !(Maybe Text) , _valMaxAllowedMaturityRating :: !(Maybe VolumesAssociatedListMaxAllowedMaturityRating) , _valVolumeId :: !Text@@ -88,7 +88,7 @@ :: Text -- ^ 'valVolumeId' -> VolumesAssociatedList volumesAssociatedList pValVolumeId_ =- VolumesAssociatedList+ VolumesAssociatedList' { _valLocale = Nothing , _valMaxAllowedMaturityRating = Nothing , _valVolumeId = pValVolumeId_@@ -127,7 +127,9 @@ instance GoogleRequest VolumesAssociatedList where type Rs VolumesAssociatedList = Volumes- requestClient VolumesAssociatedList{..}+ type Scopes VolumesAssociatedList =+ '["https://www.googleapis.com/auth/books"]+ requestClient VolumesAssociatedList'{..} = go _valVolumeId _valLocale _valMaxAllowedMaturityRating _valSource
gen/Network/Google/Resource/Books/Volumes/Get.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.Volumes.Get--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -34,6 +34,7 @@ -- * Request Lenses , vgCountry+ , vgIncludeNonComicsSeries , vgPartner , vgVolumeId , vgSource@@ -52,17 +53,19 @@ "volumes" :> Capture "volumeId" Text :> QueryParam "country" Text :>- QueryParam "partner" Text :>- QueryParam "source" Text :>- QueryParam "projection" VolumesGetProjection :>- QueryParam "user_library_consistent_read" Bool :>- QueryParam "alt" AltJSON :> Get '[JSON] Volume+ QueryParam "includeNonComicsSeries" Bool :>+ QueryParam "partner" Text :>+ QueryParam "source" Text :>+ QueryParam "projection" VolumesGetProjection :>+ QueryParam "user_library_consistent_read" Bool :>+ QueryParam "alt" AltJSON :> Get '[JSON] Volume -- | Gets volume information for a single volume. -- -- /See:/ 'volumesGet' smart constructor.-data VolumesGet = VolumesGet+data VolumesGet = VolumesGet' { _vgCountry :: !(Maybe Text)+ , _vgIncludeNonComicsSeries :: !(Maybe Bool) , _vgPartner :: !(Maybe Text) , _vgVolumeId :: !Text , _vgSource :: !(Maybe Text)@@ -76,6 +79,8 @@ -- -- * 'vgCountry' --+-- * 'vgIncludeNonComicsSeries'+-- -- * 'vgPartner' -- -- * 'vgVolumeId'@@ -89,8 +94,9 @@ :: Text -- ^ 'vgVolumeId' -> VolumesGet volumesGet pVgVolumeId_ =- VolumesGet+ VolumesGet' { _vgCountry = Nothing+ , _vgIncludeNonComicsSeries = Nothing , _vgPartner = Nothing , _vgVolumeId = pVgVolumeId_ , _vgSource = Nothing@@ -103,6 +109,12 @@ vgCountry = lens _vgCountry (\ s a -> s{_vgCountry = a}) +-- | Set to true to include non-comics series. Defaults to false.+vgIncludeNonComicsSeries :: Lens' VolumesGet (Maybe Bool)+vgIncludeNonComicsSeries+ = lens _vgIncludeNonComicsSeries+ (\ s a -> s{_vgIncludeNonComicsSeries = a})+ -- | Brand results for partner ID. vgPartner :: Lens' VolumesGet (Maybe Text) vgPartner@@ -129,8 +141,12 @@ instance GoogleRequest VolumesGet where type Rs VolumesGet = Volume- requestClient VolumesGet{..}- = go _vgVolumeId _vgCountry _vgPartner _vgSource+ type Scopes VolumesGet =+ '["https://www.googleapis.com/auth/books"]+ requestClient VolumesGet'{..}+ = go _vgVolumeId _vgCountry _vgIncludeNonComicsSeries+ _vgPartner+ _vgSource _vgProjection _vgUserLibraryConsistentRead (Just AltJSON)
gen/Network/Google/Resource/Books/Volumes/List.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.Volumes.List--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -79,7 +79,7 @@ -- | Performs a book search. -- -- /See:/ 'volumesList' smart constructor.-data VolumesList = VolumesList+data VolumesList = VolumesList' { _vlOrderBy :: !(Maybe VolumesListOrderBy) , _vlLibraryRestrict :: !(Maybe VolumesListLibraryRestrict) , _vlPartner :: !(Maybe Text)@@ -128,7 +128,7 @@ :: Text -- ^ 'vlQ' -> VolumesList volumesList pVlQ_ =- VolumesList+ VolumesList' { _vlOrderBy = Nothing , _vlLibraryRestrict = Nothing , _vlPartner = Nothing@@ -213,7 +213,9 @@ instance GoogleRequest VolumesList where type Rs VolumesList = Volumes- requestClient VolumesList{..}+ type Scopes VolumesList =+ '["https://www.googleapis.com/auth/books"]+ requestClient VolumesList'{..} = go (Just _vlQ) _vlOrderBy _vlLibraryRestrict _vlPartner _vlDownload
gen/Network/Google/Resource/Books/Volumes/Mybooks/List.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.Volumes.Mybooks.List--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -35,6 +35,7 @@ -- * Request Lenses , vmlProcessingState , vmlAcquireMethod+ , vmlCountry , vmlLocale , vmlSource , vmlStartIndex@@ -57,18 +58,20 @@ QueryParams "acquireMethod" VolumesMybooksListAcquireMethod :>- QueryParam "locale" Text :>- QueryParam "source" Text :>- QueryParam "startIndex" (Textual Word32) :>- QueryParam "maxResults" (Textual Word32) :>- QueryParam "alt" AltJSON :> Get '[JSON] Volumes+ QueryParam "country" Text :>+ QueryParam "locale" Text :>+ QueryParam "source" Text :>+ QueryParam "startIndex" (Textual Word32) :>+ QueryParam "maxResults" (Textual Word32) :>+ QueryParam "alt" AltJSON :> Get '[JSON] Volumes -- | Return a list of books in My Library. -- -- /See:/ 'volumesMybooksList' smart constructor.-data VolumesMybooksList = VolumesMybooksList+data VolumesMybooksList = VolumesMybooksList' { _vmlProcessingState :: !(Maybe [VolumesMybooksListProcessingState]) , _vmlAcquireMethod :: !(Maybe [VolumesMybooksListAcquireMethod])+ , _vmlCountry :: !(Maybe Text) , _vmlLocale :: !(Maybe Text) , _vmlSource :: !(Maybe Text) , _vmlStartIndex :: !(Maybe (Textual Word32))@@ -83,6 +86,8 @@ -- -- * 'vmlAcquireMethod' --+-- * 'vmlCountry'+-- -- * 'vmlLocale' -- -- * 'vmlSource'@@ -93,9 +98,10 @@ volumesMybooksList :: VolumesMybooksList volumesMybooksList =- VolumesMybooksList+ VolumesMybooksList' { _vmlProcessingState = Nothing , _vmlAcquireMethod = Nothing+ , _vmlCountry = Nothing , _vmlLocale = Nothing , _vmlSource = Nothing , _vmlStartIndex = Nothing@@ -119,6 +125,11 @@ . _Default . _Coerce +-- | ISO-3166-1 code to override the IP-based location.+vmlCountry :: Lens' VolumesMybooksList (Maybe Text)+vmlCountry+ = lens _vmlCountry (\ s a -> s{_vmlCountry = a})+ -- | ISO-639-1 language and ISO-3166-1 country code. Ex:\'en_US\'. Used for -- generating recommendations. vmlLocale :: Lens' VolumesMybooksList (Maybe Text)@@ -146,9 +157,12 @@ instance GoogleRequest VolumesMybooksList where type Rs VolumesMybooksList = Volumes- requestClient VolumesMybooksList{..}+ type Scopes VolumesMybooksList =+ '["https://www.googleapis.com/auth/books"]+ requestClient VolumesMybooksList'{..} = go (_vmlProcessingState ^. _Default) (_vmlAcquireMethod ^. _Default)+ _vmlCountry _vmlLocale _vmlSource _vmlStartIndex
gen/Network/Google/Resource/Books/Volumes/Recommended/List.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.Volumes.Recommended.List--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -58,7 +58,7 @@ -- | Return a list of recommended books for the current user. -- -- /See:/ 'volumesRecommendedList' smart constructor.-data VolumesRecommendedList = VolumesRecommendedList+data VolumesRecommendedList = VolumesRecommendedList' { _vrlLocale :: !(Maybe Text) , _vrlMaxAllowedMaturityRating :: !(Maybe VolumesRecommendedListMaxAllowedMaturityRating) , _vrlSource :: !(Maybe Text)@@ -76,7 +76,7 @@ volumesRecommendedList :: VolumesRecommendedList volumesRecommendedList =- VolumesRecommendedList+ VolumesRecommendedList' { _vrlLocale = Nothing , _vrlMaxAllowedMaturityRating = Nothing , _vrlSource = Nothing@@ -102,7 +102,9 @@ instance GoogleRequest VolumesRecommendedList where type Rs VolumesRecommendedList = Volumes- requestClient VolumesRecommendedList{..}+ type Scopes VolumesRecommendedList =+ '["https://www.googleapis.com/auth/books"]+ requestClient VolumesRecommendedList'{..} = go _vrlLocale _vrlMaxAllowedMaturityRating _vrlSource (Just AltJSON)
gen/Network/Google/Resource/Books/Volumes/Recommended/Rate.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.Volumes.Recommended.Rate--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -60,7 +60,7 @@ -- | Rate a recommended book for the current user. -- -- /See:/ 'volumesRecommendedRate' smart constructor.-data VolumesRecommendedRate = VolumesRecommendedRate+data VolumesRecommendedRate = VolumesRecommendedRate' { _vrrRating :: !VolumesRecommendedRateRating , _vrrLocale :: !(Maybe Text) , _vrrVolumeId :: !Text@@ -83,7 +83,7 @@ -> Text -- ^ 'vrrVolumeId' -> VolumesRecommendedRate volumesRecommendedRate pVrrRating_ pVrrVolumeId_ =- VolumesRecommendedRate+ VolumesRecommendedRate' { _vrrRating = pVrrRating_ , _vrrLocale = Nothing , _vrrVolumeId = pVrrVolumeId_@@ -114,7 +114,9 @@ instance GoogleRequest VolumesRecommendedRate where type Rs VolumesRecommendedRate = BooksVolumesRecommendedRateResponse- requestClient VolumesRecommendedRate{..}+ type Scopes VolumesRecommendedRate =+ '["https://www.googleapis.com/auth/books"]+ requestClient VolumesRecommendedRate'{..} = go (Just _vrrRating) (Just _vrrVolumeId) _vrrLocale _vrrSource (Just AltJSON)
gen/Network/Google/Resource/Books/Volumes/UserUploaded/List.hs view
@@ -14,7 +14,7 @@ -- | -- Module : Network.Google.Resource.Books.Volumes.UserUploaded.List--- Copyright : (c) 2015 Brendan Hay+-- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com> -- Stability : auto-generated@@ -64,7 +64,7 @@ -- | Return a list of books uploaded by the current user. -- -- /See:/ 'volumesUserUploadedList' smart constructor.-data VolumesUserUploadedList = VolumesUserUploadedList+data VolumesUserUploadedList = VolumesUserUploadedList' { _vuulProcessingState :: !(Maybe [VolumesUserUploadedListProcessingState]) , _vuulLocale :: !(Maybe Text) , _vuulVolumeId :: !(Maybe [Text])@@ -91,7 +91,7 @@ volumesUserUploadedList :: VolumesUserUploadedList volumesUserUploadedList =- VolumesUserUploadedList+ VolumesUserUploadedList' { _vuulProcessingState = Nothing , _vuulLocale = Nothing , _vuulVolumeId = Nothing@@ -143,7 +143,9 @@ instance GoogleRequest VolumesUserUploadedList where type Rs VolumesUserUploadedList = Volumes- requestClient VolumesUserUploadedList{..}+ type Scopes VolumesUserUploadedList =+ '["https://www.googleapis.com/auth/books"]+ requestClient VolumesUserUploadedList'{..} = go (_vuulProcessingState ^. _Default) _vuulLocale (_vuulVolumeId ^. _Default) _vuulSource
gogol-books.cabal view
@@ -1,5 +1,5 @@ name: gogol-books-version: 0.0.1+version: 0.1.0 synopsis: Google Books SDK. homepage: https://github.com/brendanhay/gogol bug-reports: https://github.com/brendanhay/gogol/issues@@ -7,7 +7,7 @@ license-file: LICENSE author: Brendan Hay maintainer: Brendan Hay <brendan.g.hay@gmail.com>-copyright: Copyright (c) 2015 Brendan Hay+copyright: Copyright (c) 2015-2016 Brendan Hay category: Network, Google, Cloud build-type: Simple cabal-version: >= 1.10@@ -74,6 +74,8 @@ , Network.Google.Resource.Books.PromoOffer.Accept , Network.Google.Resource.Books.PromoOffer.Dismiss , Network.Google.Resource.Books.PromoOffer.Get+ , Network.Google.Resource.Books.Series.Get+ , Network.Google.Resource.Books.Series.Membership.Get , Network.Google.Resource.Books.Volumes.Associated.List , Network.Google.Resource.Books.Volumes.Get , Network.Google.Resource.Books.Volumes.List@@ -87,5 +89,5 @@ , Network.Google.Books.Types.Sum build-depends:- gogol-core == 0.0.1.*+ gogol-core == 0.1.0.* , base >= 4.7 && < 5